EXOR Innovation Blog

Lo standard OPC UA: definizioni

Scritto da Mark Olding | 21-set-2023 7.50.46

EXOR International è convinta che lo standard OPC United Architecture diventerà lo standard di interoperabilità industriale. L’aggiunta di un modello publish/subscribe e l’esecuzione di OPC UA su reti TSN (Time Sensitive Network) non faranno altro che favorire la sua adozione.

Pensiamo che possa risultare utile una breve sintesi dei termini principali utilizzati nel networking industriale con riferimento allo standard OPC UA.

Per la compilazione di questo elenco ringraziamo il sito Web di OPC Foundation e Wikipedia.

 

API (Application Program Interface)

è l’insieme delle interfacce che consentono a un’applicazione software di utilizzare i servizi di un’altra. Nel mondo industriale, tale termine si riferisce storicamente all’interfaccia tra due elementi software in esecuzione nello stesso processore. Con lo standard OPC UA, l’API si riferisce generalmente all’insieme delle interfacce che un fornitore di toolkit OPC UA offre a uno sviluppatore di dispositivi. Poiché i toolkit sono unici nel loro genere, la gran parte delle API funziona in modo differente. L’API può includere interfacce con il modello dei dati oppure, talvolta, l’interazione tra il livello di codifica, il livello di sicurezza e il livello di trasporto.

 

BLOB (Binary Large Object Block)

fornisce un metodo per il trasferimento dati senza una definizione di tipo secondo OPC UA. Normalmente, tutti i dati OPC UA hanno come riferimento una qualche definizione di tipo che ne specifica il formato. I dati BLOB vengono utilizzati quando l’applicazione desidera trasferire dati senza una definizione OPC UA. I dati BLOB sono definiti dall’utente e possono corrispondere a qualunque elemento: video, audio, immagini, file dati o qualsiasi altra cosa.

 

CODIFICHE

descrivono un metodo specifico per convertire una richiesta o una risposta OPC UA in un flusso di byte per la trasmissione. Esistono attualmente due tipi di codifica nello standard OPC UA: OPC UA Binary e XML. OPC UA Binary permette una codifica compatta con messaggi di dimensioni inferiori, meno spazio del buffer e migliori prestazioni. XML è una codifica in linguaggio XML, utilizzato in numerosi sistemi aziendali. Sebbene risulti più facile da elaborare per i server aziendali, XML richiede una maggiore potenza di elaborazione, messaggi di dimensioni superiori e requisiti di buffer più impegnativi.

 

TRASPORTO TCP DELLO STANDARD OPC UA

è un protocollo che stabilisce un canale di comunicazione di basso livello tra un client e un server. Parte dell’attività del trasporto TCP dello standard OPC UA consiste nel negoziare dimensioni massime del buffer affinché entrambi i lati comprendano i limiti reciproci.

 

 

HTTP (Hypertext Transfer Protocol)

è il protocollo di livello basso che consente a un’applicazione client, ad esempio un browser Web, di richiedere una pagina Web a un server. I messaggi HTTP specificano un formato standardizzato per lo scambio dei dati.

 

TRASPORTO HTTP/SOAP DELLO STANDARD OPC UA

è il secondo trasporto attualmente compatibile con lo standard OPC UA. Tale trasporto richiede maggiori risorse e viene utilizzato perché HTTP e SOAP sono compatibili praticamente con tutte le applicazioni aziendali. È un metodo standard per trasferimento di messaggi OPC UA serializzati tra un client e un server.

 

MAPPATURE

Le specifiche dello standard OPC UA sono astratte, a differenza di specifiche più tradizionali quali Modbus. Tuttavia, le specifiche per il funzionamento OPC UA hanno lo scopo di garantire la capacità garantire apertura all’introduzione di tecnologie future. Una mappatura si riferisce al modo in cui tali specifiche astratte sono legate a una tecnologia specifica.

 

CODIFICA XML DELLO STANDARD OPC UA

è un metodo per la serializzazione dei dati che utilizza Extensible Markup Language (o XML in breve). La codifica rappresenta un modo specifico di mappatura per ogni tipo di dati verso il formato che deve poi essere trasferito in rete. Con la codifica XML, i dati vengono mappati nella rappresentazione altamente strutturata utilizzata da XML con l’uso di caratteri ASCII. La codifica XML può risultare inefficiente in termini di spazio ed introdurre un degrado  nelle prestazioni. Questa codifica viene utilizzata poiché numerosi programmi applicativi supportano XML di default.

 

CODIFICA BINARIA DELLO STANDARD OPC UA

è un metodo per la serializzazione dei dati che utilizza uno standard IEEE di codifica binaria. La codifica rappresenta un modo specifico di mappatura per ogni tipo di dati verso il formato che deve poi essere trasferito in rete. Con la codifica binaria, i dati vengono mappati in una rappresentazione compatta di dati binari che richiedono un numero inferiore di byte rispetto all’uso di caratteri ASCII. Questo formato rende più efficienti il trasferimento e l’elaborazione da parte di sistemi embedded. La codifica binaria è largamente impiegata nei sistemi di automazione industriale.

 

