Bachelor's Thesis

Implementation of server interface on MODBUS

Final Thesis 4.42 MB Appendix 6.64 MB

Author of thesis: Jan Řehák

Acad. year: 2025/2026

Supervisor: Ing. Vojtěch Dvořák, Ph.D.

Reviewer: doc. Ing. Lukáš Fujcik, Ph.D.

Abstract:

This bachelor’s thesis focuses on the familiarization and understanding of all protocols and specifications used for the safe implementation of a server interface module on the Modbus bus and the verification of its functions. Based on the information gathered about the protocols used, the thesis defines requirements for the interface architecture, such as supported functions, baud rate, and data range. Furthermore, the thesis explains in detail the design of the entire interface, including block diagrams of individual modules and a more detailed description of their functions. At the end, the thesis focuses on defining verification tests according to the defined requirements and the results of their completion.

Keywords:

Modbus, APB, Serial line, interface, verification

Date of defence

16.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaBznamka

Grading

B

Process of defence

Student seznámil státní zkušební komisi s cíli a řešením závěrečné práce a zodpověděl otázky a připomínky oponenta a komise. Otázky komise k obhajobě: 1. Kapitola 4 - Proč je soustředěno na protokol, a ne na architekturu? 2. U testů chybí, co se pokryje – testy by měli pokrýt zadání. 3. Proč jste nekomunikoval se svým vedoucím? 4. Jaké vidíte další pokračování této práce?

Language of thesis

Czech

Faculty

Department

Study programme

Microelectronics and Technology (BPC-MET)

Composition of Committee

doc. Ing. Lukáš Fujcik, Ph.D. (předseda)
prof. Ing. Dalibor Biolek, CSc. (místopředseda)
doc. Ing. Radovan Novotný, Ph.D. (člen)
doc. Ing. Jan Pekárek, Ph.D. (člen)
Ing. Radim Hrdý, Ph.D. (člen)
Ing. Břetislav Mikel, Ph.D. (člen)

Supervisor’s report
Ing. Vojtěch Dvořák, Ph.D.

Student Jan Řehák vypracoval bakalářskou práci na téma Implementace rozhraní serveru na sběrnici MODBUS. Cílem práce bylo vytvořit IP blok, který bude z jedné strany kompatibilní se sběrnicí MODBUS a na druhé straně bude schopen přistupovat do paměti pomocí vybrané standardní sběrnice, v tomto případě sběrnice AMBA APB.
Text práce je rozdělen na teoretickou část, kde je čtenář nejprve seznámen s vlastnostmi sběrnice MODBUS a následně s protokolem APB, a praktickou část, popisujícím návrh a verifikaci modulu serveru. Zvolený postup prací je logický a systematický. Student nejprve prostudoval potřebné standardy, identifikoval důležité části a tyto shrnul ve formě požadavků na cílový obvod. Na základě těchto poznatků navrhl architekturu, seznam testů pro ověření splnění požadavků a následně navržený obvod ověřil.
V průběhu semestru student prakticky nekonzultoval, což se projevilo i v technickém řešení. Student zřejmě nepochopil jeden z požadavků a z neznámého důvodu omezil přístup na sběrnici APB na jedinou adresu, což znemožňuje praktické použití, neboť zápis a čtení z různých registrů je základní požadavek kladený na tuto práci. Tuto chybu je možné jednoduše opravit a je jen škoda, že se tak nestalo před odevzdáním práce.
Po formální stránce mám k práci některé připomínky. Text svým rozsahem odpovídá požadavkům kladeným na bakalářskou práci, je poměrně čtivý, s minimem překlepů a gramatických chyb. Souvislost textu lehce narušuje z mého pohledu zbytečně časté používání odrážek. Text je vhodně doplněn obrázky, které jsou v textu řádně komentovány. Největším formálním prohřeškem je však práce s literaturou, kdy seznam literatury čítá jen deset zdrojů, z toho dva zdroje jsou Wikipedie. Práci navrhuji k obhajobě a hodnotím stupněm B/86 bodů. Points proposed by supervisor: 86

Grade proposed by supervisor: B

Předložená bakalářská práce se zabývá návrhem a implementací rozhraní serveru na průmyslové sběrnici MODBUS. Jedná se o prakticky orientované téma zaměřené na návrh digitálních systémů realizovaných v programovatelných hradlových polích FPGA a na implementaci standardizovaných komunikačních protokolů využívaných v průmyslové automatizaci.

Práce má celkový rozsah 56 stran včetně příloh a je rozdělena do sedmi kapitol. V úvodní části student seznamuje čtenáře s protokolem MODBUS, komunikačním rozhraním UART a sběrnicovým protokolem APB. Na základě provedené rešerše následně definuje požadavky na navrhované rozhraní serveru, navrhuje jeho architekturu a popisuje jednotlivé funkční bloky systému. Praktická část práce je věnována návrhu rozhraní, jeho verifikaci pomocí simulačních scénářů a implementaci do FPGA.

Odborná úroveň práce odpovídá požadavkům kladeným na bakalářskou práci. Student prokázal schopnost samostatně nastudovat problematiku komunikačního protokolu MODBUS a navrhnout odpovídající architekturu digitálního systému. K práci mám však několik výhrad. Při přístupu do interní paměti zařízení implementujícího rozhraní serveru je zápis i čtení omezeno na jedinou adresu registru, což výrazně omezuje praktickou použitelnost navrženého IP jádra. Ze simulačních scénářů dále vyplývá, že po přijetí MODBUS rámce je před odesláním odpovědi vždy vytvořen dlouhý timeout. Toto řešení sice není v rozporu se specifikací protokolu, avšak zbytečně snižuje efektivní propustnost komunikační linky. V kapitole věnované verifikaci postrádám verifikační matici, která by jednoznačně prokázala pokrytí všech definovaných požadavků jednotlivými testovacími scénáři. Ze seznamu testů například není zřejmé, zda byly ověřeny všechny podporované konfigurace parity UART komunikace.

Po formální stránce je práce zpracována na dobré úrovni. Text je logicky členěn a vhodně doplněn blokovými schématy a obrázky. V práci se však vyskytují drobné stylistické nedostatky a některé formulace by bylo možné zpřesnit. Za menší nedostatek považuji také absenci hlubší analýzy implementačních výsledků a diskuse omezení navrženého řešení.

Student splnil zadání bakalářské práce v plném rozsahu. Předloženou práci doporučuji k obhajobě a hodnotím ji stupněm B / 85 bodů. Topics for thesis defence:
  1. Byl proveden test ověřující správné nastavení detekce chyby u paritního bitu?
  2. Jak byste upravil návrh, aby nedocházelo k dlouhému čekání po přijetí rámce?
Points proposed by reviewer: 85

Grade proposed by reviewer: B

Responsibility: Mgr. et Mgr. Hana Odstrčilová