院校资源 关于NI 培训与活动 NI Developer Zone 技术支持 应用案例 产品与服务 联系NI MyNI

NI-DAQmx专业工具


您所在的位置:产品介绍>数据采集>数据采集软件>NI-DAQmx专业开发工具
免费技术咨询? Call 800 8203622或021-50509800
NI-DAQmx支持主流的NI数据采集 (DAQ) 产品,包括M系列多功能DAQ设备,它也是大多数NI DAQ设备所包含的测量服务软件的基础。NI-DAQmx所提供的远远不只是高性能的、可靠的驱动程序支持,它还有许多为节省用户时间所设计的软件特性。本教程将介绍最新的针对专业开发人员的工具,并提供范例程序以在实际操作中介绍各种特性。

内容提要:
  • 专业工具#1:虚拟通道校准
  • 专业工具#2:专用于到磁盘的高速数据流的数据压缩
  • 专业工具#3:可编程地保存NI-DAQmx任务、通道和标定设置等
  • 专业工具#4:NI-DAQmx模拟设备
  • 专业工具#5:软件事件
  • 更多关于NI-DAQmx的信息

专业工具#1:虚拟通道校准

开发数据采集应用的工程师和科学家们现在可以使用新的通道校准向导,快速地校准一个通道的整个测量路径——从传感器直到测量设备——然后将校准结果应用到该通道上的每个测量中。工程师使用外部校准参考来校准测量,并将测量值与真实值相比较。这种校准方法还避免了由传感器、信号条理和线路所引起的误差,因此弥补了设备内部校准的不足。很多现有的驱动程序只能提供设备校准,而忽略了由测量通路的其他部分所引入的误差。

开发人员可以在DAQ Assistant (DAQ助手) 中使用通道校准向导(Channel Calibration Wizard)对模拟输入虚拟通道进行校准。
遵循以下的步骤,您可以完成对一个虚拟通道的校准,这些步骤也包含在NI-DAQmx的帮助文档中。

1. 选择一个已有的任务或全局通道 (global channel) 或创建一个新的任务或全局通道。
2. 点击DAQ Assistant中的 “Calibration”标签

图1. 使用NI-DAQmx校准模拟输入虚拟通道

3. 从通道列表中选择一个或多个虚拟通道。您只能选择一种类型的虚拟通道。如果您选择了属于不同测量种类的虚拟通道,校准按钮将会失效。

4. 点击“Calibration”,通道校准向导就会弹出。

5. 依照步骤完成被选虚拟通道的校准工作。您可以校准您所需的任意多的数据点,并生成一个校准表格。通道校准向导会为您所校准过的每个虚拟通道存储一组校准属性数据。选择DAQ Assistant中calibration标签的“Properties”,您可以查看校准历史、验证校准数据,重新校准选定的虚拟通道,或生成一个校准报告。

6. 校准虚拟通道之后,您可以点击“Enable Calibration”,以激活或关闭校准功能。如果“Enable Calibration”设为失效状态,该校准数据将被保存,但不会应用到选定的虚拟通道上。如果您要删除一个校准,可以在通道列表中选择一个或多个虚拟通道,然后点击“Delete Calibration”。


专业工具#2:专用于到磁盘的高速数据流的数据压缩

在一个基于PC的数据采集系统中,影响高速流盘的主要因素有磁盘I/O带宽,CPU带宽,和总线带宽。假使专业开发人员有足够的带宽支持磁盘I/O和总线,NI-DAQmx数据压缩可以为高速流盘应用提供可观的性能提升。

因为在搬移和缩放由设备所采集的数据时,NI-DAQmx使用了CPU带宽,所以它从根本上影响了磁盘数据流的性能。因此,在CPU带宽受限制的系统当中,NI-DAQmx有效地使用CPU是非常关键的。

在最初发布之后,NI-DAQmx已经经历了多次优化,以降低读写时的CPU使用率。例如,从NI-DAQ 7.3版本到NI-DAQ 7.4版本,缩放模拟输入基准的性能已经从8%上升到60%,未缩放模拟输入基准的性能则从12%上升到40%。性能的提高直接说明了在CPU带宽受限的系统中流盘数据吞吐量的提高。

