陳才,張弘,羅蓉,王秋
(1.四川大學電子信息學院,成都 610065;2.四川大學華西第二醫院,成都 610041)
由于車禍、劇烈運動、腦卒中等導致的踝關節受損、馬蹄足疾病,可以通過手術的方式進行恢復,而手術后的訓練康復則尤為重要,好的康復器械和方法可以讓病人得到更好的康復效果。
實踐證明,可穿戴踝足矯形器在醫學領域中扮演越來越重要的作用,可以為特定的病人進行特別的設計,并制定合理的訓練康復方案,提高治療效率,減輕康復醫師的勞動量。本設計以STM32單片機為主控制器,使用MPU6050六軸傳感器實時地采集穿戴者的步態角度[1],通過比例閥控制矯形器的氣動人工肌肉伸展和收縮,實現矯形器的跖屈背屈運動。
踝足矯形器系統設計包括硬件和軟件兩部分。硬件整體方案框架圖如圖1所示,由單片機最小系統、MPU6050傳感器、藍牙模塊、上位機、電壓放大模塊、比例閥和氣動人工肌肉構成。軟件系統以STM32為控制核心,通過MPU6050六軸傳感器采集穿戴者實時的踝關節角度,輸出控制信號控制比例閥,達到矯形器實現跖屈背屈的目的。
程序前面部分完成采集正常人在行走時踝關節的角度數據,并利用藍牙模塊發送至上位機存儲,用于后面的分析比較。后期采集病人步態數據,設計程序算法,比對踝足功能正常者與異常者行走角度的數據差異,尋找合適的角度閾值和對應的電壓值,實現對氣動人工肌肉的收縮伸展控制,產生踝關節跖屈背屈所需的力。

圖1 硬件系統方案框圖
(1)單片機最小系統
STM32單片機具有低功耗、低成本、高性能的特點,有專門為嵌入式應用而設計的ARM Cortex-M3內核[2]。STM32具有基于庫函數開發的特點,使得代碼編寫周期縮短,大大提高了系統開發的效率,本設計選用的是“增強型”系列的STM32F103單片機,其72MHz的時鐘頻率、可以滿足系統設計的要求。
(2)MPU6050傳感器
MPU6050傳感器模塊集成了三軸陀螺儀傳感器和三軸加速度傳感器,并有一個可擴展的數字處理器(DMP),可將其測量的模擬量轉化為數字量,MPU6050傳感器模塊可控制測量范圍,提取不同速度的運動參數[3]。通過得到的加速度和角速度能計算出歐拉角[4]。且STM32可通過IIC總線獲取傳感器的數據值,誤差小,精度高。
(3)藍牙模塊
HC-05藍牙模塊尺寸小、功耗低、性價比高、操作簡單,可將穿戴者的踝關節角度數據通過無線的方式發送到上位機,進行觀察和分析。
(4)比例閥和氣動人工肌肉
因為氣動人工肌肉具有功率重量比高、柔韌性好、重量輕等優點,非常適合應用于醫療領域。比例閥連接氣動人工肌肉,通過0~10V電壓控制閥口的開度,從而控制進入氣動人工肌肉的氣體流量,使其軸向壓縮、徑向膨脹,為跖屈提供一個非線性的拉力,可以彌補病人缺失或減少的肌腱力量,達到改善步行的目的。本設計選用比例閥為德國FESTO公司的電子氣動元件,易于實現,方便實用。根據人體蹬地時的地面作用力的估算,所選氣動人工肌肉的尺寸為橡膠管半徑20mm,長度200mm,最大收縮長度為50mm。
(5)電壓放大模塊
由于STM32單片機輸出的電壓范圍是0~3.3V,控制比例閥使氣動人工肌肉產生的力不滿足穿戴者行走時需要的最大力,所以要在STM32單片機的D/A端口外接一個可以將電壓放大3倍的電路模塊。
ST公司的LM324芯片具有寬的單電源或雙電源工作電壓范圍,單電源3V~30V,雙電源±1.5V~±15V;消耗限流小,輸入失調電壓低,LM324引腳分布如圖2所示。在該芯片外部連接外圍電路可實現將電壓放大3倍的功能,電路設計原理如圖3所示。
如圖3所示,調節滑動變阻器改變其電阻值,從而調節輸出放大倍數。直流電源輸出幅值為3.3V的電壓,將該電壓輸入到該模塊的輸入端,通過示波器測量輸出的電壓幅值為10.0V,電壓被放大3倍。
軟件設計主要是基于MPU6050的控制,其流程圖如4所示。系統上電后,主程序對所有外部硬件進行初始化,然后啟動MPU6050傳感器驅動程序,通過IIC總線獲取MPU6050傳感器的角速度和加速度,利用四元數算法得到運動物體的歐拉角,將實時的角度與設定角度閾值對比,使單片機D/A輸出合適的電壓給比例閥,同時將角度數據經藍牙模塊發送到上位機,并在上位機上顯示角度變化曲線。

