tesi di laurea danilo lo presti: controllo remoto di apparati dell'esperimento graal -...

102
Indice 1 INDICE 1 INTRODUZIONE. ........................................................................................................................................................ 3 2 ESPERIMENTO GRAAL ....................................................................................................................................... 10 2.1 CARATTERISTICHE E UTILITÀ DEL FASCIO GRAAL ........................................................................................... 10 2.2 DIFFUSIONE COMPTON INVERSA: ENERGIA DEL FASCIO DI FOTONI ................................................................... 11 2.3 L’INTERAZIONE CON GLI ELETTRONI DELLANELLO ESRF E LA POLARIZZAZIONE DEL FASCIO ...................... 13 2.4 APPARATO SPERIMENTALE PER LA PRODUZIONE DEL FASCIO GRAAL ............................................................. 14 2.5 PROGRAMMA DI FISICA DELLESPERIMENTO GRAAL .......................................................................................... 16 3 CENNI SULLE TECNOLOGIE DI TELECONTROLLO ..................................................................................... 18 3.1 CONTROLLORI A LOGICA PROGRAMMABILE (PLC) ............................................................................................ 18 3.1.1 La Central Processing Unit (CPU) del PLC................................................................................................. 20 3.1.2 Schede di ingresso e di uscita ...................................................................................................................... 23 3.1.3 Schede di comunicazione .............................................................................................................................. 24 3.2 INTERNET E IL TRANSFER CONTROL PROTOCOL (TCP) PER IL TRASPORTO DEI DATI ...................................... 25 3.2.1 La pila protocollare Ethernet ......................................................................................................................... 26 3.2.2 Realizzazione della connessione tra client e server ....................................................................................... 29 3.2.3 La protezione delle reti .................................................................................................................................. 32 3.3 SISTEMI EMBEDDED (O INCAPSULATI) .................................................................................................................. 35 3.3.1 Un po’ di storia ............................................................................................................................................. 36 3.3.2 Le Caratteristiche ........................................................................................................................................... 38 3.3.3 La programmazione ...................................................................................................................................... 39 4 IL MICRO WEB SERVER EMBEDDED: RECS 101............................................................................................ 42 4.1 GENERALITÀ .......................................................................................................................................................... 42 4.1.1 Indipendenza dalla piattaforma hardware: la tecnologia JAVA .................................................................. 43 4.2 CARATTERISTICHE DI RECS 101 ......................................................................................................................... 45 4.3 CONNESSIONE A RECS 101 ................................................................................................................................. 56 5 SISTEMI DI VIDEO CONTROLLO ANALOGICI ................................................................................................ 58 5.1 IMPLEMENTAZIONE DI UN SISTEMA DI VIDEO CONTROLLO ANALOGICO............................................................. 58 5.2 LE TELECAMERE.................................................................................................................................................... 59 5.2.1 Il sensore .................................................................................................................................................... 60 5.2.2 Sensibilità e altre caratteristiche delle telecamere ....................................................................................... 64 5.3 IL SEGNALE VIDEO COMPOSITO............................................................................................................................. 65 5.3.1 L’interlacciamento e gli standard video ...................................................................................................... 66 5.3.2 La sincronizzazione ....................................................................................................................................... 68 5.3.3 Il segnale video composito ............................................................................................................................. 71 5.5 IL TRASPORTO DEL SEGNALE VIDEO COMPOSITO ......................................................................................... 72 5.4.1 Simulazione col codice di simulazione SPICE del cavo RG59 .................................................................... 74 5.5 VANTAGGI E LIMITI DI UN SISTEMA VIDEO ANALOGICO ...................................................................................... 78 6 SISTEMI DI VIDEO CONTROLLO DIGITALE OVER IP (INTERNET PROTOCOL) .................................. 80 6.1 I CODEC.................................................................................................................................................................. 80 6.1.2 Alta qualità: Motion-JPEG o MPEG4 ? ....................................................................................................... 85 6.2 NETWORK CAMERA E SUO UTILIZZO IN UN SISTEMA VIDEO DIGITALE ................................................................ 85 6.3.1 Trasporto del video digitale su rete internet .................................................................................................. 86 6.3.2 Sistemi di protezione e accesso ad una network camera .............................................................................. 88

Upload: cristian-randieri-phd-lion-open-networker

Post on 15-Aug-2015

25 views

Category:

Technology


3 download

TRANSCRIPT

Indice

1

INDICE

1 INTRODUZIONE. ........................................................................................................................................................ 3

2 ESPERIMENTO GRAAL ....................................................................................................................................... 10

2.1 CARATTERISTICHE E UTILITÀ DEL FASCIO GRAAL ........................................................................................... 10 2.2 DIFFUSIONE COMPTON INVERSA: ENERGIA DEL FASCIO DI FOTONI ................................................................... 11 2.3 L’INTERAZIONE CON GLI ELETTRONI DELL’ANELLO ESRF E LA POLARIZZAZIONE DEL FASCIO ...................... 13 2.4 APPARATO SPERIMENTALE PER LA PRODUZIONE DEL FASCIO GRAAL ............................................................. 14 2.5 PROGRAMMA DI FISICA DELL’ESPERIMENTO GRAAL .......................................................................................... 16

3 CENNI SULLE TECNOLOGIE DI TELECONTROLLO ..................................................................................... 18

3.1 CONTROLLORI A LOGICA PROGRAMMABILE (PLC) ............................................................................................ 18 3.1.1 La Central Processing Unit (CPU) del PLC ................................................................................................. 20 3.1.2 Schede di ingresso e di uscita ...................................................................................................................... 23 3.1.3 Schede di comunicazione .............................................................................................................................. 24

3.2 INTERNET E IL TRANSFER CONTROL PROTOCOL (TCP) PER IL TRASPORTO DEI DATI ...................................... 25 3.2.1 La pila protocollare Ethernet ......................................................................................................................... 26 3.2.2 Realizzazione della connessione tra client e server ....................................................................................... 29 3.2.3 La protezione delle reti .................................................................................................................................. 32

3.3 SISTEMI EMBEDDED (O INCAPSULATI) .................................................................................................................. 35 3.3.1 Un po’ di storia ............................................................................................................................................. 36 3.3.2 Le Caratteristiche ........................................................................................................................................... 38 3.3.3 La programmazione ...................................................................................................................................... 39

4 IL MICRO WEB SERVER EMBEDDED: RECS 101 ............................................................................................ 42

4.1 GENERALITÀ .......................................................................................................................................................... 42 4.1.1 Indipendenza dalla piattaforma hardware: la tecnologia JAVA .................................................................. 43

4.2 CARATTERISTICHE DI RECS 101 ......................................................................................................................... 45 4.3 CONNESSIONE A RECS 101 ................................................................................................................................. 56

5 SISTEMI DI VIDEO CONTROLLO ANALOGICI ................................................................................................ 58

5.1 IMPLEMENTAZIONE DI UN SISTEMA DI VIDEO CONTROLLO ANALOGICO ............................................................. 58 5.2 LE TELECAMERE .................................................................................................................................................... 59

5.2.1 Il sensore .................................................................................................................................................... 60 5.2.2 Sensibilità e altre caratteristiche delle telecamere ....................................................................................... 64

5.3 IL SEGNALE VIDEO COMPOSITO............................................................................................................................. 65 5.3.1 L’interlacciamento e gli standard video ...................................................................................................... 66 5.3.2 La sincronizzazione ....................................................................................................................................... 68 5.3.3 Il segnale video composito ............................................................................................................................. 71

5.5 IL TRASPORTO DEL SEGNALE VIDEO COMPOSITO ......................................................................................... 72 5.4.1 Simulazione col codice di simulazione SPICE del cavo RG59 .................................................................... 74

5.5 VANTAGGI E LIMITI DI UN SISTEMA VIDEO ANALOGICO ...................................................................................... 78

6 SISTEMI DI VIDEO CONTROLLO DIGITALE OVER IP (INTERNET PROTOCOL) .................................. 80

6.1 I CODEC.................................................................................................................................................................. 80 6.1.2 Alta qualità: Motion-JPEG o MPEG4 ? ....................................................................................................... 85

6.2 NETWORK CAMERA E SUO UTILIZZO IN UN SISTEMA VIDEO DIGITALE ................................................................ 85 6.3.1 Trasporto del video digitale su rete internet .................................................................................................. 86 6.3.2 Sistemi di protezione e accesso ad una network camera .............................................................................. 88

Indice

2

7 UN CASO REALE: IL TELECONTROLLO DEGLI APPARATI DELLA SALA LASER

DELL’ESPERIMENTO GRAAL ................................................................................................................................. 91

7.1 DESCRIZIONE DELL’APPLICAZIONE ...................................................................................................................... 91 7.2 ARCHITETTURA DEL SISTEMA DI CONTROLLO. .................................................................................................... 93 7.3 INTERFACCIA DI POTENZA CON GLI APPARATI CONTROLLATI ............................................................................ 95

CONCLUSIONI.............................................................................................................................................................. 98

RINGRAZIAMENTI .................................................................................................................................................. 100

BIBLIOGRAFIA ........................................................................................................................................................... 101

1 Introduzione

3

1 Introduzione.

Nel corso degli anni compresi tra il 1970 e il 1995 sono stati realizzati fasci di fotoni di

energia sino a 1.5 GeV, etichettati e polarizzati, prodotti dalla deflessione a 180° della luce

di un laser da parte degli elettroni di alta energia, sino a 6 GeV, di un anello di

accumulazione.

Il primo di tali fasci è stato il Ladon [1], dal nome del fiume nella mitologia greca,

realizzato sull’anello di accumulazione ADONE (grande Anello Di Accumulazione), a

Frascati; l’esperimento ha subito un successivo perfezionamento con la realizzazione sullo

stesso anello del fascio TALADON [2] (TAgged LADON). Il secondo è stato il fascio

Light Electron Gamma Source [3] , sull’anello NSLS (National Synchrotron Light Source),

a Brookhaven (USA). Infine il terzo è il fascio GRAAL (GRenoble Anneau Accelerateur

Laser), sull’anello ESRF (European Synchrotron Radiation Facility), a Grenoble. Occorre

ancora ricordare, per completezza di trattazione che sono stati realizzati a Novosibirsk

anche altri fasci polarizzati: ROKK-2 avente un’energia massima di 149 MeV e ROKK-4

con un’energia massima di 900 MeV.

Come verrà esposto in modo più dettagliato nel primo capitolo, il procedimento consiste

nel far incidere a 180° la luce polarizzata di un raggio laser (avente energia di pochi

elettronVolt) sugli elettroni ultrarelativistici di un anello di accumulazione: in tal modo i

fotoni, diffusi all’indietro per effetto Compton, acquistano un’energia che può andare da

decine di MeV a qualche GeV, in funzione dell’energia degli elettroni urtati, dell’angolo di

diffusione e della lunghezza d’onda del laser adoperato. I fotoni diffusi sono distribuiti,

1 Introduzione

4

pertanto, secondo un certo spettro di energia e hanno energia massima quando sono emessi

ad un angolo di 0° rispetto alla direzione degli elettroni incidenti.

All’interno dell’anello ADONE, per esempio, sono accumulati elettroni di 1.5 Gev e i γ

diffusi dall’urto possono avere un’energia massima di 80 MeV. Gli elettroni di NSLS

hanno energia di 2.5 Gev e il fascio LEGS prodotto può giungere fino a 320 MeV. Infine

l’anello ESRF di Grenoble, avente elettroni circolanti da 6 Gev, permette la produzione

di γ aventi energia massima Emax=1500 MeV.

Nel capitolo 2 saranno descritte le caratteristiche e le utilità del fascio GRAAL

partendo dalle nozioni di diffusione Compton inversa per arrivare al suo programma di

fisica. Nei capitoli successivi si valorizzeranno gli aspetti riguardanti essenzialmente le

applicazioni ed i vantaggi delle tecniche di telecontrollo remoto, con applicazione alle

attrezzature usate per la produzione del fascio GRAAL.

Nel capitolo 3 analizzeremo alcune di queste tecnologie che possono avere come

componenti i PLC e i sistemi embedded. Soffermandoci su questi ultimi accenneremo all’

utilizzo delle reti Ethernet basate sull’IP e al più diffuso dei suoi protocolli di trasporto: il

TCP, alla base di tutti i sistemi di controllo remoto che saranno analizzati in questo lavoro

di tesi. Lo scopo del capitolo è quello di fornire, da un lato un’introduzione ai sistemi di

automazione, dall’altro, alcuni strumenti necessari per i capitoli successivi in cui si parlerà

dei sistemi di controllo remoto che sono stati utilizzati all’interno dell’esperimento

GRAAL.

Da diversi anni ormai esistono sistemi di video controllo installati in parecchi siti per vari

motivi: sicurezza, controllo, monitoraggio di processi, etc… La tecnologia impiegata nei

sistemi di video controllo ha subito, negli anni, una certa evoluzione e ogni passo in avanti

è contrassegnato da nuove problematiche emergenti, ma anche da notevoli vantaggi.

Riguardo alle problematiche, è naturale che allorquando si migliora l’efficienza di un

sistema, spesso se ne aumenta anche la complessità e dunque nascono nuovi problemi da

risolvere ovvero ostacoli legati alla nuova tecnologia impiegata. Per esempio

un’automobile di un tempo per “funzionare” bastava che “partisse” e la sua manutenzione

era davvero alla portata di tutti, nel senso che i passi da seguire per un check-up completo

erano molto limitati. Per contro una moderna autovettura incorpora una tecnologia molto

1 Introduzione

5

avanzata che unisce diverse discipline come meccanica, elettronica, informatica e

telecomunicazioni.

Alla luce di ciò, nel capitolo 4 descriveremo le parti che compongono un sistema di video

controllo analogico e vedremo come esse interagiscono. Vedremo come si genera

l’immagine all’interno di una telecamera e in che modo viene trasmessa. Introdurremo

degli standard di trasmissione del segnale video e analizzeremo alcune problematiche

legate alla risoluzione dell’immagine. Infine vedremo quali sono i limiti di un sistema di

video controllo analogico e accenneremo come essi possano essere superati cambiando

tecnologia. L’era dell’analogico infatti non è ancora definitivamente tramontata ed è

pertanto interessante vedere cosa cambia nel migrare dalla tecnologia analogica a quella

digitale, da un sistema di video controllo analogico a un sistema di video controllo

digitale con tecnologia IP .

Un sistema di video controllo analogico, sebbene più semplice nella sua implementazione,

presenta molte limitazioni di diversa natura. Nel capitolo 5 vedremo come queste si

possano superare cambiando radicalmente la tecnologia impiegata. Nello specifico

analizzeremo una possibile implementazione di un sistema di video controllo digitale,

partendo dalla descrizione di una network camera e della sua funzionalità. Particolare

attenzione dedicheremo al sistema di trasmissione del segnale elaborato da una network

camera su rete internet; infatti tale tecnica comporta molti vantaggi in termini di

versatilità ed una riduzione di cablaggi e costi.

Tuttavia, a differenza dei sistemi analogici, il percorso che va dalla generazione delle

immagini alla trasmissione e ricezione delle stesse è più complesso. Nel capitolo 6,

partendo da un’analisi dettagliata della generazione delle immagini su di un CCD (Charge

Coupled Device) e della loro trasmissione in un sistema analogico si descriverà un sistema

digitale, che a differenza del primo, prevederà una conversione del segnale analogico in

digitale, seguito da una fase di compressione effettuata tramite opportuni algoritmi

matematici. Nel contempo si descriveranno i vantaggi derivanti dall’impiego di una

network camera, controllata da remoto all’interno di una sala sperimentale.

Poiché gli apparati utilizzati negli esperimenti di fisica nucleare sono spesso molto

complessi e coinvolgono un gran numero di dispositivi di misura quali sensori ed attuatori,

la possibilità di gestire questi dispositivi attraverso un controllo remoto, che viene

1 Introduzione

6

presentata nel nostro caso pratico con il fascio GRAAL al capitolo 7, presenta due

vantaggi:

1) permette agli operatori di modificare alcuni parametri dell’esperimento senza che

questi debbano direttamente accedere alle sale sperimentali;

2) permette di monitorare un gran numero di variabili fondamentali per il buon esito

dell’esperimento.

Il tipo d’informazione presente nel sistema può essere suddiviso in due categorie:

La supervisione dell’impianto ed il controllo dei dati, necessari per il corretto

funzionamento del sistema.

Questa informazione viene utilizzata per mettere a punto le condizioni operative che

meglio si prestano per la corretta esecuzione dell’esperimento. La relativa dinamica è

modesta, perciò può essere gestita tramite controllo remoto utilizzando un sistema

distribuito.

L’acquisizione dei dati sperimentali.

I segnali sono solitamente ottenuti a frequenze aleatorie e sono caratterizzati da una

durata molto piccola (generalmente pochi nanosecondi o meno); di conseguenza essi

devono essere memorizzati in loco, richiedendo l’utilizzo di sistemi di acquisizione

dedicati in tempo reale, risultando difficilmente implementabile l’eventuale

trasferimento attraverso un sistema di comunicazione .

Gli apparati sperimentali a cui ci si riferisce vengono normalmente utilizzati per studiare

nuclei e particelle. In genere sono necessarie adeguate strutture protette e sicure alloggiate

all’interno dei laboratori di ricerca per la fisica nucleare, il cui accesso è rigorosamente

regolato da sistemi di protezione molto sofisticati e sicuri. Dopo un’attenta analisi dei vari

modi di funzionamento di svariati apparati sperimentali, la nostra attenzione è stata

focalizzata sul problema di monitorare i sistemi di controllo tipici dell’esperimento

GRAAL. In effetti abbiamo osservato che questa parte dell’esperimento viene

tradizionalmente gestita adoperando soluzioni semplicistiche spesso dettate da regole

euristiche. Sovente negli esperimenti di fisica nucleare ci si concentra molto di più sui

1 Introduzione

7

sistemi di acquisizione dei dati sperimentali che sui sistemi di gestione dell’esperimento

stesso trascurando, a volte, tutta una serie di complicazioni puramente operazionali che

potrebbero limitarne la corretta esecuzione. L’insorgere di problemi di questo tipo può

limitare l’effettivo tempo di acquisizione dati, poiché a volte è necessario sospendere il

fascio e quindi rifare una nuova messa a punto dell’esperimento stesso.

Più specificatamente, in funzione della nostra esperienza, sono state fatte le seguenti

osservazioni:

I sistemi di supporto potrebbero essere attivabili solo manualmente all’interno delle

sale sperimentali;

Durante ogni esperimento la presenza delle radiazioni (pericolosa sia per gli essere

umani che per la strumentazione) richiede di mettere le sale sperimentali nello stato

cosiddetto di “Safety Control”; il che si traduce nella necessità di dover sospendere

il fascio ogni qualvolta un operatore deve intervenire all’interno di tali sale;

Le connessioni dedicate tra le sale sperimentali e le sale di acquisizione sono

spesso di tipo punto-punto con dispendio di cablaggi.

Quando, in una sala sperimentale, le apparecchiature elettroniche per il controllo ed il

monitoraggio dei processi, sono in numero elevato, torna utile una tecnologia di supporto

per eseguire operazioni di inizializzazione, setup, etc… Tali operazioni vengono eseguite

in remoto, cioè da una postazione fisicamente differente da quella dello strumento da

controllare, dalla quale è anche possibile il controllo di tutte le altre apparecchiature.

Tipicamente per effettuare ciò si utilizzano delle interconnessioni in rete che spaziano da

quella seriale a quella basata su “internetworking”. Inoltre inequivocabili vantaggi sono

l’espandibilità e la scalabilità dei sistemi.

Sulla base di queste considerazioni, abbiamo identificato un punto chiave che influiva

negativamente sui tempi di setup degli apparati GRAAL:

· Il sistema di supporto per la gestione del laser e delle ottiche che permette di

generare i raggi gamma.

In particolare nell’esperimento GRAAL, tale sistema comprende un laser di elevata

potenza che, tramite un periscopio ottico di precisione va a colpire gli elettroni accelerati

provenienti dall’anello ESRF. Punto chiave di tale sistema è che di volta in volta è

1 Introduzione

8

necessario eseguire la regolazione delle ottiche mediante un complesso software scritto in

codice LabView, che s’interfaccia a più moduli GPIB (General Purpose Interface Bus),

posti in cascata per un percorso totale di circa 100 m, che va dalla sala sperimentale alla