NI-DAQmx实现了一个极其简单的数据压缩格式。采样末端的比特被简单地丢弃,采样结果被打包并存储在内存当中。开发人员可以配置NI-DAQmx,以决定丢弃一个或多个采样中最无足轻重的比特。例如,您可以将一个通道配置为24位分辨率,并指定每个32位采样数据只返回最高的20位。整整12个比特被丢弃,包括8个未使用的比特,这使得所需的磁盘空间减少了37.5%。在某些情况下,这种做法并没有“丢失”任何数据,因为这些采样已经包含了未使用的比特。例如,使用12位分辨率通道和16位采样数据的情况下,每个采样数据就包含了4个未使用比特。您可以没有任何损失地丢弃这4个比特,同时使所需的磁盘空间减少25%。NI-DAQmx没有应用任何其他有损或无损的压缩算法,如LZW或JPEG等。

图2. 使用NI-DAQmx数据压缩提升硬盘高速数据流性能


专业工具#3:可编程地保存NI-DAQmx任务、通道和标定设置等

许多数据采集系统的专业开发人员最终都需要将开发完成的系统部署到一个或多个的目标系统上使用。这里的部署是指开发好一个应用程序,然后将它发布到另一台计算机上运行。部署一个应用程序前,开发人员需要先将它保存,包括应用程序本身和系统所需的任何配置信息。在NI-DAQmx和Measurement & Automation Explorer (MAX) 中,使用MAX Export向导,用户可以将配置信息导出,包括设备、任务,通道和标定等配置信息。开发人员只需简单地在目标系统上导入配置信息就可以完成部署工作。

使用NI-DAQmx 7.4及以上版本,专业开发人员现在可以有计划地创建和保存任务,全局通道以及标定。计划保存的对象将出现在MAX中,并可供DAQ助手和您所有的应用程序使用。这使得开发人员在部署配置信息时有了另一种选择。这种方法使用MAX导入向导,而不需要开发人员导入任务、通道和标定等配置。

图3. 开发人员可以使用NI-DAQmx可编程地创建和保存任务、通道和标定


可编程地保存任务、通道和标定可以帮助专业开发人员简化系统配置,进行多点部署,减少错误概率并免除调试工作。


专业工具#4:NI-DAQmx模拟设备

从NI-DAQmx 7.4版本开始,数据采集系统的开发人员可以创建NI-DAQmx模拟设备了。您可以选择NI-DAQmx所支持的任何设备,并将它作为模拟设备添加到MAX硬件配置中。这使得模拟设备可与任何NI应用软件共同使用。

图4. 使用NI-DAQmx创建模拟设备

在没有任何物理硬件的情况下,NI-DAQmx模拟设备可以用来创建并运行NI-DAQmx程序,或试用如DAQ Assistant或SignalExpress等软件工具。如果您想在没有硬件的情况下了解设备的功能,也可以使用模拟设备。

您可以像验证真实设备上的任务一样,验证使用模拟设备的任务。如果某种属性被设置为一个非法值,模拟设备将返回和真实设备完全一样的错误信息。所有任务需要的资源都将为模拟设备保留。RTSI线、PXI触发线、DMA通道、计数器等等都将和在真实设备上一样保留或计数。

NI-DAQmx也允许开发人员编程使用NI-DAQmx设备属性节点,以确定一个设备是否是模拟设备。

图5.编程确定一个设备是否是模拟设备


专业工具#5:软件事件

许多开发人员,特别是那些使用基于文本编程语言的开发人员,已经习惯于开发基于事件的应用和使用回调函数来处理事件。NI-DAQmx现在专为使用基于文本编程语言的专业开发人员提供了一套软件事件。

软件事件为一组DAQ事件提供了一个异步通知机制。和硬件事件不同,软件事件并不需要一个线程等待直到数据可用。使用基于事件的编程,开发人员不必开发多线程应用,而只需编写一个在等待数据的同时持续工作的应用。

