康復醫(yī)療機器人不僅是當前機器人研究的前沿,而且是涉及自動控制、計算機、智能儀器、機械學、康復醫(yī)學、神經科學等跨學科的研究領域,是一個新興學科??祻歪t(yī)療機器人的研究具有重要的科學意義?;谏现祻陀柧毜囊?,筆者研制一種基于STM32的力反饋型上肢康復訓練系統(tǒng)。在設計控制系統(tǒng)時,保證系統(tǒng)的安全性與穩(wěn)定性是最基本的原則⑷。為了避免在突發(fā)情況下對患肢造成二次損傷,通常采用限定機器人末端和受訓患肢之間作用力大小的辦法。經過實驗驗證,本系統(tǒng)設計合理,性能穩(wěn)定,可以實現(xiàn)康復機器人的平穩(wěn)控制,具有的力反饋功能可以在保證系統(tǒng)安全性的前提下充分激發(fā)患者殘存的功能。
1、上肢康復機器人系統(tǒng)構成
上肢康復機器人的機械臂是關于軸心對稱的,能夠繞軸心進行反復的弧線運動,既可以由計算機控制訓練,也可以由治療師直接操作機器人引導患者進行訓練。圖1為該上肢康復訓練機器人的實物。
?
圖1單自由度上肢康復訓練機器人
該機器人系統(tǒng)主要由機械臂機械結構、電機、位置傳感器、扭矩傳感器、電機驅動器、機器人控制器和上位機組成,系統(tǒng)框圖如圖2所示。扭矩傳感器、驅動電機和位置傳感器沿機械臂軸心依次放置。位置傳感器用于檢測機械臂的運動角度;扭矩傳感器用于檢測患者與機械臂的交互作用力,在患者主動能力不足時提供更大的輔助,而在患者有能力完成動作時,適當減小輔助甚至施加阻力,以便充分激發(fā)患者殘存的功能;電機驅動器,用于產生康復訓練的輔助力或阻尼力,推動或是阻礙機械臂和患肢的運動。

圖2單自由度的上肢康復訓練機器人系統(tǒng)框圖
機器人控制器通過USB接口與上位機實現(xiàn)數(shù)據(jù)交換,一方面控制電路接收上位機發(fā)送來的控制信息,解析上位機命令控制電機驅動器;另一方面,機器人控制器將采集到的扭矩傳感器和位置傳感器數(shù)據(jù)發(fā)送到上位機。康復醫(yī)師可根據(jù)上位機人機交互界面顯示的{言息’對患者的康復訓練情況進行定量的科學分析與評價,滅者細膝卿計耀供決策依據(jù)。
2、系統(tǒng)硬件設計
本機器人控制器采用基于AKM-M3內核的STM32微控制器。ARM-M3內核的設計具有低功耗、高性能、實時性以及具有競爭力的價格,該內核配備了緊耦合的嵌套矢量中斷控制器,因此能夠更加快速地響應中斷事件。微控制器自帶I2位的ADC和DAC,可以很好地滿足系統(tǒng)的需要。
圖3為本系統(tǒng)的電機驅動器硬件電路。微控制器DAC的輸出引腳接到圖3中的MOTORIN端。由于微控制器的DAC只能輸出單極性電壓信號,而機械臂需要做往復運動,需要雙極性信號驅動電機正反轉,故將MOTORIN端接入的信號先進行調理,該調理部分所用OP4177芯片為4路運放。

圖3 ?電機驅動器硬件電路
筆者通過減法電路將DAC輸出轉換成雙極性信號,圖中OP4177芯片的左上角運放構成該減法電路。運放正輸人端接人DAC輸出信號,負輸入端接人1.65V電壓。減法電路輸出為V。=(R3/R8)(^motorin-1.65),當l/M。TQRW》1.65V時,減法電路輸出正電壓控制電機正轉;當hcmwm《1.65V時,減法電路輸出負電壓控制電機反轉;Kmotorin=1.65V時,減法電路輸出0V電壓,此時電機保持靜止狀態(tài)。圖中尺|5~尺?構成了分壓電路,經過OP4177芯片左下角運放構成的電壓跟隨器獲得I.65V基準電壓。減法電路輸出信號接人OP4177芯片右上角運放組成的運算放大電路,其輸出為V,=[-(R4+R7)/R5]xV0。
經過運算放大后的電壓信號輸人到功率放大器,此處采用集成功率放大器為丨,M3886,該芯片具有過電流保護功能,且輸出功率較大,可輸出60W。圖3屮的MOTOROUT端為功放輸出的驅動電機的電壓信號。功率放大器輸出的驅動電壓MOTOROUT與微控制器DAC輸出MOTORIN比例關系為

筆者采用的扭矩傳感器為差分信號輸出,其輸出為K+和L,電壓幅值為毫伏級,故需要進行差分放大后,才能送人微控制器進行A/D轉換。該差分放大器采用小尺寸、低功耗、高精度的AD620。差分輸出為:

式中RG為增益的外部控制電阻,選擇合適的RG使扭矩信號放大至伏級。由于扭矩傳感器輸出的信號是雙極性的,經AD620放大后仍為雙極性信號,而微控制器的A/D轉換范圍為0~3.3V,故須將AD620輸出的電壓加上1.65V抬升到0~3.3V,使之適合A/D的輸人范圍。
位置傳感器輸出為正交脈沖信號,STM32微控制器的每個定時器都有正交脈沖信號的輸入接口,通過配置其定時器的工作模式,即可以對位置傳感器的輸出脈沖進行正向/反向計數(shù),從而得到機械臂的位置。
微控制器將扭矩信息與位置信息通過USB數(shù)據(jù)線上傳到上位機,進行康復機器人狀態(tài)的監(jiān)控;同時接收上位機下傳的驅動電機的命令,進行相應的D/A轉換,通過電機驅動器控制電機工作。
3、系統(tǒng)軟件設計
系統(tǒng)上位機與微控制器之間通過USB進行數(shù)據(jù)交互。系統(tǒng)上電后,微控制器開始工作,首先初始化系統(tǒng)時鐘、I/O端口、外部中斷、ADC、DAC、定時器和USB等配置。
首先在上位機中設置康復機器人的訓練模式,本系統(tǒng)的訓練模式分為主動運動訓練模式和被動運動訓練模式兩種[6]。設置成功后,上位機的控制指令通過USB傳輸?shù)轿⒖刂破髦校⑦M入微控制器的USB中斷,微控制器在中斷處理程序中處理上位機發(fā)出的指令,根據(jù)上位機發(fā)出控制指令,設定相應訓練模式的標志,以供主程序進行機械臂運動類型的判斷。
軟件主程序流程如圖4所示,若判斷為被動運動訓練模式,則進人PID控制子程序,對機械臂的位置進行閉環(huán)控制,使機械臂往復運動;若判斷為主動運動訓練模式,則進入自主訓練過程,患者帶動機械臂進行主動訓練;其他則判斷為機械臂無運動模式。
主程序中同時進行機械臂的扭矩信息和位置信息的采集。微控制器的ADC對差分放大后的扭矩信號進行數(shù)字量的轉換;當機械臂轉動時,位置傳感器輸出相互正交的脈沖信號,微控制器通過配置定時器工作模式對其進行計數(shù)。
最后微控制器將扭矩信息與位置信息通過USB腦社位I上位聽撒賄他醒方式直觀地顯示出來,便于醫(yī)師對機械臂的工作狀態(tài)和患者的康復狀況進行客觀判斷。上位機接收到的扭矩信號也是本系統(tǒng)的力反饋信號,當扭矩過小時,可以適當增大驅動電壓,使驅動電機的輸出扭矩增大;當扭矩過大時,可以適當減小驅動電壓,減小驅動電機的輸出扭矩,從而保證了患者康復訓練的有效性與安全性。

