ImageVerifierCode 换一换
格式:PPT , 页数:109 ,大小:6.60MB ,
资源ID:1148443      下载积分:10 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 微信支付   
验证码:   换一换

加入VIP,免费下载资源
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.wodocx.com/d-1148443.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第4章 网络化虚拟仪器.ppt)为本站会员(精***)主动上传,沃文网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知沃文网(发送邮件至2622162128@qq.com或直接QQ联系客服),我们立即给予删除!

第4章 网络化虚拟仪器.ppt

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的异地或

2、远程测试、控制、数据获取、故障诊断和现场监视功能。网络化虚拟仪器把PC仪器系统的三大功能分别使用独立的基本硬件模块实现,并以网线相连接。通过这种有机的组合,测控网络的功能远远大于系统中各单独个体的功能总和。4.1.2 网络化虚拟仪器的硬件结构网络化虚拟仪器的硬件结构 利用传统的网络接口卡(利用传统的网络接口卡(Network Interface Card,NIC)是最简便的虚拟仪器网络化方法,通过)是最简便的虚拟仪器网络化方法,通过指定指定IP地址和端口,任何一台带有地址和端口,任何一台带有NIC的计算机都能的计算机都能方便地与网络上的其他计算机进行信息交换。在测控方便地与网络上的其他计算机进

3、行信息交换。在测控领域,除了传统的领域,除了传统的NIC外,还有外,还有GPIB-NET、RS232-NET等转换卡,能将本身不具备联网能力的设备仪等转换卡,能将本身不具备联网能力的设备仪器连接到网络上,可以得到如图所示的网络化虚拟仪器连接到网络上,可以得到如图所示的网络化虚拟仪器结构。器结构。4.1.3 网络化虚拟仪器的软件结构网络化虚拟仪器的软件结构 图为网络化虚拟仪器的软件结构。主要由系统管理图为网络化虚拟仪器的软件结构。主要由系统管理软件、应用程序、仪器驱动软件和接口软件等软件、应用程序、仪器驱动软件和接口软件等4部分部分组成。其重点是网络连接部分,即实现组成。其重点是网络连接部分,即

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

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

6、485协议的硬件和数据采集卡通信的全部功能,内置了便于应用TCP/IP、ActiveX等软件标准的库函数,特别适用于虚拟仪器的设计和开发。另外,LabVIEW还提供了TCP、UDP通信技术、DataSocket技术、基于Web的远程发布、Remote Device Access等多种网络通信技术,这为基于LabVIEW的网络化虚拟仪器开发提供了十分便利的条件和基础。1.LabVIEW启动启动 从开始菜单中运行从开始菜单中运行“National Instrument LabVIEW 7.1”,在计算机屏幕上将出现如图所示的欢迎窗口。,在计算机屏幕上将出现如图所示的欢迎窗口。单击单击Continu

7、e按钮之后进入如图所示的按钮之后进入如图所示的LabVIEW对对话框,在这个对话框中可以直接访问某些话框,在这个对话框中可以直接访问某些LabVIEW资源和工具,而不需要打开程序窗口。资源和工具,而不需要打开程序窗口。在在New对话框中单击对话框中单击New按钮,将弹出如图所示的按钮,将弹出如图所示的New对话框。对话框。单击图中单击图中LabVIEW对话框的对话框的Open按钮,将弹出标按钮,将弹出标准的准的Windows打开文件对话框,在这里可以打开各种打开文件对话框,在这里可以打开各种LabVIEW文件。文件。2.LabVIEW程序的基本构成与术语程序的基本构成与术语 采用采用LabVI

