彭 益,魏立柱
(中國電子科學(xué)研究院,北京 100041)
信息是信息化戰(zhàn)爭(zhēng)中的決定因素,數(shù)據(jù)鏈的根本作用就是解決信息獲取、信息處理和信息傳輸?shù)慕Y(jié)合問題,并從速度上進(jìn)行優(yōu)化,極大地增強(qiáng)部隊(duì)的整體作戰(zhàn)效能。
Link-16 數(shù)據(jù)鏈,又稱戰(zhàn)術(shù)數(shù)字信息鏈路- J(TADIL-J),是美國和北約部隊(duì)廣泛采用的一種戰(zhàn)術(shù)數(shù)據(jù)鏈路。Link-16 數(shù)據(jù)鏈已裝備美國和北約全部的預(yù)警機(jī)和許多地面防空指揮所,以及戰(zhàn)斗機(jī)、直升機(jī)、驅(qū)逐艦和航母等典型的作戰(zhàn)平臺(tái),可在指揮控制系統(tǒng)與飛機(jī)、導(dǎo)彈等武器系統(tǒng)平臺(tái)之間以及在各作戰(zhàn)單元之間傳輸各種格式化戰(zhàn)術(shù)數(shù)據(jù)信息,有效連接信息源、指揮控制中心與武器系統(tǒng)平臺(tái),實(shí)現(xiàn)戰(zhàn)場(chǎng)資源共享[1-2]。
HLA,即高層體系結(jié)構(gòu)(HLA,High Level Architecture),它是一個(gè)通用的仿真技術(shù)框架,定義了構(gòu)成仿真各部分的功能及相互關(guān)系[3-4]。在HLA 中,聯(lián)邦(Federation)是用于達(dá)到某一特定仿真目的的分布仿真系統(tǒng),其運(yùn)行過程稱為聯(lián)邦執(zhí)行,它由若干個(gè)相互作用的聯(lián)邦成員構(gòu)成。聯(lián)邦成員由若干相互作用的對(duì)象構(gòu)成,對(duì)象是成員的基本元素,可以是對(duì)具體實(shí)體的抽象,也可以是對(duì)某個(gè)物理過程的抽象。聯(lián)邦成員間的信息交互通過RTI(運(yùn)行支持環(huán)境)提供的服務(wù)來實(shí)現(xiàn)。
HLA 在解決異構(gòu)、分布、協(xié)同的仿真模型和仿真系統(tǒng)的互操作及可重用性方面具有較大的技術(shù)優(yōu)勢(shì)。它為復(fù)雜大系統(tǒng)的建模和仿真提供了公共的技術(shù)支撐框架,支持各類系統(tǒng)(包括物理實(shí)裝系統(tǒng))的仿真互連,還能支持基于組件的仿真應(yīng)用開發(fā)模式。HLA提供通用的數(shù)據(jù)交換通信協(xié)議和通用的、開放的、可根據(jù)不同應(yīng)用領(lǐng)域定制的數(shù)據(jù)語義互操作協(xié)議,各聯(lián)邦成員之間僅通過RTI 來實(shí)現(xiàn)系統(tǒng)的底層互聯(lián)和信息交互,完全屏蔽了不同系統(tǒng)之間的差異性。
Link-16 推演支持系統(tǒng)通過加載想定和網(wǎng)絡(luò)規(guī)劃,在統(tǒng)一的推演控制下,在網(wǎng)絡(luò)運(yùn)行模擬設(shè)備、各參與平臺(tái)和支撐平臺(tái)的參與下,對(duì)任務(wù)規(guī)劃和行動(dòng)需求一致性、Link-16 網(wǎng)絡(luò)規(guī)劃以及網(wǎng)絡(luò)資源的合理性進(jìn)行驗(yàn)證。
Link-16 推演支持系統(tǒng)由預(yù)案管理子系統(tǒng)、推演控制子系統(tǒng)、支撐平臺(tái)子系統(tǒng)、參與平臺(tái)子系統(tǒng)和網(wǎng)絡(luò)運(yùn)行模擬子系統(tǒng)組成,分別接入導(dǎo)調(diào)控制網(wǎng)和數(shù)據(jù)消息網(wǎng)。Link-16 推演支持系統(tǒng)的總體結(jié)構(gòu)如圖1 所示。
圖1 Link-16 推演支持系統(tǒng)總體結(jié)構(gòu)圖
預(yù)案管理子系統(tǒng)由服務(wù)器及操作臺(tái)和相應(yīng)的軟件組成,完成想定和數(shù)據(jù)鏈預(yù)案的生成、加載管理和維護(hù),在推演開始前將Link-16 數(shù)據(jù)鏈網(wǎng)絡(luò)組織預(yù)案?jìng)鬏數(shù)酵蒲菘刂谱酉到y(tǒng)。
推演控制子系統(tǒng)負(fù)責(zé)整個(gè)推演過程的導(dǎo)調(diào)控制,具備數(shù)據(jù)鏈網(wǎng)絡(luò)組織預(yù)案接收和分解,行動(dòng)態(tài)勢(shì)推演管理和分發(fā)、發(fā)布干預(yù)指令、參與平臺(tái)響應(yīng)信息處理等功能。
參與平臺(tái)子系統(tǒng)即為Link-16 網(wǎng)絡(luò)典型參與平臺(tái)的模擬器。
支撐平臺(tái)子系統(tǒng)由支持驗(yàn)證測(cè)試J 序列格式化消息交互背景生成的多平臺(tái)模擬器和傳感器模擬器等設(shè)備組成;多平臺(tái)模擬器和傳感器模擬器能夠輔助推演控制子系統(tǒng)參與信息交互。
Link-16 網(wǎng)絡(luò)運(yùn)行模擬子系統(tǒng)由Link-16 網(wǎng)絡(luò)運(yùn)行模擬器根據(jù)網(wǎng)絡(luò)規(guī)模配置組成,嚴(yán)格按照加載的Link-16 網(wǎng)絡(luò)規(guī)劃控制Link-16 網(wǎng)絡(luò)的運(yùn)行,逼真模擬Link-16 網(wǎng)絡(luò)信息交換。
導(dǎo)調(diào)控制網(wǎng)負(fù)責(zé)分發(fā)統(tǒng)一的推演態(tài)勢(shì)和導(dǎo)調(diào)指令;數(shù)據(jù)消息網(wǎng)負(fù)責(zé)分發(fā)格式化消息,消息格式嚴(yán)格遵循Link-16的J 序列消息標(biāo)準(zhǔn)[2]。
Link-16 推演支持系統(tǒng)的各子系統(tǒng)在功能上相對(duì)獨(dú)立,在整個(gè)系統(tǒng)的設(shè)計(jì)上采用模塊化、松耦合的設(shè)計(jì),先獨(dú)立開發(fā)各子系統(tǒng)的業(yè)務(wù)功能,最后再統(tǒng)一集成。對(duì)于數(shù)據(jù)消息網(wǎng),其上傳輸?shù)亩际荓ink-16的J 序列消息,各子系統(tǒng)與數(shù)據(jù)消息網(wǎng)之間的接口按照J(rèn) 序列消息標(biāo)準(zhǔn)設(shè)計(jì)即可。對(duì)于導(dǎo)調(diào)控制網(wǎng),各接入子系統(tǒng)都通過其接收和上傳導(dǎo)調(diào)指令,在本系統(tǒng)的設(shè)計(jì)過程中,考慮通過HLA 技術(shù)框架來實(shí)現(xiàn)。
導(dǎo)調(diào)控制網(wǎng)通過HLA 實(shí)現(xiàn),在推演過程中,可協(xié)調(diào)各子系統(tǒng)按照統(tǒng)一的邏輯時(shí)間步進(jìn),完成想定推演,并在推演過程中,完成各平臺(tái)間信息交互。為了保持系統(tǒng)接口的統(tǒng)一性,并減少各子系統(tǒng)在實(shí)現(xiàn)導(dǎo)調(diào)控制網(wǎng)接入時(shí)的工作量,在本系統(tǒng)的設(shè)計(jì)過程中,專門設(shè)計(jì)了HLA 接口控件,使各子系統(tǒng)可以通過DLL(動(dòng)態(tài)鏈接庫)以事件驅(qū)動(dòng)的方式訪問導(dǎo)調(diào)控制網(wǎng),進(jìn)而與推演控制子系統(tǒng)協(xié)同工作。HLA 接口控件如圖2 所示。
圖2 HLA 接口控件
按照HLA 標(biāo)準(zhǔn)開發(fā)流程[4],導(dǎo)調(diào)控制網(wǎng)的實(shí)現(xiàn)按照如下步驟進(jìn)行:
(1)根據(jù)Link-16 推演的實(shí)際需求,建立FOM和SOM;
(2)編制HLA 軟件框架;
(3)在HLA 軟件框架基礎(chǔ)上構(gòu)建HLA 接口控件。在HLA 接口控件中,封裝HLA 接口服務(wù);
(4)在需要接入導(dǎo)調(diào)控制網(wǎng)的推演控制子系統(tǒng)、參與平臺(tái)子系統(tǒng)和支撐平臺(tái)子系統(tǒng)上嵌入HLA接口控件,通過主動(dòng)調(diào)用該控件所提供的服務(wù)或響應(yīng)該控件的事件,來完成與RTI的交互;
(5)將各子系統(tǒng)部署在同一推演環(huán)境中;
(6)在HLA 提供的統(tǒng)一時(shí)間步進(jìn)下進(jìn)行推演,在推演過程中進(jìn)行信息交互。
HLA 接口控件的調(diào)用是通過一系列的方法和事件來完成的。其中方法可理解為各子系統(tǒng)和參與平臺(tái)向推演控制子系統(tǒng)申請(qǐng)某種服務(wù);事件可理解為各子系統(tǒng)和參與平臺(tái)對(duì)推演控制子系統(tǒng)指令的響應(yīng)。
整個(gè)推演過程可分為推演初始化、推演交互和推演結(jié)束三個(gè)階段,下面對(duì)各階段的方法和事件進(jìn)行簡要介紹。
4.3.1 初始化階段主要的方法和事件
(1)聯(lián)邦初始化方法(FedInit)。各平臺(tái)調(diào)用此方法來加入數(shù)據(jù)鏈推演環(huán)境聯(lián)邦。
(2)仿真對(duì)象注冊(cè)方法(PlatRegister)。該方法用于聯(lián)邦成員向推演控制子系統(tǒng)注冊(cè)一個(gè)仿真對(duì)象(模擬對(duì)象實(shí)例)。
(3)仿真對(duì)象初始化事件(OnInitPlat)。各聯(lián)邦成員對(duì)FedInit 方法的響應(yīng)。
(4)態(tài)勢(shì)訂購方法(SubmitInfo)。該方法用于聯(lián)邦成員向推演控制子系統(tǒng)訂購態(tài)勢(shì)對(duì)象。
(5)設(shè)置命令響應(yīng)范圍方法(SetCmdRange)。該方法用于聯(lián)邦成員設(shè)置命令響應(yīng)范圍的上下限。
(6)請(qǐng)求網(wǎng)絡(luò)規(guī)劃方法(ReqDatalinkProg)。該方法用于聯(lián)邦成員從推演引擎下載數(shù)據(jù)鏈網(wǎng)絡(luò)規(guī)劃。
(7)收到網(wǎng)絡(luò)規(guī)劃事件(OnRecvDatalinkProg)。各聯(lián)邦成員對(duì)ReqDatalinkProg 方法的響應(yīng)。
(8)聯(lián)邦準(zhǔn)備就緒方法(ReadyForStart)。該方法用于通知推演控制子系統(tǒng)本模擬平臺(tái)所在聯(lián)邦成員已經(jīng)準(zhǔn)備就緒。聯(lián)邦成員準(zhǔn)備就緒的條件包括:各聯(lián)邦成員的FedInit 方法、FedRegister 方法、SubmitInfo 方法、SetCmdRange 方法和GetDatalinkProg方法完成。
以上各方法和事件的調(diào)用過程如圖3 所示。
4.3.2 推演交互階段主要的方法和事件
(1)態(tài)勢(shì)更新事件(OnPlatChanged)。當(dāng)態(tài)勢(shì)信息發(fā)生更新時(shí),觸發(fā)此事件,并將新的態(tài)勢(shì)對(duì)象清單傳遞給事件接收聯(lián)邦成員。
圖3 推演初始化過程
(2)查詢態(tài)勢(shì)信息方法(ReqStepSts)。該方法用于聯(lián)邦成員查詢指定仿真平臺(tái)對(duì)象在當(dāng)前的態(tài)勢(shì)信息。
(3)下行指令事件(OnCmd)。推演引擎根據(jù)劇情,不定期激發(fā)此事件,聯(lián)邦成員接收此事件。
(4)上行指令方法(SendCmd)。該方法用于人工干預(yù)仿真平臺(tái)對(duì)象(如改變航向等)時(shí),聯(lián)邦成員進(jìn)行調(diào)用。
(5)請(qǐng)求步進(jìn)方法(ReqForward)。該方法用于當(dāng)聯(lián)邦成員處理完本步進(jìn)的任務(wù)后,調(diào)用本方法向推演控制子系統(tǒng)請(qǐng)求推進(jìn)下一步進(jìn)。
上述各方法和事件的調(diào)用過程如圖4 所示。
圖4 推演交互過程
4.3.3 推演結(jié)束階段主要的方法和事件
推演結(jié)束事件(OnEnd),在劇情推演結(jié)束時(shí),各聯(lián)邦成員接收此事件,結(jié)束整個(gè)推演過程。調(diào)用過程如圖5 所示。
圖5 推演結(jié)束過程
通過分析Link-16 推演支持系統(tǒng)的功能需求,利用HLA 架構(gòu)解決了多個(gè)子系統(tǒng)按統(tǒng)一時(shí)間步進(jìn)及相互之間的互操作問題。采用事件驅(qū)動(dòng)的方式完成了對(duì)HLA 服務(wù)的封裝,開發(fā)了HLA 接口控件,簡化了HLA 應(yīng)用開發(fā)難度,便于現(xiàn)有仿真平臺(tái)、半實(shí)裝平臺(tái)和實(shí)裝平臺(tái)的接入實(shí)現(xiàn)。本系統(tǒng)的研制對(duì)于其他類似系統(tǒng)的開發(fā)可提供很大的借鑒。
[1]孫義民,楊麗萍.信息化戰(zhàn)爭(zhēng)中的戰(zhàn)術(shù)數(shù)據(jù)鏈[M].北京:北京郵電大學(xué)出版社,2005.
[2]梅文華,蔡善法.JTIDS/Link 16 數(shù)據(jù)鏈[M].北京:國防工業(yè)出版社,2007.
[3]周彥,戴劍偉.HLA 仿真程序設(shè)計(jì)[M].北京:電子工業(yè)出版社,2002.
[4]付正軍,王永紅,譯.計(jì)算機(jī)仿真中的HLA 技術(shù)[M].北京:國防工業(yè)出版社,2003.
[5]董光波,張錫恩.某裝備分布式仿真訓(xùn)練基于HLA的實(shí)現(xiàn)[J].系統(tǒng)仿真學(xué)報(bào),2004,16(1):101-103.
[6]張霞,黃莎白.基于HLA 訓(xùn)練仿真系統(tǒng)開發(fā)研究[J].計(jì)算機(jī)仿真,2004,21(2):85-86.