Download - Controle Remoto IR No Arduino
-
8/17/2019 Controle Remoto IR No Arduino
1/4
2/1/2016 Arduino e Cia: Controle remoto IR no Arduino
http://www.arduinoecia.com.br/2013/09/controle-remoto-ir-no-arduino.html 1/4
Controle remoto IR no Arduino
Já vimos aqui no Arduino e Cia como controlar remotamente o Arduino usando bluetooth (ainda não viu ? então
veja o artigo Acionando portas do Arduino usando Android e bluetooth).
Hoje vou apresentar um outro método para controle remoto das portas do Arduino Uno R3, desta vez usando
um Kit Controle Remoto IR, mostrado na foto abaixo, que chegou hoje da FILIPEFLOP :
O kit é composto por 1 módulo receptor IR, 1 led infravermelho, 1 cabo de conexão e 1 controle remoto (com
bateria CR2025).
No exemplo de hoje, vou focar na recepção do sinal do controle remoto, acendendo e apagando leds, conforme
a sequência abaixo :
Tecla 1 : Acende led vermelho
Tecla 2 : Apaga led vermelho
Tecla 4 : Acende led verde
Tecla 5 : Apaga led verde
Tecla 9 : Apaga os 2 leds
Entendendo o principio de funcionamento do receptor IR, fica fácil controlar qualquer porta do Arduino e partir
para o acionamento de relés, motores e outros dispositivos.
Atualizado : Veja também neste outro artigo como utilizar o controle remoto IR para controlar um módulo relé
4 canais.
A ligação do módulo receptor IR segue o esquema mostrado na imagem abaixo, à esquerda, que consiste na
ligação dos pinos do módulo à porta 11 do Arduino (sinal), 5v e GND. Na imagem da direita, podemos ver o
módulo em funcionamento, com um led que pisca quando o módulo está recebendo sinais infravermelhos :
Circuito Arduino e módulo IR infravermelho
http://4.bp.blogspot.com/-90Sd2J-vaeI/UiqPNH-fvnI/AAAAAAAABJM/DZgJbgoKhBY/s1600/DSC01943+(C%C3%B3pia).JPGhttp://4.bp.blogspot.com/-90Sd2J-vaeI/UiqPNH-fvnI/AAAAAAAABJM/DZgJbgoKhBY/s1600/DSC01943+(C%C3%B3pia).JPGhttp://4.bp.blogspot.com/-90Sd2J-vaeI/UiqPNH-fvnI/AAAAAAAABJM/DZgJbgoKhBY/s1600/DSC01943+(C%C3%B3pia).JPGhttp://4.bp.blogspot.com/-90Sd2J-vaeI/UiqPNH-fvnI/AAAAAAAABJM/DZgJbgoKhBY/s1600/DSC01943+(C%C3%B3pia).JPGhttp://4.bp.blogspot.com/-90Sd2J-vaeI/UiqPNH-fvnI/AAAAAAAABJM/DZgJbgoKhBY/s1600/DSC01943+(C%C3%B3pia).JPGhttp://4.bp.blogspot.com/-90Sd2J-vaeI/UiqPNH-fvnI/AAAAAAAABJM/DZgJbgoKhBY/s1600/DSC01943+(C%C3%B3pia).JPGhttp://www.arduinoecia.com.br/2013/03/acionando-portas-do-arduino-usando.htmlhttp://www.arduinoecia.com.br/2013/03/acionando-portas-do-arduino-usando.htmlhttp://www.arduinoecia.com.br/2013/03/acionando-portas-do-arduino-usando.htmlhttp://www.arduinoecia.com.br/2013/10/modulo-rele-4-canais-e-controle-remoto.htmlhttp://4.bp.blogspot.com/-90Sd2J-vaeI/UiqPNH-fvnI/AAAAAAAABJM/DZgJbgoKhBY/s1600/DSC01943+(C%C3%B3pia).JPGhttp://www.filipeflop.com/http://www.filipeflop.com/pd-6b86d-kit-controle-remoto-ir.html?ct=&p=1&s=1http://www.filipeflop.com/pd-6b58d-arduino-uno-r3-cabo-usb.htmlhttp://www.arduinoecia.com.br/2013/03/acionando-portas-do-arduino-usando.html
-
8/17/2019 Controle Remoto IR No Arduino
2/4
2/1/2016 Arduino e Cia: Controle remoto IR no Arduino
http://www.arduinoecia.com.br/2013/09/controle-remoto-ir-no-arduino.html 2/4
Para o circuito, vamos utilizar 2 leds, 2 resistores de 330 ohms e o receptor IR, tomando o cuidado de observar
a ligação correta dos pinos do módulo, evitando a queima do componente :
Criei um programa que faz a leitura do sinal IR recebido, e com base no valor lido, aciona as portas 5 e 7, onde
estão ligados os leds. Esse programa também apresenta no monitor serial os valores lidos pelo receptor IR :
http://3.bp.blogspot.com/-2QhCQnwdt5o/UiqSXoMe8GI/AAAAAAAABJY/D-PbDylpPGo/s1600/modulo+-+pinagem.jpghttp://1.bp.blogspot.com/-Svce0iMo9FM/U36XFhVrfyI/AAAAAAAACPA/f7r2P4GvhFU/s1600/IR+Leds.jpg
-
8/17/2019 Controle Remoto IR No Arduino
3/4
2/1/2016 Arduino e Cia: Controle remoto IR no Arduino
http://www.arduinoecia.com.br/2013/09/controle-remoto-ir-no-arduino.html 3/4
Desta forma consigo descobrir os valores, em hexadecimal, do sinal recebido por todas as teclas do controle
remoto. No programa, usei os valores FF30CF (Tecla 1), FF18E7 (tecla 2), FF10EF (tecla 4), FF38C7 (tecla 5),
e FF52AD (tecla 9).
Finalmente, no loop, eu testo o valor recebido pelo receptor IR, e com alguns comandos IF eu verifico qual tecla
foi acionada, acendendo e apagando o led correspondente. Usei a tecla 9 para apagar os 2 leds de uma só vez.
Para este programa, vamos utilizar a biblioteca IRremote, que voce pode baixar clicando aqui :
1
2
3
4
5
6
7
8
910
11
12
13
14
15
16
17
18
19
20
2122
23
24
25
// Programa : Teste Controle Remoto IR
// Autor : Arduino e Cia
#include
int RECV_PIN = 11;
float armazenavalor;
int pinoledvermelho = 5;
int pinoledverde = 7;
IRrecv irrecv(RECV_PIN);
decode_results results;
void setup()
{
pinMode(pinoledvermelho, OUTPUT);
pinMode(pinoledverde, OUTPUT);
Serial.begin(9600);
irrecv.enableIRIn(); // Inicializa o receptor IR
}
void loop()
{
if (irrecv.decode(&results))
{
https://github.com/z3t0/Arduino-IRremotehttp://3.bp.blogspot.com/-EcI1l-JEoTE/UiqWP17aykI/AAAAAAAABJ0/Ynhkkth3Gw4/s1600/serial+monitor.jpg
-
8/17/2019 Controle Remoto IR No Arduino
4/4
2/1/2016 Arduino e Cia: Controle remoto IR no Arduino
http://www.arduinoecia.com.br/2013/09/controle-remoto-ir-no-arduino.html 4/4
26
27
28
29
30
31
32
33
34
3536
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
Serial.print("Valor lido : ");
Serial.println(results.value, HEX);
armazenavalor = (results.value);
if (armazenavalor == 0xFF30CF) //Verifica se a tecla 1 foi acionada
{
digitalWrite(pinoledvermelho, HIGH); //Acende o led vermelho
}
if (armazenavalor == 0xFF18E7) //Verifica se a tecla 2 foi acionada
{
digitalWrite(pinoledvermelho, LOW); //Apaga o led vermelho}
if (armazenavalor == 0xFF10EF) //Verifica se a tecla 4 foi acionada
{
digitalWrite(pinoledverde, HIGH); //Acende o led verde
}
if (armazenavalor == 0xFF38C7) //Verifica se a tecla 5 foi acionada
{
digitalWrite(pinoledverde, LOW); //Apaga o led verde
}
if (armazenavalor == 0xFF52AD) //Verifica se a tecla 9 foi acionada
{
digitalWrite(pinoledvermelho, LOW); //Apaga todos os leds
digitalWrite(pinoledverde, LOW);
}
irrecv.resume(); //Le o próximo valor
}
}