铁路货车事故虚拟演练系统的设计与实现
2020-05-10李春林刘瑞军宋冬利
杜 彪,唐 兆,李春林,刘瑞军,宋冬利
(1. 神华铁路货车运输有限责任公司 榆林车辆维修分公司,榆林 719000;2. 西南交通大学 牵引动力国家重点实验室,成都 610031)
近年来,我国铁路交通事故10 亿 km 死亡率和死亡人数均呈现下降趋势,主要原因在于我国铁路技术高速发展,铁路部门创新设备检测、维修和养护手段,充分发挥安全激励约束机制,使得由于技术问题等导致的交通事故数量极少发生。
现在事故发生的主要原因是人为行为和自然灾害等。有数据分析表明,大约90%的铁路运输事故与人的不安全行为有关,人的不安全行为是导致事故发生的关键因素。近年来,铁路货车危险品事故原因分析显示,67% 的事故也是由人的原因造成的[2-3]。因此,为了进一步降低铁路事故发生率,减少铁路事故伤亡人数,提高铁路车辆行车安全性,有必要对铁路员工和相关人员进行系统的培训,尤其是铁路车辆检修人员、铁路周边作业人员、和司机,行车人员等,从而提高相关工作人员的总体素质和操作技能,减少由人为原因造成的铁路事故的发生。
为了对进行相关人员有效的培训,铁路领域开发了多款培训教育软件系统。如上海铁路局早在2005 年就开发了《上海铁路局行车事故快速救援处置预案应用系统》[4],近年来国家铁路局安全技术中心和北京交通大学也联合开发了《铁路事故现场数字化建模及动态仿真分析系统》对事故现场进行建模和仿真分析,用于事故演练和培训学习[5]。此外,还有一些高校和铁路机构联合进行了相关的研究和开发工作[6-12]。
现有系统多基于单一PC 终端实现,随着移动通信和虚拟现实技术的发展,移动学习和具有沉浸感的体验式学习已经成为演练培训系统的主要发展方向。因此,结合沉浸式虚拟现实技术(VR),研发了一套多种终端铁路货车事故演练系统,该系统由知识学习、事故模拟和考试系统等主要模块组成。本文详述了系统的架构、开发路线和关键人机交互方式的实现过程。
1 系统主要模块与技术路线
多终端铁路货车事故虚拟现实演练系统设计主要包括3 大模块:知识学习、事故模拟和考试系统,其主要技术路线和软件主界面,如图1 所示。
1.1 知识学习模块
知识学习模块主要由3 部分组成,分别为理论知识学习、试题库学习和常见危险源介绍。(1)理论知识学习主要包含工厂安全安规条例、事故应急处置作业指导、安全细则等内容,以Word 和PDF 文本的形式展示。(2)试题库学习主要通过连接海量题库学习,题库内容主要为根据理论知识学习中的条例设计的选择题、判断题以及填空题。(3)常见危险源介绍通过图文演示和动态演示的方式展示铁路货车车间作业中常见的危险源。
通过以趣味性、易于学习吸收的方式展现应该学习的内容,建立安全防护相关的知识学习系统,以此来提高职工的学习效率,增强记忆效果。
规划合适的学习流程,让职工在学习的过程中循序渐进,层层积累,最终学会所有的相应规范。该模块主要包括2 部分的工作:(1)大量收集与调研铁路安全防护规范及操作注意事项相关资料,整理成文,形成系统的知识;(2)通过图文演示与动画演示的方式对员工进行培训与指导,以有趣的学习方式展示相关内容,提高职工学习的效率和积极性,加深职工对于所学内容的印象。
1.2 事故模拟模块
事故模拟模块为系统的核心,在事故模拟模块中,主要利用三维可视化技术和沉浸式虚拟现实技术(VR)还原事故现场、模拟事故过程。通过VR 技术,职工可以身临其境的学习与掌握各种事故处理的流程、方法以及注意事项[13]。(1)操作者在虚拟场景中通过虚拟交互设备进行学习,头显设备展现三维虚拟场景,其中在虚拟场景中通过物理引擎进行仿真以达到现实世界的物理现象,同时添加一些动画与特效,共同实现三维立体视觉;(2)在进行虚拟场景制作同时进行相应声音的设计,通过逼真的声音特效达到高保真听觉与真实感;(3)在手柄设计中,基于手柄已有的特性开发具有力反馈的效果,使操作者具有很好的触觉感受;(4)为了增强虚拟世界的真实性,在腿部添加2 个辅助追踪器,进行更高精度的追踪,从而实现更佳的虚拟体验。
系统良好的交互性能与舒适的操作体验,可以使员工自由进入检修的关键位置,使用各种工具、零件与场景、配件进行实时交互,提高事故处理效率,保护职工的人身安全以及增加职工对于相应事故的处理经验。通过对事故过程的还原,情景的再现,加深职工对于事故的印象,通过在虚拟场景中的实际操作,熟悉预防事故的基本事项,正确操作。
1.3 考试系统模块
在考试系统模块中,主要包括理论测试与互动测试2 大部分,(1)理论测试部分由常识、题库、图片与音频组成,可以进行题量、类型的智能个性化生成,以满足不同水平考试的需求;(2)互动测试主要由VR 测试、危险源识别以及严肃游戏等组成,进行有机组合多角度考查员工。理论测试加强职工对基础知识的掌握,互动测试与VR 考试共同提高职工的实际动手能力。综合,两者结合可以全面评价职工水平以及强化职工的相关知识与技能。
通过多终端铁路货车事故分析智能演练系统3个模块相互作用,职工可循序渐进的系统学习相关理论知识。通过可穿戴设备提供的身临其境的体验,引导职工按照规范的步骤处理突发事件,使职工积累相应事故的处理经验。另外,该系统采取多终端模式进行设计,为职工提供了多种方式(App、Web、桌面应用程序)进行相互补充学习,提高学习的效率。
2 事故系统设计与实现
为了提高受训者的体验度和学习意愿,我们设计了一个具有多个终端的演练系统,如图2 所示。
2.1 手机端App实现
手机App 的开发主要基于Android 系统进行。开发工具使用已经比较成熟的AndroidStudio,开发语言采用Java[13]。可以进行简易的VR 场景浏览,没有头显设备所需要的复杂准备与操作,员工可以在自己的手机上安装简易VR 版App,放入Google cardboard 盒子中进行体验。
2.2 桌面端应用程序实现
桌面应用程序采用Unity 3D 软件开发。Unity 3D 可以比较方便地进行VR 方面的开发、可穿戴设备定制开发与设计以及便于场景的快速且真实的渲染。为实现职工通过VR 穿戴设备进行事故处置演练,通过Maya 建立相应的模型,导入Unity 3D 中,在Unity 3D 进行完成VR 可穿戴设备与各种工具及零配件模型的实时交互设计,实现货车事故虚拟现实演练[14]。
2.3 Web端应用程序实现
Web 端应用程序主要基于PHP 的CakePHP 开源框架,可快速灵活地进行项目开发,设计有账户登录、考试、学习与后台记录等功能,主要负责系统理论学习与考试部分,方便职工随时随地的学习与考试。
3 人机交互关键技术
人机交互直接关系到受训者的用户体验,从而影响受训者学习主动性和培训效果,为了提高系统人机交互友好度,我们提出了一些新的人机交互方式。
3.1 受训者在虚拟场景中自然的大范围移动技术
现有的移动方式包括:空间位置的瞬移和触控键的控制移动。空间位置瞬移的方式可有效地减少移动造成的眩晕感,但无法模拟工作人员在行走时的工作状态,例如人员巡检等。触控键的控制移动方式由于人员并未真实的移动而造成严重的眩晕感,降低了VR 的沉浸感。
本系统提供了一种更加友好的工作人员大范围移动解决方案。在本系统中,相比传统的VR 设备,新增两个腿部跟踪设备,该设备通过实时捕捉定位操作人员小腿的动作,将腿部位移实时转换为操作人员在虚拟场景中的位置移动,同时根据两个手柄控制器的方向确定身体的方向,将身体的方向作为虚拟场景中位置移动的方向。该方法融合了现有的两种方式的优点,克服了大范围移动引起的眩晕感。
腿部绑定定位器实现人物自然行走和移动原理,具体原理,如图3 所示。
其中人物在虚拟场景中移动速度v和移动方向s的确定如下:
—左手手柄的单位方向向量(矢量);
—右手手柄的单位方向向量(矢量);
P1—追踪器前一帧的三维坐标(是指场景渲染的前一帧,计算机显示是一帧一帧渲染的);
P2—追踪器当前帧的三维坐标;
Δs—人物在真实世界两帧之间腿的挥动距离(标量);
—映射在虚拟场景中的人物在两帧之间的位移向量(矢量);
v此处求得人物的移动标量速度;将左右手柄单位方向向量之和作为人物移动的方向,即2 个向量的夹角。
空间定位器通过发射红外光实时捕捉绑在操作人员小腿上的位置追踪器和握在手中的控制手柄在空间中的运动。追踪器将操作人员在空间中腿部的运动(包括抬腿和收腿)映射为虚拟场景中的移动。我们使用UnityVR 插件SteamVR 开发追踪器,调用其提供的API,API 会自动采集追踪器任意帧的空间位置,根据追踪器传感器前后两帧的位置差,就可以根据式(1)计算出人物在虚拟空间中的移动距离,追踪器将求得的距离映射为人物在空间中的位移;根据两个手柄在空间中的方向,如图3 所示,即可根据式(2)计算出人物在虚拟空间中的移动方向。
3.2 事件自动触发的智能弹窗设
该方法提供一种在演练时根据演练事件的发生自动获得相应的提示。具体实现方法,如图4 所示。
系统主要使用Unity3D 软件进行开发,脚本语言选择C#,创建脚本,定义EventType 类,用于存放事件码。将在事故模拟模块中已经做好的所有案例都放入该类,每个案例对应一个事件码;定义CallBack 类,封装系统所使用到的委托,通过委托可以把方法当做参数传递;定义EventCenter 类,在其中定义一个字典来存放委托和事件码,定义方法实现添加监听,移除监听以及广播监听的功能。
该方法在演练系统中设计事件监听器和事件分发器,当事故发生以后,广播事件码,事件监听器就会接收响应,进而触发事件触发器。事件触发器在接收到响应后,就会主动向事件库进行查找,根据事件码判断该事件是否是事件库中存在的案例事件,如果是则交由事件分发器处理,不是则抛弃。找出对应的事故事件,确认事件类型,发送到事件分发器。事件分发器根据事故情况到弹窗库进行查询,根据事件类型或危险源自动弹窗。
其中,向导式学习流程设计是通过一步一步图标或文字引导使操作者完成相应的事故处理;场景位置绑定的智能弹窗设计即通过识别场景中操作者所发生的事件进行触发相应的弹窗内容,以达到更加智能的引导学习效果,例如在火灾事故场景,基于操作者所到达的空间位置进行相应的弹窗引导;事件自动触发的弹窗设计即通过智能检索事故发生的类型然后弹出相应的引导内容,在火灾中,智能识别场景中火灾的类型并进行相应的弹窗,通过三者混合设计使操作者学习更加智能和高效。
4 结束语
本文设计和实现了一套多终端铁路货车事故虚拟现实演练系统,并对系统的可用性和易用性进行了详细评估,主要结论如下:
(1)系统采用多终端设计模式,包括桌面端、移动端、VR 端和移动VR 端的多终端铁路事故演练系统是铁路事故演练和培训的发展趋势,各个终端能够在培训和演练过程中实现优势互补,各个终端的协同配合可大大提高系统的易用性,具有推广应用价值。
(2)系统实现了一种新的腿部绑定位置跟踪器实现演练人员在场景中的自然行走和大范围移动方案,降低了演练人员长时间佩戴头盔的眩晕感。同时,为了增加演练人员的学习效率,提出了一种事件自动触发的智能弹窗设计。