蘇耀峰
基于XSimStudio的態(tài)勢(shì)顯示系統(tǒng)設(shè)計(jì)
蘇耀峰
本文通過(guò)對(duì)態(tài)勢(shì)顯示系統(tǒng)的分析設(shè)計(jì),使用XSimStudio可擴(kuò)展仿真平臺(tái)提供的開(kāi)發(fā)接口實(shí)現(xiàn)了地圖背景設(shè)置、態(tài)勢(shì)數(shù)據(jù)管理、態(tài)勢(shì)顯示控制、實(shí)體狀態(tài)顯示以及態(tài)勢(shì)記錄回放等功能,能夠?qū)崟r(shí)或回放顯示模擬訓(xùn)練過(guò)程中產(chǎn)生的各類態(tài)勢(shì),為組織實(shí)施模擬訓(xùn)練和技術(shù)保障提供了有效手段。
態(tài)勢(shì)顯示系統(tǒng)是各類模擬仿真系統(tǒng)的重要組成部分,主要是在二維或三維地圖背景上實(shí)時(shí)(回放)顯示仿真空間內(nèi)各種實(shí)體的相關(guān)狀態(tài)信息以及天氣、電磁等環(huán)境信息,為使用人員掌握仿真態(tài)勢(shì)、處置訓(xùn)練情況、配合訓(xùn)練評(píng)估以及驗(yàn)證模擬訓(xùn)練方案合理性,組織實(shí)施各種保障提供手段。其設(shè)計(jì)的核心問(wèn)題是選取何種地理信息平臺(tái)、如何獲取仿真空間內(nèi)各種數(shù)據(jù)、如何映射這些數(shù)據(jù)并圖形化顯示這三個(gè)問(wèn)題。
XSimStudio可擴(kuò)展仿真平臺(tái)是一個(gè)基于組件化建模與離散事件仿真技術(shù)的建模仿真平臺(tái),為各領(lǐng)域各層級(jí)的仿真系統(tǒng)提供了一攬子解決方案。它提供模型管理、事件管理、時(shí)間管理、數(shù)據(jù)采集等服務(wù)以及開(kāi)發(fā)接口,遵守HLA/DIS/TENA等多種技術(shù)標(biāo)準(zhǔn),為基于XSimStudio開(kāi)發(fā)態(tài)勢(shì)顯示、分析評(píng)估等模擬訓(xùn)練系統(tǒng)提供了便利。因此,本文擬采用XSimStudio可擴(kuò)展仿真平臺(tái)設(shè)計(jì)一個(gè)通用性較強(qiáng)的態(tài)勢(shì)顯示系統(tǒng)。
圍繞態(tài)勢(shì)顯示系統(tǒng)設(shè)計(jì)中考慮的核心問(wèn)題,以及XSimStudio仿真平臺(tái)的主要功能,我們將態(tài)勢(shì)顯示系統(tǒng)設(shè)計(jì)為由地圖背景設(shè)置、態(tài)勢(shì)數(shù)據(jù)管理、態(tài)勢(shì)顯示控制、實(shí)體狀態(tài)顯示、態(tài)勢(shì)記錄回放等功能模塊組成的系統(tǒng)結(jié)構(gòu),如圖1所示。
其中,地圖背景設(shè)置主要用于二維地圖的選擇、漫游、放大縮小等控制,態(tài)勢(shì)數(shù)據(jù)管理主要用于態(tài)勢(shì)數(shù)據(jù)的獲取、更新和清除,態(tài)勢(shì)顯示控制主要用于態(tài)勢(shì)信息的過(guò)濾顯示,實(shí)體狀態(tài)顯示主要用于顯示各仿真實(shí)體狀態(tài)信息,態(tài)勢(shì)記錄回放主要用于記錄回放訓(xùn)練態(tài)勢(shì)及其變化情況。
地圖背景設(shè)置
地圖背景設(shè)置可通過(guò)地圖拼圖表打開(kāi)指定區(qū)域內(nèi)的地圖,也可根據(jù)數(shù)據(jù)庫(kù)設(shè)置好的地圖范圍自動(dòng)打開(kāi)地圖;地圖打開(kāi)以后,可實(shí)施自由漫游、放大縮小等操作,也可根據(jù)需要定位到指定位置。這些功能都是地理信息系統(tǒng)常用的基本功能,在XSimStudio仿真平臺(tái)中也提供了封裝好的API接口。在實(shí)現(xiàn)過(guò)程中只需直接調(diào)用相應(yīng)的接口即可,在此不再累述。
態(tài)勢(shì)數(shù)據(jù)管理
態(tài)勢(shì)數(shù)據(jù)管理是通過(guò)XSimStudio提供的分布式仿真框架獲取、更新態(tài)勢(shì)數(shù)據(jù),并可進(jìn)行態(tài)勢(shì)數(shù)據(jù)的主動(dòng)查詢和刪除。其主要業(yè)務(wù)流程如圖2所示。
系統(tǒng)首先從仿真框架獲取實(shí)體數(shù)據(jù)并進(jìn)行字段過(guò)濾,只保留位置、方位角、屬方、級(jí)別、番號(hào)、軍標(biāo)號(hào)等對(duì)顯示有影響的字段以及實(shí)體內(nèi)碼、數(shù)據(jù)狀態(tài)等標(biāo)識(shí)字段,并使用專門的數(shù)據(jù)結(jié)構(gòu)進(jìn)行保存。更新態(tài)勢(shì)數(shù)據(jù)時(shí),需要首先查找數(shù)據(jù)記錄集,若有該實(shí)體記錄則進(jìn)行比對(duì)并更新相應(yīng)數(shù)據(jù)字段和標(biāo)識(shí)字段,若不存在該實(shí)體記錄則新增數(shù)據(jù)記錄并填充數(shù)據(jù)字段和標(biāo)識(shí)字段。查詢態(tài)勢(shì)數(shù)據(jù)時(shí),可根據(jù)實(shí)體內(nèi)碼標(biāo)識(shí)字段唯一確定一條態(tài)勢(shì)數(shù)據(jù)記錄。刪除態(tài)勢(shì)數(shù)據(jù)時(shí),可根據(jù)實(shí)體內(nèi)碼標(biāo)識(shí)字段逐一進(jìn)行刪除,也可進(jìn)行所有數(shù)據(jù)記錄的整體刪除。
圖2 態(tài)勢(shì)數(shù)據(jù)管理流程
態(tài)勢(shì)數(shù)據(jù)管理中還有一類重要數(shù)據(jù)——航跡數(shù)據(jù),航跡是實(shí)體運(yùn)動(dòng)位置的歷史記錄,標(biāo)示了相應(yīng)實(shí)體的運(yùn)動(dòng)軌跡。為了在態(tài)勢(shì)上顯示實(shí)體航跡,需要設(shè)計(jì)一個(gè)數(shù)據(jù)結(jié)構(gòu)專門存儲(chǔ)其歷史位置信息。該結(jié)構(gòu)可以以實(shí)體內(nèi)碼為索引,將實(shí)體的運(yùn)動(dòng)軌跡按照先后順序進(jìn)行存儲(chǔ)。記錄過(guò)程中,若前后兩個(gè)航跡點(diǎn)數(shù)據(jù)相同則不記錄,否則進(jìn)行記錄。為了增加靈活性和節(jié)約存儲(chǔ)空間,可以對(duì)該結(jié)構(gòu)的長(zhǎng)度進(jìn)行限制。通過(guò)限制長(zhǎng)度,可以記錄定長(zhǎng)的航跡并可以進(jìn)行動(dòng)態(tài)調(diào)整。
圖3 態(tài)勢(shì)顯示控制流程
圖4 實(shí)體狀體顯示流程
態(tài)勢(shì)顯示控制
態(tài)勢(shì)顯示控制是根據(jù)態(tài)勢(shì)數(shù)據(jù)記錄集和對(duì)應(yīng)的顯示規(guī)則進(jìn)行送顯,并可以根據(jù)紅藍(lán)雙方不同軍種、兵種的顯示需求進(jìn)行過(guò)濾顯示。其主要業(yè)務(wù)流程如圖3所示。
系統(tǒng)首先根據(jù)態(tài)勢(shì)刷新間隔遍歷態(tài)勢(shì)數(shù)據(jù)記錄集,并使用已配置好的顯示規(guī)則進(jìn)行匹配,將不同屬方、級(jí)別的軍標(biāo)進(jìn)行顏色、大小的區(qū)分,并填充軍標(biāo)標(biāo)繪數(shù)據(jù)結(jié)構(gòu)。若遍歷到數(shù)據(jù)狀態(tài)為新增的態(tài)勢(shì)數(shù)據(jù)記錄,則使用軍標(biāo)標(biāo)繪服務(wù)插入軍標(biāo);若遍歷到數(shù)據(jù)狀態(tài)為已更新的態(tài)勢(shì)數(shù)據(jù)記錄,則使用軍標(biāo)標(biāo)繪服務(wù)更新軍標(biāo);若遍歷到數(shù)據(jù)狀態(tài)為未更新的態(tài)勢(shì)數(shù)據(jù)記錄,則不進(jìn)行顯示處理;若遍歷到數(shù)據(jù)狀態(tài)為刪除的態(tài)勢(shì)數(shù)據(jù)記錄,則使用軍標(biāo)標(biāo)繪服務(wù)刪除軍標(biāo)。最后根據(jù)用戶界面中的顯示控制過(guò)濾條件,區(qū)分不同屬方、級(jí)別,通過(guò)軍標(biāo)標(biāo)繪服務(wù)提供的軍標(biāo)顯示/隱藏功能進(jìn)行過(guò)濾顯示。
對(duì)于航跡數(shù)據(jù)的控制主要由用戶界面進(jìn)行控制,若用戶選擇顯示實(shí)體航跡,則系統(tǒng)首先讀取態(tài)勢(shì)數(shù)據(jù)管理中的航跡數(shù)據(jù),并使用軍標(biāo)標(biāo)繪服務(wù)提供的插入軍標(biāo)功能插入航跡軍標(biāo)??紤]到態(tài)勢(shì)顯示過(guò)程中,大部分實(shí)體位置變化不大,同時(shí)為了減少系統(tǒng)頻繁進(jìn)行查找軍標(biāo)動(dòng)作,在每次插入航跡軍標(biāo)之前,首先將用戶界面中的航跡軍標(biāo)全部刪除后再進(jìn)行插入。若用戶選擇不顯示實(shí)體航跡,則系統(tǒng)不讀取航跡數(shù)據(jù),并直接刪除所有航跡軍標(biāo)。
實(shí)體狀態(tài)顯示
實(shí)體狀態(tài)顯示是根據(jù)需要利用態(tài)勢(shì)數(shù)據(jù)管理建立的數(shù)據(jù)記錄集使用表、圖、文字等多種形式顯示實(shí)體簡(jiǎn)要信息和詳細(xì)信息。其主要業(yè)務(wù)流程如圖4所示。
系統(tǒng)首先接收視圖傳遞的鼠標(biāo)點(diǎn)擊事件,根據(jù)點(diǎn)擊位置查找到所需要顯示的實(shí)體軍標(biāo),然后根據(jù)實(shí)體軍標(biāo)存儲(chǔ)的實(shí)體內(nèi)碼查詢態(tài)勢(shì)數(shù)據(jù)記錄集,若查詢到相應(yīng)記錄,則根據(jù)記錄的數(shù)據(jù)字段和顯示格式,將實(shí)體簡(jiǎn)要信息顯示在實(shí)體信息圖表中;若沒(méi)有查詢到相應(yīng)記錄,則清空實(shí)體信息圖表。在實(shí)體信息圖表中,點(diǎn)擊詳細(xì)信息查詢按鈕,系統(tǒng)利用XSimStudio提供的查找集功能在對(duì)象管理器中查找該實(shí)體的所有狀態(tài)信息,并以文字形式填充到相應(yīng)位置。
態(tài)勢(shì)記錄回放
態(tài)勢(shì)記錄需要對(duì)訓(xùn)練過(guò)程中所有態(tài)勢(shì)數(shù)據(jù)進(jìn)行記錄,既包括實(shí)體數(shù)據(jù)也包括事件數(shù)據(jù)。系統(tǒng)可以利用XSimStudio的記錄功能,通過(guò)修改配置文件相應(yīng)配置項(xiàng)的方式,實(shí)時(shí)記錄當(dāng)前態(tài)勢(shì)信息并保存到態(tài)勢(shì)記錄文件中,文件在路徑“MTPTSMFrameSDKRTMData”下,以“.xscn3”結(jié)尾,此處不再詳細(xì)介紹。
態(tài)勢(shì)回放支持從任意時(shí)間點(diǎn)開(kāi)始回放,以及前進(jìn)、后退、加速、減速、暫停、繼續(xù)等多種方式的回放操作。系統(tǒng)首先通過(guò)XSimStudio的回放數(shù)據(jù)文件數(shù)據(jù)源接口方法為回放數(shù)據(jù)文件數(shù)據(jù)設(shè)置數(shù)據(jù)提供者;使用設(shè)置仿真框架方法為回放數(shù)據(jù)文件數(shù)據(jù)源設(shè)置主框架。其次,通過(guò)加載想定文件接口加載態(tài)勢(shì)記錄文件,只有態(tài)勢(shì)記錄文件成功加載之后,數(shù)據(jù)提供者才能正確獲取到當(dāng)前想定的具體信息。再次,通過(guò)數(shù)據(jù)提供者設(shè)置數(shù)據(jù)源方法設(shè)置數(shù)據(jù)源,設(shè)置數(shù)據(jù)源成功后,數(shù)據(jù)提供者可以獲取想定運(yùn)行時(shí)的信息。最后,回放過(guò)程中的開(kāi)始、快進(jìn)、快退、停止、繼續(xù)等操作均使用仿真平臺(tái)運(yùn)行控制方法進(jìn)行控制并讀取對(duì)應(yīng)時(shí)刻想定數(shù)據(jù),進(jìn)而獲取對(duì)象管理器中各類實(shí)體狀態(tài)數(shù)據(jù)。狀態(tài)數(shù)據(jù)的管理和態(tài)勢(shì)的顯示控制和前面的實(shí)時(shí)態(tài)勢(shì)顯示一致,在此不再累述。
通過(guò)系統(tǒng)設(shè)計(jì),該態(tài)勢(shì)顯示系統(tǒng)具備了地圖背景設(shè)置、態(tài)勢(shì)數(shù)據(jù)管理、態(tài)勢(shì)顯示控制、實(shí)體狀態(tài)顯示、態(tài)勢(shì)記錄回放等功能,能夠綜合顯示紅藍(lán)雙方的作戰(zhàn)態(tài)勢(shì),支持分類、分層、分級(jí)、分區(qū)域的態(tài)勢(shì)顯示和控制,能夠?qū)?zhàn)場(chǎng)實(shí)體狀態(tài)進(jìn)行顯示和查詢,并可以對(duì)訓(xùn)練態(tài)勢(shì)進(jìn)行全程記錄和按需回放。該系統(tǒng)具有通用性強(qiáng)、可擴(kuò)展性好等特點(diǎn),可廣泛應(yīng)用于各類模擬訓(xùn)練系統(tǒng)建設(shè)。
蘇耀峰
國(guó)防信息學(xué)院
蘇耀峰,男,碩士,國(guó)防信息學(xué)院,主要研究方向?yàn)樾畔⑾到y(tǒng)開(kāi)發(fā)與運(yùn)用。
10.3969/j.issn.1001-8972.2016.07.013