Vous êtes sur la page 1sur 164

Systmes multivariables

Coordination de systmes et de dispositifs dynamiques distribus

Dr Denis GILLET
Matre denseignement et de recherche

Destin aux tudiants des sections de


la Facult des Sciences et Techniques de lIngnieur (STI)

Lausanne
Septembre 2011

Les ouvrages signals dans ce cours sont disponibles pour la plupart


la Bibliothque centrale de lEPFL dans la collection denseignement COEN.
Pour tout renseignement complmentaire vous pouvez utiliser, la Bibliothque,
les terminaux placs proximit de la COEN.
Vous pouvez galement vous adresser laccueil /Information lentre de la Bibliothque centrale,
Tl.: 021 693 2156, info.bc@epfl.ch

Toute reprsentation ou reproduction intgrale ou partielle, faite sans le consentement de l'auteur est
illicite. D. Gillet, 1995-2011

CHAPITRE 1
INTRODUCTION

1.1

Systme

Les diffrents lments dinteraction entre un systme dynamique et son


environnement sont reprsents dans la figure qui suit.

Ractions
Effets
Rsultats
Comportements qui doivent
tre observs ou modifis
Influences du systme sur
lenviromment
Rponse du systme
Observations

Actions
Causes
Donnes
Moyens disponibles pour
influencer le systme
Influences de lenvironnement
sur le systme
Excitation
Grandeurs pouvant tre
manipules

Systme

Entres

Objet de notre
attention

Sorties

Collection dobjets
en interaction

Environnement

Perturbations

Influence de lenvironnement
sur le systme
alatoires
ngliges
non-souhaites
inconues

Figure 1-1 Dfinitions des grandeurs relatives un systme.

SYSTME

Rappelons que les entres d'un processus reprsentent des causes qui
agissent sur lui de l'extrieur, par exemple des perturbations, ou encore des
excitations standard (impulsion, saut, rampe et sinusode). Les sorties regroupent
les effets qui en dcoulent et dsignent le plus souvent des signaux mesurs. Les
systmes considrs dans ce chapitre sont essentiellement multivariables, c'est-dire qu'ils possdent r entres u 1, u 2, , u r mutuellement couples avec p sorties
y 1, y 2, , y p ; ainsi, l'entre u i , par exemple, peut influencer simultanment
plusieurs sorties. Une description schmatique d'un tel systme apparat dans la
figure 1-2.
u1

y1

u2

y2

#
ur

#
yp

Figure 1-2 Systme multivariable r entres et p sorties

Soulignons que les entres influencent l'tat dans lequel se trouve un


systme et que les sorties dpendent de cet tat. Bien que cette notion dtat puisse
tre perue intuitivement, elle sera aborde formellement dans la prochaine
section. Soulignons finalement que seule une reprsentation mathmatique des
interactions mentionnes est mme de fournir les informations ncessaires
lingnieur pour ses tches danalyse et de synthse de systmes de commande.
Une telle reprsentation constitue le modle du systme.
Les lois physiques rgissant les systmes tant presque exclusivement de
nature diffrentielle, les modles les plus souvent rencontrs sont analogiques. Il
arrive nanmoins que le comportement du processus ne prsente un intrt qu'
des instants discrets, plutt qu' tout instant. Cest le cas des modles mis en jeu
dans des algorithmes d'automatisation et de simulation implants sur ordinateur.
Un caractre intrinsquement discret surgit galement lors de mesures
chantillonnes ou d'un fonctionnement puls.

INTRODUCTION

1.2

Linarit

Toute fonction numrique f dfinie sur un espace vectoriel V est appele


fonctionnelle.
Une fonctionnelle f est dite additive, si f(x + y) = f(x) + f(y) . Elle est
dite homogne, si pour tout x V et pour tout nombre on a f(x) = f(x) .
Une fonctionnelle additive et homogne sappelle une fonctionnelle
linaire. A titre dexemple, citons lintgrale dfinie qui est une fonctionnelle
linaire:
b

I(x) =

x(t) dt
a

La combinaison des deux conditions mentionnes est connue sous le nom


de principe de superposition, soit:
f(x + y) = f(x) + f(y)
Un systme dynamique dont le modle y(t) = f [ u(t), t ] satisfait le
principe de superposition est dit linaire.
Si lexcitation u 1(t) produit la rponse y 1(t) , cest--dire si
y 1(t) = f [ u 1(t), t ] et si lexcitation u 2(t) produit la rponse y 2(t) , cest--dire si
y 2(t) = f [ u 2(t), t ] , alors la somme pondre des excitations conduit une
rponse qui est la somme pondre des rponses obtenues sparment:
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 systme se comporte de manire proportionnelle.
Le systme rgit par lquation y (t) = au(t) est linaire (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 systme rgit par lquation y (t) = au(t) + b nest pas linaire, malgr
le fait que cette fonction soit dcrite par une droite (figure 1-4).
3

LINARIT

En effet:
a [ u 1(t) + u 2(t) ] + b = au 1(t) + au 2(t) + b est diffrent 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 Modle linaire

y (t)

u(t)
Figure 1-4 Modle non linaire

Un retard pur y(t) = u(t ) constitue galement un systme linaire.


Ceci se montre aisment.
Soit u 1 y 1 , cest--dire que y 1(t) = u 1(t ) , et soit u 2 y 2 , cest-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)

INTRODUCTION

1.3

Signaux

Les signaux dentre, de sortie ou de perturbation dun systme sont soit


de nature analogique, soit de nature discrte.
Soit t R une variable relative reprsentant le temps coul depuis le dbut de lobservation, un signal analogique rel est une fonction continue
s: { t: t R } R de cette variable. Cest--dire quelle est dfinie pour tout
temps t.
Soit { t k : k Z } , un sous-ensemble de nombres rels appels instants
d'chantillonnage. Un signal discret rel est une fonction w: { t k : k Z } R .
Cette fonction n'est donc dfinie qu'aux instants dchantillonnage, comme le
montre la figure 1-5. Occasionnellement, des signaux discrets complexes
w: { t k : k Z } C seront considrs pour condenser des dveloppements
mathmatiques.
w(t k)

t3 t2 t 1 t 0

t1

t
t
t
2

Figure 1-5 Signal discret

Dans le prsent cours, les instants dchantillonnage sont uniformment


espacs:
t k = kh
Nous dirons que l'chantillonnage est priodique ou rgulier; le nombre
rel h > 0 est appel priode dchantillonnage et f e = 1 h est la frquence
d'chantillonnage. Lorsqu'il n'y a aucun risque d'ambigut, la notation w(k) est
employe au lieu de w(kh) pour reprsenter un signal discret; cette criture
simplifie ne provoque bien sr aucune perte de gnralit.
5

EXEMPLES QUALITATIFS

1.4

Exemples qualitatifs

1.4.1

Entranement lectrique

Lentranement est un systme SISO (single input, single output) et linaire. Son entre est la tension dalimentation u et sa sortie la position angulaire .
Sa dynamique peut tre dcrite par une fonction de transfert (FT).
u

A
-------------1 + s

1
--s

Perturbations de charge
Figure 1-6 Schma fonctionnel dun entranement lectrique

Une solution classique exploite en pratique pour asservir la position


angulaire de cet entranement consiste introduire un rgulateur de type PD
(proportionnel, driv).
u

c
-

A
--------------------s(1 + s)

PD

Figure 1-7 Rglage classique dun entranement lectrique

Une autre solution consiste introduire deux rgulateurs arrangs en


cascade. Cette mthode prsente de meilleures caractristiques en rjection des
perturbations et permet de limiter la vitesse. Elle ncessite un capteur de vitesse et
de position.
c
-

PD

u
-

PI

A
-------------1 + s

1
--s

Figure 1-8 Rglage en cascade dun entranement lectrique

Une boucle interne de limitation du courant est parfois introduite.


6

INTRODUCTION

Les solutions dcrites peuvent tre trop coteuses lorsquil sagit de


produire des entranements en grande srie. 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
lactionneur des gouvernes dun satellite ou de minimiser leffort de rglage
(nergie utilise).
Les mthodes dtat que nous tudierons dans ce cours permettent
dobserver des grandeurs non mesurables ou trop coteuses mesurer. Il sera
galement possible avec une commande dtat optimale de rgler un systme
MIMO (multiple inputs, multiple outputs) en tenant compte par exemple des
saturations de la commande. Toutefois, lapplication de ces techniques ncessite
une bonne connaissance du modle, ce qui nest pas le cas par exemple lors du
dimensionnement dun rgulateur standard de type PID par la mthode de ZieglerNichols.
Forme gnrale de reprsentation
reprsentation dtat

Conception
du rgulateur dtat
c
c
ic

Rgulateur
dtat

Entranement

une mesure!

i
Observateur
Conception
de lobservateur
dtat

Nombre de contre-ractions
= ordre du systme

Figure 1-9 Structure dune commande dtat

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


suite, toute la dynamique du systme est contrle.
7

EXEMPLES QUALITATIFS

1.4.2

Pendule invers

Le pendule invers est un systme acadmique simple permettant


dtudier la dynamique de systmes instables plus complexes, comme celle dune
fuse sur son pas de tir ou dun bateau. Il sagit dun systme SIMO (single input,
multiple outputs).

Grue portique
x

entre

F
x

Plate-forme
de lancement
de fuse

charge

Figure 1-10 Pendules

Dans un tel systme, lentre influence dynamiquement deux sorties


simultanment (et les sorties sinfluencent).
F

Pendule

Figure 1-11 Interdpendance des entre-sorties dun pendule

Une description par fonction de transfert nest plus possible dans ce cas,
ce qui conduit la recherche dune forme de reprsentation plus gnral. Nous
verrons quune reprsentation dtat est bien adapte. Les solutions classiques de
commande ne permettent pas non plus de rgler deux grandeurs la fois. Nous
verrons que lintroduction dune commande dtat est approprie.

INTRODUCTION

xc
vc
c
c

Rgulateur
dtat

Pendule

Observateur

Figure 1-12 Structure de la commande dtat dun pendule

1.4.3

Robot deux degrs de libert

Le robot reprsent ci-dessous possde une rotule permettant son bras


deffectuer une rotation complte dans le plan sous laction dun couple T . Le bras
lui-mme peut coulisser sur la rotule pour se dplacer radialement sou laction
dune force F . Les grandeurs T et F sont les entres de ce systme MIMO. Ses
sorties sont les positions angulaire et radiale r . Le dplacement du bras est
soumis une limitation mcanique r max = r 0 .
y
m

T
Figure 1-13 Schma de principe dun robot

Figure 1-14 Interdpendance des entre-sorties dun robot


9

EXEMPLES QUALITATIFS

Une technique standard de commande dun tel robot consiste introduire


deux rgulateurs qui travaillent sparment, parfois de faon antagoniste. Si la
force F est modifie, cela modifie la longueur du bras, donc linertie. Leffet de T
sen trouve donc perturb.

rc
c

PI
-

PD

r
Robot

Figure 1-15 Schma fonctionnel de commande dun robot

Nous verrons que grce aux mthodes dtat, il sera possible de tenir
compte des interactions dans le rgulateur, voire de dcoupler les comportements
de rotation et de translation. Cest--dire quune modification de r c ne provoque
pas de modification intempestive de (interaction compense par le rgulateur).

10

CHAPITRE 2
REPRSENTATION DTAT

2.1

Etat et variables dtat

2.1.1

Introduction

Ltat dun systme rassemble toutes ses grandeurs internes susceptibles


dvoluer au cours du temps, que ce soit sous leffet dun apport ou dun transfert
de matire, dnergie ou dinformation. En dautres termes, ltat correspond aux
niveaux des rservoirs de matire, dnergie ou dinformation du systme. Le
comportement dun systme dynamique dpend videmment fortement de ltat
dans lequel il se trouve. Le choix des grandeurs qui caractrisent ltat nest pas
unique, le niveau dune cuve de dimensions connues reprsente aussi bien son tat
que le volume de cette cuve.
Dans le chapitre prcdent, nous avons constat que les relations
mathmatiques qui dcrivent les interactions dynamiques entre les entres et les
sorties des systmes analogiques, en particulier les systmes lectro-mcaniques,
ont la forme dquations diffrentielles ordinaires. Dans le cas des systmes
discrets, les relations considres ont la forme dquations aux diffrences
ordinaires. Les grandeurs qui apparaissent sous forme de drives dans les
quations diffrentielles, respectivement de diffrences dans les quations aux
diffrences, jouent un rle primordial en thorie des systmes; elles sont appeles
variables dtat. Elles portent linformation sur le pass du systme; information
qui se rsume un tat prcis (contenu des rservoirs de matire, dnergie et
dinformation). Ces grandeurs importantes sont maintenant dfinies de faon
rigoureuse et une forme de reprsentation gnrale, commune une large classe
de systmes dynamiques, est galement introduite. Elle est connue sous le nom de
modle dtat. De nombreuses mthodes de simulation et danalyse se fondent sur
cette forme de reprsentation du processus tudier. Il en est de mme pour des
techniques volues de conduite et d'estimation.
11

ETAT ET VARIABLES DTAT

2.1.2

Dfinitions

L'tat d'un systme un instant donn quelconque est l'information


minimale qui permet, si les entres sont connues l'instant donn et pour les
valeurs du temps subsquentes, la dtermination unique des sorties l'instant
donn et pour les valeurs du temps subsquentes.
Ainsi, l'tat d'un processus est l'information rsumant parfaitement le pass du systme puisqu'elle fixe toute volution future si les entres sont spcifies.
Dans ce cours, on ne considre que les processus pour lesquels l'tat un
instant donn est un nombre fini n de nombres rels, qui sont tout naturellement
rassembls dans un vecteur x de dimension n dit vecteur d'tat:
x1
x =

x2

(2.1)

#
xn

Les coordonnes x 1, x 2, , x n du vecteur d'tat sont les variables d'tat.


L'entier n est par dfinition l'ordre du systme.
Dans le but d'allger les notations, les entres u 1, u 2, , u r sont elles
aussi regroupes dans un vecteur u de dimension r, dit vecteur d'entre:
u1
u =

u2

(2.2)

#
ur

Il en est de mme des sorties y 1, y 2, , y p , runies dans un vecteur y de


dimension p appel vecteur de sortie:
y1
y =

y2

(2.3)

#
yp
12

REPRSENTATION DTAT

Le schma fonctionnel de la figure 1-2 est alors couramment remplac par


celui de la figure 2-1, o les lignes doubles symbolisent des quantits vectorielles.

Etat: x

Figure 2-1 Schma fonctionnel d'un systme multivariable.

Cette figure met en vidence le fait que le vecteur d'tat est une grandeur
interne au systme, souvent non mesurable et par consquent diffrente de la
sortie. Ainsi, toute modlisation d'tat fera intervenir non seulement les entres et
sorties, quantits externes, mais galement des variables d'tat internes. C'est la
raison pour laquelle une telle reprsentation est dite interne.
2.1.3

Slection des variables dtat

Pour extraire les variables qui permettent de dcrire le systme dans le formaliste dtat choisi, il faut tout dabord inventorier lensemble des grandeurs qui
apparaissent sous forme drive dans les quations. Ces grandeurs sont notes i ,
i = 1, , n . Lordre maximum respectif de drivation des i est not i . Cette
quantit dfinit le nombre de variables dtat quil faut introduire pour reprsenter
une grandeur i . Ces variables dtat sont, par ordres de drivation successifs:
(0)

(1)

( i 1 )

i , i , , i
o:

(0)
i

= i et

(k)
i

d i
d tk

pour k = 1, , i 1

Lordre du systme (linaire ou non linaire) et gal la somme des i :


n

n =

i
i=1

La slection des entres et des sorties est fonction de lapplication


considre. Les entres sont les variables indpendantes, alors que les sorties sont
les grandeurs mesures. Les grandeurs qui ne sont ni des variables dtat, ni des
entres, ni des sorties, doivent tre limines par substitution.
13

ETAT ET VARIABLES DTAT

Soit un systme dquations diffrentielles quelconques, comme par


exemple:
2
aw + sin z = u 1

v + cos z = u 2
z = t
Lapplication de la mthode cet exemple donne:
i

grandeurs i

ordres i

variables dtat

x1 = v

x 2 = w , x 3 = w

x4 = z

Tableau i

Slection des variables dtat

Lordre de ce systme est donn par lexpression 1 + 2 + 3 = 4 .


Lquation dtat est obtenue par drivation des variables dtat
slectionnes. Les quations originales sont exploites par substitution pour
exprimer les drives des variables dtat en fonction des variables dtat, des
entres 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 mme dmarche est exploite pour exprimer les sorties en fonction des
variables dtat, des entres et du temps. Par exemple, si seule la grandeur w est
mesure il vient:
y = w = x2

14

REPRSENTATION DTAT

2.2

Modle dtat analogique

2.2.1

Dfinitions

Aprs application des lois physiques les gouvernant, de nombreux


processus physiques peuvent tre dcrits par des quations diffrentielles et
algbriques 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)
x(t) =

x 2(t)
#

u 1(t)
u 2(t)

; u(t) =

x n(t)

y 1(t)
et y(t) =

u r(t)

y 2(t)
#
y p(t)

Les fonctions f et g sont donnes par:


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

f 2 [ x(t), u(t), t ]
#
f n [ x(t), u(t), t ]
15

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

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

MODLE DTAT ANALOGIQUE

Par dfinition:

x (t) =

x 1(t)
x (t)
2

#
x n(t)

Les relations (2.4) et (2.5) prennent alors l'allure trs 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'entre du systme 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 rsolue pour t t 0 , en admettant que les conditions
d'existence et d'unicit d'une solution sont vrifies; la relation (2.7) permet alors
le calcul de y(t) pour t t 0 . Ainsi, comme la notation le laissait prsumer, x(t 0)
forme l'tat au temps t 0 .
L'quation (2.6) rgissant le comportement dynamique du processus est
appele 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
dernire. Ces deux quations forment le modle d'tat. Il est dit analogique,
temps continu et diffrentiel.

2.2.2

Reprsentation dtat des systmes linaires

Un cas particulier extrmement important de modle dtat est celui dans


lequel les fonctions f et g possdent 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

REPRSENTATION DTAT

La reprsentation 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)

u(t)

B(t)

+ x (t)
+

x(t)

C(t)

+
+

y(t)

A(t)
Figure 2-2 Schma fonctionnel d'un systme linaire analogique.

Un systme analogique dcrit par les relations (2.8) et (2.9) est dit linaire.
Il est non stationnaire si les matrices apparaissant dans ces quations dpendent
du temps et stationnaire dans la situation contraire. La figure 2-2 fournit le
schma fonctionnel de tels processus.
Remarquons que, dans ce schma fonctionnel, les variables d'tat
apparaissent la sortie des intgrateurs. Les divers rles jous par les matrices du
modle ressortent maintenant clairement; la matrice d'entre B(t) rsume la
liaison du vecteur dentre u(t) avec la partie dynamique caractrise par la
matrice du systme A(t) ; la matrice de sortie C(t) reprsente 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 caractris 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

MODLE DTAT ANALOGIQUE

Une reprsentation par schma fonctionnel est reporte dans la figure 2-3.
D(t)

u(t)

+ x (t)

B(t)

x(t)

C(t)

y ( t)

A(t)
Figure 2-3

2.2.3

Schma fonctionnel dun systme linaire analogique monovariable.

Exemple: Entranement lectrique

On considre ici un entranement lectrique compos dun moteur


courant continu et excitation spare coupl une charge, comme illustr dans
la figure 2-4.
R

ui

Figure 2-4 Entranement lectrique

R et L sont respectivement la rsistance et l'inductance du circuit d'induit,


travers par le courant i, alors que J et f dnotent l'inertie et le coefficient de
frottement de la charge. La position angulaire de celle-ci est la sortie du
processus; son entre 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:
u = Ri + L

di

+ k
dt

J = ki f
18

REPRSENTATION DTAT

Soient les variables d'tat x 1 = , x 2 = et x 3 = i ; le modle d'tat


s'tablit aisment:
x 1
x 2 =
x 3

0
0
0

1
f
-J
k
--L

0
k-J
R
--L

x1
x2
x3

0
+ 0 u
1
--L

x1
y = 1 0 0 x2
x3
Cette description peut tre simplifie si on nglige l'inductance du circuit

d'induit. En effet, avec L = 0 , l'quation lectrique se rduit u = Ri + k . D'o


le courant d'induit:

u k
-------------i =
R
L'quation mcanique devient alors:
2

k
k

J = ----- + f + --- u
R
R
Seules les deux premires variables dtat x 1 et x 2 pralablement
slectionnes sont maintenant ncessaires pour dcrire le systme. Le modle
d'tat simplifi est ainsi:
x 1
=
x
2

y = 1 0

0
0

1
a

x1
x2

k
1 k
+ 0 u , avec a = --- ----- + f et b = -----

JR
J R
b

x1
x2

Il sagit dun systme linaire 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 DUN PROCESSUS REPRSENT PAR MODLE DTAT

