Computing">
Practica Motores DC Con Arduino
Practica Motores DC Con Arduino
Practica Motores DC Con Arduino
Este módulo basado en el chip L298N te permite controlar dos motores de corriente continua o un
motor paso a paso bipolar de hasta 2 amperios.
El módulo cuenta con todos los componentes necesarios para funcionar sin necesidad de elementos
adicionales, entre ellos diodos de protección y un regulador LM7805 que suministra 5V a la parte lógica
del integrado L298N. Cuenta con jumpers de selección para habilitar cada una de las salidas del
módulo (A y B). La salida A esta conformada por OUT1 y OUT2 y la salida B por OUT3 y OUT4. Los
pines de habilitación son ENA y ENB respectivamente.
En la parte inferior se encuentran los pines de control del módulo, marcados como IN1, IN2, IN3 e IN4.
http://electronilab.co/tutoriales/tutorial-de-uso-driver-dual-l298n-para-motores-dc-y-paso-a-paso-con-arduino/ 1/30
23/10/2016 Tutorial Uso Driver L298N para motores DC y paso a paso con Arduino
Conexión de alimentación
Este módulo se puede alimentar de 2 maneras gracias al regulador integrado LM7805.
Cuando el jumper de selección de 5V se encuentra activo, el módulo permite una alimentación de entre
6V a 12V DC. Como el regulador se encuentra activo, el pin marcado como +5V tendrá un voltaje de 5V
DC. Este voltaje se puede usar para alimentar la parte de control del módulo ya sea un
microcontrolador o un Arduino, pero recomendamos que el consumo no sea mayor a 500 mA.
Recomendamos nunca conectar una tensión de entrada al pin de +5V, cuando el jumper de
selección de 5V se encuentre activado. Esto provocaría un corto y podría dañar
permanentemente el módulo.
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
http://electronilab.co/tutoriales/tutorial-de-uso-driver-dual-l298n-para-motores-dc-y-paso-a-paso-con-arduino/ 2/30
23/10/2016 Tutorial Uso Driver L298N para motores DC y paso a paso con Arduino
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.
1 /*
2 Ejemplo de control de motor DC usando módulo L298
3 http://electronilab.co/tienda/driver‐dual‐para‐motores‐full‐bridge‐l298n/
4
5 El programa activa el motor en un sentido por 4 segundos,
6 para el motor por 500 ms, activa el motor en sentido inverso por 4 segundos
7 y se detiene por 5 segundos. Luego repite la acción indefinidamente.
8
9 */
10
11 int IN3 = 5;
12 int IN4 = 4;
13
14 void setup()
15 {
16 pinMode (IN4, OUTPUT);
17 pinMode (IN3, OUTPUT);
18
19 // Input4 conectada al pin 4
20 // Input3 conectada al pin 5
http://electronilab.co/tutoriales/tutorial-de-uso-driver-dual-l298n-para-motores-dc-y-paso-a-paso-con-arduino/ 3/30
23/10/2016 Tutorial Uso Driver L298N para motores DC y paso a paso con Arduino
21 }
22 void loop()
23 {
24 // Motor gira en un sentido
25 digitalWrite (IN4, HIGH);
26 digitalWrite (IN3, LOW);
27 delay(4000);
28 // Motor no gira
29 digitalWrite (IN4, LOW);
30 delay(500);
31 // Motor gira en sentido inverso
32 digitalWrite (IN3, HIGH);
33 delay(4000);
34 // Motor no gira
35 digitalWrite (IN3, LOW);
36 delay(5000);
37 }
38
Esquema de conexión
http://electronilab.co/tutoriales/tutorial-de-uso-driver-dual-l298n-para-motores-dc-y-paso-a-paso-con-arduino/ 4/30
23/10/2016 Tutorial Uso Driver L298N para motores DC y paso a paso con Arduino
Código en Arduino
El programa controla la velocidad de un motor DC aplicando PWM al pin ENB del módulo L298N.
1 /*
2 Ejemplo de control de motor DC usando modulo L298
3 http://electronilab.co/tienda/driver‐dual‐para‐motores‐full‐bridge‐l298n/
4
5 Creado 16/05/14
6 por Andres Cruz
7 ELECTRONILAB.CO
8 */
9
10 int IN3 = 5; // Input3 conectada al pin 5
11 int IN4 = 4; // Input4 conectada al pin 4
12 int ENB = 3; // ENB conectada al pin 3 de Arduino
13 void setup()
14 {
15 pinMode (ENB, OUTPUT);
16 pinMode (IN3, OUTPUT);
17 pinMode (IN4, OUTPUT);
18 }
19 void loop()
20 {
21 //Preparamos la salida para que el motor gire en un sentido
22 digitalWrite (IN3, HIGH);
http://electronilab.co/tutoriales/tutorial-de-uso-driver-dual-l298n-para-motores-dc-y-paso-a-paso-con-arduino/ 5/30
23/10/2016 Tutorial Uso Driver L298N para motores DC y paso a paso con Arduino
http://electronilab.co/tutoriales/tutorial-de-uso-driver-dual-l298n-para-motores-dc-y-paso-a-paso-con-arduino/ 6/30