opc kurs introduksjon · prediktor as opc kurs - opc data access oversikt 22 eksempel på...
Post on 19-Jul-2020
50 Views
Preview:
TRANSCRIPT
Prediktor as OPC Kurs - Del 1 1
OPC kurs
Del 1
v / Olav Aaker – Prediktor AS
OPC Kurs - Del 1 2Prediktor as
Kurset vil omhandle
OPC Foundation
OPC Data Access
OPC Alarms & Event
OPC Historical Data
OPC UA
OPC Kurs - Del 1 3Prediktor as
OPC – hva står det for?
Tidligere: OPC OLE for Process Control
OLE Object Linking and Embedding
Integrasjon av office applikasjoner
OLE Versjon 1 var basert på DDE
OLE Versjon 2 var basert på COM
Nå: Openness Productivity and
Connectivity
OPC Kurs - Del 1 4Prediktor as
COM
Component Object Model
Generell komponent teknologi
Interoperabilitet
Ikke kun for OLE
DCOM Distributed Component Object Model
OPC er basert på COM/DCOM og ikke OLE
(OLE er også basert på COM)
OPC Kurs - Del 1 5Prediktor as
Hvorfor OPC?
Presentasjons lag Applikasjons lag Data lag
Prosessdata
Alarmer og
Hendelser
Tidsserier
Data Analyse
Regulering og
styring
Simulering
Trender og
plott
Operatør
skjermer
Rapporter
Leverandør X
Generasjon N
Leverandør Y
Generasjon N
Leverandør Z
Generasjon N
OPC Kurs - Del 1 6Prediktor as
Løsning: Standardisert grensesnitt muliggjør
bedre strukturPresentasjons lag Applikasjons lag Data lag
Prosessdata
Alarmer og
Hendelser
Tidsserier
Data Analyse
Regulering og
styring
Simulering
Trender og
plott
Operatør
skjermer
Rapporter
OPCOPC
XML
.net
OPC Kurs - Del 1 7Prediktor as
Fordeler med OPC
Reduserte utviklingskostnader for produsenter
Hardware produsenter lager ett sett OPC drivere for
deres produkter istedenfor utvikling og vedlikehold av
multiple sett av drivere.
Produsentene konkurrerer da på verdien av deres
løsninger istedenfor å låse kunden i proprietære
teknologier.
Reduserte integrasjonskostnader for brukere.
Brukere fokuserer på verdiskapende aktiviteter
istedenfor integrasjonsproblemer.
OPC Kurs - Del 1 8Prediktor as
Universalspråk for industriell programvare 1
OPC Server Leverandør X
Fysisk utstyr
IO enhet
OPC Klient applikasjon fra
Leverandør Y
OPC Kurs - Del 1 9Prediktor as
Universalspråk for industriell programvare 2
OPC Data Access 2OPC Data Access 1
OPC Historian
Alarm liste
OPC Data Access X
PLS/IO 1
Prosess utstyr 2
Prosess utstyr 1
Prosess utstyr X
PLS/IO 2PLS/IO X
SCADAMMI / Trender
Avansert Prosess
Styring
OPC Alarms & Events
Manufacturing Execution
System (MES)
OPC Kurs - Del 1 10Prediktor as
Plug & Play for industrielle applikasjoner
Prediktor as OPC Kurs - Del 1 11
OPC Foundation
organisasjonen
OPC Kurs - Del 1 12Prediktor as
OPC Foundations visjon 1
OPC Kurs - Del 1 13Prediktor as
Utvikling – antall medlemmer
1996: 23 medlemmer
2011(hittil): 405 medlemmer
Medlemmer i Europa: 196
Medlemmer i Norge: 8
OPC Kurs - Del 1 14Prediktor as
Norske OPC Foundation medlemmer
Company Name Date Joined
Baze Technology AS 10.04.2008
Fieldnet AS 18.09.2000
Goodtech Projects & Services AS 26.09.2007
Institute For Energy Technology (IFE) 21.08.2001
Kongsberg Maritime AS 28.01.2003
Prediktor AS 25.04.1997
Statoil ASA 09.08.2010
Vianova Eureka AS 11.10.2002
OPC Kurs - Del 1 15Prediktor as
Tilgjengelige server/klienter
Stort økende komponent marked
Mer enn 2500 leverandør bedrifter
Mer enn 15000 produkter
Eksempel: Profibus OPC leverandører
AG-E, Applicom, TwinCAT, Grayhill, Iconics, Ifak
system, NemaSoft, Siemens, Softing, SST, Trebling &
Himstedt
OPC Kurs - Del 1 16Prediktor as
OPC Spesifikasjonene
Utvikles i ”Working Groups”
Basert på frivillig arbeide fra medlemsbedriftene
Tilgjengelig for medlemmer:
Drafts, pre-relase og working group meeting notes
Fritt tilgjengelig for alle:
Ferdige releasede spesifikasjoner (Unntatt OPC UA)
OPC Kurs - Del 1 17Prediktor as
Publiserte OPC Spesifikasjoner 1
OPC Kurs - Del 1 18Prediktor as
Publiserte OPC Spesifikasjoner 2
OPC Kurs - Del 1 19Prediktor as
Relasjoner (”Classic OPC”)
OPC
Alarms & Events
OPC
Data Access
OPCHistorical
Data Access
OPC
Common
OPC
Batch
OPC
XML
OPC
DA Auto
OPC
AE Auto
OPC
HDA Auto
OPC
Batch Auto
OPC
Security
OPC
Command
OPC
Data Exchange
OPC
Complex Data
Prediktor as OPC Kurs - Del 1 20
OPC Data Access
Nå - verdier
OPC Kurs - Del 1 21Prediktor as
Hva brukes OPC Data Access til?
Lesing av nåverdier
Måleinstrumenter
Styresignaler
Beregnede verdier
Skriving av nåverdier
Settpunkt i regulator
Startkriterier i logikk
programmer
OPC Kurs - OPC Data Access Oversikt 22Prediktor as
Eksempel på systemarkitektur 1
OPC Data Access server 2OPC Data Access server 1
OPC Data Access server X
PLS/IO 1
Prosess utstyr 2
Prosess utstyr 1
Prosess utstyr X
PLS/IO 2PLS/IO X
SCADA
OPC Data Access klient
MMI
OPC Data Access klient Avansert Prosess
Styring
OPC Data Access klient
Manufacturing Execution
System (MES)
OPC Data Access klient
OPC Kurs - Del 1 23Prediktor as
Logisk objektmodell mot klient
OPCServer
OPCGroupOPCGroup
OPCGroup(s)
OPCItem(s)OPCItem(s)OPC Item(s)
OPCItem(s)OPCItem(s)OPC Item(s)
OPCItem(s)OPCItem(s)OPCItem(s)
OPC Properties
OPC Kurs - Del 1 24Prediktor as
OPC Data Access 2.04 Server navnerom aksess (item-browsing)
Klient basert item-gruppering
Utveksling av nåverdier data
Gruppe lesing
Synkron lesing
Asynkron lesing
Abonnement (på 2 måter)
Gruppe skriving
Synkron skriving
Asynkron skriving
Asynkron skriving med tilbakekall
Et item har
Verdi
Kvalitet
Tidsstempel
Aksess rettighet
Properties
OPC Kurs - Del 1 25Prediktor as
OPC Server
Lar klienten opprette og vedlikeholde en samling med
grupper
Lar klienten ”browse” i navnerommet til serveren
Flatt eller hierarkisk navnerom
Leverer ItemID til klient
Filtrere
Aksess rettighet (lese/skrive)
ItemID med ”wildcard” streng
Data type
Lar klienten aksessere Item properties (OPC 2.0)
OPC Kurs - Del 1 26Prediktor as
Eksempel på navnerom browsing
OPC Kurs - Del 1 27Prediktor as
OPC Gruppe
Lar klienten opprette og vedlikeholder en samling med OPC Items
Utfører lese og skrive operasjoner Synkront eller asynkront
Leser fra CACHE eller DEVICE
Sender abonnements basert oppdatering til klienten Dødbåndsbasert: % variasjon innenfor itemenes range
Minste oppdateringsintervall angis i gruppen
Oppdatering kan akttiveres/deaktiveres for Hvert item
Hele gruppen
Kan konfigureres til å operere innenfor forskjellige språk
OPC Kurs - Del 1 28Prediktor as
OPC Item ItemID
Unik for hvert Item
Eksempel: Apis.SoftPLC.Variabe2
Oversettes til en 32 bits OPCHANDLE for effektiv referanse
Verdi
Flyttall (enkel/dobbel presisjon)
Heltall (8/16/32 bits)
Boolean (digital)
Tekst
Dato/tid
Array (vektor) av alle typene over
Kvalitet
Forteller noe om verdien
God, dårlig eller usikker
Og årsaken til kvaliteten
Tidsstempel
UTC (GMT)
NT FILETIME, dvs 100-nanosekund oppløsning siden 01.01.1601
Eks: 17.09.2001 11:17:49.745
Aksess rettighet
Read, Write eller Read & Write
OPC Kurs - Del 1 29Prediktor as
OPC DA kvaliteterQuality value Description
OPC_QUALITY_BAD The value is bad but no specific reason is known
OPC_QUALITY_CONFIG_ERROR There is some server specific problem with the configuration. For example the item is question has been deleted
from the configuration.
OPC_QUALITY_NOT_CONNECTED The input is required to be logically connected to something but is not.
OPC_QUALITY_DEVICE_FAILURE A device failure has been detected
OPC_QUALITY_SENSOR_FAILURE A sensor failure had been detected (the ‟Limits‟ field can provide additional diagnostic information in some
situations.)
OPC_QUALITY_LAST_KNOWN Communications have failed. However, the last known value is available. Note that the „age‟ of the value may be
determined from the TIMESTAMP in the OPCITEMSTATE.
OPC_QUALITY_COMM_FAILURE Communications have failed. There is no last known value is available.
OPC_QUALITY_OUT_OF_SERVICE The block is off scan or otherwise locked This quality is also used when the active state of the item or the group
containing the item is InActive.
OPC_QUALITY_UNCERTAIN There is no specific reason why the value is uncertain.
OPC_QUALITY_LAST_USABLE Whatever was writing this value has stopped doing so. The returned value should be regarded as „stale‟.
OPC_QUALITY_SENSOR_CAL Either the value has „pegged‟ at one of the sensor limits or the sensor is otherwise known to be out of calibration
via some form of internal diagnostics
OPC_QUALITY_EGU_EXCEEDED The returned value is outside the limits defined for this parameter.
OPC_QUALITY_SUB_NORMAL The value is derived from multiple sources and has less than the required number of Good sources.
OPC_QUALITY_GOOD The value is good. There are no special conditions
OPC_QUALITY_LOCAL_OVERRIDE The value has been Overridden. Typically this is means the input has been disconnected and a manually entered
value has been „forced‟.
OPC Kurs - OPC Data Access Oversikt 30Prediktor as
OPC Properties
Assosierte data til et item
Beskrivelse
Ingeniør enhet
Skalerings område
.... Side 19 i OPC Data Access Custom Interface Standard 3.0
Egen definerte properties kan brukes
Kan aksesseres uten å lage en gruppe
OPC Kurs - Del 1 31Prediktor as
Dynamikk i objektmodell
OPC
Gruppe 1
OPC
Gruppe 2
Root
OPC Item
1a
OPC Item
1b
OPC Item
2a
OPC Item
2b
OPC
Server Obj
OPC
Klient
Node a
Node b
Node c
Leaf 1
Leaf 2
Leaf 3
Leaf 4
Leaf 5
Leaf 6
Navnerom
OPC Name
Space
Browser
OPC Kurs - Del 1 32Prediktor as
Automation versjon
Det er to typer av COM interface
Custom
Bruker C/C++ arrays (vektorer) og strenger (tekst)
Kan brukes fra C og C++
Automation
Bruker kun Automation compliant typer
Har byttet C array med SAFEARRAY
Har byttet C strenger med BSTR
Kan brukes fra Visual Baisc, MS Office, Delphi, J++ m.m.
OPC Foundation publiserer custom interfacer og lager
Automation wrappere
OPC Kurs - Del 1 33Prediktor as
Custom/Automation relasjon
OPC Automation
Interface
OPC Custom Interface
Lokal eller Remote
OPC Server
(delt av mange
klienter)
Server Data Cache
Fysisk Device/DataBase
Data
OPC
Automation
Wrapper
Visual Basic
Applikasjon
C, C++,
Delphi
OPC Kurs - Del 1 34Prediktor as
Nå finnes også .Net wrapper
OPC .Net API
OPC Custom Interface
Lokal eller Remote
OPC Server
(delt av mange
klienter)
Server Data Cache
Fysisk Device/DataBase
Data
OPC .Net
Wrapper
.Net managed code:
C#, VB.net, J#, C++,
COBOL, Perl, Eiffel,
Python, Pascal, Fortran,
Oberon, SmallTalk, ML
C, C++, Delphi
OPC Kurs - Del 1 35Prediktor as
OPC versus Corba , MITS og Java
OPC Server
DCOM
TCP-IP / UDP IPX / HTTP
OPC ClientC/C++JavaVB
Delphi
MITS Server
TCP-IP
MITS Client
C / C++?
Corba
TCP-IP / UDP
?
C++Java
RPCRPC
?
Java VM
TCP-IP
Java beans?
Java
RMI
OPC Kurs - Del 1 36Prediktor as
Basis COM objekt modell
ISomeInterface
IUnknown
COM Server
ObjectCOM Client
Object
OPC Kurs - Del 1 37Prediktor as
COM Interfacer Er kontrakten mellom klient og server
Klient kan ikke se annet enn metodene i interfacet (black box)
Alle arver fra IUnknown
AddRef()
Release()
QueryInterface()
Alle metoder returnerer en HRESULT
32 bits returkode
Negative er feil, positive er suksess
Koder er definert av Microsoft, OPC Foundation og produkt leverandør
Eks.: S_OK, E_FAIL, OPC_E_BADRIGHTS
Skrives i Interface Definition Language (IDL)
Tekst fil med C++ lignende syntax
Registreres i OS med en Type Library (TLB)
Kompilert versjon av en IDL fil
Eks.: side 170 i OPC Data Access Custom Interface Specification 2.04
COM er spesifisert på binær form og dermed språkuavhangig
Livssyklus kontroll
Eksponerer funksjonalitet
(nye COM Interfacer)
OPC Kurs - Del 1 38Prediktor as
Client Component
I samme prosessHurtig, direkte funksjonskall
Client ComponentCOM
Client Process Server Process
På samme maskinHurtig, sikker IPC
Mellom maskinerSikker, pålitelig og fleksibel DCE-RPC
basert DCOM protocol
COMDCE
RPCClient
Server MachineClient Machine
COM Component
Local / remote transparens
OPC Kurs - Del 1 39Prediktor as
COM Objekter
Implementerer ett eller flere interfacer
Reference counting - “Poor mans” garbage collection
OPC Server og OPC Group er typiske COM objekter
ISomeInterface
IUnknown
IAnotherInterface
COM Server
Object
OPC Kurs - Del 1 40Prediktor as
OPC Gruppe objektet
IUnknown
IOPCItemMgt
IOPCGroupStateMgt
[IOPCPublicGroupStateMgt]
IOPCSyncIO
IOPCASyncIO2
IConnectionPointContainer
[IOPCASyncIO] old
[IDataObject] old
Standard
OPC Group
Object
Prediktor as OPC Kurs - Del 1 41
OPC Alarms & Events
Hendelser
OPC Kurs - Del 1 42Prediktor as
Hva brukes OPC Alarms & Events til?
Rapportering og overvåking av hendelser
Diskrete alarmer, nivå alarmer
Advarsler
Informasjon – for eksempel: Batchen har nådd
trinn 2
OPC Kurs - OPC Alarms & Events 43Prediktor as
Eksempel på systemarkitektur
OPC Data Access Server 2OPC Data Access Server 1
OPC Data Access Server X
PLS/IO 1
Prosess utstyr 2
Prosess utstyr 1
Prosess utstyr X
PLS/IO 2PLS/IO X
OPC Alarms & Events Klient 1
OPC Alarms & Events Server
OPC Alarms & Events Klient 2 OPC Alarms & Events Klient X
OPC Kurs - Del 1 44Prediktor as
OPC Alarms & Events
Deteksjon av Alarmer og/eller Hendelser En eller flere kilder
Rapportering til en eller flere klienter Abonnement på eventer
Filtrering
Typiske klienter Operatør stasjoner
Alarm/Event logging komponenter
Alarm/Event håndterings subsystemer
OPC Kurs - Del 1 45Prediktor as
Logisk Objekt ModellOPC Event
Server
OPC Event
SubscriptionOPC Event
Subscription
OPCItem(s)OPCItem(s)
OPC Condition(s)
Attributes
OPC Event
Subscription(s)
OPCItem(s)OPCItem(s)OPC Sub
Condition(s)
OPC Event
SubscriptionOPC Event
SubscriptionOPC Source(s)
OPC Kurs - Del 1 46Prediktor as
3 event typer i spesifikasjonen
Simple Eksempel: en komponentfeil meldt av systemet
Condition – relaterte Eventer er assosiert med betingelser
Eventer er tranisisjoner inn og ut av tilstander representert av Conditions og SubConditions
Eksempel: FIC101 har oppnådd NivåAlarm Condition med HighAlarm som SubCondition
Tracking – relatert Ikke assosiert med betingelser
Hendelser rundt operatørers interaksjon med mål objekter
Eksempel: Setpunkt for FIC101 ble endret av operatørX
OPC Kurs - Del 1 47Prediktor as
Event kategorier
Er ikke fastlagt, men definert i hver enkelt server
En kategori kan bare tilhøre en Event Type
En kategorier kan brukes til grupperinger av
eventer
Eksempel: Process Events, System Events, Batch
Events
OPC Kurs - Del 1 48Prediktor as
OPC Condition
OPCSource OPCCondition
has1 0..N
Attributes:
Name
…
…
...
Attributes:
Name
Active
ActiveSubCondition
Quality
Enabled
Acked
LastAckTime
SubCondLastActive
CondLastActive
LastInactive
AcknowledgerID
Comment
OPCSubCondition
Attributes:
Name
Definition
Severity
Description
has1 1..N
OPC Kurs - Del 1 49Prediktor as
Severity - alvorlighetsgrad
OPC Severity Range Device Severity OPC Severity
15 1000
14 955
13 910
12 865
11 820
10 775
9 730
HIGH (667 – 1000)
8 685
7 650
6 575
5 500
4 425
MEDIUM (334 – 666)
3 350
2 300
1 150
LOW (1 – 333)
0 1
OPC Kurs - OPC Alarms & Events 50Prediktor as
Anbefalte
kategorier og
conditions
Event Type Event Category Condition
Condition Related Level PVLEVEL (Multi State)
SPLEVEL (Multi State)
LO_LO (Single State)
LO (Single State)
HI (Single State)
HI_HI (Single State)
Deviation DV_LO (Single State)
DV_HI (Single State)
Discrete CFN
TRIP
COS
Statistical
System Failure SYSTEM_FAILURE
Simple Device Failure
Batch Status
System Message
Tracking Operator Process Change
System Configuration
Advanced Control
OPC Kurs - Del 1 51Prediktor as
Tilstandsmaskin for en OPCondition
Active-Unacked-Enabled
Inactive-Acked-Enabled
Inactive-Unacked-Enabled
Active-Acked-Enabled
Becomes Active
Send ”Condition active”
notification
Invalid Ack Received
Ignore
Becomes Active
Send ”Condition Active”
notification
Becomes Inactive
Send ”Condition inactive”
notification
Disabled
Disable Received
Send ”Disabled”
notification
Enabled, ...
(For all enabled states)
Sub-condition changes
Send notfication of
new sub-condition
Enable Received
Send “Enabled”
Notification
Sub-condition changes
Send notfication of
new sub-condition
Valid Ack Received
Send ”Acknowledged”
notification
Quality changes
Send ”Quality Changed”
notification
Invalid Ack Received
Ignore
Becomes Inactive
Send ”Condition
inactive”
notification
Valid Ack Received
Send ”Acknowledged”
notification
OPC Kurs - Del 1 52Prediktor as
OPCEvent NotificationEvent Type Hierarchy
OPCSimpleEventNotification
Standard Attributes:
SourceTimeTypeEventCategorySeverityMessage
Vendor-Specific Attributes:(Attributes defined by the serverimplementer)
OPCTrackingEventNotification
Standard Attributes:
ActorID
Vendor-Specific Attributes:(Attributes defined by the serverimplementer)
OPCConditionEventNotification
Standard Attributes:
ConditionNameSubConditionNameNewStateQualityAckRequiredActiveTimeCookieActorID
Vendor-Specific Attributes:(Attributes defined by the serverimplementer)
is-a
OPC Kurs - Del 1 53Prediktor as
Kriterier for event notifikasjon
BufferTime
Bestemmes av klient
Verdien er i Millisekunder
Sender ikke notfikasjoner oftere enn dette (hvis MaxSize = 0)
0 betyr å sende så ofte som mulig
MaxSize
Bestemmes av klient
Setter begrensninger på antall eventer som sendes om gangen
OPC Kurs - Del 1 54Prediktor as
Event Filtere
Eventer kan bli selektert ut i fra forskjellige filtrerings kriterier
Event typer: Simple, Condition, Tracking
Event Kategorier
Lowest Severity
Highest Severity
Process Areas (ansvars områder)
Event Sources (tager)
Prediktor as OPC Kurs - Del 1 55
OPC Historical Data Access
Hente historiske data
OPC Kurs - Del 1 56Prediktor as
Relasjoner til andre
spesifikasjoner
OPC
Alarms & Events
OPC
Data Access
OPCHistorical
Data Access
OPC
Common
OPC
Batch
OPC
XML
OPC
DA Auto
OPC
AE Auto
OPC
HDA Auto
OPC
Batch Auto
OPC
Security
OPC
Command
OPC
Data Exchange
OPC
Complex Data
OPC Kurs - Del 1 57Prediktor as
Hva brukes OPC Historical Data Access til?
Lesing av historiske verdier
Trender av målepunkter
Enkel bearbeiding av historiske data
Statistikk
Eksponerer et standardskjema mot
databaseklienter
OPC Kurs - Del 1 58Prediktor as
Eksempel på systemarkitektur
OPC Data Access Server 2OPC Data Access Server 1
OPC Data Access Server X
PLS/IO 1
Prosess utstyr 2
Prosess utstyr 1
Prosess utstyr X
PLS/IO 2PLS/IO X
OPC Historical Data Access Klient 1
OPC Historical Data Access Server
OPC Historical Data Access Klient 2OPC Historical Data Access Klient X
OPC Kurs - Del 1 59Prediktor as
OPC Historical Data Access formål
Standard grensesnitt for kommunikasjon av historiske data mellom applikasjoner fra ulike leverandører
Designet for tidsserie basert datahåndtering, kontra SQL for relasjonsdata
En standard som tar hensyn til krav om høy ytelse; både for store datamengder og med hensyn til kompleksitet for spørringer
Fleksibilitet, oppnås via mye valgfri funksjonalitet
OPC Kurs - Del 1 60Prediktor as
OPC Historical Data Access innhold
Lesing og skriving av data for prosess-
/tidsseriedatabaser
Aksessering av serverens navnerom
(namespacebrowsing)
Historiske data med attributter, tidsstempel og kvalitet
Støtte for annoteringer og aggregerte data
Støtte for avspilling av historiske data
OPC Kurs - Del 1 61Prediktor as
Logisk modell
OPC HDA Server Namespace Browser
OPC HDA Items
Attributes
OPC Kurs - Del 1 62Prediktor as
OPC HDA items
OPC HDA items er tagger med historiske data
Alle OPC HDA items har en unik ItemID som brukes for å identifisere og adressere itemet
Støtter datatyper som for OPC Data Access
Et item har tilhørende attributter som definert støttet av OPC HDA serveren
OPC HDA servere kan støtte historikk over attributtverdier
OPC Kurs - Del 1 63Prediktor as
Generelle OPC HDA attributter Item ID
Itemets unike ItemID i HDA serveren (tagnavn)
Datatype Datatypen til itemet, flyttal, heltall, boolean, etc.
Description Beskrivelse av itemet
Engineering units Fysisk måleenhet
Stepped Om data skal vises interpolert eller som firkantpuls
Archiving Om logging er aktiv for item
Derive equation En ligning for å transformere verdiene
Node name Navnet til itemets kilde, f.eks. maskinnavn eller IP adresse til en OPC DA server
Process name Prosessnavnet til itemets kilde, f.eks. navnet til en OPC DA server (ProgID)
Source name Itemets navn hos kilden, f.eks. ItemID-en hos en OPC DA server
Source type Hva slags type kilde itemet har, f.eks. ”OPC” for item som kommer fra en OPC DA
server
OPC Kurs - Del 1 64Prediktor as
Flere attributter Normal maximum
Normal makismal verdi, brukes ved skalering av trender
Normal minimum Normal minimal verdi, brukes ved skalering av trender
Maximum time interval Det maksimale tidsinterval mellom to verdier i historikken, ny verdi skal lagres etter
denne periode. Påvirker hvordan data blir historisk lagret.
Minimum time interval Det minimale tidsinterval mellom to verdier i historikken, ny verdi skal ikke lagres
innenfor denne periode. Påvirker hvordan data blir historisk lagret.
Exception deviation Minimums endring i verdi før ny verdi lagres. Påvirker hvordan data blir historisk
lagret.
Exception deviation type Om Exception deviation er angitt som absoluttverdi, prosent av verdi eller prosent av
verdispenn (HighEntryLimit - LowEntryLimit). Påvirker hvordan data blir historisk lagret.
High entry limit Øvre gyldige grense for verdi. Påvirker hvordan data blir historisk lagret.
Low entry limit Nedre gyldige grense for verdi. Påvirker hvordan data blir historisk lagret.
I tillegg kan det defineres server spesifikke attributter
OPC Kurs - Del 1 65Prediktor as
Spesifisering av tidsintervaller
Tidsintervaller for uthenting av data
Kan spesifiseres i absolutt og/eller relativ tid
Angitt forlengs eller baklengs
Tider er alltid oppgitt i universal coordinated time (UTC)
Absolutt tid eksempel:
Starttid: 10/09/2001 10:00:00
Sluttid: 10/09/2001 12:00:00
Relativ tid:
Syntaks: Keyword+-Offset+-Offset…
Keywords: NOW, YEAR,MONTH, WEEK, DAY, HOUR, MINUTE, SECOND
Offsets: Y, MO, W, D, H, M, S
Relativ tid eksempel for ukesrapport:
Starttid: WEEK-1W
Sluttid: WEEK
OPC Kurs - Del 1 66Prediktor as
OPC HDA dataverdi kvaliteter
Kvalitets verdi Beskrivelse Assosiert DA
kvalitet
OPCHDA_EXTRADATA Mer enn en dataverdi eksisterer ved angitt
tidspunkt
Good, Bad,
Quest.
OPCHDA_INTERPOLATE
DInterpolert dataverdi Good, Bad,
Quest.
OPCHDA_RAW Rå dataverdi Good, Bad,
Quest.
OPCHDA_CALCULATED Beregnet dataverdi (aggregat verdi) Good, Bad,
Quest.
OPCHDA_NOBOUND Ingen dataverdi funnet som øvre eller nedre
bounding verdi
Bad
OPCHDA_NODATA Ingen data verdi tilgjengelig. Eks. datalagring
inaktiv i etterspurt tidspunkt
Bad
OPCHDA_DATALOST Datalagring startet/stoppet/mistet i etterspurt
tidspunkt
Bad
OPCHDA_CONVERSION Skalerings eller konverteringsfeil Bad, Quest.
OPCHDA_PARTIAL Aggregert verdi for et ufullstendig intervall Good, Bad,
Quest. HDA kvaliteter har DA kvalitet innlemmet i seg
OPC Kurs - Del 1 67Prediktor as
Aggregerte dataverdier
Aggregater = beregnede/avledede verdier
Aggregater beregnes av OPC HDA server ved forespørsel, foreligger ikke som lagrede verdier
Aggregater hentes ut over en tidsperiode, som igjen deles opp i mindre sub-intervaller
Eks: Middelverdi for hvert minutt siste time
Tidspunktene for hver aggregert verdi er justert til start tiden for hvert sub-intervall
Valgfritt av OPC HDA servere å støtte dette
OPC Kurs - Del 1 68Prediktor as
OPC HDA aggregater Interpolated lineært interpolerte verdier
Totalized totalisert (summert) verdi
Average gjennomsnittsverdi
TimeAverage tidsveiet gjennomsnitt
Count antall råverdier i sub-intervallet
StdDev standard avvik
MinimumActualTime minste verdi i sub-intervallet med eksakt tidspunkt
Minimum minste verdi i sub-intervallet
MaximumActualTime største verdi i sub-intervallet med eksakt tidspunkt
Maximum største verdi i sub-intervallet
Start verdien ved starten av sub-intervallet
End verdien ved slutten av sub-intervallet
Delta End – Start
RegSlope Stigningstallet til regresjonslinjen over sub-intervallet
RegConst Verdien til regresjonslinjen ved starten av sub-intervallet
RegDev Standardavviket fra regresjonslinjen over sub-intervallet
OPC Kurs - Del 1 69Prediktor as
OPC HDA aggregater forts.
Variance Variansen over sub-intervallet
Range Differansen mellom Minimum og Maximum
DurationGood Varighet i sekunder med dataverdier med goodkvalitet
DurationBad Varighet i sekunder med dataverdier med bad kvalitet
PercentGood Andel i prosent av dataverdier med good kvalitet
PercentBad Andel i prosent av dataverdier med bad kvalitet
WorstQuality Den verste kvalitet i sub-intervallet
Annotations Antall annoteringer i sub-intervallet
I tillegg kan det defineres server spesifikke aggregater ved behov
OPC Kurs - Del 1 70Prediktor as
Demo: APIS Process Explorer
Prediktor as OPC Kurs - Del 1 71
OPC Unified
Architecture
Nyeste spesifikasjon
Prediktor as OPC Kurs - UA I72
Motivasjon
Samler alle eksisterende spesifikasjoner i en helhetlig
modell
Forenkler bruk av integrert funksjonalitet
Legger til ny sentral funksjonalitet
Støtter kompliserte/rike informasjonsmodeller
Er tilgjengelig på andre plattformer enn Win32
Erstatter DCOM med SOA (Server Oriented
Architecture)
Prediktor as OPC Kurs - UA II73
Feles basis objekt modell basert på fellesnevnere i
tidligere konsepter
OPC UA Objekt
Variable
___
___
___
Metoder
___()
___()
___()
Eventer
OPC DA og HDA
OPC abonnement og OPC A&E
OPC Commands
Prediktor as OPC Kurs - UA I74
Nye funksjonelle områder Methods (Commands) og Program support
Generisk event modell – ikke bare for alarm type eventer
Complex data support
Event history
Sletting/oppretting av noder
Endring av properties
Støtte for å bygge redundans mekanismer
Støtte for relasjonsmodeller mellom objekter
Prediktor as OPC Kurs - UA II75
OPC UA Address Space
‟Full mesh‟ nettverks modell
Ubegrenset antall typede relasjoner
Views brukes for å representere hierarkier
Dette er basis for å realisere nye informasjonsmodeller på toppen av
UA
Root
Feltbuss Sensor bus Areas
Trykk
transmitterVentil Area1
Typede relasjoner eksempel:
Tradisjonelt Hierarkisk navnerom (DA / AE / HDA)
Prediktor as OPC Kurs - UA II76
Pipeline A Control Valve A1
Control Valve A2
Flow
Transmitter A2
Flow
Transmitter A1
Temperature
Transmitter A1
Pressure
Transmitter A1
Typede relasjoner eksempel:
UA Navnerom
Prediktor as OPC Kurs - UA II77
Pipeline A Control Valve A1
Control Valve A2
Flow
Transmitter A2
Flow
Transmitter A1
Temperature
Transmitter A1
Pressure
Transmitter A1
organizes
organizes
organizes
organizes
organizes
organizes
has component
has component
has component
has component
Prediktor as OPC Kurs - UA I78
OPC Foundation - samarbeider med andre
standardiseringsorganisasjoner
ISA (S88, S95, S99)
MIMOSA
IEC
OAGi
EDDL
FDT
PLCOpen
automation.com
MS MUG & NAMUR
OPCconnect.com
……
top related