使用DataSocket VI和函数通过编程配置、读取和写入实时数据。

(Real-Time、Windows)NI建议连接共享变量节点至VI和函数,通过编程共享实时数据。

注: 只有在安装了LabVIEW Real-Time模块的Windows或RT终端上,才可创建、配置和托管共享变量。DataSocket VI和函数用于读取或写入其他平台上的共享变量。

使用共享变量

通过共享变量可在VI或程序框图中无法连线的位置间共享数据。使用共享变量进行数据共享时,仅需在程序框图中编写少量程序,甚至不需要编写程序。

对于DataSocket VI和函数,读写数据时指定URL的方式与在Web浏览器中指定URL基本相同。

指定URL

传输数据时,URL在Windows平台上使用opcftphttp等通信协议,在LabVIEW支持的平台上使用pspdstpfile等协议。在URL中使用何种协议,取决于写入数据的类型及网络配置。

使用DataSocket VI和函数读写数据,或启用一个控件的连接时,可使用下列协议:

  • NI PSP协议psp - NI专有的数据传输协议,在网络和本地计算机之间传输数据。使用该协议时,VI通过共享变量引擎(SVE)进行通信。使用psp协议可将共享变量与服务器或设备上的数据项相连接。用户需为数据项命名并把名称追加到URL。数据连接将通过这个名称从共享变量引擎(SVE)找到某个特定的数据项。该协议也可用于使用前面板数据绑定的情况。而fieldpoint协议可作为NI-PSP协议的一个别名。
  • DataSocket传输协议(dstp) - 使用该协议时,VI将与DataSocket服务器通信。必须为数据提供一个命名标签并附加于URL。数据连接按照这个命名标签寻找DataSocket服务器上某个特定的数据项。要使用该协议,必须运行DataSocket服务器。
  • (Windows)过程控制OLE (opc) - 专门用于共享实时生产数据,如工业自动化操作中产生的数据。该协议须在运行OPC服务器时使用。
  • (Windows)文件传输协议(ftp) - 用于指定从FTP服务器中读取数据的文件。
    注:使用DataSocket函数从FTP站点读取文本文件时,需要将[text]添加到URL的末尾。
  • file - 用于提供指向含有数据的本地文件或网络文件的链接。
  • (Windows)http - 用于提供指向含有数据的网页的链接。
    注:如要使用DataSocket函数通过http协议读取文本文件,需在URL的末尾添加[text]

下表列举了每种协议URL的范例。

URL 范例

psp

对于共享变量:

psp://computer/library/shared_variable

对于NI-PSP数据项,如服务器和设备数据项:

psp://computer/process/data_item

fieldpoint://host/FP/module/channel

dstp

dstp://servername.com/numeric,其中numeric是数据的命名标签

opc

opc:\National Instruments.OPCTest\item1

opc:\\computer\National Instruments.OPCModbus\Modbus Demo Box.4:0

opc:\\computer\National Instruments.OPCModbus\Modbus Demo Box.4:0?updaterate=100&deadband=0.7

ftp

ftp://ftp.ni.com/datasocket/ping.wav

ftp://ftp.ni.com/support/00README.txt[text]

file

file:ping.wav

file:c:\mydata\ping.wav

file:\\computer\mydata\ping.wav

http

http://ni.com

pspdstpopc协议的URL用于共享实时数据,因为这些协议能够更新远程和本地的输入控件及显示控件。ftpfile协议的URL用于从文件中读取数据,因为这些协议无法更新远程和本地的输入控件及显示控件。

DataSocket VI和函数支持的数据格式

DataSocket VI和函数可传递任何类型的LabVIEW数据。此外,DataSocket VI和函数还可读写以下数据:

  • 原始文本 - 用于向字符串显示控件发送字符串。
  • 制表符分隔的文本 - 用于将数据写入数组,方式同电子表格。LabVIEW把制表符化的文本当作数组数据处理。
  • .wav数据 - 使用.wav数据,将声音写入VI或函数。
  • 变体数据 - 用于从另外一个应用程序读取数据,如NI Measurement Studio的ActiveX控件。