Menu
CoddyTech

Servo e botão

Parte da seção Saídas do Journey de Arduino da Coddy. Lição 22 de 24.

O braço pode acompanhar um botão giratório em vez de uma lista fixa de ângulos. É o mesmo padrão do dimmer e do botão de tom: ler, converter, usar.

O botão giratório fornece valores de 0 a 1023 e arm.write() aceita de 0 a 180 graus, então map() converte entre eles:

int reading = analogRead(A0);
int angle = map(reading, 0, 1023, 0, 180);
arm.write(angle);

Uma leitura de 0 se torna 0 graus, 1023 se torna 180, e tudo entre esses valores fica entre eles, então o braço gira conforme o botão giratório é girado.

Imprimir o ângulo com Serial.println() mostra no monitor Serial qual número o braço está recebendo, o que ajuda quando ele não aponta para onde você espera.

challenge icon

Desafio

Fácil

Faça o servo acompanhar o botão:

  • leia o botão com analogRead(A0)
  • converta a leitura em um ângulo de 0 a 180 com map()
  • mova o braço até essa posição com arm.write() e imprima o ângulo

Pressione Run e gire o botão, depois Check.

Experimente você mesmo

#include <Servo.h>

Servo arm;

void setup() {
  arm.attach(9);
  Serial.begin(9600);
}

void loop() {

}
quiz iconTeste seus conhecimentos

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