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

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

[DAQmx]任务及通道学习笔记_第1张图片


 

 

 

你可能感兴趣的:(任务,通道,LabVIEW)