Master's Thesis

Multi-level modeling and coordination of actions of holonic systems utilizing ROS

Final Thesis 2.47 MB

Author of thesis: Ing. Daniel Onderka

Acad. year: 2025/2026

Supervisor: doc. Ing. Vladimír Janoušek, Ph.D.

Reviewer: Ing. Radek Kočí, Ph.D.

Abstract:

The goal of this thesis is to create a tool that enhances the orchestration capabilities of ROS-based systems. The proposed tool will use holonic principles to create a clear, modular, and hierarchical architecture. Each holon will be dynamically reconfigurable and fully replaceable at runtime. This thesis achieves stated objectives by combining ROS with Node-RED, a visual web-based application. In the designed architecture, ROS provides an environment for node execution and communication, while Node-RED handles the organization and orchestration of system components. Interconnection of these two independent systems requires definition of communication protocol and creation of a bridge between DDS and WebSocket protocols on the ROS and Node-RED sides respectively. The second part of this thesis covers the implementation of a robotic application. The created system uses ros2\_control for motor control, slam\_toolbox for mapping, and Nav2 for navigation, all of which are ROS based libraries and frameworks. This part results in a custom robot and a ROS-based system that enables autonomous navigation. Beyond the scope of this thesis, a multi-robot application was implemented in a simulated environment. This part uses Gazebo for simulation and Open RMF framework for multi-robot coordination. The conclusion of this thesis combines previous two parts to demonstrate the use of created tool on a real ROS system.

Keywords:

cyber-physical systems, robotics, modularity, orchestration, holonic architecture, Robot Operating System, ROS2, Node-RED

Date of defence

25.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaBznamka

Grading

B

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, např. ohledně teoretického konceptu použitého k modelování. 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 B - velmi dobře.

Topics for thesis defence

  1. Zadání i práce zmiňují holonistický přístup. Vysvětlete, jak přesně tento přístup ovlivnil návrh a v čem je jeho přínos - z textu to není zcela zřejmé.
  2. Na s. 18 píšete, že is-web-api je problémové a byla vytvořena vlastní implementace mostu (ros2_ws_interface a ros2_interface_api). Následně uvádíte, že byla zachována velká část is_web_api. Převzal jste tedy částečně tuto implementaci, nebo jste se jen inspiroval jejím řešením?

Language of thesis

Czech

Faculty

Department

Study programme

Information Technology and Artificial Intelligence (MITAI)

Specialization

Intelligent Devices (NIDE)

Composition of Committee

doc. Ing. František Zbořil, CSc. (předseda)
doc. Ing. Vladimír Janoušek, Ph.D. (místopředseda)
Ing. Martin Hrubý, Ph.D. (člen)
Ing. Jaroslav Rozman, Ph.D. (člen)
Dr. Ing. Petr Peringer (člen)
Ing. Tomáš Goldmann, Ph.D. (člen)

Student dokonale pochopil smysl zadání a byl schopen samostatně vytvořit použitelný a velmi dobře otestovaný nástroj, plně odpovídající požadavkům. 

Evaluation criteria Verbal classification
Informace k zadání

Zadání není jednoduché, vyžaduje dokonale pochopit ROS2, najít  použitelné technologie jako východisko pro řešení, navrhnout a realizovat potřebné prostředky a průběžně experimentálně ověřovat různé varianty řešení. Zadání bylo splněno.

Aktivita při dokončování

Práce byla dokončena včas, výsledný systém byl detailně demonstrován. S definitivním textem práce jsem ale měl možnost se seznámit až po odevzdání.

Publikační činnost, ocenění

-

Práce s literaturou

Potřebné zdroje student dohledal samostatně a použil je smysluplně,

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

Zásadní konzultace proběhly v počáteční fázi, kdy byly definitivně ujasněny požadavky zadání. Následně student pracoval převážně samostatně a jen občas informoval o stavu prací. 

Points proposed by supervisor: 95

Grade proposed by supervisor: A

Reviewer’s report
Ing. Radek Kočí, Ph.D.

Práce plně vyhovuje zadání, vytvořený nástroj a demonstrační aplikace jsou funkční a použitelné i do budoucna. Drobnou výhradu mám ke stylu psaní textu a poměrně krátké kapitoly týkající se orchestrace (s tím souvisí i otázka č. 1).

Evaluation criteria Verbal classification Points
Rozsah splnění požadavků zadání

Evaluation level: zadání splněno

Rozsah technické zprávy

Evaluation level: je v obvyklém rozmezí

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

Základní členění textu je v pořádku, kapitoly jsou jasně vymezeny a tematicky na sebe navazují. Text obsahuje všechny relevantní informace. Student se věnuje průzkumu existujících nástrojů, hlavní čast práce je rozdělena mezi kapitolu 4 (popis vytvářeného nástroje) a kapitolu 5 (popis demonstrační aplikace). Kapitola 5 je v podstatě studie použití ROS2 pro řízení reálného robota. Kapitola 7, tedy ukázka propojení vytvořeného nástroje s demonstrační aplikací řízenou ROS2, je poměrně stručná.

Text práce je čtivý, občas psán spíše jako příběh, než technický popis. Student popisuje, mj., své úvahy a slepé cesty. Z tohoto pohledu obsahuje text více informací, než by bylo potřeba, a tím trochu snižuje celkový přehled o práci.

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

Typografická úprava je velmi dobrá. Po jazykové stránce nelze vytknout žádné větší prohřešky.

85
Práce s literaturou

Výběr studijních materiálů je dostatečný a odpovídá tématu práce. Student odlišuje převzaté prvny od vlastní práce a vlastních výsledků.

90
Realizační výstup

Realizační výstup je plně funkční a dostatečně zdokumentován včetně způsobu instalace a spuštění. Na realizaci lze navazovat.

100
Využitelnost výsledků

Výsledkem práce je funkční řešení pro orchestraci robotických aplikací pro ROS2 s využitím nástroje NodeRED. Může být přínosem pro komunitu zabývající se návrhem a řízením robotických aplikací.

Náročnost zadání

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

Práce se věnuje orchestraci robotických aplikací vytvořených v prostředí ROS2 včetně možnosti dynamické rekonfigurace. Součástí řešení má být i demonstrační aplikace pracující s fyzickým i simulovaným robotem. Objemem prací považuji zadání za mírně obtížnější.

Topics for thesis defence:
  1. Zadání i práce zmiňují holonistický přístup. Vysvětlete, jak přesně tento přístup ovlivnil návrh a v čem je jeho přínos - z textu to není zcela zřejmé.
  2. Na s. 18 píšete, že is-web-api je problémové a byla vytvořena vlastní implementace mostu (ros2_ws_interface a ros2_interface_api). Následně uvádíte, že byla zachována velká část is_web_api. Převzal jste tedy částečně tuto implementaci, nebo jste se jen inspiroval jejím řešením?
Points proposed by reviewer: 85

Grade proposed by reviewer: B

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