DE112016000992T5 - Programmneuschreibvorrichtung und programmneuschreibverfahren - Google Patents

Programmneuschreibvorrichtung und programmneuschreibverfahren Download PDF

Info

Publication number
DE112016000992T5
DE112016000992T5 DE112016000992.5T DE112016000992T DE112016000992T5 DE 112016000992 T5 DE112016000992 T5 DE 112016000992T5 DE 112016000992 T DE112016000992 T DE 112016000992T DE 112016000992 T5 DE112016000992 T5 DE 112016000992T5
Authority
DE
Germany
Prior art keywords
ecu
rewrite
program
62tar
target
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.)
Withdrawn
Application number
DE112016000992.5T
Other languages
English (en)
Inventor
Kuniharu Naruse
Shinya Yoshino
Shun Fujitsuka
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.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co 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
Priority claimed from JP2015068855A external-priority patent/JP6147790B2/ja
Priority claimed from JP2015068949A external-priority patent/JP6147792B2/ja
Priority claimed from JP2015068885A external-priority patent/JP6147791B2/ja
Application filed by Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Publication of DE112016000992T5 publication Critical patent/DE112016000992T5/de
Withdrawn 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
    • 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
    • B60R16/0231Circuits relating to the driving or the functioning of the vehicle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity

Abstract

