-
Die
vorliegende Erfindung betrifft eine Programmtechnik für eine Selbstdiagnosefunktion
in einer Steuerungseinrichtung zur Steuerung eines Fahrzeugs.
-
Die
Druckschrift US-A-5671141 offenbart eine Computerprogrammarchitektur
für ein
fahrzeugseitiges Fahrzeugdiagnosesystem einschließlich einer
Vielzahl von Überwachungsmodulen
zur Überwachung
der Fahrzeugsysteme oder Komponenten und zur Ausgabe eines Fehlfunktionsunterroutinenanrufs an
eine Diagnosedurchführungsperson
nach Erfassen einer Fehlfunktion eines Systems oder einer Komponente.
-
Die
Druckschrift US-A-6115653 offenbart ein Diagnosesystem für ein Maschinenmanagementsystem
eines Fahrzeugs. Es wird ein Prozessor verwendet zum Bearbeiten
einer Betriebsbearbeitungsroutinenstatistik von Diagnosefunktionsmodulen,
die abgestufte Diagnosefehlercodes abgeben.
-
Im
Allgemeinen hat der schnelle Fortschritt der Computertechnik in
den vergangenen Jahren die Einführung
der Computersysteme in jedem Bereich eines Fahrzeugs wie eines Automobils
bewirkt.
-
Insbesondere
wurde ein Computersystem zur Steuerung eines Fahrzeugs zur Sicherstellung
einer höheren
Verlässlichkeit
durch ein Einschließen einer
Selbstdiagnose oder einer Selbstdiagnosefunktion verbessert. Es
ist nun für
ein Fahrzeug möglich, einen
Diagnoseablauf zum automatischen Überprüfen der Betriebsbedingungen
einer Computereinheit und ihrer Sensoren oder dergleichen durchzuführen. Dies
wird in einer entsprechenden Zeitperiode durch Aufleuchten einer
Warnlampe (MIL) durchgeführt, wenn
ein Fehler darin auftritt. Dies bezeichnet das Auftreten des Fehlers
für den
Benutzer und/oder speichert den Fehlercode (DTC), der es ermöglicht, eine
Wartung durch eine Person durchführen
zu lassen, zur Identifikation der Art des Fehlers. Dieser Diagnoseablauf
dient als Hilfe in etwa 200 Einzelheiten, und betrifft die gegenwärtigen Sensoren,
wie einen Kurbelwinkelsensor, einen Nockenwinkelsensor, einen Wassertemperatursensor
oder dergleichen. Das Objekt dieses Diagnoseablaufs wird als das „Diagnoseobjekt" oder „diagnostische
Objekt" bezeichnet.
-
Um
den Diagnoseprozess zu realisieren ist in dem Entwicklungsstand
des Selbstdiagnoseprogramms zu erkennen, dass das Diagnoseobjekt
in Abhängigkeit
von den Kraftfahrzeugmodellen, einem Entwicklungsstand des Fahrzeugs
und/oder von der Zeit der Modelländerungen
abhängig
ist. Daher ist die Fehlererkennungslogik im Allgemeinen für jedes diagnostische
Objekt in dem Selbstdiagnoseprogramm beschrieben. Wird somit das Selbstdiagnoseprogramm
geändert,
dann kann in Abhängigkeit
von der Änderung
die Änderung
in der Weise erfolgen, dass lediglich die entsprechende Fehlererfassungslogik
geändert
wird.
-
Ein
Programm, das auf einen „Gegenstand" wie ein diagnostisches
Objekt gerichtet ist, ist als ein „objektorientiertes Programm" bekannt. Eine Änderung
in Einheiten eines Objekts kann für eine Änderung des Diagnoseobjekts
verwirklicht werden. Das Objekt, das keine Änderung erfordert, kann durch Strukturieren
der Objekte in Einheiten der Fehlererfassungslogik verwendet werden.
-
In
dieser Beschreibung wird der Ausdruck ein/das „Objekt führt- ... durch", in welchem der
Ausdruck „Objekt" das Subjekt des
Satzes ist, häufig
benutzt, wobei dies jedoch bedeutet, dass ein Betrieb des Objekts
durchgeführt
wird, wenn eine in der Fahrzeugsteuerungseinrichtung enthaltene
Zentraleinheit CPU das in dem Objekt installierte Programm verarbeitet.
-
Die
Fehlererfassungslogik gemäß der vorstehenden
Darstellung wird üblicher
Weise wiederholt entsprechend einer vorbestimmten zeitlichen Steuerung
bzw. Zeit verarbeitet, wobei in dieser Zeit eine Vielzahl von Fehlererfassungslogikteilen
durchgeführt
werden soll. Dies wurde in einer Plattform (nachstehend auch als „PF" bezeichnet) als
ein Programm mit einer niedrigen Hierarchie beschrieben.
-
Wird
das Diagnoseprogramm geändert, dann
kann die Durchführungszeit
bzw. Verarbeitungszeit der Fehlererfassungslogik ebenfalls in einigen
Fällen
geändert
werden. Es wurde auch ein Programmaufbau vorgeschlagen, der ein
unabhängiges Steuerprogramm
(Scheduler-Programm) bereitstellt, zum Unterscheiden der Durchführungszeit
der Plattform. Dies bietet den Vorteil, dass eine Änderung
der Durchführungszeit
auf einfache Weise durch Änderung
des Steuerungsprogramms erreicht werden kann.
-
Zur
Durchführung
eines Teils der Fehlererfassungslogik müssen jedoch die Zeit und vorbestimmte
Bedingungen berücksichtigt
werden. Wird insbesondere die Durchführungszeit bzw. Verarbeitungszeit
erfasst, dann ergeben sich Situationen, in welchen die Verarbeitungen
nicht durchgeführt
werden. Dies liegt an der Bedingung, dass die Fehlererfassungslogikteile
miteinander verbunden sind.
-
In
einigen Fällen
werden eine entsprechende Fehlererfassungslogik und eine Beziehung
zwischen der Korrektur der Fehlererfassungslogik für eine Änderung
in dem Diagnoseobjekt oder eine Änderung
in der Durchführungszeit
erforderlich. Diese Korrektur wird nachstehend beschrieben.
-
Wird
der erste Sensor beispielsweise als fehlerhaft betrachtet, dann
kann ein Fehler eines zweiten Sensors in Bezug auf den ersten Sensor
in einigen Fällen
nicht bestimmt werden. Insbesondere kann ein Luftströmungssensor
zum Messen der Ansaugluftmenge in der Maschine lediglich dann genau diagnostiziert
werden, wenn der Ansauglufttemperatursensor zur Erfassung der Ansauglufttemperatur als
normal diagnostiziert ist.
-
Ferner
wird ein erfasster Wert des ersten Sensors für den Diagnoseablauf des zweiten
Sensors in einigen Fällen
verwendet. Beispielsweise für den
Diagnoseablauf des Ansauglufttemperatursensors gemäß der vorstehenden
Beschreibung, oder für
den Erfassungswert eines Drosselsensors (Drosselklappensensor) zur
Erfassung der Öffnung
einer Drosselklappe (Drosselventil), das mittels eines Beschleunigungspedals
angetrieben ist.
-
Eine
Durchführungsbedingung
zum Sicherstellen des Fehlerdiagnoseergebnisses des Diagnoseobjekts
besteht gemäß der vorliegenden
Beschreibung in einigen Fällen,
und diese Durchführungsbedingung
wird durch die Fehlererfassungslogik bestimmt. Die Bestimmungslogik
der Durchführungsbedingung
ist von einer anderen Fehlererfassungslogik abhängig.
-
Wird
die Fehlererfassungslogik entsprechend eines bestimmten Diagnoseobjekts
geändert, dann
wird in dieser Programmstruktur angefordert, dass sämtliche
Fehlererfassungslogikteile bezüglich der
vorstehenden Fehlererfassungslogik überprüft bzw. durchgesehen werden.
Falls in dem vorstehend beschriebenen Beispiel die Fehlererfassungslogik
eines Drosselsensors geändert
wird, dann müssen
die Fehlererfassungslogik des Ansauglufttemperatursensors und die
Fehlererfassungslogik des Luftströmungssensors in Bezug auf den
Ansauglufttemperatursensor gemäß einer
Anforderung oder den Erfordernissen geändert werden.
-
Es
ist somit eine ungewöhnlich
lange Zeit in einigen Fällen
erforderlich, das Selbstdiagnoseprogramm zu ändern, so dass die Wiederverwendungseigenschaft
verschlechtert ist. Erreicht die Änderung ferner einen größeren Umfang,
dann wird die Möglichkeit
des Erzeugens einer Diskrepanz bzw. einer Unstimmigkeit in dem Programm
ebenfalls groß,
und es wird die Qualität
des Selbstdiagnoseprogramms verschlechtert.
-
Die
vorliegende Erfindung wurde somit zum Lösen der vorstehend angegebenen
Probleme vorgeschlagen. Es liegt der vorliegenden Erfindung die Aufgabe
zugrunde, eine Steuerungseinrichtung für ein Fahrzeug mit einer Selbstdiagnosefunktion
gemäß Patentanspruch
1 bereitzustellen. Eine weitere Aufgabe besteht darin, eine Änderung
des Selbstdiagnoseprogramms zu Verwirklichung der Selbstdiagnosefunktion
zu gewährleisten,
die zu einer Qualitätsverbesserung
des Selbstdiagnoseprogramms beiträgt. Dies ist auch dann gewährleistet,
wenn eine Anforderung zur Korrektur der Durchführungsbedingung der Fehlererfassung
infolge einer Änderung
bei dem Diagnoseobjekt besteht.
-
Zur
Lösung
der Aufgaben der vorliegenden Erfindung wird eine Steuerungsvorrichtung
für ein Fahrzeug
mit einer Selbstdiagnosefunktion zum automatischen Erfassen eines
Fehlers des Diagnoseobjekts bereitgestellt.
-
Das
Selbstdiagnoseprogramm ist zur Verwirklichung der Selbstdiagnose
vorgesehen und beruht auf der Vorbedingung, dass die Fehlererfassungslogik
zur Erfassung eines Fehlers des Diagnoseobjekts durch die Aufteilung
derselben in Einheiten bezüglich
des Diagnoseobjekts beschrieben ist. Die Einheit des Diagnoseobjekts
wird bestimmt für
jedes Diagnoseobjekt oder für
jeden Fehlererfassungsablauf. Das Diagnoseobjekt entspricht dem
Fehlererfassungsablauf in einer ungefähren Eins-Zu-Eins-Basis, wobei
jedoch auch ein Diagnoseobjekt für
einen gemeinsamen Fehlererfassungsablauf vorliegen kann. Es ist
hierbei bevorzugt, die Erfassungslogik bereitzustellen für jeden
Fehlererfassungsablauf von einem Standpunkt der Bereitstellung eines
kompakten Selbstdiagnoseprogramms.
-
Unter
der vorstehend beschriebenen Vorbedingung wird die Bestimmungslogik
für die
Durchführungsbedingung,
wenn die Fehlererfassungslogik durchgeführt wird auf der Basis eines
externen Zeitsignals, gleichzeitig beschrieben, jedoch getrennt hinsichtlich
der Fehlererfassungslogik. Beispielsweise wird die Bestimmungslogik
der Durchführungsbedingung
als ein exklusives Programm beschrieben.
-
Das
Selbstdiagnoseprogramm ist eine objektorientierte Anordnung und
in Einheiten des Objekts aufgebaut, wobei dies die Wiederverwendung
mit der Einbeziehung des Fehlererfassungsobjekts zur Erfassung,
eine Fehlererfassung des diagnostischen Objekts, ein Steuerungsobjekt
und ein Ansteuerungsbestimmungsobjekt ermöglicht. Das Fehlerdiagnoseobjekt
ist für
jede Einheit in Bezug auf das Diagnoseobjekt vorbereitet bzw. ausgeführt.
-
In
diesem Fall bestimmt das Steuerungsobjekt das Fehlererfassungsobjekt
als ein Ansteuerungsobjekt auf der Basis des externen Zeitsignals. Daher
bestimmt das Ansteuerungsbestimmungsobjekt, ob das Fehlererfassungsobjekt
als ein Ansteuerungsobjekt, das mittels des Steuerungsobjekts bestimmt
wurde, angesteuert werden soll oder nicht. Es wird ebenfalls eine
Ansteuerungserlaubnis für
das Steuerungsobjekt auf der Basis des Bestimmungsergebnisses bereitgestellt.
-
Wird
die Ansteuerungserlaubnis ausgegeben, dann sendet das Steuerungsobjekt
eine Ansteuerungsanweisung zu dem Fehlererfassungsobjekt. Insbesondere
wird das Fehlererfassungsobjekt der Durchführungsbedingung durch das Ansteuerungsbestimmungsobjekt
getrennt von dem Fehlererfassungsobjekt durchgeführt bzw. verarbeitet. Ist es
somit erforderlich, die Durchführungsbedingung
infolge der Änderung
des Diagnoseobjekts zu korrigieren, dann kann diese Anforderung
erreicht werden durch Addieren einer Änderung des entsprechenden
Fehlererfassungsobjekts und des Ansteuerungsbestimmungsobjekts.
Es ist nicht länger
erforderlich, ein Fehlererfassungsobjekt zu korrigieren, das nicht
direkt mit dem Fehlererfassungsobjekt in Verbindung steht. Im Ergebnis
kann das Selbstdiagnoseprogramm auf einfache Weise geändert werden.
Da die Änderungen
aufsummiert werden, kann ein menschlicher Fehler vermindert werden,
wodurch ein Beitrag zur Verbesserung der Qualität des Selbstdiagnoseprogramms
geleistet wird.
-
Das
Ansteuerungsbestimmungsobjekt wird angewiesen zur Bestimmung, ob
das Fehlererfassungsobjekt des Ansteuerungsobjekts angesteuert werden
soll oder nicht, in Verbindung mit einer Beziehung zu der Fehlererfassung
aus den Fehlererfassungsobjekten. Die Beziehung zu der Fehlererfassung
gemäß der hier
vorliegenden Darstellung wird beispielsweise in dem Fall betrachtet,
dass ein Fehler des zweiten Sensors in Bezug auf den ersten Sensor nicht
genau bestimmt werden kann. Dies tritt auf, wenn der erste Sensor
gemäß der vorstehenden
Beschreibung als fehlerhaft bestimmt ist, und der erfasste Wert
des ersten Sensors für
den Diagnoseablauf des zweiten Sensors verwendet wird. Insbesondere
wird bezüglich
der Bestimmung unter Berücksichtigung
der Beziehung zu der Fehlererfassung angenommen, dass sie in Abhängigkeit
von zumindest einem der Fehlererfassungsergebnisse oder einer Fehlererfassungsdurchführungsaufzeichnung
des anderen Fehlererfassungsobjekts in Bezug auf das Fehlererfassungsobjekt
als ein Ansteuerungsobjekt bewirkt wird.
-
Da
elektrische Leistung normalerweise durch eine fahrzeugseitige Batterie
den Sensoren oder dergleichen zugeführt wird, wird in dem Fall, dass
die Batterie zeitweilige entfernt wird, ein Fehler bestimmt, obwohl
der Sensor selbst keinen Fehler erzeugt hat, da sich die in Verbindung
mit dem Sensor erfasste Spannung nicht länger in einem normalen Bereich
befindet. Befindet sich somit die Batteriespannung nicht in einem
vorbestimmten Bereich, dann wird der Diagnoseablauf (Diagnoseprozess)
im Allgemeinen beendet, oder es wird das Ergebnis der Diagnose nach
dem Diagnoseablauf ungültig
gemacht. Es ist daher wichtig, dass für verschiedene Fehlererfassungsabläufe sich
die Batteriespannung in einem normalen Bereich befindet.
-
Des
Weiteren kann das Ansteuerungsbestimmungsobjekt bestimmen, ob das
Fehlererfassungsobjekt des Ansteuerungsobjekts in Verbindung mit
der Vorbedingung der Fehlererfassung angesteuert werden soll oder
nicht. Es ist ausreichend für
eine Vorbedingung, dass die Bedingung zumindest innerhalb eines
Teils der Fehlererfassungsobjekte gemeinsam verwendet wird. Bezüglich der
Bestimmung der Vorbedingung wird angenommen, dass sie auf der Basis
von zumindest einem Wert der Spannungen der fahrzeugseitigen Batterie
und einer abgelaufenen Zeit nach dem Starten der Maschine des Fahrzeugs
durchgeführt
wird. Gibt es in diesem Zusammenhang einen Sensor, bei dem ein erfasster
Wert nicht in dem normalen Bereich unmittelbar nach dem Starten
der Maschine liegt, dann wird eine Bestimmung durchgeführt auf
der Basis des Verlaufs der Zeit nach dem Starten der Maschine.
-
Die
Vorbedingung zur Durchführung
der diagnostischen Funktion wird für die Beschreibung zusammengefasst
und kann somit auf einfache Weise geändert werden. Wird angenommen,
dass die Vorbedingung gemeinsam für eine Vielzahl der Fehlererfassungslogikteile
verwendet wird, dann trägt
diese Vorbedingung zur Verbesserung der Qualität des Selbstdiagnoseprogramms
in derartiger Weise bei, dass das Selbstdiagnoseprogramm in kompakter Weise
ausgeführt
werden kann.
-
Das
Steuerungsobjekt bestimmt das Fehlererfassungsobjekt des Ansteuerungsobjekts
auf der Basis eines externen Zeitsignals. Wird die Verarbeitungszeit
geändert,
dann kann dies durch Ändern
des Steuerungsobjekts abgedeckt werden. Insbesondere sind gemäß der vorliegenden
Erfindung die Verarbeitungszeit (Durchführungszeit) und die Durchführungsbedingung
unterschiedlich, und es werden diese individuell bestimmt. Das Steuerungsobjekt
und das Ansteuerungsbestimmungsobjekt sind getrennt vorgesehen.
-
Zur
Vereinfachung einer Änderung
des Steuerungsobjekts ist es vorzuziehen, dass das Steuerungsobjekt
eine Korrespondenztabelle aufweist zum Beschreiben des Fehlererfassungsobjekts
des Ansteuerungsobjekts, das zu dem externen Zeitsignal gehört. Das
Fehlererfassungsobjekt als ein Ansteuerungsobjekt wird unter Bezugnahme
auf die Korrespondenztabelle bestimmt. In einigen Fällen wird
eine Vielzahl von Fehlererfassungen in einer bestimmten Zeit durchgeführt bzw.
verarbeitet, beispielsweise in einer Weise, dass eine Wassertemperatursensordiagnose,
eine Luftströmungssensordiagnose
und eine Ansauglufttemperatursensordiagnose alle 64 ms durchgeführt werden.
Eine Beziehung zwischen dem Zeitsignal und dem Fehlererfassungsobjekt
als ein Ansteuerungsobjekt ist in einer Tabelle zusammengefasst,
so dass die Beziehung auf einfache Weise erkennbar und verständlich wird.
Die Durchführungszeit
(Verarbeitungszeit) wird auf einfache Weise geändert, wobei ein größerer Beitrag
geleistet wird bezüglich
der Verbesserung der Qualität
des Selbstdiagnoseprogramms.
-
Im
vorliegenden Fall wird das in der Steuerungseinrichtung für ein Fahrzeug
gemäß der vorstehenden
Beschreibung installierte Selbstdiagnoseprogramm aufgezeichnet,
beispielsweise auf einem Computer-lesbaren Aufzeichnungsmedium wie
einer FD, einer MO, einer DVD, einer CD-ROM, einer Festplatte oder
dergleichen. Es kann dieses Medium entsprechend dem Bedarf in Verbindung
mit einem Laden des Programms in das Computersystem angesteuert
werden. Es ist ebenfalls möglich,
im Voraus das Programm in einem Speicher ROM und einem Sicherungsspeicher
RAM als einem Computer-lesbaren Aufzeichnungsmedium zu speichern,
worauf sodann der Inhalt des Speichers ROM oder des Sicherungsspeicher
RAM für
eine Verwendung in das Computersystem eingelesen bzw. geladen wird.
-
Weitere
Bereiche der Anwendung der vorliegenden Erfindung werden aus der
nachfolgenden detaillierten Beschreibung verständlich. Dabei ist zu beachten,
dass die detaillierte Beschreibung und die spezifischen Ausführungsbeispiele
in Verbindung mit den bevorzugten Ausführungsbeispielen der Erfindung
lediglich zur Veranschaulichung dienen und nicht für den Bereich
der vorliegenden Erfindung beschränkend auszulegen sind.
-
Die
Erfindung zusammen mit den zusätzlichen
Aufgaben, Merkmalen und Vorteilen derselben wird aus der nachfolgenden
Beschreibung, den zugehörigen Patentansprüchen und
den jeweiligen Figuren deutlich. Es zeigen:
-
1 ein
Strukturdiagramm zur Veranschaulichung eines Maschinensteuerungssystems gemäß einem
Ausführungsbeispiel
der vorliegenden Erfindung,
-
2 ein
Blockschaltbild zur Veranschaulichung einer Struktur bzw. eines
Aufbaus einer Maschinensteuerungseinheit gemäß einem Ausführungsbeispiel
der vorliegenden Erfindung,
-
3 eine
beispielhafte grafische Darstellung zur Veranschaulichung eines
Konzepts eines Formats eines Selbstdiagnoseprogramms,
-
4 ein
MSC zur Veranschaulichung der Diagnoseabläufe in dem Selbstdiagnoseprogramm,
-
5 ein
Ablaufdiagramm zur Veranschaulichung eines Ansteuerungsablaufs,
-
6 eine
Korrespondenztabelle zur Identifizierung eines Ansteuerungsobjekts,
-
7 ein
Ablaufdiagramm zur Veranschaulichung des Ansteuerungsbestimmungsablaufs,
-
8 eine Bestimmungstabelle zur Bestimmung
der Erstellung der Durchführungstabelle,
und
-
9 ein
Ablaufdiagramm zur Veranschaulichung eines Fehlererfassungsablaufs
bzw. Fehlererfassungsprozesses.
-
Ein
Ausführungsbeispiel
der vorliegenden Erfindung wird nachstehend unter Bezugnahme auf die
zugehörigen
Figuren beschrieben. 1 ist ein Strukturdiagramm (Darstellung
des Aufbaus) zur Veranschaulichung eines gesamten Teils eines Maschinensteuerungssystems.
Das Maschinensteuerungssystem besteht im Wesentlichen aus einer
Maschine 11 und einer Maschinensteuerungseinheit 16 zur Steuerung
der Maschine 11. Die Maschinensteuerungseinheit 16 wird
nachstehend ebenfalls als eine „Steuerungseinrichtung für ein Fahrzeug" bezeichnet.
-
Ansaugluft
von einem Luftreiniger wird der Maschine 11 mittels eines
Ansaugrohrs 12 zugeführt. Dieses
Ansaugrohr ist zusammen angeordnet mit einem Luftströmungssensor 13 zum
Messen einer Ansaugluftmenge, sowie einem Ansauglufttemperatursensor 14 zur
Erfassung der Ansauglufttemperatur. Ferner ist ebenfalls ein Drosselventil 15 bzw.
eine Drosselklappe, die mittels eines Beschleunigungspedals angesteuert
bzw. angetrieben wird, mit dem Ansaugrohr 12 verbunden.
-
Unterschiedliche
Signale zur Angabe der Bedingungen der Maschine 11 werden
in die Maschinensteuerungseinheit 16 eingegeben. Diese
Signale umfassen: ein Ansaugluftmengenerfassungssignal des Luftströmungssensors 13,
ein Öffnungserfassungssignal
für die
Drosselklappe 15 von einem Drosselsensor 17, ein
Signal eines Luft-Brennstoffverhältnissensors 18 zur
Erfassung einer in dem Abgas enthaltenen Sauerstoffkonzentration,
ein Batteriespannungssignal von einer Batterie 19, ein
Erfassungssignal eines Wassertemperatursensors 20, ein Rotationssignal
von einem mittels der Maschine 11 angetriebenen Verteiler 21,
und ein Zylinderbestimmungssignal oder dergleichen.
-
Ferner
berechnet die Maschinensteuerungseinheit 16 auf der Basis
dieser unterschiedlichen Erfassungssignale eine Brennstoffeinspritzmenge
oder dergleichen entsprechend den Fahrbedingungen der Maschine 11.
Es gibt ebenfalls einen Brennstoffeinspritzbefehl an Injektoren 22a, 22b, 22c und 22d ab, die
jeweils für
eine Vielzahl von Zylindern der Maschine 11 vorgesehen
sind. Es wird ebenfalls eine Antriebssteuerung der Maschine 11 durch
Ausgabe eines Zündbefehlssignals
an eine Zündeinrichtung 33 durchgeführt.
-
Die
Maschinensteuerungseinheit führt
ferner die Diagnose für
jeden Teil des Fahrzeugs auf der Basis der Erfassungssignale jeder
Sensorgruppe durch. Hierfür
ist ein Testschalter 24 in Verbindung mit der Maschinensteuerungseinheit 16 zum
Einstellen einer Diagnosebetriebsart zur Ausgabe eines Fehlererfassungsergebnisses
vorgesehen. Eine Alarmlampe 25 zur Anzeige eines Diagnoseergebnisses
oder dergleichen als ein Testergebnis ist ebenfalls hiermit verbunden.
-
Der
Zündschalter 26 wird
verwendet zum Verbinden der Batterie 19 mit der Maschinensteuerungseinheit 16,
und ein Starterschalter 18 ist ebenfalls vorgesehen zum
Steuern eines Startermotors 27 in Verbindung mit dem Zündschalter 26.
-
Die
Maschinensteuerungseinheit 16 wird nachstehend beschrieben. 2 zeigt
ein Blockschaltbild zur Veranschaulichung des Aufbaus der Maschinensteuerungseinheit 16 gemäß 1.
Die Maschinensteuerungseinheit 16 ist mit einer Zentraleinheit
CPU 31 ausgestattet zur Bildung eines Computersystems.
Diese Zentraleinheit CPU 31 empfängt Eingabedaten von einer
analogen Eingabeschaltung 32. Eine digitale Eingabeschaltung 33 und analoge
Eingabedaten von der analogen Eingabeschaltung 32 werden
sodann der Zentraleinheit CPU 31 zugeführt, nach dem diese in digitale
Daten mittels eines A/D-Wandlers 34 umgewandelt wurden.
-
Die
folgenden Daten werden in die analoge Eingabeschaltung 32 eingegeben:
Ein Erfassungssignal (Us) des Luftströmungssensors 13, ein
Erfassungssignal (Thw) des Wassertemperatursensor 20, ein
Erfassungssignal (Tha) des Ansauglufttemperatursensors 14,
sowie eine Spannung (+B) der Batterie 19. Ferner werden
die folgenden Eingaben in die digitalen Eingabeschaltung 33 eingegeben:
Ein Zylinderunterscheidungssignal (Zylinderdiskriminierungssignal,
G1), und ein Drehwinkelsignal (Ne) des Verteilers 21, ein
Mager/Fett-Signal
(Ox) entsprechend der Sauerstoffkonzentration des Luft-Brennstoff-Verhältnissensors 18,
ein Signal (STO) zur Angabe der Öffnung
der Drosselklappe 15 des Drosselsensors 17, ein
Startsignal (STA) des Startschalters 28 und ein Signal
(T) zur Einstellung der Diagnosebetriebsart mittels des Testschalters 24.
-
Der
A/D-Wandler 34 ist mit einer Multiplexerfunktion vorgesehen
zum sequenziellen Lesen unterschiedlicher ausgewählter Erfassungssignale, die
an der analogen Eingabeschaltung 32 eingegeben werden,
in Abhängigkeit
von einem Befehl der Zentraleinheit CPU 31, und Umwandeln
dieser Signale in digitale Daten. Ferner führt eine Leistungszuführungsschaltung 35 die
Spannung +B der Batterie der Zentraleinheit 31 mittels
des Zündschalters 26 zu,
und führt
ebenfalls ständig
eine Sicherungsleistungsversorgung zu (Batt).
-
Ausgabedaten
der Zentraleinheit CPU 31 werden sodann zu Ausgabeschaltungen 36, 37 und 38 zugeführt und
werden als ein Ausgabesignal der Maschinensteuerungseinheit 16 gelesen.
Insbesondere gibt die Ausgabeschaltung 36 ein Zündbefehlssignal
(IGt) an die Zündeinrichtung 23 ab.
Ferner gibt die Ausgabeschaltung 37 ein Signal (B) zur
Angabe eines Diagnoseergebnisses zum Steuern der Beleuchtung einer
Alarmlampe 25 aus. Ein Ausgabesignal (τq) der Ausgabeschaltung 38 bewirkt
eine Anweisung der Brennstoffeinspritzmenge entsprechend einer Fahrbedingung
(Betriebsbedingung) der Maschine 11, und es wird dies an
die Injektoren 22a bis 22d zum Zwecke der Änderung
einer Einspritzmenge der Injektoren 22a bis 22d ausgegeben.
-
Eine
Speichereinrichtung bzw. ein Speicher 39 zum Speichern
des nachstehend noch beschriebenen Selbstdiagnoseprogramms ist innerhalb
der Zentraleinheit CPU (der Maschinensteuerungseinheit) 31 vorgesehen.
Die Speichereinrichtung 39 ist entsprechend eines Speichers
ROM oder eines Sicherungsspeichers RAM, oder eines nicht flüchtigen EEPROM
aufgebaut, welchem eine Leistungsversorgung zugeführt wird
zum Halten der Daten, auch wenn der Zündschalter 26 ausgeschaltet
wird. Das Selbstdiagnoseprogramm wird in dem Speicher ROM gespeichert.
Wie es nachstehend noch veranschaulicht wird, werden ein Fehlererfassungsergebnis
und eine Fehlererfassungsdurchführungsaufzeichnung
auf der Basis eines Selbstdiagnoseprogramms in dem Sicherungsspeicher
RAM oder dem Speicher EEPROM gespeichert.
-
Das
vorliegende Ausführungsbeispiel
ist dadurch gekennzeichnet, dass das Selbstdiagnoseprogramm in dem Speicher
ROM der Speichereinrichtung 39 gespeichert ist. Es wird
nun das Selbstdiagnoseprogramm nachstehend beschrieben.
-
3 zeigt
eine veranschaulichende Darstellung, die das Konzept einer Struktur
(Architektur, Aufbau) des Selbstdiagnoseprogramms zeigt. Das Selbstdiagnoseprogramm
wird mittels einer Vielzahl von Programmen entsprechend eines objektorientierten
Designs (objektorientierter Aufbau) gebildet. Wie es bereits bekannt
ist bei dem objektorientierten Design liegt der Schwerpunkt bei
der Verarbeitung bzw. den Abläufen
(beispielsweise bei einem Ablauf zur Brennstoffeinspritzung) mittels
Software. Andererseits wird eine Modellierung in einer Grundeinheit des „Gegenstands" vorgenommen, und
es wird der Ablauf (Prozess) auf der Basis der Eigenschaften und
des Verhaltens (Betrieb) dieses Gegenstands beschrieben. Die Grundeinheit
ist ein so genanntes „Objekt", und das auf der
Basis dieses objektorientierten Designablaufs beschriebene Programm
wird auf der Basis dieses Objekts beschrieben, das als eine Minimalstruktureinheit
definiert ist. Das Programm als Ganzes umfasst eine Reihe von Abläufen (Prozesse),
die durch das Koppeln der Objekte mit Nachrichten von einem Objekt
zu einem anderen durchgeführt
wird. Ein Objekt wird mit Daten (Attribute) und Verfahren (Abläufen) für diese
Daten versorgt und verarbeitet ein Verfahren der Nachrichten von anderen
Objekten. In diesem Ausführungsbeispiel wird
die Anordnung, wobei der Ausdruck „Objekt" das Subjekt eines Satzes ist, beispielsweise „ein Objekt führt ...
durch" verwendet,
wobei es jedoch auch möglich
ist, dass das Ablaufprogramm mittels der Zentraleinheit CPU 31 durchgeführt wird.
-
3 zeigt
lediglich das für
die Veranschaulichung des Ausführungsbeispiels
erforderliche Objekt. Insbesondere umfasst das Selbstdiagnoseprogramm
gemäß diesem
Ausführungsbeispiel
ein Diagnosesteuerungsobjekt 100, ein Diagnoseansteuerungsbestimmungsobjekt 200 und
ein Fehlererfassungsobjekt 300. In dieser Figur (und auch
in anderen Figuren) wird ein Objekt als „Obj" bezeichnet. Diese Objekte 100 bis 300 sind
Programme, die auf einer Plattform PF 400 angeordnet sind
und die bearbeitet werden, während
ein Informationsaustausch im erforderlichen Maß mit der Plattform PF 400 durchgeführt wird.
-
Nach
der Ausgabe einer Diagnosestartmeldung als ein „Zeitsignal" von der Plattform
PF 400 bestimmt das Diagnosesteuerungsobjekt 100 das
Fehlererfassungsobjekt 300 als ein Ansteuerungsobjekt. Danach
wird die Ansteuerungsbestätigung
für das Fehlererfassungsobjekt 300 des
Ansteuerungsobjekts zu dem Diagnoseansteuerungsbestimmungsobjekt 200 angefordert.
-
Wird
eine Ansteuerungsbestätigungsanforderung
von dem Diagnosesteuerungsobjekt 100 ausgegeben, dann erhält das Diagnoseansteuerungsbestimmungsobjekt 200 die
Information, die erforderlich ist zur Bestimmung der Durchführungsbedingung. Ferner
wird eine Bestätigung
oder eine Nicht-Bestätigung
auf der Basis dieser Information zu dem Diagnosesteuerungsobjekt 100 bereitgestellt.
Gemäß der Darstellung
in 3 wird eine Information bezüglich des Fahrzeugs von der
Plattform PF 400 erhalten, während eine Information bezüglich der
Fehlererfassung aus dem Sicherungs-RAM oder dem EEPROM der Speichereinrichtung 30 erhalten
wird.
-
Das
Diagnosesteuerungsobjekt 100 gibt lediglich dann, wenn
eine Bestätigungsnachricht
von dem Diagnoseansteuerungsbestimmungsobjekt 200 empfangen
wird, eine Ansteuerungsanweisung zu dem Fehlererfassungsobjekt 300 des
Ansteuerungsobjekts aus. Das Fehlererfassungsobjekt 300 ist
vorgesehen für
jedes Membranobjekt (diaphragm object) wie einen Wassertemperatursensor
oder einen Ansauglufttemperatursensor. Es wird der Fehler des diagnostischen
Objekts auf der Basis der Ansteuerungsanweisung des Diagnosesteuerungsobjekts 100 ermittelt.
Das Fehlererfassungsergebnis und die Fehlererfassungsdurchführungsaufzeichnung
werden in der Speichereinrichtung 39 gespeichert. Im Einzelnen
ist ein (nicht gezeigtes) Objekt zum Speichern des Fehlererfassungsergebnisses
und der Durchführungsaufzeichnung
vorgesehen (vorbereitet), und eine Nachricht für dieses Objekt wird ausgegeben
und gespeichert. Auf der Basis des Fehlererfassungsergebnisses wird
in diesem Zusammenhang die Alarmlampe 25 ausgeleuchtet.
-
Jedes
der Objekte 100 bis 300 ist mit verschiedenen
Nachrichten entsprechend der vorstehenden Beschreibung integriert
und führt
eine Reihe von Abläufen
(Prozesse) durch. Als nächstes
wird die Kopplung der Objekte 100 bis 300 in weiteren
Einzelheiten unter Bezugnahme auf eine Nachrichtenfolgetabelle (Message
Sequence Chart, auch als „MSC" bezeichnet) veranschaulicht.
-
4 zeigt
das MSC-Diagramm zur Veranschaulichung der Diagnoseabläufe. Zuerst
zeigt die Plattform PF 400 den Start der Diagnose dem Diagnosesteuerungsobjekt 100 an.
Nach dem Empfangen der Diagnosestartnachricht von der Plattform
PF 400 führt
das Diagnosesteuerungsobjekt 100 einen Ansteuerungsablauf
S1 durch. Mit diesem Ansteuerungsablauf S1 wird das Fehlererfassungsobjekt 300 des
Ansteuerungsobjekts bestimmt. Das Fehlererfassungsobjekt 300 wird
mittels der Diagnosebestätigungsanforderung
zu dem Diagnoseansteuerungsbestimmungsobjekt 200 angesteuert.
Wird die Ansteuerungsbestätigungsanforderung
angezeigt, dann führt
das Diagnoseansteuerungsbestimmungsobjekt 200 einen Ansteuerungsbestimmungsablauf S2
durch. Hierbei erfolgt eine Anzeige jeder Bestätigung/Nicht-Bestätigung zu
dem Diagnosesteuerungsobjekt 100 auf der Basis der erhaltenen
Information. Wird die Ansteuerungsanweisung auf der Basis der Bestätigungsnachricht
ausgegeben, dann führt
das Fehlererfassungsobjekt 300 einen Fehlererfassungsablauf
S3 durch. Das Fehlererfassungsergebnis und die Durchführungsaufzeichnung
auf der Basis des Fehlererfassungsablaufs S3 werden in der Speichereinrichtung 39 in
der vorstehend veranschaulichten Weise gespeichert.
-
Nach
dem Abschluss des Fehlererfassungsablaufs S3 zeigt das Fehlererfassungsobjekt 300 das Ende
der Fehlererfassung zu dem Diagnosesteuerungsobjekt 100 an.
Wird die Ende-Nachricht von sämtlichen
Fehlererfassungsobjekten 300 erhalten, die die Ansteuerungsanweisung
ausgegeben haben, dann schließt
das Diagnosesteuerungsobjekt 100 den Diagnoseablauf durch
Anzeigen des Endes der Diagnose an die Plattform PF 400 ab.
-
Nachstehend
werden der Ansteuerungsablauf S1, der Ansteuerungsbestimmungsablauf
S2 und der Fehlererfassungsablauf S3, die jeweils in jedem der Objekte 100 bis 300 durchgeführt werden, veranschaulicht.
-
Im
Einzelnen wird diese Veranschaulichung das Verständnis für die Wirkungsweise der Objekte 100 bis 300 vertiefen.
-
Zuerst
wird der Ansteuerungsablauf (Ansteuerungsprozess) S1 unter Bezugnahme
auf die 5 und 6 beschrieben. 5 zeigt
ein Ablaufdiagramm zur Veranschaulichung des Ansteuerungsablaufs
S1, der durch das Diagnosesteuerungsobjekt 100 verarbeitet
bzw. durchgeführt
wird. Dieser Ansteuerungsablauf S1 wird gemäß der vorstehenden Beschreibung
durchgeführt,
wenn die Diagnosestartnachricht von der Plattform PF 400 erhalten
wird.
-
In
dem ersten Schritt (nachstehend wird der Begriff „Schritt" lediglich mit dem
Buchstaben „S" bezeichnet) 100 wird
das Fehlererfassungsobjekt 300 des Ansteuerungsobjekts
bestimmt. Diese Bestimmung wird auf der Basis einer Ansteuerungsauslösung durchgeführt, die
eine von der Plattform PF 400 eingegebene Diagnosestartanzeigeeingabe
ist. Die Zusammenhänge
zwischen der Ansteuerungsauslösung
und dem Fehlererfassungsobjekt 300 als dem Ansteuerungsobjekt
ist in der Korrespondenztabelle gemäß der Darstellung in 6 gezeigt.
Aus dieser Korrespondenztabelle ist es verständlich, dass eine Vielzahl
von Fehlererfassungsobjekten 300 eine Wassertemperatursensordiagnose,
eine Luftströmungssensordiagnose
und eine Ansauglufttemperatursensordiagnose für die Ansteuerungsauslösung durchführen, die
alle 64 ms eingegeben wird, und die zum Ansteuerungsobjekt werden.
Es wird ferner verständlich,
dass das Fehlererfassungsobjekt 300 zur Durchführung der
Drosselsensordiagnose für
die Ansteuerungsauslösung,
die alle 128 ms eingegeben wird, zu dem Ansteuerungsobjekt wird.
Als eine Ansteuerungsauslösung
wird ein Zeitsignal mit einem vorbestimmten Zeitintervall als Beispiel
eingegeben, wobei dies jedoch auch ein Signal sein kann, das von dem
Drehwinkel einer Maschinenkurbelwelle abhängig ist.
-
In
dem nachfolgenden Schritt S1010 benachrichtigt die Ansteuerungsbestätigungsanforderung
das Diagnoseansteuerungsbestimmungsobjekt 200. Diese Ansteuerungsbestätigungsanforderung wird
sequenziell von den in der Korrespondenztabelle gemäß 6 angegebenen
linksseitigen Objekten aus adressiert. Wird beispielsweise eine
Ansteuerungsauslösung
gemäß 64 ms
eingegeben, dann wird die Ansteuerungsbestätigung des Fehlererfassungsobjekts 300 zur
Durchführung
der Wassertemperatursensordiagnose angefordert.
-
Für diese
Ansteuerungsbestätigungsanforderung
zeigt das Diagnoseansteuerungsbestimmungsobjekt 200 jede
der Bestätigungs-/Nicht-Bestätigungs-Nachrichten
an. Daher wird in dem nächsten
Schritt S1020 bestimmt, ob die Bestätigungsnachricht angegeben
wurde oder nicht. Wurde die Bestätigungsnachricht
angegeben (S1020: JA), dann wird die Ansteuerungsanweisung zu dem
Fehlererfassungsobjekt 300 in Schritt S1030 ausgegeben, und
es geht der Ablauf danach zu Schritt S1040 über. Wird beispielsweise die
Ansteuerung der Wassertemperatursensordiagnose bestätigt, dann
wird die Ansteuerungsanweisung an das Fehlererfassungsobjekt 300 zur
Durchführung
der Wassertemperatursensordiagnose ausgegeben. Ist andererseits
die Bestätigungsnachricht
nicht angezeigt bzw. bestätigt, (S1020:
NEIN), und insbesondere dann, wenn eine Nicht-Bestätigung angezeigt
ist, dann wird der Ablauf gemäß Schritt
S1030 nicht durchgeführt,
und es geht der Ablauf zu Schritt S1040 über.
-
In
Schritt S1040 wird bestimmt, ob die Ansteuerungsbestätigung des
Fehlererfassungsobjekts 300, das als das Ansteuerungsobjekt
bestimmt ist, vollständig
angefordert ist oder nicht. In einem Beispiel, bei dem die Ansteuerungsauslösung alle
64 ms ausgegeben wird, wird beispielsweise bestimmt, ob sämtliche
Bestätigungsanforderungen
ausgegeben wurden oder nicht, wie in der Reihenfolge von: die Wassertemperatursensordiagnose → die Luftströmungssensordiagnose → die Ansauglufttemperatursensordiagnose.
Wurden sämtliche
Ansteuerungsbestätigungen
angefordert (Schritt S1040: JA), dann ist der Ansteuerungsablauf
S1 abgeschlossen. Ist hingegen eine Ansteuerungsbestätigung nicht
angefordert (S1040: NEIN), dann wird der Ablauf gemäß Schritt
S1010 wiederholt.
-
Nachstehend
wird nun der Ansteuerungsbestimmungsablauf S2 unter Bezugnahme auf 7 und 8 beschrieben. 7 zeigt
ein Ablaufdiagramm zur Veranschaulichung des Ansteuerungsbestimmungsablaufs
S2, der durch das Diagnoseansteuerungsbestimmungsobjekt 200 durchgeführt bzw.
verarbeitet wird. Dieser Ansteuerungsbestimmungsablauf S2 wird durchgeführt, wenn
die Ansteuerungsbestätigungsanforderung
(S1010 in 5) von dem Diagnosesteuerungsobjekt 100 ausgegeben
wird.
-
In
einem ersten Schritt S2000 wird eine Information beschafft, die
erforderlich ist zur Bestimmung der Durchführungsbedingungen. In diesem
Schritt werden das Fehlererfassungsergebnis, die Fehlererfassungsdurchführungsaufzeichnung,
die Spannung einer fahrzeugeigenen Batterie +B und der Zeitablauf
seit dem Starten der Maschine erhalten. In dem nachfolgenden Schritt
S2010 wird bestimmt, ob die Durchführungsbedingungen eingestellt
sind oder nicht. Diese Bestimmung erfolgt auf der Basis der Durchführungsbedingungsbestimmungstabelle
gemäß der Darstellung
in den 8A und 8B.
-
In 8A ist
eine Beziehungstabelle gezeigt zur Angabe der Beziehung zwischen
dem Diagnoseelement als ein Bestimmungsobjekt sowie den anderen
Diagnoseelementen (Diagnoseeinheiten, Diagnosegegenstände). Ist
beispielsweise eine Linie bezüglich
der Drosselsensordiagnose betroffen, dann entspricht der Wassertemperatursensor
einer „normalen
Bedingung". Dies
bedeutet, dass die Durchführungsbedingung
der Drosselsensordiagnose eingestellt ist, wenn das Diagnoseergebnis
des Wassertemperatursensors normal ist. Auf diese Weise wird die
Durchführungsbedingung
für die
Luftströmungssensordiagnose
eingestellt, nach dem die Drosselsensordiagnose durchgeführt ist
und der Ansauglufttemperatursensor sich in einer normalen Bedingung befindet.
Entsprechend dieser Beziehungstabelle kann die Einstellung der Durchführungsbedingung auf
der Basis des Fehlererfassungsergebnisses und der Fehlererfassungsdurchführungsaufzeichnung bestimmt
werden, die in Schritt S200 erhalten werden.
-
Des
Weiteren zeigt 8B eine Bedingungstabelle zur
Angabe einer Vorbedingung für
die Diagnosegegenstände
als ein Bestimmungsobjekt. Wird beispielsweise eine Linie bezüglich der
Wassertemperatursensordiagnose betrachtet, dann wird die Zeit nach
der Zündung
auf 0 Sekunden eingestellt und es wird die Batteriespannung auf
10 V (V = Volt) eingestellt. Dies bedeutet, dass die Wassertemperatursensordiagnosedurchführungsbedingung unmittelbar
nach dem Starten der Maschine und wenn die Batteriespannung 10 V
oder höher
ist, eingestellt wird. Auf diese Weise wird die Ansauglufttemperatursensor-Diagnosedurchführungsbestimmung
eingestellt, wenn die Batteriespannung nach 10 Sekunden, die seit
dem Starten der Maschine abgelaufen sind, die Spannung von 10 V
oder höher
ist. Entsprechend dieser Bedingungstabelle kann die Durchführungsbedingung
auf der Basis der Spannung B+ der Batterie 19 und des Zeitablaufs
nach dem Starten der Maschine, die in Schritt S2000 erhalten werden,
bestimmt werden.
-
Die 8A und 8B zeigen
Beispiele der Diagnosegegenstände
in Bezug auf die vier Sensoren als die Diagnoseobjekte. In einer
tatsächlichen Situation
ist es jedoch ausreichend, wenn gleiche Bestimmungstabellen für etwa 200
Diagnoseobjekte erzeugt werden. Wird gemäß Schritt S2010 bestimmt, dass
die Durchführungsbedingung
eingestellt ist (S2010: JA), dann wird eine Bestätigungsnachricht in Schritt
S2020 ausgegeben, und es wird danach der Ansteuerungsbestimmungsablauf
S2 abgeschlossen. Wird hingegen bestimmt, dass die Durchführungsbedingung
noch nicht eingestellt wurde (S2010: NEIN), dann wird in Schritt
S2030 eine nicht Bestätigungsnachricht
ausgegeben, und es wird danach der Ansteuerungsbestimmungsablauf
S2 abgeschlossen.
-
Nachstehend
wird der Fehlererfassungsablauf S3 unter Bezugnahme auf 9 beschrieben. Hierbei
wird ein Beispiel des Ablaufs zur Durchführung des Fehlererfassungsobjekts 300 für die Wassertemperatursensordiagnose
veranschaulicht. Dieser Fehlererfassungsablauf S3 wird durchgeführt, wenn
die Ansteuerungsanweisung von dem Diagnosesteuerungsobjekt 100 ausgegeben
wird.
-
In
dem ersten Schritt S3000 wird der Wassertemperatursensorwert gelesen.
Hierbei ist der Wassertemperatursensorwert ein Spannungswert des
Signals (Thw), das mittels des Wassertemperatursensors 20 erfasst
wird. In dem nachfolgenden Schritt 3010 wird bestimmt,
ob der Wassertemperatursensorwert sich in einem vorbestimmten Bereich befindet
oder nicht. In einem Aufbau, bei dem der Wassertemperatursensorwert
in einem Bereich von 0.1 V bis 4.9 V als Beispiel erhalten wird,
und falls dieser Wert 0.1 V oder weniger beträgt, oder dieser Wert 4.9 V
oder mehr beträgt,
wird angenommen, dass der Wassertemperatursensorwert infolge einer Leitungsunterbrechung
festgelegt ist. Wird dieser Wert als innerhalb des vorbestimmten
Bereichs liegend bestimmt (S3010: JA), dann wird eine normale Bedingung
in Schritt S3020 bestimmt. Danach wird das Ende der Fehlererfassung
angezeigt, und es wird der Fehlererfassungsablauf S3 abgeschlossen.
Wird andererseits bestimmt, dass der Sensorwert außerhalb
des vorbestimmten Bereichs liegt (S3010: NEIN), dann wird in Schritt
S3030 eine abnormale Bedingung bestimmt. Danach wird das Ende des Fehlererfassungsablaufs
angezeigt, und es ist somit dieser Fehlererfassungsablauf S3 abgeschlossen.
-
Die
Auswirkungen des Formats jedes der Objekte 100 bis 300 gemäß der vorstehenden
Beschreibung wird nachstehend veranschaulicht. Dabei werden Probleme
des bestehenden Programmformats erneut wiederholt, um das Verständnis für die Erklärungen zu
erleichtern. Die Fehlererfassungslogik wird für jedes Diagnoseobjekt beschrieben.
Es wurde ebenfalls vorgeschlagen, eine Steuerungseinrichtung bereitzustellen
zur Bestimmung der Durchführungszeit
für die
Fehlererfassungslogik.
-
Es
ist jedoch nicht nur nötig,
die Zeit sondern ebenfalls die Beziehung zwischen der anderen Fehlererfassungslogik
für die
Durchführung
eines Teils der Fehlererfassungslogik zu berücksichtigen. Daher wurde die
Durchführungsbedingung
unter Berücksichtigung
dieser Beziehung auf der Basis der Fehlererfassungslogik bestimmt.
Es wurde in einigen Fällen
gefordert, nicht nur die entsprechende Fehlererfassungslogik, sondern
auch die Fehlererfassungslogik mit einer Beziehung zu der Änderung
in dem Diagnoseobjekt oder der Änderung
in der Durchführungszeit
zu korrigieren.
-
In
diesem Ausführungsbeispiel
bestimmt das Diagnoseansteuerungsbestimmungsobjekt 200 die Beziehung
zu der anderen Fehlererfassungslogik (siehe auch 8A),
im Gegensatz zu dem Fehlererfassungsobjekt 300. Auch wenn
das Diagnoseobjekt geändert
wird und es erforderlich ist, die Durchführungsbedingung zu ändern, kann
dies abgedeckt bzw. berücksichtigt
werden durch Ändern
des entsprechenden Fehlererfassungsobjekts 300 und des Diagnoseansteuerungsbestimmungsobjekts 200.
Es ist ferner nicht länger
erforderlich, das Fehlererfassungsobjekt 300 zu ändern, das
nicht direkt auf das geänderte
Diagnoseobjekt bezogen ist. Im Ergebnis kann das Selbstdiagnoseprogramm
auf einfache Weise geändert
werden. Da ferner ein menschlicher Fehler durch das Aufsummieren
verschiedener Änderungen
vermindert ist, leistet dies einen erheblichen Beitrag zu Verbesserung
des Selbstdiagnoseprogramms.
-
Ferner
bestimmt gemäß diesem
Ausführungsbeispiel
das Diagnoseansteuerungsbestimmungsobjekt 200 eine Vorbedingung
einer Fehlererfassung (siehe auch 8B) in
einem Maximum (S2010 in 7). Im Ergebnis kann die Vorbedingung
der Diagnosedurchführung
ebenfalls in dem Diagnoseansteuerungsbestimmungsobjekt 200 zusammengefasst
werden, und es kann dies somit auf einfache Weise geändert werden.
Da mehrere Vorbedingungen gemeinsam verwendet werden können, wird
diese Vorbedingung ebenfalls zu einer Verbesserung der Qualität des Selbstdiagnoseprogramms in
der Weise beitragen, dass das Selbstdiagnoseprogramm in einer kompakteren
Form zusammengestellt werden kann im Vergleich zu dem Programmformat
zur Bestimmung der Vorbedingungen in den individuellen Fehlererfassungslogikteilen.
-
Da
ferner gemäß diesem
Ausführungsbeispiel
das Diagnosesteuerungsobjekt 100 zusätzlich zu dem Diagnoseansteuerungsbestimmungsobjekt 200 vorgesehen
ist, und falls die Durchführungszeit geändert wird,
kann dies durch eine Änderung
des Diagnosesteuerungsobjekts 100 abgedeckt bzw. berücksichtigt
werden. Das Diagnosesteuerungsobjekt 100 bestimmt das Fehlererfassungsobjekt 300 des Ansteuerungsobjekts
auf der Basis der in 6 gezeigten Korrespondenztabelle.
Ist die Beziehung zwischen der Ansteuerungsauslösung, die eine Diagnosestartnachricht
ist, und dem Fehlererfassungsobjekt 300 des Ansteuerungsobjekts
in der Tabelle angegeben, dann kann ein Arbeiter sehr schnell die
Beziehung erfassen und kann die Durchführungszeit auf einfache Weise ändern. Im
Ergebnis wird hierdurch die Qualität des Selbstdiagnoseprogramms
verbessert.
-
Hierbei
entspricht das Diagnosesteuerungsobjekt 100 dieses Ausführungsbeispiels
dem „Steuerungsobjekt", während das
Diagnoseansteuerungsbestimmungsobjekt 200 dem „Ansteuerungsbestimmungsobjekt" entspricht, und
wobei das Fehlererfassungsobjekt 300 dem „Fehlererfassungsobjekt" entspricht.
-
Die
vorliegende Erfindung ist nicht auf das vorstehend beschriebene
Ausführungsbeispiel
beschränkt.
Sie ermöglicht
unterschiedliche Änderungen
auf verschiedene Arten innerhalb des Bereichs, der nicht von dem
Bereich der Patentansprüche
der vorliegenden Erfindung abweicht. Beispielsweise werden gemäß diesem
Ausführungsbeispiel
das Fehlererfassungsergebnis, die Fehlererfassungsdurchführungsaufzeichnung,
die Spannung +B der Batterie 19 und der Zeitablauf nach
dem Starten der Maschine durch Bestimmen einer Einstellung der Durchführungsbedingung
erhalten. Es ist jedoch ausreichend, wenn die Information zur Bestimmung
der Einstellung der Durchführungsbedingung
und die erforderliche Information nicht auf die vorstehend angegebenen
beschränkt
ist. Es ist ebenfalls möglich, die
Einstellung bzw. den Aufbau der Durchführungsbedingung gemäß der Information
in der Maschinensteuerungseinheit 16 zu bestimmen, die
nicht auf das Diagnoseobjekt und die Hardware des Fahrzeugs bezogen
ist.
-
Gemäß diesem
Ausführungsbeispiel
ist ferner das Fehlererfassungsobjekt 300 für jedes
Diagnoseobjekt vorgesehen, wobei es jedoch möglich ist, dieses Objekt für jeden
Fehlererfassungsablauf vorzusehen bzw. vorzubereiten, da der Fehlererfassungsablauf
gemeinsam für
einige Diagnoseobjekte durchgeführt
werden kann. Daher kann das Diagnoseprogramm in Form einer kompakten
Anordnung (kompakter Programmaufbau) gebildet werden.
-
Zur
Sicherstellung einer einfachen Änderung eines
Selbstdiagnoseprogramms zur Bereitstellung eines Beitrags in Richtung
einer Verbesserung der Qualität
dieses Programms und in dem Falle, dass es erforderlich ist, eine
Durchführungsbedingung
der Fehlererfassung infolge der Änderung
eines Diagnoseobjekts zu ändern,
ist ein Diagnoseansteuerungsbestimmungsobjekt (200) vorgesehen
zur Bestimmung einer Durchführungsbedingung
eines Fehlererfassungsobjekts (300), das mittels eines
Diagnosesteuerungsobjekts (100) angesteuert wird. Das Diagnosesteuerungsobjekt
(100) bestimmt das Fehlererfassungsobjekt (300)
des Ansteuerungsobjekts und fordert eine Ansteuerungsbestätigung zu
dem Diagnoseansteuerungsbestimmungsobjekt (200) an. Nach
der Ausgabe der Ansteuerungsbestätigungsanforderung
erhält
das Diagnoseansteuerungsbestimmungsobjekt (200) die Information,
die erforderlich ist für
die Durchführungsbedingungsbestimmung,
und zeigt eine Ansteuerungsbestätigungs-/Nicht-Bestätigungsnachricht
an. Lediglich dann, wenn die Bestätigungsnachricht angezeigt wird,
gibt das Diagnosesteuerungsobjekt (100) eine Ansteuerungsanweisung
an das Fehlererfassungsobjekt (300) des Diagnoseobjekts
aus.