- Potrebni materijali:
- Metodologija rada:
- Preduvjeti:
- Rad daljinskog upravljača:
- Kružni dijagram i objašnjenje:
- Dekodiranje daljinskih signala izmjeničnog napona:
- Glavni Arduino program:
- Instaliranje Android aplikacije:
- Rad klima uređaja kojim upravlja mobitel:
U današnjem modernom svijetu, kamo god išli, oko sebe imamo puno elektroničkih uređaja. Ali, od svih, postoji samo jedan uređaj koji osobno stalno imamo u džepu. Da, to su naši mobiteli. Sada su mobilni telefoni postali više od uređaja koji se koristi za komunikaciju, oni su naše kamere, naše su karte, naša su karta za kupovinu i što ne?
S ovom sposobnošću u našim rukama, zaista je dosadna ideja koristiti daljinske upravljače za upravljanje bilo kojim elektroničkim aplikacijama u našem domu poput TV-a, klima uređaja, kućnog kina itd. Uvijek je frustrirajuće posegnuti za daljinskim upravljačem iz udobne udobnosti našeg kreveta ili sofu. Stoga ćemo u ovom projektu izgraditi malu postavku pomoću koje možete upravljati klima uređajem putem pametnog telefona pomoću Bluetootha i Arduina. Zvuči zanimljivo, zar ne! Izgradimo jedan
Potrebni materijali:
- Arduino Mega 2560
- TSOP (HS0038)
- IR Led
- Bilo koja LED u boji i 1K otpornik (opcija)
- HC-06
- Breadboard
- Spajanje žica
Metodologija rada:
Svi daljinski upravljači u našem domu koje koristimo za upravljanje TV-om, kućnim kinom, klima uređajima itd. Rade uz pomoć IR Blastera. IC odašiljač nije ništa drugo nego IR LED koja bi mogla Blaster signal ponavljajući pulsiranja; ovaj će signal čitati prijemnik u elektroničkom uređaju. Za svaku različitu tipku na daljinskom upravljaču zasvirat će se jedinstveni signal koji se nakon očitavanja prijemnika koristi za izvršavanje određenog unaprijed definiranog zadatka. Ako uspijemo očitati ovaj signal koji dolazi s daljinskog upravljača, možemo oponašati isti signal pomoću IR LED-a kad je ikad potreban za izvršavanje tog određenog zadatka. Prethodno smo napravili sklop IR Blastera za univerzalni IR daljinski upravljač i za automatsku kontrolu temperature izmjenične temperature.

TSOP je IR prijemnik koji se može koristiti za dekodiranje signala koji dolaze od daljinske upravljače. Koristit ćemo ovaj TSOP za dekodiranje svih podataka s našeg daljinskog upravljača i pohranjivanje na Arduino. Zatim pomoću tih podataka i IR Led možemo ponovno stvoriti IR signale iz našeg Arduina kad god je to potrebno.

Preduvjeti:
Za ovaj Arduino Bluetooth Controlled AC projekt provjerite imate li Arduino Mega, a ne bilo koju drugu verziju Arduina, jer je veličina koda velika. Instalirajte IR udaljenu knjižnicu pomoću ove veze za rad s TSOP-om i IR Blasterom.
Rad daljinskog upravljača:
Prije nego što nastavimo s projektom, odvojite malo vremena i primijetite kako vaš AC daljinski upravljač radi. AC daljinski upravljači rade na malo drugačiji način u odnosu na TV, DVD IR daljinske upravljače. Na vašem daljinskom upravljaču može biti samo 10-12 gumba, ali oni će moći slati puno različitih vrsta signala. Što znači da daljinski upravljač ne šalje isti kôd svaki put za isti gumb. Primjerice, kada smanjite temperaturu pomoću gumba za dolje da bi bila 24 ° C (Celzijev stupanj), dobit ćete signal s nizom podataka, ali kad ga ponovno pritisnete za podešavanje 25 ° C, nećete dobiti isto podaci jer je temperatura sada 25, a ne 24. Slično tome, kod za 25 također će se razlikovati za različite brzine ventilatora, postavke mirovanja itd. Dakle, nemojmo se petljati oko svih opcija i samo koncentrirati samo vrijednosti temperature s konstantnom vrijednošću za ostale postavke.
Drugi je problem količina podataka koja se šalje za svako pritiskanje gumba, normalni daljinski upravljači s 24 ili 48 bita, ali daljinski upravljač može poslati do 228 bita, jer svaki signal sadrži puno podataka poput Temp, Brzina ventilatora, Vrijeme spavanja, stil ljuljačke itd. To je razlog zašto nam je potreban Arduino Mega za bolje mogućnosti pohrane.
Kružni dijagram i objašnjenje:
Srećom, hardversko postavljanje ovog klima uređaja s kontroliranim mobitelom vrlo je jednostavno. Jednostavno možete koristiti ploču za povezivanje i uspostaviti veze kako je prikazano u nastavku.

