[go: up one dir, main page]

DE102017202280A1 - Fahrzeugeigene steuerungsvorrichtung - Google Patents

Fahrzeugeigene steuerungsvorrichtung Download PDF

Info

Publication number
DE102017202280A1
DE102017202280A1 DE102017202280.9A DE102017202280A DE102017202280A1 DE 102017202280 A1 DE102017202280 A1 DE 102017202280A1 DE 102017202280 A DE102017202280 A DE 102017202280A DE 102017202280 A1 DE102017202280 A1 DE 102017202280A1
Authority
DE
Germany
Prior art keywords
slave node
program
master node
communication
node
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
DE102017202280.9A
Other languages
English (en)
Inventor
Kazuhiro Uehara
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.)
Denso Corp
Original Assignee
Denso 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
Priority claimed from JP2017018667A external-priority patent/JP6696452B2/ja
Application filed by Denso Corp filed Critical Denso Corp
Publication of DE102017202280A1 publication Critical patent/DE102017202280A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/403Bus networks with centralised control, e.g. polling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)

Abstract

Es wird eine fahrzeugeigene Steuerungsvorrichtung geschaffen, die an einen Slaveknoten (20) in einem fahrzeugeigenen Netzwerk Neuschreibdaten überträgt, die Schreibobjektdaten enthalten, die von einer externen Vorrichtung (200) übertragen werden, die außerhalb eines Fahrzeugs angeordnet ist, und die ein Programm des Slaveknotens neu schreibt. Die fahrzeugeigene Steuerungsvorrichtung enthält: einen Empfangsabschnitt (S121, S161, S221, S281), der die Neuschreibdaten und ein Vermittlungsprogramm empfängt, das einen Kommunikationsmodus zur Kommunikation mit dem Slaveknoten umwandelt, so dass der Slaveknoten die Neuschreibdaten beim Neuschreiben des Programms des Slaveknotens empfangen kann; einen Speicherabschnitt (S13), der das Vermittlungsprogramm, das durch den Empfangsabschnitt empfangen wird, in einem flüchtigen Speicher zeitweilig speichert; einen Umwandlungsabschnitt (S17, S23, S29), der den Kommunikationsmodus unter Verwendung des Vermittlungsprogramms, das in dem Speicherabschnitt gespeichert ist, umwandelt, so dass der Slaveknoten die Neuschreibdaten beim Neuschreiben des Programms des Slaveknotens empfangen kann; und einen Übertragungsabschnitt (S18, S18a, S24, S24a, S30, S30a), der an den Slaveknoten die Neuschreibdaten, die von der externen Vorrichtung empfangen werden, in dem Kommunikationsmodus nach dessen Umwandlung durch den Umwandlungsabschnitt beim Neuschreiben des Programms des Slaveknotens überträgt.

