Varra um servo
Parte da seção Saídas do Journey de Arduino da Coddy. Lição 21 de 24.
arm.write() salta diretamente para um ângulo. Para mover o braço lentamente, passe por cada ângulo intermediário com um loop for, esperando um instante em cada um:
for (int angle = 0; angle <= 180; angle++) {
arm.write(angle);
delay(15);
}Aqui, o contador se chama angle, e <= 180 inclui o próprio 180. 181 passos de 15 ms levam cerca de 2,7 segundos.
Para voltar, conte de trás para frente. angle-- subtrai 1 a cada rodada, e o loop continua enquanto o ângulo ainda for 0 ou mais:
for (int angle = 180; angle >= 0; angle--) {
arm.write(angle);
delay(15);
}Coloque os dois loops em loop() e o braço vai para frente e para trás como um limpador de para-brisa.
Desafio
FácilFaça o servo no pino 9 girar repetidamente de um lado para o outro:
- de 0 até 180 graus, um grau por vez, aguardando 15 ms em cada posição
- depois, volte até 0 da mesma maneira
Pressione Run e depois Check.
Experimente você mesmo
#include <Servo.h>
Servo arm;
void setup() {
arm.attach(9);
}
void loop() {
// gire de 0 até 180, um grau a cada 15 ms
// depois volte até 0
}
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Saídas
Pratique por conta própria: Playground de Arduino