-
Die Erfindung betrifft ein Verfahren für eine Referenznachrichten-basierte Zeitsynchronisation in einem CAN-Netzwerk eines Kraftfahrzeuges, bei welchem von einem Zeitmaster an einen Zeitslave eine mit eine Zeitstempelinformation versehene Sync-Nachricht und anschließend eine Nachricht zur Übertragung der sendeseitigen Zeitstempelinformation übertragen wird.
-
In Kraftfahrzeugen nimmt die Anzahl von Fahrerassistenzsystemen ständig zu, wobei neuere Systeme den Fahrer vermehrt nicht nur warnen, sondern auch aktiv eingreifen. Beispiele hierfür sind die Erkennung von querenden Fahrzeugen, verbunden mit einer Notbremsfunktion oder das Folgen anderer Fahrzeuge, verbunden mit Lenk-, Brems- und Beschleunigungseingriffen. Für diese und andere Funktionen greifen die Fahrerassistenzsysteme auf verschiedene Sensoren, wie beispielsweise Radar- und/oder Ultraschallsensoren und/oder Stereokameras zu. Sensordaten werden auf den verschiedensten Bussystemen, wie Flex-Ray, CAN und Ethernet übertragen. Für Fahrerassistenzsysteme ist es wichtig, die Daten verschiedener Sensoren zeitlich zueinander zu ordnen, um ein konsistentes Bild der Umgebungssituation zu erhalten.
-
Gleichzeitig führt die stetige Zunahme von Fahrerassistenzsystemen, welche informieren, warnen oder gar eingreifen, zu Situationen, bei denen im Nachhinein das Verhalten der Systeme und Aktionen nachvollzogen werden soll. Es ist daher nützlich, in verschiedenen Fahrerassistenzsystemen über einen Zeitraum hinweg Informationen über Systemzustände zu speichern. Für eine anschließende Rekonstruktion des Geschehens ist es erforderlich, dass sich die dabei gespeicherten Daten zeitlich einander zuordnen lassen.
-
Aus der
DE 10 2011 087 472 A1 ist ein Verfahren zur Synchronisation von Uhren in Knoten eines Fahrzeugnetzes und zur Durchführung des Verfahrens eingerichteter Knoten bekannt. Dabei werden von einem Masterknoten mit einer Masteruhr Synchronisationstelegramme an mindestens einen Slave-Knoten mit einer Slave-Uhr gesendet, wobei der Slave-Knoten diese Telegramme auswertet. Dabei wird ein
Standard IEEE Std 802.1AS-2011 mit dem Titel "Timing and Synchronization for Time-Sensitive Applications in Bridged Local Area Networks" verwendet, welcher für die Erfüllung von Synchronisationsanforderungen von zeitkritischen Anwendungen in LANs geschaffen wurde. Bei diesem Standard erfolgt der Ablauf des Nachrichtenaustausches wie folgt: Der Master sendet zunächst eine Sync-Nachricht an den Slave und merkt sich den Zeitpunkt t
1, an welchen die Nachricht effektiv versendet wurde. Der Slave empfängt die Sync-Nachricht und merkt sich den Zeitpunkt t
2 des Empfangs. Anschließend überträgt der Master den Zeitpunkt t
1 zum Slave, entweder durch Einfügen in eine Sync-Nachricht oder durch Verwenden einer Follow-Up-Nachricht. Nach dem Erhalt des Zeitpunktes t
1 sendet der Slave eine Delay/Req-Nachricht an den Master und merkt sich den Zeitpunkt t
3, an welchem die delay-Req-Nachricht effektiv versendet wurde. Der Master empfängt diese Delay/Req-Nachricht und merkt sich den Zeitpunkt t
4 des Empfangs. Daraufhin überträgt der Master den Zeitpunkt t
4 wiederum zum Slave durch Versenden in einer Delay-Response-Nachricht.
-
Der Slave hat als Ergebnis des Nachrichtenaustausches alle vier Zeitstempel und kann daraus die durchschnittliche Laufzeit beim beiderseitigen Nachrichtenaustausch zwischen Master und Slave berechnen, wobei angenommen wird, dass die Laufzeiten zwischen Master und Slave wie auch die zwischen Slave und Master gleich groß sind. Ferner erfährt der Slave aufgrund der masterseitigen Zeitstempel den Wert der Zeitbasis des Masters und gleicht dadurch seine Zeit darauf ab.
-
Um den sendeseitigen Zeitstempel zu übertragen, ist die Versendung einer Sync-Nachricht und einer sich daran anschließenden Follow-Up-Nachricht notwendig. Dies hat den Nachteil, dass dadurch die Buslast erhöht wird, obwohl die Nachrichten nur allein dem Zweck dienen, Zeitinformationen vom Master zum Slave zu übertragen.
-
Aufgabe der Erfindung ist es, ein Verfahren für eine Referenznachrichten-basierte Zeitsynchronisation in einem CAN-Netzwerk anzugeben, bei welchem die Buslast reduziert wird.
-
Die Erfindung ergibt sich aus den Merkmalen der unabhängigen Ansprüche. Vorteilhafte Weiterbildungen und Ausgestaltungen sind Gegenstand der abhängigen Ansprüche. Weitere Merkmale, Anwendungsmöglichkeiten und Vorteile der Erfindung ergeben sich aus der nachfolgenden Beschreibung, sowie der Erläuterung von Ausführungsbeispielen der Erfindung, die in den Figuren dargestellt sind. Die Aufgabe ist mit einem Verfahren für eine Referenznachrichten-basierte Zeitsynchronisation in einem CAN-Netzwerk eines Kraftfahrzeuges dadurch gelöst, dass als Sync-Nachricht eine bereits vorhandene, zyklisch versendete CAN-Nachricht verwendet wird. Dies hat den Vorteil, dass keine Sync-Nachricht (Synchronisationsnachricht) separat für die Übertragung der Zeitsynchronisation generiert werden muss. Dadurch wird nur eine statt zwei spezifischen CAN-Nachrichten für die Zeitsynchronisation benötigt, wodurch die durch Zeitsynchronisation verursachte zusätzliche Buslast halbiert wird.
-
Vorteilhafterweise übersendet der CAN-Zeitmaster in der von ihm übertragene Sync-Nachricht eine Zeitstempelinformation der vorhergehenden Sync-Nachricht. Dadurch kann die Follow-Up-Nachricht entfallen, da die Sync-Nachricht zugleich auch die Funktion der Follow-Up-Nachricht übernimmt.
-
In einer Ausgestaltung speichert der CAN-Zeitslave für jede empfangene Sync-Nachricht von dem CAN-Zeitmaster einen Empfangszeitstempel und die darin enthaltene senderseitige Zeitstempelinformation, wobei der CAN-Zeitslave ab der zweiten empfangenen Sync-Nachricht eine Eigenzeit auf die Zeit des CAN-Zeitmasters zurück rechnet. Somit lässt sich die Zeit des CAN-Zeitmasters einfach dadurch ermitteln, dass der CAN-Zeitslave den Empfangsstempel der vorletzten empfangene Sync-Nachricht sowie den Sendezeitstempel in der zuletzt empfangenen Sync-Nachricht auswertet.
-
In einer Variante wird mit jeder Sync-Nachricht ein Zählwert übertragen, der bei der nächstfolgenden Nachricht um einen konstanten Wert verändert wird. Damit wird sichergestellt, dass auch wirklich die Zeitstempel von zwei tatsächlich aufeinanderfolgenden Sync-Nachrichten ausgewertet werden, wodurch eine korrekte Zuordnung der Sync-Nachrichten zueinander erfolgt.
-
Vorteilhafterweise ermittelt der CAN-Zeitmaster für jede von ihm übertragene Sync-Nachricht eine Zeitstempelinformation, welche in einer der Sync-Nachricht folgenden Follow-Up-Nachricht übertragen wird. Durch die Follow-Up-Nachricht wird der CAN-Zeitslave in die Lage versetzt, die Zeit des CAN-Zeitmasters zu bestimmen.
-
In einer Ausgestaltung wird die, die senderseitige Zeitstempelinformation enthaltene Follow-Up-Nachricht nach jeder n-ten Sync-Nachricht versandt. Das Versenden der Follow-Up-Nachricht richtet sich dabei vorzugsweise nach der Zykluszeit der verwendeten Sync-Nachricht, die von dem CAN-Zeitmaster versendet wird. Dabei muss je nach Zykluszeit der verwendeten Sync-Nachricht nicht jede Nachricht als Follow-Up-Nachricht genutzt werden. Aufgrund dieser Vorgehensweise wird die Buslast des CAN-Netzwerkes weiter entlastet.
-
Vorteilhafterweise erfolgt eine Zuordnung der Follow-Up-Nachricht zu der vorausgesandten Sync-Nachricht mittels eines Zeitüberwachungsmechanismus und/oder einer Prüfsumme. Prüfsummen werden dabei beispielsweise auf CRC-Basis genutzt sowie die parallele Existenz mehrerer Zeitbasen im Fahrzeug und deren Unterscheidung als Bestandteil der CAN-Nachrichten ausgewertet. Dadurch wird eine korrekte Zuordnung der Follow-Up-Nachricht zu der Sync-Nachricht hergestellt, welche entsprechend senderseitig zeitgestempelt wird.
-
In einer Ausführungsform wird zur Erkennung der Sync-Nachricht durch die Follow-Up-Nachricht ein CAN-Identifier in der Sync-Nachricht festgelegt. Dies erfolgt vorteilhafterweise in der Design-Phase des CAN-Netzwerkes und wird statisch in der Software abgelegt.
-
Alternativ dazu wird zur Erkennung der Sync-Nachricht durch die Follow-Up-Nachricht eine Erkennungsnachricht vom CAN-Zeitmaster zum CAN-Zeitslave gesandt, welche den CAN-Identifier der Sync-Nachricht enthält. Die Mitteilung des CAN-Identifiers erfolgt gleichzeitig zur Laufzeit zwischen Can-Zeitmaster und CAN-Zeitslave. In einer weiteren Alternative ist der CAN-Identifier der Sync-Nachricht Bestandteil der Follow-Up-Nachricht.
-
Weitere Vorteile, Merkmale und Einzelheiten ergeben sich aus der nachfolgenden Beschreibung, in der – gegebenenfalls unter Bezug auf die Zeichnung – zumindest ein Ausführungsbeispiel im Einzelnen beschrieben ist. Beschriebene und/oder bildlich dargestellte Merkmale können für sich oder in beliebiger, sinnvoller Kombination den Gegenstand der Erfindung bilden, gegebenenfalls auch unabhängig von den Ansprüchen, und können insbesondere zusätzlich auch Gegenstand einer oder mehrerer separater Anmeldung/en sein. Gleiche, ähnliche und/oder funktionsgleiche Teile sind mit gleichen Bezugszeichen versehen.
-
Es zeigen:
-
1 ein erstes Ausführungsbeispiel zur Übertragung einer Zeitinformation unter Zuhilfenahme einer Sync-Nachricht;
-
2 ein Ausführungsbeispiel zur Verteilung des Sekundenanteils auf mehrere Nachrichten;
-
3 ein zweites Ausführungsbeispiel zur Übertragung der Zeitinformation mit selbstreferenzierten Sync-Nachrichten.
-
Bei in Kraftfahrzeugen vorhandenen CAN-Netzwerken werden viele der CAN-Nachrichten zyklisch versendet. Eine dieser zyklisch versendeten, vorhandenen CAN-Nachrichten wird genutzt, um sende- und empfängerseitig zeitgestempelt zu werden. Diese Nachricht soll im Weiteren als Sync-Nachricht (Synchronisationsnachricht) bezeichnet werden. Diese Sync-Nachricht wird von einem CAN-Zeitmaster an einen CAN-Zeitslave versendet. Nach der als Referenznachricht verwendeten Sync-Nachricht wird eine Follow-Up-Nachricht seitens des CAN-Zeitmasters ausgesendet, welche die Zeitstempelinformation der vorhergehend gesendeten Sync-Nachricht enthält. Dabei muss je nach Zykluszeit der als Referenznachricht verwendeten Sync-Nachricht nicht jede Nachricht wirklich verwendet werden. So könnte z. B. bei einer alle 100 ms versendeten Nachricht nur auf jede zehnte Sync-Nachricht auch der Versand einer entsprechenden Follow-Up-Nachricht folgen. Für die korrekte Zuordnung der Follow-Up-Nachricht zu einer vorausgegangenen, als Referenznachricht verwendeten Sync-Nachricht bieten sich Zeitüberwachungsmechanismen und Prüfsummen an.
-
Der CAN-Zeitslave als Empfänger der Follow-Up-Nachricht muss natürlich wissen, welche der unterschiedlichen CAN-Nachrichten die als Referenznachricht verwendete Sync-Nachricht ist, die er zeitstempeln muss. Zu diesem Zweck wird ein spezieller CAN-Identifier benutzt, der in der, als Referenznachricht verwendeten Sync-Nachricht enthalten ist. Zur Bekanntmachung gibt es mehrere Möglichkeiten: Der CAN-Identifier der in der als Referenznachricht verwendeten Sync-Nachricht enthalten ist, wird in der Design-Phase des Netzwerks festgelegt und statisch in der Software abgelegt.
-
Darüber hinaus können neben Follow-Up-Nachrichten weitere spezielle Erkennungsnachrichten gesendet werden, in welchen der CAN-Zeitmaster dem CAN-Zeitslave zur Laufzeit den CAN-Identifier der als Referenznachricht verwendeten Sync-Nachricht mitteilt. Alternativ kann der CAN-Identifier der als Referenznachricht verwendeten Sync-Nachricht als Bestandteil der Follow-Up-Nachricht versendet werden. Darüber hinaus können in der Design-Phase des CAN-Netzwerkes mehrere mögliche Referenznachrichten und somit deren CAN-Identifier festgelegt und statisch in der Software abgelegt werden, wobei in der Follow-Up-Nachricht statt dem CAN-Identifier der Referenznachricht nur ein Verweis auf den statisch konfigurierten und tatsächlich verwendeten CAN-Identifier der Referenznachricht übertragen wird. 1 zeigt den beschriebenen Ablauf bei der Übertragung einer Zeitinformation von einem CAN-Zeitmaster zu einem oder mehreren CAN-Zeitslaves auf einem CAN-Bussystem, bei welchem eine ohnehin vorhandene CAN-Nachricht die als Referenznachricht verwendete Sync-Nachricht darstellt. Die Übertragung der Zeitinformation, bestehend aus 4 Bytes für den Sekundenanteil sowie 4 Bytes für den Mikrosekundenanteil nutzt in der Follow-Up-Nachricht beim Standard-CAN-Netzwerk die 8 Bytes-Nutzdatengröße komplett aus. Sobald jedoch weitere Mechanismen, wie z. B. eine CRC-Absicherung, die Unterscheidung verschiedener Zeitbasen, zusätzlicher Nachrichtentypen für Zeitoffsets oder die dynamische Festlegung der Referenznachricht verwendet werden sollen, sind die 8 Bytes nicht mehr ausreichend.
-
Hierbei gibt es mehrere Möglichkeiten, die 8 Bytes sinnvoll zu nutzen, von denen drei aufgeführt sind. Eine erste Möglichkeit besteht in der Reduktion der Zeitinformation, z. B. durch Übertragung des Sekundenanteils mit 4 Byte und eines Mikrosekundenanteils mit 20 Bits (= 2,5 Byte). Alternativ ist die Verwendung von CAN-Nachrichten mit höherer Nutzdatengröße im Bussystem CAN FD, einer Weiterentwicklung des CAN-Netzwerkes, möglich.
-
Darüber hinaus besteht die Möglichkeit der Verteilung des Sekundenanteils auf mehrere Nachrichten, wie es in 2 dargestellt ist. Dabei werden z. B. in jeder Follow-Up-Nachricht immer das niederwertigste Byte des Sekundenanteils übertragen und zusätzlich ein jeweils weiteres Byte des Sekundenanteils. So wird z. B. in einer Nachricht das zweitniederwertigste Byte, in der darauffolgenden Nachricht das zweithöherwertigste Byte und in der darauffolgenden Nachricht das höherwertigste Byte, gefolgt wiederum vom zweitniederwertigsten Byte in der nächsten Nachricht usw. übertragen. Dieser Mechanismus macht sich die Tatsache zunutze, dass die Zeitinformation normalerweise linear ansteigend ist und sich daher das niederwertigste Byte am häufigsten ändert. In 2 ist beispielhaft die Abfolge der Nachrichten dargestellt, wobei es einen Mikrosekundenanteil mit 20 Bit gibt und die korrekte Interpretation des jeweils übertragenen Sekundenanteils über einen fortlaufenden 4-Bit-Sequenzzähler von 0 bis 14 sichergestellt wird.
-
In 3 ist ein weiteres Ausführungsbeispiel der Übertragung einer Zeitinformation mit Sync-Nachrichten darstellt, wobei die Sync-Nachricht gleichzeitig auch die Follow-Up-Nachricht ist, da jede Sync-Nachricht sende- und empfangsseitig zeitgestempelt wird jedoch als Nachrichteninhalt den Sendezeitstempel der zuvor verschickten Sync-Nachricht überträgt. Bei dieser Selbstreferenzierung ermittelt der CAN-Zeitmaster für jede von ihm übertragene Sync-Nachricht einen Sendezeitstempel und überträgt darin jeweils den Sendezeitstempel der vorher übertragenen Sync-Nachricht. Der CAN-Zeitslave speichert für jede empfangene Sync-Nachricht den Empfangszeitstempel und den darin übertragenen Sendezeitstempel. Um zu einem Zeitpunkt die Masterzeit zu ermitteln, muss der CAN-Zeitslave den Empfangszeitstempel der vorletzten empfangenen Sync-Nachricht sowie den Sendezeitstempel in der zuletzt empfangenen Sync-Nachricht auswerten.
-
Da der Mechanismus nur bei jeweils zwei unmittelbar aufeinanderfolgenden Sync-Nachrichten korrekt funktioniert, muss, um eine inkorrekte Zuordnung zu vermeiden, welche z. B. durch den Verlust einer Nachricht auftreten kann, jede vom CAN-Zeitmaster ausgesandte Sync-Nachricht gekennzeichnet werden. Dafür gibt es verschiedene Möglichkeiten. Eine davon besteht darin, dass in der Sync-Botschaft zusätzlich ein überlaufender Sequenzzähler übertragen wird, der beispielsweise bei jeder versendeten Nachricht um 1 erhöht wird. Alternativ kann, wenn der zeitliche Abstand zwischen den versendeten Sync-Nachrichten konstant ist, wenig Jitter aufweist und zudem dem CAN-Zeitslave bekannt ist, beim Empfang der Sync-Nachrichten ein Nachrichtenverlust erkannt werden. Für die Übertragung der Zeitinformation gelten hinsichtlich der Datengröße die gleichen Beschränkungen, wie sie im Zusammenhang mit 1 und 2 erläutert wurden. Gleichzeitig existieren die gleichen Möglichkeiten der Abhilfe.
-
Obwohl die Erfindung im Detail durch bevorzugte Ausführungsbeispiele näher illustriert und erläutert wurde, so ist die Erfindung nicht durch die offenbarten Beispiele eingeschränkt und andere Variationen können vom Fachmann hieraus abgeleitet werden, ohne den Schutzumfang der Erfindung zu verlassen. Es ist daher klar, dass eine Vielzahl von Variationsmöglichkeiten existiert. Es ist ebenfalls klar, dass beispielhaft genannte Ausführungsformen wirklich nur Beispiele darstellen, die nicht in irgendeiner Weise als Begrenzung etwa des Schutzbereichs, der Anwendungsmöglichkeiten oder der Konfiguration der Erfindung aufzufassen sind. Vielmehr versetzen die vorhergehende Beschreibung und die Figurenbeschreibung den Fachmann in die Lage, die beispielhaften Ausführungsformen konkret umzusetzen, wobei der Fachmann in Kenntnis des offenbarten Erfindungsgedankens vielfältige Änderungen beispielsweise hinsichtlich der Funktion oder der Anordnung einzelner, in einer beispielhaften Ausführungsform genannter Elemente vornehmen kann, ohne den Schutzbereich zu verlassen, der durch die Ansprüche und deren rechtliche Entsprechungen, wie etwa weitergehenden Erläuterungen in der Beschreibung, definiert wird.
-
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 Patentliteratur
-
- DE 102011087472 A1 [0004]
-
Zitierte Nicht-Patentliteratur
-
- Standard IEEE Std 802.1AS-2011 mit dem Titel ”Timing and Synchronization for Time-Sensitive Applications in Bridged Local Area Networks” [0004]