DE102021214519A1 - Elektronisches steuersystem, testvorrichtung für elektronisches steuersystem und testverfahren für elektronisches steuersystem - Google Patents

Elektronisches steuersystem, testvorrichtung für elektronisches steuersystem und testverfahren für elektronisches steuersystem Download PDF

Info

Publication number
DE102021214519A1
DE102021214519A1 DE102021214519.1A DE102021214519A DE102021214519A1 DE 102021214519 A1 DE102021214519 A1 DE 102021214519A1 DE 102021214519 A DE102021214519 A DE 102021214519A DE 102021214519 A1 DE102021214519 A1 DE 102021214519A1
Authority
DE
Germany
Prior art keywords
processing
data
frame
communication
transmission
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
DE102021214519.1A
Other languages
English (en)
Inventor
Kentaro Ishihara
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 DE102021214519A1 publication Critical patent/DE102021214519A1/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
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0262Confirmation of fault detection, e.g. extra checks to confirm that a failure has indeed occurred
    • 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/24Pc safety
    • G05B2219/24035Superpose testsignal on normal I-O lines, through transfo and rectifier
    • 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/24Pc safety
    • G05B2219/24038Several test signals stored in memory and used as input signals
    • 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/24Pc safety
    • G05B2219/24065Real time diagnostics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Communication Control (AREA)
  • Small-Scale Networks (AREA)

Abstract

Es werden ein elektronisches Steuersystem, eine Testvorrichtung und ein Testverfahren bereitgestellt, die eine Verkürzung der Produktionszeit für eine Testvorrichtung realisieren. Entsprechende Verarbeitungshierarchien eines Steuerprogramms (150) eines elektronischen Steuersystems (1) und eines Testprogramms (440) einer Testvorrichtung (4) sind jeweils auf die gleiche Weise konfiguriert; Anforderungsdaten für jede der Verarbeitungshierarchien des Steuerprogramms (150), die von dem elektronischen Steuersystem (1) ausgeführt werden sollen, werden ohne Änderung einer erforderlichen Kommunikationsspezifikation zwischen einer Übertragungsrichtung und einer Empfangsrichtung erzeugt; Anforderungsdaten für jede der Verarbeitungshierarchien des von der Testvorrichtung (4) auszuführenden Testprogramms (440) erzeugt werden, während eine Übertragungsrichtung von Kommunikationsanfragedaten in eine Empfangsrichtung davon geändert wird und die Empfangsrichtung in die Übertragungsrichtung geändert wird.