圖4 微控制器主程序流程圖
4、PID參數(shù)整定
微控制器DAC輸出的電壓值是通過PID箅法計,4算出來的。PID算法的流程圖如圖5所示。

圖5 PID算法原理框圖
首先,由上位機給定康復機器人機械臂的運動范圍,即圖5中所示的目標位置將位置傳感器采集的當前位置信息輸入到PID控制器中,目標位置與當前位置X(A)的差值e(A)送人PID控制器中,將其輸出值送人微控制器的DAC進行轉換產生電機的驅動信號,進而帶動機械臂做與上位機控制指令相一致的運動。
筆者利用傳統(tǒng)方式求出本系統(tǒng)中直流電機模型參數(shù)。本系統(tǒng)的被控對象是電機模型,傳遞函數(shù)為:

式中,G為電機電勢系數(shù);Ta為電氣時間常數(shù);Tm為機械時間常數(shù)。所選直流電機的參數(shù)如表1所示。
表1直流電機參數(shù)

采用Matlab進行仿真。系統(tǒng)單位階躍信號的響應曲線如圖6(a)所示,系統(tǒng)的穩(wěn)定值在1.0之上,不滿足系統(tǒng)要求。


圖6 ?校正前后系統(tǒng)階躍響應曲線
PID控制器的參數(shù)值是在實驗過程中不斷調整與完善的。經過多次實驗,系統(tǒng)最終選定的PID參數(shù)是o4t/s246t/s0(a)系統(tǒng)單位階躍響應曲線KP=0.7241KI=0.0001,KD=10。
5、實驗測試與結果
為了測試康復機器人控制系統(tǒng)的穩(wěn)定性,筆者進行了反復實驗。圖7(a)所示的是系統(tǒng)的主動運動訓練模式?;颊邘訖C械臂進行往復運動,機械臂所轉動的角度在框圖中顯示出來。

系統(tǒng)的被動運動訓練模式分為4種:慢速小范圍、慢速大細、快速小細和快速大細,可以根據(jù)患者的需求設定合刪訓練類型。圖7(b)是慢速大細訓練模式下的實驗結果,圖7(c)是快速小范酬練模式下的實驗結果。

對于系統(tǒng)中的力反饋功能,除了可以根據(jù)扭矩大小調節(jié)驅動電壓大小外,還可以避免在突發(fā)情況下機構對患者肢體造成的二次損傷,如當患者的肢體發(fā)生痙攣時,系統(tǒng)的工作狀態(tài)可以轉變?yōu)橥V?,從而保護患者。實驗測試結果如圖7(d)所示。圖中尖峰狀的曲線為扭矩信號,當機械臂的運動被阻止時,扭矩傳感器可以檢測到很大的扭矩信號,上位機接收到此扭矩信號后,對機械臂狀態(tài)做出判斷,繼而向下位機發(fā)送停止電機工作的指令,使機械臂處于放松狀態(tài),從而避免了對患肢的損傷。
6、結束語
設計了一種基于STM32的具有力反收的康復機器人控制系統(tǒng)。采用扭矩傳感器實現(xiàn)系統(tǒng)的力反饋功能,充分發(fā)揮患者殘存的功目采用位置傳感器采集康:復機械臂的位置信息,配合PID算法進行位置反饋,使控制信號更加準確。
電子發(fā)燒友App












評論