8、EW编程的应用程序,通常被称为虚拟仪编程的应用程序,通常被称为虚拟仪器程序(器程序(Virtual Instruments),简称虚拟仪器),简称虚拟仪器(VIs)。它主要由前面板()。它主要由前面板(Front Panel)、框图程)、框图程序(序(Block Diagram)以及图标和连结器窗格()以及图标和连结器窗格(Icon and Connector)三部分组成。其中前面板的外观及)三部分组成。其中前面板的外观及操作功能与真实的(传统的)仪器(如示波器、万用操作功能与真实的(传统的)仪器(如示波器、万用表)的面板类似,而框图程序则是使用功能函数对通表)的面板类似,而框图程序则是使用功

9、能函数对通过用户界面输入的数据或其他源数据进行处理,并将过用户界面输入的数据或其他源数据进行处理,并将信息在显示对象上显示或将信息保存到文件或其他计信息在显示对象上显示或将信息保存到文件或其他计算机。算机。(1)前面板()前面板(Front Panel)前面板是图形用户界面,也就是前面板是图形用户界面,也就是VI的虚拟仪器面板。该界面上的虚拟仪器面板。该界面上有交互式的输入和输出,显示两类对象,分别称为控制器有交互式的输入和输出,显示两类对象,分别称为控制器(Control)和指示器()和指示器(indicator)。)。Control包括开关、旋钮、包括开关、旋钮、按钮和其他输入设备;按钮和

10、其他输入设备;indicator包括图形(包括图形(Graph和和Chart)、)、LED和其他显示输出对象。图所示是一个随机信号发生和显和其他显示输出对象。图所示是一个随机信号发生和显示的简单示的简单VI的前面板,前面板由一个显示对象的前面板,前面板由一个显示对象波形图和波形图和一个控制对象一个控制对象“停止停止”按钮组成。按钮组成。(2)框图程序()框图程序(Block Diagram)框图程序提供框图程序提供VI的图形化源程序。在框图程序中对的图形化源程序。在框图程序中对VI编程,以控制和操纵定义在前面板上的输入和输编程,以控制和操纵定义在前面板上的输入和输出功能。随机信号发生器的框图程

11、序如图所示。出功能。随机信号发生器的框图程序如图所示。框图程序由节点和数据连线组成。节点是VI程序中类似于文本编程语言程序中的语句、函数或者子程序的基本组成元素。节点之间由数据连线按照一定的逻辑关系进行连接,以定义框图程序内的数据流程。LabVIEW的节点类型分为4类,如表所示。节点类型节点功能功能函数(Functions)LabVIEW内置节点,提供基本的数据与对象操作。结构(Structuree)用于控制程序执行方式的节点,包括顺序结构、选择结构、循环结构及公式节点等。代码接口节点(CIN)LabVIEW与C语言程序的接口。通过代码接口节点,用户可以直接调用C语言编写的源程序。子VI(Su

12、bVI)相当于传统编程语言的子程序。通过功能模板中的Select a VI子模板可以创建一个SubVI节点。(3)图标和连结端口)图标和连结端口(Icon and Connector Pane)VI具有层次化和结构化的特征。用户可以把一个VI作为子程序,这里称为子VI(subVI),被其他VI调用。图标与连接端口是框图程序中VI的识别符,当被其他VI调用时,图标代表子VI中的所有框图程序。而连接端口表示子VI与调用它的VI之间进行数据交换的输入输出关系口,相当于图形化的参数,通常连接端口是隐藏在图标中。在图标的右键弹出菜单中选择VisualItemTerminals,可以将图标切换到连接端口状

13、态。(4)专用术语)专用术语 由于LabVIEW是一门面向测试测量领域的图形化语言,在LabVIEW中引入了大量的术语。一些常用术语如表所示。英文名称中文术语英文名称中文术语Attribute Node属性节点Indicator显示对象Bad Wires错误数据连线LIBsVI库Block Diagram框图程序Label标签Bounds 边界范围Lengend图例Bundle打包Local Varival本地变量Channel通道Objects对象Chart实时趋势图Panel面板Cluster簇Palette模板Constant常量Property Node属性节点Control控件Rea

