Академический Документы
Профессиональный Документы
Культура Документы
the absence of the respective control actions. PI controllers are fairly common, since derivative action is sensitive to measurement noise, whereas the absence of an
integral term may prevent the system from reaching its
target value due to the control action.
Plant /
Process
The Navy ultimately did not adopt the system, due to re- the container is too hot or too cold and by how much.
sistance by personnel. Similar work was carried out and After measuring the temperature (PV), and then calcupublished by several others in the 1930s.
lating the error, the controller decides how to set the tap
In the early history of automatic process control the position (MV). The obvious method is proportional conPID controller was implemented as a mechanical device. trol: the tap position is set in proportion to the current erThese mechanical controllers used a lever, spring and a ror. A more complex control may include another term:
mass and were often energized by compressed air. These derivative action. This considers the rate of change of
pneumatic controllers were once the industry standard.
error, adding more or less hot water depending on how
Electronic analog controllers can be made from a solid- fast the error is approaching zero. Finally, integral acstate or tube amplier, a capacitor and a resistor. Elec- tion adds a third term, using the accumulated temperatronic analog PID control loops were often found within ture error in the past to detect whether the temperature
more complex electronic systems, for example, the head of the container is settling out too low or too high and
positioning of a disk drive, the power conditioning of a set the tap proportional to the past errors. An alternative
power supply, or even the movement-detection circuit of formulation of integral action is to change the current tap
a modern seismometer. Nowadays, electronic controllers position in steps proportional to the current error. Over
have largely been replaced by digital controllers imple- time the steps add up (which is the discrete time equivalent to integration) the past errors.
mented with microcontrollers or FPGAs.
Most modern PID controllers in industry are implemented in programmable logic controllers (PLCs) or as
a panel-mounted digital controller. Software implementations have the advantages that they are relatively cheap
and are exible with respect to the implementation of
the PID algorithm. PID temperature controllers are applied in industrial ovens, plastics injection machinery, hot
stamping machines and packing industry.
Variable voltages may be applied by the time proportioning form of pulse-width modulation (PWM)a cycle
time is xed, and variation is achieved by varying the proportion of the time during this cycle that the controller
outputs +1 (or 1) instead of 0. On a digital system
the possible proportions are discretee.g., increments of
0.1 second within a 2 second cycle time yields 20 possible steps: percentage increments of 5%; so there is a
discretization error, but for high enough time resolution
this yields satisfactory performance.
3.2
Integral term
The PID control scheme is named after its three correcting terms, whose sum constitutes the manipulated
variable (MV). The proportional, integral, and derivative
terms are summed to calculate the output of the PID controller. Dening u(t) as the controller output, the nal
form of the PID algorithm is:
less responsive or less sensitive controller. If the proportional gain is too low, the control action may be too small
when responding to system disturbances. Tuning theory
and industrial practice indicate that the proportional term
should contribute the bulk of the output change.
d
e( ) d + Kd e(t)
dt
where
Kp : Proportional gain, a tuning parameter
Ki : Integral gain, a tuning parameter
Kd : Derivative gain, a tuning parameter
e : Error = SP P V
t : Time or instantaneous time (the present)
: Variable of integration; takes on values
from time 0 to the present t .
3.1
Proportional term
Iout = Ki
e( ) d
0
The integral term accelerates the movement of the process towards setpoint and eliminates the residual steadystate error that occurs with a pure proportional controller.
The proportional term produces an output value that is However, since the integral term responds to accumuproportional to the current error value. The proportional lated errors from the past, it can cause the present value
response can be adjusted by multiplying the error by a to overshoot the setpoint value (see the section on loop
constant Kp, called the proportional gain constant.
tuning).
Plot of PV vs time, for three values of Kp (Ki and Kd held constant)
The derivative of the process error is calculated by determining the slope of the error over time and multiplying
this rate of change by the derivative gain Kd. The magnitude of the contribution of the derivative term to the
overall control action is termed the derivative gain, Kd.
LOOP TUNING
ing. Usually, initial designs need to be adjusted repeatedly through computer simulations until the closed-loop
system performs or compromises as desired.
Some processes have a degree of nonlinearity and so parameters that work well at full-load conditions don't work
when the process is starting up from no-load; this can be
corrected by gain scheduling (using dierent parameters
in dierent operating regions).
4.1 Stability
If the PID controller parameters (the gains of the proportional, integral and derivative terms) are chosen incorrectly, the controlled process input can be unstable,
i.e., its output diverges, with or without oscillation, and is
limited only by saturation or mechanical breakage. Instability is caused by excess gain, particularly in the presence
of signicant lag.
d
e(t)
dt
Designing and tuning a PID controller appears to be conceptually intuitive, but can be hard in practice, if multiple
(and often conicting) objectives such as short transient
and high stability are to be achieved. PID controllers often provide acceptable control using default tunings, but
performance can generally be improved by careful tuning, and performance may be unacceptable with poor tun-
4.4
Manual tuning
4.5
ZieglerNichols method
4.6
sent to the process, allowing the controller itself to calculate optimal tuning values.
Other formulas are available to tune the loop according
to dierent performance criteria. Many patented formulas are now embedded within PID tuning software and
hardware modules.[15]
Advances in automated PID Loop Tuning software also
deliver algorithms for tuning PID Loops in a dynamic
or Non-Steady State (NSS) scenario. The software will
model the dynamics of a process, through a disturbance,
and calculate PID control parameters in response.
Most modern industrial facilities no longer tune loops using the manual calculation methods shown above. Instead, PID tuning and loop optimization software are
used to ensure consistent results. These software packages will gather the data, develop process models, and
suggest optimal tuning. Some software packages can even
develop tuning by gathering data from reference changes. 5.1 Linearity
Mathematical PID loop tuning induces an impulse in the
system, and then uses the controlled systems frequency Another problem faced with PID controllers is that they
response to design the PID loop values. In loops with re- are linear, and in particular symmetric. Thus, perforsponse times of several minutes, mathematical loop tun- mance of PID controllers in non-linear systems (such as
ing is recommended, because trial and error can take days HVAC systems) is variable. For example, in temperature
just to nd a stable set of loop values. Optimal values are control, a common use case is active heating (via a heating
harder to nd. Some digital loop controllers oer a self- element) but passive cooling (heating o, but no cooling),
tuning feature in which very small setpoint changes are so overshoot can only be corrected slowly it cannot be
forced downward. In this case the PID should be tuned stabilized. Now when the door is opened and something
to be overdamped, to prevent or reduce overshoot, though cold is put into the furnace the temperature drops below
this reduces performance (it increases settling time).
the setpoint. The integral function of the controller tends
to compensate for error by introducing another error in
the positive direction. This overshoot can be avoided by
5.2 Noise in derivative
freezing of the integral function after the opening of the
door for the time the control loop typically needs to reheat
A problem with the derivative term is that it amplies the furnace.
higher frequency measurement or process noise that can
cause large amounts of change in the output. It does
this so much, that a physical controller cannot have a 6.3 PI controller
true derivative term, but only an approximation with limited bandwidth. It is often helpful to lter the measurements with a low-pass lter in order to remove higherfrequency noise components. As low-pass ltering and
derivative control can cancel each other out, the amount
of ltering is limited. So low noise instrumentation
can be important. A nonlinear median lter may be
used, which improves the ltering eciency and practical Basic block of a PI controller
performance.[16] In some cases, the dierential band can
be turned o with little loss of control. This is equivalent A PI Controller (proportional-integral controller) is a
to using the PID controller as a PI controller.
special case of the PID controller in which the derivative
(D) of the error is not used.
KP + KI dt
The basic PID algorithm presents some challenges in control applications that have been addressed by minor mod- where is the error or deviation of actual measured value
(PV) from the setpoint (SP).
ications to the PID form.
6.1
Integral windup
= SP P V
A PI controller can be modelled easily in software such
as Simulink or Xcos using a ow chart box involving
Laplace operators:
One common problem resulting from the ideal PID implementations is integral windup. Following a large
G(1 + s)
change in setpoint the integral term can accumulate an erC=
ror larger than the maximal value for the regulation varis
able (windup), thus the system overshoots and continues where
to increase until this accumulated error is unwound. This
problem can be addressed by:
G = KP
Disabling the integration until the PV has entered
G/ = KI
the controllable region
Setting a value for G is often a trade o between decreas Preventing the integral term from accumulating
ing overshoot and increasing settling time.
above or below pre-determined bounds
The lack of derivative action may make the system more
Back-calculating the integral term to constrain the
steady in the steady state in the case of noisy data. This
regulator output within feasible bounds.[17]
is because derivative action is more sensitive to higherfrequency terms in the inputs.
6.2
Overshooting from known distur- Without derivative action, a PI-controlled system is less
responsive to real (non-noise) and relatively fast alterbances
6.7
6.4
Bumpless Operation
Deadband
Many PID loops control a mechanical device (for example, a valve). Mechanical maintenance can be a major
cost and wear leads to control degradation in the form
of either stiction or a deadband in the mechanical response to an input signal. The rate of mechanical wear
is mainly a function of how often a device is activated
to make a change. Where wear is a signicant concern,
the PID loop may have an output deadband to reduce the
frequency of activation of the output (valve). This is accomplished by modifying the controller to hold its output
steady if the change would be small (within the dened
deadband range). The calculated output must leave the
deadband before the actual output will change.
6.5
The proportional and derivative terms can produce excessive movement in the output when a system is subjected
to an instantaneous step increase in the error, such as a
large setpoint change. In the case of the derivative term,
this is due to taking the derivative of the error, which is
very large in the case of an instantaneous step change.
As a result, some PID algorithms incorporate some of
the following modications:
Set point ramping In this modication, the setpoint is
gradually moved from its old value to a newly specied value using a linear or rst order dierential
ramp function. This avoids the discontinuity present
in a simple step change.
7
Knowledge about the system (such as the desired acceleration and inertia) can be fed forward and combined
with the PID output to improve the overall system performance. The feed-forward value alone can often provide the major portion of the controller output. The PID
controller primarily has to compensate whatever dierence or error remains between the setpoint (SP) and the
system response to the open loop control. Since the feedforward output is not aected by the process feedback, it
can never cause the control system to oscillate, thus improving the system response without aecting stability.
Feed forward can be based on the setpoint and on extra
measured disturbances. Set point weighting is a simple
form of feed forward.
For example, in most motion control systems, in order to
accelerate a mechanical load under control, more force is
required from the actuator. If a velocity loop PID controller is being used to control the speed of the load and
command the force being applied by the actuator, then
it is benecial to take the desired instantaneous acceleration, scale that value appropriately and add it to the output of the PID velocity loop controller. This means that
whenever the load is being accelerated or decelerated, a
proportional amount of force is commanded from the actuator regardless of the feedback value. The PID loop in
this situation uses the feedback information to change the
combined output to reduce the remaining dierence between the process setpoint and the feedback value. Working together, the combined open-loop feed-forward controller and closed-loop PID controller can provide a more
responsive control system.
PID controllers are often implemented with a bumpless initialization feature that recalculates an appropriate
integral accumulator term to maintain a consistent process output through parameter changes,[18] for example
by storing the integral of the integral gain times the error
rather than storing the integral of the error and postmultiplying by the integral gain.
Cascade control
8
8.1
MV(t) = Kp e(t) + Ki
e( ) d + Kd
0
d
e(t)
dt
The form of the PID controller most often encountered in 8.3 Basing derivative action on PV
industry, and the one most relevant to tuning algorithms
is the standard form. In this form the Kp gain is applied In most commercial control systems, derivative action is
to the Iout , and Dout terms, yielding:
based on PV rather than error. This is because the digitized version of the algorithm produces a large unwanted
)
(
t
spike when the SP is changed. If the SP is constant
d
1
then changes in PV will be the same as changes in ere( ) d + Td e(t)
MV(t) = Kp e(t) +
Ti 0
dt
ror. Therefore this modication makes no dierence to
where
the way the controller responds to process disturbances.
8.7
Series/interacting form
(
MV(t) = Kp
8.4
1
e(t) +
Ti
)
d
e( ) d Td P V (t)
dt
8.5
Then
G(s)H(s) =
Kd
s
)
d
P V (t)
(i s + 1)
dt
0
G(s) = Kc
(d s + 1)
i s
describes an eective chart-based method.
where the parameters are related to the parameters of the
standard form through
MV(t) = Kp
King[21]
Kp
= 20
Kd
P V (t) +
1
Ti
e( ) d Td
Td =
with
2
G(s) = Kp +
Ki
Kd s + Kp s + Ki
+ Kd s =
s
s
=1+
d
i
8.6
1
H(s) = 2
s + 20 s + 02
tk
e( ) d =
0
e(ti )t
i=1
If
Ki
= 02
Kd
de(tk )
e(tk ) e(tk1 )
=
dt
t
10
12
Thus, a velocity algorithm for implementation of the discretized PID controller in a MCU is obtained by dierentiating u(t) , using the numerical denitions of the rst
and second derivative and solving for u(tk ) and nally
obtaining:
REFERENCES
Instability
Oscillation
12 References
[(
)
(
)
]
t
Td
2Td
Td
[1]
Araki,
M.
PID
Control.
u(tk ) = u(tk1 )+Kp 1 +
+
e(tk ) + 1
e(tk1 ) +
e(tk2 )
Ti
t
t
t
s.t. Ti = Kp /Ki , Td = Kd /Kp
Pseudocode
10
Notes
[1] A common assumption often made for ProportionalIntegral-Derivative (PID) control design, as done by
Ziegler and Nichols, is to take the integral time constant to
be four times the derivative time constant. Although this
choice is reasonable, selecting the integral time constant
to have this value may have had something to do with the
fact that, for the ideal case with a derivative term with no
lter, the PID transfer function consists of two real and
equal zeros in the numerator.[12]
11
See also
Control theory
Feedback
[11] Ang, K.H., Chong, G.C.Y., and Li, Y. (2005). PID control system analysis, design, and technology, IEEE Trans
Control Systems Tech, 13(4), pp.559-576. http://eprints.
gla.ac.uk/3817/1/IEEE3.pdf
[12] Atherton, Drek P (December 2014). Almost Six
Decades in Control Engineering. Control Systems, IEEE.
doi:10.1109/MCS.2014.2359588.
[13] Li, Y., et al. (2004) CAutoCSD - Evolutionary search and
optimisation enabled computer automated control system
design, Int J Automation and Computing, vol. 1, No. 1,
pp. 76-88. ISSN 1751-8520. http://userweb.eng.gla.ac.
uk/yun.li/ga_demo/
[14] Jinghua Zhong (Spring 2006). PID Controller Tuning:
A Short Tutorial. Retrieved 2011-04-04.
[15] Y Li, KH Ang, GCY Chong, Patents, software, and hardware for PID control: An overview and analysis of the
current art, Control Systems, IEEE, 26 (1), 42-54. http:
//eprints.gla.ac.uk/3816/1/IEEE2pdf.pdf
11
[16] Li, Y. and Ang, K.H. and Chong, G.C.Y. (2006) PID control system analysis and design - Problems, remedies, and
future directions. IEEE Control Systems Magazine, 26
(1). pp. 32-41. ISSN 0272-1708
[17] Cooper, Douglas. Integral (Reset) Windup, Jacketing
Logic and the Velocity PI Form. Retrieved 2014-02-18.
[18] Cooper, Douglas. PI Control of the Heat Exchanger.
Practical Process Control by Control Guru. Retrieved
2014-02-27.
[19] Yang, T. (June 2005). Architectures of Computational
Verb Controllers: Towards a New Paradigm of Intelligent
Control. International Journal of Computational Cognition (Yangs Scientic Press) 3 (2): 74101.
[20] Liang, Y.-L.() et al. (2009). Controlling fuel annealer using computational verb PID controllers. Proceedings of
the 3rd international conference on Anti-Counterfeiting, security, and identication in communication (IEEE): 417
420.
[21] King, Myke. Process Control: A Practical Approach. Wiley, 2010, p. 52-78
[22] Discrete PI and PID Controller Design and Analysis for
Digital Implementation. Scribd.com. Retrieved 201104-04.
[23] PID process control, a Cruise Control example.
CodeProject. 2009. Retrieved 4 November 2012.
13 External links
PID tuning using Mathematica
12
14
14
14.1
PID controller Source: http://en.wikipedia.org/wiki/PID%20controller?oldid=655239360 Contributors: Mav, The Anome, Ray Van De
Walker, Heron, Patrick, Michael Hardy, Kku, Ronz, Ciphergoth, Charles Matthews, Andrewman327, Omegatron, Robbot, Hankwang,
Pko, Dominick, Giftlite, BenFrantzDale, Bobblewik, Jrdioko, Wmahan, LiDaobing, Icairns, LHOON, Sonett72, Seanp, Rich Farmbrough,
Marsian, Harriv, CanisRufus, Shanes, JLLCuba, Femto, Nigelj, Spalding, Meestaplu, Billymac00, Vizcarra, Drf5n, Orzetto, Mononoke,
Wtshymanski, HenkvD, AnitaS, Gene Nygaard, Macaddct1984, Marudubshinki, BD2412, Vary, Strait, Mbutts, Ademkader, Skorkmaz,
Alll, Chiklit, Mathbot, BradBeattie, Krishnavedala, Bgwhite, Aluvus, Encyclops, Bora Eryilmaz, Epolk, Stephenb, Gaius Cornelius, Abarry,
Scs, Zephalis, BeastRHIT, Dangrayorg, Liyang, Deville, Shimei, Zerodamage, Karimnassar, GunnerJr, XieChengnuo, Attilios, SmackBot, BillyBleach, Sectryan, Meatmanek, Bluebot, Optikos, Oli Filth, Russvdw, Papa November, Nbarth, Mohan1986, Laurentsavaete,
Dethme0w, Bsodmike, Teoryn, Aeolian, Sesc, Crinoid, Kanji, Acdx, SilverStar, Copeland.James.H, Warniats, Mbeychok, Coredesat, Jdigangi, Yasirniazkhan, Dicklyon, Spiel496, Xenodevil, Gabelstaplerfahrer, Saxbryn, Kvng, Miles underwood, CapitalR, Md2perpe, Frank
Lofaro Jr., Mikiemike, Van helsing, Engelec, ProcessControlGuy, Steveaa, N2e, DanielRigal, Requestion, Pyrilium, Briantw, Thijs!bot,
AaronMK, GarrettSocling, Benjamander, A3RO, Caslon, Ejwong, Dvsphanindra, Ben pcc, Kreuzer5, Seaphoto, ForrestVoight, FastIkarus,
Briceb, JAnDbot, Kerotan, Magioladitis, VoABot II, Nyq, Learnfpga, Soulbot, Tremilux, Hypergeek14, Profr ettore, User A1, MartinBot, Anaxial, Motafa, Sk wiki, JonathonReinhart, Mausy5043, J.delanoy, Trusilver, Shriramrs31, Rdautel, Rod57, Fenn fukai, Mbbradford, KylieTastic, Cometstyles, Varnent, Dedmonds, Idioma-bot, Signalhead, S.borchers, Swrkoab, A.Ou, Je G., Nitin.mehta, Oh
Snap, Crohnie, Anna Lincoln, Dbaechtel, Cyberwriter, Q Science, Nave.notnilc, Dmcq, Movedgood, Relilles, Undead warrior, SMC89,
SieBot, NunoSoares, Unregistered.coward, Bentogoa, Robert - Northern VA, A. Carty, Masgatotkaca, Elcobbola, Dhateld, Othompson,
Frappucino, Altzinn, WakingLili, ClueBot, Jon Manseld, Bpavel88, Je bonilla, Liu.Yunxia, Blanchardb, Dja25, Howie Goodell, Brews
ohare, Printer222, SchreiberBike, LieAfterLie, Joel Saks, XLinkBot, Alexius08, WikiDao, Control.optimization, HexaChord, Albambot, Addbot, AkhtaBot, Spradlig, TutterMouse, Jbcmf, CyberneticSheepCZ, MrOllie, LaaknorBot, Glane23, Yobot, Legobot II, LyonL,
AnomieBOT, Zoomzoom1, Piano non troppo, Citation bot, ChristianG2, GB fan, ArthurBot, Rspadim, Ywaz, Wahapure, Kbosak, GrouchoBot, AutomationBooks, Mustafa Al-mosawi, RibotBOT, JonDePlume, Shadowjams, SD5, Dinhxuanduyet, Buesser, Citation bot 1,
Pteromys, Vivek.cd, Djgreeneld, Redbeanpaste, SchreyP, Tyvynain, Hughjack, Unbitwise, DARTH SIDIOUS 2, HK-90, MaykelMoya,
Smzoha, EmausBot, WikitanvirBot, Dzkd, Bdijkstra, Mmeijeri, K6ka, Karthikkumar411, F, Josve05a, Mkratz, Aturevsk, H3llBot, Jpmeena, Sinasgay, Computationalverb, Carmichael, RoyKok, Dabozz88, ClueBot NG, Satellizer, Ulrich67, Ec3243, 2m man, Oddbodz,
Helpful Pixie Bot, Wbm1058, BG19bot, Wiki13, Frze, Mrt3366, ChrisGualtieri, JYBot, Cerabot, Fwmchan, ThunderStormer, Wywin,
Musarsafwan, Panopticon57, Greatuser, Liwangyan, TheGrovesy, Vanamonde93, TravTigerEE, EvergreenFir, Applebytom, Epic Failure,
Impsswoon, Troll1993, Monkbot, Somu2011, Dacera, Controlexpert, Rogerwhittakerfan, Jorge Guerra Pires, KH-1, Ajuneja, Tomschou,
TimmmyK, Enraged Golem, Optimotowiki and Anonymous: 558
14.2
Images
14.3
Content license