Um emissor infravermelho (IR) é um dispositivo que emite luz infravermelha, normalmente na forma de LED infravermelho.
Essa luz é invisível ao olho humano, mas pode ser detectada por sensores apropriados, como receptores infravermelhos.
O LED infravermelho emite pulsos de luz IR quando recebe uma corrente elétrica
Estes pulsos podem ser modulados (ligados/desligados rapidamente, por exemplo a 38kHz) para carregar informações, como em um controle remoto de TV.
Ele emite luz em comprimentos de onda entre 850 e 950 nanômetros (fora do espectro visível).
Funciona melhor quando alinhado com o receptor IR e em linha reta (sem muitos obstáculos).
Para integração com o Arduino, precisaremos da biblioteca IRremote, que pode instalada no gerenciador de bibliotecas do Arduino IDE.
Neste projeto você criará um circuito que faz o uso de um Emissor Infravermelho (IR) com o Arduino.
Para a criação deste circuito serão necessários os seguintes componentes:
Para os testes, usaremos um receptor criado anteriormente com o Arduino, encontrado AQUI
Para montar o circuito, visualize na imagem a seguir como conectar os componentes entre a placa Arduino e a breadboard.
A seguir temos o schematics do circuito, que detalha suas conexões e fornece detalhes mais específicos do que o circuito da imagem anterior.
Uma vez criado o circuito, use o código fonte a seguir no Arduino IDE para fazer o upload dele na placa Arduino e assim ver o resultado do circuito em funcionamento.
/**
* Código do curso Magos do Arduino para utilizar um emissor/transmissor
* infravermelho (IR) com o Arduino.
*
* Utilize um emissor IR com o Arduino para enviar comandos para outro
* dispositivo. Este exemplo usa como referência o projeto ir_receptor.ino.
*
* (c) Copyright KazaleIT
* @kazaleitoficial no YouTube
**/
#include <IRremote.hpp>
#define PINO_EMISSOR_IR 12
void setup() {
Serial.begin(9600);
// inicializa o objeto de emissão IR
IrSender.begin(PINO_EMISSOR_IR);
}
void loop() {
// comando do botão 0, apaga o LED
IrSender.sendNEC(0x0, 0x16, 0);
delay(1000);
// comando do botão 1, acende o LED
IrSender.sendNEC(0x0, 0xC, 0);
delay(1000);
}