Vous êtes sur la page 1sur 164

Systèmes multivariables

Coordination de systèmes et de dispositifs dynamiques distribués

Dr Denis GILLET
Maître d’enseignement et de recherche

Destiné aux étudiants des sections de


la Faculté des Sciences et Techniques de l’Ingénieur (STI)

Lausanne
Septembre 2011
Les ouvrages signalés dans ce cours sont disponibles pour la plupart
à la Bibliothèque centrale de l’EPFL dans la collection d’enseignement COEN.
Pour tout renseignement complémentaire vous pouvez utiliser, à la Bibliothèque,
les terminaux placés à proximité de la COEN.
Vous pouvez également vous adresser à l’accueil /Information à l’entrée de la Bibliothèque centrale,
Tél.: 021 693 2156, info.bc@epfl.ch

Toute représentation ou reproduction intégrale ou partielle, faite sans le consentement de l'auteur est
illicite. © D. Gillet, 1995-2011
CHAPITRE 1
INTRODUCTION

1.1 Système
Les différents éléments d’interaction entre un système dynamique et son
environnement sont représentés dans la figure qui suit.

• Actions • Réactions
• Causes • Effets
• Données • Résultats
• Moyens disponibles pour • Comportements qui doivent
influencer le système être observés ou modifiés
• Influences de l’environnement • Influences du système sur
sur le système l’enviromment
• Excitation • Réponse du système
• Grandeurs pouvant être • Observations
manipulées

Système

Objet de notre
Entrées attention Sorties

Collection d’objets
en interaction

Influence de l’environnement
sur le système
Perturbations

• aléatoires
• négligées
• non-souhaitées
Environnement • inconues

Figure 1-1 Définitions des grandeurs relatives à un système.

1
SYSTÈME

Rappelons que les entrées d'un processus représentent des causes qui
agissent sur lui de l'extérieur, par exemple des perturbations, ou encore des
excitations standard (impulsion, saut, rampe et sinusoïde). Les sorties regroupent
les effets qui en découlent et désignent le plus souvent des signaux mesurés. Les
systèmes considérés dans ce chapitre sont essentiellement multivariables, c'est-à-
dire qu'ils possèdent r entrées u 1, u 2, …, u r mutuellement couplées avec p sorties
y 1, y 2, …, y p ; ainsi, l'entrée u i , par exemple, peut influencer simultanément
plusieurs sorties. Une description schématique d'un tel système apparaît dans la
figure 1-2.
u1 y1

u2 y2
# #
ur yp

Figure 1-2 Système multivariable à r entrées et p sorties

Soulignons que les entrées influencent l'état dans lequel se trouve un


système et que les sorties dépendent de cet état. Bien que cette notion d’état puisse
être perçue intuitivement, elle sera abordée formellement dans la prochaine
section. Soulignons finalement que seule une représentation mathématique des
interactions mentionnées est à même de fournir les informations nécessaires à
l’ingénieur pour ses tâches d’analyse et de synthèse de systèmes de commande.
Une telle représentation constitue le modèle du système.
Les lois physiques régissant les systèmes étant presque exclusivement de
nature différentielle, les modèles les plus souvent rencontrés sont analogiques. Il
arrive néanmoins que le comportement du processus ne présente un intérêt qu'à
des instants discrets, plutôt qu'à tout instant. C’est le cas des modèles mis en jeu
dans des algorithmes d'automatisation et de simulation implantés sur ordinateur.
Un caractère intrinsèquement discret surgit également lors de mesures
échantillonnées ou d'un fonctionnement pulsé.

2
INTRODUCTION

1.2 Linéarité
Toute fonction numérique f définie sur un espace vectoriel V est appelée
fonctionnelle.

Une fonctionnelle f est dite additive, si f(x + y) = f(x) + f(y) . Elle est
dite homogène, si pour tout x ∈ V et pour tout nombre α on a f(αx) = αf(x) .

Une fonctionnelle additive et homogène s’appelle une fonctionnelle


linéaire. A titre d’exemple, citons l’intégrale définie qui est une fonctionnelle
linéaire:

I(x) = ∫ x(t) dt
a

La combinaison des deux conditions mentionnées est connue sous le nom


de principe de superposition, soit:

f(αx + βy) = αf(x) + βf(y)

Un système dynamique dont le modèle y(t) = f [ u(t), t ] satisfait le


principe de superposition est dit linéaire.

Si l’excitation u 1(t) produit la réponse y 1(t) , c’est-à-dire si


y 1(t) = f [ u 1(t), t ] et si l’excitation u 2(t) produit la réponse y 2(t) , c’est-à-dire si
y 2(t) = f [ u 2(t), t ] , alors la somme pondérée des excitations conduit à une
réponse qui est la somme pondérée des réponses obtenues séparément:

f [ αu 1(t) + βu 2(t), t ] = αf [ u 1(t), t ] + βf [ u 2(t), t ] = αy 1(t) + βy 2(t)

On dit que le système se comporte de manière proportionnelle.

Le système régit par l’équation y· (t) = au(t) est linéaire (figure 1-3). En
effet:

a [ αu 1(t) + βu 2(t) ] = αau 1(t) + βau 2(t) = αy 1(t) + βy 2(t)

Le système régit par l’équation y· (t) = au(t) + b n’est pas linéaire, malgré
le fait que cette fonction soit décrite par une droite (figure 1-4).

3
LINÉARITÉ

En effet:

a [ αu 1(t) + βu 2(t) ] + b = αau 1(t) + βau 2(t) + b est différent de:

αy 1(t) + βy 2(t) = α [ au 1(t) + b ] + β [ au 2(t) + b ]


= αau 1(t) + βau 2(t) + 2b

y· (t)

u(t)
Figure 1-3 Modèle linéaire

y· (t)

u(t)
Figure 1-4 Modèle non linéaire

Un retard pur y(t) = u(t – τ) constitue également un système linéaire.


Ceci se montre aisément.
Soit u 1 → y 1 , c’est-à-dire que y 1(t) = u 1(t – τ) , et soit u 2 → y 2 , c’est-à-
dire que y 2(t) = u 2(t – τ) . Avec u → y et pour u(t) = αu 1(t) + βu 2(t) , nous
avons:

y(t) = u(t – τ) = αu 1(t – τ) + βu 2(t – τ) = αy 1(t) + βy 2(t)

4
INTRODUCTION

1.3 Signaux
Les signaux d’entrée, de sortie ou de perturbation d’un système sont soit
de nature analogique, soit de nature discrète.

Soit t ∈ R une variable relative représentant le temps écoulé depuis le dé-


but de l’observation, un signal analogique réel est une fonction continue
s: { t: t ∈ R } → R de cette variable. C’est-à-dire qu’elle est définie pour tout
temps t.

Soit { t k : k ∈ Z } , un sous-ensemble de nombres réels appelés instants


d'échantillonnage. Un signal discret réel est une fonction w: { t k : k ∈ Z } → R .
Cette fonction n'est donc définie qu'aux instants d’échantillonnage, comme le
montre la figure 1-5. Occasionnellement, des signaux discrets complexes
w: { t k : k ∈ Z } → C seront considérés pour condenser des développements
mathématiques.

w(t k)


• • • • • • t
t–3 t–2 t –1 t 0 t1 t
2 t 3t 4

Figure 1-5 Signal discret

Dans le présent cours, les instants d’échantillonnage sont uniformément


espacés:

t k = kh

Nous dirons que l'échantillonnage est périodique ou régulier; le nombre


réel h > 0 est appelé période d’échantillonnage et f e = 1 ⁄ h est la fréquence
d'échantillonnage. Lorsqu'il n'y a aucun risque d'ambiguïté, la notation w(k) est
employée au lieu de w(kh) pour représenter un signal discret; cette écriture
simplifiée ne provoque bien sûr aucune perte de généralité.

5
EXEMPLES QUALITATIFS

1.4 Exemples qualitatifs


1.4.1 Entraînement électrique

L’entraînement est un système SISO (single input, single output) et linéai-


re. Son entrée est la tension d’alimentation u et sa sortie la position angulaire θ .
Sa dynamique peut être décrite par une fonction de transfert (FT).

u A ω 1 θ
-------------- ---
1 + sτ s

Perturbations de charge
Figure 1-6 Schéma fonctionnel d’un entraînement électrique

Une solution classique exploitée en pratique pour asservir la position


angulaire de cet entraînement consiste à introduire un régulateur de type PD
(proportionnel, dérivé).

θc u θ
A
PD ---------------------
- s(1 + sτ)

Figure 1-7 Réglage classique d’un entraînement électrique

Une autre solution consiste à introduire deux régulateurs arrangés en


cascade. Cette méthode présente de meilleures caractéristiques en réjection des
perturbations et permet de limiter la vitesse. Elle nécessite un capteur de vitesse et
de position.
θc ωc u ω θ
PD PI A 1
-------------- ---
- - 1 + sτ s

Figure 1-8 Réglage en cascade d’un entraînement électrique

Une boucle interne de limitation du courant est parfois introduite.

6
INTRODUCTION

Les solutions décrites peuvent être trop coûteuses lorsqu’il s’agit de


produire des entraînements en grande série. Il est en effet judicieux dans ce cas de
limiter le nombre de capteurs. Ces solutions ne sont de plus pas capables de
prendre en compte explicitement des contraintes, comme la saturation de
l’actionneur des gouvernes d’un satellite ou de minimiser l’effort de réglage
(énergie utilisée).

Les méthodes d’état que nous étudierons dans ce cours permettent


d’observer des grandeurs non mesurables ou trop coûteuses à mesurer. Il sera
également possible avec une commande d’état optimale de régler un système
MIMO (multiple inputs, multiple outputs) en tenant compte par exemple des
saturations de la commande. Toutefois, l’application de ces techniques nécessite
une bonne connaissance du modèle, ce qui n’est pas le cas par exemple lors du
dimensionnement d’un régulateur standard de type PID par la méthode de Ziegler-
Nichols.

Forme générale de représentation


Conception “représentation d’état”
du régulateur d’état

θc
Régulateur u θ
ωc Entraînement
d’état
ic une mesure!


ω̂
Observateur
θ̂
Conception
Nombre de contre-réactions de l’observateur
= ordre du système d’état
Figure 1-9 Structure d’une commande d’état

Avec une telle structure de commande, et comme nous le verrons par la


suite, toute la dynamique du système est contrôlée.

7
EXEMPLES QUALITATIFS

1.4.2 Pendule inversé


Le pendule inversé est un système académique simple permettant
d’étudier la dynamique de systèmes instables plus complexes, comme celle d’une
fusée sur son pas de tir ou d’un bateau. Il s’agit d’un système SIMO (single input,
multiple outputs).

Grue à portique
θ
x
F
entrée

x
θ
Plate-forme
de lancement
de fusée
charge

Figure 1-10 Pendules

Dans un tel système, l’entrée influence dynamiquement deux sorties


simultanément (et les sorties s’influencent).

Pendule θ
F
x

Figure 1-11 Interdépendance des entrée-sorties d’un pendule

Une description par fonction de transfert n’est plus possible dans ce cas,
ce qui conduit à la recherche d’une forme de représentation plus général. Nous
verrons qu’une représentation d’état est bien adaptée. Les solutions classiques de
commande ne permettent pas non plus de régler deux grandeurs à la fois. Nous
verrons que l’introduction d’une commande d’état est appropriée.

8
INTRODUCTION

xc θ
vc Régulateur u
θc Pendule x
d’état
ωc

ω̂
θ̂
v̂ Observateur

Figure 1-12 Structure de la commande d’état d’un pendule

1.4.3 Robot à deux degrés de liberté


Le robot représenté ci-dessous possède une rotule permettant à son bras
d’effectuer une rotation complète dans le plan sous l’action d’un couple T . Le bras
lui-même peut coulisser sur la rotule pour se déplacer radialement sou l’action
d’une force F . Les grandeurs T et F sont les entrées de ce système MIMO. Ses
sorties sont les positions angulaire θ et radiale r . Le déplacement du bras est
soumis à une limitation mécanique r max = r 0 .

m
r

θ
x
F
T
Figure 1-13 Schéma de principe d’un robot

F r

T θ

Figure 1-14 Interdépendance des entrée-sorties d’un robot

9
EXEMPLES QUALITATIFS

Une technique standard de commande d’un tel robot consiste à introduire


deux régulateurs qui travaillent séparément, parfois de façon antagoniste. Si la
force F est modifiée, cela modifie la longueur du bras, donc l’inertie. L’effet de T
s’en trouve donc perturbé.

-
rc PI F r
Robot θ
T
θc PD
-

Figure 1-15 Schéma fonctionnel de commande d’un robot

Nous verrons que grâce aux méthodes d’état, il sera possible de tenir
compte des interactions dans le régulateur, voire de découpler les comportements
de rotation et de translation. C’est-à-dire qu’une modification de r c ne provoque
pas de modification intempestive de θ (interaction compensée par le régulateur).

10
CHAPITRE 2
REPRÉSENTATION D’ÉTAT

2.1 Etat et variables d’état


2.1.1 Introduction

L’état d’un système rassemble toutes ses grandeurs internes susceptibles


d’évoluer au cours du temps, que ce soit sous l’effet d’un apport ou d’un transfert
de matière, d’énergie ou d’information. En d’autres termes, l’état correspond aux
niveaux des réservoirs de matière, d’énergie ou d’information du système. Le
comportement d’un système dynamique dépend évidemment fortement de l’état
dans lequel il se trouve. Le choix des grandeurs qui caractérisent l’état n’est pas
unique, le niveau d’une cuve de dimensions connues représente aussi bien son état
que le volume de cette cuve.

Dans le chapitre précédent, nous avons constaté que les relations


mathématiques qui décrivent les interactions dynamiques entre les entrées et les
sorties des systèmes analogiques, en particulier les systèmes électro-mécaniques,
ont la forme d’équations différentielles ordinaires. Dans le cas des systèmes
discrets, les relations considérées ont la forme d’équations aux différences
ordinaires. Les grandeurs qui apparaissent sous forme de dérivées dans les
équations différentielles, respectivement de différences dans les équations aux
différences, jouent un rôle primordial en théorie des systèmes; elles sont appelées
variables d’état. Elles portent l’information sur le passé du système; information
qui se résume à un état précis (contenu des réservoirs de matière, d’énergie et
d’information). Ces grandeurs importantes sont maintenant définies de façon
rigoureuse et une forme de représentation générale, commune à une large classe
de systèmes dynamiques, est également introduite. Elle est connue sous le nom de
modèle d’état. De nombreuses méthodes de simulation et d’analyse se fondent sur
cette forme de représentation du processus à étudier. Il en est de même pour des
techniques évoluées de conduite et d'estimation.

11
ETAT ET VARIABLES D’ÉTAT

2.1.2 Définitions
L'état d'un système à un instant donné quelconque est l'information
minimale qui permet, si les entrées sont connues à l'instant donné et pour les
valeurs du temps subséquentes, la détermination unique des sorties à l'instant
donné et pour les valeurs du temps subséquentes.

Ainsi, l'état d'un processus est l'information résumant parfaitement le pas-


sé du système puisqu'elle fixe toute évolution future si les entrées sont spécifiées.

Dans ce cours, on ne considère que les processus pour lesquels l'état à un


instant donné est un nombre fini n de nombres réels, qui sont tout naturellement
rassemblés dans un vecteur x de dimension n dit vecteur d'état:

x1
x2
x = (2.1)
#
xn

Les coordonnées x 1, x 2, …, x n du vecteur d'état sont les variables d'état.


L'entier n est par définition l'ordre du système.

Dans le but d'alléger les notations, les entrées u 1, u 2, …, u r sont elles


aussi regroupées dans un vecteur u de dimension r, dit vecteur d'entrée:

u1
u2
u = (2.2)
#
ur

Il en est de même des sorties y 1, y 2, …, y p , réunies dans un vecteur y de


dimension p appelé vecteur de sortie:

y1
y2
y = (2.3)
#
yp

12
REPRÉSENTATION D’ÉTAT

Le schéma fonctionnel de la figure 1-2 est alors couramment remplacé par


celui de la figure 2-1, où les lignes doubles symbolisent des quantités vectorielles.

u Etat: x y

Figure 2-1 Schéma fonctionnel d'un système multivariable.

Cette figure met en évidence le fait que le vecteur d'état est une grandeur
interne au système, souvent non mesurable et par conséquent différente de la
sortie. Ainsi, toute modélisation d'état fera intervenir non seulement les entrées et
sorties, quantités externes, mais également des variables d'état internes. C'est la
raison pour laquelle une telle représentation est dite interne.

2.1.3 Sélection des variables d’état


Pour extraire les variables qui permettent de décrire le système dans le for-
maliste d’état choisi, il faut tout d’abord inventorier l’ensemble des grandeurs qui
apparaissent sous forme dérivée dans les équations. Ces grandeurs sont notées γ i ,
i = 1, …, n γ . L’ordre maximum respectif de dérivation des γ i est noté ρ i . Cette
quantité définit le nombre de variables d’état qu’il faut introduire pour représenter
une grandeur γ i . Ces variables d’état sont, par ordres de dérivation successifs:

(0) (1) ( ρi – 1 )
γ i , γ i , …, γ i

k
(0) (k) d γi
où: γi = γ i et γi = pour k = 1, …, ρ i – 1
d tk
L’ordre du système (linéaire ou non linéaire) et égal à la somme des ρ i :

n = ∑ ρi
i=1

La sélection des entrées et des sorties est fonction de l’application


considérée. Les entrées sont les variables indépendantes, alors que les sorties sont
les grandeurs mesurées. Les grandeurs qui ne sont ni des variables d’état, ni des
entrées, ni des sorties, doivent être éliminées par substitution.

13
ETAT ET VARIABLES D’ÉTAT

Soit un système d’équations différentielles quelconques, comme par


exemple:

2
aw·· + sin z· = u 1

v· + cos z· = u 2
z· = αt

L’application de la méthode à cet exemple donne:

i grandeurs γ i ordres ρ i variables d’état

1 v 1 x1 = v
2 w 2 x 2 = w , x 3 = w·
3 z 1 x4 = z
Tableau i Sélection des variables d’état

L’ordre de ce système est donné par l’expression ρ 1 + ρ 2 + ρ 3 = 4 .


L’équation d’état est obtenue par dérivation des variables d’état
sélectionnées. Les équations originales sont exploitées par substitution pour
exprimer les dérivées des variables d’état en fonction des variables d’état, des
entrées et du temps.

2 2
x· 1 = v· = ( u 2 – cos z· ) = ( u 2 – cos αt )
x· 2 = w· = x 3
1 2
x· 3 = w·· = --- ( u 1 – sin αt )
a
x· = z· = αt
4

La même démarche est exploitée pour exprimer les sorties en fonction des
variables d’état, des entrées et du temps. Par exemple, si seule la grandeur w est
mesurée il vient:

y = w = x2

14
REPRÉSENTATION D’ÉTAT

2.2 Modèle d’état analogique


2.2.1 Définitions
Après application des lois physiques les gouvernant, de nombreux
processus physiques peuvent être décrits par des équations différentielles et
algébriques exhibant la structure suivante:

x· 1(t) = f 1 [ x 1(t), …, x n(t), u 1(t), …, u r(t), t ]


x· 2(t) = f 2 [ x 1(t), …, x n(t), u 1(t), …, u r(t), t ]
(2.4)
#
x· n(t) = f n [ x 1(t), …, x n(t), u 1(t), …, u r(t), t ]

y 1(t) = g 1 [ x 1(t), …, x n(t), u 1(t), …, u r(t), t ]


y 2(t) = g 2 [ x 1(t), …, x n(t), u 1(t), …, u r(t), t ]
(2.5)
#
y p(t) = g p [ x 1(t), …, x n(t), u 1(t), …, u r(t), t ]

La variable t est le temps. On introduit les notations vectorielles:

x 1(t) u 1(t) y 1(t)


x 2(t) u 2(t) y 2(t)
x(t) = ; u(t) = et y(t) =
# # #
x n(t) u r(t) y p(t)

Les fonctions f et g sont données par:

f 1 [ x(t), u(t), t ] g 1 [ x(t), u(t), t ]


f 2 [ x(t), u(t), t ] g 2 [ x(t), u(t), t ]
f [ x(t), u(t), t ] = , g [ x(t), u(t), t ] =
# #
f n [ x(t), u(t), t ] g p [ x(t), u(t), t ]

15
MODÈLE D’ÉTAT ANALOGIQUE

Par définition:

x· 1(t)
x· (t)
x· (t) = 2
#
x· n(t)

Les relations (2.4) et (2.5) prennent alors l'allure très compacte:

x· (t) = f [ x(t), u(t), t ] (2.6)

y(t) = g [ x(t), u(t), t ] (2.7)

Le vecteur u(t) est l'entrée du système et y(t) sa sortie. Supposons


maintenant que x(t 0) et u(t) , t ≥ t 0 , sont connus. L'équation (2.6) peut
conceptuellement être résolue pour t ≥ t 0 , en admettant que les conditions
d'existence et d'unicité d'une solution sont vérifiées; la relation (2.7) permet alors
le calcul de y(t) pour t ≥ t 0 . Ainsi, comme la notation le laissait présumer, x(t 0)
forme l'état au temps t 0 .

L'équation (2.6) régissant le comportement dynamique du processus est


appelée équation d'état; la relation (2.7) fournissant sa sortie est l'équation de
sortie. Notons que, dans la pratique, il est rare que u(t) intervienne dans cette
dernière. Ces deux équations forment le modèle d'état. Il est dit analogique, à
temps continu et différentiel.

2.2.2 Représentation d’état des systèmes linéaires

Un cas particulier extrêmement important de modèle d’état est celui dans


lequel les fonctions f et g possèdent la forme suivante:

f [ x(t), u(t), t ] = A(t)x(t) + B(t)u(t)

g [ x(t), u(t), t ] = C(t)x(t) + D(t)u(t)

A(t) , B(t) , C(t) et D(t) sont respectivement des matrices de dimensions


n × n , n × r , p × n et p × r .

16
REPRÉSENTATION D’ÉTAT

La représentation d'état devient alors:

x· (t) = A(t)x(t) + B(t)u(t) (2.8)

y(t) = C(t)x(t) + D(t)u(t) (2.9)

D(t)

+ x· (t) x(t) +
u(t) B(t)
+ ∫ C(t)
+
y(t)

A(t)

Figure 2-2 Schéma fonctionnel d'un système linéaire analogique.

Un système analogique décrit par les relations (2.8) et (2.9) est dit linéaire.
Il est non stationnaire si les matrices apparaissant dans ces équations dépendent
du temps et stationnaire dans la situation contraire. La figure 2-2 fournit le
schéma fonctionnel de tels processus.

Remarquons que, dans ce schéma fonctionnel, les variables d'état


apparaissent à la sortie des intégrateurs. Les divers rôles joués par les matrices du
modèle ressortent maintenant clairement; la matrice d'entrée B(t) résume la
liaison du vecteur d’entrée u(t) avec la partie dynamique caractérisée par la
matrice du système A(t) ; la matrice de sortie C(t) représente la connexion entre
cette portion dynamique et le vecteur de sortie y(t) tandis que la matrice de
passage D(t) indique une intervention directe de u(t) sur y(t) .

Le cas monovariable est caractérisé par r = p = 1 ; la matrice B(t)


devient alors un vecteur colonne b(t) de dimension n, la matrice C(t) un vecteur
T
ligne c (t) de dimension n, et finalement la matrice D(t) un nombre d(t) .

x· (t) = A(t)x(t) + b(t)u(t)

T
y(t) = c (t)x(t) + d(t)u(t)

17
MODÈLE D’ÉTAT ANALOGIQUE

Une représentation par schéma fonctionnel est reportée dans la figure 2-3.

D(t)

+ x· (t) x(t) +
u(t) • B(t)
+ ∫ C(t)
+
y ( t)

A(t)

Figure 2-3 Schéma fonctionnel d’un système linéaire analogique monovariable.

2.2.3 Exemple: Entraînement électrique


On considère ici un entraînement électrique composé d’un moteur à
courant continu et à excitation séparée couplé à une charge, comme illustré dans
la figure 2-4.

i R L
o
θ

u ui J
f

Figure 2-4 Entraînement électrique

R et L sont respectivement la résistance et l'inductance du circuit d'induit,


traversé par le courant i, alors que J et f dénotent l'inertie et le coefficient de
frottement de la charge. La position angulaire θ de celle-ci est la sortie du
processus; son entrée est la tension d'alimentation variable u du moteur.
·
Nous savons que la tension induite u i est égale à kθ , où k est une
constante, et que le couple fourni par le moteur est ki . Ainsi:

di ·
u = Ri + L + kθ
dt
·· ·
Jθ = ki – fθ

18
REPRÉSENTATION D’ÉTAT

·
Soient les variables d'état x 1 = θ , x 2 = θ et x 3 = i ; le modèle d'état
s'établit aisément:

0 1 0
x· 1 x1 0
f k--
0 – -- + 0 u
x· 2 = J J x2
1
x· 3 0
k
– ---
R
– --- x3 ---
L
L L

x1
y = 1 0 0 x2
x3

Cette description peut être simplifiée si on néglige l'inductance du circuit


·
d'induit. En effet, avec L = 0 , l'équation électrique se réduit à u = Ri + kθ . D'où
le courant d'induit:
·
u – kθ
i = --------------
-
R
L'équation mécanique devient alors:
2
·· k · k
Jθ = – ⎛ ----- + f⎞ θ + --- u
⎝R ⎠ R
Seules les deux premières variables d’état x 1 et x 2 préalablement
sélectionnées sont maintenant nécessaires pour décrire le système. Le modèle
d'état simplifié est ainsi:

x· 1 x1 1 k
2
k
= 0 1 + 0 u , avec a = – --- ⎛ ----- + f⎞ et b = ------
x· 0 a x2 b J R ⎝ ⎠ JR
2

x1
y = 1 0
x2

Il s’agit d’un système linéaire et stationnaire. Les équations obtenues sont


en effet de la forme x· (t) = Ax(t) + Bu(t) et y(t) = Cx(t) + Du(t) , avec D = 0
dans ce cas particulier.

19
SIMULATION D’UN PROCESSUS REPRÉSENTÉ PAR MODÈLE D’ÉTAT

2.3 Simulation d’un processus représenté par modèle


d’état
2.3.1 Introduction
On a examiné dans la section précédente la représentation d'état des
systèmes dynamiques. Cette modélisation par équations différentielles du premier
ordre se prête bien à une résolution par ordinateur, autrement dit à la simulation
numérique du processus.
La simulation d’un processus consiste en la détermination de l'état x(t) et
de la sortie y(t) pour t ≥ t 0 lorsque l'entrée du système u(t) pour t ≥ t 0 et l’état
initial x(t 0) sont connus.
Il n'existe pas de solution analytique à ce problème général. On doit avoir
recours à des méthodes d'intégration numérique pour résoudre le système
d'équations différentielles que constitue l'équation d'état. Ces méthodes ne
fournissent pas comme solution une fonction continue dans le temps, seuls sont
obtenus des échantillons de la fonction cherchée, habituellement uniformément
espacés. L’intervalle de temps qui les sépare, appelé le pas d’intégration est noté
h. Les instants où la solution est connue sont donnés par:

t = kh , k = k 0, k 0 + 1, k 0 + 2, … ∈ N (2.10)

La méthode d’intégration la plus intuitive, proposée par Euler, consiste


tout d’abord à écrire le modèle d’état à l’instant kh :

x· (kh) = f [ x(kh), u(kh), kh ] (2.11)

y(kh) = g [ x(kh), u(kh), kh ] (2.12)


puis d’utiliser comme approximation de la dérivée de la solution son expression
issue des premiers termes du développement en série de l’état:

x(kh + h) ≈ x(kh) + x· (kh)h


soit:
x(kh + h) – x(kh)
x· (kh) ≈ ---------------------------------------- (2.13)
h
Ce qui donne finalement:

x(kh + h) ≈ x(kh) + hf [ x(kh), u(kh), kh ] (2.14)

20
REPRÉSENTATION D’ÉTAT

L’allure de la solution cherchée, l’approximation de la dérivée et les échantillons


fournis sont représentés à la figure 2-5.

x(t) x· (kh)
x(kh + h) – x(kh)
----------------------------------------
• • h

x(t 0) •

• h

t
k0 h kh kh+h

Figure 2-5 Approximation de l’état fournie par une méthode d’intégration numérique.

Après avoir soigneusement sélectionné le pas d’intégration h, la


simulation est menée en exploitant successivement les équations (2.14) et (2.12):

x(k 0 h + h) ≈ x(k 0 h) + hf [ x(k 0 h), u(k 0 h), k 0 h ]

