《电子技术应用》
您所在的位置:首页 > 通信与网络 > 设计应用 > 基于Web的远程虚拟控制实验软件系统研究与实现
基于Web的远程虚拟控制实验软件系统研究与实现
2016年微型机与应用第15期
史瑞麟,韩芳,孔维健,王直杰
(东华大学 信息科学与技术学院,上海 201600)
摘要: 随着互联网技术的迅速发展,基于Web的虚拟控制实验系统是高校远程实验的重要组成部分。结合了一种虚拟控制实验系统的体系结构,依托unity3D、APS.NET以及组态软件等多种工具共同构建基于Web的虚拟控制实验系统。
Abstract:
Key words :

  史瑞麟,韩芳,孔维健,王直杰

  (东华大学 信息科学与技术学院,上海 201600)

  摘要:随着互联网技术的迅速发展,基于Web的虚拟控制实验系统是高校远程实验的重要组成部分。结合了一种虚拟控制实验系统的体系结构,依托unity3D、APS.NET以及组态软件等多种工具共同构建基于Web的虚拟控制实验系统。

  关键词:基于Web;ASP.NET;组态软件;虚拟控制实验软件系统

0引言

  现代的高校远程实验以信息网络技术为根本,具有资源共享,随时随地在有网络的地方即可操作等优点。近年来,随着高校远程实验的迅速发展,各大高校都开始进行远程虚拟实验室的建设,这对虚拟实验室和现代教育等的发展具有重大的意义[1] 。

  在高校教学实验中,由于现场的生产设备比较贵重,难以搬到实验室中来供学生实验,并且学生也不能进入工厂生产线进行实验[2]。虚拟实验室作为一种全新的解决方案,为高校教学实验提供了一个平台。虚拟实验室是一个对虚拟对象进行监控的平台,可以对任意工业现场进行建模, 然后组态监控系统,从而加深对工业生产线的了解。但是由于以往的虚拟对象只是一段“程序”或者一张平面图,学生可能对虚拟对象不能直观地了解。本文利用unity3D对虚拟对象进行模型建立, 这样就会对想要了解的生产线有了立体直观的印象,并且把3D虚拟模型与组态系统通过OPC通讯模块来实现连接,这样即可对3D虚拟对象进行监控。

1基于Web的远程虚拟实验软件系统的总体设计

  虚拟实验是指把传统实验中的一些硬件设施用计算机技术来代替的一种方式,实验者使用虚拟实验技术获取的实验效果可能略逊于真实实验场景下的结果,也可能更优,结果取决于具体的实验。本文中的“虚拟实验”是利用计算机技术,以Web为实现平台,把一系列软件和硬件有机地结合起来,从而实现对真实实验场景起到模拟的作用[35]。根据虚拟实验的定义,该远程虚拟实验软件系统分成两个组成部分:硬件和软件。虚拟实验软件系统总体设计如图1所示。

001.jpg

  1.1虚拟实验软件系统硬件结构

  虚拟实验软件系统的硬件是由一套DCS组件构成的,主要用来开发基于DCS系统的实验项目以及实验项目的Web发布方案。分布式控制系统(Distributed Control System,DCS)又称集散式分布系统,主要用于工控行业的生产线监控。DCS主要分为控制站、操作站和工程师站。其中控制站是下位机,主要用来采集数据和控制与下位机相连接的仪器;操作站是上位机,主要用来监视和控制整个生产线;工程师站则是用来配置整个监控系统,其中的配置工具是与DCS配套的组态软件。目前国外的组态软件有InTouch、IFix、Citech、WinCC以及ASPENtech等,国内的组态软件有世纪星、三维力控和组态王等。本文使用的组态软件是浙江中自的Chitic。

  组态软件有硬件配置、数据库组态、界面组态、算法组态等功能。数据库组态主要是采集工艺流程中某些比较重要的点的数据来达到对整个工艺流程的监视。另外还可以对数据设置报警,这样当数据的值越限时就会自动报警。界面组态可以用来组态工艺生产流程的人机界面。它将图形画面、报警、网络等工程元素集中管理,工程人员可以一目了然地查看工程人机界面部分的各个组成部分。算法组态在完成数据库组态后可以进行组态。Chitic软件图2虚拟实验软件系统

  硬件结构图中提供了符合国际标准的IEC611313标准的五种工具:FBD、LD、SFC、ST和IL语言。

  具体的硬件结构如图2所示。

