張大高
摘 要 為適應(yīng)新一代控制站發(fā)展需求,從軟件框架結(jié)構(gòu)、通用接口協(xié)議、通信服務(wù)、組件化模式以及多信息融合5個方面講述了無人機控制站軟件通用化開發(fā)設(shè)計約束。并對控制站監(jiān)控軟件的典型應(yīng)用進行功能分配。
【關(guān)鍵詞】無人機控制站 監(jiān)控軟件 通用化設(shè)計
1 引言
無人機的控制站是無人機系統(tǒng)的重要組成部分,是無人機系統(tǒng)的指揮控制中心,可以完成無人機的操縱、數(shù)據(jù)鏈管理、機載任務(wù)設(shè)備控制,以及無人機全機狀態(tài)監(jiān)控、任務(wù)載荷信息處理與顯示、任務(wù)規(guī)劃、多信息融合等功能。而控制站監(jiān)控軟件(簡稱監(jiān)控軟件)則是控制站的最重要的組成之一,是人與控制站交互的主要手段和渠道。目前,國內(nèi)外都在極大對控制站的研究力度,根據(jù)需求的引導(dǎo),無人機的控制站正向著多元化發(fā)展。從規(guī)模上可簡單的分為大型站、小型站以及便攜站等。而這些控制站都有著共同發(fā)展趨勢或特點:
1.1 多樣化的部署方式
從部署方式上,分為空機部署方式、地面部署方式和?;渴鸱绞?。其中地面部署方式應(yīng)用最多,有分為固定式和車載移動式。
1.2 高智能化
隨著人工智能發(fā)展,未來的無人機系統(tǒng)將會是具備智慧的系統(tǒng),短期內(nèi),無人機系統(tǒng)將會是“飛行員/操作員決策”+“智能控制站”+“智能無人機平臺”的工作模式。無人機平臺和控制站完成大部分信息處理,判斷、分析以及一些簡單的決策。而人則僅僅參與重要/核心的決策。
1.3 高通用性
隨著無人機型號越來越多,應(yīng)用越來越廣泛,一套通用化的控制站越來越顯得格外重要。隨著無人機市場發(fā)展,必然會出現(xiàn)對應(yīng)的標(biāo)準(zhǔn)與規(guī)范,大家按照同一套標(biāo)準(zhǔn)與規(guī)范,達(dá)到控制的互通,即使用一個控制站可控制多個或多種無人機。
1.4 智能的人機交互
未來無人直升機,新技術(shù)、新材料的推廣和應(yīng)用,新一代智能的人機交互系統(tǒng),逼真的仿真體驗、友好用戶操控。特別是作戰(zhàn)用的無人機,信息總類與數(shù)量很大,高信息融合。除此之外,隨著無人機型號越來越多,用戶對無人機的互操作性提出了更高的要求。這就要求人機交互界面的OOP(操作程序)就像汽車的顯示與操作流程一樣,有統(tǒng)一的規(guī)范和標(biāo)準(zhǔn)。
1.5 復(fù)雜的環(huán)境使用策略
單一的無人機系統(tǒng)執(zhí)行任務(wù)的時代慢慢離我們遠(yuǎn)去。多無人機機協(xié)同、有人機無機人協(xié)同以及多任務(wù)協(xié)同的腳步已經(jīng)越來越近。隨著無人機發(fā)展,民用空域越來越多,特別是在通航開放以后,將會出現(xiàn)更多種類的空域細(xì)分。高復(fù)雜度的空域?qū)⑹菬o人機系統(tǒng)必須面臨的問題,因此要求控制站能適應(yīng)復(fù)雜的使用環(huán)境。
為了適應(yīng)以上無人機系統(tǒng)的發(fā)展,需要新一代的通用型控制站,同時慢慢衍生出相應(yīng)的通用化規(guī)范與標(biāo)準(zhǔn)。而通用型控制站的設(shè)計很大取決于控制站監(jiān)控軟件的通用化設(shè)計。本文則講述我們在通用化監(jiān)控軟件的方法與思路。
2 控制站監(jiān)控軟件通用化開發(fā)設(shè)計
針對我們單位當(dāng)前無人直升機的型號特點與發(fā)展需求,主要從層次化架構(gòu)、通用接口協(xié)議、通信服務(wù)、組件化軟件結(jié)構(gòu)、多信息融合等5個方面,講述控制站監(jiān)控軟件通用設(shè)計主要思路與設(shè)計約束。
2.1 層次化構(gòu)架
無人機控制站監(jiān)控軟件架構(gòu)采用分層結(jié)構(gòu),將系統(tǒng)軟件架構(gòu)劃分為系統(tǒng)屏蔽層、集成工具層、應(yīng)用控件層。該分層結(jié)構(gòu)實現(xiàn)了各層之間、各功能模塊之間的松耦合交聯(lián)關(guān)系,便于系統(tǒng)的聯(lián)合開發(fā)與升級擴展,如圖1所示。
2.1.1 系統(tǒng)屏蔽層
系統(tǒng)屏蔽層為了使地面站相關(guān)的應(yīng)用軟件在各個操作系統(tǒng)平臺下均能夠正常穩(wěn)定的運行,建設(shè)一套專屬的跨平臺軟件適配層。通過系統(tǒng)屏蔽層該無人機控制站監(jiān)控軟件可以運行在Windows、Linux操作系統(tǒng),實現(xiàn)地面站訪問操作系統(tǒng)的管控,同時對應(yīng)用軟件提供一致的訪問層,支撐地面站應(yīng)用軟件的開發(fā)與運行。
通過抽象技術(shù),把應(yīng)用程序的核心部分分離出來,把代碼的移植工作集中在抽象層,提供軟件架構(gòu)中各個層次間的標(biāo)準(zhǔn)服務(wù)接口,以屏蔽應(yīng)用軟件模塊對底層軟件運行環(huán)境的依賴,以最小的代價完成代碼的移植。將硬件抽象化,隱藏了特定平臺的硬件接口細(xì)節(jié),為操作系統(tǒng)提供虛擬硬件平臺,使其具有硬件無關(guān)性。
2.1.2 集成工具層
應(yīng)用集成框架是控制站監(jiān)控軟件的基礎(chǔ)運行環(huán)境,以開放式技術(shù)體系結(jié)構(gòu)、數(shù)據(jù)分布式通信服務(wù)等技術(shù)為核心,為系統(tǒng)集成提供模塊集成、信息處理集成、人機界面集成、通信服務(wù)集成等功能。面向服務(wù)的軟件架構(gòu)允許用戶向軟件框架中集成一系列標(biāo)準(zhǔn)的服務(wù)。在這種設(shè)計思路下,通過將GIS訪問、數(shù)據(jù)庫訪問、界面管理等常用公共服務(wù)集成在軟件框架內(nèi),并向應(yīng)用軟件暴露統(tǒng)一的接口,以服務(wù)中間件的形式存在,可以為不同的應(yīng)用軟件提供標(biāo)準(zhǔn)的公共服務(wù),在應(yīng)用軟件之間共享,一方面降低了應(yīng)用軟件的重復(fù)開發(fā)工作,另一方面,標(biāo)準(zhǔn)化的接口也為軟件的安全性、可移植性提供了保障。
在集成工具層還包含了大量輔助開發(fā)測試工具,如通信接口測試工具、控件管理工具、界面布局工具等。
2.1.3 應(yīng)用控件層
應(yīng)用控件層由控件組成,控件是基本的功能單元,是實現(xiàn)業(yè)務(wù)邏輯、功能服務(wù)的主體。當(dāng)用戶的行為和數(shù)據(jù)模型改變時,接收并處理事件命令,觸發(fā)業(yè)務(wù)邏輯,調(diào)用相應(yīng)的功能服務(wù)進行業(yè)務(wù)處理,并通過相應(yīng)的表現(xiàn)視圖將處理結(jié)果顯示出來??紤]到不同無人機型號顯示控制的特殊性,可以將控件分為通用控件和專有控件。通用控件可滿足不同型號需求,而專有控件則是針對具體型號和任務(wù)設(shè)備進行開發(fā),滿足特殊需求。
2.2 通用接口協(xié)議
無人機控制站監(jiān)控軟件按功能可簡單的分為飛行監(jiān)控類、任務(wù)監(jiān)控類、任務(wù)規(guī)劃類、鏈路/通信監(jiān)控類以及情報與態(tài)勢處理類。針對每一類軟件,我們自定義一種通用接口協(xié)議。這種通用接口協(xié)議采用“固定+可變”結(jié)構(gòu)格式。對于目前無人機系統(tǒng)已經(jīng)成熟各種指令的類型進行固化,同時預(yù)留了指令擴展空間。
為兼顧已有的不同類型的無人機,并支持未來無人機的通信的通用化需求,需制定一個通用協(xié)議集,從而逐步實現(xiàn)地面站對各型無人機的互操作。
若無人機不支持通用協(xié)議集的約定,則需要經(jīng)過飛行器專用協(xié)議轉(zhuǎn)換模塊進行轉(zhuǎn)換,采用此方式可以向下兼容已有型號的無人機。反之,若無人機完全支持通用協(xié)議集的約定,則不需要單獨的飛行器專用協(xié)議轉(zhuǎn)換模塊進行轉(zhuǎn)換,如圖2所示。
2.3 通信服務(wù)
通用數(shù)據(jù)傳輸服務(wù)以一系列標(biāo)準(zhǔn)服務(wù)接口實現(xiàn)應(yīng)用軟件模塊間的邏輯數(shù)據(jù)通道,從而解除核心軟件邏輯對數(shù)據(jù)傳輸細(xì)節(jié)的依賴??蓪崿F(xiàn)周期、離散、非周期消息等類型的數(shù)據(jù)格式的傳遞;為了解決不同硬件平臺、操作系統(tǒng)、編程環(huán)境下的差異,實現(xiàn)分布式異構(gòu)環(huán)境下對應(yīng)用層數(shù)據(jù)交互行為的統(tǒng)一規(guī)范,實現(xiàn)不同系統(tǒng)下的資源共享,提升應(yīng)用軟件可移植致性的問題,使用DDS軟總線,以滿足所有控件的通信需求。
DDS定義了分布式實時系統(tǒng)中數(shù)據(jù)發(fā)布、傳遞和接收的接口和行為,定義了以數(shù)據(jù)為中心的發(fā)布/訂閱機制,提供了一個與平臺無關(guān)的數(shù)據(jù)模型,該模型能夠映射到各種具體的平臺和編程語言。此外DDS去中心化的對等架構(gòu)設(shè)計允許應(yīng)用在運行期間被自動發(fā)現(xiàn)和連接。它具有以下優(yōu)勢:
(1)降低系統(tǒng)耦合;
(2)屏蔽異構(gòu)系統(tǒng)的復(fù)雜性;
(3)屏蔽網(wǎng)絡(luò)通信細(xì)節(jié);
(4)提高應(yīng)用伸縮性;
(5)加快開發(fā)進度,減少技術(shù)負(fù)擔(dān)。
同時提供了豐富的實時QoS(Quality of Service),即可以滿足應(yīng)用的各種性能和對資源的控制要求,包括可靠性、數(shù)據(jù)的持久度、數(shù)據(jù)的歷史記錄、周期數(shù)據(jù)的超時、基于時間的過濾、數(shù)據(jù)的所有權(quán)、分區(qū)、資源限制等,并且提供每一個主題、每一個訂閱者的定制化QoS服務(wù)。
經(jīng)實踐證明,引入DDS后,當(dāng)影響系統(tǒng)復(fù)雜度的因素大量增加時,使用DDS數(shù)據(jù)通信服務(wù)明顯降低了系統(tǒng)復(fù)雜度,如圖3所示。
2.4 組件化軟件結(jié)構(gòu)
規(guī)范構(gòu)件標(biāo)準(zhǔn)及安裝管理操作,并支持構(gòu)件的動態(tài)升級及通信。構(gòu)件遵循我們自定義的一種內(nèi)部標(biāo)準(zhǔn)。它具有以下特點:
2.4.1 支持模塊化的動態(tài)部署
可以以模塊化的方式動態(tài)地部署至框架中,從而增加、擴展或改變系統(tǒng)的功能。
2.4.2 支持模塊化的封裝和交互
可以將系統(tǒng)按照模塊或其他方式劃分為不同的工程,使得模塊從物理上隔離。
2.4.3 支持模塊的動態(tài)配置
基礎(chǔ)平臺軟件通過提供配置管理服務(wù)來實現(xiàn)模塊的動態(tài)配置和統(tǒng)一管理,基于此服務(wù)各模塊的配置可在運行期間進行增加、修改和刪除。
2.4.4 模塊化的設(shè)計
可以定義模塊的范圍、模塊對外提供的服務(wù)和所依賴的服務(wù)。
2.4.5 可擴展的設(shè)計
可以采用可擴展式的設(shè)計,即可通過系統(tǒng)中預(yù)設(shè)的擴展點來擴充系統(tǒng)的功能。
2.5 多信息融合
多信息融合態(tài)勢系統(tǒng),是在支持?jǐn)?shù)據(jù)庫信息、動態(tài)情報信息、民用信息、無人機狀態(tài)信息等多種信息的情況下,基于虛擬現(xiàn)實技術(shù),構(gòu)建逼真的虛擬場景態(tài)勢,以一種全新的方式增強操作員對整個態(tài)勢的感知與把握。有力的提高無人機系統(tǒng)的飛行、偵查、作戰(zhàn)、評估等能力。
3 控制站監(jiān)控軟件通用功能設(shè)計
上文從層次化架構(gòu)、通用化接口協(xié)議、數(shù)據(jù)通信服務(wù)、組件化軟件架構(gòu)以及多信息融合等5個方面,從軟件開發(fā)與維護的角度闡述了某型地面站軟件通用化設(shè)計的思路。而對于控制站監(jiān)控軟件通用化設(shè)計來說,人機交互和功能的通用化設(shè)計是非常重要的。
控制站監(jiān)控軟件的功能以一般主要包括飛行監(jiān)控、任務(wù)監(jiān)控、鏈路監(jiān)控、任務(wù)規(guī)劃、綜合態(tài)勢與信息處理以及綜合HUD顯控等。由于應(yīng)用控件是整個監(jiān)控軟件的最基本的功能單元,與實現(xiàn)主體。因此對于整個控制站監(jiān)控軟件的每個功能都有若干應(yīng)用控件/功能單元組成。通過面向服務(wù)軟件集成框架,將一個或多個構(gòu)件組合在一起,然后加載配置與定義模塊功能實現(xiàn)軟件功能與人機交互界面的布局,同時軟件集成架構(gòu)為構(gòu)件的加載和運行提供了生命周期管理、服務(wù)管理、事件管理等服務(wù)。根據(jù)加載控件不同,輸出不同的功能應(yīng)用軟件。圖4為控制站監(jiān)控軟件結(jié)構(gòu)圖。
對于最后通過軟件集成框架生成應(yīng)用軟件的功能組成有對應(yīng)的要求與規(guī)范,現(xiàn)將功能應(yīng)用軟件的典型功能進行分配,當(dāng)然根據(jù)用戶特殊要求可以刪減功能組成。
飛行監(jiān)控主要包含典型的功能單元(控件)如下:
(1)PFD信息:余度融合后速度、高度、航向、姿態(tài)等信息;
(2)EMS信息:轉(zhuǎn)速、燃油信息、滑油信息、壓力信息、溫度信息等;
(3)飛行信息:飛行模式、航線信息、已飛與待飛信息、燃油匹配信息等;
(4)飛機系統(tǒng)狀態(tài)信息:電器信息、傳動系統(tǒng)信息、控制距量/舵量等;
(5)故障及告警信息:無人機全系統(tǒng)告警信息;
(6)輔助決策信息:針對告警信息的一些應(yīng)急策略與處理意見,只提供處理方案,由操作員決策;
(7)信息輸出:根據(jù)用戶需求定制對外輸出信息內(nèi)容以及一些告警指示燈輸出;
(8)飛行控制:控制桿、油門桿、硬件按鍵、軟件按鍵、控制遙調(diào)等信息捕獲,控制指令生成與發(fā)送,該模塊可獨立成軟件配置項;
(9)其他專有信息等:其他信息。
鏈路監(jiān)控主要包含典型的功能單元(控件)如下:
(1)鏈路選擇:鏈路選擇等;
(2)鏈路狀態(tài)信息:工作頻段、發(fā)射功率等;
(3)天線伺服:伺服狀態(tài)信息;
(4)鏈路控制:頻段控制、鏈路控制、功率控制;
任務(wù)規(guī)劃主要包含典型的功能單元(控件)如下:
(1)鏈路選擇:選擇不同通信鏈路;
(2)任務(wù)場景建立:戰(zhàn)區(qū)、任務(wù)區(qū)、空域、規(guī)避區(qū)、威脅區(qū)等建立、任務(wù)類型等;
(3)航路規(guī)劃:離線規(guī)劃、在線規(guī)劃、航線安全分析等;
(4)任務(wù)設(shè)備使用規(guī)劃:任務(wù)設(shè)備及傳感器等使用規(guī)劃;
(5)鏈路通信規(guī)劃:鏈路工作模式、使用類型、開啟靜默時間等;
(6)編隊規(guī)劃:無人機編隊信息;
(7)武器規(guī)劃:武器使用提示信息;
(8)信息輸出:將任務(wù)規(guī)劃結(jié)果通過特定格式輸出上報指揮決策;
任務(wù)監(jiān)控主要包含典型的功能單元(控件)如下:
(1)光電監(jiān)控:光電吊艙控制與狀態(tài)監(jiān)測;
(2)雷達(dá)偵察監(jiān)控:雷達(dá)偵察設(shè)備控制與狀態(tài)監(jiān)測;
(3)中繼設(shè)備監(jiān)控:中繼設(shè)備控制與狀態(tài)監(jiān)測;
(4)其他任務(wù)設(shè)備:其他任務(wù)設(shè)備操控與狀態(tài)信息;
(5)信息輸出:將任務(wù)監(jiān)控信息通過特定格式輸出上報指揮決策;
綜合態(tài)勢主要包含典型的功能單元(控件)如下:
(1)三維地理信息:包含高程信息、地貌信息、人文信息等;
(2)無人機信息:無人機的站位等信息;
(3)空域信息:無人機工作區(qū)域空域信息;
(4)任務(wù)設(shè)備/傳感器信息:任務(wù)載荷設(shè)備/傳感器工作范圍等信息;
(5)無人機飛行信息:無人機的飛行航線相關(guān)信息;
(6)無人機協(xié)同信息:多無人機或無人機與有人機間協(xié)同作戰(zhàn)信息;
綜合HUD主要包含典型的功能單元(控件)如下:
(1)飛行監(jiān)控(精簡信息):精簡的飛行監(jiān)控信息;
(2)鏈路監(jiān)控(精簡信息):精簡的鏈路監(jiān)控信息;
(3)任務(wù)監(jiān)控(精簡信息):精簡的任務(wù)監(jiān)控信息;
(4)載荷監(jiān)控(精簡信息):精簡的載荷監(jiān)控信息;
(5)二維地圖及態(tài)勢(精簡信息):精簡的二維地圖和簡單態(tài)勢信息;
(6)控制管理:控制桿/手柄、周邊按鍵等設(shè)備控制權(quán)分配與管理、控制指令生成與發(fā)送等;
4 總結(jié)
軟件通用化設(shè)計是一種思想,在這種思想的指導(dǎo)下,降低軟件軟件開發(fā)周期與成本。在通用化設(shè)計的基礎(chǔ)和前提下,投入更多時間、人力到核心技術(shù)開發(fā)上。真正做到軟件智能化,讓軟件有智慧,從而使控制站是具備智慧的控制站,使無人機系統(tǒng)是智能的無人機系統(tǒng)。
參考文獻(xiàn)
[1]馬聰穎,高瑞周,朱玉祜.無人機地面控制站通用化軟件架構(gòu)[J].航空計算技術(shù),2013,43(03):112.
[2]王林,張慶杰,朱華勇.支持聯(lián)合作戰(zhàn)的UAS通用地面控制站研究[J].系統(tǒng)仿真學(xué)報,2008,20(22):6172.
[3]陳方明,陳奇.基于插件思想的可重用軟件設(shè)計與實現(xiàn)[J].計算機工程與設(shè)計,2005,26(01):172-173.