2.3

Simulation dun processus reprsent par modle


dtat

2.3.1

Introduction

On a examin dans la section prcdente la reprsentation d'tat des


systmes dynamiques. Cette modlisation par quations diffrentielles du premier
ordre se prte bien une rsolution par ordinateur, autrement dit la simulation
numrique du processus.
La simulation dun processus consiste en la dtermination de l'tat x(t) et
de la sortie y(t) pour t t 0 lorsque l'entre du systme u(t) pour t t 0 et ltat
initial x(t 0) sont connus.
Il n'existe pas de solution analytique ce problme gnral. On doit avoir
recours des mthodes d'intgration numrique pour rsoudre le systme
d'quations diffrentielles que constitue l'quation d'tat. Ces mthodes ne
fournissent pas comme solution une fonction continue dans le temps, seuls sont
obtenus des chantillons de la fonction cherche, habituellement uniformment
espacs. Lintervalle de temps qui les spare, appel le pas dintgration est not
h. Les instants o la solution est connue sont donns par:
t = kh , k = k 0, k 0 + 1, k 0 + 2, N

(2.10)

La mthode dintgration la plus intuitive, propose par Euler, consiste


tout dabord crire le modle dtat linstant kh :
x (kh) = f [ x(kh), u(kh), kh ]

(2.11)

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

(2.12)

puis dutiliser comme approximation de la drive de la solution son expression


issue des premiers termes du dveloppement en srie de ltat:
x(kh + h) x(kh) + x (kh)h
soit:
x(kh + h) x(kh)
x (kh) ---------------------------------------h

(2.13)

Ce qui donne finalement:


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

(2.14)

REPRSENTATION DTAT

Lallure de la solution cherche, lapproximation de la drive et les chantillons


fournis sont reprsents la figure 2-5.

x (kh)

x(t)

x(t 0)

k0 h

x(kh + h) x(kh)
---------------------------------------h

h
kh kh+h

Figure 2-5 Approximation de ltat fournie par une mthode dintgration numrique.

Aprs avoir soigneusement slectionn le pas dintgration h, la


simulation est mene 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 mthode est peu prcise et peu stable mais permet une valuation rapide de la solution de lquation dtat. Une mthode plus sophistique couramment utilise est celle de Runge-Kutta. Elle est prsente au paragraphe suivant.
21

SIMULATION DUN PROCESSUS REPRSENT PAR MODLE DTAT

2.3.2

Mthode de Runge-Kutta

La mthode d'intgration Runge-Kutta fournit une solution au problme


de la simulation expos prcdemment 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 donns 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 intermdiaires doivent tre dtermines par interpolation entre u(kh) et u(kh + h) .
Cette mthode est base sur un dveloppement en srie de Taylor de la
fonction f jusqu'aux termes d'ordre quatre.
On remarque que le format introduit pour reprsenter les modles d'tat
fournit, dans le cas de l'algorithme de Runge-Kutta, une reprsentation trs
condense de ses quations.
Cette mthode est d'une prcision satisfaisante et offre de plus l'avantage
de diverger trs rapidement si le choix du pas d'intgration h n'est pas adquat,
permettant ainsi de dceler facilement des rsultats errons. Elle est disponible
dans les librairies et les logiciels mathmatiques standards comme NAG, IMSL,
MATLAB, Mathematica ou Octave.
2.3.3

Remarque

La simulation numrique sur ordinateur d'un processus analogique offre


de nombreux avantages. Pour commencer, les algorithmes mis en oeuvre sont
parfaitement connus, ce qui permet de matriser la prcision des rsultats. Le
traitement de systmes multivariables ne pose pas de problme et les fonctions
non linaires peuvent tre construites facilement, soit au moyen de polynmes ou
22

REPRSENTATION DTAT

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 numrique est
approximatif. En particulier, la reprsentation des nombres par un nombre limit
de chiffres provoque des erreurs d'arrondi qui peuvent ne pas tre ngligeables
suivant la prcision du calculateur utilis. Les erreurs de troncature sont quant
elles provoques par l'approximation des fonctions mathmatiques au moyen de
sries numriques dont on ne prend qu'un nombre limit de termes.
Finalement, le choix de la mthode et du pas d'intgration assurant la
convergence et une bonne prcision des rsultats n'est pas toujours ais.
La stabilit numrique d'un algorithme est garantie lorsque l'erreur
d'intgration dcrot chaque tape successive du calcul. Cette stabilit est
souvent perturbe lorsque les ordres de grandeurs des nombres intervenant dans
les oprations sont trs diffrents. Il est parfois ncessaire d'effectuer des mises
l'chelle pour pallier ce problme.
Une grande partie des difficults mentionnes dans cette section
disparaissent si le modle dtat est linaire et plus particulirement sil est
stationnaire. En effet, dans ce cas particulier, les outils de lalgbre linaire
fournissent une solution analytique au problme de la simulation. La description
de ces outils sort malheureusement du domaine de ce cours dintroduction.

23

MODLE DTAT DISCRET

2.4

Modle dtat discret

Les systmes intrinsquement discrets, les reprsentations discrtises de


systmes continus, ou les algorithmes de simulation numrique dcrits la section
prcdente sont reprsents par des quations aux diffrences et des quations
algbriques. Les quations aux diffrences de structure quelconque peuvent tre
mises sous la forme dun systme dquations aux diffrences dordre un, par un
choix judicieux de variables dtat. Ce choix seffectue selon la technique dcrite
au paragraphe 2.1.3, o la notion de driv est remplace par la notion de dcalage
dune priode dchantillonnage. Ainsi, un modle dtat 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)
x(k) =

x 2(k)
#

u 1(k)
; u(k) =

x n(k)

u 2(k)
#

y 1(k)
et y(tk) =

u r(k)

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

#
y p(k)

et les fonctions f et g dfinies de la faon suivante:

f [ x(k), u(k), k ] =

y 2(k)

REPRSENTATION DTAT

g 1 [ x(k), u(k), k ]
g [ x(k), u(k), k ] =

g 2 [ 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'entre du systme 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
rsolue de manire rcurrente 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 prsumer, x(k 0) est ltat
au temps k .
L'quation (2.17) gouvernant le comportement dynamique du processus
est appele quation d'tat; la relation (2.18) donnant sa sortie est l'quation de
sortie. Le modle d'tat est dit discret ou interne, les motifs de cette dernire
terminologie tant les mmes que ceux mentionns dans le paragraphe 2.2.1.
2.4.1

Reprsentation dtat des systmes discrets linaires

Un cas particulier utile du modle dtat discret est celui dans lequel les
fonctions f et g possdent 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 reprsentation 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 associe au cas discret est identique celle adopte dans


le paragraphe 2.2.2 pour les systmes analogiques; les matrices apparaissant dans
les quations (2.19) et (2.20) jouent le mme rle que celles figurant dans les
relations (2.8) et (2.9) (la raison des notations (k) pour la matrice du systme et
(k) pour la matrice d'entre deviendra vidente par la suite).
25

MODLE DTAT DISCRET

La figure 2-6 fournit le schma fonctionnel d'un tel systme; q


l'oprateur retard.

dsigne

D(k)

u(k)

(k)

x(k + 1)
+

q 1

x(k)

C(k)

+
+

y(k)

(k)
Figure 2-6 Schma fonctionnel d'un systme linaire discret.

Pour les processus monovariables, caractriss 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) :

2.4.2

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)

Exemple: Retard pur de 3 priodes dchantillonnage

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


entier, en loccurrence trois, de la priode dchantillonnage, ainsi
y(t) = u(t 3h) .
Lchantillonnage de la sortie de ce systme au moyen dun convertisseur
AD en des instants discrets t k = kh fournit lexpression y(kh) = u(kh 3h) .
Pour simplifier la notation, la substitution #h # est effectue,
conduisant la relation y(k) = u(k 3) .
Un dcalage positif de trois priodes donne finalement lquation aux
diffrences y(k + 3) = u(k) .
Trois variables doivent tre introduites pour reprsenter ce systme dans
le formalisme dtat, il sagit de x 1(k) = y(k) , x 2(k) = y(k + 1) et de
x 3(k) = y(k + 2) .
26

REPRSENTATION DTAT

Lquation dtat 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 lquation de sortie, cest simplement y(k) = x 1(k) .
Sous forme matricielle, ce modle qui est linaire et stationnaire se
prsente ainsi:
0 1 0 x 1(k)
0
x 2(k + 1) = 0 0 1 x 2(k) + 0 u(k)
0 0 0 x 3(k)
1
x 3(k + 1)
x 1(k + 1)

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

27

MODLE DTAT DUN SYSTME REPRSENT PAR UNE FONCTION DE TRANSFERT

2.5

Modle dtat dun systme reprsent par une


fonction de transfert
Soit la fonction de transfert discrte:
b 0 + b 1 z 1 + b 2 z 2 + + b n z n
Y(z)
H(z) = ---------- = ---------------------------------------------------------------------------U(z)
1 + a 1 z 1 + a 2 z 2 + + a n z n

(2.25)

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

n
1 + a1 z + a2 z + + an z
Par consquent Y(z) = b 0 U(z) + Y (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
Y(z) = (--------------------------------------------------------------------------------------------------------------------------------- U(z)
1 + a 1 z 1 + a 2 z 2 + + a n z n
Cette quation peut galement scrire:
Y (z)
---------------------------------------------------------------------------------------------------------------------------------- =
( b 1 a 1 b 0 )z 1 + ( b 2 a 2 b 0 )z 2 + + ( b n a n b 0 )z n
U(z)
-------------------------------------------------------------------------- Q(z)

1
1 + a 1 z + a 2 z 2 + + a n z n
Deux quations peuvent tre tires de cette dernire expression:
Q(z) = a 1 z 1 Q(z) a 2 z 2 Q(z) a n z n Q(z) + U(z)
Y (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 dtat suivant:
W 1(z) = z 1 Q(z)
W 2(z) = z 2 Q(z)
#
W n(z) = z n Q(z)
28

(2.26)

REPRSENTATION DTAT

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 dcrire lexpression de zW 1(z) = Q(z) en fonction des variables
dtat 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)
do le modle dtat 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
dtat sont artificielles, cest--dire quelles nont pas forcment de sens physique.
Leur choix est simplement adapt la construction mathmatique considre.
Lquation 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

%
%
0

0
#
0
1

0
#
0
0

w(k) +

0
1
%

w(k + 1) =

1
0
#
0

1
0
0
#
0

gw
29

u(k)

(2.27)

MODLE DTAT DUN SYSTME REPRSENT PAR UNE FONCTION DE TRANSFERT

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)

y(k) =

c wT
Par consquent, pour construire la reprsentation dtat dun systme
SISO dcrit par une fonction de transfert, il suffit dintroduire loppos des
coefficients du dnominateur dans la premire ligne de la matrice w . Le vecteur
colonne g w est indpendant du systme. Le vecteur c wT est dtermin simplement
partir des coefficients du numrateur et du dnominateur de la fonction de
transfert.
2.5.1

Exemple: Modle discret dun entranement

Lentranement lectrique dcrit au paragraphe 2.2.3 peut tre reprsent


par la fonction de transfert suivante:
(s)
A
G ( s ) = ----------- = ---------------------U(s)
s ( 1 + s )
Le passage entre le modle dtat analogique et la fonction de transfert
donne une constante de temps = 1 a et un gain statique en vitesse de
A = b a . Le modle de ce systme linaire 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

b1 z + b2 z
b 1 z 1 + b 2 z 2
(z)
- = --------------------------------------------------H ( z ) = ----------- = ---------------------------------------------1
2
U(z)
( 1 z 1 ) ( 1 + z 1 )
1 + ( 1 )z z
o b 1 = A [ h ( 1 e h / ) ] , b 2 = A [ ( 1 e h / ) he h / ] et = e h / .
Un modle dtat discret quivalent peut tre construit en exploitant
lapproche introduite au paragraphe prcdent. Ainsi:
w 1(k + 1)

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

w 1(k)
w 2(k)
30

+ 0 u(k)

REPRSENTATION DTAT

2.6

Exercices

2.6.1

Bras flexible

Un bras solidaire dune plate-forme tournante peut pivoter autour dun axe
A . Ses mouvements sont limits et amortis par deux ressorts.
(t)

(t)

M(t)
A

La dynamique du systme est rgie en bonne approximation par les


quations diffrentielles 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 (entre), (t) est la position angulaire de la


plate-forme par rapport un rfrentiel fixe et (t) est la position angulaire
relative du bras par rapport la plate-forme.

Dterminer le modle dtat qui dcrit la dynamique de ce systme pour le


cas o la sortie mesure est la position angulaire (t) .

Dterminer le modle dtat qui dcrit la dynamique de ce systme pour le

cas o la sortie mesure est la vitesse angulaire (t) = (t) .


31

EXERCICES

2.6.2

Mise en srie

Soit deux systmes dynamiques dcrits respectivement par les modles


dtat linaires 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)

Dterminer le modle dtat qui correspond la mise en srie de ces deux


systmes.
u a(k)

Ma

y a(k)

u b(k)

Mb

y b(k)

Dans quelle(s) condition(s) cette mise en srie peut-elle tre effectue ?

2.6.3

Rgulateur PI discret

Pour une implantation sur une carte processeur universelle, un rgulateur


PI discret doit tre exprim sous la forme gnrale dun modle dtat. Lentre du
rgulateur est lcart e(k) existant entre la grandeur de consigne et la mesure.
La sortie du rgulateur correspond la commande c(k) . Il sagit de la somme des
composantes proportionnelle et intgrale ( ui ):
c(k) = Kp e(k) + ui (k)
avec:

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

Les paramtres h , Kp et Ti sont respectivement la priode dchantillonnage, le


gain proportionnel et la constante de temps de lintgrateur.

Dterminer le modle dtat qui correspond ce systme dynamique.


32

REPRSENTATION DTAT

2.7

Solutions des exercices

2.7.1

Solution bras flexible


Dterminer le modle dtat qui dcrit la dynamique de ce systme pour le
cas o la sortie mesure est la position angulaire (t) .

x 1(t) = x 2(t)

x 1(t) = (t)

x 2(t) = (t)
x 3(t) = (t)

, soit

R
f
1

x 2(t) = (t) = --- x 3(t) + - x 4(t) + --- u(t)


I
I
I
x (t) = x (t)
3

I + Ib R
f
1

x 4(t) = (t) = ------------ --- x 3(t) + - x 4(t) --- u(t)


Ib I
I
I

x 4(t) = (t)

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


Dterminer le modle dtat qui dcrit la dynamique de ce systme pour le

cas o la sortie mesure est la vitesse angulaire (t) = (t) .

Dans ce cas, on peut se passer de (t) . Un partie de la dynamique est laisse


en aval du capteur et nest donc pas visible.

x 1(t) = (t)
x 2(t) = (t)

, soit

x 3(t) = (t)

R
f
1

x 1(t) = (t) = --- x 2(t) + - x 3(t) + --- u(t)


I
I
I
x (t) = x (t)
2

I + Ib R
f
1

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 srie


x(k + 1) =

x a(k + 1)
x b(k + 1)

y b(k) = D b C a C b

2.7.3

x a(k)

b C a b x b(k)

x a(k)
x b(k)

a
b Da

u a(k)

+ D b D a u a(k)

Solution rgulateur 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 indsirable u ( k + 1 ) , on pose comme variable dtat:


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

h
Le terme indsirable disparat 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
LINARISATION

3.1

Introduction

Lintrt des systmes linaires rside dans la possibilit dappliquer le


principe de superposition et dans celle de rsoudre analytiquement les quations
diffrentielles qui gouvernent leur dynamique. Nanmoins, la majorit des
processus rencontrs dans la pratique exhibent des non-linarits conduisant aux
modles d'tat gnraux examins prcdemment. De srieuses difficults
surgissent malheureusement lors de l'tude directe de ces systmes, difficults
qu'il est souvent possible de contourner en se contentant d'une approximation
linaire du modle original, beaucoup plus facile analyser mais valable
uniquement pour de petites dviations autour de trajectoires nominales. Cette
approche, appele linarisation, est formalise en exploitant les concepts
introduits prcdemment aprs lintroduction de la nomenclature ncessaire.

3.2

Grandeurs nominales

3.2.1

Trajectoire de fonctionnement ou nominale

Un profil dvolution de ltat, des entres et des sorties dune installation


en fonction du temps est appel trajectoire de fonctionnement ou trajectoire
nominale, sil correspond un mode de fonctionnement pr-spcifi de cette
installation. Une telle trajectoire est mise en vidence par un surlignement de ltat
x(t) , des entres u(t) et des sorties y(t) correspondantes. Par exemple, le profil de
position que doit suivre un axe de machine outil lors de lusinage dune pice
circulaire sexprime sous la forme:
x(t) = A sin ( t )
Afin que linstallation puisse suivre une telle trajectoire de fonctionnement, il faut quelle respecte les contraintes lies sa constitution et sa dynami35

GRANDEURS NOMINALES

que propre. Dune point de vue mathmatique, la trajectoire doit satisfaire les
quations diffrentielles et algbriques du modle de linstallation considre. En
dautres 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 systme dquations:
Cas analogique

Cas discret

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

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

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

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

Tableau ii

Spcifications dune trajectoire de fonctionnement.

Par souci de simplicit, on ne considre ici que des processus


stationnaires pour lesquels les fonctions f et g ne dpendent pas explicitement du
temps. La solution de lun ou lautre de ces deux systmes dquations algbriques
non linaires fournit une solution qui correspond un tat accessible du systme.
Il y a toujours n + p quations dans le systme, ce qui correspond au nombre dinconnues qui peuvent tre dtermines parmi les n + p + r grandeurs qui
caractrisent la trajectoire nominale. Il y a par consquent r degrs de libert pour
imposer des entres, des sorties, des tats ou une combinaison de ces grandeurs en
fonction de lapplication considre. Suivant les cas, la solution peut tre obtenue
analytiquement ou numriquement avec un algorithme du type Newton-Raphson.
Pour lexemple considr, la commande appliquer la machine pour
suivre le profil spcifi correspond la solution du systme dquations
algbriques et non linaires:
A cos ( t ) = f [ A sin ( t ), u(t) ]
y(t) = g [ A sin ( t ), u(t) ]

o il a t tenu compte dune drive de ltat de la forme x(t) = A cos ( t ) ,


spcifie par le profil choisit.
3.2.2

Commande a priori

En labsence derreurs de modlisation ou de perturbations sur le systme,


lapplication en boucle ouverte de la commande u engendre ltat x et les sorties
y . Il sagit donc de la commande qui est a priori ncessaire pour suivre la
trajectoire nominale. Le vecteur u porte donc le nom de commande a priori,
quil sagisse du cas analogique ou du cas discret. Cette commande peut tre prcalcule ou labore en temps rel et applique continment lentre du systme.
36

LINARISATION

3.2.3

Point de fonctionnement ou tat nominal

Si une trajectoire de fonctionnement nvolue pas au cours du temps, on


lappelle point de fonctionnement, point dquilibre, 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 Spcifications dun point de fonctionnement.

Un systme qui se trouve son point de fonctionnement est, par dfinition


de ce dernier, dans un tat stationnaire ou inerte. Il est par consquent au repos,
cest--dire que leffet des conditions initiales ou dentres passes ne se fait plus
sentir.

3.3

Linarisation par la tangente

3.3.1

Principe de la linarisation

Pour illustrer le concept de linarisation, considrons titre dexemple le


cas dune fonction f dune variable x reprsente la figure 3-1. Cette fonction est
approche par une droite qui passe par le point de fonctionnement x . Cette droite
est utilise pour dterminer la valeur de la fonction proximit de x , en particulier
en x = x + x .
exact
f(x)

z
z = f(x)

approch

x
x

Figure 3-1 Fonction dune variable.


37

LINARISATION PAR LA TANGENTE

Nous avons:
f(x) z = z + z = z +

d
f(x)x
dx

Si lon ne considre que la relation entre une variation x de x et la variation


correspondante z de z, on obtient une relation linaire de la forme:
d
f(x)x
z =
dx
Cette relation nest videmment valable que pour de faibles carts x .
3.3.2

Linarisation

Le cas gnral des quations dtat et de sortie est maintenant abord. Le


principe dobtention dune reprsentation linaire reste le mme que celui illustr
par lexemple prcdent, toutefois, il sagit de fonctions vectorielles de plusieurs
variables. Supposons que les drives 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
continment drivables. Soient x , u et y des dviations autour de trajectoires
nominales x , u et y :
x = x x

(3.1)

u = u u

(3.2)

y = y y

(3.3)

On peut alors crire le dveloppement en sries 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)u 1 + +
f (x, u)u r + p i(x , u )
u1
ur i

Les fonctions p i dnotent des termes d'ordre suprieur.


38

(3.4)

LINARISATION

Il est naturel de dfinir:


p 1(x , u )
p (x , u )
p(x , u ) = 2
#
p n(x , u )
Introduisons maintenant les matrices jacobiennes:

f(x, u) =
x