14、d Global全局读Control&Indicator对象控件Read Local本地读Controls Palette控件面板RefNum文件指针Cursor光标Shift Register移位寄存器Data Acquisition(DAQ)数据采集Structures结构Disable Indexing无索引Sub VI子VIEnable Indexing有索引Terminal端口Frame框架Tools Palette工具模板Functions功能函数Unbunble解包Functions Palette功能面板Wires数据连线Graph事后记录图Write Global全局写Ind

15、ex Node索引节点Write Local本地写3.LabVIEW的编程环境的编程环境 LabVIEW是一个多功能的集成编程环境。它主要由是一个多功能的集成编程环境。它主要由前面板窗口和框图程序窗口组成。其中,前面板窗口前面板窗口和框图程序窗口组成。其中,前面板窗口用于编辑和显示前面板对象,如图所示。用于编辑和显示前面板对象,如图所示。框图程序窗口用于编辑和显示框图程序(程序代码),如图所示。(1)LabVIEW菜单菜单 LabVIEW菜单包括文件(菜单包括文件(File)、编辑()、编辑(Edit)、操作)、操作(Operation)、工具()、工具(Tools)、浏览()、浏览(Brow

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

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

18、击鼠标右键,可以弹出控制模板(如图所示)。以弹出控制模板(如图所示)。在Controls中显示的是一些常用的子模板图标,单击右下角的All Controls即可弹出全部的控制子模板(如图)。控制模板包括一些子模板。子模板中包括的对象,其控制模板包括一些子模板。子模板中包括的对象,其中各图标的功能如表所示。中各图标的功能如表所示。3)功能模板()功能模板(Function Palette)选择框图程序窗口的选择框图程序窗口的Windows菜单下的菜单下的Show Functions Palette选项或在框图程序窗口的空白处点选项或在框图程序窗口的空白处点击鼠标右键,可显示出功能模板(如图所示)

19、。击鼠标右键,可显示出功能模板(如图所示)。在Functions中显示的是一些常用的子模板图标,单击右下角的All Functions即可打开所有的功能子模板(如图)。功能模板常用子模板功能如表所示功能模板常用子模板功能如表所示 4.LabVIEW程序设计的一般过程程序设计的一般过程 一个完整的一个完整的VI程序由程序由3部分组成:前面板、框图程序部分组成:前面板、框图程序和图标和图标/连接口,因此一个连接口,因此一个VI程序设计主要包括前面程序设计主要包括前面板的设计、框图程序的设计以及程序的调试。板的设计、框图程序的设计以及程序的调试。当前面板和框图程序设计好以后,还需要对程序进行当前面板

20、和框图程序设计好以后,还需要对程序进行调试,以排除程序执行过程中可能遇到的错误。调试,以排除程序执行过程中可能遇到的错误。程序的调试方法主要有:程序的调试方法主要有:1)找出语法错误)找出语法错误 2)设置运行程序高亮)设置运行程序高亮 3)断点与单步运行)断点与单步运行 4)探针)探针 (1)前面板的设计)前面板的设计 绝大多数的控制器和指示器的配置是可以改变的,在绝大多数的控制器和指示器的配置是可以改变的,在控制器或指示器上单击右键,在弹出的快捷菜单中选控制器或指示器上单击右键,在弹出的快捷菜单中选择相应的选项来改变配置,如图所示。一个择相应的选项来改变配置,如图所示。一个VI程序程序的前

21、面板如图所示。的前面板如图所示。(2)框图程序组成)框图程序组成 框图程序由节点、端口和连线组成,如图所示。框图程序由节点、端口和连线组成,如图所示。(3)从框图程序窗口创建前面板对象)从框图程序窗口创建前面板对象 用任意用任意LabVIEW工具,用户都可以用鼠标右键单击工具,用户都可以用鼠标右键单击任意的任意的labVIEW功能函数或者子程序,然后可以弹功能函数或者子程序,然后可以弹出其快捷菜单,如图所示。出其快捷菜单,如图所示。(4)数据流编程)数据流编程 程序的运行是程序的运行是“数据流数据流”驱动的。对一个节点而言驱动的。对一个节点而言,只有当它的输入端口上的数据都有效以后,它才能,只

