Adaptive Control5
Adaptive Control5
1
I.D. Landau: « A Course on Adaptive Control » - 4
Adaptive Control – A Basic Scheme
SUPERVISION
Adaptation loop
Performance Plant
Controller
specifications Model
Design
Estimation
Adjustable Plant
+ Controller
-
2
I.D. Landau: « A Course on Adaptive Control » - 4
Outline
3
I.D. Landau: « A Course on Adaptive Control » - 4
Digital Control System
r(k)
DAC
+ DIGITAL
COMPUTER + Actuator Process Sensor ADC
- ZOH
CLOCK
4
I.D. Landau: « A Course on Adaptive Control » - 4
Digital Control System
CLOCK
DISCRETIZED PLANT
5
I.D. Landau: « A Course on Adaptive Control » - 4
The R-S-T Digital Controller
CLOCK
r(t) u(t)
D/A y(t)
Computer + PLANT A/D
(controller) ZOH
Discretized Plant
n B i=1
−nB +1
∑ bi q −i −1
=B(q )=q B (q ) −1 −1
; B(q−1 )=b 1 +b 2 q−1 +.. . +bn q
B
i=1
−1 −d −1
(*) A( q ) y(t )=q B(q )u(t )
−1 −1
(*) A( q ) y (t+d )=B( q )u(t ) (Predictive form)
−d −1
−1 q B(q )
(*) y(t )=H (q )u (t ) ; −1
H (q )= - pulse transfer operator
A (q−1 )
−z −1
−1 −1 q B( z )
q →z −1
H ( z )= - transfer function
A ( z−1 )
7
I.D. Landau: « A Course on Adaptive Control » - 4
First order systems with delay
Fractional delay
−sτ
Continuous time model Ge τ=d . T s +L ; 0 <L<T s
H ( s)=
1+sT
Discrete time z −d (b1 z −1 +b 2 z −2 ) z −d−1 (b 1 +b2 z−1 )
H ( z−1 )= =
model 1+a 1 z
−1
1 +a1 z
−1
L−T T
s
T s s L
−
− T T T
a 1=−e T b1 =G( 1−e ) b 2 =Ge ( e −1)
b2
Remark: For L>0 . 5 T s ⇒ b 2 >b1 ⇒ unstable zero (|− |>1)
+j
b1
b2
<1 z
b1
o o x x o - zero
-a 1 1 x - pole
b2
b1 >1 -j
8
I.D. Landau: « A Course on Adaptive Control » - 4
Tracking and regulation with independent objectives
Remarks:
•Does not tolerate fractional delay > 0.5 TS (unstable zero)
•High sampling frequency generates unstable discrete time zeros !
9
I.D. Landau: « A Course on Adaptive Control » - 4
Tracking and regulation with independent objectives
0.8
0.4
0.2
= 0.1 = 0.2
Imag Axis
-0.2
-0.4
-0.8
0.3 0.2
-1
-1 -0.5 0 0.5 1
Real Axis
10
I.D. Landau: « A Course on Adaptive Control » - 4
Tracking and regulation with independent objectives
y∗(t+d+ 1)
r(t ) Bm 1 u(t ) −d
q B y(t )
+
T
Am -
S A
R
−(d+1 )
q
P
−(d+ 1)
q
q−( d+1 ) Bm
Am
−1 −1 −1
P(q )=P D (q )P F (q )
−1
Bm (q )
Reference signal (tracking): y (t+d+ 1)= −1
r (t )
A m (q )
Controller: −1 −1
S (q )u(t )=T ( q ) y (t+d+ 1)−R (q ) y (t )
−1
11
I.D. Landau: «(qA) -1Course on Adaptive Control » - 4
Regulation (computation of R(q-1) and S(q-1))
Unique solution if: nP = deg P(q-1) = nA+d ; deg S'(q-1) = d ; deg R(q-1) = nA-1
−n A −1 −1 −1 −d
−1 −1
R(q )=r 0 +r 1 q +.. . r n −1 q
S' (q )=1 +s' 1 q +.. . s' d q
A
12
I.D. Landau: « A Course on Adaptive Control » - 4
Regulation ( computation of R(q-1) and S(q-1))
d+1 nA
T ' ' T
x =[ 1,s 1 ,. ..,s d ,r 0 ,r 1 ,...,r n−1 ] p =[ 1 ,p1 ,p 2 ,. . .,p n ,pn
A A +1 , .. . ,p n A +d ]
Controller equation:
−1 −1 −1
S (q )u(t )=P(q ) y ( t+d+1)−R (q ) y (t )
−1 −1
P(q ) y (t+d+1 )−R (q ) y(t )
u(t )=
S (q−1 )
1 −1 −1 −1
u(t )=
b1
[ P( q ) y (t+d+ 1)−S (q )u (t−1 )−R (q ) y (t ) ] (s0 = b1)
−1
Bm (q )
Reference signal (tracking) : y (t+d+ 1)= −1
r (t )
A m (q )
14
I.D. Landau: « A Course on Adaptive Control » - 4
Tracking and regulation with independent objectives
A time domain interpretation
y* (t+d+1) u(t) y(t)
r(t) Bm
+
1 B∗¿
Am P S q−(d+1) ¿
A
-
−( d+1 ) R
q −1
y (t )= −1
P(q ) y∗(t+d+1 )
P (q ) q−(d+1 )
P
15
I.D. Landau: « A Course on Adaptive Control » - 4
Tracking and regulation with independent objectives
Synthesis in the time domain – an example
*
17
I.D. Landau: « A Course on Adaptive Control » - 4
Model Reference Adaptive Control
−1
Objective: P( q ) [ y ( t+ 1)− y∗(t+ 1) ] =0
Py∗( t+1 )− b^ 2 (t )u(t−1 )−r^ 0 ( t ) y (t )
Adjustable controller: u(t )=
b^ (t ) 1
P(q−1 ) y∗(t+1)= θ^ T (t ) φ(t )
θ^ T (t )=[ b^ 1 (t ), b^ 2 (t ),^r 0 (t ) ] ; φT (t )=[ u (t ),u(t−1 ),y(t ) ]
But for the correct values of controller parameters one has:
P(q−1 ) y(t+1)=P(q−1 ) y∗(t+1 )=θT φ(t )
0 T
And therefore one has: ^
ε (t+1 )=[ θ− θ(t ) ] φ(t )
T
^
Define the a posteriori adaptation error: ε (t+1 )= [ θ−θ(t+1 ) ] φ(t )
Use P.A.A.
However one should show in addition that ‖φ(t)‖ is bounded (i.e. plant
input and output are bounded)
18
I.D. Landau: « A Course on Adaptive Control » - 4
Model Reference Adaptive Control
Derivation and
I.D. Landau: « A Course on Adaptive Control » - 4
PAA design [board] 19
Plant model estimation + computation of the controller (indirect)
Step 1 : Plant model estimation
Plant model (unknown): y (t+ 1)=−a1 y (t )+b 1 u(t )+b2 u(t−1 )=θ TP φ (t )
T
a priori prediction error: ε 0 (t+ 1 )=y (t+ 1)− ^y 0 (t+ 1)=[ θ P −θ^ P (t ) ] φ(t )
T
a posteriori prediction error: ε (t+1 )=y (t+ 1 )− y^ (t+1 )= [ θ P− θ^ P (t+1 ) ] φ (t )
Use PAA
Step 2 : Computation of the controller
Compute at each instant t : r^ 0 (t )=p1 −a^ 1 (t )
From θ^ P (t )
Adjustable controller:
−1
P(q ) y∗(t+1)= θ (t ) φ(t ) ^T
φ T (t )= [ u(t ),u(t−1),y ( t )] ; θ^ T ( t )=[ b^ 1 (t ), b^ 2 (t ), r^ 0 (t ) ]
In the general case d > 0 one will have to solve equation (**)
20
I.D. Landau: « A Course on Adaptive Control » - 4
Re-parametrized plant model estimation (direct)
y(t+1)=−a1 y (t )+b1 u (t )+b2 u(t−1 )± p1 y (t )
Plant model (unknown):
− p1 y(t )+( p1 −a 1 ) y (t )+b 1 u(t )+b2 u(t−1)=− p1 y (t )+θT φ (t )
{
r0
^y 0 (t+1)=− p1 y(t )+ ^r 0 (t ) y(t )+b^ 1 (t )u( t )+ b^ 2 (t )u(t −1)
Re-parametrized
adjustable predictor: − p y(t )+ θ^ T (t )φ (t )
1
θ^ T (t )=[ b^ 1 (t ), b^ 2 (t ), r^ 0(t ) ] ; φ T (t )= [ u(t ),u (t−1),y( t )]
0 0 T
a priori prediction error: ε (t+ 1 )=y (t+1)− ^y (t+ 1)=[ θ−θ^ (t ) ] φ (t )
T
a posteriori prediction error: ^
ε (t+1 )=y (t+1 )− y^ (t+1 )= [ θ−θ(t+1 )] φ(t )
Use PAA
One estimates directly the parameters of the controller
One has:
−1
P( q ) [ y (t+ 1)− y∗(t+ 1) ] =0
21
I.D. Landau: « A Course on Adaptive Control » - 4
Adaptive tracking and regulation with independent objectives
22
I.D. Landau: « A Course on Adaptive Control » - 4
Direct Adaptive Control – Simulations results
Tracking
−1 −1 −1
P(q )=1 P(q )=(1−0.4q )
The choice of the poles for the closed loop (regulation)
has a great influence upon adaptation transient behavior!
23
I.D. Landau: « A Course on Adaptive Control » - 4
Direct Adaptive Control – Simulations results
Regulation
−1 −1 −1
P(q )=1 P(q )=(1−0.4q )
The choice of the poles for the closed loop (regulation)
has a great influence upon adaption transient behavior!
24
I.D. Landau: « A Course on Adaptive Control » - 4
Indirect Adaptive Control
of non-necessarily zeros- stable plants
25
I.D. Landau: « A Course on Adaptive Control » - 4
Pole placement
26
I.D. Landau: « A Course on Adaptive Control » - 4
Structure
p(t)
-d + y(t)
r(t) +
-1 1
------------ q B +
T (q)) -1 ---------
S (q ) A
-
PLANT
-1
R(q )
-d -1
q B(q )
--------------------
-1
P (q )
−d −1
−1 q B(q )
Plant: H (q )=
A (q−1 )
−n A −n B
A( q−1 )=1+a 1 q−1 +.. . +an q B(q−1 )=b 1 q−1 +b 2 q−2 +.. . +bn q =q−1 B∗(q−1 )
A B
27
I.D. Landau: « A Course on Adaptive Control » - 4
Pole placement
−1 −1 −1
P(q )=P D (q )P F (q )
Dominant poles Auxiliary poles
Choice of PD(q-1) (dominant poles)
Specification discretization
−1
in continuous time 2 order ()
nd P D (q )
(tM, M) Te
0 . 25≤ω 0 T e≤1 . 5
0 . 7≤ζ ≤1
Auxiliary poles
• Auxiliary poles are introduced for robustness purposes
• They usually are selected to be faster than the dominant poles
29
I.D. Landau: « A Course on Adaptive Control » - 4
Regulation (computation of R(q-1) and S(q-1))
−1 −1 −d −1 −1 −1
(Bezout) A( q )S (q )+q B (q ) R( q )=P(q ) (*)
? ?
−1
n A =deg A ( q ) n B =deg B(q )
−1 A and B do not have
common factors
unique minimal solution for :
−1
n P =deg P(q )≤n A +nB +d−1
−1 −1 −n S
S (q )=1 +s 1 q +.. . s n q =1 +q−1 S∗(q−1 )
S
−1 −1 −n R
R(q )=r 0 +r 1 q + .. . r n q
R
30
I.D. Landau: « A Course on Adaptive Control » - 4
Computation of R(q-1) and S(q-1)
nB + d nA
nA + n B + d
b'i = 0 pour i = 0, 1 ...d ; b'i = bi-d pour i>d
Use of iReg or bezoutd.sci(.m) for solving (*)
31
I.D. Landau: « A Course on Adaptive Control » - 4
Structure of R(q-1) and S(q-1)
•The pre specified filters HR and HS will allow to impose certain properties of the
closed loop.
•They can influence performance and/or robustness
−1 −1 −1 −d −1 −1 −1 −1
A( q ) H S (q )S' (q )+q B( q ) H R (q ) R'(q )=P (q )
? ?
32
I.D. Landau: « A Course on Adaptive Control » - 4
Fixed parts (HR , HS). Examples
33
I.D. Landau: « A Course on Adaptive Control » - 4
Tracking (computation of T(q-1) )
Ideal case
−1
-1 B m (q )
r (t) q Bm y* (t) y* −1
H m (q )= −1
------------ A m (q )
Am
r
Tracking reference desired t Bm (q−1 )=b m0 +bm1 q−1 +. ..
model (Hm) trajectory for y (t) −1 −1 −2
Am ( q )=1+a m1 q +am2 q +. ..
Specification discretization
−1
in continuous time 2 order ()
nd H m (q )
(tM, M) Ts
0 . 25≤ω 0 T s ≤1 .5
0 . 7≤ζ ≤1
The ideal case can not be obtained (delay, plant zeros)
Objective : to approach y*(t)
−( d+ 1) −1
q Bm (q )
y (t )= −1
r (t )
A m (q )
34
I.D. Landau: « A Course on Adaptive Control » - 4
Tracking (computation of T(q-1) )
−1
Bm ( q )
Build: y (t+d+ 1)= −1
r (t )
A m (q )
Choice of T(q-1) :
• Imposing unit static gain between y* and y
• Compensation of regulation dynamics P(q-1)
−(d +1) −1 −1
1 q T (q )B∗(q )
T(q-1) = GP(q-1) G= H CL (q−1 )=
B(1) P(q−1 )
−( d+1 ) −1
q B m (q ) B∗(q−1 )
F.T. r y: H BF (q−1 )= ⋅
−1
A m (q ) B∗(1 )
1
Particular case : P = Am −1
T (q )=G=
B (1)
35
I.D. Landau: « A Course on Adaptive Control » - 4
Pole placement. Tracking and regulation
y* (t+d+1) u(t) y(t)
r(t) Bm + 1 -d
T q B
Am S A
-
-(d+1) -1
q B*(q )
P(q -1 )
q -(d+1) B*(q -1)
B(1)
-1
q
-(d+1) B (q ) B*(q -1 )
m
-1
A m(q ) B(1)
36
I.D. Landau: « A Course on Adaptive Control » - 4
Pole placement. Control law
−1 −1
T ( q ) y∗(t+d+ 1)−R(q ) y(t )
u(t )=
S (q−1 )
−1 −1 −1 −1
S(q )u(t )+R(q ) y(t )=GP(q ) y∗(t+d+1)=T (q ) y∗(t+d+ 1)
−1 −1 −1
S (q )=1+q S∗(q )
u(t )=P(q−1 )Gy∗(t+d+1)−S∗(q−1 )u(t−1)−R (q−1 ) y(t )
−1
Bm (q )
y∗(t+d+ 1)= −1
r (t )
Am( q )
−1 −1 −1
Am ( q )=1+q A m∗( q )
−1 −1 −1 −1 −2
Bm (q )=b m0 +bm1 q +. .. Am ( q )=1+a m1 q +am2 q +. ..
37
I.D. Landau: « A Course on Adaptive Control » - 4
Indirect adaptive control
At each sampling instant:
Step I : Estimation of the plant model ( A^ , B^ )
ARX identification (Recursive Least Squares)
Remark:
It is time consuming for large dimension of the plant model
38
I.D. Landau: « A Course on Adaptive Control » - 4
Supervision
Estimation:
• Check if input is enough “persistently exciting”
(if not, do not take in account the estimations)
• Check if A^ and B^ are numerically “sound” (condition number)
(no close poles/zeros)
• If necessary, add external excitation (testing signal)
Control:
• Check if desired dominant closed loop poles are compatible
with estimated plant poles
• Check robustness margins
Additional problem:
• How to deal with neglected dynamics ?
(filtering of the data, robustification of PAA)
39
I.D. Landau: « A Course on Adaptive Control » - 4
Homework
Homework
40
I.D. Landau: « A Course on Adaptive Control » - 4