OPC XML Data Access Specification

Slides:



Advertisements
Presentazioni simili
XmlBlackBox La presentazione Alexander Crea 11 Aprile 2010 La presentazione Alexander Crea 11 Aprile 2010.
Advertisements

ASP .NET & Web Service: Introduzione
Miglioramento della protezione dei dati mediante SQL Server 2005 Utilizzo della crittografia di SQL Server 2005 per agevolare la protezione dei dati Pubblicato:
Consumare Web Service Andrea Saltarello
Fabio Mignani Senior Technology Specialist
Branch office update – SP2. Agenda Messa in esercizio degli uffici remoti Compressione HTTP Differentiated Services Cache di BITS.
Massimiliano Bosco – Aliware – Torino – Project 2003 Sviluppare Soluzioni EPM con Project Server (2/4)
Sistema di gestione flussi documentali
Web Services.
P. Sanna 1 I web services TICO Corso di laurea in Informatica Università di Pisa a.a Pierluigi Sanna.
Mantenimento dello stato Laboratorio Progettazione Web AA 2009/2010 Chiara Renso ISTI- CNR -
Università degli Studi di Modena e Reggio Emilia Facoltà dIngegneria - sede di Modena Corso di Laurea in Ingegneria Informatica Interoperabilità di componenti.
SINCRONIZZAZIONE E TRASFERIMENTO VIA WEB DI IMMAGINI E DATI MULTIMEDIALI CON INFORMAZIONI GEOGRAFICHE E RAPPRESENTAZIONI CARTOGRAFICHE Laureando: Mitja.
Creazione e pubblicazione di un web service in Visual Studio 2005
Integrazione delle Informazioni Necessità di accedere ai dati di campo da qualunque parte dellimpianto Visione omogenea.
Introduzione ai Web Services. E' un nuovo meccanismo RPC ottimizzato per l'uso in Internet Un qualunque Client su una generica piattaforma deve poter.
XmlBlackBox La presentazione Alexander Crea 7 Giugno 2010 La presentazione Alexander Crea 7 Giugno 2010.
La rete in dettaglio: rete esterna (edge): applicazioni e host
Interfaccia del file system
Progetto realizzato da: Francesco Seccia Matr Marco Spinelli Matr
Tecniche di automazione Corso: Tecniche di automazione – prof.ssa Laura ZUCCHI DDE Data Dynamic Exchange Appunti lezioni Classi 1C e 1H – gruppo A.
Architettura del World Wide Web
Perché.Net e non più COM/DCOM ? Superamento dei problemi di COM: Richiede una infrastruttura "non semplice" da ogni applicazione (ad esempio Class Factory.
OPC Data Access Specification
Struttura dei sistemi operativi (panoramica)
CAPITOLO 2 INTRODUZIONE AL LINGUAGGIO JAVA E ALL'AMBIENTE HOTJAVA.
Reti di Calcolatori IL LIVELLO RETE.
Fondamenti di Informatica1 Ripetizioni di segmenti di codice Spesso è necessario ripetere più volte uno stesso segmento dell'algoritmo (e.g. I/O, elaborazioni.
Modello di replicazione attivo e di supporto alla tolleranza ai guasti in ambito MOM Autore: Claudio Fusconi Matricola: Esame: Reti di calcolatori.
Delay Tolerant Networking Service per SAMOA. Il framework SAMOA SAMOA è un framework che consente di gestire e popolare la rete sociale e propagare a.
Distributed File System Service Dario Agostinone.
LOCALIZZAZIONE SATELLITARE GEOREFENRENZIATA. OBIETTIVI Gestire il database cartografico al fine di poter visualizzare la posizione dei mezzi localizzati,
Corso di Informatica per Giurisprudenza Lezione 7
Usare la posta elettronica con il browser web
Guida IIS 6 A cura di Nicola Del Re.
U N INFRASTRUTTURA DI SUPPORTO PER SERVIZI DI FILE HOSTING Matteo Corvaro Matricola Corso di Reti di Calcolatori LS – Prof. A. Corradi A.A.
BROKER SERVER Progetto di Ingegneria del Web 2008 Alessio Bianchi Andrea Gambitta Giuseppe Siracusano.
DDE Data Dynamic Exchange Appunti lezioni Classi 1C e 1H – gruppo A
Server Web in una rete Windows Sommario Meccanismi di accesso remoto Meccanismi di accesso remoto Introduzione ai Server Web Introduzione ai Server.
Configurazione in ambiente Windows Ing. A. Stile – Ing. L. Marchesano – 1/23.
Il World Wide Web Lidea innovativa del WWW è che esso combina tre importanti e ben definite tecnologie informatiche: Documenti di tipo Ipertesto. Sono.
File system distribuito transazionale con replicazione
Introduzione al controllo derrore. Introduzione Quando dei dati vengono scambiati tra due host, può accadere che il segnale venga alterato. Il controllo.
I metodi F. Bombi Campi e metodi Abbiamo visto che una classe può contenere – Campi – Metodi stato I campi sono utilizzati per memorizzare.
ASP – Active Server Pages - 1 -Giuseppe De Pietro Introduzione ASP, acronimo di Active Server Pages, sta ad indicare una tecnologia per lo sviluppo di.
Reti di calcolatori LS Manni Tiziano  IT e nuovi scenari applicativi …  … portabilità dei dati …  … condivisione dati …  … disponibilità.
Writer: Stili Modelli Lezione 03. Modelli di formato e modelli di documento Modelli di formato: Sono gli stili attribuiti al carattere, al paragrafo alle.
Informatica Lezione 9 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
L’architettura a strati
Lezione 8.
FTP File Transfer Protocol
Internet e HTML Diffusione di informazioni mediante la rete Internet.
Eprogram informatica V anno. ASP.NET Introduzione ASP.NET (Active Server Page) è il linguaggio che, sfruttando la tecnologia.NET, permette di: -scrivere.
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
MCSA Mobile Code System Architecture Infrastruttura a supporto della code mobility Pierfrancesco Felicioni Reti di Calcolatori L.S. 2005/2006.
Infrastruttura per la gestione distribuita di un sistema di prenotazione Progetto di: Fabio Fabbri Matricola
1 Laboratorio di Introduzione alla Programmazione §II MODULO §3 crediti §Esame e voto unico (su 6 crediti totali)
Reti di calcolatori LS1 Service Middleware Reti di calcolatori LS progetto di Andrea Belardi Infrastruttura dedicata alla gestione di servizi disponibili.
Reti di calcolatori e sicurezza “Configurare il web-server Apache” a cura di Luca Sozio.
Servizi Internet Claudia Raibulet
1 Laboratorio di Introduzione alla Programmazione §II MODULO §3 crediti §Esame e voto unico (su 6 crediti totali)
Corso di Reti di Calcolatori LS Progetto di un server FTP in grado di coordinarsi con altri mirror per garantire QoS di Marco Buccione.
 Primo livello: Field Management. A questo livello le informazioni sono relative ai dispositivi di campo  Secondo livello:
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 2 -Telnet, FTP e altri Ernesto Damiani Lezione 4 – Napster e.
LIP: 15 Marzo 2005 Vettori di interi. Esercizio proposto Definire una classe VectorInt i cui oggetti sono vettori omogenei di interi ordinati in modo.
GUIDA ALL’UTILIZZO DEL
Sistemi distribuiti Sistema distribuito indica una tipologia di sistema informatico costituito da un insieme di processi interconnessi tra loro in cui.
1 Il livello transport. Concetti fondamentali - Canale logico e canale fisico 2 Quando un segnale deve essere trasmesso, viene inviato su un Canale, cioè.
Socket programming in Java La realizzazione di un server in Java consente di scrivere una sola versione eseguibile su diverse piattaforme. Il linguaggio.
Socket programming in Java La realizzazione di un server in Java consente di scrivere una sola versione eseguibile su diverse piattaforme. Il linguaggio.
Transcript della presentazione:

OPC XML Data Access Specification http://www.opcfoundation.org/

Perché OPC si è mosso verso i Web Services ? OPC DCOM-based funziona bene e durerà per molti anni Ci sono applicazioni in cui OPC DCOM-based ha dei limiti: Vi sono alcuni field devices "embedded" che non hanno supporto COM, ma hanno lo stack TCP/IP Le applicazioni HMI possono sfruttare i Web Services per lavorare su Internet, meglio di quanto faccia DCOM (spesso il traffico DCOM è bloccato da firewall) Tutti i Client Non-Microsoft (senza supporto COM) possono avere un maggiore possibilità di connessione tramite i Web Services

OPC e XML Il Working Group "OPC and XML" iniziò il lavoro di definizione dello standard nel Marzo del 2000 (conclusione 2002) Obiettivi erano: Integrazione di OPC con Microsoft BizTalk Integrazione di OPC in applicazioni Web utilizzando XML Le tecnologie utilizzate sono: XML, Web Services, SOAP, BizTalk Le specifiche definiscono un servizio OPC XML come Web Service (uso di WSDL)

OPC/XML vs OPC/DCOM Tipologia di Codifica: Le specifiche OPC XML Data Access si differenziano da quelle basate su tecnologia COM, per motivi legati alla tecnologia XML/HTTP Tipologia di Codifica: OPC-DCOM utilizza una codifica binaria efficiente OPC-XML serializza ogni dato da trasmettere in messaggi XML Per minimizzare i tempi di accesso, in XML si hanno meno primitive di servizio, ciascuna delle quali trasporta più informazioni

OPC/XML vs OPC/DCOM Gestione della connessione e dello stato: OPC-DCOM si basa su scambi informativi connection-oriented (possibilità di memorizzare tutta la storia delle comunicazioni) che includono callback OPC-XML è tipicamente connectionless e non sono possibili le callback non prevede di default, ma permette, la memorizzazione della storia trasmissiva di un client In .NET c’è il file Global.asax (facoltativo) Conseguenze in OPC-XML: non è possibile implementare il meccanismo di call back Esiste il meccanismo della subscription per sopperire a tale lacuna non esistono Oggetti e non è possibile memorizzare la storia di ciascun cient Ad eccezione dello scambio dati basato su subscription

OPC/XML vs OPC/DCOM Rilevazione dei Server OPC in un nodo: OPC-DCOM permette ad un client di conoscere la lista dei server OPC in un nodo (indirizzo IP) OPC-XML non prevede tale meccanismo. E' il client che deve conoscere l'URL di ogni Web Service presente sul nodo.

Alcuni metodi presenti in OPC XML Ritorna informazioni sullo stato del server: fornitore, versioni XML-DA supportate, istante in cui il server è stato avviato GetStatus Permette al client di conoscere i nomi e il relativo percorso degli items (tags) presenti e disponibili nel namespace gerarchico del server Browse GetProperties Ritorna informazioni dettagliate sulle proprietà (Nome, Descrizione, Valore) di particolari items specificati dal client Read Il client specifica il path di items, il tipo di dato richiesto (eventuale conversione da parte del server), freshness dei dati richiesta (ms, 0 se il dato deve essere letto dal device). Il server fornisce il valore, la qualità e il timestamp per gli item richiesti. Write Permette ad un client di modificare valori di uno o più items.

Meccanismo di Sottoscrizione in OPC XML Il meccanismo di CallBack viene "sostituito" da una lettura ciclica stimolata dal client La lettura ciclica è subordinata ad una fase preliminare chiamata sottoscrizione. Con la sottoscrizione, il Client specifica una lista di items presenti nel Server per cui vuole applicare la lettura ciclica Alla sottoscrizione del client (elenco di item), il server associa un handle univoco Ogni qual volta il client desidera conoscere i valori degli items relativi alla sottoscrizione, egli dovrà utilizzare l'handle fornito dal Server

Meccanismo di Sottoscrizione in OPC XML Permette ad un Client di specificare una lista di items per i quali il client vuole essere continuamente aggiornato. Subscribe SubscriptionCancel Permette ad un Client di rimuovere una lista di items indicata in una precedente Subscribe SubscriptionPolledRefresh Con questo servizio il Client ottiene dal Server tutti i valori di items indicati in una precedente subscription che hanno subito una modifica del loro valore entro l'intervallo specificato dal client.

Meccanismo di Sottoscrizione in OPC XML Esistono due meccanismi di sottoscrizione: Basic Polled Refresh Approach. Il Client realizza un polling (gestione del timer) Ad ogni richiesta del client, il Server invia gli item i cui campi Valore o Qualità sono cambiati rispetto l’ultima richiesta. Advanced Polled Refresh Approach. Viene utilizzato per simulare meglio il meccanismo di CallBack. Il Client delega il Server a realizzare il meccanismo di attesa (Timer) Il Client invia una richiesta al Server (legandola al completamento del processamento dei dati ricevuti) Ad ogni richiesta del Client, il Server realizza un meccanismo di attesa e ritorna i valori se sono cambiati e dopo un intervallo minimo (HoldTime) ed entro un intervallo massimo (WaitTime).

Basic Polled Refresh Approach

Advanced Polled Refresh Approach Se all’interno del Wait Time si verifica una modifica di qualche Item, il Server invia al Client gli Item modificati Se allo scadere del HoldTime+WaitTime non si ha nessuna modifica, il Server ritorna una risposta senza alcun item.

Meccanismo di Sottoscrizione in OPC XML I parametri più importanti che il Client può richiedere al Server nella sottoscrizione, sono: SamplingRate (ms). E’ la frequenza alla quale il Server deve aggiornare la Cache associata ad ogni Item. Il controllo del cambiamento degli Item viene fatto sul valore mantenuto nella Cache EnableBuffering. E’ posibile richiedere l’abilitazione di un buffer (di dimensione legata alle risorse del Server) in cui vengono memorizzati tutti i valori di item che subiscono una modifica nell’intervallo tra due accessi del client, in funzione del SamplingRate DeadBand. Permette di indicare la soglia di variazione desiderata dal client per ogni item (è una percentuale del full engineering unit)

Meccanismo di Sottoscrizione in OPC XML Nella procedura di sottoscrizione il client specifica: Lista items. Per ogni item viene specificato: Tipo Richiesto (errore se il server non supporta la conversione) RequestedSamplingRate. EnableBuffering. Deadband. Indicazione se nella risposta (alla sottoscrizione) del Server devono essere ritornati i valori attuali degli item SubscriptionPingRate (ms). Indicazione sul tempo dopo il quale il Server (in assenza di richieste dal Client) libera le risorse allocate con la sottoscrizione. Può essere messo a 0 (NON CONSIGLIATO), ma in tal caso il Server sceglierà un suo algoritmo per testare l’esistenza in “vita” del client

Meccanismo di Sottoscrizione in OPC XML Nella procedura di sottoscrizione il Server invia in risposta al Client: Lista items sottoscritti. Per ogni item viene specificato: Il valore (se richiesto dal Client). Viene tornato l’oggetto di tipo ItemValue (vedi Servizio Read) L’effettivo sampling rate che il Server può supportare Eventuali Errori Server Handle, usato dal Client nelle successive chiamate a SubscriptionPolledRefresh

Meccanismo di Sottoscrizione in OPC XML Per ogni SuscriptionPolledRefresh, il Client specifica: Uno o più handles di sottoscrizione. Se è >1, nella risposta viene mantenuto l’ordine indicato HoldTime. Tempo assoluto fino al quale il Server aspetterà prima di restituire le informazioni sugli items sottoscritti WaitTime. Intervallo di tempo a partire dall’HoldTime durante il quale il Server non restituirà alcuna risposta in assenza di cambiamenti da notificare Indicazione se il Server deve ritornare TUTTI i valori indipendentemente se sono cambiati o meno (WaitTime è ignorato in questo caso)

Meccanismo di Sottoscrizione in OPC XML Per ogni SuscriptionPolledRefresh, il Server invia: Lista items. Ogni elemento della lista è formato dai campi: Array Item sottoscritti (tipo ItemValue). Può non contenere tutti gli item (quelli senza cambiamenti) Handle di Sottoscrizione. Permette di distinguere gli items in funzione della precedente sottoscrizione, nel caso in cui vi siano diversi ServerHandle Eventuali errori

Primitive OPC XML Le primitive sono contenute in una classe, che ciascuno può facilmente creare a partire dal file OpcXmlDa.wsdl La classe delle primitive viene ottenuta dal file OpcXmlDa.wsdl tramite l’eseguibile wsdl.exe contenuto nel Microsoft .NET Framework SDK il file OpcXmlDa.wsdl è distribuito da OPCFoundation e contiene la descrizione dei web service il file OpcXmlDa.wsdl può essere prelevato dall’Appendice B dello Standard OPC DA XML