sala di acquisizione dati. Spesso a causa dei problemi di sincronizzazione dei vari moduli,

l’intera catena GPIB collassa per cui è necessario fare il reset manuale di tutti i moduli

secondo una particolare sequenza.

Altro punto importante riguarda proprio la sala dedicata al Laser. Per ovvie ragioni di

sicurezza dovute alle elevate potenze emesse dal laser che possono raggiungere i 6 W è

tassativamente vietato rimanere in tale sala quando il laser è operativo. Con l’ausilio di una

particolare network camera di seguito dimostreremo come sia possibile virtualizzare la

presenza di un operatore all’interno della sala, evitando così inutili sospensioni del fascio.

Il capitolo 7 costituisce la parte innovativa della tesi, poiché partendo dalle nozioni e

problematiche esposte in tutti i capitoli precedenti, verrà mostrata un’applicazione reale di

tali tecniche che hanno apportato all’esperimento GRAAL un valido ausilio che può essere

riassunto nei seguenti vantaggi:

Riduzione dei costi dei cavi e della loro installazione, di conseguenza riducendo il

numero delle scatole di giunzione, delle barriere di isolamento di sicurezza, senza

trascurare il problema di eventuali cortocircuiti dovuti ad una cattiva posa in opera;

Facile addizione o rimozione di dispositivi del sistema senza la necessità di nuovi

cavi. Questo è un punto chiave nell’arrangiamento degli esperimenti scientifici, che

diversamente dagli impianti industriali sono strutture dinamiche continuamente in

evoluzione, dove l’addizione o la rilocazione di sensori è una frequente occorrenza;

Riduzione in numero di connessioni per i dispositivi montati su parti mobili.

Questo è un innegabile vantaggio in apparati (per es. nelle braccia dei robots o nei

supporti mobili dei sistemi di misura) i quali usano un largo numero di dispositivi

collegati e per i quali matasse di cavi di interconnessione potrebbero rendere più

pesanti e più rigide le articolazioni;

Riduzione degli errori di installazione. Nei sistemi complessi il problema degli

errori umani nei dispositivi cablati non dovrebbe essere sottovalutato. Quando sono

1 Introduzione

9

usate centinaia di connessioni può capitare che una connessione risulti errata

(causata per esempio dalla confusione tra due differenti conduttori), e non sempre è

possibile rivelare l’errore anche quando il sistema è stato testato. Se è usato un

sistema a bus (Binary Unit System), d’altro canto, i vari dispositivi sono connessi

in parallelo, sullo stesso bus o in differenti bus, e solo la configurazione del sistema

e l’applicazione software sono responsabili per la corretta esecuzione del flusso di

informazioni. E’ possibile implementare moduli software che controllano la

corretta messa a punto del sistema;

Riduzione dei costi di documentazione. Benché questo non sia una voce importante

nella totalità dei costi di un progetto, la fase di produzione della documentazione è

una delle più delicate (in vista di possibili aggiornamenti del progetto). Quando

l’aggiornamento (come già menzionato un esperimento di fisica nucleare è

altamente dinamico) coinvolge variazioni nella configurazione di un certo numero

di dispositivi, gli schemi precedenti ed i disegni richiedono considerevoli

modificazioni.

In conclusione mostreremo come i risultati ottenuti siano incoraggianti per concreti

sviluppi futuri. Infatti il punto di forza delle soluzioni mostrate è rappresentato dalla

facilità con cui i vari sistemi possono essere espansi ed integrati, senza essere condizionati

da quanto preesiste. Dimostreremo come tali applicazioni sono un valido supporto per i

moderni esperimenti di fisica nucleare, andando ad affiancare i sistemi d’acquisizione dati

e l’elettronica dei rivelatori di particelle, già adoperati.

2 Esperimento GRAAL

10

2 Esperimento GRAAL

2.1 Caratteristiche e utilità del fascio GRAAL

Il fascio GRAAL rappresenta uno strumento particolarmente indicato per lo studio delle

reazioni nucleari per diverse ragioni:

Può essere adoperato come sonda nucleare, in quanto permette di esplorare la struttura

interna del nucleone attraverso la fotoproduzione dei suoi stati eccitati. Infatti se l’energia

del γ assume valori nell’intervallo 500 Mev<Eγ<1500 Mev la minima distanza che è

possibile risolvere è 0.13 fm, da confrontarsi con la dimensione rp=0.81 fm, ottenuta dalla

radice quadrata del raggio quadratico medio del protone misurato da esperimenti di

elettrodiffusione.

L’interazione elettromagnetica che il fotone ha con il nucleone o con i quark che lo

compongono è conosciuta e pertanto può essere facilmente fattorizzata nella sezione d’urto

in modo da evidenziare la parte legata alle sole interazioni forti.

I γ prodotti hanno la stessa polarizzazione dei fotoni del laser, in quanto per urti relativistici

l’elicità è un buon numero quantico; essa può essere quindi modificata cambiando la

polarizzazione del laser; in tal modo si possono studiare gli effetti legati alla polarizzazione,

limitando gli errori sistematici.

2 Esperimento GRAAL

11

I fotoni polarizzati hanno il campo elettrico e magnetico orientati secondo una direzione

precisa. Questo introduce effetti angolari in funzione dell’azimut φ, che permettono di

distinguere meglio i diversi multipoli che contribuiscono alle varie transizioni nucleoniche.

2.2 Diffusione Compton inversa: energia del fascio di fotoni

Tramite la diffusione Compton ricaviamo, adesso, l’energia dei fotoni uscenti.

Supponiamo di avere, un elettrone di quadrimpulso (pe, Ee), e un fotone di energia Eγ

(figura 2.1).

Figura 2.1: Cinematica della diffusione Compton inversa

L’energia del fotone diffuso è univocamente determinata dall’angolo a cui esso viene

emesso rispetto alla traiettoria dell’elettrone incidente. La sezione d’urto che descrive il

processo è quella di Klein-Nishina, che è calcolata nel sistema di riferimento in cui

l’elettrone è a riposo e nel caso in cui i fotoni incidenti non sono polarizzati. Se l’elettrone

è ultrarelativistico, la trasformazione di Lorentz che fa passare al sistema di riferimento

del laboratorio provoca un forte restringimento dell’angolo fotone diffuso = inc ; pertanto la

distribuzione angolare dei fotoni diffusi è fortemente piccata in avanti rispetto alla

2 Esperimento GRAAL

12

direzione degli elettroni incidenti. La sezione d’urto per fotoni incidenti non polarizzati è

data dall’espressione:

dove :

è il fattore di Lorentz dell’elettrone;

;

.

Nel caso ultrarelativistico, in cui si possono considerare solo i termini proporzionali a

, l’espressione che fornisce l’energia del fotone diffuso in funzione dell’angolo a cui

esso emerge dall’urto è data da:

(1.1)

Nel caso in cui i due fasci iniziali siano allineati e cioè il fotone venga fatto incidere

sull’elettrone con un angolo , la relazione (1.1) si riduce all’espressione

seguente:

(1.2)

Dalla relazione (1.2) si può vedere che l’energia del fotone diffuso è molto più elevata di

quella del fotone entrante. Pertanto la diffusione Compton inversa può essere adoperata

per produrre un fascio di fotoni di alta energia partendo dai fotoni di pochi elettronVolt di

un laser. Il fascio prodotto avrà uno spettro di energia, il cui valore massimo viene

raggiunto nel caso di diffusione del γ all’indietro .

2 Esperimento GRAAL

13

Per determinare l’energia del fotone prodotto la tecnica adoperata nel fascio GRAAL,

consiste nell’etichettare il fascio γ, misurando l’energia dell’elettrone che ha interagito

con il fotone di energia . L’energia del γ etichettato sarà data dalla semplice relazione:

(1.3)

2.3 L’interazione con gli elettroni dell’anello ESRF e la

polarizzazione del fascio

I fotoni emessi dal laser sono polarizzati linearmente da due finestre di Brewster e

possono essere polarizzati circolarmente con una lamina a quarto d’onda. Questa

polarizzazione si trasmette quasi inalterata ai fotoni uscenti dalla retrodiffusione Compton.

Ricordiamo infatti che questi elettroni sono ultrarelativistici ( GevEe 6 ) e quindi

l’elicità rappresenta per essi un buon numero quantico. Questo implica che nell’urto tra i

fotoni e gli elettroni, è del tutto trascurabile il contributo dato dalla diffusione con spin-flip

dell’elettrone, in seguito alla quale il fotone cambierebbe la sua polarizzazione. Inoltre

nello scattering all’indietro cioè per quei che vengono diffusi con un angolo 0

rispetto alla direzione del fascio di elettroni, il momento angolare relativo tra le due

particelle è nullo, pertanto l’elettrone non può modificare la polarizzazione del neanche

per scambio di momento angolare orbitale. In prima approssimazione la percentuale di

polarizzazione del fascio può essere così espressa in funzione dell’angolo formato

rispetto a 0 :

41 P

Definiamo il parametro x come il rapporto tra l’energia E del diffuso e quella

massima maxE che il raggiunge per 0 . Tale andamento è illustrato nella seguente

figura 2.2:

2 Esperimento GRAAL

14

Figura 2.2: Polarizzazione del fascio di fotoni

Come si vede il risultato è diverso per i due tipi di polarizzazione. Tuttavia per un’energia

dei fotoni diffusi vicina a quella massima, il grado di polarizzazione è prossimo al 100%

in entrambi i casi, cioè il fascio mantiene la sua polarizzazione originaria.

2.4 Apparato sperimentale per la produzione del fascio

GRAAL

Passiamo, adesso, ad una descrizione sommaria dell’apparato sperimentale per la

produzione del fascio GRAAL.

Figura 2.3 : Apparato sperimentale GRAAL

2 Esperimento GRAAL

15

Come si vede nella sovrastante figura 2.4, i fotoni emessi dal laser urtano nella regione di

interazione con gli elettroni ultrarelativistici, provenienti in direzione opposta. Come

abbiamo visto nel paragrafo precedente, per determinare l’energia del fotone emesso si

misura sperimentalmente l’energia '

eE dell’elettrone diffuso. A tale scopo viene impiegato

un rivelatore che andiamo a descrivere insieme alla tecnica cosiddetta di etichettamento

interno alla macchina.

Una possibilità pratica per etichettare il fotone di alta energia prodotto nell’urto,

misurando la posizione dell’elettrone diffuso è quella di un etichettamento interno: il

rivelatore di “tagging” deve essere estremamente compatto e posizionato all’interno della

camera a vuoto dell’anello di accumulazione, il più vicino possibile all’orbita principale

dell’elettrone. Inoltre il rivelatore lavora nell’ambiente dell’anello dove è pure presente

una radiazione di sincrotrone, che crea un forte rumore di fondo. Esso è costituito da 10

scintillatori plastici per dare il via agli impulsi elettrici da acquisire, e da 128 microstrip al

silicio per misurare la posizione d’impatto dell’elettrone diffuso. Con questa tecnica si

ottiene una risoluzione dell’energia dei fotoni uscenti di 16 Mev (Full Width Half

Maximum) tra 500 e 1500 MeV di fotone. Per lo studio dei canali di fotoproduzione il

fascio γ viene indirizzato su di un bersaglio. Le particelle prodotte vengono rivelate da un

rivelatore.

Il rivelatore adronico GRAAL copre l'intero angolo solido a parte due piccole finestre di

entrata e uscita lungo l'asse del fascio. E' essenzialmente costituito da tre parti: Nella parte

centrale, tra 25° e 155° le particelle che emergono passano attraverso due camere a filo

cilindriche ed un barile di 32 sottili scintillatori plastici, poi entrano in un calorimetro fatto

di 480 cristalli di BGO, ciascuno lungo 24 cm, e alloggiati, come un'arancia, in 32 settori

di 15 cristalli ognuno.

Le particelle emesse ad angoli minori di 25° attraversano due camere a filo planari e tre

muri di scintillatori plastici. Le prime due pareti sottili sono usate per misurare la specifica

ionizzazione delle particelle. Poi una barriera spessa, con strati alternati di scintillatori

plastici e piombo, misura l’energia totale delle particelle cariche e rivela neutroni e raggi

gamma. Tutte e tre le barriere insieme offrono una misurazione della posizione e del

tempo di volo delle particelle rivelate.

Le particelle emesse all' indietro incontrano due dischi di scintillatori plastici separati da

piombo. Ogni disco ha un foro centrale di 5 cm di raggio per il passaggio del fascio ed è

visto da 12 fotomoltiplicatori per ricostruire la posizione e il tempo d’impatto di una

2 Esperimento GRAAL

16

particella rivelata. La risposta combinata dei due dischi permette la discriminazione tra i

raggi gamma e le particelle cariche.

2.5 Programma di fisica dell’esperimento Graal

Come abbiamo visto la collaborazione GRAAL dispone di un fascio di γ con elevato

grado di polarizzazione, di energia compresa tra 500 Mev e 1500 Mev. Tale fascio viene

inviato contro un bersaglio (per esempio idrogeno). L’urto tra il γ e il nucleone avviene

pertanto con una certa energia totale nel sistema del centro di massa che rende accessibili

le risonanze barioniche di tipo N e di tipo Δ, almeno fino a quelle con spin J ≤ 5/2 che

intervengono nei processi di fotoproduzione dei mesoni isoscalari π e η. Si aprono, poi,

anche processi che coinvolgono il quark s, attraverso la foto produzione di mesoni strani K

e di barioni strani di tipo Λ.

Una caratteristica saliente del fascio GRAAL è legata alla possibilità di utilizzare un

fascio di fotoni ed un bersaglio entrambi polarizzati: quest’ultimo ha polarizzazione

fissa, mentre quella del fascio può essere rapidamente cambiata nel corso della medesima

presa dati variando la polarizzazione iniziale del laser. Questo assicura che la misura delle

asimmetrie legate ad effetti di polarizzazione non sia affetta da errori sistematici.

Le misure che vengono realizzate dall’esperimento GRAAL si concentrano

principalmente sui seguenti punti:

Spettroscopia delle risonanze barioniche: GRAAL ha le caratteristiche

necessarie per determinare il contributo dinamico di almeno i primi tre multipoli

E1, M1, E2, agli stati eccitati del nucleone, la conoscenza dei quali ha

implicazioni per la comprensione dell’interazione tra i quark costituenti.

Fotoproduzione di η: GRAAL può evidenziare quelle strutture che possono

emergere solo selezionando particolari stati di spin. Vengono, inoltre, effettuate

misure dei parametri del mesone η.

2 Esperimento GRAAL

17

Fotoproduzione di stranezza: Attraverso le reazioni Kp e

0 Kp si può dare una stima delle costanti di accoppiamento dei

vertici forti NKg

e NKg

.

Vengono studiate anche altre reazioni e inoltre le misure di asimmetrie di fascio

hanno, in linea di principio, la sensibilità sufficiente per discriminare tra modelli

esistenti.

3 Cenni sulle tecnologie di telecontrollo

18

3 Cenni sulle tecnologie di telecontrollo

3.1 Controllori a logica programmabile (PLC)

Automatizzare un processo vuol dire determinarne l’inizializzazione o lo spegnimento, in

maniera automatica, sulla base di certe informazioni fornite. In generale, di fatto, un

sistema automatico è composto da tre blocchi fondamentali:

1. Dispositivo di lettura ( legge le informazioni e le invia al blocco di

elaborazione)

2. Unità di elaborazione ( elabora le informazioni e comanda il dispositivo di

uscita)

3. Dispositivo di uscita ( porta fisicamente a livello alto o basso attuatori,

relais, ect…)

Il mercato oggi offre parecchie soluzioni per l’automazione industriale. Una di queste è il

PLC, acronimo di Programmable Logic Controller.

Esso è definito come “computer industriale specializzato nella gestione dei processi”. Più

precisamente un PLC non fa altro che eseguire un programma ed elaborare i segnali

digitali ed analogici provenienti da sensori e diretti agli attuatori presenti in un impianto

industriale.

Potrebbe essere definito come un oggetto hardware componibile o modulare la cui

caratteristica fondamentale è la sua robustezza. Di norma un PLC viene installato

all’interno di quadri industriali tipicamente ubicati in ambienti rumorosi elettricamente,

3 Cenni sulle tecnologie di telecontrollo

19

con temperature elevate o con grande umidità. In certi casi esso rimane in funzione

permanentemente, su impianti che non possono fermarsi mai, come ad esempio le

raffinerie o le centrali elettriche.

La struttura intrinseca del PLC viene adattata in base al processo da automatizzare.

Durante la progettazione del sistema di controllo, vengono scelte le schede adatte alle

grandezze elettriche in gioco. Le varie schede sono quindi inserite all’interno di un BUS di

comunicazione presente all’interno di uno chassis contenente il PLC. Un BUS non è altro

che un canale di comunicazione parallelo che permette l’interconnessione di più entità di

un sistema a microprocessore.

Esso è composto da un alimentatore, dalla CPU che in certi casi può avere interna o

esterna una memoria RAM (Random Memory Address) o Flash o EPROM (Electronically

Programmable Read Only Memory), da un certo numero di schede di ingressi digitali e

uscite digitali, e nel caso in cui sia necessario gestire grandezze analogiche, il PLC può

ospitare delle schede di ingresso analogiche o di uscita analogiche.

I moderni PLC inoltre integrano al loro interno tutte le funzionalità che gli permettono di

operare in rete con altri PLC semplicemente adoperando delle schede di comunicazione

compatibili col protocollo di comunicazione implementato sugli altri. Un protocollo di

comunicazione consiste di una semantica e di una sintassi definite a priori dal progettista

che permette il completo dialogo tra due entità di una rete.

Chiaramente un sistema basato sui PLC può ospitare una moltitudine di schede

d’interfacciamento che si differenziano da un’applicazione all’altra. Ad esempio, nel caso

di operazioni di movimentazione, come nel campo della robotica, il PLC ospita delle

schede acquisizione controllo assi, cioè delle schede molto veloci e sofisticate che

permettono di gestire spostamenti e posizionamento. Nei prossimi paragrafi entreremo nei

dettagli delle parti componenti di un classico PLC, illustrandone le varie proprietà.

3 Cenni sulle tecnologie di telecontrollo

20

3.1.1 La Central Processing Unit (CPU) del PLC

Il compito di elaborare le informazioni di un PLC è affidato alla CPU. Questa è la “parte

pensante” di un PLC; viene anche chiamata microprocessore o microcontrollore.

Un microcontrollore è un circuito integrato spesso racchiuso in package di tipo DIP

(Dual In-line Package)(figura 3.1).

Figura 3.1: Raffigurazione di un comune microcontrollore in versione DIP

Tipicamente possiede un sistema operativo proprietario e una zona di memoria a

disposizione del programma utente, cioè del programma di automazione. La memoria

utente è spesso esterna come ad esempio nel caso di memoria EPROM. Il vantaggio di una

memoria esterna è legata alla sua semplicità di programmazione o di modifica poiché

essendo facilmente asportabile è possibile effettuare degli aggiornamenti in termini di

nuove funzionalità del sistema stesso o risoluzione di casistiche software precedentemente

non contemplate. La CPU durante il funzionamento a regime, colloquia con tutte le schede

connesse sul BUS del PLC, trasferendo dati e comandi sia verso il mondo esterno, sia dal

mondo esterno.

3 Cenni sulle tecnologie di telecontrollo

21

Una delle caratteristiche peculiari delle CPU dei PLC è la loro capacità di poter gestire le

modifiche del programma di gestione del processo durante il normale funzionamento.

Questa possibilità è estremamente utile nel caso di impianti che devono essere sempre

attivi.

All'interno della CPU trovano posto varie parti, tra cui:

Unità di gestione, ovvero informazioni di gestione del PLC stesso, impostate dal

costruttore e trasparenti all'utente;

Archivio di temporizzatori e contatori, funzionali all'operatività del PLC;

Memorie immagine del processo, cioè le informazioni in ingresso ed i comandi in

uscita del processo;

Memoria utente, in cui vengono scritti i programmi che il PLC deve eseguire;

Interfaccia per il dispositivo di programmazione, che comunica con gli strumenti

di programmazione;

Bus dati, comando, indirizzi per la trasmissione dei dati fra le varie parti e con

l'esterno della CPU.

Nella figura 3.2 di seguito riportata, è mostrato un esempio di schema a blocchi di un

PIC16F84, un microcontrollore ad 8 bit prodotto dalla Microchip.

