Tento návod ukazuje praktické využití AI pro monitoring měřidel (vodoměr, elektroměr, plynoměr apod.) a obecně pro vizuální detekci stavů v prostředí.
Software AI-on-the-edge-device vyvíjí Josef Müller (alias jomjol).
Repozitář: https://github.com/jomjol/AI-on-the-edge-device
Licence: Projekt je dostupný v režimu dvojí licence – pro soukromé/nekomerční použití zdarma; pro komerční nasazení je potřeba dohodnout samostatnou (placenou) licenci s autorem. Před nasazením si vždy ověřte aktuální licenční podmínky v repozitáři.
Na příkladu si ukážeme, jak se AI dokáže přizpůsobit konkrétnímu prostředí a úloze. Kromě čtení číselníků měřidel lze stejný princip použít i pro detekci stavů, např.:
- otevřená/zavřená vrata,
- přítomnost vozidla,
- světlo/tma,
- kouř či nezvyklé vizuální změny.
Hlavním limitem je kvalita obrazu a vaše představivost nad konkrétním use-casem.
Potřebný hardware
Máme dvě cesty:
A) náš předpřipravený initMAX AI kit (doporučeno pro workshop), nebo
B) vlastní hardware dle minimálních požadavků níže.
Pozn.: Celková cena DIY sestavy se obvykle vejde do ~10–20 USD (bez držáku/krabičky).
Varianta A: initMAX – MONITORING AI KIT 1.0
Obsahuje vše potřebné v otestované kombinaci: ESP32-CAM + OV2640, 8 MB PSRAM, ESP32-CAM-MB, microSD (FAT32), USB kabel, držák, napájení. Stačí jen nastavit Wi-Fi a nahrát konfiguraci.
Varianta B: Vlastní HW – minimální požadavky
- ESP32-CAM modul (AI-Thinker nebo kompatibilní) s PSRAM
- Doporučeno: 8 MB PSRAM (větší stabilita a rezerva paměti).
- Minimum: modul s PSRAM; bez PSRAM je provoz značně omezený.
- Kamerový modul OV2640
- Osvědčená a podporovaná varianta. K dispozici i širší čočky (výhodné pro blízké snímání, počítej však s větším zkreslením).
- ESP32-CAM-MB (USB programovací/napájecí deska)
- Zjednodušuje napájení i flashování přes USB-UART.
- USB kabel
- Podle verze ESP32-CAM-MB: Micro-USB (Micro-B) nebo USB-C (doporučujeme).
- microSD karta 2–32 GB (SDHC)
- FAT32 + MBR (ne exFAT).
- Ideálně Class 10
- Pokud karta „nefunguje“, je to typicky kvůli formátu/partition (FAT32/MBR, velikost alokační jednotky např. 32 KB).
- Napájení 5 V / min. 1 A
- Stabilní zdroj je klíčový pro kameru i Wi-Fi.
- 2.4 GHz Wi-Fi připojení.
- Držák/uchycení kamery (stativ, 3D-tištěný držák, pásky apod.)
- Stabilita a opakovatelné zaměření výrazně zlepší přesnost.
- Volitelné, ale užitečné:
- Přídavné osvětlení (konstantní světelné podmínky dramaticky zlepší výsledky)
- Krabička (3D tisk / voděodolné provedení),
- PoE napájení s 5 V step-down
Tip k doostření čočky (důležité)
Výrobce často zajišťuje závit čočky kapkou laku nebo lepidla. Před prvním ostřením je proto nutné jemně závit uvolnit (například nehtem, malými kombinačkami nebo pomocí tištěného „focus ringu“).
Bez správného doostření bude přesnost rozpoznávání výrazně horší.
V našem AI kitu ale tuto úpravu již provádíme za vás – čočka je při dodání otestovaná, povolená a připravená k doostření, takže nemusíte řešit žádné uvolňování.
Příprava SD kartičky
V našem kitu je SD karta již předpřipravená – obsahuje potřebné soubory a také konfigurační soubor wlan.ini s nastavením Wi-Fi. Není tedy nutné nic měnit ani kartu znovu formátovat.
Pokud byste si ale chtěli kartu připravit sami, je nutné ji zformátovat do FAT32 (MBR).
Příklad pro Windows
Použijte příkaz diskpart (pozor – smaže všechna data na vybraném disku!):
diskpart
list disk
select disk X (nahraďte X číslem vaší SD karty)
clean
create partition primary
format fs=fat32 quick
assign
exit
Příklad pro macOS
Použijte diskutil (pozor – smaže všechna data na vybraném disku!):
diskutil list
diskutil eraseDisk FAT32 CAM MBRFormat /dev/diskX
(nahraďte diskX číslem karty, název svazku zde bude CAM)
Příklad pro Linux
Použijte mkfs.vfat:
lsblk
sudo umount /dev/sdX1
sudo mkfs.vfat -F 32 -n CAM /dev/sdX
(nahraďte /dev/sdX vaší SD kartou, např. /dev/sdb)
Nakopceni a odkaz na ZIP co se ma nahrat a rozbalit na karticku
initMAX AI kit 1.0
Pokud mate nas AI kit 1.0 tak mate vse potrebne, vcetne testovaciho drzacku pro zarizeni. V nasem kitu je uz predpripravena karta, neni ji tedy nutne formatovat. Zaroven zde naleznete soubor wlan.ini, ktery obsahuje detaily pro pripojeni na wifi, ip a hostname.
Obrazek – zaverene krabicky
XXXXX
Slozeni zarizeni
Otevrete krabicku a zkokntrolujte, ze je vse jak na obrazku a nic Vam nechybi.
Obrazek – Otevrena krabicka
V horni casti najdete drobne naradi na povoleni a utazeni kamery
Kabel USB-C s moznosti na redukci na jednom konci na USB-A pro vetsi kompatibilitu s Vasim zarizenim
Ve spodni casti najdete po leve strane ESP32 s jiz namontovanou a nalepenou kamerou.
ve stredni casti naleznete SD kartu, ke je jich predinstalovany base image.
napravo pak naleznete vyvojovou desku (ESP32-CAM-MB) pres krete pozdeji pomoci usb kabelu budeme zarizeni napajet.
Konentro take slouzi pro zakladni debug konzoli a pripadne nahrani FW.
Kompletace
Nejprve slozime spolecne casti ESP32 a dev boardu ESP-32CAM-MB. Obe casti do sebe musi pevne zapanout jako je na obrazku. Pocet pinu odpovida protikusu a je potreba je pevne zasunout vsechny
OBRAZEK
Dale si vyndame SD kartu, ktera obsahuje Adapter, ktery je pro ucely ukazky v zamknute pozici pro zapis. V pripade budouci potreby bude potreba ho odemknout. Vyndame zasunutou microSD kartu a opatrne ji vsudeme do ESP32. Karta se vklada logem vzhuru. karta se zasune uplne dozadu dokud necvakne aretacni zamek karty a karta je pevne na miste. V pripade potreby staci karta znovu zamacknout a zamek se uvolni. Prosim nevytahujte karty silou at nedojde k poskozeni sd slotu.
OBRAZEK
Dale si rozbalime kabel, ktery drzi pomoci gumicky. Na kabelu si najdeme konec co nema redukci a opatrne ho zasuneme do dev boardu.
OBRAZEK
Ted si vyndame vypln v barvach initMAXu a na zadni strane uvidime popisek PHONE a CAM. Do slotu Cam opatrne zasuneme ESP32. Kamera miri dolu a je jasne viditelne logo initmax do slotu zasouvame cast obsahujci ESP32 nikoliv DevBoard.
OBRAZEK
Ted is zapojime usb kabel do pocitace, podle nasi koncovi doporucujeme USB-C. V pripane nutnosti se propoji redukce do konektoru a ten nasledne zasumene do pocitace
OBRAZEK C OBRAZEK A
Na Vasem telefonu si nactene nase youtube video obrahujci 1h mereni vodomeru. Bud pomoci QR kodu a nebo na uvedene adrese.
PRIDAT OBRAZEK S QR a nebo odkaz na video+ samotne youtube video
Az budete mit video umistete telefon viditelne pro kameru na esp32, pouzijte pro orientaci uvedeny popisek a bilou linku.
OBRAZEK
Nini je Vas HW settup kompletni a muzete se pustit do dalsiho kroku a to nastavovani
POZOR: Zarizeni ani telefon se nesmi vubec pohnout proto si zarizeni umistete tak aby se snim nedalo hybat a nebo bylo stabylni. muzte pouzit i papirovou krabicku jako podporu.
Zjisteni IP a prvni start
Pro prvni spusteni bude potreba nainstalovat do naseho ESP32 Firmware. To udelame jednoduse pres web installer, ktery najdete na teto url adrese: https://jomjol.github.io/AI-on-the-edge-device pozor je mozne pouze pouzit Chrome, ostatni prohlizece nejsou podporovany.
Zde kliknem na tlacitko connect.
OBRAZEK
Tady je maly trik, je vysoce pravdepodobne, ze se vam nezobrazi primo esp32(USB-Serial) v nabidce na pripojeni, to znamena, ze nemate nainstalovane prislusne ovladace.
OBRAZEK
Kdyz ale okno s pripojenim zavrete, tak se Vam okamzite objevi popup, kde muzete potrebne ovladace stahnout. Nase zarizeni je CH340C, vybereme tedy z listu CH340 pro prislusny operacni system a naintalujeme je.
OBRAZEK
Pokud se Vam uz podarilo ovladace nainstalovat bude potreba restartovat prohlizec a zarizeni a znovu nacist instalacni URL. Opet kliknete na tlacitko CONNECT a ted uz by se melo zarizeni objevit.
OBRAZEK
Z nabidky vyberete prvni volbu install ai on the edge. Dalsi nabidce potvrdite installaci tlacitkem install. Neoposutejte ani nezavirejte okno behem instalace. Za malou chviku se Vam objevi progress bar.
OBRAZEK
Az se zarizeni uspesne nainstaluje tak se samo restartuje. Nyni se presuneme do druhe konzole
OBRAZEK
V teto konzoly vidite velice uzitecne informace jako je boot, v pripade probelmu s karticou problem s nabootovani ale hlavne pro nas dulezite informace o sitovem nastaveni
Obrazek s ukazkou kde se najde sit.
Kazde zarizeni bude mit nastaveni dle wlan.ini. Nastaveni si muzete kdykoliv upravit rucnim zasahem do souboru (primy zapis na karticku). V nasem pripade vidime radek: I (13558) esp_netif_handlers: sta ip: 192.168.220.86, mask: 255.255.255.0, gw: 192.168.220.1
Kde IP je nase ip adresa. Abychom se na tyto ip pripojilu musime se pripojit na stejnou wifi. V nasem pripade je to wifi worksopu s nasledujcimi prihlasovacimi udaji. Jedna se o udaje z WORKSHOPU
UDAJE NA WIFI (TUTO SEKCI ODSTRANIME PO WORKSHOPU!)
Prehlasime se tedy na workshop wifi, okno v porhlizeci s debug logem si nechame otevrene a v nove zalozce si otevreme webove rozrani ai on the edge: http://192.168.220.86/ (IP nadhradte Vasi)
Dejte nám Like, sdílejte nás nebo nás sledujte 😍
Ať vám nic neunikne: