MAGGIO 2012
FIELDBUS & NETWORKS
61
aggiornato il suo driver OPC e tutte le altre applicazioni che accedono ai suoi
dati non si accorgeranno nemmeno del cambiamento. Così, la proliferazione
di dispositivi e pacchetti applicativi a standard OPC ha favorito la prolifera-
zione di soluzioni interoperabili composte da hardware e software proposti
da costruttori diversi.
I dati gestibili tramiteOPC
La maggior parte dei dati scambiati tra le apparecchiature in un impianto
di automazione può essere classificata in tre categorie: dati in tempo reale,
dati storici, allarmi. In tutti i casi, i formati dei dati scambiati sonomolteplici e
coinvolgonovalori binari, numeri interi, numeri invirgolamobile, date,matrici
e quant’altro. Uno dei compiti dello standardOPC è stato quello di definire in
modo unificato come ciascuno di questi formati di dati debba essere trasfe-
rito attraverso il client e il server OPC. Le tre principali specifiche corrispon-
denti alle tre categorie di dati prima definiti, sono lo standard OPCDA (Open
Data Access), che definisce il trasporto dei dati in tempo reale; lo standard
OPC HDA (Historical Data Access), che definisce il trasporto dei dati storici;
lo standard OPC A&E (Alarms&Events), che definisce il trasporto delle infor-
mazioni di allarmi edeventi.Nonèdettocheundispositivodebbasupportare
tutti i tipi di dati definiti dallo standard OPC. La maggior parte dei dispositivi
supportano almeno le specifiche OPC DA, ma è bene verificare in base alle
proprie necessità che sia gli OPC server, sia gli OPC client che servono nella
propria applicazione, supportino tutti gli insiemi di standard utili per il tipo di
dati da trasportare.
Cosaèun server OPC
Un server OPC è un’applicazione software che realizza un ‘driver’ standardiz-
zatoappositamente scrittoper rispettareunoopiù specificheOPC. Il fatto che
si usi la parola ‘server’ non si riferisce al computer che si utilizza, bensì rifletta
la relazione che si instaura con la sua controparte appartenente al livello di
astrazione OPC, ossia il client OPC. I server OPC sono dei ‘connettori’ virtuali,
che si possono pensare come dei traduttori del linguaggio usato dai protocolli
odriverdi comunicazionenativi delleapparecchiaturehardwarecon il linguag-
gio OPC. Sono inoltre connettori ‘bidirezionali’, in quanto possono leggere da
una sorgente di dati oppure scrivere a una sorgente di dati. La relazione tra
server e client OPCèdi tipomaster/slave, nel senso cheun server OPC trasfe-
rirà i dati da e verso la sorgente dati costituita dall’hardware di automazione
solamente seequando riceveràun comandodaun client OPC. Un server OPC
puòcomunicareconpraticamentequalunqueapparecchiaturaelettronica i cui
dati possanoessere letti oscritti inqualchemodoper viaelettronica. Tra leap-
parecchiaturepiù comuni nel campodell’automazione vi sonoPLC, DCS, RTU,
sensori elettronici, database, pagineWebecc. Per comunicareconunqualun-
que di questi dispositivi, serve un OPC server che sappia comunicare usando
la ‘lingua’ nativa del dispositivo stesso, il quale deve essere configurato (con i
relativi permessi di sicurezza) per accettare le comunicazioni viaOPC.
Cosaèunclient OPC
Il clientOPCèun’applicazionesoftwarecheattivaecontrolla lecomunicazioni
con i serverOPCsullabasedellerichiestedi unprogrammaapplicativo. Il client
OPC traduce le richieste di comunicazione del programma applicativo nelle
corrispondenti richieste OPC e le invia al server OPC di competenza, il quale
ha il compitodi elaborarle. Quando il serverOPC invia le risposteal clientOPC,
quest’ultimo letraducenel linguaggionativodell’applicazionesoftwarecheha
effettuato le richieste, che a questo punto può elaborarle secondo necessità.
Tecnicamente i client OPC sono dei moduli software usati da un’applicazione
per comunicare con qualunque server OPC raggiungibile via rete. Vengono
integrati in applicazioni per l’interfaccia uomo-macchina (HMI), per la memo-
rizzazione e analisi di dati storici, per l’acquisizione di dati, la gestione degli
allarmi ecc. Sono progettati per comunicare esclusivamente con i server OPC,
non direttamente con le apparecchiature finali, in quanto devono rimanere
indipendenti dal protocollo, per non ricadere nelle classiche problematiche
d’interoperabilità che ne deriverebbero. I client OPC sono poi progettati per
supportare comunicazioni multiple verso diversi server OPC, pertanto le ap-
plicazioni possono contemporaneamente interrogare molti dispositivi diversi
raggiungibili via rete, effettuando chiamate multiple al client OPC. Inoltre, se
client e server OPC sono conformi agli stessi standard, la comunicazione è
garantita anche tra server e client realizzati da diversi fornitori, favorendo la
realizzazione di impianti flessibili ed eterogenei.
L
’
evoluzione degli standard OPC verso un’architettura di nuova gene-
razione, denominata UA (Unified Architecture), punta ad allargare il
campo di applicazione delle metodologie OPC, abbandonando il tra-
dizionale legame con le originarie tecnologie del mondo Windows, che erano
quelle prevalenti durante la prima fase storica di sviluppo di OPC.
Gli standard della serie OPC-UA sono perciò destinati ad abbracciare anche
le soluzioni hardware e software che non hanno necessariamente legami
con l’ecosistema Windows. Così facendo, si punta a favorire ulteriormente lo
scambio di dati in modalità unificata a livelli diversi, partendo dai dispositivi
elettronici specializzati da campo, fino ai grandi database gestionali utilizzati in
organizzazioni di ampie dimensioni.
GLI STANDARD OPC DI NUOVA GENERAZIONE:
UNIFIED ARCHITECTURE (UA)
Figura 3 - Architettura di automazione con scambio dati basato
sugli standard OPC
Gli standard OPC-UA puntano a espandere il
campo d’azione delle comunicazioni unificate
abbracciando nuove forme di hardware e
svincolandosi dei tipici ambienti Windows