OPC och OPC UA
- en förklaring

OPC är en av de mest använda sätten att kommunicera inom automationsområdet. Förstå och lär dig mer om OPC och OPC UA nedan.

 

OPC bakgrund och utveckling

OPC (OLE for Process Control) blev först utvecklat av ett antal aktörer inom automationsbranschen tillsammans med Microsoft redan 1995. Under de följande tio åren blev OPC det mest användbara sättet att kommunicera inom automationsområdet i alla typer av industri. Sedan fortsatta utvecklingen från grunden med data access (DA) vidare till Alarms och händelser (AE) och senare till mera avancerade protokoll såsom Historisk data access (HAD) och än mera avancerade funktioner. Dock fanns det hela tiden behov och begränsningar som OPC inte täckte vart efter kontrollsystemen blev allt mera avancerade. Det var ur dess behov av modell baserad data och mera plattformsoberoende som OPC UA uppstod.

Läs mer om Kepware kommunikationsplattform

OPC grunderna

OPC står för OLE for Process Control som visar väl att detta kommer från ett samarbete med Microsoft, baserat på OLE och DCOM teknologi. OPC har en Client/Server baserat kommunikationsarkitektur vilket innebär att du har en eller flera serverar som väntar på att klienter skall ställa frågor till dem som de kan svara på. När en server väl fått en fråga och svarat på denna går den tillbaka till att vänta på nästa fråga. Men klienten kan även instruera servern att sända uppdateringar vart efter sådana inkommer till servern. I OPC är det klienten som bestämmer när och vilken data som server skall hämta fårn de underliggande systemen. Detta är också sant när klienten instruerat servern att sända vidare data i vilket fall klienten bestämmer hur ofta hämtning skall ske. 

OPC Protokoll eller typer

De olika klassiska OPC protokollen är totalt självständiga och har egentligen inget gemensamt. Detta innebär att kvalitetsfältet i DA inte har någon koppling till samma fält i HDA. Nu i de klassiska OPC modellen har du tillgång som mest till följande protokoll; DA (Data access), AE (Alarm & Events), HDA (Historical Data Access), XML DA (XML Data Access) samt DX (Data eXchange). Varje enskilt protokoll har sina egna läs, skriv etc kommandon som endast påverkar ett protokoll. Detta är sant även om en enskild OPC server stödjer flera av OPC protokollen. Det äldsta och mest använda protokollet är data access (DA) och i nästa avsnitt kommer detta att förklaras närmare. 

OPC Data Access

Det mest rudimentära protokollen i OPC sviten är Data Access protokollet som hämtar data från kontrollsystemen till andra system på fabriksgolvet. Varje enskild data punkt eller tag innehåller ett antal informationsfält. Först har du förstås värdet på datapunkten, Value och sedan förstås namnet på den, Name. Till detta kommer ett antal fält som beskriver kontexten kring värdet och det är tiden då den hämtades, TimeStamp och om data är ok, Quality. Tidsstämplingen av datan kan göras antingen i OPC servern eller i underliggande kontrollsystem.  

 

OPC Alarm & Events

Det andra protokollet som adderades till OPC var Alarms & Events. Detta protokoll är fundamentalt annorlunda än DA helt enkelt för att händelser inte har ett värde. Detta innebär att alltid är en prenumerationsbaserad tjänst där att klienter får alla händelser som kommer in. Den information som kommer med varje händelse och därför finns varken Name eller Tag fält. Dock finns både TimeStamp och Quality som fält till varje händelse då det är mycket relevant att hålla reda på detta kring händelser. Dessutom finns det inte som kan vara fallet i DA något lager av information i servern utan när väl händelsen sänts ut finns inga spår av den i servern.

OPC Historical Analysis

Skillnaden mellan DA, AE och HDA är att HDA innehåller historisk data, som namnet antyder, som kan hämtas I stora eller små portioner från server. Protokollet stödjer därför långa data sets med data från en eller flera data punkter. Det var designat för att på ett strukturerat sätt få ut och distribuera historisk data lagrad i SCADA eller Historian system såsom OSI-PI eller GE Historian. Protokollet är inte så använt idag och nu med introduceradet av OPC UA blir det troligen än mindre använt. 

OPC Unified Architecture (UA)

Det finns många skillnader mellan klassisk OPC och OPC UA men den viktigaste är att OPC UA, till skillnad from OPC, inte beror av OLE eller DCOM teknologi från Microsoft. Detta innebär att det är möjligt att implementera OPC UA på vilken plattform du vill, t.ex. Apple, Linux (JAVA) eller Windows. Den andra stora skillnaden är att OPC UA har möjligheten att arbeta med strukturer eller modeller. Detta innebär att data taggar eller punkter kan grupperas och ges mera kontext vilket gör underhåll och styrning enklare. Modellerna kan dessutom definieras under drift vilket gör det möjligt att utforska möjligheterna hos en server bara genom att fråga efter vilken typ av data den har.
 

OPC UA Information Modelling

Informationsmodellerna som finns I OPC UA är mycket moderna och ger stora möjligheter. Dessa kan definieras av tillverkare eller via protokollen såsom BACNet men det kan också innehålla MESH strukturer där komplexa relationer skapas mellan noder och data punkter. Dessutom finns möjligheten att låsa strukturer så att data punkter alltid läses samtidigt, vilket är viktigt i vissa typer av applikationer.
 

OPC UA Communication layers

Det har redan sagts att OPC UA är byggt för att vara plattforms oberoende och kommunikationen är byggd I lager ovanpå en standard TCP/IP stack. Ovanför standard protokollen i TCP/IP finns det två lager, ett som hanterar sessionen och ett för att etablera en säker kanal mellan klienten och servern. Transport lagret består av TCP/IP och ovanpå detta SSL, HTTP eller HTTPS. Kommunikationslagret säkerställer att data inte kan påverkas samt att den faktiskt kommer från rätt källa. Detta görs via X.509 certifikat och kräver att man initialt upprättar Peer-to-peer kopplingen manuellt och därefter går allt automatiskt. .
 

Applikationer med OPC UA

Så här långt används OPC UA mestadels för att brygga mellan olika OPC servrar, det som kallar för tunnling. Detta är till exempel vad KEPServerEX OPC UA tunnel gör. Andra applikationer som existerar idag är GE Global discovery server som kan skanna hela system och visualisera dem och dessutom kommer det nu PLC system med OPC UA inbyggt, t.ex. GE Rx3i. Så även om det inte finns så många applikationer idag så arbetas det febrilt med nya saker och att överföra data modeller som BACNet, ISA95 och PLCopen pågår idag. 

 

Hämtningsbara filer

Configuration Manager Help: OPC UA

OPC Unified Architecture (UA) is an open standard created by the OPC Foundation with help from dozens of member organizations.

Quick Client Help: OPC

The OPC Quick Client assists in the testing and development of the OPC Data Access 1.0 and 2.0 servers. It supports both local and remote OPC server connections. Remote connections are handled through the operating system's DCOM interface.

Kontakta oss

Fyll i formuläret nedan eller ring vår säljsupport +46 (0)40 31 69 55.