SlideShare una empresa de Scribd logo
1 de 242
Descargar para leer sin conexión
Industrial Control
Behzad Samadi
Department of Electrical Engineering
Amirkabir University of Technology
Winter 2010
Tehran, Iran
Behzad Samadi (Amirkabir University) Industrial Control 1 / 95
Feedback Control Loop
r: reference signal
y: process (controlled) variable
u: manipulated (control) variable
e: control error
d: load disturbance signal
n: measurement noise signal
F: feedforward filter
C: controller
P: plant
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 2 / 95
On-Off Control
One of the simplest control laws:
u =
{
umax if e > 0
umin if e < 0
Behzad Samadi (Amirkabir University) Industrial Control 3 / 95
On-Off Control
One of the simplest control laws:
u =
{
umax if e > 0
umin if e < 0
Disadvantage: persistent oscillation of the process variable
P =
1
10s + 1
e−2s
, umax = 2, umin = 0
Behzad Samadi (Amirkabir University) Industrial Control 3 / 95
On-Off Control
One of the simplest control laws:
u =
{
umax if e > 0
umin if e < 0
Disadvantage: persistent oscillation of the process variable
P =
1
10s + 1
e−2s
, umax = 2, umin = 0
Behzad Samadi (Amirkabir University) Industrial Control 3 / 95
On-Off Control
One of the simplest control laws:
u =
{
umax if e > 0
umin if e < 0
Disadvantage: persistent oscillation of the process variable
P =
1
10s + 1
e−2s
, umax = 2, umin = 0
Behzad Samadi (Amirkabir University) Industrial Control 3 / 95
On-Off Control
a) Ideal on-off controller
b) Modified with a dead zone
c) Modified with hysteresys
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 4 / 95
PID Control
1 Proportional action
2 Integral action
3 Derivative action
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 5 / 95
Proportional Action
Proportional control action:
u(t) = Kpe(t) = Kp(r(t) − y(t)),
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 6 / 95
Proportional Action
Proportional control action:
u(t) = Kpe(t) = Kp(r(t) − y(t)),
Kp: proportional gain
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 6 / 95
Proportional Action
Proportional control action:
u(t) = Kpe(t) = Kp(r(t) − y(t)),
Kp: proportional gain
Controller transfer function:
C(s) = Kp
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 6 / 95
Proportional Action
Proportional control action:
u(t) = Kpe(t) = Kp(r(t) − y(t)),
Kp: proportional gain
Controller transfer function:
C(s) = Kp
Advantage: small control signal for a small error signal
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 6 / 95
Proportional Action
Proportional control action:
u(t) = Kpe(t) = Kp(r(t) − y(t)),
Kp: proportional gain
Controller transfer function:
C(s) = Kp
Advantage: small control signal for a small error signal
Disadvantage: steady state error
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 6 / 95
Proportional Action
Steady state error occurs even if the process presents an integrating
dynamics, in case a constant load disturbance occurs.
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 7 / 95
Proportional Action
Steady state error occurs even if the process presents an integrating
dynamics, in case a constant load disturbance occurs.
Adding a bias (or reset) term:
u(t) = Kpe + ub
The value of ub can be fixed or can be adjusted manually until the
steady state error is zero.
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 7 / 95
Proportional Action
Proportional Band (PB):
PB =
100%
Kp
[Astrom and Hagglund, 1995]
Behzad Samadi (Amirkabir University) Industrial Control 8 / 95
Integral Action
Integral control action:
u(t) = Ki
∫ t
0
e(𝜏)d𝜏,
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 9 / 95
Integral Action
Integral control action:
u(t) = Ki
∫ t
0
e(𝜏)d𝜏,
Ki : integral gain
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 9 / 95
Integral Action
Integral control action:
u(t) = Ki
∫ t
0
e(𝜏)d𝜏,
Ki : integral gain
Controller transfer function:
C(s) =
Ki
s
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 9 / 95
Integral Action
Integral control action:
u(t) = Ki
∫ t
0
e(𝜏)d𝜏,
Ki : integral gain
Controller transfer function:
C(s) =
Ki
s
Advantage: zero steady state error
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 9 / 95
Integral Action
Integral control action:
u(t) = Ki
∫ t
0
e(𝜏)d𝜏,
Ki : integral gain
Controller transfer function:
C(s) =
Ki
s
Advantage: zero steady state error
Disadvantage: integrator windup in the presence of saturation
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 9 / 95
PI Controller
Proportional Integrator Controller:
Transfer function:
C(s) = Kp(1 +
1
Ti s
)
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 10 / 95
PI Controller
Proportional Integrator Controller:
Transfer function:
C(s) = Kp(1 +
1
Ti s
)
Integral action is able to set automatically the value of ub.
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 10 / 95
PI Controller
Proportional Integrator Controller:
Transfer function:
C(s) = Kp(1 +
1
Ti s
)
Integral action is able to set automatically the value of ub.
The integral action is also called automatic reset.
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 10 / 95
Derivative Action
Derivative control action:
u(t) = Kd
de(t)
dt
,
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 11 / 95
Derivative Action
Derivative control action:
u(t) = Kd
de(t)
dt
,
Kd : derivative gain
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 11 / 95
Derivative Action
Derivative control action:
u(t) = Kd
de(t)
dt
,
Kd : derivative gain
Controller transfer function:
C(s) = Kd s
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 11 / 95
Derivative Action
Derivative control action:
u(t) = Kd
de(t)
dt
,
Kd : derivative gain
Controller transfer function:
C(s) = Kd s
Advantage: Derivative action is an instance of predictive control.
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 11 / 95
Derivative Action
Derivative control action:
u(t) = Kd
de(t)
dt
,
Kd : derivative gain
Controller transfer function:
C(s) = Kd s
Advantage: Derivative action is an instance of predictive control.
Disadvantage: Sensitive to the measurement noise in the manipulated
variable
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 11 / 95
Derivative Action
Derivative action is an instance of predictive control.
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 12 / 95
Derivative Action
Derivative action is an instance of predictive control.
Taylor series expansion of the control error at time Td ahead:
e(t + Td ) ≈ e(t) + Td
de(t)
dt
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 12 / 95
Derivative Action
Derivative action is an instance of predictive control.
Taylor series expansion of the control error at time Td ahead:
e(t + Td ) ≈ e(t) + Td
de(t)
dt
A control law proportional to e(t + Td )
u(t) = Kp
(
e(t) + Td
de(t)
dt
)
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 12 / 95
Derivative Action
Derivative action is an instance of predictive control.
Taylor series expansion of the control error at time Td ahead:
e(t + Td ) ≈ e(t) + Td
de(t)
dt
A control law proportional to e(t + Td )
u(t) = Kp
(
e(t) + Td
de(t)
dt
)
Derivative action is also called anticipatory control, or rate action, or
pre-act.
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 12 / 95
PID Controller
Transfer function:
C(s) = Kp
(
1 +
1
Ti s
+ Td s
)
Time windows:
Proportional action responds to current error.
Integrator action responds to accumulated past error.
Derivative action anticipated future error.
Peter Woolf umich.edu
Behzad Samadi (Amirkabir University) Industrial Control 13 / 95
PID Controller
Transfer function:
C(s) = Kp +
Ki
s
+ Kd s
Frequency band:
Proportional action: all-band
Integrator action: low pass
Derivative action: high pass
[Li et al., 2006]
Behzad Samadi (Amirkabir University) Industrial Control 14 / 95
PID Controller
Transfer function:
C(s) = Kp +
Ki
s
+ Kd s
[Li et al., 2006]
Behzad Samadi (Amirkabir University) Industrial Control 15 / 95
PID Controller
Implementation methods:
Pneumatic
Hydraulic
Electronic
Digital
Behzad Samadi (Amirkabir University) Industrial Control 16 / 95
PID Controller
Structures of PID controllers:
Ideal or noninteracting form:
Ci (s) = Kp
(
1 +
1
Ti s
+ Td s
)
[Visioli, 2006] and [Astrom and Hagglund, 1995]
Behzad Samadi (Amirkabir University) Industrial Control 17 / 95
PID Controller
Structures of PID controllers:
Ideal or noninteracting form:
Ci (s) = Kp
(
1 +
1
Ti s
+ Td s
)
Series or interacting from:
Cs(s) = K
′
p
(
1 +
1
T
′
i s
)
(1 + T
′
d s)
[Visioli, 2006] and [Astrom and Hagglund, 1995]
Behzad Samadi (Amirkabir University) Industrial Control 17 / 95
PID Controller
Structures of PID controllers:
Ideal or noninteracting form:
Ci (s) = Kp
(
1 +
1
Ti s
+ Td s
)
Series or interacting from:
Cs(s) = K
′
p
(
1 +
1
T
′
i s
)
(1 + T
′
d s)
Parallel form:
Ci (s) = Kp +
Ki
s
+ Kd s
[Visioli, 2006] and [Astrom and Hagglund, 1995]
Behzad Samadi (Amirkabir University) Industrial Control 17 / 95
PID Controller
Structures of PID controllers:
[Astrom and Hagglund, 1995]
Behzad Samadi (Amirkabir University) Industrial Control 18 / 95
PID Controller
Structures of PID controllers:
Series to ideal form conversion:
Kp =K
′
p
T
′
i + T
′
d
T
′
i
Ti =T
′
i + Td
′
Td =
T
′
i T
′
d
T
′
i + T
′
d
Behzad Samadi (Amirkabir University) Industrial Control 19 / 95
PID Controller
Structures of PID controllers:
Ideal to series form conversion: Only if Ti ≥ 4Td
K
′
p =
Kp
2
(
1 +
√
1 − 4
Td
Ti
)
T
′
i =
Ti
2
(
1 +
√
1 − 4
Td
Ti
)
T
′
d =
Ti
2
(
1 −
√
1 − 4
Td
Ti
)
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 20 / 95
PID Controller
Alternative series form:
Cs(s) = Kp(1 +
1
𝛼Ti s
)(𝛼 + Td s)
Ideal to alternative series form conversion: Only if Ti ≥ 4Td
𝛼 =
1 ±
√
1 − 4Td
Ti
2
> 0
[Li et al., 2006]
Behzad Samadi (Amirkabir University) Industrial Control 21 / 95
PID Controller
A PID controller has two zeros and one pole at the origin.
Ti > 4Td : two real zeros
Ti = 4Td : two coincident zeros
Ti < 4Td : two complex conjugate zeros
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 22 / 95
Problems with the Derivative Action
Noise:
n(t) = A sin(𝜔t)
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 23 / 95
Problems with the Derivative Action
Noise:
n(t) = A sin(𝜔t)
Derivative action:
u(t) = A𝜔 cos(𝜔t)
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 23 / 95
Problems with the Derivative Action
Noise:
n(t) = A sin(𝜔t)
Derivative action:
u(t) = A𝜔 cos(𝜔t)
u(t) is large for high frequencies.
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 23 / 95
Problems with the Derivative Action
Noise:
n(t) = A sin(𝜔t)
Derivative action:
u(t) = A𝜔 cos(𝜔t)
u(t) is large for high frequencies.
In practice, a (very) noisy control signal might lead to a damage of
the actuator.
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 23 / 95
Modified Derivative Action
Modified ideal form:
Ci1a(s) = Kp
(
1 +
1
Ti s
+
Td s
Td
N s + 1
)
[Visioli, 2006]Behzad Samadi (Amirkabir University) Industrial Control 24 / 95
Modified Derivative Action
Modified ideal form:
Ci1a(s) = Kp
(
1 +
1
Ti s
+
Td s
Td
N s + 1
)
Gerry and Shinskey, 2005:
Ci1b(s) = Kp
⎛
⎜
⎝1 +
1
Ti s
+
Td s
1 + Td
N s + 0.5
(
Td
N s
)2
⎞
⎟
⎠
[Visioli, 2006]Behzad Samadi (Amirkabir University) Industrial Control 24 / 95
Modified Derivative Action
Modified ideal form:
Ci1a(s) = Kp
(
1 +
1
Ti s
+
Td s
Td
N s + 1
)
Gerry and Shinskey, 2005:
Ci1b(s) = Kp
⎛
⎜
⎝1 +
1
Ti s
+
Td s
1 + Td
N s + 0.5
(
Td
N s
)2
⎞
⎟
⎠
Modified series form:
Cs(s) = K
′
p
(
1 +
1
T
′
i s
)
⎛
⎝T
′
d s + 1
T
′
d
N s + 1
⎞
⎠
[Visioli, 2006]Behzad Samadi (Amirkabir University) Industrial Control 24 / 95
Modified Derivative Action
Modified ideal form:
Ci1a(s) = Kp
(
1 +
1
Ti s
+
Td s
Td
N s + 1
)
Gerry and Shinskey, 2005:
Ci1b(s) = Kp
⎛
⎜
⎝1 +
1
Ti s
+
Td s
1 + Td
N s + 0.5
(
Td
N s
)2
⎞
⎟
⎠
Modified series form:
Cs(s) = K
′
p
(
1 +
1
T
′
i s
)
⎛
⎝T
′
d s + 1
T
′
d
N s + 1
⎞
⎠
N generally assumes a value between 1 and 33, although in the
majority of the practical cases its setting falls between 8 and 16 (Ang
et al., 2005).
[Visioli, 2006]Behzad Samadi (Amirkabir University) Industrial Control 24 / 95
Modified Derivative Action
Alternative modified ideal form:
Ci2a(s) = Kp
(
1 +
1
Ti s
+ Td s
)
1
Tf s + 1
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 25 / 95
Modified Derivative Action
Alternative modified ideal form:
Ci2a(s) = Kp
(
1 +
1
Ti s
+ Td s
)
1
Tf s + 1
˚Astr¨om and H¨agglund, 2004:
Ci2b(s) = Kp
(
1 +
1
Ti s
+ Td s
)
1
(Tf s + 1)2
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 25 / 95
Modified Derivative Action
Alternative modified ideal form:
Ci2a(s) = Kp
(
1 +
1
Ti s
+ Td s
)
1
Tf s + 1
˚Astr¨om and H¨agglund, 2004:
Ci2b(s) = Kp
(
1 +
1
Ti s
+ Td s
)
1
(Tf s + 1)2
Derivative kick: A spike in the control signal due to an abrupt
(stepwise) change of the set-point signal.
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 25 / 95
Modified Derivative Action
Alternative modified ideal form:
Ci2a(s) = Kp
(
1 +
1
Ti s
+ Td s
)
1
Tf s + 1
˚Astr¨om and H¨agglund, 2004:
Ci2b(s) = Kp
(
1 +
1
Ti s
+ Td s
)
1
(Tf s + 1)2
Derivative kick: A spike in the control signal due to an abrupt
(stepwise) change of the set-point signal.
If the set-point is constant, the derivative action can be applied only
to the process variable:
u(t) = −Kd
dy(t)
dt
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 25 / 95
Derivative Action
80% of the employed PID controllers have the derivative part
switched-off (Ang et al., 2005).
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 26 / 95
Derivative Action
80% of the employed PID controllers have the derivative part
switched-off (Ang et al., 2005).
Derivative action is the most difficult to tune, why?
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 26 / 95
Derivative Action
80% of the employed PID controllers have the derivative part
switched-off (Ang et al., 2005).
Derivative action is the most difficult to tune, why?
Consider a first-order-plus-dead-time (FOPDT) plant:
P(s) =
K
Ts + 1
e−Ls
and a PD controller:
C(s) = Kp(1 + Td s)
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 26 / 95
Derivative Action
80% of the employed PID controllers have the derivative part
switched-off (Ang et al., 2005).
Derivative action is the most difficult to tune, why?
Consider a first-order-plus-dead-time (FOPDT) plant:
P(s) =
K
Ts + 1
e−Ls
and a PD controller:
C(s) = Kp(1 + Td s)
Open loop frequency response:
∣C(j𝜔)P(j𝜔)∣ = KKp
√
1 + T2
d 𝜔2
1 + T2𝜔2
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 26 / 95
Derivative Action
Open loop frequency response:
KKp
√
1 + T2
d 𝜔2
1 + T2𝜔2
≥ KKp min
(
1,
Td
T
)
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 27 / 95
Derivative Action
Open loop frequency response:
KKp
√
1 + T2
d 𝜔2
1 + T2𝜔2
≥ KKp min
(
1,
Td
T
)
Td ≥ T ⇒ min
(
1, Td
T
)
= 1
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 27 / 95
Derivative Action
Open loop frequency response:
KKp
√
1 + T2
d 𝜔2
1 + T2𝜔2
≥ KKp min
(
1,
Td
T
)
Td ≥ T ⇒ min
(
1, Td
T
)
= 1
If Td ≥ T and KKp > 1, then
∣C(j𝜔)P(j𝜔)∣ ≥ 1
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 27 / 95
Derivative Action
Open loop frequency response:
KKp
√
1 + T2
d 𝜔2
1 + T2𝜔2
≥ KKp min
(
1,
Td
T
)
Td ≥ T ⇒ min
(
1, Td
T
)
= 1
If Td ≥ T and KKp > 1, then
∣C(j𝜔)P(j𝜔)∣ ≥ 1
Td ≤ T ⇒ min
(
1, Td
T
)
= Td
T
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 27 / 95
Derivative Action
Open loop frequency response:
KKp
√
1 + T2
d 𝜔2
1 + T2𝜔2
≥ KKp min
(
1,
Td
T
)
Td ≥ T ⇒ min
(
1, Td
T
)
= 1
If Td ≥ T and KKp > 1, then
∣C(j𝜔)P(j𝜔)∣ ≥ 1
Td ≤ T ⇒ min
(
1, Td
T
)
= Td
T
If Td ≤ T and KKp
Td
T > 1, then
∣C(j𝜔)P(j𝜔)∣ ≥ 1
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 27 / 95
Frequency Response
The magnitude of the open-loop
transfer function is not less than
0 dB. As a consequence, since
the phase decreases when the
frequency increases because of
the time delay, the closed-loop
system will be unstable.
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 28 / 95
Derivative Action
Consider the following process:
P(s) =
2
s + 1
e−0.2s
controlled by a PID controller in series form with Kp = 1 and Ti = 1.
Behzad Samadi (Amirkabir University) Industrial Control 29 / 95
Derivative Action
Consider the following process:
P(s) =
2
s + 1
e−0.2s
controlled by a PID controller in series form with Kp = 1 and Ti = 1.
If Td = 0.01, GM=12.3dB, PM=68.2 deg.
Behzad Samadi (Amirkabir University) Industrial Control 29 / 95
Derivative Action
Consider the following process:
P(s) =
2
s + 1
e−0.2s
controlled by a PID controller in series form with Kp = 1 and Ti = 1.
If Td = 0.01, GM=12.3dB, PM=68.2 deg.
If Td = 0.05, GM=13.2dB, PM=72.7 deg.
Behzad Samadi (Amirkabir University) Industrial Control 29 / 95
Derivative Action
Consider the following process:
P(s) =
2
s + 1
e−0.2s
controlled by a PID controller in series form with Kp = 1 and Ti = 1.
If Td = 0.01, GM=12.3dB, PM=68.2 deg.
If Td = 0.05, GM=13.2dB, PM=72.7 deg.
If Td = 0.5, the system stability is lost!
Behzad Samadi (Amirkabir University) Industrial Control 29 / 95
Derivative Action
Consider the following process:
P(s) =
2
s + 1
e−0.2s
controlled by a PID controller in series form with Kp = 1 and Ti = 1.
If Td = 0.01, GM=12.3dB, PM=68.2 deg.
If Td = 0.05, GM=13.2dB, PM=72.7 deg.
If Td = 0.5, the system stability is lost!
Behzad Samadi (Amirkabir University) Industrial Control 29 / 95
Derivative Action
Consider the following process:
P(s) =
2
s + 1
e−0.2s
controlled by a PID controller in series form with Kp = 1 and Ti = 1.
If Td = 0.01, GM=12.3dB, PM=68.2 deg.
If Td = 0.05, GM=13.2dB, PM=72.7 deg.
If Td = 0.5, the system stability is lost!
In summary:
Sensitive to noise
Hard to tune (4 parameters)
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 29 / 95
Integral Windup
Behzad Samadi (Amirkabir University) Industrial Control 30 / 95
Integral Windup
Solid:
process output,
Dashed:
process input,
Dotted:
integral term
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 30 / 95
Conditional Integration
The integral term is limited to a predefined value.
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 31 / 95
Conditional Integration
The integral term is limited to a predefined value.
The integration is stopped when the error is greater than a predefined
threshold, namely, when the process variable value is far from the
setpoint value.
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 31 / 95
Conditional Integration
The integral term is limited to a predefined value.
The integration is stopped when the error is greater than a predefined
threshold, namely, when the process variable value is far from the
setpoint value.
The integration is stopped when the control variable saturates, i.e.,
when u
′
∕= u.
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 31 / 95
Conditional Integration
The integral term is limited to a predefined value.
The integration is stopped when the error is greater than a predefined
threshold, namely, when the process variable value is far from the
setpoint value.
The integration is stopped when the control variable saturates, i.e.,
when u
′
∕= u.
The integration is stopped when the control variable saturates and
the control error and the control variable have the same sign (i.e.,
when ue > 0).
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 31 / 95
Anti-windup for Automatic Reset Configuration
Automatic reset:
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 32 / 95
Anti-windup for Automatic Reset Configuration
Automatic reset:
Limiting the controller output:
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 32 / 95
Anti-windup for Automatic Reset Configuration
Automatic reset:
Limiting the controller output:
Limiting the integrator output:
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 32 / 95
Back-calculation
Integrator input:
ei =
Kp
Ti
e +
1
Tt
(u
′
− u)
Behzad Samadi (Amirkabir University) Industrial Control 33 / 95
Back-calculation
Integrator input:
ei =
Kp
Ti
e +
1
Tt
(u
′
− u)
Tuning rule for Tt (˚Astr¨om and H¨agglund 1995):
Tt =
√
Td Ti
Behzad Samadi (Amirkabir University) Industrial Control 33 / 95
Back-calculation
Integrator input:
ei =
Kp
Ti
e +
1
Tt
(u
′
− u)
Tuning rule for Tt (˚Astr¨om and H¨agglund 1995):
Tt =
√
Td Ti
Behzad Samadi (Amirkabir University) Industrial Control 33 / 95
Back-calculation
Integrator input:
ei =
Kp
Ti
e +
1
Tt
(u
′
− u)
Tuning rule for Tt (˚Astr¨om and H¨agglund 1995):
Tt =
√
Td Ti
Not useful for a PI controller
[Visioli, 2006]Behzad Samadi (Amirkabir University) Industrial Control 33 / 95
Back-calculation
Integrator input:
ei =
Kp
Ti
e +
1
Tt
(u
′
− u)
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 34 / 95
Back-calculation
Integrator input:
ei =
Kp
Ti
e +
1
Tt
(u
′
− u)
Bohn and Atherton, 1995 suggest Tt = Ti .
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 34 / 95
Back-calculation
Integrator input:
ei =
Kp
Ti
e +
1
Tt
(u
′
− u)
Bohn and Atherton, 1995 suggest Tt = Ti .
Conditioning technique (Hanus et al., 1987;Walgama et al., 1991):
This is a tracking rule (u tracks u
′
). In this framework:
Tt = Kp
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 34 / 95
PID with Tracking Input
SP: Setpoint, MV: Manipulated Variable, TR: Tracking Input
[Astrom and Hagglund, 1995]
Behzad Samadi (Amirkabir University) Industrial Control 35 / 95
Bumpless Transfer
Bumpless Transfer between Manual (M) and Automatic (A)
A is to track M in this case.
[Visioli, 2006]
Behzad Samadi (Amirkabir University) Industrial Control 36 / 95
Bumpless Transfer
Bumpless Transfer between Manual (M) and Automatic (A)
Behzad Samadi (Amirkabir University) Industrial Control 37 / 95
Bumpless Transfer
Bumpless Transfer between Manual (M) and Automatic (A)
Incremental manual input
[Astrom and Hagglund, 1995]
Behzad Samadi (Amirkabir University) Industrial Control 37 / 95
Bumpless Transfer
Manual Control Module:
[Astrom and Hagglund, 1995]
Behzad Samadi (Amirkabir University) Industrial Control 38 / 95
Bumpless Transfer
PID with Manual Switch:
[Astrom and Hagglund, 1995]
Behzad Samadi (Amirkabir University) Industrial Control 39 / 95
PID Controller Design
In process industries, more than 97% of the regulatory controllers are
of the PID type.
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 40 / 95
PID Controller Design
In process industries, more than 97% of the regulatory controllers are
of the PID type.
Most loops are actually under PI control (as a result of the large
number of flow loops).
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 40 / 95
PID Controller Design
In process industries, more than 97% of the regulatory controllers are
of the PID type.
Most loops are actually under PI control (as a result of the large
number of flow loops).
Pulp and paper industry over 2000 loops:
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 40 / 95
PID Controller Design
In process industries, more than 97% of the regulatory controllers are
of the PID type.
Most loops are actually under PI control (as a result of the large
number of flow loops).
Pulp and paper industry over 2000 loops:
Only 20% of loops worked well (i.e. less variability in the automatic
mode over the manual mode).
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 40 / 95
PID Controller Design
In process industries, more than 97% of the regulatory controllers are
of the PID type.
Most loops are actually under PI control (as a result of the large
number of flow loops).
Pulp and paper industry over 2000 loops:
Only 20% of loops worked well (i.e. less variability in the automatic
mode over the manual mode).
30% gave poor performance due to poor controller tuning.
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 40 / 95
PID Controller Design
In process industries, more than 97% of the regulatory controllers are
of the PID type.
Most loops are actually under PI control (as a result of the large
number of flow loops).
Pulp and paper industry over 2000 loops:
Only 20% of loops worked well (i.e. less variability in the automatic
mode over the manual mode).
30% gave poor performance due to poor controller tuning.
30% gave poor performance due to control valve problems (e.g. control
valve stick-slip, dead band, backlash).
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 40 / 95
PID Controller Design
In process industries, more than 97% of the regulatory controllers are
of the PID type.
Most loops are actually under PI control (as a result of the large
number of flow loops).
Pulp and paper industry over 2000 loops:
Only 20% of loops worked well (i.e. less variability in the automatic
mode over the manual mode).
30% gave poor performance due to poor controller tuning.
30% gave poor performance due to control valve problems (e.g. control
valve stick-slip, dead band, backlash).
20% gave poor performance due to process and/or control system
design problems.
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 40 / 95
PID Controller Design
Process industries:
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
PID Controller Design
Process industries:
30% of loops operated on manual mode.
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
PID Controller Design
Process industries:
30% of loops operated on manual mode.
20% of controllers used factory tuning.
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
PID Controller Design
Process industries:
30% of loops operated on manual mode.
20% of controllers used factory tuning.
30% gave poor performance due to sensor and control valve problems.
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
PID Controller Design
Process industries:
30% of loops operated on manual mode.
20% of controllers used factory tuning.
30% gave poor performance due to sensor and control valve problems.
Chemical process industry:
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
PID Controller Design
Process industries:
30% of loops operated on manual mode.
20% of controllers used factory tuning.
30% gave poor performance due to sensor and control valve problems.
Chemical process industry:
Half of the control valves needed to be fixed (results of the Fisher diagnostic
valve package).
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
PID Controller Design
Process industries:
30% of loops operated on manual mode.
20% of controllers used factory tuning.
30% gave poor performance due to sensor and control valve problems.
Chemical process industry:
Half of the control valves needed to be fixed (results of the Fisher diagnostic
valve package).
Most poor tuning was due to control valve problems.
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
PID Controller Design
Process industries:
30% of loops operated on manual mode.
20% of controllers used factory tuning.
30% gave poor performance due to sensor and control valve problems.
Chemical process industry:
Half of the control valves needed to be fixed (results of the Fisher diagnostic
valve package).
Most poor tuning was due to control valve problems.
Refining, chemicals, and pulp and paper industries over 26,000 controllers:
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
PID Controller Design
Process industries:
30% of loops operated on manual mode.
20% of controllers used factory tuning.
30% gave poor performance due to sensor and control valve problems.
Chemical process industry:
Half of the control valves needed to be fixed (results of the Fisher diagnostic
valve package).
Most poor tuning was due to control valve problems.
Refining, chemicals, and pulp and paper industries over 26,000 controllers:
Only 32% of loops were classified as excellent or acceptable.
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
PID Controller Design
Process industries:
30% of loops operated on manual mode.
20% of controllers used factory tuning.
30% gave poor performance due to sensor and control valve problems.
Chemical process industry:
Half of the control valves needed to be fixed (results of the Fisher diagnostic
valve package).
Most poor tuning was due to control valve problems.
Refining, chemicals, and pulp and paper industries over 26,000 controllers:
Only 32% of loops were classified as excellent or acceptable.
32% of controllers were classified as fair or poor, which indicates
unacceptably sluggish or oscillatory responses.
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
PID Controller Design
Process industries:
30% of loops operated on manual mode.
20% of controllers used factory tuning.
30% gave poor performance due to sensor and control valve problems.
Chemical process industry:
Half of the control valves needed to be fixed (results of the Fisher diagnostic
valve package).
Most poor tuning was due to control valve problems.
Refining, chemicals, and pulp and paper industries over 26,000 controllers:
Only 32% of loops were classified as excellent or acceptable.
32% of controllers were classified as fair or poor, which indicates
unacceptably sluggish or oscillatory responses.
36% of controllers were on open- loop, which implies that the controllers
were either in manual or virtually saturated.
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
PID Controller Design
Process industries:
30% of loops operated on manual mode.
20% of controllers used factory tuning.
30% gave poor performance due to sensor and control valve problems.
Chemical process industry:
Half of the control valves needed to be fixed (results of the Fisher diagnostic
valve package).
Most poor tuning was due to control valve problems.
Refining, chemicals, and pulp and paper industries over 26,000 controllers:
Only 32% of loops were classified as excellent or acceptable.
32% of controllers were classified as fair or poor, which indicates
unacceptably sluggish or oscillatory responses.
36% of controllers were on open- loop, which implies that the controllers
were either in manual or virtually saturated.
PID algorithms are used in vast majority of applications (97%). For the rare
cases of complex dynamics or significant dead time, other algorithms are
used.
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
PID Controller Design
Ziegler-Nichols PID Tuning Method:
Ziegler-Nichols closed-loop tuning method
Ziegler-Nichols open-loop tuning method
Ziegler, Nichols, “Optimum settings for automatic controllers”, Trans.
ASME, 64, pp. 759-768, 1942
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 42 / 95
PID Controller Design
Ziegler-Nichols closed-loop tuning method:
1 Remove integral and derivative action.
Behzad Samadi (Amirkabir University) Industrial Control 43 / 95
PID Controller Design
Ziegler-Nichols closed-loop tuning method:
1 Remove integral and derivative action.
2 Create a small disturbance in the loop by changing the set point.
Adjust the proportional, increasing and/or decreasing, the gain until
the oscillations have constant amplitude.
Behzad Samadi (Amirkabir University) Industrial Control 43 / 95
PID Controller Design
Ziegler-Nichols closed-loop tuning method:
1 Remove integral and derivative action.
2 Create a small disturbance in the loop by changing the set point.
Adjust the proportional, increasing and/or decreasing, the gain until
the oscillations have constant amplitude.
3 Record the gain value (Ku) and period of oscillation (Pu).
Behzad Samadi (Amirkabir University) Industrial Control 43 / 95
PID Controller Design
Ziegler-Nichols closed-loop tuning method:
1 Remove integral and derivative action.
2 Create a small disturbance in the loop by changing the set point.
Adjust the proportional, increasing and/or decreasing, the gain until
the oscillations have constant amplitude.
3 Record the gain value (Ku) and period of oscillation (Pu).
Behzad Samadi (Amirkabir University) Industrial Control 43 / 95
PID Controller Design
Ziegler-Nichols closed-loop tuning method:
1 Remove integral and derivative action.
2 Create a small disturbance in the loop by changing the set point.
Adjust the proportional, increasing and/or decreasing, the gain until
the oscillations have constant amplitude.
3 Record the gain value (Ku) and period of oscillation (Pu).
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 43 / 95
PID Controller Design
Ziegler-Nichols closed-loop tuning method:
[Love, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 44 / 95
PID Controller Design
Ziegler-Nichols closed-loop tuning method (ultimate cycle method):
C(s) = Kp(1 +
1
Ti s
+ Td s)
Kp Ti Td
P Controller Ku/2 - -
PI Controller Ku/2.2 Pu/1.2 -
PID Controller Ku/1.7 Pu/2 Pu/8
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 45 / 95
PID Controller Design
Ziegler-Nichols closed-loop tuning method:
Advantages:
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 46 / 95
PID Controller Design
Ziegler-Nichols closed-loop tuning method:
Advantages:
Easy experiment; only need to change the P controller
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 46 / 95
PID Controller Design
Ziegler-Nichols closed-loop tuning method:
Advantages:
Easy experiment; only need to change the P controller
Includes dynamics of whole process, which gives a more accurate
picture of how the system is behaving
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 46 / 95
PID Controller Design
Ziegler-Nichols closed-loop tuning method:
Advantages:
Easy experiment; only need to change the P controller
Includes dynamics of whole process, which gives a more accurate
picture of how the system is behaving
Disadvantages:
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 46 / 95
PID Controller Design
Ziegler-Nichols closed-loop tuning method:
Advantages:
Easy experiment; only need to change the P controller
Includes dynamics of whole process, which gives a more accurate
picture of how the system is behaving
Disadvantages:
Experiment can be time consuming
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 46 / 95
PID Controller Design
Ziegler-Nichols closed-loop tuning method:
Advantages:
Easy experiment; only need to change the P controller
Includes dynamics of whole process, which gives a more accurate
picture of how the system is behaving
Disadvantages:
Experiment can be time consuming
Can venture into unstable regions while testing the P controller, which
could cause the system to become out of control
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 46 / 95
PID Controller Design
Ziegler-Nichols closed-loop tuning method:
Advantages:
Easy experiment; only need to change the P controller
Includes dynamics of whole process, which gives a more accurate
picture of how the system is behaving
Disadvantages:
Experiment can be time consuming
Can venture into unstable regions while testing the P controller, which
could cause the system to become out of control
It does not hold for I, D and PD controllers.
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 46 / 95
PID Controller Design
Process Reaction Curve:
P: the size of the step disturbance in the setpoint
L: the time taken from the moment the disturbance was introduced
to the first sign of change in the output signal
ΔCp: the change in output signal in response to the initial step
disturbance
T: the time taken for this change to occur
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 47 / 95
PID Controller Design
Process Reaction Curve:
N =
ΔCp
T : reaction rate
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 48 / 95
PID Controller Design
Ziegler-Nichols open-loop tuning method (process reaction method):
C(s) = Kp(1 +
1
Ti s
+ Td s)
Kp Ti Td
P Controller K - -
PI Controller 0.9K L/0.3 -
PID Controller 1.2K 2L 0.5L
K =
P
NL
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 49 / 95
PID Controller Design
Ziegler-Nichols open-loop tuning method:
Advantages:
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 50 / 95
PID Controller Design
Ziegler-Nichols open-loop tuning method:
Advantages:
Quick and easier to use than other methods
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 50 / 95
PID Controller Design
Ziegler-Nichols open-loop tuning method:
Advantages:
Quick and easier to use than other methods
It is a robust and popular method
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 50 / 95
PID Controller Design
Ziegler-Nichols open-loop tuning method:
Advantages:
Quick and easier to use than other methods
It is a robust and popular method
Of these two techniques, the Process Reaction Method is the easiest
and least disruptive to implement
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 50 / 95
PID Controller Design
Ziegler-Nichols open-loop tuning method:
Advantages:
Quick and easier to use than other methods
It is a robust and popular method
Of these two techniques, the Process Reaction Method is the easiest
and least disruptive to implement
Disadvantages:
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 50 / 95
PID Controller Design
Ziegler-Nichols open-loop tuning method:
Advantages:
Quick and easier to use than other methods
It is a robust and popular method
Of these two techniques, the Process Reaction Method is the easiest
and least disruptive to implement
Disadvantages:
It depends upon purely proportional measurement to estimate I and D
controllers.
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 50 / 95
PID Controller Design
Ziegler-Nichols open-loop tuning method:
Advantages:
Quick and easier to use than other methods
It is a robust and popular method
Of these two techniques, the Process Reaction Method is the easiest
and least disruptive to implement
Disadvantages:
It depends upon purely proportional measurement to estimate I and D
controllers.
Approximations for the Kc , Ti , and Td values might not be entirely
accurate for different systems.
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 50 / 95
PID Controller Design
Ziegler-Nichols open-loop tuning method:
Advantages:
Quick and easier to use than other methods
It is a robust and popular method
Of these two techniques, the Process Reaction Method is the easiest
and least disruptive to implement
Disadvantages:
It depends upon purely proportional measurement to estimate I and D
controllers.
Approximations for the Kc , Ti , and Td values might not be entirely
accurate for different systems.
It does not hold for I, D and PD controllers.
[Woolf, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 50 / 95
PID Controller Design
Summary:
Ziegler-Nichols closed-loop tuning method: Gain margin of 2
Ziegler-Nichols open-loop tuning method: Decay ratio of 0.25
Behzad Samadi (Amirkabir University) Industrial Control 51 / 95
PID Controller Design
Ziegler-Nichols closed-loop tuning methods:
G(s) =
Ke−Ds
𝜏s + 1
[Yu, 2007]
Behzad Samadi (Amirkabir University) Industrial Control 52 / 95
PID Controller Design
Ziegler-Nichols closed-loop tuning methods:
G(s) =
Ke−td s
𝜏s + 1
Quarter decay ration for 0 < td
𝜏 < 1 [O’Dwyer, 2002]
[Chau, 2002]
Behzad Samadi (Amirkabir University) Industrial Control 53 / 95
PID Controller Design
Quantities to characterize the error:
Maximum error: max e(t)
[Astrom and Hagglund, 1995]
Behzad Samadi (Amirkabir University) Industrial Control 54 / 95
PID Controller Design
Quantities to characterize the error:
Maximum error: max e(t)
Integrated Absolute Error: IAE =
∫ ∞
0 ∣e(t)∣dt
[Astrom and Hagglund, 1995]
Behzad Samadi (Amirkabir University) Industrial Control 54 / 95
PID Controller Design
Quantities to characterize the error:
Maximum error: max e(t)
Integrated Absolute Error: IAE =
∫ ∞
0 ∣e(t)∣dt
Integrated Error for non-oscillatory processes: IE =
∫ ∞
0 e(t)dt
[Astrom and Hagglund, 1995]
Behzad Samadi (Amirkabir University) Industrial Control 54 / 95
PID Controller Design
Quantities to characterize the error:
Maximum error: max e(t)
Integrated Absolute Error: IAE =
∫ ∞
0 ∣e(t)∣dt
Integrated Error for non-oscillatory processes: IE =
∫ ∞
0 e(t)dt
Integrated Squared Error: ISE =
∫ ∞
0 e2(t)dt
[Astrom and Hagglund, 1995]
Behzad Samadi (Amirkabir University) Industrial Control 54 / 95
PID Controller Design
Quantities to characterize the error:
Maximum error: max e(t)
Integrated Absolute Error: IAE =
∫ ∞
0 ∣e(t)∣dt
Integrated Error for non-oscillatory processes: IE =
∫ ∞
0 e(t)dt
Integrated Squared Error: ISE =
∫ ∞
0 e2(t)dt
Integrated Time Absolute Error: ITAE =
∫ ∞
0 t∣e(t)∣dt
[Astrom and Hagglund, 1995]
Behzad Samadi (Amirkabir University) Industrial Control 54 / 95
PID Controller Design
Quantities to characterize the error:
Maximum error: max e(t)
Integrated Absolute Error: IAE =
∫ ∞
0 ∣e(t)∣dt
Integrated Error for non-oscillatory processes: IE =
∫ ∞
0 e(t)dt
Integrated Squared Error: ISE =
∫ ∞
0 e2(t)dt
Integrated Time Absolute Error: ITAE =
∫ ∞
0 t∣e(t)∣dt
Integrated Time Error: ITE =
∫ ∞
0 te(t)dt
[Astrom and Hagglund, 1995]
Behzad Samadi (Amirkabir University) Industrial Control 54 / 95
PID Controller Design
Quantities to characterize the error:
Maximum error: max e(t)
Integrated Absolute Error: IAE =
∫ ∞
0 ∣e(t)∣dt
Integrated Error for non-oscillatory processes: IE =
∫ ∞
0 e(t)dt
Integrated Squared Error: ISE =
∫ ∞
0 e2(t)dt
Integrated Time Absolute Error: ITAE =
∫ ∞
0 t∣e(t)∣dt
Integrated Time Error: ITE =
∫ ∞
0 te(t)dt
Integrated Time Squared Error: ITSE =
∫ ∞
0 te2(t)dt
[Astrom and Hagglund, 1995]
Behzad Samadi (Amirkabir University) Industrial Control 54 / 95
PID Controller Design
Quantities to characterize the error:
Maximum error: max e(t)
Integrated Absolute Error: IAE =
∫ ∞
0 ∣e(t)∣dt
Integrated Error for non-oscillatory processes: IE =
∫ ∞
0 e(t)dt
Integrated Squared Error: ISE =
∫ ∞
0 e2(t)dt
Integrated Time Absolute Error: ITAE =
∫ ∞
0 t∣e(t)∣dt
Integrated Time Error: ITE =
∫ ∞
0 te(t)dt
Integrated Time Squared Error: ITSE =
∫ ∞
0 te2(t)dt
Integrated Squared Time Error: ISTE =
∫ ∞
0 t2e2(t)dt
[Astrom and Hagglund, 1995]
Behzad Samadi (Amirkabir University) Industrial Control 54 / 95
PID Controller Design
ITAE optimization:
G(s) =
Ke−td s
𝜏s + 1
[Chau, 2002]
Behzad Samadi (Amirkabir University) Industrial Control 55 / 95
PID Controller Design
Ciancone and Marlin Tuning:
G(s) =
Ke−td s
𝜏s + 1
Fractional dead time: Tf = td
td +𝜏
Using Tf , compute 𝜇CM and 𝜏CM:
Tf 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
𝜇CM 1.1 1.1 1.8 1.1 1.0 0.8 0.59 0.42 0.32
𝜏CM 0.23 0.23 0.23 0.72 0.72 0.70 0.67 0.60 0.53
Compute the controller gains:
Kp =
𝜇CM
K
, Ti = 𝜏CM(td + 𝜏)
Minimizing IAE or ISE [Chau, 2002]
Behzad Samadi (Amirkabir University) Industrial Control 56 / 95
PID Controller Design
Ciancone and Marlin PI Tuning:
[Chau, 2002]
Behzad Samadi (Amirkabir University) Industrial Control 57 / 95
PID Controller Design
Ciancone and Marlin PID Tuning:
[Chau, 2002]
Behzad Samadi (Amirkabir University) Industrial Control 58 / 95
PID Controller Design
Direct Synthesis:
We have:
C
R
=
GcGp
1 + GcGp
Therefore:
Gc =
1
Gp
C/R
1 − C/R
[Chau, 2002]
Behzad Samadi (Amirkabir University) Industrial Control 59 / 95
PID Controller Design
Direct Synthesis:
C
R
=
1
𝜏cs + 1
⇒ Gc =
1
Gp
(
1
𝜏cs
)
Behzad Samadi (Amirkabir University) Industrial Control 60 / 95
PID Controller Design
Direct Synthesis:
C
R
=
1
𝜏cs + 1
⇒ Gc =
1
Gp
(
1
𝜏cs
)
Example:
Gp =
Kp
𝜏ps + 1
⇒ Gc =
𝜏p
Kp𝜏c
(
1 +
1
𝜏ps
)
[Chau, 2002]
Behzad Samadi (Amirkabir University) Industrial Control 60 / 95
PID Controller Design
Direct Synthesis:
For delayed systems:
C
R
=
e−𝜃s
𝜏cs + 1
⇒ Gc =
1
Gp
(
e−𝜃s
(𝜏cs + 1) − e−𝜃s
)
Behzad Samadi (Amirkabir University) Industrial Control 61 / 95
PID Controller Design
Direct Synthesis:
For delayed systems:
C
R
=
e−𝜃s
𝜏cs + 1
⇒ Gc =
1
Gp
(
e−𝜃s
(𝜏cs + 1) − e−𝜃s
)
Considering e−𝜃s ≈ 1 − 𝜃s:
Gc ≈
1
Gp
(
e−𝜃s
(𝜏c + 𝜃)s
)
Behzad Samadi (Amirkabir University) Industrial Control 61 / 95
PID Controller Design
Direct Synthesis:
For delayed systems:
C
R
=
e−𝜃s
𝜏cs + 1
⇒ Gc =
1
Gp
(
e−𝜃s
(𝜏cs + 1) − e−𝜃s
)
Considering e−𝜃s ≈ 1 − 𝜃s:
Gc ≈
1
Gp
(
e−𝜃s
(𝜏c + 𝜃)s
)
Behzad Samadi (Amirkabir University) Industrial Control 61 / 95
PID Controller Design
Direct Synthesis:
For delayed systems:
C
R
=
e−𝜃s
𝜏cs + 1
⇒ Gc =
1
Gp
(
e−𝜃s
(𝜏cs + 1) − e−𝜃s
)
Considering e−𝜃s ≈ 1 − 𝜃s:
Gc ≈
1
Gp
(
e−𝜃s
(𝜏c + 𝜃)s
)
Example:
Gp =
Kpe−td s
𝜏ps + 1
⇒ Gc =
𝜏p
Kp(𝜏c + 𝜃)
(
1 +
1
𝜏ps
)
for 𝜃 = td
[Chau, 2002]
Behzad Samadi (Amirkabir University) Industrial Control 61 / 95
PID Controller Design
Direct Synthesis:
Second order underdamped desired response:
C
R
=
1
𝜏2s2 + 2𝜁𝜏s + 1
⇒ Gc =
1
Gp
(
1
𝜏2s2 + 2𝜁𝜏s
)
Behzad Samadi (Amirkabir University) Industrial Control 62 / 95
PID Controller Design
Direct Synthesis:
Second order underdamped desired response:
C
R
=
1
𝜏2s2 + 2𝜁𝜏s + 1
⇒ Gc =
1
Gp
(
1
𝜏2s2 + 2𝜁𝜏s
)
Behzad Samadi (Amirkabir University) Industrial Control 62 / 95
PID Controller Design
Direct Synthesis:
Second order underdamped desired response:
C
R
=
1
𝜏2s2 + 2𝜁𝜏s + 1
⇒ Gc =
1
Gp
(
1
𝜏2s2 + 2𝜁𝜏s
)
Example:
Gp =
Kp
(𝜏1s + 1)(𝜏2s + 1)
⇒ Gc =
(𝜏1s + 1)(𝜏2s + 1)
Kp𝜏s(𝜏s + 2𝜁)
Behzad Samadi (Amirkabir University) Industrial Control 62 / 95
PID Controller Design
Direct Synthesis:
Second order underdamped desired response:
C
R
=
1
𝜏2s2 + 2𝜁𝜏s + 1
⇒ Gc =
1
Gp
(
1
𝜏2s2 + 2𝜁𝜏s
)
Example:
Gp =
Kp
(𝜏1s + 1)(𝜏2s + 1)
⇒ Gc =
(𝜏1s + 1)(𝜏2s + 1)
Kp𝜏s(𝜏s + 2𝜁)
Assuming 𝜏2 > 𝜏1 and 𝜏 = 2𝜁𝜏2
Gc =
𝜏1
4Kp𝜁2𝜏2
(
1 +
1
𝜏1s
)
[Chau, 2002]
Behzad Samadi (Amirkabir University) Industrial Control 62 / 95
PID Controller Design
Internal Model Control: Assume that we have an approximate model ˜Gp of
the process Gp
Open loop:
Gc = ˜G−1
p
Behzad Samadi (Amirkabir University) Industrial Control 63 / 95
PID Controller Design
Internal Model Control: Assume that we have an approximate model ˜Gp of
the process Gp
Open loop:
Gc = ˜G−1
p
Closed loop:
Behzad Samadi (Amirkabir University) Industrial Control 63 / 95
PID Controller Design
Internal Model Control:
P = G★
c (R − C + ˜C)
= G★
c (R − C + ˜GpP)
Behzad Samadi (Amirkabir University) Industrial Control 64 / 95
PID Controller Design
Internal Model Control:
P = G★
c (R − C + ˜C)
= G★
c (R − C + ˜GpP)
Therefore:
P =
G★
c
1 − G★
c
˜Gp
(R−C)
Behzad Samadi (Amirkabir University) Industrial Control 64 / 95
PID Controller Design
Internal Model Control:
P = G★
c (R − C + ˜C)
= G★
c (R − C + ˜GpP)
Therefore:
P =
G★
c
1 − G★
c
˜Gp
(R−C)
P = Gc(R − C)
Therefore:
Gc = G★
c
1−G★
c
˜Gp
[Chau, 2002]Behzad Samadi (Amirkabir University) Industrial Control 64 / 95
PID Controller Design
Internal Model Control:
Closed loop transfer function:
C =
[
(1 − G★
c
˜Gp)GL
1 + G★
c (Gp − ˜Gp)
]
L +
[
GpG★
c
1 + G★
c (Gp − ˜Gp)
]
R
[Chau, 2002]
Behzad Samadi (Amirkabir University) Industrial Control 65 / 95
PID Controller Design
Internal Model Control:
Closed loop transfer function:
C =
[
(1 − G★
c
˜Gp)GL
1 + G★
c (Gp − ˜Gp)
]
L +
[
GpG★
c
1 + G★
c (Gp − ˜Gp)
]
R
How to choose G★
c :
˜Gp = ˜Gp+
˜Gp−
˜Gp+ contains all positive zeros if any.
[Chau, 2002]
Behzad Samadi (Amirkabir University) Industrial Control 65 / 95
PID Controller Design
Internal Model Control:
Closed loop transfer function:
C =
[
(1 − G★
c
˜Gp)GL
1 + G★
c (Gp − ˜Gp)
]
L +
[
GpG★
c
1 + G★
c (Gp − ˜Gp)
]
R
How to choose G★
c :
˜Gp = ˜Gp+
˜Gp−
˜Gp+ contains all positive zeros if any.
The design is based on ˜Gp− only:
G★
c =
1
˜Gp−
[
1
𝜏cs + 1
]r
r = 1, 2
[Chau, 2002]
Behzad Samadi (Amirkabir University) Industrial Control 65 / 95
PID Controller Design
Pad´e Approximation of Delays:
e−td s ≈ Nd (s)
Dd (s)
http://mathworld.wolfram.com/PadeApproximant.html
Behzad Samadi (Amirkabir University) Industrial Control 66 / 95
PID Controller Design
Pad´e Approximation of Delays:
e−td s ≈ Nd (s)
Dd (s)
Gd1/0(s) = 1 − td s
http://mathworld.wolfram.com/PadeApproximant.html
Behzad Samadi (Amirkabir University) Industrial Control 66 / 95
PID Controller Design
Pad´e Approximation of Delays:
e−td s ≈ Nd (s)
Dd (s)
Gd1/0(s) = 1 − td s
Gd0/1(s) = 1
1+td s
http://mathworld.wolfram.com/PadeApproximant.html
Behzad Samadi (Amirkabir University) Industrial Control 66 / 95
PID Controller Design
Pad´e Approximation of Delays:
e−td s ≈ Nd (s)
Dd (s)
Gd1/0(s) = 1 − td s
Gd0/1(s) = 1
1+td s
Gd1/1(s) =
−
td
2
s+1
td
2
s+1
http://mathworld.wolfram.com/PadeApproximant.html
Behzad Samadi (Amirkabir University) Industrial Control 66 / 95
PID Controller Design
Pad´e Approximation of Delays:
e−td s ≈ Nd (s)
Dd (s)
Gd1/0(s) = 1 − td s
Gd0/1(s) = 1
1+td s
Gd1/1(s) =
−
td
2
s+1
td
2
s+1
Gd2/2(s) =
t2
d
12
s2−
td
2
s+1
t2
d
12
s2+
td
2
s+1
http://mathworld.wolfram.com/PadeApproximant.html
Behzad Samadi (Amirkabir University) Industrial Control 66 / 95
PID Controller Design
Internal Model Control:
Example: ˜Gp =
Kpe−td s
𝜏ps+1
˜Gp ≈
Kp
(𝜏ps + 1)(td
2 s + 1)
(
−
td
2
s + 1
)
Behzad Samadi (Amirkabir University) Industrial Control 67 / 95
PID Controller Design
Internal Model Control:
Example: ˜Gp =
Kpe−td s
𝜏ps+1
˜Gp ≈
Kp
(𝜏ps + 1)(td
2 s + 1)
(
−
td
2
s + 1
)
˜Gp− =
Kp
(𝜏ps + 1)(td
2 s + 1)
˜Gp+ = −
td
2
s + 1
[Chau, 2002]
Behzad Samadi (Amirkabir University) Industrial Control 67 / 95
PID Controller Design
Internal Model Control:
Example:
G★
c = ˜G−1
p−
1
𝜏cs + 1
=
(𝜏ps + 1)(td
2 s + 1)
Kp
1
𝜏cs + 1
Gc =
G★
c
1 − G★
c
˜Gp
= Kp(1 +
1
Ti s
+ Td s)
Behzad Samadi (Amirkabir University) Industrial Control 68 / 95
PID Controller Design
Internal Model Control:
Example:
G★
c = ˜G−1
p−
1
𝜏cs + 1
=
(𝜏ps + 1)(td
2 s + 1)
Kp
1
𝜏cs + 1
Gc =
G★
c
1 − G★
c
˜Gp
= Kp(1 +
1
Ti s
+ Td s)
where:
Kc =
1
Kp
2
𝜏p
td
+ 1
2𝜏c
td
+ 1
; Ti = 𝜏p +
td
2
; Td =
𝜏p
2
𝜏p
td
+ 1
[Chau, 2002]
Behzad Samadi (Amirkabir University) Industrial Control 68 / 95
PID Controller Design
[Chau, 2002]
Behzad Samadi (Amirkabir University) Industrial Control 69 / 95
PID Controller Design
Skogestad PID Tuning Method:
S. Skogestad, “Probably the best simple PID tuning rules in the
world” Presented at AIChE Annual meeting, Reno, NV, USA, 04-09
Nov. 2001, Paper no. 276h
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 70 / 95
PID Controller Design
Skogestad PID Tuning Method:
g(s) = k
e−𝜃s
(𝜏1s + 1)(𝜏2s + 1)
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 71 / 95
PID Controller Design
Skogestad Internal Model Control (SIMC):
(
y
ys
)
desired
=
1
𝜏cs + 1
e−𝜃t
Behzad Samadi (Amirkabir University) Industrial Control 72 / 95
PID Controller Design
Skogestad Internal Model Control (SIMC):
(
y
ys
)
desired
=
1
𝜏cs + 1
e−𝜃t
c(s) =
(𝜏1s + 1)(𝜏2s + 1)
k
1
(𝜏c + 𝜃)s
Behzad Samadi (Amirkabir University) Industrial Control 72 / 95
PID Controller Design
Skogestad Internal Model Control (SIMC):
(
y
ys
)
desired
=
1
𝜏cs + 1
e−𝜃t
c(s) =
(𝜏1s + 1)(𝜏2s + 1)
k
1
(𝜏c + 𝜃)s
c(s) = Kc(1 +
1
𝜏I s
)(𝜏Ds + 1)
Behzad Samadi (Amirkabir University) Industrial Control 72 / 95
PID Controller Design
Skogestad Internal Model Control (SIMC):
(
y
ys
)
desired
=
1
𝜏cs + 1
e−𝜃t
c(s) =
(𝜏1s + 1)(𝜏2s + 1)
k
1
(𝜏c + 𝜃)s
c(s) = Kc(1 +
1
𝜏I s
)(𝜏Ds + 1)
Tuning Rule
Kc =
1
k
𝜏1
𝜏c + 𝜃
, 𝜏I = 𝜏1. 𝜏D = 𝜏2
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 72 / 95
PID Controller Design
Skogestad Internal Model Control (SIMC):
Tuning Rule
Kc =
1
k
𝜏1
𝜏c + 𝜃
, 𝜏I = 𝜏1, 𝜏D = 𝜏2
Effective cancellation of the first order dynamics by 𝜏I = 𝜏1
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 73 / 95
PID Controller Design
Skogestad Internal Model Control (SIMC):
Tuning Rule
Kc =
1
k
𝜏1
𝜏c + 𝜃
, 𝜏I = 𝜏1, 𝜏D = 𝜏2
Effective cancellation of the first order dynamics by 𝜏I = 𝜏1
For processes with large 𝜏1, this choice results in a long settling time
for disturbance response.
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 73 / 95
PID Controller Design
Skogestad Internal Model Control (SIMC):
Tuning Rule
Kc =
1
k
𝜏1
𝜏c + 𝜃
, 𝜏I = 𝜏1, 𝜏D = 𝜏2
Effective cancellation of the first order dynamics by 𝜏I = 𝜏1
For processes with large 𝜏1, this choice results in a long settling time
for disturbance response.
Consider: g(s) = k e−𝜃s
𝜏1s+1 ≈ k
𝜏1s for large 𝜏1. With a PI controller
c(s) = Kc(1 + 1
𝜏I s ), the poles of the closed loop system can be
obtained from the following equation:
𝜏I
k′
Kc
s2
+ 𝜏I s + 1 = 0
with k
′
= k
𝜏1
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 73 / 95
PID Controller Design
Skogestad Internal Model Control (SIMC):
Comparing to s2 + 2𝜁𝜔0s + 𝜔2:
𝜔0 =
√
k′
Kc
𝜏I
, 𝜁 =
1
2
√
k′
Kc𝜏I
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 74 / 95
PID Controller Design
Skogestad Internal Model Control (SIMC):
Comparing to s2 + 2𝜁𝜔0s + 𝜔2:
𝜔0 =
√
k′
Kc
𝜏I
, 𝜁 =
1
2
√
k′
Kc𝜏I
To avoid slow oscillations, consider: 𝜁 ≥ 1
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 74 / 95
PID Controller Design
Skogestad Internal Model Control (SIMC):
Comparing to s2 + 2𝜁𝜔0s + 𝜔2:
𝜔0 =
√
k′
Kc
𝜏I
, 𝜁 =
1
2
√
k′
Kc𝜏I
To avoid slow oscillations, consider: 𝜁 ≥ 1
𝜏I ≥
4
k′
Kc
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 74 / 95
PID Controller Design
Skogestad Internal Model Control (SIMC):
Disturbance rejection: Assuming input disturbance (gd (s) = g(s))
∣y(j𝜔)∣ =
∣g(j𝜔)∣
∣1 + g(j𝜔)c(j𝜔)∣
d ≤ ymax
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 75 / 95
PID Controller Design
Skogestad Internal Model Control (SIMC):
Disturbance rejection: Assuming input disturbance (gd (s) = g(s))
∣y(j𝜔)∣ =
∣g(j𝜔)∣
∣1 + g(j𝜔)c(j𝜔)∣
d ≤ ymax
Assuming ∣gc∣ >> 1 at low frequencies:
∣c(j𝜔)∣ >
d
ymax
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 75 / 95
PID Controller Design
Skogestad Internal Model Control (SIMC):
Disturbance rejection: Assuming input disturbance (gd (s) = g(s))
∣y(j𝜔)∣ =
∣g(j𝜔)∣
∣1 + g(j𝜔)c(j𝜔)∣
d ≤ ymax
Assuming ∣gc∣ >> 1 at low frequencies:
∣c(j𝜔)∣ >
d
ymax
For P, PI and PID: c(j𝜔) ≥ Kc
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 75 / 95
PID Controller Design
Skogestad Internal Model Control (SIMC):
Disturbance rejection: Assuming input disturbance (gd (s) = g(s))
∣y(j𝜔)∣ =
∣g(j𝜔)∣
∣1 + g(j𝜔)c(j𝜔)∣
d ≤ ymax
Assuming ∣gc∣ >> 1 at low frequencies:
∣c(j𝜔)∣ >
d
ymax
For P, PI and PID: c(j𝜔) ≥ Kc
Kc ≥
d
ymax
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 75 / 95
PID Controller Design
Skogestad Internal Model Control (SIMC):
Skogestad Internal Model Control (SIMC)
Kc =
1
k
𝜏1
𝜏c + 𝜃
=
1
k′
1
𝜏c + 𝜃
𝜏I = min{𝜏1,
4
k′
Kc
} = min{𝜏1, 4(𝜏c + 𝜃)}
𝜏D = 𝜏2
Tuning for fast response with good robustness
𝜏c = 𝜃
Tuning for slow response with acceptable disturbance rejection
Kc ≥
d
ymax
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 76 / 95
PID Controller Design
Rules of thumb:
[McMillan, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 77 / 95
Digital Control
Ts: sampling time
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 78 / 95
Digital Control
Ts: sampling time
Analog to Digital (A-D) conversion:
y(tk) = y(kTs)
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 78 / 95
Digital Control
Ts: sampling time
Analog to Digital (A-D) conversion:
y(tk) = y(kTs)
Digital to Analog (D-A) conversion:
u(t) = u(tk) for kTs ≤ t < (k + 1)Ts
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 78 / 95
Digital Control
Difference equation:
x((k + 1)Ts) = ax(kTs) + bu(kTs)
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 79 / 95
Digital Control
Difference equation:
x((k + 1)Ts) = ax(kTs) + bu(kTs)
Discrete time:
x[k + 1] = ax[k] + bu[k]
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 79 / 95
Digital Control
Difference equation:
x((k + 1)Ts) = ax(kTs) + bu(kTs)
Discrete time:
x[k + 1] = ax[k] + bu[k]
Z-transform:
zX(z) = aX(z) + bU(z) ⇒
X(z)
U(z)
=
b
z − a
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 79 / 95
Digital Control
Approximating Continuous-Time Controllers:
Euler’s method (forward difference):
z = eTs s
≈ 1 + Tss ⇒ s ≈
z − 1
Ts
˙x(t) ≈
x(t + Ts) − x(t)
Ts
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 80 / 95
Digital Control
Approximating Continuous-Time Controllers:
Euler’s method (forward difference):
z = eTs s
≈ 1 + Tss ⇒ s ≈
z − 1
Ts
˙x(t) ≈
x(t + Ts) − x(t)
Ts
Backward difference:
z = eTs s
≈
1
1 − Tss
⇒ s ≈
1 − z−1
Ts
˙x(t) ≈
x(t) − x(t − Ts)
Ts
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 80 / 95
Digital Control
Approximating Continuous-Time Controllers:
Tustin’s approximation:
z = eTs s
≈
1 + sTs/2
1 − sTs/2
⇒ s ≈
2
Ts
z − 1
z + 1
It is also called trapezoidal method or bilinear transformation.
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 81 / 95
Digital Control
Approximating Continuous-Time Controllers:
Stability: Images of the left side of the s-plane
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 82 / 95
Digital Control
Approximating Continuous-Time Controllers:
Re(s) < 0
Forward
−−−−−−→
Difference
Re(z) < 1
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 83 / 95
Digital Control
Approximating Continuous-Time Controllers:
Re(s) < 0
Forward
−−−−−−→
Difference
Re(z) < 1
Stable system in s domain
Forward
−−−−−−→
Difference
Stable or unstable system in z
domain
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 83 / 95
Digital Control
Approximating Continuous-Time Controllers:
Re(s) < 0
Forward
−−−−−−→
Difference
Re(z) < 1
Stable system in s domain
Forward
−−−−−−→
Difference
Stable or unstable system in z
domain
Re(s) < 0
Backward
−−−−−−→
Difference
(Re(z) − 1
2)2 + Im(z)2 < 1
4
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 83 / 95
Digital Control
Approximating Continuous-Time Controllers:
Re(s) < 0
Forward
−−−−−−→
Difference
Re(z) < 1
Stable system in s domain
Forward
−−−−−−→
Difference
Stable or unstable system in z
domain
Re(s) < 0
Backward
−−−−−−→
Difference
(Re(z) − 1
2)2 + Im(z)2 < 1
4
Stable or unstable system in s domain
Backward
−−−−−−→
Difference
Stable system in z
domain
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 83 / 95
Digital Control
Approximating Continuous-Time Controllers:
Re(s) < 0
Forward
−−−−−−→
Difference
Re(z) < 1
Stable system in s domain
Forward
−−−−−−→
Difference
Stable or unstable system in z
domain
Re(s) < 0
Backward
−−−−−−→
Difference
(Re(z) − 1
2)2 + Im(z)2 < 1
4
Stable or unstable system in s domain
Backward
−−−−−−→
Difference
Stable system in z
domain
Re(s) < 0
Tustin
−−−−−−−−→
Approximation
∣z∣ < 1
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 83 / 95
Digital Control
Approximating Continuous-Time Controllers:
Re(s) < 0
Forward
−−−−−−→
Difference
Re(z) < 1
Stable system in s domain
Forward
−−−−−−→
Difference
Stable or unstable system in z
domain
Re(s) < 0
Backward
−−−−−−→
Difference
(Re(z) − 1
2)2 + Im(z)2 < 1
4
Stable or unstable system in s domain
Backward
−−−−−−→
Difference
Stable system in z
domain
Re(s) < 0
Tustin
−−−−−−−−→
Approximation
∣z∣ < 1
Stable system in s domain
Tustin
−−−−−−−−→
Approximation
Stable system in z domain
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 83 / 95
Digital Control
Digital PID:
Proportional: P(t) = Kpe(t)
P[k] = Kpe[k]
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 84 / 95
Digital Control
Digital PID:
Proportional: P(t) = Kpe(t)
P[k] = Kpe[k]
Integral: I(t) =
Kp
Ti
∫ t
0 e(𝜏)d𝜏
I[k + 1] = I[k] +
KTs
Ti
e[k]
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 84 / 95
Digital Control
Digital PID:
Proportional: P(t) = Kpe(t)
P[k] = Kpe[k]
Integral: I(t) =
Kp
Ti
∫ t
0 e(𝜏)d𝜏
I[k + 1] = I[k] +
KTs
Ti
e[k]
Derivative: Td
N
dD
dt + D = −KpTd
dy
dt
D[k] =
Td
Td + NTs
D[k − 1] −
KpTd N
Td + NTs
(y[k] − y[k − 1])
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 84 / 95
Digital Control
Typical sampling time:
Type of variable Sampling time (sec)
Flow 1-3
Level 5-10
Pressure 1-5
Temperature 10-20
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 85 / 95
Digital Control
Typical sampling time:
Type of variable Sampling time (sec)
Flow 1-3
Level 5-10
Pressure 1-5
Temperature 10-20
Rule of thumb for PI controllers:
Ts
Ti
≈ 0.1 to 0.3
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 85 / 95
Digital Control
Typical sampling time:
Rule of thumb for PID controllers:
NTs
Td
≈ 0.2 to 0.6
[Astrom and Wittenmark, 1996]
Behzad Samadi (Amirkabir University) Industrial Control 86 / 95
Digital Control
Inverse Response: When the initial response of a dynamic system is in a
direction opposite to the final outcome, it is called an inverse response.
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 87 / 95
Digital Control
Inverse Response: When the initial response of a dynamic system is in a
direction opposite to the final outcome, it is called an inverse response.
Obtaining the effective delay (Half rule):
Effective delay =True delay + inverse response time constant(s)
+ half of the largest neglected time constant
+ all smaller higher order time constants
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 87 / 95
Digital Control
Inverse Response: When the initial response of a dynamic system is in a
direction opposite to the final outcome, it is called an inverse response.
Obtaining the effective delay (Half rule):
Effective delay =True delay + inverse response time constant(s)
+ half of the largest neglected time constant
+ all smaller higher order time constants
Time constant:
𝜏 = the largest time constant +
1
2
the second largest time constant
{
𝜏1 = the largest time constant,
𝜏2 = the second largest time constant + 1
2the third largest time constant
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 87 / 95
Digital Control
Plant transfer function:
G(s) =
∏
j (−Tj0s + 1)
∏
j (𝜏i0s + 1)
e−td s
First order approximation:
ˆG1(s) =
e−𝜃s
𝜏s + 1
𝜃 =td +
∑
j
Tj0 +
𝜏20
2
+
∑
j≥3
𝜏i0 +
Ts
2
𝜏 =𝜏10 +
𝜏20
2
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 88 / 95
Digital Control
Second order approximation:
ˆG2(s) =
e−𝜃s
(𝜏1s + 1)(𝜏2s + 1)
𝜃 =td +
∑
j
Tj0 +
𝜏30
2
+
∑
j≥4
𝜏i0 +
Ts
2
𝜏1 =𝜏10
𝜏2 =𝜏20 +
𝜏30
2
[Skogestad, 2001]
Behzad Samadi (Amirkabir University) Industrial Control 89 / 95
Digital Control
Series form of the PID controller:
U(s) = Kp(1 + 1
𝜏i s )(1 + 𝜏d s)E(s)
Behzad Samadi (Amirkabir University) Industrial Control 90 / 95
Digital Control
Series form of the PID controller:
U(s) = Kp(1 + 1
𝜏i s )(1 + 𝜏d s)E(s)
U(s) = Kp(1 + 1
𝜏i s )(E(s) + 𝜏d sE(s))
Behzad Samadi (Amirkabir University) Industrial Control 90 / 95
Digital Control
Series form of the PID controller:
U(s) = Kp(1 + 1
𝜏i s )(1 + 𝜏d s)E(s)
U(s) = Kp(1 + 1
𝜏i s )(E(s) + 𝜏d sE(s))
U(s) = Kp(1 + 1
𝜏i s )(E(s) − 𝜏d sY (s))
Behzad Samadi (Amirkabir University) Industrial Control 90 / 95
Digital Control
Series form of the PID controller:
U(s) = Kp(1 + 1
𝜏i s )(1 + 𝜏d s)E(s)
U(s) = Kp(1 + 1
𝜏i s )(E(s) + 𝜏d sE(s))
U(s) = Kp(1 + 1
𝜏i s )(E(s) − 𝜏d sY (s))
U(s) = Kp(1 + 1
𝜏i s )(R(s) − (1 + 𝜏d s)Y (s))
Behzad Samadi (Amirkabir University) Industrial Control 90 / 95
Digital Control
Series form of the PID controller:
U(s) = Kp(1 + 1
𝜏i s )(1 + 𝜏d s)E(s)
U(s) = Kp(1 + 1
𝜏i s )(E(s) + 𝜏d sE(s))
U(s) = Kp(1 + 1
𝜏i s )(E(s) − 𝜏d sY (s))
U(s) = Kp(1 + 1
𝜏i s )(R(s) − (1 + 𝜏d s)Y (s))
U(s) = Kp(1 + 1
𝜏i s )Ed (s)
Behzad Samadi (Amirkabir University) Industrial Control 90 / 95
Digital Control
Series form of the PID controller:
Behzad Samadi (Amirkabir University) Industrial Control 91 / 95
Digital Control
Antiwindup digital PID:
public class SimplePID {
private double u,e,v,y;
private double K,Ti,Td,Beta,Tr,N,h;
private double ad,bd;
private double D,I,yOld;
public SimplePID(double nK, double nTi, double NTd,
double nBeta, double nTr, double nN, double nh) {
updateParameters(nK,nTi,nTd,nBeta,nTr,nN,nh);
}
ARTIST Graduate Course on Embedded Control Systems
Behzad Samadi (Amirkabir University) Industrial Control 92 / 95
Digital Control
Antiwindup digital PID:
public void updateParameters(double nK, double nTi,
double NTd, double nBeta, double nTr, double nN,
double nh) {
K = nK; Ti = nTi; Td = nTd; Beta = nBeta;
Tr = nTr
N = nN;
h = nh;
ad = Td / (Td + N*h);
bd = K*ad*N;
}
ARTIST Graduate Course on Embedded Control Systems
Behzad Samadi (Amirkabir University) Industrial Control 93 / 95
Digital Control
Antiwindup digital PID:
public double calculateOutput(double yref, double newY) {
y = newY;
e = yref - y;
D = ad*D - bd*(y - yOld);
v = K*(Beta*yref - y) + I + D;
return v;
}
public void updateState(double u) {
I = I + (K*h/Ti)*e + (h/Tr)*(u - v);
yOld = y;
}
}
ARTIST Graduate Course on Embedded Control Systems
Behzad Samadi (Amirkabir University) Industrial Control 94 / 95
Digital Control
Antiwindup digital PID:
public class Regul extends Thread {
private SimplePID pid;
public Regul() { pid = new SimplePID(1,10,0,1,10,5,0.1); }
public void run() {
// Other stuff
while (true) {
y = getY();
yref = getYref():
u = pid.calculateOutput(yref,y);
u = limit(u);
setU(u);
pid.updateState(u);
// Timing Code
}}}
ARTIST Graduate Course on Embedded Control Systems
Behzad Samadi (Amirkabir University) Industrial Control 95 / 95
Astrom, K. J. and Hagglund, T. (1995).
PID Controllers: Theory, Design, and Tuning.
Instrument Society of America.
Astrom, K. J. and Wittenmark, B. (1996).
Computer-Controlled Systems: Theory and Design.
Prentice Hall, 3 edition.
Chau, P. C. (2002).
Process Control: A First Course with MATLAB (Cambridge Series in
Chemical Engineering).
Cambridge University Press, 1 edition.
Li, Y., Ang, K. H., and Chong, G. C. Y. (2006).
Pid control system analysis and design.
IEEE Control Syst. Mag., 26(1):32–41.
Love, J. (2007).
Process Automation Handbook: A Guide to Theory and Practice.
Springer, 1 edition.
Behzad Samadi (Amirkabir University) Industrial Control 95 / 95
McMillan, G. K. (2001).
Good Tuning: A Pocket Guide.
The Instrumentation, Systems, and Automation Society (ISA).
O’Dwyer (2002).
Handbook of PI & Pid Controller Tuning Rules.
World Scientific Publishing.
Skogestad, S. (2001).
Probably the best simple pid tuning rules in the world.
In AIChE Annual meeting, Reno, NV, USA.
Visioli, A. (2006).
Practical PID Control (Advances in Industrial Control).
Springer, 1 edition.
Woolf, P., editor (2007).
The Michigan Chemical Process Dynamics and Controls Open Text
Book.
Yu, C.-C. (2007).
Behzad Samadi (Amirkabir University) Industrial Control 95 / 95
Autotuning of PID Controllers: A Relay Feedback Approach.
Springer.
Behzad Samadi (Amirkabir University) Industrial Control 95 / 95

Más contenido relacionado

La actualidad más candente

Dcs lec03 - z-analysis of discrete time control systems
Dcs   lec03 - z-analysis of discrete time control systemsDcs   lec03 - z-analysis of discrete time control systems
Dcs lec03 - z-analysis of discrete time control systemsAmr E. Mohamed
 
Permanent Magnet Synchronous Motor (PMSM)Simplified SPICE Behavioral Model PS...
Permanent Magnet Synchronous Motor (PMSM)Simplified SPICE Behavioral Model PS...Permanent Magnet Synchronous Motor (PMSM)Simplified SPICE Behavioral Model PS...
Permanent Magnet Synchronous Motor (PMSM)Simplified SPICE Behavioral Model PS...Tsuyoshi Horigome
 
Dcs lec02 - z-transform
Dcs   lec02 - z-transformDcs   lec02 - z-transform
Dcs lec02 - z-transformAmr E. Mohamed
 
Digital control systems (dcs) lecture 18-19-20
Digital control systems (dcs) lecture 18-19-20Digital control systems (dcs) lecture 18-19-20
Digital control systems (dcs) lecture 18-19-20Ali Rind
 
Dcs lec01 - introduction to discrete-time control systems
Dcs   lec01 - introduction to discrete-time control systemsDcs   lec01 - introduction to discrete-time control systems
Dcs lec01 - introduction to discrete-time control systemsAmr E. Mohamed
 
8178001772 control
8178001772 control8178001772 control
8178001772 controlMaRwa Hamed
 
Matlab solving rlc circuit
Matlab solving rlc circuitMatlab solving rlc circuit
Matlab solving rlc circuitAmeen San
 
Automation PLC & SCADA
Automation PLC & SCADA Automation PLC & SCADA
Automation PLC & SCADA NITISH SINGH
 
Schmitt trigger basics
Schmitt trigger  basicsSchmitt trigger  basics
Schmitt trigger basicsSAQUIB AHMAD
 
Multirate digital signal processing
Multirate digital signal processingMultirate digital signal processing
Multirate digital signal processingMOHAN MOHAN
 
PLC Programming Languages
PLC Programming LanguagesPLC Programming Languages
PLC Programming LanguagesLIJU. G. CHACKO
 
Chapter 4 time domain analysis
Chapter 4 time domain analysisChapter 4 time domain analysis
Chapter 4 time domain analysisBin Biny Bino
 
Electrical Classic Control (Basics)
Electrical Classic Control (Basics)Electrical Classic Control (Basics)
Electrical Classic Control (Basics)AHMED MOHAMED HEGAB
 
Pid control
Pid controlPid control
Pid controlAB Rizvi
 
Plc presentation
Plc presentationPlc presentation
Plc presentationNits Sharma
 

La actualidad más candente (20)

Dcs lec03 - z-analysis of discrete time control systems
Dcs   lec03 - z-analysis of discrete time control systemsDcs   lec03 - z-analysis of discrete time control systems
Dcs lec03 - z-analysis of discrete time control systems
 
Permanent Magnet Synchronous Motor (PMSM)Simplified SPICE Behavioral Model PS...
Permanent Magnet Synchronous Motor (PMSM)Simplified SPICE Behavioral Model PS...Permanent Magnet Synchronous Motor (PMSM)Simplified SPICE Behavioral Model PS...
Permanent Magnet Synchronous Motor (PMSM)Simplified SPICE Behavioral Model PS...
 
Dcs lec02 - z-transform
Dcs   lec02 - z-transformDcs   lec02 - z-transform
Dcs lec02 - z-transform
 
Digital control systems (dcs) lecture 18-19-20
Digital control systems (dcs) lecture 18-19-20Digital control systems (dcs) lecture 18-19-20
Digital control systems (dcs) lecture 18-19-20
 
Ee321s3.1
Ee321s3.1Ee321s3.1
Ee321s3.1
 
Dcs lec01 - introduction to discrete-time control systems
Dcs   lec01 - introduction to discrete-time control systemsDcs   lec01 - introduction to discrete-time control systems
Dcs lec01 - introduction to discrete-time control systems
 
8178001772 control
8178001772 control8178001772 control
8178001772 control
 
Matlab solving rlc circuit
Matlab solving rlc circuitMatlab solving rlc circuit
Matlab solving rlc circuit
 
Two port network
Two port networkTwo port network
Two port network
 
Automation PLC & SCADA
Automation PLC & SCADA Automation PLC & SCADA
Automation PLC & SCADA
 
Compensators
CompensatorsCompensators
Compensators
 
Schmitt trigger basics
Schmitt trigger  basicsSchmitt trigger  basics
Schmitt trigger basics
 
Multirate digital signal processing
Multirate digital signal processingMultirate digital signal processing
Multirate digital signal processing
 
PLC Programming Languages
PLC Programming LanguagesPLC Programming Languages
PLC Programming Languages
 
Pid controller
Pid controllerPid controller
Pid controller
 
Chapter 4 time domain analysis
Chapter 4 time domain analysisChapter 4 time domain analysis
Chapter 4 time domain analysis
 
Electrical Classic Control (Basics)
Electrical Classic Control (Basics)Electrical Classic Control (Basics)
Electrical Classic Control (Basics)
 
Pid control
Pid controlPid control
Pid control
 
Lead-lag controller
Lead-lag controllerLead-lag controller
Lead-lag controller
 
Plc presentation
Plc presentationPlc presentation
Plc presentation
 

Destacado

Week 14 pid may 24 2016 pe 3032
Week  14 pid  may 24 2016 pe 3032Week  14 pid  may 24 2016 pe 3032
Week 14 pid may 24 2016 pe 3032Charlton Inao
 
Design and Implementation of a Quadrotor Helicopter
Design and Implementation of a Quadrotor HelicopterDesign and Implementation of a Quadrotor Helicopter
Design and Implementation of a Quadrotor HelicopterHicham Berkouk
 
Thompson tchobanian ni_li)
Thompson tchobanian ni_li)Thompson tchobanian ni_li)
Thompson tchobanian ni_li)trtrungviet
 
Android + arduino = love @ Droidcon Bucharest 2012
Android + arduino = love @ Droidcon Bucharest 2012Android + arduino = love @ Droidcon Bucharest 2012
Android + arduino = love @ Droidcon Bucharest 2012Droidcon Eastern Europe
 
Quadcopter final report anand
Quadcopter final report anandQuadcopter final report anand
Quadcopter final report anandAnand kumar
 
Control Systems Design- PID Tuning
Control Systems Design- PID TuningControl Systems Design- PID Tuning
Control Systems Design- PID Tuningparulo123
 
Design of Control System for Humanoid Robot
Design of Control System for Humanoid RobotDesign of Control System for Humanoid Robot
Design of Control System for Humanoid RobotRohit Bhat
 
CodeRage XI international Conference: Arduino + Delphi Mobile Apps
CodeRage XI international Conference: Arduino + Delphi Mobile Apps CodeRage XI international Conference: Arduino + Delphi Mobile Apps
CodeRage XI international Conference: Arduino + Delphi Mobile Apps Vic Fernandes
 
Chapter 9 Design Via Root Locus
Chapter 9 Design Via Root LocusChapter 9 Design Via Root Locus
Chapter 9 Design Via Root Locusguesta0c38c3
 
Algorithms and hardware designs for quadcopters
Algorithms and hardware designs for quadcoptersAlgorithms and hardware designs for quadcopters
Algorithms and hardware designs for quadcoptersShipeng Xu
 
PID Controller
PID ControllerPID Controller
PID Controllersaishah72
 
Modern Control - Lec 06 - PID Tuning
Modern Control - Lec 06 - PID TuningModern Control - Lec 06 - PID Tuning
Modern Control - Lec 06 - PID TuningAmr E. Mohamed
 
Industrial process control
Industrial process controlIndustrial process control
Industrial process controlMohamed A Hakim
 

Destacado (18)

Week 14 pid may 24 2016 pe 3032
Week  14 pid  may 24 2016 pe 3032Week  14 pid  may 24 2016 pe 3032
Week 14 pid may 24 2016 pe 3032
 
Design and Implementation of a Quadrotor Helicopter
Design and Implementation of a Quadrotor HelicopterDesign and Implementation of a Quadrotor Helicopter
Design and Implementation of a Quadrotor Helicopter
 
Pi Controller
Pi ControllerPi Controller
Pi Controller
 
Thompson tchobanian ni_li)
Thompson tchobanian ni_li)Thompson tchobanian ni_li)
Thompson tchobanian ni_li)
 
Android + arduino = love @ Droidcon Bucharest 2012
Android + arduino = love @ Droidcon Bucharest 2012Android + arduino = love @ Droidcon Bucharest 2012
Android + arduino = love @ Droidcon Bucharest 2012
 
Quadcopter final report anand
Quadcopter final report anandQuadcopter final report anand
Quadcopter final report anand
 
Control Systems Design- PID Tuning
Control Systems Design- PID TuningControl Systems Design- PID Tuning
Control Systems Design- PID Tuning
 
Design of Control System for Humanoid Robot
Design of Control System for Humanoid RobotDesign of Control System for Humanoid Robot
Design of Control System for Humanoid Robot
 
CodeRage XI international Conference: Arduino + Delphi Mobile Apps
CodeRage XI international Conference: Arduino + Delphi Mobile Apps CodeRage XI international Conference: Arduino + Delphi Mobile Apps
CodeRage XI international Conference: Arduino + Delphi Mobile Apps
 
Chapter 9 Design Via Root Locus
Chapter 9 Design Via Root LocusChapter 9 Design Via Root Locus
Chapter 9 Design Via Root Locus
 
Line Follower Robot
Line Follower RobotLine Follower Robot
Line Follower Robot
 
Algorithms and hardware designs for quadcopters
Algorithms and hardware designs for quadcoptersAlgorithms and hardware designs for quadcopters
Algorithms and hardware designs for quadcopters
 
