Servo et bouton
Fait partie de la section Sorties du Journey Arduino de Coddy. Leçon 22 sur 24.
Le bras peut suivre un bouton au lieu d’une liste fixe d’angles. C’est le même principe que pour le variateur et le bouton de réglage de la hauteur du son : lire, convertir, utiliser.
Le bouton fournit une valeur de 0 à 1023 et arm.write() prend des degrés de 0 à 180 ; map() effectue donc la conversion :
int reading = analogRead(A0);
int angle = map(reading, 0, 1023, 0, 180);
arm.write(angle);Une valeur de 0 devient 0 degré, 1023 devient 180 degrés, et toutes les valeurs intermédiaires correspondent à des angles intermédiaires ; le bras tourne donc à mesure que le bouton tourne.
Afficher l’angle avec Serial.println() permet de voir dans le moniteur série quel nombre le bras reçoit, ce qui est utile lorsqu’il ne pointe pas là où tu t’y attends.
Défi
FacileFais suivre le bouton par le servomoteur :
- lis le bouton avec
analogRead(A0) - convertis la valeur en un angle de 0 à 180 avec
map() - déplace le bras à cet angle avec
arm.write()et affiche l’angle
Appuie sur Run et tourne le bouton, puis clique sur Check.
Essayez vous-même
#include <Servo.h>
Servo arm;
void setup() {
arm.attach(9);
Serial.begin(9600);
}
void loop() {
}
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Sorties
Entraînez-vous par vous-même : Playground Arduino