HLA开发指南.docx

上传人:b****5 文档编号:12358697 上传时间:2023-04-18 格式:DOCX 页数:30 大小:402.19KB
下载 相关 举报
HLA开发指南.docx_第1页
第1页 / 共30页
HLA开发指南.docx_第2页
第2页 / 共30页
HLA开发指南.docx_第3页
第3页 / 共30页
HLA开发指南.docx_第4页
第4页 / 共30页
HLA开发指南.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

HLA开发指南.docx

《HLA开发指南.docx》由会员分享,可在线阅读,更多相关《HLA开发指南.docx(30页珍藏版)》请在冰豆网上搜索。

HLA开发指南.docx

HLA开发指南

HLA(HighLevelArchitecture,高层体系结构)开发指南

目录

第1章概述5

1.1本章小结5

第2章高层体系结构HLA5

2.1引言5

2.1.1HLA的组成7

2.1.2HLA的基本思想7

2.1.3HLA的主要特点7

2.2HLA规则7

2.2.1联邦规则7

2.2.2联邦成员规则7

2.3联邦管理7

2.3.1联邦管理的主要内容7

2.3.2联邦管理的基本过程7

2.3.3联邦管理服务7

2.4声明管理7

2.4.1基本概念7

2.4.2声明管理的作用7

2.4.3声明管理服务7

2.5对象管理7

2.5.1基本概念7

2.5.2对象管理服务8

2.6所有权管理8

2.6.1所有权管理的基本内容8

2.6.2所有权管理服务8

2.7时间管理8

2.7.1基本概念8

2.7.2HLA时间管理的任务8

2.7.3HLA的时间管理原则8

2.7.4HLA的时间管理机制8

2.7.5HLA中的时间推进8

2.7.6HLA的时间管理服务8

2.8数据分发管理8

2.8.1基本概念8

2.8.2数据分发管理的基本原理8

2.8.3数据分发管理服务8

2.9管理对象模型8

2.9.1管理对象模型中的对象类9

2.9.2管理对象模型中的交互类9

2.10本章小结9

2.11HLA的概念9

2.12HLA的基本组成9

2.12.1联邦功能9

2.12.2联邦规则集10

2.12.3接口规范11

2.12.4对象模型模板12

第3章HLA对象模型模板13

3.1概述13

3.2对象模型鉴别表13

3.3对象类结构表13

3.4交互类结构表14

3.5属性表14

3.6参数表14

3.7枚举数据类型表14

3.8复杂数据类型表14

3.9路径空间表14

3.10FOM/SOM词典14

3.11本章小结15

第4章联邦运行支撑框架15

4.1概述15

4.2本章小结16

第5章联邦开发和执行过程模型16

5.1引言16

5.2FEDEP模型概述16

5.3FEDEP模型的详细内容16

5.3.1定义联邦目标16

5.3.2开发联邦概念模型16

5.3.3设计联邦16

5.3.4开发联邦16

5.3.5集成和测试联邦16

5.3.6运行联邦并准备结果16

5.4联邦开发和执行过程的自动化16

5.5本章小结16

5.5.1联邦开发执行过程支撑软件工具18

第6章HLA仿真程序设计基础20

6.1联邦执行的生命周期20

6.1.1创建联邦执行20

6.1.2联邦执行存在20

6.1.3撤销联邦执行20

6.2联邦成员的程序框架20

6.2.1基于命令行方式的联邦成员20

6.2.2基于Windows方式的联邦成员20

6.2.3RTIambassador类和FederateAmbassdor类20

6.3HLA仿真程序实例20

6.3.1FightGame简介20

6.3.2FightGame的执行过程20

6.4本章小结20

第7章联邦管理20

第8章时间管理21

第9章声明管理21

第10章对象管理22

第11章所有权管理22

第12章数据分发管理23

第13章计算机生成兵力23

第1章概述

1.1计算机仿真的发展历史

1.1.1仿真计算机

1.1.2仿真软件

1.2分布交互仿真

1.2.1概念及特点

1.2.2发展历史

