DE102016218222A1 - Programmumschreibsystem und Programmumschreibverfahren - Google Patents

Programmumschreibsystem und Programmumschreibverfahren Download PDF

Info

Publication number
DE102016218222A1
DE102016218222A1 DE102016218222.6A DE102016218222A DE102016218222A1 DE 102016218222 A1 DE102016218222 A1 DE 102016218222A1 DE 102016218222 A DE102016218222 A DE 102016218222A DE 102016218222 A1 DE102016218222 A1 DE 102016218222A1
Authority
DE
Germany
Prior art keywords
program
type
node
rewrite
control unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102016218222.6A
Other languages
English (en)
Inventor
Toshinori Matsui
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE102016218222A1 publication Critical patent/DE102016218222A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B11/00Automatic controllers
    • G05B11/01Automatic controllers electric
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23229Execute first current program, then select new program

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Stored Programmes (AREA)

Abstract

Jeder einer Mehrzahl von Typ-2-Knoten 2 speichert eines von Teilprogrammen, die als Teile eines Umschreibprogrammes zum Umschreiben eines Programms zum Bestimmen des Betriebs eines Typ-1-Knotens 1 durch Unterteilen des Umschreibprogramms in einer Weise erzeugt werden, die eine partielle Überlappung bei den Daten zwischen einem in dem Typ-2-Knoten gespeicherten Teilprogramm und einem in einem anderen Typ-2-Knoten gespeicherten Teilprogramm gestattet. Wenn Teilprogramme zum Typ-1-Knoten sendbar sind, sendet jeder Typ-2-Knoten das in seinem eigenen Knoten gespeicherte Teilprogramm über ein erstes Netzwerk 6 an den Typ-1-Knoten. Der Typ-1-Knoten schreibt einen Teil, der dem empfangenen Teilprogramm entspricht, um und verwendet die überlappenden Daten zum Verifizieren, ob die umgeschriebenen Teilprogramme die gleichen sind.

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich auf ein Programmumschreibsystem und ein Programmumschreibverfahren und genauer gesagt auf ein Umschreibsystem und ein Umschreibverfahren zum Umschreiben eines Programms in Knoten, die eine Mehrzahl von Steuereinheiten, die mit einem Netzwerk verbunden sind, sind.
  • 2. Beschreibung verwandten Stands der Technik
  • Bislang sind beispielsweise als ein Programmumschreibsystem und Verfahren (nachfolgend gelegentlich kollektiv als "System" bezeichnet) für mit einem Netzwerk verbundene Steuereinheiten jene, die in dem japanischen Patent Nr. 4668656 vorgeschlagen worden sind, bekannt gewesen.
  • Das Programmumschreibsystem des japanischen Patents Nr. 4668656 wird unter Bezugnahme auf 16A und 16B beschrieben. Wie in 16A illustriert, sind eine erste Steuereinheit 16, die eine Schnittstellenfunktion aufweist, um eine Schnittstelle nach außerhalb bereitzustellen, und Umschreiben ausführt, eine Gesamtsteuereinheit 17, eine zweite Steuereinheit 18 mit umzuschreibenden Programmdaten und eine Mehrzahl von dritten Steuereinheiten 19 mit einem Fahrzeugnetzwerk 8 verbunden.
  • Die Gesamtsteuereinheit 17 ist mit der ersten Steuereinheit 16 verbunden, die eine Schnittstellenfunktion aufweist, um eine Schnittstelle nach außerhalb bereitzustellen, über einen Gateway 17a, der eine gegebene Funktion aufweist. Die Gesamtsteuereinheit 17 beinhaltet ein Speichermedium 17b, das zum Speichern oder Sichern gegebener Daten in der Lage ist, und eine CPU 17c zum Ausüben der Gesamtsteuerung. Die zweite Steuereinheit 18 mit den umzuschreibenden Programmdaten beinhaltet ein Speichermedium 18a zum Speichern gegebener Daten, eine CPU 18b, die für optimale Steuerung bei einem gegebenen Eingangssignal in der Lage ist, und einen Speicher 18c.
  • Wie in 16B illustriert, beinhaltet die erste Steuereinheit 16 einen Dateneingabeteil 16a, eine Speichervorrichtung 16e zum zeitweiligen Speichern von Daten aus dem Dateneingabeteil 16a, eine CPU 16d zum Ausüben von Gesamtsteuerung auf die erste Steuereinheit 16, einen Datenausgabeteil 16c, der als eine Eingabe/Ausgabe-Schnittstelle zum Gateway 17a dient, und einen zweiten Schnittstellenteil 16b zur Ausgabe an einen Ausgabeteil, zum Beispiel einen Anzeigeteil.
  • Wenn ein Umschreiben der Programmdaten der zweiten Steuereinheit 18 im japanischen Patent Nr. 4668656 ausgeführt wird, werden Programmumschreibdaten an der ersten Steuereinheit 16 aus dem Dateneingabeteil 16a eingegeben. Diese Daten werden über den Datenausgabeteil 16c unter Steuerung der CPU 15d an den Gateway 17a ausgegeben. Die Daten werden dann über den Gateway 17a zur Gesamtsteuereinheit 17 gesendet, um zeitweilig im Speichermedium 17b akkumuliert zu werden. Die Programmumschreibdaten werden weiter an das Speichermedium 18a der zweiten Steuereinheit 18 über das Fahrzeugnetzwerk 8 gesendet, wenn eine Umschreib-Ausführbedingung, wie etwa ein Spannungsbereich und ein Temperaturbereich erfüllt ist.
  • Das im japanischen Patent Nr. 4668656 vorgeschlagene Programmumschreibsystem verlangt, dass die die Gesamtsteuereinheit 17, die ein Kommunikationsknoten ist, darin das Strommodul 17b aufweist, welches eine Kapazität aufweist, die nötig ist, Teile von Programmumschreibdaten aufzuzeichnen. Ein sich ergebendes Problem sind gesteigerte Kosten.
  • Um dieses Problem zu lösen, hat die Anmelderin dieser Patentanmeldung ein Programmumschreibsystem und ein Programmumschreibverfahren vorgeschlagen, die im japanischen Patent Nr. 5323151 beschrieben sind. Im japanischen Patent Nr. 5323151 sind Teil- oder geteilte Programme, die jeweils ein Teil eines Umschreibprogramms sind, in Typ-2-Knoten einer Mehrzahl von Motorsteuereinheiten oder dergleichen gespeichert und jeder der Typ-2-Knoten sendet das Teilprogramm, das darin gespeichert ist, an einen Typ-1-Knoten einer Batteriesteuereinheit oder dergleichen. Jedes Mal, wenn ein Teilprogramm aus einem der Typ-2-Knoten empfangen wird, schreibt der Typ-1-Knoten einen Teil eines Programms zum Bestimmen der Operation des Typ-1-Knotens, welches dem empfangenen Teilprogramm entspricht, um.
  • Jedoch hat das japanische Patent Nr. 5323151 das Problem, dass die Programmumschreibdaten in dem Fall nicht verifiziert werden können, bei dem das Programm durch eine Störung und dergleichen beschädigt ist, nachdem die Umschreibdaten in einem Typ-2-Knoten aufgezeichnet sind.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die vorliegende Erfindung ist gemacht worden, um die oben beschriebenen Probleme zu lösen und es ist eine Aufgabe der vorliegenden Erfindung daher, ein Programmumschreibsystem und ein Programmumschreibverfahren bereitzustellen, mit welchen ein Programm einer mit einem Netzwerk verbundenen Steuereinheit effizient umgeschrieben werden kann, eine Situation, in welcher die Kosten eines Knotens übermäßig höher als die Kosten anderer Knoten sind, vermieden wird, und verifiziert werden kann, ob ein zum Umschreiben verwendetes Programm korrekt ist oder nicht.
  • Zum Erreichen der obigen Aufgabe stellt die vorliegende Erfindung ein Programmumschreibsystem bereit, das einen Typ-1-Knoten und eine Mehrzahl von Typ-2-Knoten umfasst, die kommunikativ miteinander über ein erstes Netzwerk verbunden sind, um ein Programm umzuschreiben, welches Operationen des Typ-1-Knotens bestimmt, wobei der Typ-1-Knoten umfasst: einen ersten Speicherbereich zum Speichern des Programms; einen Programmumschreibteil zum teilweisen Umschreiben des im ersten Speicherbereich gespeicherten Programms; und einen Programm-Verifikationsteil zum Verifizieren, ob die umgeschriebenen Programme identisch sind oder nicht, wobei jeder der Typ-2-Knoten umfasst: einen zweiten Aufzeichnungsbereich zum Speichern eines Teilprogramms, welches ein Teil eines Umschreibprogramms für das Programm ist, um so Inhalte zu beinhalten, die partiell mit dem in einem anderen der Typ-2-Knoten gespeicherten Teilprogramm überlappen; und einen Sendbarkeits/Transmittierbarkeits-Bestimmungsteil zum Bestimmen, ob das Teilprogramm zum Typ-1-Knoten sendbar ist, wobei jeder der Typ-2-Knoten das im Typ-2-Knoten selbst gespeicherte Teilprogramm über das erste Netzwerk an den Typ-1-Knoten sendet, wenn der Sendbarkeits-Bestimmungsteil feststellt, dass das Teilprogramm an den Typ-1-Knoten sendbar ist, und wobei jedes Mal, wenn das Teilprogramm aus einem der Typ-2-Knoten empfangen wird, der Programmumschreibteil des Typ-1-Knotens einen Teil des Programms umschreibt, das im ersten Aufzeichnungsbereich gespeichert ist, entsprechend dem empfangenen Teilprogramm, und der Programmverifikationsteil des Typ-1-Knotens mit den überlappten Inhalten verifiziert, ob die umgeschriebenen Teilprogramme zueinander identisch sind oder nicht.
  • Auch stellt zum Lösen der obigen Aufgabe die vorliegende Erfindung ein Programmumschreibverfahren zum Umschreiben eines Programms zur Bestimmung der Operation eines Typ-1-Knotens in einem System, welches den Typ-1-Knoten und eine Mehrzahl von Typ-2-Knoten umfasst, bereit, die kommunikativ miteinander über ein erstes Netzwerk verbunden sind, wobei das Programmumschreibverfahren umfasst: Speichern, durch jeden der Typ-2-Knoten, eines Teilprogramms, welches ein Teil eines Umschreibprogramms zum Umschreiben des Programms ist, so dass es Inhalte enthält, die teilweise mit einem in einem anderen der Typ-2-Knoten gespeicherten Teilprogramm überlappt; Senden, durch jeden der Typ-2-Knoten über das erste Netzwerk des in dem Typ-2-Knoten selbst gespeicherten Teilprogramms an den Typ-1-Knoten, wenn derjenige der Typ-2-Knoten feststellt, dass das Teilprogramm an den Typ-1-Knoten sendbar ist; und Umschreiben, durch den Typ-1-Knoten, jedes Mal, wenn das Teilprogramm aus einem der Typ-2-Knoten empfangen wird, eines Teils des Programms, das dem empfangenen Teilprogramm entspricht, und verifiziert, ob die umgeschriebenen Teilprogramme gleich sind oder nicht.
  • Gemäß dem Programmumschreibsystem und Verfahren der vorliegenden Erfindung speichert jeder Typ-2-Knoten ein Teilprogramm, welches ein Teil eines Umschreibprogramms für ein Programm ist, das Operationen des Typ-1-Knotens bestimmt, um so Inhalte zu enthalten, die partiell mit dem in einem anderen Typ-2-Knoten gespeicherten Teilprogramm überlappen, und wenn festgestellt wird, dass das Teilprogramm an den Typ-1-Knoten sendbar ist, das in seinem eigenen Knoten gespeicherte Teilprogramm über das erste Netzwerk an den Typ-1-Knoten sendet und der Typ-1-Knoten Teile des Operationsbestimmungsprogramms umschreibt, welche den empfangenen Teilprogrammen entsprechen, und basierend auf den überlappten Inhalten, bestimmt, ob die umgeschriebenen Teilprogramme die gleichen sind oder nicht. Das Programmumschreibsystem und Verfahren sind daher zum effizienten Programmumschreiben und Verifikation nach dem Umschreiben fähig. Zusätzlich gibt es keine Notwendigkeit, dem Typ-2-Knoten eine Aufzeichnungskapazität mitzugeben, die groß genug ist, das gesamte Umschreibprogramm zu speichern, wodurch verhindert wird, dass die Kosten eines Knotens übermäßig höher werden und als Ergebnis die Gesamtkosten niedrig gehalten werden.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Blockdiagramm, welches die Konfiguration eines Fahrzeugsteuersystems illustriert, auf welches ein Programmumschreibsystem gemäß einer ersten Ausführungsform der vorliegenden Erfindung angewendet wird;
  • 2A, 2B und 2C und 2D sind Speicherabbilddiagramme zum Illustrieren der Aufzeichnungsbereichs-Konfigurationen von Aufzeichnungsmedien jeweils in einem Typ-1-Knoten, einem Typ-2-Knoten und einem Typ-3-Knoten des Programmumschreibsystems gemäß der ersten Ausführungsform der vorliegenden Erfindung;
  • 3 ist ein Diagramm zum Illustrieren des Verarbeitungsablaufs im Typ-1-Knoten, des Programmumschreibsystems gemäß der ersten Ausführungsform der vorliegenden Erfindung;
  • 4A und 4B sind Diagramme zum Illustrieren der Verarbeitungsablaufprozeduren im Typ-2-Knoten beziehungsweise dem Typ-3-Knoten, im Programmumschreibsystem gemäß der ersten Ausführungsform der vorliegenden Erfindung;
  • 5 ist ein Diagramm zum Illustrieren längs Zeitachse der Abläufe von Verarbeitungsprozeduren an entsprechenden Knoten im Programmumschreibsystem gemäß der ersten Ausführungsform der vorliegenden Erfindung;
  • 6 ist ein Blockdiagramm zum Illustrieren der Konfiguration eines Fahrzeugsteuersystems, auf welches ein Programmumschreibsystem gemäß einer zweiten Ausführungsform der vorliegenden Erfindung angewendet wird;
  • 7A und 7B sind Speicherabbilddiagramme zum Illustrieren der Aufzeichnungsbereich-Konfigurationen von Aufzeichnungsmedien in einem Typ-4-Knoten bzw. einem Typ-5-Knoten des Programmumschreibsystems gemäß der zweiten Ausführungsform der vorliegenden Erfindung;
  • 8 ist ein Diagramm zum Illustrieren des Verarbeitungsablaufs im Typ-5-Knoten des Programmumschreibsystems gemäß der zweiten Ausführungsform der vorliegenden Erfindung;
  • 9A und 9B sind Diagramme zum Illustrieren des Verarbeitungsablaufs im Typ-4-Knoten des Programmumschreibsystems gemäß der zweiten Ausführungsform der vorliegenden Erfindung und der Gesamtablauf der Verarbeitung ist in 9a illustriert, während eine Unterroutine einer Sende-/Empfangs-Verarbeitung, die ein Teil der Verarbeitung im Typ-4-Knoten ist, in 9B illustriert ist;
  • 10 ist ein Diagramm zum Illustrieren des Verarbeitungsablaufs im Typ-1-Knoten des Programmumschreibsystems gemäß der zweiten Ausführungsform der vorliegenden Erfindung;
  • 11 ist ein Diagramm zum Illustrieren längs einer Zeitachse des Ablaufs von Verarbeitungsprozeduren an entsprechendem Knoten im Programmumschreibsystem gemäß der zweiten Ausführungsform der vorliegenden Erfindung;
  • 12 ist ein Blockdiagramm zum Illustrieren der Konfiguration eines Fahrzeugsteuersystems, auf welches ein Programmumschreibsystem gemäß einer dritten Ausführungsform der vorliegenden Erfindung angewendet ist;
  • 13 ist ein Diagramm zum Illustrieren des Verarbeitungsablaufs in dem Typ-2-Knoten des Programmumschreibsystems gemäß der dritten Ausführungsform der vorliegenden Erfindung;
  • 14 ist ein Diagramm zum Illustrieren des Verarbeitungsablaufs im Typ-4-Knoten des Programmumschreibsystems gemäß der dritten Ausführungsform der vorliegenden Erfindung;
  • 15 ist ein Diagramm zum Illustrieren von Längszeitachsen des Ablaufs von Verarbeitungsprozeduren an jeweiligen Knoten im Programmumschreibsystem gemäß der dritten Ausführungsform der vorliegenden Erfindung;
  • 16A und 16B sind Blockdiagramme zum Illustrieren eines Programmumschreibsystems des Stands der Technik und das Gesamtsystem ist in 16A illustriert, während eine in dem System enthaltene erste Steuereinheit in 16B illustriert ist; und
  • 17 ist ein Diagramm zum Illustrieren der Konfiguration von Teilprogrammen, die in den Programmumschreibsystemen gemäß den Ausführungsformen der vorliegenden Erfindung verwendet werden.
  • DETAILLIERTE BESCHREIBUNG DER AUSFÜHRUNGSFORMEN
  • Programmumschreibsysteme und Verfahren gemäß ersten bis dritten Ausführungsformen der vorliegenden Erfindung werden unten unter Bezugnahme auf die Zeichnungen beschrieben. Durchgängig in den beigefügten Zeichnungen werden identische oder äquivalente Komponenten durch dieselben Bezugszeichen oder -nummern bezeichnet.
  • Erste Ausführungsform
  • 1 ist ein Diagramm zum Illustrieren der Konfiguration eines Fahrzeugsteuersystems, auf welches ein Programmumschreibsystem und Verfahren der ersten Ausführungsform angewendet werden. Komponenten von Steuereinheiten und ein Tester, die nicht direkt für die erste Ausführungsform relevant sind, sind aus 1 weggelassen.
  • 2A bis 2D sind Diagramme zum Illustrieren der Aufzeichnungsbereichs-Konfigurationen von Aufzeichnungsmedien 13, 23a, 23b und 33, die jeweils in einem Typ-1-Knoten, Typ-2-Knoten und einem Typ-3-Knoten im Fahrzeugsteuersystem von 1 enthalten sind.
  • Das Programmumschreibsystem gemäß der ersten Ausführungsform beinhaltet eine Batteriesteuereinheit 1, die ein Typ-1-Knoten ist, eine elektrische Sevolenk-(EPS, electric power steering)Steuereinheit 2a und eine Motorsteuereinheit 2b, die Typ-2-Knoten sind, und einen Tester 3, der ein Typ-3-Knoten ist.
  • Die Knoten sind miteinander über ein Controller-Area-Network-(CAN)-Netzwerk 6 eines Fahrzeugs, das ein erstes Netzwerk ist, kommunikabel verbunden. Während die hier diskutierten Typ-2-Knoten die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b sind, kann das Programmumschreibsystem desweiteren andere Typ-2-Knoten enthalten.
  • Die Batteriesteuereinheit 1 als ein Typ-1-Knoten steuert eine Batterie 10. Ähnlich sind die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b so verbunden, dass sie ein EPS 20a bzw. einen Antriebsmotor 20b steuern. Die anderen Steuereinheiten von 1, außer dem in 1 gezeigten Tester 3, sind mit dem CAN-Netzwerk 6 bei Bedarf verbunden ist, in solch einem Fall, bei dem ein Programm umgeschrieben wird oder die Knoten für Ausfalldiagnose getestet werden.
  • Die Konfiguration und Funktionen der Batteriesteuereinheit 1 werden kurz beschrieben. Ein Mikrocontroller 11 berechnet einen sich auf die Steuerung der Batterie 10 und verschiedene Verarbeitungswerte beziehenden Steuerbetrag. Ein Daten-Transceiver(d.h. Sende-/Empfangs-)Teil 12, der ein Daten-Transceiver-Teil für ein CAN-Netzwerk ist, sendet/empfängt Daten an/aus anderen mit dem CAN-Netzwerk 6 verbundenen Steuereinheiten (einschließlich der EPS-Steuereinheit 2a, der Motorsteuereinheit 2b und dem Tester 3) über das CAN-Netzwerk 6.
  • Die Aufzeichnungsvorrichtung 13 weist einen ersten Aufzeichnungsbereich zum Speichern eines Batterie-Steuerprogramms, das ein umzuschreibendes Programm ist, auf. Das Batterie-Steuerprogramm bestimmt den Betrieb der Batteriesteuereinheit 1 (Inhalte der Steuerung) und führt Rechnen durch.
  • Die Aufzeichnungsbereichs-Konfiguration der Aufzeichnungsvorrichtung 13 wird unter Bezugnahme auf 2A beschrieben. Die Aufzeichnungsvorrichtung 13 beinhaltet einen Programmumschreibprogramm-Aufzeichnungsbereich 131, in welchem ein Programmumschreibprogramm zum partiellen Umschreiben des Batterie-Steuerprogramms gespeichert ist, einen Batterie-Steuerprogramm-Aufzeichnungsbereich 132, der der erste Aufzeichnungsbereich zum Speichern des Batterie-Steuerprogramms ist, einen Batterie-Steuerprogramm-Aufzeichnungsbereich (für Daten) 133, in welchem Daten und dergleichen, die sich auf die Steuerung der Batterie 10 beziehen, gespeichert werden, und einen Programmverifikationsprogramm-Aufzeichnungsbereich 134, in welchem ein Programm-Verifikationsprogramm zum Durchführen partieller Verifikation am Batterie-Steuerprogramm gespeichert ist.
  • Ein Programmumschreibteil 14 der Batteriesteuereinheit 1 schreibt das in dem Batterie-Steuerprogramm-Aufzeichnungsbereich 132 der Aufzeichnungsvorrichtung 13 gespeicherte Batterie-Steuerprogramm partiell um. Das partielle Umschreiben verwendet das Programmumschreibprogramm, welches im Programmumschreibprogramm-Aufzeichnungsbereich 131 der Aufzeichnungsvorrichtung 13 aufgezeichnet ist.
  • Ein Zustandsdetektionsteil 15, welcher ein erster Zustandsdetektionsteil ist, detektiert einen Zustand in Bezug beispielsweise darauf, ob der Typ-1-Knoten selbst in einem Zustand ist, bei dem das Batterie-Steuerprogramm umgeschrieben werden kann oder nicht, oder ob alle Teile des Batterie-Steuerprogramms umgeschrieben worden sind oder nicht. In dem Fall, bei dem der Zustandsdetektionsteil 15 detektiert, dass die Batteriesteuereinheit 1 zum Umschreiben des Batterie-Steuerprogramms in der Lage ist, werden die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b über das CAN-Netzwerk 6 benachrichtigt und senden in Reaktion auf die Benachrichtigung Teilprogramme, die in ihren eigenen Knoten gespeichert sind, über das CAN-Netzwerk 6 an die Batteriesteuereinheit 1.
  • Ein Programmverifikationsteil 9 der Batteriesteuereinheit 1 führt Verifikation am in dem Batterie-Steuerprogramm-Aufzeichnungsbereich 132 der Aufzeichnungsvorrichtung 13 gespeicherten Batterie-Steuerprogramm durch. Bei der Verifikation verwendet der Programmverifikationsteil 9 das Programm-Verifikationsprogramm, das im Programm-Verifikationsprogramm-Aufzeichnungsbereich 134 der Aufzeichnungsvorrichtung 13 aufgezeichnet ist, um Teilprogramme auf Bruch (beispielsweise Bit-Inversion aufgrund von Rauschen) während der Übertragung über das CAN-Netzwerk 6 oder während der Speicherung in anderen Knoten oder hinsichtlich anderer Probleme zu prüfen.
  • Jedes Mal, wenn ein Teilprogramm aus der EPS-Steuereinheit 2a oder der Motorsteuereinheit 2b empfangen wird, verwendet die Batteriesteuereinheit 1 den Programmumschreibteil 14 zum Ausführen des Umschreibens für einen Teil des in dem Batterie-Steuerprogramm-Aufzeichnungsbereich 132 gespeicherten Batterie-Steuerprogramms, welches dem empfangenen Teilprogramm entspricht und das nicht umgeschrieben worden ist, und verwendet den Programmverifikationsteil 9 zum Durchführen von Verifikation an den für einen Teil des Batterie-Steuerprogramms umgeschriebenen Inhalten, welches dem empfangenen Teilprogramm entspricht und das umgeschrieben worden ist.
  • Die Konfiguration und Funktionen der EPS-Steuereinheit 2a als ein Typ-2-Knoten werden als Nächstes kurz beschrieben. Ein Mikrocontroller 21a berechnet einen Steuerbetrag und verschiedene Prozesswerte des EPS 20a. Ein Datenempfangsteil 22a sendet/empfängt Daten an/aus anderen mit dem CAN-Netzwerk 6 verbundenen Steuereinheiten (einschließlich der Batteriesteuereinheit 1, der Motorsteuereinheit 2b und dem Tester 3) über das CAN-Netzwerk 6. Die Aufzeichnungsvorrichtung 23a weist einen zweiten Aufzeichnungsbereich zum Speichern eines Teil-Batterie-Steuerprogramms (nachfolgend abgekürzt als "Teilprogramm") auf, welches ein Teil eines Umschreibprogramms zum Umschreiben des Batterie-Steuerprogramms ist.
  • Die Aufzeichnungsbereichs-Konfiguration der Aufzeichnungsvorrichtung 23a wird unter Bezugnahme auf 2B beschrieben. Die Aufzeichnungsvorrichtung 23a beinhaltet einen EPS-Steuerprogramm-Aufzeichnungsbereich 231a, in welchem ein EPS-Steuerprogramm zum Bestimmen der Inhalte der am EPS 20a durchgeführten Steuerung gespeichert wird, einen EPS-Steuerprogramm-Aufzeichnungsbereich (für Daten) 232a, in welchem Daten und dergleichen, welche sich auf die Steuerung des EPS 20a beziehen, gespeichert sind, und einen Teil-Batteriesteuerprogramm-Aufzeichnungsbereich 233a, der ein zweiter Aufzeichnungsbereich zum zeitweiligen Speichern eines Teilprogramms ist. Ein freier Bereich oder dergleichen der Aufzeichnungsvorrichtung 23a kann als ein Teil-Batteriesteuerprogramm-Aufzeichnungsbereich 233a zugewiesen sein.
  • Ein Sendbarkeits-(d.h. Sendungsausführbarkeits-)-Bestimmungsteil 24a bestimmt, ob Teilprogramme an die Batteriesteuereinheit 1 gesendet werden können oder nicht. Wenn der Sendbarkeits-Bestimmungsteil 24a feststellt, dass Teilprogramme an die Batteriesteuereinheit 1 gesendet werden können, sendet die EPS-Steuereinheit 2a das in ihr selbst gespeicherte Teilprogramm über das CAN-Netzwerk 6 an die Batteriesteuereinheit 1.
  • Die Konfiguration und Funktionen der Motorsteuereinheit 2b, die auch ein Typ-2-Knoten ist, werden als Nächstes kurz beschrieben. Ein Mikrocontroller 21b berechnet einen Steuerbetrag und verschiedene Prozesswerte des Antriebsmotors 20b. Ein Daten-Transceiver-Teil 22b sendet/empfängt Daten an/aus anderen Steuereinheiten (einschließlich der Batteriesteuereinheit 1, der EPS-Steuereinheit 2a, und dem Tester 3), die mit dem CAN-Netzwerk 6 verbunden sind. Die Aufzeichnungsvorrichtung 23b weist einen anderen zweiten Aufzeichnungsbereich zum Speichern eines Teilprogramms auf, welches ein abgeteilter Teil des Umschreibprogramms zum Umschreiben des Batterie-Steuerprogramms ist.
  • Die Aufzeichnungsbereichs-Konfiguration der Aufzeichnungsvorrichtung 23b wird unter Bezugnahme auf 2C beschrieben. Die Aufzeichnungsvorrichtung 23b beinhaltet einen Motorsteuerprogramm-Aufzeichnungsbereich 231b, in welchem ein Motorsteuerprogramm zum Bestimmen der Inhalte einer am Antriebsmotor 20b durchgeführten Steuerung gespeichert wird, einen Motorsteuerprogramm-Aufzeichnungsbereich (für Daten) 232b, in welchem sich auf die Steuerung des Antriebsmotors 20b beziehende Daten und dergleichen aufgezeichnet sind, und einen Teil-Batterie-Steuerprogramm-Aufzeichnungsbereich 233b, der ein zweiter Aufzeichnungsbereich zum zeitweiligen Speichern eines Teilprogramms ist. Ein freier Bereich oder dergleichen der Aufzeichnungsvorrichtung 23b kann als Teil-Batterie-Steuerprogramm-Aufzeichnungsbereich 233b zugewiesen sein.
  • Ein Sendbarkeits-Bestimmungsteil 24b bestimmt, ob Teilprogramme an die Batteriesteuereinheit 1 gesendet werden können oder nicht. Wenn der Sendbarkeits-Bestimmungsteil 24b bestimmt, dass Teilprogramme an die Batteriesteuereinheit 1 gesendet werden können, sendet die Motorsteuereinheit 2b das in sich selbst gespeicherte Teilprogramm an die Batteriesteuereinheit 1 über das CAN-Netzwerk 6.
  • Die Konfiguration und Funktionen des Testers 3 als einem Typ-3-Knoten werden als Nächstes kurz beschrieben. Ein Mikrocontroller 31 führt verschiedene Typen von Verarbeitung aus, die sich auf den Betrieb des Testers 3 beziehen. Ein Daten-Transceiverteil 32 sendet/empfängt Daten an/aus anderen mit dem CAN-Netzwerk 6 verbundenen Steuereinheiten (einschließlich der Batteriesteuereinheit 1, der EPS-Steuereinheit 2a und der Motorsteuereinheit 2b) über das CAN-Netzwerk 6. Wie in 2D illustriert, weist die Aufzeichnungsvorrichtung 33 einen Batterie-Steuerprogramm-Aufzeichnungsbereich 331 auf, der ein dritter Aufzeichnungsbereich ist, wo das Umschreibprogramm zum Umschreiben des Batterie-Steuerprogramms gespeichert wird.
  • Ein Programmunterteilungsteil 34, der ein erster Programmunterteilungsteil ist, unterteilt das in dem Batterie-Steuerprogramm-Aufzeichnungsbereich 331 der Aufzeichnungsvorrichtung 33 gespeicherte Umschreibprogramm in Teilprogramme, die miteinander partiell in den Daten überlappen.
  • Die Konfiguration des Umschreibprogramms und der Teilprogramme wird unter Bezugnahme auf 17 beschrieben. Das Umschreibprogramm in 17 besteht aus Code, der eine Adresse 0 bis eine Adresse c aufweist. Dieses Umschreibprogramm wird in ein Teilprogramm A, das Code enthält, der die Adresse 0 bis Adresse b aufweist, und ein Teilprogramm B, das Code enthält, der die Adresse A bis Adresse C aufweist (die Adressen erfüllen eine Beziehung c < b < a < 0), unterteilt. Das Teilprogramm A und das Teilprogramm B enthalten somit dieselben Daten von Adresse A bis Adresse B. Diese Art der Unterteilung ist ein Beispiel und das Umschreibprogramm kann auf andere Weisen geteilt werden, solange wie erzeugte Teilprogramme miteinander teilweise in den Daten überlappen, beispielsweise wichtige Teile. Der überlappende Teil der Teilprogramme ist ein Teilprogramm C, wie in 17 illustriert.
  • Die durch den Programmunterteilungsteil 34 erzeugten Teilprogramme werden getrennt über das CAN-Netzwerk 6 an die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b gesendet.
  • Die Abläufe von Verarbeitungsprozeduren, die an entsprechenden Knoten im Programmumschreibsystem gemäß der ersten Ausführungsform ausgeführt werden, werden als Nächstes unter Bezugnahme auf Flussdiagramme von 3, 4A und 4B beschrieben.
  • 3 ist ein Flussdiagramm zum Illustrieren des Ablaufs der Verarbeitung, die sich auf das Programmumschreiben in der Batteriesteuereinheit 1, die ein Typ-1-Knoten ist, bezieht. Die Batteriesteuereinheit 1 führt normale Verarbeitung, welche sich auf die Steuerung der Batterie 10 bezieht, und Verarbeitung, die sich auf das Umschreiben des Batterie-Steuerprogramms bezieht, aus. Die sich auf das Programmumschreiben beziehende Verarbeitung wird ausgeführt, wenn eine Umschreibausführ-Benachrichtigung (d.h. Umschreibanweisungen) aus dem Tester 3 empfangen wird. Der in 3 registrierte Ablauf ist insbesondere ein Prozessablauf nach Empfang einer Umschreibausführ-Mitteilung aus dem Tester 3.
  • Im Schritt S301 bestimmt der Zustandsdetektionsteil 15 zuerst, ob die Batteriesteuereinheit 1 die sich auf die Steuerung der Batterie 16 beziehende normale Verarbeitung ausführt oder nicht. In dem Fall, bei dem die normale Verarbeitung ausgeführt wird (JA), schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S302 fort und im Falle, bei dem die normale Verarbeitung nicht ausgeführt wird (NEIN), schreitet sie zu Schritt S312 fort, um normales Umschreiben auszuführen. Das normale Umschreiben im Schritt S312 ist ein konventionelles Umschreibverfahren zum Umschreiben eines Batterie-Steuerprogramms von Batteriesteuereinheit 1 aus dem Tester 3, nicht durch Unterteilen eines Umschreibprogramms, was ein Merkmal der vorliegenden Erfindung ist. Eine Beschreibung des normalen Umschreibens wird daher weggelassen.
  • In dem Fall, bei dem die Batteriesteuereinheit 1 die sich auf die Steuerung der Batterie 10 beziehende normale Verarbeitung ausführt, kann das Batterie-Steuerprogramm während des Andauerns nicht umgeschrieben werden. Entsprechend wird die Ausführung des Teilungsumschreibens einem relevanten Knoten in Schritt S302 mitgeteilt und schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S303 fort. Im Schritt S303 bestimmt der Zustandsdetektionsteil 15 wieder, ob die normale Verarbeitung ausgeführt wird. In dem Fall, bei dem die normale Verarbeitung nicht ausgeführt wird, ist das Umschreiben ausführbar (JA), und schreit et daher die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S304 fort. In dem Fall, bei dem die normale Verarbeitung ausgeführt wird, ist der Zustandsdetektionsteil 15 in Bereitschaft, bis die normale Verarbeitung beendet ist.
  • Im Schritt S304 bestimmt der Zustandsdetektionsteil 15, ob bei der Verifikation ein Problem gefunden worden ist, und ob alle Bereiche (Teile) des in dem Batterie-Steuerprogramm-Aufzeichnungsbereich 132 der Aufzeichnungsvorrichtung 13 gespeicherten Batterie-Steuerprogramme umgeschrieben worden sind oder nicht. In dem Fall, bei dem ein Problem bei der Verifikation aller Teile gefunden worden ist, oder alle Teile ohne Finden eines Problems bei der Verifikation umgeschrieben worden sind (JA), wird die sich auf das Programmumschreiben beziehende Verarbeitung beendet. In dem Fall, bei dem keine Teile umgeschrieben worden sind (NEIN), schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S305 fort.
  • Im Schritt S305 bestimmt der Zustandsdetektionsteil 15, ob das in dem Batterie-Steuerprogramm-Aufzeichnungsbereich 132 gespeicherte Batterie-Steuerprogramm umgeschrieben worden ist. Die sich auf das Programmumschreiben beziehende Verarbeitung schreitet in dem Fall, bei dem keiner der Teile des Programms umgeschrieben worden ist (NEIN), zu Schritt S306 fort. In dem Fall, bei dem das Batterie-Steuerprogramm umgeschrieben ist (JA), ist der Zustandsdetektionsteil 15 in Bereitschaft, bis das Umschreiben beendet ist.
  • Im Schritt S306 verwendet der Zustandsdetektionsteil 15 den Daten-Transceiver-Teil 12, um eine Sendeanweisung an die Typ-2-Knoten 2a und 2b zu erteilen, wo Teilprogramme entsprechend Teilen des Batterie-Steuerprogramms, die nicht umgeschrieben worden sind, gespeichert sind, und die sich auf das Programmumschreiben beziehende Verarbeitung schreitet zu Schritt S307 fort. Im Schritt S307 empfängt der Daten-Transceiverteil 12 die Teilprogramme und schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S308 fort.
  • Im Schritt S308 wird überprüft, ob ein Teil des Batterie-Steuerprogramms, der einem empfangenen Teilprogramm entspricht, bereits mit einem zuvor empfangenen anderen Teilprogramm umgeschrieben worden ist oder nicht. Die sich auf das Programmumschreiben beziehende Verarbeitung schreitet in dem Fall zu Schritt S310 fort, bei dem der Teil umgeschrieben worden ist (JA), und schreitet zu Schritt S309 fort, falls nicht (NEIN). Im Schritt S309 verwendet der Programmumschreibteil 14 das Programmumschreibprogramm zum Umschreiben von Teilen des Batterie-Steuerprogramms, die den empfangenen Teilprogrammen entsprechen, und schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S311 fort.
  • Im Schritt S310 verwendet der Programmverifikationsteil 9 das Programmverifikationsprogramm zum Durchführen einer Verifikation an dem Teil des Batterie-Steuerprogramms, das dem empfangenen Teilprogramm entspricht und bestimmt, ob es ein Problem gibt oder nicht. Die sich auf das Programmumschreiben beziehende Verarbeitung schreitet dann zu Schritt S311 fort. Im Schritt S311 bestimmt der Programmverifikationsteil 9, ob alle Teilprogramme im Schritt S307 aus den Typ-2-Knoten empfangen worden sind, welche die empfangenen Teilprogramme gesendet haben. Die sich auf das Programmumschreiben beziehende Verarbeitung schreitet in dem Fall zu Schritt S307 fort, bei dem nicht alle Teilprogramme empfangen worden sind (NEIN) und geht zu Schritt S304 in dem Fall zurück, bei dem alle Teilprogramme empfangen worden sind (JA).
  • Der sich auf das Programmumschreiben in der EPS-Steuereinheit 2a und der Motorsteuereinheit 2b die Typ-2-Knoten sind, beziehende Prozessablauf wird als Nächstes unter Bezugnahme auf 4A beschrieben. Die EPS-Steuereinheit 2a (oder die Motorsteuereinheit 2b) führt normale Verarbeitung, welche sich auf die Steuerung des EPS 20a (oder den Antriebsmotor 20b) bezieht, und eine Verarbeitung, die sich auf das Programmumschreiben der Batteriesteuereinheit 1 bezieht, durch. Die sich auf das Programmumschreiben beziehende Verarbeitung wird ausgeführt, wenn eine Umschreibausführungsmitteilung aus dem Tester 3 empfangen wird, wenn nicht die normale Verarbeitung ausgeführt wird. Die sich auf das Programmumschreiben beziehende Verarbeitung ist die gleiche in der EPS-Steuereinheit 2a und der Motorsteuereinheit 2b. Die hier gegebene Beschreibung nimmt daher die EPS-Steuereinheit 2a als Beispiel.
  • Nach Empfangen einer Umschreibausführungsmitteilung aus dem Tester 3 wartet die EPS-Steuereinheit 2a auf den Empfang eines Teilprogramms im Schritt S403. Wenn der Daten-Transceiverteil 22a ein Teilprogramm empfängt (JA), schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S402 fort, um das empfangene Teilprogramm in dem Teil-Batteriesteuerprogramm-Aufzeichnungsbereich 233a der Aufzeichnungsvorrichtung 23a zu speichern und schreitet dann zu Schritt S403 fort.
  • Im Schritt S403 wartet die EPS-Steuereinheit 2a auf eine Sendeanweisung aus der Batteriesteuereinheit 1, welche die EPS-Steuereinheit 2a anweist, ein Teilprogramm zu senden. In dem Fall, bei dem die Sendeanweisung nicht empfangen worden ist (NEIN), bleibt die EPS-Steuereinheit 2a in Bereitschaft, bis die Sendeanweisung empfangen wird. Wenn die Sendeanweisung empfangen wird (JA), schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S404 fort, wo der Sendbarkeits-Bestimmungsteil 24a feststellt, dass ein Teilprogramm gesendet werden kann, und der Daten-Transceiverteil 22a ein in dem Teil-Batteriesteuerprogramm-Aufzeichnungsbereich 233a gespeichertes Teilprogramm an die Batteriesteuereinheit 1 sendet. Die sich auf das Programmumschreiben beziehende Verarbeitung wird dann beendet.
  • Der sich auf das Programmumschreiben im Tester 3, der ein Typ-3-Knoten ist, beziehende Verarbeitungsablauf wird als Nächstes unter Bezugnahme auf 4B beschrieben. Der Tester 3 teilt einem relevanten Knoten mit, dass ein Programmumschreiben auszuführen ist und führt das Senden des Umschreibprogramms aus. Der in 4B illustrierte Ablauf ist ein Verarbeitungsablauf, nachdem dem Knoten mitgeteilt ist, dass ein Programmumschreiben der Batteriesteuereinheit 1 auszuführen ist.
  • Im Schritt S411 teilt der Programmunterteilungsteil 34 des Testers 3 zuerst das in dem Batterie-Steuerprogramm-Aufzeichnungsbereich 331 der Aufzeichnungsvorrichtung 33 aufgezeichnete Umschreibprogramm in Teilprogramme, die miteinander in Daten partiell überlappen. Im nachfolgenden Schritt S412 sendet der Daten-Transceiverteil 32 die Teilprogramme separat an die Typ-2-Knoten. In der ersten Ausführungsform, wenn es zwei Typ-2-Knoten gibt, wird das Umschreibprogramm in zwei unterteilt, um ein Teilprogramm A und ein Teilprogramm B zu erzeugen, und wird das Teilprogramm A beispielsweise an die EPS-Steuereinheit 2a gesendet, während das Teilprogramm B an die Motorsteuereinheit 2b gesendet wird.
  • Im nächsten Schritt S413 wird bestimmt, ob alle Teilprogramme gesendet worden sind oder nicht. Die Umschreibprogramm-Sendeverarbeitung geht zurück zum Schritt S412 in dem Fall, bei dem nicht alle Teilprogramme gesendet worden sind (NEIN) und wird in dem Fall beendet, bei dem alle Teilprogramme gesendet worden sind (JA).
  • Die Abläufe von Verarbeitungsprozeduren, die sich auf Programmumschreiben beziehen, die durch die entsprechenden Knoten ausgeführt werden, sind nun mit Bezugnahme auf die Flussdiagramme von 3, 4A und 4B beschrieben worden. Als Nächstes werden alle Abläufe von Verarbeitungsprozeduren an den Knoten unter Bezugnahme auf ein Zeitdiagramm von 5 beschrieben. In 5 repräsentiert die vertikale Achse die entsprechenden Knoten und repräsentiert die horizontale Achse Zeit. Der Tester 3 ist bereits mit dem CAN-Netzwerk 6 in 5 verbunden und alle Kommunikationen zwischen den Knoten werden über das CAN-Netzwerk 6 abgehalten. Die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b führen in 5 nicht ihre jeweiligen normalen Verarbeitungsprozeduren aus.
  • Zuerst führt zu t10 die Batteriesteuereinheit 1 die sich auf die Steuerung der Batterie 10 beziehende normale Verarbeitung (Verarbeitung 10) aus. Zu t11 verwendet der Tester 3 den Daten-Transceiverteil 32, um der Batteriesteuereinheit 1 mitzuteilen, dass ein Programmumschreiben auszuführen ist (Verarbeitung 40).
  • Die Umschreibausführungsmitteilung aus dem Tester 3 empfangend, verwendet die Batteriesteuereinheit 1 den Zustandsdetektionsteil 15, um zu bestimmen, ob die Batteriesteuereinheit 1 in einem Zustand ist, bei dem das Batterie-Steuerprogramm umgeschrieben werden kann (Verarbeitung 11). Die Batteriesteuereinheit 1 führt die normale Verarbeitung an diesem Punkt aus und es wird entsprechend festgestellt, dass das Umschreiben unausführbar ist. Zu t12 teilt die Batteriesteuereinheit 1 der EPS-Steuereinheit 2a, der Motorsteuereinheit 2b und dem Tester 3 mit, dass das Umschreiben unausführbar ist (Verarbeitung 12). Die EPS-Steuereinheit 2a, die Motorsteuereinheit 2b und der Tester 3 empfangen getrennt die Mitteilung, dass ein Programmumschreiben der Batteriesteuereinheit 1 unausführbar ist (Verarbeitung 20, Verarbeitung 30 und Verarbeitung 41).
  • In t13 nimmt die Batteriesteuereinheit 1 die sich auf die Steuerung der Batterie 10 beziehende normale Verarbeitung wieder auf (Verarbeitung 10). In t14 verwendet, die Mitteilung empfangend, dass ein Programmumschreiben der Batteriesteuereinheit 1 unausführbar ist, der Tester 3 den Programmunterteilungsteil 34 um das Umschreibprogramm zum Umschreiben des Batterie-Steuerprogramms, das in ihm selbst gespeichert ist, in Teilprogramme zu unterteilen (Verarbeitung 42). Das Umschreibprogramm ist in zwei Teilprogramme unterteilt, das Teilprogramm A und das Teilprogramm B. Das Teilprogramm A und das Teilprogramm B überlappen partiell miteinander in den Daten, wie in 17 illustriert. Der überlappte Teil ist das Teilprogramm C, wie oben beschrieben.
  • In t15 sendet der Tester 3 das Teilprogramm A an die EPS-Steuereinheit 2a (Verarbeitung 43). Die EPS-Steuereinheit 2a empfängt und speichert das Teilprogramm A in dem Teil-Batteriesteuerprogramm-Aufzeichnungsbereich 233a (Verarbeitung 21). Zu t16 prüft der Tester 3 zuerst, ob alle Teilprogramme gesendet worden sind. Das Teilprogramm B ist zu diesem Punkt nicht gesendet worden. Der Tester 3 setzt daher die Sendung des Umschreibprogramms fort und sendet das Teilprogramm B an die Motorsteuereinheit 2b (Verarbeitung 44).
  • Die Motorsteuereinheit 2b empfängt und speichert das Teilprogramm B in dem Teil-Batteriesteuerprogramm-Aufzeichnungsbereich 233b (Verarbeitung 31). Der Tester 3 prüft noch einmal, ob alle Teilprogramme gesendet worden sind oder nicht. Zu diesem Zeitpunkt sind alle Teilprogramme gesendet worden und entsprechend wird die Umschreibprogramm-Sendeverarbeitung beendet. Wenn Verarbeitungsprozeduren bis dahin beendet sind, kann der Tester 3 vom CAN-Netzwerk 6 getrennt werden.
  • Danach beendet die Batteriesteuereinheit 1 die normale Verarbeitung in t17. In t18 bestimmt der Zustandsdetektionsteil 15 der Batteriesteuereinheit 1, ob die Batteriesteuereinheit 1 in einem Zustand ist, bei dem das Batterie-Steuerprogramm umgeschrieben werden kann oder nicht. Der Zustandsdetektionsteil 15 bestimmt hier, dass das Umschreiben ausführbar ist, weil die normale Verarbeitung nicht an diesem Punkt ausgeführt wird. Der Zustandsdetektionsteil 15 bestimmt als Nächstes vermittels Verifikation des Teilprogramms C, ob alle Bereiche (Teile) des in dem Batterie-Steuerprogramm-Aufzeichnungsbereich 132 der Aufzeichnungsvorrichtung 13 gespeicherten Batterie-Steuerprogramme ohne ein Problem umgeschrieben worden sind. Es wird an diesem Punkt festgestellt, dass nicht alle Teile umgeschrieben worden sind.
  • Der Zustandsdetektionsteil 15 bestimmt weiter, ob das in dem Batterie-Steuerprogramm-Aufzeichnungsbereich 132 gespeicherte Batterie-Steuerprogramm umgeschrieben worden ist. Zu diesem Zeitpunkt ist keiner der Teile des Batterie-Steuerprogramms umgeschrieben worden und entsprechend weist die Batteriesteuereinheit 1 die EPS-Steuereinheit 2a an, ein Teilprogramm zu senden (Verarbeitung 13). Der Daten-Transceiverteil 22a der EPS-Steuereinheit 2a empfängt die Anweisungen zum Senden eines Teilprogramms (Verarbeitung 22).
  • In t19 bestimmt der Sendbarkeits-Bestimmungsteil 24a der EPS-Steuereinheit 2a, ein Teilprogramm an die Batteriesteuereinheit 1 zu senden und sendet der Daten-Transceiverteil 22a sequentiell das in dem Teil-Batteriesteuerprogramm-Aufzeichnungsbereich 233a der Aufzeichnungsvorrichtung 23a gespeicherte Teilprogramm A (Verarbeitung 23). Wenn die Übertragung für alle Teile des Teilprogramms A beendet ist, beendet die EPS-Steuereinheit 2a eine sich auf das Programmumschreiben beziehende Verarbeitung. Derweil empfängt die Batteriesteuereinheit 1 das Teilprogramm A und bestimmt, ob ein Teil des Batterie-Steuerprogramms, welches dem empfangenen Teilprogramm A entspricht, bereits umgeschrieben worden ist oder nicht. Der entsprechende Teil ist zu diesem Zeitpunkt nicht umgeschrieben worden und entsprechend schreibt der Programmumschreibteil 14 den Teil des Batterie-Steuerprogramms, der dem Teilprogramm A entspricht, um. Der Teil des Batterie-Steuerprogramms, der dem Teilprogramm A entspricht und der nicht umgeschrieben worden ist, wird sequentiell umgeschrieben, weil das Teilprogramm A sequentiell empfangen wird (Verarbeitung 14).
  • In t20 bestimmt der Zustandsdetektionsteil 15, ob eine Verifikation bewiesen hat, dass alle Bereiche (Teile) des in dem Batterie-Steuerprogramm-Aufzeichnungsbereich 132 gespeicherten Batterie-Steuerprogramms ohne ein Problem umgeschrieben worden sind oder nicht. Es wird zu diesem Zeitpunkt bestimmt, dass nicht alle der Teile umgeschrieben worden sind. Der Zustandsdetektionsteil 15 bestimmt auch, ob das in dem Batterie-Steuerprogramm-Aufzeichnungsbereich 132 gespeicherte Batterie-Steuerprogramm umgeschrieben worden ist oder nicht. Keiner der Teile des Batterie-Steuerprogramms ist zu diesem Punkt umgeschrieben und entsprechend weist die Batteriesteuereinheit 1 die Motorsteuereinheit 2b an, ein Teilprogramm zu senden (Verarbeitung 15). Der Daten-Transceiverteil 22b der Motorsteuereinheit 2b empfängt die Anweisungen zum Senden eines Teilprogramms (Verarbeitung 32).
  • In t21 bestimmt der Sendbarkeits-Bestimmungsteil 24b der Motorsteuereinheit 2b, ein Teilprogramm an die Batteriesteuereinheit 1 zu senden, und sendet der Daten-Transceiverteil 22b sequentiell das in dem Teil-Batterie-Steuerprogramm-Aufzeichnungsbereich 233b der Aufzeichnungsvorrichtung 22b gespeicherte Teilprogramm B (Verarbeitung 33). Wenn die Sendung für alle Teile des Teilprogramms B beendet ist, beendet die Motorsteuereinheit 2b ihre sich auf das Programmumschreiben beziehende Verarbeitung. Derweil empfängt die Batteriesteuereinheit 1 das Teilprogramm B und bestimmt, ob ein Teil des Batterie-Steuerprogramms, welches dem empfangenen Teilprogramm B entspricht, bereits umgeschrieben worden ist. Der dem Teilprogramm C entsprechende Teil ist zu diesem Punkt bereits umgeschrieben worden. Der Programmumschreibteil 14 schreibt entsprechend einen Teil des Batterie-Steuerprogramms, der dem empfangenen Teilprogramm B, ausgeschlossen durch das Teilprogramm C, entspricht, um. Für den Teil, der dem Teilprogramm C entspricht, verifiziert der Programmverifikationsteil 9, ob die Daten, die bereits umgeschrieben worden sind, zu den Daten des empfangenen Teilprogramms C passen oder nicht (Verarbeitung 16). Es wird angenommen, dass die umgeschriebenen Daten und das Teilprogramm C gleich sind, und dass kein Problem durch die Verifikation gefunden wird. Der Zustandsdetektionsteil 15 bestimmt dann, ob alle Teile des Batterie-Steuerprogramms umgeschrieben worden sind, ohne bei der Verifikation ein Problem zu finden, oder nicht. Hier sind alle Teile ohne ein Problem umgeschrieben worden und entsprechend wird die sich auf das Umschreiben beziehende Verarbeitung beendet.
  • Der Tester 3 in der ersten Ausführungsform kann einen Verschlüsselungsteil zum Verschlüsseln von Teilprogrammen enthalten, so dass durch den Verschlüsselungsteil verschlüsselte Teilprogramme gesendet werden an und gespeichert werden in der EPS-Steuereinheit 2a und der Motorsteuereinheit 2b. Alternativ können die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b beide einen Verschlüsselungsteil enthalten, um aus dem Tester 3 empfangene Teilprogramme zu verschlüsseln, bevor die Teilprogramme gespeichert werden.
  • Die Batteriesteuereinheit 1 kann einen Entschlüsselungsteil zum Entschlüsseln eines Teilprogramms, welches durch einen Verschlüsselungsteil verschlüsselt worden ist, enthalten, so dass ein aus der EPS-Steuereinheit 2a oder der Motorsteuereinheit 2b empfangenes verschlüsseltes Teilprogramm durch den Entschlüsselungsteil entschlüsselt wird. Alternativ können die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b beide einen Entschlüsselungsteil enthalten, um in der EPS-Steuereinheit 2a und der Motorsteuereinheit 2b gespeicherte, verschlüsselte Teilprogramme zu entschlüsseln, bevor die Teilprogramme an die Batteriesteuereinheit 1 gesendet werden. Kurz gesagt, kann jeder Typ-2-Knoten einen Verschlüsselungsteil und einen Entschlüsselungsteil enthalten.
  • Das Einschließen des Verschlüsselungsteils und Entschlüsselungsteils, die oben beschrieben sind, reduziert das Risiko, dass Teilprogramme durch Dritte über das CAN-Netzwerk 6 entziffert werden, oder das Risiko, dass Teilprogramme durch die Dritten entziffert werden, wenn die Teilprogramme in der EPS-Steuereinheit 2a und der Motorsteuereinheit 2b gespeichert sind, wodurch die Sicherheit des Programmumschreibens sichergestellt ist.
  • Wie oben beschrieben, teilt im Programmumschreibsystem gemäß der ersten Ausführungsform der Tester 3 der Batteriesteuereinheit 1 mit, dass ein Programmumschreiben auszuführen ist, und in dem Fall, bei dem die Batteriesteuereinheit 1 die sich auf die Steuerung der Batterie 10 zu dieser Zeit beziehende normale Verarbeitung ausführt, unterteilt er ein Umschreibprogramm zum Umschreiben des Batterie-Steuerprogramms in Teilprogramme in einer Weise, die eine partielle Überlappung bei den Daten zwischen einem Teilprogramm und einem anderen gestattet. Der Tester 3 sendet die Teilprogramme getrennt an die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b.
  • Wenn die Batteriesteuereinheit 1 nachfolgend einen Zustand erreicht, wo das Programmumschreiben ausführbar ist, senden die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b die in ihren eigenen Knoten gespeicherten Teilprogramme an die Batteriesteuereinheit 1. Jedes Mal, wenn eines der Teilprogramme empfangen wird, bestimmt die Batteriesteuereinheit 1, ob ein Teil des Batterie-Steuerprogramms, der dem empfangenen Teilprogramm entspricht, umgeschrieben worden ist. In dem Fall, bei dem der entsprechende Teil bereits umgeschrieben worden ist, führt die Batteriesteuereinheit 1 eine Verifikation durch Vergleichen der empfangenen Daten mit umgeschriebenen Daten durch. In dem Fall, bei dem der entsprechende Teil noch nicht umgeschrieben worden ist, schreibt die Batteriesteuereinheit 1 den entsprechenden Teil um.
  • Gemäß diesem Programmumschreibsystem und Verfahren wird das Umschreiben des Batterie-Steuerprogramms zu einem gewissen Zeitpunkt, während die Batteriesteuereinheit 1 die normale Verarbeitung nicht ausführt, erzielt. Zusätzlich, selbst wenn die Batteriesteuereinheit 1 die normale Verarbeitung ausführt, kann der Tester 3 vom CAN-Netzwerk 6 getrennt werden, ohne auf den gegebenen Zeitpunkt zu warten, sobald der Tester 3 das umgeschriebene Programm in Teilprogramme in einer Weise unterteilt, die eine partielle Überlappung bei den Daten zwischen einem Teilprogramm und einem anderen gestattet, und das Senden der Teilprogramme getrennt an die EPS-Steuereinheit 2a und Motorsteuereinheit 2b beendet. Programmumschreiben und Verifikation können somit effizient ausgeführt werden.
  • Ein anderer Vorteil ist, dass, weil das Umschreibprogramm in einer Mehrzahl von Typ-2-Knoten gespeichert ist (zwei Typ-2-Knoten in der ersten Ausführungsform: die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b), wenn Teilprogramme so unterteilt sind, dass sie partiell bei den Daten miteinander überlappen, die Notwendigkeit, einem Typ-2-Knoten eine hinreichend große Aufzeichnungskapazität zu geben, das gesamte Umschreibprogramm zu speichern, eliminiert wird, wodurch eine Situation vermieden wird, in welcher die Kosten eines Knotens übermäßig höher sind als die Kosten der anderen Knoten, und die Gesamtkosten niedrig gehalten werden.
  • Die Aufzeichnungskapazität für die Speicherung eines Teilprogramms kann durch Eliminieren des überlappenden Teils in einem Ausmaß minimiert werden, das als notwendig angesehen wird, wenn die Wichtigkeit des Programms und dergleichen berücksichtigt werden.
  • Zweite Ausführungsform
  • 6 ist ein Diagramm zum Illustrieren der Konfiguration eines Fahrzeugsteuersystems, auf welches ein Programmumschreibsystem und Verfahren gemäß einer zweiten Ausführungsform der vorliegenden Erfindung angewendet werden. 7A und 7B sind Diagramme zum Illustrieren der Aufzeichnungsbereichs-Konfigurationen von Aufzeichnungsmedien eines Typ-4-Knotens und eines Typ-5-Knotens in einem Fahrzeugsteuersystem von 6. Komponenten von Steuereinheiten und eine Ladestation, welche für die zweite Ausführungsform nicht direkt relevant sind, werden in 6 weggelassen. Beschreibungen zu Komponenten, die in der ersten Ausführungsform (siehe 1) beschrieben worden sind, werden in dieser Ausführungsform weggelassen.
  • Das Fahrzeugsteuersystem gemäß der zweiten Ausführungsform beinhaltet nicht den Tester 3 (einen Typ-3-Knoten) des Fahrzeugsteuersystems gemäß der ersten Ausführungsform und beinhaltet eine Bordlader-Steuereinheit 4, die ein Typ-4-Knoten ist, und eine Ladestation 5, welche ein Typ-5-Knoten ist. Die Bordlader-Steuereinheit 4 ist mit dem CAN-Netzwerk 6, welches ein erstes Netzwerk ist, und einer Stromleitungs-Kommunikation 7a, die ein zweites Netzwerk ist, verbunden, und kann Kommunikation über das CAN-Netzwerk 6 zu und aus der Batteriesteuereinheit 1, die ein Typ-1-Knoten ist, und der EPS-Steuereinheit 2a und der Motorsteuereinheit 2b, die Typ-2-Knoten sind, halten.
  • Die Ladestation 5 ist nicht immer mit einem Bordlader 40 verbunden. Die Ladestation 5 ist mit dem Bordlader 40 durch eine Stromleitung 7 bei Bedarf verbunden, zum Beispiel wenn die Batterie 10 geladen wird. Gleichzeitig ist die Ladestation 5 durch die Stromleitung 7 mit der Bordlader-Steuereinheit 4 verbunden, um die Stromleitungs-Kommunikation 7a zu etablieren, welche die Stromleitung 7 verwendet, zwischen der Ladestation 5 und der Bordlader-Steuereinheit 4 über den Bordlader 40. Dies ermöglicht der Bordlader-Steuereinheit 4 und der Ladestation 5, miteinander über die Stromleitungs-Kommunikation 7a zu kommunizieren.
  • Die Konfiguration und Funktionen der Ladestation 5 werden kurz zuerst beschrieben. Ein Mikrocontroller 51 führt verschiedene Arten von Verarbeitung aus, welche sich auf den Betrieb der Ladestation 5 bezieht. Ein Stromleitungs-Kommunikations-Transceiverteil 52 sendet und empfängt Daten über die Stromleitungs-Kommunikation 7a zu und aus der Bordlader-Steuereinheit 4, welche mit der Stromleitung 7 verbunden ist. Ein Aufzeichnungsmedium 53 weist einen fünften Aufzeichnungsbereich zum Speichern eines Umschreibprogramms zum Umschreiben des Batterie-Steuerprogramms auf.
  • Die Aufzeichnungsbereichs-Konfiguration der Aufzeichnungsmedien 53 wird unter Bezugnahme auf 7B beschrieben. Die Aufzeichnungsmedien 53 beinhalten einen Batterie-Steuerprogramm-Aufzeichnungsbereich 531, welcher ein fünfter Aufzeichnungsbereich zum Speichern des Umschreibprogrammes des Batterie-Steuerprogramms ist. Das in dem Batterie-Steuerprogramm-Aufzeichnungsbereich 531 gespeicherte Umschreibprogramm wird über die Stromleitungs-Kommunikation 7a an die Bordlader-Steuereinheit 4 gesendet.
  • Die Konfiguration und Funktionen der Bordlader-Steuereinheit 4 werden als Nächstes kurz beschrieben. Ein Mikrocontroller 41 führt verschiedene Arten von Verarbeitung aus, die sich auf den Betrieb des Bordladers 40 beziehen. Ein Daten-Transceiverteil 42 sendet und empfängt Daten zu und aus anderen mit dem CAN-Netzwerk 6 verbundenen Steuereinheiten (einschließlich der Batteriesteuereinheit 1, der EPS-Steuereinheit 2a und der Motorsteuereinheit 2b) über das CAN-Netzwerk 6. Eine Aufzeichnungsvorrichtung 43 weist einen Batterie-Steuerprogramm-Zeitweilig-Aufzeichnungsbereich 433 auf, der ein vierter Aufzeichnungsbereich ist.
  • Die Aufzeichnungsbereichs-Konfiguration der Aufzeichnungsvorrichtung wird unter Bezugnahme auf 7A beschrieben. Die Aufzeichnungsvorrichtung 43 enthält einen Bordlader-Steuerprogramm-Aufzeichnungsbereich 431, in welchem ein Bordlader-Steuerprogramm zum Bestimmen der Inhalte einer am Bordlader 40 durchgeführten Steuerung gespeichert ist, einen Bordlader-Steuerprogramm-Aufzeichnungsbereich (für Daten) 432, in welchem Daten und dergleichen, die sich auf die Steuerung des Bordladers 40 beziehen, gespeichert sind, und einen Batterie-Steuerprogramm-Zeitweilig-Aufzeichnungsbereich 433, der ein Pufferbereich zum zeitweiligen Speichern eines Umschreibprogramms ist, welches für die Ladestation 5 empfangen wird. Als Batterie-Steuerprogramm-Zeitweilig-Aufzeichnungsbereich 433, der nicht von ausreichend großer Kapazität sein muss, um das gesamte Batterie-Steuerprogramm zu speichern, kann ein freier Bereich oder dergleichen der Aufzeichnungsvorrichtung 43 zugewiesen werden.
  • Ein Programm-Unterteilungsteil 44, der ein zweiter Programm-Unterteilungsteil ist, unterteilt ein in dem Batterie-Steuerprogramm-Zeitweilig-Aufzeichnungsbereich 433 gespeichertes Umschreibprogramm in Teilprogramme in einer Weise, die einer partiellen Überlappung bei den Daten zwischen einem Teilprogramm und einem anderen Teilprogramm gestattet, jedes Mal wenn das gespeicherte Umschreibprogramm einen vorbestimmten Umfang erreicht. Die durch den Programm-Unterteilungsteil 44 erzeugten Teilprogramme werden getrennt an die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b über das CAN-Netzwerk 6 gesendet.
  • Ein Typ-1-Knoten-Zustands-Detektionsteil 45, der ein dritter Detektionsteil ist, detektiert einen Zustand mit Bezug auf beispielsweise, ob die Batteriesteuereinheit 1 in einem Zustand ist oder nicht, bei dem das Batterie-Steuerprogramm umgeschrieben werden kann, oder ob alle Bereiche des Batterie-Steuerprogramms umgeschrieben worden sind oder nicht. In dem Fall, bei dem der Typ-1-Knoten-Zustands-Detektionsteil 45 detektiert, dass das Batterie-Steuerprogramm umgeschrieben werden kann, werden die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b über das CAN-Netzwerk 6 benachrichtigt. Beim Empfangen der Benachrichtigung senden die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b die in ihren eigenen Knoten gespeicherten Teilprogramme an die Batteriesteuereinheit 1. Ein Stromleitungskommunikations-Transceiverteil 46 sendet und empfängt Daten über die Stromleitungs-Kommunikation 7a zu und aus der Ladestation 5, die mit der Stromleitung 7 verbunden ist.
  • Die Abläufe von Verarbeitungsprozeduren an den entsprechenden Knoten des Programmumschreibsystems gemäß der zweiten Ausführungsform werden als Nächstes unter Bezugnahme auf Flussdiagramme von 8 bis 10 beschrieben. Jedoch ist der Verarbeitungsablauf in der EPS-Steuereinheit 2a und der Motorsteuereinheit 2b, die Typ-2-Knoten sind, der gleiche wie der in der ersten Ausführungsform unter Bezugnahme auf 4A beschriebene Verarbeitungsablauf und eine Beschreibung desselben wird daher in dieser Ausführungsform weggelassen.
  • 8 ist ein Flussdiagramm zum Illustrieren des Ablaufs der Verarbeitung, welche sich auf das Programmumschreiben in der Ladestation 5, die ein Typ-5-Knoten ist, bezieht. Die Ladestation 5 erteilt eine Umschreibanweisung an die Batteriesteuereinheit 1, wo ein Programm umgeschrieben wird, und führt das Senden des Umschreibprogramms durch. Der in 8 illustrierte Ablauf ist ein Verarbeitungsablauf, nachdem die Umschreibanweisungen gesendet sind.
  • Im Schritt S801 sendet der Stromleitungs-Kommunikations-Transceiverteil 52 zuerst ein Umschreibprogramm zum Umschreiben des Batterie-Steuerprogramms an die Bordlader-Steuereinheit 4 über die Stromleitungs-Kommunikation 7a und die Umschreibprogramm-Sendeverarbeitung schreitet zu Schritt S802 fort. Im Schritt S802 wird bestimmt, ob alle Teile des Umschreibprogramms gesendet worden sind oder nicht. Die Umschreibprogramm-Sendeverarbeitung geht zurück zum Schritt S801 in dem Fall, bei dem nicht alle Teile des Umschreibprogramms gesendet worden sind (NEIN) und wird in dem Fall beendet, bei dem alle Teile des Umschreibprogramms gesendet worden sind (JA).
  • Der Verarbeitungsablauf, der sich auf das Programmumschreiben in der Bordlader-Steuereinheit 4, die ein Typ-4-Knoten ist, bezieht, wird als Nächstes unter Bezugnahme auf 9A und 9B beschrieben. Die Bordlader-Steuereinheit 4 führt eine normale Verarbeitung, die sich auf die Steuerung des Bordladers 40 bezieht, und eine Verarbeitung, die sich auf das Umschreiben eines Programmes der Batteriesteuereinheit 1 bezieht, aus. Die sich auf das Programmumschreiben beziehende Verarbeitung wird ausgeführt, wenn die Ausführung des Umschreibens durch die Ladestation 5 mitgeteilt wird, wenn nicht die normale Verarbeitung ausgeführt wird. Der in 9A illustrierte Ablauf ist ein Verarbeitungsablauf nachdem eine Umschreibausführungsmitteilung aus der Ladestation 5 empfangen ist.
  • Im Schritt S901 bestimmt der Typ-1-Knoten-Zustands-Detektionsteil 45 zuerst, ob die Batteriesteuereinheit 1 in einem Zustand ist, bei dem das Batterie-Steuerprogramm umgeschrieben werden kann, oder nicht. Spezifisch bestimmt der Typ-1-Knoten-Zustands-Detektionsteil 45, ob die Batteriesteuereinheit 1 eine normale Verarbeitung ausführt oder nicht, die sich auf die Steuerung der Batterie 10 bezieht. In dem Fall, bei dem die Batteriesteuereinheit 1 die normale Verarbeitung nicht ausführt, schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S909 fort, wo die Bordlader-Steuereinheit 4 normale Umschreibverarbeitung ausführt. Das normale Umschreiben im Schritt S909 ist ein konventionelles Umschreibverfahren zum Umschreiben eines Batterie-Steuerprogramms von Batteriesteuereinheit 1 über Datentransfer der Bordlader-Steuereinheit 4 aus der Ladestation 5, nicht durch Teilen eines Umschreibprogramms, das ein Merkmal der vorliegenden Erfindung ist. Eine Beschreibung des normalen Umschreibverarbeitens wird daher weggelassen.
  • In dem Fall, bei dem die Batteriesteuereinheit 1 die normale Verarbeitung im Schritt S901 ausführt, ist das Programmumschreiben unausführbar (NEIN). Die sich auf das Programmumschreiben beziehende Verarbeitung schreitet entsprechend zu Schritt S902 fort, wo der Daten-Transceiverteil 42 über das CAN-Netzwerk 6 einen relevanten Knoten über die Ausführung eines partiellen Umschreibens informiert. Im Schritt S903 empfängt die Bordlader-Steuereinheit 4 ein Umschreibprogramm aus der Ladestation 5, teilt das Umschreibprogramm in Teilprogramme in einer Weise, die eine partielle Überlappung bei den Daten zwischen einem Teilprogramm und einem anderen gestattet und führt Sende-/Empfangsverarbeitung, in welchen die Teilprogramme an den Typ-2-Knoten gesendet werden, aus. Die Sende-/Empfangsverarbeitung von Schritt S903 wird später unter Bezugnahme auf 9B beschrieben.
  • Im Schritt S904 bestimmt der Typ-1-Knoten-Zustands-Detektionsteil 45 wieder, ob die Batteriesteuereinheit 1 in einem Zustand ist, in welchem das Programm umgeschrieben werden kann, durch Bestimmen, ob die Batteriesteuereinheit 1 die normale Verarbeitung ausführt oder nicht. In dem Fall, bei dem das Programmumschreiben ausführbar ist (JA), schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S905 fort. In dem Fall, bei dem das Programmumschreiben unausführbar ist (NEIN), ist die Bordlader-Steuereinheit 4 in Bereitschaft, bis die Batteriesteuereinheit 1 einen Zustand erreicht, wo das Programm umgeschrieben werden kann.
  • Im Schritt S905 bestimmt der Typ-1-Knoten-Zustands-Detektionsteil 45 weiter, ob alle Bereiche (Teile) des in dem Batterie-Steuerprogramm-Aufzeichnungsbereich 132 gespeicherten Batterie-Steuerprogramms der Batteriesteuereinheit 1 umgeschrieben worden sind oder nicht. In dem Fall, bei dem alle Teile des Batterie-Steuerprogramms umgeschrieben worden sind (JA), schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S908 fort, wo der Daten-Transceiverteil 42 eine Nachricht des Inhalts sendet, dass das Umschreiben für alle Teile der Batteriesteuereinheit 1 beendet ist, und wird dann beendet.
  • Wenn im Schritt S905 festgestellt wird, dass nicht alle Teile des Batterie-Steuerprogramms umgeschrieben worden sind (NEIN), schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S906 fort, wo der Typ-1-Knoten-Zustands-Detektionsteil 45 bestimmt, ob ein Programmumschreiben in der Batteriesteuereinheit 1 ausgeführt wird oder nicht. In dem Fall, bei dem keiner der in dem Batterie-Steuerprogramm-Aufzeichnungsbereich 132 gespeicherten Teile umgeschrieben wird (NEIN), schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S907 fort. In dem Fall, bei dem ein Programmumschreiben ausgeführt wird (JA), ist die Bordlader-Steuereinheit 4 in Bereitschaft, bis das Umschreiben beendet ist.
  • Im Schritt S907 detektiert der Typ-1-Knoten-Zustands-Detektionsteil 45 einen Teil des in dem Batterie-Steuerprogramm-Aufzeichnungsbereich 132 gespeicherten Batterie-Steuerprogramms, der nicht umgeschrieben worden ist, und erteilt der Daten-Transceiverteil 42 eine Anweisung an einen Typ-2-Knoten, in welcher ein dem detektierten Teil entsprechendes Teilprogramm gespeichert ist, um den Typ-2-Knoten anzuweisen, das Teilprogramm zu senden.
  • Details der Sende-/Empfangs-Verarbeitung von Schritt S903 werden als Nächstes unter Bezugnahme auf 9B beschrieben. Im Schritt S911 bestimmt die Bordlader-Steuereinheit 4, ob ein vorbestimmter Betrag des Umschreibprogramms des Batterie-Steuerprogramms, der aus der Ladestation 5 gesendet ist, empfangen worden ist oder nicht. Das Empfangen aller Teile des Umschreibprogramms, das von großer Kapazität ist, erfordert einige Zeit und empfangene Teile des Umschreibprogramms werden in dem Batterie-Steuerprogramm-Zeitweilig-Aufzeichnungsbereich 433 zu einem angemessenen Zeitpunkt gespeichert. Wenn im Schritt S911 bestimmt wird, dass der vorbestimmte Betrag empfangen worden ist (JA), schreitet die Sende-/Empfangs-Verarbeitung zu Schritt S912 fort. In dem Fall, bei dem der vorbestimmte Betrag nicht empfangen worden ist, geht die Bordlader-Steuereinheit 4 in Bereitschaft, bis der vorbestimmte Betrag empfangen ist.
  • Im Schritt S912 teilt der Programm-Unterteilungsteil 44 das in dem Batterie-Steuerprogramm-Zeitweilig-Aufzeichnungsbereich 433 gespeicherte Batterie-Steuerprogramm in Teilprogramme in einer Weise, die eine partielle Überlappung bei den Daten zwischen einem Teilprogramm und einem anderen gestattet. Im nachfolgenden Schritt S913 sendet der Daten-Transceiverteil 42 jedes Teilprogramm getrennt an einen der Typ-2-Knoten (die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b). Im Schritt S914 wird bestimmt, ob alle Teile des Umschreibprogramms aus der Ladestation 5 empfangen worden sind oder nicht. Die Sende-/Empfangs-Verarbeitung geht zurück zu Schritt S911 in dem Fall, bei dem nicht alle der Teile empfangen worden sind (NEIN) und wird in dem Fall beendet, bei dem alle Teile empfangen worden sind (JA).
  • Der sich auf das Programmumschreiben in der Batteriesteuereinheit 1, der ein Typ-1-Knoten ist, beziehende Verarbeitungsablauf wird als Nächstes unter Bezugnahme auf 10 beschrieben. Die Batteriesteuereinheit 1 führt eine normale, sich auf die Steuerung der Batterie 10 beziehende Verarbeitung und eine sich auf das Umschreiben des Batterie-Steuerprogramms beziehende Verarbeitung aus. Die sich auf das Programmumschreiben beziehende Verarbeitung wird ausgeführt, wenn die Umschreibanweisungen aus der Ladestation 5 empfangen werden. Der in 10 illustrierte Ablauf ist ein Verarbeitungsablauf, nachdem die Ladestation 5 mitteilt, dass das Umschreiben auszuführen ist.
  • Im Schritt S101 bestimmt die Batteriesteuereinheit 1 zuerst, ob Anweisungen zum Ausführen eines partiellen Umschreibens (Schritt S902 von 9A) aus der Bordlader-Steuereinheit 4 erteilt worden sind oder nicht. Die sich auf das Programmumschreiben beziehende Verarbeitung schreitet zu Schritt S102 in dem Fall fort, wo die Teilungsumschreibanweisungen erteilt worden sind (JA). In dem Fall, bei dem die Anweisungen nicht erteilt worden sind (NEIN), wird eine normale Programmumschreibverarbeitung im Schritt S108 ausgeführt. Das normale Umschreiben im Schritt S108 ist ein konventionelles Umschreibverfahren zum Umschreiben eines Batterie-Umschreibprogramms der Batteriesteuereinheit 1 durch Datenübertragung der Bordlader-Steuereinheit 4 aus der Ladestation 5, nicht durch Unterteilen eines Umschreibprogramms, was ein Merkmal der vorliegenden Erfindung ist. Eine Beschreibung zur normalen Umschreibverarbeitung wird daher weggelassen. Im Schritt S102 wartet der Daten-Transceiverteil 12 auf den Empfang eines Teilprogramms. Die sich auf das Programmumschreiben beziehende Verarbeitung schreitet zu Schritt S102 in dem Fall fort, bei dem der entsprechende Teil umgeschrieben ist (JA) und schreitet in dem Fall, bei dem der entsprechende Teil 103 fort, wenn ein Teilprogramm empfangen wird (JA). In dem Fall, bei dem kein Teilprogramm im Schritt S102 empfangen wird (NEIN), ist die Batteriesteuereinheit 1 in Bereitschaft, bis ein Teilprogramm empfangen wird.
  • Im Schritt S103 prüft die Batteriesteuereinheit 1, ob ein Teil des Batterie-Steuerprogramms, der dem empfangenen Teilprogramm entspricht, bereits mit einem anderen empfangenen Teilprogramm umgeschrieben worden ist. Die sich auf das Programmumschreiben beziehende Verarbeitung schreitet zu Schritt S105 in dem Fall fort, bei dem der entsprechende Teil umgeschrieben ist (JA), und schreitet in dem Fall, bei dem der entsprechende Teil nicht umgeschrieben worden ist (NEIN) zu Schritt S104 fort. Im Schritt S104 verwendet der Programmumschreibteil 14 das Programm-Umschreibprogramm zum Umschreiben des Teils des Batterie-Steuerprogramms, das dem empfangenen Teilprogramm entspricht, und die sich auf das Programmumschreiben beziehende Verarbeitung schreitet zu Schritt S107 fort. Im Schritt S105 verwendet der Programmverifikationsteil 9 ein Programmverifikationsprogramm zum Durchführen einer Verifikation an dem Teil des Batterie-Steuerprogramms, der dem empfangenen Teilprogramm entspricht, und schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S106 fort. Im Schritt S106 wird basierend auf dem Ergebnis der Verifikation festgestellt, ob es ein Problem gibt oder nicht. Das Umschreibprogramm wird beendet, wenn es ein Problem gibt (JA) und schreitet zu Schritt S107 fort, wenn es kein Problem gibt (NEIN). Im Schritt S107 wird bestimmt, ob alle Teile des Batterie-Steuerprogramms umgeschrieben worden sind oder nicht, basierend auf der Mitteilung aus der Bordlader-Steuereinheit 4 (Schritt S908) von 9A. Die sich auf das Programmumschreiben beziehende Verarbeitung geht zurück zu Schritt S102, um auf den Empfang eines anderen Teilprogramms in dem Fall zu warten, bei dem die Mitteilung nicht empfangen worden ist (NEIN) und wird in dem Fall beendet, bei dem die Mitteilung empfangen worden ist (JA).
  • Die Abläufe von Verarbeitungsprozeduren, die sich auf das Programmumschreiben an den entsprechenden Knoten beziehen, sind nunmehr unter Bezugnahme auf die Flussdiagramme von Fig. 8 bis 10 beschrieben worden (und 4A). Als Nächstes werden alle die Abläufe von Verarbeitungsprozeduren an den Knoten unter Bezugnahme auf ein Zeitdiagramm von 11 beschrieben. In 11 repräsentiert die vertikale Achse die entsprechenden Knoten und repräsentiert die horizontale Achse die Zeit. Die Ladestation 5 und die Bordlader-Steuereinheit 4 sind bereits mit der Stromleitungs-Kommunikation 7a über den Bordlader 40 in 11 verbunden. Die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b führen ihre jeweiligen normalen Verarbeitungsprozeduren in 11 nicht aus.
  • In t30 führt die Batteriesteuereinheit 1 die sich auf die Steuerung der Batterie 10 beziehende normale Verarbeitung (Verarbeitung 10) aus. In t31 verwendet die Ladestation 5 den Stromleitungs-Kommunikations-Transceiverteil 52, um über die Stromleitungs-Kommunikation 7a der Bordlader-Steuereinheit 4 mitzuteilen, dass ein Programmumschreiben der Batteriesteuereinheit 1 ausgeführt wird (Verarbeitung 60).
  • Die Bordlader-Steuereinheit 4 empfängt die Programmumschreib-Ausführungsmitteilung und verwendet den Typ-1-Knoten-Zustands-Detektionsteil 45 zum Bestimmen, ob ein Programmumschreiben in der Batteriesteuereinheit 1 ausführbar ist oder nicht (Verarbeitung 50). Die Batteriesteuereinheit 1 führt die normale Verarbeitung an diesem Punkt aus und der Typ-1-Knoten-Zustands-Detektionsteil 45 bestimmt entsprechend, dass ein Programmumschreiben unausführbar ist.
  • Zu t32 teilt die Bordlader-Steuereinheit 4 der Batteriesteuereinheit 1, der EPS-Steuereinheit 2a und der Motorsteuereinheit 2b mit, dass, weil ein Programmumschreiben unausführbar ist, das Teilungsumschreiben stattdessen auszuführen ist (Verarbeitung 51). Die Batteriesteuereinheit 1, die EPS-Steuereinheit 2a und die EPS-Steuereinheit 2a empfangen getrennt die Teilumschreib-Ausführmitteilung (Verarbeitung 17, Verarbeitung 20 und Verarbeitung 30).
  • Zu t33 nimmt die Batteriesteuereinheit 1 die normale Verarbeitung wieder auf (Verarbeitung 10). Zu t34 startet die Ladestation 5 ein Senden über die Stromleitungs-Kommunikation 7a des Umschreibprogramms des Batterie-Steuerprogramms, das in der Ladestation 5 gespeichert ist, an die Bordlader-Steuereinheit 4 (Verarbeitung 61). Die Bordlader-Steuereinheit 4 speichert empfangene Teile des Umschreibprogramms in dem Batterie-Steuerprogramm-Zeitweilig-Aufzeichnungsbereich 433 zu einem angemessenen Zeitpunkt (Verarbeitung 52).
  • Zur Zeit t35, in dem Fall, bei dem die empfangenen Teile des Umschreibprogramms eine vorbestimmte Menge übersteigen, verwendet die Bordlader-Steuereinheit 4 den Programm-Unterteilungsteil 44, um ein Teilprogramm A durch Unterteilen des Umschreibprogramms, das in dem Batterie-Steuerprogramm-Zeitweilig-Aufzeichnungsbereich 433 gespeichert ist, in einer Weise zu erzeugen, die ein partielles Überlappen bei den Daten (der überlappende Teil ist ein Teilprogramm C) zwischen dem Teilprogramm A und einem anderen Teilprogramm (einem Teilprogramm B) gestattet. Der Daten-Transceiverteil 42 sendet das erzeugte Teilprogramm A an die EPS-Steuereinheit 2a (Verarbeitung 53). Die EPS-Steuereinheit 2a speichert das empfangene Teilprogramm A in dem Teil-Batteriesteuerprogramm-Aufzeichnungsbereich 233a (Verarbeitung 21).
  • Wenn die empfangenen Teile des Umschreibprogramms wieder den vorbestimmten Betrag übersteigen, verwendet die Bordlader-Steuereinheit 4 den Programm-Unterteilungsteil 44 zu t36, um das Teilprogramm B durch Unterteilen des Batterie-Steuerprogramm-Umschreibprogramms, das in dem Batterie-Steuerprogramm-Zeitweilig-Aufzeichnungsbereich 433 aufgezeichnet ist, in einer Weise zu erzeugen, die ein partielles Überlappen bei den Daten (der überlappte Teil ist das Teilprogramm C) zwischen dem Teilprogramm B und einem anderen Teilprogramm (dem Teilprogramm A) gestattet. Der Daten-Transceiverteil 42 sendet das erzeugte Teilprogramm B an die Motorsteuereinheit 2b (Verarbeitung 54). Die Motorsteuereinheit 2b speichert das empfangene Teilprogramm B im Teil-Batterie-Steuerprogramm-Aufzeichnungsbereich 233b (Verarbeitung 31).
  • Wenn alle Teile des Umschreibprogramms durch die Bordlader-Steuereinheit 4 empfangen worden sind, beendet die Ladestation 5 ihre sich auf das Programmumschreiben beziehende eigene Verarbeitung. Von dann an muss die Ladestation 5 nicht mit dem Bordlader 40 verbunden sein und kann getrennt sein, selbst wenn das Programmumschreiben in der Batteriesteuereinheit 1 ausgeführt wird.
  • Die Batteriesteuereinheit 1 beendet die normale Verarbeitung zur t37. In t38 bestimmt der Typ-1-Knoten-Zustands-Detektionsteil 45 der Bordlader-Steuereinheit 4, ob die Batteriesteuereinheit 1 in einem Zustand ist, bei dem das Programm umgeschrieben werden kann, oder nicht. die Batteriesteuereinheit 1 führt nicht zu diesem Zeitpunkt die normale Verarbeitung aus und der Typ-1-Knoten-Zustands-Detektionsteil 45 bestimmt entsprechend, dass ein Programmumschreiben ausführbar ist.
  • Der Typ-1-Knoten-Zustands-Detektionsteil 45 bestimmt als Nächstes, ob alle Bereiche (Teile) des in dem Batterie-Steuerprogramm-Aufzeichnungsbereich 132 der Aufzeichnungsvorrichtung 13 gespeicherten Batterie-Steuerprogramms umgeschrieben worden sind oder nicht. Es wird festgestellt, dass nicht alle der Teile umgeschrieben worden sind.
  • Der Typ-1-Knoten-Zustands-Detektionsteil 45 bestimmt auch, ob das Programm im Batterie-Steuerprogramm-Aufzeichnungsbereich 132 der Batteriesteuereinheit 1 umgeschrieben wird oder nicht. Das Programm wird zu diesem Zeitpunkt nicht umgeschrieben und der Daten-Transceiverteil 42 erteilt entsprechend eine Anweisung an die EPS-Steuereinheit 2a, ein Teilprogramm zu senden (Verarbeitung 55). Der Daten-Transceiverteil 22a der EPS-Steuereinheit 2a empfängt die Teilprogramm-Sendeanweisung (Verarbeitung 22).
  • Zu t39 bestimmt der Sendbarkeits-Bestimmungsteil 24a der EPS-Steuereinheit 2a, ein Teilprogramm an die Batteriesteuereinheit 1 zu senden und sendet der Daten-Transceiverteil 22a das in dem Teil-Batteriesteuerprogramm-Aufzeichnungsbereich 233a der Aufzeichnungsvorrichtung 23a gespeicherte Teilprogramm A sequentiell (Verarbeitung 23). Wenn die Übertragung für alle Teile des Teilprogramms A beendet ist, beendet die EPS-Steuereinheit 2a ihre sich auf das Programmumschreiben beziehende Verarbeitung. Derweil empfängt die Batteriesteuereinheit 1 das Teilprogramm A und bestimmt, ob ein Teil des Batterie-Steuerprogramms, der dem empfangenen Teilprogramm A entspricht, bereits umgeschrieben worden ist oder nicht. Der entsprechende Teil ist zu diesem Zeitpunkt noch nicht umgeschrieben worden und entsprechend schreibt der Programmumschreibteil 14 den Teil des Batterie-Steuerprogramms, der dem Teilprogramm A entspricht, um. Der Teil des Batterie-Steuerprogramms, der dem Teilprogramm A entspricht und nicht umgeschrieben worden ist, wird sequentiell umgeschrieben, weil das Teilprogramm A sequentiell empfangen wird (Verarbeitung 14).
  • Zu t40 bestimmt der Typ-1-Knoten-Zustands-Detektionsteil 45 der Bordlader-Steuereinheit 4, ob die Batteriesteuereinheit 1 in einem Zustand ist, bei dem das Programm umgeschrieben werden kann oder nicht. Die Batteriesteuereinheit 1 führt zu diesem Zeitpunkt die normale Verarbeitung nicht aus, und der Typ-1-Knoten-Zustands-Detektionsteil 45 bestimmt entsprechend, dass ein Programmumschreiben ausführbar ist. Der Typ-1-Knoten-Zustands-Detektionsteil 45 bestimmt als Nächstes, ob alle Bereiche (Teile) des in den Batterie-Steuerprogramm-Aufzeichnungsbereich 132 der Aufzeichnungsvorrichtung 13 gespeicherten Batterie-Steuerprogramms umgeschrieben worden sind oder nicht. Es wird bestimmt, dass nicht alle der Teile zu diesem Zeitpunkt umgeschrieben worden sind.
  • Der Typ-1-Knoten-Zustands-Detektionsteil 45 bestimmt auch, ob das Programm im Batterie-Steuerprogramm-Aufzeichnungsbereich 132 der Batteriesteuereinheit 1 umgeschrieben wird oder nicht. Das Programm wird zu diesem Zeitpunkt nicht umgeschrieben und entsprechend erteilt der Daten-Transceiverteil 42 Anweisungen an die Motorsteuereinheit 2b, ein Teilprogramm zu senden (Verarbeitung 56). Der Daten-Transceiverteil 22b der Motorsteuereinheit 2b empfängt die Teilprogramm-Sendeanweisungen (Verarbeitung 32).
  • In t41 bestimmt der Sendbarkeits-Bestimmungsteil 24b der Motorsteuereinheit 2b, ein Teilprogramm an die Batteriesteuereinheit 1 zu senden und sendet der Daten-Transceiverteil 22b sequentiell das in dem Teil-Batterie-Steuerprogramm-Aufzeichnungsbereich 233b der Aufzeichnungsvorrichtung 23b aufgezeichnete Teilprogramm B (Verarbeitung 33). Wenn die Übertragung für alle Teile des Teilprogramms B beendet ist, beendet die Motorsteuereinheit 2b ihre sich auf Programmumschreiben beziehende Verarbeitung.
  • Derweil empfängt die Batteriesteuereinheit 1 das Teilprogramm B und bestimmt, ob ein Teil des Batterie-Steuerprogramms, das dem empfangenen Teilprogramm B entspricht, bereits umgeschrieben worden ist oder nicht. Der Teil, der dem Teilprogramm C entspricht, ist bereits zu diesem Zeitpunkt umgeschrieben worden. Der Programmumschreibteil 14 schreibt entsprechend einen Teil des Batterie-Steuerprogramms, der dem empfangenen Teilprogramm B entspricht, minus dem Teilprogramm C, um. Für den Teil, der dem Teilprogramm C entspricht, führt der Programmverifikationsteil 9 eine Verifikation dazu durch, ob die Daten, die bereits umgeschrieben worden sind, zu den Daten des empfangenen Teilprogramms C passen oder nicht (Verarbeitung 16). Es wird angenommen, dass das Ergebnis der Verifikation zu diesem Zeitpunkt kein Problem ergibt. Falls ein Problem (Inkonsistenz mit den Daten, die umgeschrieben worden sind), in der Verifikationsstufe gefunden wird, werden alle Schritte der Umschreibverarbeitung beendet.
  • Zu t42 bestimmt der Typ-1-Knoten-Zustandsdetektionsteil 45 der Bordlader-Steuereinheit 4, ob alle Teile des Batterie-Steuerprogramms umgeschrieben worden sind oder nicht. Das Umschreiben ist für alle Teile zu diesem Zeitpunkt beendet worden. Der Daten-Transceiverteil 42 teilt entsprechend der Batteriesteuereinheit 1 mit, dass das Programmumschreiben abgeschlossen ist und die Bordlader-Steuereinheit 4 beendet ihre eigene Verarbeitung, die sich auf das Programmumschreiben bezieht (Verarbeitung 57). Diese Mitteilung empfangend, beendet die Batteriesteuereinheit 1 ihre sich auf das Programmumschreiben beziehende Verarbeitung (Verarbeitung 18).
  • Wie oben beschrieben, sendet im Programmumschreibsystem gemäß der zweiten Ausführungsform die Ladestation 5 ein Umschreibprogramm zum Umschreiben des Batterie-Steuerprogramms an die Bordlader-Steuereinheit 4 in dem Fall, bei dem die Batteriesteuereinheit 1 die normale, sich auf die Steuerung der Batterie 10 zu der Zeit, wenn die Ladestation 5 der Bordlader-Steuereinheit 4 mitteilt, dass Programmumschreiben der Batteriesteuereinheit 1 auszuführen ist, beziehende normale Verarbeitung ausführt. Wenn ein vorbestimmter Umfang des Umschreibprogramms empfangen (gespeichert) ist, erzeugt die Bordlader-Steuereinheit 4 ein Teilprogramm A durch Unterteilen des Umschreibprogramms in einer Weise, die eine partielle Überlappung bei den Daten gestattet (der überlappte Teil ist das Teilprogramm C), zwischen dem Teilprogramm A und einem anderen Teilprogramm und sendet das Teilprogramm A an die EPS-Steuereinheit 2a. Wenn der vorgeschriebene Umfang des Umschreibprogramms wieder gespeichert wird, erzeugt die Bordlader-Steuereinheit 4 das Teilprogramm B, welches bei den Daten teilweise mit einem anderen Teilprogramm überlappt (der überlappende Teil ist das in 17 illustrierte Teilprogramm C) und sendet das Teilprogramm B an die Motorsteuereinheit 2b.
  • Wenn nachfolgend die Batteriesteuereinheit 1 einen Zustand erreicht, bei dem Programmumschreiben ausführbar ist, sendet die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b das Teilprogramm A bzw. das Teilprogramm B an die Batteriesteuereinheit 1. Jedes Mal, wenn eines der Teilprogramme empfangen wird, bestimmt die Batteriesteuereinheit 1, ob ein Teil des Batterie-Steuerprogramms, das dem empfangenen Teilprogramm entspricht, bereits umgeschrieben worden ist. Die Batteriesteuereinheit 1 führt eine Verifikation in dem Fall durch, bei dem der entsprechende Teil umgeschrieben worden ist und schreibt den entsprechenden Teil in dem Fall um, bei dem der entsprechende Teil noch nicht umgeschrieben worden ist.
  • Gemäß diesem Programmumschreibsystem wird Umschreiben und Verifizieren des Batterie-Steuerprogramms zu einem gegebenen Zeitpunkt, wenn die Batteriesteuereinheit 1 die normale Verarbeitung nicht ausführt, wie in der ersten Ausführungsform erzielt. Zusätzlich, selbst wenn die Batteriesteuereinheit 1 die normale Verarbeitung ausführt, kann die Ladestation 5 von der Stromleitungs-Kommunikation 7a getrennt werden, ohne auf den gegebenen Zeitpunkt zu warten, sobald die Ladestation 5 das Senden des Umschreibprogramms an die Bordlader-Steuereinheit 4 beendet. Das Programmumschreiben und Verifikation können somit effizient ausgeführt werden.
  • In der zweiten Ausführungsform erzeugt die Bordlader-Steuereinheit 4 ein Teilprogramm, jedes Mal, wenn ein vorbestimmter Betrag des Umschreibprogramms empfangen (gespeichert) wird, durch Unterteilen des Umschreibprogramms, um so Inhalte zu enthalten, die partiell mit einem anderen Teilprogramm überlappen, und sendet das unterteilte Programm an die Relevante der EPS-Steuereinheit 2a und der Motorsteuereinheit 2b, die Typ-2-Knoten sind, sobald das Teilprogramm erzeugt ist. Entsprechend ist ein anderer Vorteil der zweiten Ausführungsform, dass die Bordlader-Steuereinheit 4 keine Aufzeichnungskapazität aufweisen muss, die groß genug ist, das gesamte Umschreibprogramm zu speichern. Die Notwendigkeit, einem Typ-2-Knoten eine hinreichend große Aufzeichnungskapazität zum Speichern des gesamten Umschreibprogrammes zu geben, ist, wie in der ersten Ausführungsform, auch eliminiert, wodurch eine Situation vermieden wird, in der die Kosten eines Knotens übermäßig höher als die Kosten von anderen Knoten sind, und die Gesamtkosten niedrig gehalten werden.
  • Die Aufzeichnungskapazität für die Speicherung eines Teilprogramms kann durch Begrenzen des überlappenden Teils in einem Ausmaß minimiert werden, das als notwendig erachtet wird, wenn die Wichtigkeit des Programms und dergleichen berücksichtigt werden.
  • Dritte Ausführungsform
  • 12 ist ein Diagramm zum Konfigurieren der Konfiguration eines Fahrzeugsteuersystems, auf welche ein Programmumschreibsystem und Verfahren gemäß einer dritten Ausführungsform der vorliegenden Erfindung angewendet werden. Komponenten von Steuereinheiten und einer Ladestation, die nicht direkt für die dritte Ausführungsform relevant sind, werden aus 12 weggelassen.
  • In der zweiten Ausführungsform ist der Typ-1-Knoten-Zustands-Detektionsteil 45 in der Bordlader-Steuereinheit 4 enthalten, die ein Typ-4-Knoten ist. In der dritten Ausführungsform sind Typ-1-Knoten-Zustands-Detektionsteil 25a und 25b jeweils in der EPS-Steuereinheit 2a und der Motorsteuereinheit 2b enthalten, die Typ-2-Knoten sind. Der Rest der Konfiguration und Funktionen des Fahrzeugsteuersystems sind die gleichen wie jene in der zweiten Ausführungsform und deren Beschreibungen sind daher in dieser Ausführungsform weggelassen.
  • Ähnlich zu dem Typ-1-Knoten-Zustands-Detektionsteil 45 (siehe 6), der in der Bordlader-Steuereinheit 4 in der zweiten Ausführungsform enthalten ist, detektieren der Typ-1-Knoten-Zustands-Detektionsteil 25a und 25b, die in der EPS-Steuereinheit 2a bzw. der Motorsteuereinheit 2b enthalten sind, einen Zustand in Bezug beispielsweise darauf, ob die Batteriesteuereinheit 1 in einem Zustand ist, bei dem das Batterie-Steuerprogramm umgeschrieben worden kann oder nicht, oder ob alle Teile des Batterie-Steuerprogramms umgeschrieben worden sind oder nicht.
  • Die Abläufe von Verarbeitungsprozeduren an den entsprechenden Knoten des Programmumschreibsystems gemäß der dritten Ausführungsform werden unter Bezugnahme auf Flussdiagramme von 13 und 14 beschrieben. Jedoch sind die Abläufe von Bearbeitungsprozeduren an der Batteriesteuereinheit 1, die ein Typ-1-Knoten ist, und der Ladestation 5, die ein Typ-5-Knoten ist, dieselben wie jene in der zweiten Ausführungsform und deren Beschreibungen werden daher in dieser Ausführungsform weggelassen (siehe 8 und 10).
  • 13 ist ein Flussdiagramm zum Illustrieren des Verarbeitungsablaufs, der sich auf Programmumschreiben an der EPS-Steuereinheit 2a und der Motorsteuereinheit 2b, die Typ-2-Knoten sind, bezieht. Die EPS-Steuereinheit 2a (oder die Motorsteuereinheit 2b) führt eine sich auf die Steuerung des EPS 20a (oder des Antriebsmotors 20b) beziehende normale Verarbeitung und eine sich auf Programmumschreiben der Batteriesteuereinheit 1 beziehende Verarbeitung aus. Die sich auf das Programmumschreiben beziehende Verarbeitung wird ausgeführt, wenn eine Umschreibausführungsmitteilung aus der Ladestation 5 erteilt wird, wenn nicht die normale Verarbeitung ausgeführt wird. Die sich auf Programmumschreiben beziehende Verarbeitung ist die gleiche an der EPS-Steuereinheit 2a und der Motorsteuereinheit 2b. Die in dieser Ausführungsform gegebene Beschreibung nimmt daher die EPS-Steuereinheit 2a als ein Beispiel.
  • Die EPS-Steuereinheit 2a empfängt eine Umschreibausführungsmitteilung aus der Ladestation 5 über die Bordlader-Steuereinheit 4. Danach bestimmt im Schritt S131 der Typ-1-Knoten-Zustands-Detektionsteil 25a, ob die Batteriesteuereinheit 1 in einem Zustand ist, bei dem das Batterie-Steuerprogramm umgeschrieben werden kann oder nicht. Spezifisch bestimmt der Typ-1-Knoten-Zustands-Detektionsteil 25a, ob die Batteriesteuereinheit 1 eine sich auf die Steuerung der Batterie 10 beziehende normale Verarbeitung ausführt. In dem Fall, bei dem die normale Verarbeitung nicht ausgeführt wird, wird eine normale Programmumschreibverarbeitung ausführbar und wird entsprechend die sich auf das Programmumschreiben der vorliegenden Erfindung beziehende Verarbeitung beendet.
  • Wenn im Schritt S131 festgestellt wird, dass die Batteriesteuereinheit 1 die normale Verarbeitung ausführt, ist das Programmumschreiben unausführbar (NEIN) und schreitet entsprechend die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S132 fort. Im Schritt S132 teilt der Daten-Transceiverteil 22a einem relevanten Knoten mit, dass das teilende Umschreiben auszuführen ist und schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S133 fort. In dem Fall, bei dem ein Teilprogramm aus der Bordlader-Steuereinheit 4 in Schritt S133 empfangen wird (JA), schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S134 fort. In dem Fall, bei dem im Schritt S133 ein Teilprogramm nicht empfangen wird (NEIN), ist die EPS-Steuereinheit 2a in Bereitschaft, bis ein Teilprogramm empfangen wird.
  • Im Schritt S134 wird das durch den Daten-Transceiverteil 22a empfangene Teilprogramm in dem Teil-Batteriesteuerprogramm-Aufzeichnungsbereich 233a der Aufzeichnungsvorrichtung 23a aufgezeichnet und schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S135 fort. Im Schritt S135 bestimmt der Typ-1-Knoten-Zustands-Detektionsteil 25a wieder, ob die Batteriesteuereinheit 1 in einem Zustand ist, bei dem das Batterie-Steuerprogramm umgeschrieben werden kann oder nicht. In dem Fall, bei dem Programmumschreiben ausführbar ist (JA), schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S136 fort. In dem Fall, bei dem Programmumschreiben unausführbar ist (NEIN), ist die EPS-Steuereinheit 2a in Bereitschaft, bis die Batteriesteuereinheit 1 einen Zustand erreicht, bei dem Programmumschreiben ausführbar ist.
  • Im Schritt S136 bestimmt der Typ-1-Knoten-Zustands-Detektionsteil 25a, ob ein Programmschreiben in der Batteriesteuereinheit 1 ausgeführt wird oder nicht. In dem Fall, bei dem keiner der in dem Batterie-Steuerprogramm-Aufzeichnungsbereich 132 der Batteriesteuereinheit 1 gespeicherten Teile umgeschrieben ist (NEIN), schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S137 fort. In dem Fall, bei dem das Batterie-Steuerprogramm umgeschrieben wird (JA), bleibt die EPS-Steuereinheit 2a in Bereitschaft, bis das Umschreiben beendet ist.
  • Im Schritt S137 bestimmt der Sendbarkeits-Bestimmungsteil 24a, ein Teilprogramm zu senden und sendet der Daten-Transceiverteil 22a sequentiell das in dem Teil-Batteriesteuerprogramm-Aufzeichnungsbereich 233a der Aufzeichnungsvorrichtung 23a aufgezeichnete Teilprogramm an die Batteriesteuereinheit 1. Wenn die Übertragung für alle Teile des Teilprogramms beendet ist, schreitet die sich auf das Programmumschreiben beziehende Verarbeitung zu Schritt S138 fort.
  • Im Schritt S138 bestimmt der Typ-1-Knoten-Zustands-Detektionsteil 25a, ob alle Teile des Batterie-Steuerprogramms in der Batteriesteuereinheit 1 umgeschrieben worden sind oder nicht. In dem Fall, bei dem alle Teile umgeschrieben worden sind (JA), schreitet die sich auf das Programm beziehende Verarbeitung zu Schritt S139 fort, wo der Daten-Transceiverteil 22a einen relevanten Knoten informiert, dass alle Teile des Batterie-Steuerprogramms umgeschrieben worden sind, und wird dann beendet. In dem Fall, bei dem nicht alle Teile umgeschrieben worden sind (NEIN), wird das sich auf das Programmumschreibende beziehende Verarbeiten auch beendet, weil die EPS-Steuereinheit 2a das Senden des Teilprogramms, das in ihrem eigenen Knoten gespeichert ist, beendet hat.
  • Der sich auf das Programmumschreiben in der Bordlader-Steuereinheit 4 beziehende Verarbeitungsablauf, die ein Typ-4-Knoten ist, wird als Nächstes unter Bezugnahme auf 14 beschrieben. Die Bordlader-Steuereinheit 4 führt eine sich auf die Steuerung des Bordladers 40 beziehende normale Verarbeitung und eine sich auf das Umschreiben eines Programms in der Batteriesteuereinheit 1 beziehende Verarbeitung aus. Die sich auf das Programmumschreiben beziehende Verarbeitung wird ausgeführt, wenn die Ladestation 5 der Bordlader-Steuereinheit 4 mitteilt, dass ein Umschreiben auszuführen ist, wenn nicht die normale Verarbeitung ausgeführt wird. Der in 14 illustrierte Ablauf ist ein Verarbeitungsablauf, nachdem die Umschreibausführmitteilung aus der Ladestation 5 empfangen ist.
  • Im Schritt S141 bestimmt die Bordlader-Steuereinheit 4 zuerst, ob Anweisungen zum Ausführen von Teilungsumschreibungen aus einer von der EPS-Steuereinheit 2a und Motorsteuereinheit 2b, die Typ-2-Knoten sind, erteilt worden ist oder nicht. Die sich auf das Programmumschreiben beziehende Verarbeitung schreitet zu Schritt S142 in dem Fall fort, bei dem die Teilungsumschreibungsanweisungen erteilt worden sind (JA), und schreitet in dem Fall, bei dem die Anweisungen nicht erteilt worden sind (NEIN), zu Schritt S146 fort, in dem eine normale Umschreibverarbeitung durchgeführt wird. Das normale Umschreiben in Schritt S146 ist ein konventionelles Umschreibverfahren zum Umschreiben eines Batterie-Steuerprogramms der Batteriesteuereinheit 1 durch Datenübertragung der Bordlader-Steuereinheit 4 aus der Ladestation 5, nicht durch Unterteilen eines Umschreibprogramms, welches ein Merkmal der vorliegenden Erfindung ist. Eine Beschreibung zum normalen Umschreibverarbeiten wird daher weggelassen.
  • Im Schritt S142 bestimmt die Bordlader-Steuereinheit 4, ob ein vorbestimmter Umfang des Batterie-Steuerprogramm-Umschreibprogramms, das aus der Ladestation 5 gesendet wird, die ein Typ-5-Knoten ist, empfangen worden ist oder nicht. Alle Teile des aus der Ladestation 5, die von großer Kapazität ist, gesendeten Batterie-Steuerprogramm-Umschreibprogramms zu empfangen erfordert eine gewisse Zeit. Empfangene Teile des Batterie-Steuerprogramm-Umschreibprogramms werden in dem Batterie-Steuerprogramm-Zeitweilig-Aufzeichnungsbereich 433 zu angemessenem Zeitpunkt gespeichert. Wenn in Schritt S142 bestimmt wird, dass der vorgeschriebene Umfang empfangen worden ist (JA), schreitet die sich auf Programmumschreiben beziehende Verarbeitung zu Schritt S143 fort. In dem Fall, bei dem die vorbestimmte Menge nicht empfangen worden ist (NEIN), ist die Bordlader-Steuereinheit 4 in Bereitschaft, bis der vorbestimmte Umfang empfangen ist.
  • Im Schritt S143 unterteilt der Programm-Unterteilungsteil 44 das in dem Batterie-Steuerprogramm-Zeitweilig-Aufzeichnungsbereich 433 aufgezeichnete Batterie-Steuerprogramm in Teilprogramme in einer Weise, die bei den Daten eine partielle Überlappung zwischen einem Teilprogramm und einem anderen gestattet. Im nachfolgenden Schritt S144 sendet der Daten-Transceiverteil 42 jedes Teilprogramm getrennt an einen der Typ-2-Knoten (hier die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b). Im Schritt S145 wird festgestellt, ob alle Teile des Batterie-Steuerprogramm-Umschreibprogramms aus der Ladestation 5 empfangen worden sind oder nicht. Die sich auf das Programmumschreiben beziehende Verarbeitung geht zu Schritt S142 in dem Fall zurück, bei dem nicht alle der Teile empfangen worden sind (NEIN) und wird in dem Fall beendet, in dem alle Teile empfangen worden sind (JA).
  • Die Abläufe von Verarbeitungsprozeduren, die sich auf Programmumschreiben beziehen, die an den entsprechenden Knoten ausgeführt sind, sind nunmehr unter Bezugnahme auf die Flussdiagramme von 8, 10, 13 und 14 beschrieben worden. Als Nächstes werden alle Abläufe von Verarbeitungsprozeduren an den Knoten unter Bezugnahme auf ein Zeitdiagramm von 15 beschrieben. In 15 repräsentiert die vertikale Achse die entsprechenden Knoten und repräsentiert die horizontale Achse die Zeit.
  • Die Ladestation 5 und die Bordlader-Steuereinheit 4 sind bereits mit der Stromleitungs-Kommunikation 7a über den Bordlader 40 in 15 verbunden. Die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b führen ihre entsprechenden normalen Verarbeitungsprozeduren in 15 nicht aus.
  • Zu t50 führt die Batteriesteuereinheit 1 die Steuerung der Batterie 10 aus, was normale Verarbeitung ist (Verarbeitung 10). Zu t51 verwendet die Ladestation 5 den Stromleitungs-Kommunikations-Transceiverteil 52, um über die Stromleitungs-Kommunikation 7a der Bordlader-Steuereinheit 4 mitzuteilen, dass das Batterie-Steuerprogramm der Batteriesteuereinheit 1 umzuschreiben ist (Verarbeitung 60). Die Bordlader-Steuereinheit 4 empfängt über die Stromleitungs-Kommunikation 7a die Mitteilung, dass das Umschreiben des Batterie-Steuerprogramms auszuführen ist (Verarbeitung 55).
  • Zu t52 teilt die Bordlader-Steuereinheit 4 der Batteriesteuereinheit 1, der EPS-Steuereinheit 2a und der Motorsteuereinheit 2b mit, dass das Umschreiben des Batterie-Steuerprogramms auszuführen ist (Verarbeitung 56). Die Batteriesteuereinheit 1, die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b empfangen getrennt die Mitteilung der Ausführung des Umschreibens (Verarbeitung 80, Verarbeitung 25 und Verarbeitung 35).
  • Zu t53 verwendet die EPS-Steuereinheit 2a den Typ-1-Knoten-Zustands-Detektionsteil 25a, um zu bestimmen, ob die Batteriesteuereinheit 1 in einem Zustand ist, bei dem Programmumschreiben ausführbar ist oder nicht. Die Batteriesteuereinheit 1 führt die normale Verarbeitung (Verarbeitung 10) an diesem Punkt aus. Der Typ-1-Knoten-Zustands-Detektionsteil 25a bestimmt entsprechend, dass das Programmumschreiben unausführbar ist und teilt der Batteriesteuereinheit 1 und der Bordlader-Steuereinheit 4 mit, dass das Teilumschreiben auszuführen ist, weil ein Programmumschreiben unausführbar ist (Verarbeitung 20). Die Batteriesteuereinheit 1 und die Bordlader-Steuereinheit 4 empfangen getrennt die Mitteilung der Ausführung des Teilungsumschreibens (Verarbeitung 81 und Verarbeitung 57).
  • Zu t54 verwendet die Motorsteuereinheit 2b den Typ-1-Knoten-Zustands-Detektionsteil 25b, um zu bestimmen, ob die Batteriesteuereinheit 1 in einem Zustand ist, bei dem Programmumschreiben ausführbar ist, oder nicht. Die Batteriesteuereinheit 1 führt die normale Verarbeitung zu diesem Punkt aus. Der Typ-1-Knoten-Zustands-Detektionsteil 25b bestimmt entsprechend, dass ein Programmumschreiben unausführbar ist und teilt der Batteriesteuereinheit 1 und der Bordlader-Steuereinheit 4 mit, dass das Teilungsumschreiben auszuführen ist, weil Programmumschreiben unausführbar ist (Verarbeitung 36). Die Batteriesteuereinheit 1 und die Bordlader-Steuereinheit 4 empfangen getrennt die Mitteilung der Ausführung der Teilungsumschreibung (Verarbeitung 82 und Verarbeitung 58).
  • Zu t55 nimmt die Batteriesteuereinheit 1 die normale Verarbeitung (Verarbeitung 10) wieder auf. Zu t56 startet die Ladestation 5 das Senden über die Stromleitungs-Kommunikation 7a des Umschreibprogramms, das in der Ladestation 5 gespeichert ist, an die Bordlader-Steuereinheit 4 (Verarbeitung 61). Die Bordlader-Steuereinheit 4 speichert empfangene Teile des Umschreibprogramms in dem Batterie-Steuerprogramm-Zeitweilig-Aufzeichnungsbereich 433 zu einem angemessenen Zeitpunkt (Verarbeitung 52).
  • Zu t57, in dem Fall, bei dem die empfangenen Teile des Umschreibprogramms einen vorbestimmten Umfang übersteigen, verwendet die Bordlader-Steuereinheit 4 den Programm-Unterteilungsteil 44, um ein Teilprogramm A zu erzeugen, durch Unterteilen des Umschreibprogramms, das in dem Batterie-Steuerprogramm-Zeitweilig-Aufzeichnungsbereich 433 in einer Weise gespeichert ist, die eine partielle Überlappung bei den Daten (der überlappende Teil ist ein Teilprogramm C) zwischen den Teilprogrammen A und einem anderen Teilprogramm (einem Teilprogramm B) gestattet. Der Daten-Transceiverteil 42 sendet das erzeugte Teilprogramm A an die EPS-Steuereinheit 2a (Verarbeitung 53). Die EPS-Steuereinheit 2a speichert das empfangene Teilprogramm A in dem Teil-Batteriesteuerprogramm-Aufzeichnungsbereich 233a (Verarbeitung 21).
  • Wenn die empfangenen Teile des Umschreibprogramms den vorbestimmten Umfang wieder übersteigen, verwendet die Bordlader-Steuereinheit 4 den Programm-Unterteilungsteil 44 in t58, um das Teilprogramm B zu erzeugen, durch Unterteilen des Umschreibprogramms, das in dem Batterie-Steuerprogramm-Zeitweilig-Aufzeichnungsbereich 433 aufgezeichnet ist, in einer Weise, die ein partielles Überlappen bei den Daten (der überlappende Teil ist das Teilprogramm C, wie in 17 illustriert) zwischen dem Teilprogramm B und einem anderen Teilprogramm (dem Teilprogramm A) gestattet. Der Daten-Transceiverteil 42 sendet das erzeugte Teilprogramm B an die Motorsteuereinheit 2b (Verarbeitung 54). Die Motorsteuereinheit 2b speichert das empfangene Teilprogramm B in dem Teil-Batterie-Steuerprogramm-Aufzeichnungsbereich 233b (Verarbeitung 31).
  • Wenn alle Teile des Umschreibprogramms durch die Bordlader-Steuereinheit 4 empfangen worden sind, beendet die Ladestation 5 ihre eigene, sich auf das Programmumschreiben beziehende Verarbeitung. Ab dann muss die Ladestation 5 nicht mit dem Bordlader 40 verbunden sein und kann getrennt werden, selbst wenn ein Programmumschreiben in der Batteriesteuereinheit 1 ausgeführt wird.
  • Die Batteriesteuereinheit 1 beendet die normale Verarbeitung zu t59. In t60 bestimmt der Typ-1-Knoten-Zustands-Detektionsteil 25a der EPS-Steuereinheit 2a, ob die Batteriesteuereinheit 1 in einem Zustand ist, bei dem das Programm umgeschrieben werden kann oder nicht. Die Batteriesteuereinheit 1 führt zu diesem Punkt die normale Verarbeitung nicht aus und entsprechend bestimmt der Typ-1-Knoten-Zustands-Detektionsteil 25a, dass ein Programmumschreiben ausführbar ist. Der Typ-1-Knoten-Zustands-Detektionsteil 25a bestimmt als Nächstes, ob das Batterie-Steuerprogramm umgeschrieben wird oder nicht. Es wird zu diesem Punkt festgestellt, dass das Umschreiben nicht ausgeführt wird (Verarbeitung 27).
  • Bei t61 bestimmt der Sendbarkeits-Bestimmungsteil 24a der EPS-Steuereinheit 2a, ein Teilprogramm an die Batteriesteuereinheit 1 zu senden, und sendet der Daten-Transceiverteil 22a sequentiell das in dem Teil-Batteriesteuerprogramm-Aufzeichnungsbereich 233a der Aufzeichnungsvorrichtung 23a gespeicherte Teilprogramm A (Verarbeitung 23). Derweil empfängt die Batteriesteuereinheit 1 das Teilprogramm A und bestimmt, ob ein Teil des Batterie-Steuerprogramms, das dem empfangenen Teilprogramm A entspricht, bereits umgeschrieben worden ist oder nicht. Der entsprechende Teil ist zu diesem Zeitpunkt nicht umgeschrieben worden und entsprechend schreibt der Programmumschreibteil 14 den Teil des Batterie-Steuerprogramms, der dem Teilprogramm A entspricht, um. Der Teil des Batterie-Steuerprogramms, der dem Teilprogramm A entspricht und der nicht umgeschrieben worden ist, wird sequentiell umgeschrieben, weil das Teilprogramm A sequentiell empfangen wird (Verarbeitung 14).
  • Zu t62 bestimmt der Typ-1-Knoten-Zustands-Detektionsteil 25a der EPS-Steuereinheit 2a, ob alle Teile des Batterie-Steuerprogramms in der Batteriesteuereinheit 1 umgeschrieben worden sind oder nicht. Nicht alle der Teile sind zu diesem Punkt umgeschrieben worden und entsprechend beendet die EPS-Steuereinheit 2a ihre eigene, sich auf die Programmumschreibung beziehende Verarbeitung (Verarbeitung 28).
  • Zu t63 bestimmt der Typ-1-Knoten-Zustands-Detektionsteil 25b der Motorsteuereinheit 2b, ob die Batteriesteuereinheit 1 in einem Zustand ist, bei dem das Programm umgeschrieben werden kann oder nicht. Die Batteriesteuereinheit 1 führt die normale Verarbeitung zu diesem Punkt nicht aus, und entsprechend bestimmt der Typ-1-Knoten-Zustands-Detektionsteil 25b, dass ein Programmumschreiben ausführbar ist. Der Typ-1-Knoten-Zustands-Detektionsteil 25b bestimmt als Nächstes, ob das Batterie-Steuerprogramm umgeschrieben wird oder nicht. Es wird zu diesem Punkt festgestellt, dass das Umschreiben nicht ausgeführt wird (Verarbeitung 37).
  • Zu t64 bestimmt der Sendbarkeits-Bestimmungsteil 24b der Motorsteuereinheit 2b, ein Teilprogramm an die Batteriesteuereinheit 1 zu senden und sendet der Daten-Transceiverteil 22b sequentiell das in dem Teil-Batterie-Steuerprogramm-Aufzeichnungsbereich 233b der Aufzeichnungsvorrichtung 23b gespeicherte Teilprogramm B (Verarbeitung 33).
  • Derweil empfängt das Batteriesteuereinheit 1 das Teilprogramm B und bestimmt, ob ein Teil des Batterie-Steuerprogramms, das dem empfangenen Teilprogramm B entspricht, bereits umgeschrieben worden ist oder nicht. Der dem Teilprogramm C entsprechende Teil ist bereits zu diesem Zeitpunkt umgeschrieben worden. Der Programmumschreibteil 14 schreibt entsprechend einen Teil des Batterie-Steuerprogramms, der dem empfangenen Teilprogramm B minus dem Teilprogramm C entspricht, um. Für den Teil, der dem Teilprogramm C entspricht, führt der Programmverifikationsteil 9 eine Verifikation dazu aus, ob die Daten, die bereits umgeschrieben worden sind, zu den Daten des empfangenen Teilprogramms C passen oder nicht (Verarbeitung 16). Es wird angenommen, dass das Ergebnis der Verifikation kein Problem zeigt. Falls ein Problem (Inkonsistenz mit Daten, die umgeschrieben worden sind) in der Verifikationsstufe gefunden wird, werden alle Schritte der Umschreibverarbeitung beendet.
  • Zu t65 bestimmt der Typ-1-Knoten-Zustands-Detektionsteil 25b der Motorsteuereinheit 2b, ob alle Teile des Batterie-Steuerprogramms umgeschrieben worden sind oder nicht. Alle Teile sind zu diesem Zeitpunkt umgeschrieben worden und entsprechend sendet der Daten-Transceiverteil 22b an die Batteriesteuereinheit 1 eine Mitteilung, dass das Programmumschreiben abgeschlossen ist. Die Motorsteuereinheit 2b beendet dann ihre sich auf das Programmumschreiben beziehende Verarbeitung (Verarbeitung 38). Die Mitteilung empfangend, bestimmt die Batteriesteuereinheit 1, dass das Umschreiben für alle Teile des Batterie-Steuerprogramms abgeschlossen worden ist und beendet ihre sich auf das Programmumschreiben beziehende, eigene Verarbeitung (Verarbeitung 83).
  • Wie oben beschrieben, können beim Programmumschreibverfahren (System) gemäß der dritten Ausführungsform Programmumschreiben und Verifikation effizient, wie in der zweiten Ausführungsform, ausgeführt werden. Zusätzlich kann eine Situation vermieden werden, in der die Kosten eines Knotens übermäßig höher sind als die Kosten der anderen Knoten und können im Ergebnis die Gesamtkosten niedrig gehalten werden.
  • In der zweiten Ausführungsform und der dritten Ausführungsform kann die Bordlader-Steuereinheit 4 einen Verschlüsselungsteil zum Verschlüsseln von Teilprogrammen enthalten, so dass durch den Verschlüsselungsteil verschlüsselte Teilprogramme an die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b gesendet und dort gespeichert werden. Entsprechend können die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b beide einen Verschlüsselungsteil zum Verschlüsseln von aus der Bordlader-Steuereinheit 4 empfangenen Teilprogrammen, bevor die Teilprogramme gespeichert werden, beinhalten.
  • Die Batteriesteuereinheit 1 kann einen Entschlüsselungsteil zum Entschlüsseln eines Teilprogramms, welches durch einen Verschlüsselungsteil so verschlüsselt worden ist, enthalten, so dass ein aus der EPS-Steuereinheit 2a oder Motorsteuereinheit 2b empfangenes verschlüsseltes Teilprogramm durch den Entschlüsselungsteil entschlüsselt wird. Alternativ können die EPS-Steuereinheit 2a und die Motorsteuereinheit 2b beide einen Entschlüsselungsteil zum Entschlüsseln von in der EPS-Steuereinheit 2a und der Motorsteuereinheit 2b gespeicherten verschlüsselten Programmen enthalten, bevor die Teilprogramme an die Batteriesteuereinheit 1 gesendet werden. Kurz gesagt, kann jeder Typ-2-Knoten einen Verschlüsselungsteil und einen Entschlüsselungsteil beinhalten.
  • Das Beinhalten des Verschlüsselungsteils und des Entschlüsselungsteils, die oben beschrieben sind, reduziert das Risiko, dass Teilprogramme durch die Dritten über das CAN-Netzwerk 6 entziffert werden, oder das Risiko, dass Teilprogramme durch Dritte entziffert werden, wenn die Teilprogramme in der EPS-Steuereinheit 2a und der Motorsteuereinheit 2b gespeichert sind, was die Sicherheit des Programmumschreibens sicherstellt.
  • Während die erste Ausführungsform bis dritte Ausführungsform als ein Beispiel ein Fahrzeugsteuersystem verwenden, das zwei Typ-2-Knoten enthält, ist die Anzahl von Typ-2-Knoten nicht darauf beschränkt. Indem die Anzahl von Typ-2-Knoten vergrößert wird, kann die Kapazität jedes Teilprogramms reduziert werden und kann die Aufzeichnungskapazität, die in jedem Typ-2-Knoten benötigt wird, klein gehalten werden. Falls eine ungerade Anzahl von Teilprogrammen, die bei den Daten partiell miteinander überlappen, in drei oder mehr Typ-2-Knoten erzeugt und gespeichert werden, die im Fahrzeugsteuersystem enthalten sind, kann die Mehrheitsregel als ein Verifikationsverfahren verwendet werden. Wenn Daten-Inkonsistenz zwischen Teilprogrammen vorliegt, kann ein Umschreiben abgeschlossen werden, trotz des bei der Verifikation in der Mitte des Umschreibens gefundenen Problems, indem "falsche" Daten bei Teilprogrammdaten korrigiert werden, welche die Mehrheit sind, und die daher als korrekte Daten angesehen werden.
  • Während die oben gegebene Beschreibung ein Beispiel eines Falls annimmt, in welchem das CAN-Netzwerk 6 das erste Netzwerk ist und die Stromleitungs-Kommunikation 7a das zweite Netzwerk ist, sind die Typen von Netzwerken, die in dem System enthalten sind, nicht darauf beschränkt.
  • Die Annahme der ersten Ausführungsform bis dritten Ausführungsform ist, dass das Programm im Typ-1-Knoten erfolgreich umgeschrieben wird. In Antizipation eines Ausfalls beim Umschreiben aufgrund eines bei der Verifikation gefundenen Problems oder einiger anderer Faktoren kann eine Timeout-Zeit oder dergleichen am Typ-1-Knoten eingestellt werden, so dass in dem Fall, wo eine gewisse Zeitlänge verstreicht, ohne ein Teilprogramm zu empfangen oder bevor das Umschreiben beendet wird, die Umschreibverarbeitung zwangsweise beendet wird. Wenn jedoch der Typ-1-Knoten konfiguriert ist, das Umschreiben mitten in der Ausführung des Umschreibens zu beenden, können Gegenmaßnahmen wie etwa das Vorbereiten eines anderen Steuerprogramms, ablaufen und müssen Aufzeichnungscodes, die eindeutig Ausfallsituationen vorab in relevanten Knoten angeben, genommen werden.
  • Die vorliegende Erfindung ist als ein Verfahren des Umschreibens eines Programms in einem Systemanwend bar, das eine Mehrzahl von mit einem Ziel verbundenen Steuereinheiten enthält (beispielsweise ein Fahrzeugsteuersystem).
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 4668656 [0002, 0003, 0006, 0007]
    • JP 5323151 [0008, 0008, 0009]

Claims (21)

  1. Programmumschreibsystem, das einen Typ-1-Knoten (1) und eine Mehrzahl von Typ-2-Knoten (2a, 2b) umfasst, die kommunikativ miteinander über ein erstes Netzwerk (6) verbunden sind, um ein Programm umzuschreiben, welches Operationen des Typ-1-Knotens bestimmt, wobei der Typ-1-Knoten umfasst: einen ersten Aufzeichnungsbereich (13) zum Speichern des Programms; einen Programmumschreibteil (14) zum teilweisen Umschreiben des im ersten Aufzeichnungsbereich gespeicherten Programms; und einen Programm-Verifikationsteil (9) zum Verifizieren, ob die umgeschriebenen Programme identisch sind oder nicht, wobei jeder der Typ-2-Knoten umfasst: einen zweiten Aufzeichnungsbereich (23a, 23b) zum Speichern eines Teilprogramms, welches ein Teil eines Umschreibprogramms für das Programm ist, um so Inhalte zu beinhalten, die partiell mit dem in einem anderen der Typ-2-Knoten gespeicherten Teilprogramm überlappen; und einen Sendbarkeits-Bestimmungsteil (24a, 24b) zum Bestimmen, ob das Teilprogramm zum Typ-1-Knoten sendbar ist, wobei jeder der Typ-2-Knoten das im Typ-2-Knoten selbst gespeicherte Teilprogramm über das erste Netzwerk an den Typ-1-Knoten sendet, wenn der Sendbarkeits-Bestimmungsteil feststellt, dass das Teilprogramm an den Typ-1-Knoten sendbar ist, und wobei jedes Mal, wenn das Teilprogramm aus einem der Typ-2-Knoten empfangen wird, der Programmumschreibteil des Typ-1-Knotens einen Teil des Programms umschreibt, das im ersten Aufzeichnungsbereich gespeichert ist, entsprechend dem empfangenen Teilprogramm, und der Programmverifikationsteil des Typ-1-Knotens mit den überlappten Inhalten verifiziert, ob die umgeschriebenen Teilprogramme wechselseitig identisch sind oder nicht.
  2. Programmumschreibsystem gemäß Anspruch 1, weiter umfassend einen Typ-3-Knoten (3), der bei Bedarf mit dem ersten Netzwerk verbunden ist und der wechselseitig über das erste Netzwerk mit dem Typ-1-Knoten und den Typ-2-Knoten kommunizieren kann, wobei der Typ-3-Knoten umfasst: einen dritten Aufzeichnungsbereich (33) zum Speichern des Umschreibprogramms; und einen ersten Programmunterteilungsteil (34) zum Erzeugen der Teilprogramme durch Unterteilen des in dem dritten Aufzeichnungsbereich gespeicherten Umschreibprogramms, um so Inhalte zu beinhalten, die teilweise mit einem anderen Teilprogramm überlappen, und wobei der Typ-3-Knoten getrennt über das erste Netzwerk die durch den ersten Programm-Unterteilungsbereich erzeugten Teilprogramme an jeden der Typ-2-Knoten sendet.
  3. Programmumschreibsystem nach Anspruch 1, weiter umfassend: einen Typ-4-Knoten (4), der über das erste Netzwerk mit dem Typ-1-Knoten und den Typ-2-Knoten wechselseitig kommunizieren kann; und einen Typ-5-Knoten (5), der bei Bedarf mit einem zweiten, vom ersten Netzwerk getrennten Netzwerk verbunden ist und der über das zweite Netzwerk mit dem Typ-4-Knoten wechselseitig kommunizieren kann, wobei der Typ-5-Knoten einen fünften Aufzeichnungsbereich (53) zum Speichern des Umschreibprogramms umfasst und über das zweite Netzwerk das in dem fünften Aufzeichnungsbereich gespeicherte Umschreibprogramm an den Typ-4-Knoten sendet, wobei der Typ-4-Knoten umfasst: einen vierten Aufzeichnungsbereich (43) zum Speichern des aus dem Typ-5-Knoten empfangenen Umschreibprogramms; und einen zweiten Programm-Unterteilungsteil (44) zum Erzeugen der Teilprogramme aus dem Umschreibprogramm, um so Inhalte zu beinhalten, die partiell mit einem anderen Teilprogramm überlappen, jedes Mal, wenn das in dem vierten Aufzeichnungsbereich gespeicherte Umschreibprogramm einen vorbestimmten Umfang erreicht, und wobei der Typ-4-Knoten getrennt über das erste Netzwerk die durch den zweiten Programmunterteilungsbereich erzeugten Teilprogramme an die Typ-2-Knoten sendet.
  4. Programmumschreibsystem gemäß Anspruch 1 oder 2, wobei der Typ-1-Knoten weiter umfasst einen ersten Zustandsdetektionsteil (15) zum Detektieren, ob der Typ-1-Knoten in einem Zustand ist, bei dem das Programm umschreibbar ist, oder nicht, und, wenn der erste Zustands-Detektionsbereich detektiert, dass das Programm umschreibbar ist, das selbige den Typ-2-Knoten über das erste Netzwerk mitteilt, und wobei einer der Typ-2-Knoten, der die Mitteilung empfangen hat, das durch ihn selbst gespeicherte Teilprogramm an den Typ-1-Knoten sendet.
  5. Programmumschreibsystem gemäß Anspruch 1, wobei jeder der Typ-2-Knoten weiter einen zweiten Zustands-Detektionsteil (25a, 25b) zum Detektieren, ob der Typ-1-Knoten in einem Zustand ist, bei dem das Programm umschreibbar ist, oder nicht, umfasst, und wenn der zweite Zustands-Detektionsbereich detektiert, dass das Programm umschreibbar ist, das durch ihn selbst gespeicherte Teilprogramm an den Typ-1-Knoten sendet.
  6. Programmumschreibsystem gemäß Anspruch 3, wobei der Typ-4-Knoten weiter einen dritten Zustands-Detektionsbereich (45) zum Detektieren, ob der Typ-1-Knoten in einem Zustand ist, bei dem das Programm umschreibbar ist, oder nicht, umfasst, und wenn der dritte Zustands-Detektionsbereich detektiert, dass das Programm umschreibbar ist, das selbige den Typ-2-Knoten über das erste Netzwerk mitteilt, und wobei einer der Typ-2-Knoten, der die Mitteilung empfangen hat, das durch ihn selbst gespeicherte Teilprogramm an den Typ-1-Knoten sendet.
  7. Programmumschreibsystem gemäß Anspruch 1, wobei das Programmumschreibsystem zumindest drei und eine ungerade Anzahl von Typ-2-Knoten umfasst und eine ungerade Anzahl von Teilprogrammen mit partiell überlappenden Inhalten zwischen den Typ-2-Knoten erzeugt wird, und wobei der Typ-1-Knoten die Normalität der Teilprogramme mit einer Mehrheitsregel verifiziert.
  8. Programmumschreibsystem gemäß Anspruch 7, wobei, wenn die Inhalte der Teilprogramme sich voneinander von der ungeraden Zahl von erzeugten Teilprogrammen unterscheiden, der Typ-1-Knoten die Teilprogramme einer Minderheit zu den Teilprogrammen einer Mehrheit korrigiert.
  9. Programmumschreibsystem gemäß Anspruch 1, wobei jeder der Typ-2-Knoten weiter einen Verschlüsselungsbereich umfasst, zum Verschlüsseln des Teilprogramms, und das durch den Verschlüsselungsbereich verschlüsselte Teilprogramm im zweiten Aufzeichnungsbereich speichert.
  10. Programmumschreibsystem gemäß Anspruch 2, wobei der Typ-3-Knoten einen Verschlüsselungsbereich zum Verschlüsseln der Teilprogramme umfasst und die durch den Verschlüsselungsbereich verschlüsselten Teilprogramme an jeden der Typ-2-Knoten sendet, und wobei jeder der Typ-2-Knoten das verschlüsselte Teilprogramm im zweiten Aufzeichnungsbereich speichert.
  11. Programmumschreibsystem gemäß Anspruch 3, wobei der Typ-4-Knoten einen Verschlüsselungsbereich zum Verschlüsseln der Teilprogramme umfasst und die durch den Verschlüsselungsteil verschlüsselten Teilprogramme an jeden der Typ-2-Knoten sendet, und wobei jeder der Typ-2-Knoten das verschlüsselte Teilprogramm im zweiten Aufzeichnungsbereich speichert.
  12. Programmumschreibsystem gemäß einem der Ansprüche 9 bis 11, wobei der Typ-1-Knoten einen Entschlüsselungsbereich zum Entschlüsseln der verschlüsselten Teilprogramme umfasst, und wenn die verschlüsselten Teilprogramme aus den Typ-2-Knoten empfangen werden, die Teilprogramme durch den Entschlüsselungsbereich entschlüsselt.
  13. Programmumschreibsystem gemäß einem der Ansprüche 9 bis 11, wobei jeder der Typ-2-Knoten weiter einen Entschlüsselungsbereich zum Entschlüsseln der verschlüsselten Teilprogramme umfasst, die in dem zweiten Aufzeichnungsbereich gespeicherten, verschlüsselten Teilprogramme durch den Entschlüsselungsbereich entschlüsselt und das entschlüsselte Teilprogramm an den Typ-1-Knoten sendet.
  14. Programmumschreibverfahren zum Umschreiben eines Programms zum Bestimmen des Betriebs eines Typ-1-Knotens in einem System, welches den Typ-1-Knoten und eine Mehrzahl von Typ-2-Knoten umfasst, wobei das Programmumschreibverfahren umfasst: Speichern, durch jeden der Typ-2-Knoten, eines Teilprogramms, welches ein Teil eines Umschreibprogramms zum Umschreiben des Programms ist, so dass es Inhalte enthält, die teilweise mit einem in einem anderen der Typ-2-Knoten gespeicherten Teilprogramm überlappt; Senden, durch jeden der Typ-2-Knoten über das erste Netzwerk des in dem Typ-2-Knoten selbst gespeicherten Teilprogramms an den Typ-1-Knoten, wenn derjenige der Typ-2-Knoten feststellt, dass das Teilprogramm an den Typ-1-Knoten sendbar ist; und Umschreiben, durch den Typ-1-Knoten, jedes Mal, wenn das Teilprogramm aus einem der Typ-2-Knoten empfangen wird, eines Teils des Programms, das dem empfangenen Teilprogramm entspricht, und verifiziert, ob die umgeschriebenen Teilprogramme gleich sind oder nicht.
  15. Programmumschreibverfahren gemäß Anspruch 14, wobei das System weiter einen Typ-3-Knoten umfasst, der bei Bedarf mit dem ersten Netzwerk verbunden ist, und der über das erste Netzwerk mit dem Typ-1-Knoten und den Typ-2-Knoten kommunizieren kann, und wobei der Typ-3-Knoten, der das Umschreibprogramm speichert, das gespeicherte Umschreibprogramm unterteilt, um so Inhalte zu beinhalten, die teilweise mit einem anderen Teilprogramm überlappen, und die anderen Teilprogramme an jeden der Typ-2-Knoten über das erste Netzwerk sendet.
  16. Programmumschreibverfahren gemäß Anspruch 14, wobei das System weiter umfasst: einen Typ-4-Knoten, der über das erste Netzwerk mit dem Typ-1-Knoten und den Typ-2-Knoten kommunizieren kann; und einen Typ-5-Knoten, der bei Bedarf verbunden ist mit einem zweiten Netzwerk, das getrennt ist vom ersten Netzwerk, und das über das zweite Netzwerk mit dem Typ-4-Knoten kommunizieren kann, wobei der Typ-5-Knoten, der das Umschreibprogramm speichert, das gespeicherte Umschreibprogramm über das zweite Netzwerk an den Typ-4-Knoten sendet, und wobei jedes Mal, wenn das Umschreibprogramm, das aus dem Typ-5-Knoten empfangen wird, einen vorbestimmten Umfang erreicht, der Typ-4-Knoten die Teilprogramme aus dem Umschreibprogramm erzeugt, um so Inhalte zu enthalten, die partiell mit einem anderen Teilprogramm überlappen, und über das erste Netzwerk die erzeugten Teilprogramme an jeden der Typ-2-Knoten sendet.
  17. Programmumschreibverfahren gemäß Anspruch 14, wobei, wenn detektiert wird, dass der Typ-1-Knoten in einem Zustand ist, bei dem das Programm umschreibbar ist, der Typ-1-Knoten dasselbe an die Typ-2-Knoten über das erste Netzwerk mitteilt und einer der Typ-2-Knoten, welche die Mitteilung empfangen haben, das Teilprogramm, das von ihm selbst gespeichert ist, an den Typ-1-Knoten sendet.
  18. Programmumschreibverfahren gemäß Anspruch 14, wobei beim Detektieren, dass der Typ-1-Knoten in einem Zustand ist, bei dem das Programm umschreibbar ist, jeder der Typ-2-Knoten das durch ihn selbst gespeicherte Teilprogramm an den Typ-1-Knoten sendet.
  19. Programmumschreibverfahren gemäß Anspruch 16, wobei beim Detektieren, dass der Typ-1-Knoten in einem Zustand ist, bei dem das Programm umschreibbar ist, der Typ-4-Knoten die Typ-2-Knoten über das erste Netzwerk benachrichtigt und einer der Typ-2-Knoten, der die Benachrichtigung empfangen hat, das durch ihn selbst gespeicherte Teilprogramm an den Typ-1-Knoten sendet.
  20. Programmumschreibverfahren gemäß Anspruch 14, wobei das System zumindest drei Typ-2-Knoten als die Typ-2-Knoten umfasst und eine ungerade Zahl von Teilprogrammen mit den partiell überlappenden Inhalten von den Typ-2-Knoten erzeugt werden, und wobei der Typ-1-Knoten die Normalität der Teilprogramme mit einer Mehrheitsregel verifiziert.
  21. Programmumschreibverfahren gemäß Anspruch 20, wobei, wenn die Inhalte der durch die ungerade Anzahl erzeugten Teilprogramme sich voneinander unterscheiden, der Typ-1-Knoten Teilprogramme einer Minderheit zu Teilprogrammen einer Mehrheit korrigiert.
