錢前, 張愛華, 孫藝瑕
(上海工程技術(shù)大學(xué) 機械與汽車工程學(xué)院, 上海 201600)
多關(guān)節(jié)機械臂控制系統(tǒng)是具有強耦合性和復(fù)雜非線性的系統(tǒng),可以克服不確定干擾和建模誤差的影響是設(shè)計控制器要考慮的首要問題,因此非線性魯棒控制算法得到了廣泛應(yīng)用。文獻[1]將負(fù)載質(zhì)量從機器人動力學(xué)方程中分離出來,針對負(fù)載未知時在廣義坐標(biāo)空間和任務(wù)坐標(biāo)空間中的軌跡跟蹤控制問題,研究了擾動有界時的魯棒自適應(yīng)控制。文獻[2]針對系統(tǒng)中存在有界未知負(fù)載等非線性不確定項的影響,通過狀態(tài)方程匹配將魯棒控制問題轉(zhuǎn)換為最優(yōu)控制問題進行求解,得到了控制算法,并驗證了控制器的有效性。以上兩種魯棒控制針對的機械臂控制系統(tǒng)形式要求比較嚴(yán)格,解算過程比較耗時。文獻[3]通過合理選擇與控制目標(biāo)相關(guān)的勢函數(shù),根據(jù)模型中不確定性的實時變化,通過引入可在線可調(diào)參數(shù)得到自適應(yīng)魯棒控制算法,保證了閉環(huán)系統(tǒng)中所有狀態(tài)半全局最終一致有界。文獻[4]針對直流電機驅(qū)動的機器人系統(tǒng),通過Takagi-Sugeno(T-S)模糊模型處理不確定性,設(shè)計神經(jīng)網(wǎng)絡(luò)魯棒自適應(yīng)控制器,節(jié)約在線計算量,有利于實時控制。以上控制算法都是基于采樣周期的時間驅(qū)動控制系統(tǒng),而隨著信息技術(shù)和經(jīng)濟的發(fā)展,除了對機械臂控制系統(tǒng)穩(wěn)定性和魯棒性的要求以外,系統(tǒng)能耗和對通信頻率的要求必須考慮。文獻[5-6]初步研究了降低系統(tǒng)能耗的控制方法,但仍通過傳感器與控制器的周期性采樣執(zhí)行,雖然減少了機器人控制系統(tǒng)的通信頻率,但這些算法可能需要較高的采樣頻率,為此事件驅(qū)動控制方法引起了國內(nèi)外專家學(xué)者們的注意。
事件驅(qū)動控制系統(tǒng)的控制指令只有滿足驅(qū)動條件時才會更新,控制器的執(zhí)行不再具有周期性,是與系統(tǒng)狀態(tài)相關(guān)的。文獻[7-8]提出一種連續(xù)時間控制與事件驅(qū)動控制相結(jié)合的方法,解決了2階非線性系統(tǒng)軌跡跟蹤的問題;文獻[9]采用連續(xù)比例- 積分- 微分(PID)控制與事件驅(qū)動控制相結(jié)合方法解決了機器人軌跡跟蹤問題,但提出算法是基于精確模型的;文獻[10]將狀態(tài)反饋應(yīng)用到事件驅(qū)動控制,但不能完全補償模型的不確定性;文獻[11]將神經(jīng)網(wǎng)絡(luò)滑??刂茟?yīng)用到機器人事件驅(qū)動控制,有效地補償了模型不確定性,但缺少自適應(yīng);文獻[12]提出一種基于事件驅(qū)動的軌跡跟蹤自適應(yīng)算法,解決了當(dāng)機器人控制系統(tǒng)動力學(xué)未知時的軌跡跟蹤問題;文獻[13]將文獻[12]的算法應(yīng)用到全驅(qū)動水面船軌跡跟蹤系統(tǒng),但未考慮到外界干擾;文獻[14]提出一種基于滑??刂频氖录?qū)動控制方法,解決了帶有外部擾動的線性系統(tǒng)中能耗較高問題;文獻[15]針對帶有外部擾動的非線性系統(tǒng)能耗較高問題,提出了一種事件驅(qū)動滑??刂扑惴?;文獻[16]將此算法應(yīng)用到帶有外部擾動的歐拉- 拉格朗日軌跡跟蹤系統(tǒng)中,但滑??刂剖遣贿B續(xù)的,系統(tǒng)的穩(wěn)定性需要犧牲切換面的帶寬。
鑒于自適應(yīng)魯棒控制處理非線性系統(tǒng)穩(wěn)定性和魯棒性問題的良好表現(xiàn),本文針對帶有不確定干擾和建模誤差的多關(guān)節(jié)機械臂跟蹤控制系統(tǒng),提出事件驅(qū)動自適應(yīng)魯棒軌跡跟蹤控制器,來解決高精度多關(guān)節(jié)機械臂跟蹤系統(tǒng)在跟蹤過程中高能耗、通信頻率要求較高的問題,設(shè)計魯棒控制算法補償不確定干擾和未知模型動態(tài)干擾,自適應(yīng)地調(diào)節(jié)系統(tǒng)參數(shù),并通過Lyapunov穩(wěn)定性理論獲得驅(qū)動條件,保證系統(tǒng)的穩(wěn)定性以及系統(tǒng)中無Zeno現(xiàn)象發(fā)生,最后通過仿真驗證控制器的有效性。
考慮外界擾動和建模誤差的影響,建立多關(guān)節(jié)機械臂跟蹤控制系統(tǒng)數(shù)學(xué)模型[17]如下:
(1)
多關(guān)節(jié)機械臂軌跡的跟蹤控制目標(biāo)如下:
(2)
式中:e為系統(tǒng)位置跟蹤誤差;qd為給定的期望軌跡。
由于外界干擾通常是有界的,對于多關(guān)節(jié)機械臂跟蹤控制系統(tǒng),本文做出如下合理假設(shè):
定義系統(tǒng)位置跟蹤誤差為
e=q-qd,
(3)
并令
(4)
為多關(guān)節(jié)機械臂軌跡跟蹤誤差系統(tǒng),其中u表示控制器的輸出,從而可以將數(shù)學(xué)模型(1)式改寫成如下系統(tǒng)模型:
(5)
定義θ(t)=[θ1(t)θ2(t)]T為可調(diào)自適應(yīng)參數(shù),設(shè)計多關(guān)節(jié)機械臂跟蹤控制器:
(6)
并選擇如下自適應(yīng)律:
(7)
緊集Ω0為
(8)
緊集Ωe為
(9)
式中:η1、η2、t0、T為正常數(shù)。
為了方便證明,本文給出如下引理:
引理1[18]令Ω為任意的閉凸集,則有(v-PΩ(v))T(PΩ(v)-w)≥0,v∈Rl,w∈Ω,其中PΩ(v)為Rl→Ω上的投影算子,v、w為實矩陣,l為維度。
證明定義∈R2為常值向量,選擇Lyapunov候選函數(shù):
(10)
式中:V0、V1分別為
(11)
(12)
(13)
(14)
式中:
(15)
對(10)式中的V1(θ(t))求微分,可得
(16)
式中:
r(θ)=ψ(θ-β1F(θ))-θ.
(17)
令v=θ-β1F(θ),w=,根據(jù)引理1,有
(r(θ)+θ-)T(-r(θ)-β1F(θ))≥0.
(18)
整理(18)式,可得
(19)
將(19)式代入(16)式,得
(20)
由于
(21)
將(4)式代入(21)式,有
(22)
對(22)式取反饋控制律u,有
(23)
將(23)式代入(22)式,有
(24)
進而得到
(25)
針對(15)式給出的c(θ1(t),v),定義如下定理:
(26)
式中:λ1、λ2分別為
(27)
c(θ1(t),v)≤0,t≥t0+T.
(28)
(29)
通過適當(dāng)選擇設(shè)計參數(shù)η1、η2,可使系統(tǒng)達到規(guī)定跟蹤精度;又根據(jù)假設(shè)2,參考信號qd有界,則閉環(huán)系統(tǒng)狀態(tài)q必定有界。證畢。
定義控制力矩τ為
τ=τ(η),
(30)
定義ti{i=0,1,2,…}為由驅(qū)動狀態(tài)決定的事件驅(qū)動控制器的時間序列,則事件驅(qū)動控制力矩為
τ=τ(η(ti)).
(31)
魯棒自適應(yīng)控制器與事件驅(qū)動控制器的測量誤差為
(32)
式中:
(33)
針對事件驅(qū)動多關(guān)節(jié)機械臂控制系統(tǒng)給出如下假設(shè):
(34)
根據(jù)(32)式、(33)式,可得事件驅(qū)動控制器:
(35)
將(35)式代入(22)式,有
(36)
(37)
于是,對于?γ∈Ω1, ?η1,η2∈Ωe,有
(38)
(39)
進而對于t∈[ti,ti+1)得到時間驅(qū)動控制器為
(40)
(41)
將(30)式代入(41)式,可得
(42)
根據(jù)(37)式與定理1可得
(43)
式中:P1=‖sup (-θ1(M-1)T-C)‖;P2=‖max {M-1P1,1}‖;P3=max {P2,1,L}.
(44)
根據(jù)(43)式、(44)式與假設(shè)3,可得
(45)
(46)
考慮(40)式與(46)式可知T0存在,并且形式為
(47)
根據(jù)(47)式可知T0的下界大于0,因此該系統(tǒng)中沒有Zeno現(xiàn)象發(fā)生。
本文使用文獻[20]中給出的3關(guān)節(jié)機械臂作為仿真對象,機械臂結(jié)構(gòu)與相關(guān)參數(shù)如圖1所示,相關(guān)參數(shù)如表1所示。圖1中:I1、I2、I3分別為關(guān)節(jié)1、關(guān)節(jié)2、關(guān)節(jié)3的轉(zhuǎn)動慣量,l2、l3分別為關(guān)節(jié)2、關(guān)節(jié)3連桿長度,m2、m3分別為關(guān)節(jié)2、關(guān)節(jié)3連桿質(zhì)量,r2、r3分別為關(guān)節(jié)2、關(guān)節(jié)3連桿質(zhì)心到轉(zhuǎn)動關(guān)節(jié)的距離,q1、q2、q3分別為關(guān)節(jié)1、關(guān)節(jié)2、關(guān)節(jié)3的位置。
圖1 3關(guān)節(jié)機械臂結(jié)構(gòu)圖Fig.1 Three-links multi-joint manipulator
參數(shù)數(shù)值參數(shù)數(shù)值參數(shù)數(shù)值I1/(kg·m2)3.61l2/m1r2/m0.6I2/(kg·m2)2.35m2/kg30r3/m0.5I3/(kg·m2)1.95m3/kg26g/(m·s-2)9.8
注:g為重力加速度。
慣性矩陣M(q)為
M(q)中各個元素具體表達式如下:
m11=I1+a1cos2q2+a2cos2(q2+q3)+
2a3cosq2cos (q2+q3),
m22=I2+a1+a2+2a3cosq3,
m33=I3+a2,m32=m23=a2+a3cosq3,
系統(tǒng)初始狀態(tài)為
摩擦力為
其中μ1=5 N·m,μ2=5 N·m,μ3=5 N·m.
外部干擾為d1=0.1sint,d2=0.1cos (0.5t),d3=0.1sin (t/3),魯棒自適應(yīng)參數(shù)為β1=5,β2=5,β3=2,α=2,事件驅(qū)動控制參數(shù)為σ=0.8,ε=0.5.
設(shè)定仿真時間100 s,仿真步長為0.01 s,仿真結(jié)果如圖2~圖5所示。
圖2 機械臂3個關(guān)節(jié)的跟蹤效果圖Fig.2 Tracking results of three joints
圖3 機械臂3個關(guān)節(jié)跟蹤誤差變化Fig.3 Tracking errors of three joints
圖4 機械臂3個關(guān)節(jié)控制力矩變化Fig.4 Control torques of three joints
圖5 控制器觸發(fā)情況圖Fig.5 Change of inter-update time of controller
為驗證本文所提出的事件驅(qū)動自適應(yīng)魯棒控制方法的有效性與控制效果,仿真時與無事件驅(qū)動的自適應(yīng)魯棒跟蹤控制方法進行對比,即與參數(shù)σ=0,ε=0的仿真結(jié)果進行對比。圖2為事件驅(qū)動自適應(yīng)魯棒控制與無事件驅(qū)動的軌跡跟蹤效果對比圖,圖3為兩種控制方法的跟蹤誤差變化曲線。從圖2和圖3可看出:兩種方法都能夠完成軌跡跟蹤,無事件驅(qū)動時跟蹤效果較好、跟蹤精度高,說明所提出的自適應(yīng)魯棒控制跟蹤效果良好,且對干擾變化不敏感;事件驅(qū)動的控制方法也能夠較好地完成跟蹤控制,但因其無需頻繁的發(fā)送控制指令驅(qū)動執(zhí)行機構(gòu),而使得其控制效果稍遜于無事件驅(qū)動跟蹤控制,控制力矩指令如圖4所示。
圖4為有無事件驅(qū)動兩種情況下機械臂3個關(guān)節(jié)的控制力矩指令變化圖。從圖4中可看出:系統(tǒng)在有事件驅(qū)動策略時的關(guān)節(jié)1力矩在0~20 s的變化浮動相比無事件驅(qū)動策略時更接近0;關(guān)節(jié)2與關(guān)節(jié)3的力矩在有事件驅(qū)動策略時變化相對更加平穩(wěn),可以在保證控制效果的情況下有效減少能量損耗。圖5為有無事件驅(qū)動策略時控制觸發(fā)時間間隔變化圖,從中可看出有事件驅(qū)動策略時的驅(qū)動間隔大于0且明顯大于無事件驅(qū)動策略的驅(qū)動間隔,即無Zeno現(xiàn)象發(fā)生。對應(yīng)圖4可以看出,系統(tǒng)在觸發(fā)間隔內(nèi)控制力矩保持不變,說明了事件驅(qū)動控制的執(zhí)行不再具有周期性,可以有效降低系統(tǒng)的通信頻率。
為解決存在不確定干擾和建模誤差的多關(guān)節(jié)機械臂軌跡跟蹤問題,本文提出了一種事件驅(qū)動自適應(yīng)魯棒控制器。根據(jù)Lyapunov穩(wěn)定性理論設(shè)計了驅(qū)動條件,證明了無Zeno現(xiàn)象,并通過一個典型3關(guān)節(jié)機械臂進行了仿真驗證。仿真結(jié)果可以看出,所提出的自適應(yīng)魯棒控制具有良好的跟蹤效果,有效解決了系統(tǒng)高能耗和通信頻率較大的問題。具體結(jié)論為:1)該控制器可以通過自適應(yīng)策略調(diào)節(jié)參數(shù),從而保證系統(tǒng)軌跡跟蹤精度,所提出的控制算法保證了事件驅(qū)動多關(guān)節(jié)機械臂跟蹤控制系統(tǒng)狀態(tài)半全局最終一致有界;2)結(jié)合事件驅(qū)動策略所得到的事件驅(qū)動控制系統(tǒng)在保證跟蹤效果的同時,有效降低了系統(tǒng)通信頻率,減少能源消耗,系統(tǒng)不存在Zeno現(xiàn)象;3)仿真中發(fā)現(xiàn)驅(qū)動參數(shù)σ和ε越大,需要的通信頻率就越低,指令更新頻率越低,但是過低的指令更新頻率會導(dǎo)致大的跟蹤誤差,從而導(dǎo)致頻繁地觸發(fā)驅(qū)動函數(shù),為此設(shè)計控制算法來完成驅(qū)動參數(shù)的自適應(yīng)調(diào)節(jié)是下一步的研究工作。