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.
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
Basta fazer as mesmas conexões da imagem abaixo:
(clique na imagem pra ampliá-la)
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.
Pronto, qualquer duvida é só deixar nos comentários ou entrar em Contato
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:
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
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 ...''
ResponderExcluirolá, 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
Excluirsiga 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!
Olá, Obrigado por compartilhar!
ResponderExcluirEu 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
Por nada, obrigado por colaborar para melhorar!
Excluirmeu codiga da erro nessas duas frases IRrecv irrecv(RECV_PIN);
ResponderExcluirpara
decode_results results; pois presiso ler o controle e nao dá
Olá, Danilohv.
ExcluirSe 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
gostaria de saber como colocar varios botoes.
ResponderExcluirDentro dessa ideia como eu faço para cada botão ligar e desligar alguma coisa? exemplo:
ResponderExcluirbotã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?