Existem sensores de infravermelho ativos e passivos. Um sensor de infravermelho ativo é composto por um emissor de luz infravermelha e um receptor, que reage a essa luz. Por sua vez, um sensor de infravermelho passivo não emite luz infravermelha, mas apenas capta esse tipo de luz no ambiente.
Os sensores de presença que acendem as luzes na área comum dos condomínios são bons exemplos de sensores de infravermelho passivos, eles identificam a presença das pessoas pela radiação infravermelha decorrente do calor que seus corpos emitem.
Pode-se dizer que o sensor de infravermelho, de fato, é o receptor, um componente de três pinos que mede a frequência da luz.
Desses 3 pinos, 1 é o Vcc, 1 é o GND e o outro é o sinal (ou Vout, como na imagem)
Como existem vários modelos destes sensores de 3 pinos, podem existir algumas variações entre eles, como por exemplo, os pinos GND e Vcc estarem alternados.
O pino de sinal (Vout) nos fornece uma corrente elétrica de duração de meio período da luz emitida, o que é um tempo muito pequeno, o que dificulta um pouco sua utilização.
Se utilizado em conjunto com o Arduino, como a função digitalRead(PINO) é lenta, e não funcionará satisfatoriamente, temos 3 métodos de trabalhar com ele, que são: utilizar a função punseIn(PINO) que funciona razoavelmente, utilizar um método de leitura alternativa "crua", muito mais complexa, recomendada para usuários avançados, e o método mais simples, que é utilizar uma biblioteca open-source já feita por outra pessoa, como por exemplo a IRremote (link para download https://github.com/shirriff/Arduino-IRremote)
Agora iremos fazer um breve tutorial usando a biblioteca IRremote (tutorial para instalar novas bibliotecas https://robolivre.org/conteudo/bibliotecas):
Após instalada a biblioteca, ligue o infravermelho de tal modo:
OBS: como já dito, os pinos vcc e gnd, podem estar alternados, então fiquem atentos para sinais de curto circuito, como por exemplo, o Arduíno apagar.
Deve ser utilizado esse código:
#include
int RECV_PIN = 2; // o pino ligado ao sensor infravermelho
IRrecv irrecv(RECV_PIN);
decode_results results;
void setup()
{
Serial.begin(9600);
irrecv.enableIRIn(); // Inicializa o receptor
}
void loop() {
if (irrecv.decode(&results)) {
Serial.println(results.value);
irrecv.resume(); // Se prepara para receber o próximo valor
}
}
Toda vez que apertarmos um botão de um controle remoto direcionado ao sensor, e estivermos com a janela de comunicação serial do Arduíno aberta, um número irá aparecer na tela. Cada botão terá um número diferente. Então para inúmeras aplicações, a única coisa que precisamos fazer é fazer comparações com o número que estará na variável "results.value".
SENSOR DE PROXIMIDADE
Outra aplicação de Sensores infra Vermelhos é para detectar obstáculos.
Existem sensores ativos que podem ser adquiridos no mercado , como o sensor da Sharp na figura principal desse conteúdo ou sensores de barreira ou reflexivos de diversos fabricantes, aplicações e preço.
Mas com um led infra vermelho TIL32 e um transistor TIL78, que mais parece um LED em seu encapsulamento pois ele não possui coletor, a própria luz infravermelho ativa sua Ic. Esses componentes são muito baratos e podem ser facilmente encontrados.
O circuito é muito simples:
Os Resistores vão regular a potência do negócio, uma boa configuração é 100 ohmns no resistor do led e 4K7 Ohmns no transistor.
Quanto menor for a resistência do resistor do led emissor IR maior será o alcance, mas se o resistor for muito baixo a corrente pode queimar o LED ou até mesmo o circuito que vc está usando para alimentá-lo.
Uma tática muito usada e ligar o LED emissor por um curto espaço de tempo (da ordem de nano segundos) com uma corrente muita alta, assim o LED não queima e VC pode só verificar a entrada do transistor nesse momento.
Para isso acoplamos um transistor NPN na katodo do LED para fazer o controle. Ele também serve para desativar o circuito e economizar energia quando não estiver realizando uma leitura. Esse circuito está representado na figura abaixo, note que no desenho foi colocado um LDR no Lugar do TIL78 e um Led vermelho no lugar do TIL32, mas foi só por falta deles na biblioteca do Fritzing.
Ou