1.引言
在现代化战争中,武器系统及其维修保障过程日益复杂,采用分布式仿真实现维修保障过程的可视化和有效管理、提高维修保障仿真效率,显得越米越重要。与传统的单个系统仿真相比,分布仿真的关键问题是多个仿真系统间的互操作问题,为此,美国国防领域的相关组织通过大量的研究,提出r建模与仿真的.高层体系结构 (High Level Architecture,简称HLA ),HLA的核心思想是互操作和重用,其显著特点是通过运行支撑环境RTI (Run-Time infrastructure)}提供通用的、相对独立的支撑服务程序,将仿真应用同底层的支撑环境分开,即将具体的仿真功能实现、仿真运行管理和底层通信传输=者分离,隐蔽各自的实现细节,从而使各部分可以相对独立地进行开发,并能充分利用各自领域的先进技术。日前,HLA已成为IEEE建模与仿真标准,因此基于HLA的分布仿真是今后仿真发展的主要方向。
在一个基于HLA的分布交互式仿真系统,联邦成员是基本的仿真单元。一个联邦成员需要完成一个相对独立的仿真任务,并且需要与仿真系统的其自联邦成员交互通信,以组成一个联邦,协同完成分步交互式仿真。我们的日标是小仅要构建基于HLA的仿真系统和成员,还要能动态显示仿真过程和各成员势态,借助相关的软件和工具实现仿真成员的一维图形显示。
2.基于HLA的团维修保障仿真系统结构及组成
2.1系统想定
装备维修保障系统(Maintenance Support System)是经过综合和优化的维修保障要索构成的总体,是山装备维修所需的硬件、软件、人力以及管理组成的复杂系统。其日标是通过采取各项措施和相关的管理活动保持和恢复装备性能,及时有效的为部队提供服务。
维修保障系统(图1)主要III EA(装备管J}机构)、EOU(装备使用单位)、RO(修J}机构)、DE(仓库)、TO(运输机构)组成,具体过程为:OEOU提出修理请求;OEA 通知修理所;同时EA通知TO运送故障部件;Cs}To派车辆去EOU装载故障部件;④车辆装载故障部件去R0; ORO向EA提出器材请求;)EA通知DE准备器材;ODE准备器材完毕通知EA;EA通知TO运送器材;⑨T0派车辆去DE装载器材;⑩车辆运送器材到 R0; n当④、⑩完成后,RO开始修理,完毕后报告EA; SEA通知TO运送修好的部件;) TO派车辆去RO装载修好的部件;O车辆运送修好的部件到EOU。
2. 2仿真系统体系结构及组成
HLA的一个基木思想是将特定仿真,},的功能与通用的支撑服务相分离,联邦成员通过调用RTI提供的服务进行交互,交互信息基于HLA的公布 /句购机制。团维修保障仿真系统联邦结构如图2所示,联邦,},有装备股、炮兵连、修理所、仓库、汽车连5个成员,这些成员的实现都是基于RTI的AP工函数,基本过程为初始化成员数据、创建并加入联邦、声明公布/句购关系、确定成员的时间推进策略、注册对象实例、请求时间推进、进行仿真循环。除此之外,联邦,},还加入用于一维势态显示的NLNK工具PVD CPlan View Display), RTI应用与PVD的交互通过NLNK的VR-Link接日程序来实现,并将联邦仿真成员转化为PVD } I,图形化的实体。仿真系统运行支撑环境为MAK-RTI, FOM/SOM设计采用OMDT(Object Model DevelopmentTool),开发环境为Visual C十十6. 0.
3.联邦/仿真对象模型设计及FOM映射
3.1 FOM/SOM设计
FOM的主要目的是提供联邦成员之间以公共的、标准化的格式进行数据交换的规范,自描述丁在仿真运行过程,将参与联邦信息交换的所有对象类、对象属性、交互类、交互参数的特性。FONI的所有部件共同建仁丁一个实现联邦成员之间互操作所必须的“信息模型协议”。SONI是单一联邦成员的对象模型,‘自描述了联邦成员以对外公布或需要句购的对象类、对象属性、交互类、交互参数的特性,这些特性反映了成员在参与联邦运行时所具有的能力。
维修保障仿真系统FOM,的对象类包括火炮类Artillery、车辆类Vehicle、修理机构类RepairShop和仓库类Depot C图3);交互类主要包括故障维修请求类FaultMaintenance、故障状况类FaultSituation ,装载货物类LoadCargo ,卸载货物类UnLoadCargo、运输故障部件命令类TransportFaultPartCommand(图4)等C III于篇幅所限,这里只列出部分分交互类)。
仿真系统中的SOM有5个,分别是装备股、炮兵连、修理所、仓库、汽车连,各SOM的公布(P)和订购(S)关系如表1所示。
3.2建立 FOM映射
进行FONI映射主要是为f将基于RTI的应用转化为.y层应用(如一维显示、数据}o}放、=位场景等),这一工作我们采用NLVK的VR-Link 来实现,VR-Link是针对HLA的独仁于协议的.高层应用程序接日。‘自提供丁图形化工具FomMapBuilder(图5)}习守用户定义的包含对象类及属性、交互类及参数的FED(联邦执行数据)文件,与VR-Link定义的独}i:于协议的对象类及属性、交互类及参数进行映射。VR-Link采用丁面向对象的C十十实现,使用FomMapBuilder完成映射后将自动生产FONI映射代码,代码,},还包含丁对对象类属性、交互类参数的编码 (encode)和解码(decode),以使RTI信息能被基于VR-Link的.高层应用所识别。
FONI映射的鼓终结果是生成一个共享的动态连接库(缺省为myFomMapd. dll ),封装用户定义的对象类和交互类到
VR-Link定义的对象类和交互类的映射,以被VR-Link接日程序调用。
4.仿真系统的势态显示实现
一维势态显示主要是将仿真过程及成员以图形化方式显示出来,开发工具采用丁NLVK公司的PVD和VR-Link, PVD以实时提供浅场的一维势态图,并显示实体、聚合和传感器;VR-Link是快速建仁HLA应用、面向对象的C十十工具包,使开发主要集中用于仿真应用而需要考虑网络协议的细节。图6为团维修保障仿真系统的一维势态及交互信息显示,其实现过程如下:
建立基于HLA的网络连接;
DtExerciseConn* exConn=0:
char* execName=(char *)"VR-Link";
char* fedName=(char *)"Maintenance";
char* fedFileName=(char *)"VR-Link.fed";
char* fomMapperLib=(char *)"myFomMapd.dll";
char* fomMapperInitData=(char *)"' ,
double rprFomVersion=1.0:
char* fedFileToUse=0:
exConn=new DtExerciseConn( execName, fedName,
new DtRprFomMapper( rprFomVersion).fedFileToUse. 0):