新闻中心

EEPW首页>测试测量>设计应用> 在LABVIEW中实现网络通信的几种方法

在LABVIEW中实现网络通信的几种方法

作者: 时间:2017-01-06 来源:网络 收藏

  DataSocket API 包含有Open 、Read、Write和Close等函数,其中的Read和Write函数又分为单个或数组形式的字符串型、布尔型、数值型和波形等多种类型。DataSocket技术可在C语言、VB和LabVIEW等多种开发环境中应用,因此,这些函数有不同的形式,它们在C语言中是函数,在VB中是ActiveX控件,而在LabVIEW中则是功能模块,DataSocket的ActiveX控件还可以应用在VC、EXCEL、网页和其他支持ActiveX技术的环境中。

  3.2 利用DataSocket技术通信实例

  以下通过DataSocket C/S模式实现数据的远程传输。

  在服务器端对DataSocket Server Manager进行设置,也可采用默认值。然后运行应用程序DataSocket Server,打开DataSocket Server。和上例一样通过循环产生100个正弦信号数据,利用DataSocket Write节点将数据发送到dstp格式指定的连接中。程序框图如图5所示:

  图5 DataSocket服务器端程序框图

  在客户端,使用DataSocket Read节点将数据从指定的地址读取数据,并显示波形。程序框图如图6所示:

  图6 DataSocket客户端程序框图

  运行程序,结果和图3、4结果类似,波形相同,只是连接输入格式不一样。

  4 共享变量通信

  4.1 共享变量

  共享变量是继DataSocket技术之后LabView为简化网络编程迈出的又一大步。通过共享变量,用户无需编程就可以在不同计算机之间方便的实现数据的共享。用户无需了解任何的底层复杂的网络通信,就能轻松地实现数据交换。用户建立和使用共享变量就如同操作全局变量一样方便。

  4.2 利用共享变量通信实例

  以下通过C/S(客户端/服务器)通信模式实现数据的传输模式。

  由于共享变量只能存在于工程项目中,建立一个共享变量之前先得建立一个工程,然后在工程目录下选择New︱Variable选项,然后根据提示一步一步即可完成设置,但需要注意的是要实现网络通信变量类型必须选择为“Network-Published”。这里在服务器中创建一个名为Server_Variable的共享变量,同样在客户端建立一个名为Client_Variable的变量,两变量其数据和变量类型一致,都为一维数组双精度和网络发布类型。在客户端其程序框图如图7所示:

  图7 共享变量服务器端程序框图

  在客户端只需把共享变量Client_Variable的Bind to Source设置为服务器中的Server_Variable即可,将其拖入程序框图。建立的程序框图如图8所示:

  图8 共享变量客户端程序框图

  运行程序,结果如图3、4。

  5 远程访问

  5.1 远程访问技术

  在LabVIEW中,实现远程访问的方式有两种:远程面板控制和客户端浏览器访问,且在实施这两种访问之前都需要对服务器进行配置。

  配置服务器包括3部分:服务器目录与日志配置、客户端可见VI配置和客户端访问权限配置。在LabVIEW中选择 “工具→选项”即可打开参数配置框,左侧分别可见“Web服务器:配置”、“Web服务器:浏览器访问”。其中“Web服务器:配置”是用来配置服务器目录和日志属性、“Web服务器:可见VI”用来配置服务器根目录下可见的VI程序,也即对客户端可操作的VI程序。“Web服务器:浏览器访问”用来设置客户端的访问权限。完成服务器配置以后,即可以选择远程控制面板或浏览器方式访问服务器、对服务器进行交互远程操作等。

  5.2 利用浏览器访问通信实例

  通过客户端浏览器访问时,首先需要在服务器端发布网页,然后才能从客户端访问,以实现远程通信。

  在服务器端发布网页。在LabVIEW中选择“工具→Web发布工具...”打开“Web发布工具栏”,分别对其设置,最后确定即可,如图9所示:

  图9 Web发布工具

  在客户端通过网页浏览器访问服务器访问的页面。这样通过Web页面的发布就可实现网络的通信,且用户可与发布的前面板进行交互式操作,使用户可以通过Internet操作仪器设备。

  6 结论

  从图1~图9可以看出,利用以上四种通信方式都可以把服务器端产生的正弦信号数据,通过网络通信成功地送至客户机进行显示。如果要实现界面的互操作,需采用远程访问方式,但需要注意的是使用此种方式进行网络通信时,产生的结果数据是保存在服务器端而不是客户端,如果客户端需要得到数据,还需使用网络通信协议、DataSocket或共享变量传送数据。利用网络通信协议把数据从一个网络或Internet计算机传输到另外一台计算机或网络上是实现远程测控系统通信的最基本方式。但基于DataSocket技术的网络通信可以达到很高的数据传输效率,实时性能相当好,同时安全性能也可达到要求,这是网络协议通信所不具有的,但缺点是由于访问权限等的限制,客户端的控制功能太弱,需待改进。同时通过共享变量实现网络数据的传输也是一种值得提倡的方法,它传输速率高,低延迟还可以通过DataSocket函数读写共享变量,应用灵活。


上一页 1 2 下一页

评论


技术专区

关闭