Robô de 4 Rodas Arduino Controlado via App Dabble
Componentes e Materiais
| Componente | Quantidade |
|---|---|
| Arduino UNO | 1 |
| Protoboard (genérico) | 1 |
| Motor DC (genérico) | 4 |
| Módulo Bluetooth HC-05 | 1 |
| Fios jumpers (genéricos) | 1 |
| Driver de motor dual H-Bridge L293D (Texas Instruments) | 1 |
| Bloco terminal DC | 1 |
| Suportes de motor | 1 |
| Rodas | 1 |
Aplicativos e Serviços Online
- Arduino IDE - Para programação
- STEMpedia Dabble - App móvel para controle via Bluetooth
Sobre o Projeto
Mais um projeto, mais uma ideia de presente fora da caixa! Apresentando o robô de 4 rodas controlado pelo Dabble - simples e divertido de construir, fácil de controlar via Bluetooth usando Dabble, aplicativo móvel desenvolvido por nós. Tudo que precisa: Arduino Uno, chassi, rodas, eixos de motor, acessórios e ferramentas. Para controlar, instale Dabble na Google Play, pareie com Bluetooth; seu robô está pronto para andar!
Que melhor forma de encerrar o ano com o mesmo espírito DIY com que começou? Vamos começar!
Passo 1: Materiais Necessários
- Placa Arduino Uno
- Protoboard
- Chassi
- Suportes de motor
- Motores DC
- Rodas
- Driver de motor
- Módulo Bluetooth HC05
- Bloco terminal DC
- Bateria
- Cabos jumpers
Passo 2: Construção do Corpo
Comece virando o chassi de cabeça para baixo. Monte 4 suportes de motor usando parafusos e porcas M3. Fixe os motores DC nos suportes com porcas e parafusos M2. Prenda as rodas em cada eixo do motor DC. Vire a montagem; seu corpo está pronto.
Passo 3: Adicionando o Cérebro
O microcontrolador é o Arduino Uno. Farei todas as conexões nele, usando também protoboard para facilitar.
Passo 4: Conexões e Driver de Motor
Faça as conexões conforme figura. Usamos drivers de motor porque o Arduino Uno não fornece potência suficiente para 4 motores. Com o driver, daremos a energia necessária ao robô.
Os dois motores esquerdos são conectados em paralelo. Da mesma forma, os dois direitos. Conexões:
- Pinos Enable – Pinos Digitais 10 e 11
- VCC – Arduino 5V
- m1_dir1, m1_dir2, m2_dir1, m2_dir2 – Pinos Digitais 4, 5, 6 e 7
- VC – Bateria externa
- GND – GND do Arduino e da Bateria (conecte todos GNDs juntos)
Passo 5: Conectando Smartphone
Adicione módulo para conexão entre robô e App Dabble no Smartphone. Use módulo Bluetooth HC05. Conecte conforme figura de conexões.
Passo 6: Adicionando a Bateria
Precisamos de fonte extra de energia. Para conectar Arduino Uno à bateria, usamos Bloco Terminal DC ou Jack DC.
Passo 7: Código Arduino
Carregue o seguinte código:
/*
* Demonstra controle de robô 4 rodas Arduino usando app Dabble
* Usamos módulo gamepad em modo digital
* Mais info gamepad: https://thestempedia.com/docs/dabble/game-pad-module/
* Usamos módulo Bluetooth HC-05
* Para Arduino "UNO" use baudrate do módulo Bluetooth abaixo de 38400
*
* Conexão Bluetooth com Arduino:
* HC-05 Tx -> Arduino pino 2
* HC-05 Rx -> Arduino pino 3
*
* Escrito por Punit chotaliya, STEMpedia em 16 jan 2019
*/
#define CUSTOM_SETTINGS
#define INCLUDE_GAMEPAD_MODULE
#include <Dabble.h>
#define motor1_en 10
#define motor2_en 11
#define motor1_dir1 4
#define motor1_dir2 5
#define motor2_dir1 6
#define motor2_dir2 7
void setup() {
Serial.begin(9600);
Dabble.begin(38400); // baudrate do módulo Bluetooth
for (unsigned int i = 4; i < 8; i++) {
pinMode(i, OUTPUT);
}
pinMode(motor1_en, OUTPUT);
pinMode(motor2_en, OUTPUT);
}
void loop() {
Dabble.processInput();
if (GamePad.isUpPressed()) {
Serial.print("UP");
forward();
} else if (GamePad.isDownPressed()) {
Serial.print("DOWN");
backward();
} else if (GamePad.isLeftPressed()) {
Serial.print("Left");
left();
} else if (GamePad.isRightPressed()) {
Serial.print("Right");
right();
} else {
Serial.println("stop");
Stop();
}
}
void forward() {
analogWrite(motor1_en, 255);
analogWrite(motor2_en, 255);
digitalWrite(motor1_dir1, HIGH);
digitalWrite(motor1_dir2, LOW);
digitalWrite(motor2_dir1, HIGH);
digitalWrite(motor2_dir2, LOW);
}
void backward() {
analogWrite(motor1_en, 255);
analogWrite(motor2_en, 255);
digitalWrite(motor1_dir1, LOW);
digitalWrite(motor1_dir2, HIGH);
digitalWrite(motor2_dir1, LOW);
digitalWrite(motor2_dir2, HIGH);
}
void left() {
analogWrite(motor1_en, 255);
analogWrite(motor2_en, 255);
digitalWrite(motor1_dir1, LOW);
digitalWrite(motor1_dir2, HIGH);
digitalWrite(motor2_dir1, HIGH);
digitalWrite(motor2_dir2, LOW);
}
void right() {
analogWrite(motor1_en, 255);
analogWrite(motor2_en, 255);
digitalWrite(motor1_dir1, HIGH);
digitalWrite(motor1_dir2, LOW);
digitalWrite(motor2_dir1, LOW);
digitalWrite(motor2_dir2, HIGH);
}
void Stop() {
analogWrite(motor1_en, 0);
analogWrite(motor2_en, 0);
digitalWrite(motor1_dir1, LOW);
digitalWrite(motor1_dir2, LOW);
digitalWrite(motor2_dir1, LOW);
digitalWrite(motor2_dir2, LOW);
}
Passo 8: Funcionamento
Conecte facilmente o robô ao Smartphone usando Dabble. Antes de usar qualquer módulo, conecte o Bluetooth. Há muitos módulos no App para outras funcionalidades. Hoje usamos o módulo Gamepad.
Usaremos o conjunto esquerdo de botões:
- Cima – Mover para Frente
- Baixo – Mover para Trás
- Esquerda – Virar Esquerda
- Direita – Virar Direita
Passo 9: Conclusão
Seu robô DIY controlado por Dabble de 4 rodas está pronto para ação! Dabble faz muito mais que controlar robôs sem fio. Explore mais!
Código
robot.ino(sketch principal)- Biblioteca evive (download necessário)
Esquemáticos
Diagrama de conexões disponível nos arquivos do projeto.
Processo de manufatura
- Construa um Robô Raspberry Pi Controlado por Bluetooth com Feedback de Áudio
- Construa um Robô de Streaming de Vídeo Controlado por Internet com Arduino e Raspberry Pi
- Construa Robô Raspberry Pi Controlado por Wi-Fi com Python – Guia Passo a Passo
- Controle de Brilho de LED com PWM via Botão no Arduino Mega
- Veículo Remoto Controlado por Android com Raspberry Pi e Motor Shield
- Robô Desviador de Obstáculos com Servo: Construa com Arduino e HC-SR04
- Criar Robô Seguidor de Linha Autônomo com Arduino UNO
- Braço Robótico 6 GDL Controlado por Nunchuk com Arduino Mega
- Construa um Robô Controlado por Voz com Arduino Nano
- MobBob: Construa Seu Próprio Robô Arduino, Controlado via Smartphone Android