Servo motor é um motor com controle automático de posição, velocidade e torque, que utiliza realimentação para ajustar seu movimento.
Normalmente ele opera em voltagens de 4.8v-6v.
Normalmente gira entre 0° e 180°.
Pode mover para ângulos específicos com alta exatidão.
Contém motor, redutor (engrenagens), circuito de controle e sensor de posição (potenciômetro).
Ele é muito utilizado para movimentos de precisão como movimentação de braços robóticos, controle de câmeras.
Neste projeto você criará um circuito que faz o uso de um Servo Motor com o Arduino.
Para a criação deste circuito serão necessários os seguintes componentes:
Para montar o circuito, visualize na imagem a seguir como conectar os componentes entre a placa Arduino e a breadboard.
Uma vez criado o circuito, use o código fonte a seguir no Arduino IDE para fazer o upload dele na placa Arduino e assim ver o resultado do circuito em funcionamento.
/**
* Código do curso Magos do Arduino para controlar um servo motor
* com o Arduino.
*
* Controle de um servo motor com o Arduino. Um potenciômetro é utilizado
* para controlar a posição do servo motor (entre 0 e 180 graus).
*
* (c) Copyright KazaleIT
* @kazaleitoficial no YouTube
**/
#include <Servo.h>
#define PINO_POTENCIOMETRO A0
#define PINO_SERVO 9
// cria um objeto para controlar o servo motor
Servo servoMotor;
void setup() {
// registra o pino onde está conectado o servo motor
servoMotor.attach(PINO_SERVO);
}
void loop() {
// obtém o valor corrente do potenciômetro (valor entre 0 e 1023)
int valorPot = analogRead(PINO_POTENCIOMETRO);
// mapeia o valor do potenciômetro para ser
// compatível com o servo (valor entre 0 e 180)
int posicaoServo = map(valorPot, 0, 1023, 0, 180);
// move o servo para a posição desejada
servoMotor.write(posicaoServo);
delay(15);
}