基于VR的杀爆弹静爆实验系统设计与开发

2018-09-29 03:08曹红松刘松健
实验室研究与探索 2018年8期
关键词:扇形弹丸建模

刘 闯, 曹红松, 张 雨, 刘 胜, 刘松健

(1.中北大学 机电工程学院,太原 030051;2.北京易悦科技有限公司,北京 100025)

0 引 言

杀爆弹静爆实验是一种用于评定弹丸杀伤作用的实验,也是高校弹药类专业特别重要的实验之一。学生了解相关的实验规程、实验设备和装置、操作技巧等并进行实践训练,对提高其工程实践能力和科研能力和创新意识具有重要意义。目前,由于静爆实验的危险性较高,兵工类院校大多已停止开展此类实验的教学,导致学生不能直观感受弹丸爆炸、破片飞散的过程,也无法练习对冲击波、破片速度进行测试。随着虚拟现实技术(Virtual Reality,VR)的不断发展,将VR技术应用于实验教学,能够有效地解决上述问题。目前,VR技术在工程训练和实践教学中的应用已越来越广泛[1-9],但尚无杀爆弹静爆实验方面的虚拟实验系统。

杀爆弹静爆实验的目的在于研究和评比弹丸或战斗部的杀伤作用,即在距炸点各个不同距离上破片的杀伤能力,为选择弹丸金属壳体的材料、炸药及装药方法提供参考依据[10-11]。本文结合杀爆弹静爆实验教学的要求:需要较好的交互性来实现实训效果,系统的可移植性,包含自主学习、训练、考核等模块,使用Unity3D平台,开发出基于虚拟现实交互的杀爆弹静爆虚拟实验系统。学生可通过虚拟实验系统,亲身体验杀爆弹静爆实验的过程。实践证明,本系统不仅可以提高学生的学习兴趣,辅助课堂教学,培养学生的动手能力,还可以保证实验的经济性和安全性,方便实现资源共享。

1 虚拟实验系统的整体设计

1.1 实验项目内容设计[10]

根据杀爆弹静爆实验的要求,可将实验项目内容分为实验准备、扇形靶的布置、测试弹丸的安装、测速装置的布置与连线、测压传感器的安放、实验结果的整理与评定等内容。

(1) 实验准备。主要包括扇形靶、测试弹体、测速装置、实验场地等准备。扇形靶是由在自然条件下干燥的3等松木板或强度相当的其他木板制成。厚度为25 mm,长度不小于1 m,每块扇形靶的扇面弧长,等于各扇形靶板所处的1/6圆周的弧长,高度为3 m。被试弹体依据实验目的而准备,要注意排除一切干扰,以求获得满意的实验结果。测速装置选用网格线通靶和多通道计时仪等。冲击波超压是通过压电传感器测得冲击波速度,根据公式计算得到。

(2) 扇形靶的布置。在宽广平坦的地面上,靶板分别安装在6个同一圆心不同直径的圆周上,每个扇形靶的分布角为60°。扇形靶的布置示意图如图1所示。

(3) 测试弹丸的安装。将改造后的弹丸竖直放置在爆桩上,使被试弹丸放置后其质心距地面的距离为1.5 m。

(4) 测速装置的布置与连线。在以爆点为圆心的3个不同半径的圆周上分别确定2~5个测速靶点,各圆周上靶点安置前后互不遮挡,各测速通靶所在圆周距爆点的距离根据被测弹丸的口径确定。测速通靶安放完毕后,接线计时仪,准备实验。

图1 扇形靶布置示意图

(5)实验结果的整理与评定。根据每发弹丸的爆炸结果,将全部爆炸过的弹丸编制一份各扇形靶上穿透的破片、卡入的破片和杀伤破片数量的综合表,并求出平均结果。最后按照弹丸爆炸平均结果绘制出表示1/6圆周上穿透的破片和杀伤破片数量与炸点距离的关系图。

1.2 虚拟实验功能设计

为达到良好的学习和教学效果,本实验系统分为学习、训练和考核等模式。学习模式下:用户通过鼠标左键点击相应的按钮,可查看实验目的、实验准备、场景布置、实验步骤、数据分析等指导内容。训练模式下:用户可参照学习模式下的指导内容,在虚拟场景中按步骤完成弹丸选择与放置,通靶放置,连线,弹丸静爆等操作训练。考核模式下:用户在规定的时间内,按步骤完成虚拟实验操作,用户提交实验报告后,系统自动给出考核成绩。虚拟实验系统的整体框架见图2。

