Obsah:

Inteligentní časovač ESP8266-01 IoT pro domácí automatizaci: 9 kroků (s obrázky)
Inteligentní časovač ESP8266-01 IoT pro domácí automatizaci: 9 kroků (s obrázky)

Video: Inteligentní časovač ESP8266-01 IoT pro domácí automatizaci: 9 kroků (s obrázky)

Video: Inteligentní časovač ESP8266-01 IoT pro domácí automatizaci: 9 kroků (s obrázky)
Video: Zigbee, Thread, Matter a Espressif (Petr Stehlík) 2024, Červenec
Anonim
Inteligentní časovač ESP8266-01 IoT pro domácí automatizaci
Inteligentní časovač ESP8266-01 IoT pro domácí automatizaci
Inteligentní časovač ESP8266-01 IoT pro domácí automatizaci
Inteligentní časovač ESP8266-01 IoT pro domácí automatizaci
Inteligentní časovač ESP8266-01 IoT pro domácí automatizaci
Inteligentní časovač ESP8266-01 IoT pro domácí automatizaci

AKTUALIZACE

2018-09-30: Firmware aktualizován na Ver 1.09. Nyní se základní podporou Sonoff

1. 10. 2018: K testování na ESP8266-01 s problémy je k dispozici zkušební verze firmwaru 1.10

Vzhledem k tomu, že novými hláškami jsou Internet věcí (IoT) a Domácí automatizace, rozhodl jsem se podívat na aktuální položky v mém domě a jeho okolí, které lze ovládat pomocí nějakého zařízení. Položky, které vynikly, jsou následující:

  • Bazénové čerpadlo
  • Plnička vody v bazénu
  • Bazén a okolní světla
  • Osvětlení skříně televizního/zábavního systému

Běžnou položkou používanou k ovládání těchto zařízení jsou standardní nástěnné časovače. Každé zařízení je vybaveno vlastním časovačem a nachází se na různých místech. Ptáte se tedy, proč jsem si vybral tyto položky na začátek pro projekty Internet věcí nebo Domácí automatizace?

Žít v Jižní Africe znamená, že výpadky proudu jsou pravidelným jevem. Se statistikami mého domova jsem za poslední rok zaznamenal 35 výpadků napájení, celkem 40 hodin. Obvykle to není problém, protože všechny aktuálně nainstalované časovače jsou vybaveny záložní baterií pro uchování času při výpadku napájení. Existují však některé problémy:

  • Tyto záložní baterie vydrží jen rok nebo dva, poté je nutné vyměnit časovač. Časovače jsou konstruovány tak, že je nutné je zničit, aby získali přístup k interní baterii Ni-Cad.
  • Při každém výpadku napájení je třeba přeprogramovat časovače s vadnými bateriemi a nastavit čas.
  • Fyzické umístění časovače, když je zapojen do zásuvky ve zdi, téměř znemožňuje čtení LCD displejů zobrazujících časovač shora. To znamená, že je třeba odpojit časovač, nebo si musím lehnout na podlahu a nastavit nebo upravit časovače po výpadku napájení.

Z výše uvedených důvodů jsem se rozhodl vyzkoušet možnost nahradit časovače inteligentním časovačem IoT, připojeným k mé místní domácí síti.

Cílem bylo navrhnout samostatný časovač, který může:

  • Automaticky upravit aktuální čas pomocí internetu (IoT)
  • Provozováno bez jakýchkoli uživatelských akcí (Smart)
  • Zapnutí/vypnutí výstupu podle nastavených časů (časovač)
  • Programovatelné a ovladatelné prostřednictvím sítě (domácí automatizace)

Krok 1: Návrh ESP8266-01

Design ESP8266-01
Design ESP8266-01
Design ESP8266-01
Design ESP8266-01

Návrh byl proveden pomocí WiFi modulu ESP8266-01, protože to jsem měl k dispozici. V nejjednodušší formě má ESP8266-01 čtyři I/O piny:

  • GPIO0
  • GPIO2
  • TX
  • RX

Režimy zapnutí ESP8266-01