f(x, u) =
u

f (x, u)
x1 1

f (x, u)
x2 1

f (x, u)
xn 1

f (x, u)
x1 2

f (x, u)
x2 2

f (x, u)
xn 2

f (x, u)
x1 n

f (x, u)
x2 n

f (x, u)
xn n

f (x, u)
u1 1

f (x, u)
u2 1

f (x, u)
ur 1

f (x, u)
u1 2

f (x, u)
u2 2

f (x, u)
ur 2

f (x, u)
u1 n

f (x, u)
u2 n

f (x, u)
ur n

Toutes les relations (3.4) peuvent tre rassembles sous la forme


extrmement compacte:
f(x, u) = f(x, u) +

f(x, u)u + p(x , u )


f(x, u)x +
u
x

(3.5)

De la mme faon, g(x, u) devient:


g(x, u) = g(x, u) +

g(x, u)u + q(x , u )


g(x, u)x +
u
x
39

(3.6)

LINARISATION PAR LA TANGENTE

o le vecteur q qui regroupe les termes d'ordre suprieur est dfini de la faon
suivante:
q 1(x , u )
q (x , u )
q(x , u ) = 2
#
q p(x , u )
et les matrices jacobiennes par:

g(x, u) =
x

g(x, u) =
u

g (x, u)
x1 1

g (x, u)
x2 1

g (x, u)
xn 1

g (x, u)
x1 2

g (x, u)
x2 2

g (x, u)
xn 2

g (x, u)
x1 p

g (x, u)
x2 p

g (x, u)
xn p

g (x, u)
u1 1

g (x, u)
u2 1

g (x, u)
ur 1

g (x, u)
u1 2

g (x, u)
u2 2

g (x, u)
ur 2

g (x, u)
u1 p

g (x, u)
u2 p

g (x, u)
ur p

La technique de linarisation consiste simplement ngliger les termes


d'ordre suprieur p(x , u ) et q(x , u ) . L'approximation semble tout fait raisonnable
pour de petits carts x et u autour des trajectoires nominales; le succs de cette
approche demeure toutefois a priori un sujet d'tonnement; une justification
rigoureuse relve de la thorie de Liapounov, qui sort du contexte de ce cours.
L'galit (3.1) fournit:

x (t) = x(t) + x (t)

(3.7)
40

LINARISATION

En substituant (3.5), sans les termes d'ordre suprieur, ainsi que (3.7) dans
l'quation d'tat originale (2.6), et en tenant compte du fait que les trajectoires
nominales vrifient cette dernire, on obtient:

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


f [ x(t), u(t) ]x (t) +
x (t) =
u
x
C'est une quation d'tat linaire. Elle rgit les dviations des vecteurs
d'tat et dentre autour de trajectoires nominales connues.
L'quation de sortie (2.7) peut subir une procdure identique; il en rsulte
que le modle dtat analogique linaris est dfini par:

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


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

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


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

(3.8)
(3.9)

La forme des fonctions f et g tant la mme dans les cas analogiques et


discrets, le modle dtat discret linaris est dfini par:
x(k + 1) =

f [ x(k), u(k) ]u (t)


f [ x(k), u(k) ]x (k) +
u
x

g [ x(k), u(k) ]u (k)


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

Systmes intrinsquement linaires

Le triplet { u, x, y } = { 0, 0, 0 } est toujours un point de fonctionnement


pour un systme intrinsquement linaire. Dans ce cas, u = u , x = x et y = y ,
conduisant ainsi des reprsentations en variables cart (dviations) ou en vraies
grandeurs (variables globales) identiques. Le triplet mentionn nest nanmoins
pas le seul point de fonctionnement; il peut en exister dautres 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 dun systme linaire.

Par exemple en analogique, si u est spcifi:


1

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

LINARISATION PAR LA TANGENTE

3.3.4

Exemple de la sustentation magntique

Soit un systme constitu d'une bille maintenue en lvitation dans le plan


vertical par une bobine (lectro-aimant).
i

0
F

P = mg

Figure 3-2 Sustentation magntique.

La force lectromagntique F exerce par la bobine dpend de la distance


x qui la spare de la bille et du courant lectrique i qui la parcourt:
2
1 L
F ( x, i ) = --- ------------------2- i
2 (1 + x)

L est la diffrence 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 rgit 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.
Lquation diffrentielle qui rgit la dynamique de la sustentation
magntique est donc:
1
L
x = g ------- ------------------2- i 2
2m ( 1 + x )
42

LINARISATION

En slectionnant respectivement comme variables dtat, comme entre et


comme sortie les grandeurs:
x 1 = x , x 2 = x , u = i et y = x
on obtient le modle dtat suivant:
x 1 = f 1(x 1, x 2, u) = x 2
2
L
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 modle linaris a la forme:
0
x =

y =

1
2

Lu
-------------------------3
m ( 1 + x1 )
1

x +

0
Lu -------------------------

m ( 1 + x1 )

avec:
x = x x
u = u u
y = y y
Attention, la variable u ne reprsente pas la tension aux bornes de la bobine, mais la grandeur dentre qui est le courant.
3.3.5

Exemple de la cuve de mlange

Une cuve de mlange (figure 3-3) est alimente par deux vannes
fournissant des dbits volumiques variables q 1(t) et q 2(t) qui contiennent des
produits dissolus avec des concentrations constantes c 1 et c 2 . Le mlange quitte
le bac avec un dbit q(t) et, le brassage tant suppos parfait, la concentration du
43

LINARISATION PAR LA TANGENTE

produit final est uniforme et gale c(t) . Les entres sont les dbits 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)
c(t)

h(t)

q(t)

c(t)

Figure 3-3 Cuve de mlange.

Si V ( t ) dnote le volume du mlange, 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)
dt

(3.11)

Le dbit de sortie dpend de la hauteur h(t) du liquide de la faon suivante


(coulement turbulent): q(t) = K h(t) . La constante K > 0 se dtermine exprimentalement. En dsignant 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

Linarisation par la tangente de la cuve de mlange

Aprs 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 modle dtat suivant est obtenu:
x 1(t)
x 1(t) = u 1(t) + u 2(t) K ---------S

(3.12)

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

(3.13)

44

LINARISATION

1
y 1(t) = --- x 1(t)
S
y 2(t) = x 2(t)
Le modle dtat de la cuve de mlange est maintenant linaris autour des
trajectoires nominales constantes x 1, x 2, u 1, u 2, y 1 et y 2 qui satisfont les quations algbriques:
x
0 = u 1 + u 2 K ----1S
1
0 = ----- { ( c 1 x 2 )u 1 + ( c 2 x 2 )u 2 }
x1

(3.14)

1
y 1 = --- x 1
S
y2 = x2
Le modle dtat linaris sobtient aprs substitution de lquation (3.14)
dans lune des matrices jacobiennes et aprs quelques manipulations laisses au
soin du lecteur:
x1
x 1
1 K
-----= ----- 2 Sx1
x 2
0

x 1

0
u1 + u2

45

x 2

1
( c1 x2 )
--------------------x1

1
( c2 x2 )
--------------------x1

u 1
u 2

LINARISATION PAR LA TANGENTE

3.3.7

Rsum

Le modle dtat est un moyen adquat pour reprsenter les interactions


qui existent entre les entres est les sorties dun processus. Il fait intervenir des
grandeurs internes qui portent toute linformation ncessaire pour caractriser
ltat du processus un instant donn. Les phnomnes dynamiques sont dcrits
par lquation dtat (2.6) et les liens algbriques sont exprims par lquation de
sortie (2.7).

Modle dtat
non linaire

(2.6) et (2.7)

Figure 3-4 Reprsentation dun systme non linaire par un modle dtat.

Que ce soit pour simplifier les calculs lors dune simulation, pour faciliter
lanalyse du comportement dynamique lors de la conception ou parce que le
domaine de fonctionnement dune installation est limit, il est possible de
reprsenter le systme considr par un modle dtat linaris autour de
trajectoires nominales. Ce modle se comporte de la mme faon que le modle
dtat non linaire dorigine uniquement pour de petites variations autour des
trajectoires nominales spcifies.

u
u
-

Modle dtat y
linaris
(3.8) et (3.9)

y
+

Figure 3-5 Reprsentation dun systme non linaire par un modle dtat linaris.

La simulation du processus reprsent la figure 3-4 ncessite lusage


dun algorithme dintgration numrique, contrairement celle du processus
reprsent la figure 3-5, o une solution analytique existe si les matrices
jacobiennes ne dpendent pas du temps.
46

LINARISATION

3.4

Linarisation par contre-raction

La linarisation par contre-raction (feedback linearization) est une


technique qui fournit une linarisation globale. Le prix de cette fonctionnalit est
la ncessit pour limplantation de disposer de ltat du systme. Sa limitation
rside dans le fait que tous les systmes ne sont pas linarisables de cette manire.
Une tude rigoureuse de cette technique et la dtermination de lexistence
ou non dune solution ncessitent lintroduction doutils mathmatiques, tels les
crochets de Lie, qui sortent du contexte de ce cours. Nanmoins, son principe peut
tre aisment introduit sur lexemple de la sustentation magntique introduite
prcdemment et tendu dautres cas.
3.4.1

Exemple de la sustentation magntique

En ne faisant intervenir que les variables entre-sortie, le modle


dynamique de la sustentation magntique introduite lexemple 3.3.4 scrit:
1
L
y = g ------- ---------------------2- u 2
2m ( 1 + x 1 )
Dans le contexte de la linarisation par contre-raction, ce modle entresortie (Fig. 3-6) du systme linariser est appel le modle dynamique direct et
est reprsent par la lettre M .
Systme
non linaire
M

Figure 3-6 Systme linariser.

Un lment de linarisation qui utilise les tats x 1 et x 2 est maintenant


ajout en amont du systme physique. Le systme quivalent qui rsulte de la
combinaison de cet lment et du systme physique constitue, du point de vue de
la synthse de la commande, le nouveau systme rgler (figure 3-7).
w

lment de
linarisation
M

Systme
non linaire
M

x
Figure 3-7 Systme linaris.
47

LINARISATION PAR CONTRE-RACTION

Intgrateurs
linaires

Figure 3-8 Systme quivalent.

Lide est dobtenir des intgrateurs purs comme systme quivalent


(figure 3-8). Pour ce faire, w doit tre une drive dordre quelconque de y .
Llment de linarisation doit donc exhiber une caractristique qui lie cette
drive de la sortie avec lentre. En ce sens, il contient le modle inverse du
1
systme physique not M . Pour obtenir cette caractristique, il faut driver
lquation de sortie du systme physique, jusqu ce que lentre apparaisse dans
la relation. Cette expression, qui est de nature algbrique, est ensuite inverse.
y = x1
y = x 1 = x 2
1
L
y = x 2 = g ------- ---------------------2- u 2 w
2m ( 1 + x 1 )
Le modle algbrique inverse M
linarisation est:
u =

2m ( g w )
------------------------- ( 1 + x 1 )
L

implanter comme lment de