y(k 0 h) = g [ x(k 0 h), u(k 0 h), k 0 h ]

x(k 0 h + 2h) ≈ x(k 0 h + h) + hf [ x(k 0 h + h), u(k 0 h + h), k 0 h + h ]

y(k 0 h + h) = g [ x(k 0 h + h), u(k 0 h + h), k 0 h + h ]

x(kh + h) ≈ x(kh) + hf [ x(kh), u(kh), kh ]

y(kh) = g [ x(kh), u(kh), kh ]

Cette méthode est peu précise et peu stable mais permet une évaluation ra-
pide de la solution de l’équation d’état. Une méthode plus sophistiquée couram-
ment utilisée est celle de Runge-Kutta. Elle est présentée au paragraphe suivant.

21
SIMULATION D’UN PROCESSUS REPRÉSENTÉ PAR MODÈLE D’ÉTAT

2.3.2 Méthode de Runge-Kutta


La méthode d'intégration Runge-Kutta fournit une solution au problème
de la simulation exposé précédemment sous la forme suivante:

1
x(kh + h) ≈ x(kh) + --- ( a + 2b + 2c + d )
6

y(kh) = g [ x(kh), u(kh), kh ]

où a, b, c et d sont des vecteurs de dimension n donnés par:

a = hf [ x(kh), u(kh), kh ]
1 1 1
b = hf x(kh) + --- a, u(kh + --- h), kh + --- h
2 2 2
1 1 1
c = hf x(kh) + --- b, u(kh + --- h), kh + --- h
2 2 2
d = hf [ x(kh) + c, u(kh + h), kh + h ]

Si la commande u(t) n'est pas disponible entre kh et kh+h, les valeurs in-
termédiaires doivent être déterminées par interpolation entre u(kh) et u(kh + h) .

Cette méthode est basée sur un développement en série de Taylor de la


fonction f jusqu'aux termes d'ordre quatre.

On remarque que le format introduit pour représenter les modèles d'état


fournit, dans le cas de l'algorithme de Runge-Kutta, une représentation très
condensée de ses équations.

Cette méthode est d'une précision satisfaisante et offre de plus l'avantage


de diverger très rapidement si le choix du pas d'intégration h n'est pas adéquat,
permettant ainsi de déceler facilement des résultats erronés. Elle est disponible
dans les librairies et les logiciels mathématiques standards comme NAG, IMSL,
MATLAB, Mathematica ou Octave.

2.3.3 Remarque
La simulation numérique sur ordinateur d'un processus analogique offre
de nombreux avantages. Pour commencer, les algorithmes mis en oeuvre sont
parfaitement connus, ce qui permet de maîtriser la précision des résultats. Le
traitement de systèmes multivariables ne pose pas de problème et les fonctions
non linéaires peuvent être construites facilement, soit au moyen de polynômes ou

22
REPRÉSENTATION D’ÉTAT

de fonctions transcendantes obtenues par interpolation, soit par leur stockage dans
des tableaux de valeurs.
Il ne faut toutefois pas perdre de vue que le calcul numérique est
approximatif. En particulier, la représentation des nombres par un nombre limité
de chiffres provoque des erreurs d'arrondi qui peuvent ne pas être négligeables
suivant la précision du calculateur utilisé. Les erreurs de troncature sont quant à
elles provoquées par l'approximation des fonctions mathématiques au moyen de
séries numériques dont on ne prend qu'un nombre limité de termes.
Finalement, le choix de la méthode et du pas d'intégration assurant la
convergence et une bonne précision des résultats n'est pas toujours aisé.
La stabilité numérique d'un algorithme est garantie lorsque l'erreur
d'intégration décroît à chaque étape successive du calcul. Cette stabilité est
souvent perturbée lorsque les ordres de grandeurs des nombres intervenant dans
les opérations sont très différents. Il est parfois nécessaire d'effectuer des mises à
l'échelle pour pallier ce problème.
Une grande partie des difficultés mentionnées dans cette section
disparaissent si le modèle d’état est linéaire et plus particulièrement s’il est
stationnaire. En effet, dans ce cas particulier, les outils de l’algèbre linéaire
fournissent une solution analytique au problème de la simulation. La description
de ces outils sort malheureusement du domaine de ce cours d’introduction.

23
MODÈLE D’ÉTAT DISCRET

2.4 Modèle d’état discret


Les systèmes intrinsèquement discrets, les représentations discrétisées de
systèmes continus, ou les algorithmes de simulation numérique décrits à la section
précédente sont représentés par des équations aux différences et des équations
algébriques. Les équations aux différences de structure quelconque peuvent être
mises sous la forme d’un système d’équations aux différences d’ordre un, par un
choix judicieux de variables d’état. Ce choix s’effectue selon la technique décrite
au paragraphe 2.1.3, où la notion de dérivé est remplacée par la notion de décalage
d’une période d’échantillonnage. Ainsi, un modèle d’état discret exhibe la
structure suivante:

x 1(k + 1) = f 1 [ x 1(k), …, x n(k), u 1(k), …, u r(k), k ]


x 2(k + 1) = f 2 [ x 1(k), …, x n(k), u 1(k), …, u r(k), k ]
(2.15)
#
x n(k + 1) = f n [ x 1(k), …, x n(k), u 1(k), …, u r(k), k ]

y 1(k) = g 1 [ x 1(k), …, x n(k), u 1(k), …, u r(k), k ]


y 2(k) = g 2 [ x 1(k), …, x n(k), u 1(k), …, u r(k), k ]
(2.16)
#
y p(k) = g p [ x 1(k), …, x n(k), u 1(k), …, u r(k), k ]

Soient les notations vectorielles:

x 1(k) u 1(k) y 1(k)


x 2(k) u 2(k) y 2(k)
x(k) = ; u(k) = et y(tk) = ,
# # #
x n(k) u r(k) y p(k)

et les fonctions f et g définies de la façon suivante:

f 1 [ x(k), u(k), k ]
f 2 [ x(k), u(k), k ]
f [ x(k), u(k), k ] = ,
#
f n [ x(k), u(k), k ]

24
REPRÉSENTATION D’ÉTAT

g 1 [ x(k), u(k), k ]
g 2 [ x(k), u(k), k ]
g [ x(k), u(k), k ] = ,
#
g p [ x(k), u(k), k ]

les relations (2.15) et (2.16) deviennent alors simplement:


x(k + 1) = f [ x(k), u(k), k ] (2.17)

y(k) = g [ x(k), u(k), k ] (2.18)


Le vecteur u(k) est l'entrée du système et y(k) sa sortie. Supposons
maintenant que x(k 0) et u(k) , k ≥ k 0 , sont connus. L'équation (2.17) peut être
résolue de manière récurrente pour k ≥ k 0 . la relation (2.18) permet alors le calcul
de y(k) pour k ≥ k 0 . Ainsi, comme la notation le laissait présumer, x(k 0) est l’état
au temps k .
L'équation (2.17) gouvernant le comportement dynamique du processus
est appelée équation d'état; la relation (2.18) donnant sa sortie est l'équation de
sortie. Le modèle d'état est dit discret ou interne, les motifs de cette dernière
terminologie étant les mêmes que ceux mentionnés dans le paragraphe 2.2.1.

2.4.1 Représentation d’état des systèmes discrets linéaires


Un cas particulier utile du modèle d’état discret est celui dans lequel les
fonctions f et g possèdent la forme suivante:

f [ x(k), u(k), k ] = Φ(k)x(k) + Γ(k)u(k) (2.19)

g [ x(k), u(k), k ] = C(k)x(k) + D(k)u(k) (2.20)


Φ(k) , Γ(k) , C(k) et D(k) sont respectivement des matrices de dimensions
n × n , n × r , p × n et p × r . La représentation d'état devient alors:

x(k + 1) = Φ(k)x(k) + Γ(k)u(k) (2.21)

y(k) = C(k)x(k) + D(k)u(k) (2.22)


