Bachelor's Thesis

IIoT Data Processing Module

Final Thesis 3.38 MB

Author of thesis: Bc. Tobiáš Frajka

Acad. year: 2024/2025

Supervisor: Ing. Jiří Hynek, Ph.D.

Reviewer: Ing. Petr John

Abstract:

This thesis focuses on the design, implementation, and validation of a modular system for data collection and processing in the diverse environment of the Industrial Internet of Things (IIoT), taking into account Industry 4.0 concepts. The aim of the work is to design a solution suitable for a production environment and test its functionality. The introductory chapters analyze available options for data processing systems and communication methods with industrial devices, including standards such as OPC-UA and MQTT. Based on requirements analysis, a modular system built on microservices architecture was designed, with each service running in a separate Docker container. The system implementation includes an input module for data collection, an output module for communication with external services, a TimescaleDB time-series database for efficient data storage, and a web application for management and monitoring. Technologically, the system is built on modern tools – .NET 8 for the backend, Next.js with TypeScript for the frontend, and gRPC for intermodule communication. The functionality of the system was verified in cooperation with AGEsoft s.r.o., which provided testing opportunities in a simulated environment. The result is a fully functional, modular, and scalable system ready for deployment in real industrial operations.

Keywords:

Internet of Things, Industrial Internet of Things, Industry 4.0, MQTT, OPC-UA, Modularity, Microservices, IoT

Date of defence

16.06.2025

Result of the defence

Defended (thesis was successfully defended)

znamkaAznamka

Grading

A

Process of defence

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm A.

Topics for thesis defence

  1. Řešení, které jste navrhl, implementuje v rámci OPC UA komunikace pouze klienta (servery představují samotné stroje). Jak byste upravil architekturu řešení, aby umožnilo paralelní připojení k více OPC UA serverům současně?
  2. Jak byste upravil návrh systému, aby bylo možné nasadit pouze potřebné adaptéry a zajistit, že nepoužité nebudou součástí finální podoby aplikace?
  3. Proč jste použil vámi zvolený databázový systém?
  4. Jaké jsou hlavní přínosy vašeho řešení?

Language of thesis

Slovak

Faculty

Department

Study programme

Information Technology (BIT)

Composition of Committee

doc. Dr. Ing. Dušan Kolář (předseda)
Ing. Libor Polčák, Ph.D. (člen)
doc. Dr. Ing. Otto Fučík (člen)
Ing. František Grézl, Ph.D. (člen)
Ing. Tomáš Goldmann, Ph.D. (člen)

Supervisor’s report
Ing. Jiří Hynek, Ph.D.

Student vytvořil kvalitní bakalářskou práci, jejíž výstupy jsou aplikovatelné v praxi a prezentovány na studentské konferenci. Navrhuji hodnocení stupněm A.

Evaluation criteria Verbal classification
Informace k zadání

Práce vznikla ve spolupráci s firmou AGEsoft s.r.o. Cílem práce bylo implementovat modulární systém pro sběr a zpracování dat v prostředí průmyslového internetu vecí (IIoT). Student prostudoval C#/.NET pro serverovou část, TypeScript/Next.js pro klientskou část, TimescaleDB pro uchování časových řad nebo knihovnu gRPC pro komunikaci mezi moduly. Dále například protokoly MQTT a OPC UA, pro které implementoval adaptéry. Zadání hodnotím jako obtížné.

Práce s literaturou

Student si aktivně dohledával literaturu týkající se zejména oblasti průmyslového internetu věcí (IIoT) a přidružených technologií.

Aktivita během řešení, konzultace, komunikace

Student pracoval samostatně a konzultace vyžadoval spíše méně. Řešení bylo primárně konzultováno ve firmě AGEsoft s.r.o.

Aktivita při dokončování

Práce byla dokončena v předstihu a mohla být konzultována.

Publikační činnost, ocenění

Student své řešení publikoval v rámci studentské konference Excel@FIT 2025.

Points proposed by supervisor: 95

Grade proposed by supervisor: A

Reviewer’s report
Ing. Petr John

