






Projekt SIN 2026
Projekt SIN
Cíl projektu
Cílem projektu je prakticky si vyzkoušet návrh a realizaci inteligentního nebo distribuovaného řídicího systému a propojit témata probíraná v předmětu SIN.
Projekt může být zaměřen například na průmyslovou automatizaci, IoT a edge computing, inteligentní budovy, robotiku, dopravu, distribuované řízení, modelování a simulaci nebo inteligentní dohledové a řídicí algoritmy.
Důraz není kladen na použití konkrétního nástroje, ale na vhodnou architekturu systému, rozdělení funkcí mezi jeho komponenty, komunikaci mezi nimi a demonstraci funkčního řešení.
Použití AI nebo strojového učení není povinné.
Projekt je standardně individuální. Přípustný je také dvoučlenný tým s jasně definovaným podílem členů na řešení, pokud rozsah výsledku odpovídá práci dvou lidí. Týmový projekt je nutno předem konzultovat s vyučujícím.
Varianty zadání
1. Distribuované řízení simulovaného systému
Navrhněte a realizujte řízení simulovaného systému s využitím nástrojů používaných v průmyslové automatizaci, IoT nebo robotice.
Řešení musí obsahovat alespoň dvě samostatně běžící komponenty, mezi kterými probíhá komunikace přes explicitně definované rozhraní nebo komunikační protokol.
U rozsáhlejších projektů se předpokládá více komponent, například:
simulovaný fyzický proces / zařízení
|
v
lokální řízení
|
v
komunikační nebo edge vrstva
|
v
dohledová nebo inteligentní aplikace
Jednotlivé komponenty mohou běžet na jednom počítači jako samostatné procesy nebo kontejnery, případně mohou být fyzicky distribuovány.
- Simulujte vhodný proces nebo prostředí se senzory a aktuátory. Lze použít existující simulátor nebo vytvořit vlastní jednoduchý model.
- Realizujte řídicí část například pomocí IEC 61131-3, IEC 61499, DEVS, Node-RED, ROS 2 nebo běžného programovacího jazyka.
- Mezi komponentami použijte vhodné rozhraní nebo protokol, například MQTT, OPC UA, Modbus TCP, ROS 2/DDS, Zenoh nebo vlastní dobře zdokumentované rozhraní.
- Součástí řešení musí být vhodná vizualizace, HMI nebo SCADA umožňující sledovat stav systému a případně měnit vybrané parametry.
Projekt musí obsahovat alespoň jeden experiment s nestandardní provozní situací.
Podle charakteru systému může jít například o:
- komunikační zpoždění,
- přerušení spojení,
- restart komponenty,
- výpadek senzoru,
- chybnou hodnotu senzoru,
- pomalého příjemce dat,
- přetížení,
- jiný relevantní stav.
Popište a při demonstraci ukažte, jak se systém ve zvolené situaci chová.
V dokumentaci uveďte architekturu systému, odpovědnost jednotlivých komponent, použitá rozhraní a vztah řešení k architektuře a principům probíraným v SIN.
2. Znovupoužitelná komponenta pro inteligentní nebo distribuované řízení
Navrhněte a implementujte netriviální znovupoužitelnou komponentu použitelnou v inteligentním nebo distribuovaném řídicím systému.
Může jít například o:
- funkční blok IEC 61499,
- funkční blok nebo knihovnu IEC 61131-3,
- Node-RED node,
- ROS 2 node,
- komponentu DEVS,
- integrační komponentu pro Home Assistant,
- komunikační adaptér nebo gateway,
- jiný vhodný modul.
Komponenta může realizovat například:
| Oblast | Příklady |
| řízení a inteligence | fuzzy regulátor, neuronová síť, adaptivní nebo učící se algoritmus, diagnostika, predikce |
| komunikace | MQTT, OPC UA, Modbus, Zenoh, ROS 2, převod mezi různými protokoly |
| simulace | propojení se SUMO, Webots, Gazebo, DEVS nebo vlastním simulátorem |
| integrace | propojení PLC, SCADA/HMI, Home Assistant, databáze nebo jiného systému |
| distribuované řízení | koordinace komponent, rekonfigurace, agentní chování, discovery, fault handling |
Výsledkem musí být nejen samotná komponenta, ale také demonstrační aplikace, na které lze její funkci jednoznačně předvést.
Rozhraní komponenty musí být popsáno tak, aby ji bylo možné použít i mimo demonstrační příklad.
Součástí řešení musí být alespoň jednoduchý test nebo experiment ověřující správnou funkci komponenty.
Pokud projekt využívá AI nebo strojové učení, vysvětlete:
- jaký konkrétní problém inteligentní komponenta řeší,
- proč je její použití vhodné,
- pokud je to možné, porovnejte její chování s jednodušším řešením nebo baseline.
3. Zpracování nového tématu pro SIN
Po dohodě s vyučujícím lze zpracovat nové téma související s obsahem předmětu, které není dostatečně pokryto ve stávající výuce.
Výstup musí zpravidla obsahovat tři části:
odborná rešerše -> výukový materiál -> praktický demonstrační příklad
Výukový materiál by měl být vytvořen tak, aby jej bylo možné po případné úpravě použít při výuce SIN.
Praktická část může mít podobu demonstrační aplikace, experimentu, simulace, notebooku, sady příkladů, laboratorní úlohy nebo jiného vhodného artefaktu.
Konkrétní rozsah a očekávané výstupy je nutno předem konzultovat s vyučujícím.
Společné požadavky
Architektura
Dokumentace musí obsahovat přehledné schéma architektury řešení.
Ze schématu musí být patrné:
- hlavní komponenty systému,
- odpovědnost jednotlivých komponent,
- směr komunikace,
- použitá rozhraní nebo protokoly.
Uveďte také vztah jednotlivých částí systému k principům a vrstvám architektury probíraným v SIN.
Není požadováno uměle obsadit všechny vrstvy architektury. Je však nutné umět vysvětlit, kde se jednotlivé části projektu v architektuře nacházejí a proč.
Interoperabilita
Pokud spolu komunikují dvě nebo více komponent, musí být popsáno jejich rozhraní.
Nestačí pouze uvést název protokolu. Uveďte podle charakteru řešení například:
- význam přenášených dat,
- strukturu zpráv,
- MQTT topics,
- OPC UA nodes,
- Modbus registry,
- ROS 2 topics/services/actions,
- používané proměnné, adresy nebo porty,
- jiný vhodný popis rozhraní.
Experiment
U implementačních variant musí být předvedena nejen běžná funkce systému, ale alespoň jeden zajímavý provozní nebo experimentální scénář.
Není požadováno rozsáhlé výkonnostní hodnocení ani vědecký experiment. Cílem je ukázat, že autor rozumí chování vytvořeného distribuovaného systému i mimo jeho ideální provozní stav.
Dokumentace
Rozsah dokumentace není pevně určen. Hodnotí se především její srozumitelnost, technická správnost a úplnost.
Dokumentace by měla umožnit jinému technicky zdatnému uživateli:
- pochopit architekturu projektu,
- projekt nainstalovat,
- projekt spustit,
- zopakovat demonstrační a experimentální scénář.
Doporučený software
Použití následujících nástrojů není povinné. Lze použít i jiný vhodný software, pokud jeho volbu dokážete zdůvodnit.
Pro běžný projekt je obvykle vhodnější spojit několik jednoduchých nástrojů než vytvářet zbytečně rozsáhlý technologický stack.
Příklady vhodných kombinací
Průmyslové distribuované řízení
simulátor procesu -> 4diac/FORTE -> MQTT nebo OPC UA -> FUXA
PLC a SCADA
simulátor procesu -> Beremiz/OpenPLC -> Modbus TCP nebo OPC UA -> FUXA
IoT / Smart Building
simulované senzory -> MQTT/Mosquitto -> Node-RED -> Home Assistant
Robotika
Webots nebo Gazebo -> ROS 2 -> řídicí nebo dohledová komponenta
Inteligentní doprava
SUMO/TraCI -> řídicí algoritmus -> MQTT/Zenoh -> HMI
Modelování DEVS
DEVSimPy -> řídicí nebo komunikační komponenta -> HMI
Pokyny k odevzdání software
Projekt musí být možné pokud možno reprodukovat a spustit automatizovaně.
Preferovaným řešením jsou skripty:
-
INSTALL
- nainstaluje potřebné závislosti,
-
BUILD
- připraví nebo přeloží projekt,
-
RUN
- spustí demonstrační aplikaci,
-
TEST
- pokud je to pro daný projekt smysluplné, provede základní automatizovaný test.
Stejného efektu lze dosáhnout například pomocí:
make install
make
make run
make test
Přípustné je také reprodukovatelné kontejnerové řešení, například pomocí Docker Compose nebo Podman Compose.
Pokud některou závislost není možné automaticky nainstalovat, uveďte přesný postup v souboru README
.
Použité významné závislosti a jejich verze musí být uvedeny v dokumentaci.
Projekt by neměl být závislý na automatickém stažení neurčené "nejnovější" verze software, pokud by to mohlo ovlivnit jeho reprodukovatelnost.
README musí obsahovat dostatek informací k instalaci a spuštění projektu a stručný postup, jak provést demonstrační scénář.
Odevzdání
Za celý tým odevzdá projekt jeden pověřený člen.
Odevzdání proběhne prostřednictvím informačního systému FIT. Odevzdají se všechny potřebné soubory zazipované v jednom archivu.
Pro individuální projekt použijte název:
n-xjmeno-100.zip
Pro dvoučlenný projekt:
n-xjmeno1-xjmeno2-pp1-pp2.zip
kde:
-
n
je číslo varianty zadání,
- loginy jsou uvedeny v abecedním pořadí,
-
pp1
a pp2
jsou procentuální podíly členů na výsledku,
- jejich součet musí být 100, případně 99 v důsledku zaokrouhlení.
Příklad:
1-xnovak00-xsvob00-50-50.zip
Kdo žádá o uznání bodů z minulého pokusu absolvovat předmět, odevzdá svůj tehdejší projekt v novém archivu s názvem:
xjmeno-rokPuvodnihoOdevzdaniProjektu-dosazeneBody.zip
například:
xstudent00-2025-15.zip
Demonstrace projektu
Projekt musí být demonstrován.
Demonstrace proběhne v určené učebně na vlastním notebooku, případně po dohodě telekonferenčně.
Student musí být schopen:
- stručně vysvětlit architekturu řešení,
- vysvětlit funkci jednotlivých komponent,
- vysvětlit použitou komunikaci a rozhraní,
- předvést připravený demonstrační scénář.
U varianty 1 a podle charakteru také u varianty 2 se očekává předvedení zvoleného experimentálního nebo nestandardního provozního scénáře.
Při hodnocení je důležitější porozumění vytvořenému systému a schopnost vysvětlit jeho chování než vizuální efektnost demonstrace.
Link to this Page