OPC e OPC-UA: Differenze e Integrazione con LabVIEW

Introduzione

OPC (OLE for Process Control) è uno standard di comunicazione industriale sviluppato per garantire l’interoperabilità tra dispositivi di automazione e sistemi di controllo. Negli anni, OPC si è evoluto in OPC-UA (Unified Architecture), un protocollo più moderno e robusto.

In questo articolo, esploriamo le differenze tra OPC e OPC-UA, i loro vantaggi e come integrarli con LabVIEW.

Differenze tra OPC e OPC-UA

OPC (Classico)

  1. Tecnologia di Base: Basato su COM/DCOM (Component Object Model / Distributed Component Object Model) di Microsoft.
  2. Architettura: Utilizza un’architettura client-server.
  3. Sicurezza: La sicurezza è gestita principalmente tramite il sistema operativo Windows e le impostazioni di DCOM, che possono essere complesse e difficili da configurare.
  4. Compatibilità: Fortemente legato ai sistemi operativi Windows.
  5. Standard: Comprende diverse specifiche come OPC DA (Data Access), OPC HDA (Historical Data Access), e OPC A&E (Alarms & Events).

OPC-UA (Unified Architecture)

  1. Tecnologia di Base: Indipendente dalla piattaforma, utilizza protocolli come TCP/IP, HTTP e WebSockets.
  2. Architettura: Architettura più flessibile e scalabile con supporto per comunicazione client-server e pub/sub (publish/subscribe).
  3. Sicurezza: Include meccanismi di sicurezza avanzati come crittografia, firme digitali e controllo di accesso basato su ruoli.
  4. Compatibilità: Compatibile con diverse piattaforme e sistemi operativi, non limitato a Windows.
  5. Standard: Unifica le specifiche OPC precedenti e aggiunge nuove funzionalità per il modello informativo, sicurezza e scalabilità.

Vantaggi di OPC-UA

  • Indipendenza dalla Piattaforma: OPC-UA può essere implementato su una vasta gamma di dispositivi e sistemi operativi, non solo Windows.
  • Sicurezza: Offre un livello di sicurezza molto più elevato rispetto al classico OPC, rendendolo adatto per applicazioni critiche.
  • Scalabilità: Supporta una migliore scalabilità per applicazioni industriali complesse, con la possibilità di operare in modalità pub/sub.
  • Modello Informativo: Fornisce un modello informativo ricco e flessibile che può rappresentare strutture di dati complesse e relazioni tra dati.

Integrazione di OPC e OPC-UA con LabVIEW

LabVIEW e OPC

Per utilizzare OPC classico con LabVIEW, National Instruments offre strumenti e moduli che facilitano l’integrazione.

Strumenti e Moduli:

  • NI OPC Servers: Questo software consente a LabVIEW di connettersi a vari server OPC DA, OPC HDA, e OPC A&E.
  • DSC Module (Datalogging and Supervisory Control): Il modulo DSC fornisce supporto per la comunicazione OPC e include VI predefiniti per la lettura e scrittura di dati di processo.

Esempio di Implementazione OPC:

  1. Installazione di NI OPC Servers e DSC Module.
  2. Configurazione di una Connessione OPC: Utilizzare i VI forniti dal modulo DSC per configurare la connessione a un server OPC.
  3. Lettura e Scrittura di Dati: Creare VI in LabVIEW per leggere e scrivere dati di processo dal server OPC.

LabVIEW e OPC-UA

Per utilizzare OPC-UA con LabVIEW, National Instruments offre toolkit specifici che facilitano la comunicazione con server e client OPC-UA.

Strumenti e Moduli:

  • NI OPC UA Toolkit: Fornisce VI per la comunicazione OPC-UA, permettendo a LabVIEW di funzionare sia come client che come server OPC-UA.
  • DSC Module (per OPC-UA): Il modulo DSC supporta anche OPC-UA, fornendo strumenti aggiuntivi per la gestione di dati di processo.

Esempio di Implementazione OPC-UA:

Il toolkit OPC-UA fornisce gli strumenti per creare Server e Client OPC_UA.

Non essendoci più una dipendenza con il sistema operativo, si può lavorare sia in Windows che in Linux.

Particolarmente vantaggioso l’utilizzo come server su cRIO.

Configurazione di una Connessione OPC-UA:

Utilizzare i VI del toolkit OPC-UA per configurare una connessione sicura a un server OPC-UA.

Lettura e Scrittura di Dati:

Creare VI in LabVIEW per interagire con i nodi del server OPC-UA, leggendo e scrivendo dati in modo sicuro.

Codice di Esempio per OPC-UA

Ecco un esempio di come configurare una connessione OPC-UA in LabVIEW utilizzando il NI OPC UA Toolkit:

Server (esempio che trovate nel find example con l’installazione del toolkit)

Client

Sia OPC che OPC-UA offrono potenti strumenti per la comunicazione industriale, ma OPC-UA rappresenta un’evoluzione significativa in termini di sicurezza, scalabilità e flessibilità.

Il recente TSN Time Sensitive Network specifica hw per IP real-time, sembra trovare nell’ opc-ua il protocollo sw eletto.

Un esempio realizzato in Bytelabs

Abbiamo creato un server OPC all’interno di ogni nodo cRIO che comunica con un portale con un client client OPC-UA realizzato in Python e una app Python/React che mostra le variabili su una dashboard web.

Picture of Nicola Bavarone
Nicola Bavarone
Appassionato di LabVIEW CLA CPI

Altri articoli dal nostro Blog

L’alternanza dei colori di sfondo nelle righe di una tabella

Mettiti in contatto