Die vorliegende Erfindung sieht eine Programmneuschreibvorrichtung und ein Programmneuschreibverfahren vor, wodurch ein Programm auf einfache Weise neu geschrieben werden kann. Eine Neuschreibsteuereinheit (24) einer Programmneuschreibvorrichtung (12) vergleicht die aktuellen Versionsinformationen, die aus allen neu schreibbaren ECU (62) ausgelesen werden, die in einem Netz (60) enthalten sind, mit den letzten Versionsinformationen, die den aktuellen Versionsinformationen entsprechen, und extrahiert als Ziel-ECU (62tar) Neuschreib-Kandidaten-ECU (62can), in denen die aktuellen Versionsinformationen nicht mit den letzten Versionsinformationen übereinstimmen. Die Neuschreibsteuereinheit (24) führt sequenziell einen Programmneuschreibvorgang für die extrahierten Ziel-ECU (62tar) in der in einer Reihenfolgedatenbank (52) gespeicherten Prioritätsreihenfolge aus.

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung betrifft eine Programmneuschreibvorrichtung und ein Programmneuschreibverfahren zur Verbindung mit einem Netz elektronischer Steuereinheiten (nachstehend als "ECU" bezeichnet) in einem Fahrzeug von außerhalb des Fahrzeugs, zum Auswählen einer ECU, für die ein Programmneuschreiben erforderlich ist, und zum Neuschreiben des Programms. Technischer Hintergrund
  • In den letzten Jahren wurde eine große Anzahl von ECU an Fahrzeugen angebracht. Ein Versionsaufrüsten von Programmen kann ansprechend auf eine Teilverbesserung von Steuerspezifikationen und dergleichen ausgeführt werden. In diesem Fall kann für mehrere betroffene ECU ein Programmneuschreiben erforderlich sein.
  • Viele der mehreren in einem Fahrzeug installierten ECU haben eine Funktion zum wechselseitigen Überwachen auf Abnormitäten durch Kommunikation. Deshalb ist es beim Neuschreiben eines Programms in einer ECU erforderlich, die ECU aufzufordern, das Programmschreiben von einer externen Programmneuschreibvorrichtung zu erlauben und auch eine Fehlerdiagnose auszusetzen, so dass eine zwischen der neuschreibenden Ziel-ECU und einer anderen ECU auftretende Kommunikationsabnormität nicht als ein Fehler beurteilt wird. Ferner ist es nach dem Neuschreiben für das Aufgeben des Aussetzens der Fehlerdiagnose erforderlich, einen Neustartvorgang auszuführen, bei dem das Fahrzeug wieder eingeschaltet wird, nachdem ein Zündschalter des Fahrzeugs abgeschaltet wurde.
  • Deshalb wird bei einem Neuschreibvorgang bei einem Händler oder dergleichen, der Wartungsarbeiten an Fahrzeugen vornimmt, das Neuschreiben nacheinander einzeln für mehrere neuschreibende Ziel-ECU entsprechend einem Neuschreibvorgang ausgeführt. Weil bei jedem Neuschreiben an jeder der ECU ein Zündschalter abgeschaltet und dann eingeschaltet wird, ist das Programmschreiben ein sehr mühsamer Vorgang.
  • Um den Aufwand zu verringern, schlägt die offengelegte japanische Patentveröffentlichung 2012-091755 (nachstehend als "JP 2012-091755 A" bezeichnet) das gemeinsame Neubooten mehrerer ECU vor, nachdem Neuschreibdaten der mehreren neu zu schreibenden ECU über ein Medium in der Art einer CD-ROM, ein mobiles Kommunikationsnetz oder dergleichen erhalten wurden, und sie schlägt vor, Programme an den mehreren ECU, welche zusammenwirkend eine gegenseitige Kontrolle ausführen, neu zu schreiben.
  • Kurzfassung der Erfindung
  • Das Verfahren aus JP 2012-091755 A erleichtert es, den Neuschreibvorgang selbst auszuführen. Bei Berücksichtigung von Daten in der Art von Identifikationsinformationen der mehreren neu zu schreibenden ECU, Kompatibilitätsinformationen der Programme und Kombinationen von Ziel-ECU für die zusammenwirkende Steuerung muss die Neuschreibreihenfolge jedoch vorab festgelegt werden. Deshalb ist es sehr mühsam, die Daten bei jedem Neuschreiben zu präparieren.
  • Weil die Datenmenge beispielsweise für ein Programm groß ist, ist es zusätzlich erforderlich, einen zugeordneten Satz von Informationen bereitzustellen, um zu prüfen, ob ein Fehler in den Daten auftritt oder die Daten normal sind. Ferner ist, wenn das Neuschreiben in einigen der neu zu schreibenden ECU fehlschlägt, für ein anderes Neuschreiben das Berücksichtigen der Reihenfolge des Neuschreibens im Abgleich mit Teilen, wo das normale Neuschreiben abgeschlossen ist, erforderlich. Deshalb kann das Reparieren viel Zeit und Mühe in Anspruch nehmen.
  • Eine Aufgabe der vorliegenden Erfindung besteht darin, eine Programmneuschreibvorrichtung und ein Programmneuschreibverfahren bereitzustellen, wodurch ein Programm unter Berücksichtigung der vorstehend erwähnten Probleme leicht neu geschrieben werden kann.
  • Eine Programmneuschreibvorrichtung gemäß der vorliegenden Erfindung umfasst einen Netzverbinder zur Verbindung mit einem Netz in einem Fahrzeug befindlicher elektronischer Steuereinheiten (nachstehend als "ECU" bezeichnet) von außerhalb des Fahrzeugs und eine Neuschreibsteuereinrichtung, die dafür ausgelegt ist, ein Programm auf als ein Programmneuschreiben benötigend ausgewählten ECU (nachstehend als "Ziel-ECU" bezeichnet) neu zu schreiben, wobei die Programmneuschreibvorrichtung ferner Folgendes umfasst: eine Reihenfolgedatenbank, worin eine Prioritätsreihenfolge vorab in Zusammenhang mit Identifikationscodes aller neu schreibbarer ECU, die am Fahrzeug angebracht sind, gespeichert wurde, eine Neuschreibkandidateninformations-Datenbank, worin Neuschreibkandidateninformationen als ein Satz der Identifikationscodes von Neuschreibkandidaten-ECU als Kandidaten der Ziel-ECU und letzte Versionsinformationen von Programmen, die in den Neuschreibkandidaten-ECU installiert sind, pro im Fahrzeug zu ändernden Zielvorgang, wofür ein Programmneuschreiben erforderlich ist, gespeichert sind, und eine Neuschreibprogramm-Datenbank, worin ein Neuschreibprogramm gespeichert ist, wobei die Neuschreibsteuereinrichtung dafür ausgelegt ist, Folgendes auszuführen: Auslesen der Identifikationscodes und aktuellen Versionsinformationen der installierten Programme aus allen neu schreibbaren ECU im Netz in Paaren, Extrahieren der Neuschreibkandidaten-ECU, die mit den aktuellen Versionsinformationen gepaart sind, die auf der Grundlage des Vergleichs zwischen den aktuellen Versionsinformationen, die ausgelesen worden sind, und den letzten Versionsinformationen, die den aktuellen Versionsinformationen entsprechen, nicht mit den letzten Versionsinformationen übereinstimmen, als die Ziel-ECU und Ausführen von Programmneuschreibvorgängen an den extrahierten Ziel-ECU aufeinander folgend in der Prioritätsreihenfolge, die in der Reihenfolgedatenbank gespeichert ist.
  • Gemäß der vorliegenden Erfindung geschieht das Programmneuschreiben in der Prioritätsreihenfolge entsprechend einer Kombination von ECU (Ziel-ECU), die bei jedem zu ändernden Zielvorgang des Fahrzeugs neu geschrieben werden müssen. Daher kann das Programmneuschreiben in der für das Fahrzeug am besten geeigneten Reihenfolge ausgeführt werden.
  • Ferner wird gemäß der vorliegenden Erfindung das Neuschreiben zur letzten Version des Programms auf den Ziel-ECU, welche die Neuschreibkandidaten-ECU sind, für welche aktuelle Versionsinformationen und die letzten Versionsinformationen nicht übereinstimmen, entsprechend der Prioritätsreihenfolge jedes geänderten Zielvorgangs nacheinander ausgeführt. Deshalb geschieht das Neuschreiben nur an den Neuschreibkandidaten-ECU, die neu geschrieben werden müssen, so dass der Neuschreibvorgang wirksam ausgeführt werden kann.
  • Gemäß dem vorstehend Erwähnten gibt es selbst dann, wenn ein Dienstanbieter in der Art eines Händlers ein Programmneuschreiben für sich auf dem Markt befindende Fahrzeuge ausführt, keine Fehler bei der Auswahl der Ziel-ECU durch den Wartungstechniker (Bediener). Zusätzlich kann der Aufwand für das Spezifizieren der Neuschreibreihenfolge verringert werden und kann ein geeigneter Neuschreibvorgang leicht implementiert werden.
  • Selbst wenn es eine Ziel-ECU gibt, die während des Programmneuschreibens nicht neu geschrieben werden konnte, kann das Neuschreiben nur für die Ziel-ECU ausgeführt werden, die nicht neu geschrieben wurde, indem das Programmneuschreiben erneut ausgeführt wird, jedoch nicht für die Ziel-ECU, die bereits neu geschrieben wurde. Die Neuschreibsteuereinrichtung registriert die Neuschreibkandidaten-ECU, die mit den aktuellen Versionsinformationen gepaart ist, welche nicht mit den letzten Versionsinformationen übereinstimmen, als Ziel-ECU in einer Liste und führt den Programmneuschreibvorgang in der in der Datenbank gespeicherten Prioritätsreihenfolge in Bezug auf die in der Liste registrierten Ziel-ECU aus. Dies ermöglicht es, eine Kombination von Ziel-ECU, für die ein Programmneuschreiben erforderlich ist (oder eine Kombination von Programmen entsprechend der Ziel-ECU) durch ein einfaches Verfahren zu identifizieren.
  • Die in der Reihenfolgedatenbank gespeicherte
  • Prioritätsreihenfolge bezieht sich auf alle neu schreibbaren ECU, wobei eine ECU, die Daten von einer anderen ECU verwendet, in der Neuschreibreihenfolge gegenüber der anderen zu verwendenden ECU priorisiert ist. Eine Gateway-ECU mit einer Gateway-Funktion im Netz hat bei der Ausführung des Programmneuschreibvorgangs eine niedrigere Priorität als andere Ziel-ECU, zu denen eine Kommunikation weitergeleitet wird. Wenn demgemäß mehrere ECU aufeinander folgend neu geschrieben werden, werden Programme der Gateway-ECU und anderer Ziel-ECU aufeinander folgend neu geschrieben, ohne durch Änderungen in Daten beeinflusst zu werden, die beim Neuschreiben anderer zusammenwirkender ECU zu verwenden sind.
  • Falls die Neuschreibprogramm-Datenbank die letzten Versionen der Neuschreibprogramme mit den gleichen Identifikationscodes speichert und es mehrere zu ändernde Zielvorgänge gibt, kann die Neuschreibsteuereinrichtung die Neuschreibkandidateninformationen verwenden, die dem neuesten zu ändernden Zielvorgang entsprechen. Falls mehrere Zielvorgänge des Fahrzeugs für das Ändern vorbereitet (oder gespeichert) werden, weisen die letzten Neuschreibkandidateninformationen die neueste Version des Neuschreibprogramms auf. Falls das Neuschreiben auf der Grundlage der letzten Neuschreibkandidateninformationen ausgeführt wird, wird das neu zu schreibende Programm der ECU auf die neue Version umgeschrieben. Daher ist es selbst dann, wenn die gleiche ECU auf der Grundlage der vorhergehenden Neuschreibkandidateninformationen am Neuschreiben beteiligt ist, nicht erforderlich, das in der gleichen ECU installierte Programm neu zu schreiben. Demgemäß kann der Zeitaufwand für den Bediener verringert werden, wenn es mehrere Neuschreibkandidateninformationen gibt.
  • Die Neuschreibsteuereinrichtung kann Folgendes ausführen: Senden eines Unterbrechungs-/Verbotsanforderungssignals, um alle ECU aufzufordern, die wechselseitige Kommunikation zu unterbrechen und das Speichern von Fehlercodes zu verbieten, Ausführen des Programmneuschreibvorgangs aufeinander folgend für die Ziel-ECU, während das Unterbrechungs-/Verbotsanforderungssignal gesendet wird, Festlegen des Sendens eines Betriebsprüfsignals zu jeder der Ziel-ECU nach Abschluss des Programmneuschreibvorgangs in allen Ziel-ECU, Beenden des Sendens des Unterbrechungs-/Verbotsanforderungssignals nach Erkennen des Unterbrechens aller Ziel-ECU auf der Grundlage des Fehlens einer Antwort auf das Betriebsprüfsignal, Senden eines Versionsinformations-Anforderungssignals zum Anfordern der Versionsinformationen aller in den Ziel-ECU installierten Programme von allen Ziel-ECU und Prüfen, ob die von allen Ziel-ECU empfangenen Versionsinformationen zur letzten Version gehören.
  • Gemäß der vorliegenden Erfindung wird vor dem Neuschreiben des Programms die gesamte Kommunikation zwischen den ECU unterbrochen und das Speichern des Fehlercodes verboten. Wenn das aufeinander folgende Programmneuschreiben in allen Ziel-ECU abgeschlossen ist, werden, nachdem das Unterbrechen des Betriebs aller Ziel-ECU bestätigt wurde, das Unterbrechen der wechselseitigen Kommunikation und das Verbot des Speicherns von Fehlercodes aufgehoben. Anschließend wird ein Signal, das die Versionsinformationen des installierten Programms anfordert, zu den Ziel-ECU gesendet und wird der Abschluss des Programmneuschreibens auf der Grundlage des Empfangs der Versionsinformationen von den Ziel-ECU bestätigt.
  • Dementsprechend kann der Aufwand für den Bediener drastisch verringert werden, indem der Vorgang des Neustartens der Ziel-ECU (Neustartvorgang) nach dem aufeinander folgenden Programmneuschreiben aller Ziel-ECU gemeinsam ausgeführt wird. Wenn ein Programmneuschreiben eines sich auf dem Markt befindenden Fahrzeugs von einem Wartungstechniker in der Art eines Händlers oder dergleichen ausgeführt wird, kann der geeignete Neuschreibvorgang daher leicht ausgeführt werden.
  • Die Neuschreibsteuereinrichtung sendet das Betriebsprüfsignal nach Abschluss des Programmneuschreibvorgangs in allen Ziel-ECU nacheinander einzeln zu den Ziel-ECU und stellt auf der Grundlage eines Fehlens einer Antwort auf das Betriebsprüfsignal fest, dass der Betrieb aller Ziel-ECU unterbrochen ist. Weil in diesem Fall nur das Unterbrechen des Betriebs der neu geschriebenen ECU festgestellt wird, wird die Beurteilung verglichen mit dem Fall einfacher, in dem das Betriebsprüfsignal zu allen neu schreibbaren ECU (Ziel-ECU) auf einmal gesendet wird, und kann die für das Prüfen erforderliche Zeit verkürzt werden. Ferner wird für die Ziel-ECU, die den Neuschreibvorgang ausgeführt haben, die Unterbrechung durch das Fehlen einer Antwort auf das Betriebsprüfsignal festgestellt und wird die nachfolgende Verarbeitung ausgeführt, so dass jede Ziel-ECU zuverlässig neu gestartet werden kann.
  • Die Neuschreibsteuereinrichtung kann die Anzeigeeinheit veranlassen, eine Abschaltvorgangsanforderung zum Anfordern des Abschaltens einer Stromzufuhr für die ECU im Fahrzeug nach Abschluss des Programmneuschreibvorgangs für alle Ziel-ECU anzuzeigen und eine Neueinschaltanforderung zum Anfordern des Neueinschaltens der ECU nach Erkennen der Unterbrechung des Betriebs aller Ziel-ECU anzuzeigen und das Senden des Unterbrechungs-/Verbotsanforderungssignals beenden. Daher ist die Bestätigung des Abschaltens aller Ziel-ECU eine Bedingung für das Vornehmen der Neueinschaltvorgangsanforderung. Selbst wenn die Anzahl der Ziel-ECU hoch ist oder es Ziel-ECU gibt, die eine lange Zeit abgeschaltet waren, kann der Neustartvorgang daher vorgeschrieben werden, nachdem alle Ziel-ECU sicher abgeschaltet wurden.
  • Wenn das Programm neu geschrieben wird, kann die Neuschreibsteuereinrichtung bestätigen, dass es für alle neu schreibbaren ECU keine Kommunikationsfehlergeschichte in Bezug auf das Netz gibt. Wenn bestätigt werden kann, dass bei keiner der ECU eine Kommunikationsfehlergeschichte auftritt, kann die Neuschreibsteuereinrichtung die Identifikationscodes der ECU, die aus allen neu schreibbaren ECU ausgelesen wurden, mit den Identifikationscodes von Neuschreibkandidaten-ECU vergleichen, die in den Neuschreibkandidateninformationen enthalten sind, um die Ziel-ECU zu spezifizieren, und ein Programmneuschreiben in der Reihenfolge, die in der Reihenfolgedatenbank gespeichert ist, in den spezifizierten Ziel-ECU ausführen.
  • Gemäß der vorliegenden Erfindung wird vor dem Programmneuschreiben in den Ziel-ECU für jede der Ziel-ECU bestätigt, dass es keine Kommunikationsfehlergeschichte gibt. Dadurch kann vor Beginn des Programmneuschreibens der Grund für den Kommunikationsfehler zwischen der Programmneuschreibvorrichtung und der Ziel-ECU bestätigt werden und festgestellt werden, dass das Fahrzeug, mit dem die Programmneuschreibvorrichtung verbunden ist, nicht mit der Ziel-ECU versehen ist oder die Ziel-ECU am Fahrzeug angebracht ist, jedoch ein Kommunikationsfehler darin aufgetreten ist. Daher kann verhindert werden, dass ein Kommunikationsfehler damit verwechselt wird, dass die Ziel-ECU nicht installiert ist. Deshalb können Probleme beim Neuschreiben des Programms verringert werden.
  • Die Neuschreibsteuereinrichtung fordert die Kommunikationsfehlergeschichte an der Gateway-ECU an und fordert danach an den von der Gateway-ECU verschiedenen ECU die Kommunikationsfehlergeschichte an, wodurch bestätigt wird, dass es keine Kommunikationsfehlergeschichte gibt. Wenn es nicht möglich ist, mit der Ziel-ECU zu kommunizieren, kann dadurch das Finden des einen Fehler hervorrufenden Teils erleichtert werden, indem festgestellt wird, ob die Gateway-ECU oder die Ziel-ECU selbst oder eine andere ECU das Problem hervorruft.
  • Ein Programmneuschreibverfahren gemäß der vorliegenden Erfindung ist ein Verfahren zum Neuschreiben eines Programms in einer Programmneuschreibvorrichtung, die einen Netzverbinder zur Verbindung mit einem Netz in einem Fahrzeug befindlicher elektronischer Steuereinheiten (nachstehend als "ECU" bezeichnet) von außerhalb des Fahrzeugs und eine Neuschreibsteuereinrichtung zum Auswählen einer nachstehend als "Ziel-ECU" bezeichneten ECU, die ein Programmneuschreiben benötigt, aufweist, wobei die Programmneuschreibvorrichtung Folgendes aufweist: eine Reihenfolgedatenbank, worin eine Prioritätsreihenfolge vorab in Zusammenhang mit Identifikationscodes aller neu schreibbarer ECU, die am Fahrzeug angebracht sind, gespeichert wurde, eine Neuschreibkandidateninformations-Datenbank, worin Neuschreibkandidateninformationen als ein Satz der Identifikationscodes von Neuschreibkandidaten-ECU als Kandidaten der Ziel-ECU und letzte Versionsinformationen von Programmen, die zu der Zeit in den Neuschreibkandidaten-ECU installiert sind, zu der ein Zielvorgang zu ändern ist, pro im Fahrzeug zu ändernden Zielvorgang, wofür ein Programmneuschreiben erforderlich ist, gespeichert sind, und eine Neuschreibprogramm-Datenbank, worin ein Neuschreibprogramm gespeichert ist, wobei das Programmneuschreibverfahren folgende durch die Neuschreibsteuereinrichtung ausgeführte Schritte aufweist: Auslesen der Identifikationscodes und aktuellen Versionsinformationen der installierten Programme aus allen neu schreibbaren ECU im Netz in Paaren, Extrahieren der Neuschreibkandidaten-ECU, die mit den aktuellen Versionsinformationen gepaart sind, die auf der Grundlage des Vergleichs zwischen den aktuellen Versionsinformationen, die ausgelesen worden sind, und den letzten Versionsinformationen, die den aktuellen Versionsinformationen entsprechen, nicht mit den letzten Versionsinformationen übereinstimmen, als die Ziel-ECU und Ausführen von Programmneuschreibvorgängen an den extrahierten Ziel-ECU aufeinander folgend in der Prioritätsreihenfolge, die in der Reihenfolgedatenbank gespeichert ist.
  • Kurzbeschreibung der Zeichnung
  • Es zeigen:
  • 1 ein schematisches Diagramm, worin ein Programmneuschreibsystem, das eine Programmneuschreibvorrichtung gemäß der vorliegenden Ausführungsform aufweist, einfach dargestellt ist,
  • 2 eine Konzeptansicht des Aufbaus eines Speichers gemäß der Ausführungsform,
  • 3 ein Flussdiagramm zum Programmneuschreiben gemäß der Ausführungsform,
  • 4 ein Flussdiagramm eines Prozesses zum Auswählen einer Kombination von Neuschreibkandidaten-ECU gemäß der Ausführungsform (Einzelheiten von Schritt S4 in 3),
  • 5 ein Flussdiagramm eines Prozesses zum aufeinander folgenden Programmneuschreiben gemäß der Ausführungsform (Einzelheiten von Schritt S8 in 3),
  • 6 ein erklärendes Diagramm von Kommunikations- und Betriebszuständen der Programmneuschreibvorrichtung und jeder elektronischen Steuervorrichtung beim aufeinander folgenden Programmneuschreibprozess und einem Neuschreibabschlussbestätigungsprozess gemäß der Ausführungsform,
  • 7 ein Flussdiagramm des Neuschreibabschlussbestätigungsprozesses gemäß der Ausführungsform (Einzelheiten von Schritt S9 in 3),
  • 8 ein Diagramm eines Beispiels zum Bestätigen in Schleifen, ob jede elektronische Zielsteuereinheit abgeschaltet ist, gemäß einem Vergleichsbeispiel und
  • 9 ein Diagramm eines Beispiels zum Bestätigen in Schleifen, ob jede elektronische Zielsteuereinheit abgeschaltet ist, gemäß der Ausführungsform.
  • Beschreibung von Ausführungsformen
  • A. Eine Ausführungsform
  • [A1. Konfiguration des Programmneuschreibsystems 10]
  • (A1-1. Gesamtkonfiguration)
  • 1 ist eine schematische Ansicht, die vereinfacht ein Programmneuschreibsystem 10 (nachstehend auch als "Neuschreibsystem 10" oder "System 10" bezeichnet) mit einer Programmneuschreibvorrichtung 12 (nachstehend auch als "Neuschreibvorrichtung 12" bezeichnet) zeigt, gemäß einer Ausführungsform der vorliegenden Erfindung. Das System 10 weist zusätzlich zur Neuschreibvorrichtung 12 ein Fahrzeug 14 auf. In 1 können mehrere Neuschreibvorrichtungen 12 und mehrere Fahrzeuge 14 bereitgestellt sein, wenngleich nur eine Neuschreibvorrichtung 12 und ein Fahrzeug 14 dargestellt sind.
  • (A1-2. Programmneuschreibvorrichtung 12)
  • (A1-2-1. Gesamtkonfiguration der Programmneuschreibvorrichtung 12)
  • Die Neuschreibvorrichtung 12 schreibt ein Programm, das in einer von einer ersten bis zehnten elektronischen Steuereinheit 62a bis 62j (nachstehend als "erste bis zehnte ECU 62a bis 62j" oder "ECU 62a bis 62j" bezeichnet) des Fahrzeugs 14 als Programmneuschreibziel installiert ist, neu (oder aktualisiert es). Nachstehend werden die ECU 62a bis 62j gemeinsam als ECU 62 bezeichnet. Von den ECU 62 wird jene, die dem Programmneuschreiben unterzogen wird, auch als "Ziel-ECU 62tar" bezeichnet. Das in den ECU 62 installierte Programm wird auch als "installiertes Programm Pi" oder "Programm Pi" bezeichnet.
  • Wie in 1 dargestellt ist, weist die Neuschreibvorrichtung 12 eine Signaleingabe-/Ausgabeeinheit 20, eine Vorgangseingabeeinheit 22, eine Recheneinrichtung 24, eine Speichereinheit 26 und eine Anzeigeeinheit 28 auf.
  • Die Signaleingabe-/Ausgabeeinheit 20 (Netzanschlusseinheit) gibt ein Signal in das Fahrzeug 14 ein und aus diesem aus. Die Signaleingabe-/Ausgabeeinheit 20 weist ein Datenkabel 30 und einen Datenverbindungsanschluss 32 (nachstehend auch als "DLC 32" bezeichnet) auf und ist von außerhalb des Fahrzeugs 14 mit einem Kommunikationsnetz 60 im Fahrzeug 14 verbunden.
  • Die Vorgangseingabeeinheit 22 empfängt eine Vorgangseingabe von einem Benutzer (oder einem Bediener) der Neuschreibvorrichtung 12. Gemäß der vorliegenden Ausführungsform wirkt die Vorgangseingabeeinheit 22 als ein Wähler, der einen zu ändernden Zielvorgang Otar des Fahrzeugs 14 auswählt. Der zu ändernde Zielvorgang Otar bedeutet hier beispielsweise einen am Fahrzeug 14 auszuführenden Vorgang zum Verbessern der Funktionsweise (Kraftstoffwirksamkeit, Wendefähigkeit usw.) des Fahrzeugs 14 oder zum Beseitigen eines Problems im Fahrzeug 14.
  • Die Recheneinrichtung 24 (Neuschreibsteuereinrichtung) steuert die jeweiligen Einheiten der Neuschreibvorrichtung 12 und das Programmneuschreiben für die Ziel-ECU 62tar des Fahrzeugs 14. Die Recheneinrichtung 24 weist beispielsweise eine Zentralverarbeitungseinheit (CPU) auf. Einzelheiten des Betriebs der Recheneinrichtung 24 werden später mit Bezug auf die 2 bis 9 beschrieben.
  • Die Speichereinheit 26 hat einen flüchtigen Speicher und einen nichtflüchtigen Speicher (nicht dargestellt) und speichert verschiedene durch die Recheneinrichtung 24 auszuführende Programme und verschiedene Daten und Programme für das Neuschreiben (nachstehend auch als "Neuschreibprogramm Pr" oder "Programm Pr" bezeichnet. Nachstehend werden das installierte Programm Pi und das Neuschreibprogramm Pr gemeinsam als Programm P bezeichnet.
  • Die Anzeigeeinheit 28 zeigt einen Anzeigebildschirm an, der sich auf das Programmneuschreiben oder dergleichen bezieht. Durch die Verwendung der Anzeigeeinheit 28 als ein Berührungsfeld können die Vorgangseingabeeinheit 22 und die Anzeigeeinheit 28 integriert werden.
  • (A1-2-2. Speichereinheit 26)
  • 2 ist ein Diagramm, welches die Konfiguration der Speichereinheit 26 gemäß der vorliegenden Ausführungsform konzeptionell beschreibt. In 2 ist nur eine ECU 62 dargestellt, und es wird auf die Darstellung der anderen ECU 62 verzichtet. Wie in den 1 und 2 dargestellt ist, speichert die Speichereinheit 26 eine Programmkennungsgeschichts-Datenbank 50 (nachstehend auch als "Programmkennungsgeschichts-DB 50" bezeichnet), eine Neuschreibreihenfolge-Datenbank 52 (nachstehend auch als "Reihenfolge-DB 52" bezeichnet), eine Neuschreibsatzinformations-Datenbank 54 (nachstehend auch als "Satz-DB 54" bezeichnet), eine Neuschreibprogramm-Datenbank 56 (nachstehend auch als "Programm-DB 56" bezeichnet) und eine Programmneuschreibliste 58 (nachstehend auch als "Neuschreibliste 58" oder "Liste 58" bezeichnet).
  • Die Programmkennungsgeschichts-Datenbank 50 speichert Identifikationsinformationen des Programms P (nachstehend als "Programmkennung" bezeichnet) in Zusammenhang mit Identifikationsinformationen der ECU 62 (nachstehend als "ECU-Kennung" bezeichnet) und Datumsangaben (siehe 2). Gemäß der vorliegenden Ausführungsform umfasst die Programmkennung einen Programmnamen und eine Versionsinformation Iver. Beispielsweise wird die Programmkennung als "XXXX.001" geschrieben. Dabei entspricht "XXXX" dem Programmnamen und ist "001" die Versionsinformation Iver. Die ECU-Kennung bezeichnet auch die Identifikationsinformationen (Systemkennung) des von jeder der ECU 62 gesteuerten unteren Systems.
  • Die Reihenfolgedatenbank 52 speichert vorab Prioritätsreihenfolgeinformationen Ipo (nachstehend auch als "Reihenfolgeinformationen Ipo" bezeichnet), welche die Prioritätsreihenfolge Op des Neuschreibens angeben, entsprechend Identifikationsinformationen (ECU-Kennung) aller am Fahrzeug 14 angebrachten neu schreibbaren ECU 62 (siehe 2). Die Reihenfolgeinformationen Ipo gemäß der vorliegenden Ausführungsform weisen die Prioritätsreihenfolge Op der in den Fahrzeugen 14 installierten ECU 62 für mehrere Fahrzeugtypen auf. Die Prioritätsreihenfolge Op wird gemäß dieser Ausführungsform durch die Anordnungsreihenfolge der ECU-Kennungen angegeben. Deshalb zeigen die Reihenfolgeinformationen Ipo gemeinsam beispielsweise die Prioritätsreihenfolge Op der am Fahrzeug 14 eines ersten Modelltyps angebrachten ECU 62 (beispielsweise jener mit den ECU-Kennungen XX, YY, ZZ in 2) und die Prioritätsreihenfolge Op der am Fahrzeug 14 eines zweiten Modelltyps angebrachten ECU 62 (beispielsweise jener mit den ECU-Kennungen AA, BB, CC, DD in 2). Alternativ können die Reihenfolgeinformationen Ipo nur die Prioritätsreihenfolge Op der im Fahrzeug 14 eines einzigen Fahrzeugtyps installierten ECU 62 angeben.
  • Beim Beispiel aus 2 gibt die Anordnungsreihenfolge die Prioritätsreihenfolge Op an (nachstehend auch als "Neuschreibprioritätsreihenfolge Op" oder "Neuschreibreihenfolge Op" bezeichnet). Es ist jedoch beispielsweise auch möglich, die Neuschreibreihenfolge Op als "1: ZZ, 2: YY, 3: XX" in die Reihenfolgeinformationen Ipo aufzunehmen.
  • Ferner ist die Neuschreibreihenfolge Op die Reihenfolge des Programmneuschreibens der Ziel-ECU 62tar. Weitere Einzelheiten der Neuschreibreihenfolge Op werden später in Zusammenhang mit Schritt S41 in 5 beschrieben.
  • Die Satzdatenbank 54 (Neuschreibkandidaten-Datenbank) speichert Sätze für Neuschreibkandidaten-ECU 62 (nachstehend als "Neuschreibkandidaten-ECU 62can" oder "Kandidaten-ECU 62can" bezeichnet) für jeden zu ändernden Zielvorgang Otar des Fahrzeugs 14. Insbesondere speichert die Satzdatenbank 54 Sätze von Satznummern Nset, zu ändernden Zielvorgängen Otar, Datumsangaben und Identifikationscodes (nachstehend auch als "Neuschreibkandidaten-ECU-Kennung" oder "Kandidaten-ECU-Kennung" bezeichnet) der Kandidaten-ECU 62can und Programmkennungen (nachstehend auch als "Neuschreibkandidatenprogrammkennung" oder "Kandidatenprogrammkennung" bezeichnet), die den Kandidaten-ECU 62can entsprechen (siehe 2). Die Kandidatenprogrammkennung enthält den Programmnamen und Versionsinformationen Iver. Nachstehend werden die in der Satzdatenbank 54 gespeicherten Informationen auch als Neuschreibkandidateninformationen Ican bezeichnet.
  • Die Neuschreibprogrammdatenbank 56 speichert das Neuschreibprogramm Pr. Die Programmdatenbank 56 gemäß der vorliegenden Ausführungsform speichert die letzte Version des Neuschreibprogramms Pr mit dem gleichen Programmnamen. In 2 sind die Programme P1 und P2 als Neuschreibprogramm Pr dargestellt. Die Neuschreibliste 58 ist eine für das Programmneuschreiben vorläufig erzeugte Liste (Speicherbereich). Das Verfahren zur Verwendung der Liste 58 wird nachstehend mit Bezug auf die Flussdiagramme aus den 4, 5 und 7 und dergleichen beschrieben.
  • (A1-3. Fahrzeug 14)
  • Wie in 1 dargestellt ist, beinhaltet das Fahrzeug 14 das Kommunikationsnetz 60 (nachstehend auch als "fahrzeuginternes Netz 60" oder "Netz 60" bezeichnet). Das Netz 60 weist mehrere ECU 62a bis 62j auf, die durch eine Kommunikationsleitung 64 verbunden sind. Das Netz 60 ist über einen Datenverbindungsanschluss 66 (nachstehend auch als "DLC 66" bezeichnet) mit der Programmneuschreibvorrichtung 12 verbunden.
  • Jeder der ECU 62a bis 62j steuert einen jeweiligen Teil des Fahrzeugs 14. Von den mehreren ECU 62a bis 62j hat die erste ECU 62a eine Gateway-Funktion. Das heißt, dass die erste ECU 62a ein Netzknoten zur Verbindung des Netzes 60 mit einem Netz der Programmneuschreibvorrichtung 12 mit verschiedenen Protokollen ist. Nachstehend wird die erste ECU 62a auch als eine Gateway-ECU 62a bezeichnet. In 1 ist nur eine Gateway-ECU 62a dargestellt, es ist jedoch auch möglich, mehrere Gateway-ECU 62a bereitzustellen. Ferner ist die Gateway-ECU 62a oder sind die mehreren Gateway-ECU 62a nicht darauf beschränkt, wie in 1 dargestellt positioniert zu werden und können an einer beliebigen Position im Netz 60 angeordnet werden.
  • Beispielsweise umfassen die zweite bis zehnte ECU 62b bis 62j eine elektronische Motorsteuereinheit (nachstehend als "ENG-ECU" bezeichnet), eine elektronische Antiblockierbremssystem-Steuereinheit (nachstehend als "ABS-ECU" bezeichnet), eine zusätzliche elektronische Randbedingungssystem-Steuereinheit (nachstehend als "SRS-ECU" bezeichnet) und eine elektronische Immobilisiersteuervorrichtung. Die ENG-ECU steuert die Ausgangsleistung eines Motors (nicht dargestellt). Die ENG-ECU ist mit einem Motordrehgeschwindigkeitssensor (nicht dargestellt) zum Erfassen der Motordrehgeschwindigkeit Ne [U/min] und mit einem Fahrzeuggeschwindigkeitssensor (nicht dargestellt) zum Erfassen der Fahrzeuggeschwindigkeit V [km/h] des Fahrzeugs 14 verbunden. Die ABS-ECU steuert ein Bremssystem (nicht dargestellt). Die SRS-ECU steuert einen Airbag (nicht dargestellt). Die Immobilisier-ECU steuert die Immobilisiervorrichtung (nicht dargestellt).
  • Die jeweiligen ECU 62a bis 62j führen über die Kommunikationsleitung 64 eine Datenkommunikation miteinander aus. Insbesondere steuern von den ECU 62a bis 62j auf der Grundlage von Kommunikationsdaten (beispielsweise Daten der Motordrehgeschwindigkeit Ne und der Fahrzeuggeschwindigkeit V) von einer spezifischen ECU 62 (beispielsweise der ENG-ECU) andere ECU 62 (beispielsweise die ABS-ECU, die SRS-ECU und die Immobilisier-ECU) das Fahrzeug 14 zusammenwirkend. Ferner führen die ECU 62a bis 62j eine wechselseitige Fehlerdiagnose (Abnormitätserkennung von Kommunikationsdaten) aus.
  • Die zweite bis vierte ECU 62b, 62c, 62d bilden ein erstes Netz 68a niederer Ebene. Die fünfte bis siebte ECU 62e, 62f, 62g bilden ein zweites Netz 68b niederer Ebene. Die achte bis zehnte ECU 62h, 62i, 62j bilden ein drittes Netz 68c niederer Ebene. Das erste bis dritte Netz 68a bis 68c niederer Ebene bilden beispielsweise ein CAN (Steuereinrichtungsbereichsnetz). Das CAN kann hier beispielsweise ein schnelles CAN sein. Beim Beispiel aus 1 sind zehn ECU 62a bis 62j dargestellt, die Anzahl der ECU 62 ist jedoch nicht darauf beschränkt und kann beispielsweise ein beliebiger Wert zwischen 3 und 200 sein.
  • Wie in 1 dargestellt ist, weist die erste ECU 62a eine Signaleingabe-/Ausgabeeinheit 70, eine Recheneinrichtung 72 und eine Speichereinheit 74 auf. Wenngleich dies in 1 nicht dargestellt ist, haben die zweite bis zehnte ECU 62b bis 62j auch die gleiche Konfiguration wie die erste ECU 62a. Die Spezifikationen unterscheiden sich jedoch bei der ersten bis zehnten ECU 62a bis 62j.
  • Jede der ECU 62a bis 62j wird mit einem Zündschalter 80 (nachstehend als "IGSW 80" bezeichnet) als Startschalter ein- und ausgeschaltet. Insbesondere ist jede der ECU 62a bis 62j über eine Stromleitung (nicht dargestellt) und einen auf der Stromleitung angeordneten IGSW 80 mit einer Batterie 82 (Energiespeichervorrichtung) verbunden.
  • Der IGSW 80 gemäß der vorliegenden Ausführungsform ist von einem drehbaren Typ, und es können die Positionen "AUS", "ACC" (zusätzlich) und "EIN" von der einem Instrumentenpult (nicht dargestellt) gegenüberliegenden linken Seite ausgewählt werden. Wenn der IGSW 80 aus der "EIN"-Position nach rechts (im Uhrzeigersinn) gedreht wird, kann ferner die Position "ST" (Motorstart) ausgewählt werden, und der Motor startet dann.
  • Wenn sich der IGSW 80 in der "ACC"- und der "EIN"-Position befindet, wird gemäß der vorliegenden Ausführungsform jeder der ECU 62 Strom von der Batterie 82 zugeführt. Wenn sich der IGSW 80 in der "AUS"-Position befindet, wird die Stromzufuhr der Batterie 82 zu den jeweiligen ECU 62 im Wesentlichen unterbrochen.
  • Falls das Fahrzeug 14 eine so genannte Smartstartfunktion hat, kann der IGSW 80 ein Druckschalter sein, der für eine so genannte Smartstartfunktion verwendet wird.
  • Die erste bis zehnte ECU 62a bis 62j speichern einen Fehlercode (DTC) als eine Fehlergeschichte in der Speichereinheit 74 der ersten bis zehnten ECU 62a bis 62j, wenn in Zusammenhang mit ihrem eigenen Betrieb eine Abnormität auftritt. Zusätzlich speichert die Gateway-ECU 62a auch den DTC in der Speichereinheit 26, selbst wenn eine Abnormität in Zusammenhang mit der Kommunikation mit der zweiten bis zehnten ECU 62b bis 62j auftritt. In dieser Fehlergeschichte sind eine Fehlergeschichte in Bezug auf die Kommunikation (nachstehend als "Kommunikationsfehlergeschichte" bezeichnet) und eine andere Fehlergeschichte (nachstehend auch als "Nicht-Kommunikationsfehlergeschichte" bezeichnet) enthalten. Die Kommunikationsfehlergeschichte und die Nicht-Kommunikationsfehlergeschichte werden gemeinsam als allgemeine Fehlergeschichte bezeichnet.
  • Wenn beispielsweise eine Trennung kurz vor der achten ECU 62h (am Punkt 84 in 1) auftritt, speichern sowohl die Gateway-ECU 62a als auch die achte ECU 62h den DTC in den Speichereinheiten 74. Im Zustand, in dem die Trennung auftritt, kann die achte ECU 62h jedoch nicht mit der Gateway-ECU 62a kommunizieren. Daher kann die Neuschreibvorrichtung 12 nicht den in der achten ECU 62h gespeicherten DTC auslesen. Auch speichert, wenn ein Programmneuschreiben in jeder der ECU 62a bis 62j unterbrochen wird, jede der ECU 62a bis 62j auch den DTC als Kommunikationsfehlergeschichte in ihrer eigenen Speichereinheit 74.
  • [A2. Programmneuschreiben]
  • Als nächstes wird gemäß der vorliegenden Ausführungsform das Neuschreiben des in der Ziel-ECU 62tar gespeicherten Installationsprogramms Pi beschrieben.
  • (A2-1. Vorbereitung)
  • Vor dem Neuschreiben des Programms für einen zu ändernden spezifischen Zielvorgang Otar veranlasst der Benutzer (oder der Bediener) der Neuschreibvorrichtung 12 die Speichereinheit 26 der Neuschreibvorrichtung 12, die Daten zu speichern, die dem zu ändernden Zielvorgang Otar entsprechen. Insbesondere speichert der Benutzer mehrere Neuschreibprogramme Pr, die dem spezifischen zu ändernden Zielvorgang Otar entsprechen, in der Programmdatenbank 56
  • (Neuschreibprogramm-Datenbank).
  • Auch veranlasst der Benutzer, dass die Programmkennungsgeschichts-Datenbank 50 die Programmkennung (einschließlich der Versionsinformationen Iver) und dergleichen jedes Neuschreibprogramms Pr entsprechend dem zu ändernden Zielvorgang Otar (siehe 2) speichert. Ferner veranlasst der Benutzer, dass die Reihenfolgedatenbank 52 die Prioritätsreihenfolgeinformationen Ipo des Neuschreibprogramms Pr (siehe 2) speichert. Ferner veranlasst der Benutzer, dass die Satzdatenbank 54 die Satznummer Nset, die Kandidaten-ECU-Kennungen, die Kandidatenprogrammkennungen usw. des Neuschreibprogramms Pr (siehe 2) speichert. Beispielsweise wird der DLC 32 der Neuschreibvorrichtung 12 mit einem Personalcomputer (nicht dargestellt) verbunden, und die vorstehend erwähnten Daten werden vom Personalcomputer in die Speichereinheit 26 kopiert.
  • Daten, die zur Neuschreibvorrichtung 12 zu kopieren sind, werden von einem Verwalter des Programmneuschreibsystems 10 erzeugt und in einem externen Server (nicht dargestellt) gespeichert. Die im externen Server gespeicherten Daten werden zum Personalcomputer heruntergeladen. Wenn die Neuschreibvorrichtung 12 eine Kommunikationsfunktion mit dem externen Server hat, kann die Neuschreibvorrichtung 12 auch Daten direkt vom externen Server erfassen.
  • (A2-2. Eigentliches Neuschreiben)
  • (A2-2-1. Gesamtablauf beim Neuschreiben)
  • 3 ist ein Flussdiagramm für das Programmneuschreiben gemäß dieser Ausführungsform. Die 3 und 4, 5 und 7, die später beschrieben werden, werden hauptsächlich von der Recheneinrichtung 24 (Neuschreibsteuereinrichtung) der Neuschreibvorrichtung 12 ausgeführt. Wenn der Benutzer in Schritt S1 von 3 den Stromschalter (nicht dargestellt) der Neuschreibvorrichtung 12 einschaltet, wird die Neuschreibvorrichtung 12 aktiviert. In Schritt S2 zeigt die Neuschreibvorrichtung 12 ein Auswahlmenü auf der Anzeigeeinheit 28 an. Das Auswahlmenü beinhaltet beispielsweise ein aufeinander folgendes Neuschreiben des Programms P, ein individuelles Neuschreiben des Programms P und dergleichen. Das aufeinander folgende Neuschreiben ist ein Menü zum aufeinander folgenden Neuschreiben der Programme Pi der mehreren Ziel-ECU 62tar, und das individuelle Neuschreiben ist ein Menü zum Neuschreiben des Programms Pi der einzelnen Ziel-ECU 62tar.
  • Wenn ein aufeinander folgendes Neuschreiben des Programms P im Auswahlmenü ausgewählt wird (S3: JA), wird das Programm P in den Schritten S4 bis S10 aufeinander folgend neu geschrieben. Wenn ein anderes Menü als das aufeinander folgende Neuschreiben des Programms P ausgewählt wird (S3: NEIN), wird das ausgewählte Menü ausgeführt (die diesem Menü entsprechenden Schritte sind in 3 nicht dargestellt).
  • In Schritt S4 führt die Neuschreibvorrichtung 12 einen Prozess zum Auswählen einer Kombination von Neuschreibkandidaten-ECU 62can aus (nachstehend als "Prozess zur Kombinationsauswahl von Neuschreibkandidaten-ECU" oder "Kombinationsauswahlprozess" bezeichnet). Einzelheiten von Schritt S4 werden später mit Bezug auf 4 beschrieben. In Schritt S5 stellt die Neuschreibvorrichtung 12 fest, ob es eine Kombination auswählbarer Neuschreibkandidaten-ECU 62can infolge des Kombinationsauswahlprozesses gibt. Falls dies der Fall ist (S5: JA), wird der Prozess in Schritt S6 fortgesetzt.
  • In Schritt S6 veranlasst die Neuschreibvorrichtung 12 die Anzeigeeinheit 28, auswählbare Kombinationen anzuzeigen. Wenn es nur eine auswählbare Kombination gibt, wird die einzige Kombination angezeigt. Zusätzlich kann die Neuschreibvorrichtung 12 selbst dann, wenn die Kombination, die im Prozess des Auswählens der Kombination von Neuschreibkandidaten-ECU als auswählbar bestimmt wurde, eine ECU 62 aufweist, für die eine Neuschreibverbotseinstellung festgelegt wurde, über das Verbot auf der Anzeigeeinheit 28 informieren.
  • Wenn es mehrere auswählbare Kombinationen gibt, kann die Neuschreibvorrichtung 12 nur die letzten Kombinationen auf der Grundlage der in der Satzdatenbank 54 gespeicherten Datumsangaben anzeigen. Falls in jeder Kombination unterschiedliche Versionsinformationen Iver in Bezug auf die gleiche ECU 62 enthalten sind, kann daher das Programm Pr der letzten Version zuerst neu geschrieben werden. Daher kann das Neuschreiben des Programms Pr mit der älteren Version vermieden werden.
  • In Schritt S7 stellt die Neuschreibvorrichtung 12 fest, ob eine Kombination vom Benutzer durch die Vorgangseingabeeinheit 22 ausgewählt wurde. Wenn eine Kombination ausgewählt wurde (S7: JA), wird der Prozess in Schritt S8 fortgesetzt. Falls keine Kombination ausgewählt wurde und ein Ende des aufeinander folgenden Neuschreibens ausgewählt wird (S7: NEIN), wird der Prozess in Schritt S10 fortgesetzt.
  • In Schritt S8 führt die Neuschreibvorrichtung 12 einen Prozess zum aufeinander folgenden Neuschreiben des Programms für jede ECU 62 (Ziel-ECU 62tar) aus, die von den mehreren Neuschreibkandidaten-ECU 62can, die in der ausgewählten Kombination enthalten sind, das Programm tatsächlich neu schreibt (nachstehend als "aufeinander folgende Programmneuschreibverarbeitung" bezeichnet). Einzelheiten von Schritt S8 werden später mit Bezug auf 5 beschrieben. In Schritt S9 führt die Neuschreibvorrichtung 12 einen Prozess zum Bestätigen des Abschlusses des Programmneuschreibens aus (nachstehend als "Neuschreibabschlussbestätigungsprozess" bezeichnet). Einzelheiten von Schritt S9 werden später mit Bezug auf 7 beschrieben. Nach Schritt S9 kehrt der Prozess zu Schritt S5 zurück.
  • Wenn es in Schritt S5 keine Kombination auswählbarer Neuschreibkandidaten-ECU 62can gibt (S5: NEIN), löscht die Neuschreibvorrichtung 12 die vorübergehend für das Programmneuschreiben erzeugte Neuschreibliste 58 in Schritt S10, und das aufeinander folgende Neuschreiben des Programms P wird beendet. Die Liste 58 wird später in Schritt S30 usw. in 4 beschrieben.
  • (A2-2-2. Prozess zur Kombinationsauswahl neu schreibbarer Kandidaten-ECU (Einzelheit von S4 in Fig. 3))
  • 4 ist ein Flussdiagramm (Einzelheiten von S4 in 3) des Prozesses zur Kombinationsauswahl der Neuschreibkandidaten-ECU gemäß der vorliegenden Ausführungsform. In Schritt S21 aus 4 richtet die Neuschreibvorrichtung 12 eine Verbindung mit dem fahrzeuginternen Netz 60 ein. Nach dem Einrichten der Verbindung wartet die Neuschreibvorrichtung 12 während einer vorgegebenen Zeit, bis die Sitzungen in den ECU 62a bis 62j abgeschlossen wurden.
  • In Schritt S22 fordert die Neuschreibvorrichtung 12 bei der Gateway-ECU 62a den DTC an. Ansprechend auf die Anforderung sendet die Gateway-ECU 62a den DTC zur Neuschreibvorrichtung 12, falls es einen in ihrer eigenen Speichereinheit 74 gespeicherten DTC gibt. Falls es keinen DTC gibt, antwortet die Gateway-ECU 62a, dass kein DTC aufgezeichnet ist. Wenn es keinen DTC gibt, kann die Gateway-ECU 62a alternativ nicht antworten.
  • In Schritt S23 stellt die Neuschreibvorrichtung 12 auf der Grundlage der Antwort von der Gateway-ECU 62a fest, ob es einen Kommunikationsfehler in der Gateway-ECU 62a gibt. Wenn der DTC beispielsweise von der Gateway-ECU 62a empfangen wird, stellt die Neuschreibvorrichtung 12 fest, ob der DTC in Verbindung mit einer Kommunikationsfehlergeschichte steht. Wenn die Gateway-ECU 62a alternativ eine Antwort ausgibt, dass der DTC nicht aufgezeichnet ist, kann die Neuschreibvorrichtung 12 auf der Grundlage davon, ob es eine Antwort von der Gateway-ECU 62a gibt, feststellen, ob ein Kommunikationsfehler in der Gateway-ECU 62a auftritt.
  • Wenn kein Kommunikationsfehler in der Gateway-ECU 62a auftritt (S23: JA), fordert die Neuschreibvorrichtung 12 den DTC in Schritt S24 von den anderen ECU 62 (zweite bis zehnte ECU 62b bis 62j), die von der Gateway-ECU 62a verschieden sind, an. Ansprechend auf die Anforderung übertragen die zweite bis zehnte ECU 62b bis 62j, falls ein DTC in ihren eigenen Speichereinheiten 74 gespeichert ist, diesen zur Neuschreibvorrichtung 12. Falls es keinen DTC gibt, antworten die zweite bis zehnte ECU 62b bis 62j, dass der DTC nicht aufgezeichnet ist. Alternativ können die zweite bis zehnte ECU 62b bis 62j nicht antworten, wenn kein DTC aufgezeichnet ist.
  • In Schritt S25 stellt die Neuschreibvorrichtung 12 auf der Grundlage der Antworten von den anderen ECU 62 (zweite bis zehnte ECU 62b bis 62j) einen Kommunikationsfehler in den anderen ECU 62 (zweite bis zehnte ECU 62b bis 62j) fest. Diese Feststellung kann ebenso erfolgen wie in Schritt S23. Wenn in den anderen ECU 62 (zweite bis zehnte ECU 62b bis 62j) kein Kommunikationsfehler auftritt (S25: JA), wird der Prozess in Schritt S27 fortgesetzt.
  • Wenn es in Schritt 23 einen Kommunikationsfehler in der Gateway-ECU 62a gibt (S23: NEIN) oder wenn es einen Kommunikationsfehler in einer der von der Gateway-ECU 62a verschiedenen ECU 62 gibt (zweiten bis zehnten ECU 62b bis 62j) (S25: NEIN), veranlasst die Neuschreibvorrichtung 12 die Anzeigeeinheit 28, in Schritt S26 eine Fehlermeldung anzuzeigen, um über den Kommunikationsfehler zu informieren.
  • In Schritt S27 erhält die Neuschreibvorrichtung 12 die ECU-Kennungen (Systemkennung) und die aktuellen Programmkennungen von allen ECU 62 (erste bis zehnte ECU 62a bis 62j), die im Netz 60 enthalten sind und neu schreibbare Programme aufweisen. Die aktuelle Programmkennung weist einen Programmnamen und aktuelle Versionsinformationen Iver auf.
  • In den folgenden Schritten S28 bis S30 wird der Zielvorgang Otar, der im Fahrzeug 14 zu ändern ist, spezifiziert. Das heißt, dass die Neuschreibvorrichtung 12 in Schritt S28 die letzte Programmkennung entsprechend jeder der in Schritt S27 aus der Programmkennungsgeschichts-Datenbank 50 ausgelesenen aktuellen Programmkennungen abruft. Dann hält die Neuschreibvorrichtung 12 die extrahierte letzte Programmkennung in Zusammenhang mit der ECU-Kennung und der aktuellen Programmkennung.
  • Gemäß der vorliegenden Ausführungsform hat eine ECU 62 nur ein einziges Programm Pi (siehe 2). Daher kann die letzte Programmkennung zur Zeit der Extraktion der letzten Programmkennung (S28) unter Verwendung der ECU-Kennung an Stelle der aktuellen Programmkennung spezifiziert werden.
  • In Schritt S29 extrahiert und erfasst die Neuschreibvorrichtung 12 den Kandidatenprogrammkennungssatz, der Daten enthält, die teilweise oder vollständig mit jenen des letzten aus der Satzdatenbank 54 extrahierten Programmkennungssatzes übereinstimmen und die Satznummer Nset (mit anderen Worten den zu ändernden Zielvorgang Otar). Auf diese Weise können ein oder mehrere Kandidaten für den Zielvorgang Otar, den das Fahrzeug 14 ändern muss, identifiziert werden.
  • In Schritt S30 spezifiziert die Neuschreibvorrichtung 12 den Zielvorgang Otar, der für die Änderung ein Programmneuschreiben im Fahrzeug 14 erfordert, und registriert ihn in der Liste 58.
  • Das heißt, dass die Neuschreibvorrichtung 12 für jeden Satz (zu ändernden Zielvorgang Otar) feststellt, ob es eine aktuelle Programmkennung gibt, die nicht mit der letzten Programmkennung übereinstimmt, selbst wenn der Programmname der gleiche ist. Dann extrahiert die Neuschreibvorrichtung 12 einen Satz (zu ändernden Zielvorgang Otar), worin eine aktuelle Programmkennung vorhanden ist, die nicht mit der letzten Programmkennung des Satzes (zu ändernder Zielvorgang Otar), wofür ein Programmneuschreiben erforderlich ist, übereinstimmt. Die Neuschreibvorrichtung 12 registriert die extrahierten Informationen für den Satz (Satznummer Nset, ECU-Kennung, aktuelle Programmkennung und letzte Programmkennung) in der Liste 58. Der in dieser Liste 58 registrierte Satz ist ein in Schritt S5 aus 3 auswählbarer Satz.
  • Andererseits kann in einem Fall, in dem es keinen Satz gibt, in dem die aktuelle Programmkennung nicht mit der letzten Programmkennung übereinstimmt, festgestellt werden, dass das Programmneuschreiben abgeschlossen wurde, so dass das Programmneuschreiben nicht mehr erforderlich ist. Dementsprechend löscht die Neuschreibvorrichtung 12 die Informationen über den Satz (oder beendet das Festhalten von diesen), worin es keine aktuelle Programmkennung gibt, die nicht mit der letzten Programmkennung übereinstimmt. Falls es keinen in der Liste 58 zu registrierenden Satz gibt, teilt die Neuschreibvorrichtung 12 dies auf der Anzeigeeinheit 28 mit.
  • (A2-2-3. Aufeinander folgender Programmneuschreibprozess (Einzelheiten von S8 in Fig. 3))
  • 5 ist ein Flussdiagramm (Einzelheiten von S8 in 3) des aufeinander folgenden Programmneuschreibprozesses gemäß der vorliegenden Ausführungsform. 6 ist ein Diagramm zum Erklären des Kommunikationszustands und des Betriebszustands der Neuschreibvorrichtung 12 und jeder der ECU 62 bei der aufeinander folgenden Programmneuschreibverarbeitung und der Neuschreibabschlussbestätigungsverarbeitung gemäß der vorliegenden Ausführungsform. Wie vorstehend beschrieben wurde, wird die aufeinander folgende Programmneuschreibverarbeitung (S8 in 3) ausgeführt, nachdem der Benutzer eine der Kombinationen ausgewählt hat, die in Schritt S7 in 3 ausgewählt werden können. Bei der in 6 dargestellten aufeinander folgenden Programmneuschreibverarbeitung wird das eigentliche aufeinander folgende Programmneuschreiben (S48 usw. in 5) während des Zeitraums von t2 bis t3 ausgeführt und wird die Neuschreibabschlussbestätigungsverarbeitung von der Zeit t3 bis zur Zeit t6 ausgeführt.
  • In Schritt S41 aus 5 spezifiziert die Neuschreibvorrichtung 12 die Neuschreibprioritätsreihenfolge Op entsprechend dem vom Benutzer ausgewählten Satz (oder der Satznummer Nset oder dem zu ändernden Zielvorgang Otar) unter Verwendung der Prioritätsreihenfolgeinformationen Ipo der Reihenfolgedatenbank 52.
  • Für das Festlegen der Neuschreibreihenfolge Op in der Reihenfolgedatenbank 52 werden beispielsweise folgende Regeln (oder folgende Norm) verwendet.
  • (Regel 1) Für die Gateway-ECU 62a (ECU höherer Ebene) liegt die Neuschreibreihenfolge später als jene der anderen ECU 62b bis 62j (ECU niederer Ebene).
  • (Regel 2) In Bezug auf eine ECU 62 (Daten bereitstellende ECU), welche für das Neuschreiben einer anderen ECU 62 verwendete Daten ausgibt, liegt die Reihenfolge des Neuschreibens später als bei der anderen ECU 62.
  • In Bezug auf Regel 1 sei bemerkt, dass die Gateway-ECU 62a, falls das Programm P der Gateway-ECU 62a zuerst neu geschrieben wird, die Kommunikationsvermittlungsfunktion bis zum Neustart unterbricht. Deshalb geschieht das Neuschreiben der Gateway-ECU 62a später.
  • In Bezug auf Regel 2 sei bemerkt, dass die Daten bereitstellende ECU, falls das Programm P der Daten bereitstellenden ECU zuerst neu geschrieben wird, das Bereitstellen für das Neuschreiben der anderen ECU 62 notwendiger Daten bis zum Neustart unterbricht. Deshalb geschieht das Neuschreiben der Daten bereitstellenden ECU später. Ein Fall, der sich auf Regel 2 bezieht, ist beispielsweise ein Fall, in dem die Daten bereitstellende ECU die Fahrzeuggeschwindigkeit V einer anderen ECU 62 bereitstellt, welche unter der Bedingung neu zu schreiben ist, dass die Fahrzeuggeschwindigkeit V als Anfangsbedingung des Programmneuschreibens der anderen ECU 62 null [km/h] ist.
  • In Schritt S42 von 5 ordnet die Neuschreibvorrichtung 12 die Sätze der Kandidaten-ECU-Kennungen, der aktuellen Programmkennungen und der letzten Programmkennungen unter Verwendung der in Schritt S41 spezifizierten Neuschreibreihenfolge Op um. Die Sätze aus den Kandidaten-ECU-Kennungen, den aktuellen Programmkennungen und den letzten Programmkennungen vor der Umordnung werden durch die Schritte S27 bis S30 in 4 in der Liste 58 registriert.
  • In Schritt S43 weist die Neuschreibvorrichtung 12 jedem Satz aus der umgeordneten Kandidaten-ECU-Kennung, aktuellen Programmkennung und letzten Programmkennung eine Bezugsnummer Nref zu. Die Bezugsnummer Nref gibt die Reihenfolge des Neuschreibens für jeden Satz an.
  • In Schritt S44 setzt die Neuschreibvorrichtung 12 eine Neuschreibzielnummer Ntar (nachstehend auch als "Zielnummer Ntar" bezeichnet) zurück, welche die Bezugsnummer Nref angibt, deren Priorität für das Neuschreiben null geworden ist. In Schritt S45 addiert die Neuschreibvorrichtung 12 1 zum aktuellen Wert der Neuschreibzielnummer Ntar und legt eine neue Zielnummer Ntar fest. Nach Abschluss des Programmneuschreibens für eine bestimmte ECU 62 wartet die Neuschreibvorrichtung 12 vor oder nach Schritt S44 eine vorgegebene Zeit, bis eine Sitzung in einer anderen ECU 62 endet, bevor das Programmneuschreiben für die andere ECU 62 eingeleitet wird.
  • In Schritt S46 aktualisiert die Neuschreibvorrichtung 12 die aktuelle Programmkennung (auch als "Zielprogrammkennung" bezeichnet), die der Kandidaten-ECU 62can mit der Bezugsnummer Nref, die mit der Neuschreibzielnummer Ntar übereinstimmt, entspricht. In Schritt S47 vergleicht die Neuschreibvorrichtung 12 die Zielprogrammkennung mit dem gleichen Programmnamen und die letzte Programmkennung und stellt fest, ob beide übereinstimmen. Falls sie übereinstimmen (S47: JA), ist das installierte Programm Pi bereits die letzte Version. In diesem Fall wird das Programm in Schritt S49 fortgesetzt, ohne dass ein Programmneuschreiben für die Kandidaten-ECU 62can ausgeführt wird, welche die Bezugsnummer Nref aufweist, die mit der Neuschreibzielnummer Ntar übereinstimmt.
  • Wenn die beiden andererseits nicht übereinstimmen (S47: NEIN), ist, weil das installierte Programm Pi nicht die letzte Version ist, das Neuschreiben des installierten Programms Pi erforderlich. In diesem Fall wird die Kandidaten-ECU 62can als die Ziel-ECU 62tar festgelegt. In Schritt S48 führt die Neuschreibvorrichtung 12 das Programmneuschreiben für die Ziel-ECU 62tar mit der Bezugsnummer Nref aus, die mit der Neuschreibzielnummer Ntar übereinstimmt.
  • Ferner leitet die Neuschreibvorrichtung 12 eine periodische Übertragung eines Netzkommunikationsunterbrechungsanforderungssignals Sstp (nachstehend auch als "Kommunikationsunterbrechungsanforderungssignal Sstp" oder "Unterbrechungsanforderungssignal Sstp" bezeichnet) zu jeder der ECU 62 ein. Das Unterbrechungsanforderungssignal Sstp fordert die ECU 62a bis 62j (Ziel-ECU 62tar und andere ECU 62) auf, die wechselseitige Kommunikation zwischen den jeweiligen ECU 62 zu unterbrechen und die DTC-Speicherung zu verbieten. Die Übertragung des Unterbrechungsanforderungssignals Sstp wird eingeleitet, bevor die Ausführung des Programmneuschreibens beginnt (siehe 6).
  • Die Übertragung des Unterbrechungsanforderungssignals Sstp wird in einem vorgegebenen Intervall (beispielsweise alle 2 bis 4 Sekunden) ausgeführt. Die ECU 62a bis 62j, die das Unterbrechungsanforderungssignal Sstp empfangen haben, unterbrechen die Kommunikation über das Netz 60 und die kommunikationsbezogene DTC-Speicherung und die Ausgabe während eines vorgegebenen Zeitraums (beispielsweise zwischen 4 bis 10 Sekunden). Auf diese Weise unterbrechen die ECU 62, die von der Ziel-ECU 62tar verschieden sind, während die Neuschreibvorrichtung 12 weiter das Unterbrechungsanforderungssignal Sstp sendet, weiter die Netzkommunikation und die kommunikationsbezogene DTC-Speicherung. Das Unterbrechungsanforderungssignal Sstp kann das Aussetzen der Netzkommunikation, bis ein Anforderungssignal zum Aufheben des Aussetzens der Netzkommunikation (Anforderungsaufhebesignal Sfin) übertragen wird, fordern.
  • Es sei bemerkt, dass die Ziel-ECU 62tar, die das Programmneuschreiben abgeschlossen hat, in Schritt S48 nicht neu gebootet wird. Das Neubooten der Ziel-ECU 62tar geschieht im Neuschreibabschlussbestätigungsprozess (S51 bis S55 in 7, wie später beschrieben wird).
  • In 6 ist gezeigt, dass die Neuschreibvorrichtung 12 das Kommunikationsunterbrechungsanforderungssignal Sstp während der Zeit zwischen t1 und t3 periodisch sendet. Jede der ECU 62a bis 62j, welche das Unterbrechungsanforderungssignal Sstp empfangen hat, tritt in einen Kommunikationsunterbrechungszustand ein, worin die wechselseitige Kommunikation unterbrochen ist. Es ist jedoch für die Ziel-ECU 62tar, für die das Programmneuschreiben tatsächlich ausgeführt wird, eine Kommunikation mit der Neuschreibvorrichtung 12 möglich, um das Programm neu zu schreiben.
  • In Schritt S49 stellt die Neuschreibvorrichtung 12 fest, ob die Neuschreibzielnummer Ntar gleich dem Maximalwert Nref_max der Bezugsnummer Nref ist. Falls die Neuschreibzielnummer Ntar nicht gleich dem Maximalwert Nref_max ist (S49: NEIN), gibt es eine Kandidaten-ECU 62can, welche die Prüfung nicht beendet hat, ob sich das installierte Programm Pi in der letzten Version befindet. Daher kehrt der Prozess zu Schritt S45 zurück. Wenn die Neuschreibzielnummer Ntar gleich dem Maximalwert Nref_max ist (S49: JA), haben alle Kandidaten-ECU 62can in der Kombination die Prüfung beendet, ob sich das installierte Programm Pi in der letzten Version befindet. Daher beendet die Neuschreibvorrichtung 12 den aufeinander folgenden Programmneuschreibprozess und fährt mit dem Neuschreibabschlussbestätigungsprozess fort (S9 in 3, 7).
  • (A2-2-4. Neuschreibabschlussbestätigungsverarbeitung (Einzelheiten von S9 in Fig. 3))
  • (A2-2-4-1. Gesamtablauf)
  • 7 ist ein Flussdiagramm (Einzelheiten von S9 in 3) des Neuschreibabschlussbestätigungsprozesses gemäß der vorliegenden Ausführungsform. In Schritt S51 veranlasst die Neuschreibvorrichtung 12 die Anzeigeeinheit 28, eine Abschaltanforderung anzuzeigen, wodurch der Benutzer aufgefordert wird, die Ziel-ECU 62tar abzuschalten. In der Abschaltanforderung gemäß der vorliegenden Ausführungsform wird der Benutzer aufgefordert, den IGSW 80 abzuschalten. Es sei bemerkt, dass das Kommunikationsunterbrechungsanforderungssignal Sstp von der Zeit aus Schritt S48 in 5 an weiter periodisch ausgesendet wird.
  • In Schritt S52 prüft die Neuschreibvorrichtung 12, ob jede Ziel-ECU 62tar abgeschaltet wurde. Insbesondere überträgt die Neuschreibvorrichtung 12 das erste Betriebsprüfsignal Scnf1 zu allen Ziel-ECU 62tar. Dann bestätigt die Neuschreibvorrichtung 12 das Abschalten jeder Ziel-ECU 62tar auf der Grundlage des Fehlens einer Antwort auf das erste Betriebsprüfsignal Scnf1. Als das erste Betriebsprüfsignal Scnf1 kann beispielsweise ein Batteriespannungsanforderungssignal zum Anfordern des Lesens der Spannung der Batterie 82 verwendet werden. Eine solche Feststellung kann auch durch Ausgeben eines Ein-/Ausschaltsignals des IGSW 80 an die Neuschreibvorrichtung 12 vorgenommen werden. Gemäß der vorliegenden Ausführungsform wird die Bestätigung des Ausschaltens nacheinander einzeln für die jeweiligen Ziel-ECU 62tar ausgeführt (Einzelheiten werden später mit Bezug auf die 8 und 9 beschrieben).
  • Wenn irgendwelche der Ziel-ECU 62tar nicht abgeschaltet wurden (S52: NEIN), kehrt der Prozess zu Schritt S52 zurück. Falls jedoch irgendwelche der Ziel-ECU 62tar den Strom selbst nach Verstreichen eines vorgegebenen Zeitraums nicht abschalten, kann die Neuschreibvorrichtung 12 dies durch eine Angabe auf der Anzeigeeinheit 28 mitteilen. Wenn alle Ziel-ECU 62tar abgeschaltet wurden (S52: JA), wird der Prozess in Schritt S53 fortgesetzt.
  • In Schritt S53 beendet die Neuschreibvorrichtung 12 die Übertragung des Kommunikationsunterbrechungsanforderungssignals Sstp für jede der ECU 62a bis 62j (Zeit t4 in 6). In Schritt S54 veranlasst die Neuschreibvorrichtung 12 die Anzeigeeinheit 28, dem Benutzer eine Anforderung zum Wiedereinschalten jeder Ziel-ECU 62tar anzuzeigen. Ansprechend auf die Anforderung zum Wiedereinschalten des Stroms gemäß der vorliegenden Ausführungsform wird der Benutzer aufgefordert, den IGSW 80 wieder einzuschalten.
  • In Schritt S55 stellt die Neuschreibvorrichtung 12 fest, ob alle Ziel-ECU 62tar eingeschaltet wurden (mit anderen Worten, ob alle Ziel-ECU 62tar neu gebootet wurden). Insbesondere sendet die Neuschreibvorrichtung 12 das zweite Betriebsprüfsignal Scnf2 zu allen Ziel-ECU 62tar. Dann bestätigt die Neuschreibvorrichtung 12 das Einschalten aller Ziel-ECU 62tar mit einer Antwort auf das zweite Betriebsprüfsignal Scnf2.
  • Als zweites Betriebsprüfsignal Scnf2 kann ein Aktuelle-Programmkennungs-Anforderungssignal Sreqpid (nachstehnd auch als "Kennungsanforderungssignal Sreqpid" bezeichnet), welches die aktuelle Programmkennung jeder Ziel-ECU 62tar anfordert, verwendet werden. Wie vorstehend beschrieben wurde, beinhaltet die aktuelle Programmkennung den Programmnamen und die aktuellen Versionsinformationen Iver. Daher wirkt das Kennungsanforderungssignal Sreqpid auch als ein Versionsinformations-Anforderungssignal. Durch die Verwendung des Kennungsanforderungssignals Sreqpid als zweites Betriebsprüfsignal Scnf2 kann der später beschriebene Prozess aus Schritt S56 problemlos ausgeführt werden. Durch Ausgeben des Ein-/Ausschaltsignals des IGSW 80 an die Neuschreibvorrichtung 12 kann auch die Feststellung in Schritt S56 gemacht werden.
  • Wenn eine der Ziel-ECU 62tar nicht eingeschaltet ist (S55: NEIN), wird Schritt S55 wiederholt. Das heißt, dass die Neuschreibvorrichtung 12 weiter das Kennungsanforderungssignal Sreqpid zur Ziel-ECU 62tar sendet, wovon die aktuelle Programmkennung nicht empfangen wurde. Falls eine der Ziel-ECU 62tar jedoch selbst nach Verstreichen des vorgegebenen Zeitraums den Strom nicht einschaltet, kann die Neuschreibvorrichtung 12 die Anzeigeeinheit 28 veranlassen, dies anzuzeigen. Wenn alle Ziel-ECU 62tar eingeschaltet wurden (S55: JA), wird der Prozess in Schritt S56 fortgesetzt.
  • In Schritt S56 stellt die Neuschreibvorrichtung 12 fest, ob die aktuellen Programmkennungen aller Ziel-ECU 62tar mit der letzten Programmkennung übereinstimmen. Mit anderen Worten stellt die Neuschreibvorrichtung 12 fest, ob die Versionsinformationen Iver und die letzten Versionsinformationen Iver für das installierte Programm Pi jeder Ziel-ECU 62tar übereinstimmen. Es sei bemerkt, dass die letzte Programmkennung hier in der Liste 58 registriert ist. Zusätzlich wird, wenn das Einschalten jeder Ziel-ECU 62tar in Schritt S55 durch andere Mittel als das Kennungsanforderungssignal Sreqpid bestätigt wird, das Kennungsanforderungssignal Sreqpid während der Schritte S55 und S56 zu jeder Ziel-ECU 62tar gesendet und wird die aktuelle Programmkennung jeder Ziel-ECU 62tar erhalten.
  • Wenn die aktuelle Programmkennung für alle Ziel-ECU 62tar mit der letzten Programmkennung übereinstimmt (S56: JA), zeigt die Neuschreibvorrichtung 12 den Neuschreibabschluss in Schritt S57 auf der Anzeigeeinheit 28 an und beendet dann die Neuschreibabschlussbestätigungsverarbeitung. Wenn die aktuelle Programmkennung jeglicher der Ziel-ECU 62tar nicht mit der letzten Programmkennung übereinstimmt (S56: NEIN), veranlasst die Neuschreibvorrichtung 12 die Anzeigeeinheit 28, diesbezüglich in Schritt S58 eine Fehlermeldung anzuzeigen.
  • (A2-2-4-2. Beziehung zwischen der Feststellung eines Abschaltens jeder Ziel-ECU 62tar (Schritt S52 in Fig. 7) und der Anzeige auf der Anzeigeeinheit 28 (S51, S54))
  • In Schritt S52 aus 7 wird wiederum, wie vorstehend beschrieben, das Abschalten jeder Ziel-ECU 62tar bestätigt. In diesem Fall kann zuverlässig bestätigt werden, dass jede Ziel-ECU 62tar abgeschaltet wurde. Weil andererseits die für die Bestätigung erforderliche Zeit verhältnismäßig lang ist, ist es, falls der IGSW einmal abgeschaltet und bald darauf eingeschaltet wird, nicht möglich, das Abschalten jeder Ziel-ECU 62tar festzustellen. In diesem Fall besteht die Möglichkeit, dass nicht einfach durch Wiederholen von Schritt S52 aus 7 zu Schritt S53 übergegangen werden kann.
  • Daher kann gemäß der vorliegenden Ausführungsform durch die Verwendung der Anzeige (S51, S54) der Anzeigeeinheit 28 zuverlässig festgestellt werden, dass alle Ziel-ECU 62tar abgeschaltet wurden. Dieser Aspekt wird genauer mit Bezug auf die 8 und 9 beschrieben.
  • 8 ist ein Diagramm, das gemäß einer vergleichenden Ausführungsform ein Beispiel zeigt, wie die Ziel-ECU 62tar das Abschalten sequenziell prüft. Gemäß der vergleichenden Ausführungsform (und dem Beispiel in 9) beträgt die Anzahl der Ziel-ECU 62tar drei. Gemäß dieser vergleichenden Ausführungsform wird die Anzeige (S51, S54 in 7) der Anzeigeeinheit 28 gemäß der vorliegenden Ausführungsform nicht verwendet. Stattdessen erhält der Benutzer (oder Bediener) der Neuschreibvorrichtung 12 Informationen zum Betrieb vom Wartungshandbuch oder dergleichen. Weil gemäß der vergleichenden Ausführungsform aus 8 der Benutzer den IGSW 80 zu schnell nach seinem Abschalten einschaltet, kann die Neuschreibvorrichtung 12 nicht feststellen, ob die dritte Ziel-ECU 62tar (beispielsweise die erste ECU 62a) abgeschaltet wurde.
  • Das heißt, dass die Neuschreibvorrichtung 12 in 8 mit der Beurteilung beginnt, ob die erste Ziel-ECU 62tar (beispielsweise die vierte ECU 62d) von der Zeit t11 an abgeschaltet ist. Wenn der Benutzer zur Zeit t12 den IGSW 80 abschaltet, wird jede Ziel-ECU 62tar abgeschaltet. Vom Zeitpunkt t12 bis zum Zeitpunkt t13 stellt die Neuschreibvorrichtung 12 fest, dass die erste Ziel-ECU 62tar abgeschaltet ist. Als nächstes beginnt die Neuschreibvorrichtung 12 mit der Beurteilung, ob die zweite Ziel-ECU 62tar (beispielsweise die siebte ECU 62g) abgeschaltet ist. Von der Zeit t13 bis zur Zeit t14 stellt die Neuschreibvorrichtung 12 fest, dass die zweite Ziel-ECU 62tar abgeschaltet ist.
  • Als nächstes beginnt die Neuschreibvorrichtung 12 mit der Beurteilung, ob die dritte Ziel-ECU 62tar (beispielsweise die erste ECU 62a) abgeschaltet ist. Zur Zeit t15 schaltet der Benutzer den IGSW 80 ein. Dadurch werden alle drei Ziel-ECU 62tar neu gestartet. Andererseits hat die Neuschreibvorrichtung 12 zur Zeit t15 noch nicht festgestellt, dass die dritte Ziel-ECU 62tar abgeschaltet ist. Weil die dritte Ziel-ECU 62tar nicht abgeschaltet ist, kann die Neuschreibvorrichtung 12 daher nicht zu Schritt S53 in 7 übergehen.
  • 9 ist ein Diagramm, das gemäß der vorliegenden Ausführungsform ein Beispiel zeigt, wie die jeweiligen Ziel-ECU 62tar sequenziell abgeschaltet werden. Beim Beispiel aus 9 zeigt die Anzeigeeinheit 28 die Anforderung zum Einschalten (IGSW-Ein-Anforderung) nicht wieder an, bis festgestellt wurde, dass alle Ziel-ECU 62tar abgeschaltet wurden. Daher kann sich der Bediener vom Abschaltvorgang des IGSW 80 bis zum Neueinschaltvorgang genügend Zeit nehmen und kann die Neuschreibvorrichtung 12 feststellen, dass die dritte Ziel-ECU 62tar (beispielsweise die erste ECU 62a) abgeschaltet ist.
  • Das heißt, dass die Neuschreibvorrichtung 12 in 9 mit der Beurteilung beginnt, ob die erste Ziel-ECU 62tar (beispielsweise die vierte ECU 62d) von der Zeit t21 an abgeschaltet ist. Zu dieser Zeit veranlasst die Neuschreibvorrichtung 12 die Anzeigeeinheit 28, eine Abschaltanforderung anzuzeigen (S51 in 7).
  • Wenn der Benutzer zur Zeit t22 den IGSW 80 abschaltet, wird jede Ziel-ECU 62tar abgeschaltet. Von der Zeit t22 bis zur Zeit t23 festigt die Neuschreibvorrichtung 12 die Beurteilung, dass die erste Ziel-ECU 62tar abgeschaltet ist. Als nächstes beginnt die Neuschreibvorrichtung 12 mit der Feststellung, ob die zweite Ziel-ECU 62tar (beispielsweise die siebte ECU 62g) abgeschaltet ist. Vom Zeitpunkt t23 bis zum Zeitpunkt t24 festigt die Neuschreibvorrichtung 12 die Beurteilung, dass die zweite Ziel-ECU 62tar abgeschaltet ist.
  • Als nächstes beginnt die Neuschreibvorrichtung 12 mit der Beurteilung, ob die dritte Ziel-ECU 62tar (beispielsweise die erste ECU 62a) abgeschaltet ist. Beim Beispiel aus 9 wird die Abschaltanforderung auf der Anzeigeeinheit 28 weiter angezeigt. Daher schaltet der Benutzer anders als gemäß der vergleichenden Ausführungsform aus 8 den IGSW 80 nicht ein. Die Neuschreibvorrichtung 12 kann die Anzeige auf der Anzeigeeinheit 28 zu einem Zeitpunkt, zu dem festgestellt wird, dass die erste Ziel-ECU 62tar abgeschaltet ist, von der Abschaltanforderung zur Standby-Anforderung schalten.
  • Vom Zeitpunkt t24 bis zum Zeitpunkt t25 festigt die Neuschreibvorrichtung 12 die Beurteilung, dass die dritte Ziel-ECU 62tar abgeschaltet ist. Zusammen damit schaltet die Neuschreibvorrichtung 12 die Anzeige auf der Anzeigeeinheit 28 zur Neueinschaltanforderung um (S54 in 7). Zur Zeit t26 schaltet der Bediener den IGSW 80 ein. Dadurch werden alle drei Ziel-ECU 62tar neu gestartet. Wenn alle Ziel-ECU 62tar eingeschaltet sind (S55 in 7: JA), beendet die Neuschreibvorrichtung 12 die Anzeige der Neueinschaltanforderung (Zeit t27).
  • Wie vorstehend beschrieben wurde, kann die Neuschreibvorrichtung 12 beim Beispiel aus 9 die Beurteilung festigen, dass alle Ziel-ECU 62tar abgeschaltet wurden, so dass der Prozess zu Schritt S53 in 7 übergehen kann.
  • [A3. Wirkungen gemäß der vorliegenden Ausführungsform]
  • Wie vorstehend beschrieben wurde, geschieht das Programmneuschreiben mit der Prioritätsrehenfolge Op entsprechend der Kombination der ECU 62 (Ziel-ECU 62tar), die bei jedem zu ändernden Zielvorgang Otar des Fahrzeugs 14 neu geschrieben werden müssen (5). Daher kann das Programm in der für das Fahrzeug 14 am besten geeigneten Reihenfolge neu geschrieben werden.
  • Ferner wird gemäß der vorliegenden Ausführungsform in Bezug auf die Ziel-ECU 62tar, welche die Kandidaten-ECU 62can sind, deren aktuelle Programmkennung (vorliegende Versionsinformationen Iver) nicht mit der letzten Programmkennung (letzte Versionsinformationen Iver) übereinstimmt, gemäß der Prioritätsreihenfolge Op für jeden zu ändernden Zielvorgang Otar das Neuschreiben zur letzten Version des Programms P nacheinander ausgeführt (4 und 5). Deshalb wird das Neuschreiben nur an den Kandidaten-ECU 62can ausgeführt, die neu geschrieben werden müssen, so dass der Neuschreibvorgang wirksam ausgeführt werden kann.
  • Selbst wenn ein Dienstanbieter in der Art eines Händlers oder dergleichen ein Programmneuschreiben für das sich auf dem Markt befindende Fahrzeug 14 ausführt, verwechselt der Wartungstechniker gemäß der vorstehenden Beschreibung nicht die Auswahl der Ziel-ECU 62tar. Zusätzlich kann der Aufwand für das Spezifizieren der Neuschreibreihenfolge Op verringert werden und kann ein geeigneter Neuschreibvorgang leicht implementiert werden.
  • Selbst wenn es eine Ziel-ECU 62tar gibt, die während des Programmneuschreibens nicht neu geschrieben werden konnte, wird der Neuschreibvorgang erneut ausgeführt. Dadurch kann die nicht neu geschriebene Ziel-ECU 62tar abgesehen von der Ziel-ECU 62tar, die bereits erfolgreich geschrieben wurde, neu geschrieben werden.
  • Gemäß der vorliegenden Ausführungsform registriert die Recheneinrichtung 24 (Neuschreibsteuereinrichtung) der Neuschreibvorrichtung 12 die Neuschreibkandidaten-ECU 62can, die mit den aktuellen Versionsinformationen Iver gepaart ist, welche nicht mit den letzten Versionsinformationen Iver übereinstimmen, als die Ziel-ECU 62tar in der Liste 58 (4). Ferner führt die Neuschreibvorrichtung 12 den Programmneuschreibvorgang mit der Prioritätsreihenfolge Op aus, die in der Reihenfolgedatenbank 52 für die letzte Version des Programms P für die Ziel-ECU 62tar, die in der Liste 58 registriert ist, gespeichert ist, aus (S8 in 3, 5). Hierdurch kann die Kombination der Ziel-ECU 62tar (oder die Kombination des Programms P entsprechend der Ziel-ECU 62tar), wofür ein Programmneuschreiben erforderlich ist, durch ein einfaches Verfahren identifiziert werden.
  • Wenn gemäß der vorliegenden Ausführungsform die Gateway-ECU 62a und die andere ECU 62 (eine oder mehrere von der zweiten bis zehnten ECU 62b bis 62j) Ziel-ECU 62tar sind, befindet sich die Gateway-ECU 62a später als die andere ECU 62 in der Neuschreibreihenfolge Op (S41 in 5). Wenn demgemäß mehrere ECU 62 aufeinander folgend neu geschrieben werden, können die Programme aufeinander folgend in der anderen ECU 62 und der Gateway-ECU 62a aufeinander folgend neu geschrieben werden, ohne durch Änderungen in den Verwendungsdaten infolge des Neuschreibens anderer zusammenwirkender ECU 62 beeinflusst zu werden.
  • Gemäß dieser Ausführungsform wird die Neuschreibreihenfolge der ECU 62 (Daten bereitstellende ECU), welche Daten ausgibt, die für das Neuschreiben der anderen ECU 62 zu verwenden sind, später gelegt als für die anderen ECU 62 (S41 in 5). Dadurch wird die Datenzufuhr zur Neuschreibvorrichtung 12 oder zur anderen ECU 62 nicht durch das Neuschreiben der Daten bereitstellenden ECU beeinflusst, und das Programmneuschreiben für die andere ECU 62can und die Daten bereitstellende ECU wird aufeinander folgend ausgeführt.
  • Gemäß der vorliegenden Ausführungsform speichert die Neuschreibprogrammdatenbank 56 die letzte Version des Neuschreibprogramms Pr mit dem gleichen Programmnamen. Zusätzlich verwendet die Recheneinrichtung 24 (Neuschreibsteuereinrichtung) der Neuschreibvorrichtung 12, wenn es mehrere zu ändernde Zielvorgänge Otar gibt, die Neuschreibkandidateninformationen Ican, die dem neuesten zu ändernden Zielvorgang Otar entsprechen.
  • In dem Fall, in dem die letzten Versionsinformationen Iver des Programms P für jeden zu ändernden Zielvorgang Otar des Fahrzeugs 14 gespeichert sind, enthalten die vor kürzerer Zeit gespeicherten Neuschreibkandidateninformationen Ican (mit einem neueren Datum) selbst dann, wenn das Programm P mit dem gleichen Programmnamen gespeichert wird, eine neue Version des Neuschreibprogramms Pr. Falls das Neuschreiben auf der Grundlage der vor kürzerer Zeit gespeicherten Neuschreibkandidateninformationen Ican ausgeführt wird, wird das neu zu schreibende Programm P der ECU 62 (Ziel-ECU 62tar) daher auf die letzte Version neu geschrieben. Wenn beim Neuschreiben auf der Grundlage der vorhergehenden Neuschreibkandidateninformationen Ican die gleiche ECU 62 enthalten ist, wird das Neuschreiben des installierten Programms Pi der ECU 62 daher unnötig. Dies ermöglicht es, den Zeitaufwand für den Bediener zu verkürzen, wenn es mehrere Bestandteile der Neuschreibkandidateninformationen Ican gibt.
  • Gemäß der vorliegenden Ausführungsform wird vor dem Programmneuschreiben die wechselseitige Kommunikation in allen ECU 62a bis 62j unterbrochen und wird das Speichern des DTC verboten (S48 in 6, 5). Ferner werden, wenn das aufeinander folgende Programmneuschreiben (S8 in 3, 5) in allen Ziel-ECU 62tar endet, alle Ziel-ECU 62tar angehalten (S52 in 7: JA). Dann wird das Senden des Netzkommunikationsunterbrechungsanforderungssignals Sstp (Unterbrechungs-/Verbotsanforderungssignals) beendet (S53). Zusätzlich wird nach der Unterbrechung des Sendens des Unterbrechungsanforderungssignals Sstp das Aktuelle-Programmkennungs-Anforderungssignal Sreqpid (Versionsinformations-Anforderungssignal), wodurch aktuelle Versionsinformationen Iver (Versionsinformationen des installierten Programms Pi) angefordert werden, zur Ziel-ECU 62tar gesendet (S55). Ferner wird auf der Grundlage des Empfangs der aktuellen Versionsinformationen Iver von der Ziel-ECU 62tar bestätigt, dass das Programmneuschreiben abgeschlossen ist (S56).
  • Dementsprechend kann der Aufwand für den Bediener drastisch verringert werden, indem der Vorgang (Neustartvorgang) für das Neustarten der Ziel-ECU 62tar nach dem aufeinander folgenden Programmneuschreiben aller Ziel-ECU 62tar gemeinsam ausgeführt wird. Daher kann selbst dann, wenn das Programmneuschreiben des sich auf dem Markt befindenden Fahrzeugs 14 von einem Wartungstechniker in der Art eines Händlers oder dergleichen ausgeführt wird, ein geeigneter Neuschreibvorgang leicht ausgeführt werden.
  • Gemäß der vorliegenden Ausführungsform sendet die Recheneinrichtung 24 (Neuschreibsteuereinrichtung) der Neuschreibvorrichtung 12 das erste Betriebsprüfsignal Scnf1 zu jeder Ziel-ECU 62tar, nachdem das Programmneuschreiben (S8 aus 3) in allen Ziel-ECU 62tar beendet wurde (S9 aus 3, S52 aus 7). Dann erkennt die Recheneinrichtung 24 das Abschalten aller Ziel-ECU 62tar auf der Grundlage des Fehlens einer Antwort auf das erste Betriebsprüfsignal Scnf1 (S52 aus 7).
  • Dies erleichtert das Beurteilen der Abschaltung, weil verglichen mit dem Fall, in dem das erste Betriebsprüfsignal Scnf1 zu allen neu schreibbaren ECU 62 (der Ziel-ECU 62tar) auf einmal gesendet wird, nur das Abschalten der neu geschriebenen ECU 62 festgestellt wird. Zusätzlich kann die für die Bestätigung erforderliche Zeit verkürzt werden. Ferner wird in Bezug auf die Ziel-ECU 62tar, die einem Neuschreibvorgang unterzogen wurde, jede Ziel-ECU 62tar auf der Grundlage des Fehlens einer Antwort auf das erste Betriebsprüfsignal Scnf1 als abgeschaltet erkannt, und die anschließende Verarbeitung wird ausgeführt. Daher ist es möglich, jede Ziel-ECU 62tar zuverlässig neu zu booten.
  • Gemäß der vorliegenden Ausführungsform fordert die Recheneinrichtung 24 (Neuschreibsteuereinrichtung) der Neuschreibvorrichtung 12, nachdem das Programmneuschreiben (S8 aus 3) für alle Ziel-ECU 62tar beendet wurde, die Anzeigeeinheit 28 auf, eine Anforderung für einen Vorgang zum Abschalten des IGSW 80 (oder der Batterie 82 (Stromversorgung für die ECU 62)) innerhalb des Fahrzeugs 14 anzuzeigen (S9 in 3, S51 in 7). Nach Abschluss des Sendens des Unterbrechungsanforderungssignals Sstp nach Erkennen des Abschaltens aller Ziel-ECU 62tar (S52: JA in 7) zeigt die Recheneinrichtung 24 auf der Anzeigeeinheit 28 eine Wiedereinschaltvorgangsanforderung zum Anfordern des Wiedereinschaltvorgangs am IGSW 80 an (S54). Zum Anfordern des Wiedereinschaltvorgangs sollten alle Ziel-ECU 62tar abgeschaltet sein. Selbst wenn die Anzahl der Ziel-ECU 62tar hoch ist oder eine Ziel-ECU 62tar eine lange Zeit für das Abschalten benötigt, kann nach dem sicheren Abschalten aller Ziel-ECU 62tar ein Neustartvorgang vorgeschrieben werden.
  • Gemäß der vorliegenden Ausführungsform wird vor dem Programmneuschreiben für die Ziel-ECU 62tar bestätigt, dass es keine Kommunikationsfehlergeschichte in Bezug auf die Kommunikation mit dem Netz 60 bezüglich jeder der Ziel-ECU 62tar gibt (S23, S25 aus 4). Nach der Bestätigung ist bekannt, dass der Grund, aus dem die Programmneuschreibvorrichtung 12 nicht mit der Ziel-ECU 62tar kommunizieren kann, darin besteht, dass das Fahrzeug 14, das mit der Neuschreibvorrichtung 12 verbunden ist, die Ziel-ECU 62tar nicht aufweist, oder dass die Ziel-ECU 62tar angebracht ist, jedoch ein Kommunikationsfehler auftritt, bevor das Programmneuschreiben eingeleitet wird. Daher kann ein Kommunikationsfehler infolge eines Missverständnisses, dass die Ziel-ECU 62tar nicht installiert ist, verhindert werden. Deshalb können Probleme beim Neuschreiben des Programms verringert werden.
  • Gemäß der vorliegenden Ausführungsform fragt die Recheneinrichtung 24 (Neuschreibsteuereinrichtung) der Neuschreibvorrichtung 12 die Kommunikationsfehlergeschichte an der Gateway-ECU 62a an (S23 von 4). Anschließend bestätigt die Recheneinrichtung 24, dass es keine Kommunikationsfehlergeschichte gibt, indem sie die Kommunikationsfehlergeschichte an der von der Gateway-ECU 62a verschiedenen ECU 62 (der zweiten bis zehnten ECU 62a bis 62j) anfragt (S25). Dadurch kann, wenn es unmöglich ist, mit der Ziel-ECU 62tar zu kommunizieren, die Spezifikation der Ursache erleichtert werden, indem geprüft wird, ob ein Problem in der Gateway-ECU 62a auftritt oder ob ein Problem in der Ziel-ECU 62tar selbst oder einer anderen ECU 62 auftritt.
  • Gemäß der vorliegenden Ausführungsform fragt die Recheneinrichtung 24 (Neuschreibsteuereinrichtung) der Neuschreibvorrichtung 12 an der Gateway-ECU 62a den DTC an (allgemeine Fehlergeschichte unter Einschluss der Kommunikationsfehlergeschichte). Dann bestätigt die Recheneinrichtung 24 auf der Grundlage des Fehlens des DTC oder des Fehlens der Kommunikationsfehlergeschichte im DTC, dass es keine Kommunikationsfehlergeschichte gibt (S23 in 4). Anschließend fordert die Recheneinrichtung 24 den DTC an der Ziel-ECU 62tar selbst an. Dann bestätigt die Recheneinrichtung 24 auf der Grundlage des Fehlens des DTC oder des Fehlens der Kommunikationsfehlergeschichte im DTC, dass es keine Kommunikationsfehlergeschichte gibt (S25). Dies macht es unnötig, dass die Ziel-ECU 62tar und die Gateway-ECU 62a zwischen der Kommunikationsfehlergeschichte und der anderen Fehlergeschichte unterscheiden, so dass die Konfiguration jeder der ECU 62 vereinfacht werden kann.
  • B. Modifikationen
  • Es ist zu verstehen, dass die vorliegende Erfindung nicht auf die vorstehend beschriebene Ausführungsform beschränkt ist und dass auf der Grundlage des Beschreibungsinhalts dieser Patentschrift verschiedene Konfigurationen angenommen werden können. Beispielsweise kann die folgende Konfiguration angenommen werden.
  • [B1. Anwendbares Ziel]
  • Gemäß der vorstehend beschriebenen Ausführungsform wird das System 10 für das Fahrzeug 14 verwendet. Die vorliegende Erfindung ist jedoch nicht darauf beschränkt, und es können beispielsweise andere bewegliche Körper (Flugzeug, Schiff, Hubschrauber usw.) verwendet werden.
  • [B2. Konfiguration des Programmneuschreibsystems 10]
  • (B2-1. Programmneuschreibvorrichtung 12)
  • (B2-1-1. Allgemein)
  • Gemäß der vorstehenden Ausführungsform wird die Neuschreibvorrichtung 12 von außerhalb des Fahrzeugs 14 angeschlossen (1), die vorliegende Erfindung ist jedoch nicht darauf beschränkt, und die Neuschreibvorrichtung 12 kann am Fahrzeug 14 angebracht werden.
  • Gemäß der vorstehenden Ausführungsform wird die Kommunikation zwischen der Neuschreibvorrichtung 12 und dem fahrzeuginternen Netz 60 drahtgestützt ausgeführt (1). Dies ist jedoch in Hinblick auf die Kommunikation mit dem fahrzeuginternen Netz 60 nicht darauf beschränkt, und es kann eine drahtlose Kommunikation ausgeführt werden.
  • (B2-1-2. Speichereinheit 26)
  • Die Reihenfolgedatenbank 52 gemäß der vorstehenden Ausführungsform speichert die Neuschreibprioritätsreihenfolge Op der ECU 62 mehrerer Fahrzeugtypen gemeinsam (2). Sie ist jedoch, beispielsweise in Hinblick auf die Spezifikation der Prioritätsreihenfolge Op in Bezug auf einen spezifischen zu ändernden Zielvorgang Otar nicht darauf beschränkt. Beispielsweise kann die Reihenfolgedatenbank 52 nur die Prioritätsreihenfolge Op der ECU 62 eines einzigen Fahrzeugtyps speichern. Alternativ kann die Reihenfolgedatenbank 52 die Prioritätsreihenfolge Op für jeden zu ändernden Zielvorgang Otar speichern.
  • Gemäß der vorstehenden Ausführungsform sind die Datenbanken 50, 52, 54, 56 und die Liste 58 in der Neuschreibvorrichtung 12 bereitgestellt (1). Wenn die Neuschreibvorrichtung 12 jedoch beispielsweise eine Kommunikationsfunktion mit einem externen Server aufweist, werden im externen Server eine oder mehrere der Datenbanken 50, 52, 54 und 56 und die Liste 58 bereitgestellt und kann die Neuschreibvorrichtung 12 erforderliche Daten vom externen Server erhalten.
  • (B2-2. Fahrzeug 14)
  • Gemäß der vorstehenden Ausführungsform wird angenommen, dass das Fahrzeug 14 ein Verbrennungsfahrzeug ist, die vorliegende Erfindung ist jedoch nicht darauf beschränkt. Das Fahrzeug 14 kann beispielsweise ein Elektrofahrzeug (einschließlich eines Hybridfahrzeugs, eines Brennstoffzellenfahrzeugs usw.) sein.
  • [B3. Programmneuschreiben]
  • (B3-1. Allgemein)
  • Gemäß der vorstehenden Ausführungsform wird die Verarbeitung in Form einer Programmkennung, worin der Programmname und die Versionsinformationen Iver integriert sind, ausgeführt. Beispielsweise werden in der Programmkennungsgeschichts-Datenbank 50, der Satzdatenbank 54 und dergleichen Daten als eine Programmkennung behandelt (2). In Hinblick auf die Verwendung des Programmnamens und der Versionsinformationen Iver können der Programmname und die Versionsinformationen Iver jedoch auch getrennt behandelt werden.
  • Gemäß der vorstehenden Ausführungsform werden die ECU-Kennung und die Programmkennung getrennt festgelegt (2). Falls jedoch beispielsweise nur ein Typ eines Programms P in jeder der ECU 62 verwendet wird, können die ECU-Kennung und die Programmkennung kombiniert und verwendet werden.
  • (B3-2. Prozess zur Auswahl der Ziel-ECU-Kombination (S4 in Fig. 3, Fig. 4))
  • Gemäß der vorstehenden Ausführungsform spezifiziert die Neuschreibvorrichtung 12 die letzte Programmkennung unter Verwendung der Programmkennungsgeschichts-Datenbank 50 (S28 in 4). Sie ist jedoch nicht darauf beschränkt, beispielsweise in Hinblick auf das Bestätigen, ob die in der Kandidaten-ECU 62can installierte aktuelle Programmkennung die letzte Version ist.
  • Beispielsweise kann die Neuschreibvorrichtung 12 die in der Satzdatenbank 54 gespeicherte Kandidatenprogrammkennung als die letzte Programmkennung behandeln. In diesem Fall besteht die Möglichkeit, dass die letzten Versionsinformationen Iver für jeden zu ändernden Zielvorgang Otar verschieden sind, wenngleich der Programmname gleich ist. In diesem Fall kann die Neuschreibvorrichtung 12 beim Neuschreiben des Programms in Bezug auf einen spezifischen zu ändernden Zielvorgang Otar (erster zu ändernder Zielvorgang) diese mit der Kandidatenprogrammkennung in Bezug auf einen anderen zu ändernden Zielvorgang Otar (zweiter zu ändernder Zielvorgang) vergleichen. Wenn die Version der Kandidatenprogrammkennung in Bezug auf den zweiten geänderten Zielvorgang neuer ist als jene der Kandidatenprogrammkennung in Bezug auf den ersten geänderten Zielvorgang, kann dann die Kandidatenprogrammkennung in Bezug auf den zweiten geänderten Zielvorgang verwendet werden.
  • Gemäß der vorstehenden Ausführungsform werden beim Prozess des Auswählens einer Kombination der Neuschreibkandidaten-ECU (4) die Informationen der Neuschreibkandidaten-ECU 62can, deren aktuellen Versionsinformationen Iver mit den letzten Versionsinformationen Iver übereinstimmen, auch in der Liste 58 registriert (S30 aus 4). Dann wird das Programmneuschreiben beim aufeinander folgenden Programmneuschreibprozess (5) nicht ausgeführt, wenn die Zielprogrammkennung (gegenwärtige Programmkennung) mit der letzten Programmkennung übereinstimmt (S47: JA).
  • Die vorliegende Erfindung ist jedoch nicht darauf beschränkt, beispielsweise in Hinblick auf das Neuschreiben des Programms in der Neuschreibkandidaten-ECU 62can, worin die aktuellen Versionsinformationen Iver nicht mit den letzten Versionsinformationen Iver übereinstimmen. Beispielsweise kann die Kandidaten-ECU-Kennung (und die Kandidatenprogrammkennung), die in Schritt S30 aus 4 in der Liste 58 zu registrieren ist, nicht nur auf die Neuschreibkandidaten-ECU 62can beschränkt werden, deren aktuelle Versionsinformationen Iver nicht mit den letzten Versionsinformationen Iver übereinstimmen. Dies ermöglicht es, den Prozess von Schritt S47 in 5 fortzulassen. Falls die Satznummer Nset in Schritt S30 aus 4 in der Liste 58 registriert wird (Teil S4 in 3), können anschließend in Schritt S5 aus 3 auswählbare Sätze unter Verwendung der registrierten Satznummern Nset bestimmt werden.
  • Gemäß der vorstehenden Ausführungsform wird das Nichtvorhandensein eines Kommunikationsfehlers für die Gateway-ECU 62a und die andere ECU 62 (ECU 62b bis 62j) getrennt beurteilt (S23 und S25 in 4). Dies ist jedoch beispielsweise in Hinblick auf das Feststellen des Kommunikationsfehlers im gesamten Netz 60 oder in der Ziel-ECU 62tar nicht darauf beschränkt. Beispielsweise können die Schritte S23 und S25 in 4 auch integriert werden. Dabei kann die Bestätigung, dass es keinen Kommunikationsfehler gibt, lediglich auf die Kombination der Ziel-ECU 62tar und der Gateway-ECU 62a oder nur auf die Ziel-ECU 62tar und nicht alle ECU 62a bis 62j beschränkt werden. Ferner ist es beispielsweise in Hinblick auf das Spezifizieren des zu ändernden Zielvorgangs Otar, wofür ein Programmneuschreiben erforderlich ist, möglich, auf die Bestätigung zu verzichten, dass es keinen Kommunikationsfehler gibt (S22 bis S25 in 4).
  • Gemäß der vorstehenden Ausführungsform wird der zu ändernde Zielvorgang Otar, wofür ein Programmneuschreiben erforderlich ist, auf der Grundlage des Vergleichs der Programmkennungen spezifiziert (S27 bis S30 in 4). Dies ist jedoch nicht darauf beschränkt, beispielsweise in Hinblick auf das Spezifizieren des zu ändernden Zielvorgangs Otar, wofür ein Programmneuschreiben erforderlich ist. Beispielsweise kann der zu ändernde Zielvorgang Otar, wofür ein Programmneuschreiben erforderlich ist, auf der Grundlage des Vergleichs der ECU-Kennungen spezifiziert werden. Wenn die Geschichte des Programmneuschreibens für jedes Fahrzeug 14 behandelt wird und der zu ändernde Zielvorgang Otar, wofür ein Programmneuschreiben erforderlich ist, vorab spezifiziert werden kann, kann die Neuschreibvorrichtung 12 auch selbst den zu ändernden Zielvorgang Otar auswählen.
  • (B3-3. Aufeinander folgender Programmneuschreibprozess (S8 in Fig. 3, S48 in Fig. 5))
  • Gemäß der vorstehenden Ausführungsform wurde das Netzkommunikationsunterbrechungsanforderungssignal Sstp periodisch gesendet (t1 bis t4 in 6). In Hinblick beispielsweise auf das Halten aller ECU 62 in einem gewünschten Zustand ist das zu sendende Signal jedoch nicht darauf beschränkt. Beispielsweise kann die Neuschreibvorrichtung 12 auch periodisch ein Signal senden, welches das Aufrechterhalten des gegenwärtigen Zustands fordert (eines Zustands, in dem das Speichern des DTC verboten ist und die wechselseitige Kommunikation zwischen den ECU 62 unterbrochen ist).
  • (B3-4. Neuschreibabschlussbestätigungsprozess (S9 in Fig. 3, Fig. 7))
  • Gemäß der vorstehenden Ausführungsform fordert der Benutzer der Neuschreibvorrichtung 12 zum Neubooten jeder Ziel-ECU 62tar den Abschaltvorgang und den Wiedereinschaltvorgang des IGSW 80 an (S51, S54 in 7). Die vorliegende Erfindung ist jedoch nicht darauf beschränkt, beispielsweise in Hinblick auf das Neubooten jeder Ziel-ECU 62tar. Beispielsweise ist es auch möglich, ein Neubootsignal von der Neuschreibvorrichtung 12 an jede Ziel-ECU 62tar auszugeben.
  • Gemäß der vorstehenden Ausführungsform wird die Bestätigung des Abschaltens jeder Ziel-ECU 62tar (S52 in 7) nach dem Neuschreiben des Programms für alle Ziel-ECU 62tar aufeinander folgend ausgeführt (9). Dies ist jedoch nicht darauf beschränkt, beispielsweise in Hinblick auf das Neuschreiben des Programms für jeden zu ändernden Zielvorgang Otar. Beispielsweise kann die Neuschreibvorrichtung 12 das Abschalten mehrerer Ziel-ECU 62tar zur gleichen Zeit bestätigen. (B3-5. Andere)
  • Gemäß der vorstehenden Ausführungsform hat der Benutzer der Neuschreibvorrichtung 12 den zu ändernden Zielvorgang Otar ausgewählt (S6, S7 in 3). Mit anderen Worten ist der Abschnitt zur Auswahl des zu ändernden Zielvorgangs Otar der Betriebseingabeabschnitt 22 zur Eingabe der Betätigung durch den Benutzer. Dies ist jedoch nicht darauf beschränkt, beispielsweise in Hinblick auf die Auswahl des zu ändernden Zielvorgangs Otar. Beispielsweise ist es auch möglich, dass die Neuschreibvorrichtung 12 selbst den zu ändernden Zielvorgang Otar auswählt.
  • C. ERKLÄRUNG VON BEZUGSZAHLEN
  • Bezugszeichenliste
  • 12
    Programmneuschreibvorrichtung
    14
    Fahrzeug
    20
    Signaleingabe-/Ausgabeeinheit (Netzverbindungseinheit)
    22
    Vorgangseingabeeinheit (Einheit zur Auswahl des zu ändernden Zielvorgangs)
    24
    Recheneinrichtung (Neuschreibsteuereinrichtung)
    26
    Speichereinheit
    28
    Anzeige (Neuschreibprogrammdatenbank)
    58
    Neuschreibliste (Liste)
    60
    Netz
    62
    ECU
    62a
    Gateway-ECU
    62can
    Neuschreibkandidaten-ECU
    62tar
    Ziel-ECU
    Ican
    Neuschreibkandidateninformationen
    Op
    Prioritätsreihenfolge
    Otar
    zu ändernder Zielvorgang
    P
    Programm
    Pi
    installiertes Programm
    Pr
    Neuschreibprogramm
    Scnf1
    erstes Betriebsprüfsignal (Betriebsprüfsignal)
    Sreqpid
    Aktuelle-Programmkennungs-Anforderungssignal (Versionsinformations-Anforderungssignal)
    Sstp
    Netzkommunikationsunterbrechungsanforderungssignal (Unterbrechungs-/Verbotsanforderungssignals)

Claims (12)

  1. Programmneuschreibvorrichtung (12) gemäß der vorliegenden Erfindung mit einem Netzverbinder (20) zur Verbindung mit einem Netz (60) in einem Fahrzeug (14) befindlicher nachstehend als "ECU" bezeichneter elektronischer Steuereinheiten (62) von außerhalb des Fahrzeugs (14) und einer Neuschreibsteuereinrichtung (24), die dafür ausgelegt ist, ein Programm auf nachstehend als "Ziel-ECU" bezeichneten ECU (62tar), die als ein Programmneuschreiben benötigend ausgewählt wurden, neu zu schreiben, wobei die Programmneuschreibvorrichtung (12) ferner Folgendes aufweist: eine Reihenfolgedatenbank (52), worin eine Prioritätsreihenfolge vorab in Zusammenhang mit Identifikationscodes aller neu schreibbarer ECU (62), die am Fahrzeug (14) angebracht sind, gespeichert wurde, eine Neuschreibkandidateninformations-Datenbank (54), worin Neuschreibkandidateninformationen als ein Satz der Identifikationscodes von Neuschreibkandidaten-ECU (62can) als Kandidaten der Ziel-ECU (62tar) und letzte Versionsinformationen von Programmen, die in den Neuschreibkandidaten-ECU (62can) installiert sind, pro im Fahrzeug (14) zu ändernden Zielvorgang, wofür ein Programmneuschreiben erforderlich ist, gespeichert sind, und eine Neuschreibprogramm-Datenbank (56), worin ein Neuschreibprogramm gespeichert ist, wobei die Neuschreibsteuereinrichtung (24) dafür ausgelegt ist, Folgendes auszuführen: Auslesen der Identifikationscodes und aktuellen Versionsinformationen der installierten Programme aus allen neu schreibbaren ECU (62) im Netz (60) in Paaren, Extrahieren der Neuschreibkandidaten-ECU (62can), die mit den aktuellen Versionsinformationen gepaart sind, die auf der Grundlage des Vergleichs zwischen den aktuellen Versionsinformationen, die ausgelesen worden sind, und den letzten Versionsinformationen, die den aktuellen Versionsinformationen entsprechen, nicht mit den letzten Versionsinformationen übereinstimmen, als die Ziel-ECU (62tar) und Au sführen von Programmneuschreibvorgängen an den extrahierten Ziel-ECU (62tar) aufeinander folgend in der Prioritätsreihenfolge, die in der Reihenfolgedatenbank (52) gespeichert ist.
  2. Programmneuschreibvorrichtung (12) nach Anspruch 1, wobei die Neuschreibsteuereinrichtung (24) dafür ausgelegt ist, Folgendes auszuführen: Registrieren der Neuschreibkandidaten-ECU (62can), die mit den aktuellen Versionsinformationen gepaart ist, die nicht mit den letzten Versionsinformationen übereinstimmen, als Ziel-ECU (62tar) in einer Liste (58) und Ausführen der Programmneuschreibvorgänge in der Prioritätsreihenfolge, die in der Reihenfolgedatenbank (52) gespeichert ist, für die Ziel-ECU (62tar), die in der Liste (58) registriert sind.
  3. Programmneuschreibvorrichtung (12) nach Anspruch 1 oder 2, wobei die Prioritätsreihenfolge, die in der Reihenfolgedatenbank (52) gespeichert ist, so festgelegt ist, dass von allen neu schreibbaren ECU (62) eine ECU (62), welche Daten einer anderen ECU (62) verwendet, in der Neuschreibreihenfolge gegenüber der anderen zu verwendenden ECU (62) priorisiert ist, und eine Gateway-ECU (62a) mit einer Gateway-Funktion im Netz (60) bei der Ausführung des Programmneuschreibvorgangs eine niedrigere Priorität hat als andere Ziel-ECU (62tar), zu denen eine Kommunikation weitergeleitet wird.
  4. Programmneuschreibvorrichtung (12) nach einem der Ansprüche 1 bis 3, wobei die Neuschreibprogramm-Datenbank (56) das Neuschreibprogramm speichert, das für die letzte Version den gleichen Identifikationscode hat, und wobei die Neuschreibsteuereinrichtung (24), falls es mehrere zu ändernde Zielvorgänge gibt, die Neuschreibkandidateninformationen verwendet, die dem neuesten zu ändernden Zielvorgang entsprechen.
  5. Programmneuschreibvorrichtung (12) nach einem der Ansprüche 1 bis 4, wobei die Neuschreibsteuereinrichtung (24) dafür ausgelegt ist, Folgendes auszuführen: Senden eines Unterbrechungs-/Verbotsanforderungssignals, um alle ECU (62) aufzufordern, die wechselseitige Kommunikation zu unterbrechen und das Speichern von Fehlercodes zu verbieten, Ausführen des Programmneuschreibvorgangs aufeinander folgend für die Ziel-ECU (62tar), während das Unterbrechungs-/Verbotsanforderungssignal gesendet wird, Festlegen des Sendens eines Betriebsprüfsignals zu jeder der Ziel-ECU (62tar) nach Abschluss des Programmneuschreibvorgangs in allen Ziel-ECU (62tar), Beenden des Sendens des Unterbrechungs-/Verbotsanforderungssignals nach Erkennen des Unterbrechens aller Ziel-ECU (62tar) auf der Grundlage des Fehlens einer Antwort auf das Betriebsprüfsignal, Senden eines Versionsinformations-Anforderungssignals zum Anfordern der Versionsinformationen aller in den Ziel-ECU (62tar) installierten Programme von allen Ziel-ECU (62tar) und Prüfen, ob die von allen Ziel-ECU (62tar) empfangenen Versionsinformationen zur letzten Version gehören.
  6. Programmneuschreibvorrichtung (12) nach Anspruch 5, wobei eine Neuschreibsteuereinrichtung (24) dafür ausgelegt ist, Folgendes auszuführen: sequenzielles nacheinander einzeln erfolgendes Senden des Betriebsprüfsignals zu den Ziel-ECU (62tar) nach Abschluss des Programmneuschreibvorgangs in allen Ziel-ECU (62tar) und Erkennen der Unterbrechung aller Ziel-ECU (62tar) auf der Grundlage des Fehlens einer Antwort auf das Betriebsprüfsignal.
  7. Programmneuschreibvorrichtung (12) nach Anspruch 5 oder 6, wobei die Neuschreibsteuereinrichtung (24) dafür ausgelegt ist, Folgendes auszuführen: Veranlassen der Anzeigeeinheit (28), eine Abschaltvorgangsanforderung zum Anfordern eines Abschaltvorgangs der Stromversorgung für die ECU (62) im Fahrzeug (14) nach Abschluss des Programmneuschreibvorgangs in allen Ziel-ECU (62tar) anzuzeigen, und Veranlassen der Anzeigeeinheit (28), eine Neueinschaltanforderung zum Anfordern eines Neueinschaltvorgangs für die ECU (62) nach Erkennen des Unterbrechens aller Ziel-ECU (62tar) und dem Beenden des Sendens des Unterbrechungs-/Verbotsanforderungssignals anzuzeigen.
  8. Programmneuschreibvorrichtung (12) nach Anspruch 1, wobei die Neuschreibsteuereinrichtung (24) dafür ausgelegt ist, Folgendes auszuführen: Bestätigen, dass es keine Kommunikationsfehlergeschichte in Zusammenhang mit dem Netz (60) in Bezug auf alle neu schreibbaren ECU (62) gibt, wenn die Programme neu geschrieben werden, falls keine Kommunikationsfehlergeschichte in Bezug auf jegliche ECU (62) bestätigt wird, Prüfen der Identifikationscodes der ECU (62), die aus allen neu schreibbaren ECU (62) ausgelesen wurden, mit den Identifikationscodes der Neuschreibkandidaten-ECU (62can), die in den Neuschreibkandidateninformationen enthalten sind, um die Ziel-ECU (62tar) zu spezifizieren, und Ausführen des Programmneuschreibens in der Reihenfolge, die in der Reihenfolgedatenbank (52) gespeichert ist, in den spezifizierten Ziel-ECU (62tar).
  9. Programmneuschreibvorrichtung (12) nach Anspruch 8, wobei die Neuschreibsteuereinrichtung (24) dafür ausgelegt ist, die Kommunikationsfehlergeschichte bei einer Gateway-ECU (62a) anzufragen, welche die ECU (62) mit einer Gateway-Funktion im Netz (60) ist, und anschließend die Kommunikationsfehlergeschichte bei den ECU (62) anzufragen, die von der Gateway-ECU (62a) verschieden sind, um dadurch zu bestätigen, dass es keine Kommunikationsfehlergeschichte gibt.
  10. Programmneuschreibverfahren in einer Programmneuschreibvorrichtung (12) mit einem Netzverbinder (20) zur Verbindung mit einem Netz (60) in einem Fahrzeug (14) befindlicher nachstehend als "ECU" bezeichneter elektronischer Steuereinheiten (62) von außerhalb des Fahrzeugs (14) und einer Neuschreibsteuereinrichtung (24) zum Auswählen einer nachstehend als "Ziel-ECU" bezeichneten ECU (62tar), für die ein Programmneuschreiben erforderlich ist, wobei die Programmneuschreibvorrichtung Folgendes aufweist: eine Reihenfolgedatenbank (52), worin eine Prioritätsreihenfolge vorab in Zusammenhang mit Identifikationscodes aller neu schreibbarer ECU (62), die am Fahrzeug (14) angebracht sind, gespeichert wurde, eine Neuschreibkandidateninformations-Datenbank (54), worin Neuschreibkandidateninformationen als ein Satz der Identifikationscodes von Neuschreibkandidaten-ECU (62can) als Kandidaten der Ziel-ECU (62tar) und letzte Versionsinformationen von Programmen, die in den Neuschreibkandidaten-ECU (62can) installiert sind, pro im Fahrzeug (14) zu ändernden Zielvorgang, wofür ein Programmneuschreiben erforderlich ist, gespeichert sind, und eine Neuschreibprogramm-Datenbank (56), worin ein Neuschreibprogramm gespeichert ist, wobei das Programmneuschreibverfahren folgende durch die Neuschreibsteuereinrichtung (24) ausgeführte Schritte aufweist: Auslesen der Identifikationscodes und aktuellen Versionsinformationen der installierten Programme aus allen neu schreibbaren ECU (62) im Netz (60) in Paaren, Extrahieren der Neuschreibkandidaten-ECU (62can), die mit den aktuellen Versionsinformationen gepaart sind, die auf der Grundlage des Vergleichs zwischen den aktuellen Versionsinformationen, die ausgelesen worden sind, und den letzten Versionsinformationen, die den aktuellen Versionsinformationen entsprechen, nicht mit den letzten Versionsinformationen übereinstimmen, als die Ziel-ECU (62tar) und Ausführen von Programmneuschreibvorgängen an den extrahierten Ziel-ECU (62tar) aufeinander folgend in der Prioritätsreihenfolge, die in der Reihenfolgedatenbank (52) gespeichert ist.
  11. Programmneuschreibverfahren nach Anspruch 10, welches ferner folgende durch die Neuschreibsteuereinrichtung (24) ausgeführte Schritte aufweist: Senden eines Unterbrechungs-/Verbotsanforderungssignals, um alle ECU (62) aufzufordern, die wechselseitige Kommunikation zu unterbrechen und das Speichern von Fehlercodes zu verbieten, Ausführen des Programmneuschreibvorgangs aufeinander folgend für die Ziel-ECU (62tar), während das Unterbrechungs-/Verbotsanforderungssignal gesendet wird, Festlegen des Sendens eines Betriebsprüfsignals zu jeder der Ziel-ECU (62tar) nach Abschluss des Programmneuschreibvorgangs in allen Ziel-ECU (62tar), Beenden des Sendens des Unterbrechungs-/Verbotsanforderungssignals nach Erkennen des Unterbrechens aller Ziel-ECU (62tar) auf der Grundlage des Fehlens einer Antwort auf das Betriebsprüfsignal, Senden eines Versionsinformations-Anforderungssignals zum Anfordern der Versionsinformationen aller in den Ziel-ECU (62tar) installierten Programme von allen Ziel-ECU (62tar) und Prüfen, ob die von allen Ziel-ECU (62tar) empfangenen Versionsinformationen zur letzten Version gehören.
  12. Programmneuschreibverfahren nach Anspruch 10 oder 11, welches ferner folgende durch die Neuschreibsteuereinrichtung (24) ausgeführte Schritte aufweist: Bestätigen, dass es keine Kommunikationsfehlergeschichte in Zusammenhang mit dem Netz (60) in Bezug auf alle neu schreibbaren ECU (62) gibt, wenn die Programme neu geschrieben werden, falls keine Kommunikationsfehlergeschichte in Bezug auf jegliche ECU (62) bestätigt wird, Prüfen der Identifikationscodes der ECU (62), die aus allen neu schreibbaren ECU (62) ausgelesen wurden, mit den Identifikationscodes der Neuschreibkandidaten-ECU (62can), die in den Neuschreibkandidateninformationen enthalten sind, um die Ziel-ECU (62tar) zu spezifizieren, und Ausführen des Programmneuschreibens in der Prioritätsreihenfolge, die in der Reihenfolgedatenbank (52) gespeichert ist, in den spezifizierten Ziel-ECU (62tar).
DE112016000992.5T 2015-03-30 2016-03-22 Programmneuschreibvorrichtung und programmneuschreibverfahren Withdrawn DE112016000992T5 (de)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
JP2015-068949 2015-03-30
JP2015068855A JP6147790B2 (ja) 2015-03-30 2015-03-30 プログラム書換装置及びプログラム書換方法
JP2015-068855 2015-03-30
JP2015068949A JP6147792B2 (ja) 2015-03-30 2015-03-30 プログラム書換装置及びプログラム書換方法
JP2015068885A JP6147791B2 (ja) 2015-03-30 2015-03-30 プログラム書換装置及びプログラム書換方法
JP2015-068885 2015-03-30
PCT/JP2016/058908 WO2016158547A1 (ja) 2015-03-30 2016-03-22 プログラム書換装置及びプログラム書換方法

Publications (1)

Publication Number Publication Date
DE112016000992T5 true DE112016000992T5 (de) 2017-11-16

Family

ID=57006437

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112016000992.5T Withdrawn DE112016000992T5 (de) 2015-03-30 2016-03-22 Programmneuschreibvorrichtung und programmneuschreibverfahren

Country Status (4)

Country Link
US (1) US20180081671A1 (de)
CN (1) CN107531198B (de)
DE (1) DE112016000992T5 (de)
WO (1) WO2016158547A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110154938A (zh) * 2018-02-16 2019-08-23 丰田自动车株式会社 车辆控制装置、程序更新方法、及存储用于更新的程序的非易失性存储介质

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6281535B2 (ja) * 2015-07-23 2018-02-21 株式会社デンソー 中継装置、ecu、及び、車載システム
JPWO2017188416A1 (ja) * 2016-04-28 2019-03-07 Necソリューションイノベータ株式会社 回路装置、回路書き換え方法、及びプログラム
JP6526906B2 (ja) * 2016-10-28 2019-06-05 株式会社東芝 車載ゲートウェイ装置を用いた移動体のソフトウェア更新システム
EP3575954B1 (de) * 2017-01-25 2023-08-02 Hitachi Astemo, Ltd. Fahrzeugsteuerungsvorrichtung und programmaktualisierungssystem
DE112017006978T5 (de) * 2017-02-01 2019-10-10 Sumitomo Electric Industries, Ltd. Steuervorrichtungen, Programmaktualisierungsverfahren und Computerprogramm
CN110494844A (zh) * 2017-04-05 2019-11-22 住友电气工业株式会社 控制设备、传送方法和计算机程序
DE102017218654A1 (de) * 2017-10-19 2019-04-25 Robert Bosch Gmbh Sicherheitssystem für ein elektronisches Gerät eines Fahrzeugs, elektronisches Gerät, Fahrzeug, Verfahren
JP7010049B2 (ja) * 2018-02-16 2022-01-26 トヨタ自動車株式会社 車両制御装置、プログラムの更新確認方法および更新確認プログラム
JP7311245B2 (ja) * 2018-03-07 2023-07-19 トヨタ自動車株式会社 マスタ装置、マスタ、制御方法、プログラム及び車両
JP6897630B2 (ja) 2018-05-11 2021-07-07 株式会社オートネットワーク技術研究所 車載更新装置、更新処理方法及び更新処理プログラム
JP7408937B2 (ja) * 2018-08-10 2024-01-09 株式会社デンソー センター装置,配信パッケージの生成方法及び配信パッケージ生成用プログラム
JP7439402B2 (ja) * 2018-08-10 2024-02-28 株式会社デンソー 表示制御装置、書換え進捗状況の表示制御方法及び書換え進捗状況の表示制御プログラム
JP7124627B2 (ja) * 2018-10-16 2022-08-24 株式会社オートネットワーク技術研究所 車載更新装置、更新処理プログラム及び、プログラムの更新方法
JP7123843B2 (ja) * 2019-03-29 2022-08-23 日立Astemo株式会社 演算装置、判定方法
US11218872B2 (en) * 2019-06-26 2022-01-04 Motorola Solutions, Inc. Method and key management facility for managing keys of a single user having a plurality of mobile devices
DE102019210225A1 (de) * 2019-07-10 2021-01-14 Robert Bosch Gmbh Verfahren und Vorrichtung zur Analyse dienste-orientierter Kommunikation
FR3115373B1 (fr) * 2020-10-20 2023-06-02 Psa Automobiles Sa Gestion de la supervision d’un composant électronique d’un véhicule terrestre à moteur
JP7307116B2 (ja) * 2021-04-07 2023-07-11 矢崎総業株式会社 車載ソフトウェア更新方法および車載システム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4311067B2 (ja) * 2003-04-02 2009-08-12 株式会社デンソー データ書換方法及び電子制御装置
US8781442B1 (en) * 2006-09-08 2014-07-15 Hti Ip, Llc Personal assistance safety systems and methods
JP2008168649A (ja) * 2007-01-05 2008-07-24 Mazda Motor Corp 車両用制御システム
US20090119657A1 (en) * 2007-10-24 2009-05-07 Link Ii Charles M Methods and systems for software upgrades
JP4404147B2 (ja) * 2008-01-23 2010-01-27 株式会社デンソー 車載電子制御装置及びその車載電子制御装置の情報更新方法
JP5487691B2 (ja) * 2009-04-08 2014-05-07 株式会社デンソー 車両制御装置、車両制御プログラム
JP2011070307A (ja) * 2009-09-24 2011-04-07 Toyota Motor Corp プログラム更新装置
US8392764B2 (en) * 2009-11-16 2013-03-05 Cooper Technologies Company Methods and systems for identifying and configuring networked devices
JP2012091755A (ja) * 2010-10-29 2012-05-17 Honda Motor Co Ltd 車両用プログラム書換えシステム
EP2634045A4 (de) * 2010-10-29 2014-07-23 Honda Motor Co Ltd Programmneuschreibungssystem für fahrzeuge
US8688313B2 (en) * 2010-12-23 2014-04-01 Aes Technologies, Llc. Remote vehicle programming system and method
KR20130022688A (ko) * 2011-08-26 2013-03-07 주식회사 현대케피코 차량 내 전자 제어 유닛 소프트웨어 갱신 장치
JP5617823B2 (ja) * 2011-11-21 2014-11-05 株式会社デンソー 車両用のデータ書き換えシステム、並びにこのデータ書き換えシステムに用いられる車載装置及び書き換え装置
WO2014164893A2 (en) * 2013-03-13 2014-10-09 Arynga Inc. Remote transfer of electronic images to a vehicle
CN203305933U (zh) * 2013-05-29 2013-11-27 扬州泰博汽车电子智能科技有限公司 车身控制器及采用该车身控制器的烧录系统
KR20150112537A (ko) * 2014-03-28 2015-10-07 현대자동차주식회사 차량제어용 소프트웨어 코딩 시스템 및 방법
CN106170953B (zh) * 2014-04-17 2019-10-18 松下电器(美国)知识产权公司 车载网络系统、网关装置以及不正常检测方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110154938A (zh) * 2018-02-16 2019-08-23 丰田自动车株式会社 车辆控制装置、程序更新方法、及存储用于更新的程序的非易失性存储介质
CN110154938B (zh) * 2018-02-16 2022-08-12 丰田自动车株式会社 车辆控制装置、程序更新方法、及存储用于更新的程序的非易失性存储介质

Also Published As

Publication number Publication date
CN107531198A (zh) 2018-01-02
WO2016158547A1 (ja) 2016-10-06
CN107531198B (zh) 2020-04-03
US20180081671A1 (en) 2018-03-22

Similar Documents

Publication Publication Date Title
DE112016000992T5 (de) Programmneuschreibvorrichtung und programmneuschreibverfahren
DE19642737C2 (de) System und Verfahren zur Steuerung einer in einem Motorfahrzeug vorhandenen Einrichtung
DE102019109672A1 (de) Rückgängigmachung nach einem teilausfall in mehreren elektronischen steuergeräten mittels over-the-air-updates
DE102011088320A1 (de) Fahrzeug-Update-System und Verfahren davon
WO2017071811A1 (de) Steuergeräte-update im kraftfahrzeug
DE102019100214A1 (de) Fahrzeugaktualisierungssysteme und -Verfahren
DE112017006451T5 (de) Gemeinsam genutzte Backup-Einheit und Steuersystem
DE102006030291A1 (de) In ein Fahrzeug eingebautes Datenumschreibe-Steuersystem
DE19929796B4 (de) Vorrichtung und Verfahren zum erneuten Schreiben von Daten aus einem flüchtigen Speicher in einen nichtflüchtigen Speicher
DE102011075776A1 (de) Verfahren und System zum Aktualisieren eines gemeinsam genutzten Speichers
DE102017123252A1 (de) Softwareaktualisierungsverfahren und -vorrichtung für Fahrzeug
DE102015200729A1 (de) Elektronische steuerungseinheit
DE10142646B4 (de) Technik zur Datenauffrischung für ein Fahrzeug
DE112019000179T5 (de) Fahrzeugsteuervorrichtung und programmaktualisierungssystem
DE112016003835B4 (de) Elektronische Steuervorrichtung zur Bestimmung der korrekten Fahrzeugidentifikationsnummer
DE102015207795A1 (de) Verfahren und Vorrichtung zum Aktualisieren von Software in einem Transportmittel
DE102010060178B4 (de) Datenschreibvorrichtung und Datenschreibverfahren
DE102019209360A1 (de) Elektronische steuerungsvorrichtung
DE102019004612A1 (de) Verfahren zum Betreiben eines Fahrzeugs mit einem Steuergerät
DE102004055950A1 (de) Elektronische Steuereinheit
DE102022208218A1 (de) Einrichtung zum Durchführen eines OTA-Updates für ein Fahrzeug und Verfahren derselben
DE102022110251A1 (de) Ota-master, center, system, verfahren, nicht-transitorisches speichermedium und fahrzeug
DE102022113922A1 (de) Ota-master, system, verfahren, nicht-transitorisches speichermedium und fahrzeug
DE102014225302A1 (de) Abnormalitätserfassungsvorrichtung für Fahrzeugmikrocomputer
DE102018217208A1 (de) Elektronische steuervorrichtung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee