http://www.opcfoundation.org/
Integrazione delle Informazioni
Windows 3.1
Windows-95
Windows NT
Client Applications
Business Management
Windows NT
Operator Console
RT/History Data
Server
Windows NT
RT/History Data
Server
Windows NT
Operator Console
Plant Highway
Plant Highway
Process Management
Controller
Fieldbus
Fisher
Measurement
-Pressure
Valves
-Temp
Positioners
-Flow
-Level
Coriolis
Analytical
PD Meters
Common Head -Simple -Analog I/O Handheld
Configuration and
PDA
-Complex -Discrete I/O
Maintenance
-TC/RTD
Field Management
 Primo livello: Field Management.
A questo livello le informazioni
sono relative ai dispositivi di
campo
 Secondo livello: Process
Management. Comprende i
Sistemi di Controllo Distribuiti
(DCS) e i sistemi SCADA per il
controllo dei processi
 Terzo livello: Business
Management. In questo livello si
integrano le informazioni raccolte
dal processo con i sistemi per la
gestione finanziaria.
Integrazione delle Informazioni
Necessità di accedere ai dati di campo da qualunque
parte dell’impianto
Visione omogenea dei dati
superamento di differenti codifiche client/server
Indipendenza dei programmi dalle caratteristiche
hardware/software della sorgente dati
nessuna necessità di sviluppare driver
OPC: OLE for Process Control
Scopo: fornire una visione unica ed indipendente dalla
sorgente dei dati prodotti in un impianto industriale
Si basa su tecnologie consolidate in ambiente
Windows:
Distributed Component Object Model (DCOM). Modello per
la comunicazione tra applicazioni Windows attraverso reti di
comunicazione.
Component Object Model (COM). Modello per la
comunicazione tra applicazioni Windows locali.
OLE 2
XML Web Services
OPC: OLE for Process Control
OPC è un’architettura client/server che permette ad
una qualsiasi sorgente di dati (Server) di comunicare
in modo standard con qualsiasi altro processo (Client)
dotato della stessa interfaccia.
I fornitori hardware offrono un Server OPC, che
permette a qualsiasi applicazione Client di accedere ai
dati da esso pubblicati.
Vantaggio principale di OPC:
Indipendenza da una tecnologia proprietaria.
OPC: OLE for Process Control
Application Y
Application X
...
OPC Interface
OPC Server
A
Application
OPC I/F
OPC Interface
OPC Server
B
OPC Server
C
OPC I/F
SCADA
System
Physical I/F
Physical
I/O
OPC
Server
Physical I/F
Physical
I/O
Storia di OPC
Lo sviluppo di prodotti informatici nel campo
dell'automazione ha comportato la necessità di
sviluppare centinaia di drivers di comunicazione per
garantire l'interoperabilità tra prodotti diversi
Lo sviluppo ed il mantenimento di drivers comporta
"spreco" di risorse
Nel 1995 la Fisher-Rosemount, Intellution, Intuitive
Technology, Opto22, Rokwell e la Siemens AG
decisero di creare un gruppo di lavoro per risolvere il
problema
Membri di Microsoft furono invitati per il necessario
supporto
Storia di OPC
L'obiettivo del gruppo di lavoro fu quello di definire
uno standard per accedere ad informazioni in ambiente
Windows, basandosi sulla (allora) corrente tecnologia
(OLE)/COM
La tecnologia sviluppata fu chiamata OLE for Process
Control (OPC)
Nell'Agosto del 1996 fu definita la prima versione di
OPC (1.0)
Nel Settembre 1996 la OPC Foundation fu presentata
alla riunione annuale ISA a Chicago
www.opcfoundation.org
Storia di OPC
Nel Settembre 1997 è stata prodotta la versione 1.0A
Nell'Ottobre 1998 è stata prodotta la versione 2.0 della
Data Access Specification
Attualmente vi è la versione 3.0 della Data Access
Specification
Nel 2002 è stata prodotta una specifica per integrare
OPC con XML
Specifiche OPC
OPC Overview v1.0
OPC Common Definitions and Interfaces v1.0
OPC Data Access Specification v3.0
OPC Alarm&Event Specification v1.02
OPC Historical Data Access Specification v1.1
OPC Batch Specification v2.0
OPC Security Specification v1.0
OPC & XML Draft v0.6
OPC Alarm&Event Specification
Allarme: si verifica quando una
"condizione" si verifica (diviene attiva).
pre-definita
Es.: Una temperatura che supera una certa soglia.
Evento: è un avvenimento (es.guasto di un dispositivo,
superamento di una soglia) che ha un significato per
l’OPC Server, per l'apparecchiatura che rappresenta e
per i suoi OPC Client.
Differenti eventi possono essere associati ad una variabile.
Per una temperatura si possono fissare 4 valori di soglia e, dunque,
possono accadere 4 diversi eventi (a seconda della soglia)
Un evento può segnalare l'occorrenza di un allarme
OPC Alarm&Event Specification
Un OPC Client può ricevere la notifica dell'occorrenza
di uno o più eventi che l'OPC Server supporta.
Vengono definiti 3 tipi di eventi
Eventi legati a Condizione. Viene notificata
l'avvenuto allarme
Eventi la cui causa non è all'interno del processo
(es.intervento dell'operatore) e che debbono essere
monitorati
Eventi Semplici (es.guasto di un dispositivo).
Sono disponibili servizi per la definizione di
condizioni per gli eventi del primo tipo.
OPC Historical Data Access Specification
Gli historical engines forniscono una fonte aggiuntiva
d’informazioni che devono essere distribuite agli
utenti e ai software a cui servono:
Raw Data. Dati storici memorizzati
Aggregated Data. Dati estratti da quelli storici, come
richiesto dal client
Nell’ottica dell’integrazione dei dati a tutti i livelli, le
informazioni storiche possono essere considerate come
un altro tipo di dati da condividere ed integrare.
OPC Historical Data Access Specification
Vengono supportati due tipi di server Storici:
Simple Trend Historical Data Servers. Questi
server permettono l’immagazzinamento di dati in
piccole quantità di tipo semplice (raw data).
Complex Data Compression and Analysis Servers.
Questi server provvedono all'analisi dei dati. Sono
capaci di fornire dati riassuntivi o un loro
processamento (Es.valori medi, valor massimo,
minimo ecc).
OPC Data Access Specification
Un OPC Data Access Server può offrire due sorgenti di dati:
Cache e Device.
Un OPC Data Access Server offre variabili (item) che possono
essere selezionate (creando gruppi) da un OPC Data Access
Client
Gli OPC Item rappresentano connessioni a sorgenti dati
all’interno del server.
Ogni item ha associato un: Value, una Quality e un
TimeStamp
Si noti che gli Item non sono le sorgenti dei dati, ma solo i
collegamenti ad esse
Per ciascun gruppo, il Client può associare la frequenza con cui
un OPC Server può aggiornare i dati relativi agli OPCItem
contenuti nel gruppo.
Interfacce Custom e Automation
Le specifiche OPC contengono due set di interfacce:
Custom Interfaces: sono usate in linguaggi
(es.C++) che supportano i puntatori a funzioni.
Automation Interfaces: sono usate in linguaggi
(es.VB) dove non è possibile utilizzare puntatori a
funzioni. In tal caso, i metodi vengono chiamati
attraverso un nome e non da puntatori.
C++ Application
OPC Custom I/F
OPC Server
(In-Proc, Local, Remote,
Handler)
VB Application
OPC Automation I/F
Vendor Specific Logic
Interfaccia OPC Automation
Fornisce al programmatore Visual Basic delle interfacce più
semplici;
viene creato un wrapper DLL (involucro) per gli OPC Custom
Interface Servers già esistenti;
viene fornito così un meccanismo automatico per accedere alle
stesse funzionalità ottenibili dalla interfaccia Custom.
Automation Client (VB)
Automation Interface
OPC Automation Wrapper
Custom Interface (COM / DCOM)
OPC Custom Interface Server
Scarica

OPC - Ingegneria Informatica e delle Telecomunicazioni