您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 汽车理论 > 构建网络化虚拟仪器的关键技术
构建网络化虚拟仪器的关键技术研究摘要:介绍了网络化虚拟仪器技术和构建网络化虚拟仪器所采用结构模式,结构模式包含了B/S模式和C/S模式,并提出混合C/B/S模式。研究了在Labwindows/CVI环境下,基于TCP技术和DataSocket技术两种不同的方法实现远程测试。最后分析网络化虚拟仪器技术的优势,指出网络化虚拟仪器是测控领域发展的必然趋势。关键词:网络化虚拟仪器;结构模式;TCP技术;DataSocket技术Abstract:Thenetworkedvirtualinstrumenttechnologyandthestructuremodesofthenetworkedvirtualinstrumentareintroduced,thestructuremodesareincludingB/SmodeandC/Smode,andthemixedC/B/Smodeisproposed.InordertoachieveremotetestoftheTCPtechnologyandDataSockettechnology,twodifferentmethodsarestudiedundertheLabwindows/CVIenvironment.Finallytheadvantageofnetworkedvirtualinstrumenttechnologyisanalyzed,itpointesoutthatthenetworkedvirtualinstrumentistheinevitabletrendofthedevelopmentinthefieldofmeasurementandcontrol.Keywords:networkedvirtualinstrument;structuremode;TCPtechnology;DataSockettechnology0引言随着虚拟仪器技术的进一步发展,网络技术、总线技术和Web服务技术的逐步完善,使组建网络化虚拟仪器成为可能[1]。网络化虚拟仪器可实现远程调试、诊断及数据采集[10]。在远程端可以看到现场情况,并进行操作,突破时间和地域限制。在控制中心完成数据的采集和复杂工作的分析,将数据记录和存储到数据库,再通过Web网络浏览器提供信息,达到信息共享[2]。与网络技术的结合,使得虚拟仪器在更多的领域应用,譬如电子商务、网上教学、远程医疗、远程数据采集与控制、高档测量仪器设备资源的远程实时调用,远程设备故障诊断、远程专家系统等等[3]。1构建网络化虚拟器的结构模式构建网络化虚拟仪器的模式有3种:客户机/服务器(C/S)模式、浏览器/WEB服务器(B/S)模式、C/S与B/S混合模式。1.1C/S模式客户机/服务器(C/S)模式是远程测控系统较成熟的一种方案。在网络化虚拟仪器环境下,一台计算机既扮演Server的角色,又充当Client;多台计算机执行不同的功能,如采集数据、分析处理和保存等,实现了数据的远程测控和处理。图1是基于C/S模式的网络化虚拟仪器结构模型。其工作流程:1)服务器初始化,启动数据库和服务器应用程序;2)进入等待的循环,此时客户机就可以与服务器建立连接;3)连接建立以后,客户基于服务器就可以进行数据的交互和传送;4)直到客户机关闭连接,服务器才关闭与客户机间的连接。这种模式具有交互性强、安全性高、网络通信负荷小、速度快等优点,但在数据传输过程中必须安装客户端程序,通过客户端程序连接到服务器,这样对软硬件要求较高,则具有升级困难、维护复杂、资源消耗大和开放性差等缺点。1.2B/S模式浏览器/WEB服务器(B/S)模式是随着浏览器的流行由C/S模式发展而来。客户机无需安装复杂的客户端软件,只需要浏览器即可,主要的应用程序在服务器上。这种结构把虚拟仪器的前面板移植到Web页面上,通过Web服务器处理相关的操作要求,是一种以Web技术为基础的新型网络模式。图2是基于B/S模式的网络化虚拟仪器结构模型。图1基于C/S模式的网络化虚拟仪器结构模型其工作流程:1)服务器初始化,进入等待网络连接的循环;2)浏览器访问服务器,浏览器与服务器连接后,向服务器请求页面及虚拟仪器控件;3)服务器根据浏览器的请求向其传送相应的页面及控件,传送完毕后关闭连接;4)浏览器收到页面和控件后,浏览器解释并执行。如浏览器再续页面或控件,需要重新建立连接。B/S模式正是以其简便操作、易于维护、信息资源共享程度高、安全性好等优点代替了C/S模式;同时,所有的信息都由Web发布信息类型更加丰富,可以是文本、图片、声音、动画等多媒体。但是由于B/S模式处理的是超文本表示语言,无法与数据库直接交互,因此必须在它们之间采用一个接口,以保证其顺利交互。1.3C/S与B/S混合模式基于前两种模式的不足,产生了一种B/S与C/S混合模式的网络化虚拟仪器结构模型。图3是这种模式的网络化虚拟仪器结构模型。图2基于B/S模式的网络化虚拟仪器结构模型图3B/S与C/S混合模式的网络化虚拟仪器结构模型在这种模型中,服务器既是B/S模式下的服务器,又是C/S模式下的服务器,它同时监听浏览器与客户机的请求,区分判别他们的请求,在作出相应的处理,最终把结果发送到客户机或浏览器。在客户端下的具体应用程序应该有两种:一是C/S模式下的客户机程序,向服务器发送请求,接收数据并进行处理;一是B/S模式下的浏览器程序,向服务器发送请求页面和控件,并把测试结果显示出来。这种模式弥补了B/S模式和C/S模式的不足,既满足了复杂测试的实时要求,又满足了简单测试的灵活性和可扩展性要求[4]。2网络化虚拟仪器测试系统的实现网络化虚拟仪器测试系统实现的关键技术之一就是数据在网上的公布与共享。实现的方法主要有TCP技术、DataSocket、DDE、UDP等技术。主要介绍在Labwindows/CVI环境下,基于TCP技术的远程测控和基于DataSocket技术的远程测控。2.1基于TCP技术的远程测控TCP(传输控制协议)是一种面向连接的、可靠的、基于字节流的运输层通信协议[5]。TCP协议建立在IP协议之上。TCP协议在应用层提供了一种可靠的传输服务。这种服务具有全双工、可靠、流式无结构传输、具有流量控制和拥塞控制的特点。在保证可靠性上,TCP协议使用超时重传和稍待确认机制。在流量控制方面采用滑动窗口协议,协议规定,对于窗口内未经确认的分组需要重传。在拥塞控制方面采用广受好评的TCP拥塞控制算法(也称AMID算法)。在Labwindows/CVI中封装了TCP类库,它提供了与平台无关的、面向连接的、字节流网络通信协议编程接口。图4是基于TCP技术的远程测控结构图。图4基于TCP技术的远程测控结构图在此技术下进行网络通信时每个连接包括一个服务器和一个客户机。TCP服务器可以通过网络发送数据或接受数据,客户机的应用程序也可以向服务器应用程序发送数据或接收数据。它的一般通信方法如下所示[6]:1)在服务器端,利用TCPListen监听指定端口的TCP网络连接,连接建立后,利用TCPWrite/Read读/写数据,最后用TCPCloseConnection关闭连接。2)在客户端,利用TCPOpenConnection打开TCP网络连接,连接建立后,利用TCPWrite/Read读/写数据,最后用TCPCloseConnection关闭连接。2.2基于DataSocket技术的远程测控DataSocket是NI公司提供的专门用来传输和发布动态数0据的,是一种能够简化应用程序之间,以及计算机之间进行数据传输的新的网络编程技术[7]。DataSocket技术是LabWindows/CVI6.0中心增加的一个网络测控系统开发工具,由DataSocketAPI,DataSocketServerManager和DataSocketServer三部分组成[9]。此外,DataSocket通过使用统一资源定位符(URL)对数据的传输目的进行定位,读数据时为原地址,写数据时为目的地址。DataSocket支持多种数据传输协议,不同的URL前缀表示不同的传输协议或数据类型,主要包括:DSTP(DataSocketTransferProtocol),HTTP(HiperTextTransferProtocol),FTP(FileTransferProtocol),OPC(OLEforProcessProtocol)。DataSocket技术采用基于TCP/IP的DSTP协议传输数据,同时又为HTTP、FTP和文件I/O等通信协议提供统一的API。DSTP是DataSocket的专门通信协议,用于传输各种类型的数据,目前大多数测量网络使用该协议。图5是基于DataSocket技术的远程测控结构图。图5基于DataSocket技术的远程测控结构图基于DataSocket技术的远程测控中,DataSocket服务器完成底层的数据通信。在现场端,Write负责将测控数据发送给本地的服务器,Read通过网络从远程端的服务器读取控制信号;在远程端,Write负责将控制信号发送给本地服务器,Read通过网络从现场端的服务器读取测试数据。测试数据和控制信号都采用DataSocket技术中的DSTP协议传输,提高了数据传输的效率。DataSocket技术应经使用很长一段时间,是一种相当成熟的技术,其可靠性和性能稳定性经过实践的检验[3]。3结束语TCP/IP技术,DataSocket技术与虚拟仪器的发展与结合,使得构建网络化虚拟仪器成为可能。这样不仅继承了虚拟仪器的优点,而且充分利用了网络的强大优势,具有许多单机虚拟仪器不具有的优势,使得系统更加灵活、开放和高效,使得虚拟仪器在远程测试等方面应用更加广泛。网络化虚拟仪器测试也是测控领域发展的必然趋势。参考文献[1]钟洪钧.基于虚拟仪器的网络化测试系统的研究与应用[D].复旦大学.2006:3-5.[2]乐徳广,郭东辉,刘瑞堂等.虚拟仪器结构及其可视化编程的技术进展[J].计算机自动测量与控制.2001.9(1):1-3.[3]柏林,刘小峰.秦树人.网络化虚拟仪器的研究与开发[J].现代科学仪器,2007,3:5.[4]吴其俊,李将渊.网络化虚拟仪器系统的构建与应用[J].2007.24(7):981-984.[5]D.E.Comer.InternetworkingwithTCP/IP.Prentice-Hall,ThirdEdition,1995.[6]秦学华,刘亚斌.孙涣鹏等.基于LabVIEW的虚拟仪器网络化实现[J].测控技术,2004,23(2):72.[7]崔博丽.基于LabVIEW的网络化虚拟仪器技术的研究与应用[D].陕西科技大学,2011:21-23[8]车小飞.基于远程网络的虚拟仪器软件设计应用与研究[D].电子科技大学,2009:59-62.[9]朱望纯,张景宇,杨素荣.网络化分布式虚拟仪器测试研究[J].仪表技术与传感器,2012,5:33,7.[10]李盾.网络化虚拟仪器实验室监控平台系统的开发[J].信息技术,2012,18:31-32.
本文标题:构建网络化虚拟仪器的关键技术
链接地址:https://www.777doc.com/doc-2288786 .html