APP下载

物理虚拟仿真实验室的设计与开发

2009-09-28

中国教育信息化·高教职教 2009年7期
关键词:实验教学

张 建

摘 要:为了解决物理实验教学中存在的种种弊端,我校构建了物理虚拟仿真实验室。文章论述了物理虚拟仿真实验室的功能与设计思路,并对虚拟仿真实验室的系统结构、开发技术的选择和开发流程等做了详细说明,最后结合实例论述了物理虚拟仿真实验室的开发。

关键词:实验教学 虚拟仿真实验室 Cult3dFlash

中图分类号:G434 文献标识码:B 文章编号:1673-8454(2009)13-0022-03

目前物理实验教学主要还是采用传统实验的教学模式。学习者按照教师的安排来完成实验,实验以小组的形式进行,一组内的学生数量往往比较多,在有限的一节课内不可能使每一位学习者都能从头到尾地完成实验;学生只有在规定时间范围内才允许到实验室实验,学习者对实验的预习和复习往往是通过阅读相关文字资料来完成。传统的物理实验教学面临着巨大的挑战,随着计算机技术、网络技术和虚拟现实技术的发展,虚拟实验室应运而生,它的出现主要是针对传统实验教学中存在的弊端而设计和开发的,目的在于尽可能地降低客观条件对学习者的限制,合理有效地解决传统实验教学中存在的问题,为进一步加强实验教学环节提供强有力的手段。

我们认为一个有效的物理虚拟仿真实验室的建立,必须集教学、操作演示、虚拟实验、练习测试等为一体。除了应具备网络特征的基本要求外,还应该达到以下几方面的要求:

(1)能够为学习者提供逼真的虚拟实验场景;

(2)能够让学习者任意操作虚拟实验场景中的仪器设备;

(3)能够对实验过程、实验现象进行实时模拟和再现;

(4)具有与实验教学要求相适应的辅助功能。如明确实验目的的功能、掌握实验原理的功能、实验指导和演示的功能、练习测试的功能以及填写实验报告的功能等。

一、物理虚拟仿真实验室的设计

1.虚拟仿真实验室的结构模型

该虚拟仿真实验室采用的是基于Web的B/S模式。在服务器端:Web Server是服务器端的基础模块,它能够接收客户端的请求并响应,返回虚拟的实验场景。虚拟实验是服务器端最主要的部分,包括虚拟实验仪器、实验步骤等单元模块;在浏览器端:浏览器是学习者进行虚拟实验的窗口,虚拟实验所有的操作都是在浏览器中进行的。学习者可以通过鼠标、键盘等输入输出设备在虚拟实验场景中漫游,任意操作虚拟的实验仪器,获得更加真实、直观的体验。同时,在浏览器端还需要一些插件,如Cult3d、Flash Player插件等等,它们是嵌入到浏览器中的插件,是完成虚拟实验的基础,所有的虚拟场景都通过插件进行解释并渲染在浏览器之中。

2.虚拟仿真实验室的内容结构

该虚拟仿真实验室覆盖了物理实验教学大纲所规定的所有内容,在内容设置上采用了教学大纲中的实验模式,即主要内容分为:实验目的、实验原理、实验步骤、数据处理、练习测试和实验报告等几个主要部分。在结构上将虚拟仿真实验室划分为基本模块和附加模块两部分以及它们的子单元模块,如图1所示。

(1)基本模块

在基本模块中,包含了以下几个子单元模块:实验目的、实验原理、实验仪器、实验步骤以及数据处理等。以“实验仪器”、“实验步骤”和“数据处理”子模块为例,说明各子单元模块的功能。

1)实验仪器模块:为了让学习者在做实验前掌握各种实验仪器的性能和使用方法,本模块给出了整个实验中用到的所有仪器设备,并且呈现的方式可以使学习者360度全方位的观察;为了方便学习者的学习,可以对三维立体的实验仪器进行任意的缩放、移动和旋转甚至是进入到实验仪器的内部。

