0% ont trouvé ce document utile (0 vote)
40 vues138 pages

Commande industrielle et systèmes linéaires

Transféré par

Asmahane Harimech
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
40 vues138 pages

Commande industrielle et systèmes linéaires

Transféré par

Asmahane Harimech
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Université Sidi Mohammed Ben Abdallah

Faculté Des Sciences et Technique Fès


Dépa Département de Génie Electrique

Commande industrielle

MASTER IESE

Pr: F.ERRAHIMI
[email protected]

1
Introduction

Un système de commande automatique consiste à “faire calculer” les entrées d’un


système par un organe de commande en vue de satisfaire une tache donnée.

On distingue deux types de problèmes : le suivi de consignes et la régulation.


Dans le premier cas le système doit répondre avec précision et rapidité à toute
variation des signaux d’entrée tandis que dans le second les sorties doivent
conserver leurs valeurs en dépit des perturbations qui affectent le système.

2
3
4
• Linéarité «mathématique»: un système est linéaire si le principe de superposition
s’applique.
• Linéarité «physique»: un système est linéaire s’il est régi par des équations
différentielles linéaires, à coefficients constants et d’ordre fini.
 La linéarité physique implique la linéarité mathématique et elle est plus restrictive (elle
exclut, par exemple, les systèmes régis par des équations aux dérivées partielles linéaires,
comme les phénomènes de propagation).
 Dans la réalité, aucun système physique n'est linéaire, mais de nombreux systèmes le
deviennent, moyennant certaines approximations, valable dans un domaine de
fonctionnement limité.
 L’hypothèse de linéarité simplifie considérablement l’étude du système: elle permet
d’introduire la notion de fonction de transfert, avec ses diverses représentations
(réponse fréquentielle, configuration des pôles et des zéros) qui constituent un outil
puissant pour l’analyse et la synthèse des systèmes asservis.
 Les méthodes linéaires présentent des limitations:
 Elles ne s’appliquent que dans un domaine de fonctionnement limité du système.
 Il existe des systèmes qu’il est impossible, même de façon approchée, de considérer comme
linéaires (relais).
 Il existe des phénomènes très importants, dans la théorie et la pratique des systèmes asservis,
que les notions linéaires sont incapables de rendre compte; par exemple:

 La limitation de la précision par le seuil des différents organes (la théorie linéaire indique
une précision infinie lorsque la chaîne directe comprend des intégrations).
 Le phénomène de ‘pompage’, qui consiste en la présence d’oscillations périodiques,
d’amplitude constante et indépendante des conditions initiales «oscillateur ».
(la théorie linéaire ne connaît que des systèmes stables ou instables). 5
Etude des Systèmes linéaires
dans un espace d’état
Toutes les méthodes étudiées jusqu’à présent de l’asservissement linéaire
restent valables et efficaces jusqu’à ce que ces systèmes atteignent une complexité telle
que l’on ne puisse plus se satisfaire de l’unique relation entrée – sortie (c'est-à-dire les
systèmes mono-variables SISO: Single Input Single Output) pour les commander
correctement. De même, ces modèles deviennent difficiles à mettre en œuvre lorsque les
systèmes étudiés possèdent plusieurs entrées et plusieurs sorties cas d’un système
multi-variable (MIMO : Multi Input Multi Output).
Les théories de commande avancées sont basées complètement sur les modélisations
modernes sous la forme des variables d'état. La représentation d’état des systèmes est
un outil puissant permettant de modéliser le fonctionnement de systèmes linéaires, en
temps continu ou en temps discret et qui possède en outre, l’avantage de conserver la
représentation temporelle des phénomènes.
1. Représentation d'état d'un système dynamique
On définit l'état d'un système à l’instant t0 comme l’information sur le passé
nécessaire et suffisante pour déterminer l’évolution ultérieure du système quand on
connaît, pour t>t0, les signaux d’entrée et les équations du système. Plus généralement,
les variables d’état dans les systèmes physiques sont les éléments aptes à emmagasiner
de l’énergie sous forme cinétique ou potentielle : inductances, capacités, masses,
6
ressorts... Ce sont les éléments ayant une capacité de "mémoire".
Exemple : considérons l’exemple de la figure 1 décrit par les équations différentielles
suivantes

(1)

1.1 La notion d’état


On définit l’état d’un système à l’instant to comme l’information sur le passé nécessaire et
suffisante pour déterminer l’évolution ultérieure du système quand on connaît, pour t > to,
les signaux d’entrée et les équations du système.
Dans le cas de l’exemple, l’information nécessaire et suffisante pour résoudre le système
d’équations (1) est liée aux conditions initiales : i(to) et v(to). Par conséquent, un ensemble
possible de variables d’état est : [i(t); v(t)].

Définition Un vecteur d’état est un ensemble minimal de variables d’état, e.i, de


grandeurs temporelles nécessaires et suffisantes pour déterminer l’évolution future d’un
système quand on connaît les équations qui décrivent le fonctionnement du système et les
entrées de ce système.

7
Un vecteur d’état sera noté:

Le nombre n de composantes correspond au degré du système. Il définit l’ordre du système.


Remarques
• Le vecteur d’état n’est pas unique: il y a même une infinité de choix possibles (sur notre
exemple, [i(t) di/dt]T est un autre vecteur d’état possible). On passe d’un vecteur d’état à un
autre par simple changement de base.
• Les variables d’état sont généralement choisies pour leur signification physique et/ou leur
simplicité dans les équations d’évolution qui leur sont associées.

1.2 Les équations d’état


Dans l’exemple, le système d’équations 1 peut s’écrire sous la forme matricielle suivante :
   ( R1  R2 )  1
 dx   1
  L L x(t )    e(t )
 L
 dt  1
0   Avec x = [i(t) v(t)]T
 0
 C 

s (t )  R2 1x(t ) 8
D’une manière générale, à tout système linéaire, causal et continu peuvent être associées les
équations matricielles suivantes :

 dx
  A(t ) x(t )  B(t )e(t ) Equation d' état
 dt

s (t )  C (t ) x(t )  D(t )e(t ) Equation de sortie

x : vecteur d'état de dimension (n,1)


e : vecteur d'entrée de dimension (r,1)
s : vecteur de sortie de dimension (m,1)

A est la matrice d'état de dimension (n,n)


B est la matrice de commande de dimension (n,r)
C est la matrice d'observation de dimension (m,n)
D est la matrice de liaison directe de dimension (m,r)
Lorsque ces matrices sont indépendantes du temps , le système est dit stationnaire ou invariant.
L'équation d'état est une équation différentielle, linéaire, vectorielle du premier ordre.

On peut donné le schéma bloc d'un tel système :

9
.
e(t)
u(t) x(t) x(t) y(t)
B(t) + C(t) +

A(t)

D(t)

1.3 L’équation de transition d’état


1.3.1 Résolution de l’équation de transition d’état
Nous cherchons à résoudre l’équation d’état précédemment introduite et qui s’écrit dans le
cas général : dx
 Ax (t )  Be(t )
dt
Le cas des équations différentielles matricielles se traite de manière similaire au cas scalaire.
dx
L’équation homogène associée s’écrit :  Ax (t )
dt
Sa solution est exponentielle et vaut : x(t )  e A( t to ) x(to) to: l’instant initiale 10
La résolution avec second membre s’effectue comme dans le cas scalaire :
dx
 Ax (t )  Be(t )
dt
dx
e  At  e  At Ax (t )  e  At Be(t )  Ae  At x(t )  e  At Be (t )
dt
dx
e  At  Ae  At x(t )  e  At Be(t )
dt
d (e  At x)
 e  At Be (t )
dt
t
e  At
x(t )  e  Ato
x(to)   e  A Be( )d
to
t
x(t )  e A ( t  to )
x(to)   e A( t  ) Be( ) d
to

x(t): Etat à l’instant t

e A( t to ) x(to) : Solution du régime libre (e=0)


t
to Be ( ) d : Contribution des entrées (convolution)
A ( t  )
e 11
At
La stabilité de l’état est donc conditionnée par celle de la matrice e appelée matrice de
At
transition d’état. On montre que e converge si et seulement si les valeurs propres de la
matrice A sont à partie réelle strictement négative. En examinant le lien entre les matrices
[A;B;C;D] et la fonction de transfert du système, on retrouvera ce résultat et on insistera
sur le rôle joué par les valeurs propres de la matrice d’état A.
At
Sur le plan numérique, le problème réside dans le calcul de la matrice de transition d’état e

1.3.2 Calcul de la matrice de transition d’état


Par définition, la matrice de transition d’état s’écrit :

A2 2 An n An n
 (t )  e  I  At  t  ...  t  ...   t
At

2 n 0 n

A priori, son calcul fait intervenir un nombre infini de termes : le calcul de toutes les
puissances de A. En fait, nous allons voir que cela n’est pas nécessaire.

Calcul par le théorème de Cayley-Hamilton Il est possible de calculer l’exponentiel


