- ESP Smart Plug pro domácí automatizaci
- Potřebné materiály
- Program Smart Plug pro ESP8266
- Kruhový diagram
- 3D tištěné pouzdro pro zásuvku Smart Plug
Od té doby, co jsem začal pracovat s moduly Wi-Fi ESP, jsem vždy chtěl vybudovat inteligentní zásuvku Wi-Fi, která mi umožní bezdrátově ovládat zátěž střídavého proudu prostřednictvím chytrého telefonu. Zatímco takové produkty jsou již na trhu k dispozici, jako je populární Moko WiFi Smart Plug nebo Sonoff, jsou trochu drahé a navíc vám nedávají radost z toho, že si vytvoříte vlastní. V tomto projektu vám tedy ukážu, jak si můžete pomocí Wi-Fi modulu ESP8266 vytvořit svůj vlastní Smart plug. Zařízení, které jsme postavili, lze snadno zapojit do jakékoli vystupující zásuvky AC a na druhém konci můžete připojit skutečnou zátěž jednoduše zasunutím do této zásuvky na našem zařízení. Poté ponechte hlavní vypínač zásuvky vždy zapnutý a můžete ovládat zátěž přímo ze svého smartphonu. Zábava, že? Pojďme tedy do projektu….
ESP Smart Plug pro domácí automatizaci
Již jsme vytvořili několik projektů domácí automatizace, od jednoduché domácí automatizace založené na RF až po mou oblíbenou domácí automatizaci založenou na hlasových asistentech Google. Ale dnes je požadavek tohoto projektu mírně odlišný.
Účelem je zapnout / vypnout můj směrovač Wi-Fi pouhým použitím smartphonu přímo z mé pracovní stanice. Protože moje připojení k internetu občas selže a když zavolám na zákaznickou službu, standardní odpověď, kterou dostanu, je „Pane, omlouvám se za způsobené nepříjemnosti. Restartujte prosím váš router tak, že jej vypnete a po několika sekundách znovu zapnete. “ Puffff! Unavený z toho, že jsem pokaždé kráčel po cestě k routeru, rozhodl jsem se postavit tuto inteligentní zástrčku wifi a ovládat ji pomocí ní.
Ale počkejte chvíli! Po vypnutí routeru již nebudu mít přístup k internetu. Jak jej tedy na dálku znovu zapnu? Naštěstí lze náš ESP8266 použít jako přístupový bod, což znamená, že může také fungovat jako router a vysílat vlastní signál wi-fi. Tento signál Wi-Fi bude vždy k dispozici, pokud je ESP8266 napájen. Z tohoto důvodu naprogramujeme náš ESP8266 jako zajatecký portál, takže jakmile se připojíme k signálu Wi-Fi ESP, dostaneme se na webovou stránku, kde můžeme zapnout / vypnout naši zátěž.
Potřebné materiály
1. Modul Wi-Fi ESP8266
2. Hi-Link AC na DC převodník (3,3 V)
3. 3V relé
4. NPN tranzistor BC547
5. Programovací modul FTDI
6. Arduino Wi-Fi štít
7. Připojení vodičů
Poznámka: Používáme tento štít Arduino Wi-Fi, který jsme postavili dříve. Deska slouží pouze k nahrání kódu Arduino do modulu ESP8266. Pokud tuto desku nemáte, můžete si ji buď postavit pomocí odkazu na použití tohoto jednoduchého programovacího obvodu ESP8266 k nahrání kódu.
Program Smart Plug pro ESP8266
Než budeme pokračovat, ponořme se přímo do programu, abychom pochopili, jak bude fungovat naše inteligentní zástrčka WiFi. Jak můžete vidět zde, začneme program zahrnutím několika hlavičkových souborů a nastavením síťového serveru DNS
#zahrnout
Poté inicializujeme GPIO pin 2 ESP jako výstup, který bude použit k ovládání naší zátěže. Poté máme pro naši webovou stránku dlouhý HTML kód. Tady máme na naší webové stránce celkem tři obrazovky, a to Domovská obrazovka, Na obrazovce a Vypnutá obrazovka.
Řetězec Home_Screen = "" // Stránka 1 - HTML kód na domovské obrazovce "" " " + style_detials + "
„“Vítejte - CircuitDigest
"" "; Řetězec ON_Screen =" "// Strana 2 - Pokud je zařízení zapnuto" "" "+ style_detials +" „“Smart Plug - zapnuto
"" "; Řetězec OFF_Screen =" "// Strana 3 - Pokud je zařízení vypnuté " " " " + style_detials + " „ “Smart Plug - vypnuto
" " ";Po otevření se tyto tři webové stránky objeví něco takového. Svou webovou stránku můžete upravit tak, aby se vám líbila.
Pak máme naši funkci nastavení prázdnoty, uvnitř které definujeme náš ESP, aby fungoval jako přístupový bod, a také jej pojmenujeme, zde „ESP_Smart_Plug“. Když se kterýkoli uživatel připojí k této Wi-Fi, bude přesměrován na domovskou stránku, kterou jsme definovali dříve.
pinMode (LED_BUILTIN, VÝSTUP); // LED pin jako výstup pro indikační pinMode (GPIO_2, OUTPUT); // GPIO pin jako výstup pro ovládání relé WiFi.mode (WIFI_AP); // Nastavit ESP v režimu AP WiFi.softAPConfig (apIP, apIP, IPAddress (255, 255, 255, 0)); WiFi.softAP ("ESP_Smart_Plug"); // Pojmenujte svou síť AP dnsServer.start (DNS_PORT, "*", apIP); webServer.onNotFound (() { webServer.sendHeader ("Location", String ("http://www.circuitdigest-automation.com/home.html"), true); // Výchozí otevření domovské obrazovky webServer.send (302, "text / plain", ""); });
Pokud uživatel klikne na tlačítko ON na domovské stránce, zobrazí se stránka na obrazovce a pin GPIO 2 bude nastaven vysoko
// ON_Screen webServer.on ("/ relé_ON", () {// Pokud je stisknuto tlačítko je stisknuto digitalWrite (LED_BUILTIN, LOW); // Vypnout LED digitalWrite (GPIO_2, HIGH); // Vypnout relé webServer.send (200, "text / html", ON_Screen); // Zobrazit tuto obrazovku });
Podobně pokud uživatel klikne na tlačítko pro vypnutí, zobrazí se stránka mimo obrazovku a pin GPIO 2 bude nastaven na NÍZKO.
// OF_Screen webServer.on ("/ relay_OFF", () {// Pokud je stisknuto tlačítko pro vypnutí digitalWrite (LED_BUILTIN, HIGH); // Zapne LED digitalWrite (GPIO_2, LOW); // Zapne relé webServer.send (200, "text / html", OFF_Screen); // Zobrazit tuto obrazovku });
Celý kód spolu se soubory knihovny lze stáhnout jako soubor ZIP z níže uvedeného odkazu. Nyní, když je náš kód připraven, můžeme jej nahrát do našeho modulu ESP jednoduše kliknutím na tlačítko nahrávání a poté čekat na nahrání kódu. Celý program spolu se soubory knihovny lze stáhnout z níže uvedeného odkazu
ESP8266 Smart Plug - Stažení kódu Arduino
Ti, kteří mají štít Wi-Fi, mohou jednoduše zapojit vaše moduly, jak je uvedeno výše, a připojit je k vašemu počítači, aby mohli začít programovat náš ESP8266 pomocí IDE Arduino. Lidé, kteří nemají tuto desku, mohou použít schéma zapojení, jak bylo uvedeno výše.
Po nahrání kódu vyhledejte v telefonu sítě Wi-Fi a měli byste najít signál s názvem „ESP_Smart_Plug“. Připojte se k ní a dostanete se na webovou stránku, kterou jsme právě navrhli. Zde, když stisknete tlačítko pro vypnutí, měli byste si všimnout, že LED na naší desce ESP zhasla, a když stisknete tlačítko pro zapnutí, měla by se LED znovu rozsvítit.
Po několikanásobném ověření kódu již programovou desku pro tento projekt nebudeme potřebovat. Nyní musíme vytvořit obvod pro napájení našeho modulu ESP přímo ze síťového napětí a pomocí jeho pinu GPIO přepnout relé. K sestavení tohoto obvodu jsem použil modul převodníku AC-DC od Hi-Link, který převádí síťové napětí AC na 3,3 V DC s výstupním proudem 900 mA dostatečným pro napájení modulu ESP ze sítě. Výstupní relé je relé 3,3 V, které lze ovládat pinem GPIO ESP přes tranzistor, jako je tento BC547. Budeme také potřebovat 1k rezistor k omezení základního proudu našeho tranzistoru.
Kruhový diagram
Kompletní schéma zapojení pro inteligentní zástrčku Wi-Fi by vypadalo takto.
Prostřednictvím této zástrčky se získá síť střídavého proudu pro napájení našeho projektu. Ostatní komponenty jsou ty, které vysvětlovaly sluchadlo. Další důležitou věcí, kterou je třeba se soustředit, je udržet vysoké GPIO-0 a GPIO-2 při bootování. Jinak modul ESP přejde do programovacího režimu a výstupní kód nebude fungovat. Proto jsem ve výchozím nastavení použil rezistor 10k (lze použít hodnoty mezi 3,3k až 10k), abych vytáhl pin GPIO vysoko. Alternativně můžete místo tranzistoru BC547 použít také tranzistor PNP a přepnout relé z vysoké strany. S připraveným schématem zapojení jsem plánoval, jak tyto komponenty pájet tak, aby velikost desky byla co nejmenší, aby se vešla do malého pláště, a postupovalo se pájením desky.
3D tištěné pouzdro pro zásuvku Smart Plug
Dále jsem změřil rozměry desky pomocí mého nonia a také změřil rozměry zástrčky a zásuvky, abych navrhl pouzdro pro mou inteligentní zástrčku. Jakmile to bylo hotové, můj design vypadal níže.
Poté, co jsem byl spokojen s designem, jsem jej exportoval jako soubor STL, rozřezal jej na základě nastavení tiskárny a nakonec jej vytiskl. Soubor STL je opět k dispozici ke stažení na serveru thingsiverse a můžete si pomocí něj vytisknout vlastní obal.
Po dokončení tisku jsem byl s výsledkem docela spokojen. Pak jsem pokračoval s přidáním vodičů k mé desce a také je přišrouboval k výkonovým svorkám a zásuvce. Po úplném připojení jsem sestavil obvod do svého pouzdra a všechno se dobře hodilo, jak vidíte zde.
S mou inteligentní zástrčkou připravenou k akci jsem šel k routeru a sledoval jeho drát, abych našel jeho adaptér. Poté jsem ji vytáhl ze zásuvky, připojil inteligentní zástrčku ke stejné zásuvce a zapnul ji. Nyní jsem zapojil adaptér zpět do naší inteligentní zástrčky a tak jej mohu dál ovládat z telefonu. Stejným způsobem můžete ovládat jakékoli střídavé zatížení s nízkou spotřebou ve vaší domácnosti a bavit se.
Kompletní kód si můžete stáhnout zde a pracovní video pro tuto inteligentní elektrickou zásuvku najdete ve spodní části této stránky. Doufám, že se vám projekt líbil, dejte mi vědět v sekci komentářů, co byste s tímto zařízením automatizovali. Máte-li jakékoli dotazy, nechte je ve fóru a já se pokusím odpovědět na ně.