网络化虚拟仪器.ppt

上传人:牧羊曲112 文档编号:6194373 上传时间:2023-10-04 格式:PPT 页数:109 大小:6.03MB
返回 下载 相关 举报
网络化虚拟仪器.ppt_第1页
第1页 / 共109页
网络化虚拟仪器.ppt_第2页
第2页 / 共109页
网络化虚拟仪器.ppt_第3页
第3页 / 共109页
网络化虚拟仪器.ppt_第4页
第4页 / 共109页
网络化虚拟仪器.ppt_第5页
第5页 / 共109页
点击查看更多>>
资源描述

《网络化虚拟仪器.ppt》由会员分享,可在线阅读,更多相关《网络化虚拟仪器.ppt(109页珍藏版)》请在三一办公上搜索。

1、第4章 网络化虚拟仪器,4.1 网络化虚拟仪器基础4.2 网络化虚拟仪器的开发平台4.3 TCP和UDP通信4.4 DataSocket技术4.5 基于Web的远程发布4.6 远程仪器访问技术4.7 两种组建网络化虚拟仪器系统的模式和应用,4.1 网络化虚拟仪器基础4.1.1 网络化虚拟仪器的概念 网络化虚拟仪器是指将计算机、外围设备、被测试结点以及数据等软件资源纳入网络进行资源共享,共同完成测试任务,实现了对现场基于Internet的异地或远程测试、控制、数据获取、故障诊断和现场监视功能。网络化虚拟仪器把PC仪器系统的三大功能分别使用独立的基本硬件模块实现,并以网线相连接。通过这种有机的组合

2、,测控网络的功能远远大于系统中各单独个体的功能总和。,4.1.2 网络化虚拟仪器的硬件结构 利用传统的网络接口卡(Network Interface Card,NIC)是最简便的虚拟仪器网络化方法,通过指定IP地址和端口,任何一台带有NIC的计算机都能方便地与网络上的其他计算机进行信息交换。在测控领域,除了传统的NIC外,还有GPIB-NET、RS232-NET等转换卡,能将本身不具备联网能力的设备仪器连接到网络上,可以得到如图所示的网络化虚拟仪器结构。,4.1.3 网络化虚拟仪器的软件结构 图为网络化虚拟仪器的软件结构。主要由系统管理软件、应用程序、仪器驱动软件和接口软件等4部分组成。其重点

3、是网络连接部分,即实现“网络就是仪器”。,4.2 网络化虚拟仪器的开发平台4.2.1 软件开发技术概述 网络化虚拟仪器的开发可以采用多种软件技术,比如:网络仪器的开发软件可以采用通用的编程语言,也可以采用专门的虚拟仪器软件开发工具。这些开发软件按照编程方式可以分为两种:文本式编程语言如Visual C、Visual basic、LabWindows/CVI等;图形化编程语言如LabVIEW、HPVEE等。最流行的是LabVIEW和LabWindows/CVI,它们都是美国NI公司推出的专门面向计算机测控领域虚拟仪器的软件开发平台,而且都有强大的网络开发功能。,4.2.2 图形化编程语言LabV

4、IEW简介 LabVIEW(Laboratory Virtual instrument Engineering,实验室虚拟仪器工作平台)是美国NI(National Instrument)公司推出的一种基于G语言(Graphics Language,图形化编程语言)的虚拟仪器软件开发工具,是目前国际上应用最广泛的虚拟仪器开发环境之一,主要应用于仪器控制、数据采集、数据分析、数据显示等领域,并适用于Windows、Macintosh、UNIX等多种操作系统平台。LabVIEW广泛地被工业界、学术界和研究实验室所接受,它集成了符合GPIB、VXI、RS-232和RS-485协议的硬件和数据采集卡通

5、信的全部功能,内置了便于应用TCP/IP、ActiveX等软件标准的库函数,特别适用于虚拟仪器的设计和开发。另外,LabVIEW还提供了TCP、UDP通信技术、DataSocket技术、基于Web的远程发布、Remote Device Access等多种网络通信技术,这为基于LabVIEW的网络化虚拟仪器开发提供了十分便利的条件和基础。,1.LabVIEW启动 从开始菜单中运行“National Instrument LabVIEW 7.1”,在计算机屏幕上将出现如图所示的欢迎窗口。,单击Continue按钮之后进入如图所示的LabVIEW对话框,在这个对话框中可以直接访问某些LabVIEW资

