Simulation-based integration and evaluation of path tracking algorithms
This work addresses the problem of autonomous vehicle trajectory tracking. The main purpose of this project is to encapsulate all the components required for a path tracking function in one module and to integrate and evaluate them in different scenarios. For the integration, first the trajectory in...
| Autor: | |
|---|---|
| Formato: | tesis de maestría |
| Fecha de publicación: | 2023 |
| País: | España |
| Recursos: | Universitat Politècnica de Catalunya (UPC) |
| Repositorio: | UPCommons. Portal del coneixement obert de la UPC |
| Idioma: | inglés |
| OAI Identifier: | oai:upcommons.upc.edu:2117/394316 |
| Acesso em linha: | https://hdl.handle.net/2117/394316 |
| Access Level: | acceso abierto |
| Palavra-chave: | Automated vehicles -- Software -- Design and construction Automobiles, Racing -- Control automàtic -- Design and construction Vehicles autònoms -- Programari -- Disseny i construcció Automòbils -- Conducció -- Automatic control -- Disseny i construcció Àrees temàtiques de la UPC::Informàtica::Robòtica |
| Resumo: | This work addresses the problem of autonomous vehicle trajectory tracking. The main purpose of this project is to encapsulate all the components required for a path tracking function in one module and to integrate and evaluate them in different scenarios. For the integration, first the trajectory interpolation and the vehicle model are defined. In this case, a linear interpolation and a bicycle model are used, respectively. Second, four different controllers are presented to be tested: the pure pursuit controller, the simple formulation of the Stanley controller, an extended formulation of the Stanley controller, and a sliding mode control. Then, various KPIs and scenarios are defined to compare and evaluate the controllers. The controllers were coded in Matlab, but translated from that code and into C/C++ using the Matlab Coder Toolbox. They were integrated into two different environments, one fully programmed in Python (the integration is done by using Cython), and a ROS 2 environment. A cost function was then defined to evaluate the controller and a tuning strategy for the controllers. Finally, a result analysis for the controllers in different scenarios is pre- sented |
|---|