matriciel à partir d’un nombre fini d’opérations, en utilisant le théorème de Cayley-
Hamilton. Ce théorème exprime que toute matrice carrée A est solution de son équation
caractéristique. On note QA(p) le polynôme caractéristique de A : QA(p) = det(pI - A). Si A
est une matrice carrée de taille n, QA(p) est un polynôme de degré n.
12
QA ( p)  det( pI  A)  p n  an1 p n1  ...  a1 p  a0
Le théorème de Cayley-Hamilton assure que A vérifie :

An  an1 An1  ...  a1 A  a0 I  0


An s’exprime comme une combinaison linéaires de puissances inférieures de A :
An  an1 An1  ...  a1 A  a0 I

An n
Par conséquent, il est possible d’exprimer  t  e At   (t )
0 n

en ne faisant intervenir que des puissances de A inférieures strictement à n, c’est-à-dire,

qu’il existe des coefficients ( 0 , 1... n 1 ) tels que :

 (t )  e   n1 (t ) A
At n1
 ...  1 (t ) A  0 (t ) I (2)

Dans le cas où les valeurs propres sont distinctes deux à deux, pour calculer les
coefficients ( 0 , 1... n 1 ) , il suffit de considérer une base de vecteurs propres
(x0; x1;…xn-1) de A. On note (0 , 1...n 1 ) ses valeurs propres et on réécrit
simplement l’égalité (2) appliquée à chaque vecteur propre de A : 13
e At xk   n 1 (t ) An 1 xk  ...  1 (t ) Axk   0 (t ) Ix k
n1
  n 1 (t )k xk  ...  1 (t )k xk   0 (t ) xk
D’autre part xk est non nul et

An n 
nk n
e xk  
At
t xk   t xk  e k t xk
0 n 0 n
Il vient :
n 1
k t
e   n 1 (t )k  ...  1 (t )k   0 (t )
ceci vaut pour toute la base de vecteurs propres. On aboutit donc au système de n
équations à n inconnues suivant :

e   n 1 (t )0  ...  1 (t )0   0 (t )


n1
0 t
 n1
1t
e   n 1 (t )1  ...  1 (t )1   0 (t )

...
 n1t n1

e   n 1 (t )n 1  ...  1 (t )n 1   0 (t ) 14


Calcul par diagonalisation de la matrice A
Si toutes les valeurs propres sont distinctes, alors A=PLP-1
P est la matrice des vecteurs propres et L matrice diagonale.

Lt 1
e At
 Pe P
Calcul par la Transformée de Laplace
Une autre méthode de calcul de la matrice de transition d’état consiste à utiliser les
propriétés de la transformée de Laplace :

si e At  [aij (t )]1i , j n
alors TL(e At )  ( pI  A) 1  [TLa ij (t )]1i , j n
La méthode consiste donc à calculer la matrice (pI - A)-1 puis à prendre la transformée de
Laplace inverse de chacun des termes de la matrice obtenue.

15
Exemple:

16
Exemple:

17
18
Passage d’une représentation
d’état vers autre
représentation sous Matlab

19
Exemple:

calcul de la matrice de
transition d’état par la
méthode de la transformée
de Laplace

20
2. Représentation et analyse des systèmes dans l’espace
d’état
Les systèmes linéaires et stationnaires sont généralement décrits par leur fonction de transfert
(transformée de Laplace de la réponse impulsionnelle). Pour pouvoir transposer les propriétés
utilisées dans le domaine de Laplace au cas des représentations d’état, il est nécessaire d’établir
le passage d’une représentation à l’autre.

2.1 Equations d’état et fonctions de transfert


On considère un système (S) décrit par sa représentation d’état :
 dx
  Ax (t )  Be(t )
 dt

s (t )  Cx (t )  De(t )
On se restreint au cas d’un système à une entrée et une sortie. Exprimons la fonction de
transfert H(p) du système en fonction des matrices A,B,C et D.
S ( p)
H ( p) 
E ( p)
Dans le cas des systèmes multi-entrées multi-sorties (système MIMO), G est une matrice
des fonctions de transfert entre une entrée et une sortie. Par exemple

21
En prenant les T.L. des équations d’état et de sortie, on obtient :

 pX ( p)  AX ( p)  BE ( p)

S ( p)  CX ( p)  DE ( p)
En supposant les conditions initiales nulles. Soit encore :

 1
 X ( p )  ( pI  A) BE ( p )


 S ( p )  C[( pI  A) 1
B ] E ( p )  DE ( p )  [C ( pI  A) 1
B  D ]E ( p )

Finalement : H ( p)  C ( pI  A) 1 B  D

Remarque : En substituant à l’inverse sa définition, il vient :

C[adj( pI  A)]B  DQA ( p )


H ( p) 
QA ( p )
où QA ( p )  det( pI  A).

Les pôles de la fonction de transfert correspondent aux zéros de det(pI -A) qui est aussi le
polynôme caractéristique de la matrice d’état A. Par conséquent, les pôles de H(p) sont les
valeurs propres de la matrice d’état A. 22
23
Passage de la représentation d’état vers la fonction de transfert sous Matlab 24
25
Stabilité dans l’espace d’état
Dans la littérature plusieurs définitions de la stabilité:

 Un système est stable si et seulement si écarté de sa position d'équilibre, il tend


à y revenir. Une faible perturbation des conditions initiales du système engendre une
faible perturbation de sa trajectoire.

 Un système est stable si en réponse à une entrée bornée, la sortie du système est
bornée.
Ces concepts de stabilité d’un point d’équilibre sont illustrés sur la figure suivante :

Position A : équilibre instable.


Position B : équilibre stable.
Position C : équilibre asymptotiquement stable.

Figure : Les trois états d’équilibre possible


d’une bille

Un système linéaire est stable si tous les pôles (Valeurs propre de A) sont à partie
réel strictement négatives
26
Exemple:

27
2.2 Formes standard de représentations d’état
Considérant un système décrit par sa fonction de transfert, il est possible de construire très
simplement des représentations d’état de ce système en le décomposant en sous-systèmes
élémentaires: des systèmes d’ordre 1 mis en série ou en parallèle.
On considère le système de fonction de transfert:

N ( p) bm p m  bm1 p m1  ...  b1 p  b0


H ( p)  
D( p ) p n  an1 p n1  ...  a1 p  a0
Il est plus simple de raisonner dans un premier temps sur le système sans numérateur :

1 1
H1 ( p )   n
D( p) p  an1 p n1  ...  a1 p  a0
Avec,

S(p) S1(p) S(p) S1(p)


H ( p)    N ( p)  H1 ( p); H(p)  et H1(p) 
S1(p) E(p) E(p) E(p)

28
2.2.1 La forme compagne pour la commande
Le système est vu comme une mise en série d’intégrateurs purs. A partir de l’expression de
la fonction de transfert H(p), on retrouve aisément l’équation différentielle associée au
système :
s1( n ) (t )  an 1s1( n 1) (t )  ...  a1s1(1) (t )  a0 s1 (t )  e(t )
et s (t )  bm s1( m ) (t )  bm 1s1( m 1) (t )  ...  b1s1(1) (t )  b0 s1 (t )
Il suit la représentation schématique de la figure 2. On choisit comme variables d’état les
sorties des systèmes élémentaires, e.i les dérivées successives de la sortie. La représentation
d’état obtenue est dite une forme canonique commandable ; elle s’écrit (si m < n) :

  0 1 ... 0 0  0
  ...
 dx  ... ... ... ...  ...  s1 
   0 0 ... 1 0  x   0 e  s (1) 
 dt     avec x   1 
  0 0 ... 0 1  0  ... 
 a0  a1  ( n 1) 
 ...  an  2  an 1   1   s1 

s (t )  b0 b1 b2 b3 ...x
29
+

Figure 2: Interprétation d’un système complexe sous la forme d’une mise en


série d’intégrateurs purs

30
2.2.2 La forme modale (Forme diagonale ou parallèle)
Le système est vu comme une mise en parallèle de systèmes d’ordre 1. Pour mettre en
évidence cette représentation, il suffit de décomposer la fonction de transfert H(p) en
éléments simples. Dans le cas où tous les pôles sont simples et le système d’ordre n, H(p)
prend la forme :   
H ( p)  0
 1
 ...  n 1
p  0 p  1 p  n1
Il suit la représentation schématique de la figure 3. On choisit comme variables d’état les
sorties des systèmes élémentaires. La représentation d’état obtenue est dite sous forme
modale ; elle s’écrit :

  0 0 ... 0 0  1 
  0  1 
 dx    1 ... 0 0     x0 
   ... ... ... ... ...  x  ... e  x 
 dt     avec x   1 

  0 0 ...  n  2 0  1   ... 
  0     
0 ... 0  n 1   1   xn 1 

s (t )   0 1  2  3 ...x
31
Figure 3: Interprétation d’un système complexe sous la forme d’une mise en parallèle de
systèmes d’ordre1

