Kako dizajnirati sustav kućne automatizacije zasnovan na Arduinu pomoću TV daljinskog upravljača?

Sustav kućne automatizacije najbrže je rastući koncept modernog svijeta. Pametna automatizacija kuće koncept je u kojem se jednim uređajem koristi za kontrolu različitih elektroničkih parametara kuće, na primjer, prebacivanje kućanskih aparata, nadzor sigurnosnih alarma, automatizacija garažnih vrata itd.



Sustav za automatizaciju pomoću daljinskog upravljača za TV

U ovom ćemo projektu koristiti jednostavni daljinski upravljač za TV da bismo napravili jednostavan sustav automatizacije kuće. Ovaj daljinski upravljač televizora kontrolirat će sve uređaje povezane na ploču mikrokontrolera.



Kako koristiti daljinski upravljač za TV za izradu sustava automatizacije kuće?

Sustavi kućne automatizacije koji su već dostupni na tržištu vrlo su skupi. Arduino ploču možemo koristiti za povezivanje različitih kućanskih aparata i upravljanje njima pomoću daljinskog upravljača za TV. To će biti vrlo jeftino i učinkovit način automatizacije kuće. Krenimo sada korak naprijed i započnite sa prikupljanjem informacija za početak projekta.



Korak 1: Prikupljanje komponenata

Najbolji pristup za početak bilo kojeg projekta je sastavljanje popisa komponenata i prolazak kroz kratku studiju tih komponenata, jer nitko neće htjeti ostati usred projekta samo zbog nedostajuće komponente. Popis komponenata koje ćemo koristiti u ovom projektu dan je u nastavku:



  • IC prijemnik TSOP 1738
  • Daljinski upravljač
  • Breadboard
  • Jumper žice

Korak 2: Proučavanje komponenata

Sad kad znamo koje ćemo komponente koristiti, proučimo ih ukratko kako bismo bolje razumjeli kako funkcionira naš sklop.

Arduino Nano je ploča mikrokontrolera koja izvodi razne operacije u različitim krugovima. To zahtijeva a C kod koji odboru govori koje zadatke treba izvršiti i kako. Ima 13 digitalnih I / O pinova što znači da možemo upravljati s 13 različitih uređaja. Ako želite kontrolirati više od 13 uređaja, upotrijebite Arduino Mega.

Arduino Nano



TSOP 1738 je IC modul za daljinske upravljače. Ima nosivu frekvenciju od 38kHz. Sastoji se od fotodetektora koji detektira signal, a zatim ga demodulira. Njegov izlaz izravno koristi Arduino ili bilo koja druga ploča mikrokontrolera.

TSOP senzor

Relejni modul je sklopni uređaj. Radi u dva načina, Uobičajeno otvoreno (NE) i Normalno, redovno Zatvoreno (NC) . U NO načinu rada, krug je uvijek prekinut osim ako preko Arduina ne pošaljete VISOKI signal na relej. NC način brine obrnuto, krug je uvijek potpun ako ne uključite relejni modul. Obavezno spojite pozitivnu žicu vašeg električnog uređaja na relejni modul na način prikazan u nastavku.

Modul releja

Standardni daljinski upravljač za televizor ima gumb za uključivanje i sve numeričke tipke na sebi. Ove numeričke tipke služit će za prebacivanje električnih uređaja.

Korak 3: Izrada sklopa

Sad kad znamo kako sve komponente rade, krenimo dalje i krenimo u izradu sklopa.

  1. Uzmite pločicu i u nju umetnite svoj Arduino Nano i TSOP 1738.
  2. Uključite TSOP 1738 modul i relejni modul putem Arduina. Spojite VANJ pin TSOP1738 na pin11 Arduina i također spojite U zatiči relejnog modula za Arduino. Ja kontroliram samo dva električna uređaja pa ovdje koristim samo relejne module. Ako želite kontrolirati više uređaja, slično povežite više relejnih modula.

    Kružni dijagram

Korak 4: Početak rada s Arduinom

Ako prije niste radili na Arduino IDE-u, ne brinite jer je korak po korak za postavljanje Arduino IDE-a prikazan u nastavku.

  1. Spojite svoju Arduino ploču s računalom i otvorite upravljačku ploču. Kliknite na Hardver i zvuk. Sada otvoreno Uređaji i pisač i pronađite priključak na koji je spojena vaša ploča. U mom slučaju jest COM14 ali je različito u različitim računalima.

    Pronalaženje luke

  2. Kliknite izbornik Alat i postavite ploču kao Arduino Nano (AT Mega 328P) .

    Odbor za postavljanje

  3. Ponovno kliknite izbornik Alat i postavite priključak koji ste prije vidjeli na upravljačkoj ploči.

    Postavka porta

  4. U istom izborniku Alata postavite procesor kao ATmega328p (stari pokretač) .

    Procesor za podešavanje

  5. Za dekodiranje podataka poslanih daljinskim upravljačem potrebna nam je posebna knjižnica za A kod Arduino. Ova je knjižnica priložena zajedno s kodom na donjoj poveznici. Da biste dodali biblioteku goto Skica> Uključi biblioteku> Dodaj ZIP biblioteku . Pojavit će se okvir. Pronađite mapu ZIP na računalu i kliknite U redu da biste je uključili.

    Uključi biblioteku

  6. Preuzmite dolje priloženi kôd i kliknite gumb za prijenos da biste spalili kôd na svojoj Arduino Nano ploči.

    Učitaj

Klikni na preuzimanje datoteka za dobivanje koda.

Korak 5: kôd

Kôd je vrlo lako razumjeti, ali ipak, ukratko je opisan u nastavku.

1. void postavljanje () je funkcija u kojoj inicijaliziramo INPUT ili OUTPUT pinove. Ova funkcija također postavlja brzinu prijenosa pomoću Serial.begin () naredba. Brzina prijenosa je brzina komunikacije mikrokontrolera.

2. petlja void () je funkcija koja se ponavlja u petlji. U ovu petlju napišemo kod koji mikrokontroleru govori koje zadatke treba izvršiti i kako.

3. Kada podatke šaljemo s daljinskog upravljača, Arduino ih mora dekodirati. Za to smo uključili posebnu knjižnicu #uključuju <IRremote.h>. Funkcija u ovoj knjižnici koristit će se za dekodiranje podataka svakog ključa poslanog s daljinskog upravljača.

#include int RECV_PIN = 11; IRrecv neispravni (RECV_PIN); rezultati dekodiranja_ rezultata; void setup () {Serial.begin (9600); unrecv.enableIRIn (); } void loop () {if (unrecv.decode (& results)) {Serial.println (results.value, HEX); unrecv.resume (); } kašnjenje (100); }

Gornji kod čita vrijednosti poslane s daljinskog upravljača i dekodira ga u odgovarajuću HEX vrijednost. Ovaj je kôd preuzet iz primjera biblioteke IRremote u Arduino IDE-u. Ovaj je kôd također priložen u poveznici za preuzimanje imenom test.ino gore navedeni. Izlaz ove funkcije, kada se pritisnu sve numeričke tipke, bit će:

Dekodiranje

4. U kod.ino priložen u gornjoj vezi za preuzimanje, pinovi Arduina koji će se koristiti inicijaliziraju se. U petlja void () funkcija, kada se pritisne tipka na daljinskom upravljaču, početno Lažno stanje je okrenuto Pravi i odgovarajući relej je uključen. Ako se ponovo pritisne ista tipka, prebacit će logičko stanje i isključiti relej. Gumb za napajanje uključit će ili isključiti sve releje.

void loop () {if (unrecv.decode (& results)) {Serial.println (results.value, HEX); kašnjenje (100); if (results.value == 0x40BD00FF) {i =! i; digitalWrite (IN1, i); } if (results.value == 0x40BD807F) {j =! j; digitalWrite (IN2, j); // odgoda (200); } if (results.value == 0x40BD28D7) {m =! m; digitalWrite (IN1, m); digitalWrite (IN2, m); digitalWrite (IN3, m); digitalWrite (IN4, m); // odgoda (200); } unrecv.resume (); // Primamo sljedeću vrijednost // delay (100); }}

Ovo je bio cijeli postupak izrade jednostavnog sustava automatizacije kuće kojim upravlja TV daljinski upravljač. Sada možete povezati relejne module prema broju svojih uređaja i uživati ​​u vlastitom sustavu automatizacije pametne kuće.