Como Criar um Carro Controlado por Bluetooth Com Arduino: Um Guia Passo a Passo
13 min
- Passo 1: Definir o Sistema Mecânico e Elétrico do Carro Bluetooth Arduino
- Passo 2: Selecionar Componentes para a PCBA do Carro RC Arduino Nano
- Passo 3: Projetar o Esquemático para um Carro RC Bluetooth Arduino Nano
- Passo 4: Projetar o Layout da PCB para uma PCBA de Carro Robô de Duas Rodas
- Passo 5: Fabricar o Carro RC Bluetooth Arduino Nano Usando Serviços de PCBA
- Passo 6: Programar o Arduino Nano para Controle do Carro Bluetooth
- Passo 7: Controlar o Carro RC Bluetooth Arduino com um Telefone Celular
- Passo 8: Testar e Otimizar o Carro Controlado por Bluetooth Arduino
- FAQ sobre o Carro Controlado por Bluetooth Arduino
- Conclusão: Carro Controlado por Bluetooth Arduino
Este tutorial aborda a engenharia completa e a implementação de um carro RC Bluetooth de duas rodas com um módulo Arduino Nano em uma PCBA (Conjunto de Placa de Circuito Impresso) especialmente projetada.
Embora muitos entusiastas comecem conectando motores e módulos Bluetooth com cabos jumper em uma protoboard, essa abordagem é propensa a desconexões e ruído de sinal. Este guia aprimora esse processo ensinando como projetar uma placa-mãe profissional.
Principais Características do Design
- Controlador: Arduino Nano usado como módulo plug-in.
- Sistema de Acionamento: Dois motores de engrenagem DC N20 configurados para acionamento diferencial.
- Driver: Driver TB6612FNG de montagem em superfície baseado em MOSFET.
- Fabricação: Serviço de montagem de PCB profissionalmente montado (JLCPCB PCBA) para confiabilidade.
Passo 1: Definir o Sistema Mecânico e Elétrico do Carro Bluetooth Arduino
Escolha um Sistema de Acionamento Diferencial
Este robô não depende de direção Ackerman (como em carros reais), mas sim emprega um sistema de Acionamento Diferencial.
Mecanismo: A configuração compreende dois potentes motores DC N20 que podem operar de forma independente e estão localizados em lados opostos do chassi.
Lógica de Direção:
- Para Frente: Ambos os motores giram em velocidade igual (VL = VR).
- Curva: Um motor gira mais devagar que o outro (VL ≠ VR).
- Esquerda: VL > VR
- Direita: VL < VR
- Curva de Raio Zero: Os motores giram em direções opostas.
Estabilidade: Um rodízio esférico passivo frontal é usado como terceiro ponto de contato, reduzindo o atrito e permitindo movimento omnidirecional.
Planeje a Arquitetura Elétrica
A unidade central de processamento neste projeto é o Arduino Nano. Ele controla os três subsistemas mais importantes:
- Comunicação: Lida com a transmissão de dados através do UART proveniente do módulo Bluetooth HC-05.
- Controle do Motor: Produz sinais PWM para o driver do motor.
- Distribuição de Energia: Regula a tensão da bateria para a lógica e o acionamento do motor.
Crucialmente, o CI do Driver do Motor isola os pinos lógicos sensíveis do Arduino Nano dos picos de tensão indutiva elevados gerados pelos motores N20.
Se a tensão da bateria for menor que a tensão nominal do motor, um conversor boost (como o XL6009) é usado para fornecer a tensão total aos motores através do driver do motor, aumentando assim a tensão da bateria.
| Subsistema | Componente | Finalidade |
|---|---|---|
| Controlador | Arduino Nano | Lógica de controle do motor e Bluetooth |
| Motores | Motores DC N20 (x2) | Atuação de acionamento diferencial |
| Módulo Boost | XL6009 | Elevador de tensão da bateria |
| Comunicação | HC-05 | Interface UART Bluetooth |
| Suporte | Rodízio esférico | Estabilidade mecânica frontal |
Tabela de visão geral do sistema para o carro RC Bluetooth Arduino Nano com motores N20
Passo 2: Selecionar Componentes para a PCBA do Carro RC Arduino Nano
A seleção dos componentes corretos é necessária para construir uma Montagem de PCB de robô.
| Componente | Qtd. | Notas |
|---|---|---|
| Arduino Nano | 1 | Módulo plug-in (Montagem por Header) |
| Motor DC N20 | 2 | Acionamento diferencial (6V-12V) |
| TB6612FNG | 1 | Driver de Ponte H Dupla (SMD) |
| XL6009 | 1 | Módulo Conversor Boost |
| Interruptor Rocker | 1 | Interruptor de Corte para alternar (Ligar/Desligar) |
| HC-05 | 1 | Módulo UART Bluetooth |
| Rodízio esférico | 1 | Suporte passivo frontal |
Tabela BOM para a PCBA do carro RC Bluetooth Arduino Nano usando motores N20
Passo 3: Projetar o Esquemático para um Carro RC Bluetooth Arduino Nano
Alocar Pinos do Arduino Nano para Controle de Motor e Bluetooth
O mapeamento adequado dos pinos é essencial para a geração de PWM.
| Função | Pino do Arduino Nano |
|---|---|
| PWM do Motor A | D5 (Compatível com PWM) |
| Direção do Motor A | D6, D7 |
| PWM do Motor B | D10 (Compatível com PWM) |
| Direção do Motor B | D8, D9 |
| Bluetooth RX | D0 (RX) |
| Bluetooth TX | D1 (TX) |
Alocação de pinos do Arduino Nano para periféricos
Conecte o Driver do Motor para Acionamento Diferencial
- Entradas: AIN1/AIN2 conectam-se aos pinos Nano D6/D7 para controlar a direção (Horário/Anti-Horário) e BIN1/BIN2 conectam-se aos pinos Nano D8/D9 para controlar a direção (Horário/Anti-Horário).
- Velocidade: PWMA/PWMB conectam-se aos pinos Nano D5/D10.
- Standby: O pino STBY no TB6612FNG deve ser colocado em nível ALTO (para VCC) ou controlado por um GPIO para habilitar os motores.
- Saídas: AO1, AO2 e BO1, BO2 conectam-se aos terminais do Motor N20.
Conecte o Módulo Bluetooth para Controle Móvel
Conexão Direta: HC-05 TX para Arduino RX e HC-05 RX para Arduino TX.

