Vous êtes sur la page 1sur 8

Bureau d’étude

Commande des machines asynchrones - 1


G. Clerc Entraînement à vitesse variable Date : 25/08/2016

Le but de ce BE est de présenter différentes commandes de machines asynchrones en utilisant le logiciel de


simulation Matlab/Simulink.

1. Introduction à Simulink : Asservissement de Position d’une Machine à


Courant Continu
Une machine à courant continu entraîne une charge par l'intermédiaire d'un arbre de transmission souple. La
position angulaire de la charge est mesurée grâce à un capteur de position résistif.
Dans le domaine de Laplace, la relation entre la tension d'alimentation du moteur U(s) et la tension mesurée en
sortie du capteur de position Y(s) est donnée par la fonction de transfert G(s) :

G ( s) 
s s  s   
2

avec  = 10
 = 1000
 = 1600
Dans l'environnement Simulink, créer un nouveau fichier dans lequel vous introduirez la fonction de transfert du
procédé à commander (Machine + Transmission + Charge = G(s)).
KI
Introduire un correcteur à action proportionnelle et intégrale GPI ( s)  K P  et refermer la boucle.
s
Rajouter des signaux d'entrée u(t) et de perturbation p(t) tous les deux de type échelon.
Dans un premier temps, avec une perturbation nulle :
 Initialiser les paramètres de simulation puis, mettre le gain de l'action intégrale à zéro et visualiser
simultanément, l’entrée, la perturbation, la sortie et la consigne.
 Mettre à présent un gain non nul à l'action intégrale et comparer les résultats avec ceux obtenus avec le
premier correcteur.
Répéter le même travail avec une perturbation non nulle (de l’ordre du dixième de la consigne).

2. Commande Scalaire d'une machine asynchrone.

2.1 Principe :
La commande scalaire assure, en régime permanent, la régulation du module du flux. Elle est associée à un
autopilotage :
s = sl + r
s : pulsation des courants statoriques
sl : pulsation de glissement
r : vitesse électrique angulaire
Cette commande permet, en régime permanent, de minimiser le courant appelé pour un couple donné.

2.2 Travail demandé :

Boucle ouverte :
Réaliser le schéma suivant sous Simulink :

1
Redresseur Id L Onduleur

A C MAS
B Ud Ui
C

Vs
Vs 
e
b e

+ m p
W
Commande scalaire +  sl

1
1
Clock
Display Ids
2

12 Iqs
3
-K- Vds
Idr
Vds*
4
Wsl* -K- Iqr
Vqs* 5
13
PHIds
Scalaire Vqs 6
PHIqs
-K- Moteur dq
7
ws* 14
PHIdr
ws 8
-K-
PHIqr
Wr
9
Nr
10
Te
Tl
11
Tload