Sljedeća tablica također se može koristiti za provjeru vaših veza.
|
S.Ne: |
Komponentni pin |
Arduino pin |
|
1 |
TSOP - Vcc |
5V |
|
2 |
TSOP - Gnd |
Gnd |
|
3 |
TSOP - Signal |
8 |
|
4 |
IR vodio - katoda |
Gnd |
|
5 |
IR vodio - anoda |
9 |
|
6 |
HC-05 - Vcc |
5V |
|
7 |
HC05 - Gnd |
Prizemlje |
|
8 |
HC05 - Tx |
10 |
|
9 |
HC05 - Rx |
11 |
Kad završite s povezivanjem, to bi trebalo izgledati otprilike ovako prikazano dolje. Upotrijebio sam pločicu za pospremanje stvari, ali možete i izravno spojiti muške i ženske žice da spojite sve komponente

Dekodiranje daljinskih signala izmjeničnog napona:
Prvi korak za kontrolu AC-a je upotreba TSOP1738 za dekodiranje IR kodova daljinskog upravljača. Izvršite sve veze kako je prikazano na shemi spojeva i provjerite jeste li instalirali sve spomenute knjižnice. Sada otvorite primjer programa “ IRrecvDumpV2 ” koji se može naći u Datoteka -> Primjeri -> IRremote -> IRrecvDumpV2 .
int recvPin = 8; IRrecv revocv (recvPin);
Budući da je naš TSOP spojen na pin 8, promijenite liniju broj 9 u int recPin = 8 kao što je prikazano gore. Zatim prenesite program na svoj Arduino Mega i otvorite serijski monitor.
Usmjerite daljinski upravljač prema TSOP i pritisnite bilo koju tipku, jer će svaki gumb koji pritisnete odgovarajući signal pročitati TSOP1738, dekodirati Arduino i prikazati na serijskom monitoru. Za svaku promjenu temperature na daljinskom upravljaču dobit ćete različite podatke. Spremite ove podatke jer ćemo ih koristiti u našem glavnom programu. Vaš će serijski monitor izgledati otprilike ovako, pokazao sam i Word datoteku u koju sam spremio kopirane podatke.

Snimka zaslona prikazuje kod za podešavanje temperature na 26 ° C za moj daljinski upravljač. Na temelju vašeg daljinskog upravljača dobit ćete drugačiji skup kodova. Slično tome kopirajte kodove za sve različite razine temperature. Možete provjeriti sve IR kodove daljinskog upravljača klima uređaja u Arduino kodu danom na kraju ovog vodiča.
Glavni Arduino program:
Kompletan Glavni Arduino Program može biti na dnu ove stranice, ali ne možete koristiti isti program. Morate promijeniti vrijednosti signalnog koda koje smo upravo dobili iz primjera skice. Otvorite glavni program na vašem Arduino IDE-u i pomaknite se dolje do ovog područja prikazanog dolje, gdje morate zamijeniti vrijednosti niza vrijednostima koje ste dobili za svoj daljinski upravljač.

Imajte na umu da sam upotrijebio 10 nizova, od kojih smo nas dvojica UKLJUČIVALA I ISKLJUČAVALA izmjeničnu struju, dok se ostatak 8 koristi za podešavanje različite temperature. Na primjer, Temp23 se koristi za postavljanje 23 * C na vašem AC, pa upotrijebite odgovarajući kod u tom nizu. Nakon što to učinite, jednostavno morate prenijeti kod na svoj Arduino.
Za ovaj projekt moramo uvesti dvije knjižnice. Jedna je IRremote knjižnica koju smo upravo dodali u Arduino, a druga je ugrađena softverska serijska knjižnica koja nam pomaže u korištenju Bluetooth modula.
#include
Dalje inicijaliziramo Bluetooth modul na pin 10 i 11, a zatim koristimo objekt nazvan irsend za pristup svim IR značajkama knjižnice.
SoftwareSerial BT_module (10, 11); // RX, TX IRsend irsend;
Slijede vrlo važni retci koda. Ovdje su prisutne informacije za kontrolu vašeg AC-a. Sljedeći prikazan je za moj daljinski upravljač naizmjeničnom strujom, a svoj ste trebali dobiti u prethodnom koraku.

