劉語喬,齊嬋穎,賈 雨
(中國飛行試驗研究院,西安 710089)
機載網絡數據實時處理系統設計
劉語喬,齊嬋穎,賈 雨
(中國飛行試驗研究院,西安 710089)
隨著C919等大型飛機的出現,測試系統對機載實時處理系統提出了更高的技術要求;機載網絡數據實時處理系統采用實時性較強的vxWorks開發環境,通過合理調配各個功能模塊之間的資源,即合理分配線程來實時的完成所有功能;經過科研試飛驗證,該系統具備3 000個參數的實時處理能力,系統運行穩定可擴展性強,滿足目前大飛機機上測試系統數據實時處理任務的要求,對保障大飛機試飛科目的順利進行具有積極的意義。
機載測試;實時處理;網絡數據;線程
縱觀國內外大飛機試飛情況,都非常重視機載實時數據處理系統的作用,如空客A380、波音787等。如波音公司的B747等飛機在試飛過程中,使用了“機載實時數據分析與監視系統”(ADAMS)。在長達10多個小時的試飛過程中,試飛工程師可對試飛科目的執行情況進行實時監控[1-2]。我國從上世紀80年代末也開始研制使用機載實時數據處理系統來執行機上實時監控任務,判定試驗機飛行動作完成質量并為試飛安全提供保障,典型的有運7系列飛機、空警2000、ARJ21等軍民用飛機[3]。
ARJ21試驗機總的測試參數有8 000多個,機載實時數據處理系統中涉及的有1 500多個,原始數據傳輸占用的帶寬為10 Mb/s,共有兩路PCM數據和4路網絡數據。隨著測試規模的擴大和其它測試需求的變化,以前傳統的測試系統受到了沖擊,PCM也暴露出了一些自身的不足和缺陷,如受碼速率和板卡通道容量限制的通道容量問題和布線問題[4]。
據統計,現階段試驗機實時數據處理能力要求已普遍提高,要求測試系統各模塊能夠接收和處理網絡數據的速率達到110 Mb/s,能夠完成采樣率64個點/秒的3 000個以上參數的實時提取和工程量轉化及實時發送等功能,這些技術要求給機載實時系統的設計與實現提出了一定的挑戰。
機載網絡數據實時處理系統實時接收機載數據采集系統核心交換機發出的網絡數據,并根據試飛前定義的采集器配置文件進行網絡包解析和監控參數過濾,將過濾后參數進行工程量轉換后分別發送至機上監控端,在監控端物理量數據以數字、曲線、儀表等可視化方式進行顯示,并可實現數據的100%存儲。
機載網絡數據實時處理系統采用典型C/S架構,實時接收機載數據采集系統核心網絡交換機發出的網絡數據包,并根據試飛前定義的采集器配置文件進行網絡數據包解析和監控參數的過濾,將過濾后的監控參數進行工程量轉換后分別發動到各監控終端進行進一步處理及顯示。機載網絡數據實時處理系統如圖1所示。

圖1 機載網絡數據實時處理系統
機載網絡數據實時處理系統由數據綜合處理單元(也即核心服務器)、監控終端和機載網絡交換機組成,通過千兆以太網絡實現各個子系統的互連。系統按照適應寬溫、抗沖擊振動、電磁兼容性符合國軍標等要求進行集成,電源系統采用28 V直流供電。
核心服務器完成配置管理、網絡數據接收、工程量轉換、數據轉發及存儲的功能。服務器軟件和監控軟件均在Borland C++ Builder 6.0編程環境下開發。監控軟件實時接收從核心服務器轉發的網絡數據,實時地以預設的各種形式進行顯示。
機載網絡數據實時處理系統設計具備以下主要功能:
1)配置管理:配合上位機完成配置管理功能,上位機可以對核心服務器進行以下配置:加載處理相關參數配置信息文件,以TCP/IP方式對服務器進行IP地址配置等,監視服務器丟包計數等工作狀態,對工程量數據進行監視[5]。
2)網絡數據接收和存儲:通過網絡交換機接收來自機載采集器的網絡數據并進行存儲,速率可達110 Mbps,其中實時處理系統參數不少于3 000個。
3)系統狀態監控:可發送服務器狀態信息用于實時監控,監控信息包括接收數據丟包技術、丟包率、位速率、文件大小、磁盤容量等狀態信息。
4)工程量轉換:根據參數配置信息,將參數按照不同的類型、校準方式等進行工程量轉換,可設置的校準類型包括線性、點對、多項式等。
5)數據網絡轉發:將參數的物理量數據,以網絡包的形式通過網絡交換機發送給監控臺端。
6)實時監控:在監控臺端,可對所有實時監控參數進行顯示,顯示形式有數字、文本、圖表、儀表等。一般根據試飛工程師預先設計的實時處理任務書中的要求,對顯示內容進行選擇和布局。所有專業實時監控軟件需保持界面風格統一、時延等性能指標參數滿足技術指標。
7)自動啟動:服務器掉電重啟后,軟件自動啟動運行。
機載網絡數據實時處理系統主要功能實現集中在核心服務器上,所以核心服務器的硬件設計也是整個系統設計的重點。監控終端主要完成來自于核心服務器轉發數據接收及參數測量量的顯示。
機載網絡數據實時處理系統的硬件設備包括核心服務器、監控終端和機載網絡交換機。其中核心服務器是該系統的核心設備,是系統主要功能的執行者,實現機載網絡包的實時接收與存儲、物理量轉換與轉發等核心功能,要求設備可靠性高、穩定性強、且滿足高低溫、振動、電磁兼容性指標的要求,以適應試飛過程中機上各種惡劣環境。
核心服務器采用了基于雙核處理器芯片、千兆以太網口的嵌入式計算機,配以高性能的內存和大容量的固態盤。主機采用了cPCI架構,該體系結構是當前標準化程度最高和實用性最好的體系結構。為了滿足高帶寬網絡數據的實時接收以及多任務處理要求,操作系統選用實時操作系統,且該系統支持多核處理器。核心服務器各模塊功能如下:主控制器完成系統的配置加載、初始化、數據包接收,參數工程量轉換和數據轉發;高速固態存儲模塊完成原始數據的存儲,同時可存儲配置文件;電源模塊將28 V電源轉換成系統各個模塊所需的直流供電;底板完成各個模塊間以及對外接口的互連,硬件框圖如圖2所示。