La terminologie associée au cas discret est identique à celle adoptée dans
le paragraphe 2.2.2 pour les systèmes analogiques; les matrices apparaissant dans
les équations (2.19) et (2.20) jouent le même rôle que celles figurant dans les
relations (2.8) et (2.9) (la raison des notations Φ(k) pour la matrice du système et
Γ(k) pour la matrice d'entrée deviendra évidente par la suite).

25
MODÈLE D’ÉTAT DISCRET

–1
La figure 2-6 fournit le schéma fonctionnel d'un tel système; q désigne
l'opérateur retard.

D(k)

x(k + 1) x(k) +
u(k) Γ(k) q –1 C(k) y(k)
+ + +

Φ(k)

Figure 2-6 Schéma fonctionnel d'un système linéaire discret.

Pour les processus monovariables, caractérisés par r = p = 1 , la matrice


Γ(k) devient un vecteur g(k) , la matrice C(k) un vecteur ligne c T(k) et finalement
la matrice D(k) un nombre d(k) :

x(k + 1) = Φ(k)x(k) + g(k)u(k) (2.23)

y(k) = c T(k)x(k) + d(k)u(k) (2.24)

2.4.2 Exemple: Retard pur de 3 périodes d’échantillonnage

Soit un retard pur continu y(t) = u(t – τ) . Le retard τ est un multiple


entier, en l’occurrence trois, de la période d’échantillonnage, ainsi
y(t) = u(t – 3h) .

L’échantillonnage de la sortie de ce système au moyen d’un convertisseur


AD en des instants discrets t k = kh fournit l’expression y(kh) = u(kh – 3h) .

Pour simplifier la notation, la substitution #h → # est effectuée,


conduisant à la relation y(k) = u(k – 3) .

Un décalage positif de trois périodes donne finalement l’équation aux


différences y(k + 3) = u(k) .

Trois variables doivent être introduites pour représenter ce système dans


le formalisme d’état, il s’agit de x 1(k) = y(k) , x 2(k) = y(k + 1) et de
x 3(k) = y(k + 2) .

26
REPRÉSENTATION D’ÉTAT

L’équation d’état exhibe alors la forme:

x 1(k + 1) = y(k + 1) = x 2(k)


x 2(k + 1) = y(k + 2) = x 3(k)
x 3(k + 1) = y(k + 3) = u(k)

Quant à l’équation de sortie, c’est simplement y(k) = x 1(k) .


Sous forme matricielle, ce modèle qui est linéaire et stationnaire se
présente ainsi:

x 1(k + 1) 0 1 0 x 1(k) 0
x 2(k + 1) = 0 0 1 x 2(k) + 0 u(k)
x 3(k + 1) 0 0 0 x 3(k) 1

x 1(k)
y(k) = 1 0 0 x 2(k)
x 3(k)

27
MODÈLE D’ÉTAT D’UN SYSTÈME REPRÉSENTÉ PAR UNE FONCTION DE TRANSFERT

2.5 Modèle d’état d’un système représenté par une


fonction de transfert
Soit la fonction de transfert discrète:

Y(z) b 0 + b 1 z –1 + b 2 z –2 + … + b n z –n
H(z) = ---------- = ----------------------------------------------------------------------------
- (2.25)
U(z) 1 + a 1 z –1 + a 2 z –2 + … + a n z –n

En effectuant la division, il vient:

( b 1 – a 1 b 0 )z –1 + ( b 2 – a 2 b 0 )z – 2 + … + ( b n – a n b 0 )z –n
H(z) = b 0 + ---------------------------------------------------------------------------------------------------------------------------------
– 1 – 2 – n
-
1 + a1 z + a2 z + … + an z

Par conséquent Y(z) = b 0 U(z) + Ỹ(z) , avec:

( b 1 – a 1 b 0 )z –1 + ( b 2 – a 2 b 0 )z –2 + … + ( b n – a n b 0 )z –n
Ỹ(z) = ---------------------------------------------------------------------------------------------------------------------------------
- U(z)
1 + a 1 z –1 + a 2 z –2 + … + a n z –n

Cette équation peut également s’écrire:

Ỹ(z)
---------------------------------------------------------------------------------------------------------------------------------- =
( b 1 – a 1 b 0 )z + ( b 2 – a 2 b 0 )z – 2 + … + ( b n – a n b 0 )z – n
– 1

U(z)
-------------------------------------------------------------------------- ≡ Q(z)
1 + a 1 z + a 2 z –2 + … + a n z –n
– 1

Deux équations peuvent être tirées de cette dernière expression:

Q(z) = – a 1 z – 1 Q(z) – a 2 z –2 Q(z) – … – a n z –n Q(z) + U(z) (2.26)

Ỹ(z) = ( b 1 – a 1 b 0 )z – 1 Q(z) + ( b 2 – a 2 b 0 )z – 2 Q(z) + …


… + ( b n – a n b 0 )z – n Q(z)

Effectuons maintenant le choix de variables d’état suivant:

W 1(z) = z – 1 Q(z)
W 2(z) = z – 2 Q(z)
#
W n(z) = z – n Q(z)

28
REPRÉSENTATION D’ÉTAT

Nous obtenons alors:

zW 2(z) = W 1(z)
zW 3(z) = W 2(z)
#
zW n(z) = W n – 1(z)

ce qui permet d’écrire l’expression de zW 1(z) = Q(z) en fonction des variables


d’état et selon la relation (2.26)
zW 1(z) = – a 1 W 1(z) – a 2 W 2(z) – … – a n W n(z) + U(z)

d’où le modèle d’état discret:

w 1(k + 1) = – a 1 w 1(k) – a 2 w 2 ( k ) – … – a n w n(k) + u(k)


w 2(k + 1) = w 1(k)
w 3(k + 1) = w 2(k)
#
w n(k + 1) = w n – 1(k)

La lettre w est introduite à la place de x pour souligner que les variables


d’état sont artificielles, c’est-à-dire qu’elles n’ont pas forcément de sens physique.
Leur choix est simplement adapté à la construction mathématique considérée.
L’équation de sortie devient quant à elle:
Y(z) = ( b 1 – a 1 b 0 )W 1(z) + ( b 2 – a 2 b 0 )W 2(z) + …
… + ( b n – a n b 0 )W n(z) + b 0 U(z)

Sous forme matricielle, il vient:

–a1 –a2 … –an – 1 –an 1


1 0 … 0 0 0
w(k + 1) = 0 1 % # # w(k) + 0 u(k) (2.27)
# % % 0 0 #
0 … 0 1 0 0












Φw gw

29
MODÈLE D’ÉTAT D’UN SYSTÈME REPRÉSENTÉ PAR UNE FONCTION DE TRANSFERT

y(k) = b 1 – a 1 b 0 | b 2 – a 2 b 0 | … | b n – a n b 0 w(k) + b 0 u(k) (2.28)


















c wT

Par conséquent, pour construire la représentation d’état d’un système


SISO décrit par une fonction de transfert, il suffit d’introduire l’opposé des
coefficients du dénominateur dans la première ligne de la matrice Φ w . Le vecteur
colonne g w est indépendant du système. Le vecteur c wT est déterminé simplement
à partir des coefficients du numérateur et du dénominateur de la fonction de
transfert.

2.5.1 Exemple: Modèle discret d’un entraînement


L’entraînement électrique décrit au paragraphe 2.2.3 peut être représenté
par la fonction de transfert suivante:

θ(s) A
G ( s ) = ----------- = ----------------------
U(s) s ( 1 + sτ )
Le passage entre le modèle d’état analogique et la fonction de transfert
donne une constante de temps τ = – 1 ⁄ a et un gain statique en vitesse de
A = – b ⁄ a . Le modèle de ce système linéaire et stationnaire vu au travers de
convertisseurs AD et DA est obtenu, dans ce cas SISO bien connu, par la relation:

H ( z ) = ( 1 – z –1 ) Z ⎧⎨ L –1 G(s) ⎫
----------- ⎬
s ⎭

–1 –2
θ(z) b 1 z –1 + b 2 z –2 b1 z + b2 z
H ( z ) = ----------- = ----------------------------------------------
- = ---------------------------------------------------
-
U(z) ( 1 – z – 1 ) ( 1 + αz –1 ) 1 + ( α – 1 )z – αz
–1 –2

où b 1 = A [ h – τ ( 1 – e –h / τ ) ] , b 2 = A [ τ ( 1 – e –h / τ ) – he –h / τ ] et α = – e – h / τ .
Un modèle d’état discret équivalent peut être construit en exploitant
l’approche introduite au paragraphe précédent. Ainsi:

w 1(k + 1) w 1(k)
= –( α – 1 ) α + 1 u(k)
w 2(k + 1) 1 0 w 2(k) 0

w 1(k)
y(k) = θ(k) = b 1 b 2 + 0 u(k)
w 2(k)

30
REPRÉSENTATION D’ÉTAT

2.6 Exercices
2.6.1 Bras flexible

Un bras solidaire d’une plate-forme tournante peut pivoter autour d’un axe
A . Ses mouvements sont limités et amortis par deux ressorts.

α(t)

M(t) θ(t)

La dynamique du système est régie en bonne approximation par les


équations différentielles suivantes:
· ··
( I + I b )ω(t) + I b α(t) = M(t)
·· · ·
I b α(t) + I b ω(t) + fα(t) + Rα(t) = 0

M(t) est le couple moteur (entrée), θ(t) est la position angulaire de la


plate-forme par rapport à un référentiel fixe et α(t) est la position angulaire
relative du bras par rapport à la plate-forme.

Déterminer le modèle d’état qui décrit la dynamique de ce système pour le


cas où la sortie mesurée est la position angulaire θ(t) .

Déterminer le modèle d’état qui décrit la dynamique de ce système pour le


·
cas où la sortie mesurée est la vitesse angulaire ω(t) = θ(t) .

31
EXERCICES

2.6.2 Mise en série


Soit deux systèmes dynamiques décrits respectivement par les modèles
d’état linéaires discrets M a et M b :

Ma : x a(k + 1) = Φ a x a(k) + Γ a u a(k)


y a(k) = C a x a(k) + D a u a(k)

Mb : x b(k + 1) = Φ b x b(k) + Γ b u b(k)


y b(k) = C b x b(k) + D b u b(k)

Déterminer le modèle d’état qui correspond à la mise en série de ces deux


systèmes.
u a(k) y a(k) u b(k) y b(k)
Ma Mb

Dans quelle(s) condition(s) cette mise en série peut-elle être effectuée ?

2.6.3 Régulateur PI discret


Pour une implantation sur une carte processeur universelle, un régulateur
PI discret doit être exprimé sous la forme générale d’un modèle d’état. L’entrée du
régulateur est l’écart e(k) existant entre la grandeur de consigne et la mesure.

La sortie du régulateur correspond à la commande c(k) . Il s’agit de la somme des


composantes proportionnelle et intégrale ( ui ):

c(k) = Kp e(k) + ui (k)

h e(k) + e(k – 1)
avec: ui (k) = ui (k – 1) + Kp ---- ------------------------------------
Ti 2

Les paramètres h , Kp et Ti sont respectivement la période d’échantillonnage, le


gain proportionnel et la constante de temps de l’intégrateur.

Déterminer le modèle d’état qui correspond à ce système dynamique.

32
REPRÉSENTATION D’ÉTAT

2.7 Solutions des exercices


2.7.1 Solution bras flexible

Déterminer le modèle d’état qui décrit la dynamique de ce système pour le


cas où la sortie mesurée est la position angulaire θ(t) .

x· 1(t) = x 2(t)
x 1(t) = θ(t)
·· R f 1
· x· 2(t) = θ(t) = --- x 3(t) + - x 4(t) + --- u(t)
x 2(t) = θ(t) I I I
, soit
x 3(t) = α(t) x· (t) = x (t)
3 4
· ·· I + Ib R f 1
x 4(t) = α(t) x· 4(t) = α(t) = – ------------ --- x 3(t) + - x 4(t) – --- u(t)
Ib I I I

y(t) = θ(t) = x 1(t)

Déterminer le modèle d’état qui décrit la dynamique de ce système pour le


·
cas où la sortie mesurée est la vitesse angulaire ω(t) = θ(t) .

Dans ce cas, on peut se passer de θ(t) . Un partie de la dynamique est laissée


en aval du capteur et n’est donc pas “visible”.

· R f 1
x· 1(t) = ω(t) = --- x 2(t) + - x 3(t) + --- u(t)
x 1(t) = ω(t) I I I
x 2(t) = α(t) , soit x· (t) = x (t)
2 3
· I + Ib R f 1
x 3(t) = α(t) ··
x· 3(t) = α(t) = – ------------ --- x 2(t) + - x 3(t) – --- u(t)
Ib I I I

y(t) = ω(t) = x 1(t)

33
SOLUTIONS DES EXERCICES

2.7.2 Solution mise en série

x a(k + 1) Φa 0 x a(k) Γa
x(k + 1) = = + u a(k)
x b(k + 1) Γ b C a Φ b x b(k) Γb Da

x a(k)
y b(k) = D b C a C b + D b D a u a(k)
x b(k)

2.7.3 Solution régulateur PI discret


y(k) = K p u(k) + u i(k)

h u(k + 1) + u(k )
u i(k + 1) = u i(k) + K p ---- -------------------------------------
Ti 2

Pour supprimer le terme indésirable u ( k + 1 ) , on pose comme variable d’état:


x(k) = u i(k) + αu ( k ) (au lieu de x(k) = u i(k) )

h u(k + 1) + u(k)
Ainsi: x(k + 1) – αu(k + 1) = x(k) – αu(k) + K p ---- -------------------------------------
Ti 2

h h
x(k + 1) = x(k) + K p -------- – α u(k) + K p -------- + α u ( k + 1 )
2T i 2T i

h
Le terme indésirable disparaît pour: α = – K p --------
2T i

Finalement:
h
x(k + 1) = x(k) + K p ---- u(k)
Ti

h
x(k) = u i(k) – K p -------- u(k)
2T i

h
y(k) = K p u(k) + u i(k) = K p u(k) + x(k) + K p -------- u(k)
2T i
h
= x(k) + K p 1 + -------- u(k)
2T i

34
CHAPITRE 3
LINÉARISATION

3.1 Introduction
L’intérêt des systèmes linéaires réside dans la possibilité d’appliquer le
principe de superposition et dans celle de résoudre analytiquement les équations
différentielles qui gouvernent leur dynamique. Néanmoins, la majorité des
processus rencontrés dans la pratique exhibent des non-linéarités conduisant aux
modèles d'état généraux examinés précédemment. De sérieuses difficultés
surgissent malheureusement lors de l'étude directe de ces systèmes, difficultés
qu'il est souvent possible de contourner en se contentant d'une approximation
linéaire du modèle original, beaucoup plus facile à analyser mais valable
uniquement pour de petites déviations autour de trajectoires nominales. Cette
approche, appelée linéarisation, est formalisée en exploitant les concepts
introduits précédemment après l’introduction de la nomenclature nécessaire.

3.2 Grandeurs nominales


3.2.1 Trajectoire de fonctionnement ou nominale
Un profil d’évolution de l’état, des entrées et des sorties d’une installation
en fonction du temps est appelé trajectoire de fonctionnement ou trajectoire
nominale, s’il correspond à un mode de fonctionnement pré-spécifié de cette
installation. Une telle trajectoire est mise en évidence par un surlignement de l’état
x(t) , des entrées u(t) et des sorties y(t) correspondantes. Par exemple, le profil de
position que doit suivre un axe de machine outil lors de l’usinage d’une pièce
circulaire s’exprime sous la forme:

x(t) = A sin ( ωt )
Afin que l’installation puisse suivre une telle trajectoire de fonctionne-
ment, il faut qu’elle respecte les contraintes liées à sa constitution et à sa dynami-

35
GRANDEURS NOMINALES

que propre. D’une point de vue mathématique, la trajectoire doit satisfaire les
équations différentielles et algébriques du modèle de l’installation considérée. En
d’autres termes et respectivement dans les cas analogique ou discret, le triplet
{ u(t), x(t), y(t) } ou { u(k), x(k), y(k) } est solution du système d’équations:

Cas analogique Cas discret


· x(k + 1) = f [ x(k), u(k) ]
x(t) = f [ x(t), u(t) ]
y(t) = g [ x(t), u(t) ] y(k) = g [ x(k), u(k) ]
Tableau ii Spécifications d’une trajectoire de fonctionnement.

Par souci de simplicité, on ne considère ici que des processus


stationnaires pour lesquels les fonctions f et g ne dépendent pas explicitement du
temps. La solution de l’un ou l’autre de ces deux systèmes d’équations algébriques
non linéaires fournit une solution qui correspond à un état accessible du système.

Il y a toujours n + p équations dans le système, ce qui correspond au nom-


bre d’inconnues qui peuvent être déterminées parmi les n + p + r grandeurs qui
caractérisent la trajectoire nominale. Il y a par conséquent r degrés de liberté pour
imposer des entrées, des sorties, des états ou une combinaison de ces grandeurs en
fonction de l’application considérée. Suivant les cas, la solution peut être obtenue
analytiquement ou numériquement avec un algorithme du type Newton-Raphson.

Pour l’exemple considéré, la commande à appliquer à la machine pour


suivre le profil spécifié correspond à la solution du système d’équations
algébriques et non linéaires:

ωA cos ( ωt ) = f [ A sin ( ωt ), u(t) ]


y(t) = g [ A sin ( ωt ), u(t) ]
·
où il a été tenu compte d’une dérivée de l’état de la forme x(t) = A cos ( ωt ) ,
spécifiée par le profil choisit.

3.2.2 Commande a priori


En l’absence d’erreurs de modélisation ou de perturbations sur le système,
l’application en boucle ouverte de la commande u engendre l’état x et les sorties
y . Il s’agit donc de la commande qui est a priori nécessaire pour suivre la
trajectoire nominale. Le vecteur u porte donc le nom de commande a priori,
qu’il s’agisse du cas analogique ou du cas discret. Cette commande peut être pré-
calculée ou élaborée en temps réel et appliquée continûment à l’entrée du système.

36
LINÉARISATION

3.2.3 Point de fonctionnement ou état nominal

Si une trajectoire de fonctionnement n’évolue pas au cours du temps, on


l’appelle point de fonctionnement, point d’équilibre, ou état nominal. Cette
·
condition se traduit dans le cas analogique par x(t) = 0 et dans le cas discret par
x(k + 1) = x(k) ∀k . En introduisant le triplet constant { u, x, y } , le point de
fonctionnement satisfait donc les équations:

Cas analogique Cas discret

0 = f [ x, u ] x = f [ x, u ]
y = g [ x, u ] y = g [ x, u ]
Tableau iii Spécifications d’un point de fonctionnement.

Un système qui se trouve à son point de fonctionnement est, par définition


de ce dernier, dans un état stationnaire ou inerte. Il est par conséquent au repos,
c’est-à-dire que l’effet des conditions initiales ou d’entrées passées ne se fait plus
sentir.

3.3 Linéarisation par la tangente


3.3.1 Principe de la linéarisation

Pour illustrer le concept de linéarisation, considérons à titre d’exemple le


cas d’une fonction f d’une variable x représentée à la figure 3-1. Cette fonction est
approchée par une droite qui passe par le point de fonctionnement x . Cette droite
est utilisée pour déterminer la valeur de la fonction à proximité de x , en particulier
en x = x + x̃ .

exact

f(x)
• approché
z


z = f(x) • x̃

x x
Figure 3-1 Fonction d’une variable.

37
LINÉARISATION PAR LA TANGENTE

Nous avons:

d
f(x) ≈ z = z + z̃ = z + f(x)x̃
dx
Si l’on ne considère que la relation entre une variation x̃ de x et la variation
correspondante z̃ de z, on obtient une relation linéaire de la forme:

d
z̃ = f(x)x̃
dx
Cette relation n’est évidemment valable que pour de faibles écarts x̃ .

3.3.2 Linéarisation
Le cas général des équations d’état et de sortie est maintenant abordé. Le
principe d’obtention d’une représentation linéaire reste le même que celui illustré
par l’exemple précédent, toutefois, il s’agit de fonctions vectorielles de plusieurs
variables. Supposons que les dérivées partielles:

∂ ∂ ∂ ∂
f i(x, u) , f i(x, u) , g q(x, u) et g (x, u)
∂ xj ∂ uk ∂ xj ∂ uk q

existent et sont continues quels que soient x et u; i, j = 1, 2, …, n ;


k = 1, 2, …, r et q = 1, 2, …, p ; autrement dit, les fonctions f et g sont
continûment dérivables. Soient x̃ , ũ et ỹ des déviations autour de trajectoires
nominales x , u et y :

x̃ = x – x (3.1)

ũ = u – u (3.2)

ỹ = y – y (3.3)
On peut alors écrire le développement en séries de Taylor de la fonction
f i(x, u) autour des trajectoires nominales pour i = 1, 2, …, n :

∂ ∂
f i(x, u) = f i(x, u) + f i(x, u)x̃ 1 + … + f (x, u)x̃ n
∂ x1 ∂ xn i

∂ ∂
+ f i(x, u)ũ 1 + … + f (x, u)ũ r + p i(x̃, ũ) (3.4)
∂ u1 ∂ ur i

Les fonctions p i dénotent des termes d'ordre supérieur.

38
LINÉARISATION

Il est naturel de définir:

p 1(x̃, ũ)
p 2(x̃, ũ)
p(x̃, ũ) =
#
p n(x̃, ũ)

Introduisons maintenant les matrices jacobiennes:

∂ ∂ ∂
f (x, u) f (x, u) … f (x, u)
∂ x1 1 ∂ x2 1 ∂ xn 1
∂ ∂ ∂
∂ f (x, u) f (x, u) … f (x, u)
f(x, u) = ∂ x1 2 ∂ x2 2 ∂ xn 2
∂x
# # #
∂ ∂ ∂
f (x, u) f (x, u) … f (x, u)
∂ x1 n ∂ x2 n ∂ xn n

∂ ∂ ∂
f (x, u) f (x, u) … f (x, u)
∂ u1 1 ∂ u2 1 ∂ ur 1
∂ ∂ ∂
∂ f (x, u) f (x, u) … f (x, u)
f(x, u) = ∂ u1 2 ∂ u2 2 ∂ ur 2
∂u
# # #
∂ ∂ ∂
f (x, u) f (x, u) … f (x, u)
∂ u1 n ∂ u2 n ∂ ur n

Toutes les relations (3.4) peuvent être rassemblées sous la forme


extrêmement compacte:

∂ ∂
f(x, u) = f(x, u) + f(x, u)x̃ + f(x, u)ũ + p(x̃, ũ) (3.5)
∂x ∂u

De la même façon, g(x, u) devient:

∂ ∂
g(x, u) = g(x, u) + g(x, u)x̃ + g(x, u)ũ + q(x̃, ũ) (3.6)
∂x ∂u

39
LINÉARISATION PAR LA TANGENTE

où le vecteur q qui regroupe les termes d'ordre supérieur est défini de la façon
suivante:

q 1(x̃, ũ)
q 2(x̃, ũ)
q(x̃, ũ) =
#
q p(x̃, ũ)

et les matrices jacobiennes par:

∂ ∂ ∂
g (x, u) g (x, u) … g (x, u)
∂ x1 1 ∂ x2 1 ∂ xn 1
∂ ∂ ∂
∂ g (x, u) g (x, u) … g (x, u)
g(x, u) = ∂ x1 2 ∂ x2 2 ∂ xn 2
∂x
# # #
∂ ∂ ∂
g (x, u) g (x, u) … g (x, u)
∂ x1 p ∂ x2 p ∂ xn p

∂ g (x, u) ∂ g (x, u) … ∂ g (x, u)


∂ u1 1 ∂ u2 1 ∂ ur 1
∂ ∂ ∂
∂ g (x, u) g (x, u) … g (x, u)
g(x, u) = ∂ u1 2 ∂ u2 2 ∂ ur 2
∂u
# # #
∂ ∂ ∂
g (x, u) g (x, u) … g (x, u)
∂ u1 p ∂ u2 p ∂ ur p

La technique de linéarisation consiste simplement à négliger les termes


d'ordre supérieur p(x̃, ũ) et q(x̃, ũ) . L'approximation semble tout à fait raisonnable
pour de petits écarts x̃ et ũ autour des trajectoires nominales; le succès de cette
approche demeure toutefois a priori un sujet d'étonnement; une justification
rigoureuse relève de la théorie de Liapounov, qui sort du contexte de ce cours.

L'égalité (3.1) fournit:

·
x· (t) = x(t) + x̃·(t) (3.7)

40
LINÉARISATION

En substituant (3.5), sans les termes d'ordre supérieur, ainsi que (3.7) dans
l'équation d'état originale (2.6), et en tenant compte du fait que les trajectoires
nominales vérifient cette dernière, on obtient:

∂ ∂
x̃·(t) = f [ x(t), u(t) ]x̃(t) + f [ x(t), u(t) ]ũ(t)
∂x ∂u
C'est une équation d'état linéaire. Elle régit les déviations des vecteurs
d'état et d’entrée autour de trajectoires nominales connues.
L'équation de sortie (2.7) peut subir une procédure identique; il en résulte
que le modèle d’état analogique linéarisé est défini par:

∂ ∂
x̃·(t) = f [ x(t), u(t) ]x̃(t) + f [ x(t), u(t) ]ũ(t) (3.8)
∂x ∂u
∂ ∂
ỹ(t) = g [ x(t), u(t) ]x̃(t) + g [ x(t), u(t) ]ũ(t) (3.9)
∂x ∂u
La forme des fonctions f et g étant la même dans les cas analogiques et
discrets, le modèle d’état discret linéarisé est défini par:

∂ ∂
x(k + 1) = f [ x(k), u(k) ]x̃(k) + f [ x(k), u(k) ]ũ(t)
∂x ∂u
∂ ∂
ỹ(k) = g [ x(k), u(k) ]x̃(k) + g [ x(k), u(k) ]ũ(k)
∂x ∂u

3.3.3 Systèmes intrinsèquement linéaires


Le triplet { u, x, y } = { 0, 0, 0 } est toujours un point de fonctionnement
pour un système intrinsèquement linéaire. Dans ce cas, ũ = u , x̃ = x et ỹ = y ,
conduisant ainsi à des représentations en variables écart (déviations) ou en vraies
grandeurs (variables globales) identiques. Le triplet mentionné n’est néanmoins
pas le seul point de fonctionnement; il peut en exister d’autres qui sont solution de:

Cas analogique Cas discret

0 = Ax + Bu x = Φx + Γu
y = Cx + Du y = Cx + Du
Tableau iv Points de fonctionnement d’un système linéaire.

Par exemple en analogique, si u est spécifié:


–1 –1
x = – A Bu et y = ( D – CA B )u

41
LINÉARISATION PAR LA TANGENTE

3.3.4 Exemple de la sustentation magnétique

Soit un système constitué d'une bille maintenue en lévitation dans le plan


vertical par une bobine (électro-aimant).

0
F

P = mg
x
Figure 3-2 Sustentation magnétique.

La force électromagnétique F exercée par la bobine dépend de la distance


x qui la sépare de la bille et du courant électrique i qui la parcourt:

1 L 2
F ( x, i ) = --- ------------------2- i
2 (1 + x)

L est la différence entre l'inductance de la bobine lorsque la bille touche


son noyau ( x = 0 ) et celle en l'absence de bille.

L'équation dynamique qui régit le mouvement de la bille est obtenue en


appliquant la loi de Newton:

mx·· = P – F ( x, i )

P est le poids de la bille et m sa masse.

L’équation différentielle qui régit la dynamique de la sustentation


magnétique est donc:

1 L
x·· = g – ------- ------------------2- i 2
2m ( 1 + x )

42
LINÉARISATION

En sélectionnant respectivement comme variables d’état, comme entrée et


comme sortie les grandeurs:

x 1 = x , x 2 = x· , u = i et y = x

on obtient le modèle d’état suivant:

x· 1 = f 1(x 1, x 2, u) = x 2

L 2
x· 2 = f 2(x 1, x 2, u) = x·· = g – -----------------------------2- u
2m ( 1 + x 1 )

y = g 1(x 1, x 2, u) = x 1

Le modèle linéarisé a la forme:

0 1 0
x̃· = Lu
2 x̃ + Lu -
------------------------- ũ
-------------------------- 0 – 2
3 m ( 1 + x1 )
m ( 1 + x1 )

ỹ = 1 0 x̃

avec:

x̃ = x – x

ũ = u – u

ỹ = y – y

Attention, la variable u ne représente pas la tension aux bornes de la bobi-


ne, mais la grandeur d’entrée qui est le courant.

3.3.5 Exemple de la cuve de mélange


Une cuve de mélange (figure 3-3) est alimentée par deux vannes
fournissant des débits volumiques variables q 1(t) et q 2(t) qui contiennent des
produits dissolus avec des concentrations constantes c 1 et c 2 . Le mélange quitte
le bac avec un débit q(t) et, le brassage étant supposé parfait, la concentration du

43
LINÉARISATION PAR LA TANGENTE

produit final est uniforme et égale à c(t) . Les entrées sont les débits q 1(t) et q 2(t) ,
et les sorties la hauteur h(t) du liquide dans la cuve et la concentration c(t) .

q 1(t) q 2(t)
c1 c2

v(t)
h(t) c(t)

q(t)
S
c(t)

Figure 3-3 Cuve de mélange.

Si V ( t ) dénote le volume du mélange, nous avons les bilans:

V· (t) = q 1(t) + q 2(t) – q(t) (3.10)

d
[ c(t)V(t) ] = c 1 q 1(t) + c 2 q 2(t) – c(t)q(t) (3.11)
dt
Le débit de sortie dépend de la hauteur h(t) du liquide de la façon suivante
(écoulement turbulent): q(t) = K h(t) . La constante K > 0 se détermine expéri-
mentalement. En désignant S la section constante du bac, les bilans deviennent:

V(t)
V· (t) = q 1(t) + q 2(t) – K ---------
S
V(t)
c· (t)V(t) + c(t)V· (t) = c 1 q 1(t) + c 2 q 2(t) – c(t)K ---------
S

3.3.6 Linéarisation par la tangente de la cuve de mélange


Après substitution, et en posant x 1(t) = V(t) , x 2(t) = c(t) , u 1(t) = q 1(t)
et u 2(t) = q 2(t) , le modèle d’état suivant est obtenu:

x 1(t)
x· 1(t) = u 1(t) + u 2(t) – K ---------- (3.12)
S

1
x· 2(t) = ---------- { [ c 1 – x 2(t) ]u 1(t) + [ c 2 – x 2(t) ]u 2(t) } (3.13)
x 1(t)

44
LINÉARISATION

1
y 1(t) = --- x 1(t)
S
y 2(t) = x 2(t)

Le modèle d’état de la cuve de mélange est maintenant linéarisé autour des


trajectoires nominales constantes x 1, x 2, u 1, u 2, y 1 et y 2 qui satisfont les équa-
tions algébriques:

x
0 = u 1 + u 2 – K ----1-
S
1
0 = ----- { ( c 1 – x 2 )u 1 + ( c 2 – x 2 )u 2 } (3.14)
x1

1
y 1 = --- x 1
S
y2 = x2

Le modèle d’état linéarisé s’obtient après substitution de l’équation (3.14)


dans l’une des matrices jacobiennes et après quelques manipulations laissées au
soin du lecteur:

x1 1 1
x̃· 1 1 K ---
- x̃ 1 ũ 1
= – ----- 2 S- ---- 0 + ( c1 – x2 ) ( c2 – x2 )
x̃· 2 x1 x̃ 2 --------------------- --------------------- ũ 2
0 u1 + u2 x1 x1

45
LINÉARISATION PAR LA TANGENTE

3.3.7 Résumé

Le modèle d’état est un moyen adéquat pour représenter les interactions


qui existent entre les entrées est les sorties d’un processus. Il fait intervenir des
grandeurs internes qui portent toute l’information nécessaire pour caractériser
l’état du processus à un instant donné. Les phénomènes dynamiques sont décrits
par l’équation d’état (2.6) et les liens algébriques sont exprimés par l’équation de
sortie (2.7).

Modèle d’état
non linéaire
u y
(2.6) et (2.7)

Figure 3-4 Représentation d’un système non linéaire par un modèle d’état.

Que ce soit pour simplifier les calculs lors d’une simulation, pour faciliter
l’analyse du comportement dynamique lors de la conception ou parce que le
domaine de fonctionnement d’une installation est limité, il est possible de
représenter le système considéré par un modèle d’état linéarisé autour de
trajectoires nominales. Ce modèle se comporte de la même façon que le modèle
d’état non linéaire d’origine uniquement pour de petites variations autour des
trajectoires nominales spécifiées.

ũ Modèle d’état ỹ
u linéarisé y
- (3.8) et (3.9) +

u y
Figure 3-5 Représentation d’un système non linéaire par un modèle d’état linéarisé.

La simulation du processus représenté à la figure 3-4 nécessite l’usage


d’un algorithme d’intégration numérique, contrairement à celle du processus
représenté à la figure 3-5, où une solution analytique existe si les matrices
jacobiennes ne dépendent pas du temps.

46
LINÉARISATION

3.4 Linéarisation par contre-réaction


La linéarisation par contre-réaction (feedback linearization) est une
technique qui fournit une linéarisation globale. Le prix de cette fonctionnalité est
la nécessité pour l’implantation de disposer de l’état du système. Sa limitation
réside dans le fait que tous les systèmes ne sont pas linéarisables de cette manière.
Une étude rigoureuse de cette technique et la détermination de l’existence
ou non d’une solution nécessitent l’introduction d’outils mathématiques, tels les
crochets de Lie, qui sortent du contexte de ce cours. Néanmoins, son principe peut
être aisément introduit sur l’exemple de la sustentation magnétique introduite
précédemment et étendu à d’autres cas.

3.4.1 Exemple de la sustentation magnétique


En ne faisant intervenir que les variables entrée-sortie, le modèle
dynamique de la sustentation magnétique introduite à l’exemple 3.3.4 s’écrit:

1 L
y·· = g – ------- ---------------------2- u 2
2m ( 1 + x 1 )

Dans le contexte de la linéarisation par contre-réaction, ce modèle entrée-


sortie (Fig. 3-6) du système à linéariser est appelé le modèle dynamique direct et
est représenté par la lettre M .

u Système y
non linéaire
M

Figure 3-6 Système à linéariser.

Un élément de “linéarisation” qui utilise les états x 1 et x 2 est maintenant


ajouté en amont du système physique. Le système équivalent qui résulte de la
combinaison de cet élément et du système physique constitue, du point de vue de
la synthèse de la commande, le nouveau système à régler (figure 3-7).

w Élément de u Système y
linéarisation non linéaire
–1
M M

x
Figure 3-7 Système linéarisé.

47
LINÉARISATION PAR CONTRE-RÉACTION

w Intégrateurs y
linéaires

Figure 3-8 Système équivalent.


L’idée est d’obtenir des intégrateurs purs comme système équivalent
(figure 3-8). Pour ce faire, w doit être une dérivée d’ordre quelconque de y .
L’élément de linéarisation doit donc exhiber une caractéristique qui lie cette
dérivée de la sortie avec l’entrée. En ce sens, il contient le modèle inverse du
–1
système physique noté M . Pour obtenir cette caractéristique, il faut dériver
l’équation de sortie du système physique, jusqu’à ce que l’entrée apparaisse dans
la relation. Cette expression, qui est de nature algébrique, est ensuite inversée.

y = x1
y· = x· 1 = x 2
1 L
y·· = x· 2 = g – ------- ---------------------2- u 2 ≡ w
2m ( 1 + x 1 )

–1
Le modèle algébrique inverse M à implanter comme élément de
linéarisation est:

2m ( g – w ) –1
u = ------------------------- ( 1 + x 1 ) (modèle inverse statique M )
L

Dans ce cas particulier, seul l’état x 1 doit être mis en contre-réaction pour
réaliser la linéarisation. Comme il s’agit de la position de la sphère et que cette
grandeur est mesurée, ceci ne pose pas de problème d’implantation. Le nouveau
système à régler est donc un double intégrateur (figure 3-9).

w = y·· 1
---- y
2
s

Figure 3-9 Système équivalent à la sustentation et à son modèle inverse.

La commande w à maintenant les dimensions d’une accélération plutôt


que d’un courant. Elle doit être limitée afin que le modèle inverse soit toujours dé-
fini. Dans ce cas, w < g .

48
LINÉARISATION

3.4.2 Formulation générale de la linéarisation par contre-réaction


Dans le cas MIMO, les équations de sortie ont généralement la forme:

y i = g i(x)

Pour obtenir un modèle dynamique direct ( u → y i ), il faut dériver cette


équation de sortie pour faire apparaître une des entrées:

y i( di ) = g *i (x, u) i = 1, …, p et d i = 0, …

La dérivée d’ordre minimum d i de y i qui fait apparaître une entrée est


choisie comme l’entrée w i correspondante du modèle inverse:

y i( di ) = w i

Le système équivalent (modèle inverse et système à régler) est alors une


combinaison de p intégrateurs SISO, découplés et linéaires.

w1 1 y1
------
s d1 y(t)
w(t)
#
wp 1 yp
------
s dp

Figure 3-10 Système équivalent.

3.4.3 Implantation discrète


Pour la synthèse d’une commande ou d’un observateur en vue d’une
implantation discrète sur ordinateur, c’est le schéma fonctionnel donné à la figure
3-11 qui est habituellement considéré.

w(k) w(t) u(t) y(t) y(k)


DA M –1(t) M AD
Figure 3-11 Système équivalent vu au travers de convertisseurs AD et DA.

En réalité, le modèle inverse n’est pas réalisé analogiquement mais


numériquement. La modification correspondante du schéma ne pose néanmoins
pas de problèmes. Comme le modèle inverse est statique, on peut en effet déplacer

49
LINÉARISATION PAR CONTRE-RÉACTION

les convertisseurs D/A sans perte de généralité ni approximation (ceci revient à


écrire le modèle inverse en t = kh ).

w(k) u(k) u(t) y(t) y(k)


M – 1(k) DA M AD
Figure 3-12 Schéma fonctionnel équivalent correspondant à l’implantation réelle.

Il n’y a donc pas lieu de modifier le modèle inverse pour une implantation
discrète sur un système informatique.

50
LINÉARISATION

3.5 Découplage non linéaire


La technique de linéarisation par contre-réaction introduite à la section
3.4 fournit à la fois une linéarisation globale et un découplage dynamique. Elle ne
s’applique néanmoins qu’à une classe limitée de systèmes qui possèdent le même
nombre d’entrées que de sorties ( r = p ). La mise en oeuvre de cette technique fait
correspondre un intégrateur pur d’ordre d i à chaque couple d’entrée-sortie
( u i, y i ) . Un système MIMO non linéaire se transforme ainsi en p systèmes SISO
linéaires découplés dont les commandes respectives peuvent être conçues par
placement de valeurs propres.

Le découplage non linéaire nécessite la connaissance de l’état du système.

Le découplage non linéaire de la cuve de mélange (§3.3.5) nécessite la


définition de deux entrées artificielles selon la technique de linéarisation par
contre-réaction décrite au paragraphe 3.4.2.

1 1 x 1(t)
y· 1(t) = --- x· 1(t) = --- u 1(t) + u 2(t) – K ---------- ≡ w 1 ( t)
S S S
1
y· 2(t) = x· 2(t) = ---------- { [ c 1 – x 2(t) ]u 1(t) + [ c 2 – x 2(t) ]u 2(t) } ≡ w 2(t)
x 1(t)

Le modèle inverse M –1 qui assure le découplage est donc:

1 ⎧ x 1(t) ⎫
u 1(t) = ---------------- ⎨ [ c 2 – x 2(t) ] w 1(t)S + K ---------- – w 2(t)x 1(t) ⎬
c2 – c1 ⎩ S ⎭

1 ⎧ x 1(t) ⎫
u 2(t) = ---------------- ⎨ w 2(t)x 1(t) – [ c 1 – x 2(t) ] w 1(t)S + K ---------- ⎬
c2 – c1 ⎩ S ⎭

Le système équivalent qui résulte de la combinaison du modèle inverse


statique M – 1 et du modèle direct dynamique M présente deux intégrateurs (figure
3-13).

w 1(t) 1⁄s y 1(t)

w 2(t) 1⁄s y 2(t)

Figure 3-13 Cuve de mélange découplée.

51
EXERCICES

3.6 Exercices
3.6.1 Échangeur
La vue en coupe d’un échangeur de chaleur est représentée ci-dessous:

2 T 2(t)
T
1
T 1 ( t)

P(t)
flux du fluide extérieur
flux du fluide intérieur

Le conduit interne 1 est parcouru par un fluide à température T 1(t) . Le


conduit externe 2 est parcouru par un fluide à température T 2(t) . La température
extérieure T est constante. Les paramètres m 1 c 1 = 0.5 , m 2 c 2 = 2 , k 12 = 1 et
k 20 = 0.5 influencent l’échange de chaleur. Il s’agit de:

m i, c i : masse et chaleur spécifique du fluide, i = 1, 2

k 12 : conductance thermique entre les milieux 1 et 2

k 20 : conductance thermique entre le fluide 2 et le milieu ambiant

La dynamique de ce système est régie par les équations différentielles


suivantes:

m 1 c 1 T· 1(t) = k 12 [ T 2(t) – T 1(t) ]

m 2 c 2 T· 2(t) = P(t) – k 12 [ T 2(t) – T 1(t) ] – k 20 [ T 2(t) – T ]

Sachant que c’est la température du fluide interne T 1(t) qui intéresse le


concepteur et que l’entrée est l’apport de puissance P(t) , décrire la
dynamique de ce système par un modèle d’état.
Déterminer l’état au point d’équilibre spécifié par une puissance de
20 W et une température ambiante de 20°C.
Déterminer le modèle d’état valable pour des évolutions autour du point
de fonctionnement déterminé sous 2.

52
LINÉARISATION

Représenter la dynamique décrite au point 3 par une fonction de


transfert.

3.6.2 Robot à deux degrés de liberté


La modélisation du robot décrit au paragraphe 1.4.3 est entreprise en
supposant que sa masse est négligeable vis-à-vis de la masse m de la charge.
Notons que ce robot évolue dans le plan vertical.
Le modèle dynamique est obtenu par la méthode de Lagrange avec r et θ
comme coordonnées généralisées. Pour r 0 = r maximum , le Lagrangien est le
suivant:

m ·
L = ---- ( r· 2 + r 2 θ 2 ) – mg(r sin θ + r 0)
2
Ainsi:

d ∂L ∂L · F
----- -----·- – ------ = F r·· – rθ 2 + g sin θ = ----
dt ∂r ∂r m
donnent
d ∂L ∂L ·· · T
----- -----·- – ------ = T r 2 θ + 2rr· θ + gr cos θ = ----
dt ∂θ ∂θ m

Le modèle d’état est construit en définissant les entrées u 1 = F et


u 2 = T , en sélectionnant les variables d’état x 1 = r , x 2 = r· , x 3 = θ et
·
x 4 = θ , et en repérant les sorties y 1 = r et y 2 = θ .

x· 1 = r· = x 2 = f 1(x, u)
u1
x· 2 = r·· = x 1 x 42 – g sin x 3 + ----- = f 2(x, u)
m
·
x· = θ = x
3 4 = f 3(x, u)

·· 1 u2
x· 4 = θ = ----2- – 2x 1 x 2 x 4 – gx 1 cos x 3 + ----- = f 4(x, u)
x1 m

y1 = x1 = g 1(x, u)
y2 = x3 = g 2(x, u)

Effectuer la linéarisation par contre-réaction de ce système.

53
SOLUTIONS DES EXERCICES

3.7 Solutions des exercices


3.7.1 Solution échangeur

Modèle d’état avec x 1 = T 1 , x 2 = T 2 , u = P et y = T 1

Point de fonctionnement

0 = k 12 ( x 2 – x 1 )

0 = u – k 12 ( x 2 – x 1 ) – k 20 ( x 2 – T )

Pour T = 20 et u = 20 il vient x 2 = x 1 = x et u = k 20 ( x – T )

Ainsi

u 20
x = ------- + T = ------- + 20 = 60 °C
k 20 0.5

Modèle à “linéariser”

k 12 k 12
f 1 = – ------------ x 1 + ------------ x 2
m1 c1 m1 c1

k 12 ( k 12 + k 20 ) 1 k 20
f 2 = ------------ x 1 – -------------------------- x 2 + ------------ u + ------------ T
m2 c2 m2 c2 m2 c2 m2 c2

Modèle “linéarisé”

· – 2 2 x̃ + 0 ũ
x̃ =
0.5 – 0.75 0.5

ỹ = 1 0 x̃

Fonction de transfert:

Ỹ(s) 1
G(s) = ---------- = --------------------------------------------------
Ũ(s) ( s + 0.75 ) ( s + 2 ) – 1

54
LINÉARISATION

3.7.2 Solution robot à deux degré de liberté


Soit le modèle direct M:

x· 1 = r· = x 2 (3.15)

u1
x· 2 = r·· = x 1 x 42 – g sin x 3 + ----- (3.16)
m
·
x· 3 = θ = x 4 (3.17)

·· 1 u2
x· 4 = θ = ----2- – 2x 1 x 2 x 4 – gx 1 cos x 3 + ----- (3.18)
x1 m

Considérons un réglage de la vitesse longitudinale et de la position


angulaire qui définit les sorties:

y1 = x2 ( r· ) (3.19)

y2 = x3 (θ) (3.20)

La dérivation successive de ces sorties fournit les entrées artificielles w.

i = 1 d1 = 0 y1 = x2
u1
y· 1 = x· 2 = x 1 x 42 – g sin x 3 + -----
d1 = 1 m
Une des entrées apparaît ( u 1 ), on peut arrêter

d1 = 1 y· 1 = w 1

i = 2 d2 = 0 y2 = x3

d2 = 1 y· 2 = x· 3 = x 4

1 u2
y··2 = x· 4 = ----2- – 2x 1 x 2 x 4 – gx 1 cos x 3 + -----
d2 = 2 x1 m
Une des entrées apparaît ( u 2 ), on peut arrêter

d2 = 2 y··2 = w 2

55
SOLUTIONS DES EXERCICES

Le choix de y· 1 = w 1 et y··2 = w 2 obtenu ci-dessus donne les équations


suivantes:

u1
w 1 = x 1 x 42 – g sin x 3 + -----
m
1 u2
w 2 = ----2- – 2x 1 x 2 x 4 – gx 1 cos x 3 + -----
x1 m

qui permettent d’obtenir le modèle inverse M –1 :

u 1 = m ( w 1 – x 1 x 42 + g sin x 3 ) (3.21)

u 2 = m ( w 2 x 12 + 2x 1 x 2 x 4 + gx 1 cos x 3 ) (3.22)

Le schéma complet du système linéarisé par contre réaction est représenté


à la figure 3-14.

w 1 = r·· u1 = F r·
·· (3.15), (3.16) (3.19)
w 2 = θ (3.21), (3.22) u = T (3.17), (3.18) (3.20) θ
2


























w1 y1
1⁄s
w2 y2
1 ⁄ s2

Figure 3-14 Combinaison du robot et de son modèle inverse.

56
CHAPITRE 4
DISCRÉTISATION

4.1 Solution de l’équation d’état linéaire et stationnaire


4.1.1 Cas d’un système d’ordre un
En présence d’une seule variable d’état, la solution de l’équation
différentielle linéaire, à coefficients constants et homogène:

x· (t) = ax(t)
se résout de la façon classique suivante:

dx
= ax
dt
dx
------ = adt
x
ln ( x ) = at + c 1
at
x = c2 e

où c 1 et c 2 sont des constantes. Cette dernière valeur peut être déterminée en


posant comme condition initiale x = x o au temps t = t o . On obtient alors:
a ( t – to )
x = e xo

Si nécessaire, la fonction exponentielle peut être évaluée numériquement


au moyen de la série:
2 3
τ τ τ
e = 1 + τ + ----- + ----- + …
2! 3!

57
SOLUTION DE L’ÉQUATION D’ÉTAT LINÉAIRE ET STATIONNAIRE

4.1.2 Equation d’état homogène


Pour obtenir la solution de l’équation d’état (2.8), cette dernière est tout
d’abord résolue sans excitation extérieure, avec seulement des conditions initiales
non nulles. Il s’agit de l’équation homogène:

x· (t) = Ax(t) avec: x(t 0) = x 0 (4.1)

Pour ce faire, sa solution est supposée suffisamment lisse de sorte qu’un


développement en série est possible:
2
x(t) = A 0 + A 1 ( t – t 0 ) + A 2 ( t – t 0 ) + … (4.2)

En posant t = t 0 , on trouve immédiatement que A 0 = x 0 . Si on dérive


(4.2) et que l’on substitue l’expression obtenue dans (4.1), il vient:
2
A 1 + 2A 2 ( t – t 0 ) + 3A 3 ( t – t 0 ) + … = Ax(t)

et, en t = t 0 : A 1 = Ax 0 . En continuant les dérivations successives de la série et


de l’équation homogène évaluée en t = t 0 , l’expression suivante est obtenue:
2 2 3 3
A ( t – t0 ) A ( t – t0 )
x(t) = I + A ( t – t 0 ) + -------------------------
- + - + … x0
-------------------------
2 6

Par analogie au cas scalaire, le terme entre crochets est défini comme
l’exponentielle de matrice et noté:
2 2 3 3
A ( t – t0 ) A ( t – t0 ) A ( t – t0 )
e = I + A ( t – t 0 ) + -------------------------- + -------------------------- + …
2 6
∞ k
k ( t – t0 )
= ∑ A ------------------
k!
-
k=0

4.1.3 Propriétés de l’exponentielle de matrice


On peut montrer que la solution de l’équation homogène est unique, ce qui
conduit à des propriétés très intéressantes pour l’exponentielle de matrice. Par
exemple, considérons deux instants t : t 1 et t 2 . Nous avons:
A ( t1 – t0 ) A ( t2 – t0 )
x(t 1) = e x(t 0) et x(t 2) = e x(t 0)

58
DISCRÉTISATION

Comme le choix de t 0 est arbitraire, x(t 2) peut également s’exprimer de la


manière suivante:
A ( t2 – t1 )
x(t 2) = e x(t 1)

qui donne par substitution de x(t 1) :


A ( t2 – t1 ) A ( t1 – t0 )
x(t 2) = e e x(t 0)

Maintenant, nous avons deux expressions différentes pour x(t 2) . Puisque la


solution est unique, elles doivent être les mêmes. Ainsi, nous pouvons conclure
que:

A ( t2 – t0 ) A ( t2 – t1 ) A ( t1 – t0 )
e = e e (4.3)
pour tout t 2 , t 1 et t 0 . En particulier, si t 2 = t 0 , alors:
–A ( t1 – t0 ) A ( t1 – t0 )
I = e e
At
Ainsi, l’inverse de e s’obtient simplement en changeant le signe de l’exposant.

4.1.4 Solution particulière


La solution particulière de l’équation d’état (2.8) lorsque la commande u
est non nulle s’obtient par la méthode de variation des paramètres. Nous suppo-
sons que la solution a la forme:
A ( t – t0 )
x(t) = e v(t) (4.4)
où v(t) est un vecteur de paramètres variables à déterminer, par opposition aux pa-
ramètres constants x(t 0) . En substituant l’expression (4.4) dans l’équation d’état:

x· (t) = Ax(t) + Bu(t)


il vient:
A ( t – t0 ) A ( t – t0 ) A ( t – t0 )
Ae v(t) + e v· (t) = Ae v(t) + Bu(t)
et, par le fait que l’inverse de l’exponentielle de matrice est obtenu en changeant
le signe de son exposant:
–A ( t – t0 )
v· (t) = e Bu(t)

59
SOLUTION DE L’ÉQUATION D’ÉTAT LINÉAIRE ET STATIONNAIRE

En supposant que la commande est nulle pour t < t 0 , v· peut être intégré de t 0 à t
pour aboutir à:

t
–A ( τ – t0 )
v(t) = ∫ e Bu(τ) dτ
t0

Par conséquent, la solution particulière exhibe la forme:

t
A ( t – t0 ) –A ( τ – t0 )
x(t) = e ∫ e Bu(τ) dτ
t0

Cette expression peut être simplifiée au moyen de la relation (4.3) pour aboutir à
la solution particulière:

t
A(t – τ )
x(t) = ∫ e Bu(τ) dτ
t0

Il s’agit d’un produit de convolution!

4.1.5 Solution complète


Le système étant linéaire et en vertu du principe de superposition, la
solution complète de l’équation d’état est la somme de sa solution homogène et
d’une solution particulière.

t
A ( t – t0 ) A(t – τ)
x(t) = e x(t 0) + e ∫ Bu(τ) dτ (4.5)
t0

4.1.6 Discrétisation
Si le système analogique est commandé par un ordinateur au travers de
convertisseurs A/D et D/A avec une période d’échantillonnage h , l’équation (4.5)
s’écrit pour t = kh + h (A/D) et t 0 = kh :

kh + h
x(kh + h) = e Ah x(kh) + ∫ e A ( kh + h – τ ) Bu(τ) dτ
kh

60
DISCRÉTISATION

Les convertisseurs D/A maintiennent la commande durant une période


d’échantillonnage. Par conséquent:

u(τ) = u(kh), kh ≤ τ < kh + h

En posant η = kh + h – τ , l’équation aux différences obtenue devient:

h
x(kh + h) = e Ah x(kh) + e Aη dη Bu(kh) ∫
0

h
Si nous définissons: Φ = e Ah et Γ = ∫ e Aη dη B
0

Alors, le modèle d’état discret qui correspond à un système analogique commandé


par ordinateur a la forme:

x(kh + h) = Φx(kh) + Γu(kh)

y ( kh ) = Cx(kh) + Du(kh)

La série définissant l’exponentielle de matrice peut être intégrée terme à terme, ce


qui fournit:

Ah 2 A 2 h 3 Aihi + 1
Γ = Ih + --------- + -----------
- +…+ -+… B
-----------------
2! 3! ( i + 1 )!

D’un point de vue temps de calcul, il est très avantageux d’évaluer les deux
matrices Φ et Γ à partir d’une seule série. Pour ce faire, introduisons la série:

Ah A 2 h 2 Aihi
ψ = I + ------- + ------------ + … + ----------------- + …
2! 3! ( i + 1 )!

Il est facile de vérifier que:

Φ = I + Ahψ et Γ = ψhB

En cas d’implantation pratique, la série ψ est évaluée de la façon suivante:

Ah Ah Ah Ah
ψ ≅ I + ------- ⎛ I + ------- ⎛ … ------------- ⎛ I + -------⎞ ⎞ ⎞
2 ⎝ 3 ⎝ N–1 ⎝ N ⎠⎠⎠

61
SOLUTION DE L’ÉQUATION D’ÉTAT LINÉAIRE ET STATIONNAIRE

N doit être choisi suffisamment grand pour que la contribution de nouveaux


termes de la série soit négligeable.

4.1.7 Résumé

La solution de l’équation d’état linéaire analogique est nécessaire à


l’obtention du modèle d’état discret d’un système stationnaire commandé par
ordinateur.

u(kh) D u(t) x· (t) = Ax(t) + Bu(t) y(t) A y(kh)


A y(t) = Cx(t) + Du(t) D

x(kh + h) = Φx(kh) + Γu(kh)


u(kh) y(kh)
y(kh) = Cx(kh) + Du(kh)


–1 Aihi
avec Φ = I + Ahψ , Γ = ψhB = A ( Φ – I )B et ψ = ∑ ----------------- .
( i + 1 )!
i=0

4.1.8 Exemple: Double intégrateur

Soit le système suivant:

·
u 1 θ 1 θ
--- ---
s x2 s x1

Figure 4-1 Schéma fonctionnel d’un double intégrateur

Son modèle d’état est:

x· 1 x
= 0 1 1 + 0 u = Ax + Bu
x· 2 0 0 x2 1

x1
θ = y = 1 0 = Cx
x2

Sa fonction de transfert est:

62
DISCRÉTISATION

1
G(s) = -----
s2
Lorsque ce système est vu au travers de convertisseurs AD et DA, son
modèle prend la forme:

x(k + 1) = Φx(k) + Γu(k)


y(k) = Cx(k)

A2h2 A3h3
avec: Φ = e Ah = I + Ah + ------------ + ------------ + … ,
2 6

h2 h3
et: Γ = Ih + A ----- + A 2 ----- + … B ,
2 6

h2
soit numériquement: Φ = 1 0 + 0 1 h+ 0 0 ----- = 1 h ,
0 1 0 0 0 0 2 0 1

h h
1 η dη 0 = h 2 ⁄ 2
et: Γ = ∫0 e Aη dηB = ∫ 0 0 1 1 h

4.1.9 Calcul de l’exponentielle de matrice


Pour des systèmes de dimension raisonnable, la limite exacte de la série
qui correspond à l’exponentielle de matrice peut être obtenue. Pour ce faire, la
transformée de Laplace de l’équation d’état est prise:

sX(s) – x(0) = AX(s) + BU(s)


d’où:

X(s) = ( sI – A ) – 1 x(0) + ( sI – A ) – 1 BU(s)


Par comparaison avec la solution complète obtenue pour t 0 = 0 il vient:

e At = L –1 [ ( sI – A ) –1 ]
Des logiciels comme Mathematica ou Maple peuvent être judicieusement
exploités pour déterminer les n 2 transformées de Laplace nécessaires.
Nous verrons plus loin que l’exponentielle de matrice d’un système
d’ordre n peut être obtenue exactement en évaluant un polynôme matriciel.

63
SOLUTION DE L’ÉQUATION D’ÉTAT LINÉAIRE ET STATIONNAIRE

4.1.10 Algorithme de Leverrier

adj [ sI – A ]
[ sI – A ] – 1 = --------------------------- (4.6)
det [ sI – A ]

Si A ij est la matrice de dimension ( n – 1 ) × ( n – 1 ) (mineur) obtenue en


supprimant la ligne i et la colonne j de la matrice A , alors l’élément se trouvant
à la ligne i et à la colonne j de la matrice adj ( A ) (adjointe) est:

i+j
( –1 ) det ( A ji )

Le déterminant s’écrit:

det [ sI – A ] = s n + a 1 s n – 1 + a 2 s n – 2 + … + a n

Il s’agit du polynôme caractéristique de A . Les valeurs de s qui annulent


ce polynôme caractéristique sont les valeurs propres de A .

Quant à la matrice adjointe, elle peut s’écrire:

adj [ sI – A ] = H 0 s n – 1 + H 1 s n – 2 + H 2 s n – 3 + … + H n – 1

Les matrices H i sont de dimension n × n . Elles se calculent


séquentiellement à partir de H 0 = I :

a 1 = – tr [ AH 0 ] H 1 = AH 0 + a 1 I
1
a 2 = – --- tr [ AH 1 ] H 2 = AH 1 + a 2 I
2
1
a 3 = – --- tr [ AH 2 ] H 3 = AH 2 + a 3 I
3
#
1
a n – 1 = – ------------ tr [ AH n – 2 ] H n – 1 = AH n – 2 + a n – 1 I
n–1
1
a n = – --- tr [ AH n – 1 ] H n = AH n – 1 + a n I = 0
n

La trace (tr) d’une matrice de dimension n × n est la somme de ses


éléments diagonaux.

64
DISCRÉTISATION

4.1.11 Théorème de Cayley-Hamilton


Soit f(A) une fonction matricielle quelconque d’une matrice carrée A de
dimension n. Il existe un polynôme p de degré inférieur à n tel que:

f(A) = p(A) = α 0 A n – 1 + α 1 A n – 2 + … + α n – 1 I

avec: f(λ i) = p(λ i) i = 1, … , n

Si les valeurs propres λ i sont distinctes, la relation précédente est


suffisante pour déterminer les α i . Si les valeurs propres λ i sont multiples, de
multiplicité m i , il faut utiliser les conditions supplémentaires:

f ( 1 )(λ i) = p ( 1 )(λ i)
#
f ( m i – 1 )(λ i) = p ( m i – 1 )(λ i)

Les exposants entre parenthèses indiquent l’ordre de dérivation par rapport à λ i .


Rappelons également que les valeurs propres sont les racines de l’équation
caractéristique de la matrice A, soit det ( A – λI ) = 0 .

4.1.12 Exemple

• Soit: A = 0 1
0 0

• Valeurs propres de A:

det ( Ah – λI ) = det – λ h = 0 ⇒ λ 2 = 0 ⇒ λ 1 = λ 2 = 0 ≡ λ
0 –λ

• Calcul de e Ah :

e Ah = α 0 A + α 1 I (4.7)

eλ = α0 λ + α1 (4.8)

d λ d
e = ( α λ + α1 ) → eλ = α0 (4.9)
dλ dλ 0

65
SOLUTION DE L’ÉQUATION D’ÉTAT LINÉAIRE ET STATIONNAIRE

Pour λ = 0 (4.9) → α 0 = 1

(4.8) → 1 = 0λ + α 1 → α 1 = 1

dans (4.7) e Ah = A + I

e Ah = 1 h
0 1

4.1.13 Exemple de l’entraînement électrique


Considérons une application où seule la position angulaire θ(t) de
l’entraînement est mesurée. Cette position constitue donc l’unique sortie
disponible. L’entrée u est la tension d’alimentation. Les variables d’état sont
x 1(t) = θ(t) et x 2(t) = ω(t) . Le modèle d’état a été élaboré au paragraphe 2.2.3.
Avec le nouveau choix de sortie effectué, il prend la forme:

x· (t) = 0 1 x(t) + 0 u(t)


0 a b
A B

y(t) = 1 0 x(t)
C
avec:

1 k2
a = – --- ⎛ ----- + f⎞ = – 5 [ s – 1 ]
J⎝ R ⎠
k rad
b = ------ = 1 ---------
JR Vs 2
Le modèle d’état de l’entraînement vu au travers de convertisseurs AD et
DA est maintenant déterminé pour une période d’échantillonnage h = 25 [ms].
Pour ce faire, il faut d’abord calculer l’exponentielle de la matrice A.

e At = L –1 [ ( sI – A )–1 ]

( sI – A ) = s –1
0 s–a

66
DISCRÉTISATION

1 1
--- ------------------
( sI – A )
–1
= s s(s – a) 1
= ------------------ s–a 1
1 s(s – a) 0 s
0 -----------
s–a

1 1 1 1
avec: ------------------ = --- ----------- – ---
s(s – a) a s–a s

1 1
– 1 [ ( sI – A ) – 1 ] = 1 – --- + --- e at
L a a
0 e at

Les matrices de l’équation d’état discrétisée sont alors:

1 ah
1 --- ( e – 1 ) 1 0.0235
Φ = e Ah = a =
0 0.8825
0 e ah

h h
⎛– 1 1
--- + --- e aη⎞ dη
h ∫0 dη ∫0 ⎝ a a ⎠
Γ = ∫0 e Aη dηB =
h
B
0 ∫0 eaη dη

h 1 b⎛ 1 1
h – --- + ----- ( e ah – 1 ) – --- h – --- e ah + ---⎞
Γ =
a a2 0 = a⎝ a a⎠ = 0.0003
1 b b ah 0.0235
0 --- ( e ah – 1 ) --- ( e – 1 )
a a

Finalement:

x(k + 1) = 1 0.0235 x(k) + 0.0003 u(k)


0 0.8825 0.0235

y(k) = 1 0 x(k)

67
SOLUTION DE L’ÉQUATION D’ÉTAT LINÉAIRE ET STATIONNAIRE

4.1.14 Exemple de la cuve de mélange

Soit la cuve de mélange décrite au paragraphe 3.3.5 et son modèle linéarisé


obtenu au paragraphe 3.3.6:

x1 1 1
x̃· 1 1 K ---
- x̃ 1 ũ 1
= – ----- 2 S- ---- 0 + ( c1 – x2 ) ( c2 – x2 )
x̃· 2 x1 x̃ 2 --------------------
- --------------------
- ũ 2
0 u1 + u2 x1 x1

ỹ 1 1 x̃ 1
--- 0
= S
ỹ 2 x̃ 2
0 1

Le point de fonctionnement satisfait les équations:

x
0 = u 1 + u 2 – K ----1-
S

1
0 = ----- { ( c 1 – x 2 )u 1 + ( c 2 – x 2 )u 2 }
x1

1
y 1 = --- x 1
S
y2 = x2

Les valeurs numériques sont:

c 1 = 1 et c 2 = 2 kmole/m3; S = 1 m2; K = 0.02 ; x 1 = 1 m3;

x 2 = 1.25 kmole/m3; u 1 = 0.015 m3/s et u 2 = 0.005 m3/s

Pour simplifier les notations, écrivons le modèle analogique linéarisé sous


la forme:

x̃· 1 a 0 x̃ 1 + 1 1 ũ 1
=
·x̃ 0 b x̃ 2 p q ũ 2
2

68
DISCRÉTISATION

avec:

1K x 1
a = – ----- ---- ----1- et b = – ----- ( u 1 + u 2 )
x1 2 S x1

( c1 – x2 ) ( c2 – x2 )
p = --------------------- et q = ---------------------
x1 x1

Le modèle discret est aisément obtenu en exploitant le théorème de


Cayley-Hamilton:
Ah
e = α1 A + α2 I
λ1 h
e = α1 λ1 + α2
λ2 h
e = α1 λ2 + α2

La matrice A étant diagonale, nous trouvons directement λ 1 = a et λ 2 = b .


ah bh ah ah
e –e be – ae
Après obtention de α 1 = ---------------------- et α 2 = – ----------------------------- et substitution, il
a–b a–b
vient:

ah
Φ = e
Ah
= e 0 ≡ α 0
0 e
bh 0 β

h 1 ah 1 ah
--- ( e – 1 ) --- ( e – 1 )
a a r r
Γ = ∫ eAη dη B = p bh q bh

s v
0 --- ( e – 1 ) --- ( e – 1 )
b b

69
SOLUTION DE L’ÉQUATION D’ÉTAT DISCRÈTE ET STABILITÉ

4.2 Solution de l’équation d’état discrète et stabilité


L’analyse et la synthèse d’une commande pour un système multivariable
sont supportées par des outils mathématiques puissants, pour autant que le
système considéré soit représenté par un modèle linéaire et stationnaire. De plus,
la commande est généralement implantée sur un calculateur ayant une vision
discrète de l’installation physique à régler. Grâce aux opérations successives de
linéarisation et de discrétisation, la forme adéquate suivante est ainsi obtenue:

x ( k + 1 ) = Φx(k) + Γu(k) (4.10)

y(k) = Cx(k) + Du(k) (4.11)


La solution de ce système d’équations aux différences s’obtient de manière
récurrente:

x(k 0 + 1) = Φx(k 0) + Γu(k 0)

x(k 0 + 2) = Φx(k 0 + 1) + Γu(k 0 + 1)


= Φ [ Φx(k 0) + Γu(k 0) ] + Γu(k 0 + 1)

x(k 0 + 2) = Φ 2 x(k 0) + ΦΓu(k 0) + Γu(k 0 + 1)

x 0(k + 3) = Φx(k 0 + 2) + Γu(k 0 + 2)


= Φ { Φ 2 x(k 0) + ΦΓu(k 0) + Γu(k 0 + 1) } + Γu(k 0 + 2)

x(k 0 + 3) = Φ 3 x(k 0) + Φ 2 Γu(k 0) + ΦΓu(k 0 + 1) + Γu(k 0 + 2)

et ainsi de suite, de sorte que nous obtenons:


k–1

x(k) = Φ k – k 0 x(k 0) + ∑ Φ k – i – 1 Γu(i) (4.12)


i = k0

4.2.1 Matrice de transfert discrète


L’application de la transformation en “z” des équations (4.10) et (4.11)
donne, pour des conditions initiales nulles:

zX(z) – ΦX(z) = ΓU(z)

Y(z) = CX(z) + DU(z)

70
DISCRÉTISATION

ou, sous forme plus compacte:

[ zI – Φ ]X(z) = ΓU(z)
Y(z) = CX(z) + DU(z)

ainsi: X(z) = [ zI – Φ ] – 1 ΓU(z)

et: Y(z) = { C [ zI – Φ ] – 1 Γ + D }U(z) .

Finalement H(z) = C [ zI – Φ ] – 1 Γ + D est la matrice de transfert discrète


qui est de dimension p × r .

L’algorithme de Leverrier discret permet de déterminer aisément l’inverse


de la matrice [ zI – Φ ] .

4.2.2 Algorithme de Leverrier discret

L’algorithme de Leverrier décrit au paragraphe 4.1.10 peut être écrit sans


autre en remplaçant l’argument sI – A par zI – Φ . Ainsi:

H0 z n – 1 + H1 z n – 2 + H2 zn – 3 + … + Hn – 1
– 1
[ zI – Φ ] = ----------------------------------------------------------------------------------------------------------- (4.13)
det [ zI – Φ ]

Le déterminant det [ zI – Φ ] = z n + a 1 z n – 1 + a 2 z n – 2 + … + a n est


polynôme caractéristique de Φ . Les valeurs de z qui annulent ce polynôme
caractéristique sont les valeurs propres de Φ . De par la forme de l’équation (4.13),
on constate que ces valeurs propres jouent le même rôle dans la matrice de
transfert que les pôles dans une fonction de transfert. Les matrices H i sont de
dimension n × n . Elles se calculent séquentiellement à partir de H 0 = I :

a 1 = – tr [ ΦH 0 ] H 1 = ΦH 0 + a 1 I
1
a 2 = – --- tr [ ΦH 1 ] H 2 = ΦH 1 + a 2 I
2
1
a 3 = – --- tr [ ΦH 2 ] H 3 = ΦH 2 + a 3 I
3
#
1
a n – 1 = – ------------ tr [ ΦH n – 2 ] H n – 1 = ΦH n – 2 + a n – 1 I
n–1
1
a n = – --- tr [ ΦH n – 1 ] H n = ΦH n – 1 + a n I = 0
n

71
SOLUTION DE L’ÉQUATION D’ÉTAT DISCRÈTE ET STABILITÉ

4.2.3 Stabilité
Comme vu précédemment, la sortie d’un système multivariable peut
s’exprimer sous la forme:

Y(z) = H(z)U(z) (4.14)


avec:

H(z) = C [ zI – Φ ] – 1 Γ + D
ou encore, selon le formalisme de Leverrier:

Cadj [ zI – Φ ]Γ
H(z) = ------------------------------------ + D (4.15)
det [ zI – Φ ]
L’équation (4.14) représente, sous forme compacte, la relation:

Y 1(z) H 11(z) H 12(z) … H 1r(z) U 1(z)


Y 2(z) H 21(z) H 22(z) … H 2r(z) U 2(z)
=
# # # % # #
Y p(z) H p1(z) H p2(z) … H pr(z) U r(z)

Selon (4.15), chaque fonction de transfert H ij a les mêmes pôles qui


correspondent aux valeurs propres de Φ . H ij est la fonction de transfert du
système entre l’entrée j et la sortie i lorsque toutes les autres entrées sont nulles.
Le système est stable si toutes ces fonctions de transfert sont stables, c’est-à-dire
si toutes les valeurs propres de Φ sont dans le cercle unité. Il s’agit d’une
condition de stabilité suffisante, mais pas nécessaire. En effet, certains éléments
de la matrice H peuvent exhiber des zéros et des pôles identiques qui se
simplifient.

72
DISCRÉTISATION

4.2.4 Exemple: Double intégrateur


La matrice de transfert du double intégrateur introduit au paragraphe 4.1.8
est obtenue de la manière suivante:

adj [ zI – Φ ] zI + H 1
[ zI – Φ ] – 1 = ---------------------------- = --------------------------------
det [ zI – Φ ] z 2 + a1 z + a2

Par Leverrier:

a 1 = trΦ = – 2 H1 = 1 h – 2 1 0 = –1 h
0 1 0 1 0 –1

1 1 ⎧ ⎫ 1
a 2 = – --- tr [ ΦH 1 ] = – --- tr ⎨ 1 h – 1 h ⎬ = – --- tr – 1 0 = 1
2 2 ⎩ 0 1 0 –1 ⎭ 2 0 –1

1
[ zI – Φ ] – 1 = -------------------------- z – 1 h
z 2 – 2z + 1 0 z – 1

1
h 2 ⁄ 2 ------------------
H(z) = C [ zI – Φ ] – 1 Γ + D = 1 0 z – 1 h -
0 z–1 ( z – 1 ) 2
h

2 1 ( z – 1 )h 2 ⁄ 2 + h 2 h2 z + 1
H(z) = z – 1 h h ⁄ 2 ------------------- = ----------------------------------------- = ----- -------------------
h (z – 1)
2 ( z – 1 )2 2 ( z – 1 )2

soit le même résultat que celui obtenu en appliquant la relation bien connue dans
le cas SISO:

( 1 – z –1 ) Z ⎧⎨ L–1 G(s) ⎫
----------- ⎬
s ⎭

73
RÉSUMÉ

4.3 Résumé
4.3.1 Démarche de discrétisation

x· (t) = f [ x(t), u(t) ]


u(t) y(t)
y(t) = g [ x(t), u(t) ]

Linéarisation
u
y
u(t) - · + y(t)
x̃ ( t ) = Ax̃(t) + Bũ(t)
ũ y (˜t ) = Cx̃(t) + Dũ(t) ỹ

Discrétisation

(adjonction des AD et DA)


u y

u(k) - x̃ ( k + 1 ) = Φx̃(k) + Γũ(k) + y(k)

ũ ỹ ( k ) = Cx̃(k) + Dũ(k) ỹ
Figure 4-2 Représentation d’état discrète d’un système réel vu au travers de
convertisseurs AD et DA.

Stabilité dans un domaine proche du point de fonctionnement: Valeurs


propres de Φ dans le cercle unité!

74
DISCRÉTISATION

4.3.2 Alternatives de discrétisation

Modèle linéaire Modèle non linéaire


x· (t) = f [ x(t), x(t) ]
y(t) = g [ x(t), x(t) ]

Linéarisation (pt de fonct.)


x· (t) = Ax(t) + Bu(t) x̃·(t) = Ax̃(t) + Bũ(t)
y(t) = Cx(t) + Du(t) ỹ(t) = Cx̃(t) + Dũ(t)

Discrétisation exacte
x(k + 1) = Φx(k) + Γu(k) x̃·(k + 1) = Φx̃(k) + Γũ(k)
y(k) = Cx(k) + Du(k) ỹ(k) = Cx̃(k) + Dũ(k)

2 2 3 3
Ah A h A h Aihi
Φ = e ≡ I + Ah + -----------
- + -----------
- + … + ---------- + …
2! 3! i!
h
Ah 2 A 2 h 3 Aihi + 1
Γ = ∫ e Aη dη B = Ih + --------- + ------------ + … + ------------------ + … B
2! 3! ( i + 1 )!
0

Calcul de l’exponentielle de matrice


Aihi Ah Ah Ah Ah
Ψ = ∑ ----------------- ≅ I + ------- ⎛ I + ------- ⎛ … ------------- ⎛ I + -------⎞ ⎞ ⎞
( i + 1 )! 2 ⎝ 3 ⎝ N – 1⎝ N ⎠⎠⎠
i=0

Φ = I + Ahψ et Γ = ψhB

e At = L – 1 [ ( sI – A ) – 1 ] , inversion par Leverrier


Cayley-Hamilton: α0 A n – 1 + α1 A n – 2 + … + αn – 1 I

75
EXERCICES

4.4 Exercices
4.4.1 Retard
Soit le système analogique décrit par l’équation différentielle:

y· (t) = u(t – τ)
Donner le modèle d’état discret de ce système vu au travers de
convertisseurs AD et DA. Considérer le cas où le retard τ est égal à une
période d’échantillonnage h (u est l’entrée et y la sortie).
Utiliser l’approximation d’Euler de la dérivée pour discrétiser
l’équation différentielle. Comparer les deux solutions obtenues et
justifier votre constatation.

4.4.2 Discrétisation de l’entraînement


Soit le moteur à courant continu dont la dynamique est décrite par les
équations différentielles:
d
u(t) = kω(t) + Ri(t) + L i(t)
dt
d
J ω(t) = ki(t) – fω(t)
dt

Pour l’application considérée, l’inductance L est prise en compte. L’entrée


du système est la tension d’alimentation u(t) . Les grandeurs i(t) et ω(t) sont res-
pectivement le courant d’induit et la vitesse angulaire. J , R , ¾, k et f sont des
paramètres physiques.
Déterminer la représentation d’état de ce système vu au travers de
convertisseurs AD & DA. Seule la vitesse angulaire ω(t) est mesurée.
Comparer une discrétisation approximative par Euler et une discrétisa-
tion exacte (exploiter à cet effet le théorème de Cayley-Hamilton).

4.4.3 Matrice de transfert


Le modèle d’état discret d’un système dynamique est le suivant:

x(k + 1) = 0 1 x(k) + 0 1 u(k)


1 0 10
y(k) = x(k)
Déterminer la matrice de transfert de ce système.

76
DISCRÉTISATION

4.5 Solutions des exercices


4.5.1 Solution retard

Le changement de variable v(t) = u(t – h) peut s’écrire au temps t = kh


sans aucune approximation de la façon suivante:

v(kh) = u(kh – h) , ou de manière simplifiée v(k) = u(k – 1)

Après observation de l’équation différentielle, la variable d’état


x(t) = y(t) est choisie. L’équation d’état se présente par conséquent sous la
forme: x· (t) = y· (t) = v(t) = 0x(t) + 1v(t) . Ainsi, les matrices standard sont
A = 0 et B = 1 .

La discrétisation de cette équation selon la technique exacte qui tient


compte des convertisseurs AD et DA donne:

x(k + 1) = Φx(k) + Γv(k)

h h
Ah 0 0η
avec Φ = e = e = 1 et Γ = ∫0 e dη = ∫ 0 dη = h
Ainsi y(k + 1) = y(k) + hv(k) , ou encore y(k + 1) = y(k) + hu(k – 1) .

Un décalage de cette dernière expression donne:

y(k + 2) = y(k + 1) + hu(k)

Il s’agit d’une équation aux différences d’ordre deux qui représente le


système discrétisé. Pour l’exprimer sous forme de modèle d’état, on pose
x 1(k) = y(k) et x 2(k) = y(k + 1) . Ceci conduit à:

x 1(k + 1) = y(k + 1) = x 2(k)

x 2(k + 1) = y(k + 2) = x 2(k) + hu(k)

Quant à l’équation de sortie, il s’agit de y(k) = x 1(k)

Le résultat avec l’approximation d’Euler est le même! en effet, l’intégrale


d’une commande constante est une rampe (c’est également une rampe qui est
considérée par Euler).

77
SOLUTIONS DES EXERCICES

4.5.2 Solution discrétisation de l’entraînement

x1 = ω
Etat:
x2 = i

Sortie: y = ω

x· 1 –f ⁄ J k⁄J x1 0 u et
= +

2 –k ⁄ L –R ⁄ L x2 1⁄L

x1
y = 1 0 + 0 u
x2

Discrétisation par Euler:

x 1(k + 1) 1 – hf ⁄ J hk ⁄ J x 1(k) 0
= + u(k)
x 2(k + 1) – hk ⁄ L 1 – hR ⁄ L x 2(k) h⁄L

Pour h = 1 ms, L = 0.01 , J = 0.001 ,

k = 0.1 , f = 0.01 et R = 1 :

x 1(k + 1) 0.99 0.1 x 1(k) 0 u(k)


= +
x 2(k + 1) – 0.01 0.9 x 2(k) 0.1

4.5.3 Solution matrice de transfert


Le modèle d’état discret d’un système dynamique est le suivant:

x(k + 1) = 0 1 x(k) + 0 1 u(k)


1 0 10
y(k) = x(k)
La matrice de transfert est donnée par:

–1 1 1
H(z) = [ zI – φ ] Γ = -------------- z 1 0 1 = -------------- 1 z
2 2
z –1 1 z 1 0 z –1 z 1

78
Chapitre 5
COMMANDE PAR PLACEMENT DE VALEURS
PROPRES

5.1 Principe de contre-réaction


Nous nous limiterons dans ce chapitre au cas de systèmes stationnaires qui
ne possèdent qu’une seule entrée (SISO ou SIMO). De façon générale, la
dynamique est décrite autour du point de fonctionnement. Il est possible de se
ramener si nécessaire au cas d’une dynamique exprimée selon les vraies grandeurs
x, u et y en annulant les grandeurs nominales x, u et y .

x̃(k + 1) = Φx̃(k) + gũ(k)


ỹ(k) = Cx̃(k) + Dũ(k)

La contre-réaction étudiée dans ce chapitre est choisie proportionnelle à


l’écart de l’état par rapport à l’état nominal. La commande correspond donc à une
somme pondérée des écarts de l’état par les gains K i de la commande:

x̃ 1
x̃ 2
ũ = – Kx̃ = – K 1 K 2 … K n
#
x̃ n

Une commande d’état agit en quelque sorte comme un régulateur “PD”


généralisé. Le cas de la commande d’un entraînement électrique, où les deux
·
variables d’état sont x̃ 1 = θ̃ et x̃ 2 = θ̃ , illustre ce propos. En effet, la contre-
réaction proposée conduit à une commande similaire à celle issue d’un régulateur
PD standard:

79
PRINCIPE DE CONTRE-RÉACTION

θ˜ ·
ũ(k) = – K 1 K 2 · = K 1 θ˜ (k) + K 2 θ˜ (k) = u P(k) + u D(k)
˜
θ

5.1.1 Dynamique en boucle fermée


L’adjonction de la commande d’état dans la description de la dynamique
du système à régler donne un nouveau modèle d’état, régissant la dynamique du
système en boucle fermée. L’ordre de ce système est le même que celui du système
à régler.

x̃(k + 1) = Φx̃(k) + g [ – Kx̃(k) ]

x̃(k + 1) = [ Φ – gK ] x̃(k)




Φ bf

La dynamique du système en boucle fermée est régie par les valeurs


propres de la matrice Φ bf . Ces valeurs propres sont les solutions de l’équation
caractéristique α c(λ) :

α c(λ) = det [ λI – Φ bf ] = det [ λI – Φ + gK ] = 0

Les valeurs propres de Φ dépendent de la constitution physique du


système à régler. Elles ne peuvent pas être changées.
Les valeurs propres de Φ bf dépendent du système à régler et du
régulateur. Comme Φ bf possède n valeurs propres et que le régulateur est formé
de n gains, toutes ses valeurs propres ( λ i pour i = 1, …, n ) peuvent être choisies
librement. Un comportement dynamique donné est donc imposé en boucle
fermée. Ainsi:

α c(λ) = det [ λI – Φ + gK ] = ( λ – λ 1 ) ( λ – λ 2 )… ( λ – λ n ) = 0












inconnu connu
n n–1
α c(λ) = λ + α 1 λ + … + αn = 0

La solution cherchée est obtenue en identifiant terme à terme les


puissances successives de λ dans les deux membres de cette dernière équation.
Cette comparaison fournit n équations qui permettent de déterminer les n
inconnues K i , pour i = 1, …, n .

80
COMMANDE PAR PLACEMENT DE VALEURS PROPRES

Si le système bouclé est écarté de son état nominal (à cause de conditions


initiales quelconques ou sous l’effet d’une perturbation) et que les valeurs propres
de Φ bf ont été choisies dans le cercle unité, le système retourne
asymptotiquement à l’état nominal, c’est-à-dire en x̃(k) = 0 , avec la dynamique
suivante:

z [ X̃(z) – x̃(0) ] = Φ bf X̃(z)

X̃(z) = [ zI – Φ bf ] – 1 x̃ ( 0 )z

L’inverse de matrice qui apparaît dans cette dernière expression s’obtient


au moyen de l’algorithme de Leverrier. Il s’agit d’une matrice de fractions
rationnelles en z , dont les dénominateurs sont tous égaux et valent det [ zI – Φ bf ] ,
soit α c(z) . Ce sont donc bien les valeurs propres de Φ bf qui régissent la
dynamique du système en boucle fermée.

5.1.2 Exemple: Double intégrateur


Le modèle d’état discret du double intégrateur a été obtenue au paragraphe
4.2.4. Il est caractérisé par les matrices:

Φ = 1 h ; Γ = h2 ⁄ 2
0 1 h

Comme ce système est d’ordre deux, il est possible d’imposer en boucle


fermée un comportement oscillant décrit par une fonction de transfert du même
ordre:
ω o2
K ----------------------------------------- ( K est ici le gain statique du système à régler)
s 2 + 2ζω 0 s + ω 02

Les pôles de ce système analogique sont s 1, 2 = – ω 0 ( ζ ± ζ 2 – 1 ) , et


leur équivalent discret z 1, 2 = e hs 1, 2 , où h est la période d’échantillonnage.

Au stade de la conception, certains critères doivent être spécifiés. En


particulier, des considérations liées à l’application considérée peuvent nécessiter
une limitation de l’amplitude du 1er dépassement. Dans cet exemple, nous
souhaitons que cette valeur n’excède pas 12.3%. Pour satisfaire cette
spécification, il faut choisir ζ = 0.5 . Généralement, la rapidité de la réponse
indicielle est également fixée en relation avec l’application. Dans cet exemple,
l’instant d’apparition du premier maximum est choisi comme mesure de cette

81
PRINCIPE DE CONTRE-RÉACTION

rapidité et imposé égal à une seconde ( t p = 1 ), ainsi ω 0 = 3.6 . Finalement, les


pôles analogiques correspondants sont s 1, 2 = – 1.8 ± 3.12j et leur équivalent
discret z 1, 2 = 0.8 ± 0.25j , pour une période d’échantillonnage h = 0.1
seconde.
Dans ce cas monovariable, les notions de valeurs propres et de pôles sont
équivalentes. Par conséquent, l’équation caractéristique imposée est la suivante:

det [ zI – Φ + gK ] = ( z – 0.8 – 0.25j ) ( z – 0.8 + 0.25j )


= z 2 – 1.6z + 0.7 = 0

⎧ 2 ⎫
det ⎨ z 1 0 – 1 h + h ⁄ 2 K 1 K 2 ⎬
⎩ 0 1 0 1 h ⎭

z – 1 + K1 h 2 ⁄ 2 – h + K2 h 2 ⁄ 2
det
hK 1 z – 1 + hK 2

h2 ⎞
⎛ z – 1 + ----- h2
K 1 ( z – 1 + hK 2 ) – hK 1 ⎛ ----- K 2 – h⎞ = 0
⎝ 2 ⎠ ⎝2 ⎠

h2 h2 h3
z 2 – z + hK 2 z – z + 1 + hK 2 + ----- K 1 z – ----- K 1 + ----- K 1 K 2
2 2 2
h 2
– hK 1 ----- K 2 + h 2 K = 0
2

h2 h2
z 2 + hK 2 + ----- K 1 – 2 z + ----- K 1 – hK 2 + 1 = 0
2 2

h2
hK 2 + ----- K 1 – 2 = – 1.6
2
Ainsi:
h2
----- K 1 – hK 2 + 1 = 0.7
2

0.1
K 1 = ------- = 10
h2
et finalement:
0.35
K 2 = ---------- = 3.5
h

82
COMMANDE PAR PLACEMENT DE VALEURS PROPRES

5.2 Synthèse constructive


L’exemple précédent a mis en évidence les problèmes liés à l’obtention du
gain de la contre-réaction d’état. Il est en effet nécessaire de développer le
déterminant de façon algébrique, puis de regrouper les termes relatifs aux
différentes puissances de z et finalement de les identifier. Cette méthode est
difficilement applicable pour des systèmes d’ordre supérieur à deux. Il existe
néanmoins une alternative intéressante, basée sur l’exploitation de la forme
canonique W (annexe A). Selon cette technique, la synthèse du régulateur est
effectuée sur la base d’une représentation d’état artificielle du système à régler
obtenue par la transformation:

e nT Φ n – 1
e nT Φ n – 2
w̃ = Px̃ avec: P =
#
e nT I
T
où e n est la dernière ligne de l’inverse de la matrice de gouvernabilité G (A.4):

G = [ IΓ ΦΓ … Φn – 1Γ ]

Ainsi: w̃(k + 1) = Φ w w̃(k) + Γ w ũ(k)

–a1 –a2 … –an 1


avec: Φ w = PΦP – 1 = 1 0 … 0 ; Γ w = PΓ = 0
# # #
0 … 1 0 0

Les a i sont les coefficients du polynôme caractéristique du système à


régler.
On choisit: ũ = – K 'w̃ w̃(k + 1) = ( Φ w – Γ w K ' )w̃(k)

