Vai al contenuto

Formula Student AI 2025

Pubblicato:

Sebbene non sia mai stato particolarmente interessato ai motori, a differenza di un sacco di persone che conosco, ultimamente ho l’impressione che il mondo dell’automotive abbia una strana calamita. Una attrattiva inspiegabile che fa si che mi ritrovi sempre più spesso coinvolto in eventi legati a questo settore. È stato questo il caso della Formula Student AI 2025, un progetto che ho iniziato a seguire ormai qualche mese fa, dando seguito ad un annuncio che ho notato nell’ascensore dello USB. L’obiettivo di quella che si configura come una competizione più o meno amichevole fra i team di moltissime università inglesi e non solo è quello di realizzare un sistema autonomo per il controllo di un veicolo da corsa. Il successo sarebbe poi stato determinato da una serie di prove che avrebbero messo alla prova la capacità del veicolo di navigare una serie di circuiti che avrebbero analizzato ciascuno un aspetto ben preciso del sistema (controllo, velocità, utilizzo dei sensori, ecc…). In realtà l’intero evento si divide in due grosse aree. La nostra, di recente introduzione, legata ai sistemi autonomi, e quella meccanica più classica, in cui i team costruiscono i loro veicoli per poi vederli gareggiare fra di loro in una sfida di ingegneria e destrezza al volante.

La preparazione

Partiamo dall’aspetto peggiore. Con il tempo limitatissimo a mia disposizione, ho dovuto accontentarmi di centellinare qualche ora a settimana da dedicare ai miei contributi al progetto, che si sono tradotti perlopiù in un processo di containerizzazione dei tool e simulatori che avremmo usato, nonché la generica architettura basata su ROS che avremmo usato per controllare la macchina. Avendo poco tempo ogni Lunedì, dopo il consueto settimanale incontro con il mio supervisor, i progressi sono andati un po’ a rilento, soprattutto a causa di alcune difficoltà riscontrate con l’ottenere i dati nudi e crudi dai sensori all’interno della simulazione, che abbiamo affidato all’incredibilmente ben strutturato progetto nato in seno all’università di Edimburgo, eufs_sim. Difficoltà che mi hanno spinto ad esplorare altre alternative, come Carla, che abbiamo scartato piuttosto in fretta, e il simulatore FSDS. Dopo aver perso molto più tempo del previsto a adattare il secondo ai nostri scopi, ho scoperto che i miei sforzi sono stati completamente vani a causa della decisione, che condivido al 100%, di tornare ad usare eufs_sim, chiaramente superiore e più adatto ai nostri scopi.
Mi sarebbe piaciuto essere molto più presente soprattutto negli ultimi giorni prima della competizione, ma a causa della mia permanenza piuttosto prolungata in Sicilia, mi sono limitato a lavorare da remoto.

Il viaggio

Non so quanto mi convenga ammetterlo, ma fino a pochi giorni prima ero convinto che la competizione si sarebbe tenuta ad Edimburgo. Quindi anticipavo ben poco dispendio di tempo ed energie per raggiungere il luogo preposto e poi tornare a casa il prima possibile. Invece la giornata di Mercoledì 16 ha avuto inizio con una lunga trasferta di 4 ore da Newcastle a Silverstone, che avrebbe ospitato l’evento. Come mi sarei aspettato, il viaggio mi ha spossato parecchio, nonostante l’abilità del nostro pilota, Finlay, del gruppo di ingegneria meccanica, e la compagnia di DongXu, compagno di squadra.
Ammetto che mi sono sentito un po’ fuori posto a trovarmi in un luogo che molti fan di sport automobilistici e motociclistici desiderano ardentemente visitare quando io non ho alcun interesse né conoscenza nel settore.

Formula Student AI