Description

  • HINTERGRUND DER ERFINDUNG
  • Bereich der Erfindung
  • Die vorliegende Offenbarung bezieht sich auf ein elektronisches Steuersystem, eine Testvorrichtung für ein elektronisches Steuersystem und ein Testverfahren für ein elektronisches Steuersystem.
  • Beschreibung des Stands der Technik
  • In einem Fahrzeug, wie beispielsweise einem Automobil, wird eine ECU verwendet, um Steuerungsverarbeitungselemente wie Motorantrieb und Beleuchtungssteuerung einer Lichtquelle auszuführen oder um eine Verarbeitungssteuerung für die Wahrnehmung von Umgebungsbedingungen bei der Fahrunterstützung, dem automatischen Fahren und dergleichen durchzuführen. In dieser Beschreibung ist ein ECU ein allgemeiner Name, der eine elektronische Steuereinheit bezeichnet.
  • Bisher wurde als Mittel zum Testen des erwarteten Verhaltens eines ECU ein Verfahren verwendet, bei dem ein Testgerät mit einer Kommunikationsleitung des Steuergeräts verbunden wird und durch Kommunikation mit dem ECU bestätigt wird, dass die Kommunikation mit dem ECU gemäß einer Anforderung erfolgt.
  • In den letzten Jahren haben die Arten und die Anzahl der Daten, die von einem Steuergerät über eine Kommunikationsleitung übertragen oder empfangen werden, zugenommen; daher wird die Bestätigung, selbst wenn versucht wird, manuell zu bestätigen, dass die Kommunikation mit dem ECU (Steuergerät) gemäß einer Anforderung durchgeführt wird, oft nicht innerhalb einer zulässigen Zeit abgeschlossen. Dementsprechend wird ein Verfahren verwendet, bei dem ein Programm (im Folgenden als Testprogramm bezeichnet) zur automatischen Ausführung eines Tests in eine Testvorrichtung integriert wird und dann sequentiell getestet wird, ob jedes der von einem Steuergerät zu übertragenden oder zu empfangenden Datenstücke korrekt übertragen oder empfangen wird oder nicht.
  • Bei der Automatisierung einer solchen Prüfung ist es auch schwierig, manuell eine Testvorrichtung für die Ermittlung von Kommunikationsdaten zu erstellen, die so zahlreich sind, dass eine manuelle Ermittlung schwierig ist; daher ist es erforderlich, dass ein von der Testvorrichtung auszuführendes Programm so weit wie möglich automatisch erstellt wird.
  • Eine Kommunikationsanfrage eines Steuergeräts wird häufig in einer Datenbank ausgeführt; zumindest ein Framename, eine Frameidentifikationsnummer (im Folgenden als „Frame-ID“ bezeichnet), ein Kommunikationskanal, über den ein Frame gesendet oder empfangen wird, die Datenlänge eines Sende-/Empfangsframes, ein Zeitablauf (Periode) für das Senden/Empfangen eines Frames, jeweilige Positionen und Längen (Bits) verschiedener Arten von einem oder mehreren Datenstücken, die in einem Framedatenblock (Bytesequenz) angeordnet werden sollen, und Ähnliches werden für jeden Frame bestimmt.
  • In vielen Fällen wird die von einem Steuergerät auszuführende Steuerungssoftware unter Verwendung früherer Entwürfe entwickelt. Da es jedoch verschiedene Arten von Kommunikationsanfragen gibt und bei jeder Entwicklung eines Steuergeräts eine aktuelle Spezifikation verwendet wird, wird häufig keine Kommunikationsanfrage eines früheren Steuergeräts wiederverwendet.
  • Dementsprechend wird in fast allen Fällen der Teil, der einer Kommunikationsanfrage entspricht, bei jeder Entwicklung eines Steuergeräts ausgetauscht; dasselbe gilt für ein Testprogramm.
  • Als Beispiel für einen Stand der Technik, bei dem ein automatisches Testprogramm in ein Steuergerätetestgerät integriert ist und die Anzahl der Arbeitsstunden reduziert wird, wenn ein Test automatisch durchgeführt wird, ist eine Technologie zur Erstellung von Daten, eines Testfalls und dergleichen beispielsweise in einem der Patentdokumente 1 und 2 offenbart.
  • [Stand der Technik Referenzen]
  • [Patentliteratur]
    • [Patentdokument 1] Japanische Patentanmeldung Veröffentlichungsschrift mit der Nummer 2011-204069
    • [Patentdokument 2] Japanische Patentanmeldung Veröffentlichungsschrift mit der Nummer 2015-204065
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Jedes der vorstehenden Patentdokumente 1 und 2 dient der effizienten Erstellung eines Testfalls, der Testdaten und eine Abdeckung erfüllt, basierend auf einer Spezifikation der Kommunikation, einer Spezifikation der Software und dergleichen; da die Testdaten jedoch ohne Berücksichtigung der Reduzierung der Anzahl der Arbeitsstunden für die Herstellung einer Testvorrichtung und der Anzahl der Arbeitsstunden für die Erstellung der Testverarbeitung erstellt werden, besteht das Problem, dass die Erstellung eines automatischen Testprogramms und die Herstellung einer Testvorrichtung für die Ausführung des automatischen Testprogramms manuell durchgeführt werden sollte.
  • Die vorliegende Anmeldung soll eine Technologie zur Lösung des vorgenannten Problems offenlegen; ein Ziel davon ist es, ein elektronisches Steuersystem bereitzustellen, das eine Verkürzung der Produktionszeit für eine Testvorrichtung realisiert.
  • Darüber hinaus besteht ein Ziel der vorliegenden Anwendung darin, eine Testvorrichtung für das elektronische Steuersystem bereitzustellen, die eine Verkürzung der Produktionszeit für die Testvorrichtung ermöglicht.
  • Darüber hinaus zielt die vorliegende Anwendung darauf ab, ein Testverfahren für elektronische Steuersysteme bereitzustellen, das eine Verkürzung der Produktionszeit für die Testvorrichtung ermöglicht.
  • Ein elektronisches Steuersystem, das in der vorliegenden Offenbarung offenbart wird, umfasst
    mindestens eine CPU, die ein Steuerprogramm mit mindestens einer Verarbeitungshierarchie ausführt,
    eine sekundäre Speichereinrichtung, die das Steuerprogramm speichert, und
    ein RAM, das so konfiguriert ist, dass es in der Lage ist, Daten für das Steuerprogramm zu speichern und zu lesen; wenn das Verhalten des elektronischen Steuersystems getestet wird, indem mit einer Testvorrichtung kommuniziert wird, die Anforderungsdaten für die Kommunikation erzeugt, die der Verarbeitung in einem auszuführenden Testprogramm entsprechen, während eine Übertragungsrichtung der Kommunikation in eine Empfangsrichtung derselben geändert wird und die Empfangsrichtung der Kommunikation in die Übertragungsrichtung derselben geändert wird, werden Anforderungsdaten für die Kommunikation, die der Verarbeitung in dem auszuführenden Steuerprogramm entsprechen, erzeugt, ohne zwischen der Übertragungsrichtung und der Empfangsrichtung der Kommunikation geändert zu werden.
  • Darüber hinaus umfasst eine in der vorliegenden Offenbarung offenbarte Testvorrichtung für elektronische Steuersysteme
    mindestens eine CPU, die ein Testprogramm mit mindestens einer Verarbeitungshierarchie ausführt,
    ein sekundäres Speichermedium, das das Testprogramm speichert, und
    ein RAM, das so konfiguriert ist, dass es in der Lage ist, Daten für das Testprogramm zu speichern und zu lesen; wenn das Verhalten eines elektronischen Steuersystems getestet wird, indem mit dem elektronischen Steuersystem kommuniziert wird, das Anforderungsdaten für die Kommunikation erzeugt, die der Verarbeitung in einem auszuführenden Steuerprogramm entsprechen, ohne irgendeine Änderung zwischen einer Übertragungsrichtung der Kommunikation und einer Empfangsrichtung davon vorzunehmen, werden Anforderungsdaten für die Kommunikation, die der Verarbeitung in dem auszuführenden Testprogramm entsprechen, erzeugt, während die Übertragungsrichtung der Kommunikation in deren Empfangsrichtung geändert wird und die Empfangsrichtung der Kommunikation in deren Übertragungsrichtung geändert wird.
  • Darüber hinaus wird in einem Testverfahren für ein elektronisches Steuersystem, das in der vorliegenden Offenbarung offenbart wird, das Verhalten eines elektronischen Steuersystems auf der Grundlage der Kommunikation zwischen dem elektronischen Steuersystem und der Testvorrichtung getestet; das elektronische Steuersystem umfasst
    mindestens eine CPU, die ein Steuerprogramm mit mindestens einer Verarbeitungshierarchie ausführt,
    eine sekundäre Speichereinrichtung, die das Steuerprogramm speichert, und
    einen Arbeitsspeicher (RAM), der so konfiguriert ist, dass er in der Lage ist, Daten für das Steuerprogramm zu speichern und zu lesen; die Testvorrichtung umfasst
    mindestens eine CPU, die ein Testprogramm mit mindestens einer Verarbeitungshierarchie ausführt,
    ein sekundäres Speichermedium, das das Testprogramm speichert, und
    ein RAM, das so konfiguriert ist, dass es in der Lage ist, Daten für das Testprogramm zu speichern und zu lesen; Anforderungsdaten für die Kommunikation, die der Verarbeitung in dem auszuführenden Steuerprogramm entsprechen, werden erzeugt, ohne dass zwischen einer Übertragungsrichtung und einer Empfangsrichtung der Kommunikation gewechselt wird; Anforderungsdaten für die Kommunikation, die der Verarbeitung in dem auszuführenden Testprogramm entsprechen, werden erzeugt, während die Übertragungsrichtung der Kommunikation in deren Empfangsrichtung geändert wird und die Empfangsrichtung der Kommunikation in deren Übertragungsrichtung geändert wird.
  • Die vorliegende Offenbarung ermöglicht es, ein elektronisches Steuerungssystem zu erhalten, das eine Verkürzung der Produktionszeit für eine Testvorrichtung ermöglicht.
  • Darüber hinaus ermöglicht die vorliegende Offenbarung die Herstellung einer Testvorrichtung mit elektronischem Steuersystem, das die Produktionszeit für eine Testvorrichtung verkürzt.
  • Darüber hinaus ermöglicht die vorliegende Offenbarung ein Testverfahren für ein elektronisches Steuersystem, das eine Verkürzung der Produktionszeit für eine Testvorrichtung ermöglicht.
  • Darüber hinaus ermöglicht die vorliegende Offenbarung eine Testvorrichtung und ein Testverfahren, die eine Verkürzung der Produktionszeit für eine Testvorrichtung ermöglichen.
  • Die vorgenannten und andere Gegenstände, Merkmale, Aspekte und Vorteile der vorliegenden Erfindung werden aus der folgenden detaillierten Beschreibung der vorliegenden Erfindung in Verbindung mit den beigefügten Zeichnungen deutlicher.
  • Figurenliste
    • 1 ist ein Konfigurationsdiagramm, das ein elektronisches Steuersystem und eine Testvorrichtung gemäß Ausführungsform 1 darstellt;
    • 2 ist ein erläuterndes Diagramm, das beispielhaft die jeweiligen Inhalte von Variablen darstellt, auf die durch einen Kommunikationsteil eines Steuerprogramms in dem elektronischen Steuersystem gemäß Ausführungsform 1 zugegriffen wird;
    • 3 ist ein erklärendes Diagramm, das beispielhaft den Inhalt eines Kommunikationsteils des Steuerprogramms in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 4 ist ein erläuterndes Diagramm, das beispielhaft die wichtigsten Hardware-Abstraktionsdatenstücke darstellt, auf die sich die Hardware-Abstraktionsverarbeitung in Bezug auf die Kommunikation im elektronischen Steuersystem gemäß Ausführungsform 1 bezieht;
    • 5 ist ein Flussdiagramm, das beispielhaft eine Prozedur der kommunikationsbezogenen Initialisierungsverarbeitung in der Hardware-Abstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 6 ist ein Flussdiagramm, das beispielhaft eine Prozedur der Frameempfangsverarbeitung in der Hardware-Abstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 7 ist ein Flussdiagramm, das beispielhaft ein Verfahren der Frameübertragungsverarbeitung in der Hardware-Abstraktionsverarbeitung im elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 8 ist ein Flussdiagramm, das beispielhaft eine Prozedur der Frameübertragungsabschlussverarbeitung in der Hardware-Abstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 9 ist ein Flussdiagramm, das beispielhaft ein Verfahren der periodischen Verarbeitung in der Hardware-Abstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 10 ist ein erläuterndes Diagramm, das beispielhaft die Hauptkommunikationskanalabstraktionsdatenstücke darstellt, auf die sich die Kanalabstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 bezieht;
    • 11 ist ein Flussdiagramm, das beispielhaft eine Prozedur der Initialisierungsverarbeitung bei der Kanalabstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 12 ist ein Flussdiagramm, das beispielhaft eine Prozedur der Frameempfangsverarbeitung in der Kanalabstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 13 ist ein Flussdiagramm, das beispielhaft eine Prozedur der Frameübertragungsverarbeitung in der Kanalabstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 14 ist ein Flussdiagramm, das beispielhaft eine Prozedur der Frameübertragungsabschlussverarbeitung in der Kanalabstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 15 ist ein Flussdiagramm, das beispielhaft eine Prozedur der periodischen Verarbeitung in der Kanalabstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 16 ist ein Flussdiagramm, das beispielhaft ein Verfahren der Frameempfangsüberwachungsverarbeitung in der Kanalabstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 17 ist ein Flussdiagramm, das beispielhaft ein Verfahren der Frameübertragungsüberwachungsverarbeitung in der Kanalabstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 18 ist ein erklärendes Diagramm, das beispielhaft den Inhalt von kommunikationsbezogenen Datenstücken bei der Steuerungsverarbeitung im elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 19 ist ein Flussdiagramm, das beispielhaft eine Prozedur der Initialisierungsverarbeitung bei der Steuerungsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 20 ist ein Flussdiagramm, das beispielhaft eine Prozedur der Datenempfangsverarbeitung bei der Steuerungsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 21 ist ein Flussdiagramm, das beispielhaft eine Prozedur der Datenübertragungsverarbeitung bei der Steuerungsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 22 ist ein Flussdiagramm, das beispielhaft eine Prozedur der Datenübertragungsabschlussverarbeitung bei der Steuerungsverarbeitung im elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 23 ist ein Flussdiagramm, das beispielhaft eine Prozedur der Datenempfangs-Timeout-Verarbeitung in der Steuerungsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 24 ist ein Flussdiagramm, das beispielhaft eine Prozedur der Datenübertragungs-Timeout-Verarbeitung in der Steuerungsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 25 ist ein Flussdiagramm, das beispielhaft ein Verfahren der periodischen Verarbeitung in der Steuerungsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 26 ist ein Flussdiagramm, das beispielhaft ein Verfahren der steuerungsbezogenen Verarbeitung in der Steuerungsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 27 ist ein erläuterndes Diagramm, das beispielhaft die jeweiligen Inhalte von Variablen darstellt, auf die durch einen Kommunikationsteil eines Testprogramms in dem elektronischen Steuersystem gemäß Ausführungsform 1 zugegriffen wird;
    • 28 ist ein erklärendes Diagramm, das beispielhaft den Inhalt eines Kommunikationsteils des Testprogramms im elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 29 ist ein Flussdiagramm, das beispielhaft ein Verfahren der periodischen Verarbeitung bei der Testverarbeitung im elektronischen Kontrollsystem gemäß Ausführungsform 1 darstellt;
    • 30 ist ein Flussdiagramm, das beispielhaft eine Prozedur der prüfungsbezogenen Verarbeitung in der Prüfungsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt;
    • 31 ist ein Flussdiagramm, das beispielhaft ein Verfahren der ECU-Übertragungsermittlungsverarbeitung bei der Testverarbeitung im elektronischen Steuersystem gemäß Ausführungsform 1 darstellt; und
    • 32 ist ein Flussdiagramm, das beispielhaft ein Verfahren zur Verarbeitung von Testfehlern bei der Testverarbeitung in der Testvorrichtung gemäß Ausführungsform 1 darstellt.
  • DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • Nachfolgend werden ein elektronisches Steuersystem, eine Testvorrichtung für ein elektronisches Steuersystem und ein Testverfahren für ein elektronisches Steuersystem gemäß Ausführungsform 1 anhand von Zeichnungen erläutert. In jeder der Zeichnungen werden die gleichen Bestandteile mit den gleichen Bezugszeichen bezeichnet.
  • Ausführungsform 1.
  • 1 ist ein Konfigurationsdiagramm, das ein elektronisches Steuersystem und eine Testvorrichtung gemäß Ausführungsform 1 darstellt; ein Motor, der von dem elektronischen Steuersystem angetrieben wird, ist ebenfalls dargestellt.
  • In 1 hat eine ECU 1 als elektronisches Steuersystem eine Sensorspannungs-/Digitaleingangsschaltung 11, einen MICON 12 und eine Treiberschaltung 19. Die ECU 1 ist so konfiguriert, dass sie einen Motor 2 steuert. Darüber hinaus ist die ECU 1 über eine Kommunikationsleitung 3 mit einer Testvorrichtung 4 zum Testen des Verhaltens der ECU 1 verbunden.
  • Das MICON 12 arbeitet als Steuergerät in der ECU 1. Außerdem ist MICON eine Abkürzung für Micro Controller Unit oder Microcomputer. Die MICON 12 umfasst eine CPU 13, einen RAM (Arbeitsspeicher) 14, einen Sekundärspeicher 15, einen IO (Input/Output) 16, eine Kommunikation-IF (Schnittstelle) 17 und einen Timer 18. Es ist möglich, dass das MICON 12 durch ein SoC (System-on-a-Chip), einen PC (Computer) oder ähnliches ersetzt wird, das einen größeren Umfang als ein MICON hat, solange die vorgenannten Funktionen bereitgestellt werden.
  • Die CPU 13 ist eine Steuereinheit, die die vorgenannten Einheiten in der ECU 1 steuert. Die CPU 13 kann ein in 3 dargestelltes Steuerprogramm 150 ausführen, das in der sekundären Speichereinrichtung 15 gespeichert ist. Wenn eine Unterbrechung während der Ausführung des Steuerprogramms 150 auftritt, kann die CPU 13 eine der Unterbrechung entsprechende Verarbeitung durchführen. Die CPU 13 kann aus zwei oder mehr CPUs bestehen, solange auf den RAM 14, die sekundäre Speichervorrichtung 15, den IO 16, die Kommunikation-IF 17 und den Zeitgeber 18 zugegriffen werden kann. Der RAM 14 ist eine Speichereinheit, auf die die CPU 13 zugreifen kann und die Daten in einer wiederbeschreibbaren Weise speichert.
  • Die Testvorrichtung 4 gemäß Ausführungsform 1 ist über die Kommunikationsleitung 3 mit dem Steuergerät 1 als elektronisches Steuerungssystem gemäß Ausführungsform 1 kommunikativ verbunden. Die Einzelheiten der Testvorrichtung 4 werden später beschrieben.
  • 2 ist ein erläuterndes Diagramm, das die jeweiligen Inhalte der Variablen darstellt, auf die ein Kommunikationsteil des Steuerprogramms in dem elektronischen Steuersystem gemäß Ausführungsform 1 zugreifen kann. Eine Steuerprogrammvariable 140 in 2 stellt beispielhaft die jeweiligen Inhalte der Variablen des Kommunikationsteils des in 3 erwähnten Steuerprogramms 150 dar, das im RAM 14 in der ECU 1, das heißt dem elektronischen Steuersystem gemäß Ausführungsform 1, gespeichert ist und von diesem aktualisiert wird. Die Steuerprogrammvariable 140 umfasst entsprechende Variablen, das heißt eine Übertragungsframetabelle 141, eine Empfangsframetabelle 142, eine Übertragungsframeüberwachungstabelle 143, eine Empfangsframeüberwachungstabelle 144, eine Übertragungsabschlussflaggentabelle 145, eine Empfangsbenachrichtigungsflaggentabelle 146, eine Übertragungszeitüberschreitungsflaggentabelle 147, eine Empfangszeitüberschreitungsflaggentabelle 148, eine Übertragungsanforderungsflaggentabelle 149, eine Übertragungsteildaten 14A, eine Empfangsteildaten 14B, einen Übertragungsdatenpuffer 14C und einen Empfangsdatenpuffer 14D. Die Anwendungselemente der Variablen werden zusammen mit dem nachfolgend erwähnten Steuerprogramm 150 im Detail erläutert.
  • In 1 ist die sekundäre Speichervorrichtung 15 im Steuergerät 1 eine Speichereinheit, die Daten in einem Zustand speichert, in dem nur ein Auslesen möglich ist. In diesem Zusammenhang kann die sekundäre Speichervorrichtung 15 jedoch eine Speichervorrichtung sein, wie beispielsweise ein EPROM (löschbarer programmierbarer Nurlesespeicher), ein NOR-Flash-Speicher oder ein NAND-Flash-Speicher, der Daten nach einem bestimmten Verfahren wiederbeschreiben kann. In dem Fall, in dem die CPU 13 das in der sekundären Speichervorrichtung 15 gespeicherte Steuerprogramm 150 nicht direkt unter Verwendung eines Flash-Speichers vom NAND-Typ oder ähnlichem ausführen kann, kann es zulässig sein, dass der Inhalt des Steuerprogramms 150 von der sekundären Speichervorrichtung 15 zum RAM 14 übertragen wird und das Steuerprogramm 150 dann unter Verwendung des RAM 14 ausgeführt wird. Der Inhalt des Steuerprogramms und die Daten, die von der sekundären Speichervorrichtung 15 gespeichert werden, werden später im Detail erläutert.
  • Der IO 16 übernimmt die Eingabe und Ausgabe einer Sensorspannung und eines digitalen Signals von einer digitalen Eingangsschaltung. Insbesondere nimmt der IO 16 eine von der Sensorspannungs-/Digitaleingangsschaltung 11 gelesene Spannung in den MICON 12 auf und gibt ein Steuersignal an die Treiberschaltung 19 aus.
  • Der Kommunikation-IF 17 wird verwendet, um mit anderen Geräten außerhalb des elektronischen Steuersystems 1 zu kommunizieren; in Ausführungsform 1 wird der Kommunikation-IF 17 verwendet, um mit der Testvorrichtung 4 über die Kommunikationsleitung 3 zu kommunizieren. Dementsprechend führt die Kommunikation-IF 17 die Kommunikation unter Verwendung eines Telekommunikationsstandards durch, der demjenigen für eine Kommunikation-IF 46 in der Testvorrichtung 4 entspricht. Der Kommunikation-IF 17 ist so konfiguriert, dass er mit externen Geräten auf der Grundlage verschiedener Kommunikationsstandards wie CAN (Controller Area Network), CAN FD (CAN mit flexibler Data-Rate), FlexRay und Ethernet kommunizieren kann. In einigen Fällen ist die Kommunikation-IF 17 mit zwei oder mehr Kommunikationskanälen ausgestattet, die Kommunikationsfunktionen mit demselben Standard sind; in dem Fall, in dem zwei oder mehr Kommunikationskanäle verwendet werden, sind zwei oder mehr Kommunikationsleitungen 3 parallel mit der Kommunikation-IF 17 verbunden. Die Kommunikation-IF 17 kann mit externen Geräten durch drahtlose Kommunikation kommunizieren.
  • Sein Verhalten, die verstrichene Zeit zu messen, wird von der CPU 13 gestartet oder gestoppt, so dass der Zeitgeber 18 die CPU 13 über die verstrichene Zeit benachrichtigt. Ein spezielles Register, das im Zeitgeber 18 vorgesehen ist, wird von der CPU 13 gelesen, so dass die vom Zeitgeber 18 gemessene verstrichene Zeit abgerufen werden kann; wenn eine vorläufig eingestellte Zeit verstrichen ist, kann der Zeitgeber 18 der CPU 13 in einer unterbrechenden Weise mitteilen, dass die vorläufig eingestellte Zeit verstrichen ist.
  • Die Ansteuerungsschaltung 19 empfängt einen Befehl vom MICON 12 und erzeugt dann ein Motoransteuerungssignal, das dem Motor 2 zugeführt wird. In Ausführungsform 1 wird ein spezifisches Beispiel beschrieben, in dem das Steuergerät 1 den Motor 2 antreibt; die Konfiguration des Steuergeräts 1 ist jedoch nicht auf das spezifische Beispiel beschränkt. Beispielsweise kann das Steuergerät 1 so konfiguriert sein, dass das Steuerobjekt der Ansteuerungsschaltung 19 eine Lichtquelle wie eine LED (Licht-Emission-Diode) ist und das Steuergerät 1 die Beleuchtungssteuerung der LED durchführt.
  • 3 ist ein erklärendes Diagramm, das den Inhalt des Kommunikationsteils des Steuerprogramms im elektronischen Steuersystem gemäß Ausführungsform 1 darstellt; der Inhalt des Kommunikationsteils des Steuerprogramms 150, das in der sekundären Speichervorrichtung 15 zu speichern ist, ist beispielhaft dargestellt. Das Steuerprogramm 150 umfasst eine Hardwareabstraktionsverarbeitung 151, Hardwareabstraktionsdaten 152, Kanalabstraktionsverarbeitung 153, Kanalabstraktionsdaten 154, Steuerverarbeitung 155 und Steuerdaten 156.
  • In der Hardware-Abstraktionsverarbeitung 151 befindet sich eine Verarbeitungshierarchie, die hauptsächlich die folgenden Aufgaben durchführt: Wenn die jeweiligen Funktionen der Kommunikation-IF 17 verwendet werden, wird ein geeigneter Wert in ein Einstellungsregister geschrieben, das für jede der Funktionen inhärent vorgesehen ist, und der Wert wird aus einem Register gelesen, das einen Zustand anzeigt, so dass eine Zielfunktion ausgeführt wird und festgestellt wird, ob die Funktion korrekt ausgeführt wurde oder nicht; im Fall, dass die Funktion korrekt ausgeführt wurde, wird das Ausführungsergebnis erhalten. Wenn verschiedene Arten von Funktionen eines MICON verwendet werden, verbirgt die Hardware-Abstraktionsverarbeitung 151 das detaillierte Setzen und Lesen eines Registers vor externer Verarbeitung und abstrahiert sie.
  • 4 ist ein erläuterndes Diagramm, das beispielhaft die Haupt-Hardwareabstraktionsdatenstücke darstellt, auf die sich die Hardwareabstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 im Hinblick auf die Kommunikation bezieht; die Hauptdatenstücke, die sich auf die Kommunikation beziehen, aus den Hardwareabstraktionsdaten 152, auf die sich die Hardwareabstraktionsverarbeitung 151 bezieht, sind beispielhaft dargestellt.
  • In 4 werden die Hardware-Abstraktionsdaten 152 auf der Grundlage einer Kommunikationsanfragespezifikation des Steuergeräts 1 erstellt. In Ausführungsform 1 werden als Konfigurationsbeispiel der Hardwareabstraktionsdaten 152 Einstelldaten 1521 für die Hardwareabstraktionsverarbeitung 151 zur Bestimmung des Verhaltens der Hardwareabstraktionsverarbeitung 151, Kanaleinheitsdaten 1522 zum Speichern eines Anforderungswertes für jeden Kommunikationskanal, Übertragungsframeeinheitsdaten 1523 zum Speichern eines Anforderungswertes für jeden Übertragungsframe und Empfangsframeeinheitsdaten 1524 zum Speichern eines Anforderungswertes für jeden Empfangsframe erstellt.
  • Die Einstellungsdaten 1521 der Hardware-Abstraktionsverarbeitung 151 sind Daten zur Bestimmung des Verhaltens der Hardware-Abstraktionsverarbeitung 151; in Ausführungsform 1 enthalten die Einstellungsdaten 1521 der Hardware-Abstraktionsverarbeitung 151 die Übertragungsabschluss-Benachrichtigungsunterbrechung Nutzung/Nicht-Nutzung 1521A, um zu bestimmen, ob in der Kommunikation die Unterbrechung zur Benachrichtigung über den Abschluss einer Frameübertragung verwendet oder nicht verwendet wird, und die Empfangsbenachrichtigungsunterbrechung Nutzung/Nicht-Nutzung 1521B, um zu bestimmen, ob die Unterbrechung zur Benachrichtigung über den Frameempfang verwendet oder nicht verwendet wird. In dem Fall, in dem Werte für die Verwendung der vorgenannten Unterbrechungen genommen werden, stellt die Hardware-Abstraktionsverarbeitung 151 die Kommunikation-IF 17 so ein, dass, wenn die Übertragung eines Frames abgeschlossen ist oder ein Frame empfangen wird, die Kommunikation-IF 17 die CPU 13 über den Abschluss der Übertragung oder den Empfang in einer unterbrechenden Weise benachrichtigt. In dem Fall, in dem Werte zur Unterbrechung der vorgenannten Unterbrechungen genommen werden, ist es erforderlich, periodisch mit dem Kommunikation-IF 17 festzustellen, ob diese Ereignisse eingetreten sind oder nicht, da der Kommunikation-IF 17 die CPU 13 nicht über das Auftreten dieser Ereignisse informiert.
  • Die Übertragungsabschluss-Benachrichtigung Unterbrechung Verwendung/Nichtverwendung 1521A und die Empfangs-Benachrichtigung Unterbrechung Verwendung/Nichtverwendung 1521B sind möglicherweise keine direkten Anforderungen in der Kommunikationsanfragespezifikation der ECU 1; unter Berücksichtigung der Gesamtzahl der von der Hardware-Abstraktionsverarbeitung 151 zu verarbeitenden Frame, der Leistung des zu verwendenden MICON 12, der Auswirkung des Auftretens einer Unterbrechung auf die Ausführungszeit für die Steuerungsverarbeitung 155 und dergleichen muss die Einstellung jedoch so vorgenommen werden, dass die Frameübertragung/der Frameempfang in der Kommunikationsanfragespezifikation entsprechend einer Anforderung und ohne Verzögerung behandelt werden kann.
  • Die Kanaleinheitsdaten 1522 sind beispielhaft dargestellte Informationen über einen einzelnen Kommunikationskanal, auf den sich die Hardware-Abstraktionsverarbeitung 151 bezieht; in Ausführungsform 1 werden ein Kommunikation-IF 17-Registerinitialisierungswert 1522A zum Speichern jeweiliger Anfangswerte verschiedener Arten von Registern, die in der Kommunikation-IF 17 bereitgestellt werden, und ein Nutzungs-Hardwarekanal 1522B zum Speichern, welcher der von der Kommunikation-IF 17 bereitzustellenden Kommunikationskanäle verwendet wird, erstellt. Die Anzahl der zu erstellenden Kanaleinheit-Datenstücke 1522 entspricht der Anzahl der Kommunikationskanäle, die in der Kommunikationsanfragespezifikation des Steuergeräts 1 angefordert werden.
  • Die Daten der Übertragungsframeeinheit 1523 sind beispielhaft dargestellte Informationen über einen einzelnen Übertragungsframe, auf die sich die Hardware-Abstraktionsverarbeitung 151 bezieht; in Ausführungsform 1 werden eine Übertragungsframe-ID 1523A zum Speichern eines inhärenten Wertes für jeden Übertragungsframe und ein Übertragungsframekanal 1523B zum Speichern des Kommunikationskanals, der von der Kommunikation-IF 17 bereitgestellt wird, für die Übertragung verwendet wird, erstellt. Die Anzahl der zu erstellenden Datenstücke der Übertragungsframeeinheit 1523 entspricht der Anzahl der in der Kommunikationsanfragespezifikation des Steuergeräts 1 anzufordernden Übertragungsframe.
  • Die Empfangsframeeinheitsdaten 1524 sind beispielhaft dargestellte Informationen über einen einzelnen Empfangsframe, auf die sich die Hardwareabstraktionsverarbeitung 151 bezieht; in Ausführungsform 1 werden eine Empfangsframe-ID 1524A zur Definition eines inhärenten Wertes für jeden Empfangsframe und ein Empfangsframekanal 1524B zur Speicherung des von der Kommunikation-IF 17 bereitzustellenden Kommunikationskanals für den Empfang erstellt. Die Anzahl der zu erstellenden Empfangsframeeinheitsdatenstücke 1524 entspricht der Anzahl der in der Kommunikationsanfragespezifikation der ECU 1 anzufordernden Empfangsframe.
  • Jede der bis ist ein Flussdiagramm, das beispielhaft die wichtigsten kommunikationsbezogenen Verarbeitungsinhalte der Hardware-Abstraktionsverarbeitung 151 darstellt; im Folgenden werden die wichtigsten kommunikationsbezogenen Verarbeitungsinhalte in der Hardware-Abstraktionsverarbeitung 151 anhand der einzelnen Flussdiagramme im Detail erläutert.
  • 5 ist ein Flussdiagramm, das ein Verfahren der kommunikationsbezogenen Initialisierungsverarbeitung in der Hardware-Abstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt; die kommunikationsbezogene Initialisierungsverarbeitung in der Hardware-Abstraktionsverarbeitung 151 ist dargestellt. In 5 werden im Schritt S101 unter Bezugnahme auf den Kommunikation-IF 17-Registerinitialisierungswert 1522A und den Nutzungs-Hardwarekanal 1522B für jeden Kommunikationskanal die sende- und empfangsbezogenen Register des Kommunikation-IF 17 so eingestellt, dass das Senden und Empfangen eines Frames möglich wird. Als nächstes wird im Schritt S102 unter Bezugnahme auf die Hardwareabstraktionsverarbeitung 151-Einstellungsdaten 1521 die Einstellung so durchgeführt, dass, wenn die Übertragung eines Frames, der eine Übertragung anfordert, abgeschlossen ist oder wenn ein Frame von außen empfangen wird, die Kommunikation-IF 17 die CPU 13 über das Ereignis in einer unterbrechenden Weise benachrichtigen kann oder die Übertragung oder der Empfang eines Frames periodisch festgestellt werden kann, ohne die Unterbrechung zu nutzen.
  • 6 ist ein Flussdiagramm, das ein Verfahren der Frameempfangsverarbeitung in der Hardware-Abstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt; die Frameempfangsverarbeitung in der Hardware-Abstraktionsverarbeitung 151 ist dargestellt. Die in 6 dargestellte Frameempfangsverarbeitung wird in dem Fall ausgeführt, in dem, wenn ein Kommunikationsframe von außen empfangen wird, die Kommunikation-IF 17 eine Unterbrechung für die CPU 13 erzeugt oder periodisch ausgeführt wird, ohne eine Unterbrechung zu verwenden. In 6 wird zunächst im Schritt S201 der Frameempfangsverarbeitung durch Bezugnahme auf ein Register der Kommunikation-IF 17 festgestellt, ob ein Frame empfangen wurde oder nicht; im Fall, dass kein Frame empfangen wurde (NEIN), wird die Verarbeitung beendet.
  • Wenn im Schritt S201 der Empfang eines Frames bestätigt wurde (JA), folgt auf den Schritt S201 der Schritt S202, in dem die Nummer des Kommunikationskanals, über den der Frame empfangen wurde, bestimmt wird. Im Schritt S203 wird die Frame-ID des empfangenen Frames aus dem Register der Kommunikation-IF 17 gelesen und im RAM 14 gespeichert. Als nächstes wird im Schritt S204 durch Bezugnahme auf die in 4 dargestellten Empfangsframeeinheitsdatenstücke 1524 bestimmt, ob die über den vorhergehenden Kommunikationskanal empfangene Frame-ID ein Empfangssubjekt ist oder nicht; in dem Fall, in dem der Frame kein Empfangssubjekt (NEIN) ist, folgt auf den Schritt S204 der Schritt S208, in dem der Empfangsstatus des Kommunikation-IF 17 auf einen „Nicht-Empfangszustand“ zurückgesetzt wird; dann wird die Empfangsverarbeitung beendet.
  • In dem Fall, in dem im Schritt S204 festgestellt wird, dass ein Frame mit Empfangsgegenstand empfangen wurde (JA), folgt auf den Schritt S204 der Schritt S205, in dem eine Framedatenlänge (Bytezahl) aus dem Register der Kommunikation-IF 17 gelesen wird; dann werden im Schritt S206 Framedatenstücke, die der Framedatenlänge entsprechen, aus dem Register der Kommunikation-IF 17 gelesen, und dann werden die Datenlänge der empfangenen Daten und die Daten in dem RAM 14 gespeichert. Im Schritt S207 werden die Kommunikationskanalnummer, die Frame-ID, die Framedatenlänge und die Framedaten des empfangenen Frames als Parameter für die Empfangsverarbeitung in der Kanalabstraktionsverarbeitung 153 an eine in 12 dargestellte Frameempfangsverarbeitung übertragen. Als nächstes wird im Schritt S208 der Empfangsstatus der Kommunikation-IF 17 auf den „Nicht-Empfangszustand“ zurückgesetzt; dann wird die Empfangsverarbeitung beendet.
  • 7 ist ein Flussdiagramm, das eine Prozedur der Frameübertragungsverarbeitung in der Hardware-Abstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt, und stellt die Frameübertragungsverarbeitung dar, die von der vorangehenden Hardware-Abstraktionsverarbeitung 151 in 3 auszuführen ist, wenn sie von der Kanalabstraktionsverarbeitung 153 aufgerufen wird.
  • In der Frameübertragungsverarbeitung der in 7 dargestellten Hardware-Abstraktionsverarbeitung 151 wird in dem Schritt S301 eine Frame-ID in ein bestimmtes Kommunikationskanalregister der Kommunikation-IF 17 geschrieben; in dem Schritt S302 wird eine Framedatenlänge in ein bestimmtes Kommunikationskanalregister der Kommunikation-IF 17 geschrieben; in dem Schritt S303 werden Framedaten in ein bestimmtes Kommunikationskanalregister der Kommunikation-IF 17 geschrieben; in dem Schritt S304 wird eine Frameübertragungsanforderung in ein Register der Kommunikation-IF 17 geschrieben; dann wird die Übertragungsverarbeitung beendet.
  • 8 ist ein Flussdiagramm, das beispielhaft ein Verfahren der Frameübertragungs-Abschlussverarbeitung der Hardware-Abstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt; die Frameübertragungs-Abschlussverarbeitung der vorangehenden Hardware-Abstraktionsverarbeitung 151 in 3 ist dargestellt. Die Frameübertragungsabschlussverarbeitung in 8 wird in dem Fall ausgeführt, in dem, wenn die Übertragung eines Frames, der in der vorhergehenden Frameübertragungsverarbeitung in 7 angefordert wurde, abgeschlossen ist, die Kommunikation-IF 17 eine Unterbrechung an die CPU 13 erzeugt oder periodisch ausgeführt wird, ohne eine Unterbrechung zu verwenden.
  • In 8 wird im Schritt S401 anhand eines Registers festgestellt, ob die Frameübertragung abgeschlossen wurde oder nicht; wenn kein Frame übertragen wurde (NEIN), wird die Verarbeitung beendet. Wenn der Abschluss der Frameübertragung bestätigt wurde (JA), folgt auf den Schritt S401 der Schritt S402, in dem die Nummer des Kommunikationskanals, über den die Übertragung abgeschlossen wurde, bestimmt wird; dann wird im Schritt 403 die Frame-ID des übertragenen Frames aus dem Register der Kommunikation-IF 17 gelesen und im RAM 14 gespeichert. Als nächstes werden im Schritt S404 die Nummer des Kommunikationskanals und die Frame-ID für den übertragenen Frame als Parameter für die Verarbeitung des Übertragungsabschlusses an die Kanalabstraktionsverarbeitung 153 übertragen. Im Schritt S405 wird der Status des Übertragungsabschlusses der Kommunikation-IF 17 ohne Abschluss der Übertragung gelöscht; anschließend wird die Verarbeitung des Übertragungsabschlusses beendet.
  • 9 ist ein Flussdiagramm, das ein Verfahren der periodischen Verarbeitung in der Hardware-Abstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt; die periodische Verarbeitung der vorangehenden Hardware-Abstraktionsverarbeitung 151 in 3 ist dargestellt. Im Schritt S501, wenn die Übertragung eines Frames abgeschlossen ist oder in dem Fall, in dem, wenn ein Frame empfangen wurde, keine Unterbrechung verwendet wird, wird die Frameempfangsverarbeitung der Hardware-Abstraktionsverarbeitung 151 periodisch ausgeführt, und im Schritt S502 wird die Frameübertragungsabschlussverarbeitung ausgeführt; dann wird die Verarbeitung beendet.
    Die Bearbeitungszeit wird beispielsweise mit Hilfe des Timers 18 erzeugt.
  • In der Kanalabstraktionsverarbeitung 153 in dem in 3 dargestellten Steuerprogramm 150 wird die Hardwareabstraktionsverarbeitung 151 verwendet, so dass die Datenübertragungs-/Empfangsfunktion der Kommunikation-IF 17 verwendet wird, ohne dass eine detaillierte Operation des Registers der Kommunikation-IF 17 durchgeführt wird. Darüber hinaus werden in der Kanalabstraktionsverarbeitung 153 in dem Fall, in dem zwei oder mehr Kommunikationskanäle verwendet werden, Informationen über jeden der Kommunikationskanäle durch einen Wert für einen inhärenten Bezeichner (im Folgenden als „Dateneinheit-ID“ bezeichnet) ersetzt, um verborgen und abstrahiert zu werden.
  • Die in 3 dargestellten Kanalabstraktionsdaten 154 sind Daten zu einem Zeitpunkt, zu dem eine Kommunikationsanfrage des Steuergeräts durch die Kanalabstraktionsverarbeitung 153 auf einen erforderlichen Bereich angewendet wird; eine Frame-ID, ein Kommunikationskanal, über den ein Frame gesendet oder empfangen wird, und ähnliches entsprechen den Daten.
  • 10 ist ein erläuterndes Diagramm, das beispielhaft Hauptkommunikationskanalabstraktionsdatenstücke darstellt, auf die sich die Kanalabstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 bezieht; Hauptdatenstücke in den Kanalabstraktionsdaten 154, auf die sich die vorangehende Kanalabstraktionsverarbeitung 153 in 3 bezieht, sind beispielhaft dargestellt.
  • In 10 werden die Kanalabstraktionsdaten 154 basierend auf einer Kommunikationsanfragespezifikation des Steuergeräts 1 erstellt. In Ausführungsform 1 werden als Konfigurationsbeispiel für die Kanalabstraktionsdaten 154 Kanaleinheitsdaten 1541 zum Speichern eines Anforderungswertes für jeden Kanal, Übertragungsframeeinheitsdaten 1542 zum Speichern eines Anforderungswertes für jeden Übertragungsframe und Empfangsframeeinheitsdaten 1543 zum Speichern eines Anforderungswertes für jeden Empfangsframe erstellt.
  • Die Kanaleinheitsdaten 1541 sind beispielhaft dargestellte Informationen über einen einzelnen Kommunikationskanal, auf die sich die Kanalabstraktionsverarbeitung 153 bezieht; in Ausführungsform 1 werden eine Übertragungsframe-ID-Umwandlungstabelle 1541A zum Umwandeln eines Satzes der Kommunikationskanalnummer für einen Übertragungsframe und einer Übertragungsframe-ID in eine inhärente ID (im Folgenden als „Daten-ID“ bezeichnet) und eine Empfangsframe-ID-Umwandlungstabelle 1541B zum Umwandeln eines Satzes der Kommunikationskanalnummer für einen Empfangsframe und einer Empfangsframe-ID in eine Daten-ID erstellt.
  • Beim Empfang einer Sendeabschlussmeldung oder einer Empfangsmeldung von der Hardware-Abstraktionsverarbeitung 151 integriert die Sende-Frame-ID-Konvertierungstabelle 1541A bzw. die Empfangs-Frame-ID-Konvertierungstabelle 1541B die Kommunikationskanalnummer und die Frame-ID in eine einzige inhärente ID (im Folgenden als „Daten-ID“ bezeichnet) und benachrichtigt ein Programmmodul der höheren Verarbeitungshierarchie (die Steuerungsverarbeitung 155, in Ausführungsform 1) über die Daten-ID. Eine Daten-ID kann auf beliebige Weise erstellt werden, solange es sich um einen inhärenten Wert handelt, der sich nicht mit einem anderen Frame überschneidet; beispielsweise kann jedem Frame einfach eine fortlaufende Nummer zugewiesen werden; alternativ kann es zulässig sein, dass für jede Daten-ID eine Speicherbreite von 16 Bit gesichert wird, eine Kommunikationskanalnummer in den 4 höherwertigen Bits davon gespeichert wird und dann eine Frame-ID aus dem Register der Kommunikation-IF 17 erhalten wird, die der Kommunikationskanalnummer entspricht.
  • Wenn eine Übertragungsanforderung von einem Programmmodul mit höherer Verarbeitungshierarchie empfangen wird, empfängt die Kanalabstraktionsverarbeitung 153 eine Daten-ID und Übertragungsdaten von dem Programmmodul mit höherer Verarbeitungshierarchie. Es ist erforderlich, dass die vorangehende Kanalabstraktionsverarbeitung 153 in 3 die Kommunikationskanalnummer und die Frame-ID entsprechend der empfangenen Daten-ID erhält und dann die Kommunikationskanalnummer, die Frame-ID und die Übertragungsdaten an die Hardwareabstraktionsverarbeitung 151 überträgt. Daher ist es erforderlich, dass die Übertragungsframe-ID-Umwandlungstabelle 1541A nicht nur eine Daten-ID aus der Kommunikationskanalnummer und der Frame-ID eines Übertragungsframes erhalten kann, sondern auch eine Kommunikationskanalnummer und eine Übertragungsframe-ID aus einer Daten-ID erhalten kann. In dem Fall, in dem es schwierig ist, diese bilaterale Umwandlung mit einer einzigen Tabelle effizient durchzuführen, kann es zulässig sein, dass zwei Arten von Tabellen, die es ermöglichen, die Umwandlung effizient durchzuführen, für die jeweiligen Umwandlungsrichtungen erstellt werden.
  • Die Anzahl der zu erstellenden Channel-Unit-Datenstücke 1541 entspricht der Anzahl der anzufordernden Kommunikationskanäle in der Communication-Request-Spezifikation des Steuergeräts 1.
  • Die Daten der Übertragungsframeeinheit 1542 sind beispielhaft dargestellte Informationen über einen einzelnen Übertragungsframe, auf die sich die Kanalabstraktionsverarbeitung 153 bezieht; in Ausführungsform 1 werden eine Übertragungsframe-Datenlänge 1542A zum Speichern der Größe der Nettodaten in einem Übertragungsframe, eine Übertragungsframe-Überwachungs-Anwesenheit/Fehlen 1542B zum Speichern, ob überwacht wird, dass die Übertragung eines Übertragungsframes innerhalb einer Frist abgeschlossen wurde oder nicht, eine Übertragungsframe-Überwachungs-Frist 1542C zum Speichern einer Übertragungs-Zeitüberschreitung für einen Übertragungsframe und eine Übertragungs-Abschluss-Benachrichtigungs-Modul-ID 1542D zum Speichern einer übergeordneten Programm-Modul-ID, die den Abschluss der Übertragung eines Übertragungsframes anzeigt, erstellt. Die Anzahl der zu erstellenden Übertragungsframeeinheitsdatenstücke 1542 entspricht der Anzahl der in der Kommunikationsanfragespezifikation der ECU 1 anzufordernden Übertragungsframe.
  • Die Daten der Empfangsframeeinheit 1543 sind beispielhaft dargestellte Informationen über einen einzelnen Empfangsframe, auf die sich die Kanalabstraktionsverarbeitung 153 bezieht; in Ausführungsform 1 werden eine EmpfangsframeDatenlänge 1543A zum Speichern der Länge der Nettodaten in einem Empfangsframe, eine Empfangsframe-Datenlängenermittlungs-Anwesenheit/Abwesenheit 1543B zum Speichern, ob die Länge der Nettodaten in einem Empfangsframe ermittelt wird oder nicht, erstellt, eine Empfangsframeüberwachungspräsenz/-abwesenheit 1543C zum Speichern, ob der Empfang eines Empfangsframes überwacht wird oder nicht, eine Empfangsframeüberwachungsfrist 1543D zum Speichern einer Empfangszeitüberschreitung für einen Empfangsframe und eine Empfangsbenachrichtigungsmodul-ID 1543E zum Speichern einer übergeordneten Programmmodul-ID, die den Empfang eines Empfangsframes anzeigt. Die Anzahl der zu erstellenden Empfangsframeeinheitsdatenstücke 1543 entspricht der Anzahl der in der Kommunikationsanfragespezifikation der ECU 1 anzufordernden Empfangsframe.
  • Jedes der 11 bis 17 ist ein Flussdiagramm, das beispielhaft die Hauptverarbeitungsinhalte der Kanalabstraktionsverarbeitung 153 darstellt. Nachfolgend werden die Verarbeitungsinhalte der Kanalabstraktionsverarbeitung 153 anhand des in den 11 bis 17 dargestellten Flussdiagramms im Detail erläutert.
  • 11 ist ein Flussdiagramm, das beispielhaft ein Verfahren der Initialisierungsverarbeitung in der Kanalabstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt; die Initialisierungsverarbeitung der Kanalabstraktionsverarbeitung 153 ist dargestellt. In 11 werden im Schritt S601 die Übertragungsframetabelle 141 und die Empfangsframetabelle 142 initialisiert; im Schritt S602 werden die Übertragungsframeüberwachungstabelle 143 und die Empfangsframeüberwachungstabelle 144 initialisiert. Falls erforderlich, kann die Einstellung oder Initialisierung für den periodischen Aufruf der in der nachstehenden 14 dargestellten periodischen Verarbeitung innerhalb der Verarbeitung in 11 durchgeführt werden.
  • 12 ist ein Flussdiagramm, das beispielhaft ein Verfahren der Frameempfangsverarbeitung in der Kanalabstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt; die Frameempfangsverarbeitung in der Kanalabstraktionsverarbeitung 153 ist dargestellt. Wenn ein Frame empfangen wird, werden die Kanalnummer des empfangenen Frames, die Frame-ID, die Framedatenlänge und die Framedaten, die empfangen wurden, als Parameter vom Schritt S207 für die Empfangsverarbeitung in der Hardware-Abstraktionsverarbeitung 151 in 7 übertragen und dann aufgerufen. Im Hinblick auf die Frameempfangsverarbeitung in der Kanalabstraktionsverarbeitung 153, die in 12 dargestellt ist, wird im Schritt S701 eine Daten-ID aus der Kanalnummer und der Frame-ID durch Bezugnahme auf die Empfangsframe-ID-Umwandlungstabelle 1541B erhalten.
  • Als nächstes wird im Schritt S702 festgestellt, ob die Feststellung der Empfangsframedatenlänge 1543B wirksam ist oder nicht; wenn die Feststellung der Empfangsframedatenlänge 1543B wirksam ist (JA), folgt auf den Schritt S702 der Schritt S703, in dem festgestellt wird, ob die Framedatenlänge der Empfangsframedatenlänge 1543A entspricht oder nicht. Wenn im Schritt S703 festgestellt wird, dass die Framedatenlänge nicht mit der Empfangsframedatenlänge 1543A übereinstimmt (NEIN), wird die Empfangsverarbeitung beendet.
  • In dem Fall, in dem in dem Schritt S702 festgestellt wird, dass die Feststellung des Vorhandenseins/Nichtvorhandenseins der Empfangsframedatenlänge 1543B wirksam ist (JA), und in dem Fall, in dem in dem Schritt S703 festgestellt wird, dass die Framedatenlänge der Empfangsframedatenlänge 1543A entspricht (JA), folgt auf den Schritt S703 der Schritt S704, in dem unter Bezugnahme auf die ID des Empfangsbenachrichtigungsmoduls 1543E das Programmmodul der höheren Verarbeitungshierarchie für die Mitteilung des Empfangs eines Frames bestimmt wird; dann werden im Schritt S705 die Daten-ID und die Framedaten als Parameter an eine Frameempfangsverarbeitung mit höherer Verarbeitungshierarchie übertragen, um den Empfang der Daten zu melden. In Ausführungsform 1 ist das Programmmodul mit höherer Verarbeitungshierarchie die Steuerungsverarbeitung 155; das Programmmodul mit höherer Verarbeitungshierarchie ist jedoch nicht darauf beschränkt, und es ist möglich, dass die Steuerungsverarbeitung 155 in zwei oder mehr Verarbeitungsschritte unterteilt ist oder eine andere Art von Programmmodul ist. Schließlich werden im Schritt S706 die Kommunikationskanalnummer und die Frame-ID zur Empfangsframetabelle 142 hinzugefügt; dann wird die Empfangsverarbeitung beendet.
  • 13 ist ein Flussdiagramm, das ein Verfahren der Frameübertragungsverarbeitung in der Kanalabstraktionsverarbeitung im elektronischen Steuersystem gemäß Ausführungsform 1 darstellt; wenn diese Frameübertragungsverarbeitung als Übertragungsverarbeitung von der Steuerungsverarbeitung 155 aufgerufen wird, wird sie von der Kanalabstraktionsverarbeitung 153 ausgeführt, wobei die Daten-ID und die zu übertragenden Framedaten als Verarbeitungsparameter übertragen werden.
  • Im Hinblick auf die Frameempfangsverarbeitung der in 13 dargestellten Kanalabstraktionsverarbeitung 153 wird im Schritt S801 die Kommunikationskanalnummer und die Frame-ID aus der Daten-ID durch Bezugnahme auf die Übertragungsframe-ID-Umwandlungstabelle 1541A erhalten. Als nächstes werden im Schritt S802 die Kommunikationskanalnummer und die Frame-ID zur Übertragungsframetabelle 141 hinzugefügt. Im Schritt S803 werden die Kommunikationskanalnummer eines Frames, die Frame-ID, die Framedatenlänge und die Framedaten, die übertragen werden, als Parameter an die Hardware-Abstraktionsverarbeitung 151 übertragen und aufgerufen; dann wird die Übertragungsverarbeitung beendet.
  • 14 ist ein Flussdiagramm, das beispielhaft ein Verfahren der Frameübertragungsabschlussverarbeitung in der Kanalabstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt; die Frameübertragungsabschlussverarbeitung der Kanalabstraktionsverarbeitung 153 ist dargestellt. Wenn die Übertragung des in der vorhergehenden Frameübertragungsverarbeitung angeforderten Frames abgeschlossen ist, werden die Kommunikationskanalnummer und die Frame-ID des übertragenen Frames als Parameter aus dem Schritt S405 für die Frameübertragungsabschlussverarbeitung in der Hardware-Abstraktionsverarbeitung 151 übertragen und aufgerufen.
  • Im Hinblick auf die Frameübertragungsabschlussverarbeitung der Kanalabstraktionsverarbeitung 153, die in 14 dargestellt ist, wird im Schritt S901 die Daten-ID aus der Kommunikationskanalnummer und der Frame-ID durch Bezugnahme auf die Übertragungsframe-ID-Umwandlungstabelle 1541A erhalten. Als nächstes werden im Schritt S902 die Kommunikationskanalnummer und die Frame-ID aus der Übertragungsframetabelle 141 gelöscht; dann, im Schritt S903, ein Programmmodul mit höherer Verarbeitungshierarchie, um die Beendigung der Frameübertragung mitzuteilen, indem auf die Übertragungsbeendigungs-Benachrichtigungsmodul-ID 1542D Bezug genommen wird. Dann, im Schritt S904, wird die Daten-ID, als ein Parameter, an die höhere Verarbeitungshierarchie Frameübertragung Abschluss der Verarbeitung übertragen, um eine Mitteilung über den Abschluss der Datenübertragung zu geben; dann wird die Verarbeitung beendet.
  • 15 ist ein Flussdiagramm, das beispielhaft ein Verfahren der periodischen Verarbeitung in der Kanalabstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt; die periodische Verarbeitung in der Kanalabstraktionsverarbeitung 153 ist dargestellt und wird periodisch durch Verwendung eines Schedulers eines OS (Operating System), des Timers 18 oder dergleichen aufgerufen. Die Aufrufperiode wird so bestimmt, dass sie weder zu lang noch zu kurz für eine für die Kanalabstraktionsverarbeitung 153 erforderliche Antwortzeit ist. Jedes Mal, wenn die in 15 dargestellte periodische Verarbeitung aufgerufen wird, werden die Frameempfangsüberwachungsverarbeitung gemäß Schritt S1001 und die Frameübertragungsüberwachungsverarbeitung gemäß Schritt S1002 aufgerufen.
  • 16 stellt beispielhaft einen Ablauf der Frameempfangsverarbeitung in der Kanalabstraktionsverarbeitung im elektronischen Steuersystem gemäß Ausführungsform 1 dar; die Frameempfangsüberwachungsverarbeitung in der Kanalabstraktionsverarbeitung 153, die periodisch durchgeführt wird, ist dargestellt; zunächst wird der Schritt S1001 aufgerufen.
  • Im Schritt S1101 werden eine automatische Variable CHANNEL (KANAL) und eine automatische Variable FRAME auf „0“ initialisiert; dann wird im Schritt S1102 bestimmt, ob die automatische Variable CHANNEL kleiner als die Anzahl der Kommunikationskanäle ist oder nicht. Wenn die automatische Variable CHANNEL kleiner als die Anzahl der Kommunikationskanäle ist (JA), folgt auf den Schritt S1102 der Schritt S1103, in dem bestimmt wird, ob die automatische Variable FRAME kleiner als die Anzahl der Frame in der automatischen Variable CHANNEL ist oder nicht; wenn die automatische Variable FRAME nicht kleiner als die Anzahl der Frame in der automatischen Variable CHANNEL ist (NEIN), folgt auf den Schritt S1103 der Schritt S1104. Im Schritt S1104 wird der automatischen Variablen CHANNEL eine „1“ hinzugefügt; anschließend wird der Schritt S1102 fortgesetzt.
  • Wird im vorangehenden Schritt S1102 festgestellt, dass die automatische Variable CHANNEL nicht kleiner ist als die Anzahl der Kommunikationskanäle (NEIN), wird die Verarbeitung beendet. Wenn im Schritt S1103 festgestellt wird, dass die automatische Variable FRAME kleiner ist als die Anzahl der Frames in der automatischen Variable CHANNEL (JA), folgt auf den Schritt S1103 der Schritt S1105. Gemäß den Schritten S1102, S1103 und S1104 wird die Frameempfangsüberwachungsverarbeitung so oft wiederholt, wie die Anzahl der über die Kommunikationskanalnummer jeder der automatischen Variablen CHANNEL zu empfangenden Frame.
  • Im Schritt S1105 wird in Bezug auf die Frame-ID jeder der jeweiligen automatischen Variablen FRAME der Kommunikationskanalnummern der automatischen Variablen CHANNEL bestimmt, ob die Überwachung der Anwesenheit/Abwesenheit 1543C des entsprechenden Frames wirksam ist oder nicht; in dem Fall, in dem die Überwachung der Anwesenheit/Abwesenheit 1543C des entsprechenden Frames unwirksam ist (NEIN), wird der automatischen Variable FRAME eine „1“ hinzugefügt; dann wird im Schritt S1113 die Überwachungsverarbeitung auf den nächsten Empfangsframe angewendet. Im Gegensatz dazu wird in dem Fall, in dem im Schritt S1105 festgestellt wird, dass die Überwachung des Vorhandenseins/Fehlens 1543C des entsprechenden Frames wirksam ist (JA), nach dem Schritt S1105 der Schritt S1106 durchgeführt, in dem festgestellt wird, ob ein Frame der automatischen Variablen CHANNEL und der automatischen Variablen FRAME in der Tabelle 142 der Empfangsframe existiert oder nicht. In dem Fall, in dem ein Frame der automatischen Variablen CHANNEL und der automatischen Variablen FRAME in der Empfangsframetabelle 142 existiert (JA), das heißt in dem Fall, in dem ein Frame mit der Kommunikationskanalnummer der automatischen Variablen CHANNEL und der Frame-ID der automatischen Variablen FRAME zu der Empfangsframetabelle 142 hinzugefügt wurde, folgt auf den Schritt S1106 der Schritt S1108.
  • Im Schritt S1108 wird der vorhergehende Frame aus der Empfangsframetabelle 142 gelöscht; anschließend wird im Schritt S1109 der entsprechende Zähler der Empfangsframeüberwachungstabelle 144 auf „0“ initialisiert. In dem Fall, in dem in dem Schritt S1106 festgestellt wird, dass kein Frame der automatischen Variablen CHANNEL und der automatischen Variablen FRAME in der Empfangsframetabelle 142 existiert (NEIN), das heißt in dem Fall, in dem kein Frame mit der Kommunikationskanalnummer der automatischen Variablen CHANNEL und der Frame-ID der automatischen Variablen FRAME zu der Empfangsframetabelle 142 hinzugefügt wurde, folgt auf den Schritt S1106 der Schritt S1107, in dem „1“ zu dem entsprechenden Zähler der Empfangsframeüberwachungstabelle 144 hinzugefügt wird.
  • Als nächstes wird im Schritt S1110 festgestellt, ob der Zähler der automatischen Variablen CHANNEL und der automatischen Variablen FRAME in der Empfangsframetabelle 142 größer als die Empfangsframeüberwachungsfrist 1543D ist oder nicht; in dem Fall, in dem der Wert des Zählers in der Empfangsframe-Überwachungstabelle 144 eines Frames mit der Kommunikationskanalnummer der automatischen Variablen CHANNEL und der Frame-ID der automatischen Variablen FRAME gleich oder größer als der Wert der entsprechenden EmpfangsframeÜberwachungsfrist 1543D (JA) ist, folgt auf den Schritt S1110 der Schritt S1111, in dem unter Bezugnahme auf die Empfangsbenachrichtigungsmodul-ID 1543E das Programmmodul mit höherer Verarbeitungshierarchie zur Ankündigung einer Empfangszeitüberschreitung bestimmt wird. Als nächstes wird im Schritt S1112 die Daten-ID als Parameter an die übergeordnete Frame-Empfangszeitüberschreitungs-Verarbeitung übertragen, um die Zeitüberschreitung des Datenempfangs mitzuteilen. Falls das Ergebnis der Bestimmung im Schritt S1110 negativ (NEIN) ist, folgt auf den Schritt S1110 der Schritt S1113.
  • Im Schritt S1113 wird in dem Fall, dass nach der Benachrichtigung über die Zeitüberschreitung der Zählerwert der Empfangsframe-Überwachungstabelle 144 für einen Frame mit der Kommunikationskanalnummer der automatischen Variablen CHANNEL und der Frame-ID der automatischen Variablen FRAME kleiner ist als die entsprechende EmpfangsframeÜberwachungsfrist 1543D, „1“ zu der automatischen Variablen FRAME hinzugefügt; dann wird die Überwachungsverarbeitung auf den nächsten Empfangsframe angewendet.
  • 17 ist ein Flussdiagramm, das beispielhaft ein Verfahren der Frameübertragungsüberwachungsverarbeitung in der Kanalabstraktionsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt; die Frameübertragungsüberwachungsverarbeitung in der Kanalabstraktionsverarbeitung 153, die periodisch durchgeführt wird, ist dargestellt; zunächst wird der Schritt S1201 aufgerufen.
  • Im Schritt S1201 werden, wie bei der vorangegangenen Frameempfangsüberwachungsverarbeitung in der Kanalabstraktionsverarbeitung 153, bei der Frameübertragungsüberwachungsverarbeitung in der Kanalabstraktionsverarbeitung 153 die automatische Variable CHANNEL und die automatische Variable FRAME jeweils auf „0“ initialisiert. Im Schritt S2102 wird festgestellt, ob die automatische Variable CHANNEL kleiner als die Anzahl der Kommunikationskanäle ist oder nicht; wenn die automatische Variable CHANNEL kleiner als die Anzahl der Kommunikationskanäle ist (JA), folgt auf den Schritt S1202 der Schritt S1203, in dem festgestellt wird, ob die automatische Variable FRAME kleiner als die Anzahl der Frame in der automatischen Variablen CHANNEL ist oder nicht; wenn die automatische Variable FRAME nicht kleiner ist als die Anzahl der Frames in der automatischen Variablen CHANNEL (NEIN), folgt auf den Schritt S1203 der Schritt S1204. Im Schritt S1204 wird der automatischen Variablen CHANNEL eine „1“ hinzugefügt; anschließend wird der Schritt S1202 fortgesetzt.
  • Wird im vorangehenden Schritt S1202 festgestellt, dass die automatische Variable CHANNEL nicht kleiner ist als die Anzahl der Kommunikationskanäle (NEIN), wird die Verarbeitung beendet. Wenn im Schritt S1203 festgestellt wird, dass die automatische Variable FRAME kleiner ist als die Anzahl der Frames in der automatischen Variable CHANNEL (JA), folgt auf den Schritt S1203 der Schritt S1205. Gemäß den Schritten S1202, S1203 und S1204 wird die Sendeüberwachungsverarbeitung so oft wiederholt, wie die Anzahl der über die Kommunikationskanalnummer jeder der automatischen Variablen CHANNEL zu empfangenden Frame.
  • Im Schritt S1205 wird in Bezug auf die Frame-ID jeder der jeweiligen automatischen Variablen FRAME der Kommunikationskanalnummern der automatischen Variablen CHANNEL bestimmt, ob die Übertragungsframeüberwachung Präsenz/Fehlen 1542B des entsprechenden Frames wirksam ist oder nicht; in dem Fall, in dem die Überwachung des Vorhandenseins/Fehlens des Übertragungsframes 1542B des entsprechenden Frames unwirksam ist (NEIN), folgt auf den Schritt S1205 der Schritt S1210; in dem Fall, in dem die Überwachung des Vorhandenseins/Fehlens des Übertragungsframes 1542B des entsprechenden Frames wirksam ist (JA), folgt auf den Schritt S1205 der Schritt S1206. In dem Schritt S1206 wird bestimmt, ob ein Frame der automatischen Variablen CHANNEL und der automatischen Variablen FRAME in der Übertragungsframetabelle 141 existiert oder nicht; in dem Fall, in dem ein Frame der automatischen Variablen CHANNEL und der automatischen Variablen FRAME in der Übertragungsframetabelle 141 existiert (JA), folgt auf den Schritt S1206 der Schritt S1208; in dem Fall, in dem kein Frame der automatischen Variablen CHANNEL und der automatischen Variablen FRAME in der Übertragungsframetabelle 141 existiert (NEIN), folgt auf den Schritt S1206 ein Schritt S1207.
  • Im Schritt S1208 wird der vorangehende Frame aus der Übertragungsframetabelle 141 gelöscht; anschließend wird im Schritt S1209 der entsprechende Zähler der Übertragungsframe-Überwachungstabelle 143 auf „0“ initialisiert. Im Gegensatz dazu wird in dem Fall, in dem in dem Schritt S1206 festgestellt wird, dass ein Frame mit der Kommunikationskanalnummer der automatischen Variablen CHANNEL und der Frame-ID der automatischen Variablen FRAME nicht zu der Übertragungsframetabelle 141 hinzugefügt wurde (NEIN), der Schritt S1206 von dem Schritt S1207 gefolgt, in dem „1“ zu jeder der automatischen Variablen CHANNEL und der automatischen Variablen CHANNEL in der Übertragungsframeüberwachungstabelle 143 hinzugefügt wird; dann wird der Schritt S1207 von dem Schritt S1210 gefolgt.
  • Im Schritt S1210 wird bestimmt, ob der Zählerwert jeder der automatischen Variablen CHANNEL und der automatischen Variablen FRAME in der Übertragungsframetabelle 141 gleich oder größer als die Übertragungsframeüberwachungsfrist 1542C ist oder nicht; in dem Fall, in dem der Wert des Zählers in der Übertragungsframe-Überwachungstabelle 143 eines Frames, der die Kommunikationskanalnummer der automatischen Variablen CHANNEL und die Frame-ID der automatischen Variablen FRAME aufweist, gleich oder größer als der Wert der entsprechenden Übertragungsframe-Überwachungsfrist 1542C (JA) ist, folgt auf den Schritt S1210 der Schritt S1211, in dem unter Bezugnahme auf die Übertragungsabschluss-Benachrichtigungsmodul-ID 1542D das Programmmodul der höheren Verarbeitungshierarchie zur Bekanntgabe des Übertragungszeitablaufs bestimmt wird. Im Schritt S1212 wird die Daten-ID als Parameter an die Zeitüberschreitungsverarbeitung eines Frames der automatischen Variablen CHANNEL und der automatischen Variablen FRAME übertragen, das heißt an eine Frameübertragungszeitüberschreitungsverarbeitung mit höherer Verarbeitungshierarchie, um die Zeitüberschreitung der Datenübertragung zu melden.
  • Wenn dagegen im Schritt S1210 festgestellt wird, dass der Wert des Zählers in der Übertragungsframe-Überwachungstabelle 143 eines Frames mit der Kommunikationskanalnummer der automatischen Variablen CHANNEL und der Frame-ID der automatischen Variablen FRAME kleiner ist als der Wert der entsprechenden Übertragungsframe-Überwachungsfrist 1542C (NEIN), folgt auf den Schritt S1210 der Schritt S1213. Wenn auf den Schritt S1210 oder den Schritt S1212 der Schritt S1213 folgt, wird der automatischen Variablen FRAME im Schritt S1213 eine „1“ hinzugefügt; dann wird der Schritt S1203 wieder aufgenommen, und die Überwachungsverarbeitung wird auf den nächsten Übertragungsframe angewendet.
  • Die vorgenannte Steuerungsverarbeitung 155 empfängt Daten, die durch eine Daten-ID unter Verwendung der Kanalabstraktionsverarbeitung 153 unterschieden werden, und führt dann eine Steuerungsverarbeitung unter Verwendung dieser Daten durch; in dem Fall, in dem es erforderlich ist, das Verarbeitungsergebnis nach außen zu übertragen, überträgt die Steuerungsverarbeitung 155 die Daten-ID und Daten über das Verarbeitungsergebnis an die Übertragungsverarbeitung der Kanalabstraktionsverarbeitung 153, um die Übertragung durchzuführen.
  • 18 ist ein erläuterndes Diagramm, das beispielhaft den Inhalt von kommunikationsbezogenen Datenstücken in der Steuerungsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt; die kommunikationsbezogenen Inhalte der Steuerdaten 156, auf die sich die Steuerungsverarbeitung 155 bezieht, sind beispielhaft dargestellt. In 18 werden in Ausführungsform 1 als die Steuerdaten 156 eine Sendedatenanordnungstabelle 1561, ein Sendeteil-Datenanfangswert 1562, eine Empfangsdatenanordnungstabelle 1563 und ein Empfangsteil-Datenanfangswert 1564 erstellt.
  • Die Übertragungsdatenanordnungstabelle 1561 ist eine Zuordnungstabelle zwischen den an die Übertragungsverarbeitung in der Kanalabstraktionsverarbeitung 153 zu übertragenden Daten und jeder der jeweiligen Anordnungen verschiedener Arten von Datenstücken, von denen mindestens eines in den vorstehenden Daten angeordnet ist; die Übertragungsdatenanordnungstabelle 1561 wird auf der Grundlage der Kommunikationsanfragespezifikation der ECU 1 erstellt. Die an die Kanalabstraktionsverarbeitung 153 zu übertragenden Daten liegen im Allgemeinen in Form einer Bytefolge vor; in einigen Fällen können weitere fragmentierte Übertragungsdaten „0“-Anordnung 15610, Übertragungsdaten „1“-Anordnung 15611, ... und Übertragungsdaten „N“-Anordnung 1561N in der Bytefolge angeordnet sein. Zum Beispiel speichert die Übertragungsdaten-„0“-Anordnung 15610, dass die an die Übertragungsverarbeitung in der Kanalabstraktionsverarbeitung 153 zu übertragenden Daten an welcher Bitposition des Kopfes angeordnet sind und wie viele Bits in den Daten enthalten sind.
  • Der Initialwert 1562 für die Daten des Übertragungsteils speichert einen Initialwert 15620 für die Daten des Übertragungsteils „0“, einen Initialwert 15621 für die Daten des Übertragungsteils „1“, ..., und einen Initialwert 1562N für die Daten des Übertragungsteils „N“.
  • Wie bei der Übertragungsdatenanordnungstabelle 1561 ist die Empfangsdatenanordnungstabelle 1563 eine Zuordnungstabelle zwischen Daten, die von der Kanalabstraktionsverarbeitung 153 während der Datenempfangsverarbeitung zu übertragen sind, und jeder der Empfangsdaten-„0“-Anordnung 15630, der Empfangsdaten-„1“-Anordnung 15631, ... und der Empfangsdaten-„N“-Anordnung 1563N, von denen mindestens eine in den vorhergehenden Daten angeordnet ist; die Empfangsdatenanordnungstabelle 1563 auf der Grundlage der Kommunikationsanfragespezifikation der ECU 1 erstellt wird.
  • Der Anfangswert 1564 für die Sendedaten speichert einen Anfangswert 15640 für die Empfangsdaten „0“, einen Anfangswert 15641 für die Empfangsdaten „1“, ... und einen Anfangswert 1564N für die Empfangsdaten „N“ jedes der Empfangsdatenstücke in der Empfangsdatenanordnungstabelle 1563.
  • Jede der bis ist ein Flussdiagramm, das beispielhaft die Hauptverarbeitungsinhalte der Steuerungsverarbeitung 155 darstellt. Nachfolgend werden die Verarbeitungsinhalte der Steuerungsverarbeitung 155 anhand des in den 19 bis 25 dargestellten Flussdiagramms erläutert.
  • 19 ist ein Flussdiagramm, das beispielhaft eine Prozedur der Initialisierungsverarbeitung bei der Steuerungsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt. In 19 werden im Schritt S1301 die Anfangswerte der Sendeteil-Daten 1562 auf die jeweiligen Sendeteil-Datenstücke 14A gesetzt, die in der vorhergehenden 2 dargestellt sind; im Schritt S1302 werden die Anfangswerte der Empfangsteil-Daten 1564 auf die jeweiligen Empfangsteil-Datenstücke 14B gesetzt, die in 2 dargestellt sind.
  • Als nächstes wird im Schritt S1303 das Element jeder der Daten-IDs in der Übertragungsabschluss-Flaggentabelle 145 auf „TRUE“ (RICHTIG) initialisiert; im Schritt S1304 wird das Element jeder der Daten-IDs in der EmpfangsbenachrichtigungsFlaggentabelle 146 auf „FALSE“ initialisiert. Als nächstes wird im Schritt S1305 das Element jeder der Daten-IDs in der Sendezeitüberschreitungs-Flaggentabelle 147 auf „FALSE“ (FALSCH) initialisiert; im Schritt S1306 wird das Element jeder der Daten-IDs in der Empfangszeitüberschreitungs-Flaggentabelle 148 auf „FALSE“ initialisiert. Im Schritt S1307 wird das Element jeder der Daten-IDs in der Sendeanforderungsflaggentabelle 149 auf „FALSE“ initialisiert. Falls erforderlich, kann die Einstellung oder Initialisierung für den periodischen Aufruf der in der nachstehenden 25 dargestellten periodischen Verarbeitung innerhalb der Verarbeitung in 19 durchgeführt werden.
  • 20 ist ein Flussdiagramm, das beispielhaft ein Verfahren der Datenempfangsverarbeitung in der Steuerungsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt; die Datenempfangsverarbeitung empfängt eine Daten-ID und Daten als Parameter aus dem Schritt S705 für die Empfangsverarbeitung in der vorangehenden Kanalabstraktionsverarbeitung 153 und wird dann aufgerufen. In der in 20 dargestellten Datenempfangsverarbeitung der Steuerungsverarbeitung 155 werden die übertragenen Empfangsdaten im Schritt S1401 weiter an den Empfangsdatenpuffer 14D übertragen; im Schritt S1402 wird das Element der Daten-ID in der Übertragungsabschluss-Flaggentabelle 145 auf „TRUE“ gesetzt; als nächstes wird im Schritt S1403 das Element der Daten-ID in der Empfangszeitüberschreitungs-Flaggentabelle 148 auf „FALSE“ gesetzt; dann wird die Verarbeitung beendet.
  • 21 ist ein Flussdiagramm, das beispielhaft eine Prozedur der Datenübertragungsverarbeitung der Steuerungsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt. In 21 wird im Schritt S1501 eine automatische Variable DATA ID auf „0“ initialisiert, und es wird im Schritt S1502 bestimmt, ob das Element der automatischen Variablen DATA ID in der Übertragungsanforderungsflaggentabelle 149 „TRUE“ ist oder nicht; in dem Fall, in dem das Element der automatischen Variablen DATA ID „TRUE“ (JA) ist, das heißt in dem Fall, in dem eine Übertragung angefordert wird, folgt dem Schritt S1502 der Schritt S1503. Im Schritt S1503 wird unter Bezugnahme auf die Übertragungsteildaten 14A und das Element der automatischen Variablen DATA ID in der Übertragungsdatenanordnungstabelle 1561 der in den Übertragungsteildaten 14A gespeicherte Inhalt entsprechend der automatischen Variablen DATA ID in den Übertragungsdatenpuffer 14C der automatischen Variablen DATA_ID geschrieben, so dass der Übertragungsdatenpuffer 14C aktualisiert wird.
  • Als nächstes wird im Schritt S1504, nachdem die automatische Variable DATA ID und der Inhalt des Übertragungsdatenpuffers 14C als Parameter an die Übertragungsverarbeitung der Kanalabstraktionsverarbeitung 153 übertragen wurden, so dass die Übertragungsverarbeitung der Kanalabstraktionsverarbeitung 153 aufgerufen wird, oder in dem Fall, in dem im Schritt S1502 festgestellt wird, dass das Element der automatischen Variable DATA_ID in der Übertragungsanforderungsflaggentabelle 149 nicht „TRUE“, sondern „FALSE“ (NEIN) ist, das heißt, in dem Fall, dass die Übertragung nicht angefordert wird, wird im Schritt S1505 zur automatischen Variablen DATA ID eine „1“ hinzugefügt; dann folgt auf den Schritt S1505 der Schritt S1506. Im Schritt S1506 wird bestimmt, ob die automatische Variable DATA_ID gleich der Gesamtzahl der Übertragungsdatenstücke ist oder nicht; wenn die automatische Variable DATA ID kleiner ist als die Gesamtzahl der Übertragungsdatenstücke (NEIN), wird der Schritt S1502 bei der nächsten automatischen Variable DATA_ID fortgesetzt; wenn die automatische Variable DATA_ID gleich der Gesamtzahl der Übertragungsdatenstücke ist (JA), wird die Verarbeitung beendet.
  • 22 ist ein Flussdiagramm, das beispielhaft eine Prozedur der Datenübertragungs-Abschlussverarbeitung der Steuerungsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt; die Datenübertragungs-Abschlussverarbeitung empfängt eine Daten-ID als einen Parameter von dem Schritt S904 für die Übertragungs-Abschlussverarbeitung der Kanalabstraktionsverarbeitung 153, um aufgerufen zu werden. In der Datenübertragungsabschlussverarbeitung der in 22 dargestellten Steuerungsverarbeitung 155 wird das Element der Daten-ID in der Übertragungsabschlussflaggentabelle 145 im Schritt S1601 auf „TRUE“ gesetzt; als nächstes wird im Schritt S1602 das Element der Daten-ID in der Übertragungszeitüberschreitungsflaggentabelle 147 auf „FALSE“ gesetzt; dann wird die Verarbeitung beendet.
  • 23 ist ein Flussdiagramm, das beispielhaft ein Verfahren der Datenempfangs-Timeout-Verarbeitung in der Steuerungsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt. Die Daten-ID als Parameter wird vom Schritt S1112 für die Frameempfangsüberwachungsverarbeitung der Kanalabstraktionsverarbeitung 153 an die Datenempfangszeitüberschreitungsverarbeitung der Steuerungsverarbeitung 155 übertragen, so dass die Datenempfangszeitüberschreitungsverarbeitung aufgerufen wird. Im Schritt S1701 wird das Element der Daten-ID in der Empfangs-Timeout-Flag-Tabelle 148 auf „TRUE“ gesetzt; dann wird die Verarbeitung beendet. Es kann zugelassen werden, dass die Verarbeitung, die beim Auftreten einer Zeitüberschreitung beim Datenempfang für eine bestimmte Daten-ID sofort erfolgen muss, in dieser Verarbeitung durchgeführt wird.
  • 24 ist ein Flussdiagramm, das beispielhaft eine Prozedur der Datenübertragungs-Timeout-Verarbeitung der Steuerungsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt; die Datenübertragungs-Timeout-Verarbeitung empfängt eine Daten-ID als einen Parameter von dem Schritt S1212 für die Frameübertragungsüberwachungsverarbeitung der Kanalabstraktionsverarbeitung 153, um aufgerufen zu werden. In der Datenübertragungs-Timeout-Verarbeitung der in 24 dargestellten Steuerungsverarbeitung 155 wird das Element der Daten-ID in der Übertragungs-Timeout-Flag-Tabelle 147 im Schritt S1801 auf „TRUE“ gesetzt; dann wird die Verarbeitung beendet. Es kann zugelassen werden, dass die Verarbeitung, die beim Auftreten einer Zeitüberschreitung bei der Datenübertragung einer bestimmten Daten-ID sofort erfolgen muss, in dieser Verarbeitung durchgeführt wird.
  • 25 ist ein Flussdiagramm, das beispielhaft ein Verfahren der periodischen Verarbeitung der Steuerungsverarbeitung in dem elektronischen Steuersystem gemäß Ausführungsform 1 darstellt; die periodische Verarbeitung der Steuerungsverarbeitung 155, die periodisch durch Verwendung eines Schedulers eines Betriebssystems, des Zeitgebers 18 oder dergleichen aufgerufen wird, ist dargestellt. Die Aufrufdauer wird so festgelegt, dass sie weder zu lang noch zu kurz für eine erforderliche Reaktionszeit der Steuerungsverarbeitung 155 ist. Jedes Mal, wenn sie aufgerufen wird, überträgt die periodische Verarbeitung der Steuerungsverarbeitung 155 den Inhalt des Empfangsdatenpuffers 14D zu den Empfangsteil-Daten 14B für jede Daten-ID, mit der der Empfang neu aufgetreten ist; die steuerungsbezogene Verarbeitung wird auf der Grundlage der aktualisierten Empfangsteil-Daten 14B ausgeführt; es wird der Übertragungsdatenpuffer 14C der Daten-ID aktualisiert, die den durch die Ausführung der steuerungsbezogenen Verarbeitung aktualisierten Übertragungsteil-Daten 14A entspricht; dann wird die Datenübertragungsverarbeitung aufgerufen.
  • In 25 wird die automatische Variable DATA_ID im Schritt S1901 auf „0“ initialisiert, und im Schritt S1902 wird bestimmt, ob das Element der DATA_ID in der Empfangszeitüberschreitungs-Flaggentabelle 148 „TRUE“ ist oder nicht. In dem Fall, in dem das Element der DATA_ID in der Empfangszeitüberschreitungs-Flaggentabelle 148 „TRUE“ (JA) ist, das heißt in dem Fall, in dem eine Empfangszeitüberschreitung aufgetreten ist, wird der Inhalt des Empfangsdatenpuffers 14D der DATA_ID nicht in die Empfangsteildaten 14B übertragen; stattdessen wird in dem Schritt S1905 eine „1“ zu der DATA_ID hinzugefügt.
  • Dagegen wird im Schritt S1902 festgestellt, dass das Element der DATA_ID in der Empfangszeitüberschreitungs-Flaggentabelle 148 nicht „TRUE“, sondern „FALSE“ (NEIN) ist, das heißt, in dem Fall, in dem keine Empfangszeitüberschreitung festgestellt wurde, folgt auf den Schritt S1902 der Schritt S1903, in dem festgestellt wird, ob das Element der DATA_ID in der Empfangsmeldungs-Flaggentabelle 146 „TRUE“ (RICHTIG) ist oder nicht; in dem Fall, in dem in dem Schritt S1903 festgestellt wird, dass das Element der DATA_ID in der Empfangsmeldungs-Flaggentabelle 146 „TRUE“ (JA) ist, das heißt, in dem Fall, in dem keine neuen Daten empfangen wurden, folgt auf den Schritt S1903 der Schritt S1904, in dem unter Bezugnahme auf die Empfangsdatenanordnungstabelle 1563 der Inhalt des Empfangsdatenpuffers 14D der DATA_ID in die Empfangsteildaten 14B übertragen wird.
  • Danach wird im Schritt S1904 der Inhalt des Empfangsdatenpuffers 14D in die Empfangsteildaten 14B übertragen oder für den Fall, dass im Schritt S1903 festgestellt wird, dass das Element der DATA_ID in der Empfangsmeldungsflaggentabelle 146 nicht „TRUE“ sondern „FALSE“ (NEIN) ist, das heißt für den Fall, dass keine neuen Daten empfangen wurden, wird im Schritt S1905 eine „1“ zur DATA_ID hinzugefügt. Anschließend wird im Schritt S1906 festgestellt, ob die DATA_ID gleich der Gesamtzahl der Empfangsdaten ist oder nicht; ist die DATA_ID kleiner als die Gesamtzahl der Empfangsdaten (NEIN), wird der Schritt S1902 mit der nächsten DATA_ID fortgesetzt. Wenn im Schritt S1906 festgestellt wird, dass die DATA_ID die Gesamtzahl der Empfangsdatenstücke erreicht hat (JA), folgt auf den Schritt S1906 der Schritt S1907, in dem die steuerungsbezogene Verarbeitung ausgeführt wird; dann wird die Verarbeitung beendet, nachdem die Datenübertragungsverarbeitung im Schritt S1908 ausgeführt wurde.
  • 26 ist ein Flussdiagramm, das beispielhaft ein Verfahren der steuerungsbezogenen Verarbeitung der Steuerungsverarbeitung in dem elektronischen Steuerungssystem gemäß Ausführungsform 1 darstellt; die steuerungsbezogene Verarbeitung wird durch den Schritt S1907 für die vorangehende periodische Verarbeitung der Steuerungsverarbeitung 155 aufgerufen. In der in 26 dargestellten steuerungsbezogenen Verarbeitung der Steuerungsverarbeitung 155 wird im Schritt S2001 ein Steuerzielwert auf der Grundlage der durch die periodische Verarbeitung aktualisierten Empfangs-Teil-Daten 14B, eines separat gelesenen Sensoreingangswertes und dergleichen berechnet; im Schritt S2002 werden die Sende-Teil-Daten 14A aktualisiert, wie es erforderlich sein kann. Als nächstes wird im Schritt S2003, um die aktualisierten Inhalte zu übertragen, das Element der Übertragungsanforderungsflaggentabelle 149, das der Daten-ID entspricht, die die aktualisierten Übertragungsteil-Daten 14A umfasst, auf „TRUE“ gesetzt; dann wird die Verarbeitung beendet.
  • In jeder der 2 bis 26 hat sich die vorstehende Erläuterung auf die Kommunikationsfunktionen beschränkt; jedoch kann die Konfiguration auch in dem Fall, in dem andere Funktionen als die Kommunikation behandelt werden, beispielsweise auch in dem Fall, in dem eine Sensorspannung oder ein Wert eines digitalen IO von dem IO 16 gelesen wird, aus separaten Verarbeitungselementen bestehen, das heißt, Hardwareabstraktionsverarbeitung, Kanalabstraktionsverarbeitung (das heißt die eines A/D-Wandlers, der mit Sensorvorrichtungen und Eingangspins des digitalen IO zu verbinden ist) und Steuerverarbeitung, wie es bei den jeweiligen Empfangsverarbeitungselementen in den 2 bis 26 der Fall ist.
  • Das vorstehende elektronische Steuersystem gemäß Ausführungsform 1 ist mit mindestens einer CPU zur Ausführung eines Steuerprogramms, das mindestens eine Verarbeitungshierarchie umfasst, einer sekundären Speichervorrichtung zum Speichern des Steuerprogramms und einem RAM, der so konfiguriert ist, dass er in der Lage ist, Daten für das Steuerprogramm zu speichern und zu lesen, versehen; ein elektronisches Steuersystem realisiert wurde, das so konfiguriert ist, dass, wenn das Verhalten des elektronischen Steuersystems durch Kommunikation mit einer Testvorrichtung getestet wird, die Anforderungsdaten für eine Kommunikation erzeugt, die der Verarbeitung in einem auszuführenden Testprogramm entspricht, während die Übertragungsrichtung der Kommunikation in deren Empfangsrichtung geändert wird und die Empfangsrichtung der Kommunikation in deren Übertragungsrichtung geändert wird, die Anforderungsdaten für die Kommunikation, die der Verarbeitung in dem auszuführenden Steuerprogramm entspricht, erzeugt werden, ohne zwischen der Übertragungsrichtung und der Empfangsrichtung der Kommunikation geändert zu werden.
  • Nachfolgend wird die in 1 dargestellte Testvorrichtung 4 erläutert. In 1 ist ein Terminal 5 als Haupteingabe-/Ausgabe-Terminal mit einem IO 41 verbunden; die Testvorrichtung 4 umfasst eine CPU 42, einen RAM 43, eine sekundäre Speichervorrichtung 44, einen Timer 45 und eine Kommunikation-IF 46. Die Testvorrichtung 4 ist über die Kommunikation-IF 46 und die Kommunikationsleitung 3 mit dem Steuergerät 1 verbunden.
  • Die Testvorrichtung 4 arbeitet als Steuereinheit, die ein Testprogramm ausführt. Es ist zulässig, dass die Testvorrichtung 4 ein MICON, ein SoC (System-on-a-Chip), ein PC (Computer) oder ähnliches ist, solange die entsprechenden Funktionen der vorgenannten Bestandteile der Testvorrichtung 4 vorhanden sind.
  • Die CPU 42 ist in einer Steuereinheit zur Steuerung der jeweiligen Einheiten der Testvorrichtung 4 enthalten. Die CPU 42 kann ein Testprogramm 440 ausführen, das in der sekundären Speichervorrichtung 44 gespeichert wird. Wenn während der Ausführung des Testprogramms 440 eine Unterbrechung auftritt, kann die CPU 42 eine der Unterbrechung entsprechende Verarbeitung durchführen. Die CPU 42 kann aus zwei oder mehr CPUs bestehen, solange auf den IO 41, den RAM 43, die sekundäre Speichervorrichtung 44, den Zeitgeber 45 und die Kommunikation-IF 46 zugegriffen werden kann. Der RAM 43 ist eine Speichereinheit, auf die die CPU 42 zugreifen kann und die Daten in einer wiederbeschreibbaren Weise speichert.
  • 27 ist ein erläuterndes Diagramm, das die jeweiligen Inhalte der Variablen darstellt, auf die ein Kommunikationsteil des Steuerprogramms im elektronischen Steuersystem gemäß Ausführungsform 1 zugreifen soll; die Inhalte der Variablen für den Kommunikationsteil des nachfolgend erwähnten Testprogramms 440, das im RAM 43 in Ausführungsform 1 gespeichert und aktualisiert werden soll, sind beispielhaft dargestellt. Die jeweiligen Variablentypen der Testprogrammvariablen 430 sind die gleichen wie die der Steuerprogrammvariablen 140 in 2; daher wird die detaillierte Erklärung dafür weggelassen.
  • Da es erforderlich ist, dass die Testvorrichtung 4 einen von der ECU 1 zu sendenden Kommunikationsframe empfängt und einen von der ECU 1 zu empfangenden Kommunikationsframe sendet, entsprechen die Übertragungsframetabelle 141, die Übertragungsframe-Überwachungstabelle 143, die Übertragungsabschluss-Flaggentabelle 145, die Übertragungszeitüberschreitungs-Flaggentabelle 147, die Übertragungsanforderungs-Flaggentabelle 149, die Übertragungsteil-Daten 14A, und der Sendedatenpuffer 14C, die sich auf die Übertragung der Steuerprogrammvariablen 140 beziehen, entsprechen einer Empfangsframetabelle 432, einer Empfangsframeüberwachungstabelle 434, einer Empfangsbenachrichtigungsflaggentabelle 436, einer Empfangszeitüberschreitungsflaggentabelle 438, einem Empfangsteildatenwert 43B bzw. einem Empfangsdatenpuffer 43D, die sich auf den Empfang der Testprogrammvariablen 430 der Testvorrichtung 4 beziehen.
  • Die Übertragungsframetabelle 431, die Übertragungsframe-Überwachungstabelle 433, die Übertragungsabschluss-Flaggentabelle 435, die Übertragungszeitüberschreitungs-Flaggentabelle 437, die Übertragungsanforderungs-Flaggentabelle 439, ein Übertragungsteil-Datenwert 43A und ein Übertragungsdatenpuffer 43C, die sich auf die Übertragung der Testprogrammvariablen 430 beziehen, entsprechen der Empfangsframetabelle 142, der Empfangsframe-Überwachungstabelle 144, der EmpfangsbenachrichtigungsFlaggentabelle 146, der Empfangs-Timeout-Flaggentabelle 148, den Empfangsteil-Daten 14B und dem Empfangsdatenpuffer 14D, die sich auf den Empfang der Testprogrammvariablen 140 der ECU 1 in 2.
  • Im Allgemeinen ist die sekundäre Speichervorrichtung 44 in 1 eine Speichereinheit, die Daten in einem Zustand speichert, in dem nur das Auslesen möglich ist. In diesem Zusammenhang kann die sekundäre Speichervorrichtung 44 jedoch eine Speichervorrichtung sein, wie beispielsweise ein EPROM, ein NOR-Flash-Speicher oder ein NAND-Flash-Speicher, der Daten nach einem bestimmten Verfahren neu schreiben kann. In dem Fall, in dem die CPU 42 das in der sekundären Speichervorrichtung 44 gespeicherte Testprogramm 440 nicht direkt unter Verwendung eines NAND-Flash-Speichers oder ähnlichem ausführen kann, kann es zulässig sein, dass der Inhalt des Testprogramms 440 von der sekundären Speichervorrichtung 44 in den RAM 43 übertragen wird und dann das Steuerprogramm 440 im RAM 43 ausgeführt wird.
  • 28 ist ein erläuterndes Diagramm, das beispielhaft den Inhalt des Kommunikationsteils des Testprogramms im elektronischen Steuersystem gemäß Ausführungsform 1 darstellt. In 28 sind die Hardwareabstraktionsverarbeitung 441, die Hardwareabstraktionsdaten 442, die Kanalabstraktionsverarbeitung 443, die Kanalabstraktionsdaten 444 und die Testdaten 446 im Testprogramm 440, das in der sekundären Speichervorrichtung 44 gespeichert werden soll, die gleichen wie die jeweiligen Verarbeitungselemente oder Datentypen der Hardwareabstraktionsverarbeitung 151, der Hardwareabstraktionsdaten 152, der Kanalabstraktionsverarbeitung 153, der Kanalabstraktionsdaten 154 und der Steuerdaten 156 im Steuerprogramm 150 in 3; daher wird die detaillierte Erklärung dafür weggelassen. Von den Inhalten der Testverarbeitung 445 in 28 werden die Teile, die sich von den Inhalten der Steuerverarbeitung 155 und den Steuerdaten 156 in 3 unterscheiden, später im Detail erläutert. Da es erforderlich ist, dass die Testvorrichtung 4 einen von der ECU 1 zu übertragenden Kommunikationsframe empfängt und einen von der ECU 1 zu empfangenden Kommunikationsframe überträgt, werden die Hardwareabstraktionsdaten 442, die Kanalabstraktionsdaten 444 und die Testdaten 446 so erstellt, dass die jeweiligen Übertragungen und Empfänge der Hardwareabstraktionsdaten 152, der Kanalabstraktionsdaten 154 und der Steuerdaten 156 des elektronischen Steuersystems 1 gegenseitig umgekehrt werden.
  • Sein Verhalten, die verstrichene Zeit zu messen, wird von der CPU 42 gestartet oder gestoppt, so dass der Zeitgeber 45 die CPU 42 über die verstrichene Zeit benachrichtigt. Ein spezielles Register, das im Zeitgeber 45 vorgesehen ist, wird von der CPU 42 gelesen, so dass die vom Zeitgeber 45 gemessene verstrichene Zeit erhalten werden kann; wenn eine vorläufig eingestellte Zeit verstrichen ist, kann der Zeitgeber 45 der CPU 13 in einer unterbrechenden Weise mitteilen, dass die vorläufig eingestellte Zeit verstrichen ist. Der Kommunikation-IF 46 wird verwendet, wenn die Kommunikation mit anderen Steuergeräten durchgeführt wird; in Ausführungsform 1 wird der Kommunikation-IF 46 zur Durchführung der Kommunikation mit dem Steuergerät 1 verwendet. Dementsprechend wird die Kommunikation gemäß einer Spezifikation durchgeführt, die der des Steuergeräts 1 entspricht.
  • 29 ist ein Flussdiagramm, das beispielhaft ein Verfahren der periodischen Verarbeitung der Testverarbeitung in der Testvorrichtung gemäß Ausführungsform 1 darstellt; die periodische Verarbeitung wird periodisch durch Verwendung eines Schedulers eines Betriebssystems, des Zeitgebers 45 oder dergleichen aufgerufen. Die Aufrufperiode wird so festgelegt, dass sie weder zu lang noch zu kurz für eine für die Testverarbeitung 445 erforderliche Reaktionszeit ist. Wie in 29 dargestellt, wird im Schritt S210 jedes Mal, wenn die periodische Verarbeitung der Testverarbeitung 445 aufgerufen wird, die Testverarbeitung 445 aufgerufen.
  • 30 ist ein Flussdiagramm, das beispielhaft ein Verfahren der testbezogenen Verarbeitung in der Testverarbeitung in der Testvorrichtung gemäß Ausführungsform 1 darstellt; die testbezogene Verarbeitung wird periodisch durch den Schritt S2101 für die periodische Verarbeitung der Testverarbeitung 445 aufgerufen. In 30 wird in Ausführungsform 1 in der testbezogenen Verarbeitung der Testverarbeitung 445 die Übertragungsermittlungsverarbeitung der ECU 1 im Schritt S2201 aufgerufen, so dass die Übertragung von der ECU 1 ermittelt wird. Als nächstes wird im Schritt S2202 der an das Steuergerät 1 zu übertragende Datenwert in die Übertragungsteildaten 43A geschrieben, um die Übertragungsteildaten 43A zu aktualisieren; im Schritt S2203 wird das Element der Übertragungsanforderungsflaggentabelle 439, das der Daten-ID entspricht, die die aktualisierten Übertragungsteildaten 43A umfasst, auf „TRUE“ gesetzt; dann wird die Verarbeitung beendet. Der Übertragungsdatenwert von der ECU 1 für die in dieser Situation zu übertragenden Daten wird in der ECU 1-Übertragungsbestimmungsverarbeitung ermittelt, die in und nach der nächsten Periode aufgerufen wird.
  • 31 ist ein Flussdiagramm, das beispielhaft ein Verfahren der ECU-Übertragungsermittlungsverarbeitung in der Testverarbeitung in der Testvorrichtung gemäß Ausführungsform 1 darstellt; die ECU 1-Übertragungsermittlungsverarbeitung wird periodisch durch den Schritt S2101 für die testbezogene Verarbeitung der Testverarbeitung 445 aufgerufen. In der ECU 1-Übertragungsermittlungsverarbeitung in der in 31 dargestellten Testverarbeitung 445 werden zur Ermittlung der von der ECU 1 zu übertragenden Daten die von der Testverarbeitung 445 zu empfangenden Daten für jede Daten-ID ermittelt. In Ausführungsform 1 wird als Beispiel für die Ermittlung die automatische Variable DATA_ID im Schritt S2301 auf „0“ gesetzt, und im Schritt S2302 wird bestimmt, ob das Element der DATA_ID in der Empfangs-Timeout-Flag-Tabelle 438 „TRUE“ ist oder nicht.
  • Wenn im Schritt S2302 festgestellt wird, dass das Element der DATA_ID in der Empfangszeitüberschreitungs-Flaggentabelle 438 „TRUE“ (JA) ist, wird festgestellt, dass die vorstehenden Daten nicht innerhalb einer erwarteten Zeit empfangen wurden; dann folgt auf den Schritt S2302 der Schritt S2306, in dem die Testfehlerverarbeitung aufgerufen wird. Wird dagegen im Schritt S2302 festgestellt, dass das Element der DATA_ID in der Empfangszeitüberschreitungs-Flaggentabelle 438 nicht „TRUE“, sondern „FALSE“ (NEIN) ist, folgt auf den Schritt S2302 der Schritt S2303, in dem festgestellt wird, ob das Element der DATA_ID in der Empfangsmeldungs-Flaggentabelle 436 „TRUE“ ist oder nicht.
  • In dem Fall, in dem in dem Schritt S2303 festgestellt wird, dass das Element der DATA_ID in der Empfangsmeldungs-Flag-Tabelle 436 „TRUE“ (JA) ist, wird festgestellt, dass die vorstehenden Daten innerhalb der erwarteten Zeit empfangen wurden; dann folgt auf den Schritt S2303 der Schritt S2304, in dem unter Bezugnahme auf die EmpfangsdatenAnordnungstabelle der Inhalt des Empfangsdatenpuffers 43D der DATA_ID in die Empfangsteil-Daten 43B übertragen wird, und auf den Schritt S2304 folgt der Schritt S2305. Im Gegensatz dazu wird in dem Fall, in dem in dem Schritt S2303 festgestellt wird, dass das Element der DATA_ID in der Empfangsmeldungs-Flag-Tabelle 436 nicht „TRUE“, sondern „FALSE“ (NEIN) ist, der Schritt S2303 von dem Schritt S2307 gefolgt.
  • Im Schritt S2305 wird jeder der Werte der Empfangsteil-Datenstücke 43B mit einem entsprechenden erwarteten Wert verglichen; für den Fall, dass jeder der Werte der Empfangsteil-Datenstücke 43B nicht mit dem entsprechenden erwarteten Wert (NEIN) übereinstimmt, folgt auf den Schritt S2305 der Schritt S2306, in dem die Testfehlerverarbeitung aufgerufen wird; dann folgt auf den Schritt S2306 der Schritt S2307. Als Empfangsdatenanordnungstabelle für die Testvorrichtung 4 wird eine Empfangsdatenanordnungstabelle verwendet, die der Empfangsdatenanordnungstabelle 1563 in 18 für das Steuergerät 1 entspricht. Wenn auf den Schritt S2303 oder den Schritt S2306 der Schritt S2307 folgt, wird der DATA_ID eine „1“ hinzugefügt; dann folgt auf den Schritt S2307 der Schritt S2308. Das heißt, in dem Fall, in dem das Element der DATA_ID in der Empfangsmeldungs-Flag-Tabelle 436 „FALSE“ ist oder in dem Fall, in dem jeder der Werte der Empfangsdatenstücke 43B mit dem entsprechenden erwarteten Wert übereinstimmt, wird die nächste DATA_ID ermittelt, wenn die DATA_ID kleiner als die Gesamtzahl der Empfangsdatenstücke ist; dann folgt auf den Schritt S2307 der Schritt S2308.
  • Im Schritt S2308 wird festgestellt, ob die DATA ID die Gesamtzahl der Empfangsdatenstücke erreicht hat oder nicht; falls die DATA_ID die Gesamtzahl der Empfangsdatenstücke nicht erreicht hat (NEIN), wird der Schritt S2302 fortgesetzt; falls die DATA ID die Gesamtzahl der Sendedatenstücke erreicht hat (JA), wird die Verarbeitung beendet.
  • Die ECU 1-Übertragungsermittlungsverarbeitung ist nicht auf die vorgenannte beschränkt; wenn beispielsweise erwartet wird, dass die von der ECU 1 zu übertragenden Daten periodisch übertragen werden, kann auch der Zeitraum ermittelt werden. Im Gegensatz dazu kann in dem Fall, in dem festgestellt wird, ob das Steuergerät 1 die von der Testverarbeitung 445 gesendeten Daten korrekt empfängt oder nicht, zugelassen werden, dass zusätzlich Test-Sende-/Empfangsframe und Testdaten-IDs für das Steuergerät 1 und das Testgerät 4 definiert werden und dass festgestellt wird, ob die vom Steuergerät 1 empfangenen Daten mit der Testdaten-ID zurückgesendet werden und das Testgerät 4 die Daten mit der Testdaten-ID empfängt oder nicht.
  • Um festzustellen, ob die von der ECU 1 empfangenen Daten in jedem der Empfangsteil-Datenstücke 14B reflektiert werden oder nicht, kann es zulässig sein, dass im Vorfeld ein bekanntes Kommunikationsprotokoll, wie XCP (Universal-Kalibration-Protocol), eingerichtet wird, das es ermöglicht, dass die Testvorrichtung 4 jeden der Werte der Empfangsteil-Datenstücke 14B der ECU 1 durch Angabe der Adresse lesen kann, und dass jeder der Werte der Empfangsteil-Datenstücke 14B der ECU 1 durch XCP-Kommunikation gelesen wird, so dass die Feststellung durchgeführt wird.
  • 32 ist ein Flussdiagramm, das beispielhaft ein Verfahren der Testfehlerverarbeitung in der Testverarbeitung in der Testvorrichtung gemäß Ausführungsform 1 darstellt; in Ausführungsform 1 wird in dem Fall, in dem in der ECU 1-Übertragungsermittlungsverarbeitung in der Testverarbeitung 445, die in der vorangehenden 31 dargestellt ist, keine Daten innerhalb einer erwarteten Zeit empfangen werden oder in dem Fall, in dem von der ECU 1 empfangene Daten nicht mit einem erwarteten Wert übereinstimmen, die Testfehlerverarbeitung aufgerufen. In der Testfehlerverarbeitung der in 32 dargestellten Testverarbeitung 445 werden in dem Fall, in dem festgestellt wird, dass die Daten-ID, die den Aufruf der Verarbeitung verursacht hat, und die Empfangsteil-Daten 43B nicht miteinander übereinstimmen, der Empfangswert und der erwartete Wert in dem Schritt S2401 an das Terminal 5 ausgegeben; dann wird die Verarbeitung beendet.
  • Die vorstehend beschriebene Testvorrichtung für das elektronische Steuersystem gemäß Ausführungsform 1 ist ausgestattet mit
    mindestens eine CPU, die ein Testprogramm mit mindestens einer Verarbeitungshierarchie ausführt,
    ein sekundäres Speichermedium, das das Testprogramm speichert, und
    ein RAM, das so konfiguriert ist, dass es in der Lage ist, Daten für das Testprogramm zu speichern und zu lesen; eine Testvorrichtung realisiert worden ist, die so konfiguriert ist, dass, wenn das Verhalten eines elektronischen Steuersystems durch Kommunikation mit dem elektronischen Steuersystem getestet wird, das Anforderungsdaten für die Kommunikation entsprechend der Verarbeitung in einem auszuführenden Steuerprogramm erzeugt, ohne irgendeine Änderung zwischen der Übertragungsrichtung der Kommunikation und der Empfangsrichtung davon vorzunehmen, die Anforderungsdaten für die Kommunikation entsprechend der Verarbeitung in dem auszuführenden Testprogramm erzeugt werden, während die Übertragungsrichtung der Kommunikation in die Empfangsrichtung davon geändert wird und die Empfangsrichtung der Kommunikation in die Übertragungsrichtung davon geändert wird.
  • Das elektronische Steuersystem und die Testvorrichtung für das elektronische Steuersystem gemäß Ausführungsform 1 werden zum Testen des elektronischen Steuersystems gemäß Ausführungsform 1 verwendet. Das heißt, das Verfahren zum Testen des elektronischen Steuersystems gemäß Ausführungsform 1 ist dasjenige, bei dem das Verhalten des elektronischen Steuersystems basierend auf der Kommunikation zwischen dem elektronischen Steuersystem und der Testvorrichtung getestet wird; das elektronische Steuersystem ist ausgestattet mit
    mindestens eine CPU, die ein Steuerprogramm mit mindestens einer Verarbeitungshierarchie ausführt,
    eine sekundäre Speichereinrichtung, die das Steuerprogramm speichert, und
    einen Arbeitsspeicher, der so konfiguriert ist, dass er Daten für das Steuerprogramm speichern und lesen kann; das Testgerät ist ausgestattet mit
    mindestens eine CPU, die ein Testprogramm mit mindestens einer Verarbeitungshierarchie ausführt,
    ein sekundäres Speichermedium, das das Testprogramm speichert, und
    ein RAM, das so konfiguriert ist, dass es in der Lage ist, Daten für das Testprogramm zu speichern und zu lesen; es wurde ein Testverfahren für ein elektronisches Steuersystem verwirklicht, bei dem Anforderungsdaten für die Kommunikation, die der Verarbeitung in einem auszuführenden Steuerprogramm entsprechen, erzeugt werden, ohne dass darin irgendeine Änderung zwischen der Übertragungsrichtung der Kommunikation und der Empfangsrichtung derselben vorgenommen wird, und bei dem Anforderungsdaten für die Kommunikation, die der Verarbeitung in dem auszuführenden Testprogramm entsprechen, erzeugt werden, während die Übertragungsrichtung der Kommunikation in deren Empfangsrichtung geändert wird und die Empfangsrichtung der Kommunikation in deren Übertragungsrichtung geändert wird.
  • Wie oben beschrieben, sind in dem elektronischen Steuersystem und der Testvorrichtung gemäß Ausführungsform 1 die jeweiligen Verarbeitungselemente und -typen des Steuerprogramms 150 für das Steuergerät 1 und des Testprogramms 440 für die Testvorrichtung 4 einander gleich; die Hardwareabstraktionsdaten 152, die Kanalabstraktionsdaten 154 und die Steuerdaten 156 des Steuergeräts 1 werden entsprechend der Kommunikationsanfragespezifikation des Steuergeräts 1 erstellt; die Hardwareabstraktionsdaten 442, die Kanalabstraktionsdaten 444 und die Testdaten 446 des Testgeräts 4 werden durch Vertauschen der Übertragung mit dem Empfang der Kommunikationsanfragespezifikation des Steuergeräts 1 erstellt. Folglich kann das Erstellungsverfahren für die Hardwareabstraktionsdaten 442, die Kanalabstraktionsdaten 444 und die Testdaten 446 des Testgeräts 4 mit dem Erstellungsverfahren für die Hardwareabstraktionsdaten 152, die Kanalabstraktionsdaten 154 und die Steuerdaten 156 des Steuergeräts 1 integriert werden; daher kann das Testprogramm 440 für das Testgerät 4 durch eine solche minimal notwendige Änderung erstellt werden, dass die Übertragung der Kommunikationsanfragespezifikation des Steuergeräts 1 mit deren Empfang vertauscht wird, und eine Funktion (beispielsweise die Empfangszeitüberschreitungserkennungsfunktion) des Testgeräts 4 kann durch eine solche minimal notwendige Änderung erstellt werden, (beispielsweise die Empfangs-Timeout-Erkennungsfunktion) der Kanalabstraktionsverarbeitung 443 der Testvorrichtung 4 bei der Bestimmung des Tests verwendet werden.
  • Was das Steuerprogramm 150 des Steuergeräts 1 und das Testprogramm 440 des Testgeräts 4 betrifft, so ist eine Verringerung der Erstellungsstunden eher zu erwarten, da die jeweiligen Implementierungsarten der Verarbeitungselemente und die jeweiligen Arten von Datenstücken näher beieinander liegen; insbesondere wenn das Steuergerät 1 und das Testgerät 4 jeweils aus derselben Hardware bestehen und das Steuerprogramm 150 und das Testprogramm 440 für das Testgerät 4 jeweils dieselbe Sprache und Implementierung aufweisen, ist zu erwarten, dass der Umfang der Verringerung der Erstellungsstunden maximal wird. Da die vorliegende Offenbarung jedoch nicht von der Implementierung mit spezifischer Hardware und einer spezifischen Programmiersprache abhängt, kann es zulässig sein, dass die Programmiersprache für die Implementierung der jeweiligen Verarbeitungselemente des Testprogramms 440 sich von der Programmiersprache für die Implementierung der jeweiligen Verarbeitungselemente des Steuerprogramms 150 der ECU 1 unterscheidet.
  • In Ausführungsform 1 der vorliegenden Offenbarung ist jedes Steuerprogramm 150 des Steuergeräts 1 und das Testprogramm 440 in drei Verarbeitungshierarchien unterteilt; der Grad der Unterteilung der Verarbeitungshierarchie ist jedoch nicht darauf beschränkt. Beispielsweise kann es zulässig sein, dass jede Steuerungsverarbeitung 155 der ECU 1 und die Testverarbeitung 445 der Testvorrichtung 4 weiter unterteilt ist, so dass die jeweiligen Verarbeitungshierarchien für die Ausführung der Übertragungsdaten-Erzeugungsverarbeitung (der Schritt S1501), die in der Datenübertragungsverarbeitung durchzuführen ist, und der Empfangsdaten-Teilungsverarbeitung (der Schritt S1401), die in der Datenempfangsverarbeitung durchzuführen ist, vorgesehen sind.
  • Darüber hinaus werden in Ausführungsform 1 der vorliegenden Offenbarung die Hardwareabstraktionsdaten 152, die Kanalabstraktionsdaten 154 und die Steuerdaten 156 in der sekundären Speichervorrichtung 15 gespeichert, und die Hardwareabstraktionsdaten 442, die Kanalabstraktionsdaten 444 und die Testdaten 446 werden in der sekundären Speichervorrichtung 44 gespeichert; jede der Konfigurationen ist jedoch nicht darauf beschränkt. Beispielsweise kann es zulässig sein, dass in dem Fall, in dem die Übertragungsframedatenlänge 1542A, die Empfangsframeüberwachungsfrist 1543D und dergleichen von einer kommunizierenden externen ECU bestimmt werden und während der Kommunikation geändert werden müssen, der Speicherbereich für die Übertragungsframedatenlänge 1542A und die Empfangsframeüberwachungsfrist 1543D während der Kommunikation im RAM 14 gesichert wird und während der Kommunikation auf den Bereich im RAM 14 verwiesen wird. In diesem Fall kann beispielsweise zugelassen werden, dass die Anfangswerte der Übertragungsframe-Datenlänge 1542A und der Empfangsframe-Überwachungsfrist 1543D gespeichert werden, dass bei der Initialisierungsverarbeitung in 5 die Werte der Übertragungsframe-Datenlänge 1542A und der Empfangsframe-Überwachungsfrist 1543D in den entsprechenden Bereich des RAM übertragen werden, und dass, wenn das externe Steuergerät eine Änderung des Wertes meldet, der Bereich des RAM aktualisiert wird. Das gleiche Verfahren kann auch auf die Testvorrichtung angewendet werden.
  • Darüber hinaus kann es zulässig sein, dass sowohl für das MICON 12 als auch für die Testvorrichtung 4 ein SoC, ein PC oder ähnliches verwendet wird und als Prozess des Betriebssystems das Steuerprogramm 150 oder das Testprogramm 440 ausgeführt wird. In diesem Fall kann es zulässig sein, dass, wenn das Betriebssystem das Steuerprogramm 150 startet, der Inhalt des Steuerprogramms 150 von der sekundären Speichervorrichtung 15 zum RAM 14 übertragen wird, so dass das Steuerprogramm 150 im RAM 14 ausgeführt wird; alternativ kann es zulässig sein, dass, wenn das Betriebssystem das Testprogramm 440 startet, der Inhalt des Testprogramms 440 von der sekundären Speichervorrichtung 44 zum RAM 43 übertragen wird, so dass das Steuerprogramm 150 im RAM 14 ausgeführt wird.
  • Darüber hinaus wurde in Ausführungsform 1 der vorliegenden Offenbarung der Fall beschrieben, dass das Steuergerät 1 nur mit der Testvorrichtung 4 verbunden ist; die vorliegende Offenbarung ist jedoch nicht darauf beschränkt. Beispielsweise kann der Test auch dann, wenn die Testvorrichtung 4 mit zwei oder mehr Steuergeräten, die dem Steuergerät 1 ähneln, über die Kommunikationsleitung 3 verbunden ist, auf die gleiche Weise durchgeführt werden, indem so viele Hardwareabstraktionsdatenstücke 442 wie die Anzahl der zwei oder mehr Steuergeräte, so viele Kanalabstraktionsdatenstücke 444 wie die Anzahl der zwei oder mehr Steuergeräte und so viele Testdatenstücke 446 wie die Anzahl der zwei oder mehr Steuergeräte der Testvorrichtung 4 bereitgestellt werden und indem die in Ausführungsform 1 der vorliegenden Offenbarung erläuterten Mittel verwendet werden.
  • Obwohl die vorliegende Anwendung oben in Form verschiedener beispielhafter Ausführungsformen und Implementierungen beschrieben wird, ist zu verstehen, dass die verschiedenen Merkmale, Aspekte und Funktionen, die in einer oder mehreren der einzelnen Ausführungsformen beschrieben werden, in ihrer Anwendbarkeit auf die jeweilige Ausführungsform, mit der sie beschrieben werden, nicht beschränkt sind, sondern stattdessen allein oder in verschiedenen Kombinationen auf eine oder mehrere der Ausführungsformen angewendet werden können. Daher sind im Frame der in der vorliegenden Anmeldung offenbarten Technologie unendlich viele nicht näher erläuterte Ausführungsbeispiele denkbar. So gibt es beispielsweise Fälle, in denen mindestens ein Bestandteil geändert, hinzugefügt oder weggelassen wird.
  • 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 2011204069 [0009]
    • JP 2015204065 [0009]

