Curso de Arduino y robótica: Motores paso a paso

Una de las  lecciones más importantes para poder desbloquear una gran cantidad de proyectos es el control de motores paso a paso.

Los motores paso a paso son el componente primordial para crear proyectos como una impresora 3D, una máquina láser, una CNC... Máquinas que ofrecen una extensión operativa maker y que suponen una entrada al mundillo.

Estos motores son componentes de bajo coste que se pueden controlar fácilmente y ofrecen una precisión suficientemente alta para desarrollar proyectos de calidad.

Además estos motores se pueden obtener de impresoras viejas u otros aparatos que a veces la gente tira sin conocer el potencial de sus componentes. Así que podemos reciclar, ahorrar dinero y luchar contra la obsolescencia programada .

Funcionamiento de los motores

Los motores tienen dos componentes importantes, que nos definirán su funcionamiento.

El funcionamiento de los motores eléctricos, está basado en repulsión/atracción de campos magnéticos. Hay un imán permanente y con electroimanes se produce el giro.

  • Estator: Que es la parte fija del motor
  • Rotor: Que es la parte móvil.

Los motores de corriente continua por ejemplo tienen imanes fijos en el estator y unas bobinas en el rotor, que son alimentadas por unas escobillas.

Los motores de pasos, por ejemplo tienen una construcción que permite avanzar un número concreto de pasos, y tienen el imán en el rotor y el bobinado en el estator.

Los motores brushless por ejemplo, los imanes están en el rotor, que es la parte exterior, mientras que el bobinado está en interior.

Motores paso a paso

Los motores paso a paso, son un tipo especial de motores, que por su construcción nos permiten indicar el número de pasos ( o ángulo ) a girar y que nos permiten desarrollar controles precisos para nuestras máquinas.

Los motores paso a paso, suelen ser utilizados en sistemas de posicionamiento, como impresoras, impresoras 3d, plotters, máquinas que utilicen un sistemas de coordenadas en general, etc.

Los motores paso a paso necesitan más potencia de la que puede dar el arduino, para ello vamos a necesitar un controlador o Driver.

 

Los motores de pasos, tienen 2 bobinados por separado, y juegan con las diferentes posibilidades de orientación.

Cuando cogemos un motor de pasos hay que identificar las bobinas.
Hay motores de pasos de 4 cables ( Bipolar ) y motores con 6 cables ( Unipolar ), dependiendo si tienen conexionados a mitad de la bobina. Los dos cables extra están conectados entre sí. Pero también pueden existir motores de 5 cables y 8 cables como se muestran en los siguientes esquemas.

En nuestro caso vamos a centrarnos en los motores de 4 cables, para saber cuales están emparejados, pero si quisieramos conocer qué pines están conectados podemos medir la resistencia con un polímetro, y eso nos dará una idea para el cálculo de la intensidad que circula por ellas.

Aunque el cableado pueda resultar confuso para identificar los pares de cables de cada bobina, aquí dejamos un estándar, pero cada fabricante puede definirlos de distinto modo.

Su movimiento consiste en ir activando y desactivando los pines de las bobinas, creando un flujo magnético equivalente a un movimiento relativo; como su nombre indica; paso a paso. Es decir, realizaremos una secuencia en sus pines de control para moverlos en una dirección o en otra.

Primero, deberemos definir los cables que se correspondan a cada bobina y posteriormente programar la señal para ejecutar el movimiento.

Paso

Bobina A

Bobina B

Bobina C

Bobina D

Paso 1

1

0

0

0

Paso 2

1

1

0

0

Paso 3

0

1

0

0

Paso 4

0

1

1

0

Paso 5

0

0

1

0

Paso 6

0

0

1

1

Paso 7

0

0

0

1

Paso 8

1

0

0

1

