Control de un motor paso a paso (PaP) o stepper con puente H (L298N)
El circuito electrónico L298N posee dos puente H completos, con estos es posible controlar motores paso a paso desde cualquier microcontrolador, por ejemplo un Arduino Nano. En este ejemplo usare un motor paso a paso Nema 17.
Para realizar este ejemplo utilizare:
En las salidas del L298N conectaremos los cuatro cables del motor paso a paso, las salidas uno y dos deben estar conectados en la misma bobina, para encontrar esta bobina uso un multimetro en modo continuidad. La segunda bobina la conecto en las salidas tres y cuatro. La alimentación de este motor lo hare a 5V.
Las entradas del circuito L298N las conecto a los pines 2,3,4,5 del Arduino Nano. En el programa de arduino hago lo siguiente. Para mover el motor paso a paso, debemos activar las bobinas siguiendo el siguiente esquema.
Este es el código en Arduino.
Los puentes H son mucho más utilizados para controlar motores de corriente continua, para los motores paso a paso existen otros componentes electrónicos especializados como es el caso del A4988, o A3967 o el DRV8825, estos pueden ser controlados desde el arduino utilizando solamente dos pines y no cuatro como en este ejemplo.
Para realizar este ejemplo utilizare:
En las salidas del L298N conectaremos los cuatro cables del motor paso a paso, las salidas uno y dos deben estar conectados en la misma bobina, para encontrar esta bobina uso un multimetro en modo continuidad. La segunda bobina la conecto en las salidas tres y cuatro. La alimentación de este motor lo hare a 5V.
Las entradas del circuito L298N las conecto a los pines 2,3,4,5 del Arduino Nano. En el programa de arduino hago lo siguiente. Para mover el motor paso a paso, debemos activar las bobinas siguiendo el siguiente esquema.
Este es el código en Arduino.
#define BOBINA_A_DIR_1 2
#define BOBINA_A_DIR_2 3
#define BOBINA_B_DIR_1 4
#define BOBINA_B_DIR_2 5
void setup() {
pinMode(BOBINA_A_DIR_1, OUTPUT);
pinMode(BOBINA_A_DIR_2, OUTPUT);
pinMode(BOBINA_B_DIR_1, OUTPUT);
pinMode(BOBINA_B_DIR_2, OUTPUT);
}
void loop() {
girar();
}
int veloc = 1000;
void girar() {
digitalWrite(BOBINA_A_DIR_1, HIGH);
digitalWrite(BOBINA_B_DIR_1, HIGH);
digitalWrite(BOBINA_A_DIR_2, LOW);
digitalWrite(BOBINA_B_DIR_2, LOW);
delayMicroseconds(veloc);
digitalWrite(BOBINA_A_DIR_1, LOW);
digitalWrite(BOBINA_B_DIR_1, HIGH);
digitalWrite(BOBINA_A_DIR_2, HIGH);
digitalWrite(BOBINA_B_DIR_2, LOW);
delayMicroseconds(veloc);
digitalWrite(BOBINA_A_DIR_1, LOW);
digitalWrite(BOBINA_B_DIR_1, LOW);
digitalWrite(BOBINA_A_DIR_2, HIGH);
digitalWrite(BOBINA_B_DIR_2, HIGH);
delayMicroseconds(veloc);
digitalWrite(BOBINA_A_DIR_1, HIGH);
digitalWrite(BOBINA_B_DIR_1, LOW);
digitalWrite(BOBINA_A_DIR_2, LOW);
digitalWrite(BOBINA_B_DIR_2, HIGH);
delayMicroseconds(veloc);
}
Demostración del funcionamiento del control de un motor paso a paso con un puente H L298N:Los puentes H son mucho más utilizados para controlar motores de corriente continua, para los motores paso a paso existen otros componentes electrónicos especializados como es el caso del A4988, o A3967 o el DRV8825, estos pueden ser controlados desde el arduino utilizando solamente dos pines y no cuatro como en este ejemplo.

Comentarios
Publicar un comentario