Académique Documents
Professionnel Documents
Culture Documents
Mi cuenta
Servicios Blog
Los motores paso a paso son, como indica su nombre, motores que se mueven dando
pasos concretos. Tienen varias bobinas que están organizadas en grupos, a los que se
llaman «fases». Para alimentar cada «fase» de manera secuencial, el motor rotará paso
a paso. Con un Arduino podemos conseguir controlar de forma muy precisa la posición
y/o la velocidad. Este es el principal motivo por el que los motores paso a paso son el
componente ideal para proyectos en los que se requiere un control preciso del
movimiento.
Son muchos los proyectos que contienen motores paso a paso, manejarlos desde
Arduino nos permite tener un control preciso de cada movimiento. Existen motores
paso a paso de diferentes tamaños, formas y características eléctricas. ¿Cómo
elegimos el que mejor se adapta a nuestro proyecto? Veamos cuáles son las ventajas e
inconvenientes de los motores paso a paso.
Ventajas
https://fabricadigital.org/tutoriales/arduino-y-el-driver-de-motores-paso-a-paso-de-pololu/ 2/16
16/5/2019 Arduino y el driver de motores paso a paso de Pololu – Fábrica Digital
Control de la velocidad: que los movimientos del motor sean paso a paso también
nos permite tener un control excelente de la velocidad angular, lo que hace que sean
comúnmente usados en automatismos y robótica.
Torque a velocidades bajas: los motores DC no tienen demasiado torque a
velocidades bajas. Por su parte, un motor paso a paso tienen su torque máximo a
bajas velocidades, por lo que son una buena elección en proyectos que tengan
como requisitos velocidad baja y precisión alta.
Inconvenientes
Baja e ciencia: A diferencia de los motores DC, la corriente que consumen los
motores paso a paso es independiente de la carga. Estos motores consumen la
mayor parte de la corriente estando parados, de ahí que tiendan a calentarse.
Torque limitado en altas velocidades: En general, los motores paso a paso tienen
menos torque a altas que a bajas velocidades. No obstante, se puede optimizar el
rendimiento a velocidades altas, para ello necesitaremos emparejar nuestro motor
paso a paso con un controlador adecuado.
No nos devuelve feedback: A diferencia de los servos, los motores paso a paso no
nos muestran cuál es su posición exacta en cada momento. Aunque se puede
conseguir una muy buena precisión dando una «vuelta de reconocimiento». Limitar
los cambios o hacer «home» son unas de las formas más comunes de guardar o
establecer una posición de referencia.
Para hacer este tutorial voy a usar un motor paso a paso Nema 17, comúnmente usado
en maquinarias que necesitan de una alta precisión de la posición, como es la CNC o
la impresora 3D.
[product sku=»MOT.NEMA17.2A5″]
Controlar un motor paso a paso con Arduino es un poco más difícil que controlar un
motor DC. Los motores paso a paso necesitan un controlador especí co para
alimentar las «fases» de forma secuencial y hacer que el motor se mueva.
https://fabricadigital.org/tutoriales/arduino-y-el-driver-de-motores-paso-a-paso-de-pololu/ 3/16
16/5/2019 Arduino y el driver de motores paso a paso de Pololu – Fábrica Digital
RESET RESET
https://fabricadigital.org/tutoriales/arduino-y-el-driver-de-motores-paso-a-paso-de-pololu/ 4/16
16/5/2019 Arduino y el driver de motores paso a paso de Pololu – Fábrica Digital
SLEEP SLEEP
GND GND
Esquema de conexión
Lo vemos paso a paso:
https://fabricadigital.org/tutoriales/arduino-y-el-driver-de-motores-paso-a-paso-de-pololu/ 5/16
16/5/2019 Arduino y el driver de motores paso a paso de Pololu – Fábrica Digital
https://fabricadigital.org/tutoriales/arduino-y-el-driver-de-motores-paso-a-paso-de-pololu/ 6/16
16/5/2019 Arduino y el driver de motores paso a paso de Pololu – Fábrica Digital
4. Conectamos el motor. Conectamos cada uno de sus cables a los 4 pines de salida
2B, 2A, 1A, 1B. No importa cómo lo conectes, lo único que cambia es el sentido del
https://fabricadigital.org/tutoriales/arduino-y-el-driver-de-motores-paso-a-paso-de-pololu/ 7/16
16/5/2019 Arduino y el driver de motores paso a paso de Pololu – Fábrica Digital
https://fabricadigital.org/tutoriales/arduino-y-el-driver-de-motores-paso-a-paso-de-pololu/ 8/16
16/5/2019 Arduino y el driver de motores paso a paso de Pololu – Fábrica Digital
Los controladores de motores necesitan ser «calibrados» para limitar la corriente que
pasa por las bobinas del motor y así no dañar ni el motor, ni el controlador. Si no lo has
hecho ya, realiza el tutorial Cómo calibrar el controlador de motores paso a paso y
vuelve a este punto cuando lo hayas hecho.
6. Para controlar la resolución del paso del motor con el driver A4988, necesitamos
con gurar los pines MS1, MS2 y MS3. En la siguiente tabla vemos en qué posición
(high/low) hay que poner cada uno de los pines según la resolución del paso que
necesitemos en nuestro proyecto.
https://fabricadigital.org/tutoriales/arduino-y-el-driver-de-motores-paso-a-paso-de-pololu/ 9/16
16/5/2019 Arduino y el driver de motores paso a paso de Pololu – Fábrica Digital
a. Conectar MS1, MS2 y MS3 a tres pines digitales de nuestro Arduino y programarlos
según la resolución del paso que hayamos decidido.
b. Conectar MS1, MS2 y MS3 a 5V y GND de Arduino según la resolución del paso
decidida. En mi opinión, esta opción me parece más interesante puesto que, por lo
general, no vamos a querer modi car el paso, así pues si podemos dejarlo jo y,
además, no ocupar pines de nuestro Arduino sin necesidad.
Por ejemplo, si queremos una resolución de 1/2 paso, conectamos MS1 a 5V (cable
amarillo) y, MS2 y MS3 a GND (cables verde y marrón, respectivamente).
https://fabricadigital.org/tutoriales/arduino-y-el-driver-de-motores-paso-a-paso-de-pololu/ 10/16
16/5/2019 Arduino y el driver de motores paso a paso de Pololu – Fábrica Digital
Si lo que queremos es una resolución de 1/8 pasos conectamos MS1 (cable amarillo)
y MS2 (cable rosa) a 5V y MS3 (cable marrón) a GND.
https://fabricadigital.org/tutoriales/arduino-y-el-driver-de-motores-paso-a-paso-de-pololu/ 11/16
16/5/2019 Arduino y el driver de motores paso a paso de Pololu – Fábrica Digital
7. Para controlar el paso del motor Nema 17 con el driver A4988 de Pololu,
conectamos el pin STEP del driver A4988 de Pololu con un pin digital de Arduino, yo lo
he conectado al pin 10.
https://fabricadigital.org/tutoriales/arduino-y-el-driver-de-motores-paso-a-paso-de-pololu/ 12/16
16/5/2019 Arduino y el driver de motores paso a paso de Pololu – Fábrica Digital
8. Para controlar la dirección del motor Nema 17 con el driver A4988 de Pololu,
conectamos el pin DIR del driver A4988 de Pololu con un pin digital de Arduino, yo lo he
conectado al pin 12.
https://fabricadigital.org/tutoriales/arduino-y-el-driver-de-motores-paso-a-paso-de-pololu/ 13/16
16/5/2019 Arduino y el driver de motores paso a paso de Pololu – Fábrica Digital
5 *
6 * Modificado el 19 de enero de 2017
8 */
9
10 const int STEP = 9; // Pin STEP
https://fabricadigital.org/tutoriales/arduino-y-el-driver-de-motores-paso-a-paso-de-pololu/ 14/16
16/5/2019 Arduino y el driver de motores paso a paso de Pololu – Fábrica Digital
14
15 // Con la velocidad y el número de pasos por vuelta, podemos calcular
20 // Vamos a escribir sobre los pines STEP y DIR, por lo que son salidas
21 pinMode(STEP, OUTPUT);
22 pinMode(DIR, OUTPUT);
23 }
24
25 void loop() {
26 // Empieza en un sentido
27 digitalWrite(DIR, HIGH);
28
29 // Haz PASOS_POR_VUELTA iteraciones
35 }
36
37 // Cambia de sentido
38 digitalWrite(DIR, LOW);
39
40 // Haz PASOS_POR_VUELTA iteraciones en el otro sentido
42 digitalWrite(STEP, HIGH);
43 delay(PASOS_PERIODO / 2);
44 digitalWrite(STEP, LOW);
45 delay(PASOS_PERIODO / 2);
46 }
47
48 }
https://fabricadigital.org/tutoriales/arduino-y-el-driver-de-motores-paso-a-paso-de-pololu/ 15/16
16/5/2019 Arduino y el driver de motores paso a paso de Pololu – Fábrica Digital
Ò Õ á
Deja un™ comentario
Noticias
Categorías
Electrónica
Impresión 3D
Maker
Novedades
https://fabricadigital.org/tutoriales/arduino-y-el-driver-de-motores-paso-a-paso-de-pololu/ 16/16