22、有当它的输入端口上的数据都有效以后,它才能被执行。当节点程序运行完毕后,它把结果数据送给被执行。当节点程序运行完毕后,它把结果数据送给所有的输出端口。所有的输出端口。如图所示如图所示 下面简单介绍这个下面简单介绍这个框图程序的创建过程:框图程序的创建过程:1)选择框图程序窗口。在功能模板中选择选择框图程序窗口。在功能模板中选择Numeric下的下的Multiply(乘法乘法)函数,放入框图程序窗口。函数,放入框图程序窗口。2)在此函数图标的左端输入端口上单击右键,从弹出的对话框中在此函数图标的左端输入端口上单击右键,从弹出的对话框中选择选择CreatControl,创建与它相连的一个控制器。,

23、创建与它相连的一个控制器。3)重复上面的步骤,创建第二个控制器同乘法函数的连接。重复上面的步骤,创建第二个控制器同乘法函数的连接。4)在功能模板中选择在功能模板中选择Numeric下的下的Subtract(减法减法)函数,放入框函数,放入框图程序窗口。图程序窗口。5)在此函数左端相应输入端口上单击右键,从弹出的对话框中选在此函数左端相应输入端口上单击右键,从弹出的对话框中选择择CreatConstant,创建一个常数。,创建一个常数。6)在此减法在此减法(Subtract)函数右端输出端口上单击右键,从弹出的函数右端输出端口上单击右键,从弹出的对话框中选择对话框中选择Creat Indicat

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

25、画图工具画出所需的图标。注意:在用鼠标画线用画图工具画出所需的图标。注意:在用鼠标画线时按住时按住Shift键,则可以画出水平或垂直方向的直线。键,则可以画出水平或垂直方向的直线。用文本工具写文字,双击文本工具可改变字体及字用文本工具写文字,双击文本工具可改变字体及字号。号。当图标创建完成后,单击当图标创建完成后,单击【OK】按钮以关闭图标按钮以关闭图标编辑。生成的图标将显示在前面板窗口的右上角。编辑。生成的图标将显示在前面板窗口的右上角。(5)创建子程序)创建子程序 在在LabVIEW中,每个中,每个程序都可以将其创建成子程程序都可以将其创建成子程序,以便其他程序调用。创建过程如下(在这里将

26、上序,以便其他程序调用。创建过程如下(在这里将上面面VI程序程序“例例4.1”创建成子创建成子):):1)打开打开程序程序“例例4.1”。2)创建接线端口。接线端口是创建接线端口。接线端口是程序数据的输入程序数据的输入/输输出端口,创建过程如下:出端口,创建过程如下:右键单击前面板中右上角的图标,从弹出的快捷菜右键单击前面板中右上角的图标,从弹出的快捷菜单中选择单中选择Show Connector选项。此时,前面板窗口选项。此时,前面板窗口右上角的图标由接线端口取代,每个小矩形框代表一右上角的图标由接线端口取代,每个小矩形框代表一个连线的端口,这些端口用来将数据输入到个连线的端口,这些端口用来

27、将数据输入到VI程序程序中或将中或将程序的数据输出。程序的数据输出。LabVIEW将会根据控制将会根据控制器和指示器的数量选择一种接线端口模式。器和指示器的数量选择一种接线端口模式。把接线端口分配给相应的控制器和指示器。把接线端口分配给相应的控制器和指示器。使用连线工具,在左边的接线端口框内单击鼠标,使用连线工具,在左边的接线端口框内单击鼠标,则端口将会变黑。再单击控制器,一个闪烁的虚线框则端口将会变黑。再单击控制器,一个闪烁的虚线框将包围住该控制器。将包围住该控制器。3)保存此程序,以后就可以对其调用。)保存此程序,以后就可以对其调用。4)打开一个新的)打开一个新的VI,在框图程序中选择,在

