为什么我的NI 9220, NI 9222, 和 NI 9223 不定期的漂移
硬件: CompactDAQ>>Analog Input Modules>>NI 9222, CompactDAQ>>Analog Input Modules>>NI 9223, CompactDAQ>>Analog Input Modules>>NI 9220
问题: 当我用 NI 9220机箱进行模拟采集,偶尔会看到通道漂移。例如,如果用通道1采集一个已知的1V电压,用通道2采集一个2V电压,第四通道,我偶尔会看到下属描述的现象:
我一般会看到这个通道偏移的现象在 NI 9220 任务里,当我在同一个机箱别的模拟模块上添加一个模拟任务 ,为什么会发生这个现象?
解答: 对于 NI 9220, NI 9222, 和 NI 9223 以及搭配有
DAQmx 9.7.5 以及前期版本的这是一个已知的问题。这个问题在 DAQmx 9.8中已经被解决。这个问题仅仅在多插槽CompactDAQ 机箱中存。单槽 CompactDAQ 机箱和 CompactRIO 机箱不被影响。
通道漂移发生在特定通道开始采集数据,而另外一个通道的数据已经在程序中进行处理的时候。下面的表格给出一个DAQmx任务包含了4个通道哪个通道看起来像漂移:
物理通道 |
实际采集电压 |
软件读取电压 |
Channel 1 |
1V |
2V |
Channel 2 |
2V |
3V |
Channel 3 |
3V |
4V |
Channel 4 |
4V |
1V |
在上述的例子中,数据由一个通道漂移得到,所以通道2的数据被显示为通道1,通道3的数据被显示为通道2,等等。
通道漂移可能在以以下顺序执行的事件程序中发生:
- 一个模拟输入任务包含2个或者更多被包含 NI 9220, NI 9222, or NI 9223 模块的任务 。
- 一个新的模拟输入任务使用同一个机箱里的不同模块。
- 原来的模拟输入重新开始在第二个任务持续进行的时候。 通道漂移更可能发生在原通道中。
动作需要:
如果你的应用中用到一个 DAQmx 任务包括两个或者更多的NI 9220, NI 9222, o或者NI 9223的通道 ,用下列一个选择来修正这个问题:
- 明确为各个任务选择定时引擎,确保为每个人物配置不同的定时引擎. 定时引擎的有效值是 0, 1, 和 2.
- 在 LabVIEW,可以由DAQmx属性节点完成并按以下设置SampTimingEngine 属性:
- 在C 或者 C++, 可以用
DAQmxSetSampTimingEngine
function结构完成:
DAQmxSetSampTimingEngine (TaskHandle taskHandle, uInt32 data);
For Example:
DAQmxSetSampTimingEngine (analogTask1, 0);
DAQmxSetSampTimingEngine (analogTask2, 1);
相关链接:
附件:
报告日期: 05/03/2013
最近更新: 11/29/2015
文档编号: 692F23J0
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.