Logický stav I/O pinů se používá k určení, ve kterém režimu se ESP8266-01 spustí. Prvním krokem bylo určit, který z I/O pinů lze použít k pohonu výstupního relé.

  • Pro normální zapnutí musí být GPIO0 a GPIO2 nastaveno na logické VYSOKÉ. Je tedy zřejmé, že tyto dva piny nelze použít jako digitální výstup.
  • Pin Tx je nastaven jako výstup při zapnutí a výstup je nastaven vysoko. Tento pin Tx také přenáší některá sériová data při zapnutí. Tento pin tedy také nelze použít jako výstup.

Jediným zbývajícím pinem je pin Rx. Tento kolík je nastaven jako vstup při zapnutí a při zapnutí nemusí být vytažen vysoko. Tento kolík je tedy nejvhodnější pro použití jako výstupní kolík.

Boot-up

Aby byl zajištěn správný režim spouštění ESP8266-01 během napájení, jsou pomocí 10K odporů vytaženy následující piny vysoko:

  • GPIO0
  • GPIO2
  • RST
  • CH_PD

Tím je zajištěno, že se jednotka pokaždé správně spustí.

Výstupní relé

RX je jediný pin vhodný k použití jako výstup. Tento pin je tedy použit k pohonu výstupního relé přes tranzistor NPN. Byly přidány standardní setrvačníkové diody a tranzistorové základní odpory.

Tlačítko MODE/SET

Tlačítko je připojeno k GPIO2 a když je tlačítko uvolněno, 10K odpor vytáhne GPIO2 vysoko. Po stisknutí tlačítka se GPIO2 vytáhne na 0V.

Toto tlačítko se používá pro dvě funkce:

  • Počáteční nastavení pro připojení jednotky k místní WiFi síti
  • Ruční ovládání výstupu během normálních operací

Indikační LED

LED dioda je připojena k GPIO0 a indikuje následující:

  • Při prvním zapnutí bliká FAST pro indikaci režimu nastavení WiFi
  • Bliká pomalu, pokud není nastaven čas jednotky
  • indikuje stav zapnutí/vypnutí výstupního relé

Krok 2: Napájení

Napájení
Napájení
Napájení
Napájení
Napájení
Napájení

IoT Smart Timer budu používat na různých úrovních napětí, proto jsou k dispozici dvě možnosti napájení:

12 - 24 V DC

Použitý měnič DC-DC je vhodný pro napájení až 28V DC. Výstup převodníku je nastavitelný a je nastaven na 5V. To je třeba provést před připojením modulu ESP8266.

K ochraně proti přepólování na napájecím vstupu byla přidána dioda.

220 V AC Pro tuto možnost se mi na eBay podařilo získat malý spínaný zdroj 220 V/5 V.

Bez ohledu na vstupní napětí potřebuje inteligentní časovač IoT dva napájecí zdroje:

Kolejnice 5V

U obou možností je 5 V DC získáváno ze spínaného napájecího zdroje, a nikoli z lineárního regulátoru. To znamená, že zdrojem energie je minimální teplo. 5V slouží k pohonu výstupního relé

Lišta 3.3V

3,3 V pro ESP8266-01 je získáno z regulátoru ASM1117 3.3. ASM1117 3.3 je lineární regulátor a zvládne až 500mA. Generované teplo však bude určeno vstupním napětím do ASM1117. Aby se snížilo teplo, je ASM1117 napájen z kolejnice 5V.

Filtrování šumu

Aby se snížilo zvlnění napětí na ESP8266-01, je lišta 3,3 V vybavena kondenzátorem 100 - 1 000 uf. Kolejnice 5 V i 3,3 V jsou také chráněny před vysokofrekvenčním rušením 0,1 uF kondenzátory.

Krok 3: Sestavení desky PC

Sestavení desky PC
Sestavení desky PC
Sestavení desky PC
Sestavení desky PC
Sestavení desky PC
Sestavení desky PC

Deska PC byla navržena pomocí freewarové verze Eagle. Jedná se o jednostrannou desku, kterou lze snadno vyrobit doma pomocí metody přenosu toneru.

