- Potrebne komponente:
- Delovna razlaga:
- Shema vezja:
- Dekodiranje signalov IR daljinskega upravljalnika z uporabo Arduino:
- Izdelava aplikacije za Android za IR Blaster:
Ta projekt sem začel, da bi se znebil različnih daljinskih upravljalnikov doma in zgradil nekaj, kar bi lahko vključevalo lastnosti vseh. To idejo sem dobil, ko sem zagledal prijateljev mobilni telefon z vgrajenim IR blastrom, takrat sem se odločil, da ne bom kupil podobnega telefona, temveč naredil svojo napravo, ki bi morala biti združljiva z mojo obstoječo slušalko. Torej, tukaj bomo pretvorili telefon Android v IR daljinski upravljalnik z uporabo Arduina za nadzor različnih naprav doma.
Potrebne komponente:
- Arduino Uno
- IR LED
- TSOP-IR sprejemnik (1838T)
- Modul Bluetooth (HC05)
- Naprava Android (telefon, tablični računalnik itd.)
Delovna razlaga:
Na splošno uporabljamo dva daljinska upravljalnika za upravljanje televizije doma, enega za televizijo in enega za Set-Top Box, zato tukaj v tem projektu ciljam na ta dva daljinca in Android telefon deluje kot IR Blaster, tako da je televizor mogoče upravljati s telefonom., ne da bi se dotaknili nobenega daljinskega upravljalnika.
Uporaba plošče Arduino Uno mi je pravkar olajšala obravnavo dela za IR dekodiranje in kodiranje. Meri ščit samo dodaja na udobje del tega projekta. Ščit je sestavljen iz sprejemnika TSOP IR (1838T), IR LED in modula Bluetooth (HC-05), glej spodnjo sliko:
Lahko izdelate ščit po meri ali pa komponente neposredno povežete z Arduinom, kot je prikazano v 'Diagramu vezja' v spodnjem razdelku.
Preden se premaknemo naprej, se najprej pogovorimo o tem, kako delujejo IR daljinci. Večina IR daljincev deluje na frekvencah 38 KHz (to je razlog, da sem izbral 18 38 T). Pri nadaljnjem vključevanju v to temo bomo ugotovili, da v teh metodah prenosa podatkov IR ni nobenega in enakega števila. Te kode uporabljajo različne tehnike kodiranja, ki jih preučujemo v našem inženirskem programu (ker sem študent elektronike). Pomen 38 KHz je v tem, da je frekvenca, na kateri signal niha, kadar je logično visoka, to je nosilna frekvenca signala. Oglejte si spodnjo sliko; to je primer protokola NEC. Tako bo vaš koncept bolj jasen:
Torej, kako deluje ta IR Blaster; Android telefon s prilagojeno aplikacijo Android pošlje signal v vezje Arduino prek Bluetootha, nadalje pa Arduino sprejema signal prek TSOP-IR sprejemnika (1838T) in ga analizira. Nato Arduino ukaže IR-lučki, da utripa v določenem vzorcu, kar ustreza gumbu, pritisnjenem na tej aplikaciji Android Device. Ta utripajoči vzorec zajame IR sprejemnik televizorja ali sprejemnika in sledi navodilom, kot je sprememba kanala ali povečanje glasnosti.
Pred tem pa moramo dekodirati obstoječe daljince. Kot smo že omenili, sem v tem projektu uporabil dva daljinska upravljalnika, enega za komunikacijo s televizorjem, drugega pa za sprejemnik, povezan s televizorjem.
Shema vezja:
Dekodiranje signalov IR daljinskega upravljalnika z uporabo Arduino:
Tukaj plošča Arduino deluje v dveh fazah, ena je, ko jo uporabljate za dekodiranje IR kod z oddaljenega, druga pa, ko jo uporabljate kot IR blast naprava.
Pogovorimo se o prvi fazi. Zdaj za dekodiranje gumb kod IR, ki sem jih uporabila IRremote Ken Shirriff v glavo datoteke. Ta datoteka z glavo ima veliko vnaprej določenih primerov / kod, da bi nam olajšali delo z IR kodami:
- Najprej morate naložiti in namestiti IR oddaljeno knjižnico od tukaj
- Razpakirajte in postavite v mapo Arduino 'Libraries'. Nato izvlečeno mapo preimenujte v IRremote.
- Nato spodaj navedeno kodo zažgite v Arduino, vstavite ščit po meri, kot je prikazano zgoraj, in postavite daljinski upravljalnik, ki ga želite dekodirati, pred sprejemnik TSOP IR. Odprite serijski monitor, ki ustreza temu Arduinu, in pritisnite kateri koli želeni gumb na daljinskem upravljalniku. Nad terminalom boste videli nekaj informacij, ki vključujejo vrsto kode, njeno vrednost in količino bitov, povezanih z njo. Takole je videti:
#include
Ko končate z želenim delom za dekodiranje, si zapišite vse vrednosti dekodiranja in druge informacije s pritisnjenim ustreznim imenom gumba. To bo služilo kot baza podatkov za naslednjo fazo Arduina. Zgornji program je vzet iz mape "Primeri" knjižnice IRremote. Oglejte si več primerov, če želite izvedeti več o uporabi IR daljinskega upravljalnika. Tako smo torej dekodirali IR daljinski izhod.
Zdaj zapiši kodo, navedeno v razdelku Koda na koncu, na isto ploščo. Čestitamo, končali ste s prvo polovico tega projekta.
Izdelava aplikacije za Android za IR Blaster:
Prihaja druga polovica, izdelava aplikacije za Android. Za izdelavo takšnih aplikacij preprosto raje uporabljam MIT-ov APP inventor-2. Če ste ljubitelj kodiranja s sistemom Android, boste tako prihranili čas in zagotovili dobre rezultate. Glavnih komponent, uporabljenih pri izdelavi te aplikacije, ni veliko, le nekaj gumbov in odjemalski paket Bluetooth. Med kodiranjem aplikacije navedite ustrezno besedilo, ki ga želite poslati za vsak gumb, pritisnjen na zaslonu, ki bo zahteval, da Arduino utripa IR LED na enak način, kot bi to storil posamezni daljinski upravljalnik; poskrbite tudi za pravilen naslov modula Bluetooth HC-05. Tako bo videti končna aplikacija v vašem pametnem telefonu Android:
Tu je korak za korakom postopek za izdelavo aplikacije:
KORAK 1:
Prijavite se na to povezavo: ai2.appinventor.mit.edu ali poskusite iskati MIT appinventor-2 v Googlu. Za prijavo v AI2 je potreben Googlov račun, zato ga ustvarite, če ga še nimate.
2. KORAK:
Ko se prijavite z Google Računom, boste preusmerjeni na delujočo spletno stran AI2, ki je videti takole:
Začnite nov projekt s klikom na zavihek »Projekti« na vrhu in izberite »Začni nov projekt«. Ko končate z delom za poimenovanje in vsem, se vam prikaže prazen zaslon, v katerega lahko namestite gumbe in besedilo, kot je prikazano zgoraj. To je zaslon GUI, na katerem se odločite, kako bo aplikacija videti uporabniku.
Če želite uporabiti paket gumbov, izberite zavihek »Gumb« na levi strani zaslona v razdelku »Uporabniški vmesnik«. Preprosto povlecite kateri koli paket iz levega menija in ga spustite na delovni zaslon. Za prikaz besedil, povezanih z besedilom, uporabite paket »Oznaka«.
3. KORAK:
Po razporeditvi vseh gumbov in nalepk je zdaj čas, da naredite kodo za to aplikacijo. Pred tem pa moramo izbrati tudi paket Bluetooth za komunikacijo z Arduinom.
Opazili boste, da ta paket ni prikazan na zaslonu, temveč je pod razdelkom »Nevidne komponente«. To so komponente, ki nimajo nobenega pomena pri sestavljanju GUI.
4. KORAK:
Sledi odsek za kodiranje, v katerem boste določili funkcijo za komponente, ki ste jih izbrali in s katerimi želite delati.
Na levi strani zaslona boste opazili vse tiste pakete, ki ste jih izbrali v razdelku GUI. Zgornja slika prikazuje, katere vse komponente so v določenem paketu, ki jih lahko uporabite. Upoštevajte tudi, da mora biti naslov modula Bluetooth naveden v besedilni obliki.
NASTAVITEV 5:
Ko začutite, da je aplikacija pripravljena za uporabo in tudi ni napak, kliknite zavihek »Build«, kot je prikazano zgoraj, in izberite drugo možnost. S tem boste v računalnik prenesli svojo ustvarjeno aplikacijo v obliki.apk. Nato preprosto prenesite to datoteko.apk v katero koli napravo Android in jo kliknite, da jo namestite.
Tako lahko s pametnim telefonom upravljate katero koli IR daljinsko vodeno napravo, le dekodirati morate daljinski upravljalnik vseh naprav, ki jih želite upravljati s svojim telefonom, in v kodo Arduino nadomestiti dekodirano HEX kodo daljinskih gumbov.