KNOB, M. Diagnostický osciloskop s umělou inteligencí [online]. Brno: Vysoké učení technické v Brně. Fakulta elektrotechniky a komunikačních technologií. 2025.

Posudky

Posudek vedoucího

Kufa, Jan

Diplomová práce Martina Knoba se zabývá návrhem a realizací osciloskopu, který by na základě strojového učení dokázal rozpoznat jednotlivé typy sběrnic a komunikačních protokolů. Student nejdříve popisuje principy analogového a digitálního osciloskopu a strojového učení. Následně popisuje možnosti tvorby vlastního osciloskopu. Poté popisuje samotný návrh a realizaci své práce. Na konci své práce student ukazuje výsledky zachycení a rozpoznání různých typů signálů a sběrnic. Student napřed navrhl teoretické schéma celého systému. U jednotlivých součástí systému student dostatečně obhajuje výběr použitého řešení. Jedná se o zařízení složené z front-endu FSCOPE-500K a mikrokontroleru Raspberry Pi Pico W. S možnosti upgradu na Pico 2. V realizační části student splnil požadavky dané zadáním práce. Zařízení je schopné dvoukanálového měření signálu, uložení dat a odeslání z RPI pico W do PC nebo telefonu pomocí USB OTG nebo WIFI. Následně je pomocí ML v programu Matlab signál zpracován a vyhodnocen. Algoritmus dokáže rozpoznat různé periodické signály, modulace, protokoly dálkových ovladačů, I2C, 1-Wire, UART. Analýza měřeného signálu neprobíhá v reálném čase, ale až z exportovaných dat. Bylo ověřeno, že algoritmus nemá problém se správným rozpoznáním signálů, pokud bude naučen na jednom typu generátoru, a byl by mu předložen signál z jiného typu generátoru. Algoritmus dokáže rozlišit jestli data pocházela z komerčního nebo doma sestrojeného generátoru. Bylo ověřeno, že osciloskop dokáže rozpoznat signály, které mají amplitudu velkou pár desítek milivoltů. Osciloskop dokáže fungovat dostatečně dlouho z interního akumulátoru. Ovládací software je tvořen v prostředí MATLAB, ale následně je vytvořena .exe aplikace, která nepotřebuje pro svůj běh celé prostředí MATLAB, takže je aplikace lehce využitelná. Odevzdaná semestrální práce je přehledná a logicky členěna. Pouze minoritně student používá neodbornou technickou terminologii. Bylo by lepší mít všechny obrázky ve vektorové formě. Student na práci pracoval průběžně během roku, pracoval samostatně a zadané požadavky dokázal sám nebo po konzultaci zapracovat do své práce. Je také nutno pozitivně odhodnotit, že se student zúčastnil se svojí prací studentské soutěže EEICT. Práci doporučuji k obhajobě a hodnotím stupněm B 83 bodů.

Navrhovaná známka
B
Body
83

Posudek oponenta

Fliegel, Karel

