¿Qué vamos a hacer?

¡Lleva tus proyectos a un nuevo nivel de control! Con el Módulo Relé de 5V y 2 Canales de tu kit, tu ESP32-C3 SuperMini podrá encender y apagar dispositivos que funcionan con voltajes y corrientes mucho mayores, como una lámpara, un ventilador, o incluso un electrodoméstico (¡siempre con las precauciones adecuadas!).

Al final de este tutorial, serás capaz de:

  • Entender qué es un relé y cómo funciona para controlar cargas de alta potencia de forma segura.
  • Conectar el módulo relé a tu ESP32-C3 SuperMini.
  • Controlar el estado de un relé (encender/apagar) mediante un botón, simulando el control de un dispositivo externo.
  • (Opcional): Integrar el relé con un sensor (como el PIR o el LDR de tutoriales anteriores) para automatizar el encendido/apagado.

Requisitos Previos:

Antes de comenzar, asegúrate de tener lo siguiente:

  • ESP32-C3 SuperMini (1 unidad)
  • Módulo Relé 5V 2 Canales (1 unidad)
  • Protoboard de 830 puntos (1 unidad)
  • LED (1 unidad, como carga de demostración segura)
  • Resistencia de 220 Ohm (para el LED)
  • Botón Interruptor (1 unidad, para control manual, del Tutorial 1)
  • Cables Dupont F-M y M-M
  • IDE de Arduino con la plataforma ESP32 instalada y configurada (Tutorial 0).

Objetivo: Conectar un canal del módulo relé a tu ESP32-C3 y usar un botón para activarlo y desactivarlo, controlando un LED como carga de bajo voltaje.

Descripción: Esta actividad te introducirá en el mundo de los relés. Aprenderás a conectarlo y a usar un botón para conmutar su estado, simulando el encendido y apagado de un dispositivo de forma segura.

Materiales que necesitas:

  • ESP32-C3 SuperMini
  • Módulo Relé 5V 2 Canales
  • LED
  • Resistencia de 220 Ohm
  • Botón Interruptor
  • Cables Dupont
  • Protoboard

¿Qué es un Módulo Relé?

Tutorial 6: Control de Dispositivos de Alto Voltaje

Un relé es un interruptor electromecánico. Funciona como un puente que se abre o se cierra para permitir o bloquear el flujo de corriente en un circuito, pero lo hace de una manera muy especial:

El relé, a su vez, puede conmutar un circuito separado que maneja alta potencia (ej. 220V AC o 12V DC).

Tu ESP32-C3 controla el relé con una señal de baja potencia (ej. 3.3V).

Los módulos de relé suelen tener pines de control (VCC, GND, INx) y terminales de conmutación (NC, NO, COM).

  • VCC y GND: Alimentación para el relé (normalmente 5V, tu ESP32-C3 puede proporcionarlos).
  • INx (Input): Este es el pin de control digital. Cuando tu ESP32-C3 envía una señal a este pin (ALTA o BAJA, dependiendo del relé), el relé cambia de estado.
  • NC (Normally Closed – Normalmente Cerrado): La carga está conectada a este terminal y al COM. Por defecto (sin activar el relé), el circuito está CERRADO y pasa corriente.
  • NO (Normally Open – Normalmente Abierto): La carga está conectada a este terminal y al COM. Por defecto (sin activar el relé), el circuito está ABIERTO y no pasa corriente.
  • COM (Common – Común): Este es el pin común al que conectas un lado de tu carga.

Para la mayoría de los proyectos, conectamos el dispositivo a los pines NO y COM, de modo que el relé enciende el dispositivo cuando se activa.

Conexión del circuito (Módulo Relé con Botón y LED como Carga Segura):

¡Siempre trabaja con la ESP32-C3 SuperMini desconectada del computador al hacer conexiones!

Configuración del Relé:

  • VCC del Módulo Relé a 5V en tu ESP32-C3 (el ESP32-C3 SuperMini suele tener un pin de 5V).
  • GND del Módulo Relé a GND en tu ESP32-C3.
  • IN1 (o cualquier INx disponible) del Módulo Relé a GPIO 7 en tu ESP32-C3.

Configuración del Botón (revisa el Tutorial 1 para más detalles):

  • Una patilla del Botón a GPIO 10 en tu ESP32-C3.
  • La patilla opuesta del Botón a GND.
  • ¡Importante! Usaremos la resistencia pull-up interna de la ESP32-C3 para este botón en el código, así evitamos añadir una resistencia física.

Configuración del LED (como carga de demostración segura):

  • Conecta el polo positivo de una batería de 3V o 5V (o el pin 3.3V de tu ESP32-C3 si la carga es pequeña y temporal) al terminal COM de tu relé.
  • Conecta el terminal NO (Normally Open) de tu relé a la patilla larga (ánodo) de tu LED.
  • La patilla corta (cátodo) de tu LED a una Resistencia de 220 Ohm.
  • El otro extremo de la Resistencia de 220 Ohm a la patilla negativa de tu batería o a GND de la ESP32-C3 (si usas su 3.3V).
    • Nota: Para la simulación en Wokwi, conectaremos directamente el COM a 3.3V y el NO al LED, que se conecta a GND.

Esquemático y Simulación en Wokwi:

Observa cómo se conectan el relé, el botón y el LED. Haz clic en la imagen para abrir la simulación en Wokwi. Podrás presionar el botón virtual y ver cómo el relé se activa y el LED se enciende.

Tutorial 6: Control de Dispositivos de Alto Voltaje

Código para la Actividad 1:

Utilizaremos la función digitalWrite() para controlar el relé y digitalRead() para el botón.

