-
Die vorliegende Erfindung betrifft ein elektronisches Mehrfach-Steuergerät für ein Fahrzeug, ein Verfahren für ein Mehrfach-Steuergerät und ein Computerprogramm.
-
In einem Fahrzeug, wie beispielsweise einem Automobil oder Lastkraftwagen, wird derzeit eine Vielzahl von unterschiedlichen elektronischen Steuergeräten eingesetzt, die datentechnisch miteinander vernetzt sind. Jedes dieser elektronischen Steuergeräte erfüllt einen eigenen Zweck innerhalb des Fahrzeugs. Zu jedem dieser Steuergeräte ist eine eigene Hardware vorgesehen, die Kommunikationsschnittstellen zu den anderen Steuergeräten und Sensoren innerhalb des Kraftfahrzeugs aufweist. Dieser Aufbau ist technisch aufwändig und führt zu einem hohen Verkabelungsaufwand innerhalb des Fahrzeugs.
-
Es ist die technische Aufgabe der vorliegenden Erfindung, die Anzahl an Steuergeräten mit eigener Hardware in einem Kraftfahrzeug zu verringern.
-
Diese technische Aufgabe wird durch Gegenstände nach den unabhängigen Ansprüchen gelöst. Vorteilhafte Ausführungsformen sind Gegenstand der abhängigen Ansprüche, der Beschreibung und der Figuren.
-
Gemäß einem ersten Aspekt wird diese technische Aufgabe durch ein Mehrfach-Steuergerät für ein Fahrzeug mit einer Steuergerät-Virtualisierungsumgebung gelöst, mit einem ersten virtuellen Steuergerät mit einer ersten logischen Steuergeräte-Kommunikationsschnittstelle, das in der Steuergeräte-Virtualisierungsumgebung ausgeführt wird; und einem zweiten virtuellen Steuergerät mit einer zweiten logischen Steuergeräte-Kommunikationsschnittstelle, das ebenfalls in der Steuergeräte-Virtualisierungsumgebung ausgeführt wird. Dadurch wird der technische Vorteil erreicht, dass mehrere Steuergeräte des Fahrzeugs in eine einzige Hardware als leistungsfähiges Mehrfach-Steuergerät kombiniert werden können. Durch die Virtualisierungsumgebung können zudem weitere virtuelle Steuergeräte zu dem Mehrfach-Steuergerät hinzugefügt werden und existierende Steuergeräte aktualisiert werden.
-
In einer technisch vorteilhaften Ausführungsform des Mehrfach-Steuergeräts umfasst das Mehrfach-Steuergerät ein Gateway-Modul zum internen Übermitteln von Nachrichten zwischen der ersten und zweiten logischen Steuergeräte-Kommunikationsschnittstelle. Dadurch wird beispielsweise der technische Vorteil erreicht, dass Nachrichten von einem der Steuergeräte intern gezielt an ein anderes der Steuergeräte gesendet werden können.
-
In einer weiteren technisch vorteilhaften Ausführungsform des Mehrfach-Steuergeräts ist das Gateway-Modul ausgebildet, Nachrichten zwischen dem ersten und dem zweiten virtuellen Steuergerät und/oder zu der externen Kommunikationsschnittstelle weiterzuleiten. Dadurch wird beispielsweise der technische Vorteil erreicht, dass Nachrichten auf schnelle Weise und ohne äußere Störeinflüsse zwischen den beiden virtuellen Steuergeräten ausgetauscht werden können.
-
In einer weiteren technisch vorteilhaften Ausführungsform des Mehrfach-Steuergeräts ist das Gateway-Modul ausgebildet, die Nachrichten in einem vorgegebenen Protokoll weiterzuleiten. Dadurch wird beispielsweise der technische Vorteil erreicht, dass existierende Steuergeräteprogramme in dem Mehrfach-Steuergerät virtualisiert werden können, die auf vorgegebene Protokolle angewiesen sind.
-
In einer weiteren technisch vorteilhaften Ausführungsform des Mehrfach-Steuergeräts ist das Gateway-Modul ausgebildet, die Nachrichten an ein vorgegebenes virtuelles Steuergerät in der Steuergeräte-Virtualisierungsumgebung zu senden. Dadurch wird beispielsweise der technische Vorteil erreicht, dass eine Netzwerktopologie durch das Gateway-Modul intern nachgebildet werden kann.
-
In einer weiteren technisch vorteilhaften Ausführungsform des Mehrfach-Steuergeräts ist das Mehrfach-Steuergerät ausgebildet, eine Virtualisierung des ersten Steuergeräts und des zweiten Steuergeräts auf einer Hardware-Ebene durchzuführen. Dadurch wird beispielsweise der technische Vorteil erreicht, dass eine schnelle Virtualisierung der Steuergeräte durchgeführt werden kann.
-
In einer weiteren technisch vorteilhaften Ausführungsform des Mehrfach-Steuergeräts ist das Mehrfach-Steuergerät ausgebildet, eine Virtualisierung des ersten Steuergeräts und des zweiten Steuergeräts auf einer Software-Ebene durchzuführen. Dadurch wird beispielsweise der technische Vorteil erreicht, dass die Virtualisierung auf einfache Weise unterschiedlich konfiguriert werden kann.
-
In einer weiteren technisch vorteilhaften Ausführungsform des Mehrfach-Steuergeräts umfasst das Mehrfach-Steuergerät eine externe Kommunikationsschnittstelle, über die interne Nachrichten zwischen den Steuergeräten abgerufen werden können. Zu diesem Zweck werden alle internen Nachrichten auf die externe Schnittstelle kopiert. Dadurch wird beispielsweise der technische Vorteil erreicht, dass interne Nachrichten zwischen den virtuellen Steuergeräten für Diagnosezwecke ausgewertet werden können.
-
Gemäß einem zweiten Aspekt wird diese technische Aufgabe durch ein Verfahren für ein Mehrfach-Steuergerät mit einer Steuergerät-Virtualisierungsumgebung gelöst, mit den Schritten eines Virtualisierens eines ersten virtuellen Steuergeräts mit einer ersten logischen Steuergeräte-Kommunikationsschnittstelle in der Steuergeräte-Virtualisierungsumgebung; und eines Virtualisierens eines zweiten virtuellen Steuergeräts mit einer zweiten logischen Steuergeräte-Kommunikationsschnittstelle in der Steuergeräte-Virtualisierungsumgebung. Dadurch werden die gleichen technischen Vorteile wie durch Mehrfach-Steuergerät nach dem ersten Aspekt erreicht.
-
In einer vorteilhaften Ausführungsform des Verfahrens werden Nachrichten zwischen der ersten und zweiten logischen Steuergeräte-Kommunikationsschnittstelle durch ein Gateway-Modul intern und/oder durch das Gateway-Modul an eine externe Kommunikationsschnittstelle übermittelt. Dadurch wird beispielsweise der technische Vorteil erreicht, dass Nachrichten auf schnelle Weise und ohne äußere Störeinflüsse zwischen den beiden virtuellen Steuergeräten ausgetauscht werden können und Nachrichten gezielt intern im Mehrfachsteuergerät an bestimmte virtuelle Steuergeräte gesendet werden können.
-
Gemäß einem dritten Aspekt wird diese technische Aufgabe durch ein Computerprogramm gelöst, umfassend Befehle, die bei der Ausführung des Programms durch einen Computer diesen veranlassen, das Verfahren nach dem zweiten Aspekt auszuführen. Dadurch werden ebenfalls die gleichen technischen Vorteile wie durch Mehrfach-Steuergerät nach dem ersten Aspekt erreicht.
-
Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und werden im Folgenden näher beschrieben.
-
Es zeigen:
- 1 eine schematische Darstellung eines Fahrzeugs mit mehreren Steuergeräten;
- 2 eine schematische Darstellung eines Fahrzeugs mit einem Mehrfach-Steuergerät;
- 3A eine schematische Darstellung einer Virtualisierungsumgebung für Steuergeräte;
- 3B eine weitere schematische Darstellung einer Virtualisierungsumgebung für Steuergeräte; und
- 4 ein Blockdiagramm eines Verfahrens für ein Mehrfach-Steuergerät mit einer Steuergerät-Virtualisierungsumgebung.
-
1 zeigt eine schematische Darstellung eines Fahrzeugs 100, wie beispielsweise ein Automobil. Das Fahrzeug 100 umfasst mehrere elektronische Steuergeräte 107-1, 107-2 und 107-3. Jedes dieser Steuergeräte 107-1, 107-2 und 107-3 erfüllt eine andere Funktion innerhalb des Fahrzeugs 100 und ist auf einer separaten Hardware implementiert. Bei dem Steuergerät 107-1 handelt es sich beispielsweise um ein ABS-Steuergerät 107-1 (ABS - Antiblockiersystem), das über Sensoren die Drehung der Räder 115 erfasst. Die Sensoren 115 sind mit entsprechenden Kommunikationsschnittstellen 109-4 des Steuergeräts 107-1 verbunden. Bei dem Steuergerät 107-2 handelt es sich beispielsweise um ein Motorsteuergerät und bei dem Steuergerät 107-3 beispielsweise um ein Klima-Steuergerät. Im Allgemeinen kann es sich bei den Steuergeräten 107-1, 107-2 und 107-3 jedoch um jedes beliebige elektronische Steuergerät handeln.
-
Jedes der elektronischen Steuergeräte 107-1, 107-2 und 107-3 weist eine oder mehrere Kommunikationsschnittstellen 109-1, 109-2 und 109-3 auf, über die eine drahtgebundene Datenkommunikation mit anderen Steuergräten 107-1, 107-2 und 107-3 durchgeführt wird, wie beispielsweise eine Datenkommunikation über eine Bus-Verbindung oder eine Punktzu-Punkt-Verbindung. Zu diesem Zweck kann ein CAN-Bus (CAN - Controller Area Network) vorgesehen sein, über den die Steuergeräte Nachrichten und Informationen austauschen. Die Steuergeräte 107-1, 107-2 und 107-3 sind jeweils auf einer eigenen Hardware implementiert, die einen Datenspeicher zum Speichern von Steuergeräteprogrammen 111-1, 111-2 und 111-3 und einen Mikrocontroller zum Ausführen der Steuergeräteprogramme 111-1, 111-2 und 111-3 umfasst. Die Funktion des jeweiligen Steuergerätes 107-1, 107-2 und 107-3 wird maßgeblich durch das jeweilige digitale Steuergeräteprogramm 111-1, 111-2 und 111-3 implementiert, das auf diesen software-mäßig ausgeführt wird. Die Steuergeräte 107-1, 107-2 und 107-3 werden miteinander verkabelt und erfordern jeweils eine eigene Hardwareschaltung. Dadurch entsteht ein aufwändiger Aufbau der Steuergerätetopologie innerhalb des Fahrzeugs 100.
-
2 zeigt demgegenüber eine schematische Darstellung eines Fahrzeugs 100 mit einem Mehrfach-Steuergerät 200. In dieser Fahrzeugarchitektur werden die bisher hardware-mäßig einzeln ausgeführten Steuergeräte 107-1, 107-2 und 107-3 durch ein leistungsfähiges gemeinsames Mehrfach-Steuergerät 200 ersetzt, auf dem die Steuergeräte 207-1, 207-2 und 207-3 virtualisiert werden. An dieses Mehrfach-Steuergerät 200 können Sensoren oder weitere separate Steuergeräte 107-4 über eine externe Kommunikationsschnittstelle 109-5 angeschlossen werden, die nicht virtualisiert sind.
-
Bei der Virtualisierung der einzelnen Steuergeräte 107-1, 107-2 und 107-3 werden die einzelnen Steuergeräteprogramme 111-1, 111-2 und 111-3 logisch voneinander getrennt auf einer gemeinsamen Hardware mit einem Mikroprozessor und einem Datenspeicher ausgeführt. Dies erlaubt es, die Steuergeräteprogramme 111-1, 111-2 und 111-3 isoliert voneinander auszuführen und vorhandene Hardware-Ressourcen des Mehrfach-Steuergeräts 200 gemeinsam zu nutzen. Dadurch können mehrere virtuelle Steuergeräte 207-1, 207-2 und 207-3 des Fahrzeugs 100 in ein einziges, leistungsfähiges Mehrfach-Steuergerät 200 kombiniert werden. Durch die Virtualisierung lassen sich virtuelle, d.h. nicht-physische, Steuergeräte 207-1, 207-2 und 207-3 auf einer einzigen gemeinsamen Hardware erzeugen.
-
Wenn Partitionierungstechniken wie die Virtualisierung zum Einsatz kommen, die eine getrennte Ausführung der Steuergeräteprogramme 111-1, 111-2 und 111-3 vorsehen, sind davon auch die Kommunikationsschnittstellen 109-1, 109-2 und 109-3 der Steuergeräte 107-1, 107-2 und 107-3 betroffen. Da in den einzelnen Steuergeräten 107-1, 107-2 und 107-3 jeweils individuelle Kommunikationsschnittstellen 109-1, 109-2 und 109-3 zur Verfügung stehen, weist das kombinierte Mehrfach-Steuergerät 200 mit virtuellen Steuergeräten 207-1, 207-2 und 207-3 entweder eine die gleiche Anzahl an dedizierten Kommunikationsschnittstellen 109-1, 109-2 und 109-3 wie die einzelnen Steuergeräte 107-1, 107-2 und 107-3 auf oder umfasst ein Gateway-Modul 217 als Software-Funktion, das diese Kommunikationsschnittstellen 109-1, 109-2 und 109-3 zusammenfasst und eine interne Verwendung der Kommunikationsschnittstellen 109-1, 109-2 und 109-3 durch die unterschiedlichen virtuellen Steuergeräte 207-1, 207-2 und 207-3 ermöglicht.
-
Durch das Gateway-Modul 217 werden die Nachrichten intern innerhalb des Mehrfach-Steuergeräts 200 zwischen den virtuellen Steuergeräten 207-1, 207-2 und 207-3 weitergeleitet. Daneben können die Nachrichten durch das Gateway-Modul 217 auch an eine externe Kommunikationsschnittstelle 109-5 innerhalb des Mehrfach-Steuergeräts 200 weitergeleitet werden, um von dort an externe Steuergeräte 107-4 gesendet zu werden. Das Gateway-Modul 217 übernimmt somit die gezielte Adressierung und Zustellung der Nachrichten an die internen oder externen Steuergeräte 207-1, 207-2 und 207-3 oder 107-4.
-
Das Gateway-Modul 217 kontrolliert eine oder mehrere externe Kommunikationsschnittstellen 109-1, 109-2 und 109-3 und stellt den virtuellen Steuergeräten 207-1, 207-2 und 207-3 jeweils virtuelle Kommunikationsschnittstellen zur Verfügung, die den Kommunikationsschnittstellen entsprechen, die in den separaten Steuergeräten 107-1, 107-2 und 107-3 vorgesehen sind. Durch das Gateway-Modul 217 lassen sich virtuelle Steuergeräte 207-1, 207-2 und 207-3 gezielt adressieren, so dass Nachrichten von einem der Steuergeräte 207-1, 207-2 und 207-3 intern innerhalb der Virtualisierungsumgebung 205 gezielt an ein anderes der Steuergeräte 207-1, 207-2 und 207-3 gesendet werden können. Je nach Adresse der Nachricht kann das Gateway-Modul 217 entscheiden, ob die Nachricht an ein internes virtuelles Steuergerät 207-1, 207-2, 207-3 oder an ein externes Steuergerät 107-4 gesendet wird. Dabei kann auch intern ein bestimmtes Protokoll verwendet werden, wie beispielsweise ein CAN-Protokoll.
-
Zusätzlich ist dem Gateway-Modul 217 die Netzwerk-Topologie und das Protokoll der internen und externen Kommunikationsschnittstellen bekannt. Dadurch kann das Gateway-Modul 217 Nachrichten entweder intern zwischen den virtuellen Steuergeräten 207-1, 207-2 und 207-3 oder an die externen Kommunikationsschnittstellen vermitteln. Zusätzlich dazu können Firewall-Funktionen angewandt werden, um Manipulationen zu verhindern.
-
Durch das virtuelle Gateway-Modul 217 kann die Anzahl externer Kommunikationsschnittstellen 109-1, 109-2 und 109-3 verringert werden und gegebenenfalls Bandbreite auf dem externen Kommunikationsmedium eingespart werden. Zudem können externe Störeinflüsse die intern vermittelten Nachrichten nicht beeinflussen und diese nicht zwischen den Steuergeräten abgegriffen werden. Die Übertragungsgeschwindigkeit und - Latenz zwischen den virtuellen Steuergeräten 207-1, 207-2 und 207-3 kann je nach Übertragungsmedium besser als in den getrennten Steuergeräten 107-1, 107-2 und 107-3 sein. Auch die internen Nachrichten zwischen den virtuellen Steuergeräten 207-1, 207-2 und 207-3 können für Diagnosezwecke abrufbar sein, falls diese explizit auf eine externe Kommunikationsschnittstelle kopiert werden.
-
3A zeigt eine schematische Darstellung einer Virtualisierungsumgebung 205. Die einzelnen Steuergeräte 207-1 , 207-2 und 207-3 werden software-mäßig in einer Virtualisierungsumgebung 205 ausgeführt, die durch das Mehrfach-Steuergerät 200 bereitgestellt wird. Die Virtualisierungsumgebung 205 setzt auf einer Softwareebene 215 auf, wie beispielsweise einer Betriebssystemschicht. Die Softwareebene 215 befindet sich wiederum oberhalb der Hardwareebene 213. Dadurch kann das Mehrfach-Steuergerät 200 eine generische Hardware umfassen, die mit einer Virtualisierungssoftware angepasst wird.
-
3B zeigt ebenfalls eine schematische Darstellung einer Virtualisierungsumgebung 205. Die einzelnen Steuergeräte 207-1, 207-2 und 207-3 werden software-mäßig in einer Virtualisierungsumgebung 205 ausgeführt, die durch das Mehrfach-Steuergerät 200 bereitgestellt wird.
-
Die Virtualisierungsumgebung 205 setzt allerdings direkt auf der Hardwareebene 213 auf. In diesem Fall wird die Virtualisierung der Steuergeräte 207-1, 207-2 und 207-3 durch die Hardware des Mehrfach-Steuergerätes 200 durchgeführt.
-
4 zeigt ein Blockdiagramm eines Verfahrens für ein Mehrfach-Steuergerät 200 mit einer Steuergerät-Virtualisierungsumgebung 205. In einem ersten Schritt S101 wird das erste virtuelle Steuergerät 207-1 mit ersten logischen Steuergeräte-Kommunikationsschnittstellen 109-1 in der Steuergeräte-Virtualisierungsumgebung 205 virtualisiert. Gleichzeitig wird im Schritt S102 das zweite virtuelle Steuergerät 207-2 mit zweiten logischen Steuergeräte-Kommunikationsschnittstellen 109-2 in der Steuergeräte-Virtualisierungsumgebung 205 virtualisiert. Im Allgemeinen kann eine beliebige Anzahl weiterer Steuergeräte 207-1 und 207-2 virtualisiert werden, solange die Hardware-Ressourcen ausreichen.
-
Durch das Verfahren führt das Mehrfach-Steuergerät 200 die Software-Komponenten der bisher einzeln vorgesehenen Steuergeräte 107-1, 107-2 und 107-3 in jeweils virtuellen Maschinen in einer gemeinsamen, überwachenden Steuergeräte-Virtualisierungsumgebung 205 aus, in der diese logisch vollständig voneinander getrennt und ausgeführt werden.
-
Damit das Mehrfach-Steuergerät 200 nicht für jedes virtuelle Steuergerät 207-1, 207-2 und 207-3 eine eigene CAN-Kommunikationsschnittstelle bereitstellen muss, wird in der Software der einzelnen Steuergeräte 207-1, 207-2 und 207-3 der CAN-Softwaretreiber durch einen Treiber ersetzt, der Nachrichten mit dem ebenfalls in der Virtualisierungsumgebung 205 ausgeführten Gateway-Modul 217 austauscht. Der Treiber kann jedoch auch unverändert verwendet werden, wenn ein Hypervisor die nicht-real existierende Hardware softwaremäßig nachbildet.
-
Dieses Gateway-Modul 217 kennt die Gesamttopologie des Netzwerkes zwischen den externen sowie den internen Steuergeräten 207-1, 207-2 und 207-3 und ist in der Lage, die Nachrichten entweder über die interne, virtuelle Kommunikationsschnittstelle zuzustellen oder über eine externe Kommunikationsschnittstelle des Gesamtsteuerwerkes an externe Geräte zu übermitteln. Dadurch ist die gleiche Funktion gewährleistet, die sich in der Ausführung aus einzelnen Steuergeräten 107-1, 107-2 und 107-3 ergibt.
-
Alle in Verbindung mit einzelnen Ausführungsformen der Erfindung erläuterten und gezeigten Merkmale können in unterschiedlicher Kombination in dem erfindungsgemäßen Gegenstand vorgesehen sein, um gleichzeitig deren vorteilhafte Wirkungen zu realisieren.
-
Alle Verfahrensschritte können durch Vorrichtungen implementiert werden, die zum Ausführen des jeweiligen Verfahrensschrittes geeignet sind. Alle Funktionen, die von gegenständlichen Merkmalen ausgeführt werden, können ein Verfahrensschritt eines Verfahrens sein.
-
Der Schutzbereich der vorliegenden Erfindung ist durch die Ansprüche gegeben und wird durch die in der Beschreibung erläuterten oder den Figuren gezeigten Merkmale nicht beschränkt.
-
Bezugszeichenliste
-
- 100
- Fahrzeug
- 107
- Steuergerät
- 109
- Kommunikationsschnittstelle
- 111
- Steuergeräteprogramm
- 200
- Mehrfach-Steuergerät
- 205
- Virtualisierungsumgebung
- 207
- virtuelles Steuergerät
- 109
- Kommunikationsschnittstelle
- 213
- Hardwareebene
- 215
- Softwareebene
- 217
- Gateway-Modul