In this master thesis the experimental RaceCars setup of SIEMENS laboratories is upgraded in all the different components. With the introduction of several innovations and improvements, the setup is now a full autonomous driving example for miniature race cars. Scaled vehicles drives autonomously around a race track in a time-optimal strategy. As in the classic control loop, the work here presented concerns all aspects of a mechatronic system. The main points discussed are the acquisition system, the design of a proper controller and the formulation of an obstacle avoidance algorithm. Results are evaluated in simulation as well as with the system. Working in the range of milliseconds and posing the attention on nonlinear control methods, to calculate the next control action in the time available is a computation challenge. All the applications and the framework is written in C-code. In particular, the controller is defined with auto-generated tailored C-code from the ACADO Code Generation tool. This software implements a Real-Time Iteration scheme. Final results show the advantages of the improvements adopted, specially a clear reduction in the lap time.

Nella seguente tesi magistrale l'oggetto di studio è stato il sistema SIEMENS RaceCars e le diverse parti che lo compongono. Con l'introduzione di migliorie il dimostratore è ora un esempio di sistema di guida autonoma per macchine da corsa in scala. La scelta di adottare questa strategia, ovvero macchine da competizione per lo studio della guida senza guidatore, è dovuta essenzialmente alla condizione limite di guida che si raggiunge solo quando si vuole abbassare il tempo sul giro. In questo senso studiare la guida autonoma per macchine da corsa mette in luce elementi cruciali di sicurezza, che vengono infatti ripresi da ogni progetto in questo campo di ricerca. Fra i punti affrontati il primo è stata la visione, con l'introduzione di una telecamera capace di riconoscere la macchina dal colore di riferimento. In seguito si è passati al controllo: fra le tipologie possibli la scelta è ricaduta su un controllo che avesse un approccio predittivo. Quindi un nonlinear MPC è risultata la scelta più adatta. Dopo una panoramica generale dei diversi modelli disponibili in letteratura, si è optato per un modello che consideri la dinamica laterale della macchina. Parte dell'identificazione riguarda anche i parametri delle ruote. Cruciale è la corretta determinazione delle costanti da adottare nelle formule di Pacejka. Essendo un sistema real-time, altro aspetto essenziale è che i tempi computazionali restino contenuti entro un ben definito limite. Tutta l'architettura software è scritta in linguaggio C, e questo unito all'uso di un kernel Linux con Preempt RT Patch assicura pieno controllo sulle priorità di calcolo del computer. I risultati mostrati sono sia numerici in Matlab/Simulink che sperimentali. Particolare attenzione è dedicata al tempo sul giro, essendo il setup dedicato a macchine da competizione. Viene presentato un miglioramento nelle performance e una netta riduzione nel tempo sul giro rispetto a un controllore nonlineare MPC semplificato. In ultimo la possiblità di evitare ostacoli sul tracciato, che fa di questo un sistema di guida indipendente. Tutti questi componenti implementati lo rendono anche adatto per successivi test con altri e sempre nuovi algoritmi di guida autonoma.

Autonomous driving of miniature race cars

FONTANA, GIORGIO
2013/2014

Abstract

In this master thesis the experimental RaceCars setup of SIEMENS laboratories is upgraded in all the different components. With the introduction of several innovations and improvements, the setup is now a full autonomous driving example for miniature race cars. Scaled vehicles drives autonomously around a race track in a time-optimal strategy. As in the classic control loop, the work here presented concerns all aspects of a mechatronic system. The main points discussed are the acquisition system, the design of a proper controller and the formulation of an obstacle avoidance algorithm. Results are evaluated in simulation as well as with the system. Working in the range of milliseconds and posing the attention on nonlinear control methods, to calculate the next control action in the time available is a computation challenge. All the applications and the framework is written in C-code. In particular, the controller is defined with auto-generated tailored C-code from the ACADO Code Generation tool. This software implements a Real-Time Iteration scheme. Final results show the advantages of the improvements adopted, specially a clear reduction in the lap time.
DE BRUYNE, STIJN
ING - Scuola di Ingegneria Industriale e dell'Informazione
3-ott-2014
2013/2014
Nella seguente tesi magistrale l'oggetto di studio è stato il sistema SIEMENS RaceCars e le diverse parti che lo compongono. Con l'introduzione di migliorie il dimostratore è ora un esempio di sistema di guida autonoma per macchine da corsa in scala. La scelta di adottare questa strategia, ovvero macchine da competizione per lo studio della guida senza guidatore, è dovuta essenzialmente alla condizione limite di guida che si raggiunge solo quando si vuole abbassare il tempo sul giro. In questo senso studiare la guida autonoma per macchine da corsa mette in luce elementi cruciali di sicurezza, che vengono infatti ripresi da ogni progetto in questo campo di ricerca. Fra i punti affrontati il primo è stata la visione, con l'introduzione di una telecamera capace di riconoscere la macchina dal colore di riferimento. In seguito si è passati al controllo: fra le tipologie possibli la scelta è ricaduta su un controllo che avesse un approccio predittivo. Quindi un nonlinear MPC è risultata la scelta più adatta. Dopo una panoramica generale dei diversi modelli disponibili in letteratura, si è optato per un modello che consideri la dinamica laterale della macchina. Parte dell'identificazione riguarda anche i parametri delle ruote. Cruciale è la corretta determinazione delle costanti da adottare nelle formule di Pacejka. Essendo un sistema real-time, altro aspetto essenziale è che i tempi computazionali restino contenuti entro un ben definito limite. Tutta l'architettura software è scritta in linguaggio C, e questo unito all'uso di un kernel Linux con Preempt RT Patch assicura pieno controllo sulle priorità di calcolo del computer. I risultati mostrati sono sia numerici in Matlab/Simulink che sperimentali. Particolare attenzione è dedicata al tempo sul giro, essendo il setup dedicato a macchine da competizione. Viene presentato un miglioramento nelle performance e una netta riduzione nel tempo sul giro rispetto a un controllore nonlineare MPC semplificato. In ultimo la possiblità di evitare ostacoli sul tracciato, che fa di questo un sistema di guida indipendente. Tutti questi componenti implementati lo rendono anche adatto per successivi test con altri e sempre nuovi algoritmi di guida autonoma.
Tesi di laurea Magistrale
File allegati
File Dimensione Formato  
2014_10_Fontana.pdf

accessibile in internet per tutti

Descrizione: Testo Tesi
Dimensione 6.11 MB
Formato Adobe PDF
6.11 MB Adobe PDF Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/95822