有关DAQmx的例子请参考这里! 11/01/2011
Add Comment cDAQ——计数器使用(11) 08/05/2011
2、使用NI提供的例程 使用NI 提供的例程就很简单了,打开"查找范例" >硬件输入输出 >DAQmx >计数器测量 >数字频率 >Meas Dig Frequency-Low Freq 1 Ctr.vi 这个vi我们前面用过,直接打开后配置物理通道即可使用。测试结果参见下图。 至此,简单的使用方法已经基本介绍完了。供大家在使用中参考。 下面我们再看一个来自NI社区的实例,它使用NI 9401在cDAQ-92715槽,在一个VI中实现了三个DIO输入、四个DIO输出和一个计数器。 下面给出该vi。
cDAQ——计数器使用(10) 08/05/2011
四、NI cDAQ-9172与NI 9402配合测频率 1、使用DAQ助手 将DAQ助手拖拽到程序框图中,基本设置应该都一样,这里就不贴图了。 硬件cDAQ-9172 5槽NI 9402选择的是Ctr1计数器进行测量。配置如下图所示。 显然,通过上表可以看出:测量使用CTR 1 GATE 它的默认引脚编号是:2(DIO 2),信号名称是:PFI2端口。这样我们通过2端口的BNC插座可以获得脉冲输出。测量结果参见下图。 cDAQ——计数器使用(9) 08/04/2011
2、使用NI 提供的例程 使用NI 提供的例程就很简单了,打开"查找范例" >硬件输入输出 >DAQmx >计数器测量 >数字频率 >Meas Dig Frequency-Low Freq 1 Ctr.vi 参见下图. 打开该vi,设置测量的物理通道既可以完成测试.因为硬件连接没有发生变化。 上图中左边是发生的频率,右边是测量的结果。 硬件连接不变:cDAQ1Mod2-19脚(产生脉冲)连接到cDAQ2Mod6-16(测量频率). cDAQ——计数器使用(8) 08/04/2011
三、cDAQ-9172与NI 9401配合测量频率 在cDAQ-9172上配置NI 9401用于频率测量时,必须将NI 9401插在cDAQ-9172的5或6槽。因为其它的槽不支持计数器使用,这个问题在NI 9174和NI 9178中不存在,它们所有槽都支持计数器的使用。 所以这里我们将NI 9401插入cDAQ-9172的第6槽。硬件安装即宣告完成。(当然我们需要在另一台在cDAQ-9174上配置NI 9401来发出脉冲). 下面开始程序设计。 1、使用DAQ助手 在程序框图中选择: 编程〉 测量I/O〉 DAQmx_数据采集〉 DAQ助手 将DAQ助手拖放到程序框图上,在对话框中选择: 采集信号〉 计数器输入〉 频率,参见下图。 点击:频率后,进入下图所示的内容。 由于我们实际的的硬件使用的是:cDAQ1,第6槽上的NI 9401,所以我们选择:cDAQ1Mod6(NI 9401)的ctr0。 注意:cDAQ-9172仅仅可以提供两个计数器,Ctr0、Ctr1。 然后点击:完成,参见下图。 CRT 0 GATE 的默认引脚编号是16,信号名称是:PFI1。参见下表。 连接好连线,既可测量。 硬件连接:cDAQ1Mod2-19脚(产生脉冲)连接到cDAQ2Mod6-16(测量频率). 使用DAQ助手完成了频率测量,下一步我们在通过例程实现频率测量。 cDAQ——计数器使用(7) 08/04/2011
2、使用NI提供的例子实现这个例子比较简单,还是使用我们以前查找过的例程。Gen Dig Pulse Train-Continuous.vi 在cDAQ-9172第五槽上插入NI 9402。使用Ctr1计数器,脉冲输出在NI 9402的端口3(cDAQ图6-2中的DIO3)。 前面板如下图。 实测结果参见下图。 这里我们是用另一台cDAQ-9174(NI 9401) 实现脉冲测量的。 注意: 大家可能注意到:我们使用两个程序(vi)来验证脉冲发生器,一个用于生成脉冲,这个大家都看到了;另一个用于测量,这个大家还没看到程序框图(只看到了前面板)。 这两个VI是运行在两个cDAQ上,提醒大家的是:这两个vi不可以同时运行在一个cDAQ上。 如果想两个vi都运行在一个cDAQ上,他们应该包含在一个任务中(同一个VI中)。 至此,在NI cDAQ-9172上使用NI 9401和NI 9402产生脉冲的方法以及如何连接都已经介绍完了。由于其他NI cDAQ-917x的用法与上面介绍的相同,所以就不重复了。其他NI cDAQ-917x每个槽都可以用于计数器。 下面要介绍如何测量脉冲。 cDAQ——计数器使用(6) 08/03/2011
二、cDAQ-9172生成脉冲(使用NI 9402) 现在我们将NI 9402插到cDAQ-9172的第五槽,用NI 9402来生成脉冲输出。 1、使用DAQ助手生成脉冲输出 DAQ助手的配置与使用NI 9401的情况一样,这里就不重复叙述了。主要还是在硬件输出端的确认上。 参见下图。 这里我们要注意:DAQ助手告诉我们输出端为:PFI0。我们通过和下图来确定。 显然,脉冲发生器Ctr0(CTR 0 OUT)的默认输出端是:0(DIO 0)端口(PFI0)。 这样我们通过0端口的BNC插座可以获得脉冲输出。测量结果参见下图。 下面修改DAQ助手,将脉冲生成改为:Ctr1。 依据cDAQ图6-2,可以看到CTR 1 OUT的默认端口是:3(信号名称PFI3)也就是是NI 9402的端口3(DIO 3)。 将BNC连接到3端口既可看到脉冲输出。测量结果就不给出了。 完成了DAQ助手的应用,下面还是采用NI例程的应用。 cDAQ——计数器使用(5) 08/03/2011
回顾我们所做的试验:在cDAQ-9172上,通过NI 9401的Ctro通道发出了连续的数字脉冲。其中分别使用了DAQ助手和NI提供的例程。 如果使用其它通道作为脉冲发生器的输出端,其连接脚的端口可参见下表: 打开DAQmx的帮助文件: 》NI-DAQmx设备注意事项 》计数器 》计数器信号连接 》C系列 可以看到下表。 由于在cDAQ上使用计数器大多数端子(参见cDAQ图3-1)都是默认连接,所以上表给出的是最终脉冲输出的端口。 对于NI 9401,作为脉冲发生器时: Ctr0——PFI3——19脚 Ctr1——PFI7——25脚 Ctr2——PFI1——16脚 Ctr3——PFI5——22脚 注意:上面只是作为脉冲发生器时NI 9401的连接关系。对于cDAQ-9172仅有CTR 0和CTR 1两个通道。 下面将给出NI 9402在cDAQ-9172中如何实现脉冲发生器。 cDAQ——计数器使用(4) 08/02/2011
在cDAQ——计数器使用(3)中,我们使用DAQ助手在cDAQ-9172上通过NI 940已经创建了一个脉冲发生器。现在我们将通过一个例程来实现同样的脉冲发生器。 2、使用NI提供的例子 在LabVIEW2009SP1的启动界面,点击打开“NI 范例查找器”选择: 〉硬件输入输出 〉DAQmx 〉生成数字脉冲 〉Gen Dig Pulse Train-Continuous.vi 该vi的前面板和程序框图如下: 对于这个例子,无需做任何改动既可以使用。使用时只需按硬件的物理通道设定既可(参见cDAQ图4-1)。 测量结果参见下图(如何测量后面会谈到)。 这样我们通过NI 提供的例程也完成了脉冲发生器的设计(管脚连接不变)。 但是这个脉冲发生器还存在一个问题:就是改变频率需要停下来设定后在重新运行。如果期待实时改变频率最好使用下面的例子。 generatePulseTrain2.vi 这个vi已经经过验证使用没问题。下面给出下载。
cDAQ——计数器使用(3) 08/01/2011
通常cDAQ产品手册中的介绍不多,更多的内容来自DAQmx的帮助文件。所以在使用前必须仔细阅读DAQmx的帮助文件 在cDAQ产品手册中,对于计数器原理介绍是这样表述的,参见下图。 这个电路图实际上是cDAQ机箱内部的计数器电原理图,它具备8个输入端和两个输出端。 我们初看起来的确会一头雾水,真不知道该如何使用这8个输入端。 其实,根本不用恐怖。我们在作计数器使用时,只会用到少数几个端口。其他的端口在机箱内部都已经自动连接完成。 在MAX中我们可以看到Device Routes表。如果一时还看不明白,我们就默认它的连接就行了。 实际上在cDAQ上使用计数器很简单,下面以脉冲发生为例进行实际应用。 上图中的 CTR n——表示第n个计数器。 CTR n OUT——表示第n个计数器的输出端。 一、cDAQ-9172 脉冲发生器(使用NI 9401) 在cDAQ-9172上配置NI 9401使用时,必须将NI 9401插在cDAQ-9172的5或6槽。因为其它的槽不支持计数器使用,这个问题在NI 9174和NI 9178中不存在,它们所有槽都支持计数器的使用。 所以这里我们将NI 9401插入cDAQ-9172的第五槽。硬件安装即宣告完成。 下面开始程序设计。 1、使用DAQ助手实现脉冲发生器为了简化设计,通常我们使用DAQ助手来完成这个任务。 在程序框图中选择: 编程〉 测量I/O〉 DAQmx_数据采集〉 DAQ助手 将DAQ助手拖放到程序框图上,在对话框中选择: 生成信号〉 计数器输出〉 脉冲输出,参见下图。 点击:脉冲输出后,进入下图所示的内容。 由于我们实际的的硬件使用的是:cDAQ1,第5槽上的NI 9401,所以我们选择:cDAQ1Mod5(NI 9401)的ctr0。 注意:cDAQ-9172仅仅可以提供两个计数器,Ctr0、Ctr1。 Ctr0、Ctr1分别是2个计数器的名称。 然后点击:完成,参见下图。 这里,我们仅仅选择设定了: 生成模式。 连续脉冲和待写入采样(100) 其他都是默认值,高低电平都为10ms意味着我们将生成50Hz频率信号。通过修改这个参数可以控制脉冲发生器的频率。 特别注意:上图中的红色部分,它标志着产生的信号输出将出现在PFI3(CTR 0 OUT)的端口。我们暂时先继续,后面会谈到这个问题。 点击确定按键(上图中没有包含进来),在对话框中选择包含While循环,参见下图。 这样使用DAQ助手的程序就创建完成,现在的问题是如何实现硬件连接。 前面我们已经知道脉冲的输出在PFI3(CTR 0 OUT)的端口,通过端口表(DAQmx帮助文件),我们知道在NI 9401的PFI3(CTR 0 OUT)对应19脚(参见下图——表1)。 现将NI 9401的19角作为信号输出(1角为信号地)连接后,运行该程序测量结果参见下图。 关于如何测量我们以后会谈到。 这样我们通过DAQ助手已经实现的脉冲信号的生成。操作本身很简单,主要问题是如何确定实际的物理输出端。 使用DAQ助手有个问题,就是无法实时的控制脉冲发生器的输出频率(每次都需要重新配置DAQ助手)。下回我们将给出一个例程来实现输出频率可控的脉冲发生器。 | 写着玩! 外行当然说的就是我自己,内行是指NI的那些AE,因为他们更清楚LV的内涵和机理。就LV学习和使用而言,我的确就是个外行。但是,我想通过“看热闹”使自己尽可能的接近于内行。这肯定是一个可望而又不可及的目标。 历史纪录十一月 2011 分类
All | ||||||||||||













































RSS Feed