美国国防部建模与仿真办公室DMSO于1995年10月发布了建模与仿真大纲MSMP,决定在国防部范围内建立一个通用的仿真技术框架来保证国防部范围内的各种仿真应用之间的互操作性。

MSMP主要包括3个方面:

高层体系结构HLA,任务空间概念模型CMMS和数据标准DS。

通用技术框架的核心是高层体系结构HLA。

HLA在1996年8月完成基础定义,2000年9月已被正式接受为IEEE标准,成为新一代分布交互仿真体系结构的标准。

HLA的出现,可以说是分布式仿真一次质的飞跃。

1.2.3主要目标

1.2.4应用领域

1.1本章小结

第2章高层体系结构HLA

2.1引言

HLA是一个可重用的用于建立基于分布式仿真部件的软件构架,它支持由不同仿真部件组成的复杂仿真。

HLA本身并不是软件应用,而是一个构架和功能集,以帮助设计和运行仿真应用。

HLA的提出,主要是解决计算机仿真领域里的软件可重用性和互操作性问题,以使得仿真软件的开发应用进行标准化、规范化阶段,而这与当前计算机软件领域强调的开放化、标准化的总体趋势是一致的。

可重用性,指仿真部件的模型可用于不同的仿真场合和应用中。

互操作性的特点与可重用性十分接近,它指的是可重用的仿真部件能同其他部件联合起来,而无需重新编写。

一个仿真应用具有互操作性,就能够在分布式的计算机平台上将不同类型的仿真部件联合起来,而且还能满足实时性要求。

例如,开发一个新的战斗机及其武器系统需要进行相当多的仿真实验,这些仿真具有各自不同的目的,并且涉及到许多不同的模型。

假设一个新的武器系统要安装到现有的战斗机上如F-16战斗机。

如果仿真应用具有互操作性,我们就不需要从头开始开发一个全新的仿真系统,而是利用已存在的F-16战斗机的仿真系统,并同代表新的武器系统的新的仿真部件联合起来。

这样,新系统下的仿真环境就能很快完成了。

一个复杂的仿真中,各种不同的仿真部件要能相互作用,而这些部件可能运行在不同类型的计算机上如微机、工作站、小型机、大型机等,并且有各自不同的操作系统,这就需要它们共同遵守一个标准,以保证其可操作性。

HLA就是为了满足这种需要而开发的一个通用分布式仿真的标准。

HLA借鉴了一些开放式的标准体系的特点,引入了分层的概念。

可以将一个复杂的仿真看成一些层次上的部件总和。

最低层是系统模型部件,这可以是一个数学模型、一个离散事件队列模型或是基于规则的模型等。

在这基础上是软件层,根据系统模型开发出相应软件来实现仿真。

软件层又可进一步细分。

各层之间都有相应的接口规范,这样,当其中某一个层次的部件发生变化后,并不会影响其他各层部件。

2.1.1HLA的组成

2.1.2HLA的基本思想

2.1.3HLA的主要特点

2.2HLA规则

2.2.1联邦规则

2.2.2联邦成员规则

2.3联邦管理

2.3.1联邦管理的主要内容

2.3.2联邦管理的基本过程

2.3.3联邦管理服务

2.4声明管理

2.4.1基本概念

2.4.2声明管理的作用

2.4.3声明管理服务

2.5对象管理

2.5.1基本概念

2.5.2对象管理服务

2.6所有权管理

2.6.1所有权管理的基本内容

2.6.2所有权管理服务

2.7时间管理

2.7.1基本概念

2.7.2HLA时间管理的任务

2.7.3HLA的时间管理原则

2.7.4HLA的时间管理机制

2.7.5HLA中的时间推进

2.7.6HLA的时间管理服务

2.8数据分发管理

2.8.1基本概念

2.8.2数据分发管理的基本原理

2.8.3数据分发管理服务

2.9管理对象模型

2.9.1管理对象模型中的对象类

2.9.2管理对象模型中的交互类

2.10本章小结

2.11HLA的概念

2.12HLA的基本组成

2.12.1联邦功能