// Define los pines para el relé y el botón
#define RELAY_PIN GPIO_NUM_7  // Pin para controlar el relé
#define BUTTON_PIN GPIO_NUM_10 // Pin para leer el botón

void setup() {
  Serial.begin(115200);
  Serial.println(F("Control de Relé con Botón Iniciado."));

  pinMode(RELAY_PIN, OUTPUT);     // El pin del relé es una salida
  // ¡Importante! La mayoría de los módulos relé se activan con LOW (señal invertida)
  // Siempre verifica la documentación de tu módulo relé.
  digitalWrite(RELAY_PIN, HIGH);  // Apaga el relé al inicio (HIGH para relés que activan con LOW)

  pinMode(BUTTON_PIN, INPUT_PULLUP); // El pin del botón como entrada con resistencia pull-up interna
                                     // Esto significa que el botón estará HIGH si no se presiona, y LOW al presionarse.
}

void loop() {
  // Lee el estado del botón. Usamos INPUT_PULLUP, así que LOW significa presionado.
  if (digitalRead(BUTTON_PIN) == LOW) { // Si el botón está presionado
    // Enciende el relé (poniendo el pin en LOW si el relé es de activación invertida)
    digitalWrite(RELAY_PIN, LOW);
    Serial.println(F("Boton PRESIONADO: Relé ACTIVADO (LED ON)."));
    delay(500); // Pequeño retardo para evitar múltiples lecturas al presionar
  } else {
    // Apaga el relé (poniendo el pin en HIGH si el relé es de activación invertida)
    digitalWrite(RELAY_PIN, HIGH);
    // Serial.println(F("Boton SUELTO: Rele DESACTIVADO (LED OFF).")); // Esto saturaría el serial
  }
}

Objetivo: Controlar el encendido y apagado del relé automáticamente usando el módulo LDR (del Tutorial 4), simulando una luz que se enciende al anochecer.

Descripción: Esta actividad te mostrará el poder de la automatización. Conectarás el módulo LDR para que, al detectar «oscuridad» (o un nivel de luz bajo que configures), el relé se active y encienda nuestro LED de demostración. Cuando haya luz, se apagará.

Materiales que necesitas:

  • ESP32-C3 SuperMini
  • Módulo Relé 5V 2 Canales
  • LED y Resistencia de 220 Ohm (como carga segura)
  • Módulo de Resistor Fotosensible (LDR) (del Tutorial 4)
  • Cables Dupont
  • Protoboard

Conexión del circuito:

¡Asegúrate de que tu ESP32-C3 SuperMini esté desconectada del computador!

  • Conexiones Módulo Relé: (Las mismas que la Actividad 1)
    • VCC del Relé a 5V
    • GND del Relé a GND
    • IN1 del Relé a GPIO 7
  • Conexiones LED (Carga): (Las mismas que la Actividad 1)
    • Positivo de batería/3.3V a COM del relé.
    • NO del relé a Ánodo del LED.
    • Cátodo del LED a Resistencia 220 Ohm a GND.
  • Conexiones Módulo LDR: (Revisa la Actividad 2 del Tutorial 4)
    • VCC del LDR a 3.3V
    • GND del LDR a GND
    • DO (Salida Digital) del LDR a GPIO 5 en tu ESP32-C3.
    • ¡Importante! Asegúrate de ajustar el potenciómetro azul en tu módulo LDR para que su salida DO cambie a HIGH (o LOW, dependiendo de cómo lo leas) cuando el nivel de luz sea el deseado para activar el relé.

Esquemático y Simulación en Wokwi:

Aquí verás cómo se conectan el relé, el LED y el módulo LDR. Haz clic en la imagen para abrir la simulación en Wokwi y observa cómo la luz del LDR virtual controla el encendido/apagado del LED a través del relé.

Tutorial 6: Control de Dispositivos de Alto Voltaje

// Define los pines para el relé y el LDR
#define RELAY_PIN GPIO_NUM_7    // Pin para controlar el relé
#define LDR_DOUT_PIN GPIO_NUM_5 // Pin para leer la salida digital (DO) del módulo LDR

void setup() {
  Serial.begin(115200);
  Serial.println(F("Sistema de Luz Automatica (LDR + Rele) Iniciado."));

  pinMode(RELAY_PIN, OUTPUT);     // El pin del relé es una salida
  digitalWrite(RELAY_PIN, HIGH);  // Asegura que el relé esté APAGADO al inicio (HIGH para relés que activan con LOW)

  pinMode(LDR_DOUT_PIN, INPUT);   // El pin del LDR como entrada
}

void loop() {
  // Lee el estado digital del módulo LDR
  int ldrState = digitalRead(LDR_DOUT_PIN);

  // Lógica de control:
  // Si el LDR detecta "oscuridad" (ldrState == HIGH, asumiendo configuración de módulo)
  // enciende el relé (poniendo el pin en LOW si es de activación invertida)
  if (ldrState == HIGH) { // Si el módulo LDR indica "oscuridad"
    digitalWrite(RELAY_PIN, LOW); // Activa el relé (enciende el LED)
    Serial.println(F("Luz Baja Detectada: Relé ACTIVADO (LED ON)."));
  } else {
    // Si el LDR detecta "claridad" (ldrState == LOW)
    digitalWrite(RELAY_PIN, HIGH); // Desactiva el relé (apaga el LED)
    Serial.println(F("Luz Suficiente Detectada: Relé DESACTIVADO (LED OFF)."));
  }

  delay(500); // Pequeña pausa para evitar cambios rápidos y saturación del serial
}

Deja una respuesta

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