Vous êtes sur la page 1sur 5

TP 1

Modlisation de la machine asynchrone

Reprsentation dtat du modle de la machine


La reprsentation dtat de la machine asynchrone dpend du repre choisi et du choix des
variables dtat pour les quations lectriques. Nous crivons les quations dans le repre
(d,q) car cest la solution la plus gnrale et la plus complexe. Le choix des variables dtat
dpend des objectifs soit pour la commande soit pour lobservation.
Nous donnons dans ce premier TP le modle de la machine asynchrone qui serait exploit
dans les TP suivants pour la mise au point de nos lois de commande.
Pour des applications de commande et selon un repre li au champ tournant, le choix
appropri pour le vecteur d'tat est le suivant :

(1)

Modle de la machine asynchrone alimente en tension


Pour une machine asynchrone triphase alimente en tension, les tensions statoriques
(Vds,Vqs) et la vitesse du champ tournant s

sont considres comme variables de

commande, le couple rsistant Cr comme perturbation. Nous choisissons dans notre cas, le
vecteur dtat de lquation (1).
Ce choix de variable se justifie dune part, par le fait que les courants statoriques sont
mesurables et dautre part parce que lon veut contrler la norme du flux rotorique. Nous
obtenons :
( ) = ( ) ( ) + ( ) ( )

Avec :

( )=

Et :
( )=

+
0

(2)

( ) = 0
0
0

0
0

Lquation mcanique est :

= +

O lquation magntique du couple est obtenue par :


=
(

(3)
)

(4)

Les quations (2), (3) et (4) peuvent tre mises sous un schma fonctionnel Simulink
base de blocs S-function, intgrateur et Mux Figure (1) :

Figure (1) Schma de la MAS avec transformation abc/dq en modle SIMULINK

Figure (2) : Machine asynchrone+Transformation de Park.

Figure (3) : Schma bloc de la transformation de Park en MATLAB/SIMULINK.

Figure (4) : Schma bloc de la machine asynchrone en MATLAB/SIMULINK.


1- Raliser touts les blocs simulink des figures (1) jusqu (4).
2- Faire la simulation en boucle ouverte de la machine asynchrone alimente par le
rseau (dmarrage direct).
3- Simuler le comportement en boucle ouverte de MAS+rseau pour un couple
rsistant qui prend les valeurs suivantes :
Pour lintervalle t=[0,0.6sec], dmarrage vide Cr=0N.m.
Pour lintervalle t=[0.6,1sec], application de la charge Cr=10N.m.
Pour lintervalle t=[0.6,1sec], application de la charge Cr=-10N.m.
Rcrire le programme ci-dessous de la fonction s-function (sf_mach_asy1) dans un M-file

O le programme du s-function (sf_mach_asy1) est :


function [sys,x0,str,ts]=sf_mach_asy1(t,x,u,flag,rs,rr,ls,lr,lm,J,P,fc)
rs=4.85;rr=3.805;ls=0.274;lr=0.274;lm=0.258;P=2;J=0.031;fc=0.00114;
%rs=5.06;rr=3.10;ls=0.386;lr=0.386;lm=0.374;P=1;J=8.2e-3;fc=0.006;
%rs=4;rr=1.143;ls=0.3676;lr=0.3676;lm=0.3489;P=2;J=0.03;fc=0.00098;
d=1-(lm^2/(ls*lr));
tr=lr/rr;
ad=(1-d)/d;
a=rs/(d*ls)+ad*rr/lr;
b=rr/lr;
c=ad/lm;
k=(P*lm/lr);
switch flag,
case 0
[sys,x0,str,ts]=Initialisation;
case 1
sys=Calcul_Derivee_etat(x,u,rs,rr,ls,lr,lm,P,J,fc,d,ad,a,b,c,k);
case 3
sys=Calcul_Sortie(t,x,u,rs,rr,ls,lr,lm,P,J,fc,d,ad,a,b,c,k);
case {2,4,9}
sys=[];
otherwise
error(['unhandled flag=',num2str(flag)]);
end
function [sys,x0,str,ts]=Initialisation;
sizes=simsizes;
sizes.NumContStates=6;
sizes.NumDiscStates=0;
sizes.NumOutputs=8;
sizes.NumInputs=5;
sizes.DirFeedthrough=0;
sizes.NumSampleTimes=1;
sys=simsizes(sizes);
x0=[0.1 0.1 0. 0.1 0.1 0.1]';
str=[];
ts=[0 0];
function sys=Calcul_etat(x,u,rs,rr,ls,lr,lm,P,J,fc,d,ad,a,b,c,k)
sys(1)
sys(2)
sys(3)
sys(4)
sys(5)
sys(6)

=
=
=
=
=
=

-a*x(1)+u(4)*x(2)+c*b*x(3)+c*x(5)*x(4)+u(1)/d/ls;
-u(4)*x(1)-a*x(2)-c*x(5)*x(3)+c*b*x(4)+u(2)/d/ls;
lm*b*x(1)-b*x(3)+u(5)*x(4);
lm*b*x(2)-u(5)*x(3)-b*x(4);
(P/J)*(k*(x(2)*x(3)-x(1)*x(4))-u(3))-(fc/J)*x(5);
u(4);

function sys=Calcul_Sortie(t,x,u,rs,rr,ls,lr,lm,P,J,fc,d,ad,a,b,c,k)
%cr = u(3);
sys(1) = x(1);
sys(2) = x(2);
sys(3) = x(3);
sys(4) = x(4);

sys(5) =
sys(6) =
sys(7) =
sys(8) =
% sys(9)

x(5);
k*(x(2)*x(3)-x(1)*x(4));
sqrt(2/3)*(cos(x(6))*x(1)+sin(x(6))*x(2));
x(6);
= (P/J)*(k*(x(2)*x(3)-x(1)*x(4))-u(3))-(fc/J)*x(5);

function sys=Calcul_Derivee_etat(x,u,rs,rr,ls,lr,lm,P,J,fc,d,ad,a,b,c,k)
sys(1) = -a*x(1)+u(4)*x(2)+c*b*x(3)+c*x(5)*x(4)+u(1)/d/ls;
sys(2) = -u(4)*x(1)-a*x(2)-c*x(5)*x(3)+c*b*x(4)+u(2)/d/ls;
sys(3) = lm*b*x(1)-b*x(3)+u(5)*x(4);
sys(4) = lm*b*x(2)-u(5)*x(3)-b*x(4);
sys(5) = (P/J)*(k*(x(2)*x(3)-x(1)*x(4))-u(3))-(fc/J)*x(5);
sys(6) = u(4);
%%%%%%%%%%%%%%%%%%%Fin du programme%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%

Lancer la simulation et tirer les rsultats de simulation de la figure (5).

Figure (5) : rsultats de simulation de la vitesse mcanique, couple lectromagntique et le


courant de la phase A.