level 2
sunmoumou23
楼主
发一个比较复杂的问题,我目前有DAQ的采集卡和输出卡各一张,想做一个数字迭代反馈的程序。流程如下,开始给输出卡0信号,输出信号直接用采集卡测量,程序里设定一个参考波形,这个波形是我最终想要输出卡产生的波形,这个波形和我采集卡测到的波形做差乘个系数k加上开始给输出卡的零信号作为新的信号给输出卡让他输出,下一个循环同理,实现迭代。

框图如下

问题是这个程序并不能实现迭代,运行程序,开始时能够得到初始值U0,之后采集卡测到的永远是初始值,如下两张图



当我把初始值改成0.5V时,测到的就是0.5V,有趣的是当我用highlight逐步分析时,(理论上,利用DAQmx read功能的程序是不能用highlight的,否则会造成缓存溢出报错)图像会有所不同,如图,在第一次循环中,会成功产生U1,第二波循环会因缓存溢出报错,但在非高亮运行下,并不会得到Ui。我怀疑和产生获取波形时间有关。

2020年05月04日 12点05分
1

框图如下
问题是这个程序并不能实现迭代,运行程序,开始时能够得到初始值U0,之后采集卡测到的永远是初始值,如下两张图


当我把初始值改成0.5V时,测到的就是0.5V,有趣的是当我用highlight逐步分析时,(理论上,利用DAQmx read功能的程序是不能用highlight的,否则会造成缓存溢出报错)图像会有所不同,如图,在第一次循环中,会成功产生U1,第二波循环会因缓存溢出报错,但在非高亮运行下,并不会得到Ui。我怀疑和产生获取波形时间有关。