Negli ultimi anni, la ricerca militare ha portato a molti contributi riguardanti le tecnologie commerciali. Molte tecnologie ed oggetti moderni, derivano da tecnologie nate e utilizzate inizialmente in campo militare. Nel ventunesimo secolo, la tecnologia maggiormente interessata a sviluppi per uso civile, è quella relativa agli Aeromobili a Pilotaggio Remoto (APR). Grazie alla loro versatilità di utilizzo, sono molto utilizzati per operazioni di ricerca e salvataggio, sorveglianza e utilizzi a scopi ludici. Inoltre molte compagnie stanno studiando la possibilità di utilizzare gli APR per rivoluzionare i servizi di base e per effettuare compiti pericolosi. L'introduzione degli APR all'interno di un sistema tradizionalmente dominato da velivoli con pilota a bordo, crea vari problemi di sicurezza, quali potenziali collisioni in aria, con il suolo o dovuti a problemi di affidabilità del sistema. La diffusione sempre più crescente dell'utilizzo di droni per scopi ludici o civili, può portare ad infortuni seri nel caso di collisione. Assicurare che un APR abbia il minor numero possibile di malfunzionamenti e, quando succede, i sistemi di backup siano in grado di evitare che il velivolo precipiti è quindi necessario, in quanto un'eventuale collisione può portare ad infortuni anche fatali. La parte fondamentale di un APR, oltre all'hardware stesso utilizzato, è data dalla scheda di controllo montata a bordo. La scheda di controllo, utilizzando i dati forniti da vari sensori e i segnali ricevuti via radio dall'operatore a terra, provvede a calcolare il valore da fornire in output ai motori per stabilizzare l'APR. Il software utilizzato è un sistema real-time in quanto è molto importante il tempo di risposta di un drone ai comandi impartiti, in modo da evitare di perdere il controllo. È inoltre molto importate il tempo di risposta in caso di malfunzionamento in modo da garantire l'abilitazione di eventuali sistemi di sicurezza in un periodo di tempo noto. La mia tesi consiste nel testare e verificare il software di controllo utilizzato sui droni aerei, testando che il software utilizzato per controllare gli APR rispetti delle proprietà fondamentali indispensabili per garantire la sicurezza. Ardupilot è un software di controllo per APR molto noto in campo amatoriale, in quanto offre molte funzionalità. Essendo un software open source è facilmente espandibile, ed è inoltre molto adattabile in quanto esistono versioni per aerei, elicotteri, multicotteri e anche per veicoli terrestri. Pur essendo un software molto popolare, è stato solamente testato utilizzando tecniche di testing statico per testare le funzioni delle librerie utilizzate. Le tecniche di testing statico non permettono di verificare il fatto che il sistema rispetti i requisiti temporali ma solamente che le singole funzioni siano logicamente corrette. Utilizzando il model based testing è possibile verificare non solo se il software si comporta come definito in fase progettuale, ma è possibile verificare il rispetto dei vincoli temporali permettendo di verificare la latenza di risposta ai comandi impartiti. Dopo aver analizzato lo stato dell'arte, la tesi si articola nell'analisi del codice utilizzato in modo da poter costruire il modello del sistema che sarà utilizzato per effettuare il testing. Una volta costruito il modello saranno definiti i requisiti e le proprietà che il sistema deve rispettare per garantire la sicurezza. Dopo aver ottimizzato il modello per garantire una verifica in tempi ragionevoli, è stato effettuato un testing utilizzando i dati temporali misurati sul drone fisico e, dato che alcuni vincoli fondamentali per la sicurezza non si sono rivelati rispettati, è stata effettuata un ulteriore verifica eliminando i fattori dovuti all'hardware che hanno portato all'esito negativo della verifica per controllare se, almeno in linea teorica, il software garantisce il rispetto dei requisiti definiti.

Model based testing di firmware di controllo per aeromobili a pilotaggio remoto

PATELLI, ANDREA
2014/2015

Abstract

