ESP8266 - Controle Remoto IR
Você provavelmente já se deparou com o controle remoto infravermelho, também chamado de controle remoto IR, ao usar aparelhos como TVs e ar-condicionados em casa... Este tutorial ensina você a usar o controle remoto infravermelho (IR) e um receptor infravermelho para controlar o ESP8266. Em detalhes, vamos aprender:
- Como conectar um receptor IR a uma placa ESP8266
- Como programar o ESP8266 para ler o comando do controle remoto IR por meio do receptor IR

Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre o Controle Remoto IR
Um sistema de controle IR tem dois componentes: um controle remoto IR e um receptor IR.
- O controle remoto IR é usado para enviar comandos por meio de sinais infravermelhos.
- O receptor IR captura e interpreta esses sinais para controlar o dispositivo.
Um kit IR normalmente consiste nos dois componentes mencionados acima: um controle remoto IR e um receptor IR.
Controle remoto IR
O controle remoto IR é um dispositivo portátil que transmite sinais infravermelhos. Ele é equipado com um teclado com vários botões:
- Cada botão do controle remoto tem uma função ou comando distinto.
- Quando um botão é pressionado, o controle remoto emite um sinal infravermelho invisível. Esse sinal contém um código ou padrão especial ligado ao botão pressionado.
- Como esses sinais infravermelhos pertencem ao espectro infravermelho, eles não podem ser vistos pelo olho humano.

Receptor IR
O módulo receptor IR é um sensor que detecta e recebe os sinais infravermelhos emitidos pelo controle remoto.
O receptor infravermelho detecta os sinais infravermelhos que chegam e os converte no código (comando) que representa o botão pressionado no controle remoto.
O receptor IR pode ser um sensor ou um módulo. Você pode usar as seguintes opções:
- Apenas o módulo receptor IR
- Apenas o sensor receptor IR
- Sensor receptor IR + adaptador


Pinagem do Receptor IR
O módulo ou sensor receptor IR tem três pinos:
- Pino VCC: Conecte este pino ao pino 3.3V ou 5V do ESP8266 ou a uma fonte de alimentação externa.
- Pino GND: Conecte este pino ao pino GND do ESP8266 ou da fonte de alimentação externa..
- Pino OUT (Saída): Este pino é o pino de saída do módulo receptor IR. Conectado a um pino de entrada digital do ESP8266.
Como Funciona
Quando um usuário pressiona um botão no controle remoto IR, as seguintes ações acontecem:
- O controle remoto IR converte o comando do botão em um sinal infravermelho usando um protocolo específico.
- O controle remoto IR emite o sinal infravermelho codificado.
- O receptor IR capta o sinal infravermelho emitido.
- O receptor IR decodifica o sinal infravermelho, traduzindo-o de volta para o comando original.
- O ESP8266 lê e recebe o comando do receptor IR.
- O ESP8266 mapeia o comando recebido para o botão correspondente pressionado no controle remoto IR.
Em resumo, esses passos mostram como o pressionar de um botão do controle remoto IR é convertido em um comando compreensível que pode ser usado pelo ESP8266.
Não se preocupe se parecer complicado. Com a ajuda da biblioteca DIYables_IRcontroller, fica incrivelmente fácil.
Diagrama de Ligação
Diagrama de ligação entre o ESP8266 e o Módulo Receptor IR

This image is created using Fritzing. Click to enlarge image
Para mais informações, veja Pinagem do ESP8266 e como alimentar o ESP8266 e outros componentes.
Diagrama de ligação entre o ESP8266 e o Sensor Receptor IR

This image is created using Fritzing. Click to enlarge image
Diagrama de ligação entre o ESP8266 e o Sensor Receptor IR com Adaptador
Antes de conectar o sensor receptor IR ao ESP8266, você tem a opção de conectá-lo ao adaptador. Isso permite uma montagem mais fácil e garante a conexão correta entre o sensor receptor IR e o ESP8266.

Como Programar para o Controle Remoto IR
- Inclua a biblioteca:
- Declare um objeto DIYables_IRcontroller_17 ou DIYables_IRcontroller_21 correspondente aos controles remotos IR de 17 teclas ou de 21 teclas:
- Inicialize o controle IR.
- No loop, verifique se uma tecla foi pressionada ou não. Se sim, obtenha a tecla
- Depois de detectar o pressionar de uma tecla, você pode executar ações específicas para cada tecla.
Código ESP8266
- Código ESP8266 para o controle remoto IR de 17 teclas da DIYables
- Código ESP8266 para o controle remoto IR de 21 teclas da DIYables
Passos Rápidos
Para começar com o ESP8266 no Arduino IDE, siga estes passos:
- Confira o tutorial como configurar o ambiente para o ESP8266 no Arduino IDE se esta for a sua primeira vez usando o ESP8266.
- Ligue os componentes como mostrado no diagrama.
- Conecte a placa ESP8266 ao seu computador usando um cabo USB.
- Abra o Arduino IDE no seu computador.
- Escolha a placa ESP8266 correta, como (e.g. NodeMCU 1.0 (ESP-12E Module)), e a respectiva porta COM.
- Clique no ícone Libraries na barra esquerda do Arduino IDE.
- Pesquise "DIYables_IRcontroller" e encontre a biblioteca DIYables_IRcontroller da DIYables
- Clique no botão Install para instalar a biblioteca DIYables_IRcontroller.

- Será solicitado que você instale a dependência da biblioteca, como na imagem abaixo:

- Clique no botão Install all para instalar a dependência
- Copie o código acima e abra-o no Arduino IDE
- Clique no botão Upload no Arduino IDE para carregar o código no ESP8266
- Pressione as teclas do controle remoto uma por uma
- Confira o resultado no Serial Monitor.
- Quando você pressiona as teclas de um controle IR de 17 teclas uma por uma, este é o resultado:
Agora você tem a capacidade de personalizar o código e controlar diferentes dispositivos, como LEDs, ventiladores, bombas, atuadores e mais, usando controles remotos IR. Isso significa que você pode fazer mudanças no código para que esses dispositivos respondam aos comandos enviados pelo controle remoto.