Balayer avec un servo
Fait partie de la section Sorties du Journey Arduino de Coddy. Leçon 21 sur 24.
arm.write() passe directement à un angle. Pour déplacer lentement le bras, parcourez tous les angles intermédiaires avec une boucle for, en attendant un instant à chacun :
for (int angle = 0; angle <= 180; angle++) {
arm.write(angle);
delay(15);
}Ici, le compteur s’appelle angle, et <= 180 inclut 180 lui-même. 181 étapes de 15 ms prennent environ 2,7 secondes.
Pour revenir, comptez à rebours. angle-- enlève 1 à chaque tour, et la boucle s’exécute tant que l’angle est encore supérieur ou égal à 0 :
for (int angle = 180; angle >= 0; angle--) {
arm.write(angle);
delay(15);
}Placez les deux boucles dans loop() et le bras balaie d’avant en arrière comme un essuie-glace.
Défi
FacileFais balayer le servomoteur sur la broche 9, encore et encore :
- de 0 à 180 degrés, un degré à la fois, en attendant 15 ms à chaque étape
- puis redescends à 0 de la même manière
Appuie sur Run, puis sur Check.
Essayez vous-même
#include <Servo.h>
Servo arm;
void setup() {
arm.attach(9);
}
void loop() {
// balayer de 0 à 180, à raison d’un degré toutes les 15 ms
// puis redescendre à 0
}
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