28、框图程序中选择FunctionsAll functionsSelect a VI再选择上面再选择上面保存的保存的VI程序程序“例例4.1”。此时,此。此时,此VI程序将以图标形程序将以图标形式出现。用连线工具可以看到它的连线端口,这样可式出现。用连线工具可以看到它的连线端口,这样可以创建相应的控制器和指示器,如图所示。以创建相应的控制器和指示器,如图所示。(6)VI的运行的运行 LabVIEW提供了两种提供了两种VI的运行方式:单次运行方式和连续运的运行方式:单次运行方式和连续运行方式。行方式。1)单次运行)单次运行VI 在前面板窗口或框图程序窗口的工具栏中选在前面板窗口或框图程序窗口的工具栏

29、中选择运行(择运行(Run)按钮,可以单次运行)按钮,可以单次运行VI。还可以使用操作菜。还可以使用操作菜单下的单下的Run菜单项单次运行菜单项单次运行VI。2)连续运行)连续运行VI 在工具栏中选择连续运行(在工具栏中选择连续运行(Run Continuously)按钮,可以连续运行)按钮,可以连续运行VI,即一次,即一次VI运行结束运行结束后,继续重新运行后,继续重新运行VI。3)停止运行)停止运行VI 在工具栏中选择停止运行(在工具栏中选择停止运行(Abort Execution)按钮,可以强)按钮,可以强行终止行终止VI的运行。的运行。4)暂停运行)暂停运行VI 在工具栏中选择暂停运行

30、(在工具栏中选择暂停运行(Pause)按钮,可以暂停)按钮,可以暂停VI的运行,的运行,再次单击该按钮可恢复再次单击该按钮可恢复VI的运行。的运行。4.3 TCP和和UDP通信通信 4.3.1TCP节点与TCP通信技术及应用 1TCP节点 在LabVIEW7.1中,可以采用TCP节点来实现基于TCP协议的LAN通信。节点位于Functions模板All FunctionsConmmunication子模板TCP子模板中,如图所示。TCP子模板上有子模板上有9个图标,这些图标可划分为三部分:个图标,这些图标可划分为三部分:Connection:用于建立客户机和服务器之间的通信:用于建立客户机和服

31、务器之间的通信连接;连接;Transmission:用于在客户机和服务器之间传输数:用于在客户机和服务器之间传输数据;据;Conversion:用于计算机的:用于计算机的IP地址和计算机名之间地址和计算机名之间相互转换。相互转换。TCP子模板中各图标(节点)的参数定义、用法及功子模板中各图标(节点)的参数定义、用法及功能如表所示。能如表所示。2.TCP通信应用通信应用 实例实例4.1:利用:利用TCP协议发送和接收数据协议发送和接收数据 本例包括本例包括TCP Writer(发送)(发送).vi和和TCP Reader(接收)(接收).vi 两个程序,以实现采用两个程序,以实现采用TCP协议完

32、成数协议完成数据的传输。据的传输。服务器(发送端)的前面板及框图程序如图所示。在服务器(发送端)的前面板及框图程序如图所示。在服务器的框图程序中,利用服务器的框图程序中,利用TCP Listener节点建立听节点建立听者并指定网络端口(者并指定网络端口(Port),用两个),用两个TCP Write节点节点来发送数据。两个来发送数据。两个For循环产生的数据之和一方面送循环产生的数据之和一方面送Waveform Graph显示,另一方面通过显示,另一方面通过TCP Write节节点发送(数据的产生可由用户根据实际需要编写),点发送(数据的产生可由用户根据实际需要编写),第一个第一个TCP Wr

