5. Web server a IDE
Pro zrychlení a ulehčení práce vyvíjíme soubor modulů a knihoven octopus(), který si společně s Micropythonem nahrajete a nakonfigurujete podle následujícího odkazu:
https://www.octopuslab.cz/micropython-octopus/ (popsáno v minulých dílech)
Spuštění webového serveru jsme zjednodušili na maximálně možnou míru, po korektní instalaci Micropythonu i octopus() stačí zadat to, co je na následujícím obrázku, označeno oranžovou barvou:
V terminálu vám pak systém oznámí IP adresu, na které web-server v ESP běží. Tuto adresu zadáte do svého prohlížeče. Zde je to označeno fialovým blokem na předposledním řádku: 192.168.0.220.
DHCP (Dynamic Host Configuration Protocol) vám může dát pokaždé jinou adresu, ale často se pro jedno zařízení po nějakou dobu udržuje stejná.
Pozor: Počítač s prohlížečem i ESP musí být připojeny ke stejné lokální síti – „sub_net“ (shodné SSID)
Poznámka:
pokud vám již běží nějaké procesy, které vyžadují paměť, webový server se nemusí z důvodu nedostatku paměti spustit. Zde (na obrázku nahoře) nám systém hlásí: RAM free —> 74160 (Byte) – mělo by to být zpravidla více, než 35kB – lépe 60kB+
Pokud server nastartuje korektně a vy pak do prohlížeče zadáte IP adresu (v našem případě 192.168.0.220 nebo v další ukázce 192.168.0.199 – u vás to samozřejmě bude adresa jiná), v prohlížeči by se měla zobrazit následující stránka:
(nebo velmi podobná, podle konfigurace a vývoje systému)
Web server s možností editace programů popisujeme podrobněji zde:
https://www.octopuslab.cz/micropython-web-ide/
IDE – Integrated Development Environment
Vývojové prostředí (IDE) je software usnadňující práci programátorů, většinou zaměřené na jeden konkrétní programovací jazyk. Obsahuje editor zdrojového kódu, kompilátor (což se netýká Pythonu), případně interpret – v našem případě je zde WEB-REPL příkazový řádek (V černém spodním bloku).
- Automatické blikání?
Pokud si nahrajete ukázkový program „blink.py“ z podadresáře „examples“, uvidíte zdrojový kód, podobný jako na předchozím obrázku. Zkuste si ho uložit jako „main.py“ – což znamená, že po restartu se vždy spustí tento program. ESP32 by měla blikat i po odpojení a připojení mimo počítač – například přes powerbanku. Zkuste si. - Automatické spuštění webserveru po startu?
Podobně jako v příkladu 1. si tentokrát opište (nebo zkopírujte) pár slov kódu, který si opět uložte jako „main.py“:
from util.octopus import w, web_server from util.led import Led led = Led(2) # inicializace vestavěné LED diody w() # připojení k wifi - nutno mít nastaveno setup() web_server() # samotné spuštění webového serveru
Předvánoční soutěž:
napište mi prosím na mail: honza.copak@gmail.com následující:
A – zabýváte se více elektronikou – nebo programováním?
B – jaký je váš věk, kde a jak dlouho se něčím podobným zabýváte
C – pošlete fotku vašeho ESP s jednoduchým zapojením
(složitějším než je připojený mikroUSB kabel)
a printScreen s vaším jednoduchým programem v Micropythonu s octopus()
Prvním deseti, kteří nám napíší do konce roku pošleme:
ROBOTboard + konektory + WS RGB led
pro vaše další pokusy