6、源和工具,而不需要打开程序窗口。,在New对话框中单击New按钮,将弹出如图所示的New对话框。,单击图中LabVIEW对话框的Open按钮,将弹出标准的Windows打开文件对话框,在这里可以打开各种LabVIEW文件。,2.LabVIEW程序的基本构成与术语 采用LabVIEW编程的应用程序,通常被称为虚拟仪器程序(Virtual Instruments),简称虚拟仪器(VIs)。它主要由前面板(Front Panel)、框图程序(Block Diagram)以及图标和连结器窗格(Icon and Connector)三部分组成。其中前面板的外观及操作功能与真实的(传统的)仪器(如示波器、

7、万用表)的面板类似,而框图程序则是使用功能函数对通过用户界面输入的数据或其他源数据进行处理,并将信息在显示对象上显示或将信息保存到文件或其他计算机。,(1)前面板(Front Panel)前面板是图形用户界面,也就是VI的虚拟仪器面板。该界面上有交互式的输入和输出,显示两类对象,分别称为控制器(Control)和指示器(indicator)。Control包括开关、旋钮、按钮和其他输入设备;indicator包括图形(Graph和Chart)、LED和其他显示输出对象。图所示是一个随机信号发生和显示的简单VI的前面板,前面板由一个显示对象波形图和一个控制对象“停止”按钮组成。,(2)框图程序(

8、Block Diagram)框图程序提供VI的图形化源程序。在框图程序中对VI编程,以控制和操纵定义在前面板上的输入和输出功能。随机信号发生器的框图程序如图所示。,框图程序由节点和数据连线组成。节点是VI程序中类似于文本编程语言程序中的语句、函数或者子程序的基本组成元素。节点之间由数据连线按照一定的逻辑关系进行连接,以定义框图程序内的数据流程。,LabVIEW的节点类型分为4类,如表所示。,(3)图标和连结端口(Icon and Connector Pane)VI具有层次化和结构化的特征。用户可以把一个VI作为子程序,这里称为子VI(subVI),被其他VI调用。图标与连接端口是框图程序中VI

9、的识别符,当被其他VI调用时,图标代表子VI中的所有框图程序。而连接端口表示子VI与调用它的VI之间进行数据交换的输入输出关系口,相当于图形化的参数,通常连接端口是隐藏在图标中。在图标的右键弹出菜单中选择VisualItemTerminals,可以将图标切换到连接端口状态。,(4)专用术语 由于LabVIEW是一门面向测试测量领域的图形化语言,在LabVIEW中引入了大量的术语。一些常用术语如表所示。,3.LabVIEW的编程环境 LabVIEW是一个多功能的集成编程环境。它主要由前面板窗口和框图程序窗口组成。其中,前面板窗口用于编辑和显示前面板对象,如图所示。,框图程序窗口用于编辑和显示框图

10、程序(程序代码),如图所示。,(1)LabVIEW菜单 LabVIEW菜单包括文件(File)、编辑(Edit)、操作(Operation)、工具(Tools)、浏览(Browse)、窗口(Windows)、帮助(Help)等七大项。(2)LabVIEW工具栏 LabVIEW前面板窗口和框图程序窗口都有各自的工具栏,工具栏包括用来控制VI的命令按扭和状态批示器。图是前面板窗口的工具栏,图为框图程序窗口的工具栏,工具栏各图标及其功能表如表所示。,(3)LabVIEW工具模板 在LabVIEW的用户界面上提供了用于VI编程所需的功能强大,直观方便的操作模板,包括工具(Tools)模板、控件(Con

11、trols)模板和函数(Functions)模板。1)工具模板图 工具模板提供了各种用于创建、修改和调试VI程序的工具,如图所示。工具模板可以在Windows菜单下选择Show Tools Palette命令来以显示该模板。,工具模板中各图标的功能如表所示,2)控件模板(Control Palette)选择前面板窗口Windows菜单的下Show Controls Palette选项或在前面板窗口空白上单击鼠标右键,可以弹出控制模板(如图所示)。,在Controls中显示的是一些常用的子模板图标,单击右下角的All Controls即可弹出全部的控制子模板(如图)。,控制模板包括一些子模板。子

