朱京來,何平,郝大力,馬曉東
(1. 北京電子工程總體研究所,北京 100854;2. 中國人民解放軍駐二院中心軍事代表室,北京 100854)
飛行器地面測試旨在通過施加外部激勵信號,采集飛行器反饋的模擬信號、數字信號,驗證飛行器的各種性能指標是否能夠滿足設計指標要求。早期地面測試主要通過對模擬信號的采集、分析進行,需要將大量被測信號通過電纜接入測試系統。隨著飛行器機內測試(built-in test,BIT)的發展,在飛行器內部將被測模擬量轉化為數字信號,以脈沖編碼調制(pulse code modulation,PCM)或其他數據碼流的形式傳送至測試系統,已成為飛行器測試性設計的一種發展方向[1-3]。通過對PCM數據的實時接收解析,可以了解被測飛行器在測試過程中電氣、結構、溫度等參數的變化,為其性能的判定提供依據。
LabVIEW是美國國家儀器(NI)公司推出的一種面向對象的圖形化編程語言。與傳統的C,C++等計算機語言不同,其使用圖標代替文本代碼創建應用程序,使用連線表征程序運行方向,在一定程度上縮短了軟件開發時間,并且使硬件工程師也可以進行小型的軟件開發,降低了軟件開發的學習成本[4-5]。同時,作為目前國際上應用最廣的數據采集和控制開發環境之一,LabVIEW在測試與測量、數據采集、儀器控制、數字信號分析等方面擁有大量成熟的vi庫,可以為數據接收顯示系統的開發提供良好的基礎[6-7]。
本文重點描述了PCM數據實時接收系統的設計,對核心的PCM數據接收板卡、PCM數據實時顯示軟件的組成與實現方法進行了描述。最后,結合實際使用環境,說明該系統的使用效果可以滿足飛行器地面測試的需要,并可根據被測對象的不同,進行一定程度的擴展。
PCM數據實時接收系統由測試電纜與工業控制計算機組成,PCM數據接收板卡與數據實時顯示軟件部署于工業控制計算機內部。PCM數據接收板卡為標準PCI板卡,以動態鏈接庫的形式進行驅動封裝。PCM數據實時顯示軟件基于LabVIEW軟件開發,通過列表、圖表等形式使用戶完成從數據格式配置到數據顯示分析的全部操作。系統組成框圖見圖1。

圖1 PCM數據實時接收系統組成框圖Fig.1 Composition of PCM data real-time receiving system
PCM數據接收板卡由光耦接收模塊、DDR存儲模塊、PCM模擬發送模塊、FPGA以及PCI接口等幾部分組成。通過光耦接收模塊將PCM數據引入板卡,并完成被測對象與測試系統的隔離。FPGA作為板卡的控制核心,完成數據的校驗、整理,并將數據存入DDR存儲模塊。電纜接口、PCI接口分別完成與測試電纜及工業控制計算機的連接,模擬發送模塊用于板卡調試及自校驗。采用2片大容量DDR作為板卡的存儲設備,既可按照用戶需要實時讀取數據,也可在通訊結束后集中讀取數據[8-9]。板卡原理框圖見圖2。

