当前位置:文档之家› 基于开源技术的灭火救援计算机模拟训练系统研究_袁狄平

基于开源技术的灭火救援计算机模拟训练系统研究_袁狄平

第8卷第12期2012年12月

中国安全生产科学技术

Journal of Safety Science and Technology

Vol.8No.12

Dec.2012

文章编号:1673-193X(2012)-12-0080-07

基于开源技术的灭火救援计算机模拟训练系统研究*

袁狄平,靳学胜,沈剑荧,张晓丽

(中国人民武装警察部队学院灭火救援技术公安部重点实验室,河北廊坊065000)

摘要:开展模拟训练是提高消防部队灭火救援能力的重要途径。计算机技术的飞速发展,为开

发灭火救援计算机模拟训练系统提供了有力手段。当前开发三维模拟训练系统,可以采取多种工

具平台。依托开源引擎Delta3D和开源底层支撑系统CERTI,分析了开发基于HLA的仿真训练系

统的一般步骤,总结了一套利用开源软件快速开发沉浸式灭火救援模拟系统的经济实用方案。开

发过程表明,利用开源技术可以提高仿真训练系统的开发效率,缩短系统的开发周期,降低系统的

开发费用。

关键词:消防指挥;战术训练;建模与仿真;开源技术;高层体系结构;Delta3D;CERTI

中图分类号:X932文献标志码:A

Research on visual simulation training system for fire fighting and rescue

based on open-source technology

YUAN Di-ping,JIN Xue-sheng,SHEN Jian-ying,ZHANG Xiao-li

(Keb Laboratory of Firefighting and Rescue Technology,MPS,Langfang Hebei065000,China)

Abstract:Simulation training is an important way to enhance the capacity of fire-fighting and rescue for fire forces.The rapid development of computer technology provides a powerful tool to develop computer simulation training sys-tem for firefighting and rescuing.Currently,a variety of tools platform can be used in development of3-D simula-tion training system.In this paper,Delta3D,a open source graphic realtime rendering engine and CERTI,a open source HLA/RTI were introduced.The general steps of the HLA based simulation training system were describled.A set of economical and practical program for rapid development immersive firefighting and rescuing simulation training system using open source software were summed up.Development process showed that the use of open source technology can improve the efficiency of the development,shorten the development cycle,and reduce the development costs of the system.

Key words:firefighting command;tactical training;modeling and simulation;open-source technology;HLA;del-ta3D;CERTI

收稿日期:2012-05-08

作者简介:袁狄平,教授。

*基金项目:国家十二五科技支撑计划课题(2011BAK03B07);公安部重点研究计划项目

(2009ZDYJWJXY020)0引言

近年来,高层建筑、石油化工储存、运输和生产等场所的火灾和其他灾害事故频繁发生,人员财产损失和社会影响巨大。针对典型突发性灾害事故,建立事故应急救援体系和救援机制,制定预案,并有

计划地组织开展复杂情况下的灭火救援技战术专业

训练和模拟演练,是增强应急救援队伍对突发事故现场的临场处置能力,减少事故人员伤亡和损失的有效途径[1]。

随着建模与仿真技术的快速发展,在公共安全和突发事件应急管理领域,已逐步应用虚拟现实技术进行灾害处置、决策和演练模拟。作为承担灭火与应急救援任务的消防部门,也开始应用计算机模拟训练系统,开展火场组织指挥和技战术训练。例如,北京市消防局开发的“2008年北京奥运场所数字化消防灭火救援动态预案”,是一款用于奥运场馆消防保卫的以仿真技术和火灾疏散模型为基础的全数字消防灭火救援动态预案和互动式训练系统。上海市消防局从荷兰E-semble公司引进的XVR 灭火救援视景仿真指挥训练系统,是一个基于VR 的模块化的事故处置指挥模拟训练系统,为应急救援团队提供提供了诸如建筑火灾、石油化工、化危品泄漏、交通事故等在内的各种复杂突发事故处置训练场景,强调对事故现场的认识、通信、协作、压力危机等能力的训练。基于计算机的模拟训练,不仅可以实现灭火救援场景设置的多样性、逼真性、实时性和可重复性,客观记录、保存、评价训练过程,而且训练成本低,安全性好,不受时空环境的限制,非常适用于指挥战术和技能素质的训练培养。

