Hogyan tervezhetünk Arduino alapú otthoni automatizálási rendszert a TV távvezérlő használatával?

Az otthoni automatizálási rendszer a leggyorsabban növekvő koncepció a modern világban. Az intelligens otthoni automatizálás olyan koncepció, amelyben egyetlen eszközzel szabályozzák a ház különféle elektronikus paramétereit, például háztartási készülékek kapcsolását, biztonsági riasztások felügyeletét, garázskapu automatizálást stb.



Automatizálási rendszer TV távirányítóval

Ebben a projektben egy egyszerű TV-távirányítóval egyszerű házi automatizálási rendszert készítünk. Ez a TV távirányító vezérli a mikrokontroller kártyához csatlakoztatott összes készüléket.



Hogyan használhatunk TV-távirányítót otthoni automatizálási rendszer létrehozásához?

A piacon már elérhető otthoni automatizálási rendszerek nagyon költségesek. Arduino táblával különféle háztartási készülékeket csatlakoztathatunk és TV-távirányítóval vezérelhetünk. Ez nagyon alacsony költséggel jár, és hatékony módon automatizálja a házat. Most lépjünk előre és kezdjünk el információkat gyűjteni a projekt elindításához.



1. lépés: Az összetevők összegyűjtése

A projekt megkezdésének legjobb módja az, hogy összeállítja az összetevőket, és áttanulmányozza ezeket az összetevőket, mert senki sem akar majd egy projekt közepén maradni, csak egy hiányzó alkatrész miatt. Az alábbiakban felsoroljuk azokat a komponenseket, amelyeket ebben a projektben használni fogunk:



  • TSOP 1738 IR vevő
  • Távirányító
  • Kenyérlemez
  • Jumper huzalok

2. lépés: Az alkatrészek tanulmányozása

Most, hogy tudjuk, milyen alkatrészeket fogunk használni, tanulmányozzuk röviden őket, hogy jobban megértsük az áramkör működését.

Az Arduino Nano egy mikrokontroller kártya, amely különféle áramkörökben végez különféle műveleteket. Megköveteli a C kód amely megmondja a testületnek, hogy milyen feladatokat és hogyan végezzen. 13 digitális I / O tűvel rendelkezik, ami azt jelenti, hogy 13 különböző eszközt tudunk működtetni. Ha több mint 13 eszközt szeretne vezérelni, használja az Arduino Mega alkalmazást.

Arduino Nano



A TSOP 1738 egy IR modul távvezérlőkhöz. Vivőfrekvenciája 38kHz. Ez egy fotodetektorból áll, amely érzékeli a jelet, majd demodulálja azt. Kimenetét közvetlenül használja az Arduino vagy bármely más mikrokontroller kártya.

TSOP érzékelő

A relé modul kapcsoló eszköz. Két módban működik, Normálisan nyitva (NO) és Normális esetben Zárt (NC) . NO üzemmódban az áramkör mindig megszakad, hacsak nem küld magas jelet a relének az Arduino-n keresztül. Az NC mód fordítva romlik, Az áramkör mindig teljes, hacsak nem kapcsolja be a relé modult. Győződjön meg arról, hogy az elektromos készülék pozitív vezetékét a relé modulhoz csatlakoztatja az alább látható módon.

Relé modul

A normál TV-távirányítón található egy bekapcsológomb és az összes számgomb. Ezeket a numerikus gombokat használjuk az elektromos készülékek kapcsolására.

3. lépés: Az áramkör elkészítése

Most, hogy tudjuk, hogyan működik az összes alkatrész, lépjünk előre, és kezdjük meg az áramkör létrehozását.

  1. Vegyünk egy kenyérlapot, és helyezzük bele Arduino Nano készülékét és a TSOP 1738-at.
  2. Az Arduino segítségével kapcsolja be a TSOP 1738 modult és a relé modult. Csatlakoztassa a KI a TSOP1738 tűt az Arduino pin11-hez, és csatlakoztassa a BAN BEN a relé modul csapjai az Arduino-hoz. Csak két elektromos készüléket irányítok, ezért itt csak relé modulokat használok. Ha több készüléket szeretne vezérelni, hasonlóképpen csatlakoztasson több relé modult.

    Kördiagramm

4. lépés: Az Arduino használatának megkezdése

Ha korábban nem dolgozott az Arduino IDE-n, ne aggódjon, mert az Arduino IDE beállításának lépésről lépésre az alábbiakban látható.

  1. Csatlakoztassa Arduino kártyáját a számítógéphez, és nyissa meg a Vezérlőpultot. Kattintson Hardver és hang. Most nyitva Eszközök és nyomtató és keresse meg azt a portot, amelyhez a táblája csatlakozik. Az én esetemben az COM14 de a különböző számítógépeken más.

    Port megtalálása

  2. Kattintson az Eszköz menüre, és állítsa be a táblát Arduino Nano (AT Mega 328P) .

    Tábla beállítása

  3. Kattintson ismét az Eszköz menüre, és állítsa be azt a portot, amelyet korábban a kezelőpanelen észlelt.

    Port beállítása

  4. Ugyanabban az Eszköz menüben állítsa a Processzort a következőre: ATmega328p (Old Bootloader) .

    Processzor beállítása

  5. A távirányító által küldött adatok dekódolásához szükségünk van egy speciális könyvtárra az A kód Arduino számára. Ez a könyvtár az alábbi linken található kóddal együtt csatolva van. A könyvtár goto hozzáadásához Vázlat> Könyvtár hozzáadása> ZIP-könyvtár hozzáadása . Megjelenik egy doboz. Keresse meg a ZIP mappát a számítógépén, és kattintson az OK gombra a mappa felvételéhez.

    Könyvtár beillesztése

  6. Töltse le az alább mellékelt kódot, és kattintson a feltöltés gombra, hogy megírja a kódot az Arduino Nano táblán.

    Feltöltés

Kattintson a Letöltés gombot a kód megszerzéséhez.

5. lépés: Kód

A kód nagyon könnyen érthető, de mégis, az alábbiakban röviden ismertetjük.

1. void setup () egy olyan függvény, amelyben inicializáljuk az INPUT vagy OUTPUT csapokat. Ez a funkció az átviteli sebességet is beállítja a használatával Serial.begin () parancs. A Baud Rate a mikrovezérlő kommunikációs sebessége.

2. void loop () egy olyan funkció, amely ciklusban ismételten fut. Ebben a ciklusban írunk egy kódot, amely megmondja a mikrokontroller táblának, hogy milyen feladatokat és hogyan kell végrehajtani.

3. Amikor adatokat küldünk a TV távirányítójáról, Arduinónak dekódolnia kell ezeket az adatokat. Ehhez külön könyvtárat vontunk be #tartalmazza <IRremote.h>. Ebben a könyvtárban egy funkcióval dekódolják az egyes kulcsok adatait, amelyeket a távvezérlőről küldtek.

#include int RECV_PIN = 11; IRrecv irrecv (RECV_PIN); eredmények dekódolása_eredmények; void setup () {Serial.begin (9600); irrecv.enableIRIn (); } void loop () {if (irrecv.decode (& results)) {Soros.println (eredmények.érték, HEX); irrecv.resume (); } késleltetés (100); }

A fenti kód beolvassa a távirányítóról küldött értékeket, és dekódolja a megfelelő HEX értékre. Ez a kód az IRremote könyvtár példáiból származik az Arduino IDE-ben. Ezt a kódot a letöltési link is a névhez csatolja teszt.ino fentebb biztosított. Ennek a funkciónak a kimenete az összes számbillentyű lenyomásakor a következő lesz:

Dekódoljon

4. A kód.ino A fenti letöltési linkhez csatolva az Arduino által használt gombok inicializálásra kerülnek. Ban,-ben void loop () funkció, amikor a távvezérlő gombját megnyomják, az eredetileg Hamis állapotra fordult Igaz és a megfelelő relé be van kapcsolva. Ha ugyanazt a gombot újra megnyomja, akkor az átkapcsol a logikai feltételre és kikapcsolja a relét. A bekapcsológomb be- vagy kikapcsolja az összes relét.

void loop () {if (irrecv.decode (& results)) {Soros.println (eredmények.érték, HEX); késés (100); if (eredmények.érték == 0x40BD00FF) {i =! i; digitalWrite (IN1, i); } if (eredmények.érték == 0x40BD807F) {j =! j; digitalWrite (IN2, j); // késés (200); } if (eredmények.érték == 0x40BD28D7) {m =! m; digitalWrite (IN1, m); digitalWrite (IN2, m); digitalWrite (IN3, m); digitalWrite (IN4, m); // késés (200); } irrecv.resume (); // fogadja a következő értéket // delay (100); }}

Ez volt az egész eljárás egy egyszerű otthoni automatizálási rendszer elkészítésére, amelyet egy TV távirányítója vezérelt. Most csatlakoztathatja a relé modulokat a készülékek számának megfelelően, és élvezheti saját intelligens otthoni automatizálási rendszerét.