圖2 核心服務器硬件結構圖
其中主板模塊選用了HD7703MB這種高性能、多功能的單槽CPU板,整板主要器件幾乎都直接SMT表貼,最大程度減少連接器的不可靠因素,板載Inter? CoreTMI73555LE CPU四核處理器。
監控終端和機載網絡交換機選用了成熟貨架產片。其中監控終端選用了機載加固型工控機,顯示器也采用了能夠強化散熱、減震、抗沖擊和電磁兼容的設計。機載網絡交換機是系統中的重要設備,實現多臺采集器網絡數據流的匯聚,同時也可以實現數據流分流功能,主要滿足的技術指標有帶寬4 Gbps,傳輸速率100/1 000 M自適應,MAC表容量16 K,接口形式為航插,滿足-40~+75 ℃工作溫度,滿足GJB150.16~86振動范圍和GJB151A-97電磁兼容的要求。
機載網絡數據實時處理系統首先運行模塊為配置加載模塊,將所需配置信息和參數組信息存儲在緩存中,并對核心服務器進行初始化配置,然后創建數據流接收線程,核心服務器對數據流參數進行提取、工程量轉換,轉換結果通過網絡發送給客戶端。機載網絡數據實時處理系統的關鍵技術在于合理調配各個功能模塊之間的資源,也即合理分配線程來實時地完成所有功能模塊。其工作流程如圖3所示。

圖3 機載網絡數據實時處理系統工作流程圖
核心服務器上電啟動后,首先加載參數信息文件,參數配置信息文件,參數配置信息文件即為機載測試信息管理軟件生成的XML文件。XML文件中包含了參數數據包提取信息、校線信息以及監控參數列表等。
網絡數據接收模塊需創建UDP socket,接收網絡包數據。按順序執行數據接收、系統狀態獲取和參數提取工程量轉換。
數據接收按照環形緩存存儲控制過程。首先設置環形緩存新位置,接收到以太網數據后判斷是否滿524 288個字節,如果是則建立新數據包,填寫包頭信息后放入環形緩存,如果否則直接放入環形緩存,放入環形緩存后再判斷是否滿8 M字節,如果是則通知數據存儲線程后設置環形存儲新位置,如果否則直接設置環形緩存新位置。

