白杰
航空電子系統(tǒng)發(fā)展經(jīng)歷了分立式航電系統(tǒng)、聯(lián)合式航電系統(tǒng)、綜合模塊化航電系統(tǒng)幾個(gè)階段,逐漸向著開(kāi)放式、通用化方向發(fā)展。FACE標(biāo)準(zhǔn)規(guī)范化了可移植組件間信息傳輸格式,建立了標(biāo)準(zhǔn)的接口,減少了組件間的數(shù)據(jù)轉(zhuǎn)換,數(shù)據(jù)模型作為軟件層間交流的標(biāo)準(zhǔn)模式,為平臺(tái)間軟件模塊的通用提供了解決方案。本文在研究FACE架構(gòu)及數(shù)據(jù)模型的基礎(chǔ)上,構(gòu)建了基于FACE標(biāo)準(zhǔn)的無(wú)人機(jī)飛行管理功能數(shù)據(jù)模型。
隨著高性能計(jì)算機(jī)的發(fā)展,航電系統(tǒng)架構(gòu)由“專用”系統(tǒng)向“開(kāi)放”系統(tǒng)轉(zhuǎn)變,綜合化、模塊化的程度逐步加深。模塊化開(kāi)放式系統(tǒng)采用模塊化的、接口定義明確的行業(yè)接口標(biāo)準(zhǔn)的系統(tǒng)設(shè)計(jì),在軟件架構(gòu)方面,目前的平臺(tái)軟件架構(gòu)層次不夠清晰,不夠系統(tǒng)化;另外,目前的方案沒(méi)有系統(tǒng)配置功能,不能根據(jù)不同的需求來(lái)定制不同的安全級(jí)別。因此,需要在整個(gè)軟件層面建立一套層次化、系統(tǒng)化的可移植的架構(gòu)標(biāo)準(zhǔn),使系統(tǒng)更少的依賴于專利產(chǎn)品,可以通過(guò)更多的競(jìng)爭(zhēng)降低價(jià)格,降低項(xiàng)目的風(fēng)險(xiǎn),獲得多生產(chǎn)廠商的支持。
FACE架構(gòu)功能簡(jiǎn)介
未來(lái)機(jī)載能力環(huán)境( Future AirborneCapability Environment,F(xiàn)ACE)是由美國(guó)海軍航空兵電子項(xiàng)目辦公室在2012設(shè)計(jì)出并由FACE協(xié)會(huì)使用的技術(shù)標(biāo)準(zhǔn),相繼發(fā)布了1.0、2.O版本,2014年發(fā)布了2.1版本。該技術(shù)標(biāo)準(zhǔn)用于軟件通用操作環(huán)境的開(kāi)發(fā),從而在整個(gè)軍事航空界推進(jìn)可移植性以及軟件產(chǎn)品線的創(chuàng)建。FACE解決方案擴(kuò)展了模塊化開(kāi)放式系統(tǒng)的設(shè)計(jì)思想,它將一些基于軟件的功能“分層”以組件形式開(kāi)發(fā)。該組件通過(guò)定義好的接口向其他組件開(kāi)放,并且對(duì)特定關(guān)鍵接口及“分層”接口之間的差異進(jìn)行了定義。
FACE標(biāo)準(zhǔn)作為處于硬件之上的軟件通用操作環(huán)境標(biāo)準(zhǔn),采用層次化架構(gòu)設(shè)計(jì),包括:操作系統(tǒng)層、輸入/輸出(l/O)服務(wù)層、特殊平臺(tái)服務(wù)層(PSS)、傳輸服務(wù)層(TSS)、可移植組件層(PCS)通過(guò)這種分層設(shè)計(jì),很好地解決了應(yīng)用程序的可移植性的問(wèn)題。同時(shí),由于可移植組件的設(shè)計(jì)和層間接口標(biāo)準(zhǔn)化,其可移植性不光存在于可移植組件層,其他層也具有可移植性。
(1)操作系統(tǒng)層
操作系統(tǒng)位于所有部分的底層,給其他層軟件提供接口。
(2)I/0服務(wù)層
I/O服務(wù)層的軟件負(fù)責(zé)系統(tǒng)設(shè)備驅(qū)動(dòng)和特定平臺(tái)服務(wù)層間的數(shù)據(jù)傳輸。這層是與底層的供應(yīng)商提供驅(qū)動(dòng)交流的適配器模式,給上層FACE標(biāo)準(zhǔn)化的接口提供轉(zhuǎn)化后的數(shù)據(jù)。當(dāng)編碼廢棄或者是驅(qū)動(dòng)改變的情況發(fā)生時(shí),I/O層只需更改適配器即可。由于改變所帶來(lái)的影響都被封裝在了適配器中,所以其它層軟件不需要另外的改變。
(3)特定平臺(tái)服務(wù)層
特定平臺(tái)服務(wù)層包含傳統(tǒng)軟件架構(gòu)中與特定平臺(tái)設(shè)備ICD緊耦合的那部分,規(guī)范或者封裝與FCAE系統(tǒng)相關(guān)的設(shè)備管理業(yè)務(wù),提供的數(shù)據(jù)通過(guò)傳輸層傳輸給可移植組件,作為其平臺(tái)數(shù)據(jù)源。
(4)傳輸服務(wù)層
傳輸服務(wù)層是數(shù)據(jù)的中間傳輸層,使FACE應(yīng)用不需知道數(shù)據(jù)終端在什么地方,就可以達(dá)到數(shù)據(jù)傳輸?shù)侥康?。同時(shí)可以通過(guò)這層中間層,降低特定平臺(tái)服務(wù)層中組件變化給可移植組件層組件帶來(lái)的影響。
(5)可移植組件層
可移植組件層封裝了FACE系統(tǒng)的邏輯控制業(yè)務(wù)和與平臺(tái)無(wú)關(guān)的航電通用功能,由一系列可移植FACE應(yīng)用和通用服務(wù)組成,當(dāng)這些服務(wù)一起工作時(shí)提供平臺(tái)級(jí)別的能力。
可移植組件集(Uop)
在不同平臺(tái)上使用相同功能時(shí),可能因?yàn)楣?yīng)商不同需要重新開(kāi)發(fā),顯然這樣是不劃算的。如果任務(wù)級(jí)別功能具備可移植性,那么在需求發(fā)生改變時(shí),就可以減少源代碼的更改,整合和維護(hù)等工作量也會(huì)相應(yīng)減少。FACE Uop的構(gòu)建符合以下標(biāo)準(zhǔn):
(1)包括所有相關(guān)軟件、非標(biāo)準(zhǔn)編程語(yǔ)言運(yùn)行庫(kù)、庫(kù)、程序語(yǔ)言框架。
(2)提供一個(gè)或多個(gè)服務(wù)或任務(wù)級(jí)別功能。
(3)一個(gè)FACE Uop只能存在于一個(gè)層或者子層中,不能跨層存在。但是可以將一些Uop打包成一個(gè)可以跨層存在的邏輯實(shí)體。
(4)一個(gè)FACE Uop只能單獨(dú)存在于一個(gè)分區(qū)中,如果Uop中包含編程語(yǔ)言運(yùn)行庫(kù)或程序框架時(shí),那么他們?cè)谝粋€(gè)單獨(dú)的分區(qū)中通過(guò)多重Uop執(zhí)行。當(dāng)Uop移植到另外的分區(qū)、平臺(tái)上時(shí),編程語(yǔ)言運(yùn)行庫(kù)或程序框架隨之移植。
(6) FACE Uop之間在進(jìn)行數(shù)據(jù)傳輸是必須使用TS接口、I/O服務(wù)接口、編程語(yǔ)言運(yùn)行庫(kù)、程序框架接口、操作系統(tǒng)接口之一。
(7) Uop的子集在FACE不同層中執(zhí)行,在進(jìn)行數(shù)據(jù)傳輸時(shí),語(yǔ)言運(yùn)行庫(kù)應(yīng)符合FACE相應(yīng)接口。
(8)不同層中Uop之間進(jìn)行通信時(shí)使用相應(yīng)接口。
(9)非標(biāo)準(zhǔn)框架或者編程語(yǔ)言運(yùn)行庫(kù)經(jīng)常包含于Uop中,并且符合FACE定義接口。
對(duì)于UoP間通信情況,見(jiàn)圖]。Uop內(nèi)部組件間通信可以使用TS接口或直接通信。F-Uop中軟件實(shí)體間使用TS接口進(jìn)行通信時(shí),就不再需要使用專用內(nèi)部通信方式。通過(guò)對(duì)整體應(yīng)用的解耦,分解成更多的Uop,可以將已存在的銷售商產(chǎn)品線遷移成更高度的模塊化產(chǎn)品,同時(shí)多種通信方式降低了轉(zhuǎn)化難度。
數(shù)據(jù)模型
FACE層間通過(guò)指令、請(qǐng)求、位置信息、高度信息、電壓、電流等數(shù)據(jù)進(jìn)行數(shù)據(jù)交互,但是很多時(shí)候,由于數(shù)據(jù)繁多龐大,不同廠商設(shè)備或者應(yīng)用中數(shù)據(jù)格式、單位、范圍等定義不同造成接口不匹配問(wèn)題,浪費(fèi)開(kāi)發(fā)時(shí)間。數(shù)據(jù)模型為軟件層間的交流提供了標(biāo)準(zhǔn)模式。通過(guò)嚴(yán)格定義唯一性模型,能保證它們不可被復(fù)制且能容易的添加其他的數(shù)據(jù)參數(shù),便于開(kāi)發(fā)者區(qū)分全部信息,在需要改變時(shí),能以最少改變被處理成符合FACE數(shù)據(jù)模型的部分,消除了許多開(kāi)發(fā)過(guò)程中多個(gè)供應(yīng)商之間橫向接口不匹配的問(wèn)題。
FACE數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)過(guò)程依次為:概念到邏輯;邏輯到平臺(tái);平臺(tái)到可移植單元;可移植單元到代碼,如圖2所示。
概念模型包括基本的概念,這些概念包括整體的屬性和整體間的關(guān)系。
邏輯數(shù)據(jù)模型實(shí)體由概念數(shù)據(jù)模型實(shí)體創(chuàng)建而來(lái)。一個(gè)概念數(shù)據(jù)模型實(shí)體可能由多個(gè)邏輯數(shù)據(jù)模型實(shí)體實(shí)現(xiàn)。邏輯數(shù)據(jù)模型基礎(chǔ)元素通過(guò)提煉概念數(shù)據(jù)模型元素創(chuàng)建,包括單位、度量、坐標(biāo)系、值域、約束條件和度量精度等詳細(xì)信息。
平臺(tái)數(shù)據(jù)模型中的實(shí)體與邏輯數(shù)據(jù)模型中的實(shí)體相關(guān)。數(shù)據(jù)模型實(shí)體由邏輯數(shù)據(jù)模型實(shí)體創(chuàng)建而來(lái)。平臺(tái)數(shù)據(jù)模型支持的物理數(shù)據(jù)類型符合接口定義語(yǔ)言(IDL)數(shù)據(jù)類型:布爾型、字符型、枚舉等。從平臺(tái)數(shù)據(jù)模型映射到程序語(yǔ)言有標(biāo)準(zhǔn)的語(yǔ)言映射規(guī)范。語(yǔ)言連結(jié)為通過(guò)TS接口傳輸?shù)男畔?shù)據(jù)結(jié)構(gòu)提供了識(shí)別功能,保證了組件在API上的可移植性。
Uop模型為Uop提供了信息接口識(shí)別功能。在Uop中,信息接口識(shí)別為端口,為了識(shí)別信息類型,在平臺(tái)數(shù)據(jù)模型中信息接口表現(xiàn)為視圖。平臺(tái)數(shù)據(jù)模型中的視圖在UOP中表現(xiàn)為通過(guò)TSS API傳輸?shù)男畔ⅰ?/p>
FACE數(shù)據(jù)模型語(yǔ)言連結(jié)是對(duì)PDM映射到程序語(yǔ)言的一系列設(shè)置。不同的語(yǔ)言,映射過(guò)程不同。語(yǔ)言連接定義了如何從平臺(tái)數(shù)據(jù)模型視圖生成代碼。
基于數(shù)據(jù)模型的組件接口實(shí)現(xiàn)
典型無(wú)人機(jī)飛行管理功能主要實(shí)現(xiàn)飛控計(jì)算機(jī)、起落架控制裝置、電氣系統(tǒng)設(shè)備的控制管理。功能實(shí)現(xiàn)包括飛行管理組件、飛控控制組件、起落架控制組件、電氣控制組件、傳輸服務(wù)組件和1553B服務(wù)組件,組件間通信示意圖如下:
概念模型
飛行管理組件從飛控控制處接收起落架收放、剎車控制盒加電斷電請(qǐng)求,獲得高度、經(jīng)緯度等數(shù)據(jù);向起落架控制發(fā)送起落架收、起落架放兩個(gè)標(biāo)準(zhǔn)化的指令,接收起落架狀態(tài)信息;向電氣控制發(fā)送剎車控制盒斷電、剎車控制盒加電、空速加溫器供電指令。將飛行管理功能作為Uop進(jìn)行建模,概念模型如下:
飛行管理接收飛控計(jì)算機(jī)的請(qǐng)求、數(shù)據(jù),向飛控計(jì)算機(jī)返回指令執(zhí)行狀態(tài),向起落架控制發(fā)送指令,接收起落架控制返回的狀態(tài),向電氣控制發(fā)送指令,接收電氣控制返回的狀態(tài),所以這七個(gè)元素可作為概念元素。
邏輯模型
飛行管理向起落架控制發(fā)送的指令是復(fù)合測(cè)量值,由信息ID和指令編碼兩個(gè)獨(dú)立測(cè)量值組成,均為枚舉量,代表不同指令內(nèi)容。其他指令、請(qǐng)求邏輯模型構(gòu)建類似。
起落架控制向飛行管理返回狀態(tài),狀態(tài)是復(fù)合測(cè)量值,由信息ID、指令編碼、執(zhí)行結(jié)果、工作狀態(tài),校驗(yàn)和組成,除校驗(yàn)和之外幾個(gè)參數(shù)均為枚舉量。
飛控控制向飛行管理發(fā)送空速管加溫器加電、起落架收、起落架放、剎車控制盒加電、剎車控制盒斷電請(qǐng)求,三個(gè)請(qǐng)求均為復(fù)合測(cè)量值,包括信息ID、指令編碼兩個(gè)獨(dú)立測(cè)量值。
飛控控制向飛行管理發(fā)送高度數(shù)據(jù),高度數(shù)據(jù)為獨(dú)立測(cè)量值,詳細(xì)信息如圖6所示:
飛行管理接收請(qǐng)求后返回請(qǐng)求執(zhí)行狀態(tài),狀態(tài)是復(fù)合測(cè)量值,包括信息ID、請(qǐng)求編碼、執(zhí)行結(jié)果、工作狀態(tài)。
飛行管理向起電氣控制發(fā)送空速管加溫器加電指令、起落架收、起落架放指令,指令為復(fù)合測(cè)量值,由信息ID和指令編碼兩個(gè)獨(dú)立測(cè)量值組成,均為枚舉值,代表不同指令內(nèi)容。
電氣控制向飛行管理返回狀態(tài),狀態(tài)是復(fù)合測(cè)量值,由信息ID(枚舉值)、指令編碼、執(zhí)行結(jié)果、工作狀態(tài)和校驗(yàn)和組成。
平臺(tái)模型
下一步為指令的消息ID、指令編碼,請(qǐng)求的消息ID、請(qǐng)求編碼,狀態(tài)的消息ID、指令編碼等測(cè)量值創(chuàng)建平臺(tái)展示,創(chuàng)建展示測(cè)量值的IDL實(shí)例。復(fù)合測(cè)量值使用IDL結(jié)構(gòu)體實(shí)現(xiàn)。
對(duì)各組件接收請(qǐng)求或指令后返回狀態(tài)創(chuàng)建平臺(tái)展示,返回狀態(tài)為復(fù)合測(cè)量值,使用IDL結(jié)構(gòu)體實(shí)現(xiàn),使用IDL實(shí)現(xiàn)狀態(tài)復(fù)合測(cè)量值中的信息ID、指令/請(qǐng)求編碼、執(zhí)行結(jié)果、工作狀態(tài)和校驗(yàn)和測(cè)量值。
首先是飛行管理向起落架控制指令的平臺(tái)模型創(chuàng)建,指令使用IDL結(jié)構(gòu)體實(shí)現(xiàn),兩個(gè)獨(dú)立測(cè)量值由IDL實(shí)現(xiàn),定義其數(shù)據(jù)類型(其他指令平臺(tái)構(gòu)建過(guò)程類似),詳細(xì)信息見(jiàn)圖7:
飛行管理向電氣控制發(fā)送指令的平臺(tái)模型創(chuàng)建過(guò)程同上。
飛控計(jì)算機(jī)向飛行管理發(fā)送的請(qǐng)求使用IDL結(jié)構(gòu)體實(shí)現(xiàn),信息ID和請(qǐng)求編碼兩個(gè)獨(dú)立測(cè)量值由IDL實(shí)現(xiàn),分別定義其數(shù)據(jù)類型,定義枚舉量的個(gè)數(shù)及含義。
飛控計(jì)算機(jī)向飛行管理發(fā)送的高度數(shù)據(jù)創(chuàng)建平臺(tái)展示,使用IDL實(shí)現(xiàn)高度測(cè)量值,詳細(xì)信息如下:
然后對(duì)各組件接收請(qǐng)求或指令后返回狀態(tài)創(chuàng)建平臺(tái)展示,返回狀態(tài)為復(fù)合測(cè)量值,使用IDL結(jié)構(gòu)體實(shí)現(xiàn),使用IDL實(shí)現(xiàn)狀態(tài)復(fù)合測(cè)量值中的信息ID、指令/請(qǐng)求編碼、執(zhí)行結(jié)果、工作狀態(tài)和校驗(yàn)和測(cè)量值。
Uop模型
當(dāng)測(cè)量值映射到IDL概念后,就可以創(chuàng)建組件中輸入和輸出的信息平臺(tái)視圖。飛行管理從飛控計(jì)算機(jī)處獲得請(qǐng)求和高度數(shù)據(jù),從起落架控制和電氣控制處獲得狀態(tài)信息,對(duì)電氣控制和起落架控制發(fā)出指令,對(duì)飛控計(jì)算機(jī)返回狀態(tài)。為飛行管理Uop建模和確定其特征,為每個(gè)輸入輸出定義端口,描述使用端口通信的信息,將信息類型映射到端口。詳細(xì)信息如下:
使用相應(yīng)軟件實(shí)現(xiàn)代碼的映射,即可完成可移植組件層與特定平臺(tái)服務(wù)層的接口的標(biāo)準(zhǔn)化。
總結(jié)
基于FACE的無(wú)人機(jī)飛行管理功能構(gòu)建的數(shù)據(jù)模型,為軟件層間提供了標(biāo)準(zhǔn)的交流模式,數(shù)據(jù)模型使軟件分析、設(shè)計(jì)之初就是標(biāo)準(zhǔn)的模式,從而保障后續(xù)的設(shè)計(jì)、實(shí)踐、維護(hù)中軟件的復(fù)用性,更好地兼容平臺(tái),使航電軟件更加類似于智能手機(jī)應(yīng)用,在不影響其他系統(tǒng)的情況下非常方便增加或減少一個(gè)給定的應(yīng)用,為在多個(gè)平臺(tái)上復(fù)用提供了可能?;贔ACE的航電軟件數(shù)據(jù)模型構(gòu)建,對(duì)提高軟件開(kāi)發(fā)質(zhì)量,增強(qiáng)架構(gòu)中應(yīng)用、層間數(shù)據(jù)傳輸?shù)臉?biāo)準(zhǔn)性、可復(fù)用性,進(jìn)而降低開(kāi)發(fā)成本,節(jié)約開(kāi)發(fā)時(shí)間有重要指導(dǎo)意義。