If you work in the controls design space then the PID (Proportional, Integral, Derivative) control element is an old friend. For those of you who do not work in the domain here is a quick overview.
Observe and correct errors
A PID controller can be viewed as an optimization function with three terms. The system attempts to minimize the error between the observed and desired values.

- P term: The greater the relative error the stronger the command
- I term: The longer the error goes on the stronger the command
- D term: The greater the change in the error the more the command changes
All wound upI

Integral windup refers to the situation in a PID feedback controller where a large change in setpoint occurs (say a positive change) and the integral terms accumulates a significant error during the rise. This results in overshooting the target. Over time the error (now negative) will drive the integral to zero however this will result in an extended period of time in error. There are several solution, including this one as documented by The MathWorks
Derivative work

The derivative term in the PID control “dampens” the rate of change of the error term. However, due to difficulties in tuning systems with derivative terms this is often left out of the control algorithm
Overview of all terms
- Rise time: How long it takes the system to reach the target value
- Overshoot: How much the model goes “past” the target value”
- Settling time: How long it takes the system to zero out the error
- Steady state error: What is the final error (can it reach zero?)
- Stability: Effect of noise on the system
As you increase value the term…
Parameter | Rise time | Over shoot | Settling time | Steady state error | Stability |
---|---|---|---|---|---|
P | Decrease | Increase | Small change | Decrease | Degrade |
I | Decrease | Increase | Increase | Eliminate | Degrade |
D | Minor change | Decrease | Decrease | No effect | Improve if D is small |
If you find this content useful, please consider subscribing