– a 1 – K 1' – a 2 – K 2' … – a n – K n'

Φ wbf = Φ w – Γ w K ' = 1 0 … 0
# #
0 … 1 0

83
SYNTHÈSE CONSTRUCTIVE

Le polynôme caractéristique de Φ wbf qui régit la dynamique du système


en boucle fermée est:

α c(λ) = λ n + ( a 1 + K 1' )λ n – 1 + … + a n + K n' = 0

Le choix des valeurs propres désirées en boucle fermée conduit quant à lui
au polynôme caractéristique:

α c(λ) = λ n + α 1 λ n – 1 + α 2 λ n – 2 + … + α n = 0

Les gains de contre-réaction des états artificiels sont finalement donnés


par les simples expressions:

K 1' = α 1 – a 1
K 2' = α 2 – a 2
#
K n' = α n – a n

Comme l’implantation réelle de la commande est basée sur les variables


d’état physiques, il faut convertir les gains obtenus par une transformation
inverse:

ũ = – K 'w̃ = – K 'P x̃ = – Kx̃




5.2.1 Résumé de la marche à suivre


- Calculer numériquement les coefficients a i de l’équation
caractéristique du système selon l’expression det [ zI – Φ ] = 0 .
- Calculer numériquement les coefficients α i de l’équation
caractéristique en fonction des valeurs propres choisies en boucle
fermée selon l’expression ( λ – λ 1 ) ( λ – λ 2 )… ( λ – λ n ) = 0 .
- La différence entre les coefficients des deux équations caractéristiques
(boucle ouverte et boucle fermée) donne les gains K ' .
- Ramener ces gains dans le vrai domaine de travail en les multipliant par
la matrice P qui est construite sur la base de l’inverse de la matrice de
gouvernabilité.

84
COMMANDE PAR PLACEMENT DE VALEURS PROPRES

5.3 Formule d’Ackermann


La procédure décrite précédemment pour déterminer le gain de la
commande d’état peut se réduire à une seule relation, appelée la formule
d’Ackermann. En effet,

K = K 'P = α1 – a1 α2 – a2 … αn – an P (5.1)

Les coefficients a i sont ceux du polynôme caractéristique du système à ré-


gler α(λ) . Les α i sont ceux du polynôme caractéristique du système complet en
boucle fermée α c(λ) .

Le membre de droite de l’équation (5.1) peut être scinder en deux parties:

K = α1 α2 … αn P + –a1 –a2 … –an P











e nT Φ n P – 1
–1
Le terme sous l’accolade est la première ligne de la matrice PΦP
T n –1
(annexe A, relation A.8), donc égal à e n Φ P . Le deuxième membre de cette
T n
équation se résume par conséquent à un facteur e n Φ . Le vecteur de gain peut
donc être obtenu selon:

e nT Φ n – 1
e TΦn – 2 T n
K = α1 α2 … αn n + en Φ
#
e nT I

= e nT Φ n + α 1 e nT Φ n – 1 + α 2 e nT Φ n – 2 + … + α n e nT I

= e nT Φ n + α1 Φ n – 1 + α2 Φn – 2 + … + αn I



















1 α c(Φ)

Il s’agit du produit de la dernière ligne de l’inverse de la matrice de


gouvernabilité 1 et d’un polynôme matriciel dont les coefficients sont ceux du

85
FORMULE D’ACKERMANN

polynôme caractéristique choisi en boucle fermée (annexe A, paragraphe A.1.2),


soit α c(Φ) . Ainsi:

–1
K = 0 … 0 1 G α c(Φ) (5.2)

–1
n–1
K = 0 … 0 1 g Φg … Φ g α c( Φ) (5.3)

Si G est inversible, on dit que le système est gouvernable.

5.3.1 Exemple: Double intégrateur


On souhait imposer en boucle fermée la dynamique suivante:

α c(λ) = det [ λI – Φ bf ] = λ 2 – 1.6λ + 0.7 = 0

Donc avec α 1 = – 1.6 et α 2 = 0.7 . Il vient:

G = g Φg , donc: G = h 2 ⁄ 2 3h 2 ⁄ 2
h h

1
G – 1 = – ----- h – 3h 2 ⁄ 2 = -----
1 – 1 3h ⁄ 2
h3 –h h2 ⁄ 2 h2 1 –h ⁄ 2

1
K = K 1 K 2 = ----- 0 1 – 1 3h ⁄ 2 α (Φ)
c
h2 1 –h ⁄ 2

2
α c(Φ) = 1 h – 1.6 1 h + 0.7 1 0
0 1 0 1 0 1

= 1 2h + – 1.6 – 1.6h + 0.7 0 = 0.1 0.4h


0 1 0 – 1.6 0 0.7 0 0.1

1 1
0.1 0.4h = -----
K = ----- 1 – h
--- 0.1
0.1
0.4h – ------- h
h2 2 0 0.1 h2 2

= 0.1 0.35 = 10 3.5


------- ----------
h2 h

86
COMMANDE PAR PLACEMENT DE VALEURS PROPRES

5.4 Comportements imposés en boucle fermée


5.4.1 Imposition d’une réponse pile

Cherchons le gain K qui permet de ramener un système perturbé à son


point d’équilibre en n périodes d’échantillonnage.

Perturbation: x(0) = x 0 (x̃(0) = x 0 )

Ramener à: x(n) = 0 (x̃(n) = 0 → x(n) = x)

La séquence de commandes nécessaires est donnée par (4.12):

u(n – 1)
–1
u(n – 2) = Γ ΦΓ … Φ n – 1 Γ x(n) – Φ n x 0
#


















u(0) G –1 –Φ n x0

Dans notre cas:

En multipliant de part et d’autre par 0 … 0 1 , nous obtenons u(0) :

u(n – 1)
u(0) = 0 … 0 1 u(n – 2) = – 0 … 0 1 G – 1 Φ n x 0
#
u(0)

De plus, nous avons choisi: u = – Kx donc u(0) = – Kx(0)

– Kx(0) = – 0 … 0 1 G – 1 Φ n x 0

d’où:

K = 0 … 0 1 G –1 Φ n

D’après Ackermann, ceci correspond à α c ( Φ ) = Φ n . Par conséquent,


α c(λ) = λ n = 0 . Tous les pôles se trouvent au centre du cercle unité. Attention
toutefois à l’amplitude des commandes qui peut en résulter.

87
COMPORTEMENTS IMPOSÉS EN BOUCLE FERMÉE

5.4.2 Imposition d’un pôle dominant


La réponse indicielle d’un système d’ordre un est choisie comme réponse
en boucle fermée.
K
G(s) = --------------
1 + sτ
Le pôle dominant s 1 = – 1 ⁄ τ est sélectionné. Les autres pôles sont placés
au centre du cercle unité. Les pôles discrets correspondants sont donnés par:
si h
zi = e
4
u
ω max

0
0 τ 1 2 3 4 5
Temps en [s]

5.4.3 Imposition d’une paire de pôles complexes conjugués dominants


La réponse indicielle d’un système d’ordre deux est choisie comme répon-
se en boucle fermée.
K 1 1 2
G(s) = -------------------------------------
- avec ω 0 = --- et s 1, 2 = – --- ( ζ ± ζ – 1 )
2 2
τ s + 2ζτs + 1 τ τ

Les deux pôles s 1, 2 sont imposés. Les autres pôles sont placés au centre du
cercle unité.
ζπ
– ------------------
2
1–ζ
KUe
y(t)
KU

u(t)
U
πτ
t p = ------------------
2
1–ζ t
tp

88
COMMANDE PAR PLACEMENT DE VALEURS PROPRES

5.4.4 Filtre de Bessel


Phase la moins variable possible! (pas de déformation des signaux) .
Fréquence de coupure (bande passante en B.F.) ω n .

0.8 n=1
2 ωn = 1
3
0.6 4
5

0.4

0.2

0
0 1 2 3 4 5 6 7 8 9 10
K K
H N(s) = -------------------------- = ------------- B N(0)
B N(s)
∏ ( s – si )

B 0(s) = 1
B 1(s) = s + 1
2
B N(s) = ( 2N – 1 )B N – 1(s) + s B N – 2(s)

n K pôles si

1 1 -1
2 1 -0.866 ± 0.5i
3 1 -0.7456 ± 0.7114i, -0.9416
4 1 -0.9048 ± 0.2709i, -0.6572 ± 0.8302i
5 1 -0.5906 ± 0.9072i, -0.8516 ± 0.4427i, -0.9264

89
IMPLANTATION DE LA COMMANDE D’ÉTAT

5.5 Implantation de la commande d’état


Contrairement à la conception d’une commande classique de type PID par
la méthode de Ziegler-Nichols, la conception d’une commande d’état nécessite la
connaissance du modèle du système à régler. Une fois ce modèle à disposition, il
peut être exploité de plusieurs façons pour améliorer le comportement dynamique
de l’installation, ou pour simplifier la tâche de la commande. Il est par exemple
naturel d’utiliser le modèle pour élaborer une commande a priori, apte à amener
en boucle ouverte le système à son point de fonctionnement. Par ce moyen,
l’adjonction de la commande ne sert plus qu’à compenser l’effet de perturbations
éventuelles, ou à corriger l’imprécision de la commande a priori, consécutive à
l’inexactitude inévitable du modèle (structure ou valeur des paramètres). Ainsi, le
schéma fonctionnel traditionnel d’une commande d’état se rencontre
habituellement sous la forme représentée à la figure 5-1.

Commande a priori u(k)


+
Valeurs A Système
nominales –K D physique
y(k) ũ(k) u(k) u(t) y(t)

x̃(k) x(k) x(t)


A
- D

x(k)

Figure 5-1 Schéma fonctionnel d’une commande d’état.

Avec une telle structure, le réglage et l’asservissement sont assurés


simultanément. En effet, la contre-réaction maintient l’état autour de sa valeur
nominale (réglage), tandis que les valeurs nominales sont générées en fonction des
sorties désirées (asservissement).

Bien que le système physique puisse être non linéaire, le modèle


dynamique exploité pour la conception de la commande ũ(k) = – Kx̃(k) est:

x̃(k + 1) = Φx̃(k) + gũ(k)


ỹ(k) = Cx̃(k) + Dũ(k)

Dans le cas de systèmes non linéaires, les valeurs nominales doivent être
constantes afin que les matrices Φ, g, C et D le soient également. Il s’agit donc
d’asservissement autour d’un point de fonctionnement et non du suivi de

90
COMMANDE PAR PLACEMENT DE VALEURS PROPRES

trajectoires nominales. Dans ce dernier cas où le modèle est évolutif, la stabilité


n’est pas forcément garantie par un choix de valeurs propres dans le cercle unité.
Toute la partie du schéma située à gauche des convertisseurs AD & DA est
réalisée par voies algorithmiques sur un calculateur. Il faut noter que les sorties
évoluent en boucle ouverte, seul l’état est réglé. Ceci peut poser des problèmes si
les matrices C et D sont mal connues. En pratique néanmoins, D est
généralement nulle et les variables d’état peuvent souvent être choisies afin que la
matrice C ne présente que quelques éléments égaux à l’unité sur sa diagonale (les
sorties sont ainsi un sous-ensemble des variables d’état). De plus, l’état est
souvent reconstruit ou moyen d’un observateur à partir des sorties et des entrées.
Avec une telle structure de commande, l’imposition d’une consigne pour
les grandeurs de sortie revient à choisir leur valeur nominale. Le régulateur
ramène ainsi l’état du système à son état nominal, c’est-à-dire à son état de
consigne. Le schéma fonctionnel précédent peut être réarrangé sous une forme
plus traditionnelle pour faire ressortir ces consignes.

u(k)
y(k) x(k) – x̃(k) +
Valeurs A Système
nominales K D physique
y c(k) x c(k) - e(k) ũ(k) u(k) u(t) y(t)

x(k) x(t)
A
D

Figure 5-2 Schéma fonctionnel d’une commande d’état sous forme traditionnelle.

91
RÉSUMÉ COMMANDE SISO

5.6 Résumé Commande SISO


5.6.1 Régulateur

u(k) x(k) y(k)


x(k + 1) = Φx(k)
–K + gu(k) y(k) = c T x(k)
x
Système
d’ordre n

5.6.2 Gouvernabilité
Le système est gouvernable si:

Rang(G) = Rang [ Ig Φg … Φn – 1g ] = n .

5.6.3 Contre-réaction d’état


Valeurs propres imposées en boucle fermée: β i i = 1, …, n .
Polynôme caractéristique de ( Φ – gK ) :

α c(λ) = ( λ – β 1 )… ( λ – β n ) = 0

–1
K = 0 … 0 1 [ Ig Φg … Φ n – 1 g ] α c(Φ)

5.6.4 Régulateur à réponse pile


Choix: α c(λ) = λ n
L’erreur de réglage est annulée n périodes d’échantillonnage après
l’apparition de la perturbation.
Risque de saturation de la commande!
Ce risque peut être réduit en augmentant la période d’échantillonnage ou
en choisissant un autre polynôme caractéristique α c(λ) .

92
COMMANDE PAR PLACEMENT DE VALEURS PROPRES

5.7 Exemple de synthèse: Enceinte de chauffe


Soit l’enceinte de chauffe représentée ci-dessous:

P(t) T ex(t)
T(t)

La grandeur d'entrée est la puissance de chauffe u(t) = P(t) . La sortie est


la température dans l’enceinte y(t) = T(t) . La température extérieure
q(t) = T ex(t) qui varie lentement est considérée comme une perturbation.

5.7.1 Modélisation

Le modèle analogique est: mcT· (t) = P(t) – R [ T(t) – T ex(t) ]

x· (t) = – Rx(t) + u(t) + Rq(t)


Pour mc = 1 et x(t) = T(t) , il vient:
y(t) = x(t)

5.7.2 Solution par imposition d’un point de fonctionnement


Considérons un point de fonctionnement tel que y = y c et supposons que
·
la température extérieure q est constante. En posant x = 0 dans le modèle d’état,
il vient: x = y = y c et u = R ( y c – q ) . Le modèle exprimé en variables écart
autour de ce point de fonctionnement est alors:

·
x̃(t) = – Rx̃(t) + ũ(t)
ỹ(t) = x̃(t)

Ah – Rh
Les matrices du modèle discret sont Φ = e = e ≡ ϕ et:

⎧ h – Rη ⎫ 1 – Rh 1
Γ = ⎨ e
⎩ 0
∫ dη ⎬B = – --- ( e
⎭ R
– 1 ) = --- ( 1 – ϕ ) = γ
R

Finalement, le modèle d’état discret exprimé en variables écart est:

x̃(k + 1) = ϕx̃(k) + γũ(k)


ỹ(k) = x̃(k)

93
EXEMPLE DE SYNTHÈSE: ENCEINTE DE CHAUFFE

En imposant une seule valeur propre en boucle fermée:


α c(λ) = λ + α 1 = 0 , le gain de rétroaction est un scalaire qui vaut:

–1 ϕ + α1
K = 1 γ α c(ϕ) = ---------------
-
γ

Commande a priori u
+
Valeurs A Système
nominales –K D physique
y ũ(k) u(k) u(t) y(t)

x̃(k) x(k) x(t)


A
- D

Figure 5-3 Schéma fonctionnel

94
COMMANDE PAR PLACEMENT DE VALEURS PROPRES

5.8 Exercices
5.8.1 Commande d’état
Soit le système représenté par la fonction de transfert:

10
G(s) = ----------------------------------
2
s + 0.18s + 9

Déterminer le modèle d’état discret de ce système en présence de


convertisseurs A/D et D/A avec h = 0.1 [ s ] .

Déterminer la contre-réaction d’état K de façon à avoir en boucle


fermée un comportement dominant caractérisé par ζ = 0.5 et
ω 0 = 8 [ rad ⁄ s ] .

Répéter la conception du régulateur, mais en plaçant toutes les racines


au centre du cercle unité ( z = 0 ). Il s’agit d’un régulateur à réponse
pile. Ce dernier ramène en effet le système dans la situation désirée en
un nombre fini de périodes d’échantillonnage. Combien?

5.8.2 Régulateur PI
Pour une implantation sur une carte processeur universelle, un régulateur
PI discret doit être exprimé sous la forme générale d’un modèle d’état. L’entrée du
régulateur est l’écart e(k) existant entre la grandeur de consigne et la mesure.
La sortie du régulateur correspond à la commande c(k) . Il s’agit de la
somme des composantes proportionnelle et intégrale ( ui ):
h e(k) + e(k – 1)
c(k) = Kp e(k) + ui (k) avec: ui (k) = ui (k – 1) + Kp ---- ------------------------------------
T i 2

Les paramètres h , Kp et Ti sont respectivement la période


d’échantillonnage, le gain proportionnel et la constante de temps de l’intégrateur.

Déterminer le modèle d’état qui correspond à ce système dynamique.

Comparer un tel régulateur PI avec une commande d’état incluant des


intégrateurs.

95
SOLUTIONS DES EXERCICES

5.9 Solutions des exercices


5.9.1 Solution commande d’état
Passage d’une fonction de transfert au modèle d’état
L’équation différentielle qui correspond à la fonction de transfert donnée
G ( s ) = Y(s) ⁄ U(s) est la suivante: y··(t) + 0.18y· (t) + 9y(t) = 10u(t) .
En choisissant comme variable d’état x 1 = y et x 2 = y· , cette équation
peut être arrangée sous la forme d’un modèle d’état.

x· 1(t) x 1(t)
= 0 1 + 0 u(t)
x· 2(t) – 9 – 0.18 x 2(t) 10

x 1(t)
y(t) = 1 0
x 2(t)

Modèle discret
La fonction c2d de Matlab donne:

x 1(k + 1) 0.9556 0.0976 x 1(k)


= + 0.0493 u(k)
x 2(k + 1) – 0.8786 0.9380 x 2(k) 0.9763

x 1(k)
y(k) = 1 0
x 2(k)

Contre-réaction d’état
Les spécifications ζ = 0.5 et ω 0 = 8 [ rad ⁄ s ] correspondent aux pôles
analogiques suivants:

s 1, 2 = – ω 0 ⎛ ζ + ζ – 1⎞ = – 4 ± 6.93j
2
⎝ ⎠

Dans le domaine discret, ces pôles sont:

hs 1, 2
z 1, 2 = e = 0.5158 ± 0.4281j

96
COMMANDE PAR PLACEMENT DE VALEURS PROPRES

Ackermann nous donne le gain correspondant:

K = 3.35 0.714

Les réponses obtenues avec ces gains et à partir des conditions initiales
x 1(0) = x 2(0) = 0.5 sont les suivantes:

0.5

x1
0

-0.5

-1

x2
-1.5

-2

-2.5
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

0.5 u

-0.5

-1

-1.5

-2

-2.5
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

Il faut dans ce cas plusieurs périodes d’échantillonnage pour stabiliser le


système.

97
SOLUTIONS DES EXERCICES

En fixant les pôles discrets au centre du cercle unité, Ackermann donne:

K = 9.27 1.47

Les réponses obtenues avec ces gains et à partir des conditions initiales
x 1(0) = x 2(0) = 0.5 sont les suivantes:

x1
0

-1

-2

-3 x2

-4

-5

-6
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

2 u

-2

-4

-6
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

Il faut dans ce cas 2 périodes d’échantillonnage, ce qui est le minimum réa-


lisable et qui correspond à l’ordre du système.

98
COMMANDE PAR PLACEMENT DE VALEURS PROPRES

5.9.2 Solution régulateur PI

Transformée en z :

Y(z) = K p U(z) + U i(z) avec u(k) = e(k) et y(k) = c(k)

–1
–1 h U(z) + z U(z)
U i (z) = z U i (z) + K p ---- -----------------------------------
Ti 2

–1
Y(z) b0 + b1 z h
- , avec b 0 = K p ⎛ 1 + --------⎞ ,
---------- = -------------------------
U(z) –1 ⎝ 2T i⎠
1 + a1 z

h
b 1 = K p ⎛ -------- – 1⎞ et a 1 = – 1
⎝ 2T ⎠
i

Modèle d’état dérivé de la forme canonique d’observabilité (Section A.2):

h
v(k + 1) = – a 1 v(k) + [ b 1 – a 1 b 0 ]u(k) = v(k) + K p ---- u(k)
T i

y(k) = v(k) + b 0 u(k)

Modèle d’état obtenu selon une approche temporelle (paragraphe 2.5.1):

y(k) = K p u(k) + u i (k)

h u(k + 1) + u(k )
u i (k + 1) = u i (k) + K p ---- -------------------------------------
T i 2

Pour supprimer le terme indésirable u ( k + 1 ) , on pose comme variable


d’état x(k) = u i (k) + αu ( k ) (au lieu de x(k) = u i (k) ). Ainsi:

h u(k + 1) + u(k)
x(k + 1) – αu(k + 1) = x(k) – αu(k) + K p ---- -------------------------------------
Ti 2

h h
x(k + 1) = x(k) + K p -------- – α u(k) + K p -------- + α u ( k + 1 )
2T i 2T i

99
SOLUTIONS DES EXERCICES

Le terme indésirable disparaît pour:

h
α = – K p --------
2T i

Finalement:

h
x(k + 1) = x(k) + K p ---- u(k)
Ti

h
x(k) = u i(k) – K p -------- u(k)
2T i

h
y(k) = K p u(k) + u i(k) = K p u(k) + x(k) + K p -------- u(k)
2T i
h
= x(k) + K p 1 + -------- u(k)
2T i

100
Chapitre 6
ESTIMATION

6.1 Estimateur
Il ressort du chapitre précédent que l’état complet du système à régler doit
être disponible pour implanter une commande d’état. Néanmoins, il arrive que
certaines variables d’état ne soient pas mesurables, ou qu’en raison du coût des
capteurs, elles ne soient pas mesurées.

6.1.1 Principe
Pour pallier les lacunes éventuelles de variables d’état, il faut élaborer une
technique apte à “deviner” les grandeurs manquantes au moyen des informations
disponibles. Ces informations sont les signaux d’entrée et de sortie (mesures),
ainsi que le modèle du système. Pour simplifier les développements, seuls les
systèmes avec une sortie seront considérés ici (SISO ou MISO). De plus, nous
supposerons que l’entrée n’influence pas directement la sortie, ce qui est toujours
le cas pour les systèmes analogiques échantillonnés. Ainsi, le modèle se présente
sous la forme:

x(k + 1) = Φx(k) + Γu(k)


y(k) = c T x(k)

Le principe de l’estimation (ou de l’observation) des états manquants


réside dans l’exploitation des informations disponibles par un calculateur. Ce
dernier effectuera la simulation du modèle discret du système physique en
exploitant les entrées qui lui sont appliquées. La simulation consiste en une simple
évaluation successive de l’équation d’état à partir des conditions initiales. Le
modèle étant une approximation de la réalité, le résultat de la simulation n’est
qu’une estimation de l’état réel x(k) du système. Pour marquer cette différence,
l’estimation est repérée par un accent circonflexe, soit x̂(k) (prononcer x crête).

101
ESTIMATEUR

Cette estimation peut ensuite être exploitée en boucle ouverte dans un contexte de
mesure, ou par une commande pour élaborer une contre-réaction d’état (fig. 6-1).

Système physique

u(k) x(k) y(k)


x(k + 1) = Φx(k) + Γu(k) y(k) = c T x(k)

x̂(k)
x̂(k + 1) = Φx̂(k) + Γu(k) utiliser x̂ pour
la contre-réaction

Calculateur
Figure 6-1 Principe de l’estimation d’état.

Bien que ce principe soit séduisant d’un point de vue conceptuel, il souffre
de deux problèmes majeurs. Tout d’abord, les conditions initiales x̂(0) de l’état ne
sont généralement pas connues; d’autre part, les mesures y(k) qui constituent une
riche source d’information ne sont pas exploitées. Il s’agit donc d’une estimation
en boucle ouverte.
Une analyse de l’erreur d’estimation δ(k) = x̂(k) – x(k) permet de mettre
en évidence un défaut supplémentaire. En effet, l’erreur en k + 1 vaut:

δ(k + 1) = [ Φx̂(k) + Γu(k) ] – [ Φx(k) + Γu(k) ] = Φ [ x̂(k) – x(k) ]














x̂(k + 1) x(k + 1)

En d’autres termes:

δ(k + 1) = Φδ(k)
Cette dernière équation d’erreur se présente sous la forme d’un modèle
d’état discret linéaire. Les considérations tirées précédemment sur la stabilité de
tels systèmes peuvent donc être exploitées pour caractériser la convergence de
l’erreur d’estimation. Il est intéressant de constater que la dynamique de cette
erreur est la même que celle du système observé, c’est-à-dire qu’elle est
conditionnée par les valeurs propres de la matrice Φ . L’erreur diminue donc avec
la même dynamique que le système évolue. Si les conditions initiales sont mal
connues, l’estimation ne rattrape donc jamais l’état réel. Finalement, si le système
est instable, l’estimation diverge.

102
ESTIMATION

6.1.2 Observateur de Leuenberger


La solution aux problèmes mis en lumière au paragraphe précédent
découle de l’exploitation des mesures de la sortie du système réel. Il s’agit de
comparer les mesures disponibles avec les sorties fournies par l’estimateur.
L’écart résultant correspond à une mesure de la qualité de l’estimation. Cet écart
peut donc être exploité pour corriger l’estimation. Le schéma de principe associé
à la technique proposée est représenté à la figure 6-2. L’estimation de la sortie est
tirée du modèle original du système et est donnée par l’expression ŷ(k) = c T x̂(k) .

Installation physique

u(k) Processus x(k) y(k)


cT
Φ, Γ

Modèle x̂(k) ŷ(k)


cT
Φ, Γ -

L
Calculateur Correction

Figure 6-2 Structure de l’observateur d’état.

Une contre-réaction de l’erreur d’estimation est donc introduite. D’un


point de vue analytique, le comportement dynamique de l’observateur se traduit
par l’équation aux différences:

x̂(k + 1) = Φx̂(k) + Γu(k) + L [ y(k) – ŷ(k) ]














Dynamique Correction en fonction


supposée connue de l’erreur d’estimation
L est un vecteur colonne de dimension n . Puisqu’il n’y a qu’une sortie
mesurée y(k) , le terme de correction se présente sous la forme:

L1
# y(k) – ŷ(k)




Ln
1×1


n×1

103
ESTIMATEUR

L’erreur d’estimation de l’état peut maintenant être évaluée, selon une dé-
marche similaire à celle adoptée au paragraphe précédent:

δ(k + 1) = x̂(k + 1) – x(k + 1)

δ(k + 1) = Φ [ x̂(k) – x(k) ] + L [ c T x(k) – c T x̂(k) ]




y(k)

δ(k + 1) = ( Φ – Lc T ) δ(k)




⎩ Φe






Il s’agit d’une équation d’état homogène (sans excitation). Sa solution


tend vers zéro si les valeurs propres de Φ e se trouvent à l’intérieur du cercle unité.

Il y a “n” erreurs d’estimation des “n” états qui peuvent être contrôlées
dynamiquement par les “n” gains L i de l’observateur. Par conséquent, la
convergence dynamique de l’estimation peut être choisie librement. Si les valeurs
propres β i de Φ e sont toutes imposées dans le cercle unité, l’erreur d’estimation
δ(k) tend vers zéro, quelles que soient les conditions initiales x̂(0) . L’équation
caractéristique de Φ e est:

α e(λ) = det ( λI – Φ e ) = ( λ – β 1 ) ( λ – β 2 )… ( λ – β n ) = 0

Relevons qu’une seule mesure y(k) permet d’estimer n états. De plus, la


dynamique de l’observateur étant celle d’un algorithme, il n’y a pas de limitation
physique à la vitesse de convergence choisie, ni à l’amplitude des signaux dans
l’estimateur. Ces derniers ne sont en effet que des nombres stockés en mémoire.
Les valeurs propres sont par conséquent choisies afin d’obtenir la dynamique la
plus grande possible, ou en tout cas une dynamique plus rapide que celle du
régulateur. Nous verrons plus loin que cet objectif est atteint si elles sont toutes
placées au centre du cercle unité.

Tout comme dans le cas de la commande d’état, la qualité de l’estimation


d’état dépend de la qualité du modèle disponible et de la précision des capteurs de
mesure.

104
ESTIMATION

6.1.3 Exemple: Double intégrateur


Soit le modèle discret du double intégrateur:

x(k + 1) = 1 h x(k) + h 2 /2 u(k)


0 1 h




Φ

y(k) = 1 0 x(k)


cT

On impose α e(λ) = ( λ – β 1 ) ( λ – β 2 ) , avec β 1, 2 = 0.4 ± 0.4j . Ainsi:

α e(λ) = λ 2 – 0.8λ + 0.32 = 0

det [ λI – Φ e ] = det [ λI – Φ + Lc T ] = 0

⎧ ⎫
⎪ λ 0 1 h L1 ⎪
det ⎨ – + 1 0 ⎬
⎪ 0 λ 0 1 L2 ⎪
⎩ ⎭

⎧ ⎫
⎪ λ – 1 –h L1 0 ⎪ λ – 1 + L1 –h
det ⎨ + ⎬ = det
⎪ 0 λ–1 L2 0 ⎪ L2 λ–1
⎩ ⎭

( λ – 1 + L1 ) ( λ – 1 ) + L2 h = λ 2 – λ – λ + 1 + L1 λ – L1 + L2 h = 0

Pour h = 0.1 s, il vient: λ 2 + ( L1 – 2 ) λ + ( L2 h – L1 + 1 ) = 0












– 0.8 0.32
Les gains de l’observateur sont finalement:

0.52
L 1 = 1.2 ; L 2 = ---------- = 5.2
h

105
SYNTHÈSE CONSTRUCTIVE

6.2 Synthèse constructive


L’exemple précédent a mis en évidence les problèmes liés à l’obtention du
gain de l’observateur d’état. Il est en effet nécessaire de développer le déterminant
de façon algébrique, puis de regrouper les termes relatifs aux différentes
puissances de λ et finalement de les identifier. Cette méthode est difficilement
applicable pour des systèmes d’ordre supérieur à deux. Il existe néanmoins une
alternative intéressante, basée sur l’exploitation de la forme canonique V (annexe
A). Selon cette technique, la synthèse de l’observateur est effectuée sur la base
d’une représentation d’état artificielle du système à observer:

x(k + 1) = Φx(k) + Γu(k)


y(k) = c T x(k)
Le passage à la représentation artificielle s’effectue par la transformation:

x = Rv avec: R = Φ n – 1 e … Φe Ie
n n n

où e n est la dernière colonne de l’inverse de la matrice d’observabilité Q (A.16).


Ainsi: v(k + 1) = Φ v v(k) + Γ v u(k)

y(k) = c T R v(k) = 1 0 … 0 v(k)




T
cv

–a1 1 0 … 0
–a2 0 1 % #
avec: Φ v = R – 1 ΦR = # # % % 0
–an – 1 0 … 0 1
–an 0 … 0 0

Les a i sont les coefficients du polynôme caractéristique du système à


observer.

106
ESTIMATION

Plutôt que de construire un observateur des variables d’état physiques du


système, un observateur de l’état artificiel v est implanté. Sa dynamique est régie
par l’équation aux différences suivante:

v̂(k + 1) = Φ v v̂(k) + Γ v u(k) + L' [ y(k) – ŷ(k) ]

L’erreur d’estimation de v est de ce fait régie par:

δ v(k + 1) = ⎛ Φ v – L′c v ⎞ δ v(k)


T
⎝ ⎠


⎩ L1 ′ L1 ′
# 10 …0 = # 0
Ln ′ Ln ′

La dynamique de l’erreur dépend donc des valeurs propres de:

– a1 – L1 ′ 1 0 …0 0
– a2 – L2 ′ 0 1 …0 0
T
Φ v – L′c v = # # # # ≡ Φ ve
– an – 1 – Ln – 1 ′ 0 0 1
– an – Ln ′ 0 …… 0 0

Cette matrice correspondant à la forme canonique V, le polynôme caracté-


T
ristique de Φ v – L′c v s’écrit donc par analogie:

λ n + ( a 1 + L 1 ′ )λ n – 1 + … + ( a n + L n ′ ) = 0 (6.1)

La relation entre les variables d’état v et x étant statique (transformation


linéaire algébrique ou aux différences d’ordre zéro), la dynamique de l’erreur
d’estimation de v sera la même que celle de x . Par conséquent les valeurs propres
de Φ ve et de Φ e sont les mêmes. Les matrices Φ ve et Φ e sont dites similaires.

Le polynôme caractéristique (6.1) peut alors être identifié à celui qui


impose la dynamique de l’erreur d’estimation de x :

α e(λ) = λ n + α 1 λ n – 1 + α 2 λ n – 2 + … + α n = 0

107
SYNTHÈSE CONSTRUCTIVE

Les gains sont ainsi donnés par les relations:

L 1' = α 1 – a 1
L 2' = α 2 – a 2
#
L n' = α n – a n

Pour revenir aux grandeurs physiques, la transformation d’état inverse est


effectuée dans l’équation de l’observateur:

v̂(k + 1) = Φ v v̂(k) + Γ v u(k) + L′ [ y(k) – ŷ(k) ]

R – 1 x̂(k + 1) = Φ v R – 1 x̂(k) + Γ v u(k) + L′ [ y(k) – ŷ(k) ]

x̂(k + 1) = RΦ v R – 1 x̂(k) + RΓ v u(k) + RL′ [ y(k) – ŷ(k) ]










Φ Γ L

Ainsi: L = RL′
Seules des opérations numériques sont nécessaires pour obtenir les gains
de l’observateur selon cette méthodologie basée sur la forme canonique V.

6.2.1 Formule d’Ackermann pour l’observateur


La procédure décrite précédemment pour déterminer le gain L de
l’observateur peut se réduire à une seule relation, appelée la formule d’Ackermann
pour l’observateur. Selon le paragraphe précédent le gain peut en effet s’écrire:

α1 – a1 α1 –a1
α2 – a2 α2 –a2
L = RL′ = R = R +R
# # #
αn – an αn –an


R –1 Φ n en

Les coefficients a i sont ceux du polynôme caractéristique du système à


observer α(λ) . Les α i sont ceux du polynôme caratéristique α e(λ) de la matrice
Φ e qui régit l’erreur d’estimation. Le terme sous l’accolade est la première colon-

108
ESTIMATION

ne de la matrice R – 1 ΦR (annexe A, relation A.19). Le deuxième membre de cette


équation se résume par conséquent à un facteur Φ n e n . Le vecteur de gain peut
donc être obtenu selon:

α1
α2
L = Φ n – 1 e … Φe Ie + Φ n en
n n n
#
αn

= Φ n e n + α 1 Φ n – 1 e n + α 2 Φ n – 2 e n + … + α n Ie n

= Φ n + α1 Φ n – 1 + α2 Φ n – 2 + … + αn I en

















α e(Φ)

Le vecteur e n est la dernière colonne de l’inverse de la matrice


d’observabilité Q . Il peut donc s’exprimer de la manière suivante:

–1
0 cT 0
en = Q –1 # = cT Φ #
0 # 0
1 1
cT Φ n – 1

Finalement:

–1
T
c 0
L = α e(Φ) cT Φ #
# 0
1
cT Φ n – 1

Il s’agit de la formule d’Ackermann pour l’observateur d’état. Elle


n’exploite que des éléments du modèle du système à observer et ne fait plus
ressortir aucune matrice de transformation.

Dans MATLAB, la matrice d’observabilité est obtenue au moyen de la


commande Q = obsv( Φ , c T ).

109
OBSERVATEUR À RÉPONSE PILE

6.3 Observateur à réponse pile


Soit le système discret décrit par:

x(k + 1) = Φx(k) + Γu(k)

y(k) = c T x(k)

et l’observateur associé:

x̂(k + 1) = Φx̂(k) + Γu(k) + L [ y(k) – c T x̂(k) ]

L’équation qui régit la dynamique de l’erreur d’estimation


δ(k) = x̂(k) – x(k) est:

δ(k + 1) = ( Φ – Lc T )δ(k) (6.2)

L’estimation initiale est généralement choisie nulle ( x̂(0) = 0 ), ainsi


δ(0) = – x 0 .

L’observateur est à réponse pile si l’erreur d’estimation est nulle après n


périodes d’échantillonnage:

δ(n) = ( Φ – Lc T ) n δ(0) = 0

ainsi que pour les instants subséquents.

Si le polynôme caractéristique α e(λ) de l’équation 6.2 est choisi égal à λ n


( α 1, α 2 …, α n = 0 ), les gains de l’observateur du système mis dans une forme
canonique d’observabilité sont L′ i = – a i . Ainsi, la matrice qui décrit la
dynamique de l’erreur d’estimation du système “artificiel” est:

– a 1 – L′ 1 1 … 0
0 1 …0
– a 2 – L′ 2 0 # #
Φ v – L′ c Tv = = 0 0
# # 1 # # 1
– a n – L′ n 0 … 0 0 0 …0

Il s’agit d’une matrice dite “nilpotente” dont la propriété est un décalage


de la diagonale à chaque multiplication par elle-même.

110
ESTIMATION

Par exemple:

0 1 0 0 0 0 1 0 0 0 0 1
M nil = 0 0 1 0 ; M2 = 0 0
nil
0 1 ; M3 = 0 0
nil
0 0
0 0 0 1 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0

4 = 0
et M nil

De façon générale, pour une matrice nilpotente de dimension n:


n = 0.
M nil
Ainsi:

δ(n) = ( Φ – Lc T ) n δ(0) = ( RΦ v R – 1 – RL′c Tv R – 1 ) n δ(0)

= [ R ( Φ v – L′c Tv )R – 1 ] n δ(0)

n
= R n ( Φ v – L′c Tv ) ( R – 1 ) n δ(0) c.q.f.d.






0
Le choix de α e(λ) = λ n conduit donc effectivement à l’annulation de
l’erreur d’estimation en n périodes d’échantillonnage.

111
RÉSUMÉ ESTIMATION SISO

6.4 Résumé Estimation SISO


6.4.1 Observateur

u(k) x(k) y(k)


x(k + 1) = Φx(k) T
+ gu(k) y(k) = c x(k)

x̂(k) x̂(k + 1) = Φx̂(k) + gu(k)


+ L [ y(k) – c T x̂(k) ]

6.4.2 Observabilité
cT I

Ce système est observable si: Rang(Q) = Rang cT Φ = n


#
cT Φ n – 1

6.4.3 Gain de l’observateur


Dynamique de l’erreur d’estimation imposée par les valeurs propres:
εi i = 1, …, n .
Polynôme caractéristique de ( Φ – Lc T ) :

α e(λ) = ( λ – β 1 )… ( λ – β n ) = 0

–1
cT I 0
L = α e(Φ) cT Φ #
# 0
1
cT Φ n – 1

6.4.4 Observateur à réponse pile


Choix α e(λ) = λ n . Pas de problèmes de saturation. En effet, les
grandeurs en présence sont des nombres et non des grandeurs physiques.

112
ESTIMATION

6.5 Structure complète de commande d’état


Pour réaliser une contre-réaction d’état, il est nécessaire de connaître l’état
du système à régler. Lorsque la mesure des variables d’état est trop coûteuse, voire
impossible, un observateur d’état doit être introduit. La combinaison et les
interactions dynamiques de la contre-réaction et de l’observateur doivent donc
être étudiées. Ces thèmes sont traités dans cette section pour le cas général d’un
système SISO non linéaire analogique. Le modèle utilisé pour la conception de la
commande numérique complète se présente ainsi sous la forme d’un modèle
linéarisé et discrétisé (zone grisée de la figure 6-3).

u(k) y(k)

ũ(k) + u(k) u(t) Système y(t) A y(k) - ỹ(k)


D
A à régler D

x̃(k + 1) = Φx̃(k) + Γũ(k) ; ỹ(k) = Cx̃(k)

Saturation
x̃ˆ(k + 1) = Φx̃ˆ(k) + Γũ(k)
–K
+ L [ ỹ(k) – Cx̃ˆ(k) ]
Régulateur
ũ(k) = – Kx̃ˆ(k) Observateur/estimateur

Figure 6-3 Commande d’état complète.

L’estimation de la sortie n’est pas calculée explicitement dans


l’observateur, elle apparaît néanmoins sous la forme de l’expression Cx̃ˆ(k) .
Si la commande issue du régulateur est saturée sous l’effet de l’actuateur
avant d’être appliquée sur le système physique, la commande exploitée par
l’observateur doit l’être également. Pour cette raison, un bloc de saturation ayant
la même caractéristique statique que l’actuateur doit être inséré dans la boucle de
contre-réaction (en pointillé dans la figure 6-3).

113
STRUCTURE COMPLÈTE DE COMMANDE D’ÉTAT

En omettant le signe tilde par souci de lisibilité, le système complet repré-


senté précédemment est décrit par:

x̂(k + 1) = Φx̂(k) + Γu(k) + L [ y(k) – C x̂(k) ] Observateur

x(k + 1) = Φx(k) + Γu(k) Équation d’état du système

u(k) = – Kx̂(k) Contre-réaction d’état

y(k) = C x(k) Équation de sortie du système

L’élimination de u(k) qui n’est ni une variable d’état, ni une entrée et ni


une sortie du système complet conduit à:

x̂(k + 1) = Φx̂(k) – ΓKx̂(k) + LC [ x(k) – x̂(k) ] (6.3)

x(k + 1) = Φx(k) – ΓKx̂(k) (6.4)

y(k) = Cx(k) (6.5)

En termes d’erreur d’estimation δ(k) = x̂(k) – x(k) , il vient:

δ(k + 1) = Φδ(k) – LCδ(k) Équations (6.3)-(6.4)

x(k + 1) = Φx(k) – ΓK [ δ(k) + x(k) ] Équation (6.4)

y(k) = Cx(k) Équation (6.5)

En choisissant comme variables d’état du système complet décrit ci-


dessus les grandeurs x(k) et δ(k) , le modèle peut être arrangé sous forme
matricielle:

δ(k + 1) = Φ – LC 0 δ(k)
x(k + 1) – ΓK Φ – ΓK x(k)








Φt

y(k) = 0 C δ(k)
x(k)

114
ESTIMATION

Il s’agit du modèle d’état du système complet qui est d’ordre 2 n . Sa


dynamique est donc régie par les valeurs propres de la matrice Φ t , c’est-à-dire par
les zéros de l’équation caractéristique:

⎧ ⎫
det ⎨ λI 2n – Φ – LC 0
⎬ = 0
⎩ – ΓK Φ – ΓK ⎭

λI n – Φ + LC 0
det = 0
ΓK λI n – Φ + ΓK

Dans ces dernières expressions, l’indice des matrices carrées identité I


indique leur dimension. Les règles de calcul du déterminant d’une matrice
subdivisée en blocs donne:

det [ λI – Φ + LC ] det [ λI – Φ + ΓK ] – det [ ΓK ] det [ 0 ] = 0


























α e(λ) α c(λ) 0

Ainsi, les valeurs propres du système complet sont les zéros de l’équation
α e(λ)α c(λ) = 0 qui correspond au produit de l’équation caractéristique de
l’estimateur avec celle de la contre-réaction d’état. Par conséquent, l’ensemble
des valeurs propres du système complet regroupe les valeurs propres choisies pour
régir l’erreur d’estimation de l’état et celles choisies pour la contre-réaction. En
d’autres termes, les valeurs propres imposées au système par la contre-réaction ne
sont pas modifiées par l’adjonction d’un observateur. Il n’y a donc aucune
dégradation des performances dynamiques.
λ i estimateur λ i contre-réaction λ i complet

∪ =

Figure 6-4 Combinaison des valeurs propres.

Cette propriété d’indépendance de la dynamique de l’observateur et de la


dynamique de la contre-réaction d’état est connue sous le nom de principe de
séparation.

115
EXEMPLE DE SYNTHÈSE: BALANÇOIRE

6.6 Exemple de synthèse: Balançoire


6.6.1 Balançoire

Le processus représenté à la figure 6-5 est constitué d'une bille en


mouvement sur une poutre dont l'inclinaison peut être modifiée par l'intermédiaire
d'un moteur électrique.
φ
r

θ
y
mg
Figure 6-5 Schéma de principe de la balançoire.

φ est la position angulaire de la bille sur son axe de rotation, r son rayon,
m sa masse, J son moment d'inertie et y sa position sur la poutre. θ est l’angle
d'inclinaison de la poutre par rapport au plan horizontal et L sa longueur.

6.6.2 Modélisation

En négligeant la dynamique du moteur, c’est-à-dire que l’on considère une


commande appliquée directement sur l’angle: u(t) = θ(t) , la balançoire peut être
·
décrite par le modèle non linéaire M suivant avec x 1 = φ et x 2 = φ :

x· 1(t) = x 2(t)
mgr
x· 2(t) = ---------- sin u(t)
J
y(t) = rx 1(t)

6.6.3 Découpleur

Le découpleur qui permet de linéariser ce système par contre-réaction est


le modèle inverse M – 1 du système original (Figure 6-6).

w(t) u(t) y(t)


–1
M M

Figure 6-6 Découpleur de la balançoire.

116
ESTIMATION

Avec b = mgr ⁄ J , il vient:

y(t) = rx 1(t)
y·(t) = rx· 1(t) = rx 2(t)
y··(t) = rx· 2(t) = rb sin u(t) ≡ w(t)
–1
w(t) est l’entrée du découpleur. Le modèle inverse statique M qui ne nécessite
pas dans ce cas particulier de mesure de l’état est donc:
w(t)
u(t) = asin ---------
rb
Le modèle du système équivalent est y··(t) = w(t) (Fig. 6-7). Ce système a
les mêmes états que le système original. L’avantage est que le modèle équivalent
est linéaire. Il est ainsi possible d’effectuer sa discrétisation et la conception d’un
observateur des deux états y(t) et à y·(t) .

w(t) 2
y(t)
1⁄s
Figure 6-7 Système équivalent.

Pour garantir la linéarisation, il faut limiter la commande w(t) par une


saturation w(t) ≤ ± rb .

6.6.4 Discrétisation
Le nouveau modèle d’état équivalent à exploiter pour la synthèse de
l’observateur et de la commande est donc:

x· 1(t) = x 2(t)
x· 2(t) = w(t)
y(t) = x 1(t)

Le modèle discret de ce double intégrateur a déjà été obtenu dans


l’exemple 4.2.4. Il est s’agit de:

2
x(k + 1) = 1 h x(k) + h ⁄ 2 w(k)
0 1 h

y(k) = 1 0 x(k)

117
EXEMPLE DE SYNTHÈSE: BALANÇOIRE

6.6.5 Observateur à réponse pile

L’observateur à réponse pile pour le double intégrateur discret a également


déjà été obtenu dans l’exemple 6.1.3 avec α e(λ) = λ2 .

–1 –1
T
L = α e(Φ) c 0 = Φ2 1 0 0 = 2
cT Φ 1 1h 1 1⁄h

6.6.6 Commande par placement des valeurs propres

Une commande d’état pour le double intégrateur discret a fait l’objet de


l’exemple 5.3.1 avec α c(λ) = λ2 – 1.6λ + 0.7 = 0 .

–1 0.1 0.35
K = 0 1 g Φg α c(Φ) = ------- ----------
h
2 h

6.6.7 Implantation

Le schéma d’implantation complet est donné à la figure 6-8.

Système équivalent

asin w (k) A D
----------
rb D Balançoire A
w(k) u(k) θ(t) y(t)

w(k)
y(k)
x̂(k)
–K Observateur

x̂(k + 1) = Φx̂(k) + Γw(k) + L [ y(k) – c T x̂(k) ]

Figure 6-8 Commande complète de la balançoire avec découpleur, observateur et


commande d’état.

L’état observé correspond à la position et à la vitesse angulaire de la bille,


· ·
soit x̂ 1(k) = ŷ(k) = rφ̂ ) et x̂ 2(k) = ŷ(k) = rφ̂ . Il s’agit d’une commande en
··
accélération w(k) = φ(k) .

118
ESTIMATION

6.7 Exercices
6.7.1 Observateur d’état de l’entraînement
Soit la version discrétisée du modèle d’un entraînement électrique
élaborée au paragraphe 4.1.13:

1 0.0235 0.0003
x(k + 1) = x(k) + u(k)
0 0.8825 0.0235













Φ Γ

y(k) = 1 0 x(k)




cT
Vérifier ce modèle discret à l’aide de la commande adéquate de Matlab.
La période d’échantillonnage est de 25 ms.
Déterminer le gain d’un observateur d’état, en spécifiant toutes les
valeurs propres associées au centre du cercle unité.
Déterminer en boucle ouverte la réponse de l’entraînement et celle de
l’observateur au moyen de Simulink (choisir des conditions initiales
différentes pour ces deux éléments).
Choisir une dynamique pour concevoir une contre-réaction d’état et
déterminer le gain K correspondant.
Simuler le système complet dans Simulink (observateur et régulateur).

6.7.2 Observabilité
Le modèle d’état discret d’un système dynamique est le suivant:

x(k + 1) = – 1 0 x(k) + 1 u(k)


1 0 0

y(k) = 1 α x(k)

Déterminer toutes les valeurs de α pour lesquels le système n’est pas


observable.
Expliquer ce qui se passe dans les différents cas où l’observabilité est
perdue. Si nécessaire, représenter graphiquement les couplages
dynamiques internes au système pour soutenir l’argumentation.

119
SOLUTIONS DES EXERCICES

6.8 Solutions des exercices


6.8.1 Observateur d’état de l’entraînement

Soit:

A = 0 1 , B = 0 et c T = 1 0 , avec: a = – 5 et b = 1
0 a b

Le modèle discret correspondant s’obtient dans Matlab au moyen de la


commande [phi,Gamma]=c2d(A,B,h).

La dynamique imposée pour l’observateur est:


2
α e(λ) = ( λ – 0 ) ( λ – 0 ) = λ

Le gain de l’observateur est obtenu au moyen de la formule d’Ackermann:


–1
T
L = α e(Φ) c 0 , avec α (Φ) = Φ 2
e
cT Φ 1

Il vient:

L = 1.883
33.14

Pour simuler l’observateur au moyen de Simulink, son modèle doit être


arrangé sous forme d’un modèle d’état standard.

x̂(k + 1) = Φx̂(k) + Γu(k) + L [ y(k) – c T x̂(k) ]

= ( Φ – Lc T )x̂(k) + Γ L u(k)
y(k)

Les entrées de l’observateur sont l’entrée et la sortie du système à


observer.

Le schéma de simulation est donné ci-dessous.

120
ESTIMATION

A = Φ
B = Γ
C = I
D = 0 0
x(0) = 5 0
K = cT
u(k) y(k)