33、ite节点发送数据长度,第二个节点发送数据长度,第二个TCP Write节点发送数据。节点发送数据。While 循环用于数据的连续发循环用于数据的连续发送,送,TCP Close节点则关闭节点则关闭TCP连接。连接。客户端(接收端)的前面板及框图程序如图所示。用客户端(接收端)的前面板及框图程序如图所示。用Open节点按照连接的节点按照连接的IP地址(地址(Address)和端口号)和端口号(Port)建立一个)建立一个TCP连接。与服务器(发送端)框连接。与服务器(发送端)框图程序相对应,客户端框图程序中也采用了两个图程序相对应,客户端框图程序中也采用了两个TCP Read节点读出数据。第一

34、个节点读出数据。第一个TCP Read节点读出数据节点读出数据长度,第二个长度,第二个ReadTCP节点读出数据并送节点读出数据并送Waveform Graph中显示出,以便观察接收的数据与发送数据是中显示出,以便观察接收的数据与发送数据是否一致。否一致。4.3.2UDP节点与节点与UDP通信应用通信应用 1UDP简介 用户数据报协议(UDP-User Datagram Protocol)是 OSI 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。是一个简单的面向数据报的传输层协议,IETF RFC 768是UDP的正式规范。UDP 协议基本上是 IP 协议与上层协议的

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

36、况下需要被寻址的答复端口。如果不使用,设置值为设置值为0。Destination Port 16位。目标端口在特殊因特网目位。目标端口在特殊因特网目标地址的情况下具有意义。标地址的情况下具有意义。Length 16位。该用户数据报的八位长度,包括协位。该用户数据报的八位长度,包括协议头和数据。长度最小值为议头和数据。长度最小值为8。Checksum 16位。位。IP 协议头、协议头、UDP 协议头和数据协议头和数据位,最后用位,最后用0填补的信息假协议头总和。如果必要的填补的信息假协议头总和。如果必要的话,可以由两个八位复合而成。话,可以由两个八位复合而成。Data 包含上层数据信息。包含上层

37、数据信息。UDP协议有如下的特点:协议有如下的特点:1)UDP传送数据前并不与对方建立连接,即传送数据前并不与对方建立连接,即UDP是是无连接的,在传输数据前,发送方和接收方相互交换无连接的,在传输数据前,发送方和接收方相互交换信息使双方同步。信息使双方同步。2)UDP不对收到的数据进行排序,在不对收到的数据进行排序,在UDP报文的首报文的首部中并没有关于数据顺序的信息(如部中并没有关于数据顺序的信息(如TCP所采用的序所采用的序号),而且报文不一定按顺序到达的,所以接收端无号),而且报文不一定按顺序到达的,所以接收端无从排起。从排起。3)UDP对接收到的数据报不发送确认信号,发送端对接收到的

38、数据报不发送确认信号,发送端不知道数据是否被正确接收,也不会重发数据。不知道数据是否被正确接收,也不会重发数据。4)UDP传送数据较传送数据较TCP快速,系统开销也少。快速,系统开销也少。5)由于缺乏拥塞控制()由于缺乏拥塞控制(congestion control),需要),需要基于网络的机制来减小因失控和高速基于网络的机制来减小因失控和高速UDP流量负荷流量负荷而导致的拥塞崩溃效应。而导致的拥塞崩溃效应。2.UDP节点节点 LabVIEW中的基于中的基于UDP协议的网络通信由协议的网络通信由UDP节点实现。节点实现。LabVIEW7.1中中UDP节点位于节点位于Functions模板模板A

39、ll FunctionsConmmunication子模板子模板UDP子模板中,如图所子模板中,如图所示。示。UDP子模板有子模板有5个图标,各图标的参数定义、用法及个图标,各图标的参数定义、用法及功能如表所示。功能如表所示。3.UDP通信应用通信应用 实例实例4.2 利用利用UDP节点实现通节点实现通信信 本例包括本例包括UDP Writer(发送)(发送).vi和和UDP Reader(接收)(接收).vi 两个程序,以说明如何使两个程序,以说明如何使用用UDP协议完成数据的传输。协议完成数据的传输。UDP Writer(发送)(发送).vi的前的前面板及框图程序如图所示;面板及框图程序如

