HLA的开发与应用


黄健 郝建国 黄柯棣
01-5-17 下午 04:52:35


二、基于HLA的建模/仿真一体化环境
基于HLA的建模/仿真一体化环境分为建模、运行、事后处理与显示三个子环境::
1. 建模子环境
建立被仿真对象的模型是进行仿真的首要条件。基于HLA的对象模型分为三个层次:底层是对象模型,中间层是联邦成员,上层是联邦。在一个联邦内,对象实体之间的信息是通过联邦成员进行交互的。
HLA的对象模型包括对象的实体模型和HLA交互模型两部分。用户可以通过一般的实体建模工具(如Matlab、Adsim等)建立实体模型,同时抽取需要同别的成员交互的对象特性。按照OMT的规定,通过对象模型开发工具OMDT(Object Model Development Tool)建立相应的交互模型,并形成联邦执行数据FED(Federation Execution Data)文件。考虑到模型的可重用性,建模的过程还应包括对象模型数据库的存取工作。建立的对象模型可通过自动生成工具ABT(Auto Build Tool)包装成符合HLA运行模式的联邦成员C++原码,供用户进一步开发,并可通过联邦成员测试工具FTT(Federate Test Tool)进行数据交互关系的测试。
在这个子环境中,我们已实现了KD-OMDT、KD-ABT、KD-FTT、想定编辑器等工具,其他相关的工具软件也正在开发中(基于HLA的模型开发子环境见图2)。

图2 基于HLA的模型开发子系统
2.运行子环境
基于HLA的运行子环境主要包括运行时间支撑系统RTI和联邦运行管理控制器FRMC(Federation Runtime Management Controller)。其中,RTI是实现HLA的核心,它提供一系列用于仿真互连的服务,是HLA仿真系统进行分层管理控制、实现分布仿真可扩充性的基础,也是进行HLA其他关键技术研究的立足点;而FRMC实现联邦仿真应用的管理和实时监控功能。相应地,我们自主开发了KD-RTI和KD-FRMC软件。
3.RTI软件结构及其设计
1) RTI软件结构模型
HLA在体系结构上采用客户/服务器(C/S)模式,联邦成员通过调用RTI服务实现成员间的交互操作,RTI与联邦成员在逻辑上构成C/S结构。HLA可将多种仿真成员集成到一个系统上,并且支持多协议数据传输:不同成员之间的服务信息及在FED文件中要求可靠传输的数据,采用TCP方式进行传送,以保证传输的可靠性;大量仿真数据(包括对象属性更新或交互信息),通过UDP组播通信方式交互,提高传输速率。
为了实现HLA系统的扩充性和实时性要求,我们提出了一种分层的分布集中式KD-RTI结构模型,如图3所示。


2) RTI软件逻辑结构
根据RTI的上述结构模型和HLA接口规范中确定的功能关系,我们将RTI软件设计成两部分:RTI服务器和接口函数库,其逻辑结构如图4所示。


RTI服务器执行两个全局进程:RTI执行进程RTIexec和联邦执行进程Fedexec,它们分别对联邦级和联邦内的事务进行管理。RTIexec先于Fedexec运行,它负责创建和取消联邦执行,可同时对多个不同名的联邦进行管理。Fedexec由第一个加入联邦的成员通知RTIexec启动它,负责管理联邦成员之间的交互操作。根据我们提出的分层的分布集中式RTI结构模型,实现Fedexec逻辑功能的模块,包括在RTI服务器主机上运行的Fedexec进程和驻留在联邦成员上的LRTI。
根据调用关系,RTI的接口函数库被分为两部分:一部分被包装成RTIamb类,定义和实现联邦成员所需的与RTI通讯接口,由联邦成员主动调用;另一部分被包装成Fedamb类,定义和实现RTI所需的与联邦成员通信的接口,由RTI回调使用。RTI提供的这部分函数通常是抽象的,联邦成员须产生该类的一个实例,根据具体的联邦仿真应用开发,重载这些函数,完成相应功能。
4.HLA联邦运行管理控制器
FRMC以联邦成员的形式加入联邦执行,它是一种辅助联邦成员。FRMC虽然没有在联邦执行中增加仿真模型,但可以根据管理对象模型MOM(Management Object Model)通过RTI与其他成员进行通讯。我们设计的KD-FRMC按功能分为三个部分:联邦运行时间的监视、管理和数据收集。
联邦运行时间监视部件对联邦执行的整体情况和选定对象进行实时监视;管理部件对联邦执行进行动态的管理、控制;数据收集部件实现对联邦仿真中选定的对象进行数据记载,另外还可以选择对仿真操作过程进行日志记录,主要为仿真的事后分析服务。
为实现上述功能,我们设计了4个窗口:启动窗口SW(Startup Window)、联邦运行状态显示窗口FOW(Federation Overview Window)、联邦运行监视窗口FednMW(Federation Monitor Window)和联邦成员运行监视窗口FedMW(Federate Monitor Window)。
每个联邦成员拥有一个SW,在联邦成员运行的主机上执行,是成员加入联邦执行的入口。FOW显示联邦运行的一般状态信息,包括联邦名称、仿真时间、运行时间、仿真时间比例尺、联邦运行的当前状态和状态存储记录。FedMW可显示联邦成员列表,根据MOM定义的交互控制提供运行信息。通过FedMW,用户可对仿真实现交互操作,如断点设置、暂停、状态保存、恢复运行等;可以对对象进行实时观测和交互修改,还可以对交互信息进行登录。FedMW对选定联邦成员的仿真进行管理,对应着MOM中与该联邦成员有关的管理信息。用户可以对联邦成员的仿真时间、对象信息进行观测和交互修改。
5.事后处理与显示子环境
事后处理与显示子环境包括仿真的事后处理、二维态势和三维场景的显示。

上一页  下一页



Copyright(C) ccw.com.cn,All rights reserved

中国计算机世界出版服务公司版权所有