x(k)

x̂(k)

A = Φ – Lc
T B = Γ L
C = I
D = 0 0
x̂(0) = 0 0 0 0

Les réponses sont reportées dans la figure qui suit. On constate que les
estimations de l’état atteignent les valeurs réelles de l’état après deux périodes
d’échantillonnage.

10 180

9 160

8
140

7 * Position estimée
120
6
100
5
* Vitesse estimée
80
4
60
3

40
2

1 20

0 0
0 0.05 0.1 0.15 0.2 0.25 0 0.05 0.1 0.15 0.2 0.25

La commande est choisie pour imposer en boucle fermée les valeurs


propres suivantes:

λ 1, 2 = 0.8 ± 0.25j

Le gain de contre-réaction correspondant est obtenu par la formule


d’Ackermann, dont la commande Matlab est:

121
K = acker(Φ, Γ, λ 1 λ 2 ) = 174.5 9.794

Le schéma de simulation du système complet (observateur et contre-


réaction) est donné ci-dessous. Les définitions de blocs sont les mêmes que
précédemment.

Les réponses réelles (traits continus) et leur estimation durant le réglage


(*) sont représentées ci-dessous. La position initial est de 5 rad et la vitesse initiale
est nulle. Le régulateur ramène ces deux grandeurs à zéro.
10 200

8 150

6 100

4 50

2 0

0 -50

-2 -100
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
ESTIMATION

6.8.2 Observabilité
La matrice d’observabilité est:

Q = cT = 1 α
cT Φ α–1 0

Le rang de la matrice Q n’est pas plein si le déterminant est nul:


α(α – 1) = 0

Le système n’est pas gouvernable pour α = 0 et α = 1 .

Pour α = 0 , x 2 n’influence pas la sortie. Cet état n’est donc pas


observable.

Pour α = 1 , les CIs de x 1 et x 2 ne peuvent pas être différenciées.

x 1(k + 1) = – x 1(k) + u(k)


x 2(k + 1) = x 1(k)
y(k) = x 1(k) + x 2(k)

En effet, x 1 et x 2 sont interchangeables dans ces équations:

x 1(k + 1) = – x 2(k + 1) + u(k)


, c’est-à-dire:
y(k) = x 1(k) + x 2(k)

u(k) = x 1(k + 1) + x 2(k + 1)


y(k) = x 1(k) + x 2(k)

-
u(k) x 1(k + 1) –1 x 1(k)
z +
y(k)

+
–1 α
z
x 2(k + 1) x 2(k)

123
SOLUTIONS DES EXERCICES

En utilisant la forme canonique de gouvernabilité:

–a1 –a2
x(k + 1) = x(k) + 1 u(k)
1 0 0

y(k) = b 1 b 2 x(k)

on obtient la FT équivalente:
Y(z) z+α
---------- = -------------------
U(z) z(z + 1)
On constate que dans les deux cas mentionnés, il y a une annulation pôle-
zéro.

Y(z) 1 Y(z) 1
Pour α = 0 : ---------- = ---------------- et pour α = 1 : ---------- = --- .
U(z) (z + 1) U(z) z

124
Chapitre 7
COMMANDE OPTIMALE

7.1 Commande optimale


7.1.1 Structure de commande d’état standard
Dans le cas des systèmes ne possédant qu’une entrée, la structure de
commande illustrée à la figure 7-1 est généralement exploitée.

Système x
à régler

–K
u: scalaire
Figure 7-1 Structure de commande d’état standard.

La synthèse du régulateur est aisément réalisable en exploitant une


technique de placement des valeurs propres. Dans cette situation, la difficulté de
conception réside dans le choix de l’emplacement des valeurs propres en boucle
fermée. Ce choix n’est pas trivial. Pour obtenir une réponse rapide, la spécification
d’une réponse pile peut être considérée, néanmoins cela conduit généralement à
des amplitudes de commande que les amplificateurs ne peuvent pas fournir. En
fait, la technique de placement des valeurs propres ne donne qu’un contrôle
explicite sur la stabilité, les transitoires sur les signaux ne sont maîtrisés
qu’indirectement. De plus, dans le cas MIMO, la formule d’Ackermann n’est plus
exploitable et l’utilisation d’une identification termes à termes des coefficients du
polynôme caractéristique est la seule solution possible. Cette approche, plus
complexe et nécessitant des développements analytiques, présente en plus des
degrés de liberté additionnels dont la mise en valeur judicieuse n’est pas
immédiate, comme l’illustre l’exemple du paragraphe qui suit.

125
COMMANDE OPTIMALE

7.1.2 Exemple: Cuve de mélange


Soit la cuve de mélange décrite au paragraphe 3.3.5 et dont le modèle
discret a été élaboré au paragraphe 4.1.14. Il s’agit d’un système MIMO avec deux
entrées et deux états. La forme de la contre-réaction est donc la suivante:

ũ 1 x̃ k k2 x̃ 1
= –K 1 = – 1
ũ 2 x̃ 2 k3 k4 x̃ 2

2
Si le polynôme caractéristique α c(λ) = λ est choisit en boucle fermée,
les gains de contre-réaction sont obtenus en identifiant les deux membres de
l’équation det ( λI – Φ + ΓK ) = α c(λ) .

En développant, il vient:

⎛ k k 2 ⎞⎟
det ⎜ λ 0 – α 0 + r r 1
2
= λ
⎜ 0 λ 0 β s v k3 k 4 ⎟⎠

λ – α + r ( k1 + k3 ) r ( k2 + k4 ) 2
det = λ
sk 1 + vk 3 λ – β + sk 2 + vk 4

Pour lever l’indétermination due à la présence de 4 inconnues ( k 1 , k 2 , k 3


et k 4 ) et de seulement deux équations (facteurs de λ 1 et de λ 0 ), deux des gains
peuvent être choisis arbitrairement. Trois possibilités sont maintenant étudiées. Il
s’agit de k 3 = k 4 = 0 , k 1 = k 2 = 0 ou k 2 = k 3 = 0 .

Pour k 3 = k 4 = 0 , seule la première commande est manipulée, tandis


que la seconde reste à sa valeur nominale. Nous avons alors:

2 2
λ + λ ( rk 1 + sk 2 – α – β ) + ( αβ – βrk 1 – αsk 2 ) = λ

L’identification fournit un système de deux équations linéaires dont la


solution unique est la suivante:

2 2
α β
k 1 = -------------------- = 25 et k 2 = – -------------------- = 97
r(α – β ) s( α – β)

126
COMMANDE OPTIMALE

Pour k 1 = k 2 = 0 , seule la seconde commande est manipulée, tandis que


la première reste à sa valeur nominale. Nous avons alors:

2 2
λ + λ ( rk 3 + vk 4 – α – β ) + ( αβ – βrk 3 – αvk 4 ) = λ

L’identification fournit un système de deux équations linéaires dont la


solution unique est la suivante:

2 2
α β
k 3 = -------------------- = 25 et k 4 = – -------------------- = – 32.35
r( α – β) v(α – β)

Pour k 2 = k 3 = 0 , la première commande ne dépend que des écarts sur


la première variable d’état, et la seconde commande ne dépend que des écarts sur
la seconde variable d’état. C’est-à-dire qu’une vanne est choisie pour régler le
volume et l’autre pour régler la concentration. Nous avons alors:

2 2
λ + λ ( rk 1 + vk 4 – α – β ) + [ αβ – βrk 1 – αvk 4 + k 1 k 4 r ( v – s ) ] = λ

Le système d’équations est dans ce cas non linéaire (produit k 1 k 4 ). Le


gain k 4 est solution de l’équation du second degré:

2 2 2 ⎧ 0.9851
k 4 ( vs – v ) + k 4 ( 2βv – αs – βs ) – β = 0 → k 4 = ⎨
⎩ 0.3251

Quant au gain k 1 , il est tiré de:

⎧ 0.2487
rk 1 = α + β – vk 4 → k 1 = ⎨
⎩ 0.7388

Il y a donc deux paires de valeurs pour (k 1,k 4) qui peuvent être choisies.

Cette exemple illustre bien, pour les systèmes MIMO, la difficulté de


conception d’une contre-réaction d’état par placement des valeurs propres. Des
développements analytiques sont nécessaires, ainsi que dans certains cas la réso-
lution de systèmes d’équations non linéaires. De plus, une exploitation sensée des
degrés de liberté devient difficile pour des systèmes d’ordre supérieur à deux, ou
si le nombre d’entrées et d’états diffèrent. La commande optimale ne présente pas
ces défauts grâce à l’approche de conception systématique sur laquelle elle repose.

127
COMMANDE OPTIMALE

7.1.3 Principe de la commande optimale

Le principe de la commande optimale réside dans l’élaboration explicite


d’une séquence d’échantillons de l’entrée u(0), u(1), …, u(N – 1) qui minimise
une fonction coût prédéfinie sur un horizon d’optimisation N , plutôt que dans le
choix de l’emplacement des valeurs propres.

Dans cette approche, le traitement des cas SISO et MIMO est similaire.

La fonction coût à minimiser est la suivante:

N
1
J = ---
2 ∑ [ xT(k)Q1 x(k) + u T(k)Q2 u(k) ]
k=0

Les paramètres à ajuster par le concepteur sont les matrices de


pondérations Q 1 et Q 2 qui permettent de réaliser un compromis entre l’efficacité
du réglage et la mise à contribution des actuateurs. Ces matrices doivent être
symétriques et définies non négatives, c’est-à-dire que x T Qx ≥ 0 . En général,
elles sont choisies diagonales, avec tous les éléments positifs ou nuls. Les valeurs
respectives des éléments de la diagonale de Q 1 permettent de pondérer
l’importance des états entre eux. Les valeurs respectives des éléments de la
diagonale de Q 2 permettent de pondérer l’importance des commandes entre elles.
Une valeur nulle revient à ne pas prendre en compte le terme correspondant. Des
valeurs de signe opposé sont évitées pour que les termes de la somme ne se
compensent pas entre eux.

Le terme x T(k)Q 1 x(k) permet de limiter la somme pondérée des x i2(k) et


de ramener ainsi l’état vers zéro ou vers sa valeur nominale (si les variables écart
sont introduites dans la fonction coût). Le terme u T(k)Q 2 u(k) permet de limiter la
somme pondérées des u i2(k) et d’éviter par ce biais des variations trop fortes de la
commande.

Les couples 〈 x(k), u(k)〉 qui apparaissent dans la fonction coût doivent
être compatibles avec la dynamique du système à régler; la minimisation doit par
conséquent prendre en compte la contrainte x(k + 1) = Φx(k) + Γu(k) .

La rapidité de la correction est ajustée au moyen de l’horizon


d’optimisation. La séquence cherchée est telle que les échantillons u(N + i) sont
nuls pour i = 0, 1, … . C’est-à-dire que le minimum doit être atteint en
n’exploitant pas la commande sur plus de N périodes d’échantillonnage.

128
COMMANDE OPTIMALE

7.1.4 Résumé du problème d’optimisation


Soit un état initial x(0) = x 0 quelconque, des matrices Q 1 et Q 2 données
et la condition u(N) = 0 , trouver les états x(k) , où k = 1, …, N , ainsi que les
commandes u(k) , où k = 0, …, N – 1 qui minimisent la fonction coût:

[ ] [ ]
N











1
J = ---
2 ∑ x T(k)Q 1 x(k) + u T(k)Q 2 u(k)











k=0

n n×n n r r×r r

sous la contrainte: – x(k + 1) + Φx(k) + Γu(k) = 0 , où k = 0, 1, …, N .

7.1.5 Solution du problème d’optimisation


Pour trouver le minimum d’une fonction, il faut annuler ses dérivées
partielles. Si il y a des contraintes d’égalité, il faut utiliser la méthode des
multiplicateurs de Lagrange, c’est-à-dire qu’il faut minimiser la fonction coût
étendue J' :
N
1 T 1
J′ = ∑ --- x (k)Q 1 x(k) + --- u T(k)Q 2 u(k)
2 2
k=0
N
+ ∑ [ λ T(k + 1) { – x(k + 1) + Φx(k) + Γu(k) } ]
k=0
Il s’agit de la combinaison de la fonction coût initiale J et de la contrainte
d’égalité. Un multiplicateur de Lagrange λ(k + 1) est introduit pour chaque valeur
de k (vecteur de n éléments). L’adjonction de ces Nn inconnues est le prix à payer
pour la simplification de la résolution du problème.

129
COMMANDE OPTIMALE

7.1.6 Résumé du problème d’optimisation étendu sans contrainte


Soit des matrices Q 1 et Q 2 données, trouver les états x(k) , où
k = 1, …, N , les commandes u(k) , où k = 0, …, N – 1 , ainsi que les
multiplicateurs λ(k) , où k = 0, …, N – 1 , qui minimisent la fonction coût J'
(sans contrainte).

Dans le processus de minimisation, les états sont obtenus au moyen du


modèle et à partir de la condition initiale x(0) = x 0 (figure 7-2)..

x(k)

Inconnus
Connu

k
0 1 2 … N–1 N
Figure 7-2 Etats inconnus à déterminer par minimisation.

Les commandes sont élaborées de façon à satisfaire la condition finale


u(N) = 0 (figure 7-3).

u(k)

Inconnues

Imposée
k
0 1 2 … N–1 N
Figure 7-3 Commandes inconnues à déterminer par minimisation.

130
COMMANDE OPTIMALE

7.1.7 Solution du problème d’optimisation étendu sans contrainte


L’annulation des dérivées partielles des commandes fournit, pour toutes
les valeurs de k :

∂J′
---------------
∂u 1(k)
∂J′ T
# = ------------ = Q 2 u(k) + Γ λ(k + 1) = 0 (7.1)
∂u(k)
∂J′
--------------
∂ u r( k )

Ainsi, pour k = N , la condition finale additionnelle suivante est obtenue:


T
Q 2 u(N) + Γ λ(N + 1) = 0 , d’où:


0
λ(N + 1 ) = 0 (7.2)
L’annulation des dérivées partielles des multiplicateurs fournit, pour
toutes les valeurs de k :

∂J′
-------------------------
∂λ 1(k + 1)
∂J′
# = ---------------------- = – x(k + 1) + Φx(k) + Γu(k) = 0 (7.3)
∂λ(k + 1)
∂J′
-------------------------
∂λ n(k + 1)

Cette expression n’est rien d’autre que la contrainte qui réapparaît grâce à
la formulation de Lagrange du problème d’optimisation.
L’obtention des dérivées partielles par rapport à l’état nécessite la prise en
considération de deux termes consécutifs de la somme J′ où x(k) apparaît.

1 1
J′ = … + --- x T(k – 1)Q 1 x(k – 1) + --- u T(k – 1)Q 2 u(k – 1)
2 2
+ λ T(k) { – x(k) + Φx(k – 1) + Γu(k – 1) }
1 1
+ --- x T(k)Q 1 x(k) + --- u T(k)Q 2 u(k)
2 2
+ λ T(k + 1) { – x(k + 1) + Φx(k) + Γu(k) } + …

131
COMMANDE OPTIMALE

Ainsi, pour toutes les valeurs de k :

∂J′
---------------
∂x 1(k)
∂J′ T
# = ------------ = – λ(k) + Q 1 x(k) + Φ λ(k + 1) = 0 (7.4)
∂x(k)
∂J′
---------------
∂x n(k)

Pour k = N et en exploitant les relations (7.2) et (7.4), la condition finale


additionnelle suivante est obtenue:

T
– λ(N) + Q 1 x(N) + Φ λ(N + 1) = 0 , d’où:





0

λ(N) = Q 1 x(N) (7.5)

La résolution du système constitué par les équations (7.1), (7.3) et (7.4)


n’est pas triviale. Il faut en effet évaluer progressivement l’équation d’état (7.3) à
partir de la condition initiale x(0) = x 0 :

x(0) → x(1) → … → x(k + 1) = Φx(k) + Γu(k) → … → x(N)

La commande u(k) qui intervient dans cette expression s’obtient au


moyen de la relation (7.1):

–1 T
u(k) = – Q 2 Γ λ(k + 1)

Cette évaluation nécessite la connaissance du multiplicateur λ(k + 1) , qui


lui, est déterminé dégressivement selon (7.4) à partir de la condition finale
λ(N) = Q 1 x(N) . Ainsi:

λ(N) = Q 1 x(N) → … → λ(k) = Q 1 x(k) + Φ T λ(k + 1) → … → λ(0)

Il s’agit d’un problème imbriqué puisqu’il faudrait connaître l’état pour


déterminer les multiplicateurs et les multiplicateurs pour connaître l’état. C’est
Riccati qui a trouvé une solution à ce problème en introduisant une variable
auxiliaire sous la forme d’une matrice carrée symétrique S(k) telle que:

λ(k) = S(k)x(k) (7.6)

132
COMMANDE OPTIMALE

La valeur finale de S(k) est obtenue en posant k = N . Il apparaît que:

λ(N) = S(N)x(N) , d’où:





Q 1 x(N)

S(N) = Q 1 (7.7)

La matrice S(k) est utilisée pour éliminer λ(k) et λ(k + 1) dans les
équations (7.1), (7.3) et (7.4). Il vient:

S(k) = Φ T { S(k + 1) – S(k + 1)Γ [ Q 2 + Γ T S(k + 1)Γ ] – 1 Γ T S(k + 1) }Φ + Q 1

Il s’agit d’une équation de Riccati discrète dans laquelle n’apparaît que la


variable S(k) . Cette équation peut se résoudre en arrière à partir de la valeur finale
S(N) = Q 1 . Une fois la matrice S(k) déterminée pour chaque instant
d’échantillonnage, la factorisation suivante peut être mise en évidence à partir des
équations (7.1) et (7.6):

Q 2 u(k) = – Γ T λ(k + 1)




S(k + 1)x(k + 1)

Q 2 u(k) = – Γ T S(k + 1) x(k + 1)






[ Φx(k) + Γu(k) ]

u(k) = – [ Q 2 + Γ T S(k + 1)Γ ] – 1 Γ T S(k + 1)Φ x(k)
















K(k)

La commande optimale cherchée est donc fournie par la relation:

u(k) = – K(k)x(k)

r = – r×n n

Sans n’avoir rien spécifié sur la structure de la contre-réaction, il apparaît


que les commandes de la séquence optimale sont proportionnelles à l’état, tout
comme le sont celles introduites dans le contexte du placement des valeurs

133
COMMANDE OPTIMALE

propres. Néanmoins, le gain est ici non stationnaire. La structure d’une commande
d’état générale est donc celle représentée à la figure 7-4.

Système x
à régler

– K(k)
u(k): vecteur
Figure 7-4 Structure d’une commande d’état générale.

7.1.8 Algorithme d’élaboration d’une commande optimale

Pour favoriser la détermination du gain K(k) , deux variables


intermédiaires R(k) et M(k) sont introduites. La solution de l’équation de Riccati
étant indépendante de l’état initial x(0) , elle peut être déterminée a priori et le gain
stocké en mémoire en vue d’une implantation ultérieure de la commande si
l’horizon N est constant. En relevant que comme u(N) = 0 et que x(N) ≠ 0 , le
gain K(N) doit être nul, les étapes d’élaboration de la solution suivantes peuvent
être proposées:

Poser comme conditions finales S(N) = Q 1 et K(N) = 0 ;

Commencer avec k = N ;

Déterminer R(k) = Q 2 + Γ T S(k)Γ et son inverse;

Déterminer M(k) = S(k) – S(k)ΓR – 1(k)Γ T S(k) ;

Déterminer le gain K(k – 1) = R – 1(k)Γ T S(k)Φ

Sauvegarder le gain K(k – 1)

Poser S(k – 1) = Φ T M(k)Φ + Q 1

Poser k = k – 1

Recommencer en .

134
COMMANDE OPTIMALE

7.1.9 Commande linéaire quadratique (LQR)


Comme solution d’un problème de minimisation, S(k) converge vers une
valeur stationnaire lorsque k diminue.

Cas SISO
S(k)
S ∞ = cte

Q1

k
0 N

K ∞ = cte: Gain optimal


det [ λI – Φ + ΓK ∞ ] = 0
valeurs propres optimales!

Comme la plupart des systèmes fonctionnent continuellement, N → ∞ et


le régime transitoire est négligeable.
Le gain optimal stationnaire K ∞ est obtenu en posant:

S ∞ = S(k) = S(k + 1)

S ∞ = Φ T [ S ∞ – S ∞ ΓR – 1 Γ T S ∞ ]Φ + Q 1 ⇒ LQR
Linear
Quadratic
“carré”, donc 2 solutions Regulator
Prendre la solution définie positive.
La commande Matlab qui fournit ces valeurs optimales stationnaires est:

[ K ∞, S ∞, E ∞ ] = dlqr ( Φ, Γ, Q 1, Q 2 )

135
RÉSUMÉ DE LA COMMANDE OPTIMALE STATIONNAIRE

7.2 Résumé de la commande optimale stationnaire


Trouver la séquence de commande u(k) qui minimise la fonction coût:
N
1
J = ---
2 ∑ x̃ T(k)Q 1 x̃(k) + ũ T(k)Q 2 ũ(k)












k = 0 Somme Somme quadratique
quadratique des des écarts par
écarts par rapport à la
rapport à l’état commande
nominal nominale
Q 1 et Q 2 matrices de pondération diagonales, avec éléments
positifs ou nuls.
n×n r×r

Solution par la méthode de Lagrange de la forme:

u(k) = – K(k)x(k)
Solution stationnaire pour un horizon d’optimisation N → ∞ .

S∞ = Φ T S ∞ – S ∞ Γ ( Q 2 + Γ T S∞ Γ ) –1 Γ T S ∞ Φ + Q1






R∞

–1 Γ T S Φ
K∞ = R∞ avec les dimensions: S ∞ : n × n et K ∞ : n × n

u(k) = – K ∞ x(k)

Une commande obtenue par cette méthode optimale est plus “douce” pour
les actuateurs que celle obtenue par un placement des valeurs propres. La
limitation de la sollicitation des actuateurs est néanmoins obtenue au détriment
d’un contrôle explicite des amortissements absolus et relatifs. La suppression
éventuelle d’oscillations par un placement judicieux des valeurs propres n’est
également plus possible, ce qui n’est pas acceptable dans des applications en
machines-outils par exemple.

136
COMMANDE OPTIMALE

7.3 Exemples
7.3.1 Échangeur de chaleur
Soit l’échangeur de chaleur introduit dans l’exercice 3.6.1 et le modèle
d’état analogique linéarisé obtenu. Le modèle d’état discret peut être déterminé
numériquement au moyen de la fonction c2d de Matlab. Pour une période
d’échantillonnage de h = 0.25 [ s ] , il vient:

Φ = 0.63 0.36 ; Γ = 0.025


0.09 0.85 0.115

La seule grandeur qui doit être réglée étant la variable x̃ 1 , les matrices de
pondération suivantes sont choisies:

Q 1 = 50 0 et Q 2 = 1
0 0

Le schéma fonctionnel pour l’implantation de la commande est représenté


à la figure 7-5.

x 2(t)
A
u u(k) u(t) Echangeur D
D x (t ) x 2(k)
+ A de chaleur 1 A
+ D

ũ(k)
x 1(k)

+ – x̃ 2 -
3.16
+ +

– x̃ 1 -
2.02
+ x = x
1 2

Figure 7-5 Structure de la commande optimale de l’échangeur.

137
EXEMPLES

Le fichier de commandes Matlab pour obtenir à la fois un gain évolutif et


un gain stationnaire est le suivant:
clear

% Modèle analogique
% -----------------
A=[-2 2; 0.5 -0.75];
B=[0;0.5];
C=[1 0;0 1];
D=[0;0];

% Modèle discret
% --------------
h=0.25;
[F,G]=c2d(A,B,h);

% Gain évolutif
% -------------
Q1=[50 0;0 0];
Q2=1;
N=20;

