PDA

View Full Version : [Windows-Automazione] OPC e' morto?


sottovento
11-05-2009, 08:00
Cari
e' da un po' che Microsoft ha cambiato le sue tecnologie, abbandonando COM.

La mia domanda e': che fine ha fatto OPC? Siccome devo realizzare uno scambio di dati fra un sistema di automazione ed uno di supervisione (il quale fa "girare" Windows) verrebbe spontaneo pensare di implementare un OPC server.

Prima di fare questo lavoro, pero', mi chiedo se non ci siano nuove tecnologie e standard "di fatto" che abbiano rimpiazzato OPC. In tal caso, potrei investire i miei sforzi in qualcosa che possa durare piu' a lungo....

gugoXX
11-05-2009, 08:50
Per risolvere problemi anaolghi negli ultimi 2 anni si sta facendo un gran parlare delle architetture SOA, Service Oriented Architecture

http://it.wikipedia.org/wiki/Service-oriented_architecture

In pratica un bakbone aziendale, chiamato BUS, di interconnessione tra tutti i servizi aziendali, tipicamente ridondante.
Ogni Server o modulo server espone le proprie funzionalita' sul BUS, e fa uso magari di altre richieste al BUS per poter risolvere ciascuno dei suoi compiti.

La tecnologia preferenziale di comunicazione sul BUS e' il WebService. Non sta scritto da nessuna parte che un SOA debba essere implementato solo e tutto su WebService, ma non ne ho mai visto uno che non lo fosse.

Tutti i client e tutti i server sono appesi e comunicano su questo BUS.
Possono esserci BUS di livello diverso (supervisore, controllo, backup, etc.).
Particolare attenzione e' volta all'autenticazione degli attori.

Cosa c'e' al di la di uno dei WebService non e' deciso. Ogni metodo potrebbe essere scritto con tecnologie diverse, su macchine diverse. Possibilmente sufficientemente semplice da poter essere in futuro riscritto sun una nuova tecnologia/linguaggio/macchina. Esponendo la stessa interfaccia non ci saranno problemi.

Uno dei vantaggi diversi per me che devo sviluppare offrendo e usando servizi su questa architettura e' che la gestione amministrativa e di management del BUS e' delegata al dipartimento infrastruttura e sistemistico dell'azienda. Per sua natura il BUS e' complesso ma ben delineato, ed esistono prodotti anche open-source per il suo controllo, come la suite ESB della IBM (che e' quella che viene usata da noi).

Da usarsi quando il contenuto informativo, l'autodescrizione e il controllo del processo sono piu' importanti delle performance.

sottovento
11-05-2009, 10:09
E' interessante, ma non ho ben capito una cosa: supponi che abbia una HMI fatta tramite uno SCADA (uno qualsiasi).

Uno dei vantaggi degli SCADA e' che si possono collegare a OPC server, magari implementati in PLC, ed ottenere la lista dei punti di I/O. Poi ovviamente si possono costruire i vari disegnini ed animazioni in accordo con i valori assunti da detti I/O.

La domanda: non sono esperto di SCADA, ma se volessi implementare una soluzione basandomi su quanto mi hai suggerito dovrei essere sicuro che lo SCADA in uso dal mio cliente sia in grado di accedere a questo tipo di servizi. Esistono SCADA che lo possono fare? (non sono un esperto di SCADA)

Ne sai qualcosa?

Grazie per le info

gugoXX
11-05-2009, 10:45
E' interessante, ma non ho ben capito una cosa: supponi che abbia una HMI fatta tramite uno SCADA (uno qualsiasi).

Uno dei vantaggi degli SCADA e' che si possono collegare a OPC server, magari implementati in PLC, ed ottenere la lista dei punti di I/O. Poi ovviamente si possono costruire i vari disegnini ed animazioni in accordo con i valori assunti da detti I/O.

La domanda: non sono esperto di SCADA, ma se volessi implementare una soluzione basandomi su quanto mi hai suggerito dovrei essere sicuro che lo SCADA in uso dal mio cliente sia in grado di accedere a questo tipo di servizi. Esistono SCADA che lo possono fare? (non sono un esperto di SCADA)

Ne sai qualcosa?

Grazie per le info

No, purtroppo non ne so nulla.
Occorrerebbe vedere se esistono dei moduli di interfaccia (ce ne sono gia' tanti, per tante tecnologie) in grado di convertire le chiamate verso lo standard WebService. Se non ne esistono, seppure dovrebbe essere sufficientemente semplice, non mi impelagherei in questa strada. Il convertitore rischierebbe di diventare un progetto a se stante piu' grande dell'utilizzatore.

Bisogna anche vedere la "fattiblita'". Non nel senso tencico che c'e' di sicuro, ma nel senso di requisiti. Immagino che i sistemi fisici da controllare abbiano esigenze real-time o quasi (near-real-time). Un'architettura basta su WebService non puo' garantire il real time.
Ma non perche' e' lenta in se. Magari se ben fatta puo' risultare piu' veloce di tante altre soluzioni, ma piuttosto perche' non ha le direttive di sincronizzazione di cui invece molti altri protocolli di rete sono dotati e di cui i processi near-real-time hanno bisogno.

sottovento
11-05-2009, 14:03
Beh, a questo punto conviene rimanere sul "classico" ed implementare qualcosa di simile ad un OPC server, visto che non esiste SCADA che non si interfacci a questo...

Ad ogni modo e' stato un discorso interessante, immagino che in futuro i PLC metteranno a disposizione i dati di processo in un sistema simile a quanto hai descritto. Sarebbe logico