如何在VeriStand中实现DAQ卡计数器输出的功能?
主要软件: NI VeriStand
主要软件版本: 2011
主要软件修正版本: N/A
次要软件: LabWindows/CVI Add-ons>>LabVIEW IMAQ Optical Character Recognition Software
硬件: Multifunction DAQ (MIO)>>M Series>>PXI-6251
问题: 众所周知,VeriStand可以在system explorer中直接配置使用DAQ的AO,AI,DIO等功能,但只能使用CTR的输入,那么如何在VeriStand使用DAQ卡中的计数器输出呢?
![](images/D856598FFCB82991862579A00028F8F3_image001.png)
解答:
1、编写模型
生成PWM方波的方法有很多种,下图是其中的一种,通过属性节点来修改PWM波形的频率和占空比。
![](images/D856598FFCB82991862579A00028F8F3_image003.png)
在编写可在VeriStand中使用的LVmodel时可使用同样的思路。需要注意的是,VeriStand引擎架构包含多种Loop,其中Data Processing Loop用于数据处理,其本身就是一个循环,因此,和一般的生成PWM波形程序不同,该程序本身不能包含while 循环。
此外,包括计数器配置等设置在内只需运行一次,因此需加上首次调用的判断条件,如果是首次调用,执行具体的设置步骤;如果不是,则跳过设置。同时,使用局部变量temp来观察程序执行到哪一步。
![](images/D856598FFCB82991862579A00028F8F3_image005.png)
另外需要注意的是,程序中资源的名称需要和MAX中保持一致,如此处的“DAQ1”。
程序编写完后,将VI生成LVMODEL。
2、导入并配置模型
在VeriStand项目中打开System Explorer,直接导入model,并对RT端的IP进行配置即可。需要注意的是,不要在System Explorer的Controller->Hardware中配置DAQ板卡的CTR,因为如果此时增加硬件资源,将和Model中调用的CTR形成资源冲突(但此时VeriStand不会报错)。
![](images/D856598FFCB82991862579A00028F8F3_image015.jpg)
3、实验结果
在workspace中将Inports和Outports引出,改变频率和占空比,可以观察程序执行到哪一个步骤。如下图所示,temp的值为-1,根据程序可知,temp为1时,model已经完成了所有的设置,正在通过属性节点修改PWM波形的频率和占空比。
![](images/D856598FFCB82991862579A00028F8F3_image017.png)
将PXI 6251外接示波器观察波形。设置频率为1KHz,如下左图是占空比为50%情况,右图是占空比为25%的结果。
可以看到,使用model可以在Veristand中很好的实现DAQ卡的计数器输出功能。
相关链接:
附件:
PWM generation from NIVS.7z
报告日期: 02/10/2012
最近更新: 03/09/2012
文档编号: 5U919F72
Other Support Options
Ask the NI Community
Collaborate with other users in our discussion forums
Request Support from an Engineer
A valid service agreement may be required, and support options vary by country.