Claims (6)

  1. Ein elektronisches Steuersystem umfassend: zumindest eine CPU (13), die ein Steuerprogramm (150) ausführt, das mindestens eine Verarbeitungshierarchie umfasst, eine sekundäre Speichervorrichtung (15), die das Steuerprogramm (150) speichert, und einen Arbeitsspeicher (14), das so konfiguriert ist, um Daten für das Steuerprogramm (150) zu speichern und zu lesen, wobei, wenn ein Verhalten des elektronischen Steuersystems (1) durch Kommunikation mit einer Testvorrichtung (4) getestet wird, die Anforderungsdaten für eine Kommunikation entsprechend einer Verarbeitung in einem auszuführenden Testprogramm (440) erzeugt, während eine Übertragungsrichtung der Kommunikation in eine Empfangsrichtung derselben geändert wird und die Empfangsrichtung der Kommunikation in die Übertragungsrichtung derselben geändert wird, Anforderungsdaten für die Kommunikation entsprechend einer Verarbeitung in dem auszuführenden Steuerprogramm (15) erzeugt werden, ohne dass zwischen der Übertragungsrichtung und der Empfangsrichtung der Kommunikation gewechselt wird.
  2. Elektronisches Steuersystem (1) nach Anspruch 1, wobei das Steuerprogramm (150) und das Testprogramm (440) jeweils die gleiche Verarbeitungshierarchie enthalten.
  3. Eine Elektronik-Steuersystem-Testvorrichtung (4), umfassend: zumindest eine CPU (42), die ein Testprogramm (440) ausführt, das mindestens eine Verarbeitungshierarchie umfasst, eine sekundäre Speichervorrichtung (44), die das Testprogramm (440) speichert, und einen Arbeitsspeicher, der so konfiguriert ist, um Daten für das Testprogramm (440) zu speichern und zu lesen, wobei, wenn ein Verhalten eines elektronischen Steuersystems (1) durch Kommunikation mit dem elektronischen Steuersystem (1) getestet wird, das Anforderungsdaten für eine Kommunikation entsprechend einer Verarbeitung in einem auszuführenden Steuerprogramm (150) erzeugt, ohne irgendeine Änderung zwischen einer Übertragungsrichtung der Kommunikation und einer Empfangsrichtung davon vorzunehmen, Anforderungsdaten für die Kommunikation entsprechend einer Verarbeitung in dem auszuführenden Testprogramm (440) erzeugt werden, während die Übertragungsrichtung der Kommunikation in die Empfangsrichtung davon geändert wird und die Empfangsrichtung der Kommunikation in die Übertragungsrichtung davon geändert wird.
  4. Elektronik-Steuersystem-Testvorrichtung (4) nach Anspruch 3, wobei das Steuerprogramm (150) und das Testprogramm (440) jeweils dieselbe Verarbeitungshierarchie enthalten.
  5. Ein elektronik-Steuersystem-Testverfahren, bei dem ein Verhalten eines elektronischen Steuersystems (1) auf der Grundlage einer Kommunikation zwischen dem elektronischen Steuersystem (1) und einer Testvorrichtung (4) getestet wird, wobei das elektronische Steuersystem (1) umfasst zumindest eine CPU (13), die ein Steuerprogramm (150) ausführt, das mindestens eine Verarbeitungshierarchie umfasst, eine sekundäre Speichervorrichtung (15), die das Steuerprogramm (150) speichert, und einen Arbeitsspeicher (14), der so konfiguriert ist, um Daten für das Steuerprogramm (150) zu speichern und zu lesen, wobei die Testvorrichtung (4) umfasst zumindest eine CPU (42), die ein Testprogramm (440) ausführt, das mindestens eine Verarbeitungshierarchie umfasst, eine sekundäre Speichervorrichtung (44), die das Testprogramm (440) speichert, und einen Arbeitsspeicher (43), der so konfiguriert ist, um Daten für das Testprogramm (440) zu speichern und zu lesen, wobei Anforderungsdaten für die Kommunikation entsprechend einer Verarbeitung in dem auszuführenden Steuerprogramm (150) erzeugt werden, ohne dass zwischen einer Übertragungsrichtung und einer Empfangsrichtung der Kommunikation gewechselt wird, und wobei Anforderungsdaten für die Kommunikation entsprechend einer Verarbeitung in dem auszuführenden Testprogramm (440) erzeugt werden, während die Übertragungsrichtung der Kommunikation in die Empfangsrichtung geändert wird und die Empfangsrichtung der Kommunikation in die Übertragungsrichtung davon geändert wird.
  6. Elektronik-Steuersystem-Testverfahren nach Anspruch 5, wobei das Steuerprogramm (150) und das Testprogramm (440) jeweils dieselbe Verarbeitungshierarchie umfassen.
DE102021214519.1A 2021-03-12 2021-12-16 Elektronisches steuersystem, testvorrichtung für elektronisches steuersystem und testverfahren für elektronisches steuersystem Pending DE102021214519A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021-039874 2021-03-12
JP2021039874A JP7072697B1 (ja) 2021-03-12 2021-03-12 電子制御装置、電子制御装置の試験装置、及び電子制御装置の試験方法

Publications (1)

Publication Number Publication Date
DE102021214519A1 true DE102021214519A1 (de) 2022-09-15

Family

ID=81654315

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021214519.1A Pending DE102021214519A1 (de) 2021-03-12 2021-12-16 Elektronisches steuersystem, testvorrichtung für elektronisches steuersystem und testverfahren für elektronisches steuersystem

Country Status (4)

Country Link
US (1) US20220291647A1 (de)
JP (1) JP7072697B1 (de)
CN (1) CN115079665A (de)
DE (1) DE102021214519A1 (de)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011204069A (ja) 2010-03-26 2011-10-13 Nec Corp テスト方法およびテスト仕様書テストデータ自動生成装置
JP2015204065A (ja) 2014-04-16 2015-11-16 株式会社日立製作所 テストケース生成装置及びテストケース生成方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101491260B1 (ko) * 2013-06-07 2015-02-06 현대자동차주식회사 자동차용 ecu 다중 진단 시스템 및 방법
JP6188895B1 (ja) * 2016-09-05 2017-08-30 三菱電機株式会社 車載制御プログラムの実行時データ取得方法および車載制御装置
EP3564691B1 (de) * 2017-01-25 2021-02-24 Mitsubishi Electric Corporation Testvorrichtung, testverfahren und programm
CN109298702A (zh) * 2017-07-24 2019-02-01 长城汽车股份有限公司 Ecu自动测试方法及系统
CN109753043A (zh) * 2017-11-06 2019-05-14 联合汽车电子有限公司 Can总线通信矩阵的测试装置及方法
JP2019122005A (ja) * 2018-01-11 2019-07-22 アンリツ株式会社 ビット誤り率測定装置及びビット誤り率測定方法
US10916073B2 (en) * 2018-05-01 2021-02-09 Ford Global Technologies, Llc Vehicle network data streaming system
US20210248288A1 (en) * 2018-07-19 2021-08-12 Hitachi Automotive Systems, Ltd. Simulation device, simulation method, and ecu device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011204069A (ja) 2010-03-26 2011-10-13 Nec Corp テスト方法およびテスト仕様書テストデータ自動生成装置
JP2015204065A (ja) 2014-04-16 2015-11-16 株式会社日立製作所 テストケース生成装置及びテストケース生成方法

Also Published As

Publication number Publication date
JP7072697B1 (ja) 2022-05-20
CN115079665A (zh) 2022-09-20
JP2022139468A (ja) 2022-09-26
US20220291647A1 (en) 2022-09-15

Similar Documents

Publication Publication Date Title
DE102017201789B4 (de) Verfahren zum Betrieb eines Kraftfahrzeugs und Kraftfahrzeug
DE102015214915B4 (de) Flexibles Scheduling-Verfahren und Scheduling-Vorrichtung bei einer LIN-Kommunikation
DE102012224342A1 (de) Vorrichtung und verfahren zur leistungssteuerung für die v2x- kommunikation
DE112015006067T5 (de) Intelligentes Funktionsmodul und speicherprogrammierbares Steuerungssystem
EP2957075B1 (de) Master-busgerät für einen fahrzeugkommunikationsbus eines kraftwagens
EP1417469A2 (de) Kommunikationsverfahren und kommunikationsmodul
DE102018110018A1 (de) Verfahren zum Bereitstellen eines integrierten Prozesses für die Steuergerätentwicklung und Simulationsvorrichtung für die Steuergerätentwicklung
DE102012025033A1 (de) Ferndiagnose eines Fehlerzustands in einem Kraftfahrzeug mittels einer fahrzeugexternen Serveranordnung
DE102021214519A1 (de) Elektronisches steuersystem, testvorrichtung für elektronisches steuersystem und testverfahren für elektronisches steuersystem
DE112013007676T5 (de) Informationsvorrichtung
WO2005022382A2 (de) Verfahren zur installation einer programmkomponente
DE102010042199A1 (de) Verfahren zum Betreiben eines Feldbus-Interface sowie Computerprogrammprodukt
EP3705993B1 (de) System und verfahren zum auffinden und identifizieren von rechenknoten in einem netzwerk
DE102018123563B4 (de) Verfahren zur Zwischenkernkommunikation in einem Mehrkernprozessor
DE102012007321A1 (de) Verfahren zum Betreiben eines Diagnosesystems und Diagnosesystem
DE102021107787A1 (de) Dynamische Dienstqualitätssteuerung für Kraftfahrzeug-Ethernet
DE102019120519A1 (de) Computer-implementiertes Verfahren und Computerprogrammprodukt zum Test von realen oder virtuellen Steuergeräten
EP4078414B1 (de) Überwachungseinheit und verfahren zur überwachung der von treibern einer gerätezugriffseinrichtung belegten ressourcen
DE102018219852A1 (de) Verfahren und Vorrichtung zum Ermitteln einer Systemkonfiguration für ein verteiltes System
DE102008063276A1 (de) Verfahren zum Einspielen von Updates in ein System
EP1697846A2 (de) Einrichtung und verfahren zur steuerung und kontrolle von überwachungsdetektoren in einem knoten eines clustersystems
EP2284632B1 (de) Verfahren zur Steuerung eines Datenaustauschs zwischen einem Fahrzeugdiagnosesystem und in Fahrzeugen angeordneten Steuerungsgeräten, Steuerungsprogramm und Fahrzeugdiagnosesystem
DE102016206774A1 (de) Verfahren zum Betreiben eines Kommunikationssystems für ein Fahrzeug und Kommunikationssystem
WO2002003193A2 (de) Elektronisches system zur entwicklung von software und ein verfahren zum zugriff auf interne daten der software
EP1618726B1 (de) Automatisierungssystem mit automatischer bereitstellung von diagnoseinformationen

Legal Events

Date Code Title Description
R012 Request for examination validly filed