-
Die vorliegende Erfindung betrifft ein Kraftzeug mit einem Steuergerätesystem, das mehrere Steuergeräte umfasst und ein Verfahren zum Steuern von Steuergeräten in einem Kraftfahrzeug.
-
Heutige Kraftfahrzeuge umfassen eine Vielzahl unabhängiger Steuergeräte für unterschiedliche Aufgaben und Zwecke. Allerdings werden Softwaresysteme in Kraftfahrzeugen zunehmend komplexer und anspruchsvoller hinsichtlich eines Verbrauchs von Rechenleistung und Hardware-Ressourcen der Steuergeräte. Bestimmte Softwarekomponenten von Steuergeräten können von der messbaren Außenwelt entkoppelt werden, da diese reine Verarbeitungsaufgaben übernehmen und keinen direkten Zugriff auf Sensoren benötigen.
-
Es ist die technische Aufgabe der vorliegenden Erfindung, die Hardwareanforderungen eines Steuergerätesystems innerhalb eines Kraftfahrzeugs 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 Kraftzeug mit einem Steuergerätesystem gelöst, mit einem ersten Steuergerät zum Ausführen eines digitalen Steuerprogramms; einem zweiten Steuergerät zum Ausführen des digitalen Steuerprogramms; und einem Übertragungsmodul zum Übertragen des digitalen Steuerprogramms auf das erste und/oder zweite Steuergerät. Das Übertragungsmodul ist beispielsweise durch ein digitales Programm gebildet, das Steuerprogramme auf die jeweiligen Steuergeräte aufspielen kann oder ein Steuerprogramm von dem einen auf ein anderes Steuergerät übertragen kann. Durch die gezielte Verteilung von Steuerprogrammen lassen sich Hardwareressourcen aller Steuergeräte effizient auslasten und ein Leerlauf von existierenden Hardwareressourcen verhindern. Insgesamt brauchen durch die effiziente Verteilung der Steuerprogramme über mehrere Steuergeräte weniger Hardware-ressourcen bereitgestellt zu werden.
-
In einer technisch vorteilhaften Ausführungsform des Kraftfahrzeugs basiert das erste Steuergerät auf einer anderen Hardware als das zweite Steuergerät. Dadurch wird beispielsweise der technische Vorteil erreicht, dass eine besonders geeignete Hardware für die originär zu übernehmenden Steuerungsaufgaben verwendet werden kann.
-
In einer weiteren technisch vorteilhaften Ausführungsform des Kraftfahrzeugs ist das Übertragungsmodul ausgebildet, das digitale Steuerprogramm für eine Ausführung auf dem ersten oder zweiten Steuergerät zu übersetzen. Dadurch wird beispielsweise der technische Vorteil erreicht, dass eine Übertragung auf unterschiedliche Steuergeräte mit unterschiedlicher Hardware durchgeführt werden kann.
-
In einer weiteren technisch vorteilhaften Ausführungsform des Kraftfahrzeugs umfasst das Kraftfahrzeug einen digitalen Speicher, in dem das digitale Steuerprogramm für das erste und das zweite Steuergerät gespeichert ist. Dadurch wird beispielsweise der technische Vorteil erreicht, dass die Steuerprogramme für die einzelnen Steuergeräte in dem digitalen Speicher vorgehalten werden können.
-
In einer weiteren technisch vorteilhaften Ausführungsform des Kraftfahrzeugs ist in dem digitalen Speicher ein generisches Steuerprogramm gespeichert, das durch das Übertragungsmodul für das jeweilige Steuergerät übersetzbar ist. Dadurch wird beispielsweise der technische Vorteil erreicht, dass sich der Speicherplatz zum Speichern der Steuerprogramme verringert und der Aufwand zum Übersetzen des generischen Programms geringer als eines proprietären Steuerprogramms ist.
-
In einer weiteren technisch vorteilhaften Ausführungsform des Kraftfahrzeugs ist in dem Speicher jeweils ein proprietäres Steuerprogramm für das jeweilige Steuergerät vorgespeichert. Dadurch wird beispielsweise der technische Vorteil erreicht, dass die einzelnen Steuerprogramme nicht übersetzt werden müssen.
-
In einer weiteren technisch vorteilhaften Ausführungsform des Kraftfahrzeugs ist das Übertragungsmodul ausgebildet, zusätzlich zum dem Steuerprogramm einen Ausführungsstatus des Steuerprograms zu übertragen. Dadurch wird beispielsweise der technische Vorteil erreicht, dass die einzelnen Steuerprogramme zur Laufzeit unterbrechungsfrei von einem Steuergerät auf ein anderes Steuergerät übertragen werden können.
-
In einer weiteren technisch vorteilhaften Ausführungsform des Kraftfahrzeugs ist das Übertragungsmodul durch ein Softwaremodul gebildet, das auf einem der Steuergeräte läuft. Dadurch wird beispielsweise der technische Vorteil erreicht, dass auf eine dedizierte Hardware zum Implementieren des Übertragungsmoduls verzichtet werden kann.
-
Gemäß einem zweiten Aspekt wird diese technische Aufgabe durch ein Verfahren zum Steuern von Steuergeräten in einem Kraftfahrzeug gelöst, mit den Schritten eines Übertragens eines digitalen Steuerprogramms auf ein erstes und/oder zweites Steuergerät durch ein Übertragungsmodul; und eines Ausführens des digitalen Steuerprogramms auf dem ersten und/oder zweiten Steuergerät. Durch das Verfahren werden die gleichen technischen Vorteile wie durch das Kraftfahrzeug nach dem ersten Aspekt erreicht.
-
In einer technisch vorteilhaften Ausführungsform des Verfahrens wird das digitale Steuerprogramm vor einem Übertragen für das erste und/oder zweite Steuergerät aus einem generischen Steuerprogramm übersetzt. Dadurch wird beispielsweise ebenfalls der technische Vorteil erreicht, dass sich der Speicheraufwand verringert, da keine proprietären Steuerprogramme angelegt werden müssen.
-
Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und werden im Folgenden näher beschrieben.
-
Es zeigen:
- 1 eine schematische Darstellung eines Kraftzeugs mit einem Steuergerätesystem;
- 2 ein Blockdiagramm eines Verfahrens zum Übertragen eines Steuerprogramms in einem Kraftfahrzeug.
-
1 zeigt eine schematische Darstellung eines Kraftzeugs 100 mit einem Steuergerätesystem, wie beispielsweise ein Automobil. Das Kraftfahrzeug 100 umfasst mehrere elektronische Steuergeräte 101-1, 101-2 und 101-3. Jedes dieser Steuergeräte 101-1, 101-2 und 101-3 erfüllt eine andere Funktion innerhalb des Kraftfahrzeugs 100 und ist auf einer separaten Hardware implementiert. Jedes dieser Steuergeräte 101-1, 101-2 und 101-3 kann zudem eine virtuelle Maschine (Virtual Machine) umfassen, die eine Software-technische Kapselung eines Steuergerätes innerhalb eines lauffähigen Steuergerätes implementiert.
-
Bei dem Steuergerät 101-1 handelt es sich beispielsweise um ein ABS-Steuergerät 101-1 (ABS - Antiblockiersystem), das über Sensoren die Raddrehungen erfasst. Bei dem Steuergerät 101-2 handelt es sich beispielsweise um ein Motorsteuergerät und bei dem Steuergerät 101-3 beispielsweise um ein Infotainment-Steuergerät. Im Allgemeinen kann es sich bei den Steuergeräten 101-1, 101-2 und 101-3 jedoch um jedes beliebige elektronische Steuergerät handeln.
-
Jedes der elektronischen Steuergeräte 101-1, 101-2 und 101-3 weist eine oder mehrere Kommunikationsschnittstellen 107-1, 107-2 und 107-3 auf, über die eine Datenkommunikation mit den anderen Steuergräten 101-1, 101-2 und 101-3 durchgeführt wird, wie beispielsweise eine Datenkommunikation über eine Bus-Verbindung oder eine Punkt-zu-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 101-1, 101-2 und 101-3 sind datentechnisch miteinander vernetzt.
-
Die Steuergeräte 101-1, 101-2 und 101-3 sind jeweils auf einer eigenen Hardware implementiert, die einen Datenspeicher zum Speichern von Steuerprogrammen 103 und einen Mikrocontroller zum Ausführen der Steuerprogramme 103 umfasst. Die Funktion des jeweiligen Steuergerätes 101-1, 101-2 und 101-3 wird maßgeblich durch das jeweilige digitale Steuerprogramm 103 implementiert, das auf diesem software-mäßig ausgeführt wird. Die Steuerprogramme 103 können Daten empfangen, aufwändige Berechnungen durchführen, und die Ergebnisse an andere Steuerprogramme 103 auf anderen Steuergeräten 101-1, 101-2 und 101-3 übertragen. Die auf diese Weise verarbeiteten Daten können aufgezeichnet werden oder als Live-Daten verwendet werden, je nachdem wie die Echtzeitanforderungen für das Steuerprogramm 103 sind.
-
Weiter umfasst das Kraftfahrzeug 100 ein Übertragungsmodul 105 zum Übertragen von digitalen Steuerprogrammen 103 auf die einzelnen Steuergeräte 101-1, ..., 101-3. Das Übertragungsmodul 105 ist ein Job-Planer über unterschiedliche Steuergeräte 101-1, ..., 101-3 hinweg (Cross-Control Unit Job Scheduler). Die Übertragung der Steuerprogramme 103 findet über die einzelnen Kommunikationsschnittstellen 107-1, 107-2 und 107-3 statt und kann sowohl eine Übertragung von einem Steuergerät 101-1 auf ein anderes Steuergerät 101-2 als auch eine Übertragung aus einem zentralen digitalen Speicher 109 umfassen, wie beispielsweise einem Flash-Speicher.
-
Das Übertragungsmodul 105 kann durch eine dedizierte Hardware innerhalb des Kraftfahrzeugs 100 gebildet sein oder als Softwaremodul auf einem der Steuergeräte 101-1, ..., 101-3 laufen. Bei der Übertragung von einem Steuergerät 101-1 auf ein anderes Steuergerät 101-2 kann das Übertragungsmodul 105 das Steuerprogramm 103 von einem proprietären Format für das Steuergerät 101-1 in ein anderes proprietäres Format für das andere Steuergerät 101-2 übersetzen, falls ein Steuersystem mit heterogenen Steuergeräten vorliegt.
-
Allerdings kann das Übertragungsmodul 105 auch geeignet sein, ein generisches Steuerprogramm 103 in einem Metaformat aus dem digitalen Speicher 109 abzurufen und dieses in ein Steuerprogram 103 in einem proprietären Format für eines der Steuergeräte 101-1, ..., 101-3 zu übersetzen. Allerdings kann in dem digitalen Speicher 109 auch eine Vielzahl von proprietären Steuerprogrammen 103 gespeichert sein, die auf dem jeweiligen Steuergerät 101-1, ..., 101-3 eingesetzt werden können, ohne vorher übersetzt worden zu sein. Bei der Übertragung auf ein bestimmtes Steuergerät 101-1, ..., 101-3 wählt das Übertragungsmodul 105 automatisch ein geeignetes proprietäres Steuerprogramm 103 für das Steuergerät 101-1, ..., 101-3 aus.
-
Durch das Übertragungsmodul 105 können Softwarefunktionen der unterschiedlichen Steuerprogramme 103 auf den Steuergeräten 101-1, ..., 101-3 innerhalb des Kraftfahrzeugs 100 dynamisch verteilt werden. Durch ein Steuern von nicht nur der zeitlichen, sondern auch der räumlich verteilten Ausführung von virtuellen Maschinen, kann eine optimale Ablaufplanung (Scheduling) auf einer Fahrzeugebene gefunden werden, die es erlaubt, die Menge der installierten Verarbeitungsleistung zu verringern, obwohl eine Berechnungskomplexität und Leistungsanforderung der Steuerprogramme 103 der Steuergeräte 101-1, ..., 101-3 ansteigt. Um zur Laufzeit Steuerprogramme 103 übertragen zu können, kann das Übertragungsmodul 105 nicht nur das Steuerprogramm 103 als solches, sondern auch einen gegenwärtigen Ausführungsstatus eines ausgeführten Steuerprograms 103 übertragen, wie beispielsweise den Inhalt bestimmter Variablen.
-
Durch das Übertragungsmodul 105 lassen sich einzelne Steuerprogramme dynamisch starten, stoppen oder mit anderen Steuerprogrammen 103 auf geeigneten Steuergeräten 101-1, ..., 101-3 kombinieren, falls hierzu erforderliche Ressourcen verfügbar sind. Das Übertragungsmodul 105 kann hierzu die freien Ressourcen und die Auslastung der Steuergeräte 101-1, ..., 101-3 überwachen. Bei der Live-Migration können virtuelle Steuerprogramme 103 von einem Steuergerät 101-1, ..., 101-3 auf einen anderes Steuergerät 101-1, ..., 101-3 übertragen werden, ohne dass Daten verloren gehen.
-
Durch eine Live-Migration des Steuerprogramms 103 zwischen Steuergeräten 101-1, ..., 101-3 nicht nur identischer, sondern auch unterschiedlicher Hardware- und CPU-Architektur, können die technischen Vorteile auch für heterogene Steuergerätesysteme mit unterschiedlichen Steuergeräten 101, ..., 101-3 realisiert werden. Die Live-Migration einzelner, isolierter Softwarekomponenten von fahrzeuginternen Steuergeräten 101-1, ..., 101-3 innerhalb des Kraftfahrzeugs 100 erlaubt eine dynamische Aufteilung von Verarbeitungsressourcen. Dadurch lässt sich die Gesamtmenge an installierter Hardware innerhalb des Kraftfahrzeugs 100 verringern
-
2 zeigt ein Blockdiagramm eines Verfahrens zum Übertragen eines Steuerprogramms in einem Kraftfahrzeug. Im Schritt S101 wird zunächst das digitale Steuerprogramm 103 auf ein beliebiges, geeignetes Steuergerät 101-1, ..., 101-3 durch das Übertragungsmodul 105 über die jeweiligen Kommunikationsschnittstellen 107-1, 107-2 und 107-3 übertragen. Die Übertragung erfolgt beispielsweise von Steuergerät 101-1 zu Steuergerät 101-2 oder aus einem zentralen digitalen Speicher 109 über die Netzwerktopologie des Kraftfahrzeugs 100. Anschließend wird das Steuerprogramm 103 auf dem jeweiligen Steuergerät 101-1, ..., 101-3 ausgeführt.
-
Durch eine wiederholte Anwendung des Verfahrens lässt sich die zeitliche und räumliche Zuordnung der Steuerprogramme 103 zu den jeweiligen Steuergeräten 101-1, ..., 101-3 dynamisch steuern, so dass vorhandene Hardwareressourcen bedarfsweise und effizient genutzt werden können.
-
Durch Entwickeln von Software-Komponenten in einem generischen Meta-Format, das unabhängig von den möglichen Steuergeräten 101-1, ..., 101-3 ist und einfach für die einzelnen Steuergeräte 101-1, ..., 101-3 bedarfsorientiert zu übersetzen ist, kann ein direktes Übersetzten von einem proprietären Format in ein anderes proprietäres Format vermieden werden. Dadurch vereinfacht und beschleunigt sich der Übersetzungsvorgang.
-
Eine mögliche Verwendung des Steuergerätesystems in dem Kraftfahrzeug 100 ist ein lernender Algorithmus für eine fahrzeuginterne Analyse als Steuerprogramm 103, um den Batteriezustand (State-of-Health) einer Fahrzeugbatterie zu verbessern. Das Batteriemanagement sammelt und überwacht konstant Sensordaten und berechnet eine Betriebsstrategie basierend auf Schlüsselindikatoren der Batterie, wie beispielsweise einem gegenwärtigen Batteriezustand.
-
Falls fortschrittliche und berechnungsaufwändige Steuerprogramme 103 verwendet werden, die mit großen Datenmengen arbeiten, sollten ein oder mehrere geeignete Steuergeräte 101, ..., 101-3 parallel bereitgestellt werden, um den entsprechenden Algorithmus auszuführen.
-
Die Live-Migration ermöglicht es allen geeigneten und nurteilweise ausgelasteten Steuergeräten 101, ..., 101-3, wie beispielsweise Steuergeräten für ein Infotainment oder Steuergeräten für deaktivierte ADAS/AD-Funktionen, an der Ausführung der migrierbaren Anwendung teilzunehmen. Dadurch kann auf den Einsatz eines dedizierten Hochleistungssteuergerätes verzichtet werden und Berechnungsaufgaben innerhalb des Steuergerätesystems parallelisiert werden.
-
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.
-
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.
-
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
- Kraftfahrzeug
- 101
- Steuergerät
- 103
- Steuerprogramm
- 105
- Übertragungsmodul
- 107
- Kommunikationsschnittstelle
- 109
- Digitaler Speicher