Documente Academic
Documente Profesional
Documente Cultură
Mémoire
Option :
Contrôle de processus industriel et de laboratoire
Thème :
Présenté par :
Mr. SAYAH ABDELKADER
Remerciements…..…………………………………………………………………………7
Notations………………………………………………………………………………… ..8
Introduction générale ………………………………………………………………...…...10
2
VI.6. Stabilité des systèmes …………………….……………………………......31
VI.6.2. La stabilité interne …………………………………………...…...32
VI.7. Stabilité et fonction de Lyapunov…………………………………………..34
VI.7.2. Stabilité asymptotique ………………………………………..…..35
VI.8. Fonction de Lyapunov.……………………………………………………...36
VI.9. Stabilité exponentielle.……………………………………………………...38
VII. Les Systèmes linéaires à retard..……………………………………………………..39
VII.4. Structure des systèmes à retards……………………………………………40
VII.4.4. Influence d'un retard pur sur la réponse impulsionelle...………...42
VII.4.5. Influence d'un retard pur sur la réponse indicielle……………….43
VIII. Conclusion...………..............................................................................................….44
I. Introduction :……………………………………………………………………………46
I.1. Commandabilité et observabilité…………………………………………..… 46
I.1.1. Commandabilité………………………………………………….…47
I.1.2. Stabilisabilité……………………………………………………..…48
I.1.3. Observabilité………………………………………………………...48
I.1.4. Détectabilité…………………………………………………………50
II. Observateur d'état……………………………………………………………………...50
II.1. Architecture d'un observateur………………………………………………..51
II.2. Observateur d’état et principe de séparation…………………………………51
II.2.1. Observateur de Luenberger – Kalman…………………………..…51
III. Commande à base d’observateur……………………………………………………...53
III.1.Observateurs des systèmes linéaires : ……………………………………….55
III.1.1. Modèle analytique ………………………………………………...55
III.2. Observateur asymptotique…………………………………………………..57
III.3. Observateur de Luenberger…………………………………………………57
III.4. Observateur de Kalman …………………………………………………….58
IV. Commande par retour d'état reconstruit par un observateur de Kalman……………...59
IV .1. Filtre de Kalman…………………………………………..………………..61
IV.2. Conception du filtre de KALMAN (FK)……………………………………62
3
V. Observation des systèmes à retards……………………………………………………62
V.2. Observation de systèmes à retards connus…………………………………...63
V.3. Retard connu sur l'état et la sortie…….…………...…………………………63
VI. Conclusion.…………………………………………………………………………..64
I. Introduction..…………………………….…………………………………………….66
I.1. Pourquoi la commande non linéaire .................................................................66
I.2. Qu’est-ce qu’un système non linéaire commandé…………………………….67
II. Introduction a la Commande Non-Linéaire……………………………………………68
II.1. Commandes non linéaires……………………………………………………69
II.2. Systèmes non linéaires.………………………………………………………70
II.3. Multiplicité de la représentation d'état...……………………………………..70
II.4. Introduction aux systèmes dynamiques……………………………………...72
II.4.1. Point d’équilibre.…………………………………………………...72
III. Stabilité des systèmes dynamiques : Stabilité de Lyapunov………………………….73
III.1. stabilité des systèmes à temps continu……………………………………...73
III.2. Méthode directe de Lyapunov………………………………………………76
IV. Stabilité des systèmes à retard………………………………………………………..77
IV .2. Modèles de retards…………………………………………………………79
IV.4. Stabilité des systèmes à retards par la seconde méthode de Lyapunov……..82
IV.4.2. Approche par fonctions de Razumikhin……………………………83
IV.4.3. Approche par fonctionnelles de Krasovskii………………………..84
V. Stabilité exponentielle des systèmes linéaires…………………………………………86
V.1. Cas des retards constants…………………………………………………….87
V.1.1. Première technique : Théorie de Lyapunov et comparaison……….87
V.1.2. Deuxième technique : Méthode du changement de variable………88
VI. Conclusion ..……………………………………………………………………. ……92
4
II. Conception d’observateur non linéaire………………………………………………...97
II.1. Définition (Observateur) …………………………………………………….98
II.2. les différents types ’observateurs : état de l’art……………………………...99
III. Observateurs étendus………………………………………………………………...100
III.1. Observateurs de Luenberger étendus……………………………………....100
III.2. Filtre de Kalman étendu (EKF)…………………………………………....101
III.3. Techniques de linéarisation exacte………………………………………...102
III.4. Observateurs à grand gain………………………………………………...104
III.5 Théorème 1 : (Thau)………………………………………………………..105
IV. Modélisation des systèmes non linéaires, non stationnaires à retards………………106
V. Conclusion…………………………………………………………………………....106
Conclusion Générale...…...……………………………………………………………...161
Annexe I LMI..……………………………………………………………164
Annexe II ………………………………………………………………… 169
Liste des figures…..………………………………………………………..177
Bibliographie………………………………………………………………179
6
Remerciements
Le travail que j’ai présenté dans ce mémoire a été réalisé sous la direction
du Dr. CHENAFA MOHAMED maitre de conférence classe A à l’ENSET-ORAN.
Je tiens à le remercier beaucoup pour son encadrement, sa disponibilité et conseils
qui ma permis de progresser dans ce mémoire et d'achever ce travail.
J'aimerai exprimer aussi toute ma gratitude envers tous mes amis pour leurs
sympathies.
Je souhaite aussi dire un grand merci à tous mes amis de la SCiS, pour
leurs soutiens.
7
Notations et acronymes
Ensembles :
Matrices et normes
A < B (resp. A > B) : signifie que A-B est une matrice définie négative (resp.
définie positive).
Is (I) : Matrice identité de dimension s
MT : Transposée de la matrice M
M−1 : Inverse de la matrice M
x = [x1 ; ; ; ; ; xn] Є Rn : vecteur d'état instantané
[aij ] : matrice dont le coefficient de la iéme ligne et jéme colonne est aij
8
Acronymes
9
Introduction Générale
Introduction Générale
10
Introduction Générale
Dans ce cadre des observateurs ont été conçus pour des systèmes complexes,
citons comme exemple d’application: Les modèles de réacteurs chimiques et biologiques,
colonnes à distiller, machines électriques et robots. Certains observateurs ont été utilisés
dans des applications industrielles pour la commande et la supervision des procédés.
Ce mémoire, est basé sur l'analyse des problèmes qui apparait dans la commande à
distance a travers le réseau de communications « internet » entre différent agents maitre et
esclave. Les principales difficultés est l'existence des retards introduits par la transmission
des lois de commande dans le réseau et de l’échantillonnage des informations circulants
entre maitre et esclave.
11
Introduction Générale
Il s'agit principalement de :
Le contrôle à travers le réseau est une solution de réaliser sans risque des taches
dans un environnement difficile tout en préservant les performances des systèmes à
commandés.
- Le Premier chapitre est un rappel introductif sur les systèmes linéaires et leurs
développement dans la théorie de commande : identification, analyse et conception de lois
de commande pour finir avec la stabilité et un aperçu sur les retards des systèmes
linéaires.
12
Introduction Générale
13
Chapitre : I La Commande et la stabilité des systèmes linéaires
Chapitre I
La Commande et la Stabilité
Des Systèmes Linéaires
14
Chapitre : I La Commande et la stabilité des systèmes linéaires
Durant cette période, le principe de la commande tout ou rien est pour la première
fois utilisé. Al-Jazari en particulier dans son livre « The book of knowledge of ingenious
mechanical devices » connu sous le titre abrégé : « Automata » propose de nombreux
mécanismes automatiques (pompes à eau, clepsydres, régulateurs de flammes, distributeurs
automatiques de liquides...) [1].
- Régulation des moulins à vent : le flux de grain dans un moulin est régulé suivant
la vitesse de rotation de la meule en 1588 (par le mill-hoper). En 1745, Lee invente une
petite roue à vent (vantail) montée perpendiculairement à l’axe de rotation afin d’orienter
la voilure des moulins dans le sens du vent.
15
Chapitre : I La Commande et la stabilité des systèmes linéaires
Tous ces développements se faisaient dans le cadre des systèmes linéaires avec une
seule commande et une seule sortie : on disposait d’une mesure sous la forme d’un signal
électrique. Cette dernière était alors entrée dans un amplificateur (un circuit électrique) qui
restituait en sortie un autre signal électrique que l’on utilisait alors comme signal de
contrôle.
Ce n’est qu’après les années 50 que les développements théoriques et
technologiques (calculateurs numériques) permirent le traitement des systèmes multi-
variables linéaires et non linéaires avec plusieurs entrées et plusieurs sorties [5].
Comme on peut citer les contributions importantes dans les années 60 : Richard
Bellmann avec la programmation dynamique, Rudolf Kalman avec le filtrage et la
commande linéaire quadratique et celles de L. Pontryagin avec la commande optimale. Ces
contributions continuent encore aujourd’hui à alimenter les recherches en théorie des
systèmes [5].
Définition 1 :
16
Chapitre : I La Commande et la stabilité des systèmes linéaires
Un système est dit invariant si la réponse du système à un signal x(t) différé d'un
temps τ est la même que la réponse y(t) de ce dernier sans retard τ.
1- Les systèmes à événements discrets : qui sont des séquences d’actions dans le
temps on cite par exemple les distributeurs automatiques, les ascenseurs, les montages
automatique dans les milieux industriels, les feux de croisement etc.
2- les systèmes continus pour asservir et/ou commander des grandeurs physiques de
façon précise et sans aide extérieure par exemple : la vitesse de rotation d’un lecteur CD,
l’angle d’une fusée, la position du bras d’un robot, le pilotage automatique d’un avion, le
pilotage d’un véhicule électrique.
17
Chapitre : I La Commande et la stabilité des systèmes linéaires
- Les entrées affectant un système peuvent être de nature différente. Les unes ont
pour but d’exercer des actions entraînant le fonctionnement souhaite du
système ; ce sont les commandes.
- Les autres entrées qui perturbent le fonctionnement désiré et sont définies
comme des perturbations.
II .1. Introduction :
On appelle commande toute action poursuivant un but précis qui modifié dans le
sens souhaité le processus commandé.
Dans le cas général, la marche et l’état d’un processus technologique sont
caractérisés par un ensemble de critères très compliqués.
La régulation est un cas particulier de la commande lorsque la marche désirée d’un
processus peut être assuré en stabilisant une ou plusieurs variables physiques par rapport
aux grandeurs données qui peuvent être constantes ou variables.
Les travaux réalisés dans la théorie de réglage ont imposé les marches
suivantes [2] :
18
Chapitre : I La Commande et la stabilité des systèmes linéaires
II.2. Motivation
19
Chapitre : I La Commande et la stabilité des systèmes linéaires
Les liens qui existent entre ces disciplines, basées sur la similitude des équations
mathématiques qui décrivent les phénomènes.
Les classes des systèmes qui pourraient être produits dans des systèmes de
commande modélisés sont montrées sur la figure (1.5) [9].
Classes des
Systèmes
Paramètres Paramètre
Distribués Groupés
Stochastiques Diterministes
Continue Discret
III.1. Introduction :
Le but d’un système de commande est d’exercer des actions entraînant une
amélioration du comportement du système et de ses performances.
L’ensemble des méthodes permettant l’analyse du comportement d’un système
donné et la synthèse des systèmes de commande satisfaisant des spécifications de
performance définit la théorie de la commande.
La théorie de la commande, développe des correcteurs (régulateurs) qui pouvant
être mis en œuvre sur des systèmes technologiques réels. Quelle que soit la nature du
système à commander, on peut classer les différentes structures de commande en deux
grandes familles :
Figure. I.6. Schéma de principe d’un système de commande en Boucle ouverte (BO).
21
Chapitre : I La Commande et la stabilité des systèmes linéaires
Il est important de remarquer que cette structure de commande ne présente pas que
des avantages. Elle nécessite l’emploi de capteurs qui augmentent le coût d’une
installation.
IV.1 Introduction :
22
Chapitre : I La Commande et la stabilité des systèmes linéaires
dy ( t ) d n y (t ) dv ( t ) d m v (t )
b 0 y ( t ) + b1 + ... + b n = a 0 v (t ) + a1 + ... + a m (1.1)
dt dt n d (t ) dt m
y (v1 + v 2 ) = y (v1 ) + s (v 2 )
23
Chapitre : I La Commande et la stabilité des systèmes linéaires
IV.4.2.1. Définition :
Soit une fonction f définie pour t ≥ 0 . On définit sa transformée de la place F par :
+∞
F ( s ) = TL [ f (t ) ] = ∫ f ( t ). e − st
. dt (1.2)
0
IV.4.2.2. Définition :
E(s) S(s)
T(s)
S (s ) a + a 1 s + ... + a m . s m
T (s ) = = 0
(1.3)
E (s ) b 0 + b 1 s + ... + b n s n
La représentation d’état est un modèle interne structuré qui s’applique aux systèmes
temps-variant ou non linéaires.
On considère donc le système dynamique multivariable de la figure suivante ayant
pour entrées les composantes du vecteur u ( t ) ∈ R m et pour sorties les composantes du
vecteur y ( t ) ∈ R r
[2].
U Y
Vecteur d’entrée X Vecteur de sortie
Vecteur Vecteur d’état Vecteur
Dimension m dimension n Dimension r
L’état d’un système est caractérisé par différentes variables dynamiques appelées
variables d’état regroupées dans un unique vecteur appelé vecteur d’état :
x ( t ) = [ x 1 ,..., x n ]′ (1.4)
V.3.1. Définition :
x(t) est un vecteur d’état pour le système si ce vecteur contenant le nombre minimal
de variables internes vérifiant la propriété suivante :
Si, à chaque instant t0, x(t0) est connu alors y(t1) et x(t1) peuvent être déterminés de
manière unique pour tout t1 ≥ t0 si u(t) est connue sur l’intervalle [t0 , t1].
25
Chapitre : I La Commande et la stabilité des systèmes linéaires
V.4.1. Définition :
Tout système dynamique peut être représenté par ses équations d’état définies
comme un ensemble d’équations différentielles du premier ordre appelées équations
dynamiques et un ensemble d’équations algébriques appelées équations de sortie ou de
mesure :
Une classe particulièrement importante de modèles d’état est celle des modèles
d’état linéaires. En effet, même si aucun système physique naturel ou artificiel ne peut
vérifier strictement la propriété de linéarité [2].
V.4.2.1. Définition :
26
Chapitre : I La Commande et la stabilité des systèmes linéaires
•
x (t ) = A x (t ) + B u (t ) (1.6)
y ( t ) = C x (t ) + D u (t )
Avec :
- A ∈ R n× n est la matrice d’état.
- B ∈ R n× m est la matrice de commande ou d’entrée.
- C ∈ R r ×n est la matrice de mesure ou de sortie.
- D ∈ R r×m est la matrice de transmission directe.
Un modèle d’état LTI est donc complètement caractérise par le quadriplet A, B,C,D.
Si les matrices A, B, C, D sont constantes, le système est dit : Linéaire a Temps
Invariant (LTI).
•
x (t ) = A x (t ) + B u (t ) Avec x (t0 ) = x0 (1.7)
y ( t ) = C x (t ) + D u (t )
Ou x(t ) ∈ Rn , u (t ) ∈ R m et y (t ) ∈ R r .
u1 y1
u2 Système linéaire
y2
multivariable
um yr
S . X ( s ) − x 0 = AX ( s ) + BU ( s ) (1.8)
27
Chapitre : I La Commande et la stabilité des systèmes linéaires
Ou: X ( s ) = L [ x ( t )], U ( s ) = L [ u ( t )] et Y ( s ) = L [ y ( t )]
Y ( s ) = C ( sI − A ) − 1 ( BU ( s ) + x 0 ) + DU ( s ) (1.9)
La matrice G ( s ) ∈ C r×m est appelée matrice de transfert liant l’entrée U(s) à la sortie
Y(s) :
Y (s) = G (s) × U (s) (1.11)
−1
G ( s ) = [ C ( sI − A ) B + D] (1.12)
Remarque :
VI.1. Introduction
Un système linéaire est stabilisable s’il existe une commande en boucle fermée telle
que le système commandé soit stable.
Si la commande utilise un retour d’état, il suffit que les modes instables du système
soient commandable [8].
28
Chapitre : I La Commande et la stabilité des systèmes linéaires
La commande par retour d'état est une méthode employée en asservissement pour
placer les pôles en boucle fermée dans le plan S. L'intérêt de cette technique est que les
pôles, correspondant à la valeur propre du système, vont influencer la dynamique du
système bouclé.
Soit le système à régler décrit par le modèle d’état :
•
x (t) = A x (t) + B u (t)
(1.13)
y ( t ) = C x (t)
u (t ) = − K . x (t )
x b f ( t ) = [ A − B K ] x b f ( t )
(1.14)
y (t ) = Cx bf (t )
Les conditions initiales sont rejetées d’autant plus rapidement que les valeurs
propres de la matrice ( A− BK) , ont une partie réelle très négative (i.e. R ( i ) ≤ 0 ).
Les « gains » de la matrice K seront plus grands si on désire accélérer le rejet de
perturbation.
Quand un système est instable ou qu’il est stable mais trop lent on peut chercher à
le stabiliser ou à l’accélérer il s’agit alors de modifier la dynamique du système en plaçant
les valeurs propres de A plus a gauche de l’axe imaginaire dans le plan en s en temps
continu.
29
Chapitre : I La Commande et la stabilité des systèmes linéaires
VI.3.1 Définition :
La paire (A, B) est stabilisable par retour d’état si et seulement si il existe K telle
que ( A − BK ) soit asymptotiquement stable. [10]
VI.3.2 Théorème :
La paire (A, B) est stabilisable par retour d’état si et seulement si tous les modes
instables (i.e. non asymptotiquement stables) sont commandable.
30
Chapitre : I La Commande et la stabilité des systèmes linéaires
S . X ( s) = AX ( s) + BU ( s)
Y ( s ) = CX ( s )
G ( s ) = C ( SI − A) −1 B (1.16)
x (t ) = e
At
.x (0 ) (1.17)
Le système est stable si seulement si les parties réelles des valeurs propres de A
sont à partie réel négatives.
VI.6.1. Introduction :
Si l’énergie totale d’un système est dissipée de manière continue alors le système
(qu’il soit linéaire ou non linéaire) devra rejoindre finalement un point d’équilibre. [2]
Les questions de stabilité ont été étudiées par A.M. Lyapunov (1892) qui a donnée
une définition générale englobant de nombreux systèmes physiques [11].
31
Chapitre : I La Commande et la stabilité des systèmes linéaires
De plus, si tous ces points convergent vers x alors x est asymptotiquement stable.
Cette notion est très liée à celle de l’état, des trajectoires d’état et de point
d’équilibre.
Note :
- La stabilité au sens de Lyapunov est également définie comme la stabilité
interne. Elle signifie que la trajectoire d’état peut être gardée arbitrairement près de
xe, si l’on prend une condition initiale suffisamment proche de xe.
32
Chapitre : I La Commande et la stabilité des systèmes linéaires
x ( t ) = Ax ( t ) + Bu ( t )
~
x = [ A − BK ]x = A x (1.18)
Il existe différents types de stabilités pour caractériser l'évolution d'un point vers
son état stable.
f (0) = 0 ⇒ x = 0 ⊂ D .
x ( 0 ) < ⇒ x ( t ) → 0 quand t → ∞ .
− t
x ( 0 ) < . x ( 0 ) e , ∀ t > 0 (1.20)
33
Chapitre : I La Commande et la stabilité des systèmes linéaires
∃ P = P T
> 0 Telque :
A T
.P + P . A + Q = 0 , ∀ Q = Q T
> 0 (1.22)
Remarque :
Toute la difficulté est de trouver une fonction de Lyapunov V(x) dans le cas général
ou la matrice P dans le cas linéaire.
34
Chapitre : I La Commande et la stabilité des systèmes linéaires
Un système est dit asymptotiquement stable si lorsqu'on lui applique une entrée
finie, la sortie ne diverge pas et que si on applique un échelon en entrée du système, alors
toutes les oscillations seront amorties et la sortie tendra de manière asymptotique vers une
valeur stationnaire finale figure I.14.
Exemple :
Prenons un exemple d’un pendule, on connait ses deux positions d’équilibre celle
du bas, θ = 0, est stable (un petit écart n’entraîne que de petits effets) et celle du haut, θ =
π, est instable (un petit écart entraîne de grands effets).
Si l’on tient compte du freinage de l’air, il est clair que l’équilibre du haut reste
instable. L’équilibre du bas reste stable mais avec en plus un amortissement au cours du
temps des petits écarts.
35
Chapitre : I La Commande et la stabilité des systèmes linéaires
Le candidat Lyapunov est une fonction qui présente ce type de particularité. Afin
de forcer la présence d’un minimum au point d’équilibre, la fonction sera contrainte à être
positive pour toute valeur différente de l’origine. Elle ne pourra s’annuler qu’à l’origine.
f ( x ) > 0, ∀ x ≠ 0, et f ( x ) = 0 lorsque x = 0 .
Une fonction définie positive continue, notée V(x), est un candidat de Lyapunov.
La dérivée s’écrit :
T
•
∂ V
V ( x ) = f ( x ) (1.24)
∂ x
– si X ∈ R n
tend vers l’infini en norme, V (x) tend aussi vers l’infini.
dV
≤ 0
dt
Un point d’équilibre x est stable au sens de Lyapunov si, pour tout ε > 0, il existe
η > 0 (dépendant de ε mais indépendant du temps t) tel que, pour tout x vérifiant :
Remarque :
lim t ( x ) = x (1.27)
t → ∞
Le théorème de stabilité fondamental de la théorie de Lyapunov peut maintenant
être énonce :
37
Chapitre : I La Commande et la stabilité des systèmes linéaires
VI.9.1. Définition :
∀t > 0 , x (t ) ≤ x (0 ) e − t , ∀x . (1.28)
Théorème :
S’il existe une fonction V telle que :
- x → ∞ ∀ V (x) → ∞
0 ,∀ x ≠ 0
- d
V ( x ) <
dt
alors x = 0 est globalement asymptotiquement stable.
38
Chapitre : I La Commande et la stabilité des systèmes linéaires
La théorie de Lyapunov est une théorie très générale s’appliquant aussi bien aux
systèmes non linéaires que linéaires. Il est intéressant d’interpréter sa signification en
termes de représentation d’état des systèmes linéaires. [10]
VII.1. Définition :
Le retard est caractérisé par le fait que lors de l’application d’un signale à l’entrée
du système à régler, la grandeur de sortie de ce dernier commence à varier seulement après
un temps τ.
- sτ
VII.2. Retard pur e (Origine physique du terme de retard pur)
Dans tout système, l’information de sortie est fournie par un capteur. Il se peut que,
pour des raisons d’accessibilité, d’entretien ou d’encombrement, le capteur ne puisse pas
être placé à l’endroit où l’on souhaiterait observer le système. Cela introduit un retard entre
l’instant où le signal est disponible (prêt à être mesuré) et l’instant où il est effectivement
mesuré.
Si y(t) représente le signal à mesurer, l’introduction d’un retard τ donnera lieu au
signal y ( t − ) . D’après les propriétés de la transformation de Laplace, si la
transformée de Laplace de y(t) s’écrit y(p), alors la transformée de Laplace de y ( t − )
s’écrira :
− s
L ( y ( t − )) = e × y(S ) (1.29)
39
Chapitre : I La Commande et la stabilité des systèmes linéaires
On pose : R ( s ) = e − s . D’où R ( j ) = e − j
.
Le lieu de Black est donc l’axe 0dB. Le déphasage atteint -90° pour = 1 , 57
−s
VII.3.1. Approximations de e .
−s S 2 2
S 3 3
e = 1 − S + − + ... (1.30)
2 6
− s
On peut ainsi penser approcher e simplement par :
1
= 1− s + s 2 2
− s 3 3 ... (1.31)
1 + s
L’approximation n’est pas très bonne dès que w augmente et il existe en pratique
d’autres approximations certes plus performantes mais aussi plus compliquées.
Cet axe important de recherche s'est développé depuis le début des années 90, au
départ motivé par des demandes du secteur socio-économique (production de granulats) et
concerne la structure des systèmes linéaires à retard.
40
Chapitre : I La Commande et la stabilité des systèmes linéaires
K 1 + b 1 S + ... + b m S m − t r S
H ( S ) = n1 e (1.32)
S 1 + a 1 S + ... + a n S n
m
∏ ( S − z i )
i = 1 − t
H ( S ) = K n + 1
e r S
(1.33)
∏ ( S − S i )
i = 1
− tr s
La présence du terme e montre la présence d'un retard pur de valeur tr en
secondes.
VII.4.3. Définition
K 1 + b1 S + ... + b m S m
H 1 (S ) = (1.34)
S n1 1 + a1 S + ... + a n S n
− tr s
Et H 2 ( S ) = e
41
Chapitre : I La Commande et la stabilité des systèmes linéaires
H = H1× H 2
Un système réduit à un retard pur a pour seul effet de décaler l'entrée d'une durée tr:
Y (t ) = u (t − tr )
− tr s
La transformée de la place est donnée par : Y ( S ) = e U (s)
Temps Temps
Un système réduit à un retard pur a pour seul effet de décaler l'entrée d'une durée tr:
(t ) (t − t r )
−t r s
H ( p) = e
On peut voir l'effet que le retard produit sur la réponse impulsionelle d'un système
du deuxième ordre :
(t ) y imp (t − tr )
Hr = H(s).e−tr
42
Chapitre : I La Commande et la stabilité des systèmes linéaires
Figure. I .17. Retard produit sur la réponse impulsionelle système 2ième ordre
Un système réduit à un retard pur a pour seul effet de décaler l'entrée d'une durée tr:
u(t ) u (t − t r )
H ( p) = e−tr
On peut voir l'effet que le retard produit sur la réponse indicielle d'un système du
deuxième ordre :
u(t) y ind (t − t r )
H r = H ( s ).e − t r
Figure. I.19. Retard pur sur la réponse indicielle système 2ième ordre
43
Chapitre : I La Commande et la stabilité des systèmes linéaires
VIII. Conclusion :
La commande linéaire est un sujet vaste et mûr avec une variété de méthodes
puissantes et d'une longue histoire des applications industrielles maîtrisables.
Le but d’une telle commande est de rendre un système perturbé : stable, précis et
rapide.
La synthèse des lois de commande performantes demandent une connaissance
précise du système à commander. Ou en peut représenter ce système par un modèle
mathématique issu des lois physiques.
Les performances d’un système dynamique doivent être bien définies pour faire une
analyse et une synthèse adéquates du système de commande [1].
La stabilité des systèmes est une caractéristique qualitative pour ramener les
déséquilibres de ces derniers vers un état plus stable, il existe plusieurs méthodes parmi
eux la stabilité au sens de Lyapunov qui permet de conclure la stabilité dynamique d’une
façon algébrique.
La théorie de Lyapunov peut être appliquée pour les systèmes linéaires que pour les
systèmes non linéaires. Il est intéressant d’interpréter sa signification en termes de
représentation d’état des systèmes linéaires.
Toute la difficulté est de trouver une fonction de Lyapunov V(x) dans le cas général
ou la matrice P dans le cas linéaire.
Dans notre étude le système linéaire exposé en simulation présente une stabilité
exponentielle avec un degré de stabilité α.
44
Chapitre : II Observateurs et observation des systèmes linéaires
Chapitre II
Observateurs et observation
des systèmes linéaires
I. Introduction :
La théorie d'observation d'état déterministe a été introduite dans les années soixante
(60) par Luenberger pour les systèmes linéaires. Kalman a également formulé un
observateur en considérant un système linéaire stochastique.
Préface :
46
Chapitre : II Observateurs et observation des systèmes linéaires
Par exemple, le fait de tourner le volant ou non d’une automobile ne va pas affecter
sa vitesse (la vitesse n’est pas commandable par le volant) alors que le fait de décélérer ne
va pas influencer la direction de la voiture. Ces définitions apparaissent pour la première
fois dans l’espace d’état par R.E. Kalman en 1960 [1].
Il faut noter que seulement les variables d'entrée et de sortie d'un système sont
directement observable (mesurable) et non ses variables d'état.
I.1.1. Commandabilité
Définition :
Remarque :
47
Chapitre : II Observateurs et observation des systèmes linéaires
x ( t ) = Ax ( t ) + Bu ( t ) (2.1)
n×n n×m
Où A ∈ R , B ∈ R est commandable si et seulement si : la matrice de
commandabilité (C) est de rang plein n :
rang ( c ) = rang ([ B ⋅ AB ⋅ ⋅ ⋅ A n − 1 B )] = n
Remarque :
I.1.2. Stabilisabilité
I.1.3. Observabilité
I.1.3.1. Définition :
48
Chapitre : II Observateurs et observation des systèmes linéaires
complètement observable.
Remarque :
•
x (t ) = A x (t ) + B u (t ) (2.2)
y ( t ) = C x (t ) + D u (t )
n×n n×m
A ∈ R , B ∈ R est observable si et seulement si la matrice d’observabilité, O est
de rang plein n :
C
...
rang(O) = CA = n
...
CAn−1
49
Chapitre : II Observateurs et observation des systèmes linéaires
Remarque :
I.1.4. Détectabilité
En automatique un observateur d'état est une extension d'un modèle représenté sous
forme de représentation d'état.
Un observateur d’état (ou reconstructeur) est un filtre dont l’entrée est le vecteur
des mesures bruitées de sortie d’un système dynamique, ainsi que le vecteur de ses entrées.
La sortie de ce filtre est un vecteur proche du vecteur d’état du système.
50
Chapitre : II Observateurs et observation des systèmes linéaires
•
x (t) = A x (t) + B u (t)
(2.3)
y ( t ) = C x ( t ) + D u ( t )
Comme l’état n’est en général pas accessible, un observateur consiste à réaliser une
commande par retour d’état, ou cet état estimé est noté xˆ(t ) . Cette estimation est réalisée
∧
par un système dynamique dont la sortie sera précisément x (t ) et l’entrée sera constituée
de l’ensemble des informations disponibles, c’est-à-dire u(t) et y(t). La structure d’un
observateur est de la forme :
xˆ ( t ) = A xˆ ( t ) + B u ( t ) + L [ y ( t ) − C xˆ ( t )] (2.4)
yˆ ( t ) = C xˆ ( t )
51
Chapitre : II Observateurs et observation des systèmes linéaires
e ( t ) = x ( t ) − xˆ ( t )
(2.5)
e ( t ) = x ( t ) − xˆ ( t )
e = A x ( t ) + B u ( t ) − [ A xˆ ( t ) + B u ( t ) + L C e ( t )]
= A [ x ( t ) − xˆ ( t )] − L C [ x ( t ) − xˆ ( t )] (2.6)
= [ A − LC ]e ( t )
Pour que l’observateur soit satisfait il est nécessaire que cette erreur e → 0 lorsque
t →∞ .
Lorsque cette propriété est satisfaite l’observateur est dit asymptotique, mais il est
évident que c’est une propriété nécessaire au fonctionnement correct d’un observateur.
52
Chapitre : II Observateurs et observation des systèmes linéaires
Si les valeurs propres de (A – LC) sont toutes dans le demi-plan complexe gauche,
ce système est asymptotiquement stable et le vecteur d’erreur entre l’état x et l’état x̂ tend
exponentiellement vers zéro.
II.2.1. Théorème 1 :
Le problème de l’Observateur asymptotique est donc résolu si l’on peut choisir une
matrice L qui permet de rendre (A – LC) asymptotiquement stable.
Pour réaliser une commande à retour de sortie, on peut donc utiliser un observateur
d’état.
Théorème 1 :
53
Chapitre : II Observateurs et observation des systèmes linéaires
Remarque :
On suppose que la sortie et l’état sont perturbés par des vecteurs bruits (signaux
aléatoires gênants) W1et W2 comme le montre la figure II.3.
Y=Cx+W2
ŷ Structure
d’observateur
x ( t ) = Ax ( t ) − BK xˆ ( t ) + w 1 ( t )
(2.7)
xˆ = A xˆ ( t ) − [ BK + LC ] xˆ ( t ) + Lw 2 ( t ) + LCx ( t )
e ( t ) = x ( t ) − xˆ ( t )
e ( t ) = x ( t ) − xˆ ( t )
x ( t ) = Ax ( t ) − BK [ x ( t ) − e ( t )] + w 1 ( t )
(2.8)
e ( t ) = [ A − LC ] e ( t ) + w 1 ( t ) − Lw 2 ( t )
54
Chapitre : II Observateurs et observation des systèmes linéaires
Ou encore :
La matrice d’évolution (2.9) est un bloc-triangulaire. Ses valeurs propres sont les
valeurs propres des blocs de la diagonale : [A−BK], [A−LC].
Les dynamiques du retour d’état d’une part, et de l’observateur d’autre part sont
séparées, on peut régler les valeurs propres de la commande par la matrice de retour d’état
K, de façon indépendante des valeurs propres de l’observateur que l’on règle par le choix
de la matrice L. C’est le principe de séparation.
Théorème 2 :
Pour qu’il existe un contrôleur à base d’observateur asymptotique qui stabilise (C,
A, B) il faut et il suffit que les modes instables (i.e. non asymptotiquement stables de A
soient commandables et observables).
En pratique, la synthèse ce fait exactement comme dans le cas précédent mais avec
la commande : u = − Kx + v on choisit K telle que (A-BK) soit asymptotiquement
stable et assure certaines propriétés du système bouclé. Avec le choix de L de façon à
reconstruire l’état avec la dynamique (A-LC).
55
Chapitre : II Observateurs et observation des systèmes linéaires
Dans les deux cas, on considère le modèle dynamique d’un système linéaire défini
comme suit :
x ( t ) = Ax ( t ) + Bu ( t ) + w ( t )
(2.10)
y ( t ) = Cx ( t ) + v ( t )
Où t > 0, x (t ) ∈ R n , u (t ) ∈ R m , y (t ) ∈ R p
- x(t ) : le vecteur d’état, u(t ) : le vecteur d’entrée, y(t) : le vecteur de sortie ; sont
reliés par l'intermédiaire des matrices A, B, C.
Les procédés ainsi modélisés ne suivent pas toujours une telle représentation. Les
principaux aspects à prendre en compte afin de minimiser les erreurs de modélisation sont
les suivantes :
56
Chapitre : II Observateurs et observation des systèmes linéaires
xˆ ( t ) = A xˆ + Bu ( t ) + L ( y ( t ) − C xˆ ), avec yˆ = C xˆ
de
= ( A − LC )e ;
dt
xˆ ( t ) = A xˆ ( t ) + Bu ( t ) + K ( y ( t ) − C xˆ ( t )) (2.11)
e ( t ) = ( A − KC ) e ( t ) (2.12)
57
Chapitre : II Observateurs et observation des systèmes linéaires
Remarque :
En présence de bruits w, v, la dynamique de l’erreur est régie par l’équation :
e ( t ) = ( A − KC ) e ( t ) + LW ( t ) − Kv ( t ) (2.13)
Cette erreur est donc sensible aux bruits par l’intermédiaire des deux fonctions de
transfert :
( SI − A + KC ) − 1 Le + ( SI − A + KC ) − C xˆ − 1 K
x ( t ) = Ax ( t ) + Bu (t)
y ( t ) = Cx (t)
xˆ ( t ) = A xˆ ( t ) + Bu ( t ) + L ( y − yˆ )
(2.14)
y ( t ) = C xˆ ( t )
x̂ = ( A − LC ) xˆ + Bu + Ly (2.15)
58
Chapitre : II Observateurs et observation des systèmes linéaires
Pour cela, il suffit de choisir L telle que la matrice (A-LC) soit une matrice
Hurwitz, c’est-à-dire que ses valeurs propres soient à parties réelles négatives dans le cas
continu ou possèdent un module inférieur à 1 dans le cas discret.
En effet, si le système commandé est stable, et si l'observateur ainsi conçu est stable
(i.e. les matrices (A − BK) et (A − LC) sont Hurwitz)
Alors le système commandé par retour d'état reconstruit est stable.
xˆ ( t ) = A xˆ ( t ) + Bu ( t ) + L ( y − yˆ )
y ( t ) = C xˆ ( t )
x ( t ) = Ax − BK xˆ
xˆ ( t ) = ( A − BK ) xˆ + L ( y − C xˆ )
xˆ ( t ) = ( A − BK ) xˆ + LC ~x
~ ~ ~
x = ( xˆ − x) d’où en remplaçant, X = ( A − LC ) X
59
Chapitre : II Observateurs et observation des systèmes linéaires
x A − BK − BK X
~ = ~
x 0 A − LC X
Cette matrice est triangulaire par blocs, Ainsi la synthèse d'un système commandé
par un retour d'état reconstruit par un observateur est particulièrement simple pour les
systèmes linéaires invariants, puisque on peut synthétiser les deux fonctions séparément.
Figure. II.4.La synthèse d'un système commandé par retour d'état reconstruit par un observateur
Remarque :
- Pour le placement de pôles, on a tout intérêt à ce que l'observateur soit plus rapide
que le système dynamique, de façon à ce qu'il puisse poursuivre le système en
question.
- Du fait de sa nature dynamique (intégration des signaux de mesure) l'observateur est
également utilisé en traitement du signal pour filtrer des mesures. C'est dans ce
contexte que Kalman à publié le filtre qui porte désormais son nom.
- Une commande fondée sur un retour d'état reconstruit n'est pas robuste aux erreurs
de modélisation. Donc la précision de l'état reconstruit dépend de la pertinence du
modèle utilisé.
60
Chapitre : II Observateurs et observation des systèmes linéaires
Le filtre de Kalman est un filtre à réponse impulsionelle infinie qui estime les états
d'un système dynamique à partir d'une série de mesures incomplètes ou bruitées.
Le filtre de Kalman est utilisé dans une large gamme de domaines technologiques
(radar, vision électronique, communication ...). C'est un thème majeur de l'automatique et
du traitement du signal.
Par exemple, pour le cas des radars où l'on désire suivre une cible, des données sur
sa position, sa vitesse et son accélération sont mesurées à chaque instant mais avec
énormément de perturbations dues au bruit ou aux erreurs de mesure.
IV.1.2. Paternité
Le Filtre de Kalman doit son nom à Rudolf Kalman. Le filtre a été décrit dans
diverses publications par Swerling (1958), Kalman ( 1960) et Kalman-Bucy ( 1961).
61
Chapitre : II Observateurs et observation des systèmes linéaires
Le filtre de Kalman est un estimateur récursif. Cela signifie que pour estimer l'état
courant, seuls l'état précédent et les mesures actuelles sont nécessaires. L'historique des
observations et des estimations n'est ainsi pas requis.
xˆ = A xˆ ( t ) + B u ( t ) + K ( t )( y ( t ) − C xˆ ( t )) (1.16)
P ( t ) = E [ e ( t ). e ( t ) T
]
− 1
K (t ) = P (t )C T
R (1.17)
−1 −1
Pˆ = AP ( t ) + PA t
− P (t )C t R CP − C Xˆ ( t ) + LQL (1.18)
Sous certaines conditions, on peut montrer que la matrice P(t) tend vers une limite
et que le filtre est stable, ce qui permet éventuellement de conserver pour K sa valeur en
régime permanent.
V.1. Introduction :
62
Chapitre : II Observateurs et observation des systèmes linéaires
En pratique très peu de systèmes sont soumis à des retards constants. Plusieurs
auteurs ont abordé l'observation des systèmes à retards [29] mais, le plus souvent, l'écriture
de l'observateur fait intervenir la valeur du retard.
Les matrices définissant les dynamiques du système étudie sont supposées connues.
x ( t ) = Ax ( t ) + A x (t − 1 ( t )),
y ( t ) = Cx (t) + C x (t − 2 ( t )),
( t ) = x ( ), ∀ ∈ [ − , 0 ], (3.40)
Où x∈ R n
représente l'état du système, y ∈ R p
est la sortie (qu'on suppose
n×n n×n p×n
être égale à la mesure). Les matrices A∈ R , A ∈ R et C ,C ∈ R
63
Chapitre : II Observateurs et observation des systèmes linéaires
sont des matrices réelles supposées connues. Nous supposerons que la paire (A, C) est
observable.
i ∈ [ 1i, 2i ], et ∀ t , i (t ) = i + i ( t ), i ( t ) ≤ i ,
Nous supposons ici que les retards 1 sur l'état, et 2 sur la sortie, sont connus au
niveau de l'observateur. On définit alors l'observateur de Luenberger adapte au cas des
systèmes à retards sur la sortie :
xˆ ( t ) = A xˆ ( t ) + A x ( t − 1 ( t )) − L ( y ( t − 2 ( t )) − yˆ ( t − 2 ( t ))),
yˆ ( t ) = C xˆ ( t ) + C xˆ ( t − 2 ( t ))
(3.41)
e ( t ) = ( A + LC ) e ( t ) + A e ( t − 1 ( t )) − LCe ( t − 2 ( t )),
(3.42)
VI. Conclusion
Ce chapitre a été consacré d’une part à quelques rappels sur des concepts relatifs à
la Commandabilité, l’observabilité (rappels sur quelques définitions sur la notion
d’observabilité et formulation du principe d’estimation d’état).
D’autre part, nous avons présenté un état de l’art qui regroupe la plupart des
techniques de conception d’observateurs pour les systèmes linéaires (Observateur de
Luenberger, Kalman...).
64
Chapitre : II Observateurs et observation des systèmes linéaires
Le problème de l’observation des systèmes linéaires est donc résolu avec une
variété de techniques. Ce qui donne un grand choix d’utilisation.
Le filtre de Kalman fait appel à la dynamique du système qui définit son évolution
dans le temps pour obtenir de meilleures données, éliminant ainsi l'effet du bruit telque le
cas dans le traitement de signale.
L’observateur linéaire utilisé dans la commande ou en peut pat mesuré les états par
des capteurs ou dans le cas où la mesure est difficile ou couteuse, dans notre cas pour
mesuré les états et les utilisées dans la commande à travers le réseau de communication
internet pour assurer une commande plus stable vu les retards introduits due à
l’échantillonnage (commande, mesure) et la communication.
Ces données peuvent être calculées pour l'instant présent (filtrage), dans le passé
(lissage), ou sur un horizon futur (prédiction).
La mesure du retard est nécessaire pour les systèmes en temps réel où ces retards
influent sur la commande. Peut de retards sont constants et leurs connaissance est limité
par les techniques d'identification et d'analyse disponibles.
65
Chapitre III Commande des Systèmes Non-linéaires
Chapitre III
I. Introduction :
Le thème de conception de la commande non-linéaire est une opération qui a attiré une
attention particulière en raison de l'apparition des microprocesseurs.
Au cours des dernières décennies, une importante recherche en automatique s’est
intéressé sur le problème de l’observation de l’état des systèmes dynamiques non linéaires.
Ceci est motivé par le fait que l’estimation de l’état est une étape importante pour la synthèse
de lois de commande, le diagnostic et la supervision des systèmes industriels [19].
Sachant que La commande linéaire est un sujet maitrisable avec une variété de
méthodes puissantes, il est normal qu’on pose la question pourquoi les chercheurs et les
concepteurs, de larges secteurs tels que la commande d'avion et de vaisseau spatial, la
robotique, la régulation des processus, et technologie biomédicale, ont montré un intérêt actif
66
Chapitre III Commande des Systèmes Non-linéaires
pour les applications des méthodes non-linéaires de commande ?. Les raisons peuvent être
citées comme suit :
• Amélioration des systèmes de commande existants : quand la gamme exige des
opérations étendues, le contrôleur linéaire est susceptible d'être instable, parce que les non-
linéarités dans le système ne peuvent pas être correctement compensées [20].
• Traiter l’incertitude des modèles : dans la conception des contrôleurs linéaires, il est
habituellement nécessaire de supposer que les paramètres du modèle de système sont connus.
Alors, beaucoup de problèmes de commande impliquent des incertitudes dans ces paramètres.
Ceci peut être dû à un temps de variation lent des paramètres (par exemple, de la pression
atmosphérique ambiante pendant un vol d'avion), ou d'un changement brusque des paramètres
(par exemple, dans les paramètres d’inertie d'un robot quand un nouvel objet est saisi) [20].
On peut citer par exemples parmi les systèmes mécaniques ou chimiques: satellites,
avions, automobiles, grues, machines-outils, régulateurs thermiques, réacteurs chimiques,
procédés biotechnologiques ou agro-alimentaires, etc.
67
Chapitre III Commande des Systèmes Non-linéaires
Les entrées peuvent être choisies en boucle ouverte, c’est-à-dire ne dépendant que du
temps, ou en boucle fermée, c’est-à-dire comme des fonctions des variables mesurées,
appelées observations, qui rendent compte de l’état du système à chaque instant.
Un tel système est non linéaire s’il n’est pas équivalent à un système linéaire dans un
sens à préciser. D’après le théorème de la superposition des systèmes linéaires on peut dire
que le système qui n’obéit plus au principe de superposition est un système non-linéaire [22].
Les techniques des systèmes non-linéaires ne sont pas considérées comme un effort
difficile, ils sont regardés comme des problèmes complexes [23].
Il est donc important de maîtriser les interactions entre la complexité du modèle choisi
pour représenter les phénomènes et la conception et les performances de lois de
commande[21].
- les possibilités qu’ils offrent pour l’analyse et la conception des lois de commande.
68
Chapitre III Commande des Systèmes Non-linéaires
Dans tous les cas, ces bouclages peuvent être statiques, c’est-à-dire que la commande
est calculée en utilisant directement les informations sur l’état, ou dynamiques, c’est-à-dire :
des calculs d’intégrales de fonctions des variables d’état sont nécessaires pour calculer la
commande.
Après linéarisation, les techniques classiques du linéaire peuvent être appliquées. Cette
approche a souvent été employée pour résoudre des problèmes pratiques de commande mais
cette technique impose que le vecteur d'état soit mesuré et demande un modèle précis du
procédé à commander. De plus, les propriétés de robustesse ne sont pas garanties face aux
incertitudes paramétriques du modèle. En effet, cette technique est basée sur l'annulation
exacte des termes non linéaires. Par conséquent, la présence d'incertitudes de modélisation sur
les termes non linéaires rend l'annulation inexacte et l'équation entrée-sortie résultante non
linéaire à ce problème [25]. La commande linéarisante a fait l'objet de plusieurs applications.
69
Chapitre III Commande des Systèmes Non-linéaires
- Incertitudes paramétriques
- Dynamiques négligées.
Le premier type entrera directement en jeu dans le modèle tandis que le second type
porte sur l'ordre sous-estimé du système. La commande robuste est une première technique de
commande de l'automatique traitant ce genre de problème. Parmi les différentes techniques, la
commande par modes de glissement (Sliding Mode Control) est une technique
particulièrement intéressante. Elle remonte dans les années 1970 avec les travaux d'Utkin [24].
La forme la plus générale d'une représentation d'état est composée de deux fonctions:
x ( t ) = f ( t , x ( t ), u ( t ))
(3.1)
y ( t ) = h ( t , x ( t ), u ( t ))
70
Chapitre III Commande des Systèmes Non-linéaires
∂
On remarque : Z = ∂ x , que l'on note : x par la suite.
∂ −1
∂
x = (z)
∂
D’où : z = f ( t , x ( t ), u ( t )) (3.2)
∂
∂
z = f ( t , − 1 ( z ), u ( t ))
∂ (3.3)
y = h ( t , − 1 ( z ), u ( t ))
L'exemple classique de système non linéaire est un pendule libre (il n'y a pas d'entrées,
le pendule est livré à lui-même).
ml ( t ) = − mg sin ( t ) − kl ( t ))
Où :
- θ(t) est l'angle du pendule
- m est la masse du pendule (la masse de la tige est négligée)
- g est l'accélération gravitationnelle
- k est le coefficient de frottement au point de pivot
- l est le rayon du pendule (jusqu'au centre de gravité de la masse m)
g k
x2 (t ) = − sin x1 (t ) − sin x2 (t )
l m
71
Chapitre III Commande des Systèmes Non-linéaires
Ou :
x 1 ( t ) x 2 (t )
x ( t ) = = f ( t , x ( t )) = g k
x 2 ( t ) − sin x 1 ( t ) − x 2 (t )
l m
Les points d'équilibre stationnaires d'un système sont définis par les points où x = 0 .
Dans ce cas, les points qui satisfont ce critère pour le pendule sont :
x1 (t ) = n
x 2 (t ) 0 Pour tout n entier.
x = f ( x ) (3.4)
∞ ∞
Sur une variété x de classe c et de dimension n, f étant un champ de vecteurs c
L’équation (3.4) est dite stationnaire pour exprimer que la vitesse f(x) en tout point x
ne dépend pas de l’instant t de passage.
72
Chapitre III Commande des Systèmes Non-linéaires
La stabilité au sens de Lyapunov est une théorie générale valable pour toute équation
différentielle.
Cette notion signifie que la solution d’une équation différentielle initialisée au
voisinage d’un point d’équilibre reste suffisamment proche.
Considérons la classe des systèmes non linéaires décrits par l’équation dynamique :
x ( t ) = f ( x ( t ), t ), x ( t 0 ) = x 0 (3.7)
73
Chapitre III Commande des Systèmes Non-linéaires
Comme ce qui nous concerne c’est la stabilité de l’erreur d’estimation, alors nous
supposons que le système (3.5) possède un unique point d’équilibre xe = 0. Ce qui mène aux
définitions de la stabilité du système (3.5) autour de l’origine.
L’origine est un point d’équilibre stable au sens de Lyapunov pour le système (3.5), si :
∀ > 0 , ∀ t ≥ 0 , il existe un scalaire positif ( , t 0 ) tel que :
L’origine est un point d’équilibre uniformément stable pour (3.5) si ∀ ε > 0, il existe
un scalaire positif δ(ε) tel que :
L’origine est un point d’équilibre attractif pour (3.5) si , ∀ > 0 , il existe un scalaire
x 0 < ( t 0 ) ⇒ lim ( x ( t , t 0 , x 0 )) = 0 , ∀ t ≥ t 0
t→ ∞ (3.10)
74
Chapitre III Commande des Systèmes Non-linéaires
L’origine est un point d’équilibre localement exponentiellement stable pour (3.5) s’il
existe deux constantes strictement positives et telles que :
x (t , t 0 , x 0 < × e − (t − t0 ) , ∀ t ≥ t 0 , ∀ x 0 ∈ Β ( 0 , r )
(3.11)
Lorsque B ( 0 , r ) = R n
, on parle de stabilité exponentielle globale.
Note :
- Cette méthode consiste à définir une fonction particulière dont l’existence garantit
la stabilité.
75
Chapitre III Commande des Systèmes Non-linéaires
III.2.1. Définition 1 :
+
1 .∀ t ∈ R ,∀ x ∈ R n
, x ≠ 0 V (x,t) > 0;
+
2 .∀ t ∈ R , V ( x , t ) = 0 ⇒ x = 0 ;
+
3 .∀ t ∈ R , lim x → ∞ V ( x ,t) = ∞
∀x ∈ 0 (Respectivement ∀ x ∈ R n ),
'
∂V ∂V ( x, t)
V ( x , t ) = ( x, t) + ∂ x f ( x , t ) ≤ 0
∂t (3.12)
76
Chapitre III Commande des Systèmes Non-linéaires
Remarque :
Si le système différentiel (3.5) admet une fonction de Lyapunov locale au sens large
(respectivement au sens strict), alors l’origine est un point d’équilibre localement stable
(respectivement asymptotiquement stable).
IV.1. Introduction
77
Chapitre III Commande des Systèmes Non-linéaires
Dans ce mémoire, le travail va être porté sur l'analyse des problèmes apparaissant dans
les communications comme l’existence de retards induits par l’émission et réception des
informations.
Plus généralement, les systèmes à retards sont des systèmes dont la dynamique ne
dépend pas seulement de la valeur du vecteur x à l'instant présent t, mais aussi des valeurs
passées de x (t ) .
Les équations différentielles décrivant l'évolution du système dépendent de :
x i (t − i ), avec i ≥ 0 .
Dans ce cas, l'état à l’instant t est décrit par une fonction, notée xt définie sur
l’intervalle [ − i , 0 ] .
L'analyse de la stabilité des systèmes à retards peut être menée à l'aide de techniques
issues de la seconde méthode de Lyapunov. Dans la littérature, on trouve de nombreux
résultats concernant des retards constants ou variables, simples ou multiples.
Il s'agit principalement de :
Commande
1 3
2 2 1
Retard
Figure III.1 : Localisation des retards
78
Chapitre III Commande des Systèmes Non-linéaires
Ces retards peuvent quelque fois être négligés, mais lorsque leur taille devient
significative et influe sur les performances temporelles du système on ne peut pas les ignorer.
La figure suivante représente l’échantillonnage dans les deux parties qui constitue un
système de communication entre maitre et esclave.
Réseau
Internet
Echantillannage h1 u
MAITRE ESCLAVE
τ1 Echantillonnage
y h2
τ2
Figure.III.2. Commande à distance des systèmes à retards.
Dans cette partie, nous présenterons différents modèles de retards que l'on rencontre
dans la littérature.
a. Retards constants :
Les premières études sur la stabilité des systèmes à retards été réalisées sur des retards
constants. Depuis les années 90, différentes conditions, présentées sous forme LMI, de
stabilité robuste des systèmes linéaires à retards constants mais incertains ont été
développées[44].
On parle alors d'équations à retards majorées ou bornées s'il existe un nombre réel
> 0 telque les variables fonctionnelles xt et xt sont définies sur l’intervalle [ − , 0 ] .
79
Chapitre III Commande des Systèmes Non-linéaires
Comme la constance du retard est une hypothèse rarement vérifié dans la réalité [44].
On définit les retards majorés pour lesquels il existe un réel connu 2 > 0 tel que :
0 ≤ (t) ≤ 2 (3.12)
On suppose que les retards varient dans un intervalle [0, τ2]. Or les retards apparaissant
dans des processus réels sont le plus souvent dus à des phénomènes de transfert d'information.
Si on autorise le retard à prendre la valeur 0 revient à supposer qu’à un moment ce transfert se
fait de manière instantanée. Il est intéressant de fixer une borne inférieure du retard pour
ensuite pouvoir mesurer son impact sur la stabilité.
( t ) ≤ d < 1 (3.14)
80
Chapitre III Commande des Systèmes Non-linéaires
( t ) ≤ 1 (3.15)
Dans le cas des systèmes à retard, la méthode de Lyapunov a été généralisée par
Krasovskii[17].
x = f ( x , x ,t) (3.16)
On suppose que l’origine est un point d’équilibre du système (3.16). Les deux
propositions suivantes établissent des conditions de stabilité asymptotique et exponentielle de
cet équilibre.
Proposition 1 :
On suppose que la fonction f(.) prend des valeurs bornées sur des ensembles bornés.
L’origine du système (3.16) est asymptotiquement stable s’il existe une fonctionnelle
V ( x , x ) (appelée fonctionnelle de « Lyapunov-Krasovskii ») telle que la dérivée de V le
long des trajectoires de (3.16) est définie négative sur un voisinage de l’origine.
u ( x ( t )) ≤ V ( x , x ( t )) ≤ v (max x ( ) ), ∈ [ − , 0 ] (3.17)
81
Chapitre III Commande des Systèmes Non-linéaires
Proposition 2 :
pour V ( x , x ) :
≤ V ( x , x ) ≤ x ( )
2 2
x (t) max
∈ [− ,0 ]
1 2 ,
(3.18)
V ( x , x ) ≤ −
2
x (t)
(3.19)
x ( t ) = f ( t , x ( t ), x t ),
(3.20)
x t 0 ( ) = ( ), pour ∈ [ − ,0 ] ,
Nous supposerons qu'il admet une solution unique et un état d’équilibre xt = 0 .
dv
< 0 , si x ≠ 0 . (3.21)
dt
82
Chapitre III Commande des Systèmes Non-linéaires
Deux extensions à la seconde méthode de Lyapunov ont été développées dans le cadre
des équations différentielles à retards.
Dans le cas des équations ordinaires (c'est-à-dire sans retard), la fonction
v = v ( t , x ( t )), ne dépend que d'arguments présents. Dans le cas retardé, deux types
d’approches sont possibles :
v = v ( t , x ( t )), Ou v = v ( t , x t ).
Dans cette approche, nous nous placerons dans R n en considérant une fonction de
Lyapunov v ( t , x ( t )), classiques pour les équations différentielles ordinaires. Toute fois le
théorème suivant montre qu'il est inutile de vérifier que :
V ( t , x ( t )) ≤ 0 (3.22)
Le long de toutes les trajectoires du système.
Théorème :
a) u ( (0 ) ) ≤ V (t, ) ≤ v ( )
V ( t + , ( t + )) ≤ V ( t , Φ ( t )), ∀ ∈ [ − , 0 ] (3.23)
83
Chapitre III Commande des Systèmes Non-linéaires
a) u ( ( 0 ) ) ≤ V ( t , ) ≤ v ( )
V ( t + , x ( t + )) ≤ p (V ( t , x ( t ))), ∀ ∈ [ − , 0 ] (3.24)
Dans la pratique, les fonctions p les plus souvent utilisées sont celles de la forme
p = q ou q est une constante strictement supérieure à 1. De plus les fonctions de
Lyapunov recherchées dans l'approche de Razumikhin sont souvent des fonctions
quadratiques de la forme :
V (t ) = x T
Px ( t ), (3.25)
Ou P est une matrice symétrique définie positive. L'équation (3.25) devient la plupart du
temps :
x T
( t + ) Px ( t + ) ≤ qx T
( t ) Px ( t ), ∀ ∈ [ − , 0 ] et q > 1 (3.26)
L’approche Lyapunov-Razumikhin conduit généralement à des résultats plus
conservatifs que ceux tires de l'approche de Lyapunov-Krasovskii, présentée au paragraphe
suivant [29].
84
Chapitre III Commande des Systèmes Non-linéaires
a) u ( (0 ) ) ≤ V (t , ) ≤ v ( )
i) u ( (0 ) ) ≤ V (t, ) ≤ v ( )
v (t + , x t+ ) − v (t, xt )
V ( t , ) = lim + sup
∈→ 0
85
Chapitre III Commande des Systèmes Non-linéaires
L’α-stabilité, à taux α garanti des systèmes linéaires à retards est donc claire. Les
approches présentées utilisent les techniques des fonctionnelles de Lyapunov-Krasovskii.
Définition :
pour tout α > 0, un système à retards est dit α−stable, ou exponentiellement stable et de
degré de convergence α , s’il existe un réel β ≥ 1 tel que les solutions x (t , t0 , Φ ) , pour toute
− ( t − t
x ( t , t 0 , Φ ) ≤ Φ e 0 )
(3.27)
Cela revient à déterminer une enveloppe exponentielle des trajectoires d’un système.
86
Chapitre III Commande des Systèmes Non-linéaires
Cette section est consacrée à la classe des systèmes définie par des équations
différentielles aux déférences de type retardé à coefficients et à retards constants. Sans perte
de généralité, nous considérons le système suivant soumis à un seul retard :
x ( t ) = A 0 x ( t ) + A 1 x ( t − )
x ( s ) = ( s ), ∀ s ∈ [ − , 0 ]
(3.28)
Φ ∈ c = c 0 ([− 2 , 0 ], R n )
L’idée directrice de cette partie est de savoir si pour une valeur de α > 0, un système à
retard est α−stable. Dans ce cadre, il existe différentes techniques qui permettent de déterminer
si un système à retards possède un degré de convergence α fixé a priori.
L’α−stabilité du système (3.28) est prouvée s’il existe une fonctionnelle de Lyapunov
V vérifiant les propriétés suivantes :
Telque :
( 0 ) ( ) ≤
r r
a m ≤ V a M
Et V ( ) ≤ r V ( ) (3.29)
87
Chapitre III Commande des Systèmes Non-linéaires
r (t − t
V ( x t ) ≤ V ( ) e 0 )
(3.30)
r (t − t r (t − t
≤ V ( ) e
r r
a m x (t) 0 )
≤ a M e 0 )
(3.31)
a
= ( M
) 1 / r
.
a m
x (t) = x (t)e (t − t0 )
.
88
Chapitre III Commande des Systèmes Non-linéaires
x (t, ) = 2 x (t, )
2
Comme est de norme inférieure à δ, on a :
2
x (t , ) = 2
Et donc :
− (t − t
x (t, ) = 2 e 0 )
On remarque l’importance de l’uniformité de la stabilité de x
Théorème 2.2.1 :
0 Y
T
Ψ P − T
Γ1 =
T 1
R Y 1 Y 2
* Z Z ≥ 0 ;
1 2
* * Z 3
P 0
P = 1
On définie la matrice P et ψ:
P2 P 3 et
89
Chapitre III Commande des Systèmes Non-linéaires
Y2
T
0 I 0 I S +Y +Y
T
Ψ= P +A + I −I P+ Z +
n n
T 1 1
A
0 + In − In 0 n n Y2
T
R
(3.34)
x ( t ) = A x ( t ) + A x ( t − ( t ))
x ( s ) = Φ ( ), ∀ ∈ [
(3.35)
2 ,0 ]
Le retard τ(t) sera considéré comme constant, les critères que nous exposerons utilisent
l’outil LMI.
Lemme 1 :
Le système (3.35) est asymptotiquement stable pour tout retard τ constant inférieur à
τ2, s’il existe des matrices de dimension n×n, symétriques définies positives P1,S et R, et des
matrices de dimension (n×n), P2, P3, Y1, Y2, Z1, Z2 et Z3 telles que les conditions LMI
suivantes soient satisfaites :
0 R Y
Ψ1 −
T T
P A
1
Y 1 < 0
* ≥ 0,
Z (3.36)
* − S1 ,
90
Chapitre III Commande des Systèmes Non-linéaires
T T
T 0 In 0 In S 0 Y Y
Ψ1 = P
− + A − I P + 2Z + 0 R + 0 + 0 ,
0
A I n 0 n 2
(3.37)
Z1 Z
Y = [Y 1 ] Z = 2
Z 3
Y2 T ,
2
Z
t 0 t
V ( t ) = x ( t ) EP x ( t ) +
T
∫x T
( s ) Sx ( s ) ds + ∫ ∫Z
T
( s ) Rz ( s ) dsd ,
t − 2 − 2 t +
(3.38)
I n 0
= 0 x (t ) est donné par :
0
Ou E et ou le vecteur
colone {s ( t ), z ( t ) } ,
Lemme 2 [44]:
91
Chapitre III Commande des Systèmes Non-linéaires
symétriques définie positives P1,S et R, et des matrices de dimension (n×n), P2, P3, Y1, Y2, Z1,
Z2 et Z3 telles que les conditions LMI suivantes soient satisfaites :
0 T
Ψ1 P − Y1
T
R Y
A1 <0 * ≥ 0,
− (1 − d ) S1
,
Z (3.39)
*
VI. Conclusion
Dans ce chapitre, nous avons présenté le contexte des systèmes à retards. Leur
apparition fréquente dans la modélisation des phénomènes physiques. Après avoir présenté les
modèles de systèmes à retards liés à la commande en réseau due à l’échantillonnage.
Ces retards peuvent être négligés, mais lorsque leur taille devient significative et influe
sur les performances temporelles du système on ne peut pas les ignorer.
L’idée directrice de cette partie est de savoir si pour une valeur de α > 0, un système à
retard est α−stable.
Dans l’α-stabilité, à taux α garanti des systèmes linéaires à retards on utilise les
techniques des fonctionnelles de Lyapunov-Krasovskii.
92
Chapitre III Commande des Systèmes Non-linéaires
Ce chapitre est une introduction de quelques notions sur l’application des LMI dans la
convergence exponentielle avec un taux de convergence α pour garantie la stabilité des
systèmes à retard. L’idée directrice de cette partie est de savoir si pour une valeur une valeur
de α > 0, un système à retard est α−stable.
93
Chapitre IV Observateurs non-linéaires
Chapitre IV
Observateurs non-linéaires
I.1. Introduction
De nombreuses méthodes ont été développées pour concevoir des observateurs non
linéaires, le problème reste sans solution dans un grand nombre de cas. C’est un domaine
de recherche actif, car la connaissance de l’état d’un système est nécessaire dans de
multiples applications, à savoir la commande de procédés, la surveillance des systèmes, le
diagnostic et la détection de défauts.
En pratique, l’état d’un système peut correspondre à une grandeur physique que
l’on ne sait pas mesurer directement, en effet, il est bien connu que le problème de mesure
de certaines variables est encore ouvert, notamment certaines concentrations de produits
chimiques ou des activités biologiques dont l'analyse est encore effectuée manuellement.
Plusieurs applications n'ont pu être réalisées parce qu'elles utilisent des variables physiques
non accessibles à la mesure ou dont la mesure requiert des capteurs relativement coûteux
par rapport à l'objectif de l'application envisagée. C'est le cas de certaines concentrations
de produits chimiques et aussi des courants rotoriques des machines électriques dont la
mesure est nécessaire pour leur commande et leur supervision.
Lorsqu’il n’est pas possible de mesurer directement l’état, et ce pour des raisons
physiques ou financières, on a recours à un système dynamique auxiliaire, appelé
observateur, qui est chargé d’estimer l’état du système.
94
Chapitre IV Observateurs non-linéaires
x ( t ) = Ax ( t ) + F ( y , u ) (4.1)
y ( t ) = Cx ( t )
95
Chapitre IV Observateurs non-linéaires
xˆ ( t ) = A x ( t ) + F ( y ( t ), u ( t )) + L ( y ( t ) − C xˆ ( t )) (4.2)
e ( t ) = ( A − LC ) e ( t )
I.2.1. Définitions :
Le système est dit observable en x si I(x)={x} et il est observable si I(x) = {x} pour
~
tout x. Ainsi le système est observable si pour tous les états initiaux x et x , il existe une
~
entrée admissible u qui distingue x et x , c’est à dire telle que y(t ) ≠ ~
y (t ) pour au moins
un temps t ≥ 0.
96
Chapitre IV Observateurs non-linéaires
L’état x est localement observable, si pour tout > 0 et pour tout voisinage U (x)
il existe > 0 plus petit que et un voisinage V (x) contenu dans U, tel que pour tout :
~
x ∈V , il existe une entrée [0,η] / t → u(t) qui distingue x et ~x , i.e. telle que :
y( ) ≠ ~y ( ).
Le système linéaire :
dx
= Ax + Bu , y = Cx
dt
Est observable si, et seulement si, le rang de la matrice d’observabilité O est égal à
n = dim(x).
C
CA
rang (O ) = =n
...
n −1
CA
Pour abréger, on dit souvent que la paire (A, C) est observable lorsque le rang de la
matrice d’observabilité O est plein.
97
Chapitre IV Observateurs non-linéaires
x ( t ) = f ( x ( t ), u ( t ))
Soit le système non linéaire : (4.3)
y ( t ) = h ( x ( t ), u ( t ))
est le vecteur de sortie, et les conditions initiales sont données par x0 = x(0) .
z ( t ) = Φ ( z ( t ), u ( t ), y ( t ))
(4.4)
xˆ ( t ) = Ψ ( z ( t ), u ( t ), y ( t ))
- xˆ ( t 0 ) = x ( t 0 ) ⇒ xˆ ( t ) = x ( t ), ∀ t ≥ t 0 ,
98
Chapitre IV Observateurs non-linéaires
Les approches envisageables dans les systèmes non linéaires sont soit une extension
des algorithmes linéaires, soit des algorithmes non linéaires spécifiques. Dans le premier
cas, l’extension est basée sur une linéarisation du modèle autour d’un point de
fonctionnement. Pour le cas d’algorithmes non linéaires spécifiques, les nombreuses
recherches menées sur ce sujet ont donné naissance à de nombreux algorithmes
d’observation [28].
3. Observateurs à grand gain : Ce type d’observateurs est utilisé en général pour les
systèmes lipschitziens. Son nom est dû au fait que le gain de l’observateur choisi est
suffisamment grand pour compenser la non-linéarité du système.
99
Chapitre IV Observateurs non-linéaires
Il est possible d’étendre quelques techniques linéaires à des systèmes non linéaires,
en calculant le gain de l’observateur à partir du modèle linéarisé autour d’un point de
fonctionnement.
Ce type d’observateur ne peut être utilisé que lorsque l’on est sûr que l’état restera
au voisinage de l’état d’équilibre [52].
La classe des systèmes concernés par cette nouvelle conception consiste à ajouter à
l’observateur de Luenberger un deuxième retour de sortie linéaire à l’intérieur de la partie
non linéaire du système. Cette approche concerne les systèmes décrits par les équations
suivantes :
x ( t ) = Ax ( t ) + G ( H . x ) + ( y , u )
(4.5)
y = Cx
xˆ = A xˆ + G ( H xˆ + K ( y − C xˆ )) + ( y , u ) + L ( y − C xˆ ) (4.6)
Des conditions de convergence de l’observateur (4.6) ont été établies dans [28]. Ce
résultat concerne les systèmes pour lesquels la fonction non linéaire satisfait les
hypothèses suivantes :
100
Chapitre IV Observateurs non-linéaires
i (v ) − i (w )
≥ 0, ∀v ≠ w ∈ R.
v − w
e = ( A − LC ) e + G ( ( v ) − ( w ))
Où : (4.7)
v = H .x et w = H . xˆ + K ( y − C xˆ ).
( A − LC ) T P + P ( A − LC ) + v.I n PG + ( H − KC ) T D
≤0 ,
G T P + D ( H − KC ) 0
Soit satisfaite.
x ( t ) = f ( x ( t ), u ( t )) + Lw ( t )
(4.8)
y ( t ) = h ( x ( t ), u ( t )) + v ( t )
101
Chapitre IV Observateurs non-linéaires
w (t) ∈ R r
et v ( t ) ∈ R p
, sont deux bruits blancs gaussiens d’espérance
nulle, de covariances respectives Q et R, non corrélés.
Le filtre de Kalman étendu est une méthode assez répandue pour estimer l’état d’un
système non linéaire. Sa conception, repose sur la généralisation du filtre de Kalman
linéaire, en utilisant des techniques classiques de linéarisation de la dynamique non
linéaire. Ainsi les matrices A et C sont elles remplacées par les matrices jacobiennes f et h,
évaluées en xˆ ( t ) .
On note :
∂f
A (t) = ( xˆ ( t ), u ( t ))
∂x
∂h
C (t) = ( xˆ ( t ), u ( t )) (4.9)
∂x
xˆ ( t ) = f ( xˆ ( t ), u ( t )) + K ( t ) × ( y ( t ) − h ( xˆ ( t ), u ( t )))
− 1
K (t) = P (t)C T
R (4.10)
−1
P ( t ) = A ( t ) P ( t ) + P ( t ) A T ( t ) − P ( t ) C T
(t ) R ( t ) C ( t ) P ( t ) + LQL T
(4.11)
102
Chapitre IV Observateurs non-linéaires
x ( t ) = f ( x ( t ), u ( t ))
(4.12)
y ( t ) = h ( x ( t ))
z ( t ) = T ( x ( t )) (4.13)
−1
Ce qui revient à : x (t) = T ( z ( t )) (4.14)
z ( t ) = Az ( t ) + g ( y , u )
(4.15)
y ( t ) = Cz ( t )
Étape 2 : Comme la non linéarité g ne dépend que des entrées et des mesures, qui
sont connues, par injection on linéarise simplement l’erreur d’estimation. En effet, on
choisit comme observateur :
zˆ ( t ) = A zˆ ( t ) + g ( y ( t ), u ( t )) + K ( y ( t ) − C zˆ ( t )) (4.16)
e ( t ) = ( A − KC ) e ( t ) (4.17)
Étape 4 : On est donc ramené à un problème linéaire, que l’on sait résoudre, par
une technique de placement de pôles. Le gain K est choisi de telle sorte que la matrice
(A – KC) soit stable.
103
Chapitre IV Observateurs non-linéaires
−1
xˆ ( t ) = T ( zˆ ) (4.18)
La difficulté majeure de cette méthode de linéarisation exacte réside dans
l’obtention du difféomorphisme T (4.13).
Les techniques dites "à grand gain" peuvent être appliquées sans transformation du
système initial : dans ce cas, la conception de l’observateur se fait directement à partir de la
structure du système.
x ( t ) = A x ( t ) + f ( x ( t ), u ( t ))
(4.19)
y (t ) = C x (t )
La dynamique de l’état comporte une partie linéaire non commandée et une partie
non linéaire commandée, vérifiant en général la condition de Lipschitz par rapport à x (au
moins localement) :
xˆ = A xˆ + f ( xˆ , u ) + L ( y − C xˆ ) (4.21)
104
Chapitre IV Observateurs non-linéaires
e = ( A − LC ) e ( t ) + f ( x ( t ), u ( t )) − f ( xˆ ( t ), u ( t )) (4.22)
Si le gain L vérifie :
min( q )
K < (4.23)
2 max( p )
T
(A - LC) P + P (A - LC) = - Q (4.24)
Remarque :
La méthode de Thau n’est pas constructive [17], elle ne donne aucune indication sur
le choix d’un gain satisfaisant la condition (4.23).
105
Chapitre IV Observateurs non-linéaires
La plus part des processus réels sont non linéaires, on propose des modèles dont les
paramètres peuvent varier au cours du temps et avec l'état.
La différence avec les systèmes linéaires est que les matrices Ai, Bi et Ci
deviennent des fonctions du temps et/ou de l'état et généralement continues (ou continues
par morceaux). Les équations définissant ces modèles, dans le cas d'un retard simple (c'est-
à-dire: r =1) sur l'état et sur l'entrée, se présentent de la manière suivante :
x (t ) = A (t , x t ) x (t ) + B (t , x t )u (t ) + A (t , x t ) x (t − ) + B (t , x t )u (t − )
y (t ) = C (t , x t ) x (t ),
(1.25)
V. Conclusion :
Les observateurs étendus sont des méthodes répandues pour estimer l’état d’un
système non linéaire. Leur conception, reposent sur la généralisation des observateurs
linéaires, en utilisant des techniques classiques de linéarisation de la dynamique non
linéaire comme par exemple filtre de Kalman étendu et Luenberger étendu.
106
Chapitre IV Observateurs non-linéaires
107
Chapitre V commande en réseau application sur moteur DC
Chapitre V
I.1. Introduction
Cette ouverture des réseaux peut rendre difficile la maîtrise des flux que véhicule le
réseau industriel qui doit garantir une qualité de service (QdS) requise par l’application (QdC :
Qualité de Contrôle).
108
Chapitre V commande en réseau application sur moteur DC
La commande est encapsulée dans une trame puis elle est envoyée vers l’actionneur à
travers un réseau de communication. L’actionneur récupère la trame puis en extrait la
consigne. Celle-ci est maintenue constante durant chaque intervalle d’échantillonnage par un
bloqueur d’ordre Zéro (BOZ) et est appliquée à l’entrée de commande du système commandé.
Les informations d’état du système générées par les capteurs sont elles aussi encapsulées pour
être transmises sur le réseau jusqu’au contrôleur.
Les retards dans les SCR ne sont donc pas dus uniquement au support de transmission
mais correspondent à une somme de retards provenant des temps de conversion (A/D et D/A),
des temps de traitement de la commande, des temps de codage/décodage des messages, du
temps d’acheminement des messages à travers le réseau et des temps de mesure et de
réalisation de l’action.
La contrainte pour pouvoir contrôler un procédé est que la somme de ces temps doit
être inférieure à la période d’échantillonnage du système. Si certains temps sont facilement
maîtrisables comme le temps de traitement de la commande, ou considérés comme
109
Chapitre V commande en réseau application sur moteur DC
négligeable, il est plus difficile d’estimer les retards induits par le réseau. Ces retards peuvent
varier considérablement en fonction de l’évolution de la charge du réseau (problème de
congestion) et même être infinis dans le cas d’une perte de trames.
Un réseau peut être caractérisé par deux éléments de première importance lors de sa
modélisation :
110
Chapitre V commande en réseau application sur moteur DC
I.3.1. Présentation
Les applications à ces niveaux sont parfois réparties sur de grandes distances ; les
aspects de synchronisme et de temps réel ne sont pas une contrainte. Pour les réseaux
industriels, le quasi-standard est le référentiel Ethernet à 10 Mbit/s avec l’utilisation du
standard TCP/IP, pour les couches de routage et de transport. Ces couches sont nécessaires du
fait de la quantité de données à échanger et de l’étendue des réseaux supportés.
Pour les liaisons de grandes distances, nous trouvons, au niveau des couches basses des
réseaux, des liaisons spécialisés LS (Transfix…) ou RNIS.
Soit les trois différents modèles de protocoles illustrant les principaux réseaux de
communication utilisés dans l'industrie.
Le bus de terrain CAN (Controller Area Network), fréquemment utilise dans l'industrie
(notamment automobile avec le VAN, qui est un exemple spécifique de CAN utilise pour les
111
Chapitre V commande en réseau application sur moteur DC
contrôleurs électroniques des véhicules motorises,), est caractérise par l'utilisation de niveaux
de priorité pour l'émission des messages (229 niveaux). Son débit est au maximum de 1Mbit/s,
pour une longueur de 40m.
Il existe aussi des bus de terrain industriels professionnels comme Profibus et Modbus
qui ce caractérisent par la précision et rapidité avec des distances moyennes sont utilisés pour
communiquer avec des automates programmables industriels.
Les réseaux locaux (souvent dénommés LAN : Local Area Networks) sont largement
répandus et habituellement utilisés pour connecter des ordinateurs dans les réseaux prives.
Leur taille est limitée, rendant le retard connu et borné, et ils ont un taux de transmission
élevé. Ethernet constitue un exemple courant de réseau LAN en bus, sans contrôleur
centralisé.
L'accès au bus peut être effectue par protocole à détection de porteuse (CSMA - Carrier
Sense Multiple Access) avec détection de collision (CD : Collision Détection). Les
caractéristiques du retard dépendent fortement de la charge du réseau, rendant Ethernet très
difficile à modéliser.
Les réseaux grande distance ou WAN (Wide Area Network) sont caractérises par la
présence d'un ou plusieurs routeurs et de commutateurs, qui gèrent et distribuent l'information.
La principale influence du routeur est d'induire une file d'attente ou sont stockes les
messages avant d'être retransmis. Lorsque les flux d'entrée dans le routeur sont trop
importants, celui-ci devient encombre et des paquets d'information sont perdus. L'émetteur
peut-être informe des paquets reçus par l'envoi des acquittements (acknowledgements) par le
destinataire.
112
Chapitre V commande en réseau application sur moteur DC
Un flux de données passant par un routeur est présent dans la Figure. V.2. Un modèle
moyen déterministe du retard est disponible pour différents types de réseaux, notamment pour
ceux à file d'attente [30].
Un protocole de transfert (PT) est mis en œuvre pour permettre aux systèmes connectes
d'émettre et de recevoir à travers le réseau. Des exemples de tels protocoles sont fournis par :
Les deux premiers sont construits sur des réseaux à protocoles Internet (IP) alors que
NCP et SPX sont utilises sur des réseaux IPX (Inter network Pocket Exchange). A noter que
TCP et SPX sont des protocoles sécurises.
113
Chapitre V commande en réseau application sur moteur DC
Bien que le TCP ne soit pas un protocole de premier choix pour la synthèse d'une
commande par réseau (faible qualité de service, notée QdS), il fournit un exemple intéressant
de protocole sécurise.
I.4.5. TCP/IP
Toute application industrielle basée sur TCP/IP bénéficie directement de tous les
principes et logiciels Internet. Un navigateur peut être utilisé en supervision de procédé dans
l’usine, mais aussi sur Internet/Intranet si la liaison IP existe.
114
Chapitre V commande en réseau application sur moteur DC
II. Problématiques :
115
Chapitre V commande en réseau application sur moteur DC
L’utilisation d’un réseau distant dans la commande est le moyen de réaliser sans danger
des tâches en environnement dangereux (déminage, dépollution…), ou encore de faire
collaborer plusieurs applications d’un système informatique distribué.
L’énergie et la puissance de calcul embarquées dans l’esclave est très limite à raison du
cout et difficulté de réalisation. Par exemple, dans une situation de déminage, les robots
esclaves sont souvent face à la destruction et on essaie de minimiser leur coût unitaire. Dans
ce cas on ne peut pas lui confier toutes les tâches de commande (planification et suivi de
trajectoire, gestion capteurs, observation) et le rôle du réseau se réduit à véhiculer les
consignes à atteindre.
116
Chapitre V commande en réseau application sur moteur DC
Le système global devra assurer une performance de rapidité garantie malgré les effets
de retard du réseau, en assurant une propriété de stabilisation exponentielle e − t , > 0 .
retard h1
retard h2
Figure. V.3 : Modélisation de la boucle de transmission
Il est seulement possible de supposer que les bornes maximales des retards, aller et
retour him sont connues.
117
Chapitre V commande en réseau application sur moteur DC
Le Protocol UDP n'exclut pas que des paquets soient perdus. Dans notre situation, les
paquets contiennent des échantillons (sorties ou commandes). TCP impose d'attendre qu'un
paquet perdu soit réémis et réceptionne, avant de pouvoir utiliser les paquets suivants, ce qui
diminuerait les performances, En termes de retards, UDP sera donc moins pénalisant que TCP.
Il faudra par contre que, sous UDP, les paquets soient émis dans l'ordre chronologique
par le maitre et par l’esclave, ce qui implique d'associer à chaque paquet son instant d'émission
(par ajout d'une datation, ou timestamp).
La solution technique proposée est basée sur l'utilisation de balises GPS équipant les
deux parties et leur donnant accès à la même horloge (c'est la seule fonctionnalité du GPS qui
sera utilisée ici).
Ce dispositif permet la mesure du retard, même non symétrique, avec lequel le paquet
arrive à destination. Par ce biais, les retards Maitre vers Esclave h1(t) et Esclave vers Maitre
h2(t) sont séparément reconstruits (et pas seulement le retard de boucle RTT).
D'autre part, l'implantation finale des algorithmes est effectuée en temps discret et les
effets de l’échantillonnage doivent donc être pris en compte. L’échantillonnage peut être
assimilée à un retard additionnel variable dans le temps [29], de valeur (t ) = t − tk
pour :
118
Chapitre V commande en réseau application sur moteur DC
1
signal original
signal echantillonné 3s
0.8
signal echantillonné 10s
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
-1
0 5 10 15 20 25 30 35 40 45
t
50
Ainsi, la seule hypothèse que l'on aura à émettre consiste à borner la période
d'échantillonnage par une valeur T que nous supposerons connue, ce qui signifie que la
relation 0 ≤ t k +1 − t k ≤ T est satisfaite.
119
Chapitre V commande en réseau application sur moteur DC
Le système global doit converger à une vitesse minimale garantie quelle que soit la
valeur des retards de transmission.
La commande sera utilisée seulement une fois qu'elle aura été reçue par l'esclave, c'est-
à-dire encore h1(t) secondes plus tard. Finalement, l'esclave reçoit une commande calculée à
partir d'une donnée retardée de :
h1 ( t ) + h 2 ( t ) .
Note :
Même si le cas linéaire est simple, il est extrêmement rare de pouvoir mettre
concrètement en œuvre des conditions nécessaires et suffisantes de stabilité adaptées à la
synthèse de lois de commande dans le cas retardé.
L'analyse passe ainsi par des conditions seulement suffisantes, ce qui explique le grand
nombre de publications proposant des conditions techniques sous-optimales mais calculables
au moyen de LMI [29].
120
Chapitre V commande en réseau application sur moteur DC
Le principe de ce système est basé sur un calcule d’une loi de commande dans la partie
maitre et la transmettre à l’esclave pour exécution. La transmission ne se fait pas
instantanément, les lignes de communication introduisent un délai h1 (t ) . De même,
1 (t ) = h1 (t ) + 1 (t ) (5.3)
Réseau
System a commandé
Consigne Contrôleur τ1 h1
+Bo(t)
Capteur + Bo(t)
Observateur τ2
h2
Maitre Esclave
x ( t ) = Ax ( t ) + Bu ( t − 1 ( t ))
(5.4)
y ( t ) = Cx ( t )
121
Chapitre V commande en réseau application sur moteur DC
n’existe pas de période T telle que chaque temps d’échantillonnage vérifiant t k = kT , nous
supposons que la différence entre deux instants d'échantillonnage consécutifs est bornée par
une valeur connue T, telque :
0 < t − t ≤ T
k + 1 k (5.5)
mi = hmi + T Avec i =1 ou 2
Tel que la relation :
0 < (t) ≤
m
i i (5.6)
i ( t ) ≤ 1 (5.7)
122
Chapitre V commande en réseau application sur moteur DC
Remarque :
Chacune des entités Maître et Esclave dispose d’une antenne GPS leur permettant de
disposer d’une horloge commune. Chaque paquet envoyée contient l’instant et la commande
envoyée.
Dans le maitre, un observateur a été implanté ayant pour objectif de calculer une
estimation de l'état x(t) de l'esclave au temps présent, estimation notée : xˆ ( t )
u (t ) = K xˆ ( t ) (5.8)
123
Chapitre V commande en réseau application sur moteur DC
Le kieme paquet envoyé par le maitre contient la valeur de la commande u ( t1, k ) qu'il
vient juste, de calculer, ainsi que la date t 1 , k de ce calcul. Ce paquet traverse alors le réseau
connue.
que pour la commande : un paquet de sortie contient la valeur de la variable y (t ' ) ainsi que
2, k
124
Chapitre V commande en réseau application sur moteur DC
Le maitre reçoit ce paquet à l'instant t 2 , k ' lorsque le paquet atteint le maitre, alors la
valeur du retard est calculer comme : t 2 , k ' − t 2 , k ' grâce à l'horloge GPS.
,
Le modèle présent dans le maitre est calculé en temps continu t, mais sa commande est
échantillonnée. Notons t1 , k le k ieme instant d'échantillonnage de cette commande.
'
L'indexation k correspond à l'instant d'échantillonnage t ' le plus récent qu'a reçu le
2 ,k
maitre à l’instant t.
g ( t k − h ( t k )) = g ( t − h ( t k ) − ( t − t k )),
= g ( t − ( t ))),
125
Chapitre V commande en réseau application sur moteur DC
Les instants t 1 , k et t ' , présents dans les équations de l'observateur, sont connus
2 ,k
grâce à la synchronisation des horloges des deux entités. Et pour t1, k , au buffer qui permet
de prévoir le retard.
1 ( t ) ≤ h 1m + T . et 2 ( t ) ≤ h 2m + T . (5.12)
Une condition de stabilité exponentielle basée sur une adaptation de [29] est donné
par :
- Soit le système linéaire à retards i ( t ) variables et bornés :
x ( t ) = A 0 x ( t ) + A 1 x ( t − 1 ( t )) + Bu ( t − 2 ( t ))
x ( t ) = ( t ), t ∈ [ − h , 0 ], (5.13)
i ( t )) = i + i ( t ),
avec i ( t ) ≤ i et i ( t ) ≤ 1 , ∀ i ∈ {1 , 2 }
126
Chapitre V commande en réseau application sur moteur DC
Les retards possèdent en général une borne inférieure i (t) −i >0 non nulle (cas
appelé : non Small Delays).
Le théorème suivant utilise une représentation polytopique dépendant des bornes des
retards. Les coefficients qui vont définir les polytopes sont :
( − ( +
11 = e 1 1 )
, 12 = e 1 1 )
( − ( +
21 = e 2 2 )
, 22 = e 2 2 )
(5.14)
x ( t ) = A 0 x ( t ) + A1 x ( t − 1 ( t )) + BKx ( t − 2 ( t ))
x ( t ) = ( t ), t ∈ [ − h , 0 ], (5.15)
Pour un gain matriciel K donné, le système (5.13) est α stable s'il existe des
matrices (n × n) :
T
0 0 0 T
0
Ψ 1 P − Y 1 T P T − Y 2T mu 1 P T
mu P
BK
1 i A1 2 j BK 1 i A1
2
* 2j
− S1 0 0 0
* < 0
* * − S2 0 0
* * − mu 1 R 1 a 0
*
* * * − mu 2 R 2 a (5.16)
127
Chapitre V commande en réseau application sur moteur DC
P 0 Z Z k2
P = 1 Z k = Tk 1 , Yk = [Yk 1 Yk 2 ]
P2 P3 , Z k2 Z k 3
T
0 In 0 In
Ψ1 = P T
+
A + .I P
0
A + . I n − In 0 n − In
2 Y
T
k Y k S k 0
+ ∑ + + k Z k + ,
k =1 0 0 0 R + 2 m .u . R k
a
k k k
Démonstration :
− ( t − t
x (t , t 0 , ≤ e 0 )
x ( t ) = ( A0 + . I ) x ( t ) + e 1 ( t ) A1 . x ( t − 1 ( t )) + e 2 ( t ) BK . x ( t − 2 ( t ))
(5.18)
128
Chapitre V commande en réseau application sur moteur DC
Ainsi, si l’on détermine des conditions de stabilité asymptotique du système défini par
l’équation [5.18], cela signifie que la solution xα(t) converge vers 0 et, par conséquent, est
bornée par une valeur βα. Ainsi, on a :
x (t ) ≤ (5.19)
D’après la définition de xα , cela prouve que le système initial est α stable puisque
l’inégalité suivante est vérifiée :
−
x ( t ) ≤ e t
e 1 ( t ) , e 2 ( t ) sachant que les retards sont bornés et d’après la définition des paramètres
ij (5.14) les gains linéaires e 1 ( t ) , e 2 ( t ) vérifient les inégalités :
e ( i − i )
≤ e i (t)
≤ e ( i + i )
, ∀ t ≥ 0 , ∀ i = 1,2 (5.20)
Cela signifie aussi qu’il existe des fonctions scalaires positives mais aussi inconnues :
∀ t ≥ 0 , ∀ ( i , j ) ∈ {1 , 2 } ij ( t ) ≥ 0 , ∑ ij ( t ) = 1
2 2
i, j=1
(5.21)
•
x (t ) = ∑
2
i, j =1
ij ( t ) { ( A 0 + I ) x ( t )
+ 1i A1 x ( t − 1 ( t )) + 2 j BKx ( t − 2 ( t )) } (5.22)
129
Chapitre V commande en réseau application sur moteur DC
t − hi
x ( t − h i ) − x ( t − h i + 1 ( t )) = ∫ x ( s ) ds (5.23)
t − hi + 1 ( t )
0 I
E x ( t ) = ∑ ij ( t )
2
− I
x (t )
A0 + I
i , j =1
0
+
x (t − h1 ) −
1i 1
A
( t − h1
∫t − h 1 −1(t)
z ( s ) ds )
+
0
x (t − h2 ) − ( t − h2
∫t − h z ( s ) ds )
− 2 (t ) (5.24)
2 j BK 2
V (t ) = V n (t ) + V a (t ) (5.25)
∑ ∫∫
t
x T ( s ) R i x ( s ) dsd
2
V n ( t ) = x ( t ) EP x ( t ) +
T
i=1 t+
− hi
∑ ∫ ∫
2 t
+ i = 1
x T
( s ) S i x ( s ) ds
t +
t − h i
130
Chapitre V commande en réseau application sur moteur DC
k
∑ ∫ ∫
t
x ( s ) dsd
2
V a (t ) = k =1
x T ( s ) R ia (5.26)
t+ − hk
− k
Si les conditions LMI (5.17) sont satisfaites, la majoration suivante est vérifiée :
T 2
Vn ( t ) ≤ ∑ i , j = 1 ij ( t ) Γ nij ( t ) +
∑
2
( t ) ∆ ij
k ( t ) (5.27)
k =1
0 0
− −
T T T T
0 P Y 1
P BK
Y 2
2 1 i A 1 2 j
Γ n
ij
= * − S 1 0
* * − S 2
0 0
0
= − 2
2 2
0 ∑ 2 k Rk a
k = 1
0 t − h1
∫
−T
∆ ij1 ( t ) = − 2 z (t) P T
A z ( s ) ds
t − h1 −
1i 1 1 (t)
0 t− h2
∫
−T
∆ ij2 ( t ) = − 2 z (t) P T
z ( s ) ds
t− h2 −
j BK 2 (t)
2
131
Chapitre V commande en réseau application sur moteur DC
En utilisant la majoration classique qui, pour toute matrice symétrique définie positive
R de dimension n et pour tous vecteurs a et b de Rn, assure que la relation :
2 a T b ≤ a T Ra + b T R 1 b est satisfaite, on obtient :
T
0 0
∆ ij1 ( t ) ≤ 1 z −T
(t ) P T
A R
−1
1a A P z (t )
1i 1 1i 1
t − h
+ ∫
1 T
z ( s ) R 1 a z ( s ) ds
t − h 1 − 1 ( t )
T
0 0
∆ ij
2 (t ) ≤ 2 z −T
(t ) P T
R
−1
2 a P z (t )
2 j BK 2 j BK
t− h
+ ∫
2 T
z (s)R 2 a z ( s ) ds
t− h 2 − 2 (t )
1 ( t ) = col { ( t ), z ( t ), z ( t ) }
La combinaison des deux dernières inégalités avec [5.24], [5.26] permet d’écrire :
V a ( t ) ≤ ∑ ij ( t ) { ( t ) Γ ij 1 ( t ) }
2 T
i, j=1 1 (5.28)
On remarque que si les conditions (5.16) et (5.17) sont satisfaites, Vα(t) est une somme
convexe de termes négatifs. Ceci permet de conclure que le système (5.15) est
asymptotiquement stable et, par conséquent que le système initial (5.13) est exponentiellement
stable avec un degré de convergence α.
132
Chapitre V commande en réseau application sur moteur DC
Sachant que la paire (A, C) est observable, il est possible de déterminer un gain L tel
que l’état xˆ ( t ) de l’observateur (5.10) converge exponentiellement vers l’état non retardé x(t)
du système. Le théorème qui suit permet d’obtenir ce gain L de façon à ce que la convergence
soit α_exponentielle et ce, malgré le retard variable δ2 sur la sortie.
e ( t ) = Ae ( t ) − LCe ( t − 2 ( t )) (1.29)
Théorème (5.2) : On considère l’observateur (1.11) et on suppose que, pour des réels
positifs α et il existe des (n× n) matrices :
Et une matrice W de dimensions appropriées telles que les conditions LMI (1.30) et
(1.31) soient satisfaites pour j = 1,2 :
2 j .W .C − Y 1 W .C
Ψ . .W .C − Y 2 2 j
2 2 j 2 .W . C
* − S 0 < 0
(5.30)
* * − 2 .R a
R Y1 Y2
* Z1 Z 2 ≥ 0
(5.31)
* * Z 3
133
Chapitre V commande en réseau application sur moteur DC
Ψ 211 Ψ2
12
Ψ2 = 22
,
* Ψ2
Ψ211 = P T ( A0 + I n ) + ( A0 + I n )T P + S + ( 2 + 2 ) Z1 + Y1 + Y1T ,
Ψ212 = P1 − P + P T ( A0 + I n )T + ( 2 + 2 ) Z 2 + Y2 ,
(5.32)
Ψ2 22
= − ( P + P ) + ( 2 + 2 )( Z 3 + R ) + 2 2 Ra .
T
Démonstration :
La preuve vient du Théorème (5.1) appliqué au cas d'un retard simple et pour le choix :
P = P 2 = P3 , et X = P 2 L .
Remarque :
Dans le théorème précédent, le retard δ2 (t) (et plus particulièrement les bornes δ2 et
μ2) sont des paramètres imposés par le réseau et l'échantillonnage. L’objectif consiste donc à
jouer sur le paramètre ε pour trouver la plus grande valeur de α rendant les LMI faisables.
u ( t ) = K x ( t ).
134
Chapitre V commande en réseau application sur moteur DC
Considérons que l'observateur est « parfait » et délivre à tout moment l'état du système
x ( t ) = Ax ( t ) + BK xˆ ( t − 1 ( t )). (5.34)
Théorème (5.3) : supposons que, pour des réels positifs α et ε, il existe des ( n × n )
matrices symétriques définies positives : P 1 , S , R , R a .
i BW − Y1T BW
T 2 1i
Ψ3
1i BW − Y 2 1i BW
* −S 0 <0
* * − 1Ra
(5.35)
R Y1 Y2
* Z1 Z2 ≥ 0
* * Z 3
(5.36)
Ou les constantes β2j (j =1,2) sont défini dans (5.14) et la matrice symétrique Ψ3 est
définie par les blocs :
135
Chapitre V commande en réseau application sur moteur DC
Ψ 311 = ( A 0 + I n ) P + P T ( A 0 + I n ) T + S + ( 1 + 1 ) Z 1 + Y1 + Y1T ,
Ψ 312 = P1 − P + P T ( A 0 + I n ) T + ( 1 + 1 ) Z 2 + Y 2 ,
Ψ 3 22 = − ( P + P T ) + ( 1 + 1 )( Z 3 + R ) + 2 1 R a . (5.37)
Alors, pour tout retard δ1(t), la stabilité exponentielle (à taux α) du système (5.17) est
assurée grâce au gain :
− 1
K = W P . (5.38)
Démonstration
est : - ( P 2 + P 2 ).
T
− 1
On définit alors : P = P 2 et, pour toute matrice :
V ∈ {P 1 ,Y i∈ {1 ,2 } , S , R , R a , Z k ∈ {1 ,2 ,3 } }
Remarque :
136
Chapitre V commande en réseau application sur moteur DC
e (t ) = x (t ) − xˆ (t )
e ( t ) = x ( t ) − xˆ ( t )
D’où on peut écrire :
e ( t ) = Ax ( t ) + Bu ( t − 1 ( t ))) − A xˆ ( t ) − Bu ( t − 1 ( t )))
− L [ y ( t − 2 ( t )) − yˆ ( t − 2 ( t ))]
Ce qui donne :
x ( t ) = Ax ( t ) + BK xˆ ( t − 1 ( t ))
e ( t ) = Ae ( t ) − LCe ( t − 2 ( t )) (5.40)
x ( t ) = A . x ( t ) + B . K . x ( t − 1 ( t )) − B . K .e ( t − 1 ( t ))
e ( t ) = A .e ( t ) − L .C .e ( t − 2 ( t )) (5.41)
137
Chapitre V commande en réseau application sur moteur DC
e ( t ) = A 0 e ( t ) + A 1 e ( t − 1 ( t )) + A 2 e ( t − 2 ( t )) (5.42)
Avec :
A 0 BK − BK 0 0
A0 = = =
A 0 0 0 .
, A 1 , A 2
0 LC
– une fois ces deux gains calculés, on vérifie la stabilité exponentielle globale du
système maître-esclave avec le taux α garanti.
138
Chapitre V commande en réseau application sur moteur DC
Cette étude est finalement illustrée par un exemple de système télé-opéré (moteur a
courant continu).
Le logiciel MATLAB (MATrix LABoratory) est conçu pour travailler dans le domaine
du calcul matriciel numérique. Tous les objets définis dans MATLAB sont donc au moyen de
vecteurs et de matrices/tableaux de nombres [48].
Le logiciel intègre des boites à outils (toolbox) dédiés à des domaines techniques
spécifiques, comme :
Simulink est une boite à outils de MATLAB permettant au moyen d’une interface
graphique évoluée la construction rapide et la simulation de schémas fonctionnels complexes,
contenant des systèmes linéaires et non linéaires.
MATLAB est un outil pour l’ingénieur, pour traiter des problèmes pratiques. Avec sa
boite à outils Simulink.
140
Chapitre V commande en réseau application sur moteur DC
Les deux logiciels restent complètement lies l’un à l’autre, Simulink n’étant
hiérarchiquement qu’une boite à outils de MATLAB.
141
Chapitre V commande en réseau application sur moteur DC
On admettra que le système est parfaitement linéaire, en faisant les hypothèses pour
simplifier l’exemple et se concentrer sur l’essentiel de cette étude :
négligeable.
V.4. Modélisation
di
Ua = R a .i a + L a . a
+ K e . L’équation électrique
dt
T em = K T .i a
Couple électromécanique
d
J . = T em − R f . L’équation mécanique
dt de l’arbre du moteur
(1)
Ua = R a .I a + L a .s .I a + K e .Ω
T em = K T .I a
J . s .Ω = T em − R f .Ω
Après mise en équations, les équations du moteur à courant continu montrent que la
FEM est à contre réaction, le signal d’entrée (la tension d’induit u a (t ) a la forme d’un saut
142
Chapitre V commande en réseau application sur moteur DC
unité qui s’effectue dés l’instant zéro, son amplitude étant 1, que l’on visualise en plus de la
vitesse angulaire (t ) et le courant ia(t).
Les paramètres des deux Fonctions de transfert du moteur simulé sur Simulink :
numGa1 = 1/Ra;
denGa1 = [ La/Ra , 1 ] ;
numGa2 = 1/ Rf ;
denGa2 = [ J/Rf , 1 ] ;
143
Chapitre V commande en réseau application sur moteur DC
Ua ia
W
numGa 1(s) Tem numGa 2(s) Scope
KT
Step denGa 1(s) denGa 2(s)
comparateur Induit constante Transfer Fcn 1
de couple
Scope 1
KE
constante
de FEM
144
Chapitre V commande en réseau application sur moteur DC
La vitesse x1 = ( t ) :
1.4
1.2
0.8
0.6
0.4
0.2
0
0 50 100 150 200 250 300 350
0.5
-0.5
0 50 100 150 200 250 300 350
d Ω R K
= − f
.Ω + T
.i a
dt J J
di a K R Ua
= − e
.Ω − a
.i a + (2)
dt L a L a L a
x1(t ) = Ω et x2 (t ) = ia et la sortie : y ( t ) = Ω = x 1 ( t )
R a = R , K = K e = K T , L a = l, R f = b
145
Chapitre V commande en réseau application sur moteur DC
d Ω d x1 (t )
=
dt ia dt x2 (t )
x ( t ) = Ax ( t ) + Bu ( t )
y ( t ) = Cx ( t )
b K 0
− J + T
A = J
B = 1 C = [1 0 ]
− K e
−
R
, l ,
l l
V.5. Simulation
146
Chapitre V commande en réseau application sur moteur DC
h1 =0.37
h2=h1
psi=2.4
alpha=0.8
2.3367 -1.1473
P=
-1.1473 2.0513
- 5.1069
Q = e003
-1.0135
- 1.9920
W =
- 0.4960
- 1.3388
L=
- 0.9906
147
Chapitre V commande en réseau application sur moteur DC
Le théorème 5.3 appliqué à (5.34) garantit que la loi de commande par retour d’état
stabilisera exponentiellement le système vers sa consigne, avec un taux α = 0.8 (obtenu pour :
ε= 2.40), pour le gain K suivant :
Après exécution du programme (Annexe 2 ) dans Matlab les résultats d’exécution sont
donnés par :
mu1=0.11;
mu2=mu1;
h1 =0.37;
h2=h1;
psi=2.4;
alpha=0.8;
W = [- 19918 - 17961]
k = [- 0.2545 - 0.4650]
148
Chapitre V commande en réseau application sur moteur DC
Enfin le théorème 2.1 garantit la stabilité du système complet (5.42) avec les gains L et
K calculés ci-dessus. Le taux garanti est finalement de α = 0.8.
La simulation sur figures montre des résultats obtenus avec des retards de la forme :
i ( t ) = i ( t ) + 0 . 3 i sin( i t ) .
149
Chapitre V commande en réseau application sur moteur DC
x1 & ^x1
U e1
Subtract
x2 & ^x2
Step
S-Function
moteur y
X1 et X2
réels
^y
^x1et ^x2
observ observées
S-Function 1
e2
Subtract 1
1.1
0.9
0.8
0.7
0.6
0.5
e c h e lo n U a (t ).
150
Chapitre V commande en réseau application sur moteur DC
Le courant ia(t) atteint sa valeur maximale puis il diminue jusqu'à une valeur
stable .
1 .4
1 .2
0 .8
0 .6
0 .4
0 .2
x 1 m o te u r
x 2 m o te u r
0
0 200 400 600 800 1000 1200
1.4
1.2
0.8
0.6
0.4
0.2 x 1 és tim es
x 2 és tim es
0
0 200 400 600 800 1000 1200
151
Chapitre V commande en réseau application sur moteur DC
La convergence de l’état X1 estimé vers l’état réel X1 est représentée comme indique la
figure suivante en remarque une convergence rapide ce qui donne une erreur nulle :
0.95
0.9
0.85
X1 Réel
0.8 x1éstimé
step u(t)
0.75
0 50 100 150
Figure 5.15. La convergence de l’état estimé X 1(t) vers l’état réel X1(t)
La convergence de l’état X2 estimé vers l’état réel X2 est représentée comme indique la
figure suivante où en remarque la convergence de l’état estimé du courant vers l’état réel :
1.1
0.9
0.8
0.7
0.6
x2 reel
0.5 x2 estime
step u(t)
Figure 5.16. La convergence de l’état estimé X 2(t) vers l’état réel X2(t)
152
Chapitre V commande en réseau application sur moteur DC
L’erreur du système e1(t) de : l’état réel X1(t) - l’état estimé X1(t) , elle converge vers
zéro comme montre la figure suivante ce qui donne une meilleure précision :
-3
x 10
2
-2
-4
-6
-8
erreureE 1.
-10
-12
0 200 400 600 800 1000 1200
L’erreur du système e2(t) de l’état réel X2(t) - l’état estimé X2(t) converge aussi vers
zéro comme montre la figure suivante :
0.005
-0.005
-0.01
-0.015
-0.02
-0.025
erreure e2.
-0.03
0 200 400 600 800 1000 1200
153
Chapitre V commande en réseau application sur moteur DC
0 .9
0 .8
0 .7
0 .6
0 .5
0 .4
0 .3
0 .2
0 .1
Y s o rt ie e s t im e e .
0
0 200 400 600 800 1000 1200
0 .9
0 .8
0 .7
0 .6
0 .5
0 .4
0 .3
0 .2
0 .1
Y s o rt ie re e l
0
0 200 400 600 800 1000 1200
154
Chapitre V commande en réseau application sur moteur DC
x1 & ^x1
e1
U Subtract
x2 & ^x2
Step
S -Function
moteur y
delay 2 X1 et X 2
réels
InOut1
1
delay 1
InOut1
1
^y
^x1et ^x2
observ
observées
S -Function 1
e2
Subtract 1
Figure 5.21 Simulation du système avec retard introduit dans la commande observée
155
Chapitre V commande en réseau application sur moteur DC
0 .9
0 .8
0 .7
0 .6
0 .5
0 .4
0 .3
0 .2
x 1 ré e l
x 1 é s t im é
0 .1
s t e p U a (t )
0
0 100 200 300 400 500 600
1.2
0.8
0.6
0.4
0.2 x 2 ré e l
x 2 e s t im e
s t e p U a (t )
0
0 200 400 600 800 1000 1200
L’état de vitesse X1 estime converge toujours vers l’état réel X1 et la même chose pour
les états du courant X2 estimé qui converge aussi vers l’état réel même avec l’introduction du
retard dans la commande avec état observé qui provoque quelques perturbations puis en
remarque bien que le signale se stabilise parfaitement et rapidement.
156
Chapitre V commande en réseau application sur moteur DC
L’erreur e1 (t ) = x1 (t ) − xˆ1 (t ) :
0 .0 5
-0 .0 5
-0 .1
-0 .1 5
-0 .2
-0 .2 5
e rre u re e 1
-0 .3
0 200 400 600 800 1000 1200
L’erreur e2 (t ) = x2 (t ) − xˆ2 (t )
0 .1
0 .0 5
-0 .0 5
-0 .1
-0 .1 5
-0 .2
-0 .2 5
-0 .3 e rre u re e 2
-0 .3 5
0 200 400 600 800 1000 1200
157
Chapitre V commande en réseau application sur moteur DC
Avec : p = [− 202 − 1 . 23 ]
K = [ − 0 . 0534 − 1 . 5235 ]
− 1 . 1720
L = 1.0e + 003 *
3 . 8354
3 5
Y s o rt ie e s t im e e
3 0
2 5
2 0
1 5
1 0
0
0 2 0 0 4 0 0 6 0 0 8 0 0 1 0 0 0 1 2 0 0
158
Chapitre V commande en réseau application sur moteur DC
3 5
Y s o rt ie re e l
3 0
2 5
2 0
1 5
1 0
0
0 2 0 0 4 0 0 6 0 0 8 0 0 1 0 0 0 1 2 0 0
0 .0 1 5
e rre u re e 1
0 .0 1
0 .0 0 5
-0 .0 0 5
-0 .0 1
-0 .0 1 5
-0 .0 2
-0 .0 2 5
0 2 0 0 4 0 0 6 0 0 8 0 0 1 0 0 0 1 2 0 0
0 .0 8
e rre u re e 2
0 .0 6
0 .0 4
0 .0 2
-0 .0 2
-0 .0 4
-0 .0 6
-0 .0 8
-0 .1
-0 .1 2
0 2 0 0 4 0 0 6 0 0 8 0 0 1 0 0 0 1 2 0 0
Les deux erreurs covergent vers zéro avec un temps d’instabilité du système plus long
ce qui donne un système moins précis.
159
Chapitre V commande en réseau application sur moteur DC
La convergence de l’état de la vitesse éstimée vers l’état réel avec un temps de monté
plus long le système donc devient moins rapide.
35
x1reel
x1 estime
30 step u(t)
25
20
15
10
0
0 100 200 300 400 500 600
30
x2 reel
x2 estime
25
step u(t)
20
15
10
0
0 200 400 600 800 1000 1200
La même chose dans la convergence des états estimés vers les états réels qui
converge après un temps de réponse plus long ce qui prouve que les gains calculés par
des LMI (pour la commande du système par un état observé avec l’application de l’α
stabilité) sont plus fiables et stabilisent le système avec une rapidité et précision.
160
Chapitre V commande en réseau application sur moteur DC
Conclusion Générale
Le principe de la commande des processus est généralement par retour d’état, les
seules grandeurs accessibles du système sont les variables d’entrée et de sortie, par les quelles
on peut reconstruire l’état du modèle choisi.
Nous avons présenté le contexte des systèmes à retards. Leur apparition fréquente dans
la modélisation des phénomènes physiques.
161
Chapitre V commande en réseau application sur moteur DC
L’observateur situé au niveau du Maître pour des raisons de coût ou de danger, produit
une estimation de l’état du processus esclave alors qu’il ne reçoit de ce dernier qu’une
information échantillonnée.
Le control à distance est une solution pour pouvoir réaliser sans danger des taches en
temps réel dans un environnement difficile et qui nécessite un échantillonnage des sorties
capteur et actionneurs et des commandes générées. Où la technologie « Internet » apparaît
comme un moyen de communication fiable et peu couteux.
Dans la partie simulation les résultats théoriques présentés dans ce mémoire trouvent
finalement la justification. La simulation est réalisée sur un moteur électrique DC (à courant
continu) à excitation séparée à travers un réseau Internet, tout en rendant le system presque
linéaire pour facilité l’étude et la simulation de l’esclave.
La visualisation des graphes dans les premières secondes on peut remarquer l’effet de
convergence de l’observateur vers l’état réel. Après ce transitoire, le suivi de consigne est de
meilleure qualité. Et après introduction du retard dans le modèle à commandé le système doit
se stabilise exponentiellement avec un degré de convergence α avec l’erreur d’estimation
e2 (t ) = x2 (t ) − xˆ2 (t ) qui tende vers zéros
162
Chapitre V commande en réseau application sur moteur DC
même avec celles calculés par la technique de placement de pole utilisée à titre de
comparaison.
La difficulté rencontrée est celle d’écrire les matrices des LMI en posant les termes des
matrices pour vérifier les conditions de faisabilité des LMI dans Matlab.
L’utilisation des Toolboxs dans le logiciel Matlab donne une très grande flexibilité
dans un environnement de travail riche d’outils nécessaires a la simulation dans le domaine
automatique, le calcule et la visualisation des résultats.
Ces techniques de calcule des LMI et de simulation pour calculer théoriquement ces
gains et les introduisant dans la commande par retour d’état observé ouvre une grande vision
pour les recherches dans les domaines d’étude des systèmes complexes , couteux et même
pour les systèmes non linéaires complexes qui porte de linéarité lourde. A fin de garantir une
stabilité exponentielle avec degré de convergence α garantie du système complet.
Espérons dans l’avenir que modeste travail de recherche sera considérer comme une
plate forme pour d’autres recherches et pour pouvoir trouver de solutions aux problèmes de
commande des systèmes linéaires et non linéaires avec retard.
163
Annexe I Les inégalités matricielles linéaires (LMI)
La notion de convexité tient dans ce mémoire une place importante étant donnée les
orientations choisies. En effet, les problèmes d’analyse et de synthèse dont il est question sont
formulés, lorsque cela est possible, en termes d’optimisation convexe [1]. La convexité d’un
problème d’optimisation a un double avantage :
La convexité est une notion à la fois ensembliste et fonctionnelle, voici les définitions dans
chacun des cas.
∀ ∈ [0 1] ⊂ R , ∀ ( x1 , x 2 ) ∈ 2 , x1 + (1 − ) x 2 ∈ (A.1.1)
∀ ∈[0 1] ⊂ R, ∀(x1, x2 )∈ 2, f (x1 + (1− )x2 ) ≤ f (x1) + (1− ) f (x2 ) (A.1.2)
164
Les inégalités matricielles linéaires (LMI)
I.2.1. Introduction :
L’inégalité matricielle linéaire (LMI) et les techniques de LMI sont apparues comme outils
puissants de conception dans des domaines allant de l'ingénierie au système de contrôle,
d'identification et de conception structurale. Trois facteurs rendent les techniques des LMI attirante:
3- Alors que la plupart des problèmes avec de multiples contraintes en termes d'équations
matricielle, ils restent souvent traitable dans le cadre LMI. Cela rend la conception LMI
basée sur une alternative intéressante aux méthodes "d'analyse" classiques.
Dans Matlab Le LMI Control Toolbox met en œuvre l'état d’art des « LMI
solvers ». Ces solveurs sont nettement plus rapides que les algorithmes d'optimisation convexe
classique, il faut garder à l'esprit que la complexité du calcule des LMI demeure supérieur à celui de
résoudre, par exemple, une équation de Riccati.
L'histoire des LMI dans l'analyse des systèmes dynamiques remonte à plus de 100
ans. L'histoire commence vers 1890, quand Lyapunov publia son ouvrage fondamental :
165
Les inégalités matricielles linéaires (LMI)
Est stable (i.e. toutes les trajectoires convergent ver zéro) si et seulement si il existe une
matrice définie positive P telle que :
A T
P + PA < 0 (A.1.4)
L'exigence P > 0, ATP + PA < 0 est ce que nous appelons aujourd'hui une inégalité de
Lyapunov sur P, qui est une forme particulière de LMI. Lyapunov a également montré que cette
LMI pourrait être explicitement résolus.
En effet, on peut choisir n'importe quelle QT= Q > 0, puis résoudre les équations linéaires :
AT×P + P×A = - Q pour la matrice P, qui est garantie d'être définie positif si le système (1.3) est
stable.
En résumé, la première LMI utilisée pour analyser la stabilité d'un système dynamique est
l'inégalité de Lyapunov (1.4), qui peuvent être résolues de manière analytique (par résolution d'un
ensemble d'équations linéaires).
L'idée de base de la méthode LMI est de formuler un problème (par exemple, la stabilité en
boucle fermée avec ou sans contraintes supplémentaires) comme un problème d'optimisation avec
un objectif linéaire et des contraintes LMI.
∑
n
F ( x) = F0 + i=1
xiFi ≥ 0
(A.1.5)
166
Les inégalités matricielles linéaires (LMI)
N × N
Ou les matrices symétriques F i = F ∈ R , i = 0 ; ::; n sont données.
T
La notation suivante F > 0(ou F ≥ 0) signifie que la matrice F est définie positive
(respectivement F semi-définie positive). La contrainte F(x) ≥ 0 est une contrainte convexe en x,
c'est-à-dire que l'ensemble {x ∈ R n
: F(x) ≥ 0 } est convexe. On dit que la LMI (A.1.5) est faisable
si et seulement s'il existe au moins un vecteur x ∈ R n teleque l'inégalité matricielle (A.1.5) est
vérifiée.
Définition 1. Une LMI est une inégalité matricielle de la forme
∑
n
F (x) = i=1
xiFi + B > 0 (1.5)
167
Les inégalités matricielles linéaires (LMI)
La technique que nous avons utilisée pour résoudre nos problèmes est celle exploitée par le
logiciel Matlab (plus précisément la fonction : feasp)
La solution exhibée par Matlab est une solution particulière de la LMI à résoudre.
Q ( x ) = Q ( x ) T , R ( x ) = R ( x ) T , et S (x) ,
Q( x ) S ( x)
<0
S ( x)
T
R( x)
R ( x ) > 0,
−1
Q ( x ) − S ( x ) R ( x ) S ( x ) > 0
T
168
Annexe 2 Programmes Matlab
1- % calcule du gain K de la commande :
% paramètres moteur;
% parametres de reglages
mu1=0.11;
mu2=mu1;
h1 =0.37;
h2=h1;
psi=2.4;
alpha=0.8;
% beta2j (j=1,2)
beta11=exp(alpha*(h2-mu2));
beta12=exp(alpha*(h2+mu2));
% commandabilité
Comd=ctrb(A,B)
% Numbre d'etat incommandable
uncomd=length(A)-rank(Comd)
% initialisation LMI
setlmis([]);
P1 = lmivar(1,[2 1]);
P = lmivar(1,[2 1]);
S = lmivar(1,[2 1]);
Y1 = lmivar(1,[2 1]);
Y2 = lmivar(1,[2 1]);
Z1 = lmivar(1,[2 1]);
Z2 = lmivar(1,[2 1]);
Z3 = lmivar(1,[2 1]);
R = lmivar(1,[2 1]);
Ra = lmivar(1,[2 1]);
W= lmivar(2,[1 2]);
phi3= lmivar(1,[2 1]);
M12 = lmivar(2,[4 2]);
M13 = lmivar(2,[4 2]);
169
Annexe 2 Programmes Matlab
% 1iere lmi
lmiterm([phi3 1 1 P],(A+alpha*I2),1,'s');
lmiterm([phi3 1 1 S],1,1);
lmiterm([phi3 1 1 Z1],h1,1);
lmiterm([phi3 1 1 Y1],1,1);
lmiterm([phi3 1 1 -Y1],1,1);
lmiterm([phi3 1 2 P1],1,1);
lmiterm([phi3 1 2 P],-1,1);
lmiterm([phi3 1 2 -P],psi,(A+alpha*I2)');
lmiterm([phi3 1 2 Z2],h1,1);
lmiterm([phi3 1 2 Y2],1,1);
%%%%%%%%%%%%%%%%%%
lmiterm([phi3 2 2 P],-psi,1);
lmiterm([phi3 2 2 -P],-psi,1);
lmiterm([phi3 2 2 Z3],h1,1);
lmiterm([phi3 2 2 R],h1,1);
lmiterm([phi3 2 2 Ra],2*mu1,1);
% 1ieme LMI
M12= [beta11*B*W-Y1', psi*beta11*B*W-Y2']
M13= mu1*[beta11*B*W ,psi*beta11*B*W]
lmiterm([12 1 1 0],phi3);
lmiterm([12 1 2 0],M12);
lmiterm([12 1 3 0],M13);
lmiterm([12 2 2 0],-S); % LMI #1: -S
lmiterm([12 3 3 0],-mu1*Ra); % LMI #1: -mu2*Ra
% 2ieme LMI
lmiterm([-13 1 1 R],1,1);
lmiterm([-13 1 2 Y1],1,1);
lmiterm([-13 1 3 Y2],1,1);
lmiterm([-13 2 2 Z1],1,1);
lmiterm([-13 2 3 Z2],1,1);
lmiterm([-13 3 3 Z3],1,1);
%faisabilité
obs = getlmis;
170
Annexe 2 Programmes Matlab
[Tmin,Xfeas]=feasp(obs);
Tmin
p=dec2mat(obs,Xfeas,P)
p1=dec2mat(obs,Xfeas,P1);
valeur_propre_P= eig(p)';
valeur_propre_P1= eig(p1)';
evals = evallmi(obs,Xfeas);
[lhs1,rhs1] = showlmi(evals,1);
[lhs2,rhs2] = showlmi(evals,2);
eig(lhs1-rhs1)'
eig(lhs2-rhs2);
W =1.0e+004*[-1.9918 -1.7961]
K=W*inv(p)
%%
% parametres moteur
% parametres de reglages
mu1=0.11;
mu2=mu1;
h1 =0.37;
h2=h1;
psi=2.4;
alpha=0.8;
171
Annexe 2 Programmes Matlab
% beta2j (j=1,2)
beta21=exp(alpha*(h2-mu2))
beta22=exp(alpha*(h2+mu2))
Observ = obsv(A,C);
% initialisation LMI
setlmis([]);
P1 = lmivar(1,[2 1]);
P = lmivar(1,[2 1]);
S = lmivar(1,[2 1]);
Y1 = lmivar(1,[2 1]);
Y2 = lmivar(1,[2 1]);
Z1 = lmivar(1,[2 1]);
Z2 = lmivar(1,[2 1]);
Z3 = lmivar(1,[2 1]);
R = lmivar(1,[2 1]);
Ra = lmivar(1,[2 1]);
W= lmivar(2,[2 1]);
phi2= lmivar(1,[2 1]);
M12 = lmivar(2,[4 2]);
M13 = lmivar(2,[4 2]);
% 1iere lmi
lmiterm([phi2 1 1 -P],1,(A+alpha*I2),'s');
lmiterm([phi2 1 1 S],1,1);
lmiterm([phi2 1 1 Z1],h2,1);
lmiterm([phi2 1 1 Y1],1,1);
lmiterm([phi2 1 1 -Y1],1,1);
lmiterm([phi2 1 2 P1],1,1);
lmiterm([phi2 1 2 P],-1,1);
lmiterm([phi2 1 2 -P],psi,(A+alpha*I2)');
lmiterm([phi2 1 2 Z2],h2,1);
172
Annexe 2 Programmes Matlab
lmiterm([phi2 1 2 Y2],1,1);
lmiterm([phi2 2 2 P],-psi,1);
lmiterm([phi2 2 2 -P],-psi,1);
lmiterm([phi2 2 2 Z3],h2,1);
lmiterm([phi2 2 2 R],h2,1);
lmiterm([phi2 2 2 Ra],2*mu2,1);
%%%%%
M12=[beta21*W*C-Y1;psi*beta21*W*C-Y2];
M13=mu2*beta21*[W*C;psi*W*C];
% 1ieme LMI
lmiterm([12 1 1 0],phi2);
lmiterm([12 1 2 0],M12);
lmiterm([12 1 3 0],M13);
lmiterm([12 2 2 0],-S); % LMI #1: -S
lmiterm([12 3 3 0],-mu2*Ra); % LMI #1: -mu2*Ra
% 2ieme LMI
lmiterm([-13 1 1 R],1,1); % LMI #2: R
lmiterm([-13 1 2 Y1],1,1); % LMI #2: Z1
lmiterm([-13 1 3 Y2],1,1);
lmiterm([-13 2 2 Z1],1,1);
lmiterm([-13 2 3 Z2],1,1);
lmiterm([-13 3 3 Z3],1,1);
% faisabilité
obs = getlmis;
[Tmin,Xfeas]=feasp(obs);
Tmin
p=dec2mat(obs,Xfeas,P)
p1=dec2mat(obs,Xfeas,P1);
valeur_propre_P= eig(p)';
valeur_propre_P1= eig(p1)';
% evaluation
evals = evallmi(obs,Xfeas);
[lhs1,rhs1] = showlmi(evals,1);
[lhs2,rhs2] = showlmi(evals,2);
Q=eig(lhs1-rhs1)
eig(lhs2-rhs2);
W =[-1.992;-0.496];
L=inv(p')*W
mat2=[R Y1 Y2;
Y1' Z1 Z2;
Y2' Z2' Z3]
%%%
3 - La fonction « moteur » qui représente le système moteur DC, exécutée dans Simulink :
%paramètres moteur
K1= -0.2545;K2=-0.4650;
b1= 0; b2= 1/l;
switch flag,
case 0
[sys,x0,str,ts]=mdlInitializeSizes;
case 1
sys=mdlDerivatives(t,x,u,Rm,l,k,j,b,K1,K2,b1,b2);
case 3
sys=mdlOutputs(t,x,u,Rm,l,k,j,b,K1,K2,b1,b2);
case { 2, 4, 9 }
sys = [];
otherwise
error(['Unhandled flag = ',num2str(flag)]);
end
function [sys,x0,str,ts]=mdlInitializeSizes
sizes = simsizes;
sizes.NumContStates = 2;
sizes.NumDiscStates = 0;
sizes.NumOutputs = 2;
sizes.NumInputs = 4;
sizes.DirFeedthrough = 1;
sizes.NumSampleTimes = 1;
sys = simsizes(sizes);
x0 = [0 0];
str = [];
ts = [0];
174
Annexe 2 Programmes Matlab
function sys=mdlDerivatives(t,x,u,Rm,l,k,j,b,K1,K2,b1,b2)
sys = [-b/j*x(1)+k/j*x(2)+b1*(u(1)-K1*u(3));
-k/l*x(1)-Rm/l*x(2)+b2*(u(2)-K2*u(4))];
function sys=mdlOutputs(t,x,u,Rm,l,k,j,b,K1,K2,b1,b2)
sys = [x(1);x(2)];
%%%%%%%%
%paramètres moteur
L1 =-1.3388;L2=-0.9906
K1= -0.2545;K2=-0.4650;
switch flag,
case 0
[sys,x0,str,ts]=mdlInitializeSizes;
case 1
sys=mdlDerivatives(t,x,u,Rm,l,k,j,b,b1,b2,K1,K2,L1,L2,C1,C2);
case 3
sys=mdlOutputs(t,x,u,Rm,l,k,j,b,b1,b2,K1,K2,L1,L2,C1,C2);
case { 2, 4, 9 }
sys = [];
otherwise
error(['Unhandled flag = ',num2str(flag)]);
end
function [sys,x0,str,ts]=mdlInitializeSizes
sizes = simsizes;
sizes.NumContStates = 2;
sizes.NumDiscStates = 0;
sizes.NumOutputs = 2;
sizes.NumInputs = 6;
sizes.DirFeedthrough = 1;
sizes.NumSampleTimes = 1;
sys = simsizes(sizes);
175
Annexe 2 Programmes Matlab
x0 = [0 0];
str = [];
ts = [0];
function sys=mdlDerivatives(t,x,u,Rm,l,k,j,b,b1,b2,K1,K2,L1,L2,C1,C2)
sys = [-b/j*x(1)+k/j*x(2)+b1*(u(1)-K1*u(3))-L1*C1*(u(5)-u(3));
-k/l*x(1)-Rm/l*x(2)+b2*(u(2)-K2*u(4))-L2*C2*(u(6)-u(4))];
function sys=mdlOutputs(t,x,u,Rm,l,k,j,b,b1,b2,K1,K2,L1,L2,C1,C2)
sys = [x(1); x(2)];
%%%%%
%paramètres moteur
p = [-202 -1.23];
K=place(A,B,p)
L=place(A',C',p)
176
Liste des figures
177
Liste des figures
Figure V.11 : model de simulation du système sans retard sur Simulink ……………………………150
(Matlab Version 7.6 R2008a)
Figure V.12 échelon Ua(t) …………………………………………………………………………...150
Figure 5.13 Les deux sorties réels du moteur : X1(t) et X2(t)………………………………………..151
Figure 5.14 Les deux sorties estimées X1(t) et X2(t)………………………………………………...151
Figure 5.15. La convergence de l’état estimé X1(t) vers l’état réel X1(t) …………………………...152
Figure 5.16. La convergence de l’état estimé X2(t) vers l’état réel X2(t) …………………………...152
Figure 5.17 : L’erreur de convergence e1(t) : X1(t) réel - X1(t) estimé ……………………………..153
Figure 5.18 : L’erreur de convergence e2(t) : X2(t) réel – X2(t) estimé …………………………….153
Figure 5.19. La sortie estimée Y(t) …………………………………………………………………..154
Figure 5.20. La sortie réel Y(t) ………………………………………………………………………154
Figure 5.21 Simulation du système avec retard introduit dans la commande observée…………….155
Figure 5.22 : x1(t) réel et x1(t) estimée ……………………………………………………………...156
Figure 5.23. x2(t) réel et x2(t) estimée……………………………………………………………….156
Figure 5.25 : l’erreur e 1 ( t ) = x 1 ( t ) − xˆ 1 ( t ) .………………………………………………………….157
178
Bibliographie
Références bibliographiques
179
Bibliographie
180
Bibliographie
[45] : Lmi control toolbox For Use with MATLAB (Pascal Gahinet, Arkadi Nemirovski,Alan
J. laub ,Mahmoud Chilali)
[46] : Conception d’observateurs non linéaires par approche multi-modèle : (Abdelkader
AKHENAK -2004).
[47] : Robust exponential stabilization for systems with time-varying delays A. Seuret.
[49] : Introduction au logiciel MATLAB « Michel ETIQUE, mars 2002, Yverdon-les- Bains
version 1.2 ».
[50] : Observation par : Frédéric Rotella ( Ecole Nationale d’Ingénieurs de Tarbes).
[51] : Laurent PRALY : Introduction à la théorie de La commande adaptative des systèmes
« linéaires Mars 1997 ».
[52] D.G. Luenberger. An introduction to observers. IEEE Transactions on
Automatic Control, vol. 16, no. 6, pages 596–602, 1971.
181
Résumé
Mots clés :