在HLA中,为实现某种特定的仿真目的而组织在一起,并且能够彼此交互作用的仿真系统、支撑软件和其他相关的部件就构成了一个联邦(Federation)。

而联邦成员(Federates)则是所有参与到一个联邦中的应用系统。

实际上,联邦成员还包括联邦成员管理器、数据收集器、真实的实体代理仿真或消极观察器等。

它还能够表示一个平台,如驾驶员座舱(Cockpit)仿真器;也能够表示一个集合体(Aggregate),如一个国家的空中交通流量等。

一个联邦的一系列执行称为联邦执行(FederationExecution)。

HLA的联邦功能描述见图1-1

图21HLA联邦功能

HLA主要由以下3个部分组成:

(1)联邦规则(FederationRules)保证了联邦中的仿真的正确接口,同时描述了仿真和联邦成员的各自作用;

(2)接口规范(InterfaceSpecification)定义了运行支持框架(RTI)的各种服务,要求每个联邦成员必须提供反馈功能;

(3)对象模型模板(OMT,ObjectModelTemplate)提供了代码重用的通用方法,建立了3类重要模型的格式,包括联邦对象模型(FOM)、仿真对象模型(SOM)与管理对象模型(MOM)。

HLA规则是联邦中联邦成员必须遵守的一些规则,这些规则用来保证交互的准确性,分为:

联邦规则和联邦成员规则。

HLA接口规范描述了RTI提供给联邦成员和联邦的服务。

HLA对象模型模板为联邦和联邦成员中的对象以及他们的属性,还有交互类,提供了一个通用的模板。

HLA定义两种对象模型:

联盟对象模型FOM和仿真对象模型SOM,把数据和结构分开,并规定按照OMT定义的对象类和交互类模板可以不依赖任何HLA软件进行构建、交换,利于在仿真之间对仿真的部件进行交互和重用。

2.12.2联邦规则集

HLA主要采用面向对象的方法学来分析系统,通过设计、开发和实现系统的对象模型,来获得仿真系统和仿真联邦的高层次的互操作和重用。

HLA的对象模型分为两类:

一类是联邦对象模型FOM(FederationObjectModal),用于描述联邦中所有成员之间数据交换的规范,如公共的对象类及其属性、交互类及其关联的参数等信息;另一类是仿真对象模型SOM(SimulationObjectModal),用于说明每一个联邦成员在参与联邦时所能提供的能力与需求。

二者都是供联邦执行开发过程使用或重用的。

HLA规则给出了使仿真纳入HLA所必须遵守的一些规则,这些规则分为联邦规则和联邦成员规则两大部分共十条。

在最顶层,HLA包括10个HLA规则。

联邦或联邦成员为了同HLA兼容,必须遵守这些规则。

HLA规则共分成两组,其中5个同联邦相关,另5个同联邦成员相关,其规则如下:

(1)联邦必须有一个联邦对象模型(FOM),其文档必须与对象模型模板(OMT)一致;

(2)FOM中的所有对象必须体现在联邦成员中,而不是在运行支持框架(RTI)中;

(3)在联邦运行时,所有联邦成员中FOM的数据交换必须通过RTI进行;

(4)在联邦运行时,联邦成员同RTI的相互作用必须遵循HLA的接口规范;

(5)在联邦运行时,对象的一个实例的属性,在任何时候只属于一个联邦成员;

(6)联邦成员必须有一个仿真对象模型(SOM),其文档必须与对象模型模板(OMT)一致;

(7)联邦成员必须能更新或影响在SOM中的对象的任何属性,并能根据SOM的说明,向外发送信息或接收外部信息;

(8)在联邦运行时,联邦成员根据SOM的说明,能够动态地转移或接收所拥有的属性;

(9)联邦成员能根据SOM的说明,在它们提交更新对象的属性时改变条件;

(10)联邦成员能通过某种方式管理本地时间,使它们能协同联邦中的其他成员,进行数据交换。

联邦规则为创建一个联邦,制定了一个通用规则,包括文档要求、对象表示、数据交换、交互需求及属性管理。

