APP下载

基于Unity3D的机械清罐应急处置系统的设计与实现

2018-08-21孙宁刘贤梅田枫赵娅刘卓炫

微型电脑应用 2018年8期
关键词:粒子应急考核

孙宁, 刘贤梅, 田枫, 赵娅, 刘卓炫

(东北石油大学 计算机与信息技术学院,大庆 163318)

0 引言

清罐作业是一个包含临时用电、动土作业、高空作业、有限空间等多种特殊作业的综合性作业。在进行油罐清洗作业时如果组织不当,作业风险辨识不到位,选择清洗油罐时机不佳,作业人员安全意识与自我保护意识不强,缺乏消防安全知识等,极易发生火灾、爆炸、泄露、中毒窒息等事故,给输油站安全生产带来严重威胁[1]。因此在油田机械清罐作业中,操作人员的安全操作意识与安全操作规范需要进行相应的培训与考核以便应对突发事故的出现。而在机械清罐作业中出现的诸如火灾、爆炸、中毒等突发事故的应急培训,仅仅通过模拟演习是远远无法满足对于清罐岗作业面对突发事故处理时的要求的。所以采用仿真模拟的培训与考核形式能够很好的模拟真实的爆炸、着火等效果,在给培训人员提供了身临其境的培训效果的同时,此系统还不受时间和空间的限制,大大降低了清罐作业突发应急事故培训与考核的人力物力成本。

1 总体设计

1.1 清罐应急处置系统功能分析

机械清罐应急处置培训系统的主要功能是对受培训者进行突发的各类紧急情况,如着火、爆炸、泄漏、锅炉缺水、中毒窒息等操作流程的应急处置培训。清罐岗培训者通过虚拟练习能够快速掌握清罐应急处置技能,并以此实现降低培训人力物力成本、提高清罐作业安全意识与技能的目的。

本系统在仿真培训作业过程中主要包括了文字选择题、工具的选择与调用、设备的选择与操作、仿真效果的演示播放、错误提示界面、成绩展示界面等。除主要的仿真培训功能外,本系统还包括了移动端及PC端登录、仿真考核分数判定、成绩录入及上传等功能的设计与实现。

1.2 整体设计

针对这样一个中小型机械清罐作业应急处理仿真培训和考核模块数据处理系统来说,总体上使用了三层的逻辑架构模式,管理部分采用统一的系统管理框架,虚拟仿真部分采用三维交互式虚拟仿真环境开发框架。利用Unity3D支持 Android、IOS、VR设备等20多种跨平台优势进行多平台的开发[2]。系统采用B/S+C/S混合架构,PC机版采用B/S架构,PC机用户通过浏览器访问系统,客户端零维护[3]。移动版采用C/S架构,开发相关的APP,主要开发了包括移动版离线使用时用户和成绩等信息的下载和上传网络访问操作。

首先根据现场各类应急突发状况分类、设计、编写相关脚本。同时利用场景设备资料进行3DMax建模及导入平台,并根据各个应急模块脚本制作相关音视频动画及交互设计,整合相关资源后最终集成到机械清罐应急处置系统之中,本系统开发集成结构,如图1所示。

图1 系统集成结构图

1.3 功能实现

本系统使用 3Ds MAX作为格式转换辅助工具,将模型格式转化成通用的模型格式 FBX。利用Unity平台的高度兼容性将FBX格式模型导入场景中并完成场景搭建,场景模型集成后将需要操作的相关工具、设备、人物、手势放入相应的位置中以实现各个步骤作业流程。

根据系统的培训及考核的需求,每个仿真培训和考核模块在具体进行仿真之前,首先要进行岗位识别,岗位识别之后,分别进行系统的仿真培训和考核两种功能模式操作:

1、仿真培训模式

仿真培训是将操作规程中的每项内容做成一个仿真培训小系统,受训员工通过里面每个步骤的文字提示来进行该项内容从头到尾的操作,操作过程中每个步骤都允许出错,出错时可以选择跳过该步骤或系统自动正确演示该步骤。

仿真培训显示最终的分数及每个步骤的正确与错误,以便受训员工及时了解自己对某项内容的掌握情况。仿真培训不限制学习次数,仿真培训成绩可以不存储。

2、仿真考核模式

仿真考核和仿真学习的开发方式一致,但是在执行每项内容的每个步骤时不允许出错,一旦出错,系统即自动退出该项内容的考核,记为测试1次。正式考核一天只提供2次测试机会,如果第一次考核不及格,可以进行第二次考核,如果2次考核都没有及格,则当天的考核成绩为不及格。

2 关键技术

2.1 粒子系统火焰及爆炸特效制作

粒子是个动态的产生过程。通过控制粒子的动态产生过程可以有效的控制粒子的消亡和产生,达到仿真模拟的真实效果[4]。本系统中为实现火焰及爆炸的真实模拟效果采用了Ellipsoid Particle Emitter、Particle Animation、Particle Renderer三类Component 结合使用实现火焰粒子效果[5]。由于场景中需要实现的爆炸效果主要发生在储油罐及锅炉周围,因此本系统采用的爆炸效果需要逼真的烟雾效果来模拟油罐内油火混合后的爆炸特效。

利用Particle System制作火焰及爆炸效果。整个系统包含两部分:Main Camera(主摄像机)和flame(火焰)。其中flame中有4个子对象:flame2(外焰)、smoke(火内烟)、smoke2(火外烟)和ember(灰烬)。利用层层粒子包裹叠加实现爆炸及火焰的逼真效果,具体效果,如图2所示。

图2 爆炸烟雾效果图

2.2 自动寻路生成撤离路线

在机械清罐应急系统中遇到的诸如着火及爆炸事故,对于现场人员往往很难控制爆炸及火情的发展,因此现场人员在当前位置快速生成路线并撤离便是一项必不可少的求生技能.本系统采用自动寻路技术是Unity3D中常用的几种组件中发展及使用都较为成熟的Nav Mesh Agent ,Off Mesh Link组件。通过这两个组件来烘焙地形 , 产生 Nav Mesh。场景中的实现效果,如图3所示。

图3 自动寻路效果图

根据已编辑好的场景效果相对应的代码如下:

private NavMeshAgent navs1;//声明寻路组件

navs1=BanZhang.GetComponent();//获取寻路组件

Vector3endPosition1=new Vector3(-754.89f,85f,51.45f);//终点

navs1.SetDestination(endPosition1);//设置寻路目标

2.3 油粒子流体特效

本系统中模拟了石油在管线运输过程中发生泄露的特效,石油作为一种特殊流体与一般的流水特效不同,其最大的特点就是石油在流动过程中具有一定的粘稠感,因此系统中在利用粒子特效模拟油泄漏过程中采用了Particle/Alpha Blended材质实现油粒子的特殊材质效果。

本系统在场景中利用Particle System(粒子系统)、纹理映射技术制作油泄漏效果及灭火器喷射干粉效果。粒子系统使用大量的、具有状态和属性的微小粒子来模拟具有不规则的物理现象,并且通过不断改变粒子系统中每个粒子的属性和状态来达到逼真的模拟效果[6]。而纹理映射则是通过将材质的纹理通过计算进行水平或垂直的平移来实现材质模拟流动的效果。

粒子系统与纹理映射两种方法相互结合,既能将需要高度仿真的油泄漏效果模拟出来又能利用纹理切换模拟油渍泄漏降低计算机运算模型面数提高运行效率。具体实现效果,如图4所示。

图4 流体粒子及纹理切换效果图

3 总结

机械清罐作业中的大型突发状况往往出现频率不高,但一旦发生其产生的后果将不堪设想,因此提高清罐安全作业意识、提升工人应对突发状况的作业技能水平是保证油气运输安全的重要因素。本系统的培训演练过程以一个完整的突发事件发生、发展的流程来设计,各个角色按照预案的规定对突发事件进行处置,为现实中突发事件的各类状况提供了一个模拟真实环境的实训平台,使清罐作业者能够熟练掌握整个应急处置流程,提升了清罐作业者在突发事件发生时的应急处置能力和效果。

猜你喜欢

粒子应急考核
人民的期盼就是应急青年的使命
碘-125粒子调控微小RNA-193b-5p抑制胃癌的增殖和侵袭
完善应急指挥机制融嵌应急准备、响应、处置全周期
基于膜计算粒子群优化的FastSLAM算法改进
内部考核
创新完善机制 做实做优考核
Conduit necrosis following esophagectomy:An up-to-date literature review
应急管理部6个“怎么看”
基于粒子群优化极点配置的空燃比输出反馈控制
国际新应急标准《核或辐射应急的准备与响应》的释疑