【裝備理論與裝備技術(shù)】
直升機(jī)發(fā)射控制電路監(jiān)控方法設(shè)計(jì)
李海軍1,牟俊杰1,周迎2,陳育良1
(1:海軍航空工程學(xué)院 兵器科學(xué)與技術(shù)系,山東 煙臺(tái)264001; 2. 91286部隊(duì)裝備部,山東 青島266021)
摘要:直升機(jī)發(fā)射控制電路用于管理和控制飛機(jī)所攜帶的各種武器,其通過1553B總線給導(dǎo)彈裝訂發(fā)射諸元并下達(dá)投放允許命令;總線信號(hào)實(shí)時(shí)性強(qiáng)、交聯(lián)關(guān)系復(fù)雜,給飛機(jī)的測(cè)試帶來(lái)較大難度,因此有必要對(duì)發(fā)控電路的總線系統(tǒng)進(jìn)行研究,以完善發(fā)控電路測(cè)試方法;基于多線程、中斷服務(wù)和DMA方式,提出了總線監(jiān)視數(shù)據(jù)與信號(hào)波形比對(duì)相結(jié)合,通過對(duì)GJB1188A的分析,在接口控制文件未知的情況下反求信號(hào)的意義,為直升機(jī)發(fā)控電路的檢查奠定基礎(chǔ)。
關(guān)鍵詞:發(fā)控電路;1553B總線;數(shù)據(jù)反求;信號(hào)比對(duì)
收稿日期:2014-06-27
作者簡(jiǎn)介:李海軍(1965—),男,博士,教授,主要從事武器系統(tǒng)測(cè)試與健康管理方面的研究。
doi:10.11809/scbgxb2015.01.002
中圖分類號(hào):TP29
文章編號(hào):1006-0707(2015)01-0004-0f4
本文引用格式:李海軍,牟俊杰,周迎,等.直升機(jī)發(fā)射控制電路監(jiān)控方法設(shè)計(jì)[J].四川兵工學(xué)報(bào),2015(1):4-7.
Citation format:LI Hai-jun, MOU Jun-jie, ZHOU Ying, et al.Supervisory Method Design of Helicopter Emission Control Circuit[J].Journal of Sichuan Ordnance,2015(1):4-7.
Supervisory Method Design of Helicopter Emission Control Circuit
LI Hai-jun1, MOU Jun-jie1, ZHOU Ying2, CHEN Yu-liang1
(1.Department of Armament Science and Technology,
Naval Aeronautical Engineering Academy, Yantai 264001, China;
2.Armament Department, the 91286th Troop of PLA, Qingdao 266021,China)
Abstract:The helicopter launch control circuit is used to manage and control the various weapons that the plane carried. It is used to transmit the launch data and the command of throwing permitting by 1553B bus. The real-time character of bus signal is strong, and the cross linking relation is complicated, which brings a great degree of difficulty to the aero test. Therefore it is necessary to study the bus system of the launch control circuit to make the circuit test method perfect. The combination and comparison of the bus monitor data with the signal waveform were put forward based on the technology of multithread, interrupt and DMA to establish the foundation for the test of the helicopter launch control circuit through the analysis of GJB1188A and the data’s meaning in the condition of unknowing interface control document.
Key words: launch control circuit; 1553B bus; data reserve; signal contrast
現(xiàn)代飛機(jī)航空電子系統(tǒng)功能極其復(fù)雜,航空總線技術(shù)以其結(jié)構(gòu)簡(jiǎn)單、傳輸速度快、誤碼率低的特點(diǎn)成為連接機(jī)載設(shè)備的關(guān)鍵技術(shù),是數(shù)據(jù)交換的紐帶。航空總線關(guān)系到機(jī)載設(shè)備間正常通訊的進(jìn)行,并且在飛機(jī)的導(dǎo)航、操縱、控制、作戰(zhàn)和信息處理等任務(wù)中其輔助作用。在對(duì)航空總線系統(tǒng)進(jìn)行測(cè)試時(shí),需要了解接口控制文件(ICD)對(duì)信號(hào)的定義[1],但是接口控制文件密級(jí)很高,生產(chǎn)廠商有時(shí)需要保密,這極大制約了航空總線設(shè)備的監(jiān)測(cè)與診斷。針對(duì)直升機(jī)發(fā)控電路檢查時(shí)遇到的總線檢測(cè)問題,設(shè)計(jì)了直升機(jī)發(fā)控電路總線監(jiān)控方法,以總線監(jiān)視與波形顯示相結(jié)合的方式,根據(jù)GJB1188A的理論基礎(chǔ),對(duì)比分析總線數(shù)據(jù)的定義,得到所需的接口控制文件。
1總體方案設(shè)計(jì)
發(fā)控電路總線監(jiān)控首先需要采集并記錄發(fā)控電路檢測(cè)過程中總線上傳遞的各種信號(hào),繼而對(duì)這些數(shù)據(jù)進(jìn)行信息融合。通過對(duì)比仿真終端監(jiān)視到的總線數(shù)據(jù)與信號(hào)記錄儀采集到的波形,分析判斷是否出現(xiàn)失真、丟包、延遲和數(shù)據(jù)跳變等錯(cuò)誤現(xiàn)象[2],驗(yàn)證采集到的數(shù)據(jù)的可靠性、精確性,準(zhǔn)確地判斷信號(hào)的完整度,防止誤碼、丟碼。在保證數(shù)據(jù)準(zhǔn)確的前提下,分析信號(hào)的定義才有意義,因此監(jiān)控系統(tǒng)應(yīng)具有如下功能:
總線監(jiān)視功能,監(jiān)控系統(tǒng)作為接口設(shè)備,應(yīng)按GJB289A的規(guī)定接收并解碼直升機(jī)中總線控制器發(fā)送的命令字[3],按照指令的要求對(duì)命令字做出回應(yīng)。監(jiān)控系統(tǒng)通過奇偶校驗(yàn)確保傳遞信號(hào)的正確性,并按照配置對(duì)發(fā)控電路傳輸?shù)娜我鈹?shù)據(jù)塊和數(shù)據(jù)字進(jìn)行監(jiān)控。
數(shù)據(jù)回放功能,利用ActiveX技術(shù)在LabWindows/CVI平臺(tái)中訪問Excel,按規(guī)定格式實(shí)時(shí)存儲(chǔ)采集到的總線數(shù)據(jù),用戶可以通過訪問Excel回顧以往的數(shù)據(jù)通信過程,也可以按需要選擇一定時(shí)間范圍內(nèi)的數(shù)據(jù),檢索、分析數(shù)據(jù)信息。
信號(hào)采集、波形顯示功能,利用數(shù)據(jù)采集卡設(shè)計(jì)信號(hào)波形記錄儀,將目標(biāo)信號(hào)實(shí)時(shí)采集記錄,存入工控機(jī)中。針對(duì)信號(hào)經(jīng)過總線接口的數(shù)據(jù)采集卡后,波形會(huì)發(fā)生一定偏斜的問題,本文設(shè)計(jì)了波形處理邏輯,完成數(shù)據(jù)的可靠傳輸。采用同步繪制信號(hào)波形的方法實(shí)現(xiàn)實(shí)時(shí)觀察信號(hào)特征,并將信號(hào)所表示的曼徹斯特碼存入比對(duì)數(shù)組中。
比對(duì)分析功能,先將仿真終端采集到的數(shù)據(jù)與信號(hào)記錄儀采集到的波形信號(hào)進(jìn)行比對(duì),直觀地觀察數(shù)據(jù)是否完整,繼而將兩種數(shù)據(jù)按照比對(duì)規(guī)則在比對(duì)數(shù)組中,結(jié)合GJB1188A進(jìn)行分析,將接收到的有關(guān)數(shù)據(jù)從編碼形式轉(zhuǎn)換成相應(yīng)的物理量或功能定義,為發(fā)控電路的檢查奠定基礎(chǔ)。
2硬件設(shè)計(jì)
監(jiān)控系統(tǒng)的顯示控制和數(shù)據(jù)處理采用便攜式工控機(jī),采用具有總線監(jiān)視功能的1553B接口卡監(jiān)視總線數(shù)據(jù),通過波形記錄儀對(duì)總線信號(hào)的波形進(jìn)行采集分析,此種設(shè)計(jì)保證了監(jiān)控系統(tǒng)的便攜性和功能可擴(kuò)展性,其結(jié)構(gòu)組成如圖1所示。
圖1 硬件系統(tǒng)組成框圖
2.1顯示控制模塊
便攜式工控機(jī)是系統(tǒng)處理、控制的中心,為保證系統(tǒng)的通用性和可擴(kuò)展性,選用研華IPC-610H工控機(jī),該工控機(jī)具有體積小、數(shù)據(jù)處理速度高、硬盤空間大等特點(diǎn),具有3個(gè)PCI插槽,保證了1553B總線接口卡的安裝和系統(tǒng)的功能擴(kuò)展。
2.2數(shù)據(jù)采集模塊
2.3總線監(jiān)控模塊
1553B總線協(xié)議是一個(gè)非常復(fù)雜的通信系統(tǒng)協(xié)議,為了完成對(duì)總線的監(jiān)測(cè)首先須實(shí)現(xiàn)工控機(jī)與總線網(wǎng)絡(luò)的通信,故采用了Excalibur公司生產(chǎn)的M4K1553MCH接口卡,該卡能仿真模擬多種功能,提供源代碼級(jí)API函數(shù),提供了系統(tǒng)與計(jì)算機(jī)間的接口,支持在LabWindows/CVI環(huán)境下對(duì)其進(jìn)行編程,方便了用戶的后續(xù)功能開發(fā)。
3軟件設(shè)計(jì)
3.1軟件功能
根據(jù)系統(tǒng)的功能需求和硬件系統(tǒng)的配置,軟件部分主要完成3個(gè)部分的內(nèi)容:數(shù)據(jù)監(jiān)控、信號(hào)比對(duì)、數(shù)據(jù)分析。經(jīng)綜合考慮,通過多線程和中斷服務(wù)相結(jié)合的方式實(shí)現(xiàn)上述功能。其中中斷服務(wù)用來(lái)完成讀取總線接口卡數(shù)據(jù)緩沖區(qū)的內(nèi)容,以實(shí)現(xiàn)數(shù)據(jù)監(jiān)控的完整性、實(shí)時(shí)性。以LabWindows/CVI作為系統(tǒng)軟件的開發(fā)平臺(tái),軟件系統(tǒng)的結(jié)構(gòu)如圖2所示。
圖2 系統(tǒng)軟件結(jié)構(gòu)
3.2關(guān)鍵技術(shù)
3.2.1多線程技術(shù)
Windows系統(tǒng)在工作時(shí)將CPU資源分成若干個(gè)小的時(shí)間片,按系統(tǒng)內(nèi)部進(jìn)程與線程不同的優(yōu)先級(jí)進(jìn)行分配[4]。盡管系統(tǒng)內(nèi)部是分時(shí)工作的,但是用戶感覺到的是多任務(wù)同時(shí)進(jìn)行。系統(tǒng)內(nèi)的各個(gè)進(jìn)程均在各自的時(shí)間片內(nèi)工作,因此不會(huì)產(chǎn)生時(shí)間沖突。系統(tǒng)選用LabWindows/CVI作為軟件開發(fā)平臺(tái),它針對(duì)不同特性的任務(wù)提供了兩種多線程實(shí)現(xiàn)方案:線程池技術(shù)適用于任務(wù)時(shí)間不連續(xù);異步定時(shí)器技術(shù)適用于周期性處理多項(xiàng)任務(wù)。為了滿足系統(tǒng)實(shí)時(shí)性、多任務(wù)的需求,采用線程池技術(shù),主要線程有用戶界面、數(shù)據(jù)監(jiān)控、信號(hào)采集、信號(hào)比對(duì)和數(shù)據(jù)處理等。
調(diào)用LabWindows/CVI函數(shù)庫(kù)中的CmtScheduleThreadPoolFunction函數(shù),將任務(wù)函數(shù)的函數(shù)名賦值給它,然后系統(tǒng)根據(jù)線程池的設(shè)置和當(dāng)前屬性分配一個(gè)線程用于處理此函數(shù)。在此過程中,系統(tǒng)或者新建一個(gè)線程,或者直接分配空閑線程,或者某等待活動(dòng)線程空閑。
3.2.2中斷服務(wù)
中斷技術(shù)是解決實(shí)時(shí)性較好的辦法,即當(dāng)1553B接口卡的存儲(chǔ)區(qū)儲(chǔ)滿時(shí),產(chǎn)生消息中斷,將存儲(chǔ)區(qū)中的750條消息存儲(chǔ)到內(nèi)存中。但是Windows系統(tǒng)對(duì)中斷服務(wù)不完全開放,因此需利用Windows系統(tǒng)的多線程機(jī)制結(jié)合1553B接口卡的可拓展性,實(shí)現(xiàn)1553B總線通信的中斷服務(wù)[5]。
在初始化程序中構(gòu)建了一個(gè)循環(huán)的中斷歷史列表。中斷歷史列表第一個(gè)字是中斷狀態(tài)字,這個(gè)十六位的字包含關(guān)于中斷事件的信息;第二個(gè)字指明了產(chǎn)生中斷的方式命令或子地址的描述塊地址;第三個(gè)字存儲(chǔ)了下一個(gè)中斷記錄條目的RAM地址。當(dāng)中斷產(chǎn)生時(shí),1553B接口卡向RAM中寫入中斷歷史列表的第一、第二個(gè)字,同時(shí)讀取第三個(gè)字作為下一個(gè)中斷記錄的寫入地址。本設(shè)計(jì)中,中斷處理程序完成了中斷歷史列表的處理及指針更新;完成了消息的定位;標(biāo)記了消息狀態(tài);進(jìn)行了新數(shù)據(jù)標(biāo)志的更新等功能。為了保證傳輸?shù)臄?shù)據(jù)不丟失,所以將中斷歷史列表設(shè)計(jì)成了一個(gè)循環(huán)鏈表。
3.2.3DMA存儲(chǔ)方式
DMA即直接存儲(chǔ)器訪問, DMA技術(shù)使需要傳輸?shù)臄?shù)據(jù)可以直接從適配卡到內(nèi)存,不需要CPU的參與,因此極大地降低了CPU的負(fù)擔(dān),提高了系統(tǒng)的實(shí)時(shí)性。編制程序并存儲(chǔ)在適配器的ROM上,令適配器提前處理需要傳輸?shù)臄?shù)據(jù)并設(shè)置DMA功能的參數(shù),如通道屬性、數(shù)據(jù)個(gè)數(shù)、存儲(chǔ)空間以及地址變化方式等,這些參數(shù)將被送到工控機(jī)上的DMA控制器,通過DMA控制器來(lái)實(shí)現(xiàn)對(duì)DMA傳輸?shù)目刂?。?shù)據(jù)傳輸始于控制器完成初始化,繼而就可以跳過CPU,獨(dú)立完成傳輸。
3.2.4ActiveX技術(shù)
ActiveX是一種軟件組件,在編制軟件的過程中用它來(lái)將不同功能的現(xiàn)有軟件嵌入軟件系統(tǒng)中,實(shí)現(xiàn)多個(gè)應(yīng)用程序的組合,或者同一軟件中不同功能的切換[6]。LabWindows/CVI通過對(duì)ActiveX的調(diào)用,實(shí)現(xiàn)將監(jiān)控系統(tǒng)所監(jiān)控到的數(shù)據(jù)轉(zhuǎn)移到Excel中,依靠Excel數(shù)據(jù)處理功能對(duì)數(shù)據(jù)進(jìn)行分析,降低了工作難度。在LabWindows/CVI中實(shí)現(xiàn)Excel功能的方法如下:
ExcelRpt_ApplicationNew (0,&appHandle);
ExcelRpt_WorkbookNew(appHandle,&bookHandle);
ExcelRpt_WorksheetNew(bookHandle,1,&sheetHandle);
3.2.5數(shù)據(jù)比對(duì)
監(jiān)控系統(tǒng)得到的數(shù)據(jù)信息量非常龐大,為了確保數(shù)據(jù)的完整性,并且準(zhǔn)確分析出信號(hào)的定義,需要從海量數(shù)據(jù)中對(duì)總線數(shù)據(jù)和信號(hào)波形進(jìn)行匹配,快速提取有效數(shù)據(jù)[7]。監(jiān)控系統(tǒng)得到的總線數(shù)據(jù)已經(jīng)以Excel表格的格式進(jìn)行存儲(chǔ),需要對(duì)這些數(shù)據(jù)進(jìn)行篩選,再將篩選出的數(shù)據(jù)與信號(hào)記錄儀采集到的信號(hào)寫入比對(duì)數(shù)組,結(jié)合GJB1188A設(shè)置比對(duì)規(guī)則,然后存儲(chǔ)比對(duì)后的結(jié)果。
3.3軟件流程圖
系統(tǒng)軟件流程如圖3所示。
圖3 軟件流程
4實(shí)驗(yàn)驗(yàn)證
將硬件設(shè)備與直升機(jī)發(fā)控系統(tǒng)的連接配置好后,運(yùn)行軟件系統(tǒng),可得到如圖4所示的總線數(shù)據(jù),如圖5所示的信號(hào)波形,將兩種波形進(jìn)行比對(duì)分析,可得到如圖6所示的分析結(jié)果,將結(jié)果存儲(chǔ)到Excel中。
經(jīng)實(shí)驗(yàn)驗(yàn)證,所設(shè)計(jì)的直升機(jī)發(fā)控電路監(jiān)控系統(tǒng)能準(zhǔn)確得到導(dǎo)彈檢測(cè)過程中發(fā)控電路所傳輸信號(hào)的意義。
圖4 總線數(shù)據(jù)監(jiān)視結(jié)果
圖5 波形記錄儀記錄結(jié)果(圖中所示為202 A)
圖6 比對(duì)分析結(jié)果
5結(jié)束語(yǔ)
為了在未獲得ICD文件的條件下有效得到直升機(jī)發(fā)控系統(tǒng)總線數(shù)據(jù)的物理意義,本文設(shè)計(jì)了發(fā)控電路監(jiān)控系統(tǒng),有效解決了對(duì)ICD數(shù)據(jù)庫(kù)了解不足的問題,結(jié)合GJB1188A能方便地獲取總線信號(hào)的意義。本文介紹了該系統(tǒng)的功能、硬件和軟件設(shè)計(jì),并對(duì)系統(tǒng)功能的可靠性進(jìn)行了實(shí)驗(yàn)驗(yàn)證,為直升機(jī)發(fā)射控制電路檢查奠定基礎(chǔ)。
參考文獻(xiàn):
[1]張光宇,杜承烈.通用航空總線接口控制文檔設(shè)計(jì)[J].測(cè)控技術(shù),2007,26(7):48-52.
[2]張木水,李玉山.信號(hào)完整性分析與設(shè)計(jì)[M].北京:電子工業(yè)出版社,2010:74-96.
[3]蔣國(guó)峰,白紅.1553B 總線監(jiān)控器的設(shè)計(jì)與實(shí)現(xiàn)[J].電子設(shè)計(jì)工程,2011,19(17):98-100.
[4]王少蕾,朱華兵,周強(qiáng).1553B總線系統(tǒng)通信軟件設(shè)計(jì)[J].火炮發(fā)射與控制學(xué)報(bào),2008(4):87-88.
[5]王建新,隋美麗.LabWindows/CVI虛擬儀器測(cè)試技術(shù)及工程應(yīng)用[M].北京:化學(xué)工業(yè)出版社,2011:109-133.
[6]陳穎麗,劉繁明,王建敏.LabWindows_CVI中基于ActiveX技術(shù)的Excel訪問[J].測(cè)控技術(shù),2008,27(6):62-64.
[7]呂亞洲.1553B總線信號(hào)接口定義反求技術(shù)研究[D].南京:南京航空航天大學(xué),2012.
[8]歐愛輝,盧衛(wèi)國(guó),李程鵬,等. 某直升機(jī)綜合航電顯控仿真系統(tǒng)的開發(fā)與實(shí)現(xiàn)[J].火力與指揮控制,2013(1):141-144.
(責(zé)任編輯周江川)