DE69817952T2 - Method for controlling the air-fuel ratio in an internal combustion engine - Google Patents

Method for controlling the air-fuel ratio in an internal combustion engine Download PDF

Info

Publication number
DE69817952T2
DE69817952T2 DE1998617952 DE69817952T DE69817952T2 DE 69817952 T2 DE69817952 T2 DE 69817952T2 DE 1998617952 DE1998617952 DE 1998617952 DE 69817952 T DE69817952 T DE 69817952T DE 69817952 T2 DE69817952 T2 DE 69817952T2
Authority
DE
Germany
Prior art keywords
amount
cylinder
torque fluctuation
angular velocity
fluctuation
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 - Fee Related
Application number
DE1998617952
Other languages
German (de)
Other versions
DE69817952D1 (en
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
Application granted granted Critical
Publication of DE69817952D1 publication Critical patent/DE69817952D1/en
Publication of DE69817952T2 publication Critical patent/DE69817952T2/en
Anticipated expiration legal-status Critical
Expired - Fee Related 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/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
    • 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/1473Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor characterised by the regulation method
    • F02D41/1475Regulating the air fuel ratio at a value other than stoichiometry
    • 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

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 ERFINDUNGBACKGROUND THE INVENTION

1. Gebiet der Erfindung1. area the invention

Die vorliegende Erfindung bezieht sich auf eine Methode zur Steuerung eines Luft-Kraftstoff-Verhältnisses eines Motors.The present invention relates on a method of controlling an air-fuel ratio of an engine.

2. Stand der Technik2. State of the technology

Dem Fachmann bekannt ist ein Verbrennungsmotor, der in der Zeit, die die Kurbelwelle benötigt, um sich von 30° auf 60° hinter dem oberen Totpunkt des in diesem Zeitraum stattfindenden Verdichtungshubes zu drehen, eine erste Winkelgeschwindigkeit der Kurbelwelle ermittelt, in der Zeit, die die Kurbelwelle benötigt, um sich von 90° auf 120° hinter dem oberen Totpunkt des in diesem Zeitraum stattfindenden Verdichtungshubes zu drehen, eine zweite Winkelgeschwindigkeit der Kurbelwelle ermittelt, aus dem Quadrat dieser ersten Winkelgeschwindigkeit und dem Quadrat dieser zweiten Winkelgeschwindigkeit das von einem Zylinder erzeugte Drehmoment ermittelt und aus dem Betrag der Schwankung dieses erzeugten Drehmoments den Betrag der Drehmomentschwankung berechnet. (siehe US-Patent Nr. 4.691.286).An internal combustion engine is known to the person skilled in the art, the time it takes the crankshaft to move from 30 ° to 60 ° behind the top dead center of the compression stroke taking place during this period to rotate, a first angular velocity of the crankshaft is determined, in the time it takes the crankshaft to move from 90 ° to 120 ° behind the top dead center of the compression stroke taking place during this period to rotate, a second angular velocity of the crankshaft is determined, from the square of this first angular velocity and the square this second angular velocity that generated by a cylinder Torque determined and generated from the amount of fluctuation Torque calculated the amount of torque fluctuation. (please refer U.S. Patent No. 4,691,286).

Wenn also die Verbrennung in einem Zylinder abläuft, steigt die Winkelgeschwindigkeit der Kurbelwelle durch den Verbrennungsdruck von einer ersten Winkelgeschwindigkeit ωa auf eine zweite Winkelgeschwindigkeit ωb an. Wenn das Rotationsträgheitsmoment des Motors zu diesem Zeitpunkt I ist, steigt die kinetische Energie durch den Verbrennungsdruck von (1/2)*Iωa2 auf (1/2)*Iωb2. Vereinfacht gesagt, bewirkt der Anstieg der kinetischen Energie (1/2)*I*(ωb2 – ωa2), dass ein Drehmoment erzeugt wird, so dass das erzeugte Drehmoment proportional zu (ωb2 – ωa2) wird. Daher ergibt sich das erzeugte Drehmoment aus der Differenz zwischen dem Quadrat der ersten Winkelgeschwindigkeit ωa und dem Quadrat der zweiten Winkelgeschwindigkeit ωb, weshalb bei dem oben erwähnten Verbrennungsmotor der Betrag der Drehmomentschwankung aus dem auf diese Weise ermittelten erzeugten Drehmoment berechnet wird.If the combustion takes place in a cylinder, the angular velocity of the crankshaft increases from the first angular velocity ωa to the second angular velocity ωb due to the combustion pressure. If the rotational moment of inertia of the engine is I at this point in time, the kinetic energy increases from (1/2) * Iωa 2 to (1/2) * Iωb 2 due to the combustion pressure. Simply put, the increase in kinetic energy (1/2) * I * (ωb 2 - ωa 2 ) causes torque to be generated so that the torque generated becomes proportional to (ωb 2 - ωa 2 ). Therefore, the generated torque results from the difference between the square of the first angular velocity ωa and the square of the second angular velocity ωb, which is why, in the internal combustion engine mentioned above, the amount of torque fluctuation is calculated from the generated torque determined in this way.

Wenn man jedoch den Schwankungsbetrag des Drehmomentes auf diese Weise berechnen kann, ist es auch möglich, auf der Basis dieses Schwankungswertes des Drehmomentes das Luft-Kraftstoff-Verhältnis zur Magergrenze zu steuern. Wenn sich also das Luft-Kraftstoff-Verhältnis auf der fetten Seite der Magergrenze befindet, ist der Betrag der Drehmomentschwankung gering, wogegen sich der Betrag der Drehmomentschwankung erhöht, wenn sich das Luft-Kraftstoff-Verhältnis auf der mageren Seite der Magergrenze befindet, so dass es möglich ist, das Luft-Kraftstoff-Verhältnis zur Magergrenze zu steuern, indem man das-Luft-Kraftstoff-Verhältnis auf der Grundlage der Drehmomentschwankung so korrigiert, dass die Drehmomentschwankung einen Wert innerhalb der vorbestimmten Bandbreite annimmt. Bei einer hohen Motordrehzahl wird die von der Kurbelwelle benötigte Zeit, um sich z. B. um einen Kurbelwinkel von 30° zu drehen, allerdings sehr kurz. Das führt dazu, dass die ermittelte Zeit einen Messfehler enthält und folglich auch der Wert der Drehmomentschwankung, der auf der Basis der ersten Winkelgeschwindigkeit ωa und der zweiten Winkelgeschwindigkeit ωb berechnet wird, fehlerhaft wird. Dieser Fehler vergrößert sich mit zunehmender Motordrehzahl, weshalb auch ein Verhältnis zwischen dem Fehler und dem Betrag der auf der Basis der Winkelgeschwindigkeiten berechneten Drehmomentschwankung bei steigender Motordrehzahl zunimmt. Wenn jedoch das Fehlerverhältnis zunimmt, sinkt der berechnete Betrag der Drehmomentschwankung auch bei Anreicherung des Luft-Kraftstoff-Verhältnisses nicht weit genug, um den Verbrennungsdruck zu senken, und steigt dieser Betrag selbst dann nicht genügend, wenn das Luft-Kraftstoff-Verhältnis zur Erhöhung des Verbrennungsdrucks magerer gemacht wurde. Dabei besteht das Problem darin, dass sich bei steigender Motordrehzahl das Verhältnis der Änderung des berechneten Betrages der Drehmomentschwankung zur Änderung des Luft-Kraftstoff-Verhältnisses verringert und folglich die Steuerbarkeit des Luft-Kraftstoff-Verhältnisses zur Magergrenze abnimmt.However, if one considers the fluctuation amount of the Torque can be calculated in this way, it is also possible to the air-fuel ratio to the basis of this fluctuation value of the torque Control lean limit. So if the air-fuel ratio on the fat side of the lean limit is the amount of torque fluctuation low, whereas the amount of torque fluctuation increases when the air-fuel ratio is located on the lean side of the lean limit so that it is possible the air-fuel ratio to control the lean limit by looking at the air-fuel ratio corrected the basis of the torque fluctuation so that the torque fluctuation assumes a value within the predetermined bandwidth. At a high engine speed, the time required by the crankshaft to z. B. to turn a crank angle of 30 °, but very much short. Leading to the fact that the determined time contains a measurement error and consequently also the value of the torque fluctuation based on the first Angular velocity ωa and the second angular velocity ωb is calculated, incorrect becomes. This error increases with increasing engine speed, which is why a ratio between the error and the amount based on the angular velocities calculated torque fluctuation increases with increasing engine speed. However, if the error ratio increases, the calculated amount of torque fluctuation also decreases if the air-fuel ratio is not increased enough, to lower the combustion pressure, and that amount increases itself then not enough if the air-fuel ratio to increase of the combustion pressure has been made leaner. Here is what Problem in that with increasing engine speed the ratio of the change the calculated amount of torque fluctuation for change of the air-fuel ratio reduces and therefore the controllability of the air-fuel ratio decreases to the lean limit.

ZUSAMMENFASSUNG DER ERFINDUNGSUMMARY THE INVENTION

Ein Ziel der vorliegenden Erfindung besteht darin, ein Verfahren zur Steuerung eines Luft-Kraftstoff-Verhältnisses zur Verfügung zu stellen, das gewährleistet, dass sich das Luft-Kraftstoff-Verhältnis unabhängig von der Motordrehzahl steuern lässt.An object of the present invention is a method of controlling an air-fuel ratio to disposal to ensure that that the air-fuel ratio is independent of the engine speed can be controlled.

Erfindungsgemäß wird ein Verfahren zur Steuerung eines Luft-Kraftstoff-Verhältnisses in einem Motor zur Verfügung gestellt, das folgende Schritte umfasst: Einstellen einer ersten Kurbelwinkelspannweite in einem Kurbelwinkelbereich vom Ende eines Verdichtungshubes bis zum Beginn eines Expansionshubes, Ermitteln einer ersten Winkelgeschwindigkeit der Kurbelwelle in dieser ersten Kurbelwinkelspannweite, Einstellen einer zweiten Kurbelwinkelspannweite in einem Kurbelwinkelbereich in der Mitte des Expansionshubs, einen vorbestimmten Kurbelwinkel von der ersten Kurbelwinkelspannweite entfernt, Ermitteln einer zweiten Winkelgeschwindigkeit der Kurbelwelle in der zweiten Kurbelwinkelspannweite, Herausfinden der Leistungs-Grundschwankung der Zylinder auf der Basis der ersten Winkelgeschwindigkeit und der zweiten Winkelgeschwindigkeit, Herausfinden eines Sollwerts auf der Basis der Motordrehzahl, Herausfinden der Leistungsschwankung der Zylinder durch Korrektur der Leistungs-Grundschwankung der Zylinder auf der Basis des Sollwertes und Korrigieren des Luft-Kraftstoff-Verhältnisses auf der Basis dieser Leistungsschwankung.According to the invention, a method for controlling an air-fuel ratio in an engine is provided, which comprises the following steps: setting a first crank angle span in a crank angle range from the end of a compression stroke to the beginning of an expansion stroke, determining a first angular velocity of the crankshaft in this first Crank angle span, setting a second crank angle span in a crank angle range in the middle of the expansion stroke, a predetermined crank angle away from the first crank angle span, determining a second angular velocity of the crankshaft in the second crank angle span, finding out the basic power fluctuation of the cylinders on the basis of the first angular velocity and the second angular velocity, finding a target value based on the engine speed, finding out the fluctuation in performance of the cylinders by correcting the fundamental fluctuation in performance the cylinder on the Based on the setpoint and correcting the air-fuel ratio based on this variation in performance.

KURZBESCHREIBUNG DER ZEICHNUNGENSUMMARY THE DRAWINGS

Der volle Umfang der vorliegenden Erfindung wird besser verständlich durch die folgende Beschreibung von bevorzugten Ausführungsformen der Erfindung und die beigefügten Zeichnungen, wobei:The full scope of the present Invention is easier to understand by the following description of preferred embodiments of the invention and the accompanying Drawings, where:

1 eine Gesamtansicht eines Verbrennungsmotors ist; 1 is an overall view of an internal combustion engine;

2 das Schema der Basiskraftstoffeinspritzzeit zeigt; 2 shows the schematic of the basic fuel injection time;

3 den Betrag der erzeugten NOx und der Drehmomentschwankung darstellt; 3 represents the amount of NOx generated and the torque fluctuation;

4 das Schema eines Magerkorrekturkoeffizienten zeigt; 4 shows the scheme of a lean correction coefficient;

5 das Schema eines Magergrenzen-Rückführkorrekturkoeffizienten zeigt; 5 shows the scheme of a lean limit feedback correction coefficient;

6A und 6B Zeitdiagramme der Änderungen in den verstrichenen Zeiten Ta(i) und Tb(i) eines 30°-Kurbelwinkels sind; 6A and 6B FIG. 10 are time charts of changes in the elapsed times Ta (i) and Tb (i) of a 30 ° crank angle;

7 ein Zeitdiagramm der Änderungen in der verstrichenen Zeit Ta(i) eines 30°-Kurbelwinkels darstellt; 7 FIG. 4 shows a time chart of the changes in the elapsed time Ta (i) of a 30 ° crank angle;

8 ein Zeitdiagramm der Änderungen in den verstrichenen Zeiten Ta(i) und Tb(i) eines 30°-Kurbelwinkels ist; 8th FIG. 12 is a time chart of changes in the elapsed times Ta (i) and Tb (i) of a 30 ° crank angle;

9 ein Zeitdiagramm der Änderungen in den verstrichenen Zeiten Ta(i) und Tb(i) eines 30°-Kurbelwinkels ist; 9 FIG. 12 is a time chart of changes in the elapsed times Ta (i) and Tb (i) of a 30 ° crank angle;

10 ein Zeitdiagramm der Änderungen in der verstrichenen Zeit Ta(i) eines 30°-Kurbelwinkels ist; 10 Fig. 10 is a time chart of changes in the elapsed time Ta (i) of a 30 ° crank angle;

11 das Verhältnis zwischen den Differenzen der verstrichenen Zeiten DTa(i) und Kb(i) zeigt; 11 shows the relationship between the differences of the elapsed times DTa (i) and Kb (i);

12A und 12B die Änderung des Betrages der Drehmomentschwankung zur Änderung im Luft-Kraftstoff-Verhältnis darstellen; 12A and 12B represent the change in the amount of torque fluctuation to the change in the air-fuel ratio;

13 das Schema des Sollwertes KDLN zeigt; 13 shows the scheme of the setpoint KDLN;

14 das Verhältnis zwischen dem wahren Wert der Drehmomentschwankung und dem berechneten Wert der Drehmomentschwankung darstellt; 14 represents the relationship between the true value of the torque fluctuation and the calculated value of the torque fluctuation;

15 ein Zeitdiagramm der Änderungen in der verstrichenen Zeit Ta(i) während des Verzögerungsvorgangs ist; 16 ein Zeitdiagramm der Differenzänderungen in den verstrichenen Zeiten Dta(i) ist; 15 Figure 3 is a time chart of changes in the elapsed time Ta (i) during the deceleration process; 16 Fig. 3 is a time chart of the difference changes in the elapsed times Dta (i);

17 ein Ablaufdiagramm der Unterbrechungsroutine ist; 17 is a flowchart of the interrupt routine;

18 und 19 Ablaufdiagramme zur Differenzberechnung der verstrichenen Zeiten Dta(i) und der verstrichenen Zeit Tb (i) sind; 18 and 19 Are flow charts for calculating the difference between the elapsed times Dta (i) and the elapsed time Tb (i);

20 ein Ablaufdiagramm zur Berechnung von KTa(i) ist; 20 Figure 4 is a flowchart for calculating KTa (i);

21 ein Ablaufdiagramm zur Berechnung von KTb(i) ist; 21 Figure 4 is a flowchart for calculating KTb (i);

22 bis 24 Ablaufdiagramme zur Zulässigkeitsprüfung für die Berechnung des Betrages der Drehmomentschwankung sind; 22 to 24 Are flowcharts for the admissibility check for calculating the amount of the torque fluctuation;

25 ein Zeitdiagramm der Änderungen in der Differenz der verstrichenen Zeiten Dta(i) und der Änderungen in den Flags XMXREC und XMNREC ist; 25 FIG. 12 is a time chart of the changes in the difference in the elapsed times Dta (i) and the changes in the flags XMXREC and XMNREC;

26 ein Zeitdiagramm zur Berechnung des Betrags der Drehmomentschwankung ist; 26 Fig. 10 is a time chart for calculating the amount of torque fluctuation;

27 ein Ablaufdiagramm zur Bearbeitung des Zählers CDLNIX ist; 27 Figure 14 is a flowchart for processing the CDLNIX counter;

28 die Zeitangaben zur Berechnung verschiedener Werte zeigt; 28 shows the times for the calculation of different values;

29A und 29B einen Zielwert der Drehmomentschwankung darstellen; 29A and 29B represent a target value of the torque fluctuation;

30A und 30B Schätzwerte für die Drehmomentschwankung DH(n) und DL(n) und die Höhen der Drehmomentschwankung LVLH(n) und LVLL(n) zeigen; 30A and 30B Show estimates of the torque fluctuation DH (n) and DL (n) and the magnitude of the torque fluctuation LVLH (n) and LVLL (n);

31 ein Ablaufdiagramm einer Hauptroutine ist; 31 is a flowchart of a main routine;

32 und 33 Ablaufdiagramme zur Berechnung des Drehmomentschwankungswerts sind; 32 and 33 Are flow charts for calculating the torque fluctuation value;

34 ein Ablaufdiagramm zur Berechnung eines Magergrenzen-Rückführkorrekturkoeffizienten ist und 34 FIG. 4 is a flowchart for calculating a lean limit feedback correction coefficient; and

35 ein Ablaufdiagramm zur Berechnung der Kraftstoffeinspritzzeit ist. 35 is a flowchart for calculating the fuel injection time.

BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMENDESCRIPTION OF THE PREFERRED EMBODIMENTS

1 zeigt den Motor, der mit vier Zylindern ausgestattet ist: Zylinder Nr. 1 (#1), Zylinder Nr. 2 (#2), Zylinder Nr. 3 (#3) und Zylinder Nr. 4 (#4). Die Zylinder Nr. 1, Nr. 2, Nr. 3 und Nr. 4 sind jeweils über die entsprechenden Ansaugrohre 2 mit einem Ausdehnungsbehälter 3 verbunden. In den Ansaugrohren 2 sind Kraftstoffeinspritzer 4 vorgesehen, die den Kraftstoff in die entsprechenden Einlassöffnungen einspritzen. Der Ausdehnungsbehälter ist über einen Einlasskanal 5 und einen Luftmengenmesser 6 mit einem Luftfilter 7 verbunden. Im Einlasskanal 5 ist ein Drosselventil 8 angebracht. Weiterhin sind die Zylinder Nr. 1, Nr. 2, Nr. 3 und Nr. 4 über einen Ansaugkrümmer 9 und ein Auspuffrohr 10 mit einem Gehäuse 12 verbunden, das ein NOx-Absorptionsmittel 11 enthält. Das NOx-Absorptionsmittel hat die Aufgabe, das im Auspuffrohr enthaltene NOx zu absorbieren, wenn das Luft-Kraftstoff-Verhältnis mager ist, und das absorbierte NOx abzulassen und abzubauen, wenn das Luft-Kraftstoff-Verhältnis dem Lambda-Punkt entspricht oder fett ist. 1 shows the engine, which is equipped with four cylinders: cylinder No. 1 (# 1), cylinder No. 2 (# 2), cylinder No. 3 (# 3) and cylinder No. 4 (# 4). Cylinders No. 1, No. 2, No. 3 and No. 4 are each on the corresponding intake pipes 2 with an expansion tank 3 connected. In the intake pipes 2 are fuel injectors 4 provided that inject the fuel into the corresponding inlet openings. The expansion tank is via an inlet channel 5 and an air flow meter 6 with an air filter 7 connected. In the inlet duct 5 is a throttle valve 8th appropriate. Furthermore, the cylinders No. 1, No. 2, No. 3 and No. 4 are via an intake manifold 9 and an exhaust pipe 10 with a housing 12 connected, which is a NOx absorbent 11 contains. The purpose of the NOx absorbent is to absorb the NOx contained in the exhaust pipe when the air-fuel ratio is lean and to drain and degrade the absorbed NOx when the air-fuel ratio is lambda or rich.

Die elektronische Steuereinheit 20 besteht aus einem Digitalrechner und verfügt über einen ROM (Nur-Lese-Speicher) 22, einen RAM (Schreib-/Lesespeicher) 23, eine CPU (Mikroprozessor) 24, einen mit einer unterbrechungsfreien Stromversorgung verbundenen Backup-RAM 25 (B-RAM), eine Eingangsöffnung 26 und eine Ausgangsöffnung 27, die durch einen bidirektionalen Bus 21 miteinander verbunden sind.The electronic control unit 20 consists of a digital computer and has a ROM (read-only memory) 22 , a RAM (read / write memory) 23 , a CPU (microprocessor) 24 , a backup RAM connected to an uninterruptible power supply 25 (B-RAM), an entrance opening 26 and an exit opening 27 by a bidirectional bus 21 are interconnected.

An die Abtriebswelle 13 des Motors ist ein Rotor 14 mit Außenzähnen angeschlossen. Den Außenzähnen des Rotors 14 gegenüber ist ein Kurbelwinkel-Sensor 15 mit einem elektromagnetischen Abnehmer angeordnet. In der in 1 dargestellten Ausführungsform ist am Umfang des Rotors 14 an jedem 30°-Kurbelwinkel ein Außenzahn ausgeformt und zum Beispiel ein Teil der Außenzähne entfernt, um den oberen Totpunkt des Verdichtungshubs von Zylinder Nr. 1 zu ermitteln. Auf diese Weise erzeugt der Kurbelwinkel-Sensor 15 immer dann einen Ausgabeimpuls, wenn sich die Abtriebswelle 13 um einen Kurbelwinkel von 30° dreht, mit Ausnahme des Abschnitts, in dem die Außenzähne entfernt wurden, d. h. des zahnfreien Abschnitts. Dieser Ausgabeimpuls wird in die Eingangsöffnung 26 geleitet.To the output shaft 13 the motor is a rotor 14 connected with external teeth. The outer teeth of the rotor 14 opposite is a crank angle sensor 15 arranged with an electromagnetic pickup. In the in 1 The embodiment shown is on the circumference of the rotor 14 Form an external tooth at every 30 ° crank angle and, for example, remove part of the external teeth in order to determine the top dead center of the compression stroke of cylinder No. 1. In this way, the crank angle sensor generates 15 always an output pulse when the output shaft 13 rotates by a crank angle of 30 °, except for the section where the external teeth have been removed, ie the toothless section. This output pulse is in the input opening 26 directed.

Der Luftmengenmesser 6 erzeugt eine Ausgangsspannung, die sich proportional zur Ansaugluftmenge verhält. Diese Ausgangsspannung wird durch einen entsprechenden A/D-Konverter 28 in die Eingangsöffnung 26 geleitet. Außerdem ist am brosselventil 8 ein Leerlaufschalter 16 angeschlossen, der ermittelt, wann sich das Drosselventil 8 in der Leerlauf-Öffnungs-Stellung befindet. Das Ausgangssignal dieses Leerlaufschalters 16 wird in die Eingangsöffnung 26 geleitet. Weiterhin befindet sich im Ansaugkrümmer 9 ein Luft-Kraftstoff-Verhältnis-Sensor (O2-Sensor) 17 zur Ermittlung des Luft-Kraftstoff-Verhältnisses. Das Ausgangssignal dieses Luft-Kraftstoff-Verhältnis-Sensors 17 wird über den entsprechenden Analog-Digital-Wandler 28 in die Eingangsöffnung 26 geleitet. Auf der anderen Seite ist die Ausgangsöffnung 27 über die entsprechende Antriebsschaltung 29 mit den Kraftstoffeinspritzern 4 verbunden.The air flow meter 6 generates an output voltage that is proportional to the amount of intake air. This output voltage is fed into the input opening by a corresponding A / D converter 28 26 directed. It is also on the throttle valve 8th an idle switch 16 connected, which determines when the throttle valve 8th is in the idle open position. The output signal of this idle switch 16 is in the entrance opening 26 directed. It is also located in the intake manifold 9 an air-fuel ratio sensor (O2 sensor) 17 to determine the air-fuel ratio. The output signal of this air-fuel ratio sensor 17 is via the corresponding analog-to-digital converter 28 into the entrance opening 26 directed. On the other side is the exit opening 27 via the corresponding drive circuit 29 with the fuel injectors 4 connected.

In dem in 1 dargestellten Verbrennungsmotor wird die Kraftstoffeinspritzzeit TAU nach folgender Formel berechnet: TAU = TP*FLEAN*FLLFB*FAF + TAUV In the in 1 the internal combustion engine shown, the fuel injection time TAU is calculated using the following formula: TAU = TP * FLEAN * FLLFB * FAF + TAUV

Hierbei zeigt TP die Basiskraftstoffeinspritzzeit, FLEAN ist ein Magerkorrekturkoeffizient, FLLFB steht für einen Magergrenzen-Rückführkorrekturkoeffizienten, FAF ist ein stöchiometrischer Luft-Kraftstoff-Verhältnis-Rückführkorrekturkoeffizient und TAUV eine ungültige Einspritzzeit.TP shows the basic fuel injection time, FLEAN is a lean correction coefficient, FLLFB stands for one Lean limit feedback correction coefficients FAF is a stoichiometric Air-fuel ratio feedback correction coefficient and TAUV an invalid Injection time.

Die Basiskraftstoffeinspritzzeit TP zeigt die zur Erzeugung eines stöchiometrischen Luft-Kraftstoff-Verhältnisses erforderliche Einspritzzeit. Die Basiskraftstoffeinspritzzeit TP wird experimentell ermittelt. Diese Basiskraftstoffeinspritzzeit TP wird im Voraus in Form eines Schemas (siehe 2) als Funktion der Motorlast Q/N (Ansaugluftmenge Q/Motordrehzahl N) und der Motordrehzahl N im ROM 22 gespeichert.The base fuel injection time TP shows the injection time required to generate a stoichiometric air-fuel ratio. The basic fuel injection time TP is determined experimentally. This basic fuel injection time TP is set in advance in the form of a scheme (see 2 ) as a function of the engine load Q / N (intake air quantity Q / engine speed N) and the engine speed N in the ROM 22 saved.

Der Magerkorrekturkoeffizient FLEAN ist ein Korrekturkoeffizient, der aus dem Luft-Kraftstoff-Verhältnis ein mageres Luft-Kraftstoff-Verhältnis macht. Dieser Magerkorrekturkoeffizient FLEAN wird im Voraus in Form des Schemas in 4 als Funktion der Motorlast Q/N und der Motordrehzahl N im ROM 22 gespeichert.The lean correction coefficient FLEAN is a correction coefficient that turns the air-fuel ratio into a lean air-fuel ratio. This lean correction coefficient FLEAN is calculated in advance in the form of 4 as a function of engine load Q / N and engine speed N in ROM 22 saved.

Der Magergrenzen-Rückführkorrekturkoeffizient FLLFB ist ein Korrekturkoeffizient, um das Luft-Kraftstoff-Verhältnis auf der Magergrenze zu halten. In dieser Ausführungsform wird erfindungsgemäß der Lernbereich für die Mager-Luft-Kraftstoff-Verhältnis-Rückführregelung für die Ansaugluftmenge Q und die Motordrehzahl N in neun Regionen – wie zum Beispiel in 5 gezeigt – aufgeteilt. Für diese Lernbereiche werden Magergrenzen-Rückführkorrekturkoeffizienten FLLEB11 bis FLLFB33 festgelegt.The lean limit feedback correction coefficient FLLFB is a correction coefficient to keep the air-fuel ratio at the lean limit. In this embodiment, according to the invention, the learning range for the lean air-fuel ratio feedback control for the intake air amount Q and the engine speed N in nine regions - such as in FIG 5 shown - divided. Lean limit feedback correction coefficients FLLEB 11 to FLLFB 33 are defined for these learning areas.

Der Rückführkorrekturkoeffizient für das stöchiometrische Luft-Kraftstoff-Verhältnis FAF ist ein Koeffizient, der das Luft-Kraftstoff-Verhältnis auf dem stöchiometrischen Luft-Kraftstoff-Verhältnis hält. Der Rückführkorrekturkoeffizient für das stöchiometrische Luft-Kraftstoff-Verhältnis FAF wird auf der Basis des Ausgangssignals des Luft-Kraftstoff-Verhältnis-Sensors 17 gesteuert, um das Luft-Kraftstoff-Verhältnis auf dem stöchiometrischen Luft-Kraftstoff-Verhältnis zu halten. Dabei schwankt der Rückführkorrekturkoeffizient für das stöchiometrische Luft-Kraftstoff-Verhältnis FAF merklich um ca. 1,0.The feedback correction coefficient for the stoichiometric air-fuel ratio FAF is a coefficient that keeps the air-fuel ratio at the stoichiometric air-fuel ratio. The feedback correction coefficient for the stoichiometric air-fuel ratio FAF is based on the output signal of the air-fuel ratio sensor 17 controlled to maintain the air-fuel ratio at the stoichiometric air-fuel ratio. The feedback correction coefficient for the stoichiometric air-fuel ratio FAF fluctuates markedly by approximately 1.0.

Der Magerkorrekturkoeffizient FLEAN wird in Übereinstimmung mit dem Betriebszustand des Motors für den Betriebsbereich eingestellt, der in 4 von unterbrochenen Linien umschlossen ist. In diesem Betriebsbereich wird das Luft-Kraftstoff-Verhältnis auf dem mageren Luft-Kraftstoff-Verhältnis gehalten. Im Gegensatz hierzu wird das Luft-Kraftstoff-Verhältnis im Bereich außerhalb des von einer unterbrochenen Linie umschlossenen Abschnittes in 4 auf dem stöchiometrischen Luft-Kraftstoff-Verhältnis gehalten. Wenn das Luft-Kraftstoff-Verhältnis auf dem stöchiometrischen Luft-Kraftstoff-Verhältnis gehalten werden soll, werden der Magerkorrekturkoeffizient FLEAN und der Magergrenzen-Rückführkorrekturkoeffizient FLLFB auf 1,0 festgelegt. Der Rückführkorrekturkoeffizient für das stöchiometrische Luft-Kraftstoff-Verhältnis FAF wird dann auf der Basis des Ausgangssignals des Luft-Kraftstoff-Verhältnis-Sensors 17 gesteuert.The lean correction coefficient FLEAN is set in accordance with the operating state of the engine for the operating range specified in 4 is surrounded by broken lines. In this operating range, the air-fuel ratio is kept at the lean air-fuel ratio. In contrast to this, the air-fuel ratio in the area outside the section enclosed by a broken line in 4 kept at the stoichiometric air-fuel ratio. If the air-fuel ratio is to be kept at the stoichiometric air-fuel ratio, the lean correction coefficient FLEAN and the lean limit feedback correction coefficient FLLFB are set to 1.0. The feedback correction coefficient for the stoichiometric air-fuel ratio FAF is then based on the output signal of the air-fuel ratio sensor 17 controlled.

Wenn andererseits das Luft-Kraftstoff-Verhältnis auf dem mageren Luft-Kraftstoff-Verhältnis gehalten werden soll, wird der Rückführkorrekturkoeffizient für das stöchiometrische Luft-Kraftstoff-Verhältnis FAF auf 1,0 festgelegt, d. h. die Rückführsteuerung auf der Basis des Ausgangssignals des Luft-Kraftstoff-Verhältnis-Sensors 17 wird angehalten, und der Magerkorrekturkoeffizient FLEAN sowie der Magergrenzen-Rückführkorrekturkoeffizient FLLFB werden verwendet, um das Luft-Kraftstoff-Verhältnis zum mageren Luft-Kraftstoff-Verhältnis zu steuern.On the other hand, if the air-fuel ratio is to be kept at the lean air-fuel ratio, the feedback correction coefficient for the stoichiometric air-fuel ratio FAF is set to 1.0, that is, the feedback control based on the output signal of the air-fuel ratio sensor 17 is stopped and the lean correction coefficient FLEAN and the lean limit feedback correction coefficient FLLFB are used to control the air-fuel ratio to the lean air-fuel ratio.

Als Nächstes wird die Magergrenzen-Rückführsteuerung unter Bezugnahme auf 3 erläutert. 3 zeigt das Verhältnis zwischen dem Betrag der Drehmomentschwankung der Motorleistung und der erzeugten Nox-Menge und dem Luft-Kraftstoff-Verhältnis. Je magerer das Luft-Kraftstoff-Verhältnis, desto geringer ist die Kraftstoffverbrauchsrate. Weiter gilt: Je magerer das Luft-Kraftstoff-Verhältnis, desto geringer ist die Menge des erzeugten NOx. Von diesen Punkten aus betrachtet, sollte das Luft-Kraftstoff-Verhältnis so mager wie möglich gehalten werden. Dabei ist jedoch zu beachten, dass die Verbrennung bei Überschreiten eines bestimmten Magerkeitsmaßes des Luft-Kraftstoff-Verhältnisses instabil und somit – wie in 3 gezeigt – der Betrag der Drehmomentschwankung groß wird.Next is the lean limit return guidance control with reference to 3 explained. 3 shows the relationship between the amount of torque fluctuation in engine power and the amount of NOx generated and the air-fuel ratio. The leaner the air-fuel ratio, the lower the fuel consumption rate. Furthermore, the leaner the air-fuel ratio, the lower the amount of NOx generated. From these points, the air-fuel ratio should be kept as lean as possible. It should be noted, however, that the combustion is unstable when a certain leanness ratio of the air-fuel ratio is exceeded and thus - as in 3 shown - the amount of torque fluctuation becomes large.

Daher wird in dieser erfindungsgemäßen Ausführungsform das Luft-Kraftstoff-Verhältnis (wie in 3 gezeigt) in dem Luft-Kraftstoff-Verhältnis-Regelbereich gehalten, in dem die Drehmomentschwankung zu steigen beginnt.Therefore, in this embodiment of the invention, the air-fuel ratio (as in 3 shown) is kept in the air-fuel ratio control range in which the torque fluctuation begins to increase.

Detaillierter heißt das: Der Magerkorrekturkoeffizient FLEAN wird so bestimmt, dass sich das Luft-Kraftstoff-Verhältnis in der Mitte des Luft-Kraftstoff-Verhältnis-Regelbereiches von 3 befindet, wenn der Magergrenzen-Rückführkorrekturkoeffizient FLUB auf 1,0 gebracht wird. Andererseits wird der Magergrenzen-Rückführkorrekturkoeffizient FLLFB je nach dem Betrag der Drehmomentschwankung so gesteuert, dass er sich innerhalb des in 3 dargestellten Drehmomentschwankungs-Regelbereichs befindet. Wenn der Betrag der Drehmomentschwankung größer wird, erhöht sich der Magergrenzen-Rückführkorrekturkoeffizient FLLFB und das Luft-Kraftstoff-Verhältnis verringert sich, wogegen der Magergrenzen-Rückführkorrekturkoeffizient FLLFB kleiner wird, wenn der Betrag der Drehmomentschwankung sinkt, so dass das Luft-Kraftstoff-Verhältnis größer wird. Auf diese Weise wird das Luft-Kraftstoff-Verhältnis so gesteuert, dass es sich in der Mitte des in 3 dargestellten Luft-Kraftstoff-Verhältnis-Regelbereiches bewegt.In more detail, this means that the lean correction coefficient FLEAN is determined so that the air-fuel ratio is in the middle of the air-fuel ratio control range 3 is when the lean limit feedback correction coefficient FLUB is brought to 1.0. On the other hand, the lean limit feedback correction coefficient FLLFB is controlled depending on the amount of torque fluctuation so that it is within the in 3 torque fluctuation control range shown. As the amount of torque fluctuation increases, the lean-limit feedback correction coefficient FLLFB increases and the air-fuel ratio decreases, whereas the lean-limit feedback correction coefficient FLLFB decreases as the amount of torque fluctuation decreases, so that the air-fuel ratio increases becomes. In this way, the air-fuel ratio is controlled to be in the middle of the 3 shown air-fuel ratio control range moves.

Hierbei ist zu beachten, dass der Magergrenzen-Rückführkorrekturkoeffizient FLLFB so eingestellt wird, dass er den Motorbetriebsbereich erfasst, in dem der Magerkorrekturkoeffizient FLEAN eingestellt ist.Please note that the Lean limit feedback correction coefficient FLLFB is set to cover the engine operating range in which the lean correction coefficient FLEAN is set.

Wenn der Betrag der Drehmomentschwankung so gesteuert wird, dass er sich innerhalb des Drehmomentschwankungs-Regelbereichs von 3 befindet, kann ein ausgezeichnetes Fahrverhalten des Fahrzeugs bei gleichzeitiger beträchtlicher Verringerung der Kraftstoffverbrauchsrate und des erzeugten NOx gewährleistet werden. Da auf diese Weise der Betrag der Drehmomentschwankung so gesteuert wird, dass er sich innerhalb des Drehmomentschwankungs-Regelbereiches befindet, muss jedoch der Betrag der Drehmomentschwankung ermittelt werden.When the torque fluctuation amount is controlled to be within the torque fluctuation control range of 3 excellent driving behavior of the vehicle can be ensured while at the same time considerably reducing the fuel consumption rate and the NOx generated. Since the amount of the torque fluctuation is controlled in this way so that it is within the torque fluctuation control range, the amount of the torque fluctuation must be determined.

In der Vergangenheit wurden verschiedene Verfahren zur Berechnung des Betrags der Drehmomentschwankung vorgeschlagen.Various procedures have been used in the past proposed to calculate the amount of torque fluctuation.

Zu den typischen Verfahren gehört eines, bei dem ein Verbrennungsdrucksensor in der Verbrennungskammer angebracht und der Betrag der Drehmomentschwankung auf der Basis des Ausgangssignals dieses Verbrennungsdrucksensors berechnet wird; oder ein weiteres, bei dem – wie eingangs erläutert – der Betrag der Drehmomentschwankung aus der Differenz zwischen dem Quadrat der ersten Winkelgeschwindigkeit ωa und dem Quadrat der zweiten Winkelgeschwindigkeit ωb errechnet wird.Typical procedures include one where a combustion pressure sensor is installed in the combustion chamber and the amount of torque fluctuation based on the output signal this combustion pressure sensor is calculated; or another, in the - how explained at the beginning - the amount the torque fluctuation from the difference between the square the first angular velocity ωa and the square of the second angular velocity ωb becomes.

Wenn ein Verbrennungsdrucksensor verwendet wird, besteht der Vorteil, dass das in dem den Verbrennungsdrucksensor enthaltenden Zylinder erzeugte Drehmoment relativ zuverlässig ermittelt werden kann. Der Nachteil ist aber, dass hierzu der Verbrennungsdrucksensor erforderlich ist. Im Gegensatz hierzu lassen sich die Winkelgeschwindigkeiten ωa und ωa aus dem Ausgangssignal des Kurbelwinkel-Sensors errechnen, der in der Vergangenheit in den Verbrennungsmotor eingebaut wurde. Beim Berechnen des Ausgangsdrehmoments auf der Basis der Winkelgeschwindigkeiten ωa und ωb besteht der Vorteil somit darin, dass man keinen neuen Sensor installieren muss.If a combustion pressure sensor is used, there is the advantage that in the combustion pressure sensor containing cylinder generated relatively reliably determined can be. The disadvantage, however, is that the combustion pressure sensor does this is required. In contrast, the angular velocities ωa and ωa can be derived from the Calculate the output signal of the crank angle sensor in the past was built into the internal combustion engine. When calculating the output torque on the basis of the angular velocities ωa and ωb, there is the advantage in that you don't have to install a new sensor.

In diesem Fall gilt jedoch: Wenn das Motorantriebssystem oder die Kurbelwelle selbst eine Drehschwingung erfährt, besteht das Problem, dass sich das erzeugte Drehmoment nicht mehr genau ermitteln lässt. Klar ist dabei indes, dass – wenn sich dieses Problem lösen ließe – ein Verfahren zur Berechnung des Drehmoments auf der Basis der Winkelgeschwindigkeit, wofür kein neuer Sensor erforderlich ist, bevorzugt wäre.In this case, however, the following applies: if the engine drive system or the crankshaft itself a torsional vibration learns there is the problem that the torque generated is no longer can be determined exactly. However, it is clear that - if solve this problem would be - a procedure to calculate the torque based on the angular velocity, for which no new sensor is required, would be preferred.

In der erfindungsgemäßen Ausführungsform kann daher das erzeugte Drehmoment auf der Basis der Winkelgeschwindigkeiten berechnet und der Betrag der Drehmomentschwankung genau ermittelt werden, selbst wenn das Motorantriebssystem oder die Kurbelwelle selbst Drehschwingungen ausgesetzt ist.In the embodiment according to the invention can hence the torque generated based on the angular velocities calculated and the amount of torque fluctuation can be determined exactly even if the engine drive system or the crankshaft itself Torsional vibrations is exposed.

Es ist zwar möglich, die Leistungsschwankung und die Drehmomentschwankung des Motors zu ermitteln, solange die Winkelgeschwindigkeit der Kurbelwelle als Basis verwendet wird, doch wenn das Motorantriebssystem oder die Kurbelwelle selbst durch eine Drehschwingung beeinträchtigt wird oder das Fahrzeug über eine unebene Straße fährt oder eine Abweichung in den Außenzähnen des Rotors vorliegt, ist es unmöglich, die Leistungsschwankung und die Drehmomentschwankung des Motors exakt zu ermitteln.It is possible that the fluctuation in performance and determine the torque fluctuation of the motor as long as the Angular velocity of the crankshaft is used as the base but if the engine drive system or the crankshaft itself through a torsional vibration is impaired will or the vehicle over an uneven road drives or one Deviation in the external teeth of the Rotor is present, it is impossible the power fluctuation and the torque fluctuation of the engine to be determined exactly.

Daher kommt in dieser erfindungsgemäßen Ausführungsform das neue Verfahren zur Berechnung der Leistungsschwankung und Drehmomentschwankung zum Einsatz, um selbst dann die genaue Bestimmung der Leistungsschwankung und der Drehmomentschwankung des Motors zu ermöglichen, wenn das Motorantriebssystem oder die Kurbelwelle selbst durch eine Drehschwingung beeinträchtigt wird oder das Fahrzeug über eine unebene Straße fährt oder eine Abweichung in den Außenzähnen des Rotors vorliegt.Therefore, in this embodiment of the present invention, the new power fluctuation and torque fluctuation calculation method is used to enable the engine fluctuation and torque fluctuation to be accurately determined even when the engine drive system or the crankshaft itself is affected by a torsional vibration is pregnant or the vehicle is driving on an uneven road or there is a deviation in the external teeth of the rotor.

Im Folgenden wird das Verfahren zur Berechnung der Leistungsschwankung und Drehmomentschwankung des Motors erläutert.The procedure for Calculation of the power fluctuation and torque fluctuation of the Motors explained.

Zunächst wird das Verfahren zur Berechnung der durch die einzelnen Zylinder erzeugten Antriebskraft und des in den einzelnen Zylindern erzeugten Drehmoments unter Bezug auf 6A und 6B erläutert, die den stabilen Betriebszustand zeigen, in dem das Motorantriebssystem keine Drehschwingung erfährt. Wie oben erläutert, erzeugt der Kurbelwinkel-Sensor 15 immer dann einen Ausgabeimpuls, wenn sich die Kurbelwelle um einen Kurbelwinkel von 30° dreht. Außerdem ist der Kurbelwinkel-Sensor 15 so angebracht, dass er einen Ausgabeimpuls am oberen Totpunkt TDC des Verdichtungshubs der Zylinder Nr. 1, Nr. 2, Nr. 3 und Nr. 4 erzeugt. Somit erzeugt der Kurbelwinkel-Sensor 15 für jeden Kurbelwinkel von 30° ab dem oberen Totpunkt TDC des Verdichtungshubs der Zylinder Nr. 1, Nr. 2, Nr. 3 und Nr. 4 einen Ausgabeimpuls. Hierbei ist zu beachten, dass die Zündfolge des bei der vorliegenden Erfindung verwendeten Verbrennungsmotors 1–3–4–2 lautet.First, the method of calculating the driving force generated by the individual cylinders and the torque generated in the individual cylinders will be referred to with reference to FIG 6A and 6B explained, which show the stable operating state in which the motor drive system experiences no torsional vibration. As explained above, the crank angle sensor generates 15 always an output pulse when the crankshaft rotates through a crank angle of 30 °. In addition, the crank angle sensor 15 attached so that it generates an output pulse at the top dead center TDC of the compression stroke of the cylinders No. 1, No. 2, No. 3 and No. 4. The crank angle sensor thus generates 15 an output pulse for each crank angle of 30 ° from the top dead center TDC of the compression stroke of the cylinders No. 1, No. 2, No. 3 and No. 4. It should be noted here that the firing order of the internal combustion engine used in the present invention is 1-3-3-2.

In 6A und 6B zeigt die vertikale Achse T30 die verstrichene Zeit eines 30°-Kurbelwinkels von dem Zeitpunkt, an dem der Kurbelwinkel-Sensor 15 einen Ausgabeimpuls erzeugt, bis zu dem Zeitpunkt, an dem er den nächsten Ausgabeimpuls erzeugt. Des Weiteren zeigt Ta(i) die verstrichene Zeit vom oberen Totpunkt des Verdichtungshubs (im Folgenden als TDC bezeichnet) bis zu 30° nach dem oberen Totpunkt des Verdichtungshubs (im Folgenden als ATDC bezeichnet) von Zylinder Nr. 1, während Tb(i) die verstrichene Zeit vom ATDC 60° bis ATDC 90° von Zylinder Nr. 1 zeigt.In 6A and 6B the vertical axis T30 shows the elapsed time of a 30 ° crank angle from the time when the crank angle sensor 15 generates an output pulse until it generates the next output pulse. Furthermore, Ta (i) shows the elapsed time from the top dead center of the compression stroke (hereinafter referred to as TDC) to 30 ° after the top dead center of the compression stroke (hereinafter referred to as ATDC) of cylinder No. 1, while Tb (i) shows the elapsed time from ATDC 60 ° to ATDC 90 ° of cylinder # 1.

Somit zeigt zum Beispiel Ta(1) die verstrichene Zeit von TDC bis ATDC 30° von Zylinder Nr. 1, während Tb () die verstrichene Zeit vom ATDC 60° bis ATDC 90° von Zylinder Nr. 1 zeigt. Wenn nun der 30°-Kurbelwinkel durch die verstrichene Zeit T30 geteilt wird, ist das Ergebnis dieser Division die Winkelgeschwindigkeit w. In dieser erfindungsgemäßen Ausführungsform wird die Division 30°-Kurbelwinkel/Ta(i) als erste Winkelgeschwindigkeit ωa im Zylinder Nr. 1 bezeichnet, während die Division 30°-Kurbelwinkel/Ta(i) als zweite Winkelgeschwindigkeit ωb im Zylinder Nr. 1 bezeichnet wird. Somit zeigt 30°-Kurbelwinkel/Ta(1) die erste Winkelgeschwindigkeit ωa des Zylinders Nr. 1, während 30°-Kurbelwinkel/Ta(i) die zweite Winkelgeschwindigkeit ωb des Zylinders Nr. 1 bezeichnet.For example, Ta (1) shows the elapsed time from TDC to ATDC 30 ° from cylinder # 1 while Tb () shows the elapsed time from ATDC 60 ° to ATDC 90 ° of cylinder # 1. If now the 30 ° crank angle divided by the elapsed time T30 is the result of this Division the angular velocity w. In this embodiment according to the invention the division 30 ° crank angle / Ta (i) as the first angular velocity ωa designated in cylinder # 1 while the division 30 ° crank angle / Ta (i) referred to as the second angular velocity ωb in cylinder No. 1 becomes. Thus, 30 ° crank angle / Ta (1) the first angular velocity ωa of cylinder # 1 while 30 ° crank angle / Ta (i) denotes the second angular velocity ωb of cylinder No. 1.

Wenn unter Bezugnahme auf den Zylinder Nr. 1 aus 6A und 6B die Verbrennung gestartet wird und der Verbrennungsdruck steigt, sinkt die verstrichene Zeit von Ta(1) auf Tb (1) und steigt anschließend ab Tb(1) an. Anders ausgedrückt, steigt die Winkelgeschwindigkeit ω der Kurbelwelle von der ersten Winkelgeschwindigkeit ωa auf die zweite Winkelgeschwindigkeit ωb an und sinkt dann wieder von der zweiten Winkelgeschwindigkeit ωb. Der Verbrennungsdruck bewirkt also, dass die Winkelgeschwindigkeit ω der Kurbelwelle von der ersten Winkelgeschwindigkeit ωa auf die zweite Winkelgeschwindigkeit ωb steigt. 6A zeigt den Fall, in dem der Verbrennungsdruck relativ hoch ist, während 6B den Fall zeigt, in dem der Verbrennungsdruck relativ gering ist. Wie in 6A und 6B dargestellt, erhöht sich bei hohem Verbrennungsdruck der Verringerungsbetrag der verstrichenen Zeit (Ta(i) – Tb(i)) im Vergleich zu einem geringen Verbrennungsdruck, somit wird der Betrag der Zunahme (ωb – ωa) der Winkelgeschwindigkeit ω größer. Wenn der Verbrennungsdruck größer wird, steigt auch die durch den Zylinder erzeugte Antriebskraft.When referring to the No. 1 cylinder 6A and 6B the combustion is started and the combustion pressure increases, the elapsed time decreases from Ta (1) to Tb (1) and then increases from Tb (1). In other words, the angular velocity ω of the crankshaft increases from the first angular velocity ωa to the second angular velocity ωb and then decreases again from the second angular velocity ωb. The combustion pressure thus causes the angular velocity ω of the crankshaft to increase from the first angular velocity ωa to the second angular velocity ωb. 6A shows the case where the combustion pressure is relatively high during 6B shows the case where the combustion pressure is relatively low. As in 6A and 6B shown, the amount of elapse of the elapsed time (Ta (i) - Tb (i)) increases at a high combustion pressure compared to a low combustion pressure, thus the amount of increase (ωb - ωa) of the angular velocity ω becomes larger. As the combustion pressure increases, the driving force generated by the cylinder also increases.

Wenn somit der Betrag der Zunahme (ωb – ωa) der Winkelgeschwindigkeit ω größer wird, steigt auch die durch den Zylinder erzeugte Antriebskraft.So if the amount of increase (ωb - ωa) the angular velocity ω increases, the driving force generated by the cylinder also increases.

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.It is therefore possible to use a cylinder generated driving force from the difference (ωb - ωa) between the first angular velocity ωa and the second angular velocity ωb to calculate.

Wenn andererseits das Rotationsträgheitsmoment des Motors I ist, steigt aufgrund des Verbrennungsdrucks die kinetische Energie von (1/2)Iωa2 auf (1/2)Iω2. Der Betrag der Zunahme der kinetischen Energie (1/2)*I(ωb2 – ωa2) beschreibt das vom Zylinder erzeugte Drehmoment. Es wird daher möglich, das durch einen Zylinder erzeugte Drehmoment aus der Differenz (ωb2 – ωa2) zwischen dem Quadrat der ersten Winkelgeschwindigkeit ωa und dem Quadrat der zweiten Winkelgeschwindigkeit ωb zu berechnen.On the other hand, when the rotational moment of inertia of the engine is I, the kinetic energy increases from (1/2) Iωa 2 to (1/2) Iω 2 due to the combustion pressure. The amount of increase in kinetic energy (1/2) * I (ωb 2 - ωa 2 ) describes the torque generated by the cylinder. It therefore becomes possible to calculate the torque generated by a cylinder from the difference (ωb 2 - ωa 2 ) between the square of the first angular velocity ωa and the square of the second angular velocity ωb.

Wenn man die erste Winkelgeschwindigkeit ωa und die zweite Winkelgeschwindigkeit ωb auf diese Weise feststellt, wird es möglich, die vom entsprechenden Zylinder erzeugte Antriebskraft und das vom entsprechenden Zylinder erzeugte Drehmoment aus den ermittelten Werten zu berechnen. Hierbei ist zu beachten, dass die in 6A und 6B dargestellte Änderung der verstrichenen Zeit T30 je nach Motor etwas variiert. Daher werden die Kurbelwinkelspannweite zur Ermittlung der ersten Winkelgeschwindigkeit ωa und die Kurbelwinkelspannweite zur Ermittlung der zweiten. Winkelgeschwindigkeit ωb je nach Motor so festgelegt, dass (ωb – ωa) die durch den Motor erzeugte Antriebskraft am besten ausdrückt bzw. dass (ωb2 – ωa2) das vom Motor erzeugte Drehmoment am besten ausdrückt. Daher kann je nach Motor die Kurbelwinkelspannweite zur Ermittlung der ersten Winkelgeschwindigkeit ωa von vor dem oberen Totpunkt des Verdichtungshubs BTDC 30° bis TDC reichen, während die Kurbelwinkelspannweite zur Ermittlung der zweiten Winkelgeschwindigkeit ωb von ATDC 90° bis ATDC 120° reichen kann.If the first angular velocity ωa and the second angular velocity ωb are determined in this way, it becomes possible to calculate the driving force generated by the corresponding cylinder and the torque generated by the corresponding cylinder from the determined values. Please note that the in 6A and 6B change shown elapsed time T30 varies slightly depending on the engine. Therefore, the crank angle span for determining the first angular velocity ωa and the crank angle span for determining the second. Depending on the motor, angular velocity ωb is determined such that (ωb - ωa) best expresses the driving force generated by the motor or that (ωb 2 - ωa 2 ) best expresses the torque generated by the motor. Therefore, depending on the engine, the crank angle span for determining the first angular velocity ωa can range from before the top dead center of the compression stroke BTDC 30 ° to TDC, while the crank angle span for determining the second angular velocity ωb can range from ATDC 90 ° to ATDC 120 °.

Folglich wird, um das Verfahren zur Ermittlung der Winkelgeschwindigkeiten ωa und ωb allgemein zu erläutern, die erste Kurbelwinkelspannweite in dem Kurbelwinkelbereich, der vom Ende des Verdichtungshubs bis zum Beginn des Expansionshubs reicht, eingestellt, die zweite Kurbelwinkelspannweite in dem Kurbelwinkelbereich in der Mitte des Expansionshubs, einen vorbestimmten Kurbelwinkel von der ersten Kurbelwinkelspannweite entfernt, eingestellt, die erste Winkelgeschwindigkeit ωa der Kurbelwelle in der ersten Kurbelwinkelspannweite ermittelt und die zweite Winkelgeschwindigkeit der Kurbelwelle ωb in der zweiten Kurbelwinkelspannweite ermittelt.Consequently, in order to determine the method for determining the angular velocities ωa and ωb my explaining, set the first crank angle span in the crank angle range from the end of the compression stroke to the beginning of the expansion stroke, set the second crank angle span in the crank angle range in the middle of the expansion stroke, a predetermined crank angle from the first crank angle span, the first The angular velocity ωa of the crankshaft is determined in the first crank angle span and the second angular speed of the crankshaft ωb is determined in the second crank angle span.

Wie oben erläutert, wird es durch Ermittlung der Winkelgeschwindigkeiten ωa und ωb möglich, die vom entsprechenden Zylinder erzeugte Antriebskraft und das Drehmoment anhand der ermittelten Werte zu berechnen. Das Motorantriebssystem erfährt jedoch aufgrund der aufeinander folgenden Explosionswirkungen der Zylinder eine Drehschwingung, die mit der natürlichen Frequenz des Antriebssystems auftritt. Wenn das Motorantriebssystem solchen Drehschwingungen ausgesetzt ist, ist es nicht mehr möglich, die von einem Zylinder erzeugte Antriebskraft und das Drehmoment auf der Basis der Winkelgeschwindigkeiten ωa und ωb genau zu ermitteln. Dies wird nun mit Bezug auf 7 und 8 erläutert.As explained above, by determining the angular velocities ωa and ωb, it is possible to calculate the driving force generated by the corresponding cylinder and the torque on the basis of the determined values. However, due to the successive explosion effects of the cylinders, the motor drive system experiences a torsional vibration that occurs with the natural frequency of the drive system. When the engine drive system is subjected to such torsional vibrations, it is no longer possible to accurately determine the driving force generated by a cylinder and the torque based on the angular velocities ωa and ωb. This is now related to 7 and 8th explained.

7 zeigt die Änderungen der verstrichenen Zeit Ta(i), die nacheinander für die einzelnen Zylinder berechnet werden, wenn das Motorantriebssystem eine Drehschwingung erfährt. Wenn das Motorantriebssystem eine Drehschwingung erfährt, so wird aufgrund dieser Drehschwingung die Winkelgeschwindigkeit einer Kurbelwelle zyklisch erhöht und verringert, so dass die verstrichene Zeit Ta(i) wie in 7 dargestellt zyklisch ansteigt und abnimmt. 7 Figure 3 shows the changes in the elapsed time Ta (i) which are successively calculated for the individual cylinders when the engine drive system experiences torsional vibration. When the engine drive system experiences a torsional vibration, the angular velocity of a crankshaft is cyclically increased and decreased due to this torsional vibration, so that the elapsed time Ta (i) as in FIG 7 shown increases and decreases cyclically.

8 wiederum zeigt eine vergrößerte Darstellung des Abschnitts, in dem sich die verstrichene Zeit Ta(i) verringert. Wie in 8 ersichtlich, fällt die verstrichene Zeit Ta(i) um genau die Zeit h0 zwischen Ta(1) und Ta(3) ab. Diese Zeitverringerung h0 erfolgt, so die Annahme, aufgrund einer verstärkten Drehung durch die Drehschwingung. 8th again shows an enlarged view of the section in which the elapsed time Ta (i) decreases. As in 8th As can be seen, the elapsed time Ta (i) falls by exactly the time h0 between Ta (1) and Ta (3). This time reduction h0 is assumed to be due to an increased rotation due to the torsional vibration.

In diesem Fall wird davon ausgegangen, dass sich der Betrag der Abnahme der verstrichenen Zeit aufgrund der Drehschwingung zwischen Ta(1) und Ta(3) zusammen mit der verstrichenen Zeit im wesentlichen linear erhöht. Somit zeigt sich diese Abnahme der verstrichenen Zeit aufgrund der Drehschwingung in der Differenz zwischen der unterbrochenen Linie, die Ta(1) und Ta(3) verbindet, und der horizontalen Linie, die Ta(1) passiert. Aus diesem Grund bewirkt die Drehschwingung zwischen Ta(1) und Tb(1), dass die verstrichene Zeit um genau h sinkt.In this case it is assumed that the amount of decrease in elapsed time due to the Torsional vibration between Ta (1) and Ta (3) together with the elapsed one Time increased essentially linearly. Thus, this decrease in elapsed time due to the Torsional vibration in the difference between the broken line, that connects Ta (1) and Ta (3), and the horizontal line that Ta (1) happens. For this reason, the torsional vibration between Ta (1) and Tb (1) that the elapsed time decreases by exactly h.

Auf diese Weise ist, bei Auftreten einer Drehschwingung im Motorantriebssystem Tb(1) geringer in verstrichener Zeit als Ta(1), doch diese geringere verstrichene Zeit enthält den Betrag der Abnahme f der verstrichenen Zeit aufgrund des Verbrennungsdrucks und den Betrag der Abnahme h der verstrichenen Zeit aufgrund der Drehschwingung. Um daher nur die verstrichene Zeit Tb(1), die aufgrund des Verbrennungsdrucks gesunken ist, zu ermitteln, müssen h und Tb(1) addiert werden. Selbst wenn also die vom Zylinder erzeugte Antriebskraft oder das Drehmoment auf der Basis der ermittelten verstrichenen Zeiten Ta(i) und Tb(i) ermittelt wird, ist es unmöglich, die wahre Antriebsleistung bzw. das wahre Drehmoment zu bestimmen, und daher ist es auch nicht möglich, die wahre Leistungsschwankung oder Drehmomentschwankung des Motors zu ermitteln.This way, when it occurs a torsional vibration in the motor drive system Tb (1) less in elapsed Time than Ta (1), but this less elapsed time contains the amount the decrease f of the elapsed time due to the combustion pressure and the amount of decrease h of the elapsed time due to the Torsional vibration. Therefore, only the elapsed time Tb (1) due to of the combustion pressure has decreased, h and Tb (1) can be added. So even if the one generated by the cylinder Driving force or torque based on the determined elapsed times Ta (i) and Tb (i) is determined, it is impossible to determine true drive power or torque, and therefore it is also not possible the true power fluctuation or torque fluctuation of the engine to investigate.

Des Weiteren besteht in einem Mehrzylinder-Verbrennungsmotor neben der Drehschwingung des Motorantriebssystems auch die Drehschwingung der Kurbelweile selbst. Wenn diese Drehschwingung der Kurbelwelle selbst auftritt, ist es nicht mehr möglich, die wahre Leistungsschwankung oder Drehmomentschwankung des Motors zu ermitteln. Dies wird im Folgenden mit Bezug auf 9 erläutert.In addition, in a multi-cylinder internal combustion engine, in addition to the torsional vibration of the engine drive system, there is also the torsional vibration of the crank shaft itself. If this torsional vibration of the crankshaft itself occurs, it is no longer possible to determine the true power fluctuation or torque fluctuation of the engine. This is referred to below 9 explained.

In einem Mehrzylinder-Verbrennungsmotor, zum Beispiel in einem Vier-Zylinder-Verbrennungsmotor wie in 1 dargestellt, tritt eine große Drehschwingung in Zylinder Nr. 1 und in Zylinder Nr. 2 auf. In einem Zylinder, in dem fast keine Drehschwingung der Kurbelwelle selbst auftritt (zum Beispiel in Zylinder Nr. 3 wie in 9 dargestellt), fällt also die verstrichene Zeit schrittweise von Ta(3) auf Tb(3); in Zylinder Nr. 1 indes fällt die verstrichene Zeit nicht schrittweise von Ta(1) auf Tb(1), und die Drehschwingung der Kurbelwelle selbst bewirkt, dass die verstrichene Zeit Tb(1) länger wird.In a multi-cylinder internal combustion engine, for example in a four-cylinder internal combustion engine as in 1 shown, a large torsional vibration occurs in No. 1 cylinder and in No. 2 cylinder. In a cylinder in which there is almost no torsional vibration of the crankshaft itself (for example in cylinder no.3 as in 9 shown), the elapsed time gradually falls from Ta (3) to Tb (3); in cylinder # 1, however, the elapsed time does not gradually decrease from Ta (1) to Tb (1), and the torsional vibration of the crankshaft itself causes the elapsed time Tb (1) to become longer.

Dadurch ist es selbst dann nicht möglich, die wahre Antriebskraft oder das wahre Drehmoment für Zylinder Nr. 1 zu ermitteln, wenn die vom Zylinder Nr. 1 erzeugte Antriebskraft oder das Drehmoment auf der Basis der ermittelten verstrichenen Zeiten Ta(i) und Tb(i) festgestellt werden kann. Folglich ist es nicht möglich, die wahre Leistungsschwankung oder Drehmomentschwankung des Motors zu ermitteln.Even then it is not possible, the real driving force or torque for cylinders # 1 to determine when the driving force generated by # 1 cylinder or the torque based on the determined elapsed Times Ta (i) and Tb (i) can be determined. Hence it is not possible, the true power fluctuation or torque fluctuation of the engine to investigate.

Daher wird in der vorliegenden Erfindung ein neues Berechnungsverfahren genutzt, die die Berechnung der wahren Leistungsschwankung und Drehmomentschwankung des Motors selbst dann ermöglicht, wenn eine Drehschwingung des Motorantriebssystems auftritt, und selbst dann, wenn eine Drehschwingung der Kurbelwelle auftritt. Als Nächstes wird dieses neue Berechnungsverfahren mit Bezug auf 10 erläutert.Therefore, a new calculation method is used in the present invention, which enables the calculation of the true power fluctuation and torque fluctuation of the engine even when a torsional vibration of the engine drive system occurs and even when a torsional vibration of the crankshaft occurs. Next, this new calculation method is related to 10 explained.

In 10 zeigen Ta(1)j-1 und Tb(1)j-1 die verstrichenen Zeiten zum Zeitpunkt der vorangegangenen Verbrennung des Zylinders Nr. 1. Ta(1)j und Tb(1)j zeigen die verstrichenen Zeiten zum Zeitpunkt der nächsten Verbrennung von Zylinder Nr. 1. Andererseits zeigt Ta(3)j-1 die verstrichene Zeit zum Zeitpunkt der vorangegangenen Verbrennung des Zylinders Nr. 3, die nach der vorangegangenen Verbrennung des Zylinders Nr. 1 ausgeführt wurde, während Ta(3)j die verstrichene Zeit zum Zeitpunkt der nächsten Verbrennung von Zylinder Nr. 3 zeigt.In 10 Ta (1) j-1 and Tb (1) j-1 show the elapsed times at the time of the previous combustion of the No. 1 cylinder. Ta (1) j and Tb (1) j show the elapsed times at the time of the next combustion of cylinder No. 1. On the other hand, Ta (3) j-1 shows the elapsed time at the time of previous combustion of cylinder No. 3, which was carried out after the previous combustion of cylinder No. 1, while Ta (3) j shows the elapsed time Shows time at the next combustion of cylinder # 3.

Zuerst werden die Differenz DTa(1) (= Ta(1)j – Ta(1)j-1) zwischen Ta(1)j und Ta(1)j-1, sowie die Differenz DTa(3) (= Ta(3)j – Ta(3)j-1) zwischen Ta(3)j und Tb(3)j-1 ermittelt . Als Nächstes wird die angenommene verstrichene Zeit von ATDC 60° bis ATDC 90° zur Zeit der nächsten Verbrennung von Zylinder Nr. 1 – unter der Annahme, dass das Ausgangsdrehmoment zur Zeit der vorherigen Verbrennung von Zylinder Nr. 1 und das Ausgangsdrehmoment zur Zeit der nächsten Verbrennung identisch sind – zu Tb'(1) gemacht und die Differenz Kb(1) (= Tb'(1)j – Tb(1)j-1) zwischen Tb'(1)j und Tb(1)j-1 ermittelt. Die Differenzen DTa(1), Kb(1) und DTa(3) ergeben sich, wie in 11 dargestellt, wenn sie als Höhen auf einer geraden Linie umgeschrieben werden.First, the difference DTa (1) (= Ta (1) j - Ta (1) j-1 ) between Ta (1) j and Ta (1) j-1 , as well as the difference DTa (3) (= Ta (3) j - Ta (3) j-1 ) between Ta ( 3) j and Tb (3) j-1 determined. Next, the assumed elapsed time from ATDC 60 ° to ATDC 90 ° at the time of the next combustion of cylinder # 1 - assuming that the output torque at the time of the previous combustion of cylinder # 1 and the output torque at the time of the next Combustion are identical - made to Tb '(1) and the difference Kb (1) (= Tb' (1) j - Tb (1) j-1 ) between Tb '(1) j and Tb (1) j-1 determined. The differences DTa (1), Kb (1) and DTa (3) result as in 11 shown when they are rewritten as heights on a straight line.

Die Differenz der verstrichenen Zeiten fällt um genau die Zeit I0 zwischen den Differenzen der verstrichenen Zeiten DTa(1) und DTa(3), wie in 11 dargestellt. Selbst wenn eine Drehschwingung in der Kurbelwelle selbst auftritt, spiegelt sich die Auswirkung der Drehschwingung nicht in der Differenz der verstrichenen Zeiten wieder und entsteht daher die Abnahme der Zeit I0 in der Differenz der verstrichenen Zeiten aufgrund der Drehschwingung des Antriebssystems. In diesem Fall kann man davon ausgehen, dass der Betrag der Abnahme der Differenz der verstrichenen Zeiten aufgrund der Drehschwingung des Motorantriebssystems sich zusammen mit der verstrichenen Zeit zwischen DTa(1) und DTa(3) im Wesentlichen linear erhöht. Wenn daher angenommen wird, dass das Ausgangsdrehmoment zur Zeit der vorherigen Verbrennung des Zylinders Nr. 1 und das Ausgangsdrehmoment zur Zeit der nächsten Verbrennung identisch sind, kann man festhalten, dass aufgrund der Drehschwingung des Motorantriebssystems zwischen den Differenzen der verstrichenen Zeiten DTa(1) und Kb(1) die Differenz der verstrichenen Zeiten um genau I abnimmt.The difference in the elapsed times falls by exactly the time I0 between the differences in the elapsed times DTa (1) and DTa (3), as in 11 shown. Even if a torsional vibration occurs in the crankshaft itself, the effect of the torsional vibration is not reflected in the difference in the elapsed times and therefore the decrease in the time I 0 occurs in the difference in the elapsed times due to the torsional vibration of the drive system. In this case, it can be assumed that the amount of decrease in the elapsed time difference due to the torsional vibration of the motor drive system increases substantially linearly along with the elapsed time between DTa (1) and DTa (3). Therefore, if it is assumed that the output torque at the time of the previous combustion of the No. 1 cylinder and the output torque at the time of the next combustion are identical, it can be said that due to the torsional vibration of the engine drive system between the differences of the elapsed times DTa (1) and Kb (1) the difference of the elapsed times decreases by exactly I.

Daher wird – wie aus 11 hervorgeht – die angenommene Differenz der verstrichenen Zeiten Kb(1) unter der Annahme, dass das Ausgangsdrehmoment zur Zeit der vorherigen Verbrennung von Zylinder Nr. 1 und das Ausgangsdrehmoment zur Zeit der nächsten Verbrennung identisch sind, als ein interpolierter Wert aus DTa(1) und DTa(3) ausgedrückt und gestaltet sich nach folgender Formel: Kb(1) = (2DTa(1) + DTa(3))/3 Therefore - like from 11 - the assumed difference of the elapsed times Kb (1) assuming that the output torque at the time of the previous combustion of No. 1 cylinder and the output torque at the time of the next combustion are identical as an interpolated value from DTa (1) and DTa (3) is expressed and structured according to the following formula: Kb (1) = (2DTa (1) + DTa (3)) / 3

Die angenommene verstrichene Zeit Tb'(1)j von Zylinder Nr. 1 wird unter der Annahme, dass das Ausgangsdrehmoment zum Zeitpunkt der vorangegangenen Verbrennung von Zylinder Nr. 1 und das Ausgangsdrehmoment zur Zeit der nächsten Verbrennung identisch sind, wie folgt ausgedrückt: Tb'(1)j = Tb(1)j-1 + Kb (1) The assumed elapsed time Tb '(1) j of cylinder No. 1 is expressed as follows, assuming that the output torque at the time of the previous combustion of cylinder No. 1 and the output torque at the time of the next combustion are identical: Tb '(1) j = Tb (1) j-1 + Kb (1)

Daher wird das angenommene Ausgangsdrehmoment DNS(1) zur Zeit der nächsten Verbrennung von Zylinder Nr. 1 unter der Annahme, dass das Ausgangsdrehmoment zur Zeit der vorherigen Verbrennung von Zylinder Nr. 1 und das Ausgangsdrehmoment zur Zeit der nächsten Verbrennung identisch sind, 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 Therefore, the assumed output torque DNS (1) at the time of the next combustion of cylinder # 1, assuming that the output torque at the time of the previous combustion of cylinder # 1 and the output torque at the time of the next combustion are identical, is expressed as follows : 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 bei der Berechnung des realen Ausgangsdrehmoments mittels der real verstrichenen Zeit Tb(1)j von ATDC 60° bis ATDC 90° zur Zeit der nächsten Verbrennung von Zylinder Nr. 1 das Ausgangsdrehmoment DN(1) durch folgende Formel ausgedrückt: DN(1) = {30°/Tb'(1)j}2 – {30°/Ta(1)j}2 On the other hand, when calculating the real output torque using the real elapsed time Tb (1) j from ATDC 60 ° to ATDC 90 ° at the time of the next combustion of cylinder No. 1, the output torque DN (1) is expressed by the following formula: DN (1) = {30 ° / Tb '(1) j } 2 - {30 ° / Ta (1) j } 2

In diesem Fall zeigt die Differenz zwischen dem angenommenen Ausgangsdrehmoment DNS(1) des Zylinders Nr. 1 und dem realen Ausgangsdrehmoment DN(1) den Betrag der Drehmomentschwankung von Zylinder Nr. 1. Folglich wird der Betrag der Drehmomentschwankung DLN(1) von Zylinder Nr. 1 durch folgende Formel ausgedrückt: DLN(1) = DNS(1) – DN(1) = {30°/Tb'(1)j}2 – {30°/Ta(1)j}2 In this case, the difference between the assumed output torque DNS (1) of cylinder No. 1 and the real output torque DN (1) shows the amount of torque fluctuation of cylinder No. 1. Accordingly, the amount of torque fluctuation DLN (1) of cylinder No. 1 expressed by the following formula: DLN (1) = DNS (1) - DN (1) = {30 ° / Tb '(1) j } 2 - {30 ° / Ta (1) j } 2

Ganz allgemein kann der Betrag der Drehmomentschwankung DLN(1) von Zylinder Nr. 1 durch folgende Formel ausgedrückt werden: DLN(i) = DNS(i) – DN(i) = {30°/Tb'(i)}2 – {30°/Tb(i)}2 In general, the amount of torque fluctuation DLN (1) of cylinder # 1 can be expressed by the following formula: DLN (i) = DNS (i) - DN (i) = {30 ° / Tb '(i)} 2 - {30 ° / Tb (i)} 2

Der Betrag der Drehmomentschwankung von Zylinder Nr. 1 ergibt sich also aus der Differenz zwischen dem Quadrat der angenommenen zweiten Winkelgeschwindigkeit von Zylinder Nr. 1 und dem Quadrat der realen zweiten Winkelgeschwindigkeit. Indem man den Betrag der Drehmomentschwankung nach diesem Verfahren berechnet, ist es selbst bei Auftreten einer Drehschwingung im Motorantriebssystem möglich, den Betrag der Drehmomentschwankung der Zylinder genau zu bestimmen, und sogar dann, wenn eine Drehschwingung in der Kurbelwelle selbst auftritt.The amount of torque fluctuation from Cylinder # 1 is the difference between the square the assumed second angular velocity of cylinder no. 1 and the square of the real second angular velocity. By doing the amount of torque fluctuation is calculated using this method, it is even when a torsional vibration occurs in the motor drive system possible, precisely determine the amount of torque fluctuation of the cylinders, and even if there is torsional vibration in the crankshaft itself occurs.

Es ist jedoch nicht möglich, den Betrag der Drehmomentschwankung der Zylinder genau zu berechnen, wenn sich, wie eingangs erläutert, die Motordrehzahl erhöht. Wenn die Motordrehzahl also hoch wird, verkürzen sich die verstrichene Zeit Ta(i), Tb(i), und daher wird es schwierig, die verstrichene Zeit Ta(i), Tb(i) genau zu bestimmen, und die verstrichene Zeit Ta(i), Tb(i) enthält den Fehler. Folglich enthalten die erste Winkelgeschwindigkeit ωa und die zweite Winkelgeschwindigkeit ωb den Fehler ebenfalls und ist dieser Fehler auch im Wert der Drehmomentschwankung DLN(i) enthalten, der auf der Basis der Winkelgeschwindigkeiten ωa und ωb berechnet wird. Ein solcher Fehler wird mit zunehmender Motordrehzahl größer.However, it is not possible to exactly calculate the amount of torque fluctuation of the cylinders if, as explained at the beginning, the engine speed increases. Thus, when the engine speed becomes high, the elapsed time Ta (i), Tb (i) becomes shorter, and therefore it becomes difficult to accurately determine the elapsed time Ta (i), Tb (i) and the elapsed time Ta ( i), Tb (i) contains the error. Consequently, the first angular velocity ωa and the second angular velocity ωb also contain the error and this error is also included in the value of the torque fluctuation DLN (i), which is calculated on the basis of the angular velocities ωa and ωb. Such an error will increase with the engine speed greater.

Wenn andererseits die Motordrehzahl steigt, werden die höheren Anteile der Drehschwingung des Motorantriebssystems und der Drehschwingung der Kurbelwelle selbst größer. Der höhere Anteil wirkt sich auf die Differenz der verstrichenen Zeit DTa(1), DTa(3) aus. Der berechnete Betrag der Drehmomentschwankung wird also vom wahren Betrag der Drehmomentschwankung abweichen, und zwar auch dann, wenn die angenommene zweite Winkelgeschwindigkeit angepasst wird. Die Abweichung im berechneten Betrag der Drehmomentschwankung wird in dem Maße größer, in dem die Motordrehzahl steigt.On the other hand, if the engine speed increases, the higher Parts of the torsional vibration of the motor drive system and the torsional vibration the crankshaft itself bigger. The higher Proportion affects the difference of elapsed time DTa (1), DTa (3) out. The calculated amount of torque fluctuation is therefore from true amount of torque fluctuation, even then, if the assumed second angular velocity is adjusted. The deviation in the calculated amount of torque fluctuation becomes in this scale bigger, in where the engine speed increases.

Es steigt nämlich das Verhältnis des Fehlers zum berechneten Betrag der Drehmomentschwankung in dem Maße, in dem die Motordrehzahl steigt. Folglich verringert sich, wie in 12 dargestellt, die Änderungsrate im berechneten Betrag der Drehmomentschwankung zur Änderung beim Luft-Kraftstoff-Verhältnis. Wenn jedoch die Änderungsrate des Betrags der Drehmomentschwankung im Drehmomentschwankungs-Regelbereich geringer wird (siehe 3), sinkt die Steuerbarkeit des Luft-Kraftstoff-Verhältnisses zur Beibehaltung des Betrags der Drehmomentschwankung im Drehmomentschwankungs-Regelbereich.Namely, the ratio of the error to the calculated amount of torque fluctuation increases as the engine speed increases. Consequently, as in 12 shown, the rate of change in the calculated amount of torque fluctuation for the change in the air-fuel ratio. However, when the rate of change in the amount of torque fluctuation becomes smaller in the torque fluctuation control range (see 3 ), the controllability of the air-fuel ratio decreases to maintain the torque fluctuation amount in the torque fluctuation control range.

Auf der anderen Seite richten sich die Beträge des Beniers und der oben erläuterten Abweichung nach der Motordrehzahl. Sie werden also in dem Maße größer, in dem die Motordrehzahl steigt, doch hängen die Beträge des Fehlers und der Abweichung nicht vom Luft-Kraftstoff-Verhältnis und vom Zylinder ab. Durch Ermitteln eines Sollwerts KDLN, der den Fehler und die Abweichung im Voraus auf der Basis der Motordrehzahl repräsentiert, und Subtrahieren des Sollwerts KDLN von DLN(i) (wie oben erläutert) erhält man als Ergebnis der Subtraktion genau der Betrag der Drehmomentschwankung. Daher wird in der erfindungsgemäßen Ausführungsform der Sollwert KDLN im Voraus experimentell bestimmt und im Voraus im ROM 22 in Form eines in 13 dargestellten Schemas gespeichert, Dann wird der Betrag der Drehmomentschwankung DLN(i) des Zylinders Nr. 1 berechnet, indem man den Sollwert KDLN von der Differenz zwischen dem angenommenen Ausgangsdrehmoment DNS (i) von Zylinder Nr. 1 und dem realen Ausgangsdrehmoment DN(i) subtrahiert.On the other hand, the amounts of the Benier and the deviation explained above depend on the engine speed. So they get bigger as the engine speed increases, but the amounts of error and deviation do not depend on the air-fuel ratio and the cylinder. By determining a target value KDLN, which represents the error and the deviation in advance on the basis of the engine speed, and subtracting the target value KDLN from DLN (i) (as explained above), exactly the amount of the torque fluctuation is obtained as a result of the subtraction. Therefore, in the embodiment of the invention, the target value KDLN is experimentally determined in advance and in advance in the ROM 22 in the form of an in 13 1, then the amount of torque fluctuation DLN (i) of cylinder # 1 is calculated by taking the target value KDLN from the difference between the assumed output torque DNS (i) of cylinder # 1 and the real output torque DN (i) subtracted.

Wenn nämlich die Differenz (DNS (i) – DN(i)) zwischen dem angenommenen Ausgangsdrehmoment DNS(i) von Zylinder Nr. 1 und dem realen Ausgangsdrehmoment DN(i) als ein Grundbetrag der Drehmomentschwankung DLNB(i) von Zylinder Nr. 1 bezeichnet wird, wird der Betrag der Drehmomentschwankung DLN(i) von Zylinder Nr. 1 durch folgende Formel berechnet: DLN(i) = DLNB(i) – KDLN = DNS(i) – DN(i) – KDLN Namely, when the difference (DNS (i) - DN (i)) between the assumed output torque DNS (i) of cylinder # 1 and the real output torque DN (i) as a basic amount of torque fluctuation DLNB (i) of cylinder # 1 is referred to, the amount of torque fluctuation DLN (i) of cylinder No. 1 is calculated by the following formula: DLN (i) = DLNB (i) - KDLN = DNS (i) - DN (i) - KDLN

Wenn man den Betrag der Drehmomentschwankung auf diese Weise berechnet, lässt sich die Änderungsrate des Betrags der Drehmomentschwankung zur Änderung im Luft-Kraftstoff-Verhältnis – wie in 12A gezeigt – auf einem größeren Niveau halten. Folglich kann die Steuerbarkeit des Luft-Kraftstoff-Verhältnisses zur Beibehaltung des Betrages der Drehmomentschwankung innerhalb des Drehmomentschwankungs-Regelbereiches höher gehalten werden.If one calculates the amount of the torque fluctuation in this way, the rate of change of the amount of the torque fluctuation to the change in the air-fuel ratio can be - as in 12A shown - keep at a higher level. As a result, the controllability of the air-fuel ratio for maintaining the amount of the torque fluctuation can be kept higher within the torque fluctuation control range.

Wie aus 13 hervorgeht, erhöht sich der Sollwert KDLN, wenn sich der Durchschnitt der Motordrehzahl NAVE erhöht. Hierbei ist jedoch zu beachten, dass der Betrag der Drehmomentschwankung DLN(i) selbst dann von der Motordrehzahl für die identischen wahren Beträge der Drehmomentschwankung abweicht, wenn der Betrag der Drehmomentschwankung DLN(i) auf die oben beschriebene Art berechnet wird. Wie in 14 dargestellt, wird DLN(i) also in dem Maße größer, in dem der Durchschnitt der Motordrehzahl NAVE steigt, wenn der wahre Betrag der Drehmomentschwankung klein ist; und DLN(i) wird in dem Maße kleiner, in dem der Durchschnitt der Motordrehzahl NAVE steigt, wenn der wahre Betrag der Drehmomentschwankung groß ist. Jedoch lässt sich die Abweichung oder die Konstanz auf der Basis des Sollwertes KDLN bestimmen. Aus diesem Grund wird in der erfindungsgemäßen Ausführungsform der Sollwert KDLN so eingestellt, dass der Betrag der Drehmomentschwankung DLN(i) unabhängig vom Durchschnitt der Motordrehzahl NAVE fast konstant ist, wenn der wahre Betrag der Drehmomentschwankung zirka in der Mitte des Drehmomentschwankungs-Regelbereichs liegt (3).How out 13 the setpoint KDLN increases when the average engine speed NAVE increases. Note, however, that the amount of torque fluctuation DLN (i) deviates from the engine speed for the identical true amounts of torque fluctuation even if the amount of torque fluctuation DLN (i) is calculated in the manner described above. As in 14 shown, DLN (i) becomes larger as the average engine speed NAVE increases when the true torque fluctuation amount is small; and DLN (i) decreases as the average engine speed NAVE increases when the true amount of torque fluctuation is large. However, the deviation or constancy can be determined on the basis of the setpoint KDLN. For this reason, in the embodiment according to the invention, the setpoint KDLN is set such that the amount of the torque fluctuation DLN (i) is almost constant regardless of the average of the engine speed NAVE if the true amount of the torque fluctuation is approximately in the middle of the torque fluctuation control range ( 3 ).

Auf der anderen Seite ist eine genaue Ermittlung des Betrags der Drehmomentschwankung nach diesem Verfahren nicht möglich, wenn eine Abweichung bei den Abständen der Außenzähne entlang dem Umfang von Rotor 14 vorliegt (1). Aus diesem Grund gilt in der erfindungsgemäßen Ausführungsform: Selbst wenn eine Abweichung bei den Abständen der Außenzähne von Rotor 14 vorliegt, lassen sich die ermittelten verstrichenen Zeiten Ta(i), Tb (i) korrigieren, um eine genaue Bestimmung des Betrages der Drehmomentschwankung der Zylinder zu ermöglichen. Es folgt eine Erläuterung des Verfahrens zur Korrektur der verstrichenen Zeit Ta(i) mit Bezug auf 15.On the other hand, an accurate determination of the amount of torque fluctuation by this method is not possible if there is a deviation in the spacing of the external teeth along the circumference of the rotor 14 exists ( 1 ). For this reason, the following applies in the embodiment according to the invention: Even if there is a deviation in the distances between the external teeth and the rotor 14 the determined elapsed times Ta (i), Tb (i) can be corrected in order to enable an exact determination of the amount of the torque fluctuation of the cylinders. The following explains the procedure for correcting the elapsed time Ta (i) with reference to FIG 15 ,

In dieser erfindungsgemäßen Ausführungsform wird die verstrichene Zeit Ta(i) nach folgender Formel berechnet: Ta(i) = (Erforderliche Zeit von TDC bis ATDC 30° von Zylinder Nr. 1)*(1 + KTa(i)) In this embodiment of the invention, the elapsed time Ta (i) is calculated using the following formula: Ta (i) = (Time required from TDC to ATDC 30 ° from cylinder # 1) * (1 + KTa (i))

Hier zeigt KTa(i) den Korrekturkoeffizienten für Zylinder Nr. 1. Der Korrekturkoeffizient KTa(i) wird zu dem Zeitpunkt berechnet, wenn während eines Verzögerungsvorgangs die Kraftstoffzufuhr angehalten wird, wobei keine Drehschwingung des Motorantriebssystems und keine Drehschwingung der Kurbelwelle auftritt.Here, KTa (i) shows the correction coefficient for cylinder No. 1. The correction coefficient KTa (i) is calculated at the time when the fuel supply is stopped during a deceleration process, with no torsional vibration of the engine drive system and no torsional vibration of the course belwelle occurs.

15 zeigt die Änderung der verstrichenen Zeit Ta(i) zur Zeit eines Verzögerungsvorgangs. Zum Zeitpunkt eines Verzögerungsvorgangs fällt die Rotationsgeschwindigkeit der Kurbelwelle schrittweise ab, somit erhöht sich die verstrichene Zeit Ta(i) schrittweise wie durch Ta(1)j-1, Ta (3) j-i, Ta(4)j-1, Ta(2)j-1, Ta(1), Ta(3)j, Ta(4)j und Ta(2)j gezeigt. Zu diesem Zeitpunkt kann angenommen werden, dass sich bei gleichen Abständen zwischen den Außenzähnen des Rotors 14 die verstrichene Zeit Ta(i) entlang der durchgehenden Linie in 15 ändert. Wenn die ermittelte verstrichene Zeit Ta(i) von der durchgehenden Linie in 15 abweicht, wird davon ausgegangen, dass die Abstände der Außenzähne zur Bestimmung der von der durchgehenden Linie abgewichenen verstrichenen Zeit Ta(i) von den korrekten Abständen abweichen. Aus diesem Grund gilt in der erfindungsgemäßen Ausführungsform: Wenn die verstrichene Zeit Ta(i) von der durchgehenden Linie in 15 abweicht, wird die verstrichene Zeit Ta(i) durch den Korrekturkoeffizienten KTa(i) so korrigiert, dass die verstrichene Zeit Ta(i) auf der durchgehenden Linie von 15 positioniert wird. 15 shows the change in the elapsed time Ta (i) at the time of a delay operation. At the time of deceleration, the rotation speed of the crankshaft gradually decreases, so the elapsed time Ta (i) increases gradually as by Ta (1) j-1 , Ta (3) ji, Ta (4) j-1 , Ta (2 ) j-1 , Ta (1), Ta (3) j , Ta (4) j and Ta (2) j . At this time it can be assumed that there are equal distances between the external teeth of the rotor 14 the elapsed time Ta (i) along the solid line in 15 changes. If the determined elapsed time Ta (i) from the solid line in 15 deviates, it is assumed that the distances between the external teeth for determining the elapsed time Ta (i) deviated from the solid line deviate from the correct distances. For this reason, in the embodiment of the present invention, if the elapsed time Ta (i) from the solid line in 15 deviates, the elapsed time Ta (i) is corrected by the correction coefficient KTa (i) so that the elapsed time Ta (i) on the solid line of 15 is positioned.

Genauer gesagt werden in dieser erfindungsgemäßen Ausführungsform der Durchschnittswert TaAvj-1{_(Ta(1)j-1 + Ta(3)j-1 + Ta(4)j-1 + Ta(2)j-1)/4}, TaAvj (Ta(1)j + Ta(3)j + Ta(4)j + Ta(2)j)/4}, ... der verstrichenen Zeiten Ta(i) von vier Zylindern in einer 720°-Kurbelwinkelspannweite (j-1), (j) ... nacheinander ermittelt. Dann wird davon ausgegangen, dass die verstrichenen Zeiten Ta(4)j-1, Ta(2)j-1, Ta(1) und Ta(3)j um eine durchschnittliche konstante Erhöhungsrate vom Durchschnittswert TaAvj-1 auf den Durchschnittswert TaAvj steigen und die verstrichenen Zeiten RAV(4), AAV(2), AAV(1) und AAV(3) für die Zylinder unter Berücksichtung einer Erhöhung um eine durchschnittliche konstante Erhöhungsrate durch folgende Formeln ermittelt werden: AAV(4) = (TaAVj – TaAVj-1)*(1/8) + TaAVj-1 RAV(2) = (TaAVj – TaAVj-1)*(3/8) + TaAVj-1 AAV(1) = (TaAVj – TakVj-1)*(5/8) + TaAVj AAV(3) = (TaAVj – TaAVj-1)*(7/8) + TaAVj-1 More specifically, in this embodiment of the present invention, the average value TaAv j-1 {_ (Ta (1) j-1 + Ta (3) j-1 + Ta (4) j-1 + Ta (2) j-1 ) / 4 }, TaAv j (Ta (1) j + Ta (3) j + Ta (4) j + Ta (2) j ) / 4}, ... the elapsed times Ta (i) of four cylinders in a 720 ° - Crank angle span (j-1), (j) ... determined one after the other. Then it is assumed that the elapsed times Ta (4) j-1 , Ta (2) j-1 , Ta (1) and Ta (3) j increase by an average constant rate from the average value TaAv j-1 to the average value TaAv j increase and the elapsed times RAV (4), AAV (2), AAV (1) and AAV (3) for the cylinders, taking into account an increase by an average constant rate of increase, are determined by the following formulas: AAV (4) = (TaAVj - TaAV j-1 ) * (1/8) + TaAV j-1 RAV (2) = (TaAVj - TaAV j-1 ) * (3/8) + TaAV j-1 AAV (1) = (TaAVj - TakV j-1 ) * (5/8) + TaAVj AAV (3) = (TaAVj - TaAV j-1 ) * (7/8) + TaAV j-1

Als Nächstes werden die Abweichungsverhältnisse KAFC(4), KAFC(2), KAFC(1) und KAFC(3) für die real gemessenen verstrichenen Zeiten Ta(4)j-1, Ta(2)j-1, Ta(1) und Ta(3)j für die verstrichenen Zeiten AAV(4), AAV(2), AAV(1) und AAV(3) für die Zylinder auf der Basis folgender Formeln bestimmt: KRFC(4) = (Ta{4)j-1 – AAV(4)}/AAV(4) KAFC(2) = {Ta(2)j-1 – AAV(2)}/AAV(2) KRFC(1) = (Ta{1)j – AAV(1)}/AAV(1) KAFC{3) = {Ta(3)j – AAV(3)}/AAV(3) Next, the deviation ratios KAFC (4), KAFC (2), KAFC (1) and KAFC (3) for the real measured elapsed times Ta (4) j-1 , Ta (2) j-1 , Ta (1) and Ta (3) j for the elapsed times AAV (4), AAV (2), AAV (1) and AAV (3) for the cylinders, based on the following formulas: KRFC (4) = (Ta {4) j-1 - AAV (4)} / AAV (4) KAFC (2) = {Ta (2) j-1 - AAV (2)} / AAV (2) KRFC (1) = (Ta {1) j - AAV (1)} / AAV (1) KAFC {3) = {Ta (3) j - AAV (3)} / AAV (3)

Dann wird der Basiskorrekturkoeffizient KTaB(i) für jeden Zylinder mittels folgender Gleichung ermittelt: KTaB(i) = KTa(i)j-1 – KAFC(i)/4 Then the basic correction coefficient KTaB (i) is determined for each cylinder using the following equation: KTaB (i) = KTa (i) j-1 - KAFC (i) / 4

Der Basiskorrekturkoeffizient KTaB(i) wird also berechnet, indem man 1/4 des Abweichungsverhältnisses KAFC(i) vom Korrekturkoeffizienten KTa(i)j-1 bis dahin für jeden Zylinder subtrahiert.The basic correction coefficient KTaB (i) is thus calculated by subtracting 1/4 of the deviation ratio KAFC (i) from the correction coefficient KTa (i) j-1 until then for each cylinder.

Als Nächstes wird der Mittelwert tKTaM des Basiskorrekturkoeffizienten KTaB(i) nachfolgender Formel berechnet: tKTaM = {KTaB(1) + KTaB(2) + KTaB(3) + KTaB(4)}/4 Next, the mean tKTaM of the basic correction coefficient KTaB (i) is calculated using the following formula: tKTaM = {KTaB (1) + KTaB (2) + KTaB (3) + KTaB (4)} / 4

Nunmehr berechnet man den Korrekturkoeffizienten KTa (i) für die einzelnen Zylinder, indem man wie gezeigt den Durchschnittswert tKTaM vom Basiskorrekturkoeffizienten KTaB(i) nach folgender Formel subtrahiert: KTa(i) = KTaB(i) – tKTaM The correction coefficient KTa (i) for the individual cylinders is now calculated by subtracting the average value tKTaM from the basic correction coefficient KTaB (i) as shown in the following formula: KTa (i) = KTaB (i) - tKTaM

Der Korrekturkoeffizient KTa(i)j-1 wird nicht direkt auf der Basis des Abweichungsverhältnisses KAFC(i) korrigiert. Der Basiskorrekturkoeffizient KTaB(i) wird aus folgendem Grund ein Mal auf diese Art bestimmt.The correction coefficient KTa (i) j-1 is not corrected directly based on the deviation ratio KAFC (i). The basic correction coefficient KTaB (i) is determined once in this way for the following reason.

Wenn man zum Beispiel annimmt, dass nur für Zylinder Nr. 1 ein Abweichungsverhältnis KAFC(1) vorliegt und dass einzig der Korrekturkoeffizient KTa(1) von Zylinder Nr. 1 auf der Basis des Abweichungsverhältnisses KAFC(1) korrigiert wird, nimmt in diesem Fall nur die verstrichene Zeit Ta(1) von Zylinder Nr. 1 zu oder ab. Wenn die verstrichene Zeit Ta(1) nur von Zylinder Nr. 1 zu- oder abnimmt, tritt eine Abweichung in den Korrekturkoeffizienten KTa(2), KTa(3) und KTa(4) der verbleibenden Zylinder Nr. 2, Nr. 3 und Nr. 4 auf.For example, if you assume that only for Cylinder No. 1 has a deviation ratio KAFC (1) and that only the correction coefficient KTa (1) of cylinder no the basis of the deviation ratio KAFC (1) is corrected, in this case only takes the elapsed Time Ta (1) from cylinder No. 1 on or off. When the elapsed time Ta (1) increases or decreases only from cylinder No. 1, a deviation occurs in the correction coefficients KTa (2), KTa (3) and KTa (4) of the remaining ones Cylinder No. 2, No. 3 and No. 4 on.

Um zu verhindern, dass sich dieses Problem einstellt, wird der Basiskorrekturkoeffizient KTaB(i) einmal ermittelt und der Mittelwert tKTaM des Basiskorrekturkoeffizienten vom Basiskorrekturkoeffizienten KTaB(i) subtrahiert, um den Endkorrekturkoeffizienten KTa(i) zu bestimmen. Wenn also zum Beispiel der Basiskorrekturkoeffizient KTa(1) von Zylinder Nr. 1 steigt, wird der Mittelwert tKTaM des Basiskorrekturkoeffizienten von den Basiskorrekturkoeffizienten KTaB(i) aller Zylinder Nr. 1, Nr. 2, Nr. 3 und Nr. 4 subtrahiert. Wenn man auf diese Weise tKTaM von den Basiskorrekturkoeffizienten KTaB(i) aller Zylinder subtrahiert, wird der Korrekturkoeffizient KTa(1) von Zylinder Nr. 1 steigen, wogegen die Korrekturkoeffizienten KTa(2), KTa(3) und KTa(4) der verbleibenden Zylinder Nr. 2, Nr. 3 und Nr. 4 sinken und die Summe von KTa(1), KTa(2), KTa(3) und KTa(4) konstant auf Null gehalten wird. Wenn der Korrekturkoeffizient KTa(i) so korrigiert wird, dass die Summe aus KTa (1) , KTa (2) , KTa (3) und KTa (4) konstant auf Null gehalten wird, dann tritt – gleich, welcher Korrekturkoeffizient KTa(i) korrigiert wird – die Abweichung in den anderen Korrekturkoeffizienten KTa(i) nicht mehr auf.To prevent this problem from occurring, the basic correction coefficient KTaB (i) is determined once and the mean value tKTaM of the basic correction coefficient is subtracted from the basic correction coefficient KTaB (i) in order to determine the final correction coefficient KTa (i). For example, if the base correction coefficient KTa (1) of cylinder No. 1 increases, the mean value tKTaM of the base correction coefficient is subtracted from the base correction coefficients KTaB (i) of all cylinders No. 1, No. 2, No. 3 and No. 4. Subtracting tKTaM from the base correction coefficients KTaB (i) of all cylinders in this way will increase the correction coefficient KTa (1) of cylinder # 1, whereas the correction coefficients KTa (2), KTa (3) and KTa (4) of the remaining ones Cylinder No. 2, No. 3 and No. 4 sink and the sum of KTa (1), KTa (2), KTa (3) and KTa (4) is kept constant at zero. If the correction coefficient If KTa (i) is corrected so that the sum of KTa (1), KTa (2), KTa (3) and KTa (4) is kept constant at zero, then which correction coefficient KTa (i) is corrected occurs - The deviation in the other correction coefficients KTa (i) no longer.

Bei der in 15 gezeigten Ausführungsform gilt: Wenn die verstrichene Zeit Ta(1) von bspw. Zylinder Nr. 1 größer als die verstrichene Zeit.AAV(1) ist, wenn man eine Erhöhung um eine durchschnittliche konstante Erhöhungsrate annimmt, dann ergibt das Abweichungsverhältnis KAFC(1) für den Zylinder Nr. 1 einen positiven Wert.At the in 15 The embodiment shown here applies: If the elapsed time Ta (1) of, for example, cylinder No. 1 is greater than the elapsed time. AVS (1) is, if one assumes an increase by an average constant rate of increase, then the deviation ratio results in KAFC (1) a positive value for cylinder # 1.

Folglich wird der Korrekturkoeffizient KTa(1) so lange verringert, bis das Abweichungsverhältnis KAFC(1) Null wird. Wenn das Abweichungsverhältnis KAFC(1) Null wird, pegelt sich der Wert des Korrekturkoeffizienten KTAa(1) auf einen konstanten Wert ein. Zu diesem Zeitpunkt stimmt die verstrichene Zeit Ta(1) mit der verstrichenen Zeit AVV(1) überein. Wenn sich die Korrekturkoeffizienten KTa(1) für alle Zylinder auf konstante Werte einpegeln, wenn die Rotationsgeschwindigkeit des Rotors 14 konstant ist, werden die durch die Korrekturkoeffizienten KTa(i) korrigierten verstrichenen Zeiten Ta(i) der Zylinder alle gleich. Selbst wenn eine Abweichung bei den Abständen der Außenzähne entlang des Rotors 14 vorliegt, ist es daher möglich, die Drehmomentschwankung der Zylinder genau zu bestimmen.As a result, the correction coefficient KTa (1) is decreased until the deviation ratio KAFC (1) becomes zero. When the deviation ratio KAFC (1) becomes zero, the value of the correction coefficient KTAa (1) levels out at a constant value. At this time, the elapsed time Ta (1) matches the elapsed time AVV (1). When the correction coefficients KTa (1) are at constant values for all cylinders, when the speed of rotation of the rotor 14 is constant, the elapsed times Ta (i) of the cylinders corrected by the correction coefficients KTa (i) all become the same. Even if there is a deviation in the spacing of the external teeth along the rotor 14 is present, it is therefore possible to precisely determine the torque fluctuation of the cylinders.

Wenn man wieder zur Berechnung der Drehmomentschwankung zurückkehrt, kann festgestellt werden: Wenn eine Drehschwingung im Motorantriebssystem auftritt, schwankt die Differenz bei den verstrichenen Zeiten DTa(i) wie in 10 dargestellt. Diese Differenz in verstrichenen Zeiten DTa(i) schwankt jedoch selbst dann, wenn das Fahrzeug über eine unebene Straße fährt. Des Weiteren nimmt zu diesem Zeitpunkt der Grad der Schwankung von DTa(i) in einigen Fällen äußerst große Ausmaße an. 16 zeigt die Schwankung von DTa(i), wenn das Fahrzeug über eine unebene Straße fährt. AMP in 16 zeigt den Unterschied zwischen dem minimalen Wert DTa(i) und dem maximalen Wert von DTa(i), also der Amplitude. Wenn diese Amplitude AMP klein ist, ist es möglich, durch das oben beschriebene Verfahren die Leistungsschwankung und Drehmomentschwankung der Zylinder genau zu bestimmen.If one returns to the calculation of the torque fluctuation, it can be determined: If a torsional vibration occurs in the motor drive system, the difference in the elapsed times DTa (i) fluctuates as in 10 shown. However, this difference in elapsed times DTa (i) fluctuates even when the vehicle is driving on an uneven road. Furthermore, at this time, the degree of fluctuation in DTa (i) becomes extremely large in some cases. 16 shows the fluctuation of DTa (i) when the vehicle is traveling on an uneven road. AMP in 16 shows the difference between the minimum value DTa (i) and the maximum value of DTa (i), ie the amplitude. If this amplitude AMP is small, it is possible to precisely determine the power fluctuation and torque fluctuation of the cylinders by the method described above.

Wenn die Amplitude AMP indes groß wird, ist es nicht mehr möglich, die Leistungsschwankung oder Drehmomentschwankung des Zylinders genau zu bestimmen, und so den Maximal- oder Minimalwert von DTa(i) anzugeben. In 16 wird also zuerst unter der Annahme, dass der Zylinder mit dem Maximalwert DTa(i) Zylinder Nr. Nr. 1 ist, die Menge der Abnahme i aufgrund der Drehschwingung der angenommenen Differenz der verstrichenen Zeiten Kb(1) von Zylinder Nr. 1 anhand der Neigung der gestrichelten Linie ermittelt, die DTa(1) und DTa(3) in 11 verbindet.However, if the amplitude AMP becomes large, it is no longer possible to precisely determine the power fluctuation or torque fluctuation of the cylinder, and thus to indicate the maximum or minimum value of DTa (i). In 16 First, assuming that the cylinder with the maximum value DTa (i) is cylinder No. 1, the amount of decrease i due to the torsional vibration of the assumed difference of the elapsed times Kb (1) of cylinder No. 1 is based on the Inclination of the dashed line determines the DTa (1) and DTa (3) in 11 combines.

In der Nähe des Punktes, an dem DTa(1) einen Maximalwert annimmt, verändert sich der Betrag der Zunahme oder der Abnahme der verstrichenen Zeit aufgrund der Drehschwingungsänderungen entlang einer geraden Kurve, die DTa(2), DTa(1) und DTa(3) passiert. Wenn daher Kb(1) von Zylinder Nr. 1 anhand von DTa(1) und DTa(3) bestimmt wird, dann wird der Wert von Kb(1) beträchtlich kleiner als der reale Wert berechnet. Das Ergebnis ist, dass Kb(i) nicht mehr den korrekten Wert angibt, und sich daher die Beträge der Leistungsschwankung und der Drehmomentschwankung nicht mehr genau feststellen lassen. Wenn sich die Amplitude AMP vergrößert, geschieht dasselbe im Zylinder und es wird der Minimalwert DTa(i) erzeugt.Near the point where DTa (1) assumes a maximum value, changed the amount of increase or decrease in elapsed time due to the torsional vibration changes along a straight curve that passes DTa (2), DTa (1) and DTa (3). Therefore, if Kb (1) of cylinder # 1 using DTa (1) and DTa (3) is determined, the value of Kb (1) becomes considerably smaller than the real one Value calculated. The result is that Kb (i) is no longer the correct one Indicates value, and therefore the amounts of fluctuation in performance and the torque fluctuation can no longer be determined exactly. When the amplitude AMP increases, the same thing happens in the Cylinder and the minimum value DTa (i) is generated.

Außerdem weicht der Wert Kb(i) sogar in jenen Zylindern vom realen Wert ab, in denen sich DTa(i) beträchtlich vom Wert DTa(i) des Zylinders ändert, in dem direkt zuvor eine Verbrennung erfolgt ist, wodurch eine genaue Bestimmung von Leistungsschwankung und Drehmomentschwankung nicht mehr möglich ist. Daher gilt in dieser erfindungsgemäßen Ausführungsform: Wenn die Amplitude AMP groß ist, wird der Betrag der Leistungsschwankung oder der Betrag der Drehmomentschwankung nicht für jene Zylinder gesucht, die den maximalen oder den minimalen DTa(i)-Wert abgeben. Des Weiteren wird der Betrag der Leistungsschwankung oder der Drehmomentschwankung nicht für jene Zylinder gesucht, bei denen sich DTa(i) beträchtlich im Vergleich zum DTa(i)-Wert des Zylinders ändert, in dem direkt zuvor eine Verbrennung erfolgt ist.In addition, the value Kb (i) gives way from the real value even in those cylinders in which DTa (i) considerably of the cylinder's DTa (i) value, in which combustion took place immediately beforehand, which results in an exact Determination of power fluctuation and torque fluctuation no longer possible is. Therefore in this embodiment according to the invention the following applies: If the amplitude AMP is great becomes the amount of the power fluctuation or the amount of the torque fluctuation not for searched for those cylinders that have the maximum or minimum DTa (i) value submit. Furthermore, the amount of the fluctuation in performance or the torque fluctuation is not for searched for those cylinders where DTa (i) is considerable compared to the DTa (i) value of the cylinder changes in the one immediately before combustion has occurred.

Als Nächstes werden unter Bezugnahme auf 17 bis 28 die Routinen erläutert, mit denen der Schwankungsbetrag des Drehmomentes bei den einzelnen Zylindern ermittelt wird. Hierbei ist zu beachten, dass 28 den zeitlichen Ablauf zur Berechnung der verschiedenen Werte in den einzelnen Routinen zeigt.Next, referring to FIG 17 to 28 explains the routines with which the fluctuation amount of the torque is determined for the individual cylinders. It should be noted here that 28 shows the time sequence for calculating the different values in the individual routines.

17 zeigt eine Unterbrechungsroutine, die an jedem 30°-Kurbelwinkel ausgeführt wird. Unter Bezugnahme auf 17 wird zuerst die Routine (Schritt 100) zur Berechnung der Differenz der verstrichenen Zeiten DTa(i), dann der verstrichenen Zeit Tb(i) verfolgt. 17 shows an interrupt routine that is executed at every 30 ° crank angle. With reference to 17 the routine (step 100 ) to calculate the difference of the elapsed times DTa (i), then the elapsed time Tb (i).

Diese Routine wird in den 18 bis 21 dargestellt. Dann wird die Routine (Schritt 200) zur Prüfung der Zulässigkeit der Berechnung der Drehmomentschwankung verfolgt. Diese Routine wird in den 22 bis 24 dargestellt. Dann wird die Routine zur Berechnung der Drehmomentschwankung (Schritt 300) verfolgt. Diese Routine wird in 26 dargestellt. Danach wird die Routine zur Verarbeitung des Zählers CDLNIX, der zur Berechnung des Wertes der Drehmomentschwankung verwendet wird, verfolgt. Diese Routine wird in 27 dargestellt.This routine is used in the 18 to 21 shown. Then the routine (step 200 ) to check the admissibility of the calculation of the torque fluctuation. This routine is used in the 22 to 24 shown. Then the routine for calculating the torque fluctuation (step 300) is followed. This routine is in 26 shown. Thereafter, the routine for processing the CDLNIX counter used to calculate the value of the torque fluctuation is followed. This routine is in 27 shown.

Bezüglich 18 bis 21, die die Routine zur Berechnung der Differenz der verstrichenen Zeiten DTa(i) und der verstrichenen Zeit Tb (i) zeigen, wird zuerst – in Schritt 101 – die Zeit TIME als Wert TIME0 definiert. Die elektronische Steuereinheit 20 wird mit einem frei laufenden Zähler bereitgestellt, der die Zeit anzeigt. Die Zeit TIME wird aus dem Zählwert dieses frei laufenden Zählers berechnet. Als Nächstes wird – in Schritt 102 – die aktuelle Zeit TIME eingeholt. Daher gibt TIME0 von Schritt 101 die Zeit des 30°-Kurbelwinkels zuvor wieder.In terms of 18 to 21 showing the routine for calculating the difference of the elapsed times DTa (i) and the elapsed time Tb (i) is first - in step 101 - the time TIME is defined as the value TIME0. The electronic control unit 20 is provided with a free running counter that shows the time. The time TIME is calculated from the count value of this free running counter. Next is - in step 102 - obtained the current time TIME. Therefore, TIME0 returns from step 101 the time of the 30 ° crank angle again.

Als Nächstes wird in Schritt 103 entschieden, ob der Zylinder Nr. i derzeit bei ATDC 30° ist oder nicht. Wenn der Zylinder Nr. i derzeit nicht bei ATDC 30° ist, wird zu Schritt 111 gesprungen, wo entschieden wird, ob Zylinder Nr. i gegenwärtig bei ATDC 90° ist oder nicht. Wenn der Zylinder Nr. i derzeit nicht bei ATDC 90° ist, wird die Routine zur Berechnung der Differenz der verstrichenen Zeiten DTa(i) und der verstrichenen Zeit Tb (i) beendet.Next in step 103 decided whether cylinder No. i is currently at 30 ° ATDC or not. If cylinder # i is not currently at ATDC 30 °, go to step 111 jumped where it is decided whether cylinder no. i is currently at ATDC 90 ° or not. If cylinder # i is not currently at 90 ° ATDC, the routine for calculating the difference between the elapsed times DTa (i) and the elapsed time Tb (i) is ended.

Wenn – im Gegensatz hierzu – in Schritt 103 eingeschätzt wird, dass sich Zylinder Nr. i gegenwärtig bei ATDC 30° befindet, fährt die Routine mit Schritt 104 fort, wo die verstrichene Zeit Ta(i), die am 720°-Kurbelwinkel zuvor berechnet wurde, zu TaO(i) gemacht wird. Als Nächstes wird mit folgender Formel in Schritt 105 die letzte verstrichene Zeit Ta(i) von TDC bis ATDC 30° von Zylinder Nr. i berechnet: Ta(i) = (TIME – TIME0)·(1 + KTa (i)) If - in contrast - in step 103 If it is estimated that cylinder number i is currently at 30 ° ATDC, the routine continues to step 104 where the elapsed time Ta (i) calculated at the 720 ° crank angle is made TaO (i) , Next, use the following formula in step 105 the last elapsed time Ta (i) from TDC to ATDC 30 ° calculated from cylinder no. i: Ta (i) = (TIME - TIME0) · (1 + KTa (i))

Wenn sich zum Beispiel Zylinder Nr. 1 gerade bei ATDC 30° befindet, wird die letzte verstrichene Zeit Ta(1) von TDC bis ATDC 30° des Zylinders Nr. 1 folgendermaßen berechnet: (TIME – TIME0)*(1 + KTa(i).For example, if cylinder no. 1 is currently at ATDC 30 °, the last elapsed time Ta (1) from TDC to ATDC 30 ° of the cylinder No. 1 as follows calculated: (TIME - TIME0) * (1 + KTa (i).

Hier beschreibt (TIME – TIME0) die verstrichene Zeit Ta(1), die tatsächlich vom Kurbelwinkel-Sensor 15 gemessen wird, und KTa(1) ist ein Korrekturkoeffizient für die Korrektur des Fehlers aufgrund der Abstände der Außenzähne des Rotors 14. Folglich drückt die letzte verstrichene Zeit Ta(1), zu der man durch die Multiplikation (TIME – TIME0) mit (1 + KTa(1)) gelangt, die verstrichene Zeit genau aus, wenn sich die Kurbelwelle um einen Kurbelwinkel von 30° dreht.Here (TIME - TIME0) describes the elapsed time Ta (1) that is actually from the crank angle sensor 15 is measured, and KTa (1) is a correction coefficient for correcting the error due to the spacing of the external teeth of the rotor 14 , Consequently, the last elapsed time Ta (1), which is obtained by multiplying (TIME - TIME0) by (1 + KTa (1)), expresses the elapsed time exactly when the crankshaft rotates through a crank angle of 30 ° ,

Als Nächstes wird in Schritt 106 die gegenwärtig berechnete verstrichene Zeit Ta(i) um die zuvor berechnete verstrichene Zeit am Kurbelwinkel TaO(i) verringert, um die Differenz der verstrichenen Zeiten DTa(i) (= Ta(i) – TaO(i)) zu berechnen. Als Nächstes wird in Schritt 107 beurteilt, ob der Zylinder Nr. 2 gegenwärtig bei ATDC 30° liegt. Wenn sich der Zylinder Nr. 2 nicht bei ATDC 30° befindet, springt die Routine zu Schritt 110, wo der Flag XCAL(i – 1) des Zylinders (i – 1), in dem direkt zuvor eine Verbrennung erfolgt ist, gesetzt wird und anzeigt, dass der Betrag der Drehmomentschwankung berechnet werden muss (XCAL(i – 1) – "1"). Als Nächstes fährt die Routine mit Schritt 111 fort. In dieser erfindungsgemäßen Ausführungsform gilt: Da die Zündfolge wie erwähnt 1–3–4–2 lautet, wenn der Zylinder Nr. 1 gegenwärtig bei ATDC 30° ist, wird der Flag XCAL(2) des Zylinders Nr. 2, in dem direkt zuvor eine Verbrennung erfolgt ist, gesetzt und damit angezeigt, dass der Betrag der Drehmomentschwankung berechnet werden muss. Auf die gleiche Weise wird der Flag XCAL(1) gesetzt, wenn die letzte verstrichene Zeit Ta(3) wie in 28 beschrieben berechnet wird; wird der Flag XCAL(3) gesetzt, wenn die letzte verstrichene Zeit Ta(4) berechnet wird, und wird der Flag XCAL(4) gesetzt, wenn die letzte verstrichene Zeit Ta(2) berechnet wird.Next in step 106 the currently calculated elapsed time Ta (i) is decreased by the previously calculated elapsed time at the crank angle TaO (i) to calculate the difference in elapsed times DTa (i) (= Ta (i) - TaO (i)). Next, in step 107, it is judged whether cylinder # 2 is currently at 30 ° ATDC. If cylinder # 2 is not at 30 ° ATDC, the routine jumps to step 110 where the XCAL (i-1) flag of the cylinder (i-1) in which combustion occurred immediately before is set and indicates that the amount of torque fluctuation must be calculated (XCAL (i - 1) - "1"). Next, the routine continues to step 111. In this embodiment of the invention, since the firing order is 1-3-3-4 as mentioned when cylinder # 1 is currently at 30 ° ATDC, the flag XCAL (2) of cylinder # 2 will be in the immediately before combustion has occurred, is set, indicating that the amount of torque fluctuation must be calculated. In the same way, the flag XCAL (1) is set when the last elapsed time Ta (3) as in 28 described is calculated; the XCAL (3) flag is set when the last elapsed time Ta (4) is calculated, and the XCAL (4) flag is set when the last elapsed time Ta (2) is calculated.

Wenn andererseits in Schritt 111 eingeschätzt wird, dass sich Zylinder Nr. 1 gegenwärtig bei ATDC 90° befindet, fährt die Routine mit Schritt 112 fort, wo die zuvor am 720°-Kurbelwinkel berechnete verstrichene Zeit Tb(i) zu TbO(i) gemacht wird.If on the other hand in step 111 If it is estimated that cylinder # 1 is currently at 90 ° ATDC, the routine goes to step 112 where the elapsed time Tb (i) previously calculated at the 720 ° crank angle is made TbO (i).

Als Nächstes wird in Schritt 113 die letzte verstrichene Zeit Tb(i) von ATDC 60° bis ATDC 90° von Zylinder Nr, i mit folgender Formel berechnet: Tb(i) = (TIME – TIME0)*(1 + KTb(i)) Next in step 113 the last elapsed time Tb (i) from ATDC 60 ° to ATDC 90 ° from cylinder no, i calculated using the following formula: Tb (i) = (TIME - TIME0) * (1 + KTb (i))

Wenn sich zum Beispiel Zylinder Nr. 1 gerade bei ATDC 90° befindet, wird die letzte verstrichene Zeit Tb(1) von ATDC 60° bis ATDC 90° von Zylinder Nr. 1 nach (TIME – TIME0)*(1 + KTb(1)) berechnet. Da in diesem Fall ebenfalls der Wert (1 + KTb(1)) zur Korrektur des Fehlers aufgrund der Abstände der Außenzähne des Rotors 14 mit (TIME – TIME0). multipliziert wird, gibt die letzte verstrichene Zeit Tb (1) die verstrichene Zeit im Zyklus akkurat wieder, wenn sich die Kurbelwelle um einen Kurbelwinkel von 30° dreht. Als Nächstes wird in Schritt 114 eingeschätzt, ob sich der Zylinder Nr. 2 gegenwärtig bei ATDC 90° befindet. Wenn der Zylinder Nr. 2 zur Zeit nicht bei ATDC 90° ist, wird die Routine zur Berechnung der Differenz der verstrichenen Zeiten DTa(i) und der verstrichenen Zeit Tb(i) beendet.For example, if cylinder # 1 is currently at ATDC 90 °, the last elapsed time Tb (1) from ATDC 60 ° to ATDC 90 ° will be from cylinder # 1 to (TIME - TIME0) * (1 + KTb (1 )) calculated. Since in this case also the value (1 + KTb (1)) for correcting the error due to the spacing of the external teeth of the rotor 14 with (TIME - TIME0). is multiplied, the last elapsed time Tb (1) accurately represents the elapsed time in the cycle when the crankshaft rotates through a crank angle of 30 °. Next in step 114 estimated whether cylinder # 2 is currently at 90 ° ATDC. If cylinder # 2 is not currently at 90 ° ATDC, the routine for calculating the difference between the elapsed times DTa (i) and the elapsed time Tb (i) is ended.

Wenn andererseits in Schritt 107 eingeschätzt wird, dass der Zylinder Nr. 2 gegenwärtig bei ATDC 30° liegt, fährt die Routine mit Schritt 108 fort, wo mittels folgender Formel der Durchschnittswert TaAVj der verstrichenen Zeiten Ta(i) in der in 15 dargestellten 720°-Kurbelwinkelspannweite (j) berechnet wird: TaAVj =(Ta(1) + Ta(3) + Ta(4) + Ta(2))/4 If on the other hand in step 107 If it is estimated that cylinder # 2 is currently at 30 ° ATDC, the routine goes to step 108 where, using the following formula, the average value TaAVj of the elapsed times Ta (i) in the in 15 720 ° crank angle span (j) is calculated: TRAP j = (Ta (1) + Ta (3) + Ta (4) + Ta (2)) / 4

Ta(1), Ta(3), Ta(4) und Ta(2) entsprechen hier Ta(1), Ta(3)j-1, Ta(4)j-1 und Ta(2)j-1 in 15. Als Nächstes wird die Routine zur Berechnung des Korrekturkoeffizienten KTa(i) von Schritt 109 verfolgt. Diese Routine wird in 20 dargestellt.Ta (1), Ta (3), Ta (4) and Ta (2) here correspond to Ta (1), Ta (3) j-1 , Ta (4) j-1 and Ta (2) j-1 in 15 , Next, the routine for calculating the correction coefficient KTa (i) from step 109 tracked. This routine is in 20 shown.

Mit Bezug auf 20 wird zunächst in Schritt 120 eingeschätzt, ob die Kraftstoffzufuhr während eines Verzögerungsvorgangs angehalten wurde. Wenn die Kraftstoffzufuhr während eines Verzögerungsvorgangs nicht angehalten wird, endet der Verarbeitungszyklus. Wird die Kraftstoffzufuhr indes während eines Verzögerungsvorgangs angehalten, fährt die Routine mit Schritt 121 fort.Regarding 20 will step in first 120 assessed whether the fuel supply was stopped during a deceleration process. If the fuel supply is not stopped during a deceleration process, the processing cycle ends. However, if the fuel supply is stopped during a deceleration process, the routine goes to step 121 continued.

In Schritt 121 errechnen sich die in 15 dargestellten verstrichenen Zeiten AAV(4), AAV(2), AAV(1) und AAV(3), wenn man eine Erhöhung um eine durchschnittliche konstante Erhöhungsrate annimmt, wie folgt aus dem Durchschnittswert TaAvj der in Schritt 108 berechneten verstrichenen Zeiten Ta(i) und dem Durchschnittswert TaAvj-1 der zuvor berechneten verstrichenen Zeit Ta(i) an der 720°-Kurbelwinkelspannweite (j-1) von 15 (= (Ta(1) + Ta(3) + Ta(4) + Ta(2))/4) (wobei Ta(1), Ta(3), Ta(4) und Ta(2) dann Ta(1)j-1, Ta(3)j-1, Ta(4)j-1 und Ta(2)j-1 entsprechen (siehe 12). 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 In step 121 calculate the in 15 elapsed times shown AAV (4), AAV (2), AAV (1) and AAV (3), assuming an increase by an average constant rate of increase, follows from the average value TaAv j that in step 108 calculated elapsed times Ta (i) and the average value TaAv j-1 of the previously calculated elapsed time Ta (i) at the 720 ° crank angle span (j-1) of 15 (= (Ta (1) + Ta (3) + Ta (4) + Ta (2)) / 4) (where Ta (1), Ta (3), Ta (4) and Ta (2) then Ta ( 1) j-1 , Ta (3) j-1 , Ta (4) j-1 and Ta (2) j-1 correspond (see 12 ). AAV (4) = (TaAV j - TaAV j-1 ) * (1/8) + TaAV j-1 AAV (2) = (TaAV j - TaAV j-1 ) * (3/8) + TaAV j-1 AAV (1) = (TaAV j - TaAV j-1 ) * (5/8) + TaAV j-1 AAV (3) = (TaAV j - TaAV j-1 ) * (7/8) + TaAV j-1

Als Nächstes werden in Schritt 122 die Abweichungsverhältnisse KAFC (4), KAFC (2) , KAFC (1) und KAFC (3) für die real ermittelten verstrichenen Zeiten TaO(4), TaO(2), TaO(1) und TaO(3) für die verstrichenen Zeiten AAV(4), AAV(2), AAV(1) und AAV(3) auf der Basis folgender Formeln ermittelt: Hierbei entsprechen TaO(4), TaO(2), Ta(1) und Ta(3) den in 15 dargestellten Werten Ta(4)j-1, Ta(2)j-1, Ta(1)j-1 und Ta(3)j-1. KAFC(4) = (TaO(4) – AAV(4)}/AAV(4) KAFC(2) = (TaO(2) – AAV(2)}/AAV(2) KAFC(1) = (Ta(1) – AAV( 1 )}/AAV(1) KAFC(3) = (Ta(3) – AAV(3)}/AAV(3) Next in step 122 the deviation ratios KAFC (4), KAFC (2), KAFC (1) and KAFC (3) for the actually determined elapsed times TaO (4), TaO (2), TaO (1) and TaO (3) for the elapsed times AAV (4), AAV (2), AAV (1) and AAV (3) determined on the basis of the following formulas: Here TaO (4), TaO (2), Ta (1) and Ta (3) correspond to the in 15 shown values Ta (4) j-1 , Ta (2) j-1 , Ta (1) j-1 and Ta (3) j-1 . KAFC (4) = (TaO (4) - AAV (4)} / AAV (4) KAFC (2) = (TaO (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 in Schritt 123 eingeschätzt, ob die Bedingungen zum Lernen des Korrekturkoeffizienten KTa(i) erfüllt sind oder nicht. Wenn zum Beispiel eine vorbestimmte Zeit verstrichenen ist, nachdem die Kraftstoffzufuhr angehalten wurde, und die Motordrehzahl sich in einem vorbestimmten Bereich. bewegt und das Fahrzeug nicht über unebene Straßen fährt, zum Beispiel, wenn die Amplitude AMP der Differenz der verstrichenen Zeiten DTa(i) (siehe 16) einen Sollwert nicht überschreitet, kommt man zu dem Schluss, dass die Lernbedingungen erfüllt sind.Next in step 123 assessed whether the conditions for learning the correction coefficient KTa (i) are met or not. For example, when a predetermined time has passed after the fuel supply is stopped and the engine speed is in a predetermined range. moves and the vehicle does not drive on rough roads, for example when the amplitude AMP is the difference between the elapsed times DTa (i) (see 16 ) does not exceed a target value, it is concluded that the learning conditions are fulfilled.

Wenn die Lernbedingungen nicht erfüllt sind, fährt die Routine mit Schritt 128 fort, wo die kumulative Zählung KAFCI(i) der Menge der Abweichung KAFC(i) auf Null gesetzt wird. Als Nächstes wird in Schritt 129 die Zählung CKAFC zurückgesetzt.If the learning conditions are not met, the routine goes to step 128 where the cumulative count KAFCI (i) of the amount of deviation KAFC (i) is set to zero. Next in step 129 the CKAFC count is reset.

Wenn im Gegensatz hierzu die Lernbedingungen erfüllt werden, fährt die Routine mit Schritt 124 fort, wo der Betrag der Abweichung KAFC(i) für die Zylinder dem entsprechenden kumulativen Wert KAFCI(i) hinzugefügt wird. Als Nächstes wird in Schritt 125 die kumulative Zählung CKAFC um genau 1 erhöht. Anschließend wird in Schritt 126 eingeschätzt, ob die kumulative Zählung CKAFC den Wert "8" angenommen hat. Wenn die kumulative Zählung CKAFC nicht "8" ist, endet der Verarbeitungszyklus, wenn die kumulative Zählung CKAFC indes "8" wird, fährt die Routine mit Schritt 127 fort, wo der Korrekturkoeffizient KTa(i) berechnet wird. Wenn also der Betrag der Abweichung KAFC(i) für jeden Zylinder acht Mal kumulativ addiert wird, fährt die Routine mit Schritt 127 fort, wo der Korrekturkoeffizient KTa(i) berechnet wird.In contrast, if the learning conditions are met, the routine goes to step 124 where the amount of deviation KAFC (i) for the cylinders is added to the corresponding cumulative value KAFCI (i). Next in step 125 the cumulative count CKAFC increased by exactly 1. Then in step 126 estimated whether the cumulative count CKAFC has taken the value "8". If the cumulative count CKAFC is not "8", the processing cycle ends, but if the cumulative count CKAFC becomes "8", the routine goes to step 127 where the correction coefficient KTa (i) is calculated. So, if the amount of deviation KAFC (i) is cumulatively added eight times for each cylinder, the routine goes to step 127 where the correction coefficient KTa (i) is calculated.

In Schritt 127 wird der Korrekturkoeffizient KTa(i) folgendermaßen berechnet, bzw. zuerst wird der kumulative Wert KAFCI(i) durch KAFCE(i) ersetzt. Als Nächstes wird der Basiskorrekturkoeffizient KTaB(i) nach folgender Formel berechnet: KTaB(i) = KTa(i) – (KAFCI(i)/8)/4 In step 127 the correction coefficient KTa (i) is calculated as follows, or first the cumulative value KAFCI (i) is replaced by KAFCE (i). Next, the basic correction coefficient KTaB (i) is calculated using the following formula: KTaB (i) = KTa (i) - (KAFCI (i) / 8) / 4

Wenn also eine Abweichung von der verstrichenen Zeit AAC(i) auftritt, wenn angenommen wird, die real ermittelte verstrichene Zeit Ta(i) steigt um eine durchschnittliche konstante Erhöhungsrate, wird der Wert des aktuellen Korrekturkoeffizienten KTa(i), korrigiert um genau 1/4 des Durchschnittswertes des kumulativen Wertes KAFCI(i), zum Basiskorrekturkoeffizienten KTaB(i) gemacht. Als Nächstes wird der Mittelwert tKTaM des Basiskorrekturkoeffizienten KTaB(i) für alle Zylinder mittels folgender Formel berechnet: tKTaM = (KTaB(1) + KTaB(2) + KTaB(3) + KTaB(4))/4 If a deviation from the elapsed time AAC (i) occurs if it is assumed that the real elapsed time Ta (i) increases by an average constant rate of increase, the value of the current correction coefficient KTa (i) is corrected by exactly 1 / 4 of the average value of the cumulative value KAFCI (i), made the base correction coefficient KTaB (i). Next, the mean tKTaM of the base correction coefficient KTaB (i) is calculated for all cylinders using the following formula: tKTaM = (KTaB (1) + KTaB (2) + KTaB (3) + KTaB (4)) / 4

Nunmehr wird der Basiskorrekturkoeffizient KTaB(i) wie nachfolgend dargestellt zur Aktualisierung des Korrekturkoeffizienten KTa(i) nach folgender Formel durch den Durchschnittswert tKTaM korrigiert. KTa(i) = KTaB(i) – tKTaM Now the basic correction coefficient KTaB (i) is corrected as shown below to update the correction coefficient KTa (i) according to the following formula by the average value tKTaM. KTa (i) = KTaB (i) - tKTaM

Auf diese Weise werden die Korrekturkoeffizienten KTa(i) für alle Zylinder zu dem Zeitpunkt aktualisiert, zu dem die Kraftstoffeinspritzung während eines Verzögerungsvorgangs angehalten wird.In this way, the correction coefficients KTa (i) for all cylinders updated at the time the fuel injection during a deceleration operation is stopped.

Wenn andererseits in Schritt 114 (19) eingeschätzt wird, dass sich Zylinder Nr. 2 gegenwärtig bei ATDC 90° befindet, fährt die Routine mit Schritt 115 fort, wo das gleiche Verfahren wie zur Bestimmung von TaAVi verwendet wird, um den Durchschnittswert TbAVj der verstrichenen Zeit Tb (i) in der 720°-Kurbelwinkelspannweite zu berechnen, wozu folgende Formel zur Anwendung kommt: TbAVj = (Tb (1) + Tb(3) + Tb(4) + Tb(2))/4 If on the other hand in step 114 ( 19 ) If it is estimated that cylinder # 2 is currently at 90 ° ATDC, the routine goes to step 115 where the same method as used to determine TaAV i is used to calculate the average value TbAVj of the elapsed time Tb (i) in the 720 ° crank angle span using the following formula: TbAVj = (Tb (1) + Tb (3) + Tb (4) + Tb (2)) / 4

Als Nächstes verfolgt man die Routine zur Berechnung des Korrekturkoeffizienten KTb(i) von Schritt 116. Diese Routine wird in 21 dargestellt.Next, follow the routine for calculating the correction coefficient KTb (i) from step 116 , This routine is in 21 shown.

Mit Bezug auf 21 wird zuerst in Schritt 130 eingeschätzt, ob die Kraftstoffzufuhr während eines Verzögerungsvorganges angehalten wurde. Wenn die Kraftstoffzufuhr während eines Verzögerungsvorganges nicht angehalten wurde, wird der Verarbeitungszyklus beendet. Wurde die Kraftstoffzufuhr indes während eines Verzögerungsvorganges angehalten, fährt die Routine mit Schritt 131 fort. Im Schritt 131 werden bei Annahme einer durchschnittlichen konstanten Erhöhungsrate die verstrichenen Zeiten BAV(4), BAV(2), BAV(1) und BAV(3) aus dem Durchschnittswert TbAVj der verstrichenen Zeit Tb(i), die in Schritt 115 berechnet wurde, und dem Durchschnittswert TbAVj-1 der verstrichenen Zeit Tb(i) in der einen vorherigen 720°-Kurbelwinkelspannweite berechnet (= (Tb(1) + Tb(3) + Tb(4) + Tb(2))/4). 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 Regarding 21 will step in first 130 assessed whether the fuel supply was stopped during a deceleration process. If the fuel supply has not been stopped during a deceleration process, the processing cycle is ended. If the fuel supply has been stopped during a deceleration process, the routine goes to step 131 continued. In step 131 Assuming an average constant rate of increase, the elapsed times BAV (4), BAV (2), BAV (1) and BAV (3) from the average value TbAV j of the elapsed time Tb (i), which in step 115 and the average value TbAV j-1 of the elapsed time Tb (i) in the previous 720 ° crank angle span (= (Tb (1) + Tb (3) + Tb (4) + Tb (2)) / 4). BAV (4) = (TbAV j - TbAV j-1 ) * (1/8) + TbAV j-1 BAV (2) = (TbAV j - TbAV j-1 ) * (3/8) + TbAV j-1 BAV (1) = (TbAV j - TbAV j-1 ) * (5/8) + TbAV j-1 BAV (3) = (TbAV j - TbAV j-1 ) * (7/8) + TbAV j-1

Als Nächstes werden die Abweichungsverhältnisse KBFC(4), KBFC(2), KBFC(1) und KBFC(3) für die real ermittelten verstrichenen Zeiten TbO(4), TbO(2), Tb(1) und Tb(3) für die verstrichenen Zeiten BAV(4), BAV(2), BAV(1) und BAV(3) mittels folgender Formeln bestimmt: KBFC(4) = (TbO(4) – BAV(4)}/BAV(4) KBFC(2) = (TbO(2) – BAV(2)}/BAV(2) KBFC(1) = (Tb(1) – BAV(1)}/BAV(1) KBFC(3) = (Tb(3) – BAV(3)}/BAV(3) Next, the deviation ratios KBFC (4), KBFC (2), KBFC (1) and KBFC (3) for the real elapsed times TbO (4), TbO (2), Tb (1) and Tb (3) for the elapsed times BAV (4), BAV (2), BAV (1) and BAV (3) are determined using the following formulas: KBFC (4) = (TbO (4) - BAV (4)} / BAV (4) KBFC (2) = (TbO (2) - BAV (2)} / BAV (2) KBFC (1) = (Tb (1) - BAV (1)} / BAV (1) KBFC (3) = (Tb (3) - BAV (3)} / BAV (3)

Nunmehr wird in Schritt 133 eingeschätzt, ob dem Korrekturkoeffizienten KTb(i) entsprochen wurde oder nicht. Wie oben erläutert, gilt: Wenn eine vorbestimmte Zeit verstrichenen ist, nachdem die Kraftstoffzufuhr anhielt, die Motordrehzahl sich innerhalb eines vorbestimmten Bereiches bewegt und das Fahrzeug nicht über unebene Straßen fährt, zum Beispiel, wenn die Amplitude AMP der Differenz der verstrichenen Zeiten DTa(i) (siehe 16) den Sollwert nicht überschreitet, geht man davon aus, dass die Lernbedingungen erfüllt sind. Wenn die Lernbedingungen nicht erfüllt sind, fährt die Routine mit Schritt 138 fort, wo der kumulative Wert KBFCI(i) des Abweichungsbetrags KFBC(i) auf Null gesetzt wird. Als Nächstes wird in Schritt 139 die Zählung CKBFC zurückgesetzt.Now in step 133 assessed whether the correction coefficient KTb (i) was met or not. As explained above, when a predetermined time has passed after the fuel supply stops, the engine speed is within a predetermined range and the vehicle does not drive on rough roads, for example, when the amplitude AMP is the difference in the elapsed times DTa (i ) (please refer 16 ) does not exceed the target value, it is assumed that the learning conditions are fulfilled. If the learning conditions are not met, the routine goes to step 138 where the cumulative value KBFCI (i) of the amount of deviation KFBC (i) is set to zero. Next in step 139 the CKBFC count is reset.

Wenn im Gegensatz hierzu die Lernbedingungen erfüllt sind, fährt die Routine mit Schritt 134 fort, wo der Abweichungsbetrag KBFC(i) hinsichtlich der Zylinder dem entsprechenden kumulativen Wert KBFCI(i) hinzugefügt wird, sodann wird die kumulative Zählung CKBFC in Schritt 135 um genau 1 erhöht. Anschließend wird in Schritt 136 eingeschätzt, ob die kumulative Zählung CKBFC den Wert "8" angenommen hat oder nicht. Wenn die kumulative Zählung CKBFC nicht "8" beträgt, wird der Verarbeitungszyklus beendet. Wenn die kumulative Zählung CKBFC den Wert "8" angenommen hat, fährt die Routine mit Schritt 137 fort, in dem der Korrekturkoeffizient KTb(i) berechnet wird. Wenn also der Abweichungsbetrag KBFC(i) für jeden Zylinder acht Mal kumulativ addiert wird, fährt die Routine mit Schritt 137 fort, wo der Korrekturkoeffizient KTb(i) berechnet wird.In contrast, if the learning conditions are met, the routine goes to step 134 where the deviation amount KBFC (i) with respect to the cylinders is added to the corresponding cumulative value KBFCI (i), then the cumulative count CKBFC in step 135 increased by exactly 1. Then in step 136 estimated whether the cumulative count CKBFC has taken the value "8" or not. If the cumulative count CKBFC is not "8", the processing cycle is ended. If the cumulative count CKBFC is "8", the routine goes to step 137 in which the correction coefficient KTb (i) is calculated. Thus, if the deviation amount KBFC (i) is cumulatively added eight times for each cylinder, the routine goes to step 137 where the correction coefficient KTb (i) is calculated.

Im Schritt 137 wird der Korrekturkoeffizient KTb(i) folgendermaßen berechnet. Zunächst wird der kumulative Wert KBFCI(i) durch KBFCE(i) ersetzt. Dann wird der Basiskorrekturkoeffizient KTbB(i) nach folgender Formel berechnet: KTbB(i) = KTb(i) – (KBFCE(i)/8)/4 In step 137 the correction coefficient KTb (i) is calculated as follows. First, the cumulative value KBFCI (i) is replaced by KBFCE (i). Then the basic correction coefficient KTbB (i) is calculated using the following formula: KTbB (i) = KTb (i) - (KBFCE (i) / 8) / 4

Wenn also unter der Annahme, die real ermittelte verstrichene Zeit Tb(i) steigt um eine durchschnittliche konstante Erhöhungsrate, eine Abweichung von der verstrichenen Zeit BAV(i) auftritt, wird der Wert des aktuellen Korrekturkoeffizienten KTb(i), korrigiert um genau 1/4 des Durchschnittswertes des kumulativen Wertes KBFCE(i), zum Basiskorrekturkoeffizienten KTbB(i) gemacht. Als Nächstes wird der Mittelwert tKTbM des Basiskorrekturkoeffizienten KTbB(i) für alle Zylinder mittels folgender Formel berechnet: tKTbM = (KTbB(1) + KTbB(2) + KTbB(3) + KTbB(4))/4 If, on the assumption that the real elapsed time Tb (i) increases by an average constant rate of increase, a deviation from the elapsed time BAV (i) occurs, the value of the current correction coefficient KTb (i) is corrected by exactly 1 / 4 of the average value of the cumulative value KBFCE (i), made the base correction coefficient KTbB (i). Next, the mean tKTbM of the base correction coefficient KTbB (i) is calculated for all cylinders using the following formula: tKTbM = (KTbB (1) + KTbB (2) + KTbB (3) + KTbB (4)) / 4

Als Nächstes wird, wie folgende Formel zeigt – der Basiskorrekturkoeffizient KTbB(i) um den Durchschnittswert tKTbM korrigiert, um den Korrekturkoeffizienten KTb (i) zu aktualisieren: KTb(i) = KTbB(i) – tKTbM Next, as the following formula shows, the base correction coefficient KTbB (i) is corrected by the average value tKTbM to update the correction coefficient KTb (i): KTb (i) = KTbB (i) - tKTbM

Auf diese Weise werden die Korrekturkoeffizienten KTb(i) für alle Zylinder zu dem Zeitpunkt, zu dem die Kraftstoffeinspritzung während eines Verzögerungsvorgangs angehalten wird, aktualisiert.In this way, the correction coefficients KTb (i) for all cylinders at the time the fuel injection while a delay process stopped, updated.

Als Nächstes wird die Routine für die Zulässigkeitsprüfung zur Berechnung der Drehmomentschwankung (wie in 22 bis 24 gezeigt) mit Bezug auf 25 erläutert. Diese Routine ist so eingestellt, dass sie die Berechnung des Betrages der Drehmomentschwankung für einen bestimmten Zylinder verhindert, wenn die Amplitude AMP der Schwankung der Differenz der verstrichenen Zeiten DTa(i) (siehe 16) einen zu großen Wert einnimmt, weil das Fahrzeug über eine unebene Straße fährt.Next, the admissibility check routine for calculating the torque fluctuation (as in 22 to 24 shown) with reference to 25 explained. This routine is set to prevent the calculation of the amount of torque fluctuation for a particular cylinder when the amplitude AMP of the fluctuation in the difference in the elapsed times DTa (i) (see 16 ) takes too much value because the vehicle is on an uneven road moves.

Mit Bezug auf 22 bis 24 wird also zuerst in Schritt 201 eingeschätzt, ob sich einer der Zylinder gegenwärtig bei. ATDC 30° befindet oder nicht. Wenn sich keiner der Zylinder gegenwärtig bei ATDC 30° befindet, wird der Verarbeitungszyklus beendet. Wenn sich jedoch einer der Zylinder bei ATDC 30° befindet, fährt die Routine mit Schritt 202 fort.Regarding 22 to 24 so will step in first 201 assessed whether one of the cylinders is currently at. ATDC 30 ° or not. If none of the cylinders are currently at 30 ° ATDC, the processing cycle is ended. However, if one of the cylinders is at 30 ° ATDC, the routine goes to step 202 continued.

In den Schritten 202 bis 204 wird die maximale Differenz der verstrichenen Zeiten DT30max berechnet, wenn die Differenz der verstrichenen Zeiten DTa(i) erst steigt und dann absinkt. In Schritt 202 wird also eingeschätzt, ob der in Schritt 106 von 18 berechnete Wert DTa(i) größer ist als die maximale Differenz der verstrichenen Zeiten DT30max oder nicht.In the steps 202 to 204 the maximum difference of the elapsed times DT30max is calculated if the difference of the elapsed times DTa (i) first increases and then decreases. In step 202 it is therefore assessed whether the step 106 of 18 calculated value DTa (i) is greater than the maximum difference of the elapsed times DT30max or not.

Wenn DT30max > DTa(i), springt die Routine zu Schritt 205, wenn jedoch DT30max ≤ DTa(i), fährt die Routine mit Schritt 203 fort, wo DTa(i) auf DT30max gesetzt wird. Dann wird im Schritt 204 der Erhöhungs-Flag XMXREC, der das Ansteigen von DTa(i) anzeigt, gesetzt (XMXREC – "1"), anschließend fährt die Routine mit Schritt 205 fort.If DT30max> DTa (i), the routine goes to step 205 however, if DT30max ≤ DTa (i), the routine goes to step 203 where DTa (i) is set to DT30max. Then in the crotch 204 the increase flag XMXREC, which indicates the increase in DTa (i), is set (XMXREC - "1"), and then the routine goes to step 205 continued.

In den Schritten 205 bis 207 wird die minimale Differenz der verstrichenen Zeiten DT30min, wenn die Differenz der verstrichenen Zeiten DTa(i) erst steigt und dann absinkt, berechnet. In Schritt 205 wird also eingeschätzt, ob der Wert DTa(i), der in Schritt 106 von 18 berechnet wurde, kleiner ist als die minimale Differenz der verstrichenen Zeiten DT30min oder nicht. Wenn DT30min < DTa(i), springt die Routine zu Schritt 208, während die Routine, wenn DT30min ≥ DTa(i), zu Schritt 206 springt, wo DTa(i) zu DT30min wird. Als Nächstes wird in Schritt 207 der Abnahme-Flag XMNREC zur Anzeige der Abnahme von DTa(i) gesetzt (XMNREC – "1"), dann fährt die Routine mit Schritt 208 fort.In the steps 205 to 207 the minimum difference in the elapsed times DT30min is calculated when the difference in the elapsed times DTa (i) first increases and then decreases. In step 205 it is therefore estimated whether the value DTa (i) that in step 106 of 18 was calculated, is smaller than the minimum difference of the elapsed times DT30min or not. If DT30min <DTa (i), the routine goes to step 208 while the routine to step if DT30min ≥ DTa (i) 206 jumps where DTa (i) becomes DT30min. Next in step 207 the decrease flag XMNREC to indicate the decrease in DTa (i) is set (XMNREC - "1"), then the routine goes to step 208 continued.

In den Schritten 208 bis 214 wird bei Überschreitung des Sollwerts A0 durch die Amplitude AMP der Schwankung von DTa(i) (16) der Verbots-Flag gesetzt, der verhindert, dass der Betrag der Drehmomentschwankung für den Zylinder berechnet wird, der den maximalen DTa(i) erzeugt. In Schritt 208 wird also eingeschätzt, ob DT30max > DTa(i) und XMXREC = "1" oder nicht. Wenn DT30max 5 DTa(i) oder der Erhöhungs-Flag XMXREC zurückgesetzt ist (XMXREC = "0"), springt die Routine zu Schritt 215, wenn jedoch DT30max > DTa(i) und XMX REC = "1", dann fährt die Routine mit Schritt 209 fort.In the steps 208 to 214 if the setpoint A 0 is exceeded by the amplitude AMP of the fluctuation of DTa (i) ( 16 ) the prohibition flag is set, which prevents the torque fluctuation amount from being calculated for the cylinder producing the maximum DTa (i). In step 208 it is estimated whether DT30max> DTa (i) and XMXREC = "1" or not. If the DT30max 5 DTa (i) or the increment flag XMXREC is reset (XMXREC = "0"), the routine goes to step 215 however, if DT30max> DTa (i) and XMX REC = "1", the routine goes to step 209 continued.

Wie in 25 gezeigt, hat also zur Zeit t1 die Differenz der verstrichenen Zeiten DTa(1) von Zylinder Nr. 1 das Maximum eingenommen. In diesem Fall fährt die Routine in der Unterbrechungsroutine, die zur Zeit t1 ausgeführt wurde, mit den Schritten 202 bis 203 fort, wo DTa(1) auf DT30max gesetzt wird, anschließend wird im Schritt 204 der Maximum-Flag XMXREC gesetzt.As in 25 shown, the difference between the elapsed times DTa (1) of cylinder No. 1 has reached the maximum at time t1. In this case, the routine proceeds with the steps in the interrupt routine that was executed at time t1 202 to 203 where DTa (1) is set to DT30max, then in step 204 the maximum flag XMXREC is set.

Bei der zur Zeit t2 von 25 ausgeführten Unterbrechungsroutine springt die Routine zu Schritt 202 zu. Schritt 205. Zu diesem Zeitpunkt fährt die Routine, da man in Schritt 208 davon ausgeht, dass DT30max > DTa(3) und XMX REC = "1", in Schritt 209 fort. Die Routine fährt also in Schritt 209 zur Zeit t2 fort, wenn die verstrichene Zeit DTa(i) zu sinken beginnt.At the time t 2 of 25 executed interrupt routine, the routine jumps to step 202 to. step 205 , At this point, the routine continues since you are in step 208 assumes that DT30max> DTa (3) and XMX REC = "1" in step 209 continued. The routine therefore moves in step 209 continues at time t2 when the elapsed time DTa (i) begins to decrease.

Im Schritt 209 wird die maximale Differenz der verstrichenen Zeiten DT30max zu TMXREC gemacht. Als Nächstes wird im Schritt 210 die minimale Differenz der verstrichenen Zeiten TMNREC (die während des später erläuterten Schrittes 216 ermittelt wird) von der maximalen Differenz der verstrichenen Zeiten TMXREC subtrahiert, um so die Amplitude AMP der Schwankung von DTa(i) zu berechnen. Dann wird in Schritt 211 der Anfangswert der Minimaldifferenz der verstrichenen Zeiten DT30min zu DTa(i) gemacht. Dann wird in Schritt 212 der Erhöhungs-Flag XMXREC zurückgesetzt (XMXREC – "0"). Als Nächstes wird in Schritt 213 eingeschätzt, ob die Amplitude AMP größer als der Sollwert A0 ist oder nicht. Wenn AMP < A0, springt die Routine zu Schritt 215. Wenn im Gegensatz hierzu AMP ≥ A0, springt die Routine zu Schritt 214, wo der Verbots-Flag für die Berechnung der Drehmomentschwankung XNOCAL gesetzt wird (XNOCAL – "1"). In der Unterbrechungsroutine, die zur Zeit t2 von 25 wie oben erläutert ausgeführt wird, wird also der Betrag der Drehmomentschwankung von Zylinder Nr. 1 berechnet. Daher gilt in dieser Unterbrechungsroutine: Wenn AMP ≥ A0 und wenn der Verbots-Flag für die Berechnung der Drehmomentschwankung XNOCAL gesetzt ist, ist die Berechnung des Betrages der Drehmomentschwankung von Zylinder Nr. Nr. 1, also die Berechnung des Betrages der Drehmomentschwankung des Zylinders, der den maximalen DTa(i)-Wert erzeugt, verboten.In step 209 the maximum difference between the elapsed times DT30max and TMXREC is made. Next is in step 210 the minimum difference of the elapsed times TMNREC (those during the step explained later 216 is subtracted from the maximum difference of the elapsed times TMXREC so as to calculate the amplitude AMP of the fluctuation in DTa (i). Then in step 211 the initial value of the minimum difference of the elapsed times DT30min made DTa (i). Then in step 212 the increment flag XMXREC is reset (XMXREC - "0"). Next in step 213 assessed whether the amplitude AMP is greater than the target value A 0 or not. If AMP <A 0 , the routine goes to step 215 , In contrast, if AMP ≥ A 0 , the routine goes to step 214 , where the prohibition flag for calculating the torque fluctuation XNOCAL is set (XNOCAL - "1"). In the interruption routine, which at time t 2 of 25 As explained above, the amount of torque fluctuation of cylinder # 1 is calculated. Therefore, in this interruption routine, if AMP ≥ A 0 and if the prohibition flag for the calculation of the torque fluctuation XNOCAL is set, the calculation of the amount of the torque fluctuation of cylinder No. 1 is, i.e. the calculation of the amount of the torque fluctuation of the cylinder that generates the maximum DTa (i) value is prohibited.

In den Schritten 215 bis 221 wird bei Überschreitung des Sollwerts A0 durch die Amplitude AMP der Schwankung von DTa(i) der Verbots-Flag gesetzt, der die Berechnung des Betrages der Drehmomentschwankung für den Zylinder verhindert, der den Minimalwert DTa(i) aufweist. In Schritt 215 wird also eingeschätzt, ob DT30min < DTa(i) und ob XMNREC = "l" oder nicht.In the steps 215 to 221 If the setpoint A 0 is exceeded by the amplitude AMP of the fluctuation in DTa (i), the prohibition flag is set, which prevents the calculation of the amount of torque fluctuation for the cylinder which has the minimum value DTa (i). In step 215 it is therefore assessed whether DT30min <DTa (i) and whether XMNREC = "1" or not.

Wenn DT30min > DTa (i) oder der Abnahme-Flag XMNREC zurückgesetzt wird (XMNREC = "0"), springt die Routine zu Schritt 222, wenn DT30min jedoch < DTa (i) und XMNREC = "1", springt die Routine zu Schritt 216.If DT30min> DTa (i) or the decrease flag XMNREC is reset (XMNREC = "0"), the routine jumps to step 222 however, if DT30min <DTa (i) and XMNREC = "1", the routine goes to step 216 ,

Wie in 25 zur Zeit t3 gezeigt, wird also davon ausgegangen, dass die Differenz der verstrichenen Zeiten DTa(1) von Zylinder Nr. 1 zum Minimum geworden sind. In diesem Fall fährt die Routine bei der zur Zeit t3 ausgeführten Unterbrechungsroutine mit Schritt 205 mit Schritt 206 fort, wo DTa(1) auf DT30min gesetzt wird, dann wird in Schritt 207 der Abnahme-Flag XMNREC gesetzt. Auf der anderen Seite springt die zur Zeit t4 von 25 ausgeführte Unterbrechungsroutine von Schritt 205 zu Schritt 208. Zu diesem Zeitpunkt fährt die Routine in Schritt 216 fort, da in Schritt 215 davon ausgegangen wird, dass DT30min < DTa(3) und XMNREC = "1". Die Routine fährt also zur Zeit t4 in Schritt 216 fort, wo sich die Differenz der verstrichenen Zeiten DTa (i) zu erhöhen beginnt.As in 25 Shown at time t3, it is assumed that the difference in elapsed times DTa (1) from cylinder # 1 has become the minimum. In this case, the routine goes to step in the interrupt routine executed at time t3 205 with step 206 where DTa (1) is set to DT30min, then in step 207 the acceptance flag XMNREC is set. On the other hand, it jumps off at time t 4 25 interrupt routine executed from step 205 to step 208 , At this point, the routine goes to step 216 away because in step 215 it is assumed that DT30min <DTa (3) and XMNREC = "1". The routine thus goes to step t4 216 where the difference in elapsed times DTa (i) begins to increase.

In Schritt 216 wird die Minimaldifferenz der verstrichenen Zeiten DT30min zu TMNREC gemacht. Dann wird in Schritt 217 die minimale Differenz der verstrichenen Zeiten TMNREC von der maximalen Differenz der verstrichenen Zeiten TMXREC subtrahiert, wobei die Amplitude AMP der Schwankung von DTa (i) berechnet wird. Als Nächstes wird in Schritt 218 der Anfangswert der Maximaldifferenz der verstrichenen Zeiten DT30max zu DTa(i) gemacht. Dann wird in Schritt 219 der Abnahme-Flag XMNREC zurückgesetzt (XMNREC – "0"). Nunmehr wird in Schritt 220 eingeschätzt, ob die Amplitude AMP größer als der Sollwert A0 ist oder nicht. Wenn AMP < A0, springt die Routine zu Schritt 222, Wenn dagegen AMP ≥ A0, fährt die Routine in Schritt 221 fort, wo der Verbots-Flag für die Berechnung der Drehmomentschwankung XNOCAL gesetzt wird (XNOCAL – "1"). In der zur Zeit t4 von 25 ausgeführten Unterbrechungsroutine wird also der Betrag der Drehmomentschwankung von Zylinder Nr. 1 berechnet. Daher wird in dieser Unterbrechungsroutine, bei AMP ≥ A0 und bei gesetztem Verbots-Flag XNOCAL für die Berechnung der Drehmomentschwankung, die Berechnung des Betrages der Drehmomentschwankung von Zylinder Nr. Nr. 1, also die Berechnung des Betrages der Drehmomentschwankung jenes Zylinders, bei dem DTa(i) den kleinsten Wert annimmt, verboten.In step 216 the minimum difference of the elapsed times DT30min to TMNREC is made. Then in step 217 subtract the minimum difference of the elapsed times TMNREC from the maximum difference of the elapsed times TMXREC, the amplitude AMP of the fluctuation of DTa (i) being calculated. Next in step 218 the initial value of the maximum difference of the elapsed times DT30max made DTa (i). Then in step 219 the decrease flag XMNREC is reset (XMNREC - "0"). Now in step 220 assessed whether the amplitude AMP is greater than the target value A 0 or not. If AMP <A 0 , the routine goes to step 222 On the other hand, if AMP ≥ A 0 , the routine goes to step 221 where the prohibition flag for calculating the torque fluctuation XNOCAL is set (XNOCAL - "1"). At the time t4 of 25 interrupt routine executed, the amount of torque fluctuation of cylinder # 1 is calculated. Therefore, in this interruption routine, with AMP ≥ A 0 and when the prohibition flag XNOCAL is set for the calculation of the torque fluctuation, the calculation of the amount of torque fluctuation of cylinder No. 1, i.e. the calculation of the amount of torque fluctuation of the cylinder in which DTa (i) takes the smallest value, prohibited.

In den Schritten 222 und 223 wird die Berechnung des Betrages der brehmomentschwankung eines Zylinders, in dem sich die verstrichene Zeit DTa(i) deutlich ändert, verboten. Das heißt in Schritt 222 wird nicht eingeschätzt, ob |Ta(i – 2) – DTa(i – 1)| größer als K0*|DTa(i – 1) – DTa(i)| ist oder nicht. Hier ist die Konstante K0 ein Wert von ca. 3,0 bis 4,0. Wenn in Schritt 222 eingeschätzt wird, dass |DTa (i – 2) – DTa (i – 1)| < K0*|DTa(i – 1) – DTa(i)|, wird der Verarbeitungszyklus beendet. Wird jedoch eingeschätzt, dass |DTa(i – 2) – DTa (i – 1) | ≥ K0*|DTa(i – 1) – DTa(i)|, fährt die Routine mit Schritt 223 fort, wo der Verbots-Flag für die Berechnung der Drehmomentschwankung XNOCAL gesetzt wird.In the steps 222 and 223 the calculation of the amount of torque fluctuation of a cylinder in which the elapsed time DTa (i) changes significantly is prohibited. That means in step 222 it is not estimated whether | Ta (i - 2) - DTa (i - 1) | greater than K 0 * | DTa (i - 1) - DTa (i) | is or not. Here the constant K 0 is a value of approx. 3.0 to 4.0. If in step 222 it is estimated that | DTa (i - 2) - DTa (i - 1) | <K 0 * | DTa (i - 1) - DTa (i) |, the processing cycle is ended. However, it is estimated that | DTa (i - 2) - DTa (i - 1) | ≥ K 0 * | DTa (i - 1) - DTa (i) |, the routine goes to step 223 where the prohibition flag for calculating the torque fluctuation XNOCAL is set.

Wenn die Unterbrechungsroutine also zur Zeit t3 von 25 ist, wird eingeschätzt, ob zu diesem Zeitpunkt |DTa (4) – DTa (2)| ≥ K0*|DTa(2) – DTa (1)| gilt oder nicht. Wie in 25 dargestellt, gilt: Wenn DTa (2) sich schnell von DTa (4) ändert, wird |DTa(4) – DTa(2)| größer als K0*|DTa(2) – DTa(1)|. Zu diesem Zeitpunkt wird der Verbots-Flag für die Berechnung der Drehmomentschwankung gesetzt. Ferner wird die Berechnung des Betrages der Drehmomentschwankung von Zylinder Nr. 2, in dem sich die verstrichene Zeit DTa (i) deutlich geändert hat, verboten.If the interrupt routine at time t3 of 25 , it is estimated whether | DTa (4) - DTa (2) | ≥ K 0 * | DTa (2) - DTa (1) | applies or not. As in 25 shown, the following applies: If DTa (2) changes rapidly from DTa (4), | DTa (4) - DTa (2) | greater than K 0 * | DTa (2) - DTa (1) |. At this time, the prohibition flag for calculating the torque fluctuation is set. Furthermore, the calculation of the amount of torque fluctuation of cylinder No. 2 in which the elapsed time DTa (i) has changed significantly is prohibited.

Als Nächstes wird die in 26 dargestellte Routine zur Berechnung der Drehmomentschwankung erläutert. Mit Bezug auf 26 wird zuerst in Schritt 301 eingeschätzt, ob der Flag XCAL(i – 1) gesetzt ist, der anzeigt, dass der Betrag der Drehmomentschwankung des Zylinders (i – 1), in dem direkt zuvor eine Verbrennung erfolgt ist, berechnet werden muss. Wenn der Flag XCAL(i – 1) ="0", wenn also der Flag XCAL(i – 1) nicht gesetzt ist, wird der Verarbeitungszyklus beendet. Wenn im Gegensatz hierzu der Flag XCAL(i – 1) = "1", wenn also der Flag XCAL(i – 1) gesetzt ist, fährt die Routine in Schritt 302 fort, wo der Flag XCAL(i – 1) zurückgesetzt wird, dann fährt die Routine mit Schritt 303 fort.Next, the in 26 illustrated routine for calculating the torque fluctuation explained. Regarding 26 will step in first 301 estimated whether the flag XCAL (i-1) is set, which indicates that the amount of torque fluctuation of the cylinder (i-1) in which combustion has occurred directly before must be calculated. If the flag XCAL (i - 1) = "0", ie if the flag XCAL (i - 1) is not set, the processing cycle is ended. In contrast, if the flag XCAL (i-1) = "1", that is, if the flag XCAL (i-1) is set, the routine goes to step 302 where the XCAL (i-1) flag is reset, the routine goes to step 303 continued.

Im Schritt 303 wird eingeschätzt, ob der Verbots-Flag XNOCAL zurückgesetzt ist, der die Berechnung des Betrages der Drehmomentschwankung für jenen Zylinder verhindert, in dem direkt zuvor eine Verbrennung einmal erfolgt ist (XNOCAL = "0"). Wenn dieses Verbots-Flag gesetzt ist (XNOCAL = "1"), fährt die Routine in Schritt 313 fort, wo der Verbots-Flag XNOCAL zurückgesetzt wird. Wenn im Gegensatz hierzu das Verbots-Flag zurückgesetzt ist, fährt die Routine in Schritt 304 fort. Die Routine fährt also nur dann mit Schritt 304 fort, wenn der Flag XCAL gesetzt und der Verbots-Flag XNOCAL zurückgesetzt ist.In step 303 it is estimated whether the prohibition flag XNOCAL is reset, which prevents the calculation of the amount of the torque fluctuation for the cylinder in which a combustion occurred immediately before (XNOCAL = "0"). If this prohibition flag is set (XNOCAL = "1"), the routine goes to step 313 where the prohibition flag XNOCAL is reset. In contrast, if the prohibition flag is reset, the routine goes to step 304 continued. The routine then only moves with step 304 continues if the flag XCAL is set and the prohibition flag XNOCAL is reset.

Im Schritt 304 wird die angenommene Differenz der verstrichenen Zeiten Kb(i – 1) von Zylinder Nr. (i – 1), in dem direkt zuvor eine Verbrennung erfolgt ist, (siehe 10 und 11) mittels folgender Formel berechnet: Kb(i – 1) = {2*DTa(i – 1) + DTa(i)}/3 In step 304 the assumed difference of the elapsed times Kb (i - 1) of cylinder no. (i - 1) in which combustion took place immediately before (see 10 and 11 ) calculated using the following formula: Kb (i - 1) = {2 * DTa (i - 1) + DTa (i)} / 3

Als Nächstes wird in Schritt 305 das reale Ausgangsdrehmoment DN(i – 1) des Zylinders (i – 1), in dem direkt zuvor eine Verbrennung erfolgt ist, mittels folgender Formel berechnet: DN(i – 1) = {30°/Tb(i – 1)}2 – {30°/Ta(i – 1)}2 Next in step 305 the real output torque DN (i - 1) of the cylinder (i - 1) in which combustion has taken place directly beforehand is calculated using the following formula: DN (i - 1) = {30 ° / Tb (i - 1)} 2 - {30 ° / Ta (i - 1)} 2

Schließlich wird in Schritt 306 das angenommene Ausgangsdrehmoment DN(i – 1) von Zylinder Nr. (i – 1) berechnet, in dem direkt zuvor eine Verbrennung erfolgt ist. Hierzu dient folgende Formel: DNS(i – 1) = {30°/(TbO(i – 1) + Kb(i – 1))}2 – {30°/Ta (i – 1)}2 Finally in step 306 calculates the assumed output torque DN (i - 1) of cylinder number (i - 1) in which combustion took place immediately before. The following formula is used for this: DNS (i - 1) = {30 ° / (TbO (i - 1) + Kb (i - 1))} 2 - {30 ° / Ta (i - 1)} 2

Als Nächstes wird in Schritt 307 wie in folgender Formel dargestellt das reale Ausgangsdrehmoment DN(i – 1) vom angenommenen Ausgangsdrehmoment DNS(i – 1) subtrahiert, um den Betrag der Drehmoment-Grundschwankung DLNB(i – 1) von Zylinder Nr. (i-1) zu berechnen, in dem direkt zuvor eine Verbrennung erfolgt ist. DLNB (i – 1) = DNS (i – 1) – DN (i – 1) Next in step 307 subtract the real output torque DN (i - 1) from the assumed output torque DNS (i - 1) as shown in the following formula to calculate the magnitude of the basic torque fluctuation DLNB (i - 1) of cylinder number (i-1), in which a combustion took place directly beforehand. DLNB (i - 1) = DNS (i - 1) - DN (i - 1)

Als Nächstes wird in Schritt 308 der Sollwert KDLN aus dem Durchschnitt der Motordrehzahl NAVE bestimmt (Schritt 409 in 27), wozu das Schema in 13 dient. Als Nächstes wird in Schritt 309, wie in folgender Formel dargestellt, der Sollwert KDLN vom Betrag der Drehmoment-Grundschwankung DLNB(i – 1) subtrahiert, um den Betrag der Drehmomentschwankung DLN(i – 1) von Zylinder Nr. (i – 1) zu berechnen, in dem direkt zuvor eine Verbrennung erfolgt ist. DLN(i – 1) = DLNB(i – 1) – KDLN Next in step 308 the setpoint KDLN from the average of the engine speed NAVE determined (step 409 in 27 ), what the scheme in 13 serves. Next in step 309 As shown in the following formula, the target value KDLN is subtracted from the amount of the basic torque fluctuation DLNB (i - 1) in order to calculate the amount of the torque fluctuation DLN (i - 1) from cylinder no. (i - 1) in the direct before combustion has occurred. DLN (i - 1) = DLNB (i - 1) - KDLN

Wenn also zum Beispiel der Zylinder Nr. 3 bei ATDC 30° ist und der Flag XCAL(1) gesetzt ist, wird die Differenz der verstrichenen Zeiten Kb(1) für den Zylinder Nr. 1 in Schritt 304 berechnet, dann wird das reale Ausgangsdrehmoment DN(1) des Zylinders Nr. 1 in Schritt 305 berechnet, das angenommene Ausgangsdrehmoment DNS(1) von Zylinder Nr. 1 wird in Schritt 306 berechnet; hiernach wird der Betrag der Drehmoment-Grundschwankung DLNB (1) von Zylinder Nr. 1 in Schritt 307 berechnet, dann wird der Sollwert KDLN in Schritt 308 berechnet, und schließlich wird der Betrag der Drehmomentschwankung DLN(1) von Zylinder Nr. 1 in Schritt 309 berechnet.For example, if cylinder # 3 is 30 ° at ATDC and the flag XCAL ( 1 ) is set, the difference in the elapsed times Kb (1) for the No. 1 cylinder in step 304 is calculated, then the real output torque DN (1) of the No. 1 cylinder in step 305 is calculated, the assumed output torque DNS (1) of cylinder No. 1 is in step 306 calculated; after that, the amount of basic torque fluctuation DLNB (1) of cylinder No. 1 in step 307 is calculated, then the setpoint KDLN is calculated in step 308 is calculated, and finally the amount of torque fluctuation DLN (1) of cylinder # 1 in step 309 calculated.

Hierbei ist zu beachten, dass beim Bestimmen des Betrags der Leistungsschwankung GLN(i – 1) der Zylinder von Schritt 305 bis Schritt 309 folgende Berechnung ausgeführt werden kann.It should be noted here that when determining the amount of power fluctuation GLN (i - 1) the cylinder of step 305 until step 309 following calculation can be performed.

Anstatt also in Schritt 305 die reale Menge der Drehmomentschwankung DN(i – 1) zu bestimmen, wird nach folgender Formel der reale Betrag der Leistungsschwankung GN(i – 1) berechnet: GN(i – 1) = {30°/Tb(i – 1)} – {30°/Ta(i – 1)} So instead of in step 305 To determine the real amount of torque fluctuation DN (i - 1), the real amount of power fluctuation GN (i - 1) is calculated using the following formula: GN (i - 1) = {30 ° / Tb (i - 1)} - {30 ° / Ta (i - 1)}

Dann wird in Schritt 306 anstelle der Bestimmung des angenommenen Betrags der Drehmomentschwankung DNS (i – 1) nach folgender Formel der angenommene Betrag der Leistungsschwankung GNS(i – 1) berechnet: GNS(i – 1) = {30°/(TbO(i – 1) + Kb(i – 1))} – {30°/Ta(i – 1)} Then, in step 306, instead of determining the assumed amount of torque fluctuation DNS (i-1), the assumed amount of power fluctuation GNS (i-1) is calculated using the following formula: GNS (i - 1) = {30 ° / (TbO (i - 1) + Kb (i - 1))} - {30 ° / Ta (i - 1)}

Dann wird in Schritt 307 anstelle der Bestimmung des Betrages der Drehmoment-Grundschwankung DNS(i – 1) nach folgender Formel der Betrag der Leistungs-Grundschwankung GLNB(i – 1) berechnet; GLNB(i – 1) = GNS(i – 1) – GN(i – 1) Then in step 307 instead of determining the amount of the basic torque fluctuation DNS (i - 1) using the following formula, the amount of the basic power fluctuation GLNB (i - 1) is calculated; GLNB (i - 1) = GNS (i - 1) - GN (i - 1)

Dann wird in Schritt 308 anstelle des Sollwerts KDLN für den Betrag der Drehmomentschwankung der Sollwert KGLN für den Betrag der Leistungsschwankung bestimmt. Der Sollwert KGLN repräsentiert die Anstiegsmenge beim Betrag der Leistungsschwankung aufgrund des höheren Anteils der Drehschwingung des Motorantriebssystems und der Drehschwingung der Kurbelwelle selbst. Der Sollwert KGLN wird experimentell ermittelt und im Voraus im ROM 22 gespeichert.Then in step 308 Instead of the setpoint KDLN for the amount of the torque fluctuation, the setpoint KGLN for the amount of the power fluctuation is determined. The setpoint KGLN represents the amount of increase in the amount of the power fluctuation due to the higher proportion of the torsional vibration of the engine drive system and the torsional vibration of the crankshaft itself. The setpoint KGLN is determined experimentally and stored in the ROM 22 in advance.

Die Routine fährt dann bei der Berechnung des Betrags der Drehmomentschwankung DLN(i – 1) in Schritt 309 mit Schritt 310 fort, wo eingeschätzt wird, ob der Betrag der Drehmomentschwankung DLN(i – 1) positiv ist oder nicht. Wenn DLN(i – 1) ≥ 0, springt die Routine zu Schritt 312, wo der Anforderungs-Flag zur kumulativen Addition XCDLN(i – 1) gesetzt wird, der anzeigt, dass der Betrag der Drehmomentschwankung DLN(i – 1) des Zylinders, in dem direkt zuvor eine Verbrennung erfolgt ist, kumulativ hinzugefügt werden muss(XCDLN(i – 1) – "1"). Wenn im Gegensatz hierzu DLN(i – 1) < 0, fährt die Routine in Schritt 311 fort, wo DLN(i – 1) auf Null gesetzt wird. Dann fährt die Routine mit Schritt 312 fort. Es ist zu beachten, dass das Drehmoment eines jeden Zylinders wiederholt steigt und fällt. Daher reicht es in diesem Fall zur Bestimmung des Betrags der Drehmomentschwankung aus, entweder die Anstiegsmenge des Drehmoments oder die Abnahmemenge des Drehmoments kumulativ hinzuzufügen. In der Routine in 26 wird nur die Abnahmemenge des Drehmoments kumulativ hinzugefügt. Daher gilt wie oben erläutert: Wenn DLN(i – 1) < 0, wird DLN(i – 1) auf Null gesetzt.The routine then goes to step in calculating the amount of torque fluctuation DLN (i-1) 309 with step 310 where it is judged whether or not the amount of torque fluctuation DLN (i-1) is positive. If DLN (i - 1) ≥ 0, the routine goes to step 312 , where the cumulative addition request flag XCDLN (i - 1) is set, which indicates that the amount of torque fluctuation DLN (i - 1) of the cylinder in which combustion has occurred immediately before must be added cumulatively (XCDLN (i-1) - "1"). In contrast, if DLN (i-1) <0, the routine goes to step 311 where DLN (i-1) is set to zero. Then the routine goes to step 312 continued. It should be noted that the torque of each cylinder rises and falls repeatedly. Therefore, in this case, to determine the amount of torque fluctuation, it is sufficient to add either the amount of increase in torque or the amount of decrease in torque cumulatively. In the routine in 26 only the amount of torque is added cumulatively. Therefore, as explained above, if DLN (i - 1) <0, DLN (i - 1) is set to zero.

Als Nächstes wird mit Bezug auf 27 der Zähler CDLNIX erläutert. Mit dem Zählwert des Zählers CDLNIX wird der Wert der Drehmomentschwankung des Motors zu berechnet, wie weiter unten noch erläutert wird.Next, with reference to 27 the counter CDLNIX explains. With the count value of the CDLNIX counter, the value of the torque fluctuation of the motor is calculated, as will be explained further below.

Mit Bezug auf 27 wird zunächst in Schritt 401 eingeschätzt, ob der Zylinder Nr. 3 zur Zeit bei ATDC 30° ist oder nicht. Wenn der Zylinder Nr. 3 gegenwärtig nicht bei ATDC 30° ist, wird der Verarbeitungszyklus beendet. Wenn dagegen der Zylinder Nr. 3 gegenwärtig bei ATDC 30° ist, fährt die Routine in Schritt 402 fort. Im Schritt 402 wird eingeschätzt, ob die Bedingungen zur Berechnung des Werts der Drehmomentschwankung erfüllt sind oder nicht. Wenn zum Beispiel die Bedingungen, um das Luft-Kraftstoff-Verhältnis mager zu machen, nicht erfüllt sind oder wenn die Änderungsmenge pro Einheitszeit ΔQ/N der Motorlast Q/N über dem Sollwert liegt oder wenn die Änderungsmenge pro Einheitszeit ΔN der Motordrehzahl über einem Sollwert liegt, dann wird eingeschätzt, dass die Bedingungen zur Berechnung des Werts der Drehmomentschwankung nicht erfüllt sind, während zu anderen Zeiten eingeschätzt wird, dass die Bedingungen zur Berechnung des Drehmomentschwankungswertes erfüllt sind.Regarding 27 will step in first 401 estimated whether or not cylinder # 3 is currently at 30 ° at ATDC. If cylinder # 3 is not currently at 30 ° ATDC, the processing cycle is ended. Conversely, if cylinder # 3 is currently at 30 ° ATDC, the routine goes to step 402 continued. In step 402 it is judged whether the conditions for calculating the value of the torque fluctuation are satisfied or not. For example, if the conditions to lean the air-fuel ratio are not met, or if the amount of change per unit time ΔQ / N of the engine load Q / N is above the target value, or if the amount of change per unit time ΔN of the engine speed is above a target value is then judged that the conditions for calculating the torque fluctuation value are not satisfied, while it is estimated at other times that the conditions for calculating the torque fluctuation value are satisfied.

Wenn im Schritt 402 eingeschätzt wird, dass die Bedingungen zur Berechnung des Drehmomentschwankungswertes erfüllt sind, fährt die Routine in Schritt 408 fort, wo der Zählwert CDLNIX um genau 1 erhöht wird. Die Erhöhung dieses Zählwertes CDLNIAX wird immer dann ausgeführt, wenn der Zylinder Nr. 3 ATDC 30° erreicht, also bei jedem 720°-Kurbelwinkel. Als Nächstes werden in Schritt 409 der Durchschnittswert der Motordrehzahl NAVE und der Durchschnittswert QAVE der Ansaugluftmenge Q im Zyklus berechnet, von dem Punkt aus, an dem die Erhöhung des Zählwertes CDLNIX gestartet wird, bis zu dem Punkt, an dem der Zählwert CDLNIX zurückgesetzt wird.If in step 402 If it is estimated that the conditions for calculating the torque fluctuation value are met, the routine proceeds in step 408 where the CDLNIX count is increased by exactly 1. The increase in this CDLNIAX count value is always carried out when cylinder no. 3 ATDC reaches 30 °, ie at every 720 ° crank angle. Next in step 409 the Average value of the engine speed N AVE and the average value Q AVE of the intake air quantity Q calculated in the cycle from the point at which the increase in the count value CDLNIX is started to the point at which the count value CDLNIX is reset.

Wenn wiederum in Schritt 402 eingeschätzt wird, dass die Bedingungen zur Berechnung des Drehmomentschwankungswertes nicht erfüllt sind, dann fährt die Routine mit Schritt 403 fort, wo der Zählwert CDLNIX zurückgesetzt wird. Als Nächstes wird in Schritt 404 der kumulative Wert DLNI(i) des Drehmomentschwankungswertes DLN(i) für die einzelnen Zylinder (dieser kumulative Wert wird mittels einer noch zu erläuternden Routine berechnet) zurückgesetzt.If again in step 402 If it is judged that the conditions for calculating the torque fluctuation value are not met, the routine goes to step 403 where the CDLNIX count is reset. Next in step 404 the cumulative value DLNI (i) of the torque fluctuation value DLN (i) for the individual cylinders (this cumulative value is calculated using a routine to be explained below).

Als Nächstes wird in Schritt 405 der kumulative Wert DLNI(i) für die einzelnen Zylinder (dieser kumulative Wert wird mittels der noch zu erläuternden Routine berechnet) zurückgesetzt.Next in step 405 the cumulative value DLNI (i) for the individual cylinders (this cumulative value is calculated using the routine to be explained below).

Dann wird in Schritt 406 der Zielwert der Drehmomentschwankung LVLLFB berechnet. In dieser erfindungsgemäßen Ausführungsform wird, wie später erläutert, das Luft-Kraftstoff-Verhältnis per Rückführung gesteuert, so dass der berechnete Wert der Drehmomentschwankung zum Zielwert der Drehmomentschwankung LVLLFB wird. Wie in 29A gezeigt, wo der äquivalente Schwankungswert durch die durchgehende Linie dargestellt ist, steigt dieser Zielwert der Drehmomentschwankung LVLLFB in dem Maße, in dem die Motorlast Q/N steigt und die Motordrehzahl N steigen. Dieser Zielwert der Drehmomentschwankung LVLLFB wird in Form eines Schemas in 29B als Funktion der Motorlast Q/N und der Motordrehzahl N im Voraus im ROM 22 gespeichert. Als Nächstes wird in Schritt 407 der Wert der Drehmomentschwankung DLNISM(i) eines jeden Zylinders (dieser Wert der Drehmomentschwankung wird durch die später erläuterte Routine berechnet) zum Zielwert der Drehmomentschwankung LVLLFB gemacht, der anhand des Schemas von 29B berechnet wird.Then in step 406 the target value of the torque fluctuation LVLLFB is calculated. In this embodiment of the invention, as explained later, the air-fuel ratio is controlled by feedback, so that the calculated value of the torque fluctuation becomes the target value of the torque fluctuation LVLLFB. As in 29A shown where the equivalent variation value is shown by the solid line, this target value of the torque variation LVLLFB increases as the engine load Q / N increases and the engine speed N increases. This target value of the LVLLFB torque fluctuation is in the form of a diagram in 29B stored in ROM 22 as a function of engine load Q / N and engine speed N. Next in step 407 the value of the torque fluctuation DLNISM (i) of each cylinder (this value of the torque fluctuation is calculated by the routine explained later) is made the target value of the torque fluctuation LVLLFB, which is based on the scheme of 29B is calculated.

31 zeigt die wiederholt ausgeführte Hauptroutine. In dieser Hauptroutine wird zuerst die Routine zur Berechnung des Drehmomentschwankungswertes (Schritt 600) ausgeführt. Diese Routine wird in 32 und 33 dargestellt. Als Nächstes wird die Routine zur Berechnung des Magergrenzen-Rückführkorrekturkoeffizienten FLLFB (Schritt 700) ausgeführt. Diese Routine wird in 34 dargestellt. Dann wird, wenn der vorbestimmte Kurbelwinkel erreicht ist, die Routine zur Berechnung der Kraftstoffeinspritzzeit (Schritt 800) ausgeführt. Diese Routine wird in 35 dargestellt. Danach werden die anderen Routinen (Schritt 900) ausgeführt. 31 shows the main routine executed repeatedly. In this main routine, the routine for calculating the torque fluctuation value (step 600 ) executed. This routine is in 32 and 33 shown. Next, the routine for calculating the lean boundary feedback correction coefficient FLLFB (step 700 ) executed. This routine is in 34 shown. Then, when the predetermined crank angle is reached, the routine for calculating the fuel injection time (step 800 ) executed. This routine is in 35 shown. Then the other routines (step 900 ) executed.

Als Nächstes wird die Routine zur Berechnung des in 32 und 33 dargestellten Drehmomentschwankungswertes erläutert.Next, the routine for calculating the in 32 and 33 torque fluctuation value shown explained.

Mit Bezug auf 32 und 33 wird zuerst im Schritt 601 eingeschätzt, ob der Anforderungs-Flag zur kumulativen Addition XDLN(i) gesetzt ist, der zeigt, dass der Betrag der Drehmomentschwankung DLN(i) kumulativ hinzugefügt werden muss (XDLN(i) = "1"). Wenn der Anforderungs-Flag zur kumulativen Addition XDLN(i) nicht gesetzt ist, springt die Routine zu Schritt 609. Wenn der Anforderungs-Flag zur kumulativen Addition XDLN(i) indes gesetzt ist, fährt die Routine mit Schritt 602 fort. In Schritt 602 wird der Anforderungs-Flag zur kumulativen Addition XDLN(i) zurückgesetzt. Als Nächstes wird in Schritt 603 der Betrag der Drehmomentschwankung DLN(i) zum kumulativen Wert DLNI(i) des Betrages der Drehmomentschwankung hinzugefügt. Anschließend wird in Schritt 604 der kumulative Zählwert CDLNI(i) um genau 1 erhöht. Das bedeutet zum Beispiel in Schritt 601, wenn der Anforderungs-Flag zur kumulativen Addition CDLN(1) für Zylinder Nr. 1 gesetzt ist, dieser Flag XDLN(1) in Schritt 602 zurückgesetzt wird, dann wird der kumulative Wert DLNI(1) des Betrages der Drehmomentschwankung in Schritt 603 berechnet, und der kumulative Zählwert CDLNI(i) in Schritt 604 um genau 1 erhöht.Regarding 32 and 33 will step first 601 estimated whether the request flag for cumulative addition XDLN (i) is set, which shows that the amount of torque fluctuation DLN (i) must be added cumulatively (XDLN (i) = "1"). If the cumulative addition request flag XDLN (i) is not set, the routine goes to step 609 , If, however, the cumulative addition request flag XDLN (i) is set, the routine goes to step 602 continued. In step 602 the request flag for the cumulative addition XDLN (i) is reset. Next in step 603 the amount of torque fluctuation DLN (i) is added to the cumulative value DLNI (i) of the amount of torque fluctuation. Then in step 604 the cumulative count CDLNI (i) increased by exactly 1. That means for example in step 601 If the cumulative addition request CDLN (1) is set for cylinder # 1, this flag XDLN (1) in step 602 is reset, then the cumulative value DLNI (1) of the amount of torque fluctuation in step 603 calculated, and the cumulative count CDLNI (i) in step 604 increased by exactly 1.

Als Nächstes wird in Schritt 605 eingeschätzt, ob der kumulative Zählwert CDLNI(i) "8" geworden ist oder nicht. Wenn CDLNI(i) nicht "8" ist, springt die Routine zu Schritt 609. Wird CDLNI(i) indes "8", fährt die Routine in Schritt 606 fort, wo der Wert der Drehmomentschwankung DL NISM(i) der Zylinder nach folgender Formel berechnet wird: DLNISM(i) = DLNISM(i) + {DLNI(i) – DLNISM(i)}/4 Next in step 605 judged whether the cumulative count CDLNI (i) has become "8" or not. If CDLNI (i) is not "8", the routine goes to step 609 , Meanwhile, if CDLNI (i) becomes "8", the routine goes to step 606 where the value of the torque fluctuation DL NISM (i) of the cylinders is calculated using the following formula: DLNISM (i) = DLNISM (i) + {DLNI (i) - DLNISM (i)} / 4

Als Nächstes wird in Schritt 607 der kumulative Wert DLNI(i) des Betrages der Drehmomentschwankung für die Zylinder zurückgesetzt. Als Nächstes wird in Schritt 608 der kumulative Zählwert CDLNI(i) zurückgesetzt.Next in step 607 the cumulative value DLNI (i) of the amount of torque fluctuation for the cylinders is reset. Next in step 608 the cumulative count CDLNI (i) is reset.

Besteht also ein Unterschied zwischen dem berechneten kumulativen Wert DLNI(i) des Betrages der Drehmomentschwankung und dem zuvor verwendeten Betrag der Drehmomentschwankung DLNISM(i), wird der Differenzwert {DLNI(i) – DLNISM(i)}, multipliziert mit 1/4, dem Betrag der Drehmomentschwankung DLNISM(i) hinzugefügt. Wenn daher zum Beispiel der kumulative Zählwert CDLNI(1) für den Zylinder Nr. 1 "8" wird, wird im Schritt 606 der Wert der Drehmomentschwankung DLNISM(1) berechnet.If there is a difference between the calculated cumulative value DLNI (i) of the amount of the torque fluctuation and the previously used amount of the torque fluctuation DLNISM (i), the difference value {DLNI (i) - DLNISM (i)}, multiplied by 1/4, added to the amount of torque fluctuation DLNISM (i). Therefore, for example, if the cumulative count CDLNI (1) for the cylinder No. 1 becomes "8", the step becomes 606 the value of the torque fluctuation DLNISM ( 1 ) calculated.

Als Nächstes wird in Schritt 609 eingeschätzt, ob der Zählwert CDLNIX, der in der 27 dargestellten Routine berechnet wurde, "8" geworden ist oder nicht. Wenn CDLNIX nicht "8" ist, wird der Verarbeitungszyklus beendet. Wenn CDLNIX jedoch "8" wird, fährt die Routine in Schritt 610 fort, wo der Mittelwert DLNISM (= {DLNISM(1) + DLNISM (2) + DLNISM (3) + DLNISM (4)}/4) der mittleren Drehmomentschwankungswerte DLNISM (i) der Zylinder berechnet wird. Daraufhin wird in Schritt 611 der Zählwert CDLNIX zurückgesetzt. Auf diese Weise wird der Wert DLNISM, der den Betrag der Drehmomentschwankung des Motors wiedergibt, berechnet.Next in step 609 estimated whether the count value CDLNIX, which in the 27 shown routine has been calculated, has become "8" or not. If CDLNIX is not "8", the processing cycle is ended. However, when CDLNIX becomes "8", the routine goes to step 610 where the mean DLNISM (= {DLNISM (1) + DLNISM (2) + DLNISM (3) + DLNISM (4)} / 4) of the mean torque fluctuation values DLNISM (i) of the cylinders is calculated. Then step 611 the count value CDLNIX reset. In this way the value DLNISM, which is the amount of torque ment fluctuation of the engine, calculated.

Es ist zu beachten, dass der Zählwert CDLNIX – wie oben erläutert – mit jedem 720°-Kurbelwinkel um genau 1 erhöht wird. Sofern die Berechnung des Drehmoments nicht für einen der Zylinder verboten ist, wenn der Zählwert CDLNIX "8" wird, sind die kumulativen Zählwerte CDLNI(1), CDLNI(2), CDLNI(3) und CDLNI(4) für alle Zylinder schon "8" geworden. Daher wird in diesem Fall der Wert der Drehmomentschwankung DLNISM (i) für alle Zylinder berechnet. Wenn dagegen zum Beispiel die Berechnung des Betrages der Drehmomentschwankung für Zylinder Nr. 1 verboten ist, wenn der Zählwert CDLNIX "8" geworden ist, wird nur der kumulative Zählwert CDLNI(1) von Zylinder Nr. I nicht "8", daher wird der neue kumulative Wert DLNI(1) des Betrages der Drehmomentschwankung für Zylinder Nr. 1 nicht berechnet. Daher wird in diesem Fall, wenn man den Mittelwert der Drehmomentschwankung DLNISM in Schritt 610 feststellt, der zuvor berechnete Wert der Drehmomentschwankung DLNISM(1) nur für Zylinder Nr. Nr. 1 verwendet.It should be noted that the CDLNIX count - as explained above - is increased by exactly 1 with every 720 ° crank angle. Unless the calculation of the torque is prohibited for one of the cylinders when the count value CDLNIX becomes "8", the cumulative count values CDLNI (1), CDLNI (2), CDLNI (3) and CDLNI (4) for all cylinders are already " 8 ". Therefore, the value of the torque fluctuation DLNISM (i) is calculated for all cylinders in this case. On the other hand, for example, if the calculation of the amount of torque fluctuation for cylinder No. 1 is prohibited when the count CDLNIX has become "8", only the cumulative count CDLNI (1) of cylinder No. I does not become "8", therefore new cumulative value DLNI (1) of the amount of torque fluctuation for cylinder # 1 not calculated. Therefore, in this case, if you look at the mean torque fluctuation DLNISM in step 610 determines that the previously calculated value of the torque fluctuation DLNISM (1) is only used for cylinder No. 1.

Als Nächstes wird unter Bezug auf 34 die Routine zur Berechnung von FLLFB erläutert.Next, referring to 34 the routine for calculating FLLFB is explained.

Mit Bezug auf 34 wird zuerst in Schritt 701 eingeschätzt, ob die Bedingungen zur Aktualisierung des Magergrenzen-Rückführkorrekturkoeffizienten FLLFB erfüllt sind oder nicht.Regarding 34 will step in first 701 estimated whether or not the conditions for updating the lean limit feedback correction coefficient FLLFB are met.

Zum Beispiel während der Motor warmläuft oder wenn sich der Betriebszustand des Motors nicht im Lernbereich befindet, der durch die gestrichelten Linien in 5 umschlossen ist, wird eingeschätzt, dass die Bedingungen zur Aktualisierung nicht erfüllt sind, während zu anderen Zeiten eingeschätzt wird, dass die Bedingungen zur Aktualisierung erfüllt sind. Wenn die Bedingungen zur Aktualisierung nicht erfüllt sind, wird der Verarbeitungszyklus beendet. Wenn die Bedingungen zur Aktualisierung indes erfüllt sind, fährt die Routine mit Schritt 702 fort.For example, while the engine is warming up or when the operating state of the engine is not within the learning range, which is indicated by the dashed lines in 5 is included, it is estimated that the update conditions are not met, while at other times it is estimated that the update conditions are met. If the update conditions are not met, the processing cycle ends. If the conditions for updating are met, the routine goes to step 702 continued.

In Schritt 702 wird der Zielwert der Drehmomentschwankung LVLLFB anhand der Motorlast Q/N und der Motordrehzahl N auf der Basis des Schemas in 29B berechnet. Als Nächstes werden in Schritt 703 und Schritt 704 die Höhen der Drehmomentschwankung LVLH(n) und LVLL(n), die in folgenden Formeln gezeigt werden, auf der Basis der Schätzwerte zum Drehmomentschwankung DH(n) und DL(n) in Übereinstimmung mit dem Zielwert der Drehmomentschwankung LVLLFB berechnet: LVLH(n) = LVLLFB + DH(n) LVLL(n) = LVLLFB + DL(n) In step 702 the target value of the torque fluctuation LVLLFB based on the engine load Q / N and the engine speed N based on the scheme in 29B calculated. Next in step 703 and step 704 calculates the amounts of the torque fluctuation LVLH (n) and LVLL (n) shown in the following formulas based on the estimated values of the torque fluctuation DH (n) and DL (n) in accordance with the target value of the torque fluctuation LVLLFB: LVLH (n) = LVLLFB + DH (n) LVLL (n) = LVLLFB + DL (n)

Hier werden die Schätzwerte zur Drehmomentschwankung DH(n) und DL(n) im Voraus bestimmt, wie in 30A gezeigt. Also werden, wie aus 30A deutlich wird, drei positive Werte für DH(n) gesetzt, die sich im Verhältnis DH(3) > DH(2) > DH (1) befinden. Weiterhin steigen diese Werte DH(1), DH(2) und DH(3) schrittweise in dem Maße an, wenn der Zielwert der Drehmomentschwankung LVLLFB größer wird. Dagegen werden drei negative Werte für DL(n) gesetzt, die im Verhältnis DL(1) > DL (2) > DL (3) stehen. Weiterhin steigen die absoluten Werte von DL (1) , DL (2) und DL (3) schrittweise in dem Maße, in dem der Zielwert der Drehmomentschwankung LVLLFB größer wird.Here, the estimated values for the torque fluctuation DH (n) and DL (n) are determined in advance, as in 30A shown. So be like 30A it becomes clear that three positive values for DH (n) are set, which are in the ratio DH (3)> DH (2)> DH (1). Furthermore, these values DH (1), DH (2) and DH (3) gradually increase as the target value of the torque fluctuation LVLLFB becomes larger. In contrast, three negative values for DL (n) are set, which are in the ratio DL (1)> DL (2)> DL (3). Furthermore, the absolute values of DL (1), DL (2) and DL (3) gradually increase as the target value of the torque fluctuation LVLLFB becomes larger.

Angenommen, der in Schritt 702 berechnete Zielwert der Drehmomentschwankung LVLLFB ist der durch die gestrichelte Linie dargestellte Wert. In diesem Fall werden in Schritt 703 die Werte DH(1), DH(2) und DH(3) auf der gestrichelten Linie plus der Zielwert der Drehmomentschwankung LVLLFB zu den Werten der Drehmomentschwankung LVLH(1), LVLH(2) und LVLH(3) gemacht, und in Schritt 704 werden die Werte DL(1), DL(2) und DL (3) auf der gestrichelten Linie plus der Zielwert der Drehmomentschwankung LVLLFB auf die Werte der Drehmomentschwankung LVLL(1), LVLL(2) und LVLL(3) gebracht.Suppose that in step 702 The calculated target value of the torque fluctuation LVLLFB is the value shown by the broken line. In this case, step 703 the values DH (1), DH (2) and DH (3) on the dashed line plus the target value of the torque fluctuation LVLLFB are made the values of the torque fluctuation LVLH (1), LVLH (2) and LVLH (3), and in step 704 the values DL (1), DL (2) and DL (3) on the dashed line plus the target value of the torque fluctuation LVLLFB are brought to the values of the torque fluctuation LVLL (1), LVLL (2) and LVLL (3).

Dagegen werden die Rückführkorrekturwerte +a1, +a2, +a3, +a4, –b1, –b2, –b3 und –b4 für die Bereiche zwischen den Höhen der Drehmomentschwankung LVLH(n) und LVLL(n), wie in 30B gezeigt, im Voraus bestimmt. So wird zum Beispiel der Rückführkorrekturwert für den Bereich, in dem die Höhe der Drehmomentschwankung zwischen LVLH(1) und LVLH(2) liegt, zu +a2. Diese Rückführkorrekturwerte sind +a4 > +a3 > +a2 > +a1 und –b1 > –b2 > –b3 > –b4. Die Rückführkorrekturwerte +a1, +a2, +a3, +a4, –b1 –b2, –b3 und –b4 (in 30B) werden in den entsprechenden Bereichen von 30A gezeigt.In contrast, the feedback correction values + a 1 , + a 2 , + a 3 , + a 4 , –b 1 , –b 2 , –b 3 and –b 4 for the ranges between the levels of the torque fluctuation LVLH (n) and LVLL ( n), as in 30B shown, determined in advance. For example, the feedback correction value for the area where the amount of torque fluctuation is between LVLH (1) and LVLH (2) becomes + a 2 . These feedback correction values are + a 4 > + a 3 > + a 2 > + a 1 and –b 1 > –b 2 > –b 3 > –b 4 . The feedback correction values + a 1 , + a 2 , + a 3 , + a 4 , –b 1 –b 2 , –b 3 and –b 4 (in 30B ) are in the corresponding areas of 30A shown.

Wenn die Werte der Drehmomentschwankung LVLH(n) und LVLL(n) in Schritt 703 und 704 berechnet werden, fährt die Routine in Schritt 705 fort. Dort wird eingeschätzt, ob der Mittelwert der Drehmomentschwankung DLNISM, der in der Routine zur Berechnung des Drehmomentschwankungswertes (32 und 33) berechnet wurde, sich zwischen den Höhen der Drehmomentschwankung LVLH(n) und LVLL(n) (30B) befindet. Als Nächstes wird in Schritt 700 der entsprechende Rückführkorrekturwert DLFB berechnet. Wenn zum Beispiel die Zielschwankungshöhe LVLLFB den durch die gestrichelte Linie in 30A dargestellten Wert einnimmt und der berechnete Mittelwert der Drehmomentschwankung DLNISM zwischen LVLH(1) und LVLH(2) von 30B liegt, wenn also die Abweichung des Mittelwertes der Drehmomentschwankung DLNISM von der Zielschwankungshöhe LVLLFB zwischen DH(1) und DH(2) auf der gestrichelten Linie in 50A liegt, wird der Rückführkorrekturwert DLFB zu +a2 gemacht.If the values of the torque fluctuation LVLH (n) and LVLL (n) in step 703 and 704 are calculated, the routine continues in step 705 continued. There it is estimated whether the mean value of the torque fluctuation DLNISM, which in the routine for calculating the torque fluctuation value ( 32 and 33 ) was calculated between the levels of the torque fluctuation LVLH (n) and LVLL (n) ( 30B ) is located. Next in step 700 the corresponding feedback correction value DLFB is calculated. For example, if the target fluctuation level LVLLFB is the one indicated by the broken line in 30A and the calculated mean value of the torque fluctuation DLNISM between LVLH (1) and LVLH (2) of 30B , that is, if the deviation of the mean value of the torque fluctuation DLNISM from the target fluctuation level LVLLFB lies between DH (1) and DH (2) on the dashed line in 50A , the feedback correction value DLFB is made + a2.

Nun wird in Schritt 707 ermittelt, welcher Magergrenzen-Rückführkorrekturkoeffizient von welchem in 5 gezeigten Lernbereich der Magergrenzen-Rückführkorrekturkoeffizient FLLFBij auf der Basis des Durchschnittswertes der Motordrehzahl. NAVE und des durchschnittlichen Wertes QAVE der Ansaugluftmenge Q aktualisieren soll, die in Schritt 409 der Verarbeitungsroutine von CDLNIX (siehe 27) ermittelt wurde.Now in step 707 determines which lean limit feedback correction coefficient from which in 5 learning range shown the lean limit feedback correction coefficient FLLFB ij based on the average value of the engine speed. NAVE and the average value QAVE of the intake air quantity Q should update in step 409 the CDLNIX processing routine (see 27 ) was determined.

Als Nächstes wird in Schritt 708 der Magergrenzen-Rückführkorrekturkoeffizient FLLFBij, der in Schritt 707 bestimmt wurde, um den Rückführkorrekturwert DLFB erhöht.Next in step 708 the lean limit feedback correction coefficient FLLFB ij , which in step 707 was determined to increase the feedback correction value DLFB.

Wenn also, wie oben erläutert, zum Beispiel DLNISM > LVLLFB und LVLH(1) < DLNISM < LVLH(2), wird der Magergrenzen-Rückführkorrekturkoeffizient FLLFBij um +a2 erhöht. Im Ergebnis wird das Luft-Kraftstoff-Verhältnis kleiner, so dass der Betrag der Drehmomentschwankung eines jeden Zylinders verringert wird. Wenn andererseits DLNISM < LVLLFB und LVLL(1) > DLNISM > LVLL(2), wird der Magergrenzen-Rückführkorrekturkoeffizient FLLFBij um –b2 erhöht. Folglich vergrößert sich das Luft-Kraftstoff-Verhältnis, und somit erhöht sich der Betrag der Drehmomentschwankung der Zylinder. Auf diese Weise wird das Luft-Kraftstoff-Verhältnis zur Zeit des Magerbetriebs so gesteuert, dass der Mittelwert der Drehmomentschwankung DLNISM aller Zylinder zum Zielwert der Drehmomentschwankung LVLLFB wird.So, as explained above, for example, if DLNISM> LVLLFB and LVLH ( 1 ) <DLNISM <LVLH ( 2 ), the lean limit feedback correction coefficient FLLFB ij is increased by + a 2 . As a result, the air-fuel ratio becomes smaller, so that the amount of torque fluctuation of each cylinder is reduced. On the other hand, if DLNISM <LVLLFB and LVLL (1)>DLNISM> LVLL (2), the lean boundary feedback correction coefficient FLLFB ij is increased by -b2. As a result, the air-fuel ratio increases, and thus the amount of torque fluctuation of the cylinders increases. In this way, the air-fuel ratio at the time of lean operation is controlled so that the mean value of the torque fluctuation DLNISM of all cylinders becomes the target value of the torque fluctuation LVLLFB.

Hierbei ist zu beachten: Wenn die Bedingungen zur Berechnung des Drehmomentsschwankungswertes in der in 27 gezeigten Routine nicht erfüllt sind, wird in Schritt 407 der DLNISM(i) für alle Zylinder zu LVLLFB gemacht. Daher wird auch der Mittelwert der Drehmomentschwankung DLNISM zum Zielwert der Drehmomentschwankung LVLLFB gemacht. Folglich wird zu diesem Zeitpunkt der Magergrenzen-Rückführkorrekturkoeffizient FLLFBij nicht aktualisiert.Please note: If the conditions for calculating the torque fluctuation value in the in 27 routine shown is not met in step 407 the DLNISM (i) made LVLLFB for all cylinders. Therefore, the mean value of the torque fluctuation DLNISM is made the target value of the torque fluctuation LVLLFB. As a result, the lean limit feedback correction coefficient FLLFB ij is not updated at this time.

Als Nächstes wird mit Bezug auf 35 die Routine zur Berechnung der Kraftstoffeinspritzzeit erläutert.Next, with reference to 35 the routine for calculating the fuel injection time is explained.

Bezüglich 35 wird zunächst in Schritt 801 die Basiskraftstoffeinspritzzeit TP anhand des Schemas in 2 berechnet. Als Nächstes wird in Schritt 802 eingeschätzt, ob im vorliegenden Betriebszustand ein Magerbetrieb durchgeführt werden muss.In terms of 35 will step in first 801 the base fuel injection time TP based on the scheme in 2 calculated. Next in step 802 assessed whether lean operation must be carried out in the present operating state.

Wenn im vorliegenden Betriebszustand ein Magerbetrieb ausgeführt werden muss, fährt die Routine in Schritt 803 fort, wo der Wert des stöchiometrischen Luft-Kraftstoff-Verhältnis-Rückführkorrekturkoeffizienten FAF bei 1,0 fixiert ist. Als Nächstes wird in Schritt 804 der Magerkorrekturkoeffizient FLEAN anhand des in 4 dargestellten Schemas berechnet. Danach wird in Schritt 805 der Magergrenzen-Rückführkorrekturkoeffizient FLLFB anhand des Schemas in 5 ausgelesen. Daraufhin wird in Schritt 809 die Kraftstoffeinspritzzeit TAU nach folgender Formel berechnet: TAU – TP * FLEAN * FLLFB * FAF + TAUV If lean operation has to be carried out in the present operating state, the routine proceeds in step 803 where the value of the stoichiometric air-fuel ratio feedback correction coefficient FAF is fixed at 1.0. Next in step 804 the lean correction coefficient FLEAN based on the in 4 shown schemes calculated. Then in step 805 the lean limit feedback correction coefficient FLLFB based on the scheme in 5 read. Then step 809 the fuel injection time TAU is calculated using the following formula: TAU - TP * FLEAN * FLLFB * FAF + TAUV

Wenn im Gegensatz hierzu in Schritt 802 eingeschätzt wird, dass in diesem Betriebszustand kein Magerbetrieb durchgeführt werden muss, wenn also das Luft-Kraftstoff-Verhältnis zum stöchiometrischen Luft-Kraftstoff-Verhältnis gemacht werden muss, fährt die Routine mit Schritt 806 fort, wo der Magerkorrekturkoeffizient FLEAN bei 1,0 fixiert wird. Danach wird der Magergrenzen-Rückführkorrekturkoeffizient FLLFB in Schritt 807 bei 1,0 fixiert. Als Nächstes wird in Schritt 808 der stöchiometrische Luft-Kraftstoff-Verhältnis-Rückführkorrekturkoeffizient FAF auf der Grundlage des Ausgangssignals des Luft-Kraftstoff-Verhältnis-Sensors 17 gesteuert, so dass das Luft-Kraftstoff-Verhältnis zum stöchiometrischen Luft-Kraftstoff-Verhältnis wird. Als Nächstes fährt die Routine zu Schritt 809, wo die Kraftstoffeinspritzzeit TAU berechnet wird.If, in contrast, in step 802 It is estimated that no lean operation has to be carried out in this operating state, that is if the air-fuel ratio has to be made to the stoichiometric air-fuel ratio, the routine proceeds with step 806 where the lean correction coefficient FLEAN is fixed at 1.0. Thereafter, the lean limit feedback correction coefficient becomes FLLFB in step 807 fixed at 1.0. Next in step 808 the stoichiometric air-fuel ratio feedback correction coefficient FAF based on the output of the air-fuel ratio sensor 17 controlled so that the air-fuel ratio becomes the stoichiometric air-fuel ratio. Next, the routine goes to step 809 where the fuel injection time TAU is calculated.

Hierbei ist Folgendes zu beachten: Um die wahre Leistungsschwankung oder Drehmomentschwankung des Motors zu ermitteln, ist es möglich, die Drehschwingung des Motorantriebssystems oder der Kurbelwelle selbst oder die . Auswirkungen der Abweichung der Abstände zwischen den Außenzähnen des Rotors 14 auf jede mögliche Weise zu korrigieren.Please note the following: In order to determine the true power fluctuation or torque fluctuation of the engine, it is possible to determine the torsional vibration of the engine drive system or the crankshaft itself or the. Effects of the deviation of the distances between the external teeth of the rotor 14 to correct in every possible way.

So wird Steuerbarkeit des Luft-Kraftstoff-Verhältnisses erfindungsgemäß unabhängig von der Motordrehzahl gewährleistet.This will make the air-fuel ratio controllable according to the invention regardless of the engine speed guaranteed.

Obgleich die Erfindung unter Bezugnahme auf bestimmte, zum Zwecke der Veranschaulichung gewählte Ausführungsformen beschrieben wurde, sollten sich für den Fachmann in naheliegender Weise zahlreiche Abwandlungen ergeben.Although the invention is described with reference to FIG certain embodiments chosen for purposes of illustration should have been described for the person skilled in the art will naturally find numerous modifications.

Claims (13)

Verfahren zur Steuerung eines Luft-Kraftstoff-Verhältnisses in einem Motor, dadurch gekennzeichnet, dass das Verfahren folgende Schritte enthält: Einstellen einer ersten Kurbelwinkelspannweite in einem Kurbelwinkelbereich vom Ende eines Verdichtungshubs bis zum Beginn eines Expansionshubs, Ermitteln einer ersten Winkelgeschwindigkeit der Kurbelwelle in der ersten Kurbelwinkelspannweite, Einstellen einer zweiten Kurbelwinkelspannweite in einem Kurbelwinkelbereich in der Mitte des Expansionshubs, einen vorbestimmten Kurbelwinkel von der ersten Kurbelwinkelspannweite entfernt, Ermitteln einer zweiten Winkelgeschwindigkeit der Kurbelwelle in der zweiten Kurbelwinkelspannweite, Herausfinden der Leistungs-Grundschwankung der Zylinder auf der Basis der ersten Winkelgeschwindigkeit und der zweiten Winkelgeschwindigkeit, Herausfinden eines Sollwerts auf der Basis der Motordrehzahl, Herausfinden der Leistungsschwankung der Zylinder, indem die Leistungs-Grundschwankung der Zylinder auf der Basis des Sollwertes korrigiert wird, und Korrigieren des Luft-Kraftstoff-Verhältnisses auf der Basis der Leistungsschwankung.Method for controlling an air-fuel ratio in an engine, characterized in that the method includes the following steps: setting a first crank angle span in a crank angle range from the end of a compression stroke to the beginning of an expansion stroke, determining a first angular velocity of the crankshaft in the first crank angle span , Setting a second crank angle span in a crank angle range in the middle of the expansion stroke, a predetermined crank angle away from the first crank angle span, determining a second crankshaft angular velocity in the second crank angle span, finding the basic power fluctuation of the cylinders on the basis of the first angular speed and the second Angular velocity, finding a target value based on the engine speed, finding the power fluctuation of the cylinders by the basic power fluctuation of the cylinders on the bas is corrected to the target value, and correcting the air-fuel ratio on the Basis of the fluctuation in performance. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Leistungsschwankung durch Subtraktion des Sollwertes von der Leistungs-Grundschwankung ermittelt wird.A method according to claim 1, characterized in that the power fluctuation by subtracting the setpoint from the basic power fluctuation is determined. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Sollwert sich vergrößert, wenn die Motordrehzahl steigt.A method according to claim 1, characterized in that the setpoint increases when the engine speed increases. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Sollwert vorbestimmt ist und im Voraus in einem Speichergerät gespeichert wird.A method according to claim 1, characterized in that the target value is predetermined and stored in advance in a storage device becomes. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Sollwert einen Fehler bei der Ermittlung der ersten Winkelgeschwindigkeit und der zweiten Winkelgeschwindigkeit der Kurbelwelle repräsentiert.A method according to claim 1, characterized in that the setpoint is an error in determining the first angular velocity and the second angular velocity of the crankshaft. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Durchschnittswert der Leistungsschwankung ermittelt und das Luft-Kraftstoff-Verhältnis auf der Basis des Durchschnittswertes der Leistungsschwankung korrigiert wird.A method according to claim 1, characterized in that the average value of the power fluctuation is determined and the air-fuel ratio corrected based on the average power fluctuation becomes. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass das Luft-Kraftstoff-Verhältnis so korrigiert wird, dass der Durchschnittswert der Leistungsschwankung in einem vorbestimmten Bereich liegt.A method according to claim 6, characterized in that the air-fuel ratio is corrected so that the average value of the power fluctuation is in a predetermined range. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Betrag der Ausgangsdrehmoment-Grundschwankung des Motors anhand der ersten Winkelgeschwindigkeit und der zweiten Winkelgeschwindigkeit ermittelt wird, dass der Betrag der Ausgangsdrehmomentschwankung des Motors ermittelt wird, indem der Sollwert von dem Betrag der Ausgangsdrehmoment-Grundschwankung subtrahiert wird, und dass das Luft-Kraftstoff-Verhältnis auf der Basis des Betrags der Ausgangsdrehmomentschwankung korrigiert wird.A method according to claim 1, characterized in that the amount of output torque fluctuation of the engine based on the first angular velocity and the second angular velocity it is determined that the amount of output torque fluctuation of the engine is determined by the target value from the amount of the output torque fluctuation is subtracted and that the air-fuel ratio on the Based on the amount of output torque fluctuation is corrected. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass der Sollwert die Abweichung des Grundbetrags der Ausgangsdrehmomentschwankung von dem wahren Betrag der Ausgangsdrehmomentschwankung repräsentiert aufgrund der Drehschwingung des Motorantriebssystems und der Kurbelwelle selbst.A method according to claim 8, characterized in that the target value is the deviation of the basic amount of output torque fluctuation represented by the true amount of output torque fluctuation due to the torsional vibration of the engine drive system and the crankshaft self. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass das Luft-Kraftstoff-Verhältnis so korrigiert wird, dass der Betrag der Ausgangsdrehmomentschwankung in einem vorbestimmten Bereich liegt.A method according to claim 8, characterized in that the air-fuel ratio is corrected so that the amount of output torque fluctuation is in a predetermined range. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass der Sollwert so vorbestimmt ist, dass der Betrag der Ausgangsdrehmomentschwankung fast konstant ist, wenn der wahre Betrag der Ausgangsdrehmomentschwankung zirka in der Mitte des vorbestimmten Bereiches liegt, unabhängig von der Motordrehzahl.A method according to claim 10, characterized in that the target value is predetermined so that the amount of output torque fluctuation is almost constant when the true amount of output torque fluctuation is approximately in the middle of the predetermined range, regardless of the Engine speed. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass eine Verbrennung an einem ersten Zylinder und dann eine Verbrennung an einem zweiten Zylinder ausgeführt wird, dass der Betrag der Änderung zwischen der ersten Winkelgeschwindigkeit zur Zeit einer vorherigen Verbrennung und der ersten Winkelgeschwindigkeit zur Zeit einer nächsten Verbrennung für den ersten Zylinder ermittelt wird, dass der Betrag der Änderung zwischen der ersten Winkelgeschwindigkeit zur Zeit einer vorherigen Verbrennung und der ersten Winkelgeschwindigkeit zur Zeit einer nächsten Verbrennung für den zweiten Zylinder ermittelt wird, dass eine angenommene zweite Winkelgeschwindigkeit zur Zeit der nächsten Verbrennung des ersten Zylinders – unter der Annahme, dass die Leistung des ersten Zylinders nicht schwankt – auf der Basis des Betrags der Änderung der ersten Winkelgeschwindigkeit des ersten Zylinders, des Betrags der Änderung der ersten Winkelgeschwindigkeit des zweiten Zylinders und der zweiten Winkelgeschwindigkeit zur Zeit der vorherigen Verbrennung des ersten Zylinders ermittelt wird, und dass die Leistungsschwankung des ersten Zylinders auf der Basis der realen zweiten Winkelgeschwindigkeit zur Zeit der nächsten Verbrennung des ersten Zylinders und der angenommenen zweiten Winkelgeschwindigkeit ermittelt wird.A method according to claim 1, characterized in that a combustion on a first cylinder and then a combustion performed on a second cylinder will that the amount of change between the first angular velocity at the time of a previous one Combustion and the first angular velocity at the time one next Combustion for The first cylinder determines that the amount of change between the first angular velocity at the time of a previous one Combustion and the first angular velocity at the time one next Combustion for The second cylinder is determined to be an assumed second Angular velocity at the time of the next combustion of the first Cylinders - under assuming that the performance of the first cylinder does not fluctuate - on the Basis of the amount of the change the first angular velocity of the first cylinder, the amount of change the first angular velocity of the second cylinder and the second Angular velocity at the time of the previous combustion of the first Cylinder is determined and that the power fluctuation of the first Cylinder based on the real second angular velocity at the time of the next Combustion of the first cylinder and the assumed second angular velocity determined becomes. Verfahren nach Anspruch 12, dadurch gekennzeichnet, dass der Betrag der Ausgangsdrehmoment-Grundschwankung des ersten Zylinders aus der Differenz zwischen dem Quadrat der realen zweiten Winkelgeschwindigkeit und dem Quadrat der angenommenen zweiten Winkelgeschwindigkeit ermittelt wird, dass ein Betrag der Ausgangsdrehmoment-Grundschwankung für jeden Zylinder ermittelt wird, dass der Betrag der Ausgangsdrehmomentschwankung der Zylinder ermittelt wird, indem der Sollwert von dem Betrag der Ausgangsdrehmoment-Grundschwankung für die einzelnen Zylinder subtrahiert wird, dass der Betrag der Ausgangsdrehmomentschwankung des Motors anhand des Betrags der Ausgangsdrehmomentschwankung der Zylinder ermittelt wird, und dass das Luft-Kraftstoff-Verhältnis auf der Basis des Betrags der Ausgangsdrehmomentschwankung korrigiert wird.A method according to claim 12, characterized in that the amount of output torque fluctuation of the first Cylinder from the difference between the square of the real second Angular velocity and the square of the assumed second angular velocity it is determined that an amount of output torque fluctuation for each Cylinder determines that the amount of output torque fluctuation the cylinder is determined by the setpoint from the amount of Output torque base fluctuation subtracted for the individual cylinders is that the amount of output torque fluctuation of the engine based on the amount of output torque fluctuation of the cylinders is determined and that the air-fuel ratio is based on corrected based on the amount of output torque fluctuation becomes.
DE1998617952 1997-07-22 1998-07-20 Method for controlling the air-fuel ratio in an internal combustion engine Expired - Fee Related DE69817952T2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP19612397A JP3216577B2 (en) 1997-07-22 1997-07-22 Air-fuel ratio control method for internal combustion engine
JP19612397 1997-07-22

Publications (2)

Publication Number Publication Date
DE69817952D1 DE69817952D1 (en) 2003-10-16
DE69817952T2 true DE69817952T2 (en) 2004-07-15

Family

ID=16352634

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1998617952 Expired - Fee Related DE69817952T2 (en) 1997-07-22 1998-07-20 Method for controlling the air-fuel ratio in an internal combustion engine

Country Status (3)

Country Link
EP (1) EP0898066B1 (en)
JP (1) JP3216577B2 (en)
DE (1) DE69817952T2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE202015003271U1 (en) * 2015-05-04 2016-08-05 GM Global Technology Operations LLC (n. d. Ges. d. Staates Delaware) Computer program and computer program product Control of an internal combustion engine and internal combustion engine

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4055991B2 (en) * 2002-10-04 2008-03-05 本田技研工業株式会社 Engine stroke discrimination device
JP4530080B2 (en) * 2008-06-20 2010-08-25 トヨタ自動車株式会社 Control device for internal combustion engine
JP7287070B2 (en) * 2019-04-02 2023-06-06 マツダ株式会社 CONTROL DEVICE AND CONTROL METHOD FOR INTERNAL COMBUSTION ENGINE

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4562818A (en) * 1983-07-05 1986-01-07 Nippon Soken, Inc. Method and apparatus for controlling the air-fuel ratio in an internal combustion engine
JPH0733809B2 (en) 1984-06-27 1995-04-12 株式会社日本自動車部品総合研究所 Internal combustion engine output fluctuation measurement method
EP0437057B1 (en) * 1990-01-08 1993-11-03 Hitachi, Ltd. Method and apparatus for detecting combustion conditions in a multicylinder internal combustion engine
JP3479090B2 (en) * 1992-06-03 2003-12-15 株式会社日立製作所 Multi-cylinder engine combustion condition diagnostic device
US5517970A (en) * 1994-06-23 1996-05-21 Mitsubishi Jidosha Kogyo Kabushiki Kaisha Fuel feeding system and method for internal combustion engine
DE19544720C1 (en) * 1995-11-30 1997-03-13 Siemens Ag Internal combustion engine misfiring detection method e.g. for multiple cylinder engines
JP3303739B2 (en) * 1996-12-19 2002-07-22 トヨタ自動車株式会社 Air-fuel ratio control method for internal combustion engine

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE202015003271U1 (en) * 2015-05-04 2016-08-05 GM Global Technology Operations LLC (n. d. Ges. d. Staates Delaware) Computer program and computer program product Control of an internal combustion engine and internal combustion engine

Also Published As

Publication number Publication date
EP0898066A2 (en) 1999-02-24
DE69817952D1 (en) 2003-10-16
JPH1136951A (en) 1999-02-09
JP3216577B2 (en) 2001-10-09
EP0898066B1 (en) 2003-09-10
EP0898066A3 (en) 2000-05-31

Similar Documents

Publication Publication Date Title
DE10362187B4 (en) Combustion state estimation device for an internal combustion engine
DE19721070B4 (en) Method for controlling the combustion in the individual cylinders of a combustion engine
DE10322514B4 (en) Air flow estimation for engines with demand-dependent displacement
DE4403348B4 (en) Method for detecting misfires
DE102004036739B4 (en) Apparatus for calculating an air-fuel ratio for individual cylinders for a multi-cylinder internal combustion engine
EP1169560B1 (en) Method and device for determining cylinder-individual differences of a controlled variable in a multicylinder internal combustion engine
DE19515534B4 (en) Automatic transmission control device and a control method therefor
DE69204134T2 (en) Air-fuel ratio control system for internal combustion engines.
DE69822418T2 (en) Fuel injection control device for an internal combustion engine
DE4230344C2 (en) Method for calculating the fuel injection quantity for an internal combustion engine
DE69832130T2 (en) Control system for an internal combustion engine
DE19749154A1 (en) Controller of cylinder injection type internal combustion engine
DE60019984T2 (en) Suction control system for internal combustion engine
DE4140527A1 (en) CONTROL DEVICE FOR THE AIR / FUEL RATIO FOR USE IN AN INTERNAL COMBUSTION ENGINE
DE69729056T2 (en) Process for the detection of output fluctuations in internal combustion engines
DE4414727B4 (en) Control method and control unit for multi-cylinder internal combustion engines
DE69205304T2 (en) Device for determining the altitude and engine control using this.
DE10330112A1 (en) Device and method for controlling a fuel / air ratio for an internal combustion engine
DE4327912C1 (en) Engine idling speed control module
DE69730578T2 (en) Method for controlling the air-fuel ratio in an internal combustion engine
DE69817952T2 (en) Method for controlling the air-fuel ratio in an internal combustion engine
DE4013943C2 (en)
DE10227466B4 (en) Method for determining cylinder loading in an internal combustion engine
DE3920520C2 (en) Device for calculating the amount of intake air of an internal combustion engine
DE69916464T2 (en) METHOD FOR REDUCING COLD STARTING EMISSIONS IN INTERNAL COMBUSTION ENGINES

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)
8339 Ceased/non-payment of the annual fee