我正在通过DAQ系统运行matlab脚本,以便创建一个波形来控制设备。 Matlab在运行脚本时会固有地增加一些延迟,导致波形偏移。如果存在恒定滞后,我可以纠正任何偏移,但是根据我的处理器性能,任何给定循环的滞后量都会变化。我需要知道的问题是,是否有任何方法可以编写此代码以使matlab延迟一致。无论如何,无论处理器性能如何,都能让matlab以恒定速度运行?
答案 0 :(得分:0)
控制数据输出的速率需要真实的时间控制。如果您有足够简单的波形,那么您可以根据对系统时钟的调用来控制输出的内容。但这假设您的系统时钟足够精确。因此,1 Hz方波很容易重现,但1 GHz正弦波是不可能实现的。如果你可以预先建立波形,那可能会让你更接近,但这取决于具体情况。
答案 1 :(得分:0)
尝试使用tic,toc来跟踪过去的时间?当达到目标延迟时,我会对toc进行调整?这可以使滞后不变,但不好的是所有滞后都是最大化的。