(modle inverse statique M

Dans ce cas particulier, seul ltat x 1 doit tre mis en contre-raction pour
raliser la linarisation. Comme il sagit de la position de la sphre et que cette
grandeur est mesure, ceci ne pose pas de problme dimplantation. Le nouveau
systme rgler est donc un double intgrateur (figure 3-9).
w = y

1
---2
s

Figure 3-9 Systme quivalent la sustentation et son modle inverse.

La commande w maintenant les dimensions dune acclration plutt


que dun courant. Elle doit tre limite afin que le modle inverse soit toujours dfini. Dans ce cas, w < g .
48

LINARISATION

3.4.2

Formulation gnrale de la linarisation par contre-raction


Dans le cas MIMO, les quations de sortie ont gnralement la forme:
y i = g i(x)

Pour obtenir un modle dynamique direct ( u y i ), il faut driver cette


quation de sortie pour faire apparatre une des entres:
y i( di ) = g *i (x, u)

i = 1, , p et d i = 0,

La drive dordre minimum d i de y i qui fait apparatre une entre est


choisie comme lentre w i correspondante du modle inverse:
y i( di ) = w i
Le systme quivalent (modle inverse et systme rgler) est alors une
combinaison de p intgrateurs SISO, dcoupls et linaires.
w1
w(t)
wp

1
-----s d1
#

y1

1
-----s dp

yp

y(t)

Figure 3-10 Systme quivalent.

3.4.3

Implantation discrte

Pour la synthse dune commande ou dun observateur en vue dune


implantation discrte sur ordinateur, cest le schma fonctionnel donn la figure
3-11 qui est habituellement considr.
w(k)

DA

w(t)

M 1(t)

u(t)

y(t)

AD

y(k)

Figure 3-11 Systme quivalent vu au travers de convertisseurs AD et DA.

En ralit, le modle inverse nest pas ralis analogiquement mais


numriquement. La modification correspondante du schma ne pose nanmoins
pas de problmes. Comme le modle inverse est statique, on peut en effet dplacer
49

LINARISATION PAR CONTRE-RACTION

les convertisseurs D/A sans perte de gnralit ni approximation (ceci revient


crire le modle inverse en t = kh ).
w(k)

M 1(k)

u(k)

DA

u(t)

y(t)

AD

y(k)

Figure 3-12 Schma fonctionnel quivalent correspondant limplantation relle.

Il ny a donc pas lieu de modifier le modle inverse pour une implantation


discrte sur un systme informatique.

50

LINARISATION

3.5

Dcouplage non linaire

La technique de linarisation par contre-raction introduite la section


3.4 fournit la fois une linarisation globale et un dcouplage dynamique. Elle ne
sapplique nanmoins qu une classe limite de systmes qui possdent le mme
nombre dentres que de sorties ( r = p ). La mise en oeuvre de cette technique fait
correspondre un intgrateur pur dordre d i chaque couple dentre-sortie
( u i, y i ) . Un systme MIMO non linaire se transforme ainsi en p systmes SISO
linaires dcoupls dont les commandes respectives peuvent tre conues par
placement de valeurs propres.
Le dcouplage non linaire ncessite la connaissance de ltat du systme.
Le dcouplage non linaire de la cuve de mlange (3.3.5) ncessite la
dfinition de deux entres artificielles selon la technique de linarisation par
contre-raction dcrite au paragraphe 3.4.2.
x 1(t)
1
1
y 1(t) = --- x 1(t) = --- u 1(t) + u 2(t) K ---------S
S
S

w 1 ( t)

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 modle inverse M 1 qui assure le dcouplage est donc:
x 1(t)

1
u 1(t) = ---------------- [ c 2 x 2(t) ] w 1(t)S + K --------- w 2(t)x 1(t)
c2 c1
S

x 1(t)
1
u 2(t) = ---------------- w 2(t)x 1(t) [ c 1 x 2(t) ] w 1(t)S + K ---------
c2 c1
S
Le systme quivalent qui rsulte de la combinaison du modle inverse
statique M 1 et du modle direct dynamique M prsente deux intgrateurs (figure
3-13).
w 1(t)

1s

y 1(t)

w 2(t)

1s

y 2(t)

Figure 3-13 Cuve de mlange dcouple.


51

EXERCICES

3.6

Exercices

3.6.1

changeur
La vue en coupe dun changeur de chaleur est reprsente ci-dessous:
2

T 2(t)

T 1 ( t)

P(t)

flux du fluide extrieur

flux du fluide intrieur


Le conduit interne 1 est parcouru par un fluide temprature T 1(t) . Le
conduit externe 2 est parcouru par un fluide temprature T 2(t) . La temprature
extrieure T est constante. Les paramtres m 1 c 1 = 0.5 , m 2 c 2 = 2 , k 12 = 1 et
k 20 = 0.5 influencent lchange de chaleur. Il sagit de:
m i, c i : masse et chaleur spcifique 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 systme est rgie par les quations diffrentielles
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 cest la temprature du fluide interne T 1(t) qui intresse le
concepteur et que lentre est lapport de puissance P(t) , dcrire la
dynamique de ce systme par un modle dtat.
Dterminer ltat au point dquilibre spcifi par une puissance de
20 W et une temprature ambiante de 20C.
Dterminer le modle dtat valable pour des volutions autour du point
de fonctionnement dtermin sous 2.
52

LINARISATION

Reprsenter la dynamique dcrite au point 3 par une fonction de


transfert.
3.6.2

Robot deux degrs de libert

La modlisation du robot dcrit au paragraphe 1.4.3 est entreprise en


supposant que sa masse est ngligeable vis--vis de la masse m de la charge.
Notons que ce robot volue dans le plan vertical.
Le modle dynamique est obtenu par la mthode de Lagrange avec r et
comme coordonnes gnralises. 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
dt r r
d L L
----- ------ ------ = T
dt

donnent

r r 2 + g sin = ---m
T

r 2 + 2rr + gr cos = ---m

Le modle dtat est construit en dfinissant les entres u 1 = F et


u 2 = T , en slectionnant les variables dtat x 1 = r , x 2 = r , x 3 = et

x 4 = , et en reprant 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 + ----m

x = = x
3

= f 2(x, u)
= f 3(x, u)

u2
1

x 4 = = ----2- 2x 1 x 2 x 4 gx 1 cos x 3 + ----- = f 4(x, u)


m
x1
y1 = x1

= g 1(x, u)

y2 = x3

= g 2(x, u)

Effectuer la linarisation par contre-raction de ce systme.

53

SOLUTIONS DES EXERCICES

3.7

Solutions des exercices

3.7.1

Solution changeur
Modle dtat 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
Modle linariser
k 12
k 12
f 1 = ------------ x 1 + ------------ x 2
m1 c1
m1 c1
k 12
( k 12 + k 20 )
k 20
1
f 2 = ------------ x 1 -------------------------- x 2 + ------------ u + ------------ T
m2 c2
m2 c2
m2 c2
m2 c2
Modle linaris

x =

2 2 x + 0 u
0.5 0.75
0.5

y = 1 0 x
Fonction de transfert:
Y (s)
1
--------- = -------------------------------------------------G(s) =

( s + 0.75 ) ( s + 2 ) 1
U(s)
54

LINARISATION

3.7.2

Solution robot deux degr de libert


Soit le modle direct M:
x 1 = r = x 2

(3.15)

u1
x 2 = r = x 1 x 42 g sin x 3 + ----m

(3.16)

x 3 = = x 4

(3.17)

u2
1

x 4 = = ----2- 2x 1 x 2 x 4 gx 1 cos x 3 + ----m


x1

(3.18)

Considrons un rglage de la vitesse longitudinale et de la position


angulaire qui dfinit les sorties:
y1 = x2

( r )

(3.19)

y2 = x3

()

(3.20)

La drivation successive de ces sorties fournit les entres artificielles w.


i = 1

i = 2

d1 = 0

y1 = x2

d1 = 1

u1
y 1 = x 2 = x 1 x 42 g sin x 3 + ----m
Une des entres apparat ( u 1 ), on peut arrter

d1 = 1

y 1 = w 1

d2 = 0

y2 = x3

d2 = 1

y 2 = x 3 = x 4

d2 = 2

u2
1
y2 = x 4 = ----2- 2x 1 x 2 x 4 gx 1 cos x 3 + ----m
x1
Une des entres apparat ( u 2 ), on peut arrter

d2 = 2

y2 = w 2
55

SOLUTIONS DES EXERCICES

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


suivantes:
u1
w 1 = x 1 x 42 g sin x 3 + ----m
u2
1
w 2 = ----2- 2x 1 x 2 x 4 gx 1 cos x 3 + ----m
x1
qui permettent dobtenir le modle 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 schma complet du systme linaris par contre raction est reprsent


la figure 3-14.

w 1 = r

u1 = F

(3.15), (3.16)

w 2 = (3.21), (3.22) u = T (3.17), (3.18)


2

(3.19)
(3.20)

w1
w2

1s
1 s2

y1
y2

Figure 3-14 Combinaison du robot et de son modle inverse.

56

CHAPITRE 4
DISCRTISATION

4.1

Solution de lquation dtat linaire et stationnaire

4.1.1

Cas dun systme dordre un

En prsence dune seule variable dtat, la solution de lquation


diffrentielle linaire, coefficients constants et homogne:
x (t) = ax(t)
se rsout de la faon classique suivante:
dx
= ax
dt
dx
------ = adt
x
ln ( x ) = at + c 1
x = c2 e

at

o c 1 et c 2 sont des constantes. Cette dernire valeur peut tre dtermine en


posant comme condition initiale x = x o au temps t = t o . On obtient alors:
x = e

a ( t to )

xo

Si ncessaire, la fonction exponentielle peut tre value numriquement


au moyen de la srie:
2

e = 1 + + ----- + ----- +
2! 3!

57

SOLUTION DE LQUATION DTAT LINAIRE ET STATIONNAIRE

4.1.2

Equation dtat homogne

Pour obtenir la solution de lquation dtat (2.8), cette dernire est tout
dabord rsolue sans excitation extrieure, avec seulement des conditions initiales
non nulles. Il sagit de lquation homogne:
x (t) = Ax(t) avec: x(t 0) = x 0

(4.1)

Pour ce faire, sa solution est suppose suffisamment lisse de sorte quun


dveloppement en srie 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 immdiatement que A 0 = x 0 . Si on drive


(4.2) et que lon substitue lexpression 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 drivations successives de la srie et
de lquation homogne value en t = t 0 , lexpression suivante est obtenue:
2

A ( t t0 )
A ( t t0 )
------------------------------------------------- + x0
x(t) = I + A ( t t 0 ) +
+
2
6
Par analogie au cas scalaire, le terme entre crochets est dfini comme
lexponentielle de matrice et not:
e

A ( t t0 )

A ( t t0 )
A ( t t0 )
= I + A ( t t 0 ) + -------------------------- + -------------------------- +
2
6

k ( t t0 )

A -----------------k!
k=0

4.1.3

Proprits de lexponentielle de matrice

On peut montrer que la solution de lquation homogne est unique, ce qui


conduit des proprits trs intressantes pour lexponentielle de matrice. Par
exemple, considrons deux instants t : t 1 et t 2 . Nous avons:
x(t 1) = e

A ( t1 t0 )

x(t 0)

et

x(t 2) = e
58

A ( t2 t0 )

x(t 0)

DISCRTISATION

Comme le choix de t 0 est arbitraire, x(t 2) peut galement sexprimer de la


manire suivante:
x(t 2) = e

A ( t2 t1 )

x(t 1)

qui donne par substitution de x(t 1) :


x(t 2) = e

A ( t2 t1 ) A ( t1 t0 )

x(t 0)

Maintenant, nous avons deux expressions diffrentes pour x(t 2) . Puisque la


solution est unique, elles doivent tre les mmes. Ainsi, nous pouvons conclure
que:
e

A ( t2 t0 )

= e

A ( t2 t1 ) A ( t1 t0 )

(4.3)

pour tout t 2 , t 1 et t 0 . En particulier, si t 2 = t 0 , alors:


I = e

A ( t1 t0 ) A ( t1 t0 )

Ainsi, linverse de e
4.1.4

At

sobtient simplement en changeant le signe de lexposant.

Solution particulire

La solution particulire de lquation dtat (2.8) lorsque la commande u


est non nulle sobtient par la mthode de variation des paramtres. Nous supposons que la solution a la forme:
x(t) = e

A ( t t0 )

(4.4)

v(t)

o v(t) est un vecteur de paramtres variables dterminer, par opposition aux paramtres constants x(t 0) . En substituant lexpression (4.4) dans lquation dtat:
x (t) = Ax(t) + Bu(t)
il vient:
Ae

A ( t t0 )

v(t) + e

A ( t t0 )

A ( t t0 )
v (t) = Ae
v(t) + Bu(t)

et, par le fait que linverse de lexponentielle de matrice est obtenu en changeant
le signe de son exposant:
A ( t t0 )
v (t) = e
Bu(t)
59

SOLUTION DE LQUATION DTAT LINAIRE ET STATIONNAIRE

En supposant que la commande est nulle pour t < t 0 , v peut tre intgr de t 0 t
pour aboutir :
t

v(t) =

A ( t0 )

Bu() d

t0

Par consquent, la solution particulire exhibe la forme:

x(t) = e

A ( t t0 )

A ( t0 )

Bu() d

t0

Cette expression peut tre simplifie au moyen de la relation (4.3) pour aboutir
la solution particulire:
t

x(t) =

A(t )

Bu() d

t0

Il sagit dun produit de convolution!


4.1.5

Solution complte

Le systme tant linaire et en vertu du principe de superposition, la


solution complte de lquation dtat est la somme de sa solution homogne et
dune solution particulire.

x(t) = e

A ( t t0 )

x(t 0) + e

A(t )

Bu() d

(4.5)

t0

4.1.6

Discrtisation

Si le systme analogique est command par un ordinateur au travers de


convertisseurs A/D et D/A avec une priode dchantillonnage h , lquation (4.5)
scrit 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

DISCRTISATION

Les convertisseurs D/A maintiennent la commande durant une priode


dchantillonnage. Par consquent:
u() = u(kh), kh < kh + h
En posant = kh + h , lquation aux diffrences obtenue devient:
h

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


0

Si nous dfinissons: = e Ah

et

e A d B
0

Alors, le modle dtat discret qui correspond un systme analogique command


par ordinateur a la forme:
x(kh + h) = x(kh) + u(kh)
y ( kh ) = Cx(kh) + Du(kh)
La srie dfinissant lexponentielle de matrice peut tre intgre terme terme, ce
qui fournit:
Ah 2 A 2 h 3
Aihi + 1
-----------------------------------+ B
= Ih +
+
++
2!
3!
( i + 1 )!
Dun point de vue temps de calcul, il est trs avantageux dvaluer les deux
matrices et partir dune seule srie. Pour ce faire, introduisons la srie:
Ah A 2 h 2
Aihi
= I + ------- + ------------ + + ----------------- +
3!
( i + 1 )!
2!
Il est facile de vrifier que:
= I + Ah et = hB
En cas dimplantation pratique, la srie est value de la faon suivante:
Ah
Ah
Ah
Ah
I + ------- I + ------- ------------- I + -------

2
3
N1
N
61

SOLUTION DE LQUATION DTAT LINAIRE ET STATIONNAIRE

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


termes de la srie soit ngligeable.
4.1.7

Rsum

La solution de lquation dtat linaire analogique est ncessaire


lobtention du modle dtat discret dun systme stationnaire command par
ordinateur.
u(kh) D

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

u(t)
A

y(t)

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


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

u(kh)

y(kh)

y(kh)

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

avec = I + Ah , = hB = A ( I )B et =

i=0

4.1.8

Exemple: Double intgrateur


Soit le systme suivant:
u

x2

1
--s

1
--s

x1

Figure 4-1 Schma fonctionnel dun double intgrateur

Son modle dtat est:


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

x1
x2

= Cx

Sa fonction de transfert est:


62

Aihi
----------------- .
( i + 1 )!

DISCRTISATION

1
G(s) = ----s2
Lorsque ce systme est vu au travers de convertisseurs AD et DA, son
modle prend la forme:
x(k + 1) = x(k) + u(k)
y(k) = Cx(k)
avec:

A2h2 A3h3
= e Ah = I + Ah + ------------ + ------------ + ,
2
6

et:

h3
h2
= Ih + A ----- + A 2 ----- + B ,
2
6

soit numriquement:

et:
4.1.9

= 1 0 + 0 1 h+ 0 0
0 1
0 0
0 0

e A dB =

h2
----- = 1 h ,
2
0 1

1 d 0 = h 2 2
1
h
0 0 1

Calcul de lexponentielle de matrice

Pour des systmes de dimension raisonnable, la limite exacte de la srie


qui correspond lexponentielle de matrice peut tre obtenue. Pour ce faire, la
transforme de Laplace de lquation dtat est prise:
sX(s) x(0) = AX(s) + BU(s)
do:
X(s) = ( sI A ) 1 x(0) + ( sI A ) 1 BU(s)
Par comparaison avec la solution complte obtenue pour t 0 = 0 il vient:
e At =

L 1 [ ( sI A ) 1 ]

Des logiciels comme Mathematica ou Maple peuvent tre judicieusement


exploits pour dterminer les n 2 transformes de Laplace ncessaires.
Nous verrons plus loin que lexponentielle de matrice dun systme
dordre n peut tre obtenue exactement en valuant un polynme matriciel.
63

SOLUTION DE LQUATION DTAT LINAIRE ET STATIONNAIRE

4.1.10 Algorithme de Leverrier


adj [ sI A ]
[ sI A ] 1 = --------------------------det [ sI A ]

(4.6)

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 llment se trouvant
la ligne i et la colonne j de la matrice adj ( A ) (adjointe) est:
( 1 )

i+j

det ( A ji )

Le dterminant scrit:
det [ sI A ] = s n + a 1 s n 1 + a 2 s n 2 + + a n
Il sagit du polynme caractristique de A . Les valeurs de s qui annulent
ce polynme caractristique sont les valeurs propres de A .
Quant la matrice adjointe, elle peut scrire:
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
squentiellement partir de H 0 = I :
a 1 = tr [ AH 0 ]

H 1 = AH 0 + a 1 I

1
a 2 = --- tr [ AH 1 ]
2

H 2 = AH 1 + a 2 I

1
a 3 = --- tr [ AH 2 ]
3

H 3 = AH 2 + a 3 I
#

1
a n 1 = ------------ tr [ AH n 2 ]
n1

H n 1 = AH n 2 + a n 1 I

1
a n = --- tr [ AH n 1 ]
n

H n = AH n 1 + a n I = 0

La trace (tr) dune matrice de dimension n n est la somme de ses


lments diagonaux.
64

DISCRTISATION

4.1.11 Thorme de Cayley-Hamilton


Soit f(A) une fonction matricielle quelconque dune matrice carre A de
dimension n. Il existe un polynme p de degr infrieur 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 prcdente est


suffisante pour dterminer les i . Si les valeurs propres i sont multiples, de
multiplicit m i , il faut utiliser les conditions supplmentaires:
f ( 1 )( i) = p ( 1 )( i)
#
f ( m i 1 )( i) = p ( m i 1 )( i)
Les exposants entre parenthses indiquent lordre de drivation par rapport i .
Rappelons galement que les valeurs propres sont les racines de lquation
caractristique 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
d
d 0

(4.9)

65

SOLUTION DE LQUATION DTAT LINAIRE ET STATIONNAIRE

Pour = 0

(4.9) 0 = 1
(4.8) 1 = 0 + 1 1 = 1
e Ah = A + I

dans (4.7)

e Ah = 1 h
0 1
4.1.13 Exemple de lentranement lectrique
Considrons une application o seule la position angulaire (t) de
lentranement est mesure. Cette position constitue donc lunique sortie
disponible. Lentre u est la tension dalimentation. Les variables dtat sont
x 1(t) = (t) et x 2(t) = (t) . Le modle dtat 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

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 modle dtat de lentranement vu au travers de convertisseurs AD et
DA est maintenant dtermin pour une priode dchantillonnage h = 25 [ms].
Pour ce faire, il faut dabord calculer lexponentielle de la matrice A.
e At =

L 1 [ ( sI A )1 ]

( sI A ) =

s
0

1
sa
66

DISCRTISATION

( sI A )

1
--s

1
-----------------s(s a)
1
----------sa

avec:

1
= -----------------s(s a)

sa
0

1
s

1
1 1
1
------------------ = --- ----------- --s(s a)
a sa s

1 [ ( sI A ) 1 ] =

1 1
--- + --- e at
a a

e at

Les matrices de lquation dtat discrtise sont alors:

= e Ah =

1 ah
--- ( e 1 )
a

e ah
h

e A dB =

1
0

0.0235
0.8825

h
=
0

1
1
--- + --- e a d
a a

0 ea d

h 1
b
1
1
--- + ----- ( e ah 1 )
--- h --- e ah + ---

a a2
0 =
a
a = 0.0003
a
0.0235
b
1
b ah
--- ( 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 LQUATION DTAT LINAIRE ET STATIONNAIRE

4.1.14 Exemple de la cuve de mlange


Soit la cuve de mlange dcrite au paragraphe 3.3.5 et son modle linaris
obtenu au paragraphe 3.3.6:
x1
x 1
1 K
-----= ----- 2 Sx1
x 2
0
y 1
y 2

1
--S
0

x 1

x 2

x 1

0
u1 + u2

x 2

1
( c1 x2 )
-------------------x1

1
( c2 x2 )
-------------------x1

u 1
u 2

Le point de fonctionnement satisfait les quations:


x
0 = u 1 + u 2 K ----1S
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 numriques 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 modle analogique linaris sous
la forme:
x 1
=
x
2

a 0 x1 +
0 b x 2

1
p

1
q

68

u 1
u 2

DISCRTISATION

avec:
1
1K x
a = ----- ---- ----1- et b = ----- ( u 1 + u 2 )
x1
x1 2 S
( c1 x2 )
( c2 x2 )
p = --------------------- et q = --------------------x1
x1
Le modle discret est aisment obtenu en exploitant le thorme de
Cayley-Hamilton:
e
e
e

Ah

1 h
2 h

= 1 A + 2 I
= 1 1 + 2
= 1 2 + 2

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


ah

bh

ah

ah

e e
be ae
Aprs obtention de 1 = ---------------------- et 2 = ----------------------------- et substitution, il
ab
ab
vient:
= e

Ah

ah

0
h

eA d B =
0

0
e

bh

0
0

1 ah
--- ( e 1 )
a
p bh
--- ( e 1 )
b

69

1 ah
--- ( e 1 )
a

q bh
--- ( e 1 )
b

r r
s v

SOLUTION DE LQUATION DTAT DISCRTE ET STABILIT

4.2

Solution de lquation dtat discrte et stabilit

Lanalyse et la synthse dune commande pour un systme multivariable


sont supportes par des outils mathmatiques puissants, pour autant que le
systme considr soit reprsent par un modle linaire et stationnaire. De plus,
la commande est gnralement implante sur un calculateur ayant une vision
discrte de linstallation physique rgler. Grce aux oprations successives de
linarisation et de discrtisation, la forme adquate 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 systme dquations aux diffrences sobtient de manire


rcurrente:
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:
k1

k i 1 u(i)

x(k) = k k 0 x(k 0) +

(4.12)

i = k0

4.2.1

Matrice de transfert discrte

Lapplication 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

DISCRTISATION

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 discrte


qui est de dimension p r .
Lalgorithme de Leverrier discret permet de dterminer aisment linverse
de la matrice [ zI ] .
4.2.2

Algorithme de Leverrier discret

Lalgorithme de Leverrier dcrit au paragraphe 4.1.10 peut tre crit sans


autre en remplaant largument sI A par zI . Ainsi:
H0 z n 1 + H1 z n 2 + H2 zn 3 + + Hn 1

1
[ zI ] = ----------------------------------------------------------------------------------------------------------det [ zI ]

(4.13)

Le dterminant det [ zI ] = z n + a 1 z n 1 + a 2 z n 2 + + a n est


polynme caractristique de . Les valeurs de z qui annulent ce polynme
caractristique sont les valeurs propres de . De par la forme de lquation (4.13),
on constate que ces valeurs propres jouent le mme rle dans la matrice de
transfert que les ples dans une fonction de transfert. Les matrices H i sont de
dimension n n . Elles se calculent squentiellement partir de H 0 = I :
a 1 = tr [ H 0 ]

H 1 = H 0 + a 1 I

1
a 2 = --- tr [ H 1 ]
2

H 2 = H 1 + a 2 I

1
a 3 = --- tr [ H 2 ]
3

H 3 = H 2 + a 3 I
#

1
a n 1 = ------------ tr [ H n 2 ]
n1

H n 1 = H n 2 + a n 1 I

1
a n = --- tr [ H n 1 ]
n

H n = H n 1 + a n I = 0
71

SOLUTION DE LQUATION DTAT DISCRTE ET STABILIT

4.2.3

Stabilit

Comme vu prcdemment, la sortie dun systme multivariable peut


sexprimer sous la forme:
(4.14)

Y(z) = H(z)U(z)
avec:
H(z) = C [ zI ] 1 + D
ou encore, selon le formalisme de Leverrier:
Cadj [ zI ]
H(z) = ------------------------------------ + D
det [ zI ]

(4.15)

Lquation (4.14) reprsente, sous forme compacte, la relation:


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)

Y 1(z)

Selon (4.15), chaque fonction de transfert H ij a les mmes ples qui


correspondent aux valeurs propres de . H ij est la fonction de transfert du
systme entre lentre j et la sortie i lorsque toutes les autres entres sont nulles.
Le systme est stable si toutes ces fonctions de transfert sont stables, cest--dire
si toutes les valeurs propres de sont dans le cercle unit. Il sagit dune
condition de stabilit suffisante, mais pas ncessaire. En effet, certains lments
de la matrice H peuvent exhiber des zros et des ples identiques qui se
simplifient.

72

DISCRTISATION

4.2.4

Exemple: Double intgrateur

La matrice de transfert du double intgrateur introduit au paragraphe 4.1.8


est obtenue de la manire suivante:
zI + H 1
adj [ zI ]
[ 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
2
(
z

1
)
0 z1
h
2
1
( z 1 )h 2 2 + h 2
h2 z + 1
H(z) = z 1 h h 2 ------------------- = ----------------------------------------- = ----- ------------------2
2 ( z 1 )2
( z 1 )2
h (z 1)

soit le mme rsultat que celui obtenu en appliquant la relation bien connue dans
le cas SISO:
( 1 z 1 )

Z L1

G(s)
-----------
s

73

RSUM

4.3

Rsum

4.3.1

Dmarche de discrtisation

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


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

u(t)

y(t)

Linarisation
u
u(t)

y
u

x ( t ) = Ax (t) + Bu (t)
y (t ) = Cx (t) + Du (t)

y(t)

+
y

Discrtisation

(adjonction des AD et DA)

u
u(k)

Figure 4-2

x ( k + 1 ) = x (k) + u (k)
y ( k ) = Cx (k) + Du (k)

y
+

y(k)

Reprsentation dtat discrte dun systme rel 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

DISCRTISATION

4.3.2

Alternatives de discrtisation

Modle linaire

Modle non linaire


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

Linarisation (pt de fonct.)


x (t) = Ax (t) + Bu (t)
y (t) = Cx (t) + Du (t)

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


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

Discrtisation exacte
x (k + 1) = x (k) + u (k)
y (k) = Cx (k) + Du (k)

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


y(k) = Cx(k) + Du(k)
= e
h

Ah

2 2

3 3

A h
A h
Aihi
-------------------- I + Ah +
+
+ + ---------- +
2!
3!
i!

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

Calcul de lexponentielle de matrice


=

Ah
Ah
Ah
Ah
Aihi
----------------- I + ------- I + ------- ------------- I + -------
2
3 N 1
N
( i + 1 )!

i=0

= I + Ah
e At = L 1 [ ( sI A ) 1 ] ,

Cayley-Hamilton:

et

= hB

inversion par Leverrier

0 A n 1 + 1 A n 2 + + n 1 I

75

EXERCICES

4.4

Exercices

4.4.1

Retard
Soit le systme analogique dcrit par lquation diffrentielle:
y (t) = u(t )
Donner le modle dtat discret de ce systme vu au travers de
convertisseurs AD et DA. Considrer le cas o le retard est gal une
priode dchantillonnage h (u est lentre et y la sortie).
Utiliser lapproximation dEuler de la drive pour discrtiser
lquation diffrentielle. Comparer les deux solutions obtenues et
justifier votre constatation.

4.4.2

Discrtisation de lentranement

Soit le moteur courant continu dont la dynamique est dcrite par les
quations diffrentielles:
d
u(t) = k(t) + Ri(t) + L i(t)
dt
d
J (t) = ki(t) f(t)
dt
Pour lapplication considre, linductance L est prise en compte. Lentre
du systme est la tension dalimentation u(t) . Les grandeurs i(t) et (t) sont respectivement le courant dinduit et la vitesse angulaire. J , R , , k et f sont des
paramtres physiques.
Dterminer la reprsentation dtat de ce systme vu au travers de
convertisseurs AD & DA. Seule la vitesse angulaire (t) est mesure.
Comparer une discrtisation approximative par Euler et une discrtisation exacte (exploiter cet effet le thorme de Cayley-Hamilton).
4.4.3

Matrice de transfert
Le modle dtat discret dun systme dynamique est le suivant:
x(k + 1) = 0 1 x(k) + 0 1 u(k)
1 0
10
y(k) = x(k)
Dterminer la matrice de transfert de ce systme.
76

DISCRTISATION

4.5

Solutions des exercices

4.5.1

Solution retard

Le changement de variable v(t) = u(t h) peut scrire au temps t = kh


sans aucune approximation de la faon suivante:
v(kh) = u(kh h) , ou de manire simplifie v(k) = u(k 1)
Aprs observation de lquation diffrentielle, la variable dtat
x(t) = y(t) est choisie. Lquation dtat se prsente par consquent sous la
forme: x (t) = y (t) = v(t) = 0x(t) + 1v(t) . Ainsi, les matrices standard sont
A = 0 et B = 1 .
La discrtisation de cette quation selon la technique exacte qui tient
compte des convertisseurs AD et DA donne:
x(k + 1) = x(k) + v(k)
avec = e

Ah

= e = 1 et =

d =

0 d = h

Ainsi y(k + 1) = y(k) + hv(k) , ou encore y(k + 1) = y(k) + hu(k 1) .


Un dcalage de cette dernire expression donne:
y(k + 2) = y(k + 1) + hu(k)
Il sagit dune quation aux diffrences dordre deux qui reprsente le
systme discrtis. Pour lexprimer sous forme de modle dtat, 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 lquation de sortie, il sagit de y(k) = x 1(k)
Le rsultat avec lapproximation dEuler est le mme! en effet, lintgrale
dune commande constante est une rampe (cest galement une rampe qui est
considre par Euler).
77

SOLUTIONS DES EXERCICES

4.5.2

Solution discrtisation de lentranement


Etat:

x1 =
x2 = i

Sortie: y =
x 1
=
x

f J
k L

y =

kJ
R L
x1
x2

x1
x2

0 u et
1L

+ 0 u

Discrtisation par Euler:


x 1(k + 1)
x 2(k + 1)

1 hf J
hk L

hk J
1 hR L

x 1(k)
x 2(k)

0
u(k)
hL

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


k = 0.1 ,
x 1(k + 1)
x 2(k + 1)
4.5.3

f = 0.01
0.99
0.01

0.1
0.9

et R = 1 :
x 1(k)
x 2(k)

0 u(k)
0.1

Solution matrice de transfert


Le modle dtat discret dun systme 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 donne par:
1
1
1
H(z) = [ zI ] = -------------- z 1 0 1 = -------------- 1 z
2
2
z 1 z 1
z 1 1 z 1 0
78

Chapitre 5
COMMANDE

PAR PLACEMENT DE VALEURS

PROPRES

5.1

Principe de contre-raction

Nous nous limiterons dans ce chapitre au cas de systmes stationnaires qui


ne possdent quune seule entre (SISO ou SIMO). De faon gnrale, la
dynamique est dcrite autour du point de fonctionnement. Il est possible de se
ramener si ncessaire au cas dune dynamique exprime selon les vraies grandeurs
x, u et y en annulant les grandeurs nominales x, u et y .
x (k + 1) = x (k) + gu (k)
y (k) = Cx (k) + Du (k)

La contre-raction tudie dans ce chapitre est choisie proportionnelle


lcart de ltat par rapport ltat nominal. La commande correspond donc une
somme pondre des carts de ltat par les gains K i de la commande:
x 1
x
u = Kx = K 1 K 2 K n 2
#
x
n

Une commande dtat agit en quelque sorte comme un rgulateur PD


gnralis. Le cas de la commande dun entranement lectrique, o les deux

variables dtat sont x 1 = et x 2 = , illustre ce propos. En effet, la contreraction propose conduit une commande similaire celle issue dun rgulateur
PD standard:
79

PRINCIPE DE CONTRE-RACTION

u (k) = K 1 K 2 = K 1 (k) + K 2 (k) = u P(k) + u D(k)

5.1.1

Dynamique en boucle ferme

Ladjonction de la commande dtat dans la description de la dynamique


du systme rgler donne un nouveau modle dtat, rgissant la dynamique du
systme en boucle ferme. Lordre de ce systme est le mme que celui du systme
rgler.
x (k + 1) = x (k) + g [ Kx (k) ]
[ gK ] x (k)

x (k + 1) =

bf
La dynamique du systme en boucle ferme est rgie par les valeurs
propres de la matrice bf . Ces valeurs propres sont les solutions de lquation
caractristique c() :
c() = det [ I bf ] = det [ I + gK ] = 0
Les valeurs propres de dpendent de la constitution physique du
systme rgler. Elles ne peuvent pas tre changes.
Les valeurs propres de bf dpendent du systme rgler et du
rgulateur. Comme bf possde n valeurs propres et que le rgulateur 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
ferme. Ainsi:
( 1 ) ( 2 ) ( n )
connu

inconnu
n

c() = + 1

n1

= 0

c() = det [ I + gK ] =

+ + n = 0

La solution cherche est obtenue en identifiant terme terme les


puissances successives de dans les deux membres de cette dernire quation.
Cette comparaison fournit n quations qui permettent de dterminer les n
inconnues K i , pour i = 1, , n .
80

COMMANDE PAR PLACEMENT DE VALEURS PROPRES

Si le systme boucl est cart de son tat nominal ( cause de conditions


initiales quelconques ou sous leffet dune perturbation) et que les valeurs propres
de bf ont t choisies dans le cercle unit, le systme retourne
asymptotiquement ltat nominal, cest--dire en x (k) = 0 , avec la dynamique
suivante:
z [ X (z) x (0) ] = bf X (z)
X (z) = [ zI ] 1 x ( 0 )z
bf

Linverse de matrice qui apparat dans cette dernire expression sobtient


au moyen de lalgorithme de Leverrier. Il sagit dune matrice de fractions
rationnelles en z , dont les dnominateurs sont tous gaux et valent det [ zI bf ] ,
soit c(z) . Ce sont donc bien les valeurs propres de bf qui rgissent la
dynamique du systme en boucle ferme.
5.1.2

Exemple: Double intgrateur

Le modle dtat discret du double intgrateur a t obtenue au paragraphe


4.2.4. Il est caractris par les matrices:
=

1
0

h ; = h2 2
1
h

Comme ce systme est dordre deux, il est possible dimposer en boucle


ferme un comportement oscillant dcrit par une fonction de transfert du mme
ordre:
o2
K ----------------------------------------s 2 + 2 0 s + 02

( K est ici le gain statique du systme rgler)

Les ples de ce systme analogique sont s 1, 2 = 0 ( 2 1 ) , et


leur quivalent discret z 1, 2 = e hs 1, 2 , o h est la priode dchantillonnage.
Au stade de la conception, certains critres doivent tre spcifis. En
particulier, des considrations lies lapplication considre peuvent ncessiter
une limitation de lamplitude du 1er dpassement. Dans cet exemple, nous
souhaitons que cette valeur nexcde pas 12.3%. Pour satisfaire cette
spcification, il faut choisir = 0.5 . Gnralement, la rapidit de la rponse
indicielle est galement fixe en relation avec lapplication. Dans cet exemple,
linstant dapparition du premier maximum est choisi comme mesure de cette
81

PRINCIPE DE CONTRE-RACTION

rapidit et impos gal une seconde ( t p = 1 ), ainsi 0 = 3.6 . Finalement, les


ples analogiques correspondants sont s 1, 2 = 1.8 3.12j et leur quivalent
discret z 1, 2 = 0.8 0.25j , pour une priode dchantillonnage h = 0.1
seconde.
Dans ce cas monovariable, les notions de valeurs propres et de ples sont
quivalentes. Par consquent, lquation caractristique impose 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

det

z 1 + K1 h 2 2

h + K2 h 2 2

hK 1

z 1 + hK 2

h2
h2
z 1 + ----K 1 ( z 1 + hK 2 ) hK 1 ----- K 2 h = 0

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
2
h
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

Ainsi:

h2
hK 2 + ----- K 1 2 = 1.6
2
h2
----- K 1 hK 2 + 1 = 0.7
2

et finalement:

0.1
K 1 = ------- = 10
h2
0.35
K 2 = ---------- = 3.5
h

82

COMMANDE PAR PLACEMENT DE VALEURS PROPRES

5.2

Synthse constructive

Lexemple prcdent a mis en vidence les problmes lis lobtention du


gain de la contre-raction dtat. Il est en effet ncessaire de dvelopper le
dterminant de faon algbrique, puis de regrouper les termes relatifs aux
diffrentes puissances de z et finalement de les identifier. Cette mthode est
difficilement applicable pour des systmes dordre suprieur deux. Il existe
nanmoins une alternative intressante, base sur lexploitation de la forme
canonique W (annexe A). Selon cette technique, la synthse du rgulateur est
effectue sur la base dune reprsentation dtat artificielle du systme rgler
obtenue par la transformation:
e nT n 1
w = Px

avec:

P =

e nT n 2
#
e nT I

o e n est la dernire ligne de linverse de la matrice de gouvernabilit G (A.4):


G = [ I

n 1 ]

Ainsi:

w (k + 1) = w w (k) + w u (k)

avec:

a1 a2 an
1
w = PP 1 = 1 0 0 ; w = P = 0
#
#
#
0
0 1 0

rgler.

Les a i sont les coefficients du polynme caractristique du systme

On choisit: u = K 'w

w (k + 1) = ( w w K ' )w (k)

a 1 K 1' a 2 K 2'
1
0
wbf = w w K ' =
#
0

83

a n K n'

0
#
0

SYNTHSE CONSTRUCTIVE

Le polynme caractristique de wbf qui rgit la dynamique du systme


en boucle ferme est:
c() = n + ( a 1 + K 1' ) n 1 + + a n + K n' = 0
Le choix des valeurs propres dsires en boucle ferme conduit quant lui
au polynme caractristique:
c() = n + 1 n 1 + 2 n 2 + + n = 0
Les gains de contre-raction des tats artificiels sont finalement donns
par les simples expressions:
K 1' = 1 a 1
K 2' = 2 a 2
#
K n' = n a n
Comme limplantation relle de la commande est base sur les variables
dtat physiques, il faut convertir les gains obtenus par une transformation
inverse:

u = K 'w = K 'P x = Kx
K
5.2.1

Rsum de la marche suivre


- Calculer numriquement les coefficients a i de lquation
caractristique du systme selon lexpression det [ zI ] = 0 .
- Calculer numriquement les coefficients i de lquation
caractristique en fonction des valeurs propres choisies en boucle
ferme selon lexpression ( 1 ) ( 2 ) ( n ) = 0 .
- La diffrence entre les coefficients des deux quations caractristiques
(boucle ouverte et boucle ferme) 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 linverse de la matrice de
gouvernabilit.

84

COMMANDE PAR PLACEMENT DE VALEURS PROPRES

5.3

Formule dAckermann

La procdure dcrite prcdemment pour dterminer le gain de la


commande dtat peut se rduire une seule relation, appele la formule
dAckermann. En effet,
K = K 'P =

1 a1

2 a2

n an P

(5.1)

Les coefficients a i sont ceux du polynme caractristique du systme rgler () . Les i sont ceux du polynme caractristique du systme complet en
boucle ferme c() .
Le membre de droite de lquation (5.1) peut tre scinder en deux parties:
a1 a2 an

K = 1 2 n P +

e nT n P 1
1

Le terme sous laccolade est la premire ligne de la matrice PP


T n 1
(annexe A, relation A.8), donc gal e n P . Le deuxime membre de cette
T n
quation se rsume par consquent un facteur e n . Le vecteur de gain peut
donc tre obtenu selon:
e nT n 1
T n
e Tn 2
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

c()

Il sagit du produit de la dernire ligne de linverse de la matrice de


gouvernabilit 1 et dun polynme matriciel dont les coefficients sont ceux du
85

FORMULE DACKERMANN

polynme caractristique choisi en boucle ferme (annexe A, paragraphe A.1.2),


soit c() . Ainsi:
1

K = 0 0 1 G c()

(5.2)

K = 0 0 1 g g

n1

c( )

(5.3)

Si G est inversible, on dit que le systme est gouvernable.


5.3.1

Exemple: Double intgrateur


On souhait imposer en boucle ferme 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:

1
G 1 = ----h3

h
h

G =

1
3h 2 2 = ----h2
h2 2

1
K = K 1 K 2 = ----- 0 1
h2
c() = 1 h
0 1
=

1 3h 2
1 h 2

1 3h 2 ()
c
1 h 2

1.6 1 h + 0.7 1 0
0 1
0 1

1 2h + 1.6 1.6h + 0.7 0 =


0 1
0 1.6
0 0.7

1
K = ----- 1 h
--2
h2
=

h 2 2 3h 2 2
h
h

1
0.1 0.4h = ----h2
0 0.1

0.1 0.35 = 10 3.5


------- ---------h2 h
86

0.1

0.1 0.4h
0 0.1
0.1
0.4h ------- h
2

COMMANDE PAR PLACEMENT DE VALEURS PROPRES

5.4

Comportements imposs en boucle ferme

5.4.1

Imposition dune rponse pile

Cherchons le gain K qui permet de ramener un systme perturb son


point dquilibre en n priodes dchantillonnage.
Perturbation:

x(0) = x 0

(x (0) = x 0 )

Ramener :

x(n) = 0

(x (n) = 0 x(n) = x)

La squence de commandes ncessaires est donne par (4.12):

n 1

x(n) n x 0

u(n 1)
u(n 2) =
#
u(0)

G 1

n x0

Dans notre cas:


En multipliant de part et dautre 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
do:
K = 0 0 1 G 1 n
Daprs Ackermann, ceci correspond c ( ) = n . Par consquent,
c() = n = 0 . Tous les ples se trouvent au centre du cercle unit. Attention
toutefois lamplitude des commandes qui peut en rsulter.
87

COMPORTEMENTS IMPOSS EN BOUCLE FERME

5.4.2

Imposition dun ple dominant

La rponse indicielle dun systme dordre un est choisie comme rponse


en boucle ferme.
K
G(s) = -------------1 + s

Le ple dominant s 1 = 1 est slectionn. Les autres ples sont placs


au centre du cercle unit. Les ples discrets correspondants sont donns par:
zi = e
u

si h
4

max

Temps en [s]

5.4.3

Imposition dune paire de ples complexes conjugus dominants

La rponse indicielle dun systme dordre deux est choisie comme rponse en boucle ferme.
K
G(s) = ------------------------------------2 2
s + 2s + 1

avec

1
0 = --

et

1
2
s 1, 2 = --- ( 1 )

Les deux ples s 1, 2 sont imposs. Les autres ples sont placs au centre du
cercle unit.
KUe

-----------------2
1

y(t)

KU

U
tp

t p = -----------------2
1

88

u(t)
t

COMMANDE PAR PLACEMENT DE VALEURS PROPRES

5.4.4

Filtre de Bessel
Phase la moins variable possible! (pas de dformation des signaux)
Frquence de coupure (bande passante en B.F.) n .
1

n=1

0.8

2
3
0.6

n = 1
4

0.4

0.2

0
0

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)


ples si

-1

-0.866 0.5i

-0.7456 0.7114i, -0.9416

-0.9048 0.2709i, -0.6572 0.8302i

-0.5906 0.9072i, -0.8516 0.4427i, -0.9264

89

IMPLANTATION DE LA COMMANDE DTAT

5.5

Implantation de la commande dtat

Contrairement la conception dune commande classique de type PID par


la mthode de Ziegler-Nichols, la conception dune commande dtat ncessite la
connaissance du modle du systme rgler. Une fois ce modle disposition, il
peut tre exploit de plusieurs faons pour amliorer le comportement dynamique
de linstallation, ou pour simplifier la tche de la commande. Il est par exemple
naturel dutiliser le modle pour laborer une commande a priori, apte amener
en boucle ouverte le systme son point de fonctionnement. Par ce moyen,
ladjonction de la commande ne sert plus qu compenser leffet de perturbations
ventuelles, ou corriger limprcision de la commande a priori, conscutive
linexactitude invitable du modle (structure ou valeur des paramtres). Ainsi, le
schma fonctionnel traditionnel dune commande dtat se rencontre
habituellement sous la forme reprsente la figure 5-1.
Commande a priori

y(k)

Valeurs
nominales

u(k)
+

u (k)

u(k)

x (k)

x(k)

A
D

u(t)
A

Systme
physique

y(t)

x(t)

x(k)

Figure 5-1 Schma fonctionnel dune commande dtat.

Avec une telle structure, le rglage et lasservissement sont assurs


simultanment. En effet, la contre-raction maintient ltat autour de sa valeur
nominale (rglage), tandis que les valeurs nominales sont gnres en fonction des
sorties dsires (asservissement).
Bien que le systme physique puisse tre non linaire, le modle
dynamique exploit pour la conception de la commande u (k) = Kx (k) est:
x (k + 1) = x (k) + gu (k)
y (k) = Cx (k) + Du (k)
Dans le cas de systmes non linaires, les valeurs nominales doivent tre
constantes afin que les matrices , g, C et D le soient galement. Il sagit donc
dasservissement autour dun point de fonctionnement et non du suivi de
90

COMMANDE PAR PLACEMENT DE VALEURS PROPRES

trajectoires nominales. Dans ce dernier cas o le modle est volutif, la stabilit


nest pas forcment garantie par un choix de valeurs propres dans le cercle unit.
Toute la partie du schma situe gauche des convertisseurs AD & DA est
ralise par voies algorithmiques sur un calculateur. Il faut noter que les sorties
voluent en boucle ouverte, seul ltat est rgl. Ceci peut poser des problmes si
les matrices C et D sont mal connues. En pratique nanmoins, D est
gnralement nulle et les variables dtat peuvent souvent tre choisies afin que la
matrice C ne prsente que quelques lments gaux lunit sur sa diagonale (les
sorties sont ainsi un sous-ensemble des variables dtat). De plus, ltat est
souvent reconstruit ou moyen dun observateur partir des sorties et des entres.
Avec une telle structure de commande, limposition dune consigne pour
les grandeurs de sortie revient choisir leur valeur nominale. Le rgulateur
ramne ainsi ltat du systme son tat nominal, cest--dire son tat de
consigne. Le schma fonctionnel prcdent peut tre rarrang sous une forme
plus traditionnelle pour faire ressortir ces consignes.
y(k)
y c(k)

Valeurs
nominales

x(k)
x c(k)

u(k)
+

x (k)
- e(k)

u (k)

u(k)

A
D

x(k)

u(t)
A

Systme
physique
x(t)

Figure 5-2 Schma fonctionnel dune commande dtat sous forme traditionnelle.

91

y(t)

RSUM COMMANDE SISO

5.6

Rsum Commande SISO

5.6.1

Rgulateur
u(k)
K

x(k + 1) = x(k)
+ gu(k)

x(k)

5.6.2

y(k)
y(k) = c T x(k)
Systme
dordre n

Gouvernabilit
Le systme est gouvernable si:
Rang(G) = Rang [ Ig

5.6.3

n 1g ] = n .

Contre-raction dtat
Valeurs propres imposes en boucle ferme: i
Polynme caractristique de ( gK ) :

i = 1, , n .

c() = ( 1 ) ( n ) = 0
K = 0 0 1 [ Ig
5.6.4

n 1 g ] c()

Rgulateur rponse pile

Choix: c() = n
Lerreur de rglage est annule n priodes dchantillonnage aprs
lapparition de la perturbation.
Risque de saturation de la commande!
Ce risque peut tre rduit en augmentant la priode dchantillonnage ou
en choisissant un autre polynme caractristique c() .

92

COMMANDE PAR PLACEMENT DE VALEURS PROPRES

5.7

Exemple de synthse: Enceinte de chauffe


Soit lenceinte de chauffe reprsente ci-dessous:
T ex(t)

P(t)
T(t)

La grandeur d'entre est la puissance de chauffe u(t) = P(t) . La sortie est


la temprature dans lenceinte y(t) = T(t) . La temprature extrieure
q(t) = T ex(t) qui varie lentement est considre comme une perturbation.
5.7.1

Modlisation
Le modle analogique est: mcT (t) = P(t) R [ T(t) T ex(t) ]
Pour mc = 1 et x(t) = T(t) , il vient:

5.7.2

x (t) = Rx(t) + u(t) + Rq(t)


y(t) = x(t)

Solution par imposition dun point de fonctionnement

Considrons un point de fonctionnement tel que y = y c et supposons que

la temprature extrieure q est constante. En posant x = 0 dans le modle dtat,


il vient: x = y = y c et u = R ( y c q ) . Le modle exprim en variables cart
autour de ce point de fonctionnement est alors:

x (t) = Rx (t) + u (t)


y (t) = x (t)
Les matrices du modle discret sont = e

Ah

= e

Rh

et:

h R
1 Rh
1
= e
d B = --- ( e
1 ) = --- ( 1 ) =
R
R
0

Finalement, le modle dtat discret exprim en variables cart est:


x (k + 1) = x (k) + u (k)
y (k) = x (k)
93

EXEMPLE DE SYNTHSE: ENCEINTE DE CHAUFFE

En imposant une seule valeur propre en boucle


c() = + 1 = 0 , le gain de rtroaction est un scalaire qui vaut:
K = 1

+ 1
-------------- c() =

Commande a priori

Valeurs
nominales

ferme:

+
K

u (k)

u(k)

x (k)

x(k)

A
D

u(t)
A

Figure 5-3 Schma fonctionnel

94

Systme
physique
x(t)

y(t)

COMMANDE PAR PLACEMENT DE VALEURS PROPRES

5.8

Exercices

5.8.1

Commande dtat
Soit le systme reprsent par la fonction de transfert:
10
G(s) = ---------------------------------2
s + 0.18s + 9
Dterminer le modle dtat discret de ce systme en prsence de
convertisseurs A/D et D/A avec h = 0.1 [ s ] .
Dterminer la contre-raction dtat K de faon avoir en boucle
ferme un comportement dominant caractris par = 0.5 et
0 = 8 [ rad s ] .
Rpter la conception du rgulateur, mais en plaant toutes les racines
au centre du cercle unit ( z = 0 ). Il sagit dun rgulateur rponse
pile. Ce dernier ramne en effet le systme dans la situation dsire en
un nombre fini de priodes dchantillonnage. Combien?

5.8.2

Rgulateur PI

Pour une implantation sur une carte processeur universelle, un rgulateur


PI discret doit tre exprim sous la forme gnrale dun modle dtat. Lentre du
rgulateur est lcart e(k) existant entre la grandeur de consigne et la mesure.
La sortie du rgulateur correspond la commande c(k) . Il sagit de la
somme des composantes proportionnelle et intgrale ( ui ):
h e(k) + e(k 1)
c(k) = Kp e(k) + ui (k) avec: ui (k) = ui (k 1) + Kp ---- -----------------------------------T
2
i

Les paramtres h , Kp et Ti sont respectivement la priode


dchantillonnage, le gain proportionnel et la constante de temps de lintgrateur.
Dterminer le modle dtat qui correspond ce systme dynamique.
Comparer un tel rgulateur PI avec une commande dtat incluant des
intgrateurs.

95

SOLUTIONS DES EXERCICES

5.9

Solutions des exercices

5.9.1

Solution commande dtat


Passage dune fonction de transfert au modle dtat

Lquation diffrentielle qui correspond la fonction de transfert donne


G ( s ) = Y(s) U(s) est la suivante: y(t) + 0.18y (t) + 9y(t) = 10u(t) .
En choisissant comme variable dtat x 1 = y et x 2 = y , cette quation
peut tre arrange sous la forme dun modle dtat.
x 1(t)
x 1(t)
1
= 0
+ 0 u(t)
9 0.18 x 2(t)
10
x 2(t)
y(t) = 1 0

x 1(t)
x 2(t)

Modle discret
La fonction c2d de Matlab donne:
x 1(k + 1)
x 2(k + 1)

0.9556
0.8786

y(k) = 1 0

0.0976
0.9380

x 1(k)

+ 0.0493 u(k)
0.9763
x 2(k)

x 1(k)
x 2(k)

Contre-raction dtat
Les spcifications = 0.5 et 0 = 8 [ rad s ] correspondent aux ples
analogiques suivants:
2
s 1, 2 = 0 + 1 = 4 6.93j

Dans le domaine discret, ces ples sont:


z 1, 2 = e

hs 1, 2

= 0.5158 0.4281j
96

COMMANDE PAR PLACEMENT DE VALEURS PROPRES

Ackermann nous donne le gain correspondant:


K = 3.35 0.714
Les rponses 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.2

0.4

0.6

0.8

1.2

1.4

1.6

1.8

0.8

1.2

1.4

1.6

1.8

0.5

-0.5

-1

-1.5

-2

-2.5

0.2

0.4

0.6

Il faut dans ce cas plusieurs priodes dchantillonnage pour stabiliser le


systme.
97

SOLUTIONS DES EXERCICES

En fixant les ples discrets au centre du cercle unit, Ackermann donne:


K =

9.27

1.47

Les rponses obtenues avec ces gains et partir des conditions initiales
x 1(0) = x 2(0) = 0.5 sont les suivantes:
1

x1

-1

-2

x2

-3

-4

-5

-6

0.2

0.4

0.6

0.8

1.2

1.4

1.6

1.8

0.4

0.6

0.8

1.2

1.4

1.6

1.8

-2

-4

-6

0.2

Il faut dans ce cas 2 priodes dchantillonnage, ce qui est le minimum ralisable et qui correspond lordre du systme.
98

COMMANDE PAR PLACEMENT DE VALEURS PROPRES

5.9.2

Solution rgulateur PI
Transforme en z :
Y(z) = K p U(z) + U i(z) avec u(k) = e(k) et y(k) = c(k)
1

h U(z) + z U(z)
U i (z) = z U i (z) + K p ---- ----------------------------------Ti
2
1

b0 + b1 z
Y(z)
h
- , avec b 0 = K p 1 + -------- ,
---------- = ------------------------
1
U(z)
2T i
1 + a1 z
h
b 1 = K p -------- 1 et a 1 = 1
2T

Modle dtat driv de la forme canonique dobservabilit (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)


Modle dtat 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
2
i

Pour supprimer le terme indsirable u ( k + 1 ) , on pose comme variable


dtat 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 indsirable disparat 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 prcdent que ltat complet du systme rgler doit


tre disponible pour implanter une commande dtat. Nanmoins, il arrive que
certaines variables dtat ne soient pas mesurables, ou quen raison du cot des
capteurs, elles ne soient pas mesures.
6.1.1

Principe

Pour pallier les lacunes ventuelles de variables dtat, il faut laborer une
technique apte deviner les grandeurs manquantes au moyen des informations
disponibles. Ces informations sont les signaux dentre et de sortie (mesures),
ainsi que le modle du systme. Pour simplifier les dveloppements, seuls les
systmes avec une sortie seront considrs ici (SISO ou MISO). De plus, nous
supposerons que lentre ninfluence pas directement la sortie, ce qui est toujours
le cas pour les systmes analogiques chantillonns. Ainsi, le modle se prsente
sous la forme:
x(k + 1) = x(k) + u(k)
y(k) = c T x(k)
Le principe de lestimation (ou de lobservation) des tats manquants
rside dans lexploitation des informations disponibles par un calculateur. Ce
dernier effectuera la simulation du modle discret du systme physique en
exploitant les entres qui lui sont appliques. La simulation consiste en une simple
valuation successive de lquation dtat partir des conditions initiales. Le
modle tant une approximation de la ralit, le rsultat de la simulation nest
quune estimation de ltat rel x(k) du systme. Pour marquer cette diffrence,
lestimation est repre par un accent circonflexe, soit x (k) (prononcer x crte).
101

ESTIMATEUR

Cette estimation peut ensuite tre exploite en boucle ouverte dans un contexte de
mesure, ou par une commande pour laborer une contre-raction dtat (fig. 6-1).
Systme physique

u(k)

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

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

x(k)

x (k)

y(k) = c T x(k)

y(k)

utiliser x pour
la contre-raction

Calculateur
Figure 6-1 Principe de lestimation dtat.

Bien que ce principe soit sduisant dun point de vue conceptuel, il souffre
de deux problmes majeurs. Tout dabord, les conditions initiales x (0) de ltat ne
sont gnralement pas connues; dautre part, les mesures y(k) qui constituent une
riche source dinformation ne sont pas exploites. Il sagit donc dune estimation
en boucle ouverte.
Une analyse de lerreur destimation (k) = x (k) x(k) permet de mettre
en vidence un dfaut supplmentaire. En effet, lerreur 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 dautres termes:
(k + 1) = (k)
Cette dernire quation derreur se prsente sous la forme dun modle
dtat discret linaire. Les considrations tires prcdemment sur la stabilit de
tels systmes peuvent donc tre exploites pour caractriser la convergence de
lerreur destimation. Il est intressant de constater que la dynamique de cette
erreur est la mme que celle du systme observ, cest--dire quelle est
conditionne par les valeurs propres de la matrice . Lerreur diminue donc avec
la mme dynamique que le systme volue. Si les conditions initiales sont mal
connues, lestimation ne rattrape donc jamais ltat rel. Finalement, si le systme
est instable, lestimation diverge.
102

ESTIMATION

6.1.2

Observateur de Leuenberger

La solution aux problmes mis en lumire au paragraphe prcdent


dcoule de lexploitation des mesures de la sortie du systme rel. Il sagit de
comparer les mesures disponibles avec les sorties fournies par lestimateur.
Lcart rsultant correspond une mesure de la qualit de lestimation. Cet cart
peut donc tre exploit pour corriger lestimation. Le schma de principe associ
la technique propose est reprsent la figure 6-2. Lestimation de la sortie est
tire du modle original du systme et est donne par lexpression y (k) = c T x (k) .
Installation physique

u(k)

x(k)

Processus
,

x (k)

Modle
,

Calculateur

cT

cT

y(k)

y (k)
-

Correction

Figure 6-2 Structure de lobservateur dtat.

Une contre-raction de lerreur destimation est donc introduite. Dun


point de vue analytique, le comportement dynamique de lobservateur se traduit
par lquation aux diffrences:

Dynamique
suppose connue

x (k) + u(k) + L [ y(k) y (k) ]

x (k + 1) =

Correction en fonction
de lerreur destimation

L est un vecteur colonne de dimension n . Puisquil ny a quune sortie


mesure y(k) , le terme de correction se prsente sous la forme:
L1

y(k) y (k)

#
Ln

11

n1
103

ESTIMATEUR

Lerreur destimation de ltat peut maintenant tre value, selon une dmarche similaire celle adopte au paragraphe prcdent:
(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)
( Lc T )

(k)

(k + 1) =

Il sagit dune quation dtat homogne (sans excitation). Sa solution


tend vers zro si les valeurs propres de e se trouvent lintrieur du cercle unit.
Il y a n erreurs destimation des n tats qui peuvent tre contrles
dynamiquement par les n gains L i de lobservateur. Par consquent, la
convergence dynamique de lestimation peut tre choisie librement. Si les valeurs
propres i de e sont toutes imposes dans le cercle unit, lerreur destimation
(k) tend vers zro, quelles que soient les conditions initiales x (0) . Lquation
caractristique de e est:
e() = det ( I e ) = ( 1 ) ( 2 ) ( n ) = 0
Relevons quune seule mesure y(k) permet destimer n tats. De plus, la
dynamique de lobservateur tant celle dun algorithme, il ny a pas de limitation
physique la vitesse de convergence choisie, ni lamplitude des signaux dans
lestimateur. Ces derniers ne sont en effet que des nombres stocks en mmoire.
Les valeurs propres sont par consquent choisies afin dobtenir la dynamique la
plus grande possible, ou en tout cas une dynamique plus rapide que celle du
rgulateur. Nous verrons plus loin que cet objectif est atteint si elles sont toutes
places au centre du cercle unit.
Tout comme dans le cas de la commande dtat, la qualit de lestimation
dtat dpend de la qualit du modle disponible et de la prcision des capteurs de
mesure.
104

ESTIMATION

Exemple: Double intgrateur


Soit le modle discret du double intgrateur:
1 h x(k) + h 2 /2 u(k)
0 1
h

x(k + 1) =

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

L1
0

1
h
det

+
1 0
0 1
L2
0

1 + L1
L1 0
1 h
det
+
= det
L2 0
L2
0 1

h
1

( 1 + L1 ) ( 1 ) + L2 h = 2 + 1 + L1 L1 + L2 h = 0
( L1 2 ) + ( L2 h L1 + 1 )

Pour h = 0.1 s, il vient: 2 +

6.1.3

0.8

0.32

Les gains de lobservateur sont finalement:


0.52
L 1 = 1.2 ; L 2 = ---------- = 5.2
h

105

= 0

SYNTHSE CONSTRUCTIVE

6.2

Synthse constructive

Lexemple prcdent a mis en vidence les problmes lis lobtention du


gain de lobservateur dtat. Il est en effet ncessaire de dvelopper le dterminant
de faon algbrique, puis de regrouper les termes relatifs aux diffrentes
puissances de et finalement de les identifier. Cette mthode est difficilement
applicable pour des systmes dordre suprieur deux. Il existe nanmoins une
alternative intressante, base sur lexploitation de la forme canonique V (annexe
A). Selon cette technique, la synthse de lobservateur est effectue sur la base
dune reprsentation dtat artificielle du systme observer:
x(k + 1) = x(k) + u(k)
y(k) = c T x(k)
Le passage la reprsentation artificielle seffectue par la transformation:
x = Rv

R = n 1 e e Ie
n
n
n

avec:

o e n est la dernire colonne de linverse de la matrice dobservabilit Q (A.16).


v(k + 1) = v v(k) + v u(k)
y(k) =

c T R v(k) =

1 0 0 v(k)

Ainsi:

cv

avec:

v = R 1 R =

a1

0 0

a2

1 % #

# % % 0
an 1 0 0 1
an 0 0 0

Les a i sont les coefficients du polynme caractristique du systme


observer.

106

ESTIMATION

Plutt que de construire un observateur des variables dtat physiques du


systme, un observateur de ltat artificiel v est implant. Sa dynamique est rgie
par lquation aux diffrences suivante:
v (k + 1) = v v (k) + v u(k) + L' [ y(k) y (k) ]
Lerreur destimation de v est de ce fait rgie par:

T
v(k + 1) = v Lc v v(k)

L1

L1

# 10 0 = #
Ln
Ln

La dynamique de lerreur dpend donc des valeurs propres de:

v Lc v =

a1 L1

1 0 0 0

a2 L2

0 1 0 0

#
#
an 1 Ln 1 0
an Ln

# # ve
0 1

0 0 0

Cette matrice correspondant la forme canonique V, le polynme caractT


ristique de v Lc v scrit donc par analogie:
n + ( a 1 + L 1 ) n 1 + + ( a n + L n ) = 0

(6.1)

La relation entre les variables dtat v et x tant statique (transformation


linaire algbrique ou aux diffrences dordre zro), la dynamique de lerreur
destimation de v sera la mme que celle de x . Par consquent les valeurs propres
de ve et de e sont les mmes. Les matrices ve et e sont dites similaires.
Le polynme caractristique (6.1) peut alors tre identifi celui qui
impose la dynamique de lerreur destimation de x :
e() = n + 1 n 1 + 2 n 2 + + n = 0
107

SYNTHSE CONSTRUCTIVE

Les gains sont ainsi donns 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 dtat inverse est
effectue dans lquation de lobservateur:
v (k + 1) = v v (k) + v u(k) + L [ y(k) y (k) ]
R 1 x (k + 1) = v R 1 x (k) + v u(k) + L [ y(k) y (k) ]

R v R 1 x (k) + R v u(k) + RL [ y(k) y (k) ]


L

x (k + 1) =

Ainsi: L = RL
Seules des oprations numriques sont ncessaires pour obtenir les gains
de lobservateur selon cette mthodologie base sur la forme canonique V.
6.2.1

Formule dAckermann pour lobservateur

La procdure dcrite prcdemment pour dterminer le gain L de


lobservateur peut se rduire une seule relation, appele la formule dAckermann
pour lobservateur. Selon le paragraphe prcdent le gain peut en effet scrire:
1 a1
L = RL = R

2 a2

= R

2
#
n

a1
+R

a2
#
an

#
n an

R 1 n en
Les coefficients a i sont ceux du polynme caractristique du systme
observer () . Les i sont ceux du polynme caratristique e() de la matrice
e qui rgit lerreur destimation. Le terme sous laccolade est la premire colon108

ESTIMATION

ne de la matrice R 1 R (annexe A, relation A.19). Le deuxime membre de cette


quation se rsume par consquent un facteur n e n . Le vecteur de gain peut
donc tre obtenu selon:
1
L = n 1 e e Ie
n
n
n

2
#
n

+ n en

= 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 dernire colonne de linverse de la matrice
dobservabilit Q . Il peut donc sexprimer de la manire suivante:
1

cT

0
en = Q 1 # =
0
1

0
#
0
1

cT
#
cT n 1

Finalement:
c
L = e()

cT
#
cT n 1

0
#
0
1

Il sagit de la formule dAckermann pour lobservateur dtat. Elle


nexploite que des lments du modle du systme observer et ne fait plus
ressortir aucune matrice de transformation.
Dans MATLAB, la matrice dobservabilit est obtenue au moyen de la
commande Q = obsv( , c T ).
109

OBSERVATEUR RPONSE PILE

6.3

Observateur rponse pile


Soit le systme discret dcrit par:
x(k + 1) = x(k) + u(k)
y(k) = c T x(k)

et lobservateur associ:
x (k + 1) = x (k) + u(k) + L [ y(k) c T x (k) ]
Lquation qui
(k) = x (k) x(k) est:

rgit

la

dynamique

de

lerreur

(k + 1) = ( Lc T )(k)

destimation

(6.2)

Lestimation initiale est gnralement choisie nulle ( x (0) = 0 ), ainsi


(0) = x 0 .
Lobservateur est rponse pile si lerreur destimation est nulle aprs n
priodes dchantillonnage:
(n) = ( Lc T ) n (0) = 0
ainsi que pour les instants subsquents.
Si le polynme caractristique e() de lquation 6.2 est choisi gal n
( 1, 2 , n = 0 ), les gains de lobservateur du systme mis dans une forme
canonique dobservabilit sont L i = a i . Ainsi, la matrice qui dcrit la
dynamique de lerreur destimation du systme artificiel est:
a 1 L 1 1 0

0
a 2 L 2 0
#
= 0
v L c Tv =
#
#
#
1
0
a n L n 0 0

1 0
0
#
#
1
0 0

Il sagit dune matrice dite nilpotente dont la proprit est un dcalage


de la diagonale chaque multiplication par elle-mme.
110

ESTIMATION

Par exemple:
0
M nil = 0
0
0

1
0
0
0

0
1
0
0

0 0
0
0 ; M2 = 0 0
nil
0 0
1
0 0
0

1
0
0
0

0
0 0
1 ; M3 = 0 0
nil
0
0 0
0
0 0

0
0
0
0

1
0
0
0

4 = 0
et M nil

De faon gnrale, pour une matrice nilpotente de dimension n:


n = 0.
M nil

Ainsi:
(n) = ( Lc T ) n (0) = ( R v R 1 RLc Tv R 1 ) n (0)
= [ R ( v Lc Tv )R 1 ] n (0)
n

( R 1 ) n (0)

c.q.f.d.

= R n ( v Lc Tv )
0

Le choix de e() = n conduit donc effectivement lannulation de


lerreur destimation en n priodes dchantillonnage.

111

RSUM ESTIMATION SISO

6.4

Rsum Estimation SISO

6.4.1

Observateur
u(k)

x(k + 1) = x(k)
+ gu(k)

y(k)

x(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 systme est observable si: Rang(Q) = Rang

cT
#

= n

cT n 1
6.4.3

Gain de lobservateur
Dynamique de lerreur destimation impose par les valeurs propres:
i
i = 1, , n .
Polynme caractristique de ( Lc T ) :
e() = ( 1 ) ( n ) = 0
cT I
L = e()

cT
#
cT n 1

6.4.4

0
#
0
1

Observateur rponse pile

Choix e() = n . Pas de problmes de saturation. En effet, les


grandeurs en prsence sont des nombres et non des grandeurs physiques.
112

ESTIMATION

6.5

Structure complte de commande dtat

Pour raliser une contre-raction dtat, il est ncessaire de connatre ltat


du systme rgler. Lorsque la mesure des variables dtat est trop coteuse, voire
impossible, un observateur dtat doit tre introduit. La combinaison et les
interactions dynamiques de la contre-raction et de lobservateur doivent donc
tre tudies. Ces thmes sont traits dans cette section pour le cas gnral dun
systme SISO non linaire analogique. Le modle utilis pour la conception de la
commande numrique complte se prsente ainsi sous la forme dun modle
linaris et discrtis (zone grise de la figure 6-3).
u(k)
u (k)

y(k)
u(k)

u(t) Systme
A
rgler

y(t) A

y(k)

y (k)

x (k + 1) = x (k) + u (k) ; y (k) = Cx (k)


Saturation
K

x (k + 1) = x (k) + u (k)
+ L [ y (k) Cx (k) ]

Rgulateur
u (k) = Kx (k)

Observateur/estimateur

Figure 6-3 Commande dtat complte.

Lestimation de la sortie nest pas calcule explicitement dans


lobservateur, elle apparat nanmoins sous la forme de lexpression Cx (k) .
Si la commande issue du rgulateur est sature sous leffet de lactuateur
avant dtre applique sur le systme physique, la commande exploite par
lobservateur doit ltre galement. Pour cette raison, un bloc de saturation ayant
la mme caractristique statique que lactuateur doit tre insr dans la boucle de
contre-raction (en pointill dans la figure 6-3).

113

STRUCTURE COMPLTE DE COMMANDE DTAT

En omettant le signe tilde par souci de lisibilit, le systme complet reprsent prcdemment est dcrit par:
x (k + 1) = x (k) + u(k) + L [ y(k) C x (k) ]
x(k + 1) = x(k) + u(k)

Observateur

quation dtat du systme

u(k) = Kx (k)

Contre-raction dtat

y(k) = C x(k)

quation de sortie du systme

Llimination de u(k) qui nest ni une variable dtat, ni une entre et ni


une sortie du systme 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 derreur destimation (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 dtat du systme complet dcrit cidessus les grandeurs x(k) et (k) , le modle peut tre arrang sous forme
matricielle:

LC
0
K K

(k + 1) =
x(k + 1)

y(k) = 0 C (k)
x(k)
114

(k)
x(k)

ESTIMATION

Il sagit du modle dtat du systme complet qui est dordre 2 n . Sa


dynamique est donc rgie par les valeurs propres de la matrice t , cest--dire par
les zros de lquation caractristique:

0
det I 2n LC
= 0

det

I n + LC

I n + K

= 0

Dans ces dernires expressions, lindice des matrices carres identit I


indique leur dimension. Les rgles de calcul du dterminant dune matrice
subdivise en blocs donne:

e()

det [ K ] det [ 0 ] = 0

det [ I + K ]

det [ I + LC ]

c()

Ainsi, les valeurs propres du systme complet sont les zros de lquation
e() c() = 0 qui correspond au produit de lquation caractristique de
lestimateur avec celle de la contre-raction dtat. Par consquent, lensemble
des valeurs propres du systme complet regroupe les valeurs propres choisies pour
rgir lerreur destimation de ltat et celles choisies pour la contre-raction. En
dautres termes, les valeurs propres imposes au systme par la contre-raction ne
sont pas modifies par ladjonction dun observateur. Il ny a donc aucune
dgradation des performances dynamiques.
i estimateur

i contre-raction

i complet

Figure 6-4 Combinaison des valeurs propres.

Cette proprit dindpendance de la dynamique de lobservateur et de la


dynamique de la contre-raction dtat est connue sous le nom de principe de
sparation.
115

EXEMPLE DE SYNTHSE: BALANOIRE

6.6

Exemple de synthse: Balanoire

6.6.1

Balanoire

Le processus reprsent la figure 6-5 est constitu d'une bille en


mouvement sur une poutre dont l'inclinaison peut tre modifie par l'intermdiaire
d'un moteur lectrique.

y
mg
Figure 6-5 Schma de principe de la balanoire.

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 langle
d'inclinaison de la poutre par rapport au plan horizontal et L sa longueur.
6.6.2

Modlisation

En ngligeant la dynamique du moteur, cest--dire que lon considre une


commande applique directement sur langle: u(t) = (t) , la balanoire peut tre

dcrite par le modle non linaire 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

Dcoupleur

Le dcoupleur qui permet de linariser ce systme par contre-raction est


le modle inverse M 1 du systme original (Figure 6-6).
w(t)

u(t)

y(t)

Figure 6-6 Dcoupleur de la balanoire.


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)
w(t) est lentre du dcoupleur. Le modle inverse statique M
pas dans ce cas particulier de mesure de ltat est donc:

qui ne ncessite

w(t)
u(t) = asin --------rb
Le modle du systme quivalent est y(t) = w(t) (Fig. 6-7). Ce systme a
les mmes tats que le systme original. Lavantage est que le modle quivalent
est linaire. Il est ainsi possible deffectuer sa discrtisation et la conception dun
observateur des deux tats y(t) et y(t) .
w(t)

1s

y(t)

Figure 6-7 Systme quivalent.

Pour garantir la linarisation, il faut limiter la commande w(t) par une


saturation w(t) rb .
6.6.4

Discrtisation

Le nouveau modle dtat quivalent exploiter pour la synthse de


lobservateur et de la commande est donc:
x 1(t) = x 2(t)
x 2(t) = w(t)
y(t) = x 1(t)
Le modle discret de ce double intgrateur a dj t obtenu dans
lexemple 4.2.4. Il est sagit 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 SYNTHSE: BALANOIRE

6.6.5

Observateur rponse pile

Lobservateur rponse pile pour le double intgrateur discret a galement


dj t obtenu dans lexemple 6.1.3 avec e() = 2 .
T
L = e() c
cT

6.6.6

0 = 2 1 0
1
1h

0 =
2
1
1h

Commande par placement des valeurs propres

Une commande dtat pour le double intgrateur discret a fait lobjet de


lexemple 5.3.1 avec c() = 2 1.6 + 0.7 = 0 .
K = 0 1 g g

6.6.7

0.1 0.35
------- ---------2
h
h

c() =

Implantation
Le schma dimplantation complet est donn la figure 6-8.
Systme quivalent

w(k)

(k)
asin w
---------rb

u(k)

(t)

Balanoire

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 complte de la balanoire avec dcoupleur, observateur et


commande dtat.

Ltat observ correspond la position et la vitesse angulaire de la bille,

soit x 1(k) = y (k) = r ) et x 2(k) = y (k) = r . Il sagit dune commande en

acclration w(k) = (k) .


118

ESTIMATION

6.7

Exercices

6.7.1

Observateur dtat de lentranement

Soit la version discrtise du modle dun entranement lectrique


labore au paragraphe 4.1.13:
0.0003
0.0235

x(k) +

1 0

u(k)

x(k)

y(k) =

1 0.0235
0 0.8825

x(k + 1) =

cT
Vrifier ce modle discret laide de la commande adquate de Matlab.
La priode dchantillonnage est de 25 ms.
Dterminer le gain dun observateur dtat, en spcifiant toutes les
valeurs propres associes au centre du cercle unit.
Dterminer en boucle ouverte la rponse de lentranement et celle de
lobservateur au moyen de Simulink (choisir des conditions initiales
diffrentes pour ces deux lments).
Choisir une dynamique pour concevoir une contre-raction dtat et
dterminer le gain K correspondant.
Simuler le systme complet dans Simulink (observateur et rgulateur).
6.7.2

Observabilit
Le modle dtat discret dun systme dynamique est le suivant:
x(k + 1) = 1 0 x(k) + 1 u(k)
1 0
0
y(k) = 1 x(k)
Dterminer toutes les valeurs de pour lesquels le systme nest pas
observable.
Expliquer ce qui se passe dans les diffrents cas o lobservabilit est
perdue. Si ncessaire, reprsenter graphiquement les couplages
dynamiques internes au systme pour soutenir largumentation.
119

SOLUTIONS DES EXERCICES

6.8

Solutions des exercices

6.8.1

Observateur dtat de lentranement


Soit:
A = 0 1 , B = 0 et c T = 1 0 , avec: a = 5 et b = 1
0 a
b

Le modle discret correspondant sobtient dans Matlab au moyen de la


commande [phi,Gamma]=c2d(A,B,h).
La dynamique impose pour lobservateur est:
e() = ( 0 ) ( 0 ) =

Le gain de lobservateur est obtenu au moyen de la formule dAckermann:


T

L = e() c
cT

0 , avec () = 2
e
1

Il vient:
L =

1.883
33.14

Pour simuler lobservateur au moyen de Simulink, son modle doit tre


arrang sous forme dun modle dtat 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 entres de lobservateur sont lentre et la sortie du systme
observer.
Le schma de simulation est donn ci-dessous.
120

ESTIMATION

A =
C = I
x(0) =

B =
D = 0 0

5 0

K = cT

u(k)

y(k)

x(k)

x (k)

A = Lc
C = I
x (0) =

B = L

D = 0 0
0 0

0 0

Les rponses sont reportes dans la figure qui suit. On constate que les
estimations de ltat atteignent les valeurs relles de ltat aprs deux priodes
dchantillonnage.
10

180

160

8
7

140

* Position estime

120
6
100

* Vitesse estime

5
80
4
60
3
40

20

1
0
0

0.05

0.1

0.15

0.2

0.25

0
0

0.05

0.1

0.15

0.2

0.25

La commande est choisie pour imposer en boucle ferme les valeurs


propres suivantes:
1, 2 = 0.8 0.25j
Le gain de contre-raction correspondant est obtenu par la formule
dAckermann, dont la commande Matlab est:
121

K = acker(, , 1 2 ) =

174.5 9.794

Le schma de simulation du systme complet (observateur et contreraction) est donn ci-dessous. Les dfinitions de blocs sont les mmes que
prcdemment.

Les rponses relles (traits continus) et leur estimation durant le rglage


(*) sont reprsentes ci-dessous. La position initial est de 5 rad et la vitesse initiale
est nulle. Le rgulateur ramne ces deux grandeurs zro.
10

200

150

100

50

-50

-2

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

-100

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

ESTIMATION

6.8.2

Observabilit
La matrice dobservabilit est:

Q =

cT

cT

1
1 0

Le rang de la matrice Q nest pas plein si le dterminant est nul:


( 1) = 0
Le systme nest pas gouvernable pour = 0 et = 1 .
Pour = 0 , x 2 ninfluence pas la sortie. Cet tat nest donc pas
observable.
Pour = 1 , les CIs de x 1 et x 2 ne peuvent pas tre diffrencies.
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)
, cest--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)

x 1(k)

x 2(k + 1)
123

x 2(k)

y(k)

SOLUTIONS DES EXERCICES

En utilisant la forme canonique de gouvernabilit:


x(k + 1) =

a1 a2
x(k) + 1 u(k)
0
1 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 mentionns, il y a une annulation plezro.
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 dtat standard

Dans le cas des systmes ne possdant quune entre, la structure de


commande illustre la figure 7-1 est gnralement exploite.
Systme
rgler

u: scalaire

Figure 7-1 Structure de commande dtat standard.

La synthse du rgulateur est aisment ralisable en exploitant une


technique de placement des valeurs propres. Dans cette situation, la difficult de
conception rside dans le choix de lemplacement des valeurs propres en boucle
ferme. Ce choix nest pas trivial. Pour obtenir une rponse rapide, la spcification
dune rponse pile peut tre considre, nanmoins cela conduit gnralement
des amplitudes de commande que les amplificateurs ne peuvent pas fournir. En
fait, la technique de placement des valeurs propres ne donne quun contrle
explicite sur la stabilit, les transitoires sur les signaux ne sont matriss
quindirectement. De plus, dans le cas MIMO, la formule dAckermann nest plus
exploitable et lutilisation dune identification termes termes des coefficients du
polynme caractristique est la seule solution possible. Cette approche, plus
complexe et ncessitant des dveloppements analytiques, prsente en plus des
degrs de libert additionnels dont la mise en valeur judicieuse nest pas
immdiate, comme lillustre lexemple du paragraphe qui suit.
125

COMMANDE OPTIMALE

7.1.2

Exemple: Cuve de mlange

Soit la cuve de mlange dcrite au paragraphe 3.3.5 et dont le modle


discret a t labor au paragraphe 4.1.14. Il sagit dun systme MIMO avec deux
entres et deux tats. La forme de la contre-raction est donc la suivante:
x
k
= K 1 = 1
u 2
x 2
k3

u 1

k2

x 1

k4

x 2
2

Si le polynme caractristique c() = est choisit en boucle ferme,


les gains de contre-raction sont obtenus en identifiant les deux membres de
lquation det ( I + K ) = c() .
En dveloppant, il vient:

k
det 0 0 + r r 1
0
0
s v k3

det

k 2
2
=
k 4

+ r ( k1 + k3 )

r ( k2 + k4 )

sk 1 + vk 3

+ sk 2 + vk 4

Pour lever lindtermination due la prsence 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 possibilits sont maintenant tudies. Il
sagit 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 premire commande est manipule, tandis
que la seconde reste sa valeur nominale. Nous avons alors:
2

+ ( rk 1 + sk 2 ) + ( rk 1 sk 2 ) =

Lidentification fournit un systme de deux quations linaires dont la


solution unique est la suivante:
2

k 1 = -------------------- = 25 et k 2 = -------------------- = 97
r( )
s( )

126

COMMANDE OPTIMALE

Pour k 1 = k 2 = 0 , seule la seconde commande est manipule, tandis que


la premire reste sa valeur nominale. Nous avons alors:
2

+ ( rk 3 + vk 4 ) + ( rk 3 vk 4 ) =

Lidentification fournit un systme de deux quations linaires dont la


solution unique est la suivante:
2

k 3 = -------------------- = 25 et k 4 = -------------------- = 32.35


r( )
v( )
Pour k 2 = k 3 = 0 , la premire commande ne dpend que des carts sur
la premire variable dtat, et la seconde commande ne dpend que des carts sur
la seconde variable dtat. Cest--dire quune vanne est choisie pour rgler le
volume et lautre pour rgler la concentration. Nous avons alors:
2

+ ( rk 1 + vk 4 ) + [ rk 1 vk 4 + k 1 k 4 r ( v s ) ] =

Le systme dquations est dans ce cas non linaire (produit k 1 k 4 ). Le


gain k 4 est solution de lquation du second degr:
0.9851
2
2
2
k 4 ( vs v ) + k 4 ( 2v 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 systmes MIMO, la difficult de
conception dune contre-raction dtat par placement des valeurs propres. Des
dveloppements analytiques sont ncessaires, ainsi que dans certains cas la rsolution de systmes dquations non linaires. De plus, une exploitation sense des
degrs de libert devient difficile pour des systmes dordre suprieur deux, ou
si le nombre dentres et dtats diffrent. La commande optimale ne prsente pas
ces dfauts grce lapproche de conception systmatique sur laquelle elle repose.
127

COMMANDE OPTIMALE

7.1.3

Principe de la commande optimale

Le principe de la commande optimale rside dans llaboration explicite


dune squence dchantillons de lentre u(0), u(1), , u(N 1) qui minimise
une fonction cot prdfinie sur un horizon doptimisation N , plutt que dans le
choix de lemplacement des valeurs propres.
Dans cette approche, le traitement des cas SISO et MIMO est similaire.
La fonction cot minimiser est la suivante:
1
J = --2

[ xT(k)Q1 x(k) + u T(k)Q2 u(k) ]


k=0

Les paramtres ajuster par le concepteur sont les matrices de


pondrations Q 1 et Q 2 qui permettent de raliser un compromis entre lefficacit
du rglage et la mise contribution des actuateurs. Ces matrices doivent tre
symtriques et dfinies non ngatives, cest--dire que x T Qx 0 . En gnral,
elles sont choisies diagonales, avec tous les lments positifs ou nuls. Les valeurs
respectives des lments de la diagonale de Q 1 permettent de pondrer
limportance des tats entre eux. Les valeurs respectives des lments de la
diagonale de Q 2 permettent de pondrer limportance des commandes entre elles.
Une valeur nulle revient ne pas prendre en compte le terme correspondant. Des
valeurs de signe oppos sont vites 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 pondre des x i2(k) et
de ramener ainsi ltat vers zro ou vers sa valeur nominale (si les variables cart
sont introduites dans la fonction cot). Le terme u T(k)Q 2 u(k) permet de limiter la
somme pondres des u i2(k) et dviter par ce biais des variations trop fortes de la
commande.
Les couples x(k), u(k) qui apparaissent dans la fonction cot doivent
tre compatibles avec la dynamique du systme rgler; la minimisation doit par
consquent prendre en compte la contrainte x(k + 1) = x(k) + u(k) .
La rapidit de la correction est ajuste au moyen de lhorizon
doptimisation. La squence cherche est telle que les chantillons u(N + i) sont
nuls pour i = 0, 1, . Cest--dire que le minimum doit tre atteint en
nexploitant pas la commande sur plus de N priodes dchantillonnage.
128

COMMANDE OPTIMALE

7.1.4

Rsum du problme doptimisation

Soit un tat initial x(0) = x 0 quelconque, des matrices Q 1 et Q 2 donnes


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 cot:
[ ]

k=0

x T(k)Q 1 x(k)

u T(k)Q 2 u(k)

1
J = --2

[ ]

nn n

rr r

sous la contrainte: x(k + 1) + x(k) + u(k) = 0 , o k = 0, 1, , N .

7.1.5

Solution du problme doptimisation

Pour trouver le minimum dune fonction, il faut annuler ses drives


partielles. Si il y a des contraintes dgalit, il faut utiliser la mthode des
multiplicateurs de Lagrange, cest--dire quil faut minimiser la fonction cot
tendue J' :
N

J =

1
1 T
--- 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 sagit de la combinaison de la fonction cot initiale J et de la contrainte


dgalit. Un multiplicateur de Lagrange (k + 1) est introduit pour chaque valeur
de k (vecteur de n lments). Ladjonction de ces Nn inconnues est le prix payer
pour la simplification de la rsolution du problme.

129

COMMANDE OPTIMALE

7.1.6

Rsum du problme doptimisation tendu sans contrainte

Soit des matrices Q 1 et Q 2 donnes, 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 cot J'
(sans contrainte).

Dans le processus de minimisation, les tats sont obtenus au moyen du


modle et partir de la condition initiale x(0) = x 0 (figure 7-2)..
x(k)
Inconnus
Connu

N1

Figure 7-2 Etats inconnus dterminer par minimisation.

Les commandes sont labores de faon satisfaire la condition finale


u(N) = 0 (figure 7-3).
u(k)
Inconnues
Impose
0

N1

Figure 7-3 Commandes inconnues dterminer par minimisation.

130

COMMANDE OPTIMALE

7.1.7

Solution du problme doptimisation tendu sans contrainte

Lannulation des drives partielles des commandes fournit, pour toutes


les valeurs de k :
J
--------------u 1(k)

T
J
= ------------ = Q 2 u(k) + (k + 1) = 0
#
u(k)
J
------------- u r( k )

(7.1)

Ainsi, pour k = N , la condition finale additionnelle suivante est obtenue:


T

Q 2 u(N) + (N + 1) = 0 , do:
0
(N + 1 ) = 0

(7.2)

Lannulation des drives partielles des multiplicateurs fournit, pour


toutes les valeurs de k :
J
------------------------ 1(k + 1)

J
= ---------------------- = x(k + 1) + x(k) + u(k) = 0
#
(k + 1)
J
------------------------ n(k + 1)

(7.3)

Cette expression nest rien dautre que la contrainte qui rapparat grce
la formulation de Lagrange du problme doptimisation.
Lobtention des drives partielles par rapport ltat ncessite la prise en
considration de deux termes conscutifs de la somme J o x(k) apparat.
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)

T
J
= ------------ = (k) + Q 1 x(k) + (k + 1) = 0
#
x(k)
J
--------------x n(k)

(7.4)

Pour k = N et en exploitant les relations (7.2) et (7.4), la condition finale


additionnelle suivante est obtenue:
T

(N + 1)

(N) + Q 1 x(N) +

= 0 , do:

0
(N) = Q 1 x(N)

(7.5)

La rsolution du systme constitu par les quations (7.1), (7.3) et (7.4)


nest pas triviale. Il faut en effet valuer progressivement lquation dtat (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 sobtient au
moyen de la relation (7.1):
1 T

u(k) = Q 2 (k + 1)
Cette valuation ncessite la connaissance du multiplicateur (k + 1) , qui
lui, est dtermin dgressivement 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 sagit dun problme imbriqu puisquil faudrait connatre ltat pour
dterminer les multiplicateurs et les multiplicateurs pour connatre ltat. Cest
Riccati qui a trouv une solution ce problme en introduisant une variable
auxiliaire sous la forme dune matrice carre symtrique 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 apparat que:

(N)

= S(N)x(N) , do:

Q 1 x(N)
(7.7)

S(N) = Q 1

La matrice S(k) est utilise 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 sagit dune quation de Riccati discrte dans laquelle napparat que la
variable S(k) . Cette quation peut se rsoudre en arrire partir de la valeur finale
S(N) = Q 1 . Une fois la matrice S(k) dtermine pour chaque instant
dchantillonnage, la factorisation suivante peut tre mise en vidence partir des
quations (7.1) et (7.6):
(k + 1)

Q 2 u(k) = T

S(k + 1)x(k + 1)
x(k + 1)

Q 2 u(k) = T S(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 cherche est donc fournie par la relation:
u(k) = K(k)x(k)
r = rn n

Sans navoir rien spcifi sur la structure de la contre-raction, il apparat


que les commandes de la squence optimale sont proportionnelles ltat, tout
comme le sont celles introduites dans le contexte du placement des valeurs
133

COMMANDE OPTIMALE

propres. Nanmoins, le gain est ici non stationnaire. La structure dune commande
dtat gnrale est donc celle reprsente la figure 7-4.
Systme
rgler

u(k): vecteur

K(k)

Figure 7-4 Structure dune commande dtat gnrale.

7.1.8

Algorithme dlaboration dune commande optimale

Pour favoriser la dtermination du gain K(k) , deux variables


intermdiaires R(k) et M(k) sont introduites. La solution de lquation de Riccati
tant indpendante de ltat initial x(0) , elle peut tre dtermine a priori et le gain
stock en mmoire en vue dune implantation ultrieure de la commande si
lhorizon N est constant. En relevant que comme u(N) = 0 et que x(N) 0 , le
gain K(N) doit tre nul, les tapes dlaboration de la solution suivantes peuvent
tre proposes:
Poser comme conditions finales S(N) = Q 1 et K(N) = 0 ;
Commencer avec k = N ;
Dterminer R(k) = Q 2 + T S(k) et son inverse;
Dterminer M(k) = S(k) S(k)R 1(k) T S(k) ;
Dterminer 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 linaire quadratique (LQR)

Comme solution dun problme de minimisation, S(k) converge vers une


valeur stationnaire lorsque k diminue.
Cas SISO
S(k)
S = cte
Q1

K = cte: Gain optimal


det [ I + K ] = 0
valeurs propres optimales!

Comme la plupart des systmes fonctionnent continuellement, N et


le rgime transitoire est ngligeable.
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 dfinie positive.
La commande Matlab qui fournit ces valeurs optimales stationnaires est:
[ K , S , E ] = dlqr ( , , Q 1, Q 2 )

135

RSUM DE LA COMMANDE OPTIMALE STATIONNAIRE

7.2

Rsum de la commande optimale stationnaire


Trouver la squence de commande u(k) qui minimise la fonction cot:
N

x T(k)Q 1 x (k) +

k = 0 Somme

u T(k)Q 2 u (k)

1
J = --2

Somme quadratique
des carts par
rapport la
commande
nominale

quadratique des
carts par
rapport ltat
nominal

Q 1 et Q 2
nn rr

matrices de pondration diagonales, avec lments


positifs ou nuls.

Solution par la mthode de Lagrange de la forme:


u(k) = K(k)x(k)
Solution stationnaire pour un horizon doptimisation 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 mthode optimale est plus douce pour
les actuateurs que celle obtenue par un placement des valeurs propres. La
limitation de la sollicitation des actuateurs est nanmoins obtenue au dtriment
dun contrle explicite des amortissements absolus et relatifs. La suppression
ventuelle doscillations par un placement judicieux des valeurs propres nest
galement plus possible, ce qui nest pas acceptable dans des applications en
machines-outils par exemple.

136

COMMANDE OPTIMALE

7.3

Exemples

7.3.1

changeur de chaleur

Soit lchangeur de chaleur introduit dans lexercice 3.6.1 et le modle


dtat analogique linaris obtenu. Le modle dtat discret peut tre dtermin
numriquement au moyen de la fonction c2d de Matlab. Pour une priode
dchantillonnage 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 rgle tant la variable x 1 , les matrices de
pondration suivantes sont choisies:
Q 1 = 50 0 et Q 2 = 1
0 0
Le schma fonctionnel pour limplantation de la commande est reprsent
la figure 7-5.
u(k)

u
+

x 2(t)

x 2(k)

u (k)
+

u(t) Echangeur
D
D
(
t
)
x
de chaleur 1
A
A

x 1(k)
x 2

3.16

x 1

2.02

+ x = x
1
2

Figure 7-5 Structure de la commande optimale de lchangeur.

137

EXEMPLES

Le fichier de commandes Matlab pour obtenir la fois un gain volutif et


un gain stationnaire est le suivant:
clear
% Modle analogique
% ----------------A=[-2 2; 0.5 -0.75];
B=[0;0.5];
C=[1 0;0 1];
D=[0;0];
% Modle 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

% Ks = [2.0205 3.1559]
% E = val. propres = 0.53330.1951i

Lvolution des gains optimaux est reprsente la figure 7-6.


3.5

k 2(k)

2.5

k 1(k)

1.5

0.5

0
0

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 utilises pour gnrer les rponses donnes aux
figures 7-7 et 7-8.
2

1.5

x 1(kh)

0.5

x 2(kh)
-0.5

0.5

1.5

2.5

3.5

4.5

Figure 7-7 Evolutions des tats en fonction du temps exprim en secondes.


1
0

u (kh)

-1
-2
-3
-4
-5
-6
-7
-8

0.5

1.5

2.5

3.5

4.5

Figure 7-8 Evolution de la commande en fonction du temps exprim en secondes.

139

EXEMPLES

7.3.2

Cuve de mlange

La commande optimale stationnaire (LQR) pour la cuve de mlange


introduite au paragraphe 3.6.2 est dtermine 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;
% Modle linaris 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];
% Modle linaris discrtis
% --------------------------h=2;
% Priode dchantillonnage 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 lefficacit de la commande dans un domaine de variations linaires
autour du point de fonctionnement.
Pour reflter le fait que les deux tats sont de mme ordre de grandeur, la
matrice de pondration 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 entre:


Q 2 = 10 0
0 100
Les rsultats de simulation sont donns aux figures 7-9 et 7-10.
0
-0.01

x 2

-0.02

x 1

-0.03

0.2 0.092
0.03 0.067

K =

-0.04
-0.05
-0.06
-0.07
-0.08
-0.09
-0.1

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

u 2
u 1

-5

-10

-15

-20

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 u 1(0) = 0.02 et u 2(0) = 0.003 .


141

RAPPELS MATHMATIQUES

7.4

Rappels mathmatiques
Soit A une matrice relle, symtrique ( a ij = a ji ), de dimensions n n .
Soit x et y des vecteurs rels, de dimension n.

7.4.1

Forme quadratique relle


n

x T Ax =

aij xi xj
i = 1j = 1

Cette forme est un scalaire.

A est dfinie positive si:


x T Ax > 0

pour x 0

x T Ax = 0 pour x = 0

Les valeurs propres dune matrice relle symtrique sont relles.


Si A est dfinie positive, ses valeurs propres sont positives (relles)
et A est rgulire.

7.4.2

Drive dune forme quadratique relle

x1 T
T
T
x Ax
x Ax = 2Ax = ( 2x T A ) =
x

x2
Cette forme est un vecteur colonne.

Rappel: ( AB ) T = B T A T
142

COMMANDE OPTIMALE

7.4.3

Forme bilinaire
n

x T Ay =

aij xi yj
i = 1j = 1

Cette forme est un scalaire.

7.4.4

Drive dune forme bilinaire


T
x Ay = Ay
x
Cette forme est un vecteur colonne.

De mme:
T
T
y Ax = A y
x

Comme A est symtrique, A

= A.

143

EXERCICES

7.5

Exercices

7.5.1

Retard pur
Soit le retard pur discret dcrit par lquation aux diffrences suivante:
y(k + 2) = u(k) .

Dterminer un rgulateur optimal stationnaire pour commander ce systme en utilisant des matrices identit comme pondrations Q 1 et Q 2 .
Commenter le rsultat et comparer avec un rgulateur rponse pile.
7.5.2

Entranement optimal
Rglage optimal de vitesse autour dun point de fonctionnement.
La dynamique dun entranement dont on mesure la vitesse est donne par:

(t) = a(t) + bu(t)


y(t) = (t)
Le modle dtat discret quivalent est: (avec x = )
x(k + 1) = x(k) + u(k)
y(k) = x(k)
b
o = e ah et = --- ( 1 ) .
a
Dcrire ce systme par un modle dtat valable autour du point de
fonctionnement: x = c (c: consigne de vitesse).
Esquisser la structure de rglage et dimposition du point de
fonctionnement.
Dterminer le gain de contre-raction dtat 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 synthse de la commande optimale pour lenceinte de
chauffage dcrite la Section 5.7.
144

COMMANDE OPTIMALE

7.6

Solutions des exercices

7.6.1

Retard pur
Soit lquation y(k + 2) = u(k) .
Le choix des variables dtat 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)
0 1 x(k) + 0 u(k) , Ainsi:
0 0
1

Le modle dtat est: x(k + 1) =

S =

0 1 , =
0 0
s1 s

0 ,Q =
1
1

1 0 , Q = q = 1 et
2
2
0 1

s s2

, R = Q2 + S = 1 + 0 1

s1 s
s s2

0
1

= 1 + s2

T
1 T
S est solution de S = S S R S + Q 1

s1 s
s s2

do:

S =

s1 s 0
s1 s
0 1

s s2 1
s s2
s s
0 0 1
---------------------------------------------------------- 0 1 + 1 0
1 + s2
0 0
0 1
1 0 s s2

0 0
1 0

2
s2 s
s
s 1 -------------- s -------------1 + s2
1 + s2
2
s2

s2 s
s -------------- s 2 -------------1 + s2
1 + s2

1 0 et K =

0 2

0 1 + 1 0
0 0
0 1

1
=

0
2

s
0 1 + s 1 -------------1 + s2

0 0

Pour un retard pur de deux priodes dchantillonnage, il suffit dattendre


deux priodes dchantillonnage pour que lentre apparasse la sortie. Nous
sommes donc en prsence dune rponse pile, mme sans rtroaction ( K = 0 )!
145

SOLUTIONS DES EXERCICES

7.6.2

Entranement optimal

Point de fonctionnement
x(k + 1) = x(k) + u(k)
c = c + u
1
u = --- ( 1 )c

Schma fonctionnel
u

+ u(k)

x(t) = y(t)

Entranement

grandeur
rgler

u (k)

A
D

rgulateur dtat
x (k)

x(k)
c
-

consigne

1
--- ( 1 )

commande a priori

Rglage optimal
Systme rgler:
x (k + 1) = x (k) + u (k) et y (k) = x (k)

Gouvernabilit

Le systme est dordre 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 dernire quation scrit:
s2 2 + s ( Q2 Q2 2 Q1 2 ) Q1 Q2 = 0
Cest la solution positive de cette quation du second degr qui permet de
1
calculer le gain K = --- s = 5.35 .
r

M-file

clear
% Modle analogique de l'entranement
% ----------------------------------a=-5;
b=1;
% Modle discret de l'entranement
% -------------------------------h=25e-3;
F=exp(a*h);
G=b*(F-1)/a;
% Rgulateur optimal
% -----------------Q1=100;
Q2=1;
% Solution numrique 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

x
u

-2

-4

-6

-8

-10

-12

0.2

0.4

0.6

0.8

148

1.2

1.4

1.6

1.8

COMMANDE OPTIMALE

7.6.3

Enceinte de chauffage optimale


Commande optimale avec intgrateur (synthse LQR)
Q1 =

q 11 0
0 q 12

, diagonale et symtrique

Q2 = q2
S = S =

s1 s
s s2

, symtrique et dfinie positive


T

R = R = Q2 + * S * = q2 + s1
1 T
T
S = * [ S S * R * S ] * + Q 1

Solution numrique avec Matlab


ou
Solution symbolique avec Mathematica (inconnues: s, s 1, s 2 )
2 2
2

s 1 ss 1

s s

q
s1 s
0
2 2 2 0

1
1

=
+ 11
ss 1 s
0 1 s s 2 ---------------------------------- 1 1
s s2
0 q 12

2
q2 + s1

s1 q2
sq 2
1

1
0 + q 11 0
= --------------------2
2
2 2
0 q 12
q 2 + s 1 0 1 sq 2 s 2 q 2 + s 1 s 2 s 1 1
Une identification termes termes est ncessaire.

149

Annexe A
FORMES

CANONIQUES

A.1 Forme canonique de gouvernabilit (W)


A.1.1 Modle dtat dun systme SISO reprsent par une fonction de
transfert
Comme dtermin au paragraphe 2.5, la fonction de transfert discrte:
b 0 + b 1 z 1 + b 2 z 2 + + b n z n
Y(z)
H(z) = ---------- = ---------------------------------------------------------------------------U(z)
1 + a 1 z 1 + a 2 z 2 + + a n z n

(A.1)

peux tre rprsente par un modle dtat qui fait intervenir des variables dtat
artificielles w:
a1 a2 an 1 an
0
#
0
1

0
#
0
0

w(k) +

%
%
0
w

gw

u(k)

(A.2)

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)