Réaliser une commande scalaire en introduisant les stratégies 1 (overshoot et couple constant) et 2 ( (Puissance
constante) représentées sur la figure suivante :

2
Vs
Vn

Te

1 2 3

e
V/f = cste P = cste Te 2e = cste
e n c. n
Compensation
des pertes statoriques

On prendra une consigne de glissement wsl=2*pi*5 rd/s et un couple résistant Tl nul.

Visualiser le module du flux statorique √𝜙𝑑𝑠 2 + 𝜙𝑞𝑠 2 , les courants statoriques ids et iqs, le couple
électromagnétique Te et la vitesse mécanique Nr. Interpréter.
Représenter sur une même figure la tension, 10 fois le couple et 100 fois le flux statorique en fonction de la
vitesse en tour/min. Retrouver les différentes zones de fonctionnement
Faites varier la résistance rotorique de la machine (d’un facteur ½ puis un facteur 2). Interprétez les résultats.

3. Commande Vectorielle Indirecte d'une machine asynchrone.

3.1 Principe :
La commande vectorielle par orientation du flux rotorique réalise le contrôle en régime transitoire du flux et du
couple de la machine asynchrone.
Elle effectue une orientation du flux rotorique sur l'axe d, ainsi : dr = r , qr = 0 et :

1  d *r  Lr Te * Lm
ids   Tr   *r  iqs   sl  iqs
Lm  dt  pLm  r *  r * Tr

Nous aboutissons alors à la possibilité de contrôler le couple et le flux de manière indépendante respectivement
par l'intermédiaire des courants statoriques ids et iqs.
Le fonctionnement de la machine asynchrone alimentée en tension et associé à cette commande vectorielle est
régi par les équations suivantes :
 di  Ts 1    d r * 
v ds  Rs  Ts ds  ids    Ts  sl  pW r i qs 
 dt  Lm dt 
 di qs   Ts 1    
v qs  Rs  Ts  i qs    sl  pW r   Ts i ds   r * 
 dt   Lm  
Un découplage est réalisé. Deux variables intermédiaires sont utilisées :
vds1  vds  femd et v qs1  v qs  fem q
Lm L L2
avec femd   s Ls iqs  2
Rr *r et femq    s Ls ids   s m *r  m iqs
Lr Lr Lr Tr

Finalement, on obtient la matrice de transfert :

3
 Lr Tr 
 0 
ids  v ds1  Rs Lr Tr  L2m  Ls Lr Tr s
i   M v  avec M   
 qs   qs1   0
Lr Tr 
 Rs Lr Tr  Lm  Ls Lr Tr s 
2

On réalise le schéma de commande :

MAS
Ia Va
I V
b b
I V
c c m

Commande par Transformation Transformation


hystérésis a,b,c d,q  a,b,c d,q s
s
Va* V*b V *
c V Vqs
iqs ids ds
Transformation e
i
qs  d,q a,b,c
s estimateur ou
femd V* *
Vqs
ds sl
L L L2
eLs iqs + m Rr r -eLs i ds-  e m r + m i qs
L r2 Lr L rT r
Te r
V + + Vqs femq
ds 1
 ou * e e
1
r r  ou *
Ki Ki r r
K+ 1 K+ 2
p1 s p2 s
e

- - +
ids iqs
m
+ + +
ids* iqs*  sl
Commande vectorielle

* Te*
r

Commande vectorielle découplée d’une machine alimentée en tension

3.2 Travail demandé :


a. Donner l’expression des courants de consigne ids* et iqs* en fonction des consignes de flux rotorique
r* et du couple électromagnétique Te *
b. A partir des équations de tension précédentes, réalisez le schéma de commande avec les boucles de
compensation. Les consignes sont le flux rotorique r et le couple électromagnétique Te et les sorties
sont les tensions statoriques vds et vqs ainsi que la pulsation statorique s. On pourra prendre un
𝐾 𝑇 𝑠+𝐾
correcteur 𝑖 𝑖 𝑖 avec Ki=10.31 et Ti=3.42e-003;
𝑇𝑖 𝑠
c. Avec une consigne de flux constant (r = 1 Wb) et une consigne de couple en créneaux avec inversion
de signe (Te = 10 Nm), visualisez les composantes du flux rotorique dr et qr, les courants statoriques
ids et iqs, le couple électromagnétique Te et la vitesse mécanique Nr. Interpréter les résultats obtenus.
d. Modifiez la valeur de la résistance rotorique de la machine (sans modifier celle de la commande pour
simuler un écart réalité/modèle) puis visualisez les mêmes grandeurs. Comparer et conclure.

4
e. Comment faut-il magnétiser la machine au démarrage pour permettre un contrôle de couple sans
oscillation ?

5
Fichier d'initialisation

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Programme de calcul des grandeurs de sortie %
% d'un moteur asynchrone modélisé dans un repere de PARK %
% lié au champ tournant et doté d'une commande vectorielle %
% indirecte en tension. %
% Fichiers necessaires : simuMASdq.M (SIMULINK) %
% Auteur : G.Clerc Lieu : Ampere Date : 09/08 %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

clear all;
close all;
% Paramètres globaux
eps=1e-4;

% Paramètres
Rs=4.85;
Rr=3.8050;
Ls=0.2740;
Lr=0.2740;
Lm=0.2580;
p=2;
f=1.0000e-004;
J=0.0310;
sig=1-((Lm^2)/(Ls*Lr));
Ts=Ls/Rs;
Tr=Lr/Rr;
K1=1/(sig*Tr*Ls);
K2=1/(sig*Ls);
K3=(1/sig)*((1/Ts)+(1/Tr));

% Paramètres de la machine asynchrone utilisés pour la commande


% Permet de simuler un écart entre modélisation et réalité
Rsc=4.85;
Rrc=3.8050;
Lsc=0.2740;
Lrc=0.2740;
Lmc=0.2580;
pc=2;
Trc=Lrc/Rrc;
Tsc=Lsc/Rsc;
sigc=1-((Lmc^2)/(Lsc*Lrc));
Ki=10.31;
Ti=3.42e-003;
Nc=[Ki*Ti Ki];
Dc=[Ti 0];

% Paramètres supplémentaires pour la commande scalaire


% A définir

% Paramètres supplémentaires pour la commande vectorielle


% A définir

% Paramètres de la simulation
tend=1.0;
tolrel=1e-4;
tolabs=1e-4;
mint=1e-5;
maxt=1e-4;

6
options=simset('solver','ode45','maxstep',maxt,'abstol',tolabs,'reltol',tol
rel);

% Simulation
TypeSim=0;
disp('Taper 1 pour simuler la machine');
disp('Taper 2 pour simuler la commande scalaire - à faire');
disp('Taper 2 pour simuler la commande vectorielle - à faire');

while (TypeSim~=1)&(TypeSim~=2)&(TypeSim~=3)
TypeSim=input('Choix (1/2/3): ');
end;

if (TypeSim ==1)
[t,x,y]=sim('simuMASdq',tend,options);
end;
if (TypeSim ==2)
% A completer pour commande scalaire avec nom du fichier simulink
end;
if (TypeSim ==3)
% A completer pour commande vectoroelle avec nom du fichier simulink
end;

% Exploitation des résultats


disp('Exploitation des résultats');
plot(t,y(:,1),t,y(:,2));
title('Ids --- Iqs');
grid;
figure;
plot(t,y(:,3),t,y(:,4));
title('Idr --- Iqr');
grid;
figure;
plot(t,y(:,5),t,y(:,6));
title('PHIds --- PHIqs');
grid;
figure;
plot(t,y(:,7),t,y(:,8));
title('PHIdr --- PHIqr');
grid;
figure;
plot(t,y(:,9));
title('Nr');
grid;
if (TypeSim ==1)
figure;
plot(t,y(:,10),t,y(:,11));
title('Te -- Tload');
grid;
end;
if (TypeSim ==2)
% A definer les sorties supplémentaires en commande scalaire
end;
if (TypeSim ==3)
% A définir les sorties supplémentaires en commande vectorielle
end;

7
Modèle du moteur asynchrone
2
out_2

1/s 1
1 1 PHIds out_1
in_1 Unité
-K-
p
Rs 3
2 1 Te p out_3
1/s
in_2 Unité J.s+f
PHIqs
wr 6
4 1 out_6
-K-
in_4 Unité
Rs 4
3 -K- -K-
K1 out_4
in_3 Wr Nr
-K-

1 -K- 5
-K- -K-
Ls
s+K3 Idr out_5
K2 K2
Ls
Ids

Lr
Lr 7
K1
out_7
-K- PHIdr
-K-
1
Lm
K2 s+K3 8
-K- Iqs
Iqs out_8
Ls
-K-
Ls
K2 -K- 9
Iqr out_9

Lr
Lr
wsl 10
-K-
out_10
Lm PHIqr

Vous aimerez peut-être aussi