Academic Company Events NI Developer Zone Support Solutions Products & Services Contact NI MyNI

Esecuzione Real-Time di modelli sviluppati da FIAT Auto: dalla simulazione Altia-Simulink all’Hardware In the Loop (HIL) con schede National Instruments e NI LabVIEW Real-Time

  Print

Interfaccia Cruise

Author(s):
E. Sivera - FIAT AUTO
D. Gaglione - TEORESI
T. Marino - FIAT AUTO
P. Ghirardello - TEORESI

Industry:
Automotive

Products:
Simulation Interface Toolkit, PXI/CompactPCI, LabVIEW, Real-Time Module

The Challenge:
Trasformare modelli di simulazione per il settore Automotive con interfacce Altia in modelli eseguibili in ambiente Real Time per i test sui componenti reali.

The Solution:
Trasformare un modello di simulazione originariamente realizzato in Simulink utilizzando il SIT per ottenere un sistema aperto, funzionale, rapidamente interfacciabile con hardware I/O e funzionante in Real-Time. Il gruppo d’ingegneria di Teoresi grazie ai tools per la programmazione grafica e alle competenze maturate nei settori Automotive ed Aerospace ha sviluppato una procedura compatta e funzionale per il porting di modelli di simulazione sviluppati in Simulink, con integrate interfacce HMI sviluppate con Altia, direttamente in ambiente NI LabVIEW Real Time. L’articolo riassume tale metodologia applicata a due modelli di simulazione realizzati dal gruppo Software Engineering E&D-EENAI-EA di Fiat Auto.

"L’impiego dei tool National Instruments ha permesso di ottenere un sistema più affidabile e veloce con la possibilità d’integrazione del sistema con HW per I/O utilizzando sistemi PXI o CompactRIO"

Negli ultimi anni Teoresi è stata più volte coinvolta in progetti che prevedevano l’impiego di modelli matematici sviluppati in Simulink, in ambiente Real Time. Tutti i modelli presentavano caratteristiche simili, come l’utilizzo d’interfacce HMI sviluppate con Altia e di logiche di controllo sviluppate con StateFlow. L’ultimo progetto, presentato al Forum Aerospaziale NI 2005, era finalizzato al porting da ambiente Simulink a LabVIEW RT del modello a 6DOF di un UAV e del sistema di controllo della Ground Control Station che Teoresi ha sviluppato per il Dipartimento di Ingegneria Aerospaziale del Politecnico di Torino. Proprio in quell’occasione il gruppo d’ingegneria di Teoresi ha sviluppato una procedura semi-automatica per il porting del modello Simulink in modo da velocizzare la creazione dei modelli separati per la generazione di codice verso l’HW NI Real Time e per la gestione dei segnali di collegamento con l’interfaccia grafica di Altia.
Allo stesso modo Teoresi ha applicato questa procedura su due modelli utilizzati dal gruppo Software Engineering E&D-EENAI-EA di FIAT Auto per la simulazione delle logiche funzionali delle centraline per il Cruise Control e per gli Alza Cristalli Elettrici. Eccone una breve descrizione delle funzionalità.

Cruise Control
Il Cruise Control è un dispositivo di assistenza alla guida, a controllo elettronico che consente di mantenere automaticamente la velocità di crociera impostata dall’utente indipendentemente dalle variazioni delle condizioni di marcia.
L’utente tramite dei comandi può impostare la velocità di crociera e attivare o disattivare la funzione “cruise control”; una spia sul quadro, indica lo stato di funzionamento del sistema.
Il guidatore può sempre disabilitare momentaneamente il cruise control, semplicemente azionando freno o frizione; la pressione del pulsante “res” (resume) permetterà successivamente di riportarsi nelle condizioni di velocità precedentemente impostate in memoria.
Il cruise control non è invece disabilitato da una richiesta di accelerazione del conducente (es. per un sorpasso) ma riporta automaticamente la vettura alla velocità impostata non appena l’acceleratore viene rilasciato.

