网络互动型机械工程虚拟实验室的构建
2011-05-21王丽娜
吕 红,赵 媛,张 杰,王丽娜
(海军航空工程学院 基础实验部,山东 烟台 264001)
虚拟实验室(Virtual laboratory)[1]是指由网络技术、计算机技术、虚拟现实技术等生成的一类适于进行虚拟实验的实验系统,包括相应实验环境、有关的实验仪器设备、实验对象以及实验信息资源等。
基于校园网,构建虚拟实验系统,使学生共享一个虚拟空间,达到提升教学效果的目的。虚拟实验室彻底打破空间、时间的限制,为学生提供了生动、逼真的实验学习环境,学生能够成为虚拟环境的一名参与者,可以极大地调动学生的学习积极性,突破实验教学的重点、难点,在培养学生的实际操作技能方面起到积极作用[2]。
1 虚拟实验平台的构建目标
网络互动型机械工程虚拟实验教学平台构建的总体目标是建立一种新型网络互动型实验教学模式,指导教师能够通过网络对实验教学过程进行管理,对实验项目进行设置,通过网络论坛对学生进行辅导,对实验结果数据进行检查;学生能通过网络远程登录系统,能够学习相关的仿真软件,能够掌握实验仪器设备的功能及操作规程,能够自主地进行实验并通过网络平台上传实验报告[3]。
虚拟实验系统的设计原则,包括:
1)开放性 基于校园网,任何学生只要在接入校园网的任一终端上,便能使用虚拟实验系统,学生可方便地在网上进行任一专业、任一课程的实验学习并及时获取与实验教学及管理有关的各种信息。
2)交互性 学生可以通过做虚拟实验来提高实际操作能力,并且虚拟实验可以给出交互信息,对学生的操作实时作出反馈。
3)易于维护 虚拟实验教学系统为每个实验室提供了一个维护自己的实验内容、实验管理、发布信息的界面,图形、声音、动画等采用标准格式,网络应用程序采用跨平台的设计原则[4],因此才便于维护管理和普及应用。
4)安全性与可靠性 系统运行一定要安全可靠,要求全天候工作,学生在任何时候都可以登录校园网使用,网络管理员定期对网络进行维护,对主要数据进行备份。
2 虚拟实验室建设内容
根据《军队院校基础实验室建设标准》(试行)中要求:实验室应具备开展网络教学和虚拟实验的条件,应有配套虚拟实验软件和实验辅助教学软件以及支持实验室开放的管理系统。依据这一文件精神建设的《机械工程虚拟实验室》,以校园网为依托,具备实验学习、虚拟实验、实验报告和公告答疑等4种功能。根据军队院校的人才培养方案确定机械工程虚拟实验室由机械设计、机械制造和工程材料及技术测量3个实验室组成,界面如图1所示。
1)机械设计虚拟实验室 包含机构运动简图绘制实验、渐开线直齿圆柱齿轮范成实验和减速器拆装实验等3类实验项目。
2)机械制造虚拟实验室 包含冷加工方法认知、热加工方法认知、典型零件加工工艺编制以及数控加工编程等4类实验项目。
3)工程材料及技术测量虚拟实验室 包含金相试样制备、金相显微组织观察与分析、金属材料的硬度实验和冲击实验等4类实验项目。
图1 机械工程虚拟实验室界面Fig.1 Interface of the mechanical engineering virtual laboratory
3 虚拟平台具体设计
在虚拟实验平台构建中,采用三层B/S结构,前台用户显示层基于JSP和Servlet实现,系统的业务逻辑层基于JavaBean组件实现,后台数据库基于SQL Server实现。
基于B/S的三层体系结构,有如下优点:1)允许合理划分三层功能,使其在逻辑上保持相对独立,从而使整个系统的逻辑结构更为清晰,提高系统的可维护性和扩展性[4];2)三层结构中,各层可以并行开发,各层也可以选择各自最合适的开发语言,并且对于每一层处理逻辑的开发和维护也会更加容易;3)集中管理的优势。所有服务器程序都运行于服务器上,对系统升级更新、服务器的配置修改、系统的数据备份和恢复等功能都可以直接在服务器端完成,独立于客户端。
3.1 系统层次结构
系统的层次结构如图2所示。
图2 系统层次结构Fig.2 System level structure
系统表现层完成信息的展示、接收用户输入的数据或提交的实验报告等功能,主要用JSP实现,HTML用于表现页面布局,JavaScript用于交互时的数据检查、页面特效等需要在客户端完成的一些功能。
业务逻辑层采用Java编写的JavaBean组件来实现,用于封装对数据库的操作,并完成业务处理逻辑,这样在表现层只需要简单的调用就即可得到所需要的数据[5]。
数据逻辑层完成在SQL Server数据库中数据表的设计,以及数据的合理存储。
3.2 服务器设计方案
在整个互动型虚拟实验教学平台中,服务器是核心,因此在设计中需要综合考虑各方面因素,包括操作系统的兼容性、开发难易程度、软件的可扩展、重用性及平台的安全性等。
3.2.1 服务器的运行环境
环境配置所需软件:Microsoft Windows 2000 Server、JDK 1.4或以上版本、Tomcat5.0 或以上版本、Rational Rose、JSP(Java Server Page)编程语言。另外,网页制作软件Dreamweaver CS3用来实现系统各个界面的布局设计,3DMAX等用来实现实验过程的动态模拟演示,内嵌Realplay播放器用来实现操作过程和数据处理过程的演示,Microsoft SQL Server用来实现数据的管理。
3.2.2 服务器处理过程
Web服务器基于JSP容器来处理所有向JSP页面发出的请求。为了处理页面中的JSP元素,容器要把JSP页面转化成Servlet,所有的JSP元素都被转换成实现相应动态行为的Java代码,编译后成为扩展名.class的JSP页面实现类,再由Servlet引擎运行,最后将执行结果返回到Web服务器[6],Web服务器再将结果返回到客户端浏览器上。如果在上述过程中JSP引擎发现JSP文件已经运行并且产生了JSP页面实现类,则直接运行该JSP页面实现类。这就是载入一次可以重复执行的技术。采用JSP、JavaBean、SQL Server实现的系统中,数据库连接是最重要的部分。本文所研究的数据库连接基于 JDBC(Java DataBase Connectivity)。SQL Server数据库带有JDBC驱动程序,Java程序通过JDBC驱动程序与数据库相连。JSP只要将JDBC驱动程序类加载到应用程序的Java虚拟机中,就可以使用该驱动程序来建立连接。
3.2.3 三维仿真模型的建立
在虚拟实验平台中,实验过程的三维仿真演示非常重要,笔者基于 VRML(Virtual Reality Modeling Language, 虚拟现实建模语言)与3DMAX相结合的方式来搭建此模型。
VRML中提供了视点Viewpoint节点,这个节点允许为用户设置一个理想点的位置和方向[7],通过不断改变视点的位置和方向可以达到不断改变对象位置和方向相似的动画效果。用户可以从该点来观察场景,在第一个新的观察点,浏览器获得的图像就像是使用一部虚拟的取景器在屏幕上播放一样。替身在虚拟空间中的移动,就使得取景器不断地调整其位置和朝向。当Viewpoint节点是Transform节点的子节点时,视点的方位是在Transform节点的坐标系内,如果坐标移动,则视点也随着移动。当在虚拟平台中移动时,可以把时间传感器触发的fraction changed事件值传递到旋转节点和位置节点以产生新的视点和位置[7],然后把新产生的视点方向传递到视点(Viewpoint)节点中就会改变原先的值,从而产生三维立体动画效果,如图3所示。
图3 减速器拆装仿真效果Fig.3 Disassembly and assembly simulation effects of the reducer
4 实际教学意义
结合本院实验教学的实际,虚拟实验室的构建主要解决了传统机械工程实验教学体系中存在的以下不足:1)实验耗时长、花费大、学员实验时间很难安排;2)学员实验前缺乏对操作过程和结果的预见性;3)对具有危险性的实验操作缺乏心理准备,稍微不慎会造成设备损坏甚至人员受伤;4)实验流程多为教员先讲,学员再做,大部分学员只是进行观摩及实验数据的记录,动手能力得不到提高,教学效率低。
5 结束语
通过虚拟实验室可以使学员在实验前就能更好地了解实验的目的和原理,掌握实验方法和仪器的使用,提高学员的兴趣以及对专业知识的感性认识,并且在节约实验经费,提高人才培养质量等方面具有积极的作用。通过在实际教学中的应用表明,将网络、虚拟技术[8]融入到实验教学体系中,对于实验教学的改革具有重要的意义。
[1]宋向军.虚拟实验室在高校实验教学中的应用前景[J].实验技术与管理,2005,22(1):35-37.SONG Xiang-jun.The application prospect of virtual laboratory inuniversity’s experiment teaching[J].Experimental Technology and Management,2005,22(1):35-37.
[2]聂滨,曾照芳.基于虚拟现实技术的医学实验室的构建研究[J].西北医学教育,2006(1):11-13.NIE Bin,ZENG Zhao-fang.Construction of virtual medical laboratory based on virtual reality technology[J].Northwest Medical Education,2006(1):11-13.
[3]王新刚,陈霞,余洁.关于虚拟实践教学环境构建的探讨[J].教育与职业,2007(5):160-161.WANG Xin-gang, CHEN Xia, YU Jie.Study on environment construction of the virtual experiment teaching[J].Education and Vocation,2007(5):160-161.
[4]姜淑敏,杨洋,冯巍.机械基础网络交互式虚拟实验室的研究与实现[J].实验室研究与探索,2005(9):17-19.JIANG Shu-min, YANG Yang, FENG Wei.Study and realization on virtual laboratory of mechanical fundamentals based on local-internet[J].Research and Exploration in Laboratory, 2005(9):17-19.
[5]谌志群,曾文华,丁颖.基于Web的虚拟实验系统研究与实现[J].杭州电子工业学院学报,2002,22(6):53-56.CHEN Zhi-qun, ZENG Wen-hua, DING Ying.Research and realize on web based virtual experiment systems[J].Journal of Hangzhou Institute of Electronic Engneering,2002,22(6):53-56.
[6]郑耿忠.基于Web的电路协同虚拟实验室研究及实现[J].计算机工程与设计,2006(21):4111-41114.ZHENG Geng-zhong.Design and implementofcircuit cooperate virtual laboratory based on web [J].Computer Engineering and Design, 2006(21):4111-4114.
[7]刘怡,张洪定,崔欣.虚拟现实VRML程序设计[M].天津:南开大学出版社,2007:1-3.
[8]柳蛟.基于SOA的企业服务总线的研究与实现[J].陕西电力,2010,38(9):38-42.LIU Jiao.Research and implementation of SOA based enterprise service bus[J].Shaanxi Electric Power,2010,38(9):38-42.