-
Die Erfindung betrifft ein Verfahren zur Zeitsynchronisation in einem zyklusbasierten Busnetzwerk, insbesondere in einem Kraftfahrzeug. Dabei sendet ein Zeitgeber eine Referenzbuszeit an das Busnetzwerk.
-
Verfahren der eingangs genannten Art sind im Stand der Technik bekannt. Die Anzahl von Fahrerassistenzsystemen in Fahrzeugen nimmt ständig zu, wobei neuere Systeme den Fahrer vermehrt nicht nur warnen, sondern auch aktiv eingreifen. Beispiele hierfür sind die automatische 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 Systeme auf verschiedene Sensoren wie z. B. Radar-, Ultraschallsensoren und Stereokameras zu. Sensordaten werden auf verschiedenen Bussystemen wie CAN oder FlexRay übertragen.
-
Es ist für Fahrerassistenzsysteme, die Daten verschiedener Sensoren verarbeiten, wichtig, diese Daten zeitlich zueinander zuordnen zu können, um ein konsistentes Bild der Umgebungssituation zu erhalten, z. B. bei der eindeutigen Lokalisierung von sich bewegenden Objekten, welche sowohl über Radarsysteme als auch von Stereokameras detektiert werden.
-
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 können sollte.
-
Es kann daher nützlich sein, in verschiedenen Steuergeräten über einen Zeitraum hinweg Informationen über Systemzustände zu speichern. Für die anschließende Rekonstruktion des Geschehens ist es erforderlich, dass sich die dabei gespeicherten Daten zeitlich einordnen und sortieren lassen.
-
Die Verteilung von Funktionen auf unterschiedliche Steuergeräte, die oft an verschiedenen Kommunikationssystemen angeschlossen sind, führt zu der Schwierigkeit, Aktionen auf verschiedenen Steuergeräten zeitlich zu synchronisieren. Ein Beispiel hierfür ist die Blinker-Synchronisation.
-
Der
Standard IEEE Std 1588TM-2008 mit dem
Titel "IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems" beschreibt Mechanismen, um Zeitbasen in lokalen oder verteilten Netzwerken zu verbreiten und etablieren. Auf diesem Standard basiert der
Standard IEEE Std 802.1ASTM-2011 mit dem Titel „Timing and Synchronization for Time-Sensitive Applications in Bridged Local Area Networks", welcher für die Erfüllung von Synchronisationsanforderungen von zeitkritischen Anwendungen wie Audio- oder Videoübertragungen in LANs geschaffen wurde.
-
Die Standards beschreiben einen hierarchischen Ansatz der Etablierung einer gemeinsamen Zeitbasis, bei dem die Zeitbasis einer Netzwerkkomponente als sog. „Grandmaster” die Zeitbasen der anderen Netzwerkteilnehmer festlegt. In diesem hierarchischen Ansatz existieren Zeitmaster und Zeitslaves.
-
Ferner beschreiben die Standards Mechanismen, wie Zeitbasen über Kommunikationssysteme dergestalt übertragen werden, dass die unvermeidlichen Verzögerungen zwischen Sender und Empfänger bei der Übertragung zu einem möglichst geringen Fehler auf der Empfängerseite führen.
-
Die
DE 10 2011 087 472 A1 offenbart darüber hinaus ein Verfahren zur Synchronisation von Uhren in Knoten eines Fahrzeugnetzes und zur Durchführung des Verfahrens eingerichteter Knoten. Dabei ist vorgesehen, dass ein Master-Knoten mit einer Master-Uhrsynchronisations-Telegramme aussendet, die in einem Slave-Knoten mit Slave-Uhr ausgewertet werden, wobei der Takt des Slave-Knotens bzw. der der Slave-Uhr an den Takt des Master-Knotens bzw. der Master-Uhr angepasst wird. Des Weiteren wird die Übertragungszeit für ein Telegramm berücksichtigt und eine Zeitverschiebung zwischen Master-Uhr und Slave-Uhr korrigiert.
-
Derartige Verfahren sind jedoch nicht in allen Busarchitekturen möglich. Manche Busarchitekturen sind nicht in der Lage, Nachrichten übertragungssende- und empfangsseitig mit einem Zeitstempel zu versehen. Dies ist häufig bei zyklusbasierten Busnetzwerken der Fall.
-
Aufgabe der Erfindung ist es somit, ein Verfahren der eingangs genannten Art dahingehend weiterzubilden, dass eine Zeitsynchronisation in einem zyklusbasierten Busnetzwerk möglich ist.
-
Die Aufgabe wird gelöst durch ein Verfahren gemäß Anspruch 1 sowie durch ein Verfahren zur Übermittlung von zeitkritischen Informationen in einem Busnetzwerk gemäß dem nebengeordneten Anspruch 10. Weitere Ausgestaltungen der Erfindung sind Gegenstand der abhängigen Ansprüche.
-
Ein erfindungsgemäßes Verfahren zur Zeitsynchronisation, oder auch Uhrensynchronisation, findet Anwendung in einem zyklusbasierten Busnetzwerk, bei dem mehrere Knoten vorgesehen sind, von denen jedem Knoten ein ihm bekanntes Sendezeitfenster zugewiesen ist und eine bestimmte Gesamtanzahl von Sendezeitfenstern existiert. Das Verfahren sieht vor, dass ein Zeitgeber eine Referenzbuszeit an das Busnetzwerk sendet. Derartige zyklusbasierte Busnetzwerke reihen diskrete Kommunikationszyklen bzw. Hauptzyklen aneinander, in denen jedem Knoten ein Buszugriff pro Zyklus zugewiesen wird. Ein solcher Hauptzyklus unterteilt sich dadurch in verschiedene Sendezeitfenster bzw. Zyklen, die üblicherweise im Wesentlichen gleiche Länge haben.
-
Erfindungsgemäß ermittelt ein Knoten anhand der gesendeten Referenzbuszeit, der Länge eines Zyklus sowie dem Sendezeitfenster, in dem die Referenzbuszeit ermittelt wurde, eine Buszeit. Die Buszeit kann aktuell sein oder der Zeit entsprechen, die während der Ermittlung aktuell ist, dient aber als Basis zum Uhrenabgleich. Mit Hilfe der Erfindung kann eine Synchronisation der Uhren unterschiedlicher Teilnehmer eines Busnetzwerks erfolgen, ohne dass Zeitstempel vergeben werden müssen.
-
Das Sendezeitfenster, in dem die Referenzbuszeit ermittelt wurde, kann in der Vergangenheit, der Gegenwart oder in der Zukunft liegen. So kann gemäß einer Ausgestaltung der Erfindung die Referenzbuszeit zu Beginn des nächsten Hauptzyklus berechnet und vor oder nach dem Start des Hauptzyklus an die angebundenen Knoten versandt werden. Die Knoten können dann die entsprechende Zeitbasis der Referenzbuszeit ermitteln und durch Differenzbildung zur Empfangszeit ihre Uhren einstellen.
-
Die Erfindung macht sich zunutze, dass bei zyklusbasierten Busnetzwerken jeder Knoten regelmäßig mit dem Buszyklus synchronisiert ist, was mit hoher Präzision möglich ist. Die Knoten synchronisieren sich regelmäßig miteinander und gleichen ihre Taktraten aneinander an, um in einem gemeinsamen Hauptzyklus zu bleiben. In der Praxis lassen sich Präzisionen der Zyklen im Rahmen weniger Mikrosekunden erreichen. Somit nutzt die Erfindung aus, dass die Knoten bereits eine gemeinsame Basis, den Zyklus, besitzen, sodass durch Übermittlung der Informationen, in welchem Moment welches Zyklus' eine Referenzbuszeit ermittelt wurde, mit hoher Präzision eine Zeit beim Knoten ermittelt werden kann. Die dabei verursachten Abweichungen sind für viele Anwendungen, insbesondere im Kraftfahrzeugbereich nicht relevant.
-
Gemäß einer ersten möglichen weiteren Ausgestaltung der Erfindung kann das Busnetzwerk ein Flex Ray-Netzwerk sein. Flex Ray ist ein etablierter Standard, der im automobilen Umfeld häufig verwendet wird. Das Kommunikationssystem Flex Ray etabliert eine eigene Zeitbasis für alle daran angeschlossenen Netzwerkknoten. Dazu werden in der Definitionsphase eine Teilmenge der Knoten als sogenannte Sync-Knoten verwendet, die jeweils eine ihrer zyklischen Nachrichten als sogenannten Sync-Frame übertragen. Alle übrigen Knoten empfangen diese Sync-Frames und vergleichen den tatsächlichen Empfangszeitpunkt mit dem aufgrund ihrer eigenen Flex Ray-Taktrate erwarteten Empfangszeitpunkt. Aus der Liste der Abweichungen wird in jedem Flex Ray-Knoten aufgrund eines in Flex Ray spezifizierten Mechanismus ein Mittelwert über eine Teilmenge gebildet und mit diesem Mittelwert dann die eigene Taktrate angepasst.
-
Gemäß einer weiteren möglichen Ausgestaltung des erfindungsgemäßen Verfahrens kann vorgesehen sein, dass der Zeitgeber eine Zeitbasis erhält und die Zeitbasis in die Referenzbuszeit umrechnet. Die Zeitbasis kann eine Realzeit oder eine andere Relativzeit sein. Die Referenzbuszeit kann so gestaltet sein, dass sie für die sie empfangenden Knoten interpretierbar ist.
-
Gemäß einer weiteren möglichen Ausgestaltung kann vorgesehen sein, dass die Referenzbuszeit eine Zyklusnummer sowie eine Sendezeitfensternummer ihrer Ermittlung enthält. Diese Informationen sind von den Knoten interpretierbar und liegen den Knoten in vielen zyklusbasierten Busnetzwerken bereits vor. Auf diese Weise ist eine einfache und vergleichsweise präzise Ermittlung der Referenzbuszeit möglich.
-
Gemäß einer weiteren möglichen Ausgestaltung des erfindungsgemäßen Verfahrens kann vorgesehen sein, dass die Referenzbuszeit regelmäßig gesendet wird, um dem Knoten einen Abgleich und eine Korrektur zu ermöglichen. Des Weiteren gibt es Knoten, die neu hinzukommen, denen bislang eine Referenzzeit fehlt, um ihre Uhr abgleichen zu können.
-
Des Weiteren kann gemäß einer weiteren möglichen Weiterbildung der Erfindung vorgesehen sein, dass die Referenzbuszeit zu einer beliebigen Zeit gesendet wird. Diese Zeit ist bevorzugt definiert. Auf diese Weise kann die Referenzbuszeit von einem in das Busnetzwerk eingebundenen Knoten, dem ein Sendezeitfenster zugewiesen ist, gesendet werden.
-
Gemäß einer weiteren möglichen Ausgestaltung der Erfindung kann vorgesehen sein, dass die Referenzbuszeit zu Beginn eines neuen Zyklus gesendet wird. Auf diese Weise kann das Senden durch deinen Master-Knoten geschehen, der üblicherweise in einem Kraftfahrzeug in einer Steuerung vorgesehen ist, welche wiederum üblicherweise eine Zeitbasis aufweist, beispielsweise eine Uhr.
-
Gemäß einer weiteren möglichen Ausgestaltung der Erfindung kann die Referenzbuszeit eine Zyklusnummer des Sendezyklus und/oder das Sendezeitfenster enthalten, in dem die Referenzbuszeit gesendet wird. Somit kann erreicht werden, dass Laufzeitunterschiede, die einen Zyklus übersteigen, richtig erkannt und verwertet werden.
-
Ein erster unabhängiger Gegenstand der Erfindung betrifft ein Verfahren zur Übermittlung von zeitkritischen Informationen in einem Busnetzwerk, bei dem ein Knoten eine Zeitinformation zur Information hinzufügt, wobei der Knoten die Zeitinformation auf der Grundlage der zuvor beschriebenen Erfindung ermittelt.
-
Auf diese Weise kann eine Zeitinformation übermittelt werden, die ein bestimmtes Ereignis oder eine bestimmte Information betrifft, ohne einen Zeitstempel im Sinne herkömmlicher Busnetzwerke aufweist. Stattdessen kann eine Zeitinformation auf der Basis des Sendezeitfensters erfasst werden. Gemäß einer weiteren möglichen Ausgestaltung des erfindungsgemäßen Verfahrens kann vorgesehen sein, dass die Übermittlungszeit von einem empfangenden Knoten aufgrund des zur Verfügung gestellten Sendezeitfensters des sendenden Knotens und des Sendezyklus ermittelt und abgelegt wird.
-
Die Erfindung wird anhand eines Ausführungsbeispiels erläutert. Dabei zeigen schematisch:
-
1 eine Darstellung eines aus dem Stand der Technik bekannten Verfahrens zur Etablierung einer gemeinsamen Zeitbasis;
-
2 eine schematische Darstellung zur Übertragung einer Zeitinformation gemäß dem erfindungsgemäßen Verfahren sowie
-
3 eine weitere schematische Darstellung zur Übertragung einer Zeitinformation in einem zyklusbasierten Busnetzwerk.
-
1 zeigt ein Verfahren zur Uhrensynchronisation nach dem Stand der Technik.
-
Dabei wird von einem Zeitgeber (Master) und einem Zeitempfänger (Slave) ausgegangen. Die Darstellung entspricht IEEE1588-2008. Zu einem Zeitpunkt T1 sendet der Master eine Sync-Nachricht an den Slave. Der Master merkt sich den Zeitpunkt T1, zu dem die Nachricht effektiv versendet wurde. Der Slave empfängt die Sync-Nachricht und merkt sich den Zeitpunkt T2 des Empfangs.
-
In einem zweiten Schritt überträgt der Master den Zeitpunkt T1 zum Slave, was auf zwei verschiedene Arten passieren kann. Entweder wird der Zeitpunkt T1 durch Einfügen in die Sync-Nachricht selbst vorgenommen. Dies erfordert jedoch spezielle Hardware. Die häufiger vertretene Art ist, den Zeitpunkt T1 mittels einer sogenannte Follow-up-Nachricht zu versenden. Von diesem Verfahren geht die vorliegende Darstellung aus.
-
In einem nächsten Schritt versendet der Slave eine Nachricht zum Feststellen Übermittlungszeit (Delay-Request) und merkt sich den Zeitpunkt T3, an welchem die Nachricht effektiv versendet wurde. Der Master empfängt die Delay-Request-Nachricht und merkt sich den Zeitpunkt T4 des Empfangs und übermittelt diesen in einem letzten Schritt durch Versenden einer Antwort, Delay-Response-Nachricht genannt.
-
Im Ergebnis hat der Slave vier Zeitstempel und kann daraus die durchschnittliche Laufzeit beim beiderseitigen Nachrichtenaustausch zwischen Master und Slave berechnen. Dabei wird angenommen dass die Laufzeiten zwischen Master und Slave wie auch die zwischen Slave und Master gleich groß sind. Dies ist häufig realistisch.
-
Durch den Zeitstempel des Masters erhält der Slave des Weiteren eine Zeitbasis des Masters und kann seine Zeit darauf anpassen.
-
2 zeigt eine Darstellung des erfindungsgemäßen Verfahrens anhand eines FlexRay-Kommunikationssystems.
-
Innerhalb des FlexRay-Kommunikationssystems gibt es mehrere Kommunikationszyklen, die eine Mehrzahl von Sendezeitfenstern, hier Zyklen genannt, enthalten. Im vorliegenden Ausführungsbeispiel sind 63 Sendezeitfenster vorgesehen. Jeder neue Kommunikationszyklus startet jeweils mit einem neuen Sendezeitfenster, das Zyklus 0 genannt wird. Innerhalb eines solchen Kommunikationszyklus bekommen alle Knoten je einmal Zugriff auf den Bus und können Informationen übermitteln.
-
Die Kommunikationszyklen erhalten Kommunikationszyklennummern, beispielsweise 1 für den oberen der dargestellten Kommunikationszyklen sowie 2 für den unteren Kommunikationszyklus. Die Kommunikationszyklennummern können sich fortsetzen oder zu bestimmten Zeitpunkten neu gestartet werden. Die im Busnetzwerk teilnehmenden Knoten sind, wie bereits zuvor beschrieben, auf die Kommunikationszyklenlänge synchronisiert und der ihnen zugewiesene Sendezyklus ist ihnen bekannt.
-
Durch den Sender der Referenzbuszeit kann zu einem beliebigen Zeitpunkt, beispielsweise in Sendezeitfenster Zyklus 60 aus Kommunikationszyklus 1 eine Referenzzeit einer Zeitbasis ermitteln und in eine Referenzbuszeit umrechnen, die Kommunikationszyklennummer und Sendezeitfenster der Ermittlung der Referenzzeit aufweisen.
-
Zu Beginn des Zyklusnummer 2 bei Zyklus 0 werden Informationen über die Ermittlung des Referenzzeitpunktes, also das die Referenzzeit bei Kommunikationszyklennummer 1 in Zyklus 60 ermittelt wurde, in das Busnetzwerk gesendet. Die Information wird von einem Knoten zu einem bestimmten Zeitpunkt in Kommunikationszyklennummer 2 erfasst, wobei der Knoten sowohl die aktuelle Kommunikationszyklennummer als auch das Sendezeitfenster der Erfassung kennt.
-
Durch Differenzbildung der Zeit des aktuellen Kommunikationszyklus sowie Berechnung des Zeitbetrags zwischen Berechnung der Referenzbuszeit und Start des neuen Kommunikationszyklus kann mit hoher Präzision berechnet werden, zu welchem Zeitpunkt die Referenzbuszeit ermittelt wurde und so eine effektive Zeitsynchronisation auf die Referenzbuszeit vorgenommen werden.
-
Des Weiteren kann eine Vereinfachung des Verfahrens dadurch erfolgen, dass angenommen wird, dass die Übermittlungszeiten innerhalb des Bussystems kleiner sind als die Dauer eines gesamten Kommunikationszyklus mit den Zyklen 0 bis 63. Dann kann davon ausgegangen werden, dass, wenn die aktuelle Kommunikationszyklennummer im Slave größer oder gleich der übertragenen Kommunikationszyklennummer ist, der Referenzzeitpunkt der nächste Start von Zyklus 0 ist. Wenn die aktuelle Kommunikationszyklennummer im Slave kleiner als die übertragene Zyklusnummer ist, so ist der Referenzzeitpunkt der zurückliegende, letzte Start von Zyklus 0.
-
3 zeigt eine solche Ausführungsform des erfindungsgemäßen Verfahrens.
-
Auch hier wird wieder davon ausgegangen, dass die Zyklen von Master und Slave aufgrund der Synchronisierung gleichzeitig starten. Irgendwann innerhalb des Zyklus wird ein Referenzzeitpunkt ermittelt. Statt des aktuellen Referenzzeitpunktes wird als Referenzbuszeit der Start des nächsten Zyklus aus dem Sendezeitfenster der Ermittlung des Referenzzeitpunktes ermittelt und an die Knoten versandt. Diese Informationen werden übertragen, wobei die Laufzeit unerheblich ist, da die Zyklen miteinander synchronisiert sind.
-
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 [0010]
-
Zitierte Nicht-Patentliteratur
-
- Standard IEEE Std 1588TM-2008 [0007]
- Titel ”IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems” [0007]
- Standard IEEE Std 802.1ASTM-2011 mit dem Titel „Timing and Synchronization for Time-Sensitive Applications in Bridged Local Area Networks” [0007]