KAUFMAN, O. Modbus/TCP server [online]. Brno: Vysoké učení technické v Brně. Fakulta elektrotechniky a komunikačních technologií. 2023.
Cílem práce bylo vytvoření Modbus/TCP serveru Práce navazovala na semestrální práci. Student se seznámil s předchozí verzí Modbus/TCP serveru a správně se rozhodl, že navrhne a realizuje vlastní hardwarové řešení s příslušných softwarovým vybavením. Rozsah bakalářské práce (36 stran od úvodu po závěr) odpovídá požadavkům. Práce je psána v logickém sledu a student využil při zpracování práce 15 literárních zdrojů, na které se průběžně odvolává. Při kontrole v systému Theses nebyla zjištěna zásadní shoda s jinými porovnávanými dokumenty. Student pracoval na své práci samostatně a problémy vždy řešil samostatně, které ale mohl lépe konzultovat. V průběhu semestru překládal dílčí výsledky. Domnívám se, že byly splněny požadavky na bakalářskou práci, a doporučuji práci k obhajobě.
Cílem bakalářské práce pana Oskara Kaufmana bylo navrhnout a realizovat prototyp zařízení, které by fungovalo jako Modbus/TCP server, vytvořit jednoduchou testovací aplikaci pro PLC řady LOGIX a ověřit komunikaci s Modbus/TCP serverem. Náročnost zadání považuji za odpovídající po odborné i časové stránce. Práce obsahuje cca 36 stran textu a je členěna do 8 kapitol včetně kapitoly úvod. V první části práce (kapitoly 1 a 2) autor obecně popisuje sběrnice používané v průmyslové komunikaci a komunikační protokoly podporované PLC řady LOGIX. Ve třetí kapitole se podrobněji zaměřuje na popis sběrnice Modbus. Tato část práce je převzata z literatury a nemám k ní podstatnější výhrady. V další části technické zprávy (kapitoly 4 a 5) je již uveden návrh hardwarového a softwarového řešení Modbus/TCP serveru a postup testování komunikace s Modbus/TCP serverem. Tato část práce je vlastním dílem pana Kaufmana. V kapitole 4. HARDVÉR ZARIADENIA se autor pokouší o návrh obvodového řešení vlastního Modbus/TCP serveru a rozšiřujících desek s binárními vstupy a výstupy. K postupu pana Kaufmana však má vážné výhrady. Pan Kaufman si na začátku nestanovil požadavky na navrhované zařízení, jako je počet binárních vstupů a výstupů nebo proudová zatížitelnost binárních výstupů. Popis návrhu zařízení není sestaven v logickém sledu, ale je chaotický. Nejprve je uvedena fotografie hotového zařízení a některé jeho vlastnosti. Pak sice autor vybírá procesor, řeší obvody pro nastavení IP adresy a indikační LED diody. Následně přejde k návrhu napájecích obvodů, avšak bez toho, že by ještě znal celkové proudové zatížení jednotlivých napájecích větví. Pominu-li neúspěšnou snahu o návrh převodníku napěťových úrovní, autor se opět vrací k návrhu procesorové části. Za správný postup bych považoval navrhnout procesorovou části, pak navrhnout ostatní pomocné obvody základní desky, provést návrh rozšiřující desky a až jako poslední navrhovat napájecí zdroje. Nesouhlasím s tvrzením autora na str.23, poslední odstavec, že v pouzdře procesoru je anténa na WiFi a bluetooth. Pouzdro je kovové (viz. Obrázok 10 vlevo na str. 24), takže by jím elektromagnetické vlny rozhodně nepronikaly. Postrádám výpočet hodnot rezistorů R37, R39 a výpočet výkonového zatížení rezistorů R37, R38 a R39 při návrhu obvodu digitálního vstupu na str. 32. Obdobně chybí výpočet hodnot součástek a jejich výkonového zatížení při návrhu obvodu digitálního výstupu na str. 32 a 33. Autor se ani neobtěžoval uvést proud, kterým budí vinutí relé. Zásadně nesouhlasím s tvrzením pana Kaufmana na str. 33, že napětí mezi bázi a emitorem tranzistoru je 5 V. Jedná se o bipolární křemíkový tranzistor BC817, který má napětí mezi bázi a emitorem cca 0,6 až 0,7 V. Napětí 5 V by tranzistor zcela jistě zničilo. Za správný považuji výběr vývojové desky OLIMEX ESP32-POE pro základní desku a vývojové desky Arduino Nano pro rozšiřující desku. Za nevhodné považuji míchat návrh elektronických obvodů s návrhem desek plošných spojů. Dle mého názoru by bylo daleko vhodnější vytvořit samostatnou kapitolu věnovanou návrhu desek plošných spojů a návrhu mechanického uspořádání zařízení a tuto kapitolu zařadit až za návrh všech elektronických obvodů. V kapitole 5 je popsán firmware pro procesory na základní a rozšiřující desce. Pan Kaufman využil knihovny Wire.h, Eth.h, WiFi a ModbusIP_ESP8266.h. Využití existujících knihoven považuji za správné. Zásadně však nesouhlasím s tvrzením autora na str. 35 (poslední odstavec podkapitoly 5.1.1), že jeden bit ze sedmibitové adresy sběrnice I2C je použit na označení zápisu nebo čtení. Ve skutečnosti je pro adresu využito všech 7 bitů a pro označení zápisu nebo čtení je použit samostatný bit Read/Write. Následně ještě autor uvádí, že počet adres je dvě na šestou, což se podle autora rovná 128 (dvě na šestou je však ve skutečnosti 64). Kapitola 6 je věnována otestování funkčnosti realizovaného zařízení. Pan Kaufman používal pro testování komunikace s realizovaným zařízením Modbus/TCP serverem program QModMastr (simulátor Modbus/TCP klienta), Codesys (simulace PLC) a nakonec použil vytvořenou testovací aplikaci na reálném PLC řady Logix firmy Allen Bradley. Postup testování považuji za správný. Výhrady mám ke grafické úrovni práce. Obrázky jako např. Obrázok 12 na str. 25, Obrázok 30 na str. 37, Obrázok 40 a Obrázok 41 na str. 44 jsou tak malé, že v tištěné verzi práce je text v obrázcích velmi špatně čitelný. Při práci využíval pan Kaufman výhradně internetové zdroje. Využívání internetových zdrojů je v případě prakticky zaměřené bakalářské práce jistě správné, ale přesto si měl autor nastudovat základní informace o sběrnici I2C nebo návrhu spínacích obvodů s tranzistory z knižní literatury. Dle mého názoru pan Kaufman splnil všechny body zadání své práce. V problematice průmyslových protokolů a tvorby software pro vestavné systémy se dokázal solidně zorientovat, dokázal navrhnout desky plošných spojů, zařízení sestavit a oživit. Velmi slabou stránkou práce je však návrh elektronických obvodů. Na závěr konstatuji, že dle mého názoru, pan Oskara Kaufmana i přes uvedené výhrady prokázal bakalářské schopnosti. Vzhledem k výše uvedeným skutečnostem navrhuji hodnotit jeho práci známkou D/68 bodů.
eVSKP id 151640