12、模板中包括的对象,其中各图标的功能如表所示。,3)功能模板(Function Palette)选择框图程序窗口的Windows菜单下的Show Functions Palette选项或在框图程序窗口的空白处点击鼠标右键,可显示出功能模板(如图所示)。,在Functions中显示的是一些常用的子模板图标,单击右下角的All Functions即可打开所有的功能子模板(如图)。,功能模板常用子模板功能如表所示,4.LabVIEW程序设计的一般过程 一个完整的VI程序由3部分组成:前面板、框图程序和图标/连接口,因此一个VI程序设计主要包括前面板的设计、框图程序的设计以及程序的调试。当前面板和框图程

13、序设计好以后,还需要对程序进行调试,以排除程序执行过程中可能遇到的错误。程序的调试方法主要有:1)找出语法错误 2)设置运行程序高亮 3)断点与单步运行 4)探针,(1)前面板的设计 绝大多数的控制器和指示器的配置是可以改变的,在控制器或指示器上单击右键,在弹出的快捷菜单中选择相应的选项来改变配置,如图所示。一个VI程序的前面板如图所示。,(2)框图程序组成 框图程序由节点、端口和连线组成,如图所示。,(3)从框图程序窗口创建前面板对象 用任意LabVIEW工具,用户都可以用鼠标右键单击任意的labVIEW功能函数或者子程序,然后可以弹出其快捷菜单,如图所示。,(4)数据流编程 程序的运行是“

14、数据流”驱动的。对一个节点而言,只有当它的输入端口上的数据都有效以后,它才能被执行。当节点程序运行完毕后,它把结果数据送给所有的输出端口。如图所示,下面简单介绍这个框图程序的创建过程:1)选择框图程序窗口。在功能模板中选择Numeric下的Multiply(乘法)函数,放入框图程序窗口。2)在此函数图标的左端输入端口上单击右键,从弹出的对话框中选择CreatControl,创建与它相连的一个控制器。3)重复上面的步骤,创建第二个控制器同乘法函数的连接。4)在功能模板中选择Numeric下的Subtract(减法)函数,放入框图程序窗口。5)在此函数左端相应输入端口上单击右键,从弹出的对话框中选

15、择CreatConstant,创建一个常数。6)在此减法(Subtract)函数右端输出端口上单击右键,从弹出的对话框中选择Creat Indicator,创建指示器。7)用连线工具连线。8)选择工具模板中的标签(Edit Text)工具修改标签并添入数字。9)创建图标。10)从File菜单中选择Save命令来保存。起名为“例4.1”。,创建图标创建方法 在前面板窗口或框图程序窗口的右上角的图标框中单击右键,从弹出的快捷菜单中Edit Icon(或双击此图标框),打开一个图标编辑器,如图所示。,双击选择工具,选中默认的图标,按Delete键,清除所选图标图案。用画图工具画出所需的图标。注意:在

16、用鼠标画线时按住Shift键,则可以画出水平或垂直方向的直线。用文本工具写文字,双击文本工具可改变字体及字号。当图标创建完成后,单击【OK】按钮以关闭图标编辑。生成的图标将显示在前面板窗口的右上角。,(5)创建子程序 在LabVIEW中,每个程序都可以将其创建成子程序,以便其他程序调用。创建过程如下(在这里将上面VI程序“例4.1”创建成子):1)打开程序“例4.1”。2)创建接线端口。接线端口是程序数据的输入/输出端口,创建过程如下:右键单击前面板中右上角的图标,从弹出的快捷菜单中选择Show Connector选项。此时,前面板窗口右上角的图标由接线端口取代,每个小矩形框代表一个连线的端口

