Riassunto analitico
Sviluppo di librerie software per l’implementazione dei concetti della Functional Safety secondo le normative IEC 61508 e ISO 25119 per due joystick di tipo industriale presso Walvoil S.p.a. Le librerie, scritte in linguaggio C, sono sviluppate ad hoc per i due prodotti presi in oggetto, seguendo le peculiarità dell’applicazione e dell’architettura hardware già definita al momento dell’inizio di questo lavoro di ricerca. Scopo ultimo di queste librerie è consentire al joystick di operare una serie di controlli e verifiche al fine di garantire il corretto funzionamento del dispositivo, senza che esso possa mai, direttamente o indirettamente, recare danno a persone o a cose. In maniera particolare ci si è posti come obbiettivo il raggiungimento dell’indice AgPL pari a d secondo la normativa ISO 25119 propria delle macchine agricole e forestali. Dapprima si è condotto uno studio approfondito delle normative e dei rischi legati alle applicazioni dei due joystick, in seguito, mediante un’analisi dei modi di guasto, si sono determinati i modi di gusto dei dispositivi e legati questi alle conseguenze a cui questi possono condurre, infine sono stati determinati quali fra i guasti debbano essere identificati come pericolosi seguendo le indicazioni della normativa. Definito l’insieme dei guasti pericolosi si sono introdotti i controlli a livello software in grado di diagnosticare questi guasti e portare il sistema joystick in uno stato detto “stato sicuro” nel quale il sistema è impossibilitato a creare qualunque condizione per la quale si verifichino conseguenze dannose per persone o cose, fino a che non venga risolto il guasto. Entrambi i joystick presentano una architettura definita di categoria 2 dalla normativa, cioè ogni joystick è dotato di due microcontrollori, uno definito principale, responsabile di tutti i calcoli e della determinazione degli output, e uno denominato Test Equipment, il cui compito è monitorare il microcontrollore principale, oltre che agli input e agli output del sistema impiegando numerose strategie. I controlli che il joystick esegue si dividono dunque in due principali categorie: autodiagnostica e monitoraggio da parte del Test Equipment, le due tipologie di controllo risultano essenziali per il raggiungimento del Performance Level prestabilito (AgPL d). Si è inoltre contribuito allo sviluppo dei meccanismi di gestione dell’errore in modo che questi rispettassero le linee guida della normativa. Viste alcune peculiarità di uno dei due dispositivi si è inoltre reso necessario lo sviluppo del firmware del Test Equipment ex novo, interamente realizzato durante il periodo di tirocinio. In seguito, si è deciso di sostituire le librerie proprietarie così sviluppate con librerie per l’autodiagnostica commercialmente disponibili e già certificate, per accelerare lo sviluppo progettuale, in particolare in fase di validazione del software. In fine ci si è revisionato tutto il codice sviluppato per i due dispositivi, sia lato applicativo (già presente ad inizio tirocinio) che diagnostico, in modo tale che fosse aderente alle regole MISRA C 2012 per la buona scrittura del software, in modo tale da aumentare ulteriormente l’affidabilità del dispositivo. Si è anche colta l’occasione per eseguire un confronto approfondito fra le tre soluzioni così delineate (due joystick, di cui uno avente sia librerie proprietarie che librerie commerciali) al fine di identificare criticità e punti di forza di ogni soluzione, confrontando non solo i dispositivi dal punto di vista del software, ma anche commentando gli aspetti architetturali hardware e la scelta dei microcontrollori impiegati. Questo confronto dettagliato si renderà utile nello sviluppo dei prossimi progetti e permetterà una scelta più consapevole durante l’atto progettuale contribuendo alla crescita del know-how aziendale.
|