武 琳,譚 磊,曾 行,張 弛
(航空工業(yè)洪都,江西 南昌,330024)
人在環(huán)路的半實(shí)物飛行仿真試驗(yàn)是研究飛控系統(tǒng)的重要手段[1],試驗(yàn)環(huán)境中一般包括模擬座艙、飛行控制計(jì)算機(jī)、飛行仿真系統(tǒng)、航電模擬系統(tǒng)、視景系統(tǒng)等。模擬座艙艙體的結(jié)構(gòu)與實(shí)際飛機(jī)的座艙結(jié)構(gòu)一致,艙內(nèi)的模擬操縱控制盒與真實(shí)飛機(jī)控制盒功能、性能一致。試驗(yàn)人員或飛行員需要借助這些人機(jī)交互設(shè)備,將模擬操縱信號、儀表指示信號與飛行控制計(jì)算機(jī)、飛行仿真系統(tǒng)實(shí)時通信,實(shí)現(xiàn)對飛行操縱的目的,以驗(yàn)證飛行控制系統(tǒng)的飛行品質(zhì)。因此設(shè)計(jì)一種高效、可靠、人機(jī)交互良好的座艙操縱控制盒通信系統(tǒng),對飛控半物理仿真試驗(yàn)環(huán)境來說至關(guān)重要。
CAN(Controller Area Network)總線是國際上應(yīng)用最廣泛的現(xiàn)場總線之一。CAN總線采用了多主競爭式總線結(jié)構(gòu),數(shù)據(jù)通信沒有主從之分[2],采用位仲裁技術(shù),對通信數(shù)據(jù)用報文的形式進(jìn)行編碼,可使不同節(jié)點(diǎn)之間收到相同的數(shù)據(jù),這些特點(diǎn)使得CAN總線構(gòu)成的網(wǎng)絡(luò)各節(jié)點(diǎn)之間的數(shù)據(jù)通信具有可靠性高、實(shí)時性好、抗干擾能力強(qiáng)、成本合理等優(yōu)點(diǎn)。
為了能夠保證模擬座艙操縱控制盒通信的實(shí)時性和可靠性,本文設(shè)計(jì)了一套基于CAN總線的座艙操縱控制盒通信系統(tǒng),將操縱控制盒信號與航電模擬計(jì)算機(jī)進(jìn)行交互,并發(fā)送給飛行仿真系統(tǒng),實(shí)現(xiàn)整個飛控半物理仿真試驗(yàn)環(huán)境協(xié)調(diào)工作。
座艙操縱控制盒的顯示和控制通過與航電模擬計(jì)算機(jī)進(jìn)行信息交換實(shí)現(xiàn)。根據(jù)系統(tǒng)的通信品質(zhì)要求,需選擇合適的通信方案。目前常用的通信方案有兩種,它們各自的特點(diǎn)如下:
1)工控機(jī)加CAN總線接口卡方式(見圖1)
圖1 CAN總線接口卡方式
該方式經(jīng)濟(jì)性好,但受到接口卡性能的制約,而且不利于現(xiàn)場的布局,存在線纜冗長、維護(hù)性困難的缺點(diǎn)。
2)CAN總線通信加以太網(wǎng)組網(wǎng)的方式(見圖2)
圖2 CAN總線加以太網(wǎng)組網(wǎng)方式
基于以太網(wǎng)的分布式系統(tǒng)在維護(hù)性、可擴(kuò)展性、實(shí)時性方面具有非常大的優(yōu)勢[3]。通過CAN總線加以太網(wǎng)進(jìn)行組網(wǎng)的方式,真正意義上實(shí)現(xiàn)分布式采集系統(tǒng),且該方式能高度安全及有效的進(jìn)行分散式實(shí)時控制,解決了傳統(tǒng)模擬座艙采用集中式采集系統(tǒng)帶來的線纜多、維護(hù)性差、抗干擾能力差等問題,更利于后期的維護(hù)和底層設(shè)備的監(jiān)控和拓展。
本文設(shè)計(jì)了一套采用CAN總線和以太網(wǎng)進(jìn)行組網(wǎng)的座艙操縱控制盒通信系統(tǒng),由航電模擬計(jì)算機(jī)、綜合顯示計(jì)算機(jī)、NIc RIO-9035控制器、NI 9853CAN模塊和操縱控制盒組成。
兩塊NI 9853CAN模塊分別采集前艙和后艙的操縱控制盒信號,系統(tǒng)通信方案架構(gòu)如圖3所示。
NI 9853CAN模塊使用新的CAN控制器SJA1000和收發(fā)器82C250,能提供總線判優(yōu),誤差檢測并自動糾錯以及再傳輸功能。每路CAN通道都集成完全的電氣隔離保護(hù)、防浪涌保護(hù),抗干擾能力強(qiáng),是一款性能穩(wěn)定、通訊可靠的CAN模塊。主要技術(shù)指標(biāo)如下:
1)PC接口:1Mbps下擴(kuò)展幀,雙通道同時超過6500 幀/S;
2)傳輸速率:CAN控制器波特率高達(dá)1Mbps;
3)傳輸介質(zhì):屏蔽或非屏蔽雙絞線;
4)傳輸方式:CAN2.0A和CAN2.0B協(xié)議;
5)通訊接口:CAN-bus接口采用光電隔離、DCDC電源隔離,隔離模塊絕緣電壓達(dá)到2500V;單路總線最多可接110個節(jié)點(diǎn),最長通訊距離10公里;
6)占用資源:即插即用,資源自動分配;
7)工作溫度:-0°C~+70°C;
8)存儲溫度:-55°C~+85°C。
操縱控制盒用于設(shè)置和顯示起落架、襟翼、主告警、自動駕駛等相關(guān)狀態(tài)。NI cRIO-9035控制器將采集的操縱控制盒CAN總線信號轉(zhuǎn)換為以太網(wǎng)信號,并廣播至以太網(wǎng)局域網(wǎng)。航電模擬計(jì)算機(jī)捕獲以太網(wǎng)信號,通過控制盒標(biāo)識符ID將以太網(wǎng)的數(shù)據(jù)進(jìn)行解包和處理,與飛行仿真系統(tǒng)進(jìn)行數(shù)據(jù)交換,實(shí)現(xiàn)整個飛控半物理仿真系統(tǒng)協(xié)調(diào)工作。
航電模擬計(jì)算機(jī)是通信系統(tǒng)的核心計(jì)算機(jī),完成總線管理功能和數(shù)據(jù)轉(zhuǎn)發(fā)功能,負(fù)責(zé)以50ms為時鐘周期進(jìn)行與飛行控制計(jì)算機(jī)通信的總線管理和數(shù)據(jù)轉(zhuǎn)發(fā),同時作為總線系統(tǒng)和實(shí)時網(wǎng)絡(luò)系統(tǒng)的網(wǎng)關(guān)進(jìn)行數(shù)據(jù)交換。
在每個時鐘周期里,航電模擬計(jì)算機(jī)從飛行控制計(jì)算機(jī)、座艙操縱控制盒、飛行仿真系統(tǒng)獲取相關(guān)數(shù)據(jù),進(jìn)行相應(yīng)轉(zhuǎn)換和系統(tǒng)仿真計(jì)算,并將獲取和計(jì)算的數(shù)據(jù)收集后在屏幕上加以顯示,同時發(fā)送相關(guān)數(shù)據(jù)給飛行控制計(jì)算機(jī)、座艙操縱控制盒和綜合顯示計(jì)算機(jī)。綜合顯示計(jì)算機(jī)負(fù)責(zé)以50ms為時鐘周期從航電模擬計(jì)算機(jī)接收數(shù)據(jù),對相關(guān)信息進(jìn)行顯示。飛控半物理仿真系統(tǒng)通信方案如圖4所示。
圖4 飛控半物理仿真系統(tǒng)通信方案
基于C++面向?qū)ο蟪绦蛟O(shè)計(jì)方法,開發(fā)了相關(guān)的1553等通信類、系統(tǒng)仿真計(jì)算類、數(shù)據(jù)處理轉(zhuǎn)換類等類和對象,并通過主界面將所有功能集成到一起,以實(shí)現(xiàn)航電模擬仿真和操縱控制盒通信的運(yùn)行與管理。
系統(tǒng)主界面由主菜單、工具欄和參數(shù)顯示窗口組成,主菜單和工具欄控制初始參數(shù)設(shè)置、工作模式選擇和仿真的開始、停止等,參數(shù)顯示窗口負(fù)責(zé)試驗(yàn)有關(guān)仿真數(shù)據(jù)的在線顯示。
當(dāng)仿真系統(tǒng)啟動后,首先完成初始化,然后啟動50ms定時器,進(jìn)入定時循環(huán),其每50ms周期內(nèi)系統(tǒng)軟件流程圖如圖5所示。
圖5 系統(tǒng)軟件流程圖
航電模擬計(jì)算機(jī)是實(shí)現(xiàn)座艙控制盒設(shè)備實(shí)時顯示和控制的核心,根據(jù)其功能要求,將模塊劃分為以下幾個部分:
1)CData類:負(fù)責(zé)定義座艙控制盒設(shè)備與航電模擬計(jì)算機(jī)之間的通信數(shù)據(jù)格式、類型和數(shù)量。
2)CBoxDisplay類:對來自飛行控制計(jì)算機(jī)等其他設(shè)備的數(shù)據(jù)進(jìn)行解析處理,轉(zhuǎn)換成控制命令,發(fā)送給座艙控制盒相應(yīng)設(shè)備,實(shí)現(xiàn)實(shí)時狀態(tài)顯示。
3)CBoxContronl類:接收來自座艙控制盒設(shè)備的控制命令,轉(zhuǎn)換成相應(yīng)控制字,發(fā)送給飛行控制計(jì)算機(jī)等指定設(shè)備。
4)CTimer類:實(shí)現(xiàn)系統(tǒng)按50ms周期運(yùn)行。
控制器將操縱控制盒CAN總線信號轉(zhuǎn)換為以太網(wǎng)信號,通過TCP/IP協(xié)議進(jìn)行數(shù)據(jù)傳輸。CANUDP報文格式如下:
&data1&data2&data3&data4&data5&data6
其中data值為小數(shù)格式的浮點(diǎn)型字符串,0位精度;
data1:TimestampHigh,忽略;
data2::TimestampLow,忽略;
data3:標(biāo)識符 ID;
data4:從高位到低位依次為類型 (0為數(shù)據(jù)幀,1為遠(yuǎn)程幀)、InfoA(忽略)、InfoB(忽略)、Datalength;
data5:從高位到低位依次為 Data[0]、Data[1]、Data[2]、Data[3];
data6:從高位到低位依次為 Data[4]、Data[5]、Data[6]、Data[7];
操縱控制盒通信軟件流程圖如圖6所示。航電模擬計(jì)算機(jī)通過接收報文中的data3解析ID,確定報文來源于哪個操縱控制盒,并將data5、data6按位解析,判斷相應(yīng)操縱控制盒狀態(tài),并將信號轉(zhuǎn)發(fā)給飛行控制計(jì)算機(jī)、飛行仿真系統(tǒng)。同時,航電模擬計(jì)算機(jī)接收飛行控制計(jì)算機(jī)、飛行仿真系統(tǒng)發(fā)送的狀態(tài)字,狀態(tài)字解析后生成報文,報文發(fā)送按照相同的報文格式,只需對應(yīng)相應(yīng)操縱控制盒的ID,就可將相應(yīng)狀態(tài)發(fā)送給操縱控制盒進(jìn)行指示。
圖6 操縱控制盒通信軟件流程圖
本試驗(yàn)測試的目的是驗(yàn)證座艙操縱控制盒設(shè)備與航電模擬計(jì)算機(jī)之間基于CAN總線的通信方案的準(zhǔn)確性和實(shí)時性,測試方法分為三部分:
1)操縱控制盒測試
測試操縱控制盒是否按預(yù)期目標(biāo)準(zhǔn)確且快速顯示,航電模擬計(jì)算機(jī)模擬飛行控制計(jì)算機(jī)輸入,切換相應(yīng)狀態(tài)字,觀察操縱控制盒的顯示情況;
2)按壓控制盒按鍵是否生成相應(yīng)控制字
在航電模擬計(jì)算機(jī)開發(fā)MFC控制字解析軟件,將控制字的狀態(tài)直觀顯示出來,按壓控制盒上相應(yīng)的控制按鍵,觀察MFC控制字解析軟件的實(shí)時狀態(tài);
3)報文收發(fā)聯(lián)試
航電模擬計(jì)算機(jī)接收飛行控制計(jì)算機(jī)、飛行仿真系統(tǒng)的信號并生成報文發(fā)送給操縱控制盒,檢查操縱控制盒顯示狀態(tài)是否正確。對操縱控制盒所有按鍵和開關(guān)進(jìn)行測試,檢查航電模擬計(jì)算機(jī)解析是否正確。
經(jīng)過長時間的測試,數(shù)據(jù)收發(fā)實(shí)時性高,從未出現(xiàn)丟包和卡滯的現(xiàn)象。測試結(jié)果證明了基于CAN總線和以太網(wǎng)的通信方案的實(shí)時性、準(zhǔn)確性和可靠性。
在某型飛機(jī)飛控半物理仿真試驗(yàn)環(huán)境中,經(jīng)過多次反復(fù)測試,驗(yàn)證了基于CAN總線的模擬座艙內(nèi)操縱控制盒通信系統(tǒng)的可行性。該通信方案具有以下優(yōu)點(diǎn):
1)采用CAN轉(zhuǎn)以太網(wǎng)的網(wǎng)絡(luò)通信方案,實(shí)時性強(qiáng),可靠性高,通用性好,經(jīng)濟(jì)性好;以太網(wǎng)UDP不定長分包收發(fā)數(shù)據(jù)方式合理可行,保障了網(wǎng)絡(luò)的實(shí)時性和穩(wěn)定性。
2)采用分布式架構(gòu)體系,線纜少,結(jié)構(gòu)清晰,易于維護(hù)。