Dato lo schedule rigido, non c’è stato tempo per i convenevoli. Dopo esserci rapidamente riuniti con il gruppo, inizialmente composto da soli 4 membri, ci siamo fiondati a prenotare uno slot per provare il nostro sistema sui simulatori che ci erano stati messi a disposizione.
È anche il caso di sottolineare adesso che le aspettative erano davvero basse. L’anno scorso il team di Newcastle si è classificato ultimo, potendo vantare pochi se non nessun risultato pratico. Quindi l’obiettivo, per nulla ambizioso ma anche per nulla scontato, era quello di fare di meglio. Del resto, andare peggio era impossibile.

Can’t CAN

I primi problemi che abbiamo riscontrato erano legati al sistema di comunicazione fra la macchina e i nostri nodi ROS tramite bus CAN. Qualcosa non funzionava come avrebbe dovuto. Armati di santa pazienza, ci siamo messi a debuggare il problema, fino ad arrenderci e reinstallare i driver da sorgente. Fortunatamente questa semplice operazione, costataci un bel po’ di mal di testa e un giorno di lavoro, ci ha consentito di essere pronti per la giornata successiva.

I nostri primi tentativi di comprendere come interfacciarci alla macchina
I nostri primi tentativi di comprendere come interfacciarci alla macchina

Campeggio inglese

Questa è stata anche la mia prima esperienza di campeggio vero e proprio, in quanto non ci è stato fornito un alloggio ma una tenda e uno spazio dove passare la notte. Grazie alla mia caratteristica adattabilità, e al fatto che fossi piuttosto stanco dopo una lunga giornata, non è stato difficile farmi una necessaria bella dormita e trovarmi pronto il giorno dopo per una bella doccia fredda, rendendomi quindi conto di non essermi attrezzato per bene, senza ciabatte da mare o costume. Una lezione che sicuramente mi tornerà utile in futuro. L’unica cosa davvero traumatica erano i bagni, anche piuttosto puliti a dire la verità considerata la quantità di persone che li ha utilizzati, ma con un odore chimico insopportabile.

Static tests

Il secondo giorno è stato dedicato ai test statici, in cui avremmo dovuto caricare il nostro software su un veicolo a noi assegnato e fargli eseguire una serie di operazioni, dimostrando il nostro controllo su di esso, Poiché rialzato e con le ruote sollevate, non ci sarebbe stato il pericolo di investire qualcuno o farlo spiattellare contro il primo muro disponibile. Questa fase preliminare, all’apparenza piuttosto semplice, si è rivelata, ancora una volta, estremamente problematica. Inizialmente non riuscivamo a far funzionare l’EBS, per poi scoprire fosse un errore del simulatore. Poi abbiamo perso un sacco di tempo cercando di calibrare gli input da dare alla macchina per raggiungere la velocità desiderata, rendendoci presto conto della necessità di implementare qualche tipo di controller degno di questo nome e delle limitazioni imposte dalla piattaforma ROS che stavamo utilizzando, non abbastanza a basso livello. Come se non bastasse, una delle due ruote posteriori andava troppo veloce mentre l’altra ruotava troppo lentamente, spesso rimanendo quasi ferma.
Abbiamo speso l’intera giornata a cercare di risolvere i vari problemi, implementando un rapido PID controller, ma senza sufficiente tuning, non siamo riusciti a farlo funzionare correttamente, rimandando quindi alla giornata successiva.

Mezzo gaudio

Il terzo giorno ci siamo precipitati a prenotare i nostri test statici. Con il tempo estremamente limitato e consci che questa sarebbe stata la nostra ultima occasione, abbiamo provato a dare il meglio per far superare almeno questa prima tipologia di prova. Purtroppo solo uno dei due test è stato superato con successo, mentre per il secondo non siamo riusciti a produrre il movimento corretto nelle ruote, possibilmente sempre a causa di un controller non ben calibrato.
Non abbiamo nemmeno avuto il tempo di rattristirci, in quanto nel primo pomeriggio è stata la volta delle presentazioni, attraverso le quali abbiamo dovuto esporre ad un pannello di giudici il lavoro che abbiamo svolto, inclusi i simulatori e l’architettura utilizzata, e persino delle valutazioni di tipo etico ed economico sui possibili risvolti di un progetto in questo ambito. Tutte cose in cui faccio davvero schifo, ma fortunatamente Dan è stato bravissimo, occupandosi di gran parte delle slides e presentandole magistralmente. I giudici non sono rimasti troppo colpiti dalla nostra evidente mancanza di preparazione tecnica, ma se non altro ci hanno preso piuttosto in simpatia. Dopo aver rotto il ghiaccio, ci hanno anche dato un sacco di feedback utile (simulatori da usare, standard industriali) che sarebbe assolutamente interessante implementare il prossimo anno.

