分布交互仿真运行平台 BH RTI 2.3简介
来源: 北京航空航天大学虚拟现实技术与系统国家重点实验室
BH RTI (Beihang Run-Time Infrastructure)是北京航空航天大学自主研发的分布交互仿真运行平台。该平台支持HLA 1.3和IEEE 1516标准,是支持分布交互仿真应用开发和高效运行的软件系统平台,可应用于视景仿真、模拟训练、城市仿真、工业设计、交互式游戏等各个分布交互仿真或虚拟环境应用领域。
BH RTI具有HLA 1.3和IEEE 1516标准规定的接口功能,能同时支持两种标准、不同操作系统的盟员进行仿真,可自由部署一组RTI来提供服务,便于开展广域网应用。具有高性能、方便易用、配置和运行监测可视化等特点,能够支持大规模仿真应用系统的运行。为了满足各种需求,平台提供了多种运行版本,以及各类配套工具的支持, BH RTI支持Windows/Linux/Windows Mobile等操作系统,以及IPv4/v6两种网络环境。
北航虚拟现实技术与系统国家重点实验室于2006年8月发布了BH RTI 2.2,截至2007年9月底,已发布软件光盘150套,BH RTI网站(www.hlarti.com)同期投入使用。用户使用BH RTI已经能够部署较大规模的分布交互仿真应用,开展相关的研究开发工作。在2007年通过的第三方测试中,BH RTI能有效支持跨北京-武汉-广州共1200个盟员的广域网协同仿真,响应延迟在50ms以内。
BH RTI 2.3是BH RTI 2.2的升级版本,该版本结合我们的深入研究和产品发布一年以来的用户反馈情况进行了改进,是用户快速构建大规模分布交互仿真环境的理想选择。
BH RTI 2.3采用结合中心服务节点的分布式交互体系结构,在该体系结构中,有多个RTI系统在运行,这些独立运行的RTI系统称为RTI节点,同时有一个独立的中心系统运行,称之为中心服务节点。在基于HLA的分布式虚拟环境中,RTI节点负责接收和转发应用程序的数据,是最基本的数据交互管理单位。各个节点为平等关系,相互之间使用RTI-RTI交互协议进行通信,中心服务节点管理多个RTI节点,负责分布式环境中全局数据的处理,是各个RTI节点的协调中心,中心服务节点与RTI节点之间使用RTI-CS交互协议进行通信。RTI-RTI与RTI-CS交互协议让各个RTI和中心服务节点通过协商来完成HLA/RTI的服务功能,使得各个主机上独立运行的RTI节点对于应用程序(即盟员)来说像一个集中服务器一样。BH RTI 2.3的体系结构如图 1‑1所示。其中rtiexec1和rtiexec2分别代表两个RTI节点,Central Server代表唯一的中心服务节点,盟员程序(FED11至FED1n)分别与本地RTI组件(LRC11至LRC1n)建立连接,同一RTI上的盟员以及不同RTI上的盟员之间均可以实现互操作。
头文件说明在BH RTI(1.3标准)中,提供了7个头文件,包括总括文件、接口文件、RTI类型定义、RTI时间定义等类别,其中每一个文件的具体功能如表 3‑1所示。BH RTI的头文件可在 “BH RTI 安装目录\include”下找到,在开发盟员程序时需要include相应的头文件。
库文件说明使用BH RTI(HLA 1.3标准)进行编程开发,在编译过程中使用静态链接库lrcdll.lib,其位置在“BH RTI安装目录\lib”下;在运行时需要静态链接库lrcdll.dll,需保证该文件与盟员应用程序在同一文件夹下或者在“windows目录\system32”下,BH RTI 2.3版本安装完毕后,会自动将lrcdll.dll加入 “windows目录\system32”下,同时,在“BH RTI安装目录”下也有该文件,可供用户自由使用。
FED文件说明FED文件具体定义了对象模型模板中规定的项目,是联盟执行时需要的数据文件,其扩展名为.fed。FED文件需要在创建联盟时载入。BH RTI从以下两个位置读取FED文件:
盟员程序同一目录下
“BH RTI安装目录\config” 下
在运行盟员程序时,需要保证在创建联盟时指定的FED文件在上述两个位置之一出现,否则创建联盟时将抛出CouldNotOpenFED的异常。