基于虚拟现实技术的作战模拟仿真系统
来源:第三维度 作者:刘伯宁,杨萍,李冰 单位:二炮工程学院 基础部 二炮驻西安地区军事代表办事处
摘要:为提高训练质量,采用 Microsoft Visual Studio.NET2003 软件开发环境和虚拟现实(Virtual Reality)三维引擎技术,实现战时三维场景模拟仿真。该系统主要实现作战单元的任务编辑、作战单元的任务规划和作战场景的三维演示,并给出系统实现的关键技术:状态控制技术、VR 视景仿真技术、作战单元作战效能研究。结果表明,该系统能满足模拟作战训练的实时性要求,实现作战方案生成、任务规划、实时监控、仿真模拟等作战功能,在逼真度和交互性方面有良好的效果。 0 引言
由于作战部队实装训练成本高昂且受到各种约束,虚拟现实(Virtual Reality)[1]技术在作战部队模拟训练中得到广泛应用。通过作战方案生成优化、作战单元任务规划和仿真结果可视化,可以有效提高指挥人员在实际作战中的指挥决策能力和统筹协调能力。故利用现代计算机软、硬件技术,开发具有通用性的 VR 作战模拟系统。
1 VR 系统设计
基于 VR 作战模拟训练仿真系统主要是基于 VR三维引擎和采用 Microsoft Visual Studio .NET2003编程技术,结合作战任务想定,通过计算机接口和交互界面传输数据,主要实现作战单元的任务编辑、作战单元的任务规划和作战场景的三维演示。采用不同的模拟作战单元,可实现作战模拟训练的通用性。如图 1。
图 1 作战模拟训练系统框架
1.1 作战方案生成
作战部队任务编辑模块基于实时作战环境,通过想定编辑器,完成作战任务部署。
想定编辑器在不同的作战仿真系统中具有不同的实现形式,但其应具有的一般性功能主要包括战场环境生成、作战实体模型、交互数据管理。系统重点通过模型驱动软件开发( Model-Driven Software Development,MDSD)理论构建作战想定编辑器的模型,并采用组件技术进行编程实现。
从想定编辑器的体系结构角度来分析,想定编辑器主要由模型管理工具、模型实例参数化工具、代码管理工具、文档生成工具、数据共享工具等组成。利用元模型技术构建想定编辑器的驱动模型,并在相应军事背景下构建相应的环境、军事模型体系,然后运用组件技术实现基于模型驱动的想定编辑器。整个实现过程的特点是利用元模型技术,从想定编辑器的最基本需求出发,构建相应的 UML类模型,并引申出相应的军事背景模型,从而为作战仿真系统实现提供了灵活的前级准备。想定编辑器整体界面如图 2。
图 2 想定编辑器整体界面
1.2 作战单元任务规划
依据作战想定和作战目标,获取作战资源和调用约束条件。利用优化算法建立相应任务规划模型,如图 3。
图 3 作战模拟规划流程
输入数据主要指作战双方的相关任务属性,包含作战效果的价值、损耗等。作战资源主要指任务规划中影响作战效能的各种资源,如多条道路的距离选择,各种武器的优先配置等。约束条件是指影响作战效能的时间和资源冲突。最后依据任务规划结果,以三维数据行驶输出规划结果,如图 4、图 5。
图 4 输入作战任务参数
图 5 规划结果信息的平面显示
1.3 作战仿真演示系统
作战视景仿真系统通过数据驱动,调用模型库文件,基于事件驱动原则进行三维动态演示。它由图形加密卡、计算机显示器、音响设备等组成。演示系统利用 VR 引擎和 3D 技术,提供生成虚拟作战场景。为了达到图像处理的实时和逼真效果,作战地景采用卫星遥感影像、地理信息系统数据和三维美学渲染相结合以及不同精度遥感数据融合镶嵌技术,保证试验区域场景仿真的真实性和生动性。主要功能如图 6。
图 6 作战仿真功能框图
2 系统实现的关键技术
2.1 状态控制技术
系统基于三维数据实现作战仿真,对于各作战单元的模拟演示需要将三维数据转化成相应的状态信息,系统通过构建贝塞尔大地坐标解算模型[2]和DEM(数值高程模型)为控制作战单元和武器状态提供三维状态数据。
2.2 VR 视景仿真技术
VR 引擎中融合多种算法,解决三维领域中诸如影子运算、粒子系统、LOD(Levels of Detail)等视景仿真技术难题。同时 VR 仿真技术既要接收来自模拟控制装置的多种目标模型控制信号,又要发送多种目标状态控制信号。考虑系统的通用性,在不增加接收端硬件的情况下,利用 3D 引擎插件技术,调用模型库元件,实现多种目标模型的视景仿真。在程序中可以利用鼠标移动改变作战视角。
2.3 作战单元作战效能研究
基于日趋复杂的现代战场环境,作战任务具有多重性和复杂性。为包含作战任务的实效性和真实性。需要考虑作战单元作战效能。系统通过作战想定方案,基于作战单元和打击目标的作战参数设定,结合战场资源配置,利用优化算法,建立任务分配模型,通过作战效果,确定作战单元的作战效能。
3 系统应用
系统基于 Visual C++.NET 环境下进行开发。通过加载头文件<RWGH.h>、动态链接库<Model.h>等文件进行系统仿真操作。初始化关键语句如下:
CString szLand = g_3DMain.GetExePath();//加入作战地景
szLand += "\\XX 地图";
CString szStaConfig = g_3DMain.GetExePath();//初始化三维静态目标,
szStaConfig += "\\Ini\\StaticModel.ini";
CString szPath = g_3DMain.GetExePath(); //初始化动态目标
szPath += \\model\\DynamicModel.scnCString szPath51 = g_3DMain.GetExePath();//初始化打击目标
szPath51 += "\\model\\Task.scn";
作战模拟训练演示截图如图 7。
图 7 作战模拟训练演示截图
4 结束语
该系统能满足模拟作战训练的实时性要求,在逼真度和交互性等方面效果良好,可为实际作战训练中提高指挥人员的指挥决策能力和统筹协调能力提供重要帮助。
参考文献:
[1] 张亮. 基于 VR 技术的三维 GIS 试验系统研究[D]. 成都:西南交通大学, 2007.
[2] 熊介. 椭球大地测量[M]. 北京: 解放军出版社, 2000.
[3] George Shepherd, 等. Visual C++.NET 技术内幕[M]. 北京: 清华大学出版社, 2004.
[4] 戴雪峰. 基于 PC 的三维场景反坦克导弹模拟训练系统[J]. 兵工自动化, 2005.
[5] 董良东, 李靖. 多线程技术在火控雷达模拟训练系统中的应用[J]. 四川兵工学报, 2009(1): 37-40.
上一篇:VR技术在前颅底脑膜瘤术前计划中的应用探讨[ 12-28 ]
下一篇:多目标地籍虚拟三维城市系统之建置[ 01-09 ]