大家好,最近我在做一个PID的simulink仿真,想要得到最好得PID值用到我的PLC里面去,但是现在我发现这样一个问题:
当我用定步长、仿真时间间隔0.01的求解器仿真(图1),我这个PID值来拟合曲线效果挺好的(图2),但是换一个时间间隔0.001就完全跟不上了(图3、图4)。
那么这个时间间隔和我用的PLC多久发一次脉冲有关系吗?如果有关系,我PLC是0.02s的时间周期,应该用多长的时间间隔比较好?(因为时间间隔0.001的我怎么调都拟合不上)
请看到的大佬可以不吝赐教,这对我有很大的帮助!谢谢大家!
图1
图2
图3
图4
2024.01.20 20:23更新:
在matlab官方中文论坛上已经有人回答了这个问题,我这里贴一个🔗点击这里
我觉得完全不用纠结这个仿真间隔的问题,如果你的PLC的0.02s的时间周期的话,用0.01s的固定仿真步长是完全没有问题的,用0.001只是将你最后仿真出来的曲线更加光滑了(我认为没必要,仿真时间还要变长),为了达到这个效果自然是需要改变PID值,但是实际情况是你PLC传递回来得曲线都是阶梯状的曲线,只是这个阶梯状你看不到而已。
所以我这个情况用0.01s的固定步长就很好了!