martes, 17 de septiembre de 2019

Arduino - RECEPTOR INFRARROJOS

Página principal

Arduino

RECEPTOR INFRARROJOS


Hace bastante años hice un montaje con receptor de infrarrojos, había utilizado la librería Iremote, he incluso había desarrollado mi propia rutina que no utilizaba ninguna librería.
ar_irb.html        ar_ira.html        ar_ir.html

Después de 8 años vuelvo hacer un receptor de infrarrojos, esta vez decodifica los números del 0 al 9, pero esta vez interpreta los códigos de un mando de TV Philips  y de TV LG.
Se vuelve a utilizar la librería Iremote, que funciona bastante bien, y simplifica la mucho programación.
El circuito se compone de un receptor de IR que detecta la luz infrarroja y filtra la portadora que se encuentra entre los  36KHz y 40KHz, proporcionándonos la señal digital que introducimos al PIN 11 del arduino.
El arduino interpreta la señal mediante la librería Iremote y nos devuelve los datos en una estructura de nombre   decode_results.
La estructura de datos es la siguiente:
decode_type_t          decode_type;  // UNKNOWN, NEC, SONY, RC5, ...
unsigned int           address;      // Used by Panasonic & Sharp [16-bits]
unsigned long          value;        // Decoded value [max 32-bits]
int                    bits;         // Number of bits in decoded value
volatile unsigned int  *rawbuf;      // Raw intervals in 50uS ticks
int                    rawlen;       // Number of records in rawbuf
int                    overflow;     // true iff IR raw code too long

Para el programa solo utilizo  decode_typevalue.
Dependiendo del tipo de mando y del valor devuelto, enciendo o apago un LED determinado.
El montaje es muy simple, pero bastante vistoso.
He realizado 2 programas, el uno enciende solo un LED cada vez, y el otro enciende o apaga cualquiera de los LEDs a la vez.
Para no tener que colocar una resistencia para cada LED, simplifico el montaje colocando una resistencia común a GND para todos los LEDS. Esto implica que dependiendo de los LEDS que estén encendidos, lucirán mas o menos.

Esquema del circuito



Circuito montado.



Forma de la señal con los códigos de
TV Philips  y de TV LG.



VIDEO

PROGRAMA
LIBRERIA IREMOTE






Saludos.
Juan Galaz



Bibliografía:

https://naylampmechatronics.com/blog/36_Tutorial-Arduino-y-control-remoto-Infrarrojo.html
https://www.sbprojects.net/knowledge/ir/rc5.php
http://lirc-remotes.sourceforge.net/
http://www.hifi-remote.com/sony/Sony_tv.htm