2)实验步骤模块:由于实验步骤模块关系到学习者是否能将在虚拟实验室中获得的技能向真实的操作能力迁移,所以对实验步骤模块设计的要求是尽可能提供一个与真实实验相近的虚拟实验环境,学习者可以自由操作和调试实验仪器,同时系统根据学习者的操作情况给出丰富的视觉反馈信息。在虚拟实验室中,学习者可以反复进行实验。另外,学习者的学习不仅仅是在用眼睛观察,而是一个集仔细观察、自主操作和认真思考为一体的过程。

3)数据处理模块:实验数据是对实验定量分析的依据,是探索、验证物理规律的第一手资料。在系统误差一定的情况下,实验数据处理得恰当与否,会直接影响偶然误差的大小,所以对实验数据的处理是实验过程的重要内容之一。因此,在该虚拟实验室中,需要考虑设置数据处理模块。当学习者完成实验操作并记录下实验数据后,能通过该模块对实验数据进行处理和分析。由于学习者初始能力、接受能力以及各自特点不同,系统提供了两种呈现方式供学习者选择:一种方式是动画演示模式。在演示过程中,详细地向学习者展示对实验数据处理的来龙去脉;另一种方式是自主探索模式。学习者在使用过程中,可以自主输入参数,在系统辅助条件下,独立地推算出实验结果、总结出实验规律。

(2)附加模块

虚拟实验室中的一些附加模块,如课程简介单元模块可以向学习者提供诸如教学大纲、学习要点、教学实施方案等有关开展实验教学活动的基本信息;练习测试模块可以向学习者提供诊断性练习、测试评价等内容,通过练习和测试,让学习者及时强化所学的知识,并且增强学习者与虚拟实验室之间的交互,增强学习者的参与感;仿真实验室模块:可以向学习者提供一个虚拟实验环境,这样不仅保持了实验的完整性,而且注意了真实实验场景中的实验情况。在加入场景因素的基础上,保持了学习者自由度与高交互的特性,大大增强了学习者的沉浸感。该单元模块完全模拟了实验的操作、过程、现象,能够反映出实验的本质。

二、物理虚拟仿真实验室的开发

1.虚拟仿真实验室的技术选择

(1)各种开发技术的比较(如表1所示)

(2)选用Cult3d和Flash作为主要开发工具

本虚拟实验室选用的主要是Cult3d和Flash这两种开发工具,这是由它们各自的特点以及系统本身的要求所决定的。从目前网络条件来看,在二维表现层面系统选用Flash作为开发工具,在三维表现层面系统选用Cult3d作为开发工具。在有些地方为了更加方便学习者的使用,本实验室还通过JavaScript在Cult3d和Flash之间建立通信。

2.虚拟仿真实验室的开发流程

虚拟仿真实验室的整个开发流程可以分为以下三个过程:

(1)制作素材

素材的制作主要是针对实验仪器的建模,它是开发的基础。它可通过3DMAX工具来完成。由于制作出来的素材分别要导入Cult3d和Flash环境中,因此需要将其导出为两种格式:*.c3d和*.png。由于在其后的Flash添加交互过程中,想要改变实验仪器的视角很难,因此在导出*.png静止的图像时,需要注意在3DMAX中将实验中涉及的所有物件都最好放在同一个摄像机下,以保证其统一的视角。

(2)添加交互

交互的添加是开发过程中的重点和难点,根据实现效果的不同,可以将其分为两种方式:一种是添加三维交互,可通过Cult3d工具来实现;另一种是添加二维交互,可通过Flash工具来实现。

(3)集成发布

将Cult3d和Flash制作出的文件插入到网页中,可以通过Dreamweaver工具来完成,在其中还可以添加一些JavaScript特效。所有工作都完成后,最后发布试运行。

3.虚拟仿真实验室各单元模块的实现

选取“实验仪器”单元模块为例,描述其开发过程:

“实验仪器”单元模块重点在于实验仪器的三维演示,它采用Flash、Cult3d与JavaScript三种技术进行联合开发。为了让学习者更好地感受到虚拟实验界面的整体性,决定采用如图2所示的界面结构,即将整个界面分为两部分,左部分用Cult3d技术实现仪器模型的三维展示,右部分用Flash技术给出其二维文字介绍,并且可以通过JavaScript为中介对Cult3d中的模型进行相关操作,以方便学习者的观察和学习。Cult3d动画与Flash动画均采用相同的背景颜色,以保持界面风格的一致性。