Sljedeća unutar šupljina za postavljanje funkcije, mi inicijalizirati dva serijska komunikacija. Jedan je Bluetooth s brzinom prijenosa 9600 Baud, a drugi je Serijski monitor s brzinom prijenosa 57600 Baud.
void setup () {BT_module.begin (9600); // BT radi na 9600 Serial.begin (57600); // Serijski monitor, radni sin 57600}
Unutar naše praznine (beskonačne petlje) provjeravamo je li Bluetooth modul nešto primio. Ako se nešto primi, te podatke pohranjujemo u varijablu BluetoothData .
while (BT_module.available ()) // Ako dolaze podaci {BluetoothData = BT_module.read (); // pročitajte i spremite Serial.println (BluetoothData); // ispisati na serijski radi testiranja}
Informacije koje će Bluetooth primiti temeljit će se na gumbu pritisnutom na našoj aplikaciji Android koji ćemo instalirati u sljedećem koraku. Jednom kada primimo informacije, samo moramo pokrenuti odgovarajući IR kod kao u nastavku
if (BluetoothData == '2') {irsend.sendRaw (Temp23, sizeof (Temp23) / sizeof (Temp23), khz); delay (2000); // Pošalji signal za postavljanje Temperatue 23C}
Ovdje ako primimo kod '2' moramo postaviti temperaturu izmjenične struje na 23 ° C. Slično imamo i kod od 0 do 9 za obavljanje svih osnovnih upravljačkih funkcija izmjeničnog napajanja. Potpuni arduino kôd možete pogledati na kraju ove stranice.
Instaliranje Android aplikacije:
Posljednji korak Klimatiziranog uređaja kojim upravlja pametni telefon je instalacija Android aplikacije. Android aplikacija za ovaj projekt stvorena je pomoću Obrade Android načina. Obrada je izvrstan alat za stvaranje.EXE datoteka ili APK datoteka za vaše ugrađene projekte. To je platforma s otvorenim kodom poput Arduina i stoga je potpuno besplatna za preuzimanje.
Ako ne želite ulaziti previše u nju, jednostavno možete preuzeti APK datoteku odavde unutar zip datoteke i instalirati je izravno na svoj mobilni telefon. Otvorite aplikaciju i dobit ćete zaslon kao što je prikazano dolje nakon čega možete prijeći na sljedeći korak i uživati u radu s projektom. Ali ako želite prilagoditi program aplikacije kako bi ga prilagodio vašim potrebama, onda možete čitati dalje.

Kompletna programska datoteka za obradu kod može se preuzeti ovdje. Ovaj će ZIP imati kôd i izvor slike pomoću kojih aplikacija radi. Nakon otvaranja koda možete prilagoditi sljedeće retke kako biste ga prilagodili svojim potrebama.
Kao što je ranije rečeno, obrada je slična Arduinu. Dakle, ona također ima void setup i void petlju (ovdje nacrtati) funkcije. Unutar praznog postavljanje funkcija ćemo uputiti Bluetooth telefona i povezivanje s Bluetooth za Arduino. Ovdje se zove moj uređaj "HC-05", tako da će biti moj redak koda
bt.start (); // započnite slušati BT veze bt.getPairedDeviceNames (); bt.connectToDeviceByName ("HC-05"); // Povežite se s našim bluetooth modulom HC-06
Sljedeće unutar funkcija load_buttons () možete nacrtati onoliko gumba koliko želite. Nacrtao sam 10 gumba kako je prikazano na aplikaciji. Slijedi funkcija read_buttons () koja se koristi za otkrivanje gumba koji dodirujete. Svaka tipka ima određenu boju, pa kada korisnik dodirne zaslon, provjeravamo koju je boju dodirnuo i utvrđujemo koju je tipku dodirnuo. Uzorak koda za stvaranje gumb i odaberite ga na temelju boje prikazan je ispod
ispuniti (255,145,3); pravokutni (širina / 2-širina / 4, visina / 2, širina / 4, visina / 12); ispuniti (255); tekst ("25C", širina / 2-širina / 4, visina / 2); // gumb 5 if (boja_val == - 13589993) {bajtni podaci = {'0'}; bt.broadcast (podaci);}
Redak "byte data = {'0'};" je vrlo važna linija. Tu odlučujemo koji se kôd mora poslati Arduinu putem Bluetootha. Ako se pritisne ovaj gumb, ovdje se s Bluetooth-a na Arduino šalje znak "0". Slično tome, možemo poslati različit znak za različite gumbe. Zatim se ti znakovi mogu usporediti na Arduino strani i može se poduzeti odgovarajuća radnja.
Samo naprijed i petljajte se oko koda, ako sumnjate, kontaktirajte me putem odjeljka za komentare i potrudit ću se da vam pomognem.
Rad klima uređaja kojim upravlja mobitel:
Kad budete spremni sa svojim hardverom, Arduino kodom i Android aplikacijama, vrijeme je da uživate u rezultatima. Prenesite Arduino kôd na svoj hardver i postavite ga prema AC. Sada otvorite android aplikaciju na svom mobitelu, ako sve funkcionira prema očekivanjima, trebali biste vidjeti “ Connected to: device_name (neki kôd) ” kao što je prikazano ispod

Sada samo pritisnite bilo koji gumb na Android aplikaciji i on bi trebao pokrenuti odgovarajuću radnju na izmjeničnom naizmjeničnom naponu kao da koristite daljinski upravljač. Izmjenom koda možete dodati koliko god želite gumba, a također čak i automatizirati svoj AC na temelju vaše sobne temperature ili prisutnosti. Provjerite cjeloviti Arduino kod i video ispod.
Nadam se da vam se svidio projekt i razumjeli ste koncept koji stoji iza njega. Kao i uvijek ako imate bilo kakvih problema s ovim radom, na forumima možete postaviti svoja pitanja i riješiti ih.
APK datoteku za instaliranje Android aplikacije možete preuzeti ovdje.
