Sie sind auf Seite 1von 4

TP Espace d'tat Universit de Caen, M1 EEOA Ph. Dorlans, F.

Giri
TP n1 : Commande par retour d'tat ---------------------------------------------------------------------------------------------
4
COMMANDE PAR RETOUR D'ETAT
ETUDE ET MISE EN UVRE


I - INTRODUCTION

Ce TP a pour objectif d'illustrer les concepts de commande par retour d'tat appliqus aux systmes
linaires monovariables. Les principes et proprits d'une commande par retour d'tat sont tudis
en simulation dans l'environnement logiciel Matlab/Simulink.

La mthode employe est une mthode de placement de ples c'est--dire que les ples du systme
en boucle ferme sont convenablement placs dans le plan complexe en rpondant des
spcifications damortissement et de rapidit.


II - BUT DE LA MANIPULATION

On s'intresse donc la synthse d'une loi de commande numrique par retour d'tat permettant de
stabiliser un systme quelconque condition qu'il soit commandable et que son tat soit entirement
observable.
Le systme commander a pour fonction de transfert :
2
0 0
2
p 2 p
K
) p ( G
+ +
=

0
et reprsentent respectivement la pulsation propre et le coefficient d'amortissement du systme.

On peut montrer que la fonction de transfert du systme chantillonn bloqu correspondant G(p)
a pour expression :
( )
-1 -2
-1 1 2
-1 -2
1 2
b z b z
G z
1+a z +a z
+
=

Remarque : le systme, qui a t choisi, est du 2
nd
ordre principalement pour des raisons de simplicit de
calcul mais la mthodologie qui sera applique peut tre tendue tout systme qui possde la proprit
d'tre commandable et pour lequel l'ensemble des variables d'tat sont accessibles la mesure.


III - TRAVAIL PREPARATOIRE OBLIGATOIRE

1) Dterminer la reprsentation d'tat canonique de commandabilit (F, G, H, D) du systme
commander G(z
-1
). On appellera u(k), y(k) et x(k) respectivement la commande, la sortie et l'tat du
systme l'instant k.

2) On synthtise une loi de commande par retour d'tat sous la forme : u(k) Kx(k) = . A quelle
condition peut-on mettre en uvre une commande par retour d'tat ? Est-ce le cas pour le systme
considr ?

TP Espace d'tat Universit de Caen, M1 EEOA Ph. Dorlans, F. Giri
TP n1 : Commande par retour d'tat ---------------------------------------------------------------------------------------------
5
3) Lorsque u(k) Kx(k) = , s'agit-il d'un objectif de poursuite ou de rgulation ? Dans ce cas,
quelle doit tre la valeur asymptotique de la sortie y(k) du systme boucl ?

4) On souhaite que le comportement du systme en boucle ferme soit semblable celui d'un
systme du 2
nd
ordre continu de pulsation propre
c
et de coefficient d'amortissement
c
. Donner
l'expression littrale des ples continus p
1
et p
2
en fonction de
c
et de
c
. En dduire l'expression
des ples discrets correspondants nots z
1
et z
2
. Calculer le gain de retour d'tat K = [k
1
k
2
] c'est--
dire dterminer l'expression littrale des termes k
1
et k
2
en fonction de a
1
, a
2
, z
1
et z
2
.

5) On dsire rpondre un objectif de rgulation et de poursuite en appliquant une commande de
type : u(k) Kx(k) y*(k) = + . Dterminer la reprsentation d'tat du systme en boucle ferme
entre y(k) et y*(k). Dterminer ensuite la fonction de transfert du systme boucl et conclure sur
l'effet d'un retour d'tat concernant la position des ples et des zros.

6) Dterminer l'expression littrale du gain en fonction des paramtres b
1
, b
2
, z
1
et z
2
permettant
d'assurer le suivi d'un signal de consigne de type chelon sans erreur statique en boucle ferme.

Rappel sur le systme du 2
nd
ordre :

La rponse temporelle un chelon dun systme du second ordre peut tre caractrise par
deux paramtres qui sont directement lis la valeur de la pulsation propre et de
lamortissement :
Dpassement :
2
D 100exp
1


et temps du 1
er
maximum :
m
2
0
t
1

=



A partir de , on peut dfinir le facteur de rsonance :
2
1
Q
2 1
=




IV - TRAVAIL EXPERIMENTAL

Le travail demand ncessite la ralisation d'un programme Matlab et doit tre sauvegard dans
votre rpertoire de travail (fichier avec une extension .m). Le programme doit tre conu de manire
offrir une grande souplesse d'utilisation. La priode d'chantillonnage T
s
est fixe 0,5 seconde.
Tous les rsultats littraux du travail prparatoire devront tre utiliss afin de vrifier ceux fournis
par les diffrentes fonctions de Matlab utilises.

1) Relever la fonction de transfert du systme lectrique du 2
nd
ordre mis votre disposition. En
dduire la valeur du coefficient d'amortissement et celle de la pulsation propre
0
.

2) Crer un fichier script Matlab ou complter le script "Retour_etat.m" prsent dans votre
rpertoire de travail. Dfinir la fonction de transfert du systme continu en utilisant la fonction tf.
On appellera sys l'objet systme correspondant.

