Usar un control remoto IR es una forma bárbara de tener control inalámbrico sobre tu proyecto, ya que son simples y fáciles de manejar. En este tutorial, vas a conectar el receptor IR al MEGA2560 y usar una librería diseñada específicamente para este sensor.
Resumen
En nuestro sketch vamos a incluir todos los códigos hexadecimales IR disponibles en este control remoto; también vamos a detectar si el código fue reconocido y si mantenés presionada una tecla.
Componentes necesarios
- (1) x Elegoo Mega 2560 R3
- (1) x Módulo receptor IR
- (1) x Control remoto IR
- (3) x Cables H-M (DuPont Hembra-Macho)
Introducción de componentes
Sensor receptor IR: Los detectores IR son microchips con una fotocélula ajustada para detectar luz infrarroja. Se usan casi siempre para detección de controles remotos; cualquier TV o reproductor de DVD tiene uno en el frente para recibir la señal. El control remoto tiene un LED IR que emite pulsos para prender, apagar o cambiar de canal. Como la luz IR no es visible para el ojo humano, probar el circuito lleva un poquito más de trabajo.
Hay algunas diferencias entre estos y las fotocélulas CdS:
- Los detectores IR están filtrados específicamente para luz infrarroja, no sirven para detectar luz visible. En cambio, las fotocélulas detectan bien la luz visible amarillenta o verde, pero no la IR.
- Los detectores IR tienen un demodulador interno que busca IR modulada a 38 KHz. Si solo hacés brillar un LED IR no lo va a detectar; tiene que parpadear con PWM a 38 KHz.
- Los detectores IR tienen salida digital: o detectan la señal de 38 KHz y devuelven bajo (0V), o no detectan nada y devuelven alto (5V). Las fotocélulas actúan como resistencias que varían según la luz a la que se exponen.
Fijate en los gráficos de la hoja de datos: el pico de detección es a 38 KHz y el color de LED ideal es 940 nm. Podés usar entre 35 KHz y 41 KHz, pero la sensibilidad va a caer. Asegurate de usar LEDs que coincidan (lo ideal es de 940 nm, que no es luz visible).
Esquema de conexión y diagrama de cableado
El receptor IR tiene 3 conexiones: Señal, Voltaje y Tierra (GND). En el módulo, la "G" es Tierra, la "Y" es la señal y la "R" es el Voltaje (3.3V).
Código
Podés hacer clic en el enlace para descargar el programa a tu compu y abrirlo con doble clic. Antes de abrirlo, asegurate de haber instalado el Arduino IDE y los componentes necesarios para la placa 2560. Si tenés dudas sobre este proceso, fijate en el capítulo "part 1" del documento para una guía detallada.
📥 DESCARGAR ir_receiver_module.zip
Este código implementa la decodificación del protocolo infrarrojo NEC usando un microcontrolador 2560 sin librerías externas. Cuenta con una validación de tiempos estricta para asegurar una decodificación precisa y ofrece un mapeo de botones para controles remotos estándar.
Dale clic al botón del Monitor Serie para activarlo. Los conceptos básicos del monitor se explican en el tutorial 4 de la parte 2.
Si usás una versión vieja del código y te sale un aviso al descargar el código a la placa, no te asustes. No es un error, sino una incompatibilidad de versiones de la librería. Podés elegir bajar la versión de la librería IRremote a la 2.6.1 o inferior desde el gestor de librerías del IDE.
#include "IRremote.h"
#include "IR.h"
IRrecv irrecv(RECEIVER); // crea instancia de 'irrecv'
decode_results results; // crea instancia de 'decode_results'
void setup() {
Serial.begin(9600);
Serial.println("IR Receiver Button Decode");
irrecv.enableIRIn();
}
Función setup(): Inicializa el receptor IR y la comunicación serie. Se incluye la librería IRremote para la decodificación y el archivo IR.h con definiciones personalizadas.
Fuente: Adaptado al español desde el wiki oficial Elegoo (licencia CC BY-SA). Revisión técnica por equipo Breva.