17、,这些端口用来将数据输入到VI程序中或将程序的数据输出。LabVIEW将会根据控制器和指示器的数量选择一种接线端口模式。,把接线端口分配给相应的控制器和指示器。使用连线工具,在左边的接线端口框内单击鼠标,则端口将会变黑。再单击控制器,一个闪烁的虚线框将包围住该控制器。3)保存此程序,以后就可以对其调用。4)打开一个新的VI,在框图程序中选择FunctionsAll functionsSelect a VI再选择上面保存的VI程序“例4.1”。此时,此VI程序将以图标形式出现。用连线工具可以看到它的连线端口,这样可以创建相应的控制器和指示器,如图所示。,(6)VI的运行 LabVIEW提供了两种

18、VI的运行方式:单次运行方式和连续运行方式。1)单次运行VI 在前面板窗口或框图程序窗口的工具栏中选择运行(Run)按钮,可以单次运行VI。还可以使用操作菜单下的Run菜单项单次运行VI。2)连续运行VI 在工具栏中选择连续运行(Run Continuously)按钮,可以连续运行VI,即一次VI运行结束后,继续重新运行VI。3)停止运行VI 在工具栏中选择停止运行(Abort Execution)按钮,可以强行终止VI的运行。4)暂停运行VI 在工具栏中选择暂停运行(Pause)按钮,可以暂停VI的运行,再次单击该按钮可恢复VI的运行。,4.3 TCP和UDP通信 TCP节点与TCP通信技术

19、及应用 1TCP节点 在LabVIEW7.1中,可以采用TCP节点来实现基于TCP协议的LAN通信。节点位于Functions模板All FunctionsConmmunication子模板TCP子模板中,如图所示。,TCP子模板上有9个图标,这些图标可划分为三部分:Connection:用于建立客户机和服务器之间的通信连接;Transmission:用于在客户机和服务器之间传输数据;Conversion:用于计算机的IP地址和计算机名之间相互转换。TCP子模板中各图标(节点)的参数定义、用法及功能如表所示。,2.TCP通信应用 实例4.1:利用TCP协议发送和接收数据 本例包括TCP Wri

20、ter(发送).vi和TCP Reader(接收).vi 两个程序,以实现采用TCP协议完成数据的传输。服务器(发送端)的前面板及框图程序如图所示。在服务器的框图程序中,利用TCP Listener节点建立听者并指定网络端口(Port),用两个TCP Write节点来发送数据。两个For循环产生的数据之和一方面送Waveform Graph显示,另一方面通过TCP Write节点发送(数据的产生可由用户根据实际需要编写),第一个TCP Write节点发送数据长度,第二个TCP Write节点发送数据。While 循环用于数据的连续发送,TCP Close节点则关闭TCP连接。,客户端(接收端)

21、的前面板及框图程序如图所示。用Open节点按照连接的IP地址(Address)和端口号(Port)建立一个TCP连接。与服务器(发送端)框图程序相对应,客户端框图程序中也采用了两个TCP Read节点读出数据。第一个TCP Read节点读出数据长度,第二个ReadTCP节点读出数据并送Waveform Graph中显示出,以便观察接收的数据与发送数据是否一致。,UDP节点与UDP通信应用 1UDP简介 用户数据报协议(UDP-User Datagram Protocol)是 OSI 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。是一个简单的面向数据报的传输层协议,IE

22、TF RFC 768是UDP的正式规范。UDP 协议基本上是 IP 协议与上层协议的接口。UDP 协议适用端口分别运行在同一台设备上的多个应用程序。UDP 适用于不需要 TCP 可靠机制的情形。UDP 是传输层协议,服务于很多知名应用层协议,包括网络文件系统(NFS)、简单网络管理协议(SNMP)、域名系统(DNS)以及简单文件传输系统(TFTP)、动态主机配置协议(DHCP)、路由信息协议(RIP)和某些影音串流服务等等。,协议结构 Source Port 16位。源端口是可选字段。当使用时,它表示发送程序的端口,同时它还被认为是没有其它信息的情况下需要被寻址的答复端口。如果不使用,设置值为

