Professional Documents
Culture Documents
CH 11 PID Control
CH 11 PID Control
PRÁCTICO Y AVANZADO
F Modelado de Procesos
F El Sistema de Medición
F Elementos Finales de Control
F Control PID SISO
F Estrategias de Control PID
F Sı́ntesis de Controladores SISO y MIMO
F Control Predictivo y Control Fuzzy
F Programas fuente en MATLAB
ii
Copyright
c 2012 Arturo Rojas-Moreno. Todos los derechos reservados.
ISBN
Queda rigurosamente prohibida la reproducción total o parcial de esta obra por cualquier
medio o procedimiento, sin la autorización escrita del propietario del “Copyright”.
Índice general
Bibliografı́a 69
Capı́tulo 1
This Chapter deals with the on–off (two positions) control and PID (Proportional
Integral and Derivative) controllers. The on–off controller is one of the oldest used in the
industry due to its implementation simplicity and acceptable operation. It can be used
to control SISO (Single Input Single Output) processes. On the other hand, the PID
controller is the one with the highest industrial application (approximately 90 %). It can
be employed to control SISO and multiloop processes.
r e u y
Gc (s) G p(s)
G m (s)
(a)
r e u y
G c1 (s) G p(s)
G c2 (s)
G m (s)
(b)
G a (s)
r u y
e
G c (s) G p(s)
G m (s)
(c)
Fig. 1.1: (a) and (b): Feedback control systems. (c): Feedback–feedforward control
system.
du dy
Limitador
r Filtro de e u u u Proceso más y
Controlador elemento
entrada u final de control
Sensor más
transmisor
dm
Fig. 1.2: SISO control system with input filter, saturator, and subject to effect of the
disturbances.
1.2 Transiente Response of Processes 3
u y
Proceso
u1 autoregulado y
1
u y
e τs
KP P.T.
Ts + 1 y0
u0
τ
t t1 t t t1 T t
0 0
curve shown in Fig. 1.3 can also be approximated by a TF of order n of the form
y(s) Kp y1 − y0
G(s) = = Kp = (1.2)
u(s) (Tn s + 1)n u1 − u0
Ejemplo 1.1
Determine two dynamic models describing the behavior braking speed of a DC motor
from its reaction curve, similar to that shown in Fig. 1.3. This curve was obtained by
manipulating the input u of the process, which is a DC voltage generator . The data
read were: U0 = 10 V, u1 = 20 V, y0 = 400 rpm, y1 = 600 rpm , dead time τ = 2 s,
and first order delay T = 9.2 s. Determine the normalized process gain knowing that
the maximum input voltage is 40 V and the rpm range of the measuring instrument
at the output is 0 to 1000 rpm.
4 ON–OFF AND PID CONTROL
Solution: The first dynamic model is equation (1.1), where τ = 2 s and T = 9.2 s.
y(s) Kp y1 − y0 600 − 400 rpm
G(s) = = e−τ s Kp = = = 20
u(s) (T s + 1) u1 − u0 20 − 10 V
The second dynamic model refers to equation (1.2). With the data provided in the
example we obtain: τ /T = 0.217. Using Table 1.1 we can be determine : n = 3, and
Tn /T = 0.270 , which means: Tn = 2,484 s . The TF takes the form
y(s) Kp 20
G(s) = = =
u(s) (Tn s + 1)n (2.484s + 1)3
The normalized gain Kpn is obtained from:
600−400
1000−0 0.2
Kpn = 20−10 = = 0.4
40−0
0.5
n 2 3 4 5 6 7 8 9 10
τ /T 0.104 0.218 0.320 0.410 0.493 0.591 0.641 0.709 0.775
Tn /T 0.368 0.270 0.224 0.195 0.175 0.151 0.148 0.140 0.132
Special Case
For the special case
0 < τ /T < 0.104
The dynamics of the self-regulated process can be approximated by the following TF
of second order
Y (s) KP y1 − y0
G(s) = = KP = (1.3)
U (s) (T1 s + 1)(T2 s + 1) u1 − u0
where T1 and T2 are two related time constants by the equation
T1 = kT2 k>1
The k constant is determined using Table 1.2.
Ejemplo 1.2
Find the model that describes the dynamic speed of a mechatronic system from
its reaction curve, similar to that shown in Fig. 1.3. The data read were: u0 = 5 V,
u1 = 15 V, y0 = 200 rpm, y1 = 300 rpm, τ = 2 s, T = 22 s.
Solution: The dynamic model is equation (1.3). Since τ /T = 0.09, using Table 1.3,
we can find: k = 2 y T1 /T = 0.175, which implies that T1 = 3.85 s and T2 = kT1 =
7.7 s. Given that KP = (300–200)/(15–5) = 10 rpm/V, the required TF is
Y (s) KP 10
G(s) = = =
U (s) (T1 s + 1)(T2 s + 1) (3.85s + 1)(7.7s + 1)
1.3 On–Off Control 5
k 1 2 3 4 5 6 7 8 9
τ /T 0.094 0.090 0.085 0.080 0.075 0.069 0.064 0.058 0.053
T1 /T 0.238 0.175 0.140 0.120 0.107 0.097 0.088 0.081 0.074
u t 63.2%
y
t 28.3
u1 Proceso y
autoregulado 1
∆u
u y 0.632 ∆y ∆y
e τs
KP
u0
Ts + 1 y0
0.283 ∆ y
t t1 t
0 t t1 t
0
Fig. 1.4: Reaction curve for the method of 28.3 % and 63.2 %.
Fig. 1.6: Using an on–off controller to control the temperature inside the tank.
In Fig. 1.7(b), the controller is the nonlinear device called an ideal relay. Let’s
suppose we want to maintain the temperature y(t) of a product near the set point,
controlling the steam through an ON–OFF valve. Clearly, when y(t) exceeds the set
point, the controller generates a signal Umin for the valve to close. However, if y(t)
is below the set point, the controller generates a signal Umax for the valve to open.
The final effect is that the controlled output y(t) fluctuates around the set point.
In Fig. 1.7(c),the controller is a relay with dead zone of magnitude h1 − h2 around
the set point. Note that if the controlled variable y(t) is within the dead zone, no
control action occurs. Therefore, the dead zone minimizes wear and damage of the
FCE, avoiding the valve to operate continuously in such a zone. The valve in operation
can be seen in Fig. 1.7(b).
1.3 On–Off Control 7
u(t)
Set Point e(t) Control de dos 1
0
posiciones 0
1
Válvula
Proceso y(t)
ON−OFF
Sistema de
Instrumentación
u(t) (a) u(t)
Umax Umax
e(t) e(t)
0 h1 h2
Umin Umin
y(t) y(t)
Ymax Ymax
Ymin Ymin
Válvula Válvula
Abierta Abierta
(Umax) (Umax)
t t
Válvula Válvula
Cerrada Cerrada
(Umin) (b) (Umin) (c)
Fig. 1.7: (a): Sistema de control de dos posiciones. (b): Controlador ON–OFF sin
zona muerta, y (c): con zona muerta.
Ejemplo 1.3
Design a two-position controller without dead zone to control the following process:
Kp
Gp (s) = e−τ s
Ts + 1
Solution: Fig. 1.8 shows the Simulink diagram of the control system (file onoff1.mdl),
while Fig. 1.9 depicts the controlled output y(t) and the control signal u(t). Such a
plot was obtained running the file onoff1data.m. The listing of this program is shown
below. The employed relay has the parameters Umin = 0.8, Umax = 1.2, Switch On
Point = 0 and Switch Off Point = 0. The TF of the valve is assumed to be a constant
included in Kp .
% onoff1data.m
clear all; close all; clc;
R=1; Kp=1; T=10; tau=2; Umin=0.8; Umax=1.2; swonpoint=0; swoffpoint=0;
load th; load yh; load uh; load rh;
plot(th,rh,’k’,th,yh,’k’,th,uh,’k’), xlabel(’TIME [s]’), grid
ylabel(’y(t) y u(t)’), title(’ON-OFF CONTROL OF THE PROCESS’)
print -f -deps onoff1r, print -s -deps onoff1
8 ON–OFF AND PID CONTROL
T.s+1
Step Relay Transfer Fcn Transport Scope
Delay
rh
R
Save in format
th uh yh
array
Clock t t u y
1.2
u(t)
1
set point
0.8
y(t) y u(t)
y(t)
0.6
0.4
0.2
0
0 10 20 30 40 50
TIEMPO [s]
Fig. 1.9: Controlled output y(t) and ON–OFF control signal u(t) for example 1.6.
Fig. 1.10 depicts an on–off controller with deadband and another with hysteresis.
Deadband reduces wear on the final control element, e.g., valves.
Fig. 1.10: (a) On–off controller with deadband. (b) On–off Controller with hysteresis.
Kc
Ki = ; Kd = Kc Td ; (1.5)
Ti
100
1.4.1. Proportional Control u(t) = Kc e(t) = PB
e(t)
The amount of proportional action used in a process depends on the characteristics
and variables of such a process. Therefore, each process will require a certain PB %,
within the control system will perform well. BP % is the Proportional Band, defined
as 100 times the inverse of the proportional gain Kc .
In general we can say that if the PB is narrow (Kc is large enough), then a small
change in the error e(t) can cause that the signal u(t) make the output y(t) oscillate,
becoming the feedback control system unstable, as seen in Fig. 1.11 when the PB %
is 48.8 ( Kc = 2.05). By contrast, a very wide BP (Kc being very small), generates a
full range change of e(t), which in turn causes u(t) make the output y(t) to vary, as
is the case when BP % = 2000 ( Kc = 0.05) (see Fig. 1.11. In conclusion, a very wide
PB provides little proportional control action, whereas when the PB is very narrow,
the control action is very large.
10 ON–OFF AND PID CONTROL
In many cases, the proportional control action is the cause of the phenomenon
offset or ess (steady stste error), which results in a permanent deviation between
signals SP (Set Point) and PV (Process Variable). In Fig. 1.11, double-pointed arrows
indicate the magnitude of offset for each curve. Note that the SP is of value one. To
obtain the above results, run the program mcp.m listed below .
ACCIÓN PROPORCIONAL
1.4
1.2
SP
1
Kc=2.05; BP%=48.8
AMPLITUD
0.8
0.6
Kc=1.05; BP%=95.24
0.4
Kc=0.05; BP%=2000
0.2
0
0 10 20 30 40 50 60 70 80 90 100
TIEMPO (sec)
where Ki is the integral gain and Ti is the time reset or integral time. Note that
in all cases the offset disappears, and, as Ki increasing (Ti decreases), the settling
time, indicated by horizontal arrows with two points, decreases, but the overshoot
increases. The latter is most notorious for the case Ki = 0.2.
1.4 PID Control Modes 11
1.4
1.2
Ti = 3; KI=0.2
1
Ti=9; KI=0.066
AMPLITUD
0.8
Ti=15; KI=0.04
0.6
0.4
0.2
0
0 10 20 30 40 50 60 70 80 90 100
TIEMPO (sec)
0.7
KD=0.06; Td=0.1
0.6
KD=0.3; Td=0.6
0.5
KD=0.66; Td=1.1
AMPPLITUD
0.4
0.3
0.2
0.1
0
0 10 20 30 40 50 60 70 80 90 100
TIEMPO (sec)
Fig. 1.14: Change in the PB % to modify the proportional action of the controller.
Fig. 1.15 shows the block diagram of a P controller characterized by its gain Kc ,
which is defined as the ratio of change between input and output
∆u
U
Kc = ∆e
(1.7)
E
where ∆e is the change in the error signal, ∆u s change in the control signal, U
is the maximum measurable range (or span) of the controller output, and E is the
measuring range (or span) of the controlled signal The BP % is defined as the inverse
of the gain controller Kc as follows
100
PB % = (1.8)
Kc
∆e Controlador ∆u
E Proporcional U
Ejemplo 1.4
∆u/U 3 mm/40 mm
Kc = = =2
∆e/E 15o C/400o C
100 100
PB % = = = 50 %
Kc 2
The ideal PID controller, also known as non interactive controller, as ISA (Ins-
trument Society of America) algorithm, or as parallel noninteractive algorithm, can
be formulated as follows
Z t
de
u = Kc e + Ki e dt + Kd
0 dt
e = r−y (1.9)
where u is the signal or control force, y is the controlled process output (permanently
subject to measurement), e is the error signal, r is the desired reference signal or set
point, Kc , Ki , and Kd are the proportional integral and derivative gains.
It should be noted that the form of the used error signal: e = r − y corresponds
to a reverse control action. For a direct control action, the error is expressed as:
e = y − r. We will continue using the first form. On the other hand, the integral time
or reset time Ti is often expressed as an integral reset rate Tr = 1/Ti .
In the Laplace domain, (1.9) is expressed as
u(s) 1 Kc
Gc (s) = = Kc 1 + + Td s = Kc + + Kc Td s (1.10)
e(s) Ti s Ti s
16 ON–OFF AND PID CONTROL
The PID parallel controller, also called parallel ideal, non-interactive , indepen-
dent or independent from the gain, is a variation of the ideal controller given by
(1.10) and is formulated in the Laplace domain as
u(s) 1
Gc (s) = = Kc + + Td s (1.11)
e(s) Ti s
Note that PID parallel controller parameters Kc , 1/Ti and Td given by (1.11) corres-
pond to parameters Kc , Kc /Ti y Kc Td of the ideal PID controller given by (1.10).
Therefore, (1.11) can be always replaced by (1.10).
def (t) 1
T = e(t) − ef (t) ef (s) = e(s) (1.12)
dt 1 + Ts
where T is the time constant of the filter. Since the system noise is amplified mainly
by the derivative action, then T can be formulated proportional to time derivative
as follows:
1
T = α Td → ef (s) = e(s) (1.13)
1 + α Td s
Introducing the filter given by (1.13) in (1.10), we can obtain the following filtered
ideal PID controller
u(s) 1 1
Gc (s) = = Kc 1+ + Td s (1.14)
e(s) 1 + αTd s Ti s
The PID controller with filtered derivative, known also as non-interactive, is for-
mulated as
!
u(s) 1 Td s
Gc (s) = = Kc 1 + + 3 ≤ N ≤ 10 (1.15)
e(s) Ti s 1 + TNd s
The Classical PID Controller shown below is also known as cascade, interactive,
serie, analog, or commercial controller. It follows its description
!
u(s) 1 1 + Td s
Gc (s) = = Kc 1 + Td
3 ≤ N ≤ 10 (1.16)
e(s) Ti s 1+ N s
1.5 PID Controller Structures 17
For Td > TI /4, the dependent PID controller is not similar to the ideal controller,
since for this condition parameters in (1.21) become imaginary.
Z t
dr dy
u = Kc (br − y) + Ki e dt + Kd c − (1.25)
0 dt dt
Z t
de
u = Kc e + Ki e dt + Kd ; P osition P ID
0 dt
du de d2 e
= Kc + Ki e + Kd 2 ; V elocity P ID
dt dt dt
du u(k) − u(k − 1) de e(k) − e(k − 1)
= ; = ;
dt Ts dt Ts
d2 e 1
= (e(k) − 2e(k − 1) + e(k − 2))
dt2 Ts2
u(k) = u(k − 1) + Kc (e(k) − e(k − 1) +
Kd
Ts Ki e(k) + (e(k) − 2e(k − 1) + e(k − 2)) (1.26)
Ts
For comparison purposes, some Examples employ the ideal controller given in
(1.27), the noninteractive controller shown in (1.28), as well as the improved controller
from (1.29).
u(s) 1 Kc
P ID1(s) = = Kc 1 + + Td s = Kc + + Kc Td s (1.27)
e(s) Ti s Ti s
!
u(s) 1 Td s
P ID2(s) = = Kc 1 + + 3 ≤ N ≤ 100 (1.28)
e(s) Ti s 1 + TNd s
!
1 Td s
P ID3(s) = Kc 1 + e(s) − Kc y(s) (1.29)
Ti s 1 + TNd s
Ejemplo 1.5
Control the following process employing the method of the time constant.
Kp
Gp (s) = (1.31)
Ts + 1
where Kp = 2 y T = 5. Use the Fig. 1.1(a) for the control task with Gm (s) = 1.
Solution: See file ct1.m. The controlled output is shown in Fig. 1.16.
% ct1.m CONTROL OF A FIRST-ORDER PROCESS
clear all; close all; clc; Kp=2; T=5; s=tf(’s’); Gp=Kp/(T*s+1); % PROCESO
Kc=1/Kp; Ti=T; Td=T/4; Gc=Kc*(1+1/Ti/s+Td*s); PID=feedback(Gc*Gp,1);
step(PID,’r’,50); grid; xlabel(’TIME’); ylabel(’OUTPUT’);
title(’CONTROL PID OF A FIRST--ORDER PROCESS’);print -deps -f ct1
20 ON–OFF AND PID CONTROL
1.2
1.1
0.9
0.8
SALIDA
0.7
0.6
0.5
0.4
0.3
0.2
0 5 10 15 20 25 30 35 40 45 50
TIEMPO (seconds)
Hartree Method
Table 1.5 from Hartree et al. (see [11]) is applied to control processes having a
TF of the form Gp (s) = Kp e−τ s . The control is performed using the control system
of Fig. 1.1(a).
Tabla 1.5: Tuning rules to control processes of the form Gp (s) = Kp e−τ s .
Ejemplo 1.6
Gp (s) = Kp e−τ s
hartree 1.mdl
Ti .s+1 Td .s+1
Kc Kp
Ti .s Td /N.s+1 Scope
r Kc Gc1(s) Gc2(s) Kp tau
0.8
SALIDA y(t)
0.6
0.4
0.2
0
0 20 40 60 80 100 120 140 160 180 200
TIEMPO [s]
0.8
CONTROL u(t)
0.6
0.4
0.2
0
0 20 40 60 80 100 120 140 160 180 200
TIEMPO [s]
Fig. 1.18: Controlled output and control signal for example 1.6.
Gc=Kc*(1+1/Ti/s)*((1+Td*s)/(1+Td*s/N));
PID=feedback(Gp*Gc,1); % CONTROL PID
step(PID,’r’); grid;
title(’CONTROLLED OUTPUT USING THE METHOD OF HARTREE’);
xlabel(’TIME (S)’); ylabel(’OUTPUT’);
print -deps -f hartree1a
0.9
0.8
0.7
0.6
OUTPUT
0.5
0.4
0.3
0.2
0.1
0
0 50 100 150
TIME (S) (seconds)
Fig. 1.19: Controlled output for example 1.6 using the program hartree1a.m.
Tabla 1.6: Method of the reaction curve from Ziegler and Nichols to determine para-
meters Kc , Ti y Td .
100 Kp τ
Type Controller Gc (s) Kc = BP ; a= T Ti Td
P Kc 1/a ∞ 0
PI Kc 1 + T1i s 0.9/a 10τ /3 0
PID Kc 1 + T1i s + Td s 1.2/a 2τ 0.5τ
PD Kc (1 + Td s) 1.2/a ∞ 0.42τ
y
100%
63.2%
28.3%
t
t t2
1
Fig. 1.20: Times t1 and t2 corresponding to 28.3 % and 63.2 % of the maximum value
of the reaction curve.
Ejemplo 1.7
Control the following fifth-order process using the Ziegler and Nichols reaction curve
method
Kp
Gp (s) =
(s + Ta )(s + Tb )(s + Tc )(s + Td )(s + Te )
where: [Ta , Tb , Tc , Td , Te ] = [0.5, 1, 1.5, 2, 2.5] y Kp = 20.
Solution: The proportional gain Kpp of the process Gp (s) is obtained in the steady
state, that is, when s = 0, resulting
Kp
Kpp = = 5.33
Ta Tb Tc Td Te
This result can be seen in the first graph of Fig. 1.21, which shows the step response
(the reaction curve) of the process with a steady state gain of about 5.5. From this
curve we can obtain the parameters τ = 1.7 s and T = 6.7 – τ = 5 s of the process
model
Kpp −sτ
Gp (s) = e
Ts + 1
With those values, parameters of controllers P, PI, PID and PD are calculated using
Table 1.6. The second graph in Fig 1.21 illustrates the comparison between the con-
trolled outputs. Note that only PI and PID controllers are able to control the process
24 ON–OFF AND PID CONTROL
without post–tuning. Such results are obtained by running the program zn1.m listed
below.
% zn1.m CONTROL P, PI, PID Y PD OF A PROCESS USING THE REACTION CURVE
clear all; close all; clc;
Kp=20; Ta=0.5; Tb=1; Tc=1.5; Td=2; Te=2.5; s=tf(’s’);
Gp=Kp/(s+Ta)/(s+Tb)/(s+Tc)/(s+Td)/(s+Te); % PROCESO
subplot(211); step(Gp,’r’); grid;
title(’STEP RESPONSE’); xlabel(’TIEMPO’); ylabel(’OUTPUT’);
tau=1.7; T=6.7-tau; Kpp=5.5; a=Kpp*tau/T; % FROM THE REACTION CURVE
Kc=1/a; Gc1=Kc; P=feedback(Gp*Gc1,1); % CONTROL P
Kc=0.9/a; Ti=10*tau/3; Gc2=Kc*(1+1/Ti/s); PI=feedback(Gp*Gc2,1); % PI
Kc=1.2/a; Ti=2*tau; Td=0.5*tau;
Gc3=Kc*(1+1/Ti/s+Td*s); PID=feedback(Gp*Gc3,1); % CONTROL PID
Kc=1.2/a; Td=0.42*tau; Gc4=Kc*(1+Td*s); PD=feedback(Gp*Gc4,1); % PD
subplot(212); step(P,’r’,PI,’b’,PID,’c’,PD,’y’); grid; xlabel(’TIME’);
legend(’P’,’PI’,’PID’,’PD’),
title(’CONTROLLED OUTPUTS’); ylabel(’OUTPUT’); print -deps -f zn1
STEP RESPONSE
6
AMPLITUDE
0
0 2 4 6 8 10 12 14 16 18
TIEMPO (seconds)
CONTROLLED OUTPUTS
2
P
1.5 PI
OUTPUT
PID
PD
1
0.5
0
0 20 40 60 80 100 120
TIME (seconds)
Fig. 1.21: Step response and controlled responses corresponding to the example 1.7.
Ejemplo 1.8
Control the level in a storage tank using the Ziegler and Nichols reaction curve
method. The block diagram of the process level, extracted from [13], is shown in Fig.
1.22(a), where the transfer functions of the hydraulic actuator, the tank, and float
are formulated as
10 3.15 1
GH (s) = ; GT (s) = ; GF (s) = 1 τh = 1
s+1 30s + 1 9 s2 + 13 s + 1
1.6 Tuning Methods of PID Controllers 25
Controlador Referencia
Actuador (set point)
v
d
Flotador
r e u y
GC (s) G H(s) e −sτ h GT (s)
Controlador Actuador Tiempo muerto Tanque
ym GF (s)
(a)
Flotador
r e u y
GC (s) G H(s) e −sτ h GT (s)
Controlador Actuador Tanque
ym GF (s)
(b) Flotador
Fig. 1.22: Block diagram of the control level process; (a) Process. (b) Structure for
PI control.
In the process in question, the dead time τ is calculated as the ratio τ = d/v, where
v is the flow rate entering the tank and d is the length of pipe between the control
valve and the flow measurement point.
Solution: The first graph of Fig. 1.23 shows the step response (the reaction curve)
of the process. From Fig. 1.23, we obtain τ = 1 and T = 30 − τ . With those values,
PID controller parameters are calculated using the Table 1.6. The second graph of
the Fig. 1.23 illustrates the controlled output. Such results are obtained running the
program zn1a.m listed below. Note that parameters Kc and Ti required post-tuning.
STEP RESPONSE
40
30
OUTPUT
20
10
0
0 20 40 60 80 100 120 140 160 180
TIME (s) (seconds)
CONTROLLED OUTPUT
1.5
PI
OUTPUT
0.5
0
0 10 20 30 40 50 60
TIME (s) (seconds)
Fig. 1.23: Reaction curve of the process level (upper graph) and controlled response
of example 1.8 (bottom graph).
ylabel(’OUTPUT’); legend(’PI’),
title(’CONTROLLED OUTPUT’); xlabel(’TIME (s)’); print -depsc -f zn1a
Chien–Hrones–Reswick Method
The Chien–Hrones–Reswick (CHR) method [14] illustrated in Fig. 1.24(a), can
be applied to processes with a dynamic model given by (1.32). This method proposes
a set of tuning rules for the following cases (see Tabla 1.7):
Ejemplo 1.9
1.6 Tuning Methods of PID Controllers 27
d
D
r d
t
R r
PID Proceso
e u y
t
(a) y
y
R R
d=0 d=0
t t
(b) (d)
y y
d d
r=0 r=0
D
D
t t
(c) (e)
Type Controlller GC (s) Case (b): Case (c): Case (d): Case (e):
ζ > 0.8 ζ > 0.8 0.4< ζ < 0.8 0.4< ζ < 0.8
d=0 r=0 d=0 r=0
Control the level process of example 1.8 using the Chien–Hrones–Reswick method for
the disturbance rejection case (r=0 and d 6= 0) without the presence of oscillations
in the output response of the process (Fig. 1.24(c)).
Solution: Parameters τ = 1 and T = 30 − τ were obtained from the first graph of
28 ON–OFF AND PID CONTROL
(a)
Flotador
d y
G H(s) e −sτ h GT (s)
Actuador Tiempo muerto Tanque
u GF (s)
GC (s)
(b)
Controlador Flotador
r=0
Fig. 1.25: The process level control (Fig. (a)) and the structure for disturbance re-
jection employing a PI controller (Fig. (b)).
Fig. 1.23. With those values, The PI controller parameters were calculated employing
Table 1.7, caso (c)). Fig. 1.25 illustrates the controlled output, which can be obtained
running the program chrd.m listed below.
SALIDA CONTROLADA
3.5
2.5
2
SALIDA
1.5
0.5
-0.5
0 5 10 15 20 25 30 35 40
TIEMPO (s) (seconds)
Cohen–Coon Method
The tuning method developed by researchers G. H. Cohen and G. A. Coon [15]
can be applied to processes that accept a dynamic model given by equation (1.32).
Tuning formulas are shown in Table 1.8, where
Kp τ τ
a= L= (1.34)
T τ +T
Note that the formulas in Table 1.8 resemble those in Table 1.6 when L being small
enough .
100
TYPE Controller GC (s) Kc = BP Ti Td
1 0.35L
P Kc a 1 + 1−L ∞ 0
1 0.9 0.92L 3.3−3L
PI Kc 1 + Ti s a 1 + 1−L 1+1.2L τ 0
1.24 0.13L 0.27−0.36L
PD Kc (1 + Td s) a 1 + 1−L ∞ 1−0.87L τ
1.35 0.18L 2.5−2L 0.37−0.37L
PID Kc 1 + T1i s + Td s a 1 + 1−L 1−0.39L τ 1−0.8L τ
Ejemplo 1.10
It is requested to control the level process described in example 1.8 using the method
of Cohen–Coon. The block diagram of the level system is shown in Fig. 1.22(a). For
PI control employ the block diagram of Fig. 1.22(b).
Solution: Parameters τ = 1 y T = 30 − τ were found using the plot of Fig. 1.23.
With these values, the controller parameters are calculated using Table 1.8. Fig. 1.27
shows the controlled outputs.
% cohen.m CONTROL PID, PI-D Y PI-Dy EMPLEANDO EL MÉTODO DE COHEN-COON
clear all; close all; clc;
s=tf(’s’); GH=10/(s+1); GT=3.15/(30*s+1); GF=1/(s^2/9+s/3+1);
tau=1; Gtau=exp(-tau*s);
Gp=GH*Gtau*GT; Kp=31.5; % Kp ES EL PRODUCTO DE 10*31.5
tau=2; T=32-tau; % TOMADOS DE LA CURVA DE REACCIÓN
a=Kp*tau/T; L=tau/(tau+T); Kc=0.5*(0.9/a)*(1+0.92*L/(1-L));
Ti=4*(3.3-3*L)*tau/(1+1.2*L);
Gc=Kc*(1+1/Ti/s); PI=feedback(Gp*Gc,GF); % CONTROL PI
step(PI,’r’); grid;
title(’SALIDA CONTROLADA’); xlabel(’TIEMPO’); ylabel(’SALIDA’);
print -deps -f cohen
30 ON–OFF AND PID CONTROL
SALIDA CONTROLADA
1.2
0.8
SALIDA
0.6
0.4
0.2
0
0 10 20 30 40 50 60 70
TIEMPO (seconds)
Fig. 1.27: Controlled output employing a PI controller, which was tuned using the
Cohen-Coon method.
Samal Method
The Samal method [16] to tune parameters is designed to reject disturbances
acting mainly on the control signal, as shown in Fig. 1.28(a), where disturbance
rejection happens because the controlled output signal y tends to zero with a settling
time Ts and an overshoot of magnitude M . The process to be controlled has a TF of
the form
y(s) Kp
Gp (s) = = (1.35)
u(s) (1 + Tn s)n
where parameters n y Tn are found from Tabla 1.1 (see example 1.2). In Fig. 1.28(b),
Vo = Kp Kc is the open–loop gain of the feedback system, where Kc is the controller
gain. In Fig. 1.28(b), values of Vo for I and PI controllers can be read from the Vo
left axis, while values of Vo for P and PID controllers can be extracted from the Vo
right axis.
In Fig. 1.28(c), Ti is the integral time. The Ti /T axis located to the left of such
a Fig. permits to read Ti for I, PI and PID controllers, while the derivative time
Td of the controller can be found employing the PID curve indicated as Td /T . Fig.
1.28(d) permits to determine the magnitude M knowing the magnitude of the step
type disturbance D, while Fig. 1.28(e) is employed to calculate Ts .
Ejemplo 1.11
1.6 Tuning Methods of PID Controllers 31
d (a)
D
d y
0 t M
r=0 e Kp y D
P, I, PI, PID t
u (1+Ts) n 0 Ts
(b) (c)
5 20 5 5
4 16 I 4 4
P D
PI
3 12 3 3
Vo Ti I
Vo
2 8 T 2 2 Td
PID PI
PID T
1 4 1 1
I PID
0 0 0
1 2 3 4 n 1 2 3 4 n
(d) (e)
1 Ts 20
M
Kp D T
0.8 I 16
I
0.6 PI 12
P
PI
0.4 8
PID
PID
0.2 4
P
0 0
1 2 3 4 n 1 2 3 4 n
curve). From this curve we obtain parameters τ = 0.8 s and T = 3.9 – τ = 3.1 s. We get
values n = 3 y Tn = 0.270 from Tabla 1.1. From Fig. 1.28(b) we determine Vo = 2 and
Kc = V o/Kp , while from Fig. 1.28(c) we can calculate Ti = 1.8Tn and Td = 0.7Tn .
The graph below in Fig. 1.29 illustrates the comparison between controlled outputs.
Such results are obtained by running the program samal1.m listed below.
STEP RESPONSE
1.5
OUTPUT
0.5
0
0 1 2 3 4 5 6 7 8 9 10
TIME (s) (seconds)
CONTROLLED OUTPUTS
1.5
PID1
PID2
OUTPUTS
1 PID3
0.5
0
0 5 10 15 20 25 30 35 40 45 50
TIME (s) (seconds)
Fig. 1.29: Step response (graph below) and controlled responses (top graph) emplo-
ying controllers type PID1, PID2 and PID3 and the Samal method.
In that response, measure the period of critical oscillation Tcrit as well as the
critical gain Kcrit (or limit gain) for which this period was obtained.
Parameters Kc , Ti y Td are then calculated using Tabla 1.9.
Note that the magnitude of the sustained oscillation, which is equivalent to say the
variation magnitude of the output variable must be kept as small as possible to avoid
problems in the controlled variable.
K crit
r u y y
r e
PID Proceso
R R
T crit
t t
100
Type Controller Gc (s) Kc = BP Ti Td
P Kc 0.5Kcrit ∞ 0
PI Kc 1 + T1i s 0.45 Kcrit 0.85 Tcrit 0
PID Kc 1 + T1i s + Td s 0.6 Kcrit 0.5 Tcrit 0.125 Tcrit
Ejemplo 1.12
Control the process level of problema 1.8 using the Ziegler–Nichols critical oscilla-
tion method. For comparison purposes employ the ideal PID1 controller (equation
(1.27)), the non–interactive controller (equation (1.28)) and the improved controller
(equation (1.23)). For PID1 and PID2 control use the block diagram of Fig. 1.1(b),
34 ON–OFF AND PID CONTROL
while for PID3 control use the block diagram of Fig. 1.1(c).
Solution: The first graph of Fig. 1.31 shows the step response, a sustained oscilla-
tion, obtained with a P controller in Fig. 1.22(b) of gain GC (s) = Kcrit = 0.85. Note
that the oscillation has a period equal to Tcrit = 8 s. With these values, PID con-
troller parameters are calculated using the Table 1.9. The second graph of Fig. 1.31
illustrates the comparison between the controlled outputs. Such results are obtained
running the program zn2.m listed below.
SUSTAINED OSCILLATION
3
2
OUTPUT
-1
0 5 10 15 20 25 30 35 40
TIME (s) (seconds)
CONTROLLED OUTPUTS
2
PID1
1.5 PID2
OUTPUTS
PID3
0.5
0
0 5 10 15 20 25 30 35 40
TIME (s) (seconds)
Fig. 1.31: Sustained oscillations (top graph) for Kp = Kcrit and controlled responses
(graph below) for example 1.12.
Ejemplo 1.13
1.6 Tuning Methods of PID Controllers 35
Control a non self–regulated process having the following TF employing the Ziegler–
Nichols critical oscillation method.
1
Gp (s) =
s(s + 1)4
For comparison purposes use the ideal PID, non–interactive PI D, and the improved
PI Dy.
Solution: The first graph of Fig. 1.32 shows the step response, a sustained oscilla-
tion, obtained with a P controller in Fig. 1.22(b) of gain GC (s) = Kcrit = 0.569. Note
that the oscillation has a period equal to Tcrit = 15 s. With these values, PID con-
troller parameters are calculated using the Table 1.9. The second graph of Fig. 1.32
illustrates the comparison between the controlled outputs. Such results are obtained
running the program zn2a.m listed below.
SUSTAINED OSCILLATION
2
1.5
OUTPUT
0.5
0
0 5 10 15 20 25 30 35 40 45 50
TIME (s) (seconds)
CONTROLLED OUTPUTS
2
PID1
1.5 PID2
OUTPUTS
PID3
0.5
0
0 10 20 30 40 50 60
TIME (s) (seconds)
Kc = 0.3Kcrit Ti = 2.3τcrit Td = 0
Ejemplo 1.14
Control the process Gp (s) = 2e−2s employing the Yu’s critical oscillation method.
Solution: The first plot of Fig. 1.33 show the step response of the system using the
P controller GC (s) = Kcrit = 0.45 and the configuration of the 1.30. Note that the
sustained oscillation has a period of τcrit = 4 s. The PID parameters are found using
Kc = 0.3Kcrit Ti = 2.3τcrit Td = 0
The second plot of Fig. 1.33 illustrates the controlled outputs, Run the m–file yu1.m
listed below to obtain such results.
SUSTAINED OSCILLATION
5
OUTPUT
-5
-10
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
TME (s) (seconds)
CONTROLLED OUTPUT
1
OUTPUT
0.5
-0.5
0 50 100 150 200 250 300
TIME (s) (seconds)
Fig. 1.33: Sustained oscillation (top graph) for Kp = Kcrit and controlled output
(graph below) for example 1.14.
Relay Method
A closed loop critical oscillation method can be risky, because in real cases such
a method force the plant to operate near near instability. In practice, it also very
difficult to maintain constant the magnitud of the oscillation. A variant of this method
is shown in Fig. 1.34 [17], where a relay is used to get a sustained oscillation period
Tcrit of small amplitude a, for a gain Kcrit = 4L/(π a), where L is the gain of the
relay. Knowing Tcrit and Kcrit , we can use now Table 1.9.
y a
u
e +L u y t
r
Gp(s)
e
−L
Proceso Tcrit
Relé
Fig. 1.34: Block diagram of the feedback process for using the relay method.
38 ON–OFF AND PID CONTROL
Ejemplo 1.15
For comparison purposes use PID1, PID2 and PID3 controllers. Also, determine the
state equations of the system.
Solution: The solution uses the block diagram of Fig. 1.34. The first part of the
program relay.m listed below allows to obtain the first and second graph of the Fig.
1.36 for a relay magnitude of L = 0.1. The block diagram of Fig. 1.35 is employed to
find the five state equations of the process
u x5 1 x4 x3 x2 x1 = y
1 1 1 1
s s+1 s+1 s+1 s+1
Fig. 1.35: Block diagram of the process showing its state variables.
1.5
SALIDA y(t)
r(t)
1 x1 (t)
0.5
0
0 10 20 30 40 50 60 70 80
TIME (s)
0.1
CONTROL u(t)
-0.1
0 10 20 30 40 50 60 70 80
TIME (s)
SALIDAS CONTROLADAS
2
SALIDA y
PID1
PID2
1
PID3
0
0 10 20 30 40 50 60
TIme (S) (seconds)
1
Fig. 1.36: Step response of Gp (s) = s(s+1)4 employing a relay (top graph), control
Ejemplo 1.16
Control the process level of problem 1.8 using the quarter decay response method.
For comparison purposes employ the ideal PID controller (equation (1.27)), the non–
interactive controller (equation (1.28)) and the improved controller (equation (1.23))
using the structures (a) and (b) of Fig. 1.1.
40 ON–OFF AND PID CONTROL
Ko y To
r r e u y
PID Proceso A
R R
A/4
t t
Fig. 1.37: The tuning for quarter decay response method from Harriot.
Tabla 1.10: Tuning parameters for quarter decay response method from Harriot Kc ,
Ti y Td .
100
Type Controller Gc (s) Kc = BP Ti Td
P Kc Ko ∞ 0
PI Kc 1 + T1i s Ko To /1.5 0
PID Kc 1 + T1i s + Td s Ko To /1.5 To /6
Solution: The first graph in Fig. 1.38 shows the step response wherein the second
maximum of the oscillation is a quarter of the first maximum, which is obtained
using a proportional controller with GC (s) = Ko = 0.55 in the structure of Fig.
1.1(a). Observe that the oscillation has a period equal to To = 10 s. With these
values, we can calculate the PID controller parameters using Table 1.10. The second
graph of Fig 1.38 illustrates the comparison between the controlled outputs. Such
results were obtained running the program harriot.m listed below.
% harriot.m PID1, PID2 AND PID3 USING THE HARRIOT METHOD
clear all; close all; clc; s=tf(’s’);
GH=10/(s+1); GT=3.15/(30*s+1); GF=1/(s^2/9+s/3+1); Gtau=exp(-s);
% [num,den]=pade(1,3); Gtau=tf(num,den); % TIEMPO MUERTO exp(-tau*s)
Gp=GH*Gtau*GT; % Gp: PROCESO, GH: FLOTADOR
Ko=0.55; G_c0=feedback(Ko*Gp,GF); subplot(211); step(G_c0,20); grid
title(’OSCILACIÓN AMORTIGUADA’); xlabel(’TIEMPO’); ylabel(’AMPLITUD’);
To=10; Kc = Ko; Ti=To/1.5; Td=To/6; N=10; % PARÁMETROS PID
Gc1=Kc*(1+1/Ti/s+Td*s); PID1=feedback(Gp*Gc1,GF); % PID1 CONTROL
Gc2=Kc*(1+1/Ti/s+Td*s/(1+Td*s/N)); PID2=feedback(Gp*Gc2,GF); % PID2
Gci=Kc*(1+1/Ti/s); Gcd=Kc*Td*s/(1+Td*s/N); Gcd=feedback(Gp,Gcd);
PID3=feedback(Gci*Gcd,GF); subplot(212), % PID3 CONTROL
step(PID1,’r’,PID2,’b’,PID3,’g’); grid; legend(’PID1’,’PID2’,’PID3’),
title(’CONTROLLED OUTPUTS’); xlabel(’TIME (s)’); ylabel(’OUTPUTS’);
print -deps -f harriot
Ejemplo 1.17
Control a non self–regulated process having the following TF, employing the tuning
for quarter decay response
1
Gp (s) =
s(s + 1)4
1.6 Tuning Methods of PID Controllers 41
OSCILACIÓN AMORTIGUADA
1.5
AMPLITUD 1
0.5
0
0 2 4 6 8 10 12 14 16 18 20
TIEMPO (seconds)
CONTROLLED OUTPUTS
2
PID1
1.5 PID2
OUTPUTS
PID3
0.5
0
0 5 10 15 20 25 30 35
TIME (s) (seconds)
Fig. 1.38: The quarter decay response (top graph) for Kc = Ko and controlled res-
ponses (graph below) for example 1.16.
For comparison purposes employ the ideal PID controller (equation (1.27)), the non–
interactive controller (equation (1.28)) and the improved controller (equation (1.23))
using the structures (a) and (b) of Fig. 1.1.
Solution: The first graph in Fig. 1.39 shows the step response wherein the second
maximum of the oscillation is a quarter of the first maximum, which is obtained using
a proportional controller with GC (s) = Ko = 0.569 in the structure of Fig. 1.1(a).
Observe that the oscillation has a period equal to To = 15 s. With these values, we
can calculate the PID controller parameters using Table 1.9. The second graph of
Fig 1.39 illustrates the comparison between the controlled outputs. Such results are
obtained running the program harriot.m listed below.
DECAYED OSCILLATION
1.5
OUTPUT
0.5
0
0 5 10 15 20 25 30 35 40 45 50
TIME (s) (seconds)
CONTROLLED OUTPUTS
1.5
Control using PID1
Control using PID2
OUTPUTS
0.5
0
0 5 10 15 20 25 30 35 40 45 50
TIME (seconds)
Fig. 1.39: The quarter decay response (top graph) for Kc = Ko and controlled res-
ponses (graph below) for example 1.17.
1
e(s) = r(s)−y(s) = r(s)−H(s)G(s)e(s); e(s) = r(s); e(t) = L−1 [e(s)]
1 + GH(s)
(1.36)
La idea principal en los métodos de sintonización basados en criterios óptimos, consis-
te en minimizar un determinado ı́ndice de rendimiento, en el cual estén involucrados
tanto el tiempo continuo t como el error e(t). Los ı́ndices de rendimiento más usados
son: ISE (Integral Squared Error), IAE (Integral Absolute Error), IT AE (Integral
Time Absolute Error), IST E (Integral Square Time weighted Error) e IST 2 E (In-
1.6 Tuning Methods of PID Controllers 43
H(s)
tegral Square Time–Square weighted Error). Las fórmulas de dichos ı́ndices son:
Z ∞ Z ∞ Z ∞
2
ISE = e (t)dt IAE = |e(t)|dt IT AE = t|e(t)|dt
0 0 0
Z ∞ Z ∞
IST E = t2 e(t)dt IST 2 E = t2 e2 (t)dt (1.37)
0 0
donde el error e(t) puede ser de la forma dada en (1.36). Una vez formulado el ı́ndice
de rendimiento, por ejemplo ISE, el siguiente paso consiste en minimizar dicho ı́ndice:
∂ISE
=0
∂z
donde z puede ser una determinada variable o parámetro del cual se desea deter-
minar su valor extremo; por ejemplo, el parámetro Ti de un controlador PID. A
continuación se presentan algunas reglas de sintonización basados en diversos ı́ndices
de rendimiento.
Método de Shinskey
Las reglas de sintonización de la Tabla 1.11, atribuidas Shinskey (control I y PI)
y Nomura et al. (control PID), se aplican a procesos que poseen una FT de la forma:
Gp (s) = Kp e−τ s . El control se realiza empleando la configuración de la Fig. 1.1(a).
Los trabajos de Shinskey Nomura et al. se encuentran en las referencias de [11].
Tabla 1.11: Reglas de sintonı́a para controlar procesos tipo Gp (s) = Kp e−τ s .
Ejemplo 1.18
44 ON–OFF AND PID CONTROL
0.8
CONTROL PI WITH PURE DEAD TIME
0.6 CONTROL PI WITH APPROX. DEAD TIME
0.4
OUTPUT
0.2
-0.2
-0.4
-0.6
-0.8
0 2 4 6 8 10 12 14
TIME (s) (seconds)
Fig. 1.41: Control PI del proceso Gp (s) = Kp e−τ s usando ITAE (ejemplo 1.18).
Método de Wang–Juang–Chan
Las fórmulas de sintonización de Wang–Juang–Chan (citadas en [19]) se basan en
el criterio de optimización de IT AE y se pueden aplicar a procesos que aceptan un
modelo dinámico como el de la ecuación (1.32). Estas fórmulas son:
(0.7303 + 0.5307T /τ )(T + 0.5τ ) 0.5τ T
Kc = ; Ti = T + 0.5τ ; Td = (1.38)
Kp (T + τ ) T + 0.5τ
sintonización que se pueden aplicar a procesos que aceptan un modelo dinámico como
el de la ecuación (1.32). El diseño del sistema de control emplea la configuración de
la Fig. 1.1(a).
a1 τ b1
PI Kc = Kp T a1 0.980 0.712 0.569 1.072 0.786 0.628
b1 –0.892 –0.921 –0.951 –0.560 –0.559 –0.583
T
PI Ti = a2 +b2 (τ /T ) a2 0.690 0.968 1.023 0.648 0.883 1.007
b2 –0.155 –0.247 –0.179 –0.114 –0.158 –0.167
a1 τ b1
PID Kc = Kp T a1 1.048 1.042 0.968 1.154 1.142 1.061
b1 –0.897 –0.897 –0.904 –0.567 –0.579 –0.583
T
PID Ti = a2 +b2 (τ /T ) a2 1.195 0.987 0.977 1.047 0.919 0.892
b2 –0.386 –0.238 –0.253 –0.220 –0.172 –0.165
τ b3
PID Td = a3 T T a3 0.489 0.385 0.316 0.490 0.384 0.315
b3 0.888 0.906 0.892 0.708 0.839 0.832
Kc Td s
u(s) = Kc e(s) + e(s) − y(s) = P (s) + I(s) + D(s) (1.39)
Ti s 1 + Td s/N
Ejemplo 1.19
K
p
Controlar el proceso con FT: Gp (s) = T s+1 e−τ s , donde Kp = 2, τ = 2 y T = 20.
Emplear el criterio ISE, un controlador PID y las reglas de la Tabla 1.12.
Solución: La Fig. 1.42 muestra la respuesta controlada, resultado que se obtiene
ejecutando el programa zh1.m listado abajo.
% zh1.m CONTROL PID USANDO ISE
clear all; close all; clc; s=tf(’s’); Kp=2; tau=2; T=20; % tau/T=0.1
a1=1.048; b1=-0.897; a2=1.195; b2=-0.386; a3=0.489; b3=0.888; N=3;
% [num,den]=pade(tau,3); Gtau=tf(num,den); % TIEMPO MUERTO: exp(-tau*s)
Gtau=exp(-tau*s); Gp=Kp/(T*s+1)*Gtau; % SISTEMA A CONTROLAR
Kc=(a1/Kp)*(tau/T)^b1; Ti=T/(a2+b2*(tau/T)); Td=(a3*T)*(tau/T)^b3;
46 ON–OFF AND PID CONTROL
a1 τ b1
PID Kc = Kp T a1 1.260 1.053 0.942 1.295 1.120 1.001
b1 –0.887 –0.930 –0.933 –0.619 –0.625 –0.624
T
PID Ti = a2 +b2 (τ /T ) a2 0.701 0.736 0.770 0.661 0.720 0.754
b2 –0.147 –0.126 –0.130 –0.110 –0.114 –0.116
τ b3
PID Td = a3 T T a3 0.375 0.349 0.308 0.378 0.350 0.308
b3 0.886 0.907 0.897 0.756 0.811 0.813
1.2
0.8
SALIDA
0.6
0.4
0.2
0
0 10 20 30 40 50 60 70 80 90 100
TIEMPO (seconds)
Kp
Fig. 1.42: Control PID del proceso Gp (s) = T s+1 e−τ s usando ISE (ejemplo 1.19).
Gci=Kc*(1+1/(Ti*s));
Gcd=Td*s/(1+Td*s/N);
G=feedback(Gp,Gcd); PID=feedback(Gci*G,1); % CONTROL PID
step(PID,’r’); grid, title(’CONTROL PID USANDO ISE’);
xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f zh1
Método de Kessler
La Tabla 1.14 muestra las fórmulas propuestas por C. Kessler [21] para determinar
los parámetros de un controlador PID basado en criterios óptimos de diseño.
Ejemplo 1.20
Empleando el método de Kessler controlar un avión–helicóptero cuya dinámica sim-
plificada se puede representar como:
1
Gp(s) =
(1 + 20s)(1 + 10s)(1 + 0.5s)
1.6 Tuning Methods of PID Controllers 47
Ejemplo 1.21
RESPUESTA AL ESCALÓN
0.8
AMPLITUD
0.6
0.4
0.2
0
0 20 40 60 80 100 120 140 160 180
TIEMPO (sec)
SALIDA CONTROLADA
1.5
1
SALIDA
0.5
0
0 2 4 6 8 10 12
TIEMPO (sec)
Fig. 1.43: Respuesta al escalón (gráfico superior) y respuesta controlada (gráfico in-
ferior) empleando un controlador PID de acuerdo al método de Kessler.
Kp
Método de Xue para Procesos con FT: s
e−τ s
El método de Xue se aplica a procesos que poseen una FT con parte proporcional,
parte integral y tiempo muerto de la forma:
Y (s) Kp −τ s
G(s) = = e (1.40)
U (s) s
Debido a la presencia del integrador, los controladores PD y PID resultan ser los
adecuados para controlar tales procesos. La Tabla 1.15 muestra los valores de los
1.6 Tuning Methods of PID Controllers 49
RESPUESTA AL ESCALÓN
300
250
AMPLITUD
200
150
100
50
0
0 500 1000 1500
TIEMPO (sec)
SALIDA CONTROLADA
1.5
1
SALIDA
0.5
0
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
TIEMPO (sec)
Fig. 1.44: Respuesta al escalón (gráfico superior) y respuesta controlada (gráfico in-
ferior) empleando un controlador PID de acuerdo al método de Kessler.
Criterio a1 a2 a3 a4 a5
ISE 1.03 0.49 1.37 1.496 0.59
ITSE 0.96 0.45 1.36 1.66 0.53
ISTSE 0.9 0.45 1.34 1.83 0.49
Ejemplo 1.22
Kp
Controlar el proceso con FT Gp (s) = s e−τ s , con Kp = 2, T = 20 y τ = 2 usando
el criterio ISE y un controlador PID.
50 ON–OFF AND PID CONTROL
0
SALIDA
-1
-2
-3
-4
-5
0 10 20 30 40 50 60
TIEMPO (seconds)
Kp
Fig. 1.45: Control PID del proceso Gp (s) = s e−τ s (ejemplo 1.22).
Kp
Método de Xue para Procesos con FT: s(T s+1)
e−τ s
La FT del siguiente proceso posee parte proporcional, parte integral, parte retardo
de primer orden y tiempo muerto:
y(s) Kp
G(s) = = e−τ s (1.42)
u(s) s(T s + 1)
Debido a la presencia del integrador, los controladores PD y PID resultan los ade-
cuados para controlar tales procesos. Las fórmulas para determinar los parámetros
del controlador PD son [22]:
2
Kc = Td = T τ (1.43)
3Kp τ
mientras que para el controlador PID, se tiene:
" 0.65 #
1.111T 1 T Ti
Kc = i2 Ti = 2τ 1 + Td = (1.44)
Kp τ 2 . τ 4
h
0 65
1 + Tτ
1.6 Tuning Methods of PID Controllers 51
Ejemplo 1.23
Kp
Controlar el proceso con FT Gp (s) = s(T s+1) e−τ s , con Kp = 2, T = 2 y τ = 2.
Solución: La Fig. 1.46 muestra la respuesta controlada, resultado que se obtienen
ejecutando el programa zh3.m listado abajo.
CONTROL PID USANDO ISE
1.6
1.2
1
Amplitude
0.8
0.6
0.4
0.2
-0.2
0 20 40 60 80 100 120 140 160
Time (seconds)
Kp
Fig. 1.46: Control PID del proceso Gp (s) = s(T s+1) e−τ s usando ISE (ejemplo 1.23).
Kp
Método de Xue para Procesos con FT: T s−1
e−τ s
La FT del siguiente proceso posee parte proporcional, parte integral, parte retardo
de primer orden inestable y tiempo muerto:
y(s) Kp
G(s) = = e−τ s (1.45)
u(s) Ts − 1
Debido a la presencia del integrador y a la raı́z inestable s = 1/T , el controlador
PID parece ser el más adecuado para controlar tales procesos. Las fórmulas para
determinar los parámetros del controlador PID son [22]:
a 1 τ b 1 τ b 2 τ −0.02 τ γ
Kc = Ti = a2 T Td = a3 T 1 − b3
Kp T T T T
(1.46)
Los parámetros ai , bi y γ se obtienen de la Tabla 1.16 para diferentes criterios.
52 ON–OFF AND PID CONTROL
Criterio a1 b1 a2 b2 a3 b3 γ
ISE 1.32 0.92 4.00 0.47 3.78 0.84 0.95
ITSE 1.38 0.90 4.12 0.90 3.62 0.85 0.93
ISTSE 1.35 0.95 4.52 1.13 3.70 0.86 0.97
Ejemplo 1.24
Kp
Controlar el proceso con FT Gp (s) = T s−1 e−τ s , con Kp = 2, T = 2 y τ = 2.
3
SALIDA
−1
−2
−3
0 10 20 30 40 50 60 70
TIEMPO (sec)
Kp
Fig. 1.47: Control PID2 del proceso Gp (s) = s−1 e−τ s usando ISTSE (ejemplo 1.24).
Por consiguiente:
1 y(s)/r(s)
Gc (s) = (1.47)
Gp (s) 1 − y(s)/r(s)
Se puede forzar que la señal controlada y(t) sea la curva de reacción de un proceso
de primer orden de ganancia unitaria y constante de tiempo Tc :
y(s) 1
= (1.48)
r(s) Tc s + 1
H(s)
Proceso Proporcional
Cuando Gp (s) = Kp (proceso proporcional), la ecuación (1.49) toma la forma:
Kc 1
Gc (s) = Kc = (1.50)
s Kp Tc
Proceso Integral
Cuando:
Kp
Gp (s) =
s(T s + a)
el cual corresponde a un proceso integral, la ley de control (1.49) toma la forma:
1
Gc (s) = Kc (Td s + 1) Kc = Td = T (1.55)
Kp Tc
Kp e−τ s
Gp (s) = (1.60)
(T s + 1)
En este caso conviene forzar que la señal controlada y(t) sea la curva de reacción de
un proceso de primer orden con tiempo muerto y ganancia unitaria, de la forma:
y(s) e−τ s
= (1.61)
r(s) Tc s + 1
Ejemplo 1.25
1 1
SALIDA
SALIDA
0.5 0.5
0 0
0 2 4 6 8 10 12 0 2 4 6 8 10 12
TIEMPO [s] (sec) TIEMPO [s] (sec)
CONTROL DE UN PROCESO DE 2do ORDEN CONTROL DE UN PROCESO INTEGRATIVO
1 1
SALIDA
SALIDA
0.5 0.5
0 0
0 2 4 6 8 10 12 0 2 4 6 8 10 12
TIEMPO [s] (sec) TIEMPO [s] (sec)
PROCESO CON RPTA INVERSA O SOBRENIVEL CONTROL DE UN PROCESO CON TIEMPO MUERTO
2 1
SALIDA
SALIDA
1 0.5
0 0
−1 −0.5
−2 −1
0 2 4 6 8 10 12 0 5 10 15
TIEMPO [s] (sec) TIEMPO [s] (sec)
de exceder el rango permitido por el actuador. Por estas razones es que introducimos
un limitador a la salida del controlador. Lamentablemente este limitador, el cual es
un elemento no lineal, es el causante del efecto denominado en windup (saturación)
que se explica a continuación.
La Fig. 1.50 muestra el diagrama en Simulink empleado para explicar el efecto
windup. Ejecutar el programa windup.mdl y luego el programa windupgraf.m para
obtener la Fig. 1.51, en donde se observa que cuando ocurre un cambio tipo escalón
en la señal de referencia r(t) = 1 (primer gráfico), la señal de error positiva inicial
(r(t) − y(t)) se hace bastante grande a partir del tiempo t1 , provocando que la señal
de control u(t) (segundo gráfico) alcance rápidamente el valor lı́mite de saturación. A
pesar de que la señal de salida y(t) en el tiempo t1 iguala al valor de referencia r(t),
debido al efecto windup, la salida yi (t) del integrador sigue creciendo (tercer gráfico),
lo cual genera una señal de error (r(t) − y(t)) grande negativa, mientras que la señal
de control u(t) permanece en el valor de saturación máximo. Notar en el tercer gráfico
que la salida del integrador yi (t) es grande hasta que se alcance el tiempo t2 , y luego
comienza a disminuı́r conforme disminuye el error negativo, debido a que la acción
de control está teniendo efecto.
Observar en el primer gráfico de la Fig. 1.51 que el efecto windup provoca un
aumento del sobreimpulso y del tiempo de estabilización en la señal controlada y(t). Si
el algoritmo PID empleado es del tipo discreto, el fenómeno windup no es tan notorio,
aún cuando la señal de control esté limitada, debido a que el algoritmo discreto no
emplea la suma de los errores para generar el término integral del controlador. Lo
que se emplea es un cálculo recursivo como veremos más adelante.
yi
u y Scope
Step =1 yi
u
1 10
5
1.12s yi u s4 +10s3 +35s2 +50s+24
Kc=5 Ti =1.12 um =3.5
Transfer Fcn
t y
Clock t y
Existen diversos métodos para eliminar en gran medida el efecto windup en sis-
temas de control que emplean controladores PID continuos [24], [24]. Uno de estos
58 ON–OFF AND PID CONTROL
EFECTO WINDUP
2
SALIDA y(t)
t1
1
0
0 2 4 6 8 10
TIEMPO [s]
CONTROL u(t)
4
t2
2
0
0 2 4 6 8 10
TIEMPO [s]
INTEGRADOR yi(t)
10
0
0 2 4 6 8 10
TIEMPO [s]
1/1.2 tt
rr
REF. Clock tt
rr GANANCIA 1/Ti
1
1/1.2 uu Scope
s
1/Ti INTEGRADOR uu
10
1.3
s4 +10s3 +35s2 +50s+24
Kc SATURACIÓN
SISTEMA A CONTROLAR
1 yy
0.1 du/dt
0.5s+1 yy
FILTRO Td DERIVADOR antiwindup .m CONTROLADOR PID CON MECANISMO
ANTI WINDUP. EL FILTRO SE PUEDE SELECCIONAR
A VOLUNTAD.
Fig. 1.52: Simulink diagram showing a PID controller with anti windup mechanism.
% antiwindupgraf.m
1.8 Discrete-Time PID Algorithms 59
1.2
0.6
0.4
0.2
0
0 1 2 3 4 5 6 7 8 9 10
TIEMPO [s]
2.5
CONTROL u(t)
1.5
1
0 1 2 3 4 5 6 7 8 9 10
TIEMPO [s]
clear all; close all; clc; load yy; load rr; load uu; load tt;
subplot(211), plot(tt,rr,’k’,tt,yy,’k’), xlabel(’TIEMPO [s]’),
Ylabel(’SALIDA y’), title(’CONTROLADOR PID CON MECANISMO ANTI WINDUP’)
subplot(212), plot(tt,uu,’k’), xlabel(’TIEMPO [s]’), Ylabel(’CONTROL u’)
print -f -deps antiwindupfig, print -s -deps antiwindupsim
Por otra parte, cuando el controlador conmuta de manual a automático, el valor
de la señal de control u(t) puede cambiar de un valor a otro, no importando que la
señal de error e sea cero. Este salto debe de evitarse y en este caso se dice que la
conmutación de manual a automático debe de ser bumpless (sin saltos). Para lograr
conmutación sin saltos, el algoritmo de control debe de ejecutarse siempre, aún en el
caso en que la operación del sistema de control se encuentre en modo manual. Esta
corrección se puede realizar en el correspondiente programa en tiempo real.
de(t)
(1.9) with dt = − dy(t)
dt becomes
Z
1 dy
u = Kc e+ edt − Td
Ti dt
Another important modification is to filter the derivative action of the original PID
controller using a first (or second) order filter to decrease the derivative noise. This
feature limits the amplification of high–frequency measurement noise at the output
of the controller. The control signal will thus be less noisy and the high frequency
gain will remain within appropriate levels. A practical derivative term, since a pu-
re derivative is not realizable, can be approximated by a first-order term having a
time constant Tf , which is often normalized with respect to the derivative time Td .
Therefore, the pure derivative term of the PID algorithm is modified as follows
Td s Td
Td s Tf =
1 + Tf s N
where N is a constant ranging from 3 to 100 and is known as the derivative gain
quota. Then the PID algorithm takes on the form
Kc Kc Td s
u(s) = Kc e(s) + e(s) − y(s) = P (s) + I(s) + D(s) (1.63)
Ti s 1 + Tf s
Kc Kc Td s Td
P (s) = Kc e(s) I(s) = e(s) D(s) = − y(s) Tf =
Ti s 1 + Tf s N
The terms P , I and D represent the proportional, integral and derivative parts of
the modified PID controller, respectively.
Let k be the discrete time, which is related to the continuous time t by the
equation t = T k, where T is the sampling time. The proportional part P = Kc e(s)
of (1.63) is directly discretized, obtaining
P = Kc e(k) (1.64)
Rt
For the integral part I(s) = TKics e(s), or what is the same I(t) = Kc
Ti 0 e(t)dt we use
the trapezoidal approximation
k k−1
Kc X [e(i) + e(i − 1)] Kc X [e(i) + e(i − 1)] Kc T [e(k) + e(k − 1)]
I(k) = T = T +
Ti 2 Ti 2 Ti 2
i=1 i=1
Kc T
I(k) = I(k − 1) + [e(k) + e(k − 1)] (1.65)
2Ti
Kc Td s
The derivative part D(s) = − 1+T f s
y(s) can be written as
In 1.67, P (k), I(k) D(k) are given by (1.64), (1.65) and (1.66), respectively.
Also, it is necessary to include a saturator with maximum and minimum limits
to protect the final control elements from damages that is
v = P + I + D;
if(v < ulow), u = ulow; elseif(v > umax), u = umax; else u = v;
If the sampling time Ts is sufficiently small, then the tuning rules for continuous–
time systems discussed above, can also be used for discrete–time systems. However,
there are tuning rules for the discrete–time case, such as those shown in the Tables
K
1.17 and 1.18. These tables employ the TF Gp (s) = 1+Tp s e−τ s of the process and are
not valid if τ /Ts ≈ 0 nor are they due apply if τ /Ts < 1/4, where Ts is the sampling
time.
100
Type Controller Gc (s) Kc = BP Ki = Kc /Ti Kd = Kc Td
1 T
P Kc Kp τ +Ts 0 0
Ki 0.9 T 0.27 Ts T
PI Kc + s Kp τ +0.5Ts − 0.5Ki Kp (τ +0.5Ts )2 0
Ki 1.2 T 0.6 Ts T 0.5 T
PID Kc + s + Kd s Kp τ +Ts − 0.5Ki Kp (τ +0.5Ts )2 Kp Ts
100
Tipo Controlador Gc (s) Kc = BP Ki = Kc /Ti Kd = Kc Td
P KC 0.5Kcrit ∞ 0
Ki
PI Kc + s 0.45 Kcrit − 0.5Ki 0,54 K crit
Tcrit 0
Ki
PID Kc + s + Kd s 0.6 Kcrit − 0,5Ki 1.2 K crit
Tcrit 0.075Kcrit Tcrit
Ts
Ejemplo 1.26
Control the angular position x1 of a robot arm of 1DOF employing the discrete–time
PID algorithm. Such a robot arm is described by
Solution: In the program list pidposfijo.m all parameters are described and eva-
luated. Running this program, we get the requested response shown in Fig. 1.54.
1.5
0.5
-0.5
0 10 20 30 40 50 60 70 80 90 100
1
Señal de control u (V)
0.5
-0.5
0 10 20 30 40 50 60 70 80 90 100
TIME [s]
Z t
de
u = Kc e + Ki e dt + Kd ; P osition P ID
0 dt
du de d2 e
= Kc + Ki e + Kd 2 ; V elocity P ID
dt dt dt
du u(k) − u(k − 1) de e(k) − e(k − 1)
= ; = ;
dt Ts dt Ts
d2 e 1
= (e(k) − 2e(k − 1) + e(k − 2))
dt2 Ts2
u(k) = u(k − 1) + Kc (e(k) − e(k − 1) +
Kd
Ts Ki e(k) + (e(k) − 2e(k − 1) + e(k − 2))
Ts
u = u + Kc ∗ (e − e−1 ) +
Kd
Ts ∗ Ki e + (e − 2e−1 + e−2 ); (1.68)
Ts
1.5
0.5
-0.5
0 10 20 30 40 50 60 70 80 90 100
1
Señal de control u (V)
0.5
-0.5
-1
0 10 20 30 40 50 60 70 80 90 100
TIME [s]
Fig. 1.55: Controlled angular position corresponding to the example 1.26 using a
velocity PID algorithm.
% INITIAL CONDITIONS
e_1 = 0; e_2=0; x1 = 0; x1p=0; x2 = 0; v=0;
% ******** CONTROL LOOP *********
Mm = 10000; T = 0.01; Nn = 10; ulow = -5; uhigh = 5; A=1;
for k = 1:Mm
if(k >= 0 && k <= Mm/4), r = A;
elseif(k >= Mm/4 && k <= Mm/2), r = 0.5*A;
elseif(k >= Mm/2 && k <= 3*Mm/4), r = 1*A;
elseif(k >= 3*Mm/4 && k <= Mm), r = 0.1*A;
end
R(k) = r; e = r - x1;
v = v + Kp*(e-e_1)+T*Ki*e+Kd*(e-2*e_1+e_2);
if(v < ulow), u = ulow; elseif( v > uhigh), u = uhigh; else u = v;
end
U(k) = u;
% MODELO DE SEGUNDO ORDEN DEL PROCESO (DISCRETIZACIÓN DIRECTA)
x1 = x1 + T*x2; Y(k) = x1;
x2 = x2 + T*(-a1*sin(x1)-a2*x2+b*u);
e_2=e_1; e_1 = e;
end
% PLOTS
ejex = linspace(0,Mm*T,Mm); subplot(2,1,1)
plot(ejex,R,ejex,Y); grid; ylabel(’Posición angular (rad)’)
subplot(2,1,2); plot(ejex,U); grid; ylabel(’Se~nal de control u (V)’)
xlabel(’TIME [s]’); print -f -deps pidvelocity
1.9 Problems 65
1.9. Problems
Problema 1.1
Las FTs Ga (s) hasta Gj (s) corresponden a procesos a ser controlados. Determinar
para cada una de ellos los siguientes modelos dinámicos aproximados:
Kp −τ s
GA (s) = e
Ts + 1
Kp τ
GB (s) = ; ≥ 0.104
(Tn s + 1)n T
Kp τ
GC (s) = ; < 0.104
(T1 s + 1)(T2 s + 1) T
2 4
Ga (s) = Gb (s) =
(s + 1)3 (s + 1)5
−3s + 2 s2 − 3s + 6
Gc (s) = Gd (s) =
(s + 1)3 (s + 1)(s2 + 3s + 6)(s2 + s + 2)
−10s + 4 6
Ge (s) = e−s/2 Gf (s) =
(s + 1)2 (s + 3)3 (s + 1)6
3 3
Gg (s) = e−s Gh (s) = e−2s
(s + 1)(2s + 1) (s + 1)4
7 3s + 6
Gi (s) = e−30s Gj (s) = e−s/10
(17s + 1)(6s + 1)3 (s + 1)(4s + 1)
Problema 1.2
Realizar los controles PID1, PID2 y PID3 de los procesos Ga (s) al Gj (s) en el dominio
de s empleando MATLAB. Usar al menos tres distintas reglas de sintonización para
cada proceso. El objetivo de control es que la señal controlada siga a una referencia
constante.
Problema 1.3
Realizar los controles PID1, PID2 y PID3 de los procesos Ga (s) al Gj (s) empleando
SIMULINK. Usar al menos una regla de sintonización, en lo posible distinta de las
otras, para cada proceso. El objetivo de control es que la señal controlada siga a una
referencia constante.
Problema 1.4
Realizar los controles PID1, PID2 y PID3 de los procesos Ga (s) al Gj (s) en el dominio
del tiempo discreto k=t/T (T es el tiempo de muestreo) empleando MATLAB. Usar al
menos tres distintas reglas de sintonización para cada proceso. El objetivo de control
es que la señal controlada (la salida) tienda a cero en presencia de un disturbio tipo
escalón a la entrada del proceso. En esta situación, denominada rechazo al disturbio,
la señal de referencia es nula.
66 ON–OFF AND PID CONTROL
Problema 1.5
Realizar los controles PID1, PID2 y PID3 de los procesos Ga (s) al Gj (s) Ga (s)
al Gj (s) empleando SIMULINK. Usar al menos una regla de sintonización, en lo
posible distinta de las otras, para cada proceso. El objetivo de control es que la señal
controlada (la salida) tienda a cero en presencia de un disturbio tipo escalón a la
entrada del proceso. En esta situación, denominada rechazo al disturbio, la señal de
referencia es nula.
Problema 1.6
Realizar los controles PI o PID según corresponda, de los procesos Gk (s) al Gt (s)
empleando el método de Kessler.
2
Gk (s) =
(1 + 20s)(1 + 0.1s)3 (1 + 0.3s)3
9
Gl (s) =
(1 + 20s)(1 + 30s)(1 + 0.2s)4 (1 + 0.5s)2
2
Gm (s) =
s(1 + s) (1 + 2s)2
3
8
Gn (s) =
s(1 + 20s)(1 + 0.1s)3 (1 + 0.3s)3
5
Go (s) =
(1 + 0.1s)(1 + 0.2s)(1 + 30s)(1 + 0.3s)2 (1 + 0.5s)2
3
Gp (s) =
s(1 + s)(1 + 2s)(1 + 40s)(1 + 0.2s)4 (1 + 0.5s)3
6
Gq (s) =
(1 + s)(1 + 2s)(1 + 40s)(1 + 50s)(1 + 0.2s)4 (1 + 0.5s)3
8
Gr (s) =
(s + 10)(s + 9)(s + 2)
4
Gs (s) = 2
s(s + 3) (s + 5)(s + 6)
4
Gt (s) = 2
s(1 + s) (1 + 2s)(1 + 0.9s)
Problema 1.7
Para el proceso del problema ??, diseñar un sistema de control PID para controlar la
velocidad de la turbina actuando sobre una válvula de control instalada en la tuberı́a
de entrada de agua. Asumir que la FT de transferencia de la válvula es una constante
Kv = 1.4. Se sabe que Kp = 3.6 y T = 6.8 s.
Problema 1.8
Para el proceso del problema ??, diseñar un sistema de control PID para controlar la
presión Po en el interior del tanque actuando sobre una válvula de control instalada
en la tuberı́a de entrada de gas. Asumir que T = 3.4 s y que la FT de transferencia
de la válvula es:
2
0.8s + 1
1.9 Problems 67
Problema 1.9
Para el proceso del problema ??, diseñar un sistema de control PID para controlar
la posición x de la masa M actuando sobre un pistón de control conectado a la masa
M . Asumir que M = 120 kg, K = 2 N/m, B = N/m/s y que la FT de transferencia
del pistón es 4.5.
Problema 1.10
Para el proceso del problema ??, diseñar un sistema de control PID para controlar
la temperatura TF actuando sobre una válvula de control instalada en la tuberı́a de
vapor. Asumir que la FT de transferencia de la válvula es una constante Kv = 0.6.
Asumir valores apropiados de los otros parámetros.
Problema 1.11
Para el proceso del problema ??, diseñar un sistema de control PID para controlar
el desplazamiento de la masa M2 actuando sobre pistón neumático conectado a esta
masa. La FT de transferencia del pistón neumático es una constante de valor 2.3.
Asumir valores apropiados de los otros parámetros.
Problema 1.12
Problema 1.13
Empleando Simulink, diseñar un sistema de control PID para controlar la salida del
proceso descrito en el ejemplo 1.4.
Problema 1.14
Empleando Simulink, diseñar un sistema de control PID para controlar la salida del
proceso:
s+2
Gp (s) =
(s + 1)(s + 3)(s + 4)(s + 5)(s + 6)
Problema 1.15
Para el proceso del ejemplo ??, diseñar un sistema de control PID para controlar el
flujo actuando sobre una válvula de control instalada en la tuberı́a. Asumir que la
FT de transferencia de la válvula es:
2
0.3s + 1
Problema 1.16
Para el proceso mostrado en la Fig. ??, diseñar un sistema de control PID para
controlar el nivel actuando sobre la válvula de control, cuya FT se asume constante
y de valor unitario.
68 ON–OFF AND PID CONTROL
Problema 1.17
Para el proceso mostrado en la Fig. ??, diseñar un sistema de control PID para
controlar el flujo de salida actuando sobre la válvula de entrada de FT constante y
de valor dos. Asumir valores adecuados de los parámetros.
Problema 1.18
[3] Katsuhiko Ogata, Modern Control Engineering (5th Edition), Prentice Hall,
2009.
[4] C.A. Smith y A.B. Corripio, Control Automático de Procesos, Editorial Limusa,
2007.
[5] TecQuipment Ltd, TE37 Control and Instrumentation Study Station, User Gui-
de, 2009.
[7] Alan S. Morris and Reza Langaris, Measurement and Instrumentation: Theory
and Application, Elsevier Inc., 2012.
[11] A. O’Dwyer, Handbook of PI and PID Controller Tuning Rules, 3rd edition,
Imperial College Press, 2009.
[12] J.G. Ziegler y N.B. Nichols, “Optimum Setting for Automatic Controllers”,
Transactions of the American Society Mechanical Engineering, Vol 64, pp. 759-
768, 1942.
[13] Richard C. Dorf y Robert H. Bishop, Sistemas de Control Moderno (10ma Edi-
ción), Pearson Prentice Hall, 2005.
[14] K.L. Chien, J. A. Hrones, and J. B. Reswick, “On the automatic control of
generalized passive systems”, Trans. ASME, vol. 74, pp. 175-185, 1952.
70 BIBLIOGRAFÍA
[16] Erwin Samal, Grundriss der Praktischen Regelungstechnik (11. durchsehene Au-
flage, R. Oldenbourg Verlag Muenchen Wien 1980.
[17] K.J. Åström y T. Hägglund, PID Controllers: Theory, Design, and Tuning, Ins-
trument Society of America, 1995.
[19] F.S. Wang, W.S. Juang y C.T. Chan,“Optimal tuning of PID controllers for
single and cascade control loops”. Chemical Engineering Communications, Vol.
132, pp 15–34, 1995.
[21] C. Kessler, C., “Das symmetrische Optimum”, part 1, rt, No.11, pp. 395-400 and
part 2, rt, No.12, pp. 432-436, (1958)
[24] C. Smith, Practical Process Control: Tuning and Troubleshooting, Wiley, 2009.
[25] C. Smith, Advanced Process Control: Beyond Single Loop Control, Wiley–
AICHE, 2010.
[26] W. Altmann, Practical process control for engineers and technicians, Elsevier,
2005.
[27] E. B. Dahlin, “Designing and Tuning Digital Controllers,” Instruments and Con-
trol Systems, V. 41 (June 1968), p. 77.
[29] T. Edgar, D. Mellichamp, Process Dynamics and Control D. Seborg, John Wiley
& sons Inc., 3rd Edition, 2010.
[32] H. Zhang, D. Liu Fuzzy Modeling And Fuzzy Control, Birkhäuser, Boston, Basel
Berlin, 2006