郜冬林,裴以建,朱久德,許文慧,劉云凱
(云南大學(xué) 信息學(xué)院,云南 昆明 650500)
近年來,機(jī)器人的研究快速發(fā)展,輪式機(jī)器人在社會生活中應(yīng)用的越來越廣泛,如家庭服務(wù)、安保巡邏、無人快遞等. 非完整系統(tǒng)的控制問題因具有理論挑戰(zhàn)性和廣泛的使用性吸引了大批研究者.在文獻(xiàn)[1]中,作者通過設(shè)計自適應(yīng)控制器來實現(xiàn)非完整輪式機(jī)器人的軌跡跟蹤. Wang等[2]通過基于測量的方法控制非完整移動機(jī)器人的避障.Zhang和Chu等[3-4]設(shè)計了可使非完整系統(tǒng)固定時間穩(wěn)定的控制律. 輪式機(jī)器人作為典型的非完整系統(tǒng),其軌跡跟蹤問題是吸引眾多研究者的熱點方向. Luan等[5]提出的軌跡跟蹤算法可應(yīng)用于存在隨機(jī)網(wǎng)絡(luò)時延情況下的軌跡跟蹤控制. 存在多領(lǐng)導(dǎo)的情況時,Jin等[6]提出的算法可使二階多智能體系統(tǒng)存在擾動時實現(xiàn)軌跡跟蹤,Hu等[7]設(shè)計的自適應(yīng)控制器可實現(xiàn)在有向通信拓?fù)湎碌能壽E跟蹤.
文獻(xiàn)[8]提出的控制律可使誤差漸近穩(wěn)定,即當(dāng)時間趨向于無窮時,誤差收斂到零,因為誤差收斂時間過長,所以很難應(yīng)用到實際中. 文獻(xiàn)[9]提出的控制律可使誤差在有限時間內(nèi)收斂到零,誤差的收斂時間與其初始值有關(guān),當(dāng)初始值很大時,該控制律效果很差. 文獻(xiàn)[4]提出的控制律使得誤差系統(tǒng)成為固定時間穩(wěn)定的系統(tǒng),文中只能給出誤差收斂時間的上界,無法給出確切的誤差收斂時間,在對誤差收斂時間有嚴(yán)格要求的應(yīng)用中,使用該控制律無法得到很好的效果.
得益于有限時間控制技術(shù)的快速發(fā)展[10],一些預(yù)定時間控制方法被提了出來. 文獻(xiàn)[11]的控制方法可以較為方便地計算出誤差的收斂時間,但是計算出的理論收斂時間遠(yuǎn)大于誤差的實際收斂時間. 文獻(xiàn)[12]給出的方法雖然可以得到精確的收斂時間,但是該控制方法只能應(yīng)用于二階鏈?zhǔn)较到y(tǒng),不能應(yīng)用到受非完整約束的系統(tǒng). 本文利用預(yù)定時間控制技術(shù),結(jié)合輪式移動機(jī)器人的運(yùn)動學(xué)特性,提出了可使受到非完整約束的輪式移動機(jī)器人與參考信號之間的跟蹤誤差在預(yù)定時間收斂的控制律,彌補(bǔ)了上述文獻(xiàn)中所提控制律的不足,并利用Matlab仿真驗證了本文提出控制律的有效性.
圖 1 非完整輪式機(jī)器人Fig. 1 Nonholonomic wheeled mobile robot
受非完整約束的輪式移動機(jī)器人模型如圖1所示,機(jī)器人的中心位于連接兩后輪的車軸的中心,前輪位于垂直于后軸且相交于后軸中點的直線上.機(jī)器人在全局坐標(biāo)系中的坐標(biāo)為P= [x,y,θ]T,(x,y)為機(jī)器人中心在全局坐標(biāo)系中的坐標(biāo),θ為機(jī)器人前進(jìn)方向與X軸之間的夾角.
機(jī)器人的運(yùn)動學(xué)模型可由下列微分方程描述:
其中,v、ω分別為機(jī)器人的線速度和角速度.
機(jī)器人受到的非完整約束的條件為y˙cosθ?x˙sinθ=0,即車輪與水平地面之間只有純滾動,無滑動.
定義 1:全局有限時間穩(wěn)定[13]非線性系統(tǒng)
x∈Rn是系統(tǒng)的狀態(tài), φ ∈Rp是系統(tǒng)的參數(shù),f:R≥0×Rn→Rn為非線性函數(shù),使得f(t, 0;φ)=0,即x=0為系統(tǒng)(2)的平衡點,t0∈ R≥0為系統(tǒng)的初始時刻,×指集合的笛卡爾積. 如果系統(tǒng)(2)的原點為全局漸近穩(wěn)定且系統(tǒng)(2)的任意一個解x(t,t0,x0) 都在有限時間內(nèi)收斂到原點,即當(dāng)t≥t0+T(t0,x0),x(t,t0,x0)=0,T:R≥0×R →R≥0為穩(wěn)定時間函數(shù),則稱系統(tǒng)(2)為全局有限時間穩(wěn)定的系統(tǒng).
定義2:固定時間穩(wěn)定[13]如果系統(tǒng)(2)的原點是全局有限時間穩(wěn)定的,且穩(wěn)定時間函數(shù)是有界的,即 ?x0∈Rn,t0∈R≥0,?Tmax>0, 使得T(t0,x0)≤Tmax,稱系統(tǒng)(2)為固定時間穩(wěn)定的系統(tǒng).
定義3:預(yù)定時間穩(wěn)定[14]如果系統(tǒng)(2)是固定時間穩(wěn)定的系統(tǒng),系統(tǒng)的穩(wěn)定時間Tp和系統(tǒng)參數(shù)及初始條件無關(guān)且可由用戶提前設(shè)定,則系統(tǒng)(2)稱之為預(yù)定時間穩(wěn)定的系統(tǒng). 機(jī)器人預(yù)定時間軌跡跟蹤問題即設(shè)計合適的控制律u= [v,ω]T,使得機(jī)器人在預(yù)先設(shè)定好的時間T跟蹤上由參考位姿Pr=[xr,yr,θr]T和參考輸入ur= [vr,ωr]T所描述的模型的軌跡,參考軌跡與機(jī)器人運(yùn)動軌跡如圖2所示.
圖 2 參考姿態(tài)與機(jī)器人姿態(tài)Fig. 2 Reference posture and robot posture
定義跟蹤誤差為Xe=xr?x,Ye=yr?y, θe= θr?θ. 對跟蹤誤差進(jìn)行坐標(biāo)變換[15]:
對(3)式求導(dǎo)可得到誤差系統(tǒng)模型為
可將誤差系統(tǒng)看作是由一個二階子系統(tǒng)(4)、(5)和一階子系統(tǒng)(6)構(gòu)成.
引理 1[14]對非線性系統(tǒng)(2),令D? Rn為一個包含平衡點x= 0 的定義域. ψ1(x) 和 ψ2(x) 為定義在D上的兩個連續(xù)正定函數(shù). 如若存在一個連續(xù)可微的實值函數(shù)V:I×D→R≥0,I=[t0,tf) 為有限時間區(qū)間,其中,t0為初始時刻,tf為收斂時刻,存在η≥ 1,使得
則系統(tǒng)的平衡點x=0是預(yù)定時間穩(wěn)定的平衡點,且收斂時間T=tf?t0.
假設(shè) 1機(jī)器人可以完全獲得參考信號的速度和角速度信號,且參考輸入的角速度 ωr≠ 0.
假設(shè) 2參考信號的輸入滿足C2,C3≤ |ωr|≤C4.C1,C2,C3,C4均為大于零的已知常數(shù).
由跟蹤誤差模型,可將機(jī)器人對軌跡的跟蹤控制分兩步設(shè)計:
第1步:設(shè)計機(jī)器人的角速度輸入,使角度誤差系統(tǒng)的狀態(tài) θe在t=tθ時收斂到零. 根據(jù)(6)式,tθ為角度誤差收斂時刻,設(shè)計 ω 的控制律為
其中, α1≥ 1,tθ=t0+Tθ,Tθ為用戶根據(jù)需求所設(shè)定的角度誤差的收斂時間.
第2步:當(dāng)t≥tθ時,此時 ω = ωr,θe=0,帶入系統(tǒng)(4)、(5)可得
此時僅需考慮設(shè)計速度v即可. 設(shè)計v的控制律為
其中, φ (ye,t)= α2(eye?1)/[ωreye(tf?t)], α2≥1, α3≥1,tf=tθ+Tf,tf為位置誤差收斂時間Tf為 預(yù)定的位置誤差收斂時間.
定理 1在假設(shè)1和假設(shè)2條件下,角度誤差系統(tǒng)(6)在控制律(7)的作用下,將在預(yù)定時間tθ到達(dá)0,并在t>tθ后,機(jī)器人與參考信號之間的角度始終一致.
證明將(7)式代入(6)式可得
即證明在t=tθ時, θe=0, 選擇Lyapunov函數(shù):證明完畢.
定理 2在假設(shè)1和假設(shè)2的條件下,應(yīng)用控制律(10)可使機(jī)器人與參考信號之間的位置誤差在預(yù)定時間tf到達(dá)0,且在t≥tf后,機(jī)器人與參考信號之間的位置始終一致.
證明利用反步法設(shè)計v[16]. 首先將xe看作(9)的輸入,設(shè)計xe使得ye預(yù)設(shè)時間穩(wěn)定. 令xe=并取Lyapunov函數(shù)V2(ye)=ye2,與證明定理1類似,可知ye將在預(yù)先給定的時間tf穩(wěn)定到原點.
對(8)式設(shè)計v時,可先使xe穩(wěn)定到原點,再追蹤參考信號. 當(dāng)tθ≤t<tf時,令v=v1?v2,v1=vr+ωrye,帶入(8)式可得
應(yīng)用變量替換z=xe?φ(ye,t),帶入(8)、(9)式可得誤差系統(tǒng)新表達(dá)式為
圖 5 機(jī)器人運(yùn)動軌跡Fig. 5 The trajectory of robot
在Matlab中對本文提出的控制律進(jìn)行驗證,取 α1=α2=α3=2,ωr=(t+1)/(t+2),vr=3+sint,角 度 誤 差 θe的 穩(wěn) 定 時 間 為Tθ=2 s,位置誤差(xe,ye) 的穩(wěn)定時間Tf= 2 s,初始時間t0= 0,誤差初始值 θe(0 )=2,xe(Tθ)=5,ye(Tθ)=2. 誤差變化曲線分別如圖3、圖4所示. 機(jī)器人在平面上的運(yùn)動軌跡如圖5所示.
圖 3 角度誤差變化曲線Fig. 3 The curve of angle error
圖 4 跟蹤誤差變化曲線Fig. 4 The curve of tracking error
由圖3可看出在t= 2 s時,機(jī)器人和參考信號之間的角度誤差收斂到零;在t> 2 s后,機(jī)器人和參考信號之間的角度誤差始終為零. 角度誤差收斂后,機(jī)器人開始追蹤參考信號的軌跡,機(jī)器人位置與參考信號位置之間的誤差變化曲線如圖4所示,在t=Tθ+Tf=4 s時,軌跡誤差收斂到零并在此之后始終保持為零. 由于位置誤差系統(tǒng)為二階系統(tǒng)且其必須在預(yù)定時間收斂到零,所以位置誤差的收斂曲線不像角度誤差一樣由初始值直接收斂到零,會有一個超調(diào)量,但是超調(diào)部分遠(yuǎn)小于誤差系統(tǒng)初始值,不會造成系統(tǒng)發(fā)散. 在角度誤差和位置誤差都收斂后,機(jī)器人的角速度和線速度也將與參考信號保持一致,由圖5可看出,當(dāng)機(jī)器人追蹤上參考信號之后,機(jī)器人與參考信號的軌跡將始終重合,說明控制律(7)、(10)是有效的.
本文通過應(yīng)用預(yù)定時間收斂的控制方法,針對具有非完整約束的移動機(jī)器人設(shè)計了角速度和線速度的控制律,使得機(jī)器人在跟蹤角速度不為零的目標(biāo)時,跟蹤誤差的精確收斂時間可以根據(jù)實際情況提前設(shè)定. 現(xiàn)有的軌跡跟蹤控制方法中,只能計算出誤差收斂時間的上界,不能得到精確的誤差收斂時間,本文提出的控制律可以直接提前設(shè)定收斂時間,因此提出的控制律相較于已有的控制律,可應(yīng)用范圍更廣,仿真結(jié)果證明了該方法的有效性.在實際生活中,編隊追蹤的應(yīng)用更加廣泛,下一步會將預(yù)定時間軌跡跟蹤控制方法結(jié)合多智能體控制,研究多機(jī)器人編隊的預(yù)定時間軌跡跟蹤.