- Potrebne komponente:
- Radno objašnjenje:
- Kružni dijagram:
- Dekodiranje signala daljinskog upravljača pomoću Arduina:
- Izrada Android aplikacije za IR Blaster:
Pokrenuo sam ovaj projekt kako bih se riješio raznih daljinskih upravljača u svom domu i izgradio nešto jedinstveno što bi moglo uključiti značajke svih njih. Tu sam ideju dobio kad sam vidio jedan od mobitela mog prijatelja s ugrađenim IR blasterom, u to sam vrijeme odlučio ne kupiti sličan telefon, već sam izraditi svoj uređaj koji bi trebao biti kompatibilan s mojom postojećom slušalicom. Dakle, ovdje ćemo pretvoriti Android telefon u IR daljinski pomoću Arduina za upravljanje raznim uređajima kod kuće.

Potrebne komponente:
- Arduino Uno
- IR LED
- TSOP-IR prijemnik (1838T)
- Bluetooth modul (HC05)
- Android uređaj (telefon, tablet itd.)
Radno objašnjenje:
Općenito koristimo dva daljinska upravljača za upravljanje televizorom kod kuće, jedan za televiziju i jedan za Set-Top Box, tako da ovdje u ovom projektu ciljam ova dva daljinska upravljača i izrađujem Android telefon koji radi kao IR Blaster tako da se televizorom može upravljati pomoću telefona, bez dodirivanja bilo kojeg daljinskog upravljača.
Korištenje ploče Arduino Uno samo mi je olakšalo bavljenje dijelom IR dekodiranja i kodiranja. Mjeri štit samo dodaje na praktičnost dio ovog projekta. Štit se sastoji od TSOP IR prijemnika (1838T), IR LED-a i Bluetooth modula (HC-05), pogledajte sliku dolje:

Možete izraditi prilagođeni štit ili možete izravno povezati komponente s Arduinom kao što je prikazano u 'Dijagramu spoja' u donjem odjeljku.
Prije nego što krenemo naprijed, prvo razgovarajmo o tome "kako rade daljinski upravljači". Većina IR daljinskih upravljača radi na frekvencijama od 38 KHz (to je razlog zašto sam odabrao 18 38 T). Daljnjim uključivanjem u ovu temu prepoznat će se da u ovim metodama IR prijenosa podataka ne postoji fiksni prikaz nula i jedinica. Ovi se kodovi koriste raznim tehnikama kodiranja koje proučavamo u našem nastavnom programu (budući da sam student elektronike). Značaj 38 KHz je u tome što je to frekvencija na kojoj signal oscilira kada je logično visok, tj. Ovo je noseća frekvencija signala. Pogledajte donju sliku; ovo je primjer NEC protokola. To će vaš koncept učiniti jasnijim:

Dakle, evo kako ovaj IR Blaster radi; Android telefon s prilagođenom Android aplikacijom šalje signal u Arduino krug preko Bluetootha, nadalje Arduino prima signal putem TSOP-IR prijamnika (1838T) i analizira ga. Tada Arduino naređuje IR LED-u da trepće u određenom uzorku, što odgovara gumbu pritisnutom na toj aplikaciji Android uređaja. Ovaj obrazac treptanja bilježi IR prijemnik TV-a ili Set-Top box-a i on u skladu s tim slijedi upute poput promjene kanala ili povećanja glasnoće.
Ali prije toga moramo dekodirati postojeće daljinske upravljače. Kao što je ranije spomenuto, u ovom projektu koristio sam dva daljinska upravljača, jedan koji komunicira s televizorom, a drugi je za Set-top box spojen na TV.
Kružni dijagram:

Dekodiranje signala daljinskog upravljača pomoću Arduina:
Arduino ploča ovdje radi u dvije faze, jedna je kada je koristite za dekodiranje IR kodova s daljinskog upravljača, a druga kada je koristite kao IR blaster uređaj.
Razgovarajmo o prvoj fazi. Sada se dekodirati gumb kodove IR, ja sam iskoristila Kena Shirriff je irRemote zaglavlja datoteke. Ova datoteka zaglavlja ima mnogo unaprijed definiranih primjera / kodova samo kako bi nam olakšao rad s IR kodovima:
- Prvo morate preuzeti i instalirati IR udaljenu knjižnicu ovdje
- Otpakirajte ga i stavite u svoju Arduino mapu 'Knjižnice'. Zatim preimenujte izvađenu mapu u IRremote.
- Zatim spalite dolje navedeni kod u Arduino, priključite prilagođeni štit kao što je prikazano gore i stavite daljinski upravljač za dekodiranje ispred TSOP IR prijemnika. Otvorite serijski monitor koji odgovara ovom Arduinu i pritisnite bilo koju željenu tipku s daljinskog upravljača. Vidjet ćete neke podatke prikazane preko terminala, a ti podaci uključuju vrstu koda, njegovu vrijednost i količinu bitova koji su s njim povezani. Evo kako to izgleda:
#include


