劉仁學(xué),耿 直
(北方工業(yè)大學(xué)電氣與控制工程學(xué)院,北京 100144)
每年因?yàn)榧膊』蛘呤鹿蕰?huì)導(dǎo)致大量的患者下肢運(yùn)動(dòng)受損,極大地影響了他們的日常生活。下肢作為人體最為重要的部位之一,擔(dān)負(fù)著支撐人體以及行走的任務(wù)。針對(duì)這類患者可采用下肢輔助運(yùn)動(dòng)裝置幫助其重新建立下肢運(yùn)動(dòng)能力。對(duì)于外骨骼領(lǐng)域的下肢運(yùn)動(dòng)輔助裝置,研究者對(duì)其的控制策略一直在做著大量的研究。下肢輔助裝置復(fù)雜度高,傳統(tǒng)的工業(yè)機(jī)器人的控制策略難以滿足要求。而且輔助運(yùn)動(dòng)裝置關(guān)節(jié)系統(tǒng)有著高非線性、高耦合的特點(diǎn),運(yùn)動(dòng)過(guò)程中干擾因素多,也造成了模型的不確定性和時(shí)變性。
為了實(shí)現(xiàn)下肢輔助運(yùn)動(dòng)裝置在運(yùn)動(dòng)中高精度的軌跡跟蹤控制,文獻(xiàn)[1]建立機(jī)器人系統(tǒng)驅(qū)動(dòng)器的動(dòng)力學(xué)模型,通過(guò)PD反饋控制與迭代學(xué)習(xí)前饋控制相融合的算法,提高機(jī)器人系統(tǒng)軌跡跟蹤精度;文獻(xiàn)[2]以人體髖關(guān)節(jié)和膝關(guān)節(jié)作為跟蹤目標(biāo),通過(guò)迭代學(xué)習(xí)控制算法獲得期望運(yùn)動(dòng)軌跡,提升輔助運(yùn)動(dòng)系統(tǒng)跟隨性能。文獻(xiàn)[3]設(shè)計(jì)一款下肢康復(fù)訓(xùn)練機(jī)器人,提出一種基于阻抗的迭代學(xué)習(xí)控制算法,跟蹤患者運(yùn)動(dòng)過(guò)程中的姿勢(shì)軌跡,通過(guò)位置誤差更新機(jī)器人系統(tǒng)阻抗模型參數(shù),增加患者在出現(xiàn)軌跡誤差時(shí)的系統(tǒng)阻抗,使系統(tǒng)安全有效的運(yùn)行。文獻(xiàn)[5]提出了一種基于氣動(dòng)肌肉的康復(fù)機(jī)器人軌跡跟蹤算法,根據(jù)系統(tǒng)迭代過(guò)程中的輸入輸出數(shù)據(jù)設(shè)計(jì)迭代學(xué)習(xí)律,實(shí)現(xiàn)對(duì)氣動(dòng)肌肉期望軌跡跟蹤。
無(wú)模型自適應(yīng)控制是一種基于數(shù)據(jù)的非參數(shù)自適應(yīng)控制算法[6]。采用無(wú)模型自適應(yīng)控制在研究對(duì)象的模型不確定時(shí),也可以實(shí)現(xiàn)較好的軌跡跟蹤效果。迭代學(xué)習(xí)控制(Iterative Learning Control,ILC)在處理系統(tǒng)重復(fù)性的跟蹤問(wèn)題時(shí),有著廣泛的運(yùn)用,可實(shí)現(xiàn)有限時(shí)間區(qū)間內(nèi)快速高精度的跟蹤目標(biāo)[7]。大多數(shù)的控制器設(shè)計(jì)都是基于數(shù)學(xué)模型,但現(xiàn)實(shí)中往往存在控制系統(tǒng)建模復(fù)雜或建模準(zhǔn)確度不高的問(wèn)題,而迭代學(xué)習(xí)控制不依賴機(jī)器人系統(tǒng)的精確模型,在給定的時(shí)間區(qū)段利用前面的誤差數(shù)據(jù)更新控制輸入,重復(fù)操作就能良好的跟蹤控制效果。
本文對(duì)于不能準(zhǔn)確建立數(shù)學(xué)模型的下肢輔助運(yùn)動(dòng)裝置系統(tǒng),設(shè)計(jì)一種無(wú)模型自適應(yīng)迭代學(xué)習(xí)控制算法,類似數(shù)據(jù)驅(qū)動(dòng)理論,該算法實(shí)現(xiàn)過(guò)程是根據(jù)無(wú)模型自適應(yīng)方法對(duì)下肢輔助運(yùn)動(dòng)裝置系統(tǒng)的動(dòng)態(tài)性能方程進(jìn)行轉(zhuǎn)換線性化,設(shè)計(jì)控制器結(jié)合最優(yōu)方法并引入“擬偽偏導(dǎo)數(shù)”參數(shù)的估計(jì)值[8],能夠根據(jù)輸出的誤差信息迭代地調(diào)節(jié)系統(tǒng)參數(shù),從而達(dá)到下肢輔助運(yùn)動(dòng)裝置系統(tǒng)排除干擾因素,獲得期望軌跡的目的。
考慮具有n自由度的下肢輔助運(yùn)動(dòng)裝置系統(tǒng),其動(dòng)態(tài)性能可以被描述成如下的二階非線性微分方程形式
(1)
(2)
(3)
(4)
式中:m是一個(gè)正常數(shù)。
Δy(k+1)=Ψ1(k)Δy(k)+Ψ2Δu(k)
(5)
根據(jù)式(5),將式(4)可以改寫成如下動(dòng)態(tài)線性化的形式
Δy(k+1)=Ψ1(k)Δy(k)+Ψ2Δu(k)+y(k)
(6)
式(6)中:Ψ1(k),Ψ2(k)是不斷變化的。
對(duì)于現(xiàn)有的輔助裝置機(jī)器人系統(tǒng)模型,可以從中發(fā)現(xiàn)隱含的輸入與輸出等數(shù)據(jù)信息。輔助裝置機(jī)器人系統(tǒng)模型的復(fù)雜度高,所建立的數(shù)學(xué)模型不能準(zhǔn)確地反映系統(tǒng)的實(shí)際情況,因此充分利用系統(tǒng)已知信息,建立無(wú)模型自適應(yīng)迭代學(xué)習(xí)控制算法具有實(shí)際意義。
引入設(shè)計(jì)準(zhǔn)則函數(shù)
(7)
其中λ是權(quán)重系數(shù),將式(6)帶入式(7)
(8)
將準(zhǔn)則函數(shù)對(duì)u(k)求導(dǎo)
(9)
(10)
式(10)就是無(wú)模型自適應(yīng)迭代學(xué)習(xí)控制算法的學(xué)習(xí)律,為了使模型更具有一般意義,加入步長(zhǎng)因子ρ。
Ψ1(k),Ψ2(k)是動(dòng)態(tài)變化且未知的,需要對(duì)擬偽偏導(dǎo)數(shù)Ψ1(k),Ψ2(k)進(jìn)行在線估計(jì)。建立估計(jì)值1(k),2(k)如下的準(zhǔn)則函數(shù)
J(1(k),2(k))
(11)
其中,μ>0是權(quán)重系數(shù)。準(zhǔn)則函數(shù)(11)對(duì)1(k),2(k)進(jìn)行求導(dǎo),得
1(k-1)Δy(k-1)-2(k-1)Δu(k-1)]
(12)
1(k-1)Δy(k-1)-2(k-1)Δu(k-1)]
(13)
(14)
式中η>0為步長(zhǎng)因子。
1(k)==Ψ1(0),2(k)=Ψ2(0)
(15)
本文以下肢輔助運(yùn)動(dòng)裝置作為仿真對(duì)象。作為人體中較為復(fù)雜的關(guān)節(jié)之一的膝關(guān)節(jié),只考慮膝關(guān)節(jié)的一個(gè)自由度即屈伸運(yùn)動(dòng)。人體的踝關(guān)節(jié)具有三種自由度,即內(nèi)外翻旋轉(zhuǎn)、屈伸以及內(nèi)收外展運(yùn)動(dòng)。為了簡(jiǎn)化下肢輔助運(yùn)動(dòng)裝置無(wú)模型自適應(yīng)迭代學(xué)習(xí)控制算法的設(shè)計(jì),本實(shí)驗(yàn)裝置暫不考慮踝關(guān)節(jié)內(nèi)外翻旋轉(zhuǎn)以及內(nèi)收外展運(yùn)動(dòng)。下肢輔助運(yùn)動(dòng)裝置如圖1。
圖1 下肢輔助運(yùn)動(dòng)裝置實(shí)驗(yàn)實(shí)物
按照本文所設(shè)計(jì)的算法建立下肢輔助裝置的控制系統(tǒng)仿真,迭代學(xué)習(xí)次數(shù)20次,控制效果如圖2、圖3。
圖2 迭代過(guò)程中膝關(guān)節(jié)與踝關(guān)節(jié)軌跡跟蹤對(duì)比曲線
圖3 迭代過(guò)程中誤差最大絕對(duì)值的收斂曲線
圖2給出了迭代20次過(guò)程中踝關(guān)節(jié)與膝關(guān)節(jié)的軌跡跟蹤曲線,從仿真結(jié)果上看,當(dāng)存在誤差τ時(shí),每增加一次迭代學(xué)習(xí)次數(shù),膝關(guān)節(jié)與踝關(guān)節(jié)的實(shí)際跟蹤軌跡在逐步的接近理論軌跡,從圖3迭代過(guò)程中誤差最大絕對(duì)值的收斂曲線上看,在第13次迭代時(shí)就可以較好的實(shí)現(xiàn)對(duì)理論軌跡的跟蹤,并且跟蹤誤差保持較小。
下肢輔助運(yùn)動(dòng)裝置是幫助下肢功能障礙患者獲得正常功能的有效手段,針對(duì)輔助運(yùn)動(dòng)裝置系統(tǒng)建模困難,本文提出了一種無(wú)模型自適應(yīng)迭代學(xué)習(xí)控制算法,將復(fù)雜非線性輔助運(yùn)動(dòng)裝置系統(tǒng)模型線性化,應(yīng)用數(shù)據(jù)驅(qū)動(dòng)的思想,通過(guò)無(wú)模型自適應(yīng)控制理論與迭代學(xué)習(xí)控制算法相結(jié)合,設(shè)計(jì)迭代學(xué)習(xí)控制器。MATLAB仿真結(jié)果顯示,當(dāng)存在干擾的狀況下,該算法通過(guò)多次迭代學(xué)習(xí),可以有效的跟蹤目標(biāo)軌跡,并且減少跟蹤誤差,從而驗(yàn)證了本文提出的算法的有效性。