楊 軍 朱學鋒
(92941部隊 葫蘆島 125000)
在導彈、火箭的飛行試驗中,通過傳感器、變換器對彈(箭)各系統狀態及環境的數百個遙測參數進行實時監測,并由遙測系統采集、編碼、調制后通過地面站接收獲得遙測數據。遙測數據處理的任務是通過加工、變換、計算和分析將遙測參數從原始測量數據中提取出來,還原成物理量[1~2]。隨著新武器裝備發展,試驗裝備的型號和數量愈來愈多,而遙測數據的幀結構和參數屬性等會因型號不同而變化,且必須在試驗前完成數據處理軟件的更新和校驗工作[3]。因此,遙測數據處理軟件要具有軟件主體穩定、接口靈活、維護高效的特點[4]。
LabVIEW是一個工業標準的圖形化開發環境,使用圖形化編程G語言編寫程序,產生的程序是框圖形式。擁有豐富的控件和函數庫,采用并行處理的設計模式,能夠快速實現數據處理、數據分析、數據顯示、圖形控制等功能強大的應用程序。圖形化編程方式可以使技術人員將設計的重心從繁冗的代碼編寫轉移到系統設計和功能實現上,從而使開發和維護的效率大幅提高[5]。根據測算,通過G語言編寫程序在保證運行速度的基礎上,能夠節省85%以上的程序開發時間,具有較高的效率[6~7]。本文基于LabVIEW集成開發環境設計遙測數據分路系統實現遙測參數的分路和工程物理量變換,可明顯提高軟件維護更新的效率。
幀是遙測數據的基本數據結構。幀有主幀、副幀(也稱主交換子、次交換子)等,由若干個主幀構成一個幀格式。主幀的基本單位是波道,是傳輸遙測參數的基本單元。副幀結構類似于主幀的數據結構,它的基本單位也是波道,副幀通過主幀的一個或某幾個波道傳送的,主幀傳送一幀數據,副幀只能傳送一路數據。主幀、副幀都有一個表示循環開始或結束的幀同步碼。子幀是兩個幀同步碼之間的分割路循環一周的數據。一個標準的幀格式如圖1,每行為一個子幀[8~9]。

圖1 遙測幀結構
遙測數據因導彈型號和批次的不同,遙測數據的結構及其分路過程也經常發生變化,因此,設計一個平臺性質的分路軟件來適應不同型號的導彈遙測數據分路是非常適宜的。從這一點來考慮,將遙測數據處理中因結構改變而經常變化的參數分路部分提取出來,設計成模塊化軟件平臺,作為型號導彈遙測數據分路系統的基礎[10]。下面按參數表裝訂、輸出參數文件配置、幀結構檢測、遙測數據分路等四個VI子程序說明分路軟件的設計。
遙測參數表描述了每個遙測參數的代號、名稱、數據類型、計算系數、參數類型和所占波道等屬性。規范的遙測參數表字段格式見表1。

表1 遙測參數表的格式
遙測參數表的屬性可以通過純文本文件、電子表格文件按照指定字段順序編排,每行作為一個參數屬性記錄,通過裝訂VI模塊將需要分路或提取的參數裝訂到數據表中。圖2是文本格式的參數表文件裝訂VI,通過調用參數表裝訂VI將參數表的屬性導入到二維數組中,供輸出文件配置VI和遙測參數分路VI調用。
利用參數表中的參數代碼、參數名稱等字段的屬性值按照某種規則合成遙測參數文件名,并創建輸出文件。將參數的輸出文件句柄及其屬性放入數組緩沖區,供遙測數據分路VI調用。其具體實現方法如圖3。

圖3 輸出參數文件配置VI
幀結構檢測完成幀碼、幀長度、幀時間的檢查,對結構完整、時間碼和幀同步碼都正確的幀,將幀時間通過時間碼轉換VI轉換為浮點數,供分路軟件使用。

圖4 遙測數據幀結構檢測VI
遙測數據分路模塊首先利用遙測參數表裝訂VI和輸出參數文件配置VI完成程序的初始化工作[11],打開遙測原始數據文件并進入While循環;再讀取1幀遙測數據,利用幀結構檢測VI檢測幀結構是否完好,若幀數據正常,則利用參數表提供的數據類型、處理類型以及波道號從該幀數據中提取指定波道的數據并進行相應的工程物理量變換,然后將計算結果寫入由文件句柄提供的輸出參數文件。如此循環,直至讀取數據文件失敗,結束程序。遙測數據分路VI程序設計如圖5。

圖5 遙測數據分路VI

圖6 軟件交互界面

圖7 參數曲線
遙測數據分路軟件既可以單獨執行,也可以由其他VI模塊調用執行,具有獨立的軟件操控界面[12]。界面由遙測參數表、參數初始化和幀結構檢測統計結果三部分組成。為了驗證軟件的程序,對某次試驗任務記錄的遙測數據進行分路,裝訂遙測參數表、遙測數據,輸入試驗時間零點和處理開始時間并執行程序,幀結構檢測結果如圖6所示,并按圖7所示逐一檢查每個參數的圖形曲線,驗證參數數據是否正確。經測試表明:該程序各項功能正確、執行效率高且易于維護。
設計了基于LabVIEW的遙測數據分路軟件,實現數百上千的遙測參數的快速提取、變換和計算。利用其豐富的圖形化編程語言快速構建軟件平臺,可有效解決軟件配置更新和校驗繁瑣且耗時長與試驗任務周期短且時間要求緊之間的矛盾,明顯降低了維護難度,提高了工作效率。