Speed Controller for DC Motor
Speed Controller for DC MotorSpeed Controller for DC Motor
Speed Controller for DC Motor
 
PID Controller
PID ControllerPID Controller
PID Controller
 
PID Control
PID ControlPID Control
PID Control
 
Modern Control - Lec 06 - PID Tuning
Modern Control - Lec 06 - PID TuningModern Control - Lec 06 - PID Tuning
Modern Control - Lec 06 - PID Tuning
 
Pid controllers
Pid controllersPid controllers
Pid controllers
 
Industrial process control
Industrial process controlIndustrial process control
Industrial process control
 

Similar a Industrial Control PID Tuning

Industrial Control Systems - Special Structures
Industrial Control Systems - Special StructuresIndustrial Control Systems - Special Structures
Industrial Control Systems - Special StructuresBehzad Samadi
 
Industrial Control Systems - Chemical Systems
Industrial Control Systems - Chemical SystemsIndustrial Control Systems - Chemical Systems
Industrial Control Systems - Chemical SystemsBehzad Samadi
 
Eee3420 lecture01 rev2011
Eee3420 lecture01 rev2011Eee3420 lecture01 rev2011
Eee3420 lecture01 rev2011benson215
 
Eee3420 lecture01 rev2011
Eee3420 lecture01 rev2011Eee3420 lecture01 rev2011
Eee3420 lecture01 rev2011benson215
 
