#LyX 1.3 created this file. For more info see http://www.lyx.org/
\lyxformat 221
\textclass book
\language english
\inputencoding auto
\fontscheme default
\graphics default
\paperfontsize default
\spacing single
\papersize Default
\paperpackage a4
\use_geometry 0
\use_amsmath 0
\use_natbib 0
\use_numerical_citations 0
\paperorientation portrait
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\defskip medskip
\quotes_language english
\quotes_times 2
\papercolumns 1
\papersides 1
\paperpagestyle default
\layout Subsection
PID Controller
\layout Standard
A proportional-integral-derivative controller (PID controller) is a common
feedback loop component in industrial control systems.
\begin_inset Foot
collapsed true
\layout Standard
This Subsection is taken from an much more extensive article found at http://en.w
ikipedia.org/wiki/PID_controller
\end_inset
\layout Standard
The Controller compares a measured value from a process (typically an industrial
process) with a reference setpoint value.
The difference (or "error" signal) is then used to calculate a new value
for a manipulatable input to the process that brings the process' measured
value back to its desired setpoint.
\layout Standard
Unlike simpler control algorithms, the PID controller can adjust process
outputs based on the history and rate of change of the error signal, which
gives more accurate and stable control.
(It can be shown mathematically that a PID loop will produce accurate,
stable control in cases where a simple proportional control would either
have a steady-state error or would cause the process to oscillate).
\layout Subsubsection
Control loop basics
\layout Standard
Intuitively, the PID loop tries to automate what an intelligent operator
with a gauge and a control knob would do.
The operator would read a gauge showing the output measurement of a process,
and use the knob to adjust the input of the process (the "action") until
the process's output measurement stabilizes at the desired value on the
gauge.
\layout Standard
In older control literature this adjustment process is called a "reset"
action.
The position of the needle on the gauge is a "measurement", "process value"
or "process variable".
The desired value on the gauge is called a "setpoint" (also called "set
value").
The difference between the gauge's needle and the setpoint is the "error".
\layout Standard
A control loop consists of three parts:
\layout Standard
1.
Measurement by a sensor connected to the process (e.g.
encoder),
\layout Standard
2.
Decision in a controller element,
\layout Standard
3.
Action through an output device such as an motor.
\layout Standard
As the controller reads a sensor, it subtracts this measurement from the
"setpoint" to determine the "error".
It then uses the error to calculate a correction to the process's input
variable (the "action") so that this correction will remove the error from
the process's output measurement.
\layout Standard
In a PID loop, correction is calculated from the error in three ways: cancel
out the current error directly (Proportional), the amount of time the error
has continued uncorrected (Integral), and anticipate the future error from
the rate of change of the error over time (Derivative).
\layout Standard
A PID controller can be used to control any measurable variable which can
be affected by manipulating some other process variable.
For example, it can be used to control temperature, pressure, flow rate,
chemical composition, speed, or other variables.
Automobile cruise control is an example of a process outside of industry
which utilizes crude PID control.
\layout Standard
Some control systems arrange PID controllers in cascades or networks.
That is, a "master" control produces signals used by "slave" controllers.
One common situation is motor controls: one often wants the motor to have
a controlled speed, with the "slave" controller (often built into a variable
frequency drive) directly managing the speed based on a proportional input.
This "slave" input is fed by the "master" controllers' output, which is
controlling based upon a related variable.
\layout Subsubsection
Theory
\layout Standard
"PID" is named after its three correcting calculations, which all add to
and adjust the controlled quantity.
These additions are actually "subtractions" of error, because the proportions
are usually negative:
\layout Subparagraph
Proportional
\layout Standard
To handle the present, the error is multiplied by a (negative) constant
P (for "proportional"), and added to (subtracting error from) the controlled
quantity.
P is only valid in the band over which a controller's output is proportional
to the error of the system.
Note that when the error is zero, a proportional controller's output is
zero.
\layout Subparagraph
Integral
\layout Standard
To learn from the past, the error is integrated (added up) over a period
of time, and then multiplied by a (negative) constant I (making an average),
and added to (subtracting error from) the controlled quantity.
I averages the measured error to find the process output's average error
from the setpoint.
A simple proportional system either oscillates, moving back and forth around
the setpoint because there's nothing to remove the error when it overshoots,
or oscillates and/or stabilizes at a too low or too high value.
By adding a negative proportion of (i.e.
subtracting part of) the average error from the process input, the average
difference between the process output and the setpoint is always being
reduced.
Therefore, eventually, a well-tuned PID loop's process output will settle
down at the setpoint.
\layout Subparagraph
Derivative
\layout Standard
To handle the future, the first derivative (the slope of the error) over
time is calculated, and multiplied by another (negative) constant D, and
also added to (subtracting error from) the controlled quantity.
The derivative term controls the response to a change in the system.
The larger the derivative term, the more rapidly the controller responds
to changes in the process's output.
\layout Standard
More technically, a PID loop can be characterized as a filter applied to
a complex frequency-domain system.
This is useful in order to calculate whether it will actually reach a stable
value.
If the values are chosen incorrectly, the controlled process input can
oscillate, and the process output may never stay at the setpoint.
\layout Subsubsection
Loop Tuning
\layout Standard
"Tuning" a control loop is the adjustment of its control parameters (gain/propor
tional band, integral gain/reset, derivative gain/rate) to the optimum values
for the desired control response.
The optimum behavior on a process change or setpoint change varies depending
on the application.
Some processes must not allow an overshoot of the process variable from
the setpoint.
Other processes must minimize the energy expended in reaching a new setpoint.
Generally stability of response is required and the process must not oscillate
for any combination of process conditions and setpoints.
\layout Standard
Tuning of loops is made more complicated by the response time of the process;
it may take minutes or hours for a setpoint change to produce a stable
effect.
Some processes have a degree of non-linearity and so parameters that work
well at full-load conditions don't work when the process is starting up
from no-load.
This section describes some traditional manual methods for loop tuning.
\layout Standard
There are several methods for tuning a PID loop.
The choice of method will depend largely on whether or not the loop can
be taken "offline" for tuning, and the response speed of the system.
If the system can be taken offline, the best tuning method often involves
subjecting the system to a step change in input, measuring the output as
a function of time, and using this response to determine the control parameters.
\layout Subparagraph
Simple method
\layout Standard
If the system must remain online, one tuning method is to first set the
I and D values to zero.
Increase the P until the output of the loop oscillates.
Then increase I until oscillation stops.
Finally, increase D until the loop is acceptably quick to reach its reference.
A fast PID loop tuning usually overshoots slightly to reach the setpoint
more quickly; however, some systems cannot accept overshoot.
\layout Standard
\align center
\begin_inset Tabular
\begin_inset Text
\layout Standard
Parameter
\end_inset
|
\begin_inset Text
\layout Standard
Rise Time
\end_inset
|
\begin_inset Text
\layout Standard
Overshoot
\end_inset
|
\begin_inset Text
\layout Standard
Settling Time
\end_inset
|
\begin_inset Text
\layout Standard
S.S.
Error
\end_inset
|
\begin_inset Text
\layout Standard
P
\end_inset
|
\begin_inset Text
\layout Standard
Decrease
\end_inset
|
\begin_inset Text
\layout Standard
Increase
\end_inset
|
\begin_inset Text
\layout Standard
Small Change
\end_inset
|
\begin_inset Text
\layout Standard
Decrease
\end_inset
|
\begin_inset Text
\layout Standard
I
\end_inset
|
\begin_inset Text
\layout Standard
Decrease
\end_inset
|
\begin_inset Text
\layout Standard
Increase
\end_inset
|
\begin_inset Text
\layout Standard
Increase
\end_inset
|
\begin_inset Text
\layout Standard
Eliminate
\end_inset
|
\begin_inset Text
\layout Standard
D
\end_inset
|
\begin_inset Text
\layout Standard
Small Change
\end_inset
|
\begin_inset Text
\layout Standard
Decrease
\end_inset
|
\begin_inset Text
\layout Standard
Decrease
\end_inset
|
\begin_inset Text
\layout Standard
Small Change
\end_inset
|
\end_inset
\layout Standard
\align center
Effects of increasing parameters
\layout Subparagraph
Ziegler-Nichols method
\layout Standard
Another tuning method is formally known as the "Ziegler-Nichols method",
introduced by John G.
Ziegler and Nathaniel B.
Nichols.
It starts in the same way as the method described before: first set the
I and D gains to zero and then increase the P gain until the output of
the loop starts to oscillate.
Write down the critical gain (
\begin_inset Formula $K_{c}$
\end_inset
) and the oscillation period of the output (
\begin_inset Formula $P_{c}$
\end_inset
).
Then adjust the P, I and D controls as the table shows:
\layout Standard
\pagebreak_bottom \align center
\begin_inset Tabular
\begin_inset Text
\layout Standard
Control type
\end_inset
|
\begin_inset Text
\layout Standard
P
\end_inset
|
\begin_inset Text
\layout Standard
I
\end_inset
|
\begin_inset Text
\layout Standard
D
\end_inset
|
\begin_inset Text
\layout Standard
P
\end_inset
|
\begin_inset Text
\layout Standard
\begin_inset Formula $.5K_{c}$
\end_inset
\end_inset
|
\begin_inset Text
\layout Standard
\end_inset
|
\begin_inset Text
\layout Standard
\end_inset
|
\begin_inset Text
\layout Standard
PI
\end_inset
|
\begin_inset Text
\layout Standard
\begin_inset Formula $.45K_{c}$
\end_inset
\end_inset
|
\begin_inset Text
\layout Standard
\begin_inset Formula $1.2/P_{c}$
\end_inset
\end_inset
|
\begin_inset Text
\layout Standard
\end_inset
|
\begin_inset Text
\layout Standard
PID
\end_inset
|
\begin_inset Text
\layout Standard
\begin_inset Formula $.6K_{c}$
\end_inset
\end_inset
|
\begin_inset Text
\layout Standard
\begin_inset Formula $2/P_{c}$
\end_inset
\end_inset
|
\begin_inset Text
\layout Standard
\begin_inset Formula $P\times P_{c}/8$
\end_inset
\end_inset
|
\end_inset
\the_end