恭喜,你发布的帖子
发布于 2023-04-17 10:37:26
2楼
我把正常PID和异常时PID的工艺DB在线对比发现是参数PIDCtrl.IOutputOld(上一循环的积分作用)太大导致的,我的程序在PID后端做了限制,当反馈温度大于设置温度时,PID最大输出限制到1%,也即关掉输出。这是因为实际使用中经常看到超调过温,所以做了这个限制。我将这个参数调整小后就能正常了。
我尝试不做输出限制,再将这个参数在开始时写入较大值,就会出现很大超调,同时这个参数在不断变小,应该会一直变小直到正常。
所以我猜测是因为当前的PID参数不合适,导致超调,限制了输出值后,PID自动计算的这个上一循环积分作用出现无法回调。
目前不明白这个上一循环积分作用到底怎么计算来的,为什么有时出现数值很大,导致PID输出卡死100%现象。
请填写推广理由:
分享
只看
楼主