Figura 3.2: Schema a blocchi del PIC16F84

3 Cenni sulle tecnologie di telecontrollo

22

Non ci dilunghiamo in una descrizione approfondita di tutta l’architettura del sistema

raffigurato, teniamo piuttosto a mettere in luce la sua struttura globale: come tutti i

microprocessori, esso possiede un unità aritmetico-logica (ALU) a cui spetta il compito di

interpretare, e successivamente eseguire le istruzioni in maniera sequenziale. La ALU del

PIC16F84A e' in grado di operare su valori ad 8 bit, ovvero valori numerici non più grandi

di 255. Esistono microprocessori con ALU a 16, 32, 64 bit e oltre. La famiglia Intel©

80386©, 486© e Pentium© ad esempio dispone di una ALU a 32 bit. Le potenze di calcolo

raggiunte da questi micro sono notevolmente superiori a scapito della complessità della

circuiteria interna ed accessoria e conseguentemente dello spazio occupato.

Le istruzioni sono memorizzate su una memoria EEPROM (Electrical Erasable

Programmable Read Only Memory).

In basso a destra nello schema troviamo le porte di input-output: 4 porte RA (da RA0 a

RA3) e 8 porte RB (Da RB0 a RB7). Ciascuna di queste, nella fase di programmazione,

viene impostata come porta di ingresso o di uscita a seconda delle esigenze di

programmazione. Sono direttamente connesse ai pin del chip (figura 3.3).

Figura 3.3: Piedinatura del microcontrollore PIC16F84

La programmazione di un microprocessore è svolta in più fasi. Il programma viene

scritto con un normale PC utilizzando dei linguaggi di programmazione a basso livello

(come l’Assembler) o ad alto livello (come Basic, C, Fortran etc…). Dopo aver scritto il

programma, ad esempio, in assembler con un normale editor di testo, lo si compila: Il

compilatore assembler analizza il programma scritto e se non ci sono errori lo traduce in

linguaggio macchina. Il file generato che ha un’estensione .hex ora può essere scaricato

sulla memoria EEPROM del microcontrollore. Per far ciò si utilizza una semplice scheda

di interfaccia che ospita il chip. Questa è connessa al PC tramite la porta seriale o parallela

3 Cenni sulle tecnologie di telecontrollo

23

o USB (Universal Serial Bus) e con dei software applicativi come IC-PROG o MPLAB si

trasferisce il programma sul microcontrollore. Successivamente il chip può essere estratto

dal suo zoccolo (generalmente viene utilizzato uno speciale zoccolo chiamato ZIF “Zero

Insertion Force” per facilitarne l’inserimento e la rimozione) e inserito sul PLC. Tuttavia

qualora si abbia la necessità di riprogrammare rapidamente e frequentemente la EEPROM

del microprocessore si può dotare il PLC di una scheda aggiuntiva per scaricare il

programma direttamente senza estrarre il chip. Questa tecnica è chiamata In Circuit

Programming. Dotare un PLC per la programmazione IC è importante in quanto una

caratteristica fondamentale di queste apparecchiature è proprio la loro riprogrammabilità

che li rende universali e adatti a qualunque processo di automazione industriale.

3.1.2 Schede di ingresso e di uscita

In un PLC le porte di uscita e di ingresso del microprocessore sono connesse a opportune

schede elettroniche per il pilotaggio di apparecchiature esterne. Ricordiamo che un PLC

generalmente non viene progettato ad hoc per una applicazione specifica, per cui deve

mantenere il suo carattere generale di applicabilità in ogni tipo di processo automatico.

Così si avranno schede di ingresso e uscita sia analogiche che digitali.

Le schede di ingresso digitali sono utilizzate per il controllo di grandezze "digitali", cioè

di tensioni a due valori (ad esempio 0 V o 24 V, oppure 0 V 110 V). Ogni scheda può

gestire da 4 a 32, o 64 ingressi digitali differenti. I segnali vengono fatti arrivare con

opportune linee fino alla morsettiera della scheda.

Le schede di uscita digitali sono utilizzate per i comandi di attuatori digitali. Ad

esempio un relais è un attuatore digitale, in quanto può avere soltanto due stati stabili:

diseccitato, o eccitato. Altro esempio di attuatore è una valvola digitale a due stati: aperta,

chiusa. Anche nel caso di schede di uscita digitali, si possono gestire da un minimo di 4 ad

un massimo di 64 uscite digitali differenti.

3 Cenni sulle tecnologie di telecontrollo

24

Le schede di ingresso analogiche permettono il controllo di grandezze elettriche il cui

valore può variare entro un intervallo. Le grandezze in gioco sono in tensione o in corrente.

Ad esempio sono disponibili schede di ingresso analogiche in corrente, con un intervallo

variabile tra 4 mA e 20 mA. Ad esempio molti produttori di PLC rendono disponibili

schede con ingressi analogici per sonde di temperatura. Queste schede sono disponibili con

varie risoluzioni (8-12-14-16 bit) e con 1 o più ingressi distinti disponibili in morsettiera o

connettore.

Le schede di uscita analogiche permettono di controllare degli attuatori variabili.

Possono essere in corrente o in tensione ed avere una determinata soluzione esprimibile in

bit. Ad esempio è possibile comandare un motore elettrico tramite un inverter variandone

la velocità, tramite la frequenza, da zero alla sua massima velocità. Oltre all'esempio sopra

citato servono per regolazioni di temperatura variando l'intervallo di uscita, regolazioni di

luce ecc. Ad ogni aumento o diminuzione di luce corrisponde un equivalente segnale in

corrente o in tensione.

3.1.3 Schede di comunicazione

Il PLC durante il suo funzionamento può comunicare con computer, con altri PLC oppure

con altri dispositivi come le macchine CNC (i torni e/o le frese a controllo numerico delle

aziende).

La comunicazione con computer e altri dispositivi avviene tramite tipi di connessione

standard come ad esempio:

RS232 (Recommended Standard 232)

RS422/RS485 (Recommended Standard 422)/ (Recommended Standard 485)

TCP/IP (Trasmission Control Protocol)/(Internet Protocol)

La comunicazione con altri PLC avviene tramite protocolli standard, ad esempio:

3 Cenni sulle tecnologie di telecontrollo

25

Profibus

DeviceNet

TCP/IP

Modbus

Modbus Plus

Modbus TCP/IP

Controlnet

UDP/IP (User Datagram Protocol)/(Internet Protocol)

ecc.

In particolare nel prossimo paragrafo verranno analizzate le tecniche che prevedono

l’utilizzo di Internet e del protocollo TCP per il trasporto dei dati.

3.2 Internet e il Transfer Control Protocol (TCP) per il

trasporto dei dati

In questo paragrafo vogliamo introdurre alcuni concetti base come l’architettura a strati

del TCP, metodi di connessione, “handshaking” ed altri ancora, che ci serviranno in

seguito.

Tali nozioni sono di fondamentale importanza per i sistemi di telecontrollo remoto, come

RECS101 (Remote Ethernet Control System) prodotto dalla Intellisystem Technologies

S.r.l. (di cui parleremo più avanti in questo capitolo), e le network camere (telecamere

speciali che permettono di veicolare le loro riprese attraverso una rete Ethernet ed

Internet), utilizzati all’interno dell’esperimento GRAAL, a Grenoble in Francia.

3 Cenni sulle tecnologie di telecontrollo

26

L’utilizzo di internet, fino a qualche anno fa, era limitato alla navigazione sul web per

reperire informazioni, all’uso della posta elettronica, e a tutte quelle applicazioni che non

richiedevano elevate velocità di trasporto dei dati. Con l’avvento dell’ADSL, prima, e di

FASTWEB, dopo, la rete internet è diventata un mezzo di comunicazione su larga scala.

Con una larghezza di banda in continua crescita le applicazioni sono diventate davvero

innumerevoli. Tra queste, purtroppo, trovano posto anche quelle illecite. Così il problema

della sicurezza è, più che mai, un fattore cruciale. Vedremo come il protocollo TCP rende

sicura una connessione tra due host nella rete.

Vedremo, infine, come si progetta e realizza una connessione tra client e server, per

esempio tra un PC e una network camera.

3.2.1 La pila protocollare Ethernet

Se si volesse tradurre il termine “internet”, potremmo dire che si tratta di una rete di

reti. Di fatto il percorso fisico che compie un messaggio, dalla locazione di partenza a

quella di destinazione, incontra dei nodi, e da questi viene instradato su percorsi di rete

specifici; in questo senso internet è una rete mondiale che mette in collegamento le sue

sottoreti. Orientarsi, sarebbe un impresa ardua senza l’ausilio di una architettura

protocollare che, stabilisca delle regole per l’invio e la ricezione dei messaggi, garantisca

l’integrità degli stessi, e ne controlli i percorsi.

Un protocollo è un insieme di regole e codifiche che tutti i terminali devono riconoscere,

per applicarle ad ogni pacchetto di dati pervenuto. Facciamo inoltre un’osservazione:

supponiamo di codificare un messaggio per inviarlo ad un determinato ricevitore (host). Il

messaggio viene così diviso in pacchetti, rispettando delle regole protocollari,

successivamente i pacchetti possono essere instradati su differenti percorsi. Anche questa

3 Cenni sulle tecnologie di telecontrollo

27

operazione è soggetta a delle “regole”, cioè ad un protocollo che definisca gli

indirizzamenti. Per usare un paragone, il postino che deve consegnare una lettera segue

delle regole per individuare l’indirizzo di destinazione; lui, però, non conosce il contenuto

della lettera né è tenuto a sapere quali regole grammaticali, per esempio, sono state

impiegate per scriverla. È come se il “protocollo per la grammatica” fosse incapsulato nel

protocollo per l’instradamento.

La rete internet allora è organizzata in protocolli che possono contenere altri protocolli. In

altri termini esiste una pila protocollare organizzata in strati. Possiamo rappresentare il

tutto con una figura:

Figura 3.4: Gli strati della pila protocollare

Lo strato di applicazione è responsabile del supporto delle applicazioni della rete.

Queste applicazioni comprendono molti protocolli, inclusi l’HTTP (Hyper Text Transfer

Protocol) che supporta il WEB (World Electronic Broadcast), SMTP (Simple Mail

Trasport Protocol) che supporta le posta elettronica e l’FTP (File Transfer Protocol) che

supporta il trasferimento dei files.

Lo strato di trasporto fornisce il servizio di trasporto dei messaggi dello strato di

applicazione fra le estremità client e server di un’applicazione. In internet ci sono due

protocolli di trasporto, TCP e UDP; entrambi possono trasportare i messaggi dello strato di

applicazione. Il TCP fornisce alle sue applicazioni un servizio orientato alla connessione.

Questo servizio comprende la garanzia di consegna a destinazione dei messaggi dello

3 Cenni sulle tecnologie di telecontrollo

28

strato di applicazione e un controllo di flusso (cioè l’adattamento tra le velocità di mittente

e destinatario). Il TCP frammenta anche i messaggi più lunghi in segmenti più corti e

fornisce un meccanismo di controllo della congestione, in modo che una sorgente limiti la

sua velocità di trasmissione quando la rete è congestionata. Il protocollo UDP fornisce alle

sue applicazioni un servizio senza connessione: i dati vengono inviati senza eseguire

controlli sulla congestione e sugli errori.

Lo strato di rete è responsabile dell’instradamento dei datagram (più comunemente

definiti come pacchetti dati) da un host (entità presente all’interno di una rete in grado di

dialogare con altre) all’altro. Questo strato in internet ha due componenti principali. Ha un

protocollo che definisce i campi nel datagram IP e come i terminali e i router (dispositivi

atti ad accoppiare due reti di natura diversa) agiscono su questi campi: il protocollo IP.

Esiste un solo protocollo IP, e tutti i componenti di Internet che hanno uno strato di rete lo

devono impiegare. Lo strato di rete contiene anche i protocolli di instradamento che

determinano il percorso che i datagram devono seguire fra sorgente e destinazione.

Come abbiamo visto Internet è una rete di reti, e l’amministratore della rete può,

all’interno della rete, far funzionare qualunque protocollo di istradamento desideri.

Sebbene lo strato di rete contenga sia il protocollo IP sia numerosi protocolli di

instradamento, spesso ci si riferisce a questo strato come allo strato IP, per il fatto che IP è

il collante che tiene insieme Internet. Qualunque tecnologia che vede l’impiego di Internet

per il trasporto dei dati viene, pertanto, definita over IP. Il lavoro di questa tesi è

focalizzato sulle tecnologie di controllo remoto over IP.

I protocolli dello strato di trasporto (TCP e UDP) in un host sorgente passano un

segmento dello strato di trasporto e un indirizzo di destinazione allo strato IP (questa

operazione corrisponde a quella, forse più familiare, della consegna di una lettera, con

l’indirizzo del destinatario, al servizio postale). Lo strato di rete fornisce quindi il servizio

di instradare il segmento verso la sua destinazione. Quando il pacchetto arriva a

destinazione, IP passa il segmento allo strato di trasporto all’interno della destinazione.

Strato di collegamento. Lo strato di rete instrada un pacchetto attraverso una serie di

commutatori di pacchetto (detti router) fra la sorgente e la destinazione. Per muovere un

pacchetto da un nodo (che può essere un computer host o un router) al successivo sul

percorso, lo strato di rete deve delegare il servizio allo strato di collegamento. In

particolare ciascun nodo IP passa il datagram allo strato di collegamento, che lo invia al

3 Cenni sulle tecnologie di telecontrollo

29

nodo successivo lungo il percorso. A questo punto, lo strato di collegamento ripassa il

datagram allo strato di rete.

Strato fisico. Mentre il compito dello strato di collegamento è di muovere interi frame da

un elemento della rete a quello adiacente, il compito dello strato fisico è di muovere singoli

bit da un nodo al successivo. Tutti i protocolli dello strato fisico dipendono dal mezzo

trasmissivo del link ( per esempio doppino, cavi LAN, Local Aarea Network, cavi

coassiali, fibre ottiche etc..). Ethernet, ad esempio, possiede molti protocolli per questo

strato: uno per il doppino, uno per il cavo coassiale e così via. In ciascun caso il bit si

muove attraverso il link in modo diverso.

In altri termini questo strato della pila protocollare si occupa della trasmissione digitale

dei dati a livello fisico; a livello, cioè, di impulsi elettrici di tensione sulle linee di

trasmissione.

3.2.2 Realizzazione della connessione tra client e server

Il protocollo IP è il protocollo di comunicazione attualmente più usato, poiché costituisce

il protocollo di base usato per le comunicazioni tramite Internet, compresi la posta

elettronica, il Web e le applicazioni multimediali. Una delle ragioni della sua popolarità

risiede nella sua scalabilità. Ciò significa, in altre parole, che questo protocollo può essere

usato sia per le piccole installazioni che per quelle di dimensioni maggiori, perché è in

grado di garantire prestazioni elevate, costi ridotti e un’ampia compatibilità con

attrezzature e tecnologie consolidate.

La maggior parte dei computer attualmente installati negli ambienti di lavoro utilizza

generalmente il protocollo TCP/IP ed è collegato ad altri sistemi tramite l’ormai nota rete

Ethernet che consente di disporre di una rete veloce a un costo ridotto. La maggior parte

dei computer attualmente in commercio ha un’interfaccia Ethernet integrata o è predisposta

per l’installazione di una scheda di interfaccia di rete (NIC “Network Interface

3 Cenni sulle tecnologie di telecontrollo

30

Controller”). Tutti i sistemi di telecontrollo di cui parleremo ne sono forniti. Elenchiamo

alcuni standard:

10 Mbit/s (10 Mbps) Ethernet

Questo standard, raramente utilizzato per le reti a causa della sua ridotta capacità, è stato

sostituito alla metà degli anni ’90 con lo standard 100 Mbit/s Ethernet. La tipologia più

comunemente utilizzata con il protocollo 10 Mbit/s Ethernet era nota con il nome di

10BASE-T. Questa tipologia prevede l’uso di 4 fili (due fili a doppino incrociato)

alloggiati all’interno di un cavo Cat. 3 o Cat. 5. Al centro viene installato un hub o switch,

che dispone di una porta per ciascun nodo. La stessa configurazione viene usata anche per

Fast Ethernet e Gigabit Ethernet.

Fast Ethernet (100 Mbit/s)

Fast Ethernet, che supporta velocità di trasmissione dati fino a 100 Mbit/s, è il tipo di

protocollo Ethernet più comunemente usato nelle reti di oggi. Lo standard principale

prende il nome di 100BASE-T. Pur essendo più recente e più veloce rispetto allo standard

10 Mbit Ethernet, questo protocollo ne condivide tutte le caratteristiche di base. Lo

standard 100 Mbit/s può essere diviso in:

100BASE-TX: che prevede l’uso di cavi in rame a doppino incrociato

(Cat. 5).

100BASE-FX: che assicura velocità di trasmissione 100 Mbit/s Ethernet su cavi in

fibre ottiche.

Nota: la maggior parte degli switch di rete 100 Mbit supporta sia lo standard 10 che 100

Mbit per garantire la compatibilità con i sistemi esistenti (generalmente chiamati switch di

rete 10/100).

Gigabit Ethernet (1000 Mbit/s)

3 Cenni sulle tecnologie di telecontrollo

31

È lo standard corrente utilizzato dai produttori di computer desktop collegati in rete.

Tuttavia, questo standard viene soprattutto utilizzato per le dorsali che collegano i server

agli switch di rete. 1000BASE-T è ampiamente utilizzato e può essere suddiviso in:

1000BASE-T: velocità di trasmissione pari a 1 Gbit/s su cavi in rame Cat. 5 o

Cat. 6.

1000BASE-SX: velocità di trasmissione pari a 1 Gbit/s su cavi in fibre Multi-

mode (fino a distanze massime di 550 m).

1000BASE-LX: velocità di trasmissione pari a 1 Gbit/s su cavi in fibre Multi-

mode (fino a distanze massime di 550 m); se utilizzato con cavi in fibre Single-

mode, può essere ottimizzato anche per distanze più lunghe (fino a 10 km).

1000BASE-LH: velocità di trasmissione pari a 1 Gbit/s su cavi in fibre Single-

mode (fino a distanze massime di 100 km); questa è la soluzione più idonea per

le grandi distanze.

10 Gigabit Ethernet (10,000 Mbit/s)

Questo nuovo standard viene sempre più diffusamente utilizzato per le dorsali di reti

aziendali. Lo standard 10 Gigabit Ethernet utilizza sette diversi tipi di supporti per le reti

LAN, WAN e MAN (Metropolitan Area Network). I suoi requisiti sono attualmente stati

raggruppati in uno standard supplementare, IEEE 802.3ae, che verrà integrato nella nuova

versione dello standard IEEE 802.3.5.2.

Per connettersi ad un host basta aprire un comune browser e immettere, nella barra degli

indirizzi, un “numero” che definiamo indirizzo IP (Internet Protocol Address). Questo è

univoco ed è utilizzato dalle periferiche per identificarsi e comunicare in reti che utilizzano

il protocollo IP. Ciascun indirizzo IP è costituito da quattro numeri separati da un punto

(“.”). Ciascun numero deve essere compreso tra 0 e 255. Un esempio tipico di indirizzo

potrebbe essere “192.36.253.80”.

L‘indirizzo IP è ulteriormente diviso in due sezioni che identificano rispettivamente la rete

e l‘host. Il limite tra queste due sezioni è la cosiddetta netmask o lunghezza del prefisso.

Una netmask con il numero 255.255.255.0 indica che i primi 3 byte sono riservati

3 Cenni sulle tecnologie di telecontrollo

32

all‘indirizzo di rete e che l‘ultimo byte è riservato all‘indirizzo dell‘host. L‘indirizzo può

anche essere delimitato tramite la lunghezza del prefisso. Nel caso dell‘esempio

precedente, la lunghezza del prefisso sarebbe equivalente a 24 bit (ad esempio

192.36.253.80/24).

Alcuni blocchi di indirizzi sono riservati per l‘uso su reti private:

10.0.0.0/8 (netmask 255.0.0.0)

172.16.0.0/12 (netmask 255.240.0.0)

192.168.0.0/16 (netmask 255.255.0.0)

Questi indirizzi vengono usati su reti Internet private, e non possono essere usati sulla rete

Internet pubblica.

3.2.3 La protezione delle reti

Utilizzare la rete Internet o Ethernet per la comunicazione tra due terminali, o per accedere