Alza Cristalli
La gestione elettronica del cristallo permette all’utente, tramite un’opportuna pressione dei comandi, di effettuare una chiusura/apertura a scatti o in maniera continua (automatica) del cristallo.
Gli alza cristalli sono provvisti di un sistema di sicurezza in grado di riconoscere la presenza di un ostacolo durante la chiusura del cristallo; al verificarsi di tale evento il sistema interrompe ed inverte immediatamente la movimentazione del finestrino.
Nel caso in cui il sistema di sicurezza intervenga per cinque volte consecutive nell’intervallo di un minuto, o se viene rilevata un’avaria nel sistema, quest’ultimo entra in una modalità di recovery caratterizzata da un movimento a step del finestrino in fase di chiusura. Per ripristinare il corretto funzionamento del sistema l’utente dovrà effettuare l’apertura del finestrino.

Esecuzione dei modelli su HW Real-Time di National Instruments
Le interfacce sono state realizzate utilizzando Altia, un tool di programmazione grafica per HMI, con il quale sono stati ricreati il cruscotto dell’autovettura con i comandi del Cruise Control ed i controlli delle portiere per la gestione del sistema alza cristalli.
I modelli di simulazione richiedono, per esigenze operative di test sui sistemi reali, la necessità di essere eseguiti in real-time. Il modello di simulazione originale è stato realizzato in Simulink con interfacciamento ad Altia tramite appositi blocchi di connection. Tuttavia il funzionamento del sistema in ambiente Matlab non garantisce il real-time ed è stato quindi necessario implementare il modello per il suo utilizzo in ambiente LabVIEW Real Time.
Il tool National Instruments più efficace e semplice da utilizzare per trasformare il modello realizzato in Simulink in un modello controllabile da LabVIEW è NI SIT, Simulation Interface Toolkit.

Questo strumento permette di regolare i parametri e leggere i segnali di un modello Simulink, di effettuare la conversione di tale modello in una DLL (Dynamic Link Library), e di eseguirne in seguito la simulazione su un target Real Time senza più alcun legame con Simulink.
Due componenti del SIT si occupano di stabilire le connessioni Matlab-LabVIEW: il SIT Server si occupa di stabilire il link tra il modello in ambiente Simulink o sul target RT e il VI LabView presente sull’Host, mentre il SIT Connection Manager permette di impostare i parametri/segnali da modificare/monitorare.
Il modello Simulink è stato convertito in una DLL tramite il Real-Time Workshop di Matlab con una serie automatica di passaggi. Il modello originale è stato dapprima trasformato in codice C e poi compilato in una DLL tramite Microsoft Visual C++. Questa DLL rappresenta il modello Simulink in tutte le sue proprietà ma non ne è più dipendente per la sua esecuzione e viene gestita dal modulo Real Time di LabVIEW.
Durante il processo di creazione il SIT si occupa di generare in automatico un Driver VI che viene utilizzato per lo scambio di dati tra l’interfaccia e il modello compilato. La DLL ottenuta dal modello Simulink e il Driver VI vengono scaricati quindi sul target RT per l’esecuzione della simulazione/controllo. Un’apposita interfaccia LabVIEW garantisce il continuo scambio di dati tra il modello Real Time e l’interfaccia realizzata con Altia.
Il vantaggio che l’ambiente LabVIEW, ed in particolare il SIT, permettono di ottenere è quello di poter connettere il modello Simulink compilato e operante in RT con una vasta serie di hardware I/O.
In conclusione, l’impiego dei tool National Instruments ha permesso di ottenere un sistema più affidabile e veloce con la possibilità d’integrazione del sistema con HW per I/O utilizzando sistemi PXI o CompactRIO. In particolare l’impiego di LabVIEW ha portato in breve tempo ad un sistema aperto, facilmente integrabile con tool esterni e codice C partendo da un unico modello Altia-Simulink.

I marchi citati nell’articolo sono di proprietà dei rispettivi produttori.
Altia è un marchio registrato Altia Inc.
Matlab, Simulink e Real Time Workshop sono marchi registrati The MathWorks Inc.
NI LabVIEW e Simulation Interface Toolkit sono marchi registrati National Instruments

Browse All Case Studies »

  Print