- Componentes requeridos:
- Explicación de trabajo:
- Diagrama de circuito:
- Decodificación de señales de control remoto IR usando Arduino:
- Creación de la aplicación de Android para IR Blaster:
Comencé este proyecto para deshacerme de varios controles remotos en mi casa y construir algo único que pudiera incorporar características de todos ellos. Tuve esta idea cuando vi uno de los teléfonos móviles de mi amigo con blaster de infrarrojos incorporado, en ese momento decidí no comprar un teléfono similar en lugar de hacer mi propio dispositivo que debería ser compatible con mi teléfono existente. Entonces, aquí vamos a convertir un teléfono Android en un control remoto IR usando Arduino para controlar varios dispositivos en casa.
Componentes requeridos:
- Arduino Uno
- LED IR
- Receptor TSOP-IR (1838T)
- Módulo Bluetooth (HC05)
- Dispositivo Android (teléfono, tableta, etc.)
Explicación de trabajo:
Generalmente usamos dos controles remotos para operar la TV en casa, uno para la televisión y otro para el decodificador, así que aquí en este proyecto me dirijo a estos dos controles remotos y hago que un teléfono Android funcione como IR Blaster para que la TV se pueda controlar con el teléfono, sin tocar ninguno de los controles remotos.
El uso de una placa Arduino Uno me hizo más fácil lidiar con la parte de decodificación y codificación IR. El escudo hecho a medida se suma a la parte de conveniencia de este proyecto. El escudo consta de un receptor de infrarrojos TSOP (1838T), un LED de infrarrojos y un módulo Bluetooth (HC-05), consulte la imagen a continuación:
Puede construir el escudo personalizado o puede conectar directamente los componentes al Arduino como se muestra en el 'Diagrama de circuito' en la siguiente sección.
Antes de seguir adelante, analicemos primero "cómo funcionan los controles remotos de infrarrojos". La mayoría de los mandos a distancia por infrarrojos funcionan con frecuencias de 38 KHz (esta es la razón por la que he elegido 18 38 T). Al involucrarse más en este tema, uno reconocerá que no hay una representación fija para ceros y unos en estos métodos de transmisión de datos por infrarrojos. Estos códigos hacen uso de varias técnicas de codificación que estudiamos en nuestro plan de estudios de ingeniería (ya que soy estudiante de ingeniería electrónica). El significado de 38 KHz es que es la frecuencia a la que la señal oscila cuando es lógicamente alta, es decir, esta es la frecuencia portadora de la señal. Eche un vistazo a la imagen de abajo; este es un ejemplo de Protocolo NEC. Esto hará que su concepto sea más claro:
Así que así es como funciona este IR Blaster; un teléfono Android con la aplicación de Android personalizada envía la señal al circuito Arduino a través de Bluetooth, además, el Arduino recibe la señal a través del receptor TSOP-IR (1838T) y la analiza. Luego, Arduino ordena al LED IR que parpadee en un patrón particular, correspondiente al botón presionado en esa aplicación de dispositivo Android. Este patrón de parpadeo es capturado por el televisor o el receptor de infrarrojos del decodificador y sigue las instrucciones en consecuencia, como cambiar el canal o aumentar el volumen.
Pero antes de eso, necesitamos decodificar los controles remotos existentes. Como se mencionó anteriormente, en este proyecto he utilizado dos controles remotos, uno que se comunica con el televisor y otro para el decodificador conectado al televisor.
Diagrama de circuito:
Decodificación de señales de control remoto IR usando Arduino:
La placa Arduino aquí funciona en dos fases, una es cuando la usa para decodificar códigos IR desde el control remoto y otra es cuando la usa como dispositivo emisor de infrarrojos.
Hablemos de la primera fase. Ahora, para decodificar los códigos de los botones IR, he utilizado el archivo de encabezado IRremote de Ken Shirriff . Este archivo de encabezado tiene muchos ejemplos / códigos predefinidos solo para facilitarnos el trabajo con códigos IR:
- Primero debe descargar e instalar la biblioteca remota IR desde aquí
- Descomprímalo y colóquelo en la carpeta 'Bibliotecas' de Arduino. Luego cambie el nombre de la carpeta extraída a IRremote.
- Luego grabe el código provisto a continuación en Arduino, conecte el protector personalizado como se muestra arriba y coloque un control remoto para decodificarlo frente al receptor de infrarrojos TSOP. Abra el monitor serial correspondiente a este Arduino y presione cualquier botón deseado desde el control remoto. Verá información mostrada en el terminal, esta información involucra el tipo de código, su valor y la cantidad de bits involucrados con él. Así es como se ve:
#incluir
Una vez que haya terminado con la parte de decodificación deseada, anote todos los valores de decodificación y otra información con el nombre del botón correspondiente presionado. Esto servirá como base de datos para la siguiente fase de Arduino. El programa anterior está tomado de la carpeta de 'ejemplos' de la biblioteca de IRremote, puede ver más ejemplos para aprender más sobre el uso del control remoto IR. Así es como decodificamos la salida remota IR.
Ahora grabe el Código, dado en la sección Código al final, en este mismo tablero. Felicitaciones, ha terminado con la primera mitad de este proyecto.
Creación de la aplicación de Android para IR Blaster:
Aquí viene la segunda mitad, la creación de la aplicación de Android. Simplemente prefiero usar la aplicación inventor-2 del MIT para crear este tipo de aplicaciones. Si eres un aficionado a la codificación de Android, esto te ahorrará tiempo y te dará buenos resultados. Los componentes principales utilizados para hacer esta aplicación no son muchos, solo unos pocos botones y un paquete de cliente Bluetooth. Mientras codifica la aplicación, proporcione el texto correspondiente que se enviará por cada botón presionado en la pantalla que le pediría a Arduino que parpadee el LED IR de la misma manera que lo hubiera hecho el control remoto individual; también asegúrese de proporcionar la dirección correcta de su módulo Bluetooth HC-05. Así es como se verá la aplicación final en su teléfono inteligente Android:
Este es el proceso paso a paso para crear la aplicación:
PASO 1:
Inicie sesión en este enlace: ai2.appinventor.mit.edu, o intente buscar MIT appinventor-2 en Google. El inicio de sesión en AI2 requiere una cuenta de Google, así que si no la tiene, cree una.
PASO 2:
Una vez que inicie sesión con su cuenta de Google, será redirigido a la página web de trabajo de AI2, que se ve así:
Inicie un nuevo proyecto haciendo clic en la pestaña "Proyectos" en la parte superior y seleccione "Iniciar nuevo proyecto". Cuando haya terminado con la parte de nombrar y todo, se le mostrará una pantalla en blanco en la que puede colocar botones y texto como se muestra arriba. Esta es la pantalla GUI, en la que usted decide cómo se verá la aplicación para un usuario.
Para utilizar un paquete de botones, seleccione la pestaña "Botón" en el lado izquierdo de la pantalla en la sección "Interfaz de usuario". Simplemente arrastre cualquier paquete del menú del lado izquierdo y suéltelo en la pantalla de trabajo. De manera similar, para mostrar cualquier material relacionado con el texto, utilice el paquete "Etiqueta".
PASO 3:
Después de organizar todos sus botones y etiquetas, ahora es el momento de hacer un código para esta aplicación. Pero antes de eso, también debemos seleccionar un paquete de Bluetooth para comunicarnos con Arduino.
Notará que este paquete no se muestra en la pantalla, sino que se incluye en "Componentes no visibles". Estos son los componentes que no tienen importancia en la composición de la GUI.
ETAPA 4:
Luego viene la sección de codificación, en la que definirá la función para los componentes que ha seleccionado y con los que desea trabajar.
En el lado izquierdo de la pantalla, verá todos los paquetes que ha seleccionado en la sección GUI. La imagen de arriba muestra todos los componentes que hay en un paquete en particular que puede utilizar. También tenga en cuenta que la dirección del módulo Bluetooth debe proporcionarse en formato textual.
SETP 5:
Cuando sienta que la aplicación está lista para ser utilizada y tampoco hay errores, haga clic en la pestaña "Crear" como se muestra arriba y seleccione la segunda opción. Esto descargará su propia aplicación creada, en la computadora, en formato ".apk". Luego, simplemente transfiera este archivo.apk a cualquier dispositivo Android y haga clic en él para instalarlo.
Así es como puede controlar cualquier dispositivo de control remoto por infrarrojos con su teléfono inteligente, solo necesita decodificar el control remoto de cualquier dispositivo que desee controlar con su teléfono y reemplazar el código HEX decodificado de los botones del control remoto en el código Arduino.