李 兵
(湖南第一师范学院,湖南长沙410205)
随着计算机技术和网络技术的发展,虚拟现实技术已经越来越普遍应用于军事、教育、电子商务等各个方面。其中,将虚拟现实技术运用于创建交互性虚拟实验室是教育领域应用最新信息技术的典型。通过网络虚拟实验,可以更加合理地配置教学资源,实验过程没有仪器设备的损耗,提高教学效益,节约教学成本;打破实验教学的时空限制,实验环境“真实”,激发学生的学习兴趣,提高了教学效果;实验过程可以反复探索,允许失败,允许仪器设备“损坏”,通过正反两方面的实验经验提高了学生的动手能力和创新能力。基于此,本文拟构建基于X3D的数字电路虚拟实验并探讨网络虚拟实验的教学模式。
本系统的目标是利用计算机技术、X3D虚拟现实技术和网络通信技术,以数字电路实验为模拟仿真对象,开发出计算机专业本科生数字电路虚拟实验系统。该系统不但要具备虚拟现实的沉浸性、交互性和多感知性的特征,而且要能实现数字电路实验的功能效果和特点。另外,作为网络虚拟实验系统,为了用户与系统之间有及时的交互响应,应严格控制系统数据流大小,无较大延迟。
图1 基于X3D数字电路虚拟实验过程模型
基于X3D的数字电路虚拟实验过程模型如图1所示。实验者通过浏览器的虚拟实验场景进行虚拟实验交互性操作,在虚拟实验环境中,实验内容和过程由程序按照数字电路的原理,以符合客观规律的形式进行模拟仿真,其输出结果则通过浏览器中虚拟仪表和设备显示给实验者。实验者对数字电路虚拟实验系统的交互操作过程主要通过鼠标完成,其交互方式、过程以及结果也应与真实实验为依据。最后实验报告可上传至服务器供教师评阅[1]。
基于X3D的数字电路虚拟实验系统的构建主要包括实验场景、动态模型、实验仿真单元和用户交互单元等方面的构建。
逼真自然的虚拟实验环境能提供给实验者与真实实验环境相似的刺激,使实验者能产生真正沉浸感。因此,虚拟实验的场景效果是影响虚拟实验的重要因素。场景中对象模型的合理组织是虚拟实验系统良好运行的关键。我们可以采用如图2所示的树形结构将其划分为双亲、孩子和兄弟节点,其结构不但简洁明了,而且易于修改和维护。
图2场景模型结构图
图2 中如门、墙等规则的几何模型可以直接通过X3D语句直接或间接复合生成模型节点,而一些不规则的三维模型可采用三维建模生成后导入或从商业数据库中购买的方法。完成各分模型节点后,可用Lab节点整合所有分节点生成虚拟实验的三维场景[1][2]。
数字集成芯片是数字电路实验中最主要的实验设备,并且在实验过程中都需要用到多块芯片级联。集成芯片动态模型构建方法是,首先通过X3D构建构建形体模型,其次将该模型实例化并按照对象的方式进行封装,然后在其父对象中将与该对象交互控制中所有相关行为模型构成树形层次结构。例如,芯片74LS00的封装结构如图3所示。其中Chip为芯片的形体模型,TS1为接触传感器原型以控制其交互功能,AM1为芯片的动画控制原型,当达到触发条件,可控制实体对象的动画执行[1][3]。
图374 LS00的封装结构
人机交互是进行虚拟实验,达到教学目的的唯一途径,因此交互性的好坏直接决定虚拟实验系统优劣,其交互控制方式主要有两种方式:
1.通过X3D建立节点的方式实现交互功能。所建立的节点都包含可接收事件的接收事件逻辑器和可发送事件的事件输出逻辑器,虚拟实验系统通过脚本节点,将实验者的鼠标或键盘的输入操作通过接收事件逻辑器输入到节点,通过该节点的程序运行,导致节点状态发生改变,然后通过事件输出逻辑器输出到其受控对象上,最后利用ROUTE语句根据输出状态进行逻辑判断,控制受控对象虚拟视角和外观。
2.通过建立接触传感器节点(TouchSensor)的方式实现交互功能。首先,我们建立定义公用的接触传感器(TouchSensor),然后针对不同的人机交互接口和事件,将公用的接触传感器(TouchSensor)原型分别重新定义为TouchSensorX(X的不同取值分别对应于不同的交互接口),虚拟实验系统根据实验者的输入而改变TouchSensorX的状态,系统则根据TouchSensorX的状态控制其虚拟实验过程,从而实现人机交互功能。
虚拟实验仿真单元其主要功能是根据实验内容模型的描述,模拟仿真实验的结果以及完成实验的过程,并通过与实验者的交互在屏幕中展现出来。由于数字芯片的逻辑功能大多可用逻辑函数表达式描述,其输出结果为逻辑0或逻辑1,因此可方便地用计算机表达式进行转换。例如芯片74LS00为2输入端四与非门,则令芯片1、2、3号引脚变量分别为A、B、F,则仿真代码为F=!(A&B),F的状态输出可控制LED灯的动画播放,实现仿真效果。其代码为:
If(!(A&B))//管脚1,2间的与非运算
{LED_Colour=Colour(1,0,0/*R,G,B*/)//通过Colour产生灯颜色赋给LED灯
Output_F3=true//将管脚3输出的逻辑运算值赋给Output_F3}
else
{LED_Colour=Colour(0,0,0/*R,G,B*/)
Output_F3=false}
研究表明,虚拟实验中的训练能较好地迁移到真实的情景中,形成有效的经验,能向实际操作产生有效迁移,有利于实验者在真实环境中能较好地完成实验,但是,虚拟仿真实验并不能完全替代真实实验。我们应该充分利用虚拟实验与传统实验各自的优点,采用虚实结合的实验教学模式,如图4所示[4]。
图4 虚实结合的实验教学模式
实验前的预习工作在很大程度上决定了实验能否达到预期的实验目的和效果。在进行数字电路实验前,教师要求学生登陆虚拟实验系统了解实验的实验目的、实验环境、实验原理、实验步骤、预计理论实验结果以及实验的注意事项等。有着充分的准备进入实验,可减少实验的盲目性和实验设备损坏的可能性。
通过充分的实验内容的预习后,学生进入虚拟实验系统的虚拟实验模块,按照实验内容和步骤进行预习性的虚拟实验,熟悉实验过程,观察虚拟实验结果,为真实实验做好准备。甚至可以故意违反一些实验注意事项,观察错误操作带来的后果,提醒自己在真实实验中要杜绝这些错误操作。
为了检验实验内容预习和虚拟实验预操作过程中的预习效果,教师可设置一些思考题,让学生进行仔细思考。如“与门、与非门、或门和或非门多余的引脚应该如何处理?”、“一块芯片74LS00可以最多级联几片芯片,为什么?”学生可通过虚拟实验探究答案并己的答案进行验证。
在一般情况下的真实实验中,学生基本上只能勉强仓促地完成规定的实验步骤,而对思考题根本无暇顾及,使得思考题都形同虚设。而通过虚拟实验平台,在虚拟实验预操作的基础上,学生对数字电路的实验环境、实验设备、实验过程等都比较熟悉了,在真实实验过程中,可以较为熟练地完成规定的实验步骤,并有充足的时间在真实的实验环境中对预习思考题进行探究验证。
在对真实实验环境和实验设备进行实际操作后,学生可再次进入虚拟实验系统进行虚拟实验,可进一步理解实验原理,加深印象,巩固知识。教师根据真实实验情况,针对不同的学生提出更进一步的思考练习,学生可再次通过虚拟实验进行探究验证。
在撰写实验报告过程中,要求学生分别对虚拟实验和真实实验步骤分别进行阐述和对比分析,阐述两种实验方式在整个实验过程中的作用和不同之处。实验报告通过系统提交到服务器中,教师可通过网络进行评阅并与学生进行互动交流。
通过虚实结合的实验教学模式,学生可以不受时空限制方便进行地进行实验,提高了学生的学习兴趣和真实实验教学中的教学效果,使得学生对知识点的掌握程度能螺旋式的上升,增强了学生的动手能力和创新能力。
[1]衣李娜.基于VRML的数字逻辑电路虚拟实验室的设计方法研究[D].天津:天津大学,2005.
[2]陈丹,李学锋.Web3D技术在网络教学中的应用研究[J].教育信息化,2006,(3):72-73.
[3]李妮,彭晓源,龚光红.基于X3D的仿真可视化支撑服务研究与实现[J].系统仿真学报,2009,(22):7195-7198.
[4]成军.基于WEB3D的虚拟实验及其教学应用研究[D].杭州:浙江师范大学,2007.
[5]肖杰,曾玢石,赵晋琴.电子设计竞赛促进电子信息类专业教学改革的研究———以湖南第一师范学院电子信息类专业为例[J].湖南第一师范学院学报,2011,(3):82-85.