Die Erfindung betrifft eine Vorrichtung und ein Verfahren zum Aktualisieren
von Softwarekomponenten der in ein Fahrzeug eingebauten elektronischen Steuereinheiten
über eine Einrichtung mit einer Peripherie zum Zugreifen auf austauschbare
Datenspeichermedien.
Aus der US 2004/6823247B1
ist ein Neuprogrammieren von elektronischen Steuereinheiten (ECUS) über eigenständige
Multimedia-Unterhaltungssysteme ohne Belegung von Wartungskapazitäten in einer
autorisierten Kundendienststelle bekannt.
Die in dieser Druckschrift vorgeschlagene Lösung zur Aktualisierung
des schnell wachsenden Umfangs von Software in elektronischen Steuereinheiten weist
Nachteile dahingehend auf, dass die Handhabung oder Verwaltung der Aktualisierung
von Softwaremodulen Aufgabe des Multimediageräts ist, so dass dies eine beträchtliche
Softwareunterstützung in der Steuereinrichtung des Multimediageräts erfordert,
um ein diagnostisches Softwaremodul auszuführen. Dies ist jedoch keine der
Aufgaben, für welche ein Multimediagerät ausgelegt ist.
Ferner kann die Einrichtung einer diagnostischen Herunterladebetriebsart
bzw. Downloadsession, die Prüfung des Fahrzeugzustands oder das Initiieren
des Herunterlademodus sich in bereits nur zwei Fahrzeugen desselben Herstellers
unterscheiden. Derartige Unterschiede müssen von dem Multimediagerät gehandhabt
werden.
Darüber hinaus kann es dann, wenn das während der Herstellung
des Fahrzeugs in dieses eingebaute Multimediagerät auch das diagnostische Softwaremodul
enthält, schwierig sein, denselben Typ von Multimediageräten mit unterschiedlichen
diagnostischen Softwaremodulen zu handhaben. Falls das diagnostische Softwaremodul
während der Produktion des Fahrzeugs in das Multimediagerät geladen wird,
erfordert dies zusätzliche Zeit.
Ein weiterer Nachteil der bekannten Anordnung besteht in einem beträchtlichen
Unterschied dahingehend, dass die Kommunikationsnetzwerke, die zur normalen, funktionsbezogenen
Kommunikation (beispielsweise einer Zusammenarbeit zweier elektronischer Steuereinheiten
zur Durchführung einer Antischlupfregelung (ASR), einer Geschwindigkeitsregelung
und so weiter) und zur diagnostischen Kommunikation verwendet werden, in dem Fahrzeug
unabhängige (separate) Netzwerke mit unterschiedlichen physikalischen Schichten,
Kommunikationspaketen und/oder Kommunikationsmeldungen und Protokollen sein können.
Die Informationen zum Prüfen des Fahrzeugzustands, zum Senden von Meldungen
an den Fahrer und so weiter können üblicherweise von dem normalen Zwischenverbindungsnetzwerk
der elektronischen Steuereinheiten erfasst werden, das durch zum Beispiel die weit
reichend bekannte Norm SAE J1939 standardisiert ist. Die zur diagnostischen Kommunikation
verwendeten Netzwerke können jedoch vollkommen anders sein, zum Beispiel standardisiert
durch die Norm SAE J1587, eine K-Leitung, ein LIN (Local Interconnect Network)-Bus
und dergleichen, welche hauptsächlich in der Automobilindustrie verwendet werden
und spezielle Treiber für physikalische Schichten erfordern.
Außerdem ist die Verbindung zu dem Aktualisierungsoperator eine
Einweg-Verbindung mit Ausnahme des Initiierens des Herunterlademodus, gibt es keine
Referenz zum Herunterladen des neuen Konfigurationsmoduls, das mit dem heruntergeladenen
neuen Code kompatibel ist, und kann das Herunterladen einer neuen Software für
eine elektronische Steuereinheit als Nebeneffekt in einem Löschen von notwendigen
fahrzeugspezifischen Informationen, beispielsweise vorangehend erfassten fahrzeugspezifischen
Daten wie etwa den Versatz bzw. die Regelabweichung von elektromechanischen Sensoren
(zum Beispiel Pedalen), resultieren, weil solche Daten in der neuen Konfiguration
einen Anfangswert haben können. Daher können einige spezielle Bedienvorgänge
vor dem Beginn der normalen Benutzung des Fahrzeugs notwendig sein, wie beispielsweise
das Drücken eines Pedals, um einen Installationsoffset eines Winkelsensors
zu erfassen. Solche Wechselbeziehungen, oder Interaktionen, Anforderungen von dem
Fahrer und Antworten des Fahrers werden, falls erforderlich, in der bekannten Anordnung
nicht gehandhabt.
Schließlich gibt es keine Referenz betreffend eine "Selbstaktualisierung",
d.h. das Aktualisieren des diagnostischen Softwaremoduls selbst, in der Einrichtung,
die zum Aufbauen der diagnostischen Herunterladesitzung verwendet wird, gibt es
keine Referenz zum Speichern irgendwelcher von dem Fahrzeug gesammelten Informationen
durch beispielsweise Schreiben dieser Daten auf ein beschreibbares Medium, und ist
eine diagnostische Echtzeitverbindung zu einer zentralen Datenbank oder Kundendienststelle
nicht möglich.
Der Erfindung liegt daher die Aufgabe zugrunde, eine Vorrichtung und
ein Verfahren zum Aktualisieren von Softwarekomponenten der in ein Fahrzeug eingebauten
elektronischen Steuereinheiten zu schaffen, mittels der die vorgenannten Nachteile
und Probleme gelöst werden.
Erfindungsgemäß wird diese Aufgabe durch die Merkmale des
Vorrichtungsanspruchs 1 sowie durch die Merkmale des Verfahrensanspruchs 14 gelöst.
Vorteilhafte Weiterbildungen der Erfindung sind Gegenstand der beigefügten
Unteransprüche.
Somit wird die Aufgabe der Erfindung gelöst durch eine Vorrichtung
zum Neuprogrammieren einer elektronischen Steuereinheit eines Fahrzeugs, gekennzeichnet
durch:
- – zumindest eine funktionsorientierte elektronische Steuereinheit zur
Steuerung von Betriebszuständen und Ausgabe-/Eingabe-Einrichtungen des Fahrzeugs;
- – ein erstes Kommunikationsnetzwerk zur Durchführung einer funktionsorientierten
Kommunikation in dem Fahrzeug, welches die zumindest eine funktionsorientierte elektronische
Steuereinheit verbindet;
- – eine elektronische Aktualisierungs-Steuereinheit zur Durchführung
einer Aktualisierung von Softwarekomponenten der zumindest einen funktionsorientierten
Steuereinheit über ein vorbestimmtes Diagnoseprotokoll;
- – ein zweites Kommunikationsnetzwerk zur Durchführung einer diagnostischen
Kommunikation mit dem Fahrzeug und der elektronischen Aktualisierungs-Steuereinheit,
welches die zumindest eine funktionsorientierte elektronische Steuereinheit und
die elektronische Aktualisierungs-Steuereinheit verbindet;
- – eine Einrichtung, die mit einem Peripheriegerät zum Lesen und/oder
Beschreiben eines austauschbaren Datenspeichermediums verbunden ist; und
- – ein austauschbares Datenspeichermedium, auf dem zur Aktualisierung
der zumindest einen elektronischen Steuereinheit notwendige Softwarekomponenten
enthalten sind;
wobei die Aktualisierungs-Steuereinheit zur Aktualisierung einer Softwarekomponente
einer elektronischen Ziel-Steuereinrichtung der zumindest einen elektronischen Steuereinrichtung
mit der das Peripheriegerät zum Lesen und/oder Beschreiben des austauschbaren
Datenspeichermediums aufweisenden Einrichtung und mit der elektronischen Ziel-Steuereinheit
kommuniziert.
Es wird somit eine Vorrichtung in einem Fahrzeug zum Neuprogrammieren
einer elektronischen Steuereinheit vorgeschlagen mit einer Einrichtung des Fahrzeugs
mit einem Peripheriegerät für ein austauschbares Datenmedium, das zum
Lesen oder Beschreiben von austauschbaren Datenspeichermedien verwendbar ist, einem
Kommunikationsnetzwerk, das für eine diagnostische Kommunikation verwendbar
ist, einem Kommunikationsnetzwerk, das für eine normale, funktionsorientierte
Kommunikation verwendet wird, wobei notwendige Informationen zum Ermitteln eines
sicheren Zustands des Fahrzeugs in dieser auffindbar sind, Nachrichten an eine Einrichtung
mit einer alphanumerischen Anzeige sendbar sind, und Antworten von dem Fahrzeugbediener
empfangbar sind, einem austauschbaren, portablen Datenspeichermedium, auf dem die
herunterladbaren Softwarekomponenten enthalten sind, und einer elektronischer Aktualisierungs-Steuereinheit
des Fahrzeugs, die die Aktualisierung von Softwarekomponenten über ein Diagnoseprotokoll
handhabt, wobei sie mit einer das Peripheriegerät für austauschbare Datenspeicher
aufweisenden elektronischen Einrichtung und mit einer elektronischen Ziel-Steuereinheit
kommuniziert.
Bevorzugt ist eine Instrumentenanordnung mit einer alphanumerischen
Anzeige zur Durchführung einer interaktiven Kommunikation mit einem Fahrzeugbediener
mit der zumindest einen elektronischen Steuereinheit verbunden.
Vorteilhaft ist die elektronische Aktualisierungs-Steuereinheit mit
einer GSM-Schnittstelle verbunden, die eine diagnostische Fernverbindung über
ein GSM-System bereitstellt.
Weiter bevorzugt ist die mit einem Peripheriegerät für austauschbare
Datenspeichermedien verbundene Einrichtung fest in das Fahrzeug eingebaut und eine
der nachstehenden:
- – ein Unterhaltungsgerät, bei dem das Peripheriegerät für
austauschbare Datenspeichermedien zum Abspielen und/oder Aufzeichnen von multimedialen
Daten verwendet wird;
- – ein Bordrechner, der eine Vielzahl von Hilfsfunktionen bereitstellt,
mit einem Peripheriegerät für austauschbare Datenspeichermedien, das in
der Lage ist, die austauschbaren Datenspeichermedien zu lesen und/oder zu beschreiben;
- – eine Datenspeicherperipherie eines GPS-Systems, die zum Zugreifen auf
oder Aktualisieren dessen Datenbank verwendbar ist.
Vorteilhaft ist das austauschbare Datenspeichermedium eine Compact
Disc (CD), eine Digital Versatile Disc (DVD), eine austauschbare Festplatte, ein
Speicherstift, eine ZIP-Diskette, ein Videoband, eine Diskette oder ein mit einem
USB-Anschluß verbindbares USB-Stecklaufwerk.
Auch bevorzugt wird, dass das austauschbare Datenspeichermedium die
herunterladbaren Softwarekomponenten und zumindest eines der folgenden enthält:
- – eine Liste von verfügbaren und aktuellen Softwareversionen;
- – fahrzeugspezifische Informationen;
- – eine Aktualisierungsbefehlsdatei.
Des weiteren bevorzugt wird, dass die die Aktualisierung von Softwarekomponenten
handhabende elektronische Aktualisierungs-Steuereinheit eine der folgenden ist:
- – eine separate elektronische Steuereinheit des Fahrzeugs;
- – ein Bordrechner;
- – eine Multimedia-Einrichtung;
- – eine GSM-Verbindungen bereitstellende Einrichtung;
- – eine elektronische Steuereinheit einer Instrumententafel;
- – eine elektronische Steuereinheit eines CAN-Routers;
- – eine GPS-Navigationseinrichtung.
Die Steuerung des gesamten Aktualisierungsprozesses kann hierbei nicht
nur durch eine separate elektronische Steuereinheit durchgeführt werden, sondern
kann ebenso in beliebige, in dem Netzwerk existierende elektronische Steuereinheiten
integriert werden, um die Produktkosten zu optimieren. Eine derartige Integration
kann insbesondere vorteilhaft sein, weil das zugrunde liegende Prinzip an sich und
die es implementierende Software im Grunde Plattform-unabhängig sind, so dass
eine Integration desselben zusammen mit anderen Funktionen in ein und dieselbe elektronische
Steuereinheit die Netzwerkstruktur des Fahrzeugs vereinfacht und dadurch die Kosten
verringert.
Vorteilhaft ist ferner, dass
- – das für die diagnostische Kommunikation ausgelegte zweite Kommunikationsnetzwerk
in den Wartungsstationen zu Diagnosezwecken verwendbar ist; und
- – ein gemeinsames diagnostisches Protokoll zum Kommunizieren mit allen
elektronischen Steuereinheiten in dem Fahrzeug bereitgestellt ist.
Darüber hinaus bevorzugt wird, dass das für die funktionsorientierte
Kommunikation ausgelegte erste Kommunikationsnetzwerk
- – ein Kommunikationsmedium für die zumindest eine funktionsorientierte
elektronische Steuereinheit zum Erzielen von Fahrzeugfunktionen bereitstellt, die
eine Zusammenarbeit von mehr als einer elektronischen Steuereinheit erfordern;
- – von den an der Zusammenarbeit beteiligten elektronischen Steuereinheiten
in Übereinstimmung mit einem Normalbetrieb des Fahrzeugs Zustandsinformationen
aufnimmt und an diese Befehle ausgibt;
- – notwendige Informationen zum Ermitteln, ob der Zustand des Fahrzeugs
für einen Herunterlademodus von auf dem austauschbaren Datenspeichermedium
enthaltenen Softwarekomponenten sicher ist, bereitstellt; und
- – Antworten von dem Fahrzeugbediener entgegennimmt.
In einer vorteilhaften Ausgestaltung sind das erste und das zweite
Kommunikationsnetzwerk zwei physikalisch unabhängige Netzwerke.
In diesem Fall ist es möglich, dass die physikalisch unabhängigen
Netzwerke drahtlose Netzwerke sind.
In einer alternativen vorteilhaften Ausgestaltung sind das erste und
das zweite Kommunikationsnetzwerk physikalisch ein und dasselbe Netzwerk und werden
daher die die Aktualisierung von Softwarekomponenten einschließende diagnostische
Kommunikation und die funktionsorientierte Kommunikation auf ein und demselben Netzwerk
durchgeführt.
Auch in diesem Fall ist es möglich, dass das physikalisch ein
und dasselbe Netzwerk ein drahtloses Netzwerk ist.
Zur Implementierung der erfindungsgemäßen Vorrichtung wird
ein Aktualisierungsverfahren vorgeschlagen, das von der elektronischen Aktualisierungs-Steuereinheit
ausgeführt wird und die folgenden Schritte umfasst:
- – Prüfen des Zustands des Fahrzeugs dahingehend, ob der Zustand
zum Durchführen eines Herunterladens von Software von dem austauschbaren Datenspeichermedium
sicher ist;
- – Aufbauen des Diagnosemodus;
- – Anfordern von Daten von der Einrichtung mit der Datenspeicherperipherie;
- – Auffordern der elektronischen Ziel-Steuereinheit, sich selbst in den
Herunterlademodus zu versetzen; und
- – Überprüfen, ob der Herunterladevorgang erfolgreich war oder
nicht.
Das Aktualisierungsverfahren selbst ist eine eigenständige, Plattform-unabhängige
und von einem Kunden programmierbare Softwarekomponente, welche entwickelt, von
Fehlern befreit, getestet und von Fahrzeugherstellern in die elektronische Aktualisierungs-Steuereinheit
geladen bzw. heruntergeladen werden kann, und diesen somit ihrem Produkt entsprechend
weitestgehende Freiheit zur Anpassung und Optimierung des Aktualisierungsprozesses
gibt.
Die elektronische Aktualisierungs-Steuereinheit, die mit dem Kommunikationsnetzwerk
des Fahrzeugs verbunden ist und dabei eine diagnostische Verbindung sowie optional
einen größeren nicht flüchtigen Speicher aufweist, kann nicht nur
zu Zwecken der Softwareaktualisierung, sondern auch für andere Funktionen,
wie beispielsweise die Gewinnung von Daten aus dem GPS-Navigationssystem oder das
übergreifende Treiberverhalten und dergleichen nutzbar. Diese gesammelten Daten
können auch auf einen beschreibbaren Multimedia-Speicher gesichert werden,
falls eine Einrichtung mit einer Peripherie für einen austauschbaren Datenspeicher
ein solches Schreiben unterstützt.
Die Erfindung wird nachstehend anhand bevorzugter Ausführungsbeispiele
unter Bezugnahme auf die Zeichnung näher beschrieben. Es zeigen:
1 ein Ausführungsbeispiel eines Fahrzeugnetzwerks,
das zur Aktualisierung der Software einer elektronischen Steuereinheit mit einer
Peripherie zum Zugreifen auf austauschbare Datenspeichermedien ausgelegt ist, wobei
angegeben ist, wie die elektronische Steuereinheit einer elektronischen Aktualisierungssteuereinrichtung
mit dem Fahrzeugnetzwerk verbunden ist; und
2 ein Ablaufdiagramm eines Aktualisierungsprozesses
gemäß einem Ausführungsbeispiel.
Zunächst werden einige Grundlagen der Erfindung beschrieben.
Herunterladbare Softwarekomponenten, wie beispielsweise die Haupt-Betriebssoftware,
der so genannte Bootlader, die Gerätekonfiguration und so weiter, sind auf
einem austauschbaren Datenmedium bzw. Wechseldatenträger enthalten und werden
in die eingebundenen elektronischen Steuereinheiten über dasselbe Download-
bzw. Herunterladeprotokoll heruntergeladen, das auch in den Kundendienststationen
verwendet wird. Darüber hinaus ist es möglich, Daten von den Kommunikationsnetzwerken
des Fahrzeugs zu sammeln und die Datenspeicherperipherie oder die Datenspeicher-Peripherieeinrichtungen
in die Lage zu versetzen, die gewonnenen Daten, wie beispielsweise Fehlerspeicher
der elektronischen Steuereinheiten, gelernte bzw. erfasste Daten, GPS-Streckendaten,
Fahrtenschreiber-Geschwindigkeitsdiagramme und so weiter, auf ein beschreibbares
Medium zu schreiben. Mit einer GSM-Schnittstelle kann sodann eine Ferndiagnosesitzung
ermöglicht werden.
Heutzutage werden mehr und mehr Funktionen in einem Fahrzeug mittels
speziellen, funktionsorientierten, d.h. an Funktionen ausgerichteten, elektronischen
Steuereinheiten (Electronic Control Units, ECUS) durchgeführt. Diese elektronischen
Steuereinheiten enthalten einen geeigneten Microcontroller, welcher eine konfigurierbare
Software ausführt, die die verlangten Steuerfunktionen durchführt. Diese
Art einer Lösung wird zum beispielsweise Steuern der Kraftstoffeinspritzung
in die Brennkraftmaschine verwendet, verbessert die konventionellen Bremsfunktionen
mittels ABS, ASR und dergleichen, oder steuert einen Retarder und so weiter.
Nicht nur sicherheitskritische Einrichtungen können solche Software
enthalten, sondern auch weniger wichtige Einrichtungen wie etwa eine Klimaanlage,
ein GPS-System, eine Scheibenwischanlage und dergleichen.
Diese intelligenten Steuereinheiten sind üblicherweise über
ein Kommunikationsmedium (vorwiegend ein CAN-Bus gemäß der Norm SAE J1939,
jedoch sind auch andere Lösungen bekannt) miteinander verbunden. Dies erlaubt
es, das Leistungsvermögen des Fahrzeugs durch eine Kommunikation zwischen Einrichtungen
(beispielsweise einer ASR oder einer Geschwindigkeitsregelung) zu steigern.
Um die Sicherheit zu erhöhen, sind dort physikalisch unabhängige
Netzwerksegmente vorgesehen, wo die elektronischen Steuereinheiten derselben sicherheitskritischen
Ebene miteinander verbunden sind. Dadurch wird ausgeschlossen, dass zum Beispiel
ein Ausfall einer Einrichtung mit niedriger Wichtigkeit den Netzwerkbus blockieren
kann und dadurch auch die Kommunikation zwischen sicherheitskritischen Einrichtungen
oder Geräten unmöglich macht.
Obwohl derartige eingebettete, in den elektronischen Steuereinheiten
ablaufende Software unter extrem strengen Bedingungen entwickelt und getestet wird,
kann es dennoch vorkommen, dass sie Fehler enthält, welche erst nach dem Zusammenbau
des Fahrzeugs gefunden oder entdeckt werden. Darüber hinaus kann es geschehen,
dass Verbesserungen in die Software eingearbeitet werden, die derzeitiger Hardware
weitere Funktionen verleiht.
Solche Gründe können einen Austausch einer Softwarekomponente
in einem Fahrzeug erforderlich machen.
Dies erfolgt bislang durch Zurückrufen des Fahrzeugs in die Werkstatt,
in der eine spezielle diagnostische Einrichtung bzw. ein spezielles Diagnosegerät
mit der Kommunikationsleitung der elektronischen Steuereinheit verbunden und sodann
das erforderliche Softwaremodul in diese geladen wird.
Dies ist jedoch aufwendig und teuer, da das Fahrzeug, solange es in
der Werkstatt steht, seine täglichen Aufgaben nicht erfüllen kann, welches
in einem Verdienstausfall für den Eigentümer resultiert, und zudem die
Werkstattbenutzung vergütet werden muss.
Die derzeitige Tendenz geht daher dahin, dass mehr und mehr Funktionen,
die früher auf eine andere Art und Weise durchgeführt wurden, durch intelligente
elektronische Steuereinheiten ersetzt werden, so dass es für die vorhandenen
elektronischen Steuereinheiten immer schwieriger wird, ein besseres Leistungsvermögen
zu bieten, ohne die Problematik und/oder die Komplexität mechanischer Komponenten
zu vergrößern.
Dies führt dazu, dass die in den elektronischen Steuereinheiten
eines Fahrzeugs installierte Software zu einer immer wesentlicheren
Komponente des Fahrzeugs wird, deren Wartungsbedarf immer bedeutsamer wird. Der
Gesamtumfang an Software kann bereits in Megabyte beziffert werden, so dass eine
Aktualisierung einer derart großen Codemenge ein schnelles, verlässliches
und kostenoptimiertes Verfahren zum Herunterladen von Code erfordert.
Üblicherweise enthalten zum Beispiel alle heutzutage gebauten
Lastkraftwagen eine Art von Datenspeicherperipherie, welche dazu geeignet ist, auf
ein austauschbares Datenmedium zuzugreifen (beispielsweise Multimediageräte,
Bordrechner bzw. Bordcomputer und dergleichen). Diese Einrichtungen sind für
gewöhnlich mit einer Kommunikationsleitung des Lastkraftwagens verbunden. Falls
dem so ist, wird eine Steuerung der Datenspeicherperipherie über die Kommunikationsleitung,
mit der sie verbunden ist, möglich, um eine Datenübertragung (Anfordern
eines Datenblocks, Suchen eines Sektors und so weiter) durchzuführen.
Die Aktualisierung jeder elektronischen Steuereinheit kann durch Vorsehen,
d.h. Einbauen, einer speziellen "ECU Neuprogrammierungs-Steuerungs-ECU", d.h. einer
elektronischen Steuereinheit, die die Neuprogrammierung einer anderen elektronischen
Steuereinheit steuert und die nachstehend als "elektronische Aktualisierungs-Steuereinheit"
bezeichnet wird, durchgeführt werden.
Die elektronische Aktualisierungs-Steuereinheit steuert die Datenspeicherperipherie
über das Kommunikationsnetzwerk, mit dem sie verbunden ist, kann auf die Daten
auf dem austauschbaren Datenmedium, das in die Datenspeicherperipherie eingelegt
ist, über die Kommunikationsleitung zugreifen, prüft den Fahrzeugzustand,
ermittelt, ob sich das Fahrzeug in einem sicheren Zustand für den (relativ
langen) Software-Herunterladeprozess befindet, baut diagnostische Verbindungen mit
den zu aktualisierenden elektronischen Steuereinheiten auf und lädt die notwendigen
Softwaremodule herunter, initiiert spezielle Vorgänge nach der Aktualisierung,
soweit diese erforderlich sind, kann eine Ferndiagnosesitzung unter Verwendung einer
optionalen GSM-Schnittstelle aufbauen, und kann unter Verwendung ihres eingebauten
diagnostischen Softwaremoduls und grundlegenden Befehlen einfache, ungefährliche
diagnostische Abfragen über beispielsweise den Bremsbelagverschleiß und
dergleichen durchführen.
Nachstehend wird nun die Zeichnung im Einzelnen beschrieben.
1 zeigt vereinfacht ein die elektronische Aktualisierungs-Steuereinheit
beinhaltendes Netzwerk gemäß einem Ausführungsbeispiel.
Die Darstellung zeigt ein einfaches Fahrzeugnetzwerk, das aus nur
einem Segment besteht. In der Praxis sind aufgrund einer erhöhten Kommunikationssicherheit
mehrere Netzwerksegmente in einem Fahrzeug vorhanden. Die sicherheitskritischeren
Einrichtungen sind zu einem separaten Netzwerksegment zusammengeschaltet, und weitere,
weniger wichtige Einrichtungen sind zu anderen Segmenten verschaltet, so dass auf
diese Art und Weise ein Ausfall einer elektronischen Steuereinheit nur deren eigenes
Segment, nicht jedoch den gesamten Bus blockieren kann.
Die Vorrichtung 1 umfasst zunächst elektronische Steuereinheiten
2a bis 2n. Diese "normalen" bzw. regulären Steuereinheiten
2a bis 2n sind durch Ausführen einer internen Software, deren
Softwarekomponenten irgendwann eine Aktualisierung erfordern könnten, für
eine bestimmte Funktion in dem Fahrzeug verantwortlich. Die elektronischen Steuereinheiten
2a bis 2n sind mittels einer Verbindung 4 bzw. Verbindungen
4a bis 4n mit einem Kommunikationsnetzwerk 6 verbunden,
welches zur normalen, funktionsbezogenen Kommunikation zwischen den elektronischen
Steuereinheiten 2a bis 2n verwendet wird. Ferner sind die elektronischen
Steuereinheiten 2a bis 2n mittels einer Verbindung 3
bzw. Verbindungen 3a bis 3n mit einem Kommunikationsnetzwerk
5 verbunden, welches zur diagnostischen Kommunikation zwischen den elektronischen
Steuereinheiten 2a bis 2n verwendet wird. Eine elektronische Aktualisierungs-Steuereinheit
9 ist mittels einer Verbindung 7 mit dem Kommunikationsnetzwerk
6 und mittels einer Verbindung 8 mit dem Kommunikationsnetzwerk
5 verbunden. Ferner ist die elektronische Aktualisierungs-Steuereinheit
9 mittels einer Verbindung 10 mit einer Einrichtung
11 mit einer Datenspeicherperipherie verbunden, um Befehle zu senden oder
Daten von einem austauschbaren, portablen Datenspeichermedium bzw. Wechseldatenträger
13 abzufragen, welches bzw. welcher mittels einer Verbindung
12 mit der Einrichtung 11 verbunden ist. Diese logische Verbindung
10 kann für den diagnostischen Bus, d.h. das Kommunikationsnetzwerk
5, oder für das normale, funktionsorientierte Kommunikationsnetzwerk
6 den Wert "Wahr" annehmen, oder kann ebenso eine beliebige andere Punkt-zu-Punkt-Verbindung
wie beispielsweise RS232, I2C, USB und dergleichen sein. Optional ist die elektronische
Aktualisierungs-Steuereinheit 9 mittels einer Verbindung 14 mit
einer GSM-Schnittstelle 15 verbunden, um eine Möglichkeit für
Ferndiagnosesitzungen zu eröffnen.
Das Kommunikationsnetzwerk 5 wird für eine diagnostische
Kommunikation in Übereinstimmung mit dem Diagnoseprotokoll KWP2000 (dem auf
dem internationalen Standard ISO 14230-4 basierenden KeyWord Protocol 2000) verwendet.
Dieses Netzwerk kann ein CAN-Netzwerk gemäß der Norm SAE J1939, ein Netzwerk
gemäß der Norm SAE J1587, eine K-Leitung oder eine LIN
(Local Interconnect Network)-Busverbindung sein.
Das Kommunikationsnetzwerk 6 wird für einen funktionsbezogenen
Datenaustausch verwendet, der für den normalen Betrieb des Fahrzeugs notwendig
ist.
Dieses Kommunikationsnetzwerk bzw. dieser Bus 6 wird von
der elektronischen Aktualisierungs-ECU 9 zum Erhalten von Antworten von
dem Fahrzeugbediener durch eine Aktivität 16, welche beispielsweise
aus dem Drücken eines Schalters oder eines Pedals und dergleichen bestehen
kann, und zum Senden von Befehlen und/oder Fragen an den Fahrzeugbediener (Fahrer)
mittels Senden von Befehlen an eine elektronische Steuereinheit 2a bis
2n mit einer alphanumerischen Anzeige 17 zum Anzeigen einer Meldung
oder mittels Abspielen eines Klangs, falls verfügbar, und dergleichen verwendet.
Die Einrichtung 11 mit der austauschbaren Datenspeicherperipherie
ist in dem hier beschriebenen Ausführungsbeispiel ein Multimedia-Unterhaltungsgerät
(vorwiegend ein CD- oder DVD-Laufwerk), das ebenfalls bereits Teil des Fahrzeugs
ist, jedoch die elektronische Aktualisierungs-Steuereinheit 9 nicht aufweist,
und hat ebenso weitere normale Funktionen, wie beispielsweise das Abspielen von
Audio-CD's, DVD's, oder das Aktualisieren der Datenbank eines (nicht dargestellten)
GPS-Systems.
Der austauschbare Datenspeicher 13 ist ein austauschbares
Datenmedium hoher Kapazität, beispielsweise eine CD oder eine DVD, das die
herunterladbare Software enthält und das in die Einrichtung 11 einlegbar
ist.
Dieses Datenmedium enthält die herunterladbaren Softwaremodule,
beispielsweise einen von einer Steuereinheit bzw. einem Controller ausführbaren
Code oder eine Konfiguration einer elektronischen Steuereinheit, für alle elektronischen
Steuereinheiten 2a bis 2n, die in dem betreffenden Fahrzeug vorhanden
sind, eine Liste von Versionsidentifikatoren, die auf dem Aktualisierungs-Datenmedium,
d.h. dem austauschbaren Datenspeichermedium 13, enthalten sind, und eine
Befehlsdatei für die elektronische Aktualisierungs-Steuereinheit
9, welche beschreibt, was in Übereinstimmung mit einem (noch zu beschreibenden)
Aktualisierungsverfahren zu aktualisieren ist. Natürlich kann das austauschbare
Datenspeichermedium 13 auch ein neues Aktualisierungsverfahren, etwa einen
neuen Aktualisierungsalgorithmus, oder eine neue Software der das Aktualisierungsverfahren
ausführenden elektronischen Aktualisierungs-Steuereinheit 9 enthalten.
Die GSM-Schnittstelle 15 ist eine an sich bekannte GSM-Schnittstelle
zum Aufbauen von Ferndiagnoseverbindungen zu den elektronischen Steuereinheiten
2a bis 2n.
2 zeigt ein Ablaufdiagramm eines Aktualisierungsprozesses
gemäß einem Ausführungsbeispiel.
Über den gesamten, beispielhaften Aktualisierungsalgorithmus
hinweg bedeutet das Präfix "MELDUNG:" einen an die elektronische Steuereinheit
mit der alphanumerischen Anzeige gesendeten Befehl zum Anzeigen einer Meldung. Auf
vergleichbare Art und Weise bedeutet das Präfix "HOLE:" eine Aktivität
zum Erhalten einer Antwort von dem Fahrzeugbediener (dem Fahrer).
Die Software der elektronischen Aktualisierungs-Steuereinheit
9 besteht aus zwei Teilen.
Der erste Teil ist eine grundlegende Plattformsoftware einschließlich
allgemeiner Funktionen sowie jeder Art von Softwaremodulen, die von Kunden, Fahrzeugtyp,
Typ der elektronischen Multimedia-Steuereinheit, Fahrzeug-Netzwerktopologie und
dergleichen unabhängig sind. Dieser erste Teil wird hierin nicht näher
beschrieben.
Der zweite Teil besteht aus letztendlich programmierbaren Softwarekomponenten
wie etwa Konfigurationsparametern der elektronischen Aktualisierungs-Steuereinheit
9, beispielsweise aktiven Netzwerkverbindungen, oder externen Softwarekomponenten,
d.h. dem Aktualisierungsverfahren bzw. Aktualisierungsalgorithmus, und optional
aktualisierbaren Softwarekomponenten, wie zum Beispiel Treibern für die Datenspeicherperipherie,
kundenabhängigen Implementierungen des Diagnoseprotokolls, Treibern für
die alphanumerische Anzeige und dergleichen.
Das von dem Hersteller des Fahrzeugs programmierbare Aktualisierungsverfahren
200 ist verantwortlich für das Ermitteln, ob sich das Fahrzeug in
einem zum Durchführen der Aktualisierung von Softwarekomponenten, die in der
Befehlsdatei auf dem austauschbaren Datenspeichermedium 13 aufgelistet
sind, sicheren Zustand befindet, das korrekte Interpretieren der Befehlsdatei des
austauschbaren Datenspeichermediums 13, das Aufbauen der diagnostischen
Verbindung mit einer elektronischen Ziel-Steuereinheit 2x (wobei x = a,
..., n gemäß 1), das Herunterladen der Daten
in die elektronische Ziel-Steuereinheit 2x, das Beenden der Herunterladesitzung
bzw. Herunterladebetriebsart und Veranlassen der elektronischen Ziel-Steuereinheit
2x, zum normalen Betrieb zurückzukehren, das überprüfen,
ob die neue Softwarekomponente in der elektronischen Ziel-Steuereinheit
2x identisch zu den Daten auf dem austauschbaren Datenspeichermedium
13 ist, das Senden von Befehlen und/oder Fragen an die Aktualisierungs-Bedienperson,
und das Empfangen von Bedienerantworten von dem Aktualisierungsbediener.
Das in 2 gezeigte Aktualisierungsverfahren
200 stellt lediglich ein Beispiel eines grundlegend geeigneten Aktualisierungsalgorithmus
dar, der die Schlüsselfähigkeiten der elektronischen Aktualisierungs-Steuereinheit
9 nutzt. Da der Aktualisierungsalgorithmus selbst üblicherweise Fahrzeugtypspezifische
Elemente enthält, braucht nicht erwähnt zu werden, dass dieser beispielhafte
Aktualisierungsalgorithmus lediglich eine Beschreibung zur Darstellung ist, wie
eine Implementation der elektronischen Aktualisierungs-Steuereinheit 9
arbeitet.
Ein erster Block des Aktualisierungsalgorithmus beginnt mit einem
Schritt 201, in dem die elektronische Aktualisierungs-Steuereinheit
9 erkennt, ob ein austauschbares Datenspeichermedium 13 mit der
die austauschbare Datenspeicherperipherie aufweisenden Einrichtung 11 verbunden
ist. Dies kann etwa durch eine Zustandsänderungs-Anzeigemeldung der Einrichtung
11 an die elektronische Aktualisierungs-Steuereinheit 9 oder durch
periodisches Abfragen der elektronischen Aktualisierungs-Steuereinheit
9 dahingehend, ob sich der Medienverfügbarkeitszustand geändert
hat, erfolgen. Dieses Abfragen kann in Abhängigkeit von einem bestimmten Zustand
des Fahrzeugs unbedingt oder bedingt ablaufen.
Falls ein neues austauschbares Datenspeichermedium 13 mit
der Einrichtung 11 verbunden ist, muss entschieden werden, ob das eingelegte
Datenspeichermedium 13 ein geeignetes austauschbares Datenspeichermedium
13 ist, das widerspruchsfreie Daten zum Aktualisieren von Softwarekomponenten
in dem Fahrzeug enthält, oder nicht. Dies erfolgt mittels der elektronischen
Aktualisierungs-Steuereinheit 9 durch Prüfen des Inhalts des austauschbaren
Datenspeichermediums 13.
Ein zweiter Block des Aktualisierungsalgorithmus besteht aus Schritten
202 bis 205. Dieser zweite Block prüft, ob sich das Fahrzeug
in einem sicheren Zustand zum Durchführen einer Aktualisierung einer Softwarekomponente
befindet. Dies erfolgt durch Sammeln eines Satzes von Fahrzeug-Zustandsparametern
aus dem Kommunikationsnetzwerk 6, beispielsweise durch Prüfen, ob
der Motor angehalten ist (Schritt 202), und/oder Prüfen, ob die Parkbremse
betätigt ist (Schritt 204), und/oder Prüfen, ob sich der Getriebeschalthebel
in der Neutral- bzw. Leerlaufstellung befindet (nicht gezeigt), und dergleichen.
Lautet das Ergebnis in Schritt 202 "Nein", verzweigt der
Ablauf zu Schritt 203, in dem an den Fahrer eine Meldung ausgegeben wird,
den Motor anzuhalten, und erfolgt sodann eine erneute Prüfung daraufhin in
Schritt 202. Lautet das Ergebnis in Schritt 203 "Ja", schreitet
der Ablauf zu Schritt 204 fort.
Lautet das Ergebnis in Schritt 204 "Nein", verzweigt der
Ablauf zu Schritt 205, in dem an den Fahrer eine Meldung ausgegeben wird,
die Parkbremse zu aktivieren, und erfolgt sodann eine erneute Prüfung daraufhin
in Schritt 204. Lautet das Ergebnis in Schritt 204 "Ja", schreitet
der Ablauf zu Schritt 206 fort.
Ein dritter Block des Aktualisierungsalgorithmus besteht aus Schritten
206 bis 208. Dieser Block liest die Aktualisierungsbefehlsdatei
in Schritt 206 und prüft in Schritt 207, ob diese korrekt
und ausführbar ist. Im Einzelnen wird geprüft, ob die Datei unbrauchbar
oder beschädigt ist oder nicht, ob die zu aktualisierenden Softwarekomponenten
verfügbar sind, und ob die in den Software-Aktualisierungsprozess involvierten
elektronischen Ziel-Steuereinheiten in dem Fahrzeug verfügbar sind und für
den Herunterladevorgang korrekt arbeiten.
Lautet das Ergebnis der Prüfung in Schritt 207 "Nein",
wird in Schritt 208 eine Meldung an den Fahrer dahingehend ausgegeben,
dass die Befehlsdatei nicht lesbar ist, und schreitet der Ablauf zu einem Schritt
214 fort, in dem das Aktualisierungsverfahren 200 beendet wird.
Lautet das Ergebnis der Prüfung in Schritt 207 "Ja", schreitet der
Ablauf zu einem Schritt 209 fort.
Die nächsten drei Blöcke des Aktualisierungsalgorithmus,
die wiederholt ausgeführt werden können und aus Schritten 209
bis 213 bestehen, führen die Aktualisierung einer Softwarekomponente
in einer elektronischen Ziel-Steuereinheit 2x (einer der elektronischen
Steuereinheiten 2a bis 2n) durch.
Ein vierter Block mit den Schritten 209 bis 210
besteht aus einer automatischen Prüfung der Versionen der gegenwärtigen
Softwarekomponente in der elektronischen Ziel-Steuereinheit 2x und der
entsprechenden neuen, auf dem austauschbaren Datenspeichermedium 13 verfügbaren
Softwarekomponente. Mit den beiden bekannten Versionsidentifikatoren entscheidet
die elektronische Aktualisierungs-Steuereinheit 9, ob diese Softwarekomponente
zu aktualisieren ist oder nicht. Im Einzelnen wird in Schritt 209 das jeweils
nächste Listenelement in der Aktualisierungsbefehlsdatei auf dem austauschbaren
Datenspeichermedium 13 aufgegriffen, und wird in Schritt 210 geprüft,
ob die diesem Listenelement entsprechende Softwarekomponente in der elektronischen
Ziel-Steuereinheit 2x zu aktualisieren ist oder nicht. Lautet das Ergebnis
der Prüfung "Nein", kehrt der Ablauf zu Schritt 209 zurück, um
das nächste Listenelement aufzugreifen. Lautet das Ergebnis der Prüfung
"Ja", schreitet der Ablauf zu einem Schritt 211 fort.
Ein fünfter Block, der aus den Schritten 211 bis
212 besteht, erzeugt in Schritt 211 eine Abfrage an den Fahrzeugbediener,
ob das Fahrzeug für die Durchführung einer in etwa die angezeigte, geschätzte
Zeit dauernden Aktualisierung einer Softwarekomponente bereit ist, und fordert in
Schritt 212 eine entsprechende Antwort von dem Fahrer an.
Falls die Antwort in Schritt 212 "Ja" lautet, wird ein sechster
Block ausgeführt. Falls die Antwort "Nein" lautet, wird der gegenwärtige
Eintrag in der Aktualisierungsbefehlsdatei übersprungen, kehrt der Ablauf zu
Schritt 209 zurück, und wird beginnend mit dem vierten Block erneut
der vorstehend beschriebene Ablauf mit dem jeweils nächsten Element der Aktualisierungsbefehlsdatei
ausgeführt.
Der sechste Block, bestehend aus dem Schritt 213, ist die
Schlüsselaktivität der elektronische Aktualisierungs-Steuereinheit
9. In Schritt 213 wird die diagnostische Herunterladesitzung mit
der elektronischen Ziel-Steuereinheit 2x aufgebaut, und wird die neue Softwarekomponente
heruntergeladen und überprüft.
Schließlich wird in einem Schritt 214 das Aktualisierungsverfahren
200 beendet und die elektronische Ziel-Steuereinheit 2x in den
normalen Betrieb zurückgeschaltet.
In Übereinstimmung mit der vorangehenden Beschreibung eines bevorzugten
Ausführungsbeispiels stellt die Erfindung die nachstehenden Lösungen und
Abhilfen der Nachteile bekannter Anordnungen bereit.
Die Handhabung und Verwaltung des gesamten Softwarekomponenten-Aktualisierungsprozesses
sowie sämtlicher nachfolgender Funktionen (Prüfen des Fahrzeugzustands,
Schnittstelle zu dem Fahrzeugbediener und dergleichen) erfolgt durch eine separate
elektronische Steuereinheit auf bzw. in dem Fahrzeug, so dass daher alle Probleme
des Verschmelzens von Multimedia und von mit der Fahrzeugdiagnose verbundenen Softwarefunktionen
sowie von Hardwarekomponenten in einer Einheit beseitigt sind.
Durch Nutzen des Vorteils einer separaten elektronischen Aktualisierungs-Steuereinheit
ist es einfach, alle bekannten Schaltkreise für physikalische Schichten und
deren Treibersoftware, die in der Fahrzeugindustrie verbreitet sind, wie beispielsweise
CAN J1939, CAN ISO11992, SAE J1587, K-Leitung, LIN-Bus und dergleichen, in eine
elektronische Steuereinheit zu integrieren.
Die Verbindung zu dem Fahrer ist eine interaktive Verbindung, so dass
daher der Fahrzeugbediener den Betriebsablauf der elektronischen Aktualisierungs-Steuereinheit
beeinflussen kann, auf an ihn gesendete Fragen antworten kann, zufällige Unterbrechungen
des Herunterladens handhaben kann, und so weiter.
Es wird nicht nur die von einer elektronischen Steuereinheit ausgeführte
Hauptbetriebssoftware bedient, sondern es können auch alle nachfolgenden, für
deren Betrieb notwendigen Softwaremodule, wie beispielsweise die Konfiguration der
elektronischen Steuereinheit, Software einer eingebauten, überwachenden Steuereinrichtung,
der an den normalen Funktionen nicht Anteil nimmt, erfasste Daten und dergleichen,
heruntergeladen werden.
Nachfolgende Betriebsabläufe nach dem Herunterladen einer neuen
Konfiguration einer elektronischen Steuereinheit können ebenfalls durchgeführt
werden, und der Fahrer kann darauf ansprechen, ob der angeforderte Betriebsablauf
erfolgt ist.
Die Softwarekomponenten der elektronischen Aktualisierungs-Steuereinheit
selbst können ebenfalls erweitert und verbessert werden.
Da die elektronische Aktualisierungs-Steuereinheit mit der normalen
Kommunikationsleitung des Fahrzeugs (vgl. das Element B in 1)
verbunden ist, kann sie zum Sammeln bestimmter Daten in Übereinstimmung mit
wahlfrei spezifizierten Gesichtspunkten genutzt werden. Diese Daten können
nach Erreichen eines bestimmten Umfangs sodann mittels einem beschreibbaren Datenmedium
gespeichert oder über die optional angebundene GSM-Schnittstelle an einen zentralen
Datenbank-Server gesendet werden.
Die optional angebundene GSM-Schnittstelle ermöglicht diagnostische
Verbindungen oder Datenübertragungen.
Schließlich erfolgt die Prüfung des für die Herunterladesitzung
sicheren Fahrzeugzustands unter Einbeziehung des Zustands der Betriebsbremsen und
der Parkbremse auf detailliertere Art und Weise.
Die vorstehend beschriebene Anordnung zum Aktualisieren von Softwarekomponenten
in einem Fahrzeug weist unabhängige Kommunikationsnetzwerke bzw. Kommunikationsbusse
für die Diagnose und für andere Zwecke auf. Strukturelle Implementationen,
die zu der detaillierten Beschreibung hierin ähnlich sind, sind nicht als Abweichen
von dem Gegenstand der Erfindung zu werten.
- 1
- Vorrichtung
- 2a bis 2n
- Ziel-ECU
- 3a bis 3n
- Verbindung
- 4a bis 4n
- Verbindung
- 5
- Kommunikationsnetzwerk
- 6
- Kommunikationsnetzwerk
- 7
- Verbindung
- 8
- Verbindung
- 9
- Aktualisierungs-ECU
- 10
- Verbindung
- 11
- Einrichtung
- 12
- Verbindung
- 13
- austauschbares Datenspeichermedium
- 14
- Verbindung
- 15
- GSM-Schnittstelle
- 16
- Aktivitätselement
- 17
- Alphanumerische Anzeige
- 18
- Verbindung
- 19
- Verbindung