Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD FOR PERFORMING A SOFTWARE UPDATE IN A CONTROL UNIT OF A MOTOR VEHICLE, AND MOTOR VEHICLE DESIGNED ACCORDINGLY
Document Type and Number:
WIPO Patent Application WO/2019/211247
Kind Code:
A1
Abstract:
The invention relates to a method for performing a software update in a control unit (11) of a motor vehicle (10). The invention provides that, during driving operation of the motor vehicle (10), a first analysis device (12) of the motor vehicle (10) is used to predict, for a predefined future time interval (22) in which the control unit (11) is operated in order to generate control data (15, 16), an idle time interval (21) in which the generation of the control data (15, 16) of at least one software module (18) of the control unit (11) is interrupted during the driving operation at least for a predefined minimum duration (24) because of a vehicle state existing then, and the software update is started at the beginning of the idle time interval (21).

Inventors:
THURIMELLA, Anil (Jakob-Sturm-Weg 30, München, 80995, DE)
Application Number:
EP2019/060966
Publication Date:
November 07, 2019
Filing Date:
April 29, 2019
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
AUDI AG (I/FL-P, Ingolstadt, 85045, DE)
International Classes:
G06F8/65; G07C5/00
Foreign References:
US20110307882A12011-12-15
US20150301822A12015-10-22
DE102015014049A12017-05-04
DE102011088320A12013-03-28
DE102015007493A12016-12-15
Download PDF:
Claims:
PATENTANSPRÜCHE: Verfahren zum Durchführen eines Softwareupdates in einem Steuergerät (11 ) eines Kraftfahrzeugs (10),

dadurch gekennzeichnet, dass

während eines Fährbetriebs des Kraftfahrzeugs (10) durch eine erste Analyseeinrichtung (12) des Kraftfahrzeugs (10) für ein vorbestimmtes zukünftiges Zeitintervall (22), in welchem das Steuergerät (11 ) zum Er zeugen von Steuerdaten (15, 16) betrieben wird, ein Ruhezeitintervall (21 ), in welchem das Erzeugen der Steuerdaten (15, 16) zumindest eines Softwaremoduls (18) des Steuergeräts (11 ) während des Fährbetriebs mindestens für eine vorbestimmte Mindestzeitdauer (24) aufgrund eines dann vorliegenden Fahrzeugzustands unterbrochen ist, prädiziert wird und zu Beginn des Ruhezeitintervalls (21 ) das Softwareupdate gestartet wird Verfahren nach Anspruch 1 , wobei zum Erkennen des Ruhezeitintervalls (21 ) anhand von Betriebsdaten ermittelt wird, welche Steueraufgaben an das Steuergerät (11 ) übermittelt werden und/oder welche andere Fahr- zeugkomponente das zumindest eine Softwaremodul des Steuergeräts (11 ) anfordert Verfahren nach einem der vorhergehenden Ansprüche, wobei mehrere Softwaremodule (17, 18) in dem Steuergerät (11 ) bereitgestellt sind und das Softwareupdate umfasst, dass für zumindest eines der Softwaremo- dule (18) ein Einzel-Softwareupdate unabhängig von jedem übrigen der Softmodule (17) durchgeführt wird, und als Mindestzeitdauer (24) eine Updatezeitdauer für das zumindest eine Softwaremodule (18) zugrunde gelegt wird Verfahren nach Anspruch 3, wobei zumindest einige der Softwaremodule (17, 18) jeweils eine Mikrokomponente und/oder Mikrofunktion einer Ge rätefunktion darstellen.

5. Verfahren nach Anspruch 4, wobei Mikrodienste und/oder eine dienstori entierte Architektur bereitgestellt wird, um embedded Software und/oder Software mit den Mikrokomponenten und/oder Mikrofunktionen bereitzu stellen

6. Verfahren nach einem der vorhergehenden Ansprüche, wobei die erste Analyseeinrichtung (12) das Ruhezeitintervall (21 ) auf der Grundlage ei ner Machine-Learning-Methode (23) und/oder einer Predictive-Analytics-

Methode ermittelt, indem anhand von historischen Betriebsdaten des Kraftfahrzeugs (10) zumindest ein Fahrbetriebsmuster des Kraftfahr zeugs (10) ermittelt und das zumindest eine Fahrbetriebsmuster zum Er kennen des Ruhezeitintervalls (21 ) wiedererkannt wird.

7. Verfahren nach einem der vorhergehenden Ansprüche, wobei die erste Analyseeinrichtung (12) durch eine von dem Steuergerät (11 ) verschie dene Überwachungseinrichtung bereitgestellt wird und die Überwa chungseinrichtung das Ruhezeitintervall (21 ) anhand von Kommunikati onsdaten, die zwischen dem Steuergerät (11 ) und zumindest einer weite ren Fahrzeugkomponente übertragen werden, ermittelt.

8. Verfahren nach einem der vorhergehenden Ansprüche, wobei eine zwei te Analyseeinrichtung (26) in dem Steuergerät (11 ) bereitgestellt wird und die zweite Analyseeinrichtung (26) zukünftig angeforderte Berechnungs aufgaben in dem Steuergerät (11 ) prädiziert und diese Berechnungsauf gaben vor ihrer jeweiligen Anforderung vorgezogen durchgeführt werden und hierdurch eine das Ruhezeitintervall (21 ) vergrößernde Idle-Zeit des Steuergeräts (11 ) bereitgestellt wird.

9. Verfahren nach Anspruch 8, wobei die zweite Analyseeinrichtung (26) die zukünftig angeforderten Berechnungsaufgaben auf der Grundlage einer Machine-Learning-Methode und/oder Predictive-Analytics-Methode ermit telt, wobei insbesondere eine Implementierung in einem FPGA und/oder auf Betriebssystemebene vorgesehen ist.

