ING - Scuola di Ingegneria Industriale e dell'Informazione
3-apr-2025
2023/2024
Il processo di localizzazione è utilizzato per stimare la posizione e l’orientamento di robot mobili, queste informazioni sono fondamentali in ogni applicazione che coinvolge robot di questo tipo. L’accuratezza della localizzazione dipende, tra gli altri fattori, dal modello di moto, il quale consiste in un insieme di equazioni che descrivono il movimento di un robot in condizioni ideali. Un approccio molto comune in applicazioni riguardanti robot mobili è il pacchetto ROS robot_localization, che utilizza un modello di moto omnidirezionale per garantire flessibilità e adattabilità ad ogni scenario. Tuttavia, questa strategia può introdurre imprecisioni quando applicata a robots non olonomici, ad esempio quelli a guida differenziale o skid-steering.
Questa Tesi analizza l’impatto della scelta del modello di moto sull’accuratezza della localizzazione. In particolare, valuta se l’uso di un modello di moto omnidirezionale in robot_localization possa generare errori significativi nella localizzazione quando applicato a robot a guida differenziale, e se l’adozione di un modello di moto più adeguato possa migliorare visibilmente le prestazioni.
Lo studio inizia con un’analisi dettagliata del processo che stima lo stato del robot all’interno del pacchetto, con particolare attenzione all’implementazione dell’Extended Kalman Filter (EKF). Successivamente, viene sviluppata e implementata una versione di robot_localization che incorpora un modello di moto differenziale. Infine, viene condotta un’analisi comparativa tra il modello standard omnidirezionale, il nuovo modello differenziale e una versione modificata del modello omnidirezionale ottenuta attraverso una configurazione particolare dei parametri di stato. L’efficacia di ciascun modello su un robot a guida differenziale viene valutata attraverso una serie di simulazioni progettate per evidenziare le differenze di prestazioni in vari scenari: da test teorici fino a condizioni più realistiche che includono rumore nei sensori, suolo scivoloso, e occlusioni del segnale GPS.
I principali contributi di questa tesi includono un’analisi dettagliata dell’implementazione del pacchetto robot_localization, un adattamento del pacchetto all’integrazione di un modello di moto differenziale, e una valutazione, basata su simulazioni, dell’impatto della scelta del modello di moto sulla localizzazione.
I risultati evidenziano come l’uso di un modello generico possa causare errori di localizzazione, soprattutto in applicazioni in cui i sensori esterocettivi, come il GPS, non siano disponibili o affidabili. Le conclusioni sottolineano l’importanza di adottare un modello di moto che rappresenti fedelmente la cinematica del robot, mettendo in luce i limiti di un approccio generico nei sistemi con cinematica vincolata. Infine, l’estensione di robot_localization per supportare un modello di moto differenziale fornisce indicazioni utili per migliorare la precisione della localizzazione nei robot a guida differenziale, contribuendo a una stima dello stato più affidabile nelle applicazioni reali.
The localization process enables a mobile robot to estimate its position and orientation, fundamental requirements for any application. Localization accuracy depends, among other factors, on the motion model, which is a set of equations describing how a robot is expected to move in ideal conditions. A widely adopted approach in robotic software frameworks is the ROS package robot_localization which adopts an omnidirectional motion model for flexibility and generalization. However, this approach may introduce inaccuracies when applied to machines with constrained movement, such as differential drive or skid-steering robots.
This thesis investigates the impact of motion model selection on localization accuracy. Specifically, it evaluates whether using an omnidirectional motion model in robot_localization leads to significant localization errors when applied to differential drive robots, and whether a more accurate motion model can improve localization performance.
Initially, the study provides a detailed examination of the package’s state estimation process, focusing on its Extended Kalman Filter (EKF) implementation. Subsequently, a modified version of robot_localization incorporating a differential motion model is developed and implemented. Finally, a comparative analysis is conducted between the standard omnidirectional model, the newly developed differential one, and a modified version of the standard omnidirectional model obtained through a particular configuration of state parameters. The effectiveness of each model on a differential drive robot is studied through a series of simulations designed to highlight differences in performance across various scenarios ranging from theoretical tests to more realistic conditions involving sensor noise, slippery surfaces, and GPS occlusions.
The primary contributions of this thesis include an in-depth examination of the implementation of the robot_localization package, an extension of the package incorporating a differential drive motion model, and a simulation-based evaluation of the impact of motion model selection.
The results demonstrate that using a generalist motion model can lead to localization errors, particularly in applications where exteroceptive sensors like GPS are neither available nor reliable. The findings underscore the importance of selecting a motion model that accurately represents a robot’s kinematics, also highlighting the limitations of a generic motion model in constrained kinematics. By adapting robot_localization to support a differential motion model, this work also provides insights into improving localization accuracy for differential drive robots, contributing to a more reliable localization in real-world applications.