文獻標識碼: A
文章編號: 0258-7998(2011)06-135-03
假肢是人體缺損肢體的替代物,用以彌補缺損肢體的形狀和功能。本文針對失去整個手臂的情況,設(shè)計出一種仿人手臂形假肢的控制系統(tǒng)。使用者可以補償部分缺失的功能,達到生活自理甚至于可以從事基本勞動,減少身心痛苦,同時也相應地解放了護理工作用。在設(shè)計中,采用C8051F020[1]單片機作為主控制器,并通過CPLD(Complex Programmable Logic Device)完成對各個關(guān)節(jié)控制量的檢測以及凌陽61單片機實現(xiàn)語音控制功能。
1 機器人假肢結(jié)構(gòu)
多自由度機器人型假肢(上肢)擁有6個自由度,其結(jié)構(gòu)原理圖如圖1所示。
2 假肢控制系統(tǒng)的硬件設(shè)計
2.1 控制器的工作原理
控制系統(tǒng)原理框圖如圖2所示,主要由控制、驅(qū)動、被控對象和檢測反饋四個部分構(gòu)成??刂撇糠种饕蒀8051f020完成;驅(qū)動部分由6個電機驅(qū)動器構(gòu)成;被控對象即是六自由的假肢;檢測反饋部分主要由CPLD檢測目標位置各個關(guān)節(jié)的控制量。系統(tǒng)主要采用按鍵控制和語音控制兩種控制方式。
2.1.1 按鍵控制
系統(tǒng)采用了12個獨立式按鍵對6個電機正反方向轉(zhuǎn)動的控制,電機的轉(zhuǎn)動驅(qū)動著各個關(guān)節(jié)進行運動。各個按鍵對應控制關(guān)節(jié)運動情況如表1所示。
2.1.2 語音控制
語音識別模塊由SPCE061A單片機完成。首先,對各個命令進行訓練,并將訓練結(jié)果保存下來。在系統(tǒng)運行過程中,當SPCE061A單片機識別出某條命令時,它會通過串口給C8051F020發(fā)送指令,當C8510F020接收到相應的指令時,控制相應的關(guān)節(jié)做相應的運動[2]。例如:當SPCE061A識別出“手指張開”命令時,將會通過串口發(fā)送如“0x10”的十六進制的數(shù),當C8051F020通過串口接收到“0x10”后,就會控制手指做張開運動。其他關(guān)節(jié)控制亦如此。其語音命令的控制形式如圖3所示。
3 系統(tǒng)軟件設(shè)計
本系統(tǒng)軟件主要包括:初始化程序、頻率輸出子程序、PWM信號輸出子程序、鍵盤控制子程序、通信子程序、語音識別系統(tǒng)、CPLD檢測編碼器輸出子程序。
3.1系統(tǒng)主流程
圖4所示為整個控制系統(tǒng)的流程圖。首先對系統(tǒng)硬件進行初始化;然后設(shè)計出兩種工作方式:按鍵方式和語音方式;之后選擇示教3個位置,并通過CPLD保存示教位置的各個關(guān)節(jié)的脈沖控制量,最后的設(shè)計是手動運動到示教的目標或是自動運動到示教的目標位置,至此即可完成對目標位置的物體的抓取功能[3]。
3.2 CPLD檢測編碼器設(shè)計
由系統(tǒng)流程圖可以看出,對各個示教位置的各個關(guān)節(jié)控制量的檢測與保存由CPLD完成。由于本設(shè)計采用旋轉(zhuǎn)編碼器的傳感器,通常其輸出A和B兩路占空比為50%的脈沖,A、B的脈沖個數(shù)反映主軸轉(zhuǎn)過的角度,A、B的相位關(guān)系反映主軸的旋轉(zhuǎn)方向。為了檢測上述兩個變量即主軸轉(zhuǎn)過的角度和主軸旋轉(zhuǎn)的方向,系統(tǒng)采用了一種辨向細分電路。
將A和B兩路輸入信號分別組成四種狀態(tài)(A,B):(0,0)、(0,1)、(1,0)和(1,1)。當主軸正向旋轉(zhuǎn)時,狀態(tài)轉(zhuǎn)移過程為:(0,0)、(1,0)、(1,1)、(0,1)、(0,0),反向旋轉(zhuǎn)時正好相反。故只需要判斷狀態(tài)(1,0)和狀態(tài)(1,1)的先后順序即可判斷出主軸旋轉(zhuǎn)的方向,并且由出現(xiàn)狀態(tài)(1,0)和(1,1)之間的轉(zhuǎn)換次數(shù)就可以確定轉(zhuǎn)軸轉(zhuǎn)過的角度,即出現(xiàn)一次狀態(tài)轉(zhuǎn)換就是主軸轉(zhuǎn)過1°[4]。由旋轉(zhuǎn)編碼器的特性設(shè)計的CPLD的檢測系統(tǒng)框圖如圖5所示。
3.3 語音識別系統(tǒng)設(shè)計
語音識別是使假肢能夠準確地聽出操作者的語音內(nèi)容,并能準確完成操作者的命令。本系統(tǒng)只針對特定人進行訓練,并且只能對特定人的語音進行識別。主要由凌陽SPCE061A單片機完成。其系統(tǒng)框圖如圖6所示。
4 實驗結(jié)果分析
完成以上的軟件和硬件的設(shè)計后,對整個系統(tǒng)進行了實際的控制調(diào)試。在調(diào)試過程中,各個關(guān)節(jié)都可以運動自如,并且每個按鍵對應的控制都是完全正確的。按鍵在按下的過程中會出現(xiàn)抖動現(xiàn)象,為此,在程序的設(shè)計過程中通過延時程序進行了消抖。在語音控制模塊中,由于采用的是兩級命令控制,即如圖3所示控制形式。語音系統(tǒng)經(jīng)過多次訓練,對特定人的語音識別率達到了96%以上,辨識率很高。但只是針對特定的人進行試驗。如果對其他人的語音信號進行識別還會存在誤差,會出現(xiàn)個別誤操作。但這種誤差是可以控制的。只要對特定的人進行訓練,并由被訓練人來控制設(shè)備,即可以避免由于控制者與語音錄入者不同而給系統(tǒng)帶來的控制誤差。
該控制系統(tǒng)最大的特點是可以人為自由地進行手動控制假肢做相應的活動,或者運用佩戴者的語音實現(xiàn)語音智能化控制假肢做相應的運動。實現(xiàn)了設(shè)計方法和控制都簡單,操作安全、穩(wěn)定的目的。此外,可以給佩戴者設(shè)計一個遙控器(前提是針對只失去一只臂膀的用戶),如果是失去了雙臂膀,則可以在其適當?shù)牟课话惭b一個語音控制裝置,使用語音進行控制。
參考文獻
[1] 萬光毅,孫九安,蔡建平.SoC單片機實驗、實踐與應用設(shè)計—基于C8051F020系列[M].北京:北京航空航天大學出版社,2006.
[2] 盧勝利.基于凌陽SPCE061A設(shè)計實驗平臺的專業(yè)綜合設(shè)計教程[M].北京:機械工業(yè)出版社,2006.
[3] 李長有,武學東.基于C8051F020的SD卡主控制器設(shè)計[J].微計算機信息,2007(9-2):120-122.
[4] 應卓瑜,梁堅,邵亮,等.基于CPLD的辨向細分電路設(shè)計[J].傳感技術(shù)學報,2005,18(1):143-145.