23 de out. de 2014

Projeto 36 – Acionando LED's e rele com infravermelho

Projeto 36 – Acionando LED's e rele com infravermelho 
Olá pessoal, hoje iremos acionar LED’s e rele via controle remoto. Qualquer controle remoto serve: de TV, rádio...etc. Para você fazer este projeto, você precisará saber qual o valor hexadecimal de cada botão que será utilizado neste projeto, para saber como visualizar o código veja o tutorial http://facacomarduino.blogspot.com.br/2014/09/projeto-34-verificando-codigo-de.html. Já obteve os respectivos valores hexadecimais? Então vamos ao projeto !! Os códigos serão todos comentados para melhor entendimento, podendo ser retirados após a compreensão de cada linha. Bom trabalho !!!


Componentes necessários

1 Infravermelho receptor TL1838 (ou similar)
1 Shield Rele
2 Resistores de 330Ω
2 LED’s
1 Protobord
Fios jumpers


Fazendo o download e importando a biblioteca do IRremote_Master:
2) Faça o download do arquivo IRremote_Master;
3) Descompacte o arquivo;
4) Agora entre no diretório (C:) e na pasta Arquivos de Programas, Arduino, libraries, copie o arquivo descompactado nesta pasta;
5) Pronto para utilizar;


Agora vamos ao código
                                                           
// Projeto 36 – Acionando LED's e rele com infravermelho 
 
#include <IRremote.h>  // Biblioteca necessária para controle do infravermelho receptor.
  
int RECV_PIN = 6; // Pino responsável por receber o código do IR.
int armazenavalor = 0; // Iniciando com valor igual a zero.
int pino_rele = 7; // Pino onde o rele foi conectado no arduino. 
int pino_led1 = 8; // Pino onde o primeiro LED esta conectado no arduino. 
int pino_led2 = 9; // Pino onde o segundo LED esta conectado no arduino. 
int estado_rele = LOW; // Inicia com o rele desligado. 
int estado_led1 = LOW; // Inicia com o primeiro LED apagado. 
int estado_led2 = LOW; // Inicia com o segundo LED também apagado. 

IRrecv irrecv(RECV_PIN); 
decode_results results; 
 
void setup() 
  pinMode(pino_rele, OUTPUT);  // Define todos os pino como de saída. 
  pinMode(pino_led1, OUTPUT);   
  pinMode(pino_led2, OUTPUT); 
 
  digitalWrite(pino_rele, estado_rele); // Coloca os pinos todos os pino em...
  digitalWrite(pino_led1, estado_led1); // estado baixo (pinos desligados). 
  digitalWrite(pino_led2, estado_led2); 
   
  Serial.begin(9600); // Inicializa a serial monitor. 
  irrecv.enableIRIn(); // Inicializa o receptor IR. 


  
void loop() 
  // Verifica se o sensor IR recebeu algum sinal.
  if (irrecv.decode(&results))  
  { 
    // Mostra na serial o valor lido pelo sensor IR.
    Serial.print("Valor lido : ");
    Serial.println(results.value, HEX);
   
    // Armazena o sinal recebido pelo sensor IR. 
    armazenavalor = (results.value);  
    switch (armazenavalor) 
    { 
     case 0xE0E020DF: // Verifica se o botão número 1 do controle remoto foi prescionada.
     // Se prescionado aciona o rele.
     estado_rele = !estado_rele; 
      digitalWrite(pino_rele, estado_rele);
      break; 
     
     case 0xE0E0A05F: // Verifica se o botão número 2 do controle remoto foi prescionada.
     // Se prescionado acende o primeiro LED.
      estado_led1 = !estado_led1; 
      digitalWrite(pino_led1, estado_led1);
      break; 
     
     case 0xE0E0609F: // Verifica se o botão número 3 do controle remoto foi prescionada.
     // Se prescionado ascende o segundo LED. 
      estado_led2 = !estado_led2; 
      digitalWrite(pino_led2, estado_led2);
      break; 
    }
    irrecv.resume(); //Le o próximo valor 
  } 
}


Para certificar se o código está correto pressione o botão Verify/Compile.
Se tudo estiver correto pressione o botão Upload para fazer o upload do código para seu Arduino.


Abra seu Serial Monitor pressionado as teclas Ctrl + Shift + M simultaneamente.

Pressione qualquer um dos botões: 1, 2, 3 de seu controle uma vez e verá o rele, os LED’s serem acionados. Para desliga-los basta pressiona-los novamente.


 Esquema do projeto:






Vídeo do projeto pronto:






- Se você gostou do post, por favor comente! Nos dê um feedback, isto nos incentiva a continuar! :)
- Curta nossa fan page
- Faça o download do nosso app e mantenha-se atualizado em qualquer lugar



Comentários
0 Comentários

0 comentários:

Postar um comentário