院校资源 关于NI 培训与活动 NI Developer Zone 技术支持 应用案例 产品与服务 联系NI MyNI
学会NI-DAQmx中的十个函数解决80%的数据采集应用问题
您所在的位置:产品介绍>数据采集>数据采集软件>学会NI-DAQmx中的十个函数解决80%的数据采集应用问题

自从NI-DAQmx发布以来,NI数据采集(DAQ)用户就充分利用了它的许多特性,这些特性是为节省开发时间和提高数据采集应用程序的性能而设计的。

一个能节省相当大一部分开发时间的特性是NI-DAQmx应用程序编程接口(API),它在各种设备功能和设备系列中都是相同的。这就意味着一个多功能设备的所有功能可由同样的函数集编程得到(模拟输入、模拟输出、数字I/O和计数器)。而且,一个数字I/O设备和一个模拟输出设备都可使用相同的函数集编程得到。在LabVIEW中,由于多态机制,因而这是可以实现的。一个多态的VI接受各种数据类型以用于一个或多个输入和/或输出终端。NI-DAQmx API在它所支持的所有编程环境中也是保持一致的。您仅仅需要学会如何使用一个单一的函数集就可以在多种编程环境中对大部分NI数据硬件进行编程。

NI-DAQmx能够提高您的开发经验的另一个特性是DAQ Assistant。这个工具通过一个图形化接口来配置简单和复杂的数据采集任务,从而帮助您无需编程即可创建您的应用程序。而且,同步,一个通常很难实现的过程(因为触发和/或时钟信号必须手动传递),利用NI-DAQmx则可以毫不费力地实现,NI-DAQmx会自动地完成单一设备上不同功能区域间和多个设备之间的信号传递。

您使用NI-DAQmx所建立的数据采集应用程序是受益于一个为实现最大化性能而设计的体系结构。这是一个高效的状态模型从而免去了不必要的重复配置。由于去除了开头,配置和采集就进行了优化。此外,您可以达到超过50Ks/S的单点I/O速率。由于采用内存映射寄存器,这种性能水平是可以实现的。

NI-DAQmx体系结构的另一个重要的特性是测量多线程(Measurement Multithreading)。自从NI-DAQmx实现多线程以来,多个数据采集操作可以同时进行,极大地提高了包含多个操作的应用程序的性能。它也极大地简化了对这些应用的编程。

关于NI-DAQmx益处的详细信息可以在文档——NI-DAQmx的优势——中获得。为了开始利用这些优势,您只需要学习几个函数。事实上,十个NI-DAQmx函数提供的功能即可解决80%的数据采集应用。这些函数将会详细地描述以帮助您理解它们的功能和使用它们的应用类型。

注意:本文档中所有引用的例程都可在以下位置获得:

LabVIEW帮助>>寻找例程>>硬件输入和输出>>DAQmx
LabWindows/CVI帮助>>寻找例程>>硬件输入和输出>>DAQmx
.NET…\National Instruments\MeasurementStudio70\DotNET\Examples\DAQmx
目录:
  • DAQ Assistant(数据采集助手)
  • NI-DAQmx创建虚拟通道函数
  • NI-DAQmx触发函数
  • NI-DAQmx定时函数
  • NI-DAQmx开始任务函数
  • NI-DAQmx读取函数
  • NI-DAQmx写入函数
  • NI-DAQmx等待直至完成函数
  • NI-DAQmx清除任务函数
  • NI-DAQmx属性节点
DAQ Assistant(数据采集助手)

工具>>创建/编辑 DAQmx任务[CVI]
项目>>添加新项目>>DAQmx任务[.NET]

DAQ Assistant是一个图形化的界面,用于交互式地创建、编辑和运行NI-DAQmx虚拟通道和任务。一个NI-DAQmx虚拟通道包括一个DAQ设备上的物理通道和对这个物理通道的配置信息,例如输入范围和自定义缩放比例。一个NI-DAQmx任务是虚拟通道、定时和触发信息、以及其他与采集或生成相关属性的组合。在下图中,DAQ Assistant配置成完成一个应变测量。

下面的文档叙述了DAQ Assistant在LabVIEW、LabWindows/CVI和.NET中的使用。
DAQ ASSISTANT也可以生成代码来配置和/或完成特定的采集或生成。这个LabVIEW中的过程在DAQ ASSISTANT帮助中,以及文档——使用DAQ ASSISTANT来自动生成LabVIEW代码——中进行了叙述。下面显示了一个DAQ ASSISTANT的实例以及相应的所自动生成的配置和LabVIEW代码例程。
与DAQ ASSISTANT所能提供的相比,某些数据采集应用程序需要更大的灵活性和/或性能。这些应用程序需要下面所叙述的简单、但功能强大的NI-DAQmx函数。

NI-DAQmx创建虚拟通道函数

库>>NI-DAQmx>>通道创建/配置[CVI]
任务.通道.创建通道属性[.NET]

NI-DAQmx创建虚拟通道函数创建了一个虚拟通道并且将它添加成一个任务。它也可以用来创建多个虚拟通道并将它们都添加至一个任务。如果没有指定一个任务,那么这个函数将创建一个任务。NI-DAQmx创建虚拟通道函数有许多的实例。这些实例对应于特定的虚拟通道所实现的测量或生成类型。下面是四个不同的NI-DAQmx创建虚拟通道VI实例的例程。


NI-DAQmx创建虚拟通道函数的输入随每个函数实例的不同而不同,但是,某些输入对大部分函数的实例,即使不是全部,也是相同的。例如一个输入需要用来指定虚拟通道将使用的物理通道(模拟输入和模拟输出)、线数(数字)或计数器。此外,模拟输入、模拟输出和计数器操作使用最小值和最大值输入来配置和优化基于信号最小和最大预估值的测量和生成。而且,一个自定义的刻度可以用于许多虚拟通道类型。在下面的LabVIEW程序框图中,NI-DAQmx创建虚拟通道VI用来创建一个热电偶虚拟通道。
供检验的实例:
LabVIEWWrite Dig Port.vi
Cont Acq Thermocouple Samples-Int Clk.vi
CVIWrite Dig Port
Cont Thrmcpl Samples-Int Clk
.NETWriteDigPort
ContAcqThermocoupleSamples_IntClk
    ......


    更多相关连接

    E-mail: china.info@ni.com Tel: 021-50509800/800 8203622 Fax: 021-65556244

    需要帮助吗?免费电话:800 820-3622,或点击“请NI工程师回电!”,马上申请NI测控专家的专业技术咨询!

    Info Code


    online brochure