Fyzikální kabinet FyzKAB

Články Moduly ESP32 a ESP32-CAM ESP32 + MicroPython Instalujeme MicroPython na ESP32

Instalujeme MicroPython na modul ESP32 (pomocí Thonny IDE)

Co je MicroPython?

MicroPython je interpretr programovacího jazyka Python, který je však optimalizovaný pro mikrokontroléry, jako jsou například desky ESP32. Naší snahou tedy bude vytváření pythonovských programů (skriptů), které bude možné přímo spouštět na desce ESP32.

Ovšem dříve než tak můžeme učinit, musíte si desku ESP32 na to připravit, tedy je třeba na desku ESP32 nahrát prostředí pro vykonávání kódu MicroPythonu. V nejjednodušším případě to můžeme udělat přímo pomocí vývojového prostředí IDE, ve kterém budeme vytvářet skripty Pythonu a odesílat je do modulu ESP32. My budeme dále používat prostředí Thonny IDE.

Instalace MicroPython na desku ESP32 pomocí Thonny IDE

Pro začátečníky, za které se nyní považujeme, je nejjednodušší způsob instalace MicroPythonu na ESP32 přes rozhraní Thonny IDE. Pro počáteční instalaci jak prostředí Thonny IDE, tak firmwaru MicroPythonu potřebujeme stáhnout následující instalační balíčky:

  1. Instalační balíček prostředí Thonny IDE – https://thonny.org/
  2. Balíček MicroPythonu pro modul ESP32 – https://micropython.org/download/esp32/

Instalace Thonny IDE

Jak jsme zmínili v úvodu, programovací prostředí Thonny IDE použijete jak pro instalaci MicroPythonu do modulu ESP32, tak k psaní všech našich následujících Python skriptů. Pokud jsme stáhli instalační balíček prostředí Thonny IDE pro svůj operační systém, nejlépe z oficiálního webu thonny.org, můžeme začít.

POZNÁMKA:
Na webových stránkách projektu Thonny IDE je i možnost stáhnutí portablové verze, která se nemusí instalovat. Po stažení ZIP souboru jej stačí jen rozbalit na zvolené místo. Lze dokonce zvolit verzi jazyka Python, se kterou se má prostředí Thonny IDE stáhnout. Je třeba ještě zmínit, že jak prostředí Thonny IDE, tak jazyk Python obsahuje poměrně dost souborů a tak rozbalování staženého ZIP souboru poměrně dlouho trvá.

Při spuštění instalačního programu si můžete vybrat jazyk. V nabídce je k dispozici i čeština, i když zatím jen ve verzi beta. Postupem času se snad bude jazykový soubor dále rozvíjet, neboť některé části ještě nejsou zcela jazykově lokalizovány. Pro naše úvodní seznámení s prostředím Thonny IDE a MicroPythonem na modulu ESP32 to však příliš vadit nebude.

Dále je instalace Thonny IDE poměrně přímočará. Po jejím dokončení získáme klasický editor kódu s interpretrem Pythonu.

okno Thonny IDE

UPOZORNĚNÍ:
Před instalací a později i při práci s programem nezapomeňte zavřít sériový monitor v jiných aplikacích, například v prostředí Arduino IDE. Pokud k sériovému portu je připojený jiný software, objeví se chyba:
Unable to connect to COM3: could not open port 'COM3': PermissionError(13, 'Access is denied.', None, 3)
Je to způsobeno tím, že ve skutečnosti nemohou dva programy současně přistupovat ke stejnému sériovému portu COM.

Instalace MicroPython pro ESP32 pomocí Thonny IDE

Firmware MicroPythonu pro modul ESP32 je k dispozici na oficiálních stránkách (viz dříve). Měli bychom tam vybrat nejnovější stabilní verzi a stáhnout si daný soubor s příponou .bin.

firmware download

Pro naše začátečnické pokusy se určitě nedoporučuje stahovat nejnovější „Nightly builds“, které nemusí být stabilní a jsou určeny pro zkušené vývojáře.

Stažený BIN soubor uložíme na PC, například pro něj můžeme vytvořit vlastní složku v rámci instalace prostředí Thonny IDE, abychom věděli, kde je BIN soubor uložen.

Otevřeme prostředí Thonny IDE. Chceme-li nainstalovat MicroPython na ESP32, přejdeme v hlavním menu Běh → Configure interpreter…

configure interpreter

V následující nabídce vybereme z rozbalovací nabídky interpret MicroPython (ESP32) a dole klikněte na modrý odkaz Install or update MicroPython

