DE69730578T2 - Verfahren zur Steuerung des Luft-Kraftstoffverhältnisses in einer Brennkraftmaschine - Google Patents

Verfahren zur Steuerung des Luft-Kraftstoffverhältnisses in einer Brennkraftmaschine Download PDF

Info

Publication number
DE69730578T2
DE69730578T2 DE69730578T DE69730578T DE69730578T2 DE 69730578 T2 DE69730578 T2 DE 69730578T2 DE 69730578 T DE69730578 T DE 69730578T DE 69730578 T DE69730578 T DE 69730578T DE 69730578 T2 DE69730578 T2 DE 69730578T2
Authority
DE
Germany
Prior art keywords
cylinder
time
torque
fluctuations
angular velocity
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
DE69730578T
Other languages
English (en)
Other versions
DE69730578D1 (de
Inventor
Nobuyuki Toyota-shi Shibagaki
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.)
Toyota Motor Corp
Original Assignee
Toyota Motor 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 Toyota Motor Corp filed Critical Toyota Motor Corp
Publication of DE69730578D1 publication Critical patent/DE69730578D1/de
Application granted granted Critical
Publication of DE69730578T2 publication Critical patent/DE69730578T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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/02Circuit arrangements for generating control signals
    • F02D41/14Introducing closed-loop corrections
    • F02D41/1438Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor
    • F02D41/1486Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor with correction for particular operating conditions
    • 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/02Circuit arrangements for generating control signals
    • F02D41/14Introducing closed-loop corrections
    • F02D41/1497With detection of the mechanical response of the engine
    • 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/02Circuit arrangements for generating control signals
    • F02D41/14Introducing closed-loop corrections
    • F02D41/1497With detection of the mechanical response of the engine
    • F02D41/1498With detection of the mechanical response of the engine measuring engine roughness
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D2200/00Input parameters for engine control
    • F02D2200/02Input parameters for engine control the parameters being related to the engine
    • F02D2200/10Parameters related to the engine output, e.g. engine torque or engine speed
    • F02D2200/1002Output torque
    • F02D2200/1004Estimation of the output torque
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D2200/00Input parameters for engine control
    • F02D2200/02Input parameters for engine control the parameters being related to the engine
    • F02D2200/10Parameters related to the engine output, e.g. engine torque or engine speed
    • F02D2200/1015Engines misfires
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D2200/00Input parameters for engine control
    • F02D2200/50Input parameters for engine control said parameters being related to the vehicle or its components
    • F02D2200/501Vehicle speed
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D2200/00Input parameters for engine control
    • F02D2200/70Input parameters for engine control said parameters being related to the vehicle exterior
    • F02D2200/702Road conditions

Landscapes

  • Engineering & Computer Science (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Mechanical Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)
  • Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich auf ein Verfahren zur Steuerung des Kraftstoff-Luft-Verhältnisses in einem Motor.
  • 2. Beschreibung der verwandten Technik
  • Fachbekannt ist ein Verbrennungsmotor, bei dem eine erste Winkelgeschwindigkeit der Kurbelwelle aus der Zeit gefunden wird, die die Kurbelwelle braucht, um sich von 30° bis 60° nach dem oberen Totpunkt des Verdichtungshubs dieser Periode zu drehen, eine zweite Winkelgeschwindigkeit der Kurbelwelle aus der Zeit gefunden wird, die die Kurbelwelle braucht, um sich von 90° bis 120° nach dem oberen Totpunkt des Verdichtungshubs zu drehen, das durch einen Zylinder erzeugte Drehmoment aus dem Quadrat der ersten Winkelgeschwindigkeit und dem Quadrat der zweiten Winkelgeschwindigkeit gefunden wird und der Betrag der Drehmomentschwankungen aus dem Betrag der Schwankungen des erzeugten Drehmoments berechnet wird (siehe die US-Patentschrift Nr. 4 691 286).
  • Wenn die Verbrennung in einem Zylinder erfolgt, bewirkt nämlich der Verbrennungsdruck, dass die Winkelgeschwindigkeit der Kurbelwelle von einer ersten Winkelgeschwindigkeit ωa auf eine zweite Winkelgeschwindigkeit ωb ansteigt. Wenn das Rotationsträgheitsmoment des Motors I ist, dann bewirkt zu dieser Zeit der Verbrennungsdruck, dass die kinetische Energie von ½·Iωa2 auf ½·Iωb2 ansteigt. Grob gesagt, bewirkt der Anstieg der kinetischen Energie von ½·I·(ωb2 – ωa2), dass ein Drehmoment erzeugt wird, so dass das erzeugte Drehmoment zu (ωb2 – ωa2) proportional wird. Daher wird das erzeugte Drehmoment aus dem Unterschied zwischen dem Quadrat der ersten Winkelgeschwindigkeit ωa und dem Quadrat der zweiten Winkelgeschwindigkeit ωb gefunden, und daher wird im oben erwähnten Verbrennungsmotor der Betrag der Drehmomentschwankungen aus dem so gefundenen, erzeugten Drehmoment berechnet.
  • Wenn es aber möglich ist, auf diese Weise den Betrag der Drehmomentschwankungen zu berechnen, dann wäre es auch möglich, auf der Basis dieses Betrages der Drehmomentschwankungen das Kraftstoff-Luft-Verhältnis zur Magergrenze zu steuern. Wenn sich das Kraftstoff-Luft-Verhältnis auf der fetten Seite der Magergrenze befindet, ist nämlich der Betrag der Drehmomentschwankungen klein, aber wenn sich das Kraftstoff-Luft-Verhältnis auf der mageren Seite der Magergrenze befindet, wird der Betrag der Drehmomentschwankungen gross, so dass es möglich ist, das Kraftstoff-Luft-Verhältnis zur Magergrenze zu steuern, indem auf der Basis des Betrages der Drehmomentschwankungen das Kraftstoff-Luft-Verhältnis so korrigiert wird, dass der Betrag der Drehmomentschwankungen innerhalb eines vorbestimmten Bereichs liegt. Diese Art von Steuerung des Kraftstoff-Luft-Verhältnisses wird möglich, wenn die Schwankungen des Drehmoments, die durch die Schwankungen des Verbrennungsdrucks verursacht werden, durch die Schwankungen des Drehmoments ausgedrückt werden, die auf der Basis der ersten Winkelgeschwindigkeit ωa und der zweiten Winkelgeschwindigkeit ωb berechnet werden.
  • Wenn das Fahrzeug aber auf einer unebenen Strasse fährt, erleidet der Motorantriebsmechanismus Torsionsschwingungen grosser Amplitude, und im Ergebnis schwankt das auf der Basis der ersten Winkelgeschwindigkeit ωa und der zweiten Winkelgeschwindigkeit ωb berechnete Drehmoment beträchtlich. Das Auftreten grosser Schwankungen des Drehmoments, die nicht durch Schwankungen des Verbrennungsdruckes verursacht werden, bedeutet, dass ein korrigiertes Kraftstoff-Luft-Verhältnis beträchtlich von der Magergrenze abweichen würde. Es ist daher notwendig, eine Korrektur des Kraftstoff-Luft-Verhältnisses zu verbieten, wenn grosse Schwankungen des Drehmoments wegen des Fahrens auf einer unebenen Strasse auftreten.
  • Der oben erörterte, verwandte Stand der Technik bezüglich der obigen Verbrennungsmotoren liefert aber keine Hinweise zum Auftreten von Schwankungen des Drehmoments bei der Fahrt auf unebenen Strassen, so dass eine Anwendung der Verfahren, die im obigen, verwandten Stand der Technik beschrieben werden, zu dem Problem führen würde, dass das Kraftstoff-Luft-Verhältnis vom Kraftstoff-Luft-Zielverhältnis abweicht.
  • Es kann auf die WO 95/17592, gegenüber der die vorliegende Erfindung gekennzeichnet wird, sowie auf US 4 651 290 und EP 0 610 508 Bezug genommen werden.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Ein Ziel der vorliegenden Erfindung besteht darin, ein Verfahren zur Steuerung eines Kraftstoff-Luft-Verhältnisses zur Verfügung zu stellen, bei dem verhindert werden kann, dass das Kraftstoff-Luft-Verhältnis von einem Kraftstoff-Luft-Zielverhältnis abweicht, wenn ein Fahrzeug auf einer unebenen Strasse fährt.
  • Aspekte der Erfindung werden in den Ansprüchen definiert.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegende Erfindung lässt sich umfassender aus der Beschreibung der bevorzugten Ausführungsformen der Erfindung verstehen, die unten zusammen mit den beigefügten Zeichnungen dargelegt wird, in denen:
  • 1 eine Gesamtansicht eines Verbrennungsmotors ist;
  • 2 ist eine Darstellung einer Karte der Kraftstoffeinspritz-Basiszeit;
  • 3 ist eine Darstellung der erzeugten NOx-Menge und der Drehmomentschwankungen;
  • 4 ist eine Darstellung einer Karte eines Mager-Korrekturfaktors;
  • 5 ist eine Darstellung einer Karte eines Rückkopplungs-Korrekturfaktors für die Magergrenze;
  • 6A und 6B sind Ablaufdiagramme der Änderungen in den bei einem Kurbelwinkel von 30° verflossenen Zeiten Ta(i) und Tb(i);
  • 7 ist ein Ablaufdiagramm der Änderungen in der bei einem Kurbelwinkel von 30° verflossenen Zeit Ta(i);
  • 8 ist ein Ablaufdiagramm der Änderungen in den bei einem Kurbelwinkel von 30° verflossenen Zeiten Ta(i) und Tb(i);
  • 9 ist ein Ablaufdiagramm der Änderungen in den bei einem Kurbelwinkel von 30° verflossenen Zeiten Ta(i) und Tb(i);
  • 10 ist ein Ablaufdiagramm der Änderungen in der bei einem Kurbelwinkel von 30° verflossenen Zeit Ta(i);
  • 11 ist eine Darstellung der Beziehung zwischen den Differenzen verflossener Zeiten DTa(i) und Kb(i);
  • 12 ist ein Ablaufdiagramm der Änderungen in der während eines Verzögerungsvorganges verflossenen Zeit Ta(i);
  • 13 ist ein Ablaufdiagramm der Änderungen in der Differenz der verflossenen Zeiten Ta(i);
  • 14 ist ein Flussdiagramm der Unterbrechungsroutine;
  • 15 und 16 sind Flussdiagramme für die Berechnung der Differenz der verflossenen Zeiten DTa(i) und der verflossenen Zeit Tb(i);
  • 17 ist ein Flussdiagramm für die Berechnung von KTa(i);
  • 18 ist ein Flussdiagramm für die Berechnung von KTa(i);
  • 19 bis 21 sind Flussdiagramme zur Überprüfung der Erlaubnis, den Betrag der Drehmomentschwankungen zu berechnen;
  • 22 ist ein Ablaufdiagramm der Änderungen in der Differenz der verflossenen Zeiten DTa(i) und der Änderungen der Flaggen XMXREC und XMNREC;
  • 23 ist ein Flussdiagramm für die Berechnung des Betrages der Drehmomentschwankungen;
  • 24 ist ein Flussdiagramm für die Verarbeitung des Zählers CDLNIX;
  • 25 ist eine Darstellung der Zeitpunkte für die Berechnung verschiedener Werte;
  • 26A und 26B sind Darstellungen eines Zielwertes der Drehmomentschwankungen;
  • 27 ist eine Darstellung, um das Verfahren der Erfassung der Läuferdrehzahl zu erklären;
  • 28 ist ein Ablaufdiagramm der Änderungen in der Differenz der verflossenen Zeiten DTNT;
  • 29 und 30 sind Flussdiagramme einer Hauptroutine;
  • 31 und 32 sind Flussdiagramme zur nicht erfindungsgemässen Durchführung einer ersten Beurteilung einer unebenen Strasse;
  • 33 und 34 sind Flussdiagramme zur Durchführung einer zweiten Beurteilung einer unebenen Strasse;
  • 35 ist ein Ablaufdiagramm zur Erläuterung einer ersten Beurteilung einer unebenen Strasse;
  • 36 ist ein Ablaufdiagramm zur Erläuterung einer zweiten Beurteilung einer unebenen Strasse;
  • 37 ist eine graphische Darstellung der Bezugswerte LVNT2ein und LVNT2aus;
  • 38 ist ein nicht erfindungsgemässes Ablaufdiagramm der Änderungen in den Differenzen der verflossenen Zeiten DTNFR und DTNRR;
  • 39 bis 41 sind Flussdiagramme einer Unterbrechungsroutine;
  • 42 bis 44 sind Flussdiagramme einer Unterbrechungsroutine;
  • 45 ist ein Ablaufdiagramm zur Erläuterung einer dritten Beurteilung einer unebenen Strasse;
  • 46 ist ein Flussdiagramm einer Hauptroutine;
  • 47 und 48 sind Flussdiagramme für die Berechnung des Wertes der Drehmomentschwankungen;
  • 49 ist ein Flussdiagramm für die Berechnung eines Rückkopplungs-Korrekturfaktors für die Magergrenze;
  • 50A und 50B sind Darstellungen der Beurteilungswerte DH(n) und DL(n) für die Schwankungsbeträge und der Niveaus der Drehmomentschwankungen LVLH(n) und LVLL(n); und
  • 51 ist ein Flussdiagramm für die Berechnung der Kraftstoffeinspritzzeit.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • Auf 1 Bezug nehmend, zeigt 1 einen mit vier Zylindern versehenen Motorenkörper mit dem Zylinder Nr. 1 (#1), dem Zylinder Nr. 2 (#2), dem Zylinder Nr. 3 (#3) und dem Zylinder Nr. 4 (#4). Die Zylinder #1, #2, #3 und #4 sind über entsprechende Ansaugrohre 2 mit einem Ausgleichstank 3 verbunden. In den Ansaugrohren 2 sind Kraftstoffeinspritzvorrichtungen 4 für das Einspritzen von Kraftstoff in Richtung auf die entsprechenden Eintrittsöffnungen vorgesehen. D er Ausgleichstank 3 ist über eine Ansaugleitung 5 und einen Luftströmungsmesser 6 mit einem Luftfilter 7 verbunden. In der Ansaugleitung 5 ist ein Reglerventil 8 untergebracht. Andererseits sind die Zylinder #1, #2, #3 und #4 über eine Ansaugleitung 9 und ein Auspuffrohr 10 mit einem Topf 12 verbunden, in dem ein NOx-Absorptionsmittel 11 untergebracht ist. Dieses NOx-Absorptionsmittel 11 hat die Aufgabe, das im Auspuffgas enthaltene NOx zu absorbieren, wenn das Kraftstoff-Luft-Verhältnis mager ist, und das absorbierte NOx auszustossen und zu reduzieren, wenn das Kraftstoff-Luft-Verhältnis stöchiometrisch oder fett ist.
  • Die elektronische Steuereinheit 20 besteht aus einem digitalen Rechner und ist mit einem ROM (read only memory: Festspeicher) 22, einem RAM (random access memory: Direktzugriffsspeicher) 23, einer CPU (Mikroprozessor) 24, einem mit einer Konstantstromquelle verbundenen Reserve-RAM 25, einem Eingabeport 26 und einem Ausgabeport 27 versehen, die miteinander über einen Zweiwegbus 21 verbunden sind. An der Kraftabgabewelle 13 des Motors sitzt ein Läufer 14 mit Aussenverzahnung. Ein Kurbelwinkel fühler 15 mit elektromagnetischem Messwandler ist der Aussenverzahnung des Läufers 14 zugewandt angeordnet. In der in 1 gezeigten Ausführungsform ist auf der Peripherie des Läufers 14 alle 30° des Kurbelwinkels ein Aussenzahn ausgebildet, und ein Teil der Aussenverzahnung ist zum Beispiel entfernt worden, um den oberen Totpunkt des Verdichtungshubes des Zylinders Nr. 1 zu erfassen. Ausser an dem Abschnitt, an dem die Aussenverzahnung entfernt worden ist, d. h. dem zahnlosen Abschnitt, erzeugt daher der Kurbelwinkelfühler 15 jedesmal einen Ausgangsimpuls, wenn die Kraftabgabewelle 13 sich um einen Kurbelwinkel von 30° dreht. Dieser Ausgangsimpuls wird in den Eingabeport 26 eingegeben.
  • Der Luftströmungsmesser 6 erzeugt eine der Menge der angesaugten Luft proportionale Ausgangsspannung. Diese Ausgangsspannung wird über einen entsprechenden A/D-Umsetzer 28 in den Eingabeport 26 eingegeben. Des Weiteren ist am Reglerventil 8 ein Leerlaufschalter 16 angebracht, der erfasst, wann das Reglerventil 8 sich in seiner Leerlauf-Öffnungsposition befindet. Das Ausgangssignal dieses Leerlaufschalters 16 wird in den Eingabeport 26 eingegeben. Des Weiteren ist an der Ansaugleitung 9 ein Kraftstoff-Luft-Verhältnisfühler (O2-Fühler) 17 angebracht, der das Kraftstoff-Luft-Verhältnis erfasst. Das Ausgangssignal dieses Kraftstoff-Luft-Verhältnisfühlers 17 wird über den entsprechenden A/D-Umsetzer 28 in den Eingabeport 26 eingegeben. Andererseits ist der Ausgabeport 27 über den entsprechenden Steuerkreis 29 mit den Kraftstoffeinspritzvorrichtungen 4 verbunden.
  • Wie in 1 gezeigt, ist die Kraftabgabewelle 13 des Motors an ein automatisches Getriebe 30 angeschlossen. Die Kraftabgabewelle 31 des automatischen Getriebes 30 ist an die Antriebsräder angeschlossen. Das automatische Getriebe 30 ist mit einem Drehmomentwandler 32 ausgerüstet. Der Drehmomentwandler 32 ist innen mit einem Verschlussmechanismus 33 ausgerüstet, d. h. der Drehmomentwandler 32 ist mit einem Pumpendeckel 34 versehen, der mit der Kraftabgabewelle 13 verbunden ist und sich zusammen mit der Kraftabgabewelle 13 dreht, ferner mit einem vom Pumpendeckel 34 gehaltenen Pumpenrad 35, einem an der Eingangswelle 36 des automatischen Getriebes 30 angebrachten Läufer 37 sowie einem Stator 37a. Die Drehbewegung der Kraftabgabewelle 13 wird durch den Pumpendeckel 34, das Pumpenrad 35 und den Läufer 37 zur Eingangswelle 36 übertragen.
  • Andererseits ist der Verschlussmechanismus 33 mit einer Kupplungs-Verschlussscheibe 38 versehen, die an der Eingangswelle 36 angebracht ist, um sich in der Axialrichtung bewegen zu können, und sich zusammen mit der Eingangswelle 36 dreht. Normalerweise, also wenn der Verschlussmechanismus ausgeschaltet ist, wird unter Druck stehendes Öl durch einen Ölkanal in der Eingangswelle 36 ins Innere der Kammer 39 zwischen der Kupplungs-Verschlussscheibe 38 und dem Pumpendeckel 34 zugeführt, das aus der Kammer 39 herausfliessende, unter Druck stehende Öl wird dann in die Kammer 40 eingespeist, die das Pumpenrad 35 und den Läufer 37 umgibt, und durch den Ölkanal in der Eingangswelle 36 entleert. Zu diesem Zeitpunkt besteht fast kein Druckunterschied zwischen den Kammern 39 und 40 zu beiden Seiten der Kupplungs-Verschlussplatte 38, so dass die Kupplungs-Verschlussplatte 38 von der Innenwand des Pumpendeckels 34 abrückt. Daher wird zu diesem Zeitpunkt die Drehkraft der Kupplungswelle 12 über den Pumpendeckel 34, das Pumpenrad 35 und den Läufer 37 zur Eingangswelle 36 übertragen.
  • Wenn andererseits der Verschlussmechanismus eingeschaltet ist, wird unter Druck stehendes Öl durch den Ölkanal in der Eingangswelle 36 ins Innere der Kammer 40 zugeführt. Das Öl in der Kammer 39 wird durch den Ölkanal in der Eingangswelle 36 entleert. Zu diesem Zeitpunkt wird der Druck in der Kammer 40 höher als der Druck in der Kammer 39, daher wird die Kupplungs-Verschlussplatte 38 gegen die innere Peripherie des Pumpendeckels 34 gedrückt, so dass die Kurbelwelle und die Eingangswelle 36 direkt verbunden sind und sich mit der gleichen Geschwindigkeit drehen. Die Steuerung der Ölzufuhr zu den Kammern 39 und 40, also die Ein-Aus-Steuerung des Verschlussmechanismus 33, wird durch ein im automatischen Getriebe angeordnetes Steuerventil ausgeführt. Dieses Steuerventil wird über ein Ausgangssignal der elektronischen Steuereinheit 20 gesteuert. Ferner sind mehrere Schaltkupplungen für die Übertragungsvorgänge im automatischen Getriebe 20 vorgesehen. Diese Kupplungen werden über das Ausgangssignal der elektronischen Steuereinheit 20 gesteuert.
  • Ferner sind im automatischen Getriebe 30 ein Drehzahlgeber 41 zur Erzeugung eines Ausgangsimpulses, der die Drehzahl der Eingangswelle 36 bzw. des Läufers 37 anzeigt, sowie ein Drehzahlgeber 42 zur Erzeugung eines Ausgangsimpulses, der die Drehzahl der Kraftabgabewelle 31 anzeigt, angeordnet. Die Ausgangsimpulse der Drehzahlgeber 41 und 42 werden in den Eingabeport 26 eingegeben.
  • Der Verbrennungsmotor der 1 wird für ein Fahrzeug verwendet, das mit einer vorderen Welle 44, die die Vorderräder 43 trägt, und einer hinteren Welle 46, die die Hinterräder 45 trägt, ausgerüstet ist. Die vordere Welle 44 ist mit der Kraftabgabewelle 31 des automatischen Getriebes 30 verbunden. Ein Drehzahlgeber 47 erzeugt einen Ausgangsimpuls, der die Drehzahl der vorderen Welle 44 bzw. der Vorderräder 43 anzeigt, während ein Drehzahlgeber 48 einen Ausgangsimpuls erzeugt, der die Drehzahl der hinteren Welle 46 bzw. der Hinterräder 45 anzeigt. Die Ausgangsimpulse der Drehzahlgeber 47 und 48 werden in den Eingabeport 26 eingegeben.
  • In dem in 1 gezeigten Verbrennungsmotor wird die Kraftstoffeinspritzzeit TAU auf der Basis der folgenden Gleichung berechnet: TAU = TP·FLEAN·FLLFB·FAF + TAUV.
  • Hier bedeutet TP eine Kraftstoffeinspritz-Basiszeit, FLEAN ist ein Mager-Korrekturfaktor, FLLFB ist ein Rückkopplungs-Korrekturfaktor für die Magergrenze, FAF ist ein Rückkopplungs-Korrekturfaktor für ein stöchiometrisches Kraftstoff-Luft-Verhältnis und TAUV ist eine ungültige Einspritzzeit.
  • Die Kraftstoffeinspritz-Basiszeit TP gibt die Einspritzzeit an, die erforderlich ist, um das Kraftstoff-Luft-Verhältnis stöchiometrisch zu machen. Diese Kraftstoffeinspritz-Basiszeit TP wird aus Versuchen gefunden. Diese Kraftstoffeinspritz-Basiszeit TP wird im Voraus in Gestalt einer in 2 gezeigten Karte im ROM 22 gespeichert, und zwar als eine Funktion der Motorbelastung Q/N (angesaugte Luftmenge Q geteilt durch die Motordrehzahl N) und der Motordrehzahl N.
  • Der Mager-Korrekturfaktor FLEAN ist ein Korrekturfaktor, um das Kraftstoff-Luft-Verhältnis mager zu machen. Dieser Mager-Korrekturfaktor FLEAN wird im Voraus in Gestalt der in 4 gezeigten Karte im ROM 22 gespeichert, und zwar als eine Funktion der Motorbelastung Q/N und der Motordrehzahl N.
  • Der Rückkopplungs-Korrekturfaktor für die Magergrenze FLLFB ist ein Korrekturfaktor, um das Kraftstoff-Luft-Verhältnis an der Magergrenze zu halten. In dieser Ausführungsform gemäss der vorliegenden Erfindung ist die Lernzone für die Rückkopplungssteuerung des mageren Kraftstoff-Luft-Verhältnisses bei einer angesaugten Luftmenge Q und einer Motordrehzahl N in neun Bereiche unterteilt, wie zum Beispiel in 5 gezeigt. Rückkopplungs-Korrekturfaktoren für die Magergrenze FLLFB11 bis FLLFB33 werden für die Lernbereiche festgelegt.
  • Der Rückkopplungs-Korrekturfaktor für ein stöchiometrisches Kraftstoff-Luft-Verhältnis FAF ist ein Faktor, um das Kraftstoff-Luft-Verhältnis stöchiometrisch zu halten. Der Rückkopplungs-Korrekturfaktor für ein stöchiometrisches Kraftstoff-Luft-Verhältnis FAF wird auf der Basis des Ausgangssignals des Kraftstoff-Luft-Verhältnisfühlers 17 so gesteuert, dass das Kraftstoff-Luft-Verhältnis stöchiometrisch gehalten wird. Dann schwankt der Rückkopplungs-Korrekturfaktor für ein stöchiometrisches Kraftstoff-Luft-Verhältnis FAF im Wesentlichen um den Wert von 1,0.
  • Der Mager-Korrekturfaktor FLEAN wird in Übereinstimmung mit dem Betriebszustand des Motors für den in 4 durch gestrichelte Linien eingeschlossenen Betriebsbereich festgelegt. In diesem Betriebsbereich wird das Kraftstoff-Luft-Verhältnis mager gehalten. Im Gegensatz dazu wird im Betriebsbereich ausserhalb des in 4 durch die gestrichelte Linie eingeschlossenen Bereichs das Kraftstoff-Luft-Verhältnis stöchiometrisch gehalten. Wenn das Kraftstoff-Luft-Verhältnis stöchiometrisch gehalten werden soll, dann werden der Mager-Korrekturfaktor FLEAN und der Rückkopplungs-Korrekturfaktor für die Magergrenze FLLFB auf den Wert von 1,0 festgelegt, während der Rückkopplungs-Korrekturfaktor für ein stöchiometrisches Kraftstoff-Luftverhältnis FAF auf der Basis des Ausgangssignals des Kraftstoff-Luft-Verhältnisfühlers 17 gesteuert wird.
  • Wenn andererseits das Kraftstoff-Luft-Verhältnis mager gehalten werden soll, wird der Rückkopplungs-Korrekturfaktor für ein stöchiometrisches Kraftstoff-Luft-Verhältnis FAF auf den Wert von 1,0 festgelegt, das heisst, die auf dem Ausgangssignal des Kraftstoff-Luft-Verhältnisfühlers 17 beruhende Rückkopplungssteuerung wird abgebrochen und der Mager-Korrekturfaktor FLEAN sowie der Rückkopplungs-Korrekturfaktor für die Magergrenze FLLFB werden verwendet, um das Kraftstoff-Luft-Verhältnis zum mageren Kraftstoff-Luft-Verhältnis zu steuern.
  • Als Nächstes wird unter Bezugnahme auf 3 die Rückkopplungssteuerung für die Magergrenze erläutert. 3 zeigt den Betrag der Drehmomentschwankungen der Motorkraftabgabe und die erzeugte NOx-Menge in Abhängigkeit vom Kraftstoff-Luft-Verhältnis. Der Kraftstoffverbrauch ist desto geringer, je magerer das Kraftstoff-Luft-Verhältnis ist. Des Weiteren ist die Menge des erzeugten NOx desto kleiner, je magerer das Kraftstoff-Luft-Verhältnis ist. Unter diesen Gesichtspunkten betrachtet, wäre es daher wünschenswert, das Kraftstoff-Luft-Verhältnis so mager wie möglich zu machen. Es sei jedoch bemerkt, dass die Verbrennung instabil wird, wenn das Kraftstoff-Luft-Verhältnis über einen bestimmten Punkt hinaus mager gemacht wird, und im Ergebnis wird der Betrag der Drehmomentschwankungen gross, wie in 3 gezeigt. In dieser Ausführungsform gemäss der vorliegenden Erfindung wird deshalb das Kraftstoff-Luft-Verhältnis in dem Bereich der Steuerung des Kraftstoff-Luftverhältnisses gehalten, wo die Drehmomentschwankungen anzusteigen beginnen, wie in 3 gezeigt.
  • Das bedeutet, eingehender erklärt, dass der Mager-Korrekturfaktor FLEAN so bestimmt wird, dass das Kraftstoff-Luft-Verhältnis zur Mitte des in 3 gezeigten Bereichs der Steuerung des Kraftstoff-Luft-Verhältnisses geht, wenn der Rückkopplungs-Korrekturfaktor für die Magergrenze FLLFB zu 1,0 gemacht wird. Andererseits wird der Rückkopplungs-Korrekturfaktor für die Magergrenze FLLFB in Übereinstimmung mit dem Betrag der Drehmomentschwankungen so gesteuert, dass er sich innerhalb des in 3 gezeigten Steuerbereichs der Drehmomentschwankungen befindet. Wenn der Betrag der Drehmomentschwankungen grösser wird, wird der Rückkopplungs-Korrekturfaktor für die Magergrenze FLLFB erhöht, d. h. das Kraftstoff-Luft-Verhältnis wird grösser gemacht, während der Rückkopplungs-Korrekturfaktor für die Magergrenze FLLFB verringert wird, wenn der Betrag der Drehmomentschwankungen kleiner wird, d. h. das Kraftstoff-Luft-Verhältnis wird kleiner gemacht. Auf diese Weise wird das Kraftstoff-Luft-Verhältnis so gesteuert, dass es sich innerhalb des in 3 gezeigten Bereichs der Steuerung des Kraftstoff-Luft-Verhältnisses befindet.
  • Es sei bemerkt, dass der Rückkopplungs-Korrekturfaktor für die Magergrenze FLLFB so festgelegt wird, dass er den Motorbetriebsbereich, in dem der Mager-Korrekturfaktor FLEAN festgelegt ist, abdeckt.
  • Wenn der Betrag der Drehmomentschwankungen so gesteuert wird, dass er sich innerhalb des in 3 gezeigten Bereichs der Steuerung der Drehmomentschwankungen befindet, kann ein ausgezeichnetes Fahrverhalten des Fahrzeugs gewährleistet werden, während der Kraftstoffverbrauch und die Menge des erzeugten NOx stark verringert werden können. Da aber der Betrag der Drehmomentschwankungen so gesteuert wird, dass er sich innerhalb des Bereiches der Steuerung der Drehmomentschwankungen befindet, muss dann auch der Betrag der Drehmomentschwankungen erfasst werden.
  • Verschiedene Verfahren sind in der Vergangenheit vorgeschlagen worden, um den Betrag der Drehmomentschwankungen zu berechnen. Um typische Verfahren zu erwähnen, gibt es das Verfahren, einen Verbrennungsdruckfühler in der Verbrennungskammer zur Verfügung zu stellen und den Betrag der Drehmomentschwankungen auf der Basis des Ausgangssignals dieses Verbrennungsdruckfühlers zu berechnen, oder das Verfahren, den Betrag der Drehmomentschwankungen aus der Differenz zwischen dem Quadrat der ersten Wirkelgeschwindigkeit ωa und dem Quadrat der zweiten Winkelgeschwindigkeit ωb zu berechnen, wie eingangs erklärt.
  • Wenn ein Verbrennungsdruckfühler verwendet wird, besteht der Vorteil, dass das in dem mit dem Verbrennungsdruckfühler versehenen Zylinder erzeugte Drehmoment zuverlässig erfasst werden kann, aber im Gegenzug besteht der Nachteil, dass der Verbrennungsdruckfühler erforderlich ist. Im Gegensatz dazu können die Winkelgeschwindigkeiten ωa und ωb aus dem Ausgangssignal des Kurbelwinkelfühlers berechnet werden, der in der Vergangenheit im Verbrennungsmotor zur Verfügung gestellt wurde, so dass bei Berechnung des abgegebenen Drehmoments auf der Basis der Winkelgeschwindigkeiten ωa und ωb der Vorteil besteht, dass kein neuer Fühler montiert zu werden braucht. In diesem Falle besteht jedoch, wie eingangs erklärt, das Problem, dass das erzeugte Drehmoment nicht mehr genau erfasst werden kann, wenn der Motorantriebsmechanismus Torsionsschwingungen erfährt. Es ist aber klar, dass, wenn dieses Problem gelöst werden könnte, das Verfahren einer Berechnung des Drehmoments auf der Basis der Winkelgeschwindigkeit, das keinen neuen Fühler verlangt, zu bevorzugen wäre. Die vorliegende Erfindung kann daher das erzeugte Drehmoment auf der Basis der Winkelgeschwindigkeiten berechnen und eine Korrektur des Kraftstoff-Luft-Verhältnisses verbieten, wenn geurteilt wird, dass das Fahrzeug auf unebenen Strassen fährt.
  • Solange die Winkelgeschwindigkeit der Kurbelwelle als die Basis benutzt wird, können die Schwankungen der Kraftabgabe und des Drehmoments des Motors gefunden werden, aber wenn das Antriebssystem des Motors oder die Kurbelwelle selbst Torsionsschwingungen erleiden oder die Aussenverzahnung des Rotors veränderlich ist, können die Schwankungen der Kraftabgabe und des Drehmoments des Motors nicht exakt berechnet werden. Daher wird in dieser Ausführungsform der vorliegenden Erfindung vom neuen Berechnungsverfahren der Schwankungen der Kraftabgabe und des Drehmoments Gebrauch gemacht, um selbst dann, wenn das Antriebssystem des Motors oder die Kurbelwelle selbst Torsionsschwingungen erleiden oder die Aussenverzahnung des Läufers veränderlich ist, die Schwankungen in der Kraftabgabe und im Drehmoment des Motors exakt erfasst werden können.
  • Als Nächstes wird das Verfahren zur Berechnung der Schwankungen der Kraftabgabe und des Drehmoments des Motors erläutert.
  • Zuerst wird das Verfahren zur Berechnung der durch jeden Zylinder erzeugten Antriebskraft und des in jedem Zylinder erzeugten Drehmoments unter Bezugnahme auf 6A und 6B erläutert, die den stationären Betriebszustand zeigen, wenn der Motorantriebsmechanismus keine Torsionsschwingungen erfährt. Wie oben erklärt, erzeugt der Kurbelwinkelfühler 15 jedesmal, wenn sich die Kurbelwelle um einen Kurbelwinkel von 30° dreht, einen Ausgangsimpuls. Des Weiteren ist der Kurbelwinkelfühler 15 so angeordnet, dass er einen Ausgangsimpuls im oberen Totpunkt (TDC: top dead center) des Verdichtungshubs der Zylinder #1, #2, #3 und #4 erzeugt. Daher erzeugt der Kurbelwinkelfühler 15 einen Ausgangsimpuls für jeden Kurbelwinkel von 30° vom oberen Totpunkt TDC des Verdichtungshubs der Zylinder #1, #2, #3 und #4. Es sei bemerkt, dass die Zündfolge des in der vorliegenden Erfindung verwendeten Verbrennungsmotors 1-3-4-2 ist.
  • In 6A und 6B zeigt die senkrechte Achse T30 für einen Kurbelwinkel von 30° die Zeit, die zwischen dem Zeitpunkt, zu dem der Kurbelwinkelfühler 15 einen Ausgangsimpuls erzeugt, und dem Zeitpunkt, zu dem er den nächsten Ausgangsimpuls erzeugt, verflossen ist. Des Weiteren zeigt Ta(i) die Zeit an, die zwischen dem oberen Totpunkt des Verdichtungshubs (hiernach als TDC bezeichnet) und 30° nach dem oberen Totpunkt des Verdichtungshubs (hiernach als ATDC: after top dead center, bezeichnet) des Zylinders Nr. i verflossen ist, während Tb(i) die Zeit anzeigt, die zwischen ATDC 60° und ATDC 90° des Zylinders Nr. i verflossen ist. Daher zeigt zum Beispiel Ta(1) die Zeit an, die von TDC bis ATDC 30° des Zylinders Nr. 1 verflossen ist, während Tb(1) die Zeit anzeigt, die von ATDC 60° bis ATDC 90° des Zylinders Nr. 1 verflossen ist. Wenn andererseits der Kurbelwinkel von 30° durch die verflossene Zeit T30 geteilt wird, liefert das Ergebnis der Division die Winkelgeschwindigkeit ω. In dieser Ausführungsform gemäss der vorliegenden Erfindung wird Kurbelwinkel 30°/Ta(i) als die erste Winkelgeschwindigkeit ωa im Zylinder Nr. i bezeichnet, während Kurbelwinkel 30°/Tb(i) als die zweite Winkelgeschwindigkeit ωb im Zylinder Nr. i bezeichnet wird. Daher zeigt Kurbelwinkel 30°/Ta(1) die erste Winkelgeschwindigkeit ωa des Zylinders Nr. 1 an, während Kurbelwinkel 30°/Tb(1) die zweite Winkelgeschwindigkeit ωb des Zylinders Nr. 1 anzeigt.
  • Bei Zylinder Nr. 1 in 6A und 6B ist zu bemerken, dass die verflossene Zeit, wenn die Verbrennung gestartet wird und der Verbrennungsdruck ansteigt, von Ta(1) auf Tb(1) absinkt, dann von Tb(1) ansteigt. In anderen Worten steigt die Winkelgeschwindigkeit ω der Kurbelwelle von der ersten Winkelgeschwindigkeit ωa zur zweiten Winkelgeschwindigkeit ωb an, dann fällt sie wieder von dieser zweiten Winkelgeschwindigkeit ωb ab. Das bedeutet, dass der Verbrennungsdruck bewirkt, dass die Winkelgeschwindigkeit ω der Kurbelwelle von der ersten Winkelgeschwindigkeit ωa zur zweiten Winkelgeschwindigkeit ωb ansteigt. 6A zeigt den Fall, in dem der Verbrennungsdruck verhältnismässig hoch ist, während 6B den Fall zeigt, in dem der Verbrennungsdruck verhältnismässig niedrig ist. Wie aus 6A und 6B ersichtlich, ist der Betrag der Verringerung der verflossenen Zeit (Ta(i) – Tb(i)) bei hohem Verbrennungsdruck grösser als bei niedrigem Verbrennungsdruck, daher wird auch der Betrag der Erhöhung (ωb – ωa) der Winkelgeschwindigkeit ω grösser. Wenn der Verbrennungsdruck höher wird, wird die durch den Zylinder erzeugte Antriebskraft grösser, daher wird die durch den Zylinder erzeugte Antriebskraft auch grösser, wenn der Betrag der Erhöhung (ωb – ωa) der Winkelgeschwindigkeit ω grösser wird. Es ist daher möglich, die durch einen Zylinder erzeugte Antriebskraft aus der Differenz (ωb – ωa) zwischen der ersten Winkelgeschwindigkeit ωa und der zweiten Winkelgeschwindigkeit ωb zu berechnen.
  • Andererseits bewirkt der Verbrennungsdruck, wenn das Rotationsträgheitsmoment des Motors I ist, dass die kinetische Energie von ½·Iωa2 auf ½·Iωb2 ansteigt. Der Betrag des Anstiegs der kinetischen Energie, ½·I·(ωb2 – ωa2), drückt das durch diesen Zylinder erzeugte Drehmoment aus, daher wird es möglich, aus der Differenz (ωb2 – ωa2) zwischen dem Quadrat der ersten Winkelgeschwindigkeit ωa und dem Quadrat der zweiten Winkelgeschwindigkeit ωb das durch einen Zylinder erzeugte Drehmoment zu berechnen.
  • Durch eine Erfassung der ersten Winkelgeschwindigkeit ωa und der zweiten Winkelgeschwindigkeit ωb wird es somit möglich, aus den erfassten Werten die von dem entsprechenden Zylinder erzeugte Antriebskraft und das durch den entsprechenden Zylinder erzeugte Drehmoment zu berechnen. Es sei bemerkt, dass die Änderungen in der verflossenen Zeit T30, die in 6A und 6B gezeigt werden, sich je nach dem Motor etwas unterscheiden, daher werden der Kurbelwinkelbereich zur Erfassung der ersten Winkelgeschwindigkeit ωa und der Kurbelwinkelbereich zur Erfassung der zweiten Winkelgeschwindigkeit ωb in Übereinstimmung mit dem Motor so festgelegt, dass (ωb – ωa) am besten die durch den Motor erzeugte Antriebskraft ausdrückt, oder so, dass (ωb2 – ωa2) am besten das durch den Motor erzeugte Drehmoment ausdrückt. Je nach dem Motor kann sich daher der Kurbelwinkelbereich zur Erfassung der ersten Winkelgeschwindigkeit ωa von 30° vor dem oberen Totpunkt (BTDC: before the top dead center) des Verdichtungshubs bis TDC erstrecken, während sich der Kurbelwinkelbereich zur Erfassung der zweiten Winkelgeschwindigkeit ωb von ATDC 90° bis ATDC 120° erstrecken kann.
  • Daher wird, um das Verfahrens der Erfassung der Winkelgeschwindigkeiten ωa und ωb in allgemeiner Form zu erklären, der erste Kurbelwinkelbereich in der Kurbelwinkelzone zwischen dem Ende des Verdichtungshubs und dem Anfang des Ausdehnungshubs festgelegt, der zweite Kurbelwinkelbereich wird in der Kurbelwinkelzone in der Mitte des Ausdehnungshubs festgelegt, und zwar um einen vorbestimmten Kurbelwinkel vom ersten Kurbelwinkelbereich entfernt, die erste Winkelgeschwindigkeit ωa der Kurbelwelle wird im ersten Kurbelwinkelbereich erfasst, und die zweite Winkelgeschwindigkeit der Kurbelwelle ωb wird im zweiten Kurbelwinkelbereich erfasst.
  • Wie oben erklärt, wird es durch Erfassen der Winkelgeschwindigkeiten ωa und ωb möglich, auf der Basis der erfassten Werte die Antriebskraft und das Drehmoment zu berechnen, die von einem entsprechenden Zylinder erzeugt werden. Der Motorantriebsmechanismus erfährt jedoch Torsionsschwingungen, die bei der Resonanzfrequenz des Antriebsmechanismus auftreten und durch die aufeinanderfolgenden Explosionen in den Zylindern verursacht werden. Wenn der Motorantriebsmechanismus solche Torsionsschwingungen erfährt, ist es nicht mehr möglich, auf der Basis der Winkelgeschwindigkeiten ωa und ωb die Antriebskraft und das Drehmoment, die durch einen Zylinder erzeugt werden, genau zu erfassen. Dies wird als Nächstes unter Bezugnahme auf 7 und 8 erklärt werden.
  • 7 zeigt die Änderungen in der verflossenen Zeit Ta(i), die aufeinanderfolgend für jeden Zylinder berechnet wird, wenn der Motorantriebsmechanismus Torsionsschwingungen erfährt. Wenn der Motorantriebsmechanismus Torsionsschwingungen erfährt, bewirken diese Torsionsschwingungen, dass sich die Winkelgeschwindigkeit einer Kurbelwelle zyklisch erhöht und verringert, daher erhöht und verringert sich die verflossene Zeit Ta(i) zyklisch, wie in 7 gezeigt.
  • Andererseits zeigt 8 den Abschnitt, in dem die verflossene Zeit Ta(i) verringert ist, im vergrösserten Massstab. Die verflossene Zeit Ta(i) fällt, wie in 8 gezeigt, zwischen Ta(1) und Ta(3) genau um den Betrag h0. Es wird angenommen, dass diese Zeitverringerung h0 auf eine Erhöhung des Betrages der Verdrehung wegen der Torsionsschwingungen zurückzuführen ist. Es wird angenommen, dass in diesem Falle der Betrag der Verringerung der verflossenen Zeit wegen der Torsionsschwingungen zwischen Ta(1) und Ta(3) im Wesentlichen linear mit der verflossenen Zeit ansteigt, daher wird dieser Betrag der Verringerung der verflossenen Zeit wegen der Torsionsschwingungen durch den Unterschied zwischen der Ta(1) und Ta(3) verbindenden, gestrichelten Linie und der durch Ta(1) gehenden horizontalen Linie gezeigt. Zwischen Ta(1) und Tb(1) bewirken daher die Torsionsschwingungen einen Abfall der verflossenen Zeit um genau den Wert von h.
  • Wenn Torsionsschwingungen im Motorantriebsmechanismus auftreten, hat daher Tb(1) eine geringere verflossene Zeit als Ta(1), aber diese kürzere verflossene Zeit enthält den Betrag f einer Verringerung der verflossenen Zeit wegen des Verbrennungsdruckes und den Betrag h einer Verringerung der verflossenen Zeit wegen der Torsionsschwingungen. Um nur die verflossene Zeit Tb'(1) zu finden, die sich wegen des Verbrennungsdruckes verringert hat, wird es notwendig, h zu Tb(1) zu addieren. Das bedeutet, dass es nicht möglich ist, die wirkliche Antriebskraftabgabe oder das wirkliche Drehmoment zu ermitteln, und dass es daher auch nicht möglich ist, die wirklichen Schwankungen der Kraftabgabe oder des Drehmoments des Motors zu finden, selbst wenn die Antriebskraft oder das Drehmoment, die durch jeden Zylinder erzeugt werden, auf der Basis der erfassten, verflossenen Zeiten Ta(i) und Tb(i) ermittelt werden.
  • Bei einem Mehrzylinder-Verbrennungsmotor gibt es des Weiteren zusätzlich zu den Torsionsschwingungen des Motorantriebsmechanismus noch Torsionsschwingungen der Kurbelwelle selbst. Wenn diese Torsionsschwingungen der Kurbelwelle selbst auftreten, ist es nicht mehr möglich, die wirklichen Schwankungen der Kraftabgabe oder des Drehmoments des Motors zu ermitteln. Dies wird als Nächstes unter Bezugnahme auf 9 erläutert.
  • In einem Mehrzylinder-Verbrennungsmotor, zum Beispiel einem Vierzylinder-Verbrennungsmotor, wie in 1 gezeigt, treten grosse Torsionsschwingungen im Zylinder Nr. 1 und im Zylinder Nr. 2 auf. In einem Zylinder, bei dem fast keine Torsionsschwingungen der Kurbelwelle selbst auftreten, wie zum Beispiel dem Zylinder Nr. 3 (#3), wie in 9 gezeigt, fällt nämlich die verflossene Zeit allmählich von Ta(3) auf Tb(3) ab, aber im Zylinder Nr. 1 (#1) fällt die verflossene Zeit nicht allmählich von Ta(1) auf Tb(1) ab, und die Torsionsschwingungen der Kurbelwelle selbst bewirken, dass die verflossene Zeit Tb(1) länger wird. Im Ergebnis ist es nicht möglich, die wirkliche Antriebskraft oder das wirkliche Drehmoment des Zylinders Nr. 1 (#1) zu ermitteln, selbst wenn die Antriebskraft oder das Drehmoment, die durch den Zylinder Nr. 1 (#1) erzeugt werden, auf der Basis der erfassten, verflossenen Zeiten Ta(1) und Tb(1) gefunden werden, und daher ist es nicht möglich, die wirklichen Schwankungen der Kraftabgabe oder des Drehmoments des Motors zu ermitteln.
  • In der vorliegenden Erfindung wird daher von einem neuen Berechnungsverfahren Gebrauch gemacht, das eine Berechnung der wirklichen Schwankungen der Kraftabgabe und des Drehmoments des Motors selbst dann ermöglicht, wenn Torsionsschwingungen des Motorantriebsmechanismus oder der Kurbelwelle auftreten. Dieses neue Berechnungsverfahren wird als Nächstes unter Bezugnahme auf 10 erläutert.
  • In 10 zeigen Ta(1)j–1 und Tb(1)j–1 die verflossenen Zeiten zum Zeitpunkt der vorangehenden Verbrennung im Zylinder Nr. 1 (#1) an, während Ta(1)j und Tb(1)j die verflossenen Zeiten zum Zeitpunkt der nächsten Verbrennung im Zylinder Nr. 1 (#1) anzeigen. Andererseits zeigt Ta(3)j–1 die verflossene Zeit zum Zeitpunkt der vorangehenden Verbrennung im Zylinder Nr. 3 (#3) an, die nach der vorangehenden Verbrennung im Zylinder Nr. 1 (#1) erfolgte, während Ta(3)j die verflossene Zeit zum Zeitpunkt der nächsten Verbrennung im Zylinder Nr. 3 (#3) anzeigt.
  • Zuerst werden die Differenz DTa(1) (= Ta(1)j – Ta(1)j–1) zwischen Ta(1)j und Ta(1)j–1 und die Differenz DTa(3) (= Ta(3)j – Ta(3)j–1) zwischen Ta(3)j und Ta(3)j–1 ermittelt. Als Nächstes wird Tb'(1) zur angenommenen verflossenen Zeit zwischen ATDC 60° und ATDC 90° zum Zeitpunkt der nächsten Verbrennung im Zylinder Nr. 1 (#1) gemacht, indem angenommen wird, dass das abgegebene Drehmoment zum Zeitpunkt der vorangehenden Verbrennung im Zylinder Nr. 1 (#1) und das abgegebene Drehmoment zum Zeitpunkt der nächsten Verbrennung identisch sind, und die Differenz Kb(1) (= Tb'(1)j – Tb(1)j–1) zwischen Tb'(1)j und Tb(1)j–1 wird ermittelt. Die Differenzen DTa(1), Kb(1) und DTa(3) lassen sich, wie in 11 gezeigt, als Höhen auf einer Geraden auftragen.
  • Die Differenz der verflossenen Zeiten fällt um genau den Betrag I0 zwischen den Differenzen der verflossenen Zeiten DTa(1) und DTa(3), wie in 11 gezeigt. Der Effekt der Torsionsschwingungen erscheint selbst dann nicht in der Differenz der verflossenen Zeiten, wenn Torsionsschwingungen in der Kurbelwelle selbst auftreten, daher wird die Verringerung der Zeit I0 in der Differenz der verflossenen Zeiten durch Torsionsschwingungen des Antriebsmechanismus verursacht. In diesem Falle kann angenommen werden, dass sich der Betrag der Verringerung der Differenz der verflossenen Zeiten, der durch die Torsionsschwingungen des Motorantriebsmechanismus verursacht wird, zwischen DTa(1) und DTa(3) im Wesentlichen linear mit der verflossenen Zeit erhöht. Wenn angenommen wird, dass das abgegebene Drehmoment zum Zeitpunkt der vorangehenden Verbrennung im Zylinder Nr. 1 (#1) und das abgegebene Drehmoment zum Zeitpunkt der nächsten Verbrennung identisch sind, kann auch angenommen werden, dass sich die Differenz der verflossenen Zeiten wegen der Torsionsschwingungen des Motorantriebsmechanismus zwischen den Differenzen der verflossenen Zeiten DTa(1) und Kb(1) um genau den Betrag I verringert. Aus 11 lässt sich verstehen, dass daher die angenommene Differenz der verflossenen Zeiten Kb(1) unter der Annahme, dass das abgegebene Drehmoment zum Zeitpunkt der vorangehenden Verbrennung im Zylinder Nr. 1 (#1) und das abgegebene Drehmoment zum Zeitpunkt der nächsten Verbrennung identisch sind, als ein zwischen DTa(1) und DTa(3) interpolierter Wert ausgedrückt wird und durch die folgende Gleichung gegeben ist: Kb(1) = (2DTa(1) + DTa(3))/3.
  • Unter der Annahme, dass das abgegebene Drehmoment zum Zeitpunkt der vorangehenden Verbrennung im Zylinder Nr. 1 (#1) und das abgegebene Drehmoment zum Zeitpunkt der nächsten Verbrennung identisch sind, wird die angenommene verflossene Zeit Tb'(1)j des Zylinders Nr 1 (#1) wie folgt ausgedrückt: Tb'(1)j = Tb(1)j–1 + Kb(1).
  • Unter der Annahme, dass das abgegebene Drehmoment zum Zeitpunkt der vorangehenden Verbrennung im Zylinder Nr. 1 (#1) und das abgegebene Drehmoment zum Zeitpunkt der nächsten Verbrennung identisch sind, wird daher das angenommene abgegebene Drehmoment DNS(1) zum Zeitpunkt der nächsten Verbrennung im Zylinder Nr. 1 (#1) wie folgt ausgedrückt: DNS(1) = {30°/Tb'(1)j}2 – {30°/Ta(1)j}2 = {30°/Tb(1)j–1 + Kb(1)}2 – {30°/Ta(1)j}2.
  • Andererseits wird, wenn das tatsächlich abgegebene Drehmoment unter Benutzung der zwischen ATDC 60° und ATDC 90° zum Zeitpunkt der nächsten Verbrennung im Zylinder Nr. 1 (#1) tatsächlich verflossenen Zeit Tb(1)j berechnet wird, das abgegebene Drehmoment DN(1) durch die folgende Gleichung ausgedrückt: DN(1) = {30°/Tb(1)j}2 – {30°/Ta(1)j}2.
  • In diesem Falle zeigt die Differenz zwischen dem angenommenen abgegebenen Drehmoment DNS(1) des Zylinders Nr. 1 (#1) und dem tatsächlich abgegebenen Drehmoment DN(1) den Betrag der Drehmomentschwankungen des Zylinders Nr. 1 (#1) an. Daher wird der Betrag der Drehmomentschwankungen DLN(1) des Zylinders Nr. 1 (#1) durch die folgende Gleichung angegeben: DLN(1) = DNS(1) – DN(1) = {30°/Tb'(1)j}2 – {30°/Tb(1)j}2.
  • Allgemein ausgedrückt kann der Betrag der Drehmomentschwankungen DLN(i) des Zylinders Nr. i durch die folgende Gleichung angegeben werden: DLN(i) = DNS(i) – DN(i) = {30°/Tb(i)}2 – {30°/Tb(i)}2.
  • Das bedeutet, dass der Betrag der Drehmomentschwankungen des Zylinders Nr. i aus der Abweichung des Quadrats der angenommenen zweiten Winkelgeschwindigkeit des Zylinders Nr. i vom Quadrat der tatsächlichen zweiten Winkelgeschwindigkeit ermittelt werden kann. Indem der Betrag der Drehmomentschwankungen mit diesem Verfahren berechnet wird, kann selbst beim Auftreten von Torsionsschwingungen im Motorantriebsmechanismus der Betrag der Drehmomentschwankungen der Zylinder auch dann exakt erfasst werden, wenn Torsionsschwingungen in der Kurbelwelle selbst auftreten.
  • Wenn der Betrag der Drehmomentschwankungen mit diesem Verfahren berechnet wird, ist es andererseits nicht möglich, den Betrag der Drehmomentschwankungen der Zylinder exakt zu erfassen, wenn die Abstände der Aussenzähne, die auf der Peripherie des Läufers 14 ausgebildet sind (1), veränderlich sind. Daher wird es in dieser Ausführungsform der vorliegenden Erfindung ermöglicht, die erfassten, verflossenen Zeiten Ta(i) und Tb(i) zu korrigieren, um selbst dann eine exakte Erfassung des Betrages der Drehmomentschwankungen der Zylinder zu ermöglichen, wenn die Abstände zwischen den Aussenzähnen des Läufers 14 veränderlich sind. Als Nächstes wird unter Bezugnahme auf 12 eine Erläuterung des Verfahrens der Korrektur der verflossenen Zeit Ta(i) gegeben.
  • In dieser Ausführungsform der vorliegenden Erfindung wird die verflossene Zeit Ta(i) auf der Basis der folgenden Gleichung berechnet: Ta(i) = (von TDC bis ATDC 30° des Zylinders Nr. i benötigte Zeit)·(1 + KTa(i)).
  • Hier ist KTa(i) der Korrekturfaktor für den Zylinder Nr. i. Der Korrekturfaktor KTa(i) wird zu dem Zeitpunkt berechnet, zu dem die Kraftstoffzufuhr während eines Verzögerungsvorgangs unterbrochen wird, bei dem weder Torsionschwingungen des Motorantriebsmechanismus noch Torsionsschwingungen der Kurbelwelle auftreten.
  • 12 zeigt die Änderungen der verflossenen Zeit Ta(i) zum Zeitpunkt eines Verzögerungsvorgangs. Während eines Verzögerungsvorgangs fällt die Drehzahl der Kurbelwelle allmählich ab, so dass die verflossene Zeit Ta(i) allmählich ansteigt, wie durch Ta(1)j–1, Ta(3)j–1, Ta(4)j–1, Ta(2)j–1, Ta(1)j, Ta(3)j, Ta(4)j und Ta(2)j angezeigt. Zu diesem Zeitpunkt kann angenommen werden, dass sich die verflossene Zeit Ta(i) entlang der durchgezogenen Linie in 12 verändert, sofern die Abstände zwischen den Aussenzähnen des Läufers 14 gleich sind. Wenn die erfasste, verflossene Zeit Ta(i) von der durchgezogenen Linie in 12 abweicht, wird angenommen, dass die Abstände der Aussenzähne für die Erfassung der verflossenen Zeit Ta(i), die von der durchgezogenen Linie abwich, von den korrekten Abständen abweichen. Daher wird in dieser Ausführungsform der vorliegenden Erfindung, wenn die verflossene Zeit Ta(i) von der in 12 gezeigten Linie abweicht, die verflossene Zeit Ta(i) durch den Korrekturfaktor KTa(i) so korrigiert, dass die verflossene Zeit Ta(i) auf die durchgezogene Linie in der 12 fällt.
  • Genauer erklärt, sind in dieser Ausführungsform der vorliegenden Erfindung TaAVj–1 {= (Ta(1)j–1 + Ta(3)j–1 + Ta(4)j–1 + Ta(2)j–1)/4} und TaAVj {= Ta(1)j + Ta(3)j + Ta(4)j + Ta(2)j)/4}, ... die Durchschnittswerte der verflossenen Zeiten Ta(i) der vier Zylinder über einen Kurbelwinkelbereich von 720° (j – 1), (j), ... Als Nächstes wird angenommen, dass die verflossenen Zeiten Ta(4)j–1, Ta(2)j–1, Ta(1)j und Ta(3)j mit einer konstanten durchschnittlichen Zuwachsrate vom Durchschnittswert TaAVj–1 zum Durchschnittswert TaAVj ansteigen, und die verflossenen Zeiten AAV(4), AAV(2), AAV(1) und AAV(3) für die Zylinder werden unter der Annahme eines Anwachsens mit einer konstanten durchschnittlichen Zuwachsrate mit den folgenden Gleichungen ermittelt: AAV(4) = (TaAVj – TaAVj–1)·(1/8) + TaAVj–1, AAV(2) = (TaAVj – TaAVj–1)·(3/8) + TaAVj–1, AAV(1) = (TaAVj – TaAVj–1)·(5/8) + TaAVj–1, AAV(3) = (TaAVj – TaAVj–1)·(7/8) + TaAVj–1.
  • Als Nächstes werden die relativen Abweichungen KAFC(4), KAFC(2), KAFC(1) und KAFC(3) der tatsächlich gemessenen, verflossenen Zeiten Ta(4)j–1, Ta(2)j–1, Ta(1)j und Ta(3)j von den verflossenen Zeiten AAV(4), AAV(2), AAV(1) und AAV(3) für die Zylinder auf der Basis der folgenden Gleichungen ermittelt: KAFC(4) = {Ta(4)j–1 – AAV(4)}/AAV(4), KAFC(2) = {Ta(2)j–1 – AAV(2)}/AAV(2), KAFC(1) = {Ta(1)j – AAV(1)}/AAV(1), KAFC(3) = {Ta(3)j – AAV(3)}/AAV(3).
  • Als Nächstes wird der Korrektur-Basisfaktor KTaB(i) für jeden Zylinder aus der folgenden Gleichung ermittelt: KTaB(i) = KTa(i)j–1 – KAFC(i)/4.
  • Der Korrektur-Basisfaktor KTaB(i) wird also berechnet, indem ¼ der relativen Abweichung KAFC(i) von dem bis dahin geltenden Korrekturfaktor KTa(i)j–1 für jeden Zylinder abgezogen wird.
  • Als Nächstes wird der Mittelwert tKTaM der Korrektur-Basisfaktoren KTaB(i) auf der Basis der folgenden Gleichung ermittelt: tKTaM = {KTaB(1) + KTaB(2) + KTaB(3) + KTaB(4)}/4.
  • Als Nächstes wird der Korrekturfaktor KTa(i) für jeden Zylinder berechnet, indem der Durchschnittswert tKTaM vom Korrektur-Basisfaktor KTaB(i) abgezogen wird, wie aus der folgenden Gleichung ersichtlich: KTa(i) = KTaB(i) – tKTaM.
  • Der Korrekturfaktor KTa(i)j–1 wird nicht direkt auf der Basis der relativen Abweichung KAFC(i) korrigiert. Der Korrektur-Basisfaktor KTaB(i) wird aus folgendem Grunde einmalig auf diese Weise gefunden. Es sei zum Beispiel angenommen, dass eine relative Abweichung KAFC(1) nur für den Zylinder Nr. 1 (#1) existiere und nur der Korrekturfaktor KTa(1) des Zylinders Nr. 1 (#1) auf der Basis der relativen Abweichung KAFC(1) korrigiert werde. In diesem Falle wird nur die verflossene Zeit Ta(1) des Zylinders Nr. 1 (#1) vergrössert oder verkleinert. Wenn nur die verflossene Zeit Ta(1) des Zylinders Nr. 1 (#1) vergrössert oder verkleinert wird, dann ergeben sich Abweichungen in den Korrekturfaktoren KTa(2), KTa(3) und KTa(4) der übrigen Zylinder #2, #3 und #4.
  • Um zu vermeiden, dass dieses Problem auftritt, wird der Korrektur-Basisfaktor KTaB(i) einmalig ermittelt, und der Mittelwert tKTaM des Korrektur-Basisfaktors wird vom Korrektur-Basisfaktor KTaB(i) abgezogen, um den endgültigen Korrekturfaktor KTa(i) zu finden. Wenn sich zum Beispiel der Korrektur-Basisfaktor KTa(1) des Zylinders Nr. 1 (#1) vergrössert, wird der Mittelwert tKTaM des Korrektur-Basisfaktors von den Korrektur-Basisfaktoren KTaB(i) aller Zylinder #1, #2, #3 und #4 abgezogen. Wenn auf diese Weise tKTaM von den Korrektur-Basisfaktoren KTaB(i) aller Zylinder abgezogen wird, wird der Korrekturfaktor KTa(1) des Zylinders Nr. 1 (#1) vergrössert, aber die Korrekturfaktoren KTa(2), KTa(3) und KTa(4) der verbleibenden Zylinder #2, #3 und #4 werden verringert, und die Summe von KTa(1), KTa(2), KTa(3) und KTa(4) wird konstant auf null gehalten. Wenn der Korrekturfaktor KTa(i) so korrigiert wird, dass die Summe von KTa(1), KTa(2), KTa(3) und KTa(4) konstant bei null bleibt, dann werden ungeachtet des Korrekturfaktors KTa(i), der korrigiert worden ist, in den anderen Korrekturfaktoren KTa(i) keine weiteren Abweichungen auftreten.
  • In der in 12 gezeigten Ausführungsform nimmt die relative Abweichung KAFC(1) des Zylinders Nr. 1 (#1) einen positiven Wert an, wenn unter der Annahme einer konstanten durchschnittlichen Zuwachsrate die verflossene Zeit Ta(1)j des Zylinders Nr. 1 (#1) zum Beispiel grösser als die verflossene Zeit AAV(1) ist. Im Ergebnis wird der Korrekturfaktor KTa(1) verringert, bis die relative Abweichung KAFC(1) null wird. Wenn die relative Abweichung KAFC(1) null wird, nimmt der Wert des Korrekturfaktors KTAa(1) einen konstanten Wert an. Dann stimmt die verflossene Zeit Ta(1) mit der verflossenen Zeit AVV(1) überein. Wenn die Korrekturfaktoren KTa(1) aller Zylinder konstante Werte annehmen und die Drehzahl des Läufers 14 konstant ist, werden die verflossenen Zeiten Ta(i) der Zylinder, die unter Verwendung der Korrekturfaktoren KTa(i) korrigiert worden sind, alle gleich. Daher ist es möglich, die Drehmomentschwankungen der Zylinder selbst dann genau zu erfassen, wenn die Abstände zwischen den Aussenzähnen des Läufers 14 veränderlich sind.
  • Nochmals zur Diskussion der Berechnung der Drehmomentschwankungen zurückkehrend, schwankt die Differenz der verflossenen Zeiten, DTa(i), wie in 10 gezeigt, wenn im Motorantriebsmechanismus Torsionsschwingungen auftreten. Diese Differenz der verflossenen Zeiten, DTa(i), schwankt aber selbst dann, wenn das Fahrzeug auf einer holprigen Strasse fährt. Des Weiteren wird dann in einigen Fällen das Ausmass der Schwankungen der DTa(i) äusserst gross. 13 zeigt die Schwankungen von DTa(i), wenn das Fahrzeug auf einer holprigen Strasse fährt. Der Wert von AMP in 13 zeigt die Differenz zwischen der minimalen DTa(i) und der maximalen DTa(i), also die Amplitude, an. Wenn diese Amplitude AMP klein ist, können die Schwankungen der Kraft abgabe und des Drehmoments der Zylinder mit dem bis hierher beschriebenen Verfahren genau erfasst werden.
  • Wenn die Amplitude AMP gross wird, ist es aber nicht mehr möglich, die Schwankungen der Kraftabgabe oder des Drehmoments des Zylinders genau zu erfassen, der die maximale oder minimale DTa(i) liefert. So wird in 13 unter der Annahme, dass der Zylinder, der die maximale DTa(i) liefert, der Zylinder Nr. 1 (#1) ist, zuerst der Betrag der Verringerung, I, der angenommenen Differenz der verflossenen Zeiten Kb(1) des Zylinders Nr. 1 (#1), der durch die Torsionsschwingungen verursacht wird, aus der Neigung der DTa(1) und DTa(3) in 11 verbindenden, gestrichelten Linie ermittelt. Nahe der Stelle, wo DTa(1) maximal wird, verändert sich der Betrag der Zunahme oder Abnahme der verflossenen Zeit, der durch die Torsionsschwingungen verursacht wird, entlang einer durch DTa(2), DTa(1) und DTa(3) gehenden, glatten Kurve. Daher ist der berechnete Wert von Kb(1) beträchtlich kleiner als der tatsächliche Wert, wenn Kb(1) des Zylinders Nr. 1 (#1) aus DTa(1) und DTa(3) ermittelt wird. Im Ergebnis gibt Kb(1) nicht mehr den richtigen Wert wieder, und daher können die Beträge der Schwankungen der Kraftabgabe und des Drehmoments nicht mehr genau erfasst werden. Wenn die Amplitude AMP grösser wird, passiert Gleiches mit dem Zylinder, der die minimale DTa(i) liefert.
  • Des Weiteren weicht der Wert von Kb(i) vom tatsächlichen Wert auch bei den Zylindern ab, bei denen sich die DTa(i) gegenüber der DTa(i) des Zylinders, in dem die Verbrennung einen Takt früher durchgeführt worden war, scharf verändert, so dass es nicht mehr möglich ist, die Schwankungen in der Kraftabgabe und im Drehmoment genau zu erfassen. Daher wird in dieser Ausführungsform gemäss vorliegender Erfindung für Zylinder, die die maximale oder minimale DTa(i) liefern, der Betrag der Schwankungen der Kraftabgabe oder des Drehmoments nicht gesucht, wenn die Amplitude AMP gross ist. Des Weiteren wird der Betrag der Schwankungen der Kraftabgabe oder des Drehmoments nicht für Zylinder gesucht, bei denen sich DTa(i) gegenüber der DTa(i) des Zylinders, bei dem die Verbrennung einen Takt früher erfolgt war, scharf verändert.
  • In dieser Ausführungsform der vorliegenden Erfindung wird ferner der Betrag der Drehzahlschwankungen des Läufers 37 des Drehmomentwandlers 32 über den Ausgangsimpuls des Drehzahlgebers 41 erfasst, der die Fahrzeuggeschwindigkeit anzeigt; auf der Basis des Betrags der Drehzahlschwankungen des Läufers 37 wird beurteilt, ob das Fahrzeug auf einer unebenen Strasse fährt; und eine Korrektur des Kraftstoff-Luft-Ver hältnisses wird verboten, wenn geurteilt wird, dass das Fahrzeug auf einer unebenen Strasse fährt.
  • Wenn nämlich das Fahrzeug auf einer unebenen Strasse fährt, greift eine auf die Vorderräder wirkende, äussere Kraft direkt am Läufer 37 des Drehmomentwandlers 32 an so dass die Drehzahl des Läufers 37 stark schwankt. Die Schwankungen in der Drehzahl des Läufers 37 werden über das Pumpenrad 35 an die Kurbelwelle übertragen, daher treten Schwankungen in der Drehzahl der Kurbelwelle auf. Andererseits schwankt die Drehzahl des Läufers 37 auch dann, wenn die Drehzahl der Kurbelwelle wegen Schwankungen im Verbrennungsdruck schwankt, so dass man nicht weiss, ob die Schwankungen in der Drehzahl der Kurbelwelle durch die Fahrt auf einer unebenen Strasse oder durch Schwankungen im Verbrennungsdruck verursacht werden. Es erwies sich, dass die Schwankungen in der Drehzahl des Läufers 37, die durch ein Fahren auf unebener Strasse verursacht werden, grösser sind als die durch Schwankungen im Verbrennungsdruck verursachten. In dieser Ausführungsform der vorliegenden Erfindung wird daher geurteilt, dass das Fahrzeug auf einer unebenen Strasse fährt, und die Korrektur des Kraftstoff-Luft-Verhältnisses wird verboten, wenn der Durchschnittswert des Betrages der Drehzahlschwankungen des Läufers 37 einen im Voraus definierten, ersten Richtwert über eine Zeitdauer hinweg überschreitet, die selbst länger als eine im Voraus definierte Zeit ist.
  • Es gibt aber verschiedene Formen unebener Strassen. Tatsächlich gibt es Fälle, in denen das Fahrzeug tatsächlich auf einer unebenen Strasse fährt, dies aber mit dem oben erwähnten Verfahren nicht erkannt werden kann. Zu den unebenen Strassen gehören nämlich sowohl unebene Strassen mit grossen Vertiefungen oder Buckeln in der Strassenoberfläche und gelinden Änderungen in der Gestalt der Strassenoberfläche (hierunter als „Strassen mit grossen Vertiefungen und Buckeln" bezeichnet) und unebene Strassen mit kleinen Vertiefungen oder Buckeln in der Strassenoberfläche und scharfen Änderungen in der Gestalt der Strassenoberfläche (hierunter als „Strassen mit kleinen Vertiefungen und Buckeln" bezeichnet). Mit dem obigen Verfahren können Strassen mit grossen Vertiefungen und Buckeln erkannt werden. Wenn das Fahrzeug auf einer Strasse mit kleinen Vertiefungen und Buckeln fährt, ändert sich jedoch der Durchschnittswert des Betrages der Drehzahlschwankungen des Läufers 37 nicht so sehr. Selbst wenn er gross wird, so geschieht dies nur für eine äusserst kurze Zeit. Mit dem obigen Verfahren ist es daher nicht möglich zu erkennen, wann das Fahrzeug auf einer Strasse mit kleinen Vertiefungen und Buckeln fährt. Wenn das Fahrzeug auf einer Strasse mit kleinen Vertiefungen und Buckeln fährt, schwankt die Drehzahl des Läufers 37 mit kurzer Periode. Im Gegensatz dazu schwankt die Drehzahl des Läufers 37 mit einer längeren Periode, wenn der Verbrennungsdruck schwankt. Daher wird in dieser Ausführungsform der vorliegenden Erfindung geurteilt, dass das Fahrzeug auf einer unebenen Strasse fährt, und eine Korrektur des Kraftstoff-Luft-Verhältnisses wird verboten, wenn die Drehzahl des Läufers 37 grösser als ein im Voraus definierter zweiter Richtwert und die Periode der Schwankungen kleiner als ein im Voraus definierter Wert ist.
  • In dieser Ausführungsform der vorliegenden Erfindung werden ferner die Beträge der Drehzahlschwankungen der Vorderräder 43 und Hinterräder 45 des Fahrzeugs durch die Ausgangsimpulse der Drehzahlgeber 47 und 48 erkannt, auf der Basis der Schwankungsbeträge und der Fahrzeuggeschwindigkeiten der Vorderräder 43 und Hinterräder 45 wird geurteilt, dass das Fahrzeug auf einer unebenen Strasse fährt, und eine Korrektur des Kraftstoff-Luft-Verhältnisses wird verboten, wenn geurteilt wird, dass das Fahrzeug auf einer unebenen Strasse fährt.
  • Wie oben erklärt, kann auf der Basis des Betrages der Drehzahlschwankungen des Läufers 37 beurteilt werden, ob das Fahrzeug auf einer Strasse mit grossen Vertiefungen und Buckeln oder einer Strasse mit kleinen Vertiefungen und Buckeln fährt. Mit diesem Verfahren ist es aber selbst dann möglich zu urteilen, dass das Fahrzeug auf einer unebenen Strasse fährt, wenn die Vertiefungen oder Buckel der Strassenoberfläche sich über eine gewisse Entfernung fortsetzen oder wenn einzelne Vertiefungen oder Buckel beträchtlicher Grösse in der Strassenoberfläche vorhanden sind. In anderen Worten ist es auf der Basis des Betrages d er Drehzahlschwankungen des Läufers 37 nicht möglich zu urteilen, ob das Fahrzeug auf einer unebenen Strasse fährt, wenn das Fahrzeug auf einer unebenen Strasse mit einzelnen Vertiefungen oder Buckeln geringer Grösse in der Strassenoberfläche (hiernach als „Strassen mit einzelnen Vertiefungen oder Buckeln" bezeichnet) fährt. Das besagt, dass der Betrag der Schwankungen des Läufers 37 nicht so gross wird, wenn das Fahrzeug auf einer Strasse mit einzelnen Vertiefungen oder Buckeln fährt, und selbst wenn dieser Betrag gross wird, so ändert sich die Drehzahl des Läufers 37 nicht periodisch. Wenn andererseits das Fahrzeug auf einer Strasse mit einzelnen Vertiefungen und Buckeln fährt, wird der Betrag der Schwankungen in der Drehzahl der Vorderräder 43 und der Hinterräder 45 vorübergehend ziemlich klein oder gross, das heisst, Spitzenwerte treten in den Drehzahlschwankungen der Vorderräder 43 und der Hinterräder 44 auf. Andererseits können Spitzenwerte in den Drehzahlschwankungen der Vorderräder 43 und der Hinterräder 44 selbst dann auftreten, wenn der Verbrennungsdruck schwankt. Wenn das Fahrzeug (vorwärts) auf einer Strasse mit einzelnen Vertiefungen und Buckeln fährt, so tritt ein Spitzenwert in den Drehzahlschwankungen der Hinterräder 45 genau dann auf, wenn nach dem Auftreten des Spitzenwertes der Drehzahlschwankungen der Vorderräder 43 eine durch die Fahrzeuggeschwindigkeit bestimmte Zeit verflossen ist. In dieser Ausführungsform der vorliegenden Erfindung wird daher die tatsächlich zwischen dem Auftreten des Spitzenwertes der Drehzahlschwankungen der Vorderräder 43 und dem Auftreten des Spitzenwertes der Hinterräder 45 verflossene Zeit erfasst, auf der Basis der Fahrzeuggeschwindigkeit wird unter der Annahme, dass das Fahrzeug auf einer Strasse mit einzelnen Vertiefungen oder Buckeln fährt, die angenommene verflossene Geschwindigkeit zwischen dem Auftreten des Spitzenwertes der Drehzahlschwankungen der Vorderräder 43 und dem Auftreten des Spitzenwertes der Drehzahlschwankungen der Hinterräder 45 ermittelt, und wenn die tatsächlich verflossene Zeit und die angenommene verflossene Geschwindigkeit im Wesentlichen übereinstimmen, wird geurteilt, dass das Fahrzeug auf einer unebenen Strasse fährt, und eine Korrektur des Kraftstoff-Luft-Verhältnisses wird verboten.
  • In dieser Ausführungsform der vorliegenden Erfindung werden ferner die Schwankungsbeträge der Kraftabgabe und der Drehmomente gespeichert, wenn geurteilt wird, dass das Fahrzeug auf einer unebenen Strasse fährt, und die Korrektur des Kraftstoff-Luftverhältnisses wird auf der Basis der gespeicherten Schwankungsbeträge der Kraftabgabe und der Drehmomente wieder aufgenommen, wenn das Verbot der Korrektur des Kraftstoff-Luft-Verhältnisses, das auf den Schwankungsbeträgen der Kraftabgabe oder des Drehmoments beruhte, auf Grund des Urteils, dass das Fahrzeug auf einer unebenen Strasse fährt, aufgehoben werden sollte.
  • Als Nächstes werden die Routinen zur Auffindung des Betrages der Drehmomentschwankungen an jedem Zylinder unter Bezugnahme auf 14 bis 25 erklärt. Es sei bemerkt, dass 25 die Zeitpunkte für die Berechnung der verschiedenen Werte, die in jeder Routine erfolgt, zeigt.
  • 14 zeigt eine Unterbrechungsroutine, die bei jedem Kurbelwinkel von 30° durchgeführt wird. Auf 14 Bezug nehmend, wird zuerst die Routine (Schritt 100) für eine Berechnung der Differenz der verflossenen Zeiten DTa(i) und der verflossenen Zeit Tb(i) vorgenommen. Diese Routine ist in 15 bis 18 gezeigt. Als Nächstes wird die Routine (Schritt 200) für eine Überprüfung, ob die Drehmomentschwankungen berechnet werden dürfen oder nicht, vorgenommen. Diese Routine ist in 19 bis 21 gezeigt. Als Nächstes wird die Routine für eine Berechnung der Drehmomentschwankungen (Schritt 300) vorgenommen. Diese Routine ist in 23 gezeigt. Als Nächstes wird die Routine für eine Verarbeitung des Zählers CDLNIX, die für eine Berechnung des Wertes der Drehmomentschwankungen verwendet wird, vorgenommen. Diese Routine ist in 24 gezeigt.
  • Auf 15 bis 18 Bezug nehmend, die die Routine für eine Berechnung der Differenz der verflossenen Zeiten DTa(i) und der verflossenen Zeit Tb(i) zeigt, wird zuerst im Schritt 101 die Zeit TIME auf den Wert TIME0 gesetzt. Die elektronische Steuereinheit 20 ist mit einem freilaufenden Zähler versehen, der die Zeit anzeigt. Die Zeit TIME wird aus dem Zählwert dieses freilaufenden Zählers berechnet. Als Nächstes wird in Schritt 102 die laufende Zeit TIME aufgesucht. Daher drückt TIME0 des Schrittes 101 die Zeit des vorherigen 30°-Kurbelwinkels aus.
  • Als Nächstes wird im Schritt 103 beurteilt, ob der Zylinder Nr. 1 sich derzeit bei ATDC 30° befindet oder nicht. Wenn der Zylinder Nr. 1 sich derzeit nicht bei ATDC 30° befindet, wird nach Schritt 111 gesprungen, wo beurteilt wird, ob sich der Zylinder Nr. 1 derzeit bei ATDC 90° befindet oder nicht. Wenn der Zylinder Nr. 1 sich derzeit nicht bei ATDC 90° befindet, wird die Routine für eine Berechnung der Differenz der verflossenen Zeiten Ta(i) und der verflossenen Zeit Tb(i) beendet.
  • Wenn im Gegensatz dazu im Schritt 103 geurteilt wird, dass sich der Zylinder Nr. 1 derzeit bei ATDC 30° befindet, wird zu Schritt 104 weitergegangen, in dem die seit einem 720° früheren Kurbelwinkel verflossene, berechnete Zeit Ta(i) zu Ta0(i) gemacht wird. Als Nächstes wird im Schritt 105 die endgültige verflossene Zeit Ta(i) von TDC bis ATDC 30° des Zylinders Nr. i auf der Basis der folgenden Gleichung berechnet: Ta(i) = (TIME – TIME0)·(1 + KTa(i)).
  • Wenn sich zum Beispiel der Zylinder Nr. 1 (#1) derzeit bei ATDC 30° befindet, wird die endgültige verflossene Zeit Ta(1) von TDC bis ATDC 30° des Zylinders Nr. 1 (#1) aus (TIME – TIME0)·(1 + KTa(i)) berechnet. Hier drückt (TIME – TIME0) die verflossene Zeit Ta(1) aus, die vom Kurbelwinkelfühler 15 tatsächlich gemessen wurde, während KTa(1) ein Korrekturfaktor für die Korrektur des Fehlers wegen der Abstände der Aussenzähne auf dem Läufer 13 ist, deshalb drückt die endgültige verflossene Zeit Ta(1), die durch eine Multiplikation von (TIME – TIME0) mit (1 + KTa(1)) gewonnen wird, genau die Zeit aus, die verflossen ist, wenn die Kurbelwelle sich um einen Kurbelwinkel von 30° dreht.
  • Als Nächstes wird im Schritt 106 die derzeit berechnete, verflossene Zeit Ta(i) um die seit einem 720° früheren Kurbelwinkel verflossene Zeit Ta0(i) verringert, um die Differenz der verflossenen Zeiten DTa(i) (= Ta(i) – Ta0(i)) zu berechnen. Als Nächstes wird im Schritt 107 beurteilt, ob der Zylinder Nr. 2 (#2) sich derzeit bei ATDC 30° befindet. Wenn der Zylinder Nr. 2 (#2) sich nicht bei ATDC 30° befindet, springt die Routine zu Schritt 110, wo die Flagge XCAL(i – 1) des Zylinders Nr. (i – 1), in dem Verbrennung einen Takt zuvor erfolgt war, gesetzt wird, die anzeigt, dass der Betrag der Drehmomentschwankungen berechnet werden sollte (XCAL(i – 1) ← „1"). Als Nächstes geht die Routine zu Schritt 111 weiter. In dieser Ausführungsform gemäss der vorliegenden Erfindung wird, wie oben erklärt, da die Zündfolge 1-3-4-2 ist, die Flagge XCAL(2) des Zylinders Nr. 2 (#2), in dem Verbrennung einen Takt zuvor erfolgt war, gesetzt, die anzeigt, dass der Betrag der Drehmomentschwankungen berechnet werden sollte, wenn der Zylinder Nr. 1 sich derzeit bei ATDC 30° befindet. In der gleichen Weise wird, wenn die endgültige verflossene Zeit Ta(3) berechnet wird, wie in 25 gezeigt, die Flagge XCAL(1) gesetzt; wenn die endgültige verflossene Zeit Ta(4) berechnet wird, wird die Flagge XCAL(3) gesetzt, und wenn die endgültige verflossene Zeit Ta(2) berechnet wird, wird die Flagge XCAL(4) gesetzt.
  • Wenn andererseits im Schritt 111 geurteilt wird, dass sich der Zylinder Nr. 1 derzeit bei ATDC 90° befindet, wird zu Schritt 112 weitergegangen, in dem die seit einem 720° früheren Kurbelwinkel verflossene, berechnete Zeit Tb(i) zu Tb0(i) gemacht wird. Als Nächstes wird im Schritt 113 die endgültige, von ATDC 60° bis ATDC 90° des Zylinders Nr. i verflossene Zeit Tb(i) auf der Basis der folgenden Gleichung berechnet: Tb(i) = (TIME – TIME0)·(1 + KTb(i)).
  • Wenn sich zum Beispiel der Zylinder Nr. 1 (#1) derzeit bei ATDC 90° befindet, wird die endgültige, von ATDC 60° bis ATDC 90° des Zylinders Nr. 1 (#1) verflossene Zeit Tb(1) aus (TIME – TIME0)·(1 + KTb(1)) berechnet. Auch in diesem Falle drückt die endgültige verflossene Zeit Tb(1) genau die während der Periode verflossene Zeit aus, in der die Kurbelwelle sich um einen Kurbelwinkel von 30° dreht, da der Wert von (1 + KTb(1)) für die Korrektur des Fehlers wegen der Abstände der Aussenzähne auf dem Läufer 13 mit (TIME – TIME0) multipliziert wird. Als Nächstes wird im Schritt 114 beurteilt, ob sich der Zylinder Nr. 2 (#2) derzeit bei ATDC 90° befindet oder nicht. Wenn sich der Zylinder Nr. 2 (#2) derzeit nicht bei ATDC 90° befindet, wird die Routine zur Berechnung der Differenz der verflossenen Zeiten, DTa(i), und der verflossenen Zeit Tb(i) beendet.
  • Wenn andererseits im Schritt 107 geurteilt wird, dass sich der Zylinder Nr. 2 (#2) derzeit bei ATDC 30° befindet, geht die Routine zum Schritt 108 weiter, wo der Durchschnittswert TaAVj der verflossenen Zeiten Ta(i) im 720°-Kurbelwinkelbereich (j) auf der Basis der folgenden Gleichung berechnet wird: TaAVj = (Ta(1) + Ta(3) + Ta(4) + Ta(2))/4.
  • Hier entsprechen Ta(1), Ta(3), Ta(4) und Ta(2) den Ta(1)j, Ta(3)j, Ta(4)j und Ta(2)j in 12. Als Nächstes wird zur Routine für eine Berechnung des Korrekturfaktors KTa(i) des Schrittes 109 weitergegangen. Diese Routine ist in 17 gezeigt.
  • Auf 17 Bezug nehmend, wird zuerst im Schritt 120 beurteilt, ob während eines Verzögerungsvorgangs die Kraftstoffzufuhr unterbrochen wird oder nicht. Wenn die Kraftstoffzufuhr während eines Verzögerungsvorganges nicht unterbrochen wird, endet der Verarbeitungszyklus, aber wenn der Kraftstoff während des Verzögerungsvorganges unterbrochen wird, wird zu Schritt 121 weitergegangen. Im Schritt 121 werden die verflossenen Zeiten AAV(4), AAV(2), AAV(1) und AAV(3), die in 12 unter der Annahme einer Zunahme mit einer konstanten durchschnittlichen Wachstumsrate gezeigt werden, wie folgt aus dem Durchschnittswert TaAVj der im Schritt 108 berechneten, verflossenen Zeiten Ta(i) und dem Durchschnittswert TaAVj–1 der vorher berechneten, verflossenen Zeit Ta(i) im 720°-Kurbelwinkelbereich (j – 1) der 12 (= (Ta(1) + Ta(3) + Ta(4) + Ta(2))/4, wo Ta(1), Ta(3), Ta(4) und Ta(2) den in 12 gezeigten Ta(1)j–1, Ta(3)j–1, Ta(4)j–1 und Ta(2)j–1 entsprechen) berechnet. AAV(4) = (TaAVj – TaAVj–1)·(1/8) + TaAVj–1, AAV(2) = (TaAVj – TaAVj–1)·(3/8) + TaAVj–1, AAV(1) = (TaAVj – TaAVj–1)·(5/8) + TaAVj–1, AAV(3) = (TaAVj – TaAVj–1)·(7/8) + TaAVj–1.
  • Als Nächstes werden im Schritt 122 die relativen Abweichungen KAFC(4), KAFC(2), KAFC(1) und KAFC(3) der tatsächlich erfassten, verflossenen Zeiten Ta0(4), Ta0(2), Ta0(1) und Ta0(3) von den verflossenen Zeiten AAV(4), AAV(2), AAV(1) und AAV(3) auf der Basis der folgenden Gleichungen gefunden; hier entsprechen Ta0(4), Ta(02), Ta(1) und Ta(3) den in 12 gezeigten Ta(4)j–1, Ta(2)j–1, Ta(1)j und Ta(3)j. KAFC(4) = {Ta0(4) – AAV(4)}/AAV(4), KAFC(2) = {Ta0(2) – AAV(2)}/AAV(2), KAFC(1) = {Ta(1) – AAV(1)}/AAV(1), KAFC(3) = {Ta(3) – AAV(3)}/AAV(3).
  • Als Nächstes wird im Schritt 123 beurteilt, ob die Bedingungen zum Erlernen des Korrekturfaktors KTa(i) erfüllt sind oder nicht. Zum Beispiel wird geurteilt, dass die Lernbedingungen erfüllt sind, wenn seit Unterbruch der Kraftstoffzufuhr eine vorbestimmte Zeit verflossen ist, die Motordrehzahl sich in einem vorbestimmten Bereich befindet, das Fahrzeug auf einer unebenen Strasse fährt und die in 13 gezeigte Amplitude AMP der Differenz der verflossenen Zeiten DTa(i) zum Beispiel einen Richtwert überschreitet. Wenn die Lernbedingungen nicht erfüllt sind, geht die Routine zu Schritt 128 weiter, in dem die kumulative Zählung KAFCI(i) des Abweichungsbetrages KAFC(i) null gemacht wird. Als Nächstes wird im Schritt 129 die Zählung CKAFC gelöscht.
  • Wenn im Gegensatz dazu die Lernbedingungen erfüllt sind, wird zu Schritt 124 weitergegangen, wo der Abweichungsbetrag KAFC(i) für die Zylinder zum entsprechenden kumulativen Wert KAFCI(i) addiert wird. Als Nächstes wird im Schritt 125 die kumulative Zählung CKAFC um genau 1 inkrementiert. Als Nächstes wird im Schritt 126 beurteilt, ob die kumulative Zählung CKAFC „8" geworden ist. Wenn die kumulative Zählung CKAFC nicht „8" ist, ended der Verarbeitungszyklus, aber wenn die kumulative Zählung CKAFC „8" wird, wird zu Schritt 127 weitergegangen, in dem der Korrekturfaktor KTa(i) berechnet wird. Das heisst, dass zu Schritt 127 weitergegangen wird, in dem der Korrekturfaktor KTa(i) berechnet wird, wenn der Abweichungsbetrag KAFC(i) für jeden Zylinder acht Mal kumulativ addiert worden ist.
  • Im Schritt 127 wird der Korrekturfaktor KTa(i) auf folgende Weise berechnet. Zuerst wird der kumulative Wert KAFCI(i) durch KAFCE(i) ersetzt. Als Nächstes wird der Korrektur-Basisfaktor KTaB(i) auf der Basis der folgenden Gleichung berechnet: KTaB(i) = KTa(i) – (KAFCI(i)/8)/4.
  • Das bedeutet, dass der Wert des derzeitigen Korrekturfaktors KTa(i), revidiert um genau ¼ des Durchschnittswertes des kumulativen Wertes KAFCI(i), zum Korrektur-Basisfaktor KTaB(i) gemacht wird, wenn eine Abweichung von der verflossenen Zeit AAC(i) unter der Annahme auftritt, dass die tatsächlich erfasste, verflossene Zeit Ta(i) mit einer konstanten durchschnittlichen Zuwachsrate zunimmt. Als Nächstes wird der Mittelwert tKTaM des Korrektur-Basisfaktors KTaB(i) für alle Zylinder auf der Basis der folgenden Gleichung berechnet: tKTaM = (KTaB(1) + KTaB(2) + KTaB(3) + KTaB(4))/4.
  • Als Nächstes wird der Korrektur-Basisfaktor KTaB(i) um den Durchschnittswert tKTaM revidiert, wie durch die folgende Gleichung gezeigt, um so den Korrekturfaktor KTa(i) zu aktualisieren: KTa(i) = KTaB(i) – tKTaM.
  • Die Korrekturfaktoren KTa(i) für alle Zylinder werden zu dem Zeitpunkt, da die Kraftstoffeinspritzung während eines Verzögerungsvorganges unterbrochen wird, auf diese Weise aktualisiert.
  • Wenn andererseits im Schritt 114 der 16 geurteilt wird, dass sich der Zylinder Nr. 2 (#2) derzeit bei ATDC 90° befindet, wird zu Schritt 115 weitergegangen, wo das gleiche Verfahren, das zum Auffinden von TaAVj verwendet wurde, verwendet wird, um den Durchschnittswert TbAVj der verflossenen Zeit Tb(i) im 720°-Bereich des Kurbelwinkels auf der Basis der folgenden Gleichung zu berechnen: TbAVj = (Tb(1) + Tb(3) + Tb(4) + Tb(2))/4.
  • Als Nächstes wird die Routine für die Berechnung des Korrekturfaktors KTb(i) des Schritts 116 vorgenommen. Diese Routine wird in 18 gezeigt.
  • Unter Bezugnahme auf 18 wird zuerst im Schritt 130 beurteilt, ob die Kraftstoffzufuhr während eines Verzögerungsvorgangs unterbrochen wurde. Wenn die Kraftstoffzufuhr während des Verzögerungsvorganges nicht unterbrochen wurde, wird der Verarbeitungszyklus beendet, wenn aber die Kraftstoffzufuhr während des Verzögerungsvorganges unterbrochen wurde, wird zu Schritt 131 weitergegangen. Im Schritt 131 werden unter der Annahme einer Zunahme mit einer konstanten durchschnittlichen Zuwachsrate die verflossenen Zeiten BAV(4), BAV(2), BAV(1) und BAV(3) aus dem im Schritt 115 berechneten Durchschnittswert TbAVj der verflossenen Zeiten Tb(i) und dem Durch schnittswert TaAVj–1 der verflossenen Zeiten Tb(i) im vorangehenden 720°-Kurbelwinkelbereich (= (Tb(1) + Tb(3) + Tb(4) + Tb(2))/4) berechnet: BAV(4) = (TbAVj – (TbAVj–1)·(1/8) + TbAVj–1, BAV(2) = (TbAVj – TbAVj–1)·(3/8) + TbAVj–1, BAV(1) = (TbAVj – TbAVj–1)·(5/8) + TbAVj–1, BAV(3) = (TbAVj – TbAVj–1)·(7/8) + TbAVj–1,
  • Als Nächstes werden die relativen Abweichungen KBFC(4), KBFC(2), KBFC(1) und KBFC(3) der tatsächlich erfassten, verflossenen Zeiten Tb0(4), Tb0(2), Tb(1) und Tb(3) von den verflossenen Zeiten BAV(4), BAV(2), BAV(1) und BAV(3) auf der Basis der folgenden Gleichungen ermittelt: KBFC(4) = {Tb0(4) – BAV(4)}/BAV(4), KBFC(2) = {Tb0(2) – BAV(2)}/BAV(2), KBFC(1) = {Tb(1) – BAV(1)}/BAV(1), KBFC(3) = {Tb(3) – BAV(3)}/BAV(3).
  • Als Nächstes wird im Schritt 133 beurteilt, ob der Korrekturfaktor KTb(i) erfüllt ist oder nicht. Wie oben erläutert, wird geurteilt, dass die Lernbedingungen erfüllt sind, wenn eine im Voraus definierte Zeit nach Unterbruch der Kraftstoffzufuhr verflossen ist, die Motordrehzahl sich innerhalb eines im Voraus definierten Bereichs befindet und das Fahrzeug nicht auf unebenen Strassen fährt, also wenn zum Beispiel die in 13 gezeigte Amplitude AMP der Differenz der verflossenen Zeiten DTa(i) nicht über einem Richtwert liegt. Wenn die Lernbedingungen nicht erfüllt sind, wird zu Schritt 138 weitergegangen, wo der kumulative Wert KBFCI(i) des Abweichungsbetrages KFBC(i) zu null gemacht wird. Als Nächstes wird im Schritt 139 die kumulative Zählung CKBFC gelöscht.
  • Wenn im Gegensatz dazu die Lernbedingungen erfüllt sind, wird zu Schritt 134 weitergegangen, wo der Abweichungsbetrag KBFC(i) bezüglich der Zylinder zum entsprechenden kumulativen Wert KBFCI(i) addiert wird und die kumulative Zählung CKBFC dann im Schritt 135 um genau 1 inkrementiert wird. Als Nächstes wird im Schritt 136 beurteilt, ob die kumulative Zählung CKBFC „8" geworden ist oder nicht. Wenn die kumulative Zählung CKBFC nicht „8" ist, wird der Verarbeitungszyklus beendet. Wenn die kumulative Zählung CKBFC „8" geworden ist, wird zu Schritt 137 weitergegangen, in dem der Korrekturfaktor KTb(i) berechnet wird. Das heisst, dass zu Schritt 137 weiter gegangen wird, in dem der Korrekturfaktor KTb(i) berechnet wird, wenn der Abweichungsbetrag KBFC(i) für jeden Zylinder acht Mal kumulativ addiert worden ist.
  • Im Schritt 137 wird der Korrekturfaktor KTb(i) auf die folgende Weise berechnet. Zuerst wird der kumulative Wert KBFCI(i) durch KBFCE(i) ersetzt. Als Nächstes wird der Korrektur-Basisfaktor KTbB(i) auf der Basis der folgenden Gleichung berechnet: KTbB(i) = KTb(i) – (KBFCE(i)/8)/4.
  • Das bedeutet, dass der Wert des derzeitigen Korrekturfaktors KTb(i), revidiert um genau ¼ des Durchschnittswertes des kumulativen Wertes KBFCE(i), zum Korrektur-Basisfaktor KTbB(i) gemacht wird, wenn eine Abweichung von der verflossenen Zeit BAV(i) unter der Annahme auftritt, dass die tatsächlich erfasste, verflossene Zeit Tb(i) mit einer konstanten durchschnittlichen Zuwachsrate zunimmt. Als Nächstes wird der Durchschnittswert tKTbM der Korrektur-Basisfaktoren KTbB(i) für alle Zylinder auf der Basis der folgenden Gleichung berechnet: tKTbM = (KTbB(1) + KTbB(2) + KTbB(3) + KTbB(4))/4.
  • Als Nächstes wird der Korrektur-Basisfaktor KTbB(i) um den Durchschnittswert tKTbM revidiert, wie durch die folgende Gleichung gezeigt, um so den Korrekturfaktor KTb(i) zu aktualisieren: KTb(i) = KTbB(i) – tKTbM.
  • Die Korrekturfaktoren KTb(i) für alle Zylinder werden zu dem Zeitpunkt, da die Kraftstoffeinspritzung während eines Verzögerungsvorganges unterbrochen wird, auf diese Weise aktualisiert.
  • Als Nächstes wird die Routine zur Überprüfung der Erlaubnis, die Drehmomentschwankungen zu berechnen, die in 19 bis 21 gezeigt ist, unter Bezugnahme auf 22 erklärt. Diese Routine ist so festgelegt, dass sie die Berechnung des Betrages der Drehmomentschwankungen für einen bestimmten Zylinder verbietet, wenn die Amplitude AMP der Schwankungen der Differenz der verflossenen Zeiten, DTa(i) (13) gross wird, weil das Fahrzeug auf einer holprigen Strasse fährt.
  • Auf 19 bis 21 Bezug nehmend, wird zuerst im Schritt 201 beurteilt, ob einer der Zylinder sich derzeit bei ATDC 30° befindet oder nicht. Wenn sich keiner der Zylinder derzeit bei ATDC 30° befindet, wird der Verarbeitungszyklus beendet, während zu Schritt 202 weitergegangen wird, wenn sich einer der Zylinder bei ATDC 30° befindet.
  • In den Schritten 202 bis 204 wird, wenn die Differenz der verflossenen Zeiten DTa(i) zunimmt und dann abnimmt, die maximale Differenz der verflossenen Zeiten DT30max berechnet. Das heisst, dass im Schritt 202 beurteilt wird, ob die im Schritt 106 berechnete DTa(i) grösser als die maximale Differenz der verflossenen Zeiten DT30max ist oder nicht. Bei DT30max > DTa(i) wird zu Schritt 205 gesprungen, während bei DT30max ≤ DTa(i) zu Schritt 203 weitergegangen wird, wo DTa(i) zu DT30max gemacht wird. Als Nächstes wird im Schritt 204 die Erhöhungsflagge XMXREC, die anzeigt, dass DTa(i) ansteigt, gesetzt (XMXREC ← „1"), sodann wird zu Schritt 205 weitergegangen.
  • In den Schritten 205 bis 207 wird, wenn die Differenz der verflossenen Zeiten DTa(i) abnimmt und dann zunimmt, die minimale Differenz der verflossenen Zeiten DT30min berechnet. Das heisst, dass im Schritt 205 beurteilt wird, ob die im Schritt 106 der 15 berechnete DTa(i) kleiner als die minimale Differenz der verflossenen Zeiten DT30min ist oder nicht. Bei DT30min < DTa(i) wird zu Schritt 208 gesprungen, während bei DT30min ≥ DTa(i) zu Schritt 206 weitergegangen wird, wo DTa(i) zu DT30min gemacht wird. Als Nächstes wird im Schritt 207 die Verringerungsflagge XMNREC, die anzeigt, dass DTa(i) abgenommen hat, gesetzt (XMNREC ← „1"), sodann wird zu Schritt 208 weitergegangen.
  • In den Schritten 208 bis 214 wird die Verbotsflagge gesetzt, die die Berechnung des Betrages der Drehmomentschwankungen für den Zylinder verbietet, bei dem DTa(i) maximal wird, wenn die Amplitude AMP der Schwankungen von DTa(i) (13) den Richtwert von A0 überschritten hat. Das heisst, dass im Schritt 208 beurteilt wird, ob DT30max > DTa(i) und XMXREC = „1" oder nicht. Wenn DT30max ≤ DTa(i) oder die Erhöhungsflagge XMXREC eingezogen wurde (XMXREC = „0"), wird zu Schritt 215 gesprungen, während zu Schritt 209 weitergegangen wird, wenn DT30max > DTa(i) und XMXREC = „1".
  • Man nehme also an, dass zur Zeit t1 die Differenz der verflossenen Zeiten DTa(1) des Zylinders Nr. 1 (#1) maximal geworden ist, wie in 22 gezeigt. In diesem Falle wird in der zur Zeit t1 ausgeführten Unterbrechungsroutine von Schritt 202 zu Schritt 203 weitergegangen, wo DTa(1) zu DT30max gemacht wird, dann wird im Schritt 204 die Maximumflagge XMXREC gesetzt. Andererseits wird in der zur Zeit t2 in 22 ausgeführten Unterbrechungsroutine von Schritt 202 zu Schritt 205 gesprungen. Zu dieser Zeit wird, da im Schritt 208 geurteilt wird, dass DT30max > DTa(3) und XMXREC = „1", zu Schritt 209 weitergegangen. Das heisst, dass zur Zeit t2 zu Schritt 209 weitergegangen wird, wenn sich die verflossene Zeit DTa(i) zu verringern beginnt.
  • Im Schritt 209 wird die maximale Differenz der verflossenen Zeiten DT30max zu TMXREC gemacht. Als Nächstes wird im Schritt 210 die minimale Differenz der verflossenen Zeiten TMNREC (die in dem später erklärten Schritt 216 gefunden wird) von der maximalen Differenz der verflossenen Zeiten TMXREC abgezogen, um die Amplitude AMP der Schwankungen von DTa(i) zu berechnen. Als Nächstes wird im Schritt 211 der Anfangswert der minimalen Differenz der verflossenen Zeiten DT30min zu DTa(i) gemacht. Als Nächstes wird im Schritt 212 die Erhöhungsflagge XMXREC eingezogen (XMXREC ← „0"). Als Nächstes wird im Schritt 213 beurteilt, ob die Amplitude AMP grösser als der Richtwert A0 ist oder nicht. Bei AMP < A0 wird zu Schritt 215 gesprungen. Im Gegensatz dazu wird, wenn AMP ≥ A0, zu Schritt 214 weitergegangen, in dem die Verbotsflagge für die Berechnung der Drehmomentschwankungen XNOCAL gesetzt wird (XNOCAL ← „1"). Das heisst, dass in der zur Zeit t2 in 22 ausgeführten Unterbrechungsroutine, wie oben erklärt, der Betrag der Drehmomentschwankungen des Zylinders Nr. 1 (#1) berechnet wird. Daher ist in dieser Unterbrechungsroutine die Berechnung des Betrages der Drehmomentschwankungen des Zylinders Nr. 1 (#1), d. h. die Berechnung des Betrages der Drehmomentschwankungen des Zylinders, der die maximale DTa(i) liefert, verboten, wenn AMP ≥ A0 und die Verbotsflagge für eine Berechnung der Drehmomentschwankungen XNOCAL gesetzt ist.
  • In den Schritten 215 bis 221 ist, wenn die Amplitude AMP der Schwankungen von DTa(i) den Richtwert von A0 überschritten hat, die Verbotsflagge gesetzt, die die Berechnung des Betrages der Drehmomentschwankungen des Zylinders, der die minimale DTa(i) liefert, verbietet. Das heisst, dass im Schritt 215 beurteilt wird, ob DT30min < DTa(i) und XMNREC = „1" oder nicht. Wenn DT30min ≥ DTa(i) oder die Verringerungsflagge XMNREC eingezogen wurde (XMNREC = „0"), wird zu Schritt 222 gesprungen, während, wenn DT30min < DTa(i) und XMNREC = „1", zu Schritt 216 weitergegangen wird.
  • Das bedeutet, dass, wie in 22 gezeigt, zur Zeit t3 angenommen wird, dass die Differenz der verflossenen Zeiten DTa(1) des Zylinders Nr. 1 (#1) minimal geworden ist. In diesem Falle wird in der zur Zeit t3 ausgeführten Unterbrechungsroutine von Schritt 205 zu Schritt 206 weitergegangen, wo DTa(1) zu DT30min gemacht wird, sodann wird im Schritt 207 die Verringerungsflagge XMNREC gesetzt. Andererseits springt die zur Zeit t4 der 22 ausgeführte Unterbrechungsroutine von Schritt 205 zu Schritt 208. Zu dieser Zeit wird zu Schritt 216 weitergegangen, da im Schritt 215 geurteilt wurde, dass DT30min < DTa(3) und XMNREC = „1". Das heisst, dass zur Zeit t4, zu der die Differenz der verflossenen Zeiten DTa(i) zuzunehmen beginnt, zu Schritt 216 weitergegangen wird.
  • Im Schritt 216 wird die minimale Differenz der verflossenen Zeiten DT30min zu TMNREC gemacht. Als Nächstes wird im Schritt 217 die minimale Differenz der verflossenen Zeiten TMNREC von der maximalen Differenz der verflossenen Zeiten TMXREC abgezogen, wodurch die Amplitude AMP der Schwankungen von DTa(i) berechnet wird. Als Nächstes wird im Schritt 218 der Anfangswert der maximalen Differenz der verflossenen Zeiten, DT30max, zu DTa(i) gemacht. Als Nächstes wird im Schritt 219 die Verringerungsflagge XMNREC eingezogen (XMNREC ← „0"). Als Nächstes wird im Schritt 220 beurteilt, ob die Amplitude grösser als der Richtwert A0 ist oder nicht. Wenn AMP < A0, wird zu Schritt 222 gesprungen. Wenn im Gegenteil AMP ≥ A0, wird zu Schritt 221 weitergegangen, wo die Verbotsflagge XNOCAL für eine Berechnung der Drehmomentschwankungen gesetzt wird (XNOCAL ← „1"). Das heisst, dass in der zur Zeit t4 der 22 ausgeführten Unterbrechungsroutine der Betrag der Drehmomentschwankungen des Zylinders Nr. 1 (#1) berechnet wird. Daher ist in dieser Unterbrechungsroutine die Berechnung des Betrages der Drehmomentschwankungen des Zylinders Nr. 1 (#1), d. h. die Berechnung des Betrages der Drehmomentschwankungen des Zylinders, für den DTa(i) am kleinsten wird, verboten, wenn AMP ≥ A0 und die Verbotsflagge XNOCAL für eine Berechnung des Drehmoments gesetzt ist.
  • In Schritten 222 und 223 wird die Berechnung des Betrages der Drehmomentschwankungen eines Zylinders, dessen verflossene Zeit DTa(i) sich scharf verändert, verboten. Das heisst, dass im Schritt 222 beurteilt wird, ob |DTa(i – 2) – DTa(i – 1)| grösser als K0·|DTa(i – 1) – DTa(i)| ist oder nicht. Die Konstante K0 hat hier einen Wert von etwa 3,0 bis 4,0. Wenn im Schritt 222 geurteilt wird, dass |DTa(i – 2) – DTa(i – 1)| < K0·|DTa(i – 1) – DTa(i)|, wird die Verarbeitungsroutine beendet, aber wenn geurteilt wird, dass |DTa(i – 2) – DTa(i – 1)| ≥ K0·|DTa(i – 1) – DTa(i)|, wird zu Schritt 223 weitergegangen, in dem die Verbotsflagge XNOCAL für eine Berechnung der Drehmomentschwankungen gesetzt wird.
  • Wenn sich die Unterbrechungsroutine bei der Zeit t3 der 22 befindet, wird also beurteilt, ob zu dieser Zeit |DTa(4) – DTa(2)| ≥ K0·|DTa(2) – DTa(1)| ist oder nicht. Wie in 22 gezeigt, wird |DTa(4) – DTa(2)| grösser als K0·|DTa(2) – DTa(1)|, wenn DTa(2) sich rasch gegenüber DTa(4) verändert. Zu dieser Zeit wird die Verbotsflagge für eine Berechnung der Drehmomentschwankungen gesetzt und die Berechnung des Betrages der Drehmomentschwankungen des Zylinders Nr. 2 (#2), bei dem sich die verflossene Zeit DTa(i) scharf geändert hat, wird verboten.
  • Als Nächstes wird die in 23 gezeigte Routine für eine Berechnung der Drehmomentschwankungen erläutert. Auf 23 Bezug nehmend, wird zuerst im Schritt 301 beurteilt, ob die Flagge XCAL(i – 1), die anzeigt, dass der Betrag der Drehmomentschwankungen des Zylinders Nr. (i – 1), in dem eine Verbrennung einen Takt früher erfolgt war, berechnet werden sollte, gesetzt ist oder nicht. Wenn die Flagge XCAL(i – 1) = „0", d. h., wenn die Flagge XCAL(i – 1) nicht gesetzt ist, wird der Verarbeitungszyklus beendet. Wenn im Gegenteil die Flagge XCAL(i – 1) = „1", d. h., wenn die Flagge XCAL(i – 1) gesetzt ist, wird zu Schritt 302 weitergegangen, wo die Flagge XCAL(i – 1) eingezogen wird, dann wird zu Schritt 303 weitergegangen.
  • Im Schritt 303 wird beurteilt, ob die Verbotsflagge XNOCAL, die eine Berechnung des Betrages der Drehmomentschwankungen für den Zylinder verbietet, bei dem die Verbrennung einen Takt früher erfolgt war, eingezogen ist (XNOCAL = „0") oder nicht. Wenn diese Verbotsflagge gesetzt ist (XNOCAL = „1"), wird zu Schritt 311 weitergegangen, wo die Verbotsflagge XNOCAL eingezogen wird. Wenn im Gegenteil die Verbotsflagge eingezogen ist, wird zu Schritt 304 weitergegangen. Das heisst, dass zu Schritt 304 nur weitergegangen wird, wenn die Flagge XCAL gesetzt und die Verbotsflagge XNOCAL eingezogen ist.
  • Im Schritt 304 wird die angenommene Differenz der verflossenen Zeiten Kb(i – 1) des Zylinders Nr. (i – 1), in dem die Verbrennung einen Takt früher erfolgt war (siehe 10 und 11), auf der Basis der folgenden Gleichung berechnet: Kb(i – 1) = {2·DTa(i – 1) + DTa(i)}/3.
  • Als Nächstes wird im Schritt 305 das tatsächlich gelieferte Drehmoment DN(i – 1) des Zylinders Nr. (i – 1), in dem die Verbrennung einen Takt früher erfolgt war, auf der Basis der folgenden Gleichung berechnet: DN(i – 1) = {30°/Tb(i – 1)}2 – {30°/Ta(i – 1)}2.
  • Als Nächstes wird im Schritt 306 das angenommene gelieferte Drehmoment DNS(i – 1) des Zylinders Nr. (i – 1), in dem die Verbrennung einen Takt früher erfolgt war, auf der Basis der folgenden Gleichung berechnet: DNS(i – 1) = {30°/(Tb0(i – 1) + Kb(i – 1))}2 – {30°/Ta(i – 1)}2.
  • Als Nächstes wird im Schritt 307, wie in der folgenden Gleichung gezeigt, das tatsächlich gelieferte Drehmoment DN(i – 1) vom angenommenen gelieferten Drehmoment DNS(i – 1) abgezogen, um den Betrag der Drehmomentschwankungen DLN(i – 1) des Zylinders Nr. (i – 1) zu berechnen, in dem die Verbrennung einen Takt früher erfolgt war: DLN(i – 1) = DNS(i – 1) – DN(i – 1).
  • Das bedeutet, dass zum Beispiel, wenn sich der Zylinder Nr. 3 (#3) bei ATDC 30° befindet und die Flagge XCAL(1) gesetzt ist, im Schritt 304 die Differenz der verflossenen Zeiten Kb(1) für den Zylinder Nr. 1 (#1) berechnet wird, dann im Schritt 305 das tatsächlich gelieferte Drehmoment DN(1) des Zylinders Nr. 1 (#1) berechnet wird, im Schritt 306 das angenommene gelieferte Drehmoment DNS(1) des Zylinders Nr. 1 (#1) berechnet wird und schliesslich im Schritt 307 der Betrag der Drehmomentschwankungen DLN(1) des Zylinders Nr. 1 (#1) berechnet wird.
  • Es sei bemerkt, dass die folgende Berechnung von Schritt 305 zu Schritt 307 ausgeführt werden kann, wenn der Betrag der Drehmomentschwankungen GLN(i – 1) der Zylinder ermittelt wird.
  • Im Schritt 305 wird nämlich, anstatt den tatsächlichen Betrag der Drehmomentschwankungen DN(i – 1) zu ermitteln, der tatsächliche Betrag der Kraftabgabeschwankungen GN(i – 1) auf der Basis der folgenden Gleichung berechnet: GN(i – 1) = {30°/Tb(i – 1)} – {30°/Ta(i – 1)}.
  • Als Nächstes wird im Schritt 306, anstatt den angenommenen Betrag der Drehmomentschwankungen DNS(i – 1) zu ermitteln, der angenommene Betrag der Kraftabgabeschwankungen GNS(i – 1) auf der Basis der folgenden Gleichung berechnet: GNS(i – 1) = {30°/(Tb0(i – 1) + Kb(i – 1))} – {30°/Ta(i – 1)}
  • Als Nächstes wird im Schritt 307, anstatt den Betrag der Drehmomentschwankungen DLN(i – 1) zu ermitteln, der Betrag der Kraftabgabeschwankungen GLN(i – 1) auf der Basis der folgenden Gleichung berechnet: GLN(i – 1) = GNS(i – 1) – GN(i – 1).
  • Als Nächstes wird, wenn der Betrag der Drehmomentschwankungen DLN(i – 1) im Schritt 307 berechnet worden ist, zum Schritt 308 weitergegangen, wo beurteilt wird, ob der Betrag der Drehmomentschwankungen, DLN(i – 1), positiv ist oder nicht. Wenn DLN(i – 1) ≥ 0, so wird zu Schritt 310 gesprungen, wo die Anforderungsflagge für kumulative Addition XCDLN(i – 1), die anzeigt, dass der Betrag der Drehmomentschwankungen DLN(i – 1) des Zylinders, in dem die Verbrennung einen Takt früher erfolgt war, kumulativ addiert werden sollte, gesetzt wird (XCDLN(i – 1) ← „1"). Wenn im Gegenteil DLN(i – 1) < 0, so wird zu Schritt 309 weitergegangen, wo DLN(i – 1) null gemacht wird, dann wird zu Schritt 310 weitergegangen. Es sei bemerkt, dass das Drehmoment jedes Zylinders wiederholt ansteigt und abfällt, so dass es in diesem Falle, um den Betrag der Drehmomentschwankungen zu finden, genügt, entweder den Betrag der Erhöhung des Drehmoments oder den Betrag der Verringerung des Drehmoments kumulativ zu addieren. In der in 23 gezeigten Routine wird nur der Betrag der Verringerung des Drehmoments kumulativ addiert, daher wird, wie oben erklärt, DLN(i – 1) null gemacht, wenn DLN(i – 1) < 0.
  • Als Nächstes wird unter Bezugnahme auf 24 die Verarbeitung des Zählers CDLNIX erklärt. Der Zählwert des Zählers CDLNIX wird für die später zu erklärende Berechnung des Wertes der Drehmomentschwankungen des Motors verwendet.
  • Auf 24 Bezug nehmend, wird zuerst im Schritt 401 beurteilt, ob der Zylinder Nr. 3 (#3) sich derzeit bei ATDC 30° befindet oder nicht. Wenn sich der Zylinder Nr. 3 (#3) derzeit nicht bei ATDC 30° befindet, wird der Verarbeitungszyklus beendet, aber wenn sich der Zylinder Nr. 3 (#3) derzeit bei ATDC 30° befindet, wird zu Schritt 402 weitergegangen. Im Schritt 402 wird beurteilt, ob die Bedingungen für eine Berechnung des Wertes der Drehmomentschwankungen erfüllt sind oder nicht. Wenn zum Beispiel die Bedingungen dafür, das Kraftstoff-Luft-Gemisch mager zu machen, nicht erfüllt sind oder der Betrag der Änderung, ΔPM, der Motorbelastung Q/N in der Zeiteinheit höher als der Richtwert ist oder der Betrag der Änderung, ΔN, der Motordrehzahl pro Zeiteinheit höher als ein Richtwert ist, wird geurteilt, dass die Bedingungen für eine Berechnung des Wertes der Drehmomentschwankungen nicht erfüllt sind, während zu anderen Zeiten geurteilt wird, dass die Bedingungen für eine Berechnung des Wertes der Drehmomentschwankungen erfüllt sind.
  • Wenn im Schritt 402 geurteilt wird, dass die Bedingungen für eine Berechnung des Wertes der Drehmomentschwankungen erfüllt sind, wird zu Schritt 408 weitergegangen, wo der Zählwert CDLNIX um genau 1 inkrementiert wird. Die Inkrementierung dieses Zählwertes CDLNIX wird jedesmal ausgeführt, wenn der Zylinder Nr. 3 (#3) ATDC 30° erreicht, d. h., alle 720° des Kurbelwinkels. Als Nächstes werden im Schritt 409 der Durchschnittswert der Motordrehzahl, NAVE, und der Durchschnittswert der angesaugten Luftmenge Q im Zyklus, PMAVE, für die Periode vom Beginn der Inkrementierung des Zählwertes CDLNIX bis zur Löschung des Zählwertes CDLNIX berechnet.
  • Wenn auf der anderen Seite im Schritt 402 geurteilt wird, dass die Bedingungen für eine Berechnung des Wertes der Drehmomentschwankungen nicht erfüllt sind, wird zu Schritt 403 weitergegangen, in dem der Zählwert CDLNIX gelöscht wird. Als Nächstes wird im Schritt 404 der kumulative Wert DLNI(i) des Wertes der Drehmomentschwankungen jedes Zylinders, DLN(i) (dieser kumulative Wert wird durch eine später zu erklärende Routine berechnet), gelöscht. Als Nächstes wird im Schritt 405 der kumulative Zählwert CDLNI(i) für jeden Zylinder (dieser kumulative Zählwert wird durch eine später zu erklärende Routine berechnet) gelöscht.
  • Als Nächstes wird im Schritt 406 der Zielwert der Drehmomentschwankungen, LVLLFB, berechnet. In dieser Ausführungsform gemäss der vorliegenden Erfindung wird, wie später erklärt werden wird, das Kraftstoff-Luft-Verhältnis durch Rückkopplung so gesteuert, dass der berechnete Wert der Drehmomentschwankungen zu diesem Zielwert der Drehmomentschwankungen, LVLLFB, wird. Dieser Zielwert der Drehmomentschwankungen, LVLLFB, wird, wie in 26A gezeigt, wo der Äquivalentwert der Schwankungen durch die ausgezogene Linie gezeigt wird, desto höher, je höher die Motorbelastung Q/N und je höher die Motordrehzahl N ist. Dieser Zielwert der Drehmomentschwankungen, LVLLFB, wird im Voraus in Gestalt einer Karte, die in 26B gezeigt ist, in Abhängigkeit von der Motorbelastung Q/N und der Motordrehzahl N im ROM 22 gespeichert. Als Nächstes wird im Schritt 407 der Wert der Drehmomentschwankungen jedes Zylinders, DLNISM(i) (dieser Wert der Drehmomentschwankungen wird durch eine später zu erklärende Routine berechnet), zu dem aus der Karte von 26B berechneten Zielwert der Drehmomentschwankungen, LVLLFB, gemacht.
  • Wie oben erläutert, wird aber in dieser Ausführungsform der vorliegenden Erfindung beurteilt, ob die Korrektur des Kraftstoff-Luft-Verhältnisses auf der Basis der Drehzahlschwankungen des Läufers 37 des Drehmomentwandlers 32 verboten werden sollte. Dies wird als Nächstes unter Bezugnahme auf 27 bis 37 erläutert.
  • In dieser Ausführungsform der vorliegenden Erfindung werden nämlich zum Beispiel 16 Vorsprünge in gleichen Winkelabständen auf der Eingangswelle 36 des automatischen Getriebes 30 ausgebildet. Der Drehzahlgeber 41 wird so angeordnet, dass er in der Lage ist, diesen Vorsprüngen zugekehrt zu sein. Der Drehzahlgeber 41 erzeugt jedesmal, wenn er diesen Vorsprüngen gegenüber steht, einen Impuls. Daher erzeugt der Drehzahlgeber 41 jedesmal einen Impuls, wenn sich die Eingangswelle 36, also der Läufer 37, um 22,5 Grad dreht.
  • In 27 zeigt P die Zeitpunkte der Erzeugung der Ausgangsimpulse des Drehzahlgebers 41, während S die Zeitpunkte der Abtastung der Ausgangsimpulse für eine Berechnung der Geschwindigkeit anzeigt. Wie in 27 gezeigt, wird der Ausgangsimpuls jedesmal, wenn Ausgangspulse erzeugt werden, zur Berechnung der Fahrzeuggeschwindigkeit abgetastet. Bei jeder Abtastung werden die Zeiten NTj–4, NTj–3, NTj–2, NTj–1 und NTj, die zwischen der Ausführung der vorangehenden Abtastung und der Ausführung der derzeitigen Abtastung verflossen sind, berechnet.
  • Als Nächstes werden aus diesen verflossenen Zeiten die verflossene Zeit TNTj (= NTj + NTj–1 + N + Tj–2 + NTj–3) berechnet, die der Läufer 37 braucht, um sich um 360° zu drehen. Die Differenz der verflossenen Zeiten DTNT (= TNTj – TNTj–1) wird aus der verflossenen Zeit TNTj und der zuvor berechneten TNTj–1 berechnet.
  • Wenn auf der anderen Seite das Fahrzeug auf einer unebenen Strasse fährt, schwankt die Differenz der verflossenen Zeiten DTNT. 28 zeigt die Schwankungen der DTNT, wenn das Fahrzeug auf einer unebenen Strasse fährt. In 28 zeigt AMN die Differenz zwischen der minimalen DTNT und der maximalen DTNT, also die Amplitude. Die Grösse CYC zeigt die Zeit zwischen dem Zeitpunkt, wenn DTNT zum Beispiel minimal wird, und dem Zeitpunkt, wenn sie wiederum minimal wird, also die Periode. Wenn das Fahrzeug auf einer Strasse mit grossen Vertiefungen und Buckeln fährt, wird die Amplitude AMN gross. In dieser Ausführungsform der vorliegenden Erfindung wird daher der Durchschnittswert SINPAV der Amplitude AMN ermittelt, und es wird geurteilt, dass das Fahrzeug auf einer unebenen Strasse fährt, wenn SINPAV während mehr als einer im Voraus definierten Zeit grösser als ein erster Richtwert ist.
  • Wenn auf der anderen Seite das Fahrzeug auf einer Strasse mit kleinen Ver tiefungen und Buckeln fährt, wird die Amplitude AMN nicht so gross wie im vorherigen Fall, aber die Periode CYC wird kürzer. Daher wird in dieser Ausführungsform der vorliegenden Erfindung geurteilt, dass das Fahrzeug auf einer unebenen Strasse fährt, wenn während mehr als einer im Voraus definierten Zeit AMN grösser als ein zweiter Richtwert und CYC kleiner als ein im Voraus definierter Wert ist.
  • Als Nächstes wird eine in 29 bis 34 gezeigte Unterbrechungsroutine erläutert. Es sei bemerkt, dass diese Unterbrechungsroutine jedesmal ausgeführt wird, wenn der Drehzahlgeber 41 einen Ausgangsimpuls erzeugt.
  • Auf 29 bis 34 Bezug nehmend, wird zuerst im Schritt 530 beurteilt, ob vier Ausgangsimpulse des Drehzahlgebers 41 erzeugt worden sind oder nicht. Wenn keine vier Ausgangsimpulse erzeugt worden sind, wird die Unterbrechungsroutine beendet, während zu Schritt 531 weitergegangen wird, wenn vier Ausgangsimpulse erzeugt worden sind.
  • Im Schritt 531 wird die Zeit NTj berechnet, die zwischen dem Zeitpunkt, als der vier Impulse zurückliegende Ausgangsimpuls erzeugt wurde, und dem Zeitpunkt, zu dem der derzeitige Ausgangsimpuls erzeugt wird, verflossen ist. Als Nächstes wird im Schritt 532 die Zeit TNTj (= NTj + NTj–1 + NTj–2 + NTj–3) berechnet, die der Läufer 37 brauchte, um sich bis zu diesem Zeitpunkt um 360° zu drehen. Als Nächstes wird im Schritt 533 NTj–2 zu NTj–3, NTj–1 zu NTj–2 und NTj zu NTj–1 gemacht. Als Nächstes wird im Schritt 534 die vorher berechnete, verflossene Zeit TNTj–1 von der derzeit berechneten, verflossenen Zeit TNTj abgezogen, um die Differenz DTNT der verflossenen Zeiten zu berechnen. Es sei bemerkt, dass die Beziehung zwischen TNTj–1 und TNTj in 27 gezeigt ist. Wenn DTNT in dieser Weise berechnet wird, lassen sich die Fehler in den Intervallen zwischen Ausgangsimpulsen gegenseitig aufheben. Als Nächstes wird im Schritt 535 TNTj zu TNTj–1 gemacht, dann wird zu Schritt 536 weitergegangen, in dem die Zählung CDTNT, die die Perioden CYC anzeigt, um genau „1" inkrementiert wird.
  • Als Nächstes wird im Schritt 537 beurteilt, ob die derzeit erfasste DTNT grösser als die vorher berechnete DTNTj–1 ist oder nicht. Bei DTNTj ≥ DTNTj–1 wird zu Schritt 538 weitergegangen, wo beurteilt wird, ob eine Erhöhungsflagge XINCNT, die anzeigt, dass DTNT ansteigt, eingezogen wurde (XINCNT = „0") oder nicht. Wenn XINCNT eingezogen wurde, wird zu Schritt 539 weitergegangen, wo DTNTj–1 bei abnehmender und dann zunehmender DTNT zum minimalen Wert NTMIN gemacht wird. Das bedeutet, dass in der vorherigen Unterbrechungsroutine XINCNT eingezogen ist, also DTNT abnimmt. In der derzeitigen Unterbrechungsroutine ist andererseits DTNTj ≥ DTNTj–1, also DTNT nimmt zu. Daher wird zu Schritt 539 weitergegangen, wenn DTNT von einer Abnahme zu einer Zunahme wechselt. Andererseits wird die zuvor berechnete DTNTj–1 zum minimalen Wert NTMIN, da in der vorhergehenden Unterbrechungsroutine DTNTj–2 > DTNTj–1 und in der laufenden Unterbrechungsroutine DTNTj ≥ DTNTj–1.
  • Als Nächstes wird zur ersten Beurteilungsroutine des Schrittes 540 für unebene Strassen und zur zweiten Beurteilungsroutine des Schrittes 541 für unebene Strassen (später zu erläutern) weitergegangen. Als Nächstes wird zu Schritt 542 weitergegangen, wo der Zählwert CDTNT gelöscht wird. Als Nächstes wird zu Schritt 543 weitergegangen, wo die Erhöhungsflagge XINCNT gesetzt wird (XINCNT = „1"). Als Nächstes wird zu Schritt 550 weitergegangen. Wenn andererseits die Erhöhungsflagge XINCNT bereits im Schritt 538 gesetzt worden war, wird zu Schritt 543 gesprungen.
  • Im Gegensatz dazu wird zu Schritt 544 weitergegangen, wo beurteilt wird, ob die Erhöhungsflagge XINCNT gesetzt worden ist oder nicht, wenn im Schritt 537 DTNTj < DTNTj–1. Wenn die Erhöhungsflagge XINCNT gesetzt worden ist, wird zu Schritt 545 weitergegangen, wo DTNTj–1 zum maximalen Wert NTMAX gemacht wird, wenn DTNT zunimmt und dann abnimmt. Das bedeutet, dass in der vorhergehenden Unterbrechungsroutine XINCNT gesetzt ist, also DTNT zunimmt, während in der laufenden Unterbrechungsroutine DTNTj < DTNTj–1, also DTNT abnimmt. Daher wird zu Schritt 545 weitergegangen, wenn DTNT von einer Zunahme zu einer Abnahme wechselt. Andererseits ist in der laufenden Unterbrechungsroutine DTNTj–1 ≥ DTNTj–2, während in der laufenden Unterbrechungsroutine DTNTj–1 > DTNTj, so dass die vorher berechnete DTNTj–1 zum Maximum NTMAX gemacht wird.
  • Als Nächstes wird zur ersten Beurteilungsroutine des Schrittes 546 für unebene Strassen und zur zweiten Beurteilungsroutine des Schrittes 547 für unebene Strassen (später zu erläutern) weitergegangen. Als Nächstes wird zu Schritt 548 weitergegangen, wo der Zählwert CDTNT gelöscht wird. Als Nächstes wird zu Schritt 549 weitergegangen, wo die Erhöhungsflagge XINCNT eingezogen wird. Als Nächstes wird zu Schritt 550 weitergegangen. Wenn andererseits die Erhöhungsflagge XINCNT bereits im Schritt 544 eingezogen worden war, wird zu Schritt 549 gesprungen. Im Schritt 550 wird DTNT zu DTNTj–1 gemacht.
  • Das bedeutet, dass die Erhöhungsflagge XINCNT gesetzt wird, wenn die Differenz DTNT der verflossenen Zeiten zunimmt, wie in 36 gezeigt. Der gesetzte Zustand wird beibehalten, solange DTNT weiter zunimmt. Des Weiteren ist die Erhöhungsflagge XINCNT eingezogen worden, wenn DTNT abnimmt. Weiter wird dieser eingezogene Zustand beigehalten, solange DTNT weiter abnimmt. Andererseits wird der Zählwert CDTNT gelöscht, wenn die Erhöhungsflagge vom gesetzten Zustand eingezogen oder vom eingezogenen Zustand gesetzt wird, aber er wird inkrementiert, solange die Erhöhungsflagge XINCNT im gesetzten oder im eingezogenen Zustand gehalten wird.
  • 31 und 32 zeigen die erste Beurteilungsroutine der Schrittes 540 und 546 der 30 für unebene Strassen. Diese erste Beurteilungsroutine für unebene Strassen wird ausgeführt, um zu beurteilen, ob das Fahrzeug auf einer Strasse mit grossen Vertiefungen und Buckeln fährt.
  • Auf 31 und 32 Bezug nehmend, wird zuerst im Schritt 551 der minimale Wert NTMIN vom maximalen Wert NTMAX abgezogen, um die Amplitude AMN von DTNT zu berechnen. Daher wird AMN jedes Mal berechnet, wenn zur ersten Beurteilungsroutine für unebene Strassen geschritten wird, also jedesmal, wenn NTMIN oder NTMAX aktualisiert wird. Als Nächstes wird im Schritt 552 die Amplitude AMN zum kumulativen Wert ΣAMN der Amplitude addiert. Als Nächstes wird im Schritt 553 beurteilt, ob die Amplitude AMN kumulativ n Mal addiert worden ist. Wenn sie kumulativ n Mal addiert worden ist, wird zu Schritt 554 weitergegangen, in dem der Durchschnittswert SINPAV (= C0·ΣAMN/n) berechnet wird. Hier ist C0 eine Konstante. Als Nächstes wird im Schritt 555 der kumulative Wert ΣAMN der Amplitude gelöscht.
  • Als Nächstes wird im Schritt 556 beurteilt, ob der Verschlussmechanismus eingeschaltet ist oder nicht. Wenn der Verschlussmechanismus eingeschaltet ist, wird zu Schritt 557 vorangegangen, wo beurteilt wird, ob der Durchschnittswert SINPAV der Amplitude grösser als ein Bezugswert LVNT1ein ist, für den der Verschlussmechanismus eingeschaltet ist, oder ob er es nicht ist. Bei SINPAV ≤ LVNT1ein wird zu Schritt 558 weitergegangen, wo der Zählwert CNT1ein, der die Zeit angibt, während der der Durchschnittswert SINPAV der Amplitude grösser als der Bezugswert LVNT1ein ist, gelöscht wird. Als Nächstes wird im Schritt 559 die Beurteilungsflagge für unebene Strassen XAKURO1, die gesetzt wird, wenn geurteilt wird, dass das Fahrzeig auf einer Strasse mit grossen Vertiefungen und Buckeln fährt, eingezogen (XAKURO1 ← „0").
  • Wenn im Gegensatz dazu im Schritt 557 SINPAV > LVNT1ein, so wird zu Schritt 560 weitergegangen, in dem der Zählwert VNT1ein um „1" inkrementiert wird. Als Nächstes wird im Schritt 561 beurteilt, ob der Zählwert CNT1ein grösser als der Bezugswert CC1ein ist oder nicht, also ob eine im Voraus definierte Zeit seit dem Zeitpunkt verflossen ist, zu dem SINPAV grösser als LVNT1ein wurde. Bei CNT1ein ≤ CC1ein wird zu Schritt 559 weitergegangen. Andererseits wird bei CNT1ein > CC1ein zu Schritt 562 weitergegangen, wo die Beurteilungsflagge XAKURO1 für unebene Strassen gesetzt wird (XAKURO ← „1 ").
  • Das bedeutet, wie in 35 gezeigt, wenn der Durchschnittswert SINPAV der Amplitude kleiner als der Bezugswert LVNT1ein ist, bei dem der Zählwert CNT1ein bei null gehalten wird. Zu dieser Zeit wird die Beurteilungsflagge XAKURO1 für unebene Strassen ebenfalls im eingezogenen Zustand gehalten. Wenn der Durchschnittswert SINPAV der Amplitude über den Standardwert LVNT1ein ansteigt, beginnt die Inkrementierung des Zählwertes CNT1ein. Solange der Zählwert CNT1ein kleiner als der Bezugswert CC1ein ist, wird die Beurteilungsflagge XAKURO1 für unebene Strassen im eingezogenen Zustand gehalten. Als Nächstes wird bei CNT1ein > CC1ein, also wenn eine im Voraus definierte Zeit seit dem Beginn des Inkrementierens des Zählwertes CNT1ein verflossen ist, die Beurteilungsflagge XAKURO1 für unebene Strassen gesetzt. Als Nächstes wird bei SINPAV < LVNT1ein die Beurteilungsflagge für unebene Strassen eingezogen. Zu diesem Zeitpunkt wird auch der Zählwert CNT1ein gelöscht.
  • Wenn andererseits beim Schritt 556 der Verschlussmechanismus ausgeschaltet ist, wird zu Schritt 563 weitergegangen. Von Schritt 563 bis Schritt 568 erfolgt die gleiche Verarbeitung wie von Schritt 557 bis Schritt 562. Das bedeutet, dass im Schritt 563 beurteilt wird, ob der Durchschnittswert SINPAV der Amplitude grösser als der Bezugswert LVNT1aus ist, der gilt, wenn der Verschlussmechanismus ausgeschaltet ist. Bei SINPAV ≤ LVNT1aus wird zu Schritt 564 weitergegangen, wo der Zählwert CNT1aus, der die Zeit anzeigt, während der der Durchschnittswert SINPAV der Amplitude grösser als der Bezugswert LVNT1aus wurde, gelöscht wird. Als Nächstes wird im Schritt 565 die Beurteilungsflagge XAKURO1 für unebene Strassen eingezogen.
  • Wenn im Gegensatz dazu im Schritt 563 SINPAV > LVNT1aus, so wird zu Schritt 566 weitergegangen, wo der Zählwert CNT1aus um genau „1" inkrementiert wird. Als Nächstes wird im Schritt 567 beurteilt, ob der Zählwert CNT1aus grösser als der Bezugswert CC1aus ist oder nicht, also ob eine im Voraus definierte Zeit seit dem Zeitpunkt, zu dem SINPAV grösser als LVNT1aus wurde, verflossen ist. Bei CNT1aus ≤ CC1aus wird zu Schritt 565 weitergegangen, aber bei CNT1aus > CC1aus wird zu Schritt 568 weitergegangen, wo die Beurteilungsflagge XAKURO1 für unebene Strassen gesetzt wird.
  • Es sei bemerkt, dass in dieser Ausführungsform der vorliegenden Erfindung der Bezugswert LVNT1ein für den eingeschalteten Verschlussmechanismus kleiner als der Bezugswert LVNT1aus für den ausgeschalteten Verschlussmechanismus angesetzt ist. Wie oben erläutert, sind die Kurbelwelle und die Eingangswelle des Drehmomentwandlers 32 direkt verbunden, wenn der Verschlussmechanismus eingeschaltet ist, so dass die Drehzahlschwankungen der Kurbelwelle selbst dann gross werden können, wenn SINPAV klein ist. Wenn der Verschlussmechanismus ausgeschaltet ist, werden die Drehzahlschwankungen der Kurbelwelle nicht so gross, selbst wenn SINPAV gross wird. Daher wird LVNT1ein kleiner als LVNT1aus. Des Weiteren werden in dieser Ausführungsform der vorliegenden Erfindung diese LVNT1ein und LVNT1aus zu konstanten Werten gemacht, aber sie können auch in Abhängigkeit vom Betriebszustand des Motors veränderlich gemacht werden, zum Beispiel in Abhängigkeit von der Motordrehzahl.
  • 33 und 34 zeigen eine zweite Beurteilungsroutine der Schritte 541 und 547 der 30 für unebene Strassen. Zuerst wird im Schritt 569 beurteilt, ob der Verschlussmechanismus eingeschaltet ist oder nicht. Wenn der Verschlussmechanismus eingeschaltet ist, wird zu Schritt 570 weitergegangen. Im Schritt 570 wird beurteilt, ob die Amplitude AMN grösser als der Bezugswert LVNT2ein ist, für den der Verschlussmechanismus eingeschaltet ist, und ob der Zählwert CDTNT, der die Perioden CYC angibt, nicht über dem Bezugswert (von zum Beispiel 3) liegt. Bei AMN > LVNT2ein und CDTNT ≤ 3 wird zu Schritt 571 weitergegangen, wo der Zählwert CNT2ein für den eingeschalteten Verschlussmechanismus um genau „1" inkrementiert wird. Andererseits wird bei AMN ≤ LVNT2ein oder CDTNT > 3 zu Schritt 572 weitergegangen, wo beurteilt wird, ob der Zählwert CNT2ein grösser als 1 ist. Bei CNT2ein < 1 wird zu Schritt 578 gesprungen, während bei CNT2ein ≥ 1 zu Schritt 573 weitergegangen wird, wo der Zählwert CNT2ein um genau „1" dekrementiert wird, und dann zu Schritt 578 weitergegangen wird.
  • Wenn andererseits im Schritt 569 der Verschlussmechanismus ausgeschaltet ist, wird zu Schritt 574 weitergegangen. Im Schritt 574 wird beurteilt, ob die Amplitude AMN grösser als der Bezugswert LVNT2aus für den ausgeschalteten Verschlussmechanismus ist und ob der Zählwert CDTNT kleiner als ein Bezugswert (von zum Beispiel 4) ist. Bei AMN > LVNT2aus und CDTNT ≤ 4 wird zu Schritt 575 weitergegangen, wo der Zählwert CNT2aus für den ausgeschalteten Verschlussmechanismus um genau „1" inkrementiert wird. Andererseits wird bei AMN ≤ LVNT2aus oder CDTNT > 4 zu Schritt 576 weitergegangen, wo beurteilt wird, ob der Zählwert CNT2aus grösser als 1 ist oder nicht. Bei CNT2aus < 1 wird zu Schritt 578 gesprungen, während bei CNT2aus ≥ 1 zu Schritt 577 weitergegangen wird, wo der Zählwert CNT2aus um genau „1" dekrementiert wird, und dann zu Schritt 578 weitergegangen wird.
  • Im Schritt 578 wird beurteilt, ob der Zählwert CNT2ein oder CNT2aus grösser als ein konstanter Wert (von zum Beispiel 4) ist. Bei CTNTein ≥ 4 oder CTNTaus ≥ 4 wird zu Schritt 579 weitergegangen, in dem die Beurteilungsflagge XAKURO2 für unebene Strassen, die gesetzt wird, wenn geurteilt wird, dass das Fahrzeug auf einer Strasse mit kleinen Vertiefungen und Buckeln fährt, gesetzt wird (XAKURO2 ← „1"). Im Gegensatz dazu wird bei CTNT2ein < 4 und CTNT2aus < 4 zu Schritt 580 weitergegangen, wo die Beurteilungsflagge XAKURO2 für unebene Strassen eingezogen wird (XAKURO ← „0").
  • Das bedeutet, dass, wie in 36 gezeigt, die Inkrementierung des Zählwertes CNT2ein begonnen wird, wenn zum Beispiel AMN > LVNT2ein und CDTNT ≤ 3. Als Nächstes wird bei CNT2ein ≥ 4 die Beurteilungsflagge XAKURO2 für unebene Strassen gesetzt. Bei AMN ≤ LVNT2ein oder CDTNT > 3 wird der Zählwert CNT2ein dekrementiert, während bei CNT2ein < 4 die Beurteilungsflagge XAKURO2 für unebene Strassen eingezogen wird.
  • Auf diese Weise wird in dieser Ausführungsform der vorliegenden Erfindung der Zählwert CNT2ein inkrementiert, solange die Amplitude AMN grösser als LVNT2ein ist, so dass bei AMN > LVNT2ein der Zählwert CNT2ein die Zeit angibt, bei der AMN > LVNT2ein und CDTNT ≤ 3. Wenn AMN kleiner als LVNT2ein geworden ist, wird der Zählwert CNT2ein nicht sofort gelöscht, sondern um jeweils „1" dekrementiert, so dass in diesem Falle CNT2ein nicht die Zeit angibt, bei der AMAN > LVNT2ein und CDTNT ≤ 3. In diesem Falle wird CNT2ein während einer gewissen Zeit, nachdem AMN ≤ LVNT2ein wurde, auf einem Werte von mindestens 4 gehalten, so dass während einer gewissen Zeit, nachdem AMN ≤ LVNT2ein wurde, die Beurteilungsflagge XAKURO2 für unebene Strassen weiter gesetzt bleibt. Auf diese Weise wird die Zeit, während der die Beurteilungsflagge XAKURO2 für unebene Strassen weiter gesetzt bleibt, nachdem AMN LVNT2ein wurde, also die Zeit zwischen dem Zeitpunkt, an dem AMN ≤ LVNT2ein wurde, und dem Zeitpunkt, an dem CNT2ein kleiner als 4 wird, desto länger, je grösser AMN ist. Daher wird die Zeit, während der die Korrektur des Kraftstoff-Luft-Verhältnisses verboten ist, desto länger, je grösser AMN ist.
  • Es sei bemerkt, dass in der Ausführungsform gemäss der vorliegenden Erfindung die Bezugswerte LVNT2ein und LVNT2aus, wie in 37 gezeigt, so festgelegt werden, dass sie desto kleiner werden, je höher die Motordrehzahl N ist. Diese Bezugswerte LVNT2ein und LVNT2aus werden im Voraus im ROM 22 als Funktionen der Motordrehzahl N in Gestalt der in 37 gezeigten Karte gespeichert.
  • Wie zuvor erläutert, wird auf der Basis der Drehzahlschwankungen der Vorderräder 43 und der Hinterräder 45 des Fahrzeuges beurteilt, ob das Fahrzeug auf einer unebenen Strasse fährt, also ob die Korrektur des Kraftstoff-Luft-Verhältnisses verboten sein sollte. Als Nächstes wird unter Bezugnahme auf 38 bis 45 eine Erklärung einer dritten Beurteilung unebener Strassen gegeben.
  • Und zwar werden in dieser Ausführungsform, die nicht zur vorliegenden Erfindung gehört, zum Beispiel 16 Vorsprünge in gleichen Winkelabständen an der vorderen Welle 44 und an der hinteren Welle 46 ausgebildet. Die Drehzahlgeber 47 und 48 werden so angeordnet, dass sie in der Lage sind, diesen Vorsprüngen zugekehrt zu sein. Die Drehzahlgeber 47 und 48 erzeugen jedesmal, wenn sie den entsprechenden Vorsprüngen gegenüber stehen, einen Impuls. Daher erzeugt der Drehzahlgeber 47 jedesmal einen Impuls, wenn sich die vordere Welle 44, also die Vorderräder 43, um 22,5 Grad dreht, während der Drehzahlgeber 48 jedesmal einen Impuls erzeugt, wenn sich die hintere Welle 46, also die Hinterräder 45, um 22,5 Grad dreht.
  • Zuerst wird eine Erläuterung des Verfahrens zur Berechnung der Drehzahlschwankungen der Vorderräder 43 gegeben. In der gleichen Weise wie im Verfahren zur Berechnung der Drehzahlschwankungen des Läufers 37 wird jedesmal, wenn vier Ausgangsimpulse des Drehzahlgebers 47 erzeugt werden, ein Ausgangsimpuls für die Berechnung der Geschwindigkeit abgetastet. Bei jeder Abtastung werden die Zeiten NFRj–4, NFRj–3, NFRj–2, NFRj–1 und NFRj berechnet, die zwischen dem Zeitpunkt, zu dem die vorherige Abtastung erfolgte, und dem Zeitpunkt, zu dem die folgende Abtastung erfolgte, verflossen sind.
  • Als Nächstes wird aus der verflossenen Zeit die verflossene Zeit TNFRj (= NFRj + NFRj–1 + NFRj–2 + NFRj–3) berechnet, die die Vorderräder brauchen, um sich um 360° zu drehen. Die Differenz DTNFRj (= TNFRj – TNFRj–1) der verflossenen Zeiten wird aus der verflossenen Zeit TNFRj und der vorher berechneten TNFRj–1 berechnet.
  • In ähnlicher Weise wird jedesmal, wenn vier Ausgangsimpulse des Drehzahlgebers 48 erzeugt werden, ein Ausgangsimpuls für die Berechnung der Geschwindigkeit abgetastet. Bei jeder Abtastung werden die Zeiten NRRj–4, NRRj–3, NRRj–2, NRRj–1 und NRRj berechnet, die zwischen dem Zeitpunkt, zu dem die vorherige Abtastung erfolgte, und dem Zeitpunkt, zu dem die folgende Abtastung erfolgte, verflossen sind.
  • Als Nächstes wird aus diesen verflossenen Zeiten die verflossene Zeit TNRRj (= NRRj + NRRj–1 + NRRj–2 + NRRj–3) berechnet, die die Hinterräder 45 brauchen, um sich bis dahin um 360° zu drehen. Die Differenz DTNRRj (= TNRRj – TNRRj–1) der verflossenen Zeiten wird aus der verflossenen Zeit TNRRj und der vorher berechneten TNRRj–1 berechnet.
  • Andererseits schwanken die Differenzen der verflossenen Zeiten DTNFRj und DTNRRj, wenn das Fahrzeug auf einer unebenen Strasse fährt. 38 zeigt die Schwankungen von DTNFR und DTNRR, wenn das Fahrzeug über einen einzelnen kleinen Buckel auf einer Strassenoberfläche fährt, d. h. wenn es auf einer Strasse mit einzelnen Vertiefungen oder Buckeln fährt. Des Weiteren zeigt SINPFR in 38 die Differenz zwischen der minimalen DTNFR und der maximalen DTNFR an, also die Amplitude der DTNFR. SINPRR zeigt die Differenz zwischen der minimalen DTNRR und der maximalen DTNRR an, also die Amplitude der DTNRR, während TPK die Zeit anzeigt, die zwischen dem Zeitpunkt, an dem der Spitzenwert PKFR von DTNFR auftrat, und dem Zeitpunkt, an dem der Spitzenwert PKRR von DTNRR auftrat, verflossen ist. Wenn das Fahrzeug über einen einzelnen kleinen Buckel fährt, wird zuerst, wie in 38 gezeigt, DTNFR vorübergehend sehr klein, während SINPFR vorübergehend sehr gross wird, d. h. ein Spitzenwert PKFR von DTNFR tritt auf. Als Nächstes wird nach Ablauf von TPK DTNRR vorübergehend sehr klein, während SINPRR vorübergehend sehr gross wird, d. h. ein Spitzenwert PKRR von DTNRR tritt auf. Wenn das Fahrzeug des Weiteren über eine einzelne kleine Vertiefung in der Strassenoberfläche fährt, wird DTNFR vorübergehend sehr gross, und ein Spitzenwert PKFR von DTNFR tritt auf, während DTNRR vorübergehend sehr gross wird und ein Spitzenwert PKRR von DTNRR auftritt. Andererseits wird, wenn angenommen wird, dass das Fahrzeug auf einer Strasse mit einzelnen Vertiefungen und Buckeln fährt, die angenommene verflossene Zeit TSPK zwischen dem Zeitpunkt, an dem der Spitzenwert PKFR von DTNFR auftritt, und dem Zeitpunkt, an dem der Spitzenwert PKRR von DTNRR auftritt, auf der Basis der Fahrzeuggeschwindigkeit SPD wie folgt berechnet: TSPK = K0·WB/SPD.
  • Hier zeigt WB den Achsenabstand des Fahrzeugs an, während K0 die Konstante anzeigt. Das heisst, dass TSPK die Zeit angibt, die das Fahrzeug braucht, um genau eine dem Achsenabstand WB entsprechende Strecke zu fahren. Daher wird in dieser Ausführungsform der vorliegenden Erfindung die Zeit TPK erfasst, die zwischen dem Zeitpunkt, zu dem der Spitzenwert PKFR von DTNFR auftritt, und dem Zeitpunkt, zu dem der Spitzenwert von DTNRR auftritt, tatsächlich verflossen ist, und es wird geurteilt, dass das Fahrzeug auf einer unebenen Strasse fährt, wenn die tatsächlich verflossene Zeit TPK im Wesentlichen mit der angenommenen verflossenen Zeit TSPK übereinstimmt.
  • Wenn dies getan wird, dann ist es möglich, fast alle unebenen Strassen zu erkennen. Daher ist es möglich, eine irrtümliche Korrektur des Kraftstoff-Luft-Verhältnisses zuverlässig zu verhindern.
  • Als Nächstes wird eine Erläuterung der in 39 bis 41 gezeigten Unterbrechungsroutine gegeben. Es sei bemerkt, dass diese Unterbrechungsroutine jedesmal ausgeführt wird, wenn der Drehzahlgeber 47 einen Ausgangsimpuls erzeugt.
  • Auf 39 bis 41 Bezug nehmend, wird zuerst im Schritt 1000 beurteilt, ob vier Ausgangsimpulse des Drehzahlgebers 47 erzeugt worden sind oder nicht. Wenn keine vier Ausgangsimpulse erzeugt worden sind, wird die Unterbrechungsroutine beendet, während zu Schritt 1001 weitergegangen wird, wenn vier Ausgangsimpulse erzeugt worden sind.
  • Im Schritt 1001 wird die Zeit NFRj berechnet, die zwischen dem Zeitpunkt, zu dem der vier Impulse zurückliegende Ausgangsimpuls erzeugt wurde, und dem Zeitpunkt, zu dem der derzeitige Ausgangsimpuls erzeugt wird, verflossen ist. Als Nächstes wird im Schritt 1002 die Zeit TNFRj (= NFRj + NFRj–1 + NFRj–2 + NFRj–3) berechnet, die die Vorderräder 43 brauchten, um sich bis zu diesem Zeitpunkt um 360° zu drehen. Als Nächstes wird im Schritt 1003 NFRj–2 zu NFRj–3, NFRj–1 zu NFRj–2 und NFRj zu NFRj–1 gemacht. Als Nächstes wird im Schritt 1004 die vorher berechnete, verflossene Zeit TNFRj–1 von der derzeit berechneten, verflossenen Zeit TNFRj abgezogen, um die Differenz DTNFR der verflossenen Zeiten zu berechnen. Als Nächstes wird im Schritt 1005 TNFRj zu TNFRj–1 gemacht.
  • Als Nächstes wird im Schritt 1006 beurteilt, ob die derzeit berechnete DTNFR grösser als FRMAX ist oder nicht. Bei DTNFR < FRMAX wird zu Schritt 1007 weitergegangen, wo die derzeit berechnete DTNFR zu FRMAX gemacht wird. Als Nächstes wird im Schritt 1008 die Erhöhungsflagge XMXFR gesetzt, die anzeigt, dass DTNFR zunimmt (XMXFR = „1"). Als Nächstes wird zu Schritt 1009 weitergegangen. Im Schritt 1009 wird beurteilt, ob die derzeit berechnete DTNFR kleiner als FRMIN ist oder nicht. Bei DTNFR > FRMIN wird zu Schritt 1012 gesprungen, während bei DTNFR ≤ FRMIN zu Schritt 1010 weitergegangen wird, wo die derzeit berechnete DTNFR zu FRMIN gemacht wird. Als Nächstes wird im Schritt 1011 eine Verringerungsflagge XMNFR gesetzt, die anzeigt, dass DTNFR abnimmt (XMNFR = „1"). Als Nächstes wird zu Schritt 1012 weitergegangen.
  • Im Schritt 1012 wird beurteilt, ob die derzeit berechnete DTNFR kleiner als FRMAX ist, und ob die Erhöhungsflagge XMXFR gesetzt ist. Bei DTNFR ≥ FRMAX oder wenn die Erhöhungsflagge XMXFR eingezogen ist (XMXFR = „0"), wird zu Schritt 1016 gesprungen, während bei DTNFR < FRMAX und gesetzter XMXFR zu Schritt 1013 weitergegangen wird, wo FRMAX zu dem maximalen Wert FRMAX gemacht wird, bei dem DTNFR zunimmt und dann abnimmt. Das bedeutet, dass in der vorangehenden Unterbrechungsroutine XMXFR gesetzt ist, also DTNFR zunimmt. In der laufenden Unterbrechungsroutine ist andererseits DTNFR < FRMAX, also DTNFR nimmt ab. Daher wird zu Schritt 1013 weitergegangen, wenn DTNFR von einer Zunahme zu einer Abnahme wechselt. Als Nächstes wird im Schritt 1014 die derzeit berechnete DTNFR zum Anfangswert FRMIN gemacht. Als Nächstes wird im Schritt 1015 die Erhöhungsflagge XMXFR eingezogen. Als Nächstes wird zu Schritt 1016 weitergegangen.
  • Im Schritt 1016 wird beurteilt, ob die derzeit berechnete DTNFR grösser als FRMIN ist und ob die Verringerungsflagge XMXFR gesetzt ist oder nicht. Bei DTNFR > FRMIN oder eingezogener Verringerungsflagge XMNFR (XMNFR = „0") wird die Unterbrechungsroutine beendet. Bei DTNFR > FRMIN und gesetzter XMNFR wird zu Schritt 1017 weitergegangen, wo FRMIN zum minimalen Wert FRMIN gemacht wird, bei dem DTNFR abnimmt und dann zunimmt. Das bedeutet, dass in der vorherigen Unterbrechungsroutine XMNFR eingezogen ist, also DTNFR abnimmt, während in der derzeitigen Unterbrechungsroutine DTNFR > FRMIN, also DTNFR zunimmt. Daher wird zu Schritt 1017 weitergegangen, wenn DTNFR von einer Abnahme zu einer Zunahme wechselt. Als Nächstes wird im Schritt 1018 die derzeit berechnete DTNFR zum Anfangswert von FRMAX gemacht. Als Nächstes wird im Schritt 1019 die Verringerungsflagge XMNFR eingezogen.
  • Als Nächstes wird im Schritt 1020 der minimale Wert TMNFR vom maximalen Wert TMXFR abgezogen, um die Amplitude SINPFR von DTNFR zu berechnen. Daher wird SINPFR jedesmal b erechnet, wenn der maximale Wert TMXFR und der minimale Wert TMNFR aktualisiert werden. Als Nächstes wird im Schritt 1021 beurteilt, ob SINPFR grösser als der Richtwert A1 ist oder nicht. Bei SINPFR > A1 wird zu Schritt 1022 weitergegangen, wo die Spitzenwertflagge XSINPFR, die gesetzt wird, wenn SINPFR grösser als A1 ist (XSINPFR = „1"), eingezogen wird (XSINPFR = „0"). Wenn die Spitzenwertflagge XSINPFR eingezogen ist, wird zu Schritt 1023 weitergegangen, wo der Zählwert CPK eines freilaufenden Zählers gelöscht wird (CPK = „0"), dann wird im Schritt 1024 XSINPFR gesetzt. Wenn im Gegensatz hierzu im Schritt 1022 XSINPFR gesetzt ist, wird zu Schritt 1024 gesprungen. Das bedeutet, dass in der vorherigen Unterbrechungsroutine XSINPFR eingezogen ist, wenn zu Schritt 1023 weitergegangen wird, also SINPFR ≤ A1, während in der laufenden Unterbrechungsroutine SINPFR > A1. Das bedeutet, dass der Zählwert CPK jedesmal gelöscht wird, wenn ein Spitzenwert von DTNFR erzeugt wird, so dass CPK die Zeit anzeigt, die verflossen ist, seit ein Spitzenwert von DTNFR erzeugt wurde.
  • Andererseits wird zu Schritt 1025 weitergegangen, wo XSINPFR eingezogen wird, wenn im Schritt 1021 SINPFR ≤ A1.
  • Als Nächstes wird eine Erläuterung der in 42 bis 44 gezeigten Unterbrechungsroutine gegeben. Es sei bemerkt, dass diese Unterbrechungsroutine jedesmal ausgeführt wird, wenn der Drehzahlgeber 48 einen Ausgangsimpuls erzeugt.
  • Auf 42 bis 44 Bezug nehmend, wird zuerst im Schritt 1100 beurteilt, ob vier Ausgangsimpulse des Drehzahlgebers 48 erzeugt worden sind oder nicht. Wenn keine vier Ausgangsimpulse erzeugt worden sind, wird die Unterbrechungsroutine beendet, während zu Schritt 1101 weitergegangen wird, wenn vier Ausgangsimpulse erzeugt worden sind.
  • Im Schritt 1101 wird die Zeit NRRj berechnet, die zwischen dem Zeitpunkt, zu dem der vier Impulse zurückliegende Ausgangsimpuls erzeugt wurde, und dem Zeitpunkt, zu dem der derzeitige Ausgangsimpuls erzeugt wird, verflossen ist. Als Nächstes wird im Schritt 1102 die Zeit TNRRj (= NRRj + NRRj–1 + NRRj–2 + NRRj–3) berechnet, die die Hinterräder 45 brauchten, um sich bis zu diesem Zeitpunkt um 360° zu drehen. Als Nächstes wird im Schritt 1103 NRRj–2 zu NRRj–3, NRRj–1 zu NRRj–2 und NRRj zu NRRj–1 gemacht. Als Nächstes wird im Schritt 1104 die vorher berechnete, verflossene Zeit TNRRj–1 von der derzeit berechneten, verflossenen Zeit TNRRj abgezogen, um die Differenz DTNRR der verflossenen Zeiten zu berechnen. Als Nächstes wird im Schritt 1105 TNRRj zu TNRRj–1 gemacht.
  • Als Nächstes wird im Schritt 1106 beurteilt, ob die derzeit berechnete DTNRR grösser als RRMAX ist oder nicht. Bei DTNRR < RRMAX wird zu Schritt 1109 gesprungen, während bei DTNRR ≥ RRMAX zu Schritt 1107 weitergegangen wird, wo die derzeit berechnete DTNRR zu RRMAX gemacht wird. Als Nächstes wird im Schritt 1108 die Erhöhungsflagge XMXRR gesetzt, die anzeigt, dass DTNRR zunimmt (XMXRR – „1"). Als Nächstes wird zu Schritt 1109 weitergegangen. Im Schritt 1109 wird beurteilt, ob die derzeit berechnete DTNRR kleiner als RRMIN ist oder nicht. Bei DTNRR > RRMIN wird zu Schritt 1112 gesprungen, während bei DTNRR ≤ RRMIN zu Schritt 1110 weitergegangen wird, wo die derzeit berechnete DTNRR zu RRMIN gemacht wird. Als Nächstes wird im Schritt 1111 die Verringerungsflagge XMNRR gesetzt, die anzeigt, dass DTNRR abnimmt (XMNRR = „1"). Als Nächstes wird zu Schritt 1112 weitergegangen.
  • Im Schritt 1112 wird beurteilt, ob die derzeit berechnete DTNRR kleiner als RRMAX ist, und ob die Erhöhungsflagge XMXRR gesetzt ist. Bei DTNRR ≥ RRMAX oder wenn die Erhöhungsflagge XMXRR eingezogen ist (XMXRR = „0"), wird zu Schritt 1116 gesprungen, während bei DTNRR < RRMAX und gesetzter XMXRR zu Schritt 1013 weitergegangen wird, wo RRMAX zu dem maximalen Wert RRMAX gemacht wird, bei dem DTNRR zunimmt und dann abnimmt. Das bedeutet, dass in der vorangehenden Unterbrechungsroutine XMXRR gesetzt ist, also DTNRR zunimmt, während in der laufenden Unterbrechungsroutine DTNRR < RRMAX, also DTNRR abnimmt. Entsprechend wird zu Schritt 1113 weitergegangen, wenn DTNRR von einer Zunahme zu einer Ab nahme wechselt. Als Nächstes wird im Schritt 1114 die derzeit berechnete DTNRR zum Anfangswert von RRMIN gemacht. Als Nächstes wird im Schritt 1115 die Erhöhungsflagge XMXRR eingezogen. Als Nächstes wird zu Schritt 1116 weitergegangen.
  • Im Schritt 1116 wird beurteilt, ob die derzeit berechnete DTNRR grösser als RRMIN ist und ob die Verringerungsflagge XMNRR gesetzt ist. Bei DTNRR > RRMIN oder eingezogener Verringerungsflagge XMNRR (XMNRR = „0") wird die Unterbrechungsroutine beendet. Bei DTNRR > RRMIN und gesetzter XMNRR wird zu Schritt 1117 weitergegangen, wo RRMIN zu dem minimalen Wert RRMIN gemacht wird, bei dem DTNRR abnimmt und dann zunimmt. Das bedeutet, dass in der vorherigen Unterbrechungsroutine XMNRR eingezogen ist, also DTNRR abnimmt, während in der laufenden Unterbrechungsroutine DTNRR > RRMIN, also DTNRR zunimmt. Daher wird zu Schritt 1117 weitergegangen, wenn DTNRR von einer Abnahme zu einer Zunahme wechselt. Als Nächstes wird im Schritt 1118 die derzeit berechnete DTNRR zum Anfangswert von RRMAX gemacht. Als Nächstes wird im Schritt 1119 die Verringerungsflagge XMNRR eingezogen.
  • Als Nächstes wird im Schritt 1120 der minimale Wert TMNRR vom maximalen Wert TMXRR abgezogen, um die Amplitude SINPRR von DTNRR zu berechnen. Als Nächstes wird im Schritt 1021 die angenommene verflossene Zeit TSPK aus der folgenden Gleichung berechnet: TSPK = K0·WB/SPD.
  • Als Nächstes wird im Schritt 1122 beurteilt, ob SINPRR grösser als der Richtwert A1 ist. Bei SINPRR > A1 wird zu Schritt 1123 weitergegangen, wo beurteilt wird, ob die Spitzenwertflagge XSINPRR, die gesetzt wird, wenn SINPRR grösser als A1 ist (XSINPRR = „1"), eingezogen ist (XSINPRR = „0"). Wenn die Spitzenwertflagge XSINPRR eingezogen ist, wird zu Schritt 1124 weitergegangen, wo beurteilt wird, ob der absolute Wert (|CPK – TSPK|) der Differenz zwischen dem derzeitigen Zählwert CPK, der die tatsächlich verflossene Zeit anzeigt, und der angenommenen verflossenen Zeit TSPK kleiner als der kleine Richtwert A2 ist. Bei |CPK – TSPK| < A2, also wenn CPK und TSPK im Wesentlichen gleich sind, wird zu Schritt 1125 weitergegangen, wo die Beurteilungsflagge XAKUKRO3 für unebene Strassen, die gesetzt wird, wenn geurteilt wird, dass das Fahrzeug über eine einzelne Vertiefung oder einen einzelnen Buckel fährt (XAKURO3 = „1"), gesetzt wird. Als Nächstes wird zu Schritt 1126 weitergegangen, wo XSINPRR gesetzt wird. Wenn im Gegenteil dazu im Schritt 1124 |CPK – TSPK| ≥ A2 ist, wird zu Schritt 1127 weitergegangen, wo XAKURO3 eingezogen wird (XAKURO3 = „0"), dann wird zu Schritt 1126 weitergegangen.
  • Das bedeutet, dass, wenn zu Schritt 1124 weitergegangen wird, XSINPRR in der vorherigen Unterbrechungsroutine XSINPRR eingezogen ist, also XSINPRR ≤ A1, während in der laufenden Unterbrechungsroutine SINPRR > A1. Das bedeutet, dass bei jedem Auftreten eines Spitzenwertes von DTNRR beurteilt wird, ob das Fahrzeug über eine einzelne Vertiefung oder einen einzelnen Buckel fährt.
  • Wenn andererseits im Schritt 1122 SINPRR ≤ A1 ist, wird zu Schritt 1128 weitergegangen, wo XAKURO3 eingezogen wird, dann wird zu Schritt 1129 weitergegangen, wo XSINPRR eingezogen wird.
  • Das bedeutet, dass in der zur Zeit t1 ausgeführten Unterbrechungsroutine, wie in 45 gezeigt, XSINPFR gesetzt wird, CPK gelöscht wird und die Inkrementierung von null begonnen wird, wenn SINPFR grösser als A1 wird. Als Nächstes wird in der zur Zeit t2 ausgeführten Unterbrechungsroutine XSINPRR gesetzt, wenn SINPRR grösser als A1 wird. Zu diesem Zeitpunkt erfolgt eine Beurteilung über unebene Strassen.
  • 46 zeigt die wiederholt ausgeführte Hauptroutine. In dieser Hauptroutine wird zuerst die Routine für eine Berechnung des Wertes der Drehmomentschwankungen (Schritt 600) ausgeführt. Diese Routine ist in 47 und 48 gezeigt. Als Nächstes wird die Routine für eine Berechnung des Rückkopplungs-Korrekturfaktors für die Magergrenze, FLLFB (Schritt 700), ausgeführt. Diese Routine ist in 49 gezeigt. Als Nächstes wird, wenn der vorbestimmte Kurbelwinkel erreicht ist, die Routine für eine Berechnung der Kraftstoffeinspritzzeit (Schritt 800) ausgeführt. Diese Routine ist in 51 gezeigt. Als Nächstes werden die anderen Routinen (Schritt 900) ausgeführt.
  • Als Nächstes wird die Routine für eine Berechnung des Wertes der Drehmomentschwankungen, die in 47 und 48 gezeigt ist, erklärt.
  • Auf 47 und 48 Bezug nehmend, wird zuerst im Schritt 601 beurteilt, ob die Anforderungsflagge für kumulative Addition, XDLN(i), die anzeigt, dass der Betrag der Drehmomentschwankungen, DLN(i), kumulativ addiert werden sollte, gesetzt ist (XDLN(i) = „1") oder nicht. Wenn die Anforderungsflagge für kumulative Addition, XDLN(i), nicht gesetzt ist, wird zu Schritt 609 gesprungen, aber wenn die Anforderungsflagge für kumulative Addition, XDLN(i), gesetzt ist, wird zu Schritt 602 weiter gegangen. Im Schritt 602 wird die Anforderungsflagge für kumulative Addition, XDLN(i), eingezogen. Als Nächstes wird im Schritt 603 beurteilt, ob die drei Beurteilungsflaggen XAKURO1, XAKURO2 und XAKURO3 für unebene Strassen alle eingezogen worden sind. Wenn die Beurteilungsflaggen XAKURO1, XAKURO2 und XAKURO3 für unebene Strassen alle eingezogen worden sind, also geurteilt wurde, dass das Fahrzeug auf einer unebenen Strasse fährt, wird zu Schritt 604 weitergegangen. Als Nächstes wird im Schritt 604 der Betrag der Drehmomentschwankungen, DLN(i), zum kumulativen Wert DLNI(i) des Betrages der Drehmomentschwankungen addiert. Als Nächstes wird im Schritt 605 der kumulative Zählwert, CDLNI(i), um genau 1 inkrementiert. Als Nächstes wird zu Schritt 608 weitergegangen. Wenn im Gegensatz hierzu eine der Beurteilungsflaggen XAKURO1, XAKURO2 und XAKURO3 für unebene Strassen gesetzt ist, also wenn geurteilt wurde, dass das Fahrzeug auf einer unebenen Strasse fährt, wird zu Schritt 606 weitergegangen, wo der kumulative Wert DLNI(i) der Drehmomentschwankungen gelöscht wird, dann wird zu Schritt 607 weitergegangen, wo der kumulative Zählwert CDLNI(i) gelöscht wird. Als Nächstes wird zu Schritt 608 weitergegangen.
  • Das heisst zum Beispiel, wenn im Schritt 601 die Anforderungsflagge für kumulative Addition, CDLN(1), für den Zylinder Nr. 1 gesetzt ist, dass diese Flagge XDLN(1) im Schritt 602 eingezogen wird. Zu diesem Zeitpunkt wird, wenn die Beurteilungsflaggen XAKURO1, XAKURO2 und XAKURO3 für unebene Strassen alle eingezogen worden sind, der kumulative Wert DLNI(1) des Betrages der Drehmomentschwankungen im Schritt 604 berechnet, und der kumulative Zählwert CDLNI(1) wird im Schritt 605 um genau 1 inkrementiert. Wenn eine der Beurteilungsflaggen für unebene Strassen gesetzt ist, wird DLNI(1) im Schritt 606 gelöscht, und CDLNI(1) wird im Schritt 607 gelöscht.
  • Als Nächstes wird im Schritt 608 beurteilt, ob der kumulative Zählwert CDLNI(i) „16" geworden ist oder nicht. Wenn CDLNI(i) nicht „16" ist, wird zu Schritt 612 gesprungen, aber wenn CDLNI(i) „16" wird, wird zu Schritt 609 weitergegangen, wo der Wert DLNISM(i) der Drehmomentschwankungen der Zylinder mit der folgenden Gleichung berechnet wird: DLNISM(i) = DLNISM(i) + {DLNI(i) – DLNISM(i)}/4.
  • Als Nächstes wird im Schritt 610 der kumulative Wert DLNI(i) des Betrages der Drehmomentschwankungen für die Zylinder gelöscht. Als Nächstes wird im Schritt 611 der kumulative Zählwert CDLNI(i) zurückgesetzt.
  • Das heisst, dass der Wert der Differenz {DLNI(i) – DLNISM(i)}, multipliziert mit ¼, zum Betrag der Drehmomentschwankungen, DLNISM(i), addiert wird, wenn zwischen dem berechneten kumulativen Wert der Drehmomentschwankungen, DLNI(i), und dem vorher verwendeten Betrag der Drehmomentschwankungen, DLNISM(i), eine Differenz besteht. Daher wird zum Beispiel in Schritt 609 der Wert der Drehmomentschwankungen, DLNISM(1), berechnet, wenn der kumulative Zählwert, CDLNI(1), für den Zylinder Nr. 1 (#1) „16" wird.
  • Als Nächstes wird im Schritt 612 beurteilt, ob der Zählwert CDLNIX, der mit der in 24 gezeigten Routine berechnet wurde, „16" geworden ist oder nicht. Wenn CDLNIX nicht „16" ist, wird der Verarbeitungszyklus beendet, aber wenn CDLNIX „16" wird, wird zu Schritt 613 weitergegangen, wo der Mittelwert DLNISM (= {DLNISM(1) + DLNISM(2) + DLNISM(3) + DLNISM(4)}/4) der Mittelwerte der Drehmomentschwankungen DLNISM(i) der Zylinder berechnet wird. Als Nächstes wird im Schritt 614 der Zählwert CDLNIX gelöscht. Auf diese Weise wird der Wert DLNISM, der den Betrag der Drehmomentschwankungen des Motors ausdrückt, berechnet.
  • Es sei bemerkt, dass die Routine vom Schritt 608 zum Schritt 612 springt, also nicht zu Schritt 609 weitergegangen wird, wenn der kumulative Zählwert CDLNI(i) im Schritt 607 gelöscht wird. In anderen Worten wird, wenn eine der Beurteilungsflaggen XAKURO1, XAKURO2 und XAKURO3 für unebene Strassen gesetzt ist, der Wert der Drehmomentschwankungen, DLNISM(i), der Zylinder nicht aktualisiert. Daher wird in diesem Fall der Wert der Drehmomentschwankungen, DLNISM(i), bei dem bislang verwendeten Wert der Drehmomentschwankungen, DLNISM(i), gehalten. Folglich wird, wenn die Beurteilungsflaggen für unebene Strassen einmal alle wieder eingezogen sind, im Schritt 609 die Aktualisierung des Wertes der Drehmomentschwankungen, DLNISM(i), auf der Basis des bis zu diesem Zeitpunkt gehaltenen Wertes der Drehmomentschwankungen wieder aufgenommen, also auf der Basis des Wertes der Drehmomentschwankungen, DLNISM(i), der gerade vor dem Setzen einer der Beurteilungsflaggen für unebene Strassen vorlag. Wenn dies getan wird, dann ist es möglich, den Wert der Drehmomentschwankungen, DLNISM(i), der berechnet wird, wenn die Aktualisierung des Wertes der Drehmomentschwankungen, DLNISM(i), wieder aufgenommen wird, genau zu berechnen. Daher ist es zu diesem Zeitpunkt möglich, den Durchschnittswert, DLNISM, der Drehmomentschwankungen genau zu berechnen.
  • Weiter wird, wie oben erklärt, der Zählwert CDLNIX alle 720° des Kurbelwinkels um genau 1 inkrementiert. Wenn der Zählwert CDLNIX „16" geworden ist, sind die kumulativen Zählwerte CDLNI(1), CDLNI(2), CDLNI(3) und CDLNI(4) für alle Zylinder bereits „16" geworden, sofern nicht für einen der Zylinder die Berechnung des Drehmoments verboten ist. Daher wird in diesem Falle der Wert der Drehmomentschwankungen, DLNISM(i), für alle Zylinder berechnet. Wenn andererseits zum Beispiel die Berechnung des Betrages der Drehmomentschwankungen für den Zylinder Nr. 1 (#1) verboten ist, so wird der neue kumulative Wert DLNI(1) des Betrages der Drehmomentschwankungen für den Zylinder Nr. 1 (# 1) nicht berechnet, wenn der Zählwert CDLNIX „16" geworden ist und nur der kumulative Zählwert CDLNI(1) des Zylinders Nr. 1 (#1) nicht „ 16" wird. In diesem Falle wird daher nur für den Zylinder Nr. 1 (#1) der früher berechnete Wert der Drehmomentschwankungen, DLNISM(1), verwendet, wenn der Mittelwert, DLNISM, der Drehmomentschwankungen im Schritt 610 ermittelt wird.
  • Als Nächstes wird unter Bezugnahme auf 49 die Routine für eine Berechnung von FLLFB erklärt.
  • Auf 49 Bezug nehmend, wird zuerst im Schritt 701 beurteilt, ob die Bedingungen für eine Aktualisierung des Rückkopplungs-Korrekturfaktors für die Magergrenze, FLLFB, erfüllt sind oder nicht. Zur Zeit des Warmlaufens eines Motors oder wenn sich der Betriebszustand des Motors nicht in der durch die gestrichelten Linien in 5 eingeschlossenen Lernzone befindet, wird zum Beispiel geurteilt, dass die Bedingungen für eine Aktualisierung nicht erfüllt sind, während zu anderen Zeiten geurteilt wird, dass die Bedingungen für eine Aktualisierung erfüllt sind. Wenn die Bedingungen für eine Aktualisierung nicht erfüllt sind, wird der Verarbeitungszyklus beendet, aber wenn die Bedingungen für eine Aktualisierung erfüllt sind, wird zu Schritt 702 weitergegangen.
  • Im Schritt 702 wird aus der Motorbelastung Q/N und der Motordrehzahl N auf der Basis der in 26B gezeigten Karte der Zielwert der Drehmomentschwankungen LVLLFB berechnet. Als Nächstes werden in den Schritten 703 und 704 auf der Basis der Beurteilungswerte DH(n) und DL(n) für den Schwankungsbetrag in Übereinstimmung mit dem Zielwert der Drehmomentschwankungen, LVLLFB, die in den folgenden Gleichungen gezeigten Niveaus der Drehmomentschwankungen, LVLH(n) und LVLL(n), berechnet: LVLH(n) = LVLLFB + DH(n), LVLL(n) = LVLLFB + DL(n).
  • Hier werden die Beurteilungswerte DH(n) und DL(n) für den Schwankungsbetrag im Voraus bestimmt, wie in 50A gezeigt. Wie aus 50A zu verstehen ist, werden nämlich drei positive Werte für DH(n) festgelegt, die zueinander in der Beziehung stehen: DH(3) > DH(2) > DH(1). Im Weiteren nehmen diese Werte von DH(1), DH(2) und DH(3) allmählich zu, während der Zielwert, LVLLFB, der Drehmomentschwankungen grösser wird. Andererseits werden drei negative Werte für DL(n) festgelegt, die zueinander in der Beziehung stehen: DL(1) > DL(2) > DL(3). Im Weiteren nehmen die absoluten Werte dieser DL(1), DL(2) und DL(3) allmählich zu, während der Zielwert, LVLLFB, der Drehmomentschwankungen grösser wird.
  • Es sei jedoch angenommen, dass der im Schritt 702 berechnete Zielwert, LVLLFB, der Drehmomentschwankungen der durch die gestrichelte Linie gezeigte Wert ist. In diesem Falle werden im Schritt 703 die Werte von DH(1), DH(2) und DH(3) auf der gestrichelten Linie, vermehrt um den Zielwert, LVLLFB, der Drehmomentschwankungen, zu den Niveaus der Drehmomentschwankungen LVLH(1), LVLH(2) und LVLH(3) gemacht, und im Schritt 704 werden die Werte von DL(1), DL(2) und DL(3) auf der gestrichelten Linie, vermehrt um den Zielwert, LVLLFB, der Drehmomentschwankungen, zu den Niveaus der Drehmomentschwankungen LVLL(1), LVLL(2) und LVLL(3) gemacht.
  • Andererseits werden die Rückkopplungs-Korrekturwerte +a1, +a2, +a3, +a4, –b1, –b2, –b3 und –b4 im Voraus für die Bereiche zwischen den Niveaus der Drehmomentschwankungen LVLH(n) und LVLL(n) bestimmt, wie in 50B gezeigt. Zum Beispiel wird für den Bereich, in dem das Niveau der Drehmomentschwankungen zwischen LVLH(1) und LVLH(2) liegt, +a2 der Rückkopplungs-Korrekturwert. Diese Rückkopplungs-Korrekturwerte sind +a4 > +a3 > +a2 > +a1 und –b1 > –b2 > –b3 > –b4. Die in 50B gezeigten Rückkopplungs-Korrekturwerte +a1, +a2, +a3, +a4, –b1, –b2, –b3 und –b4 sind in 50A in den entsprechenden Bereichen ersichtlich.
  • Wenn die Niveaus der Drehmomentschwankungen LVLH(n) und LVLL(n) in den Schritten 703 und 704 berechnet worden sind, wird zu Schritt 705 weitergegangen, wo beurteilt wird, ob der Mittelwert, DLNISM, der Drehmomentschwankungen, der in der in 47 und 48 gezeigten Routine zur Berechnung des Wertes der Drehmomentschwankungen berechnet wurde, zwischen den in 50B gezeigten Niveaus LVLH(n) und LVLL(n) der Drehmomentschwankungen liegt oder nicht. Als Nächstes wird im Schritt 706 der entsprechende Rückkopplungs-Korrekturwert DLFB berechnet. Wenn zum Beispiel das Zielniveau, LVLLFB, der Schwankungen der durch die gestrichelte Linie in 50A gezeigte Wert ist und der berechnete Mittelwert, DLNISM, der Drehmomentschwankungen zwischen LVLH(1) und LVLH(2) in 50B liegt, das heisst, wenn die Abweichung des Mittelwertes, DLNISM, der Drehmomentschwankungen vom Zielniveau, LVLLFB, der Schwankungen zwischen DH(1) und DH(2) auf der gestrichelten Linie in 50A liegt, dann wird +a2 der Rückkopplungs-Konekturwert DLFB.
  • Als Nächstes wird im Schritt 707 bestimmt, welcher Rückkopplungs-Korrekturfaktor für die Magergrenze aus welcher der in 24 gezeigten Lernzonen der Rückkopplungs-Korrekturfaktor für die Magergrenze FLLFBiNT10 ist, der auf der Basis des Durchschnittswertes, NAVE, der Motordrehzahl und des Durchschnittswertes, PMAVE, der angesaugten Luftmenge, Q, die im Schritt 409 der in 24 gezeigten Verarbeitungsroutine von CDLNIX gefunden wurden, zu aktualisieren ist. Als Nächstes wird im Schritt 708 der Rückkopplungs-Korrekturfaktor für die Magergrenze, FLLFBij, der im Schritt 707 bestimmt wurde, um den Rückkopplungs-Konekturwert DLFB erhöht.
  • Wie oben erklärt, bedeutet das, dass der Rückkopplungs-Korrekturfactor für die Magergrenze, FLLFBij, um +a2 erhöht wird, wenn zum Beispiel DLNISM > LVLLFB und LVLH(1) < DLNISM < LVLH(2). Im Ergebnis wird das Kraftstoff-Luft-Verhältnis grösser, daher verringert sich der Betrag der Drehmomentschwankungen jedes Zylinders. Andererseits wird der Rückkopplungs-Korrekturfaktor für die Magergrenze, FLLFBij, um –b2 erhöht, wenn DLNISM < LVLLFB und LVLL(1) > DLNISM > LVLL(2). Im Ergebnis wird das Kraftstoff-Luft-Verhältnis klein, daher erhöht sich der Betrag der Drehmomentschwankungen der Zylinder. Auf diese Weise wird bei magerem Betrieb das Kraftstoff-Luft-Verhältnis so gesteuert, dass der Mittelwert, DLNISM, der Drehmomentschwankungen aller Zylinder der Zielwert der Drehmomentschwankungen, LVLLFB, wird.
  • Es sei bemerkt, dass im Schritt 407 die DLNISM(i) aller Zylinder zu LVLLFB gemacht werden und daher auch der Mittelwert, DLNISM, der Drehmomentschwankungen zum Zielwert, LVLLFB, der Drehmomentschwankungen gemacht wird, wenn die Bedingungen für eine Berechnung des Wertes der Drehmomentschwankungen in der in 24 gezeigten Routine nicht erfüllt sind. Daher wird dann der Rückkopplungs-Korrekturfaktor für die Magergrenze, FLLFBij, nicht aktualisiert.
  • Wenn andererseits, wie oben erläutert, die Beurteilungsflaggen XAKURO1, XAKURO2 und XAKURO3 alle wieder einmal eingezogen worden sind, also wieder einmal geurteilt wird, dass das Fahrzeug nicht auf einer unebenen Strasse fährt, wird der Durchschnittswert der Drehmomentschwankungen, DLNISM, auf den Wert von DLNISM gesetzt, der galt, gerade ehe geurteilt wurde, dass das Fahrzeug auf einer unebenen Strasse fährt, und daher wird der Rückkopplungs-Korrekturwert, DLFB, auf der Basis dieses DLNISM berechnet, wenn die Beurteilungsflaggen für unebene Strassen alle wieder eingezogen sind. Im Ergebnis ist es bei Wiederaufnahme der Korrektur des Kraftstoff-Luft-Verhältnisses möglich, den Rückkopplungs-Korrekturwert, DLFB, genau zu berechnen, und daher ist es auch möglich, den Durchschnittswert der Drehmomentschwankungen genau auf den Zielwert der Drehmomentschwankungen zu steuern.
  • Als Nächstes wird unter Bezugnahme auf 51 die Routine für eine Berechnung der Kraftstoffeinspritzzeit erklärt.
  • Auf 51 Bezug nehmend, wird zuerst im Schritt 801 aus der in 2 gezeigten Karte die Kraftstoffeinspritz-Basiszeit TP berechnet. Als Nächstes wird im Schritt 802 beurteilt, ob der Betriebszustand so ist, dass ein magerer Betrieb durchgeführt werden sollte oder nicht. Wenn der Betriebszustand so ist, dass ein magerer Betrieb durchgeführt werden sollte, wird zu Schritt 803 weitergegangen, wo der Rückkopplungs-Korrekturfaktor für ein stöchiometrisches Kraftstoff-Luft-Verhältnis, FAF, auf einen Wert von 1,0 festgelegt wird. Als Nächstes wird im Schritt 804 der Mager-Korrekturfaktor FLEAN aus d er in 4 gezeigten Karte berechnet, dann wird im Schritt 805 der Rückkopplungs-Korrekturfaktor für die Magergrenze, FLLFB, aus der in 5 gezeigten Karte abgelesen. Als Nächstes wird in Schritt 809 die Kraftstoffeinspritzzeit TAU aus der folgenden Gleichung berechnet: TAU = TP·FLEAN·FLLFB·FAF + TAUV.
  • Wenn im Gegenteil im Schritt 802 geurteilt wird, dass der Betriebszustand nicht so ist, dass ein magerer Betrieb durchgeführt werden sollte, dass also das Kraftstoff-Luft-Verhältnis zu einem stöchiometrischen Verhältnis gemacht werden sollte, wird zu Schritt 806 weitergegangen, wo der Mager-Korrekturfaktor FLEAN auf einen Wert von 1,0 festgelegt wird, und sodann wird im Schritt 807 der Rückkopplungs-Korrekturfaktor für die Magergrenze, FLLFB, auf einen Wert von 1,0 festgelegt. Als Nächstes wird im Schritt 808 der Rückkopplungs-Korrekturfaktor für ein stöchiometrisches Kraftstoff-Luft-Verhältnis, FAF, auf der Basis des Ausgangssignals des Kraftstoff-Luft-Verhältnisfühlers 17 so gesteuert, dass das Kraftstoff-Luft-Verhältnis stöchiometrisch wird. Als Nächstes wird zu Schritt 809 weitergegangen, wo die Kraftstoffeinspritzzeit TAU berechnet wird.
  • In den bis hierher diskutierten Ausführungsformen wird die Drehzahl des Läufers 37 des Drehmomentwandlers 32 ermittelt, um die Fahrzeuggeschwindigkeit zu ermitteln. Um die Fahrzeuggeschwindigkeit zu ermitteln, ist es aber möglich, die Drehzahl der Kraftabgabewelle 31 des automatischen Getriebes 30 oder der Achsen oder Antriebsräder, die sich mit dieser drehen, zu ermitteln.
  • Des Weiteren wird, gleichviel ob der Verschlussmechanismus ein- oder ausgeschaltet ist, in den bis hierher diskutierten Ausführungsformen auf der Basis der Drehzahlschwankungen des Läufers 37 beurteilt, ob das Fahrzeug auf einer unebenen Strasse fährt. Wenn der Verschlussmechanismus eingeschaltet ist, also wenn die Kurbelwelle und die Eingangswelle 36 des automatischen Getriebes 30 direkt verbunden sind, wird die auf die Antriebsräder wirkende äussere Kraft direkt auf die Kurbelwelle übertragen. Daher kann, wenn der Verschlussmechanismus eingeschaltet ist, auch auf der Basis der Winkelgeschwindigkeit der Kurbelwelle geurteilt werden, ob das Fahrzeug auf einer unebenen Strasse fährt. Wenn aber das Fahrzeug auf einer Strasse mit kleinen Vertiefungen und Buckeln fährt, wird die Periode der Schwankungen äusserst kurz. In diesem Falle ist es daher nötig, die Winkelgeschwindigkeit der Kurbelwelle über einen Kurbelwinkel von etwa 360° zu bestimmen.
  • Um die wahren Schwankungen der Kraftabgabe oder der Drehmomente des Motors zu finden, ist es weiter möglich, die Torsionsschwingungen des Motorantriebsmechanismus oder der Kurbelwelle selbst oder aber die Auswirkungen der Veränderlichkeit in den Abständen zwischen den Aussenzähnen des Läufers 14 auf beliebige Art zu korrigieren.
  • Auf diese Weise wird es gemäss der vorliegenden Erfindung möglich, eine irrtümliche Korrektur des Kraftstoff-Luft-Verhältnisses zu verhindern, wenn das Fahrzeug auf einer unebenen Strasse fährt.
  • Während die Erfindung unter Bezugnahme auf konkrete Ausführungsformen beschrieben worden ist, die zur Veranschaulichung gewählt wurden, sollte es offensichtlich sein, dass Fachleute zahlreiche Modifikationen daran anbringen könnten.

Claims (12)

  1. Verfahren zur Steuerung eines Kraftstoff-Luft-Verhältnisses in einem Motor, die Schritte umfassend: Festlegen eines ersten Kurbelwinkelbereichs in einer Kurbelwinkelzone zwischen dem Ende eines Verdichtungshubs und dem Anfang eines Ausdehnungshubs, Erfassen einer ersten Winkelgeschwindigkeit der Kurbelwelle im ersten Kurbelwinkelbereich, Festlegen eines zweiten Kurbelwinkelbereichs in einer Kurbelwinkelzone in der Mitte des Ausdehnungshubs, und zwar einen vorbestimmten Kurbelwinkel vom ersten Kurbelwinkelbereich entfernt, Erfassen einer zweiten Winkelgeschwindigkeit der Kurbelwelle im zweiten Kurbelwinkelbereich, Ermitteln der Kraftabgabeschwankungen der Zylinder auf der Basis der ersten Winkelgeschwindigkeit und der zweiten Winkelgeschwindigkeit, Beurteilen, ob das Fahrzeug auf einer unebenen Strasse fährt, und Verbieten der Korrektur des Kraftstoff-Luft-Verhältnisses auf der Basis der Kraftabgabeschwankungen, wenn geurteilt wird, dass das Fahrzeug auf einer unebenen Strasse fährt; dadurch gekennzeichnet, dass der Beurteilungsschritt umfasst, aus der Amplitude und der Periode der Schwankungen der Fahrzeuggeschwindigkeit zu beurteilen, ob das Fahrzeug auf einer unebenen Strasse fährt, wobei geurteilt wird, dass das Fahrzeug auf einer unebenen Strasse fährt, wenn die Amplitude der Schwankungen der Fahrzeuggeschwindigkeit grösser als ein im Voraus festgelegter erster Richtwert ist und die Periode der Schwankungen der Fahrzeuggeschwindigkeit kleiner als ein im Voraus festgelegter zweiter Richtwert ist, wobei der zweite Richtwert kleiner angesetzt wird als die Periode der Schwankungen der Fahrzeuggeschwindigkeit, die durch die Schwankungen des Verbrennungsdrucks verursacht werden.
  2. Verfahren, wie in Anspruch 1 dargelegt, dadurch gekennzeichnet, dass der erste Richtwert desto kleiner ist, je höher die Motordrehzahl ist.
  3. Verfahren, wie in Anspruch 1 dargelegt, dadurch gekennzeichnet, dass der erste Richtwert kleiner ist, wenn ein Verschlussmechanismus eines Drehmomentwandlers eines automatischen Getriebes eingeschaltet ist, als wenn der Verschlussmechanismus ausgeschaltet ist.
  4. Verfahren, wie in Anspruch 1 dargelegt, dadurch gekennzeichnet, dass die Zeit, während der die Korrektur des Kraftstoff-Luft-Verhältnisses auf der Basis der Kraftabgabeschwankungen verboten ist, desto länger wird, je grösser die Amplitude der Schwankungen der Fahrzeuggeschwindigkeit ist.
  5. Verfahren, wie in Anspruch 1 dargelegt, dadurch gekennzeichnet, dass aus der Amplitude der Drehzahlschwankungen eines Läufers eines Drehmomentwandlers eines automatischen Getriebes und der Periode der Drehzahlschwankungen des Läufers beurteilt wird, ob das Fahrzeug auf einer unebenen Strasse fährt.
  6. Verfahren, wie in Anspruch 1 dargelegt, dadurch gekennzeichnet, dass der Durchschnittswert der Kraftabgabeschwankungen ermittelt und eine Korrektur des Kraftstoff-Luft-Verhältnisses auf der Basis des Durchschnittswertes verboten wird, wenn geurteilt wird, dass das Fahrzeug auf einer unebenen Strasse fährt.
  7. Verfahren, wie in Anspruch 6 dargelegt, dadurch gekennzeichnet, dass das Kraftstoff-Luft-Verhältnis auf der Basis des Durchschnittswertes der Kraftabgabeschwankungen korrigiert wird, wenn geurteilt wird, dass das Fahrzeug nicht auf einer unebenen Strasse fährt.
  8. Verfahren, wie in Anspruch 7 dargelegt, dadurch gekennzeichnet, dass der Durchschnittswert der Kraftabgabeschwankungen gespeichert wird, wenn geurteilt wird, dass das Fahrzeug nicht auf einer unebenen Strasse fährt, und die Korrektur des Kraftstoff-Luft-Verhältnisses auf der Basis des gespeicherten Durchschnittswertes der Kraftabgabeschwankungen wieder aufgenommen wird, wenn das Verbot der Korrektur des Kraftstoff-Luft-Verhältnisses aufgehoben wird, weil geurteilt wird, dass das Fahrzeug nicht auf einer unebenen Strasse fährt.
  9. Verfahren, wie in Anspruch 7 dargelegt, dadurch gekennzeichnet, dass das Kraftstoff-Luft-Verhältnis so korrigiert wird, dass sich der Durchschnittswert der Kraftabgabeschwankungen innerhalb eines im Voraus festgelegten Bereichs befindet.
  10. Verfahren, wie in Anspruch 1 dargelegt, dadurch gekennzeichnet, dass der Betrag der Schwankungen des abgegebenen Drehmoments des Motors aus der ersten Winkelgeschwindigkeit und der zweiten Winkelgeschwindigkeit ermittelt wird und eine Korrektur des Kraftstoff-Luft-Verhältnisses auf der Basis des Betrages der Schwankungen des abgegebenen Drehmoments verboten wird, wenn geurteilt wird, dass das Fahrzeug auf einer unebenen Strasse fährt.
  11. Verfahren, wie in Anspruch 1 dargelegt, dadurch gekennzeichnet, dass Verbrennung in einem ersten Zylinder und dann in einem zweiten Zylinder ausgeführt wird, der Betrag der Änderung zwischen der ersten Winkelgeschwindigkeit zum Zeitpunkt einer früheren Verbrennung und der ersten Winkelgeschwindigkeit zum Zeitpunkt einer nächsten Verbrennung für den ersten Zylinder ermittelt wird, der Betrag der Änderung z wischen der ersten Winkelgeschwindigkeit zum Zeitpunkt einer früheren Verbrennung und der ersten Winkelgeschwindigkeit zum Zeitpunkt einer nächsten Verbrennung für den zweiten Zylinder ermittelt wird, auf der Basis des Betrages der Änderung der ersten Winkelgeschwindigkeit des ersten Zylinders, des Betrages der Änderung der ersten Winkelgeschwindigkeit des zweiten Zylinders und der zweiten Winkelgeschwindigkeit zum Zeitpunkt der vorherigen Verbrennung im ersten Zylinder eine angenommene zweite Winkelgeschwindigkeit zum Zeitpunkt der nächsten Verbrennung im ersten Zylinder unter der Annahme ermittelt wird, dass die Kraftabgabe des ersten Zylinders nicht schwankt, und die Kraftabgabeschwankungen des ersten Zylinders auf der Basis der tatsächlichen zweiten Winkelgeschwindigkeit zum Zeitpunkt der nächsten Verbrennung im ersten Zylinder und der angenommenen zweiten Winkelgeschwindigkeit ermittelt werden.
  12. Verfahren, wie in Anspruch 11 dargelegt, dadurch gekennzeichnet, dass der Betrag der Schwankungen des abgegebenen Drehmoments des ersten Zylinders aus der Differenz zwischen einem Quadrat der tatsächlichen zweiten Winkelgeschwindigkeit und einem Quadrat der angenommenen zweiten Winkelgeschwindigkeit ermittelt wird, ein Betrag der Schwankungen des abgegebenen Drehmoments für jeden Zylinder ermittelt wird, der Betrag der Schwankungen des abgegebenen Drehmoments des Motors aus dem Betrag der Schwankungen des abgegebenen Drehmoments der Zylinder ermittelt wird und eine Korrektur des Kraftstoff-Luft-Verhältnisses auf der Basis der Beträge der Schwankungen des abgegebenen Drehmoments des Motors verboten wird, wenn geurteilt wird, dass das Fahrzeug auf einer unebenen Strasse fährt.
DE69730578T 1996-12-19 1997-12-17 Verfahren zur Steuerung des Luft-Kraftstoffverhältnisses in einer Brennkraftmaschine Expired - Lifetime DE69730578T2 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP33997496 1996-12-19
JP33997496 1996-12-19
JP24693997A JP3303739B2 (ja) 1996-12-19 1997-09-11 内燃機関の空燃比制御方法
JP24693997 1997-09-11

Publications (2)

Publication Number Publication Date
DE69730578D1 DE69730578D1 (de) 2004-10-14
DE69730578T2 true DE69730578T2 (de) 2005-02-03

Family

ID=26537986

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69730578T Expired - Lifetime DE69730578T2 (de) 1996-12-19 1997-12-17 Verfahren zur Steuerung des Luft-Kraftstoffverhältnisses in einer Brennkraftmaschine

Country Status (4)

Country Link
US (2) US6155232A (de)
EP (1) EP0849456B1 (de)
JP (1) JP3303739B2 (de)
DE (1) DE69730578T2 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07189795A (ja) * 1993-12-28 1995-07-28 Hitachi Ltd 自動車の制御装置及び制御方法
JP3216577B2 (ja) * 1997-07-22 2001-10-09 トヨタ自動車株式会社 内燃機関の空燃比制御方法
JP2000352347A (ja) * 1999-06-09 2000-12-19 Suzuki Motor Corp エンジン制御装置
KR100404773B1 (ko) * 2000-03-21 2003-11-07 도요다 지도샤 가부시끼가이샤 전자구동밸브를 가지는 내연기관
DE10231951A1 (de) * 2001-07-16 2003-04-24 Denso Corp Steuervorrichtung für eine Verbrennungskraftmaschine
JP4170345B2 (ja) * 2006-01-31 2008-10-22 三菱電機株式会社 内燃機関の高圧燃料ポンプ制御装置
JP4314250B2 (ja) * 2006-05-23 2009-08-12 トヨタ自動車株式会社 車両用の路面判定装置
JP5402982B2 (ja) * 2011-05-12 2014-01-29 トヨタ自動車株式会社 内燃機関の異常判定装置
CN104136755B (zh) * 2012-03-28 2016-10-12 丰田自动车株式会社 恶劣道路判定装置
US10731582B2 (en) * 2016-11-16 2020-08-04 GM Global Technology Operations LLC Determination of engine parameter based on determining a metric over three or more cylinder combustion cycles
JP7392672B2 (ja) * 2021-01-29 2023-12-06 トヨタ自動車株式会社 内燃機関の失火検出装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60596A (ja) * 1983-06-16 1985-01-05 株式会社デンソー 路面状態識別装置
JPH0733809B2 (ja) * 1984-06-27 1995-04-12 株式会社日本自動車部品総合研究所 内燃機関の出力変動測定方法
DE4013943A1 (de) * 1989-05-01 1990-11-08 Toyota Motor Co Ltd Verfahren und einrichtung zum unterdruecken von ruckschwingungen eines kraftfahrzeugs
US5269178A (en) * 1990-12-10 1993-12-14 Sensortech, L.P. Engine misfire, knock of roughness detection method and apparatus
JPH07107426B2 (ja) * 1990-12-20 1995-11-15 三菱自動車工業株式会社 自動変速装置の直結制御方法
US5277287A (en) * 1990-12-20 1994-01-11 Mitsubishi Jidosha Kogyo Kabushiki Kaisha Direct-coupling clutch control method for an automatic transmission
GB9200920D0 (en) * 1992-01-16 1992-03-11 Lucas Ind Plc Method of and an apparatus for misfire and rough road detection
DE4215938C2 (de) * 1992-05-14 2002-10-31 Bosch Gmbh Robert Aussetzererkennungssystem bei einem Verbrennungsmotor
EP0610508B1 (de) * 1992-06-09 1996-10-16 Mitsubishi Jidosha Kogyo Kabushiki Kaisha Verfahren zur erkennung von fehlzündungen durch drehzahländerung der kurbelwelle
JPH06249026A (ja) * 1993-02-23 1994-09-06 Unisia Jecs Corp 車両用内燃機関の空燃比制御装置
JPH0733809A (ja) * 1993-07-16 1995-02-03 Toyo Ink Mfg Co Ltd 光開始剤組成物および被覆組成物
JP3381179B2 (ja) * 1993-10-05 2003-02-24 株式会社日立製作所 車両状態検出装置及び検出方法
JP2864976B2 (ja) * 1993-12-22 1999-03-08 三菱自動車工業株式会社 内燃機関の燃焼状態制御装置
WO1995017592A1 (fr) * 1993-12-21 1995-06-29 Mitsubishi Jidosha Kogyo Kabushiki Kaisha Procede d'evaluation de l'etat de combustion d'un moteur a combustion interne et procede et appareil de regulation de l'etat de combustion d'un moteur a combustion interne
JPH07189795A (ja) * 1993-12-28 1995-07-28 Hitachi Ltd 自動車の制御装置及び制御方法
JP3085079B2 (ja) * 1994-03-31 2000-09-04 三菱自動車工業株式会社 希薄燃焼内燃機関を搭載した車両における悪路判定方法
WO1995027130A1 (fr) * 1994-03-31 1995-10-12 Mitsubishi Jidosha Kogyo Kabushiki Kaisha Procede d'evaluation de terrain difficile pour vehicule a moteur a combustion interne
JP2964869B2 (ja) * 1994-04-14 1999-10-18 三菱自動車工業株式会社 希薄燃焼内燃機関を搭載した車両における悪路対応方法
JP2874549B2 (ja) * 1994-03-31 1999-03-24 三菱自動車工業株式会社 希薄燃焼内燃機関を搭載した車両における悪路対応方法
DE69725929T2 (de) * 1996-06-04 2004-07-29 Toyota Jidosha K.K., Toyota Verfahren zur Steuerung des Luft-Kraftstoffverhältnisses in einer Brennkraftmaschine

Also Published As

Publication number Publication date
EP0849456A2 (de) 1998-06-24
US6155232A (en) 2000-12-05
DE69730578D1 (de) 2004-10-14
EP0849456B1 (de) 2004-09-08
JPH10231748A (ja) 1998-09-02
EP0849456A3 (de) 1999-11-10
JP3303739B2 (ja) 2002-07-22
US6135089A (en) 2000-10-24

Similar Documents

Publication Publication Date Title
DE69730578T2 (de) Verfahren zur Steuerung des Luft-Kraftstoffverhältnisses in einer Brennkraftmaschine
DE19721070B4 (de) Verfahren zum Steuern der Verbrennung in den einzelnen Zylindern einer Brennkr aftmaschine
DE19515534B4 (de) Steuervorrichtung für automatisches Getriebe und ein Steuerverfahren hierfür
DE10308627B4 (de) Fehlzündungserfassungssystem für Fahrzeug-Mehrzylinder-Verbrennungskraftmaschine
EP0140065B1 (de) Elektronische Einrichtung zur Steuerung der Kraftstoffzumessung einer Brennkraftmaschine
DE69204134T2 (de) Steuerungssystem des Luft-Kraftstoffverhältnisses für Verbrennungsmotoren.
DE2840793C3 (de) Verfahren und Einrichtung zum Bestimmen der von einer Brennkraftmaschine angesaugten Luftmenge
DE69822985T2 (de) Motordrehmoment-Steuerungssystem
DE102012200472B4 (de) Luft-Kraftstoff-Verhältnis-Schätz-/Detektiervorrichtung
EP0489059A1 (de) Verfahren und vorrichtung zur zylinderselektiven überwachung des energieumsatzes bei einer mehrzylinder-brennkraft-maschine.
EP0156820A1 (de) Verfahren und schaltungsvorrichtung zur ermittlung des verbrauchsoptimalen getriebeganges eines kraftfahrzeugantriebes.
EP1468182B1 (de) Verfahren und vorrichtung zur temperaturbestimmung des kraftstoffs in einem speicher-einspritzsystem
DE102018107566A1 (de) Vibrationsunterdrückungsvorrichtung eines fahrzeugs
DE69031546T2 (de) Verfahren und Vorrichtung zur Steuerung des Zündzeitpunktes bei einer inneren Brennkraftmaschine
DE69205304T2 (de) Vorrichtung zur Bestimmung der Höhenlage und diese verwendende Motorregelung.
DE69729056T2 (de) Verfahren zur Detektion von Ausgangsfluktuationen bei Verbrennungsmotoren
WO2001023735A1 (de) Verbrennungsaussetzererkennungsverfahren
DE4021886A1 (de) Kraftstoff-einspritzsystem fuer eine brennkraftmaschine
DE4013943C2 (de)
DE3805823C3 (de) Elektronische Steuerung für einen Verbrennungsmotor
DE19941171B4 (de) Verfahren zum Bestimmen des von einer Brennkraftmaschine aufgebrachten Moments
DE69625451T2 (de) Verfahren und vorrichtung zum messen des drehmomentes eines thermischen internen verbrennungsmotors
DE19581053B4 (de) Verfahren und Vorrichtung für eine adaptive Kraftstoffzumessung bei Zweitaktmotoren
EP0502849B1 (de) Elektronisches steuersystem für die kraftstoffzumessung bei einer brennkraftmaschine
DE19513307C2 (de) Vorrichtung und Verfahren zum Bestimmen der Charakteristik eines Kraftstoffs, der einem Fahrzeugmotor mit innerer Verbrennung zugeführt wird

Legal Events

Date Code Title Description
8364 No opposition during term of opposition