吳宇,梁天驕
1. 重慶大學 航空航天學院,重慶 400044 2. 殲擊機綜合仿真航空科技重點實驗室,成都 610091
近幾十年來,無人機在軍事和民用方面發(fā)揮著越來越重要的作用。傳統(tǒng)的空戰(zhàn)中,主要通過派出單架或幾架分散的無人機執(zhí)行任務。然而,當執(zhí)行復雜任務時,單架無人機有完成任務效率低、成功率低等缺點。因此,為了充分發(fā)揮單架無人機的性能,引入多架無人機以合作方式形成一定形狀的編隊,以擴大作戰(zhàn)范圍,提高執(zhí)行任務的可靠性[1]。編隊飛行是指多架無人機在空間中能夠保持一定隊形飛行,并且當外界環(huán)境或任務發(fā)生變化時,編隊隊形能夠根據(jù)要求進行變換,常見的編隊隊形有“人”字型、菱形、三角形等[2]。不同的編隊隊形具有各自的功能,例如一般用于偵察的編隊可采用“V”形、菱形、鍥形或弓形編隊;用于攔截的編隊則采用行、列或反向圓弧編隊形式。由于以上優(yōu)點,軍事上,無人機編隊被用于偵察任務,在短時間內(nèi)能夠搜索廣大區(qū)域[3]。同樣由于此優(yōu)點,無人機編隊被用于森林救火[4]與農(nóng)業(yè)播種[5],在一次飛行中能夠覆蓋大片區(qū)域。在以上任務中,為提高編隊中無人機間的協(xié)作能力,需要對編隊控制方法進行研究。
編隊控制作為研究熱點,目前已有大量學者在此方向進行了研究,形成了很多編隊控制方法,下面對常見的編隊控制方法進行討論。第1種是基于“領導者-跟隨者”的方法,編隊中飛行狀態(tài)能夠被提前告知的無人機被指定為領導者,而其他無人機作為跟隨者,其飛行狀態(tài)通過跟蹤領導者的飛行速度、偏航角、飛行高度以及隊形要求進行調(diào)整[6]?!邦I導者-跟隨者”方法具有原理簡單、易于操作等優(yōu)點,但是其魯棒性較差,跟蹤誤差會逐級向后傳播并被放大。針對以上問題,學者們將“領導者-跟隨者”方法與其他方法,例如魯棒控制[7]、極值搜索控制[8]、自適應控制[9]等相結合,能夠減小跟蹤誤差,但當遇到緊急情況需要重新計算所有無人機的狀態(tài)時,會增加計算負擔?;谛袨榉ㄊ歉鶕?jù)從傳感器獲取的信息來確定無人機的響應,是一種決策方法[10]。通常無人機有以下4種響應方式,即機間碰撞避免、障礙物規(guī)避、目標靠近和隊形保持,通過行為響應控制的平均權重來確定每架無人機的行為響應方式[11]。文獻[12]提出了一種基于分布式零空間的行為方法,在速度控制器中設置了多種響應方式的優(yōu)先級,設計了一種考慮行為優(yōu)先級的奇異-魯棒反向運動學方法。基于行為法是通過模擬生物反應行為機制而形成的編隊控制方法,具有較強的魯棒性和靈活性,但是無法實現(xiàn)精確的隊形保持,而且對基本行為融合的分析難度較大,這也限制了其發(fā)展與應用。虛擬結構法將編隊視作一個虛擬的剛體結構,每架無人機都對應著虛擬結構上相對位置固定的一點[13]。當每架無人機都與固定點保持一定距離時,編隊便能形成固定隊形。為精確保持編隊隊形,無人機間需要進行高質量的通信,并且具備較強的計算能力。該方法要求無人機整體保持剛性運動,這使得編隊可靠性較差,實用性較低[14]。
以上3種常用的編隊控制方法各有其優(yōu)缺點,它們都能夠被統(tǒng)一到一致性理論的框架下[15]。一致性理論的基本思想是編隊中每架無人機都可以與其鄰居無人機進行通信,通過設計一種分布式的算法使得無人機的狀態(tài)變量達成一致[16],以此來實現(xiàn)無人機間的合作。一致性算法的優(yōu)點是引入了鄰居無人機的狀態(tài)信息作為反饋,只需要鄰居無人機間進行信息交換就能形成指定隊形,無需復雜的穩(wěn)定性分析。一致性算法已成為一個研究熱點,由于其可靠性高、自愈性強、可擴展性好等優(yōu)點,已被廣泛應用于目標跟蹤[17]、傳感器網(wǎng)絡設計[18]、編隊控制[19]等任務中。
當把一致性算法用于求解無人機編隊控制問題中時,無人機運動模型、機動性能、飛行性能、飛行安全等因素會從不同方面對控制變量與飛行狀態(tài)施加限制[20],而無人機在飛行過程中必須滿足這些約束條件。一致性算法只能保證無人機編隊在滿足通信拓撲結構的條件下快速收斂到指定飛行狀態(tài)與隊形,但是對于收斂過程中無人機控制量與飛行狀態(tài)違背約束條件的情況沒有進行考慮。另外,雖然目前的研究針對某些飛行狀態(tài)約束提出了處理策略,但仍不能完全保證無人機的飛行安全。為避免無人機在形成隊形過程中發(fā)生相互碰撞,文獻[21]設計了人工勢場法。當2架飛機在水平面內(nèi)或豎直方向上的距離小于設計閾值時,則在豎直方向上構造人工勢場,并將計算出的人工勢場力作為修正項添加到用一致性算法生成的控制指令中,在保證無人機飛行安全的前提下使一致性算法仍能收斂。但是,在計算人工勢場力時,此方法未包含無人機飛行速度信息,也未對無人機間是否發(fā)生碰撞進行提前檢測,存在算法啟動時間晚、可靠性不高等問題。
針對以上問題,本文基于帶自動駕駛儀的無人機三自由度運動學模型,對基本的一致性算法進行改進,使其滿足無人機機動性與飛行性能約束條件,并能防止無人機之間的碰撞。本文的創(chuàng)新點如下:
1) 設計一致性算法對無人機編隊隊形進行控制。將無人機的運動統(tǒng)一到沿OX、OY與OZ軸3個方向進行描述,對編隊狀態(tài)控制律進行改寫,并將無人機沿OX、OY與OZ軸3個方向的相對位置信息分別加入到相應方向的編隊狀態(tài)控制律中,形成編隊隊形控制律。
2) 提出“最小調(diào)整”策略對由一致性算法生成的控制指令進行調(diào)整,使調(diào)整后的控制指令與飛行狀態(tài)滿足無人機機動與飛行性能約束條件,且對控制指令的調(diào)整幅度盡量小??紤]到無人機的運動在XOY平面與OZ軸相對獨立,調(diào)整策略分兩步,分別在XOY平面與沿OZ軸進行。
3) 為避免編隊形成過程中無人機間發(fā)生碰撞,基于粒子群算法,對沿OZ軸的控制指令再次進行調(diào)整,即以改變飛行高度的方法防止無人機之間的碰撞。優(yōu)化指標為對沿OZ軸的控制指令調(diào)整幅度最小。
本節(jié)首先建立坐標系描述無人機編隊隊形,在此基礎上給出用于編隊控制的無人機運動方程。最后對標準的一致性算法進行介紹,為后續(xù)設計編隊控制算法做準備。
首先建立坐標系描述無人機的空中位置。本文將無人機視為質點,選取地面坐標系描述其運動狀態(tài)。地面坐標系的原點O可根據(jù)無人機的初始位置在水平面上任意選取,OX軸方向也可根據(jù)無人機初始狀態(tài)在水平面上進行選取。OZ軸豎直向上垂直于水平面,OY軸的方向可根據(jù)右手法則確定。在編隊中,無人機之間的位置關系可通過相對位置關系矩陣Rx、Ry和Rz進行描述
(1)
式中:(xij,yij,zij)(i,j=1,2,…,n)為無人機i與j之間的相對位置,并且有xii=yii=zii=0。當編隊達到穩(wěn)定狀態(tài)時,必須滿足
(2)
式中:xi、xj和zi分別為編號i的無人機沿OX、OY和OZ軸坐標;V為無人機的飛行速度。
在無人機編隊控制問題中,通常采用帶自動駕駛儀的三自由度運動學模型。無人機通過來自速度保持器、俯仰角保持器、航向角保持器的指令信號來保持飛行,即
(3)
(4)
(5)
式中:下標min和max分別表示相應變量的最小值與最大值。
對于任意一個航行體,其運動狀態(tài)可用微分方程描述為
(6)
式中:n為航行體的數(shù)量;xi∈Rm為航行體的狀態(tài);vi∈Rm為航行體狀態(tài)的微分;ui∈Rm為控制輸入。由式(6)給出基本的一致性算法為
(7)
式中:i與j表示2個不同的航行體;α為一個表示增益的正數(shù);aij為鄰接矩陣An的元素,表示航行體之間的通信拓撲關系。如果航行體i能接收到航行體j的信息,則aij=1,否則aij=0。本文中無人機間的通信拓撲關系不是主要的研究內(nèi)容,假設aij=1(i,j=1,2,…,n,i≠j),即任意2架無人機間均可以互相向對方發(fā)送和接收對方的信息,通信拓撲為一個有向完全圖,有關有向完全圖的定義和性質可參考文獻[23]。
對于n架無人機,定義其通信拓撲結構為Gn,拉普拉斯矩陣Ln中的元素lij可定義為
(8)
假設無人機在飛行過程中xi和vi的通信拓撲關系保持一致,給出一致性算法的收斂條件:
(9)
式中:μi為-Ln的第i個特征值,Re(μi)和Im(μi)為μi的實數(shù)和虛數(shù)部分。以上定理的證明過程可參見文獻[15]。
以上定理表明,當無人機編隊的狀態(tài)根據(jù)一致性算法能夠收斂時,即對于任意的初始狀態(tài)xi(0)和vi(0),當t→∞時,有|xi(t)-xj(t)|→0和|vi(t)-vj(t)|→0。要使無人機編隊的狀態(tài)收斂到一致,則要設置合理的通信拓撲結構與α值。
鑒于一致性算法式(7)中未考慮對無人機機動與飛行性能的約束(即式(5)中的約束條件)與無人機之間發(fā)生碰撞的可能,需要對一致性算法進行改進,以滿足無人機編隊實際飛行的要求。
首先基于一致性算法對無人機的飛行狀態(tài)(航向角φi、XOY平面內(nèi)速度vi、飛行高度zi)進行控制。由于在飛行狀態(tài)控制律中未包括編隊隊形信息(Rx、Ry和Rz),為了使控制指令與不同方向編隊隊形信息相對應,設計各運動方向上的一致性算法,使得無人機同時滿足狀態(tài)一致與指定隊形要求。
隨后對由所設計的一致性算法生成的控制指令進行修正,使其自身和所對應的狀態(tài)輸出均滿足無人機機動與飛行性能約束,且無人機之間不發(fā)生碰撞。修正分為2個層次進行:先使得無人機控制指令與飛行狀態(tài)滿足機動性與飛行性能約束,再進一步修正OZ軸方向的控制指令防止無人機之間的碰撞。以上修正步驟不能交換的原因在于將滿足防碰撞約束的控制指令進一步修正時可能會使得修正后的控制指令再次不滿足防碰撞約束,影響無人機飛行安全。
狀態(tài)控制是指讓編隊中無人機的某些飛行狀態(tài)分別收斂到相同的值。無人機飛行狀態(tài)收斂是編隊隊形收斂的必要條件,故本節(jié)基于一致性算法式(7),首先討論編隊狀態(tài)控制律的設計問題。
(10)
(11)
(12)
式(10)~式(12)的控制律可以使編隊中各無人機以相同的飛行速度在指定高度上朝相同方向飛行。但由于上述控制律中未考慮無人機之間的相對位置關系,故無人機無法以指定隊形飛行。應當加入無人機位置關系矩陣Rx、Ry和Rz信息,進一步設計編隊隊形控制律??紤]到Rx和Ry是沿OX與OY軸方向對無人機間的相對位置進行描述的,與式(10)、式(11)中涉及的飛行狀態(tài)描述方式不同,但相互間又存在轉換關系,本節(jié)首先將無人機的運動統(tǒng)一在沿OX、OY與OZ軸3個方向進行描述,對式(10)與式(11)的控制律在形式上進行改寫。最后將無人機沿OX、OY與OZ軸3個方向的相對位置信息分別加入到相應方向的編隊狀態(tài)控制律中,形成編隊隊形控制律。
狀態(tài)控制律中φi和vi與矩陣Rx和Ry中元素物理意義不同,不能簡單地直接進行運算,需要根據(jù)φi和vi與無人機沿OX和OY軸速度之間的關系進行轉換
(13)
式中:vxi與vyi分別為無人機i沿OX軸與OY軸的速度。通過式(13),可將φi與vi用vxi與vyi來表示,帶自動駕駛儀的無人機運動學方程式(4)也可轉換為
(14)
(15)
(16)
(17)
需要指出的是,式(15)~式(17)的編隊隊形控制算法可用于無人機編隊集結、隊形變換等情形。編隊集結是指無人機從不同的初始狀態(tài)經(jīng)編隊控制算法形成穩(wěn)定隊形的過程。隊形變換是根據(jù)任務需求,將編隊隊形由一個穩(wěn)定狀態(tài)轉換到另一個穩(wěn)定狀態(tài)的過程,即以某一穩(wěn)定隊形為初始狀態(tài),并改變矩陣Rx、Ry和Rz,利用式(15)~式(17)的編隊控制算法便可實現(xiàn)。
(18)
(19)
式中:a′min,i(t)與a′max,i(t)對應于t+Δt時刻飛行速度分別為vmin與vmax時無人機i在t時刻的加速度,即為滿足XOY平面內(nèi)飛行速度vi(t+Δt)約束,加速度ai(t)允許的取值范圍為[a′min,i(t),a′max,i(t)]。將a′min,i(t)與amin、a′max,i(t)與amax分別進行比較,得到更新后的關于加速度ai(t)的約束條件為
(20)
從式(15)與式(16)可以看出,uxi(t)與uyi(t)即為無人機i在t時刻分別沿OX軸與OY軸的加速度值。由于對加速度ai(t)的約束條件是相對于XOY平面的,所以對uxi(t)與uyi(t)的調(diào)整需同步進行,且對原加速度值的影響要盡量小。提出調(diào)整uxi(t)與uyi(t)的策略為
(21)
(22)
同時,下一采樣時刻航向角φi(t+Δt)的值可由u′xi(t)與u′yi(t)的值確定,即
(23)
式中:vxi(t)與vyi(t)分別為t時刻無人機i沿OX軸與OY軸的速度。若φi(t+Δt)?[φmin,i(t+Δt),φmax,i(t+Δt)],則u′xi(t)與u′yi(t)的值可通過求解式(24)或式(25)中的方程組進行調(diào)整。
(24)
(25)
(26)
(27)
(28)
(29)
(pze(o)-u″ze(o))+c2rand2·
(pzw(o)-u″ze(o))
(30)
u″ze(o+1)=u″ze(o)+Δu″ze(o)
(31)
(32)
此優(yōu)化問題中,需要滿足的約束條件是任意2架無人機間的距離均大于dsafe。如果在迭代過程中某個粒子不滿足以上約束條件,則將式(32)中的J值設置成一個很大的數(shù),以表示其對應的解是不可行的,應當被舍棄。
根據(jù)以上描述,無人機防撞策略的實質就是用粒子群算法對無人機爬升加速度在其允許變化范圍內(nèi)進行優(yōu)化,找出使無人機避免碰撞且對爬升加速度調(diào)整最小的解。
2.3與2.4節(jié)對由一致性算法生成的控制指令uxi(t)、uyi(t)與uzi(t)進行了調(diào)整,以滿足飛機機動性、飛行性能與防碰撞的要求。本節(jié)通過設計李雅普諾夫函數(shù)對改進一致性算法的收斂性進行證明。
本文對一致性算法進行改進的實質是對控制指令在某些時刻進行“限幅”和改變值操作,使調(diào)整后控制指令和狀態(tài)量滿足所有約束條件。以上改進過程將由式(6)與式(7)構成的線性系統(tǒng)變成了非線性系統(tǒng)。對于非線性系統(tǒng)的穩(wěn)定性,需要通過構造李雅普諾夫函數(shù)進行證明。在構造李雅普諾夫函數(shù)時,通常可通過引入狀態(tài)量的能量函數(shù),設計李雅普諾夫函數(shù)V如式(33)所示,對其求導可得式(34)。
(33)
(34)
式(34)中包含項ui-uj,可利用一致性算法式(7)將其表示成狀態(tài)變量的形式,推導過程為
(35)
考慮編隊通信拓撲結構為有向完全圖的情況,則有:
ui-uj=n(xj-xi)+nα(vj-vi)
(36)
在改進的一致性算法中,對由式(7)計算出的ui值進行了修正,其數(shù)學形式可表示為ui-Δui。則有:
(ui-Δui)-(uj-Δuj)=n(xj-xi)+nα(vj-vi)
(37)
將式(37)代入式(36),有
nα(vi-vj)+Δui-Δuj]=
(38)
(39)
(40)
以上穩(wěn)定性證明過程表明,只要ΔU有界,改進的一致性算法就能收斂到一個0附近的區(qū)間,即以犧牲一定的穩(wěn)定誤差為代價來保證算法的收斂性。
為驗證所提出改進一致性算法的有效性,本文以8架無人機組成的編隊為例,分別設計了3組仿真算例。首先驗證狀態(tài)控制算法的有效性,同時也表明狀態(tài)控制算法不能收斂到指定隊形。第2組算例對基于改進一致性算法的編隊控制進行仿真,對比了是否考慮無人機機動性與飛行性能約束條件2種情況,表明了所提出的約束條件處理策略及防碰撞策略的有效性。最后,考慮無人機編隊形成后需要變換隊形的情況,表明所提出的編隊控制算法可用于多種任務。以上算例中,假設編隊通信拓撲結構為完全圖,即任意2架無人機間均可以向對方發(fā)送和接收對方的信息。在第1、2組仿真算例中,無人機隊形信息與相對位置關系矩陣Rx、Ry和Rz如圖1與式(41)所示。
圖1 無人機編隊菱形隊形Fig.1 Diamond formation of UAVs
(41)
由式(41)可以看出,當編隊穩(wěn)定時,所有無人機都處于同一高度飛行。無人機的初始狀態(tài)如表1 所示,約束條件及算法中的參數(shù)設置如表2所示。
表1 無人機初始狀態(tài)設置Table 1 Initial states of UAVs
表2 約束條件與算法參數(shù)設置Table 2 Parameter settings in constraints and algorithms
利用2.1節(jié)提出的編隊狀態(tài)控制算法,并且采用2.3節(jié)的約束條件處理策略,得到仿真結果如圖2與圖3所示。
從圖2中可以看出,無人機編隊的速度與航向角可以快速分別趨于一致,并最終等于期望的速度與航向角值。相比于航向角速度,飛行高度的響應速度較慢,但最終還是可以收斂到期望高度。這是因為與速度和航向角的控制律相比,高度控制律是基于二階微分方程的,即對速度和航向角的控制通過改變加速度與航向角速度來實現(xiàn),而對高度的控制則通過改變爬升加速度來實現(xiàn),需要經(jīng)過兩次積分過程才能得到高度值,故響應過程較慢。另外,從圖2(d)XOY平面內(nèi)飛行軌跡可以看出無人機沒有形成任何隊形,說明只運用狀態(tài)控制算法還不能使無人形成隊形,需要加入無人機間的相互位置關系,利用編隊隊形控制算法進行求解。
圖2 無人機編隊狀態(tài)響應曲線Fig.2 States of UAV formation
圖3 無人機機動與飛行狀態(tài)約束值Fig.3 Values of constraints for UAV maneuverability and flight performance
圖3中檢驗了所提出的“最小調(diào)整”約束條件處理策略的有效性,可以看到,在XOY平面內(nèi),加速度、航向角速度均滿足約束條件,而且在個別點處加速度與航向角速度接近于臨界值,說明了該策略能夠起到“限幅”作用。在OZ軸方向,爬升率與爬升加速度也滿足約束條件要求。
本節(jié)采用的參數(shù)設置與無人機初始條件均與3.1節(jié)相同,在加入無人機間的相對位置信息后,設置無人機間的安全距離dsafe=15 m,采用所提出的編隊隊形控制算法,得到無人機編隊飛行軌跡如圖4所示。
圖4(b)中,通過放大的細節(jié)可以看出,采用改進的一致性算法,處于不同初始狀態(tài)的無人機能夠收斂到指定的隊形,并保持該隊形飛行。圖5與圖6給出了與圖4結果相對應的無人機編隊飛行狀態(tài)和約束條件值。
同樣,無人機編隊的速度、航向角、飛行高度均可收斂到指定的理想值,且各項約束條件均能滿足。圖5中“無人機與其他飛機間最小距離”指的是在某一時刻某1架無人機與其他7架無人機距離中的最小值,最小距離值(最小值為17.77 m)均大于機間最小安全距離,能夠防止無人機間相互碰撞。
為進一步說明所提出“最小調(diào)整”約束條件處理策略的有效性,給出了在不采用此策略下無人機編隊的飛行軌跡與狀態(tài),如圖7~圖9所示。
圖4 無人機編隊飛行軌跡與特定時刻狀態(tài)Fig.4 Trajectories of UAV formation and states of UAVs at specific moments
圖5 無人機編隊飛行狀態(tài)與機間距離Fig.5 Flight states of UAV formation and distance between UAVs
圖6 隊形控制中無人機機動與飛行狀態(tài)約束值Fig.6 Values of constraints for UAV maneuverability and flight performance in formation configuration control
圖7 無人機編隊飛行軌跡與特定時刻狀態(tài)(不考慮約束條件時)Fig.7 Trajectories of UAV formation and states of UAVs at specific moments (without considering constraints)
圖8 無人機編隊飛行狀態(tài)與機間距離(不考慮約束條件時)Fig.8 Flight states of UAV formation and distance between UAVs (without considering constraints)
圖9 隊形控制中無人機機動與飛行狀態(tài)約束值(不考慮約束條件時)Fig.9 Values of constraints for UAV maneuverability and flight performance in formation configuration control (without considering constraints)
以上仿真結果中,在不考慮約束條件時,無人機編隊仍然可以收斂到指定飛行狀態(tài),并保持指定隊形。但是在達到收斂狀態(tài)前,在XOY平面內(nèi),無人機的加速度與航向角速度在某些時刻均超出了允許范圍。對比圖6與圖9中XOY平面內(nèi)加速度,發(fā)現(xiàn)圖6中,在采用本文提出的約束條件調(diào)整策略后,axy的值并不都處于最小值或最大值處,與圖9中不考慮約束條件時的結果不能相互佐證。原因在于對XOY平面內(nèi)約束中,不僅包括對加速度和速度的約束,也包括對航向角的約束,而且這些約束間是相互影響的。對于加速度而言,一方面需要進行調(diào)整滿足加速度與速度約束條件,根據(jù)本文提出的調(diào)整策略,調(diào)整后的加速度值應處于最大值或最小值處;另一方面,為了滿足航向角的約束條件,OX軸方向與OY軸方向的加速度需要進行再次調(diào)整,調(diào)整后加速度就可能出現(xiàn)沒有維持在最大值或最小值處的現(xiàn)象。在沿OZ軸方向,無人機爬升率與爬升加速度在某些時刻也違背了約束條件,這使得生成的指令信號對于無人機來說在實際飛行過程中是不可行的。另外,無人機間的最小距離在少數(shù)時刻也略小于最小安全距離(最小值為14.05 m),使得無人機間存在相互碰撞的風險。
下面將用文獻[21]中提出的基于人工勢場的避障方法與本文提出的防碰撞策略進行比較。在式(17)的基礎上,在OZ軸方向加入了人工勢場力以防止無人機之間的碰撞,控制律的表達式為
(42)
(43)
式中:fcai為定義的每架無人機的勢場力,其具體的推導過程可詳見文獻[21]中式(7)~式(11)。設置無人機間在XOY平面內(nèi)的安全距離ΔR=10 m,無人機沿OZ軸方向的安全距離ΔH=10 m。需要注意的是,人工勢場力僅當2架無人機間在XOY平面內(nèi)的距離小于2ΔR或沿OZ軸方向的距離小于2ΔH時才產(chǎn)生,否則仍用式(17)來計算uzi的值。計算人工勢場力時參數(shù)Kh的值設為1(見文獻[21]中式(8))。在以上設置下,仿真得到無人機與其他飛機間最小距離”隨時間變化曲線如圖10所示。
圖10 無人機間距離隨時間變化曲線Fig.10 Distance between UAVs over time
從圖10可以看出,無人機之間的距離最小值為14.88 m,比未考慮機間碰撞的情形(圖8)相比無人機間的距離有所增加,但仍小于本文所規(guī)定的安全距離(dsafe=15 m)。以上結果說明人工勢場法在某些情況下并不能完全使無人機避免碰撞,原因在于未考慮無人機飛行速度的影響,可靠性不高,有待進一步改進。
通過以上仿真結果的對比可以看出,本文提出的“最小調(diào)整”約束條件處理策略與基于粒子群算法的防碰撞策略有效,能夠保證生成的指令信號在無人機實際飛行過程中有效,并能防止機間碰撞。
為說明本文設計的一致性算法可用于無人機編隊隊形變換任務,本節(jié)用一個綜合算例進行仿真。仿真中無人機編隊的飛行過程設置如下:
無人機的初始狀態(tài)與3.2節(jié)中設置相同,理想編隊隊形描述如圖11與式(44)所示。當t=30 s 時,要求編隊變換到圖1與式(41)描述的隊形,隊形的理想速度、航向角、飛行高度仍保持不變。以上情形如圖11所示。
在以上設置下,仿真結果如圖12~圖14所示。
圖11 無人機編隊凸五邊形隊Fig.11 Convex pentagon formation of UAVs
(44)
圖12 隊形變換任務下無人機編隊飛行軌跡與特定時刻狀態(tài)Fig.12 Trajectories of UAV formation and states of UAVs at specific moments during formation change tasks
圖13 隊形變換任務下無人機編隊飛行狀態(tài)Fig.13 Flight states of UAV formation during formation change tasks
圖14 隊形變換任務下無人機編隊飛行約束條件值Fig.14 Constraint values of UAV formation during formation change tasks
圖12中,當t=28 s時,無人機編隊隊形為五邊形,到t=40 s時,無人機編隊隊形已變換為指定的菱形形狀。在圖13中,當t=30 s發(fā)出編隊隊形變換指令時,無人機速度與航向角會立即發(fā)生變化,隨后會很快收斂到理想狀態(tài)。隊形變換過程中,無人機飛行高度不發(fā)生變化。由圖14中的結果可知,在整個飛行過程中,無人機的控制信號、飛行狀態(tài)與機間距離均滿足約束條件,保證了所生成的指令信號在實際過程中可行。以上仿真結果表明,本文提出的基于改進一致性算法的編隊控制算法可以實現(xiàn)隊形形成與變換功能。
1) 利用無人機各飛行狀態(tài)間的幾何關系,基于帶自動駕駛儀的三自由度運動學方程,對基本一致性算法進行改進,在狀態(tài)控制算法的基礎上設計了編隊隊形控制算法。
2) 提出“最小調(diào)整”策略對由編隊控制算法生成的指令信號進行調(diào)整,使得指令信號滿足無人機機動性與飛行性能約束條件,在實際飛行過程中可用。對指令信號的調(diào)整分別在XOY平面與OZ軸兩個方向進行。
3) 設計基于粒子群算法的無人機防碰撞策略。無人機之間的防碰撞措施在OZ軸方向進行,在允許范圍內(nèi)優(yōu)化各無人機爬升加速度值,避免碰撞,優(yōu)化指標為對各無人機原爬升加速度調(diào)整之和最小。
4) 仿真結果表明,所提出的改進一致性無人機編隊控制算法可用于無人機編隊隊形成形、變換等任務,具有良好的通用性。