Vous êtes sur la page 1sur 3

TP espace d'état

Université de Caen, M1 EEA

Ph. Dorléans, F. Giri

COMMANDE PAR RETOUR D'ETAT ETUDE DU PRINCIPE

I INTRODUCTION

Ce TP a pour objectif d'illustrer les concepts de commande par retour d'état de systèmes linéaires monovariables. Les principes et propriétés d'une commande par retour d'état sont étudiés en simulation dans l'environnement logiciel MATLAB/SIMULINK.

La méthode employée est une méthode de placement de pôles c'est-à-dire que l'on doit déterminer une commande telle que les pôles du système en boucle fermée soient convenablement placés dans

le plan complexe et satisfassent des spécifications d’amortissement, de rapidité

Les pôles de la

fonction de transfert étant les valeurs propres de la matrice d’état, le but est donc de réaliser un asservissement modifiant convenablement la matrice d’évolution du système.

II BUT DE LA MANIPULATION

On s'intéresse donc à la synthèse d'une loi de commande numérique par retour d'état permettant de stabiliser un système quelconque à condition qu'il soit commandable et que son état soit entièrement observable.

Le système à commander a pour fonction de transfert :

G(p) =

2

0

p

2

+

2

0

p +

2

0

0

et

représentent respectivement la pulsation propre et le coefficient d'amortissement du système.

On peut montrer que la fonction de transfert du système échantillonné bloqué correspondant à G(p) a pour expression :

b z

1

-1

+

b

2

z

-2

G

(

z

-1

)

=

1+a z

1

-1

+a

2

z

-2

Remarque : le système, qui a été choisi, est du 2 nd ordre principalement pour des raisons de simplicité de calcul mais la méthodologie qui sera appliquée peut être étendue à tout système qui possède la propriété d'être commandable et pour lequel l'ensemble des variables d'état sont accessibles à la mesure.

III TRAVAIL PREPARATOIRE OBLIGATOIRE

1°) Déterminer la représentation d'état canonique de commandabilité (F, G, H, D) du système à commander G(z -1 ). On appellera u(k), y(k) et x(k) respectivement la commande, la sortie et l'état du système à l'instant k.

TP n°1: Commande par retour d'état -----------------------------------------------------------------------------------------

1
1

TP espace d'état

Université de Caen, M1 EEA

Ph. Dorléans, F. Giri

2°) On synthétise une loi de commande par retour d'état sous la forme : u(k) = K x(k) . A quelle condition peut-on mettre en œuvre une commande par retour d'état ? Est-ce le cas pour le système considéré ?

3°) Lorsque u(k) = K x(k) , s'agit-il d'un objectif de poursuite ou de régulation ? Dans ce cas, quelle doit être la valeur asymptotique de la sortie y(k) du système bouclé ?

4°) Le vecteur de gain K = [k 1 k 2 ] doit être calculé de façon à placer les pôles du système en boucle fermée fixant ainsi le temps de réponse. Calculer le gain de retour d'état tel que le comportement du système en boucle fermée soit semblable à celui d'un système du 2 nd ordre continu de pulsation

propre

et de coefficient d'amortissement (il est donc nécessaire de définir les pôles désirés à

c

c

partir des pôles du système continu définis par les spécifications précédentes). On notera z 1 et z 2 ces pôles.

5°) On désire répondre à un objectif de régulation et de poursuite en appliquant une commande de

type : u(k) = K x(k)+

y(k) et y*(k). Conclure sur l'effet d'un retour d'état concernant la position des pôles et des zéros.

y*(k) . Déterminer les matrices du modèle d'état en boucle fermée entre

6°) Déterminer l'expression du gain en fonction des paramètres de G(z -1 ) et de K permettant d'assurer le suivi d'un signal de référence en échelon sans erreur statique en boucle fermée.

seconde. Calculer la position désirée des pôles du système en boucle fermée.

7°) Soient

=

c

=

0

2 rad / s ,

=

0,1

=

c

0,7

et T s la période d'échantillonnage fixée à 0,5

