1、引言
随着计算机技术、网络技术的高速发展,及其在电子测量技术与仪器上的应用,新的测试理论、新的测试方法不断出现。网络化测量技术与具备网络功能的新型仪器应运而生,网络技术与虚拟仪器技术的结合产生了网络化虚拟仪器。从而突破了传统虚拟仪器的三大功能模块(数据采集、数据分析处理、数据显示)都集中在单一计算机上的限制,而是将不同的功能模块分解到不
同的计算机上,利用网络将各个模块灵活的连接起来,使测量仪器、测量数据在网络内得以共享。
本文利用NI公司的虚拟仪器软件开发平台LabVIEW ,对组建远程测试系统的原理进行了论述。通过设计并实现远程测控系统,可以在分布很广的作业地域之间实现自动数据采集、传送、分析处理。从而提高工作的安全性和效率。
2、远程测控实现技术
2.1 基于C/S模式的DataSocket技术
DataSocket是NI公司基于TCP/IP协议的一种网络编程技术,它封装了TCP/IP的编程细节(如选择端口号、定义协议、创建连接、数据流处理、错误处理等等),是一种网络性能很强的虚拟仪器软件,是非常利于大量实时数据通讯的网络数据传输方法。利用DataSocket可以在不同的应用程序之间或数据源与数据宿之间通过网络进行读、写以及共享数据。
DataSocket可以访问本地文件以及HTTP和FTP服务器上的数据。对于一般的利用I/O函数、TCP/IP函数以及HTTP/FTP请求方式传输数据而言,对于不同的协议需要编写相应的代码,但利用DataSocket就可以连接到不同的数据源而不必根据不同的数据格式和通讯协议来编写各自的程序。这主要因为DataSocket控件具有根据具体的数据传输要求转换数据的功能,因此DataSocket在网络数据传输上有其独特的优势。DataSocket由下面四部分组成DataSocket Server、DataSocket Publisher、DataSocket Subscriber、Data Item。
DataSocket Publisher和DataSocket Subscriber是作为DataSocket Server的客户端通过DataSocket Server进行数据共享和交换,三者可以运行在同一台机器上或三台各自的机器上。
利用DataSocket技术实现网络化虚拟试验具有许多优越性。首先是安全性高。利用DataSocket Server Manager可以设定客户端连接数目、数据项数目,创建用户组和用户,设置用户读/写以及创建数据项的权限,未设定权限的用户对服务器不可访问。另外DataSocket传输数据的端口使用3015,此端口已经通过IANA (Internet地址分配机构)注册为DSTP协议专用端口, 因此可以在防火墙外部的计算机上运行DataSocket服务器,同时可保证在防火墙内部的计算机上安全的运行数据发布等应用程序。
为实现远程测控可以利用DataSocket技术采取如下解决方案:利用网络上的单独的一台计算机作为DataSocket Server,测控服务器完成数据采集和发布数据的功能,即测控服务器作为DataSocket Publisher,连接到网络上的客户计算机作为DataSocket Subscriber。由测控服务器采集数据,利用DataSocket Publisher把采集的数据发布到DataSocket Server中,客户端便可以利用DataSocket Subscriber从DataSocketServer中接收数据,这样可保证客户端原始实验数据的一致性。
2.2 基于B/S模式的远程面板技术
基于B/S网络模型的远程测控可以通过远程面板技术(Remote Panels)实现。测控服务器把虚拟仪器应用程序的前面板发布到Web页面上,客户端的用户便可以通过浏览器对服务器端的远程面板进行监控。远程面板的好处是容易配置,能够跨平台,无需ActiveX控件、Java Applet或者是CGI脚本,而且可以多同步连接监控,而且控制是动态的,客户端在浏览器中看到的监测画面同服务器端完全一致。另外的一个特点是完全服务器端管理。
Remote Panels的实现原理是借助于LabVIEw内置的WebServer技术来实现的。服务器端利用LabVIEW Web PublishingTool把虚拟仪器应用程序的前面板嵌入到Web页面中,并借助LabVIEW Web Server提供的虚拟仪器WebHE务,只要服务器端的应用程序载入内存,客户端便可以通过浏览器对远程的虚拟仪器应用程序进行监控。但在同一时刻,只有一个用户具有控制权限,其余用户只能对远程面板进行监测。客户端控制的权限可以通过远程面板的Request/Release Control VI获得或释放,服务器端拥有绝对的控制权限。
2.3 基于C/S和B/S开发模式的比较
无论是基于C/S还是B/S网络模型实现远程测控,其核心技术主要是DataSocket技术。它们各有其优缺点,详请参见表1所示:
表1 基于B/S和基于C/S的网络技术比较
3、结束语
虚拟仪器技术与网络技术的结合,及其在测控领域中的应用,是对传统测控方式的一场革命。应用LabVIEW作为虚拟仪器软件开发平台,为开发高性能的计算机测控系统提供了极大的便利。测控方式的网络化,是未来测控技术发展的必然趋势,通过建立分布式网络测控系统,能够充分利用现有资源和网络带来的种种好处,实现各种资源最有效合理的配置,并可以实现真正意义上的虚拟仪器,从而代替目前的传统仪器。应用分布网络测控,可以进行多点测量,多点分析处理。这样既可以充分发挥服务器控制测试仪器的接El能力,又能发挥客户机数据处理能力,而且便于系统的扩展。