Objetivos
<
Material requerido.
Mucha calma y tranquilidad para leer un poco de teoria |
Material requerido.
En sesiones previas hemos ido jugando con motores de corriente continua y también con motores Servos. Cada uno de ellos tiene su utilidad, dependiendo de lo que queramos, pero imagínate que queremos mover con una cierta precisión los dos ejes de una impresora de chorro de tinta.
Un servo no será adecuado porque tiende a fijar una posición y quedarse allí y el problema de los motores de corriente continua es que cuando le das una orden resulta complicado saber cuánto se ha movido exactamente, porque no tenemos en principio ningún mecanismo de realimentación que nos informe.
Suponte que medimos exactamente la alimentación de 1 segundo a uno de esos motores… ¿Pero cómo saber cuántas revoluciones o fracciones de revolución ha dado en ese tiempo?
Podemos incluir un sistema de realimentación como un sensor de efecto Hall y un pequeño imán en la rueda, o un disco transparente con múltiples marcas en el borde, de modo que una foto sensor detecte el número de marcas que han pasado por delante de él.
- Ambos procedimientos son muy frecuentes y existe sensores hechos para esto directamente disponibles en la industria, y ruedas con ellos incluidos. [/fancy-ul] [/three-fourth].
Pero aun así, tendremos información de que nos hemos pasado o no pero no será fácil corregir la posición. Necesitamos un sistema de controlar con precisión el movimiento de un motor eléctrico y aquí es donde aparecen los motores pasos a paso o stepper motors.
Un motor paso a paso es parecido a los motores de continua que vimos antes, pero en lugar de montar un sistema de asegurarnos de que siempre hay una bobina fuera del equilibrio, en un motor paso a paso montamos un sistema de varias bobinas que garantizan que solo se mueve la distancia (O paso) entre las bobinas contiguas.
Pues menudo asco de motor ¿O sea que solo se mueve un paso? Y entonces ¿Cómo hago para que gire de forma continuada?
Simplemente controlando cuidadosamente la alimentación de los grupos bobinas que fuerzan el movimiento de un paso y la secuencia en la que alimentamos las bobinas.
De alguna manera hemos convertido en digital el movimiento del motor, ya que controlamos el movimiento que puede hacer,saltando entre posiciones discretas, dando pulsos a las bobinas contiguas cuando queremos mantener el giro. Veamos un ejemplo con una ilustración sacada de la Wikipedia:
Recordad que la fuerza que mueve un motor es fácil de sentir cuando tratas de unir los polos iguales de dos imanes permanentes. Por eso cuando excitamos una de las bobinas de la imagen, el rotor gira un pequeño paso y queda listo para que excitemos la segunda bobina y luego la siguiente.
Aquí se puede controlar con precisión el movimiento del motor porque lo diseñamos para eso, y para que se mueva a medida que nosotros vamos alimentando en secuencia las bobinas correspondientes y si dejamos de hacerlo, el motor se para fulminantemente y sabemos a ciencia cierta donde está.
Controlarlos es un poco más difícil que controlar un motor CC normal, porque para moverlo no basta con dar tension y olvidarnos, si no que hay que secuenciar la excitación de las bobinas en un orden preciso y en un tiempo preciso (Para poder controlar la velocidad), pero ¿Y eso que importa? Nuestros Arduinos son geniales para hacer este tipo de control en modo automático.
A cambio los motores de paso a paso tienen una serie de ventajas:
- Podemos posicionar uno de estos motores con mucha precisión con un sencillo control digital.
- Son ideales para robots y demás, porque se puede sincronizar su movimiento velocidad y aceleración, con gran facilidad (Y un poco de cálculo)
- Máximo par motor a bajas velocidades. Porque están diseñados para eso, en cambio un motor CC normal tiene muy poco par a baja revoluciones. [/fancy-ul] [/three-fourth]
Y como en la vida no hay nada perfecto, también tienen sus inconvenientes:
- Para mantener el motor clavado en una posición hay que mantener excitada al menos una de las bobinas, lo que nos coloca en la absurda situación de que consume en parado tanto o más que en marcha.
- Normalmente están diseñados para que el par motor sea máximo a baja velocidad y eso hace que a gran velocidad el par no sea especialmente bueno.
- A diferencia de los servos, los motores paso a paso no tiene un modo de saber dónde está cuando arrancas por ejemplo, y eso supone que solemos necesitar con ellos algún tipo de fin de carrera para saber dónde está el cero o el tope, aunque luego el posicionamiento es perfecto. [/fancy-ul] [/three-fourth]
Que buscar al comprar un motor de pasos
Si normalmente el mercado ofrece electrónica especializada para cualquier necesidad que se os pueda ocurrir, en el caso de los motores paso a paso la situación es inabarcable, y hay modelos para miles opciones necesidades y configuraciones.
Por eso vamos a centrarnos en unas pocas características para empezar y ya iremos viendo más adelante como evoluciona la cosa.
Un motor paso a paso se define con los siguientes paramentos:
- Par motor o torque: Es lo que os define la capacidad del motor para mover objetos. Normalmente se expresa en kilogramos por centímetro. Cuanto mayor más potente el motor.
- Tensión de alimentación del motor, y resistencia de las bobinas. Lo que nos indica la Intensidad de la corriente que absorbe en carga.
- Pasos por vuelta. Cuanto más, mejor precisión tiene el posicionamiento del motor y se suele medir como numero de pasos por vuelta o por un Angulo que equivale a 360º de una vuelta dividido por el número de pasos.
- Y si vais a diseñar un circuito manual es imprescindible conocer la inductancia de las bobinas (Normalmente en mili Henrios).
Por supuesto, los que venís a por nota, os habréis dado cuenta de que si queremos aumentar la precisión del posicionado, tenemos que aumentar el número de bobinas que incluye el motor y esto es caro, así que en general se suelen utilizar reductoras mecánicas que mejoran la precisión por poca tela.
Si tienes un motor de pasos de digamos 4 bobinas, una vuelta completa serian 4 pasos, pero con una reductora de 16:1 se convertiría en un motor de 16 x 4 = 64 pasos para alcanzar la vuelta completa.
Además el par motor aumenta considerablemente, pero a cambio la velocidad disminuye, y por eso en la práctica hay que revisar tanto el par como la relación de la reductora, dependiendo de tus necesidades.
Motores paso a paso unipolares y bipolares
Lo mismo que con los motores de corriente continua típicos, el problema viene cuando queremos cambiar la dirección de giro (Ya que un motor que solo avanza no suele ser demasiado útil)
¿Cómo podemos hacer para invertir el sentido de giro de uno de estos motores? Fíjate en la siguiente imagen:
El caso de la izquierda o Motor Bipolar solo tiene un par de espiras (Normalmente dos pares de espiras conectadas), lo que requiere invertir la dirección de la corriente para invertir la dirección de giro, pero esto es algo que no podemos hacer con Arduino sin electrónica externa, es decir un H-Bridge que ya vimos.
El caso de la derecha tiene las espiras partidas y conectadas por la mitad, lo que nos permite gobernar la dirección del motor sin necesidad de un H-Bridge, simplemente usando la pata central como GND y alimentar uno u otro extremo con diferentes salidas de nuestro Arduino y un par de transistores. A estos motores se les llama unipolares.
Por norma general, la mayoría de motores paso a paso que usaremos con Arduinos serán bipolares y son bastante típicos los Nema 17. Son motores de 3,2 Kg / cm, o sea con fuerza, y son los que encontraréis por ejemplo en las impresoras 3D típicas, las Reprap. Pero en esta sesión vamos a usar un motor de pasos mucho más modesto de 5 hilos y 4 fases, y que viene incluido en el kit de inicio
¿Cuantos hilos usa el control de un motor unipolar de paso a paso?
Pues depende. Básicamente depende de como se configuren los devanados y cada forma tiene sus propias ventajas en inconvenientes.
Las diferentes configuraciones nos permiten hacer un móntatelo tú mismo, en función de que busquemos más par motor, o más velocidad o menos resistencia o…. lo que se te ocurra.
Para este tutorial, vamos a usar un pequeño motor unipolar BYJ48, que viene incluido en el kit de inicio prometec.net.
Si nombramos los hilos a la manera del grafico de la izquierda, entonces la secuencia para hacer girar el motor es como sigue:
PASO | Bobina A | Bobina B | Bobina C | Bobina D | |
---|---|---|---|---|---|
1 | ON | ON | OFF | OFF | |
2 | OFF | ON | ON | OFF | |
3 | OFF | OFF | ON | ON | |
4 | ON | OFF | OFF | ON |
El movimiento resultante se parece a esto (Gira contra el reloj):
Es la secuencia que recomienda el fabricante, porque al haber siempre dos bobinas activas tenemos un par motor (Torque) importante para avanzar y para mantener la posición.
Pero también podríamos activar solo una bobina cada vez de esta manera:
PASO | Bobina A | Bobina B | Bobina C | Bobina D | |
---|---|---|---|---|---|
1 | ON | OFF | OFF | OFF | |
2 | OFF | ON | OFF | OFF | |
3 | OFF | OFF | ON | OFF | |
4 | OFF | OFF | OFF | ON |
Que produciría un movimiento como este:
El consumo es menor, ya que solo se activa un devanado cada vez, pero también disminuye el par por el mismo motivo. Y por ultimo podríamos hacer un mix:
PASO | Bobina A | Bobina B | Bobina C | Bobina D | |
---|---|---|---|---|---|
1 | ON | OFF | OFF | OFF | |
2 | ON | ON | OFF | OFF | |
3 | OFF | ON | OFF | OFF | |
4 | OFF | ON | ON | OFF | |
5 | OFF | OFF | ON | OFF | |
6 | OFF | OFF | ON | ON | |
7 | OFF | OFF | OFF | ON | |
8 | ON | OFF | OFF | ON |
Donde vamos jugando con excitar una o dos bobinas para tener un movimiento mas suave y de mas pasos, con un resultado similar a esto:
En la proxima sesion comenzaremos a jugar con un motor sencillo paso a paso, para ver como lo controlamos con nuestros programas.
Resumen de la sesión