Description

  • Die vorliegende Erfindung betrifft eine fahrzeugeigene Steuerungsvorrichtung.
  • Die JP 2006-268107 A beschreibt eine elektrische Steuerungseinheit. Die elektrische Steuerungseinheit weist einen ersten Mikrocomputer, der mit einer externen Vorrichtung verbunden ist, und einen zweiten Mikrocomputer auf, der dem ersten Mikrocomputer folgt. Der erste Mikrocomputer wandelt Schreibobjektdaten für den zweiten Mikrocomputer um, wenn der erste Mikrocomputer die Schreibobjektdaten von einer externen Vorrichtung empfängt. Nach dem Umwandeln sichert der erste Mikrocomputer die Schreibobjektdaten in einem RAM, der in den ersten Mikrocomputer eingebaut ist, und zeichnet sämtliche Schreibobjektdaten in dem RAM einmal auf. Dann empfängt der erste Mikrocomputer einen Neuschreibbefehl für den zweiten Mikrocomputer. Außerdem überträgt der erste Mikrocomputer Schreibobjektdaten, die in dem RAM gespeichert sind und die NM Bytes aufweisen, die von dem zweiten Mikrocomputer auf einmal bzw. gleichzeitig empfangen werden können, an den zweiten Mikrocomputer jedes Mal, wenn der erste Mikrocomputer ein Handshake-Signal von dem zweiten Mikrocomputer empfängt.
  • In der obigen elektrischen Steuerungseinheit kann sich ein Kommunikationsmodus zwischen dem ersten Mikrocomputer und einer externen Vorrichtung von einem Kommunikationsmodus zwischen dem ersten Mikrocomputer und dem zweiten Mikrocomputer unterscheiden. In diesem Fall kann eine fahrzeugeigene Steuerungsvorrichtung, die dem ersten Mikrocomputer entspricht, im Voraus eine Umwandlungsfunktion zum Umwandeln von Kommunikationsmodi aufweisen, so dass ein Slaveknoten (Sklave) Neuschreibdaten in einem Fall empfangen kann, in dem der erste Mikrocomputer von der externen Vorrichtung Neuschreibdaten empfängt, die Schreibobjektdaten enthalten, und diese an den zweiten Mikrocomputer überträgt.
  • Es ist jedoch nicht immer der Fall, dass die fahrzeugeigene Steuerungsvorrichtung die Neuschreibdaten an denselben Slaveknoten überträgt, wenn die fahrzeugeigene Steuerungsvorrichtung die Schreibobjektdaten von der externen Vorrichtung empfängt. Die fahrzeugeigene Steuerungsvorrichtung kann die Neuschreibdaten an einen anderen Slaveknoten (ein unterschiedlicher Slaveknoten), der einen anderen bzw. unterschiedlichen Kommunikationsmodus aufweist, übertragen. In diesem Fall kann ein Slaveknoten die Neuschreibdaten, die von der fahrzeugeigenen Steuerungsvorrichtung übertragen wurden, nicht empfangen. Es kann notwendig sein, dass die fahrzeugeigene Steuerungsvorrichtung eine Umwandlungsfunktion jedes Mal ändert, wenn Slaveknoten geändert werden. Aufgrund der Erhöhung der Anzahl der Arten von Slaveknoten und der Komplizierung der Verwaltung von Slaveknoten kann die Umwandlungsfunktion der fahrzeugeigenen Steuerungsvorrichtung nicht richtig aktualisiert werden. Es kann ein fehlerhaftes Schreiben der Schreibobjektdaten auftreten.
  • Es ist eine Aufgabe der vorliegenden Erfindung, eine fahrzeugeigene Steuerungsvorrichtung zu schaffen, die das Auftreten eines fehlerhaften Schreibens der Schreibobjektdaten verhindern kann.
  • Gemäß einem Aspekt der vorliegenden Erfindung wird eine fahrzeugeigene Steuerungsvorrichtung geschaffen, die an einen Slaveknoten in einem fahrzeugeigenen Netzwerk Neuschreibdaten, die Schreibobjektdaten enthalten, die von einer externen Vorrichtung übertragen werden, die außerhalb eines Fahrzeugs angeordnet ist, überträgt und ein Programm des Slaveknotens neu schreibt. Die fahrzeugeigene Steuerungsvorrichtung enthält: einen Empfangsabschnitt, der die Neuschreibdaten und ein Vermittlungsprogramm empfängt, das einen Kommunikationsmodus zur Kommunikation mit dem Slaveknoten umwandelt, so dass der Slaveknoten die Neuschreibdaten beim Neuschreiben des Programms des Slaveknotens empfangen kann; und einen Übertragungsabschnitt, der an den Slaveknoten die Neuschreibdaten, die von der externen Vorrichtung empfangen werden, in dem Kommunikationsmodus nach dessen Umwandlung durch den Umwandlungsabschnitt beim Neuschreiben des Programms des Slaveknotens überträgt.
  • Daher werden gemäß der vorliegenden Erfindung die Neuschreibdaten und das Vermittlungsprogramm von der externen Vorrichtung empfangen, und das empfangene Vermittlungsprogramm wird zeitweilig in einem flüchtigen Speicher gespeichert. Das Vermittlungsprogramm wird zum Umwandeln eines Kommunikationsmodus in einen anderen Kommunikationsmodus verwendet, so dass der Slaveknoten die Neuschreibdaten empfangen kann. Außerdem wird ein Kommunikationsmodus durch das Vermittlungsprogramm, das zeitweilig in dem flüchtigen Speicher gespeichert ist, umgewandelt, und die Neuschreibdaten werden an den Slaveknoten in dem umgewandelten Kommunikationsmodus übertragen, so dass ein Programm in dem Slaveknoten in die Schreibobjektdaten neu geschrieben wird. Daher kann der Kommunikationsmodus gemäß der vorliegenden Erfindung derart umgewandelt werden, dass der Slaveknoten die Neuschreibdaten sogar dann empfangen kann, wenn sich der Kommunikationsmodus des Slaveknotens ändert bzw. geändert hat. Es ist möglich, ein fehlerhaftes Schreiben der Schreibobjektdaten zu verhindern.
  • Die obigen und weitere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden anhand der folgenden detaillierten Beschreibung mit Bezug auf die zugehörigen Zeichnungen deutlich. Es zeigen:
  • 1 ein Blockdiagramm, das eine Umrisskonfiguration eines fahrzeugeigenen Steuerungssystems, das einen Masterknoten enthält, gemäß einer ersten Ausführungsform darstellt;
  • 2 ein Blockdiagramm, das eine Umrisskonfiguration eines Masterknotens gemäß der ersten Ausführungsform darstellt;
  • 3 ein Flussdiagramm, das einen Teil eines Verarbeitungsbetriebs des Masterknotens gemäß der ersten Ausführungsform darstellt;
  • 4 ein Flussdiagramm, das einen anderen Teil des Verarbeitungsbetriebs des Masterknotens gemäß der ersten Ausführungsform darstellt;
  • 5 ein Sequenzdiagramm, das Verarbeitungsbetriebe des Masterknotens, des Slaveknotens und des Neuschreibwerkzeugs gemäß der ersten Ausführungsform darstellt;
  • 6 ein Flussdiagramm, das einen Teil eines Verarbeitungsbetriebs des Masterknotens gemäß einer zweiten Ausführungsform darstellt;
  • 7 ein Flussdiagramm, das einen anderen Teil des Verarbeitungsbetriebs des Masterknotens gemäß der zweiten Ausführungsform darstellt;
  • 8 ein Blockdiagramm, das eine Umrisskonfiguration eines fahrzeugeigenen Steuerungssystems, das einen Masterknoten enthält, gemäß einer dritten Ausführungsform darstellt;
  • 9 ein Flussdiagramm, das einen Teil eines Verarbeitungsbetriebs des Masterknotens gemäß der dritten Ausführungsform darstellt; und
  • 10 ein Flussdiagramm, das einen anderen Teil des Verarbeitungsbetriebs des Masterknotens gemäß der dritten Ausführungsform darstellt.
  • Im Folgenden werden Ausführungsformen der vorliegenden Erfindung mit Bezug auf die Zeichnungen beschrieben. In jeder Ausführungsform können Teile, die Teilen entsprechen, die in einer vorhergehenden Ausführungsform erläutert wurden, mit denselben Bezugszeichen bezeichnet werden, und deren Erläuterung wird nicht wiederholt. In jeder Ausführungsform kann, wenn eine Konfiguration nur teilweise erläutert wird, die Erläuterung in Bezug auf einen anderen Teil der Konfiguration durch Bezugnahme auf die Erläuterung einer vorhergehenden Ausführungsform erfolgen.
  • (Erste Ausführungsform)
  • Im Folgenden wird eine erste Ausführungsform mit Bezug auf die 1 bis 5 erläutert. In der vorliegenden Ausführungsform entspricht ein Masterknoten 10 einer fahrzeugeigenen Steuerungsvorrichtung.
  • Mit Bezug auf die 1 und 2 werden eine Konfiguration des Masterknotens 10, eine Konfiguration eines fahrzeugeigenen Steuerungssystems, das den Masterknoten 19 enthält, und eine Konfiguration eines Neuschreibsystems beschrieben. Das fahrzeugeigene Steuerungssystem ist an einem Fahrzeug montierbar. Die fahrzeugeigene Steuerungsvorrichtung 100 kann als ein Teil eines fahrzeugeigenen Netzwerkes angeordnet sein, das in einem Fahrzeug vorhanden ist.
  • Das fahrzeugeigene Steuerungssystem enthält einen Masterknoten 10 und einen Slaveknoten 20, wie es beispielsweise in 1 dargestellt ist. Das heißt, in der vorliegenden Ausführungsform entspricht ein Masterknoten 10, der einer von mehreren Knoten 10, 20 ist, die in dem fahrzeugeigenen Steuerungssystem enthalten sind, der fahrzeugeigenen Steuerungsvorrichtung 100. Jeder der Knoten 10, 20 weist einen Steuerungsmodus und einen Neuprogrammierungsmodus als einen Ausführungsmodus auf. In dem Steuerungsmodus wird ein Steuerungsprogramm ausgeführt, um eine Steuerung durchzuführen. In dem Neuprogrammierungsmodus wird ein Neuprogrammierungsprogramm durchgeführt, und ein Steuerungsprogramm wird neu geschrieben, ohne die Steuerung auf der Grundlage des Steuerungsprogramms durchzuführen. Das Steuerungsprogramm entspricht einem Programm gemäß der vorliegenden Erfindung.
  • Im Folgenden kann ein Neuschreiben des Steuerungsprogramms aus Vereinfachungsgründen auch als Neuschreiben bezeichnet werden. Wenn der Ausführungsmodus des Masterknotens 10 und der Ausführungsmodus des Slaveknotens 20 voneinander unterschieden werden, wird der Ausführungsmodus des Masterknotens 10 auch als Masterausführungsmodus bezeichnet. Auf ähnliche Weise wird das Steuerungsprogramm des Masterknotens 10 auch als Masterprogramm bezeichnet. Auf ähnliche Weise wird das Neuprogrammierungsprogramm des Masterknotens 10 auch als Masterneuprogrammierungsprogramm bezeichnet.
  • In dem fahrzeugeigenen Steuerungssystem kann der Masterknoten 10 mit einem Neuschreibwerkzeug 200, das außerhalb eines Fahrzeugs angeordnet ist, über einen ersten Kommunikationsbus 31 kommunizieren. In dem fahrzeugeigenen Steuerungssystem können der Masterknoten 10 und der Slaveknoten 20 über einen zweiten Kommunikationsbus 32 miteinander kommunizieren. Das heißt, das Neuschreibsystem enthält zusätzlich zu dem fahrzeugeigenen Steuerungssystem das Neuschreibwerkzeug 200, das einer externen Vorrichtung entspricht.
  • Wie es oben beschrieben wurde, sind der Masterknoten 10 und der Slaveknoten 20 in dem fahrzeugeigenen Steuerungssystem in Serie geschaltet. Das heißt, der Slaveknoten 20 kann nicht direkt mit dem Neuschreibwerkzeug 200 kommunizieren. Außerdem kommuniziert der Slaveknoten 20 mit dem Neuschreibwerkzeug 200 über den Masterknoten 10. Es wird beispielsweise ein Kommunikationsrahmen, der einen jeweiligen Aufforderungsbefehl, Schreibobjektdaten, ein Vermittlungsprogramm und ein ACK (positive Rückmeldung) enthält, zwischen dem Masterknoten 10 und dem Neuschreibwerkzeug 200 sowie zwischen dem Masterknoten 10 und dem Slaveknoten 20 ausgetauscht (übertragen und empfangen).
  • In dem fahrzeugeigenen Steuerungssystem weist eine Kommunikation, die über den ersten Kommunikationsbus 31 durchgeführt wird, einen anderen Kommunikationsmodus als eine Kommunikation auf, die über den zweiten Kommunikationsbus 32 durchgeführt wird. Der Kommunikationsmodus zwischen dem Masterknoten 10 und dem Neuschreibwerkzeug 200 unterscheidet sich von dem Kommunikationsmodus zwischen dem Masterknoten 10 und dem Slaveknoten 20. Während des Neuprogrammierungsmodus unterscheidet sich ein Kommunikationsformat eines Kommunikationsrahmens, den der Slaveknoten 20 empfängt, von einem Kommunikationsformat eines Kommunikationsrahmens, den der Masterknoten 10 beispielsweise von dem Neuschreibwerkzeug 200 empfängt. Ein Kommunikationsrahmen, der von dem Slaveknoten 20 zu dem Zeitpunkt des Neuprogrammierungsmodus übertragen wird, entspricht nicht einem Kommunikationsformat, das das Neuschreibwerkzeug 200 empfängt. In der vorliegenden Erfindung wird gemäß einem Beispiel angenommen, dass ein Kommunikationsprotokoll einer Kommunikation, die über den ersten Kommunikationsbus 31 durchgeführt wird, sich von einem Kommunikationsprotokoll einer Kommunikation unterscheidet, die über den zweiten Kommunikationsbus 32 durchgeführt wird.
  • Außerdem unterscheiden sich in dem fahrzeugeigenen Steuerungssystem eine Version eines Neuprogrammierungsprogramms und eine Neuschreibspezifikation eines Programms zwischen dem Masterknoten 10 und dem Slaveknoten 20. In einem Fall, in dem sich der Masterknoten 10 und der Slaveknoten 20 beide in dem Neuprogrammierungsmodus befinden, unterscheiden sich eine Prozedur und ein Prozess, die zwischen dem Masterknoten 10 und dem Neuschreibwerkzeug 200 durchgeführt werden, von einer Prozedur und einem Prozess, die zwischen dem Masterknoten 10 und dem Slaveknoten 20 durchgeführt werden. Aufgrund des Unterschiedes in der Prozedur und dem Prozess unterscheidet sich die Datenmenge, die zwischen dem Masterknoten 10 und dem Neuschreibwerkzeug 200 während des Neuschreibens ausgetauscht wird, von der Datenmenge, die zwischen dem Masterknoten 10 und dem Slaveknoten 20 ausgetauscht wird. In dem fahrzeugeigenen Steuerungssystem unterscheiden sich eine Prozedur, ein Prozess und die Datenmenge zwischen der Kommunikation, die über den ersten Kommunikationsbus 31 durchgeführt wird, und der Kommunikation, die über den zweiten Kommunikationsbus 32 durchgeführt wird. Der Kommunikationsmodus enthält eine Prozedur, einen Prozess und die Datenmenge.
  • Jeder der Knoten 10, 20 kommuniziert mit dem Neuschreibwerkzeug 200, wenn dieser Knoten ein Neuschreiben durchführt. In diesem Fall empfangen die jeweiligen Knoten 10, 20 mehrere Kommunikationsrahmen, die separat mehrere Aufforderungsbefehle und Schreibobjektdaten enthalten, die von dem Neuschreibwerkzeug 200 übertragen werden. Außerdem führen die jeweiligen Knoten 10, 20 verschiedene Verarbeitungen wie beispielsweise ein Löschen eines Steuerungsprogramms, ein Schreiben der Schreibobjektdaten durch Ausführen eines jeweiligen Aufforderungsbefehls und Antworten auf das Neuschreibwerkzeug 200 durch Antworten mit Kommunikationsrahmen, die ein ACK enthalten, mehrere Male durch.
  • Der Slaveknoten 20 kommuniziert jedoch nicht direkt mit dem Neuschreibwerkzeug 200, wie es oben beschrieben wurde. Der Slaveknoten 20 empfängt einen Kommunikationsrahmen, der von dem Neuschreibwerkzeug 200 übertragen wird, über den Masterknoten 10 und überträgt außerdem einen Kommunikationsrahmen für das Neuschreibwerkzeug 200 über den Masterknoten 10 in einem Fall des Neuschreibens des Slaveknotens 20. Der Masterknoten 10 vermittelt einen Kommunikationsrahmen zwischen dem Neuschreibwerkzeug 200 und dem Slaveknoten 20.
  • Das Kommunikationsprotokoll zwischen dem Masterknoten 10 und dem Neuschreibwerkzeug 200 unterscheidet sich von dem Kommunikationsprotokoll zwischen dem Masterknoten 10 und dem Slaveknoten 20. Der Masterknoten 10 benötigt eine Umwandlung des Kommunikationsprotokolls, wenn er einen Kommunikationsrahmen vermittelt. Das heißt, damit der Slaveknoten 20 einen Kommunikationsrahmen empfangen kann, überträgt der Masterknoten 10 ein umgewandeltes Kommunikationsprotokoll nach dessen Umwandlung an den Slaveknoten 20. Damit das Neuschreibwerkzeug 200 einen Kommunikationsrahmen empfangen kann, überträgt der Masterknoten 10 ein umgewandeltes Kommunikationsprotokoll nach der Umwandlung des Kommunikationsprotokolls an das Neuschreibwerkzeug 200. Der Masterknoten 10 wandelt ein Kommunikationsprotokoll um, und dadurch wandelt der Masterknoten 10 ein Kommunikationsformat eines Kommunikationsrahmens um, so dass der Slaveknoten 20 und das Neuschreibwerkzeug 200 einen entsprechenden Kommunikationsrahmen empfangen können.
  • Das Neuschreibwerkzeug 200 kann beispielsweise von einem Arbeiter in einem Geschäft oder einem Fahrzeughändler bedient werden. Das Neuschreibwerkzeug 200 führt beispielsweise ein Neuschreiben entsprechend einer Bedienung durch den Arbeiter durch. Das Neuschreibwerkzeug 200 überträgt einen jeweiligen Aufforderungsbefehl und Schreibobjektdaten an den Masterknoten 10. Ein Ziel eines jeweiligen Aufforderungsbefehls und der Schreibobjektdaten ist der Masterknoten 10 oder der Slaveknoten 20. Mit anderen Worten, es gibt einen jeweiligen Aufforderungsbefehl und die Schreibobjektdaten für den Masterknoten 10, und es gibt einen jeweiligen Aufforderungsbefehl und die Schreibobjektdaten für den Slaveknoten 20.
  • Das Neuschreibwerkzeug 200 überträgt ID-Informationen (Identifizierungsinformationen) unabhängig entsprechend jeweils dem Masterknoten 10 und dem Slaveknoten 20 zusätzlich zu einem jeweiligen Aufforderungsbefehl und den Schreibobjektdaten. Dementsprechend können jeweils der Masterknoten 10 und der Slaveknoten 20 bestimmen, ob ein jeweiliger Aufforderungsbefehl und die Schreibobjektdaten für diesen selbst vorgesehen sind. Der Arbeiter erkennt ein Vermittlungsprogramm, das für den Slaveknoten 20 geeignet ist. Der Arbeiter überträgt das Vermittlungsprogramm, das für den Slaveknoten 20 geeignet ist, an den Masterknoten 10 durch Bedienen des Neuschreibwerkzeugs 200. Ein System kann als ein Neuschreibsystem bezeichnet werden, wobei das System das Neuschreibwerkzeug 200 und das fahrzeugeigene Steuerungssystem enthält und den Slaveknoten 20 mit dem Neuschreibwerkzeug 200 neu schreibt.
  • Das Neuschreibwerkzeug 200 überträgt ein Vermittlungsprogramm, das verwendet wird, wenn der Masterknoten 10 mit dem Slaveknoten 20 oder dem Neuschreibwerkzeug 200 kommuniziert, zusätzlich zu einem jeweiligen Aufforderungsbefehl und den Schreibobjektdaten jedes Mal beim Neuschreiben. Das Vermittlungsprogramm wandelt das Kommunikationsprotokoll um. Außerdem enthält das Vermittlungsprogramm eine Funktion als Kommunikationstreiber, mittels dem der Kommunikationsknoten 10 mit dem Slaveknoten 20 und dem Neuschreibwerkzeug 200 kommuniziert.
  • Genauer gesagt wandelt das Vermittlungsprogramm das Kommunikationsprotokoll beim Übertragen eines Kommunikationsrahmens von dem Masterknoten 10 an den Slaveknoten 20 jedes Mal bei einem Neuschreiben um. Das Vermittlungsprogramm wandelt das Kommunikationsprotokoll zur Kommunikation mit dem Slaveknoten 20 um, so dass der Slaveknoten 20 während des Neuschreibens einen jeweiligen Aufforderungsbefehl und die Schreibobjektdaten empfängt bzw. empfangen kann.
  • Das Vermittlungsprogramm entspricht einem Programm, das das Kommunikationsprotokoll beim Übertragen eines Kommunikationsrahmens von dem Masterknoten 10 an das Neuschreibwerkzeug 200 jedes Mal bei dem Neuschreiben umwandelt. Das Vermittlungsprogramm entspricht einem Programm, das das Kommunikationsprotokoll zur Kommunikation mit dem Neuschreibwerkzeug 200 umwandelt, so dass das Neuschreibwerkzeug 200 ein ACK von dem Slaveknoten 20 während des Neuschreibens empfängt bzw. empfangen kann.
  • Der Masterknoten 10 wandelt das Kommunikationsformat des Kommunikationsrahmens durch Umwandeln des Kommunikationsprotokolls durch Ausführen des Vermittlungsprogramms um. Das Vermittlungsprogramm kann auch als Umwandlungsprogramm bezeichnet werden.
  • Wenn es nur einen Slaveknoten 20 gibt, das heißt, wenn die Anzahl der Slaveknoten 20 gleich eins ist, kann der Masterknoten 10 durch Empfangen des Vermittlungsprogramms bestimmen, dass ein jeweiliger Aufforderungsbefehl und die Schreibobjektdaten für den Slaveknoten 20 übertragen werden. Mit anderen Worten, der Masterknoten 10 bestimmt, dass ein jeweiliger Aufforderungsbefehl und die Schreibobjektdaten, die unmittelbar nach dem Empfangen des Vermittlungsprogramms empfangen werden, für den Slaveknoten 20 übertragen werden. Mit anderen Worten, der Masterknoten 10 bestimmt, dass Schreibobjektdaten, die als Erstes nach dem Empfangen des Vermittlungsprogramms empfangen werden, für den Slaveknoten 20 übertragen werden. Außerdem bestimmt der Masterknoten 10, dass ein jeweiliger Aufforderungsbefehl, der empfangen wird, bis Schreibobjektdaten als Erstes nach Empfangen des Vermittlungsprogramms empfangen werden, für den Slaveknoten 20 übertragen wird. Der Masterknoten 10 bestimmt, dass ein jeweiliger Aufforderungsbefehl und Schreibobjektdaten, die nach Empfangen des Vermittlungsprogramms und außerdem nach einem ersten Empfangen der Schreibobjektdaten empfangen werden, für den Masterknoten 10 übertragen werden.
  • Das Neuschreibwerkzeug 200 wird in einem Fall des Neuschreibens beispielsweise mit einem Fahrzeug über ein Kabel und einen Stecker verbunden. Das Neuschreibwerkzeug 200 wird von dem Fahrzeug entfernt, wenn das Neuschreiben nicht durchgeführt wird, beispielsweise in einem Fall, in dem das Neuschreiben beendet ist. Das Neuschreibwerkzeug 200 kann mit dem Masterknoten 10 drahtlos kommunizieren.
  • Der Masterknoten 10 enthält eine CPU 11, einen ROM 12, einen RAM 13, einen ersten Daten-Transceiver 14, einen zweiten Daten-Transceiver 15 und Ähnliches. Der Masterknoten 10 kann auch als ECU (elektronische Steuereinheit) bezeichnet werden.
  • Die CPU 11 führt ein Masterprogramm und ein Masterneuprogrammierungsprogramm aus, die im Voraus in dem ROM 12 gespeichert werden. Der ROM 12 speichert das Masterprogramm, das Masterneuprogrammierungsprogramm und einen Kommunikationstreiber. Der RAM 13 entspricht einem Speicherabschnitt, der ein arithmetisches Rechenergebnis zeitweilig speichert, wenn die CPU 11 eine arithmetische Rechenverarbeitung durchführt. Der RAM 13 entspricht einem flüchtigen Speicher. Der RAM 13 speichert zeitweilig das Vermittlungsprogramm, das von dem Neuschreibwerkzeug 200 empfangen wird.
  • Der erste Daten-Transceiver 14 entspricht einem Kommunikationsabschnitt, der mit dem Neuschreibwerkzeug 200 über den ersten Kommunikationsbus 31 kommuniziert. Der zweite Daten-Transceiver 15 entspricht einem Kommunikationsabschnitt, der mit dem Slaveknoten 20 über den zweiten Kommunikationsbus 32 kommuniziert. Die CPU 11 führt eine Kommunikation über den ersten Daten-Transceiver 14 und den zweiten Daten-Transceiver 15 durch Ausführen des Kommunikationstreibers, der in dem ROM 12 gespeichert ist, während des Steuerungsmodus durch.
  • Die CPU 11 führt eine Kommunikation während des Neuprogrammierungsmodus über den ersten Daten-Transceiver 14 und den zweiten Daten-Transceiver 15 durch Ausführen des Vermittlungsprogramms durch, das zeitweilig in dem RAM 13 gespeichert ist. Die CPU 11 vermittelt zwischen dem Slaveknoten 20 und dem Neuschreibwerkzeug 300 durch Ausführen des Vermittlungsprogramms, das zeitweilig in dem RAM 13 gespeichert ist, während des Neuprogrammierungsmodus.
  • Der Masterknoten 10 enthält einen Programmzähler. Der Programmzähler kann eine Adresse des ROM 12 und eine Adresse des RAM 13 bezeichnen. Der Programmzähler kann eine Lesequelle eines Befehls, der von der CPU 11 ausgeführt wird, von dem ROM 12 in den RAM 13 und von dem RAM 13 in den ROM 12 ändern.
  • Der Slaveknoten 20 weist eine ähnliche Konfiguration wie der Masterknoten 10 auf. Eine Zeichnung und die detaillierte Erläuterung der Konfiguration des Slaveknotens 20 werden daher weggelassen. Es ist ausreichend, dass der Slaveknoten 20 mit dem Masterknoten 10 kommuniziert. Daher unterscheidet sich der Slaveknoten 20 von dem Masterknoten 10, und es ist ausreichend, dass der Slaveknoten 20 nur einen Daten-Transceiver anstelle von zwei Daten-Transceivern enthält. Außerdem unterscheidet sich der Inhalt eines Steuerungsprogramms, das heißt ein Steuerungsinhalt, in dem Slaveknoten 20 von dem demjenigen in dem Masterknoten 10.
  • Im Folgenden wird der Verarbeitungsbetrieb des Masterknotens 10 mit Bezug auf die 3 bis 5 beschrieben. Das Flussdiagramm der 3 und das Flussdiagramm der 4 stellen den Verlauf eines Verarbeitungsbetriebs des Masterknotens 10 dar. Das heißt, wenn die Verarbeitung in S21 der 3 beendet wird, schreitet der Masterknoten zu S22 der 4. Der Masterknoten 10 startet die Verarbeitung, die in dem Flussdiagramm der 3 dargestellt ist, wenn beispielsweise die Energiezufuhr eingeschaltet wird. Zu diesem Zeitpunkt wird bzw. ist der Programmzähler des Masterknotens 10 auf den ROM 12 eingestellt. Der Masterknoten 10 kommuniziert mit dem Slaveknoten 20 und dem Neuschreibwerkzeug 200 durch Ausführen des Kommunikationstreibers, der in dem ROM 12 gespeichert ist.
  • Der Verarbeitungsbetrieb des Masterknotens 10 betrifft den Verarbeitungsbetrieb des Neuschreibwerkzeugs 200 und den Verarbeitungsbetrieb des Slaveknotens 20. Der Verarbeitungsbetrieb des Masterknotens 10 wird zusätzlich zu dem Verarbeitungsbetrieb des Neuschreibwerkzeugs 200 und dem Verarbeitungsbetrieb des Slaveknotens 20 beschrieben. 5 stellt ein Sequenzdiagramm dar, das den Verarbeitungsbetrieb jeweils des Masterknotens 10, des Slaveknotens 20 und des Neuschreibwerkzeugs 200 darstellt. Das Neuschreibwerkzeug 200 überträgt einen Kommunikationsrahmen, der einen Herunterladeaufforderungsbefehl enthält, an den Masterknoten 10, wie es in 5 gezeigt ist. Das Zeichen DL in 5 entspricht einer Abkürzung für den Begriff "Herunterladen (Download)".
  • In S10 wird bestimmt, ob eine Herunterladeaufforderung des Vermittlungsprogramms empfangen wird. Der Masterknoten 10 bestimmt durch Überprüfen eines Kommunikationsrahmens, der von dem Neuschreibwerkzeug 200 empfangen wird, ob die Herunterladeaufforderung empfangen wird. Der Masterknoten 10 nimmt an, dass die Herunterladeaufforderung empfangen wird, wenn der empfangene Kommunikationsrahmen den Herunterladeaufforderungsbefehl enthält, und schreitet dann zu S11. Der Masterknoten 10 wiederholt S10, ohne anzunehmen, dass die Herunterladeaufforderung empfangen wird, wenn der empfangene Kommunikationsrahmen den Herunterladeaufforderungsbefehl nicht enthält.
  • Der Masterknoten 10 kann die Verarbeitung der 3 und der 4 beenden, wenn der Masterknoten 10 den Herunterladeaufforderungsbefehl innerhalb einer vorbestimmten Zeitdauer nicht empfangen hat. Das heißt, der Masterknoten 10 kann eine Auszählverarbeitung durchführen. Der Masterknoten 10 kann die Auszählverarbeitung bei einer unten beschrieben Bestimmung durchführen.
  • Es wird durch Überprüfen des Kommunikationsrahmens auf dieselbe Weise wie in S10 bestimmt, ob ein ACK empfangen wird. Eine wiederholte Beschreibung wird somit weggelassen.
  • In S11 wird ein Antworten mit ACK durchgeführt. Der Masterknoten 10 gibt einen Kommunikationsrahmen, der ein ACK enthält, an das Neuschreibwerkzeug 200 zurück, wenn er den Herunterladeaufforderungsbefehl empfängt bzw. empfangen hat, wie es in 5 dargestellt ist. Das heißt, der Masterknoten 10 gibt ein ACK zurück, um das Neuschreibwerkzeug 200 hinsichtlich des Empfangs des Herunterladeaufforderungsbefehls zu informieren. Das Neuschreibwerkzeug 200 überträgt das Vermittlungsprogramm an den Masterknoten 10, wenn das Neuschreibwerkzeug 200 das ACK als Antwort auf den Herunterladeaufforderungsbefehl empfängt bzw. empfangen hat, wie es in 5 dargestellt ist.
  • In S12 wird bestimmt, ob das Vermittlungsprogramm empfangen wird. Der Masterknoten 10 schreitet zu S13, wenn bestimmt wird, dass das Vermittlungsprogramm von dem Neuschreibwerkzeug 200 empfangen wird. Im Gegensatz dazu wiederholt der Masterknoten 10 S12, wenn der Masterknoten 10 nicht bestimmt, dass das Vermittlungsprogramm empfangen wird. Das heißt, der Masterknoten 10 empfängt das übertragene Vermittlungsprogramm von dem Neuschreibwerkzeug 200, wie es in S121 der 5 dargestellt ist (entspricht einem Empfangsabschnitt). Der Masterknoten 10 führt S13 nach Empfangen des Vermittlungsprogramms aus.
  • Der Masterknoten 10 kann den Masterausführungsmodus als Neuprogrammierungsmodus bestimmen, wenn der Masterknoten 10 S10–S12 in dem Steuerungsmodus ausführt und das Vermittlungsprogramm empfängt. Das heißt, der Masterknoten 10 kann zu dem Zeitpunkt eines Empfangs des Vermittlungsprogramms den Masterausführungsmodus von dem Steuerungsmodus in den Neuprogrammierungsmodus ändern.
  • In S13 speichert der Masterknoten 10 das Vermittlungsprogramm in dem flüchtigen Speicher (entspricht einem Speicherabschnitt). Der Masterknoten 10 speichert das empfangene Vermittlungsprogramm in dem RAM 13, der ein flüchtiger Speicher ist, wie es in 5 dargestellt ist. Der RAM 13 speichert das Vermittlungsprogramm, das heißt, der RAM 13 speichert das Vermittlungsprogramm zeitweilig. Der gespeicherte Inhalt in dem RAM 13 wird gelöscht, wenn die Energiezufuhr zu dem Masterknoten 10 stoppt. Daher wird das Vermittlungsprogramm gelöscht, wenn die Energiezufuhr zu dem Masterknoten 10 stoppt.
  • In S14 wird der Programmzähler in ein Speicherziel des Vermittlungsprogramms geändert. Der Masterknoten 10 ändert den Programmzähler von dem ROM 12 in den RAM 13, der einem Speicherziel des Vermittlungsprogramms entspricht. Diese Änderung wird durchgeführt, so dass der Slaveknoten 20 und das Neuschreibwerkzeug 200 den empfangenen Kommunikationsrahmen empfangen können.
  • Das heißt, der Masterknoten 10 kommuniziert mit dem Neuschreibwerkzeug 200 durch Ausführen des Kommunikationstreibers, wie es mit einer abwechselnd lang und kurz gestrichelten Linie S1 in 2 dargestellt ist, um das Vermittlungsprogramm zu empfangen. Der Masterknoten 10 speichert das empfangene Vermittlungsprogramm in dem RAM 13, wie es durch eine abwechselnd lang und kurz gestrichelte Linie S2 dargestellt ist. Danach ändert der Masterknoten 10 den Programmzähler von dem RAM 12 in den RAM 13.
  • Der Masterknoten 10 führt das Vermittlungsprogramm anstelle des Kommunikationstreibers aus, wie es durch die abwechselnd lang und kurz gestrichelten Linien S3, S4 dargestellt ist, wenn der Programmzähler in den RAM 13 geändert wurde, so dass der Masterknoten 10 mit dem Slaveknoten 20 und dem Neuschreibwerkzeug 200 kommuniziert. In 2 ist eine abwechselnd lang und kurz gestrichelte Linie weggelassen, die einen Zustand zu dem Zeitpunkt einer Kommunikation von dem Slaveknoten 20 mit dem Neuschreibwerkzeug 200 angibt.
  • In S15 wird ein Antworten mit ACK durchgeführt. Der Masterknoten 10 gibt einen Kommunikationsrahmen, der ein ACK enthält, an das Neuschreibwerkzeug 200 zurück, wenn er das Vermittlungsprogramm empfängt bzw. empfangen hat. Das heißt, der Masterknoten 10 gibt ein ACK zurück, um das Neuschreibwerkzeug 200 hinsichtlich des Empfangs des Vermittlungsprogramms zu informieren.
  • In der vorliegenden Ausführungsform gibt der Masterknoten 10 beispielsweise ein ACK nach Speichern des Vermittlungsprogramms in dem RAM 13 zurück, wie es in 5 dargestellt ist. Der Masterknoten 10 gibt ein ACK zurück, um das Neuschreibwerkzeug 200 zu informieren, dass das empfangene Vermittlungsprogramm in dem RAM 13 gespeichert wurde. Das Neuschreibwerkzeug 200 überträgt nach Empfangen des ACK als Antwort auf die Übertragung des Vermittlungsprogramms einen Kommunikationsrahmen, der ID-Informationen des Slaveknotens 20 und den Löschaufforderungsbefehl enthält.
  • Der Löschaufforderungsbefehl entspricht einem Befehl, der ein Löschen des Steuerungsprogramms, das in dem ROM gespeichert ist, fordert. Der Löschaufforderungsbefehl entspricht Neuschreibdaten zum Neuschreiben des Steuerungsprogramms. Das heißt, der Löschaufforderungsbefehl entspricht einem Neuschreibdatenteil.
  • In S16 wird bestimmt, ob der Löschaufforderungsbefehl empfangen wird. Der Masterknoten 10 bestimmt, ob der Löschaufforderungsbefehl für den Slaveknoten 20 empfangen wird. Der Masterknoten 10 bestimmt, ob der Löschaufforderungsbefehl für den Slaveknoten 20 empfangen wird, auf der Grundlage, ob der empfangene Kommunikationsrahmen den Löschaufforderungsbefehl und die ID-Informationen, die den Slaveknoten 20 angeben, enthält.
  • Der Masterknoten 10 bestimmt, dass der Löschaufforderungsbefehl für den Slaveknoten 20 empfangen wird, wenn der empfangene Kommunikationsrahmen den Löschaufforderungsbefehl und die ID-Informationen, die den Slaveknoten 20 angeben, enthält, und schreitet dann zu S17. Der Masterknoten 10 bestimmt nicht, dass der Löschaufforderungsbefehl für den Slaveknoten 20 empfangen wird, wenn der empfangene Kommunikationsrahmen weder den Löschaufforderungsbefehl noch die ID-Informationen, die den Slaveknoten 20 angeben, enthält. In diesem Fall wiederholt der Masterknoten 10 S16. Das heißt, der Masterknoten 10 empfängt den Löschaufforderungsbefehl, der von dem Neuschreibwerkzeug 200 übertragen wird, wie es in S161 der 5 dargestellt ist (entspricht einem Empfangsabschnitt). Der Masterknoten 10 führt S17 nach Empfangen des Löschaufforderungsbefehls aus.
  • In S17 wandelt der Masterknoten 10 ein Kommunikationsformat entsprechend dem Slaveknoten 20 um (entspricht einem Umwandlungsabschnitt). Der Masterknoten 10 wandelt durch Ausführen des Vermittlungsprogramms ein Kommunikationsformat eines Kommunikationsrahmens, der den Löschaufforderungsbefehl für den Slaveknoten 20 enthält, in ein Kommunikationsformat um, das von dem Slaveknoten 20 empfangen werden kann, wie es in 5 dargestellt ist. Daher empfängt der Masterknoten 10 das Kommunikationsformat von dem Neuschreibwerkzeug 200 und wandelt das Kommunikationsformat unter Verwendung des Vermittlungsprogramms, das zeitweilig in dem RAM 13 gespeichert ist, um.
  • In S18 vermittelt der Masterknoten 10 den Löschaufforderungsbefehl an den Slaveknoten 20 (entspricht einem Übertragungsabschnitt). Der Masterknoten 10 überträgt den Kommunikationsrahmen, der in S17 umgewandelt wurde, an den Slaveknoten 20 durch Ausführen des Vermittlungsprogramms, wie es in 5 dargestellt ist. Der Kommunikationsrahmen, der an den Slaveknoten 20 übertragen wird, enthält den Löschaufforderungsbefehl, der von dem Neuschreibwerkzeug 200 für den Slaveknoten 20 übertragen wurde.
  • Der Kommunikationsrahmen, der den Löschaufforderungsbefehl enthält, wurde in ein Kommunikationsformat umgewandelt, das von dem Slaveknoten 20 empfangen werden kann. Es ist daher möglich, dass der Slaveknoten 20 den Kommunikationsrahmen empfangen kann. Daher ist es möglich, dass der Slaveknoten 20 den Löschaufforderungsbefehl, der von dem Neuschreibwerkzeug 200 übertragen wird, empfangen kann. Der Slaveknoten 20 kann einen anderen Aufforderungsbefehl (einen unterschiedlichen Aufforderungsbefehl) und andere Schreibobjektdaten (unterschiedliche Schreibobjektdaten) empfangen, da der Masterknoten 10 das Kommunikationsformat des Kommunikationsrahmens entsprechend umwandelt.
  • Wie es in 5 dargestellt ist, führt der Slaveknoten 20 einen Löschaufforderungsbefehl aus, wenn er den Löschaufforderungsbefehl empfängt, und löscht ein Steuerungsprogramm eines Subjektknotens (in diesem Fall des Slaveknotens 20). Das Löschen des Steuerungsprogramms entspricht einer Löschverarbeitung. Der Slaveknoten 20 gibt ein ACK zurück, um das Neuschreibwerkzeug 200 hinsichtlich des Löschens des Steuerungsprogramms zu informieren. Das ACK, das von dem Slaveknoten 20 zurückgegeben wird, entspricht Antwortdaten.
  • In S19 wird bestimmt, ob der ACK von dem Slaveknoten 20 empfangen wird. Der Masterknoten 10 schreitet zu S20, wenn bestimmt wird, dass der ACK von dem Slaveknoten 20 empfangen wird. Im Gegensatz dazu wiederholt der Masterknoten 10 S19, wenn der Masterknoten 10 nicht bestimmt, dass der ACK von dem Slaveknoten 20 empfangen wird.
  • In S20 wandelt der Masterknoten 10 ein Kommunikationsformat entsprechend dem Neuschreibwerkzeug 200 um (entspricht einem Antwortumwandlungsabschnitt). Der Masterknoten 10 wandelt durch Ausführen des Vermittlungsprogramms ein Kommunikationsformat eines Kommunikationsrahmens, der ein ACK für das Neuschreibwerkzeug 200 enthält, in ein Kommunikationsformat um, das von dem Neuschreibwerkzeug 200 empfangen werden kann, wie es in 5 dargestellt ist.
  • In S21 vermittelt der Masterknoten 10 das ACK an das Neuschreibwerkzeug 200. Der Masterknoten 10 überträgt an das Neuschreibwerkzeug 200 einen Kommunikationsrahmen, der in S20 umgewandelt wurde, wie es in 5 dargestellt ist. Der Kommunikationsrahmen enthält das ACK für das Neuschreibwerkzeug 200.
  • Der Kommunikationsrahmen, der dieses ACK enthält, wurde in ein Kommunikationsformat umgewandelt, das von dem Neuschreibwerkzeug 200 empfangen werden kann. Daher kann das Neuschreibwerkzeug 200 den Kommunikationsrahmen empfangen. Das Neuschreibwerkzeug 200 kann das ACK, das von dem Slaveknoten 20 übertragen wird, empfangen. Das Neuschreibwerkzeug 200 kann ein anderes ACK (unterschiedliches ACK) empfangen, da der Masterknoten 10 das Kommunikationsformat des entsprechenden Kommunikationsrahmens umwandelt.
  • Das Neuschreibwerkzeug 200 überträgt den Schreibaufforderungsbefehl an den Masterknoten 10, wenn es ein ACK als Antwort auf den Löschaufforderungsbefehl empfängt, wie es in 5 dargestellt ist. Der Schreibaufforderungsbefehl entspricht einem Befehl, der ein Schreiben eines neuen Steuerungsprogramms in den ROM, in dem das Steuerungsprogramm gelöscht wurde, fordert. Das neue Steuerungsprogramm kann als Schreibdaten bezeichnet werden. Der Schreibaufforderungsbefehl entspricht Neuschreibdaten zum Neuschreiben des Steuerungsprogramms. Das heißt, der Schreibaufforderungsbefehl entspricht einem Neuschreibdatenteil.
  • In S22 wird bestimmt, ob der Schreibaufforderungsbefehl empfangen wird. Der Masterknoten 10 bestimmt, ob der Schreibaufforderungsbefehl für den Slaveknoten 20 empfangen wird. Der Masterknoten 10 bestimmt, ob der Masterknoten 10 den Schreibaufforderungsbefehl für den Slaveknoten 20 empfängt, auf der Grundlage dessen, ob der empfangene Kommunikationsrahmen den Schreibaufforderungsbefehl und die ID-Informationen, die den Slaveknoten 20 angeben, enthält.
  • Der Masterknoten 10 bestimmt, dass der Schreibaufforderungsbefehl für den Slaveknoten 20 empfangen wird, wenn der empfangene Kommunikationsrahmen den Schreibaufforderungsbefehl und die ID-Informationen, die den Slaveknoten 20 angeben enthält, und schreitet dann zu S23. Im Gegensatz dazu bestimmt der Masterknoten 10 nicht, dass der Schreibaufforderungsbefehl für den Slaveknoten 20 empfangen wird, wenn der empfangene Kommunikationsrahmen weder den Schreibaufforderungsbefehl noch die ID-Informationen, die den Slaveknoten 20 angeben, enthält. In diesem Fall wiederholt der Masterknoten 10 S22.
  • Das Neuschreibwerkzeug 200 überträgt einen Kommunikationsrahmen, der Schreibobjektdaten für den Slaveknoten 20 und die ID-Informationen enthält, die den Slaveknoten 20 angeben, auf den Schreibaufforderungsbefehl folgend. Das Neuschreibwerkzeug 200 überträgt den Schreibaufforderungsbefehl für den Slaveknoten 20. Das Neuschreibwerkzeug 200 überträgt den Kommunikationsrahmen, der die Schreibobjektdaten für den Slaveknoten 20 enthält, wenn es den Kommunikationsrahmen, der das ACK enthält und von dem Slaveknoten 20 übertragen wird, empfängt bzw. empfangen hat.
  • Der Masterknoten 10 empfängt den Schreibaufforderungsbefehl und die Schreibobjektdaten, die von dem Neuschreibwerkzeug 200 übertragen werden, wie es in S221 der 5 gezeigt ist (entspricht einem Empfangsabschnitt). Der Masterknoten 10 führt S23 nach Empfangen des Schreibaufforderungsbefehls und der Schreibobjektdaten aus. Die Schreibobjektdaten entsprechen Daten, die in den ROM geschrieben werden, nachdem dieser der Löschverarbeitung unterzogen wurde. Die Schreibobjektdaten entsprechen einem neuen Steuerungsprogramm. Die Schreibobjektdaten entsprechen Neuschreibdaten zum Neuschreiben des Steuerungsprogramms. Das heißt, die Schreibobjektdaten entsprechen einem Neuschreibdatenteil.
  • In S23 wandelt der Masterknoten 10 ein Kommunikationsformat entsprechend dem Slaveknoten 20 ähnlich wie in S17 um (entspricht einem Umwandlungsabschnitt). In S23 wandelt der Masterknoten 10 einen Kommunikationsrahmen, der den Schreibaufforderungsbefehl enthält, und einen Kommunikationsrahmen, der die Schreibobjektdaten enthält, um.
  • In S24 vermittelt der Masterknoten 10 den Schreibaufforderungsbefehl an den Slaveknoten 20 (entspricht einem Übertragungsabschnitt). Der Masterknoten 10 überträgt den Kommunikationsrahmen, der in S23 umgewandelt wurde, an den Slaveknoten 20 durch Ausführen des Vermittlungsprogramms, wie es in 5 dargestellt ist. Der Masterknoten 10 überträgt den Kommunikationsrahmen, der den Schreibaufforderungsbefehl enthält, der von dem Neuschreibwerkzeug 200 für den Slaveknoten 20 übertragen wurde, und einen Kommunikationsrahmen, der die Schreibobjektdaten enthält, die von dem Neuschreibwerkzeug 200 für den Slaveknoten 20 übertragen wurden. In S24 der 5 ist die Darstellung der Schreibobjektdaten aus Vereinfachungsgründen weggelassen.
  • Der Masterknoten 10 überträgt die Schreibobjektdaten an den Slaveknoten 20 und schreibt ein Steuerungsprogramm des Slaveknotens 20 in ein neues Steuerungsprogramm neu bzw. um. Mit anderen Worten, der Slaveknoten 20 schreibt die Schreibobjektdaten in den ROM (entspricht einer Schreibverarbeitung), wenn er den Kommunikationsrahmen empfängt, der die Schreibobjektdaten enthält. Gemäß dieser Konfiguration schreibt der Slaveknoten 20 ein Steuerungsprogramm in das neue Steuerungsprogramm neu bzw. um. Der Slaveknoten 20 gibt ein ACK zurück, um das Neuschreibwerkzeug 200 hinsichtlich des Schreibens der Schreibobjektdaten in den ROM zu informieren.
  • In S25 wird bestimmt, ob das ACK von dem Slaveknoten 20 empfangen wird. Der Masterknoten 10 schreitet zu S26, wenn er bestimmt, dass der ACK von dem Slaveknoten 20 empfangen wird. Im Gegensatz dazu wiederholt der Masterknoten 10 S25, wenn der Masterknoten 10 nicht bestimmt, dass der ACK von dem Slaveknoten 20 empfangen wird.
  • In S26 wandelt der Masterknoten 10 ein Kommunikationsformat entsprechend dem Neuschreibwerkzeug 200 ähnlich wie in S20 um (entspricht einem Antwortumwandlungsabschnitt). In S27 vermittelt der Masterknoten 10 das ACK an das Neuschreibwerkzeug 200 ähnlich wie in S21.
  • Das Neuschreibwerkzeug 200 überträgt einen Verifizierungsaufforderungsbefehl an den Masterknoten 10, wenn es das ACK als Antwort auf den Schreibaufforderungsbefehl oder die Schreibobjektdaten empfängt, wie es in 5 dargestellt ist. Der Verifizierungsaufforderungsbefehl entspricht einem Befehl, der zu einem Validieren auffordert, ob das neue Steuerungsprogramm normal geschrieben wurde. Der Verifizierungsaufforderungsbefehl entspricht Neuschreibdaten, da der Verifizierungsaufforderungsbefehl zum Neuschreiben des Steuerungsprogramms verwendet wird. Das heißt, es kann angenommen werden, dass der Verifizierungsaufforderungsbefehl ein Neuschreibdatenteil ist.
  • In S28 wird bestimmt, ob der Masterknoten 10 den Verifizierungsaufforderungsbefehl empfängt. Der Masterknoten 10 bestimmt, ob der Verifizierungsaufforderungsbefehl für den Slaveknoten 20 empfangen wird. Der Masterknoten 10 bestimmt, ob der Verifizierungsaufforderungsbefehl für den Slaveknoten 20 empfangen wird, auf der Grundlage dessen, ob der empfangene Kommunikationsrahmen den Verifizierungsaufforderungsbefehl und die ID-Informationen, die den Slaveknoten 20 angeben, enthält.
  • Der Masterknoten 10 bestimmt, dass der Verifizierungsaufforderungsbefehl für den Slaveknoten 20 empfangen wird, wenn der empfangene Kommunikationsrahmen den Verifizierungsaufforderungsbefehl und die ID-Informationen, die den Slaveknoten 20 angeben, enthält, und schreitet dann zu S29. Im Gegensatz dazu bestimmt der Masterknoten 10 nicht, dass der Verifizierungsaufforderungsbefehl für den Slaveknoten 20 empfangen wird, wenn der empfangene Kommunikationsrahmen weder den Verifizierungsaufforderungsbefehl noch die ID-Informationen, die den Slaveknoten 20 angeben, enthält. In diesem Fall wiederholt der Masterknoten 10 S28. Das heißt, der Masterknoten 10 führt S29 nach Empfangen des Verifizierungsaufforderungsbefehls, der von dem Neuschreibwerkzeug 200 übertragen wurde, wie es in S281 der 5 dargestellt ist, aus.
  • In S29 wandelt der Masterknoten 10 ein Kommunikationsformat entsprechend dem Slaveknoten 20 ähnlich wie in S17 um. In S29 wandelt der Masterknoten 10 ein Kommunikationsformat des Kommunikationsrahmens, der den Verifizierungsaufforderungsbefehl enthält, um. S29 kann einem Umwandlungsabschnitt entsprechen.
  • In S30 vermittelt der Masterknoten 10 den Verifizierungsaufforderungsbefehl an den Slaveknoten 20. Der Masterknoten 10 überträgt den Kommunikationsrahmen, der in S29 umgewandelt wurde, an den Slaveknoten 20 durch Ausführen des Vermittlungsprogramms, wie es in 5 dargestellt ist. Der Kommunikationsrahmen enthält den Verifizierungsaufforderungsbefehl, der von dem Neuschreibwerkzeug 200 für den Slaveknoten 20 übertragen wurde. S30 kann einem Übertragungsabschnitt entsprechen.
  • Wie es in 5 dargestellt ist, validiert der Slaveknoten 20, ob das Neuschreiben des Subjektknotens (in diesem Fall des Slaveknotens 20) normal beendet wurde, durch Ausführen des Verifizierungsaufforderungsbefehls, wenn er den Verifizierungsaufforderungsbefehl empfängt (entspricht einer Verifizierungsverarbeitung). Der Slaveknoten 20 gibt ein ACK zurück, um das Neuschreibwerkzeug 200 zu informieren, dass das Neuschreiben des Subjektknotens normal beendet wurde.
  • In S31 bestimmt der Masterknoten 10, ob der ACK von dem Slaveknoten 20 empfangen wird. Der Masterknoten 10 schreitet zu S32, wenn er bestimmt, dass der ACK von dem Slaveknoten 20 empfangen wird. Im Gegensatz dazu wiederholt der Masterknoten 10 S31, wenn der Masterknoten 10 nicht bestimmt, dass der ACK von dem Slaveknoten 20 empfangen wird.
  • In S32 wandelt der Masterknoten 10 ein Kommunikationsformat entsprechend dem Neuschreibwerkzeug 200 ähnlich wie in S20 um. In S33 vermittelt der Masterknoten 10 das ACK an das Neuschreibwerkzeug 200 ähnlich wie in S21.
  • Wie es oben beschrieben wurde, empfängt der Masterknoten 10 von dem Neuschreibwerkzeug 200 zusätzlich zu den Neuschreibdaten das Vermittlungsprogramm zum Umwandeln eines Kommunikationsmodus, so dass der Slaveknoten 20 die Neuschreibdaten empfangen kann. Der Masterknoten 10 speichert das empfangene Vermittlungsprogramm zeitweilig in dem RAM 13.
  • Der Masterknoten 10 wandelt einen Kommunikationsmodus unter Verwendung des Vermittlungsprogramms, das in dem RAM 13 gespeichert ist, um und überträgt die Neuschreibdaten an den Slaveknoten 20 in dem umgewandelten Kommunikationsmodus, so dass ein Programm des Slaveknotens 20 in die Schreibobjektdaten neu geschrieben wird. Daher kann gemäß der vorliegenden Erfindung sogar dann, wenn der Kommunikationsmodus des Slaveknotens 20 sich ändert bzw. geändert wurde, der Kommunikationsmodus umgewandelt werden, so dass der Slaveknoten 20 die Neuschreibdaten empfangen kann. Es ist möglich, zu verhindern, dass der Masterknoten 10 ein fehlerhaftes Schreiben der Schreibobjektdaten bewirkt. Es ist möglich, dass der Masterknoten 10 die Entwicklungsmannstunden im Vergleich zu einem Fall verringert, in dem eine Entwurfsänderung des Masterknotens 10 jedes Mal durchgeführt wird, wenn der Kommunikationsmodus des Slaveknotens 20 geändert wird.
  • Außerdem ist es nicht notwendig, einen Entwurf des Masterknotens 20 zu ändern, und zwar sogar dann nicht, wenn der Kommunikationsmodus des Slaveknotens 20 geändert wird. Es ist möglich, eine Erhöhung der Anzahl der Teile des Masterknotens 10 zu verhindern. Es ist möglich, eine Verkomplizierung der Verwaltung zu verhindern.
  • In der vorliegenden Ausführungsform führt der Masterknoten 10 gemäß einem Beispiel das Vermittlungsprogramm aus, um das Kommunikationsprotokoll und das Kommunikationsformat zu ändern. Man beachte, dass die vorliegende Erfindung jedoch nicht auf die vorliegende Ausführungsform beschränkt ist. Eine Version des Neuprogrammierungsprogramms und eine Neuschreibspezifikation eines Programms können zwischen dem Masterknoten 10 und dem Slaveknoten 20 unterschiedlich sein. In diesem Fall kann der Masterknoten 10 ein Vermittlungsprogramm ausführen, um einen Prozess, eine Prozedur und die Datenmenge zu dem Zeitpunkt des Neuschreibens umzuwandeln, so dass der Slaveknoten 20 die Neuschreibdaten, die von dem Neuschreibwerkzeug 200 übertragen werden, empfangen kann. Auf ähnliche Weise kann der Masterknoten 10 ein Vermittlungsprogramm ausführen, um einen Prozess, eine Prozedur und die Datenmenge zu dem Zeitpunkt eines Neuschreibens umzuwandeln, so dass das Neuschreibwerkzeug 200 ein ACK, das von dem Slaveknoten 20 übertragen wird, empfangen kann.
  • Die Kommunikationsgeschwindigkeiten können für den Masterknoten 10 und den Slaveknoten 20 unterschiedlich sein, auch wenn das Kommunikationsprotokoll für den Masterknoten 10 und den Slaveknoten 20 identisch ist. In diesem Fall kann der Masterknoten 10 ein Vermittlungsprogramm ausführen, um das Kommunikationsformat umzuwandeln, ohne das Kommunikationsprotokoll zu ändern, so dass der Slaveknoten 20 die Neuschreibdaten, die von dem Neuschreibwerkzeug 200 übertragen werden, empfangen kann. Auf ähnliche Weise kann der Masterknoten 10 ein Vermittlungsprogramm ausführen, um das Kommunikationsformat umzuwandeln, ohne das Kommunikationsprotokoll zu ändern, so dass das Neuschreibwerkzeug 200 ein ACK, das von dem Slaveknoten 20 übertragen wird, empfangen kann.
  • Das heißt, es kann ein beliebiges Vermittlungsprogramm bei der Umwandlung des Kommunikationsmodus für den Slaveknoten verwendet werden, so dass der Slaveknoten 20 die Neuschreibdaten in einem Fall des Neuschreibens eines Programms des Slaveknotens 20 empfangen kann. Mit anderen Worten, es kann ein beliebiges Vermittlungsprogramm verwendet werden, solange wie das Vermittlungsprogramm die Neuschreibdaten zu dem Zeitpunkt des Neuschreibens des Programms des Slaveknotens 20 umwandelt, so dass der Slaveknoten 20 die Neuschreibdaten empfangen kann.
  • In der vorliegenden Ausführungsform werden gemäß einem Beispiel ein jeweiliger Aufforderungsbefehl und die Schreibobjektdaten an den Slaveknoten 20 übertragen, und der Slaveknoten 20 gibt in einem Fall des Neuschreibens in dem Slaveknoten 20 ein ACK als Antwort darauf zurück. Man beachte, dass die vorliegende Erfindung jedoch nicht auf diese Beispiele beschränkt ist. Bei dem Neuschreiben in dem Slaveknoten 20 kann beispielsweise das Neuschreibwerkzeug 200 einen Authentifizierungsaufforderungsbefehl oder Ähnliches übertragen. In diesem Fall gibt der Slaveknoten 20 Authentifizierungsdaten an das Neuschreibwerkzeug 200 zurück, wenn er den Authentifizierungsaufforderungsbefehl empfängt bzw. empfangen hat. Der Authentifizierungsaufforderungsbefehl und die Authentifizierungsdaten werden über den Masterknoten 10 an das Neuschreibwerkzeug 200 und den Slaveknoten 20 vermittelt.
  • Oben wurde eine Ausführungsform der vorliegenden Erfindung erläutert. Man beachte, dass die vorliegende Erfindung jedoch nicht auf die vorliegende Ausführungsform beschränkt ist. Die vorliegende Erfindung kann auf verschiedene Weise modifiziert werden, ohne von dem Bereich der vorliegenden Erfindung abzuweichen. Im Folgenden werden als Beispiele für modifizierte Ausführungsformen eine zweite Ausführungsform und eine dritte Ausführungsform erläutert. Man beachte, dass diese Ausführungsformen unabhängig verwendet werden, aber auch geeignet kombiniert verwendet werden können. Die vorliegende Erfindung ist nicht auf eine Kombination beschränkt, die in den Ausführungsformen beschrieben ist. Die vorliegende Erfindung kann anhand verschiedener Kombinationen verwendet werden.
  • (Zweite Ausführungsform)
  • Im Folgenden wird eine zweite Ausführungsform mit Bezug auf die 6 und 7 beschrieben. In der vorliegenden Ausführungsform wird ein Masterknoten 10a als fahrzeugeigene Steuerungsvorrichtung verwendet. Das fahrzeugeigene Steuerungssystem gemäß der vorliegenden Ausführungsform enthält den Masterknoten 10a und den Slaveknoten 20.
  • Hier wird hauptsächlich der Teil in dem Masterknoten 10a erläutert, der sich von dem Masterknoten 10 unterscheidet. Der Masterknoten 10 führt das Vermittlungsprogramm aus, wenn der Masterknoten 10 mit dem Slaveknoten 20 und dem Neuschreibwerkzeug 200 zu dem Zeitpunkt eines Neuschreibens kommuniziert. Der Masterknoten 10a führt einen Kommunikationstreiber anstelle des Vermittlungsprogramms aus, wenn der Masterknoten 10a mit dem Slaveknoten und dem Neuschreibwerkzeug 200 zu dem Zeitpunkt eines Neuschreibens kommuniziert. Das heißt, das Vermittlungsprogramm gemäß der vorliegenden Ausführungsform enthält im Unterschied zu dem Vermittlungsprogramm gemäß der obigen Ausführungsform keine Funktion zum Durchführen einer Kommunikation.
  • In dem fahrzeugeigenen Steuerungssystem unterscheidet sich ein Kommunikationsmodus einer Kommunikation, die über den ersten Kommunikationsbus 31 durchgeführt wird, von einem Kommunikationsmodus einer Kommunikation, die über den zweiten Kommunikationsbus 32 durchgeführt wird. Genauer gesagt ist ein Kommunikationsprotokoll zwischen dem Masterknoten 10a und dem Neuschreibwerkzeug 200 dasselbe wie ein Kommunikationsprotokoll zwischen dem Masterknoten 10a und dem Slaveknoten 20. Eine Kommunikationsgeschwindigkeit zwischen dem Masterknoten 10a und dem Neuschreibwerkzeug 200 unterscheidet sich jedoch von einer Kommunikationsgeschwindigkeit zwischen dem Masterknoten 10a und dem Slaveknoten 20.
  • Es ist notwendig, dass der Masterknoten 10a ein Kommunikationsformat des Kommunikationsrahmens in einem Fall umwandelt, in dem die Neuschreibdaten von dem Neuschreibwerkzeug 200 an den Slaveknoten 20 während des Neuschreibens vermittelt werden, oder in einem Fall, in dem ein ACK von dem Slaveknoten 20 an das Neuschreibwerkzeug 200 vermittelt wird. Mit anderen Worten, es ist nicht notwendig, dass der Masterknoten 10a das Kommunikationsprotokoll umwandelt, aber es ist notwendig, das Kommunikationsformat des Kommunikationsrahmens zu ändern. Der Masterknoten 10a weist eine ähnliche Konfiguration wie der Masterknoten 10 auf. Somit wird die Erläuterung der Konfiguration des Masterknotens 10a weggelassen.
  • Die Flussdiagramme der 6 und 7 entsprechen jeweils den Flussdiagrammen der 3 und 4 und stellen einen Verlauf eines Verarbeitungsbetriebs des Masterknotens 10a dar. Das heißt, der Masterknoten 10a schreitet zu S25a der 7, wenn die Verarbeitung in S24a der 6 beendet ist.
  • In 6 und 7 werden identische Bezugszeichen wie in den 3 und 4 verwendet, und deren detaillierte Erläuterung wird nicht wiederholt.
  • Der Masterknoten 10a startet die Verarbeitung, die in dem Flussdiagramm der 6 dargestellt ist, wenn beispielsweise die Energiezufuhr eingeschaltet wird. Das heißt, der Masterknoten 10a führt aufeinanderfolgend S10, S11 und S12 aus, und führt dann S13 der 6 aus, wenn beispielsweise die Energiezufuhr eingeschaltet wird. Der Programmzähler des Masterknotens 10a wird bzw. ist ähnlich wie bei der obigen Ausführungsform während S10, S13 auf den ROM 12 eingestellt. Der Masterknoten 10a kommuniziert mit dem Slaveknoten 20 und dem Neuschreibwerkzeug 200 durch Ausführen des Kommunikationstreibers, der in dem ROM 12 gespeichert ist.
  • Der Masterknoten 10a schreitet nach S13 zu S15, ohne den Programmzähler zu ändern. Der Masterknoten 10a kommuniziert mit dem Slaveknoten 20 und dem Neuschreibwerkzeug 200 durch Ausführen des Kommunikationstreibers anstelle des Vermittlungsprogramms während des Neuschreibens.
  • In S16a wird ähnlich wie in S16 bestimmt, ob der Löschaufforderungsbefehl empfangen wird. Der Programmzähler des Masterknotens 10a wird bzw. ist zu dem Zeitpunkt der Bestimmung in S16a auf den ROM 12 eingestellt. Der Programmzähler des Masterknotens 10a wird bzw. ist in S19a, S22a, S25a, S28a und S31a auf den ROM 12 eingestellt.
  • Der Masterknoten 10a ändert den Programmzähler in den RAM 13 vor der Ausführung von S17 in einem Fall, in dem das Ergebnis der Bestimmung in S16a Ja lautet. Daher ändert der Masterknoten 10a in S17 ähnlich wie bei der obigen Ausführungsform das Kommunikationsformat des Kommunikationsrahmens, der den Löschaufforderungsbefehl enthält, durch Ausführen des Vermittlungsprogramms (entspricht einem Umwandlungsabschnitt). Der Masterknoten 10a setzt den Programmzähler auf den ROM 12 vor der Ausführung von S18 in einem Fall zurück, in dem das Kommunikationsformat geändert wird.
  • Das heißt, der Masterknoten 10a ändert den Programmzähler in den RAM 13 nur dann, wenn das Kommunikationsformat geändert wird. Der Masterknoten setzt den Programmzähler auf den ROM 12 zurück, wenn die Änderung des Kommunikationsformates beendet ist. Der Masterknoten 10a ändert den Programmzähler in den RAM 13 nur dann, wenn S20, S23, S26, S29 und S32 ausgeführt werden. Nach Beendigung dieser Verarbeitungen setzt der Masterknoten 10a den Programmzähler auf den ROM 12 zurück. Der Masterknoten 10a wandelt das Kommunikationsformat in S17, S20, S23, S26, S29 und S32 um, ohne das Kommunikationsprotokoll umzuwandeln. S17, S20, S23, S26, S29 und S32 entsprechen jeweils dem Umwandlungsabschnitt.
  • In S18a vermittelt der Masterknoten 10a ähnlich wie in S18 den Löschaufforderungsbefehl an den Slaveknoten 20. Der Programmzähler des Masterknotens 10a wird bzw. ist jedoch zu dem Zeitpunkt des S18a auf den ROM 12 eingestellt. Der Masterknoten 10a führt den Kommunikationstreiber anstelle des Vermittlungstreibers aus und überträgt an den Slaveknoten 20 den Kommunikationsrahmen mit dem umgewandelten Kommunikationsformat.
  • Der Masterknoten 10a führt den Kommunikationstreiber anstelle des Vermittlungstreibers in S24a und S30a ähnlich wie in S18a aus, und der Masterknoten 10a überträgt an den Slaveknoten 20 den Kommunikationsrahmen mit dem umgewandelten Kommunikationsformat. Außerdem führt der Masterknoten 10a den Kommunikationstreiber anstelle des Vermittlungstreibers in S21a, S27a und S33a aus, und der Masterknoten 10a überträgt an das Neuschreibwerkzeug 200 den Kommunikationsrahmen.
  • In diesem Fall kann der Masterknoten 10a ähnliche Wirkungen wie der Masterknoten 10 erzielen. Da das Vermittlungsprogramm, das von dem Masterknoten 10a ausgeführt wird, keine Kommunikationsfunktion aufweist, ist außerdem die Größe des Vermittlungsprogramms, das von dem Masterknoten 10a ausgeführt wird, kleiner als von dem Vermittlungsprogramm, das von dem Masterknoten 10 ausgeführt wird. Es ist möglich, dass in dem Masterknoten 10a die in dem RAM 13 zu speichernde Datenmenge zum Speichern des Vermittlungsprogramms geringer ist.
  • (Dritte Ausführungsform)
  • Im Folgenden wird eine dritte Ausführungsform mit Bezug auf die 8, 9 und 10 beschrieben. In der vorliegenden Ausführungsform wird ein Masterknoten 10b als fahrzeugeigene Steuerungsvorrichtung verwendet. Das fahrzeugeigene Steuerungssystem gemäß der vorliegenden Ausführungsform enthält den Masterknoten 10b und den Slaveknoten 20b. Das fahrzeugeigene Steuerungssystem kann beispielsweise eine ECU (elektronische Steuereinheit) sein. Daher sind der Masterknoten 10b und der Slaveknoten 20b in derselben ECU montiert.
  • Der Slaveknoten 20b weist ähnlich wie der Slaveknoten 20 als Ausführungsmodus einen Steuerungsmodus und einen Neuprogrammierungsmodus auf. Der Ausführungsmodus des Slaveknotens 20b entspricht dem Slaveausführungsmodus.
  • Der Masterknoten 10b weist ähnlich wie der Masterknoten 10 als Ausführungsmodus einen Steuerungsmodus und einen Neuprogrammierungsmodus auf. Der Masterknoten 10b bestimmt den Ausführungsmodus des Subjektknotens (des Masterknotens 10b) als entweder den Steuerungsmodus oder den Neuprogrammierungsmodus auf der Grundlage dessen, ob eine vorbestimmte Bedingung erfüllt ist (entspricht einem Modusbestimmungsabschnitt).
  • Der Ausführungsmodus des Masterknotens 10b entspricht dem Masterausführungsmodus. Das Steuerungsprogramm, das von dem Masterknoten 10b ausgeführt wird, entspricht einem Masterprogramm. Das Neuprogrammierungsprogramm, das von dem Masterknoten 10b ausgeführt wird, entspricht einem Masterneuprogrammierungsprogramm.
  • Es wird kein geeigneter Betrieb erzielt, wenn die Ausführungsmodi zwischen dem Masterknoten 10b und dem Slaveknoten 20b nicht übereinstimmen. Es wird beispielsweise angenommen, dass sich der Masterknoten 10b in dem Steuerungsmodus befindet und sich der Slaveknoten 20b in dem Neuprogrammierungsmodus befindet. In diesem Fall überträgt der Slaveknoten 20b kein Signal, das in dem Steuerungsmodus an den Masterknoten 10b zu übertragen ist. In diesem Fall kann der Masterknoten 10b in dem Steuerungsmodus nicht geeignet betrieben werden, da der Masterknoten 10b ein Signal, das normalerweise von dem Slaveknoten 20b übertragen werden sollte, nicht empfängt. Der Masterknoten 10b kann auf der Grundlage dessen, ob der Masterknoten 10b ein Signal erlangt, das während des Steuerungsmodus von dem Slaveknoten 20b beispielsweise übertragen wird, bestimmen, ob sich der Slaveknoten 20b in dem Neuprogrammierungsmodus befindet.
  • Anhand von 9 und 10 wird der Verarbeitungsbetrieb des Masterknotens 10b erläutert. Der Masterknoten 10b startet eine Verarbeitung, die in dem Flussdiagramm der 9 und 10 dargestellt ist, wenn beispielsweise die Energiezufuhr eingeschaltet wird.
  • Der Masterknoten 10b führt S10 ähnlich wie bei der obigen Ausführungsform aus. In S40 bewirkt der Masterknoten 10b, dass der Masterausführungsmodus in den Neuprogrammierungsmodus übergeht (entspricht einem Modusbestimmungsabschnitt). Das heißt, der Masterknoten 10b bestimmt den Masterausführungsmodus als Neuprogrammierungsmodus, wenn er das Vermittlungsprogramm empfängt. Mit anderen Worten, der Masterknoten 10b nimmt an, dass die vorbestimmte Bedingung erfüllt ist, wenn er das Vermittlungsprogramm empfängt. Außerdem bestimmt der Masterknoten 10b den Ausführungsmodus als Neuprogrammierungsmodus.
  • Der Masterknoten 10b führt anschließend an S40 die Verarbeitung ab S11 ähnlich wie in den obigen Ausführungsformen aus. Der Masterknoten 10b kann durch Ausführen des Neuprogrammierungsprogramms das Vermittlungsprogramm zeitweilig in dem RAM 13 speichern.
  • Der Masterknoten 10b kann ähnliche Wirkungen wie in den obigen Ausführungsformen erzielen. Außerdem kann der Masterknoten 10b ähnliche Wirkungen wie in den obigen Ausführungsformen sogar dann erzielen, wenn der Masterknoten 10b und der Slaveknoten 20b sich gegenseitig überwachen.
  • Die fahrzeugeigene Steuerungsvorrichtung 100 kann das fahrzeugeigene Steuerungssystem selbst sein oder kann in dem fahrzeugeigenen Steuerungssystem enthalten sein.
  • Man beachte, dass ein Flussdiagramm oder der Prozess des Flussdiagrammes in der vorliegenden Anmeldung Schritte (auch als Abschnitte bezeichnet) enthält, die jeweils beispielsweise mit S10 bezeichnet werden. Außerdem kann jeder Schritt in mehrere Unterschritte unterteilt sein, und es können mehrere Schritte in einen einzigen Schritt kombiniert werden.
  • Während oben beispielhafte Ausführungsformen, Konfigurationen und Aspekte einer fahrzeugeigenen Steuerungsvorrichtung und eines fahrzeugeigenen Netzwerkes, das die fahrzeugeigene Steuerungsvorrichtung enthält, beispielhaft beschrieben wurden, sind diese Ausführungsformen, Konfigurationen und Aspekte der Erfindung nicht darauf beschränkt. Es sind beispielsweise Ausführungsformen, Konfigurationen und Aspekte, die durch geeignetes Kombinieren technischer Teile, die in unterschiedlichen Ausführungsformen, Konfigurationen und Aspekten offenbart sind, erhalten werden, ebenfalls innerhalb des Bereiches der vorliegenden Erfindung enthalten.
  • 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 2006-268107 A [0002]

