PoliMi Motorcycle Factory
Esperienza triennale (1° - 3° anno accademico) all'interno della divisione Firmware, contribuendo alla progettazione e realizzazione del software del prototipo da competizione elettrico per il ciclo 23-25.
Attività Principali & Architettura
Migrazione della codebase C → C++
Refactoring strutturale dell'intera codebase legacy, migrando da un paradigma procedurale C a un'architettura a oggetti C++ moderna. Progettazione di interfacce astratte e classi per garantire modularità e massima riutilizzabilità del codice.
Sviluppo Firmware per le Schede di Bordo
Scrittura del nuovo firmware per le schede elettroniche sotto citate del prototipo 23-25
Scheda Sensori
Campionamento ad alta frequenza dei sensori analogici e digitali di bordo (sospensioni, temperature, ...) e invio periodico su linea CAN.
ECU
Unità centrale di controllo veicolo: gestione degli stati di sicurezza, monitoraggio degli errori e gestione dell'inverter tramite CAN.
Scheda IMU-GPS
Acquisizione delle dinamiche veicolo (accelerazioni, rollio, beccheggio) e invio dei parametri via CAN.
Scheda Aerofreni
Controllo degli aerofreni tramite PWM in fase di frenata, sulla base dei dati ricevuti via CAN.
Submodule DBC CAN Parser & Generatore C++
Sviluppo di un submodule condiviso per tutto il reparto firmware che, tramite uno script Python dedicato, esegue il parsing automatico dei file di rete .dbc generando classi C++ tipizzate pronte all'uso.