When must a PID be tuned, and why?
You may not encounter the same process twice. If you
don't, you won�t see the same type of controller twice. There are
different types of objectives to be addressed by a controller: error can
be minimized in different ways, as can CV activity. Some systems have
interactions, and those interactions may be of various strengths. And
any interaction affects tuning of an individual PID. There is no single
definition of best tuned that applies to all loops, so no single tuning
aid will tune all loops optimally. Tuning is part of the design of the
loop.
You might see a need for a loop to be tuned if it
responds slowly, or if it oscillates too much, or if it has a
steady-state error; and most definitely if it's unstable! :-)
A PID MAY HAVE TO BE TUNED WHEN...
- Careful consideration was not given to the units
of gains and other parameters.
- The process dynamics were not well-understood
when the gains were first set, or the dynamics have (for any reason)
changed.
- Some characteristics of the control system are
direction-dependent (e.g. actuator piston area, heat-up/cool-down of
powerful heaters).
- You (as designer or operator) think the
controller can perform better.
Always remember to check the hardware first. You may
not have to tune the controller at all.
A PID MAY NOT HAVE TO BE TUNED
WHEN...
- A control valve sticks. (You may be able to spot
this without leaving the control room.) Valves must be able to
respond to commands.
- A control valve is stripped out from
high-pressure flow. A valve's response to a command must have some
effect on the system.
- Measurement taps are plugged, or sensors are
disconnected. Bad measurements may have you correcting for errors
that don't exist.
How is a PID tuned?
Coming up with first-pass tuning values is very easy:
make a step change on the output, trend the response, pull two values
off the trend, and apply a few simple equations. You then check how well
the tuning works in real life.
That's the hard part. And for many loops, this works
fine. But you have to be able to come up with acceptable control for the
problem loops as well, and that doesn't reduce to a simple procedure.
The operator
In a process plant you do NOT block the operator from
doing anything unless it is absolutely unsafe. In all other areas, the
operator is the driver and has a free hand.
Gain
scheduling
Systems in which process dynamics will change in known
ways during operation will often benefit from gain scheduling, in which
Kp (at least) is the result of a
closed-form expression or a table look-up based on a known process
characteristic. This technique depends on good knowledge or prediction
of the process.
Feedforward
control
Systems in which set point changes or disturbances can
be anticipated can sometimes benefit from feedforward action, in which
the anticipated changes are processed independently of process error.
You can compensate for them approximately, before they have a chance to
influence process dynamics.
One reader does this with cascade control loops on the
Honeywell DCS by using the SP as feedforward input, then optimizing
feedback response with the normal tuning constants, and adjusting
feedforward gain to optimize the SP response separately.
Inner loop control
Sometimes you may want to control separate quantities
within the same system, e.g. position and velocity in motion control. In
those cases you might have an outer loop for position, and an inner
(faster responding) loop for velocity. (Don�t apply Kd
twice!)