圖4 網絡數據接收模塊流程圖
系統工作狀態獲取包括兩個部分:丟包計數和接收位速率計算。
根據每個數據包中的SeqNum值可對丟包情況進行統計。接收位速率的計算方法為:5秒鐘內收到數據的字節數*8/5。
參數提取環節要重點關注課題要求的參數采樣率和主幀頻率,在參數配置信息文件中會給出監控要求的參數個數、監控參數列表和監控參數采樣率信息。以監控參數要求采樣率為32次/秒為例(監控參數采樣率和主幀頻率一般情況均為2的冪次方),當主幀頻率為32時則每一幀提取一次數據;當主幀頻率>監控參數要求頻率時,主幀頻率/監控參數要求頻率≥N(N為大于0的整數),每隔N-1幀提取一次數據;當主幀頻率<監控參數要求頻率時,監控參數要求頻率/主幀頻率≥M(M為大于0的整數),每個主幀數據提取M+1次。
軟件上電后即加載參數配置信息文件,形成存放參數信息的結構體,將結構體帶入參數提取和工程量轉換軟件進行處理,參數提取環節還需關注參數在主幀中的位置信息,即子幀號和字號,工程量轉換環節則需關注參數的校準類型、取位、符號、系數等信息。
網絡數據發送模塊與客戶端監控軟件通過TCP協議建立通信,監控參數名列表和經過轉換的物理量以UDP通信方式發送到客戶端監控軟件。監控參數名列表中包含工程量轉發要求的頻率。工程量發送線程用看門狗定時器來控制,如果1秒內未接到用來控制發送頻率的數據包,則選擇新的數據包來控制。如果沒有任何數據包到達,則不轉發工程量包。
在實時監控模塊中,客戶端實時接收從核心服務器發送的網絡數據,從中挑選實時監控畫面中所需的參數,實時進行顯示,顯示形式一般有曲線顯示、數字顯示、文本顯示、儀表顯示和信號燈顯示。實時接收的網絡數據包的格式如下:
Struct DataPacket{
int paraNum;
float hour;
float minute;
float second;
float ms;
float data[1020];
}
實時監控軟件在Borland C++ Builder6.0編程環境下開發,主要完成開關量的取位判決并顯示,多字節參數的合并計算等。其中,用動態鏈接庫規范了參數的取位和合并等計算過程。實時監控模塊配置了多個監控界面,各個監控界面根據專業課題進行了劃分,界面之間可任意切換。
數據存儲模塊主要完成數據記錄文件的打開、存儲、讀取、檢索和關閉等操作。按照整個系統的工作流程,首先軟件需要結合地面配置管理軟件工作,然后才能進行數據的100%存儲。
地面配置管理的內容包括:服務器IP地址;接收參數信息文件;核心服務器控制與維護。
機載網絡數據實時處理系統中使用兩塊固態盤對數據進行了100%存儲,兩塊固態盤互為備份。以磁盤操作的方式數據100%的存儲在第一塊固態盤上,存儲格式符合IRIGB第十章格式。在數據接收線程中,網絡原始數據首先排列放置在64 Mbytes的環形緩存中,每滿8 Mbytes設置數據準備好標志位真,數據存儲線程檢測到數據準備好標志為真時,從環形緩存中將8 Mbytes數據存儲在磁盤上,并每隔5分鐘關閉打開一次。
為了便于事后回放,按照固定長度將數據進行了分塊存放。核心服務器每次上電重啟時均會新建一個數據文件,中間不打斷或新建數據文件,文件在新建時并不知道其大小,每隔5分鐘關閉、打開一次,并將內存中數據轉存到磁盤上,這時再計算文件大小,并寫入目錄頭文件大小信息中。數據中的絕對時間是從網絡數據中提取出來的,并打入數據包中,包括文件頭的時間數據包和每個數據包中的時間標志。
機載網絡數據實時處理系統可直接與機載測試采集網絡鏈接,完成機載網絡數據包的解包,支持不低于64個點/秒3000個以上參數的實時提取和工程量轉化以及參數實時轉發等功能。工程量轉換功能可完成多種類型參數信息校準,包括ARINC429、1553B、422、664等總線類型參數和加裝傳感器參數,可完成線性、多項式、雙曲線、拋物線、點對等多種工程量轉換算法。
機載網絡數據實時處理系統已經過多個架次科研試飛驗證,驗證表明:系統穩定可靠,數據實時處理能力完全達到了現階段試驗機機載測試系統數據處理性能的要求。解決了當前大客等型號機型體積大、測試參數多、測試參數分布散、系統實時性要求更高等問題。
經科研試飛驗證,機載網絡數據實時處理系統性能穩定,并具有良好的擴展性,在大客等大型飛機試飛中必將發揮重要的作用。
[1] 程佩青.數字信號處理教程[M].北京:清華大學出版社, 2001.
[2] Lyons R G. Understanding digital signal processing [M].Upper Saddle River:Prentice Hall,2004.
[3] 袁炳南,張建琳.PCM與網絡數據采集系統技術分析[J].測控技術,2009,28(4):29-31.
[4] 段寶元, 穆永花, 穆永河. 以太網在新支線飛機試飛測試中的應用[J].測控技術,2011(30):91-93.
[5] Stevens W R. UNIX 網絡編程: 套接口API[M ]. 楊繼張,譯. 北京: 清華大學出版社, 2006.
[6] Richter J. Windows NT高級編程技術[M ].鄭全戰,等譯.北京: 清華大學出版社, 1995.
Design of Real-time Processing System for Airborne Network Data
Liu Yuqiao, Qi Chanying, Jia Yu
(Chinese Flight Test Establishment, Xi′an 710089, China)
With the arrival of large aircraft such as C919,test system puts forward higher technical requirements for airborne real-time processing system. The real-time processing system of airborne network data adopts vxWorks development environment with strong real-time. Through allocates of resources rationally between the functional modules, that is, allocates of threads rationally to complete all functional modules real-time. Verified by scientific research in flight test, the system has real-time processing capability of 3 000 parameters. The system is stable and extensible, and meets the requirements of real-time data processing tasks for large aircraft airborne test system. It has positive significance for ensuring the smooth going of subjects test for large aircraft.
airborne test; real-time processing; network data; thread
2017-06-21;
2017-07-22。
國防基礎科研項目(JCKY2016205B006)。
劉語喬(1984-),女,陜西臨潼人,碩士,工程師,主要從事試飛數據處理方向的研究。
1671-4598(2017)12-0240-03
10.16526/j.cnki.11-4762/tp.2017.12.062
TN919.5
A