• Non ci sono risultati.

5.3 Gerarchia Logica

5.3.2 Oggetti di campo

Si definiscono oggetti di campo gli Oggetti che rappresentano lo stato corrente di sen-sori ed attuatori collegati ai FEIM o eventualmente direttamente collegati ad Ethernet.

3Timestamp: numero che rappresenta il numero di secondi trascorsi dall’epoch, ovvero dal punto di origine del sistema di datazione in uso in un sistema informatico. Nel sistema progettato non è importante quale sia preso come epoch, in quanto sono operate le opportune conversioni al momento dell’invio e della ricezione dei pacchetti da altri sistemi. Attualmente viene preso come riferimento il 1 gennaio 1980 ed il valore è rappresentato come un numero a 32 bit per le comunicazioni con i FEIM, mentre sui sistemi Linux la base è rappresentata dal 1 gennaio 1970 ed il valore è rappresentato a 64 bit.

La scrittura di un valore su un oggetto di campo comporta l’immediata variazione del suo stato. Ciò avviene mediante la trasmissione di opportuni messaggi di rete, che richiedono la scrittura e quindi l’operazione stessa. Il FEIM che ha in carico la ge-stione dell’Oggetto trasmetterà una conferma al messaggio di scrittura, per informare il mittente se l’Oggetto è scrivibile o meno. Questa però non deve intendersi come ef-fettiva conferma di scrittura, ma solo come correttezza formale del comando. Al mo-mento (immediatamente successivo) della scrittura effettiva verrà inviata una notifica all’LMP di riferimento, per segnalare la reale variazione dello stato dell’attuatore.

Nel caso della lettura, invece, la risposta contiene già il valore letto, che si ri-ferisce al valore più aggiornato attualmente disponibile della grandezza monitorata.

Dipendentemente dalla configurazione del FEIM, questo può eventualmente differi-re dal valodifferi-re attuale a meno di una soglia impostata e si riferisce all’ultimo istante di campionamento della grandezza stessa, secondo gli intervalli di campionamento impostati per lo specifico Oggetto.

Il comportamento degli oggetti di campo può essere verificato o modificato ac-cedendo alle variabili diverse dalla 0 dell’oggetto stesso. Ciò permette al sistema di alterare alcune politiche di funzionamento rispetto alle configurazioni fornite al fine di ottenere comportamenti differenti in caso di necessità.

Il comportamento degli oggetti è inoltre determinato anche dal profilo di funziona-mento del FEIM che li controlla, quindi le politiche di segnalazione degli eventi pos-sono cambiare a seconda delle condizioni impostate. Tutto questo è trasparente al sistema di supervisione, in quanto implementato direttamente ed autonomamente dal FEIM.

Nell’astrazione degli oggetti di campo verso il sistema sono definiti, a livello di modulo FEIM, sei differenti tipi di oggetto, con caratteristiche specifiche, che pos-sono rappresentare astrazioni di tutti i sensori ed attuatori attualmente previsti nel sistema.

Button Sono ingressi digitali dei quali non interessa sapere quando commutano da attivo a disattivo e viceversa, ma dei quali è interessante solamente un ciclo di attiva-zione, ovvero il passaggio dall’inattivazione all’attivazione e ritorno. Questi oggetti

generano una notifica solamente una volta per ogni ciclo e questa segnalazione può avvenire, a seconda della configurazione, al momento dell’attivazione o della disat-tivazione, ma in entrambi i casi la notifica è di atdisat-tivazione, in quanto significa che è in corso un ciclo. Un esempio può essere un pulsante che serve ad accendere una luce, oppure un sensore di movimento, che genera fronti di salita multipli anche se lo stato di occupazione permane: anche in questo caso l’informazione riguarda il fatto che è stato rivelato un movimento, non che è presente un movimento e poi è cessato:

l’assenza di fronti e quindi di segnalazioni indica che il movimento è cessato. L’u-so di questa astrazione riduce del 50% le segnalazioni, evitando informazioni inutili.

Non possono essere letti direttamente, in quanto lo stato di attivazione in questo ca-so è generalmente molto ridotto nel tempo e quindi conta ca-solamente la segnalazione dell’avvenuto ciclo di attivazione.

Switch Sono ingressi digitali dei quali è importante lo stato. Sono quindi oggetti che possono essere letti e dei quali è possibile configurare la segnalazione sia del-l’attivazione, sia della disattivazione. Un esempio sono tutti i sensori di sicurezza, ad esempio i sensori di fumo, quelli di allagamento, quelli di fuga gas combustibi-li, oppure i campanelli di richiesta di assistenza, in quanto in quel caso è utile fare riportare sull’attuatore, in genere un campanello o un buzzer, effettivamente la dura-ta della pressione del campanello stesso, anche per mutuare in modo più naturale il comportamento atteso dagli utenti.

Analog in Sono ingressi analogici e possono essere letti in qualunque momento.

Possono inoltre segnalare le variazioni della grandezza monitorata quando questa var-ca una soglia specifivar-cata in salita o discesa, oppure quando il valore corrente si disco-sta dall’ultimo valore segnalato più di una quantità assoluta impodisco-stabile. L’intervallo di aggiornamento delle letture è impostabile mediante le configurazioni dell’Oggetto memorizzate nel FEIM ed eventualmente modificate dinamicamente dall’LMP, se necessario.

Relè mono Sono uscite digitali che rappresentano dispositivi che devono essere at-tivati per un periodo di tempo preimpostato. Un esempio può essere il controllo di una luce in una parte comune, che dopo l’accensione si spegne automaticamente dopo un intervallo di tempo predefinito. Se l’intervallo di tempo è molto breve allora, come nel caso dei Button, non è sensato che venga consentita la lettura e la segnalazione di attivazione avviene solamente al termine dell’intervallo stesso. Se invece l’intervallo è sufficientemente lungo (al di sopra dei cinque secondi orientativamente), allora è possibile impostare un flag, che imposta il modulo per mandare una doppia notifi-ca, di attivazione e disattivazione. I relè monostabili possono solo essere attivati con un comando, non possono essere disattivati. La loro disattivazione avviene solo al termine dell’intervallo impostato. Se vengono attivati nuovamente prima del termine dell’intervallo, al tempo di disattivazione viene sommato un nuovo periodo di tempo pari al periodo impostato, una sola volta per ogni intervallo. Quindi se alla scadenza manca meno di un intervallo di tempo e viene inviata una nuova richiesta di attivazio-ne, l’istante di disattivazione viene aggiornato sommandovi un nuovo intervallo. Se invece l’istante di disattivazione è già stato aggiornato una volta, verranno ignorate ulteriori attivazioni, finché il nuovo tempo alla scadenza non scenderà al di sotto della durata di un intervallo originale.

Relè bi Sono uscite digitali che vengono utilizzare per controllare dispositivi che devono essere accesi e spenti in modo arbitrario. Possono controllare luci o prese di corrente, o ogni altro elemento controllabile con un relè. Possono essere letti o scritti senza restrizioni ed inviano segnalazioni sia in caso di attivazione, sia alla disattivazione.