李正平,鮮 斌
(天津大學(xué)電氣自動化與信息工程學(xué)院,天津 300072)
無人機(unmanned aerial vehicle,UAV)憑借其成本低、機動性強以及無需人為干預(yù)的特點,在軍事和民用等多個領(lǐng)域得到了廣泛的應(yīng)用.但是隨著任務(wù)的復(fù)雜度和難度不斷提高,單架無人機已經(jīng)很難達到預(yù)期的目標(biāo),于是國內(nèi)外的研究人員開始研究多無人機協(xié)同執(zhí)行任務(wù)的能力[1–4].
編隊隊形控制是多無人機系統(tǒng)研究的核心問題.無人機在執(zhí)行任務(wù)時需要保持一定的隊形,或者需要在特定的時間進行隊形的切換和重構(gòu),這依賴于可靠的編隊控制策略.領(lǐng)航–跟隨法(Leader-Follower)是一種較為傳統(tǒng)的編隊控制方法,其思想是將編隊中的一架無人機作為領(lǐng)航機,其余無人機以一定的相對距離跟蹤領(lǐng)航機的軌跡,從而達到保持隊形的目的.美國賓夕法尼亞大學(xué)的研究團隊針對該方法進行了很多研究.文獻[5]在給定領(lǐng)航機飛行軌跡的條件下,設(shè)計無人機需要保持的隊形,跟隨機根據(jù)本地和鄰機的信息規(guī)劃各自的參考軌跡,間接地獲取了領(lǐng)航機的狀態(tài),實驗中借助Vicon定位系統(tǒng)實現(xiàn)了室內(nèi)緊密編隊飛行.該團隊還在沒有機間信息交流的條件下,僅依靠無人機搭載的視覺傳感器提供的相對定位信息,結(jié)合領(lǐng)航–跟隨法,實現(xiàn)了室內(nèi)和室外的無全球定位系統(tǒng)(global positioning system,GPS)編隊飛行[6–7].為了克服領(lǐng)航–跟隨法對領(lǐng)航機的依賴,斯坦福大學(xué)多機器人系統(tǒng)實驗室(multi-robot systems lab)的研究人員對虛擬結(jié)構(gòu)法(virtual structure)在四旋翼無人機靈活編隊飛行上的應(yīng)用展開了相關(guān)的研究.文獻[8]針對多無人機系統(tǒng)建立虛擬剛體模型,通過遙控手柄實時給出整個編隊的飛行軌跡,各無人機再根據(jù)事先設(shè)計的隊形庫,完成隊形的保持和幾種隊形之間的切換.該文獻的創(chuàng)新之處在于其實現(xiàn)了實時的人機交互,并在虛擬剛體坐標(biāo)系下研究了無人機的隊形變換和避障問題[9].
以上方法通常采用集中式的通信交互策略,對于中心節(jié)點的通信和計算壓力較大,且整個系統(tǒng)的容錯和魯棒性不強.近些年來,利用一致性理論和分布式的通信策略解決多無人機編隊控制問題成為該領(lǐng)域的熱點.文獻[10]將多無人機系統(tǒng)簡化為雙積分二階模型,利用一致性理論解決了多無人機的時變編隊問題,實際飛行實驗中各無人機通過和鄰近無人機的信息交互,實現(xiàn)了對預(yù)定的時變參考隊形的跟蹤.文獻[11]考慮領(lǐng)航機和跟隨機同時存在不確定性和擾動的情況,設(shè)計了多變量模型參考自適應(yīng)控制算法,實現(xiàn)了多無人機的一致性編隊飛行,并通過仿真驗證了所提方法的有效性.
無人機系統(tǒng)結(jié)構(gòu)復(fù)雜,難以精確建模,并且容易受環(huán)境未知擾動的影響.相比傳統(tǒng)的線性控制方法,非線性控制方法在處理不確定性和未知擾動時更有優(yōu)勢,其在無人機位置和姿態(tài)控制上體現(xiàn)了良好的性能[12–13].目前多無人機編隊的研究大多關(guān)注編隊策略和信息處理,其控制器一般采用線性控制方法或者較為簡單的非線性控制方法,目前僅有少數(shù)研究學(xué)者對多無人機系統(tǒng)的魯棒控制進行了相關(guān)研究.文獻[14]分別設(shè)計了兩個滑模控制器(sliding mode control,SMC)實現(xiàn)領(lǐng)航機跟蹤預(yù)定軌跡和跟隨機保持隊形,實驗結(jié)果表明領(lǐng)航機和跟隨機均可保證較好的跟蹤性能.文獻[15]將控制器分成標(biāo)稱控制輸入和魯棒補償兩個部分,前者基于線性二次調(diào)節(jié)器(linear quadratic regulation,LQR)方法,后者采用一個非線性魯棒濾波器來補償不確定性和外界擾動的影響,該算法已進行了數(shù)值仿真驗證.文獻[16]設(shè)計了自適應(yīng)增益的滑??刂破?采用分布式的通信策略,理論分析并證明了無人機的編隊誤差能在有限時間內(nèi)收斂到有界鄰域內(nèi),并進行了數(shù)值仿真驗證.文獻[17]將super-twisting控制算法應(yīng)用到編隊跟蹤控制,利用了有限時間收斂的性質(zhì),并改善了滑??刂频亩墩瘳F(xiàn)象,但僅在仿真環(huán)境中進行了驗證.
基于以上分析,本文采用虛擬結(jié)構(gòu)法對無人機編隊隊形控制問題進行分析,實現(xiàn)了虛擬剛體坐標(biāo)系下不同隊形的切換.在此基礎(chǔ)上考慮并非所有無人機都能獲得虛擬剛體的信息,引入了鄰近無人機的狀態(tài),實現(xiàn)了分布式的隊形跟蹤.然后設(shè)計了基于super-twisting的多無人機編隊控制算法,用于補償機間氣流等干擾的影響.
本文的主要創(chuàng)新點有:1)將虛擬結(jié)構(gòu)法和分布式的通信策略結(jié)合起來,減輕了虛擬結(jié)構(gòu)中心的通信壓力;2)設(shè)計了魯棒控制算法,提高了多無人機系統(tǒng)對于外界擾動的穩(wěn)定性能;3)基于Lyapunov方法證明了多無人機編隊閉環(huán)系統(tǒng)的穩(wěn)定性,并且證明了編隊跟蹤誤差能在有限時間內(nèi)趨近滑模面;4)為了驗證算法有效性,在自主搭建的多無人機平臺上完成了實際飛行實驗,并取得了較好的實驗結(jié)果.
本文余下內(nèi)容組織如下:第2節(jié)針對相關(guān)預(yù)備知識和多無人機運動學(xué)模型進行了簡要的說明;第3–4節(jié)針對多無人機系統(tǒng)設(shè)計了分布式的super-twisting魯棒控制器,并進行了穩(wěn)定性證明;第5節(jié)針對實際飛行實驗的結(jié)果進行了詳細(xì)的分析;第6節(jié)對本文主要內(nèi)容進行了總結(jié)和展望.
設(shè)有n架無人機組成的多無人機編隊系統(tǒng),其通信網(wǎng)絡(luò)結(jié)構(gòu)可由一個n階無向加權(quán)圖G={V,E,A}表示[18].每個無人機分別占據(jù)圖中一個節(jié)點,V={1,2,···,n}表示節(jié)點的集合,E ?V×V表示邊的集合.(i,j)∈E表示節(jié)點i能獲得節(jié)點j的狀態(tài)信息,G為無向圖則滿足:若(i,j)∈E,則(j,i)∈E.定義節(jié)點i的鄰居集合為Ni={j ∈V:(i,j)∈E}.矩陣A={aij}∈Rn×n稱為鄰接矩陣,其中aij0為連接權(quán)值.若j ∈Ni,則aij >0,否則aij=0.節(jié)點i的入度定義為,入度矩陣D=diag{di}∈Rn×n.圖的拉普拉斯矩陣定義為L=D ?A.
針對圖論的相關(guān)性質(zhì),引入如下引理[18].
引理1已知G是無向圖,定義HL+B=L+diag{bi}.若G是連通的,且至少有一個bi大于零,則H是對稱正定矩陣.
注1bi >0表示節(jié)點i可以獲得虛擬結(jié)構(gòu)中心的狀態(tài),否則bi=0.
引理2已知矩陣U ∈Rp×p,W ∈Rq×q,若U和W均為對稱正定矩陣,則U ?W也是對稱正定矩陣.
注2?表示克羅內(nèi)克(Kronecker)乘積.
為便于表示無人機在三維空間的位置和姿態(tài),對所涉及的坐標(biāo)系和相關(guān)概念進行定義與說明.定義Fw為固定在地面的慣性坐標(biāo)系,定義Fi為原點固定在第i架無人機質(zhì)心的機體坐標(biāo)系,如圖1所示.各無人機在慣性坐標(biāo)系下的位置和姿態(tài)分別表示為pi(t)∈R3和Ri(t)∈SO(3).
圖1 相關(guān)坐標(biāo)系及虛擬結(jié)構(gòu)下的隊形示意圖Fig.1 Coordinate system and different formation shapes in the VRB frame
參考文獻[9]做如下定義.
定義1虛擬剛體(virtual rigid body,VRB),是對n架無人機組成的剛性整體的一種抽象,其對應(yīng)的坐標(biāo)系記為Fv,如圖1所示.各無人機在該坐標(biāo)系下構(gòu)成一定的空間分布,即為編隊隊形.t時刻各無人機在剛體坐標(biāo)系Fv下的位置表示為
其中ri(t)∈R3×1表示無人機i在虛擬剛體坐標(biāo)系下的三維坐標(biāo).
虛擬剛體在慣性坐標(biāo)系下的位置和姿態(tài)分別表示為pv(t)∈R3和Rv(t)∈SO(3).根據(jù)虛擬剛體的位置和姿態(tài)以及無人機在剛體坐標(biāo)系下的分布,可以得出各無人機在慣性坐標(biāo)系Fw下的位置表達如下:
式中:上標(biāo)(·)(k)表示k階導(dǎo)數(shù).當(dāng)ri(t)為常函數(shù)時,編隊保持固定的隊形;當(dāng)ri(t)為時變函數(shù)時,編隊實現(xiàn)不同隊形的切換.同時設(shè)計各無人機的偏航角ψi(t)∈R及其導(dǎo)數(shù)與虛擬剛體保持相等.
注3根據(jù)文獻[19]可知四旋翼無人機動態(tài)滿足微分平坦特性,即無人機的所有狀態(tài)可由一組平坦輸出σi=及其導(dǎo)數(shù)完全表示,從而只需設(shè)計滿足一定光滑條件的虛擬剛體軌跡和所期望的隊形,便可以得出動態(tài)可行的無人機參考軌跡.
對n架無人機組成的系統(tǒng),無人機i的動力學(xué)模型如下[20]:
為實現(xiàn)無人機對目標(biāo)軌跡的跟蹤控制,定義無人機i的位置跟蹤誤差ηi(t)=[ηix(t)ηiy(t)ηiz(t)]T∈R3×1如下:
其中pdi(t)=[pdix(t)pdiy(t)pdiz(t)]T∈R3×1為第i架無人機的期望位置向量.對上式求導(dǎo)得到速度跟蹤誤差為
針對虛擬剛體中的每架無人機,結(jié)合分布式的信息交互策略,引入相鄰無人機的狀態(tài)信息,重新構(gòu)造無人機i的誤差向量如下式所示:
將控制輸入(13)代入滑模面方程(10),可得滑模面動態(tài)方程如下:
定理1對于式(10)所示的系統(tǒng),滿足假設(shè)1,設(shè)計式(13)形式的控制器,且其中控制器增益滿足式(15)–(16)時,系統(tǒng)能在有限時間內(nèi)收斂到滑模面s=0.到達滑模面之后,編隊誤差指數(shù)收斂到零,各無人機的跟蹤誤差指數(shù)收斂到零.
證對于系統(tǒng)(17),考慮其中一個元素,定義Lyapunov候選函數(shù)Vi(t)為
其中:Ki為正對角增益矩陣K的第i個對角元素;si和?i分別為式(17)中對應(yīng)變量的第i個元素,均為標(biāo)量.由式(20)–(21)可得
綜上所述,式(17)中所有狀態(tài)變量(si(t),?i(t))能在有限時間內(nèi)收斂到零.到達滑模面s=0之后,式(7)所示的編隊誤差ξ(t)指數(shù)收斂到零,根據(jù)齊次線性方程解的情況,可知當(dāng)且僅當(dāng)η(t)等于零.因此,無人機編隊系統(tǒng)的跟蹤誤差漸進收斂到零,穩(wěn)定性證明完畢.
為了驗證本文所設(shè)計的分布式魯棒編隊控制算法的有效性,本文使用一架軸距0.28 m和兩架軸距0.25 m的四旋翼無人機進行了室內(nèi)實際飛行實驗.無人機搭載嵌入式飛行控制器,接收上層控制指令以及運行底層的姿態(tài)控制算法.機載ARM嵌入式計算板用于運行位置環(huán)非線性控制算法,并通過串口將控制量發(fā)送給飛行控制單元,數(shù)據(jù)格式遵循MAVLink無人機通信協(xié)議.實驗中使用OptiTrack運動捕捉系統(tǒng)提供無人機的定位數(shù)據(jù),運行MATLAB的地面站通過UDP通信協(xié)議將位置信息發(fā)送給各個無人機.運行Linux操作系統(tǒng)的地面站處理用戶的指令,并將生成的虛擬剛體軌跡發(fā)送給目標(biāo)無人機.實驗平臺及實驗場景如圖2所示.
圖2 無人機編隊飛行實驗平臺Fig.2 Flight testbed of UAV formations
由于實驗場地大小的限制,實驗中虛擬剛體的軌跡設(shè)計為
偏航角ψv(t)≡0.同時為了保證虛擬剛體軌跡滿足連續(xù)可微的條件,切換階段的隊形函數(shù)r(t)采用正弦曲線的一段.
通信網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示,其中:節(jié)點0表示虛擬剛體,節(jié)點1–3表示參與實驗的3架無人機.無人機1和無人機3能直接獲得虛擬剛體的信息,無人機2僅依靠與相鄰無人機1和無人機3交換信息實現(xiàn)其位置跟蹤.相應(yīng)的
圖3 三架無人機的通信拓?fù)鋱DFig.3 Communication topology of three UAVs
本節(jié)實驗相關(guān)實驗參數(shù)如表1所示.
表1 實驗相關(guān)參數(shù)Table 1 Experimental parameters
實驗中通過地面計算機給出起飛和進行編隊任務(wù)的指令,所有無人機自主起飛到一定高度后,開始圖1所示的3種隊形的保持和切換實驗.整個實驗過程持續(xù)約100 s,每個隊形保持約22 s,隊形之間的切換時間約為8 s.圖4–6分別為3架無人機在隊形跟蹤控制階段的位置曲線圖,從圖中可以看出無人機的期望軌跡是滿足所要求的光滑條件的.
圖4 無人機1位置曲線圖Fig.4 Positions of UAV1
圖5 無人機2位置曲線圖Fig.5 Positions of UAV2
圖6 無人機3位置曲線圖Fig.6 Positions of UAV3
同時為便于分析實驗過程中無人機隊形的變化,將各無人機的實時位置變化畫在同一坐標(biāo)系中,如圖7所示.可以看出,編隊在0~22 s,30~52 s以及60~82 s分別保持直線、水平方向三角形和垂直方向三角形的隊形,在82 s之后重新變換為初始的直線型隊形.圖8–10則為相應(yīng)的輔助控制輸入信號曲線圖,控制量大小控制在合理范圍內(nèi).
圖7 編隊實時位置曲線圖Fig.7 Formation real-time positions
圖8 無人機1控制量曲線圖Fig.8 Control inputs of UAV1
圖9 無人機2控制量曲線圖Fig.9 Control inputs of UAV2
圖10 無人機3控制量曲線圖Fig.10 Control inputs of UAV3
為定量分析在所提魯棒控制算法作用下的位置跟蹤效果,分別畫出每架無人機的位置跟蹤誤差曲線如圖11–13所示.由圖11–13可知,無人機1在x和y方向分別有最大0.25 m和0.34 m的誤差,z方向跟蹤誤差約為0.1 m;無人機2各方向跟蹤誤差能控制在0.2 m以內(nèi);無人機3在y方向上誤差能控制在0.2 m以內(nèi),x和z方向跟蹤誤差在0.1 m以內(nèi).
圖11 無人機1跟蹤誤差曲線圖Fig.11 Tracking errors of UAV1
圖12 無人機2跟蹤誤差曲線圖Fig.12 Tracking errors of UAV2
圖13 無人機3跟蹤誤差曲線圖Fig.13 Tracking errors of UAV3
為進一步定量分析無人機編隊飛行效果,表2給出了各個無人機位置跟蹤的最大誤差和均方根誤差.
表2 誤差數(shù)據(jù)分析Table 2 Analysis of errors
由表2可以看出,無人機1在x和y方向上會出現(xiàn)較大的偏差,但其均方根誤差能控制在0.1 m以內(nèi).編隊內(nèi)無人機在其余方向上的均方根誤差能控制在0.05 m以內(nèi),最大誤差也控制在較小的范圍之內(nèi).綜上所述,在存在無人機間氣流干擾和部分無人機無法獲取虛擬剛體狀態(tài)的情況下,本文設(shè)計的分布式非線性魯棒控制器能實現(xiàn)較好的編隊控制效果.
本文針對多無人機編隊控制問題,利用虛擬結(jié)構(gòu)法對整個系統(tǒng)進行建模分析,采用分布式的通信方式,避免系統(tǒng)的通信集中在虛擬結(jié)構(gòu)中心上.設(shè)計了一種新的非線性魯棒編隊控制算法,抑制了近距離編隊時機間風(fēng)擾的影響,并基于Lyapunov穩(wěn)定性分析方法證明了閉環(huán)系統(tǒng)的穩(wěn)定性,得出編隊誤差能在有限時間內(nèi)收斂到滑模面和位置跟蹤誤差漸近收斂的結(jié)果.實際飛行實驗結(jié)果表明,本文所提出的控制策略具有較好的控制效果,驗證了算法的有效性.
同時,本文并未考慮環(huán)境中存在障礙物的情況,且實驗中無人機無法對機間碰撞做出實時的反應(yīng),后續(xù)工作將結(jié)合人工勢場等方法,研究具有避障約束的多無人機軌跡規(guī)劃設(shè)計,實現(xiàn)無人機編隊的自主避障飛行控制.