IRJET- Speed Control of Induction Motor using Hybrid PID Fuzzy Controller
IRJET- Speed Control of Induction Motor using Hybrid PID Fuzzy ControllerIRJET- Speed Control of Induction Motor using Hybrid PID Fuzzy Controller
IRJET- Speed Control of Induction Motor using Hybrid PID Fuzzy ControllerIRJET Journal
 
Pso based fractional order automatic generation controller for two area power...
Pso based fractional order automatic generation controller for two area power...Pso based fractional order automatic generation controller for two area power...
Pso based fractional order automatic generation controller for two area power...IAEME Publication
 
AIRCRAFT PITCH EECE 682 Computer Control Of Dynamic.docx
AIRCRAFT PITCH EECE 682  Computer Control Of Dynamic.docxAIRCRAFT PITCH EECE 682  Computer Control Of Dynamic.docx
AIRCRAFT PITCH EECE 682 Computer Control Of Dynamic.docxgalerussel59292
 
Industrial Control Systems - Hydraulic Systems
Industrial Control Systems - Hydraulic SystemsIndustrial Control Systems - Hydraulic Systems
Industrial Control Systems - Hydraulic SystemsBehzad Samadi
 
Ee2365 nol part 2
Ee2365 nol part 2Ee2365 nol part 2
Ee2365 nol part 2Arun Kumaar
 
Pid control by Adarsh singh
Pid control  by Adarsh singhPid control  by Adarsh singh
Pid control by Adarsh singhAdarsh Singh
 
TUNING OF AN I-PD CONTROLLER USED WITH A HIGHLY OSCILLATING SECOND-ORDER PROC...
TUNING OF AN I-PD CONTROLLER USED WITH A HIGHLY OSCILLATING SECOND-ORDER PROC...TUNING OF AN I-PD CONTROLLER USED WITH A HIGHLY OSCILLATING SECOND-ORDER PROC...
TUNING OF AN I-PD CONTROLLER USED WITH A HIGHLY OSCILLATING SECOND-ORDER PROC...IAEME Publication
 
Optimal Feedback Controllers for Aircraft Applications: A Survey
Optimal Feedback Controllers for Aircraft Applications: A SurveyOptimal Feedback Controllers for Aircraft Applications: A Survey
Optimal Feedback Controllers for Aircraft Applications: A SurveyIRJET Journal
 
Control tutorials for matlab and simulink introduction pid controller desig...
Control tutorials for matlab and simulink   introduction pid controller desig...Control tutorials for matlab and simulink   introduction pid controller desig...
Control tutorials for matlab and simulink introduction pid controller desig...ssuser27c61e
 

Similar a Industrial Control PID Tuning (20)

Industrial Control Systems - Special Structures
Industrial Control Systems - Special StructuresIndustrial Control Systems - Special Structures
Industrial Control Systems - Special Structures
 
Industrial Control Systems - Chemical Systems
Industrial Control Systems - Chemical SystemsIndustrial Control Systems - Chemical Systems
Industrial Control Systems - Chemical Systems
 
Eee3420 lecture01 rev2011
Eee3420 lecture01 rev2011Eee3420 lecture01 rev2011
Eee3420 lecture01 rev2011
 
Eee3420 lecture01 rev2011
Eee3420 lecture01 rev2011Eee3420 lecture01 rev2011
Eee3420 lecture01 rev2011
 
IRJET- Speed Control of Induction Motor using Hybrid PID Fuzzy Controller
IRJET- Speed Control of Induction Motor using Hybrid PID Fuzzy ControllerIRJET- Speed Control of Induction Motor using Hybrid PID Fuzzy Controller
IRJET- Speed Control of Induction Motor using Hybrid PID Fuzzy Controller
 
Pso based fractional order automatic generation controller for two area power...
Pso based fractional order automatic generation controller for two area power...Pso based fractional order automatic generation controller for two area power...
Pso based fractional order automatic generation controller for two area power...
 
D04954148
D04954148D04954148
D04954148
 
AIRCRAFT PITCH EECE 682 Computer Control Of Dynamic.docx
AIRCRAFT PITCH EECE 682  Computer Control Of Dynamic.docxAIRCRAFT PITCH EECE 682  Computer Control Of Dynamic.docx
AIRCRAFT PITCH EECE 682 Computer Control Of Dynamic.docx
 