DE102016218222.6A 2015-10-15 2016-09-22 Programmumschreibsystem und Programmumschreibverfahren Pending DE102016218222A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015-203460 2015-10-15
JP2015203460A JP5996074B1 (ja) 2015-10-15 2015-10-15 プログラム書き換えシステム及びプログラム書き換え方法

Publications (1)

Publication Number Publication Date
DE102016218222A1 true DE102016218222A1 (de) 2017-04-20

Family

ID=56960913

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016218222.6A Pending DE102016218222A1 (de) 2015-10-15 2016-09-22 Programmumschreibsystem und Programmumschreibverfahren

Country Status (3)

Country Link
US (1) US10359753B2 (de)
JP (1) JP5996074B1 (de)
DE (1) DE102016218222A1 (de)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5323151A (en) 1976-08-14 1978-03-03 Matsushita Electric Works Ltd Tank for purifying n ight soil
JP4668656B2 (ja) 2005-03-24 2011-04-13 日立オートモティブシステムズ株式会社 プログラムの書き換えシステム及びプログラムの書き換え方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1376344A3 (de) * 2002-06-17 2005-08-24 Seiko Epson Corporation Vorrichtung und Verfahren zum Überschreiben von Firmware
TWI220962B (en) * 2003-01-20 2004-09-11 Mediatek Inc Firmware updating method and related apparatus for checking content of replacing firmware before firmware updating
JP2005167298A (ja) * 2003-11-28 2005-06-23 Toshiba Corp 受信装置
US20060085564A1 (en) * 2004-10-14 2006-04-20 Bomhoff Matthew D Flash mirroring
US7761735B2 (en) * 2007-04-13 2010-07-20 International Business Machines Corporation Automated firmware restoration to a peer programmable hardware device
US8364973B2 (en) * 2007-12-31 2013-01-29 Intel Corporation Dynamic generation of integrity manifest for run-time verification of software program
JP2009267849A (ja) * 2008-04-25 2009-11-12 Canon Inc 放送システム、その制御方法、送出機、放送受信装置
JP5342302B2 (ja) * 2009-03-30 2013-11-13 株式会社日立ソリューションズ ファームウェア更新システム、ファームウェア配信サーバ、及びプログラム
JP5357204B2 (ja) * 2011-04-18 2013-12-04 三菱電機株式会社 制御システム
JP5323151B2 (ja) * 2011-08-31 2013-10-23 三菱電機株式会社 プログラム書き換えシステム及びプログラム書き換え方法
JP2013246718A (ja) * 2012-05-28 2013-12-09 Auto Network Gijutsu Kenkyusho:Kk 制御システム及びプログラム更新方法
US20140075170A1 (en) * 2012-09-12 2014-03-13 International Business Machines Corporation Automated firmware voting to enable multi-enclosure federated systems

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5323151A (en) 1976-08-14 1978-03-03 Matsushita Electric Works Ltd Tank for purifying n ight soil
JP4668656B2 (ja) 2005-03-24 2011-04-13 日立オートモティブシステムズ株式会社 プログラムの書き換えシステム及びプログラムの書き換え方法