40、图所示;4.4 DataSocket技术技术 4.4.1 DataSocket技术技术简介 DataSocket是NI公司推出的一种面向测量和自动化工程的网上实时数据交换的编程技术,可用于一个计算机内或网络中多个应用程序之间的数据交换,用于共享和发布实时数据。DataSocket技术提供一种基于TCP/IP协议的网络编程技术,它支持本地文件I/O操作、FTP和HTTP文件传输、实时数据共享并为低层通讯协议提供了一致的API供编程人员使用。DataSocket技术是一种简单易用的网络数据通信技术,它封装了TCP/IP编程细节(如选择端口号、定义协议、创建连接、字节流处理、错误处理等),即具体的底

41、层TCP/IP编程由DataSocket提供的VI完成,使测控工程师不用了解底层的网络编程技术,就可以方便的搭建网络化虚拟仪器测控系统。1.DataSocket的组成 DataSocket的体系结构如图所示。Internet LiveDataWeb浏览器LabVIEWLabWindows/CVIDataSocket服务器采 集应用程序DataSocket具备以下三个工具:DataSocket ActiveX控件:开发者可以利用它提供的控件在诸如VB、VC等ActiveX容器中开发共享数据应用程序。DataSocket服务器:利用dstp协议在应用程序间交换数据。DataSocket服务器管理程

42、序:它是一个配置和管理工具,负责确定DataSocket服务的最大连接数、实现设置访问控制等网络管理功能。2DataSocket工具 DataSocket包括DataSocket Server Manager、DataSocket Server和DataSocket函数库3个工具软件以及DSIP协议、通用资源定位符URL和文件格式等技术规范。(1)DataSocket Server Manager DataSocket Server Manager是一个独立运行的程序,其功能是进行:服务器设置-Server Settings(设置可连接的客户程序的最大数目、可创建的数据项的最大数目)、许可组设

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

44、l Instruments DataSocket”,出现如图4-35所示选项,单击DataSocket Server 则进入图4-37所示页面。主要参数为:Processes Connected:显示与DataSocket服务器连接的客户端的实际数目。Packets Received:显示接收的数据包的数目。Packets Sent:显示发送的数据包的数目。(3)DataSocket函数库 DataSocket函数库用于实现DataSocket通信,DS函数库包含Open、read、write、close等函数。利用DataSocket发布数据需要三个要素:Publisher(发布器)、Dat

45、aSocket Server和Subscriber(订阅器)。Publisher利用DataSocket API将数据写到DataSocket Server中,而Subscriber利用DataSocket API从DataSocket Server中读出数据,如图所示。(4)统一资源定位符URL DataSocket用类似于Web中的统一资源定位器(URL)定位数据源,URL不同的前缀表示了不同的数据类型,file表示本地文件,http为超文本传输资源,ftp为文件传输协议,opc表示访问的资源是OPC服务器,dstp(DataSocket transfer protocol-DataSoc

46、ket传输协议)则说明数据来自DataSocket服务器的实时数据。利用DataSocket进行通信时需要首先指定URL。DataSocket可用的URL共5种:dstp、opc、logos、ftp和file传输协议,其应用格式如表所示 协议协议举举 例例dstpdstp:/localhost/data 或dstp:/202.98.174.193/data (data为数据项标签)httphttp:/IP地址或计算机名/lvweb.htm (lvweb.htm为HTML文件)opcopc:/National Instruments.OPCTest/item1opc:/machine_name/

47、National Instruments.OPCDemo/sine logosLogos:/computer_name/process/data_item_name ftpftp:/ filefile:machine_namemydataping.wav4.4.2 DataSocket节点节点 DataSocket API分为DataSocket通信节点和DataSocket变量转换节点两大类。LabVIEW7.1的DataSocket 节点位于Functions模板All FunctionsConmmunication子模板DataSocket子模板中,如图4-39所示。DataSocket

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

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

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

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922