



摘 要: 研究一種帶柔性關節的單連桿機械臂的跟蹤控制問題,其中體現關節柔性的是連接單連桿機械臂和驅動電機的兩個仿腱線彈簧。利用Lagrange方程導出跟蹤控制問題的數學模型,引進滑模變結構控制技術,給出Hurwitz多項式的確定以及滑模控制器的設計方法,并討論Hurwitz多項式的根對控制效果的影響。將滑模控制器的表示式代入跟蹤控制問題的數學模型中,得到狀態變量的非線性微分方程組,利用Matlab進行仿真,得到了理想的控制輸出效果。
關鍵詞: 單連桿機械臂; 柔性關節; 最優滑模跟蹤控制; 多目標規劃
中圖分類號: TN911?34; TP273 文獻標識碼: A 文章編號: 1004?373X(2016)02?0004?05
Sliding mode variable structure control for flexible joint of single connecting?rod mechanical arm
AN Kai, WANG Feifei
(Shandong Aerospace Electro?technology Institute, Yantai 264003, China)
Abstract: Tracking control problem of a single connecting?rod mechanical arm with flexible joint based on sliding mode variable structure control is studied. The flexibility of the joint is incarnated by two linear springs in a tendon?like fashion. The mathematical model of the tracking control is formulated with Lagrange equations. The technique of sliding mode variable structure control is introduced. The methods to choose the coefficients of Hurwitz polynomial and design the sliding mode controller are given. The effect of the roots of the Hurwitz polynomial on the tracking result is discussed in this paper. The controller expression is introduced into the mathematical model for the tracking control to obtain a set of nonlinear differential equations of status variable. The ideal control output effect was got by simulation with Matlab.
Keywords: single connecting?rod mechanical arm; flexible joint; optimal sliding mode tracking control; multiple objective programming
0 引 言
由于柔性機械臂具有慣量低、能耗低、模態頻率低、質量輕、工作效率高和載荷質量比大等特點,已廣泛應用于航空航天、精密加工、坐標測量等領域。然而,柔性機械臂極易產生彈性振動,末端難以精確定位使其控制器的設計面臨重大挑戰,特別是在路徑生成和跟蹤的情形。通常此類非線性系統控制器的設計方法是首先通過反饋線性化將機械臂動力學方程化為線性方程[1?5],然后利用線性系統的技術設計控制器。但對于柔性機械臂,由于反饋線性化方法在控制器設計過程中不能充分獲取非線性系統的動力學特性,因此跟蹤誤差難以消除。為了設計控制器使機械臂末端精確到達指定位置或跟蹤預定的路徑,許多研究者引進了微分幾何的方法用于對柔性關節的控制。Yim[6],Oh and Lee[7]提出一種基于Backstepping設計的自適應輸出反饋控制器,以解決柔性關節參數不確定問題。Moberg等[8]針對三關節機械臂模型,研究了反饋線性化方法的離散時間實現,對不確定模型的快速跟蹤問題進行了仿真。Lin等[9]以及Spong[10]等人還將反饋線性化和積分流型技術引入非線性系統的控制中。Tomei[11]和Yeon[12]等人分別利用簡單的PD控制和穩健的H∞控制實現了柔性關節的穩健控制。上述控制方法的一個共同的特點是控制器一經確定,在控制過程中不能根據非線性系統的輸出進行適時調整,也不能充分獲取非線性系統的動力學特性,因此必然產生跟蹤誤差。
滑模變結構控制作為一種非線性控制方法,與常規控制方法的根本區別在于控制的不連續性。它利用一種特殊的滑模控制方式,強迫系統的狀態變量沿著人為規定的狀態空間的滑動超平面滑到期望點。當系統狀態穿越滑動超平面時,反饋控制的結構將發生變化,迫使系統狀態變量回到該滑動超平面。因此滑模變結構控制對非線性系統的動力學特性和外在環境擾動等因素具有一定的適應能力,對系統中存在的不確定性具有極強的魯棒性。滑模變結構控制系統的動態過程由到達階段和滑動模態運動階段構成,只要在到達階段保證系統狀態能趨近并進入滑動模態,就可以保證滑動模態運動階段的穩定性。機械臂的關節柔性是影響機械臂動態精確度和穩定性的重要因素。雖然在控制器設計中考慮關節的柔性因素能改善系統的綜合性能指標,但同時也因為受柔性因素影響控制器設計變得更加復雜。本文針對一種單連桿機械臂柔性關節模型,引入滑模變結構控制方法,以增強控制器對關節柔性導致的系統不確定性及外部擾動的自適應性,保證控制系統的全局漸近穩定性。
1 單連桿柔性關節機械臂模型
單連桿柔性關節機械臂模型如圖1所示[13]。單連桿機械臂通過兩個仿腱線性彈簧固連在電機上,以產生關節的柔性。電機固定在機械臂的基座上,基座平面與水平面平行。[θ]表示電機的角位移或連桿偏離豎直方向的角度,[α]表示柔性關節產生的偏差角度,[θ+α]表示連桿的實際角度。
圖1 單連桿柔性關節機械臂模型
由Euler?Lagrange方程,柔性關節機械臂的能量方程為:
[L=K-V]
式中:
[K=Kh+Kl, V=Vg+Vs]
式中:[Kh=12Jhθ2]是輪轂動能;[Kl=12Jl(θ+α)2]是載荷動能;[Vg=mghcos(θ+α)]是重力勢能;[Vs=12Ksα2]是兩個彈簧的彈性勢能。其中[Jh]和[Jl]分別為電機和連桿的轉動慣量,[m]是連桿質量,[h]是連桿質心到關節的距離。[Ks]和[g]分別為彈簧剛度和重力加速度常數。因此Lagrange函數為:
[L=12Jhθ2+12Jl(θ+α)2-mghcos(θ+α)-12Ksα2]
因此:
[ddt(?L?α)=d[Jl(θ+α)]dt=Jl(θ+α)]
[?L?α=mghsin(θ+α)-Ksα]
[ddt(?L?θ)=Jhθ+Jl(θ+α)·?L?θ=mghsin(θ+α)]
代入運動方程:
[ddt(?L?α)-?L?α=0ddt(?L?θ)-?L?θ=τ] (1)
式中,電機的扭矩[τ]是由加在電樞兩端的電壓[u]產生的,它們之間的關系為:
[τ=KmKgRmu-Km2Kg2Rmθ]
由式(1)的前一個方程得:
[Jl(θ+α)=mghsin(θ+α)-Ksα] (2)
由式(1)的后一個方程得:
[Jhθ+Jl(θ+α)-mghsin(θ+α)=τ] (3)
式(2)和式(3)聯立得:
[α=-θ-KsJlα+mghJlsin(θ+α)]
[Jhθ-Ksα=τ]
選擇狀態變量[θθααT=x1x2x3x4T],以[y=h(X)=x1+x3]標識機械臂末端的位置,并令:
[X=x1x2x3x4T]
[g(X)=0KmKgRmJh0-KmKgRmJhT]
[f(X,t)= x2 KsJhx3-Km2Kg2RmJhx2 x4-KsJhx3+Km2Kg2RmJhx2-KsJlx3+mghJlsin(x1+x3)]
則機械臂的運動方程可表示為:
[X=f(X,t)+g(X)uy=h(X)=x1+x3]
2 滑模變結構控制
以[yd]表示理想輸出,則跟蹤誤差為[e=yd-y],定義滑模函數為:
[s(t)=c1e+c2e+c3e+e]
式中[c1],[c2],[c3]是使多項式[λ3+c3λ2+c2λ+c1]為Hurwitz多項式的參數。
選擇Lyapunov函數[V=12s2],則[V=ss],而:
[s(t)=c1e+c2e+c3e+e(4) =c1e+c2e+c3e+y(4)d-y(4)]
而:
[y=x1+x3=x2+x4y=x2+x4=-KsJlx3+mghJlsin(x1+x3)y=-KsJlx3+mghJl(x1+x3)cos(x1+x3) =-KsJlx4+mghJl(x2+x4)cos(x1+x3)y(4)=-KsJlx4+mghJl(x2+x4)cos(x1+x3)- mghJl(x2+x4)2sin(x1+x3) =-KsJl-KsJhx3+Km2Kg2RmJhx2-KsJlx3+ mghJlsin(x1+x3)-KmKgRmJhu+ mghJl-KsJlx3+mghJlsin(x1+x3)cos(x1+x3)- mghJl(x2+x4)2sin(x1+x3)=KsJlx3-mghJlsin(x1+x3)KsJl-mghJlcos(x1+x3)- mghJl(x2+x4)2sin(x1+x3)+ KsJlJhKsx3-Km2Kg2Rmx2+KsJlKmKgRmJhu=H(X)+Du]
其中:
[H(X)=KsJlx3-mghJlsin(x1+x3)KsJl-mghJlcos(x1+x3)- mghJl(x2+x4)2sin(x1+x3)+KsJlJhKsx3-Km2Kg2Rmx2D=KsJlKmKgRmJh]
因此:
[s(t)=c1e+c2e+c3e+y(4)d-H(X)-Du]
令:
[u(t)=1Dc1e+c2e+c3e+y(4)d-H(X)+ηsgn(s)]
其中[η>0],則:
[s(t)=c1e+c2e+c3e+y(4)d-H(X) -c1e+c2e+c3e+y(4)d-H(X)+ηsgn(s) =-ηsgn(s)]
于是:
[V=s-ηsgn(s)=-ηs<0]
因此滑動模態[s(t)=0]是Lyapunov穩定的。
3 滑動模態控制參數的選擇
滑動模態[s(t)=0]的Lyapunov穩定性意味著:
[c1e+c2e+c3e+e→0] (4)
但這并不意味著[e→0]。由于:
[c1e+c2e+c3e+e=0] (5)
的特征方程為:
[λ3+c3λ2+c2λ+c1=0] (6)
根據高階線性微分方程理論,微分式(5)的解可表示為[eλ1t],[eλ2t],[eλ3t],其中[λ1],[λ2],[λ3]是式(6)的根。因此只要[λ1],[λ2],[λ3]的實部均為負數,式(4)就意味著[e→0]。為簡單起見可以選擇式(6)的根均為負數,甚至全部為重根。比如[λ=-λ0]([λ0>0])是式(6)的3重根,則式(6)可表示為:
[λ03+3λ02λ+3λ0λ2+λ3=0]
如下的仿真中,圖2是以[s(t)=e+3e+3e+e]作為滑動模態得到的輸出和理想輸出,特征方程的三重根為[λ=-1];圖3是以[s(t)=8e+12e+6e+e]作為滑動模態得到的輸出和理想輸出,特征方程的三重根為[λ=-2];圖4是以[s(t)=27e+27e+9e+e]作為滑動模態得到的輸出和理想輸出,特征方程的三重根為[λ=-3]。
圖2 軌跡跟蹤([s(t)=e+3e+3e+e])
對比這三幅圖可以發現,隨著特征根絕對值的增大,輸出逼近理想輸出的速度逐步提高,逼近過程中的最大偏差也在逐步縮小。需要指出的是盡管式(6)的根[-λ0]的絕對值越大,與此對應的式(5)中的[e]收斂于0的速度越快,而且如下的仿真結果也說明了這一點,但選擇另外的[η>0]進行的仿真說明,增大特征式(6)的根[-λ0]的絕對值,非線性系統的輸出[y]收斂于理想輸出[yd]的速度不一定加快,逼近過程中的最大偏差也不一定會縮小。
圖3 軌跡跟蹤[s(t)=8e+12e+6e+e]
圖4 軌跡跟蹤[s(t)=27e+27e+9e+e]
在如下的仿真中[η=27],而且通過另外的仿真可以看出,在[s(t)]一定時,從[η=0.4]開始直到[η=27]輸出[y]收斂于理想輸出[yd]的速度逐步加快,逼近過程中的最大偏差也逐步縮小。
盡管不能得出式(6)的根以及[η]與收斂逼近過程中的最大偏差的普遍結論,但上述事實至少可以說明:不能一概通過增大特征根絕對值的方法改善逼近效果;特征根以及[η]的選擇既與輸出逼近理想輸出的速度有關,也與輸出逼近理想輸出的最大偏差有關,特征根以及[η]應視實際問題的側重點作出選擇。
4 仿 真
為計算方便,假定所有參數為1,理想輸出為:
[yd=sinA]
于是:
[H(X)=x3-gsin(x1+x3)1-gcos(x1+x3)- g(x2+x4)2sin(x1+x3)+x3-x2;]
[D=1;y=x1+x3;y=x2+x4;]
[y=x2+x4=-x3+gsin(x1+x3);]
[y=-x4+g(x2+x4)cos(x1+x3);]
[yd=sinAt;yd=AcosAt;yd=-A2sinAt;]
[yd=-A3cosAt;y(4)d=A4sinAt;e=sinAt-x1+x3;]
[e=AcosAt-x2-x4;e=-A2sinAt+x3-gsin(x1+x3);]
[e=-A3cosAt+x4-g(x2+x4)cos(x1+x3);]
[s(t)=c1e+c2e+c3e+e;]
[u(t)=c1e+c2e+c3e+y(4)d-H(X)+ηsgn(s);]
[g(X)=010-1T]
于是在滑模控制之下系統的狀態方程為:
[X= x2 x3-x2+u x4x2-2x3+gsin(x1+x3)-u] (7)
令[A=0.1],按照特征方程
[c1+c2λ+c3λ2+λ3=0]
的3個重根為[-1],[-2]和[-3]分別取
[s(t)=e+3e+3e+e]
[s(t)=8e+12e+6e+e]
[s(t)=27e+27e+9e+e]
構造滑動模態,利用Matlab解微分方程組(7),輸出和理想輸出依次如圖2~圖4所示。圖5是選擇[s(t)=27e+27e+9e+e]時得到的微分方程組(7)的解。
圖5 狀態變量[s(t)=27e+27e+9e+e]
5 結 語
由于特征方程為:
[λ3+c3λ2+c2λ+c1=0]
的根全部為負數是[p3+c3p2+c2p+c1]為Hurwitz多項式的充分條件,因此多項式:
[(λ+λ1)(λ+λ2)(λ+λ3)=λ3+(λ1λ2+λ2λ3+λ1λ3)λ2+ (λ1+λ2+λ3)λ+λ1λ2λ3]
是Hurwitz多項式。其中[λ1],[λ2],[λ3]是任意的三個正數。因此Hurwitz多項式的選擇具有相當大的任意性,可以通過[λ1],[λ2],[λ3]的選擇獲得更好的控制效果,比如收斂速度更快以及[maxte(t)]更小。
利用隨機搜索法[14] 對參數[λ1],[λ2],[λ3]進行隨機搜索顯然可找到更好的解,但運算量特別大。其實,控制器設計過程中,[η>0]的選擇也與控制效果密切相關。[η]過大可以縮短過度時間,使收斂速度加快,但同時也容易導致“過調”, 使[maxte(t)]增大[15]。將這樣的最優滑模跟蹤控制問題轉化成一個多目標規劃問題,從而直接求出4個待定參數[λ1], [λ2], [λ3]和[η]的值,甚至將微分方程組中變量的個數由4推廣到自然數[n],直接求出[η]和[(λ+λ1)(λ+λ2)…(λ+λn-1)=λn-1+(i=1n-1λi)λn-2+…+][k=1n-1λk]中[λ1,λ2,…,λn-1]的值是一個需要進一步研究的問題。
參考文獻
[1] BASCETTA L, ROCCO P. Revising the robust?control design for rigid robot manipulators [J]. IEEE Transactions on Robotics, 2010, 26(1): 180?187.
[2] SONG B, MILLS J, LIU Y, et al. Nonlinear dynamic modeling and control of a small?scale helicopter [J]. International Journal of Control, Automation and Systems, 2010, 8(3): 34?543.
[3] CHWA D. Tracking control of differential?drive wheeled mobile robots using a backstepping?like feedback linearization [J]. IEEE Transactions on Systems, Man and Cybernetics, Part A: Systems and Humans, 2010, 40(6): 1285?1295.
[4] ORIOLO G, LUCA A, VENDITTELLI M. WMR control via dynamic feedback linearization: design, implementation, and experimental validation [J]. IEEE Transactions on Control Systems Technology, 2002, 10(6): 835?852.
[5] HYOCHOONG B, JUNG S L, EUN Y J. Nonlinear attitude control for a rigid spacecraft by feedback linearization [J]. KSME International Journal, 2004, 18 (2): 203?210.
[6] YIM W. Adaptive control of a flexible joint manipulator [C]// Proceedings of IEEE International Robotics Automation. Seoul, Korea: IEEE, 2001: 3441?3446.
[7] OH J H, LEE J S. Control of flexible joint robot system by backstepping design approach [C]// Proceedings of IEEE International Conference on Robotics Automation. [S.l.]: IEEE, 1997: 3435?3440.
[8] MOBERG S, HANSSEN S. On feedback linearization for robust tracking control of flexible joint robots [J]. IFAC Proceedings Volumes (IFAC?PapersOnline); 2008, 17(1): 1?25.
[9] LIN L C, YUAN K. Control of flexible joint robots via external linearization approach [J]. Journal of Robotic Systems, 2007, 1(1): 1?22.
[10] SPONG M W, KHORASANI K, KOKOTOVIC P V. An integra manifold approach to the feedback control of flexible joint robots [J]. IEEE Journal of Robotics and Automation, 1987, 3(4): 291?300.
[11] TOMEI P. A simple PD controller for robots with elastic joints [J]. IEEE Transactions on Automatic Control, 1991, 36(10): 1208?1213.
[12] YEON J S, PARK J H. Practical robust control for flexible joint robot manipulators [C]// Proceedings of IEEE International Conference on Robotic and Automation. Pasadena, CA, USA: IEEE, 2008: 3377?3382.
[13] AHMAD M A, RAMLI M S, RAJA I, et al. The investigations of input shaping with optimal state feedback for vibration control of a flexible joint manipulator [C]// 2009 Conference on Innovative Technologies in Intelligent Systems and Industrial Applications (CITISIA 2009). Sunway Campus, Malaysia: [s.n.], 2009: 446?451.
[14] 安凱,邢進生,邱祖廉.模糊神經網絡的二階段變半徑隨機搜索算法[J].自動化學報,2000,26(5):616?622.
[15] 安凱,馬佳光,傅承毓.由Z傳遞函數確定PID控制器參數[J].光電工程,2001,28(6):7?9.