Motor DC: O Guia Completo — Como Funciona, Drivers, PWM e Ponte H
Guia completo do motor de corrente contínua: como funciona por dentro, tipos, especificações que importam, por que precisa de driver, controle de velocidade por PWM, ponte H, comparativo de drivers e solução de problemas.
Se o seu projeto precisa se mover, em algum lugar dele vai ter um motor DC. Carrinhos, robôs, ventoinhas, bombas, portões, brinquedos — todos dependem desse componente que transforma eletricidade em movimento de rotação.
Ligar um motor é fácil: encostou os dois fios na pilha, ele gira. O difícil é fazer isso do jeito certo: sem queimar o Arduino, controlando a velocidade com precisão e conseguindo girar nos dois sentidos. É exatamente isso que você vai dominar neste guia.
⚙️ O que é e como funciona por dentro
O motor DC (corrente contínua) converte energia elétrica em energia mecânica usando um princípio simples: um condutor com corrente, dentro de um campo magnético, sofre uma força. É a força de Lorentz — a mesma que faz o alto-falante vibrar.
Por dentro, um motor DC com escovas tem quatro peças essenciais:
- Estator (ímãs permanentes): a parte fixa, que cria o campo magnético.
- Rotor (armadura): bobinas que giram; ao receber corrente, viram eletroímãs.
- Comutador: um anel dividido que inverte a corrente na bobina a cada meia volta.
- Escovas: contatos (geralmente de carvão) que levam a corrente da parte fixa para o rotor girante.
O papel do comutador é o segredo do giro contínuo: sem ele, a bobina daria meia volta, ficaria alinhada com o campo e pararia. Ao inverter a corrente no momento certo, o comutador mantém o rotor sempre sendo 'empurrado' na mesma direção — voltinha após voltinha.
1) Inverta a polaridade (+ e −) e ele gira para o lado contrário.
2) Reduza a tensão média e ele gira mais devagar (com menos torque).
🔩 Os tipos de motor DC
Nem todo motor DC é igual. Conhecer os tipos evita comprar o errado:
- Barato e simples de controlar
- Basta tensão nos dois fios
- Escovas desgastam com o tempo
- Gera faísca e ruído elétrico
- Ideal para hobby e projetos maker
- Mais eficiente e durável
- Não tem escovas para gastar
- Precisa de ESC (driver especial)
- Mais caro
- Usado em drones, ferramentas e HDs
Além disso, você encontra variações muito úteis:
📊 As especificações que realmente importam
Ao olhar a ficha de um motor, esses são os números que decidem o projeto:
| Especificação | O que significa | Por que importa |
|---|---|---|
| Tensão nominal | A tensão de trabalho (3V, 6V, 12V…) | Abaixo dela ele fica fraco; muito acima, esquenta e reduz a vida |
| Corrente livre | Consumo girando sem carga | Serve de referência do consumo em repouso |
| Corrente de partida (stall) | Consumo com o eixo travado — o valor máximo | É ela que dimensiona o driver e a fonte |
| RPM | Rotações por minuto (sem carga) | Define o quão rápido seu robô/mecanismo anda |
| Torque | Força de rotação (kgf·cm ou N·m) | Define se ele consegue mover o peso do projeto |
| Redução | Relação da caixa (ex.: 1:48) | Mais redução = menos RPM, mais torque |
🔌 Por que NUNCA ligar o motor direto no Arduino
Esse é o erro nº 1 de quem está começando — e ele custa uma placa queimada. Um pino digital do Arduino entrega, com folga, cerca de 20 a 40 mA. Um motorzinho comum puxa de 200 mA a mais de 1 A na partida.
E tem um segundo perigo, menos óbvio: o motor é uma bobina. Quando você corta a corrente, o campo magnético colapsa e gera um pico de tensão reverso (a chamada força contra-eletromotriz) que pode destruir o transistor ou o microcontrolador.
🎚️ Controlando a VELOCIDADE — PWM
A forma intuitiva de reduzir a velocidade seria baixar a tensão com um resistor. Não faça isso: o resistor transforma a energia em calor, desperdiça bateria e ainda rouba torque do motor.
A técnica correta é o PWM (modulação por largura de pulso). Em vez de reduzir a tensão, o driver liga e desliga o motor centenas ou milhares de vezes por segundo, sempre na tensão cheia. Como o motor tem inércia (mecânica e elétrica), ele não consegue acompanhar esse liga-desliga e responde à média.
No Arduino, isso é o analogWrite() num pino PWM, com valores de 0 a 255.
🔄 Controlando o SENTIDO — a Ponte H
Para girar nos dois sentidos, é preciso inverter a polaridade eletronicamente. Quem faz isso é a ponte H: quatro chaves (transistores) dispostas como a letra 'H', com o motor no meio.
Fechando as chaves de uma diagonal, a corrente atravessa o motor num sentido; fechando a diagonal oposta, ela vai no sentido contrário. Combinando com o PWM, você controla sentido e velocidade ao mesmo tempo.
| IN1 | IN2 | Resultado |
|---|---|---|
| 1 | 0 | Gira para frente |
| 0 | 1 | Gira para trás |
| 0 | 0 | Roda livre (desliga e desacelera sozinho) |
| 1 | 1 | Freio (curto no motor, para rápido) |
🧰 Qual driver usar? Comparativo
O driver certo depende da corrente do seu motor e de quanta eficiência você precisa:
| Driver | Corrente típica | Sentido | Observação |
|---|---|---|---|
| Transistor / MOSFET | depende do componente | Só 1 sentido | Mais barato; ótimo para ventoinha e bomba |
| L298N | ~2 A por canal | Dois sentidos | Clássico, mas perde ~2 V e esquenta |
| L293D | ~600 mA por canal | Dois sentidos | Só para motores bem pequenos |
| DRV8833 | ~1,5 A por canal | Dois sentidos | MOSFET: eficiente, pouca perda, compacto |
| TB6612FNG | ~1,2 A (pico 3 A) | Dois sentidos | Excelente custo-benefício, moderno |
| BTS7960 | até ~43 A | Dois sentidos | Para motores grandes e cargas pesadas |
🧮 Exemplo prático: dimensionando o conjunto
📖 Robô com 2 motores de 6V
Ficha do motor: 6 V, corrente livre 120 mA, corrente de stall 1,1 A. São 2 motores.
1) Driver: pico total = 2 × 1,1 A = 2,2 A. Com margem de 2×, procure algo que entregue ~2 A por canal — a L298N (2 A/canal) atende, e a TB6612 é uma opção mais eficiente.
2) Fonte/bateria: precisa sustentar o pico sem 'afundar' a tensão. Um pack de pilhas fraco derruba a tensão e reinicia o Arduino.
3) Ligação: alimentação dos motores separada da lógica, com GND comum, PWM no Enable e os pinos IN para o sentido.
🎯 Onde você já viu um motor DC
- Robótica: carrinhos, seguidores de linha, braços e esteiras.
- Automotivo: vidro elétrico, limpador de para-brisa, ventilador do radiador.
- Casa: ventoinhas (coolers), secador, batedeira, aspirador e brinquedos.
- Ferramentas: furadeiras e parafusadeiras a bateria.
✅ Como escolher o motor certo
- Tensão: escolha compatível com sua bateria (6 V, 12 V…). Alimentar muito abaixo da nominal deixa o motor sem força.
- Torque x RPM: precisa de força (subir rampa, mover peso)? Vá de gearmotor com boa redução. Precisa de velocidade? Menos redução.
- Corrente de stall: anote esse número — ele define driver e fonte.
- Precisão: se precisar saber quanto girou, escolha um modelo com encoder.
- Mecânica: confira o eixo (diâmetro, formato) e a fixação — a roda precisa encaixar!
🛠️ Problemas comuns (e como resolver)
| Sintoma | Causa provável | Solução |
|---|---|---|
| Motor não gira | PWM muito baixo ou fonte fraca | Aumente o duty; teste com fonte/bateria firme |
| Arduino reinicia ao ligar o motor | Queda de tensão no pico de partida | Alimentação separada para os motores + GND comum |
| Driver esquentando muito | Corrente acima do suportado | Driver maior, dissipador ou motor mais leve |
| Gira só num sentido | Ligação da ponte H ou pino IN errado | Revise IN1/IN2 e o Enable |
| Ruído/travamentos aleatórios | Interferência (EMI) das escovas | Capacitores de 100 nF nos terminais do motor; fios curtos e trançados |
| Chiado agudo | Frequência do PWM audível | Aumente o PWM para acima de 20 kHz |
🚀 Conclusão
O motor DC é simples de girar e poderoso quando bem controlado. Guarde o essencial: ele nunca vai direto no Arduino; a velocidade se controla com PWM; o sentido, com ponte H; e o número que dimensiona tudo é a corrente de stall.
Com esse trio — motor certo, driver com folga e alimentação firme — seu projeto sai do papel e ganha movimento de verdade. E lembre: eletrônica se aprende fazendo. Monte, meça, erre e ajuste!
Ficou com alguma dúvida ou quer indicação de motor para o seu projeto? Deixe nos comentários — a Mamute Eletrônica está aqui para ajudar. 🦣⚡
Mamute Eletrônica · Motores, Drivers e Robótica · Rua Vitória, 125 — Santa Efigênia/SP · mamuteeletronica.com.br
Para montar o que você acabou de ler
Motor sozinho não gira sob controle: a ponte H inverte o sentido e a fonte tira a carga do Arduino.