Home>>OLE for process control (OPC)

OLE for Process Control (OPC) è una tecnologia utilizzata per semplificare il trasferimento dei dati tra i sistemi di controllo industriali, le interfaccie operatore, i sistemi di supervisione e sistemi software aziendali come i database. Fu sviluppato con l'intenzione di fornire una tecnologia standard che consentisse a sistemi di controllo differenti di interagire tra loro.

Prima dell'avvento di OPC, gli sviluppatori di applicazioni software erano costretti a sviluppare un driver di comunicazione per ciascun sistema di controllo con cui intendevano scambiare dei dati; OPC, invece, ha messo a disposizione un'interfaccia comune per interagire con differenti prodotti di controllo industriale, indipendentemente dall'hardware e dal software utilizzati nel processo.

Esempio di architettura OPC

E' bene mettere in evidenza che OPC non elimina la necessità dei driver di comunicazione: il costruttore sviluppa il server OPC specifico per il proprio prodotto, utilizzando il protocollo di comunicazione necessario per il funzionamento del suo dispositivo; a questo punto diventa più semplice interfacciare il sistema con altro software compatibile con OPC.

La prima formulazione dello standard nacque dalla collaborazione di alcuni fornitori di prodotti di automazione, riconosciuti a livello mondiale, e Microsoft; fu chiamata semplicemente "OPC Specification" ed era basata su COM e DCOM di Microsoft. Le specifiche definiscono un insieme di oggetti, interfacce e metodi per semplificare l'interazione delle applicazioni di controllo di processo e di automazione della produzione.

E' importante capire che OPC non è un protocollo di comunicazione alla stessa stregua di Ethernet, TCP/IP o Modbus, ma rappresenta un livello di astrazione più alto, è costituito da un insieme di API che nascondono la rete di trasporto sottostante e la codifica utilizzata per lo scambio dei dati.

OPC segue un'architettura client-server. un server OPC è un'applicazione software che raccoglie le informazioni dai dispositivi (PLC, DCS, ecc.) tramite protocolli nativi (Modbus, Profibus, ecc.), il server poi fornisce l'accesso ai dati collezionati tramite gli oggetti COM; i client OPC leggono e scrivono i dati sul dispositivo di campo tramite il server OPC.

Le informazioni disponibili tramite un server OPC sono organizzate in gruppi secondo criteri di efficienza e i gruppi possono essere:

  • pubblici (disponibili per qualunque client OPC)
  • locali (accessibili solo dal client che li ha creati)

Uno dei vantaggi più significativi nell'utilizzo di OPC, consiste nel fatto che l'applicazione non necessita di conoscere i dettagli dell'architettura interna del dispositivo con cui scambia i dati, ma esclusivamente i nomi dei gruppi e degli elementi a cui è interessata.


Commenti (4) -


Italia Mauro Misuri (no site)
inviato il 24 ottobre 2008 alle 08.52

qual'è il il  protocollo utilizzato da OPC per trasmettere e ricevere i dati , TCP/IP o UDP/IP ?


inviato il 25 ottobre 2008 alle 19.18

OPC è un interfaccia di programmazione che si trova ad un livello di astrazione più alto rispetto ad un protocollo di comunicazione quale Ethernet, TCP, etc. e per la maggior parte degli sviluppatori che utilizzano le API dell'OPC, il protocollo di trasporto utilizzato diventa irrilevante.
OPC sfrutta il servizio offerto da DCOM (COM distribuito) che consente di invocare i metodi di oggetti istanziati su altre macchine, come se fossero presenti sul computer locale.
DCOM a sua volta utilizza il protocollo RPC (remote procedure calls) per spedire e ricevere in modo trasparente le informazioni tra oggetti COM.


inviato il 7 marzo 2011 alle 11.03

Grazie per il bell'articolo. Sarebbe bellissimo ne facessi uno sui vari Bus di comunicazione, tra ModBus, LonWorks, ProfiBus, BacNet eccetera...
Comunque complimenti.
massimo


inviato il 7 marzo 2011 alle 21.55

@ massimo scaccaglia:

Grazie per i complimenti. Al momento mi sto documentando su Ethercat, spero di riuscire a scrivere un articolo sull'argomento.

Aggiungi commento




  Country flag
biuquote
  • Commento
  • Anteprima
Loading


Calendario

<<  maggio 2012  >>
lumamegivesado
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

View posts in large calendar

Archivio

Licenza d'uso
Eccetto dove diversamente specificato, i contenuti di questo sito sono rilasciati mediante:

Licenza Creative Common