为探索低成本虚拟现实技术在灭火救援处置战术训练中的应用模式,我们集成开源HLA/RTI (CERTI)和实时图形渲染引擎(Detal3D),设计实现了一种基于强交互性和可移植性仿真体系结构———高层体系结构(High Level Architecture,HLA)的灭火救援模拟训练系统。该系统集成多通道立体投影系统、头盔显示系统等虚拟现实输出设备和PC集群,提供了一个“人在回路”和基于“角色”的灭火救援分布式协同虚拟训练环境。不同物理位置上的训练对象,模拟灭火救援行动中不同层次岗位的指挥员和战斗员,实时同步共享一个虚拟灾害场景,借助各类输入设备,行使相应指挥职责,协同工作,与虚拟环境中的各类对象进行交互。系统提供的灾害救援场景逼真度高,沉浸感强,既可用于指挥员的指挥决策训练,又可用于战斗员的操作技能培训。由于底层支撑软件采用免费开源技术,因而整个系统开发成本低,配置灵活,且提供跨平台支持。1灭火救援计算机模拟训练系统设计

1.1灭火救援计算机模拟训练系统的特点

与军事领域的仿真训练系统相比,消防领域的仿真训练系统有其不同的特点和需求。由于实际灭火救援行动中,现场指挥员需要根据火场中各种建筑设施的形态,烟、火的特征和发展蔓延态势,以及灾害中人(个人或群体)的行为模式,作出相应的人员和灭火装备部署。因此,灭火救援仿真训练系统更加强调局部场景和细节的模拟,如城市中的街道、建筑内外部场景、化工企业生产装置等,无需构建大范围的复杂地形;强调基于物理建模技术,实现不同场景中烟、火随时间发展蔓延的动力学特征,而不是简单的效果模拟;强调基于行为建模技术,模拟不同灾害场景中人或群体对灾害的行为反应;模拟训练系统开发和维护的投入相对较少[2]。

1.2灭火救援计算机模拟训练系统的分类

当前,国内外应用的灭火救援计算机模拟训练系统,按照训练对象划分,可分为针对指挥员的战术训练系统和针对战斗员的技能训练系统。前者侧重于训练指挥员的指挥决策、战术部署等能力,后者侧重于训练战斗员的操作技能、作战命令实施等能力。根据体系架构分类,可分为基于PC机和互联网的分布协同式训练系统和基于专业虚拟现实设备的集中式训练系统。前者采用游戏编程技术实现,在互联网环境上开展分布式协同训练。如法国EMI信息公司的协同森林火灾灭火训练仿真环境。后者借助大视场弧幕投影系统、CAVE系统、头盔显示器、位置跟踪器、数据手套等专业虚拟现实设备,构造沉浸式或完全沉浸式火场环境,通过受训者与系统的交互达到训练目标,如美国ETC公司的ADMS-COMMAND系统等。根据实现技术分类,可分为基于三维图形技术的训练系统和基于图像合成技术的训练系统。前者运用三维图形渲染技术,构造逼真训练环境,并进行交互式训练,其特点是三维交互特性好、但开发维护成本高,如Emergency Command System公司的Tactical Command Trainer-Fire系统等。后者在实景照片或视频基础上,通过叠加烟火水等动态元素特效,构建基于真实环境的虚拟灾害场景,并开展交互式训练。如Digital combustion

·

18

·

第12期中国安全生产科学技术

Inc.公司的Fire Studio、CommandSim?公司的Com-mandSim Fire等,其最大的优点是建模快、成本低、逼真度高,但三维交互特性差。

我们认为,成功开发灭火救援计算机模拟训练系统,涉及两个方面的技术基础和核心。一是如何利用分布式网络技术,构建分布式网络下“人在回路”的个人技能和多人协同战术仿真训练环境。畅通高效、低延迟的网络数据交换速度决定了实现网上练兵的效率;二是如何利用计算机视景仿真技术,实现虚拟灾害场景仿真。由计算机生成的虚拟火场环境的视听效果和逼真度,将直接影响训练对象的判断和决策,从而影响整个模拟训练的效果。

1.3高层体系结构HLA

高层体系结构(High Level Architecture,HLA)是美国国防部于1995年提出的分布交互仿真技术框架,它定义了构成仿真的各部分的功能及相互间关系。构建HLA的目的是促进仿真应用的互操作性和仿真资源的可重用性。HLA主要由规则、对象模型模板和接口规范三部分组成[3-5]。

在HLA体系架构下,整个仿真训练系统可视为一个联邦(Federation)。联邦由多个联邦成员(Fed-erate)组成,联邦成员可以是实体仿真系统(各类实体模拟训练设施或装备)、虚拟仿真系统以及一些辅助性的仿真应用,如联邦运行管理控制器、数据收集器等。联邦成员由对象组成,是能重用的软构件。对象是在某一领域内所要仿真的物体建立的计算机模型[6]。联邦成员间的信息交互通过运行支持环境RTI(Run-Time Infrastructure)提供的服务来实现,将仿真应用模型、仿真支撑系统、数据分布和传递服务分离开来,使仿真开发者主要集中于仿真功能的开发,而不必涉及有关网络通信和仿真管理等的实现细节,是连接各联邦成员的中间件和整个联邦执行的核心[7]。