Also Published As

Publication number Publication date
JP5996074B1 (ja) 2016-09-21
US20170108842A1 (en) 2017-04-20
JP2017076255A (ja) 2017-04-20
US10359753B2 (en) 2019-07-23

Similar Documents

Publication Publication Date Title
DE102018104079A1 (de) Sichere end-to-end-fahrzeug-ecu-freischaltung in einer halb-offline-umgebung
DE112009001668B4 (de) Weiterleitungsvorrichtung, Kommunikationssystem und Kommunikationsverfahren
DE102015215697A1 (de) Verfahren und Vorrichtung zum Ausführen einer Querauthentifizierung basierend auf einer geheimen Information
DE112017007431T5 (de) Schlüsselverwaltungssystem, Kommunikationsvorrichtung und Schlüsselteilungsverfahren
DE112014004313T5 (de) Überschreiboperation-Erkennungssystem, Überschreiboperation-Erkennungseinrichtung und Informationsverarbeitungseinrichtung
DE112020004286T5 (de) Einrichten einer sicherheitszuordnung und einer berechtigungsprüfung zum sichern einer datenübertragung zwischen einem initiator und einem antwortenden
EP3092562B1 (de) Verfahren und system zum programmieren von mehreren steuergeräten
DE102012222483A1 (de) Weiterleitungssystem, Weiterleitungsvorrichtung und Kommunikationsvorrichtung, die das Weiterleitungssystem ausbildet
DE102020118760A1 (de) Informationsverarbeitungsvorrichtung, Informationsverarbeitungsverfahren, mobiles Endgerät und Speichermedium
DE112018004266T5 (de) Ändern von verschlüsselung und schlüssel innerhalb einer bestehenden sitzung
DE102015225877A1 (de) Mikrocomputer
DE112015004391T5 (de) Überschreiboperations-Erkennungssystem und Informationsverarbeitungseinrichtung
DE112017007877T5 (de) Steuerung und Steuerungssystem
EP1841285A1 (de) Hörgerätesystem mit binauralem DataLogging und entsprechendes Verfahren
EP3510577B1 (de) Konzept zum erfassen eines umfelds eines kraftfahrzeugs
DE102016218222A1 (de) Programmumschreibsystem und Programmumschreibverfahren
DE102012003000A1 (de) Ferndiagnostizierung von Fahrzeugen
CN109917775A (zh) 一种汽车安全网关数据传输方法及电子设备
DE102018115942A1 (de) Kommunikationsvorrichtung, externe Vorrichtung, Steuerungsverfahren für eine Kommunikationsvorrichtung, Steuerungsverfahren für eine externe Vorrichtung und Computerprogramm
EP0162962B1 (de) Verfahren und Anordnung zum Überwachen des Synchronlaufs von Schlüsselgeräten
DE102016220229A1 (de) Verfahren, System und Fahrzeug zum automatischen Übertragen von Gerätekopplungsdaten an ein Fahrzeug
DE112019007410T5 (de) Drahtlose basisstation, kommunikationssystem, programm, steuerverfahren und drahtlose kommunikationsvorrichtung
DE102017221363A1 (de) Drahtloses kommunikationssystem, fahrzeug, intelligente vorrichtung und steuerverfahren davon
DE102021125399A1 (de) Verfahren und Simulator für den Test mindestens eines Steuergeräts
AT523584B1 (de) Verfahren zum Übertragen von Daten

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R084 Declaration of willingness to licence