Industrial Control Systems - Hydraulic Systems
Industrial Control Systems - Hydraulic SystemsIndustrial Control Systems - Hydraulic Systems
Industrial Control Systems - Hydraulic Systems
 
Ee2365 nol part 2
Ee2365 nol part 2Ee2365 nol part 2
Ee2365 nol part 2
 
Pid control by Adarsh singh
Pid control  by Adarsh singhPid control  by Adarsh singh
Pid control by Adarsh singh
 
30120140505012
3012014050501230120140505012
30120140505012
 
TUNING OF AN I-PD CONTROLLER USED WITH A HIGHLY OSCILLATING SECOND-ORDER PROC...
TUNING OF AN I-PD CONTROLLER USED WITH A HIGHLY OSCILLATING SECOND-ORDER PROC...TUNING OF AN I-PD CONTROLLER USED WITH A HIGHLY OSCILLATING SECOND-ORDER PROC...
TUNING OF AN I-PD CONTROLLER USED WITH A HIGHLY OSCILLATING SECOND-ORDER PROC...
 
UNIT-V.ppt
UNIT-V.pptUNIT-V.ppt
UNIT-V.ppt
 
30120130406002
3012013040600230120130406002
30120130406002
 
Optimal Feedback Controllers for Aircraft Applications: A Survey
Optimal Feedback Controllers for Aircraft Applications: A SurveyOptimal Feedback Controllers for Aircraft Applications: A Survey
Optimal Feedback Controllers for Aircraft Applications: A Survey
 
SLIDES_PEGASUS_CALISE
SLIDES_PEGASUS_CALISESLIDES_PEGASUS_CALISE
SLIDES_PEGASUS_CALISE
 
Control tutorials for matlab and simulink introduction pid controller desig...
Control tutorials for matlab and simulink   introduction pid controller desig...Control tutorials for matlab and simulink   introduction pid controller desig...
Control tutorials for matlab and simulink introduction pid controller desig...
 
master defense
master defensemaster defense
master defense
 
Control systems MCQ
Control systems MCQControl systems MCQ
Control systems MCQ
 

Más de Behzad Samadi

Real Time Code Generation for Nonlinear Model Predictive Control
Real Time Code Generation for Nonlinear Model Predictive ControlReal Time Code Generation for Nonlinear Model Predictive Control
Real Time Code Generation for Nonlinear Model Predictive ControlBehzad Samadi
 
سیستم ترمز ضدقفل ABS
سیستم ترمز ضدقفل ABSسیستم ترمز ضدقفل ABS
سیستم ترمز ضدقفل ABSBehzad Samadi
 
Active Suspension System
Active Suspension SystemActive Suspension System
Active Suspension SystemBehzad Samadi
 
Introducing Myself Through Websites!
Introducing Myself Through Websites!Introducing Myself Through Websites!
Introducing Myself Through Websites!Behzad Samadi
 
Controller Synthesis for Nonholonomic Robots - Japanese
Controller Synthesis for Nonholonomic Robots - JapaneseController Synthesis for Nonholonomic Robots - Japanese
Controller Synthesis for Nonholonomic Robots - JapaneseBehzad Samadi
 
Controller Synthesis for Nonholonomic Robots
Controller Synthesis for Nonholonomic RobotsController Synthesis for Nonholonomic Robots
Controller Synthesis for Nonholonomic RobotsBehzad Samadi
 
Lead-Lag Controller Design - Persian
Lead-Lag Controller Design - PersianLead-Lag Controller Design - Persian
Lead-Lag Controller Design - PersianBehzad Samadi
 
Industrial Control Systems - PLC
Industrial Control Systems - PLCIndustrial Control Systems - PLC
Industrial Control Systems - PLCBehzad Samadi
 
Industrial Control Systems - Automotive Systems
Industrial Control Systems - Automotive SystemsIndustrial Control Systems - Automotive Systems
Industrial Control Systems - Automotive SystemsBehzad Samadi
 
Industrial Control Systems - Thermal Systems
Industrial Control Systems - Thermal SystemsIndustrial Control Systems - Thermal Systems
Industrial Control Systems - Thermal SystemsBehzad Samadi
 
Industrial Control Systems - Liquid Level Systems
Industrial Control Systems - Liquid Level SystemsIndustrial Control Systems - Liquid Level Systems
Industrial Control Systems - Liquid Level SystemsBehzad Samadi
 
Industrial Control Systems - Pneumatic Systems
Industrial Control Systems - Pneumatic SystemsIndustrial Control Systems - Pneumatic Systems
Industrial Control Systems - Pneumatic SystemsBehzad Samadi
 
Industrial Control Systems - Modeling
Industrial Control Systems - ModelingIndustrial Control Systems - Modeling
Industrial Control Systems - ModelingBehzad Samadi
 
Modeling, Control and Optimization for Aerospace Systems
Modeling, Control and Optimization for Aerospace SystemsModeling, Control and Optimization for Aerospace Systems
Modeling, Control and Optimization for Aerospace SystemsBehzad Samadi
 
A MATLAB Toolbox for Piecewise-Affine Controller Synthesis
A MATLAB Toolbox for Piecewise-Affine Controller SynthesisA MATLAB Toolbox for Piecewise-Affine Controller Synthesis
A MATLAB Toolbox for Piecewise-Affine Controller SynthesisBehzad Samadi
 
Model Based Fault Detection, Identification and Accommodation in Antilock Bra...
Model Based Fault Detection, Identification and Accommodation in Antilock Bra...Model Based Fault Detection, Identification and Accommodation in Antilock Bra...
Model Based Fault Detection, Identification and Accommodation in Antilock Bra...Behzad Samadi
 
Extension of a local linear controller to a stabilizing semi-global piecewise...
Extension of a local linear controller to a stabilizing semi-global piecewise...Extension of a local linear controller to a stabilizing semi-global piecewise...
Extension of a local linear controller to a stabilizing semi-global piecewise...Behzad Samadi
 
Controller synthesis for piecewise affine slab differential inclusions: A dua...
Controller synthesis for piecewise affine slab differential inclusions: A dua...Controller synthesis for piecewise affine slab differential inclusions: A dua...
Controller synthesis for piecewise affine slab differential inclusions: A dua...Behzad Samadi
 
Backstepping for Piecewise Affine Systems: A SOS Approach
Backstepping for Piecewise Affine Systems: A SOS ApproachBackstepping for Piecewise Affine Systems: A SOS Approach
Backstepping for Piecewise Affine Systems: A SOS ApproachBehzad Samadi
 

Más de Behzad Samadi (20)

Real Time Code Generation for Nonlinear Model Predictive Control
Real Time Code Generation for Nonlinear Model Predictive ControlReal Time Code Generation for Nonlinear Model Predictive Control
Real Time Code Generation for Nonlinear Model Predictive Control
 
سیستم ترمز ضدقفل ABS
سیستم ترمز ضدقفل ABSسیستم ترمز ضدقفل ABS
سیستم ترمز ضدقفل ABS
 
RPS-BehzadSamadi
RPS-BehzadSamadiRPS-BehzadSamadi
RPS-BehzadSamadi
 
Active Suspension System
Active Suspension SystemActive Suspension System
Active Suspension System
 
Introducing Myself Through Websites!
Introducing Myself Through Websites!Introducing Myself Through Websites!
Introducing Myself Through Websites!
 
Controller Synthesis for Nonholonomic Robots - Japanese
Controller Synthesis for Nonholonomic Robots - JapaneseController Synthesis for Nonholonomic Robots - Japanese
Controller Synthesis for Nonholonomic Robots - Japanese
 
Controller Synthesis for Nonholonomic Robots
Controller Synthesis for Nonholonomic RobotsController Synthesis for Nonholonomic Robots
Controller Synthesis for Nonholonomic Robots
 
Lead-Lag Controller Design - Persian
Lead-Lag Controller Design - PersianLead-Lag Controller Design - Persian
Lead-Lag Controller Design - Persian
 
Industrial Control Systems - PLC
Industrial Control Systems - PLCIndustrial Control Systems - PLC
Industrial Control Systems - PLC
 
Industrial Control Systems - Automotive Systems
Industrial Control Systems - Automotive SystemsIndustrial Control Systems - Automotive Systems
Industrial Control Systems - Automotive Systems
 
Industrial Control Systems - Thermal Systems
Industrial Control Systems - Thermal SystemsIndustrial Control Systems - Thermal Systems
Industrial Control Systems - Thermal Systems
 
Industrial Control Systems - Liquid Level Systems
Industrial Control Systems - Liquid Level SystemsIndustrial Control Systems - Liquid Level Systems
Industrial Control Systems - Liquid Level Systems
 
Industrial Control Systems - Pneumatic Systems
Industrial Control Systems - Pneumatic SystemsIndustrial Control Systems - Pneumatic Systems
Industrial Control Systems - Pneumatic Systems
 
Industrial Control Systems - Modeling
Industrial Control Systems - ModelingIndustrial Control Systems - Modeling
Industrial Control Systems - Modeling
 
Modeling, Control and Optimization for Aerospace Systems
Modeling, Control and Optimization for Aerospace SystemsModeling, Control and Optimization for Aerospace Systems
Modeling, Control and Optimization for Aerospace Systems
 
A MATLAB Toolbox for Piecewise-Affine Controller Synthesis
A MATLAB Toolbox for Piecewise-Affine Controller SynthesisA MATLAB Toolbox for Piecewise-Affine Controller Synthesis
A MATLAB Toolbox for Piecewise-Affine Controller Synthesis
 
Model Based Fault Detection, Identification and Accommodation in Antilock Bra...
Model Based Fault Detection, Identification and Accommodation in Antilock Bra...Model Based Fault Detection, Identification and Accommodation in Antilock Bra...
Model Based Fault Detection, Identification and Accommodation in Antilock Bra...
 
Extension of a local linear controller to a stabilizing semi-global piecewise...
Extension of a local linear controller to a stabilizing semi-global piecewise...Extension of a local linear controller to a stabilizing semi-global piecewise...
Extension of a local linear controller to a stabilizing semi-global piecewise...
 
Controller synthesis for piecewise affine slab differential inclusions: A dua...
Controller synthesis for piecewise affine slab differential inclusions: A dua...Controller synthesis for piecewise affine slab differential inclusions: A dua...
Controller synthesis for piecewise affine slab differential inclusions: A dua...
 
Backstepping for Piecewise Affine Systems: A SOS Approach
Backstepping for Piecewise Affine Systems: A SOS ApproachBackstepping for Piecewise Affine Systems: A SOS Approach
Backstepping for Piecewise Affine Systems: A SOS Approach
 

Último

Chapter 9 PPT 4th edition.pdf internal audit
Chapter 9 PPT 4th edition.pdf internal auditChapter 9 PPT 4th edition.pdf internal audit
Chapter 9 PPT 4th edition.pdf internal auditNhtLNguyn9
 
Fordham -How effective decision-making is within the IT department - Analysis...
Fordham -How effective decision-making is within the IT department - Analysis...Fordham -How effective decision-making is within the IT department - Analysis...
Fordham -How effective decision-making is within the IT department - Analysis...Peter Ward
 
Annual General Meeting Presentation Slides
Annual General Meeting Presentation SlidesAnnual General Meeting Presentation Slides
Annual General Meeting Presentation SlidesKeppelCorporation
 
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCRashishs7044
 
TriStar Gold Corporate Presentation - April 2024
TriStar Gold Corporate Presentation - April 2024TriStar Gold Corporate Presentation - April 2024
TriStar Gold Corporate Presentation - April 2024Adnet Communications
 
Guide Complete Set of Residential Architectural Drawings PDF
Guide Complete Set of Residential Architectural Drawings PDFGuide Complete Set of Residential Architectural Drawings PDF
Guide Complete Set of Residential Architectural Drawings PDFChandresh Chudasama
 
Buy gmail accounts.pdf Buy Old Gmail Accounts
Buy gmail accounts.pdf Buy Old Gmail AccountsBuy gmail accounts.pdf Buy Old Gmail Accounts
Buy gmail accounts.pdf Buy Old Gmail AccountsBuy Verified Accounts
 
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCRashishs7044
 
Cyber Security Training in Office Environment
Cyber Security Training in Office EnvironmentCyber Security Training in Office Environment
Cyber Security Training in Office Environmentelijahj01012
 
8447779800, Low rate Call girls in Saket Delhi NCR
8447779800, Low rate Call girls in Saket Delhi NCR8447779800, Low rate Call girls in Saket Delhi NCR
8447779800, Low rate Call girls in Saket Delhi NCRashishs7044
 
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...ictsugar
 
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu MenzaYouth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu Menzaictsugar
 
Kenya’s Coconut Value Chain by Gatsby Africa
Kenya’s Coconut Value Chain by Gatsby AfricaKenya’s Coconut Value Chain by Gatsby Africa
Kenya’s Coconut Value Chain by Gatsby Africaictsugar
 
FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607dollysharma2066
 
Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03DallasHaselhorst
 
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort Service
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort ServiceCall US-88OO1O2216 Call Girls In Mahipalpur Female Escort Service
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort Servicecallgirls2057
 
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!Doge Mining Website
 
Flow Your Strategy at Flight Levels Day 2024
Flow Your Strategy at Flight Levels Day 2024Flow Your Strategy at Flight Levels Day 2024
Flow Your Strategy at Flight Levels Day 2024Kirill Klimov
 
APRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfAPRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfRbc Rbcua
 

Último (20)

Chapter 9 PPT 4th edition.pdf internal audit
Chapter 9 PPT 4th edition.pdf internal auditChapter 9 PPT 4th edition.pdf internal audit
Chapter 9 PPT 4th edition.pdf internal audit
 
Fordham -How effective decision-making is within the IT department - Analysis...
Fordham -How effective decision-making is within the IT department - Analysis...Fordham -How effective decision-making is within the IT department - Analysis...
Fordham -How effective decision-making is within the IT department - Analysis...
 
Annual General Meeting Presentation Slides
Annual General Meeting Presentation SlidesAnnual General Meeting Presentation Slides
Annual General Meeting Presentation Slides
 
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
 
TriStar Gold Corporate Presentation - April 2024
TriStar Gold Corporate Presentation - April 2024TriStar Gold Corporate Presentation - April 2024
TriStar Gold Corporate Presentation - April 2024
 
Guide Complete Set of Residential Architectural Drawings PDF
Guide Complete Set of Residential Architectural Drawings PDFGuide Complete Set of Residential Architectural Drawings PDF
Guide Complete Set of Residential Architectural Drawings PDF
 
Buy gmail accounts.pdf Buy Old Gmail Accounts
Buy gmail accounts.pdf Buy Old Gmail AccountsBuy gmail accounts.pdf Buy Old Gmail Accounts
Buy gmail accounts.pdf Buy Old Gmail Accounts
 
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
 
Cyber Security Training in Office Environment
Cyber Security Training in Office EnvironmentCyber Security Training in Office Environment
Cyber Security Training in Office Environment
 
8447779800, Low rate Call girls in Saket Delhi NCR
8447779800, Low rate Call girls in Saket Delhi NCR8447779800, Low rate Call girls in Saket Delhi NCR
8447779800, Low rate Call girls in Saket Delhi NCR
 
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...
 
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu MenzaYouth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
 
Kenya’s Coconut Value Chain by Gatsby Africa
Kenya’s Coconut Value Chain by Gatsby AfricaKenya’s Coconut Value Chain by Gatsby Africa
Kenya’s Coconut Value Chain by Gatsby Africa
 
FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607
 
Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03
 
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort Service
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort ServiceCall US-88OO1O2216 Call Girls In Mahipalpur Female Escort Service
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort Service
 
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!
 
Japan IT Week 2024 Brochure by 47Billion (English)
Japan IT Week 2024 Brochure by 47Billion (English)Japan IT Week 2024 Brochure by 47Billion (English)
Japan IT Week 2024 Brochure by 47Billion (English)
 
Flow Your Strategy at Flight Levels Day 2024
Flow Your Strategy at Flight Levels Day 2024Flow Your Strategy at Flight Levels Day 2024
Flow Your Strategy at Flight Levels Day 2024
 
APRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfAPRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdf
 

