04 PID Controllers
-
Upload
mansour-abdulaziz -
Category
Documents
-
view
248 -
download
1
Transcript of 04 PID Controllers
-
8/11/2019 04 PID Controllers
1/65
Proportional-Integral-Derivative
PID Controllers
Cheng-Liang ChenPSELABORATORY
Department of Chemical EngineeringNational TAIWAN University
-
8/11/2019 04 PID Controllers
2/65
Chen CL 1
Outline
Proportional-Integral-Derivative Controller: PID Control based on CurrentFuture Error withConstantReset Bias
PID Control based on CurrentFuture Error withConstantReset Bias
PID Control based on CurrentFuture Error withConstantReset Bias
PID Control based on CurrentFuture Error withConstantReset Bias
PID Control based on CurrentFuture Error withConstantReset Bias
PID Control based on CurrentFuture Error withConstantReset Bias
PID Control based on CurrentFuture Error withConstantReset Bias
-
8/11/2019 04 PID Controllers
3/65
Chen CL 2
Steady Offset ofPID when using Constant bias
Series PID Parallel PID
Response ofPID Controllers to Typical Inputs
Operational Aspects of PID Controllers
problems ofD action: sensitivity to noise
problems of I action: moving PB and reset windup
manual control requirement bump-less transfer
-
8/11/2019 04 PID Controllers
4/65
-
8/11/2019 04 PID Controllers
5/65
Chen CL 4
PID Controller: A Survey
More Than 95% of Controllers Are of PID Type
Ender (1993)
30%of installed process controllers operate in manual
20%of loops use default parameters (factory tuning) 30%of loops function poorly because of equipment
problems (valves, sensors )
C C
-
8/11/2019 04 PID Controllers
6/65
Chen CL 5
Why PID Controllers Are So Popular ?
Structure: simple Easy for understanding
A few adjustable parameters, easy for tuning
Performance: good or acceptable level
Robustness: strong to uncertain operating conditions
Applicability: wide to different processes/industries
Ch CL 6
-
8/11/2019 04 PID Controllers
7/65
Chen CL 6
A Heat Exchanger with Feedback ControlValve: AFC (ATO); Controller: Reverse Action
Ch CL 7
-
8/11/2019 04 PID Controllers
8/65
Chen CL 7
Simplest Controller: On-Off Control
u(t) =
ub+ u if y(t)< ysp d
ub u if y(t)> ysp+d
Problem: oscillatory response !
On-off cares about control direction only;
On-off givessamecontrol action fordifferenterror magnitudes
Solution: control action considering error magnitude
Ch CL 8
-
8/11/2019 04 PID Controllers
9/65
Chen CL 8
Current-Error-Based P Controlwith Constant Bias (SS value)
current control corrective action, u(t)
current error magnitude, e(t) ysp y(t)
u(t) e(t) ysp y(t)
u(t) = Kc e(t) p(t) (Kc: adjustable proportionality)
u(t) = Kc e(t)
u(t)+ ub
SS valuefore(t) = 0
Ch CL 9
-
8/11/2019 04 PID Controllers
10/65
Chen CL 9
Problem of Current-Error-Based P Control
u(t) =Kc e(t) u(t)
+ ubSS valuefore(t) = 0
Too late to correct current error
It takes time to know effect of control on output
conservative action to guarantee stability
limited achievable control performance
Chen CL 10
-
8/11/2019 04 PID Controllers
11/65
Chen CL 10
Solution: Future-Error-Based P ControlBack to the Future
Control action based onfuture condition (error)
take control action in advance better control performance
u(t) = Kc e(t+Td)
u(t)
+ ub
SS value
fore(t) = 0
u(t) = Kc e(t+Td)
u(t)
+ ub
SS value
fore(t) = 0
Chen CL 11
-
8/11/2019 04 PID Controllers
12/65
Chen CL 11
Future-Error-Based P ControlGives Better Performance
HE: pulse decrease in input temperature
Att1: e(t1+Td)> e(t1)P control based on e(t1+Td) has larger action
more steam smaller undershoot in T
( Pre-Act P)
Kc e(t1+Td) +ub > Kc e(t1) + ub
( Normal P)
Chen CL 12
-
8/11/2019 04 PID Controllers
13/65
Chen CL 12
Future-Error-Based P ControlGives Better Performance
HE: pulse decrease in input temperature
Att2: e(t2+Td)< e(t2)P control based on e(t2+Td) has smaller action
less steam smaller overshoot in T
( Pre-Act P)
Kc e(t2+Td) +ub < Kc e(t2) + ub
( Normal P)
Chen CL 13
-
8/11/2019 04 PID Controllers
14/65
Chen CL 13
Implement Future-Error-Based P Control
As Current-Error-Based PD Control
Original P: u(t) = Kc e(t) + ub
PreAct P: u(t) = Kc e(t+Td) + ub
Kc e(t) +Tdde(t)dt e(t)e(t+Td)
+ ub
Chen CL 14
-
8/11/2019 04 PID Controllers
15/65
Chen CL 14
u(t) = Kc e(t+Td) + ub
Kc e(t) +Tdde(t)dt e(t)e(t+Td)
+ ub
Chen CL 15
-
8/11/2019 04 PID Controllers
16/65
Chen CL 15
Sub-SummaryP control based oncurrent error with constant bias
e(t) e(t+Td)
P control based onfuture error with constant bias
u(t) = Kce(t+Td) + ub
Kc
e(t) + Td
de(t)
dt
e(t)
+ub
PDcontrol based oncurrent error with constant bias
Chen CL 16
-
8/11/2019 04 PID Controllers
17/65
Chen CL 16
Steady Offset for P (PD) Control
Non-zero Steady State Offset (I): Setpoint Change
Initial steady state: (all variables [0, 100%])
y=ysp=y e= 0 u=ub=u =
Chen CL 17
-
8/11/2019 04 PID Controllers
18/65
Chen CL 17
Case I: Setpoint change ysp:y y+ New steady state: y=?, u=?, e=?
(change in y) = Kp {change in process input}= Kp {(change in CO)+(change in load)}
y y = Kp
u u
change in CO+
change in load=0
= Kp
Kc
e
(y+ )
new spy
+ub
uu+
=0
y = y+ KcKp1 +KcKp
new steady state
= y+ desired sp
Chen CL 18
-
8/11/2019 04 PID Controllers
19/65
Chen CL 18
Non-zero Steady State Offset (II): Load Change
Initial steady state: (all variables [0, 100%])
y=ysp=y e= 0 u=ub=u =
Chen CL 19
-
8/11/2019 04 PID Controllers
20/65
Chen CL 19
Case II: Load change : +New steady state: y=?, u=?, e=?
(change in y) = Kp {change in process input}= Kp {(change in CO)+(change in load)}
y y = Kp
u u
change in CO+
change in load=
= Kp
Kc
e
(y)
spy
+ub
uu+
y = y+ Kp
1 +KcKp
new steady state
= ydesired sp
Chen CL 20
-
8/11/2019 04 PID Controllers
21/65
Chen CL 20
Current-Error-Based P Controlwith Reset Bias
Question:
usingP or PD control with constant bias,
how to guarantee zero steady-state offset ?
(at steady state: e= 0, y=ysp)
Answer: u=ub at SS
desired: e = 0 (y = ysp) at SS
u = ub at SS
Chen CL 21
-
8/11/2019 04 PID Controllers
22/65
Reset Bias for Zero SS OffsetSimplest Method
Simplest method to guarantee u=ub at SS:
Let ub(t) = u(t) for all t
then ub = u at steady state
e = 0 y = ysp
P control based on current error withreset biasvia a unity-gain dynamics (not workable !)
Chen CL 22
-
8/11/2019 04 PID Controllers
23/65
Reset Bias for Zero SS OffsetFeasible Method
Feasible method to guarantee u=ub at SS:
desired: ub = u at SS
simplest method: ub(t) equals u(t) t
feasible method: ub(t) tracks u(t) t
ub(t) tracks u(t) with first-order dynamics:
(use Ti to adjust tracking velocity)
Tidub(t)
dt +ub(t) =u(t)
equal tracking
Chen CL 23
-
8/11/2019 04 PID Controllers
24/65
P control based on current error withreset biasvia first-order dynamics
Chen CL 24
-
8/11/2019 04 PID Controllers
25/65
Reset Bias Integral Action
(1) u(t) = Kce(t) +ub(t) (P with reset bias)
(2) u(t) = Tidub(t)
dt +ub(t) (ub(t) tracks u(t))
Tidub(t)
dt
= Kce(t) = p(t)
ub(t) ub = 1
Ti
t0
p(t)dt
change in bias=
KcTi
t0
e(t)dt
=ub(t)
Chen CL 25
-
8/11/2019 04 PID Controllers
26/65
(1) u(t) = Kce(t) p(t)+
ub(t) 1
Ti t
0
p(t)(t)dt
ub(t)+ub (PI)
= Kce(t) +KcTi
t0
e(t)dt+ub
= Kc e(t) + 1Ti t
0
e(t)dt +ub Reset bias: interpreted as integral action
current-error-based P control with reset bias
(reseting bias according to integral of error)= current-error-basedPI control with constant bias
Chen CL 26
-
8/11/2019 04 PID Controllers
27/65
Reset Bias Integral Action
-
8/11/2019 04 PID Controllers
28/65
Chen CL 28
-
8/11/2019 04 PID Controllers
29/65
Future-Error-Based P Control with Reset Bias
P control based on future error PD withreset bias PI Interpreted As PD +PI (series PID ) Controller
e(t+Td) e(t) +Tdde(t)
dt e(t)
Chen CL 29
-
8/11/2019 04 PID Controllers
30/65
ub(t) = 1
Ti
Kce
(t)dt+ub
u(t) = Kce(t)
p(t)
+
ub
(t) 1
Ti
Kce
(t) p(t)
dt +ub
ub(t)
Chen CL 30
-
8/11/2019 04 PID Controllers
31/65
Series PID Parallel PID
Kpc = Kc 1 + TdTi
Kc = Kpc 0.5 +
0.25
Tpd
Tpi
Tpi = Ti
1 + TdTi
Ti = Tpi
0.5 +
0.25 T
pdTpi
Tpd = Td/
1 + TdTi
Td = T
pd /
0.5 +
0.25
Tpd
Tpi
Chen CL 31
-
8/11/2019 04 PID Controllers
32/65
Series PID Parallel PID
p(t) = Kc e(t) +Tdde(t)dt u(t) = p(t) +ub(t)
Tidub(t)dt + ub(t) = u(t)
P(t) = Kc
E(t) +Td
dE(t)dt
U(t) = P(t) +Ub(t)
TidUb(t)dt + Ub(t) = U(t)
P(s) = Kc (E(s) +TdsE(s)) = Kc(1 +Tds)E(s)
U(s) = P(s) +Ub(s)
TisUb(s) + Ub(s) = U(s) Ub(s) = 1Tis+1
U(s)
Chen CL 32
-
8/11/2019 04 PID Controllers
33/65
U(s) = P(s) +Ub(s) =P(s) + 1Tis+1
U(s)
U(s) = Tis+1Tis P(s)
= Tis+1Tis Kc(1 +Tds)E(s) (series PID)
= KcTis
TiTds2 + (Ti+Td)s+ 1
E(s)
= KcTi+TdTi
1 + 1(Ti+Td)s+ TiTdTi+Td
s
E(s)
= Kc
1 + TdTi
1 + 1
Ti
1+
TdTi
s
+Td
1 + TdTi
s
E(s)
= Kpc
1 + 1
Tpi s
+Tpd s
E(s) (parallelPID)
Chen CL 33
-
8/11/2019 04 PID Controllers
34/65
P Control Based on {Current, Future} Errorwith {Constant, Reset} Bias
const. bias reset biascurrent error P PI
future error PD PID
Chen CL 34
-
8/11/2019 04 PID Controllers
35/65
P Action to Step Error
Chen CL 35
-
8/11/2019 04 PID Controllers
36/65
PD Action to Step Error
Chen CL 36
-
8/11/2019 04 PID Controllers
37/65
PI (P-Reset) Action to Step Error
Chen CL 37
S
-
8/11/2019 04 PID Controllers
38/65
PID Action to Step Error
Chen CL 38
PD A i R E
-
8/11/2019 04 PID Controllers
39/65
PD Action to Ramp Error
-
8/11/2019 04 PID Controllers
40/65
Chen CL 40
f ( )
-
8/11/2019 04 PID Controllers
41/65
Problem of D Action (I):Sensitive to High-Frequency Noise
Derivative action without filter:
Problem: sinusoidal input output mag. frequency
e(t) =A sin(t) D(t) =Tdde(t)
dt =TdAcos (t)
Chen CL 41
S l i (fi d ) l fil
-
8/11/2019 04 PID Controllers
42/65
Solution: (first-order) low-pass filter
Td
N
dD(t)
dt +D(t) =Td
de(t)
dt D action
equal
follow
Chen CL 42
P bl ( i )
-
8/11/2019 04 PID Controllers
43/65
Problem: (again)
derivative + filtering large inner signal (ed)
Solution: filtering derivative
Chen CL 43
P bl f D A i (II)
-
8/11/2019 04 PID Controllers
44/65
Problem of D Action (II):Bump Response to Step Input
Solution 1: D action on measurement Derivative on measurement:
y(t+Td) y(t) +Tddy(t)
dte(t+Td) = ysp y(t+Td)
= ysp y(t) +Tddy(t)dt e(t) Td
dy(t)
dt For noise: filtering + derivative action
Td
N
dyf(t)
dt +yf(t) = y(t) (yf(t) follows y(t))
D(t) = KcTddyf(t)
dt (derivative on yf(t))
Chen CL 44
S l ti 2 filt i t i t i l
-
8/11/2019 04 PID Controllers
45/65
Solution 2: filtering on setpoint signal
(use r(t) as the practical setpoint)
Solution 3: setpoint weighting (skip)
Chen CL 45
P bl f R (I)
-
8/11/2019 04 PID Controllers
46/65
Problem of Reset (I):Moving Proportional Band
(Reverse) P with reset bias: ([umin, umax] = [0%, 100%])
u(t) = Kc
ysp y(t)
+ub(t) (Kc> 0)
y(t) = ymax = ? u(t) = Kc
ysp ymax
+ub(t) =umin= 0%
y(t) = ymin = ? u(t) = Kc ysp ymin +ub(t) =umax= 100%y(t) > ymax u(t) < umin (saturation !)
y(t) < ymin u(t) > umax (saturation !)
y(t) {ymin, ymax} u(t) {umax, umin} (normal operation)
Chen CL 46
P ti l B d (f l ti )
-
8/11/2019 04 PID Controllers
47/65
Proportional Band: (for normal operation)
PB = [ymin, ymax] = ysp+
ub(t)uminKc
, ysp+ub(t)umax
Kc =
ysp+
ub(t)0Kc
, ysp+ub(t)100
Kc
If y(t) PB, Then controller output is normal
width of PB: affected by Kc
ymax ymin=umax umin
Kc=
100
Kc%
position of PB: affected by Kc, ysp, ub(t)
Chen CL 47
Example:
-
8/11/2019 04 PID Controllers
48/65
Example:
ysp= 50%, Kc = 2, ub(t) = 50%t,
umin= 0%, umax= 100%
PB =
50 +
ub(t) 100
Kc% , 50 +
ub(t) 0
Kc%
= [ 25% , 75% ]
Chen CL 48
Mo i PB d e to Resetti Bias E a le
-
8/11/2019 04 PID Controllers
49/65
Moving PB due to Resetting Bias: Example
Process: G(s) = 0.0163s+1 5030s+1 110s+1 ZN-PI tuning: Kc= 3.40, Ti= 37 ( PB =
100%Kc%/%
= 29.4%)
-
8/11/2019 04 PID Controllers
50/65
Chen CL 50
Moving PB due to Resetting Bias: Example
-
8/11/2019 04 PID Controllers
51/65
Moving PB due to Resetting Bias: Example
Process: G(s) = 0.0163s+1 5030s+1 110s+1 Slower reset: Kc= 3.40, Ti= 74 ( PB =
100%Kc%/%
= 29.4%)
Chen CL 51
-
8/11/2019 04 PID Controllers
52/65
Problem ofReset (II)
Reset Windup
HE Example
Chen CL 52
Anti Reset Windup:
-
8/11/2019 04 PID Controllers
53/65
Anti Reset-Windup:Use A Saturation Modelto Limit Control Signal
u(t) =
100% for v(t) 100%
v(t) for 0% v(t) 100%
0% for v(t) 100%
Chen CL 53
Anti Reset Windup for Parallel PID
-
8/11/2019 04 PID Controllers
54/65
Anti Reset-Windup for Parallel PID
If v > u = umax
Then es = u v < 0
1Tt
esdt < 0 v until v = umax
Chen CL 54
Modification of PID (I):
-
8/11/2019 04 PID Controllers
55/65
Modification of PID (I):High-Frequency Noise
Problem of D Action: sensitive to high frequency noise
Solution: low-pass filter on D (P & D)
Chen CL 55
Modification of PID (II):
-
8/11/2019 04 PID Controllers
56/65
Modification of PID (II):Anti Reset-Windup
Problem of Reset Action: reset windup (saturation)
Solution: limiter
Chen CL 56
Modification of PID (III):
-
8/11/2019 04 PID Controllers
57/65
Modification of PID (III):Manual Control
Manual control: with an integrator
Chen CL 57
Modification of PID (IV):
-
8/11/2019 04 PID Controllers
58/65
Modification of PID (IV):Bumpless A/M Transfer
When in automatic control: m(t) (manual) tracks u(t) (auto)
m(t): always ready to control
Chen CL 58
Modification of PID (V):
-
8/11/2019 04 PID Controllers
59/65
Modification of PID (V):Bumpless M/A Transfer
Method 1: resetting bias during M/A (keep original ysp)
let ub(t) = m(t) Kce(t) (when M/A transfer)
thus u(t) = ub(t) +Kce(t) (auto control action)
= m(t) (final manual action)
-
8/11/2019 04 PID Controllers
60/65
Chen CL 60
A Complete PID Controller (I)
-
8/11/2019 04 PID Controllers
61/65
A Complete PID Controller (I) Automatic control Anti-reset windup Bias tracking: bias tracks final outputu(t) Manual tracking: m(t) tracks final output u(t) Manual setpoint adjustment
Chen CL 61
A Complete PID Controller (II)
-
8/11/2019 04 PID Controllers
62/65
A Complete PID Controller (II) Manual control Anti-reset windup Bias tracking: bias tracks final outputu(t) Manual tracking: m(t) tracks final output u(t) (Manual setpoint adjustment)
Chen CL 62
A Complete PID Controller (III)
-
8/11/2019 04 PID Controllers
63/65
A Complete PID Controller (III) External setpoint (used in Cascade Control) Anti-reset windup Bias tracking: bias tracks final outputu(t) Manual tracking: m(t) tracks final output u(t) Setpoint tracking:
Chen CL 63
A Complete PID Controller (IV)
-
8/11/2019 04 PID Controllers
64/65
A Complete PID Controller (IV) Automatic control (used in Override Control) Anti-reset windup Bias tracking: bias tracks external signalz(t) Manual tracking: m(t) tracks final output u(t) Setpoint tracking:
Chen CL 64
-
8/11/2019 04 PID Controllers
65/65
Thank You for Your Attention