Skip to main content

Náplň predmetu

V prvej časti tohto kurzu si najprv predstavíme „hotové“ smart technológie, no postupne sa naučíme vytvárať vlastné zariadenia. Prepojíme svet počítačov s elektronikou, sieťami a programovaním. Naším hlavným nástrojom bude šikovné kompaktné zariadenie M5StickC Plus. Jeho srdcom je v súčasnosti už najpopulárnejší mikrokontrolér ESP32 s Wi-Fi, doplnený o vstavané prvky ako tlačidlá, displej, akcelerometer, bzučiak, LED či hodiny reálneho času. Má vlastnú batériu a umožňuje pripojiť aj mnoho externých vstupných i výstupných doplnkov, s ktorými sa v priebehu roka zabavíme. Samozrejme, všetko pripojíme k internetu a získané údaje budeme odosielať na náš server.

Podrobnejšia náplň jednotlivých kapitol 1. časti

1. Smart technológie a Internet vecí – Ponoríme sa do problematiky z hľadiska bežného používateľa. Na reálnych ukážkach si predstavíme open-source systém domácej automatizácie Home Assistant. Na pripravenom serveri (ktorým môže byť aj malý jednodoskový počítač) si predvedieme komerčné zariadenia využívajúce protokol Zigbee – senzory teploty, pohybu a prítomnosti človeka, tlačidlá, ale aj ovládateľné zariadenia (smart zásuvku). Následne sa zoznámime so zariadeniami pripojenými cez Bluetooth Low Energy (BLE) – či už zakúpenými, alebo vyrobenými – používajúcimi otvorený formát BTHome. Budeme z nich zbierať údaje a pozorovať grafy – každý už na svojom vlastnom serveri s Home Assistant. Vyskúšame si aj platformu ESPHome na rýchlu prípravu vlastných zariadení s ESP32 bez zložitého programovania a tiež automatizáciu – reakciu na stlačenie tlačidla či zmenu teploty, ovládanie intenzity a farby svetla. V závere si zhrnieme teoretický prehľad technológií internetu vecí.

2. Programovanie mikrokontroléra s MicroPythonom – Touto kapitolou sa začína skutočný vývoj vlastného zariadenia. Predstavíme si najpopulárnejší mikrokontrolér ESP32 v rôznych podobách, do ktorého nahráme firmvér pre MicroPython, aby sme ho mohli pohodlne a rýchlo programovať. Zoznámime sa so šikovným kompaktným zariadením M5StickC Plus a vytvoríme programy reagujúce na vstupy (tlačidlá, senzor PIR) a ovládajúce výstupy (LED, bzučiak). Naučíme sa využívať prerušenia a časovače, vytvárať vlastné triedy a knižnice.

3. Vnútorné vybavenie M5Stick – Využijeme potenciál nášho šikovného zariadenia naplno. Naučíme sa písať text a kresliť grafiku na displej, pracovať s hodinami reálneho času (RTC) a pripojíme sa na Wi-Fi. Na komunikáciu využijeme protokol MQTT, čo je štandard vo svete IoT. Pomocou zabudovaného akcelerometra zariadime nielen automatické otáčanie displeja, ale budeme sa venovať aj väčšiemu projektu – vytvoríme cyklopočítač. Ten umiestnime na koleso bicykla, aby mohol sledovať jeho otáčanie a údaje posielať na server. V reálnom čase tak budeme môcť sledovať rýchlosť a dodatočne na grafe analyzovať zrýchlenia na každej z 3 osí.

4. Externé senzory M5Stick – Možnosti nášho zariadenia rozšírime rôznymi externými modulmi. Zoznámime sa so sériovými rozhraniami – digitálnymi zbernicami, predovšetkým so zbernicou I²C. Pohráme sa so senzorom svetla, laserovým a ultrazvukovým senzorom zmeriame vzdialenosti a budeme sledovať meteorologické údaje o vzduchu (teplotu, vlhkosť, tlak či znečistenie). Využitím A/D prevodníka vyskúšame aj analógové senzory. Postupne si vyrobíme rôzne merače, ktoré namerané hodnoty zobrazujú na displeji alebo posielajú na server. Ten údaje ukladá do časozbernej databázy, vytvorenej pre spolužiakov z predmetu Databázové systémy, na následné vytváranie grafov vo vizualizačnom systéme Grafana.