Se você precisa utilizar motores maiores e mais potentes, mas só tem um ESP32, este projeto é para você. Neste tutorial, nós da Smart Kits vamos te mostrar como controlar motores NEMA com ESP32 utilizando drivers DRV8825 e uma fonte externa.
Você vai aprender a fazer as conexões corretamente, ajustar a corrente dos motores e programar o controle de velocidade e sentido de rotação.
Componentes Utilizados
Para montar o projeto, você vai precisar dos seguintes itens:
- 1x ESP32
- 2x Driver DRV8825
- 2x Motores de passo NEMA
- 2x Capacitores 100µF
- 1x Fonte 12V 5A
- 1x Placa Perfurada de Fibra de Vidro 9x15cm
- Solda em fio
- Estação de solda
- Barras de pinos fêmea
- Cabos jumpers
As conexões foram fixadas com solda para garantir maior segurança e estabilidade no funcionamento.
Como Funciona o Controle de Motores NEMA
Motores de passo NEMA não podem ser ligados diretamente ao ESP32. Para isso, você utiliza o driver DRV8825, que é responsável por:
- controlar a corrente do motor
- definir direção de rotação
- controlar velocidade por pulsos
O ESP32 envia sinais digitais para o driver, que por sua vez controla o motor com a potência necessária vinda da fonte externa.
Ajuste do Vref (Corrente do Motor)
Antes de ligar o sistema, você precisa ajustar o Vref no driver DRV8825.
A fórmula utilizada é:
Vref = Corrente ÷ 2

Cada motor possui uma corrente específica, então consulte o datasheet do seu modelo.
Use o potenciômetro do driver para ajustar esse valor.
Importante:
- faça esse ajuste com o sistema desligado
- evite encostar em partes energizadas
- um ajuste incorreto pode danificar o motor ou o driver
Após o ajuste, você ja pode fazer a conexão de controle como na foto abaixo:

Ligações do Circuito
Driver DRV8825
- VMOT → fonte 12V
- GND → GND da fonte e do ESP32
- STEP → pino digital do ESP32
- DIR → pino digital do ESP32
Capacitor
- ligado entre VMOT e GND (muito importante para estabilidade)
Motores NEMA
- conectados diretamente nos terminais do driver
ESP32
- responsável apenas pelo controle lógico (STEP e DIR)
Para dois motores, basta repetir as conexões utilizando outros pinos do ESP32.
Passo a Passo de Montagem
1. Prepare a placa
Fixe os drivers, conectores e componentes na placa perfurada.
2. Faça as soldas
Garanta conexões firmes para evitar falhas e mau contato.
3. Ajuste o Vref
Antes de energizar, ajuste a corrente de cada driver.
4. Conecte a fonte externa
Utilize a fonte de 12V para alimentar os motores.
5. Conecte o ESP32
Somente os sinais de controle devem vir do ESP32.
Programação no ESP32
Com o ESP32 fora do circuito, envie o seguinte código:
#include <AccelStepper.h>// Motor 1
#define STEP1 18
#define DIR1 19// Motor 2
#define STEP2 25
#define DIR2 26AccelStepper motor1(1, STEP1, DIR1);
AccelStepper motor2(1, STEP2, DIR2);void setup() { motor1.setMaxSpeed(1000);
motor2.setMaxSpeed(1000);}void loop() { unsigned long tempo = millis(); motor1.setSpeed(400);
motor2.setSpeed(400); // 5 segundos para frente
while (millis() - tempo < 5000) {
motor1.runSpeed();
motor2.runSpeed();
} tempo = millis(); motor1.setSpeed(-200);
motor2.setSpeed(-200); // 5 segundos para trás
while (millis() - tempo < 5000) {
motor1.runSpeed();
motor2.runSpeed();
}
}
Se quiser utilizar apenas um motor, basta remover as partes relacionadas ao motor2.
Como Funciona o Código
O código utiliza a biblioteca AccelStepper, que facilita o controle dos motores.
Você consegue:
- definir velocidade
- inverter sentido de rotação
- controlar tempo de execução
O motor gira por 5 segundos em um sentido e depois 5 segundos no sentido contrário.
Possíveis Melhorias
Você pode expandir o projeto adicionando:
- controle por botão
- interface via Bluetooth ou Wi-Fi
- controle de posição (não só velocidade)
- integração com sistemas automatizados
O Que Você Aprende com Este Projeto
Ao montar esse sistema de motores NEMA com ESP32, você desenvolve habilidades como:
- controle de motores de passo
- uso de drivers de potência
- alimentação com fonte externa
- programação com controle de tempo e velocidade
Cuidados Importantes
- A fonte utiliza 220V, risco real de choque elétrico
- Evite energizar o ESP32 antes da fonte
- Cuidado durante a soldagem para evitar queimaduras
- Evite curto entre pinos
- Sempre teste continuidade antes de ligar o sistema
Conclusão
Agora você tem um guia completo para controlar motores NEMA utilizando ESP32 e drivers DRV8825. Esse tipo de projeto é muito utilizado em automação, impressoras 3D e CNC, sendo um ótimo passo para projetos mais avançados.
A partir daqui, você pode adaptar o código e o circuito para atender diferentes aplicações e criar sistemas cada vez mais robustos.
Projeto realizado por Emanuel Sousa – Graduando em Engenharia Mecatrônica


Deixe um comentário