Mejor Control para Motores de Pasos
Este driver permite controlar motores paso a paso bipolares de hasta 2A. Tiene una limitación de corriente ajustable, protección contra sobre corriente y cinco resoluciones diferentes de microstepping. Funciona desde 8V a 35V y puede suministrar 1A por bobina sin usar ventilación forzada o un disipador. Es ampliamente utilizada con las distintas placas de control de impresoras 3D como RAMPS, SBOT o similares. Para manejar el driver solo son necesarios 2 pines, uno para la dirección de giro (DIR) y otro para dar el paso (STEP). El pin Enable debe estar conectado a Tierra (GND) para que el motor funcione y el microstepping se configura con los pines MS1, MS2 y MS3.
A4988 con Arduino para control de Motor de Pasos
1
1. Conexiones físicas
Realiza la conexión del módulo A4988 al Arduino de la siguiente manera:
Arduino | A4988 |
D4 | DIRECTION |
D5 | STEP |
GND | GND |
5V | VDD |
La conexión del A4988 al Motor de Pasos mostrada en el grafico es referencial, se tiene que verificar el orden de las fases del motor que va a utilizar.
2 | 3
2. Código
// Definir pines
const int dirPin = 4;
const int stepPin = 5;
const int stepsPerRevolution = 200; // Ajusta según tu motor
void setup() {
// Configurar pines como salida
pinMode(stepPin, OUTPUT);
pinMode(dirPin, OUTPUT);
}
void loop() {
// Girar en una dirección
digitalWrite(dirPin, HIGH);
for (int i = 0; i < stepsPerRevolution; i++) {
digitalWrite(stepPin, HIGH);
delayMicroseconds(1000); // Ajusta la velocidad
digitalWrite(stepPin, LOW);
delayMicroseconds(1000);
}
delay(1000); // Pausa de 1 segundo
// Girar en la otra dirección
digitalWrite(dirPin, LOW);
for (int i = 0; i < stepsPerRevolution; i++) {
digitalWrite(stepPin, HIGH);
delayMicroseconds(1000);
digitalWrite(stepPin, LOW);
delayMicroseconds(1000);
}
delay(1000);
}
3. Resultado
El eje del motor de pasos da un giro completo horaria y anti-horario en un bucle.