Para projetos de automação residencial o Shield Módulo Relé 5V de 4 Canais é um componente importante, pois a placa em conjunto com o Arduino conectado à internet, possibilita que lâmpadas sejam acionadas através de uma página web, smartphone ou tablet, por exemplo. Por ser um shield, mesmo acoplado na parte de cima do Arduino, você ainda poderá utilizar as portas digitais e analógicas da placa. Especificações e características:
- Tensão de operação: 5VDC
- Corrente de operação: 15 ~ 20mA (por canal)
- Capacidade do relé: 24VDC/3A e 120VAC/3A
- Corrente máxima por canal: 3A
- 4 canais independentes
- Tempo de resposta: 5 ~ 10ms
1 2 3 4 | //Programa : Relé de Impulso SRG
//Autor : Sinésio Gomes
//Data :23/05/2023 |
5 6 7 8 9 10 11 12 | // Definição das variáveis int Rele_3 = 6; // Declara a variável "Rele" do tipo inteiro no endereço "6" int Rele_4 = 7; // Declara a variável "Rele" do tipo inteiro no endereço "7"
int botao = A1; //Declara a variável "botão" do tipo inteiro no endereço "A1"
int funcaoa = 0; // Declara a variável "função a" com valor inicial 0
int funcaob = 0; // Declara a variável "função b" com valor inicial 0
int estado = 0; // Declara a variável "estado" com valor inicial 0 |
13 14 15 16 17 18 19 | // Definição dos pinos de entradas void setup()
{ pinMode (Rele_3, OUTPUT); //Define o Rele como saida
pinMode (Rele_4, OUTPUT); //Define o Rele como saida
pinMode (botao, INPUT); //Define o botão como entrada
} |
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | // Programação principal void loop()
{funcaoa = digitalRead (botao); // ler o valor enviado pelo botão
if ((funcaoa == HIGH) && (funcaob == LOW))
{(estado = estado +1);
delay (500); // tempo apertando o botão
} funcaob = funcaoa;
if (estado > 3){ estado = 0; } // zera o contador
switch (estado) {
case 0:
digitalWrite (Rele_3, LOW); // desliga o rele 3
digitalWrite (Rele_4, LOW); // desliga o Rele 4
break;
case 1:
digitalWrite (Rele_3, LOW); // desliga o rele 3
digitalWrite (Rele_4, HIGH); // desliga o Rele 4
break;
case 2:
digitalWrite (Rele_3, HIGH); // desliga o rele 3
digitalWrite (Rele_4, LOW); // desliga o Rele 4
break;
case 3:
digitalWrite (Rele_3, HIGH); // desliga o rele 3
digitalWrite (Rele_4, HIGH); // desliga o Rele 4
break;
}
} |