Fixing PID
Fixing PID
Fixing PID
11/30/2012
Share
Reset windup also occurs when the actuator is turned off but the
controller isnt. In a cascade controller, for example, the outer-loop
controller will see no response to its control efforts while the inner
loop is in manual mode. If the outer-loop controller is left operating
during that interval, its integral action will wind up as the error
remains constant.
Similarly, when the burner, valve, or pump is shut down between
cycles of a batching operation, the process variable is prevented from
getting any closer to the setpoint, again leading to windup. Thats not
a problem while the actuator remains off, but as soon the actuator is
reactivated at the beginning of the next batch, the controller will
immediately call for a 100% control effort and saturate the actuator.
The obvious solution to this problem is to turn off the controllers
integrator whenever the actuator is turned off or to eliminate the error
artificially by adjusting the setpoint to whatever value the process
variable takes between batches. But theres another approach that
not only prevents reset windup between batches but actually
improves the controllers performance during the next batch.
Pre-loading freezes the output of the controllers integrator between
batches so that the integral action starts the next batch with the total
integrated error that it had accumulated as of the end of the previous
batch. This technique assumes that the controller is eventually going
to need the same amount of integral action to reach the same steady
state as in the previous batch, so theres no point in starting the
integrated error at zero. With pre-loading, the integral action
essentially picks up right where it left off at the end of the previous
batch, thereby shortening the time required to achieve a steady state
in the next batch.
Pre-loading works best if each successive batch is more-or-less
identical to its predecessor so that the controller is attempting to
achieve the same setpoint under the same load conditions every
time. But even if the batches arent identical, it is sometimes possible
to use a mathematical model of the process to predict what level of
integral action is eventually going to be required to achieve a steady
state. The required integrated error can then be deduced and preloaded into the controllers integrator at the start of each batch. This
approach will also work for a continuous process if it can be modeled
prior to the initial start-up.
Bumpless transfer
total integrated error that the controller can accumulate during the
interval that the error is fixed.
Deadtime-induced windup can also be ameliorated by making the
integral action intermittent. Let the proportional action do all the work
until the process variable has settled somewhere close to the
setpoint, then turn on the integral action only long enough to
eliminate the remaining steady-state error. This approach not only
delays the onset of windup, it gives the integral action only small
errors to deal with, thereby reducing the maximum windup effect.
But wait, theres more
This only scratches the surface of the many ways engineers have
sought to improve control performance. The PID algorithm has also
been modified to deal with velocity-limited actuators, time-varying
process models, noise in the process variable measurement,
excessive derivative action during setpoint changes, and more.
Future installments of this series will look at the effects these
problems cause and how they can be avoided.
Vance VanDoren, PhD, PE, is Control Engineering contributing
content specialist. Reach him at controleng(at)msn.com.
Related News:
Tuning PID control loops for fast response - 01.07.2014
12:09
Fixing PID, Part 2 - 28.04.2014 14:20
PID math demystified, part 1 - 06.05.2013 14:02
Fundamentals of lambda tuning - 16.04.2013 11:28
Evolving PID tuning rules - 13.03.2013 14:33
Feedback controllers do their best - 16.10.2012 10:27
Disturbance-Rejection vs. Setpoint-Tracking
Controllers - 26.09.2011 12:47
Applying gain scheduling - 25.02.2011 11:51
Back to Basics: Closed-loop stability - 17.08.2010 13:27
The Three Faces of PID - 01.03.2007 07:00
04/28/2014
Share
Filtering
The simplest solution to this problem is to reduce the derivative gain
when measurement noise is high, but doing so limits its
effectiveness. The measurement noise itself can sometimes be
reduced by fixing the sensor or by filtering the process variable
measurement mathematically. A process variable filter essentially
averages the sensor's most recent outputs to produce a better
estimate of the process variable's actual value.
However, process variable filters have their limitations. They only
work if the measurement noise is truly random, sometimes increasing
and sometimes decreasing the sensor's output in equal measure. If
those positive and negative blips also occur with equal frequency,
then the filter's averaging operation will tend to cancel them out. But
if the measurement noise tends to skew the sensor's output
consistently in one direction or the other, the filtered process variable
will tend to run consistently too high or too low, thereby deceiving the
controller into working too hard or too little.
A process variable filter also slows the controller's reaction time. If the
filter is configured to average a particularly long sequence of sensor
outputs, it will do a better job of cancelling out random blips, but it will
also tend to miss the most recent changes in the actual process
variable. The filter needs to see a sustained change in the sensor's
output before it can report a new value of the process variable to the
controller. The controller can't even see, let alone react to rapid,
short-term changes in the process variable, as discussed in the
"Filtering" section below.
As a compromise, some PID controllers can be configured to filter the
process variable to differing degrees when computing the
proportional, integral, and derivative actions. The derivative action
requires the most filtering since that's where measurement noise
causes the most problems. The proportional action may benefit from
less filtering (that is, a filter incorporating a shorter sequence of
sensor outputs) in order to remain responsive to short-term changes
in the process variable. And since the integral action itself serves as
a filter, it may require no process variable filtering at all.
Alternately, a filter can be applied to the control effort instead of the
process variable. Doing so permits the measurement noise to enter
into the PID calculations (especially the "D"), but the noisy control
effort that results is smoothed by the filter before reaching the
actuator. A filter can also help slow down the control effort to prevent