Vehicle Network Toolbox

 

Vehicle Network Toolbox

Comunicazioni con reti veicolari usando i protocolli CAN, J1939 e XCP

Inizia ora:

Invio e ricezione di messaggi CAN e CAN FD da MATLAB e Simulink

Configurazione di canali CAN e CAN FD

Le funzioni per i canali CAN di MATLAB e i blocchi di configurazione CAN di Simulink consentono di definire un collegamento all’hardware di interfaccia Vector CAN che stabilisce una connessione fisica con un CAN bus utilizzando lo standard CAN o CAN FD. Vehicle Network Toolbox contiene funzioni per i canali CAN, al fine di interrogare e configurare le impostazioni dell’hardware di interfaccia CAN, come la velocità del bus e le impostazioni del ricetrasmettitore. È anche possibile verificare altre proprietà dei canali CAN, come il numero di messaggi disponibili e il numero di messaggi ricevuti o trasmessi sul canale. Collegando i file di database Vector CAN ai canali CAN, i messaggi in ingresso vengono presentati in automatico usando le informazioni contenute nel database. Dopo aver definito un canale CAN, è possibile inviare e ricevere i messaggi CAN sul canale.

Connessione tra MATLAB e la propria rete veicolare tramite i protocolli CAN e CAN FD.

Invio e ricezione di messaggi CAN

I messaggi CAN standard contengono delle proprietà per la memorizzazione dell’identificatore del messaggio CAN (standard 11 bit o esteso 29 bit), del timestamp e fino a 8 byte di dati CAN. Un canale configurato per la trasmissione CAN FD può sostenere messaggi contenenti fino a 64 byte di dati.

Le funzioni e i blocchi di trasmissione e ricezione nel toolbox consentono di inviare e ricevere messaggi CAN sui canali CAN. Per i set di dati di grandi dimensioni, è possibile registrare i messaggi CAN per analizzarli offline.

Codice MATLAB per la ricezione di messaggi CAN e relativi segnali in formato timetable.

Creazione ed estrazione di segnali dai messaggi CAN

Vehicle Network Toolbox offre funzioni e blocchi per codificare e decodificare i messaggi CAN. I messaggi CAN possono contenere dei dati che rappresentano più segnali. Le funzioni e i blocchi di spacchettamento consentono di specificare il bit iniziale, la lunghezza del segnale, la tipologia di dati e l’ordine dei byte. Le funzioni e i blocchi di impacchettamento offrono le stesse opzioni per raccogliere i dati per la trasmissione di messaggi CAN.

Modello Simulink che usa il blocco CAN Unpack per decodificare i messaggi CAN.

Registrazione e riproduzione di messaggi CAN

Usando il blocco CAN Log disponibile nel toolbox, è possibile salvare i messaggi CAN ricevuti dal proprio modello in un file MAT. In seguito, è possibile usare il blocco CAN Replay per riprodurre i messaggi in un altro modello Simulink. Il blocco CAN Replay preserva i timestamp dei dati registrati in modo che quelli riprodotti abbiano le loro stesse caratteristiche temporali.

Grafico di dati relativi alla velocità delle ruote riprodotti a partire da un test su veicolo registrato.

Comunicazione tramite il protocollo XCP

Vehicle Network Toolbox offre funzioni e blocchi per comunicare con delle ECU tramite XCP (protocollo di calibrazione per l’automotive) su CAN o Ethernet bus. Quando si comunica con le ECU tramite XCP, MATLAB o Simulink sono da considerarsi come dispositivo master mentre le ECU sono il dispositivo slave. È possibile comunicare con più ECU aprendo più canali XCP. Per ciascuna ECU, è possibile leggere e scrivere i dati su posizioni specifiche della memoria all’interno dell’ECU. Se l’accesso all’ECU è protetto, è possibile utilizzare la sicurezza “seed and key” per aprire l’accesso all’ECU. Il toolbox contiene anche funzioni e blocchi per collegare i file di database A2L e per creare e visualizzare elenchi di misurazioni DAQ e STIM dinamici per un canale XCP. Questi elenchi vengono creati in base a informazioni su eventi e misurazioni tratte dal file A2L collegato.

Modello per acquisire misurazioni da un dispositivo slave ECU. Il modello usa i blocchi XCP Configuration e XCP Transport Layer (in alto), e i blocchi XCP Data Acquisition (in basso a sinistra) per configurare l’acquisizione del segnale PWM (in basso a destra).

Comunicazione tramite il protocollo J1939

Vehicle Network Toolbox offre funzioni e blocchi per comunicare tramite J1939, un protocollo di alto livello basato su CAN comunemente usato nel settore degli autocarri pesanti. Quando si comunica tramite J1939, è possibile configurare la comunicazione usando le funzioni MATLAB o i blocchi Simulink. Nello specifico, le funzioni e i blocchi servono ad associare un file di database (.dbc) alla comunicazione J1939, a specificare l’hardware di interfaccia CAN e a trasmettere e ricevere gruppi di parametri J1939. È possibile codificare e decodificare i dati dei segnali sulla rete utilizzando i gruppi di parametri definiti dal file di database associato alla connessione. In più, è possibile configurare Simulink affinché funzioni come nodo di rete con l’address claiming.

Modello per inviare e ricevere dati J1939 usando i blocchi J1939 Transmit e J1939 Receive. Il modello usa anche i blocchi J1939 Network Configuration, J1939 CAN Transport Layer Configuration e J1939 Node Configuration per configurare la comunicazione.