Jakmile je deska PC vyrobena, sestavte desku PC v následujícím pořadí:

  • Na pájecí stranu desky připájejte regulátor ASM1117 a tři komponenty 0,1uf SMD
  • Přidejte jeden propojovací můstek na komponentní stranu desky
  • Připájejte odpory a diody na místo
  • Přidejte záhlaví pro modul ESP8266-01
  • Přidejte kolíky záhlaví pro LED a tlačítko
  • Přidejte šroubové svorky
  • Pomocí konektorových pinů připojte převodník DC/DC k desce.
  • Zapojte relé na místo
  • Dokončete desku pájením tranzistoru a kondenzátoru 100uf.

Jakmile jsou všechny součásti připájeny k desce, ověřte všechny pájecí body a zajistěte, aby mezi pady nebyly žádné zkraty.

! ! ! DŮLEŽITÁ POZNÁMKA ! ! ! Abyste zajistili, že deska PC zvládne velké proudy na výstupních kontaktech, naneste na dráhy mezi kontakty relé a šroubové svorky slušné množství pájky

Krok 4: Testování desky PC

Testování desky PC
Testování desky PC

! ! ! Před použitím napájení! ! !

Vyjměte modul ESP8266-01 z jednotky. Toto má zabránit přehřátí regulátoru ASM1117 před nastavením napájení 5V.

Po sestavení nelze provést mnoho testů. Nejdůležitějším krokem je zajistit správné úrovně napětí.

  • Na jednotku aplikujte 12 - 24V DC.
  • Změřte výstupní napětí měniče DC/DC
  • Upravte výstup převodníku na 5,0 až 5,5 V.
  • Dále změřte napájení 3,3 V.
  • Pokud jsou zásoby v pořádku, odpojte napájení jednotky

Nyní můžete modul ESP8266-01 vložit do poskytnutých záhlaví.

! ! ! Poznámka !

Jakmile testujete časovač IoT a funguje, použijte pájecí stranu desky PC k pokrytí čirým lakem. To zabrání oxidaci kolejí a poskytne dodatečnou izolaci mezi kontakty relé a zbytkem obvodu

Krok 5: Příloha

Příloha
Příloha
Příloha
Příloha
Příloha
Příloha

Kryt není tak důležitý, pokud do něj deska PC a veškeré zapojení úhledně a bezpečně zapadne.

Aby byla konstrukce snazší, vytvořil jsem kabel, ke kterému je připojeno LED a tlačítko MODE/SETUP. To mi poskytlo větší flexibilitu při montáži LED a tlačítka na skříň. Tento kabel je poté zapojen do konektoru na desce PC.

Fotografie ukazují jednu z jednotek 12V používaných pro LED světla.

Krok 6: Programování ESP8266-01/NodeMCU

Programování ESP8266-01/NodeMCU
Programování ESP8266-01/NodeMCU
Programování ESP8266-01/NodeMCU
Programování ESP8266-01/NodeMCU
Programování ESP8266-01/NodeMCU
Programování ESP8266-01/NodeMCU

Chcete-li naprogramovat ESP8266-01, musíte nejprve nastavit Arduino IDE. Nebudu zacházet do těchto podrobností, protože na toto téma je k dispozici spousta skvělých pokynů. Vybral jsem následující odkazy na Instructables jako referenci, bez konkrétního pořadí autorů. Děkujeme za jejich individuální pokyny.

Podle tohoto ESP8266 a Arduino IDE nastavte Arduino IDE pro modul ESP8266..

Dále budete potřebovat programátor k programování ESP8266. Zde jsou dva odkazy:

Pomocí Arduino Uno

DIY programovací rada

Knihovny

Abyste mohli kód zkompilovat, budete muset nainstalovat další knihovny. Opět se podívejte na tento Instructable:

Nainstalujte a používejte knihovny Arduino

Nemohu si vzpomenout, které knihovny jsem musel nainstalovat, ale vím, že WiFiManager musí být stažen samostatně.. Zahrnul jsem je do souboru Libraries.zip.

Krok 7: První nastavení

První nastavení
První nastavení
První nastavení
První nastavení
První nastavení
První nastavení

Při prvním použití musí být inteligentní časovač IoT připojen k síti WiFi. Tento úkol se provádí pomocí knihovny WiFiManager, takže do kódu není třeba zadávat SSID ani hesla.