ad un qualche dispositivo di controllo remoto, abbiamo visto che porta a numerosi

vantaggi. Riduzione dei cablaggi, indipendenza dal tipo di informazione che si vuole

trasmettere, abbattimento dei costi etc… Tuttavia la sicurezza delle connessioni diventa un

fattore cruciale. È necessario proteggere la rete impedendo gli accessi da parte di personale

non autorizzato.

Esistono molti modi per rendere protette le comunicazioni tra la rete e i client. È

possibile controllare e proteggere tutto ciò che è connesso alla rete, a partire dai dati

trasmessi sino all’uso e l’accessibilità di tali dati.

Le comunicazioni protette comportano tre diversi passaggi:

3 Cenni sulle tecnologie di telecontrollo

33

Autenticazione

Autorizzazione

Privacy

Autenticazione.

Il primo passaggio richiesto è l’identificazione dell’utente o del dispositivo in rete sul lato

remoto. Questa operazione viene effettuata fornendo un elemento di identificazione alla

rete/al sistema; ad esempio un nome utente e una password, un certificato X509 (SSL

“Secure Sockets Layer”) e l‘uso dello standard 802.1x. (nota a)

Autorizzazione.

Il passaggio successivo consiste nel far autorizzare e accettare l’autenticazione, ossia nel

verificare che il dispositivo corrisponda effettivamente ai dati di identificazione forniti.

Questa operazione viene effettuata confrontando i dati di identificazione forniti con le

identità valide e approvate contenute nel database o in un apposito elenco. Al termine della

fase di autorizzazione, il dispositivo viene collegato e attivato nel sistema.

Nota: a)

Funzionamento della modalità di autenticazione IEEE 802.1x

Introdotto per rispondere alla necessità della comunità wireless di disporre di metodi di protezione più sicuri, lo

standard 802.1x è uno dei metodi di autenticazione più comunemente usati. IEEE 802.1X autentica le periferiche

connesse a una porta LAN stabilendo una connessione punto a punto oppure impedendo l‘accesso dalla porta in

caso di errore di autenticazione.

Come funziona

I client e i server delle reti 802.1x si autenticano utilizzando certificati digitali forniti da un ente di certificazione.

Questi certificati vengono quindi convalidati da una terza parte, come un server di autenticazione, chiamato

server RADIUS (Remote Authentication Dial In User Server), come Microsoft Internet Authentication Service.

Le periferiche network video della ditta Axis inviano il certificato allo switch di rete, che a sua volta lo inoltra al

server RADIUS. Il server RADIUS convalida o respinge il certificato inviando una risposta allo switch, che a

sua volta autorizza o meno l‘accesso in rete tramite la porta preconfigurata.

Grazie a questo approccio, i sockets (in gergo definiti come canali in cui virtualmente avviene la comunicazione

tra due entità della rete) vengono lasciati aperti e disponibili, il che significa che il punto di accesso autorizza il

collegamento alla rete solo dopo che la periferica è stata identificata correttamente.

3 Cenni sulle tecnologie di telecontrollo

34

Privacy.

Il passaggio finale consiste nell’applicare il livello di privacy richiesto. Questa operazione

viene effettuata crittografando le comunicazioni per impedire che utenti non autorizzati

possano usare/leggere i dati. L’uso della crittografia può ridurre significativamente le

prestazioni, a seconda del tipo di implementazione e crittografia usato. La privacy può

essere assicurata in molti modi. Due dei metodi più comunemente usati sono:

VPN (Virtual Private Network)

SSL/TLS (Transport Layer Security)

VPN (Virtual Private Network)

Le reti VPN permettono di creare un tunnel protetto tra i singoli punti della rete VPN e di

consentire quindi l’accesso solo ai dispositivi in possesso della “chiave” corretta (figura

2.4). Quindi, i dispositivi di rete situati tra il client e il server non saranno in grado di

accedere o visualizzare i dati. Le reti VPN permettono di collegare più siti tramite Internet

in modo sicuro e in modalità protetta.

Figura 3.5: schematizzazione di una rete privata virtuale

3 Cenni sulle tecnologie di telecontrollo

35

SSL/TLS

Un altro sistema per garantire la riservatezza dei dati consiste nell’applicare la crittografia

ai dati stessi. In questo caso non viene adottato un collegamento basato su un canale

protetto come per le reti VPN, poiché la protezione viene applicata ai dati stessi. Esistono

molti metodi di crittografia; ad esempio SSL ( Secure Socket Layer), WEP (Wireless

Equivalent Privacy) e WPA (Wireless Protected Access). Gli ultimi due metodi vengono

principalmente usati per le reti wireless. Con il metodo SSL, che viene spesso chiamato

HTTPS (Hyper Text Transfer Protocol Secure sockets), il dispositivo o il computer

installano un certificato nell’unità. Il certificato può essere emesso localmente dall’utente o

da un ente esterno come Verysign.

Figura 3.6: Sistema di protezione SSL/TLS

3.3 Sistemi embedded (o incapsulati)

In informatica, con il termine sistema embedded (sistema incapsulato) si identificano

genericamente dei sistemi elettronici a microprocessore progettati appositamente per una

determinata applicazione, spesso con una piattaforma hardware ad hoc, integrati nel

sistema che controllano e in grado di gestirne tutte o parte delle funzionalità.

3 Cenni sulle tecnologie di telecontrollo

36

In questa area si collocano sistemi di svariate tipologie e dimensioni, in relazione al tipo di

microprocessore, al sistema operativo, ed alla complessità del software che può variare da

poche centinaia di byte a parecchi megabyte di codice.

Contrariamente ai computer generici, un sistema embedded ha dei compiti conosciuti già

durante lo sviluppo, che eseguirà dunque grazie ad una combinazione hardware/software

specificamente studiata per l’applicazione. Grazie a ciò l'hardware può essere ridotto ai

minimi termini di spazio occupato, consumi e costo di fabbricazione. Inoltre l'esecuzione

del software é spesso in tempo reale (real-time), per permettere se possibile un controllo

deterministico dei tempi di esecuzione.

Un esempio diffuso di Sistema embedded sono le centraline elettroniche installate a bordo

degli autoveicoli per il controllo del motore e dell'ABS (Anti Block System).

3.3.1 Un po’ di storia

Il primo sistema embedded moderno fu l'Apollo Guidance Computer, sviluppato da

Charles Stark Draper al MIT (Massachusetts Institute of Technology) che venne utilizzato

nel primo volo lunare per la gestione del sistema di guida inerziale.

In seguito, i sistemi embedded hanno subito una riduzione dei costi così come una

enorme crescita della capacità di calcolo e delle loro funzionalità. Il primo microprocessore

progettato per essere messo in commercio è stato l'Intel 4004, che venne montato su

calcolatrici ed altri sistemi di piccole dimensioni. Esso richiedeva, comunque, dei chip di

memoria esterni ed altra logica di supporto esterna. Verso la fine degli anni settanta, i

microprocessori ad 8 bit erano la norma, ma necessitavano sempre di memoria esterna,

logica di decodifica e di un interfaccia con il mondo esterno. In ogni caso, i prezzi erano in

caduta libera e sempre più applicazioni cominciarono ad adottare questo approccio,

piuttosto che metodologie di progetto di circuiti logici personalizzati.

3 Cenni sulle tecnologie di telecontrollo

37

Verso la metà degli anni ottanta, un maggiore grado di integrazione permise il montaggio

di altre componenti, in precedenza collegate esternamente, sullo stesso chip del processore.

Con un così basso costo per componente, questa alternativa divenne molto più interessante

che costruire interamente circuiti logici dedicati. Ci fu un'esplosione del numero di sistemi

embedded distribuiti sul mercato, così come delle componenti fornite da vari produttori per

facilitare la progettazione di tali sistemi. Per esempio, vennero prodotti molti circuiti

integrati con un’interfaccia seriale (piuttosto che quella parallela, più tradizionale) che

potevano essere interfacciati con microcontrollori con meno connettori. In questo contesto

apparve il bus I²C (Intelligent Interface Controller). Verso la fine degli anni ottanta, i

sistemi embedded rappresentavano già la regola piuttosto che l'eccezione per quasi tutti i

dispositivi elettronici, tendenza che continua tuttora.

Riportiamo di seguito, a titolo di esempio, alcune applicazioni di sistemi embedded:

Sportelli Bancomat e apparecchi POS (Point Of Sales).

Elettronica aeronautica, come sistemi di guida inerziale, hardware/software di

controllo per il volo e altri sistemi integrati nei velivoli e nei missili.

Telefoni cellulari.

Centralini telefonici.

Apparecchiature per reti informatiche come router, timeserver e firewall.

Stampanti e Fotocopiatrici.

Sistemi di stoccaggio di dati come hard disk, floppy disk o compact disc.

Sistemi di automazione casalinghi come termostati, condizionatori e altri

sistemi di monitoraggio della sicurezza.

Apparecchiature biomedicali come ecografi, scanner medici per risonanza

magnetica.

Equipaggiamento medici.

Strumenti di misura come oscilloscopi digitali, analizzatore logico, e

analizzatore di spettro.

Centraline di controllo dei motori automobilistici e degli ABS.

3 Cenni sulle tecnologie di telecontrollo

38

3.3.2 Le Caratteristiche

Dunque un sistema embedded possiede delle caratteristiche comuni ad un PLC: è un

sistema a microprocessore, esegue un programma memorizzato in una memoria ROM

programmabile, ecc… Tuttavia, a differenza di un PLC un sistema “incapsulato” come

abbiamo visto è stato progettato ad hoc per quella specifica operazione. Così esso risulta

più compatto, presenta meno componenti hardware e di conseguenza un costo più

contenuto.

La maggior parte di questi sistemi, ma non tutti, ha dei vincoli di performance che

devono essere rispettati, come ad esempio la necessità di operare in tempo reale. Può

accadere anche che un sistema debba essere molto veloce nell'esecuzione di alcune

funzioni, ma possa tollerare velocità inferiori per altre attività. Questi sistemi rispettano i

vincoli di performance con una combinazione di hardware e software appositamente

progettati.

Risulta difficile caratterizzare la velocità o i costi di un sistema embedded generico,

anche se, soprattutto per sistemi che devono processare una grande quantità di dati, il

progetto stesso assorbe la maggior parte dei costi. Fortunatamente, la maggior parte dei

sistemi embedded ha delle necessità di performance che possono essere soddisfatte con una

combinazione di hardware dedicato ed una quantità limitata di software ad alte prestazioni.

Per avere un'idea, basti pensare ad un decoder per una televisione satellitare. Nonostante

un sistema come questo deve processare decine di megabit di dati al secondo, la maggior

parte del lavoro è svolta da hardware dedicato che separa, regola e decodifica il flusso

digitale multicanale in un'uscita video. Alla CPU embedded spetta determinare i percorsi

dei dati nel sistema, o gestire gli interrupt, generare e disegnare la grafica, e così via.

Spesso, quindi, la gran parte dell'hardware di un sistema embedded deve sottostare a dei

requisiti di performance molto meno severi di quelli che, invece, deve rispettare l'hardware

primario del sistema stesso.

Nel caso di sistemi che devono essere commercializzati in massa, come un lettore di

musica portatile, ridurre i costi diventa una priorità. Sistemi di questo genere, infatti,

spesso sono dotati di alcuni chip, una CPU altamente integrata, un chip dedicato a tutte le

altre funzioni ed un singolo banco di memoria. In questo caso ogni componente è

selezionato e progettato per ridurre il più possibile i costi.

3 Cenni sulle tecnologie di telecontrollo

39

Il software scritto per molti sistemi embedded, in particolare quelli senza hard disk, è

talvolta chiamato firmware.

I sistemi embedded spesso richiedono di essere attivi continuamente per anni senza errori

così si evita di incorporare componenti con parti meccaniche in movimento (come gli hard

disk), poiché essi sono meno affidabili rispetto a componenti allo stato solido come le

memorie Flash.

Infine tali sistemi per la loro locazione potrebbero non essere fisicamente accessibili

(come per le trivelle dei pozzi di petrolio, oppure i componenti lanciati nello spazio),

pertanto il sistema deve essere capace di resettarsi autonomamente in caso di perdita o

corruzione dei dati. Questa funzionalità è molto spesso ottenuta con l'inserimento di un

componente elettronico chiamato watchdog, che resetta il sistema a intervalli regolari; il

software, periodicamente, provvede a riazzerare il timer interno del componente.

Inoltre con l’incremento dei circuiti a larghissima scala di integrazione (VLSI “Very Large

Scale Integration), una configurazione comune per sistemi embedded ad alto volume di

produzione è il "system on a chip" (SoC), un circuito integrato per applicazioni specifiche

(dall'inglese ASIC: Application-Specific Integrated Circuit), per il quale la CPU è

acquistata come Proprietà Intellettuale da aggiungere al progetto del circuito integrato. Un

altro comune metodo di progetto prevede l'utilizzo di FPGA (Field-Programmable Gate

Array), con la programmazione di tutta la logica interna, inclusa la CPU. La maggior parte

di FPGA sono progettate proprio per questo scopo.

3.3.3 La programmazione

Riguardo alla programmazione della EEPROM del microprocessore nulla di nuovo rispetto

ai PLC: vengono utilizzati compilatori, assembler e debugger per sviluppare i software

relativi al sistema. Tuttavia, un sistema embedded, a seconda dell’applicazione, spesso

3 Cenni sulle tecnologie di telecontrollo

40

richiede una maggiore interazione con il PC per essere riprogrammato rapidamente e con

maggiore semplicità. Pertanto si possono adottare alcune soluzioni hardware unitamente a

programmi più specifici:

un in-circuit emulator (ICE) che, come abbiamo visto, è un dispositivo hardware che

sostituisce o si interfaccia con il microprocessore, ed offre funzionalità per caricare

velocemente e effettuare il debugging (controllo degli errori) di codice di prova all'interno

del sistema. Alcune utility aggiungono un controllo di ridondanza (checksum) o un

Cyclic Redundancy Check (CRC) al programma, in modo da permettere al sistema

embedded di controllare la validità del programma. Per sistemi che utilizzano Digital

Signal Processor (DSP), i progettisti possono usare uno strumento algebrico come

MathCad o Mathematica per simularne la matematica.

Compilatori e linker specifici possono essere utilizzati per migliorare l'ottimizzazione di

hardware particolari.

Tutto ciò porta ad una programmazione più dinamica: una volta scritto il firmware è

possibile modificarlo rapidamente per tenere conto, per esempio, di una situazione che non

era stata prevista. Il software di un sistema embedded diventa più corposo, ma a tutto

vantaggio della sicurezza ed affidabilità. In fase di programmazione è possibile prevedere

un’auto-verifica interna. Gran parte dei sistemi embedded hanno infatti capacità native

di auto-verifica delle proprie funzionalità. Ci sono diversi tipi principali di verifiche, divise

in base alla funzione o componente controllata:

1. Verifica Calcolatore: CPU, RAM e memoria programmabile. Spesso si effettua

una volta all'accensione. Nei sistemi di importanza critica si effettua anche

periodicamente o continuamente.

2. Verifica Periferiche: Simula ingressi e misura uscite. Un sorprendente numero di

sistemi di comunicazione, analogici o di controllo possono fare queste verifiche,

spesso a costo molto basso.

3. Verifica Alimentazione: Solitamente misura ogni linea di potenza, e può

controllare anche qual è l'ingresso (batterie o rete). Le alimentazioni sono spesso

sfruttate al massimo, con poco margine di scarto.

4. Verifica Comunicazione: Verifica la ricezione di semplici messaggi da parte delle

altre unità connesse. Internet, ad esempio, usa il messaggio ICMP "ping".

3 Cenni sulle tecnologie di telecontrollo

41

5. Verifica Cablaggi: Solitamente usano un cavo sistemato a serpentina tra punti

rappresentativi dei cavi che devono essere collegati. I sistemi di comunicazione

sincroni, come la telefonia, spesso usano "sync test" a questo scopo. Le verifiche

dei cavi sono economiche, e estremamente utili quando l'unità ha dei connettori.

6. Verifica Regolazione: Spesso un sistema dev'essere regolato quando viene

installato. Questa verifica fornisce indicazioni alla persona che installa il sistema.

7. Verifica Consumi: Misura le risorse che il sistema utilizza, e avvisa quando le

quantità sono basse. L'esempio più comune è la lancetta della benzina di un'auto.

Gli esempi più complessi possono essere i sistemi di analisi medica automatica che

gestiscono inventari di reagenti chimici.

8. Verifica Operativa: Misura varie cose che interessano all'utente lavorando sul

sistema. Notare che si effettua mentre il sistema è in funzione. Esempi sono gli

strumenti di navigazione aereonautici, il contachilometri di un'auto, le lucine di un

disk-drive.

9. Verifica di Sicurezza: Eseguita periodicamente secondo un 'intervallo di

sicurezza, assicura che il sistema sia ancora affidabile. La durata dell'intervallo è in

genere appena inferiore al tempo minimo entro cui un malfunzionamento può

causare danni.

4 Il micro web server embedded: RECS 101

42

4 Il micro web server embedded: RECS

101

4.1 Generalità

Abbiamo già descritto i sistemi embedded e le loro applicazioni in campo scientifico e

industriale; abbiamo visto come essi siano, per la loro struttura hardware e software, dei

sistemi molto affidabili nei processi di automazione e di controllo.

Passiamo adesso a descrivere le caratteristiche, la struttura ed il funzionamento di un

dispositivo per il telecontrollo remoto over IP impiegato all’interno dell’esperimento

GRAAL.

Un web server embedded è un web server, integrato all’interno di un sistema embedded

caratterizzato da risorse di calcolo limitate, ma capace di gestire documenti ed applicazioni

web. L’applicazione della tecnologia Web ad un sistema embedded permette la creazione

di interfacce utente mediante il linguaggio HTML. Aggiungendo a tale dispositivo la

tecnologia del linguaggio di programmazione JAVA si ottiene un sistema capace di gestire

vere e proprie applicazioni che possono essere facilmente programmate sfruttando le

potenzialità tipiche di un linguaggio ad alto livello. Viene presentato un sistema la cui

architettura fornisce un’interfaccia API (Application Program Interface) semplice e, al

tempo stesso, potente. In particolare si discute la progettazione e l’implementazione di

RECS 101 (Remote Ethernet Control System), un sistema web server embedded,

sviluppato al fine di poter gestire applicazioni di controllo remoto mediante l’utilizzo di

reti Ethernet.

4 Il micro web server embedded: RECS 101

43

4.1.1 Indipendenza dalla piattaforma hardware: la tecnologia JAVA

RECS 101 è stato progettato per lavorare sia con un’interfaccia HTML che mediante

l’utilizzo della tecnologia JAVA. Il concetto della Virtual Machine di JAVA è

particolarmente indicato per questo approccio permettendo l’uso di una strategia di

controllo indipendente dalla piattaforma hardware del sistema in cui viene gestita.

Diversamente dai comuni compilatori che producono codice per CPU specifiche, il Java

produce codice per una CPU virtuale. Al fine di rimanere indipendente da specifiche

piattaforme hardware il sistema runtime di Java fornisce un’interfaccia universale per

qualsiasi applicazione che si desidera sviluppare. Tale interfaccia denominata JVM (Java

Virtual Machine) è una sorta di processore virtuale che si interpone tra il processore fisico

del PC e l’applicazione scritta in Java. Tuttavia, l’indipendenza dalla piattaforma non è

sufficiente per assicurare il successo di un linguaggio di programmazione. La JVM è da

diverso tempo inclusa all’interno dei browser più popolari quali, ad esempio, Microsoft

Explorer e Netscape. Alcuni sistemi operativi real-time includono al loro interno la

tecnologia Java e tutto ciò permette di giungere alla seguente conclusione: la JVM è una

risorsa universale.

Questa metodologia è stata da tempo adoperata nelle applicazioni Internet dove non sono

richiesti stringenti vincoli di real-time. L’uso del linguaggio di programmazione Java per le

applicazioni di controllo remoto fornisce il vantaggio di integrare sistemi “general

purpose” con internet permettendo la supervisione ed il controllo di sistemi. Oggigiorno i

sistemi che si basano su web server embedded richiedono applicazioni sempre più

complesse, anche se facili da programmare, al fine di eseguire compiti di supervisione e

gestione. Con l’incessante sviluppo della microelettronica i sistemi embedded sono stati