Industrial Control PID Tuning

  • 1. Industrial Control Behzad Samadi Department of Electrical Engineering Amirkabir University of Technology Winter 2010 Tehran, Iran Behzad Samadi (Amirkabir University) Industrial Control 1 / 95
  • 2. Feedback Control Loop r: reference signal y: process (controlled) variable u: manipulated (control) variable e: control error d: load disturbance signal n: measurement noise signal F: feedforward filter C: controller P: plant [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 2 / 95
  • 3. On-Off Control One of the simplest control laws: u = { umax if e > 0 umin if e < 0 Behzad Samadi (Amirkabir University) Industrial Control 3 / 95
  • 4. On-Off Control One of the simplest control laws: u = { umax if e > 0 umin if e < 0 Disadvantage: persistent oscillation of the process variable P = 1 10s + 1 e−2s , umax = 2, umin = 0 Behzad Samadi (Amirkabir University) Industrial Control 3 / 95
  • 5. On-Off Control One of the simplest control laws: u = { umax if e > 0 umin if e < 0 Disadvantage: persistent oscillation of the process variable P = 1 10s + 1 e−2s , umax = 2, umin = 0 Behzad Samadi (Amirkabir University) Industrial Control 3 / 95
  • 6. On-Off Control One of the simplest control laws: u = { umax if e > 0 umin if e < 0 Disadvantage: persistent oscillation of the process variable P = 1 10s + 1 e−2s , umax = 2, umin = 0 Behzad Samadi (Amirkabir University) Industrial Control 3 / 95
  • 7. On-Off Control a) Ideal on-off controller b) Modified with a dead zone c) Modified with hysteresys [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 4 / 95
  • 8. PID Control 1 Proportional action 2 Integral action 3 Derivative action [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 5 / 95
  • 9. Proportional Action Proportional control action: u(t) = Kpe(t) = Kp(r(t) − y(t)), [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 6 / 95
  • 10. Proportional Action Proportional control action: u(t) = Kpe(t) = Kp(r(t) − y(t)), Kp: proportional gain [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 6 / 95
  • 11. Proportional Action Proportional control action: u(t) = Kpe(t) = Kp(r(t) − y(t)), Kp: proportional gain Controller transfer function: C(s) = Kp [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 6 / 95
  • 12. Proportional Action Proportional control action: u(t) = Kpe(t) = Kp(r(t) − y(t)), Kp: proportional gain Controller transfer function: C(s) = Kp Advantage: small control signal for a small error signal [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 6 / 95
  • 13. Proportional Action Proportional control action: u(t) = Kpe(t) = Kp(r(t) − y(t)), Kp: proportional gain Controller transfer function: C(s) = Kp Advantage: small control signal for a small error signal Disadvantage: steady state error [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 6 / 95
  • 14. Proportional Action Steady state error occurs even if the process presents an integrating dynamics, in case a constant load disturbance occurs. [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 7 / 95
  • 15. Proportional Action Steady state error occurs even if the process presents an integrating dynamics, in case a constant load disturbance occurs. Adding a bias (or reset) term: u(t) = Kpe + ub The value of ub can be fixed or can be adjusted manually until the steady state error is zero. [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 7 / 95
  • 16. Proportional Action Proportional Band (PB): PB = 100% Kp [Astrom and Hagglund, 1995] Behzad Samadi (Amirkabir University) Industrial Control 8 / 95
  • 17. Integral Action Integral control action: u(t) = Ki ∫ t 0 e(𝜏)d𝜏, [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 9 / 95
  • 18. Integral Action Integral control action: u(t) = Ki ∫ t 0 e(𝜏)d𝜏, Ki : integral gain [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 9 / 95
  • 19. Integral Action Integral control action: u(t) = Ki ∫ t 0 e(𝜏)d𝜏, Ki : integral gain Controller transfer function: C(s) = Ki s [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 9 / 95
  • 20. Integral Action Integral control action: u(t) = Ki ∫ t 0 e(𝜏)d𝜏, Ki : integral gain Controller transfer function: C(s) = Ki s Advantage: zero steady state error [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 9 / 95
  • 21. Integral Action Integral control action: u(t) = Ki ∫ t 0 e(𝜏)d𝜏, Ki : integral gain Controller transfer function: C(s) = Ki s Advantage: zero steady state error Disadvantage: integrator windup in the presence of saturation [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 9 / 95
  • 22. PI Controller Proportional Integrator Controller: Transfer function: C(s) = Kp(1 + 1 Ti s ) [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 10 / 95
  • 23. PI Controller Proportional Integrator Controller: Transfer function: C(s) = Kp(1 + 1 Ti s ) Integral action is able to set automatically the value of ub. [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 10 / 95
  • 24. PI Controller Proportional Integrator Controller: Transfer function: C(s) = Kp(1 + 1 Ti s ) Integral action is able to set automatically the value of ub. The integral action is also called automatic reset. [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 10 / 95
  • 25. Derivative Action Derivative control action: u(t) = Kd de(t) dt , [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 11 / 95
  • 26. Derivative Action Derivative control action: u(t) = Kd de(t) dt , Kd : derivative gain [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 11 / 95
  • 27. Derivative Action Derivative control action: u(t) = Kd de(t) dt , Kd : derivative gain Controller transfer function: C(s) = Kd s [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 11 / 95
  • 28. Derivative Action Derivative control action: u(t) = Kd de(t) dt , Kd : derivative gain Controller transfer function: C(s) = Kd s Advantage: Derivative action is an instance of predictive control. [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 11 / 95
  • 29. Derivative Action Derivative control action: u(t) = Kd de(t) dt , Kd : derivative gain Controller transfer function: C(s) = Kd s Advantage: Derivative action is an instance of predictive control. Disadvantage: Sensitive to the measurement noise in the manipulated variable [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 11 / 95
  • 30. Derivative Action Derivative action is an instance of predictive control. [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 12 / 95
  • 31. Derivative Action Derivative action is an instance of predictive control. Taylor series expansion of the control error at time Td ahead: e(t + Td ) ≈ e(t) + Td de(t) dt [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 12 / 95
  • 32. Derivative Action Derivative action is an instance of predictive control. Taylor series expansion of the control error at time Td ahead: e(t + Td ) ≈ e(t) + Td de(t) dt A control law proportional to e(t + Td ) u(t) = Kp ( e(t) + Td de(t) dt ) [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 12 / 95
  • 33. Derivative Action Derivative action is an instance of predictive control. Taylor series expansion of the control error at time Td ahead: e(t + Td ) ≈ e(t) + Td de(t) dt A control law proportional to e(t + Td ) u(t) = Kp ( e(t) + Td de(t) dt ) Derivative action is also called anticipatory control, or rate action, or pre-act. [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 12 / 95
  • 34. PID Controller Transfer function: C(s) = Kp ( 1 + 1 Ti s + Td s ) Time windows: Proportional action responds to current error. Integrator action responds to accumulated past error. Derivative action anticipated future error. Peter Woolf umich.edu Behzad Samadi (Amirkabir University) Industrial Control 13 / 95
  • 35. PID Controller Transfer function: C(s) = Kp + Ki s + Kd s Frequency band: Proportional action: all-band Integrator action: low pass Derivative action: high pass [Li et al., 2006] Behzad Samadi (Amirkabir University) Industrial Control 14 / 95
  • 36. PID Controller Transfer function: C(s) = Kp + Ki s + Kd s [Li et al., 2006] Behzad Samadi (Amirkabir University) Industrial Control 15 / 95
  • 37. PID Controller Implementation methods: Pneumatic Hydraulic Electronic Digital Behzad Samadi (Amirkabir University) Industrial Control 16 / 95
  • 38. PID Controller Structures of PID controllers: Ideal or noninteracting form: Ci (s) = Kp ( 1 + 1 Ti s + Td s ) [Visioli, 2006] and [Astrom and Hagglund, 1995] Behzad Samadi (Amirkabir University) Industrial Control 17 / 95
  • 39. PID Controller Structures of PID controllers: Ideal or noninteracting form: Ci (s) = Kp ( 1 + 1 Ti s + Td s ) Series or interacting from: Cs(s) = K ′ p ( 1 + 1 T ′ i s ) (1 + T ′ d s) [Visioli, 2006] and [Astrom and Hagglund, 1995] Behzad Samadi (Amirkabir University) Industrial Control 17 / 95
  • 40. PID Controller Structures of PID controllers: Ideal or noninteracting form: Ci (s) = Kp ( 1 + 1 Ti s + Td s ) Series or interacting from: Cs(s) = K ′ p ( 1 + 1 T ′ i s ) (1 + T ′ d s) Parallel form: Ci (s) = Kp + Ki s + Kd s [Visioli, 2006] and [Astrom and Hagglund, 1995] Behzad Samadi (Amirkabir University) Industrial Control 17 / 95
  • 41. PID Controller Structures of PID controllers: [Astrom and Hagglund, 1995] Behzad Samadi (Amirkabir University) Industrial Control 18 / 95
  • 42. PID Controller Structures of PID controllers: Series to ideal form conversion: Kp =K ′ p T ′ i + T ′ d T ′ i Ti =T ′ i + Td ′ Td = T ′ i T ′ d T ′ i + T ′ d Behzad Samadi (Amirkabir University) Industrial Control 19 / 95
  • 43. PID Controller Structures of PID controllers: Ideal to series form conversion: Only if Ti ≥ 4Td K ′ p = Kp 2 ( 1 + √ 1 − 4 Td Ti ) T ′ i = Ti 2 ( 1 + √ 1 − 4 Td Ti ) T ′ d = Ti 2 ( 1 − √ 1 − 4 Td Ti ) [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 20 / 95
  • 44. PID Controller Alternative series form: Cs(s) = Kp(1 + 1 𝛼Ti s )(𝛼 + Td s) Ideal to alternative series form conversion: Only if Ti ≥ 4Td 𝛼 = 1 ± √ 1 − 4Td Ti 2 > 0 [Li et al., 2006] Behzad Samadi (Amirkabir University) Industrial Control 21 / 95
  • 45. PID Controller A PID controller has two zeros and one pole at the origin. Ti > 4Td : two real zeros Ti = 4Td : two coincident zeros Ti < 4Td : two complex conjugate zeros [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 22 / 95
  • 46. Problems with the Derivative Action Noise: n(t) = A sin(𝜔t) [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 23 / 95
  • 47. Problems with the Derivative Action Noise: n(t) = A sin(𝜔t) Derivative action: u(t) = A𝜔 cos(𝜔t) [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 23 / 95
  • 48. Problems with the Derivative Action Noise: n(t) = A sin(𝜔t) Derivative action: u(t) = A𝜔 cos(𝜔t) u(t) is large for high frequencies. [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 23 / 95
  • 49. Problems with the Derivative Action Noise: n(t) = A sin(𝜔t) Derivative action: u(t) = A𝜔 cos(𝜔t) u(t) is large for high frequencies. In practice, a (very) noisy control signal might lead to a damage of the actuator. [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 23 / 95
  • 50. Modified Derivative Action Modified ideal form: Ci1a(s) = Kp ( 1 + 1 Ti s + Td s Td N s + 1 ) [Visioli, 2006]Behzad Samadi (Amirkabir University) Industrial Control 24 / 95
  • 51. Modified Derivative Action Modified ideal form: Ci1a(s) = Kp ( 1 + 1 Ti s + Td s Td N s + 1 ) Gerry and Shinskey, 2005: Ci1b(s) = Kp ⎛ ⎜ ⎝1 + 1 Ti s + Td s 1 + Td N s + 0.5 ( Td N s )2 ⎞ ⎟ ⎠ [Visioli, 2006]Behzad Samadi (Amirkabir University) Industrial Control 24 / 95
  • 52. Modified Derivative Action Modified ideal form: Ci1a(s) = Kp ( 1 + 1 Ti s + Td s Td N s + 1 ) Gerry and Shinskey, 2005: Ci1b(s) = Kp ⎛ ⎜ ⎝1 + 1 Ti s + Td s 1 + Td N s + 0.5 ( Td N s )2 ⎞ ⎟ ⎠ Modified series form: Cs(s) = K ′ p ( 1 + 1 T ′ i s ) ⎛ ⎝T ′ d s + 1 T ′ d N s + 1 ⎞ ⎠ [Visioli, 2006]Behzad Samadi (Amirkabir University) Industrial Control 24 / 95
  • 53. Modified Derivative Action Modified ideal form: Ci1a(s) = Kp ( 1 + 1 Ti s + Td s Td N s + 1 ) Gerry and Shinskey, 2005: Ci1b(s) = Kp ⎛ ⎜ ⎝1 + 1 Ti s + Td s 1 + Td N s + 0.5 ( Td N s )2 ⎞ ⎟ ⎠ Modified series form: Cs(s) = K ′ p ( 1 + 1 T ′ i s ) ⎛ ⎝T ′ d s + 1 T ′ d N s + 1 ⎞ ⎠ N generally assumes a value between 1 and 33, although in the majority of the practical cases its setting falls between 8 and 16 (Ang et al., 2005). [Visioli, 2006]Behzad Samadi (Amirkabir University) Industrial Control 24 / 95
  • 54. Modified Derivative Action Alternative modified ideal form: Ci2a(s) = Kp ( 1 + 1 Ti s + Td s ) 1 Tf s + 1 [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 25 / 95
  • 55. Modified Derivative Action Alternative modified ideal form: Ci2a(s) = Kp ( 1 + 1 Ti s + Td s ) 1 Tf s + 1 ˚Astr¨om and H¨agglund, 2004: Ci2b(s) = Kp ( 1 + 1 Ti s + Td s ) 1 (Tf s + 1)2 [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 25 / 95
  • 56. Modified Derivative Action Alternative modified ideal form: Ci2a(s) = Kp ( 1 + 1 Ti s + Td s ) 1 Tf s + 1 ˚Astr¨om and H¨agglund, 2004: Ci2b(s) = Kp ( 1 + 1 Ti s + Td s ) 1 (Tf s + 1)2 Derivative kick: A spike in the control signal due to an abrupt (stepwise) change of the set-point signal. [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 25 / 95
  • 57. Modified Derivative Action Alternative modified ideal form: Ci2a(s) = Kp ( 1 + 1 Ti s + Td s ) 1 Tf s + 1 ˚Astr¨om and H¨agglund, 2004: Ci2b(s) = Kp ( 1 + 1 Ti s + Td s ) 1 (Tf s + 1)2 Derivative kick: A spike in the control signal due to an abrupt (stepwise) change of the set-point signal. If the set-point is constant, the derivative action can be applied only to the process variable: u(t) = −Kd dy(t) dt [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 25 / 95
  • 58. Derivative Action 80% of the employed PID controllers have the derivative part switched-off (Ang et al., 2005). [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 26 / 95
  • 59. Derivative Action 80% of the employed PID controllers have the derivative part switched-off (Ang et al., 2005). Derivative action is the most difficult to tune, why? [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 26 / 95
  • 60. Derivative Action 80% of the employed PID controllers have the derivative part switched-off (Ang et al., 2005). Derivative action is the most difficult to tune, why? Consider a first-order-plus-dead-time (FOPDT) plant: P(s) = K Ts + 1 e−Ls and a PD controller: C(s) = Kp(1 + Td s) [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 26 / 95
  • 61. Derivative Action 80% of the employed PID controllers have the derivative part switched-off (Ang et al., 2005). Derivative action is the most difficult to tune, why? Consider a first-order-plus-dead-time (FOPDT) plant: P(s) = K Ts + 1 e−Ls and a PD controller: C(s) = Kp(1 + Td s) Open loop frequency response: ∣C(j𝜔)P(j𝜔)∣ = KKp √ 1 + T2 d 𝜔2 1 + T2𝜔2 [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 26 / 95
  • 62. Derivative Action Open loop frequency response: KKp √ 1 + T2 d 𝜔2 1 + T2𝜔2 ≥ KKp min ( 1, Td T ) [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 27 / 95
  • 63. Derivative Action Open loop frequency response: KKp √ 1 + T2 d 𝜔2 1 + T2𝜔2 ≥ KKp min ( 1, Td T ) Td ≥ T ⇒ min ( 1, Td T ) = 1 [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 27 / 95
  • 64. Derivative Action Open loop frequency response: KKp √ 1 + T2 d 𝜔2 1 + T2𝜔2 ≥ KKp min ( 1, Td T ) Td ≥ T ⇒ min ( 1, Td T ) = 1 If Td ≥ T and KKp > 1, then ∣C(j𝜔)P(j𝜔)∣ ≥ 1 [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 27 / 95
  • 65. Derivative Action Open loop frequency response: KKp √ 1 + T2 d 𝜔2 1 + T2𝜔2 ≥ KKp min ( 1, Td T ) Td ≥ T ⇒ min ( 1, Td T ) = 1 If Td ≥ T and KKp > 1, then ∣C(j𝜔)P(j𝜔)∣ ≥ 1 Td ≤ T ⇒ min ( 1, Td T ) = Td T [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 27 / 95
  • 66. Derivative Action Open loop frequency response: KKp √ 1 + T2 d 𝜔2 1 + T2𝜔2 ≥ KKp min ( 1, Td T ) Td ≥ T ⇒ min ( 1, Td T ) = 1 If Td ≥ T and KKp > 1, then ∣C(j𝜔)P(j𝜔)∣ ≥ 1 Td ≤ T ⇒ min ( 1, Td T ) = Td T If Td ≤ T and KKp Td T > 1, then ∣C(j𝜔)P(j𝜔)∣ ≥ 1 [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 27 / 95
  • 67. Frequency Response The magnitude of the open-loop transfer function is not less than 0 dB. As a consequence, since the phase decreases when the frequency increases because of the time delay, the closed-loop system will be unstable. [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 28 / 95
  • 68. Derivative Action Consider the following process: P(s) = 2 s + 1 e−0.2s controlled by a PID controller in series form with Kp = 1 and Ti = 1. Behzad Samadi (Amirkabir University) Industrial Control 29 / 95
  • 69. Derivative Action Consider the following process: P(s) = 2 s + 1 e−0.2s controlled by a PID controller in series form with Kp = 1 and Ti = 1. If Td = 0.01, GM=12.3dB, PM=68.2 deg. Behzad Samadi (Amirkabir University) Industrial Control 29 / 95
  • 70. Derivative Action Consider the following process: P(s) = 2 s + 1 e−0.2s controlled by a PID controller in series form with Kp = 1 and Ti = 1. If Td = 0.01, GM=12.3dB, PM=68.2 deg. If Td = 0.05, GM=13.2dB, PM=72.7 deg. Behzad Samadi (Amirkabir University) Industrial Control 29 / 95
  • 71. Derivative Action Consider the following process: P(s) = 2 s + 1 e−0.2s controlled by a PID controller in series form with Kp = 1 and Ti = 1. If Td = 0.01, GM=12.3dB, PM=68.2 deg. If Td = 0.05, GM=13.2dB, PM=72.7 deg. If Td = 0.5, the system stability is lost! Behzad Samadi (Amirkabir University) Industrial Control 29 / 95
  • 72. Derivative Action Consider the following process: P(s) = 2 s + 1 e−0.2s controlled by a PID controller in series form with Kp = 1 and Ti = 1. If Td = 0.01, GM=12.3dB, PM=68.2 deg. If Td = 0.05, GM=13.2dB, PM=72.7 deg. If Td = 0.5, the system stability is lost! Behzad Samadi (Amirkabir University) Industrial Control 29 / 95
  • 73. Derivative Action Consider the following process: P(s) = 2 s + 1 e−0.2s controlled by a PID controller in series form with Kp = 1 and Ti = 1. If Td = 0.01, GM=12.3dB, PM=68.2 deg. If Td = 0.05, GM=13.2dB, PM=72.7 deg. If Td = 0.5, the system stability is lost! In summary: Sensitive to noise Hard to tune (4 parameters) [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 29 / 95
  • 74. Integral Windup Behzad Samadi (Amirkabir University) Industrial Control 30 / 95
  • 75. Integral Windup Solid: process output, Dashed: process input, Dotted: integral term [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 30 / 95
  • 76. Conditional Integration The integral term is limited to a predefined value. [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 31 / 95
  • 77. Conditional Integration The integral term is limited to a predefined value. The integration is stopped when the error is greater than a predefined threshold, namely, when the process variable value is far from the setpoint value. [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 31 / 95
  • 78. Conditional Integration The integral term is limited to a predefined value. The integration is stopped when the error is greater than a predefined threshold, namely, when the process variable value is far from the setpoint value. The integration is stopped when the control variable saturates, i.e., when u ′ ∕= u. [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 31 / 95
  • 79. Conditional Integration The integral term is limited to a predefined value. The integration is stopped when the error is greater than a predefined threshold, namely, when the process variable value is far from the setpoint value. The integration is stopped when the control variable saturates, i.e., when u ′ ∕= u. The integration is stopped when the control variable saturates and the control error and the control variable have the same sign (i.e., when ue > 0). [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 31 / 95
  • 80. Anti-windup for Automatic Reset Configuration Automatic reset: [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 32 / 95
  • 81. Anti-windup for Automatic Reset Configuration Automatic reset: Limiting the controller output: [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 32 / 95
  • 82. Anti-windup for Automatic Reset Configuration Automatic reset: Limiting the controller output: Limiting the integrator output: [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 32 / 95
  • 83. Back-calculation Integrator input: ei = Kp Ti e + 1 Tt (u ′ − u) Behzad Samadi (Amirkabir University) Industrial Control 33 / 95
  • 84. Back-calculation Integrator input: ei = Kp Ti e + 1 Tt (u ′ − u) Tuning rule for Tt (˚Astr¨om and H¨agglund 1995): Tt = √ Td Ti Behzad Samadi (Amirkabir University) Industrial Control 33 / 95
  • 85. Back-calculation Integrator input: ei = Kp Ti e + 1 Tt (u ′ − u) Tuning rule for Tt (˚Astr¨om and H¨agglund 1995): Tt = √ Td Ti Behzad Samadi (Amirkabir University) Industrial Control 33 / 95
  • 86. Back-calculation Integrator input: ei = Kp Ti e + 1 Tt (u ′ − u) Tuning rule for Tt (˚Astr¨om and H¨agglund 1995): Tt = √ Td Ti Not useful for a PI controller [Visioli, 2006]Behzad Samadi (Amirkabir University) Industrial Control 33 / 95
  • 87. Back-calculation Integrator input: ei = Kp Ti e + 1 Tt (u ′ − u) [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 34 / 95
  • 88. Back-calculation Integrator input: ei = Kp Ti e + 1 Tt (u ′ − u) Bohn and Atherton, 1995 suggest Tt = Ti . [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 34 / 95
  • 89. Back-calculation Integrator input: ei = Kp Ti e + 1 Tt (u ′ − u) Bohn and Atherton, 1995 suggest Tt = Ti . Conditioning technique (Hanus et al., 1987;Walgama et al., 1991): This is a tracking rule (u tracks u ′ ). In this framework: Tt = Kp [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 34 / 95
  • 90. PID with Tracking Input SP: Setpoint, MV: Manipulated Variable, TR: Tracking Input [Astrom and Hagglund, 1995] Behzad Samadi (Amirkabir University) Industrial Control 35 / 95
  • 91. Bumpless Transfer Bumpless Transfer between Manual (M) and Automatic (A) A is to track M in this case. [Visioli, 2006] Behzad Samadi (Amirkabir University) Industrial Control 36 / 95
  • 92. Bumpless Transfer Bumpless Transfer between Manual (M) and Automatic (A) Behzad Samadi (Amirkabir University) Industrial Control 37 / 95
  • 93. Bumpless Transfer Bumpless Transfer between Manual (M) and Automatic (A) Incremental manual input [Astrom and Hagglund, 1995] Behzad Samadi (Amirkabir University) Industrial Control 37 / 95
  • 94. Bumpless Transfer Manual Control Module: [Astrom and Hagglund, 1995] Behzad Samadi (Amirkabir University) Industrial Control 38 / 95
  • 95. Bumpless Transfer PID with Manual Switch: [Astrom and Hagglund, 1995] Behzad Samadi (Amirkabir University) Industrial Control 39 / 95
  • 96. PID Controller Design In process industries, more than 97% of the regulatory controllers are of the PID type. [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 40 / 95
  • 97. PID Controller Design In process industries, more than 97% of the regulatory controllers are of the PID type. Most loops are actually under PI control (as a result of the large number of flow loops). [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 40 / 95
  • 98. PID Controller Design In process industries, more than 97% of the regulatory controllers are of the PID type. Most loops are actually under PI control (as a result of the large number of flow loops). Pulp and paper industry over 2000 loops: [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 40 / 95
  • 99. PID Controller Design In process industries, more than 97% of the regulatory controllers are of the PID type. Most loops are actually under PI control (as a result of the large number of flow loops). Pulp and paper industry over 2000 loops: Only 20% of loops worked well (i.e. less variability in the automatic mode over the manual mode). [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 40 / 95
  • 100. PID Controller Design In process industries, more than 97% of the regulatory controllers are of the PID type. Most loops are actually under PI control (as a result of the large number of flow loops). Pulp and paper industry over 2000 loops: Only 20% of loops worked well (i.e. less variability in the automatic mode over the manual mode). 30% gave poor performance due to poor controller tuning. [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 40 / 95
  • 101. PID Controller Design In process industries, more than 97% of the regulatory controllers are of the PID type. Most loops are actually under PI control (as a result of the large number of flow loops). Pulp and paper industry over 2000 loops: Only 20% of loops worked well (i.e. less variability in the automatic mode over the manual mode). 30% gave poor performance due to poor controller tuning. 30% gave poor performance due to control valve problems (e.g. control valve stick-slip, dead band, backlash). [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 40 / 95
  • 102. PID Controller Design In process industries, more than 97% of the regulatory controllers are of the PID type. Most loops are actually under PI control (as a result of the large number of flow loops). Pulp and paper industry over 2000 loops: Only 20% of loops worked well (i.e. less variability in the automatic mode over the manual mode). 30% gave poor performance due to poor controller tuning. 30% gave poor performance due to control valve problems (e.g. control valve stick-slip, dead band, backlash). 20% gave poor performance due to process and/or control system design problems. [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 40 / 95
  • 103. PID Controller Design Process industries: [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
  • 104. PID Controller Design Process industries: 30% of loops operated on manual mode. [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
  • 105. PID Controller Design Process industries: 30% of loops operated on manual mode. 20% of controllers used factory tuning. [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
  • 106. PID Controller Design Process industries: 30% of loops operated on manual mode. 20% of controllers used factory tuning. 30% gave poor performance due to sensor and control valve problems. [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
  • 107. PID Controller Design Process industries: 30% of loops operated on manual mode. 20% of controllers used factory tuning. 30% gave poor performance due to sensor and control valve problems. Chemical process industry: [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
  • 108. PID Controller Design Process industries: 30% of loops operated on manual mode. 20% of controllers used factory tuning. 30% gave poor performance due to sensor and control valve problems. Chemical process industry: Half of the control valves needed to be fixed (results of the Fisher diagnostic valve package). [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
  • 109. PID Controller Design Process industries: 30% of loops operated on manual mode. 20% of controllers used factory tuning. 30% gave poor performance due to sensor and control valve problems. Chemical process industry: Half of the control valves needed to be fixed (results of the Fisher diagnostic valve package). Most poor tuning was due to control valve problems. [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
  • 110. PID Controller Design Process industries: 30% of loops operated on manual mode. 20% of controllers used factory tuning. 30% gave poor performance due to sensor and control valve problems. Chemical process industry: Half of the control valves needed to be fixed (results of the Fisher diagnostic valve package). Most poor tuning was due to control valve problems. Refining, chemicals, and pulp and paper industries over 26,000 controllers: [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
  • 111. PID Controller Design Process industries: 30% of loops operated on manual mode. 20% of controllers used factory tuning. 30% gave poor performance due to sensor and control valve problems. Chemical process industry: Half of the control valves needed to be fixed (results of the Fisher diagnostic valve package). Most poor tuning was due to control valve problems. Refining, chemicals, and pulp and paper industries over 26,000 controllers: Only 32% of loops were classified as excellent or acceptable. [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
  • 112. PID Controller Design Process industries: 30% of loops operated on manual mode. 20% of controllers used factory tuning. 30% gave poor performance due to sensor and control valve problems. Chemical process industry: Half of the control valves needed to be fixed (results of the Fisher diagnostic valve package). Most poor tuning was due to control valve problems. Refining, chemicals, and pulp and paper industries over 26,000 controllers: Only 32% of loops were classified as excellent or acceptable. 32% of controllers were classified as fair or poor, which indicates unacceptably sluggish or oscillatory responses. [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
  • 113. PID Controller Design Process industries: 30% of loops operated on manual mode. 20% of controllers used factory tuning. 30% gave poor performance due to sensor and control valve problems. Chemical process industry: Half of the control valves needed to be fixed (results of the Fisher diagnostic valve package). Most poor tuning was due to control valve problems. Refining, chemicals, and pulp and paper industries over 26,000 controllers: Only 32% of loops were classified as excellent or acceptable. 32% of controllers were classified as fair or poor, which indicates unacceptably sluggish or oscillatory responses. 36% of controllers were on open- loop, which implies that the controllers were either in manual or virtually saturated. [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
  • 114. PID Controller Design Process industries: 30% of loops operated on manual mode. 20% of controllers used factory tuning. 30% gave poor performance due to sensor and control valve problems. Chemical process industry: Half of the control valves needed to be fixed (results of the Fisher diagnostic valve package). Most poor tuning was due to control valve problems. Refining, chemicals, and pulp and paper industries over 26,000 controllers: Only 32% of loops were classified as excellent or acceptable. 32% of controllers were classified as fair or poor, which indicates unacceptably sluggish or oscillatory responses. 36% of controllers were on open- loop, which implies that the controllers were either in manual or virtually saturated. PID algorithms are used in vast majority of applications (97%). For the rare cases of complex dynamics or significant dead time, other algorithms are used. [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 41 / 95
  • 115. PID Controller Design Ziegler-Nichols PID Tuning Method: Ziegler-Nichols closed-loop tuning method Ziegler-Nichols open-loop tuning method Ziegler, Nichols, “Optimum settings for automatic controllers”, Trans. ASME, 64, pp. 759-768, 1942 [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 42 / 95
  • 116. PID Controller Design Ziegler-Nichols closed-loop tuning method: 1 Remove integral and derivative action. Behzad Samadi (Amirkabir University) Industrial Control 43 / 95
  • 117. PID Controller Design Ziegler-Nichols closed-loop tuning method: 1 Remove integral and derivative action. 2 Create a small disturbance in the loop by changing the set point. Adjust the proportional, increasing and/or decreasing, the gain until the oscillations have constant amplitude. Behzad Samadi (Amirkabir University) Industrial Control 43 / 95
  • 118. PID Controller Design Ziegler-Nichols closed-loop tuning method: 1 Remove integral and derivative action. 2 Create a small disturbance in the loop by changing the set point. Adjust the proportional, increasing and/or decreasing, the gain until the oscillations have constant amplitude. 3 Record the gain value (Ku) and period of oscillation (Pu). Behzad Samadi (Amirkabir University) Industrial Control 43 / 95
  • 119. PID Controller Design Ziegler-Nichols closed-loop tuning method: 1 Remove integral and derivative action. 2 Create a small disturbance in the loop by changing the set point. Adjust the proportional, increasing and/or decreasing, the gain until the oscillations have constant amplitude. 3 Record the gain value (Ku) and period of oscillation (Pu). Behzad Samadi (Amirkabir University) Industrial Control 43 / 95
  • 120. PID Controller Design Ziegler-Nichols closed-loop tuning method: 1 Remove integral and derivative action. 2 Create a small disturbance in the loop by changing the set point. Adjust the proportional, increasing and/or decreasing, the gain until the oscillations have constant amplitude. 3 Record the gain value (Ku) and period of oscillation (Pu). [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 43 / 95
  • 121. PID Controller Design Ziegler-Nichols closed-loop tuning method: [Love, 2007] Behzad Samadi (Amirkabir University) Industrial Control 44 / 95
  • 122. PID Controller Design Ziegler-Nichols closed-loop tuning method (ultimate cycle method): C(s) = Kp(1 + 1 Ti s + Td s) Kp Ti Td P Controller Ku/2 - - PI Controller Ku/2.2 Pu/1.2 - PID Controller Ku/1.7 Pu/2 Pu/8 [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 45 / 95
  • 123. PID Controller Design Ziegler-Nichols closed-loop tuning method: Advantages: [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 46 / 95
  • 124. PID Controller Design Ziegler-Nichols closed-loop tuning method: Advantages: Easy experiment; only need to change the P controller [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 46 / 95
  • 125. PID Controller Design Ziegler-Nichols closed-loop tuning method: Advantages: Easy experiment; only need to change the P controller Includes dynamics of whole process, which gives a more accurate picture of how the system is behaving [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 46 / 95
  • 126. PID Controller Design Ziegler-Nichols closed-loop tuning method: Advantages: Easy experiment; only need to change the P controller Includes dynamics of whole process, which gives a more accurate picture of how the system is behaving Disadvantages: [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 46 / 95
  • 127. PID Controller Design Ziegler-Nichols closed-loop tuning method: Advantages: Easy experiment; only need to change the P controller Includes dynamics of whole process, which gives a more accurate picture of how the system is behaving Disadvantages: Experiment can be time consuming [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 46 / 95
  • 128. PID Controller Design Ziegler-Nichols closed-loop tuning method: Advantages: Easy experiment; only need to change the P controller Includes dynamics of whole process, which gives a more accurate picture of how the system is behaving Disadvantages: Experiment can be time consuming Can venture into unstable regions while testing the P controller, which could cause the system to become out of control [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 46 / 95
  • 129. PID Controller Design Ziegler-Nichols closed-loop tuning method: Advantages: Easy experiment; only need to change the P controller Includes dynamics of whole process, which gives a more accurate picture of how the system is behaving Disadvantages: Experiment can be time consuming Can venture into unstable regions while testing the P controller, which could cause the system to become out of control It does not hold for I, D and PD controllers. [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 46 / 95
  • 130. PID Controller Design Process Reaction Curve: P: the size of the step disturbance in the setpoint L: the time taken from the moment the disturbance was introduced to the first sign of change in the output signal ΔCp: the change in output signal in response to the initial step disturbance T: the time taken for this change to occur [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 47 / 95
  • 131. PID Controller Design Process Reaction Curve: N = ΔCp T : reaction rate [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 48 / 95
  • 132. PID Controller Design Ziegler-Nichols open-loop tuning method (process reaction method): C(s) = Kp(1 + 1 Ti s + Td s) Kp Ti Td P Controller K - - PI Controller 0.9K L/0.3 - PID Controller 1.2K 2L 0.5L K = P NL [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 49 / 95
  • 133. PID Controller Design Ziegler-Nichols open-loop tuning method: Advantages: [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 50 / 95
  • 134. PID Controller Design Ziegler-Nichols open-loop tuning method: Advantages: Quick and easier to use than other methods [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 50 / 95
  • 135. PID Controller Design Ziegler-Nichols open-loop tuning method: Advantages: Quick and easier to use than other methods It is a robust and popular method [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 50 / 95
  • 136. PID Controller Design Ziegler-Nichols open-loop tuning method: Advantages: Quick and easier to use than other methods It is a robust and popular method Of these two techniques, the Process Reaction Method is the easiest and least disruptive to implement [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 50 / 95
  • 137. PID Controller Design Ziegler-Nichols open-loop tuning method: Advantages: Quick and easier to use than other methods It is a robust and popular method Of these two techniques, the Process Reaction Method is the easiest and least disruptive to implement Disadvantages: [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 50 / 95
  • 138. PID Controller Design Ziegler-Nichols open-loop tuning method: Advantages: Quick and easier to use than other methods It is a robust and popular method Of these two techniques, the Process Reaction Method is the easiest and least disruptive to implement Disadvantages: It depends upon purely proportional measurement to estimate I and D controllers. [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 50 / 95
  • 139. PID Controller Design Ziegler-Nichols open-loop tuning method: Advantages: Quick and easier to use than other methods It is a robust and popular method Of these two techniques, the Process Reaction Method is the easiest and least disruptive to implement Disadvantages: It depends upon purely proportional measurement to estimate I and D controllers. Approximations for the Kc , Ti , and Td values might not be entirely accurate for different systems. [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 50 / 95
  • 140. PID Controller Design Ziegler-Nichols open-loop tuning method: Advantages: Quick and easier to use than other methods It is a robust and popular method Of these two techniques, the Process Reaction Method is the easiest and least disruptive to implement Disadvantages: It depends upon purely proportional measurement to estimate I and D controllers. Approximations for the Kc , Ti , and Td values might not be entirely accurate for different systems. It does not hold for I, D and PD controllers. [Woolf, 2007] Behzad Samadi (Amirkabir University) Industrial Control 50 / 95
  • 141. PID Controller Design Summary: Ziegler-Nichols closed-loop tuning method: Gain margin of 2 Ziegler-Nichols open-loop tuning method: Decay ratio of 0.25 Behzad Samadi (Amirkabir University) Industrial Control 51 / 95
  • 142. PID Controller Design Ziegler-Nichols closed-loop tuning methods: G(s) = Ke−Ds 𝜏s + 1 [Yu, 2007] Behzad Samadi (Amirkabir University) Industrial Control 52 / 95
  • 143. PID Controller Design Ziegler-Nichols closed-loop tuning methods: G(s) = Ke−td s 𝜏s + 1 Quarter decay ration for 0 < td 𝜏 < 1 [O’Dwyer, 2002] [Chau, 2002] Behzad Samadi (Amirkabir University) Industrial Control 53 / 95
  • 144. PID Controller Design Quantities to characterize the error: Maximum error: max e(t) [Astrom and Hagglund, 1995] Behzad Samadi (Amirkabir University) Industrial Control 54 / 95
  • 145. PID Controller Design Quantities to characterize the error: Maximum error: max e(t) Integrated Absolute Error: IAE = ∫ ∞ 0 ∣e(t)∣dt [Astrom and Hagglund, 1995] Behzad Samadi (Amirkabir University) Industrial Control 54 / 95
  • 146. PID Controller Design Quantities to characterize the error: Maximum error: max e(t) Integrated Absolute Error: IAE = ∫ ∞ 0 ∣e(t)∣dt Integrated Error for non-oscillatory processes: IE = ∫ ∞ 0 e(t)dt [Astrom and Hagglund, 1995] Behzad Samadi (Amirkabir University) Industrial Control 54 / 95
  • 147. PID Controller Design Quantities to characterize the error: Maximum error: max e(t) Integrated Absolute Error: IAE = ∫ ∞ 0 ∣e(t)∣dt Integrated Error for non-oscillatory processes: IE = ∫ ∞ 0 e(t)dt Integrated Squared Error: ISE = ∫ ∞ 0 e2(t)dt [Astrom and Hagglund, 1995] Behzad Samadi (Amirkabir University) Industrial Control 54 / 95
  • 148. PID Controller Design Quantities to characterize the error: Maximum error: max e(t) Integrated Absolute Error: IAE = ∫ ∞ 0 ∣e(t)∣dt Integrated Error for non-oscillatory processes: IE = ∫ ∞ 0 e(t)dt Integrated Squared Error: ISE = ∫ ∞ 0 e2(t)dt Integrated Time Absolute Error: ITAE = ∫ ∞ 0 t∣e(t)∣dt [Astrom and Hagglund, 1995] Behzad Samadi (Amirkabir University) Industrial Control 54 / 95
  • 149. PID Controller Design Quantities to characterize the error: Maximum error: max e(t) Integrated Absolute Error: IAE = ∫ ∞ 0 ∣e(t)∣dt Integrated Error for non-oscillatory processes: IE = ∫ ∞ 0 e(t)dt Integrated Squared Error: ISE = ∫ ∞ 0 e2(t)dt Integrated Time Absolute Error: ITAE = ∫ ∞ 0 t∣e(t)∣dt Integrated Time Error: ITE = ∫ ∞ 0 te(t)dt [Astrom and Hagglund, 1995] Behzad Samadi (Amirkabir University) Industrial Control 54 / 95
  • 150. PID Controller Design Quantities to characterize the error: Maximum error: max e(t) Integrated Absolute Error: IAE = ∫ ∞ 0 ∣e(t)∣dt Integrated Error for non-oscillatory processes: IE = ∫ ∞ 0 e(t)dt Integrated Squared Error: ISE = ∫ ∞ 0 e2(t)dt Integrated Time Absolute Error: ITAE = ∫ ∞ 0 t∣e(t)∣dt Integrated Time Error: ITE = ∫ ∞ 0 te(t)dt Integrated Time Squared Error: ITSE = ∫ ∞ 0 te2(t)dt [Astrom and Hagglund, 1995] Behzad Samadi (Amirkabir University) Industrial Control 54 / 95
  • 151. PID Controller Design Quantities to characterize the error: Maximum error: max e(t) Integrated Absolute Error: IAE = ∫ ∞ 0 ∣e(t)∣dt Integrated Error for non-oscillatory processes: IE = ∫ ∞ 0 e(t)dt Integrated Squared Error: ISE = ∫ ∞ 0 e2(t)dt Integrated Time Absolute Error: ITAE = ∫ ∞ 0 t∣e(t)∣dt Integrated Time Error: ITE = ∫ ∞ 0 te(t)dt Integrated Time Squared Error: ITSE = ∫ ∞ 0 te2(t)dt Integrated Squared Time Error: ISTE = ∫ ∞ 0 t2e2(t)dt [Astrom and Hagglund, 1995] Behzad Samadi (Amirkabir University) Industrial Control 54 / 95
  • 152. PID Controller Design ITAE optimization: G(s) = Ke−td s 𝜏s + 1 [Chau, 2002] Behzad Samadi (Amirkabir University) Industrial Control 55 / 95
  • 153. PID Controller Design Ciancone and Marlin Tuning: G(s) = Ke−td s 𝜏s + 1 Fractional dead time: Tf = td td +𝜏 Using Tf , compute 𝜇CM and 𝜏CM: Tf 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 𝜇CM 1.1 1.1 1.8 1.1 1.0 0.8 0.59 0.42 0.32 𝜏CM 0.23 0.23 0.23 0.72 0.72 0.70 0.67 0.60 0.53 Compute the controller gains: Kp = 𝜇CM K , Ti = 𝜏CM(td + 𝜏) Minimizing IAE or ISE [Chau, 2002] Behzad Samadi (Amirkabir University) Industrial Control 56 / 95
  • 154. PID Controller Design Ciancone and Marlin PI Tuning: [Chau, 2002] Behzad Samadi (Amirkabir University) Industrial Control 57 / 95
  • 155. PID Controller Design Ciancone and Marlin PID Tuning: [Chau, 2002] Behzad Samadi (Amirkabir University) Industrial Control 58 / 95
  • 156. PID Controller Design Direct Synthesis: We have: C R = GcGp 1 + GcGp Therefore: Gc = 1 Gp C/R 1 − C/R [Chau, 2002] Behzad Samadi (Amirkabir University) Industrial Control 59 / 95
  • 157. PID Controller Design Direct Synthesis: C R = 1 𝜏cs + 1 ⇒ Gc = 1 Gp ( 1 𝜏cs ) Behzad Samadi (Amirkabir University) Industrial Control 60 / 95
  • 158. PID Controller Design Direct Synthesis: C R = 1 𝜏cs + 1 ⇒ Gc = 1 Gp ( 1 𝜏cs ) Example: Gp = Kp 𝜏ps + 1 ⇒ Gc = 𝜏p Kp𝜏c ( 1 + 1 𝜏ps ) [Chau, 2002] Behzad Samadi (Amirkabir University) Industrial Control 60 / 95
  • 159. PID Controller Design Direct Synthesis: For delayed systems: C R = e−𝜃s 𝜏cs + 1 ⇒ Gc = 1 Gp ( e−𝜃s (𝜏cs + 1) − e−𝜃s ) Behzad Samadi (Amirkabir University) Industrial Control 61 / 95
  • 160. PID Controller Design Direct Synthesis: For delayed systems: C R = e−𝜃s 𝜏cs + 1 ⇒ Gc = 1 Gp ( e−𝜃s (𝜏cs + 1) − e−𝜃s ) Considering e−𝜃s ≈ 1 − 𝜃s: Gc ≈ 1 Gp ( e−𝜃s (𝜏c + 𝜃)s ) Behzad Samadi (Amirkabir University) Industrial Control 61 / 95
  • 161. PID Controller Design Direct Synthesis: For delayed systems: C R = e−𝜃s 𝜏cs + 1 ⇒ Gc = 1 Gp ( e−𝜃s (𝜏cs + 1) − e−𝜃s ) Considering e−𝜃s ≈ 1 − 𝜃s: Gc ≈ 1 Gp ( e−𝜃s (𝜏c + 𝜃)s ) Behzad Samadi (Amirkabir University) Industrial Control 61 / 95
  • 162. PID Controller Design Direct Synthesis: For delayed systems: C R = e−𝜃s 𝜏cs + 1 ⇒ Gc = 1 Gp ( e−𝜃s (𝜏cs + 1) − e−𝜃s ) Considering e−𝜃s ≈ 1 − 𝜃s: Gc ≈ 1 Gp ( e−𝜃s (𝜏c + 𝜃)s ) Example: Gp = Kpe−td s 𝜏ps + 1 ⇒ Gc = 𝜏p Kp(𝜏c + 𝜃) ( 1 + 1 𝜏ps ) for 𝜃 = td [Chau, 2002] Behzad Samadi (Amirkabir University) Industrial Control 61 / 95
  • 163. PID Controller Design Direct Synthesis: Second order underdamped desired response: C R = 1 𝜏2s2 + 2𝜁𝜏s + 1 ⇒ Gc = 1 Gp ( 1 𝜏2s2 + 2𝜁𝜏s ) Behzad Samadi (Amirkabir University) Industrial Control 62 / 95
  • 164. PID Controller Design Direct Synthesis: Second order underdamped desired response: C R = 1 𝜏2s2 + 2𝜁𝜏s + 1 ⇒ Gc = 1 Gp ( 1 𝜏2s2 + 2𝜁𝜏s ) Behzad Samadi (Amirkabir University) Industrial Control 62 / 95
  • 165. PID Controller Design Direct Synthesis: Second order underdamped desired response: C R = 1 𝜏2s2 + 2𝜁𝜏s + 1 ⇒ Gc = 1 Gp ( 1 𝜏2s2 + 2𝜁𝜏s ) Example: Gp = Kp (𝜏1s + 1)(𝜏2s + 1) ⇒ Gc = (𝜏1s + 1)(𝜏2s + 1) Kp𝜏s(𝜏s + 2𝜁) Behzad Samadi (Amirkabir University) Industrial Control 62 / 95
  • 166. PID Controller Design Direct Synthesis: Second order underdamped desired response: C R = 1 𝜏2s2 + 2𝜁𝜏s + 1 ⇒ Gc = 1 Gp ( 1 𝜏2s2 + 2𝜁𝜏s ) Example: Gp = Kp (𝜏1s + 1)(𝜏2s + 1) ⇒ Gc = (𝜏1s + 1)(𝜏2s + 1) Kp𝜏s(𝜏s + 2𝜁) Assuming 𝜏2 > 𝜏1 and 𝜏 = 2𝜁𝜏2 Gc = 𝜏1 4Kp𝜁2𝜏2 ( 1 + 1 𝜏1s ) [Chau, 2002] Behzad Samadi (Amirkabir University) Industrial Control 62 / 95
  • 167. PID Controller Design Internal Model Control: Assume that we have an approximate model ˜Gp of the process Gp Open loop: Gc = ˜G−1 p Behzad Samadi (Amirkabir University) Industrial Control 63 / 95
  • 168. PID Controller Design Internal Model Control: Assume that we have an approximate model ˜Gp of the process Gp Open loop: Gc = ˜G−1 p Closed loop: Behzad Samadi (Amirkabir University) Industrial Control 63 / 95
  • 169. PID Controller Design Internal Model Control: P = G★ c (R − C + ˜C) = G★ c (R − C + ˜GpP) Behzad Samadi (Amirkabir University) Industrial Control 64 / 95
  • 170. PID Controller Design Internal Model Control: P = G★ c (R − C + ˜C) = G★ c (R − C + ˜GpP) Therefore: P = G★ c 1 − G★ c ˜Gp (R−C) Behzad Samadi (Amirkabir University) Industrial Control 64 / 95
  • 171. PID Controller Design Internal Model Control: P = G★ c (R − C + ˜C) = G★ c (R − C + ˜GpP) Therefore: P = G★ c 1 − G★ c ˜Gp (R−C) P = Gc(R − C) Therefore: Gc = G★ c 1−G★ c ˜Gp [Chau, 2002]Behzad Samadi (Amirkabir University) Industrial Control 64 / 95
  • 172. PID Controller Design Internal Model Control: Closed loop transfer function: C = [ (1 − G★ c ˜Gp)GL 1 + G★ c (Gp − ˜Gp) ] L + [ GpG★ c 1 + G★ c (Gp − ˜Gp) ] R [Chau, 2002] Behzad Samadi (Amirkabir University) Industrial Control 65 / 95
  • 173. PID Controller Design Internal Model Control: Closed loop transfer function: C = [ (1 − G★ c ˜Gp)GL 1 + G★ c (Gp − ˜Gp) ] L + [ GpG★ c 1 + G★ c (Gp − ˜Gp) ] R How to choose G★ c : ˜Gp = ˜Gp+ ˜Gp− ˜Gp+ contains all positive zeros if any. [Chau, 2002] Behzad Samadi (Amirkabir University) Industrial Control 65 / 95
  • 174. PID Controller Design Internal Model Control: Closed loop transfer function: C = [ (1 − G★ c ˜Gp)GL 1 + G★ c (Gp − ˜Gp) ] L + [ GpG★ c 1 + G★ c (Gp − ˜Gp) ] R How to choose G★ c : ˜Gp = ˜Gp+ ˜Gp− ˜Gp+ contains all positive zeros if any. The design is based on ˜Gp− only: G★ c = 1 ˜Gp− [ 1 𝜏cs + 1 ]r r = 1, 2 [Chau, 2002] Behzad Samadi (Amirkabir University) Industrial Control 65 / 95
  • 175. PID Controller Design Pad´e Approximation of Delays: e−td s ≈ Nd (s) Dd (s) http://mathworld.wolfram.com/PadeApproximant.html Behzad Samadi (Amirkabir University) Industrial Control 66 / 95
  • 176. PID Controller Design Pad´e Approximation of Delays: e−td s ≈ Nd (s) Dd (s) Gd1/0(s) = 1 − td s http://mathworld.wolfram.com/PadeApproximant.html Behzad Samadi (Amirkabir University) Industrial Control 66 / 95
  • 177. PID Controller Design Pad´e Approximation of Delays: e−td s ≈ Nd (s) Dd (s) Gd1/0(s) = 1 − td s Gd0/1(s) = 1 1+td s http://mathworld.wolfram.com/PadeApproximant.html Behzad Samadi (Amirkabir University) Industrial Control 66 / 95
  • 178. PID Controller Design Pad´e Approximation of Delays: e−td s ≈ Nd (s) Dd (s) Gd1/0(s) = 1 − td s Gd0/1(s) = 1 1+td s Gd1/1(s) = − td 2 s+1 td 2 s+1 http://mathworld.wolfram.com/PadeApproximant.html Behzad Samadi (Amirkabir University) Industrial Control 66 / 95
  • 179. PID Controller Design Pad´e Approximation of Delays: e−td s ≈ Nd (s) Dd (s) Gd1/0(s) = 1 − td s Gd0/1(s) = 1 1+td s Gd1/1(s) = − td 2 s+1 td 2 s+1 Gd2/2(s) = t2 d 12 s2− td 2 s+1 t2 d 12 s2+ td 2 s+1 http://mathworld.wolfram.com/PadeApproximant.html Behzad Samadi (Amirkabir University) Industrial Control 66 / 95
  • 180. PID Controller Design Internal Model Control: Example: ˜Gp = Kpe−td s 𝜏ps+1 ˜Gp ≈ Kp (𝜏ps + 1)(td 2 s + 1) ( − td 2 s + 1 ) Behzad Samadi (Amirkabir University) Industrial Control 67 / 95
  • 181. PID Controller Design Internal Model Control: Example: ˜Gp = Kpe−td s 𝜏ps+1 ˜Gp ≈ Kp (𝜏ps + 1)(td 2 s + 1) ( − td 2 s + 1 ) ˜Gp− = Kp (𝜏ps + 1)(td 2 s + 1) ˜Gp+ = − td 2 s + 1 [Chau, 2002] Behzad Samadi (Amirkabir University) Industrial Control 67 / 95
  • 182. PID Controller Design Internal Model Control: Example: G★ c = ˜G−1 p− 1 𝜏cs + 1 = (𝜏ps + 1)(td 2 s + 1) Kp 1 𝜏cs + 1 Gc = G★ c 1 − G★ c ˜Gp = Kp(1 + 1 Ti s + Td s) Behzad Samadi (Amirkabir University) Industrial Control 68 / 95
  • 183. PID Controller Design Internal Model Control: Example: G★ c = ˜G−1 p− 1 𝜏cs + 1 = (𝜏ps + 1)(td 2 s + 1) Kp 1 𝜏cs + 1 Gc = G★ c 1 − G★ c ˜Gp = Kp(1 + 1 Ti s + Td s) where: Kc = 1 Kp 2 𝜏p td + 1 2𝜏c td + 1 ; Ti = 𝜏p + td 2 ; Td = 𝜏p 2 𝜏p td + 1 [Chau, 2002] Behzad Samadi (Amirkabir University) Industrial Control 68 / 95
  • 184. PID Controller Design [Chau, 2002] Behzad Samadi (Amirkabir University) Industrial Control 69 / 95
  • 185. PID Controller Design Skogestad PID Tuning Method: S. Skogestad, “Probably the best simple PID tuning rules in the world” Presented at AIChE Annual meeting, Reno, NV, USA, 04-09 Nov. 2001, Paper no. 276h [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 70 / 95
  • 186. PID Controller Design Skogestad PID Tuning Method: g(s) = k e−𝜃s (𝜏1s + 1)(𝜏2s + 1) [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 71 / 95
  • 187. PID Controller Design Skogestad Internal Model Control (SIMC): ( y ys ) desired = 1 𝜏cs + 1 e−𝜃t Behzad Samadi (Amirkabir University) Industrial Control 72 / 95
  • 188. PID Controller Design Skogestad Internal Model Control (SIMC): ( y ys ) desired = 1 𝜏cs + 1 e−𝜃t c(s) = (𝜏1s + 1)(𝜏2s + 1) k 1 (𝜏c + 𝜃)s Behzad Samadi (Amirkabir University) Industrial Control 72 / 95
  • 189. PID Controller Design Skogestad Internal Model Control (SIMC): ( y ys ) desired = 1 𝜏cs + 1 e−𝜃t c(s) = (𝜏1s + 1)(𝜏2s + 1) k 1 (𝜏c + 𝜃)s c(s) = Kc(1 + 1 𝜏I s )(𝜏Ds + 1) Behzad Samadi (Amirkabir University) Industrial Control 72 / 95
  • 190. PID Controller Design Skogestad Internal Model Control (SIMC): ( y ys ) desired = 1 𝜏cs + 1 e−𝜃t c(s) = (𝜏1s + 1)(𝜏2s + 1) k 1 (𝜏c + 𝜃)s c(s) = Kc(1 + 1 𝜏I s )(𝜏Ds + 1) Tuning Rule Kc = 1 k 𝜏1 𝜏c + 𝜃 , 𝜏I = 𝜏1. 𝜏D = 𝜏2 [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 72 / 95
  • 191. PID Controller Design Skogestad Internal Model Control (SIMC): Tuning Rule Kc = 1 k 𝜏1 𝜏c + 𝜃 , 𝜏I = 𝜏1, 𝜏D = 𝜏2 Effective cancellation of the first order dynamics by 𝜏I = 𝜏1 [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 73 / 95
  • 192. PID Controller Design Skogestad Internal Model Control (SIMC): Tuning Rule Kc = 1 k 𝜏1 𝜏c + 𝜃 , 𝜏I = 𝜏1, 𝜏D = 𝜏2 Effective cancellation of the first order dynamics by 𝜏I = 𝜏1 For processes with large 𝜏1, this choice results in a long settling time for disturbance response. [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 73 / 95
  • 193. PID Controller Design Skogestad Internal Model Control (SIMC): Tuning Rule Kc = 1 k 𝜏1 𝜏c + 𝜃 , 𝜏I = 𝜏1, 𝜏D = 𝜏2 Effective cancellation of the first order dynamics by 𝜏I = 𝜏1 For processes with large 𝜏1, this choice results in a long settling time for disturbance response. Consider: g(s) = k e−𝜃s 𝜏1s+1 ≈ k 𝜏1s for large 𝜏1. With a PI controller c(s) = Kc(1 + 1 𝜏I s ), the poles of the closed loop system can be obtained from the following equation: 𝜏I k′ Kc s2 + 𝜏I s + 1 = 0 with k ′ = k 𝜏1 [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 73 / 95
  • 194. PID Controller Design Skogestad Internal Model Control (SIMC): Comparing to s2 + 2𝜁𝜔0s + 𝜔2: 𝜔0 = √ k′ Kc 𝜏I , 𝜁 = 1 2 √ k′ Kc𝜏I [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 74 / 95
  • 195. PID Controller Design Skogestad Internal Model Control (SIMC): Comparing to s2 + 2𝜁𝜔0s + 𝜔2: 𝜔0 = √ k′ Kc 𝜏I , 𝜁 = 1 2 √ k′ Kc𝜏I To avoid slow oscillations, consider: 𝜁 ≥ 1 [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 74 / 95
  • 196. PID Controller Design Skogestad Internal Model Control (SIMC): Comparing to s2 + 2𝜁𝜔0s + 𝜔2: 𝜔0 = √ k′ Kc 𝜏I , 𝜁 = 1 2 √ k′ Kc𝜏I To avoid slow oscillations, consider: 𝜁 ≥ 1 𝜏I ≥ 4 k′ Kc [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 74 / 95
  • 197. PID Controller Design Skogestad Internal Model Control (SIMC): Disturbance rejection: Assuming input disturbance (gd (s) = g(s)) ∣y(j𝜔)∣ = ∣g(j𝜔)∣ ∣1 + g(j𝜔)c(j𝜔)∣ d ≤ ymax [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 75 / 95
  • 198. PID Controller Design Skogestad Internal Model Control (SIMC): Disturbance rejection: Assuming input disturbance (gd (s) = g(s)) ∣y(j𝜔)∣ = ∣g(j𝜔)∣ ∣1 + g(j𝜔)c(j𝜔)∣ d ≤ ymax Assuming ∣gc∣ >> 1 at low frequencies: ∣c(j𝜔)∣ > d ymax [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 75 / 95
  • 199. PID Controller Design Skogestad Internal Model Control (SIMC): Disturbance rejection: Assuming input disturbance (gd (s) = g(s)) ∣y(j𝜔)∣ = ∣g(j𝜔)∣ ∣1 + g(j𝜔)c(j𝜔)∣ d ≤ ymax Assuming ∣gc∣ >> 1 at low frequencies: ∣c(j𝜔)∣ > d ymax For P, PI and PID: c(j𝜔) ≥ Kc [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 75 / 95
  • 200. PID Controller Design Skogestad Internal Model Control (SIMC): Disturbance rejection: Assuming input disturbance (gd (s) = g(s)) ∣y(j𝜔)∣ = ∣g(j𝜔)∣ ∣1 + g(j𝜔)c(j𝜔)∣ d ≤ ymax Assuming ∣gc∣ >> 1 at low frequencies: ∣c(j𝜔)∣ > d ymax For P, PI and PID: c(j𝜔) ≥ Kc Kc ≥ d ymax [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 75 / 95
  • 201. PID Controller Design Skogestad Internal Model Control (SIMC): Skogestad Internal Model Control (SIMC) Kc = 1 k 𝜏1 𝜏c + 𝜃 = 1 k′ 1 𝜏c + 𝜃 𝜏I = min{𝜏1, 4 k′ Kc } = min{𝜏1, 4(𝜏c + 𝜃)} 𝜏D = 𝜏2 Tuning for fast response with good robustness 𝜏c = 𝜃 Tuning for slow response with acceptable disturbance rejection Kc ≥ d ymax [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 76 / 95
  • 202. PID Controller Design Rules of thumb: [McMillan, 2001] Behzad Samadi (Amirkabir University) Industrial Control 77 / 95
  • 203. Digital Control Ts: sampling time [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 78 / 95
  • 204. Digital Control Ts: sampling time Analog to Digital (A-D) conversion: y(tk) = y(kTs) [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 78 / 95
  • 205. Digital Control Ts: sampling time Analog to Digital (A-D) conversion: y(tk) = y(kTs) Digital to Analog (D-A) conversion: u(t) = u(tk) for kTs ≤ t < (k + 1)Ts [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 78 / 95
  • 206. Digital Control Difference equation: x((k + 1)Ts) = ax(kTs) + bu(kTs) [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 79 / 95
  • 207. Digital Control Difference equation: x((k + 1)Ts) = ax(kTs) + bu(kTs) Discrete time: x[k + 1] = ax[k] + bu[k] [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 79 / 95
  • 208. Digital Control Difference equation: x((k + 1)Ts) = ax(kTs) + bu(kTs) Discrete time: x[k + 1] = ax[k] + bu[k] Z-transform: zX(z) = aX(z) + bU(z) ⇒ X(z) U(z) = b z − a [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 79 / 95
  • 209. Digital Control Approximating Continuous-Time Controllers: Euler’s method (forward difference): z = eTs s ≈ 1 + Tss ⇒ s ≈ z − 1 Ts ˙x(t) ≈ x(t + Ts) − x(t) Ts [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 80 / 95
  • 210. Digital Control Approximating Continuous-Time Controllers: Euler’s method (forward difference): z = eTs s ≈ 1 + Tss ⇒ s ≈ z − 1 Ts ˙x(t) ≈ x(t + Ts) − x(t) Ts Backward difference: z = eTs s ≈ 1 1 − Tss ⇒ s ≈ 1 − z−1 Ts ˙x(t) ≈ x(t) − x(t − Ts) Ts [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 80 / 95
  • 211. Digital Control Approximating Continuous-Time Controllers: Tustin’s approximation: z = eTs s ≈ 1 + sTs/2 1 − sTs/2 ⇒ s ≈ 2 Ts z − 1 z + 1 It is also called trapezoidal method or bilinear transformation. [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 81 / 95
  • 212. Digital Control Approximating Continuous-Time Controllers: Stability: Images of the left side of the s-plane [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 82 / 95
  • 213. Digital Control Approximating Continuous-Time Controllers: Re(s) < 0 Forward −−−−−−→ Difference Re(z) < 1 [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 83 / 95
  • 214. Digital Control Approximating Continuous-Time Controllers: Re(s) < 0 Forward −−−−−−→ Difference Re(z) < 1 Stable system in s domain Forward −−−−−−→ Difference Stable or unstable system in z domain [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 83 / 95
  • 215. Digital Control Approximating Continuous-Time Controllers: Re(s) < 0 Forward −−−−−−→ Difference Re(z) < 1 Stable system in s domain Forward −−−−−−→ Difference Stable or unstable system in z domain Re(s) < 0 Backward −−−−−−→ Difference (Re(z) − 1 2)2 + Im(z)2 < 1 4 [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 83 / 95
  • 216. Digital Control Approximating Continuous-Time Controllers: Re(s) < 0 Forward −−−−−−→ Difference Re(z) < 1 Stable system in s domain Forward −−−−−−→ Difference Stable or unstable system in z domain Re(s) < 0 Backward −−−−−−→ Difference (Re(z) − 1 2)2 + Im(z)2 < 1 4 Stable or unstable system in s domain Backward −−−−−−→ Difference Stable system in z domain [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 83 / 95
  • 217. Digital Control Approximating Continuous-Time Controllers: Re(s) < 0 Forward −−−−−−→ Difference Re(z) < 1 Stable system in s domain Forward −−−−−−→ Difference Stable or unstable system in z domain Re(s) < 0 Backward −−−−−−→ Difference (Re(z) − 1 2)2 + Im(z)2 < 1 4 Stable or unstable system in s domain Backward −−−−−−→ Difference Stable system in z domain Re(s) < 0 Tustin −−−−−−−−→ Approximation ∣z∣ < 1 [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 83 / 95
  • 218. Digital Control Approximating Continuous-Time Controllers: Re(s) < 0 Forward −−−−−−→ Difference Re(z) < 1 Stable system in s domain Forward −−−−−−→ Difference Stable or unstable system in z domain Re(s) < 0 Backward −−−−−−→ Difference (Re(z) − 1 2)2 + Im(z)2 < 1 4 Stable or unstable system in s domain Backward −−−−−−→ Difference Stable system in z domain Re(s) < 0 Tustin −−−−−−−−→ Approximation ∣z∣ < 1 Stable system in s domain Tustin −−−−−−−−→ Approximation Stable system in z domain [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 83 / 95
  • 219. Digital Control Digital PID: Proportional: P(t) = Kpe(t) P[k] = Kpe[k] [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 84 / 95
  • 220. Digital Control Digital PID: Proportional: P(t) = Kpe(t) P[k] = Kpe[k] Integral: I(t) = Kp Ti ∫ t 0 e(𝜏)d𝜏 I[k + 1] = I[k] + KTs Ti e[k] [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 84 / 95
  • 221. Digital Control Digital PID: Proportional: P(t) = Kpe(t) P[k] = Kpe[k] Integral: I(t) = Kp Ti ∫ t 0 e(𝜏)d𝜏 I[k + 1] = I[k] + KTs Ti e[k] Derivative: Td N dD dt + D = −KpTd dy dt D[k] = Td Td + NTs D[k − 1] − KpTd N Td + NTs (y[k] − y[k − 1]) [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 84 / 95
  • 222. Digital Control Typical sampling time: Type of variable Sampling time (sec) Flow 1-3 Level 5-10 Pressure 1-5 Temperature 10-20 [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 85 / 95
  • 223. Digital Control Typical sampling time: Type of variable Sampling time (sec) Flow 1-3 Level 5-10 Pressure 1-5 Temperature 10-20 Rule of thumb for PI controllers: Ts Ti ≈ 0.1 to 0.3 [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 85 / 95
  • 224. Digital Control Typical sampling time: Rule of thumb for PID controllers: NTs Td ≈ 0.2 to 0.6 [Astrom and Wittenmark, 1996] Behzad Samadi (Amirkabir University) Industrial Control 86 / 95
  • 225. Digital Control Inverse Response: When the initial response of a dynamic system is in a direction opposite to the final outcome, it is called an inverse response. [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 87 / 95
  • 226. Digital Control Inverse Response: When the initial response of a dynamic system is in a direction opposite to the final outcome, it is called an inverse response. Obtaining the effective delay (Half rule): Effective delay =True delay + inverse response time constant(s) + half of the largest neglected time constant + all smaller higher order time constants [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 87 / 95
  • 227. Digital Control Inverse Response: When the initial response of a dynamic system is in a direction opposite to the final outcome, it is called an inverse response. Obtaining the effective delay (Half rule): Effective delay =True delay + inverse response time constant(s) + half of the largest neglected time constant + all smaller higher order time constants Time constant: 𝜏 = the largest time constant + 1 2 the second largest time constant { 𝜏1 = the largest time constant, 𝜏2 = the second largest time constant + 1 2the third largest time constant [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 87 / 95
  • 228. Digital Control Plant transfer function: G(s) = ∏ j (−Tj0s + 1) ∏ j (𝜏i0s + 1) e−td s First order approximation: ˆG1(s) = e−𝜃s 𝜏s + 1 𝜃 =td + ∑ j Tj0 + 𝜏20 2 + ∑ j≥3 𝜏i0 + Ts 2 𝜏 =𝜏10 + 𝜏20 2 [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 88 / 95
  • 229. Digital Control Second order approximation: ˆG2(s) = e−𝜃s (𝜏1s + 1)(𝜏2s + 1) 𝜃 =td + ∑ j Tj0 + 𝜏30 2 + ∑ j≥4 𝜏i0 + Ts 2 𝜏1 =𝜏10 𝜏2 =𝜏20 + 𝜏30 2 [Skogestad, 2001] Behzad Samadi (Amirkabir University) Industrial Control 89 / 95
  • 230. Digital Control Series form of the PID controller: U(s) = Kp(1 + 1 𝜏i s )(1 + 𝜏d s)E(s) Behzad Samadi (Amirkabir University) Industrial Control 90 / 95
  • 231. Digital Control Series form of the PID controller: U(s) = Kp(1 + 1 𝜏i s )(1 + 𝜏d s)E(s) U(s) = Kp(1 + 1 𝜏i s )(E(s) + 𝜏d sE(s)) Behzad Samadi (Amirkabir University) Industrial Control 90 / 95
  • 232. Digital Control Series form of the PID controller: U(s) = Kp(1 + 1 𝜏i s )(1 + 𝜏d s)E(s) U(s) = Kp(1 + 1 𝜏i s )(E(s) + 𝜏d sE(s)) U(s) = Kp(1 + 1 𝜏i s )(E(s) − 𝜏d sY (s)) Behzad Samadi (Amirkabir University) Industrial Control 90 / 95
  • 233. Digital Control Series form of the PID controller: U(s) = Kp(1 + 1 𝜏i s )(1 + 𝜏d s)E(s) U(s) = Kp(1 + 1 𝜏i s )(E(s) + 𝜏d sE(s)) U(s) = Kp(1 + 1 𝜏i s )(E(s) − 𝜏d sY (s)) U(s) = Kp(1 + 1 𝜏i s )(R(s) − (1 + 𝜏d s)Y (s)) Behzad Samadi (Amirkabir University) Industrial Control 90 / 95
  • 234. Digital Control Series form of the PID controller: U(s) = Kp(1 + 1 𝜏i s )(1 + 𝜏d s)E(s) U(s) = Kp(1 + 1 𝜏i s )(E(s) + 𝜏d sE(s)) U(s) = Kp(1 + 1 𝜏i s )(E(s) − 𝜏d sY (s)) U(s) = Kp(1 + 1 𝜏i s )(R(s) − (1 + 𝜏d s)Y (s)) U(s) = Kp(1 + 1 𝜏i s )Ed (s) Behzad Samadi (Amirkabir University) Industrial Control 90 / 95
  • 235. Digital Control Series form of the PID controller: Behzad Samadi (Amirkabir University) Industrial Control 91 / 95
  • 236. Digital Control Antiwindup digital PID: public class SimplePID { private double u,e,v,y; private double K,Ti,Td,Beta,Tr,N,h; private double ad,bd; private double D,I,yOld; public SimplePID(double nK, double nTi, double NTd, double nBeta, double nTr, double nN, double nh) { updateParameters(nK,nTi,nTd,nBeta,nTr,nN,nh); } ARTIST Graduate Course on Embedded Control Systems Behzad Samadi (Amirkabir University) Industrial Control 92 / 95
  • 237. Digital Control Antiwindup digital PID: public void updateParameters(double nK, double nTi, double NTd, double nBeta, double nTr, double nN, double nh) { K = nK; Ti = nTi; Td = nTd; Beta = nBeta; Tr = nTr N = nN; h = nh; ad = Td / (Td + N*h); bd = K*ad*N; } ARTIST Graduate Course on Embedded Control Systems Behzad Samadi (Amirkabir University) Industrial Control 93 / 95
  • 238. Digital Control Antiwindup digital PID: public double calculateOutput(double yref, double newY) { y = newY; e = yref - y; D = ad*D - bd*(y - yOld); v = K*(Beta*yref - y) + I + D; return v; } public void updateState(double u) { I = I + (K*h/Ti)*e + (h/Tr)*(u - v); yOld = y; } } ARTIST Graduate Course on Embedded Control Systems Behzad Samadi (Amirkabir University) Industrial Control 94 / 95
  • 239. Digital Control Antiwindup digital PID: public class Regul extends Thread { private SimplePID pid; public Regul() { pid = new SimplePID(1,10,0,1,10,5,0.1); } public void run() { // Other stuff while (true) { y = getY(); yref = getYref(): u = pid.calculateOutput(yref,y); u = limit(u); setU(u); pid.updateState(u); // Timing Code }}} ARTIST Graduate Course on Embedded Control Systems Behzad Samadi (Amirkabir University) Industrial Control 95 / 95
  • 240. Astrom, K. J. and Hagglund, T. (1995). PID Controllers: Theory, Design, and Tuning. Instrument Society of America. Astrom, K. J. and Wittenmark, B. (1996). Computer-Controlled Systems: Theory and Design. Prentice Hall, 3 edition. Chau, P. C. (2002). Process Control: A First Course with MATLAB (Cambridge Series in Chemical Engineering). Cambridge University Press, 1 edition. Li, Y., Ang, K. H., and Chong, G. C. Y. (2006). Pid control system analysis and design. IEEE Control Syst. Mag., 26(1):32–41. Love, J. (2007). Process Automation Handbook: A Guide to Theory and Practice. Springer, 1 edition. Behzad Samadi (Amirkabir University) Industrial Control 95 / 95
  • 241. McMillan, G. K. (2001). Good Tuning: A Pocket Guide. The Instrumentation, Systems, and Automation Society (ISA). O’Dwyer (2002). Handbook of PI & Pid Controller Tuning Rules. World Scientific Publishing. Skogestad, S. (2001). Probably the best simple pid tuning rules in the world. In AIChE Annual meeting, Reno, NV, USA. Visioli, A. (2006). Practical PID Control (Advances in Industrial Control). Springer, 1 edition. Woolf, P., editor (2007). The Michigan Chemical Process Dynamics and Controls Open Text Book. Yu, C.-C. (2007). Behzad Samadi (Amirkabir University) Industrial Control 95 / 95
  • 242. Autotuning of PID Controllers: A Relay Feedback Approach. Springer. Behzad Samadi (Amirkabir University) Industrial Control 95 / 95