Claims (8)

  1. Fahrzeugeigene Steuerungsvorrichtung, die Neuschreibdaten an einen Slaveknoten (20) in einem fahrzeugeigenen Netzwerk überträgt und ein Programm des Slaveknotens neu schreibt, wobei die Neuschreibdaten Schreibobjektdaten enthalten, die von einer externen Vorrichtung (200) übertragen werden, die außerhalb eines Fahrzeugs angeordnet ist, wobei die fahrzeugeigene Steuerungsvorrichtung aufweist: einen Empfangsabschnitt (S121, S161, S261, S281), der die Neuschreibdaten und ein Vermittlungsprogramm von der externen Vorrichtung empfängt, wobei das Vermittlungsprogramm einen Kommunikationsmodus zur Kommunikation mit dem Slaveknoten umwandelt, so dass der Slaveknoten die Neuschreibdaten beim Neuschreiben des Programms des Slaveknotens empfangen kann; einen Speicherabschnitt (S13), der das Vermittlungsprogramm, das durch den Empfangsabschnitt empfangen wird, in einem flüchtigen Speicher zeitweilig speichert; einen Umwandlungsabschnitt (S17, S23, S29), der den Kommunikationsmodus unter Verwendung des Vermittlungsprogramms, das in dem Speicherabschnitt gespeichert ist, umwandelt, so dass der Slaveknoten die Neuschreibdaten beim Neuschreiben des Programms des Slaveknotens empfangen kann; und einen Übertragungsabschnitt (S18, S18a, S24, S24a, S30, S30a), der die Neuschreibdaten, die von der externen Vorrichtung empfangen werden, an den Slaveknoten mit dem Kommunikationsmodus nach dessen Umwandlung durch den Umwandlungsabschnitt beim Neuschreiben des Programms des Slaveknotens überträgt.
  2. Fahrzeugeigene Steuerungsvorrichtung nach Anspruch 1, wobei das Vermittlungsprogramm eine Funktion zum Kommunizieren mit dem Slaveknoten zusätzlich zu einer Funktion zum Umwandeln des Kommunikationsmodus enthält; und der Übertragungsabschnitt die Neuschreibdaten unter Verwendung des Vermittlungsprogramms an den Slaveknoten überträgt.
  3. Fahrzeugeigene Steuerungsvorrichtung nach Anspruch 1 oder 2, wobei der Umwandlungsabschnitt ein Kommunikationsformat der Neuschreibdaten als der Kommunikationsmodus umwandelt.
  4. Fahrzeugeigene Steuerungsvorrichtung nach Anspruch 1 oder 2, wobei der Umwandlungsabschnitt ein Kommunikationsprotokoll zu einem Zeitpunkt einer Übertragung der Neuschreibdaten als der Kommunikationsmodus umwandelt.
  5. Fahrzeugeigene Steuerungsvorrichtung nach Anspruch 1, die außerdem aufweist: einen Kommunikationstreiber, der mit dem Slaveknoten kommuniziert, wobei der Umwandlungsabschnitt ein Kommunikationsformat der Neuschreibdaten als der Kommunikationsmodus umwandelt; und der Übertragungsabschnitt die Neuschreibdaten unter Verwendung des Kommunikationstreibers an den Slaveknoten mit dem Kommunikationsformat nach dessen Umwandlung durch den Umwandlungsabschnitt überträgt.
  6. Fahrzeugeigene Steuerungsvorrichtung nach einem der Ansprüche 1 bis 5, wobei der Slaveknoten als Slaveausführungsmodus einen Steuerungsmodus und einen Neuprogrammierungsmodus aufweist, wobei der Steuerungsmodus eine Steuerung durch Ausführen des Programms durchgeführt, wobei der Neuprogrammierungsmodus das Programm durch Ausführen eines Neuprogrammierungsprogrammes neu schreibt, ohne die Steuerung auf der Grundlage des Programms durchzuführen; die fahrzeugeigene Steuerungsvorrichtung außerdem aufweist: einen Modusbestimmungsabschnitt, der als einen Masterausführungsmodus entweder einen Steuerungsmodus oder einen Neuprogrammierungsmodus bestimmt, wobei der Steuerungsmodus eine Steuerung durch Ausführen eines Masterprogramms durchgeführt, wobei der Neuprogrammierungsmodus das Masterprogramm durch Ausführen eines Masterneuprogrammierungsprogrammes neu schreibt, ohne die Steuerung auf der Grundlage des Masterprogramms durchzuführen; und der Modusbestimmungsabschnitt den Masterausführungsmodus als den Neuprogrammierungsmodus bestimmt, wenn der Empfangsabschnitt eine Herunterladeaufforderung des Vermittlungsprogramms empfängt.
  7. Fahrzeugeigene Steuerungsvorrichtung nach Anspruch 6, wobei der Speicherabschnitt das Vermittlungsprogramm, das durch den Empfangsabschnitt empfangen wird, zeitweilig in einem flüchtigen Speicher unter Verwendung des Masterneuprogrammierungsprogrammes speichert, wenn der Empfangsabschnitt das Vermittlungsprogramm empfängt.
  8. Fahrzeugeigene Steuerungsvorrichtung nach einem der Ansprüche 1 bis 6, wobei der Slaveknoten Antwortdaten für die externe Vorrichtung zurückgibt, wenn er die Neuschreibdaten empfängt; das Vermittlungsprogramm einen Kommunikationsmodus zur Kommunikation mit der externen Vorrichtung umwandelt, so dass die externe Vorrichtung die Antwortdaten beim Neuschreiben des Programms des Slaveknotens empfangen kann; und die fahrzeugeigene Steuerungsvorrichtung außerdem aufweist: einen Antwortumwandlungsabschnitt (S20, S26, S32), der den Kommunikationsmodus unter Verwendung des Vermittlungsprogramms, das in dem Speicherabschnitt gespeichert ist, umwandelt, so dass die externe Vorrichtung die Antwortdaten empfangen kann.