23、0。Destination Port 16位。目标端口在特殊因特网目标地址的情况下具有意义。Length 16位。该用户数据报的八位长度,包括协议头和数据。长度最小值为8。Checksum 16位。IP 协议头、UDP 协议头和数据位,最后用0填补的信息假协议头总和。如果必要的话,可以由两个八位复合而成。Data 包含上层数据信息。,UDP协议有如下的特点:1)UDP传送数据前并不与对方建立连接,即UDP是无连接的,在传输数据前,发送方和接收方相互交换信息使双方同步。2)UDP不对收到的数据进行排序,在UDP报文的首部中并没有关于数据顺序的信息(如TCP所采用的序号),而且报文不一定按顺序到达

24、的,所以接收端无从排起。3)UDP对接收到的数据报不发送确认信号,发送端不知道数据是否被正确接收,也不会重发数据。4)UDP传送数据较TCP快速,系统开销也少。5)由于缺乏拥塞控制(congestion control),需要基于网络的机制来减小因失控和高速UDP流量负荷而导致的拥塞崩溃效应。,2.UDP节点 LabVIEW中的基于UDP协议的网络通信由UDP节点实现。LabVIEW7.1中UDP节点位于Functions模板All FunctionsConmmunication子模板UDP子模板中,如图所示。,UDP子模板有5个图标,各图标的参数定义、用法及功能如表所示。,3.UDP通信应用

25、 实例4.2 利用UDP节点实现通信 本例包括UDP Writer(发送).vi和UDP Reader(接收).vi 两个程序,以说明如何使用UDP协议完成数据的传输。UDP Writer(发送).vi的前面板及框图程序如图所示;,4.4 DataSocket技术 4.4.1 DataSocket技术简介 DataSocket是NI公司推出的一种面向测量和自动化工程的网上实时数据交换的编程技术,可用于一个计算机内或网络中多个应用程序之间的数据交换,用于共享和发布实时数据。DataSocket技术提供一种基于TCP/IP协议的网络编程技术,它支持本地文件I/O操作、FTP和HTTP文件传输、实时

26、数据共享并为低层通讯协议提供了一致的API供编程人员使用。DataSocket技术是一种简单易用的网络数据通信技术,它封装了TCP/IP编程细节(如选择端口号、定义协议、创建连接、字节流处理、错误处理等),即具体的底层TCP/IP编程由DataSocket提供的VI完成,使测控工程师不用了解底层的网络编程技术,就可以方便的搭建网络化虚拟仪器测控系统。,1.DataSocket的组成 DataSocket的体系结构如图所示。,DataSocket具备以下三个工具:DataSocket ActiveX控件:开发者可以利用它提供的控件在诸如VB、VC等ActiveX容器中开发共享数据应用程序。Dat

27、aSocket服务器:利用dstp协议在应用程序间交换数据。DataSocket服务器管理程序:它是一个配置和管理工具,负责确定DataSocket服务的最大连接数、实现设置访问控制等网络管理功能。,2DataSocket工具 DataSocket包括DataSocket Server Manager、DataSocket Server和DataSocket函数库3个工具软件以及DSIP协议、通用资源定位符URL和文件格式等技术规范。(1)DataSocket Server Manager DataSocket Server Manager是一个独立运行的程序,其功能是进行:服务器设置-Ser

28、ver Settings(设置可连接的客户程序的最大数目、可创建的数据项的最大数目)、许可组设置-Permission Group(允许创建用户组和用户)和预定义数据项设置-Predefined Data Items(发布和共享数据项的设置)等。在安装好LabVIEW之后,打开“开始程序 National InstrumentsDataSocket”,出现如图4-35所示选项,单击DataSocket Server Manager则进入图3-36所示页面。,(2)DataSocket Server DataSocket Server也是一个独立运行的程序,它为用户提供一个数据交换的场所。如何运

29、行DataSocket Server?即在安装好LabVIEW之后,打开“开始程序National Instruments DataSocket”,出现如图4-35所示选项,单击DataSocket Server 则进入图4-37所示页面。,主要参数为:Processes Connected:显示与DataSocket服务器连接的客户端的实际数目。Packets Received:显示接收的数据包的数目。Packets Sent:显示发送的数据包的数目。,(3)DataSocket函数库 DataSocket函数库用于实现DataSocket通信,DS函数库包含Open、read、write、

