Vous êtes sur la page 1sur 11

Etude de cas Rose 2010

PWM ET PONTS EN H
Romain Bichet, Julie Estivie, Etienne Molto et Flavia Tovo
1
Rose 2010 PWM et ponts en H
Table des mati`eres
1 PWM 3
1.1 Principe general . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.1 Interet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.2 Application . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.3 Principe de fonctionnement . . . . . . . . . . . . . . . . . 3
1.2 Application aux STM32 . . . . . . . . . . . . . . . . . . . . . . . 5
2 Les ponts en H 6
2.1 Pour quoi lutiliser ? . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2 Comment le pont en H fonctionne-t-il ? . . . . . . . . . . . . . . . 6
2.3 Fonctionnalites additionnelles . . . . . . . . . . . . . . . . . . . . 7
2.3.1 Ajout de diodes de roue libre . . . . . . . . . . . . . . . . 7
3 Pilotage dun pont en H `a laide de la PWM 8
3.1 Locked antiphase . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.2 Introduction de dead-time . . . . . . . . . . . . . . . . . . . . . . 8
3.3 Sign magnitude . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.4 Phase correct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Le 30 mars 2010 2
Rose 2010 PWM et ponts en H
1 PWM
La modulation de largeur dimpulsion (Pulse Width Modulation en anglais)
est une methode permettant de generer des signaux analogiques continus `a laide
de syst`emes en fonctionnement tout ou rien.
1.1 Principe general
1.1.1 Interet
Linteret du PWM est de pouvoir generer un signal continu `a partir dun
syst`eme fonctionnant en tout ou rien. Le principe est dutiliser le ltre passe-
bas naturel des syst`emes (par exemple la persistance retinienne de loeil humain,
linertie dun moteur). Ainsi, `a partir dune succession detats discrets pendant
un temps T, on peut obtenir une valeur continue moyenne pendant ce temps T.
1.1.2 Application
1er exemple : la led
On veut modier la luminosite dune led. Sur une periode T, on la branche 50%
du temps `a VCC et 50% du temps `a la masse. Si la periode T est susamment
petite (ici, on doit avoir T 50ms), lobservateur naura pas limpression que le
led sallume et seteint, mais que globalement, elle eclaire moins que si elle etait
tout le temps branchee `a VCC. Ainsi, avec une led tricolore rouge-vert-bleu on
pourra generer nimporte quelle couleur en jouant sur lintensite de chaque led.
Figure 1 Schema electrique dune led
2`eme exemple : le moteur
Pour controler la vitesse de rotation dun moteur, on peut utiliser un PWM.
1.1.3 Principe de fonctionnement
Deux donnees sont importantes lorsquon veut faire du PWM : la periode
T et le duty cycle d. Le duty cycle est le rapport du temps t pendant lequel
le syst`eme est `a letat haut sur la periode. On a : d =
t
T
. Ainsi, si lon a un
syst`eme qui peut generer un signal `a 0 et un signal `a VCC, pour generer un
signal continu constant `a
V CC
5
, on prendra un duty cycle egal `a 0,20. Il faut
bien s ur veiller `a prendre une periode susamment courte pour que la frequence
Le 30 mars 2010 3
Rose 2010 PWM et ponts en H
de fonctionnement du PWM soit superieure `a la frequence de coupure du ltre
passe-bas naturel du syst`eme utilise. Il est aussi possible de generer un signal
variable, en faisant varier le duty cycle au cours du temps, comme le montre la
gure ci-dessous :
Figure 2 Un signal et son PWM
En rose, on peut voir le signal eectivement genere par le syst`eme. En vert,
on peut voir le signal per cu. On voit bien que lorsque la valeur du signal vert
est proche de VCC, le duty cycle est presque egal `a 1, et il est presque egal `a 0
lorsque la valeur du signal per cu est proche de 0.
Inversement, on veut pouvoir obtenir le signal vert `a partir dun PWM. Pour
trouver comment generer le PWM adequat, on peut utiliser un comparateur
simple rampe. La tension `a generer est comparee `a une rampe de periode T (la
periode du PWM) variant de 0 `a VCC. Lorsque la rampe est en-dessous du
signal `a generer, la tension en sortie du PWM doit etre `a VCC et lorsque le
rampe est au-dessus du PWM, la tension en sortie du PWM doit etre `a 0.
Cest ce que resume la gure ci-dessous :
Figure 3 Un signal et son PWM
Il existe deux modes de PWM :
le mode edge-aligned
A chaque debut de periode, on est dans letat haut. Le signal est donc
asymetrique par rapport au debut de la periode.
le mode center-aligned
Au contraire au debut dune periode on est une fois dans letat haut et la
Le 30 mars 2010 4
Rose 2010 PWM et ponts en H
Figure 4 Le mode edge-aligned
fois dapr`es dans letat bas. Le signal a donc lavantage detre symetrique
par rapport au debut de la periode.
Figure 5 Le mode center-aligned
1.2 Application aux STM32
Certains micro-controleurs STM32 poss`edent des timers avec une fonction-
nalite PWM. Pour la mettre en place il sut de congurer certains registres.
Par exemple, si lon veut congurer le channel Y du timer X (broche Z) en
PWM, il faut (pour le STM32RCT6) :
activer lhorloge des fonctions alternatives (bit 1 du registre APB2ENR)
activer lhorloge du timer X (un bit du registre APB1ENR ou APB2ENR)
congurer la broche Z en output alternate function (registre GPIOZ
CRLouGPIOZ CRH)
rentrer le prescaler du timer X (registre TIMX PSC)
rentrer la periode en nombre de cycles (registre TIMX ARR)
rentrer le duty cycle en nombre de cycles (registre TIMX CCRY )
choisir le mode 1 ou 2 du PWM (registre TIMX CCMR1ouTIMX
CCMR2)
choisir le mode edge-aligned, center-aligned (registre TIMX CR1)
Le 30 mars 2010 5
Rose 2010 PWM et ponts en H
2 Les ponts en H
Un Pont en H est un circuit electronique qui permet dappliquer un voltage
`a une charge dans 2 directions dierentes. Ce circuit est couramment utilise en
robotique et dautres applications pour permettre aux moteurs DC de tourner
dans deux sens. Le nom pont en H est vient de la position des elements de
commutation dans le circuit, places dans les quatre branches dun H.
Figure 6 Schema dun pont en H
2.1 Pour quoi lutiliser ?
Les moteurs electriques ont besoin de courants importants par rapport `a la
sortie maximale dun microcontroleur. Un moteur ne marcherait pas si on le
branchait directement `a la sortie dun microcontroleur. La premi`ere fonction du
pont en H est fournir de forts courants aux moteurs en permettant leur controle
par le microcontroleur. Une autre fonction est de pouvoir inverser la tension aux
bornes du moteur pour inverser le sens de rotation. Inverser le sens dun courant
est une tache simple dans les circuits electriques, il sut de bien placer quelques
interrupteurs. On utilise des transistors `a la place dinterrupteurs parce quun
transistor peut aussi amplier un courant et est plus facile `a controler par des
signaux numeriques ou analogiques.
2.2 Comment le pont en H fonctionne-t-il ?
Voici un tableau qui resume les conclusions :
A B C D
1 0 0 1 le moteur tourne `a droite
0 1 1 0 le moteur tourne `a gauche
0 0 0 0 le moteur tourne librement
0 1 0 1 le moteur freine
1 0 1 0 le moteur freine
Les autres congurations sont interdites.
Le 30 mars 2010 6
Rose 2010 PWM et ponts en H
Figure 7 Le moteur tourne `a droite
Figure 8 Le moteur tourne `a gauche
2.3 Fonctionnalites additionnelles
2.3.1 Ajout de diodes de roue libre
Selon le sens de polarisation, si lon coupe brutalement lalimentation du
moteur une surtension va apparatre du fait que le courant, selon la loi de Lenz,
va produire une tension V =
Ldi
dt
aux bornes du commutateur. La diode va
permettre `a ce courant de circuler car elle sera passante d`es que sa tension
directe sera atteinte. Sans cette precaution la tension va largement depasser la
tension maximale admissible par le commutateur et le detruire. Cest le meme
phenom`ene que sur une bobine de relais commandee par un transistor.
Le 30 mars 2010 7
Rose 2010 PWM et ponts en H
3 Pilotage dun pont en H `a laide de la PWM
3.1 Locked antiphase
Nous allons, dans cette partie presenter une application conjointe des deux
mecanismes presentes ci-dessus, ainsi que des adaptions necessaires `a son bon
fonctionnement. Comme nous lavons vu ci-dessus, la PWM et les ponts en H
sont tr`es adaptes au pilotage de moteurs `a courants continus, notamment parce
quils permettent une reponse proportionnelle en fonction du rapport cyclique
(tr`es pratique pour controler la vitesse dun moteur). Cependant, des particula-
rites obligent `a adapter les mecanismes. Nous allons donc passer en revue trois
facons de piloter un pont en H alimentant un moteur `a laide de PWM. La
premi`ere mani`ere de piloter un pont en H en PWM se nomme locked anti-
phase. Elle consiste simplement `a piloter les deux demi-ponts de mani`ere in-
versee. Ainsi, soit le moteur est stimule en marche avant, soit en marche arri`ere,
et ce en alternance. Avec un rapport cyclique de 100%, on obtient la commande
maximale en marche avant, 0% pour lautre sens, et 50% pour limmobilite.
Le principal defaut de ce mode de pilotage est quil peut potentiellement creer
des courts-circuits de lalimentation lors des phases commutations : le temps
necessaire `a un transistor pour passer bloquant netant pas le meme que celui
necessaire pour devenir passant, il se peut que les deux transistors du meme
demi-pont se retrouvent simultanement fermes.
3.2 Introduction de dead-time
Pour resoudre ce probl`eme, on ins`ere des temps morts lors des commuta-
tions : a chaque changement detat, on passe par une courte phase o` u le moteur
est deconnecte de la masse et de lalimentation. Ceci etant, on sassure que le
transistor precedemment passant est maintenant bloquant avant de commuter
lautre. Contrairement `a la methode precedente, celle-ci necessite la generation
de deux signaux de PWM possedant des rapports cycliques dierents tout en
gardant une synchronisation. Pour obtenir les signaux de chaque demi-pont,
on utilise un compteur capable de controler deux signaux et regle en dual-
slope (an de generer des signaux de center-aligned PWM). Les valeurs de
comparaison au compteur des deux sorties sont reglees de mani`ere `a obtenir
les deux signaux `a letat bas (transistors bloquants) pendant un court instant
`a chaque fois quun signal descend et que lautre remonte. Il est en outre in-
dispensable de mettre `a jour les deux valeurs de comparaison au compteur en
meme temps lorsque le rapport cyclique change, an de sassurer que les deux
signaux ne puissent jamais etre en meme temps dans letat haut (ce qui cree le
court-circuit).
Le 30 mars 2010 8
Rose 2010 PWM et ponts en H
Figure 9 Introduction dun dead-time
3.3 Sign magnitude
Une seconde possibilite de pilotage du pont en H est la sign magnitude :
Dans ce mode de pilotage, un seul demi-pont passe dun etat `a lautre tandis
que lautre reste ge. Ainsi, le moteur nest plus pilote `a laide dune alternance
de tension positive et negative mais positive et nulle, ou negative et nulle (le
moteur est court-circuite) selon le sens de fonctionnement du moteur voulu. Pour
changer ce sens, il sut de rentre actif le demi-pont qui etait ge et inversement.
La principale qualite de ce mode de fonctionnement est sa simplicite : il sut
dun seul signal en PWM pour piloter le pont tout entier (et de deux si lon
inclut des temps morts). De plus, lorsque le moteur est `a larret, la tension `a ces
bornes est nulle, et il ny a aucune perte par eet Joule, contrairement au mode
locked antiphase dans lequel, pour le moteur `a larret, la tension est la moitie
du temps positive et lautre moitie negative. Malheureusement, le fait quil y
ait une dissymetrie entre les deux transistors du demi-pont ge dune part et
entre les deux demi-ponts dautre part peut impliquer un chauage inegal des
composants et donc une alteration des caracteristiques de ceux-ci.
Figure 10 Les dierentes phases de la sign magnitude PWM
Le 30 mars 2010 9
Rose 2010 PWM et ponts en H
3.4 Phase correct
An de resoudre ce probl`eme dasymetrie du cycle tout en gardant la pos-
sibilite de laisser des intervalles de temps durant lesquels le moteur est court-
circuite, il est possible dutiliser la phase correct PWM. Ici, les deux demi-
ponts sont pilotes de mani`ere `a ce que lors dune periode, on passe par les
quatre etats suivants : le courant passe dans le moteur dans un sens (A), puis
on court-circuite le moteur (B), puis le courant le traverse dans lautre sens (C)
et enn on le court-circuite ` a nouveau (D). On obtient donc `a nouveau un cycle
symetrique.
Figure 11 Les dierentes phases de la phase correct PWM
Le 30 mars 2010 10
Rose 2010 PWM et ponts en H
Bibliographie
http ://www.cours.polymtl.ca/inf1995/materiel/pontH/
http ://en.wikipedia.org/wiki/H-bridge
http ://www.4qdtec.com/bridge.html
http ://www.mcmanis.com/chuck/robotics/tutorial/h-bridge/index.html
http ://www.mcmanis.com/chuck/robotics/tutorial/h-bridge/index.html
http ://fribotte.free.fr/bdtech/Drivers/DrivesPontH.html
http ://fribotte.free.fr/bdtech/variateur/variateur.html
http ://www.fourwalledcubicle.com/les/freaks/timerstutorial/Waves.png
http ://www.netrino.com/images/glossary/PWMFigure1.gif
http ://scripts.mit.edu/ orca/wiki/index.php ?title=Motor
C
ontrollers
http ://www.atmel.com/dyn/resources/prod
d
ocuments/doc8010.pdf
http ://www.netrino.com/Embedded-Systems/How-To/PWM-Pulse-Width-
Modulation
Le 30 mars 2010 11