DE69927651T2 - Steuerungseinrichtung für Fahrzeuge mit objektorientiertem Programmdesign - Google Patents

Steuerungseinrichtung für Fahrzeuge mit objektorientiertem Programmdesign Download PDF

Info

Publication number
DE69927651T2
DE69927651T2 DE69927651T DE69927651T DE69927651T2 DE 69927651 T2 DE69927651 T2 DE 69927651T2 DE 69927651 T DE69927651 T DE 69927651T DE 69927651 T DE69927651 T DE 69927651T DE 69927651 T2 DE69927651 T2 DE 69927651T2
Authority
DE
Germany
Prior art keywords
layer
hardware
control
injector
program
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.)
Expired - Lifetime
Application number
DE69927651T
Other languages
English (en)
Other versions
DE69927651D1 (de
Inventor
Akihito Kariya-shi Iwai
Shigeru Kariya-shi Kajioka
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Publication of DE69927651D1 publication Critical patent/DE69927651D1/de
Application granted granted Critical
Publication of DE69927651T2 publication Critical patent/DE69927651T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/26Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23188Software independent and dependent of hardware

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Mechanical Engineering (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)
  • Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
  • Stored Programmes (AREA)

Description

  • Die vorliegende Erfindung bezieht sich auf eine Steuereinrichtung für Fahrzeuge. Genauer gesagt, bezieht sich die vorliegende Erfindung auf eine Steuereinrichtung für Fahrzeuge, welche in der Lage ist eine Programmentwicklungs-Arbeitslast stark zu reduzieren, um eine Wiederverwendbarkeit von Software sogar dann zu verbessern wenn Hardwareteile, wie beispielsweise Sensoren, Stellglieder, Antriebsschaltungen und ein Mikrocomputer, ausgetauscht werden, indem ein Steuerprogramm in einer Schichtform bereitgestellt wird, und ein objektorientiertes Entwicklungsverfahren adoptiert wird.
  • Eine herkömmliche Steuereinrichtung für Fahrzeuge hat eine Software oder Programme wie in 9A und 9B gezeigt. Die Software der Steuereinrichtung bestimmt eine Sequenz an Programmen entlang eines wie in 9A gezeigten Verarbeitungsablaufes basierend auf der vorgesehenen Verarbeitung, wie beispielsweise eine Kraftstoffeinspritz-Verarbeitung. Im speziellen ist bei einem Kraftstoffeinspritz-Steuerprogramm für eine Maschinensteuerung das Programm beispielsweise auf die folgende Weise aufgebaut, und zwar basierend auf einer Verarbeitungssequenz zum Einspritzen von Kraftstoff in einer für die vorliegenden Maschinenbedingungen optimalsten Menge.
  • Das heißt, dass, wie in 9A gezeigt, bei einem Benutzerprogramm, welches ein I/O-Programm zum Steuern einer CPU (Hardware) enthält, eine Basisroutine ausgeführt wird. Bei der Basisroutine wird eine Basis-Einspritzmenge derart berechnet, um mit der vorliegenden Betriebsbedingung basierend auf Parameter übereinzustimmen, wie beispielsweise eine Maschinenumdrehungsgeschwindigkeit (Basis- Einspritzmengenberechnung), wird eine Basis-Ansteuerungs-Zeitperiode für eine Einspritzer-Antriebsschaltung in Übereinstimmung mit der Basis-Einspritzmenge berechnet, wird eine unwirksame Einspritz-Zeitperiode in Abhängigkeit von den Hardwareeigenschaften des Einspritzers (Kraftstoffeinspritzventil) berechnet (unwirksame Einspritzmengenberechnung), und wird eine letztendliche Ansteuerungs-Zeitperiode für die Einspritzer-Antriebsschaltung berechnet (Ansteuerungs-Zeitperioden-Berechnung), indem die unwirksame Einspritz-Zeitperiode zur Basis-Ansteuerungs-Zeitperiode addiert wird. Eine Kraftstoffeinspritzung wird während der Ansteuerungs-Zeitperiode in einer Unterbrechungsroutine bei jeder vorbestimmten Maschinenumdrehungsposition (Kurbelwellen-Umdrehungsposition) ausgeführt.
  • Beim Entwurf der Programmsequenz ist es erforderlich die Verarbeitungssequenz in Reihenfolge zu bestimmen, welche eine Berechnung der Basis-Einspritzmenge, Hinzufügung der unwirksamen Einspritz-Periode und Ausführung der Einspritzer-Ansteuerung abdeckt, während die Hardwareeigenschaften des Mikrocomputers, der Sensoren, der Einspritzer und dergleichen berücksichtigt werden. Wenn es notwendig ist das Programm teilweise zu ändern, muss nicht nur der entsprechende Programmteil geändert werden, sondern es muss ebenfalls ein weiterer Programmteil überprüft und wenn notwendig geändert werden. Daraus resultierend kann das Steuerprogramm nicht für weitere Maschinentypen wiederverwendet werden.
  • Das heißt, dass, wenn das Basis-Einspritzmengen-Betriebsprogramm zu ändern ist, ebenfalls das unwirksame Einspritzmengen-Betriebsprogramm und das Ansteuerungsperioden-Betriebsprogramm zu überprüfen und zu ändern sind, weil das Ende des Programms nicht klar ist. Ferner ist, wenn die CPU geändert wurde, das gesamte Benutzerprogramm zu überprüfen.
  • Somit ist es, jedes Mal dann wenn eine Hardware zu ändern ist, notwendig, die Programmsequenz stets erneut zu bestimmen. Ferner hat ein Programmierer selber den Programminhalt einer Verarbeitung zu verstehen, welche von der Hardware abhängt, und zwar zusätzlich zum Steuerinhalt und Berechnungsverfahren. Daraus resultierend wird die Programmentwicklungs-Arbeitslast enorm. Dies wird ferner detailliert mit Bezug einer Änderung von beispielsweise einem Einspritzer als Hardware beschrieben.
  • Ein Einspritzer hat Einspritzmengen-Eigenschaften, welche in 10 gezeigt sind, in welcher die Abszisse und die Ordinate jeweils die Ansteuerungsperiode T (ms) und die dynamische Einspritzmenge (q) anzeigen. Hier bedeutet die dynamische Einspritzmenge jene Einspritzmenge bei einer bestimmten Ansteuerungsperiode, und eine statische Einspritzmenge (Q) bedeutet jene Einspritzmenge, welche während einer Zeiteinheitsperiode eingespritzt wird, wenn ein Nadelventil bei einer maximalen Anhebeposition unter einem spezifischen Druck aufrecht erhalten wird. Ferner bedeutet die unwirksame Einspritz-Periode (Tva, Tvb) eine Verzögerungszeit vom Ansteuerungsbeginn des Einspritzers bis zur tatsächlichen Öffnung des Nadelventils.
  • Die Einspritzmenge hängt im allgemeinen vom Hub eines Nadelventils, vom Bereich eines Einspritzloches, von einer Differenz zwischen einem Einspritzpunktdruck und einem Kraftstoffdruck ab. Sobald jene Parameter bestimmt sind, hängt die Einspritzmenge von der Öffnungsperiode des Nadelventils ab, das heißt die Ansteuerungsperiode der Solenoidspule. Daher haben die Eigenschaften eine wie in 10 gezeigte Linearität über einen bestimmten Bereich der Ansteuerungsperiode hinweg. Deren Steigung wird durch die statische Einspritzmenge Q angezeigt.
  • Vorausgesetzt, dass ein Einspritzer a mit einer Eigenschaft a durch einen anderen Einspritzer b mit einer Eigenschaft b ausgetauscht wird, wechselt die unwirksame Einspritz-Periode von Tva auf Tvb, wie gezeigt. Dies rührt von Schwankungen in mechanischen Faktoren (das heißt, Hardware-Eigenschaften) her, wie beispielsweise der Hub, das Einspritzloch und dergleichen von Einspritzern unter den obigen Parametern.
  • Das heißt, dass, sogar wenn der Einspritzer a durch den Einspritzer b ohne jegliche Änderungen in der Maschinensteuereinrichtung ausgetauscht wird (das heißt, sogar wenn keine Änderungen beim Kraftstoff-Einspritzmengen-Betriebsprogramm vorgenommen werden), Änderungen bei der unwirksamen Einspritz-Periode erforderlich sind, um in Übereinstimmung mit dem Austausch der Einspritzer angepasst zu werden. Das heißt, dass es erforderlich ist das gesamte Betriebsprogramm zu überprüfen und entsprechende Sektionen zu ändern (in diesem Fall jene Sektionen, welche sich auf die unwirksame Einspritz-Periode beziehen).
  • Eine Lösung für das obige Problem ist beispielsweise in der JP-A-7-277105 vorgeschlagen. Bei dieser Lösung sind, wie in 9B gezeigt, ein I/O-Programm zur Verarbeitung einer Eingabe und Ausgabe einer CPU (Hardware) und ein Benutzerprogramm (Betriebsprogramm) zur Ausführung einer Steuerberechnung separat bereitgestellt, um voneinander unabhängig zu sein. Somit wird die Steuersoftware Entwicklungs-Arbeitslast reduziert, indem nur das I/O-Programm geändert wird, ohne dass zum Zeitpunkt der Änderung einer Hardware das Betriebsprogramm geändert wird.
  • Gemäß diesem Stand der Technik ist es jedoch, obwohl die Arbeitslast der Entwicklung der Betriebsprogramm-Sektion, deren Änderung nicht erforderlich ist, erforderlich, das gesamte I/O-Programm zu überprüfen, und die Entwicklungs-Arbeitslast wird immer noch enorm sein, sogar obwohl die Änderung nur einen Teil der Antriebsschaltung betrifft. Dies ist so, weil das I/O-Programm in Abfolge Programme für die Sensoren, Stellglieder, Antriebsschaltung und dergleichen bestimmt, sogar wenn die Änderung nur den Teil der Antriebsschaltung betrifft (beispielsweise nur eine Motorantriebsschaltung).
  • Jede aktuelle Steuereinrichtung für Fahrzeuge hat eine Mehrzahl an Hardware (elektronische Bauteile), wie beispielsweise einen Mikrocomputer, Antriebs-ICs zum Antreiben von Stellgliedern, A/D-Umwandler als eine von Eingabeschaltungen und dergleichen. Die Lebensdauer jeder Hardware unterscheidet sich in Abhängigkeit von ihrer Leistung und ihren Kosten von einer zur nächsten. Daraus folgend ist jedes Mal, wenn eine neue Steuereinrichtung für Fahrzeuge entwickelt wird, notwendigerweise eine Änderung bei einem Hardwareteil erforderlich, welcher die Steuereinrichtung bildet. Somit ist sogar beim vorgeschlagenen Stand der Technik jedes Mal dann eine große Programmänderung notwendig, wenn die Steuereinrichtung für Fahrzeuge geändert wird.
  • Ferner ist beim obigen Stand der Technik nur eine Änderung bei der CPU (Hardware) der Steuereinrichtung für Fahrzeuge in Betracht gezogen. Daher ist es, wenn die Stellglieder, wie beispielsweise ein Einspritzer und die Sensoren, wie beispielsweise ein Kühltemperatursensor, ausgetauscht werden, immer noch erforderlich, dass das Betriebsprogramm geändert wird.
  • Beim nachveröffentlichten Dokument EP-A-0 892 342 ist eine elektronische Steuereinheit offenbart, welche in der Lage ist ein objektorientiertes Programm zur Steuerung eines Steuerziels in Echtzeit ohne Aufwendung großer Speicherressourcen durchzuführen. Wenn eine Meldung durch Ausführung eines Verfahrens eines Objektes ausgegeben wird, wird diese Meldung in einem Objektmeldungs-Speicherabschnitt gespeichert (in Warteschlage gestellt). Zu einem Zeitpunkt, bei welchem eine Ausführung des Verfahrens eines gewissen Objektes beendet ist, wird eine Meldungslieferungs-Verarbeitung ausgeführt. Wenn die Meldung im Objektmeldungs-Speicherabschnitt gespeichert wurde, wird eine zuvor gespeicherte Meldung ausgelesen, und es gibt eine Ausführungsverschiebung des Verfahrens des Objektes, welches das Ausgabeziel dieser Meldung ist. Daraus resultierend können die Verfahren der mehreren Objekte in Echtzeit mit minimalem Speicheraufwand ausgeführt werden.
  • Darüber hinaus offenbart die US-A-5 794 165 eine Fahrzeug-Steuereinheit, welche einen Schnittstellen-Softwarespeicher zum Speichern eines Schnittstellen-Softwareprogramms zum Verbinden eines Anwendungssoftware-Programms mit einem Betriebssystem in einem internen ROM, eine zentrale Verarbeitungseinheit zur Durchführung einer Berechnung des Anwendungssoftware-Programms und des Schnittstellenergebnisses der Berechnung, eine I/O-Einheit zur Erweiterung der Steuereinheit und ein Erweiterungsmittel zum Kommunizieren von Speicherdaten durch einen Bus eines LAN enthält. Ein Einzelchip-Mikrocomputer wird bei der Fahrzeugsteuerung verwendet.
  • Darüber hinaus offenbart die US-A-5 453 933 ein CNC Werkzeugmaschinen-Steuersystem, welches ein steuerbares, bewegbares Werkzeug zum Formen eines Werkstücks, einen Mechanismus zum Empfangen von Steueranweisungen, welche Formungsfunktionen beschreiben, welche beim Werkstück durchzuführen sind, eine Verarbeitungseinheit und einen Speicher enthält. Die Steuersysteme enthalten Objekte, welche gemäß einem objektorientierten Entwurf bestimmt sind. Ein Objekttyp ist ein Modell eines Formungsablaufes, welcher bei einem Werkstück durchzuführen ist, welches Informationsparameter bezüglich der physikalischen Ausmaße der aus dem Ablauf resultierenden Formung enthält. Die Ablaufobjekte kommunizieren über ein objektorientiertes Meldungssystem mit Maschinenobjekten, welche physikalische Vorrichtungen darstellen, welche bei der CNC-Maschine vorliegen, auf welcher das Steuersystem arbeitet. Das System enthält ebenfalls eine objektorientierte Bewegungssteuerung und Fehlerhandhabungsobjekte, wobei beide über objektorientierte Meldungen mit anderen Objekten kommunizieren können. Das Steuersystem erlaubt es einfache Modifikationen auf das Steuersystem durch Personen mit beschränkter Kenntnis über das gesamte Steuersystem vorzunehmen, und ist vollständig adaptierbar um an neue CNC-Werkzeugmaschinen anzusetzen.
  • Zusätzlich ist in Vadé C.: "Des Objets Pour Le Temps Réel Embarqué", 1. Mai 1994, Mesures Regulation Automatisme, FR, CFE. Paris, Nr. 665, Seiten 78–80, 90, ein objektorientierter Entwurf für Echtzeitanwendungen beschrieben.
  • Die EP-A-0 892 342 zeigt eine Fahrzeugsteuerung unter Verwendung objektorientierter Programmierung, welche eine erste Schicht mit Steuerwert-Berechnungen (beispielsweise das ISC-Objekt), und eine zweite Schicht enthält, welche modellierte Programme des Sensors und der Stellglied-Hardware hat, wobei nicht beschrieben ist, dass die Steuerprogramme unabhängig vom Mikrocomputer sind, auf welchem sie laut Entwurf laufen.
  • Die US-A-5 794 165 offenbart eine objektorientierte Steuerung einer Brennkraftmaschine unter Verwendung einer ersten Schicht mit Steuerwert-Berechnungen und einer zweiten Schicht, welche modellierte Programme der Sensor-Hardware hat, wobei nicht beschrieben ist, dass die Steuerprogramme, als auch jene gemäß von Vadé C.: "Des Objets Pour Le Temps Réel Embarqué", Mesures Regulation Automatisme, FR, CFE. Paris, Nr. 665, 1. Mai 1994 (1994–05-01), Seiten 78–80, 90; US-A-5 453 933 unabhängig vom Mikrocomputer sind, auf welchem sie laut Entwurf laufen.
  • Es ist Aufgabe der vorliegenden Erfindung, eine Programmentwicklungs-Arbeitslast zu reduzieren und die Wiederverwendbarkeit einer Software zu verbessern, indem, in Anbetracht eines gesamten Steuersystems für Fahrzeuge, eine so groß wie mögliche Anzahl an Programmänderungen, welche in Übereinstimmung mit Änderungen auf einen Teil einer System-Hardware, wie beispielsweise Sensoren, Stellglieder und Antriebsschaltungen, erforderlich ist, reduziert wird.
  • Gemäß der vorliegenden Erfindung wird ein Programm in eine von der Hardware unabhängigen ersten Schicht und eine von der Hardware abhängigen zweiten Schicht unterteilt, wie in Anspruch 1 bestimmt.
  • Ferner wird die zweite Schicht in eine obere Schicht, welche bei den Sensoren oder Stellgliedern angewendet wird, eine mittlere Schicht, welche bei einer Eingangsschaltung oder Antriebsschaltung angewendet wird, und eine unter Schicht, welche bei einem Mikrocomputer angewendet wird, unterteilt. Somit kann das Programm derart strukturiert werden, dass es mit der Lebensdauer von Bauteilen übereinstimmt, welches ein gesamtes Steuersystem für Fahrzeuge bereitstellt, und die Programmänderungen in der zweiten Schicht können zum großen Teil reduziert werden.
  • Die Wiederverwendbarkeit einer Software kann zum großen Teil verbessert werden, weil die Entwicklungs-Arbeitslast für die Programmänderungen zum großen Teil reduziert werden kann.
  • Die obige und weitere Aufgaben der vorliegenden Erfindung werden anhand der folgenden detaillierten Beschreibung deutlicher, welche mit Bezug auf die begeleitenden Zeichnungen gemacht ist. In den Zeichnungen zeigt:
  • 1 ein Blockdiagramm, welches einen Hardwareaufbau einer Maschinensteuereinheit und deren Peripherie-Bauteile zeigt;
  • 2 ein beispielhaftes Diagramm, welches ein grundlegendes Konzept einer Steuereinrichtung für Fahrzeuge gemäß der vorliegenden Erfindung zeigt;
  • 3 ein beispielhaftes Diagramm, welches einen in 2 gezeigten Maschinensteuerprogramm-Aufbau gemäß der vorliegenden Erfindung detailliert zeigt;
  • 4A und 4B beispielhafte Ansichten, welche Verhaltensweisen eines Einspritzers als ein Objekt zeigen;
  • 5 ein Zeitablauf-Diagramm, welches eine allgemeine Einspritz-Steuerung zeigt;
  • 6 ein Klassifizierungs-Diagramm, welches jedes Modell, wie beispielsweise ein Einspritzer-Objekt, zeigt;
  • 7 ein Meldungssequenz-Ablaufdiagramm (MSC), welches eine Verarbeitung zur Ausführung von Programmen zeigt, welche wie in 6 gezeigt modelliert sind;
  • 8A und 8B Ablaufdiagramme, welche eine Ausgabe einer Einspritz-Anforderungsmeldung von einer Einspritz-Anwendung zeigen;
  • 9A und 9B beispielhafte Diagramme, welche eine beispielhafte Software einer herkömmlichen Steuereinrichtung für Fahrzeuge zeigen; und
  • 10 ein Eigenschafts-Diagramm, welches eine Einspritzmenge eines allgemeinen Einspritzers zeigt.
  • Eine Maschinensteuereinrichtung gemäß einer Ausführungsform der vorliegenden Erfindung wird im folgenden mit Bezug auf die Zeichnungen beschrieben.
  • Bezugnehmend auf 1, welche ein Maschinensteuersystem zeigt, welches seinen Peripherie-Hardwareaufbau enthält, ist eine Maschinensteuereinheit (ECU) 1 mit einer Eingabeschaltung 2, einem Mikrocomputer 3 und einer Ausgabeschaltung 4 aufgebaut.
  • Die Eingabeschaltung 2 ist durch einen A/D-Umwandler 23, eine Wellenformungs-Schaltung 24 und dergleichen, welche Erfassungssignale von verschiedenen Sensoren erfassen, wie beispielsweise ein Kühltemperatursensor 21 zum Erfassen einer Maschinen-Kühltemperatur, ein Kurbelwellen-Sensor 22 zum Erfassen einer Maschinen-Umdrehungsgeschwindigkeit, und dergleichen, aufgebaut. Der Mikrocomputer 3 berechnet optimale Steuerwerte für eine Maschine basierend auf den Erfassungssignalen von der Eingabeschaltung 2 und erzeugt Antriebssignale zum Antreiben der Ausgabeschaltung 4 basierend auf seinem Berechnungsergebnis. Ferner hat der Mikrocomputer 3 einen ROM 31 zum Speichern des Berechnungsprogramms und von Referenzdaten, und einen RAM 32 zum zeitweiligen Speichern des Berechnungsergebnisses.
  • Die Ausgabeschaltung 4 ist mit einer Einspritzer-Antriebsschaltung 43, einer ISC-Ventil-Antriebsschaltung 44 und dergleichen zum Antreiben der Stellglieder, wie beispielsweise ein Einspritzer 4, ein Leerlaufgeschwindigkeits-Steuer (ICS)-Ventil 42 und dergleichen, aufgebaut.
  • Ein Maschinensteuerprogramm, welches ein Merkmal dieser Ausführungsform ist, wird unter Verwendung eines "objektorientierten Entwurf" Verfahrens programmiert. Der objektorientierte Entwurf dient zum Modellieren jedes Teils als eine Basiseinheit und bestimmt die Verarbeitung mittels ihres Verhaltens (Betriebs), und zwar im Gegensatz zur herkömmlichen Software, welche auf die gedachte Verarbeitung gerichtet ist (beispielsweise eine Kraftstoff-Einspritzverarbeitung).
  • Diese Basiseinheit wird Objekt genannt, und das Programm bestimmt dieses Objekt als eine minimale Bestandseinheit. Die Objekte werden untereinander durch Anfragen und Antworten (Meldungen) im gesamten Programm verbunden, so dass eine Verarbeitungssequenz ausgeführt wird. Das Objekt wird als eine integrierte Datenform (Attribut) und eine Prozedur (Verfahren) von Verarbeitungsdaten bestimmt. Ein Verfahren wird ausgeführt, wenn ein Objekt eine Anfrage (Meldung) von einem weiteren Objekt empfängt. Die Betriebsanfrage an ein Objekt wird nur durch ein Verfahren ausgeführt, und ein direkter Zugriff auf die Daten innerhalb des Objekts wird unterdrückt.
  • 2 ist ein beispielhaftes Schaubild, welches ein grundlegendes Konzept der Steuereinrichtung für Fahrzeuge zeigt. Obwohl detailliert mit Bezug auf 3 und 4 beschrieben, wird ein Maschinensteuerprogramm durch zwei Schichten aufgebaut, das heißt, mit einer Anwendungsschicht und einer Plattform-Schicht. Die Plattform-Schicht wird durch eine Sensor/Stellglied-Schicht (210 in 3), eine Vorrichtungs-Antriebs-Schicht (220 in 3) und eine virtuelle MPU-Schicht (230 in 3) aufgebaut. Die Sensor/Stellglied-Schicht enthält verschiedene Objekte, welche die Eigenschaften und Verhalten (Betriebe) der Sensoren und Stellglieder (21, 22, 41 und 42 in 1) durch Modellieren derselben bestimmt. Die Vorrichtungs-Antriebs-Schicht enthält verschiedene Objekte, welche die Eigenschaften und Betriebe der Eingabeschaltung und Ausgabeschaltung (2, 4 in 1) durch Modellieren derselben bestimmt. Die virtuelle MPU-Schicht enthält ein Objekt, welches die Eigenschaften und Betriebe des Mikrocomputers durch Modellieren desselben bestimmt.
  • Daher braucht nur das Programm in der virtuellen MPU-Schicht geändert zu werden, wenn der Mikrocomputer 1 geändert wird. Da keine weiteren Programme in der Sensor/Stellglied-Schicht und der Vorrichtungs-Antriebs-Schicht geändert zu werden brauchen, werden die weiteren Programme nicht beeinflusst. Das heißt, dass, da die Merkmale beim Verhalten des Mikrocomputers in der virtuellen MPU-Schicht bereitgestellt sind, nur die virtuelle MPU-Schicht geändert zu werden braucht, wenn der Mikrocomputer geändert wird. Es brauchen keine weiteren Programme in der Vorrichtungs-Antriebs-Schicht, welche das Verhalten der Antriebsschaltung bestimmt, und in der Sensor/Stellglied-Schicht, welche das Verhalten der Sensoren und Stellglieder bestimmt, geändert zu werden.
  • In der Figur kennzeichnen WS, OB, IB, NES, INJ, SW und WTS jeweils eine Wellenformer-Schaltung, einen Ausgabe-Puffer, einen Eingabe-Puffer, einen Maschinen-Umdrehungsgeschwindigkeits-Sensor und einen Einspritzer, einen Schalter und einen Kühlwassertemperatur-Sensor. Ferner kennzeichnet OS ein Betriebssystem, welches ein Basisprogramm zur Ausführungsplanung und dergleichen ist, um die Ausführungsperiode von jedem Programm zu bestimmen. Dieses Basisprogramm bezieht sich nicht direkt auf die vorliegende Erfindung.
  • 3 ist eine beispielhafte Ansicht, welche den Aufbau des in 2 gezeigten Maschinensteuerprogramms detailliert zeigt, und 4A und 4B sind beispielhafte Ansichten, welche das Verhalten des Einspritzers als ein Beispiel mittels eines Objektes zeigen. Wie in 3 gezeigt, ist das Maschinensteuerprogramm mit einer Anwendungsschicht (AP-Schicht) 100 als die erste Schicht, und einer Plattform-Schicht (PF-Schicht) 200 als die zweite Schicht aufgebaut.
  • In der AP-Schicht 100 ist ein Programm als eine Steuerwert-Berechnungslogik bereitgestellt, welche einen Steuerinhalt (Steuerwert-Berechnungslogik) vollständig unabhängig von der Hardware bestimmt. Ein ENG-Objekt (ENG) 101 zur Berechnung der optimalsten Kraftstoff-Einspritzmenge q der vorliegenden Maschinenbetriebsbedingung, ein ECT-Objekt (ECT) 102 zur Ausgabe einer Steueranfrage an ein Getriebe, und dergleichen sind in der AP-Schicht unter einer klassifizierten Bedingung für jede Steuereinheit bereitgestellt.
  • Ferner sind in der PF-Schicht 200 jene Programme bereitgestellt, welche die Inhalte der System-Hardwareteile, wie beispielsweise Sensoren und Stellglieder, der ECU und des Mikrocomputers bestimmen. Hier wird das gesamte Maschinensteuersystem in Betracht gezogen, so dass die Programme mit dem Merkmal des Maschinensteuersystems übereinstimmen können, das heißt, dass die Programme in der AP-Schicht verwendet werden können, ohne dass jegliche Änderungen in Bezug auf jegliche mögliche Änderungen in der Hardware benötigt werden, welche das System bildet. Aus diesem Grund wird die PF-Schicht 200 in drei Schichten aufgeteilt, nämlich einer oberen Schicht, einer mittleren Schicht und einer unteren Schicht, und zwar basierend auf den folgenden Punkten.
  • Genauer gesagt, wie in 2 gezeigt, wird die obere Schicht als Sensor/Stellglied-Schicht (SA-Schicht) 210 bestimmt, welche der Sensor/Stellglied-Schicht entspricht, die mittlere Schicht wird als die Vorrichtungs-Antriebs-Schicht (DD-Schicht) 220 bestimmt, und die untere Schicht wird als die virtuelle MPU-Schicht (VM-Schicht) 230 bestimmt.
  • Die SA-Schicht 210 dient zum Bereitstellen jedes Objektes in der AP-Schicht 100 mit der Eingabe- und Ausgabefunktion der verschiedenen Sensoren und Stellglieder, welche für die Maschinensteuerung benötigt werden. Hier liegt eine Mehrzahl an Objekten (Obj) vor, bei welchen die Eigenschaften und Verhalten der Teile für jede Teileinheit mit Bezug auf Teile (Triebstrang-Teile), wie beispielsweise der Kühltemperatur-Sensor 21, Einspritzer 41, Kurbelwinkelsensor und dergleichen, welche sich extern der Maschinen ECU 1, wie in 1 gezeigt, befinden, modelliert werden.
  • Mit Bezug auf den Einspritzer dient beispielsweise sein Verhalten (Verfahren) zur Kraftstoffeinspritzung. Wie anhand von 4A und 4B zu erkennen, sind die Verhalten (Einspritzung) dieselben, sogar wenn der Einspritzer a durch den Einspritzer b ausgetauscht wird. Das heißt, dass ein Austauschen des Einspritzers dem Austauschen von Einspritzer-Eigenschaften entspricht, wie beispielsweise die unwirksame Einspritz-Periode, minimale Ansteuerungsperiode, maximale Ansteuerungsperiode und dergleichen, von jedem Einspritzer.
  • Basierend auf diesem Punkt wird jeder Teil angesichts seiner Eigenschaften modelliert, und die Programmeinheit wird in Übereinstimmung mit dem tatsächlichen Teil unterteilt. Daher braucht, sogar wenn der Einspritzer (Hardwareteil) ausgetauscht wird, nur das Objekt des Einspritzers (Einspritzer-Objekt) ausgetauscht zu werden, und die weiteren Programme brauchen nicht ausgetauscht zu werden. Das heißt, dass die Eigenschaften für den Einspritzer (Hardwareteil) selber in der Einspritzer-Obj informationsverborgen sind (ein Zustand und Verhalten eines Objektes wird verborgen, so dass es von den weiteren Objekten nicht erkannt wird). Somit brauchen die Einspritzer-Eigenschaften nicht hinsichtlich von Objekten in Betracht gezogen werden, welche sich von denen des Einspritzers unterscheiden.
  • Bei der in 3 gezeigten Ausführungsform ist die SA-Schicht 210 derart gezeigt, dass sie ein Kühltemperatursensor-Objekt (Kühlsensor-Obj) 211, ein Einspritzer-Objekt (Einspritzer-Obj) und ein Kurbelwinkelsensor-Objekt (Kurbelwinkelsensor-Obj) 213 enthält.
  • In der DD-Schicht 220 sind die Objekte, welche die Verhalten der Eingabeschaltung 2 und der Ausgabeschaltung 4 in der in 1 gezeigten Maschinen ECU 1 modellieren, bereitgestellt. Bei dieser Ausführungsform sind ein Einspritzer-Antriebs-Objekt (INJ-Antriebs-Obj) 221, welches die Einspritzer-Antriebsschaltung 43 modelliert, und ein ISC-Antriebs-Objekt (ISC-Antriebs-Obj) 222, welches die ISC Ventil-Antriebsschaltung 44 modelliert, gezeigt. Die Information hinsichtlich der elektronischen Schaltungseigenschaften der Einspritzer-Antriebsschaltung 43, das I/O-Mapping (Verbindung zwischen dem Einspritzer und dem Mikrocomputer) und dergleichen sind im INJ-Antriebs-Obj 221 verborgen.
  • Ferner entspricht die VM-Schicht 230 der I/O-Vorrichtung des Mikrocomputers 3, und der Aufbau (Architektur) und die Eigenschaften des Mikrocomputers sind darin verborgen. Hier ist ein Impulsgenerator-Objekt (Impulsgenerator-Obj) 231, welches einen Impulsgenerator modelliert, welcher ein Impulssignal zum Antreiben des Einspritzers 41 erzeugt, gezeigt. Weitere Objekte, wie beispielsweise ein Anschluss-Objekt und eine Impuls-Eingabeschaltung sind zusätzlich zum Impulsgenerator-Obj 231 bereitgestellt.
  • Somit ist gemäß der Ausführungsform der vorliegenden Erfindung die PF-Schicht 200 beim Modellieren der Hardwareteile in drei Schichten aus der oberen Schicht, mittleren Schicht und unteren Schicht unterteilt, welche ein System hinsichtlich der Gesamtheit des tatsächlichen Maschinensteuersystems bilden. Daraus resultierend können die Hardwareteile, wie beispielsweise der Einspritzer, die Einspritzer-Antriebsschaltung und dergleichen, welche jeweilige Lebensdauer haben, welche sich voneinander unterscheiden, lokalisiert werden. Somit können nicht nur die Programmänderungen auf das Anwendungsprogramm, sondern ebenfalls die Programmänderungen auf das Plattform-Programm relativ zu Änderungen beim Maschinensteuersystem auf ein Minimum reduziert werden.
  • Die durch die obigen Objekte aufgeführte Verarbeitung (Prozedur) wird als nächstes beispielhaft mit Bezug auf die in 58 gezeigte Einspritz-Steuerverarbeitung beschrieben.
  • 5 zeigt einen Zeitablauf, welcher eine allgemeine Einspritz-Steuerung zeigt. Obwohl eine komplizierte Berechnung und Verarbeitung zum Einstellen von Einspritz-Startzeiten und dergleichen bei einer tatsächlichen Maschinensteuerung ausgeführt werden, bezieht sich ein solcher Teil nicht so sehr auf die vorliegende Erfindung, und dessen Beschreibung wird hier aus Gründen der Kürze ausgelassen.
  • In 5 werden, wenn eine Zeitaufnahme (BTDC 90° CA), welche 90° CA (Kurbelwinkel) vor dem Ansaug-TDC (oberer Todpunkt) liegt, durch den Kurbelwinkelsensor erfasst wird, die Einspritz-Startzeit und die optimale Einspritzmenge berechnet, und ein Einspritz-Startzeitpunkt Zs und ein Einspritz-Endzeitpunkt Ze werden basierend auf der berechneten Zeitaufnahme und Menge in einem Zeitaufnehmer eingestellt. Somit erzeugt der Mikrocomputer 3 (Impuls-Generator), wenn jene Zeitpunkte erreicht werden, das Antriebssignal in der Wellenform (X) von 5, um die Einspritzer-Antriebsschaltung 43 anzutreiben. Die Einspritzer-Antriebsschaltung 43 versorgt die Solenoid-Spule des Einspritzers 41 mit elektrischem Strom, um das Nadelventil im Einspritzer 41 zur Kraftstoff-Einspritzung zu öffnen.
  • Hier beträgt die Zeitperiode, in welcher der Kraftstoff tatsächlich eingespritzt wird, gleich der Periode (Y) von 5 relativ zur Ansteuerungsperiode Ti. Wie anhand der Figur ersichtlich, muss der Einspritz-Startzeitpunkt Zs und dergleichen hinsichtlich einer Antriebs-Verzögerungszeit Tv des Einspritzers 41 und einer Betriebsstart-Verzögerungszeit Tsd der Antriebsschaltung eingestellt werden, so dass die Einspritzung mit optimaler Menge bewirkt wird. Die Antriebs-Verzögerungszeit Tv hängt von einer Zeitverzögerung vom Beginn einer Ansteuerung der Einspritzer Solenoid-Spule an bis zu einem tatsächlichen Öffnungsbeginn des Nadelventils, und von Schwankungen der Hardware-Eigenschaften der Einspritzer ab. Die Betriebsstart-Verzögerungszeit Tsd hängt von einer Zeitverzögerung vom Empfang des Antriebssignals vom Mikrocomputer an bis hin zum Einschalten der Antriebsschaltung, von Schwankungen in Schaltungs-Bauteilen, und von einer Verzögerungszeit Ted vom Ausschalten des Antriebssignals an bis zum Ausschalten der Antriebsschaltung ab. Wie oben beschrieben, schwanken jene Verzögerungszeiten Tv und Tsd in Abhängigkeit von den Hardware-Eigenschaften des Einspritzers 41 und der Einspritzer-Antriebsschaltung 43.
  • Bei der Ausführungsform sind jene Hardware-Eigenschaften verborgen, und jede Hardware (Objekt) wird derart modelliert, so dass in Relation zu Änderungen der Hardware nur eine minimale Programmänderung erforderlich ist.
  • 6 ist ein Klassifikations-Diagramm, welches jedes Modell von Einspritzer-Objekten und dergleichen zeigt, welche durch UML (vereinigte Modellierungssprache, ein vereinigtes Verfahren von verschiedenen Definitionen, welche herkömmlicherweise als Modellierungssprachen für objektorientierte Analysen und Entwürfe verwendet wird) bestimmt sind. Eine statische Information von jedem Objekt kann durch jene klassifizierten Diagramme ausgedrückt werden.
  • Wie durch die Einspritzer-Obj, INJ Antriebs-Obj und Impulserzeugungs-Obj in 6 gezeigt (welche Objekten 212, 221 und 231 in 3 entsprechen), sind die Objekte in Blöcke unterteilt. In jedem Block werden ein Titel des Objektes (212, 221, 231), die Daten (Attribut) (212a, 221a, 231a) und das Verfahren (212b, 221b, 231b) jeweils am oberen Teil, mittleren Teil und unteren Teil beschrieben. Die Relation unter den Blöcken wird durch Linien L1 und L2 angezeigt, welche die Blöcke verbinden.
  • Beispielsweise enthalten die Daten der Einspritzer-obj 212 die statische Einspritzmenge, minimale Ansteuerungsperiode und unwirksame Einspritz-Periode, wie in 212a gezeigt. Das Verfahren enthält die Einspritz-Anforderung und Einspritz-Stop-Anforderung.
  • 7 ist ein Meldungssequenz-Ablaufdiagramm (MSC), welches eine Verarbeitung zur Ausführung des modellierten Programms von 6 zeigt. Es zeigt die Verarbeitung (Verfahren), welche tatsächlich bei jedem Objekt ausgeführt wird, und die Pfeile zeigen Meldungsausgaben an die weiteren Objekte an. Ferner sind 8A und 8B Ablaufdiagramme, welche eine Ausgabe einer Einspritz-Anforderungsmeldung von der Einspritz-Anwendung zeigen.
  • Die in 7 gezeigte "1. Einspritz-Anforderung" wird als die Einspritz-Anforderungsmeldung (1) von der Einspritz-Anwendung, welche in dem in 3 gezeigten ENG Objekt 101 bereitgestellt ist, an das Einspritzer-Obj 212 ausgegeben. Diese Verarbeitung wird zunächst mit Bezug auf die in 8A und 8B gezeigten Ablaufdiagramme beschrieben.
  • Bei einer in 8A gezeigten Basisroutine, welche alle 8 ms ausgeführt wird, wird eine Information von den verschiedenen Sensoren zur Erfassung von Maschinenbedingungen (Erfassungswerte) gelesen (S1), und die dynamische Einspritzmenge q an Kraftstoff wird berechnet (S2). Die Ansteuerungs-Startperiode Ts wird ebenfalls basierend auf einer vorliegenden Batteriespannung berechnet, weil die Einspritz-Eigenschaften mit der Batteriespannung schwanken. Nachdem jene Schritte ausgeführt sind, fährt die Verarbeitung zu weiteren Nicht-Kraftstoffsteuerungen (S4) fort, wie beispielsweise eine Einspritz-Zeitsteuerung. Danach wird die Basisroutine wieder ausgeführt.
  • Bei einer in 8A gezeigten Unterbrechungsroutine, welche alle 30° CA ausgeführt wird, wie in 5 gezeigt, wird überprüft (S11), ob die vorliegende Unterbrechungszeit eine Zeit (BTDC 90° CA) ist, welche 90° CA vor dem Ansaug-TDC liegt. Wenn dies der Fall ist (JA), wird die Einspritz-Anforderungsmeldung (1) an das Einspritzer-Obj 212 ausgegeben (S12).
  • Wieder bezugnehmend auf 7, wird, wenn das Einspritzer-Obj 212 die Einspritz-Anforderungsmeldung (1) von der Einspritz-Anwendung empfängt, die Ansteuerungsperiode Ti basierend auf der folgenden Gleichung berechnet. Diese Einspritzmenge q basiert auf der dynamischen Einspritzmenge q, welche mit der Meldung gesendet wird, und zieht nur die Eigenschaften des Einspritzers 41 in Betracht. Ti = (q/Q) × 60 + Tv
  • Das heißt, dass die Verzögerungszeit bis das Nadelventil öffnet, durch eine Hinzufügung der unwirksamen Einspritz-Periode in Betracht gezogen wird. Hier ist die Ansteuerungsperiode Ti als EIN der in 5 gezeigten Antriebsschaltungs-Ausgabe gezeigt, und Q zeigt die statische Einspritzmenge an (10).
  • Die Ansteuerungsperiode Ti wird innerhalb eines Bereiches (Tmin ≤ Ti ≤ Tmax) von der minimalen Einspritzmengenzeit Tmin und der maximalen Einspritzmengenzeit Tmax abgeschirmt, und die Ansteuerungs-Anforderungsmeldung (2) wird an das INJ Antriebs-Obj 221 ausgegeben. Hier schwanken ebenfalls die minimale Einspritzmengenzeit Tmin und die maximale Einspritzmengenzeit Tmax mit den mechanischen Eigenschaften (Hardwareeigenschaften) des Einspritzers 41, wie beispielsweise Schwankungen beim Anheben des Nadelventils.
  • Wenn das INJ Antriebs-Obj 221 die Ansteuerungs-Anforderungsmeldung empfängt, wird der Ansteuerungs-Startzeitpunkt Zs anhand der in 8A gezeigten Ansteuerungs-Startzeitperiode Ts berechnet, das heißt, dass die Zeitperiode in den Zeitpunkt umgewandelt wird. Hier gilt Zs = Zne + Ts, wie in 5 gezeigt. Ferner wird der letztendliche Ansteuerungs-Startzeitpunkt Zp berechnet, indem die Ansteuerungs-Startzeitperiode Zs in Anbetracht der Verzögerungszeit Tsd der Einspritzer-Antriebsschaltung 43 korrigiert wird. Hierbei gilt Zp = Zs – Tsd, wie in 5 gezeigt. Dann wird die Impulserzeugungs-Anforderungsmeldung (3) ausgegeben.
  • Wenn das Impulserzeugungs-Obj 231 die Impulserzeugungs-Anforderungsmeldung (3) empfängt, wird ein Vergleichsregister (nicht gezeigt) derart mit Daten eingestellt, dass der Mikrocomputer 3 zur Zeitaufnahme des Zeitpunktes Zp ein Hochpegel-Signal (high level signal) (Vp) erzeugt. Somit wird die Mikrocomputer-Ausgabe zum Zeitpunkt Zp hoch, so dass der Einspritzer eine Kraftstoffeinspritzung beginnt. Danach gibt das Impulserzeugungs-Obj 231 eine Ansteuerungs-Startanzeigemeldung (4) an das Einspritzer Antriebs-Obj 221 aus.
  • Wenn das INJ Antriebs-Obj 221 die Ansteuerungs-Startanzeigemeldung (4) empfängt, wird der Ansteuerungs- Endzeitpunkt Ze berechnet, indem die Ansteuerungs-Periode Ti zum Ansteuerungs-Startzeitpunkt Zp addiert wird, und der letztendliche Ansteuerungs-Startzeitpunkt Zp wird berechnet, indem der Ansteuerungs-Startzeitpunkt Ze hinsichtlich der Verzögerungszeit Tsd der Einspritzer-Antriebsschaltung 43 (5) korrigiert wird. Dann wird die Impulserzeugungs-Anforderungsmeldung (5) an das Impulserzeugungs-Obj 231 ausgegeben.
  • Wenn das Impulserzeugungs-Obj 231 die Impulserzeugungs-Anforderungsmeldung (5) empfängt, wird das Vergleichsregister derart mit Daten eingestellt, so dass der Mikrocomputer 3 zur Zeitaufnahme des Zeitpunktes Zp ein Niedrigpegel-Signal (low level Signal) (Vp) erzeugt. Somit wird die Mikrocomputer-Ausgabe zum Zeitpunkt Ze niedrig, so dass der Einspritzer die Kraftstoffeinspritzung beendet.
  • Hinsichtlich der Einspritz-Stopanforderung, Ansteuerungs-Stopanforderung und Impuls-Stopanforderung beim Verfahren jedes Objektes (Obj), wird hier keine detaillierte Beschreibung gegeben, obwohl es Fälle gibt, bei welchen die Einspritz-Stopanforderungsmeldung aus Gründen eines Kraftstoff-Abschneidebetriebes ausgegeben wird.
  • Wie oben beschrieben, werden nur Steuerbetriebe bei der Verarbeitung der Einspritz-Anwendung ausgeführt, welche von der Hardware unabhängig sind. Somit werden, sogar wenn der Einspritzer 41 und die Antriebsschaltung 43 ausgetauscht werden, die Berechnungsverarbeitung der Einspritzmenge q und Ausgabe der Einspritz-Anforderungsmeldung auf dieselbe Weise ausgeführt. Daher ist es möglich, das Programm der Einspritz-Anwendung wieder zu verwenden. Das heißt, dass die Programme in der AP-Schicht 100, wie beispielsweise die Einspritz-Anwendung, nicht geändert werden, und zwar unabhängig von Änderungen, welche auf die Hardwareteile (inklusive Teile, wie beispielsweise Einspritzer, welche extern der Maschinen ECU 1 bereitgestellt sind) vorgenommen werden, welche das gesamte Maschinensteuersystem bilden.
  • Ferner werden, sogar wenn nur der Einspritzer 41 ausgetauscht wird, die Meldung an das Einspritzer-Obj und die Meldung Einspritzer-Obj nicht geändert. Das heißt, dass die Ausgabe der Einspritz-Anforderung der Einspritz-Anwendung oder der Empfang der Ansteuerungs-Anforderung des INJ Antriebs-Obj 221 nicht geändert werden. Ferner berechnet die Einspritz-Anwendung die Einspritzmenge q, und eine Ausgabeinformation an das Einspritzer-Obj 212 bleibt ebenfalls unverändert. Somit ist es in jenen Fällen nur erforderlich, dass das Programm des Einspritzer-Obj 212 geändert wird, und es ist nicht erforderlich, dass die Programme des INJ Antriebs-Obj 221 und dergleichen geändert werden.
  • Somit kann gemäß der vorliegenden Erfindung die Programmstruktur, welche auf jedes der Hardwareteile angepasst ist, welche bei den Maschinensteuersystemen ausgetauscht werden können, realisiert werden, indem sie in drei Schichten unterteilt wird, nämlich die obere Schicht, welche die SA-Schicht 210 ist, die mittlere Schicht, welche die DD-Schicht 220 ist, und die untere Schicht, welche die VM-Schicht 230 ist. Ferner wird die Anzahl an Programmänderungen in der PF-Schicht, welche von der Hardware abhängt, auf so klein wie möglich reduziert, und zwar relativ zur Eingabeschaltung und zur Antriebsschaltung, welche verhältnismäßig häufig aufgrund von Unterschieden in der Lebensdauer und der Steuerspezifikationen der betreffenden Maschine ausgetauscht werden.
  • Ferner hat die SA-Schicht 210 lediglich Elemente, wie beispielsweise ein Einspritzer, welcher die elektrischen Signale in die physikalischen Mengen umwandelt, die DD-Schicht 220 hat nur Elemente, welche die digitalen Signale des Mikrocomputers in die elektrischen Signale umwandeln, und die VM-Schicht 230 hat lediglich Elemente, welche die digitalen Signale erzeugen. Somit kann, da die Informationsqualität in jeder Schicht gleichförmig gestaltet ist, eine Standard-Schnittstelle bereitgestellt werden. Das heißt, dass, wenn der objektorientierte Entwurf angewendet wird, die Meldungen, welche Objekte verbinden, standardisiert werden können, während die Einspritz-Steuerung und die Zünd-Steuerung nicht beschränkt werden, so dass eine Programmierung unter Verwendung einer Dokumentenvorlage mit Leichtigkeit erzielt werden kann.
  • Die vorliegende Erfindung ist nicht auf die vorhergehende Ausführungsform beschränkt, sondern kann auf verschiedene Wege modifiziert werden, ohne von Umfang der Erfindung abzuweichen.
  • Ein Maschinensteuersystem wird in eine Anwendungsschicht (100) und eine Plattform-Schicht (200) unterteilt. Die Anwendungsschicht bestimmt ein Programm, welches von einer Hardware unabhängig ist, und wird unter einem objektorientierten Entwurf bereitgestellt. Die Plattform-Schicht bestimmt ein Programm, welches von der Hardware abhängt, und wird unter dem objektorientierten Entwurf bereitgestellt, und wird in drei Schichten unterteilt, das heißt, eine obere Schicht, eine mittlere Schicht und eine untere Schicht. Die obere Schicht, mittlere Schicht und die untere Schicht enthalten jeweils eine Sensor/Stellglied-Schicht (210), eine Vorrichtungs-Antriebsschicht (220) und eine virtuelle MPU-Schicht (230).

Claims (5)

  1. Steuereinrichtung für Fahrzeuge, mit: Sensoren (21, 22) zum Erfassen von Betriebsbedingungen eines Fahrzeugs; Stellgliedern (41, 42) zum Betreiben von verschiedenen Teilen des Fahrzeugs; einer Eingabeschaltung (2) zum Empfangen von Erfassungssignalen von den Sensoren; einem Mikrocomputer (3), welcher ein Steuerprogramm hat, welches unter einem objektorientierten Entwurf bereitgestellt ist, um optimale Steuerwerte basierend auf den Bedingungen des Fahrzeugs in Ansprechen auf Signale von der Eingabeschaltung zu berechnen, um Steuersignale zum Antreiben der Stellglieder zu erzeugen; und einer Antriebsschaltung (4) zum Ausgeben von Antriebssignalen zum Antreiben der Stellglieder in Ansprechen auf die Steuersignale, wobei die Sensoren, die Stellglieder, die Eingabeschaltung, der Mikrocomputer und die Antriebsschaltung als Hardware bereitgestellt sind, wobei das Steuerprogramm eine erste Schicht (100), welche eine Steuerwert-Berechnungslogik bestimmt, welche unabhängig von der Hardware ist, und eine zweite Schicht (200) hat, welche eine Steuerwert-Berechnungslogik bestimmt, welche von der Hardware abhängig ist, und wobei die zweite Schicht (200) ein modelliertes Programm enthält, welches jeden physikalischen Aufbau von zumindest den Sensoren und den Stellgliedern der Hardware bestimmt, indem es in einen entsprechenden Logik-Aufbau umwandelt und modelliert.
  2. Steuereinrichtung für Fahrzeuge nach Anspruch 1, bei welcher die zweite Schicht (200) in eine obere Schicht (210), welche Eigenschaften und Betriebe der Sensoren und der Stellglieder durch Modellierung bestimmt, eine mittlere Schicht (220), welche Eigenschaften und Betriebe der Eingabeschaltung und der Antriebsschaltung durch Modellierung bestimmt, und eine untere Schicht (230), welche Eigenschaften und Betriebe des Mikrocomputers durch Modellierung bestimmt, eingeteilt ist.
  3. Steuereinrichtung für Fahrzeuge nach Anspruch 1, bei welcher die zweite Schicht (200) in eine obere Schicht (210) zum Bereitstellen einer Anwendungssoftware, welche in der ersten Schicht vorliegt, mit einer Steuerinformation, eine mittlere Schicht (220) zum Umwandeln der Steuerinformation in eine digitale Information für den Mikrocomputer, und eine untere Schicht (230) zum Ausgeben der digitalen Information eingeteilt ist.
  4. Steuereinrichtung für Fahrzeuge nach Anspruch 1, bei welcher die zweite Schicht (200) für jeden Hardware-Teil eine Mehrzahl an Programmen enthält, welche unter einem objektorientierten Entwurf bereitgestellt sind, um Hardware-Eigenschaften der Sensoren und der Stellglieder für jeden Hardware-Teil auszublenden.
  5. Steuereinrichtung für Fahrzeuge nach Anspruch 4, bei welcher die Hardware-Eigenschaften eine ineffektive Einspritz-Periode (Tva) und/oder eine minimale Abschalt-Periode (Tmin) und/oder eine maximale Abschalt-Periode (Tmax) eines Einspritzers (41) enthalten.
DE69927651T 1998-09-17 1999-08-09 Steuerungseinrichtung für Fahrzeuge mit objektorientiertem Programmdesign Expired - Lifetime DE69927651T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP26347698A JP3460593B2 (ja) 1998-09-17 1998-09-17 車両用制御装置
JP26347698 1998-09-17

Publications (2)

Publication Number Publication Date
DE69927651D1 DE69927651D1 (de) 2006-02-23
DE69927651T2 true DE69927651T2 (de) 2006-06-22

Family

ID=17390048

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69927651T Expired - Lifetime DE69927651T2 (de) 1998-09-17 1999-08-09 Steuerungseinrichtung für Fahrzeuge mit objektorientiertem Programmdesign

Country Status (5)

Country Link
US (1) US6236910B1 (de)
EP (1) EP0987424B1 (de)
JP (1) JP3460593B2 (de)
DE (1) DE69927651T2 (de)
ES (1) ES2247751T3 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10106171B2 (en) 2015-07-28 2018-10-23 Crown Equipment Corporation Vehicle control module with signal switchboard and output tables

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4427860B2 (ja) * 2000-03-24 2010-03-10 株式会社デンソー 車両用制御装置及び記録媒体
DE10044319A1 (de) * 2000-09-07 2002-03-21 Bosch Gmbh Robert Elektronisches System für ein Fahrzeug und Systemschicht für Betriebsfunktionen
DE10052570A1 (de) 2000-10-23 2002-04-25 Bosch Gmbh Robert System zur Steuerung von Betriebsabläufen
JP3941853B2 (ja) * 2000-12-04 2007-07-04 愛三工業株式会社 燃料噴射制御装置
JP3578082B2 (ja) * 2000-12-20 2004-10-20 株式会社デンソー 処理実行装置及び記録媒体
JP2002229791A (ja) * 2001-01-31 2002-08-16 Denso Corp インターフェース生成装置、プログラム及び記録媒体
EP1410557A4 (de) 2001-06-22 2009-11-18 Wonderware Corp Sicherheitsarchitektur für eine prozesssteuerplattform, die anwendungen ausführt
WO2003001377A2 (en) * 2001-06-22 2003-01-03 Wonderware Corporation Installing supervisory process control and manufacturing software from a remote location and maintaining configuration data links in a run-time environment
US7650607B2 (en) * 2001-06-22 2010-01-19 Invensys Systems, Inc. Supervisory process control and manufacturing information system application having a layered architecture
EP1410228B1 (de) * 2001-06-22 2016-03-23 Wonderware Corporation Fernüberwachung bzw. diagnose verteilter komponenten einer überwachungsprozesssteuer- und herstellungsinformationsanwendung von einem zentralen ort aus
JP2003173256A (ja) * 2001-12-06 2003-06-20 Denso Corp プログラムコード生成装置及びプログラム
JP4515701B2 (ja) * 2002-12-13 2010-08-04 株式会社デンソー 車両用制御プログラム、及び、車両用制御装置
DE10308460B4 (de) * 2003-02-21 2015-08-06 Robert Bosch Gmbh Elektronisches System und elektronisches Gesamtsystem zum Ansteuern einer Brennkraftmaschine
DE10307698A1 (de) * 2003-02-21 2004-09-02 Robert Bosch Gmbh Steuergerät und Compterprogramm zum Steuern eines Antriebsaggregates eines Fahrzeugs
JP4753623B2 (ja) * 2005-05-23 2011-08-24 富士通テン株式会社 車両制御用プログラム及び車両用電子制御装置
WO2009093732A1 (ja) * 2008-01-24 2009-07-30 Autonetworks Technologies, Ltd. 機器制御装置及び機器制御プログラム
JP4920015B2 (ja) 2008-09-03 2012-04-18 日立オートモティブシステムズ株式会社 分散制御用制御ソフトウェアおよび電子制御装置
JP2010237895A (ja) * 2009-03-31 2010-10-21 Hitachi Automotive Systems Ltd 車載電子制御装置,制御ソフトウェアおよび制御ソフトウェアの開発ツール
JP2011238297A (ja) * 2011-08-30 2011-11-24 Hitachi Ltd 自動車用制御装置のソフトウエア作成方法
JP5918702B2 (ja) * 2013-01-18 2016-05-18 日立オートモティブシステムズ株式会社 エンジンの制御装置
US9417853B1 (en) * 2014-10-27 2016-08-16 Dspace Digital Signal Processing And Control Engineering Gmbh Method for generating a code for an electronic control unit
US10520918B2 (en) * 2015-09-29 2019-12-31 Doran Manufacturing, Llc Programming and monitoring a newly-installed sensor on a motor vehicle
DE102015219741B4 (de) * 2015-10-12 2022-08-11 Vitesco Technologies GmbH Präzise Bestimmung der Einspritzmenge von Kraftstoffinjektoren
JP6652477B2 (ja) 2016-10-03 2020-02-26 日立オートモティブシステムズ株式会社 車載処理装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55134731A (en) * 1979-04-05 1980-10-20 Nippon Denso Co Ltd Controlling method of air-fuel ratio
US4556943A (en) * 1983-05-27 1985-12-03 Allied Corporation Multiprocessing microprocessor based engine control system for an internal combustion engine
US4964050A (en) * 1987-05-12 1990-10-16 Honda Giken Kogyo Kabushiki Kaisha Method of controlling electrical devices of internal combustion engines
JPH06236352A (ja) * 1993-02-09 1994-08-23 Nippondenso Co Ltd データ通信装置
DE69432369T2 (de) 1993-07-26 2003-12-18 Hitachi Ltd Steuerungseinheit für Fahrzeug
JPH0763103A (ja) * 1993-08-23 1995-03-07 Nippondenso Co Ltd 内燃機関の燃料噴射制御装置
US5453933A (en) * 1993-09-08 1995-09-26 Hurco Companies, Inc. CNC control system
JPH07277105A (ja) 1994-04-15 1995-10-24 Hitachi Ltd 自動車用制御装置
US5908463A (en) * 1995-02-25 1999-06-01 Honda Giken Kogyo Kabushiki Kaisha Fuel metering control system for internal combustion engine
DE19709318C2 (de) * 1997-03-07 2000-08-31 Bosch Gmbh Robert Steuerungssystem für ein Fahrzeug
JPH1136911A (ja) * 1997-07-14 1999-02-09 Unisia Jecs Corp 燃料噴射量制御装置
JP3663842B2 (ja) * 1997-07-18 2005-06-22 株式会社デンソー 自動車用電子制御装置
US6067965A (en) * 1998-08-31 2000-05-30 Ford Global Technologies, Inc. Method and system for determining a quantity of fuel to be injected into an internal combustion engine

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10106171B2 (en) 2015-07-28 2018-10-23 Crown Equipment Corporation Vehicle control module with signal switchboard and output tables
US10427692B2 (en) 2015-07-28 2019-10-01 Crown Equipment Corporation Vehicle control module with signal switchboard and input tables

Also Published As

Publication number Publication date
JP2000097102A (ja) 2000-04-04
DE69927651D1 (de) 2006-02-23
ES2247751T3 (es) 2006-03-01
EP0987424A3 (de) 2002-02-06
EP0987424B1 (de) 2005-10-12
US6236910B1 (en) 2001-05-22
JP3460593B2 (ja) 2003-10-27
EP0987424A2 (de) 2000-03-22

Similar Documents

Publication Publication Date Title
DE69927651T2 (de) Steuerungseinrichtung für Fahrzeuge mit objektorientiertem Programmdesign
DE2907390C2 (de)
DE3014185A1 (de) Automatisches steuersystem fuer ein automobil
DE4219669A1 (de) Steuergerät zur Berechnung von Steuergrößen für sich wiederholende Steuervorgänge
EP1250525B1 (de) Verfahren und vorrichtung zur steuerung einer brennkraftmaschine
DE10054994B4 (de) Steuersystem zur Kraftstoffeinspritzung bei Brennkraftmaschinen mit Zylindereinspritzung
DE19935878A1 (de) Task-Steuerungsverfahren mit verringerter Stapelspeichererfordernis
DE102005058213A1 (de) Vorrichtung zur Verarbeitung von Signalen von in einem Antriebsstrang eines Fahrzeugs enthaltenen Sensoren und die Vorrichtung verwendendes System
DE10360035A1 (de) Eingebettete Controller und Entwicklungswerkzeug für eingebettete Controller
DE19535056C2 (de) Verfahren zur Steuerung der Kraftstoffeinspritzung bei einem Dieselmotor
DE3403260C2 (de)
DE19537787A1 (de) Verfahren und Vorrichtung zur Steuerung einer Brennkraftmaschine
DE10120646A1 (de) Steuerungsgerät mit objektorientiertem Selbstdiagnoseprogramm
DE3416370C2 (de)
EP2033865B1 (de) Verfahren zur dynamischen Momentenkoordination von Aggregaten eines Hybridantriebs eines Fahrzeugs und entsprechende Vorrichtung
DE3643337C3 (de) Verfahren zum Verarbeiten von Regelgrößen in einem Brennkraftmaschinenregelsystem
DE4007395C2 (de) Zündzeitpunktsteuervorrichtung für einen Verbrennungsmotor
DE19851974B4 (de) Verfahren und Vorrichtung zur Steuerung von Betriebsabläufen in einem Fahrzeug
DE4327702C1 (de) Motorleerlaufdrehzahlsteuergerät
DE19757875C2 (de) Verfahren zum Betreiben einer Brennkraftmaschine insbesondere eines Kraftfahrzeugs
WO1999010644A1 (de) Verfahren zur steuerung der abgasrückführung bei einer brennkraftmaschine
DE10324413B4 (de) Verfahren und Vorrichtung zur Steuerung eines Dieselmotors
DE3816432A1 (de) Maschinensteuervorrichtung
DE3919108A1 (de) Verfahren zur steuerung eines betriebsparameters eines kraftfahrzeugs bei dynamischen betriebszustaenden
DE3138057C2 (de) Verfahren zur Steuerung der Zündverstellung bei einer Brennkraftmaschine

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)