当前位置:文档之家› 基于LabVIEW的远程虚拟实验系统

基于LabVIEW的远程虚拟实验系统

文章编号:1006󰀁2475(2006)04󰀁0073󰀁02

收稿日期:2005󰀁06󰀁09作者简介:程俊静(1963󰀁),男,江苏东台人,盐城纺织职业技术学院电学教研室主任,讲师,研究方向:电气和计算机技术。基于LabVIEW的远程虚拟实验系统

程俊静(盐城纺织职业技术学院,江苏盐城󰀁224005)摘要:介绍了虚拟实验室的功能、远程虚拟实验系统的结构模型,并以直流电机调压调速为例,讲解了远程虚拟实验平台的构建。关键词:LabVIEW;虚拟实验室;BC󰀁S网络模型;远程控制中图分类号:TP393.01󰀁󰀁󰀁󰀁文献标识码:ALong󰀁distanceVirtualExperimentSystemBasedonLabVIEWCHENGJun󰀁jing(YanchengTextileVocationalTechnologyCollege,Yancheng󰀁224005,China)Abstract:ThispaperintroducesthefunctionsofLabVIEW,thelong󰀁distancevirtualexperimentsystemandBC/Snetworkmodel,pre󰀁sentstheuseofLabVIEWinalong󰀁distancevirtualexperimentplatformformultiuserwhereDCmotorcontrolsystemistheobjectofcon󰀁trol.Keywords:LabVIEW;virtuallab;BC/Snetworkmodel;remotecontrol

0󰀁引󰀁言虚拟实验是指用计算机虚拟实验环境,用软件模拟虚拟设备,学生可以像在现实实验环境中一样完成各种实验,实验效果基本等价于真实环境中所取得的效果。LabVIEW是美国NI公司开发的虚拟仪器软件,基于LabVIEW的远程虚拟实验系统,以计算机网络为核心,将虚拟仪器通过网络相连,用户可以远程操作,控制数据的采集、分析。该系统不仅为异地实验和学术交流提供了平台,也给传统的实验教学模式和学生的学习方式带来巨大的变化,大大提高实验效率,节省实验设备的投入资金,该系统还可延伸到工厂企业中进行设备的远程控制与检测。1󰀁虚拟仪器的开发环境󰀂󰀂󰀂LabVIEWLabVIEW(Laboratoryvirtualinstrumentengineeringworkbench)是由美国国家仪器公司(NI)在1986年推出的一种基于图形编程语言(G语言)的开发环境,它具有十分强大的功能,包括数据采集、信号处理、输入输出控制、信号生成与传输,图像的获取和处理等,还提供丰富的函数库和子程序,LabVIEW适用于Win󰀁dows、Macintosh、Unix等多种操作系统平台,还拥有第三方提供的实用软件,如ApplicationBuilder用于产生可执行文件,SQLToolkit用于将LabVIEW程序与本地或远程数据库相连。LabVIEW还具有很强的网络功能,用TCP/IP或UDP通信,建立WebServer和GWebServer,能方便地运行远程的不同平台的程序。LabVIEW程序称为 虚拟仪器程序!(简称VI),包括三个部分:前面板、框图程序、图标󰀁接线端口。LabVIEW使用按钮、开关、波形等人们熟悉的图形直接编程,界面直观形象,程序执行的顺序就是方块流程图,所以,LabVIEW得到迅速而又广泛的应用,我们用它来构架远程的虚拟实验室。2󰀁远程虚拟实验室的功能我们设计的远程虚拟实验室功能可分为三类。(1)B/S结构的模拟仿真。我们以LabVIEW内置的网页发布功能为基础,通过HTML设计网页,使用MicrosoftIIS发布,直接在服务器端生成嵌入实验平台的WWW网页,用户通过Inter󰀁netExplorer浏览器访问Web服务器,Web服务器接受请示后,计算机与现代化󰀁2006年第4期JISUANJI󰀁YU󰀁XIANDAIHUA总第128期LabVIEW内置的RemotePanelConnectionManager对用户的使用情况进行监控与调度,按照远端用户制定的实验数据分析、计算,最后将实验结果嵌入网页,在远程用户的桌面上实时显示实验数据和曲线,以及完成实验报告。整个系统不涉及具体的实验仪器硬件设备,只是利用软件模拟实验过程。(2)B/S结构的实时测量与远程控制。在模拟仿真的基础上,在GWebServer上连接相应的DAQ、SCXI硬件,再与实际的实验仪器连接,从而实现远程用户与实验仪器的数据通信,实现实验仪器的远程共享。这时的客户机仍无需计算和分析数据,只要安装Internet浏览器,接收服务器的数据就可以了,而服务器的运算能力、带宽及多线程状态下的稳定性等指标要求较高,并且,每一时刻只允许一位用户掌握控制权,多用户必须分时轮流使用。(3)C/S结构的实时测量与控制。该结构要求用户端将服务器板卡采集的数据下载到本地客户机终端,在本地机上分析、计算、显示及存储,服务器不再承担数据处理工作。我们以LabVIEW内置的TCP/IP模块为基础,构造应用服务器和一个API用户终端,TCP/IP模块完成网络互连、数据通信及容错处理,应用服务器用来采集本地实验仪器数据,传输数据,管理用户等。API用户终端则提供客户的GUI界面,实现数据获取、分析、运算以及显示、存储等。该功能对API用户终端计算机性能要求较高,能实现多用户广播式远程软件和仪器的共享。3󰀁系统的结构模型从系统功能上我们可以发现,这是一个C/S和B/S结合和扩展的BC/S模型。B/S结构最方便,是瘦客户体系,这种模型用户端只需要安装浏览器,就直接访问Web服务器,通过网页中的表单与服务器交互数据,控制远程虚拟仪器,完成实验,不必对客户端进行开发设计,简化了开发和设计难度,但服务器负担重,带宽以及网络稳定性要求高。而对于进行实时测量与控制,处理数据量大,希望实现多用户广播式共享的实验项目,可采用C/S模型,构架ApplicationServer应用服务器,连接虚拟仪器,并设计用户API终端。所以,根据不同实验的要求和特点,远程虚拟实验平台,组建成BC/S模型。如图1所示。