Zadání: Zadání diplomové práce je poměrně náročné, zahrnuje nejen návrh a realizaci funkčního dvoukanálového osciloskopu s definovanými technickými parametry, ale také integraci metod strojového učení za účelem automatického rozpoznávání typů sběrnic a signálů. Navržený projekt kombinuje analogové i digitální návrhové dovednosti s aplikačním využitím AI na embedded platformě, což klade poměrně vysoké nároky na mezioborové znalosti studenta. Splnění zadání: Předložená diplomová práce ve většině zásadních aspektů zadání splňuje. Student navrhl a realizoval vlastní osciloskop (založený na komerčně dostupném řešení FSCOPE-500K a mikrokontroléru Raspberry Pi Pico W) s předepsanými či překročenými parametry, včetně návrhu napájení (využití modulu DFR1026 a Li-Po akumulátoru) a rozhraní (WiFi a USB). Realizováno bylo také rozpoznávání signálů sběrnic, ovšem nikoli přímo na embedded zařízení, jak bylo implicitně očekáváno dle zadání. Klasifikace probíhá offline v prostředí MATLABu (Machine Learning Toolbox). Prostředí TinyML, byť zmíněno a teoreticky popsáno, nebylo prakticky na mikrokontroléru RPi implementováno. Tento rozdíl je podstatný, ale zohlednění složitosti úlohy, dostupných technických řešení a zvoleného přístupu ospravedlňuje mírný odklon od původního záměru. Zvolený postup řešení: Postup řešení je logicky strukturován, student nejprve analyzuje dostupné technologie, popisuje návrh hardwaru a následně se věnuje softwarové části. Je patrná snaha o systematický přístup, i když některé volby (např. použití MATLABu místo implementace na samotný mikrokontrolér) by vyžadovaly podrobnější zdůvodnění. Užitečný by byl detailnější přehled dostupných embedded ML nástrojů a jejich testování. Významná část práce je věnována návrhu napájení s využitím modulu DFR1026 a Li-Po akumulátoru, což výrazně rozšiřuje možnosti aplikace navrženého zařízení. Odborná úroveň: Práce pokrývá široké spektrum odborných témat, konkrétně návrh a popis funkce osciloskopu, přehled mikrokontrolérů, základní i pokročilejší principy strojového učení. Je patrné, že student se dobře orientuje v obou oblastech (elektronika, zpracování signálů a částečně metody strojového učení) a dokáže je aplikovat. Nicméně některé části jsou zpracovány pouze v obecné rovině nebo ne zcela přesně, například chybějící detailní analýza možností reálného nasazení TinyML nebo chybějící podrobné blokové schéma klasifikace signálů. Zásadní však je, že výstupem je funkční a prakticky použitelné zařízení, které splňuje požadavky zadání. Formální a jazyková úroveň, rozsah práce: Text práce je sepsán čtivě a s odpovídající odbornou úrovní. Obsahuje však řadu jazykových i stylistických nedostatků, často se vyskytují nevhodně formulované výrazy a překlepy, chybí důsledná jazyková a gramatická korektura. Lze zmínit následující vybrané příklady z textu práce, „důléžité části“, „druhá generece“, „Mikrokontroler Raspbrry“, „Z tohoto důvodu jsou digitální osciloskopy mnohem používanější oproti osciloskopům digitálním.“, „fosvorové osciloskopy“, „Co se týče I/O periferi“, „baterii nabíjet metodo CCCV“, „Tohle vše záleží“, „Amlituda [V]“, „Exportovaná dat jsou“, „jednou z nejvíce klíčových částí“, „Měřený signál je měřen měřícími sondami.“, „Realizace měření sběrnice SPI nakonec nebylo realizováno.“ Typograficky je práce na solidní úrovni, avšak některé převzaté obrázky jsou nízké kvality a formátování grafiky by si zasloužilo vylepšení (např. použití vektorové grafiky u schémat). Na závěr práce v seznamu příloh chybí jejich detailnější popis a vlastní elektronická příloha také neobsahuje podrobný popis obsahu. Vzhledem k potenciálu navrženého zařízení se uplatnit jako cenově dostupné řešení v komunitě, chybí v práci detailnější analýza nákladů na výrobu zařízení. Výběr zdrojů, korektnost citací: Student se opírá o poměrně široké spektrum zdrojů, včetně odborné literatury ale zejména online dokumentace. U některých zdrojů by bylo vhodnější je citovat formou poznámek pod čarou, například u implementací a technických specifikací zařízení. Lze však usoudit, že se student snažil důsledně odlišit převzaté elementy od vlastních. Další komentáře a hodnocení: Velmi pozitivně lze hodnotit praktickou realizaci zařízení, včetně návrhu krytu a jeho výroby pomocí 3D tisku a návrh napájení s delší výdrží díky vhodné volbě akumulátoru. Z hlediska funkčnosti osciloskop splňuje očekávání a sběr dat pro trénink ML modelu je vhodně dokumentován. Velmi dobrou volbou je umístění trénovacích a testovacích dat na GitHub. Zde by však bylo vhodné umístit i všechny implementace a umožnit tak snadnou realizaci popisovaného zařízení všem zájemcům. Model dosáhl na zvolené třídě signálů/sběrnic velmi dobré přesnosti při klasifikaci, byť offline v MATLABu, výsledky jsou nicméně validní. Vytvořené nástroje a grafické rozhraní pro MATLAB zlepšují uživatelskou přívětivost řešení. Celkové hodnocení: Pan Martin Knob v rámci své diplomové práce navrhnul funkční řešení zajímavé a důležité praktické úlohy. Určité nedostatky identifikované v tomto posudku nesnižují dobrý dojem z odevzdané práce. V případě kvalitní obhajoby, pozitivního posudku vedoucího a erudovaného zodpovězení dotazů, není oponent proti udělení lepší známky, než je uvedena v návrhu níže.

Navrhovaná známka
B
Body
85

Otázky

eVSKP id 167797