基于X3D的石化CNG仿真培训系统的研究与应用
来源:第三维度
作者:武丹丹
摘 要 本文通过分析现有CNG加气站安全培训的缺陷,提出利用Internet虚拟现实技术与CNG安全培训结合的方式,实现CNG仿真培训系统来提高培训质量。本文详细阐述了系统的组成、界面设计、建模技术、X3D技术和利用X3D技术实现关键人机交互的方法。
1 引言
随着社会的进步,环境问题越来越受到人们的关注。在汽车业,为改善汽油、柴油燃烧后对环境造成的污染,压缩天然气(CNG)汽车得到了广泛的推广和应用,压缩天然气汽车加气站也随之建立并得到快速发展。
1.1 CNG加气站人员的安全培训重要性及现状
CNG加气站本身具有的危险因素,如天然气易燃易爆、天然气泄漏、高压运行、天然气质量差等,使得CNG加气站的安全问题必须引起高度重视。随着燃气行业多种经营体制的发展,部分经营不规范的中小型企业,严重忽视操作人员的安全培训。CNG加气站的火灾危险性分析显示,新建CNG加气站的操作人员因未经过全面的培训,不熟悉CNG技术,对安全知识知之甚少,容易出现违章作业或违反安全操作规程,导致出现安全事故。这就暴露了当前CNG安全培训的缺陷。目前,CNG加气站安全培训的现状如表1所示。
方式 | 缺点 |
幻灯片、录像 | 只能观看,不能亲手操作 |
师傅带徒弟现场操作 | 不能体验到错误操作;存在事故隐患 |
模拟设备 | 成本较高 |
表1 CNG加气站安全培训方法对比
1.2 Internet虚拟现实技术与CNG安全培训结合的意义
通过分析现有培训模式的缺点,不难认识到采用虚拟现实技术构建虚拟环境可以很好地保证知识体系的不断灌输,又能保证培训效果的直观性、真实性,还避免了现场培训的安全问题。在高速发展的虚拟现实技术应用中,纯软件的虚拟现实技术以其投资最少,效果显著,具有强大的发展潜力,能广泛应用在小场景虚拟仿真项目中。因此,本系统利用纯软件的虚拟现实技术,采用开发Internet虚拟现实技术(即Web 3D)的3D图形标准X3D技术,来改变CNG加气站原有的培训方式,为用户提供一个直观、友好的图形化培训环境,使得学员可以在计算机提供的虚拟环境进行知识学习和自我测评的同时,熟练掌握设备的工作原理。
2 技术路线
2.1 开发条件
软件条件: Microsoft Visual Studio 2008开发平台;C#开发语言;BS Contact v7.1浏览器;X3D-Edit 编辑器;3DSMax建模软件。
2.2 关键技术
三维立体网络程序设计语言X3D是一种可以发布到3D网页的跨平台、简单的文本语言;也是一种能提供更自然地体验方式,包括沉浸感、交互性、动态效果、延续性以及用户参与探索的语言,继承自VRML的互联网3D图形国际通用软件标准。它使用XML表达对VRML几何造型和实体行为的描述能力,将XML的标记式语法定义为三维图形的标准语法,并且完成了X3D的文件格式定义。X3D的工作原理如图1所示。
3 总体设计
3.1 CNG仿真培训系统的模块设计
CNG仿真培训系统由主要功能介绍、工艺流程演示、多媒体演示、自我培训、测试管理、个人信息管理、用户管理7个模块组成。各个模块的简要介绍如下:
(1)主要功能介绍模块通过静态的知识展示和动态的流程画面结合,更直观的介绍标准站、母站和子站,让学员了解各站的功能和工作原理。主要设备介绍模块利用三维技术将压缩机、脱水装置、储气器、售气机全方位的展示出来,达到“所见即所得”的效果。
(2)工艺流程演示部分利用三维仿真技术,通过用户操作各个开关,进行控制三维剖面管道的气体流动,让学员更直观的了解每个子系统(调压计量、脱水、脱硫、售气)的工艺流程。
(3)多媒体演示模块用于学员观看老师的正常与异常操作演示录像。
(4)自我培训模块学员能够完成随机生成的试卷或老师设置的试卷,检查知识掌握情况,同时这个模块也是老师检查学员知识掌握情况的主要渠道。此外,操作测试利用三维仿真技术使得学员能够身临其境的进行一次完整的操作,系统能对错误操作给出警告,并展示错误操作的后果。
(5)测试管理模块用于老师上传资料、添加试题、设置试卷、批改试卷、查看成绩等。
(6)个人信息管理是用户更新个人信息的渠道。
(7)用户管理模块用于管理员添加、修改、删除用户。
图2 系统组织结构图
3.2 系统UI设计
系统UI设计遵从简洁性、风格一致性、视觉清晰性、排列有序性、安全性、人性化的原则。主要界面如图3所示。
图3 系统主界面
4 X3D技术在系统中的应用
4.1 3DMAX建模和X3D建模
对CNG加气站中各个实体对象分别单独建模。根据具体场景模型的类型和复杂情况采取两种不同的建模方法:①复杂且不规则的模型通常使用3DSMax建模工具得到。②简单且规则的物体直接使用X3D中的几何节点构建。压缩机的建模效果如图4所示。
图4 压缩机
单独建模完成后,将单独的实体场景整合成所需要的各个完整场景。如图5所示。
图5 输气工艺建模(部分)
图6 脱硫工艺建模(部分)
4.2 脚本节点实现交互
用户与场景的直接交互功能的实现有静态方式和动态的方式两种,静态方式是指仅仅使用X3D中提供的交互节点实现的交互功能,但如果要实现复杂的交互,则需要使用动态方式。动态方式是通过一段外部程序来决定事件的产生,在本项目中,利用JavaScript脚本对X3D场景的控制,来实现虚拟场景中实时人机交互的可视化操作。三维空间信息的交互过程如下,通过在三维场景中设定造型的传感器,在传感器上加入定点设备,再设定定点设备上的动作来实现的,当客户端的浏览者激发传感器的定点设备时,激活传感器后台预置的JavaScript上的事件,再传给客户端的浏览器,这样就会在场景中产生一系列的动作。
图7显示了静态方式实现操作间自动门开关的流程过程。
图7 静态方式实现自动门的开关
若要实现动态方式交互,先要建立HTML与X3D的交互。首先在HTML中加BS Contact插件,使HTML与X3D场景文件建立联系,显示联系的代码如下:
<OBJECT NAME=CC3D ID=CC3DWIDTH=80% HEIGHT=80%>
<PARAMNAME="SRC" VALUE=" GasTranSMIssion. x3d">
< EMBED SRC =" GasTranSMIssion.x3d " ……/>
<EMBED NAME=CC3D SRC=" GasTranSMIssion.x3d " ……>
</OBJECT>
建立好HTML与X3D场景的联系后,使用JavaScript对其进行功能扩展。首先加入要扩展功能的脚本,结构如下:
<script language="javascript">
function OnEvent(定义参数)
{…… }//定义想要扩展的功能
……
</script>
再将扩展的功能与场景建立联系。当客户端访问时先通过HTML加载X3D浏览器,当在HTML中执行响应事件的操作时,便激活后台的JavaScript脚本实现与场景的交互。动态交互主要用于操作培训和工艺流程展示。图8为动态交互在脱水工艺流程展示中的简单效果图。
图8 脱水工艺简易流程图
5 结语
本文详细描述了CNG仿真培训系统的设计思路、系统模块组成和关键技术的实现。通过将传统培训与仿真培训结合的方式,更好的达到了安全培训的效果,为CNG加气站安全生产提供了一定的技术保障。
参考文献
[1]张金利,张金锐,张金镝等编著. X3D立体动画与游戏设计.电子工业出版社
[2]张武军,田海等编著. VRML虚拟现实技术基础与实践教程.冶金工业出版社
[3]王雪编著. 基于JavaScript 实现X3D三维空间信息的交互式表达. 科技信息
[4]周希望编著. 基于X3D的虚拟校园交互式漫游系统. 北京服装学院硕士毕业论文
[5]黄文丽,卢碧红等编著.VRML 语言入门与应用.北京:中国铁道出版社
[6]武殿梁编著.虚拟现实应用系统及开发简介.上海:上海交通大学,计算机集成制造研究所
作者简介:武丹丹(1987-),女,硕士研究生,研究方向:计算机软件与理论。