- Components necessaris:
- Explicació de treball:
- Esquema de connexions:
- Descodificació de senyals de control remot IR mitjançant Arduino:
- Creació de l'aplicació d'Android per a IR Blaster:
Vaig començar aquest projecte per desfer-me de diversos comandaments a distància de casa meva i construir quelcom únic que pogués incorporar funcions de tots ells. Vaig tenir aquesta idea quan vaig veure un dels telèfons mòbils del meu amic amb un blaster IR incorporat, en aquell moment vaig decidir no comprar un telèfon similar i no fer el meu propi dispositiu que hauria de ser compatible amb el meu telèfon existent. Així que aquí convertirem un telèfon Android en un comandament a distància IR mitjançant Arduino per controlar diversos dispositius a casa.

Components necessaris:
- Arduino Uno
- LED IR
- Receptor TSOP-IR (1838T)
- Mòdul Bluetooth (HC05)
- Dispositiu Android (telèfon, tauleta, etc.)
Explicació de treball:
En general, fem servir dos comandaments a distància per fer funcionar la televisió a casa, un per a televisió i un altre per a Set-Top Box, de manera que aquí en aquest projecte em dirigeixo a aquests dos comandaments a distància i faig que un telèfon Android funcioni com IR Blaster perquè es pugui controlar la televisió amb el telèfon., sense tocar cap dels comandaments a distància.
L’ús d’una placa Arduino Uno m’ha facilitat el tracte amb la part de codificació i descodificació IR. L’ escut fet a mida només s’afegeix a la part de conveniència d’aquest projecte. El blindatge consisteix en un receptor IR TSOP (1838T), un LED IR i un mòdul Bluetooth (HC-05), vegeu la imatge següent:

Podeu construir el blindatge personalitzat o connectar directament els components a l'Arduino tal com es mostra al "Diagrama de circuits" de la secció següent.
Abans de seguir endavant, parlem primer de "com funcionen els comandaments a distància IR". La majoria dels comandaments a distància IR funcionen al voltant de les freqüències de 38 KHz (aquest és el motiu pel qual he triat 18 38 T). En continuar amb aquest tema, es reconeixerà que no hi ha representació fixa per a zeros i uns en aquests mètodes de transmissió de dades IR. Aquests codis fan ús de diverses tècniques de codificació que estudiem en el nostre pla d’enginyeria (ja que sóc estudiant d’enginyeria electrònica). La importància de 38 KHz és que és la freqüència a la qual oscil·la el senyal quan és lògicament alta, és a dir, aquesta és la freqüència portadora del senyal. Mireu la imatge següent; aquest és un exemple de protocol NEC. Això farà que el vostre concepte sigui més clar:

Així és com funciona aquest IR Blaster; un telèfon Android amb l’aplicació Android personalitzada envia el senyal al circuit Arduino per Bluetooth, a més, Arduino rep el senyal a través del receptor TSOP-IR (1838T) i l’analitza. A continuació, Arduino ordena que el LED IR parpellegi en un patró concret, corresponent al botó premut a l'aplicació del dispositiu Android. Aquest patró de parpelleig el captura el receptor IR del televisor o del Set-Top box i segueix les instruccions en conseqüència, com canviar de canal o augmentar el volum.
Abans, però, hem de descodificar els comandaments a distància existents. Com s'ha esmentat anteriorment, en aquest projecte he fet ús de dos comandaments a distància, un que comunica amb el televisor i un altre per al decodificador connectat al televisor.
Esquema de connexions:

Descodificació de senyals de control remot IR mitjançant Arduino:
La placa Arduino aquí funciona en dues fases, una és quan l’utilitzeu per descodificar codis IR des del comandament remot i una altra és quan l’utilitzeu com a dispositiu IR blaster.
Parlem de la primera fase. Ara per descodificar els codis del botó IR, he fet ús del fitxer de capçalera IRremote de Ken Shirriff . Aquest fitxer de capçalera té molts exemples / codis predefinits només per facilitar-nos el treball amb codis IR:
- Primer heu de descarregar i instal·lar la biblioteca remota IR des d’aquí
- Descomprimiu-lo i col·loqueu-lo a la carpeta Arduino 'Biblioteques'. A continuació, canvieu el nom de la carpeta extreta a IRremote.
- A continuació, graveu el codi que es proporciona a continuació a Arduino, connecteu el blindatge personalitzat tal com es mostra a la part superior i col·loqueu un comandament a distància que es descodificarà davant del receptor IR TSOP. Obriu el monitor sèrie corresponent a aquest Arduino i premeu qualsevol botó que vulgueu des del comandament a distància. Veureu informació sobre el terminal, que inclou el tipus de codi, el seu valor i la quantitat de bits que hi participen. Així és com es veu:
#incloure


