In the last decades, the UAVs (Unmanned Aerial Vehicles) have had a huge growth in all sectors thanks to the simplicity in their use and versatility; for this reason, in research centers and universities become more and more relevant studying and developing new technologies in order to make progress in this field. Firstly, this thesis aims to analyze PX4 which is presented as an open source flight control software for drones and other UAVs. More precisely, the EKF2 (“Extended Kalman Filter”) algorithm, which is included in the “Estimation and Control Library” (“ECL”) of the software, is subjected to analysis and it allows to process measurements from different sensors to estimate 24 states. Every single code is examined to identify many aspects useful to improve the knowledge of the whole module. Because of the large number of states and lines of code of the algorithm, a custom filter is created, using the MATLAB software and considering the structure of the EKF2 in the PX4, for a 2 DoF (2 degrees of freedom) drone in order to reduce the number of the states: the drone studied represents the coupled dynamics of pitch and longitudinal translation. The most commonly used method to estimate states of linear dynamics systems affected by noise is the Kalman filter, but in the case of attitude estimation the equations describing the state and measurement models are nonlinear functions of the state variables: for this reason, another form of the Kalman filter is used, the extended Kalman filter or EKF. Moreover, a step further is executed for the attitude estimation proposing a multiplicative extended Kalman filter (MEKF) which uses another type of parametrization that eliminates the possibility to have a singularity thanks to its properties: the quaternion. Finally, it is possible to compare the cascaded filters and coupled filter to evaluate the performances of both filters applied to the drone and then establish which is more performing. This thesis is intended to be a starting point for later development maybe of a more complex filter for drones with multiple degrees of freedom dynamics. Indeed, the designed filter is easier to use as it allows the user to conveniently calibrate parameters that are fundamental for the algorithm to work in the right way.

Negli ultimi decenni, gli UAVs (Unmanned Aerial Vehicles) hanno avuto un’enorme crescita in tutti gli ambiti grazie soprattutto alla loro semplicità nell’utilizzo e alla loro versatilità; per questo motivo, nei centri di ricerca e nelle università diventa sempre più rilevante studiare e sviluppare nuove tecnologie per progredire in questo campo. Questa tesi ha lo scopo innanzitutto di analizzare il firmware PX4, un software open source per il controllo di volo di droni o altri UAV. Più precisamente, è sottoposto ad analisi l’algoritmo EKF2 (Extended Kalman Filter), incluso nella “Libreria di Stima e Controllo” del software, che permette di processare misure da diversi sensori per poter stimare 24 stati. Ogni singolo codice dell’algoritmo è esaminato per poter individuare vari aspetti utili a migliorare la conoscenza dell’intero modulo. A causa dell’eccessivo numero di stati e di linee di codice dell’algoritmo, si è voluto creare un filtro personalizzato, usando il software MATLAB e tenendo comunque in considerazione la struttura dell’EKF2 nel PX4, su un drone a 2 gradi di libertà in modo da semplificare di molto il numero degli stati: il drone studiato rappresenta le dinamiche accoppiate di beccheggio e di traslazione longitudinale. Il metodo più usato per la stima di stati di sistemi dinamici lineari affetti da rumore è il filtro di Kalman, ma nel caso della stima d’assetto le equazioni che descrivono i modelli di stato e di misure sono funzioni non lineari delle variabili di stato: per questo motivo un’altra forma di filtro di Kalman viene utilizzata, il filtro di Kalman esteso o EKF. Inoltre, si è voluto compiere un passo in più nella stima dell’assetto, proponendo un filtro esteso moltiplicativo di Kalman (MEKF), il quale utilizza un altro tipo di parametrizzazione che elimina la possibilità di avere una singolarità grazie alle sue proprietà: i quaternioni. Infine, è possibile confrontare i filtri in cascata ed il filtro accoppiato per valutare le performance dei due filtri applicati al drone e poi stabilire quale dei due è più performante. Questa tesi vuole essere un punto di partenza per uno sviluppo successivo di un filtro più complesso per droni con dinamiche a più gradi di libertà. Infatti, il filtro progettato risulta più facile da utilizzare poiché permette all’utente di tarare con comodità dei parametri fondamentali al funzionamento del filtro stesso.

Attitude and position estimation for a multirotor UAV

Pizzi, Valerio
2019/2020

Abstract

