This thesis work aims to implement a predictive control algorithm based on the Model Predictive Control (MPC) strategy using the Robot Operating System (ROS) framework. To be able to guarantee an adequate level of performance, the implemented MPC control is linear. The ROS framework has been chosen because it has a series of advantages. These advantages allow the code to be easily understandable and reusable on different platforms and let the easy implementation of different kinds of programs even on rather complex robots. This is due to the fact that this framework allows to create different nodes communicating with each other by messages. Thanks to this nodes-like structure of the program, the nodes can be implemented on different programmable control devices allowing their easier interaction. For the test phase, this algorithm has been implemented to control a vehicle modeled with a single track non linear model. To be able to use the linear MPC algorithm, the model has been linearized using the feedback linearization technique that allows viewing, from the outside, the system as a linear one. The control algorithm and the simulator have been implemented directly as ROS nodes, and the C++ program language was chosen for the relative written code.
Il presente lavoro di tesi si pone l’obiettivo di implementare un algoritmo di controllo predittivo di tipo Model Predictive Control (MPC) mediante il Robotic Operating System (ROS) framework. Per garantire buone prestazioni è stato implementato un controllo MPC di tipo lineare. La decisione di usare il framework ROS è dovuta ai vantaggi che questa piattaforma offre. Questi vantaggi permettono di rendere il codice prodotto facilmente leggibile e riutilizzabile su più piattaforme oltre a permettere una più facile implementazione e programmazione di robot, anche con struttura complessa, grazie alla possibilità di suddividere il programma in nodi che comunicano tra loro. Questi nodi possono anche risiedere su diverse schede di controllo programmabili, rendendo la loro interazione di facile. Per la fase di prova si è scelto di implementare l’algoritmo per controllare un veicolo modellizzato tramite un modello single track non lineare. Per far sì che questo modello sia compatibile con l’algoritmo di controllo scelto è stata impiegata la tecnica della feedback linearization per renderlo lineare agli effetti esterni. Sia l’algoritmo di controllo che il simulatore sono stati implementati direttamente come nodi; il linguaggio di programmazione scelto tra quelli compatibili con ROS è stato il C++.
Realizzazione di un controllore MPC in ambiente ROS
MARIAZZI, DARIO
2015/2016
Abstract
This thesis work aims to implement a predictive control algorithm based on the Model Predictive Control (MPC) strategy using the Robot Operating System (ROS) framework. To be able to guarantee an adequate level of performance, the implemented MPC control is linear. The ROS framework has been chosen because it has a series of advantages. These advantages allow the code to be easily understandable and reusable on different platforms and let the easy implementation of different kinds of programs even on rather complex robots. This is due to the fact that this framework allows to create different nodes communicating with each other by messages. Thanks to this nodes-like structure of the program, the nodes can be implemented on different programmable control devices allowing their easier interaction. For the test phase, this algorithm has been implemented to control a vehicle modeled with a single track non linear model. To be able to use the linear MPC algorithm, the model has been linearized using the feedback linearization technique that allows viewing, from the outside, the system as a linear one. The control algorithm and the simulator have been implemented directly as ROS nodes, and the C++ program language was chosen for the relative written code.File | Dimensione | Formato | |
---|---|---|---|
Tesina.pdf
accessibile in internet solo dagli utenti autorizzati
Descrizione: Testo della tesina
Dimensione
1.26 MB
Formato
Adobe PDF
|
1.26 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/121464