JANEČEK, P. Aplikace pro generování PLC programů pomocí TIA Openness [online]. Brno: Vysoké učení technické v Brně. Fakulta elektrotechniky a komunikačních technologií. 2020.
Pan Janeček měl za úkol vytvořit software, které bude vytvářet PLC a HMI programy automatizovaně dle předpisu. Přitom stavěl na knihovnách TIA Openness, které nejsou ještě úplně odladěny a jejichž dokumentace je místy strohá. Také využil již existujících pokusů popsaných v jiných studentských prací. Při vývoji tohoto software byl ze strany vedoucího práce kladen důraz na funkčnost a strukturu výsledného řešení spíše než na visuální stránku a přesnou terminologii z hlediska průmyslové automatizace. Při své práci se student samostatně zorientoval v problematice struktury PLC programů, struktury PLC projektu platformy TIA a také programování desktopových C# aplikací. Výsledkem je komplexní průvodce tvorbou předpisu PLC projektů obsahující PLC a HMI. Vytvořenou aplikaci hodnotím velmi dobře, a to hlavně díky propracované struktuře knihoven, které implementují samotné generování cílového projektu, podpory generování LAD i SCL bloků nebo např. podpory vnořených struktur v datových blocích. Funkčnost vytvořené aplikace byla odzkoušena na demonstračním modelu, který má simulovat jednu z mnoha procesních jednotek testbedu Barman, pro který byla aplikace původně určena. Simulace namísto reálného nasazení byla zvolena v důsledku celosvětové situace. Díky implementaci použitelných vzorových PLC modulů ve formě knihovny je ale tuto aplikaci možné použít univerzálně. Student pracoval na práci samostatně po celý semestr, přičemž pravidelně využíval konzultace. Celou práci řádně zdokumentoval, takže je možné na jeho práci navázat. Navrhuji hodnocení A (93 b.).
Cíle vytváření průmyslových řídicích systémů jsou už léta konzistentní: zvýšení efektivity programování, standardizace modulů, opakovatelnost a integrace jednotlivých vrstev řízení výroby, resp. IT a OT. Cesta vede jednoznačně od využívání ajťáckých metod a praktik k programování programovatelných automatů včetně vizualizace. Stěžejní roli zde hraje co nejhlubší zavádění objektově orientovaného programování do procesních řídicích systémů, což je de facto podstatou zadání diplomové práce pana Janečka. Práce je strukturována do 5 kapitol, které věrně sledují body zadání, takže pro oponenta je snadné ověřit, zda bylo celé zadání splněno. Objektově orientované programování je představeno a popsáno v samostatné první kapitole předsazené bodům zadání. Je to provedeno srozumitelně a dostatečně jasně. V téže kapitole následuje popis programovací rámec TIA Portal. Tady se neubráním výtce. Samotný TIA Portal je už poměrně zavedený rámec firmy Siemens a stačilo by popsat pokrok v jeho vývoji o nové funkce. Naprosto zbytečné jsou popisy programovacích jazyků systému STEP7 a struktury programových bloků, které jsou už notoricky známy. V tomto místě uvedu i výtku k umístění obrázků (Obr.1.5 a 1.6.) mimo podkapitoly, ke kterým se obrázky vztahují. Na straně 21 je v popisu Funkce FC uvedeno, že „po vykonání funkce jsou použitá data ztracena“. Není to pravda, správná formulace by měla být, že „mohou být ztracena“. Stěžejní prostředek, rozhraní TIA Portal Openness, je popsán v kapitole 2. Tento prostředek a jeho použití je popsán srozumitelně, jasně, s průvodními vysvětlujícími obrázky. TentopPopis čtenáře dobře připraví na pochopení následující kapitoly 3, kterou je „návrh a realizace aplikace“. Tato kapitola si zaslouží největší pozornost. Diplomant zavádí objektově orientované programování do procesní, nebo jak se často uvádí „shop floor“ vrstvy řídicího systému závodu. Mohli jsme se s tím setkat u výrobců jako je Wonderware, potažmo Schneider Electric nebo u společnosti Beckhoff. Ani u jedné z těchto společností nezaplnilo objektově orientované programování celou zmíněnou vrstvu tak, aby se mohlo říci, že výrobní data a informace jsou zpracovávána jednotným způsobem od procesní vrstvy (PLC+HMI) až po podnikovou vrstvu ERP. Zde vidím největší přínos této diplomové práce. Dobře našlápnutou cestu drží pan Janeček i ve zbývajících kapitolách 4 a 5, kde vytváří referenční sadu programových modulů a celou práci dobře dokumentuje. Přes převládající chválu mám i výtky. Výtka 1.: Výsledkem generování projektu jsou objekty nebo moduly, které jsou ihned použitelné pro manuální provoz zařízení. Co je třeba dále udělat pro zavedení kódu logiky pro automatický režim je na několika místech práce naznačeno, ale čtenáři to jasný obraz nedá. Chtělo by to menší kapitolku, která by to osvětlila. Výtka 2.: Je spíše formální. Na obrázcích D.1. a D.2. jsou uvedeny diagramy, které jasně a srozumitelně vysvětlují automatické generování projektu. V kapitole 5.3 je tohle popsáno stejně podrobně, což pokládám za duplicitní. Závěrem mohu konstatovat, že téma předložené diplomové práce je náročné, svým způsobem průkopnické, a že diplomant prokázal skutečně agregované znalosti nejen v programování PLC, ale v jazycích C#, ULM a XML a předvedl metodu vytváření programů, která zvláště u velkých oborově zaměřených projektů přinese značné úspory. Doporučuji k obhajobě s hodnocením A.
eVSKP id 126999