Model-Based-Design in F1 - de.mathworks.com fileMeccanica 1985 - Accensione Elettronica - Iniezione...

Preview:

Citation preview

Direzione Gestione Sportiva -

Elettronica

Model-Based-Design in F1

Team-development e generazione codice in

ambienti con un breve time-to-market

Riccardo Lodini

Indice

• Ferrari GES “Scuderia”

• La storia dell’elettronica in

F1

• Principali controlli SW

utilizzati in vettura

• Breve Time-To-Market

• Model Based Desing

• Team Collaboration

Direzione Gestione Sportiva -

Elettronica

Direzione Gestione Sportiva -

Elettronica

Ferrari GES “Scuderia”

Ferrari prende parte

al GP di Monaco il 21

Maggio del 1950, con

la 125 F1 guidata da

Alberto Ascari.

Ascari terminerà il

GP al secondo posto.

A tutt’oggi Ferrari

partecipa al

campionato di F1

(stagione 2016)

Direzione Gestione Sportiva -

Elettronica

La storia dell’elettronica in F1

1976 prime

applicazioni:

- Accensione

Capacitiva

- Iniezione Meccanica

- Strumentazione

Meccanica

1985

- Accensione

Elettronica

- Iniezione

Elettronica

1989

- Controllo Cambio e

Frizione

Direzione Gestione Sportiva -

Elettronica

1994- Divieto di ogni “driver’s aid”

Successivamente ulteriori restrizioni sono state applicate negli anni :- NO TRACTION CONTROL- No multidownshift, no launch control- No telemetria bidirezionali- No sospensioni attive, no ABS- No brake balance automatico- No electronic power steering- Single ECU per controllo veicolo

1993

- Traction Control

- Drive by Wire

- Sospsensioni

attive

La storia dell’elettronica in F1

ICE/ERS control software

Direzione Gestione Sportiva -

Elettronica

Principali controlli SW utilizzati in

vettura

Direzione Gestione Sportiva -

Elettronica

Chassis control software

Principali controlli SW utilizzati in

vettura

Direzione Gestione Sportiva -

Elettronica

The race starts at two o’clock

• Non c’è alcuna possibilità di ritardare la

partenza di una gara: il countdown è

impossibile da fermare.

• Il SW deve essere completato entro determinate

dead-line a regolamento

• Ci sono «time-gates» fissati per commit, debug

e validazioni

Direzione Gestione Sportiva -

Elettronica

Breve Time-To-Market

Direzione Gestione Sportiva -

Elettronica

Breve Time-To-Market

Direzione Gestione Sportiva -

Elettronica

Model Based Design e Team Collaboration

La drastica riduzione dei test in pista, unita

alla necessità di uno sviluppo rapido ha permesso

l’introduzione del MDB in tutti i suoi aspetti

che vanno dal «rapid prototyping» alla «code

generation», dalla «Team-collaboration» fino

all’utilizzo degli strumenti per la verifica e

validazione.

Direzione Gestione Sportiva -

Elettronica

Model Based Design

Analisi del

controlloAnalisi del

controllo

Direzione Gestione Sportiva -

Elettronica

Model Based Design

Analisi del

controllo

• Analisi dei requisiti richiesti dalla pista e/o

dai control engineer

• Analisi della legalità delle richieste

• Impatto a livello dei vari applicativi

coinvolti

• Determinazione delle fasi di debug e delle

rispettive necessità dei test bench

Direzione Gestione Sportiva -

Elettronica

Model Based Design

Implementazione

del modello

Implementazione del

modello

Direzione Gestione Sportiva -

Elettronica

Model Based Design

Implementazione del

modello

• Prima implementazione del layout di controllo

• Definizione delle variabili osservabili

(Telemetry purpose)

• Definizione dei parametri configurabili

(programmabili dall’utente)

• Definizione del Test Harness e preparazione

dell’ambiente di sviluppo

Direzione Gestione Sportiva -

Elettronica

Model Based Design

Simulazione

della strategia

Simulazione della

strategia

Direzione Gestione Sportiva -

Elettronica

Model Based Design

Simulazione della

strategia

• Preparazione degli stimoli del “Draft Model”