y(k) =

0
1
%

w(k + 1) =

1
0
#
0

1
0
0
#
0

c wT
Il est trivial de montrer que lquation caractristique 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 ples de la fonction de


transfert H(z) .
A.1.2 Fonction de transfert dun systme SISO reprsent par un
modle dtat
Soit le modle dtat dun systme SISO discret:
x(k + 1) = x(k) + gu(k)
T

y(k) = c x(k) + du(k)


Nous allons effectuer un changement de variables dtat pour trouver,
comme reprsentation, la forme canonique de gouvernabilit (W). La fonction
de transfert correspondante sobtient ensuite immdiatement grce aux rsultats
du paragraphe A.1.1.
La reprsentation dtat ntant pas unique, nimporte quelle application
linaire bijective peut tre choisie pour passer du vecteur dtat x un nouveau
vecteur dtat w, par exemple w = Px . La matrice P , de dimension n n , doit
tre rgulire (inversible), pour que la transformation inverse x = P 1 w soit
possible. Le nouveau modle dtat, exprim par rapport la variable dtat
artificielle w, est alors:
w(k + 1) = PP 1 w(k) + Pgu(k)
T

y(k) = c P 1 w(k) + du(k)


Lobjectif est maintenant de trouver une matrice P rgulire, telle que le
modle dtat se prsente sous la forme canonique souhaite.
Choisissons tout dabord une matrice particulire G :
g

