OPC og OPC UA – en forklaring

OPC er en af de mest udbredte måder at kommunikere på inden for industriel automation. Læs mere om OPC og OPC UA her.

 

OPC baggrund og evolution

OPC (OLE for Process Control) specifikationen blev defineret af en række leverandører inden for industriel automation sammen med Microsoft tilbage i 1995. Over de efterfølgende 10 år udviklede det sig til at blive den mest udbredte måde at kommunikere på inden for industriel automation uanset branche. Gennem årene har det udviklet sig fra starten med simpel Data Adgang / Data access (DA) over Alarm & Events (AE) til de mere avancerede specifikationer som Historical Data Access (HDA). Der har selvfølgelig altid været behov for yderligere funktionalitet og yderligere formåen, når standarderne anvendes i mere og mere avancerede løsninger. Det var ud af disse behov for især model baserede data samt behovet for at blive mere platformuafhængig, der resulterede i specifikationen for OPC UA standarden. I dag har man derfor også ændret betydningen af OPC til Open Platform Communications. 

Lær mere om Kepware kommunikationsplatform

OPC Fundamentals

OPC stod som sagt oprindeligt OLE for Process Control hvilket med al tydelig viser, at det hele startede med et Microsoft fundament, baseret på OLE og DCOM teknologi. OPC er en Client/Server baseret kommunikation, hvilket betyder at en server afventer forespørgsel fra den enkelte klient. Når en server modtager en forespørgsel, så sender den svaret på forespørgslen og går tilbage i en afventende modus. Klienten har også mulighed for at abonnere på data, som serveren skal sende hvis data ændrer sig. I OPC er det klienten der bestemmer hvornår og hvilke data serveren skal hente fra de underliggende systemer. Dette er også tilfældet når det er abonnementsformen der anvendes. 

OPC Protokollerne

De forskellige OPC protokoller er fuldstændige specifikationer og har ingen afhængigheder eller fællesskab. Dette betyder f.eks. at kvalitetsstemplet i OPC DA ikke har noget fælleskab med kvalitetsstemplet i OPC HDA. I den klassiske OPC model har vi følgende protokoller:
OPC DA (Data Access),
OPC AE (Alarm & Events),
OPC HDA (Historical Data Access),
OPC XML DA (XML Data Access)
OPC DX (Data eXchange).
Hver af disse protokoller har deres egne læse og skrive kommandoer etc. Som kun har indflydelse på den individuelle protokol. Dette er også tilfældet hvor OPC serveren understøtter flere protokoller på en gang. Den ældste og samtidig også den mest anvendte protokol er OPC DA.

OPC Data Access

Den mest basale protokol i stakken er OPC Data Access protokollen, der henter data fra kontrolsystemerne såsom PLC’ere og leverer disse data til HMI/SCADA/SRO og andre tilsvarende systemer i virksomheden. Hver eneste data fra et målepunkt også kaldet et tag (tag er et navnemærke) indeholder ud over målepunktets værdi også andre informationer. Det er navnet (tag) på målepunktet samt et tidsstempel, der fortæller præcist hvornår data blev læst i det underliggende system. Tidsstemplet kan enten komme direkte fra det underliggende system sammen med måleværdien eller kan i nogen tilfælde blive tilføjet af OPC serveren, når denne læser pågældende data. Endelig finder vi information om kvaliteten af det aflæste målepunkt, som giver os viden om hvorvidt data er gyldige eller ej. 

 

OPC Alarm & Events

Den anden protokol i OPC stakken er OPC Alarms & Events. Denne protokol er fundamentalt anderledes end OPC DA protokollen, simpelthen fordi hændelser i sin natur ikke har nogen værdi her og nu. Dette betyder at protokollen altid er en abonnementstype baseret service, hvor klienterne modtager alle hændelser, der opstår over tid. Data er stemplet med et tidsstempel, men der er ikke noget navn (tag) og ej heller nogen information om kvalitet. 

OPC Historical Data Access  

Forskellen mellem OPC DA, OPC AE og OPC HDA er den at OPC HDA indeholder historiske data, og at man kan forespørge på store mængder af data tilbage i tiden. Protokollen understøtter derfor at kunne levere store data sæt for et eller flere målepunkter. OPC HDA blev specificeret således, at vi fik en ensartet måde hvorpå vi er i stand til at trække historiske data ud af SCADA systemer, SRO anlæg eller Historian systemer såsom OSI-PI eller Historian fra GE.

OPC Unified Architecture (UA)

Den mest signifikante forskel mellem de klassiske OPC protokoller og OPC UA er, at OPC UA ikke tager afsæt i hverken OLE eller DCOM teknologi fra Microsoft, hvilket gør OPC UA til den første platformsuafhængige protokol i OPC stakken. OPC UA kan dermed implementeres på enhver tænkelig platform såsom Apple, Linux (JAVA) eller Windows. I dag har man derfor også ændret betydningen af OPC til Open Platform Communications. Den anden meget signifikante forskel er, at OPC UA giver mulighed for at anvende strukturer og modeller. Dette betyder f.eks. at målepunkter kan grupperes i en sammenhæng der afspejler den virkelighed de optræder i, og dermed bliver anvendelsen af data og deres vedligeholdelse meget nemmere. Modellerne kan man forespørge på under drift, hvilket giver brugeren af data helt nye og meget intuitive muligheder.
 

OPC UA informationsmodellen

Informationsmodellen i OPC UA er top moderne. Modellerne kan defineres af leverandørerne af udstyr eller leverandørerne med specielle protokoller som f.eks. BACNet, og det kan være brugeren der definerer endog meget komplekse relationer og forbindelser og knudepunkter. Oplagt er at have data grupperet på en måde således, at det hører til et bestemt stykke udstyr. Hermed kan man nemlig også sikre sig at en hel gruppe af målepunkter, der læses fra et udstyr, alt sammen aflæses på en og samme gang.
 

OPC UA kommunikationslag

OPC UA er som sagt bygget til at være platformsuafhængig og kommunikationen er bygget i lag på toppen af standard TCP/IP stakken. Ovenover standard transportlaget er der 2 lag, det ene håndterer selve sessionen og det andet etablerer en sikker tunnel mellem klient og server. Transport laget er TCP/IP og på toppen af dette SSL, HTTP eller HTTPS. Kommunikationslaget sikrer både forbindelsen, at data ikke korrumperes samt at kommunikationen har sikker afsender og modtager med behørighed, således at kommunikationen ikke kan hackes / kompromitteres. Det hele er baseret på X.509 certifikater der består af 3 dele, hvoraf det ene er en såkaldt peer to peer trust, som nødvendigvis skal udføres manuelt den allerførste gang en forbindelse skal etableres.
 

Løsninger med OPC UA

Indtil videre er OPC UA mest kendt for at bygge bro mellem forskellige OPC servere, også kaldet tunneling. Dette er f.eks. noget som KEPServerEX OPC UA tunnelen tilbyder. Af andre løsninger kan nævnes GE Global Discovery server, som har en fuldt implementeret OPC UA support, der tillader at ‘browse’ alle data strukturer. Dette er stadig ganske bemærkelsesværdigt og usædvanligt; men der foregår også meget arbejde for at overføre modellerne fra BACNet, ISA95 og PLCopen.

 

Downloads

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.

Kontakt os

Udfyld formularen herunder, eller ring til vores salgssupport 43 43 37 17.