30、close等函数。利用DataSocket发布数据需要三个要素:Publisher(发布器)、DataSocket Server和Subscriber(订阅器)。Publisher利用DataSocket API将数据写到DataSocket Server中,而Subscriber利用DataSocket API从DataSocket Server中读出数据,如图所示。,(4)统一资源定位符URL DataSocket用类似于Web中的统一资源定位器(URL)定位数据源,URL不同的前缀表示了不同的数据类型,file表示本地文件,http为超文本传输资源,ftp为文件传输协议,opc表示访问的

31、资源是OPC服务器,dstp(DataSocket transfer protocol-DataSocket传输协议)则说明数据来自DataSocket服务器的实时数据。利用DataSocket进行通信时需要首先指定URL。DataSocket可用的URL共5种:dstp、opc、logos、ftp和file传输协议,其应用格式如表所示,4.4.2 DataSocket节点 DataSocket API分为DataSocket通信节点和DataSocket变量转换节点两大类。LabVIEW7.1的DataSocket 节点位于Functions模板All FunctionsConmmunica

32、tion子模板DataSocket子模板中,如图4-39所示。,DataSocket API节点包含6个图标,各图标的参数定义、用法及功能如表4-10所示,其中Variant变量转换节点又包含7个子图标。,4.4.3 DataSocket应用 使用DataSocket传输数据时,在DataSocket Server Manager中配置好服务器之后,还需从“开始程序National InstrumentsDataSocket”中运行DataSocket Server,再进入LabVIEW环境,运行所开发的应用程序,即可进行数据的传输。使用DataSocket传输数据有以下几种方式:(1)使用D

33、ataSocket特殊属性,实现前面板对象之间传输数据。(2)使用DataSocket节点,实现程序之间的传输数据。(3)DataSocket使用数据缓存方式,实现程序之间的传输数据。,实例4.3:使用DataSocket在前面板控件(对象)中间传输数据建立前面板对象链接的方法是:在准备链接的前面板控件(对象)上鼠标右键弹出快捷菜单,选择Data OperationDataSocket Connection选项,如图4-40和图4-42所示。进入DataSocket Connection 对话框,在Connect to中输入URL,其URL可采用表4-9中的格式。本例的URL为:dstp:/l

34、ocalhost/SampleNum,其中localhost为本地计算机,SampleNum为DataSocket Server Manager中Predefined Data Items的默认数据项。发送端的 Connection Type选“Publish”,接收端则选“Subscribe”,分别如图3-41和图3-43所示。一旦为前面板控件(对象)设置了DataSocket Connection属性,则在控件的右上角就会出现一个小方框,用于指示该控件的连接状态,称为链接状态指示灯。当链接状态指示灯为灰色时,表示该控件还没有连接到DataSocket Server上,如图4-40和图4-4

35、2所示。,图4-40 DataSocket发送端前面板对象链接菜单选项,图4-41 DataSocket发送端前面板对象链接对话框,图4-42 DataSocket接收端前面板控件链接菜单选项,图4-43 DataSocket接收端前面板控件链接对话框,两个前面板控件都进行链接设置之后,发布数据的计算机在程序运行前还需打开DataSocket Server。如果链接正常,两个对象所在的程序运行之后,链接状态指示灯为绿色,如图4-44和图4-46所示,而发送端与接收端前面板所对应的框图程序分别如图4-45和4-47所示。,图4-44 DataSocket发送端前面板运行界面,图4-45 Data

36、Socket发送端框图程序,图4-46 DataSocket接收端前面板运行界面,图4-47 DataSocket接收端框图程序,实例4.4:使用DataSocket节点在程序中传输数据 本例包括DataSocket Writer(发送).vi和DataSocket Reader(接收).vi 两个程序,用以说明如何使用DataSocket节点完成程序间的传输数据。DataSocket Writer(发送).vi产生一个由50个随机数+常数2组成的数据,用WaveGraph控件在前面板中显示其波形,并利用DataSocket Write节点将数据发布到URL“dstp:/localhost/S