G = [ Ig

n 1g]

(A.4)

construite partir des lments du modle dtat original. Cette matrice porte le
nom de matrice de gouvernabilit ou de commandabilit. Cette dnomination sera
justifie plus loin. Les lignes de linverse de la matrice G peuvent tre repres
arbitrairement de la manire suivante:

G 1 =

e 1T
#
e nT
152

FORMES CANONIQUES

Par dfinition de linverse dune matrice, nous avons: I = G 1 G , cest-dire:


1
0
#
0

0
1
%

%
%
0

0
# =
0
1

e 1T Ig

e 1T g e 1T n 1 g

e 2T Ig

e 2T g e 2T n 1 g

#
e nT Ig

e nT g e nT n 1 g

En identifiant la dernire 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

linairement

indpendants. En effet, supposons lexistence 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 linairement
indpendants. Ils peuvent donc tre utiliss pour construire la matrice P, qui sera
rgulire.
153

FORME CANONIQUE DE GOUVERNABILIT (W)

e nT n 1
P =

e nT n 2
#
e nT I

Par consquent, la matrice Pg qui entre dans le nouveau modle dtat est:
e nT n 1 g
Pg =

e nT n 2 g
#
e nT Ig

Une simple inspection montre quil sagit en fait de la transpose de la


dernire ligne de la matrice G 1 G . Ainsi:
1
Pg = 0
#
0
Quant au produit PP 1 , galement prsent dans la nouvelle quation
dtat, il peut sexprimer sous la forme suivante:
e nT n P 1
P ( P 1 ) =

