MUSIL, V. Využití HIL simulace v prostředí MATLAB při návrhu řízení dynamických systémů [online]. Brno: Vysoké učení technické v Brně. Fakulta elektrotechniky a komunikačních technologií. 2025.
Diplomová práce pana Bc. Viktora Musila se věnovala návrhu a implementaci HIL řídicí úlohy v prostředí MATLAB/Simulink s následnou implementací řízení na vybrané řídicí platformy za pomoci automaticky generovaného kódu. Diplomant pro tuto práci využil existující fyzickou platformu – simulátor dynamických systémů, kde bylo nutné oživit digitální část a vytvořit vhodný firmware pro komunikaci s prostředím MATLAB/Simulink. Tato část práce se bohužel vzhledem k vzniklým potížím s HW ukázala jako relativně náročná a student jejím řešením ztratil poměrně dost času. Pro účely vzájemné komunikace pak vytvořil i příslušnou komunikační funkci v MATLABu a otestoval funkčnost. Následně navrhl, implementoval a otestoval jednoduchou HIL řídicí úlohu, pro níž navrhl regulátor jednak analytickou metodou a pro srovnání i využitím nástroje PID tuner. Výsledkem testování měla být analýza periody vzorkování pro danou úlohu. Tato část je však bohužel provedena jen velmi povrchně se závěrem, že implementovaný firmware není příliš efektivní. V dalším kroku byl prostudován a využit Simulink PLC Coder pro vygenerování kódu pro dvě PLC platformy, na nichž byl řídicí systém otestován. Společně s tím byl tento generovaný kód pro regulátor přepsán i do jazyka C a využit přímo v mikrokontroléru na cílové platformě pro možnost dalšího srovnání procesu automatického generování kódu z výchozí HIL simulace. Zde jsem předpokládal využití nástroje Simulink Coder s přímým generováním C kódu, což však student zhodnotil jako neefektivní, ale bohužel tuto diskuzi nezapracoval do textové části práce. V závěru práce jsou pak stručně zhodnoceny výsledky řízení implementované na jednotlivých řídicích systémech. Ačkoli mohu z pozice vedoucího zhodnotit, že všechny body zadání byly splněny, k některým částem mám určité výhrady – zejména viz výše uvedené. To je do jisté míry způsobeno tím, že student pracoval prakticky samostatně a konzultací využíval v omezené míře. Formální stránka práce je jinak na poměrně dobré úrovni, rozsah práce je dostatečný a využití literárních zdrojů, dle mého názoru, odpovídá typu a zaměření práce. I přes výše uvedené připomínky tak práci doporučuji k obhajobě a navrhuji hodnocení 72 b / C.
Student v práci opravil přípravek simulující různé typy dynamických systémů. Dále si musel nastudovat problematiky HIL simulace pomocí Matlab/Simulink a automatické generování kódu, přičemž čerpal z dostupných Mathworks návodů a své bakalářské práce. Všechny části pečlivě zdokumentoval. Chybí mi avšak výpočet datového přenosu mezi simulátorem a PC. Dále bych uvítal vyhodnocení synchrocity měření/komunikace, přičemž na straně Matlab bylo alespoň dodržení maximálního jitteru periodicity zjišťováno pomocí missed clicks. Jak autor uvádí, kód pro mikrokontrolér mohl být napsán za využití časovačů a přerušení, přičemž vytvořený kód působí prvoplánově. V kapitole generování kódu z Matlab je detailně popsán postup a výsledek generovaného kódu pro PLC podle návodu. Avšak v kapitole implementace, kdy se generovaný kód mapuje na fyzické vstupy a výstupy, chybí zapojení přípravku k PLC a definice vstupů/výstupů. Autor místo generování kódu pro jazyk C přepisoval vygenerovaný kód z PLC, i když Matlab disponuje nástrojem Embedded Coder. Mezi další nejasnosti patří použití 8byte real datového typu namísto standardního 4byte real, který je často používaný v platformách s omezenou pamětí a výpočetním výkonem, jako je PLC a mikroprocesor. Také je zarážející proč se při implementaci v PLC používala perioda tasku 10ms, přičemž regulátor byl navržen a simulován se 100ms periodou vzorkování. Po formální stránce jsem v práci nenašel závažnější nedostatky.
eVSKP id 167935