002.jpg

  1.2虚拟实验软件系统中的软件结构

  虚拟实验软件系统中的软件是指开发的一套基于Web的实验管理系统。基于Web的实验管理系统主要采用B/S结构进行开发。B/S结构即Browser/Server,是一种新兴的网络结构模式,Web浏览器是主要的客户端软件,也就是说用户只需要安装一个浏览器(具体浏览器根据脚本语言的兼容性来决定,但是现在绝大多数浏览器都支持几乎所有脚本语言),就可以在线使用软件,因此B/S结构统一了客户端,将软件的核心放在服务器端,大大方便了软件的开发和维护[6]。

  B/S结构分为两部分,浏览器端和服务器端。用户主要在浏览器端操作,当客户端运行浏览器,并且提出申请时,浏览器以HTTP形式向Web服务器发出请求;Web服务器接收到浏览器的请求,开始解析HTTP,然后将解析的结果转化成SQL语言,提交给数据库服务器;数据库服务器接收到请求后,验证请求的合法性,当验证通过以后,按照请求进行数据处理,当处理完之后将结果返回到Web服务器端;Web服务器将返回的结果进行转码,并加入一些必要的信息、转变成HTML文档,返回到客户端浏览器,并以页面的形式显示出来。采用B/S结构主要有以下优点:

  (1)成本低。B/S结构软件的核心部分集中于服务器端,客户端则不需要开发者来开发和维护,并且一般大型公司的服务器系统都采用Linux系统,因为Linux系统稳定、开源并且免费,能够被公司二次开发。低成本也更符合虚拟实验软件系统的开发要求。

  (2)维护简单。B/S结构的客户端是浏览器,开发者并不需要专门开发浏览器来供用户使用,因为目前市场上的浏览器基本上被Firefox、chrome、IE和Opera等浏览器垄断,这样开发者仅仅需要考虑服务器端的维护,大大节约了开发者的精力。

  (3)硬件需求少。B/S结构是依托广域网的,不需要专门的硬件来构造系统环境,比C/S结构有更强的适应性。

  B/S结构的具体结构图如图3所示。

 

003.jpg

  系统B/S结构图1.3虚拟实验软件系统软硬件的交互

  虚拟实验软件系统最重要的一步就是硬件和软件的交互。本系统主要使用两种途径来实现软硬件的交互。

  (1)网页发布。硬件部分主要是使用组态软件来实现实验项目的建立和使用。其中组态软件有网页发布的功能,也就是说将组态软件由C/S结构转化成B/S结构,这样用户就可以通过浏览器进行访问或者使用。这种方式的优点是,用户可以通过组态软件网页版在线组态实验项目,自由度非常高。

  (2)远程访问。远程访问是现在大多数公司使用的技术。在服务器端设立多个虚拟机,在每个虚拟机内安装组态软件,并且与DCS相连接,这样每个用户可以通过浏览器向服务器申请独立的虚拟机,实现对实验项目和硬件的访问。这种方式的优点是使用方便,并且对开发者来说开发简单;同样缺点也是显而易见的,那就是对服务器要求比较高。

  两种方式各有优劣,采取何种方法以开发者的意见为主。

2虚拟实验软件系统的设计

  虚拟实验软件系统是基于B/S结构开发一个DCS实验管理软件,作为学生远程、并行、基于Web访问DCS实验的入口与管理平台。实验管理平台相当于一个虚拟实验室管理工具,它不仅提供了关于虚拟实验室的相关资料、课程实验的相关内容、课程相关新闻等文字类的资料,而且学生还可以通过管理平台提交实验报告,老师通过平台批改实验报告、发布实验时间等信息。这是实验平台的信息共享功能。实验管理平台最重要的功能就是能够为学生提供实验场景,这是虚拟实验室的精髓。通过虚拟仪器构建的实验项目可以发布成网站,学生可以通过虚拟实验室去操作实验,并获得实时数据等。本文采用现有系统的模块化设计思想来搭建系统架构。在设计系统架构时,要考虑到提高各模块的相对独立性,以便于移植和扩充,并且要保持模块的可理解和模块的规模便于维护。虚拟实验软件系统总体模块功能图如图4所示。

