我的工作是做一个温控系统(不带冷却装置),加热装置就是陶瓷加热棒。通过采集所得的温度误差,经PID算法得出控制量,再利用控制量去改变由单片机输出的PWM波的占空比。最后将PWM波送到继电器以控制加热棒加热和不加热。
我的做法是:占空比=(当前PID输出量)/(PID控制量的最大值—0),其中我认为PID控制量的最大值=Kp*温度最大误差。因为在我的PID算法中采用的是积分分离,即在温度误差<3℃时,才用积分环节。所以输出量的最大值我认为是Kp*温度最大误差
但是问题是,这不是Kp完全不起作用吗?因为,当前PID输出量=Kp*ek+(Kp*Ts/Ti)*(e(k)+e(k-1)+.......)+(Kp*Td/Ts)*(e(k)-e(k-1)), 比上PID控制量的最大值不就将Kp约掉了吗?那还怎么通过Kp调节呀? |