马梅娟,李 明
(潍坊学院,山东 潍坊 261061;东营市质量技术监督局,山东 东营 257000)
虚拟电子实验室的设计是在通用计算机平台上,运用虚拟仪器技术,设计出能够替代电子实验室中的多种传统仪器的虚拟电子实验室,此系统可集多种测试功能于一身。随着计算机的性价比和易用性的提高,使得虚拟实验室在教学、科普教育和技术研究领域应用成为可能。所谓虚拟实验室[1-3],是指由虚拟现实技术生成的一类适于进行虚拟实验的实验系统,包括相应实验室环境、有关的实验仪器设备、实验对象以及实验信息资源等。这种虚拟电子实验室具有灵活、成本低、高效率的特点,在高校的教学与科研中将会发挥极大的作用。
(1)成本低。虚拟实验室基于虚拟原型技术[4-5],即利用VR在可视化方面的强大优势以及可交互地探索虚拟物体的功能,对对象进行几何、功能、制造等方面交互的建模与分析。
(2)效率高。虚拟实验室省去了大量的基于物理原型实验的简单劳动,使用者集中精力研究实验对象本身的特性和规律,还可充分利用计算机优势,使虚拟实验室具有良好的在线帮助和学习功能,从而可帮助使用者迅速掌握实验研究本身和达到实验研究的具体目标和要求,大大提高了学习和研究效率。
(3)功能全。虚拟实验室的数据库可做到规格品种齐全,并易于升级换代和增加新品种,从根本上解决了因实验元器件和仪器仪表不全而影响实验的问题。
(4)协作性。在协同虚拟环境技术下,可实现合作实验、远程实验、协同研究等。
2.1 软件选择
网络虚拟实验实现技术的选择构建网络虚拟实验有多种方法[6-8],目前常用的实验构建技术有JAVA、ActiveX、VRML、Q TVR、Flash等,这几种技术各有特点(见表1),用这些技术构建虚拟实验的基本思想一致的,即用软件方法来模拟硬件设备的功能。它们具有下面的一些共同的特性:
(1)数据资源的共享。虚拟实验室涉及大量数据信息,为了能更好地管理数据,提高数据资源的共享能力。
(2)建立共享软件库。如虚拟测量仪器、数据处理等程序的远程共享、队列问题等。
(3)支持用户与教师间的交互。可通过W EB页面、BBS、个人目录等手段实现。
(4)可靠的安全机制。安全性是所有合作环境和共享资源建立的基础。主要技术有用户的鉴别注册和权限验证技术,邮件、个人数据的加密和数字签名技术等。
(5)协同虚拟环境实现技术。基于网络环境下的多个用户远程共同研讨同一个问题的实现技术。这是一个难点,必须解决一致性、协作性、扩展性、交互性、实时性等问题。
(6)面向对象编程方法的实现。
网络虚拟实验系统的建立可以充分利用校园网的资源,大力构建网络虚拟实验系统[9-10]是实验教学的必然趋势。针对已有的网络虚拟实验系统存在的不足,结合以上分析,网络虚拟实验系统实现技术的选择不应该追求技术的难度,而是根据具体实验课程的特点,选择合适的技术。一个优秀的网络虚拟实验系统不可能只通过单一的技术实现,因此,在网络虚拟实验系统实现技术上必将形成多种实现技术相结合的局面。将多个技术按照教育的要求相融合,取长补短,发挥各自的优势,是网络虚拟实验系统实现技术的主要趋势。
表1 常用的网络实验构建技术对比
2.2 硬件选择
不同的测试任务对测试系统有不同的要求,一种虚拟仪器测试系统不可能涵盖整个社会对测量的要求。对虚拟仪器测试系统的发展应该有一个客观的认识,基于PCI总线的虚拟仪器测试系统通常适用于低频低速的过程测控系统、教学实验和实验室常规测试。基于PXI总线的虚拟仪器测试系统由于电磁兼容性能及冷却性能的改善和模块式结构可用在一般要求的自动测试系统场合和系统总价格有所限制的自动测试系统。基于VXI虚拟仪器测试系统具有良好的性能,可用于自动措施系统特别是高速且大数据量自动测试系统,宽频带自动测试系统和军用自动化测量,代表着二十一世纪测试技术的发展方向。
PX I兼备了compactPCI标准的高性能和VX I仪器系统的高可靠性,同时,保持了比VXI更具吸引力的价格优势,是能满足高标准测试要求的最佳性价比选择。开放式PXI规范利用了多项现有工业标准技术,以提供最佳的测量和自动化平台。其中最主要的电气规范由非常成功的PCI总线扩展而来。面向仪器的电气扩展包括内置的触发和局部总线,而这些又是由高性能的VXI仪器结构扩展而来。鉴于系统的可靠性,可扩展性,适用性,PXI是目前构建电工电子类虚拟实验室硬件平台最佳选择。
2.3 网络技术B/S(Brow ser/Server)体系结构
随着计算机网络及其相关技术的不断发展与完善,Interent已成为一个大的分布式计算平台。其浏览器由于具有良好的跨平台和多媒体功能,越来越受到人们的青睐。浏览器/服务器(Brow ser/Server,简称B/S)[11]体系结构是一种基于Web的三层计算模型。它由浏览器、Web服务器和数据服务器组成。图1为典型的浏览器/服务器体系结构。
在B/S体系结构中,客户端通过浏览器发出访问服务器的服务请求,服务器进行相应的处理后将响应结果返回给客户端,与传统C/S结构相比,B/S结构具有以下优点:
(1)C/S结构必须根据客户端所使用的操作系统及后台应用的不同,安装不同的软件;B/S结构简化了客户端软件,只须安装Web浏览器作为客户端应用的运行平台,所有的开发、维护和升级工作集中在服务器端。
(2)C/S结构需混合多种传输协议;B/S结构中所有系统都使用TCP/IP协议进行通信。
(3)C/S结构需要不断使用新的软件版本,用以更新用户系统;B/S结构中,系统版本的升级及维护是在服务器端进行的,用户需要访问时才动态下载,这就保证了用户每次使用的都是最新版本。
通过以上对B/S和C/S模式的优缺点的比较以及开发的网络虚拟实验系统所要达到的目的,因此选择了B/S模式。
图1 典型的浏览器/服务器体系结构
整个网络虚拟实验室系统以电子线路、电工技能课中的实训内容为实验,学生首先通过实验管理系统进行预约模拟仿真实验,然后通过IP及MAC地址的联合认证,并在预习通过的基础上,在约定时间内完成实时操作实验,并提交Word实验报告,教师可进行评阅,给出实验成绩。本系统采用基于Web的三层结构技术实现,系统管理员只需要对应用服务器和Web服务器进行维护,而在客户端实现了零维护,提高了工作效率。虚拟实验室网络结构如图2所示。
图2 虚拟实验室网络结构
3.1 系统功能模块设计
虚拟网络实验系统分为实验平台和实验信息管理系统两部分进行开发,其系统结构设计如图3所示,下面结合设计对各模块进行说明。
图3 系统结构设计
3.1.1 RBAC访问控制
信息管理系统采用B/S结构,使用Jsp以及J2EE开发。按照实验教学的需要,将用户分三种角色:老师、学生和管理员,不同角色具有不同的权限。
在平台采用了基于角色的访问控制(RBAC),它的模型包括用户/组、角色、许可权限和会话四个组件。用户是计算机系统资源的交互者,组是满足一定特征的多个用户的集合。
角色是系统的一组特定的功能集,它描述了授予该角色的用户的职责和权限。许可权限是作用在一个或多个对象上的一组特定的操作。会话是一个角色实例根据许可权限对系统资源的一次操作。平台将能够从客户端登录的用户分成多个组,并根据其特性赋予不同的角色,同时为不同的角色赋予不同的操作权限及对象。客户端有学生、教师、系统管理员等不同角色,他们登录后根据RBAC机制获取不同的操作权限。
3.1.2 系统和实验管理
针对需求,系统将每门课的实验分割成几个实验流程,而每个实验相对于每个实验流程都配置不同的内容,这样使实验能够更灵活地管理和进行。实验主要分为三个子模块:实验内容预习、实验操作、实验报告,功能模块图如图4所示。
图4 网络虚拟实验系统功能模块图
实验内容预习从仪器介绍、实验原理和实验注意事项三方面呈现。仪器介绍部分主要是通过3DSM X制作三维仪器,通过文本介绍常用仪器的功能和使用方法。采用文本、图形、图像、动画、视频、音效等多媒体技术呈现实验原理、目的、内容以及实验场景、器材和实验注意事项,使软件界面清晰、美观。
实验操作子模块主要包括用户对实验初始状态的设定、实验过程的呈现和实验结果的呈现三部分。实验初始状态的设定主要是实验参数的设定,服务器端对实验参数进行处理,将实验运算数据返回至客户端来控制实验模型的变化,同时返回实验结果,如包括实验数据和结果图等。实验报告子模块是实验中的一项重要的工作。
实验报告是实验教学的一个重要环节,不同课程不同实验的实验报告格式也不同,平台首先要求实验管理教师对每个实验的实验流程进行配置,而后学生做实验的流程相应地按照这个流程来进行,撰写实验报告,不仅要简要说明实验内容、原理、使用元件、仪器,还要记录实验中测试的数据、观测的实验结果图形等信息,同时还要对实验结果进行相应的计算、判断和分析。实验完毕后平台可以按照实验流程自动生成实验报告供学生修改后上传至服务器,教师可以在本机或是通过网络调阅、批改学生的实验报告,甚至检查实验数据和结果图。
3.1.3 服务器需求响应
平台摆脱现有的Web服务器,重新针对需求设计对远程客户需求进行响应的服务器模块。这是整个平台的核心部分。根据客户的各种需求,服务器对数据库进行各种操作,或认证、或读取、或修改,然后再将操作结果通过网络传输部分传送到客户端,完成一次需求响应。
3.2 网络虚拟电子实验系统实验信息管理平台设计
根据对系统所需实现功能的分析和系统结构设计,现对系统的实验信息管理平台进行了设计。网络虚拟实验信息系统结构如图5所示。
图5 网络虚拟实验信息系统结构图
网络虚拟实验系统的操作界面如图6所示。界面左右有器材栏、属性栏,中间为实验区。下方有信息提示区,属性栏、器材栏为竖直窗体,位置可自由移动(单击边框,鼠标拖动)。
属性栏:提供用户在实验区中所选择的器材的属性和对复杂器材的操作,属性栏将随着器材栏的大小而改变大小。
器材栏:提供当前实验所要使用的器材,使用器材的图标和相应描述文字进行显示和说明。
实验区:在此区域中,搭建实验电路,进行实验操作、仪表读数等。提示信息出现在实验区的中部下方,提示信息有不同的种类,用户可以选择显示何种信息。
图6 虚拟实验系统的操作界面
4.1 登录界面设计
此界面的主要功能是对使用本系统的用户进行用户名、密码、用户身份的验证,只有合法的用户才能使用本系统。进行验证的表主要是教师信息表,在该表中主要包括教师的姓名即用户名和密码。当用户名和密码相符则成功登录教师管理子系统,如不符合则提示错误。教师登录模块由教师登录页面组成,它是实验管理系统教师的登陆页面。为完成此功能设计了Login类,此类中设置了LoginAction方法用于实现系统对用户提交数据的审核,以便用于成功登录。
4.2 教师管理子系统
成功登录教师管理子系统之后,教师拥有提交实验项目计划表、提交教师课程表、查询实验时间安排表、提交留言等功能。并且从页面的滚动新闻中还可以得知最新的消息,以便老师及时提交实验项目计划表和及时查询时间安排表。
提交的内容有教师所教的班级、教师姓名、教师所代的课程、该课程的日期、相应的周次、星期、节次和该实验所占用的实验室。为了降低系统的数据冗余,系统设置同一教师不可以提交相同的信息。当教师提交了相同的信息之后,系统给予提示:该数据已存在,不允许重复提交。
如果管理员公布了实验室时间,教师可以查询到最终的实验室时间安排表。如果管理员还没有公布实验室时间,教师查询到的只是教师提交的实验项目计划表。查询实验时间安排表,提供的查询方式有:按时间查询、按教师查询、按班级查询、按实验室查询。
学生模块,管理员模块这里不再赘述。
尽管虚拟实验室有很多优点,但在实验教学中本着提高学生的动手能力,培养学生的实践经验,还是不应该完全依赖网上的虚拟仪器。应该是实际的亲手操作和虚拟仪器结合使用。首先应该对实验室的仪器有很深的了解,能够熟练地使用和操作各种仪器,达到一定水平以后才能在网上进入虚拟实验室。
实践证明,基于网络的虚拟实验可以作为一种辅助的实验手段来弥补真实实验课程的不足,并且可以构建复杂的难以开展的真实实验,网络虚拟实验也为远程教育开设实验课程提供了可能性。文章中论述的技术手段是实现网络虚拟实验简单可行的途径,而且可跨平台操作,大大丰富了现代化教育的手段。
[1]吴文铁.基于Web的计算机网络课程虚拟实验室探索[J].福建电脑,2008,(4):138-139.
[2]姜淑敏,杨洋,冯巍.机械基础网络交互式虚拟实验室的研究与实现[J].实验室研究与探索,2005,24(9):17-19.
[3]张立学.基于LabV IEW的虚拟数字示波器设计[J].长沙大学学报,2008,(5):66-69.
[4]高洪波,王凤先.基于W EB的虚拟实验系统体系结构设计[J].河北省科学院报,2003,20(2):110-113.
[5]谌志群,曾文华,丁颖.基于Web的虚拟实验系统研究与实现[J].杭州电子工业学院学报,2005,22(6):53-56.
[6]张克非.虚拟微机接口实验室设计[J].计算机工程与设计,2005,26(1):22-23.
[7]刘志境,李凌霞.基于Java的网络虚拟电路实验室的研究[J].计算机应用,2003,23(8):103-105.
[8]彭珠.基于网络的数字电路虚拟实验软件设计与实现[J].微计算机应用,2006,27(1):42-45.
[9]乔健.网络教学中的计算机虚拟技术[J].实验技术与管理,2003,20(6):34-36.
[10]韦素媛.Web环境下的智能网络教学系统[J].计算机工程与应用,2003,39(35):155-157.
[11]李高升,周东明,何建国,等.LabV IEW中DLL文件的创建及其应用[J].现代电子技术,2005,(5):24-26.