PLC PID控制优化系列之死区控制
死区即实际工程中可容忍的最大偏差,实际应用中,小误差产生的原因很大可能是由于测量误差或其它不可避免因素造成而不是实际偏差,在较小的偏差下弱调节或不调节,可以让控制避免抖动更加平滑。
在自动化控制系统中,由于系统特性和控制器精度等问题,致使系统偏差总是存在,系统总是频繁动作不能稳定。为了解决这种情况,我们可以引入带死区的PID控制算法,
Pid的设定值减去过程变量(反馈值),便得到负反馈的误差,死区环节用来处理误差值,误差的绝对值小于设置的死区宽度时,误差输出强制为0,误差的绝对值大于设置的死区宽度时,死区的输入、输出为线性关系、按正常的pid规律控制。
其中的死区值得选择需要根据具体对象认真考虑,因为该值太小就起不到作用,该值选取过大则可能造成大的滞后,带死区的PID算法,对无论位置型还是增量型的表达式没有影响,不过它是一个非线性系统
1、先看下C语言里判断死区的代码:
if(fabs(thisError)>vPID->deadband)
{
//计算偏差等
}
else
{
//偏差:=
