属性节点可以实时改变前面板对象的颜色、大小和是否可见等属性,从而达到最佳的人机交互效果。由于不同类型前面板对象的属性种类繁多,很难一一介绍,所以下面仅以数值控件来介绍部分属性节点的用法。图4-112 创建多个属性节点方法二图4-113 右键选中属性当输入值为0时,前面板对象处于正常状态,用户可以访问前面板对象。在对话框上部的下拉列表框中选择“前面板”,对话框中会出现图4-116所示的属性设定选项,可以在其中设置闪烁速度。......
2023-11-07
完成DAQ安装后,在函数面板中将显示DAQ节点函数,下面对常用的DAQmx节点进行介绍。
1.DAQmx 创建虚拟通道
NI-DAQmx创建虚拟通道函数创建了一个虚拟通道并且将它添加成一个任务。它也可以用来创建多个虚拟通道并将它们都添加至一个任务。如果没有指定一个任务,那么这个函数将创建一个任务。NI-DAQmx创建虚拟通道函数有许多实例。这些实例对应于特定的虚拟通道所实现的测量或生成类型。节点的图标及端口定义如图8-25所示。图8-26是4个不同的NI-DAQmx创建虚拟通道VI实例的例程。
图8-25 “DAQmx 创建虚拟通道”节点图标及端口定义
图8-26 DAQmx创建的不同类型的虚拟通道
NI-DAQmx创建虚拟通道函数的输入随每个函数实例的不同而不同,但是,某些输入对大部分函数的实例是相同的。例如一个输入需要用来指定虚拟通道将使用的物理通道(模拟输入和模拟输出)、线数(数字)或计数器。此外,模拟输入、模拟输出和计数器操作使用最小值和最大值输入来配置和优化基于信号最小和最大预估值的测量和生成。而且,一个自定义的刻度可以用于许多虚拟通道类型。在图8-27所示的LabVIEW程序框图中,NI-DAQmx创建虚拟通道VI用于创建一个热电偶虚拟通道。
2.DAQmx 清除任务
NI-DAQmx清除任务函数可以清除特定的任务。如果任务现在正在运行,那么这个函数首先中止任务然后释放掉它所有的资源。一旦一个任务被清除,那么它就不能被使用,除非重新创建它。因此,如果一个任务还会使用,那么NI-DAQmx结束任务函数就必须用来中止任务,而不是清除它。DAQmx清除任务的节点的图标及端口定义如图8-28所示。
图8-27 利用创建虚拟通道VI 创建热电偶虚拟通道
图8-28 DAQmx清除任务的节点图标及端口定义
对于连续的操作,NI-DAQmx清除任务函数必须用于结束真实的采集或生成。在图8-29所示的LabVIEW程序框图中,一个二进制数组不断输出直至等待循环退出和NI-DAQmx清除任务VI执行。
图8-29 DAQmx Clear Task应用实例
3.DAQmx读取
NI-DAQmx读取函数需要从特定的采集任务中读取采样。这个函数的不同实例允许选择采集的类型(模拟、数字或计数器)、虚拟通道数、采样数和数据类型。其节点的图标及端口定义如图8-30所示。图8-31是4个不同的NI-DAQmx读取VI实例的例程。
图8-30 DAQmx 读取的节点图标及端口定义
图8-31 不同NI-DAQmx读取VI的实例
可以读取多个采样的NI-DAQmx读取函数的实例包括一个输入来指定在函数执行时读取数据的每通道采样数。对于有限采集,通过将每通道采样数指定为-1,这个函数就等待采集完所有请求的采样数,然后读取这些采样。对于连续采集,将每通道采样数指定为-1,可以使得这个函数在执行的时候读取所有现在保存在缓冲中可得的采样。在如图8-32所示的LabVIEW程序框图中,NI-DAQmx读取VI已经被配置成从多个模拟输入虚拟通道中读取多个采样并以波形的形式返回数据。而且,既然每通道采样数输入已经配置成常数10,那么每次VI执行的时候它就会从每一个虚拟通道中读取10个采样。
图8-32 从模拟通道读取多个采样值实例
4.DAQmx开始任务
NI-DAQmx开始任务函数可以显式地将一个任务转换到运行状态。在运行状态,这个任务将完成特定的采集或生成。如果没有使用NI-DAQmx启动任务函数,那么在NI-DAQmx读取函数执行时,一个任务可以隐式地转换到运行状态,或者自动开始。这个隐式的转换也发生在如果NI-DAQmx开始任务函数未被使用而且NI-DAQmx写入函数与它相应指定的自启动输入一起执行。其节点的图标及端口定义如图8-33所示。
虽然不是经常需要,但是使用NI-DAQmx启动任务函数来显式地启动一个与硬件定时相关的采集或生成任务是更值得选择的。而且,如果NI-DAQmx读取函数或NI-DAQmx写入函数将会执行多次,例如在循环中, NI-DAQmx启动任务函数就应当使用。否则,任务的性能将会降低,因为它将会重复地启动和停止。图8-34所示的LabVIEW程序框图演示了不需要使用NI-DAQmx启动函数的情形,因为模拟输出生成仅仅包含一个单一的、软件定时的采样。
图8-33 DAQmx开始任务的节点图标及端口定义
图8-34 模拟输出一个单一的采样
图8-35所示的LabVIEW程序框图演示了应当使用NI-DAQmx启动函数的情形,因为NI-DAQmx读取函数需要执行多次以便在计数器中读取数据。
图8-35 多次读取计数器数据实例
5.DAQmx停止任务
停止任务。任务经过该节点后将进入DAQmx Start Task VI节点之前的状态。
如果不使用DAQmx 开始任务和DAQmx停止任务,而只是多次使用DAQmx 读取或DAQmx写入,例如在一个循环里,这将会严重降低应用程序的性能。其节点的图标及端口定义如图8-36所示。
图8-36 DAQmx 停止任务的节点图标及端口定义
6.DAQmx定时
NI-DAQmx定时函数配置定时用于硬件定时的数据采集操作。这包括指定操作是否连续或有限、为有限的操作选择用于采集或生成的采样数量以及在需要时创建一个缓冲区。其节点的图标及端口定义如图8-37所示。
图8-37 DAQmx 定时的节点图标和端口定义
对于需要采样定时的操作(模拟输入、模拟输出和计数器),NI-DAQmx定时函数中的采样时钟实例设置了采样时钟的源(可以是一个内部或外部的源)和它的速率。采样时钟控制了采集或生成采样的速率。每一个时钟脉冲为每一个包含在任务中的虚拟通道初始化一个采样的采集或生成。在图8-38中,LabVIEW程序框图演示了使用NI-DAQmx定时VI中的采样时钟实例来配置一个连续的模拟输出生成(利用一个内部的采样时钟)。
(www.chuimin.cn)
图8-38 DAQmx Timing应用实例之一
为了在数据采集应用程序中实现同步,如同触发信号必须在一个单一设备的不同功能区域或多个设备之间传递一样,定时信号也必须以同样的方式传递。NI-DAQmx也是自动地实现这个传递。所有有效的定时信号都可以作为NI-DAQmx定时函数的源输入。例如,在如图8-39所示的DAQmx定时VI中,设备的模拟输出采样时钟信号作为同一个设备模拟输入通道的采样时钟源,而无须完成任何显式的传递。
图8-39 模拟输出时钟作为模拟输入时钟源
大部分计数器操作不需要采样定时,因为被测量的信号提供了定时。NI-DAQmx定时函数的隐式实例应当用于这些应用程序中。例如,在如图8-40所示的DAQmx定时VI中,设备的模拟输出采样时钟信号作为同一个设备模拟输入通道的采样时钟源,而无须完成任何显式的传递。
图8-40 DAQmx Timing应用实例之二
某些数据采集设备支持将握手作为它们数字I/O操作的定时信号的方式。握手使用与外部设备之间请求和确认定时信号的交换来传输每一个采样。NI-DAQmx定时函数的握手实例为数字I/O操作配置握手定时。
7.DAQmx触发
NI-DAQmx触发函数配置一个触发器来完成一个特定的动作。最为常用的动作是一个启动触发器(Start Trigger)和一个参考触发器(Reference Trigger)。启动触发器初始化一个采集或生成。参考触发器确定所采集的采样集中的位置,在那里前触发器数据(Pre Trigger)结束,而后触发器(Post Trigger)数据开始。这些触发器都可以配置成发生在数字边沿、模拟边沿或者当模拟信号进入或离开窗口。在下面的LabVIEW程序框图中,利用NI-DAQmx触发VI,启动触发器和参考触发器都配置成发生在一个模拟输入操作的数字边沿。其节点的图标及端口定义如图8-41所示。
图8-41 DAQmx 触发的节点图标和端口类型
在图8-42所示的LabVIEW程序框图中,利用NI-DAQmx触发VI,启动触发器和参考触发器都配置成发生在一个模拟输入操作的数字边沿。
图8-42 DAQmx Trigger应用实例
许多数据采集应用程序需要一个单一设备不同功能区域的同步(例如,模拟输出和计数器)。其他的则需要多个设备进行同步。为了达到这种同步性,触发信号必须在一个单一设备的不同功能区域和多个设备之间传递。NI-DAQmx自动地完成了这种传递。当使用NI-DAQmx触发函数时,所有有效的触发信号都可以作为函数的源输入。例如,在图8-43所示的NI-DAQmx触发VI中,用于设备2的启动触发器信号可以用作设备1的启动触发器的源,而无须进行任何显式的传递。
图8-43 用设备2的触发信号触发设备1
8.DAQmx结束前等待
NI-DAQmx结束前等待,函数在结束之前等待数据采集操作的完成。这个函数应当保证在任务结束之前完成了特定的采集或生成。最为普遍的是,NI-DAQmx等待直至完成函数用于有限操作。一旦这个函数完成了执行,有限采集或生成就完成了,而且无须中断操作就可以结束任务。此外,超时输入允许指定一个最大的等待时间。如果采集或生成不能在这段时间内完成,那么这个函数将退出而且会生成一个合适的错误信号。其节点的图标及端口定义如图8-44所示。图8-45所示LabVIEW 程序框图中的NI-DAQmx等待直至完成(Wait Until Done)VI用来验证有限模拟输出操作在任务清除之前就已经完成。
图8-44 DAQmx 结束前等待函数的节点图标和端口类型
9.DAQmx写入
NI-DAQmx写入函数将采样写入指定的生成任务中。这个函数的不同实例允许选择生成类型(模拟或数字)、虚拟通道数、采样数和数据类型。其节点的图标及端口定义如图8-46所示。图8-47所示是4个不同的NI-DAQmx写入VI实例的例程。
图8-45 Wait Until Done节点应用实例
图8-46 DAQmx 写入函数的节点图标及端口定义
图8-47 4个不同NI-DAQmx写入VI的实例
每一个NI-DAQmx写入函数实例都有一个自启动输入来确定,如果还没有显式地启动,那么这个函数将隐式地启动任务。正如在本文NI-DAQmx启动任务部分所讨论的那样,NI-DAQmx启动任务函数应当用于显式地启动一个使用硬件定时的生成任务。它也应当用来最大化性能,如果NI-DAQmx写入函数将会多次执行。对于一个有限的模拟输出生成,图8-48所示的LabVIEW程序框图包括一个NI-DAQmx 写入VI的自启动输入值为“假”的布尔值,因为生成任务是硬件定时的。NI-DAQmx写入VI已经被配置将一个通道模拟输出数据的多个采样以一个模拟波形的形式写入任务中。
图8-48 DAQmx Write应用实例
10.DAQmx属性节点
NI-DAQmx属性节点提供了对所有与数据采集操作相关属性的访问,如图8-49所示。这些属性可以通过写入NI-DAQmx属性节点设置,而且当前的属性值可以从NI-DAQmx属性节点中读取。而且,在LabVIEW中,一个NI-DAQmx属性节点可以用于写入多个属性或读取多个属性。例如,图8-50所示的LabVIEW NI-DAQmx定时属性节点先设置了采样时钟的源,然后读取采样时钟的源,最后设置采样时钟的有效边沿。
图8-49 DAQmx的属性节点
图8-50 DAQmx Timing属性节点使用
许多属性可以使用前面讨论的NI-DAQmx函数来设置。例如,采样时钟源和采样时钟有效边沿属性可以使用NI-DAQmx定时函数来设置。然而,一些相对不常用的属性只可以通过NI-DAQmx属性节点来访问。在图8-51所示的LabVIEW程序框图中,一个NI-DAQmx通道属性节点用来使能硬件低通滤波器,然后设置滤波器的截止频率来用于应变测量。
图8-51 DAQmx属性节点的使用实例
11.DAQ助手
DAQ 助手是一个图形化的界面,用于交互式地创建、编辑和运行NI-DAQmx虚拟通道和任务。一个NI-DAQmx虚拟通道包括一个DAQ设备上的物理通道和对这个物理通道的配置信息,例如输入范围和自定义缩放比例。一个NI-DAQmx任务是虚拟通道、定时和触发信息以及其他与采集或生成相关属性的组合。DAQ Assistant配置完成一个应变测量。其节点图标如图8-52所示。
图8-52 未配置前的DAQ Assistant图标
有关LabVIEW 2015虚拟仪器程序设计的文章
属性节点可以实时改变前面板对象的颜色、大小和是否可见等属性,从而达到最佳的人机交互效果。由于不同类型前面板对象的属性种类繁多,很难一一介绍,所以下面仅以数值控件来介绍部分属性节点的用法。图4-112 创建多个属性节点方法二图4-113 右键选中属性当输入值为0时,前面板对象处于正常状态,用户可以访问前面板对象。在对话框上部的下拉列表框中选择“前面板”,对话框中会出现图4-116所示的属性设定选项,可以在其中设置闪烁速度。......
2023-11-07
LabVIEW被广泛应用于各种行业中,包括汽车、半导体、航空航天、交通运输、科学实验、电信、生物医药与电子等。在产品的生产过程中,工程师们也可以利用LabVIEW进行生产测试,监控各个产品的生产过程。总之,LabVIEW可用于各行各业产品开发的阶段。G语言就是这样一种语言,而LabVIEW则是G语言的杰出代表。LabVIEW的程序是数据流驱动的。这样,LabVIEW中被连接的方框图之间的数据流控制程序的执行次序,而不像文本程序受到行顺序执行的约束。......
2023-11-07
项目浏览器窗口用于创建和编辑LabVIEW项目。选择菜单栏中的“文件”→“创建项目”命令,打开“创建项目”对话框,如图2-11所示,选择“项目”模板,单击“完成”按钮,即可打开“项目浏览器”窗口。图2-12 “新建”对话框在默认情况下,项目浏览器窗口包括以下各项。2)依赖关系:用于查看某个终端下VI所需要的项。在项目浏览器窗口中选择需要作为子VI使用的VI,并把它拖放到其他VI的程序框图中。......
2023-11-07
While循环重复执行代码片段直到条件接线端接收到某一特定的布尔值为止。如果把控制条件接线端子的控件放在While循环外,则根据初值的不同将出现两种情况:无限循环或仅被执行一次。图5-11 For循环的自动索引但是此时对于While循环直接执行则不可以,因为While循环自动索引功能是关闭的需要在自动索引的方框 上单击右键,选择启用索引,使其变为。图5-12 处于死循环状态的While循环图5-13 添加了布尔控件的While循环......
2023-11-07
选择菜单栏中的“文件”→“另存为”命令,输入VI名称为“打开文件”。4)在“函数”选板上选择“互连接口”→“库与可执行程序”→“执行系统命令”VI,连接字符输出端到“命令行”输入端,执行打开路径下的文件命令。图7-4 程序框图图7-5 前面板设计4.运行程序在前面板窗口或程序框图窗口的工具栏中单击“运行”按钮 ,打开路径下的文件,运行结果如图7-6所示。......
2023-11-07
图6-11显示了使用For循环自动索引创建8个元素的数组。图6-13显示了使用While循环创建随机函数产生的数组,当按下终止键或数组长度超过100时将退出循环。图6-15显示了使用For循环创建了一个8行8列的二维数组的程序框图。......
2023-11-07
应用软件开发环境是设计虚拟仪器所必需的软件工具。软件在虚拟仪器中处于重要的地位,它肩负着对数据进行分析处理的任务,如数字滤波、频谱变换等。在很大程度上,虚拟仪器能否成功的运行,都取决于软件。仪器驱动程序主要用来初始化虚拟仪器,设定特定的参数和工作方式,使虚拟仪器保持正常的工作状态。应用程序主要对采集来的数据信号进行分析处理,用户可以通过编制应用程序来定义虚拟仪器的功能。......
2023-11-07
本例将在液罐控件的基础上,对该控件进行编辑修改,转换成计算机控件,人为地增加了“控件库”中的空间个数,也提供了一种设计控件的简便方法。选择菜单栏中的“文件”→“另存为”命令,输入VI名称为“设计计算机控件”。4)选择“新式”→“数值”→“液罐”控件,并放置在前面板的适当位置,如图3-132所示。图3-137 快捷菜单10)在工具面板中单击文本编辑工具 ,单击标签“液罐”,将其修改为“计算机”,结果如图3-139所示。......
2023-11-07
相关推荐