Código Arduino para um módulo de relés de 4 para 16 canais 5V

Código Arduino para um módulo de relés de 4 para 16 canais 5V

Neste tutorial, aprenderemos como controlar um módulo de relés de 4 canais usando um Arduino. Isso permitirá que você gerencie cargas AC, como lâmpadas, ventiladores ou aquecedores, de forma segura e eficaz. O código fornecido pode ser adaptado para módulos com mais canais, tornando-o versátil para várias aplicações.

Antes de nos aprofundarmos nos detalhes, é essencial entender os componentes envolvidos neste projeto. O módulo de relé serve como um interruptor que pode controlar dispositivos de alta tensão enquanto é controlado por sinais de baixa tensão do Arduino. Cada relé pode ser normalmente aberto ou normalmente fechado, o que permite flexibilidade no funcionamento dos dispositivos conectados. Consulte o vídeo para orientação visual (aos 02:15).

Hardware explicado

Os principais componentes deste projeto incluem a placa Arduino e o módulo de relés. O Arduino atua como controlador, enviando sinais ao módulo de relés com base no código que escrevemos. O módulo de relés contém vários relés que podem ligar e desligar cargas AC. Cada relé possui três terminais: normalmente fechado (NC), normalmente aberto (NO) e um terminal comum (COM).

Quando o relé é ativado, o terminal comum conecta-se ao terminal normalmente aberto, permitindo que a corrente flua através da carga. Trata-se de um relé acionado por nível baixo, o que significa que ele é ativado quando recebe um sinal de baixa tensão (0V) e desativado com um sinal de alta tensão (5V). Compreender esse mecanismo é crucial para controlar com segurança dispositivos de corrente alternada.

Detalhes da ficha técnica

FabricanteGenérico
Número da peçamódulo de relés de 4 canais
Tensão lógica/E/S5 V
Tensão de alimentação5 V
Corrente de saída (por canal)10 A máx.
Corrente de pico (por canal)15 A
Orientação sobre a frequência PWMNão aplicável
Limiares lógicos de entradaBaixo: 0 V; Alto: 5 V
Queda de tensão / RDS(on)/ saturaçãoNão aplicável
Limites térmicos85 °C
PacoteMódulo de relé padrão
Notas / variantesDisponível em variantes de 2, 4, 8 e 16 canais

  • Certifique-se de que a corrente nominal do relé não seja excedida para evitar danos.
  • Use fontes de alimentação separadas em aplicações de alta corrente para isolar o Arduino.
  • Mantenha a dissipação de calor adequada dos relés durante a operação.
  • Verifique a fiação cuidadosamente para evitar curtos-circuitos.
  • Use optoacopladores, se necessário, para proteção adicional.

Instruções de fiação

Arduino wirign for 4 channel relay to control 4 AC load
Arduino wirign for 4 channel relay to control 4 AC load

Para ligar o módulo de relés ao seu Arduino, comece conectando o pino GND do módulo de relés ao pino GND do Arduino. Em seguida, conecte o pino VCC do módulo de relés ao pino 5V do Arduino. Para os pinos de controlo, conecte os pinos IN1, IN2, IN3 e IN4 do módulo de relés aos pinos digitais 2, 3, 4 e 5 do Arduino, respetivamente. Esta configuração permite que o Arduino controle o estado de cada relé.

Certifique-se de posicionar o módulo de relé sobre uma superfície isolante, pois ele lida com cargas AC. Se estiver usando uma fonte de alimentação externa para os relés, conecte o terra dessa fonte ao terra do Arduino para garantir uma referência comum. Isso é crucial para o funcionamento correto e para a segurança.

Exemplos de Código e Tutorial Passo a Passo

O trecho de código a seguir inicializa o número de relés e define os pinos de controle:

int ch = 4; // number of relays you have
int relay[]={2,3,4,5}; // Arduino pin numbers for relays

Isto define o número de relés e as conexões correspondentes aos pinos do Arduino. O arrayrelayarmazena os números dos pinos usados para controlar cada relé.

Wirig relay module to AC load

Em seguida, configuramos os pinos emsetup()função:

void setup() {
    Serial.begin(9600); // prepare Serial monitor
    for(i=0; i < ch; i++) {
        pinMode(relay[i], OUTPUT); // set i(th) pin as output
        digitalWrite(relay[i], HIGH); // Turn the relay OFF  
    }
    Serial.println("Robojax 4 Relay Test");
}

Este código inicializa o monitor serial e define cada pino do relé como saída, deixando-os desligados por padrão. A instrução Serial.print confirma que a configuração foi concluída.

O loop principal do programa controla os relés:

void loop() {
    for(int i=0; i < ch; i++) {
        Serial.print("Relay "); Serial.print(i+1); Serial.println(" ON");
        digitalWrite(relay[i], LOW); // Turn the relay ON    
        delay(wait);  
    }
    for(int i=0; i < ch; i++) {
        Serial.print("Relay "); Serial.print(i+1); Serial.println(" OFF");
        digitalWrite(relay[i], HIGH); // Turn the relay OFF    
        delay(wait);  
    }
    Serial.println("====== loop done ==");
}

Este laço primeiro liga cada relé um por um, aguarda um tempo especificado e então os desliga na mesma sequência. A saída serial ajuda a monitorar o estado dos relés em tempo real.

Demonstração / O que esperar

Ao executar o programa, você deverá ver os relés ativarem em sequência, ligando e desligando a cada dois segundos. Se tudo estiver ligado corretamente, as cargas CA conectadas aos relés responderão de acordo. Tenha cuidado com a corrente consumida pelo Arduino; se muitos relés forem ativados simultaneamente, isso pode exceder a capacidade da placa (no vídeo em 13:45).

Marcas de tempo do vídeo

  • 00:00Introdução
  • 02:15Explicação do hardware
  • 05:30Instruções de fiação
  • 08:45Explicação do código
  • 13:45Demonstração

Imagens

Wirig relay module to AC load
Wirig relay module to AC load
Arduino wirign for 4 channel relay to control 4 AC load
Arduino wirign for 4 channel relay to control 4 AC load
88-This is code for a 4- to 16-channel 5V relay module for Arduino.
Idioma: C++
89-If you want to replace the loop inside setup(), then use this as shown in the video.
Idioma: C++
Copiado!

Coisas que você pode precisar

Recursos e referências

Ainda não há recursos.

Arquivos📁

Arquivo Fritzing