I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances1
Adaptive rejection of unknown disturbances Application to active vibration control
I.D. Landau, A. ConstantinescuLaboratoire d’Automatique de Grenoble(INPG/CNRS), France
SevillaOctober 2004
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances2
OutlineOutline
• Introduction• Rejection of unknown stationary disturbances. Basic facts• Rejection of unknown narrow band disturbances in active
vibration control. Real-time results• Adaptive control solutions (indirect/direct)• Further experimental results
(comparison direct/indirect adaptive control)• Conclusions
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances3
Unknown disturbance rejection Unknown disturbance rejection –– classical solutionclassical solution
• requires the use of an additional transducer• difficult choice of the location of the transducer• adaptation of many parameters
++A / Bq -d ⋅u(t)
Plant )(p1 t
)(tδ
pp DN /
FIRDisturbance
Environment
Disturbance correlated
measurementDisturbance +Plant
model
AdaptationAlgorithm
y(t)
Obj: minimization of E{y2}
Disadvantages:
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances4
Rejection of unknown disturbances
• Assumption: Plant model almost constant and known (obtained by systemidentification)
• Problem: Attenuation of unknown and/or variable stationary disturbanceswithout using an additional measurement
• Solution: Adaptive feedback control- Estimate the model of the disturbance- Use the internal model principle- Use of the Youla parameterization (direct adaptive control)
Attention :The area is “dominated “ by adaptive signal processing solutions(Widrow’s adaptive noise cancellation) which require an additional transducer
Most surprising : there is an elegant “direct adaptive control” solution
Remainder : Models of stationary disturbances have poles on the unit circle
A class of applications : suppression of unknown vibrations(active vibration control)
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances5
Internal Model Principle
For asymptotic rejection of a disturbance the controllershould incorporate the model for the disturbance
Remember:
Step disturbance model : )1
1(
11−− q
ors
The controller should incorporate an « integrator »(which is the model of the disturbance)
DistrubanceModel
Distrubanceδ
(Dirac)
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances6
Indirect adaptive controlIndirect adaptive control
Two-steps methodology:
1. Estimation of the disturbance model,
2. Compute the controller using the « internal model principle »(the controller contains the model of the disturbance)
)( 1−qDp
++A / Bq-d ⋅
u(t)Plant )(p1 t
)(tδ
pp DN /
Disturbance
Environment
Disturbancemodel
y(t)Controller
DisturbanceModel
Estimation
DesignMethod
Specs.
It can be time consuming (if the plant model B/A is of large dimension)
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances7
Direct adaptive rejection of unknown disturbances
Plant
ModelModel
^Adaptationalgorithm
•One directly adapts a filter which is part of the controller.•It tunes the « internal model » inside the controller•Does not changes the poles of the closed loop (Y-K param.)
Model = Plantw=Ap
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances8
Plant
Model
0/1 S
0R
ABq d−
Q̂
ABq d−
A
ParameterAdaptationAlgorithm
y(t)u(t)
w(t)
p(t)+
++
-
- -
Direct adaptive rejection of unknown disturbances
Equivalent representation of the scheme (case A = as.stable)
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances9
Rejection of unknown narrow band disturbancesin active vibration control
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances10
The Active Suspension System
controller
residual acceleration (force)
primary acceleration / force (disturbance)
1
23
4
machine
support
elastomere cone
inertia chamber
piston
mainchamber
hole
motor
actuator(pistonposition)
sTs m 25.1=++−
A / Bq-d ⋅S / R
D / Cq 1-d ⋅
u(t)
ce)(disturban
(t)up
Controller
force) (residualy(t)
Plant )(p1 t
Two paths :•Primary•Secondary (double differentiator)
Objective:•Reject the effect of unknownand variable narrow banddisturbances•Do not use an aditionalmeasurement
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances11
The Active Suspension
Residualforce
(acceleration)measurement
Activesuspension
Primary force(acceleration)(the shaker)
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances12
Active Suspension
Primary path
Frequency Characteristics of the Identified Models
Secondary path
0;16;14 === dnn BA
Further details can be obtained from : http://iawww.epfl.ch/News/EJC_Benchmark/
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances13
Direct Adaptive Control : disturbance rejection
Closedloop
Open loop
Disturbance : Chirp
Initialization of theadaptive controller
25 Hz47 Hz
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances14
Direct adaptive control
Time Domain ResultsAdaptive Operation
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances15
19.8 19.9 20 20.1 20.2 20.3 20.4 20.5 20.6-4
-2
0
2
4
Time(s)
Out
put
(res
idua
l for
ce)
19.8 19.9 20 20.1 20.2 20.3 20.4 20.5 20.6
-2
0
2
Time(s)
Inpu
t (c
ontro
l act
ion)
32 Hz 20 Hz
29.8 29.9 30 30.1 30.2 30.3 30.4
-2
0
2
Time(s)O
utpu
t (re
sidu
al fo
rce)
29.8 29.9 30 30.1 30.2 30.3 30.4-2
-1
0
1
2
Time(s)
Inpu
t (co
ntro
l act
ion)
20 Hz
32 Hz
0 10 20 30 40 50 60-4
-2
0
2
4
Time(s)
Out
put (
resi
dual
forc
e)
0 10 20 30 40 50 60-2
-1
0
1
2
Time(s)
Inpu
t (co
ntro
l act
ion)
32 Hz 20 Hz 32 Hz 42 Hz 32 Hz
Direct Adaptive Control
Output
Input
Initialization of theadaptive controller
Adaptation transient Adaptation transient
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances16
Notations
K G
v(t) p(t)y(t)
v(t)r(t) u(t)
-
)q(A)q(Bq)q(G
1
1d1
−
−−− =
)()(')()('
)()(
)( 11
11
1
11
−−
−−
−
−− ==
qHqSqHqR
qSqR
qKR
S
Output Sensitivity function :
)z(R)z(Bz)z(S)z(A)z(P 11d111 −−−−−− +=Closed loop poles :
)()()(')(
)( 1
1111
−
−−−− =
zPzHzSzA
zS Syp
The gain of Syp is zero at the frequencies where Syp(e-jω)=0(perfect attenuation of a disturbance at this frequency)
+
ypS
HR and HS are pre-specified
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances17
Dirac circle;unit on the poles
edisturbanc ticdeterminis : )()(
)()( 1
1
=→
⋅= −
−
d(t) D
tqD
qNtp
p
p
p δ
Deterministic framework
Stochastic framework
)(0, sequence noise hiteGaussian w circle;unit on the poles
edisturbanc stochastic : )()(
)()( 1
1
σ=→
⋅= −
−
e(t) D
teqD
qNtp
p
p
p
Disturbance model
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances18
).()(')(
);()(')(
:Controller
111
111
−−−
−−−
⋅=
⋅=
qHqSqS
qHqRqR
S
R
Internal model principle: HS(z-1)=Dp(z-1)
Closed loop system. NotationsClosed loop system. Notations
)()(qD
1
)P(q
)(q)(q)S'(q)HA(qy(t)
1-p
1-
-1-1-1S
-1
tN p δ⋅⋅=
++−
A / Bq -d ⋅S / Ru(t)
Controller Plant )(p t
)(tδ
pp DN / Dirac circle;unit on the poles
edisturbanc ticdeterminis : )()(
)()( 1
1
=→
⋅= −
−
d(t) D
tqD
qNtp
p
p
p δ
)()()()()( :poles CL
)()()()(
)()()( :Output
11111
11
11
−−−−−−
−−
−−
+=
⋅=⋅=
qRqBzqSqAqP
tpqStpqP
qSqAty
d
yp
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances19
Indirect adaptive controlIndirect adaptive control
Two-steps methodology:
1. Estimation of the disturbance model,
2. Computation of the controller, considering
)( 1−qDp
)(ˆ)( 11 −− = qDqH pS
++A / Bq-d ⋅
u(t)Plant )(p1 t
)(tδ
pp DN /
Disturbance
Environment
Disturbancemodel
y(t)Controller
DisturbanceModel
Estimation
DesignMethod
Specs.
It can be time consuming (if the plant model B/A is of large dimension)
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances20
Indirect adaptive controlIndirect adaptive control
Step II: Computation of the controller
'
'ˆ
ˆ
SDS
PBRqSDA
DH
p
dp
pS
=
=+
=−
Solving Bezout equation (for S’ and R)
Remark:It is time consuming for large dimension of the plant model
Step I : Estimation of the disturbance model ARMA identification (Recursive Extended Least Squares)
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances21
Plant
ModelModel
Central contr: [R0(q-1),S0(q-1)].
CL poles: P(q-1)=A(q-1)S0(q-1)+q-dB(q-1)R0(q-1).
Control: S0(q-1) u(t) = -R0 (q-1) y(t)
Control: S0(q-1) u(t) = -R0 (q-1) y(t) - Q (q-1) w(t),
where w(t) = A (q-1) y(t) - q-dB (q-1) u(t).
CL poles: P(q-1)=A(q-1)S0(q-1)+q-dB(q-1)R0(q-1).
Q-parameterization :R(z1)=R0(q-1)+A(q-1)Q(q-1);S(q-1)=S0(z-1)-q-dB(q-1)Q(q-1).
InternalInternal modelmodel principleprinciple andand QQ--parameterizationparameterization))
Model= Plantw=Ap
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances22
Internal model principle and Q- parameterization
Central contr: [R0(q-1),S0(q-1)].
CL Poles: P(q-1)=A(q-1)S0(q-1)+q-dB(q-1)R0(q-1).
Control: S0(q-1) u(t) = -R0 (q-1) y(t)
Q-parameterization :R(z1)=R0(q-1)+A(q-1)Q(q-1);S(q-1)=S0(z-1)-q-dB(q-1)Q(q-1).
Closed Loop Poles remain unchanged
pd MDBQqSS =−= −
0 0SBQqMD dp =+ −Solve:
? ?
Internal model assignment on Q
Q(q-1) computed such as [S(q-1)] contains the internal model of the disturbance
Q can be used to “directly”tune the internal model without changing the closed loop poles(see next)
Will lead also to an « indirect adaptive control solution »
BUT:
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances23
Goal: minimize y(t) (according to a certain criterion).
).()()(
)()(
)()(
)( 11
1
1
10 twqQ
qPqBq
twqPqS
td
⋅−⋅= −−
−−
−
−
ε
)( of valueestimatedan be ˆLet 11 −qQ)(t,qQ -
Direct Adaptive Control (unknown Dp)
)0 termedisturbanc )1((
)1()()(
)()],1(ˆ)([)1(
thatshowcan We
1
111
→=+
++⋅⋅+−=+−
−∗−−−
tv
tvtwqP
qBqqtQqQt
dε
Hypothesis: Identified (known) plant model (A,B,d).
[ ] [ ])(
)P(q))Q(q(qq-)(qS
)()(qD)(q
)P(q))Q(q(qq-)(qS)A(q
y(t)
e.disturbanc ticdeterminis : )()()(
)(Consider
1-
1-1-d-1-0
1-p
1-
1-
1-1-d-1-0
1-
1
1
1
twB
tNB
tqDqN
tp
p
p
p
=⋅⋅=
⋅=−
−
δ
δ
(Based on an ideea of Y. Z. Tsypkin)
Leads to a directadaptive control
Define:w
ε+
-
Q̂
PS /0
S
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances24
[ ] [ ]
).()()1()(
);()()1()(A1) w(t
);()(
)()(
);1()(
)()1(
and
1)(for ,)1()()( ;)(q̂)(q̂(t)ˆ
where
),()1(ˆ)1()1( :error adaptation
);()(ˆ)1()1( :error adaptation
11
11
1
1
2
1
10
1
2210
1
10
tuqBtuqB
tuqBqtyq
twqP
qBqtw
twqP
qStw
ntwtwttt
tttwtposterioriA
tttwtprioriA
d
d
QTT
T
T
⋅=+⋅
⋅−+⋅=+
⋅=
+⋅=+
=−==
+−+=+
−+=+
−∗−
−∗−−
−
−∗−
−
−
φθ
φθε
φθε
Parameter adaptation algorithm:
+=++++=+
−− ).()()()()()1(1);(t(t)1)F(t(t)ˆ1)(tˆ
21
11
0
ttttFttF Tφφλλεφθθ
The Algorithm
1−=PDQ nn
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances25
Plant
ModelModel
^Adaptationalgorithm
Direct adaptive rejection of unknown disturbances
• The order of the Q polynomial depends upon the order of the disturbance modeldenominator (DP) and not upon the complexity of the plant model
• Less parameters to estimate then for the identification of the disturbance model
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances26
Further experimental results on the active suspensionComparison between direct/indirect adaptive control
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances27
Narrow band disturbances = variable frequency sinusoid ⇒ nQ = 1Frequency range: 25 ÷ 47 Hz
Nominal controller [R0(q-1),S0(q-1)]: nR0=14, nS0=16
Evaluation of the two algorithms in real-time
RealReal--timetime resultsresults
• The algorithm stops when it converges and the controller is applied.• It restarts when the variance of the residual force is bigger than a given threshold.• As long as the variance is not bigger than the threshold, the controller is constant.
Implementation protocol 1: Self-tuning
Implementation protocol 2: Adaptive• The adaptation algorithm is continuously operating• The controller is updated at each sample
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances28
Frequency domain results – indirect adaptive method
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances29
Frequency domain results – direct adaptive method
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances30
Indirect adaptive method Direct adaptive method
Time Domain ResultsSelf-tuning Operation
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances31
Indirect adaptive method Direct adaptive method
Time Domain ResultsAdaptive Operation
0 0.5 1 1.5 2 2.5 3 3.5 4
x 104
-6
-4
-2
0
2
4
6
Indirect method in adaptative operation
Samples
Res
idua
l for
ce [
V]
32 Hz 25 Hz 32 Hz 47 Hz 32 Hz
•Direct adaptive control leads to a much simpler implementationand better performance than indirect adaptive control•Direct adaptive control in adaptive mode operation gives betterresults than direct adaptive control in self-tuning mode
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances32
ConclusionsConclusions
-Using internal model principle, adaptive feedback control solutions can be provided for the rejection of unknown disturbances
-Both direct and indirect solutions can be provided
-Two modes of operation can be used : self-tuning and adaptive
-Direct adaptive control is the simplest to implement
-Direct adaptive control offers better performance
-The methodology has been extensively tested on an activesuspension system
Open problem:Theoretical study of the plant – model mismatch
I.D. Landau, A. Constantinescu: Adaptive rejection of unknown disturbances33
).()()(
)()(
)()(
)( 11
1
1
10 twqQ
qPqBq
twqPqS
td
⋅−⋅= −−
−−
−
−ε
Direct Adaptive Control (unknown Dp)
0SBQqMD dp =+ −
We need to express ε(t)as:
[ ] )(),1(ˆ)()1( 11 tqtQqQt Ψ+−=+ −−ε
(*)
Using: , (*) becomes
)1()(
)()()(
)()()],1(ˆ)([)1( 1
11
1
111 ++⋅⋅+−=+ −
−−
−
−∗−−− tp
qP
qDqMtw
qPqBqqtQqQt p
dε
Vanishing term
)1()(
)()()1(
)(
)()(1
11
1
11
+=+ −
−−
−
−−
tqP
qNqMtp
qP
qDqM pp δ
)1()(
)()(
)()(
1
1
1
1+⋅=⋅ −
−−
−
−∗−tw
qPqBq
twqP
qBq dd
Details:
[ ]QiqtQt
iQˆ,minarg)*,(ˆ
0
2ˆ
1 ∑==
− ε
search recursively for :Instead of solving 0SBQqMD dp =+ −