CAPITOLO 1: INTRODUZIONE I componenti di natura elettrica o elettronica sono presenti in molti dispositivi di uso quotidiano. Pensiamo ai controlli elettronici presenti in un'automobile. Essi aiutano il conducente durante le frenate di emergenza intervenendo attivamente, ad esempio, per impedire il bloccaggio delle ruote e ridurre lo spazio di arresto. L'utilizzo di componenti elettronici e in particolare elettronici programmabili è sempre più frequente nei sistemi industriali automatizzati. Il personale svolge il proprio compito con l'ausilio di strumenti o apparati che hanno al loro interno dei componenti di natura elettronica. Anche nelle nostre case l'utilizzo di detti componenti è intenso, pensiamo ad esempio ai sistemi di climatizzazione temporizzati o ai sistemi di controllo della combustione o della temperatura nelle caldaie per il riscaldamento. Da questa serie di esempi possiamo immaginare che l'utilizzo di questi dispositivi è spesso collegato alla vita e alla sicurezza della gente. Per questo motivo è necessaria una particolare attenzione nello sviluppo di tali sistemi. Un eventuale malfunzionamento può creare situazioni di pericolo per l'incolumità delle persone. In seguito a queste considerazioni è nata l'esigenza di imporre delle norme specifiche affinché lo sviluppo e la validazione dei dispositivi elettronici legati alla sicurezza sia adeguato all'ambiente di utilizzo. Esistono diverse normative, ognuna delle quali fa riferimento a un determinato 1
settore. In questa tesi vedremo la normativa internazionale IEC 61508 il cui scopo è fornire un approccio sistematico per affrontare lo sviluppo e la progettazione di sistemi legati alla sicurezza dove siano presenti dispositivi di tipo elettrico, elettronico o elettronico programmabile. Il vantaggio introdotto da questa particolare norma è la possibilità di valutare numericamente i rischi che può causare un malfunzionamento dell'intero sistema. In altre parole vengono forniti degli strumenti di tipo matematico per la determinazione del livello di rischio a cui sono sottoposte le persone. Questo calcolo tiene conto della frequenza e dell'intensità con cui possono presentarsi le situazioni di pericolo. Sulla base dei risultati ottenuti vengono stabilite le linee guida per lo sviluppo e la validazione della componente elettronica. A livelli di rischio elevati corrispondono sistemi in grado di garantire un'elevata sicurezza funzionale. Le direttive non si limitano solo a guidare i progettisti nella realizzazione del sistema ma coinvolgono anche altri aspetti come la validazione, la messa in funzione e la manutenzione. In pratica viene seguito l'intero ciclo di vita del dispositivo. In questa tesi vengono considerati alcuni concetti fondamentali della norma riguardanti la progettazione e vengono applicati ad un sistema reale. L'approccio seguito è stato quello di sviluppare un sistema di controllo motori che utilizza al suo interno dei componenti elettronici di tipo programmabile. Partendo da una scheda già esistente, questa è stata completata realizzando alcune interfacce hardware aggiuntive e sviluppando del software ad hoc. In questo modo 2
è stato possibile adattare il sistema di partenza alle specifiche esigenze del presente lavoro, consentendone l'interfacciamento contemporaneo a tre diversi motori. Il dispositivo della scheda elettronica che si occupa di pilotare direttamente i motori è una FPGA, un componente di tipo elettronico programmabile. Nella scheda è presente inoltre un processore che si occupa di calcolare i movimenti dei motori e inviare all'fpga le informazioni necessarie per il pilotaggio. I motori collegati alla scheda sono di tipo differente tra loro per simulare situazioni diverse e per dimostrare, al contempo, che la presenza di una FPGA, grazie alla propria intrinseca versatilità, permette al sistema di interfacciarsi al mondo esterno agevolmente e senza bisogno di componenti aggiuntivi. Il fatto che i motori utilizzati non muovano in effetti organi meccanici potenzialmente pericolosi quali bracci o cinghie di trasmissione è trascurabile ai fini della trattazione. L'intento è stato quello di proiettare l'analisi teorica in un caso concreto che abbia comunque attinenza con situazioni reali ma che allo stesso tempo fosse implementabile in laboratorio. Una volta collegata fisicamente la scheda, sono stati programmati i vari componenti ed è stata realizzata una sequenza di movimento dei motori. Fatto ciò, la piattaforma è stata sottoposta ad analisi per determinare quale livello di sicurezza sia in grado di garantire durante il suo funzionamento. Successivamente sono stati aggiunti dei sistemi di diagnostica per il controllo di eventuali malfunzionamenti. I componenti elettronici presenti nella scheda dialogano continuamente mantenendosi informati l'un l'altro sul loro stato di 3
salute. Se uno dei dispositivi non riceve più aggiornamenti o li riceve errati significa che il dispositivo da controllare non sta funzionando correttamente. In questo modo i componenti ancora funzionanti possono intervenire e riportare il sistema in una condizione di sicurezza. L'importanza di poter rilevare un guasto è fondamentale, infatti se la scheda di controllo non sta funzionando correttamente non possiamo stabilire con certezza il comportamento del nostro impianto. In questo caso particolare il movimento dei motori non è noto. Consideriamo dunque questa situazione come potenzialmente pericolosa mentre ipotizziamo che la condizione in cui i motori siano fermi sia ritenuta non pericolosa. Il sistema sarà dunque orientato a portarsi nella condizione sicura in caso di guasto, altrimenti si occuperà del controllo dei motori come prevedono le normali specifiche di funzionamento. L'aggiunta delle componenti di diagnostica permette, in caso di guasto, di determinare quale sia il problema e intervenire adeguatamente per rendere l'intero apparato sicuro. In questo caso, se viene rilevato un guasto la nostra scheda di controllo è in grado fermare i motori togliendo loro l'alimentazione. Completato l'intero sistema è stato nuovamente sottoposto ad analisi, determinando il livello di sicurezza raggiunto e i vantaggi ottenuti dall'introduzione del sistema di diagnostica dei guasti. La presenza di quest'ultimo infatti permette all'intero sistema di raggiungere un livello di sicurezza superiore. Per ottenere sistemi in cui sia necessario un livello di sicurezza funzionale particolarmente elevato si utilizza la ridondanza. Questa soluzione prevede 4
l'utilizzo di due dispositivi che hanno lo scopo di svolgere le stesse operazioni. Se uno dei due non funziona correttamente viene escluso e l'altro componente mantiene operativo l'intero sistema. In questo modo si riesce a garantire un maggior livello di sicurezza funzionale. Nel nostro caso possono venir utilizzate due schede separate, la principale detta Master e la secondaria detta Slave. Questa particolare configurazione non è stata realizzata fisicamente, ma ne viene proposta una possibile realizzazione teorica. Come nei casi precedenti questa soluzione viene analizzata e valutata al fine di determinare quale livello di sicurezza essa sia in grado di garantire. La realizzazione del sistema di controllo motori, gli strumenti utilizzati e le analisi sulla sicurezza funzionale effettuate hanno permesso una maggior conoscenza dei principi fondamentali della norma e della progettazione di sistemi basati su dispositivi elettronici programmabili. 5