Nakon što završite sa željenim dijelom za dekodiranje, zabilježite sve vrijednosti dekodiranja i ostale informacije pritisnutim odgovarajućim nazivom gumba. Ovo će poslužiti kao baza podataka za sljedeću fazu Arduina. Gornji program preuzet je iz mape 'examples' biblioteke IRremote, možete pogledati još primjera kako biste saznali više o korištenju IR daljinskog upravljača. Dakle, tako smo dekodirali IR daljinski izlaz.
Sada izgorite Kôd, dat u odjeljku Kôd na kraju, na istu tu ploču. Čestitamo, gotovi ste s prvom polovicom ovog projekta.
Izrada Android aplikacije za IR Blaster:
Evo druge polovice, izrade Android aplikacije. Jednostavno više volim koristiti MIT-ov APP inventor-2 za izradu takvih vrsta aplikacija. Ako ste amater u Android kodiranju, to će vam uštedjeti vrijeme i pružiti dobre rezultate. Glavne komponente korištene u izradi ove aplikacije nisu puno, samo nekoliko gumba i Bluetooth klijentski paket. Tijekom kodiranja aplikacije navedite odgovarajući tekst koji će se poslati za svaku tipku pritisnutu na zaslonu koja će tražiti da Arduino trepće IR LED na isti način kao što bi to učinio pojedinačni daljinski upravljač; osigurajte i točnu adresu svog Bluetooth HC-05 modula. Evo kako će izgledati konačna aplikacija na vašem pametnom telefonu Android:


Evo korak po korak procesa izrade aplikacije:
KORAK 1:
Prijavite se na ovaj link: ai2.appinventor.mit.edu ili pokušajte potražiti MIT appinventor-2 na Googleu. Za prijavu na AI2 potreban je Google račun, pa ako ga nemate, stvorite ga.
KORAK 2:
Nakon što se prijavite svojim Google računom, bit ćete preusmjereni na radnu web stranicu AI2, koja izgleda ovako:

Započnite novi projekt klikom na karticu „Projekti“ na vrhu i odaberite „Pokreni novi projekt“. Kada završite s dijelom za imenovanje i svim ostalim, prikazat će vam se prazan zaslon u koji možete postaviti gumbe i tekst kao što je gore prikazano. Ovo je zaslon GUI-a, na kojem vi odlučujete kako će aplikacija izgledati korisniku.
Da biste koristili paket gumba, odaberite karticu "Gumb" na lijevoj strani zaslona u odjeljku "Korisničko sučelje". Samo povucite bilo koji paket s lijevog izbornika i spustite ga na radni zaslon. Slično tome, za prikaz bilo kakvih tekstova vezanih uz tekst, upotrijebite paket "Oznaka".
KORAK 3:
Nakon što složite sve svoje gumbe i naljepnice, sada je vrijeme da napravite kôd za ovu aplikaciju. No prije toga moramo odabrati Bluetooth paket za komunikaciju s Arduinom.

Primijetit ćete da se ovaj paket ne prikazuje na zaslonu, već se nalazi u odjeljku "Nevidljive komponente". To su komponente koje nemaju značaj u sastavljanju grafičkog sučelja.
KORAK 4:
Slijedi odjeljak kodiranja u kojem ćete definirati funkciju za komponente koje ste odabrali i s kojima želite raditi.

Na lijevoj strani zaslona primijetit ćete sve one pakete koje ste odabrali u odjeljku GUI. Gornja slika pokazuje koje se sve komponente nalaze u određenom paketu koji možete iskoristiti. Također imajte na umu da adresa Bluetooth modula mora biti navedena u tekstualnom formatu.
POSTAVKA 5:
Kada osjetite da je aplikacija spremna za upotrebu, a nema i pogrešaka, kliknite karticu "Build" kao što je prikazano gore i odaberite drugu opciju. Ovo će preuzeti vašu izrađenu aplikaciju na računalo u ".apk" formatu. Zatim samo prenesite ovu.apk datoteku na bilo koji Android uređaj i kliknite je za instalaciju.

Dakle, na ovaj način možete pametnim telefonom upravljati bilo kojim IR daljinski upravljanim uređajem, samo trebate dekodirati daljinski upravljač bilo kojeg uređaja kojim želite upravljati svojim telefonom i zamijeniti dekodirani HEX kod daljinskih gumba u Arduino kodu.