configure interpreter ESP32

Pro nainstalování MicroPython firmwaru do modulu ESP vybereme v rozbalovací nabídce port, což je číslo USB portu, ke kterému je náš modulů ESP32 připojen. Druhou volbou je cesta k BIN souboru s firmwarem, který jsme předtím stáhli ze stránek MicroPython.org.

install firmware ESP32

Načítáme-li firmware MicroPythonu do modulu, ve kterém předtím byla předešlá verze nebo sloužil pro jiné produkty, doporučuje se paměť modulu před nahráním vymazat (začkrtnutí políčka: ☑ Erase flash before installing). Firmware MicroPythonu do modulu zapíšeme kliknutím na tlačítko Instalace.

Pokud vše proběhlo v pořádku, MicroPython je správně nainstalován na ESP32. Ještě bychom měli zkontrolovat, aby Thonny používal interpret MicroPython, který jsme právě instalovali na ESP32. Stačí se vrátit do Běh → Configure interpreter… a v případě potřeby jej změnit.

Interpret MicroPython pro vaši desku ESP32 by se měl objevit Shell okně prostředí Thonny:

ESP32 MicroPython - Shell
POZNÁMKA
Pokud se nic nestane, můžete zkusit kliknout na tlačítko STOP na hlavním panelu, čímž se překladač restartuje.

Funkčnost interpretru jazyka Python na desce ESP32 můžeme vyzkoušet zadáním primitivního příkazu na příkazový řádek: >>> 1 + 1

MicroPython ESP32 - test

Pokud se dočkáme očekávané odpovědi, máme svůj první modul ESP32, do kterého můžeme zapisovat skripty v jazyce Python.

První skript MicroPythonu na ESP32

Pochopitelně vše výše uvedené jsme nedělali proto, abychom zjistili, kolik je 1+1. Nyní, když jsou všechny nástroje nainstalovány a připraveny, můžeme se konečně pustit do programování a napsat svůj první skript v Pythonu (v prostředí Thonny IDE).

Téměř ve všech příručkách a učebnicích programování bývá prvním programem legendární kód, který vypíše hlášku „Hello World!“. A naopak v učebních textech představující nějaký programovatelný modul je prvním skriptem klikání vestavěné LED. Nebudeme tedy vybočovat z řady a vydáme se touto cestou. Abychom ukázali, jak je MicroPython na modulu ESP32 úžasný, náš první skript vykoná obojí!

Náš skript vypíše hlášku „Hello World!“ a pak začne blikat vestavěnou LED (přítomná na pinu GPIO2). Skript napíšeme do hlavního okna prostředí Thonny IDE.

import time
from machine import Pin

print("Hello World")
p2 = Pin(2, Pin.OUT)

while True:
  p2.on()
  time.sleep_ms(250)
  p2.off()
  time.sleep_ms(250)


Chcete-li spustit skript na desce ESP32, stiskněte zelené tlačítko Spustit aktuální skript (nebo klávesa F5). Na následujícím obrázku vidíme, jak se v okně Shell zobrazila požadovaná hláška „Hello World!“ a při pohledu na modul ESP32 vidíme blikající vestavěnou LED.

ESP32 MicroPython - Hello_World
ESP32 MicroPython - LED blik

Fajn, na začátek máme hotovo! Ještě si můžeme vyzkoušet prostředí Thonny IDE zavřít. Rázem jsme konfrontováni s dotazem o uložení našeho skriptu. Pokud potvrdíme, že chceme svůj první program uložit, následuje volba, zda kód uložit do počítače nebo do MicroPython zařízení. Prozatím využijeme možnost uložení do počítače. Jak uvidíme později, k volbě uložení kódu do modulu ESP32, je třeba si ještě něco povědět.

Thonny - ulozit skript.png

Zároveň si všimněme, že jakmile zavřete prostředí Thonny IDE, blikání modulu ESP32 ustane. To je právě důsledek toho, že kód skriptu zatím sice běží na modulu ESP32, ale je tak trochu „zapůjčen“ od prostředí Thonny IDE, tedy není na modulu ESP32 uložen.

Více si k tomu pochopitelně řekneme v následujícím článku, kde náš první skript ještě trochu rozebereme a hlavně si ukážeme některé základní vlastnosti, které budeme při práci s Python soubory na modulu ESP32 potřebovat a používat.

free counters
od 26.9.2012
UPOZORNĚNÍ:
Nesouhlasíme s vyřazením Newtonových zákonů, Ohmova zákona a zákona zachování energie z učiva fyziky základních škol v České republice!