Controle de Motores NEMA com ESP32 e DRV8825: Tutorial Completo

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:

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

Post navigation

Deixe um comentário

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Monitoramento de Rotação e Movimento Linear com Arduino

Boas práticas com placas de desenvolvimento

Projeto Sonar com Arduino Uno: Guia Completo

Smart Kits participa da Feira do Conhecimento 2025 com destaque em inovação e robótica