Visualizzazione del traffico CAN e CAN FD

Il toolbox include le applicazioni CAN Explorer e CAN FD Explorer per visualizzare il traffico attivo su un particolare canale CAN. Le applicazioni possono essere utilizzate mentre si svolgono altre attività in MATLAB o Simulink. Per i file di database CAN associati al proprio canale CAN, le applicazioni decodificano i messaggi e li visualizzano nelle unità tecniche corrette.

Se il traffico in rete contiene più informazioni rispetto a quelle necessarie per la propria applicazione, è possibile limitare il numero dei messaggi CAN ricevuti da un canale CAN a un intervallo predefinito di identificatori di messaggi CAN. L’uso delle funzioni di filtraggio e delle impostazioni delle maschere disponibili nel toolbox consente di ricevere solo i messaggi necessari per la propria applicazione.

Traffico bus CAN FD live sulla rete visualizzato con l’applicazione CAN FD Explorer. Il display mostra i dati grezzi, i segnali decodificati e i grafici dei segnali.

Uso di file di database Vector CAN

Vehicle Network Toolbox consente di associare un file di database Vector CAN a un messaggio o canale CAN da MATLAB o Simulink, il che consente di codificare e decodificare i messaggi CAN usando nomi di segnali e messaggi specifici dell’applicazione come EngineMsg e EngineRPM, oltre a unità tecniche in scala. La possibilità di lavorare con file di database standard del settore semplifica l’interazione con il CAN bus in quanto il database non solo specifica l’elenco dei messaggi e i segnali dei componenti, ma contiene anche le regole per l’impacchettamento e lo spacchettamento di bit per i segnali associati. Il tipo di dati del segnale, il bit iniziale, la lunghezza e l'ordine dei byte sono tutti predefiniti per i messaggi nel database, semplificando l'analisi del segnale.

Esempio di codice che illustra come visualizzare i messaggi usando le informazioni archiviate nei file di database CAN.

Uso di file di descrizione A2L

Vehicle Network Toolbox consente di usare dei file di descrizione A2L standard del settore (chiamati anche ASAP2) per comunicare con le ECU tramite protocollo XCP da MATLAB o Simulink. L’uso dei file di descrizione A2L consente di accedere ai parametri interni delle ECU a partire da un programma MATLAB o un modello Simulink. I file di descrizione A2L contengono informazioni relative all’indirizzo di memoria associato di un particolare parametro, la struttura di archiviazione e la tipologia dei dati. I file contengono anche le regole per convertire i valori salvati, come i parametri di sistema, le caratteristiche dei sensori e i fattori di correzione, in unità fisiche come gli RPM e i gradi Celsius. Grazie a questi dati è possibile effettuare operazioni di calibrazione e misurazione senza dover analizzare i dati e decodificare gli indirizzi di memoria.

Esempio di codice che illustra come accedere alle informazioni archiviate nei file A2L da usare con le connessioni XCP. Sfrutta un simulatore slave XCP disponibile gratuitamente dai canali Vector e Vector Virtual CAN.

Uso di file MDF

Con Vehicle Network Toolbox, è possibile importare in tutta facilità dei dati dai file contenenti dati di misurazione (MDF, Measurement Data Format). Il toolbox supporta lo standard MDF, dalla versione 3.0 e superiore. Quando si crea un oggetto MDF in MATLAB, è possibile visualizzare le proprietà di base del file, come il timestamp iniziale, le dimensioni dei dati, il gruppo di canali e le informazioni sui nomi dei canali. Per leggere all’interno di un sottogruppo di un file MDF, è necessario specificare i nomi dei canali oppure le indicazioni temporali di inizio e fine. Per impostazione predefinita, il formato di output del risultato sarà una timetable, in modo da poter lavorare agilmente con i dati contrassegnati da timestamp.

Per i file MDF di grandi dimensioni che non rientrano nella memoria, è possibile creare un datastore MDF e visualizzare l’anteprima dei dati in batch in base a dei parametri specifici. È anche possibile creare un datastore per lavorare in semplicità con una raccolta di file MDF simili.

Codice di esempio per visualizzare in anteprima un file MDF tramite l’interfaccia a riga di comando e poi ispezionare i dati nell’editor Variabili.

Uso di canali virtuali

È possibile usare canali CAN FD e CAN virtuali per testare e simulare le comunicazioni di rete. Con un canale virtuale, è possibile testare dei modelli in una configurazione di loopback senza usare hardware fisico. Vehicle Network Toolbox supporta due tipi di canali virtuali: i canali virtuali MathWorks e quelli di fornitori terzi di hardware di interfaccia CAN. I canali virtuali di fornitori terzi come Vector e Kvaser richiedono l’installazione del corrispondente pacchetto di supporto hardware o del driver del fornitore. I canali virtuali MathWorks sono inclusivi del toolbox e non hanno bisogno di alcun driver o pacchetto di supporto complementare.

Modello Simulink che illustra l’uso dei canali virtuali MathWorks per inviare e ricevere dati CAN senza hardware.

Uso di file CDFX

Accedi ai dati in formato dati di calibrazione ASAM (CDFX) con la funzione cdfx disponibile in Vehicle Network Toolbox. Usa i dati di calibrazione di un file CDF come input per un modello Simulink.

Utilizzo di dati di calibrazione da un file CDFX come input per un modello Simulink e grafico dell'output della simulazione per il parametro ASAM.C.MAP.