APPLICAZIONE OPC UA

Nel networking industriale esiste una distinzione tra l’applicazione dell’utente finale e lo stack del protocollo di comunicazione. L’applicazione dell’utente finale implementa vari insiemi di regole e funzioni predefinite. Lo stack del protocollo sposta invece dati definiti secondo le specifiche del protocollo tra l’applicazione stessa e un dispositivo esterno utilizzando un’interfaccia predefinita. Non è questo il caso dello standard OPC UA. Con OPC UA, l’applicazione fa riferimento all’applicazione dell’utente finale, all’object model dello standard OPC UA e all’insieme dei servizi OPC UA implementati con il dispositivo OPC UA.

 

CLIENT OPC UA

è il lato della comunicazione OPC UA che inizia la sessione di comunicazione. Una delle parti più interessanti della struttura OPC UA è il fatto che i client siano decisamente più flessibili rispetto ad altri client di rete. I client OPC UA hanno la capacità di cercare e individuare i server OPC UA presenti in rete, individuare la procedura di comunicazione con il server OPC UA, individuare quali capacità hanno i server OPC UA ed effettuarne la configurazione affinché trasmettano elementi specifici di dati quando e come richiesto.

 

SERVER OPC UA

è il lato della comunicazione OPC UA che fornisce dati a un client OPC UA. Non esiste un server OPC UA standard né per funzionalità, né per prestazioni o tipo di dispositivo. Possono essere server OPC UA dispositivi che vanno dai minuscoli sensori alle grandi macchine. I server possono ospitare da pochi fino a migliaia didatapoints. I server OPC UA possono utilizzare mappature per  sicurezza elevata ed XML, oppure comunicare senza protezione utilizzando la codifica OPC UA Binary ad alte prestazioni. Possono essere completamente configurabili e offrire al cliente la possibilità di configurare visualizzazioni del modello di dati, allarmi ed eventi, oppure possono essere completamente statici.

 

STACK DEL PROTOCOLLO

Implementa il modello di dati ed i servizi di tale protocollo. Un’API collega il modello di dati e servizi all’applicazione dell’utente finale. Sebbene lo stack del protocollo possa essere implementato dai fornitori di tecnologia in molti modi differenti, in generale uno stack di protocollo è costituito da tre componenti: codifica dei dati, sicurezza e trasporto di rete.

 

 

PROTOCOLLO DI SICUREZZA

Protegge la riservatezza e l’integrità dei messaggi. OPC UA sfrutta vari protocolli standard di sicurezza.

 

SERIALIZZAZIONE

è il processo con cui un servizio viene utilizzato per creare una sequenza (serie) di byte che un server OPC UA è un grado di elaborare per restituire il valore di un dato. La serializzazione specifica il metodo di trasformazione degli elementi di dati, ad esempio un valore a virgola mobile, in una serie di byte che è possibile inviare serialmente su una rete. Attualmente, lo standard OPC UA è compatibile con due tipi di codifica seriale: OPC UA Binary e OPC UA XML.

 

SOAP (Simple Object Access Protocol)

estende XML e fornisce un livello superiore di funzionalità. SOAP aggiunge la possibilità di effettuare chiamate di procedure remote all’interno di una struttura XML.

 

TRASPORTI

Un trasporto è il meccanismo di rete che sposta un messaggio OPC UA tra un client e un server. Tutti i messaggi OPC UA vengono consegnati attraverso una connessione TCP/IP. Esistono due tipi di sessioni che basate entrambe su TCP, chiamate trasporti, quando si utilizza OPC UA: OPC UA TCP e SOAP/HTTP.

 

PROTOCOLLO DI TRASPORTO

effettua il trasferimento end-to-end dei messaggi OPC UA tra i client e i server OPC UA. Una volta che un messaggio OPC UA viene codificato e completata la fase di gestione della sicurezza, è pronto al trasporto. Per lo standard OPC UA sono attualmente definiti due trasporti: OPC UA TCP e SOAP/HTTP. Il protocollo TCP/IP fornisce la comunicazione a livello di socket tra i client e i server.

 

WEB SERVICES

 è un termine generico per la collocazione di servizi Internet in modo strutturato. La maggior parte delle applicazioni Web è oggi costruita utilizzando Web Services. HTTP, SOAP, XML rappresentano le tecnologie di base delle applicazioni dei Web Services e sono alcune delle tecnologie utilizzabili dai client e dai server OPC UA.

 

XML (Extensible Markup Language)

è un metodo altamente strutturato per la specifica di dati progettato per facilitare lo scambio di dati fra applicazioni. XML trasferisce tutti i dati in formato ASCII, l’unico comprensibile universalmente da tutti i sistemi informatici. XML impiega una grammatica per definire identificatori dati specifici che vengono utilizzati da un’applicazione per trasmettere i dati.