国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

數據字典在火控系統(tǒng)報文解析中的應用

2019-05-05 08:48王瑞雪張振華程子兵段笑笑
兵器裝備工程學報 2019年4期
關鍵詞:火控系統(tǒng)可擴展性配置文件

王瑞雪,張振華,張 賓,程子兵,段笑笑

(北方自動控制技術研究所, 太原 030006)

元數據是描述數據的數據,描述了資源信息所具有的根本特征信息,數據字典是一種元數據的管理系統(tǒng),為元數據提供了一個集中存儲空間。經常使用可擴展標記語言(XML)來描述元數據,將元數據描述集中存儲生成數據字典。

參考文獻就關于XML和數據字典的開發(fā)與應用進行了研究與探討,其中有的針對XML文件在邊境指揮信息系統(tǒng)領域、軍事裝配技術和武器裝備保障領域中存儲模型數據、實現(xiàn)數據格式互轉和傳輸協(xié)議互通進行了研究。有的基于元數據描述語言構建了海量實驗數據管理平臺[1]、實現(xiàn)格式化數據鏈消息向結構化XML文檔的轉化[2]和消息字典[3]。有的在工業(yè)控制領域提出了多協(xié)議報文解析方法[4]、通用電文解析技術[5],在指揮信息系統(tǒng)領域設計了可變消息格式的報文解析工具,在多平臺數據環(huán)境下設計了解析工具[6]。現(xiàn)在元數據和數據字典在指揮系統(tǒng)和工業(yè)等領域多有使用,雖然在國內的火控領域也提出了元數據和數據字典概念,但只是用于規(guī)范數據本身。

在炮兵壓制武器領域,指揮信息系統(tǒng)報文變更、報文類型隨炮兵各系列武器差異較大、彈種和設備擴展改進等導致的報文變更問題較為突出。首先,隨著各級指揮信息系統(tǒng)報文不斷優(yōu)化變更(“067”報文協(xié)議2015年9月版和2016年8月版),導致炮兵壓制武器火控系統(tǒng)報文協(xié)議進行適應性改進。其次,不同炮兵武器平臺和不同系列火箭炮、身管炮火控系統(tǒng)往往開發(fā)了各自的報文編解碼應用軟件,導致編解碼軟件通用性差。最后,隨著新型傳感器的發(fā)展,火控系統(tǒng)中新增彈種和設備,也對火控系統(tǒng)報文解碼提出了報文解析的可擴展性要求。

為了解決上述的3個問題,結合數據字典領域的當前研究現(xiàn)狀,和數據字典可以將數據流分解為具有實際含義數據值的功能。采用XML描述報文數據結構和約束條件的方法,建立指揮信息系統(tǒng)報文變更、炮兵各系列武器平臺火控系統(tǒng)不同以及彈種和設備擴展等原因導致的火控系統(tǒng)報文變更的通用報文解碼方法。

1 協(xié)議信息數據結構

為了保證火控系統(tǒng)通信的安全可靠與實時性,經常使用CAN協(xié)議作為通信報文的傳輸協(xié)議。CAN通信報文的結構如圖1所示。

圖1 CAN報文結構

其中CAN報文由CAN報頭與CAN數據組成。其中CAN報頭由報文端口號等信息組成,報文數據項里包含真正需要傳輸的數據信息內容。一般都為顯示為十六進制數的二進制原始數據,具有編碼性質和內容“塊”的特點,根據不同的通信協(xié)議,有不同的編碼含義。

對于每一個火控系統(tǒng)數據元,都要對它的所有約束信息和火控系統(tǒng)協(xié)議數據的組織結構進行規(guī)范化定義。這些信息就是描述報文元數據結構的關鍵信息。包括元數據ID、元數據名稱、元數據長度、長度單位、編碼類型、編碼名稱和編碼描述等內容。其中,元數據ID用于報文描述時確定元數據;元數據名稱用于報文可視化組裝過程,將數據信息注入,是元數據全局使用的標識;元數據長度用于確定元數據在報文中占據的數據長度,長度單位分為Byte和Bit兩種(Byte是1個字節(jié)有8位,而Bit就是一位,是0或1);編碼類型、編碼名稱和編碼描述主要用于報文在可視化組裝過程中,解析代碼的自動生成過程。根據元數據名稱,應用元數據組建火控系統(tǒng)數據池,包含了所有要用到的火控系統(tǒng)元數據。

由于炮兵壓制武器領域存在的報文頻繁變更問題,對元數據提出了可以進行動態(tài)添加、刪除和修改的操作的需求。同時也要對火控系統(tǒng)數據元的約束信息和協(xié)議數據的組織結構進行描述和限制??紤]到這些需求,為了達到更好描述火控系統(tǒng)報文數據信息和方便對報文數據信息進行修改和擴展的目的,結合XML允許用戶自定義所需標記、可進行無限擴展、定義任意復雜度結構等性質,采用XML文件描述對于火控系統(tǒng)元數據的所有約束信息和報文數據組織結構。

2 數據字典實現(xiàn)

根據第1節(jié)中的報文的數據結構,設計火控系統(tǒng)報文協(xié)議的XML描述格式,使用前需要事先編輯好XML配置文件,保存至本地,等待使用。

由于XML具有良好的可擴展性,XML非常適合用來描述元數據。采用XML文件描述元數據的約束信息和數據結構信息,這樣做的優(yōu)點是:數據字典結構清晰,具有良好的可維護性和可擴展性,而且在生成難度較低的同時具有很高的生成效率。下面以定位信息報文為例,展示存儲數據字典的XML配置文件內容格式。

下面是XML配置文件的一個示例,主要展示了定位信息的XML描述,這段代碼對報文里每個元數據的約束信息都清晰詳細的進行了描述:

針對XML協(xié)議配置文件,引用TinyXML開源庫,設計一種解析原始數據流的方法,將數據流與配置文件中的內容一一匹配,刷新數據池中的元數據值。流程如下:

1) 讀取XML配置文件后,判斷文件是否存在且格式正確,如果正確進入下一步,如果不正確,直接結束進程;

2) 讀取報文標識位,計算報文類型ID,判斷與XML配置文件中的默認報文ID是否一致,如果一致則進入下一步,如果不一致,則返回上一步,遍歷報文標識位,匹配相應的報文配置段;

3) 校驗報文字段的位置與長度,與元數據池中對應的元數據名的變量相對應進行復制,更新數據池中的元數據值。

3 解析工具的設計

報文解析工具由五個模塊組成:數據讀取模塊、數據處理模塊、讀取XML配置文件模塊、數據字典模塊和結果顯示模塊。

各個組成模塊的具體功能:

1) 數據讀取模塊:訪問數據庫,在線查詢數據,將查詢后的數據緩存到內存中,進入數據處理模塊處理后解析;

2) 數據處理模塊:判別原始數據中的偽報頭與校驗碼,根據各個協(xié)議的具體要求,輸出相應的數據結構;

3) 讀取XML配置文件模塊:XML配置文件是數據字典的存儲形式,用來描述元數據模型,保存了對于元數據的所有約束信息和報文數據的組織結構,通過這個模塊將XML文件讀入;

4) 數據字典模塊:數據處理模塊輸出的數據結構與讀取XML配置文件模塊中的報文數據信息進行匹配,同時與數據字典對應元數據進行匹配,將數據信息賦值給數據池中的元數據,向結果顯示模塊輸出數據信息,完成二進制數據向可視化數據轉化的解碼工作;

5) 結果顯示模塊:將數據解析的結果信息顯示在界面,將報文數據信息可視化。

Qt是一個用C++編寫的跨平臺開發(fā)框架,具有良好的跨平臺界面開發(fā)軟件,對象主要采用了信號和槽的通信方式,信號和槽機制可實現(xiàn)各模塊間的松耦合,使用Qt編程可以增強軟件的可擴展性和可移植性。

在開發(fā)時,采用Qt軟件開發(fā)C++程序,使用QtCreator完成:使用MySQL與C++的接口函數操作數據庫讀取相應數據;對數據庫中查詢到的原始數據進行數據處理;調用數據字典方法;讀取XML配置文件。采用QtDesigner設計用戶界面,提高軟件的人機交互性能。

4 驗證

運行系統(tǒng)為Linux系統(tǒng),軟件為已完成的報文解析工具。

數據來源為已存儲在數據庫的CAN通信原始數據,是火控系統(tǒng)在正常工作狀態(tài)下,各個單體相互通信的數據。

實驗過程是:啟動解析工具,選擇查詢條件參數,從數據庫查找出信息后會在界面顯示原始數據,選中待解析的一條數據,加載XML配置文件,進行匹配解析,將解析結果顯示在界面。

功能檢測:可擴展性,改變協(xié)議內容,如交換兩個元數據的位置,只更改XML配置文件的內容,將X,Y位置交換,然后解析數據,發(fā)現(xiàn)解析后數據的值位置發(fā)生變化。

圖2為某火控系統(tǒng)中,兩個單體通信數據的解析結果,可以看出解析工具將元數據清晰地解析并顯示。

圖2 數據解析結果

原始配置文件如第二節(jié)所示,修改后的配置文件如下:

圖3為在XML配置文件中修改了經度、緯度的相關描述信息,經緯度位置互換,對經度和緯度的編碼類型和描述進行了更改,并且刪除了高度信息的描述。

圖3 修改XML后解析結果

5 結論

本文按照火控系統(tǒng)協(xié)議的數據結構,針對火控系統(tǒng)報文信息的組成原則和數據特征,結合XML的優(yōu)勢,用XML配置文件描述元數據信息,設計了通用的協(xié)議解析方法,解決了指揮信息系統(tǒng)報文變更、各系列炮兵壓制武器平臺差異和彈種設備擴展導致報文解碼擴展性差的問題。同時,基于數據字典技術開發(fā)了一個火控系統(tǒng)報文解析工具,具有界面操作和顯示功能,既可以驗證數據字典的可擴展性,又可以作為輔助軟件應用在火控系統(tǒng)中。

本文首次將數據字典應用于火控系統(tǒng)軟件應用開發(fā)中,建立了火控系統(tǒng)跨平臺通用報文解析方法;增強了火控系統(tǒng)報文解碼的可擴展性;實現(xiàn)了火控軟件與協(xié)議松耦合,削弱了協(xié)議信息組織方式變化對上層應用的影響。

猜你喜歡
火控系統(tǒng)可擴展性配置文件
基于Docker的實時數據處理系統(tǒng)配置文件管理軟件的設計與實現(xiàn)
從Windows 10中刪除所有網絡配置文件
用軟件處理Windows沙盒配置文件
互不干涉混用Chromium Edge
光電探測技術在火控系統(tǒng)中的應用及發(fā)展
略談增強火控專業(yè)教學緊貼實戰(zhàn)化的幾點思考
系統(tǒng)工程在我國指控、火控系統(tǒng)中的應用
芻議火控系統(tǒng)故障預測與健康管理技術
基于微軟技術的高可擴展性中小企業(yè)系統(tǒng)解決方案研究
大數據分析平臺