- TP2 : Moteur -
Auteurs :
BEZIA Ayoub Pr
Encadrant :
Carolina Albea
MOUSSAOUI Mahdi
Introduction 1
1 prsentation du TP 2
4 Conclusion 13
Annexes 15
Annexe 1 - code Matlab 15
En automatique, la commande par retour d'tat est un moyen de modier le comportement en boucle ferme
d'un systme dynamique donn par une reprsentation d'tat. Cette approche suppose l'tat connu. Quand ce
n'est pas le cas, on peut utiliser un observateur d'tat de manire reconstruire l'tat partir des mesures
disponibles. Une nalit de la commande par retour d'tat peut tre de minimiser (ou maximiser) un indice
de performance . Ce peut tre aussi d'obtenir un systme en boucle ferme dont les ples, c'est--dire les
valeurs propres de la matrice d'tat, soient placs de manire approprie. Ces ples, en eet, dterminent le
comportement du systme.
1
1. Prsentation et prparions du TP
But de travail :
Lidentification des paramtre et lasservissement de la position dun moteur a courant continue
en utilisant une commande par retour dtat et un pr-compensateur de gain statique.
Prsentation de procd :
2
Figure 3 : Implmentation sur Simulink.
1. Le model sous espace dtat :
Ks Ks
vs ( s ) 9 K s vg ( s ) x1 ( s ) 9 K s x2 ( s )
g
x1 (t ) vs (t ) g
Km K g Km K g
On a : vg ( s ) vm ( s ) et on pose : x2 (t ) vg (t ) on obtient : x2 ( s ) u (s)
1 Tm s 1 Tm s
y ( s ) vs ( s ) u (t ) vm (t ) y ( s ) x1 ( s )
. Ks
Ks x1 (t ) 9 K x2 (t )
x1 ( s) 9 K s x2 ( s ) g
g
. 1 .
Km K g
On applique x2 ( s )(1 Tm s ) K m K g u ( s ) et enfin : x 2 (t ) x 2 (t ) u (s)
Tm Tm
y (t ) x1 (t ) vs ( s ) y (t ) x1 (t )
Le systme d'tat s'crit alors :
Ks
. 0 9 K x (t ) 0
x1 (t ) g 1 u (t )
Km K g
. 1 x2 (t )
x 2 (t ) 0 T Tm
m
x (t )
y (t ) 1 0 1
x2 (t )
3
1. Le model sous espace dtat :
Ks
. 0 9 K x (t ) 0
x1 (t ) g 1
Km K g u (t )
. 1 x2 (t )
x 2 (t ) 0 Tm
T m
x (t )
y (t ) 0 1 1
x2 (t )
4
2. TUDE PRLIMINAIRE DU PROCD :
1. Le model dtat :
Ks
. 0 9 K x (t ) 0
x1 (t ) g 1
Km K g u (t )
. 1 x2 (t )
x 2 (t ) 0 T Tm
m
x (t )
y (t ) 1 0 1
x2 (t )
2. Les pointe dquilibre :
.
On a X (t ) 0 et u (t ) 0 ; alors on trouve lunique pointe dquilibre X (t ) 0 0
- La stabilit du systme :
1
Vu que la matrice A est triangulaire suprieur le system a deux valeurs propres 0 et <=0
Tm
Donc le system est instable.
La matrice C est de rang plein (rang=2 = nombre d'tats) donc le systme est commandable.
Le fait que le systme soit commandable signifie qu'il existe une commande U(t) dfinie sur t0 t1
Permettant de faire voluer (en un temps fini) le systme d'un tat initial quelconque X t0 a un tat
dsire quelconque X t1 .
5
5. Lobservabilit du systme :
1 0
0 K s
9K g
La matrice O est de rang plein (rang=2 = nombre d'tats) donc le systme est observable.
Le fait qu'il soit observable signifie que l'on est capable destimer les tats x1 et x2 partir des variables
de sortie y mesures et la commande u.
6. Comme le systme est commandable et observable, il admet donc une reprsentation sous forme
de compagne de commande et une forme campagne d'observation.
1 1
On a ( ) ( ) 2
Tm Tm
Km K g Km K g
0 0
9Tm 9Tm
Donc P2 K m K g et P1 enfin P
Km K g c
Km K g Km K g
Tm (1 Tm ) (1 Tm )
Tm Tm Tm
2 2
.
X (t ) Pc 1 APc X c (t ) Pc 1BU (t )
Alors : c
y (t ) CPc X c (t ) DU (t )
Aprs calcule on trouve :
K K
Cc m g 0
Tm
0
Bo K m K g
Tm
6
2.2 Reprsentation de lensemble sous forme :
Figure 4 : le systme
Ks
. 0 9 K x (t ) 0
x1 (t ) g 1 u (t )
Km K g
. 1 x2 (t )
x 2 (t ) 0 T Tm
m
x (t )
y (t ) 0 1 1
x2 (t )
Comme les matrices (A, B) sont inchanges, le nouveau systme considre est commandable (cf. Partie
2.1) et ses proprits de stabilits sont identiques : le systme possde les mmes valeurs propres il est
donc est galement instable.
La matrice de commandabilit reste inchange.
la matrice d'observabilit :
La matrice n'est pas de rang plein donc le systme n'est pas observable.
Le mode concerne par cette perte d'observabilit est le mode associe x1 donc le mode 1/Tm :
Ctait prvisible car l'tat x1 n'est plus mesur, la mesure se faisant avant l'intgrateur (1/s), on ne peut
Connaitre l'historique de x1 (Dans notre cas, on connaitre la vitesse mais on ne pourra pas dterminer
La position).
7
2.2 Identification des coefficients Km et Tm :
Le temps de monte 63% avec un signal d'entre chelon (2 dans notre cas) .
Nous avons obtenu exprimentalement :
Tm = 0.28s.
Et on a Km* Kg = 1.18 donc km=1.18/kg=11.23.
8
3. Mise en place d'un retour d'tat :
3.1 calcule des paramtre ki dans la base initiale :
Do la reprsentation dtat :
x
y 0 1 1
x2
On peut placer les ples dsirs ou on veut, il suffit de calculer le polynme caractristique de la
matrice A du (qui aura en paramtres K1 et K2), et d'identifier celui-ci au polynme dsir :
9
3.2 Calcule des ki en utilisant la forme compagne de commande :
u t Kc . X c t .
2. Lexpression du model :
3. Calcule de Kc :
On sait que les coefficients de la dernire line de la matrice A2c sont les mmes coefficients que
celle des polynmes caractristiques en ordre invers avec un signe ngative et on :
1 1
Donc -Kc1=-36.01 et Kc 2 4.8 Kc 2 4.8 1.22
Tm Tm
5. La relation entre Kc et K :
Si On utilise nimporte quelle reprsentation on doit trouver la mme loi de commande
Enfin : K Kc * Pc 1
On a vrifi sur Matlab et on a trouv le mme rsultat
Gs C * A B * K * B
1
2. Pour avoir une erreur de position nulle on doit compenser le gain statique donc :
1
N
C * A B * K * B
1
10
3.4. Simulation sous Matlab-Simulink :
Les code utilis pour calculer les paramtres et les lois de commande sont joindre lannexe.
1. Implmentation sous Simulink :
11
Si lentre est une rampe :
La sortie y(t) :
Lerreur e(t) :
12
4 | Conclusion
Dans ce TP on a arriv indenti les parametre et command la procd du moteur avec un contrleur de
type reteur d'etat et un precomensateur par deux mthode la premire directe et la deuxieme en passent par
la forme compane de commande et on a satisfait les spcication des performances dsires pour une entre
echlone mais pour un entre rampe on a pas arriv a ellimin l'erreur de trinage .
13
Annexes
14
Annexe 1 - code Matla
15
Annexe 2 - code Matlab
1 clc
2 close all
3 clear all
4 Ke =10;
5 Ks =10;
6 Kg =0.105;
7 Tm =0.3;
8 km =7;
9 A =[0 Ks /(9* Kg ) ;0 -1/ Tm ];
10 B =[0 ; km * Kg / Tm ];
11 C =[0 1];
12 D =0;
13 sys = ss (A ,B ,C , D )
14 Cr = ctrb ( sys ) ;
15 rank ( Cr )
16 % le sys est comandable
17 Ob = obsv ( sys ) ;
18 rank ( Ob )
19 % le sys n ' est Observable
16