关闭

[DAQmx]任务及通道学习笔记

标签: LabVIEW任务通道
794人阅读 评论(0) 收藏 举报
分类:
   问题描述:DAQmx任务及通道,任务相关API的使用,如“开始任务”、“停止任务”等。
   DAQmx使用:DAQmx提供了一组用于控制NI的数据采集卡的API,方便实现模拟输入输出、数字输入输出、计数器输入输出等功能。可以在LabVIEWLabVIEW SignalExpressLabWindows/CVIMeasurement Studio.NETANSIC中调用DAQmxAPI,前提是要先安装或导入DAQmx的驱动。
   DAQmx通道:即采集卡与外部信号的交互通道,一个通道代表一路外部信号。没有NI采集卡设备时可以在MAX中虚拟一个设备,采用虚拟设备完成编程任务。当电脑连接好NI采集卡设备时,MAX会检测到该设备,在程序中可以使用采集卡上对应的各个物理通道。
   DAQmx任务:任务中所有通道的IO类型必须相同,可以在MAX中右击连接的设备创建任务,针对每一种IO类型需要独立创建一个任务,如模拟输入任务、模拟输出任务、数字输入任务、数字输出任务等等,在编程时调用“创建虚拟任务”函数时就可以看到这些任务并进行设置了。
   开始任务:“开始任务”函数用于显式的开始一个任务,但一般单点读取函数和写入函数会自动开始一个任务,这种情况为隐式的开始任务。调用“开始任务”表示从“已提交”状态转为“运行”状态。

1)开始有限测量任务(如N采样),“开始任务”函数是非必须的,“读取”函数直接读取,在最后一个采样读取后停止任务。

2)开始连续测量任务,使用“开始任务”函数,再“读取”,然后“停止任务”。循环中操作时(单采样、按需读取、多采样硬件定时读取等),进入循环前“开始任务”,离开循环后“停止任务”。

3)开始模拟输出任务,对于单采样写入操作,调用“写入”,同时也启用了任务,写入单个采样,最后停止任务。对于多采样按需写入操作,调用“写入”,并将“自动开始”参数设置为真,其默认值为假。该调用也启用了任务,写入多个采样,最后停止任务。

对于多采样硬件定时写入操作,应先调用写入函数,写入要生成的样本,显式调用开始任务,调用结束前等待函数/VI等待采样生成完毕,然后显式调用停止任务函数/VI

如将写入函数/VI自动开始参数设置为真(主动设置或使用单点写入函数),硬件定时生成可能会失败,因为写入的采样在波形生成时还未传递到设备。进行硬件定时生成时,开始任务之前始终写入部分波形。

4)改进“开始任务”性能,部分需显示调用“DAQmx开始任务”与“DAQmx停止任务”情况:循环中调用“读取”或“写入”时,进入循环前调用“开始任务”,离开循环后调用“停止任务”,速度会提高。

中止任务:“控制任务”函数动作输入端设置为“中止”即可。

DAQmx的任务状态模型:任务状态模型有下列五种状态:未验证、验证、保留、已就绪和运行。调用开始任务停止任务控制任务,将任务从一个状态转换为另一个状态。任务状态模型具有一定的灵活性。根据应用程序的需要可选择任务状态的一部分或全部任务状态模型。



 

 

 

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:241359次
    • 积分:3757
    • 等级:
    • 排名:第8541名
    • 原创:287篇
    • 转载:16篇
    • 译文:0篇
    • 评论:18条
    最新评论