本帖最后由 tanghuihua 于 2015-12-10 13:48 编辑
现开发一个温度控制表,采样增量式PID控制算法,核心公式:
uk = uk + (ek0-ek1)/P + ek0*T/(Ti*P) + (ek0-2ek1+ek2)*Td/(T*P);
输出为继电器控制加热管。
当P=20,Ti=60,Td=15时候,对同一控制对象进行控制:
1,用T=10s PID运算10s一次,控制出来的效果非常好,超调振荡2个周期后稳定。
2,但用T=30s PID运算30s一次,控制出来的效果就糟糕了,至少振荡了10几个周期才稳定,而且稳定度很差。
问题:T=30s的时候,是否还是要10s计算一次PID,计算三次后再改变继电器的输出时间?
请知道的朋友帮我解答一下。谢谢
注:请不要说30s的控制周期太长,我用市场买的PID控制器对相同的控制对象进行T=30s的控制,控制效果和我的T=10s时的控制效果一样。呵呵
附图,T=10S 和 T=30S 的控制效果,P=20,Ti=60,Td=15
|