目前国内外主流的RTI商业软件包括美国国防建模与仿真办公室的RTI1.3-NG、瑞典Pitch AIS 公司的Pitch portable RTI、美国MAK Technologies公司的MAK-RTI、国防科技大学的KD-RTI和YH -RTI、北京航空航天大学的BH RTI、AST-RTI和航天工业总公司第二研究院的SSS-RTI等[8-9]。

1.4三维图形渲染引擎

视景仿真技术,是通过综合运用计算机图形学技术,合成构造出类似真实世界行为特征的一种仿真模拟。合成的虚拟世界可以对用户的输入做出响应,实现实时的交互功能。视景仿真建模和实时渲染技术是可视化仿真技术的基础,图形实时渲染和交互性是视景仿真的基本特征。

开发面向用户的视景仿真应用,一般需要三维图形建模软件、底层图形渲染API和高层图形渲染引擎支持。三维图形建模工具提供了虚拟场景中的对象几何建模功能,如视景数据库的生成、编辑和浏览等。底层图形渲染API提供了高层图形渲染引擎和硬件之间的应用程序接口,当前主要的标准是Open GL和DirectX。其中,OpenGL拥有较好的跨平台特性。基于底层图形渲染API开发视景仿真应用程序,成本高、后期维护任务重,需要开发人员具备较高的技术素质。高层图形渲染引擎提供基于OpenGL或DirectX的面向对象的框架,封装并优化底层图形渲染API功能调用,提供二次开发接口,从而可以使开发者简单迅速地创建、编辑、运行复杂的实时三维仿真应用,使其更加专注于业务流程,加速应用开发进程。常用的实时应用三维建模工具有MultiGen Creator等,商业化三维图形实时渲染引擎包括Vega Prime、VirTools、Quest3D、OpenGVS、Eon 和VRP等。

1.5灭火救援模拟训练系统体系结构

基于HLA的灭火救援模拟训练系统软件体系结构如图1所示。在多用户分布式协同虚拟环境中,HLA/RTI为实现不同系统和设备产生的各类数据的同步及指令响应提供基础支撑。三维实时图形渲染引擎为实现训练场景的高沉浸感物理仿真功能,提供高级API支持。实时图形渲染引擎应具备优秀的物理引擎、粒子系统和碰撞检测等技术,能够较好地模拟烟雾、火焰等自然灾害现象,并能支持各类特殊的虚拟现实显示设备和控制外设。“场景控制管理”用于进行训练内容的定制编辑开发,由场景编辑器、灾害编辑器、角色编辑器、装备器材编辑器、评判规则编辑器、训练任务流程编辑器、控制脚本编辑器等子模块构成。可根据训练想定作业和脚本,编辑相关场景、环境、人员、装备等元素,建立初始灾情,设置救援力量,模拟灾害现场并对训练进行针对性配置和实时控制。系统的硬件构成如图2所示。

·

28

·中国安全生产科学技术第8卷

2基于开源技术的灭火救援模拟训练系统实现

常用的商业化HLA/RTI和图形渲染引擎软件虽然提供了成熟、方便的集成开发环境,但软件购买费用高,特殊功能模块和插件单独收费,应用系统的运行发布受许可证的限制严格。此外,由于软件专业性强,应用领域较窄,用户群有限,所以更新升级相对缓慢。

随着开源代码的兴起,在HLA/RTI和图形渲染引擎领域也出现了很多优秀的开源软件。如开源RTI包括CERTI、Poticol等,开源图形和游戏引擎包括OGRE、Irrlicht、Fly3d、NeoEngine、Nebula2、Del-ta3D等。开源软件(Open Source Software,OSS)是一种源代码开放并可以任意获取的计算机软件,允许用户学习、修改、增进提高这款软件的质量[10]。开源并不仅仅意味着对软件源代码的访问和免费使用,还允许更改或派生程序和程序的自由再分发等。开源协议通常符合开放源代码的定义要求,常用的开源软件协议包括GNU、LGPL等。采用相对成熟的开源软件,不仅可以在跟踪最新技术的同时,降低开发成本,定制修改灵活度高,而且可以达到商业化软件同样的开发效果,非常适合于中小规模项目开发和科研院所使用。

