2.153 Adaptive Control Lecture 7 Adaptive PID Control Anuradha Annaswamy [email protected] ( [email protected] ) 1 / 17
Mar 26, 2020
2.153 Adaptive ControlLecture 7
Adaptive PID Control
Anuradha Annaswamy
( [email protected] ) 1 / 17
Pset #1 out: Thu 19-Feb, due: Fri 27-FebPset #2 out: Wed 25-Feb, due: Fri 6-MarPset #3 out: Wed 4-Mar, due: Fri 13-MarPset #4 out: Wed 11-Mar, due: Fri 20-MarMidterm (take home) out: Mon 30-Mar, due: Fri 3-Apr
( [email protected] ) 2 / 17
Adaptive Control of a Second-order Plant
Gc(s)1
s(Js + B)+ e τ x
−
Plant: Jx + Bx = τ J > 0
PI Control: Gc(s) = kp +ki
sτ = kpe(t) + ki
∫e(τ)dτ
Adaptive PI Control: τ = kp(t)e(t) + ki(t)∫
e(τ)dτ
PID Control: Gc(s) = kp + kds + kis
τ = kpe(t) + ki∫
e(τ)dτ + kddedt
Adaptive PID Control: τ = kp(t)e(t) + ki(t)∫
e(τ)dτ + kd(t)e(t)
J and B are unknown. Adjust kp(t), ki(t) and kd(t) so that theclosed-loop system is stable and limt→∞ e(t) = 0.
( [email protected] ) 3 / 17
Adaptive Control of a Second-order Plant
Gc(s)1
s(Js + B)+ e τ x
−
Plant: Jx + Bx = τ J > 0
PI Control: Gc(s) = kp +ki
sτ = kpe(t) + ki
∫e(τ)dτ
Adaptive PI Control: τ = kp(t)e(t) + ki(t)∫
e(τ)dτ
PID Control: Gc(s) = kp + kds + kis
τ = kpe(t) + ki∫
e(τ)dτ + kddedt
Adaptive PID Control: τ = kp(t)e(t) + ki(t)∫
e(τ)dτ + kd(t)e(t)
J and B are unknown. Adjust kp(t), ki(t) and kd(t) so that theclosed-loop system is stable and limt→∞ e(t) = 0.
( [email protected] ) 3 / 17
Adaptive Control of a Second-order Plant
Gc(s)1
s(Js + B)+ e τ x
−
Plant: Jx + Bx = τ J > 0
PI Control: Gc(s) = kp +ki
sτ = kpe(t) + ki
∫e(τ)dτ
Adaptive PI Control: τ = kp(t)e(t) + ki(t)∫
e(τ)dτ
PID Control: Gc(s) = kp + kds + kis
τ = kpe(t) + ki∫
e(τ)dτ + kddedt
Adaptive PID Control: τ = kp(t)e(t) + ki(t)∫
e(τ)dτ + kd(t)e(t)
J and B are unknown. Adjust kp(t), ki(t) and kd(t) so that theclosed-loop system is stable and limt→∞ e(t) = 0.
( [email protected] ) 3 / 17
Adaptive Control of a Second-order Plant
AdaptiveController
1s(Js + B)
+ e τ x
−
Plant: Jx + Bx = τ J > 0
PI Control: Gc(s) = kp +ki
sτ = kpe(t) + ki
∫e(τ)dτ
Adaptive PI Control: τ = kp(t)e(t) + ki(t)∫
e(τ)dτ
PID Control: Gc(s) = kp + kds + kis
τ = kpe(t) + ki∫
e(τ)dτ + kddedt
Adaptive PID Control: τ = kp(t)e(t) + ki(t)∫
e(τ)dτ + kd(t)e(t)
J and B are unknown. Adjust kp(t), ki(t) and kd(t) so that theclosed-loop system is stable and limt→∞ e(t) = 0.
( [email protected] ) 3 / 17
PID -Control: Algebraic Part
NominalController
1s(Js+B)
r + er τ x
−
Gc(s) = kp +ki
s+ kds Parameterize kd = K, kp = 2λK > 0, ki = λ2K > 0
Closed-loop transfer function:K(s + λ)2
s2(Js + B) + K(s + λ)2
=K(s + λ)2
Js3 + s2(B + K) + 2Kλ2s + Kλ
Stable if0 < K <
Jλ2− B.
Design the controller so that x→ xd
( [email protected] ) 4 / 17
PID Control - Algebraic Part: Tracking
Gc(s)1
s(Js + B)r + er τ x
−
Wcl(s)
Wcl(s) =Gc(s)
s(Js + B) + Gc(s)
W−1cl (s) = 1 + s(Js + B)G−1
cl (s)
r = W−1cl (s)[xd]
= xd +(
s(Js + B)G−1cl (s)
)[xd]
= xd + (s(Js + B)) [ωd] = xd + Bωd + Jωd
( [email protected] ) 5 / 17
PID Control - Algebraic Part: Tracking
Gc(s)1
s(Js + B)r + er τ x
−
Wcl(s)
Wcl(s) =Gc(s)
s(Js + B) + Gc(s)
W−1cl (s) = 1 + s(Js + B)G−1
cl (s)
r = W−1cl (s)[xd]
= xd +(
s(Js + B)G−1cl (s)
)[xd]
= xd + (s(Js + B)) [ωd] = xd + Bωd + Jωd
( [email protected] ) 5 / 17
PID Control - Algebraic Part: Tracking
W−1cl (s) Gc(s)
1s(Js+B)
τxd r + er x
−
Wcl(s)
Wcl(s) =Gc(s)
s(Js + B) + Gc(s)
W−1cl (s) = 1 + s(Js + B)G−1
cl (s)
r = W−1cl (s)[xd]
= xd +(
s(Js + B)G−1cl (s)
)[xd]
= xd + (s(Js + B)) [ωd] = xd + Bωd + Jωd
( [email protected] ) 5 / 17
PID Control - Algebraic Part: Tracking
Using r = Jωd + Bωd + xd the block diagram can be represented as
J
B Gc(s)1
s(Js+B)
ωd
ωd
xd
+
++ r + er τ x
−
which can then be simplified to
Gc(s)
B
J
1s(Js+B)
Plantxd +
xd
xd
+e + τ x
−
( [email protected] ) 6 / 17
PID Control - Algebraic Part: Tracking - RevisedDesign
Gc(s)
B
J
1s(Js+B)
Plantxd +
xd
xd
+e + τ x
−
Move B from feedforward - to feedback
Gc(s) =(K + Jλ)s + Kλ
s
( [email protected] ) 7 / 17
PID Control - Algebraic Part: Tracking - RevisedDesign
J
Gc(s)
Controller1
s(Js+B)
Plant
B
xd +
xd
+e + τ
x
+
x
−
Move B from feedforward - to feedback
Gc(s) =(K + Jλ)s + Kλ
s
( [email protected] ) 7 / 17
PID Control - Algebraic Part: Tracking - RevisedDesign
Gc(s)1
s(Js + B)
B
r + er + τ
x
+
x
−
Reparameterize to accommodate J:
Gc(s) =(K + 2λJ)s2 + (2λK + λ2J)s + λ2K
s
Wcl(s) =(K + 2λJ)s2 + (2λK + λ2J)s + λ2K
Js3 + (K + 2λJ)s2 + (2λK + λ2J)s + λ2K
Always stable, for any J and B.( [email protected] ) 8 / 17
PID Control - Algebraic Part: Tracking - CompleteDesign
J
Gc(s)1
s(Js + B)
B
xd +
xd
+e + τ
x+
x−
Gc(s) =(K + 2λJ)s2 + (2λK + λ2J)s + λ2K
s,Wcl(s) =
Gc(s)Js2 + Gc(s)
r = W−1cl (s)[xd]
= xd +((Js2)G−1
cl (s))[xd]
= xd + Jωd
τ = Jxd + Bx + Gc(s)[e]
= J(
xd + 2λe + λ2e)+ Bx + K
(e + 2λe + λ2
∫e(τ)dτ
)= Je1(t) + Bx + Ke2(t)
( [email protected] ) 9 / 17
PID Control - Algebraic Part: Tracking - CompleteDesign
J
K
B
1s(Js + B)
xd
xd
e1
e2++
+
τ
xx
τ = Je1(t) + Bx + Ke2(t)
e1 =(
xd + 2λe + λ2e), e2 =
(e + 2λe + λ2
∫e(τ)dτ
)
φ = [ e1 x e2 ]> , θ∗ = [ J B K ]>
Adaptive PID control:
τ = J(t)e1 + B(t)x + Ke2
( [email protected] ) 10 / 17
PID Control - Algebraic Part: Tracking - CompleteDesign
J
K
B
1s(Js + B)
xd
xd
e1
e2++
+
τ
xx
τ = Je1(t) + Bx + Ke2(t)
e1 =(
xd + 2λe + λ2e), e2 =
(e + 2λe + λ2
∫e(τ)dτ
)
φ = [ e1 x e2 ]> , θ∗ = [ J B K ]>
Adaptive PID control:
τ = J(t)e1 + B(t)x + Ke2
( [email protected] ) 10 / 17
PID Control - Algebraic Part: Tracking - CompleteDesign
J
K
B
1s(Js + B)
xd
xd
e1
e2++
+
τ
xx
τ = Je1(t) + Bx + Ke2(t)
e1 =(
xd + 2λe + λ2e), e2 =
(e + 2λe + λ2
∫e(τ)dτ
)
φ = [ e1 x e2 ]> , θ∗ = [ J B K ]>
Adaptive PID control:
τ = J(t)e1 + B(t)x + Ke2
( [email protected] ) 10 / 17
PID Control - Algebraic Part: Tracking - CompleteDesign
J
K
B
1s(Js + B)
xd
xd
e1
e2++
+
τ
xx
τ = Je1(t) + Bx + Ke2(t)
e1 =(
xd + 2λe + λ2e), e2 =
(e + 2λe + λ2
∫e(τ)dτ
)
φ = [ e1 x e2 ]> , θ∗ = [ J B K ]>
Adaptive PID control:
τ = J(t)e1 + B(t)x + Ke2
( [email protected] ) 10 / 17
PID Control - Algebraic Part: Tracking - CompleteDesign
J
K
B
1s(Js + B)
xd
xd
e1
e2++
+
τ
xx
τ = Je1(t) + Bx + Ke2(t)
e1 =(
xd + 2λe + λ2e), e2 =
(e + 2λe + λ2
∫e(τ)dτ
)
φ = [ e1 x e2 ]> , θ∗ = [ J B K ]>
Adaptive PID control:
τ = J(t)e1 + B(t)x + Ke2
( [email protected] ) 10 / 17
PID Control - Algebraic Part: Tracking - CompleteDesign
J
K
B
1s(Js + B)
xd
xd
e1
e2++
+
τ
xx
τ = Je1(t) + Bx + Ke2(t)
e1 =(
xd + 2λe + λ2e), e2 =
(e + 2λe + λ2
∫e(τ)dτ
)
φ = [ e1 x e2 ]> , θ∗ = [ J B K ]>
Adaptive PID control:
τ = J(t)e1 + B(t)x + Ke2
( [email protected] ) 10 / 17
PID Control - Algebraic Part: Tracking - CompleteDesign
J
K
B
1s(Js + B)
xd
xd
e1
e2++
+
τ
xx
τ = Je1(t) + Bx + Ke2(t)
e1 =(
xd + 2λe + λ2e), e2 =
(e + 2λe + λ2
∫e(τ)dτ
)
φ = [ e1 x e2 ]> , θ∗ = [ J B K ]>
Adaptive PID control:
τ = J(t)e1 + B(t)x + Ke2
( [email protected] ) 10 / 17
Adaptive PID Control (x measurable)
τ = J(t)e1 + B(t)x + Ke2
Plant+controller: x =1J(−Bx + τ)
=1J
(−Bx + J(t)e1 + B(t)x + Ke2
)e2 =
(e + 2λe + λ2
∫e(τ)dτ
).. ..
e2 = −KJ
e2 +1J
(−Je1 − Bx
)− Error Model 3
Globally stable; limt→∞ e2(t) = limt→∞ e(t) = 0.
( [email protected] ) 11 / 17
Adaptive Phase Lead Compensators
Gc(s)1
s(Js + B)+ e τ x
−
Plant: Jx + Bx = τ J > 0
Phase-lead: Gc(s) = ks + z0
s + p0, z0 < p0
τ = Gc(s)e
J and B are unknown. Deternine τ so that limt→∞ e(t) = 0.
( [email protected] ) 12 / 17
Adaptive Phase Lead Compensators
Gc(s)1
s(Js + B)+ e τ x
−
Plant: Jx + Bx = τ J > 0
Phase-lead: Gc(s) = ks + z0
s + p0, z0 < p0
τ = Gc(s)e
J and B are unknown. Deternine τ so that limt→∞ e(t) = 0.
( [email protected] ) 12 / 17
Adaptive Phase Lead Compensators
Gc(s)1
s(Js + B)+ e τ x
−
Plant: Jx + Bx = τ J > 0
Phase-lead: Gc(s) = ks + z0
s + p0, z0 < p0
τ = Gc(s)e
J and B are unknown. Deternine τ so that limt→∞ e(t) = 0.
( [email protected] ) 12 / 17
Adaptive Phase Lead Compensators
AdaptiveController
1s(Js + B)
+ e τ x
−
Plant: Jx + Bx = τ J > 0
Phase-lead: Gc(s) = ks + z0
s + p0, z0 < p0
τ = Gc(s)e
J and B are unknown. Deternine τ so that limt→∞ e(t) = 0.
( [email protected] ) 12 / 17
Phase Lead Compensators - Algebraic Part
NominalController
1s(Js+B) s + a
θ0
cmd + x, x y
−
Gc(s) = ks + z0
s + p0, z0 < p0
Always stable for any J, B, z0, p0 > 0 with z0 < p0.Assume x and x measurable
( [email protected] ) 13 / 17
Phase Lead Compensators - Synthetic output y
J
B
θ0
Gc(s)1
s(Js+B) s + a
θ0
ω′d
ω′d
yd
++
+
+ v x, x y
−
Wcl(s)
ν = θ0(yd − y) + Bω′d + Jω′d
Stable for all parameters of Gc(s)
θ0 = θ∗ - value for which Wcl(s) has a desired phase margin
( [email protected] ) 14 / 17
Adaptive Phase Lead Compensators - Syntheticoutput y
J
B
θy
Gc(s)1
s(Js+B) s + a
θy
ω′d
ω′d
yd
++
+
+ v x, x y
−
ν = θy(t)(yd − y) + Bω′d + Jω′d= θy(t)(yd − y) + B(t)ω′d + J(t)ω′d + θ∗(yd − y) + Bω′d + Jω′d
( [email protected] ) 15 / 17
Adaptive Phase Lead Compensators - Syntheticoutput y
B
J
θ∗
θ
Gc(s)1
s(Js+B) s + a
θ∗
ω′d
ω′d
yd
ω
++
+
+
+ v x, x y
−
ν = θTω + θ∗ey + Bω′d + Jω′d
θ =
θy
BJ
, ω =
ey
ω′dω′d
( [email protected] ) 16 / 17
Underlying Error Model
θ> Wm(s)ω ey
Wm(s) =
kc
J(s + zc) (s + a)
s (s + pc)(s + B
J
)+ θ∗
kc
J(s + zc) (s + a)
θ =
θy
BJ
, ω =
ey
ω′dω′d
( [email protected] ) 17 / 17