Pan Frajka vytvořil velmi zdařilé řešení, jenž je schopné získávat a ukládat data ze strojů používaných ve společnosti AGEsoft s.r.o., která jej plánuje nasadit. Zatímco technická zpráva obsahuje menší nedostatky, samotné řešení bakalářské práce je velmi kvalitní a profesionální. Zdůraznit musím také schopnost pana Frajky aktivně navrhovat další možnosti rozšíření, jejich výhody a nevýhody, při demonstraci svého řešení. Toto svědčí o jeho orientaci v oblasti IIoT. Z těchto důvodů navrhuji hodnocení stupněm A.

Evaluation criteria Verbal classification Points
Náročnost zadání

Evaluation level: obtížnější zadání

Bakalářská práce se zaměřila na vývoj řešení pro sběr a ukládání dat z průmyslových PLC ve společnosti AGEsoft s.r.o., s důrazem na podporu různých komunikačních protokolů. Zadání považuji za technicky náročné, a to zejména kvůli požadavku na flexibilitu komunikace.

Prezentační úroveň technické zprávy

Bakalářská práce má obvyklou strukturu. První dvě kapitoly poskytují teoretickou rešerši oblasti internetu věcí v průmyslu a problematiku přenosu a sběru dat, včetně existujících technologií. Obě části jsou dostatečně podrobné a vhodně popisují tématiku. Poté student analyzuje aktuální řešení a požadavky společnosti AGEsoft s.r.o. na výsledné řešení. V kapitole návrh student přímočaře popisuje plánované řešení, včetně způsobů nasazení a použitých technologií. Kapitola implementace je dobrá, ale obsahuje velmi časté a opakující se výčty. Místy opakuje i obsah předchozích kapitol, a to hlavně v případě použitých technologií. Dále student popisuje testování vytvořeného řešení. Zde zmiňuje, že k výkonnostnímu testování, které je jednou z částí odpovídajícího bodu zadání, došlo ve společnosti AGEsoft s.r.o., ale neposkytuje žádné naměřené výsledky, ani bližší informace. Bakalářskou práci zakončuje adekvátní kapitola závěr.

80
Formální úprava technické zprávy

Text obsahuje menší typografické nedostatky, jako například osamocené věty v odstavcích a chybějící reference. 

80
Realizační výstup

Realizační výstup působí velmi kvalitním dojmem. Student vytvořil propracované řešení, které je schopné efektivně získávat data od zařízení ve společnosti AGEsoft s.r.o. pomocí dynamicky specifikovaletných adaptérů. Celá architektura je navržená pomocí mikroslužeb, což značně zjednodušuje budoucí vývoj a údržbu. Student dále zvolil aktuální technologie (Docker, .NET, gRPC a TimeScaleDB). Takto navržené řešení má z mého pohledu potenciál pro další využití ve společnosti a student je schopen sám navrhovat možná rozšíření, díky kterým by bylo možné použít jeho nástroj i v jiných společnostech.

98
Využitelnost výsledků

Technická zpráva zmiňuje nasazení řešení do praxe, vzhledem ke kvalitě zpracování o jeho realizovatelnosti nepochybuji.

Rozsah splnění požadavků zadání

Evaluation level: zadání splněno s drobnými výhradami

Zadání bylo splněno s malou odchylkou. Technická zpráva neobsahuje informace o výkonnostním testování, které podle ní proběhlo ve společnosti AGEsoft s.r.o., ale v odpovídající sekci chybí. Kvůli rozsahu a kvalitě zpracování nepovažuji tento fakt za závažný z pohledu hodnocení práce.

Rozsah technické zprávy

Evaluation level: je v obvyklém rozmezí

Práce je v typickém rozsahu pro bakalářskou práci.

Práce s literaturou

Student cituje 42 zdrojů, které se skládají převážně z vědeckých článků a knižních publikací. Zvolené zdroje vhodně pokrývají popisovanou problematiku.

95
Topics for thesis defence:
  1. Řešení, které jste navrhl, implementuje v rámci OPC UA komunikace pouze klienta (servery představují samotné stroje). Jak byste upravil architekturu řešení, aby umožnilo paralelní připojení k více OPC UA serverům současně?
  2. Jak byste upravil návrh systému, aby bylo možné nasadit pouze potřebné adaptéry a zajistit, že nepoužité nebudou součástí finální podoby aplikace?
Points proposed by reviewer: 95

Grade proposed by reviewer: A

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