Pular para o conteúdo principal

Como usar o botão liga e desliga do controle remoto (IR) para acender e apagar um led no arduino

Olá, amantes de robótica!
Com o infravermelho você poder receber o código do controle remoto da tv, dvd e outros.
Neste post, irei falar como ligar e desligar um led usando apenas o botão liga/desliga do controle remoto.



Veja o vídeo do liga/desliga do controle em funcionamento:





Vamos ao material que precisamos: 



Qtd     Itens:
1      -  Arduino UNO ou qualquer outra versão;
1      -  LED;
1      -  Receptor de infravermelho;
1      -  Resistor 20 ohms (para usar no receptor);
1      -  Resistor 20o ohms (para usar no led);
1      -  Controle remoto pode ser de tv, dvd, mp3;
5      -  Jumpers (Fios).

Não sabe onde comprar as peças, confira esse post:  onde comprar arduino e componentes

Vamos à montagem:



Basta fazer as mesmas conexões da imagem abaixo:
(clique na imagem pra ampliá-la)


Veja as fotos do projeto:











O mais importante, o código fonte:



Não sabe programar? Então acesse: Como programar em Arduíno, fazer robôs e projetos diversos
Se você é iniciante veja:Como enviar (upload) o programa pronto para a placa do arduino uno, mega entre outros

