虚拟仪器-labview-课件-第十一章-通信编程

上传人:痛*** 文档编号:241749178 上传时间:2024-07-20 格式:PPT 页数:79 大小:1.36MB
返回 下载 相关 举报
虚拟仪器-labview-课件-第十一章-通信编程_第1页
第1页 / 共79页
虚拟仪器-labview-课件-第十一章-通信编程_第2页
第2页 / 共79页
虚拟仪器-labview-课件-第十一章-通信编程_第3页
第3页 / 共79页
点击查看更多>>
资源描述
第十一章 通信编程11.1 11.1 串行通信串行通信11.2 DataSocket11.3 TCP11.2 DataSocket11.3 TCP第十一章第十一章 通信编程通信编程第十一章 通信编程11.1 11.1 串行通信串行通信 早期的仪器、单片机、早期的仪器、单片机、PLCPLC等均使用串口与等均使用串口与计算机进行通信,计算机进行通信,RS-232RS-232协议是一种通用的串协议是一种通用的串行通信总线。目前,行通信总线。目前,RS-232RS-232总线仍然是虚拟仪总线仍然是虚拟仪器的构成方式之一。器的构成方式之一。第十一章 通信编程GPIBSerialDAQProcessorUnit Under TestVXIImage AcquisitionMotionControlPXIApplicationSoftwareHardware&Driver Software LabWindows/CVI LabVIEW虚拟仪器系统构成虚拟仪器系统构成第十一章 通信编程11.1.1 11.1.1 串行通信模板及节点串行通信模板及节点 LabVIEWLabVIEW共有共有8 8个串行通信节点个串行通信节点,分别实现串口设置、分别实现串口设置、串口写、串口读、关闭串口及检测串口缓存、中断等串口写、串口读、关闭串口及检测串口缓存、中断等功能。模板及图标如下:功能。模板及图标如下:第十一章 通信编程11.1.2 11.1.2 串行通信节点的使用方法串行通信节点的使用方法 初始化串口初始化串口(Serial Port Init.VI)(Serial Port Init.VI)该节点用于设置串口号、波特率、数据位、该节点用于设置串口号、波特率、数据位、停止位、奇偶校验、缓冲区大小及流量控制等停止位、奇偶校验、缓冲区大小及流量控制等参数。参数。第十一章 通信编程 串口写串口写(Serial Port Write.VI)(Serial Port Write.VI)对串口进行写操作,端口设置为:对串口进行写操作,端口设置为:VISA resource name VISA resource name:设置串口号:设置串口号;write buffer write buffer:写入串口缓冲区的字符。:写入串口缓冲区的字符。Return count Return count:返回写入串口的字符数。:返回写入串口的字符数。第十一章 通信编程 串口读串口读(Serial Port Read.VI)(Serial Port Read.VI)对串口进行读操作,端口设置为:对串口进行读操作,端口设置为:VISA resource name VISA resource name:设置串口号;:设置串口号;byte count byte count:读取字符数;:读取字符数;Read buffer Read buffer:从串口读到的字符;:从串口读到的字符;Return count Return count:返回实际读取字符数。:返回实际读取字符数。第十一章 通信编程 关闭串口关闭串口(Serial Port Close.VI)(Serial Port Close.VI)对打开的串口进行关闭操作。对打开的串口进行关闭操作。VISA resource name VISA resource name:设置串口号;:设置串口号;第十一章 通信编程 串口检测串口检测(Bytes of Serial Port.VI)(Bytes of Serial Port.VI)检测当前串口输入缓冲区中的字节数。用在检测当前串口输入缓冲区中的字节数。用在ReadRead节点读串口前。节点读串口前。第十一章 通信编程 串口中断串口中断(Serial Port Break.VI)(Serial Port Break.VI)将串口中断至少将串口中断至少250ms250ms。第十一章 通信编程11.1.3 11.1.3 串行通信应用实例串行通信应用实例 例例13.1 13.1 用用LabVIEWLabVIEW实现双机串行通讯。实现双机串行通讯。本例使用两台计算机进行通讯,一台计算机本例使用两台计算机进行通讯,一台计算机作为服务器,通过串口向外发送数据,另一台作为服务器,通过串口向外发送数据,另一台计算机作为客户机,接收由服务器发送过来的计算机作为客户机,接收由服务器发送过来的数据。数据。两台计算机串口的连线如下图:两台计算机串口的连线如下图:第十一章 通信编程服务器框图程序服务器框图程序第十一章 通信编程服务器前面板服务器前面板第十一章 通信编程客户机框图程序客户机框图程序第十一章 通信编程客户机前面板客户机前面板第十一章 通信编程由一个程序进行串口的读写由一个程序进行串口的读写第十一章 通信编程 前面板。前面板。第十一章 通信编程 下面是一个通用串口通讯程序的界面。下面是一个通用串口通讯程序的界面。第十一章 通信编程11.2 DataSocket11.2 DataSocket通信技术通信技术 DataSocketDataSocket是是NINI公司提供的一种网络测控系公司提供的一种网络测控系统开发工具,以实现不同的应用程序和数据源统开发工具,以实现不同的应用程序和数据源之间的数据共享。之间的数据共享。DataSocket DataSocket用类似于用类似于WebWeb中的统一资源定位中的统一资源定位器器(URL)(URL)定位数据,定位数据,URLURL不同的前缀表示了不同不同的前缀表示了不同的数据类型:的数据类型:FILE FILE本地文件;本地文件;HTTP HTTP超文本传输数据;超文本传输数据;FTP FTP文件传输协议;文件传输协议;OPC OPCOPCOPC资源;资源;DSTP DSTPDataSocketDataSocket服务器传输的数据。服务器传输的数据。第十一章 通信编程 LabVIEW LabVIEW中还提供了以下中还提供了以下3 3个工具:个工具:DataSocket ActiveX DataSocket ActiveX控件:利用控件:利用ActiveXActiveX容容 器开发共享数据应用。器开发共享数据应用。DataSocket DataSocket服务器管理程序:它是一个配服务器管理程序:它是一个配 置和管理工具,具有负责确定置和管理工具,具有负责确定DataSocketDataSocket 服务的最大连接数,设置服务控制等网络服务的最大连接数,设置服务控制等网络 功能。功能。DataSocket DataSocket服务器:利用服务器:利用DSTPDSTP协议在应用程协议在应用程 序间交换数据。序间交换数据。第十一章 通信编程11.2.1 DataSocket11.2.1 DataSocket管理器管理器 在在LabVIEWLabVIEW安装后,会出现安装后,会出现DataSocket SeverDataSocket Sever和和DataSocket Sevser ManagerDataSocket Sevser Manager应用程序。应用程序。第十一章 通信编程 启动启动DataSocket Sevser ManagerDataSocket Sevser Manager后对话框如后对话框如下:下:第十一章 通信编程11.2.2 DataSocket11.2.2 DataSocket服务器服务器 启动启动DataSocket SevserDataSocket Sevser后对话框如下:后对话框如下:第十一章 通信编程11.2.3 DataSocket11.2.3 DataSocket子模板介绍子模板介绍 DataSocket DataSocket子模板调用路径为子模板调用路径为Functions Functions Data CommunicationDataSocket Data CommunicationDataSocket 第十一章 通信编程 打开一个连接打开一个连接 URL URL:欲访问的网上用户地址。:欲访问的网上用户地址。mode mode:网络中用户连接的模式。:网络中用户连接的模式。第十一章 通信编程 向打开的连接写数据向打开的连接写数据 Data Data:表示向:表示向DataSocketDataSocket服务器写入的数据。服务器写入的数据。第十一章 通信编程 向打开的连接读数据向打开的连接读数据 Data Data:表示从:表示从DataSocketDataSocket服务器读出的数据。服务器读出的数据。第十一章 通信编程 关闭打开的连接关闭打开的连接 第十一章 通信编程 选择选择DatasocketDatasocket的的URLURL 显示一个对话框供用户选择显示一个对话框供用户选择URLURL。第十一章 通信编程 DataSocket DataSocket的前面板对象链接是一种不需要任的前面板对象链接是一种不需要任何编程的网络数据传输方法。通过何编程的网络数据传输方法。通过DataSocketDataSocket 将两个程序的前面板对象链接起来,一个发送数将两个程序的前面板对象链接起来,一个发送数据,另一个接收数据,就可以实现对程序的远程据,另一个接收数据,就可以实现对程序的远程控制、数据的远程采集等多种功能。控制、数据的远程采集等多种功能。建立前面板对象链接的方法如下:建立前面板对象链接的方法如下:在需链接的前面板对象上单击右键,选择弹在需链接的前面板对象上单击右键,选择弹出菜单中出菜单中Data OperationsDataSocket Data OperationsDataSocket ConnectionConnection,如下图:,如下图:11.2.4 11.2.4 使用使用DataSocketDataSocket链接前面板对象链接前面板对象第十一章 通信编程第十一章 通信编程弹出以下对话框:弹出以下对话框:Connect To Connect To:不论发布数据还是接收数据的:不论发布数据还是接收数据的机器中,都填写发布数据机器的机器中,都填写发布数据机器的URLURL。Connections Type Connections Type:发布数据选择:发布数据选择PublishPublish;接收数据选择接收数据选择SubscribeSubscribe。第十一章 通信编程 选中选中EnableEnable选项。完成设置后,前面板对象选项。完成设置后,前面板对象右上角出现一个链接指示灯。运行后指示灯亮。右上角出现一个链接指示灯。运行后指示灯亮。注意:在上述程序运行前,必须先从注意:在上述程序运行前,必须先从WindowsWindows程程序菜单中打开序菜单中打开DataSocket SeverDataSocket Sever。第十一章 通信编程发送数据前面板及框图程序:发送数据前面板及框图程序:第十一章 通信编程接收数据前面板及框图程序:接收数据前面板及框图程序:第十一章 通信编程11.2.5 11.2.5 使用使用DataSocketDataSocket传输数据传输数据 向向DataSocketDataSocket写数据写数据 向指定的向指定的URLURL:dstp:/202.197.33.63/dssinedstp:/202.197.33.63/dssine写数据。数据是一个周期的正弦波,其幅值可用写数据。数据是一个周期的正弦波,其幅值可用amplitude amplitude 调节。用调节。用error outerror out作为作为whilewhile循环结循环结束条件,即出错即停止。束条件,即出错即停止。第十一章 通信编程向向DataSocketDataSocket写数据的前面板:写数据的前面板:第十一章 通信编程 从从DataSocketDataSocket读数据读数据 从指定的从指定的URLURL:dstp:/202.197.33.63/dssinedstp:/202.197.33.63/dssine中读数据。其幅值受写中读数据。其幅值受写DataSocketDataSocket中中amplitudeamplitude的的调节。用调节。用error outerror out作为作为whilewhile循环结束条件。另循环结束条件。另外用外用Tick CountTick Count测试循环时间。测试循环时间。第十一章 通信编程从从DataSocketDataSocket读数据的前面板:读数据的前面板:第十一章 通信编程注意:在上述程序运行前,必须先从注意:在上述程序运行前,必须先从WindowsWindows程序菜单中打开程序菜单中打开DataSocket DataSocket SeverSever。第十一章 通信编程11.2.6 11.2.6 基于基于DataSocketDataSocket的的OPCOPC数据传输数据传输 LabVIEW LabVIEW中中DataSocketDataSocket提供了提供了OPCOPC数据传输功能。数据传输功能。OPC OPC(OLE for Process ControlOLE for Process Control)借用)借用Micro Micro softsoft的的OLEOLE和和COM/DCOMCOM/DCOM技术,为异构设备、软件技术,为异构设备、软件的通讯提供了有效的解决方法,是实现控制系统的通讯提供了有效的解决方法,是实现控制系统现场设备级与过程管理级信息交互和控制系统开现场设备级与过程管理级信息交互和控制系统开放性的关键技术。放性的关键技术。第十一章 通信编程 LabVIEW LabVIEW中可通过中可通过DataSocket VIDataSocket VI来支持来支持OPCOPC应用。在应用。在LabVIEWLabVIEW中同一个中同一个OPCOPC服务器建立连接,服务器建立连接,通过调用通过调用Open.VIOpen.VI节点实现。节点实现。OPC URL OPC URL的基本结构为的基本结构为:opc:/opc:/主机名主机名/OPC/OPC服务器名服务器名/数据项目数据项目 下面以下面以SLC500 PLCSLC500 PLC为例,介绍为例,介绍LabVIEWLabVIEW与与PLCPLC基于基于DataSocketDataSocket的数据通信方法。的数据通信方法。第十一章 通信编程第十一章 通信编程第十一章 通信编程第十一章 通信编程 RSLinx RSLinx与其它软件的通信与其它软件的通信 RSLinx RSLinx通讯软件是用于通讯软件是用于A-BA-B可编程控制器的服可编程控制器的服务器软件务器软件,为为A-BA-B的的PLCPLC处理器与处理器与RockwellRockwell公司及公司及其他公司其他公司(如微软如微软)的许多软件产品提供了通信的许多软件产品提供了通信连接,如下图。连接,如下图。第十一章 通信编程 RSLinx OPC RSLinx OPC 服务器的设置服务器的设置 在使用在使用RSLinx OPCRSLinx OPC服务器时,先要进行配置服务器时,先要进行配置和组态。和组态。Step1 Step1 配置通信设备。配置通信设备。在启动在启动RSLinxRSLinx后,点击后,点击Communications Communications Configure DriversConfigure Drivers,添加一个新设备,添加一个新设备(driverdriver),选择),选择“1784-KT/KTX(D)/PKTX(O)“1784-KT/KTX(D)/PKTX(O)/PCMK for DH+/DH-485 devices”/PCMK for DH+/DH-485 devices”,并确定新,并确定新添加的设备无错误,设备状态显示添加的设备无错误,设备状态显示“正在运行正在运行”(RunningRunning)。)。第十一章 通信编程第十一章 通信编程 Step2 Step2 建立建立OPCOPC主题主题(Topic)(Topic)。在在RSWhoRSWho对话框下,找到相应的对话框下,找到相应的PLCPLC,右击,右击PLCPLC图标,选择图标,选择“Configure New DDE/OPC Topic”“Configure New DDE/OPC Topic”,建立一个,建立一个TopicTopic。第十一章 通信编程 Step3 Step3 测试测试OPCOPC服务器。服务器。应用应用OPCToolsOPCTools中的中的OPC Test Client OPC Test Client 可对可对Step2Step2中建立的中建立的MyTopicMyTopic主题进行测试。主题进行测试。第十一章 通信编程 OPC OPC读读PLCPLC数据数据 在设置好在设置好RSLinx OPCRSLinx OPC服务器后,服务器后,LabVIEWLabVIEW通过通过DataSocketDataSocket的的OPCOPC层与层与RSLinx OPCRSLinx OPC服务服务器进行通信。下图是进行读操作的数据流图。器进行通信。下图是进行读操作的数据流图。第十一章 通信编程第十一章 通信编程 从图中可以看出读数据流图由个从图中可以看出读数据流图由个4 4个功能块组个功能块组成:成:a)a)构建读数据项目数组。对要读取的构建读数据项目数组。对要读取的OPCOPC服服务器数据项目的务器数据项目的URLURL,用数组的形式表示。,用数组的形式表示。b)b)建立与读数据项目的连接。建立与读数据项目的连接。c)c)项目数据更新与显示。项目数据更新与显示。d)d)关闭与项目的连接。关闭与项目的连接。第十一章 通信编程 写写PLCPLC数据数据 LabVIEW LabVIEW通过通过RSLinx OPCRSLinx OPC服务器对服务器对SLC500 PLCSLC500 PLC进行写操作的数据流图如下。进行写操作的数据流图如下。第十一章 通信编程 系统前面板如下:系统前面板如下:第十一章 通信编程11.3 TCP11.3 TCP通信通信 TCP/IPTCP/IP协议是协议是InternetInternet最基本的协议,它由最基本的协议,它由低层的低层的IPIP协议和协议和TCPTCP协议组成。协议组成。LabVIEW LabVIEW中,可以采用中,可以采用TCP/IPTCP/IP节点来实现局域节点来实现局域网通讯。网通讯。11.3.1 TCP/IP11.3.1 TCP/IP节点介绍节点介绍 LabVIEW LabVIEW中,中,TCP/IPTCP/IP节点在节点在Functions Data Functions Data CommunicationProtocolsTCPCommunicationProtocolsTCP子模板中。子模板中。第十一章 通信编程第十一章 通信编程 TCP Listen.VI TCP Listen.VI 创建一个听着,并在指定的端口等待客户创建一个听着,并在指定的端口等待客户端的端的TCPTCP连接请求。连接请求。port port:端口号;:端口号;connection ID connection ID:TCPTCP连接的标识号;连接的标识号;remote address remote address:显示和:显示和TCPTCP连接的远程计连接的远程计算机的算机的IPIP地址;地址;注意:该节点只能应用于服务器。注意:该节点只能应用于服务器。第十一章 通信编程 TCP Open.VI TCP Open.VI 用指定的计算机和端口打开以用指定的计算机和端口打开以TCPTCP连接。连接。address address:远端服务器地址;:远端服务器地址;remote port remote port:用户欲创建的:用户欲创建的TCPTCP连接的端连接的端口号;口号;注意:该节点只能应用于客户机服务器。注意:该节点只能应用于客户机服务器。第十一章 通信编程 TCP Read.VI TCP Read.VI 从指定的从指定的TCPTCP连接中读数据。连接中读数据。mode mode:读数据模式;:读数据模式;bytes to read bytes to read:从指定的:从指定的TCPTCP端口中读取端口中读取的最多的字节数;的最多的字节数;data out data out:从:从TCPTCP端口读取的数据;端口读取的数据;第十一章 通信编程 TCP Write.VI TCP Write.VI 向打开的向打开的TCPTCP端口写入数据。端口写入数据。Data in Data in:向:向TCPTCP端口要写的数据;端口要写的数据;第十一章 通信编程 TCP Close.VI TCP Close.VI 关闭指定的关闭指定的TCPTCP端口。端口。TCP Create Listener.VI TCP Create Listener.VI 创建一个创建一个TCPTCP连接的听者。连接的听者。第十一章 通信编程 TCP Wait on Listener.VI TCP Wait on Listener.VI 在指定的端口上等待在指定的端口上等待TCPTCP连接请求。连接请求。IP to String.VI IP to String.VI及及String to IPString to IP第十一章 通信编程11.3.2 11.3.2 基于基于C/SC/S模式的网络通讯模式的网络通讯 采用采用C/SC/S模式是模式是LabVIEWLabVIEW进行网络通讯的最基本结进行网络通讯的最基本结构。在本例中由服务器产生一组随机波形,通过局构。在本例中由服务器产生一组随机波形,通过局域网送至客户机进行显示。通讯流程如下。域网送至客户机进行显示。通讯流程如下。第十一章 通信编程 服务器程序设计服务器程序设计第十一章 通信编程 客户机程序设计客户机程序设计 前面板如下:前面板如下:第十一章 通信编程 客户机框图程序如下:客户机框图程序如下:框图程序中,打开框图程序中,打开TCPTCP函数按照给定的函数按照给定的IPIP地址地址和端口号建立一个和端口号建立一个TCPTCP连接。连接。与服务器程序对应,客户机框图程序也采用与服务器程序对应,客户机框图程序也采用两个两个TCP ReadTCP Read节点读数据。其中第一个读数据节点读数据。其中第一个读数据长度,第二个读数据值。长度,第二个读数据值。第十一章 通信编程11.3.3 11.3.3 基于基于WebWeb的网络通讯的网络通讯 使用使用LabVIEWLabVIEW的的WebWeb服务器在服务器在WebWeb上发布上发布LabVIEWLabVIEW程序,可以使本地或远程计算机浏览程序,可以使本地或远程计算机浏览LabVIEWLabVIEW程序程序面板,甚至控制面板,甚至控制LabVIEWLabVIEW程序的运行。程序的运行。步骤如下:步骤如下:Web Server Web Server的配置的配置 在在WebWeb上发布上发布LabVIEWLabVIEW程序有多种方法,但在使程序有多种方法,但在使用每种方法前必须首先设置和启动用每种方法前必须首先设置和启动WebWeb服务器。服务器。这些设置在这些设置在LabVIEWLabVIEW主菜单下:主菜单下:ToolOptions“Web Sever:Configuration”ToolOptions“Web Sever:Configuration”第十一章 通信编程第十一章 通信编程 选中启动选中启动Enable Web SeverEnable Web Sever单选框。单选框。Root Directory:Root Directory:填写填写WebWeb服务器存放服务器存放HTMLHTML文文件的位置。件的位置。Log File Log File:保存:保存WebWeb连接信息文件的位置。连接信息文件的位置。第十一章 通信编程 Browser Access List:Browser Access List:列出所有允许或不允列出所有允许或不允许访问许访问WebWeb服务器的计算机服务器的计算机IPIP或名称。或名称。Allow Access Allow Access:允许访问。:允许访问。Web Server Web Server:Browser AccessBrowser Access的配置的配置第十一章 通信编程 Visible VIs:Visible VIs:列出所有可以通过列出所有可以通过WebWeb服务器服务器的查看的程序名。的查看的程序名。Web Server Web Server:Visible VIsVisible VIs的设置的设置第十一章 通信编程 Web Web程序的发布程序的发布 利用利用LabVIEWLabVIEW内嵌的内嵌的Web Publishing ToolsWeb Publishing Tools就就可以把程序发布到可以把程序发布到WebWeb上,供客户端浏览。上,供客户端浏览。第十一章 通信编程Document TitleDocument Title:出现在网页上的文件标题;:出现在网页上的文件标题;HeaderHeader:出现在图像上方的文字;:出现在图像上方的文字;FooterFooter:出现在图像下方的文字;:出现在图像下方的文字;VI NameVI Name:在:在WebWeb上发布的上发布的VIVI程序;程序;Viewing OptionsViewing Options:客户机上的浏览模式:客户机上的浏览模式 Embedded Embedded:网页中面板图形随程序同步刷:网页中面板图形随程序同步刷 洗。洗。如果安装了如果安装了LabVIEW Enterprise Connectivity ToolsetLabVIEW Enterprise Connectivity Toolset,还可在网页上控制程序的运行;,还可在网页上控制程序的运行;Snapshot Snapshot:网页中面板图形是静态的;:网页中面板图形是静态的;Monitor Monitor:监控状态。:监控状态。第十一章 通信编程 客户机上浏览客户机上浏览LabVIEWLabVIEW面板面板第十一章 通信编程 在在WebWeb上浏览程序前面板时上浏览程序前面板时URLURL填写格式为:填写格式为:Http:/202.197.33.63/.snap?WebHttp:/202.197.33.63/.snap?Web发布程序发布程序.vi.vi 这里这里202.197.33.63202.197.33.63为计算机为计算机IPIP地址,地址,WebWeb发发布程序布程序.vi.vi为希望查看的程序名,注意必须填写为希望查看的程序名,注意必须填写.vi.vi。.snap?.snap?表示返回一个静态前面板。表示返回一个静态前面板。如将如将 .snap?.snap?改写为改写为.monitor?.monitor?则返回动态的则返回动态的图像。图像。第十一章 通信编程LabVIEW VIsLabVIEW VIs的前面板的前面板第十一章 通信编程 可以监测远程计算机上一个程序的前面板,可以监测远程计算机上一个程序的前面板,甚至完全控制一个程序的运行。甚至完全控制一个程序的运行。前面板的远程链接的方法如下:点击前面板的远程链接的方法如下:点击OperateConnect to Remote PanelOperateConnect to Remote Panel,弹出以下,弹出以下对话框:对话框:11.3.3 11.3.3 前面板的远程链接前面板的远程链接第十一章 通信编程WebWeb浏览的前面板浏览的前面板
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!