ESP8266

Page

Stránky / Arduino / Arduino - Zoznam základných dosiek /

ESP8266 je lacný čip s podporou Wi-Fi. Výrobcom čipu je spoločnosť Espressif Systems. Čip sa pôvodne objavil na trhu ako AT príkazmi ovládaný Wi-Fi modem. Mal slúžiť ako lacný modul pre iné mikrokontroléry. Neskôr sa prišlo na to, že je to v skutočnosti výkonný mikrokontrolér a je ho možné samostatne programovať. Dá sa programovať v mnohých jazykoch, ale na týchto stránkach sa budeme venovať iba jeho integrácii do prostredia Arduino IDE.

ESP8266 je System on a Chip (SoC). Obsahuje 32-bitový mikrokontrolér Tenslica L106 a Wi-Fi vysielač. Má 11 GPIO pinov a analógových vstupov. V skutočnosti má 17 pinov, ale 6 pinov je využitých na pripojenie flash pamäte. Vďaka GPIO a analógovým pinom ho môžete programovať ako normálne Arduino. Navyše máte k dispozícii Wi-Fi komunikáciu. Vďaka nej sa môžete pripojiť do Internetu, môžete vytvárať vlastné servery, ku ktorým sa pripojíte z počítača alebo mobilu.

Môžete si kúpiť veľké množstvo modulov, alebo hotových vývojových dosiek. Moduly sú označované ako ESP-XX a vyrába ich firma AI Thinker. Vývojové dosky majú obvykle označenie NodeMCU alebo WeMos. Od seba sa odlišujú množstvom vyvedených pinov, tvarom antény a veľkosťou flash pamäte.

Programovanie

Ja sa týchto stránkach venujem iba programovaniu cez Arduino IDE. Pokiaľ ste už v rukách držali Arduino, programovanie ESP8266 pre vás bude veľmi podobné. Ale nie je to jediná možnosť. Existujú aj iné. Pokiaľ chcete experimentovať a nájsť to najvhodnejšie pre seba, tu je zoznam ďalších možností.

Budete potrebovať

Aby ste mohli programovať, potrebujete tieto veci.

  • ESP8266 dosku
  • Počítač, na ktorom môžete spustiť Arduino IDE
  • USB-Serial konverter, ktorý pracuje s napätím 3,3 V. Niektoré dosky ho majú zabudovaný.
  • USB kábel
  • Zdroj napätia 3,3 V. Niektoré dosky ho majú zabudovaný.
  • Wi-Fi sieť

Výber dosky

Pokiaľ s ESP8266 iba začínate, vyberte si kompletnú dosku, na ktorej máte všetko. Všetky sa dajú zasunúť do breadboardu a majú konektor na pripojenie USB kábla. Iba keď nadobudnete určité skúsenosti, môžete prejsť na stavanie vlastnej dosky priamo z modulov.

Čo treba o ESP8266 vedieť?

Dôležité informácie.

  • ESP8266 pracuje s napätím 3,3 V. Nemôžete ho pripojiť priamo na 5 V.
  • ESP8266 nemá piny tolerantné voči 5 V. V niektorých prameňoch síce nájdete informáciu, že tolerantné sú, ale nespoliehajte sa na to.
  • ESP8266 vie z pinu dodať prúd iba 12 mA. To je veľký rozdiel voči Arduinu, kde môžete bezpečne dodať 20-40 mA.
  • ESP8266 má iba jeden analógovo-digitálny prevodník, ktorý má neobvyklý rozsah 0-1 V. Na niektorých doskách (napr. NodeMCU) je tento vstup upravený pomocou rezistorov tak, aby umožnil 0-3,3 V.

Pridanie podpory ESP8266 do Arduino IDE

Zdrojové texty sa nachádzajú na GitHub. Ale na nej stačí prečítať si postup inštalácie. Dosku môžete inštalovať priamo v IDE.

  • Použijete príkaz menu File/Preferences (Súbor/Vlastnosti).
  • Vložíte URL http://arduino.esp8266.com/stable/package_esp8266com_index.json do Additional Board Manager (Manažér prídavných dosiek)
  • V zozname dosiek sa objaví ESP8266.
  • Nainštalujete ju podľa postupu. Inštalácia trvá pár minút.

Súčasťou inštalácie môže byť aj inštalácia driverov pre prevodníky. Pokiaľ ste prevodníky inštalovali kvôli Arduinu, môžete ich už mať nainštalované. Ak nie, podľa názvu čipu na prevodníku si musíte stiahnuť a nainštalovať príslušný driver. Na niektorých operačných systémoch môže byť inśtalácia automatická a operačný systém sám nainštaluje driver po tom, ako pripojíte dosku k USB.

Aké ESP8266 dosky sú podporované

 Možností v zozname je veľa. Ja mám momentálne iba NodeMCU 0.9, čiže v ďalšom texte budem písať o tomto type dosky.

NodeMCU

Táto doska sa vyrába v niekoľkých modifikáciách.

Generácia Verzia Obvyklý názov Linka
1. 0.9 v1 Banggood (doska žltej farby, ale možno kúpiť aj čierne, prevodník CH340)
2. 1.0 v2 Banggood (prevodník CH340), Banggood (prevodník CP2102)
2. 1.0 v3 (LoLin) Banggood (prevodník CH340)

