Zephyrnet-logo

OPC UA via MQTT: de toekomst van IT en OT-convergentie

Datum:

OPC UA via MQTT: de toekomst van IT en OT-convergentie
Illustratie: © IoT For All

De convergentie van informatietechnologie (IT) en operationele technologie (OT) omvat het integreren van traditioneel gescheiden bedrijfsnetwerken en computersystemen met industriële controlesystemen en apparaten om een ​​verenigd en onderling verbonden ecosysteem te creëren.

Het selecteren van het beste protocol voor IT- en OT-convergentie hangt af van verschillende factoren, waaronder de specifieke branche, bestaande infrastructuur, beveiligingsoverwegingen en schaalbaarheidsvereisten.

OPC UA en MQTT zijn de protocollen die vaak in dit scenario worden gebruikt. Terwijl deze twee technologieën zich blijven ontwikkelen, is er een nieuw protocol ontstaan, een krachtige combinatie van beide, die nog grotere voordelen voor de industrie biedt.

Het heet OPC UA via MQTT. In dit artikel duiken we in OPC UA via MQTT en onderzoeken we de mogelijkheden ervan om de convergentie van IT en OT te versterken.

Wat is OPC UA?

OPC UA is een populair protocol om de kloof tussen IT- en OT-omgevingen te overbruggen. Het biedt veilige en betrouwbare communicatie met gestandaardiseerde datamodellen, waardoor het geschikt is voor realtime gegevensuitwisseling en het delen van complexe informatie. OPC UA biedt ingebouwde beveiligingsfuncties en ondersteunt verschillende platforms en apparaten.

MQTT is een lichtgewicht berichtenprotocol voor publiceren en abonneren voor efficiënte gegevensoverdracht in omgevingen met beperkte middelen. Het is zeer geschikt voor IoT- en OT-integratiescenario's waarbij bandbreedte- en stroomoverwegingen essentieel zijn. Het publicatie-abonneermodel van MQTT maakt een efficiënte gegevensdistributie naar meerdere abonnees mogelijk.

OPC UA over MQTT is een protocol dat MQTT en OPC UA combineert om de voordelen van beide protocollen te benutten. OPC UA en MQTT hebben hun voordelen als ze worden gebruikt in een IT- en OT-convergentiescenario.

MQTT wordt gebruikt als transportmiddel om de rijke datacontext van OPC UA te vervoeren. Deze aanpak profiteert van het lichtgewicht publicatie-abonnee-berichtenmodel van MQTT en de gestandaardiseerde gegevensmodellering, beveiligingsfuncties en bredere mogelijkheden van OPC UA voor complexe informatie-uitwisseling.

Profiteren van het MQTT Pub-Sub-patroon

Flexibele en schaalbare IT- en OT-infrastructuur

MQTT (Message Queuing Telemetry Transport) is in de eerste plaats een berichtgestuurd protocol. Het volgt een pub-sub-berichtenpatroon, waarbij uitgevers berichten naar een centrale berichtenmakelaar sturen en abonnees deze berichten van de makelaar ontvangen.

De MQTT-makelaar fungeert als tussenpersoon tussen uitgevers en abonnees. Het ontvangt berichten die door uitgevers zijn gepubliceerd en stuurt deze door naar abonnees die interesse hebben getoond in het ontvangen van berichten over specifieke onderwerpen.

Pub-sub-berichtensystemen zijn inherent schaalbaarder dan client-serversystemen. In een client-servermodel moet elke client een verbinding met de server tot stand brengen en onderhouden, wat tot prestatieknelpunten kan leiden naarmate het aantal clients toeneemt.

In een pub-sub-model stuurt de uitgever berichten naar een gecentraliseerde makelaar, die berichten verspreidt onder geïnteresseerde abonnees. Deze architectuur schaalt effectiever naarmate het aantal uitgevers en abonnees groeit.

Gebruik van netwerkbandbreedte

In client-serversystemen genereert het verzoek van elke client verkeer op het netwerk en de server door middel van polling. Als gevolg hiervan genereert het onnodig veel netwerkverkeer zonder updates van de doelwaarden.

In pub-sub ontvangen abonnees alleen updates als er nieuwe gegevens beschikbaar zijn, waardoor onnodige netwerkbelasting wordt verminderd. Dit is belangrijk in toepassingen zoals IoT, waar sensorgegevens of statusupdates snel moeten worden geleverd.

Gebeurtenisgestuurde architectuur

Pub-Sub sluit goed aan bij gebeurtenisgestuurde architecturen, waarbij componenten reageren op gebeurtenissen of veranderingen in gegevens. Dit is vooral handig wanneer acties moeten worden geactiveerd op basis van specifieke omstandigheden of gebeurtenissen.