为实现上述灭火救援模拟训练系统的软硬件体系结构和功能,本文选用了开源实时图形渲染引擎Del3D和开源运行支撑系统CERTI作为底层支撑。

2.1开源游戏引擎Delta3D

Delta3D是由美国海军研究院(Naval Postgradu-ate School)开发的全功能游戏与仿真引擎。它将多个知名开源软件,如图形渲染引擎Open Scene Graph(OSG),物理引擎Open Dynamics Engine (ODE),人物骨骼动画引擎Character Animation Li-brary(CAL3D)和声效引擎OpenAL等封装为一体,形成了一个使用更加方便的高级API函数库,不但提供了底层功能模块的二次开发能力,而且提供了仿真、训练场景编辑器(STAGE)、BSP编译器、粒子编辑器、单机版模型浏览工具,以及内置支持美国军方标准的分布式仿真环境HLA通讯及仿真标准等多种实用工具[11],提供了一个建立复杂的游戏、训练仿真系统的体系结构,是研制灭火救援模拟训练系统的较理想的开发工具。

2.2CERTI结构分析

CERTI是一个开源的HLA/RTI运行支撑系统,它由法国空间实验室的图卢兹研究中心开发。CERTI与一般RTI最大不同点,就是将RTI分割成RTIG(RTI Gateway)和RTIA(RTI Ambassador)两部分。每个联邦必须有一个RTIG,而在一个RTIG上可以运行多个联邦。联邦成员不直接与RTIG进行直接通信,而是在创建加入联邦执行时自动生成一个RTIA,RTIG通过TCP端口监听RTIA发送的消息,在这种结构基础上的RTI占用带宽小,传送的数据量少,其结构如图3。

2.3系统的集成实现

当前流行的MMORPG游戏都是采取以Game Manager(GM)为中心的管理机制,这种机制相当于

·

38

·

第12期中国安全生产科学技术

图3

CERTI 的结构

为游戏定制了处理中心,按照一定的规则形成一个

智能处理机制。灭火救援模拟训练系统借鉴这种管理机制,通过GM 将系统所需的场景(Scene )、角色(Actors )、部件(Component )、消息(Message )集合到一起,并对其进行控制。Delta3D 上层构架主要由GameManager ,GameActor ,GameActorProxy ,Compo-nents 等部分组成,这些组件统一由GM 管理,如图4

图4Game Manager 的中枢作用

GameActor :主要是游戏中的实际对象,如消防车,消防员等,它需要完成处理与自己相关的消息,更新自我状态等任务。

GameActorProxy :GM 采取代理模式来实现对角色的控制管理,

GameActorProxy 为GameActor 提供一种代理以控制对这个对象的访问[12]

它们是一对一的关系,即用户每定义一个GameActor ,就需要定

义一个预期相关的GameActorProxy 。其主要任务是提供一个统一的对GameActor 的各个属性进行存取操作的接口,接口的统一方便了GM 的对GameActor 的管理。同时在GM 构架中GameActorProxy 还起到了消息处理中间层的重要作用。

Components :是游戏和仿真系统的一些辅助部件,主要功能是在一个较高层次上统一对系统中的信息进行处理(如实现网络通信,用户输入处理等)。

GameManager :统一管理游戏中的各种资源。完成程序运行时消息处理配送等重要工作,是一个

枢纽类,

角色、部件等发出的消息都要进过GM 的中转处理,

再发到目的位置。使用Delta3D 编写程序,需要定制编写Game-Actor 来模拟仿真对象,以及Components 来完成特

定的应用任务,然后按照一定的接口规范将其交给GM 管理。

一般的开发步骤如下,前四步是联邦成员的实

现过程,第五步是联邦的集成:(1)编写Actor ,灭火救援模拟训练系统有两种Actor :消防员和消防车。对于消防员,需要在编写消防员角色FireManActor 类的同时,

也编写一个与之对应的FireManAcotrProxy 类。

(2)注册Actor ,在GM 机制下,要求用户将自己的GameActor 编译成插件形式(Windows 下为DLL 文件),进而实现动态载入系统的功能。

(3)编写仿真系统界面显示部件HUDCompo-nent ,把虚拟场景需要的信息以类似HUD (平视显示器)的方式显示在画面上;编写输入控制部件In-putComponent ,完成仿真系统的外围配置和输入输出设备的控制,实现对场景中角色的交互控制。(4)编写消息处理器MessageProcessor 和联邦成员主模块,也即是程序的入口MyGameEntryPoint 。

