陳 濤,朱華中,劉安東,滕 游
(浙江工業(yè)大學(xué) 信息工程學(xué)院,杭州 310023)
隨著科技的快速發(fā)展,機械臂作為機器人技術(shù)研究領(lǐng)域最普遍應(yīng)用的自動化裝置,已經(jīng)被廣泛應(yīng)用于工業(yè)制造、康復(fù)醫(yī)療、軍事活動和航空航天等領(lǐng)域[1-4].然而,由于機械臂的物理器件限制和人的安全性問題,必須將機械臂的操作空間約束在一定范圍內(nèi)以保證系統(tǒng)安全穩(wěn)定運行[5].此外,機械臂是一種具有非線性、強耦合的時變多輸入多輸出系統(tǒng),這將導(dǎo)致難以獲取精確的動力學(xué)參數(shù)[6].而在高精度拋光和打磨等應(yīng)用領(lǐng)域,需要機械臂具有更高的精確性和更穩(wěn)定的控制性能.因此,研究機械臂的輸出約束和動力學(xué)參數(shù)不確定性問題具有重要意義.
許多專家學(xué)者針對機械臂約束問題提出了一些控制方法,如模型預(yù)測控制[7]、模糊控制[8]、不變集控制[9]和變結(jié)構(gòu)控制[10]等.與上述方法不同,近年來提出的基于障礙李雅普諾夫函數(shù)的約束控制方法可以滿足約束條件,且無需求出系統(tǒng)的顯式解,因此計算量較低,尤其是針對高階非線性系統(tǒng).文獻[11]利用傳統(tǒng)的對數(shù)型障礙李雅普諾夫函數(shù)設(shè)計控制器實現(xiàn)了全狀態(tài)約束下的機械臂軌跡跟蹤控制.文獻[12]通過構(gòu)造積分障礙李雅普諾夫函數(shù)來解決由于機械臂的輸出約束問題.文獻[13]提出一種tan型障礙李雅普諾夫函數(shù),當(dāng)系統(tǒng)無約束時,可以簡單地用二次型函數(shù)的形式代替tan型障礙李雅普諾夫函數(shù),拓寬了傳統(tǒng)對數(shù)型障礙李雅普諾夫函數(shù)的適用范圍.然而,盡管上述方法在處理約束問題時具有一定的控制效果,但它們中的大多數(shù)考慮的是常值約束邊界.在實際應(yīng)用中,機械臂的約束條件可能是時變的,若系統(tǒng)的初始誤差較大,常值約束邊界難以保證系統(tǒng)的控制性能.針對系統(tǒng)初始誤差較大的問題,文獻[14]針對柔性機械臂構(gòu)建了一種時變障礙李雅普諾夫函數(shù),但其考慮的是單自由度機械臂,具有一定的局限性.
為了實現(xiàn)機械臂系統(tǒng)軌跡跟蹤控制的快速性、精確性與穩(wěn)定性,國內(nèi)外許多學(xué)者進行了大量的研究工作.在研究的早期階段,基于系統(tǒng)的位置跟蹤誤差采用PID進行調(diào)節(jié),這種控制方法結(jié)構(gòu)簡單,在實際工程應(yīng)用中也較容易實現(xiàn),但是PID控制直接應(yīng)用機械臂控制中往往控制精度較低,穩(wěn)態(tài)誤差較大.為了保證機械臂系統(tǒng)精確、穩(wěn)定地運行,提高系統(tǒng)的魯棒性,專家學(xué)者提出了更有效的控制方法,如魯棒控制[15]、滑??刂芠16]和自適應(yīng)控制[17]等.文獻[18]將魯棒控制和PID控制相結(jié)合設(shè)計了魯棒PID控制器實現(xiàn)對機械臂的軌跡跟蹤控制.文獻[19]提出了一種魯棒滑模控制方法,提高了系統(tǒng)的魯棒性,改善了系統(tǒng)的控制性能.文獻[20]提出了一種基于自適應(yīng)神經(jīng)網(wǎng)絡(luò)的輸出反饋控制方法解決不確定機械臂系統(tǒng)的軌跡跟蹤問題.文獻[21]針對不確定MIMO非線性系統(tǒng)設(shè)計了自適應(yīng)神經(jīng)網(wǎng)絡(luò)跟蹤控制器.為了解決系統(tǒng)模型參數(shù)的不確定性帶來的問題,將徑向基神經(jīng)網(wǎng)絡(luò)應(yīng)用到控制器設(shè)計中,神經(jīng)網(wǎng)絡(luò)能在一定條件下有效逼近各種非線性函數(shù),且對系統(tǒng)信息的要求較少,因此可以準確估計未知模型,讓系統(tǒng)達到預(yù)期的控制效果.
基于以上討論,本文針對具有輸出約束和動力學(xué)模型未知的機械臂系統(tǒng),提出了一種基于時變tan型障礙李雅普諾夫函數(shù)的自適應(yīng)控制方法.通過設(shè)置時變約束邊界將系統(tǒng)誤差約束在一個指數(shù)衰減的時變邊界內(nèi),使系統(tǒng)在初始誤差較大時仍能滿足約束條件,同時也能夠滿足約束與無約束的情況,拓展了傳統(tǒng)對數(shù)型障礙李雅普諾夫函數(shù)的適用范圍,提高了系統(tǒng)的瞬態(tài)性能和穩(wěn)態(tài)性能.此外,利用RBFNN擬合系統(tǒng)未知動力學(xué)參數(shù),設(shè)計了基于RBFNN的自適應(yīng)控制器實現(xiàn)機械臂軌跡跟蹤控制,有效地保證了閉環(huán)系統(tǒng)的性能,進一步提高系統(tǒng)的魯棒性.
考慮一個n自由度的機械臂系統(tǒng),其動力學(xué)方程如公式(1)所示:
(1)
性質(zhì)1[22].M(q)是正定對稱矩陣.
(2)
另一方面,考慮機械臂的物理器件限制和人的安全性問題,必須對機械臂的操作空間進行一定的約束,使系統(tǒng)的輸出滿足:
|x1i|≤kci,?t>0,i=1,2,…,n
(3)
其中,kc表示系統(tǒng)的輸出約束向量.
針對系統(tǒng)約束問題,目前常用的解決方法有構(gòu)造對數(shù)型障礙李雅普諾夫函數(shù)[11]和tan型障礙李雅普諾夫函數(shù)[13].分別表示如下:
(4)
(5)
雖然以上兩種障礙李雅普諾夫函數(shù)對處理約束問題具有一定的效果,但它們都只將系統(tǒng)誤差約束在一個常值邊界內(nèi).在一些控制精度要求較高的場景下,需要將常值約束邊界設(shè)置為較小值,在系統(tǒng)的初始誤差較大時,系統(tǒng)誤差往往會超出設(shè)置的常值約束邊界,難以保證系統(tǒng)的瞬態(tài)性能和穩(wěn)態(tài)性能.因此,針對n自由度的機械臂系統(tǒng),構(gòu)建如下的時變tan型障礙李雅普諾夫函數(shù):
(6)
其中,F(t)為時變約束邊界,定義為:
Fi(t)=(F0i-F∞i)e-at+F∞i,i=1,2,…,n
(7)
其中,F0為F(t)的初始值,F∞為t→∞時F(t)的穩(wěn)態(tài)值,a>0表示收斂速度,初始誤差值z1(0)滿足|z1(0)| 本文的目的是針對帶有輸出約束和模型不確定的機械臂系統(tǒng)(2),采用RBFNN方法,設(shè)計一個基于時變tan型障礙李雅普諾夫函數(shù)(6)的自適應(yīng)控制器,保證系統(tǒng)在初始誤差較大時仍能滿足約束條件,實現(xiàn)期望的軌跡跟蹤. 在本節(jié)中,針對帶有輸出約束和動力學(xué)模型參數(shù)未知的機械臂系統(tǒng),本文的控制目標是使系統(tǒng)的關(guān)節(jié)位置狀態(tài)量能夠跟蹤期望關(guān)節(jié)位置,且關(guān)節(jié)速度狀態(tài)量也能跟蹤期望關(guān)節(jié)速度,最終保證系統(tǒng)狀態(tài)量一致有界,且滿足輸出約束. 對于n自由度的機械臂系統(tǒng),定義跟蹤誤差為: z1=x1-qd (8) z2=x2-α (9) 其中,α為虛擬控制量,定義為: (10) 其中,系統(tǒng)的控制增益K1=diag(k1i)>0,i=1,2,…,n.F(t)=kc(t)-qd為時變約束邊界,kc(t)表示系統(tǒng)的輸出約束向量. 將式(8)和式(9)對時間求導(dǎo)可得: (11) (12) 定理1.假設(shè)系統(tǒng)的初始狀態(tài)是有界的,針對誤差系統(tǒng)(11)、(12)和虛擬控制量(10),如果存在如下控制器: (13) 則該閉環(huán)系統(tǒng)是漸近穩(wěn)定的,且系統(tǒng)的位置誤差量滿足?t>0,-F≤z1≤F.其中,K2為系統(tǒng)的控制增益. 證明:為了驗證本文所設(shè)計控制器(13)的有效性,定義Lyapunov函數(shù)V1為: (14) 將V1對時間求導(dǎo),代入式(11)并根據(jù)性質(zhì)2,可得: (15) 將式(10)代入式(15),可得: (16) 由矩陣的Moore-Penrose廣義逆矩陣的性質(zhì),可得: (17) 當(dāng)z2=[0,0,…,0]T時,可得: (18) (19) 證畢. 在實際應(yīng)用中,人們往往無法獲得機械臂具體的動力學(xué)模型參數(shù),因此,基于模型的控制器具有局限性.為了解決這個問題,利用RBFNN來擬合系統(tǒng)里的未知信息,設(shè)計神經(jīng)網(wǎng)絡(luò)的自適應(yīng)更新率為: (20) (21) 定理2.假設(shè)系統(tǒng)的初始狀態(tài)是有界的,針對誤差系統(tǒng)(11)、(12)和自適應(yīng)率(20),如果存在如下基于RBFNN的控制器: (22) (23) (24) (25) 證明:為了驗證本文所設(shè)計控制器(22)的有效性,定義Lyapunov函數(shù)V2為: (26) 將V2對時間求導(dǎo),可得: (27) 將式(20)、式(21)和式(22)代入式(27),可得 (28) 根據(jù)不等式的關(guān)系,可知: (29) (30) 將式(29)和式(30)代入式(28)可得: (31) 其中, (32) 其中,λmin(A)和λmax(A)分別表示矩陣A的最小特征值和最大特征值.為了保證ρ>0,控制增益K1和K3分別滿足λmin(K1)>0和λmin(K3-(1/2)I)>0. 證畢. 在本節(jié)中,為驗證本文提出方法的有效性,本文以一個二自由度的機械臂作為仿真對象進行分析如圖1所示.為了驗證所設(shè)計控制器的可行性與優(yōu)越性,本文將其與傳統(tǒng)的PD控制進行對比. 圖1 二自由度機械臂Fig.1 2-DOF robot manipulator 二自由度機械臂的動力學(xué)參數(shù)表達式為: (33) (34) (35) 其中, C22=0 G11=(m1lc2+m2l1)gcosq1+m2lc2gcos(q1+q2) G21=m2lc2cos(q1+q2) 二自由度機械臂的連桿參數(shù)如下:m1=2.0kg,m2=0.8kg,l1=0.50m,l2=0.50m,lc1=0.25m,lc2=0.25m,I1=0.0625kgm2,I2=0.0538kgm2.其中,m表示連桿的質(zhì)量,l表示連桿的長度,lc表示連桿的質(zhì)心到前一個關(guān)節(jié)的距離,I表示連桿的慣性矩. 機械臂初始關(guān)節(jié)角位置設(shè)置為x1=[0.48rad,0.35rad],初始關(guān)節(jié)角速度設(shè)置為x2=[0rad/s,0rad/s],設(shè)置期望的關(guān)節(jié)軌跡為: 考慮如下的 PD 控制器: 其中PD控制的控制增益設(shè)置為Kp=diag[120,120],Kd=diag[5,5]. 仿真結(jié)果如圖2~圖4所示,其中圖2為關(guān)節(jié)角位置跟蹤曲線,可以看出,雖然關(guān)節(jié)2軌跡跟蹤性能較好,穩(wěn)態(tài)誤差能夠較快收斂到0,但是關(guān)節(jié)1的軌跡跟蹤性能較差,機械臂在運行過程中跟蹤誤差始終無法收斂到0.關(guān)節(jié)角速度跟蹤曲線如圖3所示,可以看出,在初始關(guān)節(jié)角位置誤差較大時,機械臂在0s~1s內(nèi)的關(guān)節(jié)角速度的振蕩較大,說明機械臂關(guān)節(jié)的抖動較大,系統(tǒng)的瞬態(tài)性能較差.圖4為PD控制下的關(guān)節(jié)控制輸入,可以看出,在設(shè)置的周期性軌跡跟蹤過程中,控制輸入也呈現(xiàn)一定的周期性變化. 圖2 關(guān)節(jié)角位置跟蹤曲線(PD控制)Fig.2 Angular position tracking curve of joints(PD control) 圖3 關(guān)節(jié)角速度跟蹤曲線(PD控制)Fig.3 Angular velocity tracking curve of joints(PD control) 圖4 控制輸入(PD控制)Fig.4 Control input(PD control) 為了驗證本文提出方法的有效性,本文將兩個關(guān)節(jié)的時變位置誤差約束參數(shù)均設(shè)為F(t)=(1-0.05)e-2t+0.05,設(shè)置系統(tǒng)的控制增益為K1=diag[1.5,1.5],K3=diag[20,20],選擇神經(jīng)網(wǎng)絡(luò)徑向基函數(shù)的中心點在[-1,1],神經(jīng)網(wǎng)絡(luò)的初始權(quán)重為0,節(jié)點數(shù)為128,Γ1和Γ2設(shè)置為80,σi設(shè)置為0.001. 仿真結(jié)果如圖5~圖9所示,其中圖5和圖6分別為關(guān)節(jié)1和關(guān)節(jié)2的角位置跟蹤曲線和曲線誤差,可以看出, 在本文提出的方法下,關(guān)節(jié)1和關(guān)節(jié)2的關(guān)節(jié)角位置誤差均在約2.5s后收斂到0,且系統(tǒng)的關(guān)節(jié)角位置誤差不違反設(shè)置的時變輸出約束邊界[-F(t),F(t)].關(guān)節(jié)角速度跟蹤曲線如圖7所示,可以看出,在0s~0.2s輕微的抖動后,關(guān)節(jié)1和關(guān)節(jié)2在不到3s的時間內(nèi)可以跟蹤上期望的關(guān)節(jié)角速度,且系統(tǒng)的瞬態(tài)性能較好.如圖8所示,RBFNN的估計誤差在0.4s內(nèi)收斂于0.圖9為本文所提方法下的關(guān)節(jié)控制輸入,可以看出,控制輸入在0s~0.4s有一定的振蕩,這是由于RBFNN的估計誤差還未收斂到0,在本文設(shè)置的周期性期望軌跡跟蹤過程中,控制輸入始終是有界的,并且呈現(xiàn)周期性變化. 圖5 關(guān)節(jié)1位置跟蹤曲線及誤差曲線(本文的方法)Fig.5 Angular position tracking curve and error curve of joint 1(our method) 圖6 關(guān)節(jié)2位置跟蹤曲線及誤差曲線(本文的方法)Fig.6 Angular position tracking curve and error curve of joint 2(our method) 圖7 關(guān)節(jié)角速度跟蹤曲線(本文的方法)Fig.7 Angular velocity tracking curve of joints(our method) 圖8 RBFNN擬合誤差(本文的方法)Fig.8 Approximation error of RBFNN(our method) 圖9 控制輸入(本文的方法)Fig.9 Control input(our method) 綜上,由PD控制和基于時變tan型障礙李雅普諾夫函數(shù)自適應(yīng)控制的仿真結(jié)果可以看出,相較于PD控制,本文提出的方法在關(guān)節(jié)角位置跟蹤性能中有更好的效果,且關(guān)節(jié)角速度具有更好的瞬態(tài)性能,實現(xiàn)了機械臂系統(tǒng)對期望軌跡的快速穩(wěn)定準確的跟蹤. 針對機械臂輸出約束和模型未知的問題,本文提出了一種基于時變tan型障礙李雅普諾夫函數(shù)的自適應(yīng)控制方法,通過構(gòu)造時變tan型障礙李雅普諾夫函數(shù),將系統(tǒng)誤差約束在一個指數(shù)衰減的時變約束邊界內(nèi),提高了系統(tǒng)的瞬態(tài)性能和穩(wěn)態(tài)性能.此外,通過RBFNN擬合未知的動力學(xué)模型參數(shù),在不違反輸出約束的情況下提高了系統(tǒng)的魯棒性.最后,通過二自由度機械臂的軌跡跟蹤仿真分析,驗證了本文所提出方法與傳統(tǒng)的PD控制方法相比具有一定的可行性與優(yōu)越性.3 控制器設(shè)計與分析
4 仿真及分析
4.1 基于PD控制的方法
4.2 本文的方法
5 結(jié) 論