37、ampleNum”指定的位置中。DataSocket Reader(接收).vi则利用DataSocket Read节点将数据从URL“dstp:/localhost/SampleNum”指定的位置读出,并送到前面板的WaveGraph控件中显示出。DataSocket Writer(发送).vi和DataSocket Reader(接收).vi的前面板运行结果及其对应的框图程序分别如图4-48、图4-49、图4-50、图4-51所示。,图4-49 使用DataSocket节点发送端框图程序,图4-48 使用DataSocket节点的发送端前面板运行界面,图4-50 使用DataSocket节

38、点的接收端前面板运行界面,图4-51 使用DataSocket节点接收端的框图程序,实例4.5:DataSocket使用数据缓存方式在程序中传输数据 本例包括DataSocket Writer(缓存发送).vi和DataSocket Reader(缓存接收).vi 两个程序,用以说明DataSocke如何使用数据缓存方式完成程序间的数据传输。使用DataSocket协议传输数据,在默认情况下DataSocket Server只向数据客户发布最新数据,当发送端比接收端运行快时,会发生数据丢失现象。为了降低DataSocket Server丢失的可能性且客户认为数据较为重要的话,可使用数据缓存的方

39、式传输数据。采用缓存方式,需分别进行服务器端和客户端的设置。服务器端的设置在图4-52 所示的DataSocket Server Manager 页面中进行,即先在Server Setting上的DfltBufferMaxBytes和DfltMaxPackets中设置默认缓存大小,而后在Predefined Data Items中创建mywave数据项,并设置当前数据项的缓存大小Max Buffer Bytes=102400、Max Buffer Packets=25(缓存大小是用户根据实际需要而设置的)。,客户端的缓存设置包括两类:指定客户端缓存大小和指定监测缓存大小。其设置步骤如下:在Da

40、taSocket Reader(缓存接收).vi的框图程序内创建一个DataSocket Open VI并在其mode端单击鼠标右键创建一个Constant,接着鼠标左键单击下拉选项选择BufferedRead。在框图程序中放入一个Property Node VI节点(放入过程如图4-53 所示),它位于Function模板All FunctionInstruments I/O子模板VISA子模板VISA Advanced子模板中。在Property Node VI节点上单击鼠标右键选择Select Class下的DataSocket,则标签由Instr变为DataSocket。,图4-52

41、DataSocket服务器端的设置,图4-53 放入Property Node VI的过程,在Property Node VI上下拉箭头增加端子并在相应端子单击鼠标左键,分别设置两个端子的属性为:Buffer Maximum Bytes 和Buffer Maximum Packets;又分别在Buffer Maximum Bytes 和Buffer Maximum Packets端单击鼠标右键创建一个Constant,其值设为102400和25;最后在Property Node VI上单击鼠标右键选择Change All To Write并将两端子与102400和25连线。将DataSocke

42、t Open VI的Connection ID与Property Node VI的Connection ID相连接,以完成客户端缓存的指定,如图4-54所示的客户端框图程序。,图4-54 DataSocket使用缓存方式的发送端的框图程序,为了监测缓存的大小,在DataSocket Read VI之后增加一个Property Node VI节点,将DataSocket Read VI的Connection out与Property Node VI的Connection ID相连接;为Property Node的属性输出添加两个指示器,以便观察其Buffer Maximum Bytes 和Buf

43、fer Maximum Packets的值,如图4-55所示的客户端框图程序。,图4-55 DataSocket使用缓存方式的客户端(接收端)框图程序,为了进一步了解DataSocket使用缓存方式传输数据的程序运行情况,首先要打开DataSocket Server并运行DataSocket Writer(缓存发送).vi程序,再运行DataSocket Reader(缓存接收).viI程序,对应的框图程序如图4-54和4-55所示,其运行结果如图4-56和4-57所示。,图4-56 DataSocket使用缓存方式的发送端前面板运行结果,图4-57 DataSocket使用缓存方式的接收端前

