CIRCUITO L298N

L298N_pines_Electronilab

Control de un motor DC

Como demostración, vamos a controlar un motor DC a través de la salida B del módulo. El pin ENB se conectará con el jumper a +5V.

El ejemplo esta desarrollado en Arduino UNO, pero el código es compatible con cualquier Arduino o pinguino.

Esquema de conexión

 

 

L298N_1_mot

Código en Arduino

El programa básicamente activa el motor en un sentido por 4 segundos, luego detiene el motor por 0.5 segundos, después activa el motor en sentido inverso por 4 segundos y por último detiene el motor por 5 segundos. Luego repite la acción indefinidamente.

 

int IN3=5;

int IN4=4;

void setup() {

pinMode(IN4,OUTPUT);

pinMode(IN3,OUTPUT);

}

void loop() {

digitalWrite(IN4,HIGH);

digitalWrite(IN3,LOW);

delay(4000);

 

digitalWrite(IN4,LOW);

delay(500);

digitalWrite(IN3,HIGH);

                  delay(4000);

digitalWrite(IN3,LOW);

delay(5000);

}

 

 

 

Control de un motor DC variando su velocidad

 

Si queremos controlar la velocidad del motor, tenemos que hacer uso de PWM. Este PWM será aplicado a los pines de activación de cada salida o pines ENA y ENB respectivamente, por tanto los jumper de selección no serán usados.

 

Esquema de conexión

 

L298N_1_mot_PWM

 

 

Código en Arduino

El programa controla la velocidad de un motor DC aplicando PWM al pin ENB del módulo L298N.

 

 

 

 

 

 


 






int IN3 = 5;

int IN4 = 4;

int ENB = 3;

void setup(){

pinMode (ENB, OUTPUT);

pinMode (IN3, OUTPUT);

pinMode (IN4, OUTPUT);

}

void loop() {

digitalWrite (IN3, HIGH);

digitalWrite (IN4, LOW);

analogWrite(ENB,55);

delay(2000);

analogWrite(ENB,105);

delay(2000);

analogWrite(ENB,255);

delay(2000);

analogWrite(ENB,0);

delay(5000);

}