孫毅剛,遲文強(qiáng)
(中國民航大學(xué) 航空工程學(xué)院,天津 300300)
航空電子系統(tǒng)是指飛機(jī)上所有電子系統(tǒng)的總和,其仿真驗(yàn)證在航電系統(tǒng)的設(shè)計(jì)與研發(fā)過程中起著重要的作用,對(duì)航電系統(tǒng)進(jìn)行仿真驗(yàn)證,可以有效地降低航電系統(tǒng)集成過程中存在的風(fēng)險(xiǎn)和成本[1],縮短開發(fā)周期。在進(jìn)行各種仿真驗(yàn)證時(shí),需要航電激勵(lì)器向仿真組件提供激勵(lì)信號(hào),所以航電激勵(lì)器提供的激勵(lì)信號(hào)的準(zhǔn)確性和穩(wěn)定性將對(duì)仿真驗(yàn)證的結(jié)果產(chǎn)生直接影響[2]。
目前,航電激勵(lì)器主要是基于Windows 系統(tǒng)開發(fā)的,在數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性、可靠性等方面略顯不足,并且在向仿真組件提供激勵(lì)信號(hào)時(shí),常出現(xiàn)數(shù)據(jù)的延時(shí)、丟包等問題。VxWorks 系統(tǒng)采用優(yōu)先級(jí)搶占和輪轉(zhuǎn)調(diào)度的任務(wù)調(diào)度機(jī)制,具有良好的實(shí)時(shí)性[3]?;赩xWorks系統(tǒng)開發(fā)的航電激勵(lì)器可以很好地解決Windows 系統(tǒng)下開發(fā)的航電激勵(lì)器所存在的不足。因此本文設(shè)計(jì)一款基于VxWorks 系統(tǒng)的航電激勵(lì)器,能夠?yàn)楹诫娤到y(tǒng)提供具有實(shí)時(shí)性、可靠性的激勵(lì)信號(hào)。
本文設(shè)計(jì)的航電激勵(lì)器由軟件和硬件兩部分構(gòu)成。軟件部分主要包括激勵(lì)數(shù)據(jù)獲取模塊和數(shù)據(jù)轉(zhuǎn)換模塊。其中,激勵(lì)數(shù)據(jù)獲取模塊通過以太網(wǎng)接收飛機(jī)模擬飛行過程中的飛行數(shù)據(jù),這些數(shù)據(jù)包括飛機(jī)的位置、姿態(tài)、通信導(dǎo)航系統(tǒng)的工作頻率等參數(shù)。航電激勵(lì)器數(shù)據(jù)轉(zhuǎn)換模塊主要實(shí)現(xiàn)AFDX 總線數(shù)據(jù)、ARINC429 總線數(shù)據(jù)的編解碼,完成ARINC429 總線數(shù)據(jù)與AFDX 總線數(shù)據(jù)相互轉(zhuǎn)化,并向各航電仿真組件傳輸激勵(lì)數(shù)據(jù)。AFDX 數(shù)據(jù)總線協(xié)議見文獻(xiàn)[4],ARINC429 總線協(xié)議見文獻(xiàn)[5]。硬件部分主要完成VxWorks 系統(tǒng)在MPC8270 上的移植,建立硬件開發(fā)平臺(tái)。航電激勵(lì)器總體設(shè)計(jì)如圖1所示。
圖1 航電激勵(lì)器總體設(shè)計(jì)
從實(shí)際應(yīng)用的角度出發(fā),激勵(lì)數(shù)據(jù)獲取模塊所獲取的激勵(lì)數(shù)據(jù)主要來源于飛行仿真軟件中的飛行數(shù)據(jù),通過激勵(lì)數(shù)據(jù)獲取模塊實(shí)現(xiàn)激勵(lì)數(shù)據(jù)獲取模塊與飛行仿真軟件的內(nèi)存共享,從而實(shí)現(xiàn)飛行數(shù)據(jù)的實(shí)時(shí)獲取。
通過以太網(wǎng)發(fā)送的飛行數(shù)據(jù)格式是基于UDP 數(shù)據(jù)包格式,數(shù)據(jù)獲取模塊接收到1 幀數(shù)據(jù)包后,首先對(duì)該數(shù)據(jù)包的幀頭進(jìn)行判斷,其次判斷數(shù)據(jù)幀校驗(yàn)位的正確與否,然后對(duì)校驗(yàn)位正確的數(shù)據(jù)包進(jìn)行確定報(bào)文類型并解析出報(bào)文所包含的信息。通過設(shè)計(jì)ARINC429 總線數(shù)據(jù)字編碼的接口函數(shù),調(diào)用ARINC429 數(shù)據(jù)字編碼接口,對(duì)將UDP 格式的數(shù)據(jù)包解碼后的飛行數(shù)據(jù)信息進(jìn)行編碼得到激勵(lì)數(shù)據(jù)對(duì)應(yīng)的ARINC429 數(shù)據(jù)字,確定周期和通道后將該ARINC429 數(shù)據(jù)字輸出到航電仿真組件[6]。激勵(lì)數(shù)據(jù)獲取流程如圖2 所示。
AFDX 總線憑借著卓越的傳輸效率以及高可靠性等特點(diǎn),廣泛地應(yīng)用于B-787、A380 等先進(jìn)機(jī)型中[7]。目前,航電系統(tǒng)主干網(wǎng)絡(luò)通常采用AFDX 總線將機(jī)載各個(gè)子系統(tǒng)連接成一個(gè)高效可靠的整體,而飛機(jī)很多子系統(tǒng)仍采用比較成熟的ARINC429 總線[8]。因此,本文設(shè)計(jì)航電激勵(lì)器的數(shù)據(jù)轉(zhuǎn)換模塊,實(shí)現(xiàn)AFDX 總線激勵(lì)信號(hào)與ARINC429 總線激勵(lì)信號(hào)之間的相互轉(zhuǎn)換。上述兩種數(shù)據(jù)格式總線信號(hào)的相互轉(zhuǎn)換是互為逆過程,本節(jié)將通過設(shè)計(jì)航電激勵(lì)器收發(fā)ARINC429 總線數(shù)據(jù)字對(duì)應(yīng)的AFDX 總線數(shù)據(jù)包,從而實(shí)現(xiàn)總線數(shù)據(jù)間的編碼轉(zhuǎn)換。
圖2 激勵(lì)數(shù)據(jù)獲取流程
對(duì)AFDX 總線數(shù)據(jù)進(jìn)行分析,將AFDX 總線報(bào)文設(shè)計(jì)成可由多個(gè)“消息”(Message)拼接而成的通用格式。AFDX 總線中的每條“消息”都分為三個(gè)部分,便于將ARINC429 總線的數(shù)據(jù)字結(jié)構(gòu)填入AFDX 數(shù)據(jù)幀結(jié)構(gòu)中。MsgType 指的是對(duì)消息類型的編碼;LengthInBytes是表示PayLoad 字段的長度;PayLoad 是AFDX 總線的承載內(nèi)容。PayLoad 長度是可變的,其具體承載的信息格式由MsgType 的值決定。AFDX 總線報(bào)文中消息的通用格式如圖3 所示。
圖3 AFDX 總線報(bào)文中消息的通用格式
基于對(duì)AFDX 總線報(bào)文中對(duì)“消息”內(nèi)容的通用結(jié)構(gòu)設(shè)計(jì),將ARINC429 總線的數(shù)據(jù)字結(jié)構(gòu)填入AFDX“消息”結(jié)構(gòu)框架中,可得到航電激勵(lì)器收發(fā)ARINC429 總線數(shù)據(jù)對(duì)應(yīng)的AFDX 數(shù)據(jù)包,如圖4 所示。其中,Versio字段表示不同的ARINC429 消息版本;ChannelIndex 字段是組件的通道編號(hào);A429Word 字段表示ARINC429數(shù)據(jù)字的具體信息;PeriodInMs 字段表示ARINC429 數(shù)據(jù)字收發(fā)周期;TransmitCount 字段表示ARINC429 數(shù)據(jù)字的收發(fā)次數(shù)。
VxWorks 系統(tǒng)為開發(fā)者提供大量板級(jí)支持包BSP(Board Support Packet),便于簡化BSP 移植工作。在進(jìn)行BSP 移植之前,需要根據(jù)CPU 型號(hào)選擇相應(yīng)BSP 包,同時(shí)參考硬件數(shù)據(jù)調(diào)整BSP 相關(guān)配置信息。在完成BSP 配置后,建立新的VxWorks Image Project 工程,同時(shí)創(chuàng)建映像所需的文件[9]。
圖4 ARINC429 總線數(shù)據(jù)轉(zhuǎn)換為AFDX 數(shù)據(jù)包
VxWorks 模塊是根據(jù)目標(biāo)板卡的性能需求完成VxWorks 系統(tǒng)內(nèi)核模塊的配置。VxWorks 系統(tǒng)映像經(jīng)編譯生成后,對(duì)FTP 環(huán)境進(jìn)行調(diào)試。通過運(yùn)行Workbench 3.3 中的FTP Server,完成FTP 環(huán)境中的用戶信息配置。完成以上配置后,將VxWorks 映像下載至目標(biāo)板卡MPC8270 運(yùn)行。至此完成VxWorks 系統(tǒng)平臺(tái)的搭建。
在航電激勵(lì)器的功能實(shí)現(xiàn)之后需要對(duì)航電激勵(lì)器進(jìn)行驗(yàn)證測(cè)試,主要針對(duì)航電激勵(lì)器所能提供的航電激勵(lì)信號(hào)進(jìn)行測(cè)試,即ARINC429 總線激勵(lì)信號(hào)、AFDX 總線激勵(lì)信號(hào)以及激勵(lì)信號(hào)實(shí)時(shí)性測(cè)試。
航電激勵(lì)器對(duì)接收到的ARINC429 總線激勵(lì)信號(hào)進(jìn)行數(shù)據(jù)符合性測(cè)試。在飛行數(shù)據(jù)中獲取其中5 種激勵(lì)數(shù)據(jù)進(jìn)行測(cè)試,如表1 所示。將航電激勵(lì)器的一條ARINC429 輸出通道連接到ARINC429 總線分析儀,將表1 中激勵(lì)數(shù)據(jù)統(tǒng)一設(shè)置發(fā)送周期為200 ms,輸出到ARINC429 總線分析儀。總線分析儀所顯示的激勵(lì)數(shù)據(jù)如圖5 所示。
表1 激勵(lì)參量取值
圖5 ARINC429 總線分析儀顯示的數(shù)據(jù)
將表1 數(shù)據(jù)信息與圖5 顯示結(jié)果進(jìn)行對(duì)比,結(jié)果顯示二者所包含的數(shù)據(jù)信息一致,航電激勵(lì)器輸出的ARINC429 總線激勵(lì)信號(hào)滿足數(shù)據(jù)符合性要求。
激勵(lì)數(shù)據(jù)獲取模塊選擇飛行仿真軟件中模擬飛機(jī)的VOR1 頻率飛行數(shù)據(jù)進(jìn)行驗(yàn)證,激勵(lì)數(shù)據(jù)VOR1 頻率的相關(guān)信息如表2 所示。航電激勵(lì)器將AFDX 總線激勵(lì)信號(hào)通過AFDX 板卡發(fā)送至交換機(jī),通過Wireshark 抓取AFDX 數(shù)據(jù)包,對(duì)應(yīng)抓取數(shù)據(jù)包為十六進(jìn)制數(shù):3800DC84,結(jié)果如圖6 所示。通過對(duì)比驗(yàn)證,航電激勵(lì)器輸出的AFDX 總線激勵(lì)信號(hào)中的數(shù)據(jù)信息與ARINC429 負(fù)載數(shù)據(jù)一致,航電激勵(lì)器實(shí)現(xiàn)了ARINC429 總線激勵(lì)信號(hào)轉(zhuǎn)化為AFDX 信號(hào)的預(yù)期功能。
表2 航電激勵(lì)器輸出AFDX 信號(hào)配置信息
圖6 VOR1 頻率數(shù)據(jù)包
本文依靠VxWorks 系統(tǒng)的獨(dú)特優(yōu)勢(shì)保證數(shù)據(jù)獲取的實(shí)時(shí)性?!皩?shí)時(shí)”并不意味著是“快”,而是指系統(tǒng)響應(yīng)的時(shí)間確定性[10]。時(shí)間確定性具體體現(xiàn)為航電激勵(lì)器能否完全按照規(guī)定周期對(duì)激勵(lì)信號(hào)進(jìn)行收發(fā)。首先基于VxWorks 系統(tǒng)下的航電激勵(lì)器對(duì)ARINC429 總線激勵(lì)信號(hào)進(jìn)行輸出,配置輸出數(shù)據(jù)信息如表3 所示。
表3 輸出ARINC429 總線信號(hào)配置信息
配置信息完成后,在低速(12.5 Kb/s)模式下,航電激勵(lì)器輸出ARINC429 總線激勵(lì)信號(hào),通過示波器對(duì)ARINC429 的8 號(hào)輸出通道進(jìn)行測(cè)試。同理,利用Windows 系統(tǒng)下的航電激勵(lì)器完成表3 配置數(shù)據(jù)的發(fā)送,測(cè)試出每對(duì)相鄰波形起始點(diǎn)間的時(shí)間間隔,測(cè)試結(jié)果如表4 所示。
經(jīng)測(cè)試驗(yàn)證,基于VxWorks 系統(tǒng)的航電激勵(lì)器輸出的2 組連續(xù)信號(hào)波形時(shí)間間隔與設(shè)定發(fā)送周期相同,為精確的30.00 ms,沒有產(chǎn)生抖動(dòng)延遲。然而Windows 系統(tǒng)下航電激勵(lì)器在進(jìn)行激勵(lì)信號(hào)的周期性發(fā)送時(shí),連續(xù)的兩個(gè)信號(hào)間的時(shí)間間隔容易產(chǎn)生時(shí)間抖動(dòng),每組波形間的時(shí)間延遲在1 ms 以上。綜上所述,基于VxWorks系統(tǒng)的航電激勵(lì)器在時(shí)間確定性效果方面更能滿足航電系統(tǒng)仿真驗(yàn)證的高實(shí)時(shí)性需求。
表4 單通道時(shí)間確定性測(cè)試結(jié)果 ms
本文基于VxWorks 系統(tǒng),以MPC8270 為目標(biāo)平臺(tái),提出航電激勵(lì)器的總體設(shè)計(jì)方案并進(jìn)行詳細(xì)設(shè)計(jì),最終實(shí)現(xiàn)AFDX 總線數(shù)據(jù)與ARINC429 總線數(shù)據(jù)的相互轉(zhuǎn)換,為實(shí)際的航電仿真系統(tǒng)提供良好的激勵(lì)數(shù)據(jù)。通過仿真測(cè)試表明所設(shè)計(jì)的航電激勵(lì)器達(dá)到預(yù)期效果。