LEDs Infravermelhos



LEDs Infravermelhos
São LEDs que emitem e recebem raios infravermelhos e tem aplicação em toda parte como em sensores de presença, controle remoto, iluminação aos equipamentos de visão noturna e uma variedade de outros fins. Existem vários modelos de LEDs Infravermelhos no mercado, por isso, antes de qualquer coisa, é necessária a identificação do LED emissor e do LED receptor. Neste exemplo que estamos trabalhando conforme os LEDs destacados na imagem acima, temos o mais escuro que é o emissor (TIL32) e o mais claro que é o receptor (TIL78), porém isso não é regra, pois existe no mercado um outro LED com a mesma característica, mas de uma cor bem mais escura quase preta que é receptor e não emissor. Outro aspecto importante é que o LED receptor é diferente, ele na verdade é um fototransistor muito parecido a um transistor convencional, porém ao invés de termos um sinal vindo de um microcontrolador em sua base, temos uma luz infravermelha. Quando o raio infravermelho incidir sobre o LED receptor (fototransistor), haverá a passagem de tensão entre coletor e emissor do fototransistor.
Então, feita a identificação do emissor e receptor, vamos começar a trabalhar com eles com um circuito bem simples.
Componentes:

  • 01 Arduino
  • 01 Resistor de 220Ω
  • 01 Resistor de 10KΩ
  • 01 Par de LEDs IR(Emissor e Receptor)

Monte o seguinte circuito:  
 
LEDs Infravermelhos

Feito isso,  carregue este pequeno código:
 
 1  # define Receptor A0
 2  int V_Sensor = 0;
 3  void setup()
 4  {
 5      Serial.begin(9600);
 6  }
 7  void loop()
 8  {
 9      V_Sensor = analogRead(Receptor);
10      Serial.println(V_Sensor);
11      delay(300);
12  }
 
Abrindo o Monitor Serial, vemos a sequência de valores sendo mostrados. Quando aproximamos a fonte emissora, os valores se aproximam de 0, quando afastamos a fonte, os valores aumentam e quando cobrimos o receptor, o valor se aproxima de 1023. Percebendo isso, concluímos que podemos usar essa variação para, por exemplo, ligar e desligar um LED entre outras.
Partiremos, agora para um exemplo mais interessante onde criaremos um sensor de proximidade.
Componentes: 

  • 01 Arduino
  • 05 Resistores de 220Ω
  • 01 Resistor de 10KΩ
  • 01 Par de LEDs IR(Emissor e Receptor)
  • 01 Buzzer 
  • 01 Fonte de Alimentação Externa de 6V para o Emissor
Monte o circuito conforme a figura abaixo:
 

Com isso, podemos carregar o código:
  
  1  # define Receptor A0
  2  # define Led_Verd A1
  3  # define Led_Verm A2
  4  # define pinBip    4
  5 
  6  int V_Sensor = 0;
  7
  8  void funBip(int entValor);
  9
 10  void setup()
 11  {
 12      Serial.begin(9600);
 13  }
 14
 15  void loop()
 16  {
 17      V_Sensor = analogRead(Receptor);
 18      Serial.println(V_Sensor);
 19      funBip(V_Sensor);
 20      delay(300);
 21  }
 22
 23  void funBip(int entValor)
 24  {
 25
 26      if(entValor < 80)
 27      {
 28          analogWrite(Led_Verd, 0);
 29          analogWrite(Led_Verm, 255);
 30          tone(pinBip, 2000);
 31          delay(10);
 32      }
 33
 34      if(entValor >= 80 && entValor < 200)
 35      {
 36          analogWrite(Led_Verd, 255);
 37          analogWrite(Led_Verm, 0);
 38          tone(pinBip, 2000, 100);
 39          /* O comando tone() requer dois ou três parâmetros
 40             da seguinte maneira:
 41             tone(pin, frequênncia)
 42             tone(pin, frequência, duração)
 43          */
 44          delay(200);
 45          noTone(pinBip);
 46      }
 47
 48      if(entValor >= 200 && entValor < 300)
 49      {
 50
 51          analogWrite(Led_Verd, 255);
 52          analogWrite(Led_Verm, 0);
 53          tone(pinBip, 2000, 100);
 54          delay(300);
 55          noTone(pinBip);
 56      }
 57
 58      if(entValor >= 300 && entValor < 400)
 59      {
 60          analogWrite(Led_Verd, 255);
 61          analogWrite(Led_Verm, 0);
 62          tone(pinBip, 2000, 100);
 63          delay(400);
 64          noTone(pinBip);
 65      }
 66
 67      if(entValor >= 400 && entValor < 500)
 68      {
 69          analogWrite(Led_Verd, 255);
 70          analogWrite(Led_Verm, 0);
 71          tone(pinBip, 2000, 100);
 72          delay(500);
 73          noTone(pinBip);
 74      }
 75      if(entValor > 500 && entValor < 600)
 76      {
 77          analogWrite(Led_Verd, 255);
 78          analogWrite(Led_Verm, 0);
 79          tone(pinBip, 2000, 100);
 80          delay(600);
 81          noTone(pinBip);
 82      }
 83
 84      if(entValor > 600 && entValor < 700)
 85      {
 86          analogWrite(Led_Verd, 255);
 87          analogWrite(Led_Verm, 0);
 88          tone(pinBip, 2000, 100);
 89          delay(700);
 90          noTone(pinBip);
 91      }
 92
 93      if(entValor >= 700 && entValor < 800)
 94      {
 95          analogWrite(Led_Verd, 255);
 96          analogWrite(Led_Verm, 0);
 97          tone(pinBip, 2000, 100);
 98          delay(800);
 99          noTone(pinBip);
100      }
101
102      if(entValor >= 800)
103      {
104          noTone(pinBip);
105          analogWrite(Led_Verd, 0);
106          analogWrite(Led_Verm, 0);
107      }
108  }

Feito isso, ao aproximar o LED emissor do receptor, observamos que o LED verde acende junto com o sinal sonoro que vai bipando mais rápido ao aproximarmos do receptor até que o som fica quase contínuo com o acendimento do LED vermelho alarmando o tão próximo se encontra.

Nenhum comentário:

Postar um comentário