Servos
motores possuem um grande diferencial em relação a motores de passo e
motores DC, enquanto com o primeiro você pode determinar a velocidade e
precisão, por exemplo, determinando a quantidade de passos que o motor
deve dar em um terminado tempo, no segundo somente é possível, sem
auxilio de qualquer sensor, determinar a velocidade variando-se a tensão
aplicada a ele.
Em
um servo motor é possível determinar a posição, em graus, com excelente
precisão. O servo motor verifica a posição atual e desloca-se para a
posição desejada dependendo da atuação que se faz no sistema.
Servo motores podem ser adquiridos com facilidade hoje em dia e são muito empregados em modelismo.
Normalmente
servos motores não fazem o giro completo, mantendo-se apenas em cerca
de 180 graus, mas com excelente precisão de posicionamento.
Bom, vamos ao que interessa, como fazer um servo motor funcionar controlado por um Arduino? Precisaremos de:
01 servo motor, no meu caso um mini servo comprado na Tato Equipamentos Eletrônicos (www.tato.ind.br).
03 fios para ligar o servo motor ao Arduino
01 Arduino
Note
que no meu servo as cores dos fios são preto, vermelho e branco. O fio
vermelho é a alimentação (+5V) o preto é o terra (GND) e o branco o
sinal (controle).
Ligue o fio vermelho ao pino 5V do Arduino:
Ligue o fio preto ao pino GND do Arduino:
Agora o fio branco ao pino digital 3 do Arduino:
Simples assim! Agora vamos ao código:
Esse código é bastante simples e fácil de entender:
Primeiro importamos a biblioteca pré-existente no Arduino que provê os controles para servos motores em #include.
Com
Servo motor; criamos a variável motor como sendo do tipo Servo,
pré-definido na biblioteca Servo.h (na verdade é um objeto do tipo
Servo, já que essa biblioteca na verdade é uma classe).
Com motor.attach(3); informamos que o cabo de sinal do servo motor estará ligado ao pino digital 3 do Arduino.
Em motor.write(160); dizemos ao motor para posicionar-se em 160 graus.
Depois
disso aguardamos um segundo e posicionamos o motor na posição de 16
graus, esperamos mais um segundo e começamos tudo de novo.
Com
o código abaixo fazemos com que o servo motor movimente-se por toda sua
faixa de giro incrementando os graus de posicionamento e depois
decrementando:
Com
esses conhecimentos é possível colocar em prática muitas ideias! Como
movimentar pequenos robos com rodas, braços mecânicos, garras robóticas,
câmeras e o que mais a imaginação permitir.
0 comentários:
Postar um comentário