圖2 LM324引腳分布和放大電壓電路圖

圖3 電壓放大模塊設計原理圖

圖4 程序流程圖
(1)計算歐拉角的程序
將通過IIC總線從MPU6050傳感器獲得的加速度和角速度數據存入數組,q0,q1,q2,q3為計算歐拉角過程中用到的變量,q30為一常量,利用四元素算法得到歐拉角的三個角分量滾轉角(Roll)、俯仰角(Pitch)、偏航角(Yaw),關鍵代碼如下所示。
#define q30 1073741824.0f
short gyro[3],accel[3],sensors;//陀螺儀存放數組,加速度存放數組,返回狀態量
unsigned char more;
long quat[4];//四元數存放數組
float Yaw=0.00,Roll,Pitch;//歐拉角
float q0=1.0f,q1=0.0f,q2=0.0f,q3=0.0f;//計算姿態過程用到的變量
q0=quat[0]/q30;
q1=quat[1]/q30;
q2=quat[2]/q30;
q3=quat[3]/q30;
Pitch=asin(-2*q1*q3+2*q0*q2)*57.3;//計算俯仰角
Roll=atan2(2*q2*q3+2*q0*q1,-2*q1*q1-2*q2*q2+1)*57.3;//計算滾轉角
Yaw=atan2(2*(q1*q2+q0*q3),q0*q0+q1*q1-q2*q2-q3*q3)*57.3;//計算偏航角
(2)IIC設置代碼
IIC協議廣泛的使用于系統內多個集成電路間的通信。它使用雙向串行數據線(SDA)和串行時鐘線(SCL)直接獲取設備的數據。本文中的IIC配置代碼如下所示。


利用MPU6050傳感器測試踝足功能正常的被試者行走時的踝關節角度,然后再讓該被試者穿戴所設計的踝足矯形器行走,同時測試其踝關節角度。因為下肢運動的主要形式在矢狀面內,其他面的運動只是讓人的運動更靈活[5]。俯仰角表征踝關節在矢狀面上的旋轉角度,所以只需將被試者未穿戴和穿戴矯形器時的俯仰角進行比較,如圖5所示,穿戴矯形器和未穿戴矯形器時的踝關節俯仰角變化曲線吻合較好。那么對于肌無力或肌力下降的踝足病人,可以參考踝足功能正常的被試者的踝關節角度變化規律,設定適合特定病人的控制參數實現輔助其完成訓練康復,逐漸恢復至正常的踝足功能。

圖5 未穿戴和穿戴矯形器的俯仰角比較
隨著可穿戴傳感器廣泛應用于康復領域,可穿戴外骨骼康復機器人的研發和應用引起了研究者們的關注。本文以STM32單片機為核心,利用MPU6050六軸傳感器、比例閥和電壓放大模塊實現了對主動型踝足矯形器的控制,該裝置能輔助肌無力或肌力下降的踝足病人進行訓練康復,提高病人的康復效果。
參考文獻:
[1]陳華珍.一種老年智能手環設計[J].現代計算機,2017:3-4.
[2]占華林.基于MPU6050六軸傳感器平衡小車的設計[J].電子測試,2017:10-11.
[3]曹麗平.基于多傳感器的人體運動識別算法與應用研究[D].重慶郵電大學工程碩士學位論文,2013:51-52.
[4]Graciela E.IoT Fall Detection System for the Elderly UsingIntel Galileo Development Boards Generation I[J].IEEE,2016:3-5.
[5]唐懋.基于Arduino兼容的Stem32單片機的四旋翼飛行器設計[D].廈門大學工程碩士學位論文,2014:14-15.