Ako navrhnúť domáci automatizačný systém založený na Arduine pomocou diaľkového ovládača TV?

Systém domácej automatizácie je najrýchlejšie sa rozvíjajúcim konceptom moderného sveta. Inteligentná domáca automatizácia je koncept, pri ktorom sa jediné zariadenie používa na riadenie rôznych elektronických parametrov domu, napríklad prepínanie domácich spotrebičov, sledovanie bezpečnostných alarmov, automatizácia garážových brán atď.



Automatizačný systém pomocou televízneho diaľkového ovládača

V tomto projekte použijeme jednoduché televízne diaľkové ovládanie na výrobu jednoduchého systému domácej automatizácie. Tento diaľkový ovládač televízora bude ovládať všetky spotrebiče pripojené k doske mikrokontroléra.



Ako pomocou televízneho diaľkového ovládača vyrobiť domáci automatizačný systém?

Systémy domácej automatizácie, ktoré sú už na trhu k dispozícii, sú veľmi nákladné. Pomocou dosky Arduino môžeme pripojiť rôzne domáce spotrebiče a ovládať ich pomocou televízneho diaľkového ovládača. To bude veľmi lacné a bude to efektívny spôsob automatizácie domu. Poďme teraz o krok vpred a začnime zhromažďovať informácie potrebné na začatie projektu.



Krok 1: Zhromaždenie komponentov

Najlepším spôsobom, ako zahájiť akýkoľvek projekt, je zostaviť zoznam komponentov a prejsť krátkou štúdiou týchto komponentov, pretože nikto nebude chcieť zostať uprostred projektu len kvôli chýbajúcemu komponentu. Zoznam komponentov, ktoré v tomto projekte použijeme, je uvedený nižšie:



  • IR prijímač TSOP 1738
  • Diaľkové ovládanie
  • Nepál
  • Prepojovacie drôty

Krok 2: Štúdium komponentov

Keď už vieme, aké komponenty budeme používať, krátko si ich preštudujme, aby sme lepšie pochopili, ako funguje náš obvod.

Arduino Nano je doska mikrokontroléra, ktorá vykonáva rôzne operácie v rôznych obvodoch. Vyžaduje si to Zákonníka C. ktorý správnej rade povie, aké úlohy má vykonávať a ako. Má 13 digitálnych I / O pinov, čo znamená, že môžeme obsluhovať 13 rôznych zariadení. Ak chcete ovládať viac ako 13 zariadení, použite Arduino Mega.

Arduino Nano



TSOP 1738 je IR modul pre diaľkové ovládanie. Má nosnú frekvenciu 38kHz. Skladá sa z fotodetektora, ktorý detekuje signál a potom ho demoduluje. Jeho výstup priamo využíva Arduino alebo akákoľvek iná doska mikrokontroléra.

Senzor TSOP

Reléový modul je spínacie zariadenie. Funguje v dvoch režimoch, Normálne otvorený (NO) a Normálne Zatvorené (NC) . V režime NO je obvod vždy prerušený, pokiaľ nepošlete HIGH signál do relé cez Arduino. Režim NC sa zhoršuje naopak, Obvod je vždy dokončený, pokiaľ nezapnete reléový modul. Uistite sa, že ste pripojili kladný vodič elektrického spotrebiča k reléovému modulu spôsobom, ktorý je uvedený nižšie.

Reléový modul

Štandardné diaľkové ovládanie televízora má vypínač a všetky numerické tlačidlá. Tieto číselné tlačidlá sa budú používať na spínanie elektrických spotrebičov.

Krok 3: Výroba obvodu

Teraz, keď vieme, ako fungujú všetky komponenty, poďme ďalej a začnime s tvorbou obvodu.

  1. Vezmite nepájivú dosku a vložte do nej svoje Arduino Nano a TSOP 1738.
  2. Zapnite modul TSOP 1738 a reléový modul cez Arduino. Pripojte VON pin TSOP1738 na pin11 Arduina a tiež pripojte IN kolíky reléového modulu na Arduino. Ovládam iba dva elektrické spotrebiče, takže tu používam iba reléové moduly. Ak chcete ovládať viac spotrebičov, podobne pripojte viac reléových modulov.

    Schéma zapojenia

Krok 4: Začíname s Arduino