联邦成员规则解决了单个联邦成员的问题,包括文档要求、控制和改变对象属性及时间管理,对于特定的HLA仿真,这些规则是相当重要的。

2.12.3接口规范

接口规范定义了运行支持框架(RTI)的标准,现正处于IEEE标准(IEEEp1516)的认可阶段,以将其作为分布式仿真的一个标准。

RTI是遵循接口规范的一个软件,但其本身并不是规范的组成部分。

它提供了支持HLA仿真必须的软件服务。

RTI可能存在着不同的版本,但主要的版本是由DMSO提供的,最新版本可从www.dmso.mil处下载。

RTI是一种为HLA仿真系统提供通用服务的系统软件,它是HLA接口规范说明的软件实现,支持可移植性和互操作的构架基础。

RTI主要包括下列部件:

联邦执行(FedExec):

是用于管理联邦的进程。

它控制联邦成员加入或离开联邦,并协调加入进来的联邦成员的数据交换。

每一个运行的联邦必须建立一个联邦执行进程,它是由第一个加入联邦的联邦成员创建的。

联邦执行对每一个加入联邦的联邦成员分配一个唯一的句柄,以便联邦成员之间进行数据交换。

RTI执行(RTIExec):

管理多个联邦执行的创建和终止,保证每个联邦执行具有唯一的标识。

它是运行在一个平台上的全局进程,占用一个公开的端口号,接受来自该端口的各种请求。

RTI运行库(libRTI):

使HLA的各种服务能被联邦成员所使用,提供了同RTI执行、联邦执行和其他联邦成员进行通讯的手段。

这个运行库用C++写成,可被C++、Java、CORBAIDL、Ada程序语言来调用。

此外,还需要联邦执行数据文件(FEDfile)和RTI数据文件(RTIfile),分别包括了建立联邦执行和RTI所需的初始化数据。

RTI提供了联邦运行所必须的各种服务。

它采取了层次化的结构,将仿真部件和通讯部件独立开来,从而改进了以前的仿真标准(如DIS与ALSP)。

RTI提供了各种服务来支持联邦的创建和终止,联邦对象间的声明和管理,及联邦时间管理。

同时为联邦成员的逻辑组提供了高效的通讯。

RTI主要提供了以下6种服务。

运行支持框架RTI是一组软件,它提供了6种服务,用来实现一个联邦中各个成员之间的交互作用:

即RTI作为联邦执行的核心,在一个联邦执行过程中,所有的联邦成员应该按照HLA接口规范说明所要求的方式同它进行数据交换,以实现联邦成员间的交互作用。

RTI为联邦成员提供的服务见表1-1。

表11RTI提供的服务

服务种类

服务内容

联邦管理(FederationManagement)

创建和删除联邦,管理联邦的加入和退出,仿真阶段的控制和同步

声明管理(DeclarationManagement)

用于公布和说明对象的属性和交互,使成员可以订购它所需要的属性值和公布能提供给其他成员使用的属性值

对象管理(ObjectManagement)

提供成员在联邦运行时创建和删除对象以及属性值的传送

所有权管理(OwnershipManagement)

提供对象属性所有权在成员间迁移和接受

数据分发管理(DataDistributionManagement)

通过对数据空间的管理,提供数据分发的服务,使成员能有效地接收和发送数据

时间管理(TimeManagement)

协调逻辑时间的推进及同实际时间的关系,用于控制联邦仿真时间的协调推进

RTI服务的具体内容请参见HLA的接口规范。

2.12.4对象模型模板

HLA对象模型模板为HLA相关信息提供了一个文档模板,这些信息包括仿真或者说联邦中的对象以及它们的属性,还有交互类。

通用的模板使得对于不同的仿真以及联邦更容易理解和比较。

HLA规定联邦和单个的联邦成员都必须有对象模型描述。

OMT并没有定义具体的数据,它只是定义了信息表示的格式。

对象模型采用OMT格式描述了联邦中的对象及其属性(即对象的状态)和可能发生在联邦中对象之间以及对象与仿真环境之间的交互。

HLA定义了两种对象:

HLA联邦对象模型FOM和HLA仿真对象模型SOM。

FOM中定义了参加此联邦的所有对象类和交互类以及它们的属性和参数信息。

SOM中定义了单个联邦成员的信息、包括对象、属性、交互和参数。

HLA抒数据的结构分开,并规定按照OMT定义的对象和交互类模板可以不依赖任何HLA软件进行构建、交换,利于在仿真之间对仿真的部件进行交互和重用。

可重用性和互操作性要求一个联邦成员管理的所有对象和交互必须对外部是可见的,这就需要对这些对象和交互的详细说明必须按照一个通用的格式。

对象模型模板(OMT,ObjectModelTemplate)提供了建立HLA对象模型的通用框架。

OMT定义了联邦对象模型(FOM,FederationObjectModel)、仿真对象模型(SOM,SimulationObjectModel)和管理对象模型(MOM,ManagementObjectModel)。

每一个联邦都有其联邦对象模型(FOM),包括一些可共享的信息,如对象和交互。

联邦对象模型还要考虑一些联邦成员内部的问题,如数据编码方案。

每一个联邦成员都有其仿真对象模型,它描述了一个联邦成员的重要特征,提供了能供外部使用的对象和交互,其重点是在联邦成员内部的操作。

管理对象模型是全局定义的,它提供了管理一个联邦所需的对象和交互。

HLA将数据和构架独立开来,这样,由OMT定义的对象和交互无须修改,就能集成到HLA应用中。

OMT以表的形式来描述HLA对象模型。

各种类型的对象及其属性和交互的详细信息都反映在逻辑表中。

OMT规范说明要求联邦和单个的仿真(联邦成员)都应使用这些表结构,但根据不同的情况,允许某些表为空。

所有的HLA对象模型必须至少包含一个对象类或交互类。

OMT的表结构包括:

(1)对象标识表—提供联邦或联邦成员的主要的标识信息,包括对象名称、版本号、创建日期、目的、应用域等信息;

(2)对象类结构表—包含了关于对象的子类的层次信息,每个对象类根据其可发布和可利用能力加以分类,可分布性是指联邦成员可以利用对象发布服务公布特定的对象类,可利用性是指联邦成员能对特定类中的对象进行使用和反馈;

(3)交互类结构表—交互是指在一个联邦成员中的一个或一组对象所产生的行为,并有可能影响到不同联邦成员中的对象,这些交互都定义在交互类结构表中;

(4)属性表—在仿真域中的对象的每一个类都有固定的属性集,其中一部分属性反馈它们的状态,其值可随着时间推移而变化(飞行速度),HLA对象类的属性值的更新情况可以通过RTI公布出去,这样联邦中的其他联邦成员就可以得到这些值了,OMT将这些属性值写在属性表中。

(5)参数表—对于每一个在交互类结构表中标识的交互类,其完整的参数集写在参数表上,参数表项包括相应的交互类的参数名、数据类型、优称级、精确度等;

(6)路由空间表—在联邦中,使用声明管理(DM)服务来控制对象属性和交互在联邦间的流动,某些时候,数据分布服务(DDM)服务需要减少联邦间分发的数据量。

于是,需要为联邦数据分发模型建立一个通用的框架结构,路由空间是DDM控制数据分布的基本单位,路由空间表记录了这些路由空间;

(7)联邦对象模型(FOM)/仿真对象模型(SOM)数据词典—包含了理解OMT表中各数据项所必须的语义信息。

数据词典包括表中对象类、交互类、属性和参数的定义。

OMT作为对象模型的模板规定了记录这些对象模型内容的标准格式和语法。

这样做有三个目的:

提供一个直观通用的联邦成员之间数据交换和运行协作的描述机制,即联邦对象模型FOM;提供一个标准通用的联邦成员与外界进行数据交换和协作的描述机制,即描述联邦成员的仿真对象模型SOM;提供一个标准通用的对象模型工具开发应用的参考。

OMT主要内容包括一组相关的共12个表格,用来描述对象模型中对象类及其属性、交互类及其参数的特性。

在具体应用中,由于不同联邦中对象模型的目的不同,某些表格可能是空的。

对于常规的仿真应用,一般只用到其中7个核心组件:

对象模型标示表、对象类结构表、属性表、交互类结构表、参数表、路由空间表、FOM/SOM术语字典,这些表格的定义是建模的基础和标准。

第3章HLA对象模型模板

3.1概述

3.1.1联邦对象模型(FOM)

3.1.2成员对象模型(SOM)

3.1.3HLA和OOAD相关概念的区别

3.1.4HLAOMT的组成

3.2对象模型鉴别表

3.2.1对象模型鉴别表的作用

3.2.2对象模型鉴别表的格式

3.2.3例子

3.3对象类结构表

3.3.1对象类结构表的基本作用和原理

3.3.2对象类结构表的格式

3.3.3对象类结构的设计原则

3.3.4例子

3.4交互类结构表

3.4.1基本原理

3.4.2交互类结构表的格式

3.4.3说明

3.4.4例子

3.5属性表

3.5.1属性表的作用

3.5.2属性表的格式

3.5.3说明

3.5.4例子

3.6参数表

3.6.1参数表的作用

3.6.2参数表的格式

3.6.3说明

3.6.4例子

3.7枚举数据类型表

3.8复杂数据类型表

3.9路径空间表

3.9.1基本原理

3.9.2路径空间表的格式

3.9.3例子

3.10FOM/SOM词典

3.10.1FOM/SOM词典的目的

3.10.2相关表格的格式

3.11本章小结

第4章联邦运行支撑框架

4.1概述

HLA仿真系统运行在分布环境下,联邦中由若干联邦成员组成,也可能有共它HLA联邦或不同类型的联邦(如基于ALSP标准的仿真应用)作为一个成员参加联邦运行,因此需要有一个支撑框架提供仿真互联服务,提供成员间数据通道,通过动态集成来实现对整个系统运行状态的同步、控制和管理。

运行支撑框架(Run-TimeInfrastructure,TRI)就是为此设计的软件系统,它是HLA分布仿真的支撑框架,是整个HLA仿真系统的核心。

4.1.1RTI的主要作用

RTI在HLA仿真系统中的核心作用主要体现在它将仿真应用接口、仿真支撑服务和数据分发与传递集于一身。

对于具体的仿真应用,开发人员只需致力于仿真应用功能,无需关心底层的仿真管理和网络通信;而计算机网络只需关心完成数据传输,交给RTI提供了标准的数据接口,无需关心高层的仿真应用;在这两个层次之间的所有工作,由RTI的支撑服务完成。

图41RTI的作用和功能

4.1.2RTI的发展历史

4.1.3RTI的体系结构模型

(1)RTI的组成

RTI软件是由RTIExec进程、FEDExec进程和libRTI库组成,如图所示。

RTIExec进程管理联邦的创建和销毁,管理联邦成员的加入和退出联邦,libRTI库是一个为成员开发者提供HLA接口规范服务、供成员调用的C++库。

图42RTI组成

RTI软件可以运行在单独的一台工作站上,也可以运行在复杂网络上。

RTI服务器运行两个进程:

RTI执行进程RTIExec和联邦执行进程FEDExec。

RTIExec管理联邦执行的创建和销毁过程,可同时管理多个联邦。

每个联邦成员在同RTIExec通信之前先初始化RTI组件。

RTIExec管理FEDExec的创建和销毁过程,并指示成员加入到合适的联邦,确保每一个FEDExec有唯一的名称。

RTIExec先于FEDExec运行。

RTIExec上保存了联邦标识号和联邦名称列表,对要求加入联邦的成员,根据其给出的联邦名使其与相应的联邦服务器进程FEDExec建立关系。

FEDExec管理联邦成员的加入和退出联邦。

每个运行的联邦对应一个FEDExec全局进程,每个FEDExec管理一个联邦。

FEDExec允许联邦成员加入和退出,实现联邦成员间的数据交换。

FEDExec进程由第一个创建联邦的成员创建,通过该服务通知RTIExec启动FEDExec进

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 哲学历史

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1