- Požadované komponenty:
- Pracovné vysvetlenie:
- Schéma zapojenia:
- Dekódovanie signálov IR diaľkového ovládania pomocou Arduina:
- Budovanie aplikácie pre Android pre IR Blaster:
Tento projekt som zahájil, aby som sa doma zbavil rôznych diaľkových ovládačov a vytvoril niečo jediné, čo by mohlo obsahovať všetky z nich. Tento nápad som dostal, keď som uvidel jeden z mobilných telefónov môjho priateľa so zabudovaným IR blasterom, v tom čase som sa rozhodol nekupovať podobný telefón, ale radšej si vyrobiť vlastné zariadenie, ktoré by malo byť kompatibilné s mojím existujúcim telefónom. Takže tu budeme prevádzať telefón s Androidom na IR diaľkové ovládanie pomocou Arduina na ovládanie rôznych zariadení doma.
Požadované komponenty:
- Arduino Uno
- IR LED
- TSOP-IR prijímač (1838T)
- Bluetooth modul (HC05)
- Zariadenie Android (telefón, tablet atď.)
Pracovné vysvetlenie:
Spravidla používame dva diaľkové ovládače na ovládanie TV doma, jeden pre televíziu a jeden pre Set-Top Box, takže tu v tomto projekte zameriavam tieto dva diaľkové ovládače a vyrábam telefón s Androidom ako IR Blaster, aby bolo možné televízor ovládať pomocou telefónu, bez toho, aby ste sa dotkli niektorého z diaľkových ovládačov.
Používanie dosky Arduino Uno mi jednoducho uľahčilo prácu s časťou IR dekódovania a kódovania. Zákazku štít len pridáva k pohodliu v rámci tohto projektu. Štít sa skladá z TSOP IR prijímača (1838T), IR LED a Bluetooth modulu (HC-05), viď obrázok nižšie:
Môžete si buď postaviť vlastný štít, alebo môžete priamo pripojiť komponenty k Arduinu, ako je znázornené na schéme obvodov v nasledujúcej časti.
Predtým, ako sa posunieme ďalej, najskôr sa porozprávajme o tom, „ako fungujú diaľkové ovládače IR“. Väčšina diaľkových ovládačov IR pracuje na frekvenciách 38 KHz (to je dôvod, prečo som vybral 18 38 T). Pri ďalšom zapojení do tejto témy si uvedomíte, že v týchto metódach prenosu dát IR nie je fixné zastúpenie núl a jedničiek. Tieto kódy využívajú rôzne kódovacie techniky, ktoré študujeme v našich študijných programoch (keďže som študentom elektronického inžinierstva). Význam 38 KHz je, že je to frekvencia, pri ktorej signál osciluje, keď je logicky vysoká, tj. Toto je nosná frekvencia signálu. Pozrite sa na obrázok nižšie; toto je príklad protokolu NEC. Takto bude vaša koncepcia jasnejšia:
Takto teda funguje tento IR Blaster; telefón s Androidom so špeciálne vyrobenou aplikáciou pre Android odosiela signál do obvodu Arduino cez Bluetooth, ďalej Arduino prijíma signál cez prijímač TSOP-IR (1838T) a analyzuje ho. Potom Arduino vydá príkaz, aby IR LED blikali v konkrétnom vzore zodpovedajúcom tlačidlu stlačenému na príslušnej aplikácii pre Android. Tento blikajúci obrazec je zachytený televíznym prijímačom alebo infračerveným prijímačom set-top boxu a postupuje podľa pokynov, ako je zmena kanálu alebo zvýšenie hlasitosti.
Ale predtým musíme dekódovať existujúce diaľkové ovládače. Ako už bolo spomenuté, v tomto projekte som použil dva diaľkové ovládače, jeden komunikujúci s televízorom a druhý pre set-top box pripojený k televízoru.
Schéma zapojenia:
Dekódovanie signálov IR diaľkového ovládania pomocou Arduina:
Doska Arduino tu funguje v dvoch fázach, jednou je, keď ju používate na dekódovanie IR kódov zo vzdialeného, a druhou, keď ju používate ako zariadenie IR blaster.
Hovorme o prvej fáze. Teraz na dekódovanie kódov tlačidiel IR som použil súbor hlavičky IR Remote od Kena Shirriffa . Tento hlavičkový súbor má veľa preddefinovaných príkladov / kódov, ktoré nám uľahčujú prácu s IR kódmi:
- Najprv si musíte stiahnuť a nainštalovať IR vzdialenú knižnicu odtiaľto
- Rozbaľte ho a umiestnite do priečinka „Knižnice“ v Arduine. Potom premenujte extrahovaný priečinok na IRremote.
- Potom napáľte nižšie uvedený kód do Arduina, pripojte vlastný štít, ako je to znázornené vyššie, a umiestnite diaľkový ovládač, ktorý sa má dekódovať, pred TSOP IR prijímač. Otvorte sériový monitor zodpovedajúci tomuto Arduinu a stlačte ľubovoľné tlačidlo na diaľkovom ovládači. Uvidíte niektoré informácie zobrazené na termináli. Tieto informácie zahŕňajú typ kódu, jeho hodnotu a množstvo bitov, ktoré sú s ním spojené. Vyzerá to takto:
#include
Keď skončíte s požadovanou dekódovacou časťou, poznačte si všetky hodnoty dekódovania a ďalšie informácie so stlačeným príslušným názvom tlačidla. To bude slúžiť ako databáza pre ďalšiu fázu Arduina. Vyššie uvedený program je prevzatý z priečinka „examples“ knižnice IRremote. Môžete si pozrieť viac príkladov a dozvedieť sa viac o používaní IR diaľkového ovládača. Takto sme dekódovali IR diaľkový výstup.
Teraz napálte kód uvedený v sekcii Kód na konci na tú istú dosku. Gratulujeme, ste v prvej polovici tohto projektu hotoví.
Budovanie aplikácie pre Android pre IR Blaster:
Prichádza druhá polovica, výroba aplikácií pre Android. Na výrobu takýchto druhov aplikácií radšej používam aplikáciu MIT APP vynálezca-2. Ak ste amatér v kódovaní systému Android, ušetrí vám to čas a prinesie dobré výsledky. Hlavné komponenty použité pri vytváraní tejto aplikácie nie sú veľa, iba niekoľko tlačidiel a balík Bluetooth klientov. Pri kódovaní aplikácie uveďte zodpovedajúci text, ktorý sa má odoslať pre každé stlačené tlačidlo na obrazovke, ktoré požiada Arduino o blikanie IR LED rovnakým spôsobom, ako by to urobilo jednotlivé diaľkové ovládanie; nezabudnite tiež uviesť správnu adresu vášho modulu Bluetooth HC-05. Takto bude konečná aplikácia vyzerať vo vašom inteligentnom telefóne so systémom Android:
Tu je krok za krokom proces zostavenia aplikácie:
KROK 1:
Prihláste sa na tento odkaz: ai2.appinventor.mit.edu alebo skúste vyhľadať MIT appinventor-2 na Google. Na prihlásenie do AI2 je potrebný účet Google, takže ak ho nemáte, vytvorte si ho.
KROK 2:
Po prihlásení pomocou účtu Google budete presmerovaný na funkčnú webovú stránku AI2, ktorá vyzerá takto:
Začnite nový projekt kliknutím na kartu „Projekty“ v hornej časti a výberom položky „Spustiť nový projekt“. Keď skončíte s pomenovacou časťou a všetkým, zobrazí sa vám prázdna obrazovka, do ktorej môžete umiestniť tlačidlá a text, ako je uvedené vyššie. Toto je obrazovka grafického používateľského rozhrania, na ktorej sa rozhodujete, ako by aplikácia vyzerala pre používateľa.
Ak chcete použiť balík tlačidiel, vyberte kartu „Tlačidlo“ na ľavej strane obrazovky v časti „Používateľské rozhranie“. Stačí pretiahnuť ľubovoľný balík z ľavej bočnej ponuky a umiestniť ho na pracovnú obrazovku. Podobne na zobrazenie akýchkoľvek textových vecí použite balík „Štítok“.
KROK 3:
Po usporiadaní všetkých svojich tlačidiel a štítkov je čas vytvoriť kód pre túto aplikáciu. Predtým si ale musíme zvoliť aj balíček Bluetooth pre komunikáciu s Arduinom.
Môžete si všimnúť, že tento balík sa nezobrazuje na obrazovke, ale spadá pod „Neviditeľné komponenty“. Toto sú komponenty, ktoré nemajú žiadny význam pri líčení GUI.
KROK 4:
Ďalej nasleduje sekcia kódovania, v ktorej definujete funkciu pre komponenty, ktoré ste vybrali a s ktorými chcete pracovať.
Na ľavej strane obrazovky si všimnete všetky balíky, ktoré ste vybrali v sekcii GUI. Obrázok vyššie zobrazuje, čo sú všetky komponenty v konkrétnom balíku, ktorý môžete využiť. Upozorňujeme tiež, že adresa modulu Bluetooth musí byť uvedená v textovom formáte.
SETP 5:
Ak máte pocit, že je aplikácia pripravená na použitie, a takisto sa nevyskytujú žiadne chyby, kliknite na kartu Vytvoriť, ako je uvedené vyššie, a vyberte druhú možnosť. Týmto sa stiahne vaša vlastná aplikácia do počítača vo formáte „.apk“. Potom stačí preniesť tento súbor.apk do ľubovoľného zariadenia so systémom Android a kliknutím naň ho nainštalovať.
Takto môžete pomocou svojho inteligentného telefónu ovládať akékoľvek IR diaľkové ovládanie, stačí dekódovať diaľkové ovládanie všetkých zariadení, ktoré chcete pomocou tohto telefónu ovládať, a nahradiť dekódovaný HEX kód diaľkových tlačidiel v kóde Arduino.