-
HINTERGRUND DER ERFINDUNG
-
Eine Ausführungsform betrifft allgemein Controllerbereichsnetzwerksysteme von Fahrzeugen.
-
Das Controllerbereichsnetzwerk (CAN) ist ein Fahrzeugbusstandard, der dafür gedacht ist, es elektronischen Steuereinheiten (ECUs) und anderen Vorrichtungen zu ermöglichen, ohne einen zentralen oder Trägercomputer miteinander zu kommunizieren. Fahrzeugsysteme und Teilsysteme weisen zahlreiche ECUs auf, die Stellglieder steuern oder Daten von Erfassungsvorrichtungen empfangen. Viele Teilsysteme, die von den ECUs gesteuert werden, sind unabhängige Teilsysteme, die keine Kommunikation mit einem anderen Teilsystem aufweisen, während andere Teilsysteme miteinander kommunizieren und Daten gemeinsam nutzen (z. B. die Kraftmaschinensteuereinheit und die Steuereinheit für elektronisches Bremsen).
-
Das CAN-System ist ein asynchroner serieller Übertragungsbus, der ermöglicht, dass Botschaften seriell übermittelt werden. Daher werden Botschaften zwischen ECUs, wenn sie übertragen werden, nicht unbedingt unmittelbar über den CAN-Bus übertragen, wenn eine Botschaft erzeugt wurde. Wenn der CAN-Bus frei ist, wird die Botschaft augenblicklich übertragen. Wenn mehr als eine Botschaft übertragen wird, wird die dominantere Botschaft übertragen. Dies ist als Arbitrierungsprozess oder Schiedsgerichtsprozess bekannt. Eine CAN-Botschaft mit einer höchsten Priorität wird die Arbitrierung dominieren und eine Botschaft, die mit der niedrigeren Priorität übertragen wird, wird dies erkennen und warten. Dies wird durch ein binäres Bitsystem erreicht, das dominante Bits und rezessive Bits verwendet. Eine CAN-Botschaft enthält eine ID, die einen Botschaftstyp oder einen Sender kennzeichnet. Die ID besteht aus einer vorbestimmten Anzahl von Datenbytes. Zum Beispiel kann eine ID aus acht Datenbytes unter Verwendung von ”0”-en und ”1”-en bestehen. Dominante Bits sind eine logische ”0” und rezessive Bits sind eine logische ”1”. Dominante Bits erhalten eine höhere Priorität als rezessive Bits. Während eines Arbitrierungsprozesses wird die dominantere ID, die den niedrigeren Bitwert aufweist, die Arbitrierung gewinnen und Priorität haben.
-
Aufgrund der Verzögerung beim Übertragen von Informationen in den rezessiven Bits kann das gemeinsame Nutzen von Daten und die Integration von Daten zwischen zwei ECUs von verschiedenen CAN-Bussen in einer Architektur mit mehreren CAN-Bussen dazu führen, dass nicht synchronisierte Daten zusammengefasst bzw. integriert werden, wenn ihre Uhren nicht synchronisiert sind. Das heißt, dass ein Prozessor zum Zusammenfassen von Daten wissen muss, dass er Daten verwendet, die von den verschiedenen Sensoren zum im Wesentlichen gleichen Zeitpunkt aufgenommen werden. ECUs verwenden ihre lokalen Uhren, um Daten mit Zeitstempeln zu versehen, und wenn die lokalen Uhren nicht synchronisiert sind, dann kann eine Fehlanpassung von zeitlich abgestimmten Daten während eines Datenintegrationsprozesses auftreten. Beim Bemühen, die Zeiten aller ECUs durch Aussenden eines Uhrsignals zu synchronisieren, könnte ein Fahrzeug eine interne Uhr verwenden; aufgrund der asynchronen Natur des CAN-Systems und von Verzögerungen, die beim Übertragen von Botschaften über verschiedene CAN-Busse hinweg entstehen, kann jedoch eine Botschaft, die ein Uhrsignal enthält, beim Anlangen an den ECUs ebenfalls verzögert sein, was dazu führen würde, dass die lokalen Uhren der ECUs von verschiedenen CAN-Bussen unsychronisiert sind. Im Fall einer Kommunikation von Fahrzeug zu Fahrzeug (V2V) kann es außerdem für Fahrzeuge relevant sein, Sensordaten von anderen Fahrzeugen zu verwenden, um eine boardeigene Sensorzusammenführung durchzuführen und eine geeignete Betätigung und Steuerung durchzuführen. Die mit einem CAN-Bus in entfernten Fahrzeugen verbundenen Sensoren, die unter Verwendung von V2V-Botschaften übertragen werden, benötigen eine verbesserte Genauigkeit gegenüber dem, was zur Verfügung steht, wenn nur der V2V-Zeitsynchronisationsmechanismus verwendet wird, der typischerweise auf GPS beruht.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Ein Vorteil einer Ausführungsform besteht in der Synchronisation lokaler Uhren in einem asynchronen Controllerbereichsnetzwerk, das mehrere Controllerbereichsnetzwerkbusse aufweist, welche die Koordination von Daten von verschiedenen Sensoren in einem Controllerbereichsnetzwerksystem ermöglicht. Die Verzögerungen, die mit Botschaften, die in jedem Controllerbereichsnetzwerkbus in dem System übertragen werden, verbunden sind, werden geschätzt und eine Globalzeit wird für jeden Controllerbereichsnetzwerkbus justiert, um die Verzögerungen zu berücksichtigen. Botschaften, welche die justierte Globalzeit für jeden jeweiligen Controllerbereichsnetzwerkbus enthalten, werden an die verschiedenen Vorrichtungen übertragen, um lokale Uhren zu justieren und zu synchronisieren.
-
Eine Ausführungsform betrachtet ein Verfahren zum Synchronisieren der Zeit in einem nicht synchronisierten Controllerbereichsnetzwerksystem eines Fahrzeugs. Das System weist mehrere elektronische Steuereinheiten auf, die über mehrere Controllerbereichsnetzwerkbusse miteinander in Verbindung stehen. Die elektronischen Steuereinheiten stehen in Verbindung mit Erfassungsvorrichtungen, um erfasste Daten, die von den Erfassungsvorrichtungen beschafft wurden, zu sammeln. Jede elektronische Steuereinheit überträgt Botschaften an die mehreren Controllerbereichsnetzwerkbusse, um erfasste Daten mit anderen elektronischen Steuereinheiten gemeinsam zu nutzen (welche sich in dem betrachteten Fahrzeug befinden können oder im Fall von V2V in einem anderen Fahrzeug sein können). Die mehreren elektronischen Steuereinheiten stehen über die mehreren Controllerbereichsnetzwerkbusse in Verbindung mit einer Hauptsteuereinheit. Die Hauptsteuereinheit empfängt eine Globalzeit von einer Zeitsynchronisierungsquelle. Die Hauptsteuereinheit schätzt eine jeweilige Zeitverzögerung beim Übertragen von Botschaften durch die elektronischen Steuereinheiten auf jedem Controllerbereichsnetzwerkbus. Die Zeitverzögerung ist eine Differenz zwischen einem Zeitpunkt, an dem eine Botschaft von einer jeweiligen elektronischen Steuereinheit zur Übertragung auf einem jeweiligen Controllerbereichsnetzwerkbus erzeugt wird, und einem Zeitpunkt, an dem die Botschaft auf den jeweiligen Controllerbereichsnetzwerkbus übertragen wird. Die Globalzeit wird für jeden jeweiligen Controllerbereichsnetzwerkbus auf der Grundlage der geschätzten Zeitverzögerungen justiert, die jedem jeweiligen Controllerbereichsnetzwerkbus zugeordnet sind. Globalzeitbotschaften von der Hauptsteuereinheit in jedem Fahrzeug, welche die justierten Globalzeiten für einen zugehörigen Controllerbereichsnetzwerkbus enthalten, werden an jede elektronische Steuereinheit übertragen. Jede mit dem Controllerbereichsnetzwerk verbundene elektronische Steuereinheit, die eine jeweilige Globalzeit-Botschaft empfängt, synchronisiert eine lokale Uhr auf der Grundlage der justierten Globalzeit in der jeweiligen Globalzeitbotschaft. Da von mehreren Fahrzeugen eine gemeinsame Notation der Zeit gemeinsam genutzt wird, kann der bei einem gegebenen Sensor an einem gegebenen Fahrzeug erfasste Zeitstempel übersetzt werden, um den Zeitpunkt des Auftretens eines Erfassungsereignisses an einem anderen Fahrzeug zu bestimmen. Die Daten des entfernten Sensors können als Teil einer lokalen Sensorzusammenführung verwendet werden, um die notwendige zeitsynchronisierte Betätigung und Steuerung am Fahrzeug durchzuführen.
-
Eine Ausführungsform betrachtet ein Fahrzeugkommunikationssystem, das mehrere Erfassungsvorrichtungen zum Beschaffen fahrzeugbezogener Daten enthält. Mehrere elektronische Steuereinheiten empfangen fahrzeugbezogene Daten von den mehreren Erfassungsvorrichtungen. Mehrere Controllerbereichsnetzwerkbusse, die mit den mehreren elektronischen Steuereinheiten gekoppelt sind, übertragen die fahrzeugbezogenen Daten. Eine Hauptsteuereinheit steht in Verbindung mit jedem der mehreren Controllerbereichsnetzwerkbusse. Die Hauptsteuereinheit schätzt eine jeweilige Zeitverzögerung für Botschaften, die auf jedem Controllerbereichsnetzwerkbus übertragen werden. Die Zeitverzögerung ist eine Differenz zwischen einem Zeitpunkt, an dem Botschaften zum Übertragen erzeugt werden, und einem Zeitpunkt, an dem erwartet wird, dass Botschaften auf einem zugehörigen Controllerbereichsnetzwerkbus übertragen werden. Eine Zeitsynchronisierungsquelle erzeugt eine Globalzeit. Die Globalzeit wird von der Hauptsteuereinheit für jeden jeweiligen Controllerbereichsnetzwerkbus auf der Grundlage der jeweiligen Zeitverzögerung, die in jedem Controllerbereichsnetzwerkbus bestimmt wurde, justiert. Die Hauptsteuereinheit überträgt eine jeweilige Botschaft auf jedem Controllerbereichsnetzwerkbus, welche die jeweilige justierte Globalzeit für jeden Controllerbereichsnetzwerkbus enthält. Jede elektronische Steuereinheit, die die jeweilige Botschaft empfängt, synchronisiert eine lokale Uhr mit der justierten Globalzeit, die in der jeweiligen Botschaft empfangen wurde.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
1 ist ein Architekturaufbau eines Controllerbereichsnetzwerksystems.
-
2 ist ein Flussdiagramm eines Verfahrens zum Synchronisieren der Zeit in dem Controllerbereichsnetzwerksystem.
-
3 stellt ein Flussdiagramm eines Architekturaufbaus eines Controllerbereichsnetzwerks für ein V2V-Kommunikationssystem dar.
-
GENAUE BESCHREIBUNG
-
In 1 ist ein Architekturblockdiagramm eines Controllerbereichsnetzwerksystems 10 (CAN-Systems) eines Fahrzeugs zum Synchronisieren lokaler Uhren von elektronischen Steuereinheiten, die mit dem Netzwerk gekoppelt sind, gezeigt. Das CAN-System 10 enthält mehrere CAN-Busse, etwa einen ersten CAN-Bus 12, einen zweiten CAN-Bus 14, einen dritten CAN-Bus 16, einen vierten CAN-Bus 18 und einen fünften CAN-Bus 20. Es versteht sich, dass das CAN-System 10 mehr oder weniger CAN-Busse als gezeigt enthalten kann.
-
Jeder der CAN-Busse ist mit mehreren elektronischen Steuereinheiten (ECUs) 22 gekoppelt, was den ECUs ermöglicht, miteinander zu kommunizieren. Jede der mehreren ECUs 22 ist mit einem oder mehreren Sensoren 24 gekoppelt. So, wie der Begriff Sensoren hier verwendet wird, soll er Stellglieder und andere Vorrichtungen umfassen, die im Betrieb digitale Signale austauschen. Die Sensoren 24 sind mit einem jeweiligen CAN-Bus nicht direkt verbunden, sondern sie sind durch die ECU verbunden. Zum Zweck dieser Erfindung versteht es sich, dass CAN-Netzwerke in der Technik bekannt sind, und andere Vorrichtungen wie etwa CAN-Controller und Transceiver, die typischerweise in der ECU eingebaut sind, werden als Knoten bezeichnet und die Details ihres Aufbaus werden hier nicht im Detail erörtert. Das CAN-System 10 ist ein asynchrones serielles Übertragungsbusnetzwerk, das Botschaften auf jedem CAN-Bus seriell überträgt. Daher kann jeder Knoten eine Botschaft leicht übertragen, wenn der jeweilige CAN-Bus, mit dem er kommuniziert, frei ist. Wenn jedoch zwei oder mehr Knoten gerade Botschaften übertragen, dann wird eine Botschaft mit einer dominanteren ID bzw. Kennung Priorität über die Botschaften haben, die eine weniger dominante ID aufweisen. Daher wird eine Botschaft, die mit einer höheren Priorität (d. h. einer dominanteren ID) übertragen wird, den Arbitrierungsprozess immer gewinnen, und die Botschaft mit der niedrigeren Priorität (d. h. der weniger dominanten ID) wird warten, bis der CAN-Bus frei ist oder bis diese jeweilige Botschaft die dominanteste ID ist, die auf die Übertragung wartet. Als Folge gibt es inhärente Verzögerung bei der Übertragung von Botschaften auf dem CAN-Bus.
-
In 1 ist eine Hauptsteuereinheit 26 gezeigt, die einen oder mehrere Mikroprozessoren, wie etwa einen Mikroprozessor 28 und einen Mikroprozessor 30 enthält, welche mit den mehreren CAN-Bussen zur Kommunikation mit den mehreren ECUs 22 gekoppelt sind. Es versteht sich, dass in der Hauptsteuereinheit 26 mehr oder weniger Mikroprozessoren verwendet werden können. Jeder der Mikroprozessoren in der Hauptsteuereinheit 26 kommuniziert durch ein Kommunikationsmedium, das einen universellen asynchronen Sender und Empfänger (UART) oder einen seriellen peripheren Schnittstellenbus umfasst, aber nicht darauf beschränkt ist.
-
Die Hauptsteuereinheit 26 ist eine dominante ECU, die eine gewisse Arbeitsweise der Fahrzeugfunktionalität während einer aktuellen Zeitperiode steuert, die sich aber in Abhängigkeit von dem Betriebsmodus des Fahrzeugs ändern kann. Zum Beispiel kann das Fahrzeug ein drahtloses Kommunikationssystem (z. B. OnStar®) verwenden, das Schutz im Fahrzeug, Sicherheit und Kommunikationsdienste, wie etwa Freisprechen, Turn-By-Turn-Navigation und Ferndiagnosesysteme bereitstellt. Bei einem normalen Fahrzeugbetrieb kann die OnStar®-ECU die Hauptsteuereinheit 26 sein. Wenn eine Kommunikation von Fahrzeug zu Fahrzeug (V2V-Kommunikation) zwischen dem Trägerfahrzeug und anderen entfernten Fahrzeugen, die um das Trägerfahrzeug herum detektiert wurden, eingeleitet wird, kann sich die Hauptsteuereinheit 26 auf die V2V-Kommunikations-ECU ändern. Die Hauptsteuereinheit 26 wird in der vorliegenden Erfindung verwendet, um die Zeit über Vorrichtungen hinweg zu synchronisieren, welche mit den mehreren CAN-Bussen gekoppelt sind, wie später im Detail beschrieben wird.
-
Wie in 1 gezeigt ist, enthält das CAN-System 10 ferner eine Gateway-ECU 32, die eine Systeminteroperabilität bereitstellt, um zwei CAN-Busse miteinander zu verbinden, die in verschiedenen Netzwerken oder mit verschiedenen Protokolleinstellungen arbeiten, und die durch die Hauptsteuereinheit 26 nicht direkt gekoppelt sind. Die durch die Gateway-ECU 32 verbundenen CAN-Busse sind hinsichtlich ihres Echtzeitverhaltens getrennt, sodass das Zeitverhalten von Ereignissen oder Botschaften möglicherweise schwer zu schätzen ist, obwohl das Schätzen des Zeitverhaltens von Ereignissen in jedem jeweiligen CAN-Bus ziemlich vorhersagbar ist.
-
Fahrzeugdaten von verschiedenen Sensoren, Stellgliedern und anderen Vorrichtungen werden typischerweise von Teilsystemen gemeinsam genutzt, um einen Fahrzeugbetrieb oder eine Fahrzeugbedingung zu bestimmen oder vorherzusagen. Das Zusammenfassen mehrerer Eingaben von verschiedenen Quellen sorgt bei einer jeweiligen Fahrzeugoperation für eine bessere Genauigkeit, Verfügbarkeit und Zuverlässigkeit. Zum Beispiel kann sich das Fahrzeug bei einem GPS-System, wenn keine GPS-Daten von einer Satellitenquelle verfügbar sind, auf sekundäre Daten, wie etwa Raddrehzahlsensordaten, Lenkradwinkelsensordaten und Gierdaten stützen, um eine Fahrzeugposition oder eine Fahrzeugrichtung zu bestimmen. Diese sekundären Daten können von verschiedenen Teilsystemen geliefert werden. Folglich ist es sachdienlich, dass die Daten von den verschiedenen Teilsystemen zum im Wesentlichen gleichen Zeitpunkt erfasst sein müssen, wenn sie zusammengefasst werden, da die geschätzte Ausgabe, wie etwa die Position oder Richtung, andernfalls verfälscht sein kann. Solche verfälschten Ergebnisse können sich bei Anwendungen, wie etwa Kollisionsvermeidungssystemen, nachteilig auswirken, bei denen es sachdienlich ist, dass die zur Herleitung eines Ergebnisses verwendeten zusammengefassten Daten zeitsynchronisiert sind. Während die Integration von Sensordaten innerhalb eines jeweiligen CAN-Busses relativ leicht zu synchronisieren und zusammenzufassen ist, ist die Synchronisation und Integration von Daten von verschiedenen CAN-Bussen schwierig, da die verschiedenen CAN-Busse typischerweise asynchron sind. Das heißt, dass bei einem einzigen CAN-Bus ein Uhrsignal auf dem CAN-Bus übertragen werden kann und jede der jeweiligen ECUs auf dem CAN-Bus die Botschaft zum im Wesentlichen gleichen Augenblick empfangen wird und ihre lokale Uhr synchronisieren wird. Obwohl die Übertragung der Botschaft anfänglich aufgrund von Botschaften mit hoher Priorität im CAN-Bus verzögert sein kann, beeinträchtigt die Verzögerung die Synchronisation nicht, da alle ECUs die verzögerte Botschaft zum gleichen Zeitpunkt empfangen werden und sich mit einem gleichen Uhrsignal synchronisieren werden. Die Kommunikation zwischen verschiedenen CAN-Bussen liefert Synchronisationsprobleme, da das CAN-System nicht garantieren kann, dass jede ECU die Botschaft, welche die Synchronisationszeit enthält, zu einem gleichen Augenblick empfangen wird. Beispielsweise nutzen in 1 ECUs im ersten CAN-Bus 12 und im zweiten CAN-Bus 14 Daten gemeinsam. Die Kommunikation auf dem ersten CAN-Bus 12 ist offen und eine Botschaft kann auf dem CAN-Bus 12 leicht übertragen werden, aber der zweite CAN-Bus 14 weist eine Verzögerung auf. Wenn eine Botschaft, die eine synchronisierte Zeit enthält, an alle ECUs auf beiden CAN-Bussen ausgesandt wird, dann werden alle ECUs an dem ersten CAN-Bus 12 die Zeitsynchronisationsbotschaft empfangen und ihre lokalen Uhren justieren, bevor die ECUs an dem zweiten CAN-Bus 14 die Zeitsynchronisationsbotschaft empfangen. Als Folge werden lokale Uhren der ECUs an dem ersten CAN-Bus 12 nicht mit den lokalen Uhren der ECUs an dem zweiten CAN-Bus 14 synchronisiert sein. Irgendwelche Daten, die von den zwei ECUs der verschiedenen CAN-Busse gemeinsamen genutzt werden, können aufgrund der unsynchronisierten Zeitstempelung der Daten unkorrekt zusammengefasst werden. Daher stellen die hier beschriebenen Ausführungsformen eine Technik zum Synchronisieren lokaler Uhren über asynchrone CAN-Busse hinweg bereit.
-
Wie in 1 gezeigt, ist die Hauptsteuereinheit 26 mit jedem CAN-Bus entweder direkt gekoppelt oder durch ein oder mehrere Gateways 32 mit einem CAN-Bus indirekt gekoppelt. Jeder Mikroprozessor 28 und 30 in der Hauptsteuereinheit 26 schätzt eine Protokollstapelzeitverzögerung für jeden CAN-Bus, mit dem er direkt gekoppelt ist. Die Protokollstapelzeitverzögerung ist durch die Zeitdifferenz zwischen dem Zeitpunkt, an dem eine Botschaft zur Übertragung durch eine jeweilige ECU auf einem jeweiligen CAN-Bus erzeugt wird, und dem Zeitpunkt, an dem die Botschaft tatsächlich auf dem jeweiligen CAN-Bus übertragen wird, bestimmt. Zum Beispiel kommuniziert der Mikroprozessor 28 mit ECUs an dem ersten CAN-Bus 12, um Informationen zur Bestimmung von Verzögerungen zu holen. Die Daten in der Botschaft werden mit einem Zeitstempel versehen, wenn die jeweilige Botschaft tatsächlich auf dem ersten CAN-Bus 12 übertragen wird. Der Mikroprozessor 28 bestimmt die Differenz zwischen dem Zeitpunkt, an dem die Daten mit einem Zeitstempel durch die ECU versehen werden, und dem Zeitpunkt, an dem die Botschaft tatsächlich auf dem CAN-Bus 12 übertragen wird. Die Verzögerung kann durch die folgende Formel bestimmt werden: Verzögerung d1 = Übertragungszeitpunkt (am Bus) – Erzeugungszeitpunkt (an der Quelle) (1)
-
Eine Vielzahl von Daten mit Zeitstempeln kann von verschiedenen Sensoren am CAN-Bus 12 gesammelt werden, um eine durchschnittliche Verzögerungszeit zu bestimmen. Jede Verzögerung wird unter Verwendung der in Gleichung (1) offengelegten Formel bestimmt. Die durchschnittliche Verzögerung wird durch die folgende Formel dargestellt: Durchschnittliche Verzögerung (erwartet) = (d0 + d1 + d2 + d3 ... + d0)/n. (2)
-
Die Verwendung einer CAN-Kennung mit hoher Priorität wird eine minimale Abweichung aufgrund einer Verzögerung durch die Busarbitrierung garantieren. Außerdem kann bei der Bestimmung der erwarteten Verzögerung eine Option darin bestehen, dass die größte und/oder kleinste Verzögerungszeit aus der Gruppe entfernt wird, bevor die durchschnittliche Verzögerungszeit berechnet wird.
-
In 1 bestimmt der Mikroprozessor 28 die Verzögerungszeit für jeden jeweiligen CAN-Bus, mit dem er gekoppelt ist, insbesondere für den ersten CAN-Bus 12, den zweiten CAN-Bus 14 und den dritten CAN-Bus 16. Der Mikroprozessor 30 bestimmt die Verzögerungen für den fünften CAN-Bus 20. Die Gateway-ECU 32 kommuniziert mit dem Mikroprozessor 28, um Verzögerungsinformationen zu liefern, die nicht nur die Protokollstapelverzögerungen auf dem vierten CAN-Bus 18 betreffen, sondern auch Verzögerungen liefern werden, die das Verarbeiten von Daten betreffen, welches die Interoperabilität zwischen dem dritten CAN-Bus 16 und dem vierten CAN-Bus 18 betrifft.
-
Nachdem jede Verzögerung für jeden der CAN-Busse im CAN-System 10 bestimmt worden ist, empfängt die Hauptsteuereinheit 26 eine Globalzeit von einer Zeitsynchronisierungsquelle. Die Zeitsynchronisierungsquelle kann eine interne Synchronisierungsquelle 34 sein, wie etwa eine interne Uhr der Hauptsteuereinheit 26 oder das Netzwerkzeitprotokoll (NTP). Die Zeitsynchronisierungsquelle kann auch eine externe Zeitsynchronisierungsquelle 36 sein, wie etwa ein GPS-Empfänger des Fahrzeugs, ein CDMA-Mobiltelefon-Zeitsignal, ein Atomuhrsignal, eine Straßenrandeinheit bei einem Fahrzeug-zu-Infrastruktur-System, eine Entität in einem Fahrzeug-zu-Fahrzeug-Kommunikationssystem oder das Internet, ist aber nicht darauf beschränkt.
-
Die Hauptsteuereinheit 26 bestimmt eine justierte Globalzeit für jeden CAN-Bus, indem die erwartete Verzögerung für einen jeweiligen CAN-Bus zu der von der Zeitsynchronisierungsquelle erhaltenen Globalzeit addiert wird. Für CAN-Busse, die keine Verzögerung aufweisen, wird die justierte Globalzeit die Globalzeit sein, wie sie von der Zeitsynchronisierungsquelle empfangen wird.
-
Im Hinblick auf CAN-Busse, die mit der Hauptsteuereinheit 26 durch das Gateway 32 gekoppelt sind, wie etwa der vierte CAN-Bus 18, wird die Botschaft eine justierte Globalzeit enthalten, welche sowohl die geschätzte Protokollstapelzeitverzögerung des vierten CAN-Busses 18 als auch die geschätzte Gatewayzeitverzögerung enthält. Justierte Globalzeiten von irgendwelchen zusätzlichen CAN-Bussen, die durch ein anderes Gateway gekoppelt sind, werden bestimmt, indem die jeweiligen Gatewayzeitverzögerungen und die Protokollstapelzeitverzögerungen addiert werden.
-
Im Anschluss an den Empfang ihrer jeweiligen Zeitsynchronisationsbotschaft durch jede ECU jedes CAN-Busses wird jede ECU ihre lokale Uhr auf der Grundlage der justierten Globalzeit synchronisieren, die in der empfangenen Botschaft bereitgestellt wurde. Als Folge werden alle ECUs im CAN-System 10 miteinander zeitsynchronisiert sein. Daten können leicht mit einem Zeitstempel versehen werden und zwischen ECUs von verschiedenen CAN-Bussen zum gemeinsamen Benutzen und zur Integration von Daten übertragen werden.
-
Es versteht sich, dass die Vorteile der hier beschriebenen Ausführungsformen nicht auf ein CAN-System für ein Fahrzeug isoliert sind, sondern auf eine gemeinsame Nutzung von Daten zwischen mehreren Fahrzeugen in einem V2V-System oder Entitäten in einem beliebigen System von Fahrzeug zu einer beliebigen Straßenbenutzerentität (V2X-System) angewendet werden können. Die gleiche Prozedur wird auf mehrere Fahrzeuge so angewendet, dass eine Übereinstimmung zwischen den Fahrzeugen oder Entitäten dahingehend erzielt wird, welche Quelle als die Zeitsynchronisierungsquelle verwendet wird. Danach bestimmt jedes Fahrzeug seine jeweiligen Verzögerungen auf jedem seiner CAN-Busse. Die von der Zeitsynchronisierungsquelle bereitgestellte Globalzeit wird dann hinsichtlich der Verzögerungen justiert, die in jedem CAN-Bus jedes Fahrzeugs auftreten. Das Ergebnis sind mehrere teilnehmende Fahrzeuge, die mit einer gemeinsamen Zeitquelle zeitsynchronisiert sind. Es ist auch zu verstehen, dass die Zeitsynchronisierungsquelle ein beliebiges der Fahrzeuge sein kann, solange sich alle teilnehmenden Fahrzeuge darauf einigen, welches Fahrzeug die Globalzeitquelle ist. Bei dieser Prozedur wird die V2V-ECU in jedem Fahrzeug wie eine elektronische Steuereinheit funktionieren und das Fahrzeug, auf das man sich zum Liefern der Zeitsynchronisierung geeinigt hat, wird für die Gruppe als Hauptsteuereinheit funktionieren.
-
2 veranschaulicht ein Verfahren zum Synchronisieren der Zeit in einem CAN-System eines Fahrzeugs. Bei Schritt 40 wird die Synchronisierungsroutine initialisiert. Bei Schritt 41 werden für jeden CAN-Bus im CAN-System jeweilige Zeitverzögerungen geschätzt. Die Zeitverzögerungen sind Protokollstapelverzögerungen, welche die Differenz zwischen dem Zeitpunkt, an dem die Botschaft erzeugt wurde, und dem Zeitpunkt, an dem die Botschaft tatsächlich übertragen wurde, sind.
-
Bei Schritt 42 wird eine Ermittlung durchgeführt, ob zwischen zwei CAN-Bussen irgendwelche Gateways vorhanden sind. Wenn keine Gateways vorhanden sind, dann geht die Routine zu Schritt 44 weiter. Wenn Gateways vorhanden sind, geht die Routine zu Schritt 43 weiter.
-
Bei Schritt 43 werden eine Gatewayzeitverzögerung und die Protokollstapelzeitverzögerung des vorausschauenden CAN-Busses bestimmt. Die Gatewayverzögerung umfasst Zeitverzögerungen als Folge des Verarbeitens von Daten zwischen den zwei CAN-Bussen, und die Protokollstapelzeitverzögerung umfasst Verzögerungen beim Übertragen von Botschaften in dem vorausschauenden CAN-Bus.
-
Bei Schritt 44 wird eine Globalzeit von einer Zeitsynchronisierungsquelle empfangen.
-
Bei Schritt 45 wird die jedem CAN-Bus zugeordnete Globalzeit auf der Grundlage der erwarteten Verzögerungen justiert, die für jeden CAN-Bus bestimmt wurden. Jede über einen CAN-Bus übertragene Botschaft wird die justierte Globalzeit enthalten, die auf der Grundlage der Verzögerungen justiert worden ist, welche für diesen jeweiligen CAN-Bus bestimmt worden sind.
-
Bei Schritt 46 werden von der Hauptsteuereinheit Botschaften übertragen, welche die justierte Globalzeit für jeden jeweiligen CAN-Bus enthalten.
-
Bei Schritt 47 justiert jede ECU an einem jeweiligen CAN-Bus ihre lokale Uhr auf die justierte Globalzeit, die in der empfangenen Botschaft enthalten ist.
-
3 veranschaulicht eine Ausführungsform, die eine V2V-Kommunikation zwischen einem Fahrzeugkommunikationssystem 30 und einem Fahrzeugkommunikationssystem 60 eines anderen Fahrzeugs verwendet. Das Fahrzeugkommunikationssystem 60 enthält mehrere elektronische Steuereinheiten (ECUs) 62, die Daten untereinander gemeinsam nutzen. Jede der mehreren ECUs 62 ist mit einem oder mehreren Sensoren 64 gekoppelt. Mehrere CAN-Busse 66 und 68 sind innerhalb des Fahrzeugkommunikationssystems 60 mit einer Hauptsteuereinheit 70 gekoppelt. Bei einer V2V-Kommunikation zwischen dem Fahrzeugkommunikationssystem 10 und dem Fahrzeugkommunikationssystem 60 nutzen zwei jeweilige elektronische Steuereinheiten der unterschiedlichen Fahrzeuge Daten gemeinsam miteinander.
-
Um die Daten gemeinsam zu nutzen, müssen die lokalen Uhren der ECUs jedes Fahrzeugs synchronisiert sein, um Daten zwischen den Fahrzeugen erfolgreich zu kombinieren. Zum Beispiel enthält ein erstes Fahrzeug das Fahrzeugkommunikationssystem 10 und ein zweites Fahrzeug enthält das Fahrzeugkommunikationssystem 60. Das erste Fahrzeug folgt dem zweiten Fahrzeug in geringem Abstand. Das erste Fahrzeug weist eine Fahrzeuganwendung auf, die eine automatische Bremssteuerung auf der Grundlage nicht nur der Daten bereitstellt, die von den Sensoren seines eigenen Systems bereitgestellt werden, sondern sich auch auf Daten stützen kann, die von dem zweiten Fahrzeug geliefert werden. Eine Kommunikation zwischen dem ersten Fahrzeug und dem zweiten Fahrzeug ist zum Verständnis der Bremskraft und der Geschwindigkeit des zweiten Fahrzeugs vorteilhaft. Wenn das zweite Fahrzeug eine heftige Bremsaktion einleitet, enthält eine der jeweiligen ECUs 62 aus dem zweiten Fahrzeug die erfassten Bremsdaten und Geschwindigkeitsdaten als Ergebnis der heftigen Bremsaktion. Wenn das Brems- und Geschwindigkeitsdatensignal vom zweiten Fahrzeug an das erste Fahrzeug übermittelt wird, kann es verwendet werden, um ein automatisches Bremsen des ersten Fahrzeugs zu betätigen. Zur Bestimmung, ob das automatische Bremsen notwendig ist, muss das erste Fahrzeug seine eigenen Geschwindigkeitsdaten von einer seiner jeweiligen ECUs 22 erhalten und die Brems- und Geschwindigkeitsdaten analysieren, die vom zweiten Fahrzeug geliefert werden. Die Integration und Analyse der Daten von beiden Fahrzeugen wird jedoch nur nützlich sein, wenn die Daten von Sensoren zum im Wesentlichen gleichen Augenblick beschafft werden. Wenn alle diese Daten nicht zu einem im Wesentlichen gleichen Zeitpunkt beschafft wurden, dann kann das erste Fahrzeug Entscheidungen auf der Grundlage von Daten treffen, die nicht aktuell/rechtzeitig sind.
-
Zur Bestimmung, ob die Daten von beiden Fahrzeugen kombiniert werden können, werden die Botschaften, welche die Daten enthalten, mit einem Zeitstempel versehen, um den jeweiligen Zeitpunkt zu bestimmen, an dem die Daten beschafft wurden. Daher müssen die lokalen Uhren aller Fahrzeugkommunikationssysteme miteinander synchronisiert sein. Unter Verwendung der hier beschriebenen Prozeduren werden die lokalen Uhren jeder ECU von beiden Fahrzeugen unter Verwendung einer Zeitsynchronisierungsquelle 36 miteinander synchronisiert. Jedes Kommunikationssystem justiert die von der Zeitsynchronisierungsquelle 36 empfangene Globalzeit und integriert die erwarteten Verzögerungen für jeden CAN-Bus. Als Folge ist jede lokale Uhr in jeder ECU für jedes Fahrzeug synchronisiert. Dies ermöglicht einer jeweiligen ECU, einen direkten Vergleich der erhaltenen Daten durchzuführen, um zu bestimmen, ob die Daten zu einem im Wesentlichen gleichen Augenblick erfasst worden sind.
-
Obwohl bestimmte Ausführungsformen der vorliegenden Erfindung im Detail beschrieben wurden, werden Fachleute auf dem Gebiet, das diese Erfindung betrifft, verschiedene alternative Konstruktionen und Ausführungsformen zum Umsetzen der Erfindung in die Praxis, wie sie durch die folgenden Ansprüche definiert ist, erkennen.