Etiquetas:

Cuando se desarrolla un sistema domótico, es habitual utilizar un módulo de relés multicanal. Estos módulos tienen varias salidas de relé (2, 4, 8 o 16) y ofrecen una conexión sencilla. Esto permite controlar varios dispositivos con un solo microcontrolador.

Material

  • Ordenador
  • Arduino UNO
  • Módulo de relés multicanal (módulo de relés de 2, 4 u 8 canales)

Cómo funciona

El relé está formado por un solenoide y un contactor mecánico. Cuando la corriente en el terminal de entrada es lo suficientemente alta, el solenoide se magnetiza, obligando al contactor a cerrar el circuito de alimentación. Los módulos multicanal, como su nombre indica, tienen varios relés, que pueden utilizarse simplemente para controlar diferentes dispositivos eléctricos.

module-relay-4-channel-overview Uso de un módulo de relé multicanal con Arduino
module-relay-8-channel-overview Uso de un módulo de relé multicanal con Arduino

Esquema

El módulo de relés de 4 canales tiene una fila de pines de entrada. El pin GND se conecta a la tierra de la fuente de alimentación y a la tierra del microcontrolador. Si las tierras no están conectadas correctamente, las señales de control serán ignoradas. El pin VCC se conecta a los 5V de la fuente de alimentación y los pines INx se conectan a las salidas del microcontrolador.

arduino-module-relay-4-channel_bb Uso de un módulo de relé multicanal con Arduino

Las conexiones son similares para los módulos de 2 y 8 canales.

arduino-module-relay-8-channel_bb Uso de un módulo de relé multicanal con Arduino

Código

Para accionar el módulo de relés multicanal, crearemos un bucle en las salidas del microcontrolador para activar o desactivar el relé. El código es muy similar para los módulos de relés de 2, 4 u 8 canales.

//Constants
#define NUM_DO 4 //8

//Parameters
const int digPin[NUM_DO] = {2, 3, 4, 5}; //{2, 3, 4, 5, 6, 7, 8, 9};

void setup() {
  //Init Serial USB
  Serial.begin(9600);
  Serial.println(F(" Initialize System "));
  //Init pwm output
  for (int i = 0; i < NUM_DO; i++) pinMode(digPin[i], OUTPUT);
}

void loop() {
  for (int i = 0; i < NUM_DO; i++) {
    digitalWrite(digPin[i], HIGH);
    delay(500);
    digitalWrite(digPin[i], LOW);
    delay(500);
  }
}

Resultado

Una vez enchufado el módulo de relés y cargado el código, los LEDs y los relés deberían encenderse y apagarse en secuencia.

Aplicaciones

  • Creación de un sistema de automatización del hogar

Fuentes

Retrouvez nos tutoriels et d’autres exemples dans notre générateur automatique de code
La Programmerie