Telechargé par ouzakri Houcein

12 PWM

publicité
Arduino : PWM
V01, 13/08/2018
PWM: Pulse Width Modulation
• Le WPM est un signal très connu en électronique. Il
permet par exemple de commander un servomoteur.
• Le principe est de faire varier (moduler) la durer / la
largeur (width) d’une impulsion de 5v (Pulse).
• C’est pourquoi on parle de Pulse Width Modulation.
Rapport cyclique: c’est le rapport
en % entre le (+5v) et le (0v):
2
PWM: conversion numérique /
analogique
• Avec un signal PWM on peut commander un
composant électronique:
– Avec un rapport cyclique de 100%, le composant
voit une tension en entrée de 5v.
– Avec un rapport cyclique de 50%, le composant
voit une tension en entrée de 2.5v.
La variation du rapport cyclique, permet la
variation de la tension ( la consigne) -> Conversion
numérique / Analogique
3
PWM sur arduino uno R3
• Le microcontrôleur de
l’arduino peut générer
un signal PWM.
• Mais, on ne peut utiliser
que certaines broches:
3,5,6,9,10 ,11 et les 6
pins analogiques.
• Le rapport cyclique est
exprimé en un chiffre
entre 0 et 255 ( 50%
correspond à 127):
codage sur 8 bits.
4
AnalogueWrite
• On peut utiliser analogueWrite pour envoyer un
signal PWM.
• Il faut donner le numéro de la broche et la valeur du
rapport cyclique entre 0 et 255).
5
Exercice 1: LED RGB
• On a 3 « LED » en une seule: Red –
Green – Blue.
• On fait varier la tension sur chaque
LED.
• Les différentes proportions
permettent de générer la couleur
désirée:
Ne pas oublier 3 résistances 220 Ohm.
6
Exercice 02: Servo
• Le servo prend une impulsion
qui varie entre 1 et 2ms.
• Ceci lui permet tourner entre 0
et 180°.
• À 1.5ms le servo est à micourses.
• La fréquence est de 50Hz.
• Ces valeurs peuvent changer en
fonction des constructeurs (en
particulier le min/max)
7
<Servo.h>
• On utilise la bibliothèque servo.h pour pouvoir
commander le servo avec un PWM.
8
Exemple:
• On peut (option), préciser les limites de
fonctionnement dans la déclaration.
On peut écrire la
valeur en angle ou en
durée;
9
Câblage
• Le fil orangé comporte
le signal de commande
-> vers la pin PWM de
l’arduino.
• Alimentation 5v: Pour
un petit servo, on peut
utiliser l’arduino,
sinon, prévoir une
alimentation externe
(et mettre les masses
en commun).
10
Commander un ESC
• Un ESC prend la
même consigne
qu’un servo.
• On peut donc le
commander avec le
même principe.
• L’alimentation du
moteur est assurée
par une Lipo.
• Attention: mettre
les masse en
commun.
11
Téléchargement