下面以“滑线变阻器”为例介绍实验仪器模块的实现过程。界面如图2所示。

主要的制作过程如下:

(1)3Dmax建模

三维模型的制作十分重要,直接关系到虚拟实验室中三维模型的逼真程度和最后成品数据量的大小,所以在导出前,应该尽量对其进行优化处理。另外,制作3D模型的时候应该特别注意仪器哪些部件是可以运动的(如旋转、平移),哪些部件是固定的。如果可以运动,就需要将其单独做成一个零部件,这是为了以后可以为它单独设置运动动作。最好将具有相同运动规律(静止或者能够同时移动、旋转)的部件归为一组,这样便于管理,也可以相应降低在后续开发步骤中的工作量。

(2)导入Cult3d

将3Dmax文件导出为*.c3d格式,3Dmax默认并不能导出为*.c3d文件,因此需要安装Cult3d Exporter插件,安装此插件后可以把3D建模软件制作的模型导出为*.c3d格式。

(3)添加交互

在Cult3d中,Scene Graph窗口内可以看到该模型中的各个组成部分,在3Dmax里面有的节点都会出现,其下方是Action窗口,包含了Cult3d所有可以执行的动作,其中最常用的有移动、旋转、放大、缩小等。除此之外,还可以播放在建模软件中制作好的动画、添加声音、改变摄像机视角、设置鼠标形状、隐藏或显示某个组件、改变场景背景等。充分、合理地运用这些动作,可以设计出具有相当水准的三维交互动画。另外一个重要的窗口是Event Map,它提供了触发事件,以触发Action窗口中所列出的动作,例如可以单击一个物体以移动它。Cult3d提供的事件类型相当丰富,有左键单击、右键单击、中键单击、敲击键盘按键等。一个典型的交互动画的实验步骤为:事件→动作→三维模型的某个部件,也就是用事件去触发某些部件的某个动作。

三、物理虚拟仿真实验室的运行情况

选取“数据处理”和“虚拟实验室”单元模块为例,说明物理虚拟实验室的运行情况。

1.数据处理单元模块

在该模块中,可以允许学习者输入参数,自主决定坐标系的原点和单位距离;将在“实验步骤”过程中读取的数据输入到该模块中,将对应的记录点一个一个地依次标注在作图纸上,然后还可以根据标注的点,用鼠标做出一条直线;最后任意选取直线上距离较远的两点并读出其坐标值。

2.仿真实验室模块(如图3所示)

该模块是对真实实验环境的一个模拟。包括对周围环境的模拟:实验室门的打开、实验台橱门的打开、橱门玻璃的拖动、窗帘打开等效果;实验过程的模拟:仪器摆放、仪器电路连接、开关闭合、滑线变阻器滑片滑动、更换滤色镜等;实验现象的模拟:光线的传播、电子的逸出、电压表电流表指针的偏转等。

四、结论

本虚拟仿真实验室的构建,目的在于解决传统实验教学中存在的种种弊端。该系统的开发经历了需求分析、教学分析、结构分析、内容分析以及各模块的开发等过程。经过试运行,学习者普遍反映良好,认为该虚拟仿真实验室的界面友好,操作方便,极大地提高了他们实验兴趣。本虚拟实验室适合于对理工科教学中仪器操作类实验的模拟,是现阶段虚拟仿真实验技术中系统要求低、软硬件投入少、具有较好实验教学效果的一种解决方案。?筅

参考文献:

[1]蔡朝晖.Flash MX PROFESSIONAL 2004多媒体课件制作教程[M].北京:中国铁道出版社, 2005.

[2]苏威洲.实现网络三维互动——Cult3D应用指南[M].北京:清华大学出版社,2001.

猜你喜欢

实验教学
问题引导在初中化学实验教学中实践探索
关于基础教育阶段实验教学的几点看法
光反应与有机化学实验教学结合的研究
电容器的实验教学
几何体在高中数学实验教学中的应用
基于云计算的计算机实验教学探讨
高中自然地理课堂实验教学的探讨
微课在高职高专实验教学中的应用探索
综合实验教学在妇产科护理学实验教学中的应用