賈 雨 ,吳海東 ,齊禪穎 ,王 爽
(1.中國(guó)飛行試驗(yàn)研究院陜西西安710089;2.西安遠(yuǎn)方航空技術(shù)發(fā)展總公司陜西西安710089)
隨著新型、大型飛機(jī)不斷發(fā)展及機(jī)上設(shè)備的升級(jí),在對(duì)其進(jìn)行試飛測(cè)試時(shí)需要測(cè)試參數(shù)數(shù)量和參數(shù)種類(lèi)越來(lái)越多,且傳輸量呈爆炸式增長(zhǎng)[1]。在這種新形勢(shì)下,采用網(wǎng)絡(luò)化機(jī)載測(cè)試架構(gòu)越來(lái)越成為試飛測(cè)試方案設(shè)計(jì)的主流,機(jī)載測(cè)試各子系統(tǒng)間通過(guò)以太網(wǎng)實(shí)現(xiàn)互聯(lián)、機(jī)載測(cè)試數(shù)據(jù)的海量傳輸以及多源數(shù)據(jù)融合處理,成為一個(gè)新的發(fā)展趨勢(shì)。IENA網(wǎng)絡(luò)數(shù)據(jù)實(shí)時(shí)解析[2]。作為機(jī)載實(shí)時(shí)數(shù)據(jù)處理[3-4]的中心環(huán)節(jié),既要實(shí)時(shí)準(zhǔn)確從測(cè)試網(wǎng)絡(luò)獲取所需測(cè)試參數(shù)IENA數(shù)據(jù)包,又要求其能夠從所獲取網(wǎng)絡(luò)包中快速提取解算所需參數(shù)[5]。用于實(shí)時(shí)監(jiān)控畫(huà)面顯示或者提交給座艙顯示儀、水配重等系統(tǒng)。參試的機(jī)上試飛工程師從而可以及時(shí)根據(jù)系統(tǒng)解析處理好的監(jiān)控參數(shù),判定被測(cè)飛機(jī)狀態(tài)及試飛科目完成質(zhì)量,并及時(shí)與試飛員溝通,進(jìn)而提高科目試飛過(guò)程安全性及效率。
文中結(jié)合某型飛機(jī)試飛實(shí)時(shí)監(jiān)控試驗(yàn)需求,系統(tǒng)介紹了機(jī)載IENA網(wǎng)絡(luò)數(shù)據(jù)實(shí)時(shí)處理系統(tǒng)架構(gòu)、數(shù)據(jù)解析方法及關(guān)鍵技術(shù)分析。并有效解決了網(wǎng)絡(luò)包時(shí)間對(duì)齊及無(wú)丟包100%參數(shù)處理問(wèn)題。
機(jī)載實(shí)時(shí)數(shù)據(jù)處理系統(tǒng)由前端網(wǎng)絡(luò)化數(shù)據(jù)采集、IENA包接收解算、客戶(hù)端數(shù)據(jù)分發(fā)組成,各子系統(tǒng)由航空機(jī)載交換機(jī)實(shí)現(xiàn)互連。當(dāng)前試飛測(cè)試網(wǎng)絡(luò)化架構(gòu)采集器[6-7]主要包括KAM500及UMA2000,該兩種采集器均以IENA網(wǎng)絡(luò)數(shù)據(jù)包的形式進(jìn)行測(cè)試數(shù)據(jù)的傳輸記錄[8-9]。IENA數(shù)據(jù)實(shí)時(shí)處理系統(tǒng)與前端采集系統(tǒng)進(jìn)行網(wǎng)絡(luò)連接,并通過(guò)解析其參數(shù)配置文件獲取相關(guān)參數(shù)結(jié)構(gòu)信息,然后通過(guò)SOCKET套接字方式對(duì)IENA包進(jìn)行監(jiān)聽(tīng),根據(jù)參數(shù)結(jié)構(gòu)提取需要的參數(shù)并利用校準(zhǔn)信息進(jìn)行工程量轉(zhuǎn)化、存儲(chǔ)與客戶(hù)端的實(shí)時(shí)數(shù)據(jù)分發(fā)。監(jiān)控客戶(hù)端作為測(cè)試參數(shù)的顯示終端,實(shí)時(shí)接收IENA數(shù)據(jù)處理軟件分發(fā)的解算好的工程量并進(jìn)行顯示與監(jiān)控。系統(tǒng)結(jié)構(gòu)圖如圖1所示。
圖1 系統(tǒng)結(jié)構(gòu)圖
飛行測(cè)試設(shè)備(FTI)采用IENA數(shù)據(jù)格式實(shí)現(xiàn)測(cè)試數(shù)據(jù)從采集單元到處理單元的傳輸,該格式是從空客A380項(xiàng)目開(kāi)始第一次被使用。這種格式允許一種信號(hào)格式來(lái)輸出多種不同的數(shù)據(jù)格式(比如ARINC,AFDX,CAN,模擬量等等)。
IENA是在傳輸層之上由FTI使用的特殊格式,F(xiàn)TI網(wǎng)絡(luò)基于典型以太網(wǎng)并且使用UDP/IP協(xié)議傳輸IENA數(shù)據(jù),共定義了5種不同類(lèi)型的參數(shù),如圖2所示,包括D型-標(biāo)準(zhǔn)含時(shí)延域參數(shù)、N型-標(biāo)準(zhǔn)無(wú)時(shí)延域參數(shù)、M型-含時(shí)延域消息參數(shù)、M型-無(wú)時(shí)延域消息參數(shù)、P型-位置參數(shù)。對(duì)于采用何種參數(shù)類(lèi)型依賴(lài)于采集的數(shù)據(jù)特征以及處理數(shù)據(jù)的方式。對(duì)于每個(gè)給定的IENA鍵值,其中只會(huì)包含一種參數(shù)類(lèi)型。
通過(guò)FTI網(wǎng)絡(luò)進(jìn)行構(gòu)建和傳送IENA包的主要規(guī)則如下:
1)一個(gè)系統(tǒng)可以傳送多個(gè)鍵值的IENA包。
2)給定IENA鍵值的所有的包僅包含一個(gè)類(lèi)型的參數(shù)。參數(shù)的數(shù)量以及其出現(xiàn)的順序可以在不同包之間有所不同。
3)每個(gè)參數(shù)只能分配一個(gè)IENA鍵值(即
使機(jī)載處理系統(tǒng)可以復(fù)制用于遠(yuǎn)程傳送的5個(gè)特殊鍵值中的一個(gè))。
4)IENA包被轉(zhuǎn)化成UDP數(shù)據(jù)包以通過(guò)FTI以太網(wǎng)發(fā)送。IENA包不能被分成多個(gè)不同的UDP數(shù)據(jù)包。
每個(gè)IENA包應(yīng)簽署一個(gè)UDP目標(biāo)端口和一個(gè)IP目標(biāo)地址(不同的鍵值或許會(huì)有相同的UDP、IP目標(biāo)地址)。
圖2 IENA參數(shù)結(jié)構(gòu)
5)同UDP數(shù)據(jù)包最大大小一樣(或是發(fā)送數(shù)據(jù)包的閾值),每個(gè)IENA包最大大小可被定義好并且可以從過(guò)配置文件來(lái)配置。
6)潛伏期,數(shù)據(jù)從采集到IENA包發(fā)送,通過(guò)整個(gè)采集系統(tǒng)的時(shí)間(包含創(chuàng)建IENA包和UDP數(shù)據(jù)包的時(shí)間),不能超過(guò)FTI系統(tǒng)規(guī)定值。典型值是50 ms,通常情況下潛伏時(shí)間會(huì)取代IENA包或UDP大小限制。
由各個(gè)數(shù)據(jù)采集系統(tǒng)采集到得數(shù)據(jù),首先被轉(zhuǎn)換成IENA格式,然后通過(guò)FTI網(wǎng)絡(luò)發(fā)送至記錄裝置以及數(shù)據(jù)處理系統(tǒng)。從而分發(fā)類(lèi)型為1發(fā)射機(jī)/N接收機(jī)。此外,有些機(jī)載設(shè)備接收到的數(shù)據(jù)可能會(huì)被一起計(jì)算處理[10],然后重新通過(guò)網(wǎng)絡(luò)發(fā)送(計(jì)算的參數(shù)),例如本文所述的機(jī)載測(cè)試數(shù)據(jù)實(shí)時(shí)處理。
IENA網(wǎng)絡(luò)包監(jiān)聽(tīng)捕獲完成與機(jī)載測(cè)試網(wǎng)絡(luò)的連接,接收測(cè)試網(wǎng)絡(luò)中的IENA數(shù)據(jù)包。機(jī)載測(cè)試網(wǎng)絡(luò)中,由數(shù)臺(tái)KAM500或UMA2000采集器進(jìn)行各種類(lèi)型測(cè)試參數(shù)的采集,并封裝為IENA格式數(shù)據(jù)包在FTI網(wǎng)絡(luò)中以UDP組播形式進(jìn)行傳輸,網(wǎng)絡(luò)中的各種測(cè)試設(shè)備根據(jù)實(shí)際需求獲取各自所需測(cè)試參數(shù),網(wǎng)絡(luò)數(shù)據(jù)實(shí)時(shí)處理軟件作為機(jī)載測(cè)試網(wǎng)絡(luò)上的一部分,首先需要與該FTI網(wǎng)絡(luò)建立連接,實(shí)現(xiàn)測(cè)試數(shù)據(jù)的接收及挑選,并保證數(shù)據(jù)的實(shí)時(shí)性和穩(wěn)定性。
根據(jù)以太網(wǎng)五層模型結(jié)構(gòu)[11],網(wǎng)絡(luò)數(shù)據(jù)實(shí)時(shí)處理軟件可以從數(shù)據(jù)鏈路層到應(yīng)用層4個(gè)不同的分層分別獲取不同封裝類(lèi)型的數(shù)據(jù)包,對(duì)于數(shù)據(jù)處理軟件來(lái)說(shuō)從越上層的協(xié)議獲取的數(shù)據(jù)包進(jìn)行處理時(shí)越簡(jiǎn)單。IENA屬于應(yīng)用層協(xié)議,因此如果能夠從應(yīng)用層進(jìn)行數(shù)據(jù)捕獲將會(huì)直接獲得IENA網(wǎng)絡(luò)包進(jìn)行處理,然而當(dāng)前機(jī)載采集器中并沒(méi)有在應(yīng)用層中定義實(shí)現(xiàn)相應(yīng)的數(shù)據(jù)傳輸協(xié)議,而是采用傳輸層的UDP/IP協(xié)議將多個(gè)IENA數(shù)據(jù)包封裝在UDP組播[12]。數(shù)據(jù)包中進(jìn)行網(wǎng)絡(luò)傳輸,因此,IENA實(shí)時(shí)處理軟件在此利用套接字的方式進(jìn)行測(cè)試參數(shù)數(shù)據(jù)包的監(jiān)聽(tīng)捕獲,這雖然會(huì)導(dǎo)致接收到的數(shù)據(jù)首先需要進(jìn)行IENA數(shù)據(jù)包的提取,但同時(shí)可以避免抓取下層協(xié)議數(shù)據(jù)包時(shí)由于MTU限制造成的數(shù)據(jù)分包問(wèn)題,從而節(jié)約大量的組包時(shí)間。
套接字作為網(wǎng)絡(luò)應(yīng)用編程常用接口,應(yīng)用程序在使用它進(jìn)行網(wǎng)絡(luò)通信時(shí)能夠在傳輸層對(duì)數(shù)據(jù)進(jìn)行傳輸控制,而不需要過(guò)多關(guān)注底層細(xì)節(jié)。IENA網(wǎng)絡(luò)數(shù)據(jù)實(shí)時(shí)處理軟件根據(jù)采集器XML配置文件的組播地址及端口,利用創(chuàng)建組播套接字,加入機(jī)載測(cè)試網(wǎng)絡(luò),以實(shí)時(shí)獲取網(wǎng)絡(luò)中的測(cè)試參數(shù)網(wǎng)絡(luò)包。數(shù)據(jù)的獲取流程如圖3所示。
圖3 數(shù)據(jù)獲取流程
數(shù)據(jù)解析處理根據(jù)數(shù)據(jù)包的結(jié)構(gòu)以及配置文件中參數(shù)的位置定義,將所需參數(shù)原碼從實(shí)時(shí)數(shù)據(jù)流中提取出來(lái),然后利用事先定義好的參數(shù)校準(zhǔn)信息實(shí)現(xiàn)碼值到工程量的轉(zhuǎn)化,數(shù)據(jù)解析過(guò)程如圖4所示。
圖4 數(shù)據(jù)解析流程圖
通過(guò)套接字捕獲的UDP數(shù)據(jù)包中通常包含多個(gè)不同類(lèi)型的IENA包,因此,網(wǎng)絡(luò)數(shù)據(jù)實(shí)時(shí)處理軟件在進(jìn)行測(cè)試參數(shù)的解析處理時(shí),首先需要根據(jù)IENA包的構(gòu)建和傳送規(guī)則將其從UDP包中準(zhǔn)確定位并提取出來(lái)。然后,根據(jù)根據(jù)五種不同類(lèi)型IENA包的結(jié)構(gòu)及配置文件中各測(cè)試參數(shù)的位置定義分別從不同的IENA包中進(jìn)行提取校準(zhǔn)[13]。
目前,在試飛測(cè)試參數(shù)工程量轉(zhuǎn)化中,常用參數(shù)校準(zhǔn)方式有點(diǎn)對(duì)校準(zhǔn)、直線校準(zhǔn)、多項(xiàng)式校準(zhǔn)等類(lèi)型,IENA實(shí)時(shí)處理系統(tǒng)針對(duì)各種不同校準(zhǔn)類(lèi)型設(shè)計(jì)對(duì)應(yīng)的算法實(shí)現(xiàn)碼值到工程量的轉(zhuǎn)化。最后,通過(guò)與客戶(hù)端事先約定好的通信協(xié)議,將提取解算好的工程量分發(fā)到監(jiān)控終端或其他測(cè)試設(shè)備進(jìn)行實(shí)時(shí)監(jiān)控或者二次處理再顯示。
針對(duì)飛行試驗(yàn)網(wǎng)絡(luò)IENA數(shù)據(jù)包,每個(gè)單獨(dú)的IENA數(shù)據(jù)包甚至每一個(gè)參數(shù)都帶有自己獨(dú)立的時(shí)標(biāo)。同一監(jiān)控科目所需要參數(shù)往往存在于多個(gè)不同IENA數(shù)據(jù)包中,且這些IENA包由于參數(shù)類(lèi)型及采樣率的不同往往不是在同一時(shí)刻采集得到的,即不同IENA包中的測(cè)試參數(shù)的通常不是在同一時(shí)刻采集的,但是試飛數(shù)據(jù)分析卻又要求在同一的時(shí)標(biāo)下進(jìn)行數(shù)據(jù)的分析。針對(duì)該采集特性,對(duì)于飛行試驗(yàn)事后數(shù)據(jù)處理而言,針對(duì)不同需求通??梢圆捎脭?shù)據(jù)擬合[14]或臨近點(diǎn)逼近的方法實(shí)現(xiàn)不同參數(shù)間的時(shí)間對(duì)齊[15]。而實(shí)時(shí)監(jiān)控對(duì)數(shù)據(jù)的快速實(shí)時(shí)處理具有很高的要求[16],為快速進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)包的時(shí)統(tǒng)分析,在此采用幾乎零耗時(shí)的臨近點(diǎn)逼近策略,并采用提高參數(shù)采樣率及客戶(hù)端顯示刷新速率來(lái)減少不同參數(shù)的對(duì)時(shí)誤差,將其控制在完全符合實(shí)時(shí)監(jiān)控需求的10 ms級(jí)誤差范圍以?xún)?nèi)。
IENA為網(wǎng)絡(luò)化測(cè)試架構(gòu),所有測(cè)試參數(shù)以網(wǎng)絡(luò)包的方式在測(cè)試網(wǎng)絡(luò)上進(jìn)行傳輸,測(cè)試網(wǎng)絡(luò)數(shù)據(jù)流量達(dá)到30 Mbps以上并且網(wǎng)絡(luò)數(shù)據(jù)包的大小不均勻,理論上機(jī)載網(wǎng)絡(luò)數(shù)據(jù)實(shí)時(shí)處理軟件如果對(duì)接收到的UDP數(shù)據(jù)包不能及時(shí)進(jìn)行處理就會(huì)導(dǎo)致丟包現(xiàn)象的出現(xiàn),從而導(dǎo)致實(shí)時(shí)監(jiān)控參數(shù)的缺失,所以對(duì)接收解析的IENA數(shù)據(jù)包進(jìn)行丟包檢測(cè)就非常有必要。軟件為了實(shí)現(xiàn)IENA數(shù)據(jù)包的100%處理,采用共享內(nèi)存及多線程處理技術(shù),對(duì)不同類(lèi)型的數(shù)據(jù)包分配各自的處理線程,實(shí)現(xiàn)了軟件在數(shù)據(jù)帶寬達(dá)到55 Mbps的情況下的IENA包無(wú)丟包處理,并對(duì)內(nèi)存管理進(jìn)行優(yōu)化,采用雙緩存區(qū)進(jìn)行數(shù)據(jù)存儲(chǔ)。
該機(jī)載網(wǎng)絡(luò)數(shù)據(jù)實(shí)時(shí)處理軟件,已成功應(yīng)用于某型飛機(jī)地面聯(lián)試試驗(yàn)及滑行試驗(yàn)過(guò)程中的機(jī)載網(wǎng)絡(luò)化測(cè)試數(shù)據(jù)處理解析當(dāng)中。試驗(yàn)結(jié)果表明該軟件運(yùn)行穩(wěn)定,實(shí)時(shí)處理及顯示參數(shù)不少于2 000個(gè),方便試飛工程師對(duì)試飛數(shù)據(jù)有效性快速做出判斷,同時(shí),對(duì)IENA數(shù)據(jù)包中的時(shí)間戳的合理處理方式,有效地解決了監(jiān)控參數(shù)時(shí)鐘同步分析問(wèn)題,滿足了該機(jī)測(cè)試需求。同時(shí)該軟件對(duì)關(guān)鍵技術(shù)的突破為以后的機(jī)載實(shí)時(shí)數(shù)據(jù)處理技術(shù)及網(wǎng)絡(luò)化遙測(cè)數(shù)據(jù)處理積累了寶貴的經(jīng)驗(yàn)。
參考文獻(xiàn):
[1]劉明.新一代試飛測(cè)試系統(tǒng)架構(gòu)及其應(yīng)用[J].計(jì)算機(jī)測(cè)量與控制,2014,22(6).
[2]霍朝暉,張建琳,顏義紅.未來(lái)戰(zhàn)機(jī)光纖通道航電總線試飛測(cè)試技術(shù)探析[J].測(cè)控技術(shù),2011,30(8):75-78.
[3]王延路,袁炳南,劉語(yǔ)喬.民機(jī)試飛空地一體化綜合監(jiān)控網(wǎng)絡(luò)系統(tǒng)技術(shù)研究[J].現(xiàn)代電子技術(shù),2012,35(15):110-112.
[4]宗思瑤.機(jī)載實(shí)時(shí)數(shù)據(jù)處理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].西安:西安電子科技大學(xué),2013.
[5]王延路,袁炳南,劉語(yǔ)喬.民機(jī)試飛空地一體化綜合監(jiān)控網(wǎng)絡(luò)系統(tǒng)技術(shù)研究[J].現(xiàn)代電子技術(shù),2012,35(15):110-112.
[6]劉明.新一代試飛測(cè)試系統(tǒng)架構(gòu)及其應(yīng)用[J].計(jì)算機(jī)測(cè)量與控制,2014,22(6):1729-1731.
[7]田方正,王錦.機(jī)載網(wǎng)絡(luò)化測(cè)試系統(tǒng)框架設(shè)計(jì)技術(shù)研究[J].測(cè)控技術(shù),2013,32(4):9-11.
[8]霍朝暉,魏建新,覃燕.飛行試驗(yàn)機(jī)載網(wǎng)絡(luò)數(shù)據(jù)采集與分析技術(shù)[J].現(xiàn)代電子技術(shù),2011,34(11):144-147.
[9]段寶元,穆永花,穆永河.以太網(wǎng)在新支線飛機(jī)試飛測(cè)試中的應(yīng)用[J].測(cè)控技術(shù),2011,30(4):91-93.
[10]李士麗.基于以太網(wǎng)絡(luò)試飛數(shù)據(jù)處理[C]//2014航空試驗(yàn)測(cè)試技術(shù)學(xué)術(shù)交流會(huì)論文集,2014.
[11]劉寧,呂鯤.實(shí)時(shí)以太網(wǎng)系統(tǒng)中控制與通信的協(xié)同調(diào)度方法[J].計(jì)算機(jī)工程與應(yīng)用,2017(7):15-20.
[12]陸宣德.基于IP組播的安全通信技術(shù)研究[J].移動(dòng)信息,2016(9):62-63.
[13]王仲杰.試飛參數(shù)測(cè)試系統(tǒng)校準(zhǔn)周期優(yōu)化管理策略研究[J].國(guó)外電子測(cè)量技術(shù),2017(3):91-93.
[14]劉明,李文輝,黃福貴.多項(xiàng)式響應(yīng)面代理模型在直升機(jī)飛行性能計(jì)算中的應(yīng)用[J].直升機(jī)技術(shù),2013(2):20-23.
[15]彭國(guó)金,劉嫚婷.非結(jié)構(gòu)化海量網(wǎng)絡(luò)數(shù)據(jù)處理技術(shù)研究[J].現(xiàn)代電子技術(shù),2011,34(14):121-123.
[16]田斐斐,張楠.試飛階段系統(tǒng)綜合診斷能力量化評(píng)估方法[J].航空維修與工程,2015(12):65-68.