In the last decades, the UAVs (Unmanned Aerial Vehicles) have had a huge growth in all sectors thanks to the simplicity in their use and versatility; for this reason, in research centers and universities become more and more relevant studying and developing new technologies in order to make progress in this field. Firstly, this thesis aims to analyze PX4 which is presented as an open source flight control software for drones and other UAVs. More precisely, the EKF2 (“Extended Kalman Filter”) algorithm, which is included in the “Estimation and Control Library” (“ECL”) of the software, is subjected to analysis and it allows to process measurements from different sensors to estimate 24 states. Every single code is examined to identify many aspects useful to improve the knowledge of the whole module. Because of the large number of states and lines of code of the algorithm, a custom filter is created, using the MATLAB software and considering the structure of the EKF2 in the PX4, for a 2 DoF (2 degrees of freedom) drone in order to reduce the number of the states: the drone studied represents the coupled dynamics of pitch and longitudinal translation. The most commonly used method to estimate states of linear dynamics systems affected by noise is the Kalman filter, but in the case of attitude estimation the equations describing the state and measurement models are nonlinear functions of the state variables: for this reason, another form of the Kalman filter is used, the extended Kalman filter or EKF. Moreover, a step further is executed for the attitude estimation proposing a multiplicative extended Kalman filter (MEKF) which uses another type of parametrization that eliminates the possibility to have a singularity thanks to its properties: the quaternion. Finally, it is possible to compare the cascaded filters and coupled filter to evaluate the performances of both filters applied to the drone and then establish which is more performing. This thesis is intended to be a starting point for later development maybe of a more complex filter for drones with multiple degrees of freedom dynamics. Indeed, the designed filter is easier to use as it allows the user to conveniently calibrate parameters that are fundamental for the algorithm to work in the right way.
ING - Scuola di Ingegneria Industriale e dell'Informazione
9-giu-2021
2019/2020
Negli ultimi decenni, gli UAVs (Unmanned Aerial Vehicles) hanno avuto un’enorme crescita in tutti gli ambiti grazie soprattutto alla loro semplicità nell’utilizzo e alla loro versatilità; per questo motivo, nei centri di ricerca e nelle università diventa sempre più rilevante studiare e sviluppare nuove tecnologie per progredire in questo campo. Questa tesi ha lo scopo innanzitutto di analizzare il firmware PX4, un software open source per il controllo di volo di droni o altri UAV. Più precisamente, è sottoposto ad analisi l’algoritmo EKF2 (Extended Kalman Filter), incluso nella “Libreria di Stima e Controllo” del software, che permette di processare misure da diversi sensori per poter stimare 24 stati. Ogni singolo codice dell’algoritmo è esaminato per poter individuare vari aspetti utili a migliorare la conoscenza dell’intero modulo. A causa dell’eccessivo numero di stati e di linee di codice dell’algoritmo, si è voluto creare un filtro personalizzato, usando il software MATLAB e tenendo comunque in considerazione la struttura dell’EKF2 nel PX4, su un drone a 2 gradi di libertà in modo da semplificare di molto il numero degli stati: il drone studiato rappresenta le dinamiche accoppiate di beccheggio e di traslazione longitudinale. Il metodo più usato per la stima di stati di sistemi dinamici lineari affetti da rumore è il filtro di Kalman, ma nel caso della stima d’assetto le equazioni che descrivono i modelli di stato e di misure sono funzioni non lineari delle variabili di stato: per questo motivo un’altra forma di filtro di Kalman viene utilizzata, il filtro di Kalman esteso o EKF. Inoltre, si è voluto compiere un passo in più nella stima dell’assetto, proponendo un filtro esteso moltiplicativo di Kalman (MEKF), il quale utilizza un altro tipo di parametrizzazione che elimina la possibilità di avere una singolarità grazie alle sue proprietà: i quaternioni. Infine, è possibile confrontare i filtri in cascata ed il filtro accoppiato per valutare le performance dei due filtri applicati al drone e poi stabilire quale dei due è più performante. Questa tesi vuole essere un punto di partenza per uno sviluppo successivo di un filtro più complesso per droni con dinamiche a più gradi di libertà. Infatti, il filtro progettato risulta più facile da utilizzare poiché permette all’utente di tarare con comodità dei parametri fondamentali al funzionamento del filtro stesso.
File allegati
File Dimensione Formato  
2021_06_Pizzi.pdf

accessibile in internet solo dagli utenti autorizzati

Descrizione: Testo della tesi
Dimensione 2.15 MB
Formato Adobe PDF
2.15 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/176242