Ejercicio 1: Control de dirección de un motor DC con Arduino Uno R3 y L298N

Un motor DC es un actuador electro-mecánico que transforma energía eléctrica en movimiento rotacional continuo mediante interacción electromagnética entre rotor y estator.

Para controlar su sentido de giro desde un microcontrolador como el Arduino Uno R3, es necesario utilizar un driver de potencia, ya que el microcontrolador no puede suministrar la corriente requerida por el motor.

En este ejercicio utilizamos un módulo basado en L298N, el cual integra un puente H dual que permite:

  • Invertir la polaridad aplicada al motor (cambiar el sentido de giro) mediante señales digitales.
  • Separar la etapa lógica (5V) de la etapa de potencia (7–12V).
  • Proteger al microcontrolador frente a sobrecorrientes generadas por la carga inductiva.

Importante: En este primer ejercicio no se utiliza PWM. Únicamente implementaremos control digital de dirección: adelante y atrás.


Concepto clave: Puente H

Un puente H (H-Bridge) es una configuración electrónica que permite aplicar tensión en ambos sentidos a una carga, invirtiendo así el giro del motor.

En el módulo L298N el control se realiza mediante dos entradas digitales (IN1 e IN2):

  • IN1 = HIGH, IN2 = LOW → Giro adelante
  • IN1 = LOW, IN2 = HIGH → Giro atrás
  • IN1 = LOW, IN2 = LOW → Motor libre
  • IN1 = HIGH, IN2 = HIGH → Freno activo

En este laboratorio trabajaremos únicamente con los dos primeros estados.


Alcance práctico del Ejercicio 1

Con este laboratorio podrás:

  • Controlar un motor DC educativo.
  • Implementar funciones de movimiento adelante y movimiento atrás.
  • Comprender la separación entre control lógico y control de potencia.
  • Analizar el comportamiento eléctrico del motor como carga inductiva.

Este ejercicio constituye la base para el siguiente laboratorio, donde incorporaremos control de velocidad mediante PWM.


Limitaciones que debes conocer

  1. Caída de tensión interna: El L298N utiliza transistores bipolares, lo que genera pérdidas térmicas y reduce el voltaje real aplicado al motor.
  2. Capacidad de corriente limitada: Adecuado para motores pequeños o educativos (≈1A continuo con disipación adecuada).
  3. Ruido eléctrico: El motor genera interferencia electromagnética; se recomienda usar condensadores de desacople y fuente separada.
  4. No es un driver MOSFET moderno: Para aplicaciones de alta eficiencia o control avanzado se recomienda un puente H basado en MOSFET.

Conexión básica

  • Vmotor (7–12V) → Terminal de alimentación del L298N.
  • GND motor → GND del módulo.
  • GND común → Conectar GND del Arduino y GND del módulo.
  • IN1 e IN2 → Pines digitales del Arduino.
  • ENA → Dejar habilitado (jumper colocado) para este ejercicio sin PWM.
  • Motor conectado a OUT1 y OUT2.

Se recomienda añadir un condensador cerámico de 100 nF directamente en los terminales del motor para reducir interferencias.


Repositorio de ejemplo

Puedes clonar y explorar un ejemplo completo de control de motor DC con Arduino y L298N en este repositorio de GitHub:
👉 https://github.com/AndreaLombardo/L298N — contiene librería, ejemplos y guía para usar las funciones de movimiento hacia adelante y atrás. (GitHub

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Scroll al inicio