Kako oblikovati sistem za avtomatizacijo na osnovi Arduino z uporabo daljinskega upravljalnika TV?

Sistem avtomatizacije doma je najhitreje rastoči koncept sodobnega sveta. Pametna avtomatizacija doma je koncept, pri katerem se z eno samo napravo upravljajo različni elektronski parametri hiše, na primer preklapljanje gospodinjskih aparatov, nadzor varnostnih alarmov, avtomatizacija garažnih vrat itd.



Sistem za avtomatizacijo s TV daljincem

V tem projektu bomo s preprostim daljinskim upravljalnikom za TV izdelali preprost sistem avtomatizacije doma. Ta daljinski upravljalnik televizorja bo nadzoroval vse naprave, priključene na ploščo mikrokrmilnika.



Kako uporabiti daljinski upravljalnik za TV za izdelavo sistema za avtomatizacijo doma?

Sistemi za avtomatizacijo doma, ki so že na voljo na trgu, so zelo dragi. Na plošči Arduino lahko povežemo različne gospodinjske aparate in jih upravljamo s pomočjo daljinskega upravljalnika za televizor. To bo zelo poceni in učinkovit način avtomatizacije hiše. Zdaj pa stopimo korak naprej in začnimo zbirati informacije za začetek projekta.



1. korak: Zbiranje komponent

Najboljši pristop za začetek katerega koli projekta je, da sestavite seznam komponent in si ogledate kratko študijo teh komponent, ker nihče ne bo želel ostati sredi projekta samo zaradi manjkajoče komponente. Seznam komponent, ki jih bomo uporabili v tem projektu, je spodaj:



  • IR sprejemnik TSOP 1738
  • Daljinec
  • Breadboard
  • Jumper žice

2. korak: Preučevanje komponent

Zdaj, ko vemo, katere komponente bomo uporabljali, jih na kratko preučimo, da bomo bolje razumeli, kako deluje naše vezje.

Arduino Nano je mikrokrmilna plošča, ki izvaja različne operacije v različnih vezjih. Zahteva a Koda C ki odboru pove, katere naloge naj izvaja in kako. Ima 13 digitalnih I / O zatičev, kar pomeni, da lahko upravljamo 13 različnih naprav. Če želite upravljati več kot 13 naprav, uporabite Arduino Mega.

Arduino Nano



TSOP 1738 je IR modul za daljinske upravljalnike. Ima nosilno frekvenco 38kHz. Sestavljen je iz fotodetektorja, ki zazna signal in ga nato demodulira. Njegov izhod neposredno uporablja Arduino ali katera koli druga plošča mikrokrmilnika.

TSOP senzor

Relejni modul je stikalna naprava. Deluje v dveh načinih, Običajno odprto (NE) in Običajno Zaprto (NC) . V načinu NO je vezje vedno prekinjeno, razen če prek Arduina na rele pošljete VISOK signal. NC način skrbi, nasprotno, vezje je vedno popolno, razen če vklopite relejni modul. Prepričajte se, da ste pozitivno žico vašega električnega aparata povezali z relejskim modulom na spodnji način.

Relejni modul

Standardni daljinski upravljalnik televizorja ima gumb za vklop in vse številčne tipke. Te številčne tipke bodo uporabljene za vklop električnih naprav.

3. korak: Izdelava vezja

Zdaj, ko vemo, kako delujejo vse komponente, pojdimo naprej in začnite izdelovati vezje.

  1. Vzemite ploščo in vanjo vstavite Arduino Nano in TSOP 1738.
  2. Vklopite modul TSOP 1738 in relejski modul prek Arduina. Povežite OUT pin TSOP1738 na pin11 Arduino in priključite tudi IN zatiči relejskega modula na Arduino. Nadzorujem samo dve električni napravi, zato tukaj uporabljam samo relejne module. Če želite upravljati več naprav, podobno priključite več relejnih modulov.

    Shema vezja

4. korak: Uvod v Arduino

Če še niste delali na Arduino IDE, ne skrbite, ker je spodaj prikazan korak za korakom za nastavitev Arduino IDE.

  1. Povežite svojo ploščo Arduino z računalnikom in odprite nadzorno ploščo. Kliknite na Strojna oprema in zvok. Zdaj odprta Naprave in tiskalnik in poiščite vrata, na katera je priključena vaša plošča. V mojem primeru je COM14 v različnih računalnikih pa je drugače.

    Iskanje pristanišča

  2. Kliknite meni Orodje in nastavite ploščo kot Arduino Nano (AT Mega 328P) .

    Nastavitvena plošča

  3. Ponovno kliknite meni Orodje in nastavite vrata, ki ste jih že opazili na nadzorni plošči.

    Nastavitev vrat

  4. V istem meniju orodja nastavite procesor kot ATmega328p (stari zagonski nalagalnik) .

    Nastavitev procesorja

  5. Za dekodiranje podatkov, poslanih z daljinskim upravljalnikom, potrebujemo posebno knjižnico za kodo A Arduino. Ta knjižnica je priložena skupaj s kodo na spodnji povezavi. Če želite dodati knjižnico goto Skica> Vključi knjižnico> Dodaj knjižnico ZIP . Pojavilo se bo okno. V računalniku poiščite mapo ZIP in kliknite V redu, da vključite mapo.

    Vključi knjižnico

  6. Prenesite spodnjo kodo in kliknite gumb za prenos, da zapišete kodo na ploščo Arduino Nano.

    Naloži

Kliknite na Prenesi , da dobite kodo.

5. korak: koda

Koda je zelo enostavna za razumevanje, vendar je na kratko opisana spodaj.

1. void setup () je funkcija, pri kateri inicializiramo nožice VHOD ali IZHOD. Ta funkcija z uporabo nastavi tudi hitrost prenosa Serial.begin () ukaz. Hitrost prenosa je hitrost komunikacije mikrokrmilnika.

2. void loop () je funkcija, ki se večkrat izvaja v zanki. V to zanko napišemo kodo, ki mikrokrmilniški plošči pove, katere naloge naj izvaja in kako.

3. Ko podatke pošiljamo z daljinskega upravljalnika televizorja, jih mora Arduino dekodirati. Za to smo vključili posebno knjižnico #vključujejo <IRremote.h>. Funkcija v tej knjižnici bo uporabljena za dekodiranje podatkov vsakega ključa, poslanega z daljinskega upravljalnika.

#include int RECV_PIN = 11; IRrecv irecv (RECV_PIN); rezultati dekodiranja_rezultatov; void setup () {Serial.begin (9600); unrecv.enableIRIn (); } void loop () {if (unrecv.decode (& results)) {Serial.println (results.value, HEX); unrecv.resume (); } zamuda (100); }

Zgornja koda bere vrednosti, poslane z daljinskega upravljalnika, in jih dekodira v ustrezno vrednost HEX. Ta koda je povzeta iz primerov knjižnice IRremote v Arduino IDE. Ta koda je v povezavi za prenos priložena tudi z imenom test.ino zgoraj. Ko pritisnete vse številske tipke, bo funkcija te funkcije:

Dekodiraj

4. V code.ino v zgornji povezavi za prenos se inicializirajo zatiči Arduina, ki bodo uporabljeni. V void loop () funkcijo, ko pritisnete gumb na daljinskem upravljalniku, prvotno Lažno stanje obrnjeno na Prav in rele se vklopi. Če ponovno pritisnete isti gumb, bo preklopil logično stanje in izklopil rele. Gumb za vklop vklopi ali izklopi vse releje.

void loop () {if (unrecv.decode (& results)) {Serial.println (results.value, HEX); zamuda (100); if (results.value == 0x40BD00FF) {i =! i; digitalWrite (IN1, i); } if (results.value == 0x40BD807F) {j =! j; digitalWrite (IN2, j); // zamuda (200); } if (results.value == 0x40BD28D7) {m =! m; digitalWrite (IN1, m); digitalWrite (IN2, m); digitalWrite (IN3, m); digitalWrite (IN4, m); // zamuda (200); } revocv.resume (); // prejmemo naslednjo vrednost // delay (100); }}

To je bil celoten postopek za izdelavo preprostega sistema za avtomatizacijo doma, ki ga nadzoruje daljinski upravljalnik televizorja. Zdaj lahko relejske module povežete glede na število vaših naprav in uživate v svojem sistemu pametne avtomatizacije doma.