(東華大學 機械工程學院,上海 201620)
隨著社會老齡化的加劇和人民生活水平的提高,由腦卒中、脊髓損傷、腦外傷等原因造成的殘障人口迅速增長[1]。同時,各類肢體殘疾患者需要醫療康復和輔助設備,然而國內現在資源不足,相關產業人員嚴重不足。康復外骨骼機器人不僅可以為肢體力量較弱的患者提供個性化的訓練方案,幫助他們進行康復訓練改善運動功能障礙,還可以減輕治療師負擔、節約社會資源[2]。
設計的下肢康復外骨骼機器人屬于被動式運動控制,它所起的作用是輔助使用者行走或者進行康復訓練。將人體步態特征分解為單獨的部分,然后將其運動規律和驅動信息提前存入電機中,人在行走時發出指定信號,控制系統接收到信號進行分析后驅動電機進行相應的動作[3]。
相比于傳統的工業機器人,下肢康復外骨骼機器人是一個多輸入多輸出機構,其不確定性和非線性都很高,因此對電機的控制能力提出了很高的要求。目前已有許多機構與研究所制造出了樣機,如加州大學伯克利分校Kazerooni教授帶領的團隊在2010年推出的醫用外骨骼Ekso,Ekso通過采集患者當前的運動趨勢進而控制外骨骼的運動,并可以通過背部的控制器手動調節運動狀態[4];韓國首爾HEXAR公司為腦卒中后偏癱患者開發的WA-H利用檢測行走時其質心的變化,進而調節電機進行平衡控制[5];日本筑波大學研發的HAL-5,通過接收人體的肌電信號來分析穿戴者的運動意圖進而驅動電機運動;美國Argo Medical Technologies公司開發的ReWalk利用傾角傳感器來獲得穿戴者的運動狀態從而調整電機輸出。
但是不管采用哪種交互方式,都需要對外界輸入信號進行判斷并得到恰當的輸出。經典PID控制結構簡單且被廣泛使用,但是經典PID控制也存在著一些問題。因此有人在經典PID的基礎上進來了改進,比如方醉敏[6]等人提出的基于專家控制規則的PID控制結構克服了經典PID結構中被控對象具有非線性、時變、大純滯后等特性;孫悅[7]等人提出了改進蟻群算法的PID參數優化方法,通過結合蟻群算法和PID技術,對PID參數進行優化,取得了較好的控制效果。但這些控制結構中其參數固定,而下肢外骨骼康復機器人需要適應不同的人群、不同的穿戴條件,所以系統參數會發生變化,這些控制算法已經不能很好地滿足要求。而對諸如神經網絡、滑模控制、模糊控制等智能算法進行對比后,由于模糊控制結構清晰,能夠適用于各種復雜非線性問題,能夠動態改變系統參數,所以選取其與經典PID一起構成模糊PID控制來實現下肢康復外骨骼機器人的運動。
構造了下肢康復外骨骼機器人的動力學模型,設計了一種開關切換式模糊PID控制方法對其進行控制。聯合ADAMS與Matlab/Simulink 軟件進行仿真分析對比,驗證所設計方法的合理性。由于采用了開關切換式模糊PID,其中模糊PID的參數可以根據穿戴者情況的不同進行調節。因此本文在建模、仿真和分析的過程中未將不同佩戴者的這一因素放入其中。
ADAMS具有很強大的動力學分析功能,但是并不擅長構建較為復雜的虛擬樣機模型,而下肢康復外骨骼機器人較為復雜,因此先在SolidWorks中建立其三維模型,如圖1所示,主要由腰部模塊、大腿模塊、小腿模塊、足部模塊及髖、膝、踝三個關節組成。將其三維模型保存為*.x_t格式,通過模型數據接口導入到ADAMS軟件中,設置材料為鋁合金和各個部位的參數。驅動電機的最大扭矩為100 N·m,最大功率為500 W。模型具體參數如表1所示。

圖1 SolidWorks中的外骨骼機器人模型

表1 外骨骼模型慣性參數
在ADAMS中對模型進行必要的約束。由于下肢康復外骨骼機器人主要運動是在矢狀面內,所以忽略模型在運動時的側向擺動。在下肢髖、膝、踝關節處各設置一個轉動副,同時添加足部與地面直接的接觸力[4](碰撞接觸,剛度100 N/mm,力指數2.2,阻尼10 N·s/mm,穿透深度0.001 mm),保證模型在地面上行走而不會下陷。添加髖部與地面的水平約束,保證髖部只相對于地面平動。在左右髖、膝、踝關節處添加驅動(motion)。完成配置后的模型如圖2所示。

圖2 ADAMS中配置好的模型
人體正常行走時下肢可以分為支撐相和擺動相。支撐相指足部接觸地面和承受重力的時間,約占整個周期時長的62%;擺動相指足部離開地面向前邁步到再次落地之間的時間,約占整個周期時長的38%[5]。本文模型以支撐相為基準,建立動力學模型。
如圖3所示,選定坐標系O0為基準坐標系,固定在外骨骼背部中心處,坐標系O1位于髖關節位置并固定在大腿連桿上,坐標系O2位于膝關節位置并固定在小腿連桿上,坐標系O3位于踝關節位置并固定在足部。

圖3 單側腿單腿支撐模型
圖中m1、m2和m3分別為大腿連桿、小腿連桿和踝關節以下連桿的質量;d0、l0為踝關節距離腰部中心點的距離;d1、d2和d3為各連桿的質心距相應關節的距離;l1、l2和l3分別為外骨骼大腿、小腿和腳的長度;θ1、θ2、θ3為髖關節、膝關節、踝關節的轉動角度;T1、T2、T3則為對應關節的扭矩。所以,系統的整體動能和勢能為
(1)
(2)
則,系統的拉格朗日方程為
L=EK-EP
(3)
(4)
由式(1)~式(4),然后將力矩用各連桿間角度進行表示,可以得到各關節的驅動力矩:

(5)

經典PID控制具有結構簡單、應用靈活等特點。由比例(proportion)、積分(integral)、微分(derivative)三部分組成[6],其傳遞函數為
(6)
式中,Kp為比例增益;Ki為積分增益;Kd為微分增益。
在這里選用經典PID模型而不是微分先行、增量式、控制死區等,是基于以下幾點考慮的:
① 微分先行PID控制只對輸出量進行微分,而對給定指令不起微分作用,它適用于給定指令頻繁升降的場合,可以避免指令的改變導致超調過大,但是它會導致響應速度變慢。而外骨骼機器人的輸入驅動信息都是平滑的曲線,很少出現大幅度的跳躍,且步態角度誤差e也不是很大,為了加快響應速度,所以沒有使用微分先行PID控制。
② 增量式PID控制算法是一種遞推算法,輸出控制量增量,并無積分作用。而本外骨骼機器人需要連續改變機構位置,時刻適應人體姿態,就需要對之前的累積誤差進行消除,所以并不適用。
③ 帶死區的PID控制則是在經典PID中引入了死區的概念。當偏差小于設定之后便認為沒有誤差不進行調節。但是在零點附近時,若偏差較小,進入死區后偏差變為“0”會導致積分消失,此時如果系統依然有靜態誤差則不能消除,需要人為處理。而本外骨骼機器人需要精確的控制,如果增加死區,太小的話起不到明顯作用反而增大了計算量,而設置偏大則會令輸出曲線無法緊隨輸入曲線,導致跟隨效果變差。
模糊控制(Fuzzy Control)是一種由模糊集理論、模糊控制邏輯和模糊語言變量為基礎組成的智能控制方法[7]。它能夠模仿人腦思維來對一些不方便建立數學模型的系統進行控制。模糊控制系統主要由4個部分組成:模糊化接口、推理機、知識庫和反模糊化接口[7]。
① 模糊化接口。模糊控制器并不是什么信號都可以識別的,在進行模糊推理之前,需要將輸入信號轉化為推理機可以識別的模糊量,模糊化接口就是完成這部分工作。轉化后的模糊量用模糊子集來表示。
② 推理機。根據規則庫的條件,將模糊化的輸入變量變為輸出變量的結構。
③ 知識庫。包含規則庫和數據庫兩個部分。數據庫存有所有的輸入、輸出變量的全部模糊子集的信息;而規則庫則是模糊控制的一個核心,如何根據不同輸入量得出適當的輸出量,這取決于一個規格庫設計的是否合理。規則庫通常使用if…is…and…is…then…is…的形式來編寫。
④ 反模糊接口。模糊化的輸入變量經過推理機后,得到的仍是模糊化的輸出變量,不能直接被控制器所識別,需要將其變為精確量。反模糊接口通常使用最大隸屬度法、重心法、加權平均法等方法來進行反模糊處理。
由于下肢康復機器人具有非線性和強耦合性,所以參數固定的經典PID控制器無法滿足精確控制的要求,但是通過模糊控制器自整定參數后可以解決這一問題。
PID參數Kp、Ki、Kd的自整定公式如下:
(7)
式中,Kp(0)、Ki(0)、Kd(0)為PID控制器初始值,ΔKp、ΔKi、ΔKd為模糊控制器的自整定輸出量。
2.1.1 確定模糊控制器結構
在此綜合控制器中,模糊控制器的主要作用是根據輸入變量,即關節步態角度誤差e及其微分ec,不斷整定PID控制器的參數Kp、Ki、Kd,得到輸出變量ΔKp、ΔKi、ΔKd,因此采用二輸入三輸出的形式。將輸入變量與輸出變量的模糊集均設定為7擋的{NB(負大)、NM(負中)、NS(負小)、ZO(零)、PS(正小)、PM(正中)、PB(正大)}[8]格式。這樣擋極多,規則制定靈活、細致,可以適應不同條件下的控制。同時將輸入、輸出變量量化到(-3,3)區域,論域為{-3,-2,-1,0,1,2,3}。
2.1.2 確定輸入輸出變量的隸屬度函數
因為需要較高的分辨率與靈敏度,因此選用隸屬函數形狀較尖的三角形隸屬函數,能對誤差做出快速反應,適合在線整定參數的模糊PID控制[9]。
2.1.3 建立模糊控制規則
模糊PID控制器的重中之重就是模糊規則的制定,規則的好壞決定了控制器能否準確、快速地對輸入量進行正確的識別與輸出。控制器根據關節步態角度誤差e及其微分ec作為輸入來對PID控制器的參數進行自整定調整,因此,可以利用PID參數的配置經驗[10-13]:
① 當輸入誤差|e|較大時,為了使控制系統迅速地響應,應設置較大的Kp。同時為了避免因e的突然變化導致微分過飽和,設置較小的Kd值。最后令Ki=0保證系統不會產生較大的超調,發生積分飽和現象。
② 當輸入誤差|e|處于中等大小時,適當減小Kp的值來保證超調量處于合適的范圍。此時微分會對系統產生較大影響,應取適中的值保證系統的響應速度。
③ 當輸入誤差|e|接近設置值時,可以適當增大Kp和Ki的取值來保證系統的穩定性。同時,根據ec的值來設定Kd的值。ec較大時,Kd取較大值;ec較小時,Kd取較小值。
基于以上經驗,初步配制出Kp、Ki、Kd的模糊控制規則,如表2所示。

表2 Kp、Ki、Kd的模糊規則
2.1.4 去模糊化
關節步態角度誤差e及其微分ec經過推理機推理后,得到模糊輸出值U。U是一個模糊子集,需要通過去模糊化才能變成精確控制量u。目前常用的方法有加權平均法、最大隸屬度法和重心法。本文使用工業控制中廣泛應用的加權平均法來進行去模糊處理[10]。輸出值由式(8)決定:
(8)
式中,μ(y)為元素y對所屬模糊集的隸屬度。
雖然模糊PID控制器可以自整定PID參數,有很強的適應性,但是模糊規則較多,且系統中不只有一塊模糊PID控制器,整體模糊計算量非常大,會影響計算速度,造成反應速度變慢。經典PID控制器結構簡單,計算量小,所以將二者結合起來,取長補短。
因此開關切換式模糊PID控制器比單純的模糊PID控制器響應速度更快,比單純的經典PID控制器精度更好,穩定性更好,整體震蕩和超調都較小。其控制系統結構示意圖如圖4所示。它可以根據輸入變量|e|的大小靈活使用不同控制方法。輸入變量|e|是期望數值與跟隨數值的差值,它的大小決定了驅動電機的輸出功率的大小同時也能夠反映出輸入與輸出信號之間是否有大的數值跳躍,所以選取其作為切換的條件。當輸入變量|e|大于設定值時,控制器采用模糊PID控制器來對參數進行自整定,使輸出結果更加精確。反之則使用經典PID控制,節省大量的時間,保證整體控制具有良好的響應速度。

