We’re proposing a new PI controller named
“MaxError activated PI control”
It includes following features which is not covered in current pid algorithm
activate PI algorithm when the error is less than MaxError range
, when error is larger than MaxError range , run output min
special integral clamping by taking proportional term into consideration
The advantage of the algorithm is:
1 tuning p coefficient & I coefficient is sufficient for most of server based systems
2 . special integral clamp can respond to error change to avoid the overshooting situation
( not use the d term because the derivative term is too sensitive to noise..)
3 introducing MaxError , keep fan running at minimal speed when error is far away from the set point (don not need to do pi calculation all the time)
The algorithm is listed as below
EX:
Old_iterm = 0, Pgain = -7, Igain = -0.1 (Pgain = 6~12, Igain = 0.05~0.2 )
MaxError = 13, Umax = 100, Umin = 20, R = 80
e = R - PV
if e <= MaxERROR:
Iterm = old_Iterm
Pterm = Pgain*e
Iterm += Igain*e
/*clamping by taking Pterm into consideration*/
if Pterm+Iterm < Umin:
Iterm = Umin - Pterm
if Pterm+Iterm > Umax:
Iterm = Umax - Pterm
out = Pterm + Iterm
old_Item = Iterm
else:
out = Umin
Iterm = 0
We’re proposing a new PI controller named “MaxError activated PI control” It includes following features which is not covered in current pid algorithm
The advantage of the algorithm is: 1 tuning p coefficient & I coefficient is sufficient for most of server based systems 2 . special integral clamp can respond to error change to avoid the overshooting situation ( not use the d term because the derivative term is too sensitive to noise..) 3 introducing MaxError , keep fan running at minimal speed when error is far away from the set point (don not need to do pi calculation all the time)
Simulation test log as bellow