e nT n 1 P 1

(A.8)

#
e nT P 1
La premire 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 sobtiennent par comparaison, sachant que PP 1 = I :


e nT n 1 P 1

1
0
= #
0
0

e nT n 2 P 1
PP 1 =

#
e nT P 1
e nT IP

0
1
#
0
0

00
00
# #
10
01

Ainsi:
a1 a2 an 1 an
PP 1 =

1
0
#
0

0
1
%

%
%
0

0
#
0
1

0
#
0
0

Finalement, le modle dtat exprim en fonction de w par la


transformation se prsente sous une forme similaire la forme canonique de
gouvernabilit (W):
a1 a2 an 1 an

%
%
0

0
#
0
1

0
#
0
0

PP

u(k)

(A.9)

Pg = g w

= w

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)

y(k) =

w(k) +

0
1
%

w(k + 1) =

1
0
#
0

1
0
0
#
0

c T P 1 = cw
Le facteur c T P 1 doit quant lui tre calcul de cas en cas.
1

Les coefficients du polynme caractristique de PP sont les mmes


que ceux du polynme caractristique de la matrice et que ceux du
155

FORME CANONIQUE DE GOUVERNABILIT (W)

dnominateur de H(z) . Les valeurs propres et les ples constituent en effet une
caractristique intrinsque un systme, en relation avec sa stabilit, et doivent
donc tre indpendants de la forme de reprsentation.
A.1.3 Exemple: Double intgrateur
Soit la fonction de transfert discrte du double intgrateur obtenue au
paragraphe 4.2.4.
h2
h 2 1 h 2 2
h2
---------- z + ----- z
z
+
2
2
2
2
h2 ( z + 1 )
- = --------------------------------H(z) = ----- ------------------2 = ------------------------2 (z 1)
1 2z 1 + z 2
z 2 2z + 1
h2
---b0 = 0 ; b1 = b2 = - ; a1 = 2 ; a2 = 1
2
Les rsultats du paragraphe A.1.1 permettent de construire directement
une reprsentation dtat qui ne possde toutefois aucune signification physique.
w(k + 1) =