Diagrama esquemático do carro RC de duas rodas controlado por Bluetooth Arduino com motores N20
Passo 4: Projetar o Layout da PCB para uma PCBA de Carro Robô de Duas Rodas
Otimizar o Posicionamento dos Componentes
- Centralização: O suporte da bateria deve ser posicionado exatamente no meio para que o peso seja distribuído uniformemente.
- Posicionamento na Borda: Posicione o módulo HC-05 na borda da placa. Os planos de cobre da PCB não devem se estender sob a área da antena Bluetooth para evitar blindagem do sinal.
- Conectores: Coloque os terminais JST ou de parafuso para os motores N20 exatamente onde os motores serão montados fisicamente para manter os comprimentos dos fios curtos.
Roteie com Segurança as Trilhas de Alta Corrente do Motor na PCB (Dicas Críticas de Design)
Dicas de Design
- Largura da Trilha: As trilhas que transportam energia para os motores N20 devem ser largas. Use uma calculadora (IPC-2221) para dimensioná-las para pelo menos 1A de corrente contínua (tipicamente ≥ 20 mil).
- Área do Loop: Mantenha os caminhos de Ida e Retorno para a corrente do motor próximos para minimizar a indutância e o ruído irradiado.
- Preenchimento de GND: Um preenchimento de GND em uma PCB preenche áreas abertas com cobre conectado ao terra, estabelecendo um plano de terra sólido. Funciona pela redução de EMI, fornecendo caminhos de retorno de sinal de baixa impedância, ajudando a dissipar calor e estabilizando tensões, o que é muito importante para a qualidade do sinal e produção em designs complicados ou de alta velocidade.

- Layout da PCB para o carro RC Bluetooth Arduino otimizado para PCBA
Passo 5: Fabricar o Carro RC Bluetooth Arduino Nano Usando Serviços de PCBA
Gerar Arquivos Gerber, BOM e Pick-and-Place para PCBA
Para usar o serviço de PCBA da JLCPCB, você deve exportar três arquivos específicos do seu software EDA (como EasyEDA ou KiCad):
- Arquivos Gerber: Definem o cobre físico, a máscara de solda e os furos de perfuração.
- BOM (Lista de Materiais): Uma lista de componentes contendo os Números de Peça do Fabricante.
- CPL (Lista de Posicionamento de Componentes): As coordenadas (X, Y, Rotação) para a máquina Pick-and-Place SMT.