Il team di AI al completo. Da sinistra a destra: Ernesto Casablanca, Andy Roberts, Davis Thorne, Dan Turner e 东旭
Il team di AI al completo. Da sinistra a destra: Ernesto Casablanca, Andy Roberts, Davis Thorne, Dan Turner e 东旭

Ritorno

Dopo aver speso un po’ di tempo a fare un giro fra le tende degli sponsor, rimediando qualche maglietta e qualche gadget dai ragazzi di Matlab (e sì, e non me ne pento nemmeno troppo), abbiamo fatto ritorno a Newcastle, mentre la competizione sarebbe proseguita per altri due giorni, con le prove dinamiche e i team di meccanica.

Conclusione

Immagino che, quando si parla di definire un qualcosa un successo o un fallimento, le aspettative siano tutto. Le nostre erano davvero basse. Forse anche troppo. E in questo senso, non siamo andati troppo male. Se però analizziamo il risultato in maniera più oggettiva, la situazione è piuttosto drammatica. Non riuscire a superare nemmeno entrambe le prove pratiche è indice di una immaturità così evidente da non poter essere ignorata. D’altra parte, però, nessuno (e, per estensione, nessun team) nasce con la scienza infusa. Bisogna partire da qualche parte per poter migliorare. COnsidererei quindi questa esperienza un primo passo. Il necessario momento in cui si prende coscienza di ciò che è andato bene, ciò che è andato male, e si usa l’esperienza acquisita per fare di meglio alla prossima occasione. Stavolta si spera che non ci sia un completo ricambio di tutti i partecipanti, ma che le conoscenze sviluppate siano utilizzate per dare una base solida allo sforzo del 2026. Anche i feedback ricevuti saranno senza dubbio fondamentali in questo sforzo.
Ad essere sincero, però, ciò che credo sia mancato più di ogni altra cosa, penso sia stato l’interesse. Un team di 5 persone scarse senza le risorse adeguate non può sperare avere la performance pari ad un folto team di esperti. Purtroppo è un fenomeno che ho riscontrato spesso in questo ambito è la poca volontà di mettersi in gioco, il continuo rimandare e la preferenza a presentare un comodo fumo ad un arduo, concreto, arrosto. Non ne posso fare la colpa a nessuno, io per primo non sono stato il più presente e ognuno ha i propri impegni, ma purtroppo questi sono i risultati.
Devo però fare una menzione d’onore ad Andy, che si è impegnato tantissimo tutto il tempo per tenere in piedi il progetto, occupandosi di ogni singolo aspetto, dalla programmazione, all’organizzazione, alla burocrazia e alla preparazione delle presentazioni. Se abbiamo fatto qualcosa, sebbene poco, è sicuramente merito suo.

Gadget

Il bottino ottenuto dal mio rapido giro fra gli stand degli sponsor non è assolutamente paragonabile all’occasione che ho avuto di conoscere un po’ meglio gli use case di molte delle tecnologie presentate direttamente dalle persone che ci lavorano. Mi sono trattenuto soprattutto nello stand allestito da MathWorks, dove ho avuto modo di vedere un po’ più da vicino le potenzialità di Simulink applicate al mondo dell’automotive. Ho ricevuto anche un magnete ed un cappellino brandizzati, di cui mi dovrò sbarazzare il prima possibile, pena la mia reputazione.

Diario di viaggio