張琳芳,李玉榕
(1.三明醫(yī)學(xué)科技職業(yè)學(xué)院,福建 三明 365000;2.福州大學(xué) 電氣工程與自動(dòng)化學(xué)院,福建 福州 350000)
醫(yī)學(xué)理論研究和臨床實(shí)踐證明,正確合理的肌力訓(xùn)練能夠有效增強(qiáng)肌肉的力量和耐力,預(yù)防各類骨關(guān)節(jié)攣縮,保持患肢關(guān)節(jié)活動(dòng)度,改善肢體運(yùn)動(dòng)功能,是康復(fù)訓(xùn)練的重中之重[1]。目前我國使用的肌力訓(xùn)練設(shè)備大都依賴進(jìn)口,設(shè)備價(jià)格昂貴,僅少數(shù)醫(yī)院配置,患者康復(fù)訓(xùn)練費(fèi)用高且不方便[2]。因此,研制價(jià)格實(shí)惠、家庭適用的肌力訓(xùn)練裝置具有一定的社會(huì)價(jià)值和市場前景。
基于此,本文針對肌力康復(fù)治療的要求,探討了肌力康復(fù)訓(xùn)練的多種方法[3],構(gòu)建了多模式肌力康復(fù)訓(xùn)練裝置的控制方案,以達(dá)到肌力訓(xùn)練的效果。
本文設(shè)計(jì)的肌力康復(fù)訓(xùn)練裝置可以實(shí)現(xiàn)等長、等張、被動(dòng)與等速四種肌力訓(xùn)練模式。
1)等長訓(xùn)練模式。等長訓(xùn)練模式下,設(shè)備控制肢體關(guān)節(jié)始終固定在一定角度,不產(chǎn)生關(guān)節(jié)活動(dòng),保持肌纖維長度不變,但訓(xùn)練者可以根據(jù)自己意愿選擇合適的力量訓(xùn)練,調(diào)整肌肉收縮力度大小。等長訓(xùn)練模式需要具備的基本功能包括:可調(diào)整指定位置(粗調(diào)、微調(diào)),可設(shè)置轉(zhuǎn)動(dòng)速度,可顯示并記錄訓(xùn)練者的訓(xùn)練位置、實(shí)時(shí)轉(zhuǎn)矩和最大轉(zhuǎn)矩等控制功能。
2)等張訓(xùn)練模式。等張訓(xùn)練模式下,設(shè)備輸出阻力矩恒定,但訓(xùn)練時(shí)肌肉收縮,改變肌纖維長度,產(chǎn)生明顯的關(guān)節(jié)活動(dòng),運(yùn)動(dòng)狀態(tài)取決于訓(xùn)練者與設(shè)備輸出力矩的相互關(guān)系。等張訓(xùn)練模式需要具備的基本功能包括:可自行設(shè)定轉(zhuǎn)矩大小,顯示實(shí)時(shí)轉(zhuǎn)矩、實(shí)時(shí)速度、實(shí)時(shí)位置,可設(shè)定運(yùn)動(dòng)起始范圍、方向選擇、最大限速度、啟??刂频瓤刂乒δ堋?/p>
3)被動(dòng)訓(xùn)練模式。被動(dòng)訓(xùn)練模式用于控制肢體在設(shè)備的帶動(dòng)下,按照指定的角度范圍內(nèi)以設(shè)定的恒定速度往復(fù)運(yùn)動(dòng),運(yùn)動(dòng)過程中訓(xùn)練者肌肉張力的大小變化不會(huì)改變運(yùn)動(dòng)速度。被動(dòng)訓(xùn)練模式需要具備的基本功能包括:可設(shè)定和顯示運(yùn)動(dòng)速度、運(yùn)動(dòng)范圍、加減速時(shí)間、訓(xùn)練組數(shù)、時(shí)間間隔、實(shí)時(shí)轉(zhuǎn)矩、最大轉(zhuǎn)矩等,具備啟停、清零等控制功能。
4)等速訓(xùn)練模式。等速訓(xùn)練模式用于控制鍛煉肌肉等速收縮。等速訓(xùn)練模式下,輸出阻力矩始終與訓(xùn)練者肌肉收縮產(chǎn)生的關(guān)節(jié)力矩相等,以保持肢體按照設(shè)定的恒定速度運(yùn)動(dòng)[4]。等速訓(xùn)練模式需要具備的基本功能包括:可設(shè)定和顯示轉(zhuǎn)動(dòng)速度、實(shí)時(shí)位置、實(shí)時(shí)速度、實(shí)時(shí)轉(zhuǎn)矩、運(yùn)動(dòng)起始位置、增益、轉(zhuǎn)矩閾值等,具備正反向模式、啟??刂频瓤刂乒δ堋?/p>
根據(jù)四種訓(xùn)練模式,設(shè)備的主要性能要求如下:(1)設(shè)備具備等長、等張、被動(dòng)、等速四種訓(xùn)練模式,須配置多種輔助連接附件,帶有機(jī)械電氣雙重保護(hù);(2)人機(jī)交互功能,訓(xùn)練者可自動(dòng)設(shè)定訓(xùn)練模式、訓(xùn)練參數(shù)等信息,可顯示、記錄肌力訓(xùn)練實(shí)時(shí)情況;(3)兼容性和集成性功能,測試系統(tǒng)可與各功能配件集成,從而適用于人體多部位的力量訓(xùn)練和肌力測評。
本文設(shè)計(jì)的肌力康復(fù)訓(xùn)練裝置基本結(jié)構(gòu)如圖1所示。系統(tǒng)主要包括計(jì)算機(jī)、控制器、伺服電機(jī)、伺服驅(qū)動(dòng)器、扭矩傳感器、角度傳感器、渦輪傳動(dòng)組、電動(dòng)升降導(dǎo)柱組、橫向?qū)к壵{(diào)節(jié)組、縱向?qū)к壵{(diào)節(jié)組和座椅等,系統(tǒng)總體框架見圖2。其中伺服電機(jī)、驅(qū)動(dòng)器、傳感器、控制器等安裝在設(shè)備前端的動(dòng)力執(zhí)行部位上。
圖1 多模式肌力訓(xùn)練裝置基本結(jié)構(gòu)
圖2 系統(tǒng)總體框架
本設(shè)計(jì)選用STM32F103ZET6 單片機(jī)作為控制器,單片機(jī)的SPI接口完成角度傳感器的信息采集,用CAN接口完成扭矩傳感器的信息采集,用串口2完成伺服驅(qū)動(dòng)器的連接,用串口1完成上位機(jī)的連接。
角度傳感器選用AS5048A,安裝正對主傳動(dòng)軸軸心,距離正后方2 mm處,磁鋼安裝在主傳動(dòng)軸上。當(dāng)主傳動(dòng)軸轉(zhuǎn)動(dòng)時(shí),通過磁電阻效應(yīng),將磁場信號(hào)的變化信號(hào)轉(zhuǎn)化為電阻阻值變化量,進(jìn)而轉(zhuǎn)化成電壓的變化量(需外加電勢)[5]。經(jīng)過信號(hào)處理電路,模擬電壓信號(hào)轉(zhuǎn)化成角度對應(yīng)數(shù)字信號(hào)輸入STM32的SPI接口,通過信號(hào)換算公式換算成角度,從而實(shí)現(xiàn)角度測量功能,其換算如下Angle=XA/(214-1)×360,其中,XA是角度傳感器輸出的14位數(shù)字信號(hào)。
扭矩傳感器選用T908D,一端與主傳動(dòng)軸固定連接,另一端的底座固定在渦輪上。該扭矩傳感器采用應(yīng)變片電測技術(shù),在彈性軸上組成應(yīng)變橋。在主傳動(dòng)軸與扭矩傳感器產(chǎn)生相對運(yùn)動(dòng)的情況下,彈性軸產(chǎn)生形變引起應(yīng)變電橋阻值的變化量,轉(zhuǎn)變成電信號(hào)的變化量后再放大,再通過CAN通信將輸出數(shù)字信號(hào)傳給輸入STM32的CAN接口,通過信號(hào)換算公式計(jì)算出力矩,其表示如下T=A×256+B,其中,A、B分別是扭矩傳感器輸出的高字節(jié)、低字節(jié)數(shù)據(jù)。
本文設(shè)計(jì)的肌力訓(xùn)練設(shè)備裝置主要利用伺服電機(jī)通過同步帶輪和渦輪蝸桿動(dòng)力傳遞到主傳動(dòng)軸,帶動(dòng)輸出軸上的訓(xùn)練支架運(yùn)動(dòng),從而達(dá)到關(guān)節(jié)訓(xùn)練的效果。由STM32控制器、伺服驅(qū)動(dòng)器臺(tái)達(dá)ASDA-B2和伺服電機(jī)組成伺服系統(tǒng)??刂破鱏TM32發(fā)送控制信號(hào),控制伺服驅(qū)動(dòng)器驅(qū)動(dòng)伺服電機(jī)轉(zhuǎn)動(dòng)。伺服電機(jī)通過編碼器反饋位置信號(hào),經(jīng)過伺服驅(qū)動(dòng)器將運(yùn)行狀態(tài)傳送給控制器STM32。
該伺服驅(qū)動(dòng)器有三種運(yùn)動(dòng)模式,分別為速度控制模式、位置控制模式、扭矩控制模式和一種混合控制模式[6]。根據(jù)本設(shè)計(jì)的性能要求,選用速度控制模式實(shí)現(xiàn)等長、等張、等速訓(xùn)練模式,選用位置控制模式實(shí)現(xiàn)被動(dòng)訓(xùn)練模式。伺服驅(qū)動(dòng)器的運(yùn)動(dòng)模式設(shè)置參數(shù)如表1所示。
表1 伺服驅(qū)動(dòng)器的運(yùn)動(dòng)模式參數(shù)
通過Modbus 協(xié)議的通信,可設(shè)置伺服驅(qū)動(dòng)器ASDA-B2內(nèi)部寄存器參數(shù)。Modbus 協(xié)議有兩種工作模式,ASCII模式和 RTU模式。本文選擇了ASCII模式,定義了27位的字符數(shù)組??刂破鱏TM32即按照以下數(shù)據(jù)格式將數(shù)據(jù)寫入字符數(shù)組控制伺服驅(qū)動(dòng)器,進(jìn)而控制電機(jī)執(zhí)行指令。ASCII模式的數(shù)據(jù)格式定義如下:(1)起始碼,第1字節(jié),采用冒號(hào)(3AH)表示;(2)通信地址,第2~3字節(jié),2個(gè)ASCII碼代表一個(gè)字節(jié)數(shù)據(jù);(3)命令碼,第4~5字節(jié),2個(gè)ASCII碼代表一個(gè)字節(jié)數(shù)據(jù);(4)數(shù)據(jù)內(nèi)容,第6~23字節(jié),4n個(gè)ASCII碼代表2n個(gè)字節(jié)數(shù)據(jù),含數(shù)據(jù)起始地址、數(shù)目、字節(jié)數(shù)和內(nèi)容;(5)校驗(yàn)碼,第23~24字節(jié),LRC校驗(yàn)結(jié)果,2個(gè)ASCII碼代表一個(gè)字節(jié)數(shù)據(jù);(6)結(jié)束碼,第26~27字節(jié),采用結(jié)束符(回車、換行)表示。
本設(shè)計(jì)的主控制器采用 STM32單片機(jī),利用 Keil 5編寫系統(tǒng)程序,主程序流程如圖3所示。系統(tǒng)通電,程序首先調(diào)用初始化子函數(shù)對系統(tǒng)的引腳、串口、SPI等協(xié)議配置初始化[7]。通過對上位機(jī)、傳感器等數(shù)據(jù)解析處理,確定模式標(biāo)志位Mode_Flag表達(dá)式的值,再利用switch語句進(jìn)行訓(xùn)練模式分支結(jié)構(gòu)的選擇。根據(jù)Mode_Flag表達(dá)式的值,選擇等長、等張、等速或被動(dòng)訓(xùn)練模式。以等張訓(xùn)練模式為例,程序?qū)Ⅱ?qū)動(dòng)器設(shè)置為轉(zhuǎn)速工作模式,系統(tǒng)讀取扭矩傳感器和角度傳感器值,將檢測值與設(shè)定阻力矩進(jìn)行比較。若檢測值大于設(shè)定值,則根據(jù)兩者差值給定對應(yīng)轉(zhuǎn)速值,啟動(dòng)電機(jī)訓(xùn)練。訓(xùn)練過程到達(dá)限定位置時(shí),電機(jī)轉(zhuǎn)速設(shè)定為0,根據(jù)是否接收停止指令來判斷是否進(jìn)行下一輪訓(xùn)練。
圖3 程序流程
上位機(jī)界面設(shè)計(jì)如圖4所示,上位機(jī)軟件采用JAVA的Swing組件來設(shè)計(jì)整體界面。在主控界面上,可以選擇等長、等張、等速、被動(dòng)四種康復(fù)訓(xùn)練模式,并根據(jù)訓(xùn)練者康復(fù)需求設(shè)定訓(xùn)練的速度、力矩、次數(shù)等參數(shù),具有良好的人機(jī)交互性和訓(xùn)練效果。
圖4 上位機(jī)界面
本文利用STM32控制伺服驅(qū)動(dòng)器、伺服電機(jī),配合實(shí)時(shí)監(jiān)測的力矩和角度傳感器,實(shí)現(xiàn)等速、等張、等長、被動(dòng)四種訓(xùn)練模式,通過配合不同支架,可實(shí)現(xiàn)多關(guān)節(jié)的肌力訓(xùn)練,滿足康復(fù)訓(xùn)練的應(yīng)用要求。下一步主要對上位機(jī)軟件的開發(fā)優(yōu)化、康復(fù)評估等進(jìn)行研究與改善。