(5)将上述联邦成员和RTI 连接起来,以实现联邦成员之间的交互。HLACompponent 是实现基于HLA 的仿真系统的一个关键部件,如前所述,HLA-Component 也通过消息与GM 通信,而每创建一个HLAComponent 都将自动生成一个RTIA 来连接RTIG ,从而在CERTI 上实现联邦成员的集成,如图5。

·48·中国安全生产科学技术第8卷

图5灭火救援指挥模拟训练系统实例框架

其中Map.xml 文件是场景初始文件,由GM 在初始化联邦成员的时候加载;FOM.fed 文件是联邦执行数据文件,是联邦对象模型开发的结果,也即所有联邦成员之间为交互目的而达成的“协议”;HLAMap-ping.xml 文件是Map.xml 场景文件的角色与FOM.fed 联邦数据文件的对象的映射,由HLAComponent 执行确定它们的映射关系;RTI.rid 是用来设置RTI 运行的初始化参数。2.4

系统运行实例

以灭火救援行动的时间发展过程为序,设计仿真系统的执行流程,

如图6。首先必须依据训练脚本初始化仿真系统的数据,场景控制管理成员作为训练流程中的第一个联邦成员创建联邦执行并加入联邦执行,

随后训练脚本其他联邦成员安顺序加入联邦执行,注册FireMan ,FireCar ,Smoke 等对象实例进入仿真循环,

执行灭火任务。任务结束后,根据训练回放系统和评估系统开展战斗讲评,战评结束就是仿真流程结束,

各个联邦成员退出联邦执行,当最后一个联邦成员退出时同时撤销联邦执行。

基于以上的程序流程,我们以某石化公司原油储罐区大型油罐火灾作为灾害场景,开发了大型油库火灾灭火指挥计算机模拟训练的演示原型,如图7。

3结论

本文依托开源引擎Delta3D

和开源底层支撑系

图6

仿真联邦执行流程图

·

58·第12期中国安全生产科学技术

图7大型油库火灾灭火指挥计算机模拟训练

的演示原型截图

统CERTI,分析了利用Delta3D引擎开发基于HLA 仿真系统的一般步骤,实现了对灭火救援指挥模拟训练系统的开发,总结了一套利用免费开源工具快速开发沉浸式灭火救援模拟系统的经济实用方案。开发过程表明,利用开源技术,可以提高仿真系统的开发效率,缩短系统的开发周期,降低系统的开发费用。

以此训练系统为平台,针对高层建筑、石油化工储罐区火灾等事故后果严重、社会影响大、灭火救援难度大的典型灾害,开展示范性应用演练,培养参训人员的指挥能力和实战能力,为消防部队提供了一种新的训练方式。参考文献

[1]广东省安全生产应急求援指挥中心等.安全生产应急演练实务[M].北京:科学出版社,2011

[2]袁狄平,等.视景仿真技术在消防灭火救援模拟训练中的应用,仿真技术及其应用(第9卷)[M],合肥:中

国科学技术大学出版社,2007

[3]IEEE Std1516.IEEE Standard for Modeling and Simula-tion(M&S)High Level Architecture(HLA)-Framework

and rules[S].IEEE,2000

[4]IEEE Std1516.1-2000.IEEE Standard for Modeling and Simulation(M&S)High Level Architecture(HLA)-Feder-

ate Interface Specification[S].IEEE,2001

[5]IEEE Std1516.IEEE Standard for Modeling and Simula-tion(M&S)High Level Architecture(HLA)-Object Mod-

el Template(OMT)Specification[S].IEEE,2000

[6]周彦,戴剑伟.HLA仿真程序设计[M].北京:电子工业出版社,2002:11-12

[7]陈家照,何全明,关正西.基于HLA的某导弹发射训练仿真系统开发[J].系统仿真学报,2006,18(12):

3393-3402

CHEN Jia-zhao,HE Quan-ming,GUAN Zheng-xi.

Development of missile launching training simulation sys-

tem based on HLA[J].Journal of System Simulation,

2006,18(12):3393-3402

[8]黄文清.作战仿真理论与技术[M].北京:国防工业出版社,2011

[9]毕义明等.军事建模与仿真[M].北京:国防工业出版社,2009

[10]蔡俊杰.开源软件之道[M].北京:电子工业出版社,2010:1-6

[11]DipingYuan et al.Applying Open Source Game Engine for Building Visual Simulation Training System of Fire

Fighting,Asia Simulation Conference2007,Communica-

tions in Computer and Information Science,Springer

Berlin Heidelberg,2008.01.

[12]陈臣,王斌.研磨设计模式[M].北京:清华大学出版社,2011:250-251

·

68

·中国安全生产科学技术第8卷

相关主题
文本预览
相关文档 最新文档