Vehicle Network Toolbox

 

Vehicle Network Toolbox

Kommunikation mit Fahrzeug-Netzwerken über CAN, J1939 und XCP Protokollen

Jetzt beginnen:

Senden und Empfangen von CAN- und CAN FD-Nachrichten aus MATLAB und Simulink

Konfigurieren von CAN- und CAN FD-Kanälen

CAN-Kanal-Funktionen in MATLAB und CAN-Konfigurationsblöcke in Simulink ermöglichen es Ihnen, eine Verbindung zur Vector CAN-Schnittstellen-Hardware zu definieren, die eine physikalische Verbindung mit einem CAN-Bus entweder mithilfe des CAN- oder des CAN-FD-Standards herstellt. Die Vehicle Network Toolbox bietet CAN-Kanal-Funktionen zum Abfragen und Konfigurieren von CAN-Schnittstellen-Hardwareeinstellungen, wie z. B. Busgeschwindigkeit und Transceiver-Einstellungen. Darüber hinaus können Sie weitere CAN-Kanaleigenschaften prüfen, z. B. die Anzahl der verfügbaren Nachrichten oder die Anzahl der über den Kanal gesendeten bzw. empfangenen Nachrichten. Durch das Hinzufügen von Vector-CAN-Datenbankdateien zu CAN-Kanälen werden eingehende Nachrichten automatisch zusammen mit den in der Datenbank gespeicherten Informationen präsentiert. Nach der Definition eines CAN-Kanals können Sie CAN-Nachrichten über den Kanal senden und empfangen.

Ein Laptop, der an ein Fahrzeug angeschlossenen ist, wird für den Zugriff auf Busdaten aus MATLAB und Simulink verwendet.

Verbinden Sie MATLAB über die Protokolle CAN und CAN FD mit Ihrem Fahrzeug-Netzwerk.

Senden und Empfangen von CAN-Nachrichten

Standard-CAN-Nachrichten enthalten Eigenschaften zur Speicherung des CAN-Nachrichten-Identifiers (Standard 11-Bit oder erweitert 29-Bit), des Zeitstempels und bis zu 8 Byte CAN-Daten. Ein für die CAN FD-Übertragung konfigurierter Kanal kann Nachrichten mit bis zu 64 Byte Daten enthalten.

Mithilfe der Sende- und Empfangsfunktionen und -blöcke der Toolbox können Sie CAN-Nachrichten über CAN-Kanäle senden und empfangen. Bei größeren Datensätzen können Sie die CAN-Nachrichten zu Offline-Analyse aufzeichnen.

CAN-Nachrichten in einem Zeitplan und ein Live Script für die Analyse.

MATLAB-Code zum Empfang von CAN-Nachrichten und ihren Signalen im Zeitplanformat.

Erstellen und Extrahieren von Signalen aus CAN-Nachrichten

Die Vehicle Network Toolbox verfügt über Funktionen und Blöcke zum Codieren und Decodieren von CAN-Nachrichten. CAN-Nachrichten können Daten enthalten, die mehrere Signale darstellen. Mit den Entpackfunktionen und -blöcken können Sie Startbit, Signallänge, Dateityp und Byteordnung festlegen. Die Packfunktionen und -blöcke bieten dieselben Optionen zur Datenerstellung für die Übertragung von CAN-Nachrichten.

Simulink-Modell zum Decodieren von CAN-Nachrichten.

Simulink-Modell, das den CAN Unpack-Block zum Decodieren von CAN-Nachrichten verwendet.

Aufzeichnen und Wiedergeben von CAN-Nachrichten

Mit dem CAN-Log-Block in der Toolbox können Sie von Ihrem Modell empfangene CAN-Nachrichten in einer MAT-Datei speichern. Sie können dann den CAN Replay-Block verwenden, um die Nachrichten in einem anderen Simulink-Modell wiederzugeben. Der CAN Replay-Block bewahrt die Zeitstempel der aufgezeichneten Daten, damit die wiedergegebenen Daten die gleichen Timing-Eigenschaften wie die aufgezeichneten Daten haben.

Scope-Ansicht der Radgeschwindigkeiten.

Darstellung von Radgeschwindigkeitsdaten, die von einer aufgezeichneten Fahrzeug-Testfahrt wiedergegeben wurden.

Kommunikation über das XCP-Protokoll

Die Vehicle Network Toolbox bietet Funktionen und Blöcke für die Kommunikation mit Steuergeräten über XCP – ein Fahrzeugkalibrierungsprotokoll – über CAN- oder Ethernet-Bus. Bei der Kommunikation mit Steuergeräten über XCP gelten MATLAB oder Simulink als Master- und die Steuergeräte als Slavegeräte. Sie können mit mehreren ECUs kommunizieren, indem Sie mehrere XCP-Kanäle öffnen. Für jedes ECU können Sie Daten auf bestimmte Speicherplätze innerhalb des ECU lesen und schreiben. Wenn ein gesicherter Zugang zu einem ECU besteht, können Sie die Seed- und Schlüsselsicherheit verwenden, um den Zugang zu dem ECU zu öffnen. Die Toolbox bietet auch Funktionen und Blöcke zum Verknüpfen von A2L-Datenbankdateien und zum Erstellen und Anzeigen dynamischer DAQ- und STIM-Messlisten für einen XCP-Kanal. Diese Listen werden auf der Grundlage von Mess- und Ereignisinformationen aus der verknüpften A2L-Datei erstellt.

Drei Fenster, in denen das Simulink-Modell und die Maske des XCP-Datenerfassungsblocks zur Konfiguration der XCP-Datenerfassung angezeigt werden.

Modell zur Erfassung von Messungen von einem ECU-Slave-Gerät. Das Modell verwendet Blöcke für die XCP-Konfiguration und den XCP-Transport Layer (oben) sowie Blöcke für die XCP-Datenerfassung (unten links), um die Erfassung des PWM-Signals einzurichten (unten rechts).

Kommunikation über das J1939-Protokoll

Die Vehicle Network Toolbox stellt Funktionen und Blöcke für die Kommunikation über J1939 zur Verfügung – ein CAN-basiertes Hochleistungsprotokoll, das oft in der Schwerlasterindustrie verwendet wird. Bei der Kommunikation über J1939 verwenden Sie MATLAB-Funktionen oder Simulink-Blöcke, um die Kommunikation einzurichten. Im Einzelnen werden Funktionen und Blöcke bereitgestellt, um eine Datenbankdatei (.dbc) mit der J1939-Kommunikation zu verknüpfen, die CAN-Schnittstellen-Hardware zu spezifizieren und J1939-Parametergruppen zu senden und zu empfangen. Sie codieren und decodieren Signaldaten im Netzwerk mithilfe von Parametergruppen, die durch die zur Verbindung gehörende Datenbankdatei definiert sind. Zusätzlich können Sie Simulink so konfigurieren, dass es als Netzwerkknoten mit Adressansprüchen arbeitet.

Modell mit Simulink-Blöcken für die J1939-Kommunikation.

Modell zum Senden und Empfangen von J1939-Daten unter Verwendung von J1939-Sende- und J1939-Empfangsblöcken. Das Modell verwendet außerdem J1939-Netzwerkkonfigurations-, J1939-CAN-Transport-Layer-Konfigurations- und J1939-Knotenkonfigurationsblöcke zur Einrichtung der Kommunikation.

Visualisieren des CAN-FD-Datenverkehrs

Die Toolbox enthält die CAN Explorer- und die CAN FD Explorer-App zur Visualisierung des aktiven Datenverkehrs auf einem bestimmten CAN-Kanal. Sie können die Apps verwenden, während Sie andere Aufgaben in MATLAB oder Simulink ausführen. Für CAN-Datenbankdateien, die Ihrem CAN-Kanal zugeordnet sind, decodieren die Apps die Nachrichten und zeigen sie in den korrekten technischen Einheiten an.

Enthält der Traffic im Netzwerk mehr Informationen, als für Ihre Anwendung benötigt werden, können Sie die Anzahl der über einen CAN-Kanal empfangenen CAN-Nachrichten über einen definierten Bereich an CAN-Nachrichten-Identifiern begrenzen. Anhand der Filterfunktionen und Maskeneinstellungen in der Toolbox erhalten Sie nur die Nachrichten, die für Ihre Anwendung benötigt werden.

App-Ansicht des CAN-FD-Bus-Verkehrs mit decodierten Signalen und Signalvisualisierungen.

Ansicht des Live-CAN-FD-Bus-Verkehrs auf dem Netzwerk in der CAN FD Explorer-App. Angezeigt werden Rohdaten, decodierte Signale und Signalplots.

Anwenden von Vektor-CAN-Datenbankdateien

Mit der Vehicle Network Toolbox können Sie Vector-CAN-Datenbankdateien einem CAN-Kanal oder einer Nachricht zuweisen. Dadurch können Sie CAN-Nachrichten durch anwendungsspezifische Nachrichten und Signalnamen wie z. B. EngineMsg und EngineRPM sowie durch skalierte technisch-wissenschaftliche Einheiten codieren und decodieren. Die Fähigkeit, mit branchenüblichen Datenbankdateien zu arbeiten, vereinfacht die Interaktion mit dem CAN-Bus, da die Datenbank nicht nur Nachrichtenliste und Komponentensignale spezifiziert, sondern außerdem die Bit-Packing- und Bit-Unpacking-Bestimmungen für die dazugehörigen Signale festlegt. Signaldatentyp, Startbit, Länge und Byteordnung sind für die Nachrichten in der Datenbank vordefiniert und vereinfachen die Signalanalyse.

Vier Codebeispiele, die das Öffnen einer CAN-Datenbankdatei und die Anzeige von Nachrichten und Signalen veranschaulichen.

