Basics of PID Control
Basics of PID Control
Virtually all feedback controllers determine their output by observing the error between the
setpoint and a measurement of the process variable. Errors occur when an operator changes
the setpoint intentionally or when a process load changes the process variable accidentally.
PID control
Conceptually, that's all there is to a PID controller. The tricky part is tuning it; i.e., setting the
P,I, and D tuning constants appropriately. The idea is to weight the sum of the proportional,
integral, and derivative terms so as to produce a controller output that steadily drives the
process variable in the direction required to eliminate the error.
The brute force solution to this problem would be to generate the largest possible output by
using the largest possible tuning constants. A controller thus tuned would amplify every error
and initiate extremely aggressive efforts to eliminate even the slightest discrepancy between
the setpoint and the process variable. However, an overly aggressive controller can actually
make matters worse by driving the process variable past the setpoint as it attempts to correct
a recent error. In the worst case, the process variable will end up even further away from the
setpoint than before.
On the other hand, a PID controller that is tuned to be too conservative may be unable to
eliminate one error before the next one appears. A well-tuned controller performs at a level
somewhere between those two extremes. It works aggressively to eliminate an error quickly,
but without over doing it.
How to best tune a PID controller depends upon how the process responds to the controller's
corrective efforts. Processes that react instantly and predictably don't really require feedback
at all. A car's headlights, for example, come on as soon as the driver hits the switch. No
http://www.manufacturing.net/ctl/index.asp?layout=articlePrint&articleID=CA189611 4/25/2005
Basics of Proportional-Integral-Derivative Control Page 2 of 4
On the other hand, the car's cruise controller cannot accelerate the car to the desired
cruising speed so quickly. Because of friction and the car's inertia, there is always a delay
between the time that the cruise controller activates the accelerator and the time that the
car's speed reaches the setpoint. A PID controller must be tuned to account for such lags.
PID in action
Consider a sluggish process with a relatively long lag—an overloaded car with an undersized
engine, for example. Such a process tends to respond slowly to the controller's efforts. If the
process variable should suddenly begin to differ from the setpoint, the controller's immediate
reaction will be determined primarily by the actions of the derivative term in equation [1]. This
will cause the controller to initiate a burst of corrective efforts the instant the error changes
from zero. A cruise controller with derivative action would kick in when the car encounters an
uphill climb and suddenly begins to slow down. The change in speed would also initiate the
proportional action that keeps the controller's output going until the error is eliminated. After a
while, the integral term will also begin to contribute to the controller's output as the error
accumulates over time. In fact, the integral action will eventually come to dominate the output
signal since the error decreases so slowly in a sluggish process. Even after the error has
been eliminated, the controller will continue to generate an output based on the history of
errors that have been accumulating in the controller's integrator. The process variable may
then overshoot the setpoint, causing an error in the opposite direction.
If the integral tuning constant is not too large, this subsequent error will be smaller than the
original, and the integral action will begin to diminish as negative errors are added to the
history of positive ones. This whole operation may then repeat several times until both the
error and the accumulated error are eliminated. Meanwhile, the derivative term will continue
to add its share to the controller output based on the derivative of the oscillating error signal.
The proportional action, too, will come and go as the error waxes and wanes.
Now suppose the process has very little lag so that it responds quickly to the controller's
efforts. The integral term in equation [1] will not play as dominant a role in the controller's
output since the errors will be so short lived. On the other hand, the derivative action will tend
to be larger since the error changes rapidly in the absence of long lags.
Clearly, the relative importance of each term in the controller's output depends on the
behavior of the controlled process. Determining the best mix suitable for a particular
application is the essence of controller tuning.
For the sluggish process, a large value for the derivative tuning constant D might be
advisable to accelerate the controller's reaction to an error that appears suddenly. For the
fast-acting process, however, an equally large value for D might cause the controller's output
to fluctuate wildly as every change in the error (including extraneous changes caused by
measurement noise) is amplified by the controller's derivative action.
There are basically three schools of thought on how to select P, I, and D values to achieve
an acceptable level of controller performance. The first method is simple trial-and-error—
tweak the tuning constants and watch the controller handle the next error. If it can eliminate
the error in a timely fashion, quit. If it proves to be too conservative or too aggressive,
increase or decrease one or more of the tuning constants.
Experienced control engineers seem to know just how much proportional, integral, and
derivative action to add or subtract to correct the performance of a poorly tuned controller.
Unfortunately, intuitive tuning procedures can be difficult to develop since a change in one
tuning constant tends to affect the performance of all three terms in the controller's output.
For example, turning down the integral action reduces overshoot. This in turn slows the rate
of change of the error and thus reduces the derivative action as well.
The analytical approach to the tuning problem is more rigorous. It involves a mathematical
model of the process that relates the current value of the process variable to its current rate
of change plus a history of the controller's output. Random influences on the process
variable from sources other than the controller can all be lumped into a load variable LV(t).
See equation [2]. This particular model describes a process with a gain of K, a time constant
of T, and a deadtime of d. The process gain represents the magnitude of the controller's
effect on the process variable. A large value of K corresponds to a process that amplifies
small control efforts into large changes in the process variable.
Time constant T in equation [2] represents the severity of the process lag. A large value of T
corresponds to a long lag in a sluggish process. The deadtime d represents another kind of
http://www.manufacturing.net/ctl/index.asp?layout=articlePrint&articleID=CA189611 4/25/2005
Basics of Proportional-Integral-Derivative Control Page 3 of 4
delay present in many processes where the controller's sensor is located some distance from
its actuator. The time required for the actuator's effects to reach the sensor is the deadtime.
During that interval, the process variable does not respond at all to the actuator's activity.
Only after the deadtime has elapsed does the lag time begin.
In the thermostat example, the ductwork between the air conditioner and the thermostat
causes a deadtime since each slug of cool air takes time to travel the duct's length. The
room temperature will not begin to drop at all until the first slug of cool air emerges from the
duct.
Other characteristics of process behavior can be factored into a process model, but equation
[2] is one of the simplest and most widely used. It applies to any process with a process
variable that changes in proportion to its current value. For example, a car of mass m
accelerates when its cruise controller calls for the engine to apply a force Fengine(t) to the
drive axle. However, that acceleration a(t) is opposed by frictional forces Ffriction(t) that are
proportional to the car's current velocity v(t) by a factor of Kfriction. If all other forces impeding
the car's acceleration are lumped into Fload(t) and the force applied by the engine Fengine(t)
is proportional to the controller's output by a factor of Kengine, then v(t) will obey equation [2]
as shown in equations [3] through [5].
In equation [5], the process variable is v(t) and the load variable is LV(t) = –Fload (t)/Kfriction.
The process gain is K = Kengine/Kfriction and the process time constant is T = m/Kfriction. In
this example there is no deadtime since the speed of the car begins to change as soon as
the cruise controller activates the accelerator. The car will not reach its final speed for some
time, but it will begin to accelerate almost immediately.
If a model like [2] or [5] can be defined for a process, its behavior can be quantified by
analyzing the model's parameters. A model's parameters in turn dictate the tuning constants
required to modify behavior of a process with a feedback controller. There are literally
hundreds of analytical techniques for translating model parameters into tuning constants.
Each approach uses a different model, different controller objectives, and different
mathematical tools.
The third approach to the tuning problem is something of a compromise between purely
heuristic trial-and-error techniques and the more rigorous analytical techniques. It was
originally proposed in 1942 by John G. Ziegler and Nathaniel B. Nichols of Taylor
Instruments and remains popular today because of its simplicity and its applicability to any
process governed by a model in the form of equation [2]. The Ziegler-Nichols tuning
technique will be the subject of "Back to Basics" (CE, Aug. 1998).
Application issues
Experienced PID users will note that none of the discussion so far applies directly to the
commercial PID controllers currently running more than 90% of their industrial processes.
Several subtle flaws in the basic PID theory have been discovered during the last 50 years of
real-life applications.
Consider, for example, the effects of actuator saturation. This occurs when the output signal
generated by the controller exceeds the capacity of the actuator. In the cruise control
example above, the PID formula may at some point call for a million 16 lbf-ft torque to be
applied to the drive axle. Mathematically, at least, that much force may be required to
achieve a particularly rapid acceleration.
Of course real engines can only apply a small fraction of that force, so the actual effects of
the controller's output will be limited to whatever the engine can do at full throttle. The
immediate result is a rate of acceleration much lower than expected since the engine is
"saturated" at its maximum capacity.
However, it is the long-term consequences of actuator saturation that have necessitated a fix
for equation [1] known as antiwindup protection. The controller's integral term is said to "wind
up" whenever the error signal is stuck in either positive or negative territory, as in this
example. That causes the integral action to grow larger and larger as the error accumulates
over time. The resulting control effort also keeps growing larger and larger until the error
finally changes sign and the accumulated error begins to diminish.
Unfortunately, a saturated actuator may be unable to reverse the error. The engine may not
be able to accelerate the car to the desired velocity, so the error between the desired velocity
and the actual velocity may remain positive forever. Even if the actual velocity does finally
exceed the setpoint, the accumulated error will be so large by then that the controller will
continue to generate a very large corrective effort. By the time enough negative errors have
been accumulated to bring the integral term back to zero, the controller may well have
http://www.manufacturing.net/ctl/index.asp?layout=articlePrint&articleID=CA189611 4/25/2005
Basics of Proportional-Integral-Derivative Control Page 4 of 4
The fix to this problem is to prevent integrator wind-up in the first place. When an actuator
saturates, the controller's integral action must be artificially limited until the error signal
changes sign. The simplest approach is to hold the integral term at its last value when
saturation is detected.
Alternative implementations
The PID formula itself has also been modified. Several variations on equation [1] have been
developed for commercial PID controllers; the most common being equation [6]. This version
involves differentiating the process variable PV(t) rather than the error e(t) = SP(t) – PV(t).
The idea here is to prevent abrupt changes in the controller's output every time the setpoint
changes. Note that the results are the same when the setpoint SP(t) is constant.
The tuning constants in equation [6] differ from those in equation [1] as well. The controller's
proportional gain now applies to all three terms rather than just the error e(t). This allows the
overall "strength" of the controller to be increased or decreased by manipulating just P (or its
inverse).
The other two tuning constants in equation [6] have been modified so that they may both be
expressed in units of time. This also gives some physical significance to the integral time TI.
Note that if the error e(t) could somehow be held constant, the total integral action would
increase to the level of the proportional action in exactly TI seconds. Although the error
should never remain constant while the controller is working, this formulation does give the
user a feel for the relative strengths of the integral and proportional terms; i.e., a long integral
time implies a relatively weak integral action, and vice versa.
For more details on the practical issues of applying PID controllers to real-life control
problems, refer to "Process Control Systems" by F. Greg Shinskey, available from the
Foxboro Training Institute at 1-888-FOXBORO. The author gratefully acknowledges Mr.
Shinskey's assistance in the preparation of this article.
© 2005, Reed Business Information, a division of Reed Elsevier Inc. All Rights Reserved.
http://www.manufacturing.net/ctl/index.asp?layout=articlePrint&articleID=CA189611 4/25/2005