Sensores Arduino y Raspberry Pi

20

Mar 12, 2024

KY-022: Módulo Receptor Infrarrojo 

Descripción:

Este módulo puede recibir señales infrarrojas y emitirlas en la salida de señal como una secuencia digital. Además, el LED integrado en el módulo parpadea brevemente cuando se detecta una señal de infrarrojos.


Especificaciones:


Esquemático:

Pinout:

Conexión Arduino:

Para usar el sensor KY-022 debemos instalar la librería IR remote desde el gestor de librerías en el Arduino IDE

Una vez instalado, vamos a:

Con éste Sketch podremos obtener los códigos de cada botón de nuestro control remoto:

Una vez subido, abriremos el Monitor Serie:

Al pulsar cada botón obtendremos códigos que podemos seleccionar con el mouse haciendo clic derecho y luego presionando "Ctrl+c" para copiar todos los códigos obtenidos de una sola vez, esta opción no nos saldrá con clic derecho.

Luego de copiado creamos un archivo de texto o un tabla en Libre Office Calc y pegamos con "Ctrl+v" o con "Ctrl+Shift+v". Y agregamos a que botón pertenece cada código.

El código se verá de esta forma:

Si elegimos ver el código con el nuevo print:

Código Arduino:

Conexión Arduino Ejemplo 1: Encender LED con cualquier botón

Código Arduino Ejemplo 1: Encender LED con cualquier botón

Conexión Arduino Ejemplo 2: Encender LED con un botón especifico

Código Arduino Ejemplo 2: Encender LED con un botón especifico

Conexión Raspberry Pi:

Usar módulo IR KY-022 con control remoto y Lirc en Raspberry Pi OS:

2. Editamos modules agregando las siguientes dos líneas al final del archivo:

Si van a usar también un emisor IR en su lugar agregamos: 

Presionamos "Ctrl+x" para cerrar. "Y" para guardar. "Enter" para aceptar y terminar de cerrar el archivo.

3. Editamos config.txt:

Agregamos la siguiente línea al final del archivo:

Presionamos "Ctrl+x" para cerrar."Y" para guardar. "Enter" para aceptar y terminar de cerrar el archivo.

4. Editamos ir-remote.conf:

Agregamos la siguiente línea:

Presionamos "Ctrl+x" para cerrar. "Y" para guardar. "Enter" para aceptar y terminar de cerrar el archivo.

5. Editamos las siguientes líneas en lirc_options.conf:

Presionamos "Ctrl+x" para cerrar. "Y" para guardar. "Enter" para aceptar y terminar de cerrar el archivo.

6. Paramos y reiniciamos lirc:

7. Nos fijamos que Lirc esté corriendo:

8. Reiniciamos la Raspberry Pi:

9. Probamos que está funcionando:

Nos aparecerá lo siguiente:

Presionamos cualquier botón y veremos líneas similares con diferentes valores:

E ira aumentando a medida que toquemos los botones. Presionamos "Ctrl+C" para cerrar.

Ahora debemos grabar nuestro control remoto, en mi caso usé el del Cable Operador Telecentro:


1. Detenemos Lirc:

Seguimos las instrucciones que nos pide:

Luego seguimos las instrucciones, nos pedirá que pongamos nombre al botón que presionaremos, para saber esto abrimos otra terminal y tecleamos:

Nos desplegará los nombres disponibles:

Ejemplo: Para el botón "Rojo"

Presionamos "Enter" y pulsamos el botón "Rojo" de nuestro control.

Lo detectará y nos pedirá el nombre de otro botón.


Ejemplo: Para el botón "Power"

Presionamos "Enter" y pulsamos el botón "Power" de nuestro control.

Cuando ya tengamos todos los botones que necesitemos usar presionamos "Enter" y nos pedirá que pulsemos repetidas veces lo más rápido posible un botón cualquiera pero solo ése botón, luego de lograr eso guardará nuestra grabación en "$HOME" como "nombrequeledimos.conf"


Ahora hacemos un backup del lircd.conf original:


Y copiamos nuestra grabacion a lircd.conf


Iniciamos Lirc Daemon:

Listo, ya podemos usarlo como por ejemplo en kodi editando Lircmap.xml:

Dónde copiaremos la sección completa: 

hasta </remote>


Son muchas líneas las seleccionamos y copiamos, las pegamos al final del archivo pero antes de </lircmap>

Una vez que peguemos lo copiado procedemos a editarlo cambiando "mceusb" por "Telecentro",en mi caso, en el suyo, el nombre que ustedes le pusieron a su control remoto.

Luego vamos editando cada una de las etiquetas reemplazando por el nombre de nuestras teclas.

Por ejemplo: 

Lo cambiamos por nuestra tecla:

Y así con cada una que querrámos manejar con nuestro control remoto.

Presionamos "Ctrl+x" para cerrar. "Y" para guardar. "Enter" para aceptar y terminar de cerrar el archivo. Reiniciamos Raspberry Pi y abrimos kodi y podremos manejarlo perfectamente con nuestro control.

En Python existe la librería Python Lirc que debemos instalar.

Conexión Raspberry Pi Pico:

Código MicroPython Raspberry Pi Pico:

Librería Micropython_ir:

Abrimos la Terminal e ingresamos:

Abrimos Thonny y buscamos ese directorio, copiaremos el   directorio ir_rx a nuestra Raspberry Pi Pico/W.

Seleccionamos el directorio ir_rx y presionamos clic derecho opción Upload to/

Asi queda nuestra Raspberry Pi Pico/W

Una vez subida la librería, vamos a la Shell de Thonny o al REPL e introducimos:

Al pulsar Enter el Receptor Infrarrojo estará listo para recibir y mostrarnos el dato de nuestro control remoto.

Una vez obtenido los datos y anotados, nos servirán para realizar alguna acción.

Código Kaluma's JavaScript Raspberry Pi Pico:

Requiere Package ir-receiver (En Windows para instalar Packages requerimos tener Git instalado, en Pi OS viene por defecto, si usas otro Linux: sudo apt install git).

Abrimos la Terminal o el CMD e ingresamos:

Guardamos los cambios con Ctrl+o, Confirmamos con Enter, Cerramos el archivo con Ctrl+x.

En Windows en lugar de nano tenemos notepad, guardar los cambios con Ctrl+g, Salir con Ctrl+w:

kaluma flash ./index.js --bundle --shell

Conexión Raspberry Pi Pico W:

Código MicroPython Raspberry Pi Pico W:

Librería Micropython_ir:

Abrimos la Terminal e ingresamos:

Abrimos Thonny y buscamos ese directorio, copiaremos el   directorio ir_rx a nuestra Raspberry Pi Pico W.

Seleccionamos el directorio ir_rx y presionamos clic derecho opción Upload to/

Asi queda nuestra Raspberry Pi Pico W

Una vez subida la librería, vamos a la Shell de Thonny o al REPL e introducimos:

Al pulsar Enter el Receptor Infrarrojo estará listo para recibir y mostrarnos el dato de nuestro control remoto.

Una vez obtenido los datos y anotados, nos servirán para realizar alguna acción.

Código Kaluma's JavaScript Raspberry Pi Pico W:

Requiere Package ir-receiver (En Windows para instalar Packages requerimos tener Git instalado, en Pi OS viene por defecto, si usas otro Linux: sudo apt install git).

Abrimos la Terminal o el CMD e ingresamos:

Guardamos los cambios con Ctrl+o, Confirmamos con Enter, Cerramos el archivo con Ctrl+x.

En Windows en lugar de nano tenemos notepad, guardar los cambios con Ctrl+g, Salir con Ctrl+w:

kaluma flash ./index.js --bundle --shell

Conexión ESP32:

Requisito ESP32:

Librería MicroPython IR_remote:

Abrimos la Terminal e ingresamos para descargarla:

Abrimos Thonny y buscamos ese directorio, copiaremos la librería IR_remote/libreria/IR_remote.py y el   directorio IR_remote/ejemplos a nuestra ESP32.

O creamos la librería IR_remote.py:

Código MicroPython ESP32:

Códigos leídos:

Ejemplo de uso infrarrojo4leds.py:

Código ejemplo de uso infrarrojo4leds.py: