ESP32 - Módulo de relé de 4 canales

Este tutorial proporciona instrucciones paso a paso para utilizar un ESP32 para controlar un módulo de relé de 4 canales. Cubre los siguientes aspectos en detalle:

Cuando se trata de gestionar cuatro dispositivos de alto voltaje, como bombas, ventiladores o actuadores, tenemos dos opciones. Podemos optar por múltiples módulos de relé o elegir un enfoque más sencillo. La opción más simple es usar un módulo de relé de cuatro canales, que es una placa única equipada con cuatro relés integrados. Esto simplifica el proceso de configuración, facilitando el control de todos los dispositivos de forma eficaz.

Hardware Requerido

1×Módulo de Desarrollo ESP32 ESP-WROOM-32
1×Cable USB Tipo-A a Tipo-C (para PC USB-A)
1×Cable USB Tipo-C a Tipo-C (para PC USB-C)
1×4-Channel Relay Module
1×Protoboard
1×Cables Puente
1×(Opcional) 5V Power Adapter for ESP32
1×(Recomendado) Placa de Expansión de Terminales de Tornillo para ESP32
1×(Recomendado) Breakout Expansion Board for ESP32
1×(Recomendado) Divisor de Alimentación para ESP32

Or you can buy the following kits:

1×DIYables ESP32 Starter Kit (ESP32 included)
1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgación: Algunos de los enlaces proporcionados en esta sección son enlaces de afiliado de Amazon. Podemos recibir una comisión por las compras realizadas a través de estos enlaces sin costo adicional para usted. Apreciamos su apoyo.

Acerca del Módulo de Relé de 4 Canales

Diagrama de pines del módulo de relés de 4 canales

Diagrama de pines del módulo de relé de 4 canales

Un módulo de relés de 4 canales tiene los siguientes pines:

  • Pines de alimentación para placas de relés
    • DC+: conecta este pin al pin de 5 V de una fuente de alimentación
    • DC-: conecta este pin al pin GND de la fuente de alimentación y también al pin GND de un ESP32
  • Pines de señal:
    • IN1: este pin recibe la señal de control de un ESP32 para controlar el relé 1 en el módulo
    • IN2: este pin recibe la señal de control de un ESP32 para controlar el relé 2 en el módulo
    • IN3: este pin recibe la señal de control de un ESP32 para controlar el relé 3 en el módulo
    • IN4: este pin recibe la señal de control de un ESP32 para controlar el relé 4 en el módulo
  • Pines de salida: NCx (normalmente cerrado pin), NOx (normalmente abierto pin), COMx (común pin),
    • NC1, NO1, COM1: Estos pines se conectan a un dispositivo de alta tensión que es controlado por el relé 1
    • NC2, NO2, COM2: Estos pines se conectan a un dispositivo de alta tensión que es controlado por el relé 2
    • NC3, NO3, COM3: Estos pines se conectan a un dispositivo de alta tensión que es controlado por el relé 3
    • NC4, NO4, COM4: Estos pines se conectan a un dispositivo de alta tensión que es controlado por el relé 4

    Para aprender a conectar un relé a dispositivos de alta tensión y a entender las diferencias entre normalmente cerrado y normalmente abierto, consulta el ESP32 - Relay tutorial.

    Además, el tutorial cubre los 4 jumpers disponibles en el módulo de relé, que te permiten seleccionar de forma individual entre configuraciones de disparo por nivel bajo y por nivel alto para cada relé.

Diagrama de Cableado

Es importante señalar que el módulo de relé de 4 canales consume una cantidad considerable de energía. Por lo tanto, se desaconseja encarecidamente alimentarlo directamente desde el pin de 5V del ESP32. En su lugar, se recomienda utilizar una fuente de alimentación externa de 5V específicamente para el módulo de relé. Esta precaución garantiza un rendimiento óptimo y previene posibles problemas que podrían surgir por una fuente de alimentación insuficiente.

Por lo tanto, debemos usar tres fuentes de energía:

  • Un adaptador de alimentación de 5 V para el ESP32
  • Un adaptador de alimentación de 5 V para el módulo de relé de 4 canales
  • Un adaptador de alimentación de mayor voltaje (12 VDC, 24 VDC, 48 VDC, 220 VAC...) para los dispositivos que son gestionados por el módulo de relé de 4 canales
  • Un diagrama de cableado con las tres fuentes de alimentación. La fuente de alimentación para el ESP32 (no incluida en la imagen) puede ser mediante un cable USB o un conector de alimentación.
