Convertitore di parametri CAN bus dei veicoli a segnali analogici per test su banchi a rulli

  Print Print

"Grazie al sistema embedded NI Single-Board RIO, è stato realizzato un dispositivo autonomo capace di individuare la tipologia del traffico CAN presente sul bus."

- Stefano Vianelli, EURINS

The Challenge:
Fornire al sistema di acquisizione di banchi a rulli i dati provenienti dal CAN bus dei veicoli in fase di test in assenza di un'interfaccia hardware e software dedicata.

The Solution:
Grazie al sistema embedded NI Single-Board RIO, è stato realizzato un dispositivo autonomo capace di individuare la tipologia del traffico CAN presente sul bus, intercettare e decodificare i parametri scelti e generare i segnali analogici corrispondenti.

Author(s):
Stefano Vianelli - EURINS

Un banco a rulli è un sistema attraverso il quale un veicolo può essere sottoposto a prove e misure per definirne le prestazioni, l'affidabilità,le  emissioni inquinanti, le vibrazioni e tutte le caratteristiche legate al funzionamento simulando condizioni più o meno realistiche rispetto al suo utilizzo in strada. Alcune misure richiedono un’analisi matematica  per ricavare i contributi dei vari elementi nella catena cinematica, mentre altre dipendono dall'interazione del veicolo con i sensori di misura  del banco.
La fase di avviamento motore, molto importante nell'analisi dinamica dei parametri legati alla combustione, è difficilmente percepibile utilizzando misure di tipo vibrazionale e comunque richiede calibrazioni specifiche che al massimo riescono a identificare il momento di motore già acceso.

Presso il JRC (Joint Research Center) di Ispra (VA), il Centro Comune di Ricerca dell'Unione Europea dove, tra gli altri, sono presenti i laboratori VELA per lo studio di tutti i tipi di veicoli presenti sulle strade   EURINS è stata incaricata di fornire una soluzione per superare questo approccio "storico" in tre banchi a rulli già operativi; avvalendosi della propria esperienza nell'acquisizione dei dati dalle centraline elettroniche in applicazioni a bordo veicolo EURINS ha sviluppato un dispositivo che permettesse al banco di "misurare" direttamente i parametri disponibili nel CAN bus ovvero nella rete che collega le centraline nel veicolo, con il vantaggio di disporre in tempo reale delle medesime grandezze che il veicolo stesso sta utilizzando per il proprio funzionamento.

Due vantaggi sono immediatamente evidenti: non è necessario replicare sensori già presenti nel veicolo ed è sufficiente alimentare il CAN bus (ovvero "dare chiave") per avere i dati disponibili anche prima che il motore venga avviato e quindi anche durante la fase di "cranking"; è intuitivo estendere le prove anche per i veicoli che non basano il proprio funzionamento esclusivamente sul motore termico, come per esempio quelli ibridi ed elettrici, con i quali il banco a rulli "standard" faticherebbe a dare la giusta dimensione alle misure fatte senza avvalersi anche delle informazioni di come stanno operando le centraline.

Non essendo dotati di interfacce hardware e software dedicate alla gestione di messaggi e protocolli su CAN bus, i sistemi di acquisizione dei banchi a rulli sono stati collegati ciascuno a un dispositivo autonomo, sviluppato da EURINS, basato sulla scheda NI Single-Board RIO opportunamente installata all'interno di un contenitore dotato di alimentatore, cablaggi e connettori; questa scheda, programmabile  con NI LabVIEW Real Time e NI LabVIEWFPGA, si distingue per la disponibilità, tra le altre, delle seguenti risorse:
- una porta CAN High Speed
- quattro uscite analogiche ± 10 V a 16 bit
- una porta seriale RS232.

Il software è stato strutturato in processi capaci di gestire autonomamente il flusso dei dati e la generazione dei relativi segnali analogici con la possibilità di scegliere tra i seguenti protocolli e strutture da decodificare su CAN bus:
- OBD (On Board Diagnosis), tipicamente per automobili e autocarri leggeri
- FMS (Fleet Management System), tipicamente per camion, autobus e pullman
- DBC (file di descrizione dei messaggi) per flussi CAN non vincolati ad alcun protocollo.

Per i protocolli OBD e FMS i parametri (giri motore, percentuale di acceleratore, velocità delle ruote e molti altri) sono identificabili secondo regole standard all'interno dei flussi dati CAN e quindi automaticamente abbinabili alle uscite analogiche che sono state scelte. Nel caso del file di descrizione DBC, invece, è necessario specificare i dettagli dei parametri da decodificare e abbinare alle uscite analogiche.

Quando il sistema viene alimentato inizia la ricerca di un eventuale traffico di messaggi sul CAN bus che sia coerente con la struttura di uno dei protocolli, provando a "stimolare" il CAN bus con messaggi di inizio comunicazione alternando i diversi formati e i baud rates potenzialmente utilizzabili, analizzando poi le eventuali risposte per definire le "regole" con le quali lo specifico veicolo può comunicare. Una volta stabilita la comunicazione i parametri scelti vengono decodificati e assegnati alleuscite analogiche dedicate, per esempio i giri motore acquisiti tra 0 e 10000 rpm pilotano la generazione di un segnale tra 0 e 10 V.
Per verificare il funzionamento del sistema è possibile collegare la porta seriale RS232 al computer dove, grazie a un programma come Hyper Terminal, è possibile vedere la sequenza dei messaggi di diagnostica che indicano l'attuale configurazione e i valori sia decodificati che generati.

Il sistema è capace di riconoscere la presenza nello stesso CAN bus di un altro nodo attivo nella gestione dello stesso protocollo, tipicamente un altro programma di acquisizione dati indipendente. In questo caso il sistema commuta automaticamente in modalità passiva ovvero permette all'altro programma di funzionare intercettando e usando lo stesso flusso di messaggi dove presente, per poi tornare in modalità autonoma.

Le uscite analogiche del sistema vengono collegate ad altrettanti ingressi analogici del banco a rulli, configurabili secondo scale di corrispondenza tra i segnali analogici misurati e le grandezze necessarie. Il banco può così acquisire in tempo reale una selezione dei parametri disponibili sul CAN bus del veicolo in sincronia con le misure fatte mediante i propri sensori.

RISULTATI
I tre banchi a rulli presso il JRC possono acquisire una selezione dei parametri presenti nel CAN bus in maniera rapida e affidabile.Relativamente ai giri del motore, non è più necessaria alcuna fase di calibrazione e le misure sono possibili sia prima che durante l'avviamento del motore.

Author Information:
Stefano Vianelli
EURINS

Bookmark and Share


Explore the NI Developer Community

Discover and collaborate on the latest example code and tutorials with a worldwide community of engineers and scientists.

‌Check‌ out‌ the‌ NI‌ Community


Who is National Instruments?

National Instruments provides a graphical system design platform for test, control, and embedded design applications that is transforming the way engineers and scientists design, prototype, and deploy systems.

‌Learn‌ more‌ about‌ NI