DE102017202280.9A 2016-02-26 2017-02-14 Fahrzeugeigene steuerungsvorrichtung Pending DE102017202280A1 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2016-35987 2016-02-26
JP2016035987 2016-02-26
JP2017018667A JP6696452B2 (ja) 2016-02-26 2017-02-03 車載制御装置
JP2017-18667 2017-02-03

Publications (1)

Publication Number Publication Date
DE102017202280A1 true DE102017202280A1 (de) 2017-08-31

Family

ID=59580310

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017202280.9A Pending DE102017202280A1 (de) 2016-02-26 2017-02-14 Fahrzeugeigene steuerungsvorrichtung

Country Status (1)

Country Link
DE (1) DE102017202280A1 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006268107A (ja) 2005-03-22 2006-10-05 Denso Corp 電子制御装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006268107A (ja) 2005-03-22 2006-10-05 Denso Corp 電子制御装置

Similar Documents

Publication Publication Date Title
DE112012003795B4 (de) Verfahren und system für eine fahrzeug-information-integritätsverifikation
DE112019002411T5 (de) Fahrzeuggebundene Aktualisierungseinrichtung, Aktualisierungsprozessverfahren und Aktualisierungsprozessprogramm
DE102019109672A1 (de) Rückgängigmachung nach einem teilausfall in mehreren elektronischen steuergeräten mittels over-the-air-updates
DE112017005979T5 (de) Parallelprozessvorrichtung und Parallelprozessprogramm
DE112018001894T5 (de) Steuervorrichtung, Übertragungsverfahren und Computerprogramm
DE102018103209A1 (de) Verfahren und vorrichtung zur handhabung der übereinstimmung von mehrzyklischen fahrzeugsoftwareaktualisierungen
DE102010026494A1 (de) Verfahren zur Konfigurierung einer Steuerungseinrichtung
EP2423887A1 (de) Portable Vorrichtung zur Veränderung von Betriebsparameterwerten und/oder Firmware von elektronischen Steuerungseinrichtungen von Kraftfahrzeugen
DE10317390A1 (de) Datenübertragungseinrichtung und elektronische Steuereinheit
WO2016141998A1 (de) Vorrichtung und verfahren zum bereitstellen einer digitalen abbildung einer physikalischen entität
DE102007038690A1 (de) Tachograph, Anordnung und Verfahren zur Daten-Übertragung über eine benutzerfreundliche Schnittstelle
DE102022113922A1 (de) Ota-master, system, verfahren, nicht-transitorisches speichermedium und fahrzeug
DE102006020562A1 (de) Anordnung und Verfahren zur Reprogrammierung von Steuergeräten
EP2870726B1 (de) Verfahren zur inbetriebnahme zumindest eines funktionsgeräts und schienenfahrzeugsverband
DE102022104321A1 (de) Center, aktualisierungsmanagementverfahren und nicht-transitorisches speichermedium
DE102022107393A1 (de) Center, verteilungssteuerungsverfahren undnicht-transitorisches speichermedium
DE102018217311B4 (de) Elektronische Steuereinheit
DE102017202280A1 (de) Fahrzeugeigene steuerungsvorrichtung
DE102022117990A1 (de) Fahrzeugeigenes kommunikationssystem
DE102021125498A1 (de) Systemvalidierung mit verbesserter Handhabung von Protokollierungsdaten
EP4117977A2 (de) Eisenbahnanlage mit diagnosesystem und verfahren zu deren betrieb
DE102017202282B4 (de) Fahrzeugeigene steuerungsvorrichtung und fahrzeugeigenes netzwerk mit der fahrzeugeigenen steuerungsvorrichtung
DE102020206262A1 (de) Datenumschreibverfahren und Datenumschreibsystem
EP3988384B1 (de) Computerimplementiertes verfahren und vorrichtung zum lokalen lastmanagement von ladestationen zum laden von elektrofahrzeugen in einem ladestationssystem
DE102009047974B4 (de) Verfahren zur Programmierung eines Steuergeräts

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication