DE112018001985T5 - Relais-Einrichtung, Transferverfahren und Computerprogramm - Google Patents

Relais-Einrichtung, Transferverfahren und Computerprogramm Download PDF

Info

Publication number
DE112018001985T5
DE112018001985T5 DE112018001985.3T DE112018001985T DE112018001985T5 DE 112018001985 T5 DE112018001985 T5 DE 112018001985T5 DE 112018001985 T DE112018001985 T DE 112018001985T DE 112018001985 T5 DE112018001985 T5 DE 112018001985T5
Authority
DE
Germany
Prior art keywords
program
update
transmission
vehicle
control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112018001985.3T
Other languages
English (en)
Inventor
Koji Arai
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sumitomo Electric Industries Ltd
Original Assignee
Sumitomo Electric Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sumitomo Electric Industries Ltd filed Critical Sumitomo Electric Industries Ltd
Publication of DE112018001985T5 publication Critical patent/DE112018001985T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mechanical Engineering (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Bereitgestellt wird eine Relais-Einrichtung, die konfiguriert ist, ein Aktualisierungsprogramm, das aus einem Server heruntergeladen wird, für ein Steuerprogramm einer Fahrzeugsteuervorrichtung an die Fahrzeugsteuervorrichtung zu übertragen. Die Relais-Einrichtung beinhaltet: eine Recheneinheit, die konfiguriert ist, einen Indexwert zu berechnen, der ein Verhältnis zwischen einer Größe des Steuerprogramms und einer Größe des Aktualisierungsprogramms anzugeben; und eine Übertragungssteuereinheit, die konfiguriert ist, zu bestimmen, ob die Übertragung erlaubt ist oder nicht, auf Basis des berechneten Indexwerts.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung bezieht sich auf eine Relais-Einrichtung, ein Transferverfahren und ein Computerprogramm. Diese Anmeldung beansprucht die Priorität zur Japanischen Patentanmeldung Nr. JP-2017-078837 A , eingereicht am 12. April 2017, deren Gesamtinhalte hierin unter Bezugnahme inkorporiert seien.
  • HINTERGRUND
  • Im Automobilbereich sind in den letzten Jahren Fahrzeuge hinsichtlich der Funktionalität fortschrittlich geworden und ein breiter Bereich von Vorrichtungen werden in Fahrzeugen installiert. Entsprechend sind Fahrzeuge mit einer großen Anzahl von Steuervorrichtungen, sogenannte ECUs (Elektroniksteuereinheiten, Electronic Control Units) zum Steuern dieser Fahrzeugvorrichtungen ausgerüstet.
  • Jedes Fahrzeug ist mit verschiedenen Typen von ECUs ausgerüstet, wie etwa: Fahrtyp-ECUs, die einen Motor, eine Bremse, ein EPS (elektrische Servolenkung) und dergleichen in Reaktion auf Bedienungen auf einem Fahrpedal, einer Bremse und einem Handgriff steuern; Karosserietyp-ECUs, die EIN/AUS von Innenlichtern und Scheinwerfern, Ton einer Alarmeinheit und dergleichen in Reaktion von Schaltbedienungen, die durch einen Insassen durchgeführt sind, steuern; und Messtyp-ECUs, die Operationen von Metern, die nahe dem Fahrersitz angeordnet sind, steuern.
  • Allgemein besteht jede ECU aus einer arithmetischen Verarbeitungseinheit, wie etwa einem Mikrocomputer, und implementiert die Steuerung einer Fahrzeugvorrichtung durch Auslesen eines in einem ROM (Nur-Lesespeicher) gespeicherten Steuerprogramms und Ausführen des gelesenen Steuerprogramms.
  • Steuerprogramme von ECUs können sich abhängig von Zielorten, Niveaus und dergleichen des Fahrzeugs unterscheiden. Daher müssen alte Versionen von Steuerprogrammen mit neuen Programmen derselben in Beantwortung der Aktualisierung der Steuerprogramme überschrieben werden. Zusätzlich müssen auch Daten, wie etwa Karteninformation und Steuerparameter, welche für die Ausführung der Steuerprogramme notwendig sind, überschrieben werden.
  • Patentliteratur 1 offenbart beispielsweise eine Technologie (Online-Aktualisierungsfunktion) des Herunterladens eines Aktualisierungsprogramms über ein Netzwerk und Durchführen der Aktualisierung eines Programms.
  • ZITATELISTE
  • PATENTLITERATUR
  • PATENTLITERATUR 1: Japanische Patentoffenlegungsschrift JP-2015-37938 A
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Eine Relais-Einrichtung gemäß einer Ausführungsform ist eine Relais-Einrichtung, die konfiguriert ist, ein Aktualisierungsprogramm, welches aus einem Server heruntergeladen wird, für ein Steuerprogramm einer Fahrzeugsteuervorrichtung, an eine Fahrzeugsteuervorrichtung zu übertragen. Die Relais-Einrichtung beinhaltet: eine Recheneinheit, die konfiguriert ist, einen Indexwert zu berechnen, der ein Verhältnis zwischen einer Größe des Steuerprogramms und einer Größe des Aktualisierungsprogramms angibt; und eine Übertragungssteuereinheit, die konfiguriert ist, zu bestimmen, ob die Übertragung zu gestatten ist oder nicht, auf Basis des Berechnens des Indexwerts.
  • Ein Übertragungsverfahren gemäß einer anderen Ausführungsform ist ein Verfahren zum Übertragen eines Aktualisierungsprogramms, das aus einem Server heruntergeladen wird, für ein Steuerprogramm einer Fahrzeugsteuervorrichtung, auf die Fahrzeugsteuervorrichtung. Das Verfahren beinhaltet: Berechnen eines Indexwerts, der ein Verhältnis zwischen einer Größe des Steuerprogramms und einer Größe des Aktualisierungsprogramms angibt; und Bestimmen, ob die Übertragung zu gestatten ist oder nicht, auf Basis des Indexwerts.
  • Ein Computerprogramm gemäß noch einer anderen Ausführungsform ist ein Computerprogramm, um einen Computer zu veranlassen, als eine Relais-Einrichtung zu fungieren, die konfiguriert ist, ein Aktualisierungsprogramm, das aus einem Server, für ein Steuerprogramm für einer Fahrzeugsteuervorrichtung heruntergeladen wird, an die Fahrzeugsteuervorrichtung zu übertragen. Das Computerprogramm veranlasst den Computer, zu fungieren als: eine Recheneinheit, die konfiguriert ist, einen Indexwert zu berechnen, der ein Verhältnis zwischen einer Größe des Steuerprogramms und einer Größe des Aktualisierungsprogramms angibt; und eine Übertragungssteuereinheit, die konfiguriert ist, zu bestimmen, ob die Übertragung zu gestatten ist oder nicht, auf Basis des berechneten Indexwerts.
  • Figurenliste
    • 1 ist ein Diagramm, das eine Gesamtkonfiguration eines Programmaktualisierungssystems zeigt.
    • 2 ist ein Blockdiagramm, das eine interne Konfiguration eines Gateways zeigt.
    • 3 ist ein Blockdiagramm, das eine interne Konfiguration einer ECU zeigt.
    • 4 ist ein Blockdiagramm, das eine interne Konfiguration eines Verwaltungsservers zeigt.
    • 5 ist ein Sequenzdiagramm, das ein Beispiel eines Ablaufs von Online-Aktualisierung eines Steuerprogramms zeigt, welches durch das Programmaktualisierungssystem ausgeführt wird.
    • 6 ist ein Flussdiagramm eines spezifischen Inhalts eines Herunterlade-Steuerprozesses in dem Programmaktualisierungssystem gemäß einer ersten Ausführungsform.
    • 7 ist ein Flussdiagramm, das einen spezifischen Inhalt eines Herunterlade-Steuerprozesses in dem Programmaktualisierungssystem gemäß einer zweiten Ausführungsform zeigt.
  • BESCHREIBUNG VON AUSFÜHRUNGSFORMEN
  • <Durch die vorliegende Offenbarung zu lösenden Problemen>
  • Das Ausführen von Online-Aktualisierung, wie in Patentliteratur 1 offenbart, kann Belastungen an der sich auf die Online-Aktualisierung beziehenden Vorrichtungskonfiguration verursachen, wie etwa einen Anstieg bei der Kommunikationsbelastung, und Sinken bei der Speicherkapazität aufgrund der Aktualisierungsverarbeitung.
  • Derweil, falls eine solche Online-Aktualisierung komplett zurückgewiesen wird, wird eine Aktualisierungsarbeit durch einen Händler oder dergleichen für jede Aktualisierung benötigt, was die Bequemlichkeit für den Anwender beeinträchtigt.
  • Eine Aufgabe in einem Aspekt der vorliegenden Offenbarung ist es, eine Relais-Vorrichtung bereitzustellen, ein Übertragungsverfahren und ein Computerprogramm bereitzustellen, die sowohl Verbesserung von Anwenderbequemlichkeit als auch Vermeidung von Belastungen an der Vorrichtungskonfiguration, die sich auf Online-Aktualisierung bezieht, erzielen kann, wenn Steuerdaten aktualisiert werden.
  • <Effekt der vorliegenden Offenbarung>
  • Gemäß dieser Offenbarung ist es möglich, sowohl eine Verbesserung bei der Anwenderbequemlichkeit als auch ein Vermeiden von Belastungen an der Vorrichtungskonfiguration, die sich auf Online-Aktualisierung bezieht, zu erzielen.
  • [Beschreibung von Ausführungsformen]
  • Ausführungsformen der vorliegenden Offenbarung beinhalten zumindest das Nachfolgende.
    1. (1) Eine in den vorliegenden Ausführungsformen enthaltende Relais-Einrichtung ist eine Relais-Einrichtung, die konfiguriert ist, ein Aktualisierungsprogramm, welches aus einem Server heruntergeladen wird, für ein Steuerprogramm einer Fahrzeugsteuervorrichtung, an die Fahrzeugsteuervorrichtung zu übertragen. Die Relais-Einrichtung beinhaltet: eine Recheneinheit, die konfiguriert ist, einen sich auf ein Verhältnis zwischen einer Größe des Steuerprogramms und einer Größe des Aktualisierungsprogramms beziehenden Indexwert zu berechnen; und eine Übertragungssteuereinheit, die konfiguriert ist, zu bestimmen, ob die Übertragung zu gestatten ist oder nicht, auf Basis des berechneten Indexwerts. Es gibt Fälle, bei denen die Vorrichtungskonfigurationen, die sich auf Online-Aktualisierung beziehen, wie etwa die verfügbare Bandbreite bei der Fahrzeugkommunikationsleitung, mit welcher die Fahrzeugsteuervorrichtung verbunden ist, und die Größe des Speichers in der Fahrzeugsteuervorrichtung beziehenden Vorrichtungskonfiguration sich auf die Größe des Steuerprogramms der Fahrzeugsteuervorrichtung bezieht. In diesem Fall wird eine Bestimmung, ob die Übertragung des Aktualisierungsprogramms an die Fahrzeugsteuervorrichtung zu erlauben ist oder nicht, basierend auf dem Indexwert durchgeführt, der das Verhältnis zwischen der Größe des Steuerprogramms und der Größe des Aktualisierungsprogramms angibt, wobei die Übertragung gemäß der sich auf die Online-Aktualisierung beziehenden Vorrichtungskonfigurationen ausgeführt wird. Daher, indem das Verhältnis, bei welchem die Übertragung erlaubt ist, angemessen eingestellt wird, ist es möglich, sowohl eine Verbesserung der Anwenderbequemlichkeit als auch die Vermeidung von Belastungen an der Vorrichtungskonfiguration, die sich auf Online-Aktualisierung bezieht, zu erzielen.
    2. (2) Vorzugsweise ist der Indexwert ein Wert, der ein Verhältnis der Größe des Aktualisierungsprogramms zur Größe des Steuerprogramms angibt. Die Übertragungssteuereinheit startet die Übertragung, wenn der Indexwert gleich oder kleiner einem Schwellenwert ist und startet die Übertragung nicht, wenn der Indexwert größer als der Schwellenwert ist. Durch angemessenes Einstellen des Schwellenwertes wird verhindert, dass eine große Aktualisierung durch Online-Aktualisierung ausgeführt wird, während die andere Aktualisierung durch Online-Aktualisierung ausgeführt werden kann. Somit ist es möglich, sowohl eine Verbesserung der Anwenderbequemlichkeit als auch die Vermeidung von Belastungen an der sich auf die Online-Aktualisierung beziehenden Vorrichtungskonfiguration zu erzielen.
    3. (3) Vorzugsweise ist die Relais-Einrichtung mit der Fahrzeugsteuervorrichtung über eine Fahrzeugkommunikationsleitung verbunden und ändert die Fahrzeugsteuereinheit den Schwellenwert gemäß einer verfügbaren Bandbreite der Fahrzeugkommunikationsleitung. Da der Schwellenwert anhand der verfügbaren Bandbreite der Fahrzeugkommunikationsleitung, die mit der Fahrzeugsteuervorrichtung verbunden ist, geändert wird, wird, ob die Übertragung zu erlauben ist oder nicht, bestimmt unter Verwendung des Schwellenwerts gemäß der Fahrzeugkommunikationsleitung, welche für die Übertragung zu verwenden ist. Durch Einstellen des Schwellenwertes auf einen Indexwert, bei welchem die Belastung an Kommunikation durch die Fahrzeugkommunikationsleitung groß ist, ist es möglich, die Übertragung eines Aktualisierungsprogrammes zu verweigern, dass eine große Belastung an der Kommunikation über die Fahrzeugkommunikationsleitung aufweist. Somit kann die Belastung der Fahrzeugkommunikationsleitung aufgrund der Übertragung reduziert werden.
    4. (4) Vorzugsweise ist die Relais-Einrichtung mit der Fahrzeugsteuervorrichtung über eine Fahrzeugkommunikationsleitung verbunden und ändert die Übertragungssteuereinheit den Schwellenwert anhand der Betriebszustände von einer oder einer Vielzahl von Fahrzeugsteuervorrichtungen, die mit der Fahrzeugkommunikationsleitung verbunden sind. Die Bandbreite der Fahrzeugkommunikationsleitung, die für die Übertragung des Aktualisierungsprogramms verfügbar ist, variiert abhängig von den Betriebszuständen der einen oder der Vielzahl von Fahrzeugsteuervorrichtungen, die mit der Fahrzeugkommunikationsleitung verbunden sind. Daher, indem entsprechend den Betriebszuständen der Schwellenwert zu einem Indexwert verändert wird, bei welchem die Belastung auf der Kommunikation durch die Fahrzeugkommunikationsleitung groß ist, ist es möglich, die Übertragung eines Aktualisierungsprogrammes zu verweigern, das eine große Belastung bei der Kommunikation durch die Fahrzeugkommunikationsleitung verursachen kann, wenn Aktualisierungsdaten übertragen werden. Somit kann die Belastung an der Fahrzeugkommunikationsleitung aufgrund der Übertragung verringert werden.
    5. (5) Vorzugsweise, in einem Fall, bei dem der Indexwert größer als der Schwellenwert ist, ändert die Übertragungssteuereinheit den Schwellenwert gemäß den Betriebszuständen und bestimmt wieder, ob die Übertragung zu erlauben ist oder nicht, während einer Periode, in welcher die Aktualisierungsdaten einer vorbestimmten Bedingung zur Suspendierung erfüllen. Es gibt Fälle, bei denen die Übertragung eines Aktualisierungsprogramms, was zu einem vorherigen Zeitpunkt nicht erlaubt war, gestattet werden kann, falls der Schwellenwert sich ändert und die Betriebszustände sich danach ändern. Somit kann die Bequemlichkeit des Anwenders verbessert werden.
    6. (6) Vorzugsweise beinhalten die Betriebszustände eine Fahrgeschwindigkeit des Fahrzeugs, auf welchem die Fahrzeugsteuervorrichtung montiert ist. Wenn die Fahrgeschwindigkeit eines Fahrzeugs hoch ist, wird mehr Information im Fahrzeugnetzwerk ausgetauscht. Daher, indem der Schwellenwert entsprechend der Fahrgeschwindigkeit des Fahrzeugs verwendet wird, kann mit höherer Genauigkeit bestimmt werden, ob die Übertragung zu erlauben ist oder nicht.
    7. (7) Vorzugsweise ist die Relais-Einrichtung mit einer Anwenderschnittstellenvorrichtung verbunden. In einem Fall, bei dem die Übertragungssteuereinheit die Übertragung nicht erlaubt, gibt die Übertragungssteuereinheit ein Steuersignal aus, welches die Anwenderschnittstellenvorrichtung veranlasst, eine Mitteilung vorzunehmen, dass die Übertragung nicht erlaubt ist. Die Anwenderschnittstellenvorrichtung ist beispielsweise eine Anzeige, ein Lautsprecher oder dergleichen. Das aus der Anwenderschnittstellenvorrichtung ausgegebene Steuersignal veranlasst die Anwenderschnittstellenvorrichtung, mitzuteilen, dass das Aktualisierungsprogramm nicht an die Fahrzeugsteuervorrichtung übertragen wird, mit anderen Worten, dass die Online-Aktualisierung nicht ausgeführt wird. Diese Mitteilung gestattet dem Anwender, eine notwendige Gegenmaßnahme zur Aktualisierung des Steuerprogrammes zu ergreifen. Somit kann die Bequemlichkeit des Anwenders verbessert werden.
    8. (8) Vorzugsweise startet die Übertragungssteuereinheit die Herunterladung aus dem Server, wenn die Übertragungssteuereinheit die Übertragung gestattet. Die Relais-Einrichtung startet das Herunterladen eines Aktualisierungsprogramms aus dem Server und überträgt das heruntergeladene Aktualisierungsprogramm an die Fahrzeugsteuervorrichtung. Daher muss das heruntergeladene Aktualisierungsprogramm nicht eine lange Zeit gespeichert werden, wodurch verhindert wird, dass der Speicher niedergedrückt wird.
    9. (9) Ein Übertragungsverfahren, das in den Ausführungsformen der vorliegenden Offenbarung enthalten ist, ist ein Verfahren zum Übertragen eines Aktualisierungsprogramms, das von einem Server heruntergeladen wird, für ein Steuerprogramm einer Fahrzeugsteuervorrichtung, an die Fahrzeugsteuervorrichtung, in der Relais-Einrichtung gemäß einem der Obigen (1) bis (8). Dieses Herunterladeverfahren stellt dieselben Effekte wie jene der Relais-Vorrichtungen gemäß den Obigen (1) bis (8) bereit.
    10. (10) Ein in den Ausführungsformen der vorliegenden Offenbarung beinhaltetes Computerprogramm veranlasst einen Computer, als die Relais-Einrichtung gemäß einem der Obigen (1) bis (8) zu fungieren.
  • Dieses Computerprogramm stellt dieselben Effekte bereit wie jene der Relais-Einrichtungen gemäß dem Obigen (1) bis (8).
  • [Detaillierte Beschreibung von Ausführungsformen]
  • Nachfolgend werden bevorzugte Ausführungsformen unter Bezugnahme auf die Zeichnungen beschrieben. In der nachfolgenden Beschreibung beziehen sich dieselben Bezugszeichen auf dieselben Komponenten und Bestandteile. Die Namen und Funktionen derselben sind auch die gleichen. Daher wird eine wiederholte Beschreibung derselben nicht notwendig sein.
  • <Erste Ausführungsform>
  • [Gesamtkonfiguration von System]
  • 1 ist ein Diagramm, das eine Gesamtkonfiguration eines Programmaktualisierungssystems gemäß einer Ausführungsform zeigt.
  • Wie in 1 gezeigt, beinhaltet das Programmaktualisierungssystem dieser Ausführungsform Fahrzeuge 1, einen Verwaltungsserver 5, und einen DL (download) Server 6, die miteinander über ein Weitbereichs-Kommunikationsnetzwerk 2 kommunizierbar sind.
  • Der Verwaltungsserver 5 verwaltet die Aktualisierungsinformation jedes Fahrzeugs 1. Der DL-Server 6 speichert darin Aktualisierungsprogramme. Der Verwaltungsserver 5 und ein DL-Server 6 werden beispielsweise durch den Automobilhersteller der Fahrzeuge 1 betrieben und sind mit einer großen Anzahl von Fahrzeugen 1 kommunizierbar, die von als Mitglieder vorab registrierten Anwendern besessen werden.
  • Jedes Fahrzeug 1 ist versehen mit: einem Fahrzeugnetzwerk (Kommunikationsnetzwerk) 4, das eine Vielzahl von ECUs 30 und einen Gateway 10 enthält, die über Fahrzeugkommunikationsleitungen 16 verbunden sind; eine Drahtlos-Kommunikationseinheit 15; und verschiedene Fahrzeugvorrichtungen (nicht gezeigt), welche durch die jeweiligen ECUs 30 gesteuert werden. Die Fahrzeugvorrichtungen beinhalten eine Anwenderschnittstellenvorrichtung 7, wie etwa eine Anzeige oder einen Lautsprecher.
  • Das Fahrzeugnetzwerk 4 weist eine Vielzahl von Fahrzeugkommunikationsleitungen 16A und 16B auf und beinhaltet eine Vielzahl von Kommunikationsgruppen, die alle aus einer Vielzahl von ECUs 30 bestehen, die mit den jeweiligen Fahrzeugkommunikationsleitungen 16A und 16B busverbunden sind. Der Gateway 10 leitet die Kommunikation zwischen den Kommunikationsgruppen weiter. Daher sind die Fahrzeugkommunikationsleitungen 16A und 16B mit dem Gateway 10 verbunden. Die Fahrzeugkommunikationsleitungen 16A und 16B werden auch kollektiv als Fahrzeugkommunikationsleitungen 16 bezeichnet.
  • Die Drahtlos-Kommunikationseinheit 15 ist kommunizierbar mit dem Weitbereichs-Kommunikationsnetzwerk 2 wie etwa einem Mobiltelefonnetzwerk verbunden und ist mit dem Gateway 10 über eine Fahrzeugkommunikationsleitung verbunden. Die Drahtlos-Kommunikationseinheit 15 empfängt Information aus externen Vorrichtungen, wie etwa dem Verwaltungsserver 5 und dem DL-Server 6 über das Weitbereichs-Kommunikationsnetzwerk 2 und der Gateway 10 sendet die Information an die ECUs 30 über die Fahrzeugkommunikationsleitung 16.
  • Der Gateway 10 sendet aus den ECUs 30 erhaltene Informationen an die Drahtlos-Kommunikationseinheit 15 und die Drahtlos-Kommunikationseinheit 15 sendet die Information an die externen Vorrichtungen wie den Verwaltungsserver 5.
  • Die ECUs 30 tauschen Informationen über die Fahrzeugkommunikationsleitung 16 aus.
  • Hinsichtlich der in dem Fahrzeug 1 installierten Drahtlos-Kommunikationseinheit 15 sind Vorrichtungen wie etwa ein Mobiltelefon, ein Smartphone, ein Endgerät von Tablet-Typ und ein Notebook-PC (persönlicher Computer) die vom Anwender besessen werden, zusätzlich zu dem Fahrzeugexklusiv-Kommunikationsendgerät vorstellbar.
  • 1 zeigt einen beispielhaften Fall, bei dem das Gateway 10 mit den externen Vorrichtungen über die Drahtlos-Kommunikationseinheit 15 kommuniziert. Jedoch, falls der Gateway 10 eine Drahtlos-Kommunikationsfunktion aufweist, kann der Gateway 10 selbst drahtlos mit den externen Vorrichtungen, wie etwa dem Verwaltungsserver 5 kommunizieren.
  • In dem in 1 gezeigten Programmaktualisierungssystem sind der Verwaltungsserver 5 und der DL-Server 6 als getrennte Server konfiguriert. Jedoch können diese Server 5 und 5 als eine Einzelservereinheit konfiguriert werden. Jeder vom Verwaltungsserver 5 und dem DL-Server 6 kann aus einer Vielzahl von Vorrichtungen aufgebaut sein.
  • [Interne Konfigurationen von Gateway]
  • 2 ist ein Blockdiagramm, welches die interne Konfiguration des Gateways 10 zeigt.
  • Wie in 2 gezeigt, beinhaltet der Gateway 10 eine CPU 11, ein RAM (Wahlfrei-Zugriffsspeicher) 12, eine Speichereinheit 13, eine Fahrzeug-Kommunikationseinheit 14 und dergleichen. Obwohl der Gateway 10 mit der Drahtlos-Kommunikationseinheit 15 über die FahrzeugKommunikationsleitung verbunden ist, können der Gateway 10 und die Drahtlos-Kommunikationseinheit 15 miteinander als eine einzelne Vorrichtung integriert sein.
  • Die CPU 11 veranlasst den Gateway 10, als eine Relais-Einrichtung zum Weiterreichen verschiedener Arten von Information zu fungieren, durch Auslesen eines oder einer Vielzahl von in der Speichereinheit 13 gespeicherten Programme in das RAM 12 und Ausführen der gelesenen Programme.
  • Die CPU 11 kann eine Vielzahl von Programmen parallel beispielsweise durch Umschalten zwischen den Programmen in einer Zeitteilerweise ausführen. Die CPU 11 kann eine CPU sein, die eine Vielzahl von CPU-Gruppen repräsentiert. In diesem Fall ist eine durch die CPU 11 zu implementierende Funktion eine Funktion, die durch die Vielzahl von CPU-Gruppen in Kooperation miteinander zu implementieren ist. Das RAM 12 besteht aus einem Speicherelement, wie etwa einem SRAM (statischem RAM) oder einem DRAM (dynamischem RAM), und speichert zeitweilig darin Programme, welche durch die CPU 11 auszuführen sind, für das Ausführen der Programme erforderliche Daten und dergleichen.
  • Ein durch die CPU 11 implementiertes Computerprogramm kann in einem Zustand, in dem es in eigenem bekannten Aufzeichnungsmedium, wie etwa einer CD-ROM oder einer DVD-ROM aufgezeichnet ist, übertragen werden oder kann durch Datenübertragung von einer Computervorrichtung wie etwa einem Servercomputer übertragen werden.
  • In diesem Aspekt gilt das Gleiche für ein durch eine CPU 31 der ECU 30 (siehe 3), die später beschrieben wird, ausgeführtes Computerprogramm und ein durch eine CPU 51 des Verwaltungsservers 5 (siehe 4), der später beschrieben wird, ausgeführtes Computerprogramm.
  • In der nachfolgenden Beschreibung wird übertragen (senden) von Daten aus einer Wirtsvorrichtung an eine Klientenvorrichtung auch als „herunterladen“ bezeichnet.
  • Die Speichereinheit 13 besteht aus einem nicht-flüchtigen Speicherelement, wie etwa einem Flash-Speicher oder einem EEPROM und dergleichen. Die Speichereinheit 13 speichert darin durch die CPU 11 auszuführende Programme, für die Ausführung der Programme erforderliche Daten und dergleichen, und speichert darin auch Aktualisierungsprogramme, die für die jeweiligen ECUs 30 herunterzuladen sind, empfangen aus dem DL-Server 6 und dergleichen.
  • Die Vielzahl von ECUs 30 sind mit der Fahrzeug-Kommunikationseinheit 14 über die Fahrzeugkommunikationsleitungen 16, die im Fahrzeug 1 angeordnet sind, verbunden. Die Fahrzeug-Kommunikationseinheit 14 kommuniziert mit den ECUs 30 beispielsweise gemäß dem Standard von CAN (Controller Area Network). Der Kommunikationsstandard, der durch die Fahrzeug-Kommunikationseinheit 14 verwendbar ist, ist nicht auf CAN beschränkt. Andere Standards wie etwa CANFD (CAN mit flexibler Datenrate), LIN (Local Interconnect Network), Ethernet (registrierte Marke) oder MOST (Media Oriented Systems Transport: MOST ist eine registrierte Marke) können eingesetzt werden. Die Vielzahl von Fahrzeugkommunikationsleitungen 16A und 16B kann Kommunikationsleitungen beinhalten, die auf unterschiedlichen Kommunikationsstandards basieren.
  • Die Fahrzeug-Kommunikationseinheit 14 sendet aus der CPU 11 bereitgestellte Informationen an die Ziel-ECUs 30 und stellt aus den ECUs 30 empfangene Information der CPU 11 zur Verfügung. Die Fahrzeug-Kommunikationseinheit 14 kann mit den ECUs 30 anhand anderer Kommunikationsstandards kommunizieren, welche für das Fahrzeugnetzwerk 4 verwendet werden, neben den obigen Kommunikationsstandards.
  • Die Drahtlos-Kommunikationseinheit 15 beinhaltet eine Drahtlos-Kommunikationseinrichtung, die eine Antenne und eine Kommunikationsschaltung beinhaltet, welche Senden/Empfangen von Funksignalen aus der Antenne ausführt. Die Drahtlos-Kommunikationseinheit 15 ist in der Lage, mit den externen Vorrichtungen zu kommunizieren, wenn sie mit dem Weitbereichs-Kommunikationsnetzwerk 2, wie etwa einem Mobiltelefonnetzwerk, verbunden ist.
  • Die Drahtlos-Kommunikationseinheit 15 sendet Information, die aus der CPU 11 bereitgestellt wird, an die externen Vorrichtungen, wie etwa dem Verwaltungsserver 5, über das Weitbereichs-Kommunikationsnetzwerk 2, das durch eine Basisstation (nicht gezeigt) gebildet ist, und stellt Information, die aus den externen Vorrichtungen empfangen werden, der CPU 11 bereit.
  • Statt der in 2 gezeigten Drahtlos-Kommunikationseinheit 15 kann eine verdrahtete Kommunikationseinheit, die als eine Relais-Einrichtung innerhalb des Fahrzeugs 1 fungiert, eingesetzt werden. Die verdrahtete Kommunikationseinheit weist einen Verbinder auf, mit welchem ein Kommunikationskabel, das einem Standard wie etwa USB (Universal Serial Bus) oder RS232C entspricht, verbunden ist, und führt verdrahtete Kommunikation mit einer anderen Kommunikationsvorrichtung durch, die damit über das Kommunikationskabel verbunden ist.
  • Falls die andere Kommunikationsvorrichtung und die externe Vorrichtung, wie etwa der Verwaltungsserver 5 miteinander über das Weitbereichs-Kommunikationsnetzwerk 2 drahtlos kommunizieren können, werden die externe Vorrichtung und der Gateway 10 miteinander über einen Kommunikationspfad kommunizierbar, der aus dieser Reihenfolge der externen Vorrichtung, der anderen Kommunikationsvorrichtung, der verdrahteten Kommunikationseinheit und dem Gateway 10 besteht.
  • [Interne Konfigurationen von ECU]
  • 3 ist ein Blockdiagramm, welches die interne Konfiguration einer ECU 30 zeigt.
  • Wie in 3 gezeigt, beinhaltet die ECU 30 eine CPU 31, ein RAM 32, eine Speichereinheit 33, eine Kommunikationseinheit 34 und dergleichen. Die ECU 30 ist eine Fahrzeugsteuervorrichtung, die getrennt eine in dem Fahrzeug 1 installierte Zielvorrichtung steuert. Beispiele der Typen von ECU 30 beinhalten eine Stromversorgungssteuer-ECU, eine Motorsteuer-ECU, eine Lenkungssteuer-ECU und eine Türverriegelungssteuer-ECU.
  • Die CPU 31 steuert den Betrieb einer Zielvorrichtung unter der Regie der CPU 31 durch Auslesen einer Vielzahl von zuvor in der Speichereinheit 33 gespeicherten Programme in das RAM 32 und Ausführen der gelesenen Programme. Die CPU 31 kann auch eine CPU sein, die eine Vielzahl von CPU-Gruppen repräsentiert, und eine durch die CPU 31 durchzuführende Steuerung kann durch die Vielzahl von CPU-Gruppen in Kooperation miteinander durchgeführt werden.
  • Das RAM 32 besteht aus einem Speicherelement wie etwa einem SRAM oder einem DRAM und speichert temporär darin Programme, welche durch die CPU 31 auszuführen sind, bei der Ausführung der Programme erforderliche Daten und dergleichen.
  • Die Speichereinheit 33 besteht beispielsweise aus einem nicht-flüchtigen Speicherelement, wie etwa einem Flash-Speicher oder einem EEPROM, oder einer Magnetspeichervorrichtung wie einer Festplatte.
  • Die Speichereinheit 33 speichert darin durch die CPU 31 einzulesende und auszuführende Programme. Beispiele von in der Speichereinheit 33 gespeicherte Information beinhalten: ein Computerprogramm, welches die CPU 31 veranlasst, Informationsverarbeitung zum Steuern von Zielausrüstung auszuführen, die ein Fahrzeugsteuerziel ist; und ein Steuerprogramm, das aus Daten besteht, die beim Ausführen des Programms zu verwenden sind, wie etwa Parameter und Karteninformation.
  • Der Gateway 10 ist mit der Kommunikationseinheit 34 über die in dem Fahrzeug 1 angeordnete Fahrzeugkommunikationsleitung 16 verbunden.
  • Die Kommunikationseinheit 34 kommuniziert mit dem Gateway 10 beispielsweise anhand eines Standards wie etwa CAN, Ethernet oder MOST.
  • Die Kommunikationseinheit 34 sendet aus der CPU 31 bereitgestellte Information an den Gateway 10 und stellt aus dem Gateway 10 empfangene Information der CPU 31 bereit. Die Kommunikationseinheit 34 kann mit dem Gateway 10 anhand anderer Kommunikationsstandards kommunizieren, die für das Fahrzeugnetzwerk verwendet werden, außer den obigen Kommunikationsstandards.
  • Die CPU 31 der ECU 30 beinhaltet eine Starteinheit 35, welche den Modus der durch die CPU 31 durchgeführten Steuerung zwischen einem „Normalmodus“ und einem „Neuprogrammiermodus“ umschaltet (nachfolgend auch als „Repro-Modus“ bezeichnet).
  • Der Normalmodus ist ein Steuermodus, in welchem die CPU 31 der ECU 30 einer Original-Steuerung für die Zielvorrichtung (z. B. Motorsteuerung für einen Verbrennungsmotor oder Türverriegelungssteuerung für einen Türverriegelungsmotor) ausführt.
  • Der Reprogrammierungsmodus ist ein Steuermodus, in welchem die CPU 31 das Steuerprogramm, das zum Steuern der Zielvorrichtung verwendet wird, aktualisiert.
  • Das heißt, dass der Reprogrammiermodus ein Steuermodus ist, in welchem die CPU löschen/überschreiben von Daten des Steuerprogrammes aus/in einem ROM-Bereich in der Speichereinheit 33 durchführt. Die CPU 31 kann nur in diesem Steuermodus das in dem ROM-Bereich in der Speichereinheit 33 gespeicherte Steuerprogramm auf die neue Version aktualisieren.
  • Im Repro-Modus, wenn die CPU 31 die neue Version des Steuerprogrammes in die Speichereinheit 33 schreibt, startet die Starteinheit 35 zeitweilig die ECU 30 (resettet sie) und führt einen Verifizierungsprozess in einem Speicherbereich durch, wo die neue Version des Steuerprogramms geschrieben worden ist. Nach Abschluss des Verifizierungsprozesses betreibt die Starteinheit 35 die CPU 31 mit dem aktualisierten Steuerprogramm.
  • Ein Prozess des Herunterladens eines Aktualisierungsprogramms auf eine ECU 30 aus dem DL-Server 6 über den Gateway 10 und Aktualisieren des Steuerprogrammes unter Verwendung des Aktualisierungsprogramms wird auch als Online-Aktualisierung bezeichnet.
  • [Interne Struktur von Verwaltungsserver]
  • 4 ist ein Blockdiagramm, welches die interne Struktur des Verwaltungsservers 5 zeigt.
  • Wie in 4 gezeigt, beinhaltet der Verwaltungsserver 5 eine CPU 51, ein ROM 52, ein RAM 53, eine Speichereinheit 54, eine Kommunikationseinheit 55 und dergleichen.
  • Durch Auslesen eines oder einer Vielzahl von Programmen, die zuvor im ROM 52 gespeichert wurden, in das RAM 53 und Ausführen der gelesenen Programme steuert die CPU 51 den Betrieb jeder Hardware-Komponente und veranlasst den Verwaltungsserver 5, als eine externe Vorrichtung zu fungieren, die mit dem Gateway 10 kommunizieren kann. Die CPU 51 kann auch eine CPU sein, die eine Vielzahl von CPU-Gruppen repräsentiert, und eine durch die CPU 51 zu implementierende Funktion kann eine Funktion sein, welche durch die Vielzahl von CPU-Gruppen in Kooperation miteinander zu implementieren ist.
  • Das RAM 53 besteht aus einem Speicherelement, wie etwa einem SRAM oder einem DRAM und speichert zeitweilig darin Programme, welche durch die CPU 51 auszuführen sind, bei der Ausführung der Programme erforderliche Daten und dergleichen.
  • Die Speichereinheit 54 besteht beispielsweise aus einem nicht-flüchtigen Speicherelement, wie etwa einem Flash-Speicher oder einem EEPROM, oder einer Magnetspeichervorrichtung wie etwa einer Festplatte.
  • Die Kommunikationseinheit 55 besteht aus einer Kommunikationsvorrichtung, die einen Kommunikationsprozess anhand eines vorbestimmten Kommunikationsstandards ausführt. Die Kommunikationseinheit 55 führt den Kommunikationsprozess aus, während sie mit dem Weitbereichs-Kommunikationsnetzwerk 2, wie etwa einem Mobiltelefonnetzwerk verbunden ist. Die Kommunikationseinheit 55 sendet Information, die aus der CPU 51 bereitgestellt wird, über das Weitbereichs-Kommunikationsnetzwerk 2 an externe Vorrichtungen und stellt Information, welche über das Weitbereichs-Kommunikationsnetzwerk 2 empfangen werden, der CPU 51 bereit.
  • [Steuerprogramm-Aktualisierungssequenz]
  • 5 ist ein Sequenzdiagramm, das ein Beispiel eines Ablaufs der Aktualisierung eines Steuerprogramms zeigt, welcher durch das Programmaktualisierungssystem der vorliegenden Ausführungsform ausgeführt wird. Eine oder eine Vielzahl von Aktualisierungsprogrammen sind im DL-Server 6 gespeichert und beispielsweise bestimmt der Verwaltungsserver 5 einen Zeitpunkt zum Aktualisieren eines Steuerprogrammes einer ECU des Fahrzeugs 1. Das Timing der Aktualisierung kann beispielsweise durch den Automobilhersteller des Fahrzeugs 1 eingestellt werden.
  • Ein Steuerprogramm ist nicht auf das Programm selbst beschränkt und kann Daten, wie etwa Parameter und Karteninformation, die beim Ausführen des Programmes zu verwenden sind, beinhalten. Der Ausdruck „Steuerprogramm“ repräsentiert sowohl das Programm als auch die Daten. Gleichermaßen beinhaltet ein Aktualisierungsprogramm nicht nur ein Programm zum Aktualisieren eines Programms, sondern auch Daten zum Aktualisieren von Daten, die bei der Ausführung des Programms verwendet werden.
  • Wenn ein Zeitpunkt des Aktualisierens des Steuerprogrammes eingetreten ist, teilt der Verwaltungsserver 5 dem Gateway 10 des entsprechenden Fahrzeugs 1 die Aktualisierung mit (Schritt S1). Im Schritt 1 wird Information zum Update, wie etwa Ziel-URL des Aktualisierungsprogramms und die Größe des Aktualisierungsprogramms zusammen mit der Herunterladeanfrage aus dem Verwaltungsserver 5 auf den Gateway 10 gesendet.
  • Bei Empfangen der Mitteilung der Aktualisierung aus dem Verwaltungsserver 5 führt der Gateway 10 einen Herunterlade-Steuerprozess durch (Schritt S2). Der Herunterlade-Steuerprozess beinhaltet einen Prozess des Bestimmens, ob die Übertragung des Aktualisierungsprogramms an die ECU 30 zu erlauben ist oder nicht, und Ausführen der Übertragung, basierend auf dem Bestimmungsergebnis. Dieser Prozess wird später im Detail beschrieben.
  • Wenn die Übertragung des Aktualisierungsprogramms an die ECU 30 über den Herunterlade-Steuerprozess im Schritt 2 erlaubt ist, leitet der Gateway 10 das aus dem DL-Server 6 heruntergeladene Aktualisierungsprogramm an die ECU 30 weiter. Das heißt, basierend auf der Information zur Aktualisierung, fordert der Gateway 10 den DL-Server 6 auf, das Aktualisierungsprogramm herunterzuladen (Schritt S3) und wird das Aktualisierungsprogramm aus dem DL-Server 6 an den Gateway 10 heruntergeladen.
  • Beim Empfangen der Herunterladeanfrage aus dem Gateway 10 überträgt der DL-Server 6 an den Gateway 10 das herunterzuladende Aktualisierungsprogramm und fordert Aktualisierung des Steuerprogramms an (Schritt S4).
  • Der Gateway 10 lädt das Aktualisierungsprogramm herunter und überträgt dann das Aktualisierungsprogramm an die ECU 30 und verlangt Aktualisierung des Steuerprogramms (Schritt S5). Der Gateway 10 kann das Aktualisierungsprogramm beim Empfangen von Erlaubnis der Aktualisierung vom Anwender übertragen.
  • Die ECU 30, die das Aktualisierungsprogramm empfangen hat, expandiert das Aktualisierungsprogramm in Reaktion auf die Anfrage aus dem Gateway 10 und aktualisiert das Steuerprogramm (Schritt S6). Wenn die Aktualisierung abgeschlossen ist, teilt die Ziel-ECU 30 dem Gateway 10 den Abschluss der Aktualisierung mit (Schritt S7). Beim Empfangen dieser Mitteilung teilt der Gateway 10 dem DL-Server 6 den Abschluss der Aktualisierung mit (Schritt S8).
  • [Funktionskonfiguration von Gateway]
  • Unter Bezugnahme auf 2 beinhaltet die CPU 11 des Gateways 10 eine Recheneinheit 111 und eine Herunterlade(DL)-Steuerung 112 als Funktion zum Ausführen des Herunterlade-Steuerprozesses. Diese Funktionen werden durch die CPU 11 implementiert, wenn die CPU 11 ein oder eine Vielzahl von in der Speichereinheit 13 gespeicherten Programmen ausliest und das ausgelesene Programm ausführt. Jedoch kann zumindest ein Teil der Funktionen durch Hardware, wie etwa eine elektronische Schaltung implementiert werden.
  • Die Funktion der als die Recheneinheit 111 repräsentierten CPU 11 (nachfolgend wird diese Funktion als „Recheneinheit 111“ bezeichnet) berechnet einen Indexwert hinsichtlich eines Index, der ein Verhältnis zwischen einer Größe X eines zu aktualisierenden Steuerprogramms und einer Größe ΔX eines Aktualisierungsprogrammes angibt. Der berechnete Indexwert wird zum Bestimmen verwendet, ob die Übertragung des Aktualisierungsprogramms an die Ziel-EPU 30 zu erlauben ist oder nicht. Der Indexwert beträgt beispielsweise ΔX/X. Der Indexwert kann X/ΔX oder X-ΔX sein.
  • Die Recheneinheit 111 kann die Größe X vorab speichern oder kann die Größe X aus der Ziel-ECU 30 erfassen. Die Recheneinheit 111 liest die Größe ΔX aus der Information zur Aktualisierung, die aus dem Verwaltungsserver 5 geliefert wird.
  • Die Funktion der CPU 11, welche durch die DL-Steuereinheit 112 repräsentiert wird (nachfolgend wird diese Funktion als „DL-Steuereinheit 112“ bezeichnet), bestimmt, ob die Übertragung des Aktualisierungsprogramms an die ECU 30 zu erlauben ist oder nicht, auf Basis des Indexwerts. Wenn das Bestimmungsergebnis positiv ist, das heißt wenn die Übertragung erlaubt wird, wird ein Herunterladen aus dem DL-Server 6 gestartet. Wenn das Bestimmungsergebnis negativ ist, das heißt wenn die Übertragung nicht erlaubt wird, wird ein Herunterladen nicht durchgeführt.
  • Die DL-Steuereinheit 112 speichert vorab einen Schwellenwert Th des Indexwerts ΔX/X, bei welchen die Übertragung erlaubt wird. Die DL-Steuereinheit 112 bestimmt, ob die Übertragung zu starten ist oder nicht, auf Basis des Ergebnisses des Vergleichs zwischen dem Indexwert ΔX/X und dem Schwellenwert Th. Das heißt, wenn der Indexwert ΔX/X gleich oder kleiner als der Schwellenwert Th ist, bestimmt die DL-Steuereinheit 112, dass das Aktualisierungsprogramm an die ECU 30 zu übertragen ist, das heißt bestimmt das Herunterladen aus dem DL-Server 6 zu starten. Wenn der Indexwert ΔX/X größer als der Schwellenwert Th ist, bestimmt die DL-Steuereinheit 112, das Aktualisierungsprogramm nicht an die ECU 30 zu übertragen, das heißt bestimmt, das Herunterladen nicht auszuführen.
  • Dass der Indexwert ΔX/X größer ist als der Schwellenwert Th, bedeutet, dass das Verhältnis von zu aktualisierenden Daten groß in Bezug auf das Steuerprogramm ist, was bedeutet, dass der Maßstab des Updates groß ist. Der Indexwert ΔX/X, der gleich oder kleiner als der Schwellenwert Th ist, bedeutet, dass das Verhältnis von zu aktualisierenden Daten klein ist in Bezug auf das Steuerprogramm, was bedeutet, dass der Maßstab des Updates klein ist.
  • [Herunterlade-Steuerprozess]
  • 6 ist ein Flussdiagramm, welches den spezifischen Inhalt des Herunterlade-Steuerprozesses in dem Programmaktualisierungssystem gemäß der ersten Ausführungsform zeigt. Der in dem Flussdiagramm von 6 gezeigte Prozess wird ausgeführt, wenn die CPU 11 des Gateways 10 die Funktionen der Recheneinheit 111 und der DL-Steuereinheit 112 durch Auslesen eines oder einer Vielzahl von Programmen, die in der Speichereinheit 13 gespeichert sind, in das RAM 12 und Ausführen des gelesenen Programmes implementiert. Der in 6 gezeigte Prozess wird wiederholt bei einem vorbestimmten Timing ausgeführt, wie etwa ein vorbestimmtes Zeitintervall, wenn die CPU 11 aktiviert worden ist.
  • Unter Bezug auf 6 bestimmt die CPU 11, ob eine Aktualisierung eines Steuerprogrammes aus dem Verwaltungsserver 5 mitgeteilt worden ist oder nicht, das heißt, ob es ein Aktualisierungsprogramm gibt oder nicht, das herunterzuladen ist (Schritt S101). Wenn es kein herunterzuladendes Aktualisierungsprogramm gibt (Nein im Schritt S101), führt die CPU 11 die nachfolgende Operation nicht durch, und geht in Bereitschaft, bis der nächste vordefinierte Zeitpunkt kommt.
  • Wenn es ein herunterzuladendes Aktualisierungsprogramm gibt (Ja im Schritt S101), erfasst die CPU 11 die Größe ΔX aus der Mitteilung der Aktualisierung, die aus dem Verwaltungsserver 5 empfangen wird. Zusätzlich erfasst die CPU 11 die Größe X aus der Ziel-ECU 30. Dann berechnet die CPU 11 den Indexwert ΔX/X (Schritt S103).
  • Die CPU 11 vergleicht den Indexwert ΔX/X mit dem Schwellenwert Th, der vorab gespeichert wird (Schritt S105). Wenn der Indexwert ΔX/X gleich oder kleiner als der Schwellenwert Th ist (Nein im Schritt S105), gestattet die CPU 11 die Übertragung des Aktualisierungsprogramms an die ECU 30 (Schritt S107). In diesem Fall führt die CPU 11 die Operation ab Schritt S3 in 5 aus.
  • Wenn der Indexwert ΔX/X größer als der Schwellenwert Th ist (Ja im Schritt S105), gestattet die CPU 11 keine Übertragung des Aktualisierungsprogramms an die ECU 30. In diesem Fall gibt die CPU 11 ein Steuersignal aus, welches die Anwenderschnittstellenvorrichtung 7 veranlasst, eine Mitteilung an die ECU 30 zu geben, welche die Anwenderschnittstellenvorrichtung 7 steuert. Somit wird eine Mitteilung durch die Anwenderschnittstellenvorrichtung durchgeführt (Schritt S109). In diesem Fall wird die Operation ab Schritt S3 in 5 nicht durchgeführt.
  • Beispiele der Mitteilung in Schritt S109 beinhalten: eine Mitteilung, die angibt, dass das Aktualisierungsprogramm nicht an die ECU 30 übertragen wird; eine Mitteilung, die den Anwender auffordert, das Fahrzeug 1 anzuhalten und das Fahrzeug 1 in den Repro-Modus zu versetzen; und Mitteilung, die eine Aktualisierung des Steuerprogramms durch einen Händler verlangt. Diese Mitteilung gestattet dem Anwender zu wissen, dass das Aktualisierungsprogramm nicht auf die ECU 30 übertragen ist, mit anderen Worten, dass eine Online-Aktualisierung nicht ausgeführt wird. Daher kann der Anwender eine Gegenmaßnahme zur Aktualisierung des Steuerprogramms ergreifen, wie etwa, das Fahrzeug 1 zu veranlassen, zu stoppen und in den Repro-Modus zu gehen, oder Parken des Fahrzeugs 1 und den Händler nach einer Aktualisierung des Steuerprogrammes zu fragen.
  • Durch die vorerwähnte Operation beendet die CPU 11 für ein Aktualisierungsprogramm die Bestimmung, ob die Übertragung dieses Aktualisierungsprogramms an eine ECU 30 durchzuführen ist oder nicht. Die CPU 11 wiederholt die obige Operation. Daher bestimmt die CPU 11, ob die Übertragung eines nächsten Aktualisierungsprogramms an eine ECU 30 zu erlauben ist oder nicht. Das heißt, wenn die Übertragung eines gewissen Aktualisierungsprogramms an eine ECU 30 nicht erlaubt wird, wird bestimmt, ob die Übertragung eines nächsten Aktualisierungsprogrammes zu erlauben ist oder nicht. Wenn das Bestimmungsergebnis positiv ist, wird ein Herunterladen dieses Aktualisierungsprogramms aus dem DL-Server 6, wie auch dessen Übertragung an die ECU 30, gestartet. Somit kann eine Vielzahl von Aktualisierungsprogrammen effizient an die entsprechenden ECUs 30 übertragen werden, wodurch die Aktualisierung der entsprechenden Steuerprogramme effizient durchgeführt wird.
  • [Effekt der ersten Ausführungsform]
  • In dem Programm-Aktualisierungssystem gemäß der ersten Ausführungsform, wenn die Größe ΔX des Aktualisierungsprogramms kleiner als die Größe X eines zu aktualisierenden Steuerprogrammes ist, mit anderen Worten, wenn der Aktualisierungsmaßstab kleiner als ein vorbestimmter Maßstab ist, wird das Aktualisierungsprogramm an die entsprechende ECU 30 übertragen und wird das Steuerprogramm aktualisiert. Wenn die Aktualisierung groß ist, wird das Aktualisierungsprogramm nicht an die ECU 30 übertragen und daher wird eine Online-Aktualisierung nicht ausgeführt.
  • Es gibt Fälle, bei denen die sich auf Online-Aktualisierung beziehenden Vorrichtungskonfigurationen, wie etwa eine verfügbare Bandbreite (Kommunikationsrate) einer Fahrzeugkommunikationsleitung 16, mit welcher eine Ziel-ECU 30 verbunden ist, und die Speicherkapazität der Speichereinheit 33 in der ECU 30 sich auf die Größe des Steuerprogramms der ECU 30 beziehen. Das heißt, wenn die Größe des Steuerprogramms groß ist, kann auch die verfügbare Bandbreite der Fahrzeugkommunikationsleitung 16 oder die Speicherkapazität der ECU 30 im Verhältnis mit der Größe groß sein. In diesem Fall, falls eine große Aktualisierung durch Online-Update ausgeführt wird, kann diese Aktualisierung einen Anstieg bei der Kommunikationsbelastung auf der Fahrzeugkommunikationsleitung 16 verursachen, oder eine Niederschlagung des Speichers in der ECU 30. Andererseits, falls eine gleichförmige maximale Größe für Aktualisierungsprogramme eingestellt wird, die gestattet sind, übertragen zu werden, kann es Fälle geben, bei denen abhängig von der Fahrzeugkommunikationsleitung 16 die Kommunikationslast aufgrund der Übertragung des Aktualisierungsprogramms nicht steigt, weil die verfügbare Bandbreite der Fahrzeugkommunikationsleitung 16 groß ist und wobei abhängig von der ECU 30 der Aktualisierungsprozess den Speicher nicht stark niederschlägt, weil die Speicherkapazität groß ist. In diesen Fällen, falls bestimmt wird, die Online-Aktualisierung nicht auszuführen, wird die Bequemlichkeit des Anwenders beeinträchtigt.
  • Derweil, da das Programmaktualisierungssystem gemäß der ersten Ausführungsform bestimmt, ob die Übertragung eines Aktualisierungsprogrammes zu erlauben ist oder nicht, auf Basis des Verhältnisses zwischen der Größe X und der Größe ΔX, wird die Belastung an der Vorrichtungskonfiguration, die sich auf die Online-Aktualisierung bezieht, in der Bestimmung wiedergespiegelt, ob die Übertragung zu erlauben ist oder nicht. Daher ist es im Programmaktualisierungssystem gemäß der ersten Ausführungsform möglich, ein Steuerprogramm zu aktualisieren, während sowohl eine Verbesserung von Anwenderbequemlichkeit als auch Vermeidung von Belastungen an der Vorrichtungskonfiguration, die sich auf die Online-Aktualisierung bezieht, erzielt werden.
  • <Modifikation>
  • Der vorgenannte Schwellenwert Th kann anhand der verfügbaren Bandbreiten der Fahrzeugkommunikationsleitungen 16 variiert werden, die für die Übertragung von Aktualisierungsprogrammen verwendet werden und mit denen die ECUs 30 verbunden sind. Mit anderen Worten kann die Vielzahl von Fahrzeugkommunikationsleitungen 16A und 16B Fahrzeugkommunikationsleitungen 16 mit unterschiedlichen verfügbaren Bandbreiten beinhalten. Hinsichtlich der verfügbaren Bandbreite jeder Fahrzeugkommunikationsleitung 16 kann eine Beschränkung bei der Kommunikationskapazität (Restkapazität) bei der Kommunikation mit dem Gateway 10 erwogen werden.
  • In diesem Fall speichert die DL-Steuereinheit 112 Schwellwerte Th entsprechend den verfügbaren Bandbreiten der Fahrzeugkommunikationsleitungen 16 vorab. Die DL-Steuereinheit 112 bestimmt, ob die Übertragung eines Aktualisierungsprogramms unter Verwendung eines Schwellenwerts Th entsprechend der Fahrzeugkommunikationsleitung 16 zu erlauben ist oder nicht, mit welcher eine ECU 30 als ein Zielort des Aktualisierungsprogramms verbunden ist.
  • Wie oben beschrieben wird, ob eine Übertragung eines Aktualisierungsprogramms erlaubt wird oder nicht, bestimmt unter Verwendung eines Schwellenwerts Th entsprechend einer Fahrzeugkommunikationsleitung 16, welche für die Übertragung des Aktualisierungsprogramms zu verwenden ist. Somit kann bestimmt werden, ob die Übertragung durchzuführen ist oder nicht, entsprechend der verfügbaren Bandbreite der Fahrzeugkommunikationsleitung 16, die für die Übertragung zu verwenden ist. Durch Einstellen des Schwellenwerts Th auf einen Indexwert, bei welchen die Belastung der Kommunikation durch die Fahrzeugkommunikationsleitung 16 groß ist, wird eine Übertragung eines Aktualisierungsprogramms mit einer großen Belastung bei der Kommunikation durch die Fahrzeugkommunikationsleitung 16 nicht erlaubt. Somit kann die Belastung der Fahrzeugkommunikationsleitung 16 aufgrund der Übertragung des Aktualisierungsprogramms reduziert werden.
  • [Zweite Ausführungsform]
  • Im Programmaktualisierungssystem gemäß der ersten Ausführungsform speichert der Gateway 10 die Schwellenwerte Th vorab. Jedoch variiert die Bandbreite einer Fahrzeugkommunikationsleitung 16, die für die Übertragung eines Aktualisierungsprogramms verfügbar ist, abhängig von den Betriebszuständen einer der Vielzahl von ECUs 30, welche mit der Fahrzeugkommunikationsleitung 16 verbunden sind, mit welcher eine ECU 30 als ein Ziel, auf welches das Aktualisierungsprogramm übertragen wird, verbunden ist. Beispiele der Betriebszustände beinhalten: die Fahrgeschwindigkeit des Fahrzeugs 1; die Typen und Anzahl von arbeitenden ECUs 30; die Betriebsniveaus der einen oder der Vielzahl von ECUs 30; und eine Kombination derselben.
  • Wenn beispielsweise die Fahrgeschwindigkeit des Fahrzeugs 1 hoch ist, wird mehr Information auf einer Fahrzeugkommunikationsleitung 16 ausgetauscht und daher wird die Bandbreite für die Fahrzeugkommunikationsleitung 16, die zur Übertragung eines Aktualisierungsprogramms verfügbar ist, eingeengt. Weiter, wenn die Fahrgeschwindigkeit des Fahrzeugs 1 hoch ist, kann die maximale Belegung, die für die Fahrzeugkommunikationsleitung 16 erlaubt ist, auf niedrig eingestellt werden und daher wird die Bandbreite der Fahrzeugkommunikationsleitung 16, welche für die Übertragung des Aktualisierungsprogramms verfügbar ist, eingeengt.
  • Weiter, je größer die Anzahl von arbeitenden ECUs 30 von der Vielzahl von ECUs 30 ist, desto mehr Information wird zwischen den ECUs 30 ausgetauscht und daher wird die Bandbreite der Fahrzeugkommunikationsleitung 16, welche für die Übertragung des Aktualisierungsprogramms verfügbar ist, eingeengt. Zusätzlich können die arbeitenden ECUs 30 einen anderen Kommunikationsverkehr auf der Fahrzeugkommunikationsleitung 16 aufweisen. Wenn ECUs 30 mit großem Kommunikationsverkehr betrieben werden, wird mehr Information auf der Fahrzeugkommunikationsleitung 16 ausgetauscht und daher wird die Bandbreite der Fahrzeugkommunikationsleitung 16, die für die Übertragung des Aktualisierungsprogramms verfügbar ist, eingeengt.
  • Wenn beispielsweise eine ECU 30 oder eine Vielzahl von ECUs 30 in Kooperation zu einer Fahrunterstützungsfunktion beiträgt/beitragen, kann der Kommunikationsverkehr der Fahrzeugkommunikationsleitung 16 abhängig von dem Unterstützungsniveau der Fahrunterstützungsfunktion variieren. Auf einem Unterstützungsniveau, welches verursacht, dass der Kommunikationsverkehr hoch ist, wird mehr Information auf der Fahrzeugkommunikationsleitung 16 ausgetauscht und daher wird die Bandbreite der Fahrzeugkommunikationsleitung 16, welche für die Übertragung des Aktualisierungsprogramms verfügbar ist, eingeengt.
  • Daher wird im Programmaktualisierungssystem gemäß der zweiten Ausführungsform der Schwellenwert Th verändert (bestimmt) entsprechend den Betriebszuständen einer oder einer Vielzahl von ECUs 30, die mit der Fahrzeugkommunikationsleitung 16 verbunden sind, zusammen mit der ECU 30 als einem Übertragungsziel. Die ECU 30 als ein Übertragungsziel kann in der einen oder der Vielzahl von ECUs 30 enthalten sein.
  • Die DL-Steuereinheit 112 des Gateways 10 gemäß der zweiten Ausführungsform bestimmt, ob die Übertragung des Aktualisierungsprogrammes zu gestatten ist, auf Basis von: einem Verhältnis zwischen der Größe X eines Steuerprogramms in der Größe ΔX des Aktualisierungsprogramms; und den Betriebszuständen einer oder einer Vielzahl von ECUs 30, welche mit der Fahrzeugkommunikationsleitung 16 zusammen mit einer ECU 30 als einem Übertragungsziel verbunden sind. Für den Zweck des Bestimmens, ob die Übertragung unter Berücksichtigung der Betriebszustände zu erlauben ist, ändert die DL-Steuereinheit 112 gemäß der zweiten Ausführungsform den Schwellenwert Th auf Basis der Betriebszustände.
  • Die Betriebszustände ändern sich in einer fließenden Weise. Somit, selbst wenn der Indexwert ΔX/X des Aktualisierungsprogramms gleich oder größer dem Schwellenwert Th ist, falls das Aktualisierungsprogramm die vorbestimmte Bedingung zur Suspendierung erfüllt, suspendiert die DL-Steuereinheit 112 gemäß der zweiten Ausführungsform die Bestimmung, das Aktualisierungsprogramm nicht an die ECU 30 zu übertragen. Beispiele der Bedingung zur Suspendierung beinhalten: die aktuelle Zeit, wenn sie innerhalb eines vorbestimmten Zeitraums von dann, wenn das Aktualisierungsprogramm als herunterladbar bestimmt worden ist, liegt; die Anzahl von Malen der Bestimmung, ob das Aktualisierungsprogramm, zu übertragen ist oder nicht, innerhalb einer vorbestimmten Anzahl liegt; ein anderes Aktualisierungsprogramm, das herunterzuladen ist, im DL-Server 6 vorhanden ist, und eine Kombination davon.
  • Als ein Beispiel speichert die DL-Steuereinheit 112 eine Korrespondenzbeziehung zwischen den Betriebszuständen und den Schwellenwerten Th vorab. Die DL-Steuereinheit 112 liest einen Schwellenwert Th entsprechend einem Betriebszustand aus der Korrespondenzbeziehung aus. Als ein anderes Beispiel kann die DL-Steuereinheit 112 vorab eine Rechenformel für einen Schwellenwert Th mit einem Index, der einen Betriebszustand repräsentiert, als einen Parameter speichern. In diesem Fall berechnet die DL-Steuereinheit 112 den Schwellenwert Th durch Substituieren eines Indexwertes des Indexes, der den Betriebszustand repräsentiert, in die Rechenformel. Beispielsweise ist der den Betriebszustand repräsentierende Index die Fahrgeschwindigkeit des Fahrzeugs 1 und ist die Geschwindigkeit als Indexwert in die Rechenformel eingesetzt.
  • Falls die Übertragung eines Aktualisierungsprogramms nicht erlaubt ist, wird das Herunterladen dieses Aktualisierungsprogramms aus dem DL-Server 6 nicht zum Zeitpunkt der Bestimmung gestartet, und wird das Aktualisierungsprogramm im DL-Server 6 gehalten als ein herunterzuladendes Aktualisierungsprogramm. In diesem Fall bestimmt die DL-Steuereinheit 112 wieder, ob die Übertragung dieses Aktualisierungsprogrammes zu erlauben ist oder nicht, innerhalb der Periode, in der die Bedingung zur Suspendierung erfüllt ist.
  • Mit sich ändernden Betriebszuständen ändert sich auch der Schwellenwert Th. Daher, selbst wenn die Übertragung eines Aktualisierungsprogramms nicht erlaubt worden ist, kann die Übertragung zu einem späteren Zeitpunkt erlaubt werden, falls der Schwellenwert Th sich ändert. In diesem Fall wird das Herunterladen aus dem DL-Server 6 zu einem späteren Zeitpunkt gestartet.
  • [Übertragungssteuerprozess]
  • 7 ist ein Flussdiagramm, welches den spezifischen Inhalt des Herunterlade-Steuerprozesses in dem Programmaktualisierungssystem gemäß der zweiten Ausführungsform zeigt. Der in dem Flussdiagramm von 7 gezeigte Prozess wird auch ausgeführt, wenn die CPU 11 des Gateways 10 die Funktionen der Recheneinheit 111 und der DL-Steuereinheit 112 implementiert, durch Auslesen eines oder einer Vielzahl von in der Speichereinheit 13 gespeicherten Programme in das RAM 12 und Ausführen des gelesenen Programms. Im Flussdiagramm von 7 sind mit demselben Schritt Nummern wie jene im Flussdiagramm von 6 bezeichnete Operationen dieselben im Inhalt wie die in dem Flussdiagramm von 6 gezeigten Operationen. Nachfolgend werden sich vom Flussdiagramm von 6 unterscheidende Punkte beschrieben.
  • Unter Bezugnahme auf 7, wenn bestimmt wird, ob die Übertragung eines Aktualisierungsprogramms zu erlauben ist oder nicht, bestimmt die CPU 11 einen Schwellenwert Th auf Basis des Betriebszustandes zu dieser Zeit (Schritt S201). Dann vergleicht die CPU 11 den Bestimmungsschwellenwert Th mit einem Indexwert ΔX/X (Schritt S105).
  • Wenn der Indexwert ΔX/X größer als der Schwellenwert Th ist (Ja im Schritt S105), bestimmt die CPU 11 weiter, ob das Aktualisierungsprogramm eine vorbestimmte Bedingung zur Suspendierung erfüllt oder nicht (Schritt S203). Wenn das Aktualisierungsprogramm die Bedingung zur Suspendierung erfüllt (Ja im Schritt S203), suspendiert die CPU 11 die Bestimmung, das Aktualisierungsprogramm nicht zu übertragen. In diesem Fall wird das Aktualisierungsprogramm nicht aus dem DL-Server 6 zu dieser Zeit heruntergeladen, sondern wird im DL-Server 6 gehalten. Dann, nachdem eine vorbestimmte Periode verstrichen ist, nimmt die CPU 11 den Betrieb ab Schritt S201 wieder auf.
  • [Wirkung der zweiten Ausführungsform]
  • Im Programmaktualisierungssystem gemäß der zweiten Ausführungsform, selbst wenn die Übertragung eines Aktualisierungsprogrammes zum Zeitpunkt der vorherigen Bestimmung nicht erlaubt wurde, wird, ob die Übertragung zu erlauben ist oder nicht, wieder innerhalb einer Periode bestimmt, in der das Aktualisierungsprogramm eine vorbestimmte Bedingung zur Suspendierung erfüllt. In diesem Programmaktualisierungssystem wird der Schwellenwert Th anhand von Änderungen in den Betriebszuständen verändert, welche innerhalb der Periode auftreten, in welcher die Bedingung zur Suspendierung erfüllt ist, von einer der Vielzahl von ECUs 30, die mit der Fahrzeugkommunikationsleitung 16 verbunden sind, zusammen mit einer ECU 30 als einem Übertragungsziel. Als Ergebnis, wenn der Indexwert ΔX/X gleich oder kleiner als der Schwellenwert Th wird, wird eine Übertragung dieses Aktualisierungsprogrammes zum Zeitpunkt der nachfolgenden Bestimmung erlaubt. In diesem Fall wird ein Herunterladen vom DL-Server 6 zum Zeitpunkt der nachfolgenden Bestimmung ausgeführt. Daher kann die Bequemlichkeit des Anwenders verbessert werden und kann eine Aktualisierung eines Steuerprogrammes durchgeführt werden, während Belastungen an der Vorrichtungskonfiguration, welche sich auf die Online-Aktualisierung bezieht, vermieden werden, wie etwa ein Anstieg bei der Kommunikationsbelastung und Niederdrückung eines Speichers.
  • <Modifikationen>
  • In dem Programmaktualisierungssystem gemäß den ersten und zweiten Ausführungsformen wird eine Übertragung eines Aktualisierungsprogramms an eine ECU nachfolgend zum Herunterladen dieses Aktualisierungsprogramms aus dem DL-Server 6 auf dem Gateway 10 durchgeführt. Daher wird ein Herunterladen aus dem DL-Server 6 gestartet, wenn die Übertragung erlaubt ist, während das Herunterladen aus dem DL-Server 6 nicht ausgeführt wird, wenn die Übertragung nicht erlaubt ist. Mit anderen Worten ist im Programmaktualisierungssystem gemäß den ersten und zweiten Ausführungsformen eine Bestimmung, ob eine Übertragung eines Aktualisierungsprogramms zu erlauben ist oder nicht, auch eine Bestimmung, ob die Herunterladung aus dem DL-Server 6 zu erlauben ist oder nicht, und daher entspricht der Start der Übertragung dem Start des Herunterladens. Daher führt der Gateway 10 den DL-Steuerprozess (Schritt S2) aus, bevor die Herunterladung des Aktualisierungsprogrammes aus dem DL-Server 6 an die ECU 30, das heißt vor Schritt S3 (5). Somit wird das Aktualisierungsprogramm daran gehindert, in der Speichereinheit 13 des Gateways 10 einen langen Zeitraum lang gehalten zu werden, und der Speicher niedergeschlagen zu sein.
  • Im Programmaktualisierungssystem gemäß einer Modifikation wird die Übertragung des Aktualisierungsprogramms an eine ECU 30 zu einem Zeitpunkt unabhängig vom Herunterladen des Aktualisierungsprogrammes aus dem DL-Server 6 zum Gateway 10 ausgeführt. Das heißt, dass der Gateway 10 das Aktualisierungsprogramm aus dem DL-Server 6 herunterlädt und das Aktualisierungsprogramm in der Speichereinheit 13 speichert und bestimmt, ob die Übertragung des gespeicherten Aktualisierungsprogramms an die ECU 30 zu erlauben ist oder nicht. Mit anderen Worten wird in dem Programmaktualisierungssystem gemäß der Modifikation der DL-Steuerprozess zwischen Schritt S3 und Schritt S4 ausgeführt.
  • In diesem Fall führt die DL-Steuereinheit 112 das Herunterladen des Aktualisierungsprogrammes aus dem DL-Server 6 auf dem Gateway 10 zu einem vorbestimmten Zeitpunkt aus, wie etwa einem Zeitpunkt, wenn der Verwaltungsserver 5 das Herunterladen verlangt. Dann bestimmt die DL-Steuereinheit 112, ob die Übertragung des gespeicherten Aktualisierungsprogrammes an die ECU 30 zu erlauben ist oder nicht, und startet die Übertragung gemäß dem Ergebnis der Bestimmung.
  • Im Programmaktualisierungssystem gemäß der Modifikation kann Herunterladen und Übertragen zu den jeweiligen optimalen Zeitpunkten durchgeführt werden, wodurch ein Online-Aktualisieren effizient durchgeführt wird. Insbesondere im Programmaktualisierungssystem gemäß der zweiten Ausführungsform, selbst wenn eine Übertragung eines Aktualisierungsprogramms nicht erlaubt ist, wird wieder bestimmt, ob die Übertragung zu erlauben ist oder nicht, innerhalb einer Periode, in der das Aktualisierungsprogramm die Bedingung zur Suspendierung erfüllt. In diesem Fall verwirft gemäß der Modifikation der Gateway 10 das Aktualisierungsprogramm nicht, für welches eine Übertragung nicht erlaubt worden ist, sondern hält das Aktualisierungsprogramm in der Speichereinheit 13. Somit, wenn das Aktualisierungsprogramm an die ECU 30 gemäß dem Ergebnis der wieder durchgeführten Bestimmung übertragen wird, kann das Aktualisierungsprogramm an die ECU 30 ohne die Mühen des erneuten Herunterladens des Aktualisierungsprogramms aus dem DL-Server 6 übertragen werden. Daher kann die Gesamtheit der Übertragung des Aktualisierungsprogrammes aus dem DL-Server 6 an die ECU 30 fortgeschritten sein und kann eine unnötige Kommunikation gehemmt werden.
  • Das offenbarte Merkmal wird durch ein oder mehrere Module implementiert. Beispielsweise kann das Merkmal implementiert werden durch: Hardwaremoduln wie etwa Schaltungselemente, etc.; Softwaremoduln, die Prozesse definieren, welche das Merkmal realisieren; oder eine Kombination der Hardwaremoduln und der Softwaremoduln.
  • Das offenbarte Merkmal kann als ein Programm bereitgestellt sein, welches eine Kombination von ein oder mehreren Softwaremoduln ist, um einen Computer zu veranlassen, die vorgenannte Operation auszuführen. Ein solches Programm kann auf einem computerlesbaren Aufzeichnungsmedium aufgezeichnet sein, wie etwa einer flexiblen Disk, einer CD-ROM (Compact Disk - Read Only Memory), einem ROM, einem RAM, einer Speicherkarte, die dem Computer beigeordnet ist und als ein Programmprodukt bereitgestellt wird. Alternativ kann das Programm bereitgestellt werden, indem es auf einem Aufzeichnungsmedium wie etwa einer Festplatte aufgezeichnet wird, die in den Computer inkorporiert ist. Das Programm kann auch dadurch bereitgestellt werden, dass es über ein Netzwerk herunterladbar ist.
  • Das Programm gemäß der vorliegenden Offenbarung kann notwendige Moduln in einem vorbestimmten Raster zu einem vorbestimmten Zeitpunkt aus Programmmodulen aufrufen, die als ein Teil eines Betriebssystems (BS) eines Computers bereitgestellt sind, und kann veranlassen, dass die Verarbeitung ausgeführt wird. In diesem Fall sind die Module nicht im Programm selbst inkludiert und wird die Verarbeitung in Kooperation mit dem BS ausgeführt. Das Programm gemäß der vorliegenden Offenbarung beinhaltet auch ein solches Programm, das keine Moduln beinhaltet.
  • Das Programm der vorliegenden Offenbarung kann bereitgestellt werden, indem es in einen Bereich eines anderen Programms inkorporiert wird. Auch in diesem Fall sind in dem anderen Programm enthaltene Module nicht im Programm selbst enthalten und wird die Verarbeitung in Kooperation mit dem anderen Programm ausgeführt. Das Programm der vorliegenden Offenbarung beinhaltet auch ein solches Programm, das in ein anderes Programm inkorporiert ist. Ein Programmprodukt, das bereitzustellen ist, ist in einen Programmspeichereinheit, wie etwa einer Festplatte, installiert, und wird dann ausgeführt. Das Programmprodukt beinhaltet das Programm selbst und ein Aufzeichnungsmedium, auf welchem das Programm aufgezeichnet wird.
  • Es ist anzumerken, dass die hierin offenbarten Ausführungsformen lediglich in allen Aspekten illustrativ sind und nicht als beschränkend erkannt werden sollten. Der Schutzumfang der vorliegenden Erfindung ist nicht durch die obige Beschreibung definiert, sondern durch den Schutzumfang der Ansprüche und soll Bedeutungsäquivalente zum Schutzumfang der Ansprüche und alle Modifikationen innerhalb des Schutzumfangs beinhalten.
  • Bezugszeichenliste
  • 1
    Fahrzeug
    2
    Weitbereichs-Kommunikationsnetzwerk
    4
    Fahrzeugnetzwerk
    5
    Verwaltungsserver
    6
    DL-Server
    7
    Anwenderschnittstellenvorrichtung
    10
    Gateway (Relais-Einrichtung)
    15
    Drahtlos-Kommunikationseinheit
    16, 16A, 16B
    Fahrzeugkommunikationsleitung
    11
    CPU
    12
    RAM
    13
    Speichereinheit
    14
    Fahrzeug-Kommunikationseinheit
    30
    ECU (Fahrzeugsteuervorrichtung)
    31
    CPU
    32
    RAM
    33
    Speichereinheit
    34
    Kommunikationseinheit
    35
    Starteinheit
    51
    CPU
    52
    ROM
    53
    RAM
    54
    Speichereinheit
    55
    Kommunikationseinheit
    111
    Recheneinheit
    112
    DL-Steuereinheit (Übertragungssteuereinheit)
  • 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 Patentliteratur
    • JP 2017078837 A [0001]
    • JP 2015037938 A [0007]

Claims (10)

  1. Relais-Einrichtung, die konfiguriert ist, ein Aktualisierungsprogramm, für ein Steuerprogramm einer Fahrzeugsteuervorrichtung, an die Fahrzeugsteuervorrichtung zu übertragen, wobei das Aktualisierungsprogramm aus einem Server heruntergeladen wird, wobei die Relais-Einrichtung umfasst: eine Recheneinheit, die konfiguriert ist, einen sich auf ein Verhältnis zwischen einer Größe des Steuerprogramms und einer Größe des Aktualisierungsprogramms beziehenden Indexwert zu berechnen; und eine Übertragungssteuereinheit, die konfiguriert ist, zu bestimmen, ob die Übertragung zu gestatten ist oder nicht, auf Basis des berechneten Indexwerts.
  2. Relais-Einrichtung gemäß Anspruch 1, wobei der Indexwert ein Wert ist, der ein Verhältnis der Größe des Aktualisierungsprogramms zur Größe des Steuerprogramms angibt, und die Übertragungssteuereinheit die Übertragung startet, wenn der Indexwert gleich oder kleiner einem Schwellenwert ist und startet die Übertragung nicht, wenn der Indexwert größer als der Schwellenwert ist.
  3. Relais-Einrichtung gemäß Anspruch 2, die mit der Fahrzeugsteuervorrichtung über eine Fahrzeugkommunikationsleitung verbunden ist, wobei die Fahrzeugsteuereinheit den Schwellenwert gemäß einer verfügbaren Bandbreite der Fahrzeugkommunikationsleitung ändert.
  4. Relais-Einrichtung gemäß Anspruch 2, die mit der Fahrzeugsteuervorrichtung über eine Fahrzeugkommunikationsleitung verbunden ist, wobei die Übertragungssteuereinheit den Schwellenwert anhand der Betriebszustände von einer oder einer Vielzahl von Fahrzeugsteuervorrichtungen, die mit der Fahrzeugkommunikationsleitung verbunden sind ändert.
  5. Relais-Einrichtung gemäß Anspruch 4, wobei in einem Fall, bei dem der Indexwert größer als der Schwellenwert ist, die Übertragungssteuereinheit den Schwellenwert gemäß den Betriebszuständen ändert und wieder bestimmt, ob die Übertragung zu erlauben ist oder nicht, während einer Periode, in welcher die Aktualisierungsdaten einer vorbestimmten Bedingung zur Suspendierung erfüllen.
  6. Relais-Einrichtung gemäß Anspruch 4 oder 5, wobei die Betriebszustände eine Fahrgeschwindigkeit des Fahrzeugs, auf welchem die Fahrzeugsteuervorrichtung montiert ist, beinhalten.
  7. Relais-Einrichtung gemäß einem der Ansprüche 1 bis 6, wobei die Steuervorrichtung mit einer Anwenderschnittstellenvorrichtung verbunden ist, und in einem Fall, bei dem die Übertragungssteuereinheit die Übertragung nicht erlaubt, die Übertragungssteuereinheit ein Steuersignal ausgibt, welches die Anwenderschnittstellenvorrichtung veranlasst, eine Mitteilung vorzunehmen, dass die Übertragung nicht erlaubt ist.
  8. Relais-Einrichtung gemäß einem der Ansprüche 1 bis 6, wobei die Übertragungssteuereinheit die Herunterladung aus dem Server startet, wenn die Übertragungssteuereinheit die Übertragung gestattet.
  9. Übertragungsverfahren zum Übertragen eines Aktualisierungsprogramms, für ein Steuerprogramm einer Fahrzeugsteuervorrichtung, an die Fahrzeugsteuervorrichtung, wobei das Aktualisierungsprogramm von einem Server heruntergeladen wird, wobei das Verfahren umfasst: Berechnung eines Indexwerts, der ein Verhältnis zwischen einer Größe des Steuerprogramms und einer Größe des Aktualisierungsprogramms angibt; und Bestimmen, ob die Übertragung zu erlauben ist oder nicht, auf Basis des Indexwertes.
  10. Computerprogramm, um einen Computer zu veranlassen, als eine Relais-Einrichtung zu fungieren, die konfiguriert ist, ein Aktualisierungsprogramm für ein Steuerprogramm einer Fahrzeugsteuervorrichtung an die Fahrzeugsteuervorrichtung zu übertragen, wobei das Aktualisierungsprogramm von einem Server heruntergeladen wird; das Computerprogramm den Computer veranlasst, zu fungieren als: eine Recheneinheit, die konfiguriert ist, einen Indexwert zu berechnen, der ein Verhältnis zwischen einer Größe des Steuerprogramms und einer Größe des Aktualisierungsprogramms angibt; und eine Übertragungssteuereinheit, die konfiguriert ist, zu bestimmen, ob die Übertragung zu erlauben ist oder nicht, auf Basis des berechneten Indexwerts.
DE112018001985.3T 2017-04-12 2018-01-18 Relais-Einrichtung, Transferverfahren und Computerprogramm Pending DE112018001985T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017078837 2017-04-12
JP2017-078837 2017-04-12
PCT/JP2018/001410 WO2018189975A1 (ja) 2017-04-12 2018-01-18 中継装置、転送方法、およびコンピュータプログラム

Publications (1)

Publication Number Publication Date
DE112018001985T5 true DE112018001985T5 (de) 2019-12-19

Family

ID=63792433

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112018001985.3T Pending DE112018001985T5 (de) 2017-04-12 2018-01-18 Relais-Einrichtung, Transferverfahren und Computerprogramm

Country Status (5)

Country Link
US (1) US10970063B2 (de)
JP (1) JP6620891B2 (de)
CN (1) CN110494847B (de)
DE (1) DE112018001985T5 (de)
WO (1) WO2018189975A1 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6135723B2 (ja) * 2015-08-20 2017-05-31 コベルコ建機株式会社 建設機械及びこれを備えたプログラム書き換えシステム
JP6930949B2 (ja) * 2018-08-02 2021-09-01 株式会社日立製作所 ソフトウェア配信システム、ソフトウェア配信サーバ、及びソフトウェア配信方法
JP7003975B2 (ja) * 2018-08-10 2022-01-21 株式会社デンソー 車両情報通信システム,センター装置及びセンター装置のメッセージ送信方法
JP7125374B2 (ja) * 2019-07-03 2022-08-24 本田技研工業株式会社 情報処理装置、情報処理方法、及びプログラム
CN113392102A (zh) * 2020-03-12 2021-09-14 尼得科智动株式会社 网关装置和计算机可读介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015037938A (ja) 2014-09-17 2015-02-26 クラリオン株式会社 車載機のオンライン更新方法
JP2017078837A (ja) 2015-10-22 2017-04-27 京セラドキュメントソリューションズ株式会社 画像形成装置、画像形成方法

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6405309B1 (en) * 1999-06-18 2002-06-11 Phoenix Technologies Ltd. Method and apparatus for creating and deploying smaller Microsoft Windows applications for automatic configuration of a computing device
JP2001014335A (ja) * 1999-06-30 2001-01-19 Yazaki Corp 地図検索指令システム
JP4361902B2 (ja) * 2003-12-15 2009-11-11 株式会社日立製作所 車載制御装置の情報更新方法と更新情報通信システム、および、車両搭載制御装置と情報管理基地局装置
JP2006119745A (ja) * 2004-10-19 2006-05-11 Hitachi Ltd コンピュータシステム及びコンピュータシステムの制御方法
JP2010000636A (ja) * 2008-06-18 2010-01-07 Canon Inc 画像形成装置及び画像形成装置の制御方法
JP2011000894A (ja) * 2009-06-16 2011-01-06 Fujitsu Ten Ltd 制御装置及び制御方法
JP5267598B2 (ja) * 2011-02-25 2013-08-21 トヨタ自動車株式会社 車両制御装置のデータ書き換え支援システム及びデータ書き換え支援方法
JP5699691B2 (ja) * 2011-03-03 2015-04-15 日本電気株式会社 データ転送装置、ftサーバ、データ転送方法、及びプログラム
KR20120126678A (ko) * 2011-05-12 2012-11-21 삼성전자주식회사 내구성을 향상한 비휘발성 메모리 장치 및 그 동작방법
WO2013139010A1 (zh) * 2012-03-21 2013-09-26 华为技术有限公司 确认包的处理方法、设备及***
US9800483B2 (en) * 2012-04-13 2017-10-24 CirrusWorks, Inc. Method and apparatus for dynamic bandwidth allocation for optimizing network utilization
KR101415900B1 (ko) * 2012-05-18 2014-07-08 신경민 고주파 열치료용 중첩형 바이폴라 전극
US9244673B2 (en) * 2012-06-08 2016-01-26 Apple Inc. System and method for updating application archive files
CN102799447B (zh) * 2012-06-19 2016-12-21 优视科技有限公司 移动终端内部软件的更新方法及***
DE102012023648B4 (de) * 2012-12-03 2016-09-15 Audi Ag Verfahren und System zum Aktualisieren von einem Steuergerät eines Kraftwagens
CN103970554B (zh) * 2013-01-30 2017-07-18 广东美的制冷设备有限公司 一种家电产品功能升级的控制方法
KR101463604B1 (ko) * 2013-04-24 2014-11-20 주식회사 오비고 전자제어장치의 업데이트를 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체
JP6155888B2 (ja) * 2013-06-19 2017-07-05 株式会社リコー 通信装置、通信システム、通信方法及び通信プログラム
JP5975964B2 (ja) * 2013-10-18 2016-08-23 富士通株式会社 情報処理プログラム、情報処理方法、情報処理装置、及び情報処理システム
CN104679530B (zh) * 2013-11-26 2017-12-29 英业达科技有限公司 服务器***与固件更新方法
JP5768870B2 (ja) * 2013-12-25 2015-08-26 日本電気株式会社 プログラム配信装置及びプログラム配信方法、プログラム配信システム、並びにコンピュータ・プログラム
CN103677946B (zh) * 2013-12-30 2017-02-01 广州日滨科技发展有限公司 电梯设备控制程序的更新方法和***
KR101575447B1 (ko) * 2014-02-06 2015-12-07 현대자동차주식회사 차량의 소프트웨어 업데이트 방법
CN103986792B (zh) * 2014-06-11 2015-05-27 腾讯科技(深圳)有限公司 一种群成员信息的同步方法、服务器,及***
US9722781B2 (en) * 2014-07-09 2017-08-01 Livio, Inc. Vehicle software update verification
JP2016060407A (ja) * 2014-09-19 2016-04-25 日産自動車株式会社 車両制御プログラム書換システム及び車両制御プログラム書換方法
CN107077396B (zh) * 2015-01-26 2020-12-04 日立汽车***株式会社 车载控制装置、程序写入装置、程序生成装置以及方法
US9952851B2 (en) * 2015-03-10 2018-04-24 International Business Machines Corporation Intelligent mobile application update
JP6216730B2 (ja) * 2015-03-16 2017-10-18 日立オートモティブシステムズ株式会社 ソフト更新装置、ソフト更新方法
JP6465403B2 (ja) * 2015-04-20 2019-02-06 コニカミノルタ株式会社 プリンタドライバ更新プログラム及びプリンタドライバ更新方法
US9841965B2 (en) * 2015-06-15 2017-12-12 Lear Corporation Centralized system for software updating vehicle components
WO2017002611A1 (ja) * 2015-06-30 2017-01-05 日立オートモティブシステムズ株式会社 車両データ書換制御装置および車両データ書換認証システム
CN105068848B (zh) * 2015-08-28 2018-12-11 小米科技有限责任公司 ***升级方法及装置
WO2018185994A1 (ja) * 2017-04-05 2018-10-11 住友電気工業株式会社 制御装置、転送方法、およびコンピュータプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015037938A (ja) 2014-09-17 2015-02-26 クラリオン株式会社 車載機のオンライン更新方法
JP2017078837A (ja) 2015-10-22 2017-04-27 京セラドキュメントソリューションズ株式会社 画像形成装置、画像形成方法

Also Published As

Publication number Publication date
CN110494847A (zh) 2019-11-22
US10970063B2 (en) 2021-04-06
WO2018189975A1 (ja) 2018-10-18
JPWO2018189975A1 (ja) 2019-04-18
US20200034140A1 (en) 2020-01-30
JP6620891B2 (ja) 2019-12-18
CN110494847B (zh) 2023-02-17

Similar Documents

Publication Publication Date Title
DE112017006980T5 (de) Steuereinrichtung, Programmaktualisierungsverfahren und Computerprogramm
DE112018001985T5 (de) Relais-Einrichtung, Transferverfahren und Computerprogramm
DE112018001894T5 (de) Steuervorrichtung, Übertragungsverfahren und Computerprogramm
DE112009005344B4 (de) Fahrzeug-gateway-system
DE112017006978T5 (de) Steuervorrichtungen, Programmaktualisierungsverfahren und Computerprogramm
DE112017005462T5 (de) Steuervorrichtung, Programmaktualisierungsverfahren und Computerprogramm
DE102018104274A1 (de) Verfahren zum adaptiven Einstellen einer Sicherheitsstufe einer V2X-Kommunikation- Nachricht und Vorrichtung dafür
DE112018004203T5 (de) Steuereinrichtung, Steuerverfahren und Computerprogramm
DE112016006538T5 (de) Programmaktualisierungssystem, Programmaktualisierungsverfahren und Computerprogramm
DE112019001514T5 (de) Programmaktualisierungssystem, Programmaktualisierungsverfahren und Computerprogramm
DE112017005384T5 (de) Fahrzeuggebundenes Vorrichtungsermittlungssystem und Informationssammelvorrichtung
DE112019003727T5 (de) Elektronisches steuerungssystem für fahrzeug, programmaktualisierungsgenehmigungs-bestimmungsverfahren und programmaktualisierungsgenehmigungs-bestimmungsprogramm
DE112017005439T5 (de) Steuervorrichtung, Programmaktualisierungsverfahren und Computerprogramm
DE112018002998T5 (de) Aktualisierungssteuervorrichtung, Steuerverfahren und Computerprogramm
DE112017005441T5 (de) Steuergerät, Programmaktualisierungsverfahren und Computerprogramm
DE112017002788T5 (de) Steuervorrichtung, Steuerverfahren und Computerprogramm
DE112018004181T5 (de) Steuereinrichtung, Steuerverfahren und Computerprogramm
DE102018103209A1 (de) Verfahren und vorrichtung zur handhabung der übereinstimmung von mehrzyklischen fahrzeugsoftwareaktualisierungen
DE102019108442A1 (de) Automatisierte Fahrzeugsysteme und Steuerlogik für den intelligenten Datenaustausch unter Verwendung verbesserter Bloom-Filter
DE102017117355A1 (de) Onboard-Fahrzeugkommunikationssystem
DE112018004090T5 (de) Steuervorrichtung, Steuerverfahren und Computerprogramm
DE112018007361T5 (de) Stromversorgungs-Steuervorrichtung, Stromversorgungs-Steuerverfahren und Computerprogramm
DE112009000500B4 (de) Weiterleitungseinrichtung, Kommunikationssystem und Kommunikationsverfahren
DE112018004199T5 (de) Steuervorrichtung, Steuerverfahren und Computerprogramm
DE102019102853A1 (de) Fahrzeugsteuerungsvorrichtung, Aktualisierungsbestätigungsverfahren eines Programms und nichtflüchtiges, computerlesbares Medium, welches ein Aktualisierungsbestätigungsprogramm speichert

Legal Events

Date Code Title Description
R012 Request for examination validly filed