The aim of this thesis is to develop a linear MPC controller for autonomous navigation of a differential-drive robot in the ROS2 framework. The controller serves as a plugin for Nav2 architecture. The kinematic model of the robot is linearized based on unicycle model and feedback linearization technique. The MPC problem is implemented with a quadratic cost function and linear constraints. State error and input energy are taken into account in the cost function. Optimization constraints consist of velocity constraints, acceleration constraints and position constraints. Soft constraints are constructed based on slack variables to guarantee the feasibility of the optimization problem. The controller enables the robot to track the reference path generated by the global planner. The position constraints is calculated based on the local costmap, which can help to develop the obstacle avoidance. The MPC controller developed in this thesis is tested in simulation scenarios to verify its performance on trajectory tracking and obstacle avoidance. The obtained results show the effectiveness of the approaches applied.
L'obiettivo di questa tesi è sviluppare un controllore lineare di tipo MPC (Model Predictive Control) per la navigazione autonoma di un robot a guida differenziale all'interno del framework ROS2. Il controllore è implementato come un plugin per l'architettura Nav2. Il modello cinematico del robot viene linearizzato sulla base del modello uniciclo e mediante la tecnica di linearizzazione per feedback. Il problema MPC è formulato con una funzione di costo quadratica e con vincoli lineari. La funzione di costo considera l'errore di stato e l'energia in ingresso. I vincoli dell'ottimizzazione comprendono vincoli di velocità, accelerazione e posizione. I vincoli soft vengono introdotti mediante variabili di slack per garantire la fattibilità del problema di ottimizzazione. Il controllore consente al robot di seguire la traiettoria di riferimento generata dal Pianificatore Globale. I vincoli di posizione vengono calcolati in base alla costmap locale, contribuendo all'evitamento degli ostacoli. Il controllore di tipo MPC sviluppato in questa tesi è testato in scenari di simulazione per verificarne le performance nel tracciamento della traiettoria e nell'evitamento degli ostacoli. I risultati ottenuti dimostrano l'efficacia dell'approccio applicato.
Developing a MPC controller for autonomous navigation of a differential-drive robot
LIU, TONG
2024/2025
Abstract
The aim of this thesis is to develop a linear MPC controller for autonomous navigation of a differential-drive robot in the ROS2 framework. The controller serves as a plugin for Nav2 architecture. The kinematic model of the robot is linearized based on unicycle model and feedback linearization technique. The MPC problem is implemented with a quadratic cost function and linear constraints. State error and input energy are taken into account in the cost function. Optimization constraints consist of velocity constraints, acceleration constraints and position constraints. Soft constraints are constructed based on slack variables to guarantee the feasibility of the optimization problem. The controller enables the robot to track the reference path generated by the global planner. The position constraints is calculated based on the local costmap, which can help to develop the obstacle avoidance. The MPC controller developed in this thesis is tested in simulation scenarios to verify its performance on trajectory tracking and obstacle avoidance. The obtained results show the effectiveness of the approaches applied.File | Dimensione | Formato | |
---|---|---|---|
2025_04_Liu.pdf
solo utenti autorizzati a partire dal 12/03/2028
Descrizione: Text of the thesis
Dimensione
5.2 MB
Formato
Adobe PDF
|
5.2 MB | Adobe PDF | Visualizza/Apri |
I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/10589/236525