Diagrama de cableado del módulo de relés de 4 canales ESP32

This image is created using Fritzing. Click to enlarge image

Si no sabe c\u00f3mo alimentar ESP32 y otros componentes, encuentre instrucciones en el siguiente tutorial: C\u00f3mo alimentar ESP32.

  • Podemos reducir la cantidad de adaptadores de corriente al utilizar una fuente de 5V para el ESP32 y el módulo de relé de 4 canales.
Diagrama de cableado del módulo de relé de 4 canales ESP32 con dos fuentes de alimentación.

This image is created using Fritzing. Click to enlarge image

※ Nota:

Si los cuatro dispositivos que son gestionados por un módulo de relé de 4 canales tienen el mismo voltaje, entonces se puede usar un único adaptador de alimentación de alto voltaje para todos ellos. Sin embargo, si el voltaje es diferente para cada dispositivo, entonces deben usarse adaptadores de alimentación de alto voltaje separados.

Cómo programar un módulo de relé de 4 canales

  • Configura el pin del ESP32 en modo de salida digital con la función pinMode().
pinMode(PIN_RELAY_1, OUTPUT); pinMode(PIN_RELAY_2, OUTPUT); pinMode(PIN_RELAY_3, OUTPUT); pinMode(PIN_RELAY_4, OUTPUT);
  • Manipula el estado del relé con la función digitalWrite().
digitalWrite(PIN_RELAY_1, HIGH); digitalWrite(PIN_RELAY_2, HIGH); digitalWrite(PIN_RELAY_3, HIGH); digitalWrite(PIN_RELAY_4, HIGH);

Código ESP32

/* * Este código de ESP32 fue desarrollado por es.newbiely.com * Este código de ESP32 se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/esp32/esp32-4-channel-relay-module */ #define PIN_RELAY_1 27 // The ESP32 pin GPIO27 connected to the IN1 pin of relay module #define PIN_RELAY_2 26 // The ESP32 pin GPIO26 connected to the IN2 pin of relay module #define PIN_RELAY_3 25 // The ESP32 pin GPIO25 connected to the IN3 pin of relay module #define PIN_RELAY_4 33 // The ESP32 pin GPIO33 connected to the IN4 pin of relay module // the setup function runs once when you press reset or power the board void setup() { Serial.begin(9600); // initialize digital pin as an output. pinMode(PIN_RELAY_1, OUTPUT); pinMode(PIN_RELAY_2, OUTPUT); pinMode(PIN_RELAY_3, OUTPUT); pinMode(PIN_RELAY_4, OUTPUT); } // the loop function runs over and over again forever void loop() { Serial.println("Turn on all"); digitalWrite(PIN_RELAY_1, HIGH); digitalWrite(PIN_RELAY_2, HIGH); digitalWrite(PIN_RELAY_3, HIGH); digitalWrite(PIN_RELAY_4, HIGH); delay(1000); Serial.println("Turn off all"); digitalWrite(PIN_RELAY_1, LOW); digitalWrite(PIN_RELAY_2, LOW); digitalWrite(PIN_RELAY_3, LOW); digitalWrite(PIN_RELAY_4, LOW); delay(1000); }

Pasos R\u00e1pidos

Para empezar con ESP32 en el IDE de Arduino, siga estos pasos:

  • Consulta el tutorial cómo configurar el entorno para ESP32 en Arduino IDE si es la primera vez que usas ESP32.
  • Conecta los componentes como se muestra en el diagrama.
  • Conecta la placa ESP32 a tu computadora con un cable USB.
  • Abre el IDE de Arduino en tu computadora.
  • Elige la placa ESP32 correcta, como (p. ej. NodeMCU 1.0 (ESP-12E Module)), y su puerto COM respectivo.
  • Copia el código y ábrelo con el IDE de Arduino.
  • Haz clic en el botón Subir en el IDE para enviar el código al ESP32.
  • Escucha el sonido de clic de los relés.
  • Revisa el Monitor Serial para observar el resultado.
COM6
Send
Turn on all Turn off all Turn on all Turn off all Turn on all Turn off all Turn on all Turn off all
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Video Tutorial

Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.

Referencias de funciones

※ NUESTROS MENSAJES

  • No dude en compartir el enlace de este tutorial. Sin embargo, por favor no use nuestro contenido en otros sitios web. Hemos invertido mucho esfuerzo y tiempo en crear el contenido, ¡por favor respete nuestro trabajo!