鄭 宇,蔡志浩,王隆洪,趙 江,王英勛
(北京航空航天大學(xué)自動化科學(xué)與電氣工程學(xué)院,北京 100083)
無人機(jī)(Unmanned Aerial Vehicles,UAVs)技術(shù)發(fā)展速度快、迭代周期短,尤其是近幾年已經(jīng)廣泛應(yīng)用于軍事和民用領(lǐng)域,如偵察、搜救、森林防火和城市測繪等[1-4]。與單架無人機(jī)平臺相比,多無人機(jī)協(xié)同飛行在復(fù)雜任務(wù)中具有更好的性能,包括協(xié)同目標(biāo)搜索、救援和戰(zhàn)斗等[5-8],并且在檢測、定位和感知方面具有很多優(yōu)勢,有助于多無人機(jī)的任務(wù)分配、空中加油、自組織和重構(gòu)。
多無人機(jī)編隊(duì)控制的常用方法有一致性理論、主從式策略、基于行為的方法、虛擬結(jié)構(gòu)方法、微分博弈、有限時域控制理論等[9-12]。文獻(xiàn)[13]設(shè)計(jì)了一種主從式編隊(duì)控制算法,其中領(lǐng)導(dǎo)者被隱式地整合到群體中,并且可以受到來自他們?nèi)后w的導(dǎo)航反饋的影響。文獻(xiàn)[14]基于滑??刂品椒ǎ岢隽艘环N分布式多無人機(jī)編隊(duì)控制方法。當(dāng)多無人機(jī)系統(tǒng)的狀態(tài)在滑模表面時,可以在有限時間內(nèi)實(shí)現(xiàn)編隊(duì)。文獻(xiàn)[15]提出了基于信鴿分層策略的分布式編隊(duì)控制架構(gòu),結(jié)合信鴿群速度相關(guān)、主從交互和分層領(lǐng)導(dǎo)網(wǎng)絡(luò)的優(yōu)點(diǎn),提出了一種基于高度一致性的控制算法。文獻(xiàn)[16]提出了一種基于虛擬結(jié)構(gòu)和人工勢場方法的避碰控制算法。為了有效地避開障礙物跟蹤運(yùn)動目標(biāo),設(shè)計(jì)了三維空間的主從控制策略。在文獻(xiàn)[17]中提出了一種分布式編隊(duì)控制協(xié)議。多無人機(jī)系統(tǒng)能夠在有限的時間內(nèi)實(shí)現(xiàn)預(yù)期的編隊(duì),并且根據(jù)編隊(duì)控制的要求可以預(yù)先指定編隊(duì)構(gòu)型。
無人機(jī)集群技術(shù)發(fā)展迅速[18-19],其中無人機(jī)集群自組網(wǎng)(Ad-hoc)通信系統(tǒng)是一種具有分布式、無中心、自組織、多業(yè)務(wù)、遠(yuǎn)距離、精準(zhǔn)定位等顯著技術(shù)特點(diǎn)的動態(tài)自治性局部區(qū)域無線通信網(wǎng)絡(luò)。支持集群中成員的動態(tài)加入和退出,滿足了無人機(jī)集群大規(guī)模、高動態(tài)情況下的協(xié)同通信需求,也適用于解決各種復(fù)雜和特殊環(huán)境下的網(wǎng)絡(luò)通信。自組網(wǎng)技術(shù)采用一種不需要基站的對等結(jié)構(gòu)移動通信模式,網(wǎng)絡(luò)中所有聯(lián)網(wǎng)設(shè)備可以在移動過程中動態(tài)組網(wǎng),節(jié)點(diǎn)之間通過無線方式互聯(lián),每個節(jié)點(diǎn)又同時具有終端和路由器的功能。目前Ad-hoc網(wǎng)絡(luò)已經(jīng)成為移動通信領(lǐng)域研究的重點(diǎn)方向,圖1展示了典型Ad-hoc網(wǎng)絡(luò)的結(jié)構(gòu)。
圖1 自組網(wǎng)網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Ad-hoc network structure
有鑒于此,將自組網(wǎng)技術(shù)引入到無人機(jī)編隊(duì)控制中來,實(shí)現(xiàn)多無人機(jī)的編隊(duì)飛行并提高多無人機(jī)編隊(duì)飛行過程中的實(shí)時性、準(zhǔn)確性、可靠性和全面性。本文主要研究了無人機(jī)組隊(duì)控制與防撞策略,主要解決無人機(jī)編隊(duì)的隊(duì)形構(gòu)建、保持和重構(gòu),避障策略以及自組網(wǎng)通信等關(guān)鍵技術(shù)問題,對推動多旋翼無人機(jī)編隊(duì)技術(shù)的發(fā)展具有重要的理論與工程參考價值。
無人機(jī)協(xié)同編隊(duì)技術(shù)還沒有進(jìn)行過實(shí)際戰(zhàn)場演練,隨著編隊(duì)技術(shù)的發(fā)展,不斷完善無人機(jī)編隊(duì)飛行隊(duì)形,其隊(duì)形需要借鑒有人機(jī)的編隊(duì)隊(duì)形設(shè)計(jì)經(jīng)驗(yàn)。隊(duì)形設(shè)計(jì)完成后,通過地面控制站或者機(jī)載計(jì)算機(jī)的控制來進(jìn)行戰(zhàn)斗任務(wù)的執(zhí)行,在設(shè)計(jì)隊(duì)形時需要考慮作戰(zhàn)范圍、確保安全距離防止碰撞、增強(qiáng)攻擊與防御、偵察打擊并保護(hù)重要目標(biāo)等,同時還要結(jié)合具體的作戰(zhàn)任務(wù)對編隊(duì)隊(duì)形進(jìn)行調(diào)整,并且根據(jù)任務(wù)需求增減無人機(jī),都是編隊(duì)問題中的難點(diǎn)。
根據(jù)不同的作戰(zhàn)環(huán)境和任務(wù)需求,戰(zhàn)機(jī)往往組成不同隊(duì)形的編隊(duì):平行編隊(duì)主要用于搜索目標(biāo)時擴(kuò)大搜索范圍;縱向編隊(duì)主要用于轟炸、空投、空降以及躲避威脅或者通過狹窄區(qū)域;梯形編隊(duì)常用于協(xié)同對地攻擊;三角形編隊(duì)常用于巡航和轟炸;五菱形編隊(duì)主要用于保護(hù)編隊(duì)中的重要目標(biāo),如預(yù)警機(jī)、加油機(jī)等;反向圓弧編隊(duì)常用于截?fù)魜硪u敵機(jī);箭形編隊(duì)主要用于突防、空襲敵方重要目標(biāo)和對敵進(jìn)行核打擊。在此,主要研究平行編隊(duì)、縱向編隊(duì)、三角形編隊(duì)、梯形編隊(duì)和五菱形編隊(duì),這五種隊(duì)形在實(shí)戰(zhàn)應(yīng)用中具有重要意義。
為了便于編隊(duì)隊(duì)形的表述,采用[dxdydz]T來表示2架無人機(jī)之間的相對位置關(guān)系,其中dx表示縱向距離,dy代表橫向距離,dz表示高度差。本節(jié)以5架六旋翼無人機(jī)編排了五種編隊(duì)隊(duì)形,當(dāng)無人機(jī)數(shù)目增加時可以根據(jù)隊(duì)形特點(diǎn)進(jìn)行擴(kuò)展。需要注意的是,所設(shè)計(jì)的隊(duì)形只是編隊(duì)隊(duì)形的示意圖,除緊密編隊(duì)飛行外,實(shí)際編隊(duì)飛行時要按照無人機(jī)尺寸、速度以及實(shí)際任務(wù)進(jìn)行閾值的調(diào)整。
(1)平行編隊(duì)(圖2)
圖2 平行編隊(duì)隊(duì)形圖Fig.2 Parallel formation diagram
平行編隊(duì)隊(duì)形中,無人機(jī)橫向一字排開并且處于同一高度,因此dx=dz=0,dy根據(jù)無人機(jī)的機(jī)載偵查設(shè)備的搜索能力來調(diào)整。
平行編隊(duì)主要用于大面積搜索目標(biāo),無人機(jī)數(shù)量的增加可以明顯擴(kuò)大搜索范圍,提高作戰(zhàn)效率。地面站控制中心可以安置在地面,也可以通過多旋翼和直升機(jī)等飛行器搭載在空中懸停增大發(fā)射范圍,可以實(shí)時監(jiān)督編隊(duì)飛行狀態(tài)和任務(wù)執(zhí)行情況。
(2)縱向編隊(duì)(圖3)
圖3 垂直編隊(duì)隊(duì)形圖Fig.3 Vertical formation diagram
縱向編隊(duì)隊(duì)形中,無人機(jī)縱向一字排開并且處于同一高度,因此dy=dz=0,每架飛機(jī)的距離根據(jù)當(dāng)前飛行速度下所需要的安全距離來調(diào)整。
縱向編隊(duì)主要用于躲避障礙物、轟炸地面目標(biāo)等任務(wù)。當(dāng)無人機(jī)編隊(duì)在沒有敵方威脅的山區(qū)飛行或者在執(zhí)行作戰(zhàn)任務(wù)需要躲避敵方防空雷達(dá)時,可以提高速度快速飛行,一次穿越山峰障礙物,盡快完成轟炸任務(wù),脫離任務(wù)區(qū)域快速返航。
(3)梯形編隊(duì)(圖4)
圖4 梯形編隊(duì)隊(duì)形圖Fig.4 Trapezoidal formation diagram
梯形編隊(duì)隊(duì)形中,無人機(jī)在同一高度上呈階梯狀分布,dz=0,無人機(jī)之間的縱向間距dx和橫向距離dy根據(jù)具體的作戰(zhàn)任務(wù)進(jìn)行調(diào)整。
梯形編隊(duì)主要用于攻擊,這種隊(duì)形有利于提高攻擊效率增大完成任務(wù)的概率。處于前方的無人機(jī)在攻擊目標(biāo)之后對攻擊效果進(jìn)行評估,如果需要二次攻擊,處于斜后方的無人機(jī)可以進(jìn)行二次攻擊,否則斜后方的無人機(jī)可以繼續(xù)執(zhí)行其他任務(wù)。這樣前方的無人機(jī)就無需掉頭回來進(jìn)行二次攻擊,從而節(jié)省了無人機(jī)寶貴的續(xù)航時間。通過地面站接收傳感器傳回的信息,實(shí)時監(jiān)督每架無人機(jī)的飛行狀態(tài)和任務(wù)執(zhí)行情況,必要時可以直接修改無人機(jī)的作戰(zhàn)任務(wù)。
(4)三角形編隊(duì)(圖5)
圖5 三角形編隊(duì)隊(duì)形圖Fig.5 Triangle formation diagram
三角形編隊(duì)主要用于出航和返航,頭機(jī)在編隊(duì)最前方為僚機(jī)領(lǐng)航,有利于僚機(jī)減小燃油消耗,增大航程。為了確保編隊(duì)飛行的安全,在編隊(duì)到達(dá)作戰(zhàn)任務(wù)區(qū)之前根據(jù)作戰(zhàn)任務(wù)指揮將三角形巡航隊(duì)形變換為其他隊(duì)形。
(5)菱形編隊(duì)(圖6)
圖6 菱形編隊(duì)隊(duì)形圖Fig.6 Prismatic formation diagram
五菱形護(hù)航編隊(duì)隊(duì)形中,無人機(jī)在同一高度上呈五菱形分布于各個角落,dz=0,編隊(duì)飛機(jī)之間的距離dx、dy根據(jù)飛行時所需要的安全距離來調(diào)整。
菱形護(hù)航編隊(duì)的主要用途為保護(hù)重要目標(biāo)的安全。當(dāng)編隊(duì)遭遇強(qiáng)于自身的空中力量來襲時,無人機(jī)在重要目標(biāo)周圍保護(hù)重要目標(biāo)迅速撤離戰(zhàn)場,無人機(jī)要吸引敵方來襲導(dǎo)彈,必要時以機(jī)身來阻擋來襲導(dǎo)彈,以最大限度地保護(hù)重要目標(biāo)。
編隊(duì)隊(duì)形的集結(jié)、保持、變換以及避碰是本小節(jié)的研究重點(diǎn),采用地面編隊(duì)控制軟件對編隊(duì)隊(duì)形以及應(yīng)急措施進(jìn)行決策和處理。
編隊(duì)控制主要包括2個部分:1)隊(duì)形集結(jié)、組隊(duì)與重構(gòu)(圖7);2)隊(duì)形保持(圖8)。
圖7 編隊(duì)集結(jié)、組隊(duì)與重構(gòu)控制流程Fig.7 Control flow of formation aggregation, construction and reconstruction
隊(duì)形集結(jié)、組隊(duì)與重構(gòu)的主要流程是:當(dāng)?shù)孛婢庩?duì)控制軟件收到起飛指令后,飛機(jī)會從起飛點(diǎn)飛行至集結(jié)點(diǎn),根據(jù)編隊(duì)飛機(jī)的當(dāng)前位置和集結(jié)點(diǎn)(目標(biāo)點(diǎn))來解算出飛機(jī)的飛行路徑;到達(dá)集結(jié)點(diǎn)后等待地面編隊(duì)控制軟件發(fā)出隊(duì)形變換指令,同時生成飛行路徑;編隊(duì)飛機(jī)在收到指令后,會對各自路徑進(jìn)行跟蹤,飛向各自被分配的目標(biāo)點(diǎn)。運(yùn)動過程中,編隊(duì)中的飛機(jī)會把狀態(tài)信息實(shí)時反饋給地面站控制中心,根據(jù)反饋信息做出實(shí)時調(diào)整。編隊(duì)飛機(jī)到達(dá)目標(biāo)點(diǎn)后,當(dāng)前任務(wù)結(jié)束。
圖8 編隊(duì)保持控制流程Fig.8 Control flow of formation maintaining
隊(duì)形保持的主要流程是:地面編隊(duì)控制軟件不斷計(jì)算飛機(jī)的當(dāng)前位置,當(dāng)飛機(jī)到達(dá)目標(biāo)點(diǎn)時,代表變換任務(wù)結(jié)束,飛機(jī)在目標(biāo)點(diǎn)進(jìn)行位置懸停。每架飛機(jī)從起始點(diǎn)到目標(biāo)點(diǎn)的路徑長度不一樣,這樣就導(dǎo)致了編隊(duì)飛機(jī)沒辦法同時間到達(dá);同時有的隊(duì)形變換會產(chǎn)生路徑交叉點(diǎn),觸發(fā)避障功能也會對到達(dá)時間有一定的影響。編隊(duì)飛機(jī)在到達(dá)目標(biāo)點(diǎn)后,由于會對控制精度誤差進(jìn)行實(shí)時修正,在修正過程中也會實(shí)時生成運(yùn)動路徑,有利于編隊(duì)整體隊(duì)形的保持。
蟻群算法(Ant Colony Algorithm,ACA)是解決復(fù)雜優(yōu)化組合問題的新型真演化算法,將ACA應(yīng)用到無人機(jī)編隊(duì)的路徑規(guī)劃中,需要將每一個可能的路徑規(guī)劃作為一個節(jié)點(diǎn)。要解決這個問題首先要建立多旋翼編隊(duì)路徑規(guī)劃的數(shù)學(xué)模型,構(gòu)建矩陣D∈Dn×n,n代表多旋翼飛機(jī)的個數(shù),矩陣D中的每一個Dij都是一個單獨(dú)的節(jié)點(diǎn)vij,其中i表示隊(duì)形重構(gòu)或隊(duì)形集結(jié)前的原始位置Si,j表示隊(duì)形重構(gòu)或隊(duì)形集結(jié)前的新位置Fj,Dij表示從Si飛到Fj所需的代價。矩陣D中有n×n個數(shù)值,因此形成的無向圖有n×n個節(jié)點(diǎn),節(jié)點(diǎn)之間相互連通。但當(dāng)Dij被選中時,則i行j列的其他節(jié)點(diǎn)將不能再被選擇。因此會有n個不同行不同列的Dij被找到,使得這n個Dij的和最小,即
min∑Dij
(1)
這n個Dij的組合就表示著編隊(duì)重構(gòu)或編隊(duì)集結(jié)前后每架無人機(jī)的位置分配情況。由于本文的對象為多旋翼無人機(jī),機(jī)動性強(qiáng),因此飛機(jī)可以從Si按照規(guī)劃出的路徑直線飛到Fj。
上文提到,Dij表示由原來保持的編隊(duì)位置Si飛向需要構(gòu)造的編隊(duì)隊(duì)形位置Fj所需的代價,但是由于剩余目標(biāo)點(diǎn)受以往選擇的節(jié)點(diǎn)所代表的直線的影響,所以本文中的Dij在螞蟻選擇節(jié)點(diǎn)后不斷變化。初始時,只考慮燃油代價為Jfuel,ij=Lij,Lij為vij所代表直線的距離,Dij=Jfuel,ij。當(dāng)螞蟻開始選擇節(jié)點(diǎn)后,需要計(jì)算剩余節(jié)點(diǎn)的威脅代價,將剩余節(jié)點(diǎn)的邊與已經(jīng)選擇的邊分為6等分,分別選取7個點(diǎn)計(jì)算距離,從而計(jì)算威脅代價,即
(2)
其中,Jthreat,ij為威脅代價,d(0)(ij-v)、d(1/6)(ij-v)、d(1/3)(ij-v)、d(1/2)(ij-v)、d(2/3)(ij-v)、d(5/6)(ij-v)、d(1)(ij-v)分別為節(jié)點(diǎn)vij與已選擇的節(jié)點(diǎn)所代表的邊的起點(diǎn)、1/6處、1/3處、1/2處、2/3處、5/6處、終點(diǎn)的距離。綜上所述,vij的選擇代價為J=k1Jthreat,ij+(1-k1)Jfuel,ij,k1值越大表示對威脅代價越重視。若剩余節(jié)點(diǎn)與已選擇節(jié)點(diǎn)交叉,則將此節(jié)點(diǎn)放入禁忌表中,這一步可以杜絕位置分配的路徑交叉問題。
蟻群算法中螞蟻k從節(jié)點(diǎn)vij轉(zhuǎn)到可行節(jié)點(diǎn)vlm的狀態(tài)轉(zhuǎn)移概率公式為
(3)
其中,tlm代表節(jié)點(diǎn)上的信息素濃度;ηlm=1/clm為啟發(fā)函數(shù),clm表示選擇vlm節(jié)點(diǎn)的成本。α、β為信息素因子和啟發(fā)函數(shù)因子,表示了信息素和啟發(fā)函數(shù)對狀態(tài)轉(zhuǎn)移概率的影響的比重。計(jì)算的狀態(tài)轉(zhuǎn)移概率越大則該節(jié)點(diǎn)被選中的概率也就越大。
用Nmax表示最大的迭代次數(shù),Nc表示當(dāng)前迭代次數(shù)。利用蟻群算法解決多無人機(jī)編隊(duì)集結(jié)和編隊(duì)重構(gòu)的位置分配問題的具體步驟如下:
1)設(shè)置每個節(jié)點(diǎn)一樣的信息素t0,把禁忌表置為0。
2)設(shè)置算法中的各個參數(shù),將m只螞蟻隨機(jī)放置在起點(diǎn)處,當(dāng)前迭代次數(shù)Nc=1。
3)按照上述的狀態(tài)轉(zhuǎn)移概率公式選擇出下一個節(jié)點(diǎn),當(dāng)螞蟻選中某個節(jié)點(diǎn)vij后,則矩陣中i行j列的其他節(jié)點(diǎn)將不能再被選擇,因此將這些節(jié)點(diǎn)放入禁忌表中。
4)當(dāng)螞蟻選中某個節(jié)點(diǎn)vij后,就更新節(jié)點(diǎn)vij上的信息素濃度
tij=(1-ζ)tij+ζt0,0<ζ<1
(4)
其中,ζ是給定參數(shù)。當(dāng)其中某節(jié)點(diǎn)被選中后,更新該點(diǎn)的信息素濃度,使其他螞蟻選擇其余節(jié)點(diǎn)的概率增加。這樣可以防止出現(xiàn)結(jié)果局部最優(yōu)的結(jié)果
5)當(dāng)所有的m個螞蟻完成n次搜索后,就會出現(xiàn)m種節(jié)點(diǎn)組合,每一個組合都是一種分配方案,每種組合都包含不同行不同列的n個節(jié)點(diǎn)。然后找出這些解中的最優(yōu)解則為此次迭代的最優(yōu)解,記錄下來。
6)尋到此次迭代的最優(yōu)解后,按照式(5)更新所有節(jié)點(diǎn)上的信息素濃度
(5)
7)若規(guī)劃完成,則從所有迭代次數(shù)的最優(yōu)解中找到其中的全局最優(yōu)解,并且記錄下來。
基于ACA的路徑規(guī)劃會使編隊(duì)飛機(jī)的當(dāng)前位置和目標(biāo)點(diǎn)之間進(jìn)行配對,如果目標(biāo)點(diǎn)數(shù)量少于當(dāng)前位置飛機(jī)的數(shù)量,那就根據(jù)飛機(jī)標(biāo)號從小到大的原則,標(biāo)號偏小的飛機(jī)執(zhí)行任務(wù),剩余飛機(jī)返回集結(jié)點(diǎn)待命。當(dāng)前位置和目標(biāo)點(diǎn)之間的位置配對就生成了編隊(duì)飛機(jī)的飛行路徑。由于多旋翼飛機(jī)具有可懸停的特性,因此當(dāng)?shù)孛嬲究刂浦行陌l(fā)出隊(duì)形集結(jié)和隊(duì)形變換的指令后,編隊(duì)中的各架飛機(jī)按照所生成的路徑向目標(biāo)點(diǎn)飛行。因?yàn)樘幵诰庩?duì)試飛的起步階段,還達(dá)不到控制編隊(duì)中各架飛機(jī)同一時間到達(dá)目標(biāo)點(diǎn),所有飛機(jī)的速度指令是相同的,但最終目標(biāo)要達(dá)到所有飛機(jī)同一時間到達(dá)目標(biāo)點(diǎn),這時候就需要地面站控制中心給編隊(duì)中每架飛機(jī)都生成相應(yīng)的控制指令。多旋翼無人機(jī)的路徑控制的指令由期望的位移給出,當(dāng)調(diào)節(jié)參數(shù)一樣時,給出的期望位移可以決定每架飛機(jī)追蹤路徑的前進(jìn)速度。
多旋翼無人機(jī)路徑跟蹤有兩種方式:一種是機(jī)頭不發(fā)生航向偏轉(zhuǎn)行為,即無頭模式;另一種是機(jī)頭朝向下一個目標(biāo)點(diǎn)飛行的策略,即有頭模式。出于無頭模式可以不發(fā)生航向行為再進(jìn)行運(yùn)動可以節(jié)省時間以及隊(duì)形保持整齊度考慮,采用無頭模式直接飛往下一個目標(biāo)點(diǎn)的飛行策略,此時在排除了航向傾轉(zhuǎn)行為所消耗的時間后,飛機(jī)的前進(jìn)速度與所選擇的期望位移成正比例關(guān)系
Vi=kLi
(6)
則每架無人機(jī)到達(dá)期望目標(biāo)點(diǎn)所需時間為
(7)
其中,Di為每架無人機(jī)航路的長度,若要使各個無人機(jī)同時到達(dá)期望位置,則航路越遠(yuǎn)的無人機(jī),前進(jìn)速度就越大。為了避免其余計(jì)算的速度指令過大,因此,以航路最遠(yuǎn)的無人機(jī)為基準(zhǔn)選擇其余無人機(jī)的期望位移??刂浦噶钣?jì)算的流程如下:首先計(jì)算各個無人機(jī)的航路長度Di(i=1,2,…,n),選擇其中航路最遠(yuǎn)的無人機(jī)j,其期望位移選擇為Lj。則其余無人機(jī)的期望位移為
(8)
在小范圍編隊(duì)中,通過合理的任務(wù)分配和路徑規(guī)劃,很少會出現(xiàn)航跡點(diǎn)重合的現(xiàn)象,當(dāng)然也會出現(xiàn)雙機(jī)或者三機(jī)路徑重合需要避障策略來完成任務(wù)的情況。在這里引入斥力場函數(shù),通過斥力場函數(shù)的大小來決策飛機(jī)相遇之后的運(yùn)動速度和方向。
傳統(tǒng)的斥力場函數(shù)
(9)
沒有考慮目標(biāo)點(diǎn)與飛機(jī)的當(dāng)前位置的相對距離,而且具有目標(biāo)不可達(dá)的問題,從而需要建立一個新的斥力場函數(shù)
Urep(q)=
(10)
式中,ρ是2架飛機(jī)飛行過程中的最近距離;(X-Xgoal)是觸發(fā)條件的飛機(jī)與目標(biāo)點(diǎn)之間的相對距離;ρ0是觸發(fā)閾值條件的最小安全距離;η是一個位置增益函數(shù),與之前提出的斥力場函數(shù)相比,引入了觸發(fā)條件的飛機(jī)與目標(biāo)點(diǎn)之間的相對距離,保證了飛機(jī)在觸發(fā)避障條件后還能準(zhǔn)確地朝目標(biāo)點(diǎn)飛去,從而保證了不影響其他飛機(jī)的航線,引起再次觸發(fā)條件。在觸發(fā)條件范圍內(nèi),斥力場越大,飛機(jī)離開觸發(fā)區(qū)的響應(yīng)速度和運(yùn)動速度越快。
在大規(guī)模編隊(duì)試飛中,在多架無人機(jī)相遇的情況下,采用平等策略會增加計(jì)算量,在工程上有很大挑戰(zhàn)。這時可以采用以編隊(duì)無人機(jī)的IP大小排序的基于不平等原則的避障策略(圖9),即IP號大的先離開觸發(fā)區(qū)域,其余觸發(fā)條件的飛機(jī)讓出當(dāng)前IP大的飛機(jī)的飛行軌跡,然后IP小的依次離開,直到所有飛機(jī)都離開觸發(fā)區(qū)域,避障策略停止,飛機(jī)飛往目標(biāo)點(diǎn)。經(jīng)過試飛驗(yàn)證,即使在小范圍試飛試驗(yàn)中,使用該不平等原則的避障策略也可以得到很好的避障效果,避免了在試飛試驗(yàn)中由于策略過多而導(dǎo)致計(jì)算量特別大,也降低了系統(tǒng)判斷觸發(fā)條件的錯誤率,提高了試飛驗(yàn)證的效率。
圖9 基于不平等原則的避障策略Fig.9 The flow of obstacle avoidance strategy based on unequal principle
編隊(duì)軟硬件均采用模塊化設(shè)計(jì)的思路,在完成多個多旋翼無人機(jī)編隊(duì)控制系統(tǒng)的硬件平臺搭建以及編隊(duì)控制策略與算法的設(shè)計(jì)之后,需要通過試飛測試編隊(duì)控制系統(tǒng)的可靠性和穩(wěn)定性。上文所設(shè)計(jì)的航跡規(guī)劃、任務(wù)分配以及避碰算法都需要試飛來驗(yàn)證算法的可行性。編隊(duì)飛行控制軟件如圖10所示。
圖10 編隊(duì)飛行控制軟件Fig.10 Formation flight control software
整個試飛驗(yàn)證的任務(wù)剖面圖分為:起飛段、集結(jié)段、任務(wù)完成段、返航段和著陸段,其中任務(wù)完成段包括五種隊(duì)形的隊(duì)形構(gòu)建飛行、隊(duì)形保持飛行、隊(duì)形重構(gòu)飛行,以及待命飛機(jī)的進(jìn)出。圖11所示為五種隊(duì)形的編隊(duì)飛行試驗(yàn)任務(wù),其中(a)起飛;(b)集結(jié);(c)水平編隊(duì)變換;(d)水平編隊(duì)保持;(e)垂直編隊(duì)變換;(f)三角形編隊(duì)變換;(g)三角形編隊(duì)保持;(h)梯形編隊(duì)變換;(i)梯形編隊(duì)保持;(j)棱形編隊(duì)變換;(k)棱形編隊(duì)保持;(l)編隊(duì)返回集結(jié)點(diǎn)并降落。
圖11 五種編隊(duì)隊(duì)形飛行試驗(yàn)任務(wù)Fig.11 Five formation flight test mission
圖12 心形編隊(duì)Fig.12 Heart-shaped formation
圖13 真實(shí)場景下飛行效果Fig.13 Actual flight effect
本文以5架六旋翼無人機(jī)為研究對象,重點(diǎn)研究了基于自組網(wǎng)策略的多旋翼無人機(jī)隊(duì)形組成、隊(duì)形保持、隊(duì)形重構(gòu)以及飛行過程中的避碰策略:
1)研究了平行編隊(duì)、縱向編隊(duì)、三角形編隊(duì)、梯形編隊(duì)和五菱形編隊(duì)在實(shí)戰(zhàn)應(yīng)用中具有的重要意義,并分析了隊(duì)形組成、保持和重構(gòu)的過程。
2)研究了基于ACA的多無人機(jī)路徑規(guī)劃算法,并設(shè)計(jì)了隊(duì)形生成和隊(duì)形轉(zhuǎn)換控制指令。
3)設(shè)計(jì)了基于不平等原則的多無人機(jī)避障策略,該策略根據(jù)相對ID大小依次通過避障觸發(fā)區(qū)域。最后設(shè)計(jì)了數(shù)據(jù)閉環(huán)的地面編隊(duì)控制軟件,并進(jìn)行真實(shí)場景下的試飛驗(yàn)證,試飛結(jié)果表明本文提出的基于自組網(wǎng)策略的多旋翼無人機(jī)隊(duì)形組成、隊(duì)形保持、隊(duì)形重構(gòu)以及飛行過程中的避碰策略具有很好的工程經(jīng)驗(yàn)指導(dǎo)。