Robô com ESP32 Controlado por Joystick de PS3
Um robô montado com ESP32 e ponte H L298N, controlado sem fio por um joystick de PlayStation 3, usando a biblioteca PS3Controller.
Visão geral
A ideia deste projeto é simples: usar um controle de PS3 para comandar diretamente um robô montado com ESP32, sem precisar de aplicativo nenhum no celular. O ESP32 recebe os comandos do joystick por Bluetooth e aciona os motores através de uma ponte H L298N.
Materiais necessários
Itens usados nesta montagem.
- 1 ESP32
- 1 ponte H L298N
- 2 motores DC
- 1 controle de PS3 (original ou compatível)
- Fios de conexão
- Fonte de alimentação (bateria)
Ligações do hardware
Pinos do ESP32 para o motor direito: GPIO 16 e 17. Pinos do ESP32 para o motor esquerdo: GPIO 18 e 19. Conecte os motores à ponte H e alimente corretamente o módulo e os motores.
Instalação da biblioteca PS3Controller
- Acesse o repositório: github.com/jvpernis/esp32-ps3
- Clique em "Code" e depois em "Download ZIP".
- No Arduino IDE, vá em Sketch, Incluir Biblioteca, Adicionar Biblioteca .ZIP...
- Selecione o ZIP baixado para instalar.
Código para descobrir o MAC do ESP32
Antes de parear o controle, é preciso saber o endereço MAC do Bluetooth do seu ESP32. Carregue este código e abra o Monitor Serial em 115200 baud para ver o endereço.
Como usar: abra o Arduino IDE e selecione sua placa ESP32. Cole o código acima. Envie para o ESP32. Abra o Monitor Serial (115200 baud). Anote o endereço MAC que aparecer, pois ele será usado no pareamento com o controle de PS3.
Pareamento do controle PS3
Execute o programa SIXAXIS Pair Tool com o joystick conectado ao PC pelo cabo USB. Troque o endereço MAC do Bluetooth que estiver aparecendo pelo MAC do ESP32 que você anotou no passo anterior. Depois, carregue o código no seu ESP32 e siga para o próximo passo.
Código de controle e movimentação
Com o controle pareado, este é o código completo que lê os botões do PS3 e movimenta o robô: X para frente, Círculo para ré, e o D-Pad ou o analógico esquerdo para virar à esquerda ou à direita. Lembre-se de trocar o MAC no Ps3.begin() pelo endereço do seu ESP32.
Pronto
Seu robô já está pronto para ser controlado pelo joystick de PS3. Divirta-se e explore novos projetos.
Quer montar o seu?
O Kit Primeiros Passos ESP32, com videoaula do Tio Rafa, está disponível na Mamute Eletrônica e é uma ótima base para começar este e outros projetos.