Académique Documents
Professionnel Documents
Culture Documents
UNIVERSITE D’ANTSIRANANA
Mémoire
Département : Electricité
Jury :
Encadreurs :
Décembre 2006
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
AVANT-PROPOS
e document présente les travaux effectués durant mon mémoire de DEA au sein du
A mes parents qui m'ont soutenu pendant toute la durée de ces longues études,
A Samueline,
A Armel,
-0-
Avant-propos
NOTATIONS
INDICES
d Axe d du repère tournant ( Γ ) ≡ (d,q)
n Grandeur nominale
p Opérateur de Laplace[s-1]
q Axe q du repère tournant ( Γ ) ≡ (d,q)
r Grandeur rotor ou de repère rotor (R)
R Régulateur intégrateur
s Grandeur stator ou de repère stator (S)
v Grandeur de perturbation
w Grandeur de consigne
α Axe α du repère stator (S) ≡ ( α , β )
β Axe β du repère stator (S) ≡ ( α , β )
PRINCIPALES GRANDEURS
Ce Couple électromagnétique[Nm]
Cr Couple résistant[Nm]
i Courant instantané[A]
u Tension instantanée[V]
x Grandeur instantanée x ∈ {i, u , φ}
x Grandeur complexe
x* Grandeur complexe conjuguée
dx
x& = Dérivée de x par rapport au temps
dt
x yz Grandeur exprimée dans un repère biphasé ( y ∈ {d , q} et z ∈ {s, r} )
φ Flux instantané[Wb]
θ Position du rotor[rd]
θs Angle électrique entre l’axe du référentiel tournant et celui fixe[rd].
ωs Pulsation statorique ( ω = θ& )[rd/s]
s s
Ω Vitesse de rotation mécanique[rd/s]
-1-
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
SOMMAIRE
AVANT-PROPOS .................................................................................................................... 0
NOTATIONS............................................................................................................................ 1
RESUME................................................................................................................................... 5
INTRODUCTION.................................................................................................................... 6
-2-
Sommaire
INTRODUCTION ...................................................................................................................... 39
3.1. GRANDEURS DE REGLAGE DU COUPLE EN REGIME PERMANENT ...................................... 39
3.2. COMMANDE SCALAIRE EN TENSION DE LA MACHINE ...................................................... 41
3.2.1. Principe................................................................................................................... 41
3.2.2. Elaboration de la commande .................................................................................. 42
3.2.3. Schéma de l’asservissement ................................................................................... 44
3.2.4. Simulation de la commande scalaire de la tension................................................. 44
3.3. CONTROLE SCALAIRE EN COURANT DE LA MACHINE ...................................................... 46
3.3.1. Principe................................................................................................................... 46
3.3.2. Loi de commande ................................................................................................... 46
3.3.3. Schéma complet de l’asservissement ..................................................................... 47
4.3.4. Simulation de la commande scalaire du courant .................................................... 48
CONCLUSION ......................................................................................................................... 49
INTRODUCTION ...................................................................................................................... 50
4.1. PRINCIPE DE LA COMMANDE VECTORIELLE .................................................................... 50
4.2. ELABORATION DES LOIS DE COMMANDE ........................................................................ 52
4.2.1. Orientation du flux rotorique.................................................................................. 52
4.2.1. Expressions des tensions de commande u d s e t u q s ........................................ 53
4.2.2. Représentation des lois de mailles ......................................................................... 53
4.3. DECOUPLAGE ENTREE-SORTIE ........................................................................................ 54
4.3.1. Découplage par retour d'état................................................................................... 54
4.3.2. Découplage par compensation[15]......................................................................... 58
4.4. SCHEMA DE LA COMMANDE VECTORIELLE .................................................................... 60
-3-
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
CONCLUSION ......................................................................................................................... 92
ANNEXE ................................................................................................................................. 95
-4-
Résumé
RESUME
La machine asynchrone ne cesse pas d’être exploitée pour le système de réglage et commande
dans les installations industrielles. La méthode classique utilisant des régulateurs standards de
type PID permet d’avoir une bonne performance mais limitée pour commander cette machine
car le système est multi-variable et fortement couplé. Différentes stratégies ont été élaborées
pour commander ce type de machine. La commande scalaire qui est basée sur le
fonctionnement à tension sur fréquence constant a permis d’ajouter une boucle
d’asservissement pour la vitesse de la machine, la commande vectorielle qui est basée sur la
théorie du champ orienté a été élaborée pour commander séparément les deux composantes du
courant statorique, le réglage d’état qui est basé sur la méthode d’assignation des pôles a été
élaboré pour imposer le comportement dynamique et d’intervenir directement sur les
grandeurs d’entrées du système. Les résultats obtenus ont montré que pour une faible
variation (moins de 5%) de la vitesse, la commande scalaire semble suffisant pour
l’asservissement du système, la performance s’améliore lorsqu’on applique à la machine le
principe de la commande vectorielle, le couple de la machine est bien contrôlé dans tous les
régimes de fonctionnement, une variation de 100% du couple électromagnétique n’entraîne
qu’une déviation de 2% du flux rotorique, ce qui marque le découplage entre ces deux
variables. Des réponses indicielles avec un premier dépassement de moins de 10% ont été
obtenues avec un gain de 5fois de rapidité par rapport à la commande scalaire, par le choix
adéquat des pôles du système en boucle fermée. Les trois méthodes proposées contribuent
bien selon la performance exigée par le cahier de charges, à la résolution du problème de
commande d’une machine asynchrone. Bien que ces approches ont permis, d’un coté, de
simplifier la dynamique de la machine asynchrone en séparant ses deux comportements
(magnétique et mécanique) et, d’un autre coté, d’implémenter des commandes performantes,
elles se sont avérées inefficaces devant la variation des paramètres et l’incertitude des valeurs
des variables d’état (mesurées, estimées ou observées), en particulier, dans le cas des régimes
transitoires et des régimes dégradés. Le recours aux méthodes d’adaptation classiques, pour
compenser l’effet de ces variations et de ces incertitudes peut s’avérer une solution
prometteuse.
MOTS-CLES :
- machine asynchrone
- auto-pilotage
- V/f constant
- champ orienté
- compensation par retour d’état
- Matlab/Simulink
-5-
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
INTRODUCTION
Dans les installations industrielles modernes, la machine asynchrone à cage bénéficie d’une
attention particulière pour plusieurs raisons, notamment : le faible coût, la masse réduite, la
robustesse et la simplicité de construction. Malgré tout, la machine asynchrone n’a été l’objet
d’une commande et de réglage dans le domaine industriel que depuis quelques années. La
difficulté réside du fait qu’il est difficile et coûteux de produire une tension triphasée à
fréquence variable.
Avec les progrès de l'électronique de puissance et de commande, liés à l'apparition des
composants interrupteurs tel que les thyristors GTO (Gate Turn Off) et par la suite, des
transistors IGBT (Insulated Gate Bipolar Transistor) et le développement des technologies
numériques de commande, câblées et programmées, il est possible de choisir une structure de
commande évoluée et d'atteindre des performances de contrôle du couple équivalentes à celles
obtenues avec la machine à courant continu.
Toutefois, la commande de la machine asynchrone reste toujours complexe par sa difficulté
d’identifier certains paramètres en temps réel, ainsi que l’interaction(couplage) entre les
variables principales, notamment le flux et le couple.
Ce type de machine présente en effet un grand intérêt pour les automaticiens et les
électrotechniciens. Sa dynamique est non-linéaire, multivariable et fortement couplée. En
plus, certaines de ses variables d’état sont inaccessibles aux mesures directes (flux rotorique)
et les paramètres de la machine (en particulier, la résistance rotorique) sont affectés par l’effet
thermique et les conditions de fonctionnement, des saturations possibles sur les entrées, les
états et les sorties posent un problème pour sa commande. La méthode de synthèse utilisant le
régulateur standard de type P-I-D1 donne des résultats satisfaisants mais limités, pour ce
système[1].
Par conséquent, toute commande développée pour la machine asynchrone doit permettre,
d’une part, de simplifier son modèle mathématique en assurant un découplage parfait entre les
dynamiques de la vitesse et du flux et, d’autre part, de faire face à la variation des paramètres
et à l’incertitude liée aux mesures et aux estimations (observations) des variables d’état ainsi
que de mettre en œuvre des lois de commande assez simples et assez souples pour une
implémentation aisée et efficace. A cet effet, avec l’accroissement de la puissance du logiciel
MATLAB SIMULINK en calcul et simulation numérique, plusieurs schémas de commande ont
été proposés pour la machine asynchrone. En effet, pour simplifier le modèle de la machine
asynchrone, on peut procéder de deux manières :
• Le contrôle vectoriel du flux rotorique, qui se base sur l’utilisation des techniques
d’orientation du champ.
• La commande par retour d’état (réglage d’état), qui est une théorie moderne de réglage
ayant recours à une description plus complète (interne) du système dont le traitement
s’effectue directement dans le domaine temporel.
Le laboratoire d’automatique de l’Ecole Supérieure Polytechnique d’Antsiranana (LA-ESP)
propose de contribuer à l’étude de ces différentes stratégies.
1
Proportionnel Intégrateur Dérivateur
-6-
Résumé
A la lumière de ce qui a été dit, l’objectif à atteindre dans le présent travail est d’une part de
reconstituer fidèlement et en temps réel les réactions d’état nécessaires pour générer les
entrées de commande désirées et d’autre part d’assurer un découplage exact entre la
commande de la vitesse et celle du flux dans toutes les conditions de fonctionnement.
Ce travail est structuré comme suit :
Après un bref rappel des concepts et de la théorie générale sur la régulation automatique au
premier chapitre, ce document rappelle au chapitre deux les équations régissant le
fonctionnement de l’ensemble machine asynchrone – convertisseur de fréquence. Une
première vue sur la validité du modèle sera présentée à la fin du chapitre deux, par la
simulation du comportement au démarrage à vide d’une machine asynchrone.
Le troisième chapitre sera consacré aux méthodes scalaires, on présentera deux façons,
notamment le controle scalaire de la tension et le controle scalaire du courant pour
commander la machine asynchrone.
Le chapitre quatre fera l’objet de la commande vectorielle à flux orienté. Cette commande est
élaborée et testée en synthétisant des régulateurs linéaires : Proportionnel- Intégral, basé sur la
théorie montrée au premier chapitre. Les performances du dispositif seront analysées et
comparées en termes de suivi de consigne, robustesse, et rejet de perturbations.
Enfin le cinquième et dernier chapitre sera consacré au réglage d’état de la machine
asynchrone, sur ce, on va traiter le circuit de réglage de courant statorique, le circuit de
réglage de flux et le circuit de réglage de la vitesse. La synthèse des régulateurs sera effectuée
d’une part pour assurer le découplage des variables et d’autre part pour assurer la dynamique
du système à l’aide de la méthode d’imposition de pôles.
Les résultats obtenus dans ces investigations nous permettront de conclure sur les méthodes et
outil utilisé « logiciel MATLAB/SIMULINK » et d'envisager les perspectives et suites à donner à
ce travail.
-7-
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
CHAPITRE 1
Avant d’entamer aux différentes stratégies de commande d’une machine asynchrone, nous
allons d’abord rappeler quelques concepts de base sur la régulation automatique.
-8-
Chapitre 1 : Généralités sur la régulation automatique
1.2. MODELISATION
C’est la description mathématique du système. Certains processus sont entièrement définis
par les équations de fonctionnement (en général, sont des équations différentielles), on
parle dans ce cas le modèle de connaissance, autres dont on ne connaît pas à priori les
équations régissant son fonctionnement à cause de la complexité ou l’inaccessibilité, dans
ce cas, on procède aux méthodes d’identification pour établir le modèle de représentation.
-9-
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
- 10 -
Chapitre 1 : Généralités sur la régulation automatique
- 11 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
gauche. Si au moins un pôle a sa partie réelle positive, i.e. est situé à droite, il y a
instabilité.
Echelon
e0 Γ(t ) Amorti : Erreur permanente nulle
dépassement faible
Rampe
α t Γ(t ) Erreur de traînage faible
Impulsion Rapide :
Aδ (t )
temps de réponse faible
Harmonique
Etude des réponses en
e0 sin(ωt + ϕ )
fréquence
- 12 -
Chapitre 1 : Généralités sur la régulation automatique
et le régulateur :
1 + pTn k
PI : GR ( p ) = = kp + i (1-2)
pTi p
(1 + pTn )(1 + pTv ) k
PID : GR ( p ) = = k p + i + kd p (1-3)
pTi p
(1 + pTn )(1 + pTv )(1 + pTv 2 )
PID2 : GR ( p ) = (1-4)
pTi
np
Tn = T1
(1-6)
Ti = 2 KTp
- 13 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Si le système possède plus de deux constantes de temps dominantes (ns > 2) , il faudrait
ajouter les constantes de temps non compensées à Tp . Une autre solution consiste à
choisir un régulateur PID2 avec une dérivée double[2].
Tableau I.2 : Tableau récapitulatif
ns Type de régulateur Tn Tv Tv 2 Ti
1 PI T1 - - 2 KTp
2 PID T1 T2 - 2 KTp
3 PID2 T1 T2 T3 2 KTp
2
Fonction de transfert en boucle fermée
- 14 -
Chapitre 1 : Généralités sur la régulation automatique
ns Type de régulateur Tn Tv Tv 2 Ti
1 PI 4Tp - - K 2
8 Tp
T1
P g g = t gu - - g = 0,5 g 0 - -
1
PI g (1 + ) g = 0.9t gu Ti = 3, 3.Tu - g = 0.45 g 0 Ti = 0,83T0 -
pTi
1
PID g (1 + + pTd ) g = 1, 2t gu Ti = 2.Tu Td = 0,5.Tu g = 0, 6 g 0 Ti = 0,5T0 Td = 0,125T0
pTi
- 15 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Fig.1.7 : Symbole d’un système sous une entrée e et une sortie s SISO3
Cette représentation correspond à l’existence entre l’entrée e et la sortie s d’une relation
différentielle entre l’entrée, la sortie, leurs dérivées et intégrales par rapport au temps :
f (e, e&, e&&,..., ∫ e.dt , s, s&, &&
s ,...) = 0 (1-12)
dx1
dt = a11 x1 + a12 x2 + ... + a1n xn + b11u1 + b12u2 + ... + b1r ur + bv11v1 + bv12 v2 + ... + bv1q vq
dx2 = a x + a x + ... + a x + b u + b u + ... + b u + b v + b v + ... + b v
dt 21 1 22 2 2n n 21 1 22 2 2r r v 21 1 v 22 2 v2q q
M
dx
n = a x + a x + ... + a x + b u + b u + ... + b u + b v + b v + ... + b v (1-13)
dt n1 1 n2 2 nn n n1 1 n2 2 nr r vn1 1 vn 2 2 vnq q
y = c x + c x + ... + c x + d u + d u + ... + d u
1 11 1 12 2 1n n 11 1 12 2 1r r
On a respectivement :
x : vecteur d’état où les xi (i =1,n ) sont les grandeurs d’état
3
Single Input Single Output (Système à une entrée et une sortie)
- 16 -
Chapitre 1 : Généralités sur la régulation automatique
1.6.3. Commandabilité-Observabilité
a) Commandabilité
Il est nécessaire de savoir si le transfert de l’état initial d’un processus vers un autre état
qui est le but souvent recherché en réglage est possible. Pour ce faire, on introduira la
notion de commandabilité.
Par définition, un système est dit commandable si on peut, sur une durée finie, modifier
toutes les composantes du vecteur d’état x(t) par un signal de commande convenable u(t)
en vue d’obtenir un état final à partir d’un état initial.
Pour illustrer cette définition, on fera appel à la matrice Qc (matrice de commandabilité)
définie par :
Qc = [bu Abu A2 bu ... An−1 bu ] (1-15)
c’est une matrice carrée d’ordre n.
4
Cas d’un système Multivariable (MIMO : Multiple Input Multiple Output)
- 17 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Théorème
Le système est dit commandable si et seulement si la matrice Qc est régulière, c’est à dire
rang(Qc) = n. On appelle cette dernière condition de commandabilité[4].
On pourra remarquer par la suite que cette condition est nécessaire pour effectuer la
synthèse de régulateur d’état.
b) Observabilité
La commande exige l’état du processus, malheureusement il arrive fréquemment que seul
la sortie soit accessible par mesure, le vecteur d’état doit donc reconstruit à partir du
vecteur de sortie. Cette opération n’est réalisable que sous certaines conditions
d’observabilité.
Un système est dit observable s’il est possible de retrouver son état initial x(ti) à partir de
l’observation de son entrée u(t) et de sa sortie y(t) pendant un intervalle de temps fini. La
notion d’observabilité utilise le vecteur de sortie. On définit alors la matrice
d’observabilité :
CT
T
Q0 =
C A
(1-16)
M
C T An-1
Théorème
Le système est observable si et seulement si la matrice Q0 est régulière (rang(Q0) = n)
- 18 -
Chapitre 1 : Généralités sur la régulation automatique
De cette notion découle la notion de réglage d’état, ce principe est illustré par la figure ci-
après :
- 19 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
xs
x = , k = [ksT − k R ]
xR
Ici le système est de dimension ns (dim(xs ) = ns) donc dim(x) = ns+1.
On obtient alors un système d’équations :
x& = Ax + bu + bw w + bv v
T
(1-21)
y = C x
où les matrices A, bw , bv , et C T sont explicitées par :
As 0 0
bu bsv
C = [C 0], b = , bv = , A = −1 T
T T , b =
1
, 0 = [0 L 0]T (1-22)
s Cs 0 w 123
0 0 T
i Ti ns
5
Système à régler avec régulateur
- 20 -
Chapitre 1 : Généralités sur la régulation automatique
d c ( p ) = α 0 + α1 p + L + α n −1 p n −1 + α n p n = 0 (1-26)
Les relations entre les coefficients et les pôles sont données par le théorème de Viet[5].
En posant
a T = [α 0 α1 Lα n −1 ] et E = [eT eT A L eT An ] (1-27)
tel que eT est donnée par la dernière ligne de l’inverse de la matrice de commandabilité
Qc du système global( Qc = [bu Abu L An −1bu ] )
c’est à dire
eT = [0 0 L1]Qc−1 (1-28)
on obtient
k T = [a T 1]E (1-29)
On remarque que Qc doit être régulière pour pouvoir l’inverser.
Ainsi on obtient le vecteur ligne de contre-réaction k T c’est à dire les coefficients ki et kR.
b) Détermination des coefficients d’intervention directe k w et kv
Pour le choix des coefficients d’intervention directe des grandeurs d’entrée, on propose
deux méthodes
- La première méthode consiste à limiter au maximum le rôle du régulateur intégrateur en
imposant que sa sortie xR soit nulle en régime établi. Les valeurs des coefficients
d’intervention directe sont données par[2] :
k = C T (− A + b k T ) −1 b −1
w s s u s u
−1
(1-30)
kv = − C sT (− As + bu k sT )−1 bv • C sT (− As + bu k sT ) −1 bu
Dans ces expressions, dim(C sT ) = (1, ns ), dim( As ) = (ns , ns ), dim(ksT ) = (1, ns ), dim(bu ) = (ns ,1) .
On remarque qu’avec ce choix, les coefficients dépendent du choix des pôles puisque
k sT l’en dépend aussi.
- La deuxième méthode consiste à utiliser l’avantage principal introduit par ces
coefficients. En effet on introduit un zéro pour compenser un pôle dominant du système
en BF.
- Pour la grandeur de consigne, le zéro introduit est de la forme[2] :
−kR −k
z0 = d’où k w = R (1-31)
kw z0
- Pour la grandeur de perturbation, on introduit la fonction de transfert liant la
grandeur de consigne et la grandeur de perturbation
w( p ) N ( p )
= (1-32)
v( p) D( p)
- 21 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
CONCLUSION
Cette première approche nous permet toutefois de montrer la théorie générale d’étude
d’un système de réglage et montre la souplesse du réglage par contre-réaction d’état et
laisse envisager un procéder de calcul d’une façon générale afin de pouvoir faire des
nombreuses applications.
Des programmes de synthèse de régulateur seront élaborés pour mettre en œuvre ces
théories.
La section suivante(chapitre2) consiste à la modélisation du système que nous allons mettre
en œuvre {machine asynchrone munie de son convertisseur de fréquence}.
- 22 -
Chapitre 2 : Modélisation du système à régler
CHAPITRE 2
Dans ce chapitre, nous allons décrire les équations regissant le fonctionnement de notre
système à régler qui est ici composé par la machine asynchrone et le convesrtisseur de
fréquence.
2.1.2. Description
L’enroulement rotorique peut se présenter sous deux formes :
• Les rotors à bagues sont munis d’un enroulement généralement triphasé, composé de
bobines multi-spires logées dans des encoches semi-fermées.
• Les rotors à cages sont munis d’un enroulement constitué par des barres nues court-
circuitées en permanence par des anneaux brasés ou moulés sur les extrémités des
barres.
- 23 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
- 24 -
Chapitre 2 : Modélisation du système à régler
Le moteur asynchrone à cage est le moteur le plus répandu dans l’industrie, il est robuste,
fiable, économique, physiquement facile à mettre en œuvre (absence des collecteurs), il est
apprécié pour sa très bonne standardisation.
b) Problème
D’une part, dans le moteur asynchrone, le courant statorique sert à générer le flux et le couple
électromagnétique, le problème qui se pose c’est qu’on ne sait pas exactement la partie du
courant producteur de flux et celle producteur de couple. Le découplage naturel comme dans
la machine à courant continu n’existe plus. D’autre part, les grandeurs rotoriques ne sont pas
accessibles, on cherche alors à les exprimer à travers leurs actions sur le stator. De plus,
certains paramètres sont difficiles à identifier, certains autres subissent une variation (en
particulier, les inductances et résistances des enroulements varient en fonction de la
température). Ainsi lors de la modélisation, nous allons adopter certaines hypothèses
simplificatrices.
2.2.2. Hypothèses
Le modèle de la machine que nous adopterons repose sur les hypothèses suivantes :
Proportionnalité des flux aux courants.
6
Système d’axes décalés l’un de l’autre d’un angle 120°
- 25 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
r
unitaire n normal à la surface étant défini par le sens conventionnel du courant dans le
bobinage.
Avec les hypothèses précédentes, la relation entre les flux totalisés sur les enroulements et les
courants peut être décrite par l’équation matricielle suivante :
φas ias
φ i
bs bs
φcs [φs ] [ M ss ] [ sr e ] . ics = [ M ss ]
M (θ ) [ M sr (θe )] . [is ]
= =
[ M rr ] iar [ M rs (θe )] [ M rr ] [ir ]
(2-8)
φar [φr ] [ M rs (θ e )]
φbr ibr
φcr icr
où [ M ss ],[ M rr ],[ M sr (θ e )],[ M rs (θ e )] sont des sous-matrices de dimension 3x3 et
[φs ],[φr ],[is ],[ir ] sont des vecteurs colonnes de dimension 3.
avec
- 26 -
Chapitre 2 : Modélisation du système à régler
L ps Ms Ms
[ M ss ] = M s L ps Ms
M s Ms Lps
Lpr Mr Mr
[ M rr ] = M r L pr Mr
M r Mr L pr
2π 2π
cos(θ e ) cos(θ e +
3
) cos(θ e − )
3
2π 2π
[ M sr (θ e )] = M 0 cos(θe − ) cos(θ e ) cos(θe + ) = [ M sr (θ e )]t
3 3
cos(θe + 2π ) cos(θ e − 2π ) cos(θ e )
3 3
c) Energie magnétique
Elle peut être calculée à partir de l’expression suivante :
1
Wmag = .([is ]t .[φs ] + [ir ]t .[φr ]) (2-9)
2
L’expression de Wmag en fonction des courants et des inductances ne comporte que 36 termes
!
d) Couple électromagnétique
Il est donné par la dérivée partielle de la coénergie (ici égale à l’énergie) par rapport à l’angle
mécanique entre le rotor et le stator.
∂Wmag ∂Wmag
Ce = =p (2-10)
∂θ m ∂θ e
e) Vitesse
Elle est solution de l’équation fondamentale de la dynamique.
dΩ
J = Ce − Cr (2-11)
dt
avec J : moment d’inertie et Cr : couple résistant.
Remarque
Les équations précédentes permettent la modélisation de la machine dans le plan « a b c ».
Elles peuvent être implantées dans un calculateur. Par contre, vu la complexité (36 termes
pour l’énergie magnétique) de ces équations non linéaires et multi-variables, il est très
difficile d’en tirer des stratégies de commande.
- 27 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
iar
i r = (iar + a.ibr + a .icr ) = 1 a a . ibr
2 2 2 2
(2-13)
3 3
icr
var
v r = (var + a.vbr + a .vcr ) = 1 a a . vbr
2 2 2 2
(2-15)
3 3
vcr
φar
φ r = (φar + a.φbr + a .φcr ) = 1 a a . φbr
2 2 2 2
(2-17)
3 3
φcr
x peut être i s , i r , u s , u r , φ s , φ r
- 28 -
Chapitre 2 : Modélisation du système à régler
b) Transformation de coordonnées
- 29 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
c'est le rotor qui "glisse" par rapport au champ tournant. Mais, en régime permanent, les deux
flux, statorique et rotorique tournent à la même vitesse, au synchronisme.
d φ sαβ d φ sdq
d’où = e jθs + jωs φ sdq e jθs en multipliant membre à membre par e− jθs et en omettant
dt dt
par la suite on l’indice dq, on obtient les équations de tensions statorique et rotorique :
dφ s
u s = Rs i s + + jωs φ s (2-24)
dt
dφ r
0 = Rr i r + + j (ωs − ω )φ r (2-25)
dt
b) Expression des flux totalisés en fonction des courants
Après quelques calculs, les vecteurs φ s et φ r peuvent s’écrire :
φ s = Ls i s + Lsr i r (2-26)
φ r = Lr i r + Lsr i s (2-27)
- 30 -
Chapitre 2 : Modélisation du système à régler
c) Couple électromagnétique
En remplaçant dans l’équation précédente les vecteurs complexes flux par leurs expressions
en fonction des courants, des inductances et de la position angulaire θ s , on aboutit à
l’expression suivante du couple.
Ce = pℑm(φ s i s )
*
(2-29)
d) Résumé
Les équations régissant le fonctionnement en régime quelconque d’une machine asynchrone à
cage dans un référentiel lié au champ tournant ωs sont résumées comme suit :
dφ s
u s = Rs i s + + jωs φ s (2-24)
dt
dφ r
0 = Rr i r + + j (ωs − ω )φ r (2-25)
dt
φ s = Ls i s + Lsr i r (2-26)
φ r = Lr i r + Lsr i s (2-27)
pLsr
Ce = (φdr iqs − φqr ids ) = p(φds iqs − φqs ids ) (2-29)
Lr
dΩ
J = Ce − Cr (2-11)
dt
Ces équations peuvent s’écrire en séparant les deux composantes des grandeurs complexes.
dφds 1 L
uds = Rs ids + − ωsφqs (2-30) ids = φds − sr φdr (2-35)
dt σ Ls σ Ls Lr
dφqs 1 L
uqs = Rs iqs + + ωsφds (2-31) iqs = φqs − sr φqr (2-36)
dt σ Ls σ Ls Lr
dφ
0 = Rr idr + dr − ωrφqr (2-32) i = 1 φ − Lsr φ (2-37)
dt σ Lr σ Ls Lr
dr dr ds
dφqr
0 = Rr iqr + + ωrφdr (2-33) i = 1 φ − Lsr φ (2-38)
dt qr
σ Lr
qr
σ Ls Lr
qs
L
Ce = p sr (φdr iqs − φqr ids ) (2-34) dΩ
Lr J = Ce − Cr (2-11)
dt
L2sr
On définit σ = 1 − coefficient de dispersion de Blondel, Lsg = σ Ls inductance de fuite et
Ls Lr
Lr
Tr = constante de temps de l’enroulement rotorique
Rr
- 31 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
vas = Vˆs cos(ωs t )
2π
vbs = Vˆs cos(ωs t − ) (2-39)
3
2π
vcs = Vs cos(ωs t + 3 )
ˆ
Bien que les fuites magnétiques soient prises en compte, le schéma avec circuits couplés est
peu utilisé ; on lui préfère des schémas faisant intervenir les inductances de fuites.
Il existe une infinité de possibilités. Les deux schémas suivants permettent d’éliminer un
paramètre, ce qui conduit à un schéma équivalent élémentaire. Les déterminations
expérimentales des éléments sont plus faciles à réaliser[8]. Les lois de commande sont plus
simples à élaborer, il s’agit des schémas avec :
Fuites localisées au secondaire ou rotor
Fuites localisées au primaire ou stator
c) Schéma ramené au stator avec inductance de fuites localisées au rotor
Dans le cas d’une inductance de fuites localisées au rotor, le schéma de la figure 2.5 est
équivalent au schéma de la figure 2.6
- 32 -
Chapitre 2 : Modélisation du système à régler
Fig.2.6: Schéma équivalent ramené au stator avec inductance de fuites localisées au rotor.
d) Schéma ramené au stator avec inductance de fuites localisées au stator
Dans le cas d’une inductance de fuites localisées au stator, le schéma de la figure 2.5 est
équivalent au schéma de la figure 2.7.
Fig.2.7 : Schéma équivalent ramené au stator avec inductance de fuites localisées au stator.
- 33 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Les entrées :
Vds (1 ) , Vqs (2 ) , wS (4) : composantes et pulsation de la tension d’alimentation
le couple résistant Cr (3) , caractéristique de la charge
Les sorties:
Ids (1 ) , Iqs (2 ) composantes du courant moteur, grandeurs accessibles
Cem(3 ) : couple moteur (Ce)
Ω (4 ) vitesse de rotation (W).
C’est ce modèle qui sera implanté sous MATLAB et qui permettra d’effectuer les différentes
simulations. On passera des grandeurs réelles aux vecteurs complexes et inversement en
utilisant les relations de passage.
- 34 -
Chapitre 2 : Modélisation du système à régler
Comparaison
2
Ucm Ur
1
-1
-2
0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0.018 0.02
Commande k1
2
-1
-2
0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0.018 0.02
Sortie PWM
500
-500
0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0.018 0.02
t[s]
V1 V2 V3
300
200
100
-100
-200
-300
-400
0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0.018 0.02
t[s]
- 35 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
où fp est la fréquence de pulsation de l’onduleur. Le temps Tcm peut être considéré comme un
temps mort, de sorte que la fonction de transfert de l’onduleur munie de sa commande est de
la forme :
kcm
Gcm ( s ) = (2-43)
1 + pTcm
Le facteur de transfert kcm est la tension continue au circuit intermédiaire correspondant à la
tension maximale fournie par l’onduleur. Sous-forme d’équation, cette fonction peut s’écrire :
du s 1 k
=− u s + cm u cm (2-44)
dt Tcm Tcm
Le modèle de la machine asynchrone (Fig.2.8) et le modèle du convertisseur de fréquence qui
seront implantés sous MATLAB7 et qui permettra d’effectuer les différentes simulations.
- 36 -
Chapitre 2 : Modélisation du système à régler
Fig.2.12 : Comportement au démarrage à vide d’une MAS alimentée par une source sinusoïdale
- 37 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Fig.2.13 : Comportement au démarrage à vide d’une MAS alimentée par un onduleur PWM
CONCLUSION
Les deux figures montrent successivement le comportement au démarrage à vide d’une
machine asynchrone triphasée alimentée par une source purement sinusoïdale et un onduleur
de tension à commande PWM.
Le régime transitoire dure environ 0.7s, On reconnaît le classique appel de courant au
démarrage. Après sa disparition, le régime permanent est atteint et il reste le courant
correspondant au comportement inductif du moteur à vide.
L’oscillation de couple est l’élément marquant de cet oscillogramme, Il faudra donc prendre
garde au dimensionnement du couplemètre utilisé si on ne veut pas le détruire. Après
disparition du régime transitoire, le couple tend vers zéro puisque l’on a annulé le couple
résistant.
Les oscillations du couple se font évidemment ressentir sur l’évolution de la vitesse qui en
régime permanent se stabilise à 157 rad/s puisque le moteur possède 2 paires de pôles.
Pour une alimentation avec un onduleur de tension, on observe des petites oscillations autour
de la valeur fondamentale pour le courant et le couple aussi bien en régime transitoire qu’en
régime permanent. Ce phénomène est dû aux harmoniques provoqués par la commutation
dans l’onduleur (cf. Fig.2.10). On peut diminuer l’effet de ces harmoniques par des stratégies
de commande.
Les trois chapitres qui vont suivre traiteront les différentes stratégies de commande de la
machine asynchrone. Nous mettrons en œuvre entre autres la commande scalaire, la
commande vectorielle et la commande par contre-réaction d’état.
- 38 -
Chapitre 3 : Commande scalaire de la machine asynchrone
CHAPITRE 3
INTRODUCTION
Le modèle inverse d’une machine tournante nous conduit à contrôler le couple pour imposer
la vitesse de rotation ou la position de l’arbre. Plusieurs commandes scalaires existent selon
que l’on agit sur le courant ou sur la tension. Elles dépendent surtout de la topologie de
l'actionneur utilisé (onduleur de tension ou de courant). L'onduleur de tension étant
maintenant le plus utilisé en petite et moyenne puissance, c'est la commande en V/f (V sur f)
qui est la plus utilisée[11].
Rappelons que la pulsation du rotor d’un moteur asynchrone est :
ω 2π f
Ω = Ω s (1 − g ) = (1 − g ) = (1 − g ) (3-1)
p p
Avec
g : glissement
p : nombre de paires de pôles
Ω : pulsation du rotor (en rd/s)
Ω s : Pulsation de synchronisme (en rd/s)
f : fréquence de la tension d’alimentation (Hz)
ω : pulsation de la tension d’alimentation (en rd/s)
Le réglage de la vitesse de rotation du moteur peut donc être obtenu par :
• Action sur le nombre de paires de pôles
• Action sur la fréquence de la tension d’alimentation statorique
• Action sur le glissement
Les méthodes empiriques de réglage de vitesse sont basées surtout au fonctionnement à
vitesse quasiment constante, c’est à dire en régime permanent.
ωr
En fonction du flux rotorique :
ωr
Ce = 3pφr2 (3-3)
Rr
- 39 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Remarque
Pour des fonctionnements au voisinage du synchronisme, on peut en général considérer :
2
Rr
>> (σ Lr ) et la première relation peut donc s’écrire
2
ω
r
2
L ω
Ce ≈ 3p sr φs2 r (3-4)
Ls Rr
Des deux expressions précédentes, il en résulte que les grandeurs de réglage du couple sont :
- La pulsation rotorique ωr .
- Les flux totalisé φs ou φr .
Il reste à résoudre les deux problèmes suivants :
Comment imposer la pulsation rotorique ωr sachant qu’en règle générale, les
grandeurs électriques rotoriques sont inaccessibles? Pour cela, on utilisera la relation
naturelle d’auto-pilotage des machines d’induction à savoir : ωr = ωs − pΩ = gωs avec
ωs grandeur imposable et Ω grandeur mesurable.
Comment imposer les flux totalisés φs ou φr . et à quelle valeur? Les flux seront
contrôlés en boucle ouverte à partir des grandeurs électriques statoriques (courants ou
tensions).
Les stratégies de commande couramment utilisées sont :
- D’une vitesse nulle à la vitesse nominale, on maintiendra le flux constant à sa valeur
maximale pour minimiser les pertes. Pour cette plage de fonctionnement, on disposera
du couple nominal de la machine.
- Pour des vitesses supérieures à la vitesse nominale, on diminuera le flux dans la
machine. Pour cette plage de fonctionnement, on disposera de la puissance apparente
nominale de la machine.
On en déduit le schéma synoptique de la commande suivant :
- 40 -
Chapitre 3 : Commande scalaire de la machine asynchrone
1 Vs
φˆs = (3-7)
4, 44 N s f s
2
V
Cmax = k. s (3-8)
fs
On voit bien que le couple est directement proportionnel au carré du rapport de la tension sur
V
la fréquence statorique s . En maintenant ce rapport constant et en jouant sur la fréquence
fs
statorique, on déplace la courbe du couple électromagnétique (en régime quasi-statique) de la
machine asynchrone.
- 41 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
En fait, garder le rapport (V/f) constant revient à garder le flux constant. Quand la tension
atteint sa valeur maximale, on commence alors à décroître ce rapport ce qui provoque une
diminution du couple que peut produire la machine. On est en régime de "défluxage". Ce
régime permet de dépasser la vitesse nominale de la machine, on l'appelle aussi régime de
survitesse (partie Ω > Ωs de la figure).
La manière de réguler la vitesse de la machine en reconstituant la pulsation statorique à partir
de la vitesse et de la pulsation rotorique est présentée par le schéma de commande ci-dessous.
La vitesse qui est l'image du couple de la machine est issue du régulateur de vitesse. Si la
machine est chargée, la vitesse a tendance à baisser, le régulateur va fournir plus de couple
(donc plus de glissement) afin d'assurer cet équilibre. La pulsation statorique est donc
modifiée pour garder cet équilibre. La tension est calculée de manière à garantir le mode de
contrôle en V/f de la machine.
Nous cherchons à établir les relations entre les flux et le module du courant statorique.
A partir du schéma équivalent ramené au stator avec inductance de fuites localisées au rotor
(fig.2.6), on aboutit à la relation suivante (pour la démonstration, voir annexe A) :
φ s 1 + jTrωr
is = (3-10)
Ls 1 + jσ Trωr
soit en module
Φ s 1 + (Trωr )2
Is = (3-11)
Ls 1 + (σ Trωr ) 2
Pour des caractéristiques de couple similaires dans la zone utile de fonctionnement, il apparaît
plus simple de contrôler le flux rotorique.
- 42 -
Chapitre 3 : Commande scalaire de la machine asynchrone
La figure suivante représente, pour les faibles valeurs de la pulsation statorique, l’évolution de
la tension efficace statorique pour différentes valeurs de ωr .
Vs en [V]
55
50
45
40
35
30
25
20
15
ωr = 15 rad.s -1
10 ωr = 0 rad.s -1
ωr = -15 rad.s -1
5
0 5 10 15 20 25 30 35 40 45 50
ωs en rad.s -1
Vs = Φ sωs (4-14)
Il sera possible pour améliorer les performances, en particulier à basse vitesse, de majorer la tension Vs
d’une quantité proportionnelle à Is , le plus souvent en ignorant la phase.
- 43 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Afin d'asservir la vitesse de rotation, on rajoute une boucle externe qui, à partir de l'erreur de
vitesse due au glissement, permet d'agir sur la fréquence des tensions statoriques.
Le correcteur de vitesse, généralement de type PI, permet d'estimer la pulsation rotorique. La
tension de sortie du correcteur notée ωr est additionnée à la tension image de la vitesse de
rotation ω et ceci de façon à obtenir la valeur adéquate pour la pulsation statorique.
La pulsation statorique est calculée par la relation : ωs = ωr + ω . C'est l'autopilotage
fréquentiel.
Le contrôle de l'amplitude des tensions est ici basé sur le modèle statique de la machine
asynchrone qui est uniquement valable en régime permanent. Lors des régimes transitoires,
les valeurs instantanées des courants ne sont pas contrôlées.
- 44 -
Chapitre 3 : Commande scalaire de la machine asynchrone
20
-20
-40
2 3 4 5 6 7 8 9 10
0.86
0.85
0.84
0.83
2 3 4 5 6 7 8 9 10
t[s]
20
-20
-40
-60
2 3 4 5 6 7 8 9 10
165
160
155
150
2 3 4 5 6 7 8 9 10
t[s]
Fig.3.7 : Caractéristiques des réponses en boucle fermée influencées par une variation du couple
résistant à partir d’un régime permanent
- 45 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
On constate que quand la machine est chargée (saut du couple résistant), la vitesse a tendance
à baisser mais grâce au régulateur de vitesse, elle revient à sa position initiale. Ce dernier a
fourni plus de couple (donc plus de glissement), par reconstitution de la pulsation statorique
ωs afin d’assurer cet équilibre. La synthèse de ce régulateur de vitesse a été faite par
simulation du comportement du système.
Par application d’une variation du couple résistant, on observe une variation du flux rotorique.
Ce transitoire sur le flux se traduit par un temps d’établissement du couple électromagnétique.
Notons que la loi de commande utilisée ne tient pas compte la chute ohmique de tension
( Rs I s ). La commande en V/f se justifie à partir du schéma équivalent classique de la machine
asynchrone en négligeant la résistance statorique. L’approximation est bien justifiée à grande
vitesse (RsIs << Vs), elle ne l’est plus à petite vitesse puisque Rs I s est à peu près les mêmes
valeurs alors que Vs est beaucoup plus faible (V/f = Constant).
La synthèse de régulateur c’est à dire la détermination des coefficients k p et ki se fait par
simulation. En effet on introduit interactivement ces coefficients afin de rechercher la
performance du système. Pour ce comportement, on a k p = 0,35 et ki = 0, 225 .
- 46 -
Chapitre 3 : Commande scalaire de la machine asynchrone
en courant et non en tension, il est nécessaire de déterminer la loi de variation I s = f (ωr ) qui
permet de maintenir le flux φs constant. L'expression simplifiée de la loi I s = f (ωr ) est
donnée par (3-11).
35
30
25
20
15
-20 -10 0 10 20
ωr [rad/s]
La pulsation rotorique ωr est estimée grâce au correcteur PI. Pour déterminer la pulsation des
courants statoriques, il faut additionner l'image de la vitesse de rotation et l'image de la
pulsation rotorique. Ceci permet de vérifier l'équation ωs = ωr + ω et de réaliser l'autopilotage
fréquentiel.
La loi I s = f (ωr ) décrite précédemment permet de fixer l'amplitude des courants de
références. Le contrôle de l'amplitude des courants statoriques est ici basé sur le modèle de
statique de la machine asynchrone qui est uniquement valable en régime permanent. Lors des
régimes transitoires, les valeurs instantanées des courants ne sont pas contrôlées.
- 47 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
20
-20
-40
2 3 4 5 6 7 8 9 10
0.81
0.8
0.79
0.78
2 3 4 5 6 7 8 9 10
t[s]
- 48 -
Chapitre 3 : Commande scalaire de la machine asynchrone
Les résultats de simulation précédents correspondent à une commande scalaire en couple par contrôle
des courants statoriques. On a la même interprétation qu’aux résultats de la commande en tension. La
stabilité du système est ici encore assurée grâce au régulateur de vitesse qui est dimensionné
aussi par simulation du comportement du système. Pour ce comportement, on a
k p = 0, 75 et ki = 0,325 .
CONCLUSION
Les principes de contrôle du couple électromagnétique de la machine asynchrone que nous
venons de décrire ont tous été élaborés à partir du modèle statique, valable en régime
permanent sinusoïdal.
La stabilité est assurée grâce au régulateur de vitesse. Notons que l’amplitude du couple
résistant est assez grande (cas défavorable), la compensation du glissement permet donc de
maintenir la vitesse constante de la machine entre le fonctionnement à vide et le
fonctionnement en charge. Mais comme nous l’avons vu, on a un système de réglage trop
lent. Ceci est dû au fait que le couple électromagnétique n'est pas contrôlé lors des régimes
transitoires.
Dans le cas où l'on désire parfaitement contrôler le couple électromagnétique même lors des
régimes transitoires, il faut contrôler en permanence l'amplitude et la position relative des
champs tournants statorique et rotorique, le contrôle vectoriel du couple électromagnétique est
un moyen de le faire et ce dernier qui fera l’objet du chapitre suivant.
- 49 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
CHAPITRE 4
INTRODUCTION
Afin d'améliorer les performances du moteur lors des régimes transitoires, il existe des
commandes vectorielles. Le pilotage vectoriel de la machine asynchrone consiste à asservir la
position spatiale angulaire du flux rotorique à celle du flux statorique; en fonctionnement
moteur, c'est le champ statorique qui « tire » le champ rotorique. Ce type de pilotage permet
un excellent contrôle des paramètres couple et vitesse. Le couple est très élevé (supérieur au
couple nominal) même à vitesse nulle[12]. La complexité de ce type de commande vient du
fait qu’on ne dispose que des bornes des enroulements statoriques, pour maîtriser au niveau
du rotor, le flux et le courant actif, ces deux grandeurs étant fortement couplées.
Dans ce chapitre, après avoir montré le principe de la commande vectorielle suivie des
méthodes pour découpler les deux composantes du courant statorique, nous étudierons trois
circuits de réglage :
- Régulation du courant statorique
- Régulation du flux rotorique
- Régulation de vitesse
- 50 -
Chapitre 4 : Commande vectorielle de la machine asynchrone
- 51 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
- 52 -
Chapitre 4 : Commande vectorielle de la machine asynchrone
A partir de ces trois équations ((4-2) à (4-4)), on obtient l’équation suivante qui exprime
l’orientation du flux rotorique (Démonstration Cf. Annexe A) :
dφr Lsr 1
= ids − φr (4-5)
dt Tr Tr
A partir des lois des mailles pour uds et uqs , on peut établir un schéma fonctionnel interne à la
machine en exprimant φds et iqs en fonction de uds et uqs .
De (4-6), on tire :
φdr = A.(uds + B.iqs ) (4-8)
- 53 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
avec
1
A= et B = ωsσ Ls (4-9)
1 + Tr . p Lsr
( Rs + σ Ls . p ) L + .p
Lr
sr
et de (4-7), on tire :
iqs = C.(uqs − D.φdr ) (4-10)
avec
1 1 + Tr . p Lsr
C= et D = ωs σ Ls + (4-11)
( Rs + σ Ls . p) Lsr Lr
Le schéma ci-dessous résume les 2 équations (4-8) et (4-10) précédentes donnant φdr et iqs :
- 54 -
Chapitre 4 : Commande vectorielle de la machine asynchrone
yi( d + )
= Ci A ( A + BK ) X + Ci Adi BLW
d
(Ci Adi B ≠ 0)
i 1 i
Cette dernière équation, pour laquelle Ci Adi B ≠ 0 fixe la valeur de di. En écrivant cette
relation pour chacune des sorties, nous obtenons :
- 55 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
- 56 -
Chapitre 4 : Commande vectorielle de la machine asynchrone
ids 1 0 0
Le vecteur de sortie est : Y = = CX où la matrice d’observation est C =
iqs 0 1 0
Et avec la procédure décrite précédente, nous avons
1
0
σ Ls
1 1
C1 B = (1 0 0 ) 0 = 0 ≠ 0 (4-26)
σ Ls σ Ls
0 0
et
1
0
σ Ls
1 1
C2 B = ( 0 1 0 ) 0 = 0 ≠0 (4-27)
σ Ls σ Ls
0 0
d’où
d1 = d 2 = 0 (4-28)
1
0
C B σ Ls
B* = 1 = (4-30)
C2 B 0 1
σ Ls
Les matrices de gain K et L assurant le découplage seront donc :
Rs L2r + Rr L2sr Lsr Rr
−σ Lsωs −
L2r L2r σ Ls 0
* −1 *
K = −( B ) A = et L = ( B* ) −1 = (4-31)
Lsr 0 σ Ls
σ Lsωs Rs ωs
Lr
Nous obtenons le système découplé suivant :
- 57 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
1 1
y1 = w1 soit ids = wds
s s
(4-32)
1 1
y2 = w2 soit iqs = wqs
s s
en tenant compte de (4-5), on a
Lsr
φdr = wds (4-33)
p (1 + pTr )
- 58 -
Chapitre 4 : Commande vectorielle de la machine asynchrone
- 59 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
- 60 -
Chapitre 4 : Commande vectorielle de la machine asynchrone
La deuxième transformation calcule à partir des trois courants de ligne de la machine, les
courants biphasés ( I ds , I qs ) dans le repère dq qu'il faut réguler.
1
cos(θ ) − sin(θ )
2
I dq 0 = [ P (θ ) ] I abc
−1
2π 2π 1
avec P (θ ) = cos(θ − ) − sin(θ − ) (4-43)
uabc = [ P (θ )] udq 0
3 3 2
4π 4π 1
cos(θ − 3 ) − sin(θ − 3 )
2
Ces deux transformations nécessitent le calcul de l'angle θ s de l'axe d par rapport au stator qui
est obtenue par intégration de la pulsation statorique ωs
L’estimation du flux sera réalisable sous réserve que l’on puisse faire la transformation de
PARK, ce qui suppose la connaissance de l’angle θ s .
A partir de :
0 = Rr iqr + ωrφdr
0 = Lr iqr + Lsr iqs
on tire
Lsr iqs
Rr (− )
Rr iqr Lr Lsr iqs
ωr = − =− = (4-44)
φdr φdr Trφdr
et par l’orientation sur le flux, φr = φdr
Lsr iqs
d’où : ωr = ou en utilisant le lieu références au lieu des mesures.
Trφr
Ainsi le calcul de l'angle des transformations directes inverses peut se faire en sommant la
pulsation de glissement avec la vitesse électrique, ce qui donne la pulsation statorique puis en
intégrant cette dernière, on obtient θ s :
Lsr iqs
θ s = ∫ ωs dt = ∫ (pΩ + )dt (4-45)
Trφr
θ s sera donc estimé à partir de la mesure de la vitesse, des courants statoriques qui sont
accessibles et le flux rotorique (estimé). Pour la simulation, on utilisera la relation
1
θ s = ωs [2π ] et pour éviter la division par zéro, on ajoutera à φr un nombre ε (très petit).
s
- 61 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
D’après la transformation que nous avons fait, le flux rotorique sera estimé à partir de
l’équation de l’orientation du flux rotorique (4-5) :
L dφ d
on tire r . r + φr = Lsr ids qui peut être réécrit en utilisant la notation de Laplace ( p = ) :
Rr dt dt
Lsr
φr = ids (4-46)
1 + Tr p
Le flux φr peut être estimé à partir du courant ids grandeur statorique accessible à partir de la
mesure des courants réels statoriques sous réserve de la réalisation de la transformation de
PARK. Réguler ce courant à une valeur constante c’est garantir le flux rotorique constant.
On remarque bien qu’en régime permanent, φr = Lsr ids
- 62 -
Chapitre 4 : Commande vectorielle de la machine asynchrone
D’où Tn = Tg
La FTBO8 s’écrit alors
k1 1
G0 ( p) = (4-48)
Ti p(1 + pTp )
Et la FTBF9
k1
G0 ( p ) TpTi
H ( p) = = (4-49)
1 + G0 ( p ) p 2 + 1 p + k1
Tp TpTi
que nous cherchons à identifier à la forme canonique du 2nd ordre :
H 0 ωn2
H ( p) = . (4-50)
p 2 + 2ξ ωn p + ωn2
Nous avons donc le résultat suivant après identification :
8
FTBO : Fonction de transfert en boucle ouverte
9
FTBF : Fonction de transfert en boucle fermée
- 63 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Ti = 4ξ 2Tp k1 (4-51)
Ainsi
Tn = Tg = max(T1 , Tr )
(4-52)
Ti = 4ξ Tp k1
2
Réponse indicielle
Avec les paramètres de la machine, on peut tracer la réponse indicielle du flux rotorique en
fonction du critère d’amortissement ξ .
0.8
0.6
0.4
0.2
0
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2
t[s]
L’analyse des réponses indicielles nous conduit à choisir ξ = 0.6 pour avoir un comportement
optimal du circuit de réglage fermé, ce qui donne kp = 130,24 et ki = 911,69.
- 64 -
Chapitre 4 : Commande vectorielle de la machine asynchrone
Structure de réglage
De même, les équations de découplage proposées permettent d'exprimer le couple
électromagnétique (4-41).
Nous avons une fonction de transfert de premier ordre, en première vue, un régulateur
intégrateur est suffisant pour annuler l’erreur permanente ainsi que pour agir sur la rapidité du
système.
1
GR ( p ) = (4-53)
pTi
Avec ce type de régulateur, on a la structure de réglage suivante :
- 65 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
0.8
0.6
0.4
0.2
0
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
t[s]
Avec la même analyse des réponses indicielles on peut choisir ξ = 0.6 pour avoir un
comportement optimal du circuit de réglage fermé, ce qui donne ki = 13,63.
- 66 -
Chapitre 4 : Commande vectorielle de la machine asynchrone
- 67 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Réponses indicielles
Les résultats qui suivent représentent les réponses indicielles de la vitesse suite à un saut de la
valeur de consigne et de la valeur de la perturbation, en fonction de coefficient
d'amortissement ξ et la pulsation ωn
0.8
0.6
0.4
0.2
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
t[s]
- 68 -
Chapitre 4 : Commande vectorielle de la machine asynchrone
-0.02
-0.03
-0.04
-0.05
-0.06
-0.07
-0.08
-0.09
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
t[s]
On obtient d’après l’analyse des réponses que le meilleur choix consiste à choisir une
pulsation ωn = 5π qui donne une réponse indicielle rapide. On a adopté ici le choix ξ = 0,8
pour le circuit de réglage de vitesse afin de réduire davantage le dépassement (constatation
déduite de ce que précède). Avec ce choix, on les paramètres : kp = 9,95 et ki = 44,41 pour le
régulateur.
- 69 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
- 70 -
Chapitre 4 : Commande vectorielle de la machine asynchrone
Fig.4.19 : Comportement du circuit de réglage fermé suite à une variation du couple résistant
CONCLUSION
Le pilotage de la machine asynchrone par le contrôle vectoriel du flux rotorique présentée
dans cette partie apporte une solution satisfaisante aux problèmes de robustesse rencontrés
dans le contrôle scalaire de la machine asynchrone.
En effet, nous avons montré bien que la commande permet d’avoir une réponse très rapide des
grandeurs couples et flux tout en restant dans des limites de fonctionnement du système (la
variation de la vitesse ne dépasse pas 3% de sa vitesse en régime permanent), pour la variation
du couple résistant considérée. Ceci est dû au principe de réglage du couple
électromagnétique qui consiste à la reconstitution de la tension de référence. La variation du
flux rotorique n’est pas très marquée ( ∆φ ≈ 0.01[Wb] ), pour une variation du couple cela
s’explique par l’effet de la méthode de découplage adoptée.
La commande repose sur un modèle en régime transitoire. Elle permet un réglage précis du
couple. Cependant il exige la connaissance de la position instantanée du rotor pour pouvoir
reconstruire la pulsation statorique par la formule d’auto-pilotage (Cf. équation (2-2). De plus,
la pulsation rotorique est estimée.
La synthèse des régulateurs de flux, couple et vitesse qu’on a effectuée est basée sur la
méthode classique[3] et ne permet pas d’intervenir directement sur les grandeurs d’entrées. La
performance peut être encore améliorée en imposant directement la dynamique du système et
en intervenir directement à la grandeur de consigne et à la grandeur de perturbation. C’est ce
dernier qui fait l’objet du chapitre suivant.
- 71 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
CHAPITRE 5
On présentera dans le présent chapitre le principe de réglage décrit au paragraphe 1.7. Les
objectifs sont d’une part d’obtenir un contrôle séparé de la magnétisation de la machine et du
couple électromagnétique fournit et d’autre part de chercher à conserver les avantages de la
théorie du phaseur spatial en effectuant tous les calculs en utilisant les variables complexes.
Pour obtenir un entraînement réglé à vitesse variable, de performance dynamique élevée, il
faut imposer à la machine un flux statorique constant indépendamment de la fréquence
statorique. La tension statorique appliquée à la machine doit être adaptée en fonction de la
fréquence statorique et la fréquence rotorique.
La méthode de contrôle direct du flux, appelé aussi réglage avec orientation sur le flux est une
méthode basée sur le choix d’un repère de référence, lié au flux statorique ou flux rotorique.
Des expériences ont montré [8] qu’une orientation sur le flux rotorique met en évidence une
commande découplée du flux et du couple électromagnétique, dans la suite, on va adopter
cette dernière.
- 72 -
Chapitre 5 : Réglage d’état de la machine asynchrone
Rsωn L2sr
T =
s
"
+ (5-3)
Lσ Lσ LrTr
Lσ = σ Ls est la réactance de fuite
En tenant compte de l’orientation du système de coordonnées sur le flux rotorique, c’est à dire
en posant φrq = 0 , on obtient de (5-1) l’équation :
dφr 1 L
= − φr + sr isd (5-4)
dt Tr Tr
- 73 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Posons :
i 1 1 1 k L 1
x s = s ; a11 = − " − jωs ; a12 = ; a22 = − ; bu 2 = cm ; bv1 = sr ( − j (ωs − ωr )) (5-6)
us Ts Lσ Tp Tp Lσ Lr Tr
où l’on a remplacé Tcm par Tp = Tcm + T f pour tenir compte de la constante de temps des filtres
de lissage lors du dimensionnement des circuits de réglage.
On aura alors :
a a 0 b
As = 11 12 ; bu = ; bv = v1 ; C sT = [1 0] (5-7)
0 a22 bu 2 0
x& s = As x s + bu ucm + bvφr
(5-8)
i s = C s x s
T
- 74 -
Chapitre 5 : Réglage d’état de la machine asynchrone
- 75 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
ucm = − k 0i x i + k ci i sc + k vψ φr
T
(5-13)
T
où le vecteur ligne de contre-réaction k 0i contenant les coefficients de contre-réaction d’état
est explicité par :
k 0i = [k i −k Ri ]
T
ku (5-14)
en introduisant la relation (5-13) dans (5-11), on obtient les équations matricielles du circuit
de réglage en boucle fermée :
x i = AGi x i + bGi i sc + bGviφr
(5-15)
i s = Ci x i
T
a11 a12 0
avec AGi = −bk i −( + bku ) bk Ri = AS − b[k ]T ;
1
Tp
−1 0
0
0 bv1 0 is
bwi = 0 ; bvi = 0 ; bi = bu 2 ; xi = u s ; bGi = bwi + bi k ci ; CiT = [1 0 0] où
1 0 0 x
Ri
1 1 L 1
a11 = − '' − j.ωs ; a12 = ; b v1 = sr ( − j.ω ) (5-16)
Ts Lσ Lσ Lr Tr
- 76 -
Chapitre 5 : Réglage d’état de la machine asynchrone
du s
En remplaçant par son expression (2-41) et en tenant compte de la forme explicite de la
dt
grandeur de commande u cm (5-13), on obtient la relation :
d 2 is di
2
= c1 s + c 2 i s + c3 i sc + c 4 x Ri + c 5φr (5-18)
dt dt
où les coefficients c1 à c5 s’expriment par :
1
c1 = a11 − − k u b1
Tp
1
c 2 = (a11 (1 + kcm k u ) − a12 kcm k i )
Tp
a12 kcm k ci
c 3 = (5-19)
Tp
a k k
c 4 = 12 cm Ri
Tp
c5 = 1 ((1 + kcm ku )bv1 ) + a12 kcm kvφ
Tp
k Riq = 0 (5-23)
Lsr Tp
kvφ q = (ω + ωs ) (5-24)
Lr kcm Tr
Les autres coefficients seront déterminés par l’imposition du comportement souhaité..
Remarque :
Le choix du coefficient d’intervention directe de la grandeur de consigne par la méthode
imposant la grandeur d’état du régulateur intégrateur nulle en régime établi n’est pas
favorable pour le réglage du courant statorique[10].
En effet, avec ce choix on obtient un coefficient qui n’est pas réel pur donc ne satisfait pas
aux conditions de découplage établies précédent. Par conséquent, on ne s’intéresse qu’à la
méthode de compensation d’un pôle pour le dimensionnement du régulateur.
- 77 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
bφ p 2
i s = Gφi ( p ).φr = φr (5-27)
p 3 + α 2 p 2 + α1 p + α 0
Cette équation peut être décomposée selon les deux composantes du courant
Lsr
( ) p2
Lσ LrTr
isd = 3 φr
p + α 2 p 2 + α1 p + α 0
(5-28)
ωL
−( sr ) p 2
Lσ Lr
isq = 3 φr
p + α 2 p 2
+ α 1 p + α 0
En tenant compte de l’équation de liaison sur les pôles et les équations liant les pôles avec les
coefficients α i de l’équation caractéristique, on peut calculer les réponses indicielles du
courant statorique du courant à l’aide d’un ordinateur.
- 78 -
Chapitre 5 : Réglage d’état de la machine asynchrone
- Par rapport à la consigne les réponses sont valables pour les deux composantes du courant.
Is(t)
1.4
1.2
0.8
0.6
0.4
p1 = p2 = p3 = - δ
0.2
p12 = - δ ± jδ ; p3 = - δ
p12 = - δ ± j1,5δ ; p3 = - δ
Avec δ = 44.9358
0
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35
t[s]
Fig. 5.4 : Réponses indicielles du courant statorique par rapport à la consigne Isc.
0.2 2
0.15 0
0.1 -2
0.05 -4
0 -6
-0.05 -8
-0.1 -10
0 0.1 0.2 0.3 0.4 0 0.1 0.2 0.3 0.4
t[s] t[s]
Fig.5.5 : Réponses indicielles des deux composantes du courant par rapport à la perturbation φr
- 79 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
On remarque que
1 1
p1 + p2 + p3 = −3δ = tr ( AGi ) = −( + ) (5-29)
Tp Ts''
On voit que pour les pôles purement réels, on observe un phénomène transitoire très lent. Les
conditions s’améliorent lorsqu’on choisit des pôles complexes conjugués, avec
l’augmentation de la partie imaginaire des pôles, le dépassement maximum augmente
également. On obtient un bon compromis entre le dépassement maximum et le temps de
monté lorsque la partie réelle est égale à sa partie imaginaire. Dans la suite on utilisera le
deuxième choix ( p1 =−δ, p2,3 =−δ ± jδ ).
- 80 -
Chapitre 5 : Réglage d’état de la machine asynchrone
L’égalité des surfaces de réglage S s = Seq permet d’obtenir la valeur de la constante de temps
équivalente Ti ' .
En utilisant les propriétés de la transformée de Laplace, on obtient :
α1 − β1
Ss = (5-33)
α0
Par la même démarche, on obtient pour la fonction de transfert équivalente du système :
Seq = Ti ' (5-34)
- 81 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Le système à régler est constitué par le circuit de réglage de courant en boucle fermée (bloc 1)
et du (bloc 2) liant le flux à la composante réelle du courant, sa réalisation est obtenue par un
dispositif de retard de premier ordre (cf. relation (5-4)).
dφr 1 L
= − φr + sr isd (5-36)
dt Tr Tr
dxRφ
= φrc − φr
dt
Sous forme matricielle, on obtient :
dφr − 1 Lsr
0 φr 0
dt Tr Tr 0
disd = 0 −
1 1
0 isd + iscd + 0 φrc (5-37)
dt Ti '
Ti '
dxRφ −1
0 xRφ
0 1
0
dt
- 82 -
Chapitre 5 : Réglage d’état de la machine asynchrone
Le coefficient d’intervention directe de la grandeur de consigne kcφ est choisi pour compenser
le pôle réel dominant.
Réponses indicielles
1.2
0.8
0.6
0.4
p1 = p2 = - δ; p3 = 0
0.2
p12 = - δ ± jδ ; p3 = 0
p12 = - δ ± j1,5δ ; p3 = 0
Avec δ = 25.9679
0
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
t[s]
Ce résultat montre que le meilleur choix consiste à imposer les trois pôles selon la
configuration ( p12 = −δ ± jδ ; p3 = 0 ). L’introduction d’un pôle à l’origine rend le système
ayant un comportement intégral, ce qui permet d’augmenter sa performance.
Coefficients de régulateur
Le tableau suivant représente les coefficients du régulateur correspondant au choix des pôles
adopté précédent.
- 83 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
avec
ϕ
0 0 1
J − Ω
Asn = ; bsn = 1 ; b vsn = J ; Csn
T
= (1 0 ) ; xsn = (5-43)
0 − 1
T ' 0 isq
Ti ' i
- 84 -
Chapitre 5 : Réglage d’état de la machine asynchrone
- 85 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
ϕ 0 1
0 J
0 0 −
J
A 0n = 0 −
1
0 ; bn = 1
; b = 0 ; 0 (5-47)
Ti ' Ti ' wn
1 0 0 0 1 0
Conformément à la structure de réglage représentée à la figure 5.9 on a
'
iscq = −kn Ω + k Rn xRn + kcn Ω c + kvn Cr (5-48)
k T0n = ( kn 0 k Rn ) (5-49)
On peut écrire
'
iscq = −k T0n xn + kcn Ω c + kvn Cr (5-50)
- 86 -
Chapitre 5 : Réglage d’état de la machine asynchrone
Vitesse Ω (t)
1.4
1.2
0.8
0.6
0.4
p1 = p2 = p3 = - δ
0.2
p12 = - δ ± jδ ; p3 = - δ
p12 = - δ ± j1,5δ ; p3 = - δ
Avec δ = 14.9786
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
t[s]
Vitesse Ω (t)
0.01
0.005
-0.005
-0.01
-0.015
p1 = p2 = p3 = - δ
-0.02
p12 = - δ ± jδ ; p3 = - δ
p12 = - δ ± j1,5δ ; p3 = - δ
Avec δ = 14.9786
-0.025
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
t[s]
- 87 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
1.2
0.8
0.6
0.4
p1 = p2 = p3 = - δ
0.2
p12 = - δ ± jδ ; p3 = - δ
p12 = - δ ± j1,5δ ; p3 = - δ
Avec δ = 14.9786
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
t[s]
Vitesse Ω (t)
0.01
0.005
-0.005
-0.01
-0.015
p1 = p2 = p3 = - δ
-0.02
p12 = - δ ± jδ ; p3 = - δ
p12 = - δ ± j1,5δ ; p3 = - δ
Avec δ = 14.9786
-0.025
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
t[s]
- 88 -
Chapitre 5 : Réglage d’état de la machine asynchrone
La figure 5-10 à 5-13 représentent les réponses indicielles de la vitesse pour différents choix
des pôles. On a représenté les deux méthodes pour le choix des coefficients d’intervention
directe de la consigne :
- Méthode de compensation d’un pôle
- Méthode pour annuler la grandeur du régulateur intégrateur en régime établi.
On constate que pour annuler la sortie du régulateur intégrateur en régime établi, on introduit
un dépassement considérable, inaccessible pour une réponse à un saut de la valeur de la
consigne.
Les figures montrent clairement que les meilleurs résultats sont obtenus par la compensation
de pôle dominant « lent » du système.
Coefficients du régulateur
La synthèse de régulateur a été effectuée à flux nominal ( φr 0 = 1 ), l’aide d’un programme sous
MATLAB, avec l’algorithme décrit dans le chapitre1. On a trouvé les résultats suivants :
Tableau V.3 : Coefficients de régulateur d’état de la vitesse
Coefficients Kn KRn Kcn kvn
Valeurs 17,6389 131,3539 8,7694 1,1745
Ces résultats correspondent à la meilleure réponse indicielle c’est à dire en compensant le
pôle qui ralenti le système.
Réponses aux points de fonctionnement variables
Vitesse Ω (t)
1.4
1.2
0.8
0.6
0.4
0.2
φ r = 0.3
φ r = 0.5
φ r = 0.9
0
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
t[s]
- 89 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Vitesse Ω (t)
0.02
0.01
-0.01
-0.02
-0.03
-0.04
-0.05
φ r = 0.3
-0.06
φ r = 0.5
φ r = 0.9
-0.07
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
t[s]
- 90 -
Chapitre 5 : Réglage d’état de la machine asynchrone
20
10
-10
-20
-30
0.5 1 1.5 2 2.5 3 3.5 4
0.85
0.85
0.85
0.85
0.85
0.5 1 1.5 2 2.5 3 3.5 4
t[s]
20
-20
-40
-60
0.5 1 1.5 2 2.5 3 3.5 4
158
157.5
157
156.5
156
0.5 1 1.5 2 2.5 3 3.5 4
t[s]
Fig.5.16 : Comportement du circuit de réglage fermé suite à une variation du coupla résistant
- 91 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
CONCLUSION
Dans ce chapitre, nous avons effectué le réglage d’état proprement dit de la machine
asynchrone en traitant trois circuits de réglage : le courant, le flux rotorique et la vitesse.
L’utilisation de la structure de réglage orienté sur le flux rotorique permet d’avoir un contrôle
séparé des deux composantes du courant statorique qui assure le découplage entre le flux et le
couple électromagnétique. Cela est justifié par l’oscillogramme du flux rotorique dans les
résultas précédents. Le flux rotorique est constant. Les avantages rencontrés résident dans la
souplesse de la simulation et programmation pour le calcul des coefficients de contre-réaction
d’état et les coefficients d’intervention directe des grandeurs de consigne et de perturbation.
Pour imposer le comportement dynamique, les pôles du système sont introduits de manière
interactive afin de rechercher les performances sollicitées par le cahier de charges.
Grâce à la méthode d’approximation, nous avons pu modéliser la fonction de transfert du
circuit de réglage du courant statorique par une fonction de transfert de premier ordre. Par
conséquent, la structure de réglage de la vitesse prend la forme particulièrement simple.
On a pu présenter les équations de fonctionnement de la machine sous formes de diagrammes
structurels, sous formes matricielles, ainsi leur traitement numérique a été aisé par le biais
d’une programmation et simulation qui est l’objet du travail.
- 92 -
Conclusion générale
CONCLUSION GENERALE
Un bref rappel de la théorie d’analyse et de synthèse d’un système asservi a été établi dans le
premier chapitre, suivi de la modélisation du système en deuxième chapitre. L’utilisation de
théorie des phaseurs spatiaux ainsi que le choix adéquat du système d’axes tournant permet de
simplifier les équations régissant le fonctionnement de la machine. Pour que l’imposition de
la fréquence statorique soit possible, la machine asynchrone est alimentée par un
convertisseur de fréquence un modèle de l’onduleur a été adopté. Le modèle du système
{MAS+Convertisseur} a été testé et validé par les résultats de la première simulation.
Après avoir décrit le principe de l’auto-pilotage et des généralités sur les stratégies de contrôle
de la machine asynchrone, les trois derniers chapitres sont résolument tournés vers la mise en
œuvre de ces différentes stratégies.
Le point de départ pour la commande a été le pilotage par contrôle scalaire. On a présenté les
deux façons de contrôle : le contrôle de la tension et le contrôle du courant statorique. Les
résultats obtenus ont montré que la compensation du glissement permet de stabiliser la vitesse
de la machine entre le fonctionnement à vide et le fonctionnement en charge. Mais la
dynamique du système est encore mauvaise. Le contrôle du couple électromagnétique que
nous avons développé a été élaboré à partir du modèle statique. De par son principe(contrôle
dit scalaire), la commande scalaire n’est pas apte à maîtriser le couple instantané.
Le contrôle vectoriel a été introduit, dans le cinquième chapitre afin de pouvoir commander la
machine asynchrone avec le maximum de dynamique. Il repose sur un modèle en régime
quelconque. Les résultats obtenus ont montré que le contrôle vectoriel du flux permet de
traiter les régimes transitoires ce que ne permettait pas de faire le contrôle scalaire. Il est donc
apte à maîtriser le couple instantané. Cela se paie en effet puisque le codeur permettant de
repérer la position du rotor du moteur doit être fiable. On a vu que le contrôle séparé des deux
composantes du courant statorique qui assure le découplage entre le flux et le couple
électromagnétique est atteint grâce au principe de réglage orienté sur le flux.
Enfin, dans le dernier chapitre, on a proposé le réglage d’état, une technique moderne de
réglage ayant recours à une description plus complète du système. L’utilisation de la structure
de réglage orienté sur le flux rotorique associé au réglage d’état permet de découpler les deux
composantes du courant statorique et de leur imposer un comportement dynamique
indépendant du point de fonctionnement. Le très bon comportement dynamique du circuit de
réglage de vitesse obtenu est atteint grâce au principe de réglage du courant statorique adopté.
Ainsi, on peut affirmer que le principe de réglage par contre-réaction d’état est très bien
adapté à la machine asynchrone. Cette nouvelle contribution permet, selon les résultats
obtenus, d’avoir un comportement dynamique très performant. Cependant la réalisation
pratique des circuits de réglage est très complexe et que le coût d’installation peut être élevé.
- 93 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Dans ce mémoire, quelques solutions originales ont été proposées. Néanmoins, nous sommes
conscients de n'avoir étudié que certaines stratégies. Il s’agit en fait d’une contribution,
l’objectif est atteint. On arrive même à élaborer une interface graphique simulant les
différentes stratégies de commande de la machine asynchrone. Cette plate-forme a été
développée avec le logiciel Matlab/Simulink et mise en place au laboratoire d’automatique de
l’école supérieure polytechnique d’Antsiranana[18]. L’outil utilisé présente des qualités de
simplicité et de convivialité qui le font très apprécié par les étudiants et les enseignants.
Sur un plan pédagogique, il est envisagé de réaliser la plate-forme et d’en proposer un stand
des travaux pratiques dans le cadre de la formation d’ingénieurs. Le projet est intéressant :
pour l’automaticien, qui est ainsi amené à travailler sur un procédé particulièrement difficile à
piloter, et pour l’élève ingénieur, qui doit apprendre à extraire d’une théorie les éléments
pertinents et applicables dans l’état de la technologie à un instant donné.
Relevons pour terminer que les structures de réglage présentées dans le cadre de ce mémoire
nécessitent la mise en place de capteur sur l'arbre pour la connaissance d'une grandeur
mécanique et reste très sensible aux variations de paramètres de la machine, notamment celles
de la résistance rotorique, qui est dé1icate à identifier en cours de fonctionnement. D’autres
stratégies de commande telle que la commande prédictive peut résoudre le problème en cas
d’une faible variation de paramètres[19]. Les recherches actuelles portent sur l’élaboration
d’observateur plus performant, afin de maîtriser correctement les états du système. La
prochaine étape consiste à associer cet observateur à une commande non linéaire de la
machine et d'évaluer les performances de l'ensemble "Commande+Observateur".
- 94 -
Annexe
ANNEXE
Le schéma équivalent ramené au stator avec inductance de fuites localisées au rotor en régime
permanent nous permet d’obtenir les expressions du couple :
Fig.A. 1 : Schéma équivalent ramené au stator avec inductance de fuites localisées au rotor.
Rr "2
Ce = 3m ir (a-2)
g
Le schéma montre que
v s − Rs i s jωs φ s ωs2φs2 / m 2
i = = ⇒ i =
" "2
r r (a-3)
Rr Rr Rr 2
m( jσ Lrωs + ) m( jσ Lrωs + ) (σ Lrωs ) 2 + ( )
g g g
donc
Rr ωs2φs2 / m 2
Ce = 3m (a-4)
g Ω s (σ L ω ) 2 + ( Rr )2
r s
g
ωs
or = p et gωs = ωr
Ωs
d’où
2
L Rr / ωr
Ce = 3p sr φs2 (3-2)
( Rr / ωr ) + (σ Lr )2
2
Ls
- 95 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
g 2ωs2φr2
⇒ ir2 = (a-5)
Rr
d’où
Rr g 2ωs2φr2
Ce = 3 (a-6)
g Ω s Rr2
ωr
Ce = 3pφr2 (3-3)
Rr
- 96 -
Annexe
- 97 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Lsr L
φds = Ls ids + (φdr − Lsr ids ) = σ Ls ids + sr φdr (a-15)
Lr Lr
L2sr
où σ = 1 − est le coefficient de dispersion de BLONDEL.
Ls Lr
De la même façon, il faut exprimer φqs
d’où
Ls Lsr − L2
φqs = iqs + sr iqs = σ Ls iqs (a-17)
Lr Lr
Il est donc possible maintenant d’écrire
d L
uds = Rs ids + (σ Ls ids + sr φdr ) − ωsσ Ls iqs
dt Lr
Lsr
= Rs ids + p.σ Ls ids + p. φdr − ωsσ Ls iqs
Lr
Lsr
= ( Rs + p.σ Ls )ids + p. φdr − ωsσ Ls iqs
Lr
1 + Tr . p L
= ( Rs + p.σ Ls ) φdr + p. sr φdr − ωsσ Ls iqs
Lsr Lr
(1 + Tr . p) Lsr
uds = ( Rs + σ Ls . p) + . p φdr − ωsσ Ls iqs (4-6)
Lsr Lr
dφqs
uqs = Rs iqs + + ωsφds (2-31)
dt
que l’on peut exprimer comme suit compte tenu des expressions du paragraphe précédent :
d
uqs = Rs iqs + (σ Ls iqs ) + ωsφds (a-18)
dt
avec
Lsr 1 + Tr . p Lsr
φds = σ Ls ids + φdr = σ Ls + φdr (a-19)
Lr Lsr Lr
1 + Tr . p Lsr
uqs = ( Rs + σ Ls . p)iqs + ωs σ Ls + φdr (4-7)
Lsr Lr
- 98 -
Annexe
or φdr = φr et φqr = 0
d’où l’équation (a-20) avec l’équation de l’orientation du flux rotorique peuvent s’écrire
L2sr Lsr
di ( Rs + R r 2
) 2
Rr
L L 1
ds
=− r
ids + ωs iqs + r
φdr + uds
dt σ Ls σ Ls σ Ls
L
ωs sr
diqs = − Rs i − ω i − Lr
φ +
1
uqs
(4-23)
dt σ Ls
qs s ds
σ Ls
dr
σ Ls
dφ L 1
dr = sr ids − φdr
dt Tr Tr
- 99 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
- 100 -
Annexe
- 101 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
- 102 -
Annexe
- 103 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
'value',str2num(get(edit_kp,'string')),... uicontrol(fig1,...
'style','text',...
'callback','simuler_tracer_vitesse;reponse_i 'position',[x_p+5 y_p+3*esp/2
ndicielle1'); largeur_text/4 hauteur_bouton],...
'FontSize',12,...
uicontrol(fig1,... 'String','t[s]');
'style','text',... edit_t = uicontrol(fig1,...
'position',[x_p+5 y_p+3*esp/2 'style','edit',...
largeur_text/4 hauteur_bouton],... 'position',[10+x_p+largeur_text/4
'FontSize',12,... y_p+3*esp/2 largeur_text/2+5
'String','Gain ki'); hauteur_bouton],...
edit_ki = uicontrol(fig1,... 'backgroundcolor','white',...
'style','edit',... 'string',['[ ' num2str(t_perturb) '
'position',[10+x_p+largeur_text/4 ]']);
y_p+3*esp/2 largeur_text/4
hauteur_bouton],... %les boutons
'backgroundcolor','white',... y_p = y_p-esp;
'string',num2str(ki0)); bouton_sauver = uicontrol(fig1,...
slider_ki = uicontrol(fig1,... 'style','pushbutton',...
'style','slider',... 'position',[x_p y_p largeur_text
'position',[15+x_p+largeur_text/2 hauteur_bouton],...
y_p+3*esp/2 largeur_text/3+10 'string','Sauver les paramètres en
hauteur_bouton],... cours',...
'Min',0,... 'fontsize',12,...
'Max',4*ki0,... 'callback','save_params');
- 104 -
Annexe
- 105 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
'FontSize',12,...
'String','Gain ki'); 'value',str2num(get(edit_kp2,'string')),...
edit_ki1 = uicontrol(fig1,...
'style','edit',... 'callback','set(edit_kp2,''string'',num2str(
'position',[10+x_p+largeur_text/4 get(slider_kp2,''value'')));simuler_tracer_c
y_p+2*esp largeur_text/4 hauteur_bouton],... om_vect');
'backgroundcolor','white',...
'string',num2str(Ki1)); uicontrol(fig1,...
slider_ki1 = uicontrol(fig1,... 'style','text',...
'style','slider',... 'position',[x_p+5 y_p+2*esp
'position',[15+x_p+largeur_text/2 largeur_text/4 hauteur_bouton],...
y_p+2*esp largeur_text/3+10 'FontSize',12,...
hauteur_bouton],... 'String','Gain ki');
'Min',0,... edit_ki2 = uicontrol(fig1,...
'Max',4*Ki1,... 'style','edit',...
'position',[10+x_p+largeur_text/4
'value',str2num(get(edit_ki1,'string')),... y_p+2*esp largeur_text/4 hauteur_bouton],...
'backgroundcolor','white',...
'callback','set(edit_ki1,''string'',num2str( 'string',num2str(Ki2));
get(slider_ki1,''value'')));simuler_tracer_c slider_ki2 = uicontrol(fig1,...
om_vect'); 'style','slider',...
'position',[15+x_p+largeur_text/2
y_p+2*esp largeur_text/3+10
y_p = y_p-hg_edit-esp; hauteur_bouton],...
'Min',0,...
%Régulateur de couple 'Max',4*Ki2,...
uicontrol(fig1,...
'style','edit',... 'value',str2num(get(edit_ki2,'string')),...
'position',[x_p y_p largeur_text
hg_edit]); 'callback','set(edit_ki2,''string'',num2str(
uicontrol(fig1,... get(slider_ki2,''value'')));simuler_tracer_c
'style','edit',... om_vect');
'FontSize',12,...
'position',[x_p y_p+hg_edit largeur_text
hauteur_bouton*0.75],... y_p = y_p-hg_edit-esp;
'foregroundcolor',[0 1 0],...
'string','REGULATEUR DE COUPLE',... %Régulateur de vitesse
'backgroundcolor',[0.25 0.25 0.25]); uicontrol(fig1,...
'style','edit',...
uicontrol(fig1,... 'position',[x_p y_p largeur_text
'style','text',... hg_edit]);
'position',[x_p+9 y_p+hauteur_bouton/4 uicontrol(fig1,...
largeur_text-18 hauteur_bouton*0.75],... 'style','edit',...
'FontSize',10,... 'FontSize',12,...
'horizontalalignment','left',... 'position',[x_p y_p+hg_edit largeur_text
'foregroundcolor','y',... hauteur_bouton*0.75],...
'backgroundcolor',[0.75 0.75 0.75],... 'foregroundcolor',[1 0 0],...
'String','Régulateur PI : Gr(p)= 'string','REGULATEUR DE VITESSE',...
Kp+Ki/p'); 'backgroundcolor',[0.25 0.25 0.25]);
uicontrol(fig1,...
uicontrol(fig1,... 'style','text',...
'style','text',... 'position',[x_p+9 y_p+hauteur_bouton/4
'position',[x_p+5 y_p+esp largeur_text/4 largeur_text-18 hauteur_bouton*0.75],...
hauteur_bouton],... 'FontSize',10,...
'FontSize',12,... 'horizontalalignment','left',...
'String','Gain kp'); 'foregroundcolor','y',...
edit_kp2 = uicontrol(fig1,... 'backgroundcolor',[0.75 0.75 0.75],...
'style','edit',... 'String','Régulateur PI : Gr(p)=
'position',[10+x_p+largeur_text/4 Kp+Ki/p');
y_p+esp largeur_text/4 hauteur_bouton],... uicontrol(fig1,...
'backgroundcolor','white',... 'style','text',...
'string',num2str(Kp2)); 'position',[x_p+5 y_p+esp largeur_text/4
slider_kp2 = uicontrol(fig1,... hauteur_bouton],...
'style','slider',... 'FontSize',12,...
'position',[15+x_p+largeur_text/2 'String','Gain kp');
y_p+esp largeur_text/3+10 edit_kp3 = uicontrol(fig1,...
hauteur_bouton],... 'style','edit',...
'Min',0,... 'position',[10+x_p+largeur_text/4
'Max',4*Kp2,... y_p+esp largeur_text/4 hauteur_bouton],...
'backgroundcolor','white',...
- 106 -
Annexe
'string',num2str(Kp3)); interface_regetat.m
slider_kp3 = uicontrol(fig1,... % clear all;
'style','slider',... global im1 re1 im2 re2 im3 re3 p1i p1f p1n ;
'position',[15+x_p+largeur_text/2 global edit_re1 edit_im1 edit_im2 edit_re2
y_p+esp largeur_text/3+10 edit_im3 edit_re3;
hauteur_bouton],... global slider_im1 slider_re1 slider_im2
'Min',0,... slider_re2 slider_im3 slider_re3;
'Max',4*Kp3,... %création de la figure
'value',str2num(get(edit_kp3,'string')),...
load_params;
type_commande = 3;
'callback','set(edit_kp3,''string'',num2str( synthese_regetat;
get(slider_kp3,''value'')));simuler_tracer_c
om_vect'); re1 = real(p1i);
im1 = imag(p1i);
uicontrol(fig1,... im2 = imag(p1f);
'style','text',... re2 = real(p1f);
'position',[x_p+5 y_p+2*esp im3 = imag(p1n);
largeur_text/4 hauteur_bouton],... re3 = real(p1n);
'FontSize',12,... frott = 0.001;
'String','Gain ki');
edit_ki3 = uicontrol(fig1,...
'style','edit',... x_gauche = 50;
'position',[10+x_p+largeur_text/4 y_bas = 50;
y_p+2*esp largeur_text/4 hauteur_bouton],... y_haut = 600;
'backgroundcolor','white',... x_droite = 800;
'string',num2str(Ki3)); largeur_text = 200;
slider_ki3 = uicontrol(fig1,... hauteur_axe = 400;
'style','slider',... largeur_axe = 500;
'position',[15+x_p+largeur_text/2 place =[x_gauche y_bas x_droite y_haut];
y_p+2*esp largeur_text/3+10 hauteur_bouton = 25;
hauteur_bouton],... esp = 30;
'Min',0,... hg_edit = 100;
'Max',4*Ki3,... text_p = y_haut-hg_edit-esp-30;
fig1=figure('Position',place,...
'value',str2num(get(edit_ki3,'string')),... 'Numbertitle','off',...
'Name','Synthèse du régulateur d''état
'callback','set(edit_ki3,''string'',num2str( ...',...
get(slider_ki3,''value'')));simuler_tracer_c 'Tag','Com_regetat');
om_vect'); uicontrol(fig1,...
'style','edit',...
%les boutons 'position',[x_droite-largeur_text-esp-10
y_p = y_p-esp; y_bas largeur_text+20
bouton_sauver = uicontrol(fig1,... hauteur_axe+esp*2+15],...
'style','pushbutton',... 'backgroundcolor',[0.5 0.5 0.5]);
'position',[x_p y_p largeur_text
hauteur_bouton],... %les axes
'string','Sauver les paramètres en axe_vitesse = axes('Units','pixels',...
cours',... 'Position',[x_gauche y_bas largeur_axe
'fontsize',12,... hauteur_axe+75]);
'callback','save_params');
simuler_tracer_regetat;
y_p = y_p-1.5*esp; x_p = x_droite-largeur_text-esp;
y_p = y_haut-6*esp-25;
bouton_ok = uicontrol(fig1,...
'style','PushButton',... %Régulateur du courant statorique
'position',[x_p y_p largeur_text/2.5 uicontrol(fig1,...
hauteur_bouton],... 'style','edit',...
'FontSize',12,... 'position',[x_p y_p largeur_text
'String','OK',... hg_edit]);
'callback','masvect'); uicontrol(fig1,...
bouton_fermer = uicontrol(fig1,... 'style','edit',...
'style','PushButton',... 'FontSize',12,...
'position',[x_p y_p+hg_edit largeur_text
'position',[x_p+largeur_text/2.5+largeur_tex hauteur_bouton*0.75],...
t/5 y_p largeur_text/2.5 hauteur_bouton],... 'string','REGULATEUR DU COURANT',...
'FontSize',12,... 'foregroundcolor',[0 0 1],...
'String','Fermer',... 'backgroundcolor',[0.25 0.25 0.25]);
'Callback','close');
uicontrol(fig1,...
- 107 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
- 108 -
Annexe
- 109 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
- 110 -
Annexe
- 111 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
f_label=uicontrol(fig,... %
'style','text',... % %création de label et edit pour
'position',[x0 y(9) l_str h_str],... l'inductance mutuelle
'BackGroundColor',bg_desc2,... y_p = y(6);
'FontSize',10,... Lm_label=uicontrol(fig,...
'HorizontalAlignment','right',... 'style','text',...
'String','Fréquence du stator 'position',[x0 y_p l_str h_str],...
............ f : '); 'BackGroundColor',bg_desc2,...
f_edit=uicontrol(fig,... 'FontSize',10,...
'style','edit',... 'HorizontalAlignment','right',...
'position',[x1 y(9) l_edit h_edit],... 'String','Inductance
'BackGroundColor','w',... Mutuelle.............. Lm : ');
'FontSize',10,... Lm_edit=uicontrol(fig,...
'HorizontalAlignment','center'); 'style','edit',...
f_unite=uicontrol(fig,... 'position',[x1 y_p l_edit h_edit],...
'style','text',... 'BackGroundColor','w',...
'position',[x2 y(9) l_unit h_str],... 'FontSize',10,...
'FontSize',10,... 'HorizontalAlignment','center');
'HorizontalAlignment','left',... Lm_unite=uicontrol(fig,...
'BackGroundColor',bg_unit,... 'style','text',...
'String','[Hz]'); 'position',[x2 y_p l_unit h_str],...
'FontSize',10,...
'HorizontalAlignment','left',...
% %création de label et edit pour 'BackGroundColor',bg_unit,...
l'inductance statorique 'String','[H]');
Ls_label=uicontrol(fig,... %
'style','text',... % %création de label et edit pour la
'position',[x0 y(8) l_str h_str],... résistance statorique
'BackGroundColor',bg_desc2,... y_p = y(5);
'FontSize',10,... Rs_label=uicontrol(fig,...
'HorizontalAlignment','right',... 'style','text',...
'String','Inductance 'position',[x0 y_p l_str h_str],...
Statorique............ Ls : '); 'BackGroundColor',bg_desc2,...
Ls_edit=uicontrol(fig,... 'FontSize',10,...
'style','edit',... 'HorizontalAlignment','right',...
'position',[x1 y(8) l_edit h_edit],... 'String','Résistance
'BackGroundColor','w',... Statorique.......... Rs : ');
'FontSize',10,... Rs_edit=uicontrol(fig,...
'HorizontalAlignment','center'); 'style','edit',...
Ls_unite=uicontrol(fig,... 'position',[x1 y_p l_edit h_edit],...
'style','text',... 'BackGroundColor','w',...
'position',[x2 y(8) l_unit h_str],... 'FontSize',10,...
'FontSize',10,... 'HorizontalAlignment','center');
'HorizontalAlignment','left',...
'BackGroundColor',bg_unit,... Rs_unite=uicontrol(fig,...
'String','[H]'); 'style','text',...
% %création de label et edit pour 'position',[x2 y_p l_unit h_str],...
l'inductance rotorique 'FontSize',10,...
Lr_label=uicontrol(fig,... 'HorizontalAlignment','left',...
'style','text',... 'BackGroundColor',bg_unit,...
'position',[x0 y(7) l_str h_str],... 'String','[Ohm]');
'BackGroundColor',bg_desc2,...
'FontSize',10,... % %création de label et edit pour la
'HorizontalAlignment','right',... résistance rotorique
'String','Inductance y_p = y(4);
Rotorique............. Lr : ');
Lr_edit=uicontrol(fig,... Rr_label=uicontrol(fig,...
'style','edit',... 'style','text',...
'position',[x1 y(7) l_edit h_edit],... 'position',[x0 y_p l_str h_str],...
'BackGroundColor',bg_desc2,...
'BackGroundColor','w',... 'FontSize',10,...
'FontSize',10,... 'HorizontalAlignment','right',...
'HorizontalAlignment','center'); 'String','Résistance
Lr_unite=uicontrol(fig,... Rotorique........... Rr : ');
'style','text',... Rr_edit=uicontrol(fig,...
'position',[x2 y(7) l_unit h_str],... 'style','edit',...
'FontSize',10,... 'position',[x1 y_p l_edit h_edit],...
'HorizontalAlignment','left',... 'BackGroundColor','w',...
'BackGroundColor',bg_unit,... 'FontSize',10,...
'String','[H]'); 'HorizontalAlignment','center');
- 112 -
Annexe
- 113 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
diary off;
reponse_indicielle1.m clc;
%caractéristiques de la réponses case 1,
w_inf = w(max(size(w))); kp = str2num(get(edit_kp,'string'));
w_max = max(w); ki = str2num(get(edit_ki,'string'));
n_t_pic = find(w==w_max); kpstr1 = ['Gain Kp = ' num2str(kp)];
t_pic = t(n_t_pic+25); kistr1 = ['Gain Ki = ' num2str(ki)];
depassement = 100*(w_max-w_inf)/w_inf; if get(courant_radio,'value')==1,
str_dep = ['D_1 = ' num2str(depassement) ' titre = 'Résultat de la synthèse par
%']; control scalaire du courant';
tube1 = 0.95*w_inf*ones(size(t)); else,
tube2 = 1.05*w_inf*ones(size(t)); titre = 'Résultat de la synthèse par
control scalaire de la tension';
plot(t,wref/2,t,w,'r',t,cr,t,tube1,'c',t,tub end;
e2,'c'); clc;
grid; diary(nom_fichier_extension);
title('Réponse indicielle de la vitesse disp(titre);
\Omega','fontsize',13,'color','r'); disp('Régulateur de vitesse');
text(t_pic,w_max,str_dep); disp(kpstr1);
legend('\Omega_r_é_f','\Omega','Couple disp(kistr1);
résistant',0); diary off;
clc;
case 3
sauver.m sk1i = ['k1 = ' num2str(k1i)];
global dest; sk2i = ['k2 = ' num2str(k2i)];
nom_de_fichier = get(nom_fichier,'string'); skRi = ['kR = ' num2str(kRi)];
choix_format = get(type_fichier,'value'); skwi = ['kw = ' num2str(kwi)];
switch choix_format, skvi = ['kv = ' num2str(kvi)];
case 1, sTi = ['Constante de temps du système
extension = '.txt'; équivalent : Ti = ' num2str(Ti)];
case 2,
extension = '.doc'; sk0f = ['k0_phi = ' num2str(k0_phi)];
case 3, sk1f = ['k1_phi = ' num2str(k1_phi)];
extension = '.m'; skRf = ['kR_phi = ' num2str(kR_phi)];
case 4, skwf = ['kw_phi = ' num2str(kw_phi)];
extension = '.html'
end; sk1n = ['k1 = ' num2str(k1n)];
nom_fichier_extension = [nom_de_fichier sk2n = ['k2 = ' num2str(k2n)];
extension]; skRn = ['kR = ' num2str(kRn)];
skcn = ['kw = ' num2str(kcn)];
file_open = skvn = ['kv = ' num2str(kvn)];
fopen(nom_fichier_extension,'w');
switch type_commande; clc
case 2,
Kp1 = str2num(get(edit_kp1,'string')); diary(nom_fichier_extension);
Kp2 = str2num(get(edit_kp2,'string')); disp('Résultat de la synthèse par retour
Kp3 = str2num(get(edit_kp3,'string')); d''état');
Ki1 = str2num(get(edit_ki1,'string')); disp('
Ki2 = str2num(get(edit_ki2,'string')); ');
Ki3 = str2num(get(edit_ki3,'string')); disp('Régulateur de courant');
disp(' - Vecteur ligne de contre-
kpstr1 = ['Gain Kp = ' num2str(Kp1)]; réaction d''état');
kpstr2 = ['Gain Kp = ' num2str(Kp2)]; disp(sk1i);disp(sk2i);disp(skRi);
kpstr3 = ['Gain Kp = ' num2str(Kp3)]; disp('- Coefficients d''intervention
kistr1 = ['Gain Ki = ' num2str(Ki1)]; directe de la grandeur de consigne et de
kistr2 = ['Gain Ki = ' num2str(Ki2)]; perturbation');
kistr3 = ['Gain Ki = ' num2str(Ki3)]; disp(skwi);disp(skvi);
clc;
diary(nom_fichier_extension); disp(' ');
disp('Résultat de la synthèse par disp('Régulateur de flux');
control vactoriel'); disp(' - Vecteur ligne de contre-
disp('Régulateur de flux'); réaction d''état');
disp(kpstr1); disp(sk0f);disp(sk1f);disp(skRf);
disp(kistr1); disp('- Coefficients d''intervention
disp('Régulateur de couple'); directe de la grandeur de consigne');
disp(kpstr2); disp(skwf);
disp(kistr2); disp(' ');
disp('Régulateur de vitesse'); disp('Régulateur de vitesse');
disp(kpstr3); disp(' - Vecteur ligne de contre-
disp(kistr3); réaction d''état');
- 114 -
Annexe
disp(sk1n);disp(sk2n);disp(skRn); sim(nom_circuit,[0,tstop]);
disp('- Coefficients d''intervention tracage2;
directe de la grandeur de consigne et de
perturbation'); simuler_fichier.m
disp(skcn);disp(skvn); U = str2num(get(U_edit,'String'));
f = str2num(get(f_edit,'String'));
diary off; I = str2num(get(I_edit,'String'));
clc; % Choix de la source
end; if get(sin_radio,'Value')==1,
nom_fichier =
dest = [cd '\' nom_fichier_extension]; 'demarrage_triphase_direct';
enregistrement_ok; else
nom_fichier = 'demarrage_pwm';
end;
save_params.m sim(nom_fichier,[0 1]);
global nom_fichier type_fichier; tracage1;
boite_dialogue_sauver_params = simuler_tracer_com_vect.m
figure('Position',[400 400 375 75],...
'Menubar','none',... Kp1 = str2num(get(edit_kp1,'string'));
'Numbertitle','off',... Kp2 = str2num(get(edit_kp2,'string'));
'Name','Enregistrement des paramètres en Kp3 = str2num(get(edit_kp3,'string'));
cours...',... Ki1 = str2num(get(edit_ki1,'string'));
Ki2 = str2num(get(edit_ki2,'string'));
'Tag','boite_dialogue_sauver_params_dialogue Ki3 = str2num(get(edit_ki3,'string'));
');
uicontrol(boite_dialogue_sauver_params,... sim('synthese_vect',[0 1]);
'style','text',... ymin = 0.95*ones(size(t));
'position',[25 40 100 20],... ymax = 1.05*ones(size(t));
'HorizontalAlignment','right',... plot(t,y1,'b',t,y2,'g',t,y3,'r',t,ymin,'m--
'string','Nom du Fichier : '); ',t,ymax,'m--');
uicontrol(boite_dialogue_sauver_params,... grid;
'style','text',... xlabel('t[s]');
'position',[25 15 100 20],... title('Réponses indicielles','color',[0 0
'HorizontalAlignment','right',... 0.5],'fontsize',13);
'string','Format : '); leg1 = 'Flux \Phir';
nom_fichier = leg2 = 'Couple Ce';
uicontrol(boite_dialogue_sauver_params,... leg3 = 'Vitesse \Omega';
'style','edit',... legend(leg1,leg2,leg3);
'position',[125 40 150 20],...
'horizontalalignment','left',... simuler_tracer_regetat.m
'backgroundcolor','white'); sim('synthese_etat',[0,1]);
type_fichier = tt = 0:max(t)/10:max(t);
uicontrol(boite_dialogue_sauver_params,... ymin = 0.95*ones(size(tt));
'style','popupmenu',... ymax = 1.05*ones(size(tt));
'position',[125 15 150 20],... plot(t,is);
'string','Fichier texte *.txt|Document plot(t,is,'b',t,phi,'g',t,n,'r',tt,ymin,'k',
Word *.doc|Matlab-File *.m|Page Web tt,ymax,'k');
*.html',... grid;
'backgroundcolor','white'); xlabel('t[s]');
uicontrol(boite_dialogue_sauver_params,... legend('Courant Is','Flux \Phir','Vitesse
'style','pushbutton',... \Omega');
'position',[280 15 75 20],... title('Réponses indicielles','color',[0 0
'string','Annuler',... 0.5],'fontsize',13);
'callback','close(boite_dialogue_sauver_para simuler_tracer_vitesse.m
ms)'); ki1 = get(slider_ki,'value');
uicontrol(boite_dialogue_sauver_params,... kp1 = get(slider_kp,'value');
'style','pushbutton',... set(edit_ki,'string',num2str(ki1));
'position',[280 40 75 20],... set(edit_kp,'string',num2str(kp1));
'string','Enregistrer',... kp = str2num(get(edit_kp,'string'));
ki = str2num(get(edit_ki,'string'));
'callback','sauver;close(boite_dialogue_sauv t_perturb = str2num(get(edit_t,'string'));
er_params)'); cr_perturb = str2num(get(edit_cr,'string'));
sim('synthese_scal',[0 8]);
simuler_circuit.m
% Simulation du circuit de réglage synthese_regetat.m
a11i = (-1/Ts_2nd)-j*fs*wn;
kp = str2num(get(kp_edit,'String')); a12i = wn/x_sigma;
ki = str2num(get(ki_edit,'String'));
- 115 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
- 116 -
Annexe
%matrice de commandabilité
Qcf = [buf A0f*buf A0f^2*buf];
synthese_regetat_courant.m
set(edit_im1,'string',num2str(get(slider_im1 %imposition des poles
,'value'))); rhof = trace(A0f);
set(edit_re1,'string',num2str(get(slider_re1 p1f = rhof/2+j*rhof/2;
,'value'))); set(edit_re2,'string',num2str(real(p1f)));
set(edit_im2,'string',num2str(imag(p1f)));
re1 = str2num(get(edit_re1,'string')); p2f = conj(p1f);
im1 = str2num(get(edit_im1,'string')); p3f = rhof-(p1f+p2f);
a0f = -p1f*p2f*p3f;
p1i = re1+j*im1; a1f = p1f*p2f+p1f*p3f+p2f*p3f;
p2i = conj(p1i); a2f = -(p1f+p2f+p3f);
p3i = rhoi-(p1i+p2i);
%imposition des poles %calcul des coefficients du vecteur de
a0i = -p1i*p2i*p3i; contre-réaction d'état
a1i = p1i*p2i+p1i*p3i+p2i*p3i; aTf = [a0f a1f a2f];
a2i = -(p1i+p2i+p3i); eTf = [0 0 1]*inv(Qcf);
Ef = [eTf;eTf*A0f;eTf*A0f^2;eTf*A0f^3];
%calcul des coefficients du vecteur de kTf = [aTf 1]*Ef;
contre-réaction d'état k0_phi = kTf(1);
aTi = [a0i a1i a2i]; k1_phi = kTf(2);
eTi = [0 0 1]*inv(Qci); kR_phi = -kTf(3);
Ei = [eTi;eTi*A0i;eTi*A0i^2;eTi*A0i^3]; k1f = kTf(1);
kTi = [aTi 1]*Ei; k2f = kTf(2);
k1i = kTi(1); ksTf = [k1f k2f];
k2i = kTi(2); den_kvw1f = CsTf*inv(-Asf+busf*ksTf)*busf;
kRi = -kTi(3); kw_phi = 1/den_kvw1f;
ksTi = [k1i k2i];
% calcul des coefficients d'intervention %représentation d'état de la vitesse
directe de la grandeur de consigne
% et de la grandeur perturbation phi = 0.9*xh/xr;
Asn = [0 phi/Tm;0 -1/Ti];
% - - première méthode : busn = [0;1/Ti];
den_kvw1i = CsTi*inv(-Asi+busi*ksTi)*busi; CsTn = [1 0];
num_kv1i = CsTi*inv(-Asi+busi*ksTi)*bvsi; bvsn = [-1/Tm;0];
kw1i = 1/den_kvw1i;
kv1i = -num_kv1i/den_kvw1i; A0n = [0 phi/Tm 0;0 -1/Ti 0;-1 0 0];
% - - deuxième méthode : bun = [0;1/Ti;0];
z0wi = p3i; bwn = [0;0;1];
kwi = -kRi/z0wi; bvn = [-1/Tm;0;0];
%perturbation: calcul de kv
kvqi = (xh/(xr*kcm))*(n+Tp*fs/Tr); %matrice de commandabilité
kvdi = real(kv1i); Qcn = [bun A0n*bun A0n^2*bun];
kvi = kvdi+j*kvqi;
%imposition des poles
%calcul des réponses indicielles rhon = trace(A0n);
b1i = wn*kcm*kwi/(Tp*x_sigma); p1n = rhon/3+j*rhon/3;
b0i = wn*kcm*kRi/(Tp*x_sigma); set(edit_re3,'string',num2str(real(p1n)));
bdi = xh/(x_sigma*xr*Tr); set(edit_im3,'string',num2str(imag(p1n)));
bqi = -n*wn*xh/(x_sigma*xr); p2n = conj(p1n);
- 117 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
- 118 -
Annexe
- 119 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Fig.C. 1 : demarrage_triphase_direct.mdl
Fig.C. 2 : demarrage_pwm.mdl
- 120 -
Annexe
- 121 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Fig.C. 5: synthese_vect.mdl
Fig.C. 6: mas_vect.mdl
- 122 -
Annexe
- 123 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Rég Couple
Rég. Flux
Et
Rég. Vitesse
calcul_ws
Fig.C. 8 : synthese_etat.mdl
- 124 -
Annexe
Fig.C. 9 : mas_regetat.mdl
- 125 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
- 126 -
Annexe
200
100
-100
-200
Courant statorique Is[A]
Couple électromagnétique Ce[mN]
Vitesse Ω [rad/s]
-300
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
t[s]
- 127 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
Le choix se fait par l’action sur la liste déroulante et la simulation de la stratégie choisie
« choix_strategie.m » se fait par le clic sur le bouton suivant
150
100
50
-50
0 1 2 3 4 5 6 7 8
- 128 -
Annexe
Remarque
ki
Le régulateur utilisé est ici du type PI dont la fonction de transfert s’écrit : GR ( p ) = k p + et la synthèse
p
consiste à ajuster les paramètres kp et ki afin de solliciter la performance voulue.
Réponses indicielles
1.4
Flux Φr
Couple Ce
Vitesse Ω
1.2
0.8
0.6
0.4
0.2
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
t[s]
Remarque
On a trois régulateurs de type PI pour la commande vectorielle :
- régulation du courant statorique
- régulation de flux rotorique
- régulation de vitesse
- 129 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
0.8
0.6
0.4
0.2
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
t[s]
- 130 -
Bibliographie
BIBLIOGRAPHIE
[1] H. Bühler
Electronique de réglage et de commande, traité d’électricité vol XVI, 3è édition, presses
polytechniques romandes, Lausanne 1979.
[2] H. Bühler
Conception des systèmes automatiques, complément au traité d’électricité, presses
polytechniques romandes, Lausanne, 1988.
[5] H. Bühler
Réglages échantillonnés vol 2, traitement dans l’espace d’état, presses polytechnique
romandes, Lausanne 1983.
[6] J. Chatelain
Machines électriques, Traité d’électricité vol X, presses polytechnique romandes, Lausanne
1983.
[10] P. Feller
Réglages analogiques modernes appliqués à la machine asynchrone et à la machine à
courant continu, Thèse N°548, EPFL, Lausanne 1984
[11] http://www.accreteil.fr/Lycees/94/larmandnogent/enseigne/ressources/techno/
bourse%20cours/COURS/Machine%20asynchrone%20scalaire.pdf
- 131 -
Contribution à l’étude des différentes stratégies de commande d’une machine asynchrone
[15] G. Buche,
Commande vectorielle de machine asynchrone en environnement temps réel Matlab -
Simulink, Mémoire d’ingéniorat CNAM, Centre régional associé de Grenoble (CUEFA),
2001
[16] H. Bühler
Réglages échantillonnés vol 1, traitement par la transformation en Z, presses polytechnique
romandes, Lausanne 1983.
[18] Matlab Reference Guide / Simulink User’Guide. The MathWorks, Inc. 1992-1993
- 132 -
CONTRIBUTION A L’ETUDE DES DIFFERENTES STRATEGIES DE COMMANDE
D’UNE MACHINE ASYNCHRONE
RESUME
La machine asynchrone ne cesse pas d’être exploitée pour le système de réglage et commande
dans les installations industrielles. La méthode classique utilisant des régulateurs standards de
type PID permet d’avoir une bonne performance mais limitée pour commander cette machine
car le système est multi-variables et fortement couplé. Différentes stratégies ont été élaborées
pour commander ce type de machine. La commande scalaire qui est basée sur le
fonctionnement tension sur fréquence constant a permis d’ajouter une boucle
d’asservissement pour la vitesse de la machine, la commande vectorielle qui est basée sur la
théorie du champ orienté a été élaborée pour commander séparément les deux composantes du
courant statorique, le réglage d’état qui est basé sur la méthode d’assignation des pôles a été
élaboré pour imposer le comportement dynamique et d’intervenir directement sur les
grandeurs d’entrées du système. Les résultats obtenus ont montré que pour une faible
variation (moins de 5%) de la vitesse, la commande scalaire semble suffisant pour
l’asservissement du système, la performance s’améliore lorsqu’on applique à la machine le
principe de la commande vectorielle, le couple de la machine est bien contrôlé dans tous les
régimes de fonctionnement, une variation de 100% du couple électromagnétique n’entraîne
qu’une déviation de 2% du flux rotorique, ce qui marque le découplage entre ces deux
variables. Des réponses indicielles avec un premier dépassement de moins de 10% ont été
obtenues avec un gain de 5fois de rapidité par rapport à la commande scalaire, par le choix
adéquat des pôles du système en boucle fermée. Les trois méthodes proposées contribuent
bien selon la performance exigée par le cahier de charges, à la résolution du problème de
commande d’une machine asynchrone. Bien que ces approches ont permis, d’un coté, de
simplifier la dynamique de la machine asynchrone en séparant ses deux comportements
(magnétique et mécanique) et, d’un autre coté, d’implémenter des commandes performantes,
elles se sont avérées inefficaces devant la variation des paramètres et l’incertitude des valeurs
des variables d’état (mesurées, estimées ou observées), en particulier, dans le cas des régimes
transitoires et des régimes dégradés. Le recours aux méthodes d’adaptation classiques, pour
compenser l’effet de ces variations et de ces incertitudes peut s’avérer une solution
prometteuse.
Mots-clés :
- machine asynchrone
- auto-pilotage
- V/f constant
- champ orienté
- compensation par retour d’état
- Matlab/Simulink