圖2 PCM數據接收板卡原理框圖Fig.2 Principle of PCM data receiving card
為了滿足大容量PCM數據的實時接收顯示,采用LabVIEW的生產者-消費者模式進行軟件設計。在一般數據采集系統中,通常包含數據采集、數據分析以及數據顯示3個步驟,3個步驟順序執行。但對于采集速度要求較高的實時接收顯示系統,順序執行的模式顯然不再適用,必須使用多線程并行執行的方式滿足設計需求。
在基于C/C++的多線程程序開發過程中,開發人員通常需要考慮線程優先級、不同線程之間同步、線程之間數據傳輸等多方面因素,設計過程較為復雜且線程之間易相互影響執行效率[10]。LabVIEW軟件平臺可為不存在先后執行關系的軟件模塊自動分配不同線程,使程序處于并行執行狀態,極大簡化了開發人員設計多線程的工作難度。同時,其通過隊列完成不同線程之間的數據傳輸,避免了線程之間的數據沖突,提高了工作效率[11-12]。
生產者-消費者模式充分利用了LabVIEW的該優勢,設置多個并行循環, 分別以不同的速率執行任務。其中一個循環作為生產數據的循環,通過對采集板卡的控制,完成數據的采集工作。其他循環作為消費數據的循環,完成數據分析、顯示等工作。不同循環之間通過隊列進行數據共享,避免了競爭狀態的出現[13-14]。
PCM數據實時顯示軟件包括數據采集、數據顯示以及數據格式配置3個模塊。數據采集、數據顯示模塊為生產者-消費者模式。生產者循環中,通過調用數據接收板卡的驅動,實現PCM數據的接收功能,并將接收到的數據寫入隊列當中。消費者循環中,根據數據格式配置完成數據解析,并將數據幀號以圖表形式顯示于前面板,便于用戶觀察數據連續性[15]。同時,用戶可根據需要將數據中的其他參數解析后以圖表形式進行顯示,實時觀察數據變化。采集、顯示模塊程序框圖見圖3。
數據格式配置文件為INI文件形式,包含節(section)和鍵(key)2層結構。用戶通過修改配置文件,可以完成對PCM數據格式的定義工作。軟件通過讀取配置文件,依次獲得各參數的起始位置、字節長度、比例系數等信息。數據格式配置模塊程序框圖見圖4。

圖3 采集顯示模塊程序框圖Fig.3 Program of acquisition and display module

圖4 數據格式配置模塊程序框圖Fig.4 Program of data format configuration module
軟件人機交互界面見圖5。

圖5 軟件人機交互界面Fig.5 Man-machine interface
試驗驗證時將PCM信號源通過測試電纜與數據實時接收系統相連。利用PCM信號源輸出一組固定幀結構的PCM數據流,數據接收板卡對PCM數據進行接收后,通過實時顯示軟件進行處理,并以波形的形式進行顯示。測試環境如表1所示。

表1 系統測試環境
測試中持續通訊時長為30 min,在測試過程中未發現明顯延遲以及參數間時序顛倒的現象。利用軟件界面按鈕可以對數據記錄狀態進行控制,在停止記錄后可將本次記錄數據保存為數據文件。對比數據實時接收系統數據與PCM信號源發送的原始數據,一致性良好,未發現誤碼情況出現。接收過程中的數據波形如圖6所示。

圖6 測試數據波形圖Fig.6 Waveform chart of test data
本文提出了一種基于LabVIEW的PCM數據實時接收系統的設計方法。使用LabVIEW語言搭建數據接收軟件,與數據接收板卡相結合完成PCM數據實時接收顯示功能,加快了系統整體開發速度。最后給出了系統功能的試驗驗證,為進一步優化PCM數據采集系統提供了一種思路。
[1] 段寶元,穆永花,穆永河.新飛機測試改裝網絡數據到PCM的轉換設計[J].計算機測量與控制,2014,22(10):3356-3358. DUAN Bao-yuan,MU Yong-hua,MU Yong-he.Design About the Transformation for Test Installation of New Aircrafts Network Data to PCM Signal[J].Computer Measurement & Control,2014,22(10):3356-3358.
[2] 侯海嘯.基于遙測PCM接收通道的光電經緯儀外引導[J].光電工程,2015,42(7):36-41. HOU Hai-xiao.External Guide for Photoelectric Theodolite Based on Telemetry PCM Receiving Channel[J].Opto-Electronic Engineering,2015,42(7):36-41.
[3] 李楊,胡匯洋,許應康.PCM數據分析信息綜合配置管理系統設計[J].現代電子技術,2015,38(6):47-50. LI Yang,HU Hui-yang,XU Ying-kang.Design of Comprehensive Configuration Management System for PCM Data Information Analysis[J].Modern Electronics Technique,2015,38(6):47-50.
[4] 郝富春,郝翊杰,程立敏.基于LabVIEW的PCM編譯碼系統仿真[J].吉林化工學院學報,2011,28(11):79-83. HAO Fu-chun,HAO Yi-jie,CHENG Li-min.Simulation of the PCM Coding/Decoding System Based on LabVIEW[J].Journal of Jilin Institute of Chemical Technology,2011,28(11):79-83.
[5] 徐超.LabVIEW在實時測控系統中的應用研究[D].重慶:重慶大學,2005. XU Chao.Application and Research on the Real-Time Measure and Control System Based on LabVIEW[D].Chongqing:Chongqing University,2005.
[6] 陳志超.基于LabView的液位預測控制系統的設計[D].合肥:合肥工業大學,2008. CHEN Zhi-chao.The Design of Predictive Water Lever Control System Based on LabView[D].Hefei:Hefei University of Technology,2008.
[7] 魏晨陽,朱健強.基于LabVIEW和聲卡的數據采集系統[J].微計算機信息,2005,21(1):45-46.
WEI Chen-yang,ZHU Jian-qiang.Data Acquisition System Based on LabVIEW and Sound Card[J]. Microcomputer Information,2005,21(1):45-46.
[8] 王江山.多路高速數字信號傳輸與實時顯示系統設計與實現[D].沈陽:東北大學,2014. WANG Jiang-shan.Multi-Channel High-Speed Digital Signal Transmission an Real-Time Display System Design and Implementation[D].Shenyang:Northeastern University,2014.
[9] 韓朝輝,孟令軍,文波.基于CPCI的信號采集板卡設計[J].電子器件,2016,39(4):841-855. HAN Zhao-hui,MENG Ling-jun,WEN Bo.Design of Signal Acquisition Board Based on CPCI[J].Chinese Journal of Electron Devices,2016,39(4):841-855.
[10] 席旭剛,羅志增.基于Windows 2000的數據采集和實時顯示應用研究[J].機電工程,2011,18(5):118-119. XI Xu-gang,LUO Zhi-zeng.Windows 2000 as Platform of Data Acquisition and Real-Time Display[J].Mechanical & Electrical Engineering Magazine,2011,18(5):118-119.
[11] 黃霆.基于LabVIEW的突發誤碼儀的上位機設計與實現[D].武漢:武漢科技大學,2011. HANG Ting.Design and Realization of Host Computer for Burst Error Tester Based on LabVIEW[D].Wuhan:Wuhan University of Science and Technology,2011.
[12] 楊磊,馬鐵華,崔敏,等.基于LabVIEW的四通道多參數測試系統軟件設計[J].山西電子技術,2011(6):64-67. YANG Lei,MA Tie-hua,CUI Min,et al.Design of Software for Four-Channel Multi-Parameters Testing System Based on LABVIEW[J].Shanxi Electronic Technology,2011(6):64-67.
[13] 唐進元,李松,邵文.基于LabVIEW生產者-消費者模式的齒輪傳動振動測試系統[J].機械傳動,2011,35(1):5-7. TANG Jin-yuan,LI Song,SHAO Wen.Gear Transmission Vibration Test System Based on the Producer/ Consumer Model of LabVIEW[J].Journal of Mechanical Transmission,2011,35(1):5-7.
[14] 王維喜,李智.基于生產者-消費者設計模式的連續音頻信號采集系統[J].現代電子技術,2009(7):129-132. WANG Wei-xi,LI Zhi.Continuous Sound Signal Acquisition System with Real-Time Control Based on Producer/Consumer Design Pattern[J].Modern Electronics Technique,2009(7):129-132.
[15] 張進興,安軍社.基于LabVIEW的自動化地面測試軟件系統[J].計算機應用,2016,36(S2):256-258. ZHANG Jin-xing,AN Jun-she.Study and Implementation of Automatic Ground Testing Software System Based on LabVIEW[J].Journal of Computer Applications,2016,36(S2):256-258.