004.jpg

  详细的平台介绍如下:

  用户管理平台。该实验管理平台采用用户登录的模式,因为有时候需要实验报告上传或者留言板等功能,所以采用用户管理制度能更利于平台的管理,当然老师的用户权限要高于学生的权限。该模块主要是从数据库中读取数据,通过数据的某项数值来辨认是否为老师,是则开启某些老师特有的权限,否则取消这些权限。用户登录的持续时间则是由session值来设置,一般设置为2 h。用户登录2 h以后,则会自动退出登录,需要用户重新登录。具体的时长会根据具体需要再次确定。所有的用户数据只能由管理员从服务器端的数据库中读取,用户只能获取关于自己的信息,如果用户想获取这些信息,可以在管理平台中查询,然后由服务器响应请求将数据从服务器的数据库中传递到浏览器页面上。

  信息管理平台。登录后的首页内容,实时热点新闻、老师简介、课程简介以及留言板等其实属于信息管理平台的范畴。老师可以对新闻进行添加,对课程加以介绍以及对实验报告进行批改和对留言板进行监控等。学生只能进行访问和上传文档,不能对平台的具体内容进行修改。课程介绍、热点新闻、老师简介等数据是直接写在前端部分,这部分数据是直接显示在浏览器中的,用户并不需要提交请求便可获得。但是实验报告的批改和留言板等数据则是存储在数据库中的。这个数据库和用户数据库是关系型数据库,留言板与用户表中的用户ID或者学号(工号)绑定,与用户表不同的是,留言板的内容是用户可以全部看到的。

  理论学习平台。理论学习平台的实验内容、课程知识等都属于理论学习部分的内容,理论部分的在线教学是远程实验的基础,其作用甚至比虚拟实验更重要。因此在实验管理平台中,理论学习模块是必不可少的。只有当学生通过理论学习,而且必须通过理论测试才可以进行实验。这些数据与课程介绍等数据一样,都是直接写在前端。用户可以通过点击进入平台,然后进行测试,由于主观题开放性比较大,电脑较难对其进行评分,因此测试题目由选择和判断两种题型组成。用户的答案正确与否也是在前端页面直接进行判断,不需要后端参与。当检测用户合格后,会把用户数据表中的remark数据修改为true,远程实验模块能否进入主要依据用户数据表中的remark值,只有为true时才允许用户进入。

  虚拟实验平台。老师可以对实验项目进行增删改,而且可以通过时刻表来通知学生何时进行实验课程等。该平台的内容主要是由组态软件将实验项目组态完成后发布成网页,在该模块调用。该模块能否进入主要取决于该用户在用户数据表中的remark值是否为true。只有为true时才能进行实验;若为false,则平台会提示用户先在理论学习平台进行测试,通过后才能进行实验。

  整个虚拟实验软件系统需要各个模块的相互合作才能组成一个完整的实验管理平台,软件系统的设计主要用到了APS.NET、JavaScript、CSS以及HTML等网页编程语言。

3虚拟控制软件系统的实现

  虚拟实验软件系统的客户端是浏览器,因此前端的设计页面也是格外重要的,具体的效果图如图5所示。  

005.jpg

4结束语

  本文介绍了虚拟实验软件系统的原理和具体设计,硬件使用DCS以及配套的组态软件,软件系统的设计采用B/S结构,并且使用网页编程技术来制作。虚拟实验软件系统能够有效地帮助用户更好地进行远程实验,并且有利于学校的管理,是高校虚拟实验室的一种形式和延伸。

参考文献

  [1] 康荣学,贾海波,张优云. 基于Internet的远程实验研究[J].计算机工程与应用, 2002,38(16) :168170.

  [2] 白雁,张娟,潘瑾,等. 虚拟实验室在高校仪器分析教学中的应用[J].实验技术与管理, 2011,28(12): 169171,174.

  [3] 刘泽良. 发挥虚拟实验室建设对实验教学的促进作用[J].实验技术与管理,2011,28(7):193194,197.

  [4] 宋象军. 虚拟实验室在高校实验教学中的应用前景[J].实验技术与管理,2005,22(1):3537,47.

  [5] 黄慕雄. 高校教学型虚拟实验室建设的现状与建议[J].电化教育研究,2005(9):7780.

  [6] 曾志,尹建伟. 基于B/S架构Web远程控制的研究及实现[J].计算机应用与软件,2005,22(11):7074.


此内容为AET网站原创,未经授权禁止转载。