Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
ةــة الشعبيــة الديمقراطيــة الجزائريــهوريـجمال REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE
……………………………………………………………………….………………………………………………………………
N° d’ordre : ….
Série : ….
Mémoire
Présenté en vue de l’obtention du
Diplôme de Master en Electrotechnique
Option
Electrotechnique
Thème
Contrôle scalaire de moteur
asynchrone
à l'aide d'Arduino
Présenté par:
Guermache Hanane
Encadreur:
Lamri Louze
MINISTERE DE L’ENSEIGNEMENT SUPERIEUR ET
DE LA RECHERCHE SCIENTIFIQUE
UNIVERSITE CONSTANTINE I
Faculté des Sciences de la Technologie
Département : Electrotechnique
يـث العلمــي و البحــم العالــوزارة التعلي
1 ةـــــــــة قسنطينـــــــجامع
كلـيــة علوم التكنولوجية
.الكتروتقني:. قسم
Promotion 2013/2014
DEDICACE
Je tiens à dédier ce travail à :
Mes chers parents.
Mes frères nassime et rami.
Toute ma grande famille.
Tous mes amis Et en particulier le plus cher compagnon traîne Université asma².
Mes enseignants.
Et en fin tous ceux qui m’ont aidé et soutenu de prés ou de loin durant l’élaboration
de ce travail.
Remerciement et reconnaissance
Merci au Dieu le Glorieux le Très Haut à toutes ses grâces et de m'avoir
donné la force, l'intention et la patience pour accomplir ce travail.
Je tiens à exprimer ma profonde gratitude envers mon encadreur de
mémoire, Monsieur le Docteur lamri louze et Monsieur le Docteur
abdelmalek khessar ,pour m’avoir proposé ce travail de thèse, le dirigé
et prodigué de nombreux et judicieux conseils.
Je remercierai les membres du jury de soutenance qui me feront
l’honneur d’examiner ce travail.
Je voudrais aussi exprimer ma vive reconnaissance envers tous les
enseignants de département d’Electrotechnique et ses travailleurs ainsi
que tous ceux qui ont participés à ma formation.
Finalement je remercie tous ceux qui, de près ou de loin, ont contribué à
la réussite de ce travail : MERCI !
GUERMACHE HANANE
SOMMAIRE Introduction générale …………………………………………………1
Chapitre I : Modélisation de la machine asynchrone et étude de commande scalaire
I. Introduction………………………………………………………….3
II.2. Modélisation de la machine asynchrone………………………………………..3
II. 2. 1. Equations générales de la machine asynchrone……………………………..3
II. 3. Modèle en dq de la génératrice asynchrone……………………………………6
III. Commande scalaire………………………………………………...8
III.1. Contrôle du flux par les tensions statoriques…………………………………9
IV. Conclusion…………………………………………………………10
Chapitre II :
La carte ARDUINO UNO
II.ntroduction………………………………………………………………………....12
II.MATÉRIEL………………………………………………………………………..12
II .1 Les carte Arduino…………………………………………………………...13
II.2. Les avantages………………………………………………………………..13
II.3. Caractéristiques de la carte Arduino uno ……………………………………14
III. Timers/Counters de ATMega328……………………………………………….15
III.1. Timer/Counter 0 (comptage 8 bits)………………………………………....15
III.2. Timer/Counter 2 (comptage 8 bits)…………………………………………16
III.3. Timer/Counter 1 (comptage 16 bits) ………………………………………17
IV.LOGICIEL………………………………………………………………………..19
IV.1. Structure d'un programme…………………………………………………..19
V. Conclusion ……………………………………………………………20
Chapitre III :
Etude expérimentale
I. Introduction……………………………………………………………………….22
II. Banc d'essai ………………………………………………………………………22
III. programmation de la carte Arduino………………………………………………22
III.1. Une idée générale sur le programme………………………………………..22
III.2. Détail du programme………………………………………………………..23
III.3. Afficheur à cristaux liquides………………………………………………..23
III.4. III.5. simulation de MLI en ISIS…………………………………………24
III.5. Résultat de simulation………………………………………………………...25
IV. Réalisation électronique de la commande MLI numérique…………………….25
IV.1 Schéma du circuit électronique de la commande MLI numérique………...26
IV.2 Schéma de circuit en 3D…………………………………………………...27
IV.3. Schéma du circuit imprimé………………………………………………...28
IV.4 prototype final de l'étage d'adaptation MLI…………………………………28
V. Résultats expérimentaux…………………………………………………………29
V.1. Signal MLI expérimental……………………………………………………...29
V.2. Les tensions de sortie…………………………………………………………29
V.3. Les courants de sortie…………………………………………………………29
VI. Conclusion ……………………………………………………………………...30
Conclusion générale………………………………………………………………….31
Bibliographie…………………………………………………………...32
1
Introduction générale
Le moteur asynchrone, considéré depuis sa découverte comme l’actionneur privilégié dans
les applications de la vitesse constante, offre des avantages certains par rapport au moteur à
courant continu, tels que sa simplicité de conception, l’absence du dispositif balais collecteur,
un poids et une inertie faibles, avec un rendement excellent. Il est également apprécié pour sa
fiabilité et sa robustesse. Par contre, malgré la simplicité de sa structure mécanique, son
modèle mathématique est fort complexe (multi variable et non linéaire) et n’a pas permis
pendant longtemps le développement de commandes adéquates. La difficulté dans sa
commande réside dans le fait qu’il existe un couplage complexe entre les variables d’entrée,
les variables de sortie et les variables internes de la machine, tel que le couple et la vitesse.
Les énormes avancées technologiques ont permis de résoudre ce problème et de développer
des commandes appropriées pour ce moteur, telles que les commandes scalaire, vectorielle ou
la commande directe du couple (DTC). Quant au domaine de la commande des systèmes
dynamiques, aujourd’hui presque exclusivement à base de techniques numériques, plusieurs
nouvelles approches performantes ont trouvé des applications, et ainsi de nouveaux
algorithmes de contrôle ont été implantés grâce aux grandes puissances de calculs disponibles.
Dans notre mémoire nous avons choisi la commande scalaire pour différentes raisons, sa
simplicité, son coût réduit et elle a occupée une grande partie des applications industrielles à
vitesses variables. Seulement, les demandes aux applications plus performantes ont ouvert les
voix aux chercheurs pour réaliser des commandes appropriées qui répondent aux exigences
industrielles.
Le premier chapitre de ce mémoire est consacré à la modélisation de la machine asynchrone
en vue de sa commande. Le second chapitre décrit l'outil de commande qui est une carte
électronique à base d'un microcontrôleur ATmega328.
Finalement, le troisième chapitre consiste en la réalisation d'un banc d'essai pour la
commande en V/f de la machine asynchrone.
2
Chapitre I :
Modélisation de la machine asynchrone et étude de commande scalaire
3
I.Introduction
Le modèle de la machine asynchrone présenté traditionnellement est un modèle ''régime
permanent''. C'est à dire que la machine est supposée fonctionner en régime établi, qu'elle est
alimentée avec sous un système triphasé de valeur efficace constante et qu’elle tourne à une
vitesse constante[1].
Les grandeurs sont alors sinusoïdales et l’approche dans l’espace complexe est valable.
Les entraînements à vitesse variable ont pris cette dernière décennie une importance
considérable dans l’industrie et dans la recherche, et nécessitent des connaissances
multidisciplinaires dans le domaine du génie électrique[2].
Le contrôle de vitesse le plus simple, dit en " V/f ", permet de varier la vitesse de la
machine sur une large plage. C’est un contrôle scalaire. Les équations de la machine qui
permettent de calculer le couple et les points de fonctionnement sont basées sur le modèle en
“régime permanent“ de la machine[1].
Le moteur asynchrone comporte deux parties essentielles, l’une fixe appelée stator portant
un bobinage triphasé logé dans des encoches et relie à la source d’alimentation et l’autre
mobile (rotor) qui peut être soit bobiné soit à cage d’écureuil. Ces deux parties sont séparées
par un entrefer.
Le moteur asynchrone est une machine à courant alternatif dont la vitesse du rotor et la
vitesse du champ tournant ne sont pas égales (le rotor est toujours en retard par rapport à la
vitesse du champ statorique). La machine asynchrone est dite machine à induction car
l’énergie transférée du stator au rotor ou inversement se fait par induction
électromagnétique[3].
II. 2. Modélisation de la machine asynchrone
II. 2. 1. Equations générales de la machine asynchrone
Pour mieux simuler le comportement d'une machine asynchrone, il est nécessaire de faire
appel à un modèle précis mais suffisamment simple pour que les temps de calcul du
simulateur ne soient pas prohibitifs[3].
Pour la mise en équation de la machine, on adopte les hypothèses simplificatrices
suivantes :
4
Entrefer constant,
Assimilation de la cage à un court-circuit ayant le même nombre de phases que le
bobinage statorique,
Effet des encoches négligé,
Distribution spatiale sinusoïdale des forces magnétomotrices d'entrefer,
Les influences de l'effet de peau et des échauffements des conducteurs sont négligées.
Le modèle diphasé de la machine asynchrone présente un bon compromis entre ces
contraintes.
La machine est représentée à la Figure I. 1. par ses six enroulements dans l'espace
électrique, l'angle repère l'axe de la phase rotorique de référence AR par rapport à l'axe fixe
de la phase statorique de référence AS [3].
Figure I.1. Représentation des enroulements de la machine dans l'espace électrique[3].
En désignant par :
RS, : indices respectifs du stator et du rotor ;
ss lR , : résistance et inductance propre d'une phase statorique,
sm : coefficient de mutuelle inductance entre deux phases du stator,
m : maximum de l'inductance mutuelle entre une phase du stator et une phase du rotor,
SABCV : tensions appliquées aux trois phases statoriques,
SABCi : courants qui traversent celles-ci,
SABC : flux totaux à travers ces enroulements,
En adoptant pour le rotor les mêmes notations, au remplacement de l'indice S par l'indice R
AS
BS
CS
AR
BR
CR
SAi SAV
RAiRBi
RCi
SBV
SBi
SCV
SCi
5
Les équations générales de la machine asynchrone à cage d'écureuil dans un repère triphasé
s'écrivent[3] :
SC
SB
SA
SC
SB
SA
s
s
s
SC
SB
SA
dt
d
i
i
i
R
R
R
V
V
V
00
00
00
(I.1)
Sous forme matricielle pour les grandeurs statoriques :
SABCSABCsSABCdt
diRV (I.2)
Pour les grandeurs rotoriques :
0
0
0
00
00
00
RC
RB
RA
RC
RB
RA
r
r
r
RC
RB
RA
dt
d
i
i
i
R
R
R
V
V
V
(I.3)
Soit :
0 RABCRABCrRABCdt
diRV (I.4)
Les flux totalisés couplés avec les phases statoriques et rotoriques s'expriment sous la forme :
RABCsrRABCsRABC iMiL (I.5)
RABCrSABCrsRABC iLiM (I.6)
Avec :
sss
sss
sss
s
lmm
mlm
mml
L
rrr
rrr
rrr
r
lmm
mlm
mml
L
)cos()3
2cos()
3
2cos(
)3
2cos()cos()
3
2cos(
)3
2cos()
3
2cos()cos(
mMMt
rssr
En substituant (I.5) et (I.6) dans (I.2) et (I.4), on obtient :
6
RABCsrSABCsSABCsSABC iMiLdt
diRV (I.7)
RABCrSABCrsRABCrRABC iLiMdt
diRV (I.8)
Le système formé par les équations (I.7) et (I.8) ainsi obtenu est non linéaire et fortement
couplé[3].
II. 3. Modèle en dq de la génératrice asynchrone
Avant de penser à la commande d'un système physique donné, il faut tout d'abord
avoir un modèle assez fidèle de son comportement réel. Pour le cas de la machine asynchrone,
le modèle de PARK apporte une solution satisfaisante. Cette transformation permet d'obtenir
une représentation biphasée équivalente de la machine. Le système de coordonnées CBA ,,
est transformé en un système de coordonnées orthogonales oqd ,, (Figure. I. 2). Cette
transformation est réalisée grâce à la matrice de transformation P [3]:
2
1
2
1
2
13
4sin
3
2sinsin
3
4cos
3
2coscos
3
2
P (I. 9)
Grâce à l'orthogonalité de la matrice P , son inverse est donnée par TPP 1
.
L'angle est remplacé par s pour les grandeurs statoriques et par r pour les grandeurs
rotoriques.
Figure. I. 2. Repérage angulaire des systèmes d'axes dans l'espace électrique[3].
AS
BS
CS
AR
BR
CR
d
q
s
r
O
7
Dans le repère oqd ,, , le modèle mathématique de la machine asynchrone s'écrit :
SqsSd
SdSddt
d
dt
dRiV
(I.10)
SdsSq
SqsSqdt
d
dt
diRV
(I.11)
dt
diRV SoSosSo
(I.12)
RqrRd
RdRRddt
d
dt
diRV
(I.13)
RdrRq
RqrRqdt
d
dt
diRV
(I.14)
dt
diRV RoRorRo
(I.15)
Les relations entre les flux et les courants sont :
RdSdsSd iMiL
RqSqsSq iMiL
SosoSo iL
RdRdrRd iMiL
RqRqrRq iMiL
RoroRo iL
Le couple électromagnétique eC développé par la machine est proportionnel au produit
vectoriel du flux et du courant i et s'exprime par la relation suivante :
SR
r
e iL
MpC (I.16)
L'équation mécanique du moteur s'écrit:
(I.17)
8
III. Commande scalaire
Il existe différents types de commandes scalaires (en passant par les courants ou bien par
les tensions), néanmoins la finalité reste dans tous les cas la même.
Le principe de la commande scalaire est de maintenir
ce qui signifie garder le flux
constant.
L'avantage d'utiliser le référentiel lié au champ tournant est d'avoir des grandeurs
constantes en régime permanent. Il est alors aisé d'en faire la régulation.
On peut réécrire tout le système d’équation en introduisant la notation complexe
[4].
avec : :
D’où :
En régime permanent :
Si on néglige la chute ohmique due à , on trouve :
En peut écrire le module sous la forme suivante :
En fixant le rapport
afin de commander le moteur asynchrone comme un moteur à
courant continu à excitation séparée.
L’influence du terme n’est néfaste que pour les faibles valeurs de , la stratégie de
commande consiste donc à introduire un boost ( ) pour les valeurs faibles de .
9
Une fois le flux est contrôlé, la deuxième étape consiste à commander le couple, qui peut
être écrit sous la forme suivante :
Or pour un point de fonctionnement proche du synchronisme on peut considérer :
Le couple électromagnétique s'écrit donc :
En fait garder le rapport
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.
Le régime de défluxage est réalisable par une fonction non linéaire, de ce régime, on peut
déterminer la composante du flux statorique (de référence) à partir de la vitesse mécanique du
rotor en utilisant un capteur de vitesse.
III.1. Contrôle du flux par les tensions statoriques :
Le schéma de commande ci-dessous présente la manière de réguler la vitesse de la MAS
en reconstituant la pulsation statorique à partir de la vitesse et de la pulsation rotorique. cette
dernière qui est l'image du couple de la machine est issue du régulateur de vitesse.
La tension est calculée de manière à garantir le mode de contrôle en
de la machine[4].
10
Les tensions statoriques alimentant la machine asynchrone sont données par :
IV. Conclusion :
En effet, la première commande qui a était introduite dans l'industrie était la commande
scalaire,très répandue pour sa simplicité et son coût réduit, elle a occupée une grande partie
des applications industrielles à vitesses variables. Seulement, les demandes aux applications
plus performantes ont ouvert les voix aux chercheurs pour réaliser des commandes
appropriées qui répondent aux exigences industrielles.
MAS
Figure.I.3. Schéma de puissance.
Commande de
l’onduleur
Figure.I.4. Schéma de commande.
_ + + +
11
Chapitre II :
La carte ARDUINO UNO
12
I- Introduction
Arduino est une plate-forme de prototypage d'objets interactifs à usage créatif constituée
d'une carte électronique et d'un environnement de programmation.
Sans tout connaître ni tout comprendre de l'électronique, cet environnement matériel et
logiciel permet à l'utilisateur de formuler ses projets par l'expérimentation directe avec l'aide
de nombreuses ressources disponibles en ligne.
Pont tendu entre le monde réel et le monde numérique, Arduino permet d'étendre les
capacités de relations humain/machine ou environnement/machine.
Arduino est un projet en source ouverte : la communauté importante d'utilisateurs et de
concepteurs permet à chacun de trouver les réponses à ses questions[5].
II.MATÉRIEL
La carte Arduino repose sur un circuit intégré (un mini ordinateur appelé également
microcontrôleur) associée à des entrées et sorties qui permettent à l'utilisateur de brancher
différents types d'éléments externes :
Côté entrées, des capteurs qui collectent des informations sur leur environnement
comme la variation de température via une sonde thermique, le mouvement via un
détecteur de présence ou un accéléromètre, le contact via un bouton-poussoir, etc.
Côté sorties, des actionneurs qui agissent sur le monde physique telle une petite lampe qui
produit de la lumière, un moteur qui actionne un bras articulé, etc.
Comme le logiciel Arduino, le circuit électronique de cette plaquette est libre et ses plans sont
disponibles sur internet. On peut donc les étudier et créer des dérivés. Plusieurs constructeurs
proposent ainsi différents modèles de circuits électroniques programmables et utilisables avec
le logiciel Arduino[5].
13
II .1 Les carte arduino
Les cartes Arduino pour débuter[6] :
La carte Arduino UNO
La carte Arduino Mega2560
Les autres cartes Arduino :
La carte arduino bluetooth
La carte Arduino Mini
La carte Arduino Nano
La carte Arduino lilypad
La carte arduino Fio
La carte Arduino Pro
La carte Arduino ProMini
Anciennes cartes Arduino :
La duemilanove
La Miga
Dans notre projet, nous avons choisi la carte ARDUINO UNO
II.2. Les avantages
Pas cher !
Environnement de programmation clair et simple.
Multiplateforme : tourne sous Windows, Macintosh et Linux.
Nombreuses librairies disponibles avec diverses fonctions implémentées.
Logiciel et matériel open source et extensible.
Nombreux conseils, tutoriaux et exemples en ligne (forums, site perso etc...)[6]
14
Figure II .1 : la carte ARDUINO UNO[5]
II.3. Caractéristiques de la carte Arduino uno :
Micro contrôleur : ATmega328
Tension d'alimentation interne = 5V
tension d'alimentation (recommandée)= 7 à 12V, limites =6 à 20 V
Entrées/sorties numériques : 14 dont 6 sorties PWM
Entrées analogiques = 6
Courant max par broches E/S = 40 mA
Courant max sur sortie 3,3V = 50mA
Mémoire Flash 32 KB dont 0.5 KB utilisée par le bootloader
Mémoire SRAM 2 KB
mémoire EEPROM 1 KB
Fréquence horloge = 16 MHz
Dimensions = 68.6mm x 53.3mm[6]
15
III. Timers/Counters de ATMega328
les modules Timers/Counters sont assez complexes et chacun de ces modules peut generer
deux signaux PWM dont le rapport cyclique est facilement modifiable[7].
III.1. Timer/Counter 0 (comptage 8 bits)
C'est un module Timer/Counter avec registre de comptage 8 bits. En utilisant l'IDE
Arduino, le timer 0 est implicitement utilise par les fonctions de delay (ainsi que l'interruption
correspondante). Ce module Timer/Counter n'est donc pas utilisable directement avec la carte
ARDUINO[7].
7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 bit
TCCR0A COM0A1 COM0A0 COM0B1 COM0B0 - - WGM01 WGM00
Registres du module Timer/Counter 0A[7]
7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 bit
TCCR0B FOC0A FOC0B - - WGM02 CS02 CS01 CS00
Registres du module Timer/Counter 0B[7]
MODE WGM02 WGM01 WGM00 DESCRIPTION TOP
0 0 0 0 Normal 0xFF
1 0 0 1 PWM, Phase Corrected 0xFF
2 0 1 0 CTC OCR0A
3 0 1 1 Fast PWM 0xFF
4 1 0 0 Reserved -
5 1 0 1 Fast PWM, Phase Corrected OCR0A
6 1 1 0 Reserved -
7 1 1 1 Fast PWM OCR0A
Bits de mode générateur de signaux[7]
CS02 CS01 CS00 DESCRIPTION
0 0 0 Timer/Counter0 Disabled
0 0 1 No Prescaling
16
0 1 0 Clock / 8
0 1 1 Clock / 64
1 0 0 Clock / 256
1 0 1 Clock / 1024
1 1 0 External clock source on T0 pin, Clock on Falling edge
1 1 1 External clock source on T0 pin, Clock on rising edge
Prescalaire[7]
7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 bit
OCR0A
Sortie Compare Register[7]
III.2. Timer/Counter 2 (comptage 8 bits)
C'est un module Timer/Counter avec registre de comptage 8 bits[7].
7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 bit
TCCR2A COM2A1 COM2A0 COM2B1 COM2B0 - - WGM21 WGM20
Registres du module Timer/Counter 2A[7]
Registres du module Timer/Counter 2B[7]
MODE WGM21 WGM20 DESCRIPTION TOP
0 0 0 Normal 0xFF
1 0 1 PWM Phase Corrected
2 1 0 CTC OCR2
3 1 1 Fast PWM
Bits de mode générateur de signaux[7]
CS22 CS21 CS20 DESCRIPTION
0 0 0 Timer/Counter2 Disabled
7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 bit
TCCR2B FOC2A FOC2B - - WGM22 CS22 CS21 CS20
17
0 0 1 No Prescaling
0 1 0 Clock / 8
0 1 1 Clock / 32
1 0 0 Clock / 64
1 0 1 Clock / 128
1 1 0 Clock / 256
1 1 1 Clock / 1024
Prescalaire[7]
7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 bit
OCR2
Sortie Compare Register 2 [7]
III.3. Timer/Counter 1 (comptage 16 bits)
Le registre de comptage TCNT1, ainsi que les registres de comparaison OCR1A et
OCR1B, sont cette fois-ci sur 16 bits[7].
7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 bit
TCCR1A COM1A1 COM1A0 COM1B1 COM1B0 - - WGM11 WGM10
Registres du module Timer/Counter 1A[7]
7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 bit
TCCR1B ICNC1 ICES1 - WGM13 WGM12 CS12 CS11 CS10
Registres du module Timer/Counter 1B[7]
MODE WGM13 WGM12 WGM11 WGM10 DESCRIPTION TOP
0 0 0 0 0 Normal 0xFFFF
1 0 0 0 1 PWM, Phase Corrected, 8bit 0x00FF
2 0 0 1 0 PWM, Phase Corrected, 9bit 0x01FF
3 0 0 1 1 PWM, Phase Corrected, 10bit 0x03FF
4 0 1 0 0 CTC OCR1A
18
5 0 1 0 1 Fast PWM, 8bit 0x00FF
6 0 1 1 0 Fast PWM, 9bit 0x01FF
7 0 1 1 1 Fast PWM, 10bit 0x03FF
8 1 0 0 0 PWM, Phase and Frequency
Corrected
ICR1
9 1 0 0 1 PWM, Phase and Frequency
Corrected
OCR1A
10 1 0 1 0 PWM, Phase Correct ICR1
11 1 0 1 1 PWM, Phase Correct OCR1A
12 1 1 0 0 CTC ICR1
13 1 1 0 1 RESERVED
14 1 1 1 0 Fast PWM ICR1
15 1 1 1 1 Fast PWM OCR1A
Bits de mode générateur de signaux[7]
CS12 CS11 CS10 DESCRIPTION
0 0 0 Timer/Counter1 Disabled
0 0 1 No Prescaling
0 1 0 Clock / 8
0 1 1 Clock / 64
1 0 0 Clock / 256
1 0 1 Clock / 1024
1 1 0 External clock source on T1 pin, Clock on Falling edge
1 1 1 External clock source on T1 pin, Clock on rising edge
Prescalaire[7]
7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 bit
OCR1A
OCR1B
Sortie Compare Register[7]
19
IV.LOGICIEL
L'environnement de programmation Arduino (IDE en anglais) est une application écrite en
Java inspirée du langage Processing 2 . L'IDE permet d'écrire, de modifier un programme et
de le convertir en une série d'instructions compréhensibles pour la carte[5].
IV.1. Structure d'un programme
Le programme est lu par le micro-contrôleur de haut vers le bas.
Une variable doit être déclarée avant d'être utilisée par une fonction.
La structure minimale est constituée :
– en tête : déclaration des variables, des constantes, indication de l'utilisation de
bibliothèques etc...
– un setup (= initialisation) cette partie n'est lue qu'une seule fois, elle comprend les fonctions
devant être réalisées au démarrage (utilisation des broches en entrées ou en sortie, mise en
marche du midi etc.....)
– une loop (boucle) : cette partie est lue en boucle ! C'est ici que les fonctions sont réalisées.
En plus de cette structure minimale, on peut ajouter :
– des « sous-programmes » ou « routines » qui peuvent être appelées à tous moments dans la
boucle, très pratiquer pour réaliser des morceaux de codes répétitifs.
20
– Des « callbacks », ce sont des fonctions qui sont rappelées automatiquement depuis une
bibliothèque[5].
V.Conclusion :
Par sa simplicité d'utilisation, Arduino est utilisé dans beaucoup d'applications comme
l'électronique industrielle et embarquée, le modélisme, la domotique mais aussi dans des
domaines différents comme l'art contemporain ou le spectacle !
21
Chapitre III :
Etude expérimentale
22
I. Introduction Dans notre étude expérimentale, nous avons limité le travail par une commande scalaire
(on commande en V/f ) en boucle ouverte.
Pour varier la vitesse d'une machine asynchrone triphasée en alimentant son stator avec des
tensions et fréquence variables, à partir du réseau triphasé à tension et fréquence fixes.
II. Banc d'essai
Le prototype du banc d’essai pratique utilisé est monté au laboratoire LEC :
Figure III .1 : Fig.1 Banc d’essai expérimental
III. programmation de la carte Arduino
III.1. Une idée générale sur le programme
Nous avons programmé la carte afin de produire trois sorties en modulation de largeur
d'impulsion, et ce par comparaison de signal triangulaire avec signal sinusoïdal à fréquence
variable entre 20 Hz et 50 Hz.
Ce programme est basé sur la création d'une onde sinusoïdale avec le principe de DDS
(Direct Digital Synthesis), ce dernier génère des signaux périodiques en sélectionnant des
échantillons de données stockées en mémoire présentant une période de cette onde. La
longueur de cette onde est créé dans MATLAB ou Excel. Un potentiomètre est connecté à
l'Arduino pour contrôler la fréquence du signal sinusoïdal.
Machine
asynchrone
commandes
calaire
onduleur
23
Le réglage de la fréquence du signal triangulaire est réalisé au moyen de dispositif de
temporisation acquise par la carte Arduino.
III.2. Détail du programme
dans un premier temps nous incluons les librairies nécessaires pour le bon fonctionnement
du programme :
#include "avr/pgmspace.h"
#include "avr/io.h"
#include <LiquidCrystal.h>
Ensuite, nous déclarons toutes les variables globales. Ces variables sont toutes les
variables qui sont actives pendant toute l'exécution du programme. Dans notre cas, nous
avons besoin de stocker la fonction sinusoïdale dans la mémoire FLASH sous forme
d'échantillons dans un tableau en utilisant PROGMEM prog_uchar sine256[] . La fréquence
de découpage pour la PWM est alors déterminée par l'équation :
refclk =
N: préscalaire, : fréquence d’ARDUINO UNO (16 MHz).
Les deux autres phases sont trouvés par un décalage de 120° et 240° par rapport au premier.
Partie de ''void setup()'' où il est déterminé les pins des entrées et des sortie :
pinMode(PWM_OUT, OUTPUT), et Configuration des timers : setup_timer1();
Partie de ''void loop()'' où le programme principal qui détermine les registres des timers de
l'ARDUINO UNO en plus de réaliser les fonction suivantes:
-activer les timers 1et 2
-désactiver le timers 0
-déterminer le préscalaire qui contrôle la fréquence du signal triangulaire
- choisir le PWM mode
La fréquence du sinusoïde vient de l'extérieur à l'aide de pin d'entrée analogique A0, en
utilisant l'afficheur à cristaux liquides pour afficher la fréquence et la vitesse, enfin, la
comparaison du signal sinusoïdal et triangulaire est réalisé par le comparateur OCRxn.
III.3. Afficheur à cristaux liquides
L'afficheur à cristaux liquides (LCD) est un interface utilisé avec la plate-forme Arduino
sont généralement basés sur le pilote Hitachi ND44780, généralement identifié par 16 broches
représentés sur la figure III.2 et capable d'afficher quatre lignes de seize caractères de texte.
24
Figure III.2 : Afficheur à cristaux liquides.
III.4. Simulation sur ISIS
La figure III .3 représente la simulation de la carte ARDUINO UNO avec l'afficheur LCD
sous le logiciel proteus (ISIS).
Figure III. 3 :schéma de simulation du carte ARDUINO UNO et LCD
25
III.5. simulation de MLI en ISIS
La figure III.4 représente la simulation de trois phases de commande MLI.
Figure III.4. simulation de signal MLI de trois phases.
IV. Réalisation électronique de la commande MLI numérique
Dans cette section nous détaillons la réalisation électronique de la commande MLI
numérique réalisé dans le cadre de ce projet. Nous détaillons ainsi le schéma électronique de
layout de la carte que nous avons réalisé.
IV.1 Schéma du circuit électronique de la commande MLI numérique
Les figures III.5 et III.6 montrent la connexion des différents composants utilisés pour
réaliser notre projet. Cette carte électronique a été réalisée à l’aide du logiciel proteus.
26
figure III.5 : carte I figures III.6 :carte II
La première carte contient l'afficheur à cristaux liquides (LCD) et la carte ARDUINO
UNO et alimentée par 5V de cette dernière. Cette carte fournit aussi trois sorties MLI (0V-
5V).
La deuxième carte contient une série des composants amplifiant l'amplitude du signal de
commande de 5V (TTL) à 15V (CMOS) et offrira six signaux MLI (0V-15V).
IV.2 Schéma de circuit en 3D
La figure III.7 montre l’emplacement et la connexion des composants de la carte du circuit
de commande MLI numérique en 3D l’aide du logiciel proteus.
27
figureIII.7 la carte du circuit de commande MLI numérique en 3D
IV.3. Schéma du circuit imprimé
La figure III.8 montre le schéma final du circuit réalisé de commande MLI avant de souder
les composants
Figure III.8 Schéma du circuit imprimé
28
IV.4 prototype final de l'étage d'adaptation MLI
les figures III.9 montrent la photographie du prototype final réalisé au cours de ce projet.
figuresIII.9 montrent la photographie du prototype final réalisé
29
V. Résultats expérimentaux
V.1. Signal MLI expérimental
La figure III.10 montre le signal MLI de commande et son complément qui seront attaqués un
bras d'onduleur.
Figure III.10 Signal MLI d'une phase (haut) et son complément (bas)
V.2. Les tensions de sortie
Les figure III.11 ,III.12 et III.13 montrent les signaux expérimentaux de tensions de sortie
de différentes fréquences
Figure III.13: tension
de fréquence 20Hz
Figure III.12: tension
de fréquence 30Hz
Figure III.11: tension
de fréquence 50Hz
30
V.3. Les courants de sortie
Les figures III.14, III.15 et III.16 montrent le comportement expérimental du courant de
sortie de différentes fréquences.
VI. Conclusion :
Ce chapitre nous a permis de décrire les étapes de réalisation d'un contrôle scalaire V/f
constant dans le but d'entraîner une machine asynchrone à vitesse variable.
Figure III.14: courant
de fréquence 50Hz
Figure III.15: courant
de fréquence 30Hz
Figure III.16: courant
de fréquence 20Hz
31
Conclusion générale
Le travail présenté dans ce mémoire concerne le contrôle scalaire d’une machine
asynchrone triphasée. Il repose sur un modèle en régime permanent. Il est simple à implanter.
Le contrôle scalaire exige une puissance de calcul qui est à la portée des cartes ARDUINO
UNO et microcontrôleurs actuels pour une implémentation numérique.
Au court de notre travail, nous avons réalisé un banc d’essai pour la commande scalaire que
ce soit la carte de commande à base d’Arduino, un algorithme numérique a était implanté en
utilisant la synthèse numérique directe ainsi que une carte d’interface entre la commande et le
circuit de puissance.
Le premier chapitre de ce mémoire a été consacré à la modélisation de la machine asynchrone
en vue de sa commande. Le second chapitre a décrit l'outil de commande qui est une carte
électronique à base d'un microcontrôleur ATmega328.
Finalement, le troisième chapitre a été consacré pour la réalisation d'un banc d'essai pour la
commande en V/f de la machine asynchrone.
32
Bibliographie
[1] Cours modélisation et commande de la machine asynchrone par L.BAGHLI
[2] Contrôle de la Vitesse de la Machine Asynchrone par Différents Régulateurs utilisant la
Commande Scalaire. Etude et Réalisation
Par B. Bourahla B. Mazari ; M. Rahli
E-Mail : [email protected]; [email protected]; [email protected]
[3] Production décentralisée de l'énergie électrique : Modélisation et contrôle d'une
génératrice asynchrone auto excitée par lamri louze
[4] cours master I 2013 ;lamri louze
[5] arduino .pdf
[6] kasaco Arduino.pdf
[7] File:///D:/Timers on the ATmega168 328 - QEEWiki.htm