Ovládání přes WIFI

 

 

Ovládat fyzikální veličiny z kteréhokoli zařízení a odkudkoli jednoduše přes webové stránky je velmi lákavé a návikové. Toto lze díky využití bezdrátového wifi modulu například ESP8266. To má vekou výhodu v tom, že lze takto ovládat veličiny, aniž by bylo nutné mít poblíž PC, z kterého by se přes USB veličiny ovládaly. Ovládací zařízení disponuje vlastním napájením (adaptér nebo baterie) a může být umístěno kdekoli v dosahu domácí WIFI sítě.

 

Postavené zařízení

Sestavené zařízení ovládá 2 relé, na jejichž kontakty lze připojit jakýkoli spotřebič do 250V/10A. To dovoluje například zapínat světlo, ventilátor nebo čerpadlo na zalévání. Ovládací zařízení může být napájeno přes micro USB kabel z jakékoliv USB nabíječky. Jádro ovládacího zařízení tvoří deska Arduino nano s připojeným wifi modulem esp8266. Relé lze ovládat přes webové rozhraní na PC nebo na chytrém telefonu. Při spínání relé přes web se zároveň čtou hodnoty vstupů a zobrazují na webové stránce jako zpětná kontrola správné funkce zařízení. Ovládání bez potíží funguje přes domácí wifi síť a pro použití odkudkoli je potřeba nastavit na routeru směrování portu a mít u poskytovatele zajištěnou statickou IP. Zařízení není ještě plně optimalizované a ani není zabudované do krabičky. Vše funguje výtečně, jen je potřeba vylepšit webové rozhraní, doplnit časové grafy a graficky ztvárnit zpětnou vazbu.

 

Zkušební webová stránka

Část webové stránky se načítá z ovládacího a monitorovacího zařízení pomocí funkce iframe. Ostatní je načteno z disku počítače a to základní formátování, tlačítka, část těla, hlavička a patička. Po kliknutí na jedno z tlačítek je invertován požadováný výstupní pin. Na ukázce dole je vidět, že všechny piny mají aktuální hodnotu 0. Zároveň se čtou data z čidel: jednoho kombinovaného DHT22 teplota/vlhkost a jednoho samostatného teplota DS18B20. Důležité je vzhledem k omezené paměti SRAM v mikrokontroléru ATmega ukládat veškeré html řetězce do paměti flash.

 

NodeMCU – esp8266 12E

Další postup bude využití modulu nodeMCU. Tento modul pracuje na frekvenci 80 MHz, paměť flash má velkou 4096KB a je vybaven paměťi sdram o velikosti 96KB. NodeMCU je tedy z hlediska svých parametrů výkonnější než základní verze Arduino, jelikož je založen na 32 bit mikrokontroléru ARM. Další výhoda tohoto modulu může být spatřena a jeho kompaktnosti. Není zde potřeba připojovat externí wifi modul esp8266 k Arduinu pracujícím s 5V napájením a k tomu vyřešit příslušné napájení 3,3 voltů pro esp8266. Modul nodemcu lze jednoduše programovat přes rozhraní ArduinoIDE s využitím příslušných knihoven. Díky poměrně velké paměti flash lze celé statické stránky i s javascriptem nahrát přímo do modulu. Vyvíjené měřící a ovládací systémy pracující s bezdrátovým rozhraním WiFi budou do budoucna všechny založeny na modulu nodeMCU.

 

Měřicí a ovládací přístroj.

Sestavené zařízení dokáže měřit teplotu a vlhkost ve vitríně potom další dvě teploty například teplotu v místnosti a teplotu venku, dále měří celkový odběr proudu osvětlení vitríny a úroveň osvětlení přirozeným světlem z venku. Zařízení disponuje dvěma relé, které lze využít pro spínání osvětlení, ventilátorů nebo čerpadel, popřípadě dalších zařízení. Měřící zařízení se opět nastavuje přes konfigurační aplikaci, Kde lze nastavit i podmínky pro spínání relé. Například relé bude sepnuto při překročení spodní úrovně osvětlení z venku (spínání osvětlení) nebo bude sepnuto relé při překročení horní mezní hodnoty teploty ve vitríně (spínání ventilátoru). Aktuální hodnoty jsou zobrazeny na webových stránkách načtených přímo z měřicího zařízení a relé online ovládat také z těchto stránek. Správnou funkci zařízení indikuje malý OLED displej, který také zobrazuje aktuální IP adresu.