applicati a molteplici prodotti industriali ed elettronici, poiché presentano le caratteristiche

di essere economici, affidabili e con buone performance se comparati con il software

utilizzato nei Personal Computers. Il vantaggio delle tecnologie Internet permette di

interconnettere tra loro dispositivi e sistemi all’interno della rete Internet. Tutto questo

facilita l’accesso ai dispositivi permettendo di effettuare operazioni di monitoraggio, di

4 Il micro web server embedded: RECS 101

44

controllo, di reporting e start up di qualsiasi dispositivo, semplicemente adoperando un

interfaccia GUI (Interfaccia Grafica Utente) gestita da un comune browser. Il nuovo

concetto introdotto nell’esperimento GRAAL si basa sull’esecuzione di Applet Java per

l’implementazione di operazioni di controllo o monitoraggio di dispositivi remoti. In

questo tipo di sistemi, il controllo distribuito si ottiene mediante il trasferimento di pagine

HTML e l’esecuzione di applet Java (figura 4.1).

Figura 4.1: Esecuzione di Applet Java per eseguire operazioni di controllo o di monitoraggio di dispositivi remoti

Questo nuovo concetto permette di espandere le comuni capacità dei sistemi di controllo

fornendo un sistema remoto distribuito per il controllo di apparecchiature elettroniche. La

progettazione di sistemi embedded richiede l’integrazione e lo sviluppo di componenti

hardware e software: spesso queste sono particolarmente difficili da realizzare poiché ogni

controller possiede la sua piattaforma hardware e software. Anziché adoperare linguaggi

differenti e non standard per l’implementazione del software nella maggior parte dei casi è

preferibile adoperare un linguaggio comune. Il Java rappresenta una scelta ottimale per

differenti motivi: è un linguaggio standard completo di librerie, è un linguaggio molto

semplice che riduce le problematiche inerenti l’analisi dei programmi, la loro

ottimizzazione e trasformazione.

Embedded

System

Pagine richieste

Testo/Applet

Browser

TCP/IP

4 Il micro web server embedded: RECS 101

45

4.2 Caratteristiche di RECS 101

Passiamo adesso a descrivere caratteristiche e funzionalità di questo dispositivo per il

controllo remoto over IP. La sottostante tabella 3.1 ne illustra le specifiche:

Specifica RECS 101

CPU Ubicom SX52BD (8 bit microprocessor, 50 MIPS)

Memoria 512 Kb flash memory (Utilizzata per contenere le pagine web

dell’utente)

Connessione di Rete Interfaccia Ethernet 10 Base-T (IEEE802-3)

Connessione Utente 16 Ingressi digitali / 16 Uscite digitali

Protocolli Internet Supportati HTTP / BOOTP / TCP / UDP / IP

ICMP / ARP

Ethernet 802.3

Software di Utilità Piattaforma Windows

Web page uploader e cambio indirizzo IP

Tab 4.1 Specifiche del dispositivo RECS 101.

RECS 101 integra al suo interno un network processor dotato di interfaccia di rete Ethernet

per connettersi direttamente a qualsiasi rete locale sia Internet sia Intranet. Ciò permette di

connettere dispositivi direttamente ad Internet attraverso una rete LAN e, di conseguenza,

di gestire da remoto il controllo totale dei dispositivi attraverso interfacce grafiche utente

personalizzabili, direttamente accessibili mediante i comuni browsers. RECS 101 si basa

sullo schema hardware presentato nella sottostante figura 4.2.

4 Il micro web server embedded: RECS 101

46

Figura 4.2: Schema funzionale di RECS 101

RECS 101 è stato programmato in modo tale da contenere una pagina web precaricata

all’interno della memoria flash del dispositivo che può essere modificata a piacimento in

modo da personalizzarne le applicazioni.

Figura 4.3: Home page personalizzabile del dispositivo RECS 101.

4 Il micro web server embedded: RECS 101

47

RECS 101 contiene un web server integrato capace di gestire fino a 512k di documenti ed

applicazioni web: tali risorse sono state precaricate all’interno della memoria flash del

dispositivo. La Fig. 4.3 è un esempio di una pagina web gestita da RECS 101 che può

essere utilizzata per fornire informazioni statiche sul dispositivo quali, ad esempio,

immagini, testi, files etc. La pagina visualizzata può essere personalizzata a piacimento

mediante l’uso dei più comuni editor di pagine HTML. Le pagine web possono contenere

al loro interno file di immagini del tipo JPG, GIF, BMP, file video tipo SWF di Flash e

qualsiasi altro file si ritenga opportuno che l’HTTP server di RECS 101 debba gestire.

Selezionando il link “RECS 101 Control Panel” si accederà alla pagina web dedicata al

controllo dell’applicazione. La caratteristica che rende unico tale sistema consiste

nell’utilizzare un web server all’interno di un’applicazione embedded con la possibilità di

eseguire del codice Java per la gestione dell’interfaccia relativa al controllo delle 16 porte

di input e delle 16 porte di output (Fig. 4.4). Tale caratteristica permette di poter gestire

l’interfaccia utente tramite un’Applet Java parametrica: in questo modo l’utente finale può

sviluppare la propria applicazione di controllo in modo molto veloce e sicuro senza dover

essere in grado di programmare in Java.

Figura 4.4: Esempio di una possibile interfaccia GUI implementata in RECS 101.

All’interno del pannello di controllo (Fig. 4.4) si può notare un LED aggiuntivo

denominato “Network”. La sua funzionalità è quella di fornire all’utente lo stato della rete:

una connessione senza problemi provoca il suo continuo lampeggiare. Nel caso di perdita

momentanea del collegamento il LED non lampeggerà e, se la connessione non si

4 Il micro web server embedded: RECS 101

48

ristabilisce entro qualche minuto il sistema chiuderà la connessione con RECS 101.

Problematiche di questo tipo normalmente non sorgono in reti Intranet ma possono capitare

se si collega RECS 101 alla rete Internet .

RECS 101 è un sistema progettato in modo tale da essere totalmente personalizzabile.

Al suo interno è possibile modificare ed aggiornare il firmware di sistema in modo tale da

poter sviluppare rapidamente delle applicazioni in maniera facile e sicura. In particolare è

stato sperimentato un software contenente alcuni files ed un’APPLET (RECS.jar) di

controllo che possono essere personalizzati mediante i parametri riportati di seguito:

PDFOOK : Stringa d’inizializzazione Applet. Non è possibile effettuare nessuna

modifica