圖4 開關切換式模糊PID控制系統結構示意圖
前文已對模型進行了動力學分析,同時設計了開關式模糊PID控制器,所以基于ADAMS與Matlab進行聯合仿真分析。
根據動力學分析,然后采用負反饋控制,下肢外骨骼康復機器人控制模型的傳遞函數為[14]
(9)
由于不同的關節步態特征不同,需要采用不同的傳遞函數來單獨驅動。本文以髖關節為例進行仿真分析。根據模型參數,可以得到a=5,b=5,k=100。如圖5所示,在Simulink中完成各種控制器模型的搭建。“PID control”模塊即為經典PID控制器,“fuzzy control”模塊為模糊控制器,兩者聯合組成“fuzzy-PID”模糊PID控制器。結果是由模糊PID控制器產生還是經典PID控制器產生取決于閾值|u|的選擇。

圖5 開關切換式模糊PID控制器仿真模型
根據式(5)計算出個關節所需驅動后,代入圖6中。圖6中 Sub模塊即為封裝好后的開關切換式模糊PID控制器;Adams_sub模塊為ADAMS模型在Simulink中的動力學控制模塊。輸入各關節的驅動信息,經過不同參數的控制器后,ADAMS接收到信號然后產生相應的運動,最后將關節角度信息返回到Simulink中。模型運動圖如圖7所示。以髖關節為例,下肢康復外骨骼機器人模型關節的理論運動軌跡與經過不同控制器后的實際運動軌跡圖及其誤差圖如圖8所示。
由于理論軌跡不是從0°開始的,所以不論是經典PID控制器還是模糊PID控制器都有一個從0°逼近理論值的過程。由圖8(b)可知,經典PID與模糊PID控制器經過很短的時間后都可以較好地跟隨目標曲線,但是經典PID控制器跟隨時超調量在3°左右,而且逼近目標曲線后仍有1°~2°的誤差,而模糊PID控制器超調量很小,在0.5°左右,其后的跟隨過程波動幅值很低,基本與目標曲線重合,具有很好的控制效果。同時根據圖8(b)可以看出模糊PID控制的跟隨曲線穩定所需的時間約占總時長的15%,而經典PID控制的跟隨曲線穩定所需的時間約占總時長的30%。由此說明模糊PID控制具有良好的精度且響應速度較快。
將模糊PID控制器與經典控制器通過開關組合起來,形成開關式模糊PID控制器,具體模型如圖7所示。同樣的條件進行仿真后,將結果與模糊PID控制器進行對比,得到結果如圖9所示。

圖6 ADAMS與Simulink聯合仿真圖

圖7 模型仿真運動圖

圖8 控制精度比較

圖9 模糊PID與開關式模糊PID對比圖
從圖9可以看出,開關式模糊PID控制器跟隨曲線與模糊PID控制器的跟隨曲線趨勢一致,幅值大小也基本一致,誤差保持在0.6°以內,能夠很好地完成模糊PID所完成的工作,但是所需的計算量會減少很多。
采用了開關切換式模糊PID控制器來對下肢康復外骨骼機器人進行運動控制研究。為了更好的驗證控制效果,對外骨骼機器人進行了三維建模和動力學分析,并將其導入仿真分析軟件ADAMS中,與Matlab/Simulink進行聯合仿真。仿真過程中代入模型動力學分析后的力矩驅動信息,開關式模糊PID控制器控制模型運動獲得跟隨曲線。通過跟隨曲線與目標曲線的對比分析,可以看出開關式模糊PID控制器比傳統PID經典控制超調量更小,角度變化更加精確,與模糊PID控制器相比,在計算量更小的前提下,控制精度相似,能夠保證穿戴者與下肢康復外骨骼機器人運動協調一致。