10. Verfahren nach einem der vorhergehenden Ansprüche, wobei nach des Softwareupdates eine Schadsoftware-Erkennung (27) mittels einer Mino ritätsklassifikation betreffend Steuerdaten (16), die von einem durch das Softwareupdate installierten, neuen Softwaremodul (18‘) erzeugt werden, durchgeführt wird.

11. Verfahren nach einem der vorhergehenden Ansprüche, wobei das Soft wareupdate eine Erneuerung zumindest eines Softwaremoduls (18) und/oder eine Neuinstallation eines zusätzlichen Softwaremoduls (18‘) für eine neue Steuerfunktion umfasst.

12. Kraftfahrzeug (10) mit einem Steuergerät (11 ) zum Erzeugen von Steu erdaten (15, 16),

dadurch gekennzeichnet, dass

eine erste Analyseeinrichtung (12) zum Ermitteln eines während eines Fährbetriebs voraussichtlich eintretenden Ruhezeitintervalls (21 ) des Steuergeräts (11 ) bereitgestellt ist und das Kraftfahrzeug (10) dazu ein gerichtet ist, ein Verfahren nach einem der vorhergehenden Ansprüche durchzuführen.

Description:
Verfahren zum Durchführen eines Softwareupdates in einem Steuergerät eines Kraftfahrzeugs sowie entsprechend eingerichtetes Kraftfahrzeug

BESCHREIBUNG:

Die Erfindung betrifft ein Verfahren zum Durchführen eines Softwareupdates in einem Steuergerät eines Kraftfahrzeugs. Mittels des Verfahrens kann das Softwareupdate insbesondere während eines Fährbetriebs des Kraftfahr zeugs durchgeführt werden. Zu der Erfindung gehört auch ein Kraftfahrzeug, welches das erfindungsgemäße Verfahren durchführen kann.

In einem Kraftfahrzeug kann es erwünscht sein, Software eines Steuergeräts des Kraftfahrzeugs in einem Softwareupdate zu erneuern oder neue, zusätz- liche Software neu zu installieren, um hierdurch den Funktionsumfang des Steuergeräts zu erweitern und/oder zu verbessern und/oder zu korrigieren. In Bezug auf die Erfindung ist insbesondere vorgesehen, dass das Kraftfahr zeug über eine Funkverbindung mit einer Backendvorrichtung gekoppelt ist. Das Kraftfahrzeug meldet sich bei der Backendvorrichtung an, um sich zu authentifizieren und zu autorisieren. Danach kann das Softwareupdaten über die Funkverbindung durchgeführt werden (sogenanntes Online- Softwareup date). Eine Backendvorrichtung kann jeweils ein Server (Internetserver / Servervorrichtung), ein Computerzentrum (Computer center), ein Computer- duster, ein Clouddienst oder ein verteiltes und dezentrales Rechenzentrum sein.

Im Zusammenhang mit der Erfindung kann ein Softwareupdate beispielhaft die folgenden Szenarien umfassen. Ein Benutzer eines Kraftfahrzeug mit einer vorgegebenen Nennleistung (z.B. 105 PS) kann die Nennleistung auf einen höheren Nennwert einstellen (z.B. 150 PS). Dazu kann ein Software update in der Motorsteuergerät durchgeführt werden. Auch bei Programmier- fehlem kann in einem Steuergerät eines Kraftfahrzeugs die fehlerhafte Soft ware per Softwareupdate ausgetauscht werden.

Aus der DE 10 2015 014 049 A1 ist hierzu bekannt, dass abgewartet wird, bis sich das Kraftfahrzeug in einer Parkphase (das heißt nicht im Fahrbe- trieb) befindet, um dann Programmdaten oder Softwaredaten aus dem Inter net zu empfangen und in einem Steuergerät des Kraftfahrzeugs zu installie ren Durch das Abwarten einer Parkphase soll sichergestellt werden, dass während des Softwareupdates (Softwareupdate) das Steuergerät garantiert nicht benötigt wird. Würde das Steuergerät während des Softwareupdates nämlich benötigt, könnte es nicht die von ihm erwarteten Steuerdaten bereit- steilen, da seine Software gerade ausgetauscht wird. Allerdings erfordert das Abwarten einer Parkphase, dass ein Softwareupdate nur zu sporadischen Zeitpunkten ermöglicht ist

Auch aus der DE 10 2011 088 320 A1 ist bekannt, dass man für ein Soft wareupdate zunächst einen Update-Zustand abwarten sollte, der darin be steht, dass in dem Kraftfahrzeug ausreichend elektrische Energie durch eine Batterie bereitgestellt werden kann und das Kraftfahrzeug geparkt ist. Auch hier ist es somit unmöglich, dass ein Softwareupdate während eines Fährbe triebs des Kraftfahrzeugs durchgeführt wird.

Aus der DE 10 2015 007 493 A1 ist bekannt, dass man mittels einer Metho de des maschinellen Lernens ein Betriebsverhalten eines Kraftfahrzeugs modellieren oder erlernen kann, um eine Aussage über das Betriebsverhal ten des Kraftfahrzeugs machen zu können.

In einem Fachbeitrag von Jason Gong (Jason Gong,“Machine Learning on

FPGAs”, http://cadlab.cs.ucla.edu/~cong/slides/HAL015_keynote.pdf) ist beschrieben, wie maschinelles Lernen mittels eines FPGA (Field pro- grammable gate array) optimiert werden kann. Zudem sind weitere Optimie rungsmöglichkeiten auf Prozessorebene und Serverebene/Backendebene genannt. Der Erfindung liegt die Aufgabe zugrunde, in einem Steuergerät eines Kraft fahrzeugs ein Softwareupdate durchzuführen.

Die Aufgabe wird durch die Gegenstände der unabhängigen Ansprüche gelöst. Vorteilhafte Ausführungsformen der Erfindung sind durch die abhän gigen Patentansprüche, die folgende Beschreibung sowie die Figur be schrieben.

Durch die Erfindung ist ein Verfahren zum Durchführen eines Software updates in einem Steuergerät eines Kraftfahrzeugs bereitgestellt. Während eines Fährbetriebs des Kraftfahrzeugs wird ein Steuergerät betrieben, das hierdurch Steuerdaten erzeugt. Die Steuerdaten werden durch zumindest ein Softwaremodul des Kraftfahrzeugs erzeugt. Ein Softwaremodul stellt jeweils eine Steuerfunktion oder mehrere Steuerfunktionen bereit. Während des Fährbetriebs wird nun durch eine Analyseeinrichtung des Kraftfahrzeugs für ein vorbestimmtes zukünftiges Zeitintervall, in welchem das Steuergerät zum Erzeugen der Steuerdaten betrieben wird, ein Ruheintervall ermittelt. Durch den Steuergerät wird also betrieben, damit es bei Bedarf Steuerdaten er zeugt Es muss dabei aber nicht durchgehend während des gesamten Zeitin tervalls auch tatsächlich Steuerdaten erzeugen. Das Ruheintervall zeichnet sich nämlich dadurch aus, dass das Erzeugen der Steuerdaten zumindest eines Softwaremoduls des Steuergeräts während des Fährbetriebs mindes tens für eine vorbestimmte Mindestzeitdauer aufgrund eines dann vorliegen den Fahrzeugzustands unterbrochen ist. Das Steuergerät wird also weiterhin betrieben, aber zumindest ein Softwaremodul wird in dem Ruheintervall voraussichtlich nicht zum Erzeugen von Steuerdaten genutzt, weil der Fahr zeugzustand es nicht erfordert.

Das Ruhezeitintervall wird durch die erste Analyseeinrichtung prädiziert, das heißt es ist schon im Voraus bekannt, wann zukünftig das Ruhezeitintervall beginnen wird und wie lange es mindestens dauern wird. Zu Beginn des Ruhezeitintervalls wird dann das Softwareupdate gestartet. Da durch die Prädiktion bekannt ist, dass das Ruhezeitintervall mindestens die vorbe stimmte Mindestzeitdauer andauern wird, also das zumindest eine Softwa- remodul des Steuergeräts währenddessen keine Steuerdaten erzeugen muss, ist für dieses Ruhezeitintervall das Softwareupdate für das zumindest eine Softwaremodul möglich. Das Softwareupdate kann somit während des Fährbetriebes, also insbesondere während das Kraftfahrzeug rollt und/oder ein Motor des Kraftfahrzeugs im Betrieb ist, durchgeführt werden. Das Steu- ergerät kann währenddessen zum Erzeugen der Steuerdaten betrieben wer- den. In einem zukünftigen Zeitintervall während des Betriebs des Steuerge räts, also beispielsweise für die nächsten zehn Minuten oder die nächste Stunde oder allgemein für ein Zeitintervall der Dauer von zehn Sekunden bis einer Stunde, wird dann in dem Zeitintervall das Ruhezeitintervall prädiziert. Das Ruhezeitintervall stellt also einen Zeitslot während des Fährbetriebes dar, in welchem in dem Steuergerät zumindest ein Softwaremodul keine Steuerdaten erzeugen muss. Diese Unterbrechung der Erzeugung der Steu- erdaten bei zumindest einem Softwaremodul kann genutzt werden, um für dieses zumindest eine Softwaremodul ein Softwareupdate durchzuführen, also z.B. eine Softwareerneuerung oder eine Softwareerweiterung (Neuin stallation)

Durch die Erfindung ergibt sich der Vorteil, dass bei dem Kraftfahrzeug kein Standby-Modus des Steuergeräts nötig ist, also beispielsweise keine Parkphase Im Betrieb des Steuergeräts wird zumindest ein Ruhezeitintervall detektiert, in welchem zumindest ein Softwaremodul des Steuergeräts aktuell nicht benötigt wird und somit in eines Softwareupdates ausgetauscht oder aktualisiert werden kann.

Ein weiterer Vorteil des vorgeschlagenen Softwareupdates ist die hohe Energieeffizienz, die darin begründet liegt, dass es schnell während einer Fahrt und/oder während der Laufzeit des Kraftfahrzeugs durchgeführt wer den kann. Wenn das Softwareupdate während der Laufzeit durchgeführt wird, besteht kein Bedarf, das Kraftfahrzeug ausschließlich für das Software update in Betrieb zu nehmen. Das Kraftfahrzeug muss auch nicht für längere Zeit laufen gelassen werden, nur um ein Softwareupdate durchzuführen oder abzuschließen AH dies trägt zur Energieeffizienz bei. Zu der Erfindung gehören auch Ausführungsformen, durch die sich zusätzli che Vorteile ergeben.

Eine Ausführungsform sieht vor, dass zum Erkennen des Ruhezeitintervalls anhand von Betriebsdaten ermittelt wird, welche Steueraufgaben (sogenann te Jobs) an das Steuergerät übermittelt werden und/oder welche andere Fahrzeugkomponente des Kraftfahrzeugs das zumindest eine Softwaremo dul des Steuergeräts anfordert. Es wird also ermittelt, wann man und/oder wer das zumindest eine Softwaremodul des Steuergeräts benötigt. In einem Zeitraum, in welchem das zumindest eine Softwaremodul nicht benötigt oder angefragt wird, ergibt sich somit ein Ruhezeitintervall Die hierzu genutzten Betriebsdaten können z.B. Kommunikationsdaten aus einem Kommunikati onsbus, z.B. einem CAN-Bus (GAN - Controller Area Network) oder einem Flexray-Bus oder einem MOST -Bus (Media Oriented Systems Transport), und/oder aus einem Ethernet-Netzwerk umfassen.

Eine Ausführungsform sieht vor, dass mehrere Softwaremodule des Steuer geräts jeweils als eigenständiges Softwaremodul bereitgestellt sind und das Softwareupdate umfasst, dass für zumindest eines der Softwaremodule ein Einzel-Softwareupdate unabhängig von jedem übrigen der Softwaremodule durchgeführt wird. Als Mindestzeitdauer wird dann eine Updatedauer für eines der Softwaremodule zugrundegelegt. Es muss also nicht die vollstän dige Software des Steuergeräts en bloc oder im Ganzen bei des Software updates ausgetauscht oder verändert werden. Durch den modularen Aufbau kann das Softwareupdate auch modulweise, das heißt für jedes Software modul einzeln, durchgeführt werden. Es kann also jedes Softwaremodul unabhängig von jedem anderen Softwaremodul einzeln ausgetauscht oder erneut werden. Das Ruhezeitintervall wird dann für eine Mindestzeitdauer ermittelt, die ausreicht, um ein einzelnes Softwaremodul zu erneuern oder auszutauschen. Es wird dann natürlich ein solches Softwaremodul ausge tauscht oder ein Softwareupdate durchgeführt, das keine Steuerdaten in dem Ruhezeitintervall erzeugt. Es wird also in dem Steuergerät embedded Soft ware und/oder Software basierend auf Mikrokomponenten und/oder Mikro funktionen (d.h. die Softwaremodule) bereitgestellt, die unabhängig vonei- nander per Softwareupdate ausgetauscht werden können. Ein Softwareup date einer solchen Mikrokomponente benötigt weniger Zeit als ein Software update einer monolytischen Gesamtsoftware Da auch das Ruhezeitintervall nur für eine Mikrokomponente, d.h. für ein einzelnes Softwaremodul, gefun den werden muss, ergeben sich mehr Möglichkeiten für ein Softwareupdate, da das Ruhezeitintervall kürzer ausfallen kann. Die Mikrokomponenten kön nen gemeinsam eine Gerätefunktion realisieren. Durch diese Aufteilung einer Gerätefunktion ein einzelne, unabhängige Softwaremodule (Mikrokomponen ten) und/oder das vorsehen mehrere Softwarekomponenten in dem Steuer gerät kann eine Granularität des Softwareupdates eingestellt werden. Die Granularität kann insbesondere auswählbar sein. Insbesondere ist vorgese hen, Mikrodienste und/oder eine dienstorientierte Architektur bereitzustellen, um die embedded Software und/oder Software mit den Mikrokomponenten und/oder Mikrofunktionen bereitzustellen.

Eine Ausführungsform sieht vor, dass die erste Analyseeinrichtung das Ru hezeitintervall auf der Grundlage einer Machine-Learning-Methode (Maschi nenlernen) und/oder einer Predictive-Analytics-Methode (Prädiktive Analyse) ermittelt, indem anhand von historischen Betriebsdaten des Kraftfahrzeugs zumindest ein Fahrbetriebsmuster des Kraftfahrzeugs ermittelt und das zu mindest eine Fahrbetriebsmuster zum Erkennen des Ruhezeitintervalls wie der erkannt wird. Mit anderen Worten werden mittels der Machine-Learning- Methode eine Zustandsfolge des Steuergeräts und/oder ein zeitlicher Verlauf der Steuerdaten beobachtet, was die historischen Betriebsdaten darstellt. Jedes Fahrbetriebsmuster beschreibt hierbei eine typische Abfolge oder einen typischen Verlauf, wie er mehrfach in dem Kraftfahrzeug beobachtet worden ist. Wird dann mittels der Machine-Learning-Methode der Beginn eines Fahrbetriebsmusters wiedererkannt, so kann anhand des restlichen, im Voraus bekannten Verlaufs des Fahrbetriebsmusters prädiziert werden, wie sich das Kraftfahrzeug, insbesondere das Steuergerät, zukünftig verhalten wird. Zeigt das Fahrbetriebsmuster dabei ein Ruhezeitintervall an oder ent hält das Fahrbetriebsmuster ein Ruhezeitintervall, so kann dies mittels des Fahrbetriebsmusters prädiziert werden. Die Machine-Learning-Methode kann auf der Grundlage eines künstlichen neuronalen Netzwerks und/oder eines Bayes-Schätzers und/oder eines Hidden-Markov-Modells realisiert werden, um nur Beispiele zu nennen. Die Ausführungsform weist den Vorteil auf, dass historische Betriebsdaten zum Wiedererkennen eines bevorstehenden Ruhezeitintervails genutzt werden können.

Eine Ausführungsform sieht vor, dass die erste Analyseeinrichtung durch eine von dem Steuergerät verschiedene Überwachungseinrichtung bereitge- stellt wird. Das Steuergerät wird also durch die erste Analyseeinrichtung von außen beobachtet. Die Überwachungseinrichtung ermittelt das besagte Ru- hezeitintervall anhand von Kommunikationsdaten, die zwischen dem Steuer gerät und zumindest einer weiteren Fahrzeugkomponente übertragen wer den. Dieses Beobachten von Kommunikationsdaten wird auch als Logging bezeichnet. Die Überwachungseinrichtung kann beispielsweise durch ein anderes Steuergerät oder durch einen Verbund mehrerer Steuergeräte real i- siert sein. Die Ausführungsform weist den Vorteil auf, dass ein auf das Steu- ergerät einwirkender äußerer Einfluss durch die Überwachungseinrichtung berücksichtigt werden kann. Ein Beispiel einer Predictive-Analytics-Methode ist die logistische Regressionsanalyse (logistic reg ress io n analysis).

Eine Ausführungsform sieht vor, dass eine zweite Analyseeinrichtung in dem Steuergerät oder innerhalb des Steuergeräts bereitgestellt wird und die zwei- te Analyseeinrichtung zukünftig angeforderte Berechnungsaufgaben in dem Steuergerät prädiziert und diese Berechnungsaufgaben vor ihrer jeweiligen Anforderung vorgezogen durchgeführt werden und hierdurch eine das Ruhe- zeitintervall vergrößerte Idle-Zeit des Steuergeräts bereitgestellt wird. Eine Idle-Zeit ist ein Zeitraum, in welchem in dem Steuergerät keine Berech- nungsaufgaben durch ein vorbestimmtes Softwaremodul durchgeführt wer den müssen. Das Softwaremodul ist dann idle (unbeschäftigt). Indem dieje- nigen Intervalle, in welchen Rechnungsaufgaben ausgeführt werden müssen, zeitlich zusammengezogen oder vorgezogen werden, entsteht am Ende aller fertig berechneten Berechnungsaufgaben eine Idle-Zeit, die als Ruhezeitin tervall genutzt werden kann, das heißt für das Softwareupdate zur Verfügung steht. Indem aber die Berechnungszeitintervalle, in welchen Berechnungs- aufgaben durchgeführt werden, zeitlich vorgeschoben oder vorgezogen wer- den, steht dennoch stets das Berechnungsergebnis für jede Berechnungs aufgabe zum dann anfallenden Anforderungszeitpunkt bereit. Dieses Vorzie hen von Berechnungsaufgaben kann auf einer oder mehreren unterschiedli chen Ebenen des Steuergeräts (Hardwareebene, Betriebssystemebene, Diensteebene) durchgeführt werden. Es kann also beispielsweise auf der Hardwareebene in einem FPGA dieses Vorziehen von Berechnungsaufga ben implementiert sein, das heißt die zweite Anaiyseeinrichtung realisiert sein. Es kann auch durch eine Software eines Betriebssystems (OS - Opera- ting System) eine zweite Analyseeinrichtung realisiert sein. Auch eine Midd leware (Unterstützungssoftware beispielsweise für die Kommunikation zwi schen Prozessen und/oder Steuergeräten) kann eine zweite Analyseeinrich tung bereitstellen. Die Ausführungsform weist den Vorteil auf, dass aktiv ein Ruhezeitintervall geschaffen werden kann. Der Hauptvorteil der zweiten Analyseeinrichtung ist die Beschleunigung der Durchführung des Software updates Die erste und die zweite Analyseeinrichtung zusammen und die Unterteilung in unabhängige Softwaremodule (Mikrokomponenten) verbes sern die Performanz bei einem Softwareupdate Solche schnellen Software updates können auch zu neuen Geschäftsmodellen führen und/oder Anwen dungsfällen führen. So kann z.B. in der eingangs beschriebenen Weise ein Benutzer die Nennleistung des Motors seines Kraftfahrzeugs per Software update verändern. Die Veränderung des Funktionsumfangs des Kraftfahr zeugs per Softwareupdate kann auch auf einen vorbestimmten Zeitraum begrenzt sein. Der Funktionsumfang kann z.B auf einen Mietzeitraum be grenzt sein, während welchem ein Benutzer das Kraftfahrzeug mietet. Das Kraftfahrzeug wird somit zum mobilen Container, dessen Funktionsumfang per Softwareupdate umgestellt z.B in Abhängigkeit von Mietvertragsdaten werden kann, z.B innerhalb von wenigen Minuten

Eine Ausführungsform sieht vor, dass die zweite Analyseeinrichtung die zukünftig angeforderten Berechnungsaufgaben auf der Grundlage einer Machine-Learning-Methode und/oder Predictive-Analytics-Methode ermittelt. Dies kann in derselben Weise geschehen, wie bereits im Zusammenhang mit der ersten Analyseeinrichtung beschrieben worden ist. Eine Machine- Learning-Methode und/oder Predictive-Analytics-Methode weist den Vorteil auf, dass der spezifische Betriebsablauf in dem Kraftfahrzeug anhand von historischen Berechnungsaufgaben berücksichtigt werden kann. Es kann also beispielsweise ein typisches Fahrerverhalten hierdurch berücksichtigt werden, das Einfluss auf die entstehenden Berechnungsaufgaben (z.B. Fahrdynamikstabilisierung und/oder Trajektorienberechnung) haben kann. Die zweite Analyseeinrichtung kann z.B auf der eingangs genannten Machi- ne-Learning-Methode für einen FPGA beruhen und/oder auf Betriebssyste mebene implementiert sein, um die Performanz eines Chips (Integrierter Schaltkreis) / SOCs (System on Chip) zu steigern. Insbesondere ist eine Implementierung einer Machine-Learning-Methode mit Predictive-Analytics in einem FPGA und/oder auf Betriebssystemebene vorgesehen, also auf niede- rer Implementierungsebene, um einen Chip und/oder ein SOG für die schnel- tere Durchführung des Softwareupdates zu beschleunigen.

Eine Ausführungsform sieht vor, dass nach des Softwareupdates eine Schadsoftware-Erkennung mittels einer Minoritätsklassifikation betreffend diejenigen Steuerdaten, die von einem durch das Softwareupdate installier ten, neuen Softwaremodul erzeugt werden, durchgeführt wird. Eine Minori tätsklassifikation überprüft, ob die Steuerdaten, die von dem neuen Softwa remodul erzeugt werden, einem oder mehreren vorbestimmten Datenmus tern genügen. Fallen die Steuerdaten in keines der Datenmuster, so handelt es sich um untypische Steuerdaten, die als Steuerdaten einer Schadsoftware klassifiziert werden. Entsprechend wird signalisiert, dass Schadsoftware erkannt wurde. Hierdurch ergibt sich der Vorteil, dass nach eines Software updates sichergestellt wird, dass die korrekte oder ein autorisiertes Softwa- remodule installiert wurde.

Eine Ausführungsform sieht vor, dass das Softwareupdate eine Erneuerung zumindest eines Softwaremoduls und/oder eine Neuinstallation eines zusätz lichen Softwaremoduls für eine neue Steuerfunktion umfasst. Das Verfahren kann also zum einen für das Erneuern oder Verbessern eines bereits instal lierten Softwaremoduls verwendet werden. Zusätzlich oder alternativ dazu kann aber auch vorgesehen sein, dass mittels des Verfahrens eine neue Steuerfunktion durch Installieren eines zusätzlichen Softwaremoduls bereit- gestellt wird. Ein Softwareupdate ist also im Sinne der Erfindung eine Erneu erung und/oder eine Neuinstallation. Insbesondere ist zumindest eine der folgenden Varianten bevorzugt: Online-Softwareupdate (Backendvorrichtung überträgt Software); Softwareinstallation z.B. mittels USB-Medium (USB - Universal Serial Bus) und/oder CD (Compact Disc); ein Softwareupdate, um einen Fehler auszubessern; ein Softwareupdate, um ein neues Softwaremo dul auf dem Steuergerät zu installieren (neue Funktionalität). Ein Software update kann online (Funkverbindung und/oder Internetverbindung) oder offline (mit portablem Speichermedium) vorgesehen sein.

Zu der Erfindung gehört auch ein Kraftfahrzeug, in welchem das erfindungs gemäße Verfahren durchgeführt werden kann. Mit anderen Worten kann in dem Kraftfahrzeug ein Softwareupdate in einem Steuermodul durchgeführt werden. Das Kraftfahrzeug weist entsprechend das Steuergerät zum Erzeu gen der beschriebenen Steuerdaten auf. Eine erste Analyseeinrichtung ist zum Ermitteln eines während eines Fährbetriebs voraussichtlich eintretenden Ruhezeitintervalls des Steuergeräts bereitgestellt. Das Steuergerät ist insge samt dazu eingerichtet, eine Ausführungsform des erfindungsgemäßen Ver fahrens durchzuführen. Hierzu kann die erste Analyseeinrichtung beispiels weise durch die beschriebene Überwachungseinrichtung bereitgestellt sein. Das erfindungsgemäße Kraftfahrzeug ist insbesondere als Kraftwagen, be vorzugt als Personenkraftwagen oder Lastkraftwagen, ausgestaltet. Die erste Analyseeinrichtung kann auf der Grundlage einer Prozessoreinrichtung reali siert sein, die zumindest einen Mikrocontroller und/oder zumindest einen Mikroprozessor aufweisen kann. Die erste Analyseeinrichtung kann auf der Grundlage eines Programmcodes realisiert sein, der in einem Datenspeicher der Prozessoreinrichtung gespeichert sein kann. Das zumindest eine neue Softwaremodul, das durch das Softwareupdate installiert werden soll, kann in dem Kraftfahrzeug über eine Funkverbindung (zum Beispiel Mobilfunk oder WLAN - Wireless Local Area Network) aus dem Internet und/oder aus einer Backendvorrichtung empfangen werden.

Die Erfindung umfasst auch die Kombinationen der Merkmale der beschrie benen Ausführungsformen. Ί Ί

Im Folgenden sind Ausführungsbeispieie der Erfindung beschrieben. Hierzu zeigt die einzige Figur (Fig ):

Fig eine schematische Darstellung einer Ausführungsform des erfindungs- gemäßen Kraftfahrzeugs

Bei den im Folgenden erläuterten Ausführungsbeispielen handelt es sich um bevorzugte Ausführungsformen der Erfindung. Bei den Ausführungsbeispie len stellen die beschriebenen Komponenten der Ausführungsformen jeweils einzelne, unabhängig voneinander zu betrachtende Merkmale der Erfindung dar, welche die Erfindung jeweils auch unabhängig voneinander weiterbilden und damit auch einzeln oder in einer anderen als der gezeigten Kombination als Bestandteil der Erfindung anzusehen sind. Des Weiteren sind die be- schriebenen Ausführungsformen auch durch weitere der bereits beschriebe nen Merkmale der Erfindung ergänzbar.

Die Figur zeigt ein Kraftfahrzeug 10, bei dem es sich beispielsweise um einen Kraftwagen, insbesondere einen Personenkraftwagen oder Lastkraft wagen, handeln kann. Bei dem Kraftfahrzeug 10 sind ein Steuergerät 11 , eine erste Analyseeinrichtung 12, die beispielsweise ebenfalls durch ein Steuergerät realisiert sein kann, eine Kommunikationseinrichtung 13 und ein Kommunikationsbus 14 dargestellt. Das Steuergerät 11 kann Steuerdaten 15, 18 erzeugen, die beispielsweise über den Kommunikationsbus 14 an zumindest ein anderes Steuergerät und/oder an zumindest einen Aktuator und/oder zumindest einen Sensor ausgesendet werden können. Der Kom munikationsbus 14 kann beispielsweise ein CAN-Bus (CAN - Controller Area Network) oder ein Flexray-Bus sein. Zum Erzeugen der Steuerdaten 15, 16 können in dem Steuergerät 11 Softwaremodule 17, 18 vorgesehen sein, die durch eine Prozessoreinrichtung des Steuergeräts 11 , beispielsweise zumin dest einen Mikroprozessor, ausgeführt werden können. In der Figur ist unter schieden zwischen den Steuerdaten 15 der Softwaremodule 17 und den Steuerdaten 18 des Softwaremoduls 18. Durch jedes Softwaremodul kann jeweils zumindest eine Steuerfunktion des Steuergeräts 11 bereitgestellt werden. Im Folgenden wird Softwaremodul 17, 18 jeweils synonym für die durch das jeweilige Softwaremodul 17, 18 bereitgestellte Steuerfunktion verwendet.

Für das Softwaremodul 18 kann ein Update vorgesehen sein, in dem ein neues oder korrigiertes Softwaremodul 18‘ von einer Datenquelle 19 bereit- gestellt wird. Die Datenquelle 19 kann fahrzeugextern sein und beispielswei se eine Backendvorrichtung des Internets sein. Das neue Softwaremodul 18‘ kann durch die Kommunikationseinrichtung 13 über eine Funkverbindung 20 empfangen werden. Die Kommunikationseinrichtung 13 kann beispielsweise auf der Grundlage eines Mobilfunkmoduls (zum Beispiel 3G, 4G oder 5G) und/oder eines WLAN-Funkmoduls (WLAN - Wireless Local Area Network) empfangen werden. Das neue Softwaremodul 18‘ soll das Softwaremodul 18 ersetzen. Hierbei soll aber darauf verzichtet werden, dass zunächst das Steuergerät 11 in einen Standby-Modus geht, also aufhört, Steuerdaten 15, 18 zu erzeugen. Vielmehr soll das Softwareupdate des neuen Softwaremo duls 18‘ während eines Fährbetriebs des Kraftfahrzeugs 10 durchgeführt werden.

Dies kann mittels der ersten Analyseeinrichtung 12 realisiert werden. Um die Funktionsweise der ersten Analyseeinrichtung 12 zu veranschaulichen, ist in der Figur über der Zeit t eine zeitliche Abfolge der von dem Steuergerät 11 erzeugten Steuerdaten 15, 16 veranschaulicht. Ein aktueller Zeitpunkt ist als T0 auf dem Zeitstrahl eingetragen. Ausgehend von dem aktuellen Zeitpunkt T0 kann die erste Analyseeinrichtung 12 für ein zukünftiges Zeitintervall 22 prädizieren, welche Steuerdaten 15, 16 durch das Steuergerät 11 , insbeson dere durch die einzelnen Softwaremodule 17, 18, zukünftig voraussichtlich erzeugt werden. Hierzu kann die erste Analyseeinrichtung 12 eine Predictive- Analytics-Methode und/oder eine Machine-Learning-Methode 23 verwenden. Diese kann beispielsweise Betriebsdaten des Kraftfahrzeugs beobachten. Beispielsweise können Steueraufgaben, die an das Steuergerät 11 übermit telt werden, und/oder Anforderungsdaten, die angeben, welche andere Fahr zeugkomponente zumindest eine Steuerfunktion des Steuergeräts anfordert, ermittelt werden. Es kann dann das Ruhezeitintervall 21 prädiziert werden, welches innerhalb des Zeitintervalls 22 liegen kann und eine vorbestimmte Mindestzeitdauer 24 andauern wird oder sogar noch länger dauern wird. Es ist damit sicherge- stellt, dass während des Ruhezeitintervalls 21 das auszutauschende Softwa- remodul 18 nicht benötigt wird und somit der Fährbetrieb des Kraftfahrzeugs 10 nicht gestört wird, wenn das Softwaremodul 18 während des Ruhezeitin- tervalls 21 nicht zur Verfügung steht, weil dessen Programmcode oder Soft- waremodul durch das neue Softwaremodul 18‘ ersetzt wird. Zu einem Beginn 25 des Ruhezeitintervalls 21 kann somit ein Softwareupdate des Software- moduis 18‘ in dem Steuermodul 11 vorgenommen werden, durch welche das Softwaremodul 18 ersetzt wird. Danach können dann wieder Steuerdaten 16 durch das neu installierte Softwaremodul 18‘ erzeugt werden. Der Fahrbe- trieb des Kraftfahrzeugs 10 muss somit für das Softwareupdate nicht unter- brochen werden.

Um das Ruhezeitintervall 21 aktiv zu schaffen, kann eine zweite Analyseein- richtung 26 in dem Steuergerät 11 selbst bereitgestellt sein. Die Analyseein richtung 26 kann Berechnungsaufgaben prädizieren und diese vorgezogen durchführen, sodass hierdurch ein Ruhezeitintervall 21 geschaffen werden kann, in welchem zumindest das Softwaremodul 18 keine Berechnungen durchführen muss.

Nach dem Softwareupdate des Softwaremoduls 18‘ kann eine Schadsoft- wareerkennung 27 durchgeführt werden, die sowohl einen Bestandteil im Steuergerät 11 als auch einen Bestandteil in einem anderen Steuergerät, beispielsweise dem Steuergerät der ersten Analyseeinrichtung 12, aufweisen kann. Die von dem neuen Softwaremodul 18‘ erzeugten Steuerdaten können mittels einer Minoritätsklassifikation daraufhin überprüft werden, ob sie für das Steuergerät 11 typische Steuerdaten darstellen. Andernfalls wird eine Schadsoftware signalisiert.

Bei dem Kraftfahrzeug 10 werden somit mittels einer ersten Analyseeinrich- tung 12 (auf Basis einer Machine-Learning-Methode 23) auf Fahrzeugebene (außerhalb des Steuergeräts 11 ) die nächsten Aktivitäten des Steuergeräts 11 prädiziert. Auf Basis der Prädiktion ist das Softwareupdate oder das Soft wareupdate gesteuert, sodass das Softwareupdate keinen Einfluss auf das dynamische Verhalten oder das Fahrverhalten des Kraftfahrzeugs 10 auf weist Es kann somit während des Fährbetriebs ein Softwareupdate durchge führt werden.

Die Funktionalität und Komponenten des Steuergeräts 11 sind in unabhängi ge Mikrokomponenten, das heißt einzelne Softwaremodule, strukturiert oder aufgeteilt, sodass eine Steuerfunktion einzeln unabhängig von den übrigen Steuerfunktionen ausgetauscht werden kann, indem das entsprechende Softwaremodul unabhängig von den übrigen Softwaremodulen ausgetauscht wird.

Eine zweite Analyseeinrichtung 26 (mit Machine-Learning-Methode) kann auf Steuergeräteebene (das heißt im Steuergerät 11 ) die vorausliegenden oder zukünftigen Berechnungsaufgaben im Steuergerät 11 prädizieren. Diese zweite Analyseeinrichtung ist dazu verwendbar, auf zumindest einer Imple mentierungsebene (zum Beispiel Low-Level, wie in einem FPGA, und/oder auf einem höheren Level, zum Beispiel Betriebssystemebene und/oder Midd- leware-Ebene) eine Prädiktion durchzuführen. Durch eine solche Prädiktion der Berechnungsaufgaben und Vorziehen von deren Berechnung innerhalb des Steuergeräts 11 kann die Berechnungsgeschwindigkeit der Berech nungsaufgaben vergrößert werden und/oder zeitlich vorgezogen werden. Hierdurch kann ein Ruhezeitintervall geschaffen werden, dessen Dauer aus- reicht, um das Softwareupdate durchzuführen.

Beide Analyseeinrichtungen können dazu genutzt werden, die Schadsoft ware-Erkennung 27 durchzuführen, die es ermöglicht, Schadsoftware (Mal ware und/oder Cyberattacken) auf der Grundlage einer Minoritätsklassifikati on zu erkennen.

Die auf Basis einer Machine-Learning-Methode gesteuerten Updates ödes Softwareupdatesen sind hocheffizient und es besteht nicht die Notwendig- keit, das Kraftfahrzeug in einen Ruhemodus oder in einen Parkbetrieb zu überführen, um ein Softwareupdate durchzuführen. Die Sicherheit und Zu verlässigkeit des Kraftfahrzeugs kann durch die Möglichkeit, jederzeit ein Softwareupdate durchzuführen, insbesondere für automatisiertes Fahren vergrößert oder verbessert werden. Durch die Erkennung einer Schadsoft- ware ist auch das Manipulieren eines Kraftfahrzeugs erschwert. Durch die zügigen oder zeitlich unabhängigen Softwareupdates (kein Parkbetrieb nötig) kann es auch ermöglicht sein, ein Softwaremodul in Abhängigkeit von einer Buchung einer zusätzlichen Steuerfunktion und/oder einer Veränderung einer Steuerfunktion mit unterschiedlichen Ausstattungsmerkmalen bereitzu- stellen. Beispielsweise kann ein Benutzer für einen vorbestimmten Mietzeit- raum, beispielsweise für die Ferien, für zum Beispiel eine Woche oder eine vorbestimmte Anzahl von Wochen oder Tagen oder Stunden die Motorleis- tung seines Kraftfahrzeugs vergrößern, indem eine entsprechende Steuer funktion angemietet oder gemietet wird. Diese kann dann durch ein Soft wareupdate in dem Kraftfahrzeug bereitgestellt werden. Auch bei einem Mietfahrzeug kann in Abhängigkeit vom aktuell abgeschlossenen Mietvertrag durch ein Softwareupdate das Kraftfahrzeug mit einer im Mietvertrag ange gebenen Steuerfunktion oder mehreren Steuerfunktionen ausgestattet wer den. Am Ende des Mietvertrags oder bei Beginn eines anderen Mietvertrags kann dann durch ein weiteres Softwareupdate das Kraftfahrzeug auch wieder daran angepasst werden. Das Kraftfahrzeug wird somit zu einem mobilen Container, dessen Funktionalität durch ein Softwareupdate an einen aktuel len Bedarf eines Benutzers angepasst werden kann.

Die erste und die zweite Analyseeinrichtung zusammen und die Unterteilung in unabhängige Softwaremodule (Mikrokomponenten) verbessern somit die Performanz bei einem Softwareupdate Solche schnellen Softwareupdates können auch zu neuen Geschäftsmodellen führen und/oder Anwendungsfäl len führen. So kann z.B. in der eingangs beschriebenen Weise ein Benutzer die Nennleistung des Motors seines Kraftfahrzeugs per Softwareupdate verändern. Die Veränderung des Funktionsumfangs des Kraftfahrzeugs per Softwareupdate kann auch auf einen vorbestimmten Zeitraum begrenzt sein. Der Funktionsumfang kann z.B. auf einen Mietzeitraum begrenzt sein, wäh- rend welchem ein Benutzer das Kraftfahrzeug mietet. Das Kraftfahrzeug wird somit zum mobilen Container, dessen Funktionsumfang per Softwareupdate umgestellt z.B. in Abhängigkeit von Mietvertragsdaten werden kann, z.B. innerhalb von wenigen Minuten (z.B weniger als 10 Minuten)

Das Softwareupdate selbst kann auf der Grundlage der an sich bekannten Mechanismen durchgeführt werden, also beispielsweise das Übertragen eines neuen Softwaremoduls 18‘ über eine Funkverbindung sowie das Instal- lieren eines Softwaremoduls in einem Steuergerät Zusätzlich kann dann noch die erste Analyseeinrichtung hinzugefügt werden, die die Machine- Learning-Methode bereitstellt. Die erste Analyseeinrichtung kann mit zumin- dest einem Steuergerät des Kraftfahrzeugs interagieren, um Betriebsdaten zu loggen, woraus dann zumindest ein Fahrbetriebsmuster für die Prädiktion eines Ruhezeitintervalls ermittelt werden kann. Die zweite Analyseeinrich- tung mit Machine-Learning-Methode kann dann in jedem Steuergerät 11 bereitgestellt werden, in welchem das beschriebene Softwareupdate durch- geführt werden soll.

Insgesamt zeigen die Beispiele, wie durch die Erfindung in einem Kraftfahr- zeug ein schnelles, effizientes und sicheres Update durchgeführt werden kann.