-
Die Erfindung betrifft ein Verfahren und eine Vorrichtung zum Aufzeichnen von Daten von einem Steuergerät eines Fahrzeugs und/oder zum Stimulieren eines Steuergeräts des Fahrzeugs anhand von Daten, wobei die Daten in einem Ethernet basierten Netzwerk des Fahrzeugs übertragen werden.
-
Üblicherweise werden in Fahrzeugen (insbesondere in Automobilen) primär Bussysteme eingesetzt, bei denen jeweils an jeder Stelle des Übertragungsmediums alle Daten, welche zwischen den Knoten des Bussystems ausgetauscht werden, für Datenlogging (d. h. zur Aufzeichnung) zu Verfügung stehen oder zur Stimulation an jeder beliebigen Stelle des Bussystems eingespeist werden können. Beispiele für derartige Bussysteme sind z. B. die Feldbussysteme CAN (Controller Area Network) oder MOST (Media Oriented Systems Transport). Die Verfügbarkeit der Daten aller Knoten (d. h. aller Steuergeräte) an jedem beliebigen Punkt des Bussystems ermöglicht inhärent die Verwendung eines zentralen Datenloggers, mit dem alle Daten an jeder beliebigen Stelle des Bus-Kabels abgegriffen werden können.
-
Mit der Einführung von Ethernet im Automobil, d. h. mit der Einführung eines Netzwerksystems, welches Switches (d. h. Netzwerkweichen) umfasst, sind die Daten der einzelnen über Ethernet verbundenen Steuergeräte (SG) nur noch auf denjenigen Ethernet-Links (d. h. denjenigen Ethernet-Datenstrecken oder Ethernet-Kabeln) vorhanden, die auf direktem Weg zwischen dem Sender-SG und dem Empfänger-SG der Daten (bzw. auf direktem Weg zwischen einer Stimulationseinheit und einem zu stimulierenden SG) liegen. Somit ist ein Datenlogging aller Daten in einem Ethernet-Netzwerk bislang nur möglich, in dem an jede einzelne Datenstrecke des Ethernet-Netzwerks aufwändig und kostenintensiv Messtechnik verbaut wird, welche es ermöglicht, die Daten auf der jeweiligen Datenstrecke abzugreifen und aufzuzeichnen. Desweiteren muss derzeit spezielle Messtechnik verbaut werden, um Daten über interne Zustande der Steuergeräte aufzuzeichnen. Diese Daten werden üblicherweise über spezielle Datenschnittstellen („Debug-Interfaces”) der Steuergeräte kommuniziert, die nicht mit dem Fahrzeugbordnetzwerk identisch sind. In ähnlicher Weise muss derzeit spezielle Messtechnik verbaut werden, um Stimulations-Daten zur Stimulation an spezifische Steuergeräte zu senden.
-
Der Einbau von geeigneter Messtechnik in ein Fahrzeug (z. B. zur Fehlerdiagnose während der Entwicklung eines Fahrzeugs oder während der Wartung eines Fahrzeugs) ist aufwändig, da ein Eingriff ins Fahrzeug vorgenommen werden muss (z. B. das Auftrennen vorhandener Leitungen und/oder das Verlegen zusätzlicher Leitungen. Außerdem kann eine typischerweise bereits vorhandene Schnittstelle für Datenlogging und/oder zur Stimulation (wie etwa die OBD(On-Board Diagnose)-Schnittstelle des Fahrzeugs) nicht genutzt werden, wenn der Datenverkehr über spezielle Messtechnik abgegriffen oder eingespeist werden muss.
-
Die vorliegende Erfindung adressiert die oben angesprochenen technischen Probleme bei der Aufzeichnung von SG Daten bzw. beim Senden von Stimulations-Daten an ein SG in automotiven Ethernet Netzwerken. Insbesondere beschreibt das vorliegende Dokument ein Verfahren, welches es ermöglicht, ohne Verwendung von zusätzlicher Messtechnik ein vollständiges Datenlogging aller SG Daten im Fahrzeug durchzuführen und/oder Stimulations-Daten an alle SGs eines Fahrzeugs zu senden.
-
Gemäß einem Aspekt wird ein Verfahren zur Aufzeichnung von Daten beschrieben. Die aufzuzeichnenden Daten werden von einem sendenden Steuergerät an ein empfangendes Steuergerät eines Fahrzeugs über ein Kommunikationssystem des Fahrzeugs gesendet. Bei dem Fahrzeug kann es sich z. B. um ein Kraftfahrzeug oder ein Automobil handeln. Das Kommunikationssystem des Fahrzeugs umfasst ein Ethernet-Netzwerk. Darüber hinaus kann das Kommunikationssystem auch weitere Bussysteme, wie z. B. ein CAN (Controller Area Network), MOST (Media Oriented Systems Transport), LIN (Local Interconnect Network) und/oder FlexRay Bussystem, umfassen. Die verschiedenen Bussysteme und das Ethernet-Netzwerk können über ein oder mehrere Brücken-Komponenten (z. B. ein oder mehrere Steuergeräte) miteinander verbunden sein. Z. B. können die verschiedenen Bussysteme und das Ethernet-Netzwerk über einen zentralen Gateway miteinander verbunden sein. Die ein oder mehreren Brücken-Komponenten und/oder der zentrale Gateway ermöglichen so einen Austausch von Daten zwischen den an den verschiedenen Bussystemen und dem Ethernet-Netzwerk angeschlossenen Komponenten (z. B. Sensoren, Aktuatoren und/oder Steuergeräten).
-
Die aufzuzeichnenden Daten werden von einer Sende-Komponente an eine Empfangs-Komponente des Ethernet-Netzwerks über einen Übertragungspfad geleitet. Die aufzuzeichnenden Daten haben typischerweise die Form von Ethernet-Daten (d. h. Ethernet-Paketen oder Ethernet-Rahmen), welche Header-Daten und Nutzdaten umfassen. Dabei kann die Sende-Komponente das sendende Steuergerät umfassen oder es kann sich bei der Sende-Komponente um das sendende Steuergerät handeln. In ähnlicher Weise, kann die Empfangs-Komponente das empfangende Steuergerät umfassen oder es kann sich bei der Empfangs-Komponente um das empfangende Steuergerät handeln. Andererseits könnte es sich bei der Sende-Komponente auch um eine Brücken-Komponente oder den zentralen Gateway handeln, der die aufzuzeichnenden Daten über ein anderes Bussystem von dem sendenden Steuergerät empfängt und als Ethernet-Daten in das Ethernet-Netzwerk sendet. In ähnlicher Weise kann es sich bei der Empfangs-Komponente um eine Brücken-Komponente oder den zentralen Gateway handeln, der die aufzuzeichnenden Daten als Ethernet-Daten über das Ethernet-Netzwerk empfängt und über ein anderes Bussystem an das empfangende Steuergerät weiterleitet.
-
Die aufzuzeichnenden Daten sollen an einer Logging-Komponente des Ethernet-Netzwerks, die nicht auf dem Übertragungspfad liegt, aufgezeichnet werden. Das Ethernet-Netzwerk ist typischerweise derart eingerichtet, dass die aufzuzeichnenden Daten nur an Komponenten auftreten, welche auf dem Übertragungspfad zwischen der Sende-Komponente und der Empfangs-Komponente liegen. An Komponenten, die nicht auf dem Übertragungspfad liegen, sind die aufzuzeichnenden Daten im Allgemeinen nicht verfügbar. Das liegt z. B. daran, dass einige oder alle Komponenten des Ethernet-Netzwerkes jeweils korrespondierende Ethernet-Switches umfassen, die eine gezielte Lenkung der aufzuzeichnenden Daten von der Sende-Komponente zur Empfangs-Komponente durch das Ethernet-Netzwerk ermöglichen.
-
Das Verfahren umfasst das Konfigurieren einer Zwischen-Komponente des Ethernet-Netzwerks, welche auf dem Übertragungspfad liegt, eine Kopie der Daten als Logging-Daten an die Logging-Komponente zu senden. In einem Ausführungsbeispiel umfasst die Zwischen-Komponente einen Ethernet-Switch (auch Layer 2-Switch genannt). Das Konfigurieren der Zwischen-Komponente kann dann das Konfigurieren des Ethernet-Switches umfassen, eine Kopie der aufzuzeichnenden Daten zu erstellen. Desweiteren kann das Konfigurieren der Zwischen-Komponente das Konfigurieren des Ethernet-Switches umfassen, die Kopie der Daten mit Header-Daten zu versehen, welche die Übertragung der Kopie der Daten durch das Ethernet-Netzwerk an die Logging-Komponente ermöglichen. Die Kopie der Daten kann z. B. anhand einer Port-Mirroring Funktion des Ethernet-Switches erstellt werden. Die Header-Daten können z. B. eines oder mehrere umfassen von: eine MAC-Zieladresse der Logging-Komponente und/oder einen VLAN-Tag, welcher die Kopie der Daten als Logging-Daten identifiziert.
-
Das Verfahren kann weiter das Aufzeichnen der Logging-Daten an der Logging-Komponente umfassen. Die Logging-Komponente kann z. B. Teil eines Information- und Kommunikationssystems (auch Head Unit genannt) des Fahrzeugs sein. Das Informations- und Kommunikationssystem des Fahrzeugs kann ein internes Speichermedium (z. B. eine Festplatte und/oder einen RAM-Speicher) umfassen. Alternativ oder ergänzend kann das Information- und Kommunikationssystem des Fahrzeugs eine Schnittstelle (z. B. eine USB-Schnittstelle) zum Anschluss eines externen Speichermediums (z. B. eines USB-Sticks) umfassen. Die Logging-Daten können dann auf einem (externen bzw. internen) Speichermedium des Informations- und Kommunikationssystems aufgezeichnet werden. Dadurch kann die kostenintensive Verwendung von dedizierten Datenloggern vermieden werden. Stattdessen kann das Speichermedium des Information- und Kommunikationssystems als Datenlogger verwendet werden. Die Logging-Komponente kann desweiteren eine UMTS oder eine WLAN Schnittstelle umfassen. Dann können die Logging-Daten über die UMTS oder die WLAN Schnittstelle an einen Datenlogger gesendet werden. Dadurch wird eine zeitnahe Aufzeichnung und Auswerten von Logging-Daten im Betrieb des Fahrzeugs ermöglicht.
-
Das Verfahren kann weiter umfassen, das Konfigurieren einer oder mehrerer weiterer Komponenten des Ethernet-Netzwerks, welche auf einem Logging-Übertragungspfad von der Zwischen-Komponente zu der Logging-Komponente liegen. Die ein oder mehreren weiteren Komponenten können konfiguriert werden, die Logging-Daten an die Logging-Komponente zu senden. Mit anderen Worten, es können nicht nur die abzweigende Zwischen-Komponente sondern auch weitere Komponenten des Netzwerks dazu konfiguriert werden, die Logging-Daten zur Logging-Komponente zu senden. Zu diesem Zweck können die ein oder mehreren weiteren Komponenten jeweils einen Ethernet-Switch umfassen.
-
Das Verfahren kann weiter umfassen, das Konfigurieren des Ethernet-Switches der Zwischen-Komponente, die Logging-Daten über einen bestimmten (ersten) Port des Ethernet-Switches an die Logging-Komponente zu senden. Desweiteren kann das Verfahren umfassen, das Konfigurieren des Ethernet-Switches der Zwischen-Komponente, eine vorbestimmte Übertragungsbandbreite des bestimmten (ersten) Ports für die Übertragung der Logging-Daten zu reservieren. Dadurch kann ein von der Zwischen-Komponente abgehender Seitenkanal für Logging-Daten mit einer vorbestimmten Übertragungsbandbreite eingerichtet werden, der die Menge an Logging-Daten auf die vorbestimmte Übertragungsbandbreite begrenzt. Durch die Einrichtung eines solchen Seitenkanals kann sichergestellt werden, dass der betriebliche Datenverkehr im Ethernet-Netzwerk nicht von der Übertragung der zusätzlichen Logging-Daten gestört wird.
-
Das Verfahren kann weiter umfassen, das Konfigurieren der Zwischen-Komponente eine Fehlernachricht zu speichern oder zu senden, falls die Logging-Daten nicht an die Logging-Komponente gesendet werden können. Die Zwischen-Komponente kann z. B. erkennen, dass die zu sendenden Logging-Daten die vorbestimmte Übertragungsbandbreite des Seiternkanals überschreiten und daraufhin einzelne der Logging-Daten verwerfen. Um das Verwerfen von Logging-Daten erkennen zu können, kann die Zwischen-Komponente eine Fehlernachricht speichern oder senden, so dass das Fehlen von Logging-Daten auf dem Datenlogger vermerkt werden kann.
-
Das Konfigurieren der Zwischen-Komponente kann das Senden eines Konfigurations-Befehls an die Zwischen-Komponente durch das Ethernet-Netzwerk umfassen. Insbesondere kann durch den Konfigurations-Befehl der Ethernet-Switch der Zwischen-Komponente konfiguriert werden. Bei dem Konfigurations-Befehl kann es sich um einen UDS(Universal Diagnostics Services)-Diagnose-Befehl, z. B. gemäß dem ISO 14229:1998 Standard, handeln. Der Konfiguration-Befehl kann z. B. von einem Datenlogger über eine OBD(On Board Diagnostics)-Schnittstelle des Fahrzeugs gesendet werden; und/oder von einem Datenlogger über eine WLAN- oder eine UMTS-Schnittstelle des Fahrzeugs gesendet werden; und/oder von einem Speichermedium eines Informations- und Kommunikationssystems des Fahrzeugs gesendet werden. Zusammenfassend kann der Konfiguration-Befehl über das Ethernet-Netzwerk an die Zwischen-Komponente gesendet werden, was eine flexible und kosteneffektive Anpassung des Ethernet-Netzwerks an die jeweils aufzuzeichnenden Daten ermöglicht. Es ist zu beachten, dass der Konfigurations-Befehl an die Zwischen-Komponente über ein anderes automotives Bussystem (z. B. ein CAN, MOST, FlexRay, LIN Bussystem) gesendet werden kann, wenn die Zwischen-Komponente (auch) an ein anderes automotives Bussystem angeschlossen ist.
-
Das Verfahren kann umfassen, das Ermitteln eines Logging-Szenarios aus einer Vielzahl von vordefinierten Logging-Szenarien. Jedes der vordefinierten Logging-Szenarien kann z. B. mindestens eine Komponente des Ethernet-Netzwerks als Logging-Komponente identifizieren (es sind auch mehrere Logging-Komponenten möglich, z. B. um das Verkehrsaufkommen durch die zusätzlichen Logging-Daten zu reduzieren). Desweiteren kann ein vordefiniertes Logging-Szenario ein oder mehrere sendende Steuergeräte und/oder ein oder mehrere empfangende Steuergeräte identifizieren, deren ausgetauschte Daten aufgezeichnet werden sollen. Darüber hinaus kann ein vordefiniertes Logging-Szenario Konfigurationsparameter für ein oder mehrere Zwischen-Komponenten zum Konfigurieren der ein oder mehreren Zwischen-Komponenten spezifizieren. Die Konfigurationsparameter können z. B. einen für die Logging-Daten reservierten Datenkanal (auch Seitenkanal genannt) durch das Ethernet-Netzwerk mit einer vorbestimmten Übertragungsbandbreite definieren. Die Logging-Szenarios können auf Basis der Topologie des Ethernet-Netzwerks und/oder auf Basis der betrieblichen Datenströme durch das Ethernet-Netzwerk bestimmt werden. Durch die Verwendung von vordefinierten Logging-Szenarien kann so sichergestellt werden, dass der zusätzliche Logging-Verkehr nicht die betrieblichen Datenströme des Fahrzeugs stört.
-
Das Verfahren kann weiter das Detektieren eines vordefinierten Zustands des Fahrzeugs umfassen. Z. B. kann ein bestimmter Fehlerzustand detektiert werden. Das Detektieren dieses Zustands kann z. B. durch ein Steuergerät des Fahrzeugs oder durch eine Fahrzeug-fremde Vorrichtung erfolgen. Beispielsweise kann ein bestimmter Fehlerzustand auf Basis eines Fehlerspeichereintrags in einem Steuergerät ermittelt werden. Das Ermitteln des Logging-Szenarios kann dann auf Basis des detektierten Zustands des Fahrzeugs erfolgen. So kann sichergestellt werden, dass (nur die) für den Zustand des Fahrzeugs relevante(n) Logging-Daten aufgezeichnet werden. Außerdem kann durch eine zustandsabhängige Auswahl von Logging-Szenarien der durch die Logging-Daten verursachte zusätzliche Datenverkehr reduziert werden.
-
Wie bereits oben dargelegt, kann das sendende Steuergerät an ein anderes Bussystem des Kommunikationssystems als das Ethernet-Netzwerk angeschlossen sein. In diesem Fall, kann die Sende-Komponente eingerichtet sein, alle (oder eine Auswahl) von dem sendenden Steuergerät über das andere Bussystem gesendeten Daten zu empfangen. Das Verfahren kann dann weiter umfassen, das Konfigurieren der Sende-Komponente, eine Kopie zumindest eines Teils (oder aller) der von dem sendenden Steuergerät über das andere Bussystem gesendeten Daten an die Logging-Komponente zu senden. Mit anderen Worten, kann die Sende-Komponente eingerichtet sein, alle oder einen Teil der von dem sendenden Steuergerät empfangen Daten durch das Ethernet-Netzwerk zu tunneln. Der zu kopierende Teil der von dem sendenden Steuergerät über das andere Bussystem gesendeten Daten kann z. B. in einem Logging-Szenario spezifiziert werden.
-
Das Verfahren kann weiter umfassen, das Senden eines Steuergeräte-Konfigurations-Befehls an das sendende Steuergerät (oder an ein anderes Steuergerät des Fahrzeugs). Der Steuergeräte-Konfigurations-Befehl kann z. B. in Form eines UDS-Befehls an das Steuergerät gesendet werden. Das Verfahren kann weiter umfassen, das Konfigurieren des sendenden Steuergerätes (oder eines anderen Steuergerätes des Fahrzeugs) auf Basis des Steuergeräte-Konfigurations-Befehls, interne Statusinformationen des sendenden Steuergerätes als Status-Daten zu senden. Die Status-Daten können z. B. auf das Bussystem des Steuergerätes gesendet werden. Desweiteren kann das Verfahren weiter umfassen, das Konfigurieren der Sende-Komponente (und/oder einer anderen Komponente des Ethernet-Netzwerks), die Status-Daten an die Logging-Komponente zu senden. So ist es möglich auch interne Statusinformationen des Steuergerätes über das Ethernet-Netzwerk an einer bestimmten Logging-Komponente aufzuzeichnen. Insbesondere können dadurch dedizierte Debugging-Schnittstellen an den Steuergeräten (und damit Kosten) vermieden werden.
-
Gemäß einem weiteren Aspekt wird ein Verfahren zum Senden von Stimulations-Daten über das Kommunikationssystem des Fahrzeugs an ein empfangendes Steuergerät des Fahrzeugs beschrieben. Die Stimulation-Daten sollen derart gesendet werden, dass das empfangende Steuergerät die Stimulations-Daten als Daten erachtet, die von einem sendenden Steuergerät des Fahrzeugs gesendet wurden. Wie bereits oben dargelegt umfasst das Kommunikationssystem ein Ethernet-Netzwerk. Das Ethernet-Netzwerk ist derart ausgelegt, dass bestimmte Daten von dem sendenden Steuergerät an das empfangende Steuergerät von einer Sende-Komponente an eine Empfangs-Komponente des Ethernet-Netzwerks über einen Übertragungspfad geleitet werden. Andererseits werden die Stimulations-Daten von einer Stimulations-Komponente gesendet, welche nicht auf dem Übertragungspfad liegt.
-
Das Verfahren umfasst das Konfigurieren einer Zwischen-Komponente des Ethernet-Netzwerks, welche auf dem Übertragungspfad liegt, Header-Daten der von der Stimulations-Komponente empfangenden Stimulations-Daten zu modifizieren. Bei der Zwischen-Komponente kann es sich z. B. um die letzte Komponente des Ethernet-Netzwerks auf dem Übertragungspfad vor der Empfangs-Komponente handeln. D. h., dass die ursprünglichen Header-Daten dazu verwendet werden können, die Stimulations-Daten von der Stimulations-Komponente bis zur Zwischen-Komponente durch das Ethernet-Netzwerk zu leiten. An der Zwischen-Komponente werden diese ursprünglichen Header-Daten dann derart modifiziert, dass sie von der Empfangs-Komponente als Daten angesehen werden, die von dem sendenden Steuergeräte und/oder von der Sende-Komponente gesendet wurden. Das Modifizieren der Header-Daten kann z. B. umfassen, ein VLAN-Tag, welcher die empfangenden Stimulation-Daten als Stimulation-Daten identifiziert, zu entfernen. Alternativ oder ergänzend kann das Modifizieren der Header-Daten z. B. umfassen, eine MAC-Ursprungsadresse durch die MAC-Adresse der Sende-Komponente zu ersetzen.
-
Außerdem kann die Zwischen-Komponente derart konfiguriert werden, dass die Zwischen-Komponente die modifizierten Stimulation-Daten an die Empfangs-Komponente sendet. Wie bereits oben dargelegt kann die Zwischen-Komponente einen Ethernet-Switch umfassen. Das Konfigurieren der Zwischen-Komponente kann dann das Konfigurieren des Ethernet-Switches umfassen, die Header-Daten der Stimulation-Daten zu modifizieren und die modifizierten Stimulations-Daten an die Empfangs-Komponente zu senden.
-
Das Verfahren kann weiter umfassen, das Konfigurieren der Zwischen-Komponente, von dem sendenden Steuergerät gesendete Daten an eine Logging-Komponente zu leiten. Desweiteren kann die Zwischen-Komponente konfiguriert werden, die von dem sendenden Steuergerät gesendeten Daten durch die Stimulations-Daten zu ersetzen. Mit anderen Worten, die Zwischen-Komponente kann die von dem sendenden Steuergerät gesendete Daten „abfangen” und an die Logging-Komponente weiterleiten. Die abgefangenen Daten können durch Stimulations-Daten ersetzt werden, welche dann anstelle der von dem sendenden Steuergerät gesendete Daten an die Empfangs-Komponente und an das empfangene Steuergerät weitergeleitet werden.
-
Das Verfahren kann weiter umfassen, das Konfigurieren einer oder mehrerer weiterer Komponenten des Ethernet-Netzwerks, welche auf einem Stimulations-Übertragungspfad von der Stimulation-Komponente zu der Zwischen-Komponente liegen. Die ein oder mehreren weiteren Komponenten können konfiguriert werden, die Stimulations-Daten an die Zwischen-Komponente zu senden. Mit anderen Worten, es können nicht nur die Zwischen-Komponente sondern auch weitere Komponenten des Netzwerks dazu konfiguriert werden, die Stimulation-Daten von der Stimulation-Komponente zur Zwischen-Komponente zu senden. Zu diesem Zweck können die ein oder mehreren weiteren Komponenten jeweils einen Ethernet-Switch umfassen.
-
Desweiteren kann das Verfahren umfassen, das Konfigurieren des Ethernet-Switches der Zwischen-Komponente, eine vorbestimmte Übertragungsbandbreite eines bestimmten (ersten) Ports des Ethernet-Switches der Zwischen-Komponente für den Empfang der Stimulations-Daten zu reservieren. Gleiches gilt für die weiteren Komponenten des Netzwerks auf dem Übertragungspfad zwischen Stimulations-Komponente und Zwischen-Komponente. Dadurch kann Seitenkanal für Stimulations-Daten mit einer vorbestimmten Übertragungsbandbreite eingerichtet werden, der die Menge an Stimulations-Daten auf die vorbestimmte Übertragungsbandbreite begrenzt. Durch die Einrichtung eines solchen Seitenkanals kann sichergestellt werden, dass der betriebliche Datenverkehr im Ethernet-Netzwerk nicht von der Übertragung der zusätzlichen Stimulations-Daten gestört wird.
-
In einem Ausführungsbeispiel sind die Logging-Komponente und die Stimulations-Komponente eine gemeinsame Komponente des Ethernet-Netzwerks. Außerdem können ein Datenlogger (welche die Logging-Daten aufzeichnet) und eine Stimulations-Einheit (welche die Stimulations-Daten erzeugt) als eine gemeinsame Einheit (z. B. ein gemeinsamer Computer) implementiert sein. Andererseits können auch eine Vielzahl von Datenloggern und/oder eine Vielzahl von Stimulations-Einheiten verwendet werden. Insbesondere kann die Verwendung einer Vielzahl von Logging-Komponenten und/oder einer Vielzahl von Stimulations-Komponente im Netzwerk vorteilhaft sein, um die Belastung durch die Logging-Daten und/oder die Stimulation-Daten zu reduzieren.
-
In ähnlicher Weise wie zum Zweck des Aufzeichnens, kann die Zwischen-Komponente zum Zweck des Sendens von Stimulation-Daten durch einen oder mehrere Konfiguration-Befehle konfiguriert werden. Mit anderen Worten, das Konfigurieren der Zwischen-Komponente kann das Senden eines Konfigurations-Befehls an die Zwischen-Komponente durch das Ethernet-Netzwerk (oder eine anderes Bussystem) umfassen. Insbesondere kann durch den Konfigurations-Befehl der Ethernet-Switch der Zwischen-Komponente konfiguriert werden. Bei dem Konfiguration-Befehl kann es sich um einen UDS(Universal Diagnostics Services)-Diagnose-Befehl, z. B. gemäß dem ISO 14229:1998 Standard, handeln. Der Konfiguration-Befehl kann z. B. von einer Stimulations-Einheit über eine OBD(On Board Diagnostics)-Schnittstelle des Fahrzeugs gesendet werden; und/oder von einer Stimulation-Einheit über Funk-Schnittstelle (WLAN, UMTS, GPRS, EDGE, LTE, Bluetooth) des Fahrzeugs gesendet werden; und/oder von einem Speichermedium eines Information- und Kommunikationssystems des Fahrzeugs gesendet werden. Zusammenfassend kann der Konfiguration-Befehl über das Ethernet-Netzwerk an die Zwischen-Komponente gesendet werden, was eine flexible und kosteneffektive Anpassung des Ethernet-Netzwerks an die jeweils zu sendenden Stimulation-Daten ermöglicht.
-
Das Verfahren kann weiter das Durchführen einer Zugangskontrolle umfassen. Insbesondere kann der Anschluss eines Datenloggers oder einer Stimulations-Einheit an die OBD-Ethernet-Schnittstelle oder an eine Funk-Schnittstelle oder an eine sonstige Schnittstelle durch einen Schutzmechanismus kontrolliert werden, so dass die Datenkommunikation über diese Schnittstellen (z. B. das Empfangen von Logging-Daten und/oder das Senden von Stimulation-Daten) erst dann freigeschaltet wird, wenn ein besonderes Pinning im OBD-Stecker verwendet wird; und/oder wenn eine besondere Authentisierung/Legitimierung (z. B. durch kryptographische Methoden) durchgeführt wurde. Dies kann z. B. per Diagnose ISO14229 Diagnosebefehle und/oder Authentisierung gemäß VPN(Virtual Private Network)-Verbindungen, etc. erfolgen. Mit anderen Worten, das Verfahren kann umfassen, das Überprüfen einer Authentisierung eines Senders (z. B. eines Datenloggers oder einer Stimulations-Einheit) eines Konfigurations-Befehls. Das Senden des Konfiguration-Befehls an eine Zwischen-Komponente kann davon abhängig gemacht werden, ob die Authentisierung erfolgreich war.
-
Alternativ oder ergänzend kann der Anschluss eines Datenloggers oder einer Stimulations-Einheit an die OBD-Ethernet-Schnittstelle oder an eine Funk-Schnittstelle oder an eine sonstige Schnittstelle durch einen Schutzmechanismus kontrolliert werden, so dass die Datenkommunikation über diese Schnittstellen (z. B. das Empfangen von Logging-Daten und/oder das Senden von Stimulations-Daten) erst dann freigeschaltet wird, wenn die jeweilige Schnittstelle zum Zeitpunkt der Datenkommunikation mit dem Datenlogger und/oder mit der Stimulations-Einheit nicht an bestimmte Datennetzwerke-Netzwerke (die insb. durch derartige Logging-Daten und/oder Stimulations-Daten gestört werden können) angeschlossen ist. Dieser Kontroll-Mechanismus kann insbesondere dadurch realisiert sein, dass das die Schnittstelle beherbergende Steuergerät des Fahrzeugs bestimmte Ethernet- oder IP-Botschaften an einzelne bestimmte Netzwerk-Adressen oder als Broadcast im Kommunikationsnetzwerk des Fahrzeugs versendet, um herauszufinden, ob bestimmte Dienste im Netzwerk angeboten werden (z. B. DHCP-Dienst). Abhängig davon welche Netzwerk-Dienste entdeckt werden, wird die Kommunikation freigeschaltet oder nicht. Der oben dargestellte Kontroll-Mechanismus kann auch dadurch realisiert sein, dass das die Schnittstelle beherbergende Steuergerät des Fahrzeugs bestimmte Ethernet- oder IP-Botschaften an einzelne Adressen oder als Broadcast im Kommunikationsnetzwerk des Fahrzeugs versendet, um herauszufinden, ob weitere Ethernet-Switches oder Router im Netzwerk vorhanden sind (z. B. „Traceroute” Befehle oder Nachrichten), die von Switches nicht weitergeleitet werden). In Abhängigkeit davon, wird die Kommunikation freigeschaltet oder nicht.
-
Die oben genannten Schutzmechanismen können z. B. in der Komponente des Netzwerks implementiert werden, durch die die jeweilige Schnittstelle für den Datenlogger und/oder für die Stimulation-Einheit bereitgestellt wird. Außerdem kann ein Teil des Schutzmechanismus (z. B. als Client) im Datenlogger oder in der Stimulation-Einheit umgesetzt werden. Insbesondere können der Datenlogger oder die Stimulations-Einheit eingerichtet sein, bestimmte durch das die Schnittstelle beherbergende Steuergerät versandte Nachrichten zu beantworten. Desweiteren können der Datenlogger oder die Stimulations-Einheit eingerichtet sein, zusätzlich oder ausschließlich entsprechende Nachrichten im Netzwerk zu versenden, um so das Vorliegen einer sicheren Netzwerk-Umgebung zu überprüfen.
-
Es ist darauf verwiesen, das statt dem die Schnittstelle beherbergenden Steuergerät andere im Fahrzeug verbaute Komponenten die oben genannte Kommunikation zur Zugangskontrolle durchführen können, um so die Freigabe des Schutzmechanismus zu ermitteln.
-
Die Stimulations-Komponente kann Teil eines Informations- und Kommunikationssystems (auch Head Unit genannt) des Fahrzeugs sein. Die Stimulations-Daten können dann auf einem (externen bzw. internen) Speichermedium des Informations- und Kommunikationssystems gespeichert sein, und von diesem versendet werden. Dadurch kann die kostenintensive Verwendung von dedizierten Stimulations-Einheiten vermieden werden. Die Stimulations-Komponente kann auch eine Funk-Schnittstelle (z. B. UMTS oder eine WLAN) umfassen. Dann können die Stimulations-Daten über die Funk-Schnittstelle von einer Stimulations-Einheit an das Fahrzeug gesendet werden. Dadurch wird ein zeitnahes Senden von Stimulations-Daten im Betrieb des Fahrzeugs ermöglicht.
-
Das Verfahren kann umfassen, das Ermitteln eines Stimulations-Szenarios aus einer Vielzahl von vordefinierten Stimulations-Szenarien. Jedes der vordefinierten Stimulations-Szenarien kann z. B. mindestens eine Komponente des Ethernet-Netzwerks als Stimulations-Komponente identifizieren (es sind auch mehrere Stimulations-Komponenten möglich, z. B. um das Verkehrsaufkommen durch die zusätzlichen Stimulations-Daten zu reduzieren). Desweiteren kann ein vordefiniertes Stimulations-Szenario ein oder mehrere sendende Steuergeräte und/oder ein oder mehrere empfangende Steuergeräte identifizieren, in deren Übertragungspfad Stimulations-Daten eingespeist werden sollen. Darüber hinaus kann ein vordefiniertes Stimulations-Szenario Konfigurationsparameter für ein oder mehrere Zwischen-Komponenten zum Konfigurieren der ein oder mehreren Zwischen-Komponenten spezifizieren. Die Konfigurationsparameter können z. B. einen für die Stimulations-Daten reservierten Datenkanal (auch Seitenkanal genannt) durch das Ethernet-Netzwerk mit einer vorbestimmten Übertragungsbandbreite definieren. Die Stimulations-Szenarios können auf Basis der Topologie des Ethernet-Netzwerks und/oder auf Basis der betrieblichen Datenströme durch das Ethernet-Netzwerk bestimmt werden. Durch die Verwendung von vordefinierten Stimulations-Szenarien kann sichergestellt werden, dass der zusätzliche Stimulations-Verkehr nicht die betrieblichen Datenströme des Fahrzeugs stört.
-
Es sei darauf hingewiesen, dass auch kombinierte Logging/Stimulations-Szenarien definiert werden können. Die in diesem Dokument beschriebene Verfahren können somit umfassen, dass algorithmische Ermitteln eines Logging- und/oder Stimulations-Szenarios aus einer Vielzahl von vordefinierter Rahmen-Parametern. Die Rahmen-Parameter können umfassen, mindestens eine Komponente des Ethernet-Netzwerks, die als Logging- und/oder Stimulations-Komponente identifiziert wird; ein oder mehrere sendende Steuergeräte und ein oder mehrere empfangende Steuergeräte, deren ausgetauschte Daten aufgezeichnet werden sollen, und/oder ein oder mehrere empfangende SGs, an die die Stimulations-Daten von der Stimulations-Komponente (anstelle von ein oder mehreren sendenden SGs) gesendet werden sollen; Nachrichten-Typen aus denen sich die ausgetauschten Daten zusammensetzen; Header-Daten, anhand die Logging-Daten und/oder die Stimulations-Daten selektiert bzw. identifiziert werden. In den Szenarien können die Konfigurationsparameter für ein oder mehrere Zwischen-Komponenten zum Konfigurieren der ein oder mehreren Zwischen-Komponenten spezifiziert sein. Desweiteren können anhand der Auswahl eines bestimmten Szenarios, die oben genannten Konfiguration-Befehle für die ein oder mehreren Zwischen-Komponenten maschinell erstellt werden.
-
Es kann ein Algorithmus zum Ermitteln der Konfigurations-Befehle für die ein oder mehreren Zwischen-Komponenten zu Verfügung gestellt werden. Dieser Algorithmus kann z. B. die für das Logging und/oder die Stimulation benötigten Bandbreiten auf den jeweiligen Datenleitungen des Kommunikationsnetzwerks des Fahrzeugs ermittelt und mit den jeweils verfügbaren Bandbreiten auf den jeweiligen Datenleitungen abgleichen und daraufhin eine möglichst geeignete Konfiguration erstellen, oder Rückmeldung geben, dass eine entsprechende Konfiguration unter Berücksichtigung der benötigten und verfügbaren Bandbreiten nicht möglich ist oder anbietet einen bestimmten Datenverkehr zu verwerfen, um die benötigten und verfügbaren Bandbreiten in Einklang zu bringen.
-
Das Verfahren kann weiter umfassen, eine Möglichkeit zur Auswahl eines vordefinierten Logging/Stimulations-Szenarios aus einer Menge der oben genannten Rahmen-Parameter vordefinierten Logging/Stimulations-Szenarien anzubieten.
-
Das Verfahren kann weiter das Platzieren eines SW-Moduls auf den Zwischen-Komponenten des Netzwerks, die Daten im Ethernet-Netzwerk übermitteln. Diese SW-Module können eingerichtet sein, Informationen an eine übergeordnete Einheit zu übermitteln, wobei die übergeordnete Einheit die oben erwähnten Konfiguration-Befehle ermittelt. Insbesondere können die jeweiligen SW-Module Informationen darüber bereitstellen, welche MAC-Adressen anderer Komponenten des Netzwerks über die verschiedenen Ports der Zwischen-Komponente erreichbar sind (d. h. Topologie-Informationen). Die übergeordnete Einheit kann auf Basis dieser Informationen eine fahrzeugweite Layer-2 Ethernet-Netzwerktopologie erstellen, um eine Konfiguration der Zwischen-Komponenten im Netzwerk festlegen zu können.
-
Desweiteren kann ein SW-Modul auf den Zwischen-Komponenten des Netzwerks platziert werden, die die Zwischen-Komponente einrichtet, die von der übergeordneten Einheit erstellten Konfiguration-Befehle zu interpretieren, zu verstehen und auszuführen. Die o. g. SW-Module können z. B. im Rahmen eines SW-Updateprozess des Fahrzeugs bzw. des beherbergenden Steuergeräts selektiv aktualisiert werden kann.
-
Die übergeordnete Einheit, die die Konfigurations-Befehle ermittelt, kann eine direkte oder indirekte Datenbankanbindung besitzen, welche der übergeordneten Einheit zur Berechnung der Konfigurations-Befehle z. B. folgendes Topologie-Wissen zu Verfügung stellen kann:
- • Topologie der Netzwerk-Links (d. h. insbesondere Informationen darüber welche Datenleitung an welchem Anschluss der Zwischen-Komponenten des Netzwerks angeschlossen ist); und/oder
- • Steuergeräte und deren Platzierung im Netzwerk; und/oder
- • Nachrichten-Typen, die im Netzwerk übertragen werden: und/oder
- • Informationen darüber, welcher Nachrichten-Typ mit welchen Header-Daten (z. B. VLANs, Ethertype, Protokoll) von welchen sendenden SG an welches empfangende Steuergerät gesendet wird; und/oder
- • Nicht-Ethernet-Netzwerke (d. h. andere Bussysteme) und deren Verknüpfungs-Punkte (Gateways) mit dem Ethernet-Netzwerk; und/oder
- • Nachrichten-Typen auf den Nicht-Ethernet-Netzwerken (d. h. auf anderen Bussystemen); und/oder
- • Steuergeräte und deren Platzierung in den Nicht-Ethernet-Netzwerken; und/oder
- • Informationen darüber, welcher Nachrichten-Typ mit welchen Header-Daten von welchem sendenden SG an welches empfangende Steuergerät in den Nicht-Ethernet-Netzwerken gesendet wird; und/oder
- • mögliche Anschlusspunkte für Datenlogger und/oder Stimulations-Einheiten; und/oder
- • für Logging und/oder Stimulation verfügbare Bandbreiten pro Übertragungsleitung; und/oder
- • belegte Bandbreite pro Übertragungsleitung und/oder pro Nachrichten-Typ.
-
Die übergeordnete Einheit, die die Konfiguration-Befehle ermittelt, kann eingerichtet sein, selber und/oder mit Hilfe anderer Einheiten, durch Senden von Netzwerk-Nachrichten (z. B. Traceroute-Befehle, Ping-Befehle, andere geeignete Nachrichten) eine Netzwerk-Topologie-Discovery auszuführen, um so die Struktur des Netzwerkes (Platzierung der Links und Zwischen-Komponenten im Ethernet-Netzwerk) sowie Position, MAC- sowie IP-Adressen der Steuergeräte zu ermitteln.
-
Die übergeordnete Einheit kann eingerichtet sein, die ermittelten Konfigurations-Befehle selbständig an alle relevanten Zwischen-Komponenten und/oder Steuergeräte zu versenden. Alternativ oder ergänzend kann die übergeordnete Einheit eingerichtet sein, eine Konfigurationsdatei oder ein Ablaufskript zu erzeugen, das zur Konfiguration der Zwischen-Komponenten und/oder der Steuergeräte benutzt werden kann.
-
Das Verfahren kann weiter umfassen, das Konfigurieren (z. B. anhand von Konfigurations-Befehlen), bestimmten applikativen oder betrieblichen Datenverkehr zu verwerfen (z. B. selektiv nach sendendem SG, empfangenden SG, Nachrichtentyp, etc.). Es kann z. B. bei im Rahmen eines Logging/Stimulations-Szenarios ermittelt werden, dass zusätzliche Bandbreite für die Logging- und/oder Stimulations-Daten auf bestimmten Datenleitungen benötigt wird. Diese zusätzliche Bandbreite kann durch das o. g. Konfigurieren von ein oder mehreren Zwischen-Komponenten geschaffen werden. In ähnlicher Weise können ein oder mehrere sendende Steuergeräte (durch Konfiguration-Befehle) zum gezielten Stummschalten eines oder mehrerer Nachrichtentypen konfiguriert werden, um die benötigte Bandbreite für die Stimulations- und/oder Logging-Daten zu schaffen.
-
Das Verfahren kann weiter umfassen, das Aktivieren („Aufwecken”) einer oder mehrerer Zwischen-Komponenten im Ethernet-Netzwerk. Zwischen-Komponenten können in bestimmten Teilnetzbetriebs-Zuständen des Fahrzeugs abgeschaltet sein (nicht funktionaler Standby-Modus). Wenn solche Zwischen-Komponenten jedoch für das Abzweigen/Übertragen von Logging-Daten und/oder das Einspeisen/Übertragen von Stimulation-Daten benötigt werden (z. B. um die Daten zur Logging-Komponente oder von der Stimulations-Komponente zu transportieren), können die Zwischen-Komponenten (z. B. anhand eines entsprechenden Konfiguration-Befehls aktiviert werden). Das Aktivieren kann z. B. über ISO14229 Diagnosebefehle entweder direkt in der im Standby-Modus befindlichen Komponente oder über dritte Komponenten ausgelöst werden. Alternativ oder ergänzend kann das Aktivieren über Steuergeräte-Konfigurations-Befehle ausgelöst werden, die z. B. von der übergeordneten Einheit ermittelt werden können.
-
In ähnlicher Weise kann das Verfahren weiter umfassen, das „Aktiv Halten” („Wachhalten”) einer oder mehrerer Zwischen-Komponenten im Ethernet-Netzwerk. Dadurch soll vermieden werden, dass die Zwischen-Komponenten nicht deaktiviert werden, obwohl diese sonst aufgrund des im Fahrzeug vorgesehenen Teilnetzbetriebs in einen Standby-Modus verfallen würden („Einschlafen der Steuergeräte”). Das „Aktiv Halten” kann z. B. über ISO14229 Diagnosebefehle entweder direkt in der vom Standby-Modus bedrohten Komponente oder über dritte Komponenten ausgelöst werden. Alternativ oder ergänzend kann das „Aktiv Halten” über Steuergeräte-Konfiguration-Befehle ausgelöst werden, die z. B. von der übergeordneten Einheit ermittelt werden können.
-
Das Verfahren kann auch das Auftrennen einer Ethernet-Leitung umfassen, z. B. um einen Datenlogger und/oder eine Stimulations-Einheit in die aufgetrennte Leitung einzuschleifen.
-
Die Konfiguration der Zwischen-Komponenten und/oder der Steuergeräte kann (wahlweise) persistent (also über einen Neustart der Komponenten/des SGs hinaus) oder flüchtig durchgeführt werden. Außerdem kann die Konfiguration der Zwischen-Komponenten und/oder der Steuergeräte (wahlweise) mit sofortiger Wirkung oder erst beim nächsten Aufstarten des Fahrzeugs bzw. der Komponenten/SGs erfolgen.
-
Wie oben dargelegt, kann der Zugriff zum Kommunikationssystem des Fahrzeugs für Logging/Stimulation durch Schutzmechanismen abgesichert werden. In ähnlicher Weise kann auch die Konfiguration der Steuergeräte und/oder der Zwischen-Komponenten durch Authentisierungsmaßnahmen (z. B. durch ISO14229 Diagnosebefehle) gesichert werden.
-
Zum Zeitpunkt des Umschalten einer Konfiguration in den Zwischen-Komponenten können besondere Aktionen im Fahrzeug ausgelöst werden. Insbesondere ist mit kurzzeitigen Kommunikationsstörungen in den Zwischen-Komponenten zu rechnen, wenn diese im laufenden Betrieb umgeschaltet werden. Derartige Störungen können z. B. durch folgende Maßnahmen kompensiert werden: Die Unterdrückung von Fehlerreaktionen (insb. die Unterdrückung von automotiven Fehlerspeichereinträgen) zum Zeitpunkt der Umschaltung der Konfiguration, um die zum Umschaltzeitpunkt zu erwartenden Nachrichtenausfälle (welche typischerweise in den Fehlerspeichern eingetragen werden) in den Zwischen-Komponenten zu ignorieren. Eine weitere Maßnahme ist das Senden einer Nachricht an alle Kommunikationsteilnehmer (Steuergeräte), die diese über die bevorstehende Umschaltung der Zwischen-Komponenten informiert und damit über die bevorstehenden Kommunikationsausfälle benachrichtigt.
-
Wie bereits oben dargelegt, kann das Verfahren weiter das Detektieren eines vordefinierten Zustands des Fahrzeugs umfassen. Das Ermitteln des Stimulations-Szenarios kann dann auf Basis des detektierten Zustands des Fahrzeugs erfolgen. So kann sichergestellt werden, dass (nur die) für den Zustand des Fahrzeugs relevante(n) Stimulations-Daten gesendet werden. Außerdem kann durch eine zustandsabhängige Auswahl von Stimulations-Szenarien der durch die Stimulations-Daten verursachte zusätzliche Datenverkehr reduziert werden.
-
Wie bereits oben dargelegt, kann das empfangende Steuergerät an ein anderes Bussystem des Kommunikationssystems angeschlossen sein als das Ethernet-Netzwerk. Die Empfangs-Komponente kann eingerichtet sein, Daten vom Ethernet-Netzwerk zu dem empfangenden Steuergerät über das andere Bussystem zu senden. Das Verfahren kann dann weiter umfassen, das Konfigurieren der Empfangs-Komponente, die von der Stimulation-Komponente empfangenen Stimulations-Daten (oder Teile davon) über das andere Bussystem an das empfangende SG zu senden. Der Teil der Stimulations-Daten, der an das empfangende Steuergerät über das andere Bussystem gesendet werden soll, kann in einem Stimulations-Szenario spezifiziert werden.
-
Gemäß einem weiteren Aspekt wird ein Ethernet-Netzwerk für ein Fahrzeug beschrieben, welches gemäß den in diesem Dokument beschriebenen Verfahren (z. B. dem Verfahren zum Aufzeichnen von Daten an einer Logging-Komponente des Ethernet-Netzwerks und/oder dem Verfahren zum Senden von Stimulations-Daten von einer Stimulations-Komponente) konfiguriert worden ist.
-
Gemäß einem weiteren Aspekt wird ein Software (SW) Programm beschrieben. Das SW Programm kann eingerichtet werden, um auf einem Prozessor ausgeführt zu werden, und um dadurch das in diesem Dokument beschriebene Verfahren auszuführen.
-
Gemäß einem weiteren Aspekt wird ein Speichermedium beschrieben. Das Speichermedium kann ein SW Programm umfassen, welches eingerichtet ist, um auf einem Prozessor ausgeführt zu werden, und um dadurch das in diesem Dokument beschriebene Verfahren auszuführen.
-
Es ist zu beachten, dass die in diesem Dokument beschriebenen Verfahren, Vorrichtungen und Systeme sowohl alleine, als auch in Kombination mit anderen in diesem Dokument beschriebenen Verfahren, Vorrichtungen und Systemen verwendet werden können. Desweiteren können jegliche Aspekte der in diesem Dokument beschriebenen Verfahren, Vorrichtung und Systemen in vielfältiger Weise miteinander kombiniert werden. Insbesondere können die Merkmale der Ansprüche in vielfältiger Weise miteinander kombiniert werden.
-
Im Weiteren wird die Erfindung anhand von Ausführungsbeispielen näher beschrieben. Dabei zeigt
-
1 ein beispielhaftes Kommunikationssystem eines Fahrzeugs mit einer Vielzahl von unterschiedlichen Bussystemen;
-
2 ein beispielhaftes Ethernet Netzwerk eines Fahrzeugs mit einer Vielzahl von Switches;
-
3 die schematische Struktur eines beispielhaften Ethernet Rahmens; und
-
4 ein Flussdiagram eines beispielhaften Verfahrens zum Datenlogging in einem Fahrzeug.
-
Die vorliegende Erfindung ist nicht auf die gezeigten Ausführungsbeispiele beschränkt. Insbesondere ist zu beachten, dass die Beschreibung und die Figuren nur das Prinzip der vorgeschlagenen Verfahren, Vorrichtungen und Systeme veranschaulichen sollen.
-
1 zeigt ein beispielhaftes Kommunikationssystem 100 für ein Fahrzeug (z. B. ein Kraftfahrzeug oder Automobil). Das System 100 umfasst einen zentralen Gateway 101, an dem verschiedene Bussysteme 120, 130, 140 angeschlossen sind. Bei dem Bussystem 120 handelt es sich z. B. um ein synchrones FlexRay Bussystem, bei dem Bussystem 130 handelt es sich z. B. um ein asynchrones CAN (Controller Area Network) Bussystem und bei dem Bussystem 140 handelt es sich z. B. um ein synchrones MOST (Media Oriented Systems Transport) Bussystem. An die jeweiligen Bussysteme sind unterschiedliche Komponenten des Fahrzeugs (wie z. B. Sensoren, Aktuatoren und/oder Steuergeräte (auf Englisch Electronic Control Units, ECU)) angeschlossen. So sind an den Bus 122 des Bussystems 120 die Komponenten 121, an den Bus 132 des Bussystems 130 die Komponenten 131 und an den Bus 142 des Bussystems 140 die Komponenten 141 angeschlossen.
-
Die Komponenten können gemäß dem Protokoll des jeweiligen Bussystems Daten als Sender auf den Bus geben bzw. Daten als Empfänger vom Bus nehmen. Wie in 1 dargestellt, wird dabei im Falle des FlexRay Bussystems 120, des CAN Bussystem 130 und des MOST Bussystems 140 jeweils ein gemeinsamer Bus 122, 132, 142 verwendet, dessen Übertragungskapazität von allen Komponenten 121, 131, 141, welche an den Bus 122, 132, 142 angeschlossen sind, geteilt werden muss. Dies hat den Nachteil, dass die für jede einzelne Komponenten 121, 131, 141 zu Verfügung stehende Übertragungskapazität mit steigender Anzahl von Komponenten 121, 131, 141 reduziert wird. Andererseits sind die zwischen den Komponenten 121, 131, 141 eines jeweiligen Busses 122, 132, 142 ausgetauschten Daten an jedem beliebigen Punkt des Busses 122, 132, 142 abgreifbar (z. B. auch am zentralen Gateway 101).
-
An den Gateway 101 ist auch ein Ethernet-Netzwerk 110 angeschlossen. Das Ethernet-Netzwerk 110 umfasst ebenfalls eine Vielzahl von Komponenten 111, welche über Busse 112 miteinander verbunden sind. Im Falle des Ethernet-Netzwerks 110 umfassen einige oder alle der Komponenten 111 jedoch meist Switches, welche es ermöglichen, Daten gezielt von einer sendenden Komponente 111 zu einer empfangenden Komponente 111 zu lenken, so dass diese Daten meist nicht auf allen Bussen 112 übertragen werden, sondern nur auf Bussen 112, welche auf dem Übertragungspfad zwischen der sendenden Komponente 111 und der empfangenden Komponente 111 liegen. Die Verwendung von Switches führt zu einer Erhöhung der für jede einzelne Komponente 111 verfügbaren Übertragungskapazität. Andererseits können die im Ethernet-Netzwerk 110 übertragenen Daten nicht an jedem beliebigen Punkt des Netzwerks 110 abgegriffen werden. Insbesondere kann nicht sichergestellt werden, dass alle Daten an dem zentralen Gateway 101 abgegriffen werden können.
-
Wie bereits in der Einleitung dargelegt, könnte zum Datenlogging zusätzliche Messtechnik im Fahrzeug verbaut werden. Dies führt jedoch zu einer Vielzahl von Nachteilen: Durch den Verbau von Messtechnik in jedem Ethernet-Bus (oder Ethernet-Link) 111 des automotiven Ethernet-Netzwerks 110 werden hohe Kosten für die Messtechnik selbst und für deren aufwändigen Verbau in jedem Ethernet-Link 111 verursacht. Außerdem können bei der Verwendung von Messtechnik meist nicht die vorhandenen Schnittstellen für Datenlogging (wie z. B. die OBD-Schnittstelle) verwendet werden, was weitere Kosten und Aufwände (z. B. Einbau und Zugriff auf den Kabelbaum des Fahrzeugs) verursacht. Außerdem verursacht zusätzliche Messtechnik für interne SG-Zustande an Debug-Schnittstellen der SGs Kosten in den Steuergeräten (Bereitstellung eines Debug-Interfaces für das Steuergerät), sowie Kosten bzgl. Logging-Hardware und deren Verbau in Versuchsträgern. Desweiteren wird der Datenverkehr auf den zu messenden Ethernet-Datenstrecken 111 durch die Messtechnik bzgl. des Zeitverhaltens des Datenverkehrs beeinflusst. Darüber hinaus kann aufgrund technischer Gründe, wie z. B. fehlender Bauraum oder erforderliche EMV (Elektromagnetische Verträglichkeit), das Einbringen von Messtechnik an bestimmten Ethernet-Links 111 des Ethernet-Netzwerks 110 gänzlich unmöglich sein, so dass Daten die nur auf diesem und keinem anderen Link 111 verfügbar sind, nicht aufgezeichnet werden können. Folglich ist der auf diesen Links 111 vorhandene Verkehr nicht in den Logging-Aufzeichnungen sichtbar. Schließlich können Serienfahrzeuge (z. B. im Werk oder bei der Wartung) meist nicht mit vertretbarem Aufwand umgebaut werden, um alle Daten loggen zu können, so dass ein umfassendes Datenlogging in Ethernet-Netzwerken 110 meist nicht möglich ist.
-
In Anbetracht der oben genannten Nachteile bei der Verwendung von spezifischer Messtechnik für das Datenlogging in einem Fahrzeug, beschreibt das vorliegende Dokument ein Verfahren, welches die vorhandene Fahrzeug-Infrastruktur für Datenlogging nutzt, so dass im Allgemeinen keine Umbauten am Fahrzeug notwendig sind und dennoch alle relevanten Daten des automotiven Ethernet-Netzwerks 110 aufgezeichnet werden können. Das Verfahren greift auf eine spezielle Konfiguration der Ethernet-Switches in den Komponenten 111 (z. B. in den Steuergeräten 111) des Netzwerks 110 zurück. Wie bereits oben dargelegt, verfügen einige oder alle der Komponenten 111 (insbesondere an den Knotenpunkten des Netzwerks 110) über derartige Ethernet-Switches, welche es ermöglichen, Ethernet-Daten gezielt innerhalb des Netzwerks 110 zu orientieren. Diese Ethernet-Switches können dazu verwendet werden, zu loggende Daten über die vorhandenen Ethernet-Links 112 des Fahrzeug-Netzwerks 110 an einen bestimmten Aufzeichnungsort (z. B. an die OBD-Schnittstelle des Fahrzeugs) zu lenken. D. h. es wird vorgeschlagen, das vorhandene Ethernet-Netzwerk (d. h. insbesondere die Ethernet-Switches und die Ethernet Links 112) nicht nur für den Datenverkehr im Fahrzeug, sondern gleichzeitig auch für Logging- und Debugging-Zwecke zu nutzen.
-
2 zeigt ein beispielhaftes Ethernet-Netzwerk 200 (z. B. das Ethernet-Netzwerk 110 aus 1). Bei dem Ethernet-Netzwerk 200 kann es sich z.B. um ein Fast Ethernet (100 Megabit/s) oder um ein Gigabit-Ethernet (1000 Megabit/s) handeln. Das Netzwerk 200 umfasst eine Vielzahl von Komponenten 210, 211, 220, 221, 222, 230, 231, 232, 233 (z. B. Sensoren, Aktuatoren und/oder Steuergeräte), welche über verschiedene Ethernet Busse (oder Ethernet-Links) 241, 242, 243, 244, 245, 246, 247, 248 miteinander verbunden sind. Einige der Komponenten 210, 220, 230 kommunizieren direkt mit einer Vielzahl von anderen Komponenten des Netzwerks 200. Diese Komponenten 210, 220, 230 umfassen typischerweise Ethernet-Switches, um Daten zwischen den jeweils direkt angeschlossenen Komponenten weiterleiten zu können. Diese Komponenten 210, 220, 230 werden in diesem Dokument als Knoten-Komponenten bezeichnet. Komponenten 211, 221, 222, 231, 232, 233, welche nur als Sender bzw. Empfänger auftreten, jedoch keine weiterleitende Funktion haben, werden als End-Komponenten bezeichnet. End-Komponenten umfassen typischerweise keine Ethernet-Switches.
-
Desweiteren ist in 2 ein Datenlogger 260 gezeigt, der über eine Ethernet-Schnittstelle 249 (z. B. über die OBD-Schnittstelle des Fahrzeugs) an die Knoten-Komponente 230 angeschlossen ist. Diesem Datenlogger 260 soll es ermöglicht werden, auf alle im Ethernet-Netzwerk 200 ausgetauschten Daten zuzugreifen. An der Knoten-Komponente 230 sind jedoch typischerweise nur die zwischen den direkt angeschlossenen Komponenten 220, 231, 232, 233 ausgetauschten Daten verfügbar. Daten, welche z. B. zwischen den End-Komponenten 211 und 222 ausgetauscht werden (wie durch die Linien 251, 252, 253 dargestellt), sind an der Knoten-Komponente 230 nicht abgreifbar.
-
Es wird vorgeschlagen, die in den Knoten-Komponenten 210, 220, 230 enthaltenen Ethernet-Switche so zu konfigurieren, dass eine Kopie der Daten, welche z. B. von der End-Komponente 211 an die End-Komponente 222 (und/oder umgekehrt) geschickt werden, durch das Ethernet-Netzwerk 200 an die Knoten-Komponente 230 geleitet wird und so mit dem Datenlogger 260 erfasst werden kann. Dies ist in 2 durch die strichelten Pfeile 255, 259 dargestellt, welche einen Seitenkanal für Logging-Daten darstellen sollen. Dieser Seitenkanal wird auf Basis der existierenden Infrastruktur im Netzwerk 200, d. h. auf Basis der bestehenden Ethernet-Links 255, 259 und der bestehenden Switches in den Knoten-Komponenten 210, 220, 230 bereitgestellt. So ist es möglich, alle im Ethernet-Netzwerk 200 ausgetauschten Daten an einer beliebigen Stelle im Netzwerk 200 bereitzustellen und zu loggen.
-
3 zeigt die Struktur eines beispielhaften Ethernet-Rahmens 300. Die im Ethernet-Netzwerk 110, 200 übertragenen Daten haben typischerweise die in 3 dargestellte Rahmenstruktur. Der Ethernet-Rahmen umfasst Header-Daten 301, 302, 303, 304, Payload-Daten (auch Nutzdaten genannt) 305 und Fehler-Korrektur-Daten 306 (Frame Check Sequence, FCS). Die Header-Daten umfassen eine Zieladresse 301 (Media Access Control, MAC, Adresse), welche die Empfangs-Komponente (z. B. die End-Komponente 222) im Ethernet-Netzwerk 200 identifiziert. Desweiteren umfassen die Header-Daten eine Quell-Adresse 302, welche die Sende-Komponente (z. B. die End-Komponente 211) im Ethernet-Netzwerk 200 identifiziert. Desweiteren können die Header-Daten einen sogenannten VLAN-Tag (Virtual Local Area Network-Tag) 303 umfassen, der dazu verwendet werden kann, den Ethernet-Rahmen 300 einer bestimmten Klasse von Daten zuzuordnen. Beispielsweise könnte für die Datenklasse „Debugging-Daten” ein bestimmter Debugging-VLAN-Tag definiert werden, welcher Ethernet-Rahmen 300 zugefügt werden könnte, um die darin enthaltenen Daten als „Debugging-Daten” zu identifizieren. Schließlich können die Header-Daten ein Typ-Feld (den sogenannten EtherType) 304 umfassen. Das Typ-Feld gibt Auskunft darüber, welches Protokoll der nächsthöheren Protokollschicht von den Nutzdaten 305 verwendet wird.
-
Im Folgenden wird dargelegt, wie die Ethernet-Switches in den Knoten-Komponenten 210, 220, 230 des Ethernet-Netzwerks 200 konfiguriert werden können, um Daten von ausgewählten Komponenten des Netzwerks 200 (z. B. von ausgewählten Steuergeräten (SGs) des Fahrzeugs) an einem ausgewählten Punkt (z. B. an der Knoten-Komponente 230) des Netzwerks 200 loggen zu können.
-
Die Konfiguration der Ethernet-Switches kann per Diagnose-Befehl (z. B. gemäß einem Unified Diagnostic Services (UDS) Standard wie dem ISO14229 Standard) erfolgen. Die ein oder mehreren Diagnose-Befehle können z. B. über die OBD-Schnittstelle des Fahrzeugs oder über eine andere Diagnose-Schnittstelle des Fahrzeugs (z. B. Diagnose-CAN, Telediagnose, ...) an die zu konfigurierenden Ethernet-Switches gesendet werden. Dabei werden die Steuergeräte, die die zu konfigurierenden Ethernet-Switches enthalten, über die Systembusse 112, 122, 132, 142 des Fahrzeug-Kommunikationsnetzes 100 angesprochen.
-
Die Konfiguration der Ethernet-Switches kann auch über Ethernet-Steuer-Befehle über beliebige Ethernet-Interfaces des Fahrzeugs (z. B. die OBD-Schnittstelle, eine WLAN(Wireless Local Area Network)-Schnittstelle, eine UMTS(Universal Mobile Telecommunications System)-Schnittstelle, etc.) erfolgen. Die Ethernet-Switches werden derart vor-konfiguriert, dass gewährleistet ist, dass die Ethernet-Steuer-Befehle durch das gesamte Ethernet-Netzwerk 200 (und insbesondere bis zu den konfigurierenden Ethernet-Switches) transportiert werden können.
-
Die Konfiguration der Ethernet-Switches (d. h. das Generieren und das Senden der Konfiguration-Befehle) kann über externe Geräte (z. B. über einen Laptop, einen Tester, oder einen Datenlogger 260) oder über fahrzeuginterne Steuergeräte (z. B. über die Head Unit bzw. das Informations- und Kommunikationssystem des Fahrzeugs) erfolgen.
-
Die Konfiguration der Ethernet-Switches kann sowohl statisch als auch spezifisch auf Fahrzeug- oder Fehlerzustände dynamisch reagierend erfolgen. Eine statische Konfiguration der Ethernet-Switches kann z. B. für das Logging der Daten einer oder mehrerer bestimmter Steuergeräte (d. h. Komponenten des Netzwerks 200) verwendet werden. Andererseits kann die Konfiguration der Ethernet-Switches (und damit die Auswahl der abgezweigten und geloggten Daten) von einem Zustand des Fahrzeugs bzw. von dem Auftreten eines Fehlers abhängig gemacht werden. Beispielsweise könnte das Detektieren einer bestimmten Fehlersituation dazu führen, dass die Ethernet-Switches derart konfiguriert werden, dass die Daten, welche für eine Analyse der bestimmten Fehlersituation von Belang sind, abgezweigt und an den Datenlogger geleitet werden.
-
Die Konfiguration der Ethernet-Switches für das Abzweigen und Loggen bestimmter Daten sollte derart erfolgen, dass der für den Betrieb des Fahrzeugs erforderliche Austausch von Daten nicht gestört wird. Mit anderen Worten, auch bei Verwendung eines extra Seitenkanals 255, 259 für Daten-Logging sollte sichergestellt sein, dass der für den Betrieb des Fahrzeugs erforderliche Datenverkehr im Netzwerk 200 (insbesondere auf einem Ethernet-Link 245 auf dem ein Seitenkanal 255 eingerichtet wird) ungestört bleibt. Dies erfordert typischerweise eine netzübergreifende Planung, welche die Topologie des Netzwerks 200 und die betrieblichen Datenströme berücksichtigt.
-
Eine netzübergreifende Planung kann z. B. zu der Definition von Logging-Szenarien führen. Beispiele für Logging-Szenarien sind z. B. ein Szenario bei dem der gesamte Datenverkehr eines Steuergerätes A 211 zum Datenlogger 260 an Anschluss B (z. B. an einen bestimmten Port des Ethernet-Switches in der Knoten-Komponente 230) gesendet wird; oder ein Szenario bei dem der gesamte Datenverkehr zwischen SG A 211 und SG B 222 zum Datenlogger 230 an Anschluss C gesendet wird; oder ein Szenario bei dem alle Datenpakete auf Ethernet-Link A 241 zum Datenlogger 260 an Anschluss B gesendet werden. D. h. es können Szenarien definiert werden, welche festlegen, welche Daten des Ethernet-Netzwerks 200 abgezweigt werden sollen, und an welchen Punkt des Ethernet-Netzwerks 200 diese abgezweigten Daten zum Logging gesendet werden sollen. Die Szenarien können die Konfigurations-Befehle für die einzelnen Ethernet-Switches umfassen, welche eine Implementierung des jeweiligen Szenarios ermöglichen. Die Szenarien können derart geplant und definiert werden, dass eine Störung des betrieblichen Datenverkehrs durch das Datenlogging vermieden wird.
-
Die vordefinierten Szenarien können als vorgefertigte SW-Module in die Steuergeräte eingebracht werden, welche zu konfigurierende Ethernet-Switches enthalten. Diese SW-Module können z. B. durch den Fahrzeughersteller (d. h. in Kenntnis der Ethernet-Netztopologie und in Kenntnis des betrieblichen Datenverkehrs) erstellt werden. Diese SW-Module können als eine SW-Einheit im Sinne der SW-Logistik realisiert werden und im Rahmen eines Flash-Updateprozesses eigenständig ersetzt werden (z. B. zur Berücksichtigung einer Änderung des betrieblichen Datenverkehrs oder zur Fehlerkorrektur der SW-Module).
-
Durch die Konfiguration eines Ethernet-Switches für ein bestimmtes Logging-Szenario soll sichergestellt werden, dass der konfigurierte Ethernet-Switch eine Kopie spezifischer Daten erzeugt und/oder spezifische Daten an einen spezifischen Port des Switches weiterleitet. Die Konfiguration derartiger Aktionen kann z. B. explizit durch Angabe von Register-Werten des Ethernet-Switches erfolgen. Desweiteren kann die Konfiguration durch Konfiguration auf Ebene von Switch-Features (wie z. B. Port-Mirroring) erfolgen.
-
Wie bereits erläutert, müssen sich auf einem Ethernet-Link 245 typischerweise der normale betriebliche Fahrzeug-Datenverkehr und der zusätzliche Logging-/Debugging-Verkehr die vorhandene Bandbreite des Ethernet-Links 245 teilen. Eine Szenarien-basierte Konfiguration der Ethernet-Switches des Netzes 200 kann dazu verwendet werden, sicherzustellen, dass der zusätzliche Logging/Debugging-Verkehr den betrieblichen Fahrzeug-Datenverkehr nicht stört. Alternativ oder ergänzend, kann eine Beeinflussung des normalen betrieblichen Fahrzeug-Datenverkehrs durch den Logging-Verkehr vermieden werden, indem für Datenlogging eine feste Bandbreite auf dem Ethernet-Link 245 (z. B. 10% der Bandbreite) reserviert wird bzw. über einen QoS (Quality of Service) Mechanismus sichergestellt wird, dass die beiden Verkehrsarten (d. h. der Logging-Verkehr und der betriebliche Fahrzeug-Datenverkehr) sich nicht stören. Die Unterscheidung zwischen normalem betrieblichem Fahrzeug-Datenverkehr und Logging-Verkehr kann anhand verschiedener Ethernet-Mechanismen geschehen (z. B. VLAN-Tagging, Double-Tagging, Addressierung). Es kann somit ein logischer paralleler Seitenkanal 255 nur für Logging-Zwecke reserviert werden.
-
Durch die Generierung eines Seitenkanals 255 kann sichergestellt werden, dass der Logging-Verkehr eine bestimmte maximale Übertragungsrate nicht überschreitet. Falls mehr Logging-Daten anfallen als über den Seitenkanal 255 übertragen werden können, können die überschüssigen Logging-Daten (durch einen Ethernet-Switch) verworfen werden. Falls Logging-Daten (d. h. Logging-Pakete) wegen Überfüllung des Seitenkanals 255 verworfen werden, kann dies in der Knoten-Komponente 220, welche den sendenden Switch des Seitenkanals 255 beherbergt, als Fehler im Speicher des Switches vermerkt werden und/oder im Logging-Datenverkehr als zusätzliche (ggf. zyklische) Fehlerstatus-Botschaft gesendet werden. Dadurch wird sichergestellt, dass der Datenlogger 260 darüber informiert wird, dass bestimmte Logging-Daten zu einem bestimmten Zeitpunkt verloren gegangen sind.
-
Durch die Konfiguration wird in jedem Ethernet-Switch, der auf dem Übertragungspfad zwischen dem Ursprung der Logging-Daten und dem Datenlogger 260 liegt, festgelegt, in welche Richtung die Logging-Datenpakete weitergeleitet werden sollen, um zum Datenlogger 260 zu gelangen. Es können auch gleichzeitig mehrere Datenlogger 260 an verschiedenen Stellen im Netzwerk 200 angeschlossen werden. Es kann durch die Konfiguration der Ethernet-Switches des Netzwerks 200 erreicht werden, dass Logging-Daten gemäß verschiedener Kriterien an jeweils einen der Datenlogger 260 geleitet werden, um dort die Logging-Daten selektiv aufzuzeichnen. Beispielsweise könnte eine Kopie des Streaming-Verkehrs von Kameras des Fahrzeugs zum Datenlogger 260 an einen freien Switch-Port des iCam-Steuergerätes (d. h. des Steuergerätes für eine interne Kamera) gesendet werden, während eine Kopie des Kontroll-Datenverkehrs des gesamten Fahrzeugs an einen Datenlogger an der OBD-Schnittschnelle geleitet wird, und/oder während eine Kopie des internen Status der Head Unit an einen Datenlogger über eine WLAN-Schnittstelle gesendet wird. Die Verwendung einer Vielzahl von Datenloggern an einer korrespondierenden Vielzahl von Punkten im Ethernet-Netzwerk 200 und das selektive Senden von Logging-Daten an jeweils einen der Vielzahl von Datenloggern kann dazu verwendet werden, die Belastung des Ethernet-Netzwerks 200 durch den zusätzlichen Logging-Datenverkehr zu reduzieren.
-
Anhand der Switch-Konfiguration kann in jedem Switch festgelegt werden, welche Datenpakete zu einem der Datenlogger 260 weitergeleitet werden sollen. Dabei kann die Auswahl der Datenpakete 300 in einem Ethernet-Switch auf Basis z. B. von einem oder einer Kombination mehrerer der folgenden Kriterien erfolgen:
- • Ziel-Adresse (MAC-Adresse) 301 des Pakets/Rahmens 300;
- • Absender-Adresse (MAC-Adresse) 302 des Pakets/Rahmens 300;
- • VLAN-Tag 303 des Pakets/Rahmens 300;
- • IP-Adresse des Absenders (z. B. durch Verwendung einer Deep Packet Inspection (DPI) Funktionalität des Ethernet-Switches);
- • IP-Adresse des Empfängers (z. B. durch Verwendung einer Deep Packet Inspection (DPI) Funktionalität des Ethernet-Switches);
- • Ether-Type 304 des Pakets/Rahmens 300;
- • Protocol der im Paket/Rahmen 300 enthaltenen Nutzdaten 305;
- • Auswahl eines oder mehrerer kompletter Ethernet-Links 241;
- • mit DPI erfassbare Eigenschaften des Pakets/Rahmens 300;
-
Durch die o. g. Kriterien können diejenigen Pakete/Rahmen 300 in einem Ethernet-Switch identifiziert werden, welche für das Logging relevant sind. Der Ethernet-Switch kann eingerichtet sein, die identifizierten Pakete/Rahmen 300 mit einer durch die Ethernet-Switches auswertbare „Markierung” (z. B. VLAN-Tag) zu versehen, um so das Lenken der Logging-Pakete/Rahmen 300 durch das Ethernet-Netzwerk 200 bis zum Datenlogger 260 zu vereinfachen. Z. B. können die identifizierten Pakete/Rahmen 300 mit einem „Debugging” VLAN-Tag versehen werden, der von den Ethernet-Switches zur Weiterleitung an den Datenlogger 260 verwendet wird.
-
Alternativ oder ergänzend zum normalen betrieblichen Datenverkehr im Ethernet-Netzwerk 200, können auch SG-interne Daten, die sonst nicht auf den Ethernet-Datenleitungen 241 versendet werden, von den SGs ausgegeben werden, und an den Datenlogger 260 weitergeleitet werden. Dazu kann per Diagnose-Befehl ein bestimmter Modus in einem relevanten SG 211 (oder in mehreren SGs 211, 222), das interne Daten ausgeben soll, aktiviert werden. Das relevante SG 211 gibt daraufhin interne Statusinformationen aus und sendet diese internen Statusinformationen als Ethernet-Pakete/Rahmen 300 über den oben genannten Seitenkanal 255 des Fahrzeug-Netzwerks 200 an den Datenlogger 260. Diese Statusinformationen können als solche kenntlich gemacht werden (z. B. durch VLAN, Ether-Type, Protocol, etc.). Die auf den Seitenkanal 255 gelegten Daten können optional eine durch die Switches auswertbare „Markierung” (z. B. einen bestimmten VLAN-Tag, ein Protocol, eine Ziel-Adresse) erhalten. Dadurch ist es möglich die internen Statusinformationen gezielt durch das Netzwerk 200 zu leiten und an dem Datenlogger 260 als „interne Statusinformationen” kenntlich zu machen. Durch die Versendung von SG-internen Statusinformationen über das Ethernet-Netzwerk 200 des Fahrzeugs kann auf dedizierte Diagnose-Schnittstellen an den SGs verzichtet werden, was die Kosten für die SGs reduziert.
-
Anhand der Switch-Konfiguration kann in jedem Switch festgelegt werden, ob ein bestimmtes Logging-Paket 300, das mehrere Switches des Netzwerks 200 passiert, pro passiertem Switch einmal kopiert werden soll. In diesem Fall ist der gesamte Weg des Pakets 300 durch das Netzwerk 200 verfolgbar, da von jedem Ethernet-Switch eine Kopie des Logging-Pakets 300 versendet wird. Andererseits können die Switches derart konfiguriert sein, dass das bestimmte Logging-Paket 300 insgesamt nur einmal in Richtung Datenlogger 260 kopiert wird, was zu einer Bandbreiten-effizienteren Lösung führt. Diese Optionen können über Konfiguration der Ingress/Egress-Queues der Switches implementiert werden.
-
Im Folgenden werden verschiedene Optionen für das Aufzeichnen (d. h. das Logging) der abgezweigten Daten beschrieben. Das Fahrzeug-Netzwerk 100, 200 kann derart genutzt werden, dass der Datenlogger 260 über eine Ethernet-Schnittstelle 249 im OBD-Stecker des Fahrzeugs angeschlossen wird und der aufzuzeichnende Datenverkehr an die Ethernet-Schnittstelle 249 im OBD-Stecker geleitet wird. Somit ist keine weitere Schnittstelle im Fahrzeug für die Aufzeichnung von Logging-Daten erforderlich.
-
Das Fahrzeug-Netzwerk 100, 200 kann dazu verwendet werden, dass der Datenlogger 260 über eine vorhandene drahtlose Ethernet-Schnittstelle im Fahrzeug angeschlossen wird (z. B. eine WLAN und/oder 3G und/oder UTMS-Schnittstelle in einem Antennenmodul des Fahrzeugs). Der aufzuzeichnende Datenverkehr kann an eine solche drahtlose Ethernet-Schnittstelle umgeleitet werden. Dadurch kann eine Fern-Diagnose ermöglicht werden. Insbesondere können dadurch Diagnose-Daten während des normalen Betriebs des Fahrzeugs auf der Straße erfasst werden und zeitnah an einen Datenlogger 260 gesendet werden.
-
Das Fahrzeug-Netzwerk 100, 200 kann derart genutzt werden, dass der Datenlogger 260 über einen freien Switch-Port eines beliebigen Steuergerätes (z. B. des internen Kamera, iCAM, Steuergerätes) angeschlossen werden kann. Der aufzuzeichnende Datenverkehr kann durch das Ethernet-Netzwerk 200 zu dem ausgewählten Switch-Port des ausgewählten Steuergerätes geleitet werden. Das Fahrzeug-Netzwerk 100, 200 kann derart genutzt werden, dass der Datenlogger 260 über eine zusätzliche Mess-Schnittstelle („Logging-Adapter”) angeschlossen werden kann und der aufzuzeichnende Datenverkehr zu der zusätzlichen Mess-Schnittstelle umgeleitet wird.
-
Alternativ oder ergänzend kann das Fahrzeug-Netzwerk 100, 200 derart genutzt werden, dass der aufzuzeichnende Datenverkehr zu einem bestimmten SG (d. h. zu einer bestimmten Komponente 211 im Ethernet-Netzwerk 200) im Fahrzeug umgeleitet wird (z. B. zur Head Unit/zum Informations- und Kommunikationssystem des Fahrzeugs). Das bestimmte SG kann z. B. ein Speichermedium umfassen (z. B. eine Festplatte und/oder einen RAM-Speicher). Die zu loggenden Daten können dann ohne das Erfordernis eines dedizierten Datenloggers 260 in dem bestimmten SG aufgezeichnet werden. Insbesondere verfügen heutige Information- und Kommunikationssysteme über interne Speichermedien (z. B. zur Speicherung von Audio/Video/Navigations-Daten) und/oder über eine USB-Schnittstelle zum Anschluss von externen Speichermedien. Das interne Speichermedium und/oder ein über USB angeschlossenes externes Speichermedium könnten anstelle eines Datenloggers 260 zur Aufzeichnung der Logging-Daten verwendet werden. Dies führt zu einer signifikanten Reduzierung der Kosten für das Logging von Diagnose-Daten in einem Fahrzeug. Außerdem ermöglicht die Nutzung eines solchen (internen oder externen) Speichermediums die Möglichkeit, in einfacher Weise Diagnose-Daten während des normalen Betriebs des Fahrzeugs aufzuzeichnen (z. B. im Rahmen von Langzeit-Untersuchungen).
-
Das in diesem Dokument beschrieben Verfahren zur Abzweigung und Umleitung von Logging-Daten durch das Ethernet-Netzwerk 200 kann auch auf die Daten anderer Bussysteme 120, 130, 140 des Fahrzeug-Kommunikationssystems 100 angewendet werden. Hat ein SG, das am Ethernet-Netzwerk 200 angeschlossen ist, zusätzlich auch Zugriff auf ein oder mehrere andere Fahrzeug-Bussysteme (z. B. einen LIN(Local Interconnect Network)-Bus, einen CAN-Bus, etc.), so können die Daten, welche von diesem SG über ein anderes Fahrzeug-Bussystem empfangen werden, auch in den Logging-Seitenkanal 255 des Ethernet-Netzwerks 200 kopiert werden. Das SG kann per Diagnose-Befehl konfiguriert werden, bestimmte Daten von einem der anderen Fahrzeug-Bussysteme auf den Ethernet-Logging-Kanal 255 zu kopieren. Per Diagnose-Befehl kann festgelegt werden, welche Daten kopiert werden sollen und/oder an welche Zieladresse die kopierten Daten gesendet werden sollen. Es kann z. B. definiert werden, an welchen der mglw. mehreren Datenlogger 260 (Datenlogger an OBD-Dose, Datenlogger an WLAN Antennenmodul, Logging auf Head Unit-internem Speicher, Datenlogger über „Logging-Adapter”, etc.) die Daten eines anderen Fahrzeug-Bussystems gesendet werden sollen. Die für das Logging als relevant identifizierten Pakete können optional eine durch die Switches auswertbare „Markierung” (z. B. VLAN-Tag, Protocol, Ziel-Adresse) erhalten.
-
Mit anderen Worten, können die Komponenten des Ethernet-Netzwerks 200 derart konfiguriert werden, dass sie Daten eines anderen Bussystems 120, 130, 140 durch das Ethernet-Netzwerk 200 tunneln können. Dazu können bestimmte Komponenten des Netzwerks 200, welche auch mit einem anderen Bussystem 120, 130, 140 kommunizieren (sogenannte Gateway-Komponenten), derart konfiguriert werden, dass sie alle oder ausgewählte Daten des anderen Bussystems 120, 130, 140 als Nutzdaten 305 in ein oder mehrere Ethernet-Pakete/Rahmen 300 kopieren und die ein oder mehreren Ethernet-Pakete/Rahmen 300 derart kennzeichnen (z. B. anhand der Header-Daten 301, 302, 303, 304), dass sie wie Logging-Daten durch das Ethernet-Netzwerk 200 geleitet werden. Beispielsweise könnte die Gateway-Komponente 101 des Fahrzeug-Kommunikationsnetzwerks 100 dazu verwendet werden, ausgewählte Daten aus den Bussystemen 120, 130, 140 über das Ethernet-Netzwerk 110, 200 an einen Datenlogger 260 zu tunneln.
-
Das in diesem Dokument beschrieben Verfahren kann auch für Stimulationszwecke genutzt werden. Für Stimulationszwecke kann an Stelle eines (in der Regel passiven) Datenloggers 260 ein Gerät zur Stimulation von Steuergeräten im Fahrzeug-Netzwerk angeschlossen werden (z. B. ein Notebook). Eine Stimulation (z. B. eine Abfrage von Stati eines SGs oder das Aufrufen einer Webseite eines SG) kann dann ebenfalls über den reservierten Seitenkanal 255 erfolgen. Der normale betriebliche Datenverkehr wird somit nicht durch Stimulation-Daten beeinflusst. Damit der Datenverkehr zur Stimulation von den Switches des Netzwerks 200 als solcher erkannt wird, können die Stimulations-Datenpakete entsprechend markiert werden (z. B. mit einem VLAN-Tag, und/oder einem bestimmten Protokoll). Diese Markierung kann ggf. erst von dem letzten Switch vor dem Ziel-SG entfernt werden, sodass die Markierung im Netz 200 für Leitzwecke genutzt werden kann.
-
4 zeigt ein Flussdiagram eines beispielhaften Verfahrens 400 zum Datenlogging in einem Fahrzeug. Insbesondere ist das in 4 gezeigte Verfahren 400 auf das Aufzeichnen von Daten gerichtet, welche von einem sendenden Steuergerät an ein empfangendes Steuergerät eines Fahrzeugs über ein Kommunikationssystem 100, 200 des Fahrzeugs gesendet werden. Wie in den 1 und 2 dargestellt, umfasst das Kommunikationssystem 100 ein Ethernet-Netzwerk 110, 200. In einem solchen Ethernet-Netzwerk können Daten von einer Sende-Komponente 211 (welche z. B. das sendende Steuergerät umfasst oder dem sendenden Steuergerät entspricht) an eine Empfangs-Komponente 222 (welche z. B. das empfangende Steuergerät umfasst oder dem empfangenden Steuergerät entspricht) über einen Übertragungspfad 241, 242, 243 geleitet werden. Die Verwendung von Switches in dem Ethernet-Netzwerk 200 führt dazu, dass die auf dem Übertragungspfad 241, 242, 243 geleiteten Daten nur an solchen Komponenten 211, 210, 220, 222 des Netzwerks 200 verfügbar (d. h. abgreifbar) sind, die auf dem Übertragungspfad liegen. An anderen Komponenten 230 des Netzwerks sind diese Daten jedoch nicht verfügbar.
-
Das Verfahren 400 ist nun darauf gerichtet, die Daten an einer Logging-Komponente 230 des Ethernet-Netzwerks 110, 200, die nicht auf dem Übertragungspfad liegt, zu Verfügung zu stellen. Dazu umfasst das Verfahren 400 das Konfigurieren einer Zwischen-Komponente 220 des Ethernet-Netzwerks 110, 200, welche auf dem Übertragungspfad liegt, dazu, eine Kopie der Daten als Logging-Daten zu erstellen (Schritt 401) und an die Logging-Komponente 230 zu senden (Schritt 402). Desweiteren umfasst das Verfahren 400 das Aufzeichnen 403 der Logging-Daten an der Logging-Komponente 230.
-
In diesem Dokument wurde ein Verfahren zur Aufzeichnung von Daten in einem automotiven Ethernet-Netzwerk beschrieben. Das beschriebene Verfahren nutzt die vorhandene Infrastruktur des automotiven Ethernet-Netzwerks und ermöglicht so die kostengünstige Aufzeichnung von Daten (z. B. von Debugging-Daten) im Fahrzeug. Insbesondere können Kosten und Aufwände reduziert werden, welche zur Integration einer Infrastruktur für Datenlogger in ein Fahrzeug (während der Entwicklung, im Werk und für die Wartung) für Datenaufzeichnungen in automotiven Ethernet-Netzwerken erforderlich wären. So kann z. B. der Verbau dedizierter Messtechnik zur Aufzeichnung von Daten des automotiven Ethernet-Netzwerks gänzlich vermieden werden.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Nicht-Patentliteratur
-
- ISO 14229:1998 Standard [0014]
- ISO 14229:1998 Standard [0026]
- ISO14229 [0027]
- ISO14229 [0042]
- ISO14229 [0043]
- ISO14229 [0046]
- ISO14229 Standard [0070]