Comment utiliser un bloc SVM (Space Vector Modulation) sous

Transcription

Comment utiliser un bloc SVM (Space Vector Modulation) sous
Comment utiliser un bloc SVM
(Space Vector Modulation) sous
Simulink
Note d’Application
Tarak NOUILI
Projet B07 : Contrôle d’un moteur asynchrone par la méthode FOC
Génie Electrique Année 2008/2009
SOMMAIRE
I. PRINCIPE DE LA SVM ...................................................................... 3
II. MODELISATION DE LA SVM SOUS « SIMULINK » ........................... 7
III. UTILISATION DE LA SVM SOUS SIMULINK ................................... 8
CONCLUSION ..................................................................................... 10
TABLE DES MATIERES
Figure 1 : Vecteurs tensions des états de l’onduleur ............................ 3
Figure 2 : Représentation graphique du vecteur us ............................. 4
Figure 3 : Diagramme des 6 secteurs de la SVM .................................. 4
Figure 4 : Signaux logiques de commande de la SVM .......................... 6
Figure 5 : Synoptique de la modélisation de la SVM sous Simulink ...... 7
Figure 6 : Synoptique de la simulation ................................................. 8
Figure 7 : Signaux de commande de la SVM ....................................... 9
Tarak NOUILI GE3
Note d’Application SVM
Page 2 sur 10
I. PRINCIPE DE LA SVM
Le schéma PWM de la SVM (Space Vector Modulation) génère une commande dédiée à
la commutation. L’onduleur à deux étages possède six transistors, il y a 8 états de
commutations possibles.
Figure 1 : Vecteurs tensions des états de l’onduleur
Les vecteurs tensions des états S1 à S6 sont appelés vecteurs actifs tandis que S0 et
S7 sont appelés vecteurs nuls, parce qu'ils n'ont aucun angle et phase. Chaque bras de
commande a besoin d'être complémentaire. Cela veut dire d'avoir, sur un même bras,
lorsque le transistor de l'étage supérieur est fermé, celui du bas doit obligatoirement être
ouvert, et vice versa.
Chaque état conduit le courant dans les trois phases du moteur, produisant les vecteurs de
tensions. Du fait que la somme des trois tensions simples est égale à zéro, le vecteur

d’espace u est facilement calculé avec la formule :

i 2
 i 2
u  uUN (t ).ei  uVN (t ).e 3  uWN (t ).e 3
La tension de phase du vecteur d'espace peut être représentée dans un système de


coordonnées polaires et le résultat dans un vecteur d’espace u s . Le vecteur d'espace u s est
représenté sur la figure 2. L'angle s augmente constamment, ceci résulte de la rotation du
vecteur d’espace. Le résultat de l'application de ce vecteur est une forme d'onde sinusoïdale.
Tarak NOUILI GE3
Note d’Application SVM
Page 3 sur 10
Figure 2 : Représentation graphique du vecteur us
La technique SVM est basée sur 6 secteurs de fonctionnement. Les tensions u un, uvn et
uwn sont converties en vecteurs d'espaces et placées dans un système de coordonnées
 
polaires, les six secteurs correspondent aux vecteurs u1 à u6 .
Figure 3 : Diagramme des 6 secteurs de la SVM

Le vecteur d'espace u s peut être tracé comme dans le diagramme du dessus et calculé
mathématiquement avec la relation suivante :

 1









us  T0 u0  T1 u1  T2 u2  T3 u3  T4 u4  T5 u5  T6 u6  T7 u7 

T 
s
Tarak NOUILI GE3
Note d’Application SVM
Page 4 sur 10

Le principe de la SVM est la génération du vecteur u s . Le vecteur d'espace est
usuellement déterminé par les deux tensions les plus proches délimitant les secteurs (I) à
 
 
(VI) et les vecteurs nuls u0 et u7 . Les tensions u1 et u2 sont seulement appliquées durant un

pourcentage de temps. La formule permettant la détermination de u s est :

 1





  1

uS 
T0 u0  T1 u1  T2 u2  T7 u7   u1S  u2 S 

TS 
TS



T u  T u 
 0 0 7 7 
TS  T1  T2  T0  T7  0
T0  0
T7  0
 

Les vecteurs tensions u1s et u2s sont modulés et sont fonctions de u s :
 T   T 
u1s  1 us u2s  2 us
Ts
Ts


Le vecteur u est calculé par : u  [m.cos  , m.sin  ]
 
La valeur m représente la norme du vecteur d'espace u. Les vecteurs u1 et u2
entraînent les résultats suivants :
 m.cos   T1  T2 
 m.sin    T u1  T u2