host : Indirizzo IP associato a RECS 101(Es. host value="172.16.10.103" vuol

dire che l’indirizzo IP di RECS è 172.16.10.103

port : Porta TCP adoperata dall’ applicazione per comunicare con RECS 101. Il

valore di tale porta è fisso e pertanto non modificabile (Es. port value=6001)

polling : Intervallo di polling. Ha una risoluzione di 10 ms e può essere prefissato

in funzione dell’applicazione. Per es. “polling value=1” significa che il check

dello stato I/O del dispositivo sarà controllato ogni 10 ms .

NumLed : Numero ingressi da monitorare mediante LED bicolore (Es. NumLed

value=16, verranno visualizzati 16 LED indicatori di stato)

NumB : Numero di pulsanti di comando per la modifica dello stato delle uscite

(Es. NumB value=16, verranno visualizzati 16 pulsanti)

Per comodità del lettore la Tab. 4.1 riassume tutti i parametri gestiti dall’applet in

questione.

Tab. 4.1: Parametri di configurazione dell’Applet

4 Il micro web server embedded: RECS 101

49

Di seguito si riporta il frammento del codice HTML del file index.html relativo alla

personalizzazione dell’Applet in cui si evidenzia il setup dei parametri di inizializzazione.

L’esempio in questione prevede l’utilizzo di tutte le 16 uscite e di tutti i 16 ingressi messi a

disposizione dall’hardware di RECS 101.

<APPLET CODE=Applicazione.class ARCHIVE=RECS.jar WIDTH=850

HEIGHT=500>

<param name=PDFOOK value="Intellisystem Technologies Device">

<param name=host value="172.16.10.103">

<param name=port value=6001>

<param name=polling value=1>

<param name=NumLed value=16>

<param name=NumBot value=16>

</APPLET>

La Fig. 4.4 rappresenta l’interfaccia utente che si ottiene applicando il codice appena

esposto. Le limitazioni di quest’Applet consistono nel fatto che non è possibile modificare

i testi ed i colori dei vari componenti che formano l’interfaccia utente.

Per superare questa limitazione è stata messa a punto una Applet più elaborata che

permette di personalizzare ulteriormente l’interfaccia grafica utente mediante altri

parametri che permettono di definirne colori e testi (Fig. 4.5).

Figura 4.5: Interfaccia GUI avanzata implementata in RECS 101.

4 Il micro web server embedded: RECS 101

50

Di seguito si riassumono i parametri che permettono la personalizzazione dell’Applet in

questione (RECS.jar versione avanzata):

PDFOOK : Stringa d’inizializzazione Applet. Non è possibile effettuare nessuna

modifica;

host : Indirizzo IP associato a RECS 101(Es. host value="172.16.10.103". Vuol dire

che l’indirizzo IP di RECS è 172.16.10.103;

port : Porta TCP adoperata dall’ applicazione per comunicare con RECS 101. Il

valore di tale porta è fisso e pertanto non modificabile (Es. port value=6001) ;

polling :Intervallo di Polling. Ha una risoluzione di 10 ms e può essere settato in

funzione dell’applicazione. Per es. “polling value=1” significa che il controllo dello

stato d’ I/O del dispositivo verrà controllato ogni 10 ms;

Title : Stringa intestazione applicazione. (Es. Title value="RECS I/O DEMO ") ;

ColTit : Colore da associare alla stringa impostata nel parametro “Titolo”. (Es.

ColTit value="green" , il testo verrà stampato in verde) ;

CAPL : Colore di sfondo Applet. (ES. CAPL value="yellow", lo sfondo sarà giallo)

;

NumLed : Numero ingressi da monitorare mediante LED bicolore (Es. NumLed

value=16, verranno visualizzati 16 LED indicatori di stato) ;

NumB : Numero di pulsanti di comando per la modifica dello stato delle uscite (Es.

NumB value=16, verranno visualizzati 16 pulsanti) ;

TBT* : Testo da associare al pulsante * relativo all’uscita * (Es. TBT1

value="Comando 10" è il testo da associare al pulsante 10 per modificare lo stato

dell’ uscita 10) ;

CTBT* : Colore del testo associato al titolo del pulsante *. (Es. CTBT10

value="red", il colore associato al testo relativo al pulsante 10 è rosso) ;

CLBF* : Colore associato al LED di stato dell’ uscita * quando quest’ultima è nello

stato “OFF” (Es. CLBF10 value="gray", il colore del LED associato allo stato

“OFF” dell’ uscita 10 sarà grigio) ;

CLBT* : Colore associato al LED di stato dell’ uscita * quando quest’ultima è nello

stato “ON” (Es. CLBT10 value="blue", il colore del LED associato allo stato “ON”

dell’ uscita n.10 sarà blu) ;

4 Il micro web server embedded: RECS 101

51

TLD*: Testo da associare al LED * relativo all’ ingresso *. (Es. TLD1 value="Luce

Camera" è il testo da associare al LED 1 per effettuare la lettura dello stato dell’

ingresso 1) ;

CTLD* : Colore del testo associato al titolo del LED * relativo all’ingresso *. (Es.

CTLD1 value="black", il colore associato al testo relativo al LED 1 sarà nero) ;

CLIF* : Colore associato al LED di stato dell’ ingresso * quando quest’ultimo è

nello stato “OFF” (Es. CLIF10 value="green", il colore del LED associato allo stato

“OFF” dell’ ingresso 10 sarà verde) ;

CLIT* : Colore associato al LED di stato dell’ ingresso * quando quest’ultimo è

nello stato “ON” (Es. CLIT10 value="red", il colore del LED associato allo stato

“ON” dell’ ingresso 10 sarà rosso) ;

Per comodità del lettore la tab. 4.2 riassume in forma tabulare i parametri personalizzabili

dell’Applet per la gestione avanzata di RECS 101.

Tab. 4.2: Parametri di configurazione dell’Applet per la gestione avanzata di RECS 101

Di seguito si riporta il frammento del codice HTML del file index.html relativo alla

personalizzazione dell’Applet in cui si evidenzia il setup dei parametri di inizializzazione.

4 Il micro web server embedded: RECS 101

52

<APPLET CODE=Applicazione.class ARCHIVE=RECS.jar WIDTH=850

HEIGHT=500>

<param name=PDFOOK value="Intellisystem Technologies Device">

<param name=host value="172.16.10.103">

<param name=port value=6001>

<param name=polling value=1>

<param name=Title value="RECS 101 I/O Demo">

<param name=ColTit value="black">

<param name=CAPL value="white">

<param name=NumLed value=16>

<param name=NumBot value=16>

Un esempio di personalizzazione dei pulsanti e degli indicatori LED è rappresentato dal

seguente codice contenuto all’interno del file index.html:

<param name=TBT1 value="Comando 1">

<param name=CTBT1 value="red">

<param name=CLBF1 value="gray">

<param name=CLBT1 value="blue">

<param name=TLD1 value="Ingresso 1">

<param name=CTLD1 value="black">

<param name=CLIF1 value="green">

<param name=CLIT1 value="red">

La Fig. 4.6 riassume quanto detto in precedenza, ovvero:

1. La pagina 101.html rappresenta la home page del sito web contenuto in RECS 101.

Al suo interno è presente un collegamento alla pagina Index.html;

2. La pagina Index.html contiene al suo interno i parametri di setup dell’Applet per la

gestione degli ingressi e delle uscite di RECS 101;

3. Tramite l’applet RECS.jar si interviene sulle porte d’input e di output per la gestione

dell’hardware che si intende controllare.

4 Il micro web server embedded: RECS 101

53

Figura 4.6: Files necessari per la personalizzazione dell'interfaccia utente di RECS 101

Implementazione delle interfacce HW per le porte di I/O

RECS 101 si interfaccia con l’impianto o dispositivo da controllare mediante due porte a

16 bit digitali, rispettivamente, una di Input ed un’altra di Output poste sul frontalino

posteriore. La fig. 4.7 riporta la piedinatura dei connettori Cannon a 25 poli che ospitano

tali porte. Il progettista che intende interfacciare RECS 101 deve predisporre delle

interfacce che permettano il corretto rispetto delle caratteristiche elettroniche della logica

TTL implementata nelle due porte. Di seguito distingueremo due tipi di interfacce

rispettivamente una per la porta di Input ed un’altra per la porta di Output.

Internet

Applet

Hardware da

controllare

101.htm

l

Index.html

ml

4 Il micro web server embedded: RECS 101

54

Digital Input

Digital Output

LED Pin Note Tasto Pin Note

1 2 1 2

2 15 2 15

3 3 3 3

4 16 4 16

5 4 5 4

6 17 6 17

7 5 7 5

8 18 8 18

9 6 9 6

10 19 10 19

11 7 11 7

12 20 12 20

13 8 13 8

14 21 14 21

15 9 15 9

16 22 16 22

1 Vcc +5v 1 Vcc +5v

14 Vcc +5v 14 Vcc +5v

10 GND 10 GND

23 GND 23 GND

12, 13, 24, 25 Non usati 12, 13, 24, 25 Non usati

Figura 4.7: Piedinatura dei connettori di I/O di RECS 101

4 Il micro web server embedded: RECS 101

55

Unità d’Input

Poiché l’interfaccia di I/O di RECS 101 lavora con livelli logici TTL il dispositivo da

interfacciare alla porta d’ingresso deve presentare anch’esso un interfaccia di tipo TTL. I

16 bit d’ingresso per l’applicazione fornita sono stati progettati per funzionare in logica

TTL “Low Active”. Non sempre però i dispositivi hanno delle porte TTL e perciò, in

questo caso, è opportuno adoperare un circuito che interponendosi tra RECS 101 e il

dispositivo da interfacciare possa connettere i due dispositivi senza che essi corrano il

rischio di danneggiarsi. Il circuito suggerito utilizza dei fotoaccopiatori che, garantendo un

totale isolamento galvanico tra i due dispositivi, ne assicurano il corretto funzionamento.

La Fig. 4.8 mostra una possibile realizzazione del circuito proposto.

Figura 4.8: Interfaccia per la connessione di un dispositivo alla porta d’ingresso di RECS 101

Unità d’Output

RECS 101 è dotato 16 uscite che lavorano con livelli logici TTL progettati per funzionare

in logica “High Active”. Affinché RECS 101 possa essere correttamente interfacciato con

un altro dispositivo che lavora con tensioni diverse si consiglia l’uso di fotoaccoppiatori

che garantendo un totale isolamento galvanico tra i due dispositivi, ne assicurano il corretto

4 Il micro web server embedded: RECS 101

56

funzionamento. La Fig. 4.9 mostra lo schema elettrico di un circuito d’esempio per la

realizzazione di un’interfaccia d’uscita da collegare a RECS 101. Tale circuito si presta

benissimo per tutte quelle applicazioni nelle quali è necessario effettuare un controllo di

tipo ON/OFF di carichi di qualunque tipo. Poiché il circuito contiene dei relais assieme

agli optoisolatori si ottiene un circuito doppiamente isolato sia galvanicamente (per mezzo

dei relais) che otticamente (mediante l’uso di fotoaccoppiatori). Questa proprietà è da non

sottovalutare per prevenire possibili rischi di danneggiamento di RECS 101 o peggio

ancora di tutti i sistemi presenti nella rete a cui è connesso RECS 101: in questo modo si è

sicuri che per qualsiasi operazione errata compiuta a valle dell’interfaccia, il danno è

comunque confinato al danneggiamento dell’interfaccia stessa.

Figura 4.9: Interfaccia per la connessione di un dispositivo mediante relay alla porta d’uscita di RECS 101

4.3 Connessione a RECS 101

Nel capitolo precedente abbiamo introdotto alcune tecnologie di rete. In questo paragrafo

vedremo come connettersi a RECS 101 utilizzando il protocollo IP. Per identificare un

host nella rete ed accedervi, si utilizza il suo indirizzo IP. Se, ad esempio, in una sala di

controllo si vuole accedere a RECS 101 (ubicato per es. in una sala sperimentale), basta

4 Il micro web server embedded: RECS 101

57

interconnettere RECS 101 ed un Personal Computer ad uno Switch di rete Ethernet. Se si

vuole accedere da una postazione remota ( da qualunque parte del mondo) ci si connetterà

a RECS 101 tramite Internet; un router farà da tramite tra la rete Ethernet locale e Internet

(figura 4.10).

Riepilogando, RECS 101 rappresenta un ottimo sistema di telecontrollo remoto over IP

in quanto unisce in sé semplicità di utilizzo, e un’ottima dinamicità (ricordiamo la

possibilità di modificare il firmware senza dover riprogrammare a basso livello). Questo

dispositivo, è stato impiegato per il controllo e il setup di una serie di strumenti (per

esempio la loro inizializzazione in sequenza) all’interno dell’esperimento GRAAL a

Grenoble.

Figura 4.10: Possibile scenario per il controllo di RECS 101

5 Sistemi di video controllo analogici

58

5 Sistemi di video controllo analogici

5.1 Implementazione di un sistema di video controllo analogico

Una classica implementazione di un sistema di video controllo è mostrata in figura 5.1.

Esso è costituito da quattro telecamere, un multiplexer (uno strumento che miscela i

quattro segnali, provenienti dalle telecamere, in un unico segnale video), un VCR

(VideoCassetteRecorder) per la registrazione delle immagini ed un monitor per

visualizzare il video complessivo. Un cavo coassiale mette in comunicazione le parti del

sistema.

Le quattro telecamere catturano le immagini e dopo averle convertite in un segnale

elettrico, le trasmettono attraverso il cavo coassiale al multiplexer. Questo strumento ha il

compito di “unire” i quattro segnali in uno solo, che verrà inviato al monitor e al VCR.

Figura 5.1: implementazione di un sistema di video controllo

5 Sistemi di video controllo analogici

59

Questo, in maniera molto schematica, è il principio di funzionamento di un sistema di

video controllo interamente analogico.

Naturalmente questa soluzione non è unica: si possono utilizzare, ad esempio, più

telecamere, e un multiplexer con più entrate per i segnali; il principio di funzionamento è

lo stesso ma, come si vedrà nei prossimi paragrafi, la risoluzione non può che peggiorare.

Passiamo, adesso, a descrivere più nei dettagli il principio di funzionamento del sistema

di figura 5.1 ponendo particolare attenzione alle telecamere e alla visualizzazione delle

immagini sul monitor.

5.2 Le telecamere

La telecamera, in un sistema di video controllo, ha il compito di catturare le immagini

dall’esterno e trasmetterle, attraverso la sua uscita coassiale, ad un monitor o multiplexer

che sia. In figura 5.2 è mostrata la parte di una telecamera che si occupa della generazione

dell’immagine: l’obiettivo cattura l’immagine esterna e la focalizza su un sensore posto

all’interno della telecamera. Il sensore ha il compito di trasformare l’immagine proveniente

dall’obiettivo in un segnale elettrico che contenga tutte le informazioni (luce, colore,

posizione degli oggetti). Il segnale viene poi elaborato per poter essere trasmesso.

Il sensore ha dunque un ruolo molto importante perché da esso dipende la qualità

dell’immagine e vale la pena soffermarsi un po’ a descriverne il funzionamento.

5 Sistemi di video controllo analogici

60

Figura5.2: obiettivo e sensore di una telecamera

5.2.1 Il sensore

Esistono due possibili tecnologie per i sensori delle telecamere:

CCD (Charged Coupled Device)

CMOS (Complementary Metal Oxide Semiconductor)

Il sensore CCD (figura 5.3) è un’ invenzione relativamente recente (Boyle e Smith 1970)

che ha rivoluzionato il mondo delle telecamere trasformandole da ingombranti e costosi

apparati a sempre più compatti ed economici prodotti di consumo.

Figura 5..3: Sensore CCD

5 Sistemi di video controllo analogici

61

Il CCD può essere del tipo “bianco e nero” oppure “a colori”. Esso è composto da milioni

di elementi fotosensibili (pixel) che vengono esposti alla luce simultaneamente. Ogni pixel

reagisce alla luce che lo investe immagazzinando una certa carica elettrica, tale carica

viene letta da un circuito di processo del segnale a intervalli di breve durata, stabilita

dall’AES (Automatic Electronic Shutter o Otturatore Elettronico Automatico).

Quest’ultimo è un vero e proprio “temporizzatore”, che determina il tempo di esposizione,

ovvero il tempo durante il quale luce e colori dovranno arrivare al sensore prima che la

carica di ogni pixel venga letta. In situazioni molto luminose questo tempo sarà

estremamente breve, altrimenti l’immagine sarà sovraesposta, mentre in situazioni di

penombra questo tempo sarà più lungo per evitare la sottoesposizione.

Nel caso di un CCD in bianco e nero, il circuito trasforma la quantità di carica

immagazzinata, nel corrispondente valore della scala di grigi; facendo questo lavoro su

ogni pixel, l’immagine viene ricostruita perfettamente.

In un CCD a colori non ci si può limitare a captare la luminosità di ogni singolo punto

ma bisogna andare a valutare le componenti cromatiche di questi punti.

Le videocamere professionali hanno 3 sensori CCD per captare le componenti cromatiche

in 3 sedi separate (figura 5.4), in ognuna di esse arriva solo la componente cromatica

voluta, tramite uno splitting effettuato da un prisma.

Figura 5.4: Separazione della luce in tre componenti

5 Sistemi di video controllo analogici

62

Questa soluzione permette un’elevata qualità di ripresa, ma i costi sono elevatissimi per cui

nelle telecamere a circuito chiuso si adotta una tecnica secondaria che permette di ottenere

una qualità di ripresa comunque buona, abbassando notevolmente i costi.

Nelle videocamere a circuito chiuso c’è un solo sensore, i raggi luminosi che arrivano

dalla lente, prima di raggiungere il sensore attraversano una griglia filtrante con righe del

tipo rosso-verde che si alternano a quelle del tipo verde-blu (figura 5.5). Ad ogni filtro

(quadratino della griglia) corrisponde un pixel.

Figura 5.5: Griglia filtrante

Con questo sistema, le aree verdi occupano il 50% della superficie del filtro, mentre l’altro

50% è diviso in parti uguali fra le aree rosse e quelle blu, questo perché l’occhio umano è

più sensibile alle variazioni della componente cromatica verde piuttosto che alle altre due.

Quello che in un sensore in bianco e nero era un pixel diventa, in un CCD a colori, un’area

di rilevazione, detta quadrante (un quadrante è formato da 4 filtri rosso-verde, verde-blu),

dove il colore finale è determinato dalla combinazione delle 3 componenti.

Nei sensori in bianco e nero, la gradazione di grigio viene determinata per ogni singolo

pixel tramite una conversione, in un sensore a colori il calcolo si fa una volta per 4 pixel,

per cui il risultato medio è sicuramente meno preciso di un sensore in bianco e nero.

Questo spiega perché le immagini in bianco e nero sono molto più nitide di quelle a colori.

Un’altra caratteristica dei CCD è la dimensione. Essa si misura in pollici lungo la

diagonale del sensore stesso e la parte sensibile (la regione effettivamente colpita dalla

luce proveniente dall’obiettivo) ha una forma rettangolare con un rapporto di 4 sulla

5 Sistemi di video controllo analogici

63

larghezza e 3 sull’altezza (norma video). Ne esistono di varie dimensioni ma nei sistemi di

video controllo se ne utilizzano 5:

CCD 1" 2/3" 1/2" 1/3" 1/4"

Altezza [mm] 9,6 6,6 4,8 3,6 2,7

Larghezza [mm] 12,8 8,8 6,4 4,8 3,6

I CCD da 1” , 2/3” e 1/2” ormai sono utilizzati poco. Nei sistemi moderni il mercato si

divide tra CCD da 1/3” e da 1/4” . La necessità di miniaturizzazione di lenti e circuiti

elettronici, nonchè la continua ricerca di abbattimento dei costi, ha portato l'industria a

sviluppare gradualmente CCD sempre più piccoli fino agli “ultimi nati” da ¼”. I CCD di

ultima generazione presentano un maggiore numero di pixel, a cui corrisponde una

maggiore risoluzione ed inoltre è stato introdotto l’utilizzo di microlenti che amplificano

la luce incidente su ogni singolo pixel.

La seconda categoria di sensori è quella a tecnologia CMOS.

Figura 5.4: Sensore CMOS

I sensori CMOS sono più economici dei CCD in quanto la loro fabbricazione è basata su

una tecnologia standard già ampiamente utilizzata per la costruzione di circuiti integrati,

memorie per computer e tutti i dispositivi a tecnologia MOS. Invece i sensori CCD sono

prodotti usando una tecnologia sviluppata appositamente per l’industria della telecamera.

5 Sistemi di video controllo analogici

64

Tuttavia i sensori CMOS hanno un assorbimento minore di energia e questo permette di

realizzare batterie (per l’alimentazione della telecamera) di peso e dimensioni minori. In

condizioni di scarsa luminosità, però, i CCD operano meglio dei CMOS e questo, in un

mercato orientato sempre più alla ricerca della qualità, è un fattore molto determinante. In

conclusione i CCD, anche se più costosi, restano in assoluto i sensori più utilizzati.

5.2.2 Sensibilità e altre caratteristiche delle telecamere

Passiamo a descrivere altre caratteristiche delle telecamere come la sensibilità e la

risoluzione.

La sensibilità è il più basso livello di luce in corrispondenza del quale la telecamera

produce un reale segnale video di 1V picco-picco. Può essere misurata in due modi:

A livello del sensore: si effettua la misura supponendo che tutta la luce cada

direttamente sulla superficie del sensore. In effetti una frazione di energia

luminosa si perde nell’attraversare l’obiettivo.

Con l’obiettivo: in questo caso si tiene conto anche della percentuale di luce

persa attraverso l’obiettivo. È un sistema più reale per misurare la sensibilità.

Il valore di sensibilità è normalmente specificato in lux. Ci sono dei parametri che possono

modificare la sensibilità di una telecamera quali l’apertura dell’obiettivo, e l’AGC

(Controllo Automatico del Guadagno). È noto, infatti, che un’apertura di diaframma F=1,2

permette un passaggio di luce maggiore rispetto ad un diaframma F=1,4 e minore rispetto

ad un diaframma F=0,8, con conseguenti valori diversi di sensibilità. Riguardo l’AGC, in

pratica, esso amplifica il segnale video in condizioni di scarsa luminosità. Il livello di

amplificazione si traduce in un apparente aumento si sensibilità.

Altre caratteristiche come la risoluzione e la sincronizzazione delle telecamere,

necessitano dell’introduzione di altri concetti. Ne parleremo nel prossimo paragrafo dopo

aver descritto il segnale video composito, l’interlacciamento, la scansione interlacciata

e quella progressiva, i vari standard PAL, SECAM, NTSC.

5 Sistemi di video controllo analogici

65

5.3 Il segnale video composito

Come abbiamo visto il CCD genera un segnale video, ma questo segnale, è

effettivamente quello che poi viene posto sulla porta di uscita coassiale della telecamera?

Certo che no. In realtà il CCD mentre trasforma l’energia luminosa in energia elettrica, lo

fa contemporaneamente “per tutti i suoi pixel”. A noi, invece, serve un segnale che possa

viaggiare su di un unico cavo coassiale e contenere tutta l’informazione del filmato

catturato dal CCD.

In realtà, all’interno della telecamera, si trova un circuito elettronico di processo che ha il

compito di creare questo tipo di segnale video, per poterlo trasmettere su un cavo coassiale

per metri e metri di distanza. Il circuito di processo “esegue” una scansione del CCD, riga

per riga, dividendo l’immagine in un certo numero standardizzato di righe orizzontali.

Ogni riga orizzontale è, in realtà una piccola immagine la cui risoluzione dipende,

ovviamente, dal numero di pixel del CCD che compongono la riga: in altre parole

maggiore è il numero di pixel del sensore, più chiara e definita sarà la riga dell’immagine.

Ora, mentre il numero di righe orizzontali è fissato dagli standard (di cui ora parleremo), il

numero di righe verticali distinguibili dipende dal numero di pixel del CCD: maggiore è il

numero di pixel maggiore sarà il numero di righe verticali. Questo numero determina la

risoluzione di una telecamera (il numero di righe verticali viene anche definito risoluzione

orizzontale).

L’immagine, così, dopo essere stata divisa in tante righe orizzontali viene trasmessa, una

riga alla volta, con una cadenza regolata standardizzata.

Prima di definire il segnale video composito dobbiamo introdurre altri concetti come

l’interlacciamento e gli standard televisivi, e il problema della sincronizzazione.

5 Sistemi di video controllo analogici

66

5.3.1 L’interlacciamento e gli standard video

Nella televisione a circuito chiuso (TVCC) sono stati implementati degli standards per la

trasmissione e la ricezione del segnale video. Tali standards sono inoltre utilizzati anche

nella trasmissione e ricezione televisiva.

Definiamo fotogramma (frame) una fotografia dell’immagine catturata in un certo

istante. Se immaginiamo l’intero filmato come un treno di fotogrammi in rapida

successione, possiamo facilmente intuire che maggiore è il numero di fotogrammi

trasmessi in un secondo, e più scorrevole e realistico sarà il filmato. Ogni fotogramma,

ricordiamo, è composto da tante righe orizzontali pertanto, quando trasmetto un frame,

trasmetto in maniera sequenziale le tante righe orizzontali che lo compongono.

La tecnica dell’interlacciamento consiste nel separare le righe pari da quelle dispari, e

trasmettere, prima la sequenza delle righe pari, e successivamente la sequenza delle righe

dispari o viceversa. L’insieme delle righe pari o di quelle dispari si chiama campo (field).

Così per trasmettere un fotogramma occorrono 2 campi. Questo tipo di interlacciamento si

chiama interlaccio 2:1. Tra la trasmissione del primo e del secondo campo di un

fotogramma, l’occhio umano non “si accorge” di questa transizione (dalle righe pari a

quelle dispari) purchè l’immagine non cambi apprezzabilmente da un campo all’altro

infatti l’interlaccio 2:1 sebbene sia stato sviluppato per trasferire meno dati senza

significative perdite della qualità, presenta degli inconvenienti: se la telecamera “riprende”

un oggetto in rapido movimento, tra il campo delle linee pari e quello delle linee dispari si

crea una distorsione con conseguente peggioramento della qualità. Gli effetti negativi

dell’interlacciamento possono essere attenuati con delle tecniche di de-interlaccio. È

chiaro, però, che la soluzione migliore è quella di non interlacciare e trasmettere le linee

orizzontali che compongono il fotogramma in un unico campo (es. 25frames/sec con 625

lines/frame). Con l’avvento degli schermi LCD (Liquid Crystal Display), dei DVD (Digital

Versatile Disk) e delle telecamere digitali, l’interlacciamento non è più in uso e sui pixel

dei CCD (nel caso delle telecamere) viene eseguita una scansione progressiva (il

fotogramma viene trasmesso riga per riga senza la separazione delle linee orizzontali) al

posto di una scansione interlacciata.

5 Sistemi di video controllo analogici

67

A questo punto possiamo definire i tre formati PAL NTSC e SECAM.

Il formato PAL(Phase Alteration Line) è quello utilizzato in Europa e prevede la

separazione del fotogramma in 625 righe orizzontali (linee) e la trasmissione di 25

fotogrammi al secondo (fps) e quindi un numero di campi doppio (50 campi al secondo).

Questo numero non è casuale, ma è legato alla frequenza della tensione di rete che in

Europa è di 50Hz. Le telecamere, infatti, sfruttano le oscillazioni della tensione di

alimentazione per creare la trasmissione dei 50 campi al secondo (25 fps).

Il formato NTSC(National Television Systems Committee) è invece utilizzato in

America e prevede 525 linee con 30 fps (pari a 60 campi al secondo). Anche in questo caso

si sfrutta la frequenza della tensione di rete che in America è di 60Hz.

Infine il formato SECAM (Systeme Electronique Couleur Avec Memoire) è utilizzato in

Francia ed in numerosi paesi dell'Est Europeo. Ha gli stessi parametri di fotogrammi al

secondo e risoluzione del sistema PAL anche se differisce sia dal PAL che dal NTSC nella

gestione del colore. In passato la risoluzione SECAM era di 819 linee, oggi è la stessa del

PAL.

Riassumendo:

Formato video Fotogrammi al secondo Risoluzione verticale dei

fotogrammi

PAL (Europa)

25 fotogrammi/sec.

(50 campi/sec.) 625 linee

NTSC

(USA, Giappone)

30 fotogrammi/sec.

(60 campi/sec.) 525 linee

SECAM

(Francia, Grecia, Europa Est)

25 fotogrammi/sec.

(50 campi/sec.) 625 linee

Nei sistemi di video controllo, come quello di figura 1, è necessario che telecamere,

monitor, etc, utilizzino lo stesso formato: se usassimo una telecamera NTSC e un monitor

PAL probabilmente vedremmo una immagine in bianco e nero o addirittura nulla.

5 Sistemi di video controllo analogici

68

5.3.2 La sincronizzazione

Come abbiamo visto nel paragrafo precedente, un filmato viene prima scomposto in

fotogrammi, ogni singolo fotogramma in linee orizzontali e, a seconda che si usi o no

l’interlacciamento, le singole linee vengono trasmesse in maniera sequenziale rispettando

le cadenze regolate dagli standard televisivi. Mettendo insieme tutte le linee TV il monitor

ricostruisce il fotogramma che è il mattone fondamentale di qualsiasi filmato.

Una volta trasmesso il segnale, in che modo un monitor riesce a visualizzarlo

correttamente? Come fa il monitor a distinguere la prima linea dalla seconda o un

fotogramma dal successivo? È chiaro che monitor e telecamera devono essere

sincronizzati: quando viene trasmessa una linea, il monitor deve “sapere” quando inizia e

quando finisce; deve sapere anche quando inizia e finisce un fotogramma. Senza queste

informazioni non si potrebbe ricostruire l’immagine.

Allora, a tale scopo, nel segnale in uscita vengono inserite delle informazioni aggiuntive

tali che, una volta ricevute dal monitor, lo mettono in grado di distinguere una riga dalla

successiva e un fotogramma (o un campo nel caso di video interlacciato) dal suo

successivo. Queste informazioni aggiuntive si chiamano blanking intervals (periodi si

silenzio) e sono segnali di sincronismo.

I blanking intervals sono di due tipi:

Blanking intervals verticali. Essi determinano l’inizio e la fine di un

fotogramma o di un campo nel caso di video interlacciato.

Blanking intervals orizzontali. Essi determinano l’inizio e la fine di una

linea.

Un blanking interval verticale viene posto prima e dopo ogni fotogramma (figura 5.5).

5 Sistemi di video controllo analogici

69

Figura 5.5: Blanking interval verticale

Nell’esempio di figura 5.5 si sta considerando un segnale video non interfacciato. Il

blanking interval è composto da un segnale iniziale (front porch) e uno finale (back porch)

che racchiudono fra loro il vero e proprio segnale di sincronizzazione. Il blanking interval

verticale “dice” al monitor che dopo essere stato trasmesso il fotogramma 0, deve

prepararsi a tradurre in una sola schermata le 625 linee del nuovo fotogramma 1 che

verranno trasmesse da lì in avanti.

Un blanking interval orizzontale viene posto prima e dopo ogni linea orizzontale

(figura 5.6).

Figura 5.6: Blanking interval orizzontale

Esso è composto dal segnale di chiusura della linea precedente (Back Porch) e dal segnale

di inizio della linea TV successiva (Front Porch); in mezzo è racchiuso il segnale di

sincronizzazione orizzontale. Il blanking interval orizzontale "dice" al monitor che è

terminata una linea TV e che ne sta per arrivare un'altra. Ricevuto il "front porch" il

5 Sistemi di video controllo analogici

70

monitor inizia a visualizzare il contenuto della linea sul monitor da sinistra a destra.

Ricevuto il "back porch" il monitor termina la linea e ricomincia da sinistra con un’altra.

Se vengono inviati 50 campi/sec con 312,5 linee/campo (sistema PAL interlacciato),

significa che il segnale video deve contenere 50 blanking intervals verticali ogni secondo.

Il numero di blanking intervals verticali che transitano lungo il cavo ogni secondo si

definisce frequenza di sincronizzazione verticale. Ogni campo contiene poi 312,5 linee

orizzontali (stiamo considerando sempre il sistema PAL interlacciato) quindi, in un

secondo, transiteranno 50 campi da 312,5 linee ciascuno per un totale di 312,5x50=15625

linee. Questo significa che il segnale deve contenere 15625 blanking intervals orizzontali

in ogni secondo. Si definisce quindi frequenza di sincronizzazione orizzontale il numero

di blanking intervals orizzontali ogni secondo.

La frequenza di sincronizzazione che, come abbiamo visto, può essere verticale o

orizzontale, fa parte delle caratteristiche di ogni standard televisivo e se ne deve tenere

conto quando si progetta un sistema di video controllo. Nel sistema PAL abbiamo:

Frequenza verticale: 50Hz

Frequenza orizzontale: 15625Hz

Per concludere questo argomento sulla sincronizzazione analizziamo un’ultima

problematica legata alle telecamere e alla trasmissione simultanea di più filmati. Ogni

telecamera possiede un suo generatore di sincronismi il quale manda in uscita, all’interno

del segnale video, i segnali di sincronismo (blanking intervals) di cui si è parlato. Se più

telecamere trasmettono i loro segnali video da inviare, per esempio, al multiplexer (figura

1) è importante che i rispettivi segnali di sincronismo siano allineati, cioè l’inizio di un

fotogramma, per esempio, deve coincidere in tutte le telecamere. Sebbene i dispositivi di

controllo video di nuova generazione sono in grado di auto-sincronizzare segnali non

allineati, quando ciò non sia possibile è necessario ricorrere a dei sistemi di

sincronizzazione alternativi. Per esempio se tutte le telecamere sono alimentate con

tensione alternata, l’allineamento avviene in maniera automatica in quanto i loro generatori

di sincronismo interni sfruttano la frequenza di rete per allinearsi. Essendo la fonte di

alimentazione comune a tutte le telecamere, l’allineamento è garantito purchè tutte le

alimentazioni non vengano prelevate da fasi diverse. In tal caso le telecamere dovrebbero

5 Sistemi di video controllo analogici

71

essere munite di un trimmer per la regolazione di fase. Questo sistema di sincronizzazione

si chiama line-look e ne sono munite quasi tutte le telecamere alimentate in alternata.

Qualora si usino telecamere alimentate in continua questo sistema non può funzionare. In

tal caso si manda alla telecamera, tramite un ulteriore cavo coassiale un segnale di

sincronismo esterno, di solito generato da un apposito generatore di sincronismo. Le

telecamere predisposte per questo tipo di sincronizzazione dispongono di un ulteriore

ingresso BNC (denominato GEN-LOCK) posteriore a cui collegare il coassiale che porta il

sincronismo. In piccoli impianti, dove si voglia evitare di installare un generatore di

sincronismo, è anche possibile collegare l'ingresso GEN-LOCK di una telecamera con

l'uscita video di un'altra telecamera. La seconda telecamera si allineerà alla componente di

sincronismo della prima. Questo sistema di allineamento si chiama sincronizzazione

esterna GEN-LOOK.

5.3.3 Il segnale video composito

A questo punto possiamo dare una definizione completa di segnale video composito.

Abbiamo già visto che il segnale video trasmesso da una fonte (per esempio una

telecamera) contiene varie informazioni, tra cui i segnali di sincronismo.

Il video composito o Composite Video Blanking and Sync (CVBS) è un tipo di segnale

analogico (figura 5.10) di ampiezza 1Vpp che permette di inviare tutte le componenti del

segnale (luminosità, colore, audio e sincronismi) su un unico conduttore. In realtà esistono

anche altre tecniche di trasmissione del video come l'RGB utilizzato dai monitor per PC o

l'S-Video, che divide il segnale di luminosità dal colore, ma non hanno attinenza con il

mondo della TVCC e non verranno trattati.

5 Sistemi di video controllo analogici

72

Figura 5.7: Esempio di segnale video composito visto all’oscilloscopio

I vari tipi di informazione necessari a definire il filmato sono distinti dalla loro banda di

frequenza, per questo il video composito contiene un ampio spettro di frequenze da 50Hz a

6 MHz. È trasmesso attraverso cavi coassiali tipo RG59 o equivalenti, aventi impedenza

caratteristica di 75Ω.

5.5 Il trasporto del segnale video composito

Un altro aspetto molto importante da analizzare in un sistema di video controllo analogico

è legato alla trasmissione del segnale lungo una linea. Nei paragrafi precedenti abbiamo

definito il segnale video composito, abbiamo visto che esso contiene tutte le informazioni

necessarie a definire il filmato e che pertanto contiene un ampio spettro di frequenze.

Per via di questo ampio spettro sorgono dei problemi legati alla qualità dell’immagine

durante il processo di trasmissione dovuti al comportamento da filtro passa basso della

linea.

Il problema è legato alla geometria stessa del cavo: nella figura 5.8 è mostrato il circuito

equivalente di un tratto infinitesimo dx di cavo. Il ramo superiore rappresenta il conduttore

interno, mentre quello inferiore la calza di schermatura. Anche se il cavo è di ottima

5 Sistemi di video controllo analogici

73

qualità, per cui possiamo trascurare le resistenze serie-parallelo, rimangono la capacità

per unità di lunghezza posta in parallelo e l’ induttanza per unità di lunghezza posta in

serie.

Figura 5.8: Circuito equivalente di un tratto infinitesimo di un cavo coassiale

Condensatori e induttori, a differenza dei resistori, non sono dispositivi lineari e inoltre la

relazione corrente-tensione (v-i) dipende dalla frequenza:

Riv dt

diLv

dt

dvCi

RZ 0 LZ 0

C

Z

10

Resistore Induttore Condensatore

Tabella 1: relazione v-i dei tre dispositivi e relative impedenze

5 Sistemi di video controllo analogici

74

Le frequenze più alte sono quelle che subiscono maggiormente l'effetto del trasporto che il

cavo coassiale taglierà in modo proporzionale alla sua lunghezza. Ma vediamo meglio i

dettagli con una simulazione.

5.4.1 Simulazione col codice di simulazione SPICE del cavo RG59

Il cavo coassiale RG59 è tra i più utilizzati per il trasporto del video composito. Per

osservare più da vicino in che modo la lunghezza della linea di trasmissione influisce

negativamente sul segnale eseguiamo una simulazione con il programma di calcolo SPICE

(Simulation Program with Integrated Circuit Emphasis).

Essendo la lunghezza del cavo la maggiore causa di problemi legati alla trasmissione,

facciamo delle simulazioni per diverse lunghezze della linea. La simulazione è del tipo

analisi in frequenza. Il generatore è di 1 volt picco-picco.

Riportiamo il grafico della prima simulazione con una lunghezza della linea di soli 2

metri:

Figura 5.9: Risposta in frequenza con cavo RG59 lungo 2 metri

5 Sistemi di video controllo analogici

75

Come si vede in figura 5.9, utilizzando un cavo di soli 2 metri, nella banda di frequenze di

nostro interesse non ci sono problemi e il comportamento in frequenza è molto lineare

(niente distorsione).

Facciamo, adesso, una simulazione nelle stesse condizioni ma utilizzando un cavo di 80

metri.

Figura 5. 10: Risposte in frequenza con cavo RG59 lungo 80 metri

In questo caso, (figura 5.10) intorno ai 400 KHz il comportamento in frequenza inizia a

non essere più lineare. Nella banda da 1 a 6 MHz (alte frequenze nel video composito) si

ha già distorsione. Da notare inoltre, anche alle basse frequenze, una attenuazione di quasi

100 mV.

Adesso portiamo la lunghezza della linea a 200 metri. Otteniamo la seguente risposta

(figura 5.11):

Figura 5.11: Risposta in frequenza con cavo RG59 lungo 200 metri

5 Sistemi di video controllo analogici

76

Come si vede, in questo caso, la curva di frequenza è quella di un vero e proprio filtro

passa basso. Da 10KHz in poi inizia una forte attenuazione: l’ampiezza passa da quasi

600mV, alle basse frequenze, a circa 160mV per le alte frequenze che, comunque, si

trovano all’interno della banda del segnale video composito. Il segnale, già alle basse

frequenze, sebbene mantenga un comportamento lineare, risulta attenuato di circa 400mV.

Vediamo infine la risposta a 400 metri (figura 5.12) e 1000 metri (figura 5.13).

Figura 5.12: Risposta in frequenza con cavo RG59 lungo 400 metri

Figura 5. 13: Risposta in frequenza con cavo RG59 lungo 1000 metri

L’andamento in frequenza è simile in entrambi i casi ma, a 1000 metri di distanza, il

segnale è quasi assente anche alle basse frequenze.

5 Sistemi di video controllo analogici

77

La perdita delle frequenze alte genera un globale impoverimento dell'immagine. Sul

monitor non si riconoscono più le strutture fini. Nel caso di superfici adiacenti bianche e

nere, il passaggio non è più immediato, ma si vede una zona di grigio che sembra rendere

l'immagine non a fuoco. Anche la variazione dei colori, nel passaggio ad esempio da chiaro

a scuro, risulta più lenta e meno definita. Tutti questi sono i risultati dell'attenuazione

introdotta dal cavo. Un'attenuazione veramente eccessiva porta infine ad un deterioramento

totale del segnale video con perdita dei colori e della definizione.

Esistono in commercio cavi coassiali con attenuazione più bassa dell'RG59

comunemente utilizzato. I più noti sono l'RG6 e l'RG11. Si tratta però di cavi di grossa

sezione, spesso più rigidi del cavo RG59 e per questo di utilizzo meno confortevole. Come

pro l'attenuazione di un cavo RG6 è di circa il 20-25% inferiore all'RG59, mentre l'RG11

può essere anche meno della metà dell'RG59. Di conseguenza un cavo del tipo RG6

permette cablaggi fino a 300 metri, ed un RG11 fino a circa 500 metri.

Se, a seconda della distanza che si vuole coprire, si avesse come effetto collaterale solo un

segnale troppo debole ma poco distorto, una soluzione potrebbe essere inserire un

amplificatore di segnale.

L'amplificatore amplifica il segnale video consentendo di compensare le perdite del cavo.

Come in tutti i processi di amplificazione viene anche introdotta un'inevitabile percentuale

di rumore e l'immagine risulterà sempre un po' meno qualitativa di quella ottenibile con un

cablaggio corto.

In generale, qualora si volesse trasmettere un segnale video composito a chilometri di

distanza, questi sistemi sono improponibili e ciò pone un limite non indifferente alla

trasmissione analogica del video composito via cavo. Come vedremo nel prossimo

capitolo, con la tecnologia digitale, questi limiti saranno praticamente soppressi.

5 Sistemi di video controllo analogici

78

5.5 Vantaggi e Limiti di un sistema video analogico

In questo ultimo paragrafo vogliamo mettere in rilievo quelli che sono i limiti di un sistema

video analogico, cosa si può lasciare inalterato e cosa, invece, andrebbe un po’ modificato.

E’ da premettere che il mondo dell’analogico non è “vecchio o superato”: molti audiofili,

per esempio, lo prediligono rispetto al digitale, soprattutto nella manipolazione dei segnali,

che produce risultati più “caldi” (nel gergo dei musicisti un suono caldo è un suono più

presente, in contrapposizione al suono freddo che la tecnica digitale alle volte produce). Il

problema è che nel passaggio dall’analogico al digitale si hanno delle inevitabili perdite di

informazione (errori di quantizzazione) passando, pertanto da un segnale di tipo continuo

a un segnale di tipo quantizzato. Il sistema di trasmissione digitale però indubbiamente ha

i suoi vantaggi, come per esempio un miglioramento del rapporto segnale-rumore, ed altri

che vedremo in seguito.

Nel nostro sistema video analogico una delle problematiche più importanti è la

trasmissione del segnale. Come abbiamo visto la distanza tra i vari componenti del sistema

può diventare un problema: immaginiamo di dover monitorare a distanza un certo

processo, per esempio in una sala sperimentale. Anche lavorando ad alta risoluzione, come

abbiamo visto, il segnale, nella fase di trasmissione, subisce attenuazione e distorsione;

così si rende necessario l’impiego di amplificatori lungo la linea. Ancora, l’impiego di più

telecamere comporta necessariamente un cablaggio più sostenuto, la presenza di

multiplexer e quindi una perdita di qualità.

Allora, l’idea è quella di campionare il segnale analogico, trasformarlo in una sequenza di

impulsi elettrici binari, stabilire un protocollo di comunicazione, codificare e decodificare

il segnale digitale. Uno dei vantaggi più importanti è quello che possiamo utilizzare la rete

internet per la trasmissione; si tratta di realizzare interfacce per la comunicazione.

Certo è che la tecnica digitale rappresenta già un’ottima soluzione ai problemi legati alla

trasmissione, ma se facciamo in modo che il sistema di comunicazione coincida con quello

della rete internet allora abbiamo fatto il “salto di qualità”: abbiamo creato un sistema di

video controllo digitale over IP.

Nel prossimo capitolo ci occuperemo di questo nuovo sistema introducendo nuovi

concetti come la conversione analogico-digitale, la compressione video, il protocollo

5 Sistemi di video controllo analogici

79

TCP/IP ed altri ancora. Analizzeremo, poi, i tanti vantaggi che ne derivano come la

riduzione di cablaggi e costi, maggiore flessibilità, integrazione con altre strutture ed altri

ancora.

6 Sistemi di video controllo digitale over IP

80

6 Sistemi di video controllo digitale over IP

(Internet Protocol)

6.1 I Codec

In un sistema di video controllo digitale over IP il dispositivo che si occupa

dell’acquisizione, elaborazione e trasmissione delle immagini è comunemente denominato

network camera (o telecamera di rete). Il principio di funzionamento di tale dispositivo si

basa sul fatto che l’immagine catturata dall’obiettivo viene proiettata all’interno del CCD e

quindi transcodificata in segnali elettrici su una serie di linee dati di tipo parallelo; tali

segnali successivamente vengono elaborati da un elettronica di elaborazione tipicamente

caratterizzata da un DSP (Digital Signal Processor, processore dedicato all’elaborazione

digitale dei segnali). Il DSP si occupa quindi della digitalizzazione, e compressione delle

immagini nonché della loro trasmissione in seriale nel rispetto dei protocolli di

comunicazione.

Quest’ultima operazione è svolta ad opera dei codec, ovvero, un programma o un

dispositivo che si occupa di codificare e/o decodificare digitalmente un segnale audio o

video secondo uno standard definito dal codec stesso. Oltre alla digitalizzazione del

segnale, i codec effettuano anche una compressione (e/o decompressione in lettura) dei dati

ad esso relativi, in modo da poter ridurre lo spazio di memorizzazione occupato a

vantaggio anche della trasmissione del flusso codificato.

6 Sistemi di video controllo digitale over IP

81

A prima vista sembrerebbe che la tecnica digitale non presenti inconvenienti e che sia da

preferire in ogni circostanza. In realtà ci sono degli aspetti da tenere in considerazione i

quali determinano una sorta di perdita di informazione del segnale che è stato convertito.

Tra i codec più comunemente adoperati citiamo i più importanti:

Il fomato JPEG

Questo formato non riguarda la compressione di una sequenza video, bensì di un’ unica

immagine statica come per esempio una fotografia.

JPEG, un metodo di compressione molto conosciuto, fu originariamente trasformato in uno

standard verso la metà degli anni ’80 per iniziativa del Joint Photographic Expert

Group. La compressione JPEG permette all’utente di specificare il livello di compressione

desiderato, ossia di stabilire in che misura deve essere compressa l’immagine. Il livello di

compressione è direttamente correlato alla qualità dell’immagine richiesta. Tuttavia, il

rapporto di compressione è influenzato non solo dal livello di compressione, ma anche

dall’immagine stessa. Se l’immagine, per esempio, è un semplice foglio bianco, dopo la

compressione, il file risultante avrà dimensioni molto ridotte (rapporto di compressione

alto). Al contrario, lo stesso livello di compressione applicato a una scena molto complessa

e ricca di dettagli genera un file di maggiori dimensioni (rapporto di compressione basso)

Motion JPEG (o M-JPEG)

Una soluzione per ottenere una sequenza video di tipo digitale è quella di generare un

flusso di fotogrammi codificati e compressi nel formato JPEG. Una telecamera digitale,

acquisisce e comprime, ad esempio, 30 immagini al secondo ( 30 fps – fotogrammi per

secondo ) e le trasmette sotto forma di sequenze digitali. L’occhio umano non è in grado di

distinguere il singolo fotogramma se la velocità è pari o superiore a 16 fps. In questo modo

il segnale video digitale risulterà, in generale, compresso perché costituito da immagini

compresse di tipo JPEG. Va osservato, però, che se tra un frame e i successivi soltanto un

oggetto è in movimento su uno sfondo statico, avremo tutta una sequenza di fotogrammi

(che vengono memorizzati occupando, ciascuno, lo spazio di un immagine JPEG)

praticamente identici ad eccezione dell’oggetto in movimento.

6 Sistemi di video controllo digitale over IP

82

Figura 6.1 : Una sequenza MJPEG

La qualità del video è buona ma si può avere un notevole consumo di banda.

I formati MPEG-2 e MPEG4.

Una delle tecnologie di streaming audio e video più note è indubbiamente il cosiddetto

formato MPEG (creato da Motion Picture Expert Group alla fine degli anni ‘80). Il

principio base di questo formato consiste nel confronto di due immagini compresse da

trasmettere. La prima immagine compressa viene usata come fotogramma di riferimento

per le immagini successive; verranno, poi, trasmesse solo le differenze con i successivi

frames. In ricezione, è compito del codec ricostruire tutte le immagini utilizzando quella di

riferimento e i dati degli elementi diversi (figura 6.2).

Figura 6.2 : Una sequenza MPEG

6 Sistemi di video controllo digitale over IP

83

Nonostante l’apparente complessità, il formato MPEG offre il vantaggio di ridurre in modo

significativo il volume di dati trasmesso rispetto al formato M-JPEG.

Nel 1994 è stato introdotto il formato MPEG-2. Si tratta di una efficiente codifica per il

video digitale in quanto si ottengono delle immagini di buona qualità con un bitrate

compreso tra 4 e 9 Mbit/s.

Il principio base del formato MPEG-2, come accennato in precedenza, è quello di

confrontare due frames compressi. Il primo dei quali è chiamato frame di tipo I (intracoded

frame) e non è altro che un normale frame compresso in JPEG. I frames di tipo I vengono

codificati senza essere confrontati, per esempio, con i successivi o con i precedenti, ma

vengono usati come riferimento per i successivi e sono dei punti di accesso alla sequenza

codificata, in corrispondenza dei quali può iniziare la decodifica. In altre parole, una volta

codificato un frame I, il successivo conterrà soltanto la differenza dal precedente. Questo

(il successivo) è chiamato frame di tipo P ( Predicatively coded frame) e può riferirsi a un

frame di tipo I o di tipo P . A sua volta un frame di tipo P è usato come riferimento per una

terza tipologia (speciale) di frames denominati di tipo B (Bidirectionally coded frames).

Questi frames possono contenere le differenze dai precedenti, ma anche dai successivi o da

entrambi. Il tutto è schematizzato nella seguente figura 6.6.

Figura 6.3 : Esempio di una sequenza di frames I, P e B

Questi frames, di diverse tipologie, in pratica sono degli oggetti del codec MPEG che

vengono definiti VOP (Video Object Plane). Si hanno, allora, sequenze di I-VOP, P-VOP

e B-VOP che nell’insieme formano un GOV (Group Of Video object planes). Un GOV,

così, è una sequenza video di tipo digitale che contiene un numero di campioni ottimizzato.

6 Sistemi di video controllo digitale over IP

84

Osserviamo la seguente figura 4.7 in cui è mostrato il rapporto tra le dimensioni di ogni

frame in un GOV.

Figura 6.4 : Dimensioni relative dei diversi tipi di frames in un GOV

Si nota immediatamente una cospicua riduzione globale dei numero dei campioni (e quindi

dei bit) che, nell’unità di tempo, devono essere elaborati. In altri termini, il bitrate

diminuisce conservando una buona qualità delle immagini. Facciamo osservare che, in una

sequenza MJPEG, lo spazio occupato dall’equivalente di un GOV è uguale a quello che si

avrebbe se tutti i VOP fossero di tipo I.

Com’è noto, un segnale digitale, essendo costituito da una sequenza di bit, si può

manipolare facilmente con un PC. Di fatto il codec MPEG2 esegue delle operazioni tra i

bit dei campioni memorizzati (dei Frames I), per fare delle “predizioni” sul frame

successivo e creare così i Frames P e così via…

Queste operazioni sono stabilite da certi algoritmi di compressione contenuti nel codec.

Per esempio l’MPEG2 contiene il DCT (discrete cosine trasform) che si occupa di stimare

le differenze tra i frames, di cui si è parlato prima (DC prediction).

Le strutture GOV, il DC-prediction e tutti gli algoritmi impiegati nella compressione (i

tools) definiscono il formato MPEG. La differenza tra i formati MPEG1, MPEG2 e

MPEG4 sta proprio nel set di tools impiegati nella compressione: l’MPEG1 (ormai poco

utilizzato), per esempio, non fa uso del B-VOP e il rapporto tra la qualità dell’immagine e

il bitrate peggiora.

Di contro, l’MPEG4 contiene dei tools aggiuntivi che l’MPEG2 non possiede con il

risultato di avere un ottima qualità dell’immagine e un bitrate ancora più basso. Il tutto si

traduce nella possibilità di trasportare il segnale video digitale compresso ad alta qualità

con un consumo di banda relativamente basso.

6 Sistemi di video controllo digitale over IP

85

6.1.2 Alta qualità: Motion-JPEG o MPEG4 ?

La struttura molto complessa del codec MPEG4 comporta un certo tempo di elaborazione;

ciò introduce dei tempi di latenza in fase di codifica e decodifica del segnale. In altri

termini, la ricezione in tempo reale di un filmato codificato e trasmesso in MPEG4 non è

garantita. Al contrario, il formato Motion-JPEG, data la sua semplicità di elaborazione,

garantisce la ricezione in tempo reale con una ottima qualità, ma con un dispendio di banda

non indifferente.

Entrambi i formati garantiscono un’ottima qualità dell’immagine, pertanto in fase di

codifica sarebbe opportuno disporre di entrambi i codec e della possibilità di sceglierne

uno o l’altro o entrambi a seconda delle necessità. Come vedremo la network camera IT

350 di intellisystem istallata a Grenoble, nella sala laser, può eseguire lo streaming sia in

M-JPEG che in MPEG4.

6.2 Network camera e suo utilizzo in un sistema video digitale

Nel corso degli anni sono stati prodotti vari modelli di Network Camera a seconda della

necessità di utilizzo. Un esempio è la PTZ network camera IT350 (figura 6.5) prodotta

da Intellisystem Technologies S.r.l.. La sua principale caratteristica è la sua funzione PTZ

(Pan, Tilt, Zoom) che da remoto permette di far ruotare ed inclinare l’obiettivo di ripresa

nonché d’ingrandire l’immagine catturata. La IT350 è dotata di web server integrato.

6 Sistemi di video controllo digitale over IP

86

Figura 6.5 : Network Camera IT350 prodotta da Intellisystem Technologies S.r.l.

A differenza di un classico sistema video di tipo analogico, un sistema interamente digitale

over IP che impiega delle telecamere di rete non possiede una struttura fissa ben definita.

Queste, infatti, possono essere istallate in qualunque parte del mondo adoperando la rete

internet come veicolo di trasporto per i dati digitali contenenti il video.

Figura 6.6: Esempio di implementazione di un sistema video digitale over IP

6.3.1 Trasporto del video digitale su rete internet

Come abbiamo visto nel capitolo 3, il Protocollo Internet IP con la suite di protocolli TCP

sono largamente utilizzati per il trasporto dei dati. Questi, a loro volta, sono incapsulati in

6 Sistemi di video controllo digitale over IP

87

pacchetti e codificati mediante altri tipi di protocolli alcuni dei quali vengono usati per il

trasporto del video digitale. Nella tabella 6.1 si riportano alcuni protocolli utilizzati da una

Network Camera.

Protocollo

Protocollo

di

trasporto

Porta Utilizzo comune Utilizzo per il video in rete

FTP

File Transfer

Protocol

TCP 21 Trasporto file su

Internet/intranet

Trasporto di immagini o video da una

network camera a un server FTP o ad

un‘applicazione

SMTP

Send Mail

Transfer

Protocol

TCP 25 Protocollo per l‘invio di

email

Una network camera può inviare

immagini o notifiche di allarme usando

il client email integrato

HTTP

Hyper Text

Transfer

Protocol

TCP 80 Usato per navigare sul

web

Il modo più comune per trasferire

video da una network camera dove il

dispositivo di video in rete lavora

essenzialmente come web server

HTTPS

Hypertext

Transfer

Protocol over

Secure

Socket Layer

TCP 443

Usato per offrire l‘accesso

sicuro alle pagine web

tramite crittografia

Trasmissione sicura di video da una

network camera può anche essere

usato per inviare certificati digitali

X.509

RTP

Real Time

Protocol

UDP/TCP Non

definita

RTP rende standard la

trasmissione di video e

audio su Internet. Spesso

usato per streaming e

videoconferenza

La trasmissione può essere sia unicast

(one to one) che multicast (one to

many)

RTSP

Real Time

Streaming

Protocol

TCP 554 Utilizzato per configurare e monitorare le sessioni multimediali su

RTP

Tabella 6.1: Protocolli tipicamente impiegati da una Network Camera

6 Sistemi di video controllo digitale over IP

88

Ogni protocollo di quelli enunciati in tabella 6.1 viene impiegato per scopi specifici, a

seconda del tipo di informazione da trasportare.

Facciamo alcune considerazioni: se vengono inviati dei dati utilizzando, per esempio,

l’HTTP trasportato dal protocollo TCP, quest’ultimo aggiunge al pacchetto dati una serie

di informazioni aggiuntive. Il protocollo TCP, infatti, prevede che quando un pacchetto

viene ricevuto, venga eseguito un controllo sullo stesso. In questo modo si ha la certezza

che non ci sono stati errori durante la trasmissione. Tutto questo, se da un lato garantisce

affidabilità e sicurezza, dall’altro appesantisce il trasporto incrementando il consumo di

banda pertanto, a seconda di ciò che si trasmette, si introducono dei tempi di latenza.

Un video in MJPEG, per esempio, ha un alto bitrate e una ingente quantità di dati da

inviare. L’insieme di tutti i dati viene suddiviso in pacchetti e ogni pacchetto deve essere

controllato dal protocollo TCP. Così per la visione in tempo reale si potrebbe usare il

formato MPEG2 (o MPEG4) il quale, tuttavia, richiede una elaborazione più complessa

che come abbiamo visto può introdurre una leggera latenza.

Per il video in tempo reale si fa spesso uso del protocollo UDP il quale come sappiamo

non esegue nessun controllo sul flusso dei dati. La trasmissione è molto più veloce ma una

volta inviati i dati non si ha notizia del loro arrivo a destinazione. Tuttavia uno standard per

lo streaming video è il protocollo RTP (Real Time Protocol) trasportato dall’UDP.

Riassumendo, se siamo interessati alla ricezione di immagini in tempo reale possiamo

usare l’RTP su UDP a tutto vantaggio di uno streaming video fluido.

Se, invece, si vuole semplicemente eseguire un trasferimento di dati video una soluzione

potrebbe essere il File Transfer Protocol (FTP) su protocollo TCP.

6.3.2 Sistemi di protezione e accesso ad una network camera

Come abbiamo visto nel terzo capitolo, la suite di protocolli TCP prevede un sistema di

protezione attraverso le procedure descritte di autenticazione, autorizzazione e accesso.

Per accedere ad una network camera, dal proprio browser si immette, nella barra degli

indirizzi, l’indirizzo IP della telecamera:

6 Sistemi di video controllo digitale over IP

89

Figura 6.7 : Esempio di accesso a una network camera

Successivamente occorre autenticarsi immettendo nome utente e password. Ai pacchetti

scambiati tra client e server secondo le modalità stabilite dal TCP viene applicato un

protocollo di protezione (crittografia dati e certificati digitali): il flusso dei dati è protetto

da intrusioni accidentali.

Per interagire, controllare e configurare la network camera occorre utilizzare un comune

browser internet (tipo Netscape o Microsoft Explorer) che permetta di navigare all’interno

delle pagine web gestite dal sistema embedded contenuto nella network camera stessa

(figura 6.8).

6 Sistemi di video controllo digitale over IP

90

Figura 6.8 : Home page della IT350PTZ network camera

Dalla figura 6.8 si evince come sia possibile utilizzare l’interfaccia web per movimentare

la telecamera.

7 Un caso reale: il telecontrollo degli apparati della sala laser dell’esperimento GRAAL

91

7 Un caso reale: il telecontrollo degli

apparati della sala Laser dell’esperimento

GRAAL

7.1 Descrizione dell’applicazione

Come abbiamo accennato in precedenza, il sistema RECS 101 è stato progettato per

applicazioni di Telecontrollo e Teleassistenza di ultima generazione. Tale dispositivo, che

utilizza la suite di protocolli TCP/IP, è un sistema che permette di ottimizzare le risorse

logistiche, riducendo il numero delle connessioni ed i costi di gestione con conseguente

maggiore concentrazione di risorse sul lavoro primario. Il sistema RECS 101 è stato

inserito nell’esperimento GRAAL e rappresenta un valido strumento per la gestione delle

apparecchiature per il controllo del fascio laser, collegate tra loro tramite una catena GPIB

estesa.

Inoltre il sistema RECS 101, con il controllo di 16 ingressi e di 16 uscite in

combinazione con una network camera IT350, permette il monitoraggio della sala

sperimentale, offrendo una soluzione sicura e professionale nettamente superiore alle

soluzioni analogiche. Infatti, utilizzando tale combinazione vincente, è stato possibile

avere a disposizione una postazione di Telecontrollo capace di gestire non solo immagini

ma anche di controllare lo stato di dispositivi esterni, quali sensori, e di manovrarne altri,

quali ad esempio attuatori.

In particolare per la prima volta è stato testato il dispositivo RECS 101 come sistema di

reset in automatico della catena GPIB che interfaccia l’intero sistema di allineamento del

raggio laser, nonché la gestione del laser stesso mediante una workstation che adopera un

sistema complesso scritto in LabView. La Fig. 7.1 mostra un modello semplificato di tale

schema di funzionamento.

7 Un caso reale: il telecontrollo degli apparati della sala laser dell’esperimento GRAAL

92

Figura 7.1: Schema di funzionamento della catena GPIB presente nell’esperimento GRAAL per la gestione degli

apparati della sala laser.

In realtà, come si vede dalla figura 7.2 il sistema è più complesso poiché comprende altri

servomeccanismi come ad esempio quello che gestisce l’inserimento di un bolometro per

la misura dell’intensità del raggio laser ottenuto dopo l’allineamento.

Figura 7.2: Sistema Laser-Periscopio presente nella sala laser GRAAL

L'integrazione del sistema RECS 101 con la network camera IT350 (di cui la figura 7.3

mostra l’installazione all’interno della sala laser GRAAL) ha ridotto drasticamente i tempi

d'intervento degli operatori durante le varie fasi dell'esperimento, con una riduzione dei

rischi da esposizione a radiazioni nucleari a cui normalmente gli operatori sono soggetti.

Motori

periscopio

laser

Laser Work

Station

LabView

BUS GPIB

7 Un caso reale: il telecontrollo degli apparati della sala laser dell’esperimento GRAAL

93

Inoltre più ricercatori da ogni parte del mondo hanno potuto connettersi alla sala

sperimentale via Internet e controllare la movimentazione delle lenti del periscopio ottico.

Figura 7.3: Particolare della network camera IT350, installata nella sala laser GRAAL

7.2 Architettura del sistema di controllo.

La Fig. 7.4 mostra l’architettura adoperata nella realizzazione del test sperimentale di

controllo remoto per il reset della catena GPIB, adoperata nella gestione della sala laser

dell’esperimento GRAAL. Essa consiste: 1) del microwebserver RECS 101, che gestisce

