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...

ver descrição completa

Detalhes bibliográficos
Autor: Seguí Torrandell, Marc
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
Descrição
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