Dit profiteert van de ontkoppeling van zender (uitgever) en ontvanger (abonnee). Uitgevers hoeven niet te weten wie hun abonnees zijn, en abonnees hoeven niet te weten wie hun uitgevers zijn.

Deze scheiding zorgt voor flexibiliteit bij het uitvoeren van componenten zonder elkaar te beïnvloeden, wat leidt tot efficiënter gebruik van middelen en reactievermogen.

Daarom hoeven uitgevers en abonnees niet op de hoogte te zijn van elkaars bestaan ​​of specifieke implementatiedetails, waardoor het gemakkelijker wordt om individuele componenten te vervangen of te upgraden zonder het hele systeem te ontwrichten.

Rijke datacontext mogelijk gemaakt door OPC UA

Naast de voordelen van het MQTT Pub-Sub-mechanisme, hecht OPC UA nog een extra niveau aan belang om naadloze communicatie tussen diverse apparaten en applicaties te garanderen. OPC UA richt zich op interoperabiliteit en standaardisatie tussen verschillende systemen, leveranciers en industrieën.

Het blinkt uit in het verwerken van complexe datastructuren, hiërarchische datamodellen, metadata en robuuste beveiligingsfuncties, waardoor de applicatie wordt voorzien van ingewikkelde datarelaties. Dit maakt het protocol zeer geschikt voor zware industriële omgevingen, ongeacht de onderliggende technologieën of leveranciers in verschillende industriële domeinen.

OPC UA wordt veel gebruikt in sectoren zoals productie, procesautomatisering, energie, automobielsector en meer. De toepassing ervan wordt gezien in diverse sectoren die voor hun activiteiten afhankelijk zijn van robuuste en gestandaardiseerde communicatie.

Sommige toepassingsscenario's, zoals energiecentrales, chemische verwerking en ruimtevaart, zijn zeer kritisch, waarbij betrouwbaarheid en veiligheid voorop staan.

Operationeel model

Het meegeleverde diagram toont de interne stappen binnen een uitgever voor het genereren en verzenden van berichten, samen met de noodzakelijke parameters voor dit proces.

Het illustreert ook het proces binnen een abonnee voor het ontvangen, decoderen en begrijpen van berichten, samen met het parametermodel dat essentieel is om deze acties te bereiken.

Uitgeververwerking

Stap 1: gegevensverzameling

In de beginfase worden gegevens (DataSet) verzameld ter voorbereiding op publicatie. Dit proces omvat het configureren van de collectie met behulp van een structuur genaamd GepubliceerdDataSet.

Binnen de GepubliceerdDataSet worden essentiële details over de gegevens, bekend als DataSetMetaData, gedefinieerd. Het resultaat van dit gegevensverzamelingsproces is het creëren van waarden voor de afzonderlijke velden binnen de DataSet.

Stap 2: DataSetWriter en DataSetMessage maken

Vervolgens wordt een component die bekend staat als DataSetWriter gebruikt om een ​​zogenaamde DataSetMessage te creëren. Meerdere DataSetMessages gegenereerd door verschillende DataSetWriters binnen een WriterGroup kunnen worden gegroepeerd in een verenigd NetworkMessage.

Stap 3: Netwerkbericht maken

Hierna volgt het aanmaken van een NetworkMessage, waarbij gebruik wordt gemaakt van de informatie die in de vorige stap is verkregen, samen met de PublisherId die is opgegeven in de PubSubConnection. De structuur van dit Netwerkbericht komt overeen met het specifieke communicatieprotocol dat wordt gebruikt.

Stap 4: Levering van netwerkberichten

De laatste stap omvat het verzenden van het volledig opgemaakte NetworkMessage naar de aangewezen Message Oriented Middleware. Dit wordt bereikt door gebruik te maken van het vooraf gedefinieerde adres dat voor dit doel is opgegeven.

Abonneeverwerking

Stap 1: Verbinding en abonnement initiëren

De Abonnee kiest de juiste Message Oriented Middleware en brengt een verbinding tot stand via het opgegeven adres, met behulp van multicast voor OPC UA UDP of verbinding maken met een Broker voor MQTT.

De abonnee begint te luisteren naar inkomende berichten. Filters zoals PublisherId, DataSetWriterId of DataSetClassId zijn geconfigureerd om berichten uit te filteren die niet aan de opgegeven criteria voldoen.

Stap 2: Binnenkomende netwerkberichten verwerken

Wanneer een Netwerkbericht binnenkomt, wordt het onderworpen aan decodering en decodering met behulp van de beveiligingsparameters die door de uitgever worden gebruikt.

Stap 3: Decodering en toepassingsspecifieke afhandeling

Relevante DataSetMessages worden doorgestuurd naar de overeenkomstige DataSetReaders. De inhoud van DataSetMessages wordt gedecodeerd met behulp van DataSetMetaData, dat uitgebreide veldsyntaxis, versie-informatie en geschikte eigenschappen bevat. Toepassingsspecifieke verwerking zou het in kaart brengen van ontvangen waarden aan knooppunten binnen de OPC UA-adresruimte van de abonnee kunnen inhouden.