44、面板运行界面,4.5 基于Web的远程发布 4.5.1 在Web上发布LabVIEW程序 在Web上发布LabVIEW程序有多种方式,但在使用每种方式之前都必须首先在发布程序的计算机上打开Web服务器。LabVIEW的Web服务器默认值可以满足大多数程序的发布需要,但在此仍需了解一些有关Web Server设置的方法。Web Server需进行三个方面的设置:Web Server Configuartion-Web服务器设置;Web Server Brower Access-Web浏览器访问权限设置;Web Server Visible VIs程序可见设置。1Web服务器设置 打开与设置Web

45、服务器的方法是在LabVIEW主菜单中选择ToolsOption,在随后弹出的“LabVIEW Option”对话框上部的下拉列表框中选择“Web Server:Configuartion”,切换到“Web Server:Configuartion”页面,如图4-58和图4-59所示。,Enable Web Server:启动LabVIEW Web Server。Root Directory是Web服务器存放HTML文件的位置,默认路径如图3-59所示。LabVIEW Web Server默认的端口号为80,否则需重新填写端口号(推荐给用户自定义TCP/IP应用程序使用的网络端口号为:4915

46、2-65535)。Timeout:Web Server等待请求的时间。Log File:LabVIEW保存Web连接信息文件的位置,默认路径如图4-59所示。设置完成后单击OK按钮,Web服务器启动。,图4-58 Web Server:Configuration选项,图4-59 Web服务器设置对话框,2Web浏览器访问权限设置 在“LabVIEW Option”对话框上部的下拉列表框中选择“Web Server:Browser Access”,出现如图4-60所示的对话框,点击“Add”按钮,添加Browser Access List中的条目并在右侧上方的空格中填写计算机的IP地址或计算机名

47、称(注:可以使用通配符和域名,“*”号代表网络中的所有计算机)。点击“Remove”按钮,则删除Browser Access List中的条目。一旦添加了Browser Access List中的条目,则可通过以下选项进行Web浏览器访问权限设置的设置:,图4-60 Web Server 浏览器访问权限设置,Allow Viewing and Controlling:允许查看及控制。一旦选中此项,则在访问列表中的计算机左边会出现两个绿色小,表明远程计算机可以在远程面板链接或浏览页面时控制程序运行。Allow Viewing:允许查看。一旦选中此项,则在访问列表中的计算机左边会出现一个绿色小,表

48、明远程计算机只能对程序面板查看。Deny Access:拒绝访问。一旦选中此项,则在访问列表中的计算机左边会出现一个红色小。,3程序可见设置 同样在“LabVIEW Option”对话框上部的下拉列表框中选择“Web Server:Visible Vis”,出现如图4-61所示的对话框,点击“Add”按钮,添加Visible VIs中条目并在表右侧上方的空格中填写程序名(注:可以使用通配符和路径,“*”号代表内存中的所有程序)。点击“Remove”按钮,则删除Visible VIs中的条目。Control Time Limit用来设置程序被网络上的计算机控制的时间,默认为300。选中“Allo

49、w Access”,则在程序的左边会出现一个绿色小,否则为一个红色小。,在Web中浏览程序前面板的URL格式为:http:/发布程序的计算机IP地址或计算机名/.snap?或.monitor?webpublish.vi“.snap?”表示返回一个静态前面板图像;“.monitor?”则返回动态的图像,Web页面随程序前面板变化自动刷新。“Webpublish.vi”为希望查看的程序名。图4-62所示的URL格式为:http:/localhost/.monitor?TCP Writer(发送).vi,图4-61 Web Server 程序可见设置,图4-62 在Web上发布TCPWriter(发

50、送).vi,4.5.2 在Web上发布HTML文件 在LabVIEW7.1环境下,锅炉监控.vi的前面板运行结果如图4-63所示,对应的框图程序如图4-64所示。,图4-63 锅炉监控.vi的前面板运行结果,图4-64 锅炉监控.vi的框图程序,1创建HTML文件 创建HTML文件的方法是:利用LabVIEW 的Tools菜单中的“Web publishing tool”命令选项进行,即在LabVIEW前面板设计窗口中,单击Tools菜单的“Web publishing tool”命令选项(如图4-65所示),出现图4-66所示的“Web publishing tool”对话框。,图4-65

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号