Estos pines de control son los que irán conectados a la placa Arduino y que irán definiendo la secuencia. Pero antes tenemos que disponer de un driver de motores paso a paso, ya que la placa Arduino no suministra suficiente potencia para mover los motores. Este componente intermedio es el que distribuye la energía desde una fuente de alimentación al motor.

Drive Modes

Existen distintos modos de hacer funcionar la secuencia de pasos de un motor y son las siguientes.

  • Full Step
  • Half Step
  • Microstepping

 

 

Características de un motor paso a paso

Los motores paso a paso se determinan mediante un parámetro denominado steps per revolution o número de pasos por vuelta.

Este parámetro es el que nos indica cuántos niveles existen en la secuencia de giro o como se denomina, step angle. La mayoría de motores tiene un ángulo por paso de 1.8º/step; es decir; por cada nivel de la secuencia, el motor gira 1,8 grados.

Por lo que el número de pasos para realizar una vuelta completa, será el resultado de dividir 360º por ese valor.

En el caso más usual 360/1.8 = 200 pasos.

Existe electrónica que en lugar de funcionar con pasos o medios pasos funcionan con micropasos de 1/16 , 1/32 …de paso.

Holding Torque

Torque de retención, se traduce como el par que puede sostener en una posición fija. Se mide en [N·cm] , o en [g·cm]

Resistencia de cada fase

Este dato es una manera de identificar la corriente que circula por cada bobina si aplicamos un voltaje, aplicando la Ley de Ohm, conoceremos la intensidad que consume. Pero de la potencia y la corriente consumida, ya se encarga el driver de control.

Un motor estándar que se suele utilizar tiene las siguientes características.

  • Pasos por vuelta = 200
  • Grados por paso = 1,8º
  • Holding Torque = 40 N·cm
  • Resistance Phase = 2,4 ohm

El tamaño y peso del motor ya son cuestiones mecánicas a tener en cuenta en nuestros modelos.

Tipos de motores

NEMA es el acrónimo de National Electrical Manufacturers Association. Se puede deducir que cada motor NEMA, cuanto más grande, soportará más torque.

Otro tipo de motores paso a paso son los 28BYJ-48. Estos motores son bastante más lentos, pero son una versión de precisión que nos permite desarrollar modelos interesantes como el famoso escornabot.

Tipos de Drivers

  • L298N – Driver compatible para control de 2 motores DC o un motor NEMA. No soporta micropasos.
  • EasyDriver – Driver para motor NEMA con micropasos.
  • StepStick Driver – Driver compacto para control de motores NEMA para impresoras.
  • Driver ULN2003 – Driver para motores 28BYJ-48

 

 


Una vez completado este tutorial, puedes acceder al siguiente nivel.

 

Los ejercicios de código, proyectos y recursos que desarrollaremos durante el curso se pueden consultar a través de nuestro Github.

Documentacion ZaragozaMakerSpace Github

3 comentarios sobre “Curso de Arduino y robótica: Motores paso a paso

  1. buenos días,

    estoy buscando un motor paso a paso bipolar que pueda mover un producto en una base giratoria hasta 50kg, pero veo que los Nema 17, 23 etc… son pequeños en torque, algun consejo?

    muchas gracias desde ya!

    1. Hola Alberto.

      El cálculo del torque dependerá de la distancia del peso desplazado con respecto al eje. En el caso de tener los 50 Kg sobre una base giratoria la carga es axial.
      Para saber cuánto peso puedo soportar un motor hay que buscar el valor «max axial load» del datasheet de un motor. Para los Nema 17 soporta un poco menos de 3 Kg y para los Nema 23, unos 7 kg.
      PDF Datasheet Nema 17
      PDF Datasheet Nema 23

      La única solución para levantar tanto peso es usar un motor de pasos mucho más potente capaz de soportar esos esfuerzos.
      Un saludo

  2. Necesito un motor con control para una máquina boxeadora. Esta al mover el eje puedo controlar el largo de la bolsa o Max bien dicho programa el largo mecánico de esta.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

doce + diecisiete =

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.