Variateur de Vitesse Pour Moteur Monophasé
Variateur de Vitesse Pour Moteur Monophasé
Variateur de Vitesse Pour Moteur Monophasé
Objectifs
Comprendre l’utilité de la fonction MikroC Button
Comprendre le fonctionnement d’un thyristor
Savoir utiliser un thyristor comme variateur de vitesse
Et autres astuces.
Fonction Button()
Syntaxe
unsigned short Button(unsigned short *port, unsigned short pin, unsigned short time,
unsigned short active_state);
unsigned short *port: Le pointeur du port (Exemple : &PORTA, &PORTB, &PORTC, etc)
unsigned short pin : Le numéro du pin pour lequel le bouton est connecté. Le numéro
commence de 0 à 7
unsigned short time : Le temps de rebonds estimé en milliseconde
unsigned short active_state : Le type de logique d’activation du pin. Il peut être
niveau bas (0) ou niveau haut. Dans le cas de la logique positive, la valeur sera (1).
Note : Logique positive : L’état initial est « 0 »du pin, il sera égal à « 1 »
lorsqu’on appuis sur le bouton. Logique négative : L’état initial du pin est
égal à « 1 », il sera mise à zéro lorsqu’on appuie sur le bouton. Les deux
logiques sont complémentaires.
La fonction retourne « 255 » lorsque l’état du port est actif pour le durée donnée, « 0 » dans
le cas échéant.
Exemple
// Détection de la logique positive dans le pin « 2 », 10ms
if (Button(&PORTB, 2, 10, 1))
{
Etat=1 ;
}
else
{
Etat=0 ;
}
Fonctionnement
Le mini projet consiste de varier la vitesse d’un moteur asynchrone monophasé ou un moteur
à courant continu en utilisant la technique PWM. En effet, on peut varier la valeur moyenne
ou la valeur efficace (dans le cas d’une tension AC) en modulant la tension d’alimentation à
la borne de la charge. La particularité de notre application sera l’utilisation d’un composant
de puissance le thyristor. Le thyristor est semblable à une diode commandée d’une part,
d’autre part sa grande puissance. Le thyristor peut supporter des tensions importantes
(plusieurs centaines ou milliers de volts) et courant important (plusieurs centaines ou milliers
d’ampères) contrairement aux transistors. Le thyristor en revanche est limité par son
fréquence de fonctionnement, relativement faible de l’ordre de dizaines voir centaines de Hz.
Ci-dessus le schéma de principe du projet.
Partie commande
Elle est constituée essentiellement de deux boutons poussoirs BP1 et BP2 avec une
résistance de pull-up chacun de 10k. Les signaux IN1 et IN2 sont à 0V, ils passent à « 1 »
lorsqu’on appuis manuellement sur les boutons (IN1= « 1 » ou IN2= « 1 »). Les deux entrées
sont ensuite branchées avec les pins 0 et 1 du port A du microcontrôleur.
Bouton BP1 : Lorsqu’on appuie sur ce dernier, on incrémente le rapport cyclique d’un pas. La
valeur du pas est ajustable par programme. Il faut bien noter que le PWM ont on dispose est
d’une résolution 8 bits, autrement dit on peut avoir 256 valeurs possibles du rapport
cyclique. La valeur initiale est égale à 128 (50% ou un signal carré), lorsqu’on appuie sur BP1
on augmente le rapport, lorsque on arrive à 255 on commence à zéro
Bouton BP2 : Lorsqu’on appuie sur ce dernier, on décrémente le rapport cyclique d’un pas.
Lorsqu’on arrive à zéro on recommence à 255. Nous avons intégrer une temporisation de
quelques ms entre les cycles (incrémentation ou décrémentation) afin d’ajuster le rapport
Partie puissance
La partie puissance est constituée d’une source de courant à base du transistor bipolaire
2N2222 et le thyristor U1. On injecte un courant à la gâchette du thyristor modulé (PWM)
d’une valeur de l’ordre de 50mA ajustable par le potentiomètre RV1. Le thyristor conduit
lorsque le courant passe au niveau haut (PWM=5V), le thyristor reste conduit tant durant
l’alternance positive ou partie de cette dernière en fonction de l’angle d’amorçage, puis
passe de l’état saturé à l’état bloqué durant l’alternance négative d’une façon naturelle.
Autrement dit, le thyristor n’a pas besoin d’être commandé pour passer de l’état conduit à
l’état bloqué. Il faut bien noter, une fois que le thyristor est amorcé, il le reste tant que la
tension entre l’anode et la cathode ne soit pas au-dessous d’une imite, qu’on a supposé nulle
dans notre cas (le thyristor reste bloqué durant l’alternance négative). En résumé, on peut
ajuster la valeur efficace de la tension à la borne du thyristor en utilisant un signal PWM
adéquat. Ci-dessous des exemples des signaux à la borne du moteur pour diverses valeurs
des rapports cycliques :
Programme MikroC
#include <built_in.h>
void main() {
// Start PWM
PWM1_Start();
PWM2_Start();
// Port A en entrée
TRISA=0xFF;
pwm_val=pwm_val+pwm_step;
// Affectation valeurs
PWM1_Set_Duty(pwm_val);
PWM2_Set_Duty(pwm_val);
// Tempo attente
delay_ms(10);
}
if (Button(&PORTA, 1, 1, 1))
{
pwm_val=pwm_val-pwm_step;
PWM1_Set_Duty(pwm_val);
PWM2_Set_Duty(pwm_val);
delay_ms(10);
}
}
}