Wat is OPC UA?

OPC (OLE for Process Control) is een communicatiestandaard die in 1995 werd ontwikkeld door een aantal grote leveranciers in de industriële automatisering met als doel de onderlinge interoperabiliteit te bevorderen. Ze baseerden zich daarbij op het destijds populaire COM/DCOM protocol van Microsoft. In de daaropvolgende jaren ontwikkelde de standaard zich tot de meest gebruikte manier om te communiceren tussen verschillende automatiseringssystemen. De techniek is in de loop der jaren doorontwikkeld van realtime data-access (DA) via Alarms & Events (AE) tot Historical Data Access (HDA). Uiteindelijk is besloten deze drie standaarden te verenigen in een nieuwe overkoepelende en modelgebaseerde standaard, die niet meer afhankelijk is van COM/DCOM: OPC UA: Unified Architecture.

Client/Server technologie

OPC staat voor OLE for Process Control, waaruit duidelijk blijkt dat het afkomstig is van de Microsoft-community, gebaseerd op de OLE- en DCOM-technologie waarmee destijds programma’s met elkaar communiceerden. OPC is een client / server-gebaseerd protocol, wat betekent dat u een of meer servers hebt die wachten op verzoeken van een of meerdere clients om data. Zodra de server een verzoek ontvangt, antwoordt het hierop en gaat het vervolgens terug naar de wachtstand. Maar de client kan de server ook instrueren om automatisch updates te verzenden wanneer deze bij de server binnenkomen. In OPC is het de client die beslist wanneer en welke gegevens de server zal ophalen van de onderliggende systemen. Dat geldt ook als de client zich abonneert op updates waarbij de client beslist hoe vaak de server deze systemen moet controleren.

OPC Protocollen

De verschillende klassieke OPC-protocollen zijn volledig op zichzelf staand en hebben onderling niets gemeen. Dat betekent dat het kwaliteitsveld in DA geen verbinding heeft met hetzelfde veld in HDA. Momenteel zijn er in het klassieke OPC-model de volgende protocollen; DA (realtime data), AE (alarm & events), HDA (historische data), XML DA (XML-data) en ten slotte DX (gegevensuitwisseling). Elk van deze protocollen heeft zijn eigen lees-en schrijfopdrachten die op dat moment slechts één protocol beïnvloeden. Dus ook wanneer een OPC-server meerdere van deze protocollen ondersteunt. Het meest gebruikte en oudste protocol is de Direct Access (DA) en deze zal hier dan ook verder worden toegelicht.

OPC Data Access

Het oudste en meest eenvoudige protocol van de OPC-stack is het Data Access-protocol dat rechtstreeks gegevens uit de besturingssystemen naar andere systemen op de werkvloer stuurt. Elke stukje data over een specifieke meting of setpoint bevat gestructureerde informatie. Eerst heb je de waarde zelf en natuurlijk de naam ervan. Dan is er nog de datumtijdstempel die u de exacte tijd geeft waarop de waarde werd gelezen. Deze tijdstempel kan direct uit het onderliggende systeem worden overgenomen of worden toegewezen op het moment dat de gegevens op de OPC-server worden gelezen. Het laatste stukje informatie is de Quality, en geeft aan of de gelezen data wel geldig is of niet.

OPC Alarms en Events

Het tweede protocol dat werd toegevoegd aan de OPC-stack was Alarms & Events. Dit protocol is fundamenteel verschillend van het DA-protocol, eenvoudigweg vanwege het feit dat events geen actuele waarde hebben. Dit betekent dat dit protocol altijd een abonnement is waarbij de clients alle gebeurtenissen krijgen die binnenkomen. Qua informatie die bij de events horen, zijn er geen tags en dus ook geen naam en kwaliteit, maar er is natuurlijk een tijdstempel. Zoals in het geval van DA is er ook hier geen opslag van data op de server en als de gebeurtenis eenmaal is overgedragen, vergeet de server dat hij er ooit was.

OPC Historical Data Access

Het verschil tussen DA, AE en HDA is dat HDA historische gegevens bevat en u een groot aantal gegevens uit het verleden kunt opvragen. Het protocol ondersteunt daarom lange recordsets met gegevens voor een of meer gegevenspunten. Het is ontworpen om op een uniforme manier toegang te bieden om historische gegevens op te halen die zijn opgeslagen in Historian-systemen zoals OSI-PI of Historian van GE. Het protocol wordt tegenwoordig niet zo veel meer gebruikt en is met de introductie van OPC UA enigszins verouderd. 

OPC Unified Architecture

Het belangrijkste verschil tussen de klassieke OPC DA, AE, HDA en OPC UA is dat de laatste niet meer gebaseerd is op de OLE- en DCOM-technologie van Microsoft, waardoor het op elk platform kan worden geïmplementeerd zoals iOS van Apple, Linux (JAVA) of nog steeds Windows uiteraard. Een andere zeer belangrijk onderdeel van UA is de mogelijkheid om datastructuren of modellen te gebruiken. Dit betekent dat de datatags of -punten kunnen worden gegroepeerd en een context krijgen die het beheer en onderhoud veel eenvoudiger maken. Deze modellen kunnen tijdens runtime worden opgevraagd, waardoor een client de mogelijkheid krijgt om van de server de beschikbare datastructuren op te vragen.