Codebeispiel, das zeigt, wie Nachrichten unter Verwendung von in CAN-Datenbankdateien gespeicherten Informationen angezeigt werden können.

Verwenden von A2L-Beschreibungsdateien

Mit der Vehicle Network Toolbox können Sie Beschreibungsdateien nach dem Industriestandard A2L (auch als ASAP2 bekannt) verwenden, um mit ECUs über das XCP-Protokoll von MATLAB oder Simulink zu kommunizieren. Mit A2L-Beschreibungsdateien können Sie von einem MATLAB-Programm oder einem Simulink-Modell aus auf interne ECU-Parameter zugreifen. A2L-Beschreibungsdateien enthalten Informationen über die zugehörige Speicheradresse für einen bestimmten Parameter, die Speicherstruktur und den Datentyp. Die Dateien enthalten auch Regeln für die Umrechnung gespeicherter Werte wie Systemparameter, Sensoreigenschaften und Korrekturfaktoren in physikalische Einheiten wie U/min und Grad Celsius. Mit diesen Daten können Sie Kalibrierungs- und Messaufgaben durchführen, ohne Daten zu parsen und Speicheradressen zu dekodieren.

MATLAB-Funktion für das Parsen und Inspizieren von A2L-Dateien.

Codebeispiel, das zeigt, wie auf in A2L-Dateien gespeicherte Informationen zur Verwendung mit XCP-Verbindungen zugegriffen werden kann. Es verwendet einen frei verfügbaren XCP-Slave-Simulator von Vector und Vector Virtual CAN-Kanälen.

Arbeiten mit MDF-Dateien

Mit der Vehicle Network Toolbox können Sie mühelos Dateien im Messdatenformat (MDF) importieren und exportieren. Die Toolbox unterstützt Version 3.0 und höher des MDF-Standards. Wenn Sie mit MDF-Dateien in MATLAB arbeiten, können Sie die grundlegenden Eigenschaften der Datei anzeigen, einschließlich des anfänglichen Zeitstempels, der Datengröße, der Kanalgruppe und der Informationen zum Kanalnamen. Darüber hinaus können Sie über MATLAB MDF-Dateien erstellen und Zeitplandaten in bestehende MDF-Dateien schreiben.

Um eine Teilmenge einer MDF-Datei einzulesen, geben Sie die Kanalnamen oder die Start- und Stoppzeiten an. Standardmäßig wird das Ausgabeformat Ihres Ergebnisses als Zeitplan zurückgegeben, damit Sie problemlos mit den zeitgestempelten Daten arbeiten können.

Für große MDF-Dateien, die nicht in den Speicher passen, können Sie einen MDF-Datenspeicher erstellen und eine Vorschau der gestapelten Daten basierend auf den von Ihnen angegebenen Parametern anzeigen. Sie können auch einen Datenspeicher erstellen, um einfach mit einer Sammlung ähnlicher MDF-Dateien zu arbeiten.

MATLAB-Schnittstelle zum Inspizieren von MDF-Dateien mit der Vorschaufunktion und dem Variablen-Editor.

Beispielcode zur Vorschau einer MDF-Datei über die Befehlszeilenschnittstelle und zur anschließenden Prüfung der Daten im Variablen-Editor.

Anwenden von virtuellen Kanälen

Sie können virtuelle CAN- und CAN-FD-Kanäle zum Testen und Simulieren der Netzwerkkommunikation verwenden. Mit einem virtuellen Kanal können Sie Modelle in einer Loopback-Konfiguration testen, ohne physische Hardware zu verwenden. Die Vehicle Network Toolbox unterstützt zwei Arten von virtuellen Kanälen: Virtuelle MathWorks-Kanäle und solche von Drittanbietern von CAN-Schnittstellen-Hardware. Virtuelle Kanäle von Drittanbietern wie Vector und Kvaser erfordern die Installation des entsprechenden Herstellertreibers oder Hardware-Supportpakets. Die virtuellen MathWorks-Kanäle werden mit der Toolbox geliefert und erfordern keine zusätzlichen Treiber oder Supportpakete.

Simulink-Blöcke für das Senden und Empfangen von Daten mithilfe virtueller MathWorks-Kanäle.

Simulink-Modell, das die Verwendung von virtuellen MathWorks-Kanälen zum Senden und Empfangen von CAN-Daten ohne Hardware zeigt.

Arbeiten mit CDFX-Dateien

Zugriff auf Daten im ASAM-Kalibrierungsdatenformat (CDFX) mit der  cdfx -Funktion der Vehicle Network Toolbox. Verwenden Sie Kalibrierungsdaten aus einer CDF-Datei als Input für ein Simulink-Modell.

Grafische Darstellung von ASAM.C.MAP-Parametern, die im Zeitverlauf ansteigen und abfallen.

Verwenden von Kalibrierungsdaten aus einer CDFX-Datei als Eingaben für ein Simulink-Modell und grafische Darstellung der Simulationsausgabe für die ASAM.C.MAP-Parameter.