期刊库

教育   经济   科技   财会   管理   
医学   法学   文史   工业   建筑   
农学   水利   计算机   更多>>
 首 页    论文大全   论文精品    学术答疑    论文检测    出书咨询    服务流程    诚信通道    关于我们 

基于VRML的计算机组成原理虚拟实验系统设计

人气指数: 发布时间:2014-04-21 21:26  来源:http://www.zgqkk.com  作者: 胡丽芳等
分享到:

 

  摘要:由于时间和空间的限制,传统实验往往不能满足全部学生的需求,为此,设计出了一套基于VRML技术的计算机组成原理虚拟实验系统,学生只要通过网络就可以随时随地做实验,有效弥补了传统实验的不足。

  关键词:VRML技术; 虚拟实验;计算机组成原理

  在高职院校中,实验教学占有非常重要的地位,是提高学生创新素质、动手能力的一个重要手段。目前,由于各种原因,许多学校的实验设备和手段还不能完全满足要求。与此同时,近年来计算机网络技术、多媒体技术及虚拟现实技术的迅速发展,为虚拟实验系统的构建提供了有效的支撑。

  《计算机组成原理》是计算机专业重要的基础课程之一,做实验又是该课程的一个重要部分,学生通过实验可以深入了解计算机是如何进行算术计算、怎样存储信息并且能更好的掌握计算机的硬件组成[1]。目前,国内部分院校已开发出了计算机组成原理课程的网络课程,但这些网络课程大多数为静态的网页展示或动画演示,并未开发出具有3D虚拟场景,交互性较好的计算机组成原理虚拟实验系统[2]。因此,具有三维交互性的计算机组成原理虚拟实验系统的设计就显得非常重要。

  1 虚拟实验系统的分析与设计

  VRML(Virtual Reality Modeling Language,虚拟现实建模语言)是一种三维场景描述性语言,利用它能在网页上创建具有导航及超链接功能的三维虚拟空间。VRML的工作原理可以简单描述成:文本描述、远程传输及本地计算生成。VRML并不是使用三维坐标点描述物体的,而是使用了一种类似于HTML的标记文本语言来描述三维场景,因此使用它编写的文件所占的空间非常小,对网络带宽的要求不高[3]。利用VRML技术构建虚拟实验系统,能为学生提供一个逼真的实验环境,具有超强的现实感,可充分激发学生的学习兴趣。

  该系统主要模拟仿真清华大学科教仪器厂生产的TEC—4计算机组成原理实验仪。使用VRML技术构建三维虚拟实验环境,并通过ASP技术及B/S(Browser/Server 浏览器/服务器)三层结构的设置,构建网页结构,发布到网络上供学生使用。系统体系结构如图1所示。

  图1 系统体系结构

  2 虚拟实验系统的实现

  2.1实验环境的构建

  实验环境的构建主要包括两个方面:

  1)静态环境:主要指实验室场景的构建。首先使用Vrmlpad建模工具对一些简单的形体(如实验台、地板、墙壁等)进行建模,再利用专业三维建模软件3DSMax对导线、芯片、面包板等一些结构复杂的实验器材进行建模。由于3DSMax对物体描述的精度比较高,因此使用它建造的一些形体转到Vrmlpad后生成的文件中会存在大量多余代码,所以必须进行优化处理[4]。建模过程如图2所示:

  图2 建模过程

  2)动态环境:主要是指器材的功能显示。即模仿真实实验的操作效果,例如用鼠标单击开关按钮后产生的按下和弹起的动态过程、点击导线之后出现的自动连线效果等。

  2.2 交互控制的设计

  该部分的设计是实现系统功能的关键。本虚拟实验系统不仅根据实验要求提供了面包板、连线等实验器材,并且还提供了一个操作标记,指导实验者完成操作。学生通过鼠标将指令直接传送给虚拟空间,空间接到用户请求,将消息传递给相应的脚本程序,脚本程序经过一系列的计算,然后以相应的虚拟现实效果反馈给学生。

  该部分功能的实现主要依靠各种接触传感器节点(TouchSensor)、VRMLScript编写的脚本程序以及ROUTE语句[3]。首先在系统中定义一系列的TouchSensor分布在每个需要进行交互操作的虚拟物体上,当实验进行到一定步骤时,将下步的传感器激活,同时把其他步骤上需要的传感器全置为无效,这样即可实现让实验者根据实验内容的要求按步进行操作。在这个过程中,使用设置好的Script(脚本)节点来控制这些触发事件的实现,这些脚本可以将用户的操作进行转化,控制相应的对象,进而实现虚拟交互功能。交互式虚拟实验事件驱动体系的流程图如图3所示[5]

  图3 事件交互体系流程

  下面以实现连线为例:

  实验者按照实验要求,点击相应的面包板上的插座,这时系统将会出现自动连线。为了模拟这个过程,建模时事先使用Extrusion节点在相应位置建成实验所需的全部连线,但是开始时用Switch节点将它们隐藏起来。随着实验过程的进展,当学生用鼠标单击指定位置时,在脚本程序的控制下,相应位置就会显示连线。图4为连线完成后的效果:

  图4 连线完成效果图

  以下是实现该功能的部分程序代码:

  1)初始建模时隐藏导线的设置(以第一根导线为例)

  DEF line_M2_VCC1_switch Switch {

  #定义了插座M2和VCC1之间的连线

  whichChoice -1 #表示初始时处于隐藏状态

  choice [

  DEF line_M2_VCC1 Transform {

  children[

  Transform {

  …… #省略了导线线身和插头的定义


期刊库(http://www.zgqkk.com),是一个专门从事期刊推广、投稿辅导的网站。
  本站提供如何投稿辅导,寻求投稿辅导合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级投稿辅导/国家级投稿辅导/核心期刊投稿辅导//职称投稿辅导。


  【免责声明】本文仅代表作者本人观点,与投稿辅导_期刊发表_中国期刊库专业期刊网站无关。投稿辅导_期刊发表_中国期刊库专业期刊网站站对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。

 
QQ在线咨询
投稿辅导热线:
180-1501-6272
微信号咨询:
fabiaoba-com
咨询电话:18015016272 投稿邮箱:zgqkk365#126.com(#换成@)
本站郑重声明:文章只代表作者观点, 并不意味着本站认同。所载文章、数据仅供参考,使用前请核实,风险自负。
部分作品系转载,版权归原作者或相应的机构   若某篇作品侵犯您的权利,请来信告知.版权:周口博闻教育咨询有限公司 
Copyright © 2005-2023 . 期刊库 版权所有