y(k) =

h2
----2

2
1

1 w(k) +
0

1 u(k)
0

h2
----- w(k)
2

La reprsentation dtat, quivalente mais possdant un sens physique,


galement t obtenue au paragraphe 4.2.4.
h x(k) + h 2 2 u(k)
1
h

x(k + 1) =

1
0

y(k) =

0 x(k)

Les rsultats 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
dnominateur de H(z) sont les coefficients du polynme caractristique de ,
soit:
det ( I ) =

1 h
0 1
156

= 0

FORMES CANONIQUES

2 2 + 1 = z + a 1 z + a 2 = 0
Relevons que la transformation entreprise ne ncessite pas le calcul des racines de ce polynme.
Les coefficients b 1 et b 2 du numrateur de la fonction de transfert sont tirs de lquation de sortie: y(k) = c T P 1 w(k) .
h 2 2 3h 2 2
h
h

G = g g =

1
G 1 = ----3h

P =

e nT
e nT

h
h
1
= ----3h

1
3h 2 2 e T = ---n
3
2
h
h 2
h

h2 2

h2 2

(A.11)

h h2 2

2
2
1
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 DOBSERVABILIT (V)

A.2 Forme canonique dobservabilit (V)


A.2.1 Modle dtat dun systme SISO reprsent par une fonction de
transfert
Le systme dcrit par la fonction de transfert discrte (A.1):
b 0 + b 1 z 1 + + b n z n
Y(z)
H(z) = ---------- = -------------------------------------------------------U(z)
1 + a1 z 1 + + an z n
peut tre dcrit par le modle dtat suivant:
a1

0 0

a2

1 % #

#
an 1

# % % 0
0 0 1

an

0 0 0

v(k) + g v u(k)

(A.12)

v(k + 1) =

v
b1 a1 b0
b2 a2 b0
avec:

gv =

#
bn 1 an 1 b0
bn an b0
1

0 0

y(k) =

v(k) + b 0 u(k)

(A.13)

cv

Il sagit de la forme canonique dobservabilit (V). Pour dmontrer cette


reprsentation rebours, il suffit de prendre la transforme en z des quations
(A.12) et (A.13), puis de faire disparatre les variables dtat. Une approche
similaire celle prise au paragraphe 2.5 peut galement tre adopte pour
effectuer sa construction. Lquation (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 imbrique:
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)


1

(A.14)

+ z [ b 3 U(z) a 3 Y(z) + z ( ) ] } )
Cette quation suggre, par soucis de simplicit de reprsentation
mathmatique, le choix suivant des variables dtat 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 dtat 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 DOBSERVABILIT (V)

A.2.2 Fonction de transfert dun systme SISO reprsent par un


modle dtat
Soit le modle dtat dun systme SISO discret:
x(k + 1) = x(k) + gu(k)
T

y(k) = c x(k) + du(k)


Nous allons effectuer un changement de variables dtat pour trouver,
comme reprsentation, la forme canonique dobservabilit (V). La fonction de
transfert correspondante sobtient ensuite immdiatement grce aux rsultats du
paragraphe A.2.1.
La reprsentation dtat ntant pas unique, nimporte quelle application
linaire bijective peut tre choisie pour passer du vecteur dtat x un nouveau
vecteur dtat v , par exemple x = Rv . La matrice R , de dimension n n , doit
tre rgulire (inversible), pour que la transformation inverse v = R 1 x soit
possible. Le nouveau modle dtat, exprim par rapport la variable dtat
artificielle v, est alors:
1

v(k + 1) = R Rv(k) + R gu(k)


T

y(k) = c Rv(k) + du(k)


Lobjectif est maintenant de trouver une matrice R rgulire, telle que le
modle dtat se prsente sous la forme canonique souhaite.
Choisissons tout dabord une matrice particulire Q :
T

c I
Q =

c
#

(A.16)

c n 1
construite partir des lments du modle dtat original. Cette matrice porte le
nom de matrice dobservabilit. Cette dnomination sera justifie plus loin. Les
colonnes de linverse de la matrice Q peuvent tre repres arbitrairement de la
manire suivante:
Q 1 = e 1 e 2 e n
160

FORMES CANONIQUES

La dernire colonne de cette matrice est utilise pour construire la matrice


rgulire R (la dmonstration de sa rgularit est similaire celle labore pour
montrer la rgularit de P au paragraphe A.1.2):
R = n 1 en

e n

Ie n

Par cette transformation, le produit c R prsent dans la nouvelle quation de


sortie se prsente sous la forme:
T

c R = c n 1 en

c e n

c Ie n

(A.17)

et comme par dfinition de linverse dune matrice I = QQ 1 , il vient:

1
0
#
0

0
1
%

%
%
0

0
# =
0
1

c Ie 2

c e 1

c e 2

c Ie 1

c Ie n

c e n

(A.18)

c n 1 e1 c n 1 e2 c n 1 en

alors la comparaison du vecteur (A.17) et de la dernire colonne transpose de


(A.18) conduit une quation de sortie similaire celle quexhibe la forme
canonique considre:
T

c R = 1 0 0 = cv

La reprsentation dtat complte obtenue par le changement de variable


x = Rv est donc similaire la forme canonique dobservabilit (V).
Le produit R 1 R , il scrit quant lui:
( R 1 )R = R 1 n 1 e n
R 1 R =

R 1 n e n

161

e n

Ie n

R 1 2 e n R 1 e n

(A.19)

FORME CANONIQUE DOBSERVABILIT (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:


0
0
1
R 1 n 1 e n = 0 , , R 1 e n = # , R 1 e n = #
1
0
#
0
1
0
Seul le terme R 1 n e n est inconnu et est pos arbitrairement:
a1
R 1 n en =

a2
#
an 1
an

Ainsi,

R 1 R =

a1

0 0

a2

1 % #

#
an 1

# % % 0
0 0 1

an

0 0 0

= v

Le facteur R g = g v doit quant lui tre dtermin de cas en cas.


Les coefficients du polynme caractristique de R 1 R sont les mmes
que ceux du polynme caractristique de et du dnominateur de H(z) :
det ( I v ) = n + a 1 n 1 + + a n 1 + a n = 0
162

Vous aimerez peut-être aussi