Controlando servo com potenciômetro

Este é um exemplo básico que demonstra como controlar um Servo motor com o uso de um potenciômetro e o Arduino. As variações no eixo do potenciômetro serão proporcionais ao ângulo com o qual o servo se move. Isto é possível devido a utilização da função map().

Dificuldade:

Montagem:

Programação:


Material Utilizado:

Arduino Uno

Cabo USB A para B

Protoboard 830

Servo motor pequeno

Potenciômetro 10kΩ

Alguns Jumpers

A Montagem

 

O Sketch

Não esqueça de importar a biblioteca para o Arduino: Biblioteca_Servo

#define pino_pot 0

#include <Servo.h>  

Servo
servoldg; // cria o objeto para controlar o servo  

void
setup()
{    
servoldg.attach(9); // conecta o servo ao pino 9
}   

void
loop()
{    
servoldg.write(map(analogRead(pino_pot), 0, 1023, 0, 179));   
// analogRead (): Faz a leitura analógica no pino do potenciômetro (retorna com um valor de 0 a 1023   
// map (): Muda a escala da leitura de 0~1023 para 0~179 (converte em angulo para o servo)   
//servoldg.write(): Lê o valor do angulo dado pelo map() e gera o pulso para movimentar o servo.
       

delay(20); // espera para o servo ter tempo de se movimentar