NI-DAQmx包括下列软件事件:
  • 每采集N个采样到缓存事件(Every N Samples Acquired Into Buffer Event)-当用户定义的采样数从设备写入PC缓存时发生。此事件仅在支持缓存任务的设备上有效。
  • 从缓存传送每N个采样事件(Every N Samples Transferred From Buffer Event)-当用户定义的采样数从PC缓存写入设备时发生。此事件仅在支持缓存任务的设备上有效。
  • 完成事件(Done Event)-当任务执行完成时发生。
  • 信号事件(Signal Event)-当特定的硬件事件发生时发生。特定事件包括:
  • 检测变化事件(Change Detection Event)-当DIO设备检测到数据线上的变化时发出的一种信号。
  • 计数器输出事件(Counter Output Event)-当计数器到达最大值时发出的一种信号。
  • 采样完成事件(Sample Complete Event)-当设备从任务中的每个通道均采集了一个数据后发生的一种信号。

更多关于NI-DAQmx的信息

NI-DAQmx测量服务软件除了本文介绍专业工具之外,还包括其他的软件工具和特性。为了解更多关于NI-DAQmx的信息,请访问以下的其他资源:
什么是即测即用(Measurement-Ready)的数据采集系统?
需要帮助吗?免费咨询电话:8008203622,或点击“请打电话给我!”,马上寻求NI技术工程师的帮助!


图4. 使用NI-DAQmx创建模拟设备

在没有任何物理硬件的情况下,NI-DAQmx模拟设备可以用来创建并运行NI-DAQmx程序,或试用如DAQ Assistant或SignalExpress等软件工具。如果您想在没有硬件的情况下了解设备的功能,也可以使用模拟设备。

您可以像验证真实设备上的任务一样,验证使用模拟设备的任务。如果某种属性被设置为一个非法值,模拟设备将返回和真实设备完全一样的错误信息。所有任务需要的资源都将为模拟设备保留。RTSI线、PXI触发线、DMA通道、计数器等等都将和在真实设备上一样保留或计数。

NI-DAQmx也允许开发人员编程使用NI-DAQmx设备属性节点,以确定一个设备是否是模拟设备。

图5.编程确定一个设备是否是模拟设备


专业工具#5:软件事件

许多开发人员,特别是那些使用基于文本编程语言的开发人员,已经习惯于开发基于事件的应用和使用回调函数来处理事件。NI-DAQmx现在专为使用基于文本编程语言的专业开发人员提供了一套软件事件。

软件事件为一组DAQ事件提供了一个异步通知机制。和硬件事件不同,软件事件并不需要一个线程等待直到数据可用。使用基于事件的编程,开发人员不必开发多线程应用,而只需编写一个在等待数据的同时持续工作的应用。

NI-DAQmx包括下列软件事件:
  • 每采集N个采样到缓存事件(Every N Samples Acquired Into Buffer Event)-当用户定义的采样数从设备写入PC缓存时发生。此事件仅在支持缓存任务的设备上有效。
  • 从缓存传送每N个采样事件(Every N Samples Transferred From Buffer Event)-当用户定义的采样数从PC缓存写入设备时发生。此事件仅在支持缓存任务的设备上有效。
  • 完成事件(Done Event)-当任务执行完成时发生。
  • 信号事件(Signal Event)-当特定的硬件事件发生时发生。特定事件包括:
  • 检测变化事件(Change Detection Event)-当DIO设备检测到数据线上的变化时发出的一种信号。
  • 计数器输出事件(Counter Output Event)-当计数器到达最大值时发出的一种信号。
  • 采样完成事件(Sample Complete Event)-当设备从任务中的每个通道均采集了一个数据后发生的一种信号。

更多关于NI-DAQmx的信息

NI-DAQmx测量服务软件除了本文介绍专业工具之外,还包括其他的软件工具和特性。为了解更多关于NI-DAQmx的信息,请访问以下的其他资源:
什么是即测即用(Measurement-Ready)的数据采集系统?
需要帮助吗?免费咨询电话:8008203622,或点击“请打电话给我!”,马上寻求NI技术工程师的帮助!


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

Info Code


新一代自动化测试