Atenção:
Para o código fonte funcionar é necessário baixar as bibliotecas: Baixar Library.

 /*   
  >>>>> Criando Robô Com Arduino <<<<<   
  ##### Robôs, Projetos e Tutoriais! #####  
  .:: Site principal: http://www.CriandoRoboComArduino.com/     
  .:: Site secundário: http://www.TestCriandoRoboComArduino.com/  
  ========== IMPORTANTE ==========   
  O código está livre para usar, citar, alterar e compartilhar,  
  desde que mantenha o site como referência.   
  Obrigado.  
  --------------------------------------------------------------------------------------------------  
  Projeto: Como usar o botão liga e desliga do controle remoto (IR) para acender e apagar um led no arduino   
  ---------------------------------------------------------------------------------------------------  
 */   
  #include <IRremote.h>// incluindo a biblioteca do infravermelho    
  const int RECEBE_PINO = 11; // pino 11 no arduino    
  int led = 7;// led no pino 7    
  int liga_desliga = 0; //variável para saber se o led está ligado ou desligado    
  int resultado = 0; //resultado do módulo (%) da divisão, se restar ele é 1, se não restar é 0    
  IRrecv ir_recebe(RECEBE_PINO); // declarando a variável do sensor    
  decode_results codigo_recebido; // resultado    
  void setup()    
  {    
  Serial.begin(9600); //mostra o resultado no computador    
  ir_recebe.enableIRIn(); // inicia a recepção    
  pinMode(led, OUTPUT); //defini o led como saída    
  }    
  void loop() {    
  if (ir_recebe.decode(&codigo_recebido)) {//verifica se um código foi recebido    
   if (codigo_recebido.value != 0 ){   
   Serial.println(codigo_recebido.value, HEX); //mostra no serial o resultado    
   }   
   //tem que colocar o 0x antes do número hexadecimal, pois só assim pode comparar no if    
   //comparação do código do ir    
   if (codigo_recebido.value == 0xFFA25D){// verifica se foi pressionado o liga/desliga do controle    
   resultado = liga_desliga % 2;//vê o resultado do módulo (resto da divisão)    
   if (resultado == 0) {//se da divisão não restar nada, ele ligará o led    
    digitalWrite(led, HIGH);   
    delay(500);     
   }else{    
    digitalWrite(led, LOW);    
    delay(500);     
   }    
   liga_desliga++;    
   }    
   ir_recebe.resume(); // recebe o próximo código    
   delay(200);    
  }    
  }    
 /*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::  
   >>>>> Acesse os sites: <<<<<  
   .:: Robôs, Projetos e Tutoriais  
     http://www.CriandoRoboComArduino.com/     
   .:: Testes dos robôs, noticias sobre robótica e muito mais  
     http://www.TestCriandoRoboComArduino.com/  
   >>>>> Inscreva-se nos canais no Youtube: <<<<<  
   .:: Vídeos dos robôs, projetos e tutoriais  
     Criando Robô Com Arduino  
     https://www.youtube.com/CriandoRoboComArduin  
   .:: Mostrando os testes dos robôs e projetos  
     Test Criando Robô Com Arduino  
     https://www.youtube.com/TestCriandoRoboComAr  
   :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/   
Código Atualizado!


Pronto, qualquer duvida é só deixar nos comentários ou entrar em Contato 

Quer ajuda ou quer ajudar? Clique em Ajuda e veja como você pode ajudar ou ser ajudado.



Comentários

  1. quero ligar/desligar com outro controle , sei o código do botão (3977428800) mas não liga , o Arduíno recebe o sinal ,porém o led de comunicação pisca mas não acontece nada com o led, fiquei em dúvida no que você falou sobre '' 0x depois multiplicava ...''

    ResponderExcluir
    Respostas
    1. olá, você tem que colocar o 0x pois a comparação e feita com números hexadecimais. esse código que você pegou ele é decimal, sugiro você ver esse post: http://www.criandorobocomarduino.com/2013/10/como-receber-sinal-de-um-controle.html
      siga o tutorial e veja qual o código do controle no serial do arduino.
      despois você faça esse tutorial.
      qualquer duvida e só perguntar!

      Excluir
  2. Olá, Obrigado por compartilhar!
    Eu fiz só algumas alterações: coloquei um delay de 500ms depois que ele liga ou desliga o led e adicionei uma linha:
    if (codigo_recebido.value != 0 )
    antes do serial print, pq ele ficava mostrando 0 quando não estava recebendo nada

    ResponderExcluir
    Respostas
    1. Por nada, obrigado por colaborar para melhorar!

      Excluir
  3. meu codiga da erro nessas duas frases IRrecv irrecv(RECV_PIN);
    para
    decode_results results; pois presiso ler o controle e nao dá

    ResponderExcluir
    Respostas
    1. Olá, Danilohv.
      Se você já instalou a biblioteca, exclua ela e instale novamente, qualquer coisa me pergunte, veja como instalar: http://www.criandorobocomarduino.com/p/bibliotecas-do-arduino.html

      Excluir
  4. gostaria de saber como colocar varios botoes.

    ResponderExcluir
  5. Dentro dessa ideia como eu faço para cada botão ligar e desligar alguma coisa? exemplo:

    botão 1: liga/desliga as luzes da sala
    botão 2: liga/desliga o portão automático
    botão 3: liga/desliga as luzes do quintal
    e por ai vai.
    Pois eu verifiquei que void loop ja esta configurado automático sem condição, pois ele so acenderá um led mas se por um acaso eu quisesse ligar e desligou outro leds como no exemplo que postei, como eu faria?

    ResponderExcluir

Postar um comentário

O seu comentário estará aguardando aprovação.

Postagens mais Vistas

CarAut v1. Criando um carrinho autônomo (robô) com Arduíno, parte 1/4 (componentes)

Olá, amantes de robótica! ROBÔ ATUALIZADO! MELHORADO O CODIGO FONTE! MELHORADO O DESEMPENHO! VIDEO DE MONTAGEM DO ROBÔ! ACESSE O NOVO TUTORIAL: SEUROBO.COM.BR Veja como ficou o novo robô: Aqui ensinaremos como fazer um carrinho autônomo (CarAut) com Arduíno e um LCD. O projeto não é difícil, entretanto, exige um pouco de tempo, criatividade e paciência. Neste site, farei os robôs, publicarei seus tutoriais e código fonte. Se possível, por favor, compartilhe com outras pessoas. Obrigado! Veja o vídeo do CarAut v1 em funcionamento: Vamos ao material que precisamos:  Qtd     Itens: 1      -  Arduino UNO ou qualquer outra versão; 1      -  Servo motor (HK15138 Standard Analog Servo 38g / 4.3kg / 0.17s); 1      -  Micro servo motor (HXT900 9g / 1.6kg / .12sec Micro Servo); 1      -  Display de LCD 18x2; 1      -  Sensor Ultrasonic HC SR04; 1      -  Speaker (som, buzzer de computador ); 1      -   Resistor 220 Ohms; 1      -  Potenciômetro

Como receber sinal de um controle remoto com infravermelho (TV, DVD, outros) com o arduino

Olá, amantes de robótica! Como ler o sensor de infra vermelho de controle remoto. Com o receptor infravermelho você poder receber o código do controle remoto da tv, dvd e outros. Neste post irei falar como receber os dados do controle. Veja o vídeo do receptor de infravermelho em funcionamento: Vamos ao material que precisamos:  Qtd     Itens: 1      -  Arduino UNO ou qualquer outra versão; 1      -  Receptor de infravermelho; 1      -  Controle remoto pode ser de tv, dvd, mp3; 1      -  Resistor 20 ohms (para usar no receptor); 1      -  Led vermelho; 1      -  Led verde; 1      -  Led Amarelo; 3      -  Resistor 200 ohms (para o led); 6      -  Jumpers (Fios). Não sabe onde comprar as peças, confira esse post:   onde comprar arduino e componentes Vamos à montagem: Basta fazer as mesmas conexões da imagem abaixo: (clique na imagem pra ampliá-la) Atenção: Cuidado com o ligamento do infravermelho, porque você pode ligar errado e esquentá-lo

Como fazer um controle remoto de TV com arduino

Olá, amantes de robótica! Quer sacanear sua família trocando de canal com um controle feito de arduino? Então veja como faze-lo! Veja o vídeo do controle remoto com arduino em funcionamento: Vamos ao material que precisamos:  Qtd     Itens: 1      -  Arduino UNO ou qualquer outra versão; 1      -  LED Infravermelho; 1      -  LED verde ou vermelho; 6      -  Resistor 300 ohms; 4      -  Botões; 1      -  Protoboard; 1      -  Controle da TV que você quer "hackear"; 16     -  Jumpers (Fios). Não sabe onde comprar as peças, confira esse post:   onde comprar arduino e componentes Vamos à montagem: Basta fazer as mesmas conexões da imagem abaixo: (clique na imagem pra ampliá-la) Atenção : Agora pegue o controle normal da TV que você quer sabotar. Veja esse tutorial: Como receber sinal de um controle remoto com infravermelho (TV, DVD, outros) com o arduino Nesse outro tutorial você pegará o código das 4 teclas que iremos clonar. Após peg