远程虚拟仪器实验室系统的设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

远程虚拟仪器实验室系统的设计

岳艳侠1,马驰1,肖兴明1,孙小青2

1中国矿业大学机电学院,江苏徐州(221008)

2 东南大学成贤学院,江苏南京(210002)

摘要:本文介绍了基于B/S构架下的远程虚拟仪器实验室的设计思路,它使用内嵌在Web 页面中ActiveX控件完成用户与实验服务器之间的通信,即实验命令和实验数据的传输,其中系统的数据交互是利用NI公司开发的基于 Datasocket技术的CW Datasocket控件和Datasocket server完成的。

关键词:远程虚拟实验室,B/S架构,ActiveX,Datasocket

中图分类号:G434;TP391 文献标识码:A

1. 引言

在工程测试技术课程中,虚拟仪器是测控或相关专业本科生需要了解和掌握的新知识。但完成虚拟仪器实验所需的主要硬件设备如数据采集卡因其价格昂贵,做不到配置充足的数量,以至于在规定的实验学时内,做到使每个学生能独立进行实验操作较为困难。基于此我们构建了远程虚拟仪器实验室,使得学生不受时空限制,在相对机动的时间里使用实验仪器。

2. 系统的设计原则及结构

通常情况下,远程实验室可选用的网络服务模式有浏览器/服务器和客户机/服务器两种。现有的远程实验室大都采用的是C/S架构(如华中科技大学、浙江大学开发的远程实验室站点)。1在C/S构架下客户端需要安装特定的客户端程序后才能与服务器进行交互操作,其开放性较差,但服务器端软件开发较为简便。而B/S模式下,客户只需利用已有的浏览器就可以登陆远程站点,对仪器进行操作,但服务器端需另外开发应用程序之间的数据交换接口。考虑到远程实验室系统若采用C/S构架,客户端需安装或下载相应的虚拟仪器软件,操作较为繁琐不易于学生使用,故在此采用B/S体系结构。

本系统由用户浏览器、Web服务器、数据库服务器、实验服务器与试验台五部分构成。系统总体结构图如下所示:

校园网

3. 系统的硬件组成

Web服务器选用机架式Dell 1850服务器,它配置了1个Intel Xeon 2.8GHz处理器、1GB ECC DDR RAM、146GB SCSIRAID(冗余磁盘阵列),集成了双英特尔千兆网卡,能充分满足多线程、大流量、高带宽的使用要求。

实验服务器提供转换、数模输入输出、数据采集及远程通信等功能;该服务器选用凌华RK-610-C1型工控机作为硬件平台,主要基于其稳定性好,抗震,耐冲击。内置NI PCI-6014 多功能数据采集卡完成对转子实验台的测控,使用其六路模拟输入通道量测转子两轴承的振动,两路数字输入输出通道完成对PWM步进电机的转速控制;内置凌华PCI-9820digtizer(数字化仪)完成高频电涡流传感器、超声波传感器探伤实验;内置凌华PCI-8570扩展卡完成工控机对外接PXI系统的控制,起透明的PCI-PXI桥寄存器组的作用;该外接PXI-2680机箱作为扩展平台,内置PXI-8570扩展卡用于PXI机箱的PXI扩展接口模块,内置PXI-5102高性能示波器卡完成信号的发生,提供稳定可靠的信号源,内置cPCI-9112多功能DAQ模块,便于机动搭建一些小型实验如悬臂梁受迫振动振幅测量等。

4. 系统的软件设计

Web服务器端操作系统选用.NET构架的Windows 2003 Server,并安装IIS6.0作为Web 服务器,数据库则采用SQLServer2000实现。实验服务器端操作系统选用Windows 2000

Professional,选用其的主要原因是该系统运行时占用系统资源较少,利于数据采集等操作。并安装LABVIEW7.0作为服务器程序的开发平台兼应用环境。用户通过ActiveX控件登陆实验服务器,与服务器端的应用程序(VI)进行交互,操纵数据采集卡采集数据或发出脉冲信号,波形发生器产生激励信号。软件系统结构图如下所示:

完成用户与实验服务器交互的ActiveX控件是用于桌面的、基于组件对象模型(com)的组件。它因可以在应用程序和网络中计算机上重复使用,现被广泛的应用于Web服务器以及客户端的各个方面。3ActiveX控件可以嵌入网页,也可以用在一般的Windows应用程序环境中。其工作原理是:远程客户访问Web服务器时,下载嵌入了监控显示控件(ActiveX控件)的HTML文件,浏览器负责解释该超文本文件,在解释过程中,发现页面中要求调用ActiveX控件的CLSID值,则用该控件在页面中注明的标示值先在本地的注册表中进行查询,若已存在,说明该控件已经在本地安装,然后就可以通过注册表中的信息直接使用该控件;否

则就要根据页面中所提示的信息到CODEBASE所指定的服务器目录中去下载并且自动完成在本地的安装注册,使该控件成为本地资源。

ActiveX控件利用脚本描述语言设置其属性(Property)、调用方法(Method)和激活事件(Event)来完成控件之间和客户与服务器之间的通讯。在本系统中我们采用Microsoft VisualBasic 6.0开发监控控件,在开发中使用NI ComponentWorks for VB 控件工具包中提供的DS ActiveX控件完成数据的传输功能,它是使用Datasocket(数据套)技术实现数据的远程交换。4选其的主要原因在于现在所使用的应用于Internet上的各种数据传输技术,象TCP/IP、动态数据交换(DDE),都不是专门面向多用户实时性数据传输的,如使用底层TCP 编程,需将数据转换为非结构的字节流,到达目的地后又需将它恢复为原始格式,编程较为复杂,效率不高;而Datasocket网络传输技术虽遵循TCP/IP协议,但是以其特有的编码格式传输各种类型数据,如字符串、数字、布尔量以及波形等,且对底层进行高度封装,所提供的参数简单友好,克服了上述其它传输模式传输速率较慢、性能不稳定的缺点。

下面以悬臂梁受迫振动振幅测量为例,简要介绍其ActiveX控件的开发方法。

由于安装了NI ComponentWorks for VB 控件工具包,5在VB的new project中会自动生成NI InstrumentationActiveX Control,可选此直接进入编程环境,在其Control菜单下选

相关文档
最新文档