3) Discrtiser le systme continu avec bloqueur d'ordre zro en utilisant la fonction Matlab c2d
(option 'zoh'). On appellera sysd l'objet systme correspondant.

TP Espace d'tat Universit de Caen, M1 EEOA Ph. Dorlans, F. Giri
TP n1 : Commande par retour d'tat ---------------------------------------------------------------------------------------------
6
4) Analyser les performances temporelles en superposant sur une mme figure la rponse indicielle
du systme continu et celle du systme discrtis (gain statique, temps de rponse, dpassement).
Utiliser la fonction Matlab step.

5) Analyser les performances frquentielles en superposant sur une mme figure la reprsentation
frquentielle de Bode du systme continu et celui du systme discrtis (gain statique, bande
passante, facteur de rsonnance). Utiliser la fonction Matlab bode.

6) Analyser la position des ples et des zros du systme continu et du systme discrtis. Est-il
stable en boucle ouverte ? Justifier. Utiliser la fonction Matlab pzmap.

7) En utilisant les rsultats du travail prparatoire, construire les matrices permettant de dfinir la
reprsentation d'tat canonique de commandabilit du systme commander. Crer un objet
contenant la reprsentation d'tat du systme. Utiliser la fonction Matlab ss.

8) Aprs avoir construit la matrice de commandabilit l'aide de la fonction Matlab ctrb, vrifier
la commandabilit du systme en utilisant les fonctions Matlab det et rank.

9) On souhaite que le systme boucl se comporte comme un systme du 2
nd
ordre dont les
caractristiques sont :
c
= 2 rad/s et
c
= 0,7. Calculer la position dsire des ples du systme
continu quivalent et dterminer les ples discrets correspondants.

10) En utilisant les rsultats du travail prparatoire, faire raliser par votre programme le calcul du
gain de retour d'tat. Comparer le rsultat avec celui fourni en utilisant les fonctions Matlab place
ou acker.

11) Pour raliser un objectif de poursuite, en l'occurrence faire suivre la sortie du systme y(k)
une squence de rfrence y*(k), la loi de commande doit maintenant s'crire sous la forme :
u(k) Kx(k) y*(k) = + . Faire raliser automatiquement le calcul du prcompensateur par votre
programme en utilisant l'expression gnrale : ( ) G K G F I z H
1
+ . Pour calculer l'inversion d'une
matrice, on peut utiliser la fonction Matlab inv. Vrifier le rsultat en utilisant l'expression littrale
du prcompensateur obtenue au travail prparatoire.

12) Crer un objet contenant la reprsentation d'tat du systme boucl. Utiliser la fonction Matlab
ss. Observer la position des ples et des zros du systme en boucle ferme et les comparer celle
du systme en boucle ouverte (utiliser la fonction Matlab pzmap). Conclure sur l'effet d'une
commande par retour d'tat concernant la position des ples et des zros.

13) Analyser les performances temporelles et frquentielles du systme boucl et les comparer
celles du systme en boucle ouverte. Utiliser les fonctions Matlab step et bode. Remplir le tableau
suivant :
t
m
(s) D
%

BP -3
dB
Q
dB

Calcul Mesur Calcul Mesur Calcul Mesur
Systme en
boucle ouverte

Systme en
boucle ferme

TP Espace d'tat Universit de Caen, M1 EEOA Ph. Dorlans, F. Giri
TP n1 : Commande par retour d'tat ---------------------------------------------------------------------------------------------
7
BP signifie Bande passante et les valeurs mesures sont issues des mesures effectues partir de la
rponse indicielle et du trac frquentiel.

14) Gnrer votre rapport partir du fichier script Matlab en cliquant sur le bouton "Publish To
HTML" (icne de gauche dans la fentre d'dition). Dans le rpertoire html qui a t cr
automatiquement, ouvrir le fichier html avec un environnement Word ou Open Office et complter
le en y introduisant des commentaires judicieux (se reporter aux indications gnrales concernant
les TPs).

15) Sous Simulink, raliser le schma clat du systme boucl par retour d'tat ainsi synthtis en
faisant apparatre chacun des tats du systme. Pour dfinir l'intgrateur, il faut utiliser le bloc "Unit
Delay" c'est--dire 1/z de la librairie "Discrete" de Simulink. Introduire la priode d'chantillonnage
T
s
dans ce bloc.

Toute variable dfinie dans lespace de travail de Matlab peut tre directement utilise par
Simulink. Cela permet de paramtrer chacun des blocs utiliss sous Simulink.

16) Simuler le systme boucl en poursuite en choisissant un chelon de consigne unitaire.
Observer les signaux de sortie et de commande ainsi que les tats du systme. Comparer la rponse
indicielle avec celle obtenue sous Matlab avec la fonction step.

Pour rcuprer les tracs des scopes de Simulink sous Matlab, ne pas faire de copie d'cran
graphique. Suivre les indications sur la gestion des scopes prsentes dans la partie "informations
sur les TP d'espace d'tat".

17) Appliquer une consigne nulle ou retarder l'instant de dclenchement de l'chelon(champ : Step
Time de l'chelon). Fixer la valeur initiale de l'tat x(0) une position arbitraire (la valeur initiale de
chaque tat peut tre spcifie dans le bloc intgrateur qui lui est associ). Analyser l'volution de
l'tat du systme x(k).

Das könnte Ihnen auch gefallen