l’accensione e lo spegnimento di strumenti di misura, posti lungo la catena GPIB e

dislocati all’interno e all’esterno della sala laser, campionandone gli ingressi e verificando

lo stato degli strumenti ogni 200 ms; 2) una scheda d’interfaccia per la gestione di carichi

di potenza, progettata e realizzata appositamente per controllare gli strumenti di misura; 3)

una network camera IT350, che invia le immagini ad una consolle di comando.

7 Un caso reale: il telecontrollo degli apparati della sala laser dell’esperimento GRAAL

94

Figura 7.4: Architettura del sistema di controllo remoto

Il sistema sperimentale ha permesso di poter controllare da remoto la corretta sequenza di

accensione e spegnimento di tutti gli strumenti presenti nella catena GPIB ovvero il laser, i

vari motori di posizionamento delle lenti del periscopio ed il motore di gestione

dell’inserimento del bolometro. Le problematiche inerenti questa soluzione sono state

dettate dall’esigenza di poter gestire da remoto direttamente dalla consolle laser il reset di

tale strumentazione, secondo una sequenza temporale ben definita. In questo modo

adoperando un semplice browser quale ad esempio Internet Explorer o Netscape è stato

possibile gestire l’intero sistema tramite Internet (fig. 7.5). Ciò ha permesso di far

