Data Reviewer è una piattaforma software per l'archiviazione, la consultazione e l'analisi dei dati storici acquisiti da strumenti industriali. Consente di ricostruire l'andamento dei processi produttivi a partire dalle registrazioni effettuate sul campo, attraverso strumenti di ricerca, grafici temporali ed esportazione dei dati.

Il prodotto è stato sviluppato in team presso Eurotherm / Schneider Electric, UK. Ho partecipato allo sviluppo della piattaforma, basata su C#, Elasticsearch e un'architettura client/server. Una delle sue caratteristiche principali è il supporto al formato storico proprietario UHH, utilizzato dagli strumenti Eurotherm.
Acquisizione e consultazione dei dati industriali
I registratori industriali memorizzano l'evoluzione delle grandezze di processo: temperature, pressioni, misure provenienti dai sensori, allarmi ed eventi. Le registrazioni possono essere utilizzate per verificare il corretto svolgimento di un ciclo produttivo, analizzare anomalie o produrre documentazione tecnica.
La consultazione degli storici presenta esigenze diverse dal semplice monitoraggio in tempo reale. Le informazioni devono rimanere disponibili anche a distanza di anni, poter essere ricercate per intervallo temporale e risultare interpretabili nel contesto in cui sono state acquisite.
Data Reviewer fornisce un ambiente centralizzato per questo tipo di analisi. La documentazione ne descrive l'utilizzo con diverse famiglie di strumenti, tra cui i registratori della serie 6000, i dispositivi nanodac e i controllori T2750 PAC.

Le funzioni comprendono la ricerca delle registrazioni, la selezione dei canali, la rappresentazione grafica dei valori e l'esportazione delle informazioni. L'obiettivo è rendere consultabili gli archivi senza richiedere all'utente di intervenire direttamente sui singoli file prodotti dagli strumenti.
Il formato UHH
Il formato UHH è impiegato nell'ecosistema Eurotherm per la registrazione dei dati storici. Si inserisce nell'evoluzione dei sistemi di archiviazione del produttore, precedentemente basati anche sul formato PKD.
Una registrazione industriale non è costituita soltanto da una successione di valori numerici. Per interpretare correttamente una misura è necessario conoscere almeno il canale di provenienza, il riferimento temporale e le informazioni che ne descrivono il contesto operativo.
I file UHH svolgono il ruolo di archivio storico originale. Questa distinzione è rilevante per l'architettura dell'applicazione: i dati indicizzati per la ricerca sono una rappresentazione derivata, mentre i file di origine costituiscono il riferimento da cui è possibile ricostruirla.
Architettura client/server
Data Reviewer adotta un'architettura nella quale i servizi centrali gestiscono l'importazione e la consultazione degli storici, mentre i client forniscono le funzioni di ricerca e visualizzazione.
Lo schema seguente illustra i componenti principali a livello concettuale:
Registratori e strumenti Eurotherm
|
| File storici UHH
v
+------------------+
| Data Reviewer |
| Servizi C# |
+------------------+
|
+--------+---------+
| |
v v
+------------+ +----------------+
| Archivio | | Elasticsearch |
| file UHH | | Dati indicizzati|
+------------+ +----------------+
| |
+--------+---------+
|
v
Client di consultazione
(ricerca e grafici)
Rappresentazione semplificata dell'architettura logica, non schema ufficiale di implementazione.
La centralizzazione offre diversi vantaggi in ambito industriale: gli archivi vengono gestiti da un servizio comune, più postazioni possono accedere allo stesso insieme di registrazioni e le operazioni di manutenzione non richiedono necessariamente la distribuzione completa del software su ogni client.
La separazione consente inoltre di distinguere le responsabilità dei singoli componenti: conservazione dei dati originali, preparazione delle informazioni per la ricerca e presentazione dei risultati.
C# ed Elasticsearch
Lo sviluppo della piattaforma ha impiegato C# per la realizzazione dei servizi applicativi ed Elasticsearch per la gestione dei dati indicizzati.
Elasticsearch viene comunemente associato alla ricerca testuale, ma il suo modello di interrogazione si presta anche a informazioni strutturate. Nel caso degli storici industriali, le ricerche possono riguardare strumenti, canali, gruppi, intervalli di tempo, eventi e lotti di produzione (batch).
Il problema affrontato da un sistema di questo tipo è la crescita continua degli archivi. La quantità di dati dipende dal numero di strumenti collegati, dai canali registrati, dalla frequenza di campionamento e dalla durata della conservazione. Anche un numero relativamente contenuto di dispositivi può quindi produrre, nel tempo, volumi considerevoli.
L'indicizzazione permette di interrogare le informazioni senza dover rileggere integralmente ogni file UHH per ciascuna ricerca. Non sostituisce però la conservazione degli originali: la documentazione tecnica del prodotto distingue esplicitamente i file storici dai dati importati in Elasticsearch, che possono essere ricostruiti a partire dall'archivio.
Questa distinzione è centrale tanto per le prestazioni quanto per la gestione del ciclo di vita dei dati.
Visualizzazione e analisi
Una volta importate le registrazioni, l'applicazione consente di consultarle attraverso rappresentazioni grafiche e strumenti di analisi temporale.
Tra le modalità disponibili figurano grafici lineari e circolari, questi ultimi legati anche alla tradizione dei registratori industriali su carta. La visualizzazione può interessare più canali e periodi differenti, con strumenti per individuare valori puntuali o delimitare un intervallo.
La documentazione descrive, tra le altre funzioni, l'impiego di due cursori per esaminare i valori e selezionare porzioni di una registrazione. L'organizzazione per gruppi e batch consente inoltre di individuare i dati in base al processo produttivo, anziché soltanto al nome di un file.
Sono previste operazioni di stampa ed esportazione, tra cui il formato CSV, per trasferire i risultati in altri strumenti di analisi o allegarli alla documentazione di produzione.
L'aspetto essenziale non è la sola rappresentazione grafica, ma la coerenza tra le informazioni archiviate e quelle presentate: timestamp, intervalli di campionamento, associazione ai canali ed eventi devono essere interpretati correttamente.

Schermata di Data Reviewer: visualizzazione dei trend di processo su più canali.
Conservazione, affidabilità e accesso ai dati
Nei sistemi di acquisizione industriale, uno storico può essere consultato molto tempo dopo la sua creazione. La sua utilità dipende dalla possibilità di ricostruire fedelmente ciò che è accaduto durante il processo registrato.
Per questo motivo la gestione delle registrazioni non può essere ridotta a un problema di spazio o di velocità di ricerca. Occorre mantenere separati il dato originale, la sua rappresentazione indicizzata e le modalità di accesso degli utenti.
La distinzione tra installazioni più contenute e ambienti multiutente è riflessa anche nelle edizioni del prodotto, tra cui Foundation ed Enterprise. Quest'ultima è orientata a scenari basati su server e con necessità di accesso condiviso agli archivi.
La gestione dei permessi, dei fusi orari e delle operazioni di consultazione è quindi parte integrante del funzionamento della piattaforma, non un aspetto accessorio.