OPC UA a MQTT v průmyslové komunikaci IIoT

Proč právě OPC UA a MQTT v době IIoT

Průmyslový internet věcí (IIoT) zásadně mění způsoby, jakými sbíráme, přenášíme a využíváme data z výrobních linek, strojů a celých provozů. Dva dominantní komunikační standardy – OPC UA (Open Platform Communications Unified Architecture) a MQTT (Message Queuing Telemetry Transport) – pokrývají odlišné, ale vzájemně doplňující se požadavky: robustní modelování a interoperabilitu v případě OPC UA a lehkou, efektivní, škálovatelnou telemetrii v případě MQTT. Správná kombinace obou přístupů umožňuje navrhnout architektury, které jsou bezpečné, spolehlivé, škálovatelné a připravené pro budoucí rozšíření.

Základní charakteristika standardů

OPC UA je platformně nezávislá, servisně orientovaná architektura určená pro průmyslovou interoperabilitu. Kromě přenosu dat nabízí rozsáhlé modelování informací (objekty, proměnné, metody, události), standardizované profily a zabezpečení implementované již v návrhu. Hodí se pro horizontální i vertikální integraci – od snímačů po aplikační vrstvy MES/ERP.

MQTT je publish–subscribe protokol optimalizovaný pro přenos telemetrie přes nespolehlivé sítě s minimální režijní zátěží. Vyniká jednoduchostí, nízkou spotřebou šířky pásma a snadnou horizontální škálovatelností. MQTT samo o sobě neřeší sémantiku dat; tu doplňují konvence (např. JSON, CBOR, či specifikace Sparkplug B).

Architektura a komunikační model OPC UA

OPC UA je vystavěna na Service-Oriented Architecture (SOA) a nabízí několik komunikačních vzorů:

  • Client–Server: klient volá služby serveru (Read/Write, Browse, Call, Subscribe) a získává deterministickou kontrolu nad interakcí.
  • PubSub: publikování datových sad na transportech (UDP, MQTT, AMQP, broker-less či přes broker) pro odlehčenou distribuci.

Klíčovým přínosem je informační model – hierarchie uzlů s atributy, referencemi a typovým systémem. To umožňuje přesnou sémantiku proměnných, metod a událostí a využití Companion Specifications (např. pro robotiku, CNC, balicí stroje), které sjednocují význam dat napříč dodavateli.

Architektura a komunikační model MQTT

MQTT využívá centrální komponentu broker. Producenti (publishers) publikují zprávy na témata (topics), konzumenti (subscribers) se na tato témata přihlašují. Tím vzniká volné svázání producentů a konzumentů a velmi jednoduché horizontální škálování.

  • QoS 0/1/2: garance doručení od „nejlepší snahy“ po „přesně jednou“.
  • Retained messages: broker uchovává poslední hodnotu pro nové odběratele.
  • Last Will and Testament: detekce pádu klienta a notifikace odběratelů.

MQTT je ideální pro telemetrii, periodická měření a události z edge zařízení. Sémantiku dat však musíte standardizovat (např. jednotky, typy, škálování) na úrovni payloadu či definovaných konvencí.

Bezpečnost: vestavěná v OPC UA, transportní v MQTT

OPC UA implementuje bezpečnost nativně: podpis zpráv, šifrování, správa X.509 certifikátů, uživatelská autentizace, řízení oprávnění a auditní záznamy. Bezpečnost je provázána s modelem služeb i objektů.

MQTT spoléhá na zabezpečení transportní vrstvy (TLS) a mechanizmy brokeru (ACL, autentizace, autorizace). Úroveň bezpečnosti je proto dána konfigurací a disciplinovanou správou identit, certifikátů a oprávnění.

Modelování a sémantika dat

OPC UA poskytuje typový systém, reference a události, takže lze popsat nejen hodnotu, ale i význam, jednotky, mezní stavy a chování objektů. To výrazně usnadňuje interoperabilitu a kontextualizaci dat v MES/SCADA/ERP systémech.

MQTT přenáší binární payload, jehož struktura závisí na dohodě. Běžně se používají formáty JSON, CBOR nebo binární rámce. Pro průmyslové použití se prosazuje Sparkplug B, který definuje témata, datové typy, birth/death sekvence a stavové modely pro zařízení a edge uzly.

Determinismus, latence a propustnost

Pro řízení v reálném čase a deterministické aplikace je vhodnější OPC UA PubSub kombinované s Time-Sensitive Networking (TSN), které umožňuje časově deterministický přenos. Naopak pro hromadnou telemetrii a přenos přes WAN s proměnlivými parametry sítě je praktičtější MQTT.

Škálování a topologie sítě

  • MQTT: horizontální škálování přes shluky brokerů, federaci a bridge propojení (edge → cloud), jednoduché nasazení v DMZ.
  • OPC UA: topologie client–server (bod–bod) a PubSub (many-to-many). Pro velké instalace se využívají agregující servery, address space modely a řízení namespace.

Spolehlivost a odolnost

OPC UA podporuje subscriptions s monitorováním, bufferováním událostí a diagnostiku spojení. MQTT spoléhá na QoS a broker s perzistencí. Kritické systémy často kombinují oba standardy s lokální store-and-forward vrstvou v edge bránách.

Srovnání OPC UA vs. MQTT

Oblast OPC UA MQTT
Komunikační model Client–Server + PubSub Publish–Subscribe (broker)
Sémantika Bohatá, typový systém, Companion Specifications Volná; konvence (JSON/CBOR), Sparkplug B
Bezpečnost Vestavěná (certifikáty, podpis, šifrování) TLS + ACL v brokeru
Determinismus Možný (PubSub + TSN) Spíše best-effort, QoS 2 pro spolehlivost
Síťová zátěž Vyšší režie, bohatší metadata Velmi nízká režie
Integrace s MES/ERP Silná díky modelům Vyžaduje datový model nad MQTT
Typické použití Interoperabilita strojů, řízení, audit Telemetrie, monitoring, edge–cloud

Integrace v praxi: společné nasazení

V reálných projektech se běžně nasazuje OPC UA na úrovni strojů pro bohaté modely a diagnostiku a současně MQTT pro distribuci telemetrie do analytických platforem. OPC UA → Edge Gateway → MQTT Broker → Cloud/Data Lake je ověřený vzor.

  • Edge gateway mapuje uzly OPC UA do MQTT témat (např. dle hierarchie adresového prostoru).
  • Sparkplug B přináší lifecycle (NBIRTH/DBIRTH) a konzistenci pro odběratele.
  • OPC UA PubSub přes MQTT umožňuje využít MQTT transportu při zachování OPC UA sémantiky.

Adresní prostory, jmenné prostory a témata

V OPC UA je klíčová práce s NamespaceIndex/URI a stabilními NodeId. V MQTT je nutné definovat konvenci témat (např. site/line/machine/tag), pravidla pro názvy, používání wildcards (+, #) a omezení práv pro publikaci a odběr.

Správa životního cyklu zařízení

OPC UA nabízí řízené nasazení certifikátů, onboarding přes GDS (Global Discovery Server) a detailní diagnostiku. MQTT spoléha na registr zařízení v brokeru a politiky ACL; Sparkplug B přidává birth/death proces a stavové modely uzlů.

Kvalita dat, časové značky a synchronizace času

OPC UA nativně přenáší stav kvality (Good/Uncertain/Bad) a zdrojové časové značky. U MQTT je nezbytné sjednotit reprezentaci (např. ISO 8601, epoch ms) a kvalitu (flagy v payloadu). Pro korektní analýzy je zásadní synchronizace času pomocí NTP/PTP.

Výkonové a síťové optimalizace

  • OPC UA: využívejte subscriptions s filtrováním, DataChangeTrigger, segmentaci address space, binární kódování (UA Binary) a PubSub pro vysokofrekvenční datové toky.
  • MQTT: volte adekvátní QoS, batching payloadu, backoff strategie, retained zprávy pouze pro stavové veličiny a omezení wildcards v ACL.

Kybernetická bezpečnost a compliance

Dodržujte princip minimálních oprávnění, pravidelnou rotaci certifikátů a klíčů, segmentaci sítě (OT/IT/DMZ), zero trust přístup a auditní logy. V regulovaných prostředích (např. farmacie, potravinářství) evidujte změny konfigurací a verze modelů.

Monitorování, observabilita a diagnostika

Implementujte telemetrii provozu (latence, počet zpráv, QoS, chybovost), health-check metriky brokeru/serveru, deadband a sampling intervaly podle dynamiky procesů. Logy centralizujte (ELK/OTEL) a korelujte s výrobními událostmi.

Testování a validace

  • OPC UA: validujte modely (NodeSet2 XML), procházení (Browse), oprávnění a výkon subscription kanálů.
  • MQTT: testujte chování při výpadcích, session persistence, logiku retained zpráv a správnost mapování témat k rolím.

Typické integrační vzory

  • Stroj → OPC UA Server → Edge Gateway → MQTT Broker → Cloud (analytika, prediktivní údržba).
  • OPC UA PubSub → TSN pro deterministickou sběrnici v hale a MQTT pro publikaci souhrnných dat do IT systémů.
  • Historian odebírá z OPC UA (pro sémantiku), zatímco stream processing z MQTT (pro rychlost a škálování).

Ekosystém a standardizační trend

Průmysl konverguje na kombinaci informací OPC UA (model, interoperabilita) a transportu MQTT (efektivní distribuce). Roste adopce OPC UA PubSub přes MQTT a rozšíření Sparkplug B pro sjednocení sémantiky ve světě MQTT. Pro real-time determinismus se prosazuje TSN.

Návrh referenční architektury

  1. OT vrstva: stroje se servery OPC UA (standardizované Companion Specs), lokální PubSub pro rychlá data.
  2. Edge: gateway mapuje UA uzly do MQTT (Sparkplug B), aplikuje store-and-forward mechanismy a lokální aplikační logiku.
  3. DMZ: škálovaný MQTT broker cluster s ACL, TLS a monitoringem.
  4. IT/Cloud: streamovací platforma, datové jezero, analytika, digitální dvojčata, integrace do MES/ERP.

Doporučené postupy (best practices)

  • Začněte modelováním: definujte slovník pojmů, jednotky, meta-informace a vazby mezi objekty.
  • U MQTT pevně stanovte názvosloví témat, strategie retained zpráv a pravidla QoS podle kritičnosti signálů.
  • U OPC UA používejte Companion Specifications a GDS pro správu certifikátů a důvěryhodnost.
  • Oddělte řídicí smyčky (deterministické) od telemetrie (best-effort) a volbu transportu přizpůsobte těmto požadavkům.
  • Plánujte observabilitu: metriky, tracing, audit, SLA alarmy.

Časté chyby a antipatterny

  • Přenášení raw hodnot bez sémantiky (ztráta interoperability a kontextu).
  • Nedefinovaná pravidla pro MQTT témata a volné používání wildcards bez omezení v ACL.
  • Ignorování správy certifikátů a životního cyklu identit.
  • Nadměrné zatížení OPC UA serveru příliš mnoha subscription kanály bez filtrování a deadbandu.
  • Přenos rozhodování v reáln