劉 琨,黃大慶,韓玉潔,萬思鈺
(1.南京航空航天大學電子信息工程學院,江蘇南京 210016;2.南京航空航天大學無人駕駛飛機研究所,江蘇 南京 210016)
近年來無人機技術蓬勃發展,無人機與有人機相比擁有很多優點。例如,無人機的成本遠低于有人機,并且無人機在執行任務時比有人機更加靈活,被敵方攻擊時并不會像有人機一樣造成飛行員的傷亡等。無人機在許多方面得到了大量的應用,例如對戰場環境內目標的偵察監視[1]、多架無人機之間進行通信中繼[2]、攜帶載荷對區域內的敵方目標進行精確打擊[3]等,已成為未來智能化、無人化作戰的重要手段之一[4-5],并且具有執行戰場任務效率高、抗敵防擊打能力強[6-7]等優點。
UAV 實際的應用場景是較復雜的戰場環境,戰場環境中存在著各種地形威脅、敵方威脅等。單架UAV 由于自身性能更容易受到各種限制,例如航行時間限制等,所以目前主要作戰的形勢是多架無人機一起共同合作去執行戰場中復雜的任務[8]。多架無人機共同合作組成無人機群執行戰場任務是目前無人機作戰應用的重要模式[9]。單架無人機與多架無人機協同執行作戰任務相比較,在無人機數量和協同配合方面處于劣勢[10]。當地方區域內火力攻擊我方正在執行任務的UAV 時,若只有一架UAV 執行任務,則該UAV 被擊中墜毀造成任務失敗的可能性遠遠大于多架UAV 協同執行某一任務。在復雜的戰場環境下,為了完成一定的復雜任務,我方派出多架無人機協同合作共同搜索尋找地方區域中存在的目標并且進行無人機最優飛行航跡的規劃。文中針對以上問題,提出一套多機協同搜索問題的完整解決方案,設計了多UAV 協同搜索系統的操作系統,并且給出了詳細的軟件設計細節。
在敵我雙方作戰過程中,需要了解敵方區域內目標位置、各種威脅信息等,這樣才能掌握敵方區域情報。UAV獲取敵方區域信息的方式叫做偵察,進行戰場區域內的敵方目標搜索是偵察方式的一種[11],執行搜索任務的目的是盡可能多地發現戰場區域內存在的未知敵方目標、降低未知戰場環境的不確定度。
圖1 表示多UAV 協同區域搜索的任務場景,假設戰場區域內的敵方目標和各種威脅的位置信息是未知的。我方派出多架UAV 自身攜帶機載探測傳感器,同時假設UAV 具備一定的自主控制力和決策力,集群UAV 之間可以進行通信,多架UAV 在戰場環境下進行目標搜索航跡規劃任務,由此獲取敵方的目標位置信息和戰場區域內的各種威脅信息。

圖1 UAV飛行場境
1.2.1 單架無人機系統架構
單架無人機系統架構如圖2 所示。
如圖2 所示,由于合適的CPU 可以為上層處理算法奠定基礎,所以選擇合適的CPU 對后續系統的搭建至關重要。

圖2 單架無人機系統架構
執行任務的過程中,不需獲取UAV 飛行過程中的姿態角、俯仰角等信息。驅動層的作用是支持無人機獲取飛行姿態等信息,與此同時,UAV 自身攜帶的探測傳感器還需要添加GPS、云臺相機、無線通信等模塊。系統層主要進行任務調度和控制協調,對集成的軟硬件進行分配,處理獲取的傳感器數據并控制人機交互和姿態。應用層可以分為UAV 搜索、在線決策、信息交互3 個模塊。UAV 集群搜索是在未知環境下實現感知與目標追蹤,信息交互是指在多UAV 之間、UAV 與地面站之間實現信息共享,從而實現戰場信息共享和任務協同,UAV 之間需要共享的信息包括自身在執行任務過程中的位置信息、搜索到敵方目標的位置信息等。
1.2.2 信息交互
由于系統是多UAV 協同執行任務,所以UAV 在空中不僅需要進行數據采集,并且要在空中與其他UAV 進行信息交互。信息交互需要考慮數據融合和網絡連接兩個方面。數據融合指與其他UAV 共享和融合采集到的數據,生成完整的環境圖片,進而完成對未知環境的目標搜索過程;網絡連接是指UAV集群之間、UAV 與地面站之間的通信。圖3 為UAV集群之間、UAV 與地面站之間進行信息交互的示意圖。為了能夠持續不斷地進行機間通信,每架UAV之間的距離都不能超過通信設備的最大通信限制距離。

圖3 信息交互系統示意圖
信息交互系統由地面站、UAV和數據傳輸模塊組成。根據定位系統將自身UAV 位置通過無線傳輸模塊傳給地面站和集群內其他UAV,同時根據多UAV 協同搜索系統中的通信機制,將各自搜索到的戰場區域的信息進行融合,并且通過數據傳輸模塊將多UAV 對戰場區域的搜索結果發送給地面站進行顯示。
文中系統的硬件平臺采用圖4 所示的四旋翼和六旋翼無人機,同時UAV 機載云臺相機以此獲取高分辨率的圖像,同時利用機載計算平臺搜索到敵方目標所在位置的信息,同時將獲取到的數據通過數傳電臺傳回地面,地面需要配備一臺基于Windows操作系統的筆記本用來接收從空中實時傳輸回來的數據。表1 為四旋翼和六旋翼硬件參數。

表1 無人機結構和性能參數

圖4 M100四旋翼和M600六旋翼
多架UAV 在航飛的過程中通過自身攜帶的GPS測量獲得自身的位置信息,同時與其他UAV 進行機間信息交互共享探測到的區域內的信息[12],因此該導航采取在線處理方式。Manifold 妙算實物圖像如圖5 所示,Manifold 妙算的基本參數如表2 所示。

圖5 Manifold妙算實物

表2 Manifold妙算結構和性能參數
在UAV 視覺導航中,獲取畫面清晰、高質量、不失真的圖像起著至關重要的作用。系統通過在UAV上加入Zenmuse X3 云臺相機載荷,來獲取高質量、清晰的圖像。這個云臺相機像素為1 240 萬,每秒可全像素拍攝7 張畫面,可以滿足系統視覺導航的設計需求。Zenmuse X3 云臺相機如圖6 所示,性能參數如表3 所示。

表3 Zenmuse X3云臺相機結構性能參數

圖6 Zenmuse X3云臺相機
機器人技術的迅速發展使得對機器人模塊代碼復用率的需求逐漸增強[13],ROS(Robot OperatingSystem)是基于提高模塊化利用率設計的機器人操作系統。ROS 并不是實際的操作系統[14],ROS 用來為多UAV 協同搜索系統提供操作系統功能框架和一些需要的工具集[15-16]。系統中,每個任務是由不同節點負責的,節點與節點之間通過邏輯通道進行消息的傳遞,從而實現節點之間的通信。圖8 為多UAV 節點狀態示意圖,A和B 為兩個異構UAV,UAV內部的各個節點可以通過邏輯通道進行通信,同時無人機A和無人機B 之間也可以通過邏輯通道進行通信。

圖7 多UAV節點狀態示意圖
文中在設計多UAV 協同搜索系統軟件部分時,將軟件部分分為視覺檢測識別、集群控制、UAV 飛行任務管理3 個模塊,如圖8 所示。

圖8 系統軟件模塊依賴關系圖
多UAV 執行協同搜索任務過程中,首先要設置多架UAV 在同一時刻起飛,基于鯨魚算法對待搜索區域執行搜索偵查任務,并且將搜索偵查過程中懷疑是目標點的位置進行標記。集群控制模塊同時將標定的信息地圖發送給智能決策模塊;UAV 對待搜索區域的遍歷、地面站對數據信息的接收和對控制指令的發送等功能都是由集群控制模塊控制的。UAV 飛行狀態的更新是由地面站向集群控制模塊發送信號進行控制的。
The authors are grateful to CINVESTAV del I.P.N. for providing the resources to carry out this work.
3.2.1 視覺檢測識別模塊
視覺檢測模塊總體流程如圖9 所示。

圖9 視覺檢測模塊總體流程
3.2.2 UAV飛行任務管理模塊
多UAV 協同搜索系統中需要不同的應用程序擁有不同的能力來完成各種任務。執行UAV 飛行任務管理模塊前,需要得到UAV 開發者權限,DJISDK 負責提供相應的函數接口,地面站調用的函數在模塊中進行封裝。當獲得控制權后,UAV 將啟動電機同時進行初始化和通信連接,利用DJI-SDK 接口獲取UAV 飛行參數,完成一系列飛行操作。
UAV 飛行階段的任務流程管理示意圖如圖10所示。

圖10 飛行任務管理系統示意圖
飛行任務管理模塊的功能為獲取各個UAV的信息,例如各UAV的位置信息、速度大小和姿態角等;建立全局信息目標概率地圖,為了發送UAV 信息同時接收控制指令還需要與地面站建立通信連接;規劃任務流程,進行航跡規劃覆蓋搜索區域。


3.2.3 集群控制模塊
集群控制模塊中訂閱與發布的關系如下:協同控制節點發布期望速度信息與本機實際速度和位置信息,訂閱其他UAV 信息和實際自身信息,該節點功能是運行協同控制算法。通信節點訂閱所有UAV信息、任務信息、路徑信息和本機速度與位置,發布所有UAV 信息并且發布路徑規劃初始參數。飛行控制節點主要進行飛控程序的運行,訂閱期望UAV速度信息,發布實際自身位置、速度等信息。任務分配節點主要運行任務程序,訂閱所有UAV 信息,發布需要執行的任務信息。航跡規劃節點主要運行航跡規劃算法程序,發布路徑信息。
在UAV 系統中,UAV 與地面軟件系統之間需要進行頻繁的數據交換和信息交流。地面軟件系統可以通過數傳電臺與無人機進行通信,實時在線獲得UAV 位置和性能數據。地面站系統會根據UAV 在執行任務的過程中通過GPS 所獲取自身的航跡進行展示,并且地面站可以設置每架UAV 飛行的航跡點等。在地面站上設置搜索區域,控制UAV 完成搜索任務。
首先,確認UAV 是否能正常飛行;然后,在UAV上安裝機翼和通信模塊;最后,啟動地面站。使用數傳或者數據線連接飛控,點擊設置航線,增加航點和起飛降落點,最后上傳航線規劃,然后點擊一鍵起飛,UAV 將按照設置的航線進行區域內的目標搜索,然后將規劃的UAV 飛行航跡通過界面顯示出來。
文中首先根據實際戰場情況,模擬搭建了飛行場景,并且按照實際系統需求搭建了硬件平臺;然后提出了多架UAV 協同合作對某一任務區域執行搜索任務的操作系統,并對系統結構進行了搭建與分析;最后設計了一個用于進行UAV 調試的地面站軟件。文中在搭建硬件平臺的同時,描述了相關模塊的設計與選型。提出的多UAV 協同區域搜索系統是基于機器人操作系統設計的,同時又將該系統詳細的劃分為視覺檢測識別、集群控制、UAV 飛行任務管理三大模塊。最后設計的地面站軟件用來進行UAV 飛行數據的處理、設置指令對飛行任務進行命令控制,并且顯示UAV的飛行航跡。