Comparison of PID Control Algorithms
Comparison of PID Control Algorithms
Kc, Kp are gain; I, Ip are integral and D, Dp are derivative settings. The series controller's strange looking
form makes it act like an electronic controller. A three term controller can be made with only one
pneumatic (or electronic) amplifier using the series form. Thus, pneumatic controllers and early electronic
controllers often used the series form to save on amplifiers which were expensive at the time. Some
manufacturers use the series form in their digital algorithms to keep tuning similar to electronic and
pneumatic controllers.
Differences in Proportional Band Or Gain
If you use only proportional action, the main difference between series and ideal algorithms is that some
manufacturers use proportional band while others use gain. On a controller using the gain setting,
increasing this setting makes the loop more sensitive and less stable. While decreasing proportional band
on controllers using it will have the same effect.
Some manufacturers allow more
flexibility with P action by letting
you choose whether gain
(proportional) action works on set
point changes. For example,
Honeywell TDC has two types of
algorithms that work differently on
set point changes. With their type
A algorithm, gain action acts on
set point changes and with their
type C it does not. For load upsets,
type A and C act the same, but for
set point changes, the difference
is dramatic.
ExperTune Loop Simulator
Windows compare responses of
Honeywell TDC type A
(proportional action on error) and
C (proportional action on PV only)
controllers on a simulated
temperature loop. Bottom graph
shows either type controller
response to a step load change.
Top plot red is response of Type A,
top plot green of Type C. With the
type C algorithm, damping and
overshoot to step set point
changes are similar to damping
and overshoot on step load
disturbances. Type C may be
desirable over type A, since tuning
for load or set point changes is
similar with type C.
Because of the sensitive set point
response, you may want to use type A for the inner loop or slave in a cascade. Type C with smooth set
point response may be better for the outer or master loop.
Bailey's "error input" and "PV and SP" algorithms are analogous to Honeywell's type A and C. Bailey's
"error input" has sensitive set point response while Bailey's "PV and SP" has smooth set point responses.
Like Honeywell's, the two Bailey algorithms give identical load responses. Because the load responses are
the same for the different Bailey and Honeywell algorithms, they have the same stability. For a fast
analysis of the stabilities, ExperTune allows a comparison of the robustness plots of the algorithms.
Differences In Integral Action
Once you convert integral and reset values to the same units, PI controllers respond mostly the same for
load disturbances. The proportional action may be different as described above. Anti-reset windup is
usually done differently, but the effect of these differences is usually minor compared to other differences
between algorithms.
Differences In Derivative Action
The largest variation among controllers from different manufacturers is the way they handle derivative
action. Virtually no two are the same. This is part of the reason why many people don't use derivative
action. The differences are caused from different methods of filtering or not filtering at all, whether the
derivative works on set point changes or not, and how derivative interacts or does not interact with the
integral action.
On controllers, when you set derivative to something besides zero, you get derivative action. In a series
controller, when you use both integral and derivative actions, the integral and derivative modes interact.
Interaction causes the effective controller action to be different from what it would be in a ideal controller.
I (effective) = I + D
Where PB, I and D are the proportional band, integral and derivative values you set or entered into the
series controller. The effective values are equivalent ideal controller settings.
These equations show that for the series controller you cannot make the effective derivative time greater
than 1/4 the effective integral time. The largest effective derivative occurs when D=I. When D is set
larger than I, the effective integral time is adjusted more with D and the effective derivative is adjusted
more with I! Therefore it is usually good control practice to keep the values of D less than I for a series
controller.
For example: Foxboro and Fisher use a series algorithm. AEG Modicon, Texas Instruments controllers use
the ideal type. Honeywell has both series and ideal algorithms. Bailey, Allen Bradley, and GE have both
ideal and parallel algorithms.
Other Differences in Derivative
Besides the interaction differences described above, derivative action among the series and ideal groups
varies.
With most controllers, derivative works only on measurement. On some controllers however, derivative
action works on set point changes. Although response to a load disturbance will be the same, set point
response on these controllers can get out of hand.
Since most controllers are used for regulating disturbances, derivative action working on set point
changes is usually not a problem except in cascade loops or ones where the set point is being
manipulated.
Of more significance is whether and how filtering is done when you dial in derivative.
The Unlimited Derivative Problem
Some manufacturers do not filter or limit derivative action. Thus, at high frequencies, the amplitude ratio
gets large. In the Figure the red line shows the amplitude ratio of unlimited derivative action.
The Figure shows the
same PV noise added to a
PID controller with (green)
and without (red) PV
filtering. PV filtering limits
the derivative gain.
Unlimited derivative
action does not help good
loop control but does
amplify measurement
noise in the controller
output. The result of
unlimited derivative is a
"jumpy" or nervous and
noisy controller output.
The lower graph in the
Figure - red line is the
time response of a
controller to
measurement noise. This
can wear out valves, or
drive a slave loops set
point crazy. Worse yet,
the noise can drive the
controller into saturation
which causes the
anti-reset code to take
over. No wonder
derivative is seldom used!
Filtering Limits
Derivative Noise
On the controllers that
use filtering with derivative, usually the measurement signal gets the filtering. The time constant of
filtering is usually calculated by these algorithms based on the derivative value dialed in. The amount of
filtering changes with the amount of derivative. This has the effect of limiting derivative action at high
frequencies. In Figure the green line shows the amplitude ratio and controller output using limited
derivative action. Control loop performance is the same on both since unlimited derivative does not
improve control loop performance.
Parallel Controllers
With parallel controllers, controller gain is not multiplied by the error signal only. Integral and derivative
actions are "independent" of the controller gain.
At first it might seem that the parallel controller is easier to work with because of this "independence".
But, parallel algorithms require very different integral and derivative tuning parameters than other
controllers. These equations show how to convert from parallel to ideal settings:
Kc = Kp
I = Ip Kp (units of time/repeat)