关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > 基于LabVIEW的数控机床网络测控系统——总体设计 (二)

基于LabVIEW的数控机床网络测控系统——总体设计 (二)

作者:时间:2015-03-06来源:网络收藏

  3.3通用数据采集卡的驱动设计

本文引用地址:http://www.eepw.com.cn/article/270594.htm

  系统中,在数据采集卡部分,提供了大量的数据采集子程序,这些驱动程序从简单到高级,可以提供给用户使用,但这些子程序只支持NI的数据采集卡(DAQ)以及少数公司开发的支持平台的数据采集卡,而这些卡的价格较昂贵,一般的用户很难接受。因此,为了能在平台上使用普通数据采集,有以下几种方案可以解决LabVIEW与普通数据采集卡驱动的问题。

  3.3.1基于LabVIEW的普通国产采集卡的驱动方法

  为了解决LabVIEW与普通国产采集卡的接口驱动问题,有三种可行方案:

  ①直接用LabVIEW的InPort , OutPort图标编程方式;

  ②用LabVIEW的CIN图标生成的板卡卡驱动程序的子VI方式;

  ③用LabVIEW的Call Library Functions图标,动态链接数据采集卡的。DLL库函数方式。

  (1)用In Port和Out Port直接编程方式(I/O方式)驱动

  LabVIEW中有两个直接访问底层设备的图标,即In Port.vi和Out Port.vi.这两个函数分别完成从设备的物理地址直接读取和输出数据功能,通过直接读写寄存器可以提高数据的传输速率,采集卡的工作方式为软件驱动,查询方式为读取采样结果。In Port.vi和Out port.vi图标存放在Memory子模板上。直接读取端口方式实现起来比较简单,适用于采集精度要求不高的情况。对于精度要求高且复杂的采集系统,如包含对内存大量操作的情况,这种方式就不能满足要求[19]。

  (2)调用C语言源代码方式(CINF方式)驱动

  在实际设计中,经常会碰到某些想实现的功能,但利用LabVIEW图标实现和处理又不是很方便灵活,而利用其他编程语言很容易实现的情况。这时就需要用LabVIEW中的接口图标,以实现LabVIEW与其他语言直接的连接,CIN图标就是其中的一种。

  它是LabVIEW与C语言的接口,CIN通过输入、输出端口实现两种语言之间的数据传递。输入、输出端口的个数可由设计者根据实际需要确定。当LabVIEW的程序运行到CIN节点时,数据由CIN的输入端口传递给C源代码图标,程序去执行C源代码,代码执行完后,得到的数据结果由CIN的输出端返回给LabVIEW [20]。

  (3)调用动态连接库DLL的方式(CLF方式)驱动

  动态连接库(DLL)是一种应用程序在运行时与库文件连接起来的技术,是在应用程序运行时被装入和链接的,而不是把源代码复制到应用程序中去,因此使用动态链接库可以实现多个应用程序直间代码和资源的共享。不过动态链接库常由数据采集卡生产厂商提供,通过LabVIEW的CLF节点调用。如果厂商不提供DLL动态连接库,用户就要自己编写,这就对用户的编程水平有了进一步的要求。不过使用动态链接库有其自身的有点,如方便的实现共享代码、资源和数据;DLL的编写与语言无关;隐藏实现细节;节省内存等;

  3.3.2调用动态连接库DLL的方式实现板卡驱动的设计

  由于该设计平台中,选用的国产普通采集卡,需要自己编写板卡驱动,鉴于以上几种方法的比较,本文选用的是调用动态连接库DLL的方式(CLF方式)驱动。通过LabVIEW的CLF节点调用的实现如下,调用动态连接库的配置方式详见下图3.8所示。

  

调用动态连接库的配置方式

上一页 1 2 下一页

关键词: LabVIEW 数控机床

评论


相关推荐

技术专区

关闭