歐勁松, 李 蓉, 尹 輝, 王華建
(湖南大學 機械與運載工程學院, 長沙 410082)
隨著科技的不斷發展,機械臂被廣泛應用于醫療、工業、民生、服務等領域.機械臂主要包含剛性機械臂、柔性關節機械臂和柔性臂桿機械臂[1-3].相比于剛性機械臂,柔性機械臂具有能耗低、質量輕、傳動平緩、靈活方便等優點[4-5].然而,柔性機械臂采用的諧波減速器與皮帶等柔性關節,使柔性關節機械臂的動力學分析比剛性機械臂復雜得多,這對運動控制的穩定性和準確性有極大的影響.柔性關節的引進使得系統的控制輸入小于系統的自由度,因此柔性關節機械臂系統是一個非線性、欠驅動、強耦合的系統,容易產生跟蹤誤差,導致較長的收斂時間、較大的超調量,甚至機械損壞[6].
奇異攝動法首次應用于線性時不變系統的經典穩定性分析是由Klimushev于20世紀60年代通過“快慢分解” 思想得到的,即如果慢、快子系統是穩定的,則攝動參數必存在一個穩定上界,在此范圍之內,奇異攝動系統是穩定的.非線性奇異攝動系統的穩定性分析則是基于Lyapunov函數的方法.針對快、慢系統分別建立Lyapunov函數,將兩系統Lyapunov函數相加作為原系統的Lyapunov函數,以保證原系統的漸進收斂[7].1987年,Spong[8]提出了機器人柔性關節的簡化模型,并基于奇異攝動理論和積分流,將柔性關節機器人分解成快、慢兩個子系統.隨后諸多學者基于奇異攝動法提出了不同的解決方案:洪昭斌、陳力[9]基于奇異攝動法的魯棒跟蹤控制和柔性振動主動控制,提出了對空間柔性臂進行控制;劉華山等[10]利用奇異攝動理論將柔性關節機器人動力學模型解耦成快、慢兩個子系統,引入一類平滑飽和函數和徑向基函數神經網絡非線性逼近手段,根據反步策略設計了針對慢子系統的有界控制器.在快子系統的有界控制器設計中,通過關節彈性力矩跟蹤誤差的濾波處理加速了系統的收斂.
基于U-K(Udwadia-Kalaba)方程的約束跟隨方法,該方法不需要借助Lagrange乘子和偽廣義速度等輔助變量,可以同時處理完整約束和非完整約束.Kalaba和Udwadia等[11-15]利用Gauss最小約束原理將描述系統受約束運動的Lagrange方程重新定義為一個二次規劃問題,給出了這個約束二次極小化問題的顯式解析解,從而得到了一個描述受Pfaffian約束的離散機械系統約束運動的精確顯式方程組;將Lagrange力學擴展到允許約束力對虛位移系統做功的情況,總結了約束力做功的U-K方程,并應用于多體系統的建模和控制,較好地解決了不確定多體動力學系統的控制問題.Chen等[16-17]首次將U-K方程拓展至全驅動的機械系統控制中,使其滿足一系列的完整或非完整約束,并首次提出了基于U-K方程的狀態反饋約束跟隨控制方法.該方法的思路是將一系列的系統控制目標設計成完整約束和非完整約束等一些需要滿足的等式方程,因此其控制任務即為驅動系統滿足這些約束方程.相較于其他控制方法, 該方法不需要對非線性系統進行線性化,且可在不出現任何輔助變量(如Lagrange乘子)或偽變量(如廣義速度)的情況下得到系統狀態反饋控制律的顯式方程[18].近年來,基于U-K方法的控制研究得到了一定的發展.Yin等[19]進一步將約束控制跟隨方法拓展至欠驅動系統,實現了欠驅動二輪式機器人的控制.韓江等[20-21]基于U-K方法實現了平面冗余并聯機器人的建模與帶有不確定性的軌跡跟蹤控制.Zhao等[22]將該方法引入柔性關節機械臂,建立了柔性關節機械臂的動力學模型.Han等[23]基于反步法并結合U-K方法提出了一種柔性關節機械臂的魯棒控制方法.
在上述研究的基礎上,針對當前柔性關節機械臂存在的柔性振蕩與約束跟隨問題,本文提出了一種新的針對柔性關節機械臂的控制方法.首先基于奇異攝動法將系統降階為快、慢兩個子系統.針對快、慢兩個子系統,將運動軌跡設計成相應的完整約束或非完整約束,基于U-K方程的約束跟隨方法設計控制器.本文對所提出的方法基于MATLAB進行動力學仿真,仿真結果驗證了該方法的可行性,并與傳統PID控制方法相比,驗證了在處理柔性關節機械臂的柔性振蕩與約束跟隨時,其具有一定的優越性.
Spong[8]首次提出了柔性關節的簡化彈簧阻尼模型:
(1)
(2)
以圖1所示的二連桿柔性關節機械臂為例,假設連桿的質量均勻分布,連桿的結構標準對稱.結合剛性二連桿機械臂的動力學方程和柔性關節的簡化彈簧阻尼模型,即可得到動力學方程:

圖1 二連桿柔性關節機械臂
(3)
(4)

(5)
其中
(6)
mi(i=1,2)是連桿1,2的質量,li(i=1,2)是連桿1,2的長度,lci(i=1,2)是連桿1,2長度的一半,Ii(i=1,2)是連桿1,2相對于連桿中心的轉動慣量.
奇異攝動法可以將一個高階系統的求解降階為兩個低階系統,然后分別求解,這就降低了求解系統的階次,大大減小了計算量.針對二連桿柔性關節機械臂選取連桿轉角q2和關節彈性力矩誤差ef作為慢變量和快變量.奇異攝動法的基本假設如下:在快變量的暫態過程中慢變量保持常量,當慢變量變化比較明顯時,快變量的暫態過程就已經結束并達到穩態值.使用奇異攝動法可以把二連桿柔性關節機械臂系統分解成慢系統、快系統.當慢系統和快系統都收斂于系統控制要求時,則有整體系統滿足控制要求.具體分解過程如下:
令μ=1/k,其中k是K(關節剛性矩陣)的最小值.令K=μ-1Kμ,
e=K(q1-q2)=μ-1Kμ(q1-q2).
(7)
把式(7)代入式(3)、(4),可得
(8)
(9)
令μ=0,可得
(10)
把式(10)代入式(3),可得到慢系統表達式:
(11)
(12)
(13)
由式(12)減去式(13)可得
(14)
(15)
所以可以得到快、慢子系統分別為
(16)
(17)
其中us是慢系統中連桿輸入的力矩,uf是快系統中連桿輸入的力矩,實際系統輸入力矩u=us+uf.
一般動力學方程如下:
(18)
約束表達如下:
(19)
由式(19),對t求導有
(20)
整理式(20)可得
(21)
式(19)、(21)寫成矩陣的形式可以表達為
(22)
(23)
b=[b1,b2,…,bm]T,c=[c1,c2,…,cm]T.
定義1 在矩陣A和b確定的情況下,約束(22)至少存在一個解,則稱約束(22)是一致的.
假設1 約束(22)是一致的.
不論是完整約束還是非完整約束,都可以用式(23)表達,還包括控制目標(軌跡跟蹤、系統鎮定和最優控制等)都可以先設計成相應的約束(23), 再通過求導轉換成約束(22)的形式[14].在初始條件滿足方程(23)的情況下,控制律滿足式(22)就可以保證對約束(23)的跟蹤.
引理1 約束(22)一致的充要條件是AA+b=b,A+是A的Moore-Penrose廣義逆矩陣.
對給定的系統(18),對于給定約束(22),初始條件滿足式(23)的條件下,控制律的求解過程如下:設

式(18)可以改寫為
(24)
令Φ1=AM-1/2,式(22)可改寫為
(25)
定義2 如果給定矩陣Φ1和b,約束(25)存在至少一個解,則稱約束(25)一致.
因為約束(25)是約束(22)的改寫式,所以只要假設1滿足,那么必然約束(25)是一致的.

式(24)需要滿足式(25),有
(26)
令Φ2=M-1/2B可得

(27)

(28)
(29)
在解決一些實際問題的時候,大部分情況都是初始狀態不滿足約束.基于U-K方法提出一種初始狀態不滿足約束的控制方法.
令u=τs+τn,代入式(18)可得到
(30)

(AM-1B)τs=C1z.
(31)
假設2 式(31)是一致的.
因為假設2中式(31)一致,因此根據引理1會有(AM-1B)(AM-1B)+(C1z)=C1z.
令τs=C1(AM-1B)+z,C1<0,式(30)可改寫為
(32)
式(32)對于每一個維度,都可以看作齊次一階微分方程.其解為
zi=C0eC1t,i≤m.
(33)
代入t=0的初始條件zi(0)=C0可以得到
(34)
其中|C1|越大,收斂速率越快.
綜上得到控制律
u=τn+τs.
(35)
定理1 滿足假設1、2的情況下,對于系統(18),控制律(35)可以得到以下的控制表現:
1)一致穩定性 對于任意ε>0,當存在‖z(t0)‖<ε,t∈[t0,∞],會有‖z(t)‖<ε.
2)收斂性 當t→∞時,z(t∞)=0.
證明選取Lyapunov函數式:
V=zTz.
(36)
V(z)當且僅當z=0時為0.當z≠0時,V(z)>0,所以V(z)正定,滿足Lyapunov函數的要求.
(37)
2zT(AM-B(AM-B)+(C1z))=2C1‖z‖2.
(38)

二連桿柔性關節機械臂是一個欠驅動、非線性的動力學方程.借助奇異攝動法把二連桿柔性關節機械臂動力學方程降階為兩個全驅動模型.慢系統表達了二連桿柔性關節機械臂的運動約束.快系統表達了柔性關節對運動過程中擾動的影響.所以系統的控制目標分為兩個部分:① 慢系統控制律滿足約束方程,實現包括位置、速度、軌跡控制等宏觀上的控制目標.② 快系統控制律使力矩跟蹤誤差快速收斂到0,減小柔性對系統的影響.
控制器的設計目標是使系統對控制約束進行跟蹤.慢系統主要負責二連桿柔性關節機械臂的約束跟蹤,快系統負責抑制關節柔性帶來的振動與誤差.由式(16)、(17)可以得到控制目標的數學表達式:
(39)
ef=0.
(40)
因此,控制目標是被控系統的慢子系統,滿足約束方程(39),快子系統滿足約束方程(40).
慢系統的控制律設計, 不論是完整約束還是非完整約束, 或者是其他的軌跡約束、優化控制等, 都可以寫成式(23)的形式.式(23)對時間t求導后, 得到約束(22), 然后根據式(29)、(31)得到控制律.具體過程如下:
慢系統動力學方程為
(41)
約束可以表達為式(22)、(23)形式,如下:
(42)
控制律可以設計為
(43)
快系統的控制律設計,快系統的目標是讓式(17)的變量ef快速收斂到零.快系統的動力學表達為
(44)
約束可以表達為
(45)

采用控制律
(46)
整體控制流程如圖2所示.其中控制系統采集的輸入變量,慢系統需要參數為連桿1和連桿2的角度和角速度,采用角度傳感器,常見有光電、Hall、機械幾類.角速度可以采用角度的微分或者現有的角速度傳感器進行測量;快系統需要參數為柔性關節傳遞的力矩大小與扭矩的變化速度,可以采用扭矩傳感器,常見有接觸式和非接觸式的,其原理都是測量傳感器的變形量來計算扭矩,扭矩的變化速度可以對扭矩進行微分得到,扭矩傳感器的采樣率要在較高的頻率下.其余一些靜態的變量都可以采用常用的方法測量,例如連桿1和連桿2的質量、轉動慣量、長度,柔性關節的轉動慣量,柔性關節的彈性系數.

圖2 控制律設計流程
本節通過MATLAB數值模擬的方法,驗證了基于奇異攝動的柔性關節機械臂約束跟隨控制的可行性.當然,柔性關節機械臂建模中所包含的動力學參數,如關節彈性系數、關節轉動慣量、連桿長度、連桿質量、連桿質心位置和連桿相對質心的轉動慣量等都是已知的.具體數據如表1所示.

表1 二連桿柔性機械臂參數

(47)
一般會要求機械臂做轉角的角度控制與機械臂末端執行器的軌跡控制.本小節以三個示例進行驗證.第一個示例是對機械臂角度的準確控制.慢系統約束如下:
(48)
qd為期望角度.
代入式(28)得
rank(Φ1Φ2)=rank(AM-1B)=rank(A(D+J)-1B)=2>1.
(49)
設計k=5,C1=-20,代入式(43)可得慢系統控制律:
(50)
快系統約束為
(51)
由式(28)可得
rank(Φ1Φ2)=rank(AM-1B)=rank(A(J)-1KμB)=2>1.
(52)
設計k=10,C1=-100,代入式(46)可得快系統控制律:
(53)
最后根據奇異攝動理論結合式(50)、(53)得到控制律:
u=us+uf,
(54)


圖3 轉桿1的角度軌跡q(2) 圖4 轉桿2的角度軌跡q(4)
控制律設計為
考慮力的輸出大小,兩種控制方式的控制力都限定在1 000 N·m以內.
對機械臂的連桿角速度進行控制.慢系統約束為
(55)

(56)

由圖5、圖6可證明該方法對柔性關節所產生的振蕩有很好的抑制作用,并且在PID有很大的跟蹤誤差的情況下,該方法的跟蹤誤差僅為1×10-4rad·s-1.

圖5 轉桿1的角速度 圖6 轉桿2的角速度
在使用機械臂的場景中會經常對機械臂的末端執行器的軌跡提出要求.本例中使用橢圓軌跡進行仿真驗證.橢圓軌跡可以寫成
(57)
慢系統約束可以寫成
(58)
按照圖2進行控制率設計,設計k=5,C1=-20,可以得到控制律:
(59)
uf和式(53)中的控制律相同.
相比于傳統PID控制方法,圖7驗證了該方法對二連桿柔性機械臂的末端執行器控制具有更小的軌跡跟蹤誤差.圖8是具體的末端位置誤差隨著時間變化的曲線.從圖中可以明顯看出,本文提出的控制方法在x,y位置的跟蹤精度上都優于傳統PID控制方法.

圖7 末端軌跡 圖8 末端軌跡位置誤差
由圖9、圖10可知,輸出力矩在開始階段都達到了輸出力矩的最大值.本文提出的方法相對傳統PID控制方法輸出力矩穩定時間更短,且穩定之后輸出力矩大小基本一致,只存在小幅度的波動.

圖9 柔性關節1輸出力矩u1 圖10 柔性關節2輸出力矩u2
圖11闡述了橢圓軌跡在加載控制律2 s后的位置誤差和慢系統控制律設計參數k,C1的關系.可見,隨著參數C1的不斷加大,收斂速度越來越快.當C1約束越大,收斂越快,這和式(34)中的結果保持一致.

圖11 參數與誤差關系
二連桿柔性關節機械臂系統是欠驅動系統和柔性系統,傳統PID控制方法會產生振蕩和較大的跟蹤誤差.為解決這類柔性控制的問題,本文提出了結合奇異攝動法和U-K方法的控制策略,將系統拆分為慢系統、快系統兩個全驅動系統.慢系統解決了系統的約束跟隨問題,快系統解決了系統的振蕩與誤差過大的問題,本文提出的控制方法不需要對非線性系統進行線性化,可以直接得到控制律的顯式方程.通過Lyapunov穩定性證明和MATLAB數值仿真驗證的方式,驗證了該方法的穩定性與對柔性系統控制的有效性.同時對比了傳統PID控制方法,仿真結果顯示所提出方法具有更好的控制精度.未來我們將開展所提出方法的控制參數優化研究和建模時參數不確定性的魯棒控制方法研究.