一种虚拟试验系统与hla仿真系统数据交换方法

文档序号:9489320阅读:729来源:国知局
一种虚拟试验系统与hla仿真系统数据交换方法
【技术领域】
[0001] 本发明涉及虚拟试验系统与HLA仿真系统数据交换方法。
【背景技术】
[0002] 目前,在虚拟试验领域存在着许多功能各异的HLA("HighLevelArchitecture, 建模与仿真高层体系结构")仿真系统,由于HLA体系结构与虚拟试验体系结构的通信协议 不匹配,因此HLA仿真系统与虚拟试验系统进行互联时存在数据交换困难,无法进行组合 应用的问题虚拟试验。
[0003] 目前虚拟试验已有的解决虚拟试验系统与HLA仿真系统数据交换的方式都是通 过开发专用网关方法实现的,即对于确定的两个不同体系结构的系统的集成,分析通信内 容、方式、方向、频率等因素,开发专用的协议转换软件实现数据交换。该类方法虽然能实现 两类系统之间的数据交换,但只能针对具体的任务,缺乏通用性,当系统的集成环境发生变 化时,开发人员必须对程序进行更改甚至需要重新进行网关开发,对开发者的编程能力要 求较高,浪费大量人力物力,且开发周期较长。

【发明内容】

[0004] 本发明的目的是为了解决目前虚拟试验系统与HLA仿真系统之间数据交换依赖 定制开发、缺乏通用性、对用户编程能力要求较高、浪费大量人力物力、开发周期长的问题, 而提出一种虚拟试验系统与HLA仿真系统数据交换方法。
[0005] 上述的发明目的是通过以下技术方案实现的:
[0006] 步骤一、解析虚拟试验系统试验方案文件,获得虚拟试验系统基本信息、虚拟试验 系统对象模型信息和虚拟试验系统实例数组;
[0007] 步骤二、解析HLA系统FED文件,获得HLA系统基本信息、HLA对象模型信息;
[0008] 步骤三、根据步骤二的HLA对象模型信息,声明HLA实例信息;
[0009] 步骤四、将虚拟试验系统实例和HLA实例进行映射,得到虚拟试验系统实例信息 和HLA实例信息的映射关系;
[0010] 步骤五、根据虚拟试验系统基本信息、HLA系统基本信息、虚拟试验系统对象模型 信息、HLA对象模型信息以及虚拟试验系统实例信息和HLA实例信息的映射关系,生成映射 方案文件;
[0011] 步骤六、根据映射方案文件初始化HLA邦员接口和虚拟试验系统成员接口;
[0012] 步骤七、使用步骤六初始化的HLA邦员接口和虚拟试验系统成员接口执行数据交 换。
[0013] 发明效果
[0014] 该发明所提出虚拟试验系统与HLA仿真系统数据交换方法通过映射虚拟实验系 统对象实例和HLA对象实例能够解决虚拟试验系统和HLA仿真系统无法直接进行数据交换 的问题,通过指定到实例属性的映射关系确保数据转换的准确性,通过划分数据缓存区域 确保数据读写的正确性。
[0015]目前,该方法已经应用于某导弹拦截仿真试验中,能够实现虚拟试验火控系统与 某HLA仿真系统的快速通信,实际测试结果表明该发明提出的虚拟试验系统与HLA仿真系 统数据交换方法对于两端相同类型数据的交换的准确率为100%,通过本发明提出的方法 无需任何代码编写即可自动化实现两种系统的数据交换,无需大量人力物力,将实现两种 系统数据交换的周期缩短了 50%以上,同时极大降低了开发成本,具备良好的通用性。
【附图说明】
[0016] 图1为本发明流程图;
[0017] 图2为虚拟试验实例对象解析流程图;
[0018] 图3为HLA对象类解析流程图;
[0019] 图4为声明HLA对象实例流程图;
[0020] 图5为添加HLA到虚拟试验映射流程图;
[0021] 图6为映射方案元素结构图,commentdescribingyourrootelement为评论描 述你的根元素,1表示右边是左边的子节点,2表示右边是左边的属性,°°表示子节点存在 多个;
[0022] 图7为虚拟试验成员接口初始化流程图;
[0023] 图8为HLA邦员接口初始化流程图;
[0024]图9为数据由虚拟试验系统到HLA仿真系统的流程图;
[0025] 图10为系统测试网络结构图,RTI为运行支撑环境;
[0026] 图11为测试软件主界面图;
[0027] 图12为虚拟试验系统试验方案中对象模型图;
[0028] 图13为HLA仿真系统的对象模型图;
[0029] 图14为新建映射方案图;
[0030] 图15为编辑界面初始化图;
[0031] 图16为配置HLA的属性/参数数据类型完成图;
[0032] 图17为方案编辑完成图;
[0033] 图18为虚拟试验系统-HLA网关系统提不彳目息图;
[0034] 图19为虚拟试验系统-HLA网关启动映射提不彳目息图;
[0035] 图20为虚拟试验系统-HLA网关运行数据图;
[0036] 图21为HLA邦员测试软件接收实例TestLocation数据图,TestLocation为实例 随机名称;
[0037] 图22为HLA邦员测试软件发送实例TestLaunch数据图,TestLaunch为实例随机 名称;
[0038] 图23为TIDE平台显示组件显示的数据图,TIDE为哈尔滨工业大学自动化测试与 控制研究所开发的虚拟试验系统开发环境;
[0039] 图24为虚拟试验系统-HLA网关的运行数据图;
[0040] 图25为虚拟试验系统-HLA网关关闭映射系统提不彳目息图。
【具体实施方式】
【具体实施方式】 [0041] 一:结合图1说明本实施方式,本实施方式的一种虚拟试验系统与 HLA仿真系统数据交换方法,具体是按照以下步骤制备的:
[0042] 步骤一、解析虚拟试验系统试验方案文件,获得虚拟试验系统基本信息、虚拟试验 系统对象模型信息和虚拟试验系统实例数组;
[0043] 步骤二、解析HLA系统FED文件,获得HLA系统基本信息、HLA对象模型信息;
[0044] 步骤三、完善HLA对象模型信息;
[0045] 步骤三、根据步骤二的HLA对象模型信息,声明HLA实例信息;
[0046] 步骤四、将虚拟试验系统实例和HLA实例进行映射,得到虚拟试验系统实例信息 和HLA实例信息的映射关系;
[0047] 步骤五、根据虚拟试验系统基本信息、HLA系统基本信息、虚拟试验系统对象模型 信息、HLA对象模型信息以及虚拟试验系统实例信息和HLA实例信息的映射关系,生成映射 方案文件;
[0048] 步骤六、根据映射方案文件初始化HLA邦员接口和虚拟试验系统成员接口;
[0049] 根据虚拟试验系统和HLA系统的基本设置初始化软件,使该软件与虚拟试验系统 和HLA系统分别建立一种联系、一种通道,来进行数据的传输;
[0050] 步骤七、使用步骤六初始化的HLA邦员接口和虚拟试验系统成员接口执行数据交 换。
[0051] 接收虚拟试验系统和HLA系统的实例数据,查找步骤四的虚拟试验系统实例信息 和HLA实例信息的映射关系,确定映射的目标,若收到虚拟试验系统的实例数据,将虚拟试 验系统的实例数据转换为HLA系统的实例数据,将转换后的HLA系统的实例数据发送到HLA 系统中,若收到HLA系统的实例数据,将HLA系统的实例数据转换为虚拟试验系统的实例数 据,将转换后的虚拟试验系统的实例数据发送到虚拟试验系统中。
【具体实施方式】 [0052] 二:本实施方式与一不同的是:所述步骤一中解析虚 拟试验系统试验方案文件,获得虚拟试验系统基本信息、虚拟试验系统对象模型信息和虚 拟试验系统实例数组;具体过程为:
[0053] -个虚拟试验系统中所有的虚拟试验系统实例和虚拟试验系统对象模型信息均 以XML格式保存在该试验方案对应的.sys文件中。
[0054] 步骤--、开始;
[0055] 步骤一二、加载某个虚拟试验系统试验方案文件;
[0056] 步骤一三、读取虚拟试验系统试验方案文件的基本信息,试验方案文件的基本信 息包括虚拟试验系统名称,虚拟试验系统文件路径,获得虚拟试验系统基本信息;
[0057] 步骤一四、读取虚拟试验系统试验方案文件的虚拟试验对象模型信息,获得虚拟 试验系统对象模型信息;
[0058] 步骤一五、读取虚拟试验系统试验方案文件的所有虚拟试验实例的信息,获得虚 拟试验系统实例数组。
[0059] 其它步骤及参数与【具体实施方式】一相同。
[0060]
【具体实施方式】三:本实施方式与【具体实施方式】一或二不同的是:所述步骤一五中 读取虚拟试验系统试验方案文件的所有虚拟试验系统实例的信息,获得虚拟试验系统实例 数组;具体过程为:
[0061]步骤---、读取虚拟试验系统试验方案文件的所有参与者节点数组,参与者是 指虚拟试验系统的组成成员;获得所有参与者节点数组中的节点数量N,N为正整数,初始 化i= 1,i取值为1彡i彡N;
[0062] 步骤一一二、根据步骤---中的参与者节点数组,获取第i个参与者节点;
[0063] 步骤一一三、读取第i个参与者节点的参与者名称及第i个参与者节点下所有实 例节点,将第i个参与者节点下所有实例节点保存为实例节点数组;获得所有实例节点数 组中的节点数量M,Μ取值为正整数,初始化j= 1,j取值为1 <j<Μ;
[0064] 步骤一一四、读取第j个实例节点内容,实例节点内容包括实例名称,实例ID,实 例类型,实例发布订购类型;
[0065] 步骤一一五、判断j是否小于M,若是,执行步骤一一六,若否,执行步骤一一七;
[0066] 步骤--六、将j加1,执行步骤--四;
[0067] 步骤一一七、判断i是否小于N,若是,执行步骤一一八,若否,执行步骤一一九;
[0068] 步骤--八、将i加1,执行步骤--二;
[0069] 步骤--九、结束。
[0070] 本实施方式获取的虚拟试验系统实例数组按照表1~表2方式存放:
[0071] 表1参与者信息模板
[0075] 在虚拟试验系统中,实例每个参与者可能拥有多个实例对象,试验方案文件将每 个实例对象分别存放在各自所属的参与者节点下,因此,为了获取全部实例对象,需依次获 取每个参与者节点句柄,分别获取每个参与者节点下的所有实例对象信息,解析虚拟试验 系统实例对象流程如图2所示。
[0076] 对于虚拟试验系统对象模型的解析,由于目前有完善的函数可供调用,实现解析 虚拟试验系统试验方案文件中的虚拟试验系统对象模型信息的功能,所以无需重新设计, 只需调用相关接口,即可获取虚拟试验系统对象模型信息。
[0077] 其它步骤及参数与【具体实施方式】一或二相同。
【具体实施方式】 [0078] 四:本实施方式与一至三之一不同的是:所述步骤二 中解析HLA系统FED文件,获得HLA系统基本信息、HLA对象模型信息;具体过程为:
[0079]HLA对象模型的所有信息保存在HLA的联邦执行数据文件(FED)中,该文件同样使 用XML语言编写内容。HLA对象模型分为"对象类"和"交互类",这两种对象模型的用途不 同,但二者在文件中的保存结构相同,仅关键词不同,"对象类"由多个属性构成,"交互类"
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1