S=Q1;
K(N,1:2)=[0 0];
for k=N:-1:2,
InvR=inv(Q2+G'*S*G);
M=S-S*G*InvR*G'*S;
K(k-1,1:2)=InvR*G'*S*F;
S=F'*M*F+Q1;
end,

plot(K)

% LQR (solution stationnaire)


% ---------------------------
[Ks,Ss,E]=dlqr(F,G,Q1,Q2); % Ks = [2.0205 3.1559]
Ks % E = val. propres = 0.5333±0.1951i

L’évolution des gains optimaux est représentée à la figure 7-6.


3.5

3
k 2(k)
2.5

k 1(k)
1.5

0.5

0
0 2 4 6 8 10 12 14 16 18 20

Figure 7-6 Evolution des gains optimaux en fonction de k.

138
COMMANDE OPTIMALE

Les valeurs stationnaires des gains pour N → ∞ sont k 1 = 2.02 et


k 2 = 3.16 . Ces valeurs sont utilisées pour générer les réponses données aux
figures 7-7 et 7-8.

1.5

x̃ 1(kh)
0.5

x̃ 2(kh)
-0.5
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

Figure 7-7 Evolutions des états en fonction du temps exprimé en secondes.

-1
ũ(kh)
-2

-3

-4

-5

-6

-7

-8
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

Figure 7-8 Evolution de la commande en fonction du temps exprimé en secondes.

139
EXEMPLES

7.3.2 Cuve de mélange


La commande optimale stationnaire (LQR) pour la cuve de mélange
introduite au paragraphe 3.6.2 est déterminée au moyen du fichier de commandes
Matlab suivant:
clear

% Valeurs nominales
% -----------------
x1o=1;
x2o=1.25;
u1o=0.015;
u2o=0.005;
c1=1;
c2=2;
S=1;
K=0.02;

% Modèle linéarisé analogique


% ---------------------------
A=-[K*sqrt(x1o/S)/2 0 ; 0 u1o+u2o]./x1o;
B=[1 1 ; (c1-x2o)/x1o (c2-x2o)/x1o];
C=[1/S 0 ; 0 1];
D=[0 0 ; 0 0];

% Modèle linéarisé discrétisé


% ---------------------------
h=2; % Période d’échantillonnage en secondes
[F,G]=c2d(A,B,h);
CI=[-0.1;0];
a=A(1,1);
b=A(2,2);
p=B(2,1);
q=B(2,2);
Fex=[exp(a*h) 0;0 exp(b*h)]
Gex=[(exp(a*h)-1)/a (exp(a*h)-1)/a; p*(exp(b*h)-1)/b q*(exp(b*h)-1)/b]

% Regulateur optimal
% ------------------
Q1=[1 0;0 1];
Q2=[10 0;0 100];
[Ks,Ss,E]=dlqr(F,G,Q1,Q2);
[t,x,y]=sim('SimCuve',100);
u=x*Ks';
plot(t,x)
pause
plot(t,u)

Des écarts initiaux des états x̃ 1(0) = – 0.1 et x̃ 2(0) = 0 ont été choisis
pour illustrer l’efficacité de la commande dans un domaine de variations linéaires
autour du point de fonctionnement.
Pour refléter le fait que les deux états sont de même ordre de grandeur, la
matrice de pondération Q 1 suivante à été choisie:

Q1 = 1 0
0 1

140
COMMANDE OPTIMALE

Quant à la matrice Q 2 , elle donne plus de poids à la seconde entrée:

Q 2 = 10 0
0 100

Les résultats de simulation sont donnés aux figures 7-9 et 7-10.

-0.01
x̃ 2
-0.02

-0.03
x̃ 1
-0.04
K∞ = 0.2 – 0.092
-0.05 0.03 0.067
-0.06

-0.07

-0.08

-0.09

-0.1
0 5 10 15 20 25 30 35 40 45 50

Figure 7-9 Evolution des états en fonction du temps exprimé en secondes.

-3
x 10
5

ũ 2
0

-5 ũ 1

-10

-15

-20
0 5 10 15 20 25 30 35 40 45 50

Figure 7-10 Evolution des commandes en fonction du temps exprimé en secondes.

Les écarts initiaux de commande sont ũ 1(0) = 0.02 et ũ 2(0) = 0.003 .

141
RAPPELS MATHÉMATIQUES

7.4 Rappels mathématiques


Soit A une matrice réelle, symétrique ( a ij = a ji ), de dimensions n × n .
Soit x et y des vecteurs réels, de dimension n.

7.4.1 Forme quadratique réelle


n n
x T Ax = ∑ ∑ aij xi xj
i = 1j = 1
Cette forme est un scalaire.

A est définie positive si:

x T Ax > 0 pour x ≠ 0

x T Ax = 0 pour x = 0

• Les valeurs propres d’une matrice réelle symétrique sont réelles.

• Si A est définie positive, ses valeurs propres sont positives (réelles)


et A est régulière.

7.4.2 Dérivée d’une forme quadratique réelle


∂ T T ∂ x1 T
x Ax = 2Ax = ( 2x T A ) = x Ax
∂x ∂
∂ x2

Cette forme est un vecteur colonne.

Rappel: ( AB ) T = B T A T

142
COMMANDE OPTIMALE

7.4.3 Forme bilinéaire


n n
x T Ay = ∑ ∑ aij xi yj
i = 1j = 1
Cette forme est un scalaire.

7.4.4 Dérivée d’une forme bilinéaire


∂ T
x Ay = Ay
∂x
Cette forme est un vecteur colonne.

De même:
∂ T T
y Ax = A y
∂x
T
Comme A est symétrique, A = A.

143
EXERCICES

7.5 Exercices
7.5.1 Retard pur

Soit le retard pur discret décrit par l’équation aux différences suivante:

y(k + 2) = u(k) .

Déterminer un régulateur optimal stationnaire pour commander ce sys-


tème en utilisant des matrices identité comme pondérations Q 1 et Q 2 .
Commenter le résultat et comparer avec un régulateur à réponse pile.

7.5.2 Entraînement optimal

Réglage optimal de vitesse autour d’un point de fonctionnement.

La dynamique d’un entraînement dont on mesure la vitesse est donnée par:


·
ω(t) = aω(t) + bu(t)
y(t) = ω(t)

Le modèle d’état discret équivalent est: (avec x = ω )

x(k + 1) = φx(k) + γu(k)


y(k) = x(k)
b
où φ = e ah et γ = --- ( φ – 1 ) .
a

Décrire ce système par un modèle d’état valable autour du point de


fonctionnement: x = c (c: consigne de vitesse).
Esquisser la structure de réglage et d’imposition du point de
fonctionnement.
Déterminer le gain de contre-réaction d’état stationnaire optimal avec
h = 25 [ ms ] ; a = – 5 et b = 1 . Choisir Q 1 = 100 et Q 2 = 1 .

7.5.3 Enceinte de chauffage optimale


Esquisser le synthèse de la commande optimale pour l’enceinte de
chauffage décrite à la Section 5.7.

144
COMMANDE OPTIMALE

7.6 Solutions des exercices


7.6.1 Retard pur
Soit l’équation y(k + 2) = u(k) .
Le choix des variables d’état est x 1(k) = y(k) et x 2(k) = y(k + 1) . Ainsi:
x 1(k + 1) = x 2(k)
x 2(k + 1) = u(k)

Le modèle d’état est: x(k + 1) = 0 1 x(k) + 0 u(k) , Ainsi:


0 0 1

Φ = 0 1 ,Γ = 0 ,Q = 1 0 , Q = q = 1 et
1 2 2
0 0 1 0 1

s1 s T s1 s 0
S∞ = , R∞ = Q2 + Γ S∞ Γ = 1 + 0 1 = 1 + s2
s s2 s s2 1

T⎧ –1 T ⎫
S ∞ est solution de S ∞ = Φ ⎨ S ∞ – S ∞ ΓR ∞ Γ S ∞ ⎬Φ + Q 1
⎩ ⎭
⎧ ⎫
⎪ s1 s 0 s1 s ⎪
⎪ 0 1 ⎪
s1 s ⎨ s s s s2 1 s s2 ⎬
= 0 0 ⎪ 1 – ---------------------------------------------------------- ⎪ 0 1 + 1 0
s s2 1 0 ⎪ s s2 1 + s2 ⎪ 0 0 0 1
⎩ ⎭

2 s2 s
s
s 1 – -------------- s – -------------- 1 0
0 0 1 + s2 1 + s2 0 1 + 1 0
= = s
2
1 0 2 0 0 0 1 0 1 + s 1 – --------------
s2 s s2 1 + s2
s – -------------- s 2 – --------------
1 + s2 1 + s2

d’où: S∞ = 1 0 et K = 0 0

0 2

Pour un retard pur de deux périodes d’échantillonnage, il suffit d’attendre


deux périodes d’échantillonnage pour que l’entrée apparaîsse à la sortie. Nous
sommes donc en présence d’une réponse pile, même sans rétroaction ( K = 0 )!

145
SOLUTIONS DES EXERCICES

7.6.2 Entraînement optimal

• Point de fonctionnement

x(k + 1) = φx(k) + γu(k)

c = φc + γu
1
⇒ u = --- ( 1 – φ )c
γ

• Schéma fonctionnel

u + u(k) x(t) = y(t)


D Entraînement
A
grandeur à
régler
ũ(k) A
D
régulateur d’état
x(k)
x̃(k) + c
–K
- consigne

1
--- ( 1 – φ )
γ
commande a priori
• Réglage optimal
Système à régler:

x̃(k + 1) = φx̃(k) + γũ(k) et ỹ(k) = x̃(k)

• Gouvernabilité
Le système est d’ordre un. La matrice de gouvernabilité: G = γ de rang
un, donc gouvernable, si γ ≠ 0

146
COMMANDE OPTIMALE

• Gain stationnaire

S ∞ = s “matrice” de dimension 1 × 1

R ∞ = r = Q 2 + sγ 2 = 1.166

1
s = φ 2 s – s 2 γ 2 --------------------- + Q 1 = 301
Q 2 + sγ 2

Cette dernière équation s’écrit:

s2 γ 2 + s ( Q2 – Q2 φ 2 – Q1 γ2 ) – Q1 Q2 = 0

C’est la solution positive de cette équation du second degré qui permet de


1
calculer le gain K = --- γsφ = 5.35 .
r

• M-file
clear

% Modèle analogique de l'entraînement


% -----------------------------------
a=-5;
b=1;

% Modèle discret de l'entraînement


% --------------------------------
h=25e-3;
F=exp(a*h);
G=b*(F-1)/a;

% Régulateur optimal
% ------------------
Q1=100;
Q2=1;

% Solution numérique par Matlab


% -----------------------------
[K,S,E]=dlqr(F,G,Q1,Q2)

% Solution stationnaire analytique


% --------------------------------

Sol=roots([G^2 (Q2-Q2*F^2-Q1*G^2) -Q1*Q2]);

Sinf=max(Sol)

Rinf=Q2+G'*Sinf*G;
Kinf=inv(Rinf)*G'*Sinf*F

147
SOLUTIONS DES EXERCICES

• Simulation

A = F, B = G, CI = 2 rad/s

C = 1, D = 0, h

–K

0

-2 ũ

-4

-6

-8

-10

-12
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

148
COMMANDE OPTIMALE

7.6.3 Enceinte de chauffage optimale

Commande optimale avec intégrateur (synthèse LQR)

q 11 0
Q1 = , diagonale et symétrique
0 q 12

Q2 = q2

s1 s
S = S∞ = , symétrique et définie positive
s s2

T 2
R = R∞ = Q2 + Γ* S∞ Γ* = q2 + γ s1

T –1 T
S ∞ = Φ * [ S ∞ – S ∞ Γ * R ∞ Γ * S ∞ ]Φ * + Q 1
Solution numérique avec Matlab
ou
Solution symbolique avec Mathematica (inconnues: s, s 1, s 2 )

⎧ 2 2 2 ⎫
⎪ s 1 γ ss 1 γ ⎪
s1 s ⎪ s s ⎪ q 0
ϕ 1 ⎨ 1 2 2 2 ⎬ ϕ 0
+ 11
= – ss 1 γ s γ
s s2 0 1 ⎪ s s 2 ---------------------------------- ⎪ 1 1 0 q 12
⎪ 2 ⎪
⎩ q2 + γ s1 ⎭

s1 q2 sq 2
1
= --------------------- ϕ 1 ϕ 0 + q 11 0
2 2 2 2
q 2 + γ s 1 0 1 sq 2 s 2 q 2 + s 1 s 2 γ – s γ 1 1 0 q 12

Une identification termes à termes est nécessaire.

149
Annexe A
FORMES CANONIQUES

A.1 Forme canonique de gouvernabilité (W)


A.1.1 Modèle d’état d’un système SISO représenté par une fonction de
transfert
Comme déterminé au paragraphe 2.5, la fonction de transfert discrète:

Y(z) b 0 + b 1 z –1 + b 2 z –2 + … + b n z –n
H(z) = ---------- = ----------------------------------------------------------------------------
- (A.1)
U(z) 1 + a 1 z –1 + a 2 z –2 + … + a n z –n

peux être réprésentée par un modèle d’état qui fait intervenir des variables d’état
artificielles w:
–a1 –a2 … –an – 1 –an 1
1 0 … 0 0 0
w(k + 1) = 0 1 % # # w(k) + 0 u(k) (A.2)
# % % 0 0 #
0 … 0 1 0 0












Φw gw

y(k) = b 1 – a 1 b 0 | b 2 – a 2 b 0 | … | b n – a n b 0 w(k) + b 0 u(k) (A.3)


















c wT

Il est trivial de montrer que l’équation caractéristique de la matrice Φ w est


la suivante:

det ( λI – Φ w ) = λ n + a 1 λ n – 1 + a 2 λ n – 2 + … + a n – 1 λ + a n = 0

151
FORME CANONIQUE DE GOUVERNABILITÉ (W)

Les valeurs propres de Φ w sont donc égales aux pôles de la fonction de


transfert H(z) .

A.1.2 Fonction de transfert d’un système SISO représenté par un


modèle d’état
Soit le modèle d’état d’un système SISO discret:

x(k + 1) = Φx(k) + gu(k)


T
y(k) = c x(k) + du(k)

Nous allons effectuer un changement de variables d’état pour trouver,


comme représentation, la forme canonique de gouvernabilité (W). La fonction
de transfert correspondante s’obtient ensuite immédiatement grâce aux résultats
du paragraphe A.1.1.
La représentation d’état n’étant pas unique, n’importe quelle application
linéaire bijective peut être choisie pour passer du vecteur d’état x à un nouveau
vecteur d’état w, par exemple w = Px . La matrice P , de dimension n × n , doit
être régulière (inversible), pour que la transformation inverse x = P – 1 w soit
possible. Le nouveau modèle d’état, exprimé par rapport à la variable d’état
artificielle w, est alors:

w(k + 1) = PΦP – 1 w(k) + Pgu(k)


T
y(k) = c P – 1 w(k) + du(k)

L’objectif est maintenant de trouver une matrice P régulière, telle que le


modèle d’état se présente sous la forme canonique souhaitée.
Choisissons tout d’abord une matrice particulière G :

G = [ Ig Φg … Φn – 1g] (A.4)
construite à partir des éléments du modèle d’état original. Cette matrice porte le
nom de matrice de gouvernabilité ou de commandabilité. Cette dénomination sera
justifiée plus loin. Les lignes de l’inverse de la matrice G peuvent être repérées
arbitrairement de la manière suivante:

e 1T
G –1 = #
e nT

152
FORMES CANONIQUES

Par définition de l’inverse d’une matrice, nous avons: I = G –1 G , c’est-à-


dire:

1 0 … 0 e 1T Ig e 1T Φg … e 1T Φ n – 1 g
0 1 % # = e 2T Ig e 2T Φg … e 2T Φ n – 1 g
# % % 0 # # #
0 … 0 1 e nT Ig e nT Φg … e nT Φ n – 1 g

En identifiant la dernière ligne des deux membres de cette équation, il


vient:

e nT Ig = e nT Φg = … = e nT Φ n – 2 g = 0 (A.5)

e nT Φ n – 1 g = 1 (A.6)

Les vecteurs lignes e nT I, e nT Φ, …, e nT Φ n – 1 sont linéairement


indépendants. En effet, supposons l’existence des constantes α 0, α 1, …, α n – 1
telles que:

α 0 e nT I + α 1 e nT Φ + … + α n – 1 e nT Φ n – 1 = 0 (A.7)

La multiplication de (A.7) par le vecteur g donne:

α 0 e nT Ig + α 1 e nT Φg + … + α n – 1 e nT Φ n – 1 g = 0

Par les équations (A.5) et (A.6), il vient: α n – 1 = 0 . La multiplication de


(A.7) par Φg donne:

α 0 e nT Φg + α 1 e nT Φ 2 g + … + α n – 2 e nT Φ n – 1 g = 0

Par les équations (A.5) et (A.6), il vient: α n – 2 = 0 . En poursuivant ce


processus, nous aboutissons à:

α0 = α1 = … = αn – 1 = 0

Ceci montre que les vecteurs e nT I, e nT Φ, …, e nT Φ n – 1 sont linéairement


indépendants. Ils peuvent donc être utilisés pour construire la matrice P, qui sera
régulière.

153
FORME CANONIQUE DE GOUVERNABILITÉ (W)

e nT Φ n – 1
e nT Φ n – 2
P =
#
e nT I

Par conséquent, la matrice Pg qui entre dans le nouveau modèle d’état est:

e nT Φ n – 1 g
e nT Φ n – 2 g
Pg =
#
e nT Ig

Une simple inspection montre qu’il s’agit en fait de la transposée de la


dernière ligne de la matrice G –1 G . Ainsi:

1
Pg = 0
#
0

Quant au produit PΦP – 1 , également présent dans la nouvelle équation


d’état, il peut s’exprimer sous la forme suivante:

e nT Φ n P – 1
e nT Φ n – 1 P –1
P ( ΦP – 1 ) = (A.8)
#
e nT ΦP –1

La première ligne de cette matrice est inconnue. On pose arbitrairement:

e nT Φ n P –1 = – a 1 – a 2 … – a n – 1 – a n

154
FORMES CANONIQUES

Les autres lignes s’obtiennent par comparaison, sachant que PP – 1 = I :

e nT Φ n – 1 P – 1
1 0 …00
e nT Φ n – 2 P – 1 0 1 …00
PP – 1 = # = # # # #
e nT ΦP – 1 0 0 …10
–1 0 0 …01
e nT IP

Ainsi:

–a1 –a2 … –an – 1 –an


1 0 … 0 0
PΦP – 1 = 0 1 % # #
# % % 0 0
0 … 0 1 0

Finalement, le modèle d’état exprimé en fonction de w par la


transformation se présente sous une forme similaire à la forme canonique de
gouvernabilité (W):

–a1 –a2 … –an – 1 –an 1


1 0 … 0 0 0
w(k + 1) = 0 1 % # # w(k) + 0 u(k) (A.9)
# % % 0 0 #
0 … 0 1 0 0












–1 Pg = g w
PΦP = Φw

y(k) = b 1 – a 1 b 0 | b 2 – a 2 b 0 | … | b n – a n b 0 w(k) + b 0 u(k) (A.10)


















T
c T P –1 = cw

Le facteur c T P –1 doit quant à lui être calculé de cas en cas.


–1
Les coefficients du polynôme caractéristique de PΦP sont les mêmes
que ceux du polynôme caractéristique de la matrice Φ et que ceux du

155
FORME CANONIQUE DE GOUVERNABILITÉ (W)

dénominateur de H(z) . Les valeurs propres et les pôles constituent en effet une
caractéristique intrinsèque à un système, en relation avec sa stabilité, et doivent
donc être indépendants de la forme de représentation.

A.1.3 Exemple: Double intégrateur


Soit la fonction de transfert discrète du double intégrateur obtenue au
paragraphe 4.2.4.

h2 h2 h 2 –1 h 2 –2
----
- z + ----
- ----- z + ----- z
h2 ( z + 1 ) 2 2 2 2
H(z) = ----- ------------------2 = -------------------------
- = ---------------------------------
2 (z – 1) z 2 – 2z + 1 1 – 2z – 1 + z –2

h2
b0 = 0 ; b1 = b2 = - ; a1 = –2 ; a2 = 1
----
2
Les résultats du paragraphe A.1.1 permettent de construire directement
une représentation d’état qui ne possède toutefois aucune signification physique.

w(k + 1) = 2 – 1 w(k) + 1 u(k)


1 0 0

y(k) = h2 h2
----- ----- w(k)
2 2

La représentation d’état, équivalente mais possédant un sens physique, à


également été obtenue au paragraphe 4.2.4.

x(k + 1) = 1 h x(k) + h 2 ⁄ 2 u(k)


0 1 h

y(k) = 1 0 x(k)

Les résultats du paragraphe A.1.2 permettent de faire le passage inverse


pour revenir à une fonction de transfert. Les coefficients a 1 et a 2 du
dénominateur de H(z) sont les coefficients du polynôme caractéristique de Φ ,
soit:

det ( λI – Φ ) = λ – 1 –h = 0
0 λ–1

156
FORMES CANONIQUES

2
λ 2 – 2λ + 1 = z + a 1 z + a 2 = 0

Relevons que la transformation entreprise ne nécessite pas le calcul des ra-


cines de ce polynôme.
Les coefficients b 1 et b 2 du numérateur de la fonction de transfert sont ti-
rés de l’équation de sortie: y(k) = c T P –1 w(k) .

G = g Φg = h 2 ⁄ 2 3h 2 ⁄ 2 (A.11)
h h

1
G –1 = – ----3- h – 3h 2 ⁄ 2 → e T = – ----
1
-
h 2
n
h 3 –h h2 ⁄ 2
–h h ⁄2

e nT Φ 1 –h –h2 ⁄ 2
P = = – ----3-
e nT h –h h2 ⁄ 2

1 2 2
P – 1 = – ----3- ( – h 3 ) h ⁄ 2 h ⁄ 2
h h –h

2 2
c T P –1 = 1 0 h ⁄ 2 h ⁄ 2 = h 2 ⁄ 2 h 2 ⁄ 2
h –h

Comme d = 0 , on sait que b 0 = 0 donc c T P – 1 = b 1 b 2 .


On a donc directement:

h2 h2
b 1 = ----- et b 2 = -----
2 2

157
FORME CANONIQUE D’OBSERVABILITÉ (V)

A.2 Forme canonique d’observabilité (V)


A.2.1 Modèle d’état d’un système SISO représenté par une fonction de
transfert
Le système décrit par la fonction de transfert discrète (A.1):

Y(z) b 0 + b 1 z –1 + … + b n z –n
H(z) = ---------- = --------------------------------------------------------
-
U(z) 1 + a1 z –1 + … + an z –n

peut être décrit par le modèle d’état suivant:

–a1 1 0 … 0
–a2 0 1 % #
v(k + 1) = # # % % 0 v(k) + g v u(k) (A.12)
–an – 1 0 … 0 1
–an 0 … 0 0










Φv

b1 – a1 b0
b2 – a2 b0
avec: gv = #
bn – 1 – an – 1 b0
bn – an b0

y(k) = 1 0 … 0 0 v(k) + b 0 u(k) (A.13)










T
cv

Il s’agit de la forme canonique d’observabilité (V). Pour démontrer cette


représentation à rebours, il suffit de prendre la transformée en “z” des équations
(A.12) et (A.13), puis de faire disparaître les variables d’état. Une approche
similaire à celle prise au paragraphe 2.5 peut également être adoptée pour
effectuer sa construction. L’équation (A.1) peut en effet être écrite sous la forme:

Y(z) ( 1 + a 1 z –1 + … + a n z – n ) = U(z) ( b 0 + b 1 z – 1 + … + b n z –n )

158
FORMES CANONIQUES

ou encore:
–1
[ Y(z) – b 0 U(z) ] + z [ a 1 Y(z) – b 1 U(z) ] + …
–n
… + z [ a n Y(z) – b n U(z) ] = 0

Cette expression peut être mise sous une forme imbriquée:


–1 –1
Y(z) = b 0 U(z) + z ( b 1 U(z) – a 1 Y(z) + z { b 2 U(z) – a 2 Y(z) (A.14)
–1 –1
+ z [ b 3 U(z) – a 3 Y(z) + z ( … ) ] } )

Cette équation suggère, par soucis de simplicité de représentation


mathématique, le choix suivant des variables d’état artificielles v i :
–1
V 1(z) = z [ b 1 U(z) – a 1 Y(z) + V 2(z) ]
–1
V 2(z) = z [ b 2 U(z) – a 2 Y(z) + V 3(z) ]
# (A.15)
–1
V n – 1(z) = z [ b n – 1 U(z) – a n – 1 Y(z) + V n(z) ]
–1
V n(z) = z [ b n U(z) – a n Y(z) ]

Un transformation en “z” inverse de (A.14) et de (A.15) fournit


respectivement les équations de sortie et d’état attendues:

y(k) = b 0 u(k) + v 1(k)

y(k)






v 1(k + 1) = b 1 u(k) – a 1 [ b 0 u(k) + v 1(k) ] + v 2(k)

v 2(k + 1) = b 2 u(k) – a 2 [ b 0 u(k) + v 1(k) ] + v 3(k)


#
v n – 1(k + 1) = b n – 1 u(k) – a n – 1 [ b 0 u(k) + v 1(k) ] + v n(k)
v n(k + 1) = b n u(k) – a n Y(z)

159
FORME CANONIQUE D’OBSERVABILITÉ (V)

A.2.2 Fonction de transfert d’un système SISO représenté par un


modèle d’état
Soit le modèle d’état d’un système SISO discret:

x(k + 1) = Φx(k) + gu(k)


T
y(k) = c x(k) + du(k)

Nous allons effectuer un changement de variables d’état pour trouver,


comme représentation, la forme canonique d’observabilité (V). La fonction de
transfert correspondante s’obtient ensuite immédiatement grâce aux résultats du
paragraphe A.2.1.
La représentation d’état n’étant pas unique, n’importe quelle application
linéaire bijective peut être choisie pour passer du vecteur d’état x à un nouveau
vecteur d’état v , par exemple x = Rv . La matrice R , de dimension n × n , doit
être régulière (inversible), pour que la transformation inverse v = R – 1 x soit
possible. Le nouveau modèle d’état, exprimé par rapport à la variable d’état
artificielle v, est alors:
–1 –1
v(k + 1) = R ΦRv(k) + R gu(k)
T
y(k) = c Rv(k) + du(k)

L’objectif est maintenant de trouver une matrice R régulière, telle que le


modèle d’état se présente sous la forme canonique souhaitée.
Choisissons tout d’abord une matrice particulière Q :

T
c I
T
Q = c Φ (A.16)
#
T
c Φn – 1

construite à partir des éléments du modèle d’état original. Cette matrice porte le
nom de matrice d’observabilité. Cette dénomination sera justifiée plus loin. Les
colonnes de l’inverse de la matrice Q peuvent être repérées arbitrairement de la
manière suivante:

Q –1 = e 1 e 2 … e n

160
FORMES CANONIQUES

La dernière colonne de cette matrice est utilisée pour construire la matrice


régulière R (la démonstration de sa régularité est similaire à celle élaborée pour
montrer la régularité de P au paragraphe A.1.2):

R = Φ n – 1 en … Φe n Ie n

T
Par cette transformation, le produit c R présent dans la nouvelle équation de
sortie se présente sous la forme:

T T T T
c R = c Φn – 1 en … c Φe n c Ie n (A.17)

et comme par définition de l’inverse d’une matrice I = QQ – 1 , il vient:

T T T
c Ie 1 c Ie 2 … c Ie n
1 0 … 0
T T T
0 1 % # = c Φe 1 c Φe 2 … c Φe n (A.18)
# % % 0 # # #
0 … 0 1 T T T
c Φ n – 1 e1 c Φ n – 1 e2 … c Φ n – 1 en

alors la comparaison du vecteur (A.17) et de la dernière colonne transposée de


(A.18) conduit à une équation de sortie similaire à celle qu’exhibe la forme
canonique considérée:

T T
c R = 1 0 … 0 = cv

La représentation d’état complète obtenue par le changement de variable


x = Rv est donc similaire à la forme canonique d’observabilité (V).

Le produit R – 1 ΦR , il s’écrit quant à lui:

( R – 1 Φ )R = R – 1 Φ Φ n – 1 e n … Φe n Ie n

R – 1 ΦR = R –1 Φ n e n … R – 1 Φ 2 e n R – 1 Φe n (A.19)

161
FORME CANONIQUE D’OBSERVABILITÉ (V)

de plus:

I = R – 1 R = R – 1 Φ n – 1 e n … R – 1 Φe n R – 1 e n (A.20)

La comparaison de (A.19) et (A.20) donne:

1 0 0
R – 1 Φ n – 1 e n = 0 , …, R – 1 Φe n = # , R –1 e n = #
# 1 0
0 0 1

Seul le terme R –1 Φ n e n est inconnu et est posé arbitrairement:

–a1
–a2
R –1 Φ n en = #
–an – 1
–an

Ainsi,

–a1 1 0 … 0
–a2 0 1 % #
R – 1 ΦR = # # % % 0 = Φv
–an – 1 0 … 0 1
–an 0 … 0 0

–1
Le facteur R g = g v doit quant à lui être déterminé de cas en cas.

Les coefficients du polynôme caractéristique de R –1 ΦR sont les mêmes


que ceux du polynôme caractéristique de Φ et du dénominateur de H(z) :

det ( λI – Φ v ) = λ n + a 1 λ n – 1 + … + a n – 1 λ + a n = 0

162