Negli ultimi anni, la ricerca militare ha portato a molti contributi riguardanti le tecnologie commerciali. Molte tecnologie ed oggetti moderni, derivano da tecnologie nate e utilizzate inizialmente in campo militare. Nel ventunesimo secolo, la tecnologia maggiormente interessata a sviluppi per uso civile, è quella relativa agli Aeromobili a Pilotaggio Remoto (APR). Grazie alla loro versatilità di utilizzo, sono molto utilizzati per operazioni di ricerca e salvataggio, sorveglianza e utilizzi a scopi ludici. Inoltre molte compagnie stanno studiando la possibilità di utilizzare gli APR per rivoluzionare i servizi di base e per effettuare compiti pericolosi. L'introduzione degli APR all'interno di un sistema tradizionalmente dominato da velivoli con pilota a bordo, crea vari problemi di sicurezza, quali potenziali collisioni in aria, con il suolo o dovuti a problemi di affidabilità del sistema. La diffusione sempre più crescente dell'utilizzo di droni per scopi ludici o civili, può portare ad infortuni seri nel caso di collisione. Assicurare che un APR abbia il minor numero possibile di malfunzionamenti e, quando succede, i sistemi di backup siano in grado di evitare che il velivolo precipiti è quindi necessario, in quanto un'eventuale collisione può portare ad infortuni anche fatali. La parte fondamentale di un APR, oltre all'hardware stesso utilizzato, è data dalla scheda di controllo montata a bordo. La scheda di controllo, utilizzando i dati forniti da vari sensori e i segnali ricevuti via radio dall'operatore a terra, provvede a calcolare il valore da fornire in output ai motori per stabilizzare l'APR. Il software utilizzato è un sistema real-time in quanto è molto importante il tempo di risposta di un drone ai comandi impartiti, in modo da evitare di perdere il controllo. È inoltre molto importate il tempo di risposta in caso di malfunzionamento in modo da garantire l'abilitazione di eventuali sistemi di sicurezza in un periodo di tempo noto. La mia tesi consiste nel testare e verificare il software di controllo utilizzato sui droni aerei, testando che il software utilizzato per controllare gli APR rispetti delle proprietà fondamentali indispensabili per garantire la sicurezza. Ardupilot è un software di controllo per APR molto noto in campo amatoriale, in quanto offre molte funzionalità. Essendo un software open source è facilmente espandibile, ed è inoltre molto adattabile in quanto esistono versioni per aerei, elicotteri, multicotteri e anche per veicoli terrestri. Pur essendo un software molto popolare, è stato solamente testato utilizzando tecniche di testing statico per testare le funzioni delle librerie utilizzate. Le tecniche di testing statico non permettono di verificare il fatto che il sistema rispetti i requisiti temporali ma solamente che le singole funzioni siano logicamente corrette. Utilizzando il model based testing è possibile verificare non solo se il software si comporta come definito in fase progettuale, ma è possibile verificare il rispetto dei vincoli temporali permettendo di verificare la latenza di risposta ai comandi impartiti. Dopo aver analizzato lo stato dell'arte, la tesi si articola nell'analisi del codice utilizzato in modo da poter costruire il modello del sistema che sarà utilizzato per effettuare il testing. Una volta costruito il modello saranno definiti i requisiti e le proprietà che il sistema deve rispettare per garantire la sicurezza. Dopo aver ottimizzato il modello per garantire una verifica in tempi ragionevoli, è stato effettuato un testing utilizzando i dati temporali misurati sul drone fisico e, dato che alcuni vincoli fondamentali per la sicurezza non si sono rivelati rispettati, è stata effettuata un ulteriore verifica eliminando i fattori dovuti all'hardware che hanno portato all'esito negativo della verifica per controllare se, almeno in linea teorica, il software garantisce il rispetto dei requisiti definiti.
ING - Scuola di Ingegneria Industriale e dell'Informazione
28-lug-2015
2014/2015
Tesi di laurea Magistrale
File allegati
File Dimensione Formato  
2015_07_Patelli.pdf

accessibile in internet solo dagli utenti autorizzati

Descrizione: Thesis text
Dimensione 3.48 MB
Formato Adobe PDF
3.48 MB Adobe PDF   Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/108881