CITTA’ DI MONDOVI’ Provincia di Cuneo DIPARTIMENTO TECNICO APPALTO DI : ¾ SERVIZIO ENERGIA ¾ GESTIONE CALORE DEGLI EDIFICI DI PROPRIETA’ O DI COMPETENZA DELLA CITTA’ DI MONDOVI’. ¾ PERIODO 2004 – 2010 (EVENTUALMENTE RINNOVABILE PER ULTERIORI 5 ANNI) Allegato ”SPECIFICHE FUNZIONALI SOFTWARE SCADA” SYSTEM CONTROL AND DATA ACQUISITION (Denominato SCADA) Mondovì, 25 Maggio 2004 PROGETTISTA CALOR s.r.l. RESPONSABILE DEL PROGETTO CAIROLI P.I. LUIGI ……………………………………. Pratica SRV2004/003 Documento N. 302-D-24-A-R0 DIRIGENTE DIPARTIMENTO TECNICO COMUNE DI MONDOVI’ PRUCCA Ing. ROBERTO …………………………………………….. Documento N. 302-D-24-A-R0 INDICE 1.0 Specifiche funzionali Software SCADA 1.0 Specifiche funzionali Software SCADA .....................................................................2 1.1 Introduzione...........................................................................................................4 1.2 HMI Software Interfaccia Utente............................................................................4 1.2.1 Workstation Grafiche SCADA con funzionalità complete................................5 1.2.1.1 Navigazione a Video...................................................................................5 1.2.1.2 Modulo Sicurezza .......................................................................................6 1.2.1.3 Supporto Servizi Windows..........................................................................6 1.2.1.4 Registrazione Azioni Operatore..................................................................7 1.2.1.5 Funzioni di gestione degli allarmi................................................................7 1.2.2 Workstation Analisi Dati di Processo ..............................................................8 1.2.2.1 Analisi Trend in Tempo Reale e Storici ......................................................9 1.2.2.2 Visualizzazione Grafica X-Y .....................................................................10 1.2.2.3 Componente ActiveX® per Queries SQL ..................................................10 1.2.2.4 Client HTML per Generazione Rapporti ...................................................10 1.2.2.5 Client di Generazione Rapporti in Formato Excel® ...................................11 1.2.2.6 Recupero Dinamico per Visualizzazione di Parametri di Processo Attivi.11 1.2.3 Workstation Grafica di accesso via Web Browser.........................................12 1.3 HMI ( Interfaccia Uomo Macchina ): Requisiti Software Sviluppo........................12 1.3.1 Sviluppo Grafici Visualizzazione ...................................................................12 1.3.1.1 Oggetti Grafici...........................................................................................13 1.3.1.2 Oggetti Riepilogo Allarmi ..........................................................................15 1.3.2 Database Parametri e Configurazione Allarmi ..............................................15 1.3.2.1 Parametri di processo Analogici ...............................................................16 1.3.2.2 Parametri di Processo Digitali...................................................................16 1.3.2.3 Utilità di Importazione/Esportazione .........................................................16 1.3.3 Gestione Applicazioni ...................................................................................17 1.3.3.1 Applicazione Gestione Network Distribuiti ................................................17 1.3.3.2 Gestione Risoluzione Dinamica Visualizzazione ......................................18 1.3.3.3 Applicazione Registro Files ......................................................................18 1.3.3.4 Estensioni ActiveX® ..................................................................................19 1.3.4 Applicazione Logiche di Controllo .................................................................19 1.3.4.1 Applicazione Scripts Logici .......................................................................20 1.3.4.2 Logiche di Controllo Condizionale ............................................................20 1.3.4.3 Logiche di Controllo da Tastiera ...............................................................20 1.3.4.4 Variazione Dati e Logica Window .............................................................21 1.3.4.5 Logica Funzione .......................................................................................21 1.4 Software Server SCADA .....................................................................................21 1.4.1 Eventi di Fallimento Predefiniti......................................................................21 1.4.2 Ridondanza Applicazioni...............................................................................22 1.4.3 Ridondanza Allarmi.......................................................................................22 1.4.4 Ridondanza Comunicazioni ..........................................................................22 1.4.5 Ridondanza Dati Storici ................................................................................23 1.4.6 Connessioni Client ad un Sistema Master ....................................................23 1.5 Drivers Server Comunicazioni RTU/PLC.............................................................23 1.5.1 Comunicazione e reti ....................................................................................23 2 Documento N. 302-D-24-A-R0 1.5.2 Drivers Server I/O Comunicazione Specifici SCADA ....................................23 1.6 Caratteristiche di comunicazione.........................................................................24 1.6.1 Comunicazioni basate su Ethernet ...............................................................24 1.6.2 Ridondanza Comunicazioni ..........................................................................24 1.6.3 Statistiche di comunicazione in-linea e verifica errori....................................24 1.6.4 Controllo Scansioni .......................................................................................25 1.6.5 Tracciamento protocollo e Registro Errori.....................................................25 1.7 Storico Dati ..........................................................................................................25 1.7.1 Compressione Dati .......................................................................................25 1.7.1.1 Esigenze Memorizzazione Parametri Analogici........................................26 1.7.1.2 Esigenze Memorizzazione Parametri Digitali............................................26 1.7.1.3 Esigenze Memorizzazione Altri Parametri ................................................26 1.7.2 Tabelle Database Standardizzate .................................................................26 1.7.3 Importazione Database Parametri di Processo.............................................27 1.7.4 Configurazione Dati Storici............................................................................27 1.7.5 Configurazione Eventi Sistema .....................................................................27 1.7.5.1 Configurazione Eventi ..............................................................................28 1.7.5.2 Reazione Eventi .......................................................................................28 1.7.6 Database di Riepilogo Sistema .....................................................................28 1.7.7 Interfaccia Storici verso altri Database Relazionali .......................................28 1.7.8 Ridondanza Storico (Backup Caldo) .............................................................29 1.7.9 Gestione Dischi Memorizzazione..................................................................29 1.8 Trasmissione Allarmi e Messaggi ........................................................................29 1.8.1 Metodi di notifica allarmi ...............................................................................30 1.8.1.1 Annuncio Locale .......................................................................................30 1.8.1.2 Annuncio mediante chiamata telefonica (chiamata vocale) ......................30 1.8.1.3 Trasmissione su Pager (Cercapersone) ...................................................31 1.8.1.4 Messaggi via email ...................................................................................31 1.8.2 Finestra Primo Piano Allarmi.........................................................................31 1.8.3 Riconoscimento Allarmi ................................................................................31 1.8.3.1 Riconoscimenti consentiti verso il Sistema SCADA..................................31 1.8.3.2 Riconoscimenti consentiti dal Sistema SCADA ........................................32 1.8.3.3 Riconoscimento bi-direzionale..................................................................32 1.8.4 Registrazione Eventi .....................................................................................32 1.8.5 Diagnostica ...................................................................................................32 1.8.6 Configurazione trasmettitore allarmi .............................................................33 1.8.6.1 Integrazione trasmettitore allarmi con Sistema HMI .................................33 1.8.6.2 Lista Gruppi “su chiamata”........................................................................33 1.8.6.3 Tabelle Disponibilità Operatori..................................................................33 1.8.6.4 Programmatore Orario..............................................................................33 1.8.6.5 Registratore Vocale ..................................................................................34 1.9 Protezione Virus e Sicurezza Sistema SCADA ...................................................34 1.9.1 Protezione Firewall .......................................................................................34 1.9.2 Protezione Antivirus ......................................................................................35 1.9.2.1 Aggiornamento Definizioni Virus...............................................................35 1.10 Installazione e licenze Software SCADA .............................................................35 1.11 Lingua..................................................................................................................35 3 Documento N. 302-D-24-A-R0 1.1 Introduzione Il software System Control and Data Acquisition, di seguito denominato “SCADA“ consiste in un Sistema di interfaccia Uomo-Macchina (abbreviato in questo documento con HMI, Human Machine Interface) in grado di eseguire funzioni di supervisione e controllo di processi, acquisire dati in tempo reale, gestire allarmi ed eventi, storicizzare informazioni, generare rapporti, consentire di eseguire comunicazioni in telemetria sia localmente che remotamente da e verso unità intelligenti di varia marca e tipo e può consentire gli accessi, opportunamente protetti, via Intranet/Internet. La fornitura che comprenderà una postazione per il gestore ed una postazione di visualizzazione per l’ente appaltante dovrà soddisfare tutti i requisiti dei vari software che verranno installati , in particolare dovranno garantire la ridondanza e saranno comprensivi di Monitor LCD da 20”, di stampanti grafiche per la stampa dei report e dei trend e ad aghi per la ricezione degli allarmi. Il software dovrà essere facile da utilizzare, in quanto dotato di un ambiente di sviluppo quasi integralmente grafico ed orientato ad oggetti, avente una architettura aperta che sfrutta le migliori tecnologie messe a disposizione dall’ambiente ClientServer Microsoft Windows® nell’attuale versione XP (quest’ultimo limitatamente ai Sistema Operativi disponibili per le WorkStation). Il Sistema può consentire la massima flessibilità, in particolare nel consentire una semplice riconfigurazione in accordo con eventuali specifiche richieste da parte del/degli Utilizzatori ed una estrema praticità ed intuitività che consenta agli Operatori di agire sul campo. Il software consisterà in una suite di componenti modulari altamente integrati fra di loro, per consentire allo SCADA di eseguire tutte le funzionalità richieste, e, permetterne allo stesso tempo, futuri adeguamenti ed ampliamenti e tutti gli applicativi software si potranno sviluppare da un unico produttore. Il sistema HMI visualizza i vari processi di automazione tramite una serie di componenti software che consentono anche di collezionare e raccogliere automaticamente in report i dati storicizzati, esso è in grado di comunicare con le varie unità a microprocessore installate (anche se di diversa marca e differenti modelli) e dovrà essere usufruibile anche da remoto in modalità completamente trasparente all’Utilizzatore. L’architettura dovrà essere scalabile affinché sia possibile espandere anche una piccola applicazione stand-alone fino a trasformarla in un esteso network con database singoli o ridondanti e server di comunicazione singoli o ridondanti che forniscono informazioni a numerose workstations client. Il software avrà anche la capacità di interfacciarsi facilmente con i principali database ed applicativi di calcolo come quelli prodotti da Microsoft e Oracle. 1.2 HMI Software Interfaccia Utente Questa sezione descrive le varie funzionalità relative all’interfaccia Utente dello SCADA; il software sarà fornito con tre livelli di licenza: Workstation Grafica SCADA con funzionalità complete; pienamente operativa per Operatori di Sistema 4 Documento N. 302-D-24-A-R0 Workstation Analisi Dati di Processo; per gli Utenti che necessitano di accedere ai dati di processo ed effettuarne veloci rapporti ma non di visualizzare graficamente gli impianti Workstation grafica di accesso SCADA via Web Broswer; per gli Utenti che necessitano della visualizzazione grafica e dinamica degli impianti ed eventualmente controllare i processi. Il software del Sistema SCADA, come descritto nei paragrafi successivi di questo stesso capitolo, sarà in grado di funzionare su Intranet/Internet. La sicurezza per questo tipo di connessioni è garantita dall’utilizzo della tecnologia Secure Socket Layer (SSL). Un Utente sarà in grado di visualizzare l’applicativo SCADA direttamente dal proprio desktop, all’interno di MS Internet Explorer©. Tutti gli applicativi software sono collegati fra di loro e conformi a quanto descritto nel paragrafo 2.3 e relativi sottoparagrafi, dove sono riportati anche i dettagli relativi alle caratteristiche di programmazione dello SCADA. 1.2.1 Workstation Grafiche SCADA con funzionalità complete Da queste Workstation l’operatore SCADA dovrà essere in grado di eseguire il completo monitoraggio ed eseguire la supervisione di tutte le funzioni di controllo. I tipici comandi operatore includono la modifica dei setpoints di regolazione, la forzatura Auto/Manuale ed il controllo On/Off dei dispositivi in campo, il riconoscimento degli allarmi e la visualizzazione ed elaborazione dei dati acquisiti. L’Operatore dovrà anche essere in grado di accedere a tutti processi dello SCADA e visualizzare graficamente ogni informazione relativa al Sistema da qualsiasi Workstation appartenente al Network e senza interessarsi o conoscere in quali Server il punto è residente o dove sono memorizzati gli specifici dati storici. 1.2.1.1 Navigazione a Video L’Operatore dovrà interagire in tutti i processi e le attività dello SCADA attraverso l’ausilio di icone intuitive e menù a tendina o a tutto schermo. Il software di Sistema supporterà accessi e visualizzazioni multipli e, in tempo reale da parte dell’Operatore, e prevederà la possibilità di suddividere le schermate in modo da visualizzare più di un processo alla volta. Oltre a questo, il Sistema prevederà il pieno supporto all’utilizzo di schermate in primo piano multiple anche non dipendenti dal processo specifico, ad esempio per il richiamo di informazioni di aiuto o di diagnostica. L’Operatore dovrà essere i grado di accedere ad aiuti in linea e sensibili al contesto, e ciò dovrà avvenire da qualsiasi schermata ed in ogni momento, rimanendo in linea con l’impianto, tramite la pressione di un solo pulsante o click del mouse. L’Operatore dovrà essere in grado di accedere a schermate di visualizzazione mediante utilizzo di un dispositivo di puntamento e/o la pressione di un singolo pulsante della tastiera e dovrà eseguire la scelta dei pulsanti da abbinare alla specifica funzione richiesta. La navigazione fra le videate grafiche non richiederà la digitazione di alcun comando tramite digitazione di caratteri numerici o alfanumerici 5 Documento N. 302-D-24-A-R0 da tastiera. I dispositivi di puntamento supportati includono un mouse, touch-screen (schermi sensibili al tocco) e penne ottiche. L’Operatore dovrà essere in grado di identificare quali oggetti sono selezionabili in ogni schermata, semplicemente muovendo il puntatore e facendolo passare sopra agli oggetti visualizzati. Una variazione dell’aspetto dell’oggetto (un riquadro, una variazione del colore o similari) dovrà essere visibile a video in modo da confermare che si tratta di un oggetto selezionabile. I simboli tipici relativi agli oggetti includono rappresentazioni di dispositivi di processo tipici (pompe, motori, sonde, ecc.), rappresentazioni di regolatori, pulsanti, switch o cursori. Il dettaglio delle funzioni è riportato al paragrafo 2.3.1 e relativi sottoparagrafi. 1.2.1.2 Modulo Sicurezza Il modulo sicurezza consiste in uno specifico applicativo in grado di funzionare sulla stessa piattaforma (Sistema Operativo) prevista per l’intero Sistema e si occupa della gestione degli accessi allo SCADA da parte degli Operatori, con una logica basata su livelli e passwords. L’accesso ad ogni schermata ed a qualsiasi funzione di comando si basa sul livello di sicurezza abbinato allo specifico Operatore in modo da prevenire accessi e/o utilizzi non autorizzati. A seguito della creazione iniziale, solo gli Utenti autorizzati o l’Amministratore del Sistema potranno accedere o modificare le password. Il controllo di sicurezza dovrà essere in grado di impedire l’accesso a tutti i controlli di Microsoft Windows (menu file, chiudi, riduci ad icona, ecc.) ed impedire comandi da tastiera che possano servire a tentare di “aggirare” le protezioni di Sistema (Ctrl+Alt+Canc, Ctrl+Esc e Alt+Tab). Il modulo di sicurezza dovrà prevedere almeno 100 livelli di protezione di sicurezza. La visualizzazione di oggetti, quali pulsanti di comando, selettori, cursori, setpoints ed anche intere schermate, dovrà essere subordinata ai livelli di sicurezza abbinati ad ogni Operatore. Il livello di sicurezza sarà stabilito durante le procedure di accesso al front-end di Sistema. 1.2.1.3 Supporto Servizi Windows L’interfaccia Operatore della Workstation si dovrà eseguire come Servizio di Windows. Questo consentirà al Sistema Operativo di eseguire in background le numerose funzionalità chiave richieste al Sistema SCADA quali, ad esempio, le registrazioni storiche di valori nel tempo, gli allarmi o, più in generale, le comunicazioni I/O. La funzionalità Servizi permetterà di garantire la costante operatività anche nei momenti in cui vi siano variazioni negli accessi o non vi sia più alcun accesso Operatore. L’interfaccia HMI e le applicazioni funzionanti come servizio dovranno prevedere la riesecuzione in automatico a seguito di mancanze di alimentazione o spegnimenti/riaccensioni. Questa funzione garantirà il corretto e completo funzionamento ad ogni eventuale riavvio senza compromettere la sicurezza e le funzionalità del Sistema Operativo. 6 Documento N. 302-D-24-A-R0 1.2.1.4 Registrazione Azioni Operatore Tutte le azioni degli Operatori dovranno essere registrabili da un servizio di registrazione eventi. Il registratore dovrà tenere traccia di ogni accesso o uscita di Operatore, modifica di setpoint o variazione su elementi o dispositivi controllati. Ogni evento dovrà essere registrato includendo, come minimo, informazioni quali data ed ora, Operatore attivo e tipo di azione intrapresa (modifica setpoint, cambio di stato, ecc.). 1.2.1.5 Funzioni di gestione degli allarmi L’Operatore dovrà essere in grado di visualizzare le informazioni relative allo stato corrente ed allo storico degli allarmi, sfruttando apposite videate a tutto schermo ove è mostrato il riepilogo corrente degli allarmi e/o utilizzando porzioni di finestra per scorrere specifiche informazioni richieste. Le informazioni relative allo storico degli allarmi saranno visualizzabili in ordine cronologico, con l’ultimo allarme mostrato in cima alla lista. Le informazioni visualizzate per ciascun allarme includeranno come minimo l’ora e la data dell’evento, descrizione, identificativo dell’elemento interessato, stato dell’allarme, tipo di allarme, valore, livello/priorità e classe. Sarà possibile all’Operatore filtrare la visualizzazione degli allarmi visualizzati, basandosi su criteri quali priorità, gruppi od anche per aree di processo. Vista la caratteristica “distribuita” del Network, gli allarmi potranno essere visibili, stampabili e riconoscibili da qualsiasi Workstation e questa informazione dovrà essere distribuita a tutti i Clients. Inoltre, si dovrà configurare il Sistema in modo da consentire che l’Operatore sia avvisato dell’allarme indipendentemente da che cosa l’Operatore stia visualizzando al momento dell’evento. La procedura di notifica dovrà prevedere la possibilità di visualizzazione automatica della finestra di allarme in primo piano (pop-up display), un simbolo di allarme da associare intuitivamente al tipo o livello di allarme ed un messaggio con testo esplicativo richiamabile dalla Gestione Allarmi o da una specifica finestra richiamabile da qualsiasi punto del Sistema. La stampa degli allarmi dovrà essere indirizzata su tutte le stampanti di rete del sistema. La schermata di riepilogo degli allarmi disporrà delle tradizionali barre di scorrimento orizzontali e verticali con le quali l’Operatore dovrà sfogliare l’elenco degli eventi. La visualizzazione di queste barre di scorrimento sarà configurabile dall’Utente. La gestione degli allarmi supporterà fino a otto differenti combinazioni di colori basate sulle priorità degli allarmi e sulle condizioni di allarme riconosciuto o non riconosciuto. I colori dovranno essere configurabili dall’Operatore e dovranno essere disponibili come minimo 256 colori. 7 Documento N. 302-D-24-A-R0 Il sistema sarà in grado di notificare automaticamente i nuovi eventi configurati all’Operatore. L’evento allarme provocherà la visualizzazione di un oggetto grafico identificativo dell’allarme, selezionato il quale l’Operatore dovrà immediatamente visualizzare lo specifico evento, evidenziato in modo da facilitarne l’individuazione. Tramite la visualizzazione degli allarmi il Sistema permetterà di recuperare le informazioni relative agli allarmi semplicemente eseguendo delle “query” (richieste) al server degli allarmi. La richiesta sarà anche effettuabile tramite selezione fra scale di “priorità”, stato di riconoscimento, gruppo, dallo storico od anche dal riepilogo. Si potranno ammettere combinazioni di query in modo da ottenere un ottimo filtraggio delle informazioni relative agli allarmi anche in caso di databases di notevoli dimensioni. L’Operatore dovrà essere in grado di selezionare e riconoscere gli allarmi individualmente o come gruppo od area di processo. L’Operatore dovrà essere in grado di riconoscere solamente gli allarmi visualizzati a video, solo quelli selezionati, solo quelli più recenti oppure tutti gli allarmi nel Sistema. La selezione degli allarmi che verranno interessati dall’azione dell’Operatore sarà eseguibile direttamente tramite click del mouse ed eventualmente in combinazione con i tasti di selezione standard di Windows (CTRL per la sezione singola o Shift per la selezione in scala). L’Operatore dovrà selezionare un allarme anche direttamente dalla schermata di riepilogo degli allarmi ed il Sistema consentirà automaticamente il passaggio alla specifica schermata evidenziando l’area da dove l’allarme stesso è stato generato. Sarà possibile informare l’Operatore a seguito di una nuova condizione di allarme tramite segnalazione acustica, apertura automatica di schermate specifiche (popdisplays) ed anche predisporre combinazioni di queste od esecuzione di animazioni e/o applicazioni specificatamente predisposte. Il dettaglio delle funzioni è riportato al paragrafo 2.3.2 e relativi sottoparagrafi. 1.2.2 Workstation Analisi Dati di Processo Il software di Sistema SCADA includerà un set strumenti software facili da utilizzarsi per le analisi storiche di dati acquisiti in tempo reale o storicizzati e generazione di rapporti. Questo client software dovrà essere facilmente utilizzato da tecnici, manutentori o personale addetto alla supervisione che dovrà così disporre di un potente e semplice strumento per ottenere informazioni dallo SCADA senza avere la necessità di accedere a delle schermate grafiche. Gli strumenti software permetteranno permettere di accedere a qualsiasi dato memorizzato in qualsiasi Database o Server siano stati memorizzati. Agli Operatori sarà consentito l’accesso ai server a seguito di verifica nome Utente e Password. Agli Utenti non sarà richiesto di conoscere l’ubicazione dei server nel network ma solo il nome del Server, ricercabile anche tramite attivazione di una specifica finestra di ricerca dalla quale visualizzare i Server disponibili e selezionare quello richiesto. Il software di analisi dati dovrà includere strumenti avanzati tramite i quali sia possibile eseguire esaustive analisi delle tendenze, visualizzare i dati in vari formati 8 Documento N. 302-D-24-A-R0 grafici e creare rapporti in fogli elettronici o in formati liberi e personalizzabili. Tutti gli applicativi software potranno supportare il tasto destro del mouse, tramite il quale selezionare velocemente le opzioni disponibili. Gli applicativi software potranno essere disponibili sia come eseguibili stand-alone che come controlli Active X che ne consentano l’implementazione in HMI in modo da permetterne l’utilizzo anche sulle Workstation Operatore, tramite implementazione in interfaccia grafica. 1.2.2.1 Analisi Trend in Tempo Reale e Storici Un applicativo software Client permetterà all’Utente di visualizzare alcuni o tutti i parametri di processo sia in formato di trend grafico che in formato tabulare. L’applicativo Client dovrà avere un’interfaccia Utente che permetta una semplice ed intuitiva selezione dei parametri di interesse utilizzando una schermata di un browser tipo MS Explorer e dotato di un potente e flessibile filtro di ricerca che consenta di trovare le informazioni ricercate anche in Database contenenti parecchie migliaia di punti. L’Utente dovrà essere in grado di creare cartelle per gruppi di punti selezionati e stamparli individualmente o raggruppati semplicemente trascinandoli in un’area di trend specifica. L’Utente dovrà essere in grado di anche eseguire le operazioni di salvataggio dei trend in modo da poterli successivamente richiamare. L’Utente dovrà essere in grado di scegliere quali dati richiamare, passando agevolmente (con un semplice click) dai dati in tempo reale a quelli storici. All’Utente sarà concesso anche di selezionare velocemente le impostazioni base di visualizzazione grafica dei dati, ad esempio selezionando una visualizzazione ad assi singoli unici oppure ad assi e scale indipendenti per ciascun parametro richiamato (questo tipo di visualizzazione richiede solitamente un asse comune mentre l’altro con scale dipendenti dalle grandezze abbinate). Dovrà essere supportata anche una funzionalità di autoadattamento delle scale degli assi in base ai valori delle grandezze visualizzate, in modo da semplificare il più possibile le operazioni. 1.2.2.1.a Visualizzazione Trend in Tempo Reale L’Utente dovrà essere in grado di gestire fino a 50 trend di differenti processi in tempo reale, includendo sia parametri analogici che digitali nello stesso trend. L’Utente dovrà essere in grado di selezionare i parametri direttamente dal browser. La scala temporale e quella verticale corrispondente al trend dovrà essere configurabile direttamente dal run time (l’applicativo software che gestisce la funzionalità all’interno del browser). Alcuni valori di tempo standard, tipo 5, 10, 30, 60 minuti o le ultime 2, 4, 8 o 24 ore, potranno essere immediatamente e semplicemente richiamabili. All’Utente sarà concesso di variare le scale direttamente dal run time. 1.2.2.1.b Visualizzazione Trend Storico L’Utente dovrà essere in grado di stampare i dati storici relativi a qualsiasi processo o gruppi di processo estraendoli direttamente dal/dai databases su base temporale. 9 Documento N. 302-D-24-A-R0 Due assi incrociati o strumento analogo potranno essere disponibili a video su richiesta in modo da consentire all’Utente di visualizzare agevolmente i corretti valori corrispondenti a ciascun punto evidenziato all’intersezione dei due assi. Si potranno visualizzare con lo stesso metodo anche i corrispondenti valori temporali (data, ora, minuti e secondi). Un riepilogo con valori statistici dovrà essere disponibile evidenziando, come minimo, il valore minimo, massimo, la media e la deviazione dallo standard. Icone o menu a tendina potranno essere disponibili per consentire e l’analisi i dati corrispondenti all’asse orizzontale o verticale e permettere l’esecuzione di zoommate e spostamenti sul grafico ingrandito o rimpicciolito. Sarà consentito all’Utente la creazione in qualsiasi punto del grafico di testi con annotazioni e/o etichette. Queste annotazioni o etichette saranno visibili anche dalle altre workstations presenti nel network se dotate dei medesimi applicativi di visualizzazione. Si potranno esportare i dati visualizzati nell’area dei trend in un file CSV. Sarà inoltre supportata la stampa dei trends e di tutti i dati statistici. 1.2.2.2 Visualizzazione Grafica X-Y Dovrà essere incluso un applicativo client che permetta agli Utenti di visualizzare due processi in un'unica visualizzazione grafica di tipo X-Y. L’applicativo client dovrà avere un’interfaccia Utente che permetta la selezione diretta dei parametri e la storicizzazione dei grafici X-Y in cartelle nel Network dalle quali poterli velocemente richiamare in tempi successivi. L’Utente dovrà essere in grado di creare immagini di sfondo (in background) dei trend X-Y previsti in modo da poterli direttamente confrontare con valori correnti e visualizzare eventuali tendenze anomale. 1.2.2.3 Componente ActiveX® per Queries SQL Uno specifico strumento software realizzato con tecnologia ActiveX® dovrà essere disponibile per permettere all’Utente di eseguire “queries” SQL (creazione di speciali “filtri” mediante i quali eseguire una dettagliata selezione dei dati richiesti fra tutti quelli disponibili nel/i Databases) che mostrino il risultato richiesto da qualsiasi dato memorizzato in qualsiasi Server SQL presente nel Network. I dati mostrati da questo applicativo ActiveX® potranno essere mostrati all’interno di una griglia tipo foglio di calcolo. Sorgenti multiple (Server multipli) potranno così essere intuitivamente gestibili tramite questo applicativo Active® . 1.2.2.4 Client HTML per Generazione Rapporti Uno strumento software (client) dovrà essere incluso in modo da permettere all’Utente di generare dei rapporti riguardanti qualsiasi parametro controllato. L’applicativo software dovrà disporre di una interfaccia Utente che consenta di selezionare i parametri richiesti ed anche di poter richiamare ed utilizzare rapporti o 10 Documento N. 302-D-24-A-R0 modelli di rapporti creati in precedenza. Il software dovrà consentire di impostare, modificare e generare rapporti che presentino i dati in un formato il più possibile professionale ed intuitivo. Le tipologie di informazioni supportate potranno includere dati storici e valori attuali, informazioni inerenti le configurazioni dei parametri di processo, grafici, statistiche, annotazioni, eventi, informazioni riepilogative e risultati di Query. Rapporti potranno essere generati basandosi su dati storicizzati in base ad indicazioni di periodo specificati in minuti, ore, giorni settimane o mesi. Dovrà anche essere possibile generare rapporti su richiesta specifica dell’Utente. I rapporti prodotti potranno essere direttamente formattabili in formato HTML in modo da essere visualizzabili con un Web Browser, memorizzati su di un Server od inviati ad una stampante. 1.2.2.5 Client di Generazione Rapporti in Formato Excel® Un client software dovrà essere disponibile per permettere agli Utenti di selezionare agevolmente e direttamente i parametri di processo desiderati sia in tempo reale che prelevati da databases tramite un Browser e dunque utilizzati in un foglio elettronico standard Ms Excel® per esecuzione di rapporti o presentazioni di managements. La selezione dei parametri di processo sarà supportata da funzionalità di “drag and drop” (trascina e rilascia) e da comandi “punta e clicca”. Non dovrà essere richiesta la scrittura di “macro” o similari per recuperare od evidenziare i dati. I parametri di processo selezionati potranno essere esportati in specifiche celle del foglio elettronico e processati come dati di tipo numerico. L’Utente dovrà essere in grado di avere la possibilità di selezionare dati in tempo reale per valori più recenti in secondi o minuti. L’Utente dovrà essere in grado di selezionare dati storici fra i più recenti in minuti od ore, oppure dovrà eseguire una specifica scelta temporale fra tutti dati disponibili nei Databases. I dati storici si potranno richiamare così come memorizzati o riepilogati come valori minimi, massimi o di media in un certo periodo di tempo. L’aggiornamento dei dati correnti disponibili nel foglio elettronico dovrà avvenire tramite un semplice click del mouse (il comando dovrà essere bene in evidenza). La qualità dei dati sarà analizzata e visualizzata e dunque l’Utente dovrà essere in grado di selezionare se visualizzare meno dati o sostituiti con valori interpolati. L’Utente dovrà essere in grado di anche specificare scelte di valore relativo o assoluto. 1.2.2.6 Recupero Dinamico per Visualizzazione di Parametri di Processo Attivi Un client software sarà disponibile per permettere agli Utenti di visualizzare qualunque o tutti i parametri di processo ed i loro valori correnti, senza richiedere una chiamata SQL allo storico. I parametri di processo saranno dunque aggiornati in tempo reale o con tempi di scansione predeterminati in fase di configurazione. L’applicativo client dovrà avere un’interfaccia Utente che permetta la selezione dei parametri di processo e la memorizzazione di gruppi di parametri che possano 11 Documento N. 302-D-24-A-R0 essere riutilizzati in tempi successivi. I valori visualizzati utilizzando questo strumento software saranno selezionati con semplici operazioni di trascina e rilascia (drag and drop) direttamente dal Browser nell’area di visualizzazione. 1.2.3 Workstation Grafica di accesso via Web Browser Il software di Sistema SCADA dovrà supportare postazioni di lavoro adatte all’accesso tramite Web Broswer, tipo MS Internet Explorer©, utilizzate di norma da Personale di Gestione o Supervisione che vogliano accedere, direttamente dal proprio desktop, a tutte le visualizzazioni, trends ed eventualmente di controllare i processi ma senza responsabilità di gestione degli allarmi. Fanno parte di questa categoria gli accessi tramite Browser web che sfruttano il codice HTML dello SCADA, la sicurezza per questo tipo di connessioni si dovrà garantire dall’utilizzo della tecnologia Secure Socket Layer (SSL). Il modulo software per le WS grafiche di accesso via Web Browser, sarà completo nella sua funzionalità, le configurazione relative alle singole WS saranno limitate alle attività specifiche dei Clients. 1.3 HMI ( Interfaccia Uomo Macchina ): Requisiti Software Sviluppo Questa sezione descrive le caratteristiche tecniche del software che dovrà assicurare la possibilità di sviluppo attuale e futuro di tutte le funzionalità richieste agli applicativi del Sistema SCADA. Sono ovviamente inclusi anche lo sviluppo di pagine di visualizzazione grafica, la configurazione dei Databases in tempo reale e storici, gli allarmi, le comunicazioni con i dispositivi in campo e la configurazione degli applicativi per i Clients ed i Servers del network SCADA. 1.3.1 Sviluppo Grafici Visualizzazione Il software di Sistema SCADA dovrà includere un generatore di grafici di visualizzazione a colori basato sulla programmazione orientata agli oggetti e con il completo supporto alle funzionalità di animazione che permettano agli Utenti la massima realisticità di visualizzazione dei processi di Sistema. Tutte le operazioni di editazione dei grafici potranno basarsi sulla possibilità di puntare e selezionare delle icone disponibili tramite delle barre fluttuanti o in apposite aree oppure richiamabili da dei menu e tendina anche richiamabili con comandi veloci da tastiera. Si potranno effettuare dei test funzionali di ogni grafico di visualizzazione, passando alla modalità runtime tramite un semplice consenso via mouse. L’applicativo di editazione delle pagine di visualizzazione grafica dovrà includere i seguenti strumenti per il disegno, i collegamenti (links) e l’animazione. 12 Documento N. 302-D-24-A-R0 1.3.1.1 Oggetti Grafici L’applicativo di editazione grafica dovrà includere un set di strumenti grafici di base che consentano la creazione di simboli grafici semplici o complessi. Gli oggetti semplici potranno essere creati selezionando un’icona disponibile in una barra strumenti di disegno che includerà come minimo strumenti linea, rettangolo, poligono, ellisse, cerchio, solidi pieni e testo. Ad ognuno di questi oggetti potranno essere assegnati vari attributi come il colore delle linee, colore di riempimento, dimensione ed orientamento e questi potranno essere attributi statici o dinamici. Gli oggetti di tipo testo potranno essere scalabili ed utilizzare gli stili di grassetto e le sottolineature. Tutti gli oggetti potranno comunque essere scalabili e potranno essere spostati in qualsiasi punto o direzione, ad un pixel alla volta od anche trascinati tramite mouse. L’editor grafico dovrà supportare tutte le funzionalità standard adatte alla manipolazione degli oggetti come, ad esempio, le opzioni tipo taglia, copia, incolla o cancella. Potranno essere disponibili funzionalità che consentano l’agevole posizionamento o allineamento degli oggetti. Lo strumento di allineamento dovrà includere la possibilità di giustificazione a sinistra, destra, al centro, in alto e in basso. I comandi di allineamento oggetti potranno prevedere anche la possibilità di ridisporre verticalmente, orizzontalmente, spostare in secondo piano, in primo piano, ruotare ed infine raggruppare o dividere gruppi di vari oggetti. L’editor grafico dovrà includere una estesa varietà di simboli complessi e di processo, come strumenti di misura, pulsanti a pressione, potenziometri, pompe, motori, serbatoi, valvole, sonde, trends, allarmi, modelli di regolazione e bitmaps. Tutti gli oggetti grafici potranno essere ridimensionabili in ogni grandezza e potranno includere collegamenti animati per fornire risposte dinamiche e basate su dati in tempo reale od azioni dell’Utente. 1.3.1.1.a Animazione Oggetti Gli oggetti potranno essere animabili con i seguenti attributi: Modifica colori oggetti: minimo 256 colori, di cui 128 colori standard ed altri 128 definibili dall’Utente. Un set di colori predefiniti dall’Utente dovrà essere in grado di essere creato, importato o esportato. Il set di colori sarà basato su un range minimo di 16,7 milioni di colori (24 bits). Il software dovrà anche prevedere e supportare colori che l’Utente dovrà essere in grado di definire come trasparenti e che potranno essere sfruttati sia per la definizione di oggetti che per gli sfondi. Dovrà essere disponibile il supporto al riempimento in percentuale degli oggetti basato su valori in tempo reale di parametri di Sistema; il riempimento dovrà essere definibile direzionalmente verso l’alto, il basso, sinistra e/o destra. Supporto funzionalità di lampeggio di oggetti in base a parametri predefiniti quali condizioni di allarme o gruppi di allarme. La frequenza di lampeggio sarà impostabile come lenta, media o veloce. 13 Documento N. 302-D-24-A-R0 Ogni oggetto disporrà di un attributo con il quale determinare la sua visibilità in base alla condizione di corrente di un parametro di Sistema, una condizione di allarme od al livello di sicurezza dell’Operatore. Il Sistema supporterà l’animazione degli oggetti, come il ridimensionamento, lo spostamento e/o la rotazione in base alle variazioni di valore del/i parametro/i di Sistema associato/i. Gli oggetti saranno animati in base a criteri scelti dall’Utente ed abbinati ai parametri di Sistema già controllati. Sarà supportato l’utilizzo di espressioni contenenti funzioni matematiche anche complesse e l’utilizzo di ogni valore disponibile dal Sistema (sia analogici che logici). L’editor grafico supporterà la creazione e l’utilizzo di livelli di oggetti che potranno essere attivati in base a condizioni di specifici processi. Lo strumento di sviluppo grafici consentirà il posizionamento degli oggetti sfruttando possibilità quali lo “scatto-alla-griglia” con dimensioni della griglia selezionabili, questo per agevolare e semplificare il posizionamento degli oggetti nelle schermate grafiche. Lo strumento di sviluppo grafici supporterà una caratteristica di “annulla/ripristina” in grado di agire su numero di comandi o azioni predefinibile dall’Utente. Il Sistema supporterà una libreria di oggetti “auto-configuranti” che potranno variare le loro proprietà in base alle scelte effettuate tramite dei box di dialogo visualizzati automaticamente durante le fasi di sviluppo. Ad esempio, considerando un oggetto standard di gestione di un valore impostato (set-point) con una scala graduata ed una scala di default da 0 a 100, le schermate di dialogo guideranno l’Utente nell’assegnazione di valori personalizzati di fondo scala, del numero minore o maggiore di divisioni visualizzate e nell’assegnazione di etichette personalizzate e nel tipo di carattere utilizzato. A seguito di queste scelte, l’oggetto scelto verrà automaticamente ridisegnato e mostrato con i valori di fondo scala, numero di suddivisioni, spazi, nuove etichette e tipi di carattere prescelti. Il Sistema permetterà l’importazione di files in *.DWG o *.DXF, con gli elementi grafici importati come oggetti nativi. Sarà dunque possibile animare questi oggetti utilizzando tutte le caratteristiche di animazione già specificate nel presente paragrafo. L’editor grafico permetterà anche all’Utente di importare disegni ed immagini con formati quali .BMP, .JPEG, .PCX .TGA. e DWG. L’ambiente di sviluppo grafico dovrà supportare la copia di singoli oggetti o gruppi, mantenendo le caratteristiche di origine e consentendo l’assegnazione diretta o la sostituzione di riferimenti di processo od altri parametri senza dovere abbandonare l’ambiente di editazione grafica. L’ambiente di sviluppo grafico dovrà supportare la copia di singoli o gruppi di oggetti o di simboli anche da una finestra ad un'altra mantenendo tutte le caratteristiche di 14 Documento N. 302-D-24-A-R0 animazione, i collegamenti e gli attributi di origine. Questa funzionalità garantirà il massimo rendimento nella produzione di grafici o simboli simili o identici e ne garantirà anche l’omogeneità. Oltre a questo sarà possibile importare le finestre da altre applicazioni mantenendone il medesimo aspetto. L’Utente dovrà essere in grado di aggiungere nuovi parametri alle schermate grafiche senza mai abbandonare l’ambiente dell’editor grafico. L’Utente dovrà essere in grado di direttamente eseguire ricerche di specifici parametri da attualizzare nella grafica, ottenendo tutte le informazioni richieste (set di allarme, indirizzo I/O ed altri dettagli…) senza mai abbandonare l’ambiente di editazione grafica. Un sistema di aiuto in linea sensibile al contesto supporterà l’Utente nella creazione della grafica. Gli Utenti potranno ottenere aiuto immediato in ogni stadio del processo semplicemente premendo un tasto funzione per la richiesta di aiuto. L’Utente dovrà essere in grado di creare o ridefinire le scermate grafiche mentre il Sistema continuerà a monitorizzare i processi. 1.3.1.2 Oggetti Riepilogo Allarmi Gli allarmi saranno visualizzati tramite un apposito oggetto definito e configurabile direttamente dall’Utente, che dovrà essere posizionato individualmente o congiuntamente con altri oggetti in una finestra. L’oggetto dovrà essere ridimensionato e un doppio click su di esso provocherà l’attivazione della sua finestra di dialogo per la configurazione. Le opzioni standard per la configurazione saranno mostrate a video e sarà possibile modificarne i parametri in modo da personalizzare la visualizzazione. La configurazione dell’applicativo di gestione degli allarmi includerà una serie di parametri con caselle di selezione per abilitare o disabilitare come gli allarmi appariranno all’interno dell’applicativo di visualizzazione degli allarmi. Gli allarmi saranno colorati secondo una logica dipendente dalla condizione e dal livello, includendo gli allarmi riconosciuti, non riconosciuti ed allarmi la cui condizione è ritornata alla normalità ma che non sono ancora stati riconosciuti. L’Utente dovrà essere in grado di scegliere fra una gamma di almeno 256 colori quali gamme di colori abbinare a ciascuna situazione. L’applicativo di visualizzazione degli allarmi supporterà anche la visualizzazione su evento, sempre sfruttando la differenziazione di colori per evidenziarne stato e livello. Saranno da supportare almeno 8 diverse combinazioni di importanza (livelli di allarme). 1.3.2 Database Parametri e Configurazione Allarmi Il software di Sistema SCADA includerà un’interfaccia di configurazione Database per la definizione di tutti i parametri di processo ed i punti allarme. Gli identificativi dei parametri di processo (di qui in avanti definiti come Tagnames) saranno definibili con un massimo di 32 caratteri alfanumerici. La configurazione del database avverrà 15 Documento N. 302-D-24-A-R0 attraverso un a serie di finestre di dialogo ove verranno presentati dei campi vuoti da riempire. I tagnames potranno essere digitati una sola volta. Tutte le successive volte in cui si vorranno selezionare dei tagnames, verranno utilizzate delle finestre nelle quali sfogliare e selezionare direttamente i tagnames disponibili, aiutati da una serie di filtri sensibili al contenuto che agevoleranno le ricerche anche quando il numero dei tagnames sarà notevole. Il database di Sistema supporterà le seguenti tipologie di parametri : analogici (interi o reali) discreti o digitali e stringhe fino a 132 caratteri. 1.3.2.1 Parametri di processo Analogici Campi di testo potranno essere inclusi per definire codici di processo e descrizione, unità ingegneristiche, gruppo di allarme e nome di accesso I/O del campo dispositivo al quale è collegato il valore analogico. Campi di dati numerici saranno da includere per definire l’allarme e la priorità di livello, il valore iniziale dopo un riavvio, la zona morta, valori di minima e massima, valori minimi e massimi in unità ingegneristiche, valori di set allarme o in percentuale per ciascun tip di allarme e valore della zona morta di allarme. Si potranno prevedere delle caselle di spunta per abilitare o disabilitare le seguenti funzionalità: dati storici e registrazione eventi, ripristino ultimo valore dopo una mancanza di alimentazione elettrica, modifica dei limiti di allarme per tutti i tipi di punto inclusi min, min-min, max, max-max, grado di variazione e deviazione. 1.3.2.2 Parametri di Processo Digitali Campi di testo saranno inclusi per definire codici di processo e descrizione, messaggi on/off per allarmi ed eventi, nome gruppo allarme e nome di accesso I/O del campo dispositivo al quale è collegato il punto discreto (digitale). Delle caselle di spunta saranno disponibili per abilitare o disabilitare funzioni applicative quali registrazione eventi, ripristino dell’ultimo valore prima di una mancanza di alimentazione elettrica, valore iniziale in fase di avviamento e stato di allarme. 1.3.2.3 Utilità di Importazione/Esportazione Il database includerà una utilità per supportare l’importazione e l’esportazione in files formato .csv per l’editazione in un foglio elettronico come, per esempio, Ms®Excel. 16 Documento N. 302-D-24-A-R0 1.3.3 Gestione Applicazioni Ogni applicazione dovrà includere un gestore applicazione strutturato stile Windows Explorer che semplifichi la gestione delle finestre (visualizzazioni), scripts, tagnames, allarmi e documentazione dell’applicazione. Un tagname di indice incrociato garantirà la possibilità di identificare dove tutti i tags, collegamenti ed oggetti sono utilizzati attraverso tutte le finestre nell’applicazione. Il gestore applicazioni fornirà la possibilità di variare dinamicamente la risoluzione delle finestre dell’applicazione. Questo consentirà ad applicazioni grafiche di essere sviluppate su Workstations con differenti risoluzioni di visualizzazione e di convertirle velocemente alla risoluzione desiderata in modo da omogeneizzarne aspetto ed ambiente. 1.3.3.1 Applicazione Gestione Network Distribuiti Il software SCADA dovrà fornire funzionalità standard per semplificare la configurazione, l’operatività la risoluzione dei problemi e la manutenzione delle applicazioni fornendo il significato e la distribuzione dell’applicazione stessa all’interno dell’ambiente di Rete (Network). Il software di gestione DNA (Distributed Network Application) aderirà all’architettura client-server e contemporaneamente consentirà ad un’applicazione Master singola di essere sviluppata e mantenuta nel network. Il gestore DNA distribuirà automaticamente le applicazioni Master a tutti i nodi del network SCADA. 1.3.3.1.a Ubicazione Applicazioni Le applicazioni Master saranno memorizzate e mantenute in un Server accessibile a ciascun nodo Client, in grado di fornire facilità di manutenzione e garantire capacità di editazione senza restrizioni. La gestione DNA permetterà ai nodi Client di avviare l’applicazione dal Server e quest’ultimo distribuirà l’applicazione Server a destinazioni definibili dall’Utente e che saranno specificabili da qualsiasi nodo Client. Questo approccio di “eredità” fornisce i vantaggi di ridondanza dei sistemi “Client-based”. 1.3.3.1.b Notifica di Variazione Applicazioni ai Clients Quando un nod Client carica un’applicazione da un Server di Rete, il Client manterrà una copia dell’applicazione sul suo disco fisso locale e verrà registrato come Utente di quell’applicazione. Quando una variazione viene registrata sull’applicazione Server, ad ogni nodo Utente registrato sarà notificata la variazione. La gestione DNA permetterà all’Utente di definire come il nodo Client deve essere avvisato della variazione dell’applicazione a livello Server. Il nodo Client dovrà sia caricare automaticamente la nuova applicazione, avvisare l’Utente di caricare o ignorare la variazione oppure automaticamente ignorare le modifiche. In caso di interruzione della comunicazione fra il Server ed il Client, il Client continuerà comunque a far funzionare l’ultima applicazione distribuita. Quando il Network sarà stato ripristinato e l’applicazione Server è stata modificata il gestore DNA distribuirà l’applicazione Server aggiornata al Client. 17 Documento N. 302-D-24-A-R0 1.3.3.2 Gestione Risoluzione Dinamica Visualizzazione Il software fornirà una soluzione automatizzata per consentire la variazione di risoluzione di visualizzazione in ambienti grafici eterogenei e nell’ambito di un medesimo gruppo di applicazioni multi-nodo. Una gestione dinamica delle risoluzione di visualizzazione fra la risoluzione dell’applicazione Server e la risoluzione sul Client elimina la necessità per l’Utente di importare o esportare le visualizzazioni. Ogni nodo Client disporrà di una modalità di adattamento dinamico della risoluzione di visualizzazione indipendente e configurabile. 1.3.3.2.a Modalità Risoluzione Identica Il nodo Client avvierà l’applicazione Server solamente se la risoluzione corrisponderà a quella per la quale è stato sviluppata l’applicazione stessa. Se la risoluzione del Server e del Client sono differenti, il Sistema avviserà l’Utente tramite una finestra di dialogo, della necessità di “scalare” (cioè adattare verso un valore inferiore) la risoluzione dell’applicazione Server alla risoluzione del Client. 1.3.3.2.b Modalità Risoluzione Server Il nodo Client avvierà l’applicazione solamente alla risoluzione per la quale è stata sviluppata l’applicazione Server. Il Sistema ignorerà la risoluzione locale, usando la risoluzione Server per il nodo Client e non riducendo la risoluzione dell’applicazione Server. 1.3.3.2.c Modalità Risoluzione Diversa Il nodo Client avvierà l’applicazione server con la propria risoluzione, ignorando la risoluzione con la quale è stato sviluppata l’applicazione. Se il nodo Client sta funzionando a 640x480 e l’applicazione è stata sviluppata a 1280x1024, il Sistema scalerà dinamicamente l’applicazione Server per farla corrispondere alla risoluzione 640x480 del Client. 1.3.3.3 Applicazione Registro Files L’applicazione registro files risiederà sul disco fisso locale per un numero di giorni predefinibile dall’Utente. Ogni nodo del network manterrà un file indipendente per le applicazioni che sono uniche per ciascun nodo. Un nuovo file di registro sarà creato ed archiviato giornalmente in accordo con le impostazioni Utente specificate. Il visualizzatore supporterà la distinzione dei colori per processi o programmi differenti. Il visualizzatore supporterà la visualizzazione da remoto del registro dei files 18 Documento N. 302-D-24-A-R0 1.3.3.4 Estensioni ActiveX® Il software SCADA dovrà fornire possibilità di espansione garantendo il supporto per la tecnologia ed ai controlli OLE (OCX’s). Il software SCADA dovrà supportare metodi, proprietà ed eventi tipici degli oggetti in tecnologia ActiveX. Il supporto alla tecnologia ActiveX garantirà allo sviluppo applicazioni l’immediata disponibilità di centinaia di OCX’s sviluppate da dozzine di Sviluppatori Software Indipendenti. Registrando un OCX per utilizzarlo all’interno di un’applicazione di sistema esso si trasformerà automaticamente in un processo. Gli OCX registrati saranno visualizzati in una finestra di dialogo che permetterà di aggiungere o eliminare OCX da e verso un’applicazione esistente. Gli OCX’s aggiunti all’applicazione saranno contenuti nella finestra di dialogo in modo da potere essere aggiunti a nuove e/o esistenti applicazioni. Al momento opportuno, all’Utente sarà evidenziata la possibilità di selezionare un OCX’s da posizionare, mappare proprietà OCX, eventi e metodologie per processare tagnames e scrivere logiche per controllare comportamento, proprietà e metodi degli OCX. 1.3.4 Applicazione Logiche di Controllo Il software di Sistema SCADA dovrà includere un linguaggio basato su script che permettano l’esecuzione di comandi e operazioni matematiche e logiche basate su condizioni del Sistema od azioni dell’Utente specificate. Lo script sarà semplice da programmare utilizzando delle terminologie tipiche in lingua Inglese (standard Internazionalmente riconosciuto) e non richiederà la conoscenza di alcuna altra conoscenza di logiche di programmazione. L’Utente dovrà essere in grado di essere in grado di editare o modificare gli scripts logici mentre il Sistema sta monitorando i processi. Inoltre non sarà richiesta l’esecuzione di un altro applicativo per eseguire la compilazione delle variazioni. Il linguaggio di script includerà delle caselle di selezione e dei menu a tendina per consentire la creazione di condizioni senza dovere digitare alcun codice, tagname o comandi specifici. Dei pulsanti potranno essere disponibili per garantire una agevole selezione di comandi ed operazioni basilari quali, ad esempio, IF, THEN, ELSE, ELSE IF, AND, OR, NOT, ADD, SUBTRACT, MULTIPLY, DIVIDE; EQUAL TO, NOT EQUAL TO, GRATER THAN and LESS THAN. In aggiunta potranno essere disponibili delle librerie complete con funzioni matematiche e script di Sistema maggiormente complete e complesse. Un pulsante di validazione dovrà essere disponibile per verificare e garantire la corretta sintassi e dare indicazioni su eventuali errori da eliminare prima dell’esecuzione. Un completo sistema di aiuto in-linea sarà disponibile per ciascuna funzione di script che includerà esempi attualmente in funzione che possano essere eventualmente copiati ed incollati nell’editor di script. 19 Documento N. 302-D-24-A-R0 1.3.4.1 Applicazione Scripts Logici Il Sistema consentirà l’esecuzione di scripts logici definiti dall’Utente. Gli scripts logici in uno specifico ambiente di sviluppo programmazione. Nessun compilatore o collegamento aggiuntivi od esterni dovranno essere richiesti. La logica di Sistema consentirà l’esecuzione automatica di funzioni come l’incremento di valori impostati (set points), esecuzione di totalizzazioni e verifiche sull’effettivo stato dei processi in relazione ai valori impostati per esecuzione di eventuali reazioni. La logica di Sistema consentirà il monitoraggio dello stato di ciascun parametro di processo nel Sistema ed eseguirà funzioni specifiche basate sulla tipologia e lo stato di una condizione di allarme. Il tipo di allarme dovrà essere min, min-min, max, maxmax, deviazione o scala di variazione. Il Sistema dovrà eseguire applicazioni per controllare punti digitali on-off, visualizzare finestre, trasferire dati, ecc. Con la medesima logica sarà possibile avviare o arrestare altre applicazioni quali, ad esempio, Ms Excel, Word od anche applicativi come Crystal Reports. Il Sistema dovrà eseguire logiche definite dall’Utente in base a parametri quali: “Su Avvio Applicazione”, “Durante il Funzionamento dell’Applicazione” o “All’Arresto dell’Applicazione”. 1.3.4.2 Logiche di Controllo Condizionale Il Sistema avrà la capacità di eseguire applicazioni di controllo basate su delle condizioni di parametri di processo definibili dall’Utente o sul risultato di un’espressione che può coinvolgere parametri di processo multipli; sono inclusi parametri digitali on/off, condizioni di allarme di minima, massima o combinazioni di essi od anche raffronti con valori specificati. Sarà possibile definire scripts di Condizioni Logiche da eseguire ogni qualvolta l’espressione di condizione diverrà vera, quando diverrà falsa o mentre la condizone è vera o è falsa con delle tempistiche specificabili dall’Utente. 1.3.4.3 Logiche di Controllo da Tastiera Il software SCADA avrà la capacità di eseguire applicazioni di controllo su pressione di pre-determinati tasti della tastiera. Sono incluse le attività di pressione del tasto, il suo rilascio o il controllo di quando un tasto rimane premuto in un pre-determinato periodo temporale. Il Sistema supporterà la definizione di ogni tasto supportato da tastiere standard di PC. 20 Documento N. 302-D-24-A-R0 1.3.4.4 Variazione Dati e Logica Window Il software SCADA avrà la capacità di eseguire logiche di Sistema in base alla variazione rilevata su uno o più parametri di Sistema. Il Sistema dovrà eseguire degli script di logica Window su degli stati di parametri di processo o risultati di un’espressione. 1.3.4.5 Logica Funzione Il software SCADA supporterà la creazione di blocchi logici ed il salvataggio della logica risultante come una funzione. Gli scripts funzione funzioneranno come processi indipendenti e separati dalle operazioni sull’HMI (Human Machine Interface). L’esecuzione di questi scripts non dovranno avere impatto sulle performance e l’operatività della HMI. Le funzioni logiche potranno essere chiamate da qualsiasi tipo di logica definita nella sezione 2.3.4 incluse le chiamate da un blocco di funzione logica ad un altro blocco di funzione logica. 1.4 Software Server SCADA Il software di Sistema SCADA fornirà ridondanza per tutte le funzioni tipiche previste nell’ambito di un ambiente di regolazione e controllo. I componenti specifici che richiedono ridondanza all’interno di un Sistema SCADA sono le schermate grafiche, la visualizzazione di trend, allarmi ed eventi, le comunicazioni PLC ed i registri storici relativi ai dati di processo. Il Sistema attivo dovrà essere designato come Sistema Master mentre il Sistema di Backup rimarrà in linea e pronto. Il Master avrà la responsabilità di gestire le comunicazioni, sistema allarmi e funzione dati storici. Quando un evento di fallimento predefinito viene rilevato, il Sistema di Backup assumerà le responsabilità e le funzioni del Sistema Master. 1.4.1 Eventi di Fallimento Predefiniti Il Sistema Master SCADA rileverà i seguenti eventi all’interno dell’applicazione HMI SCADA ed agli oggetti del Network: 21 Documento N. 302-D-24-A-R0 Mancanza di comunicazione verso un singolo PLC Mancanza di comunicazione verso più di un PLC Mancanza di comunicazione verso il Server Comunicazioni Fallimento Logica Applicazione Fallimento Stampante Allarmi (fuori linea, carta esaurita) Fallimento Gestione Allarmi Fallimento comunicazione verso qualsiasi Sistema HMI nel Network Fallimento Dati Storici nel reperire dati da qualsiasi HMI o PLC Scala di deviazione reperimento dati storici Spazio su disco insufficiente su qualsiasi sistema HMI o Banca Storica nel Network Il Sistema Master SCADA rileverà qualunque possibile fallimento e lo notificherà a Sistema di Backup per assumere le responsabilità di Sistema Master. Inoltre, il Sistema di Backup monitorerà i medesimi punti di fallimento e, se il Sistema di Backup rileverà delle discrepanze, notificherà automaticamente al Sistema Master di spegnersi, generando un allarme con chiamata al servizio di telecontrollo (vedi paragrafo 1.11.6). 1.4.2 Ridondanza Applicazioni Un’applicazione consiste in una serie di videate, finestre, applicazioni logiche di controllo, oggetti ActiveX, trends in tempo reale e trends storici e sarà memorizzati sul Sistema Master. In base all’architettura di Network distribuito definita nella sezione 2.3.3.1 una copia dell’applicazione SCADA risiede sul Sistema Master come pure sul Sistema di Backup. In caso di fallimento totale nel funzionamento del Sistema Master, l’applicazione può essere modificata sul Sistema di Backup e distribuita a tutti i Clients nel Network. 1.4.3 Ridondanza Allarmi Il Sistema Master SCADA manterrà una immagine attiva degli allarmi, degli eventi e degli stati di riconoscimento degli allarmi. Questa immagine attiva sarà sincronizzata con il Sistema di Backup nel caso in cui il Sistema di Backup abbia assunto la responsabilità della gestione degli allarmi. 1.4.4 Ridondanza Comunicazioni Il Sistema Master monitorerà lo stato delle comunicazioni al Server Comunicazioni e lo stato del Server Comunicazioni a ciascun PLC/RTU. In caso di mancanza di comunicazione il Master trasferirà la responsabilità delle comunicazioni al Sistema di Backup. Questo livello di ridondanza è in aggiunta alla ridondanza descritta nella sezione 2.6.2 dove il Server Comunicazioni fornisce ridondanza per canali multipli. 22 Documento N. 302-D-24-A-R0 1.4.5 Ridondanza Dati Storici Il Sistema Master monitorerà la raccolta dei dati storici per qualsiasi canale di dati. Se il Sistema Master o il Sistema di Backup rilevano che la quantità dei dati storici recuperati diminuisce drasticamente o fallisce allora il Sistema Master o quello di Backup notificheranno all’applicazione Dati Storici di chiudere il canale di raccolta dati ed aprire un nuovo canale di reperimento dati sul Sistema di Backup. Il software di Sistema SCADA dovrà garantire ridondanza dove un singolo Dato Storico sia esistente sul network SCADA, come descritto in questa sezione ed anche come ridondanza doppia descritta nella sezione 2.7.8. 1.4.6 Connessioni Client ad un Sistema Master Tutte le workstations del Network SCADA eseguiranno un costante monitoraggio del Sistema Master e Backup. Nel caso in cui il Sistema di Backup abbia assunto le responsabilità del Sistema Master, tutte le workstations Clients processeranno gli aggiornamenti dei dati e delle informazioni di allarme dal Sistema di Backup. 1.5 Drivers Server Comunicazioni RTU/PLC Il software di Sistema SCADA includerà un ampia gamma di servers di comunicazione per stabilire l’interfaccia fra i dispositivi in campo come i PLC e il database del Sistema SCADA. 1.5.1 Comunicazione e reti I PLC dovranno supportare interfacciamenti tramite seriale, tramite connessione di rete con trasferimento rapido di dati tramite connessione Ethernet TCP/IP. Potranno essere supportati molte centinaia di dispositivi prodotti da vari costruttori e già personalizzati. 1.5.2 Drivers Server I/O Comunicazione Specifici SCADA Il software di Sistema SCADA dovrà prevedere anche uno specifico server per applicazioni di telemetria remota dello SCADA. Il server di comunicazione SCADA dovrà garantire il supporto per l’interrogazione in tempo reale fino a 256 circuiti di comunicazione via radio, linee commutate o microonde ed un numero praticamente illimitato (fatta eccezione per le risorse del PC) di nodi sul Network TCP/IP Ethernet. L’Interrogazione sarà configurabile per dispositivo remoto e basata su intervalli di 23 Documento N. 302-D-24-A-R0 tempo prefissati dall’Utente oppure a richiesta da una workstation Utente. Sarà possibile modificare i parametri di configurazione per i circuiti di comunicazione o anche un dispositivo “al volo”. Il server di comunicazione SCADA dovrà supportare ModBus, M-BUS, BacNet e l’ASCII e supportare protocolli multipli sul medesimo circuito. Il software del server di comunicazione dovrà essere di tipo modulare in modo da permettere l’aggiunta di altri protocolli anche personalizzati senza necessità di riscrivere tutto il software. 1.6 Caratteristiche di comunicazione 1.6.1 Comunicazioni basate su Ethernet Il software di comunicazione dovrà supportare la comunicazione TCP/IP da punto a multi-punto con dispositivi Ethernet. Il server di comunicazione remota dovrà fornire accesso seriale RS232 per microonde, modem dial-up con set di comandi Hayes e unità PAD X.25 per accesso via satellite. Un box di dialogo fornirà tutti i dettagli di configurazione per i parametri TCP/IP di ogni circuito. 1.6.2 Ridondanza Comunicazioni I dispositivi PLC potranno consentire comunicazioni ridondanti, nel qual caso ogni dispositivo (PLC) consentirà preferibilmente la configurazione sia della comunicazione primaria che di quella secondaria in modo da fornire ridondanza in caso di fallimento del circuito primario di comunicazione. La scala di interrogazione di ogni dispositivo sarà impostabile da pochi millisecondi ad ore. Il protocollo di ciascun dispositivo sarà preferibilmente configurabile in base al protocollo di comunicazione del Server. 1.6.3 Statistiche di comunicazione in-linea e verifica errori Il software sul server di comunicazione dovrà includere una visualizzazione standard che mostri le statistiche di comunicazione e gli errori in tempo reale per ciascun dispositivo e circuito. Si dovrà visualizzaere la cadenza di interrogazione, l’orario dell’ultima interrogazione ed il tempo trascorso dall’ultima interrogazione. Il server mostrerà anche altre statistiche di comunicazione utili all’individuazione di eventuali problemi ed alla loro analisi quali, ad esempio, il numero di tentativi di comunicazione effettuati, il numero di tentativi con successo il numero di tentativi falliti ed una percentuale che indichi la “bontà di comunicazione” in base a valori statistici. Le statistiche di comunicazione saranno mostrate per l’ora ed il giorno correnti, la precedente ora ed il precedente giorno sia in base al circuito che in base al dispositivo. 24 Documento N. 302-D-24-A-R0 1.6.4 Controllo Scansioni Sarà possibile mettere forzatamente fuori linea ed in linea singoli dispositivi o parti di circuito. Il software di comunicazione supporterà la richiesta di scansione dispositivi. 1.6.5 Tracciamento protocollo e Registro Errori Il server di comunicazione disporrà di un registro degli errori di comunicazione, in trasmissione, in ricezione ed eventi come la variazione di scansione su dispositivi. Un strumento specifico permetter di tracciare il traffico sul Network attraverso le porte di comunicazione e permetterà la visualizzazione ed il salvataggio dei risultati. 1.7 Storico Dati Il software di Sistema SCADA dovrà essere dotato di un database relazionale in tempo reale in grado di memorizzare i dati di processo per lunghi periodi di tempo. I dati storici renderanno disponibili per la memorizzazione in tempo reale e storica qualsiasi parametro sia esso analogico, digitale o una stringa di parametro di processo. Lo storico memorizzerà anche riepilogo, evento, allarme e dati di configurazione. Il motore del database di storicizzazione sarà basato su Microsoft SQL Version 7.0 o successivi e supporterà l’architettura Client-Server. All’Utente non sarà richiesto di conoscere SQL Server per installare ed implementare gli storici. Il database acquisirà e memorizzerà i dati di processo alla massima risoluzione. Il database includerà estensioni normalizzate di tabelle per i dati in tempo reale ed un set di strumenti per l’analisi dei dati e la reportistica. Anche se vi sono sempre dei fattori di limitazione fisica quali lo spazio a disposizione sui dischi fissi, non vi dovranno essere limiti programmatici alla quantità di dati che dovrà essere memorizzata in linea. Oltre a questo, non vi dovranno essere penalizzazioni nelle performance relative alla memorizzazione a lungo termine. Non vi dovranno essere sensibili differenze di velocità di recupero in base al periodo a cui possono risalire i dati. Per esempio, il recupero di due ore di dati risalenti a due anni addietro, sarà eseguito con la stessa velocità di due ore prelevate da dati memorizzati solo due mesi addietro. 1.7.1 Compressione Dati Il database dovrà supportare elevate velocità di acquisizione dati ed una efficiente compressione dei dati. La compressione dei dati per i dati storici non utilizzerà nessun algoritmo che impedisca la memorizzazione corretta alla cadenza prestabilita dei dati di processo. I record registrati permetteranno di ricreare i dati di processo in un formato senza perdite. Di seguito sono riportate alcune tecniche per il trattamento di vari tipi di dati. 25 Documento N. 302-D-24-A-R0 1.7.1.1 Esigenze Memorizzazione Parametri Analogici I dati analogici potranno essere memorizzati utilizzando le migliori e più avanzate tecnologie di memorizzazione e secondo metodologie di memorizzazione ciclica e/o per variazione. Nella memorizzazione ciclica (cyclic storage), il valore del parametro viene memorizzato ogni “x” millisecondi senza curarsi della effettiva variazione dal valore memorizzato in precedenza. Nella memorizzazione per variazione (delta storage) un nuovo valore verrà memorizzato solamente quando sarà avvenuta una variazione pari o maggiore al valore di variazione preimpostato. Indipendentemente dalla tecnica di memorizzazione scelta, il Sistema dovrà essere in grado di riprodurre con la massima accuratezza il valore del dato all’interno del periodo per il quale siano stati memorizzati dei valori. La metodologia di memorizzazione, ciclica o per variazione, sarà selezionabile per ciascun singolo parametro si voglia memorizzare. Assieme al valore del parametro analogico, verrà anche memorizzato un campo di qualità; il campo di qualità sarà minimo di 32 bits (4 bytes) di lunghezza. 1.7.1.2 Esigenze Memorizzazione Parametri Digitali I dati di tipo digitale saranno memorizzati secondo la tecnica della variazione di condizione, cioè il valore verrà memorizzato solamente nel momento in cui avviene una sua variazione di stato. Il Sistema sarà in grado di riprodurre il valore digitale di qualsiasi punto nel tempo. Con ogni valore digitale memorizzato sarà anche memorizzato un campo di qualità; Il campo qualità sarà minimo di 32 bits (4 bytes) di lunghezza. 1.7.1.3 Esigenze Memorizzazione Altri Parametri Il Sistema dovrà essere in grado di memorizzare anche parametri diversi quali stringhe, testi o dati. Ogni stringa dovrà essere lunga non meno 128 caratteri. Con ogni valore stringa memorizzato, sarà memorizzato anche un campo qualità; Il campo qualità sarà minimo di 32 bits (4 bytes) di lunghezza. 1.7.2 Tabelle Database Standardizzate Il processo di impostazione delle tabelle di Database dovrà essere configurato e guidato automaticamente e non richiederà alcuna programmazione specifica. La definizione dei dati, inclusa la creazione degli oggetti Database come tabelle, indici, costrizioni, regole, procedure, filtri e le viste seguiranno degli standard comuni e già pronti all’uso. Questi schemi di database standard potranno evidenziare le relazioni fra tabelle, colonne di tabelle, chiavi ed indici e consentirà lo sviluppo di applicazioni clients da parte di terze parti. Le dimensioni dei files di database saranno allocate 26 Documento N. 302-D-24-A-R0 dinamicamente durante l’installazione dei database e dipenderanno dal numero di parametri di processo che potranno essere memorizzati come Dati Storici. 1.7.3 Importazione Database Parametri di Processo Il database storico sarà dotato di interfaccia grafica che dovrà consentire direttamente all’Utente di importare i parametri SCADA in tempo reale o processare direttamente i Database per eseguirne una registrazione in tempo reale o storica dei vari parametri di processo. L’utilità di importazione dovrà consentire all’Utente di navigare in modo semplice ed intuitivo nel network e selezionare l’applicazione server HMI per l’importazione. L’utilità di importazione dovrà supportare processi di importazione di parametri di processo e la raccolta di dati da server HMI multipli. L’importazione dei parametri di processo non dovrà richiedere la ridefinizione delle informazioni di memorizzazione da parte dell’Utente. Quando verrà importato un parametro di processo, tutti i suoi attributi saranno automaticamente mappati con gli appropriati tipo di tabella nel database storico. Si potranno eseguire anche importazioni parziali o variazioni parziali su quanto importato senza necessità di reimportare tutto di nuovo. 1.7.4 Configurazione Dati Storici Il sistema di storicizzazione includerà un editor database stand-alone per modificare i parametri di qualsiasi punto senza utilizzare l’HMI dell’editor database. Si dovrà configurare la cadenza di memorizzazione di valori analogici per i punti per i quali è prevista una memorizzazione di tipo ciclico o su variazione. La cadenza di memorizzazione si dovrà configurare per ciascun punto da 1 secondo fino ad ore. I database storici potranno supportare una risoluzione di 5 millisecondi per i punti configurati per memorizzazione su variazione. 1.7.5 Configurazione Eventi Sistema Il database dovrà contenere un sottosistema di monitoraggio, registrazione e/o risposta a processi od eventi di sistema e calibrare alcuni tipi di azione a seconda di quando l’evento si è verificato. Il sistema eventi rileverà la presenza di un evento utilizzando dei criteri preconfigurati e modificabili; un registro storico memorizzerà quando un determinato evento è accaduto e pianificherà delle opportune reazioni. Gli attributi dell’evento potranno essere registrati in un database che includerà anche la data e l’ora dell’evento ed i criteri soddisfatti. 27 Documento N. 302-D-24-A-R0 1.7.5.1 Configurazione Eventi Utilizzando un approccio tipo evidenzia e clicca, il Sistema dovrà consentire all’Utente di creare/definire degli eventi a rilievi di evento e le azioni che potranno essere intraprese. L’Utente dovrà essere in grado di inserire un ritardo di tempo in millisecondi prima che la reazione all’evento venga attuata e stabilire la priorità dell’evento come normale o critico. Si dovrà rilevare un evento su base temporale, una specifica corrispondenza di valore analogico od una variazione di condizione di un punto digitale da 0 a 1, da 1 a 0 oppure entrambi. Un editor SQL dovrà essere fornito per supportare il rilevamento di eventi ed azioni su eventi SQL complessi. 1.7.5.2 Reazione Eventi Il rilevamento di una predeterminata situazione determinerà una specifica azione a questo associata. L’Utente dovrà essere in grado di scegliere fra una di quattro azioni, fra le quali dovranno essere incluse : 1) esecuzione di una serie di istruzioni SQL per effettuare delle Queries (ricerche) in Databases; 2) Catturare le caratteristiche dell’evento e dare la possibilità di registrare data ed ora dell’evento oltre al valore di uno o più altri parametri analogici o digitali; 3) invio di un messaggio e - mail via MS Exchange, Lotus Domino od altri server di gestione posta elettronica; 4) variazione delle impostazioni relative allo specifico evento od a altri eventi correlati. La possibilità di eseguire variazioni sulla cadenza di registrazione basandosi su degli eventi garantisce la massima velocità e flessibilità nelle storicizzazioni rendendole strumento indispensabile per l’analisi e la risoluzione dei problemi. 1.7.6 Database di Riepilogo Sistema All’Utente sarà consentita l’opzione di configurare tabelle dati riepilogative per qualsiasi parametro di Sistema e la possibilità di aggregare automaticamente una serie di informazioni in base ad eventi temporali. Il riepilogo di sistema dovrà supportare, come minimo, calcoli come valore minimo, valore massimo, valore medio e calcoli matematici con frequenza selezionabile fra minuti, ore, giorno, settimane e mesi. Il riepilogo di Sistema memorizzerà come minimo il codice del parametro interessato, valore, tipo di calcolo e frequenza come definito in ciascun parametro di processo. 1.7.7 Interfaccia Storici verso altri Database Relazionali I dati storici potranno utilizzare strumenti quali Microsoft Data Transformation Services per semplificare il trasferimento dei dati storici di processo con gli altri database SQL come Microsoft SQL Server o Oracle. Il database storico permetterà il collegamento dinamico OLE fra databases in modo da consentire l’accesso 28 Documento N. 302-D-24-A-R0 contemporaneo di altri client SQL in tempo reale o verso i dati di processo già memorizzati. 1.7.8 Ridondanza Storico (Backup Caldo) Nelle applicazioni critiche ove non può essere tollerata la perdita di dati storici, la storicizzazione dovrà essere configurata in modo da consentire funzionalità di ridondanza a caldo (hot backup) tramite installazione del medesimo database di memorizzazione dati in due separati server e database. In un Sistema ridondante entrambi i database memorizzeranno in contemporanea i medesimi dati via via acquisiti e costituiranno a tutti gli effetti due copie identiche del database storico. I Clients potranno accedere ad uno qualunque dei due database in modo trasparente per l’Utente. Nel caso in cui uno dei due database si danneggi o non sia comunque disponibile, il Database rimanente diverrà primario e continuerà ad eseguire da solo il suo compito. Quando il server o il database che ha presentato problemi tornerà disponibile, potranno essere disponibili degli strumenti ed utilità standard di Microsoft SQL server per ripristinare il “vecchio” o danneggiato database e ripristinare la sincronizzazione dei due databases. 1.7.9 Gestione Dischi Memorizzazione I dati storici non richiederanno strumenti dedicati o proprietari per la gestione dei dischi di memorizzazione. Sarà possibile archiviare e recuperare files di dati storici utilizzando i comandi di copia standard di Windows. Sarà possibile recuperare porzioni selezionate di dati senza recuperare tutti i dati archiviati. Il recupero di dati archiviati li metterà automaticamente in linea e disponibili per il recupero come dati storici. Oltre a questo, la gestione dei dati storici dovrà assicurare un approccio praticamente senza necessità di amministrazione. La gestione degli storici dovrà garantire anche che, in caso di esaurimento dello spazio disponibile per la memorizzazione dei dati, la storicizzazione venga automaticamente spostata su di un’altra unità e continuare senza interruzioni. Anche i files e lo spazio disponibile su questa unità secondaria saranno costantemente monitorati e dopo avere segnalato al raggiungimento di quote prefissate la condizione di eventuale esaurimento dello spazio a disposizione, dovrà procedere con l’esecuzione di routine alternative di emergenza, fra le quali saranno previste anche la cancellazione dei dati ad iniziare da quelli più vecchi in modo da garantire l’integrita del Sistema e la continuazione del servizio. 1.8 Trasmissione Allarmi e Messaggi Il Sistema SCADA dovrà includere un applicativo software di comunicazione basato su telefonia che consenta sia la notificazione automatica remota degli allarmi che 29 Documento N. 302-D-24-A-R0 acquisizione di dati ed esecuzione di comandi via telefono o pager. Il modulo di trasmissione allarmi dovrà consentire agli Utenti di allontanarsi dalla Workstation ed essere allo stesso tempo in grado di ricevere e riconoscere allarmi ed operare da remoto sul Sistema. Il Sistema registrerà tutti gli eventi (ad esempio allarmi, azioni Utente, ecc.) direttamente su di una stampante o in un file registro. Il modulo di trasmissione allarmi supporterà anche connessioni a databases su server SCADA multipli ed in contemporanea. In caso di rilievo di problemi di comunicazione con un Server, il modulo di trasmissione allarmi lo notificherà in modo chiaro all’Utente. 1.8.1 Metodi di notifica allarmi 1.8.1.1 Annuncio Locale Il trasmettitore allarmi visualizzerà gli allarmi sullo schermo del computer ed annuncerà localmente gli eventi tramite gli altoparlanti del PC o sistemi intercomunicanti. Il Sistema dovrà garantire la possibilità di riconoscere gli allarmi da qualsiasi Workstation di Sistema. Il messaggio di allarme pronunciato localmente eseguirà un file audio preregistrato che sarà in grado di pronunciare la descrizione dell’allarme, lo stato o il valore numerico di qualsiasi parametro di Sistema. La frequenza di esecuzione dei files vocali dovrà poter essere facilmente gestita e configurata dall’Utente. La funzione vocale dovrà essere facilmente abilitabile/disabilitabile ed essere subordinata a periodi temporali (festività, giorni della settimana, orari). 1.8.1.2 Annuncio mediante chiamata telefonica (chiamata vocale) Il Sistema dovrà essere in grado di trasmettere agli Operatori via linee telefoniche, telefoni cellulari o sistemi di comunicazione personale (PCS) , ogni tipo di evento che sia stato preconfigurato sul Sistema ed annunciare gli allarmi. Il Sistema sarà compatibile sia con la trasmissione ad impulsi che a toni. In occasione di evento da trasmettere, il Sistema procederà alle chiamate secondo dei criteri di gruppo disponibile, ordine Operatore/i nel gruppo da contattare, scheda temporale di disponibilità specifica per Operatore e loro specifici numeri telefonici. Il Sistema dovrà supportare fino a tre diversi numeri telefonici per ciascun Operatore. La strategia di chiamata dovrà essere facilmente definibile dall’Amministratore di Sistema. Anche il numero di tentativi di chiamata verso un Operatore, prima di procedere con l’Operatore successivo in elenco, dovrà essere agevolmente gestibile dall’Amministratore. Il modulo di gestione degli allarmi richiederà all’Operatore di inserire un numero di identificazione e sicurezza personale (PIN). Dopo essere stato riconosciuto dal Sistema ed avere avuto accesso, il Sistema guiderà lo specifico Operatore mediante una guida vocale e fornirà una guida vocale dei menu e comandi disponibili. Dal menu principale l’Operatore dovrà ascoltare e riconoscere un allarme attivo. 30 Documento N. 302-D-24-A-R0 1.8.1.3 Trasmissione su Pager (Cercapersone) Il modulo di trasmissione allarmi dovrà consentire l’invio di messaggi numerici, alfanumerici e/o vocali verso Sistemi verso i sistemi che supportino gli specifici protocolli TAP. Il modulo software dovrà guidare l’Amministratore nelle scelte per garantire la massima semplicità nella configurazione di quali informazioni e come dovranno essere trasmesse. 1.8.1.4 Messaggi via email Il modulo di trasmissione allarmi dovrà consentire la trasmissione automatica di messaggi di posta elettronica in base ad eventi di allarme o situazione preconfigurate. I messaggi email potranno essere trasmessi ad un solo destinatario o con destinazione multipla, sfruttando le classiche caratteritische di copia per conoscenza (cc.). La composizione del testo da trasmettere dovrà facilmente essere gestita dall’Amministratore. 1.8.2 Finestra Primo Piano Allarmi Su evento di allarme, il modulo di trasmissione allarmi dovrà essere in grado di visualizzare automaticamente in una destinazione specificata una finestra in primo piano che mostri un riepilogo dei nuovi eventi, correlati dalle indicazioni necessarie ad una loro agevole identificazione. Questa finestra dovrà disporre anche di un pulsante con il quale l’Operatore dovrà confermare il riconoscimento globale di tutte le nuove segnalazioni (riconosci tutto) e prevenire o bloccare ulteriori procedure di trasmissione preconfigurate. Questa funzione di riconoscimento dovrà essere inibita in modo da consentire il riconoscimento degli allarmi in modo tradizionale sullo SCADA. 1.8.3 Riconoscimento Allarmi Il modulo di trasmissione allarmi garantirà tre modalità di riconoscimento degli allarmi dallo SCADA come segue: 1.8.3.1 Riconoscimenti consentiti verso il Sistema SCADA Quando un allarme è riconosciuto tramite il modulo di trasmissione allarmi (sia tramite finestra in primo piano che via telefono), il riconoscimento viene inviato a tutte 31 Documento N. 302-D-24-A-R0 le Workstation HMI del Sistema SCADA. Il modulo di trasmissione allarmi ignorerà ogni riconoscimento allarme dal Sistema SCADA. 1.8.3.2 Riconoscimenti consentiti dal Sistema SCADA Ogni allarme riconosciuto su qualsiasi WorkStation HMI del Sistema SCADA sarà inviato al modulo di trasmissione allarmi. Questo verrà automaticamente registrato come riconosciuto e preverrà o bloccherà la ritrasmissione di ulteriori segnalazioni. 1.8.3.3 Riconoscimento bi-direzionale Questa modalità consente di eseguire il riconoscimento sia tramite il modulo di trasmissione allarmi che dalle HMI SCADA. Se un allarme è riconosciuto sullo SCADA allora il modulo trasmissione allarmi riceverà il riconoscimento e se l’allarme è riconosciuto tramite la trasmissione allarmi il messaggio di avvenuto riconoscimento verrà trasmesso a tutte le HMI del Sistema SCADA. 1.8.4 Registrazione Eventi Il Sistema dovrà includere un registro eventi in grado di registrare tutti gli eventi di Sistema e le interazioni con gli Operatori. Il registratore sarà in grado di registrare gli eventi direttamente su di una stampante e/o su di un file di registro storico memorizzato su disco fisso. La registrazione dovrà comprendere informazioni quali data, ora, Operatore ed informazioni relative all’evento. Tutti gli eventi relativi alla trasmissione allarmi verranno invece gestiti a parte e memorizzati automaticamente in uno specifico file consultabile a richiesta. Potranno essere inseriti e storicizzati dei commenti editabili da parte degli Operatori e la dimensione massima del file di registro dovrà essere configurabile dall’Amministratore (registro circolare FIFO). 1.8.5 Diagnostica Il sistema di trasmissione allarmi dovrà disporre di un finestra di stato che consenta di eseguire dei test e della diagnostica. In questa finestra dovranno come minimo essere visualizzati data ed ora, ultimo evento di allarme, azione allarme, stato modem, stato linea/e telefonica/e, stato programmatore e stato connessioni HMI. 32 Documento N. 302-D-24-A-R0 1.8.6 Configurazione trasmettitore allarmi 1.8.6.1 Integrazione trasmettitore allarmi con Sistema HMI Dovrà essere integrato nel Sistema un sistema di configurazione semplice ed intuitivo che consenta la definizione dei parametri di Sistema e la creazione e gestione dei databases. Ogni componente o modulo software dovrà essere inderogabilmente integrato perfettamente con gli altri componenti software in modo da operare come se si trattasse di una sola entità. Anche l’integrazione fra il modulo di trasmissione allarmi e lo SCADA non richiederanno alcun processo aggiuntivo che non sia la sola configurazione delle caratteristiche di trasmissione. I codici dei parametri dello SCADA saranno dunque gestiti anche dal modulo di trasmissione in modo nativo. Il modulo di trasmissione allarmi dovrà includere un pulsante con il quale potranno essere generati degli eventi selezionabili per verificare il corretto funzionamento e le configurazioni. Dovranno essere previste le seguenti funzionalità impostabili a richiesta su qualsiasi singolo parametro con allarmi: auto-riconoscimento su rientro allarme, auto-riconoscimento su spedizione, priorità allarme, ritardo allarme e gruppo abilitato alla ricezione delle chiamate in caso di evento allarme. Un foglio elettronico integrato permetterà all’Amministratore di eseguire delle configurazioni multiple su diversi parametri in una volta sola. 1.8.6.2 Lista Gruppi “su chiamata” Il trasmettitore allarmi disporrà di una “rubrica” nella quale l’Amministratore di Sistema dovrà memorizzare i gruppi di operatori disponibili in base a criteri di gestione temporale e flessibile. Il sistema consentirà di configurare per ciascun allarme che debba essere trasmesso in remoto degli specifici gruppi in abbinamento. 1.8.6.3 Tabelle Disponibilità Operatori Il modulo di gestione delle trasmissioni di allarme consentirà la definizione di tabelle personali di disponibilità che sarà gestito dall’Amministratore. Da questa tabella verranno definite le varie disponibilità settimanali degli Operatori che saranno disponibili “su chiamata”, i numeri telefonici specifici per Operatore (almeno 3) e l’ordine con i quali verranno composti in caso di evento. 1.8.6.4 Programmatore Orario Dovrà essere disponibile un programmatore orario configurabile che permetta di abilitare e disabilitare la trasmissione dei messaggi di allarme in base agli orari, al giorno della settimana ed al periodi di festività, scegliendo le varie funzionalità di 33 Documento N. 302-D-24-A-R0 trasmissione predefinite (annuncio locale, chiamata vocale, chiamata su pager, email, ecc). 1.8.6.5 Registratore Vocale I files vocali utilizzati per gli annunci verbali (sia locali che via telefono) potranno essere registrabili con voce umana e saranno facilmente creati e ri-registrati utilizzando un semplice microfono. 1.9 Protezione Virus e Sicurezza Sistema SCADA La particolare struttura del Sistema SCADA, che presenta nella flessibilità e completezza delle comunicazioni il suo punto innovativo e di forza, rende necessaria una adeguata politica di protezione sia dagli accessi indesiderati che da eventuali virus informatici. Per quanto concerne la specifica protezione dagli accessi indesiderati, le funzionalità di filtraggio sono demandate interamente agli specifici moduli applicativi software, che potranno disporre nativamente di una idonea strategia di controllo e gestione degli accessi e dei vari livelli operativi individuali. La protezione a livello hardware dovrà essere invece garantita da opportuni dispositivi hardware, da prevedere in particolare nei punti di maggior rischio perché in contatto con il “mondo esterno”, come nel caso del modulo di gestione degli accessi via HTML che dovrà essere connesso sia ad Intranet che ad Internet. 1.9.1 Protezione Firewall Come anticipato, la protezione del Sistema da e verso l’esterno, dovrà essere garantita predisponendo opportuno hardware con funzionalità di Firewall (letteralmente “muro di fuoco”); questi dispositivi, quando opportunamente configurati, sono in grado di garantire che chi accede al Sistema dal “mondo esterno” sia effettivamente abilitato a farlo. Alcuni costruttori di diffusione mondiale, forniscono assieme ai propri dispositivi Firewall degli applicativi Client proprietari che consentono di applicare criteri di accesso via VPN (Virtual Private Network, Rete Priva Virtuale) anche agli accessi via Internet. Si tratta di applicativi che, coordinandosi con il Sistema Operativo del Firewall, consentono di crittografare la totalità dei messaggi in ingresso ed uscita con algoritmi di norma a 56 bits, fino a 34 Documento N. 302-D-24-A-R0 poco tempo fa utilizzati in esclusiva dagli Istituti Bancari e dunque in grado di garantire un eccellente grado di sicurezza. 1.9.2 Protezione Antivirus La protezione da eventuali attacchi da parte di virus informatici, ad oggi una delle più frequenti e temute cause di disservizi del mondo informatico. Dovrà essere adeguatamente presa in considerazione e garantita dal Fornitore del Sistema. Assieme agli applicativi software specifici dello SCADA potranno pertanto essere forniti anche gli idonei strumenti software per la protezione dai virus. Particolare attenzione dovrà essere prestata a questo aspetto ed è richiesto che il software proposto per questa funzione sia sottoposto, per produttore e tipo, direttamente alla Committente per approvazione. 1.9.2.1 Aggiornamento Definizioni Virus Una protezione dai Virus non avrebbe nessun significato senza un opportuno meccanismo automatico di aggiornamento delle definizioni per i nuovi virus. Il Fornitore dovrà pertanto prevedere ed includere nelle proprie valutazioni anche un adeguato servizio di aggiornamento automatico delle definizioni tramite connessione alla rete Internet con il Produttore del software. 1.10 Installazione e licenze Software SCADA Il software SCADA dovrà essere facilmente installabile da supporti CD utilizzando un programma di installazione standard Windows. Durante la procedura di installazione l’Utente dovrà essere in grado di scegliere le caratteristiche e funzionalità richieste per ciascuna Workstation o Server del Sistema SCADA. Durante l’installazione dovrà essere richiesto di selezionare o confermare la destinazione di installazione dei componenti software. Il software SCADA dovrà essere fornito con files di licenza software che potranno essere facilmente ripristinati in caso di guasto del disco fisso o di reinstallazione. Nessuna chiave hardware sarà richiesta per eseguire gli applicativi software. La durata delle licenze sarà illimitata, ed il costo dovrà essere ripartito sui vari moduli e compreso nel prezzo di acquisto del singolo modulo. 1.11 Lingua Per garantire il massimo delle possibilità di sfruttamento del Sistema è richiesto che tutti i software siano disponibili nelle seguenti nazionalizzazioni: 35 Documento N. 302-D-24-A-R0 Inglese Italiano Anche i manuali Operatore potranno essere fornibili su richiesta nelle medesime lingue compresa la manualistica tecnica per la programmazione. Dovrà essere disponibile in lingua localizzata anche tutto il Sistema di Aiuto in Linea che dovrà essere richiamato in ogni istante e dovrà consentire anche a Personale non tecnico di comprendere i concetti base relativi alla funzione richiesta. Tutti i menu, le diciture e le informazioni potranno essere visualizzabili nella Lingua richiesta. 36