基于DataSocket技术共享数据采集卡的实例

减小字体 增大字体 作者:王鹏冲 梁金土 林 鹏  来源:www.zhonghualunwen.com  发布时间:2009-08-17 00:12:28

关键词:数据采集;DataSocket;Labview;RDA

摘要:数据采集是科学实验的一个重要环节,数据采集卡是数据采集系统的一个关键硬件。利用DataSocket技术能较好实现数据采集卡的共享,提高了设备的利用率和降低实验成本。

1 前言
  
  数据采集卡是数据采集系统中重要的硬件之一,在有些场合,例如教学实验室,如果每台计算机都配备一块采集卡,则代价较高,利用率也较低。因此,实现采集卡的共享是较好的解决方案。Laview的DataSocket技术能较好地实现数据采集卡的共享,即多台计算机共享一台计算机(服务器)上的采集卡,数据采集卡共享程序可以用于一个局域网内的计算机组。
  
  2 DataSocket技术
  
  DataSocket由DataSocket API 与DataSocket Server两部分组成。DataSocket API是用于用户访问网络数据的接口,DataSocket Server负责提供DSTP协议和管理底层网络通信。利用DSTP实现现场数据网络共享,必须要用到DataSocket Server。
  DataSocket API是协议独立的、编程语言独立和操作系统独立的用于简化二进制数据传输的API。它的实现方式可以是ActiveX控件、LabWindows/CVI C代码库或一系列LabView VI,因此可以在任何编程环境中使用它。
  DataSocket Server是一个轻量级的独立组件。DataSocket API访问DSTP对象时就是通过访问它来实现现场数据的传输的。DataSocket Server通过自动管理与客户端的连接,从而极大简化了TCP编程,用户可以不用了解任何TCP/IP编程的知识。
  通过DataSocket Server广播数据需要3种“角色”——发布者(Publisher)、DataSocket Server和接收者(Subsciber)。发布者通过DataSocket API向DataSocket Server写入数据,接收者通过DataSocket API从DataSocket Server读取数据。发布者和接收者都是DataSocket Server的客户端。利用DataSocket Server实现现场数据的网络共享时,发布者、接收者和服务器之间的关系如图2所示。
  
  3 数据采集卡共享的设计方案
  
  NI公司提供的RDA(remote device access)技术可实现对远程数据采集卡的访问。用户可以利用Measurement & Automation Explorer来进行远程数据采集卡的设置,设置完成后,在本地机上就会出现一块虚拟的数据采集卡,并且分配有相应的设备号。为了避免多个客户机同时访问一个远程数据采集卡时发生冲突,导致程序出错,必须考虑在服务器端增加任务管理程序,以对客户机的请求进行管理。而在客户机中,用户先要向服务器提出申请,服务器响应后,才能调用本机LabView中的采集程序,启动配置远程采集卡,并进行数据采集。RDA Server会自动把采集到的数据传送回客户机。如果采集卡正被占用,则服务器不会响应新的客户机请求,这样可以避免多个客户机同时访问一个远程采集卡时发生的冲突。数据采集卡共享示意图如图2所示。
  3.1 RDA技术实现远程数据采集的配置
  利用RDA(Remote Device Access)技术共享服务器上的设备,在客户机上编程直接控制服务器上的DAQ设备,实现远程数据采集。
  RDA在编程方面与使用本机DAQ设备完全一样。在LabView中利用RDA技术实现远程数据采集的步骤如下:
  第一步,配置RDA服务器。RDA服务器需要安装NI-DAQ6.0(或更高版本)以及DAQ设备,设置服务器的IP地址,例如192.168.0.1,其子网掩码为255.255.255.0。然后启动服务器上的Remote Device Access Server即可。若有必要,可以在DAQ设备的属性对话框中设置RDA访问密码。
  第二步,设置客户机。RDA客户端应安装与服务器相同版本的NI-DAQ,否则DAQ设备会无法连接。设置客户机的IP地址,例如192.168.0.2,其子网掩码为255.255.255.0。RDA客户机的设置比较复杂,通常按照下列步骤进行:
  1)在客户机的MAX(Measurement & Automation Explorer)左侧目录树中的Devices and Interfaces项的右键弹出菜单中选择“Create New”,在Create New窗口选择RDA/Ethernet Device。
  2)在随后出现的Select Remote Computer对话框中输入服务器的IP地址或计算机名。
  3)在随后出现的System对话框中设定设备号,若服务器上的DAQ设备设置了RDA访问密码,则还需在Password栏中输入正确的密码。
  至此,就完成了客户机上RDA设备的添加,客户机的MAX左侧目录树中会出现这个RDA设备。从此以后,用户可以像在本地一样操作该设备。在客户机上直接编写DAQ软件,实现远程数据采集。
  3.2 服务器工作流程
  启动服务器程序,自动运行DS Server Manager和RDA Server程序。接着,读取用户请求信息,如果没有请求信息,则继续扫描;如果有客户机请求信息,则对客户机请求信息按照请求时间或者优先级排序,给优先级最高者以许可访问响应信息。然后。等待客户机返回任务完成信息,如果接到完成信息,则完成一次循环,并重新读取客户请求信息,开始新的循环。

[1] [2]  下一页

Tags:

作者:王鹏冲 梁金土 林 鹏
  • 好的评价 如果您觉得此文章好,就请您
      0%(0)
  • 差的评价 如果您觉得此文章差,就请您
      0%(0)

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论