- Visualizador Gerber 2D da JLCPCB mostrando as trilhas da placa do carro RC Arduino sem componentes.

- Pré-visualização 3D mostrando componentes montados
Encomendar PCB e PCBA para o Carro Controlado por Bluetooth Arduino na JLCPCB
Após terminar seu design, você pode encomendar sua placa montada executando os seguintes passos:
- Enviar Gerbers: Acesse o site da JLCPCB e envie o arquivo zip contendo seus Gerbers. O visualizador mostrará o design da sua placa.

- Página de pedido da JLCPCB, mostrando a visualização Gerber da PCB nua
- Selecionar PCBA: Alterne a opção "Montagem de PCB" para LIGADO.

- Pedido PCBA lado superior econômico
- Escolher Configurações: Escolha "Montar lado superior" (porque nossos componentes SMT estão na parte superior) e então decida entre montagem "Econômica" ou "Padrão" de acordo com sua complexidade.
- Enviar BOM e CPL: Envie os arquivos específicos gerados no passo anterior.
- Seleção de Peças: Seus itens da BOM serão comparados com a Biblioteca de Peças da JLCPCB pelo sistema. Verifique as peças e observe a pré-visualização 3D para confirmar a orientação correta.
- Pedido: Prossiga para o checkout. Os engenheiros da JLCPCB conduzirão uma revisão DFM (Design para Manufaturabilidade) antes do início da produção.
Por que a PCBA Torna um Carro Controlado por Bluetooth Arduino Mais Confiável
- Imunidade a Ruído: Um plano de terra sólido na PCB reduz drasticamente a interferência eletromagnética em comparação com fios jumper, que atuam como antenas.
- Resistência à Vibração: Os motores N20 criam vibração. As juntas de solda em uma PCB são muito mais duráveis do que as conexões de protoboard.
| Métrica | Protoboard | PCBA |
|---|---|---|
| Imunidade a Ruído | Ruim | Alta |
| Durabilidade | Baixa (fios soltam facilmente) | Alta (Soldada) |
| Repetibilidade | Baixa | Excelente |
Comparação entre fiação em protoboard vs PCBA para carro robô Arduino Nano
Passo 6: Programar o Arduino Nano para Controle do Carro Bluetooth
Estruturar o Firmware do Arduino para Controle do Carro RC
O código deve receber os caracteres da porta serial e transformá-los em velocidades diferenciais do motor.
#include <SoftwareSerial.h>
// Motor Pins
const int enA = 5;
const int inA1 = 6;
const int inA2 = 7;
const int enB = 10;
const int inB1 = 8;
const int inB2 = 9;
// ... define other pins
void setup() {
Serial.begin(9600); // Bluetooth baud rate
pinMode(enA, OUTPUT);
pinMode(inA1, OUTPUT);
pinMode(inA2, OUTPUT);
pinMode(enB, OUTPUT);
pinMode(inB1, OUTPUT);
pinMode(inB2, OUTPUT);
}
void loop(){
//your logic here
}Implementar Lógica de Acionamento Diferencial
- Virar à Esquerda: O robô vira à esquerda quando o Motor Direito gira para frente na velocidade X, enquanto o Motor Esquerdo está parado ou gira para trás.
Lógica do Código:analogWrite(RightMotor, 200); analogWrite(LeftMotor, 0); - Virar à Direita: O motor esquerdo gira para frente na velocidade X, e o motor direito está parado ou gira para trás.
Lógica do Código:analogWrite(RightMotor, 0); analogWrite(LeftMotor, 200); - Pivô (Raio Zero): Lógica do Código: Motor Esquerdo PARA TRÁS, Motor Direito PARA FRENTE.
Adicionar Lógica de Segurança para Prevenir Falhas no Motor e na Energia
Dicas de Segurança
- À Prova de Falhas: Em caso de desconexão do link Bluetooth, a ação do robô deve ser interrompida, não continuar dirigindo.
- Rampa de Aceleração: O salto imediato de 0 para 255 PWM deve ser evitado para preservar as engrenagens plásticas nos motores N20.
Passo 7: Controlar o Carro RC Bluetooth Arduino com um Telefone Celular
Emparelhar o Módulo Bluetooth com um Dispositivo Móvel
- Ligue a PCBA. O LED do HC-05 deve piscar rapidamente (Modo de Emparelhamento).
- Abra as configurações de Bluetooth no seu telefone e emparelhe com "HC-05".
- PIN: Normalmente 1234 ou 0000.
Controlar o Carro RC Usando um Aplicativo Móvel Bluetooth
Use um aplicativo padrão "Bluetooth Electronics".
- Configuração: Mapeie o botão de seta "Para Frente" para enviar o caractere 'F'. Mapeie "Esquerda" para 'L', etc.
- Fluxo de Dados: Aplicativo do Telefone → Bluetooth → HC-05 → Arduino Nano (RX) → Lógica do Firmware → TB6612FNG → Motores.
Passo 8: Testar e Otimizar o Carro Controlado por Bluetooth Arduino
Realizar Testes Elétricos na PCBA e nos Motores
Importante
Antes de conectar o Nano:
- Alimente a placa com a bateria.
- Verificação com Multímetro: Meça o pino de 5V nos headers. Deve ser um 5V estável. Se for 7V+, não conecte o Nano!
- Corrente de Bloqueio: Garanta que as trilhas de calor não superaquecerão fazendo medições de corrente enquanto as rodas estão seguras.
Validar o Desempenho Mecânico
- Equilíbrio: Garanta que a bateria esteja centralizada para que o robô não tombe.
- Arraste do Rodízio: Em caso de arraste do rodízio esférico frontal, lubrifique-o ou altere a altura dos suportes do motor N20.
FAQ sobre o Carro Controlado por Bluetooth Arduino
P: E se o driver TB6612FNG estiver fora de estoque na biblioteca?
A JLCPCB tem uma grande biblioteca, mas a disponibilidade de estoque muda. Você pode usar a opção "Pré-encomenda" para reservar peças para você, ou verificar se o driver L9110S listado como compatível atenderá às suas necessidades de tensão como substituto.
P: Preciso encomendar um estêncil?
Se você estiver usando o serviço de PCBA, não. A JLCPCB cria seu próprio estêncil interno para aplicar pasta de solda. Você só precisa de um estêncil se planeja soldar as peças SMT você mesmo em casa.
P: Qual é a diferença entre peças "Básicas" e "Estendidas" na JLCPCB?
Peças "Básicas" já estão carregadas nos alimentadores e não têm taxa de mão de obra. Peças "Estendidas" exigem uma pequena taxa de mão de obra para carregar os rolos. Para economizar dinheiro, filtre por peças "Básicas" ao selecionar resistores, capacitores e LEDs.
P: Posso alimentar esta PCBA com uma bateria padrão de 9V?
Nós fortemente desaconselhamos isso. Baterias padrão de 9V (PP3) não podem fornecer a alta corrente necessária para os motores. Use um pack de baterias Li-ion 2S (7,4V) ou 6 pilhas AA para um desempenho confiável.
P: Por que o upload do código falha quando o módulo Bluetooth está conectado?
O HC-05 utiliza os mesmos pinos Serial de hardware (D0/D1) que se conectam à porta USB. Durante o upload de sketches para o Arduino Nano, você terá que desconectar o módulo Bluetooth ou, alternativamente, pode adicionar um interruptor à linha de energia do módulo Bluetooth.
Conclusão: Carro Controlado por Bluetooth Arduino
Este tutorial demonstra como um simples carro RC Bluetooth de duas rodas com Arduino Nano pode ser elevado a um projeto de engenharia confiável usando PCBA.
O uso de fabricação profissional em vez de protoboards garante que seu robô possa fornecer energia perfeita aos motores N20, ter comunicação Bluetooth ininterrupta e ser mecanicamente forte o suficiente para lidar com aplicações do mundo real.
Pronto para começar sua construção?
Exporte seus arquivos Gerber e inicie seu projeto de PCBA Arduino Nano com o portal PCBA da JLCPCB para ter sua placa personalizada fabricada hoje!Começar