4󰀁远程虚拟实验实例我们架构以NI󰀁PXI构架为核心的硬件体系,以一台DellPowerEdge4600做Web服务器,该服务器配备了两个InterXeon2.8GHz处理器,2GBECCDDRRAM,3x36GBSCSIRAID冗余磁盘阵列,以及千兆的网卡;一台PXI󰀁1000B机箱,内嵌PXI8716控制器,PXI󰀁6070E,PXI󰀁6071E多功能数据采集卡为Appli󰀁cationServer应用服务器,充分满足多线程、大流量、高带宽的要求。远程用户电脑配置为P4、2.0GCPU、512MDDR。我们下面介绍 直流电动机的电压调速!的远程虚拟实验。学生首先在B/S结构的网络中,浏览网页,进入一个多媒体仿真界面,复习和检验已学习过的知识,熟悉仪器的操作。完成模拟仿真后,进入实时测控虚拟实验。电路如图2所示,这是一个转速电流双闭环调节系统,用Siemens6RA70直流驱动器给电机施加控制电压,并测试、转换电机转速和电流,Siemens6RA70与数据采集卡相连,如图3所示。

图2󰀁双闭环直流电动机调速系统

客户端API模块先向服务器端发送用户信息和实验请求,经服务器端验证通过,建立TCP连接,服务器进行仪器初始化,用户在终端面板中输入控制电压Uc。该电压信号通过Internet󰀁Intranet传送到服务器的接受控制命令模块,控制命令通过DAQ卡的模拟输出通道,传输到Siemens6RA70直流驱动器调控电动机的转速。随着Uc控制电压的改变,可控整流器触发脉冲移动相位,改变了整流输出电压,也就调节了电动机电枢电压,根据电动机的工作特性,运行速度在双闭环调节下发生改变,服务器采集到电流和速度数据,并通过TCP/IP协议发送数据包,客户接受实验数据,在面板中可以看到电机电枢电流和转速的变化曲线。服务器端采用LabVIEW编写的模块包括:实时采集子UI,创造多线程子UI,按受控(下转第78页)74计󰀁算󰀁机󰀁与󰀁现󰀁代󰀁化2006年第4期件。WebSphere使用Java2WSDL命令行工具来实现这个任务。4.4󰀁建立部署描述模板完成部署描述符WebSphere的Java2WSDL命令行工具可以从WS󰀁DL文档中为需要的部署描述符产生模板,这些模板自动从WSDL中使用部署描述符进行填充,只留下几个条目让开发者来提供。其部署描述符是一个web󰀁services.xml文件和一个映射文件,它记录了Java名称和XML名称之间的映射。填入service󰀁impl󰀁Bean元素的ejb󰀁link或servlet󰀁link值,将服务链接到服务的EJB或JavaBean。4.5󰀁组合模块装配EAR给应用程序的各模块添加下面文件,为Web服务启用它:(1)ServiceEndpointInterface(服务端点接口);(2)WSDL文件;(3)部署描述符、webservices.xml、JAX󰀁RPC映射描述符和可选的ibm󰀁webservices󰀁bnd.xml。4.6󰀁启动和部署应用程序如果应用程序包含EJB,WAS需要endptEnabler命令运行在应用程序上,来为服务添加HTTP端点。这是通过添加一个WAR模块来实现的,这个模块配置了Web服务路由器Servlet。这个Servlet接收、整理和分派Web请求。应用程序可以从管理控制台或使用wsadmin脚本接口来进行部署。在部署中,用户为所发布的服务的位置(URL)提供信息,并选择是否想让更新的WS󰀁DL文件被发布到文件系统。部署步骤将使用服务的真实位置填充WSDL文件中的服务位置元素。5󰀁结束语WebSphere平台将支持新的Web服务标准和技术,利用WebSphere平台我们可以设计实现面向服务的体系结构以建立强大的、跨平台的系统。Web󰀁SphereApplicationServer(WAS)的最新版本包括了大量的支持Web服务不同方面的组件。J2EE的Web服务只是这些组件中的一个方面,这是IBM在这方面的一些工作。目前,很多厂商都实现了各自的应用程序服务器平台对Web服务的支持,但关于如何实现应用程序服务器平台上的Web服务仍然没有一个统一、确定的标准,这些问题是将要解决的问题。

