• Non ci sono risultati.

L’ultima sessione di test in pista `e avvenuta a Maggio 2018. I dati registrati ed i risultati raggiunti nelle sessioni precedenti hanno consentito di affinare il modello di riferimento e l’implementazione del controllo.

Figura 41: Traiettoria seguita da Tazio con controllore MPC

Figura 43: Errore di inseguimento di velocit`a con controllore MPC

Figura 44: Errore di inseguimento di accelerazione longitudianale con controllore MPC

In questo caso, i risultati visibili nelle Figure 41, 42, 43, 44, mostrano una riduzione dell’errore medio sul tracciato di circa il 60%. `E da notare che in ogni caso il tracciato `e diverso in ogni sessione di prova, dunque una comparazione accurata delle performance in pista tra le varie sessioni non `e realizzabile.

7

Conclusioni e sviluppi futuri

In questo lavoro di tesi si `e sviluppato un sistema di controllo per una au- tomobile elettrica da corsa con autonomia di livello 5, il Roborace DevBot. Sono stati descritti il modello del sistema, una procedura di generazione del percorso di riferimento, un sistema di localizzazione e due approcci al control- lo della vettura. In particolare, i risultati sperimentali hanno mostrato una maggiore efficacia del sistema di controllo real-time MPC sviluppato rispetto a metodi pi tradizionali come il Pure Pursuit control. Il lavoro `e stato svolto nellambito di una collaborazione tra il Centro di Ricerca E. Piaggio dellU- niversit`a di Pisa con Roborace, nellottica di dotare la vettura della capacit di guidare in una pista da competizione in assenza di altre vetture. Ulteriori sviluppi sono necessari nellottica di una gara con pi veicoli presenti in pista ed in competizione tra di loro, ed andranno nella direzione di consentire la pianificazione ed il controllo, on-line ed in tempo reale, di sorpassi ad alta velocit`a.

Riferimenti bibliografici

[1] R. Saracco, “Self driving car: How can it be so stupid?” IEEE Future Directions, IEEE, 2018. [Online]. Available: sites.ieee.org/ futuredirections/2018/01/28/self-driving-car-how-can-it-be-so-stupid/ [2] D. J. Hicks, “The safety of autonomous vehicles: Lessons from philoso-

phy of science,” IEEE Technology and Society Magazine, vol. 37, no. 1, pp. 62–69, 2018.

[3] Taxonomy and Definitions for Terms Related to On-Road Motor Vehicle Automated Driving Systems, January 2014.

[4] D. Caporale, A. Fagiolini, L. Pallottino, A. Settimi, A. Biondo, F. Ame- rotti, F. Massa, S. De Caro, A. Corti, and L. Venturini, “A planning and control system for self-driving racing vehicles,” in 2018 IEEE 4th Inter- national Forum on Research and Technology for Society and Industry (RTSI). IEEE, 2018, pp. 1–6.

[5] D. Caporale, A. Settimi, F. Massa, F. Amerotti, A. Corti, A. Fagio- lini, M. Guiggiani, A. Bicchi, and L. Pallottino, “Towards the design of robotic drivers for full-scale self-driving racing cars,” in 2019 IEEE International Conference on Robotics and Automation (ICRA). IEEE, 2019.

[6] B. Paden, M. ˇC´ap, S. Z. Yong, D. Yershov, and E. Frazzoli, “A survey of motion planning and control techniques for self-driving urban vehicles,” IEEE Transactions on intelligent vehicles, vol. 1, no. 1, pp. 33–55, 2016. [7] A. Corti, “Modellazione e pianificazione della traiettoria ottima di un veicolo da corsa a guida autonoma,” Master’s thesis, Universit`a di Pisa. [8] M. Guiggiani, The science of vehicle dynamics. New York, NY: Springer

International Publishing, 2018.

[9] M. Park, S. Lee, and W. Han, “Development of steering control system for autonomous vehicle using geometry-based path tracking algorithm,” ETRI Journal, vol. 37, 05 2015.

[10] A. Schmeitz, J. Zegers, J. Ploeg, and M. Alirezaei, “Towards a generic lateral control concept for cooperative automated driving theoretical and experimental evaluation,” in 2017 5th IEEE International Conference on Models and Technologies for Intelligent Transportation Systems (MT- ITS), June 2017, pp. 134–139.

[11] K. Keisuke, N. Kohei, S. Yuta, F. Hiroyuki, and M. Hiroshi, “Reduction of preview distance in lane-keeping control,” International Journal of Automotive Technology, vol. 18, no. 4, pp. 743–750, 2017.

[12] . Kl, A. Yazc, . Yldz, M. zelikors, and A. Ondoan, “Intelligent adaptive cruise control system design and implementation,” in 2015 10th System of Systems Engineering Conference (SoSE), May 2015, pp. 232–237. [13] A. Bemporad, “Model predictive control course,” Lecture Slide from

“Model Predictive Control” Course, IMT Scuola Alti Studi Lucca, 2018, to be published. [Online]. Available: cse.lab.imtlucca.it/bemporad/ mpc course.html

[14] Y. Wang and S. Boyd, “Fast model predictive control using online opti- mization,” IEEE Transactions on Control Systems Technology, vol. 18, no. 2, pp. 267–278, March 2010.

[15] R. Verschueren, S. De Bruyne, M. Zanon, J. V. Frasch, and M. Diehl, “Towards time-optimal race car driving using nonlinear mpc in real- time,” in 53rd IEEE Conference on Decision and Control, Dec 2014, pp. 2505–2510.

