No projeto de hoje, mostraremos como fazer um robô limpador integrando o Magician, Arduino, Shield 4Power, Sensor de Proximidade de Curto Alcance e uma Vassourinha Mágica!
Materiais Utilizados:
1x Plataforma Robótica Magician
1x Sensor de Proximidade Infravermelho de Curto Alcance
1. Plataforma Robótica Magician
Efetue a montagem da Plataforma Robótica Magician, conforme o tutorial "Tutorial: Como Montar a Plataforma Robótica Magician".
2. Arduino + Shield 4Power
Para entender como utilizar o Shield 4Power, consulte o tutorial "Tutorial Como Utilizar o Shield S4Power com Arduino"
3. Vassoura Mágica + Servo Motor
Fizemos uma adaptação na Vassoura Mágica, utilizando um Servo Motor Adaptado para girar 360º, ligando o servo motor ao seu eixo, veja as imagens abaixo:
4. Sensor de Proximidade Infravermelho de Curto Alcance
Foi feita uma adaptação utilizando uma fita dupla face para prender o sensor acima da vassoura mágica, conforme a figura abaixo:
5. As conexões
5.1) Faça as conexões dos Motores no Shield 4Power:
5.2) Faça as conexões do Servo Motor no Shield 4Power:
5.3) Faça as conexões do Sensor Infravermelho no Shield 4Power:
5.4) Faça as Conexões da Bateria no Shield 4Power:
5.5) Montagem Pronta:
OBS: Foi feita uma adaptação para utilizar o pino +5V para alimentar o Sensor e o Servo Motor.
5.5.1) Visão Frontal
5.5.2) Visão Lateral Direita
5.5.3) Visão Traseira
5.5.4) Visão Lateral Esquerda
5.5.5) Visão em Perspectiva
6. O Sketch
#include <S4power.h> //Inclui biblioteca do Shield S4Power
#include <Servo.h> //Inclui biblioteca do Servo Motor
S4Power s4power;
Servo limp; //Atribui "limp" para utilizar-se os comandos do servo motor
int count1 = -20; //Velocidade para Motor 1 (M3)
int count2 = -30; //Velocidade para Motor 2 (M4)
int sensorValue; //Variável para pegar o valor do Sensor de Proximidade
int vass = 9; //Atribui 9 para vass, onde o pino D9 (Digital 9) será utilizado para controlar o servo motor da vassoura
void setup()
{
pinMode(vass, OUTPUT); //Atribui o pino D9 (vass) como saída
s4power.Config(); //Configura o s4power
limp.attach(vass); //Vincula o pino D9 ao servo motor
limp.write (-180); //Faz com que o servo motor gire sempre para o mesmo sentido
}
void loop()
{
sensorValue = analogRead(A5); //Lê o valor do sensor pelo pino A5 (Analogic Input 5) e guarda na variável
if (sensorValue > 230) //Se o valor do sensor for maior que 230 (Próximo a Parede) ele executa a girada
{
s4power.M3.speed = 0; //Para Motor 1
s4power.M4.speed = 0; //Para Motor 2
s4power.M3.Update(); //Atualiza Motor 1
s4power.M4.Update(); //Atualiza Motor 2
delay(500); //Espera por 0,5 segundo
s4power.M3.speed = -40; //Motor 1 Gira em Sentido Horário
s4power.M4.speed = 40; //Motor 2 Gira em Sentido Anti-Horário
s4power.M3.Update(); //Atualiza Motor 1
s4power.M4.Update(); //Atualiza Motor 2
delay(500); //Gira por 0,5 segundo
}
else
{
s4power.M3.speed = count1; //Motor 1 Para Frente
s4power.M4.speed = count2; //Motor 2 Para Frente
s4power.M3.Update(); //Atualiza Motor 1
s4power.M4.Update(); //Atualiza Motor 2
}
}
-Referências:
http://labdegaragem.com/profiles/blogs/tutorial-como-montar-plataforma-robotica-magician
http://labdegaragem.com/profiles/blogs/tutorial-como-utilizar-o-shield-4power-com-arduino
http://labdegaragem.com/profiles/blogs/projeto-de-sensor-de-proximidade-utilizando-infravermelho
Comentar
Parabéns! Bem legal.
Muito bacana! Parabéns :)
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)