发布于 2014-04-23 09:00:48
1楼
我刚自己又分析了下,比如说OB35时间设置为100ms 也就是执行频率是10HZ,假如我PID上面的采样时间我设置为500ms,也就是2HZ,那么我的理解如下:
采样频率为2hz,而执行频率为10HZ,那么,我每执行5次才能检测出反馈值1一次的变化,也就是说其中有4次的执行还是按照上一次的反馈值在计算PID的输出,而这4次执行的时候,PID模块并不知道执行机构具体的情况(我称其为“盲区执行”),直到第5次执行,新的采样值回来时,PID才再一次根据当前的反馈值改变其输出。那如果执行机构是要求精度很高,而且反应很快的系统的话 ,在PID”盲区执行“时候,执行机构可能已经动作到超出了范围,直到第5次执行的时候,PID发现执行机构超出了范围,又一次改变其值,但是又进行了4次的”盲区执行“很有可能还是超出预期的调节范围,因此这种情况就会产生周期性的波动。
那么针对以上这种系统,我能不能把采样时间与ob35循环的时间设置为一样的呢?这样的话,我的PID的”盲区时间“就是OB35的循环时间了,这样应该能大大提高精度。
不知道我以上理解是不是对的………………
努力工作学习,充实自己,为家人创造美好生活!