s
s
1 
 m.cos   T1 1  T2  2 
 m.sin    T 0   T  


s  
s  3
 2 
3 T2
2 Ts
T1
2

m
sin(  
Ts
3
3
m.sin  
T2
2
m
sin(
Ts
3
  
    s  
2
Tarak NOUILI GE3
Note d’Application SVM
Page 5 sur 10


Il faut appliquer u1 durant un temps T1 et u2 durant un temps T2 pour créer le


vecteur d'espace u . Le vecteur u évolue suivant le cercle de la figure 3. La somme de T1 et T2
est égale ou inférieure à la période de la PWM Ts. Si celle-ci est inférieure on ajoute les
temps T0 et T7 pour la compléter. Ces deux temps correspondent à une configuration de
l'onduleur durant laquelle le moteur n'est pas alimenté. L'algorithme qui suit, a été déduit
pour chaque secteur :
0    60
60    120
120    180
U(duty_cycle)=T0
U(duty_cycle)=T0 + T2
U(duty_cycle)= Ts – T0
V(duty_cycle)=T0+T1
V(duty_cycle)=T0
V(duty_cycle)=T0
W(duty_cycle)=Ts – T0
W(duty_cycle)=Ts – T0
W(duty_cycle)=T0+T1
180    240
240    300
300    360
U(duty_cycle)= Ts – T0
U(duty_cycle)=T0+T1
U(duty_cycle)=T0
V(duty_cycle)=T0+T2
V(duty_cycle)=Ts-T0
V(duty_cycle)=Ts – T0
W(duty_cycle)=T0
W(duty_cycle)=T0
W(duty_cycle)=T0+T2
Le tableau ci-dessus permet de déterminer les temps à appliquer aux différentes
configurations du pont.
T1/2
T2/2
T7/2
T7/2
T2/2
T1/2
T0/2
U
V
W
Figure 4 : Signaux logiques de commande de la SVM
Tarak NOUILI GE3
Note d’Application SVM
Page 6 sur 10
II. MODELISATION DE LA SVM SOUS « SIMULINK »
Après avoir rappelé le principe de fonctionnement de la SVM, nous allons la modéliser
sous l’environnement « Simulink » du logicel Matlab.
Figure 5 : Synoptique de la modélisation de la SVM sous Simulink
Le synoptique en figure 5 montre la modélisation de la SVM sous l’environnement
« Simulink » du logiciel Matlab. Nous allons décrire maintenant les différents blocs qui
composent cette modélisation.
Tout d’abord, la commande SVM récupère les tensions Valpha et Vbeta et calcul
grâce à ces données le secteur dans lequel se trouve le vecteur tension. Ces deux tensions
récupérées Valpha et Vbeta ainsi que le numéro du secteur seront ensuite comparés à une
rampe qui permettra de calculer les temps nécessaire à appliquer aux vecteurs tensions qui
délimitent le secteur dans lequel l’on se trouve.
Finalement, grâce à ces temps et au numéro du secteur dans lequel l’on se trouve, on
pourra établir les signaux de commande de la SVM à appliquer sur les trois phases du
moteur.
Tarak NOUILI GE3
Note d’Application SVM
Page 7 sur 10
III. UTILISATION DE LA SVM SOUS SIMULINK
Nous allons maintenant utiliser ce bloc SVM pour le simuler avec un moteur et un onduleur.
Figure 6 : Synoptique de la simulation
Les blocs en vert représentent la partie matérielle (onduleur + moteur)
Les blocs en orange représentent les outils de mesures (capteurs de courants, capteurs de
tensions et dynamo tachymétrique pour la mesure de la vitesse).
Résultats de la Simulation :
On simule le système pour une période d’échantillonnage de 100µs et une période d’horloge
du processeur de 1µs. Nous faisons l’essai pour un temps de simulation de 50ms.
Tarak NOUILI GE3
Note d’Application SVM
Page 8 sur 10
Figure 7 : Signaux de commande de la SVM
On observe bien les signaux de commande de la SVM qui ont une forme sinusoïdale malgré
qu’ils soient légèrement bruités. Ces signaux sont déphasés de 2π/3 et seront directement
appliqués sur les trois phases du moteur.
Tarak NOUILI GE3
Note d’Application SVM
Page 9 sur 10
CONCLUSION
Cette note d’application explique comment utiliser la commande MLI (Modulation à Largeur
d’Impulsion) de type SVM (Space Vector Modulation) à l’aide de l’environnement
« Simulink » du logiciel Matlab. Et ce, dans le cadre du contrôle commande d’une machine
asynchrone.
Tarak NOUILI GE3
Note d’Application SVM
Page 10 sur 10