Olá Garagistas! No tutorial de hoje mostraremos como utilizar o Dual Motor Shield. E como demonstração controlaremos o Zumo pelas teclas 8 (Frente), 2 (Trás), 4 (Esquerda), e 6 (Direita) do teclado, através do Serial Monitor.
Material Utilizados:
1x Cabo USB A para B - 1,80 metros
1. Dual Motor Shield
Imagem 1 - Dual Motor Shield
O Dual Motor Shield é um Shield para Arduino muito prático, e com a biblioteca desenvolvida pelo Laboratório de Garagem sua utilização fica bem mais simples, pois com apenas um comando você define o sentido e velocidade de até 2 motores DC. Muito prático, é uma excelente solução para quem quer controlar plataformas robóticas como o Zumo, o Magician, e a Esteira Tamiya.
2. Biblioteca DualMotor.h
A biblioteca desenvolvida para o Shield é composta por poucas funções:
DualMotor dualmotor; //Instância a DualMotor
dualmotor.M1move(velocidade, sentido); //Aciona o motor 1, velocidade (0 a 255) e sentido (0 - Horário ou 1 - Anti-horário)
dualmotor.M2move(velocidade, sentido); //Aciona o motor 2, velocidade (0 a 255) e sentido (0 - Horário ou 1 - Anti-horário)
dualmotor.M1parar(); //Para o motor 1
dualmotor.M2parar(); //Para o motor 2
A biblioteca pode ser baixada clicando aqui. Basta você extrair a pasta e copia-la para dentro da pasta libraries do Arduino.
3. Ligações no Shield
As conexões dos motores nos bornes do Dual Motor Shield, influenciam na hora em que você for desenvolver o seu Sketch, na demonstração foram feitas as ligações conforme a imagem abaixo:
Imagem 2 - Conexões dos motor no Dual Motor Shield
Nessa montagem, quando se girar o motor no sentido 1, o respectivo motor irá mover o Zumo para frente, e quando se girar no sentido 0, o mesmo irá mover o Zumo para trás. Lembrando que, para a plataforma robótica girar, virar, ou fazer curva, é necessário que se pare um motor e rotacione o outro, ou que se gire um motor em um sentido e o outro em sentido oposto, na tabela abaixo você irá encontrar a configuração de cada um dos motores e a resposta para a movimentação da plataforma Zumo, para a montagem da imagem acima:
Tabela 1 - Resposta em movimentação dos motores
OBS: Para que a plataforma robótica fique parada, é necessário executar a função dualmotor.Mnparar();.
4. O Sketch
Este sketch pode ser encontrado dentro da biblioteca DualMotor.h, ou se preferir copie o cole o código dentro da Arduino IDE.
OBS: É necessário que você tenha copiado a pasta DualMotor para dentro da pasta libraries.
//=======================================================
//=======================================================
#include <DualMotor.h> //Inclui a biblioteca DualMotor.h
DualMotor dualmotor; //Instância a DualMotor
char letra; //Cria uma variável char para armazenamento dos caraceteres lidos
void setup()
{
Serial.begin(9600); //Inicia a Serial com um Baud Rate de 9600bps
dualmotor.M1parar(); //Para o motor1
dualmotor.M2parar(); //Para o motor2
}
void loop()
{
if (Serial.available() > 0) //Se algo for recebido na serial
{
letra = Serial.read(); //Armazena o que foi recebido na variável letra
switch(letra) //Entra no switch para a comparação do caractere recebido
{
case '8'://FRENTE //Caso o caracter for igual a 8, vai pra FRENTE
dualmotor.M1move(255,1);
dualmotor.M2move(255,1);
break; //Sai do switch
case '4'://ESQUERDA //Caso o caracter for igual a 4, vira pra ESQUERDA
dualmotor.M1move(255,0);
dualmotor.M2move(255,1);
break; //Sai do switch
case '2'://TRÁS //Caso o caracter for igual a 2, vai pra TRAS
dualmotor.M1move(255,0);
dualmotor.M2move(255,0);
break; //Sai do switch
case '6'://DIREITA //Caso o caracter for igual a 6, vira pra senEITA
dualmotor.M1move(255,1);
dualmotor.M2move(255,0);
break; //Sai do switch
}
delay(250); //Delay de 250 milissegundos
dualmotor.M1parar(); //Para o motor 1
dualmotor.M2parar(); //Para o motor 2
letra = 0;//Limpa a variável letra
}
}
//=======================================================
//=======================================================
Bem, então é isso Garagistas! Esperamos que tenham gostado deste Tutorial, até a próxima!
=D
Referências:
http://labdegaragem.com/profiles/blogs/tutorial-driver-para-motores...
Comentar
onde está o esquema elétrico da placa
como utilizar nesse caso um controle remoto para controlar o carrinho? existe algum código para isso? eu possuo um módulo receptor de infravermelho
Olá a todos do LabGar, gostaria de saber depois que coloco a shield dual motor quais portas que ficam livre para usar com sensores no caso estou usando arduino uno r3.
Desde já agradeço pela atenção.
Adriano.
E no caso de querer controlar por um joystick usb?
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por
Você precisa ser um membro de Laboratorio de Garagem (arduino, eletrônica, robotica, hacking) para adicionar comentários!
Entrar em Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)