Servo Motor Posição 180º 4.2kg/cm tipo Futaba S3003

Aplicação e funcionamento: O Servo motor é um pequeno motor que possibilita controle de rotação precisa, trabalhando com tensão geralmente de 5V. O responsável por fazer esta movimentação exata...

Aplicação e funcionamento:

O Servo motor é um pequeno motor que possibilita controle de rotação precisa, trabalhando com tensão geralmente de 5V. O responsável por fazer esta movimentação exata é algum tipo de controlador instalado pelo projetista, entre eles, o Arduino.

No terminal do Servo Motor de Posição existem 3 fios: Preto, Vermelho, Branco. Dos quais, o preto é alimentação negativa, ou seja, 0V, o Vermelho para alimentação com 5V e o Branco serve para receber a onda quadrada de programação que definirá o ângulo do servo, que será definido através da largura do pulso alto da onda. Vejamos a imagem exemplificativa abaixo:

servo-motor-de-posicao

O tempo entre pulsos é medido em milissegundos (ms), mas para facilitar este serviço o grupo Arduino® criou uma biblioteca para uso em servo motores, juntamente com esta biblioteca estaremos demonstrando no vídeo abaixo o funcionamento do servo em conjunto com um potenciômetro e pelo Arduino.

Teste prático:

 

Produtos utilizados no teste:

Servo Motor Posição 180º 4.2Kg/cm tipo Futaba S3003;

Arduino;

Protoboard;

Potenciômetro;

Jumpers.

Montagem Física (Hardware):

A montagem é muito simples, basta seguir os passos da imagem abaixo:

servo-motor-futaba

Funcionamento do Programa (Software):

O código utiliza a biblioteca do Arduino “Servo”, esse código transforma os valores de 0 a 180º em ondas quadrados para dar o exato ângulo desejado. Deste modo, através das portas analógicas realizaremos as leituras do potenciômetro e converteremos estes valores com a função “map”.

Código para teste:

// Controlando a posição do servo através de um potenciômetro com resistor variável;
 
#include <Servo.h> 
 
Servo myservo; // Cria o objeto servo para controlar o motor;
 
int potpin = 0; // Pino analógico utilizado para ligar o potenciômetro;
int val; // Variável para ler o valor do pino analógico;
 
void setup() 
{ 
 myservo.attach(9); // Atribui o pino 9 ao servo motor; 
} 
 
void loop() 
{ 
 val = analogRead(potpin); // Realiza a leitura do potenciômetro(valor entre 0 e 1023);
 val = map(val, 0, 1023, 0, 179); // Escala o potenciômetro para trabalhar junto ao servo (valor entre 0 e 180);
 myservo.write(val); // Define a posição do servo em relação ao valor do potenciômetro;
 delay(15); // Tempo de resposta do servo motor;
}

Conclusões:

O Servomotor Posição é um dispositivo de alta qualidade que possui um torque excelente para o seu tamanho, durante os testes apresentou bom rendimento, mostrando-se muito preciso, ideal para aeromodelismo ou projetos robóticos com variadas aplicações.

Autor: Leonardo Dalla Porta
Categorias
Arduino
Sem Comentários

Enviar Resposta

*

*

Sobre nós

Hoje a Usinainfo é um dos maiores ecommerces de Ferramentas, Peças para Eletrônica, Componentes Eletrônicos, Sensores e Arduino do Brasil, contando com uma grande diversidade de produtos na linha de eletrônica.

Sugestões

Artigos Relacionados