Beruflich Dokumente
Kultur Dokumente
Olivier Sename
Grenoble INP / GIPSA-lab
September 2015
Robust control
September 2015
1 / 138
O. Sename [GIPSA-lab]
2/138
Reference books
To be studied during the course
S. Skogestad and I. Postlethwaite, Multivariable Feedback Control: analysis and design, John
(mathworks.com/products/robust)
Other references (some in french)
G.C. Goodwin, S.F. Graebe, and M.E. Salgado, Control System Design, Prentice Hall, New Jersey, 2001.
csd.newcastle.edu.au
G. Duc et S. Font, Commande Hinf et -analyse: des outils pour la robustesse, Herms, France, 1999.
D. Alazard, C. Cumer, P. Apkarian, M. Gauvrit, et G. Ferreres, Robustesse et commande optimale,
Cpadues Editions, 1999.
O. Sename [GIPSA-lab]
3/138
1
1+G(s)K(s)
(GKr)
1
Sensitivity function S(s) =
1+L(s)
T (s) =
L(s)
1+L(s)
S = 1 T S = ry .
r
S to be minimized !
distance from -1 to Nyquist plot =
inf | 1 L(j) |=
1
1
sup | 1+L(j)
|
1
W (j)
|,
System definitions
Nonlinear systems
In control theory, dynamical systems are mostly modeled and analyzed thanks to the use of a set
of Ordinary Differential Equations (ODE)1 .
Nonlinear dynamical system modeling is the "most" representative model of a given system.
Generally this model is derived thanks to system knowledge, physical equations etc. Nonlinear
dynamical systems are described by nonlinear ODEs.
Definition (Nonlinear dynamical system)
For given functions f : Rn Rnw 7 Rn and g : Rn Rnw 7 Rnz , a nonlinear dynamical
system (N L ) can be described as:
x = f (x(t), w(t))
N L :
z = g(x(t), w(t))
(1)
where x(t) is the state which takes values in a state space X Rn , w(t) is the input taking values
in the input space W Rnw and z(t) is the output that belongs to the output space Z Rnz .
1
Partial Differential Equations (PDEs) may be used for some applications such as irrigation channels, traffic flow, etc. but
methodologies involved are more complex compared to the ones for ODEs.
O. Sename [GIPSA-lab]
5/138
System definitions
Comments
The main advantage of nonlinear dynamical modeling is that (if it is correctly described) it
methodological tools; e.g. parameter identification, control and observation synthesis and
analysis are complex and non systematic (especially for MIMO systems).
In this field, notions of robustness, observability, controllability, closed loop performance etc.
are not so obvious. In particular, complex nonlinear problems often need to be reduced in
order to become tractable for nonlinear theory, or to apply input-output linearization
approaches (e.g. in robot control applications).
As nonlinear modeling seems to lead to complex problems, especially for MIMO systems
control, the LTI dynamical modeling is often adopted for control and observation purposes.
The LTI dynamical modeling consists in describing the system through linear ODEs.
According to the previous nonlinear dynamical system definition, LTI modeling leads to a local
description of the nonlinear behavior (e.g. it locally describes, around a linearizing point, the
real system behavior).
From now on only Linear Time-Invariant (LTI) systems are considered.
O. Sename [GIPSA-lab]
6/138
System definitions
= Ax(t) + Bw(t)
(2)
LT I :
z(t) = Cx(t) + Dw(t)
where x(t) is the state which takes values in a state space X Rn , w(t) is the input taking values
in the input space W Rnw and z(t) is the output that belongs to the output space Z Rnz .
The LTI system locally describes the real system under consideration and the linearization
procedure allows to treat a linear problem instead of a nonlinear one. For this class of problem,
many mathematical and control theory tools can be applied like closed loop stability, controllability,
observability, performance, robust analysis, etc. for both SISO and MIMO systems. However, the
main restriction is that LTI models only describe the system locally, then, compared to nonlinear
models, they lack of information and, as a consequence, are incomplete and may not provide
global stabilization.
O. Sename [GIPSA-lab]
7/138
Towards H norm
O. Sename [GIPSA-lab]
8/138
Towards H norm
5
3
4
2
O. Sename [GIPSA-lab]
y=
0.7070
0.7070
y=
0.2
0.2
9/138
and
Towards H norm
Towards SVD
max
d6=0
kGdk2
=
(G)
kdk2
kGdk2
= (G)
kdk2
O. Sename [GIPSA-lab]
10/138
Towards H norm
0
0
0
1
G=
100
0
100
0
.
O. Sename [GIPSA-lab]
11/138
Towards H norm
(G(j))
ky()k2
(G(j))
ku()k2
Singular Values
40
largest singular
value
20
-20
-40
smallest singular
value
-60
-80
-100
-1
10
10
10
10
Frequency (rad/sec)
O. Sename [GIPSA-lab]
12/138
Signal norms
Reader is also invited to refer to the famous book of Zhou et al., 1996, where all the following
definitions and additional information are given.
All the following definitions are given assuming signals x(t) C, then they will involve the
conjugate (denoted as x (t)). When signals are real (i.e. x(t) R), x (t) = xT (t).
Definition (Norm and Normed vector space)
Let V be a finite dimension space. Then p 1, the application ||.||p is a norm, defined as,
||v||p =
|vi |p
1/p
(3)
Let V be a vector space over C (or R) and let k.k be a norm defined on V . Then V is a
normed space.
O. Sename [GIPSA-lab]
13/138
L? norms
Definition (L1 , L2 , L norms)
The 1-Norm of a function x(t) is given by,
+
Z
kx(t)k1 =
|x(t)|dt
(4)
kx(t)k2
=
=
qR
q
+
x (t)x(t)dt
0
R +
1
X (j)X(j)d
2
(5)
(6)
kXk =
sup
Re(s)0
(7)
if the signals that admit the Laplace transform, analytic in Re(s) 0 (i.e. H ).
O. Sename [GIPSA-lab]
14/138
have a limit that is also in K) normed vector space B (with norm k.kp ).
A Hilbert space is a (real or complex) vector space H with an inner product < ., . > that is
complete under the norm defined by the inner product. The norm of f H is then defined by,
p
kf k = < f, f >
(8)
Every Hilbert space is a Banach since a Hilbert space is complete with respect to the norm
associated with its inner product.
The Hardy spaces (Hp ) are certain spaces of holomorphic functions (functions defined on an
open subset of the complex number plane C with values in C that are complex-differentiable
at every point) on the unit disk or upper half plane.
The Lp space are spaces of p-power integrable functions (function whose integral exists,
15/138
L and H spaces
Definition (L space)
L is the space of piecewise continuous bounded functions. It is a Banach space of
matrix-valued (or scalar-valued) functions on C and consists of all complex bounded matrix
functions f (j), R, such that,
sup [f (j)] <
(9)
O. Sename [GIPSA-lab]
RH
6 RH
RH
(10)
16/138
H norm
Definition (H norm)
The H norm of a proper LTI system defined as on (2) from input w(t) to output z(t) and which
belongs to RH , is the induced energy-to-energy gain (L2 to L2 norm) defined as,
kG(j)k
=
=
supR (G(j))
kz(s)k
supw(s)H2 kw(s)k2
maxw(t)L2
kzk2
kwk2
(11)
called the worst case attenuation level in the sense that it measures the maximum
amplification that the system can deliver on the whole frequency set.
For SISO (resp. MIMO) systems, it represents the maximal peak value on the Bode
magnitude (resp. singular value) plot of G(j), in other words, it is the largest gain if the
system is fed by harmonic input signal.
Unlike H2 , the H norm cannot be computed analytically. Only numerical solutions can be
17/138
A = U V T , =
1
0
0
0
, 1 =
1
0
..
.
0
0
2
..
.
0
...
...
...
0
0
...
p
O. Sename [GIPSA-lab]
18/138
L2 and H2 spaces
Definition (L2 space)
L2 is the space of piecewise continuous square integrable functions. It is a Hilbert space of
matrix-valued (or scalar-valued) functions on C and consists of all complex matrix functions f (j),
R, such that,
s
Z +
1
Tr[f (j)f (j)]d <
(12)
||f ||2 =
2
Definition (H2 and RH2 spaces)
H2 is a subspace (Hardy space) of L2 with matrix functions f (j), R, analytic in Re(s) > 0
(functions that are locally given by a convergent power series and differentiable on each point of its
definition set). In particular, the real rational subspace of H2 , which consists of all strictly proper
and real rational stable transfer matrices, is denoted by RH2 .
Example
In control theory
O. Sename [GIPSA-lab]
s+1
(s+10)(s+6)
s+1
(s10)(s+6)
s+1
(s+10)
RH2
6 RH2
6 RH2
(13)
19/138
H2 norm
Definition (H2 norm)
The H2 norm of a strictly proper LTI system defined as on (2) from input w(t) to output z(t) and
which belongs to RH2 , is the energy (L2 norm) of the impulse response g(t) defined as,
qR
+
kG(j)k2 =
g (t)g(t)dt
q
R +
1
(14)
=
Tr[G (j)G(j)]d
2
supw(s)H2
||z(s)||
||u(s)||2
The norm H2 is finite if and only if G(s) is strictly proper (i.e. G(s) RH2 ).
In MATLAB, use norm(sys,2)
Remark
H2 physical interpretations and remarks
For SISO systems, it represents the area located below the so called Bode diagram.
For MIMO systems, the H2 norm is the impulse-to-energy gain of z(t) in response to a white
noise input w(t) (satisfying W (j)W (j) = I, i.e. uniform spectral density).
The H2 norm can be computed analytically (through the use of the controllability and
20/138
2 Performance analysis
Outline
1. The H norm and related definitions
System definitions
H norm as a measure of the system gain ?
LTI systems and signals norms
2. Performance analysis
Definition of the sensitivity functions
Frequency-domain analysis
Stability issues
3. Performance specifications for analysis and/or design
Introduction
SISO case
MIMO case
Some performance limitations
4. Introduction to Linear Matrix Inequalities
Background in Optimisation
LMI in control
Some useful lemmas
5. H control design
About the control structure
Solving the H control problem
The Riccati approach
The LMI approach for H control design
Example
6. Uncertainty modelling and robustness analysis
Introduction
Representation of uncertainties
Definition of Robustness analysis
Robustness analysis: the unstructured case
Robustness analysis: the structured case
Towards Robust control design
7. Introduction to LPV systems and control
LPV modelling
LPV Control
O. Sename [GIPSA-lab]
21/138
2 Performance analysis
Introduction
Objectives of any control system [Skogestad and Postlethwaite(1996)]
shape the response of the system to a given reference and get (or keep) a stable system in
closed-loop, with desired performances, while minimising the effects of disturbances and
measurement noises, and avoiding actuators saturation, this despite of modelling uncertainties,
parameter changes or change of operating point.
This is formulated as:
Nominal stability (NS): The system is stable with the nominal model (no model uncertainty)
Nominal Performance (NP): The system satisfies the performance specifications with the nominal
model (no model uncertainty)
Robust stability (RS): The system is stable for all perturbed plants about the nominal model, up to
the worst-case model uncertainty (including the real plant)
Robust performance (RP): The system satisfies the performance specifications for all perturbed
plants about the nominal model, up to the worst-case model uncertainty
(including the real plant).
O. Sename [GIPSA-lab]
22/138
2 Performance analysis
1
1+G(s)K(s)
1
1+K(s)G(s)
L = G(s)K(s)
1
S(s) = 1+L(s)
T (s) =
L(s)
1+L(s)
23/138
2 Performance analysis
O. Sename [GIPSA-lab]
24/138
2 Performance analysis
K(s)G(s)
1 + K(s)G(s)
is given by:
1
G
G
T
=
= S.
T
1 + K(s)G(s) G
G
A good module margin implies good gain and
phase margins:
GM
1
MS
andP M
MS 1
MS
M = 1/M
S
MS = max |S(j)| = kSk
MT = max |T (j)|
25/138
2 Performance analysis
Input/Output performances
Defining two new sensitivity functions:
Plant Sensitivity: SG = S(s).G(s) (often referred to as the Input Sensitivity, e.g in Matlab)
Controller Sensitivity: KS = K(s).S(s)
O. Sename [GIPSA-lab]
26/138
2 Performance analysis
Analysis of T :
Steady state error in tracking : T ( = 0) = 1 ?.
Attenuation of measurement noise: |T (j)| small when ?
Maximum of T , kT k < 1.5 ?
Analysis of KS:
Input saturation: |u(t)| < |umax | ? (where |umax | < kKSk |rmax |).
Attenuation of measurement noise: |KS(j)| small when ?
Analysis of SG:
Steady state error in input disturbance rejection : SG( = 0) = 0 ?
Attenuation of input disturbance effet: |SG(j)| small in the frequency range of interest ? .
O. Sename [GIPSA-lab]
27/138
2 Performance analysis
The output & the control input satisfy the following equations :
(Ip + G(s)K(s))y(s) = (GKr + dy GKn + Gdi )
(Im + K(s)G(s))u(s) = (Kr Kdy Kn KGdi )
BUT : K(s)G(s) 6= G(s)K(s) !!
O. Sename [GIPSA-lab]
28/138
2 Performance analysis
Using Matlab
O. Sename [GIPSA-lab]
29/138
2 Performance analysis
Sy + Ty = Ip
Tu = KG(Im + KG)1 , Su + Tu = Im
Properties
Ty = GK(Ip + GK)1
Tu = (Im + KG)1 KG
Su K = KSy
O. Sename [GIPSA-lab]
30/138
2 Performance analysis
O. Sename [GIPSA-lab]
31/138
2 Performance analysis
Frequency-domain analysis
O. Sename [GIPSA-lab]
32/138
2 Performance analysis
Frequency-domain analysis
O. Sename [GIPSA-lab]
33/138
2 Performance analysis
Frequency-domain analysis
Trade-offs
But
S? + T? = I
Some trade-offs are to be looked for...
These trade-offs can be reached if one aims :
to reject the disturbance effects in low frequencies
to minimize the noise effects in high frequencies
It remains to require:
Sy and Sy G to be small in low frequencies to reduce the load (output and input) disturbance
O. Sename [GIPSA-lab]
34/138
2 Performance analysis
Frequency-domain analysis
O. Sename [GIPSA-lab]
35/138
2 Performance analysis
Frequency-domain analysis
O. Sename [GIPSA-lab]
36/138
2 Performance analysis
Frequency-domain analysis
Some remarks
Remark
Usually S < c < T
Remark
In most cases, the two definitions in terms of S and T yield similar values for the bandwidth. In
other cases, the situation is generally as follows. Up to the frequency S , |S| is less than 0.7, and
control is effective in terms of improving performance. In the frequency range [S , T ] control still
affects the response, but does not improve performance. Finally, at frequencies higher than T ,
we have S ' 1 and control has no significant effect on the response.
Remark
Usually S < c < T
Finally the following relation is very useful to evaluate the rise time:
tr =
O. Sename [GIPSA-lab]
2.3
T
37/138
2 Performance analysis
Frequency-domain analysis
Examples
O. Sename [GIPSA-lab]
38/138
2 Performance analysis
Stability issues
Well-posedness
Consider
G=
s1
,
s+2
s+2
s1
(r n dy ) +
di
3
3
DEF: A closed-loop system is well-posed if all the transfer functions are proper
I + K()G() is invertible
In the example 1 + 1 (1) = 0 Note that if G is strictly proper, this always holds.
O. Sename [GIPSA-lab]
39/138
K=1
2 Performance analysis
Stability issues
Internal stability
DEF: A system is internally stable if all the transfer functions of the closed-loop system are stable
y
u
=
(I + GK)1 GK
K(I + GK)1
(I + GK)1 G
K(I + GK)1 G
r
di
For instance :
1
G=
,
s1
s1
K=
,
s+1
y
u
=
1
s+2
s1
s+2
s+1
(s1)(s+2)
1
s+2
!
r
di
There is one RHP pole (1), which means that this system is not internally stable. This is due here
to the pole/zero cancellation (forbidden!!).
O. Sename [GIPSA-lab]
40/138
2 Performance analysis
Stability issues
Figure: M form
Theorem
Suppose M (s) in RH and a positive scalar. Then the system is well-posed and internally
stable for all (s) in RH such that kk 1/ if and only if
kM k <
O. Sename [GIPSA-lab]
41/138
2 Performance analysis
Stability issues
Input-Output Stability
Definition (BIBO stability)
A system G (x = Ax + Bu; y = Cx) is BIBO stable if a bounded input u(.) (kuk < ) maps a
bounded output y(.) (kyk < ).
Now, the quantification (for BIBO stable systems) of the signal amplification (gain) is evaluated as:
peak =
sup
0<kuk <
kyk
kuk
sup
0<kuk2 <
kyk2
kuk2
42/138
2 Performance analysis
Stability issues
Synthesis
Provide a clear and detailed frequency-domain performance analysis using the sensitivity
functions in order to explain the trade-off performance/robustness/actuator constraints.
Qualitative analysis
Use of Sy , Ty , KSy , Sy G to:
predict the behavior of the output w.r.t different external inputs (reference, disturbance, noise)
predict the behavior of the control input w.r.t different external inputs (reference, disturbance,
noise)
Quantitative analysis
Use of Sy , Ty , KSy , Sy G to:
Stability analysis and margins.
Compute the steady-state errors in tracking, output and input disturbance attenuations.
Give the maximum of the input/output gains to analyze the transient behaviors of the output
43/138
3 Performance specifications
Outline
1. The H norm and related definitions
System definitions
H norm as a measure of the system gain ?
LTI systems and signals norms
2. Performance analysis
Definition of the sensitivity functions
Frequency-domain analysis
Stability issues
3. Performance specifications for analysis and/or design
Introduction
SISO case
MIMO case
Some performance limitations
4. Introduction to Linear Matrix Inequalities
Background in Optimisation
LMI in control
Some useful lemmas
5. H control design
About the control structure
Solving the H control problem
The Riccati approach
The LMI approach for H control design
Example
6. Uncertainty modelling and robustness analysis
Introduction
Representation of uncertainties
Definition of Robustness analysis
Robustness analysis: the unstructured case
Robustness analysis: the structured case
Towards Robust control design
7. Introduction to LPV systems and control
LPV modelling
LPV Control
O. Sename [GIPSA-lab]
44/138
3 Performance specifications
Introduction
Framework... templates
Objective : good performance specifications are important to ensure better control system
mean : give some templates on the sensitivity functions
For simplicity, presentation for SISO systems first.
Sketch of the method:
Robustness and performances in regulation can be specified by imposing frequential
|S(j)|
1
,
|We (j)|
kWe Sk 1
O. Sename [GIPSA-lab]
45/138
3 Performance specifications
SISO case
The peak specification prevents amplification of noise at high frequencies, and also introduces a
margin of robustness; typically we select MS = 2.
O. Sename [GIPSA-lab]
46/138
3 Performance specifications
SISO case
S(s) =
1
1 + K(s)G(s)
s + b
1
=
We (s)
s/MS + b
Generally ' 0 is considered, MS < 2
(6dB) or (3dB - cautious) to ensure
sufficient module margin.
b influences the CL bandwidth : b
faster rejection of the disturbance
10
0
MS = 2 (6dB)
10
20
uncertainties
30
40
50
60 4
10
O. Sename [GIPSA-lab]
= 1e 3
10
10 Frequency
10(rad/sec) 10
0
47/138
10
3 Performance specifications
SISO case
KS(s) =
K(s)
1 + K(s)G(s)
1 s + bc
1
=
Wu (s)
s + bc /Mu
Mu chosen according to LF behavior of
the process (actuator constraints:
saturations)
bc influences the CL bandwidth : bc
noises
roll-off starting from bc to reduce
= 2
10
20
30
bc f o r |1 / W u | = 0 d B
c = 1 e-3
40
50
60
10
Frequency (rad/sec)
O. Sename [GIPSA-lab]
48/138
10
3 Performance specifications
SISO case
T (s) =
K(s)G(s)
1 + K(s)G(s)
T s + bt
1
=
WT (s)
s + bt /MT
Generally T ' 0 is considered,
MT < 1.5 (3dB) to limit the overshoot.
bt influences the bandwidth hence the
transient behavior of the disturbance
rejection properties: bt
10
0
10
20
MT =1.5
bT s.t. |1/WT | = 0 dB
30
40
T =1e-3
50
60 4
10
O. Sename [GIPSA-lab]
10
10 Frequency
10(rad/sec) 10
0
49/138
10
3 Performance specifications
SISO case
s + SG SG
1
=
WSG (s)
s/MSG + SG
MSG allows to limit the overshoot in the
response to input disturbances.
Generally SG ' 0 is considered,
SG influences the CL bandwidth :
SG = faster rejection of the
disturbance.
20
10
Singular Values (dB)
SG(s) =
MSG = 10
10
20
sg s.t. |1/WSG | = 0 dB
SG =1e-2
30
40 4
10
O. Sename [GIPSA-lab]
10
10 Frequency
10(rad/sec) 10
0
50/138
10
3 Performance specifications
MIMO case
(Sy ) <
1
|W1 (j)|
Actuator constraints:
(KSy ) <
1
|W2 (j)|
(Ty ) <
1
|W3 (j)|
51/138
3 Performance specifications
MIMO case
GK = G1 K1 + G2 K2 ,
KG =
K1 G1
K2 G1
K 1 G2
K2 G2
1
, KSy =
1 + G1 K1 + G2 K2
K1
1+G1 K1 +G2 K2
K2
1+G1 K1 +G2 K2
While a single template We is convenient for Sy it is straightforward that the following diagonal
template should be used for KSy :
Wu1 (s)
0
Wu (s) =
2
0
Wu (s)
where Wu1 and Wu2 are chosen in order to account for each actuator specificity (constraint).
O. Sename [GIPSA-lab]
52/138
3 Performance specifications
MIMO case
(Sy (i, :)) and
all , i = 1, . . . , p
(KSy (k, :))
for all , k = 1, . . . , m.
i.e. p plots for all output behaviors and m plots for the input ones.
3
O. Sename [GIPSA-lab]
53/138
3 Performance specifications
MIMO case
s/MS + b
s + b
k
,
20
Mu = 2, 1 = 0.01,
b c=200 for 1/Wu2 case 2
10
0
Singular Values (dB)
0
10
20
30
10
Mu = 2, 1 = 0.01,
b c=400 for 1/Wu2 case 3
20
40
Mu = 2, 1 = 0.01,
b c=100 for 1/Wu2 case 1
30
50
60
40
70
80
O. Sename
2 [GIPSA-lab]
3
50
54/138
3 Performance specifications
MIMO case
Final objectives
In terms of control synthesis, all these specifications can be tackled in the following problem: find
K(s) s.t.
We S
Wu KS
WT T
WSG SG
kWe Sk 1
kWu KSk 1
kWSG SGk 1
kWT T k 1
Often, the simpler following one (referred to as the mixed sensitivity problem) is studied:
Find K s.t.
We S
1
Wu KS
since the latter allows to consider the closed-loop output performance as well as the actuator
constraints.
O. Sename [GIPSA-lab]
55/138
3 Performance specifications
Introduction
Framework
Main extracts of this part: see Goodwin et al 2001. "Performance limitations in control are not only
inherently interesting, but also have a major impact on real world problems."
Objective : take into account the limitations inherent to the system or due to actuators constraints,
before designing the controller..... Understanding what is not possible is as important as
understanding what is possible!
Example of structural constraints
S + T = 1,
We then cannot have, for any frequency 0 , |S(j0 )| < 1 and |T (j0 )| < 1. This implies that,
disturbance and noise rejection cannot be achieved in the same frequency range.
Bodes Sensitivity Integral for open-loop stable systems
It is known that, for open loop stable plant:
Z
log|S(j)|d = 0
0
Then the frequency range where |S(j)| < 1 is balanced by the frenquencies where |S(j)| > 1
O. Sename [GIPSA-lab]
56/138
3 Performance specifications
Bode sensitivity
Nice interpretation of the balance between reduction and magnification of the sensitivity.
log|det(S(j))|d =
0
Np
X
Re(pi ),
i=1
where pi design the Np RHP poles. Therefore, in the presence of RHP poles, the control effort
necessary to stabilize the system is paid in terms of amplification of the sensitivity magnitude.
O. Sename [GIPSA-lab]
57/138
3 Performance specifications
s/MS + b
,
s + b
z/MS + b
| 1
z + b
To conclude, if z is real, and if the performance specifications are such that : MS = 2 and = 0,
then a necessary condition to meet the performance requirements is :
z
b
2
O. Sename [GIPSA-lab]
58/138
4 Introduction to LMIs
Outline
1. The H norm and related definitions
System definitions
H norm as a measure of the system gain ?
LTI systems and signals norms
2. Performance analysis
Definition of the sensitivity functions
Frequency-domain analysis
Stability issues
3. Performance specifications for analysis and/or design
Introduction
SISO case
MIMO case
Some performance limitations
4. Introduction to Linear Matrix Inequalities
Background in Optimisation
LMI in control
Some useful lemmas
5. H control design
About the control structure
Solving the H control problem
The Riccati approach
The LMI approach for H control design
Example
6. Uncertainty modelling and robustness analysis
Introduction
Representation of uncertainties
Definition of Robustness analysis
Robustness analysis: the unstructured case
Robustness analysis: the structured case
Towards Robust control design
7. Introduction to LPV systems and control
LPV modelling
LPV Control
O. Sename [GIPSA-lab]
59/138
4 Introduction to LMIs
Background in Optimisation
Brief on optimisation
Definition (Convex function)
A function f : Rm R is convex if and only if for all x, y Rm and [0 1],
f (x + (1 )y) f (x) + (1 )f (y)
(15)
(16)
is convex.
Definition ((Strict) LMI constraint)
A Linear Matrix Inequality constraint on a vector x Rm is defined as,
F (x) = F0 +
m
X
Fi xi 0( 0)
(17)
i=1
where F0 = F0T and Fi = FiT Rnn are given, and symbol F 0( 0) means that F is
symmetric and positive semi-definite ( 0) or positive definite ( 0), i.e. {u|uT F u(>) 0}.
O. Sename [GIPSA-lab]
60/138
4 Introduction to LMIs
Background in Optimisation
Convex to LMIs
Example
Lyapunov equation. A very famous LMI constraint is the Lyapunov inequality of an autonomous
system x = Ax. Then the stability LMI associated is given by,
xT P x
xT (AT P + P A)x
>
<
0
0
(18)
P
0
0
AT P + P A
0
(19)
O. Sename [GIPSA-lab]
61/138
4 Introduction to LMIs
Background in Optimisation
LMI problem
Two kind of problems can be handled
Feasibility: The question whether or not there exist elements x X such that F (x) < 0 is
called a feasibility problem. The LMI F (x) < 0 is called feasible if such x exists,
otherwise it is said to be infeasible.
Optimization: Let an objective function f : S R where S = {x|F (x) < 0}. The problem to
determine
Vopt = infxS f (x)
is called an optimization problem with an LMI constraint. This problem involves
the determination of Vopt , the calculation of an almost optimal solution x (i.e., for
arbitrary > 0 the calculation of an x S such that Vopt f (x) Vopt + , or
the calculation of a optimal solutions xopt (elements xopt S such that
Vopt = f (xopt )).
O. Sename [GIPSA-lab]
62/138
4 Introduction to LMIs
Background in Optimisation
O. Sename [GIPSA-lab]
PB
R
>0
63/138
4 Introduction to LMIs
Background in Optimisation
cT x
0
(20)
where F (x) is an affine symmetric matrix function of x Rm (e.g. LMI) and c Rm is a given
real vector, that defines the problem objective.
SDP problems are theoretically tractable and practically:
They have a polynomial complexity, i.e. there exists an algorithm able to find the global
minimum (for a given a priori fixed precision) in a time polynomial in the size of the problem
(given by m, the number of variables and n, the size of the LMI).
SDP can be practically and efficiently solved for LMIs of size up to 100 100 and m 1000
see ElGhaoui, 97. Note that today, due to extensive developments in this area, it may be even
larger.
O. Sename [GIPSA-lab]
64/138
4 Introduction to LMIs
LMI in control
AT P
+ PA K T B T P P BK < 0
QAT + AQ + YT B T + BY < 0
O. Sename [GIPSA-lab]
65/138
4 Introduction to LMIs
LMI in control
AT P + P A
BT P
C
PB
I
D
CT
T
< 0,
D
I
P > 0.
(21)
The Bounded Real Lemma (BRL), can also be written as follows (see Scherer)
I
A
0
C
T
0
0
B
P
I 0
D
0
P
0
0
0
0
0
2 I
0
0
I
0
A
0 0
C
I
0
B
0
I
D
(22)
Note that the BRL is an LMI if the only unknown (decision variables) are P and (or 2 ).
O. Sename [GIPSA-lab]
66/138
4 Introduction to LMIs
LMI in control
Quadratic stability
This concept is very useful for the stability analysis of uncertain systems.
Let us consider an uncertain system
x = A()x
where is an parameter vector that belongs to an uncertainty set .
Theorem
The considered system is said to be quadratically stable for all uncertainties if there exists a
(single) "Lyapunov function" P = PT > 0 s.t
A()T P + PA() < 0, for all
(23)
This is a sufficient condition for ROBUST Stability which is obtained when A() is stable for all
.
O. Sename [GIPSA-lab]
67/138
4 Introduction to LMIs
Schur lemma
Lemma
Let Q = QT and R = RT be affine matrices of compatible size, then the condition
Q
S
0
T
S
R
(24)
is equivalent to
R
Q SR1 S T
0
0
(25)
The Schur lemma allows to a convert a quadratic constraint (ellipsoidal constraint) into an LMI
constraint.
O. Sename [GIPSA-lab]
68/138
4 Introduction to LMIs
Kalman-Yakubovich-Popov lemma
Lemma
For any triple of matrices A Rnn , B Rnm , M R(n+m)(n+m) =
M11
M21
M12
M22
, the
I
A
0
B
T
0
K
K
0
I
A
0
B
+M <0
A jI
x
w
=0
x
w
T
M
x
w
<0
T
I
0
0 K
I
0
then the second statement is equivalent to
A B
K
0
A B
the condition that, for all R with det(jI A) 6= 0,
Q
S
I
I
>0
C(jI A)1 B + D
C(jI A)1 B + D
ST R
If M =
This lemma is used to convert frequency inequalities into Linear Matrix Inequalities.
O. Sename [GIPSA-lab]
69/138
4 Introduction to LMIs
Projection Lemma
Lemma
For given matrices W = W T , M and N , of appropriate size, there exists a real matrix K = K T
such that,
W + M KN T + N K T M T 0
(26)
TWM
M
TWN
N
0
0
0
0
(27)
(28)
T M = 0).
where M and N are the orthogonal complements of M , N respectively (i.e. M
The projection lemma is also widely used in control theory. It allows to eliminate variable by a
change of basis (projection in the kernel basis). It is involved in one of the H solutions
[Doyle et al.(1989)Doyle, Glover, Khargonekar, and Francis]see e.g..
O. Sename [GIPSA-lab]
70/138
4 Introduction to LMIs
Completion Lemma
Lemma
Let X = X T , Y = Y T Rnn such that X > 0 and Y > 0. The three following statements are
equivalent:
1
2
3
X
I
X
I
I
Y
I
Y
X
X2T
X2
X3
X
I
0 and rank
0 and
I
Y
X
X2T
X2
X3
1
=
Y
Y2T
Y2
Y3
(29)
n+r
This lemma is useful for solving LMIs. It allow to simplify the number of variables when a matrix
and its inverse enter in a LMI.
O. Sename [GIPSA-lab]
71/138
4 Introduction to LMIs
Finslers lemma
This Lemma allows the elimination of matrix variables.
Lemma
The following statement are equivalent
xT Ax < 0 for all x 6= 0 s:t: Bx = 0
T AB
< 0 where B B
=0
B
A + B T B < 0 for some scalar
A + XB + B T X T < 0 for some matrix X
T
B AB < 0
O. Sename [GIPSA-lab]
72/138
4 Introduction to LMIs
Interest of LMIs
LMIs allow to formulate complex optimization problems into "Linear" ones, allowing the use of
convex optimization tools.
Usually it requires the use of different transformations, changes of variables ... in order to linearize
the considered problmems: Congruence, Schur complement, projection lemma, Elimination
lemma, S-procedure, Finslers lemme ...
Examples of handled criteria
stability
H , H2 , H2 /H performances
robustness analysis: Small gain theorem, Polytopic uncertianties, LFT representations...
Robust control and/or observer design
pole placement
stability, stabilization with input constraints
Passivity constraints
Time-delay systems
O. Sename [GIPSA-lab]
73/138
5 H control design
Outline
1. The H norm and related definitions
System definitions
H norm as a measure of the system gain ?
LTI systems and signals norms
2. Performance analysis
Definition of the sensitivity functions
Frequency-domain analysis
Stability issues
3. Performance specifications for analysis and/or design
Introduction
SISO case
MIMO case
Some performance limitations
4. Introduction to Linear Matrix Inequalities
Background in Optimisation
LMI in control
Some useful lemmas
5. H control design
About the control structure
Solving the H control problem
The Riccati approach
The LMI approach for H control design
Example
6. Uncertainty modelling and robustness analysis
Introduction
Representation of uncertainties
Definition of Robustness analysis
Robustness analysis: the unstructured case
Robustness analysis: the structured case
Towards Robust control design
7. Introduction to LPV systems and control
LPV modelling
LPV Control
O. Sename [GIPSA-lab]
74/138
5 H control design
P is the generalized plant (contains the plant, the weights, the uncertainties if any) ; K is the
controller. The closed-loop transfer function is given by:
Tew (s) = Fl (P, K) = P11 + P12 K(I P22 K)1 P21
where Fl (P, K) is referred to as a lower Linear Fractional Transformation.
O. Sename [GIPSA-lab]
75/138
5 H control design
max
(Tew (j))
The optimal problem aims at finding min (done using hinfsyn in MATLAB).
O. Sename [GIPSA-lab]
76/138
5 H control design
y(t)
Cx(t)
(30)
The method consists in applying the Bounded Real Lemma to the closed-loop system, and then
try to obtain some convex solutions (LMI formulation).
O. Sename [GIPSA-lab]
77/138
5 H control design
x K (t)
u(t)
=
=
AK xK (t) + BK y(t),
CK xK (t) + DK y(t).
It will be shown how to formulate such a control problem using "classical" control tools. The
procedure will be 2-steps:
Get P : Build a control scheme s.t. the closed-loop system matrix does correspond to the
tackled H problem (for instance the mixed sensitivity problem). Use of
Matlab, sysic tool.
Compute K: Use an optimisation algorithm that finds the controller K solution of the
considered problem.
We S
Illustration on
Wu KS
We S
In that case the closed-loop system must be kTew (s)k =
Wu KS
i.e a system with
78/138
5 H control design
kWu KSk 1.
e1 = We Sr
e2 = Wu KSr
O. Sename [GIPSA-lab]
79/138
5 H control design
O. Sename [GIPSA-lab]
80/138
5 H control design
Tew (s)
= Fl (P,K)= P11 + P12 K(I P22 K)1 P21
We
We G
=
+
K(I + GK)1 I
0
Wu
We S
=
Wu KS
in Matlab
O. Sename [GIPSA-lab]
81/138
5 H control design
We Sy G
Wu Tu
The new H control problem therefore includes the input disturbance rejection objective, thanks
to Sy G that should satisfy the same template as S, i.e an high-pass filter!
Remarks: Note that Wu Tu is an additional constraint that may lead to an increase of the
attenuation level since it is not part of the objectives. Hopefully Tu is low pass, and Wu as well.
The input weight has to be on u not u + di which would lead to an unsolvable problem.
O. Sename [GIPSA-lab]
82/138
5 H control design
Controller*Sensitivity KS
20
40
30
with Wd=1
with Wd=100
20
Magnitude (dB)
-20
-40
-60
with Wd=100
10
0
-10
-20
-80
with Wd=1
-30
-100
-40
-120 -2
10
O. 10
Sename [GIPSA-lab]
10
-1
10
10
10
-50 -2
10
10
-1
10
10
83/13810
10
5 H control design
More generally...
To include multiple objectives in a SINGLE H control problem, there are 2 ways:
1
Of course both ways increase the dimension of the problem to be solved....thus the complexity as
well. Moreover additional constraints appear that are not part of the objectives ....
General rule: first think simple !!
O. Sename [GIPSA-lab]
84/138
5 H control design
A
B1
B2
x = Ax + B1 w + B2 u
e = C1 x + D11 w + D12 u
P
P = C1
D11 D12
y = C2 x + D21 w + D22 u
C2
D21 D22
with x Rn , x Rnw , u Rnu , z Rnz et y Rny
O. Sename [GIPSA-lab]
85/138
5 H control design
Problem formulation
Let K(s) be a dynamic output feedback LTI controller defined as
x K (t)
u(t)
K(s) :
=
=
AK xK (t) + BK y(t),
CK xK (t) + DK y(t).
x cl (t)
z(t)
=
=
(31)
T
T
where xT
cl (t) = x (t) xK (t) and
A + B2 DK C2 B2 CK
A
=
,
BK C2
AK
B1 + B2 DK D21
B=
,
BK D21
C
+
D
D
C
,
D
C
=
,
1
12
2
12 CK
K
D = B1 + B2 DK D21 .
The aim is of course to find matrices AK , BK , CK and DK s.t. the H norm of the closed-loop
system (31) is as small as possible, i.e. opt = min s.t. ||N (s)|| < .
O. Sename [GIPSA-lab]
86/138
5 H control design
D22 = 0,
B1
D21
D12 T [ C1
D21 T =
D12 ] =
Inu
I ny
not necessary but simplify the solution (does correspond to the given theorem next but can be
easily relaxed)
O. Sename [GIPSA-lab]
87/138
5 H control design
O. Sename [GIPSA-lab]
88/138
5 H control design
Controller reconstruction
Theorem (2)
If the necessary and sufficient conditions of the Theorem 1 are satisfied, then the so-called central
controller is given by the state space representation
Ksub (s) =
A
F
Z L
0
with
= A + 2 B1 B T X + B2 F + Z L C2
A
1
F = B2T X , L = Y C2T
1
Z = I 2 Y X
The Controller structure is indeed an observer-based state feedback control law, with
u2 (t) = B2T X x
(t),
where x
(t) is the observer state vector
x
(t) = A x
(t) + B1 w(t)
+ B2 u(t) + Z L C2 x
(t) y(t) .
and w(t)
is defined as
O. Sename [GIPSA-lab]
89/138
(32)
5 H control design
(33)
min
kTzw (s)k
(34)
As presented in the previous sections, this condition is fulfilled thanks to the BRL. As a matter of
fact, the system is internally stable and meets the quadratic H performances iff. P = P T 0
such that,
T
A P + PA
PB
CT
(35)
BT P
22 I DT < 0
C
D
I
where A, B, C, D are given in (31). Since this inequality is not an LMI and not tractable for SDP
solver, relaxations have to be performed (indeed it is a BMI), as proposed in
[Scherer et al.(1997b)Scherer, Gahinet, and Chilali].
O. Sename [GIPSA-lab]
90/138
5 H control design
e+C
e BT
M11 = AX + XAT + B2 C
2
T
e
eT
M22 = YA + A Y + BC2 + C T B
e + AT + C T D
e BT
M21 = A
2
2
T T
T
T
e
M31 = B + D D B
T B
eT
M32 = B1T Y + D21
e
M41 = C1 X + D12 C
e 21
M43 = D11 + D12 DD
M33 = Inu
e 2
M42 = C1 + D12 DC
M44 = Iny
O. Sename [GIPSA-lab]
21
(37)
91/138
5 H control design
Controller reconstruction
Once A, B, C, D, X and Y have been obtained, the reconstruction procedure consists in finding
non singular matrices M and N s.t. M N T = I X Y and the controller K is obtained as follows
Dc
Cc
B
c
Ac
=
=
=
=
e
D
e Dc C2 X)M T
(C
e YB2 Dc )
N 1 (B
e YAX YB2 Dc C2 X N Bc C2 X YB2 Cc M T )M T
N 1 (A
(38)
where M and N are defined such that M N T = In XY (that can be solved through a singular
value decomposition plus a Cholesky factorization).
Remark. Note that other relaxation methods can be used to solve this problem, as suggested by
[Gahinet(1994)].
O. Sename [GIPSA-lab]
92/138
6 Robust analysis
Outline
1. The H norm and related definitions
System definitions
H norm as a measure of the system gain ?
LTI systems and signals norms
2. Performance analysis
Definition of the sensitivity functions
Frequency-domain analysis
Stability issues
3. Performance specifications for analysis and/or design
Introduction
SISO case
MIMO case
Some performance limitations
4. Introduction to Linear Matrix Inequalities
Background in Optimisation
LMI in control
Some useful lemmas
5. H control design
About the control structure
Solving the H control problem
The Riccati approach
The LMI approach for H control design
Example
6. Uncertainty modelling and robustness analysis
Introduction
Representation of uncertainties
Definition of Robustness analysis
Robustness analysis: the unstructured case
Robustness analysis: the structured case
Towards Robust control design
7. Introduction to LPV systems and control
LPV modelling
LPV Control
O. Sename [GIPSA-lab]
93/138
6 Robust analysis
Introduction
Introduction
A control system is robust if it is insensitive to differences between the actual system and the
Lots of forms can be derived according to both our knowledge of the physical mechanism that
cause the uncertainties and our ability to represent these mechanisms in a way that facilitates
convenient manipulation.
Several origins :
Approximate knowledge and variations of some parameters
Measurement imperfections (due to sensor)
At high frequencies, even the structure and the model order is unknown (100
Choice of simpler models for control synthesis
Controller implementation
94/138
6 Robust analysis
Representation of uncertainties
G(s)
=
k
esh ,
1 + s
2 k, h, 3
Let us choose the nominal parameters as, k = h = = 2.5 and G the according nominal model.
We can define the relative uncertainty, which is actually referred as a MULTIPLICATIVE
UNCERTAINTY, as
G(s)
= G(s)(I + Wm (s)(s))
with Wm (s) = 3.5s+0.25
s+1
and kk 1
O. Sename [GIPSA-lab]
95/138
6 Robust analysis
Representation of uncertainties
G(s)
= G(s)
1
, max
1 + s
G(s)
= G0 (s)(I + Wm (s)(s)), Wm (s) =
max j
1 + max j
with kk 1
which can be represented as
with
N (s) =
O. Sename [GIPSA-lab]
N11 (s)
N21 (s)
N12 (s)
0
=
N22 (s)
G0 Wm (s)
I
G0 (s)
96/138
6 Robust analysis
Representation of uncertainties
G(s) =
1
,
s+a
a0 b < a < a0 + b
with
z = y =
1
(w
s+a0
O. Sename [GIPSA-lab]
bu )
97/138
6 Robust analysis
Representation of uncertainties
x 1 = (2 + 1 )x1 + (3 + 2 )x2
x 2 = (1 + 3 )x2 + u
G:
y
= x1
(39)
1
0
0
x1
0 , y =
x2
= 0 2
0
0 3
x2
=
2x1 3x2 + u1 + u
x 1
x 2
=
x2 + u + u3
N :
y
=
x1
O. Sename [GIPSA-lab]
98/138
6 Robust analysis
Representation of uncertainties
Figure: N structure
This LFR gives then the transfer matrix from w to z, and is referred to as the upper Linear
Fractional Transformation (LFT) :
Fu (N, ) = N22 + N21 (I N11 )1 N12
This LFT exists and is well-posed if (I N11 )1 is invertible
O. Sename [GIPSA-lab]
99/138
6 Robust analysis
Representation of uncertainties
LFT definition
In this representation N is known and (s) collects all the uncertainties taken into account for the
stability analysis of the uncertain closed-loop system.
(s) shall have the following structure:
(s) = diag {1 (s), , q (s), 1 Ir1 , , r Irr , 1 Ic1 , , c Icc }
k k
O. Sename [GIPSA-lab]
100/138
6 Robust analysis
Representation of uncertainties
Uncertainty types
We have seen in the previous examples the two important classes of uncertainties, namely:
UNSTRUCTURED UNCERTAINTIES: we ignore the structure of , considered as a full
kk 1).
The robust analysis will then be carried out for each uncertain parameter/block.
This needs to introduce a new tool: the Structured Singular Value. We then can obtain more
fine results but using more complex tools.
The analysis is provided in what follows for both cases.
In Matlabthis analysis is provided in the tools robuststab and robustperf.
O. Sename [GIPSA-lab]
101/138
6 Robust analysis
Figure: P K structure
102/138
6 Robust analysis
O. Sename [GIPSA-lab]
103/138
6 Robust analysis
Figure: M structure
if and only if
6 Robust analysis
105/138
6 Robust analysis
Additive case:
G(s)
= G(s) + WA (s)A (s).
Computing the N form gives
WA KSy WA KSy
N (s) =
Sy
Ty
O. Sename [GIPSA-lab]
G(s)
= (I + WO (s)O (s))G(s).
Then it leads
WO Ty WO Ty
N (s) =
Sy
Ty
106/138
6 Robust analysis
General results
Theorem (Small Gain Theorem)
Consider the different uncertainty types, and assume that NS is achieved, i.e M RH for each
type. Then the closed-loop system is robustly stable, i.e. internally stable for all k RH (for
k =A, 0, I, iO, iI) with kk 1, if and only if:
Additive :
kWA KSy k 1
Additive Inverse:
kWiA Sy Gk 1
Output Multiplicative:
kWO Ty k 1
Input Multiplicative:
kWI Tu k 1
Output Inverse Multiplicative: kWiO Sy k 1
Input Inverse Multiplicative:
kWiI Su k 1
This gives some robustness templates for the sensitivity functions. However this may be
conservative.
O. Sename [GIPSA-lab]
107/138
6 Robust analysis
O. Sename [GIPSA-lab]
108/138
6 Robust analysis
G(s)
= (I + WO (s)O (s))G(s).
Computing the N form gives
N (s)
=
=
We wish to get:
N11 (s) N12 (s)
N21 (s) N22 (s)
WO Ty WO Ty
We Sy
We Sy
(WO Ty ) +
(We Sy ) < 1,
O. Sename [GIPSA-lab]
109/138
6 Robust analysis
O. Sename [GIPSA-lab]
6 Robust analysis
zr
- P (s)
v
-e
y
K(s)
Figure: General control configuration with uncertainties
where .
O. Sename [GIPSA-lab]
111/138
(41)
6 Robust analysis
1
min{() : , det(I M ) 6= 0}
In other words, it allows to find the smallest structured which makes det(I M ) = 0.
Theorem (The structured Small Gain Theorem)
Let M (s) be a MIMO LTI stable system and (s) a LTI uncertain stable matrix, (i.e. RH ).
The system in Fig. 7 (M ) is stable for all (s) in (41) if and only if:
R
R,
(M (j))
the system represented in figure 7 (M ) is stable for any uncertainty (s) of the form (41)
such that :
O. Sename [GIPSA-lab]
112/138
6 Robust analysis
O. Sename [GIPSA-lab]
113/138
6 Robust analysis
(s)
f
r
vr
z r
N (s)
Figure: N
where N (s) =
N11 (s)
N21 (s)
N12 (s)
N22 (s)
, and the closed-loop transfer matrix is:
Tew (s) = N22 (s) + N21 (s)(s)(I N11 (s))1 N12 (s)
O. Sename [GIPSA-lab]
(42)
114/138
6 Robust analysis
(N22 ) = f (N22 ) 1,
RS
r (N11 ) < 1,
RP
(N ) < 1, , =
f
0
0
r
Finally, let us remark that the structured singular value cannot be explicitly determined, so that the
method consists in calculating an upper bound and a lower bound, as closed as possible to .
O. Sename [GIPSA-lab]
115/138
6 Robust analysis
Summary
The steps to be followed in the RS/RP analysis for structured uncertainties are then:
Definition of the real uncertainties r and of the weighting functions
Evaluation of (N22 ) , (N11 ) and (N)
f
Remark: The Robust Performance analysis is quite conservative and requires a tight definition of
the weighting functions that do represent the performance objectives to be satisfied by the
uncertain closed-loop system. Therefore it is necessary to distinguish the weighting functions
used for the nominal design from the ones used for RP analysis.
O. Sename [GIPSA-lab]
116/138
6 Robust analysis
include the Small Gain Condition through a new controlled output. For example, robustness
face to Ouptut Multiplicative Uncertainties can be considered into the design procedure
adding the controlled output ey = WO y, which, when tracking performance is expected, leads
to the condition k WO Ty k 1.
Structured uncertainties: the design of a robust controller in the presence of such
[Scherer and Wieland(2004)], as for instance the polytopic model. In that case the set of
uncertain parameters is assumed to be a polytope (i.e. a convex) set. The stability issue in
that framework is referred to as the Quadratic stability i.e find a single Lyapunov function for
the uncertainty set. While in the general case this is an unbounded problem, in the polytopic
case (or in the affine case), the stability is to be analyzed only at the vertices of the polytope,
which is a finite dimensional problem.
This approach can then be applied to find a single controller, valid over the potyopic set. Note
that this approach gives rise to the LPV design for polytopic systems, as described next.
O. Sename [GIPSA-lab]
117/138
7 LPV systems
Outline
1. The H norm and related definitions
System definitions
H norm as a measure of the system gain ?
LTI systems and signals norms
2. Performance analysis
Definition of the sensitivity functions
Frequency-domain analysis
Stability issues
3. Performance specifications for analysis and/or design
Introduction
SISO case
MIMO case
Some performance limitations
4. Introduction to Linear Matrix Inequalities
Background in Optimisation
LMI in control
Some useful lemmas
5. H control design
About the control structure
Solving the H control problem
The Riccati approach
The LMI approach for H control design
Example
6. Uncertainty modelling and robustness analysis
Introduction
Representation of uncertainties
Definition of Robustness analysis
Robustness analysis: the unstructured case
Robustness analysis: the structured case
Towards Robust control design
7. Introduction to LPV systems and control
LPV modelling
LPV Control
O. Sename [GIPSA-lab]
118/138
7 LPV systems
LPV modelling
x
A()
() : z = C1 ()
y
C2 ()
B1 ()
D11 ()
D21 ()
B2 ()
x
D12 () w
D22 ()
u
Example
System()
z
y
Controlled
outputs
Measured
outputs
Control
Inputs
O. Sename [GIPSA-lab]
p + c p_ + k(t) p = u; y = x
First-order state-space representation:
0 1
0
10 1
d @pA
dt p_
y
@
0 1
0 1 A @ p A + @ 0 A u;
k (t ) c
p_
1
= 10
0 1
@pA
p_
119/138
7 LPV systems
LPV modelling
Example
Let consider the previous systems with : c = and k [1, 3]. The frozen Bode plots
O. Sename [GIPSA-lab]
120/138
7 LPV systems
LPV modelling
Different Models
According to the dependency on the parameter set, we may have several classes of models:
1
Rational
dependency:A() = [An0 + An1 n1 + ... + AnN nN ][I + Ad1 d1 + ... + AdN dN ]1
= x2 (t) = (t)x(t)
with = x.
Affine to polytopic
An affine LPV system can be transformed into a polytopic representation (explained below) which
is easier to handle from a convex optimisation point of view.
Let us denote N the number of parameters.
The parameter are assumed to be bounded : i i i .
The vector of parameters evolves inside a polytope represented by Z = 2N vertices i , as
Co{1 , . . . , Z }
O. Sename [GIPSA-lab]
(43)
121/138
7 LPV systems
LPV modelling
Polytopic models
It is then written as the convex combination:
=
Z
X
i i , i 0,
i=1
Z
X
(44)
i = 1
i=1
() =
Z
X
k ()
k=1
Ak
Ck
Bk
Dk
,
with
2
X
k () = 1 , k () > 0
k=1
Ak Bk
is a LTI system corresponding to a vertex k.
Ck Dk
ATTENTION: Do remind that the LPV system is TIME-VARYING so a polytopic LPV system
is not an uncertain polytopic system (in the latter case k is constant even if unknown)
where
O. Sename [GIPSA-lab]
122/138
7 LPV systems
LPV modelling
Poytopic models
h
i
For a LPV system with 2 parameters, boundend 1,2 1,2 , the corresponding polytope
onws 4 vertices as:
n
o
P = (1 , 2 ), (1 , 2 ), (1 , 2 ), (1 , 2 )
(45)
The polytopic coordinates are (i ) are obtained as:
1 =
1 1
1 1
1 = ( , ),
2 =
1 1
1 1
2 = ( , 2 ),
1 1
3 = (1 , ),
3 =
4 = (1 , 2 ),
4 =
1 1
1 1
1 1
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
(k)
A(1,2 )
C(1,2 )
(46)
in the implementation
B(1,2 )
A(1 ) B(1 )
A(2 ) B(2 )
= 1
+ 2
D(1,2 )
C(1 ) D(1 )
C(2 ) D(2 )
A(3 ) B(3 )
A(4 ) B(4 )
+ 3
+ 4
C(3 ) D(3 )
C(4 ) D(4 )
O. Sename [GIPSA-lab]
123/138
(47)
7 LPV systems
LPV modelling
O. Sename [GIPSA-lab]
124/138
7 LPV systems
LPV modelling
LFT models
x
A
B
B1
B2
x
z C D D1 D2 w
z = C1
D1
D11
D12 w
y
C2
D2
D21
D22
u
O. Sename [GIPSA-lab]
125/138
7 LPV systems
LPV modelling
= q
= [(Zg m Zf V )gcos(eq ) + (Xg m Xf V )gsin(eq )] + Ff ins
M q
eq
where and q are the variations of and q.
O. Sename [GIPSA-lab]
126/138
(48)
7 LPV systems
LPV modelling
A LFR model
An LFR model of the vehicle described in the form:
()
w
wk
uk
P (z)
zk
yk
The block contains the varying part of the model, which depends on the linearization point (eq ).
The LFR form is defined by:
u
xk+1 = Axk + B B1
u
(49)
y C
u
D
0
=
xk +
C1
0
D1
y
u
O. Sename [GIPSA-lab]
127/138
7 LPV systems
LPV modelling
A LFR model
with
A=
B1 =
D =
0
0
1
0
0
(Zq m Zf V )g
0
1 1
1
, C1 =
, C =
Ff ins
0 0
0
0 0
0 0
, D1 =
0 0
0 0
, B =
z =
; u = z ; = 1
0
(Xq m Xf V )g
0
1
(50)
0
2
(51)
with:
O. Sename [GIPSA-lab]
1 = cos(eq )
2 = sin(eq )
(52)
128/138
7 LPV systems
LPV Control
Adaptation
strategy
References
Controller()
Measured orestimated
Parameters
Control
Inputs
Outputs
System()
Some references
Modelling, identification : (Bruzelius, Bamieh, Lovera, Toth)
Control (Shamma, Apkarian & Gahinet, Adams, Packard, Beker ...)
Stability, stabilization (Scherer, Wu, Blanchini ...)
Geometric analysis (Bokor & Balas)
O. Sename [GIPSA-lab]
129/138
7 LPV systems
LPV Control
Find a LPV controller C() s.t the closed-loop system is stable and for > 0, sup kwk2 < ,
2
C() =
2N
X
k=1
k ()
Ac (k )
Cc (k )
X
2N
Bc (k )
,
k () = 1 , k () > 0
Dc (k )
k=1
C(2 )
C(4 )
C()
C(1 )
1
C(3 )
- 1
Performance and stability ensured for all parameter variations and .... easy implementation !!
O. Sename [GIPSA-lab]
130/138
7 LPV systems
LPV Control
Generalized
plant
()
w: exagenous input
u: control input
z: output to minimize
y: measurement
Controller
S ()
A()
x
() : z = C1 ()
y
C2 ()
B1 ()
D11 ()
D21 ()
B2 ()
x
D12 () w
u
D22 ()
(53)
xc
u
=
Ac ()
Cc ()
Bc ()
Dc ()
B()
D()
xc
y
(54)
O. Sename [GIPSA-lab]
=
A()
C()
(55)
131/138
7 LPV systems
LPV Control
B () K
I
D () < 0
C ()
D ()
I
O. Sename [GIPSA-lab]
132/138
7 LPV systems
LPV Control
C() =
2
X
k ()
k=1
Ac (k )
Cc (k )
Bc (k )
Dc (k )
where,
QN
k () =
c
j=1 |j C (k )j |
QN
j=1 (j j )
where C c (k )j = {j if (k )j = j or j } otherwise.
N
2
X
k () = 1 , k () > 0
k=1
2
2
O. Sename [GIPSA-lab]
C(2 )
C(1 )
C(4 )
C()
C(3 )
133/138
7 LPV systems
LPV Control
e 1 , 2 ) + (?)T
AX + B2 C(
e 1 , 2 ) + AT
A(
B1T
e 1 , 2 )
C1 X + D12 C(
O. Sename [GIPSA-lab]
s.t.
s.t.
s.t.
s.t.
(57) |1 ,2
(57) |1 ,2
(57) |1 ,2
(57) |1 ,2
(?)T
e 1 , 2 )C2 + (?)T
YA + B(
T B(
e 1 , 2 )T
B1T Y + D21
C
1
X I
0
I Y
(56)
(?)T
(?)T
I
D11
(?)T
(?)T
(?)T
I
134/138
(57)
7 LPV systems
LPV Control
Cc (1 , 2 )
Bc (1 , 2 )
Ac (1 , 2 )
=
=
=
(59) |1 ,2
(59) |1 ,2
(59) |1 ,2
(59) |1 ,2
(58)
e 1 , 2 )M T
C(
e 1 , 2 )
N 1 B(
1
e 1 , 2 ) Y AX N Bc (1 , 2 )C2 X
N
A(
Y B2 Cc (1 , 2 )M T M T
where M and N are defined such that M N T = I XY which may be chosen by applying a
singular value decomposition and a Cholesky factorization.
O. Sename [GIPSA-lab]
135/138
(59)
7 LPV systems
LPV Control
(even delays)
Transformation of constraints (e.g. saturation) into an external parameter
Modelling of LTV, hybrid (e.g. switching control)
O. Sename [GIPSA-lab]
136/138
7 LPV systems
LPV Control
dependent performances (Robert 2007, Roche 2011, Robert et al., IEEE TCST 2010))
Coordination of several actuators for MIMO systems
An LPV structure for control allocation Poussot et al. (CEP 2011)
Selection of a specific parameter for the control activation Poussot et al. (VSD 2011)
O. Sename [GIPSA-lab]
137/138
7 LPV systems
LPV Control
Soheib Fergani, "H /LPV robust MIMO control of vehicle dynamics", PhD, GIPSA-lab, Universit Grenoble Alpes, 2014.
Commande robuste pour une gestion nergtique fonction de l?tat de sant de la batterie au sein des vhicules hybrides
Caroline Ngo, "Surveillance du sysyme de post-traitement essence et contrle de chane dair compress", PhD, GIPSA-lab / RENAULT, Grenoble
INP, 2014.
Tinghong Wang, "Robust control approach to battery health accommodation for Energy Management Systems in hybrid vehicles ", PhD, GIPSA-lab,
Universit Grenoble Alpes, 2013.
Maria Rivas, "Modeling and Control of a Spark Ignited Engine for Euro 6 European Normative", PhD, GIPSA-lab / RENAULT, Grenoble INP, 2012.
David Hernandez, "Robust control of hybrid electro-chemical generators", PhD, GIPSA-lab / G2Elab, Grenoble INP, 2011.
Sbastien Aubouet, "Semi-active SOBEN suspensions modelling and control", PhD, GIPSA-lab / SOBEN, INP Grenoble, 2010.
David Robert, "Contribution linteraction commande/ordonnacement", PhD, LAG, Grenoble INP, 2007.
Alessandro ZIN, "Sur la commande robuste de suspensions automobiles en vue du contrle global de chssis", PhD, LAG / Grenoble INP, 2005.
Ahn-Lam Do, "LPV Approach for Semi-active Suspension Control & Joint Improvement of Comfort and Security", PhD, GIPSA-lab, Grenoble INP,
2011.
Emilie Roche, "Commande Linaire Paramtres Variants discrte chantillonnage variable : application un sous-marin autonome", PhD,
GIPSA-lab, Grenoble INP, 2011.
Charles Poussot-Vassal, "Robust LPV Multivariable Global Chassis Control", PhD , GIPSA-lab, INP Grenoble, 2008.
Corentin Briat, "Robust control and observation of LPV time-delay systems", PhD, GIPSA-lab, INP Grenoble, 2008.
Christophe Gauthier, "Commande multivariable de la pression dinjection dans un moteur Diesel Common Rail", PhD, LAG / DELPHI, Grenoble INP,
2007.
Marc Houbedine, "Contribution pour lamlioration de la robustesse et du bruit de phase des synthtiseurs de frquences" , PhD, LAG / ST
Microlectronics, Grenoble INP, 2006.
Julien Brely, " Rgulation multivariable de filires de production de fibre de verre", PhD, LAG / ST Gobain Vetrotex, Grenoble INP, 2003.
Giampaolo Filardi, "Robust Control design strategies applied to a DVD-video player", PhD, LAG / ST Microlectronics, Grenoble INP, 2003.
Damien Sammier, "Modlisation et commmande de vhicules automobiles: application aux lments suspension", PhD, LAG / Grenoble INP, 2001.
Anas Fattouh, "Observabilit et commande des systmes linaires retards", PhD, LAG / Grenoble INP, 2000.
O. Sename [GIPSA-lab]
138/138
7 LPV systems
LPV Control
138/138
7 LPV systems
LPV Control
O. Sename [GIPSA-lab]
138/138