-
TECHNISCHES GEBIET
-
Diese Offenbarung betrifft allgemein eine Modulschnittstelle zum Erleichtern von Softwareaktualisierungen an Modulen eines empfangenden Fahrzeugs.
-
STAND DER TECHNIK
-
Zum Aktualisieren der Softwareversion einer Komponente eines Fahrzeugs kann man das Fahrzeug zu einem Autohaus fahren und von einem Techniker warten lassen. Der Techniker kann ein System verwenden, das die einzelnen Softwareniveaus jeder Komponente des Fahrzeugs sowie verfügbare Softwareaktualisierungen mitverfolgt. Der Techniker kann manuell die Softwareanwendungen, die von dem System angegeben werden, anwenden und irgendwelche Änderungen in das System zurück aufzeichnen.
-
KURZDARSTELLUNG
-
Bei einer ersten veranschaulichenden Ausführungsform weist das System einen Prozessor eines Fahrzeugs auf, der konfiguriert ist, um mit einem Aktualisierungsserver, der Softwareaktualisierungen hostet, zu kommunizieren, und ein Softwareaktualisierungsverwaltungsmodul, das mit dem Prozessor und Fahrzeugmodulen über einen Fahrzeugbus verbunden und dazu ausgebildet ist, um einen Softwareaktualisierungsmodus für eines der Fahrzeugmodule, die von der Softwareaktualisierung identifiziert wurden, aufzurufen und die Softwareaktualisierung auf eines der Fahrzeugmodule anzuwenden.
-
Bei einer zweiten veranschaulichenden Ausführungsform weist ein System ein Rechensystem eines Fahrzeugs auf, das konfiguriert ist, um Zustimmung von einem Benutzer zum Installieren einer Softwareaktualisierung anzufordern, wenn die Zustimmung empfangen wird, die Softwareaktualisierungen unter Verwendung eines Softwareaktualisierungsverwaltungsmoduls, das konfiguriert ist, um den Softwareaktualisierungsmodus für ein Fahrzeugmodul, das von der Softwareaktualisierung identifiziert wurde, aufzurufen, zu installieren und die Softwareaktualisierung auf das Fahrzeugmodul anzuwenden, und, wenn die Zustimmung nicht empfangen wird, eine Angabe anzuzeigen, dass Softwareaktualisierungen verfügbar sind.
-
Bei einer dritten veranschaulichenden Ausführungsform weist ein von einem Computer umgesetztes Verfahren das Installieren einer Softwareaktualisierung durch ein Rechensystem des Fahrzeugs durch Aufrufen eines Softwareaktualisierungsmodus für ein Fahrzeugmodul, das von der Softwareaktualisierung identifiziert wurde, und Anwenden der Softwareaktualisierung auf das Fahrzeugmodul auf, falls die Zustimmung des Benutzers empfangen wurde, und anderenfalls, das Anzeigen einer Angabe, dass Softwareaktualisierungen verfügbar sind.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 veranschaulicht eine beispielhafte Blocktopologie für ein fahrzeugseitiges Rechensystem für ein Fahrzeug,
-
2 veranschaulicht ein beispielhaftes Fahrzeugsystem, das ein Softwareaktualisierungsverwaltungsmodul in Kommunikation mit einem entfernten Softwareserver aufweist,
-
3 veranschaulicht einen beispielhaften Abschnitt des Fahrzeugs, der eine Bekanntgabe bevorstehender Softwareaktualisierungen aufweist,
-
4 veranschaulicht eine beispielhafte Benutzeroberfläche der Softwareaktualisierungsanwendung, die angibt, dass Aktualisierungen für das Fahrzeug verfügbar sind,
-
5 veranschaulicht eine beispielhafte Benutzeroberfläche der Softwareaktualisierungsanwendung, die die Bestätigung, dass die Aktualisierung ausgeführt werden soll, anfragt,
-
6 veranschaulicht eine beispielhafte Benutzeroberfläche der Softwareaktualisierungsanwendung, die optionale Softwareaktualisierungen, die verfügbar sind, angibt, und
-
7 veranschaulicht eine beispielhafte Benutzeroberfläche der Softwareaktualisierungsanwendung, die den Abschluss der Installation der Softwareaktualisierungen angibt, und
-
8 veranschaulicht einen beispielhaften Prozess des Verwendens eines Softwareaktualisierungsverwaltungsmoduls zum Anwenden von Softwareaktualisierungen auf die Fahrzeugmodule des Fahrzeugs.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Wie erforderlich werden hier ausführliche Ausführungsformen der vorliegenden Erfindung offenbart, wobei jedoch zu verstehen ist, dass die offenbarten Ausführungsformen für die Erfindung, die in unterschiedlichen und alternativen Formen verkörpert werden kann, nur beispielhaft sind. Die Figuren sind nicht zwingend maßstabgerecht, einige Merkmale können übertrieben oder minimiert sein, um Details besonderer Bauteile zu zeigen. Spezifische strukturmäßige und funktionale Details, die hier offenbart sind, dürfen daher nicht als einschränkend ausgelegt werden, sondern nur als eine darstellende Grundlage für das Belehren eines Fachmanns, die vorliegende Erfindung auf unterschiedliche Art zu verwenden.
-
Ein Fahrzeug kann ein Softwareaktualisierungsverwaltungsmodul enthalten, um Softwareaktualisierungen für das Fahrzeug zu erleichtern. Das Softwareaktualisierungsverwaltungsmodul kann konfiguriert sein, um mit einem Aktualisierungsserver über ein Fahrzeugrechensystem zu kommunizieren. Durch Verwendung des Aktualisierungsservers kann das Softwareaktualisierungsverwaltungsmodul konfiguriert sein, um Softwareaktualisierungen zu empfangen, die auf unterschiedliche Module des Fahrzeugs anzuwenden sind. Das Softwareaktualisierungsverwaltungsmodul kann ferner konfiguriert sein, um auf ein fahrzeugseitiges Netzwerk zuzugreifen, um die Softwareaktualisierungen zu den Fahrzeugmodulen, die zu aktualisieren sind, bereitzustellen. Bei einem Beispiel kann das fahrzeugseitige Netzwerk ein Fahrzeug Controller Area Network (CAN) sein. Das Softwareaktualisierungsverwaltungsmodul kann ferner konfiguriert sein, um unterschiedliche Funktionen zu unterstützen, die für die Aktualisierung von Software der Fahrzeugmodule nützlich sind. Das Softwareaktualisierungsverwaltungsmodul kann zum Beispiel konfiguriert sein, um Diagnosefunktionen durch Lesen von Diagnosecodes über das Fahrzeugnetzwerk auszuführen.
-
Das Fahrzeug kann ferner konfiguriert sein, um eine Mensch-Maschinen-Schnittstelle (HMI) bereitzustellen, durch welche ein Benutzer Softwareaktualisierung, die auf die Fahrzeugmodule unter Verwendung des Softwareaktualisierungsverwaltungsmoduls anzuwenden ist, auswählen kann. Zusätzlich zu Softwareaktualisierungen, die konzipiert sind, um Qualitätsverbesserung bereitzustellen, kann das Softwareaktualisierungsverwaltungsmodul ferner verwendet werden, um optionale Anwendungen zum Downloaden anzubieten. Als ein Beispiel kann das System einem Eigentümer eines Sportwagens ein Anwendungsdownloaden einer Leistungsversion der Fahrzeugmaschineneinstellungen oder Gangschaltpunkte anbieten. Als ein anderes Beispiel kann das System einem Eigentümer eines LKWs ein Schleppverbesserungspackage anbieten, das zusätzliche Features enthält, die es einem Benutzer erlauben, einen Fahrzeuganhänger besser zu verwalten. Bei der Auswahl durch den Benutzer können die Softwareaktualisierungen und neuen Anwendungen an Fahrzeugmodulen durch das Softwareaktualisierungsverwaltungsmodul installiert werden.
-
1 veranschaulicht eine beispielhafte Blocktopologie für ein fahrzeugseitiges Rechensystem 1 (VCS) für ein Fahrzeug 31. Ein Beispiel für ein solches fahrzeugseitiges Rechensystem 1 ist das SYNC-System, hergestellt von THE FORD MOTOR COMPANY. Ein Fahrzeug, das mit einem fahrzeugseitigen Rechensystem ausgestattet ist, kann eine visuelle Frontendoberfläche 4 enthalten, die sich in dem Fahrzeug 31 befindet. Der Benutzer kann auch fähig sein, mit der Benutzeroberfläche zu interagieren, falls sie zum Beispiel mit einem Touchscreen versehen ist. Bei einer anderen veranschaulichenden Ausführungsform erfolgt die Interaktion durch Knopfdrücke, ein Sprachdialogsystem mit automatischer Spracherkennung und Sprachsynthese.
-
Bei der veranschaulichenden Ausführungsform 1, die in 1 gezeigt ist, steuert ein Prozessor 3 oder eine Zentraleinheit (CPU) 3 mindestens einen Abschnitt des Betriebs des fahrzeugseitigen Rechensystems. In dem Fahrzeug 31 vorgesehen, erlaubt es der Prozessor 3, Befehle und Programme fahrzeugseitig auszuführen. Ferner ist der Prozessor 3 sowohl mit nicht persistentem Speicher 5 als auch mit persistentem Speicher 7 verbunden. Bei dieser veranschaulichenden Ausführungsform ist der nicht persistente Speicher 5 ein Schreib-/Lesespeicher (RAM), und der persistente Speicher 7 ist eine Festplatte (HDD) oder ein Flashspeicher. Im Allgemeinen kann persistenter (nicht flüchtiger) Speicher 7 alle Formen von Speicher aufweisen, die Daten wahren, wenn ein Computer oder eine andere Vorrichtung ausgeschaltet wird. Dazu gehören, ohne darauf beschränkt zu sein, HDDs, CompactDisks (CDs), Digital Versatile Disks (DVDs), Magnetbänder, Solid-State-Laufwerke, tragbare Universal Serial Bus(USB)-Laufwerke und jede andere geeignete Form persistenten Speichers 7.
-
Der Prozessor 3 ist auch mit einer Anzahl unterschiedlicher Eingänge verbunden, die es dem Benutzer erlauben, mit dem Prozessor 3 zu koppeln. Bei dieser beispielhaften Ausführungsform sind ein Mikrofon 29, ein Hilfseingang 25 (zur Eingabe 33), ein USB-Eingang 23, ein Global Positioning System(GPS)-Eingang 24, ein Bildschirm 4, der ein Touchscreen-Display sein kann, und ein BLUETOOTH-Eingang 15 bereitgestellt. Ein Eingabeauswahlschalter 51 ist ebenfalls vorgesehen, um es einem Benutzer zu erlauben, zwischen den unterschiedlichen Eingaben zu wechseln. Eingaben zu dem Mikrofon und dem Hilfssteckverbinder werden von analog zu digital von einem Wandler 27 umgewandelt, bevor sie zu dem Prozessor 3 weitergegeben werden. Obwohl das nicht gezeigt ist, können zahlreiche der Fahrzeugbauteile und Hilfsbauteile in Verbindung mit dem VCS 1 ein Fahrzeugnetzwerk (wie zum Beispiel, ohne darauf beschränkt zu sein, ein Controller Area Network(CAN)-Bus) verwenden, um Daten von und zu dem VCS 1 (oder Bauteilen davon) zu übermitteln.
-
Ausgänge zu dem VCS-System 1 können, ohne darauf beschränkt zu sein, ein visuelles Display 4 und einen Lautsprecher 13 oder ein Stereoausgabesystem aufweisen. Der Lautsprecher 13 ist mit einem Verstärker 11 verbunden und empfängt sein Signal von dem Prozessor 3 über einen Digital-Analog-Wandler 9. Der Ausgang kann auch zu einem entfernten BLUETOOTH-Gerät, wie zum Beispiel ein persönliches Navigationsgerät (PND) 54 oder einen USB-Gerät, wie zum Beispiel das Fahrzeugnavigationsgerät 60, gemeinsam mit den bidirektionalen Datenströmen, die jeweils in 19 und 21 gezeigt sind, erfolgen.
-
Bei einer veranschaulichenden Ausführungsform verwendet das System 1 den BLUETOOTH-Sender/Empfänger 15, um mit einer nomadischen Vorrichtung (ND) 53 (zum Beispiel Mobiltelefon, Smartphone, PDA oder irgendeiner anderen Vorrichtung, die über drahtlose Fernnetzwerkanbindung verfügt) zu kommunizieren 17. Die nomadische Vorrichtung 53 kann dann verwendet werden, um mit einem Netzwerk 61 außerhalb des Fahrzeugs 31, zum Beispiel über Kommunikation 55 mit einem Zellularmast 57, zu kommunizieren 59. Bei einigen Ausführungsformen kann der Zellularmast 57 ein WiFi-Zugangspunkt sein.
-
Beispielhafte Kommunikation zwischen der nomadischen Vorrichtung 53 und dem BLUETOOTH-Sender/Empfänger ist durch Kommunikation 14 dargestellt.
-
Das Koppeln einer nomadischen Vorrichtung 53 und des BLUETOOTH-Sender/Empfängers 15 kann durch einen Knopf 52 oder eine ähnliche Eingabe angewiesen werden. Die CPU wird folglich angewiesen, dass der fahrzeugseitige BLUETOOTH-Sender/Empfänger 15 mit einem BLUETOOTH-Sender/Empfänger in einer nomadischen Vorrichtung 53 gekoppelt wird.
-
Daten können zwischen der CPU 3 und dem Netzwerk 61 zum Beispiel unter Verwendung eines Datenplans, von Data-over-Voice oder von Dual-Tone Multi-Frequency-(DTMF)-Tönen, die mit dem nomadischen Gerät 53 assoziiert sind, übermittelt werden. Als Alternative kann es wünschenswert sein, ein fahrzeugseitiges Modem 63 vorzusehen, das eine Antenne 18 aufweist, um Daten zwischen der CPU 3 und dem Netzwerk 61 über das Sprachband zu übermitteln 16. Die nomadische Vorrichtung 53 kann dann verwendet werden, um mit einem Netzwerk 61 außerhalb des Fahrzeugs 31, zum Beispiel über Kommunikation 55 mit einem Zellularmast 57, zu kommunizieren 59. Bei einigen Ausführungsformen kann das Modem 63 Kommunikation 20 mit dem Mast 57 zur Kommunikation mit dem Netzwerk 61 herstellen. Als ein nicht einschränkendes Beispiel kann das Modem 63 ein USB-Zellularmodem 63 sein und die Kommunikation 20 kann Zellularkommunikation sein.
-
Bei einer beispielhaften Ausführungsform ist der Prozessor 3 mit einem Betriebssystem ausgestattet, das eine API zur Kommunikation mit Modem-Anwendungssoftware aufweist. Die Modem-Anwendungssoftware kann auf ein eingebettetes Modul oder auf Firmware auf dem BLUETOOTH-Sender/Empfänger zugreifen, um drahtlose Kommunikation mit einem entfernten BLUETOOTH-Sender/Empfänger (wie etwa dem in einer nomadischen Vorrichtung anzutreffenden) herzustellen. Bluetooth ist ein Subsatz des Personal Area Network(PAN)-Protokolls des Institute of Electrical and Electronics Engineers (IEEE) 802. Die Protokolle IEEE 802 LAN (Local Area Network – Lokales Netzwerk) weisen Wireless Fidelity (WiFi) auf und besitzen beträchtliche Kreuzfunktionalität mit IEEE 802 PAN. Beide eignen sich für drahtlose Kommunikation in einem Fahrzeug 31. Andere Kommunikationsmittel, die in diesem Bereich verwendet werden können, sind optische Freiraumkommunikation (wie etwa IrDA) und nicht standardisierte Verbraucher-IR-Protokolle.
-
Bei einer anderen Ausführungsform umfasst die nomadische Vorrichtung 53 ein Modem für Sprachband- oder Breitband-Datenkommunikation. Bei der Data-Over-Voice-Ausführungsform kann eine als Frequenzmultiplexen bekannte Technik implementiert werden, wenn der Eigentümer des nomadischen Geräts 53 über das Gerät sprechen kann, während Daten übertragen werden. Bei anderen Gelegenheiten, wenn der Eigentümer die Vorrichtung nicht benutzt, kann der Datentransfer die gesamte Bandbreite verwenden (bei einem Beispiel 300 Hz bis 3,4 kHz). Obwohl Frequenzmultiplexen für analoge zellulare Kommunikation zwischen dem Fahrzeug 31 und dem Internet üblich sein kann und weiterhin verwendet wird, wurde es zum großen Teil durch Hybride aus CDMA (Code Domain Multiple Access), TDMA (Time Domain Multiple Access), SDMA (Space-Domain Multiple Access) für digitale zellulare Kommunikation ersetzt. Diese sind alle ITU IMT-2000 (3G) genügende Standards und bieten Datenraten bis zu 2 mbs für stationäre oder gehende Benutzer und 385 kbs für Benutzer in einem sich bewegenden Fahrzeug 31. 3G-Standards werden nun durch IMT-Advanced (4G) ersetzt, das für Benutzer in einem Fahrzeug 31 200 mbs und für stationäre Benutzer 1 gbs bietet. Falls der Benutzer über einen mit der nomadischen Vorrichtung 53 assoziierten Datenplan verfügt, ist es möglich, dass der Datenplan Breitband-Übertragung ermöglicht und dass das System eine viel größere Bandbreite verwenden könnte (wodurch der Datentransfer beschleunigt wird). Bei einer weiteren Ausführungsform wird die nomadische Vorrichtung 53 durch eine (nicht gezeigte) zellulare Kommunikationsvorrichtung ersetzt, die in dem Fahrzeug 31 installiert ist. Bei einer anderen Ausführungsform kann die ND 53 eine Vorrichtung eines drahtlosen lokalen Netzwerks (LAN) sein, das zum Beispiel (und ohne Beschränkung) über ein 802.11g-Netzwerk (das heißt WiFi) oder ein WiMax-Netzwerk kommunizieren kann.
-
Bei einer Ausführungsform können ankommende Daten durch die nomadische Vorrichtung 53 über Data-Over-Voice oder Datenplan geleitet werden, durch den fahrzeugseitigen BLUETOOTH-Sender/Empfänger und in den internen Prozessor 3 des Fahrzeugs 31. Im Fall bestimmter temporärer Daten können die Daten zum Beispiel auf dem HDD oder einem anderen Speicherträger 7 gespeichert werden, bis die Daten nicht mehr benötigt werden.
-
Zu zusätzlichen Quellen, die an das Fahrzeug 31 gekoppelt werden können, gehören eine PND (persönliche Navigationsvorrichtung) 54, die zum Beispiel eine USB-Verbindung 56 und/oder eine Antenne 58 aufweist, eine Fahrzeugnavigationsvorrichtung 60 mit einem USB 62 oder einer anderen Verbindung, eine fahrzeugseitige GPS-Vorrichtung 24 oder ein (nicht gezeigtes) Fernnavigationssystem, das Konnektivität mit dem Netzwerk 61 aufweist. USB ist eines einer Klasse von Serienvernetzungsprotokollen. IEEE 1394 (FirewireTM (Apple), i.LINKTM (Sony), und LynxTM (Texas Instruments)), serielle Protokolle der EIA (Electronics Industry Association), IEEE 1284 (Centronics Port), S/PDIF (Sony/Philips Digital Interconnect Format) und USB-IF (USB Implementers Forum) bilden das Rückgrat der seriellen Standards von Einrichtung zu Einrichtung. Die meisten der Protokolle können entweder für elektrische oder optische Kommunikation implementiert werden.
-
Ferner könnte sich die CPU 3 in Kommunikation mit vielfältigen anderen Hilfsvorrichtungen 65 befinden. Diese Vorrichtungen 65 können durch eine drahtlose 67 oder verdrahtete 69 Verbindung verbunden sein. Die Hilfsvorrichtung 65 kann, ohne aber darauf beschränkt zu sein, persönliche Medien-Player, drahtlose Gesundheitsvorrichtungen, tragbare Computer und dergleichen beinhalten.
-
Außerdem oder als Alternative könnte die CPU 3 zum Beispiel unter Verwendung eines fahrzeugseitigen drahtlosen Routers 73 verbunden sein, indem zum Beispiel ein Sender/Empfänger für WiFi (IEEE 803.11) 71 verwendet wird. Dadurch könnte sich die CPU 3 mit entfernten Netzwerken in der Reichweite des lokalen Routers 73 verbinden.
-
Zusätzlich dazu, dass beispielhafte Prozesse durch ein Fahrzeugdatenverarbeitungssystem in einem Fahrzeug 31 ausgeführt werden, können bei bestimmten Ausführungsformen die beispielhaften Prozesse mindestens teilweise von einem oder mehreren Rechensystemen außerhalb des Fahrzeugrechensystems und in Kommunikation mit ihm ausgeführt werden. Ein solches System wäre eine drahtlose Vorrichtung (zum Beispiel, aber ohne Beschränkung darauf, ein Mobiltelefon) oder ein entferntes Datenverarbeitungssystem (zum Beispiel, aber ohne Beschränkung darauf, ein Server), das durch die drahtlose Vorrichtung verbunden ist. Kollektiv können solche Systeme als ein fahrzeugassoziiertes Datenverarbeitungssystem (VACS) bezeichnet werden. Bei bestimmten Ausführungsformen können bestimmte Komponenten des VACS abhängig von der bestimmten Implementierung des Systems bestimmte Teile eines Prozesses ausführen. Zum Beispiel und ohne Beschränkung ist es, wenn ein Prozess einen Schritt des Sendens oder Empfangens von Informationen mit einer gekoppelten drahtlosen Vorrichtung aufweist, dann wahrscheinlich, dass die drahtlose Vorrichtung den Prozess nicht ausführt, da die drahtlose Vorrichtung nicht Informationen mit sich selbst „senden und empfangen“ würde. Der Durchschnittsfachmann versteht wann es nicht angemessen ist, ein bestimmtes VACS auf eine gegebene Lösung anzuwenden. Bei allen Lösungen wird in Betracht gezogen, dass mindestens das VCS 1, das sich in dem Fahrzeug 31 selbst befindet, in der Lage ist, die beispielhaften Prozesse auszuführen.
-
2 veranschaulicht ein beispielhaftes System 200 eines Fahrzeugs 31 zum Bereitstellen kundenspezifischer Aktualisierungen an das Fahrzeug 31. Das System 200 weist das VCS 1 in Kommunikation über das Netzwerk 61 mit einem Aktualisierungsserver 206 auf. Der Aktualisierungsserver 206 kann mit einem Softwaredatenspeicher 208, der Fahrzeugkonfigurationen 210 und Softwareaktualisierungen 212 speichert, kommunizieren. Das System 200 weist ferner ein Softwareaktualisierungsverwaltungsmodul 204 in Kommunikation mit dem VCS 1 und unterschiedlichen Modulen 202-A bis 202-C (gemeinsam 202 genannt) des Fahrzeugs 31 auf, das konfiguriert ist, um Softwareaktualisierungen 212 zu installieren. Das VCS 1 kann ferner eine Softwareaktualisierungsanwendung 214 aufweisen, die konfiguriert ist, um es dem Benutzer zu erlauben, die Anwendung von Softwareaktualisierungen 212, die anhand des Softwareaktualisierungsverwaltungsmoduls 204 ausgeführt werden, zu steuern. Während ein beispielhaftes System 200 in 2 gezeigt ist, bezwecken die beispielhaften Komponenten, die in der Figur veranschaulicht sind, nicht, einschränkend zu sein. Das System 200 kann nämlich mehr oder weniger Komponenten haben, und zusätzliche oder alternative Komponenten und/oder Umsetzungen können verwendet werden. Als ein Beispiel sind zwar drei Fahrzeugmodule 202 veranschaulicht, die Systeme 200 können jedoch mehr oder weniger Module 202 aufweisen. Als ein anderes Beispiel ist das Softwareaktualisierungsverwaltungsmodul 204 zwar als eine getrennte Komponente veranschaulicht, es kann bei anderen Beispielen jedoch mit anderen Komponenten kombiniert sein, zum Beispiel, als eine Möglichkeit, in das VCS 1 integriert sein.
-
Die Fahrzeugmodule 202 können unterschiedliche Komponenten des Fahrzeugs 31 aufweisen, die konfiguriert sind, um Aktualisierungen dazugehörender Software, Firmware oder Konfigurationseinstellungen zu empfangen. Die Fahrzeugmodule 202 können zum Beispiel konfiguriert sein, um eine Aktualisierungsschnittstelle von Fahrzeugbusbefehlen umzusetzen, die einen Befehl aufweisen, der einen Softwareaktualisierungsmodus für das Fahrzeugmodul 202 aufruft, einen Befehl zum Empfangen aktualisierter Konfiguration oder Softwaredaten, die auf das Fahrzeugmodul 202 anzuwenden sind, und einen Befehl zum Zurückstellen des Fahrzeugmoduls 202 und Neuladen der Konfiguration und Softwaredaten. Als einige nicht einschränkende Beispiele können die Fahrzeugmodule 202 ein Antriebsstrangsteuermodul (PCM), ein Bremssystemsteuermodul (BSCM) und ein Karosseriesteuermodul (BCM) aufweisen.
-
Das Softwareaktualisierungsmodul 204 kann konfiguriert sein, um auf ein fahrzeugseitiges Netzwerk zuzugreifen, um mit den Fahrzeugmodulen 202 zu kommunizieren. Bei einem Beispiel kann das fahrzeugseitige Netzwerk ein Controller Area Network (CAN) sein. Wenn ein Fahrzeug 31 zusammengebaut wird, kann das Fahrzeug 31 unterschiedliche Hardware- und Softwarebauteile aufweisen. Bei oder nach dem Zusammenbauen kann das Softwareaktualisierungsverwaltungsmodul 204 konfiguriert sein, um die Existenz und Versionsinformationen für mindestens einen Abschnitt dieser Hardware- und Softwarebauteile der Fahrzeugmodule 202 des Fahrzeugs 31 abzufragen.
-
Das Softwareaktualisierungsverwaltungsmodul 204 kann ferner konfiguriert sein, um auf das VCS 1 zuzugreifen, um mit dem Aktualisierungsserver 206 über das Netzwerk 61 zu kommunizieren. Unter Verwendung der abgefragten Informationen und zusätzlichen Informationen, die das spezifische Fahrzeug 31 identifizieren (zum Beispiel VIN-Informationen, die auf dem CAN-Bus veröffentlicht werden, Subscriber Identity Module(SIM)-Informationen des Modems 63, wie zum Beispiel die internationale Mobilstationsausstattungsidentität (IMEI), usw.), kann das Softwareaktualisierungsverwaltungsmodul 204 über das Netzwerk 61 kommunizieren, um ein Konto bei dem Aktualisierungsserver 206 einzurichten. Der Aktualisierungsserver 206 kann diese Kommunikationen von den Fahrzeugen 31 empfangen und kann einen Softwaredatenspeicher 208 der Informationen der Fahrzeugkonfiguration 210 in Zusammenhang mit den empfangenen Hardwarekonfigurationen und Softwareversionen (zum Beispiel Firmware usw.) in Verbindung mit Identifikatoren des Fahrzeugs 31 führen.
-
Der Softwaredatenspeicher 208 kann ferner konfiguriert sein, um Softwareaktualisierungen 212 zu speichern, die zu dem Fahrzeug 31 bereitgestellt werden können. Die Softwareaktualisierungen 212 können zum Beispiel aktualisierte Konfigurationseinstellungen für ein oder mehrere Module des Fahrzeugs 31 und/oder aktualisierte Versionen von Software oder Firmware, die auf dem einen oder den mehreren Modulen des Fahrzeugs 31 zu installieren sind, aufweisen. Die Softwareaktualisierungen 212 können zum Beispiel auch zusätzliche Anwendungen aufweisen, die zum Downloaden zu dem Fahrzeug 31 verfügbar sind.
-
Der Softwaredatenspeicher 208 kann ferner konfiguriert sein, um zusätzliche Informationen über die Softwareaktualisierungen 212 zu speichern. Zum Beispiel kann der Softwaredatenspeicher 208 konfiguriert sein, um ein optionales / erforderliches Flag in Zusammenhang mit den Softwareaktualisierungen 212 zu führen, es den Fahrzeugen 31 zu erlauben zu bestimmen, welche Softwareaktualisierungen 212 erforderlich sind und welche optional sind (zum Beispiel ein optionales Flag). Als ein anderes Beispiel kann der Softwaredatenspeicher 208 konfiguriert sein, um Angaben dazu zu führen, welche(s) Fahrzeugmodul(e) 202 mit welchen Softwareaktualisierungen 212 assoziiert ist/sind. Der Softwaredatenspeicher 208 kann ferner Informationen speichern, die auf die Kompatibilität der Softwareaktualisierungen 212 mit dem Fahrzeugmodul oder der Fahrzeugkonfiguration hinweisen. Ein Speichereintrag für eine Softwareaktualisierung 212 kann zum Beispiel angeben, dass die Softwareaktualisierung 212 mit einer bestimmten Typ und Modell des Fahrzeugs 31 kompatibel ist, oder dass sie von einer Version eines anderen Fahrzeugmoduls 202, das eine bestimmte Version oder bestimmte Versionen hat, abhängt.
-
Die Softwareaktualisierungsanwendung 214 kann konfiguriert sein, um eine Angabe zum Initiieren des Bereitstellens von Softwareaktualisierungen 212 zu empfangen. Als eine Möglichkeit kann die Softwareaktualisierungsanwendung 214 des VCS 1 eine Steueranfrage von einem Benutzer empfangen, der das Prüfen auf Softwareaktualisierungen 212 anfragt. Als eine andere Möglichkeit kann das Softwareaktualisierungsverwaltungsmodul 204 eine periodische Prüfung auf neue Softwareaktualisierungen 212 auslösen und kann der Softwareaktualisierungsanwendung 214 eine Angabe zu der ausgelösten Aufforderung bereitstellen. Bei Anfrage durch den Benutzer oder durch das Softwareaktualisierungsverwaltungsmodul kann die Softwareaktualisierungsanwendung 214 konfiguriert sein, um eine Anfrage zu dem Aktualisierungsserver 206 zu senden, um nachzufragen, ob Softwareaktualisierungen 212 für das Fahrzeug 31 verfügbar sind. Die Softwareaktualisierungsanwendung 214 kann zum Beispiel den Aktualisierungsserver 206 unter Verwendung eines Identifikators des Fahrzeugs 31 (zum Beispiel VIN des Fahrzeugs 31, SIM-Informationen des Fahrzeugs 31 usw.) abfragen und kann eine Antwort von dem Aktualisierungsserver 206 empfangen, die angibt, ob neue Softwareaktualisierungen 212 für das Fahrzeug 31 verfügbar sind (wie zum Beispiel Links oder andere Identifikatoren von Softwareaktualisierungen 212 zum Downloaden für das Fahrzeug 31).
-
Die Softwareaktualisierungsanwendung 214 kann ferner konfiguriert sein, um dem Benutzer eine Benutzeroberfläche für das Softwareaktualisierungsverwaltungsmodul 204 über das VCS 1 bereitzustellen. Die Softwareaktualisierungsanwendung 214 kann zum Beispiel konfiguriert sein, um dem Benutzer eine Aufforderung bereitzustellen (zum Beispiel über das Display 4 oder die Lautsprecher 13 des VCS 1), die den Benutzer informiert, dass Softwareaktualisierungen 212 verfügbar sind, und die die Erlaubnis zum Ausführen der Installation der Softwareaktualisierungen 212 anfragt. Als eine andere Möglichkeit kann die Softwareaktualisierungsanwendung 214 konfiguriert sein, um eine Angabe zu verfügbaren Aktualisierungen innerhalb des Instrumentenclusters des Fahrzeugs 31 bereitzustellen, wenn Softwareaktualisierungen 212 verfügbar sind (zum Beispiel heruntergeladen).
-
Sobald der Benutzer bestätigt, dass die Softwareaktualisierungen 212 installiert werden sollen, kann das Softwareaktualisierungsverwaltungsmodul 204 konfiguriert sein, um unterschiedliche Funktionen zu unterstützen, die beim Unterstützen des Aktualisierens der Software der Fahrzeugmodule 202 nützlich sind. Das Softwareaktualisierungsverwaltungsmodul 204 kann zum Beispiel konfiguriert sein, um einen Softwareaktualisierungsmodus für die Fahrzeugmodule 202 aufzurufen, die von den Softwareaktualisierungen 212 als Empfänger der Softwareaktualisierungen 212 identifiziert wurden, indem eine Meldung von dem Softwareaktualisierungsverwaltungsmodul 204 zu den Empfänger-Fahrzeugmodulen 202 über den Fahrzeugbus bereitgestellt wird. Das Softwareaktualisierungsverwaltungsmodul 204 kann ferner konfiguriert sein, um die Softwareaktualisierungen 212 zu den Fahrzeugmodulen 202 über den Fahrzeugbus zu übertragen, um das Flash-Aktualisierungsneuprogrammieren auszuführen und ein forciertes Reset der Empfänger-Fahrzeugmodule 202 nach Abschließen der Softwareaktualisierung 212 auszuführen, um die Fahrzeugmodule 202 zu veranlassen, die aktualisierte Software neu zu laden und zu verwenden. Das Softwareaktualisierungsverwaltungsmodul 204 kann auch konfiguriert sein, um Diagnosefunktionen in Zusammenhang mit dem Erfolg der Aktualisierungsvorgehensweise durch Lesen von Diagnosecodes über den Fahrzeugbus auszuführen. Weitere Aspekte des Betriebs des Softwareaktualisierungsverwaltungsmoduls 204 und der Softwareaktualisierungsanwendung 214 sind in Bezug auf die 3 bis 7 unten besprochen.
-
3 veranschaulicht einen beispielhaften Abschnitt 300 des Fahrzeugs 31, der eine Bekanntgabe 302 bevorstehender Softwareaktualisierungen 212 aufweist. Die Softwareaktualisierungsanwendung 214 kann konfiguriert sein, um das VCS 1 zu veranlassen, die Bekanntgabe 302 bereitzustellen, um dem Benutzer anzugeben, dass Softwareaktualisierungen 212 für das Fahrzeug 31, die noch nicht installiert wurden, verfügbar sind. Wie veranschaulicht, kann die Bekanntgabe 302 als ein Symbol innerhalb eines Instrumentenclusters des Fahrzeugs 31 enthalten sein. Zusätzlich oder alternativ kann die Bekanntgabe 302 auf dem Display 4 des VCS 1 innerhalb einer Benutzeroberfläche 304 des VCS 1 angezeigt sein. Die Benutzeroberfläche 304 des VCS 1 kann ferner von der Softwareaktualisierungsanwendung 214 verwendet werden, um den Prozess des Anwendens von Softwareaktualisierungen 212 auf die Fahrzeugmodule 202 über das Softwareaktualisierungsverwaltungsmodul 204 zu erleichtern.
-
4 veranschaulicht eine beispielhafte Benutzeroberfläche 304-A der Softwareaktualisierungsanwendung 214, die angibt, dass Aktualisierungen für das Fahrzeug 31 verfügbar sind. Die Benutzeroberfläche 304-A kann von der Softwareaktualisierungsanwendung 214 in dem Fahrzeug 31 über das Display 4 präsentiert werden und kann ein Titeletikett 402 aufweisen, um dem Benutzer anzugeben, dass die Benutzeroberfläche 304-A für die Softwareaktualisierungsanwendung 214 bestimmt ist. Die Benutzeroberfläche 304-A kann ferner ein Beschreibungsetikett 404 aufweisen, um dem Benutzer anzugeben, dass verfügbare Softwareaktualisierungen 212 installiert werden können, falls der Benutzer ihrer Installation zustimmt. Die Benutzeroberfläche 304-A kann ferner eine Listensteuerung 406 aufweisen, die konfiguriert ist, um eine auswählbare Liste von Einträgen 408 anzuzeigen (wie zum Beispiel veranschaulicht mit einem Eintrag „Aktualisierungen ausführen“ 408-A und einem Eintrag „Aktualisierungen später ausführen“ 408-B). Die Listensteuerung 406 kann als ein Menü funktionieren, so dass ein Benutzer der Benutzeroberfläche 304-A fähig ist, die Listeneinträge 408 durchzugehen um auszuwählen, ob die verfügbaren Softwareaktualisierungen 212 installiert werden sollen oder nicht (zum Beispiel unter Verwendung von Sprachbefehlen oder mit den Aufwärts- und Abwärtspfeiltasten des VCS 1 und einem Auswahlknopf des VCS 1, um das ausgewählte Menüelement 410 aufzurufen).
-
5 veranschaulicht eine beispielhafte Benutzeroberfläche 304-B der Softwareaktualisierungsanwendung 214, die zur Bestätigung, dass die Aktualisierung ausgeführt werden soll, auffordert. Wie die Benutzeroberfläche 304-A, kann die Benutzeroberfläche 304-B ebenfalls von der Softwareaktualisierungsanwendung 214 in dem Fahrzeug 31 über das Display 4 präsentiert werden und kann ein Titeletikett 402 aufweisen, um dem Benutzer anzugeben, dass die Benutzeroberfläche 304-B für die Softwareaktualisierungsanwendung 214 bestimmt ist.
-
Die Benutzeroberfläche 304-B kann ferner ein Beschreibungsetikett 404 aufweisen, um dem Benutzer anzugeben, wie viel Zeit erforderlich sein kann, um die Installation der verfügbaren Softwareaktualisierungen 212 auszuführen, sowie dass bestimmte Merkmale des Fahrzeugs 31 während des Installationsprozesses eventuell nicht verfügbar sind. Bei einigen Fällen kann das VCS 1 zum Beispiel nicht in der Lage sein, zu anderen VCS 1-Anwendungen umzuschalten, wie zum Beispiel Navigation, während Softwareaktualisierungen 212 installiert werden. Bei anderen Fällen, falls die Fahrzeugmodule 202, die zu aktualisieren sind, für den Betrieb des Fahrzeugs 31 wichtig sind (zum Beispiel das BCM, PCM, BSCM usw.), kann das VCS 1 konfiguriert sein, um den Benutzer zu informieren, dass das Fahrzeug 31 nicht in den Bewegungsmodus versetzt werden kann, wenn diese Module 202 aktualisiert werden. Die Benutzeroberfläche 304-B kann ferner eine Listensteuerung 406 aufweisen, die konfiguriert ist, um eine auswählbare Liste von Einträgen 408 anzuzeigen (wie zum Beispiel wieder veranschaulicht mit dem Eintrag „Aktualisierungen ausführen“ 408-A und dem Eintrag „Aktualisierungen später ausführen“ 408-B), jedoch in diesem Fall um Bestätigung anzufragen, dass die Menge an Zeit für die Aktualisierungen für den Benutzer akzeptabel ist.
-
6 veranschaulicht eine beispielhafte Benutzeroberfläche 304-C der Softwareaktualisierungsanwendung 214, die optionale Softwareaktualisierungen 212, die verfügbar sind, angibt. Die Softwareaktualisierungen 212 können als optional zum Beispiel gemäß dem optionalen Flag oder einem anderem Indikator in Zusammenhang mit den Softwareaktualisierungen 212 identifiziert sein. Wie die Benutzeroberflächen 304-A und 304-B, kann die Benutzeroberfläche 304-C ebenfalls von der Softwareaktualisierungsanwendung 214 in dem Fahrzeug 31 über das Display 4 präsentiert werden und kann ein Titeletikett 402 aufweisen, um dem Benutzer anzugeben, dass die Benutzeroberfläche 304-C für die Softwareaktualisierungsanwendung 214 bestimmt ist.
-
Die Benutzeroberfläche 304-C kann ferner ein Beschreibungsetikett 404 aufweisen, um dem Benutzer anzugeben, dass die aufgelisteten Softwareaktualisierungen 212 optionale Softwarekomponenten sind, die an dem Fahrzeug 31 installiert werden können. Die Benutzeroberfläche 304-C kann ferner eine Listensteuerung 406 aufweisen, die konfiguriert ist, um eine auswählbare Liste von Einträgen 408 anzuzeigen, wobei jeder Eintrag 408 einer verfügbaren optionalen Softwareaktualisierung 212 entspricht. Die Listensteuerung 406 kann zum Beispiel einen Eintrag 408-C aufweisen, der einer optionalen Softwareaktualisierung 212 für ein Schleppverbesserungspackage entspricht, die konfiguriert ist, um dem Fahrzeug 31 zusätzliche Software-Schleppmerkmale bereitzustellen. Als ein anderes Beispiel kann die Listensteuerung 406 einen Eintrag 408-D aufweisen, der einer optionalen Ausführung der Softwareaktualisierung 212 des Leistungs-Maschineneinstellpackages entspricht, das konfiguriert ist, um dem Fahrzeug 31 ein aggressiveres Maschinentuning bereitzustellen. Ein Benutzer kann eine optionale Softwareaktualisierung 212, die zu installieren ist, auswählen (zum Beispiel mit Sprachbefehlen oder Aufwärts-, Abwärts- und Auswahlknöpfen des VCS 1). Wenn ein Benutzer eine optionale Softwareaktualisierung 212 auswählt, kann die Softwareaktualisierungsanwendung 214 konfiguriert sein, um eine Benutzeroberfläche 304 anzuzeigen, wie zum Beispiel die Benutzeroberfläche 304-B, um es dem Benutzer zu erlauben, die Auswahl der optionalen Installation zu bestätigen.
-
7 veranschaulicht eine beispielhafte Benutzeroberfläche 304-D der Softwareaktualisierungsanwendung 214, die den Abschluss der Installation der Softwareaktualisierungen 212 angibt. Wie die Benutzeroberflächen 304-A bis 304-C, kann die Benutzeroberfläche 304-D von der Softwareaktualisierungsanwendung 214 in dem Fahrzeug 31 über das Display 4 präsentiert werden und kann ein Titeletikett 402 aufweisen, um dem Benutzer anzugeben, dass die Benutzeroberfläche 304-D für die Softwareaktualisierungsanwendung 214 bestimmt ist.
-
Die Benutzeroberfläche 304-D kann ferner ein Beschreibungsetikett 404 aufweisen, um dem Benutzer anzugeben, dass die Softwareaktualisierungen 212 installiert wurden. Das Beschreibungsetikett 404 kann ferner zusätzliche Informationen enthalten, wie zum Beispiel eine Angabe, dass der Benutzer das Fahrzeug 31 neu anlassen (zum Beispiel Schlüsselanlasszyklus) sollte, um die Installation der Softwareaktualisierungen 212 abzuschließen und den Softwareaktualisierungsmodus zu verlassen.
-
8 veranschaulicht einen beispielhaften Prozess 800 des Verwendens eines Softwareaktualisierungsverwaltungsmoduls 204 zum Anwenden von Softwareaktualisierungen 212 auf die Fahrzeugmodule 202 des Fahrzeugs 31. Der Prozess 800 kann zum Beispiel von dem VCS 1 in Kommunikation mit dem Softwareaktualisierungsverwaltungsmodul 204 und dem Aktualisierungsserver 206 ausgeführt werden.
-
Bei Vorgang 802 empfängt die Softwareaktualisierungsanwendung 214 eine Angabe, dass sie den Modus der Softwareaktualisierung 212 initiieren soll. Als eine Möglichkeit kann die Softwareaktualisierungsanwendung 214 des VCS 1 eine Steueranfrage von einem Benutzer empfangen, der das Prüfen auf Softwareaktualisierungen 212 anfragt. Als eine andere Möglichkeit kann das Softwareaktualisierungsverwaltungsmodul 204 eine periodische Prüfung auf neue Softwareaktualisierungen 212 auslösen und kann der Softwareaktualisierungsanwendung 214 eine Angabe zu der ausgelösten Anfrage bereitstellen.
-
Bei Vorgang 804 bestimmt die Softwareaktualisierungsanwendung 214, ob Softwareaktualisierungen 212 zur Installation verfügbar sind. Als ein Beispiel kann die Softwareaktualisierungsanwendung 214 den Aktualisierungsserver 206 abfragen, indem sie einen Identifikator des Fahrzeugs 31 (zum Beispiel die VIN des Fahrzeugs 31, SIM-Informationen des Fahrzeugs 31 usw.) verwendet, und kann eine Antwort von dem Aktualisierungsserver 206 empfangen, die angibt, ob neue oder ansonsten nicht installierte Softwareaktualisierungen 212 für das Fahrzeug 31 verfügbar sind. Falls Aktualisierungen verfügbar sind, geht die Steuerung zu Vorgang 806 über. Anderenfalls endet der Prozess 800.
-
Bei Vorgang 806 bestimmt die Softwareaktualisierungsanwendung 214, ob das Fahrzeug 31 in einem Zustand ist, der für das Anwenden der Softwareaktualisierungen 212 sicher ist. Zum Beispiel kann die Softwareaktualisierungsanwendung 214 prüfen, dass das Fahrzeug 31 geparkt oder in einem Hilfs- oder anderen Modus des Fahrzeugs 31 ist, in dem das Fahrzeug 31 fähig sein kann, Aktualisierungen an den Fahrzeugmodulen 202, wenn sie nicht in Betrieb sind, auszuführen. Die Softwareaktualisierungsanwendung 214 kann bestimmen, ob das Fahrzeug 31 gestoppt werden muss, wenn die Aktualisierungen des Fahrzeugs 31 ausgeführt werden, und zwar basierend auf Angaben der den Softwareaktualisierungen 212 zugeordneten Fahrzeugmodule 202 (zum Beispiel würden Aktualisierungen an dem BCM, PCM oder BSCM erfordern, dass das Fahrzeug 31 stillsteht, aber die Installation eines Farbsystems zu dem VCS 1 oder aktualisierte Navigationsinformationen erfordern es nicht). Falls die Softwareaktualisierungsanwendung 214 bestimmt, dass Softwareaktualisierungen derzeit nicht ausgeführt werden können, geht die Steuerung zu Vorgang 808 über. Anderenfalls geht die Steuerung zu Vorgang 810 über.
-
Bei Vorgang 808 zeigt die Softwareaktualisierungsanwendung 214 eine Aktualisierungsangabe „Aktualisierung verfügbar“ an, um den Benutzer zu informieren, dass Softwareaktualisierungen 212 warten. Wie in 3 veranschaulicht, kann die Softwareaktualisierungsanwendung 214 zum Beispiel konfiguriert sein, um das VCS 1 zu veranlassen, die Bekanntgabe 302 als ein Symbol in dem Instrumentencluster des Fahrzeugs 31 bereitzustellen. Zusätzlich oder alternativ kann die Softwareaktualisierungsanwendung 214 konfiguriert sein, um das VCS 1 zu veranlassen, die Bekanntgabe 302 auf dem Display 4 des VCS 1 innerhalb einer Benutzeroberfläche 304 des VCS 1 bereitzustellen. Die Softwareaktualisierungsanwendung 214 kann konfiguriert sein, um dem Benutzer die Bekanntgabe 302 bereitzustellen, bis der Benutzer beschließt, zu der Softwareaktualisierungsanwendung 214 zurückzukehren und die Installation der Softwareaktualisierungen 212 abzuschließen. In Fällen, in welchen der Benutzer den Modus der Softwareaktualisierung 212 angefragt hat, kann das Fahrzeug 31 ferner konfiguriert sein, um dem Benutzer eine Angabe bereitzustellen, dass das Aktualisieren derzeit nicht ausgeführt werden kann, weil das Fahrzeug 31 zum Beispiel in einem Bewegungsmodus ist. Nach dem Vorgang 808 endet der Prozess 800.
-
Bei Vorgang 810 fragt die Softwareaktualisierungsanwendung 214 die Zustimmung des Benutzers zum Initiieren der Installation der Softwareaktualisierungen 212 an. Die Softwareaktualisierungsanwendung 214 kann dem Benutzer zum Beispiel eine Benutzeroberfläche 304 präsentieren, wie zum Beispiel die Benutzeroberfläche 304-A, die in 4 veranschaulicht ist, die angibt, dass Aktualisierungen verfügbar sind, und fragt, ob das Aktualisieren ausgeführt werden soll. Falls der Benutzer über die Benutzeroberfläche 304 anfordert, dass die Aktualisierungen ausgeführt werden, geht die Steuerung zu Vorgang 812 über. Anderenfalls geht die Steuerung zu Vorgang 808 über.
-
Bei Vorgang 812 fragt die Softwareaktualisierungsanwendung 214 Bestätigung der Zeit an, die zum Installieren der Softwareaktualisierungen 212 erforderlich ist. Die Softwareaktualisierungsanwendung 214 kann dem Benutzer zum Beispiel eine Benutzeroberfläche 304 präsentieren, wie zum Beispiel die Benutzeroberfläche 304-B, die in 5 veranschaulicht ist, die die zum Vervollständigen des Aktualisierungsvorgangs erforderliche geschätzte Zeit angibt, und fragt, ob das Aktualisieren ausgeführt werden soll. Falls der Benutzer über die Benutzeroberfläche 304 der Ausführung der Softwareaktualisierungen 212 zustimmt, geht die Steuerung zu Vorgang 814 über. Anderenfalls geht die Steuerung zu Vorgang 808 über.
-
Bei Vorgang 814 aktualisiert die Softwareaktualisierungsanwendung 214 die Fahrzeugmodule 202, die von den empfangenen Softwareaktualisierungen 212 identifiziert wurden. Die Softwareaktualisierungsanwendung 214 kann zum Beispiel anfordern, dass das Softwareaktualisierungsverwaltungsmodul 204 Flash-Aktualisierungs-Neuprogrammierungsvorgehensweisen der Fahrzeugmodule 202 ausführt, die von den Modulidentifikatoren der Softwareaktualisierungen 212 angegeben werden, indem aktualisierte Software und/oder Konfigurationseinstellungen, die in den Softwareaktualisierungen 212 enthalten sind, verwendet werden.
-
Bei Vorgang 816 setzt das Softwareaktualisierungsverwaltungsmodul 204 die Fahrzeugmodule 202 zurück, die von den empfangenen Softwareaktualisierungen 212 identifiziert wurden. Nach dem Anwenden der aktualisierten Software und/oder Konfigurationseinstellungen, die in den Softwareaktualisierungen 212 enthalten sind, kann das Softwareaktualisierungsverwaltungsmodul 204 zum Beispiel Befehle zu den aktualisierten Fahrzeugmodulen 202 senden, die konfiguriert sind, um die empfangenden Fahrzeugmodule 202 zu veranlassen, forcierte Resetabfolgen auszuführen. Diese forcierten Resetabfolgen können angefordert werden, um die Fahrzeugmodule 202, die aktualisiert werden, zu veranlassen, zuvor in dem Cache-Speicher hinterlegte Software und/oder Einstellungen zu verwerfen und neu zu initialisieren, indem die aktualisierte Software und/oder aktualisierten Einstellungen verwendet werden.
-
Bei Vorgang 818 stellt die Softwareaktualisierungsanwendung 214 eine Aufforderung für den Benutzer zum Neustarten des Fahrzeugs 31 bereit. Beim Empfangen einer Angabe des Abschließens des Aktualisierungsvorgangs von dem Softwareaktualisierungsverwaltungsmodul 204 kann die Softwareaktualisierungsanwendung 214 zum Beispiel konfiguriert sein, um eine Benutzeroberfläche 304 zu präsentieren, wie zum Beispiel die Benutzeroberfläche 304-D, die in 7 veranschaulicht ist, die eine Angabe in der Benutzeroberfläche bereitstellt, die angibt, dass der Benutzer eventuell das Fahrzeug 31 mit dem Schlüsselzyklus anlassen muss, um die Anwendung der Softwareaktualisierungen 212 abzuschließen.
-
Bei Vorgang 820 aktualisiert die Softwareaktualisierungsanwendung 214 das Fahrzeugprotokoll. Die Softwareaktualisierungsanwendung 214 kann zum Beispiel konfiguriert sein, um Angaben in dem Fahrzeugprotokoll dazu zu enthalten, welche Softwareaktualisierungen 212 zu dem Fahrzeug 31 installiert wurden und wann. Das Fahrzeugprotokoll kann andere Informationen in Zusammenhang mit dem Fahrzeug 31 aufweisen, wie zum Beispiel wann Ölwechsel oder andere Wartungsvorgänge des Fahrzeugs 31 ausgeführt wurden. In einigen Fällen können die Fahrzeugprotokollinformationen zu einem Netzwerkserver bereitgestellt werden, um es den Benutzern zu erlauben, das Aktualisierungsprotokoll von dem Fahrzeug entfernt einzusehen. Nach dem Vorgang 820 endet der Prozess 800.
-
Obwohl oben beispielhafte Ausführungsformen beschrieben wurden, wird nicht beabsichtigt, dass diese Ausführungsformen alle möglichen Formen der Erfindung beschreiben. Die Wörter, die in der Patentschrift verwendet werden, sind vielmehr beschreibender und nicht einschränkender Art, und es ist klar, dass verschiedene Änderungen erfolgen können, ohne vom Sinn und vom Geltungsbereich der Erfindung abzuweichen. Zusätzlich können die Merkmale verschiedener implementierender Ausführungsformen kombiniert werden, um weitere Ausführungsformen der Erfindung zu bilden.
-
Es wird ferner beschrieben:
- A. System, das Folgendes umfasst:
einen Prozessor eines Fahrzeugs, der konfiguriert ist, um mit einem Aktualisierungsserver zu kommunizieren, der Softwareaktualisierungen hostet, und
ein Softwareaktualisierungsverwaltungsmodul, das an den Prozessor und die Fahrzeugmodule über einen Fahrzeugbus angeschlossen und konfiguriert ist, um einen Aktualisierungsbefehl über den Fahrzeugbus zu senden, um einen Softwareaktualisierungsmodus für eines der Fahrzeugmodule, das von einer Softwareaktualisierung identifiziert wurde, aufzurufen, und
die Softwareaktualisierung auf dem einen der Fahrzeugmodule anzuwenden.
- B. System nach A, wobei das Softwareaktualisierungsverwaltungsmodul ferner konfiguriert ist, um einen Reset-Befehl über den Fahrzeugbus zu senden, um ein forciertes Reset des Fahrzeugmoduls nach Abschluss der Softwareaktualisierung auszuführen.
- C. System nach A, wobei das Softwareaktualisierungsverwaltungsmodul ferner konfiguriert ist, beim Prozessor in regelmäßigen Abständen anzufragen, Softwareaktualisierungen von dem Aktualisierungsserver anzufordern, und wobei die Softwareaktualisierung von dem Prozessor von dem Aktualisierungsserver als Reaktion auf eine regelmäßige Anfrage nach Aktualisierungen von dem Aktualisierungsserver heruntergeladen wird.
- D. System nach A, wobei das Softwareaktualisierungsverwaltungsmodul ferner konfiguriert ist, um ein Fahrzeughistorieprotokoll zu aktualisieren, um ein Ergebnis einer Anwendung der Softwareaktualisierung zu dem Fahrzeugmodul anzugeben.
- E. System nach A, wobei das Softwareaktualisierungsverwaltungsmodul ferner konfiguriert ist, um den Softwareaktualisierungsmodus als Reaktion auf den Empfang einer Meldung von dem Prozessor aufzurufen, der die Benutzerzustimmung zum Installieren der Softwareaktualisierung angibt.
- F. System nach E, wobei die Benutzerzustimmung zum Installieren der Softwareaktualisierung den Empfang einer ersten Zustimmung zum Installieren von Softwareaktualisierungen und den Empfang einer zweiten Zustimmung zum Warten während einer geschätzten Zeitspanne auf das Installieren der Softwareaktualisierung aufweist.
- G. System nach A, wobei der Prozessor ferner konfiguriert ist, um zum Schlüsselzyklus des Fahrzeugs als Reaktion auf den Empfang einer Angabe des Abschlusses der Softwareaktualisierung von dem Softwareaktualisierungsverwaltungsmodul aufzufordern.
- H. System, das Folgendes umfasst:
ein Rechensystem eines Fahrzeugs, das konfiguriert ist, um Zustimmung von einem Benutzer zum Installieren einer Softwareaktualisierung anzufragen,
wenn die Zustimmung empfangen wird, die Softwareaktualisierung unter Verwendung eines Softwareaktualisierungsverwaltungsmoduls zu installieren, das konfiguriert ist, um einen Softwareaktualisierungsmodus für ein Fahrzeugmodul, das von der Softwareaktualisierung identifiziert wurde, aufzurufen und die Softwareaktualisierung auf das Fahrzeugmodul anzuwenden, und
wenn die Zustimmung nicht empfangen wird, eine Angabe anzuzeigen, dass die Softwareaktualisierung verfügbar ist.
- I. System nach H, wobei das Rechensystem ferner konfiguriert ist, um:
zu bestimmen, dass die Softwareaktualisierung eine optionale Softwareaktualisierung ist, die konfiguriert ist, um ein zusätzliches Feature zu einem Fahrzeugmodul hinzuzufügen und/oder eine Konfiguration eines existierenden Features eines Fahrzeugmoduls einzustellen, und
in einer Benutzeroberfläche des Fahrzeugs eine Angabe eines optionalen Status der Softwareaktualisierung und eine Anfrage nach Zustimmung von dem Benutzer zum Installieren der Softwareaktualisierung als eine optionale Softwareaktualisierung bereitzustellen.
- J. System nach H, wobei das Rechensystem ferner konfiguriert ist, um:
zu bestimmen, dass die Installation der Softwareaktualisierung abgeschlossen ist, und
in einer Benutzeroberfläche des Fahrzeugs eine Angabe bereitzustellen, dass die Softwareaktualisierung beim Neustarten des Fahrzeugs verfügbar ist.
- K. System nach H, wobei das Rechensystem konfiguriert ist, um die Angabe anzuzeigen, dass die Softwareaktualisierung als ein Symbol innerhalb eines Instrumentenclusters des Fahrzeugs und/oder auf einem Fronteinheitsdisplay des Rechensystems verfügbar ist.
- L. System nach H, wobei das Rechensystem ferner konfiguriert ist, um ein Fahrzeughistorieprotokoll zu aktualisieren, um ein Ergebnis einer Anwendung der Softwareaktualisierung auf dem Fahrzeugmodul anzugeben.
- M. System nach H, wobei das Rechensystem ferner konfiguriert ist, um den Softwareaktualisierungsmodus als Reaktion auf die Zustimmung des Benutzers zum Installieren der Softwareaktualisierung aufzurufen.
- N. System nach M, wobei die Benutzerzustimmung zum Installieren der Softwareaktualisierung den Empfang einer ersten Zustimmung zum Installieren von Softwareaktualisierungen und den Empfang einer zweiten Zustimmung zum Warten während einer geschätzten Zeitspanne auf das Installieren der Softwareaktualisierung aufweist.
- O. System nach H, wobei das Rechensystem ferner konfiguriert ist, um zum Neustarten des Fahrzeugs bei Abschluss der Installation der Softwareaktualisierung aufzufordern.
- P. Computerimplementiertes Verfahren, das Folgendes umfasst:
Installieren einer Softwareaktualisierung durch ein Rechensystem eines Fahrzeugs durch Aufrufen eines Softwareaktualisierungsmodus für ein Fahrzeugmodul das von der Softwareaktualisierung identifiziert wurde, und Anwenden der Softwareaktualisierung auf das Fahrzeugmodul, falls die Benutzerzustimmung empfangen wurde, und
ansonsten Anzeigen einer Angabe, dass Softwareaktualisierungen verfügbar sind.
- Q. Verfahren nach P, das ferner Folgendes umfasst:
Bestimmen, dass die Softwareaktualisierung eine optionale Softwareaktualisierung ist, die konfiguriert ist, um ein zusätzliches Feature zu einem Fahrzeugmodul hinzuzufügen und/oder eine Konfiguration eines existierenden Features eines Fahrzeugmoduls einzustellen, und
in einer Benutzeroberfläche des Fahrzeugs Bereitstellen einer Angabe eines optionalen Status der Softwareaktualisierung und einer Anfrage nach Zustimmung von dem Benutzer zum Installieren der Softwareaktualisierung als eine optionale Softwareaktualisierung.
- R. Verfahren nach P, das ferner Folgendes umfasst:
Bestimmen, dass die Installation der Softwareaktualisierung abgeschlossen ist, und
in einer Benutzeroberfläche des Fahrzeugs Bereitstellen einer Angabe, dass die Softwareaktualisierung beim Neustarten des Fahrzeugs verfügbar ist.
- S. Verfahren nach P, das ferner das Anzeigen der Angabe, dass Softwareaktualisierungen verfügbar sind, als ein Symbol innerhalb eines Instrumentenclusters des Fahrzeugs und/oder auf einem Fronteinheitsdisplay des Rechensystems umfasst.
- T. Verfahren nach P, das ferner beim Abschließen des Installierens der Softwareaktualisierung das Aktualisieren eines Fahrzeughistorieprotokolls, um ein Resultat der Anwendung der Softwareaktualisierung auf das Fahrzeugmodul anzugeben, und/oder das Auffordern zum Neustarten des Fahrzeugs umfasst.
ZEICHENERKLÄRUNG FIG. 2 61 | NETZWERK |
206 | AKTUALISIERUNGSSERVER |
208 | SOFTWAREDATENSPEICHER |
210 | FAHRZEUGKONFIGURATIONEN |
212 | SOFTWAREAKTUALISIERUNGEN |
214 | SOFTWAREAKTUALISIERUNGSANWENDUNG |
204 | SOFTWAREAKTUALISIERUNGSVERWALTUNGSMODUL |
202-A | FAHRZEUGMODUL |
202-B | FAHRZEUGMODUL |
202-C | FAHRZEUGMODUL |
1 | VCS |
FIG. 8 | START |
802 | AKTUALISIERUNG INITIIERT |
| NEIN |
| JA |
804 | AKTUALISIERUNGEN ERFORDERLICH ODER GEFORDERT? |
806 | FAHRZEUG ZUM AKTUALISIEREN IN SICHEREM ZUSTAND? |
810 | ZUSTIMMUNG ZUM BEGINNEN DER SOFTWAREAKTUALISIERUNG EMPFANGEN? |
812 | BESTÄTIGUNG DER ERFORDERLICHEN ZEIT EMPFANGEN? |
808 | ANGABE VERFÜGBARER AKTUALISIERUNGEN ANZEIGEN |
| ENDE |
814 | DIE VON SOFTWAREAKTUALISIERUNGEN IDENTIFIZIERTEN MODULE AKTUALISIEREN |
816 | AKTUALISIERTE MODULE NEU STARTEN |
818 | AUFFORDERUNG ZUM NEUSTARTEN DES FAHRZEUGS |
820 | FAHRZEUGPROTOKOLL AKTUALISIEREN |
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Nicht-Patentliteratur
-
- (IEEE) 802 [0025]
- IEEE 802 LAN [0025]
- IEEE 802 PAN [0025]
- IEEE 1394 [0028]
- IEEE 1284 [0028]
- IEEE 803.11 [0030]