崔雅博, 羅清元
(1. 開封大學 信息工程學院, 河南 開封 475004; 2. 河南省水文水資源局 站網監測處, 鄭州 450031)
現代控制理論的不斷進步及控制方法多樣化使得多關節機械手廣泛應用于國民經濟的各個領域,如生產線的裝配機械臂、農業生產中的水果采摘機械手和智能機器人手臂等,在惡劣的工業生產環境中,多關節機械手已經取代人工操作,成為工業生產中必不可少的組成部分[1-3].由于多關節機械手系統存在各種不確定性和各關節間的非線性耦合,使得傳統基于精確數學模型而設計的機械手控制器應用受限[4-5].
目前,國內外應用于不確定系統較為先進的控制策略主要有自適應控制、魯棒控制、神經網絡控制和迭代學習控制等.唐慶順等[6]設計了一種自適應的二階終端滑模控制器,通過實時修正控制參數來適應受控對象和外部干擾動態改變,使系統始終保持在最優或次優狀態.但該方法對于含非參數不確定性因素的系統難以保證穩定性.劉益標等[7]引入了徑向基函數神經網絡算法跟蹤雙關節機械臂的運動軌跡,表現出了非線性逼近映射特性,對于處理控制系統中各種不確定性和非線性問題具有顯著的優勢.但是該方法對系統模型的精度要求較高,在實際應用中存在一定的局限性.考慮到模糊控制系統不依賴于系統模型的精確度,且能夠有效抑制控制系統抖振特性,提出一種基于自適應模糊反演算法的雙關節機械手控制系統.首先將復雜系統分解成若干簡單系統,然后通過在虛擬控制中引入模糊系統,在不需要建立系統數學模型的情況下,實現了對雙關節機械手系統自適應模糊反演控制,不僅保證了系統控制的穩定性,還有效提升了動態跟蹤精度.
反演控制算法通過引入靜態補償,將復雜的非線性系統分解為若干低階次的簡單子系統,然后分別對每個子系統設計相應的控制律,再組合子系統控制律完成對整個系統的設計[8-9].自適應反演控制算法已被用于解決各種高低速飛行器和無人機系統的姿態控制,解決復雜系統中的各種不確定性和非線性問題.Vaidyanathan等[10]將自適應反演控制用于處理復雜的混沌動力學系統,獲得了表現出色的控制器.此外,反演控制算法還被普遍用于對輸入量化不確定非線性系統、未知時滯不確定非線性系統、未知負載及外部干擾懸浮系統和未知結構參數及驅動故障系統,通過對反演控制算法中間虛擬控制量的設計,可衍生出具有不同特性的反演控制算法.如采用微分阻尼虛擬控制量的反演控制可有效提高系統的動態性能,而采用切換函數虛擬控制量的反演控制則具有與滑模控制算法相似的優點[11-12].這些研究成果均表明反演算法對于不確定非線性系統控制具有非常理想的可行性及高效性.
雙關節機械手在精確數學建模的過程中存在諸多不確定性:1)參數不確定性,包括各個結構部件質量和尺寸等物理參數的未知或部分已知;2)非參數不確定性,包括高頻或低頻未建模動態等;3)由工作環境引入的干擾、驅動器飽和、采樣時滯及關節耦合等問題.這些諸多不確定性或非線性因素都會導致機械手控制系統發生質的改變,嚴重時甚至可能造成控制系統喪失穩定性.在虛擬控制中引入模糊系統,可演化為無需精確數學模型的自適應模糊反演控制,能夠有效提高上述雙關節機械手系統的控制精度.
在建模過程中對某些不確定性因素進行了合理的忽略,以達到簡化機器人數學模型的目的.雙關節剛性機械手結構簡圖如圖1所示.

圖1 雙關節機械手結構簡圖Fig.1 Structural sketch of two-joint manipulator
圖1中,m1和m2為機械手兩個關節的質量;l1和l2為兩個關節的長度;θ1和θ2為這兩個關節的轉動角度;g為重力加速度.動態性能可由二階非線性微分方程描述為
M(x1)x3+C(x1,x2)x2+G(x1)+F(x2)+d=τ
(1)
式中:x1=[θ1,θ2]為機器人的關節角位移量;x2和x3分別為機械手的角速度和角加速度;M(x1)為雙關節機械手的慣性矩陣;C(x1,x2)為哥氏力;G(x1)為重力項;F(x2)為摩擦力矩;τ為控制力矩;d為外加擾動[13].一般來說,需要將雙關節機械手系統參數假設為未知但有界的參數,并且該系統還應具有以下性質:1)慣性矩陣M(x1)為正定對稱矩陣,且M(x1)有界;2)慣性矩陣


τ=[τ1,τ2]T.
反演控制算法通過逐步遞推,利用后一個子系統來虛擬控制前一個子系統,最終使整個系統趨于正定穩定,特別適合于設計不確定非線性系統的控制器.通過與李雅普諾夫型自適應模糊規律的結合運用,可使整個被控系統獲得所需的動靜態性能指標[14].針對本文的雙關節機械手系統,利用反演控制的基本思想將其分解為兩個子系統,再分別為每一個子系統設計李雅普諾夫函數和中間虛擬控制項,最后來完成整個系統控制律的設計.
設x0為雙關節機械手系統理想的輸出轉角,且x0具有二階導數,則系統的跟蹤誤差可定義為e1=x1-x0.同理,定義速度誤差e2=x2-α1,若選擇合適的虛擬控制量α1讓e2趨于0,則有
(4)
根據式(4),中間虛擬控制項可表示為
(5)

(6)
(7)


(8)

(9)
考慮到式(9)中的f包含雙關節機械手系統的建模信息,因此,需要采用模糊系統逼近f以實現無需模型信息的反演控制.
若定義φ為用于逼近非線性函數f的模糊系統,則可運用單值模糊化或重心平均反模糊化等方法對其進行模糊處理[17].設模糊系統由N個模糊規則組成,第i個規則表示為


(10)

關于f的模糊逼近,利用分別逼近f(1)和f(2)的形式,則模糊系統可設計為
(11)
(12)

(13)
式中,γ和κ為控制系數,且γ>0.
在雙關節機械手動力學建模基礎上,針對動力學模型設計了反演控制器,通過對機械手的反演控制使其能夠在工業生產現場操作中實現精確的位移軌跡跟蹤.為了驗證設計的反演自適應模糊控制器的性能,對雙關節機械手連桿1和連桿2的位置跟蹤軌跡及跟蹤誤差進行仿真實驗.
雙關節機械手系統的參數選取:m1=m2=1.0,l1=l2=0.5;雙關節機械手系統的初始狀態設定為x(0)=[1,0]T,系統輸出的理想軌跡為y=sin(2πt),采用高斯函數作為控制器的隸屬度函數,數學定義可表示為

(14)
式中:均值cj分別選為-1.5、0和1.5;方差σj取為0.5.獲得的控制器隸屬度函數如圖2所示.

圖2 模糊系統隸屬度函數Fig.2 Membership function of fuzzy system
為了對設計的自適應模糊反演控制器進行模擬仿真,將控制器的控制系數分別設為:λ1=8,λ2=12,γ=1.5,κ=2.5和λ1=2,λ2=2.5,γ=1.5,κ=2.5.為了更好地與實際情況進行匹配,同時也能對控制系統的有效性進行驗證,系統設定外部干擾d=[0.25sint,0.25cost]為隨機干擾量;采樣周期取Ts=0.005 s.利用MATLAB Simulink模塊仿真得到雙關節機械手連桿1和連桿2的位置跟蹤軌跡及跟蹤誤差的仿真結果如圖3~4所示.
由圖3~4的仿真結果可知,設計的控制器能夠保證雙關節機械手的兩個連桿都具有較高的跟蹤精度,其跟蹤誤差均小于0.87%,完全能夠滿足該控制器的設計性能要求.在連桿初始運動階段,存在較大的跟蹤誤差,但當機械手處于穩定運動階段后其連桿的運動軌跡與預期理想軌跡基本重合,從而很好地驗證了自適應模糊反演算法對于雙關節機械手控制的有效性和可行性.此外,通過對連桿1和連桿2跟蹤誤差的對比分析可知,連桿2在穩定狀態的最大跟蹤誤差要小于連桿1的跟蹤誤差.

圖3 連桿1位置跟蹤軌跡及跟蹤誤差Fig.3 Location tracking trajectory and tracking error of connecting rod 1

圖4 連桿2位置跟蹤軌跡及跟蹤誤差Fig.4 Location tracking trajectory and tracking error of connecting rod 2
綜上所述,將設計的自適應模糊反演算法用于雙關節機械手的跟蹤控制,無需對被控對象建立精確數學模型,可以消除非線性系統中不確定性因素的影響,最終實現對機械手的高精度跟蹤控制.
由于雙關節機械手系統中的不確定性和非線性,使其精確數學模型難以獲得.本文提出了自適應模糊反演控制算法,設計了高精度反演控制器,并對兩個關節的動態軌跡進行跟蹤,通過Simulink對建立的模型和控制算法進行了仿真分析.結果表明:提出的自適應模糊反演控制算法能夠在很大程度上提高雙關節機械手位置軌跡跟蹤的暫態性能,且其對應的跟蹤誤差均小于0.87%,保證了位置跟蹤控制過程的穩定性及準確性.自適應模糊反演控制能夠保證控制精度,同時簡化了建模過程以及控制參數選擇問題,從而使本文提出的自適應模糊反演控制應用領域更加廣闊.