有关DAQmx的例子请参考这里! 11/01/2011
Add Comment 善于使用搜索功能 10/29/2011
经常看到许多网友的提问,有些问题自己简单搜索就可以获得有效的解答。 在NI中文主页上搜索 如果你的英文很好也可以 在开发者社区进行搜索 养成这个习惯,同时个人能力的提高会更快! 网友提供的——LabVIEW程序结构——组合动作执行模块 09/16/2011
《Thinking-in-LabVIEW》组成员:在梦晨,提供了一个他自己经常采用的LabVIEW程序结构——组合动作执行模块。 在笔者在LabVIEW应用程序开发中,广泛使用了一种高效的程序结构——组合动作执行模块。该模式由图形化的While循环、Evnet(事件结构)、For循环、Case结构、enum(枚举)等多种结构和数据类型构成。 执行机理: 针对前面板对象所发生的鼠标、键盘动作,利用事件结构接受其响应。将各种事件响应进行分解为基本的动作单元。 对响应的处理过程采用自定义的枚举数组作为执行顺序。该数组作为For循环执行的索引,同时数组元素定义了执行的Case。利用枚举数组定义出若干个由动作单元组合而成的动作序列,顺序完成对应的动作单元。 模型特点:重复利用各基本动作单元,增加代码复用率,程序更加简洁。通过新建事件,可以定义任意组合的动作序列,灵活高效。 该模块 具有很强的模块化设计思想。 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中如何实现脉冲发生器。 | 写着玩! 外行当然说的就是我自己,内行是指NI的那些AE,因为他们更清楚LV的内涵和机理。就LV学习和使用而言,我的确就是个外行。但是,我想通过“看热闹”使自己尽可能的接近于内行。这肯定是一个可望而又不可及的目标。 历史纪录十一月 2011 分类
All | ||||||
































RSS Feed