图2 虚拟实验系统的整体框架

1.3 虚拟实验系统的开发流程

针对测试弹之类对尺寸精度要求高的物件首先采用计算机辅助设计(Computer Aided Design,CAD)软件建模,然后将模型导入3ds Max软件中优化并制作UV贴图;而针对通靶、测试仪器和实验场景中的其他物件采用3ds Max直接建模、优化并制作UV贴图。继而将模型、UV贴图等文件导入Unity3D软件中,进行界面设计和C#脚本添加。最终在Unity3D中发布成基于个人计算机(Personal Computer,PC)平台的杀爆弹静爆虚拟实验系统。

2 实验场景及物件的三维建模

2.1 三维实体模型的快速构建与转换

三维模型的建立是整个实验系统实现的基础。目前,三维建模的方式主要可分为几何建模、物理建模和行为建模[12]。本系统的开发过程中主要采用几何建模的方法,使用的主要建模软件有Unigraphics NX(简称UG)、3ds Max等。UG软件是一款三维设计软件,所建模型精确完整,但材质的真实感不强,交互性不足。3ds Max是一款优秀的三维动画渲染和制作软件,可解决UG建模真实感不强的问题,并可以制作部分动画效果。Unity3D软件是一款跨平台的综合游戏开发工具,具有强大的编辑功能,可实现本实验系统所需资源的整合、添加组件、设置交互等功能。

本文采用的快速建模与转换思路是:首先通过UG软件建立模型,另存为.IGES格式文件;再导入至3ds Max软件中进行模型优化、添加材质,分展UV,在Photoshop中制作对应模型的UV贴图;然后另存为.FBX格式的文件,导入至Unity3D中编辑[13-14]。

2.2 实验场景的建模

杀爆弹静爆实验包含地形、天空、植物等场景模型,主要在Unity3D中完成。利用Unity3D中内置的Terrain引擎创建地形,调整好地形的基本形状后,选用合适的单元纹理赋给画笔,画笔所经过的地方将会把对应纹理贴到地形上。通过Terrain继续在地形的适当位置种植花草树木等植物,最后通过Terrain Settings为地形添加模拟风,使地形中的花草树木非常生动地随风摆动。天空的表现通过Unity中的天空盒材质渲染来实现。场景逼真程度很大程度上取决于材质和灯光,在本实验场景中使用烘焙贴图技术(Render To Textures)将光照信息融入到纹理信息中,形成贴图,减少渲染的计算量,保证虚拟交互过程的流畅性。

2.3 实验设备和装置的建模

靶板、靶架、测试弹、爆桩、测速通断靶、导线、计时仪等实验设备和装置的建模主要在UG和3ds Max中完成。针对测试弹可利用已有的UG模型导出为.IGES格式文件,再导入至3ds Max中进行优化并添加材质、制作UV贴图。对其他实验设备可参考实际尺寸在3ds Max中直接建模,并添加材质、制作UV贴图。最终所建实验设备部分模型效果如图3所示。

图3 贴图后的测试弹和电子测时仪

3 交互功能的设计与技术实现

3.1 交互功能的设计与编程思路

本文借鉴模型(Model)、视图(View)、控制器(Controller)组成的MVC设计模式[2],来实现用户与系统的交互功能。首先,用户进入View视图,即虚拟实验场景中,根据场景中的指导性文字、箭头,开始进行实验操作,所做的操作将以命令的形式传递到Controller中,对用户的操作进行分类、判断后,最后对模型进行相应的控制,如移动测试弹、放置测试弹、接线等。模型受到相应的操作控制后,在View中显示出来,反馈给用户。用户继而根据反馈,进行下一步的操作,如此循环往复,实现系统的交互功能。Unity3D主要通过脚本程序组件对模型进行控制,即通过脚本程序控制模型的材质改变、动作方式等。Unity3D主要支持C#、JavaScript两种脚本语言[15-16],本文主要采用C#脚本编程实现系统的交互功能。

3.2 交互功能的实现

在Unity3D中开发杀爆弹静爆虚拟实验系统的关键是正确使用程序中的脚本函数,实现场景中的物件与用户的交互。下面对弹丸的选择、模型移动、虚拟实验系统的搭建、弹丸静爆特效、考核计分等交互功能的实现进行简要的介绍。

(1)弹丸的选择功能实现。本例中用到57 mm高射榴弹、85 mm榴弹、105 mm杀爆榴弹等弹丸。在虚拟环境中将弹丸设置为预制体,在弹丸的安装初始位置上添加3个弹丸预制体。通过点击用户界面(User Interface,UI)上的切换弹丸按钮触发弹丸预制体隐藏或显示效果,从而实现弹丸的选择功能。

(2)实验装置模型移动功能的实现。在虚拟实验操作中会涉及到场景中测速通靶、电子测时仪、压电传感器等装置模型的移动操作,鼠标点击响应后,截取到鼠标点击的屏幕上的那条射线,并将其进行碰撞检测,连续判断指针上是否有模型,鼠标右键判断其ID是否一致,若一致则模型位置就是鼠标位置,即鼠标拖动模型移动到相应位置。

(3)测试弹丸的放置。按实验要求,经改造后的弹丸应竖直放置在爆桩上,并使被试弹丸放置后其质心距地面的距离为1.5 m。在本实验系统中,对实际操作过程简化后,设计了一个虚拟人并结合Mecanim动画系统来完成测试弹的安装。在Unity中,Mecanim动画系统是一种高效、方便的动画制作的工具,通过动画控制器可以让大部分的动画开发工作与代码分离,使用简单的单击和拖拽就能完成动画控制器的创建。用户操作的交互过程采用UI界面交互来实现,最终效果如图4所示。

图4 测试弹丸的安装

(4)弹丸静爆特效的实现。弹丸静爆是在按下起爆开关后,触发引信,被测弹丸被引爆,产生火光,破片飞散,穿过或卡入靶板和通靶的过程。为表现杀爆弹的静爆效果,可用Unity集成开发环境中粒子系统来模拟爆炸时的火焰及烟雾等效果。为弹丸预制体添加粒子系统(Particle System)对象,设置Transform和粒子参数,模拟弹丸爆炸时产生火光和破片飞散的效果。效果如图5所示。

图5 炮弹触发特效的实现

(5)考核计分功能的实现。根据用户的实验操作,在用户点击提交按钮后,系统自动给出考核成绩,满分为100分。在系统中可根据实验要求设计实验步骤,对每一个步骤进行顺序编号形成一个序列。在每次实验过程中记录操作者的操作步骤序列,再与系统预设的步骤序列进行比对,从而计算出考核分数。

4 软件系统的集成验证

系统各模块开发完成后,发布后的杀爆弹静爆虚拟实验系统的格式为.exe,在Windows系统中可直接打开运行。打开后,首先进入登录界面,用户输入学号、密码,点击登录后,即可进入杀爆弹静爆虚拟实验系统界面。点击扇形靶实验按钮,进入实验模式选择界面,分别点击学习模式、训练模式、考核模式按钮,即可进入对应的实验模式。扇形靶实验模式选择界面如图6所示。

图6 扇形靶实验模式选择

在考核模式下,用户可查看实验目的、实验准备、场景布置并根据实验步骤完成实验操作,提交后,即可查看成绩。界面如图7所示,图中①为实验步骤按钮区;②为实验计时区;③为实验场景俯视图和帮助按钮区;④为弹丸测试菜单,包含工具选择、炮弹触发、切换弹丸、靶板材料等;⑤为工具选择子菜单,包含测试弹、通靶靶板、多通道计时仪等实验工具和仪器的选择;⑥为实验步骤提示面板;⑦为提交后弹出的成绩面板,显示得分与实验用时。

图7 考核模式界面

5 结 语

本文基于Unity3D平台,结合杀爆弹静爆实验开展的实际情况,对实验的过程进行交互设计,建立了杀爆弹静爆实验的虚拟场景,完成了实验过程的虚拟仿真,分别通过学习模式、训练模式、考核模式满足不同的实验需求。

虚拟实验系统解决了高校此类实验教学无法开展的问题,没有真实实验的危险性。本系统达到了预期的效果,未来将进一步完善其内容和功能。具体的工作包括:增强系统的沉浸性、增加实时仿真模块等。

猜你喜欢
扇形弹丸建模
超高速撞击下球形弹丸破碎特性仿真研究
神秘的『弹丸』
各种各样的扇形
扇形统计图 教学设计
联想等效,拓展建模——以“带电小球在等效场中做圆周运动”为例
空化槽对弹丸水下运动特性的影响
探源拓思融会贯通
———《扇形的认识》教学廖
基于PSS/E的风电场建模与动态分析
不对称半桥变换器的建模与仿真
3Dmine 在雅满苏井下矿扇形中深孔爆破炮孔设计中的应用