Postupujte podle následujících kroků:

  • Zapněte jednotku
  • LED začne rychle blikat
  • Stiskněte tlačítko MODE/SETUP
  • Když LED zhasne, tlačítko uvolněte
  • Počkejte několik sekund a poté otevřete připojení WiFi vašeho smartphonu nebo zařízení
  • Zobrazí se nové WiFi síťové slovo s názvem IoT Timer
  • Vyberte tento přístupový bod
  • Přihlaste se k časovači IoT (není vyžadováno heslo)
  • Počkejte, až bude vaše zařízení připojeno k síti IoT Timer
  • Otevřete libovolný internetový prohlížeč
  • Do adresního řádku zadejte následující IP adresu - 192.168.4.1
  • Otevře se konzola WiFiManager
  • Vyberte Konfigurovat WiFi
  • Zobrazí se seznam dostupných bodů WiFi sítí
  • Vyberte požadovanou síť WiFi a zadejte heslo
  • Dále zadejte IP adresu, kterou chcete použít k připojení k časovači IoT
  • Zadejte IP adresu výchozí brány a poté masku
  • Jakmile jsou všechna nastavení hotová, klikněte na tlačítko Uložit
  • Otevře se nové okno pro potvrzení uložení nových pověření
  • Zavřete prohlížeč

Po uložení se síť IoT Timer vypne a jednotka se pokusí připojit k vaší WiFi síti.

  • Připojte svůj chytrý telefon nebo zařízení ke stejné síti WiFi, jakou používá časovač IoT.
  • Otevřete prohlížeč
  • Do adresního řádku zadejte IP adresu časovače IoT
  • Otevře se konfigurační stránka časovače IoT

Časovač IoT je nyní připraven k použití

Krok 8: Nastavení časovače IoT

Nastavení časovače IoT
Nastavení časovače IoT
Nastavení časovače IoT
Nastavení časovače IoT
Nastavení časovače IoT
Nastavení časovače IoT
Nastavení časovače IoT
Nastavení časovače IoT

Integrovaná webová stránka časovače IoT se skládá z pěti sekcí:

Postavení

To ukazuje název zařízení, stejně jako aktuální čas a stav výstupu časovače

V této části je navíc nastaven provozní režim časovače. Existují tři režimy:

  • Auto - výstup bude řízen různými programy časovače
  • Zapnuto - výstup je vynuceně ZAPNUTÝ a zůstane zapnutý, dokud se režim nezmění
  • Vypnuto - výstup je vynuceně vypnut a zůstane vypnutý, dokud se režim nezmění.

Programy

Tato část obsahuje časy zapnutí a vypnutí časovače. K dispozici je sedm programů a každý program lze nastavit samostatně.

Před změnou dalšího programu uložte všechny změny provedené v aktuálním programu stisknutím tlačítka ULOŽIT.

Funkce tlačítka

Tlačítko MODE/SETUP lze použít k ovládání výstupního relé během normálního provozu. Zde vyberte, co má tlačítko při stisknutí dělat.

Před stisknutím tlačítka Uložit uložte nové nastavení zaškrtnutím políčka „Funkce tlačítka aktualizace“.

Konfigurace

Zde můžete změnit název časovače IoT. To usnadňuje identifikaci mezi více časovači.

Čas na jednotce se získává z internetu prostřednictvím časového serveru NTP. Chcete -li zobrazit správný čas, aktualizujte časové pásmo ve vaší oblasti.

Pokud chcete použít jiný časový server NTP, zadejte novou IP adresu na určené místo.

Před stisknutím tlačítka Uložit uložte nové nastavení zaškrtnutím políčka „Aktualizovat konfiguraci“.

POZNÁMKA

Při změně časového pásma bude nový čas nastaven pouze správně během příštího časového dotazu. Jednotka je nastavena na aktualizaci času každých 5 minut.

Nastavení času

Někdy se stane, že časový server NTP neodpoví na každý dotaz. Pokud nastavení času prostřednictvím serveru NTP trvá příliš dlouho, můžete čas a datum zadat ručně.

Před stisknutím tlačítka Uložit zaškrtněte políčko „Aktualizovat čas“a uložte nový čas a datum.

Synchronizace času

Poslední část stránky ukazuje čas a datum, kdy byl naposledy synchronizován čas prostřednictvím časového serveru NTP.

Doporučuje: