En este experimento, aprenderemos a utilizar el módulo transmisor de infrarrojos y el receptor de infrarrojos. De hecho, en nuestra vida cotidiana juegan un papel importante en la mayoría de los electrodomésticos que se utilizan en este tipo de dispositivos, como aire acondicionado, TV, DVD, etc. En realidad se basa en su teledetección sin hilos y es muy conveniente utilizarlos.
Imagen | Descripción |
---|---|
![]() |
Arduino Uno o compatible con S4A y con el firmware para S4A cargado. |
![]() |
Cables de conexión |
![]() |
Módulo receptor IR KY022 |
![]() |
Módulo emisor IR KY005 |
Sensor de infrarrojos tipo 1838 para uso con señales IR de 38 KHz.
Los detectores IR son pequeños microchips con fotorresistencia que se ajustan para escuchar la luz infrarroja. Casi siempre se utilizan para la detección de control remoto: cada reproductor de TV y DVD tiene uno en la parte frontal para leer la señal IR desde el mando a distancia. En el interior del mando a distancia hay un LED IR coincidente, que emite impulsos IR para decir al televisor que se encienda, se apague o cambie de canal. La luz IR no es visible al ojo humano, por lo que se necesita un poco más de trabajo para probar una configuración.
Los detectores IR están filtrados especialmente para la luz infrarroja, no son buenos para detectar la luz visible. Por otro lado, las fotorresistencias son buenas para detectar la luz visible de color amarillo/verde, no son buenas para la luz IR.
Este módulo se utiliza generalmente junto con el módulo de receptor IR, las aplicaciones de este módulo son muy amplias en nuestra vida común. El LED-IR se puede utilizar para construir una barrera de luz o un transmisor de señal de control remoto IR.
Este módulo es igual que un LED, pero el color de la luz no se puede ver al ojo humano, sino que puedes ver la luz a través de la cámara del teléfono.
Este montaje es muy sencillo, no necesitamos protoboard pero en cambio necesitamos dos placas arduino.
Los cables de alimentación (5V y GND) tienen posiciones fijas en la placa, los cables de datos los conectaremos en la entrada/salida correspondiente según indicamos en el código
Código: ARD_13_IRe (subir a la placa del emisor)
#include <IRremote.h>
IRsend irsend;
void setup()
{
}
void loop()
{
digitalWrite(13,LOW);
irsend.sendRC5(0x0, 8); //enviar código 0x0 (8 bits)
delay(200);
digitalWrite(13,HIGH);
irsend.sendRC5(0x1, 8);
delay(200);
}
Código: ARD_13_IRr (subir a la placa del receptor)
#include <IRremote.h>
#define RECV_PIN 11 //Pin de recepción de la señal IR
#define LED 13 //define LED pin
IRrecv irrecv(RECV_PIN); //crear el objeto irrecv para el receptor IR en el pin indicado
decode_results results; //declaramos la variable results (datos de la recepción)
void setup()
{
pinMode(LED, OUTPUT); //inicializa LED como salida
Serial.begin(9600);
irrecv.enableIRIn(); //activa el objeto irrecv
}
void loop()
{
if (irrecv.decode(&results)) //comprobamos si llegan datos
{
int state;
if ( results.value == 1 )
{
state = HIGH;
}
else
{
state = LOW;
}
digitalWrite( LED, state );
Serial.println(results.value);
irrecv.resume(); // comenzamos una nueva recepción
}
}