V tabuľke sú všetko veľkosti, ktoré sa dajú zastrčiť do skúšobného pola. Doska v1 je trochu širšia, takže nie je na nej úplne jednoduché zastrčiť prepojovacie vodiče a teba si pomôcť drôtenými prepojkami pod doskou.

Okrem toho sa ešte vyrábajú dosky s veľkosťou Arduina a mini dosky.

  • Klony WeMos Mini NodeMCU - Banggood (prevodník CH340)
  • WeMos D1 R2 - Banggood (prevodník CH340)

Články

 Zoznam článkov, kde sa píše o ESP8266.

ESP8266 HTTP Server

Jednoduché príklady pre HTTP server.

ESP8266 - HTTP server s jednou stránkou

V tomto článku si naprogramujeme HTTP server pomocou mikrokontroléra ESP8266. Bude to jednoduchý HTTP server, ktorý poskytuje jednu stránku. V príklade si ukážeme, ako takýto server naprogramovať. Sústredíme sa na to, aby bol zdrojový kód ľahko čitateľný. Budeme ignorovať väčšinu internetových príkladov, ktoré používajú neprehľadný kód, alebo ignorujú možnosti moderných C++ kompilátorov.

ESP8266 - HTTP server a responzívny dizajn

V predchádzajúcom článku sme si vytvorili HTTP server s jednou stránkou. Stránky sa formátujú pomocou HTML značiek. Pomocou týchto značiek si navrhnete základnú štruktúru stránky, ktorá bude vyzerať amatérsky. Amatérsky pôsobia aj stránky, ktoré sú obvykle navrhované v podobných tutorialoch. Ak chcete, aby HTML stránka, ktorú poskytuje vaše ESP8266, pekne vyzerala, musíte ju graficky upraviť. Ale dnešná doba priniesla problém v množstve zariadení, ktoré môžu HTML stránku zobrazovať. Stránka sa môže zobraziť na počítači, ale aj na mobile, pričom každé zariadenie má iné rozlíšenie obrazovky. Aby ste dokázali zobraziť svoju stránku na každom zariadení v čitateľnej podobe, musíte stránky graficky formátovať tak, aby to bolo možné.

ESP8266 - HTTP server s viac stránkami

V tomto článku nadviažeme na články, v ktorých sme sa naučili vytvoriť jednoduchú stránku a dať jej pekný responzívny dizajn. Teraz sa pokúsime vytvoriť HTTP server, ktorý obsahuje viac stránok. Medzi jednotlivými stránkami sa bude dať prepínať pomocou hypertextov. Stránky budeme stále ukladať v zdrojovom kóde programu a kvôli väčšej prehľadnosti si to všetko rozdelíme na viac súborov.

ESP8266 - HTTP server s viac stránkami v SPIFFS

V predchádzajúcom príklade sme vytvorili HTTP server s tromi stránkami. Ak si pozriete zdrojový kód servera, nájdete tam adresár html, v ktorom sú zdrojové texty HTML stránok. V tomto adresári som navrhoval dizajn každej stránky. Po navrhnutí dizajnu som musel zdrojový kód každej stránky skopírovať do zdrojového kódu v c++. Takáto činnosť je pracná a neefektívna. V tomto článku sa naučíme, ako môžeme vynechať kopírovanie do zdrojového kódu v c++ a nahradiť ho súborovým systémom SPIFFS.

ESP8266 - HTTP server, favicon a ošetrenie chýb

V predchádzajúcom článku sme zistili, že náš HTTP server nevie dobre spracovať hypertexty, ktoré smerujú na neexistujúcu stránku. Zistili sme, že prehliadač si sám ku každej stránke vyžiada aj súbor favicon.ico. Preto sa dnes naučíme, ako sa spracovávajú chyby a ako vytvoríme malú ikonu, ktorú prehliadač zobrazuje na záložke, na ktorej sa zobrazuje obsah stránky.

ESP8266 - HTTP server a senzor teploty DS18B20

V predchádzajúcich článkoch sme sa naučili vytvoriť HTTP server pomocou mikrokontroléra ESP8266. Doteraz sme zobrazovali statické stránky. Postupne sme sa naučili zobraziť stránky, ktoré boli v zdrojovom kóde programu, alebo boli uložené v súborovom systéme SPIFFS. Dnes sa posunieme o kus ďalej. Statickú stránku nahradíme dynamickou stránkou, ktorá bude zobrazovať teplotu. Teplotu budeme merať pomocou integrovaného obvodu DS18B20.

ESP8266 - HTTP server a AngularJS

Veľké množstvo príkladov pre ESP8266 používa prehliadač HTML len na zobrazenie statických stránok, ktoré vygeneroval mikrokontrolér. Takto ale fungoval Internet pred desiatimi rokmi. Dnes má v sebe každý prehliadač vysokovýkonné jadro, ktoré pomocou javascriptu dokáže premeniť statické stránky na dynamické. Musíte si uvedomiť, že v prehliadači máte k dispozícii vysoký výkon, ktorý je neporovnateľný s výkonom samotného ESP8266.

Pripravuje sa

  • ESP8266 - HTTP server a jednostránková aplikácia s DS18B20

19.12.2016


Menu