Ak ste na rozhraní Arduino IDE doteraz nepracovali, nemusíte sa obávať, pretože nižšie je uvedený postup nastavenia Arduino IDE.

  1. Pripojte dosku Arduino k počítaču a otvorte ovládací panel. Kliknite na Hardvér a zvuk. Teraz otvorené Zariadenia a tlačiareň a nájdite port, ku ktorému je pripojená vaša doska. V mojom prípade to tak je COM14 ale v rôznych počítačoch je to iné.

    Hľadá sa prístav

  2. Kliknite na ponuku Nástroj a nastavte dosku ako Arduino Nano (AT Mega 328P) .

    Nastavovacia doska

  3. Znova kliknite na ponuku Nástroj a nastavte port, ktorý ste predtým pozorovali na ovládacom paneli.

    Nastavuje sa port

  4. V tej istej ponuke nástrojov nastavte procesor na ATmega328p (starý bootloader) .

    Nastavenie procesora

  5. Na dekódovanie údajov odoslaných diaľkovým ovládaním potrebujeme špeciálnu knižnicu pre kód A Arduino. Táto knižnica je pripojená spolu s kódom v nižšie uvedenom odkaze. Ak chcete pridať knižnicu, choďte na to Skica> Zahrnúť knižnicu> Pridať knižnicu ZIP . Zobrazí sa rámček. Vyhľadajte priečinok ZIP v počítači a kliknutím na tlačidlo OK priečinok zahrňte.

    Zahrnúť knižnicu

  6. Stiahnite si priložený kód nižšie a kliknutím na tlačidlo nahrávania vypálite kód na svojej doske Arduino Nano.

    Nahrať

Klikni na Stiahnuť ▼ tlačidlo na získanie kódu.

Krok 5: Kód

Tento kód je veľmi ľahko pochopiteľný, napriek tomu je v krátkosti popísaný nižšie.

1. nastavenie neplatnosti () je funkcia, pri ktorej inicializujeme piny INPUT alebo OUTPUT. Táto funkcia tiež nastavuje prenosovú rýchlosť pomocou Serial.begin () príkaz. Prenosová rýchlosť je komunikačná rýchlosť mikrokontroléra.

2. neplatná slučka () je funkcia, ktorá beží opakovane v slučke. V tejto slučke napíšeme kód, ktorý informuje dosku mikrokontroléra, aké úlohy a ako majú vykonávať.

3. Keď odosielame údaje z diaľkového ovládača televízora, Arduino musí tieto údaje dekódovať. Za týmto účelom sme zahrnuli špeciálnu knižnicu #zahrnúť <IRremote.h>. Funkcia v tejto knižnici sa použije na dekódovanie údajov každého kľúča odoslaných z diaľkového ovládača.

#include int RECV_PIN = 11; IRrecv irrecv (RECV_PIN); výsledky decode_results; void setup () {Serial.begin (9600); irrecv.enableIRIn (); } void loop () {if (irrecv.decode (& results)) {Serial.println (results.value, HEX); irrecv.resume (); } oneskorenie (100); }

Vyššie uvedený kód číta hodnoty odoslané z diaľkového ovládača a dekóduje ich na zodpovedajúcu hodnotu HEX. Tento kód je prevzatý z príkladov knižnice IRremote v Arduino IDE. Tento kód je tiež pripojený k odkazu na stiahnutie pri mene test.ino uvedené vyššie. Výstupom tejto funkcie po stlačení všetkých numerických kláves bude:

Dekódovať

4. V code.ino vo vyššie uvedenom odkaze na stiahnutie sa inicializujú piny Arduina, ktoré sa použijú. V neplatná slučka () funkcie, keď je stlačené tlačidlo na diaľkovom ovládači, na začiatku Falošné stav sa zmenil na Pravdaže a príslušné relé je zapnuté. Ak znova stlačíte to isté tlačidlo, prepne sa to na logický stav a relé sa vypne. Tlačidlo napájania zapne alebo vypne všetky relé.

void loop () {if (irrecv.decode (& results)) {Serial.println (results.value, HEX); oneskorenie (100); if (results.value == 0x40BD00FF) {i =! i; digitalWrite (IN1, i); } if (results.value == 0x40BD807F) {j =! j; digitalWrite (IN2, j); // oneskorenie (200); } if (results.value == 0x40BD28D7) {m =! m; digitalWrite (IN1, m); digitalWrite (IN2, m); digitalWrite (IN3, m); digitalWrite (IN4, m); // oneskorenie (200); } irrecv.resume (); // Príjem ďalšej hodnoty // delay (100); }}

To bol celý postup výroby jednoduchého systému domácej automatizácie ovládaného diaľkovým ovládačom televízora. Teraz môžete pripojiť reléové moduly podľa počtu vašich spotrebičov a užívať si svoj vlastný inteligentný domáci automatizačný systém.