摘要:在传统的实验教学中,实验教师要求学生在每次实验前对将要做的实验进行预习,并完成实验预习报告。但在实际教学中教师发现,有很多同学虽然预习报告写得很好,但对实验的基本原理和内容并不了解。所以笔者提出一种基于Web的三维虚拟实验室系统构想,学生可以通过浏览器验证登录到网上进入三维虚拟实验室中,使用鼠标、键盘等廉价输入设备实现虚拟实验交互。用户与实验项目之间的交互是通过用户界面来进行的,用户进入直观的图形化用户界面,调用不同的实验项目,对虚拟实验仪器进行模拟操作和交互观察,完成网上模拟实验,达到学习目的。
关键词:虚拟实验室;三维;Web;Java 3D
1引言
近年来,伴随着教育教学改革的不断深化及国家对教育投入的持续增长,国内实验教学软硬件建设和装备条件都有了很大程度的改善,这些变化都为高校带来了难得的发展机遇。但由于高校扩招学生数量剧增,师资与教学条件严重不足;新的理论、技术、内容不断进入教学实际,更新速度越来越快,使传统实验教学在发展的同时也面临着严峻的挑战。
结合我校(曲靖师范学院)的实际教学情况,笔者提出了一种基于Web的三维虚拟实验室构想,并利用学校的现有硬件条件,开发出一个物理力学方面的虚拟实验系统。学生可以通过IE浏览器验证登录到网上进入三维虚拟实验室系统中,完成网上模拟实验。如实现物理实验中声速的测量,这时我们可以利用虚拟的实验器材模拟改变接受器与发射源之间的距离l,随即测出接受信号极大的位置为l1、l2、l3、l4…,结合公式|l2-l1|=λ/2,v=νλ(ν为声波频率、λ为波长)计算声速v,从而达到声速测量的学习目的,使学生在模拟操作的过程中有一种真实的体验。
2系统的页面布局与结构
根据使用需要,系统的页面结构主要分为六个部分(见图1),第一页为主页,通过该处用户就可直接访问想去的页面,下面介绍各个部分。
图1系统的页面结构图
(1)虚拟实验室介绍
这一部分主要介绍了基于Web技术的虚拟现实实验环境的意义,对教育的影响,虚拟实验室的基本功能,以及虚拟现实技术在虚拟实验中的作用。通过这个部分的内容使用户对虚拟现实实验室有一个感性的认识。
(2)实验流程及注意事项
这一部分分为两个内容。第一个内容主要介绍现实环境中的真实实验的操作步骤、所需要的仪器设备以及操作中可能出现的问题和相关的注意事项,主要以文字、图片或视频的形式进行展示;第二个内容针对不熟悉虚拟环境的用户详细介绍虚拟环境下虚拟实验的工作原理、交互方式和操作方法。
(3)进行实验
这个部分是该系统的核心内容,依照现实实验的流程进一步划分为实验原理、实验仪器选择、开始实验、数据处理和实验报告提交五个部分:
1实验原理或方案
这个部分根据实验者的需求,有两种模式,一种是验证性实验模式,主要以模仿真实实验为基础,这时实验原理是一个重要的内容,是进行实验的主要依据;另一种是综合性或设计性实验模式,在这种模式下,实验者可以自由进行实验,但是必须先提交一份实验方案以备审查和备用,因为其有一定的局限性,虚拟技术不可能表现出所有现实中的情况,这份方案有助于系统功能的完善和扩展。
2虚拟仪器选择
这个部分对应1中两种模式分为两种情况,一种是针对验证性实验,这时主要就是展示所需的仪器,使用户对这些仪器进行了解;另一种是针对综合性实验或设计性实验,主要是根据方案来选择所需的仪器。
3开始实验
这里是进行虚拟实验室做实验的入口。点击以后就出现虚拟实验室的场景,实验者在其中可以交互地做实验了。
4实验数据处理
实验中必然获得一些数据,这里是对这些获得的数据进行处理的地方,实验者可以根据处理的结果了解自己实验的情况。
5实验报告提交
最后完成实验和数据处理以后,需要填写并提交一份实验报告,以备教师检查和教学管理的需要。
(4)用户管理
这一部分是用于用户管理。用户必须在这里先进行注册,成为合法用户。只有合法用户访问主页提交相应信息后,才能登录进入虚拟实验室做实验。
(5)讨论交流
在这里学生和老师可以自由地讨论问题。学生可以相互发布帖子提问或解答,老师也可以发帖回答,也可以发布些关于实验的通知等事宜。
(6)其他接口
考虑到现实实验室的管理和运行,这里提供一些接口,可以方便地链接到其他系统上,如实验预习系统、实验预约系统、实验室管理系统等,使这些系统组合到一起,实现更为完善、科学和适用的系统。
3虚拟实验室系统的设计与实现
虚拟实验室系统的工作量非常大,特别是建模方面,将是一个长期的过程,因为不可能把所有实验或者实验的所有情况都考虑到,在此以普通物理实验力学部分中的声速测量实验为例进行展示。
3.1三维建模
在Java3D中,直接建模是比较困难的,尤其是复杂的形体,没有详细的数学模型是无法实现的,另外,Java3D中的动画是一个实时交互的过程,不同于许多游戏中是预设好的,而且灯光和环境也必须需要进行设置,最后的渲染也是由Java3D来完成的。签于此,三维建模软件在建模方面具有不可替代的作用,本系统中的模型就是用3DMAX来进行建模的。
3DMAX建模所使用的方法主要是多边形建模,也就是使用基本形体(如长方体、球体等)进行变形,声速测试槽示例如图2:
图2 3DMAX建模图
3.2界面制作
(1)整体布局
虚拟实验室系统和大多可视化程序一样,视窗化的程序都包含有一个框架,在这个框架中,采用左右结构来实现,左边是三维虚拟仪器显示区,右边是操作控制界面。
(2)三维虚拟显示
把三维建模软件制作的模型导入,并通过Java3D设置好灯光和环境以后进行渲染并显示,如果出现了变动,Java3D又即时进行渲染后显示。
(3)操作控制界面
由于输入设备(绝大多数用户使用的是键盘和鼠标)的限制,使得全三维的虚拟操作难以实现,因此,在设计时还是加入了控制面板(包含操作面板、仪器显示面板),以实现困难的虚拟操作。
1操作面板
和现实操作一样,虚拟世界中的操作主要分为平移和旋转,另外,由于观察点远近的不同,虚拟操作还有缩放。操作面板就是根据具体操作安排的一些交互控件,方便用户进行操作。