8°) Avec ces spécifications, quelles performances temporelles et fréquentielles est-on susceptible d'obtenir en boucle fermée ? Les comparer avec celles du système en boucle ouverte en termes de dépassement, de bande passante et de facteur de qualité ou de résonance.

Rappel :

La réponse temporelle à un échelon d’un système du second ordre peut être caractérisée par deux paramètres qui sont directement liés à la valeur de la pulsation propre et de l’amortissement :

Dépassement :

D

=

100exp

 

  2  1 
2
1

et temps du 1 er maximum :

t

= m 2 1 0
=
m
2
1
0

A partir de , on peut définir le facteur de résonance :

IV TRAVAIL EXPERIMENTAL

Q =

1 2 2 1
1
2
2
1

Le travail demandé nécessite de réaliser un programme Matlab qui permet de répondre aux questions suivantes. Il doit être réalisé de manière à offrir une grande souplesse d'utilisation. Ce programme doit être sauvegardé dans un fichier Matlab (extension .m) et dans votre répertoire de travail. La période d'échantillonnage T s est fixée à 0,5 seconde.

TP n°1: Commande par retour d'état -----------------------------------------------------------------------------------------

2
2

TP espace d'état

Université de Caen, M1 EEA

Ph. Dorléans, F. Giri

1°) En utilisant la fonction Matlab tf, définir le système continu avec une pulsation propre de 2 rad/s et un coefficient d'amortissement de 0,1. On appellera sys l'objet système correspondant.

2°) Discrétiser le système continu en utilisant la fonction Matlab c2d (option 'zoh'). On appellera sysd l'objet système correspondant.

3°) Analyser les performances temporelles et fréquentielles du système à commander ainsi que la position des pôles et des zéros. Est-il stable en boucle ouverte ? Justifier. Rappeler les liens entre ces représentations. Utiliser les fonctions Matlab : figure, step, bode, pzmap.

Remarque : il est intéressant de comparer les réponses indicielles et fréquentielles (Bode) des systèmes G(p) et G(z -1 ) en les traçant sur les mêmes figures.

4°) En utilisant les résultats du travail préparatoire, construire les matrices permettant de définir la représentation d'état canonique de commandabilité du système à commander. Créer un objet contenant la représentation d'état du système. Utiliser la fonction Matlab ss.

5°) Vérifier la commandabilité du système en utilisant la matrice de commandabilité. Utiliser les fonctions Matlab ctrb, det et rank.

6°) En utilisant les résultats du travail préparatoire et les valeurs numériques suivantes :

et

c = 0,7 , faire réaliser par votre programme le calcul du gain de retour d'état. Comparer le résultat avec celui fourni en utilisant les fonctions Matlab place ou acker.

=

c

0

7°) Observer la position des pôles et des zéros du système en boucle fermée et les comparer à celle du système en boucle ouverte. Conclure sur l'effet d'une commande par retour d'état concernant la configuration des pôles et des zéros. Utiliser la fonction Matlab pzmap.

Pour réaliser un objectif de poursuite, en l'occurrence faire suivre à y(t) une séquence de référence y*(t), la loi de commande doit maintenant s'écrire sous la forme : u(k) = K x(k)+ y*(k) .

8°) Faire réaliser automatiquement le calcul du précompensateur par votre programme. Créer un objet système en boucle fermée pour la poursuite. Analyser les performances temporelles et fréquentielles du système bouclé.

9°) Sous Simulink, réaliser le schéma éclaté du système bouclé par retour d'état ainsi synthétisé en faisant apparaître chacun des états du système.

Rappel : les variables définies dans l’espace de travail de MATLAB peuvent être directement utilisées par SIMULINK en particulier dans la description de la représentation d’état. Cela permet de paramétrer chacun des blocs utiliser sous Simulink.

10°) Simuler le système bouclé en poursuite en choisissant un échelon de consigne unitaire. Observer les signaux de sortie et de commande et les états du système.

11°) Appliquer une consigne nulle et fixer la valeur initiale de l'état x(0) à une position arbitraire (la valeur initiale de chaque état peut être spécifiée dans le bloc intégrateur qui lui est associé). Analyser l'évolution de l'état du système x(k).

TP n°1: Commande par retour d'état -----------------------------------------------------------------------------------------

3
3