(江南機電設計研究所 貴州 貴陽 550000)
隨著發(fā)控系統(tǒng)通信數(shù)據(jù)量的不斷提高,設計師對發(fā)控系統(tǒng)通信數(shù)據(jù)分析的實時性要求也不斷越高。在進行發(fā)控系統(tǒng)的對接實驗過程中為了詳細地了解系統(tǒng)工作過程中各主要設備的工作狀態(tài)及運行過程,方便對故障進行定位和排查,往往會用數(shù)據(jù)記錄設備對與發(fā)控系統(tǒng)進行信息交互的通信數(shù)據(jù)進行記錄,記錄的通信數(shù)據(jù)短則幾萬行,長則幾十萬行。以往采用的處理方法是讓有經驗的試驗人員對發(fā)控系統(tǒng)通信數(shù)據(jù)進行人工判讀,或者針對單一型號編寫軟件工具進行輔助作圖判讀,耗時耗力,通用性較差。
針對上述問題,提出利用Matlb/GUI軟件開發(fā)發(fā)控系統(tǒng)通信數(shù)據(jù)分析工具。利用數(shù)據(jù)采集設備將發(fā)控系統(tǒng)通信數(shù)據(jù)以.xls或.txt格式存儲在指定的文件夾里,便可利用該數(shù)據(jù)分析工具實現(xiàn)文件的導入、讀取、顯示和分析。相對于傳統(tǒng)的發(fā)控系統(tǒng)通信數(shù)據(jù)分析方法,該分析工具既簡化了發(fā)控系統(tǒng)通信數(shù)據(jù)分析過程、節(jié)約了成本。
發(fā)控系統(tǒng)是用于完成參數(shù)解算和裝訂,對導彈進行射前檢查和發(fā)射控制等功能的地面電氣系統(tǒng)[1]。一種典型的發(fā)控系統(tǒng)信息交互圖如圖1所示。從圖中可以看出發(fā)控系統(tǒng)需要實時與指揮控制系統(tǒng)、隨動控制系統(tǒng)、定位定向系統(tǒng)以及導彈等進行通信,同時發(fā)控系統(tǒng)內部設備之間也在進行實時通信。通信過程中,累計了大量的數(shù)據(jù)需要試驗人員去分析處理。
圖1 發(fā)控系統(tǒng)典型信息交互圖
不同型號的地空導彈武器系統(tǒng)采用的信息交互模式不一,數(shù)據(jù)記錄設備記錄保存的通信數(shù)據(jù)也在格式、類型上不一樣。最常見的2種數(shù)據(jù)文件為.xls或.txt格式。而分析界面需要實現(xiàn)的便是能夠將.xls或.txt格式的數(shù)據(jù)導入,將文件中的通信狀態(tài)可以實時顯示在界面的列表框中,方便分析人員進行檢索。根據(jù)發(fā)控系統(tǒng)通信數(shù)據(jù)的實際特點,數(shù)據(jù)分析人員關注的數(shù)據(jù)有三種形式,一種為單個字節(jié)組成的狀態(tài),一種為多個字節(jié)組成的狀態(tài),一種為單個字節(jié)里某些位組成的狀態(tài)。因此需要提供三種作圖模式給數(shù)據(jù)分析人員選擇,依次為單字節(jié)作圖模式、多字節(jié)作圖模式、位作圖模式。
選擇單字節(jié)作圖模式時,分析人員點擊列表框中的狀態(tài)后,系統(tǒng)能夠自動繪出該通信狀態(tài)的波形變化圖,同時在界面上能夠自動顯示出該狀態(tài)在整個記錄過程中的最大值、最小值、平均值。
選擇多字節(jié)作圖模式時,分析人員從軟件界面輸入字節(jié)所占的字節(jié)數(shù)等參數(shù)即可自動繪出該通信狀態(tài)的波形變化圖,同時在界面上能夠自動顯示出該狀態(tài)在整個記錄過程中的最大值、最小值、平均值。
選擇位作圖模式時,分析人員從軟件界面輸入狀態(tài)所占的起始位和終止位等參數(shù)即可自動繪出該通信狀態(tài)的波形變化圖。
最后,由數(shù)據(jù)分析人員對軟件所作的波形圖和參數(shù)進行分析,得出試驗結果。
(二)發(fā)控系統(tǒng)通信數(shù)據(jù)分析界面的實現(xiàn)。常用的界面編寫工具有VC、Matlab/GUI。VC的特點如下:VC中缺失現(xiàn)成的數(shù)據(jù)處理函數(shù),作圖函數(shù),需要自編相應的函數(shù)模塊,會大大增加軟件代碼的編寫量;VC處理大量的數(shù)據(jù)困難。Matlab/GUI的特點如下:MATALB是專業(yè)的數(shù)據(jù)處理軟件,處理矩陣型數(shù)據(jù)較其他軟件很有優(yōu)勢;MATALB中GUI界面具有良好的人機交互性;MATALB自帶大量的數(shù)據(jù)處理函數(shù)、作圖函數(shù),作圖方便[2]。因此選擇Matlab/GUI來實現(xiàn)發(fā)控系統(tǒng)通信數(shù)據(jù)分析軟件的實現(xiàn)。具體的實現(xiàn)過程如下:
(1)在MATLAB主界面的“命令行窗口”中輸入guide,得到圖形用戶界面模板選擇窗口,選擇默認的空白模板(BLANK GUI)選項,即可進入編輯界面[3]。
在GUI編輯界面放置發(fā)控系統(tǒng)通信數(shù)據(jù)分析所需要的控件,包括1個按鈕控件、1個列表框、1個彈出式菜單、7個可編輯文本框、4個不可編輯文本框、12個靜態(tài)文本框,根據(jù)事先規(guī)劃好的軟件界面布局圖依次將各組建放置到合適位置,并進行屬性編輯設置,設計好的軟件界面。
(2)編寫對應控件的回調函數(shù):先編寫各自控件的回調函數(shù),再根據(jù)每個控件需要實現(xiàn)的功能編寫調用函數(shù),便能將控件間都聯(lián)系起來,完成數(shù)據(jù)分析界面的編程[4]。若用戶需增加新功能,只需從GUI中添加相應的控件模塊再對其進行回調函數(shù)和調用函數(shù)的編程即可。軟件代碼編寫完成后,點擊編譯按鈕即可生成.fig的發(fā)控系統(tǒng)通信數(shù)據(jù)分析界面。
(三)發(fā)控系統(tǒng)通信數(shù)據(jù)分析的操作實例。以某txt格式的通信數(shù)據(jù)為例,用編譯生成的發(fā)控系統(tǒng)通信數(shù)據(jù)分析界面進行分析:
1)打開發(fā)控系統(tǒng)通信數(shù)據(jù)分析界面,點擊“打開文件”按鈕,選擇需要導入文本格式的數(shù)據(jù),若成功導入,則最上面的編輯框會顯示讀取文件的路徑和文件名稱。同時軟件會自動將通信數(shù)據(jù)文件第一行的狀態(tài)名稱顯示在左側的列表框中,數(shù)據(jù)分析人員可以一目了然地看出自己所關心的狀態(tài)名稱所在的位置。
2)依據(jù)通信協(xié)議文件在末位量化可編輯框輸入左側列表框選中狀態(tài)對應的末位量化值,在彈出式菜單下拉選項中選擇“單字節(jié)作圖”模式,軟件自動繪出左側列表框選中狀態(tài)的波形圖。
3)當數(shù)據(jù)分析人員所關注的通信數(shù)據(jù)占2個或以上的字節(jié)時,此時在左側列表框選中該狀態(tài)的起始字節(jié),同時在“占用字節(jié)數(shù)”可編輯框中輸入該狀態(tài)所占的字節(jié)數(shù),在狀態(tài)名處輸入狀態(tài)的名稱,然后在彈出式菜單下拉選項中選擇“多字節(jié)作圖”模式即可。
4)當數(shù)據(jù)分析人員所關注的通信數(shù)據(jù)占1個一位或幾位時,此時在左側列表框選中該位字節(jié)所在的狀態(tài),同時在起始位和終止位編輯框中輸入對應的參數(shù),在狀態(tài)名處輸入狀態(tài)的名稱,然后在彈出式菜單下拉選項中選擇“位作圖”模式即可。
本文根據(jù)發(fā)控系統(tǒng)通信數(shù)據(jù)的特點,采用Matlab/GUI軟件設計了發(fā)控系統(tǒng)通信數(shù)據(jù)分析軟件,能夠對以常見格式保存的發(fā)控系統(tǒng)通信數(shù)據(jù)進行自動檢索作圖分析。相較之前單一通信數(shù)據(jù)編寫單一分析程序,繼承性差且費時費力,本發(fā)控系統(tǒng)通信數(shù)據(jù)分析軟件具有多種作圖模式可供選擇,人機交互界面友好,大大提高了發(fā)控系統(tǒng)通信數(shù)據(jù)的分析效率,實現(xiàn)了一個軟件就能通用化分析不同型號導彈武器發(fā)控系統(tǒng)的通信數(shù)據(jù)。