Stap 4: Configuratie en beheer van SubscribedDataSet

De abonnee configureert de SubscribedDataSet voor gegevensverzending.

Er zijn twee verschillende keuzes:

  1. De TargetVariables-configuratie verzendt DataSetMessage-velden naar reeds bestaande variabelen binnen de OPC UA-adresruimte van de abonnee.
  2. De SubscribedDataSetMirror-configuratie wordt gebruikt wanneer ontvangen DataSet-velden moeten worden omgezet in variabelen binnen de OPC UA-adresruimte van de abonnee. Als deze variabelen niet bestaan, worden ze gemaakt als onderdeel van de configuratie van de abonnee.

De installatie en aanpassing van zowel uitgevers als abonnees wordt doorgaans vergemakkelijkt via speciale configuratietools. Dit configuratieproces kan plaatsvinden via twee primaire wegen:

  1. Gebruik een generieke OPC UA PubSub-configuratietool die voldoet aan het PubSub-configuratie-informatiemodel. Opmerking: Om aan te sluiten bij het PubSub-configuratie-informatiemodel moeten zowel uitgevers als abonnees zelf als OPC UA-servers functioneren.
  2. Gebruik leverancierspecifieke configuratietools die tegemoetkomen aan de specifieke kenmerken van de applicatie.

De configuratieprocedure omvat het rangschikken van datasets en het bepalen hoe gegevens worden verkregen voor eventuele publicatie. Deze configuratie kan worden gerealiseerd met behulp van het PubSub-configuratiemodel, dat een gestandaardiseerd raamwerk schetst, of kan worden aangepast met behulp van configuratietools die door individuele leveranciers zijn ontworpen om aan hun specifieke aanbod te voldoen.

Hoewel een OPC UA-applicatie vooraf kan worden geconfigureerd om als uitgever te werken, is er vaak aanvullende configuratie nodig om de inhoud te specificeren die in berichten moet worden opgenomen en de frequentie waarmee deze berichten worden verzonden.

Dit maakt het nauwkeurig afstemmen van de berichtinhoud en transmissie-intervallen mogelijk op basis van de behoeften van de applicatie, waardoor effectieve communicatie tussen uitgevers en abonnees in het OPC UA-netwerk wordt gegarandeerd.

Bewezen protocol voor IT- en OT-organisatie

OPC UA over MQTT is een beproefd protocol dat wijdverspreide acceptatie en erkenning heeft gekregen in verschillende industrieën. Het wordt gebruikt in SCADA-systemen (Supervisory Control and Data Acquisition), Manufacturing Execution Systems (MES), industriële IoT-oplossingen en meer.

Veel leveranciers van industriële automatisering, zoals Siemens, Beckhoff en KUKA, bieden OPC UA via MQTT-ondersteuning in hun producten, variërend van PLC's en sensoren tot softwareplatforms. Deze brede steun betekent de volwassenheid van het protocol.

De geschiktheid van OPC UA over MQTT voor IoT-implementaties strekt zich uit tot cloudgebaseerde applicaties. Veel cloudproviders zoals AWS, Azure en GCP bieden protocolondersteuning, waardoor een naadloze integratie van IoT-gegevens in cloudservices voor opslag, analyse en visualisatie mogelijk wordt.

Door OPC UA via MQTT uit te voeren, kunnen de mogelijkheden van OPC UA worden uitgebreid van cloud- naar edge-apparaten en een naadloze integratie in industriële IoT-ecosystemen mogelijk maken.

Beveiliging en authenticatie

OPC UA over MQTT biedt uitgebreide beveiligingsmechanismen, waaronder authenticatie, autorisatie, encryptie en gegevensintegriteit. Het pakt de beveiligingsuitdagingen aan die inherent zijn aan industriële omgevingen, helpt gevoelige gegevens te beschermen en ongeoorloofde toegang te voorkomen.

Beste van twee werelden

OPC UA via MQTT combineert het beste van twee werelden door de sterke punten van OPC UA- en MQTT-protocollen te combineren. Deze integratie biedt efficiënte communicatie, gestandaardiseerde datamodellering en interoperabiliteit, waardoor het een aantrekkelijke keuze is voor industriële en IoT-toepassingen.

Door gebruik te maken van het lichtgewicht karakter van MQTT en de architectuur voor publiceren en abonneren, terwijl de robuuste gegevensrepresentatie en gestandaardiseerde services van OPC UA behouden blijven, biedt OPC UA via MQTT een vrolijke en veelzijdige oplossing voor moderne communicatiebehoeften.

spot_img

Laatste intelligentie

spot_img