电子战训练仿真系统分析与设计(2)
来源:第三维度
作者:常伟,张冉,陈琦,徐忠富
单位:国防科技大学电子科学与工程学院
中国人民解放军63880部队
2.5 联邦组成
将通信对抗训练仿真联邦设计为由以下3个联邦成员组成:
(1) 通信对抗群联邦成员。实现侦察及指挥引导和干扰2个用例。
(2) 战术通信网联邦成员。实现通信及抗干扰1个用例。
(3) 仿真训练管理联邦成员。实现态势综合显示、评估、仿真过程控制、记录和回放5个用例。
2.6 联邦成员模型举例
分析通信对抗群成员的功能流程,设计其仿真对象模型SOM。在此基础上,基于联邦成员代码自动生成工具生成的成员仿真软件框架代码,设计通信对抗群成员的结构模型和行为模型。依照类似的方法,可以完成其他联邦成员的结构模型和行为模型的分析和设计,最终完成联邦模型的分析与设计。
(1) 通信对抗群成员的功能流程与SOM通信对抗群实现“侦察及指挥引导”和“干扰”2个功能用例,其功能流程如下:
1) 通信对抗群成员加入联邦。
2) 初始化联邦成员。侦控站指挥员在战场数字地形图指定位置放置侦控站和干扰站的军标符号,设置侦控站和干扰站的编号和侦控站的工作频段。
3) 完成对象类和交互类的公布和订购。公布的对象类包括“侦控站”和“干扰站”。订购的对象类包括“通信电台”。公布的交互类包括“干扰”和“侦察结果”。订购的交互类包括:“通信”和“仿真控制”。
4) 设置时间管理策略。
5) 创建公布对象类“侦控站”的1个实例和公布对象类“干扰站”的3个实例。
6) 向RTI注册所创建的公布对象类实例。
7) 等待来自仿真训练管理成员的仿真开始的“仿真控制”实例。
8) 计算仿真事件时戳值。
9) 更新向仿真训练管理成员和战术通信网成员公布的“侦控站”实例属性值(包括编号、位置和工作频段) 。
10) 更新向仿真训练管理成员和战术通信网成员公布的3个“干扰站”实例属性值(包括编号和位置) 。
11) 反射从战术通信网成员订购的4个“通信电台”实例属性值(包括编号、位置和状态) 。
12) 计算侦控站和干扰站与蓝方通信电台之间的距离。
13) 从战术通信网成员接收“通信”实例(参数值包括电台编号、频率、功率、带宽和调制方式) 。
14) 根据侦控站工作频段、接收灵敏度、“通信”实例的参数值、侦控站与蓝方通信电台之间的距离,计算侦控站能否侦收到蓝方通信信号。
15) 向仿真训练管理成员发送“侦察结果”实例(参数值包括频率、带宽和调制方式) 。
16) 侦控站指挥员向干扰站操作员下达干扰命令。
17) 干扰站操作员设置干扰站频率、带宽和功率,实施干扰作战。
18) 向仿真训练管理成员和战术通信网成员发送“干扰”实例(参数值包括频率、带宽和功率) 。
19) 反射从战术通信网成员订购的4个“通信电台”实例属性更新值(包括编号、位置和状态) ,判断所实施干扰的效果。
20) 请求RTI推进仿真时间。
21) 接收来自仿真训练管理成员的“仿真控制”实例。
22) 如果仿真未结束,重复(8) 到(21) 。
23) 如果仿真结束,删除“侦控站”和“干扰站”实例,退出联邦。
在上述功能流程分析基础上,完成通信对抗群成员仿真对象模型SOM的设计。通信对抗群成员的公布/订购对象类和交互类包括:
1) ReconStation对象类。是通信对抗群成员向仿真训练管理成员和战术通信网成员公布的通信对抗侦控站对象类,其属性包括编号、位置、工作频段。通信对抗群成员创建该类的1个实例。
2) Jammer对象类。是通信对抗群成员向仿真训练管理成员和战术通信网成员公布的通信干扰站对象类,其属性包括编号和位置。通信对抗群成员创建该类的3个实例。
3) Radio对象类。是通信对抗群成员从战术通信网成员订购的通信电台对象类,其属性包括编号、位置和状态。战术通信网成员创建该类的4个实例。
4) Communicating交互类。参数包括电台编号、频率、带宽、功率和调制方式。表示蓝方电台进行通信。通信对抗群成员从战术通信网成员订购该交互类的实例。
5) ReconnaissanceResult交互类。参数包括通信频率、带宽和调制方式。表示通信对抗侦控站对蓝方通信的侦察结果。通信对抗群成员向仿真训练管理成员公布该交互类的实例。
6) Jamming交互类。参数包括干扰站编号、频率、带宽和功率。表示通信干扰站向蓝方施放干扰。通信对抗群成员向仿真训练管理成员和战术通信网成员公布该交互类的实例。
7) SimulationControl交互类。参数为仿真状态。表示仿真控制命令。通信对抗群成员从仿真训练管理成员接收该交互类的实例。
(2) 通信对抗群成员的结构模型
在通信对抗群成员结构模型中,由联邦成员代码自动生成工具自动生成的类包括:
1) Simulation是联邦成员的仿真主线程,实现联邦成员的仿真运行过程。
2) CFederate。封装了仿真过程所需的大部分公共的RTI类RTIAmbassador的函数。
3) CFederateAmbassador。派生于类RTI::Fed.erateAmbassador,封装并实现了仿真过程的RTI类FederateAmbassador的接口函数。
4) CPub—ReconStation。与“侦控站”公布对象类相对应。
5) CPub—Jammer。与“干扰站”公布对象类相对应。
6) CSub—Radio。与“通信电台”订购对象类相对应。
7) Jamming—inter。与“干扰”公布交互类相对应。
8) ReconnaissanceResult—inter。与“侦察结果”公布交互类相对应。
9) Communicating—inter。与“通信”订购交互类相对应。
10) CCommCounterApp,CCommCounterView,CCommCounterDoc,CMainFrame。由MFCApplicationFrame生成的Document/View框架类。
为了实现联邦成员内部交互,通信对抗群成员结构模型还包括以下用户自定义内部类:
1) CCommCounter。包含了该联邦成员所需的计算函数。
2) CReconStation。通信对抗侦控站对象类,它保存通信对抗侦控站的相关信息,包括通信对抗侦控站的编号、位置及工作频段等信息。
3) CJammer。通信对抗干扰站对象类,它的3个实例分别保存3个干扰站的编号、位置、频率、带宽和功率等信息。
(3) 通信对抗群成员的行为模型
通信对抗群成员的行为模型描述通信对抗群成员与用户编程有关的对象交互。图2描述的对象交互实现了公布对象类“侦控站”和“干扰站”实例属性值的更新(限于篇幅,省略其他对象交互,包括订购对象类“通信电台”实例属性值的反射、订购交互类“通信”实例的接收和公布交互类“侦察结果”实例的计算与发布、公布交互类“干扰”实例的发布等) 。从图2可见,通信对抗群成员仿真软件编程实现时的编程点包括:类CPub—ReconStation的Process() 函数,SetCode() 函数,SetPosition() 函数,SetMinFrequency() 函数和SetMaxFrequency() 函数;类CReconStation的GetCode() 函数,GetPosition() 函数,GetMinFrequency() 函数和GetMaxFrequency() 函数;类CPub—Jammer的Process() 函数,SetCode() 函数和SetPosition() 函数;类CJammer的GetCode() 函数和GetPosition() 函数。
图2 更新公布对象类“侦控站”和“干扰站”实例的属性值
3结束语
本文采用面向对象的方法,对基于HLA的电子战训练仿真系统进行了分析与设计。联邦成员代码自动生成工具和UML的应用,提高了电子战训练仿真系统分析与设计的效率。
参考文献:
[1]侯印呜.综合电子战——现代战争的杀手锏[M].北京:国防工业出版社,2000.
[2]周彦,戴剑伟.HLA仿真程序设计[M].北京:电子工业出版社,2002
[3]黄健,郝建国,黄柯棣.基于HLA的分布仿真环境KD—HLA的研究与应用[J].系统仿真学报,2004,16(2) :214-221.
[4]邢继娟,李亚.任务空间概念模型与独立于仿真的想定管理系统[J].现代防御技术,2003,31(1) :60—64.
[5]ObjectManagementGroup(OMG) .UML ResourcePage[Z].http://www.omg.org/uml/.
上一页 下一页