Un cop hàgiu acabat la part de descodificació desitjada, anoteu tots els valors de descodificació i altra informació amb el nom del botó corresponent premut. Això servirà de base de dades per a la següent fase d'Arduino. El programa anterior es troba a la carpeta "exemples" de la biblioteca IRremote; podeu consultar més exemples per obtenir més informació sobre l'ús del comandament a distància IR. Així és com vam descodificar la sortida remota IR.
Ara graveu el codi, que es mostra a la secció Codi al final, en aquest mateix tauler. Enhorabona, heu acabat amb la primera meitat d’aquest projecte.
Creació de l'aplicació d'Android per a IR Blaster:
Arriba la segona meitat, la creació de l'aplicació Android. Simplement prefereixo fer servir l’APP inventor-2 del MIT per crear aquest tipus d’aplicacions. Si sou aficionats a la codificació d'Android, això us estalviarà temps i us donarà bons resultats. Els components principals que s’utilitzen per fer aquesta aplicació no són gaire, només uns pocs botons i un paquet de client Bluetooth. Mentre codifiqueu l'aplicació, proporcioneu el text corresponent que s'enviarà per a cada botó que es premgui a la pantalla, que demanaria a Arduino que parpellejés el LED IR de la mateixa manera que hauria estat realitzat pel comandament a distància individual; assegureu-vos també que proporcioneu l'adreça correcta del mòdul Bluetooth HC-05. Així serà l’aplicació final al vostre telèfon intel·ligent Android:


Aquí teniu el procés pas a pas per crear l’aplicació:
PAS 1:
Inicieu la sessió en aquest enllaç: ai2.appinventor.mit.edu o proveu de buscar MIT appinventor-2 a Google. Per iniciar la sessió a AI2 cal un compte de Google, de manera que, si no en teniu, creeu-ne un.
PAS 2:
Un cop hàgiu iniciat la sessió amb el vostre compte de Google, se us redirigirà a la pàgina web de treball AI2, que té aquest aspecte:

Inicieu un projecte nou fent clic a la pestanya "Projectes" a la part superior i seleccioneu "Inicia un projecte nou". Quan hàgiu acabat amb la part de nom i tot, us apareixerà una pantalla en blanc en què podeu col·locar botons i text tal com es mostra a la part superior. Aquesta és la pantalla de la GUI, en la qual decidiu com seria l'aplicació per a un usuari.
Per utilitzar un paquet de botons, seleccioneu la pestanya "Botó" a la part esquerra de la pantalla a la secció "Interfície d'usuari". Simplement arrossegueu qualsevol paquet des del menú de l'esquerra i deixeu-lo anar a la pantalla de treball. De manera similar, per mostrar qualsevol tema relacionat amb el text, utilitzeu el paquet "Etiqueta".
PAS 3:
Després d’organitzar tots els botons i etiquetes, ara toca crear un codi per a aquesta aplicació. Abans, però, també hem de seleccionar un paquet Bluetooth per comunicar-nos amb l'Arduino.

Notareu que aquest paquet no es mostra a la pantalla, sinó que es troba a "Components no visibles". Aquests són els components que no tenen cap importància en la composició de la GUI.
PAS 4:
A continuació ve la secció de codificació, en la qual definireu la funció dels components que heu seleccionat i amb els quals voleu treballar.

A la part esquerra de la pantalla notareu tots aquells paquets que heu seleccionat a la secció GUI. La imatge superior mostra quins components hi ha en un paquet concret del qual podeu fer ús. Tingueu en compte també que cal proporcionar l'adreça del mòdul Bluetooth en un format textual.
SETP 5:
Quan creieu que l'aplicació està preparada per utilitzar-se i que tampoc no hi ha cap error, feu clic a la pestanya "Construeix" tal com es mostra més amunt i seleccioneu la segona opció. Això descarregarà la vostra pròpia aplicació creada a l'ordinador en format ".apk". A continuació, només cal transferir aquest fitxer.apk a qualsevol dispositiu Android i fer-hi clic per instal·lar-lo.

Així és com podeu controlar qualsevol dispositiu de control remot IR amb el vostre telèfon intel·ligent, només heu de descodificar el control remot de qualsevol aparell que vulgueu controlar amb el vostre telèfon i substituir el codi HEX descodificat dels botons remots del codi Arduino.
