Obsah:
- Krok 1: Čo potrebujete, pred tým, čo potrebujete
- Krok 2: Čo potrebujete - hardvér
- Krok 3: Čo potrebujete - softvér
- Krok 4: Databáza SQL Server
- Krok 5: Webová aplikácia ASP.NET SignalR Hub
- Krok 6: Klient služby Python SignalR
- Krok 7: Skica a kód prenosu IR Arduino UNO
- Krok 8: Pripojenie a testovanie systému
- Krok 9: Systém v akcii
- Krok 10: Vylepšenie systému automatizácie a súvisiace opravy
- Krok 11: Známe problémy a obavy o bezpečnosť
Video: Rozbočovač domácej automatizácie Raspberry Pi-Arduino-SignalR: 11 krokov (s obrázkami)
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 12:00
Po niekoľkých mojich predohrách IBLE publikovaných tu a tu, tento projekt robí prvý krok k vytvoreniu základnej verzie funkčného centra pre domácu automatizáciu.
Použil som niekoľko rôznych technológií v snahe porozumieť tomu, ako budem môcť používať všetky veci, ktoré som sa naučil v minulosti, a nové veci, ktoré sa stále učím s postupujúcim dňom.
Toto centrum automatizácie sa preto skladá z nasledujúcich komponentov:
Databáza SQL Server 2012, ktorá:
- uloží zoznam vopred určených infračervených (IR) kódov do tabuľky spolu s unikátnym „kódovým kľúčom“
- kódové kľúče sú intuitívne pomenované (používateľom), aby sa identifikoval účel ich priradených IR kódov
Webová aplikácia ASP. NET SignalR Hub v reálnom čase, ktorá:
- očakáva a prijíma „kódové kľúče“ako príkazy od používateľa, ktorý čelí klientovi HTML
- po prijatí sa pripojí k databáze SQL a načíta kód IR pomocou dodaného kódu
- odovzdá načítaný IR kód klientovi Python SignalR
Používateľ, ktorý čelí klientovi HTML panelu SignalR, ktorý:
- komunikuje s Hubom jedinečný kódový kľúč prostredníctvom klientskych rozhraní API jQuery SignalR
- každé tlačidlo na hlavnom paneli bude predstavovať jedinečný kódový kľúč zaznamenaný v tabuľke databázy SQL
Aplikácia na pozadí služby Python SignalR spustená na Raspberry Pi 2.0, ktorá:
- prijíma IR kódy ako príkazy z Hubu
- hľadá oddeľovače v kóde IR a rozdelí veľmi dlhý kód na segmenty
- komunikuje cez Arduino cez sériový port a postupne zapisuje každý segment
Skica IR vysielača Arduino, ktorá:
- očakáva a prijíma každý zo segmentov IR kódu cez sériový port
- zostavuje segmenty kódu do poľa vyrovnávacej pamäte IR kódu
- zabalí vyrovnávaciu pamäť do príkazu IR Transmit pomocou knižnice IRLib Arduino
Ak je cieľový spotrebič v blízkosti infračerveného vysielača, zariadenie (môže) reagovať na infračervený signál prenášaný Arduinom
POZNÁMKA
Aj keď cieľový spotrebič, ktorý používam v tejto ukážke, reaguje na infračervené signály, možno si budete chcieť prečítať túto časť môjho iného IBLE z dôvodov, prečo tvrdím, že zariadenie (môže) reagovať na infračervený signál.
Čas valcovať sa.
Krok 1: Čo potrebujete, pred tým, čo potrebujete
Tento pokyn štartuje s niektorou z vykonaných prác, ktoré viedli k môjmu poslednému IBLE.
Predtým, ako sa pustíme do toho, čo pre tento IBLE potrebujeme, preto odporúčame prečítať si tento návod a získať základné znalosti o tom, ako:
- Bola zriadená infračervená knižnica Arduino IRLib
- Ako boli IR kódy použité v tomto IBLE zachytené pomocou IR prijímača
- Ako boli zachytené IR kódy použité na ovládanie cieľového zariadenia prostredníctvom IR vysielača
Po dokončení tohto IBLE som nasadil webovú aplikáciu ASP. NET IR Code Recorder, ktorá by:
- Akceptujte zachytený IR kód spolu s intuitívne pomenovaným kódovým kľúčom ako vstupy prostredníctvom webového formulára
- Rozdeľte veľmi dlhý IR kód na segmenty kratšie ako 64 znakov, aby ste zostali pod limitom sériovej vyrovnávacej pamäte Arduino Uno
- Posledný segment kódov bude vopred zafixovaný „E“, ktoré Arduinu naznačuje, že dostal posledný segment kódu
- Pred zostavením späť do dlhého reťazca by bol každý segment oddelený oddeľovačom rúrok
- Nakoniec bol segmentovaný IR kód spolu s jeho kódovým kľúčom uložený do databázy SQL Server 2012
Je to táto databáza SQL, ktorá tvorí jednu z komponentov centra Home Automation Hub vypracovaného v tomto IBLE.
POZNÁMKA
Webová aplikácia IR Code Recorder nie je súčasťou diskusie z týchto dôvodov:
- Kódy môžete ručne zachytiť pomocou programu Arduino Sketch, rozdeliť ich na sekcie oddelené potrubím a uložiť ich do databázy bez toho, aby ste museli vytvárať komplikovanú webovú aplikáciu.
- Na rozdiel od tohto IBLE sa IR rekordér zameriava na reverznú komunikáciu z Arduina na Raspberry Pi
Preto by podrobnosti o tomto projekte boli témou pre iný IBLE
Krok 2: Čo potrebujete - hardvér
Fungujúci Raspberry Pi 2.0 - Odporúčam nainštalovať Ubuntu Mate, pretože má bohatšiu sadu funkcií vrátane OpenLibre Office, ktoré bolo mimochodom nevyhnutné pri dokumentovaní tohto návodu, priamo na Raspberry Pi.
Navyše, Pi, budete potrebovať nasledujúce externé zariadenia:
- Prototypová platforma Arduino Uno alebo klon
- IR vysielač LED - použil som značku Three Legs od Amazon.com
- Rezistory 330 alebo 220 ohmov-použil som 220 (farebný kód červeno-červeno-hnedý), pretože som mal niekoľko šikovných
- Zvyčajná doska na chlieb, konektory a počítač s nainštalovaným prostredím Arduino
- Testovací kandidát - napríklad všadeprítomný LED monitor Samsung s diaľkovým ovládaním
Krok 3: Čo potrebujete - softvér
Aby boli všetky diely spojené, bude potrebné nainštalovať a spustiť nasledujúce nastavenie softvéru:
Na Raspberry Pi budete musieť nainštalovať nasledujúce:
- Arduino IDE - slúži na zostavenie náčrtu a jeho odoslanie do UNO
- Modul Python pre Arduino - pre sériovú komunikáciu medzi UNO a Pi
- Knižnica klienta Python SignalR - Tu si môžete prečítať pokyny
Počítač so systémom Windows s nainštalovaným nasledujúcim vývojovým prostredím:
- Bezplatná edícia Microsoft Visual Studio Express 2013 na zostavenie klientskej aplikácie SignalR Hub a Web
- Bezplatná edícia servera SQL Server 2012 Express na navrhovanie a budovanie back-endovej databázy
Hostiteľské prostredie Windows Internet Information Server (IIS):
- Hneď ako bude SignalR Hub a webový klient zostavený a testovaný, bude potrebné ho nasadiť na lokálny server IIS
- V mojom prípade plánujem vo svojej domácej sieti použiť starý prenosný počítač so systémom Windows 7 s IIS
POZNÁMKA
Všetky pokyny sú použiteľné pre verziu Python 2.7.x. Verzia 3.0 môže vyžadovať prepísanie
Krok 4: Databáza SQL Server
Priložená schéma ukazuje štruktúru základnej databázy servera SQL Server používanú v tejto aplikácii a obsahuje iba dve tabuľky.
Tabuľkový kód AutoHub
Dva dôležité stĺpce v tejto tabuľke sú:
AutoCodeKey - ukladá užívateľsky prívetivý názov kódu
Každý z kódových kľúčov je prenášaný automatizačným klientom - v našom prípade tlačidlom HTML z webovej stránky
AutoCodeVal - ukladá nespracovanú sekvenciu IR kódu
Toto je skutočný IR kód, ktorý v reakcii prostredníctvom centra SignalR prenáša späť klientovi
V tomto prípade klient Pythonu, ktorý neustále komunikuje s Hubom, prijíma sekvenciu IR kódov a prenáša ho cez sériový port do Arduino UNO.
Tabuľka AutoHubLog
- Zaznamenáva kód požadovaný klientom automatizácie.
- Toto je opatrenie na sledovanie toho, kto a kedy systém používal a aký kód bol požadovaný
Ako už bolo spomenuté, ako zvolenú databázovú platformu som použil SQL Server 2012. Tento jednoduchý dizajn môžete znova vytvoriť na inej databázovej platforme, ako je MySQL, Oracle atď.
Napriek tomu tu bol priložený skript SQL na vytvorenie tejto databázy
POZNÁMKA
- Kód pre centrum SignalR je určený na pripojenie k databáze SQL Server 2012
- Práca s inou databázou by znamenala zmenu Hubu tak, aby používal iný databázový ovládač
Krok 5: Webová aplikácia ASP. NET SignalR Hub
Webová aplikácia ASP. NET SignalR Hub spoločne pozostáva z nasledujúcich komponentov, ako je uvedené v priloženej schéme:
Časť 1 - Centrum SignalR, ktoré prijíma požiadavky od klienta a odpovedá naň
Oddiely 2, 4 - Webová stránka klienta HTML a jeho šablóna štýlov, ktoré spoločne tvoria prednú časť systému automatizácie a vydávajú príkazy do centra automatizácie
Časť 3 - Rozhrania API jQuery SignalR používané klientom HTML na komunikáciu s Centrom automatizácie
Časť 5 - SignalR Hub nekomunikuje priamo s databázou. Robí to prostredníctvom medziľahlých tried generovaných pomocou Entity Framework
Tieto triedy abstrahujú detaily databázy z klientskej aplikácie
Oddiel 6 - Trieda databázovej služby, ktorá pomáha vykonávať operácie čítania a zápisu v databáze SQL (popísané vyššie) pomocou tried Entity Framework
ASP. NET a SignalR sú technológie spoločnosti Microsoft a tento tutoriál vás prevedie tým, ako sa vytvára a nasadzuje jednoduchá aplikácia SignalR.
To, čo som tu postavil, je založené na základoch získaných z tohto tutoriálu. Po nasadení by mala aplikácia vyzerať podobne ako webová stránka zobrazená na druhom obrázku
POZNÁMKA KÓDU
Bol priložený súbor ZIP obsahujúci zmenšenú verziu kódu
Štruktúra priečinkov je zobrazená na obrázku - všetky triedy rámcov a skripty jQuery však boli odstránené, aby sa zmenšila veľkosť prílohy.
Odporúča sa, aby sa tento kód používal ako sprievodca, pretože keď vytvoríte novú webovú aplikáciu SignalR podľa vyššie uvedeného odkazu na tutoriál, najnovšie knižnice jQuery a triedy rámcov ASP. NET sa automaticky pridajú
Tiež odkazy na skripty jQuery na stránke index.html bude potrebné zmeniť, aby odrážali najnovšiu verziu klientskych knižníc jQuery SignalR, ktoré sa automaticky pridajú pri vytváraní webovej aplikácie.
Nakoniec bude potrebné zmeniť reťazec pripojenia tak, aby zodpovedal vašej databáze v súboroch s názvom Web.config*
Krok 6: Klient služby Python SignalR
Zatiaľ čo klient HTML SignalR je používateľským rozhraním orientovaným spredu, klient Python je back -end servisnou aplikáciou, ktorej hlavnou funkciou je prijímať IR kód prenášaný Hubom a smerovať ho do Arduino UNO cez sériovú komunikáciu.
Priložený kód je sám osebe vysvetľujúci a je dostatočne zdokumentovaný na popísanie jeho funkčnosti
Ako je znázornené na kompozitnej snímke obrazovky, klient HTML a klient služby Python komunikujú prostredníctvom centra SignalR takto:
- Užívateľ automatizačného systému vydá príkaz rozbočovaču kliknutím na tlačidlo
- Každé tlačidlo je priradené ku kódu IR kľúča a po kliknutí sa tento kód odošle do rozbočovača
-
Hub prijme tento kód, pripojí sa k databáze a získa surový kód IR signálu a odošle ho späť všetkým pripojeným klientom
Hub zároveň zaznamená záznam v databázovej tabuľke AutoHubLog, v ktorom zaznamená kód a dátum a čas, kedy ho požadovali vzdialení klienti
- Klient služby Python dostane IR kód a pošle ho Arduino UNO na ďalšie spracovanie
Krok 7: Skica a kód prenosu IR Arduino UNO
Obvod Arduino, ako je znázornené na obrázkoch, je pre tento systém celkom jednoduchý, a preto je stručne popísaný:
- Bezfarebná IR LED dióda musí byť na UNO zapojená do Digital PIN 3 - to je požiadavka knižnice IRLib Arduino
- Dôvody sú popísané v mojom predchádzajúcom IBLE o klonovaní diaľkového ovládača v časti súvisiacej s knižnicou IRLib
- Zelená LED dióda pripojená k Digital PIN 4 je vizuálnym indikátorom, ktorý sa rozsvieti, keď UNO prijme všetky sekcie IR kódu od klienta Python bežiaceho na Raspberry Pi.
- Rozsvietenie tejto LED diódy potvrdí, že sériová komunikácia medzi Raspberry Pi a UNO funguje
- Aby bola povolená sériová komunikácia, UNO je pripojený k Raspberry Pi cez USB port
- Priložená skica Arduino je dostatočne komentovaná na popísanie jej funkcie
- Komentáre v hornej časti kódu tiež opisujú, ako je potrebné obvod zapojiť
POZNÁMKA
V praxi bolo možné Arduino a Pi spoločne pripojiť k napájanému rozbočovaču USB dostatočne silnému, aby poháňal Pi, Arduino a tiež prenášal silný signál prostredníctvom infračervenej LED diódy
Krok 8: Pripojenie a testovanie systému
- Vybudujte a nasaďte ASP. NET SignalR Hub, klienta HTML spolu s databázou SQL Server 2012, na server Internet Information Server (IIS) vo vašej lokálnej domácej sieti.
- K webovej aplikácii sa dostanete otvorením klienta HTML SignalR cez
adresa URL tejto stránky bude zvyčajne https:// váš počítač: číslo_portu/
-
Kliknite na tlačidlo na ovládacom paneli a ak bola aplikácia správne nasadená, Hub odpovie vrátením IR kódu a jeho zobrazením na sivom paneli vedľa ovládacieho panela.
Pamätajte si! Kódy budete musieť načítať do svojej databázy nastavením knižnice IR prijímača a zachytením kódov podľa môjho predchádzajúceho IBLE
-
Pripojte Arduino k Raspberry Pi cez USB - otvorte Arduino IDE na Pi a uistite sa, že UNO môže nadviazať spojenie s Pi
tieto návody na Arduino by vám mali pomôcť dostať sa do toho dosť rýchlo
- Otvorte kód Python a vykonajte nasledujúce zmeny podľa vášho prostredia
- adresu sériového portu vášho UNO získanú z kroku 4
- adresa URL centra SignalR, aby sa zhodovala s vašou miestnou adresou URL z kroku 2 - v tomto prípade by to bol https:// váš počítač: číslo_portu/signál
- Nakoniec otvorte skicu Arduino v Arduino IDE na Raspberry Pi a odošlite ju do UNO
- Umiestnite dosku na chlieb, ktorá drží obvod, v tesnej blízkosti spotrebiča, ktorý chcete ovládať - IR LED dióda musí mať jasný zorný uhol s portom IR prijímača zariadenia
- Spustite program Python na Raspberry Pi stlačením tlačidla F5 na paneli s nástrojmi Python IDLE
- Vráťte sa na ovládací panel v klientskom programe HTML (krok 2) a kliknite na tlačidlo (napríklad Zapnúť alebo Zvýšiť hlasitosť)
Ak je systém nastavený správne, mali by ste byť schopní v telefóne alebo tablete vyvolať klientsku stránku HTML a ovládať svoje zariadenie pomocou tlačidiel na klientskej stránke HTML.
Krok 9: Systém v akcii
Vizuály vyššie zobrazujú systém domácej automatizácie v prevádzke hneď po jeho nastavení.
Od vydania tohto IBLE som rozhranie rozšíril zachytením niekoľkých IR kódov z môjho LED televízora VIZIO
Ako je znázornené vedľa prvého diaľkového ovládača televízora v prvom vizuáli, do webového používateľského rozhrania, ktoré je prístupné z môjho tabletu, bolo zabudovaných niekoľko základných funkcií tohto diaľkového ovládača.
Nasledujúce vizuály zobrazujú tablet v popredí s televízorom vzadu, ktorý reaguje na príkazy vydané z webového rozhrania:
- Príkaz vypnutia - televízor sa vypne
- Príkaz na zapnutie - televízor sa zapne a po zapnutí obrazovky sa zobrazí logo „V“
- Príkaz stlmenia ZAPNUTÝ - Pri stlmení reproduktora sa zobrazí vodorovná lišta
Vo všetkých testoch sa v šedej oblasti vedľa palubnej dosky na obrazovke tabletu zobrazuje príkaz zadaný klientom a odpoveď odoslaná vzdialeným serverom SignalR Hub
Krok 10: Vylepšenie systému automatizácie a súvisiace opravy
Tento systém je možné rozšíriť pridaním ďalších kódov zachytených z rôznych systémov. Aj keď je táto časť jednoduchá, existujú dva ďalšie faktory, ktoré budete musieť vziať do úvahy.
Vylepšenie 1 (rýchle): Práca s infračervenými signálmi rôznych dĺžok
-
IR kódy rôznych systémov sa dodávajú s rôznymi dĺžkami, dokonca aj medzi dvoma výrobkami od rovnakého výrobcu.
V tomto prípade je napríklad dĺžka poľa IR kódu pre LED televízor 67, zatiaľ čo pre zvukový panel Samsung je to približne 87
- To znamená, že ak by som najskôr zapol Sound Bar, pole IR Buffer v skici Arduino by bolo naplnené sekvenciou IR kódu, ktorá obsahuje 87 kódov
- Ak by som potom zapol LED televízor, zaplnilo by pole IR Buffer iba 67 kódov, ale zvyšných 20 kódov z predchádzajúcej operácie by bolo stále okolo.
Výsledok? LED televízor sa nezapne, pretože vyrovnávacia pamäť IR kódov bola poškodená ďalšími 20 kódmi, ktoré neboli vyčistené z predchádzajúcej operácie!
Oprava 1 (jednoduchá cesta von, neodporúča sa)
Skicu Arduino upravte takto:
Vo funkcii loop () {} zmeňte nasledujúce volania funkcií
transmitIRCode ();
vysielať IRCode (c);
Vykonajte zmeny v podpise vyššie uvedenej funkcie:
void transmitIRCode (int codeLen) {// Konštanta RAWBUF nahradená codeLen IRTransmitter. IRSendRaw:: send (IRCodeBuffer, codeLen, 38); }
Aj keď je to jednoduché, pole sa nikdy úplne nevymaže, a preto to nie je veľmi čisté riešenie
Oprava 2 (Nie je ťažké, odporúča sa)
Po sekcii komentárov vyhláste dodatočnú premennú na samom vrchu skici Arduino:
nepodpísané int EMPTY_INT_VALUE;
Pridajte to do hornej časti funkcie setup ():
// Zachyťte prirodzený stav prázdnej celočíselnej premennej bez znamienkaEMPTY_INT_VALUE = IRCodeBuffer [0];
Prejdite nadol a pridajte novú funkciu do náčrtu bezprostredne za funkciou transmitIRCode ():
void clearIRCodeBuffer (int codeLen) {// Vymazanie všetkých kódov z poľa // POZNÁMKA: Nastavenie prvkov poľa na 0 nie je riešením! pre (int i = 1; i <= codeLen; i ++) {IRCodeBuffer [i-1] = EMPTY_INT_VALUE;}}
Nakoniec zavolajte novú funkciu vyššie na nasledujúce miesto vo funkcii loop ():
// Reset - Pokračovať v čítaní Serial PortclearIRCodeBuffer (c);…
Toto je čistejší prístup, pretože v skutočnosti resetuje všetky miesta v poli IR Buffer, ktoré boli obsadené najnovším signálom IR kódu, bez toho, aby ste nechali čokoľvek na náhodu.
Vylepšenie 2 (Viac zapojené): Opakovaný prenos signálu IR pre určité zariadenia
Niektoré zariadenia vyžadujú na odpoveď rovnaký signál viackrát, aby odpovedali Príklad: V takom prípade zvukový panel Samsung vyžaduje odoslanie rovnakého kódu dvakrát s odstupom 1 sekundy
Diskutovalo sa o oprave v koncepcii, pretože je trochu viac zapojená a bude potrebovať testovanie
Pridanie funkcie opakovania do skici Ardunio bude znamenať, že budete musieť skicu flashovať pri každom pridaní nového zariadenia do vášho systému domácej automatizácie
Namiesto toho pridaním tejto opravy do klienta HTML SignalR a aplikácie Python SignalR Service bude riešenie oveľa flexibilnejšie. A to sa dá v zásade dosiahnuť nasledovne:
Upravte klienta HTML SignalR tak, aby do Hubu odosielal informácie o opakovaní
Otvorte index.html a vložte hodnotu opakovania do tlačidla HTML takto:
value = "SMSNG-SB-PWR-ON" sa zmení na value = "SMSNG-SB-PWR-ON_2_1000"
Kde 2 je hodnota opakovania a 1 000 je hodnota oneskorenia v milisekundách medzi dvoma signálmi opakovania
Keď kliknete na toto tlačidlo, centrum SignalR dostane kód kľúča+Repeat_Spec
Upravte metódy na strane servera SignalR tak, aby analyzovali iba kód kľúča:
- Použite kód kľúča na získanie IR kódu z databázy ako obvykle
- Odošlite kód kľúča+Repeat_Spec a kód IRC klientom SingalR ako obvykle
Upravte aplikáciu Python SignalR Service tak, aby prenášala signály pomocou hodnôt opakovania:
Otvorte klienta Python a upravte nasledujúce dve funkcie:
def print_command_from_hub (buttonId, cmdSrc):
# analyzujte opakujúci sa kód z hodnoty buttonId
def transmitToArduino (IRSignalCode, delim, endPrefix):
# nastavte chvíľu alebo slučku na prenos signálu na požadovanej frekvencii
- Týmto spôsobom sa Arduino nemusí opakovane blikať
- Do tohto systému je možné zabudovať ľubovoľný počet opakujúcich sa frekvencií
- Okrem toho, ak používate UNO, existuje obmedzenie veľkosti, do ktorej môže váš Sketch narásť!
Krok 11: Známe problémy a obavy o bezpečnosť
Ako je tomu v prípade systémov postavených úplne prvýkrát, aj tento má niekoľko problémov, ktoré sa objavili počas testovania.
Problém 1: Spúšťacie príkazy v rýchlom slede s oneskorením medzi kliknutiami na tlačidlá menej ako sekundu spôsobili, že systém prestal reagovať po prvých niekoľkých odpovediach.
- Reštartovaním klienta Python SignalR sa systém vráti do normálnej prevádzky
- Okamžitým riešením môže byť odstránenie nechcených výstupov ladenia v klientovi Python SignalR a tiež v skici Arduino a zopakovanie týchto testov.
- Ďalším miestom, kde by sme sa mali pozrieť, by bola samotná sériová komunikácia - bolo by možné pridať kód na rýchle vyprázdnenie vyrovnávacej pamäte?
To znamená, že som si všimol, že môj televízor nereaguje dobre na diaľkové ovládanie z výroby - preto môže prispieť aj samotná povaha IR komunikácie môjho televízora.
Problém 2: Obrazovka HTML prestáva po dlhom čase nečinnosti reagovať na kliknutia na tlačidlá
Toto správanie sa zvyčajne vyrieši obnovením stránky - príčina tohto správania je však stále nejasná
BEZPEČNOSTNÉ OPATRENIA
Tento systém bol navrhnutý len na používanie v miestnej (domácej) sieti a nemá potrebné bezpečnostné opatrenia, ktoré by bolo možné používať cez internet
Preto sa odporúča, aby bolo centrum SignalR rozmiestnené na miestnom počítači vo vašej miestnej/domácej sieti
Ďakujem, že ste si prečítali môj IBLE a dúfam, že sa budete baviť!
Odporúča:
Hlásenie zvončeka pre sluchovo postihnutých prostredníctvom domácej automatizácie (ESP-teraz, MQTT, Openhab): 3 kroky
Upozornenie na zvonček pre sluchovo postihnutých prostredníctvom domácej automatizácie (ESP-now, MQTT, Openhab): V tomto návode vám ukážem, ako som do svojej domácej automatizácie integroval svoj normálny zvonček. Toto riešenie je vhodné pre ľudí so sluchovým postihnutím. V mojom prípade ho používam na upozornenie, ak je miestnosť zaneprázdnená a hlučná na narodeninovej párty detí. Ja
Batériový senzor dverí s integráciou domácej automatizácie, WiFi a ESP-TERAZ: 5 krokov (s obrázkami)
Batériový senzor dverí s integráciou domácej automatizácie, WiFi a ESP-TERAZ: V tomto návode vám ukážem, ako som vyrobil dverový senzor napájaný z batérie s integráciou domácej automatizácie. Videl som ďalšie pekné senzory a poplašné systémy, ale chcel som si ich vyrobiť sám. Moje ciele: Senzor, ktorý detekuje a hlási doo
Plánovanie systému domácej automatizácie pre domácich majstrov: 12 krokov
Plánovanie systému domácej automatizácie pre domácich majstrov: Cieľom tohto návodu nie je povedať vám, ako môžete robiť to, čo by ste chceli, aby robil váš domov. Namiesto toho bolo napísané, aby sa myšlienka stala realitou, ale tiež aby sa šialenstvo stalo rozumom tým, že pochopíte limity (technológie, náklady, časová náročnosť
Inteligentná hudba v spálni a vani s Raspberry Pi - integrácia multiroomu, alarmu, ovládania tlačidlami a domácej automatizácie: 7 krokov
Inteligentná hudba v spálni a vani s Raspberry Pi - integrácia multiroomu, alarmu, ovládania tlačítkami a domácej automatizácie: Dnes vám chceme dať dva príklady toho, ako môžete Raspberry Pi používať s naším softvérom Max2Play na domácu automatizáciu: v kúpeľni a spálni . Oba projekty sú podobné v tom, že hudbu s vysokou vernosťou z rôznych zdrojov je možné streamovať prostredníctvom
Lacný, ľahký, internetom riadený systém domácej automatizácie: 5 krokov (s obrázkami)
Lacný, ľahký, internetom riadený systém automatizácie domácnosti: Ak máte domáce zvieratá/deti a potrebujete ich nakŕmiť alebo im dať výprask cez internet, tento systém vám môže byť užitočný. Je to veľmi ľahký a lacný spôsob, ako ovládať motory, LED diódy atď. Doma z akéhokoľvek počítača pripojeného k webu. Všetko, čo potrebujete, je Webc