[16] B. Alrifaee and J. Maczijewski, “Real-time trajectory optimization for autonomous vehicle racing using sequential linearization,” in 2018 IEEE Intelligent Vehicles Symposium (IV), June 2018, pp. 476–483.

Elenco delle figure

1 Roborace Robocar. . . 5

2 Roborace Devbot. . . 6

3 Modello Single-Track cinematico. . . 7

4 Modello del veicolo a 4 ruote. . . 10

5 Modello Single-Track dinamico. . . 12

6 Porzione del tracciato di Berlino e margini di sicurezza (1.5m) 16 7 Esempio di Road. . . 18

8 Il punto p del margine pivot `e associato a quel punto q∗ del margine fringe che rende la traversina il pi`u possibile ortogo- nale ad entrambi i margini. . . 19

9 Esempio della definizione della Road e della seguente valuta- zione della linea media e dei margini di sicurezza. . . 19

10 Esempio di Cfree. . . 20

11 Esempio di vertici di un grafo topologico. . . 21

12 Al vertice V `e assegnato come genitore il vertice P nell’oriz- zonte che consente di raggiungere V a costo minimo. . . 22

13 In alto un esempio di una clotoide scartata perch`e v`ıola i vin- coli di curvatura; in basso un esempio di una colotoide scartata perch`e supera i margini di sicurezza. . . 23

14 Output dell’algoritmo eseguito in Matlab. . . 24

15 Soluzione ottima sul tracciato di Berlino: in alto i vertici del grafo, in basso la traiettoria ottima fornita. . . 25

16 Soluzione sub-ottima di primo tentativo: in alto i vertici del grafo, in basso la traiettoria ottima fornita. . . 26

17 Soluzione sub-ottima di secondo tentativo: in alto i vertici del grafo, in basso la traiettoria ottima fornita. . . 27

18 Soluzione sub-ottima di terzo tentativo: in alto i vertici del grafo, in basso la traiettoria ottima fornita. . . 28

19 Confronto tra soluzione ottima e subottima . . . 29

20 Output del metodo iterativo eseguito in Matlab. . . 30

21 Layer di localizzazione del software Tazio. La localizzazione SLAM utilizza le informazioni dei sensori Lidar, sensore ottico e unit`a IMU per ottenere una prima localizzazione approssima- tiva della vettura. Questa `e utilizzata assieme alle misure del sensore ottico e dell’unit`a IMU e ai controlli imposti al passo precedente uacc/bra(t) dal filtro di Kalman esteso per ottenere una stima del vettore di stato completo al passo corrente. . . . 35

22 Localizzazione valutata con L’EKF senza feedback da SLAM . 41 23 Errore di localizzazione dell’EKF senza feedback da SLAM . . 41

24 Errore della localizzazione SLAM fornita all’EKF . . . 42

25 Localizzazione valutata con L’EKF con feedback SLAM . . . . 42

26 Errore di localizzazione dell’EKF con feedback da SLAM . . . 43

27 Traiettoria di riferimento. . . 45

28 Rappresentazione delle variabili di stato usate per il controllo. 46 29 Layer di controllo del software Tazio. Le misure ymeas(t) as- sieme ai controlli valutati al passo precedente sono usati dal- l’EKF per ottenere lo stato stimato del sistema ˆx(t). Questo `e usato sia dall’RHG assieme alla pref(τ ) per valutare la traiet- toria desiderata lungo l’orizzonte di predizione phor(ˆτ ), che dal controllore assieme alla stessa phor(ˆτ ) per valutare i controlli futuri u(t). . . 47

30 Porzione di traiettoria fornita al controllore dal RHG . . . 48

31 Geometria Pure Pursuit. . . 49

32 Il fenomeno del cutting corner nel Pure Pursuit. . . 50

33 Il controllo predittivo [13]. . . 51

34 Esempio di localizzazione delle variabili libere nell’orizzonte di predizione nel caso P = 16, M = 3, TMPC = 1. In A: i riferi- menti. In B: le 3 variabili libere di controllo sono distribuite lungo l’orizzonte a passo TControl = P TMPC/(M −1) = 8. In C: la sequenza di 16 controlli uk necessari per valutare la predi- zione `e ottenuta per interpolazione lineare. In D: le uscite del sistema lungo l’orizzonte sono predette simulando il modello a partire dallo stato corrente x0 e imponendo lungo l’orizzonte i controlli uk. . . 54

35 Traiettoria seguita da Tazio con controllore Pure Pursuit . . . 59

36 Traiettoria seguita da Tazio con controllore MPC . . . 59

37 Errore offtrack con controllore Pure Pursuit . . . 60

38 Errore offtrack con controllore MPC . . . 60

39 Errore di inseguimento di velocit`a con controllore Pure Pursuit 61 40 Errore di inseguimento di velocit`a con controllore MPC . . . . 62

41 Traiettoria seguita da Tazio con controllore MPC . . . 63

42 Errore offtrack con controllore MPC . . . 63

43 Errore di inseguimento di velocit`a con controllore MPC . . . . 64

44 Errore di inseguimento di accelerazione longitudianale con con- trollore MPC . . . 64

Elenco delle tabelle

1 Risultati ottenuti per ricerca esaustiva. . . 30 2 Risultati ottenuti per ricerca progressiva. . . 31

Documenti correlati