risparmiare notevolmente in tempo per il reset manuale e la sincronizzazione dei vari

strumenti della catena GPIB.

Figura 7.5: Strumenti della catena GPIB controllati in remoto

7 Un caso reale: il telecontrollo degli apparati della sala laser dell’esperimento GRAAL

95

7.3 Interfaccia di potenza con gli apparati controllati

Poiché RECS 101 dispone di 16 ingressi e 16 uscite digitali di tipo TTL indirizzabili

singolarmente, è stato necessario progettare e realizzare una scheda elettronica

d’interfaccia che fosse capace di gestire carichi di potenza e che al tempo stesso fosse

totalmente disaccoppiata da RECS 101.

La scheda d'interfaccia, di seguito chiamata RECS Relay, rispetta rigorosi criteri di

sicurezza che permettono a questi dispositivi un totale isolamento del carico dal sistema di

controllo grazie ai diversi livelli d'isolamento in essi implementati: isolamento ottico,

galvanico, protezione delle uscite relay tramite variatori (fig. 7.6).

Figura 7.6: Interfaccia RECS Relay

Utilizzandola unitamente a RECS 101 si ottiene un sistema di controllo basato su

tecnologia TCP/IP, che può comandare l'azionamento di carichi e sistemi di potenza. Nel

caso dell’esperimento GRAAL questa scheda è stata direttamente interfacciata ai vari

strumenti presenti nella catena GPIB (fig 7.7 e 7.8).

7 Un caso reale: il telecontrollo degli apparati della sala laser dell’esperimento GRAAL

96

Figura 7.7: Particolare della sala sperimentale relativo all’istallazione di RECS 101 e della sua scheda RECS- relay

Figura. 7.8: Sistema di controllo TCP/IP per il comando di carichi di potenza

In conclusione le caratteristiche tecniche del sistema si possono riassumente nei seguenti

punti:

• 16 ingressi;

• comando di carichi con corrente max di 10A e tensione max di 250 V AC o 30V

DC;

• pilotaggio delle interfacce in continua con ingressi positivi TTL (la tensione di

pilotaggio può essere variata inserendo dei resistori negli opportuni pad della

scheda);

7 Un caso reale: il telecontrollo degli apparati della sala laser dell’esperimento GRAAL

97

• Corrente di pilotaggio ~20 mA;

• Relay ad estrazione rapida con zoccolo;

• Grado di protezione IP00;

• Fissaggio a scatto rapido su profilato DIN35.

Figura 7.9: Schema elettrico

Figura 7.10: Connettore d’ingresso

Nelle figure 7.9 e 7.10 sono riportati, rispettivamente, lo schema elettrico e la piedinatura

del connettore d’ingresso della scheda RECS Relay.

Conclusioni

98

Conclusioni

Nel presente lavoro di tesi sono stati presentati alcuni risultati relativi all’applicazione di

nuove tecnologie di Telecontrollo in ambienti di ricerca nel campo della fisica nucleare,

precisamente per la messa in opera dell’esperimento GRAAL.

In particolare sono state studiate ed introdotte delle particolari architetture per

l’integrazione di controlli distribuiti.

L’applicazione descritta ha visto come protagonista l’utilizzo del microwebserver RECS

101, un dispositivo tecnologicamente avanzato, che ha permesso di gestire tramite Internet

apparati elettronici posti all’interno della sala sperimentale laser all’ESRF di Grenoble

durante l’esperimento GRAAL.

Tale dispositivo ha mostrato grandi prestazioni in termini di robustezza, versatilità ed

immunità ai disturbi. Esso è risultato particolarmente flessibile per gli “ultimi adattamenti”

immancabili durante gli esperimenti di fisica nucleare, che non sono mai standard pur

dovendosi eseguire sempre in tempi ben schedulati e rigidi.

Gli incoraggianti risultati ottenuti, aprono la strada a concreti sviluppi futuri. La facilità

con cui i vari sistemi possono essere espansi ed integrati, senza influenzare quelli

preesistenti, incoraggia un’ottimistica previsione di perfezionamento di tali soluzioni

all’interno della ricerca che si svolge presso i laboratori di fisica nucleare : le intrinseche

garanzie di integrità dei dati offerte, in un ambiente altamente nocivo per l’uomo e

caratterizzato da intense sorgenti elettromagnetiche e radioattive, ed i vantaggi di

semplificazione dei cablaggi, laddove tradizionalmente il controllo remoto prevede

l’impiego di complessi collegamenti dedicati punto-punto, consentiranno l’afflusso

contemporaneo di dati sperimentali e di messaggi di controllo su di un unico mezzo

trasmissivo o bus di campo.

Conclusioni

99

Si può pertanto concludere affermando che tale lavoro rappresenta un significativo passo

avanti nell’impiego di recenti tecnologie di reti di calcolatori in applicazioni di supporto

alla ricerca nel campo della fisica nucleare.

Ringraziamenti

100

Ringraziamenti

Durante un lavoro di tesi si attraversano varie fasi: da quella di studio fino alla

realizzazione e stampa del lavoro finale. Ognuna di queste è contrassegnata da certe

problematiche, stati d’animo, a volte, un po’ altalenanti, ma anche da nuove esperienze e

soddisfazioni. Così è doveroso, per me, porre dei ringraziamenti a tutti coloro che mi sono

stati vicino e a chi ha contribuito alla realizzazione del suddetto lavoro di tesi.

Ringrazio il mio Relatore Prof. Vincenzo Bellini che ha permesso la realizzazione di questa

tesi, i miei due correlatori: la dottoressa Concetta Maria Sutera per la sua tanta disponibilità

e professionalità e l’ingegnere Cristian Randieri per il suo impegno in prima linea e per la sua

simpatia mantenuti anche nei momenti di maggiore stress. Ringrazio la mia fidanzata Mariarita

Sotera, nonché mia collega universitaria, per la sua inesauribile allegria e vicinanza. Un

ringraziamento anche ad Aldo Vinci, mio collega di studio, con cui ho attraversato gli ultimi

anni della vita universitaria. Ringrazio i miei amici, coinquilini, Francesco Ricca, Silvio

Castrianni, Fabrizio Andreaggi per tutti i momenti di gioia e allegria che abbiamo vissuto.

Un ringraziamento speciale ai miei genitori Antonello Lo Presti e Nellina Urrata che mi

hanno permesso di studiare fino al conseguimento del titolo dandomi fiducia anche quando agli

anni di studio ordinari se ne aggiungeva qualcuno in più!! Ringrazio, infine, mio fratello Carlo Lo

Presti, con cui abbiamo diviso molte esperienze, soprattutto la musica, per avermi sempre

tirato su il morale con la sua allegria.

Bibliografia

101

Bibliografia

[1] L Federici et al. “Lettere a nuovo cimento B27 (1980) 339”

[2] A.M Sandorfi et al. “IEEE Transaction on Nucl. Science NS”

[3] D. Babusci et al. “ Nucl. Instr. And Meth. A305 (1991) 19”

[4] D. Babusci et al. “ Il Nuovo Cimento A103 (1990) 1555”

[5] Drell, Hearn e Gerasimov “J. Nucl. Phis. USRR 2 (1996) 908”

[6] Microchip Techonology: “Microcontrollers datasheet”

[7] James F. Kurose, Keith W. Ross: “Internet e Reti di calcolatori”

[8] Fare Elettronica: “RECS 101: un web server embedded per applicazioni di

controllo remoto tramite TCP/IP”

[9] Axis Communication: “Technical guide to network video”

[10] Intellisystem Technologies: “Apparati per il networking”

[11] Richard C. Jaeger , Travis N. Blalock: “Elettronica analogica”

[12] Intellisystem Technologies: “Introduzione allo stack TCP/IP”

[13] Wilson, A.,”The Challenge of embedded Internet”, Electronic Product Design,

January 1998, pp. 31-2,34.

[14] D. Mulchandani, “Java for Embedded Systems”, in IEEE Computer Magazine,

pp. 30-39, May June 1998.

[15] O. Mirabella, V. Bellini, C. Randieri, C. Spitale, ”A Profibus-based Control

System for Nuclear Physics Applications”, The 6th World Multi-Confernce on

Systemics, Cybernetics and Informatics SCI 2002, July 2002, Orlando, Florida.

Bibliografia

102

[16] McCombie, B.,”Embedded Web server now and in the future” Real-Time

Magazine, no.1 March 1998, pp. 82-83.

[17] Aptronix, “Bring Embedded System to the Internet”, http://www.aptronix.com.

[18] J. Gosling, B. Joy, G. Steele,”The Java Laguage Specification”, http://java.sun.com

[19] J.S. Young et All., “Design and specification of embedded system in java using

Successive, formal Refinement”, Proceedings of DAC’98, 1998 Design

Automation Conference. San Francisco, C.A.,june 15-19.

[20] T. Lindholm, F. Yellin “The Java Virtual Machine Specification”, 1996.

http://java.sun.com

[21] Netid Managed Services, Information technology, Northwestern Technology,

http://gradeswww.acns.nwu.edu/ist/snap/doc/sniffing.html

[22] V. Bellini, O. Mirabella, C. Randieri, “An X10 based intelligent gateway for

Process Control Applications” Accepted for the The 7th World Multi-Confernce on

Systemics, Cybernetics and Informatics SCI 2003, July 27-30 2003, Orlando,

Florida.

[23] G. Benincasa et all, Final report on the uniform equipment access at CERN, CERN /

PS 93-16.

[24] Intellisystem Technologies: “Network Camera IT350 User Manual”