基于VRML的虚拟化工实验室的构建
时间:2022-06-03 13:21:02 浏览次数:次
摘要:将虚拟现实技术融入化学反应工程课程实验中,能够极大地改善化学反应工程的实验条件与教学质量。该文以虚拟现实建模语言(VRML)为基础,重点讨论了化学反应工程虚拟实验室的构建过程,并对其交互式实验操作方式进行了初步探索和研究。
关键词:化学反应工程;虚拟实验室;VRML;交互
中图分类号:IP064文献标识码:A文章编号:1009-3044(2010)04-0969-03
VRML-based Virtual Chemical Laboratory Building
LI Min, GAO Jun, ZHANG Zhi-shan
(School of Chemical and Environmental Engineering, Shandong Technology University, Qingdao 266510, China)
Abstract: Applying virtual reality technology to the experiment of chemical reaction engineering, the condition and equality of the experimentwe should be emproved largely. Basing on the VRML, the paper discussed the Building process of the chemical reaction engineering virtual laboratory emphasisly, and studied the operational mode of the interactive experiment preliminarily.
Key words: chemical reaction engineering; virtual laboratory; VRML; interactive
1 概述
长期以来,由于资金、场地等综合因素的影响,化学反应工程的课程实验在许多高校始终无法顺利开展。而与此同时,随着计算机技术的迅猛发展,虚拟现实技术的应用价值已经得到了人们愈来愈多的认可。在此背景下,将虚拟现实技术融入化学反应工程的课程实验,以三维虚拟化工实验室为载体,以虚拟实验环境中的交互式实验操作为基础,将极大地改善化学反应工程的实验条件与教学质量,其效果是显而易见的:1)有效降低了实验成本;2)以虚拟的实验空间代替了传统占地较大的教学空间;3)实验者可以完整地体验整个实验流程,并可以反复操作以比对校正。
针对上述问题,本文以虚拟现实建模语言(VRML)为基础,重点探讨了化学反应工程虚拟实验室的构建过程,并对其交互式实验操作方式进行了初步探索和研究。
2 虚拟现实技术与VRML
对于虚拟现实技术的研究最早始于20世纪60年代,但直到90年代初,虚拟现实技术才开始作为一门较完整的体系而受到人们极大的关注。本质上,它是一种先进的计算机用户接口技术,通过给用户同时提供诸如视、听、说、触等各种直观而又自然的实时感知交互手段,最大限度地方便用户的操作,从而减轻用户的负担,提高整个系统的工作效率[1-2]。其研究内容涉及人工智能、计算机科学、电子学、传感器、计算机图形学、智能控制、心理学等诸多方面。
虚拟现实的主要特征可以概括为三个I,即Immersion,Interaction和Imagination(沉浸、交互、想象)[3-4]。它强调了在虚拟现实中人的主导作用,就是要使计算机及其它传感器所组成的信息处理系统去尽量满足人的需要,而不是以人去适应设备。
目前,应用较为广泛的虚拟现实技术主要包括VRML技术、OpenGL技术、Java3D技术等。其中,VRML(Virtual Reality Modeling Language,虚拟现实建模语言)是一种描述三维造型与交互环境的简单的文本语言,是在Internet上建立3D多媒体和共享虚拟世界的一个开放标准。作为网络浏览的一种形式,它的“网页”是一幅幅立体的场景,具有界面真实感强、浏览方便、信息量大、交互性能优越等优点,是实现网上教学、模拟战场、网上实习、网上实验的利器[5-7]。
3 虚拟实验室三维场景建模
构建虚拟实验室,首先需要完成三维场景的建模工作,本文采用VRML与3DMAX相结合方式搭建三维场景模型[8-10]。
3.1 场景的层次结构
根据虚拟实验环境中空间实体的几何位置以及模型间的结构关系,本文将实验场景中的实体模型分解为如图1所示的树状层次结构。
对场景进行层次结构划分后,可以方便地进行实体模型的组织和管理,而实体模型内部的层次结构划分能将复杂模型自顶向下分解成若干基本单元,明确模型构建目标,大大减轻建模的工作量。
3.2 虚拟场景形体建模
以实验场景模型层次结构为基础,逐步完成虚拟实验室实体模型的构建。对于一些简单的场景对象本文直接采用VRML的建模功能来构建模型,并通过纹理、材质等渲染方法对其进行加工,使其更加逼真。对于复杂的虚拟场景对象,本文首先采用3DSMAX构建模型,然后再转换成VRML文件。
3.2.1 实验楼建模
按化工实验楼真实形状,将其分解为一系列的基本形体,包括地面、大厅、走廊、楼梯、栏杆、墙、窗和门等,每个模型实体用一个单独的结点,或者用原型结点进行构建。基本形态构建完成后,按其在实验楼内的相对坐标逐一整合到同一个虚拟环境中。
图2为实验楼大厅的局部场景,图3为实验楼楼梯的局部场景,图4(a)、(b)为实验楼全景效果。
图4 实验楼全景效果
3.2.2 实验室场景建模
实验室场景建模主要是实验室内部场景的建模。为了使构建的虚拟实验室更加具有真实感,实验室的建模完全按照化学反应工程实验室的真实环境来设计。同时,为优化虚拟场景文件,实验室采用单独构建场景的方式,建模完成后,再利用VRML的内联节点(Inline)将实验室按照其相对位置坐标添加到实验楼里。
图5(a)、(b)为实验室内部效果图。
图5 实验室内部效果
3.3 场景的优化处理
在创建复杂的VRML场景模型过程中,可能产生大量的冗余数据。这些冗余数据,一方面使得场景文件变大而不利于网络传输,另一方面也会影响场景的渲染速度而使场景失去真实感。基于上述原因,本文对生成的虚拟场景文件进行了优化处理方法,包括:
1)压缩VRML场景文件;
2)使用原型语句引用同类实例模型;
3)减少多边形数量;
4)合理使用光源;
5)用纹理覆盖多边形造型;
6)优化碰撞检测。
4 虚拟实验场景交互式操作
虚拟场景的三维建模仅仅是实现虚拟实验室系统的第一步,要使浏览者能够控制场景,还需要对虚拟场景的交互方式进行有效设计。VRML的交互功能非常强大,按设计方式分,可以将其分为非编程交互与编程交互两种。
4.1 非编程交互
这是一种基于VRML内建节点的交互方法。它利用触发器检测浏览者在虚拟场景中的动作,并通过触发事件的传递,来实现浏览者和虚拟环境的交互。
VRML触发器分为两大类,一类是触摸型的传感器,另一类是感知型的检测器。一个虚拟场景采用哪种触发器主要是由浏览者在场景中的动作来决定。
1)基于触摸型的触发器的交互
浏览者在浏览场景的时候,主要的输入装置是鼠标,这时候触发器实际上是检测用户对于鼠标的各种操作动作,如鼠标的单击、指向和拖动等动作,从而使场景做出相应的反应。VRML中描述这类触发器的节点主要有TouchSensor节点、PlaneSensor节点、SphereSensor节点以及CylinderSensor节点。
以开门这种简单的交互动作为例。当要进入实验室时,较自然的交互方式是推门而入。实现这种交互控制可通过TouchSensor来实现。TouchSensor是一种接触感知器,鼠标点击后可使物体转动。此交互操作的实现效果如图6所示。
2)基于感知型的触发器的交互
这类触发器主要是当浏览者和场景中的某对象接近时,对象进而做出某种响应,从而在浏览者和对象之间形成交互。描述这类触发器的节点主要有可见感知器节点VisibilitySensor、接近感知器节点ProximitySensor和碰撞感知器节点Collision。
仍以开门这种简单的交互动作为例,使用ProximitySensor节点可以感知浏览者的接近状态,以完成一个自动开门动作,当人穿过门后,门又自动关闭。
4.2 编程交互
通过ROUTE TO及感知器节点,即通过非编程的方法,场景的简单交互基本能够实现,但VRML技术规范中大部分节点的数据规格特殊,其不足之处就是这种变化参数难以扩展,灵活性不够,且无法实现较复杂的动态效果;在编程交互中,VRML引入了Script节点,Script节点拥有独立的url域,可以与其他脚本语言实现混合编程,可以为Java和Javascript等外部编程语言提供应用平台,这样就大大拓展自身的动态交互能力。其实现思想是:Script节点中的域url指定一段实现事件处理的Java程序代码或脚本Javascript,然后将程序计算返回的结果递交给Script节点的输出事件,再通过ROUTE TO将该事件传递给场景某对象的相关域,达到改变场景的目的。或者直接由Script节点中指定的第三方程序控制VRML场景。
1)通过内嵌Javascript脚本语言实现VRML交互
VRML技术规范本身没有定义数据库节点,因此必须利用封装在script节点中url域内的Javascript语言脚本与外界交互信息,实际上是通过Javascript规范中的数据库对象与数据库相连。
在Script节点的url域中声明并插入Javascript脚本。在脚本中利用数据库对象与数据库连接操作数据库,将得到的数据封装为VRML规范支持的数据格式,再由Script节点传输到其他节点的入接口域上。程序片段如下:
DEF demo Script{
url " Javascript:#声明所使用脚本语言的种类
this.database.connect (databasetype,servername,
user2name,password,databasename)#操作数据库
temp=this.database.execute(search 3 from database
while……)#检索数据并记录
stockindexes-changed=temp"#封装数据并送数据输出接口
}
2)通过内嵌于Javascript语言脚本实现VRML交互
首先将VRML语句用writeln语法封装为标准Javascript语句,并将其写入页面脚本。这样在终端运行的应用系统会先调用HTML解释器对脚本进行高效的文本解释,再根据writeIn语句中声明的类型调用VRML解释器,将封装的VRML语句提取出来还原为标准VRML语言并写屏显示。这样在提取VRML语句时就可以将数据库中的数据存储在全局变量中直接传到VRML解释器中与VRML语句一同解释、写屏。
假设把要改变VRML模型(Box立方体)代码标记为变量model模型。程序片段如下:
#VRMLv2.0 utf8
Shape{
Appearance Appearance{material Material{} }
geometry box{}
}
WriteIn "#VRMLv2.0 utf8"
WriteIn "shape{"
WriteIn "appearance Appearance{"
WriteIn "material Material { } }"
WriteIn "geometry"+ model + "{ } }"
这样,VRML空间中的模型就可以根据model变量内容的不同而改变形状、颜色甚至属性。
上述两种方法在技术上都是可行的,但在网络环境下的实际应用中两者的执行效率是不相同的。
VRML利用内嵌Javascript语言连接数据库时,命令行需要逐行解释和处理,系统的整体运行速度慢,执行效率低,同时因为是直接操作数据库本体,外界数据源的安全性难以保证。但所有的数据操作都集成在系统的本地页面中,便于维护和修改。
VRML通过内嵌于Javascript语句连接数据库时,用户可以按照操作习惯同时从多个界面发出指令,人机交互性好,但因为经过封装的语句需要进行两次解释,因此系统的显示效率低,对用户操作的响应速度慢。(下转第980页)
(上接第971页)
5 结束语
课程实验是化学反应工程教学任务中不可或缺的组成部分。通过实验,学生能够巩固知识并掌握一定的实践技能。虚拟实验的开设无疑会更加丰富实验类型和项目,强化实验技能,提高教学水平。随着虚拟现实技术的不断发展,虚拟化工实验室的构建技术也将不断完善。相信,在不久的将来,虚拟现实技术在实验教学领域中的应用,必将更加广泛与深入。
参考文献:
[1] 汪成为,高文,王行仁.灵境(虚拟现实)技术的理论、实现及应用[M].北京:清华大学出版社,1996.
[2] 李敏,刘刚,王力.虚拟现实技术在化学反应工程实验教学中的应用[J].计算机与应用化学,2006(10).
[3] 曾建超,徐光佑.虚拟现实技术及其发展战略[J].电子学报,1995(10):57-58.
[4] Mark D.Ergonomic considerations in launch design and process sing for operational efficiency[C].Proceeding of 31st International Space Congress,Florida,U.S.A,1994,4(7):35-41.
[5] 刘筱兰,张薇.虚拟实验室的类型及发展趋势[J].计算机应用研究,2004(11).
[6] 易小琳,王鑫.网上计算机系统虚拟实验室的研究[J].计算机工程,2002,28(11).
[7] 陈秀清.关于虚拟实验室的建设[J].福建广播电视大学学报,2003(1).
[8] 孟国军.基于VRML的虚拟实验室框架的研究[J].电子科技大学学报,2002(15).
[9] 刘志广,吴超,等.三维交互网络虚拟原子吸收实验室的构建[J].计算机与应用化学,2002,19(4):492-494.
[10] 江建军,周毅.基于虚拟仪器的网络虚拟实验室构建[J].仪表技术,2003(5):11-19.
[11] Deanna Rainer.Virtual laboratories enhance traditional undergraduate biology laboratories[J].Biochemistry and Molecular Biology Education,2001(29):160-162.
注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文
[基于VRML的虚拟化工实验室的构建]相关文章
- 构建企业有效团队的探讨
- 论高校创新型教师团队的构建
- 网络虚拟实验室的构建研究
- 共享经济背景下粮食加工企业管理会计体系构建
- 构建“亲清”政商关系促进洛宁经济发展 构建亲清政商关系是什么意思
- 医学生诊断学实践课教学模式的构建与应用
- 食品物流体系构建研究
- 规范收入分配秩序 构建和谐社会
- 虚拟现实技术在飞行院校中的应用研究
- 浅谈虚拟现实技术在三维动画专业数字化资源库建设中的应用
- 虚拟现实技术在“地球概论”课程教学中的应用
- 车间先进班组范文 [工程部2014先进班组申报材料]
- 先进事迹材料模板【(事迹材料)化工厂先进个人事迹材料】
- [2020五一劳动奖章先进事迹材料(化工班长)]五一奖章事迹稿
- 班组先进事迹材料:先进班组事迹材料
- [-化工厂先进个人事迹材料-word例文] 化工个人先进事迹
- 【事迹材料化工厂先进个人事迹材料】先进事迹材料模板
- [煤矿先进班组申报材料] 煤矿先进班组申请
- 化工厂优秀员工事迹材料 化工厂先进个人主要事迹范文500字
- 化工厂员工个人工作总结 化工单位先进个人报告
- 化工企业员工年终总结(全文)
- 上一篇:地方新建本科院校产学研结合途径研究
- 下一篇:在化学教学中注重培养学生的创新能力