参考文献:[1]󰀁TimFrancis,EricHerness,RobHighJr.ProfessionalIBMWeb󰀁Sphere5.0ApplicationServer[M].北京:电子工业出版社,2003.[2]󰀁SunCo.WebServicesforJ2EE(JSR󰀁109)[DB󰀁OL].http:󰀁󰀁www.jcp.org󰀁en󰀁jsr󰀁detail?id=109,2002󰀁11󰀁15.[3]󰀁SunCo.JavaAPIforXML󰀁BasedRPC(JAX󰀁RPC)[DB󰀁OL].http:󰀁󰀁java.sun.com󰀁xml󰀁jaxrpc󰀁,2004󰀁06󰀁30.[4]󰀁IBMCo.IBMdeveloperWorks[Z].IBMCo.,2004特刊.

(上接第74页)制命令子UI,多用户发送数据子UI和服务器端主界面UI。客户端设计API终端,设计前面板方法如图4所示,包括控制单元、反馈单元、显示控制电压Uc,电机电压

图4󰀁设计远程客户面板Us,转速n和电流Is。用户发出的控制命令在服务器中自动排序,当一个用户停止控制后,第二个用户自动地进入控制阶段,依次控制电机的运行。客户端负责对数据的分析和处理,生成实验报告,最终完成实验。5󰀁效果与结论以NILabVIEW为基础的远程虚拟实验室,开发周期短,使用效率高,可扩展性强,成本低廉,充分发挥了计算机及宽带网的价值,本系统还可以进一步深化,应用到工业生产过程中虚拟仪器的远程测量与控制。

参考文献:[1]󰀁石博强,赵德永,李畅,雷振山.LabVIEW6.1编程技术实用教程[M].北京:中国铁道出版社,2002.[2]󰀁王永明,王兴亮,任啸天,王峥.一种基于LabVIEW的远程实验系统结构[J].自动化技术,2005(1).[3]󰀁李莉玲,方康玲,周波.LabVIEW在远程虚拟平台中的应用[J].武汉科技大学学报,2004(4).78计󰀁算󰀁机󰀁与󰀁现󰀁代󰀁化2006年第4期

相关主题