Remarques
• A est diagonale; les éléments diagonaux correspondent aux pôles du système.
• La présence d’un numérateur modifie les pondérations dans la décomposition en
éléments simples; seules les matrices C et D sont affectées.
• Si le système a des pôles multiples, A est diagonale par blocs, H(p) prend la forme :

H(p) = H1(p) + H2(p) + … + Hm(p) (m < n)


32
Avec, 1 j 2 j  ij
H j ( p)    ... 
p  j ( p  j ) 2
( p   j )i
et les matrices A et B sont de la forme:

 A1 0 ... 0 0  B1 
0 A2 ... 0 0  B 
  2
A   ... ... ... ... ...  B   ...  C  C1 C2 ... ... Ck  D0
   
 ... ... ... ... ...   ... 
 0 0 ... 0 Ak   Bk 

Avec,
  j 0 0 ... 0  1
 1  j 0 ... 0  0
  
Aj   0 1  j ... 0  
B j  ... C j  1 j 2 j ... ...  ij 
   
 ... ... ... ... ...  ...
 0 0 0 ...   j   0 

33
2.2.3 La forme cascade
Le système est vu comme une mise en série de systèmes d’ordre 1. Pour mettre en
évidence cette représentation, il suffit de factoriser le dénominateur de la fonction de
transfert H(p). Dans le cas d’un numérateur unitaire, on obtient :
1
H ( p)  .
( p  0 )( p  1 )...( p  n1 )
Il vient alors la représentation schématique de la figure 4. On choisit comme variables
d’état les sorties des systèmes élémentaires. La représentation d’état obtenue est dite sous
forme cascade. Dans le cas d’un numérateur unitaire, elle s’écrit:

  n 1 1 ... 0 0  0
  0
 dx   n  2 1 ... 0   0   x0 
   ... ... ... ... ...  x  ... e  x 
 dt     avec x   1 

  0 0 ...  1 1  0  ... 


  0     
0 ... 0  0   1   xn 1 

s (t )  1 0 0 0 ...x
34
Figure 4: Interprétation d’un système complexe sous la forme d’une mise
en série de systèmes d’ordre 1
Remarques
• Si le numérateur n’est pas constant, on perd la forme cascade.
• Le traitement des pôles multiples ne pose aucune difficulté. La matrice d’état
garde une forme similaire.
2.3.2 Passage d’une représentation d’état à une autre
On considère deux représentations d’état d’un même système:

 dx
  Ax (t )  Be (t )
 dt

 s (t )  Cx (t )  De(t )
et
 dr
  A' r (t )  B ' e(t )
 dt

 s (t )  C ' r (t )  D ' e(t ) 35
Le vecteur d’état est un ensemble minimal de variables d’état, il engendre un espace,
appelé espace d’état de dimension exactement égal au nombre de variables d’état.
Changer de vecteur d’état, c’est simplement changer de base de représentation. Il existe
donc une matrice de changement de base P telle que :

r  Px
 dx
P  A' Px (t )  B ' e(t )
et  dt

s (t )  C ' Px (t )  D ' e(t )
 dx 1 1
Soit encore   P A' Px (t )  P B ' e(t )
 dt

s (t )  C ' Px (t )  D ' e(t )

Les deux représentations d’état (A;B;C;D) et (A’;B’;C’;D’) satisfont donc:


A = P-1A’P ; B = P-1B’ ; C = C’P ; D = D’

36
Passage de la fonction de transfert vers la représentation d’état sous Matlab
37
Un exemple Multivariable

Y  T1 *U1  T2 *U 2

 X 1  F1. X 1  G1.U1  X 2  F2 . X 2  G2 .U 2 La représentation des systèmes sous forme d’état


  fournit une écriture condensée
Y1  H1. X 1 Y2  H 2 . X 2 et simple aussi bien dans le cas mono que multi-
variable.
Soit
L’algèbre des matrices fournit des outils pour une
X  U 
X   1 U   1 Y  Y2  Y2 manipulation simple des systèmes:
X2 U 2  -Changement de base
-Construction de système augmenté
Etat augmenté
   F1 0   G1  Le formalisme d’état permet d’avoir accès à une
 X    X   U
 Sys  0 F2  G2  information plus riche que la simple
Y  H H X relation entrée sortie d’une fonction de transfert
 1 2
38
Exemple:

Schéma fonctionnel de la
forme commandable
(Matlab/Simulink)

39
Sous Matlab/Simulink une autre forme de schématiser un système par sa représentation
d’état donnée par la figure suivante où le bloc state-space est à la la bibliothèque de Simulink
/continous, en modifiant les matrices A,B,C,D selon la forme canonique choisie.

Schéma fonctionnel de la
Forme commandable
(Matlab/Simulink)

Schéma fonctionnel de la forme observable 40


(Matlab/Simulink)
Le système présenté par une fonction transfert (unique) peut avoir plusieurs
représentations d’état
41
Passage des 3 représentations d’état vers la fonction de transfert sous Matlab

On refait les mêmes étapes sous Simulink, ceci en utilisant de la bibliothèque le bloc
State-spaces (sous la rubrique countinous) on montre ici le remplissage du bloc forme
commandable et c’est les mêmes procédures pour les autres formes, en respectant les
matrice A,B,C,D de chaque forme.
42
La figure suivante mon les trois sorties (YO, YC, YM) avec entrée u (t) échelon unité:

43
3 Commande dans l’espace d’état
3.1 Principe de la commande par retour d’état linéaire
La commande par retour d'état est un moyen de modifier le comportement en boucle
fermée d'un système dynamique donné par une représentation d'état. Cette approche suppose
que l'état connu. Ceci peut être utilisé pour obtenir un système en boucle fermée dont les
pôles (les valeurs propres de la matrice d'état), soient placés de manière appropriée. Ces
derniers déterminent le comportement d’un système mononovariable.
Le principe est de déterminer une commande telle que les pôles du système de la fonction de
transfert du système bouclé soient convenablement placés dans le plan complexe et satisfasse
des spécifications d’amortissement, de rapidité...
Les pôles de la fonction de transfert étant les valeurs propres de la matrice d’état, le but est
donc de réaliser un asservissement modifiant convenablement la matrice d’état du système.

 dx
  Ax (t )  Be(t )
Soit un système décrit par l’équation d’état suivant :  dt

s (t )  Cx (t )  De(t )
La commande par retour d’état consiste en l’utilisation d’une loi de commande proportionnelle

en l’état de la forme: e(t )  u (t )  Lx (t )


44
L est la matrice de gain de retour et u la nouvelle entrée du système bouclé (la consigne).
Les équations du système en boucle fermé sont:

 dx
  ( A  BL ) x(t )  Bu (t )
 dt

s (t )  (C  DL) x(t )  Du (t )

e
u

Par conséquent, la matrice d’état du système en boucle fermé vaut : (A - BL).


La dynamique du système bouclé est donc fixée par les valeurs propres de la matrice (A-BL);
ces valeurs propres sont les racines de l’équation caractéristique :
det(pI - (A - BL)) = QA-BL(p) = 0.

45
Remarque Le choix du gain de commande K doit se faire de façon à réaliser un compromis
entre:
• Un système rapide avec des valeurs propres à parties réelles négatives grandes en valeur absolue
(inconvénient: les amplitudes de certaines états et de l’entrée de commande pouvant être
grandes).
• des valeurs de gain plus faible, des valeurs propre stables moins grandes en valeurs absolues
(inconvénient: des amplitudes de commande plus faible, un système moins rapide et moins
sensible au bruit).
3.2 La commande par placement de pôles
Elle est réalisable soit dans l’espace d’état, soit sous forme algébrique à partir des fonctions de
transfert.
3.2.1 But et définition
On appelle commande par placement de pôles la commande qui consiste à déterminer une
matrice de retour d’état L telle que les valeurs propres de la matrice (A - BL) soient placées en
des positions préfixées (0 , 1...n 1 ) (valeurs complexes). L’existence d’une solution est
étudiée à travers la notion de commandabilité.
3.2.2 Commandabilité
Un système est commandable si et seulement si, pour toute contrainte modale (0 , 1...n 1 )
il existe un retour d’état linéaire L satisfaisant. On montre que, dans le cas d’un système
mono-variable (une entrée, une sortie), si le retour d’état L existe, il est unique.
Il est souvent intéressant de s’assurer de la commandabilité d’un système avant de chercher à
mettre en oeuvre la commande proprement dite. En d’autres termes, on demande de disposer
46
d’une condition nécessaire et suffisante de commandabilité.
Considérons un système représenté par un vecteur d’état x, et une équation d’évolution de

l’état : dx  Ax (t )  Be(t ) La question que l’on se pose est la suivante :


dt
peut-on déterminer une commande admissible transférant le système d’un état donné vers
un autre ? En d’autres termes, il s’agit ici de trouver une commande e telle que le système
passe d’un état initial x(0) à un état final x(t).
Nous avons vu que l’évolution de l’état est décrite par :

x(t )  e x(0)   e  A Be( )d 
t
At
 o 
donc
t
e  At
x(t )  x(0)   e  A Be( )d
o

D’après le théorème de Cayley-Hamilton, pour un système d’ordre n, e-A ne fait intervenir


que les (n - 1) premières puissances de A :

e  At
  0 (t ) I 1 (t ) A  2 (t ) A  ...  n1 (t ) A2 n 1

n 1
x(t )  x(0)   A B   k ( )e( )d
t
 At k
e
to
k 0 47
A et B étant fixés, le système est commandable si on peut trouver e() telle que la
relation soit vraie quelque soit les états initiaux et finaux x(0) et x(t), e.i si aucun des
termes Ak B n’est lié à un autre, ce qui s’écrit :

Comm  [ B AB ... An  2 B An 1 B] de rang n


Comm est appelée matrice de commandabilité. On définit plus généralement le degré de
commandabilité d’un système comme le rang de la matrice de commandabilité.

Exemple On considère le système suivant :


 dx  0 1   1 
   x(t )    e(t )
 dt  2  3   2
s(t )  1 0x(t )

On montre que AB = - 2B, donc rang([B,AB])=1 et le système n’est pas commandable.

Cas oú les valeurs propres de A sont distincts:


 dx
  Ax (t )  Be(t )
 dt

s (t )  Cx (t )  De(t ) 48
Il existe une matrice P telle que: det(P) ≠ 0 et P = (V1, V2,…., Vn);
P est la matrice des vecteurs propres. AVi = iVi; det(I-A)=0; det(I-A) Vi = 0

 dr 1 0 ... 0 0
  A' r (t )  B ' e(t ) 0 2 0 ... 0 
 dt 
A'   ... ... 
D’où 
s (t )  C ' r (t )  D' e(t ) 
... ... ...

 ... ... ... ... ... 
 0 0 ... 0 n 

Les deux représentations d’état (A;B;C;D) et (A’;B’;C’;D’) satisfont :


A’ = P-1 A P ; B’ = P-1 B ; C’ = C P ; D’ = D

Critère de commandabilité
Le système est complètement commandable Les lignes de B’ ne sont pas nulles.
Les lignes nulles de B’ correspond à des variables d’état non commandable.

49
Exemple:

50
 0 1 0 ... 0  0
 0 0 1 ... 0  0
A B 
 ... ... ... ... ...  ...
   
 a0  a1  a2 ...  an 1  1 

On cherche une matrice L de retour d’état: L  [l0 l1 l2 ... ln 1 ]


 0 1 0 ... 0 
telle que la matrice  0 
0 1 ... 0
A  BL   
 ... ... ... ... ... 
 
 a0  l0  a1  l1  a2  l 2 ...  an 1  ln 1 

ait comme valeurs propres (0 , 1...n 1 )


La contrainte modale impose le dénominateur de la fonction de transfert du système en
boucle fermé:

den( H BF ( p))  ( p  0 )( p  1 )...( p  n1 )  p n  an' 1 p n1  ...  a1' p  a0'


51
Le placement de pôles ne modifie pas le type de représentation (elle reste une forme
compagne pour la commande). Par conséquent, on obtient deux écritures différentes pour
la matrice d’état du système en boucle fermée (A - BL) :

 0 1 0 ... 0   0 1 0 ... 0 
 0 0 1 ... 0   0 0 1 ... 0 
A  BL   
 ... ... ... ... ...   ... ... ... ... ... 
   
 a0  l0  a1  l1  a2  l2 ...  an1  ln1   a0'  a1'  a2' ...  an' 1 

d’où le système de n équations à n inconnues suivant :

a0  l0  a0'

 1
a  l  a '


1 1

...
a   '
 n 1 l n 1 a n 1

qui permet de déduire très simplement le retour d’état L  [l0 l1 l2 ... ln 1 ]


52
3.2.4 Calcul de la commande dans le cas général
Dans le cas général, le retour d’état peut modifier notablement la forme de la matrice d’état
et le calcul n’est pas aussi simple que dans le cas de la forme compagne pour la commande.
Les étapes du calcul de la commande sont alors les suivantes :

1. Calcul de la matrice (A - BL).


2. Calcul du polynôme caractéristique de (A- BL). Il vaut det(pI - (A - BL)).
3. Identification du polynôme caractéristique de (A - BL) avec le dénominateur de la
fonction de transfert de la boucle fermée : det(pI - (A - BL)) = (p - l0 )(p - l1 )…(p - ln – 1 ),
où (0 , 1...n 1 ) sont les pôles que l’on veut imposer.

Par rapport au cas de la forme compagne pour la commande, il a été ajouté une étape
de calcul du polynôme caractéristique de la matrice d’état du système bouclé
det(pI - (A - BL)).
Une autre solution consiste à effectuer un changement de base pour se ramener au cas
d’une forme compagne pour la commande.

Sous MATLAB :
K= place(F,G,pôles)

53
Exemple: Considérons le système suivant

54
55
Exemple : Système commandable
   2  3  4 1
  0  x(t )  0u (t )
.
1  x(t )   1 0
G ( p)  3 
p  2 p2  3 p  4   0 1 0  0
 y (t )  0 0 1x(t )

1  2 1 
C ( F , G )  0 1  2 rang (C ( F , G ))  3
0 0 1 
La matrice de commandabilité de G et d’ordre 3, le
système est donc commandable

1 0 0  2  3  4
det( pI  F )  det( p 0 1 0   1 0 0  )
0 0 1  0 1 0 
 p3  2 p2  3 p  4
Le système G stable mais oscillant
det( pI  F )  0  p  2 p  3 p  4  0
3 2
56
Objective : Rendre le système non oscillant mais sans ralentir son mode le plus rapide via un
retour d’état. On veut par exemple que tous les pôles du système commandable soient en -2

 p  2  a 3  b 4  c
K  a b c  / det( pI  F  GK )  ( p  (2))3  det( pI  F  GK )  det(  1 p 0  )
 0 1 p 
 p 3  (2  a) p 2  (3  b) p  4  c

2  a  6

on veut det( pI  F  GK )  ( p  (2))3  p 3  6 p 2  12 p  8  3  b  12  K  [4 9 4]
4  c  8

  2  3  4 1
 
 x (t )   1 0 0  x(t )  0u (t )
SLI  LDC u (t )  4 9 4x(t )
  0 1 0  0
 y (t )  0 0 1x(t )

  6  12  8
   6  12  8
 px(t )  ( F  GK ).x(t )  x (t )   1 0  x(t )
 det( pI   1 0  )  ( p  (2))3
0
SC   0
 y (t )  ( H  EK ).x(t )   0 1 0 
 0 1 0 
 y (t )  0 0 1x(t )

La synthèse du gain K vérifie bien la contrainte sur les pôles que l’on a spécifié. 57
Sys seul
Sys + Retour d’état

y*=0
Régulation

X0=[15; 10; -5]


Gain de retour d’état
58
Critère classique:
Dépassement max de 20 %

59
Consigne en poursuite

X0=[0 0 0]

60
61
Influence de la recherche de dynamique sur la commande

K1 : pôles : -5 -6 -7
K2 : pôles : -1 -2 -3
Le réglage K1 est + dynamique

Commande non
admissible

Le choix de la dynamique doit tenir compte de la limitation sur la commande

62
Exemple : Système non commandable

   2  3  4 1
 
 x(t )   1 0 0  x(t )  0u (t )
Sys1
  0 1 0  0
 y (t )  0 0 1x(t )

  2  3  4 0  1
 1  0 
 x(t )   0 0 0  x(t )   u (t )
Sys2 0 1 0 0 0 
    
 0 0 0  5 0 

 y (t )  0 0 1 0x(t )

Les systèmes Sys1 et Sys2 ont le même comportement entrée/sortie


mais Sys2 possède un état supplémentaire.

63
  2 3 4 0  1
 
 x(t )   1 0 0 0  0 
x(t )   u (t )
Sys2 0 1 0 0 0 
    
0 0 0  5 0 

 y (t )  0 0 1 0x(t )

0 0 1 0
0 1 0 0
C ( F , G)   Rang(C ( F , G ))  3
1 0 0 0
 
 2  3  4 0

Le système Sys2 n’est pas commandable

Peut on quand même trouver un gain de retour d’état tel que tous les pôles du
système de commande soit en -2 ?

64
K  a b c d  / det( pI  F  GK )  ( p  (2)) 4

p  2 a 3b 4 c d 
 1 p 0 0 
det( pI  F  GK )  det( )
 0 1 p 0 
 
 0 0 0 p  5
 p 4  (7  a) p 3  (13  5a  b) p 2  (19  5b  c) p  (20  5c)

on veut det( pI  F  GK )  ( p  (2)) 4  p '4  8 p 3  24 p 2  32 p  16



7  a  8 a  1
20  5c  16 c  0.8
 
 
13  5a  b  24 b  6
19  5b  c  32 19  5 * 6  0.8  48.2  32

Le système Sys2 n’étant pas commandable la recherche du gain de retour


d’état K n’est pas possible
On peut toujours essayer de trouver, Mais comme un état est non commandable,
Il est non controlable et va rapidement diverger ! Entrainant une rapide destruction
65
du système !
Exemple:

66
Exemple:

Calcul des gains du contrôleur par


retour d’état sous Matlab
67
68
3.4 Mise en oeuvre de la commande dans l’espace d’état
3.4.1 Commande partielle
Considérons un système de rang q < n (q désigne son degré de commandabilité) mis sous
dx
la forme canonique  Ax (t )  Be(t )
dt
On choisit comme vecteur d’état x un vecteur propre du système. Il est ainsi possible de
scinder ce vecteur en deux : la partie commandable (q variables d’état : x1) et la partie non
commandable ((n-q) variables d’état : x2). L’équation d’évolution d’état est de la forme :

dx  A11 A12   x1   B 
      e
dt  0 A22   x2   0 
Les modes du système sont les zéros du polynôme caractéristique de la matrice d’état ; il vaut :

det(pI - A) = det(pI - A11) x det(pI - A22)

Les valeurs propres de A sont les valeurs propres de A11 et les valeurs propres de A22.

 x1 
La commande modale s’écrit e   Lx  u  [ L1 L2 ]   u
 x2 
69
L’équation d’évolution de l’état du système commandé s’écrit :

dx  A11  B1 L1 A12  B1 L2   x1   B1 
      u
dt  0 A22   x2   0 
On note que l’évolution de la partie non commandable reste libre (indépendante de la
dx2
commande modale L), en effet :  A22 x2 Les modes de A22 ne peuvent être déplacé.
dt
Stabilisabilité
Le principe de stabilisabilité a été introduit pour tenir compte du cas des modes non
commandables.
La paire (A,B) est dite stabilisable si et seulement si tous les modes non commandable
sont asymptotiquement stables

Conclusion :
• Lorsqu’un système a une partie non commandable, les seuls modes modifiables sont ceux
de la partie commandable (ceux de A11).
• La partie L2 de la matrice de réjection (L) est déterminée autrement. D’autres critères
peuvent être pris en compte, comme par exemple, le fait de rendre la sortie indépendante de
la partie non commandable x2.
•Les systèmes qu’on peut stabiliser sont ceux dont les pôles non commandables sont stables.
70
3..2 Choix des valeurs propres du système bouclé
1. Pour que la commande soit physiquement réalisable, les valeurs propres choisies
doivent être réelles ou complexes conjuguées deux à deux (ce qui garantit une
fonction de transfert à coefficients réels).
2. La stabilité étant la première qualité à assurer pour la boucle fermée, les valeurs
propres doivent être à partie réelle strictement négative.
3. On peut transposer le choix dans le domaine fréquentiel : on impose une bande
passante désirée wo au système bouclé.
Conclusion
La commande à retour d’état par placement de pôles (commande modale) est
relativement simple dans sa mise en œuvres, mais sur des systèmes complexes
d’ordre élevé avec des vecteurs d’état qui ne sont pas toujours physique on
arrive à des limites dans sa mise en œuvres
Probléme 1:
Les états d’un système ne sont pas toujours mesurable, le coût des
capteurs peut aussi être un frein à la commande par placement de pôles
Une solution Les observateurs
Problème 2:
Comment choisir de façon optimale la valeur du gain de retour d’état
toute en réalisant un compromis entre la dynamique du système et sa stabilité
Une solution La commande optimale LQ

71
Performances statiques et retour d’état: la précommande
On cherche à déterminer une loi de commande telle que le gain statique du modèle en
boucle fermée est unitaire. Pour obtenir ce gain statique, l’on utilise le dernier degré de
liberté disponible, à savoir le scalaire de précommande H.

e   Kx  Hu

- -

72
Le système a donc été augmenté pour
pouvoir utiliser son équation
caractéristique afin d n de calculer K et
Ke, selon la réponse transitoire voulue.

73
Exemple:

74
ke

75
76
4. Synthèse d’observateur
4.1 Principe
Certaines variables d’état sont très faciles à mesurer en plaçant un capteur au bon endroit du
système, afin de pouvoir avoir accès à l’information recherchée. Dans ce cas, on dit que la
variable d’état considérée est mesurable. Dans d’autres cas, où la mesure n’est pas possible
directement, la grandeur est dite non mesurable. S’il est possible, à partir de la mesure de la
sortie, de déduire la grandeur considérée, alors on dit que celle-ci est observable.

L’implémentation directe de la commande u = -Lx est impossible.


L’idée est donc de reconstruire l’état x à partir des informations disponibles, c’est-à-dire la
sortie y et la commande u. On utilise pour cela un système dynamique permettant
d’approximer x : un observateur.
On parle également de reconstructeur, d’estimateur, de filtre...
Il y a deux environnements possibles : le cas déterministe et le cas stochastique qui permet
de prendre en compte les bruits de mesure.

77
4.2 Observabilité
4.2.1 Définition
On considère un système dont on connaît une représentation d’état ([A; B; C; D]). Ce
système est dit observable s’il est possible de déterminer son état à un instant to donné à
partir d’une observation de sa sortie. Le but est de déterminer dans un premier temps une
condition nécessaire et suffisante d’observabilité d’un système.
L’évolution de l’état du système est régi par une équation différentielle matricielle du
type : dx
 Ax (t )  Bu (t )
dt
La sortie est donnée par:

s (t )  Cx (t )  Du (t )

78
D’après la définition donnée de la notion d’observabilité, on peut se placer en régime libre,
c’est-à-dire à e = 0. Dans ce cas, l’état vaut x(t) = eAt x(0) et la sortie s(t) = CeAt x(0). Par
conséquent, connaître s c’est connaître x(0) à la condition (nécessaire et suffisante) que
CeAt soit non singulière.

 k 0  k (t )CA k et CeAt est non singulière si et seulement si :


At n 1
Or, Ce

obs = [ CT ATCT A2TCT … AT(n-1) CT] est de rang n

Exemple : On considère le système décrit par :


 dx  0 1   1 
   x(t )    e(t )
 dt  2  3   2
s(t )  1 0x(t )

1 0
On trouve Obs    qui est de rang 2 donc le système est observable.
0 1

Sous MATLAB : O = obsv(F,H) 79


Exemple:

80
Cas où les valeurs propres de A sont distincts:
 dx
  Ax (t )  Be(t )
 dt

s (t )  Cx (t )  De(t )
Il existe une matrice P telle que: det(P) ≠ 0 et P = (V1, V2,…., Vn)
P est la matrice des vecteurs propres. AVi = iVi
1 0 ... 0 0
0  0 ... 0 
 dr  2
  A' r (t )  B ' e(t ) A'   ... ... ... ... ... 
D’où  dt  

s (t )  C ' r (t )  D' e(t )  ... ... ... ... ... 
 0 0 ... 0 n 

Les deux représentations d’état (A;B;C;D) et (A’;B’;C’;D’) satisfont :


A’ = P-1 A P ; B’ = P-1 B ; C’ = C P ; D’ = D

Critère d’observabilité
Le système est complètement observable Les colonnes de C’ ne sont pas nulles.

Les colonnes nulles de C’ correspond à des variables d’état non observables. 81


4.2.2 Notion de dualité
Nous allons montrer ici que les notions d’observabilité et de commandabilité sont deux
notions duales.
Pour ce faire, considérons les deux systèmes (S) et (S*) définis par :
 dx  dx *
  Ax (t )  Bu (t )   At
x * (t )  C t
u * (t )
 dt  dt

s (t )  Cx (t ) s * (t )  B t x * (t )

(S*) est appelé système dual ou adjoint de (S).
On montre que (S) est commandable si et seulement si (S*) est observable et que (S) est
observable si et seulement si (S*) est commandable.

En effet, (S*) est observable si et seulement si [ Bt BtAt Bt(At)2 … Bt(At)n-1]t est de

 An 1 B 
 
...
rang n c’est-à-dire si et seulement si,   de rang n, soit encore si et seulement si
 AB 
(S) est commandable.  
 B 

82
4.3 Reconstruction de l’état d’un système
4.3.1 Synthèse d’observateur
Définition On appelle observateur du système un opérateur qui génère une approximation ẑ
de la variable z = Tx sous la forme :

z̂  Fzˆ  ky  ju
où u est la commande et y la sortie.
• Si z et x ont même dimension, l’observateur est dit complet (tout l’état est estimé). On
choisit T  I ( z  x) et zˆ  xˆ

• Si dim(z) < dim(x) (par exemple : dim(z) = dim(x) - dim(y)), alors l’observateur est dit
d’ordre réduit.
Remarques :
1. Un observateur doit être stable.
2. Un observateur doit assurer la convergence de ẑ vers z (estimation sans biais).
Dans le cas déterministe, la convergence s’écrit :

lim[ zˆ(t )  z (t )]  0 u, x(to)


t 

On note  (t )  z (t )  zˆ (t ) l’erreur de reconstruction.


83
4.3.2 Observateur identité
L’observateur identité est un observateur sans biais ( zˆ (t )  z si t  ) où z = x.
Les équations du couple (système, observateur) sont :

 xˆ  Fxˆ  ky  ju

 x  Ax  Bu
 y  Cx

Exprimons l’erreur d’estimation  :
  z  zˆ  x  xˆ  ( Ax  Bu )  ( Fxˆ  ky  ju)
  ( Ax  Bu )  ( Fxˆ  kCx  ju)  ( A  KC ) x  ( B  J )u  Fxˆ
Or, ε  x-xˆ , d' où :   ( A  KC  F ) x  ( B  J )u  F
On veut une estimation sans biais, c’est-à-dire:   0 x, u,
ce qui équivaut à :
 A  KC  F  0  F  A-KC
 
 B  J  J  B
 F stable ( A  KC ) stable
 
Par conséquent, xˆ  ( A  KC ) xˆ  Ky  Bu
xˆ  Axˆ  Bu  K ( y  Cxˆ ) 84
Posons yˆ  Cxˆ , il vient : xˆ  Axˆ  Bu  K ( y  yˆ )
La figure 12 illustre la structure de l’observateur mise en évidence par cette dernière expression.
L’observateur est constitué de deux parties :
1. Un simulateur du système réel caractérisé par les matrices (A; B; C), ayant comme entrées u
et y et comme sortie ŷ.
2. Un correcteur réalisant une contre-réaction fonction de l’écart entre la sortie y et son estimée
ŷ . Ce correcteur permet d’assurer la convergence de l’estimation de l’état x̂ vers l’état x.
K est appelé le gain de l’observateur. Il y a convergence si  converge vers 0, c’est-à-dire si F
est stable, soit encore si (A - KC) est stable.
Détectabilité
Le principe de Détectabilité a été introduit pour tenir compte du cas des modes non observable.
La paire (H,F) est Détectable si et seulement si tous les modes non observable sont
asymptotiquement stables

85
86
4.3.3 Synthèse des observateurs identité par approche modale

Le problème de la synthèse d’un observateur consiste à déterminer un gain K tel que la


matrice (A - KC) soit stable.
La solution examinée ici est d’imposer des valeurs propres stables pré choisies à la matrice (A
- KC). Le problème devient donc un problème de placement de pôles. En effet, les matrices
(A - KC) et (A - KC)t ont les mêmes valeurs propres. Il s’agit donc d’imposer des valeurs
propres à la matrice (At - Ct Kt ).
Considérons maintenant le système dual fictif (S*) défini par : ( S *) p   At p  C t q
où p est la vecteur d’état et q la commande.
Le problème revient donc à déterminer une commande q = - Kt p tel que les valeurs propres
du système bouclé soient en des positions préfixées. C’est donc bien un problème de
commande modale du système dual (S*).
On retrouve ici la dualité vue précédemment entre les notions de commandabilité et
d’observabilité.

4.4 Mise en évidence du correcteur


Nous montrons ici que la synthèse d’un observateur s’apparente à une correction
classique (correction série et contre-réaction unitaire sur la sortie).
Considérons le système défini par :
 x  Ax  Bu

 y  Cx 87
et son correcteur :  x̂  ( A  KC ) xˆ  Ky  Bu

u   Lxˆ
Sous forme fréquentielle, ces équations s’écrivent :
( pI  A) X  BU et Y  CX
Ce qui donne : Y  C(pI - A) -1 BU
Or, U   LXˆ et pXˆ  ( A  KC ) Xˆ  KY  BLXˆ
On obtient donc une fonction de transfert pour le correcteur valant :
U   L[ pI  A  BL  KC ]1 KY
La figure représente la structure de la correction. On reconnaît bien une structure
d’asservissement classique.

88
Exemple

1
G ( p) 
p3  2 p2  3 p  4
F
   2  3  4 1
 
 x(t )   1 0 0  x(t )  0u (t )

  0 1 0  0
 y (t )  0 0 1x(t )

H

0 0 1 
O( F , H )  0 1 0 rang(O( F , H ))  3
1 0 0

La matrice d’obervabilité de G et d’ordre 3, le système est donc Observable

89
Objective : Faire la synthèse d’un observateur pour le systeme G dont la dynamique
soit plus rapide que le pôle le plus rapide du systeme.

Le pôle le plus rapide de G etant en -2 on souhaite par exemple que tous les pôles
de l’observateur soit en -5
a 
M  b  / det( pI  F  MH )  ( p  (5)) 3
 c 

 p  2 3 4  a
det( pI  F  MH )  det(  1 p b  )
 0  1 p  c 
 p 3  (2  c) p 2  (3  b  2c) p  (2b  3c  4  a )

on veut det( pI  F  MH )  ( p  (5)) 3  p 3  15 p 2  75 p  125

2  c  15  10

 3  b  2c  75  M   46 
2b  3c  4  a  125  13 
 90
X0=[-20 ; -20;-20]

L’observateur n’a pas les bonnes C.I.


X0=[10;10;10]

91
Gain de l’observateur
La sortie et l’etat de l’observateur
converge bien vers celle du
Système

92
Simulation avec un Observateur lent dont les pôles sont en -1
M=[-2
-2
1]

93
On remarque que : ( F  MH ) T  F T  ( MH ) T  F T  H T M T
Sous MATLAB :
M= (place(FT,HT,pôles))T
Limitation : Can't place poles with multiplicity greater than rank(H).

Conclusion

La synthèse d’observateur par placement de pôles (observateur modale) est


relativement simple dans sa mise en oeuvre, mais sur des systémes complexes d’ordre
élevés avec des vecteurs d’états qui ne sont pas toujours physique on arrive à des limites
dans sa mise en œuvres

Probléme:
Comment choisir la dynamique de l’observateur en fonction du mode que l’on
veut observer
 Une solution Les observateurs du type Kalman

94
Exemple:

95
Exemple:

96
97
Exemple:

98
4.5 Bilan sur la commande par retour d’état avec synthèse
d’observateur
4.5.1 Mise en oeuvre de la commande
La mise en oeuvre d’une commande dans le cas des systèmes continus suppose l’hypothèse d’un
système commandable et observable lorsque toutes les variables d’état ne sont pas accessibles à
la mesure. On écarte donc les parties non commandables ou non observables du système. Le
problème de la commande se résout ensuite en trois grandes étapes :
1. Recherche de la commande en supposant x mesurable. La commande linéaire est de la forme
u = -Lx, L étant déterminée par exemple en imposant des pôles à la boucle fermée.
2. Reconstruction de l’état. Si seul y est mesurable, il faut synthétiser un observateur, ce qui
revient à déterminer un gain K assurant la stabilité de l’observateur et une estimation sans biais.
3. La commande du système est finalement réalisée à partir de l’état estimé.
Deux questions se posent alors : celle de la détermination du retour d’état L et celle de l’intérêt
de la méthode (la méthode conduit-elle à un système bouclé performant ?)
La commande s’écrit u  Lxˆ et l’estimation de l’état s’écrit x̂  x   où  désigne
l’erreur d’estimation. On a donc :
u  Lx  L
Avec l’observation, la dimension du système bouclé est deux fois plus grande que celle du
système d’origine. Examinons l’état augmenté défini par la concaténation des états relatifs au
système (d’origine) et au simulateur :
 x
 
  99
Les équations du système bouclé prennent la forme :
 x  ( A  BL ) BL   x 
       

   0 ( A  KC )  

 y    C 0   x 
u   L L   

( A  BL) BL 
La matrice d’état du système bouclé vaut donc :  0 
 ( A  KC ) 
où (A - BL) est la commande dans l’hypothèse d’un état accessible et où (A - KC) est la
matrice observateur.
Les valeurs propres du système bouclé sont les valeurs propres de (A-BL), e.i celles
relatives à la commande du système plus les valeurs propres de (A - KC), e.i celles de
l’observateur.
En conclusion, la substitution de x par x̂ ne modifie pas les valeurs propres obtenues
lors du calcul de la commande : juste, les valeurs propres de l’observateur s’ajoutent à
celles déjà imposées. La stabilité du système bouclé n’est donc pas affectée par la
présence de l’observateur si celui-ci est sans biais (e.i tel que (A - KC) soit stable).
Pour que le comportement du système bouclé ne soit pas modifié de façon notable par la
présence de l’observateur, il suffit que la reconstruction de l’état soit rapide devant la
dynamique du système bouclé (pôles de (A - KC) de grand module devant ceux de
100
(A - BL)).
4.5.2 Comportement dynamique du système bouclé
Comparons les comportements obtenus lorsque la commande est réalisée directement à partir
de l’état et lorsque celle ci est réalisée en utilisant un observateur.

• Commande réalisée à partir de l’état


Les équations du système bouclé sont :
 x  Ax  Bu

u   Lx  uo
Dans le domaine de Laplace, cela s’écrit :

X ( p)  ( pI  A  BL) 1 BUo  ( pI  A  BL) 1 xo

(pI – A + BL)-1B est la matrice de transfert entre la consigne et l’état pour des consignes
initiales nulles ; (pI - A + BL)-1xo détermine l’évolution du système en régime libre (uo=0).
Les pôles de chaque fonction de transfert sont les valeurs propres de (A - BL).

101
• Commande réalisée en utilisant un observateur
Les équations du système bouclé sont :
 x  Ax  Bu
 y  Cx


 xˆ  Axˆ  Bu  Ky -KCxˆ
u   Lxˆ  uo

D’où x  Ax  B ( Lxˆ  uo)  ( A  BL ) x  BL  Buo
xˆ  ( A  BL ) xˆ  Buo  KC
et   ( A  KC )
Dans le domaine de Laplace, cela s’écrit :
pX ( p)  xo  ( A  BL) X ( p)  BL ( p)  BUo
et p ( p)   o  ( A  KC ) ( p)
Ce qui donne :
X ( p)  ( pI  A  BL)1 BUo  ( pI  A  BL)1 xo  ( pI  A  BL)1 BL( pI  A  KC )1 o
Pour des conditions initiales nulles (o = 0 et xo = 0), ou lorsque le régime libre est
atteint, la fonction de transfert obtenue est équivalente à celle obtenue directement à
partir de l’état. Les commandes sont donc équivalentes. Cela équivaut à
l’observateur est excité par u uniquement ; le système est parfaitement simulé. 102
5. Commande par placement de pôles et observateur

Si
 x (t )  F .x(t )  G.u (t ) avec x(0)  x0
SLI 
 y (t )  H .x(t )  E.u (t )
 H 
 HF 
- Est Observable  O(H, F)    de rang plien
 ... 
 n 1 
 HF 
 
- Est Commandable  C(F, G)  G FG ... F n 1G de rang plien

Alors : On peut construire un systeme de commande à placement de poles


avec Observateur

103
Systéme
 x (t )  F .x(t )  G.u (t ) avec x(0)  x0
SLI 
 y (t )  H .x(t )  E.u (t )

Observateur
 xˆ (t )  F .xˆ (t )  G.u (t )  M ( y (t )  yˆ (t )) avec xˆ (0)  xˆ0
OA
 yˆ (t )  H .xˆ (t )  E.u (t )

Commande
LDC u (t )   K .xˆ (t )

u(t) Système y(t)

Observateur

xˆ (t )

104
-K
E

y(t)
G   x(t) H

F
u(t)

E +

-
xˆ (t ) yˆ (t )
G   H

-K 105
Système de commande :
 x (t )   F  GK GK   x(t ) 
 ~    . ~ 
 x (t )   0 F  MH  x (t ) 
c 
 y (t )  H 0. x(t ) 
 ~ 
  x (t )

Le polynôme caractéristique du système de commande est :


  I n 0   F  GK GK  

Pc ( p )  det p     
  0 In   0 F  MH  
 det( pI n  F  GK ). det( pI n  F  MH )  Pf ( p ).Po ( p )

Le système de commande avec retour d' état et observateur est asymptotiquement


stable si et seulement si :
Pf ( p )  det( pI n  F  GK )  0  ( p )  0
Po ( p )  det( pI n  F  MH )  0  ( p )  0

106
Exemple
1
G ( p) 
p3  2 p 2  3 p  4

  2  3  4 1
 
 x (t )   1 0 0  x(t )  0u (t )

  0 1 0  0
 y (t )  0 0 1x(t )

1  2 1 
C ( F , G )  0 1  2 rang (C ( F , G ))  3
0 0 1 

0 0 1 
O( F , H )  0 1 0 rang (O( F , H ))  3
1 0 0

Le système est Commandable et Observable 107


- Faire la synthese d’un observateur pour le systeme G dont la dynamique
soit plus rapide que le pôle le plus rapide du systeme.
Le pôle le plus rapide de G etant en -2 on souhaite par exemple que tous les pôles
de l’observateur soit en -5

a   10
M  b  / det( pI  F  MH )  ( p  (5))3  M   46 
 c   13 

-Rendre le système non oscillant mais sans ralentir son mode le plus
rapide via un retour d’état.On veut par exemple que tous les pôles du système de
commandable soient en -2

K  a b c / det( pI  F  GK )  ( p  (2))3  K  [4 9 4]

108
X0=[-2;-2;-2]

Gain de l’observateur
L’observateur n’a pas les bonnes C.I.
X0=[0;0;0]
Gain de la commande 109
C.I.

Le système de commande avec retour d’état et observateur répond


bien à la contrainte de régulation

110
Conclusion
La Commande à retour d’état par placement de pôles (commande modale) est
relativement simple dans sa mise en œuvre, mais sur des systèmes complexes
d’ordre élevés avec des vecteurs d’états qui ne sont pas toujours physique on
arrive à des limites dans sa mise en œuvre.

La synthèse d’observateur par placement de pôles (observateur modale) est


relativement simple dans sa mise en oeuvre, mais sur des systémes complexes
d’ordre élevés avec des vecteurs d’état qui ne sont pas toujours physique on
arrive à des limites dans sa mise en œuvre.

Probléme:
Comment choisir la dynamique de l’observateur et celle de la
commande en fonction du systeme et du CdC

Une solution :

Les observateurs du type Kalman + La commande LQ  Commande LQG

111
Introduction à la commande Optimale

Les problèmes de commande optimale se rencontrent dans la vie de tous les jours : comment
arriver à destination le plus rapidement possible, comment minimiser sa consommation...
Pour un système dynamique donné et dont les équations sont connues, le problème de
commande optimale consiste alors à trouver la commande minimisant un critère donné.
Choix du critère
** Qui dit commande optimale dit critère pour choisir cet optimum **

Le but d’un système de commande est de réaliser :


 Le rejet rapide des perturbations (l’état du système converge rapidement vers sont
équilibre après une perturbation)
 Minimiser l’énergie pour assurer le suivi de consigne et le rejet des perturbations
On se trouve donc face à une obligation de compromis entre une convergence
rapide et une minimisation de l’énergie de commande
112
Rejet des perturbations

Soit deux systèmes avec la même condition initiale(≠0) on souhaite savoir


en combien de temps les systèmes vont retourner a l’équilibre.

 x (t )   x1 (t )
sys1 1  x1 (t )  e t  1
 x1 (0)  1
 x 2 (t )  2 x 2 (t )
sys2  x 2 (t )  e  2t  1
 x 2 (0)  1

 

   2 (t )dt
2 2
On constate que x (t1) dt x
0 0

On peut donc dire qu’un rejet rapide de perturbation est respecté par la minimisation
de

J x   x 2 (t )dt
0
113
Dans le cas multivariable on défini une matrice de pondération Qc (symétrique définie
non négative). On peut ainsi affecter un poid différent à chaques composantes du
vecteur d’état

J x   x T (t ).Qc .x(t )dt
0

Energie de commande

De la même façon on peut évaluer l’énergie de commande par :



J u   u 2 (t )dt
0

Dans le cas multivariable on défini une matrice de pondération Rc (symétrique définie


positive). On peut ainsi affecter un poids différent à chaques composantes du vecteur
de commande


J u   u T (t ).Rc .u (t )dt
0

114
Critère de compromis
Des observations précédentes on peut définir un critère de compromis entre
l’énergie de commande et la dynamique du système.
 
J LQ  J x  J u   x (t )Qc x(t )dt   u T (t ) Rc u (t )dt
T

0 0


 
J LQ   x T (t )Qc x(t )  u T (t ) Rc u (t ) dt
0

Qc matrice symétrique définie non negative : ponderation de l' état


Rc matrice symétrique définie positive : ponderation de la commande

Problème LQ
Le problème est de calculer la matrice K qui permet de déterminer le retour d’état
u(t)=-K.x(t) qui minimise le critère LQ
 

 J LQ   x (t )Qc x (t )  u (t ) Rc u (t ) dt
T T

 0
u (t )   K .x (t )

115
Systéme
 x (t )  F .x(t )  G.u (t ) avec x(0)  x0
SLI 
 y (t )  H .x(t )  E.u (t )

Avec les hypothèses :


 Q matrice symétrique définie non negative et R matrice symétrique définie positive
 
- (F, G) stabilisable . F , Qc est observable.
La solution du problème de régulation LQ est donnée par la loi de commande :
u (t )   K .x(t )
avec
1
K  Rc G T P
avec P solution de l' equation algébrique de RICCATI
1
0  PF  F T P  PGRc G T P  Qc

Sous MATLAB

Resolution de l’equation de Riccati continue :


Fonction ARE

Resolution du probleme LQ :
116
K=lqr(F,G,Q,R)
Exemple

1
G ( p) 
p3  2 p 2  3 p  4

  2  3  4 1   2
 
 x (t )   1 0 0  x(t )  0u (t ) x0   2

  0 1 0  0  2
 y (t )  0 0 1x(t )

1 0 0
Qc  0 1 0 ; Rc    avec   1;1 / 10;1 / 100
0 0 1

rang (C ( F , G ))  3 F , G  est commandable donc la condition (F, G) stabilisable est verifiée


rang(O(H, F ))  3 H , F  est observable donc la condition (H, G) detectable est verifiée

117
Simulation en régulation y*=0

Rc=1  K= [0.6314
0.9623
0.1231] ;

Pôles :

-1.7212
-0.4551 + 1.4793i
-0.4551 - 1.4793i

118
Rc=1/10  K= [2.7229
4.1529
1.0990 ]

Pôles :

-2.8337
-0.9446 + 0.9524i
-0.9446 - 0.9524i

En diminuant la pondération sur la commande on accélère le système


(les pôles du système on été déplacé plus à gauche) mais la valeur de la
commande a augmenté.

119
Rc=1/100  [9.6215
15.5293
6.7703]

Pôles :

-9.8516
-0.8849 + 0.5569i
-0.8849 - 0.5569i

En diminuant la pondération sur la commande on accélère le système mais


la valeur de la commande a fortement augmenté.
120
On diminue R on accélère le Système

121
La synthèse LQ si elle nous garantie des propriétés fortes de robustesse,
elle nous impose tout de même le choix des pondérations Qc et Rc
qui n’est pas forcement simple.

Dans un premier temps :


-On peut imposer d’avoir des matrices diagonales pour limiter le nombre de
paramètres.
-Fixer une matrice à l’identité et faire varier l’autre.

Mais dans le cas de système complexe d’ordre important on se retrouve devant le


même problème que celui de la commande par placement de pôles.

Une solution pour le choix des matrices Qc et Rc a été proposé par


Philippe de Larminat : la methode des grammien

122
Grammien de commandabilité

Dans cette approche on réduit le choix des matrices Qc et Rc à un horizon : Tc

Tc est l’horizon de commande. A partir de ce choix les matrices Qc et Rc sont


définies de la façon suivante :
1
 
  
TC

Qc   TC e G e G dt 
Ft Ft T

 
 0 
Rc  I
Ce choix permet d’avoir les pôles du système de commande LQ à gauche de la
verticale d’abscisse -1/Tc

123
Conclusion

La synthèse LQ nous offre une solution simple à la réalisation de régulateur


à retour d’état avec comme avantage :

-De réaliser un compromis entre dynamique et coût énergétique


-De garantir des propriétés de stabilité de la boucle de régulation

Le choix des matrices de pondération par la méthode des grammien offrent


de plus une solution simple pour fixer la dynamique.

Mais comme dans le cas du placement de pôles modale les états du système
n’étant pas toujours mesurable on doit avoir recours la plupart du temps
à l’utilisation d’observateur

124
Observateur optimale
Observateur de Kalman
Soit un systéme SLI
 x (t )  F .x(t )  G.u (t )  w(t ) avec x(0)  x0
SLI 
 y (t )  H .x(t )  v(t )

avec w(t) et v(t) des bruits blancs, de moyenne nulle


sur l' entrée et la sortie du système, mutuellement indépendant
et de matrice de covariance :
Q0   ( w(t ) wT (t ))
R0   (v(t )vT (t ))

125
Un observateur pour un tel systeme est de la forme:
 xˆ (t )  F .xˆ (t )  G.u (t )  M ( y(t )  yˆ (t )) avec xˆ (0)  xˆ0
OA
 yˆ (t )  H .xˆ (t )

On constate que l’observateur ne réalise pas d’estimation des bruits v(t) et w(t)

On cherche le gain M qui réalise la meilleure estimation de l’état du système


C.a.D. minimiser :


J (t )   ~
x (t)~
x (t)T 
~
x (t)  x(t)- xˆ(t)

126
Avec les hypothèses :
 Qo , Ro matrice symétrique définie non negative
- (F, H) détectable (F, Q o ) commandable

La solution du probléme d' observation est donnée :


M   H T Ro1

avec  solution de l' equation algébrique de RICCATI


0  F    F T   H T Ro1 H  Qo

127
Remarque :

Equation algébrique de RICCATI pour l' observation


0  F    F T   H T Ro1 H  Qo

Equation algébrique de RICCATI pour la commande


1
0  F T P  PF  PGRc G T P  Qc

On a la dualité suivante :

F  FT
H  GT
Ro  R c
Qo  Q c
P

Dans le cas de la commande et de l’observation on résout


le même problème mathématique
128
E +
-

u(t)=0
xˆ (t )
 G  H
yˆ (t )

w(t)
M

yˆ (t )  BOo ( p ) w(t )

BO c  H ( pI  F ) 1 M

129
Exemple
1
G ( p) 
p3  2 p 2  3 p  4

  2  3  4 1   2
 
 x(t )   1 0 0  x(t )  0u (t ) x0   2

  0 1 0  0  2
 y (t )  0 0 1x(t )

1 0 0
Qo  0 1 0 ; Ro  1 / 10
0 0 1

rang(O(F, H))  3  (F, H) détectable


rang(C (F, Q o ))  3  (F, Q o ) commandable

130
M =[ -3.9094 Etats
1.0025
3.4648 ]
CI
Sortie

131
La synthèse d’un observateur de Kalman si elle nous garantie des propriétés fortes
de robustesse nous impose tout de même le choix des pondérations Qo et Ro qui
n’est pas forcement simple.

Si l’on connaît la nature des bruits qui affecte le système le choix des pondérations
est automatique dans le cas contraire on peut :

Dans un premier temps :

-Imposer d’avoir des matrices diagonales pour limiter le nombre de paramètres.


-Fixer une matrice à l’identité et faire varier l’autre.

Mais dans le cas de système complexe d’ordre important on se retrouve devant le


même problème que celui de la commande par placement de pôles.

Une solution pour le choix des matrices Qo et Ro a était proposé par


Philippe de Larminat : la méthode des grammien d’observabilité

132
Grammien d’observabilité

Dans cette approche on réduit le choix des matrices Qo et Ro à un horizon : To

To est l’horizon d’observation. A partir de ce choix les matrices Qo et Ro sont définies


de la façon suivante :
1
 
  
TO

Qo   To  He Ft He G dt 
T Ft
 
 0 
Ro  I

Ce choix permet d’avoir les pôles de l’observateur à gauche de la


verticale d’abscisse -1/To

133
Conclusion

L’approche de Kalman nous offre une solution simple et robuste à la


synthèse d’observateur avec comme avantage :

-De réaliser la meilleure estimation au sens de la minimisation de la


variance de l’erreur.
-De garantir des propriétés de stabilité de l’observateur.

Le choix des matrices de pondération par la méthode des grammien


offrent de plus une solution simple pour fixer la dynamique
d’observation.

Se pose donc maintenant le problème de la robustesse d’un système de


commande LQ avec observateur d’état du type Kalman

134
Commande optimale LQG

La synthèse d’un système de commande LQG est effectuée conformément au


théorème de séparation ou principe d’équivalence certitude qui stipule que le
problème de commande LQG peut être résolu en traitant séparément le problème
d’observation optimale et le problème de commande optimale sous-jacents :

- HC : (F, G) stabilisable et ( Q c , F ) observable


- HO : (H, F) détectable et (F, Q o ) commandable

La solution du problème de régulation LQ est donnée par la loi de commande :


1
u (t )   K .x(t ) avec K  Rc G T P
1
avec P solution de l' equation algébrique de RICCATI : 0  PF  F T P  PGRc G T P  Qc

La solution du problème d' observation est donnée par la loi de commande :


M   H T Ro1
avec  solution de l' equation algébrique de RICCATI : 0  F    F T   H T Ro1 H  Qo
135
Système de commande :
 x (t )   F  GK GK   x(t )   I n 0   w(t )
 ~      I
 x (t )   0 F  MH . ~
 x (t )   n  M   v(t ) 
c 
 y (t )  H 0. x(t )   v(t )
 ~ 
  x (t )

Le polynôme caractéristique du système de commande est :


 I 0   F  GK GK  
Pc ( p )  det p  n     
  0 In   0 F  MH  
 det( pI n  F  GK ). det( pI n  F  MH )  Pf ( p ).Po ( p )

Le système est asymptotiquement stable car


le regulateur avec retour d' état et l' observateur sont asymptotiquement
stables :
Pf ( p )  det( pI n  F  GK )  0  ( p )  0
Po ( p )  det( pI n  F  MH )  0  ( p )  0
136
Exemple

1
G ( p) 
p3  2 p 2  3 p  4

  2  3  4 1   2
 
 x(t )   1 0 0  x(t )  0u (t ) x0   2

  0 1 0  0  2
 y (t )  0 0 1x(t )

1 0 0
rang(C ( F , G ))  3 F , G  est commandable donc stabilisable
Qc  0 1 0 ; Rc  1 
0 0 1
rang(O( Qc , F ))  3  
Qc , F est observable

1 0 0
 
Qà  0 1 0 ; Ro  1 

rang(O( F , Qc ))  3 F , Qc est observable 
rang(C(F, G))  3 F , G  est commandable donc stabilisable
0 0 1

137
Poursuite

Régulation

CI

138

Vous aimerez peut-être aussi