結(jié)合FPGA與DSP的仿人假手控制系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
仿人假手作為肢殘患者重獲人手功能的主要對(duì)象,具有重大的社會(huì)需求。理想的假手應(yīng)具有人手的仿生特征,主要體現(xiàn)在假手構(gòu)造、控制方式與環(huán)境感知3個(gè)方面,但由于其有限的體積和復(fù)雜的傳感器系統(tǒng),對(duì)控制系統(tǒng)提出了更高的要求。
現(xiàn)有的控制系統(tǒng)有外置式和內(nèi)置式兩種。外置式控制系統(tǒng)多用于研究型假手,如Cyber Hand,Tokyo Hand,Vanderbilt Hand等,這種控制系統(tǒng)主要用于算法、方案的驗(yàn)證,在殘疾人應(yīng)用上推廣意義較小。內(nèi)置式控制系統(tǒng)在研究型假手和商業(yè)型假手上均有應(yīng)用,其中研究型假手控制系統(tǒng),在環(huán)境感知和雙向信息交互上投入大量研究,如Smart Hand,DARPA hand;而商業(yè)型假手控制系統(tǒng)雖然也有部分集成有外部傳感器,但傳感器系統(tǒng)簡(jiǎn)單,雙向信息交互上也有較大欠缺,如i-Limb,BeBionic Hand.
HIT IV代假手控制系統(tǒng)采用DSP作為主控芯片,集成有位置傳感器和力矩傳感器,可對(duì)肌電信號(hào)采樣。但控制系統(tǒng)為一個(gè)整體,且體積較大,只適用于HIT IV代假手。DSP芯片在功能拓展上弱于FPGA,不利于二次開(kāi)發(fā)。
本文采用模塊化設(shè)計(jì)方案,以FPGA作為核心芯片,運(yùn)動(dòng)控制、肌電信號(hào)采集、電刺激等模塊獨(dú)立設(shè)計(jì),通過(guò)通用接口連接。在此基礎(chǔ)上,進(jìn)行多模式的多指抓取實(shí)驗(yàn)。
1仿人假手系統(tǒng)介紹
本文所設(shè)計(jì)的控制系統(tǒng)以HIT V代手為控制對(duì)象。該手略小于成年人人手,具有5根手指,每根手指2個(gè)指節(jié),大拇指還另有一個(gè)內(nèi)旋/外展關(guān)節(jié),共有11個(gè)活動(dòng)關(guān)節(jié),整個(gè)手由6個(gè)直流電機(jī)驅(qū)動(dòng),每根手指安裝有力矩傳感器、位置傳感器、指尖六維力傳感器。
控制系統(tǒng)采用模塊化設(shè)計(jì)思想,將整個(gè)系統(tǒng)分割成幾個(gè)模塊,通過(guò)通用接口建立相互連接,使整個(gè)控制系統(tǒng)可以放置在仿人假手內(nèi)部,實(shí)現(xiàn)機(jī)電一體化。
2基于FPGA的控制系統(tǒng)設(shè)計(jì)
仿人假手電氣控制系統(tǒng)用于實(shí)現(xiàn)假手各手指的驅(qū)動(dòng)控制、多種傳感器信息的采集以及與上位機(jī)( PC或PCI控制卡)之間的通信。該控制系統(tǒng)由10個(gè)模塊組成,分別為:由FPGA組成的主控芯片模塊、USB接口模塊、拇指控制電路模塊、食指控制電路模塊、中指控制電路模塊、無(wú)名指控制電路模塊、小指控制電路模塊、肌電信號(hào)采集模塊、電池管理系統(tǒng)模塊、電刺激反饋模塊。模塊化設(shè)計(jì)方法增加了控制系統(tǒng)的靈活性與獨(dú)立性,便于對(duì)模塊單獨(dú)進(jìn)行調(diào)試與修改。電氣系統(tǒng)總體功能框圖如圖1.
圖1 電氣系統(tǒng)功能框圖
2.1 FPGA主控芯片模塊設(shè)計(jì)
FPGA主控芯片模塊采用Altera公司CycloneⅢ系FPGA芯片EP3C25F25617作為控制核心,負(fù)責(zé)肌電信號(hào)和多種傳感器信號(hào)的處理、與手指電路的通信、USB通信、CAN通信接口等功能。同時(shí),主控芯片模塊還負(fù)責(zé)大拇指內(nèi)旋/外展自由度驅(qū)動(dòng)電機(jī)的控制。各個(gè)功能通過(guò)VHDL語(yǔ)言進(jìn)行編寫(xiě),F(xiàn)PGA中嵌入雙NIOS核構(gòu)成雙核處理器,其中一個(gè)NIOS核用于肌電信號(hào)處理,另一個(gè)NIOS核用于通信;雙核通過(guò)2M的EEPROM進(jìn)行通信。FPGA功能框圖如圖2.
圖2 FPGA功能框圖
RS—485通信通過(guò)在NIOS核內(nèi)自定義元件AutoSCI控制RS—485收發(fā)接口芯片MAX3362實(shí)現(xiàn)。MAX3362收發(fā)芯片可通過(guò)3.3 V低壓實(shí)現(xiàn)高速數(shù)據(jù)傳送。CAN與LVDS通信采用復(fù)用電路設(shè)計(jì)(圖3),通過(guò)更換接收發(fā)送接口芯片完成功能轉(zhuǎn)換。CAN通信采用TI公司的CAN收發(fā)器SN65HVD230QD作為接口芯片。LVDS通信采用TI公司的半雙工LVDS收發(fā)接口芯片SN65LVDM176,構(gòu)成PPSeCo高速串行通信系統(tǒng)與PCI控制卡通信,通信速率可達(dá)25 Mbps,保證控制信息與傳感器信息傳送的及時(shí)性。
圖3 CAN通信/LVDS通信復(fù)用電路
拇指內(nèi)旋/外展自由度驅(qū)動(dòng)電機(jī)由NIOS核中自定義元件PWM控制。元件功能通過(guò)VHDL語(yǔ)言編寫(xiě),PWM波周期和占空比均可調(diào)。電機(jī)驅(qū)動(dòng)芯片采用MPC17531A,其內(nèi)部集成雙H橋,可直接控制直流有刷電機(jī)。
2.2手指運(yùn)動(dòng)控制模塊設(shè)計(jì)
五根手指的運(yùn)動(dòng)控制模塊采用相同的設(shè)計(jì)方案,增強(qiáng)系統(tǒng)的互換性與通用性。該模塊由DSP作為控制核心,直流有刷電機(jī)驅(qū)動(dòng)芯片MPC17531A作為電機(jī)驅(qū)動(dòng)芯片,負(fù)責(zé)手指電機(jī)的驅(qū)動(dòng),力矩傳感器、位置傳感器、電機(jī)電流傳感器信號(hào)的采集與處理,以及與觸覺(jué)傳感器系統(tǒng)的通信,最后各項(xiàng)數(shù)據(jù)通過(guò)RS—485通信接口與主控芯片模塊通信??刂颇K如圖4.
圖4 手指運(yùn)動(dòng)控制模塊功能框圖
該模塊采用的DSP TMS320F28027運(yùn)行速率高,封裝小。內(nèi)部集成的16通道12位A/D轉(zhuǎn)換器可實(shí)現(xiàn)對(duì)力矩、位置、電機(jī)電流信號(hào)的采樣。串行異步通信接口通過(guò)RS—485收發(fā)接口芯片實(shí)現(xiàn)與主控芯片模塊通信。EPWM模塊可直接控制直流有刷電機(jī)驅(qū)動(dòng)芯片MPC17531A.
如圖5,關(guān)節(jié)力矩傳感器信號(hào)采集系統(tǒng)包括力矩傳感器、處理放大電路、濾波電路和A/D轉(zhuǎn)換電路。力矩傳感器基于應(yīng)變?cè)?,采用儀表放大器INA337組成半橋電路對(duì)力矩信號(hào)進(jìn)行放大后通過(guò)RC濾波電路進(jìn)入A/D轉(zhuǎn)換芯片。
圖5 力矩傳感器信號(hào)采集系統(tǒng)
如圖6,關(guān)節(jié)位置傳感器信號(hào)采集系統(tǒng)包括位置傳感器、處理放大電路、濾波電路和A/D轉(zhuǎn)換電路。位置傳感器基于旋轉(zhuǎn)電位器原理,采用集成運(yùn)放MAX9618對(duì)電位器信號(hào)進(jìn)行放大后通過(guò)RC濾波電路進(jìn)入A/D轉(zhuǎn)換芯片。
圖6 位置傳感器信號(hào)采集系統(tǒng)
2.3肌電信號(hào)采集模塊設(shè)計(jì)
肌電信號(hào)采集模塊用來(lái)采集肌電電極的信號(hào)以及對(duì)信號(hào)的濾波和D/A轉(zhuǎn)換后存儲(chǔ)在CPU中,包括RC電路組成的濾波電路、D/A轉(zhuǎn)換電路和電壓轉(zhuǎn)換電路。數(shù)字信號(hào)通過(guò)電壓轉(zhuǎn)換芯片轉(zhuǎn)換為3.3 V電壓,通過(guò)SPI接口輸入到CPU中央處理器。
2.4電池管理系統(tǒng)模塊設(shè)計(jì)
電池管理模塊包括電池、電流傳感器、蜂鳴器電路、LED顯示電路。電流傳感器實(shí)時(shí)監(jiān)測(cè)電池輸出電流大小,通過(guò)LED顯示電路和蜂鳴器電路顯示充電狀態(tài)和電池電量過(guò)低報(bào)警。
3軟件實(shí)現(xiàn)
在FPGA控制器程序設(shè)計(jì)中主要完成各系統(tǒng)參數(shù)的初始化與控制算法的實(shí)現(xiàn),具體由如下幾部分構(gòu)成:
1)與上位機(jī)通信部分:通過(guò)3種方式與上位機(jī)通信,獲得控制指令,分別為USB通信、LVDS通信、CAN通信,其中LVDS通信與CAN通信不能同時(shí)使用;
2)肌電信號(hào)采集部分:通過(guò)A/D轉(zhuǎn)換芯片將肌電電極信號(hào)轉(zhuǎn)換為數(shù)字量,并經(jīng)過(guò)運(yùn)算處理得到控制指令;
3)與手指運(yùn)動(dòng)控制模塊通信部分:通過(guò)SCI接口實(shí)現(xiàn)與手指運(yùn)動(dòng)控制模塊的RS—485通信;
4)生成驅(qū)動(dòng)電機(jī)控制參數(shù)部分:運(yùn)算處理控制指令,生成電機(jī)運(yùn)動(dòng)參數(shù)(方向與占空比)。
控制流程圖如圖7所示。
圖7 FPGA控制流程圖
DSP控制程序主要完成DSP各參數(shù)的初始化,控制流程圖如圖8.
圖8 DSP控制流程圖
4假手抓取實(shí)驗(yàn)
基于上述設(shè)計(jì),研制出HIT V假手樣機(jī),進(jìn)行抓取實(shí)驗(yàn)(圖9),可實(shí)現(xiàn)多種動(dòng)作模式的抓取,分別為:兩指捏取、三指捏取、圓柱抓取、球形抓取、單指指向、胡克抓取、側(cè)邊捏取、五指端取??刂七^(guò)程中,系統(tǒng)工作穩(wěn)定,滿足仿人假手運(yùn)動(dòng)控制和傳感器信息采集要求。
圖9 多指抓取實(shí)驗(yàn)
5結(jié)論
本文介紹了結(jié)合FPGA與DSP的仿人假手控制系統(tǒng)的設(shè)計(jì)組成與工作流程。該控制系統(tǒng)體積小巧,可完全安裝于假手內(nèi)部。實(shí)驗(yàn)證明:該系統(tǒng)運(yùn)行可靠、控制靈活,使用效果良好。