Controlar motor paso a paso Bipolar con Arduino
martin_1979Documentos de Investigación23 de Abril de 2017
532 Palabras (3 Páginas)291 Visitas
Controlar motor paso a paso Bipolar con Arduino
Como hemos explicado antes, los motores bipolares son más complejos de controlar ya que el flujo de corriente tiene que cambiar de dirección a través de las bobinas con una secuencia determinada. Para esto debemos conectar cada una de las dos bobinas en un puente en H (H-Bridge). Para esto, utilizaremos el integrado L293 que contiene dos H-Bridge (datasheet).
Para controlar motores paso a paso con Arduino, utilizaremos la librería
/*
www.diymakers.es
by A.García
Mover motores paso a paso con Arduino
Tutorial en: http://diymakers.es/mover-motores-paso-paso-con-arduino/
*/
#include
#define STEPS 200 //Ponemos el número de pasos que necesita para dar una vuelta. 200 en nuestro caso
// Ponemos nombre al motor, el número de pasos y los pins de control
Stepper stepper(STEPS, 8, 9, 10, 11); //Stepper nombre motor (número de pasos por vuelta, pins de control)
void setup()
{
// Velocidad del motor en RPM
stepper.setSpeed(100);
}
void loop()
{
//Girar una vuelta entera en un sentido
stepper.step(200);
delay(500); //Pequeña pausa
//Girar una vuelta entera en sentido contrario
stepper.step(-200);
delay(500); //Pequeña pausa
}
Utilizando esta conexión tenemos un pequeño problema, y es que usamos cuatro pins del Arduino para controlar el motor, y eso son muchos. Si queremos controlar más de un motor paso a paso y usar otros pins para otras conexiones, nos quedaremos cortos de pins. Esto se puede solucionar con una conexión diferente que solo utiliza dos pins de control del Arduino.
Conexión dos pins
Para entender esta conexión, primero hay que fijarse en la secuencia del motor paso a paso bipolar que hemos visto antes. Si nos fijamos bien, veremos que los extremos de cada bobina están invertidos entre sí.
[pic 2]
De esta manera solo tenemos que usar dos pins de control e invertirlos. Para invertirlos usaremos dos transistores NPN (BC547,BD139, etc…) polarizados en emisor común y que trabajen en modo saturación-corte. Así el transistor trabaja como un inversor de señal.
[pic 3]
De este modo, usaremos solo dos pins del Arduino y con los dos NPN en modo de inversor obtendremos los cuatro pins de control necesarios para atacar el L293.
El programa es el mismo que antes, con la diferencia que cambiaremos los pins de control:
En vez de usar:
Stepper stepper(STEPS, 8, 9,10,11);
Cambiamos por:
Stepper stepper(STEPS, 8, 9);[pic 4]
/*
www.diymakers.es
by A.García
Mover motores paso a paso con Arduino
Tutorial en: http://diymakers.es/mover-motores-paso-paso-con-arduino/
*/
...