direttamente dalla telemetria

• Pre-Calibrazione dei parametri di

configurazione in ottica del successivo debug

• Simulazione in ambiente Matlab, Simulink e

Stateflow del Test Harness precedentemente

configurato

• Analisi dei risultati e reiterazione del

processo mediante valutazione dei requisiti

Direzione Gestione Sportiva -

Elettronica

Model Based Design

Generazione

codice

Direzione Gestione Sportiva -

Elettronica

Model Based Design

Generazione

codice

• Sistema automatico per la gestione del Build

• Gestione di una «build factory» interna per

l’equivalenza della generazione di codice

all’interno del team

• Analisi combinata (code review) di alcune parti

di codice generato

• Gestione del processo di build e

personalizzazione del post processing

• Preparazione dei file a2l e finalizzazione

automatica degli update per i tool di

programmazione delle ECUs

Direzione Gestione Sportiva -

Elettronica

Model Based Design

Debug on TargetDebug on Target

Direzione Gestione Sportiva -

Elettronica

Model Based Design

• Simulatori ad-hoc a stimolo controllato

• Play- back di telemetria

• Test pattern specifici in open loop

• Simulatori HIL completi con modellistica

aggiornata dagli enti aziendali (Motore,

Veicolo, Cambio e Aerodinamica)

• Gestione automatica delle prove

Debug on Target

Direzione Gestione Sportiva -

Elettronica

Model Based Design

Validation &

Verification

Validation &

Verification

Direzione Gestione Sportiva -

Elettronica

Model Based Design

Validation &

Verification

• Introduzione della tracciatura dei requisiti

all’interno del modello

• Pesante utilizzo di regole di coding (Model

Advisor) per la gestione delle procedure

interne

• Riduzione della fase di debug e dei tempi di

compilazione delle releases

• Interfacciamento con i tool di pianificazione

aziendale per la tracciatura delle features

(previsione di performance)

• Automazione del processo di test e debug in

coda alle emissioni dei binari

Direzione Gestione Sportiva -

Elettronica

Team Collaboration

Team Collaboration

Direzione Gestione Sportiva -

Elettronica

• Rapida risposta ai problemi pista

• Modularizzazione delle funzioni SW

• Introduzione dei Collaboration Tools

• Necessità di automatizzare le fasi procedurali

per la «messa in pista»

• Utilizzo del Model Advisor

Team Collaboration

• Gestione delle differenze con

il Repository direttamente da

Simulink Project.

• Controllo diretto delle

differenze da Simulink Report

Generator

Direzione Gestione Sportiva -

Elettronica

• Project Management

• Gestione delle differenti

interfacce

• Assemblaggio automatico

dei modelli finali

La sempre più completa integrazione di Matlab e Simulink

con i VCS e la sempre più crescente potenzialità dello

scripting Matlab ci ha permesso di aumentare

l’efficienza di gestione dell’intero progetto sorgente,

e della sua configurazione, direttamente dall’ambiente

di sviluppo Mathworks.

Team Collaboration

• Build History

• Notifiche di

rilascio

automatiche

• Statistiche

personalizzate

intime al codice

prodotto

Direzione Gestione Sportiva -

Elettronica

• Gestione dinamica delle

note al codice

• Tracciatura delle

anomalie

• Creazione automatica dei

documenti di rilascio

Introduzione diretta all’interno di Matlab, Simulink e

Stateflow dei link (e relativa getione automatica) dei

tool di collaborazione utilizzati dal nostro team di

sviluppo.

Direzione Gestione Sportiva -

Elettronica

Sfide Future

• Introduzione completa della Continuous

Integration

• Automatizzazione dei regression test

• Integrazione del Big Data mining nel processo

di prima validazione del SW

Grazie!

Direzione Gestione Sportiva -

Elettronica

Direzione Gestione Sportiva -

Elettronica

Flusso di processo per la generazione

codice

Direzione Gestione Sportiva -

Elettronica

Per ogni stagione

• Circa 300 versioni di codice embedded• Più di 1000 richieste di modifiche SW• Un paio di bachi “triviali”• Una decina di bachi concettuali (spec misunderstanding)

Un po’ di numeri

Recommended