JP2016041922A - Internal combustion engine cylinder-specific air-fuel ratio control unit - Google Patents

Internal combustion engine cylinder-specific air-fuel ratio control unit Download PDF

Info

Publication number
JP2016041922A
JP2016041922A JP2014166312A JP2014166312A JP2016041922A JP 2016041922 A JP2016041922 A JP 2016041922A JP 2014166312 A JP2014166312 A JP 2014166312A JP 2014166312 A JP2014166312 A JP 2014166312A JP 2016041922 A JP2016041922 A JP 2016041922A
Authority
JP
Japan
Prior art keywords
cylinder
air
fuel ratio
fuel
detection timing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014166312A
Other languages
Japanese (ja)
Inventor
教昭 岩瀬
Noriaki Iwase
教昭 岩瀬
向井 弥寿夫
Yasuo Mukai
向井  弥寿夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP2014166312A priority Critical patent/JP2016041922A/en
Priority to US14/825,455 priority patent/US9890726B2/en
Publication of JP2016041922A publication Critical patent/JP2016041922A/en
Priority to US15/585,227 priority patent/US9790882B2/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

PROBLEM TO BE SOLVED: To make it possible to avoid continuation of cylinder-specific air-fuel-ratio control in a state in which an air fuel ratio of each cylinder of an engine cannot be correctly controlled.SOLUTION: Cylinder-specific air-fuel-ratio estimation for estimating an air fuel ratio of each cylinder is implemented on the basis of a detection value of an air-fuel ratio sensor 36 installed in an exhaust gas collection portion 34a of an engine 11, and cylinder-specific air-fuel-ratio control for controlling the air-fuel ratio of each cylinder is implemented so as to reduce a variation in the air fuel ratio among the cylinders on the basis of the estimated air-fuel ratio of each cylinder. Furthermore, it is determined whether or not an accidental fire occurs to the engine 11, and the cylinder-specific air-fuel-ratio estimation and the cylinder-specific air-fuel-ratio control are stopped and a cylinder-specific correction value under the cylinder-specific air-fuel-ratio control is reset when it is determined that an accidental fire occurs to the engine 11. As a result, it is possible to prevent the cylinder-specific air-fuel-ratio control from being continued as usual in a state in which the air-fuel ratio of each cylinder cannot be correctly controlled due to the influence of the accidental fire.SELECTED DRAWING: Figure 1

Description

本発明は、内燃機関の各気筒の空燃比を推定し、その推定空燃比に基づいて各気筒の空燃比を制御する内燃機関の気筒別空燃比制御装置に関する発明である。   The present invention relates to a cylinder-by-cylinder air-fuel ratio control apparatus for an internal combustion engine that estimates the air-fuel ratio of each cylinder of the internal combustion engine and controls the air-fuel ratio of each cylinder based on the estimated air-fuel ratio.

内燃機関の気筒間の空燃比ばらつきを小さくする技術として、例えば、特許文献1(特開2013−253593号公報)に記載されているように、内燃機関の排気集合部に設置した空燃比センサの検出値に基づいて各気筒の空燃比を推定し、各気筒の推定空燃比に基づいて各気筒の空燃比を制御する気筒別空燃比制御を行うようにしたものがある。更に、この特許文献1では、気筒別空燃比制御中に推定空燃比に基づいて空燃比検出タイミングのずれの有無を判定し、空燃比検出タイミングのずれ有りと判定されたときに空燃比検出タイミングを補正する空燃比検出タイミング補正を行うようにしている。   As a technique for reducing variation in air-fuel ratio between cylinders of an internal combustion engine, for example, as described in Patent Document 1 (Japanese Patent Laid-Open No. 2013-253593), an air-fuel ratio sensor installed in an exhaust collection portion of an internal combustion engine is used. Some cylinders perform air-fuel ratio control for each cylinder in which the air-fuel ratio of each cylinder is estimated based on a detected value and the air-fuel ratio of each cylinder is controlled based on the estimated air-fuel ratio of each cylinder. Further, in Patent Document 1, it is determined whether or not there is a deviation in the air-fuel ratio detection timing based on the estimated air-fuel ratio during the cylinder-by-cylinder air-fuel ratio control, and when it is determined that there is a deviation in the air-fuel ratio detection timing, The air-fuel ratio detection timing correction for correcting the above is performed.

特開2013−253593号公報JP 2013-253593 A

ところで、気筒別空燃比制御中に、内燃機関の失火(例えば特定の気筒での連続失火)が発生すると、その影響で各気筒の空燃比の推定精度が悪化してしまうことがある。このような場合、各気筒の推定空燃比が発散して、各気筒の空燃比を正しく制御する(気筒間の空燃比ばらつきを小さくするように制御する)ことができず、排気エミッションの悪化を招く可能性がある。   By the way, if misfire of the internal combustion engine (for example, continuous misfire in a specific cylinder) occurs during cylinder-by-cylinder air-fuel ratio control, the estimation accuracy of the air-fuel ratio of each cylinder may deteriorate due to the influence. In such a case, the estimated air-fuel ratio of each cylinder diverges, and the air-fuel ratio of each cylinder cannot be correctly controlled (control so as to reduce the variation in air-fuel ratio between cylinders). There is a possibility of inviting.

また、内燃機関が急加速した後に急減速すると、排気流速が大きく低下して、排気の流れが停滞することがある。気筒別空燃比制御中に、空燃比センサ付近の排気の流れが停滞すると、その影響で空燃比センサ出力の振幅が小さくなってしまい、各気筒の空燃比検出タイミング毎の空燃比センサ出力を正しく読み込むことが困難になることがある。このような場合、推定気筒間違え(各気筒と推定空燃比との対応関係の間違え)が発生して、各気筒の空燃比を正しく制御することができず、排気エミッションの悪化を招く可能性がある。このような状態で、空燃比検出タイミング補正を行うと、各気筒の空燃比の推定精度が更に悪化する可能性もある。   Further, if the internal combustion engine accelerates rapidly and then decelerates rapidly, the exhaust flow velocity may greatly decrease, and the exhaust flow may stagnate. If the flow of exhaust gas near the air-fuel ratio sensor stagnate during cylinder-by-cylinder air-fuel ratio control, the air-fuel ratio sensor output amplitude will be reduced due to this, and the air-fuel ratio sensor output at each air-fuel ratio detection timing of each cylinder will be set correctly. It may be difficult to read. In such a case, an erroneous estimation cylinder (correspondence between each cylinder and the estimated air-fuel ratio) occurs, and the air-fuel ratio of each cylinder cannot be controlled correctly, which may lead to deterioration of exhaust emissions. is there. If the air-fuel ratio detection timing correction is performed in such a state, the estimation accuracy of the air-fuel ratio of each cylinder may be further deteriorated.

そこで、本発明が解決しようとする課題は、各気筒の空燃比を正しく制御できない状態で気筒別空燃比制御が継続されることを回避して排気エミッションの悪化を抑制することができる内燃機関の気筒別空燃比制御装置を提供することにある。   Therefore, the problem to be solved by the present invention is that of an internal combustion engine that can suppress the deterioration of exhaust emission by avoiding that the cylinder-by-cylinder air-fuel ratio control is continued in a state where the air-fuel ratio of each cylinder cannot be controlled correctly. An object is to provide a cylinder-by-cylinder air-fuel ratio control device.

上記課題を解決するために、請求項1に係る発明は、内燃機関(11)の各気筒の排出ガスが合流して流れる排気集合部(34a)に該排出ガスの空燃比を検出する空燃比センサ(36)を設置し、各気筒の空燃比検出タイミング毎に検出された空燃比センサ(36)の検出値に基づいて各気筒の空燃比を推定する気筒別空燃比推定を実行する気筒別空燃比推定手段(39)と、各気筒の推定空燃比に基づいて各気筒の空燃比を制御する気筒別空燃比制御を実行する気筒別空燃比制御手段(39)とを備えた内燃機関の気筒別空燃比制御装置において、内燃機関(11)の失火の有無を判定する失火判定手段(39)と、失火判定手段(39)により内燃機関(11)の失火有りと判定されたときに、気筒別空燃比推定と気筒別空燃比制御のうちの少なくとも一方を停止する停止手段(39)とを備えた構成としたものである。   In order to solve the above-mentioned problem, the invention according to claim 1 is directed to an air-fuel ratio for detecting the air-fuel ratio of the exhaust gas in the exhaust collecting portion (34a) through which the exhaust gas of each cylinder of the internal combustion engine (11) flows. For each cylinder, a sensor (36) is installed and the cylinder-by-cylinder air-fuel ratio estimation is performed to estimate the air-fuel ratio of each cylinder based on the detected value of the air-fuel ratio sensor (36) detected at each air-fuel ratio detection timing of each cylinder. An internal combustion engine comprising air-fuel ratio estimation means (39) and cylinder-by-cylinder air-fuel ratio control means (39) for performing cylinder-by-cylinder air-fuel ratio control for controlling the air-fuel ratio of each cylinder based on the estimated air-fuel ratio of each cylinder In the cylinder-by-cylinder air-fuel ratio control apparatus, when the misfire determination means (39) for determining whether or not the internal combustion engine (11) has misfired and the misfire determination means (39) determine that the internal combustion engine (11) has misfired, Cylinder air-fuel ratio estimation and cylinder air-fuel ratio control Chino is obtained by a structure in which a stop means (39) to stop at least one.

気筒別空燃比推定を停止(各気筒の推定空燃比の算出を停止)することで、気筒別空燃比制御による各気筒の気筒別補正値の更新が停止することができるため、気筒別空燃比推定のみを停止しても、気筒別空燃比制御を停止(各気筒の気筒別補正値の算出を停止)するのとほぼ同様の状態にできる。   By stopping the estimation of the air-fuel ratio for each cylinder (the calculation of the estimated air-fuel ratio of each cylinder is stopped), the update of the correction value for each cylinder by the cylinder-by-cylinder air-fuel ratio control can be stopped. Even if only the estimation is stopped, the air-fuel ratio control for each cylinder can be almost the same as when the correction value for each cylinder is stopped.

従って、内燃機関の失火有りと判定されたときに、気筒別空燃比推定や気筒別空燃比制御を停止すれば、失火により各気筒の空燃比を正しく制御できない状態で気筒別空燃比制御が通常通りに継続されることを回避して排気エミッションの悪化を抑制することができる。   Therefore, if it is determined that the internal combustion engine has misfired, if the cylinder-by-cylinder air-fuel ratio estimation and the cylinder-by-cylinder air-fuel ratio control are stopped, the cylinder-by-cylinder air-fuel ratio control is normally performed in a state where the air-fuel ratio of each cylinder cannot be controlled correctly due to misfire. It is possible to prevent the exhaust emission from deteriorating by avoiding being continued on the street.

また、請求項3に係る発明は、内燃機関(11)の各気筒の排出ガスが合流して流れる排気集合部(34a)に該排出ガスの空燃比を検出する空燃比センサ(36)を設置し、各気筒の空燃比検出タイミング毎に検出された空燃比センサ(36)の検出値に基づいて各気筒の空燃比を推定する気筒別空燃比推定を実行する気筒別空燃比推定手段(39)と、各気筒の推定空燃比に基づいて各気筒の空燃比を制御する気筒別空燃比制御を実行する気筒別空燃比制御手段(39)と、気筒別空燃比制御中に各気筒の推定空燃比に基づいて空燃比検出タイミングを補正する空燃比検出タイミング補正を実行する検出タイミング補正手段(39)とを備えた内燃機関の気筒別空燃比制御装置において、内燃機関(11)の排気の流れが停滞した状態(以下「排気流停滞状態」という)か否かを判定する排気流判定手段(39)と、排気流判定手段(39)により排気流停滞状態と判定されたときに、気筒別空燃比推定と気筒別空燃比制御と空燃比検出タイミング補正のうちの少なくとも一つを停止する停止手段(39)とを備えた構成としたものである。   According to a third aspect of the present invention, an air-fuel ratio sensor (36) for detecting an air-fuel ratio of the exhaust gas is installed in an exhaust collecting portion (34a) through which exhaust gases of the cylinders of the internal combustion engine (11) flow. Then, the cylinder-by-cylinder air-fuel ratio estimating means (39) for executing the cylinder-by-cylinder air-fuel ratio estimation for estimating the air-fuel ratio of each cylinder based on the detection value of the air-fuel ratio sensor (36) detected at each air-fuel ratio detection timing of each cylinder. ), Cylinder-by-cylinder air-fuel ratio control means (39) for controlling the air-fuel ratio of each cylinder based on the estimated air-fuel ratio of each cylinder, and estimation of each cylinder during cylinder-by-cylinder air-fuel ratio control In a cylinder-by-cylinder air-fuel ratio control apparatus for an internal combustion engine, comprising a detection timing correction means (39) for executing air-fuel ratio detection timing correction for correcting the air-fuel ratio detection timing based on the air-fuel ratio, the exhaust gas of the internal combustion engine (11) Flow is stagnant ( (Referred to as “exhaust flow stagnation state”), and when the exhaust flow stagnation state is determined by the exhaust flow determination means (39), the cylinder-by-cylinder air-fuel ratio estimation and cylinder A stop means (39) for stopping at least one of the separate air-fuel ratio control and the air-fuel ratio detection timing correction is provided.

排気流停滞状態と判定されたときに、気筒別空燃比推定や気筒別空燃比制御を停止すれば、排気の流れの停滞により各気筒の空燃比を正しく制御できない状態で気筒別空燃比制御が通常通りに継続されることを回避して排気エミッションの悪化を抑制することができる。また、空燃比検出タイミング補正を停止しても、各気筒の空燃比の推定精度の悪化を抑制して、気筒別空燃比制御の制御精度の悪化を抑制することができる。   If the cylinder-by-cylinder air-fuel ratio estimation and the cylinder-by-cylinder air-fuel ratio control are stopped when it is determined that the exhaust flow stagnation state, the cylinder-by-cylinder air-fuel ratio control is performed in a state where the air-fuel ratio of each cylinder cannot be controlled correctly due to the stagnation of the exhaust flow. Deterioration of exhaust emission can be suppressed by avoiding continuing as usual. Even if the air-fuel ratio detection timing correction is stopped, it is possible to suppress the deterioration of the estimation accuracy of the air-fuel ratio of each cylinder and to suppress the deterioration of the control accuracy of the cylinder-by-cylinder air-fuel ratio control.

図1は本発明の実施例1におけるエンジン制御システムの概略構成を示す図である。FIG. 1 is a diagram showing a schematic configuration of an engine control system in Embodiment 1 of the present invention. 図2は空燃比制御機能を説明するブロック図である。FIG. 2 is a block diagram illustrating the air-fuel ratio control function. 図3は各気筒の推定空燃比と気筒別補正値と実空燃比の挙動を示す図である。FIG. 3 is a diagram showing the behavior of the estimated air-fuel ratio of each cylinder, the correction value for each cylinder, and the actual air-fuel ratio. 図4は失火判定ルーチンの処理の流れを示すフローチャートである。FIG. 4 is a flowchart showing the flow of the misfire determination routine. 図5は実施例1の実行条件判定ルーチンの処理の流れを示すフローチャートである。FIG. 5 is a flowchart illustrating a flow of processing of the execution condition determination routine according to the first embodiment. 図6は気筒別空燃比制御ルーチンの処理の流れを示すフローチャートである。FIG. 6 is a flowchart showing the flow of processing of the cylinder-by-cylinder air-fuel ratio control routine. 図7は空燃比検出タイミング判定ルーチンの処理の流れを示すフローチャートである。FIG. 7 is a flowchart showing the flow of processing of the air-fuel ratio detection timing determination routine. 図8は空燃比検出タイミングずれ学習補正ルーチンの処理の流れを示すフローチャートである。FIG. 8 is a flowchart showing the flow of processing of the air-fuel ratio detection timing deviation learning correction routine. 図9はLocal学習実行ルーチンの処理の流れを示すフローチャートである。FIG. 9 is a flowchart showing the flow of processing of the local learning execution routine. 図10はLocal学習指標算出ルーチンの処理の流れを示すフローチャートである。FIG. 10 is a flowchart showing the flow of processing of the local learning index calculation routine. 図11はGlobal学習実行ルーチンの処理の流れを示すフローチャートである。FIG. 11 is a flowchart showing the flow of processing of the global learning execution routine. 図12はGlobal学習指標算出ルーチンの処理の流れを示すフローチャートである。FIG. 12 is a flowchart showing the flow of processing of the global learning index calculation routine. 図13は空燃比検出タイミングの変更を仮定した場合の想定気筒を示す図である。FIG. 13 is a diagram showing an assumed cylinder when it is assumed that the air-fuel ratio detection timing is changed. 図14は急加減速判定ルーチンの処理の流れを示すフローチャートである。FIG. 14 is a flowchart showing the flow of the rapid acceleration / deceleration determination routine. 図15は実施例2の実行条件判定ルーチンの処理の流れを示すフローチャートである。FIG. 15 is a flowchart illustrating a flow of processing of an execution condition determination routine according to the second embodiment. 図16は実施例2の制御の実行例(その1)を示すタイムチャートである。FIG. 16 is a time chart showing an execution example (part 1) of the control of the second embodiment. 図17は実施例2の制御の実行例(その2)を示すタイムチャートである。FIG. 17 is a time chart showing an execution example (No. 2) of the control of the second embodiment.

以下、本発明を実施するための形態を具体化した幾つかの実施例を説明する。   Hereinafter, some embodiments embodying the mode for carrying out the present invention will be described.

本発明の実施例1を図1乃至図13に基づいて説明する。
まず、図1に基づいてエンジン制御システム全体の概略構成を説明する。
内燃機関である例えば直列4気筒のエンジン11は、第1気筒#1〜第4気筒#4の四つの気筒を有し、このエンジン11の吸気管12の最上流部には、エアクリーナ13が設けられ、このエアクリーナ13の下流側に、吸入空気量を検出するエアフローメータ14が設けられている。このエアフローメータ14の下流側には、モータ等によって開度調節されるスロットルバルブ15と、このスロットルバルブ15の開度(スロットル開度)を検出するスロットル開度センサ16とが設けられている。
A first embodiment of the present invention will be described with reference to FIGS.
First, a schematic configuration of the entire engine control system will be described with reference to FIG.
An in-line four-cylinder engine 11 that is an internal combustion engine, for example, has four cylinders, a first cylinder # 1 to a fourth cylinder # 4, and an air cleaner 13 is provided at the most upstream portion of the intake pipe 12 of the engine 11. An air flow meter 14 for detecting the intake air amount is provided on the downstream side of the air cleaner 13. A throttle valve 15 whose opening is adjusted by a motor or the like and a throttle opening sensor 16 for detecting the opening (throttle opening) of the throttle valve 15 are provided on the downstream side of the air flow meter 14.

更に、スロットルバルブ15の下流側には、サージタンク17が設けられ、このサージタンク17には、吸気管圧力を検出する吸気管圧力センサ18が設けられている。また、サージタンク17には、エンジン11の各気筒に空気を導入する吸気マニホールド19が設けられ、各気筒の吸気マニホールド19の吸気ポート近傍に、それぞれ燃料を吸気ポートに向けて噴射する燃料噴射弁20が取り付けられている。エンジン運転中は、燃料タンク21内の燃料が燃料ポンプ22によりデリバリパイプ23に送られ、各気筒の噴射タイミング毎に各気筒の燃料噴射弁20から燃料が噴射される。デリバリパイプ23には、燃料圧力(燃圧)を検出する燃圧センサ24が取り付けられている。   Further, a surge tank 17 is provided on the downstream side of the throttle valve 15, and an intake pipe pressure sensor 18 for detecting the intake pipe pressure is provided in the surge tank 17. The surge tank 17 is provided with an intake manifold 19 that introduces air into each cylinder of the engine 11, and a fuel injection valve that injects fuel toward the intake port in the vicinity of the intake port of the intake manifold 19 of each cylinder. 20 is attached. During engine operation, the fuel in the fuel tank 21 is sent to the delivery pipe 23 by the fuel pump 22 and fuel is injected from the fuel injection valve 20 of each cylinder at each injection timing of each cylinder. A fuel pressure sensor 24 that detects fuel pressure (fuel pressure) is attached to the delivery pipe 23.

また、エンジン11には、吸気バルブ25と排気バルブ26のバルブタイミング(開閉タイミング)をそれぞれ変化させる可変バルブタイミング機構27,28が設けられている。更に、エンジン11には、吸気カム軸29と排気カム軸30の回転に同期してカム角信号を出力する吸気カム角センサ31と排気カム角センサ32が設けられていると共に、エンジン11のクランク軸の回転に同期して所定クランク角毎(例えば30CA毎)にクランク角信号のパルスを出力するクランク角センサ33が設けられている。   Further, the engine 11 is provided with variable valve timing mechanisms 27 and 28 for changing the valve timing (opening / closing timing) of the intake valve 25 and the exhaust valve 26, respectively. Further, the engine 11 is provided with an intake cam angle sensor 31 and an exhaust cam angle sensor 32 that output a cam angle signal in synchronization with the rotation of the intake cam shaft 29 and the exhaust cam shaft 30, and the crank of the engine 11. A crank angle sensor 33 that outputs a pulse of a crank angle signal every predetermined crank angle (for example, every 30 CA) in synchronization with the rotation of the shaft is provided.

一方、エンジン11の排気管34のうちの各気筒の排出ガスが合流して流れる排気集合部34a(各気筒の排気マニホールド35が集合する部分又はそれよりも下流側)には、排出ガスの空燃比を検出する空燃比センサ36が設けられている。この空燃比センサ36の下流側に、排出ガス中のCO,HC,NOX 等を浄化する三元触媒等の触媒37が設けられている。また、エンジン11のシリンダブロックには、冷却水温を検出する冷却水温センサ38が取り付けられている。 On the other hand, in the exhaust pipe 34 of the engine 11, exhaust gas in the exhaust collecting portion 34 a (the portion where the exhaust manifold 35 of each cylinder gathers or the downstream side thereof) flows. An air-fuel ratio sensor 36 for detecting the fuel ratio is provided. A catalyst 37 such as a three-way catalyst for purifying CO, HC, NO x and the like in the exhaust gas is provided on the downstream side of the air-fuel ratio sensor 36. A cooling water temperature sensor 38 for detecting the cooling water temperature is attached to the cylinder block of the engine 11.

これら各種センサの出力は、電子制御ユニット(以下「ECU」と表記する)39に入力される。このECU39は、マイクロコンピュータを主体として構成され、内蔵されたROM(記憶媒体)に記憶された各種のエンジン制御用のプログラムを実行することで、エンジン運転状態に応じて、燃料噴射量、点火時期、スロットル開度(吸入空気量)等を制御する。   Outputs of these various sensors are input to an electronic control unit (hereinafter referred to as “ECU”) 39. The ECU 39 is mainly composed of a microcomputer, and executes various engine control programs stored in a built-in ROM (storage medium), thereby depending on the engine operating state, the fuel injection amount, the ignition timing. The throttle opening (intake air amount) and the like are controlled.

その際、ECU39は、所定の空燃比F/B制御実行条件が成立したときに、空燃比センサ36の出力に基づいて排出ガスの空燃比を目標空燃比に一致させるように混合気の空燃比(例えば燃料噴射量)をF/B制御する空燃比F/B制御を実行する。ここで、「F/B」は「フィードバック」を意味する(以下、同様)。   At this time, the ECU 39 sets the air-fuel ratio of the air-fuel mixture so that the air-fuel ratio of the exhaust gas matches the target air-fuel ratio based on the output of the air-fuel ratio sensor 36 when a predetermined air-fuel ratio F / B control execution condition is satisfied. Air-fuel ratio F / B control for F / B control (for example, fuel injection amount) is executed. Here, “F / B” means “feedback” (hereinafter the same).

具体的には、図2に示すように、まず、空燃比偏差算出部40で、検出空燃比(空燃比センサ36で検出した排出ガスの空燃比)と目標空燃比との偏差を算出し、空燃比F/B制御部41で、検出空燃比と目標空燃比との偏差が小さくなるように空燃比補正係数を算出する。そして、噴射量算出部42で、エンジン回転速度やエンジン負荷(吸気管負圧や吸入空気量等)に基づいて算出されたベース噴射量や空燃比補正係数等に基づいて燃料噴射量を算出し、その燃料噴射量に基づいて各気筒の燃料噴射弁20を制御する。   Specifically, as shown in FIG. 2, first, the air-fuel ratio deviation calculating unit 40 calculates the deviation between the detected air-fuel ratio (the air-fuel ratio of the exhaust gas detected by the air-fuel ratio sensor 36) and the target air-fuel ratio, The air-fuel ratio F / B control unit 41 calculates an air-fuel ratio correction coefficient so that the deviation between the detected air-fuel ratio and the target air-fuel ratio becomes small. The injection amount calculation unit 42 calculates the fuel injection amount based on the base injection amount, the air-fuel ratio correction coefficient, etc. calculated based on the engine speed and engine load (intake pipe negative pressure, intake air amount, etc.). The fuel injection valve 20 of each cylinder is controlled based on the fuel injection amount.

更に、ECU39は、後述する図6の気筒別空燃比制御ルーチンを実行することで、各気筒の空燃比検出タイミング毎に検出された空燃比センサ36の検出値に基づいて各気筒の空燃比を気筒毎に推定する気筒別空燃比推定を実行し、各気筒の推定空燃比に基づいて各気筒の空燃比を気筒毎に制御する気筒別空燃比制御を実行する。   Further, the ECU 39 executes an air-fuel ratio control routine for each cylinder shown in FIG. 6 to be described later, thereby setting the air-fuel ratio of each cylinder based on the detection value of the air-fuel ratio sensor 36 detected at each air-fuel ratio detection timing of each cylinder. Cylinder air-fuel ratio estimation is performed for each cylinder, and cylinder-by-cylinder air-fuel ratio control is performed to control the air-fuel ratio of each cylinder for each cylinder based on the estimated air-fuel ratio of each cylinder.

具体的には、図2に示すように、まず、気筒別空燃比推定部43で、後述する気筒別空燃比推定モデルを用いて空燃比センサ36の検出値(排気集合部34aを流れる排出ガスの実空燃比)に基づいて各気筒の空燃比を気筒毎に推定し、基準空燃比算出部44で、全気筒の推定空燃比の平均値を算出して、その平均値を基準空燃比に設定する。この後、気筒別空燃比偏差算出部45で、各気筒の推定空燃比と基準空燃比との偏差を気筒毎に算出し、気筒別空燃比制御部46で、各気筒の推定空燃比と基準空燃比との偏差が小さくなるように気筒別補正値として例えば燃料補正量(燃料噴射量の補正量)を気筒毎に算出する。その算出結果に基づいて各気筒の燃料噴射量を気筒毎に補正することで、各気筒に供給する混合気の空燃比を気筒毎に補正して気筒間の空燃比ばらつきを小さくする。   Specifically, as shown in FIG. 2, first, the cylinder-by-cylinder air-fuel ratio estimation unit 43 uses a detection value of the air-fuel ratio sensor 36 (exhaust gas flowing through the exhaust collecting unit 34 a) using a cylinder-by-cylinder air-fuel ratio estimation model described later. Based on the actual air-fuel ratio), the air-fuel ratio of each cylinder is estimated for each cylinder, the reference air-fuel ratio calculating unit 44 calculates the average value of the estimated air-fuel ratios of all the cylinders, and the average value is used as the reference air-fuel ratio. Set. Thereafter, the cylinder-by-cylinder air-fuel ratio deviation calculating unit 45 calculates the deviation between the estimated air-fuel ratio of each cylinder and the reference air-fuel ratio for each cylinder, and the cylinder-by-cylinder air-fuel ratio control unit 46 calculates the estimated air-fuel ratio of each cylinder and the reference air-fuel ratio. For example, a fuel correction amount (a fuel injection amount correction amount) is calculated for each cylinder as a cylinder specific correction value so that the deviation from the air-fuel ratio becomes small. By correcting the fuel injection amount of each cylinder for each cylinder based on the calculation result, the air-fuel ratio of the air-fuel mixture supplied to each cylinder is corrected for each cylinder to reduce the air-fuel ratio variation among the cylinders.

ここで、空燃比センサ36の検出値(排気集合部34aを流れる排出ガスの実空燃比)に基づいて各気筒の空燃比を推定するモデル(以下「気筒別空燃比推定モデル」という)の具体例を説明する。   Here, a specific model for estimating the air-fuel ratio of each cylinder based on the detected value of the air-fuel ratio sensor 36 (actual air-fuel ratio of the exhaust gas flowing through the exhaust collecting portion 34a) (hereinafter referred to as "cylinder-specific air-fuel ratio estimation model"). An example will be described.

排気集合部34aにおけるガス交換に着目して、空燃比センサ36の検出値を、排気集合部34aにおける各気筒の推定空燃比の履歴と空燃比センサ36の検出値の履歴とにそれぞれ所定の重みを乗じて加算したものとしてモデル化し、このモデルを用いて各気筒の空燃比を推定するようにしている。この際、オブザーバとしてはカルマンフィルタを用いる。   Paying attention to the gas exchange in the exhaust collecting portion 34a, the detected value of the air-fuel ratio sensor 36 is given a predetermined weight to the estimated air-fuel ratio history of each cylinder and the detected value history of the air-fuel ratio sensor 36 in the exhaust collecting portion 34a. The model is obtained by multiplying and adding, and the air-fuel ratio of each cylinder is estimated using this model. At this time, a Kalman filter is used as an observer.

より具体的には、排気集合部34aにおけるガス交換のモデルを次の(1)式にて近似する。
ys(t)=k1 ×u(t-1) +k2 ×u(t-2) −k3 ×ys(t-1)−k4 ×ys(t-2)
……(1)
ここで、ys は空燃比センサ36の検出値、uは排気集合部34aに流入するガスの空燃比、k1 〜k4 は定数である。
More specifically, a gas exchange model in the exhaust collecting portion 34a is approximated by the following equation (1).
ys (t) = k1 * u (t-1) + k2 * u (t-2) -k3 * ys (t-1) -k4 * ys (t-2)
...... (1)
Here, ys is a detected value of the air-fuel ratio sensor 36, u is an air-fuel ratio of the gas flowing into the exhaust collecting portion 34a, and k1 to k4 are constants.

排気系では、排気集合部34aにおけるガス流入及び混合の一次遅れ要素と、空燃比センサ36の応答遅れによる一次遅れ要素とが存在する。そこで、上記(1)式では、これらの一次遅れ要素を考慮して過去2回分の履歴を参照することとしている。   In the exhaust system, there are a first-order lag element for gas inflow and mixing in the exhaust collecting portion 34 a and a first-order lag element due to a response delay of the air-fuel ratio sensor 36. Therefore, in the above equation (1), the history for the past two times is referred to in consideration of these first order lag elements.

上記(1)式を状態空間モデルに変換すると、次の(2a)、(2b)式が導き出される。
X(t+1) =A・X(t) +B・u(t) +W(t) ……(2a)
Y(t) =C・X(t) +D・u(t) ……(2b)
ここで、A,B,C,Dはモデルのパラメータ、Yは空燃比センサ36の検出値、Xは状態変数としての各気筒の推定空燃比、Wはノイズである。
When the above equation (1) is converted into a state space model, the following equations (2a) and (2b) are derived.
X (t + 1) = A.X (t) + B.u (t) + W (t) (2a)
Y (t) = C · X (t) + D · u (t) (2b)
Here, A, B, C, and D are model parameters, Y is a detected value of the air-fuel ratio sensor 36, X is an estimated air-fuel ratio of each cylinder as a state variable, and W is noise.

更に、上記(2a)、(2b)式によりカルマンフィルタを設計すると、次の(3)式が得られる。
X^(k+1|k)=A・X^(k|k-1)+K{Y(k) −C・A・X^(k|k-1)} ……(3) ここで、X^(エックスハット)は各気筒の推定空燃比、Kはカルマンゲインである。X^(k+1|k)の意味は、時間(k) の推定値により次の時間(k+1) の推定値を求めることを表す。
Further, when the Kalman filter is designed by the above equations (2a) and (2b), the following equation (3) is obtained.
X ^ (k + 1 | k) = A.X ^ (k | k-1) + K {Y (k) -C.A.X ^ (k | k-1)} (3) where X ^ (X hat) is the estimated air-fuel ratio of each cylinder, and K is the Kalman gain. The meaning of X ^ (k + 1 | k) represents that the estimated value of the next time (k + 1) is obtained from the estimated value of time (k).

以上のようにして、気筒別空燃比推定モデルをカルマンフィルタ型オブザーバにて構成することにより、燃焼サイクルの進行に伴って各気筒の空燃比を順次推定することができる。   As described above, the cylinder-by-cylinder air-fuel ratio estimation model is configured by the Kalman filter type observer, whereby the air-fuel ratio of each cylinder can be sequentially estimated as the combustion cycle proceeds.

次に、各気筒の空燃比検出タイミング(空燃比センサ36の出力のサンプルタイミング)の設定方法について説明する。各気筒から排出される排出ガスが空燃比センサ36付近に到達してその空燃比が検出されるまでの遅れ(以下「排気系の応答遅れ」という)がエンジン運転状態によって変化する。これを考慮して、本実施例では、エンジン運転状態(例えばエンジン負荷、エンジン回転速度等)に応じてマップにより各気筒の空燃比検出タイミングを設定し、空燃比センサ36の出力をECU39に取り込むようにしている。一般に、エンジン負荷が小さくなるほど、排気系の応答遅れが大きくなるため、各気筒の空燃比検出タイミングは、エンジン負荷が小さくなるほど、遅角側にシフトされるように設定されている。   Next, a method for setting the air-fuel ratio detection timing of each cylinder (sample timing of the output of the air-fuel ratio sensor 36) will be described. The delay until the exhaust gas discharged from each cylinder reaches the vicinity of the air-fuel ratio sensor 36 and the air-fuel ratio is detected (hereinafter referred to as “exhaust system response delay”) varies depending on the engine operating state. Considering this, in this embodiment, the air-fuel ratio detection timing of each cylinder is set by a map according to the engine operating state (for example, engine load, engine speed, etc.), and the output of the air-fuel ratio sensor 36 is taken into the ECU 39. I am doing so. In general, as the engine load decreases, the response delay of the exhaust system increases. Therefore, the air-fuel ratio detection timing of each cylinder is set to shift to the retard side as the engine load decreases.

しかしながら、各気筒の排気ポートから空燃比センサ36までの排気マニホールド35の長さが各気筒毎に異なると共に、各気筒の排出ガスの流れがエンジン運転状態(エンジン回転速度や筒内充填空気量等)によって複雑に変化する。しかも、エンジン11の製造ばらつきや経年変化によっても排気系の応答遅れが変化するため、エンジン設計・製造過程で、各気筒の排気系の応答遅れ(各気筒の空燃比検出タイミング)とエンジン負荷との関係を精度良くマップ化しておくことは困難である。このため、各気筒の空燃比検出タイミングが適正な空燃比検出タイミングからずれる可能性がある。   However, the length of the exhaust manifold 35 from the exhaust port of each cylinder to the air-fuel ratio sensor 36 is different for each cylinder, and the flow of exhaust gas in each cylinder is in the engine operating state (engine rotation speed, in-cylinder charged air amount, etc.). ). Moreover, since the exhaust system response delay also changes due to manufacturing variations and aging of the engine 11, the response delay of the exhaust system of each cylinder (air-fuel ratio detection timing of each cylinder) and the engine load in the engine design and manufacturing process. It is difficult to map these relationships with high accuracy. For this reason, the air-fuel ratio detection timing of each cylinder may deviate from the proper air-fuel ratio detection timing.

もし、各気筒の空燃比検出タイミングがずれると、各気筒の空燃比の推定精度が悪化して、気筒別空燃比制御を続けても気筒間の推定空燃比のばらつきがいつまでも小さくならならない状態となる。   If the air-fuel ratio detection timing of each cylinder shifts, the estimation accuracy of the air-fuel ratio of each cylinder deteriorates, and even if the cylinder-by-cylinder air-fuel ratio control is continued, the variation in the estimated air-fuel ratio between the cylinders will not become forever. Become.

そこで、ECU39は、後述する図7乃至図12の各ルーチンを実行することで、気筒別空燃比制御中に推定空燃比に基づいて空燃比検出タイミングのずれの有無を判定する空燃比検出タイミング判定を行い、空燃比検出タイミングのずれ有りと判定されたときに空燃比検出タイミングを補正する空燃比検出タイミング補正を行う。   Therefore, the ECU 39 executes the routines shown in FIGS. 7 to 12 to be described later, thereby determining whether there is a deviation in the air-fuel ratio detection timing based on the estimated air-fuel ratio during the cylinder-by-cylinder air-fuel ratio control. The air-fuel ratio detection timing correction is performed to correct the air-fuel ratio detection timing when it is determined that there is a deviation in the air-fuel ratio detection timing.

例えば、エンジン11の1サイクル(720CA)内で空燃比センサ36の検出値のばらつき(変動)が最大となるように空燃比検出タイミングを補正するLocal学習を実行する。このLocal学習の実行後に、気筒別空燃比制御中に少なくとも一つの気筒の推定空燃比の変化とその気筒の気筒別補正値(例えば燃料補正量)の変化との関係に基づいて空燃比検出タイミングを補正するGlobal学習を実行する。このGlobal学習では、各気筒の推定空燃比が想定している各気筒番号を仮想的に複数通り変更した場合の各々において少なくとも一つの気筒の推定空燃比の変化とその推定空燃比の変更後の気筒番号の気筒別補正値の変化との相関値を算出し、この相関値が最大となるように空燃比検出タイミングを補正する。   For example, the local learning for correcting the air-fuel ratio detection timing is executed so that the variation (fluctuation) of the detection value of the air-fuel ratio sensor 36 is maximized within one cycle (720 CA) of the engine 11. After the execution of the local learning, the air-fuel ratio detection timing is determined based on the relationship between the change in the estimated air-fuel ratio of at least one cylinder and the change in the cylinder-specific correction value (for example, fuel correction amount) of the cylinder during the cylinder-by-cylinder air-fuel ratio control. The global learning for correcting is performed. In this global learning, the change in the estimated air-fuel ratio of at least one cylinder and the change in the estimated air-fuel ratio in each of the cases where each cylinder number assumed for the estimated air-fuel ratio of each cylinder is virtually changed in plural ways. A correlation value with a change in the cylinder-specific correction value of the cylinder number is calculated, and the air-fuel ratio detection timing is corrected so that this correlation value becomes maximum.

各気筒の空燃比検出タイミングがずれた場合、ある気筒の正しい空燃比検出タイミングがその気筒の現在の空燃比検出タイミングの近傍であるとは限らず、例えば、次の燃焼気筒の現在の空燃比検出タイミング又はそれよりも遅角側まで遅れることや、前の燃焼気筒の現在の空燃比検出タイミング又はそれよりも進角側まで進むことも想定される。例えば、図3(b)に示すように、ある気筒(第1気筒#1と仮定)の正しい空燃比検出タイミングが他の気筒(第3気筒#3と仮定)の現在の空燃比検出タイミングまでずれた場合、第1気筒#1の実空燃比を最もよく検出しているタイミングは、第1気筒#1の現在の空燃比検出タイミングではなく、第3気筒#3の現在の空燃比検出タイミングとなる。この場合、第1気筒#1の現在の空燃比検出タイミングに基づき推定した第1気筒#1の推定空燃比に基づき算出した第1気筒#1の気筒別補正値(例えば燃料補正量)で気筒別空燃比制御を実施すると、第1気筒#1の実空燃比は第1気筒#1の気筒別補正値の変化に応じて変化する。しかし、第1気筒#1の推定空燃比は第1気筒#1の気筒別補正値の変化に応じて変化せず、第3気筒#3の推定空燃比が第1気筒#1の気筒別補正値の変化に応じて変化することになる。   When the air-fuel ratio detection timing of each cylinder deviates, the correct air-fuel ratio detection timing of a certain cylinder is not necessarily near the current air-fuel ratio detection timing of that cylinder. For example, the current air-fuel ratio of the next combustion cylinder It is assumed that the detection timing is delayed to the retarded angle side, or the current air-fuel ratio detection timing of the previous combustion cylinder is advanced to the advanced angle side. For example, as shown in FIG. 3B, the correct air-fuel ratio detection timing of a certain cylinder (assumed to be the first cylinder # 1) reaches the current air-fuel ratio detection timing of the other cylinder (assumed to be the third cylinder # 3). In the case of deviation, the timing at which the actual air-fuel ratio of the first cylinder # 1 is best detected is not the current air-fuel ratio detection timing of the first cylinder # 1, but the current air-fuel ratio detection timing of the third cylinder # 3. It becomes. In this case, the cylinder is corrected by the cylinder-specific correction value (for example, fuel correction amount) of the first cylinder # 1 calculated based on the estimated air-fuel ratio of the first cylinder # 1 estimated based on the current air-fuel ratio detection timing of the first cylinder # 1. When the separate air-fuel ratio control is performed, the actual air-fuel ratio of the first cylinder # 1 changes according to the change of the cylinder-specific correction value of the first cylinder # 1. However, the estimated air-fuel ratio of the first cylinder # 1 does not change according to the change of the correction value for each cylinder of the first cylinder # 1, and the estimated air-fuel ratio of the third cylinder # 3 is corrected for each cylinder of the first cylinder # 1. It will change as the value changes.

この特性に着目して、本実施例では、Global学習によって、気筒別空燃比制御中に少なくとも一つの気筒の推定空燃比の変化とその気筒の気筒別補正値(例えば燃料補正量)の変化との関係に基づいて空燃比検出タイミングを補正するようにしているため、空燃比検出タイミングのずれを修正することができる。しかも、各気筒の推定空燃比が想定している各気筒番号を仮想的に複数通り変更した場合の各々において少なくとも一つの気筒の推定空燃比の変化とその推定空燃比の変更後の気筒番号の気筒別補正値(例えば燃料補正量)の変化との相関値を算出し、その相関値に基づいて空燃比検出タイミングを補正するようにしている。これにより、実際に現在の空燃比検出タイミングを順次ずらして相関値を算出する必要がなく、現在の空燃比検出タイミングでの各気筒の推定空燃比とそれに基づく各気筒の気筒別補正値のみに基づいて、仮想的に想定気筒を入れ替えた場合の各々の相関値を同時に算出して比較することができる。これにより、最適な空燃比検出タイミングが現在の空燃比検出タイミングから大きく乖離している場合でも、短時間で空燃比検出タイミングのずれを修正することができる。   Focusing on this characteristic, in the present embodiment, by global learning, the change in the estimated air-fuel ratio of at least one cylinder and the change in the cylinder-specific correction value (for example, fuel correction amount) of the cylinder during the cylinder-by-cylinder air-fuel ratio control. Since the air-fuel ratio detection timing is corrected based on the above relationship, the deviation of the air-fuel ratio detection timing can be corrected. In addition, in the case where each cylinder number assumed for the estimated air-fuel ratio of each cylinder is virtually changed in plural ways, the change of the estimated air-fuel ratio of at least one cylinder and the cylinder number after the change of the estimated air-fuel ratio are changed. A correlation value with a change in the cylinder specific correction value (for example, fuel correction amount) is calculated, and the air-fuel ratio detection timing is corrected based on the correlation value. This eliminates the need to actually calculate the correlation value by sequentially shifting the current air-fuel ratio detection timing, and uses only the estimated air-fuel ratio of each cylinder at the current air-fuel ratio detection timing and the correction value for each cylinder based on that. Based on this, it is possible to simultaneously calculate and compare the correlation values when the assumed cylinder is virtually replaced. Thereby, even when the optimal air-fuel ratio detection timing is greatly deviated from the current air-fuel ratio detection timing, the deviation of the air-fuel ratio detection timing can be corrected in a short time.

また、例えば、ある気筒(第1気筒#1と仮定)の正しい空燃比検出タイミングが他の連続する気筒(第2気筒#2、第4気筒#4と仮定)の現在の空燃比検出タイミングの中間までずれた場合、第1気筒#1の実空燃比を最も精度良く検出することができる空燃比検出タイミングは、第1気筒#1の現在の空燃比検出タイミングではなく、第2気筒#2と第4気筒#4の現在の空燃比検出タイミングの中間となる。この場合、前述の第1気筒#1の気筒別補正値の変化に最も相関があるタイミングでの推定空燃比は現在の空燃比検出タイミングでの推定において得ることができないため、最適な空燃比検出タイミングに修正できない可能性がある。従って、各気筒の空燃比検出タイミングでの空燃比センサ36の検出値のいずれかが、各気筒の実空燃比のいずれかを精度良く検出していることが望ましい。   Further, for example, the correct air-fuel ratio detection timing of a certain cylinder (assumed to be the first cylinder # 1) is the current air-fuel ratio detection timing of other consecutive cylinders (assumed to be the second cylinder # 2 and the fourth cylinder # 4). The air-fuel ratio detection timing at which the actual air-fuel ratio of the first cylinder # 1 can be detected with the highest accuracy when shifted to the middle is not the current air-fuel ratio detection timing of the first cylinder # 1, but the second cylinder # 2. And the current air-fuel ratio detection timing of the fourth cylinder # 4. In this case, since the estimated air-fuel ratio at the timing most correlated with the change in the cylinder-by-cylinder correction value of the first cylinder # 1 cannot be obtained in the estimation at the current air-fuel ratio detection timing, the optimum air-fuel ratio detection is performed. The timing may not be corrected. Therefore, it is desirable that any of the detection values of the air-fuel ratio sensor 36 at the air-fuel ratio detection timing of each cylinder accurately detect any of the actual air-fuel ratios of each cylinder.

そこで、本実施例では、Local学習によって、エンジン11の1サイクル(720CA)内で空燃比センサ36の検出値のばらつき(変動)が最大となるように空燃比検出タイミングを補正するようにしている。これにより、各気筒の実空燃比がばらついている場合、1サイクル内で空燃比が変動するが、その変動を最大に検出することができ、各気筒の空燃比検出タイミングでの空燃比センサ36の検出値のいずれかが、各気筒の実空燃比のいずれかを精度良く検出しているようにできる。これにより、各気筒の推定空燃比のいずれかが各気筒の実空燃比のいずれかを検出することができるため、Global学習において、空燃比検出タイミングのずれを精度良く修正することができる。   Thus, in this embodiment, the air-fuel ratio detection timing is corrected by local learning so that the variation (variation) in the detection value of the air-fuel ratio sensor 36 is maximized within one cycle (720 CA) of the engine 11. . Thus, when the actual air-fuel ratio of each cylinder varies, the air-fuel ratio fluctuates within one cycle, but the fluctuation can be detected to the maximum, and the air-fuel ratio sensor 36 at the air-fuel ratio detection timing of each cylinder. Any one of the detected values can accurately detect any of the actual air-fuel ratios of the respective cylinders. Thereby, since any of the estimated air-fuel ratios of the respective cylinders can detect any of the actual air-fuel ratios of the respective cylinders, the deviation of the air-fuel ratio detection timing can be accurately corrected in the global learning.

ところで、気筒別空燃比制御中に、エンジン11の失火(例えば特定の気筒での連続失火)が発生すると、その影響で各気筒の空燃比の推定精度が悪化してしまうことがある。このような場合、各気筒の推定空燃比が発散して、各気筒の空燃比を正しく制御する(気筒間の空燃比ばらつきを小さくするように制御する)ことができず、排気エミッションの悪化を招く可能性がある。   By the way, if misfire of the engine 11 (for example, continuous misfire in a specific cylinder) occurs during cylinder-by-cylinder air-fuel ratio control, the estimation accuracy of the air-fuel ratio of each cylinder may deteriorate due to the influence. In such a case, the estimated air-fuel ratio of each cylinder diverges, and the air-fuel ratio of each cylinder cannot be correctly controlled (control so as to reduce the variation in air-fuel ratio between cylinders). There is a possibility of inviting.

この対策として、本実施例1では、ECU39により後述する図4及び図5の各ルーチンを実行することで、エンジン11の失火の有無を判定し、エンジン11の失火有りと判定されたときに、気筒別空燃比推定と気筒別空燃比制御を停止すると共に、気筒別空燃比制御による気筒別補正値をリセットするようにしている。
以下、本実施例1でECU39が実行する図4乃至図12の各ルーチンの処理内容を説明する。
As a countermeasure, in the first embodiment, the ECU 39 executes the routines shown in FIGS. 4 and 5 to be described later to determine whether the engine 11 has misfired. When it is determined that the engine 11 has misfired, The cylinder-by-cylinder air-fuel ratio estimation and the cylinder-by-cylinder air-fuel ratio control are stopped, and the cylinder-by-cylinder correction value by the cylinder-by-cylinder air-fuel ratio control is reset.
Hereinafter, the processing content of each routine of FIG. 4 thru | or FIG. 12 which ECU39 performs in the present Example 1 is demonstrated.

[失火判定ルーチン]
図4に示す失火判定ルーチンは、クランク角センサ33の出力パルスに同期して所定クランク角毎(例えば30CA毎)に起動され、特許請求の範囲でいう失火判定手段としての役割を果たす。
[Misfire detection routine]
The misfire determination routine shown in FIG. 4 is started at every predetermined crank angle (for example, every 30 CA) in synchronization with the output pulse of the crank angle sensor 33, and serves as misfire determination means in the claims.

本ルーチンが起動されると、まず、ステップ101で、所定タイミング毎(例えば所定の失火判定クランク角区間毎)にクランク角センサ33の出力信号に基づいてエンジン11のクランク軸が30CA回転するのに要した時間である30CA時間T30を算出する。   When this routine is started, first, in step 101, the crankshaft of the engine 11 rotates 30 CA at a predetermined timing (for example, every predetermined misfire determination crank angle section) based on the output signal of the crank angle sensor 33. 30 CA time T30, which is the time required, is calculated.

この後、ステップ102に進み、今回の30CA時間T30(i) と前回の30CA時間T30(i-1) との差である時間変化量DMF(エンジン回転変動の情報)を算出する。
この後、ステップ103に進み、時間変化量DMFが失火判定値よりも大きいか否かを判定する。
Thereafter, the process proceeds to step 102, where a time change amount DMF (information on engine rotation fluctuation), which is a difference between the current 30CA time T30 (i) and the previous 30CA time T30 (i-1), is calculated.
Thereafter, the process proceeds to step 103, where it is determined whether the time change amount DMF is larger than the misfire determination value.

このステップ103で、時間変化量DMFが失火判定値以下であると判定された場合には、ステップ104に進み、エンジン11の失火無しと判定して、失火フラグを「0」にリセットした後、本ルーチンを終了する。   If it is determined in step 103 that the time change amount DMF is equal to or less than the misfire determination value, the process proceeds to step 104, where it is determined that the engine 11 has not misfired, and the misfire flag is reset to “0”. This routine ends.

これに対して、上記ステップ103で、時間変化量DMFが失火判定値よりも大きいと判定された場合には、ステップ105に進み、エンジン11の失火有りと判定して、失火フラグを「1」にセットした後、本ルーチンを終了する。尚、連続して時間変化量DMFが失火判定値よりも大きいと判定された回数(連続回数)が所定値を越えたときに失火有りと判定するようにしたり、或は、所定期間内に時間変化量DMFが失火判定値よりも大きいと判定された回数(積算回数)が所定値を越えたときに失火有りと判定するようにしても良い。   On the other hand, if it is determined in step 103 that the time change amount DMF is larger than the misfire determination value, the process proceeds to step 105 where it is determined that the engine 11 has misfired and the misfire flag is set to “1”. After setting to, this routine is terminated. It should be noted that when the number of times that the time change amount DMF is continuously determined to be larger than the misfire determination value (the number of consecutive times) exceeds a predetermined value, it is determined that there is a misfire, or The misfire may be determined to be present when the number of times that the change amount DMF is determined to be larger than the misfire determination value (the number of integration) exceeds a predetermined value.

また、図4のルーチンでは、時間変化量DMFを失火判定値と比較して失火の有無を判定するようにしたが、失火判定方法は、これに限定されず、適宜変更しても良く、例えば、エンジン回転変動量を失火判定値と比較して失火の有無を判定するようにしても良い。   Further, in the routine of FIG. 4, the time change amount DMF is compared with the misfire determination value to determine the presence or absence of misfire. However, the misfire determination method is not limited to this, and may be changed as appropriate. The presence or absence of misfire may be determined by comparing the engine rotation fluctuation amount with the misfire determination value.

[実行条件判定ルーチン]
図5に示す実行条件判定ルーチンは、クランク角センサ33の出力パルスに同期して所定クランク角毎(例えば30CA毎)に起動される。本ルーチンが起動されると、まず、ステップ201で、失火フラグ=0(失火無し)であるか否かを判定する。
[Execution condition judgment routine]
The execution condition determination routine shown in FIG. 5 is started every predetermined crank angle (for example, every 30 CA) in synchronization with the output pulse of the crank angle sensor 33. When this routine is started, first, at step 201, it is determined whether or not a misfire flag = 0 (no misfire).

このステップ201で、失火フラグ=0(失火無し)と判定された場合には、ステップ202に進み、空燃比センサ36が使用可能(例えば空燃比センサ36が正常で且つ活性状態)であるか否かを判定する。   If it is determined in step 201 that the misfire flag = 0 (no misfire), the process proceeds to step 202, in which the air-fuel ratio sensor 36 is usable (for example, whether the air-fuel ratio sensor 36 is normal and active). Determine whether.

このステップ202で、空燃比センサ36が使用可能であると判定された場合には、ステップ203に進み、エンジン運転状態(例えばエンジン負荷とエンジン回転速度)が所定領域内(例えば空燃比推定精度を確保できる領域内)であるか否かを判定する。   If it is determined in step 202 that the air-fuel ratio sensor 36 can be used, the process proceeds to step 203 where the engine operating state (for example, engine load and engine speed) is within a predetermined range (for example, the air-fuel ratio estimation accuracy is reduced). It is determined whether it is within the area that can be secured.

上記ステップ201〜203で全て「Yes」と判定された場合(つまり上記ステップ201〜203の条件を全て満たした場合)には、ステップ204に進み、気筒別空燃比制御の実行条件が成立していると判定して、実行条件フラグを「1」にセットした後、本ルーチンを終了する。   If all the determinations in steps 201 to 203 are “Yes” (that is, if all the conditions in steps 201 to 203 are satisfied), the process proceeds to step 204 and the execution condition of the cylinder-by-cylinder air-fuel ratio control is satisfied. This routine is terminated after the execution condition flag is set to “1”.

これに対して、上記ステップ201で、失火フラグ=1(失火有り)と判定された場合には、ステップ205に進み、各気筒の気筒別補正値(燃料補正量)を所定値(例えば初期値又は失火有り判定前の値)にリセットする。この後、ステップ206に進み、気筒別空燃比制御の実行条件が不成立であると判定して、実行条件フラグを「0」にリセットした後、本ルーチンを終了する。これらの処理により、エンジン11の失火有り(失火フラグ=1)と判定されたときに、気筒別空燃比制御の実行条件を不成立(実行条件フラグ=0)にして、気筒別空燃比推定と気筒別空燃比制御を停止すると共に、各気筒の気筒別補正値をリセットするようになっている。従って、本実施例1では、図5のルーチン等が特許請求の範囲でいう停止手段としての役割を果たす。   On the other hand, if it is determined in step 201 that the misfire flag = 1 (with misfire), the process proceeds to step 205, and the cylinder-specific correction value (fuel correction amount) of each cylinder is set to a predetermined value (for example, an initial value). (Or the value before the misfire detection). Thereafter, the routine proceeds to step 206, where it is determined that the execution condition of the cylinder-by-cylinder air-fuel ratio control is not satisfied, the execution condition flag is reset to “0”, and this routine is ended. By these processes, when it is determined that the engine 11 has misfired (misfire flag = 1), the execution condition of the cylinder-by-cylinder air-fuel ratio control is not satisfied (execution condition flag = 0), and the cylinder-by-cylinder air-fuel ratio estimation and cylinder The separate air-fuel ratio control is stopped and the cylinder-specific correction value for each cylinder is reset. Therefore, in the first embodiment, the routine of FIG. 5 or the like serves as a stopping means in the claims.

また、上記ステップ202又は203で「No」と判定された場合には、ステップ206に進み、気筒別空燃比制御の実行条件が不成立であると判定して、実行条件フラグを「0」にリセットした後、本ルーチンを終了する。   If “No” is determined in step 202 or 203, the process proceeds to step 206, where it is determined that the execution condition of the air-fuel ratio control for each cylinder is not satisfied, and the execution condition flag is reset to “0”. After that, this routine is finished.

[気筒別空燃比制御ルーチン]
図6に示す気筒別空燃比制御ルーチンは、クランク角センサ33の出力パルスに同期して所定クランク角毎(例えば30CA毎)に起動され、特許請求の範囲でいう気筒別空燃比制御手段としての役割を果たす。
[Air-fuel ratio control routine for each cylinder]
The cylinder-by-cylinder air-fuel ratio control routine shown in FIG. 6 is started at predetermined crank angles (for example, every 30 CA) in synchronization with the output pulse of the crank angle sensor 33, and serves as cylinder-by-cylinder air-fuel ratio control means. Play a role.

本ルーチンが起動されると、まず、ステップ301で、気筒別空燃比制御の実行条件が成立しているか否かを、実行条件フラグが「1」にセットされているか否かによって判定する。   When this routine is started, first, in step 301, it is determined whether or not the execution condition of the cylinder-by-cylinder air-fuel ratio control is satisfied, depending on whether or not the execution condition flag is set to “1”.

このステップ301で、気筒別空燃比制御の実行条件が不成立(実行条件フラグ=0)と判定された場合には、ステップ302以降の気筒別空燃比制御に関する処理を実行することなく、本ルーチンを終了する。これにより、エンジン11の失火有り(失火フラグ=1)と判定されて、気筒別空燃比制御の実行条件が不成立(実行条件フラグ=0)と判定された場合には、気筒別空燃比推定と気筒別空燃比制御が停止される。   If it is determined in step 301 that the execution condition of the cylinder-by-cylinder air-fuel ratio control is not satisfied (execution condition flag = 0), this routine is executed without executing the processing related to the cylinder-by-cylinder air-fuel ratio control in and after step 302. finish. Thus, when it is determined that the engine 11 has misfired (misfire flag = 1) and the execution condition of the cylinder-by-cylinder air-fuel ratio control is not established (execution condition flag = 0), the cylinder-by-cylinder air-fuel ratio estimation is performed. The cylinder-by-cylinder air-fuel ratio control is stopped.

一方、上記ステップ301で、気筒別空燃比制御の実行条件が成立している(実行条件フラグ=1)と判定された場合には、ステップ302以降の気筒別空燃比制御に関する処理を次のようにして実行する。   On the other hand, if it is determined in step 301 that the execution condition of the cylinder-by-cylinder air-fuel ratio control is satisfied (execution condition flag = 1), the processing related to the cylinder-by-cylinder air-fuel ratio control in step 302 and subsequent steps is as follows. And run.

まず、ステップ302で、各気筒の空燃比検出タイミング(空燃比センサ36の出力のサンプルタイミング)を、その時点のエンジン負荷(例えば吸気管圧力)に応じてマップにより設定する。尚、各気筒の空燃比検出タイミングをエンジン負荷とエンジン回転速度に応じてマップにより設定しても良い。この空燃比検出タイミングを設定するマップは、後述する図9のLocal学習実行ルーチン及び図11のGlobal学習実行ルーチンによって学習補正される。   First, in step 302, the air-fuel ratio detection timing of each cylinder (sample timing of the output of the air-fuel ratio sensor 36) is set by a map according to the engine load (for example, intake pipe pressure) at that time. Note that the air-fuel ratio detection timing of each cylinder may be set by a map according to the engine load and the engine speed. The map for setting the air-fuel ratio detection timing is corrected by a local learning execution routine shown in FIG. 9 and a global learning execution routine shown in FIG.

この後、ステップ303に進み、現在のクランク角が上記ステップ302で設定した空燃比検出タイミングであるか否かを判定し、空燃比検出タイミングでなければ、以降の処理を行うことなく、本ルーチンを終了する。   Thereafter, the routine proceeds to step 303, where it is determined whether or not the current crank angle is the air-fuel ratio detection timing set in step 302. If it is not the air-fuel ratio detection timing, this routine is executed without performing the subsequent processing. Exit.

これに対して、現在のクランク角が上記ステップ302で設定した空燃比検出タイミングであれば、ステップ304に進み、空燃比センサ36の出力(空燃比検出値)を読み込む。   On the other hand, if the current crank angle is the air-fuel ratio detection timing set in step 302, the process proceeds to step 304, and the output (air-fuel ratio detection value) of the air-fuel ratio sensor 36 is read.

この後、ステップ305に進み、前記気筒別空燃比推定モデルを用いて今回の空燃比推定対象となる気筒の空燃比を空燃比センサ36の検出値に基づいて推定する。このステップ305の処理が特許請求の範囲でいう気筒別空燃比推定手段としての役割を果たす。   Thereafter, the routine proceeds to step 305, where the air-fuel ratio of the cylinder that is the current air-fuel ratio estimation target is estimated based on the detected value of the air-fuel ratio sensor 36 using the cylinder-by-cylinder air-fuel ratio estimation model. The processing in step 305 serves as cylinder-by-cylinder air-fuel ratio estimation means in the claims.

この後、ステップ306に進み、全気筒の推定空燃比の平均値を算出して、その平均値を基準空燃比(全気筒の目標空燃比)に設定する。
この後、ステップ307に進み、各気筒の推定空燃比と基準空燃比との偏差を算出して、その偏差が小さくなるように各気筒の気筒別補正値として燃料補正量を算出する。
Thereafter, the process proceeds to step 306, where an average value of estimated air-fuel ratios of all cylinders is calculated, and the average value is set as a reference air-fuel ratio (target air-fuel ratio of all cylinders).
Thereafter, the process proceeds to step 307, where the deviation between the estimated air-fuel ratio of each cylinder and the reference air-fuel ratio is calculated, and the fuel correction amount is calculated as a cylinder-specific correction value for each cylinder so that the deviation becomes small.

この後、ステップ308に進み、各気筒の燃料補正量に基づいて各気筒の燃料噴射量を補正することで、各気筒に供給する混合気の空燃比を各気筒毎に補正して気筒間の空燃比ばらつきを小さくするように制御する。   Thereafter, the routine proceeds to step 308, where the fuel injection amount of each cylinder is corrected based on the fuel correction amount of each cylinder, thereby correcting the air-fuel ratio of the air-fuel mixture supplied to each cylinder for each cylinder. Control is performed to reduce the variation in air-fuel ratio.

[空燃比検出タイミング判定ルーチン]
図7に示す空燃比検出タイミング判定ルーチンは、クランク角センサ33の出力パルスに同期して所定クランク角毎(例えば30CA毎)に起動される。本ルーチンが起動されると、まず、ステップ401で、気筒別空燃比制御中であるか否かを判定し、気筒別空燃比制御中でなければ、以降の処理を行うことなく、本ルーチンを終了する。
[Air-fuel ratio detection timing determination routine]
The air-fuel ratio detection timing determination routine shown in FIG. 7 is started every predetermined crank angle (for example, every 30 CA) in synchronization with the output pulse of the crank angle sensor 33. When this routine is started, first, at step 401, it is determined whether or not the cylinder-by-cylinder air-fuel ratio control is being performed. If the cylinder-by-cylinder air-fuel ratio control is not being performed, this routine is executed without performing the subsequent processing. finish.

これに対して、気筒別空燃比制御中であれば、ステップ402に進み、所定以上の燃料補正を実施中であるか否かを、例えば、下記の条件(A1)〜(A3)のいずれか1つ又は2つ以上によって判定する。   On the other hand, if the cylinder-by-cylinder air-fuel ratio control is being performed, the routine proceeds to step 402, where it is determined whether or not fuel correction of a predetermined value or more is being performed, for example, one of the following conditions (A1) to (A3) Determine by one or more.

(A1)各気筒の燃料補正量のうちの最大の燃料補正量と最小の燃料補正量との偏差が所定値以上であるか否かで、所定以上の燃料補正を実施中であるか否かを判定する。
(A2)全気筒の燃料補正量の標準偏差が所定値以上であるか否かで、所定以上の燃料補正を実施中であるか否かを判定する。
(A3)燃料補正開始後の経過時間が所定時間以上であるか否かで、所定以上の燃料補正を実施中であるか否かを判定する。
(A1) Whether or not fuel correction more than a predetermined value is being performed depending on whether or not the deviation between the maximum fuel correction value and the minimum fuel correction value among the fuel correction values for each cylinder is equal to or greater than a predetermined value Determine.
(A2) It is determined whether or not fuel correction greater than or equal to a predetermined value is being performed based on whether or not the standard deviation of the fuel correction amount for all cylinders is greater than or equal to a predetermined value.
(A3) It is determined whether or not a fuel correction of a predetermined value or more is being performed based on whether or not an elapsed time after the start of the fuel correction is a predetermined time or more.

このステップ402で、所定以上の燃料補正を実施していないと判定されれば、そのまま本ルーチンを終了する。
一方、上記ステップ402で、所定以上の燃料補正を実施中であると判定されれば、ステップ403に進み、気筒間の推定空燃比のばらつき度合いが大きいか否かを、例えば、下記の条件(B1),(B2)のいずれか一方又は両方によって判定する。
If it is determined in step 402 that the predetermined fuel correction or more has not been performed, the present routine is immediately terminated.
On the other hand, if it is determined in step 402 that fuel correction of a predetermined value or more is being performed, the process proceeds to step 403 to determine whether the degree of variation in the estimated air-fuel ratio between the cylinders is large, for example, under the following condition ( Judgment is made based on one or both of B1) and (B2).

(B1)各気筒の推定空燃比のうちの最大の推定空燃比と最小の推定空燃比との偏差が所定値以上であるか否かで、気筒間の推定空燃比のばらつき度合いが大きいか否かを判定する。
(B2)全気筒の推定空燃比の標準偏差が所定値以上であるか否かで、気筒間の推定空燃比のばらつき度合いが大きいか否かを判定する。
(B1) Whether the variation in the estimated air-fuel ratio among the cylinders is large depending on whether the deviation between the maximum estimated air-fuel ratio and the minimum estimated air-fuel ratio among the estimated air-fuel ratios of each cylinder is a predetermined value or more. Determine whether.
(B2) It is determined whether or not the degree of variation in the estimated air-fuel ratio among the cylinders is large depending on whether the standard deviation of the estimated air-fuel ratio of all the cylinders is equal to or greater than a predetermined value.

このステップ403で、気筒間の推定空燃比のばらつき度合いが小さいと判定されれば、空燃比検出タイミングが正しいと判断して、そのまま本ルーチンを終了する。
一方、上記ステップ403で、気筒間の推定空燃比のばらつき度合いが大きいと判定されれば、空燃比検出タイミングがずれている可能性があると判断して、ステップ404に進む。このステップ404で、各気筒の燃料補正量の増減方向と推定空燃比の増減方向とが反対の挙動になっているか否かを、例えば各気筒の燃料補正量の変化率と推定空燃比の変化率との偏差が所定値以上であるか否かによって判定する。
If it is determined in step 403 that the degree of variation in the estimated air-fuel ratio between the cylinders is small, it is determined that the air-fuel ratio detection timing is correct, and this routine is immediately terminated.
On the other hand, if it is determined in step 403 that the degree of variation in the estimated air-fuel ratio between the cylinders is large, it is determined that the air-fuel ratio detection timing may be shifted, and the process proceeds to step 404. In this step 404, it is determined whether or not the increase / decrease direction of the fuel correction amount of each cylinder and the increase / decrease direction of the estimated air-fuel ratio are opposite, for example, the change rate of the fuel correction amount of each cylinder and the change of the estimated air-fuel ratio. It is determined by whether or not the deviation from the rate is a predetermined value or more.

このステップ404で、各気筒の燃料補正量の増減方向と推定空燃比の増減方向とが同じ挙動になっていると判定されれば、空燃比検出タイミングが正しいと判断して、そのまま本ルーチンを終了する。   If it is determined in step 404 that the fuel correction amount increase / decrease direction of each cylinder is the same as the estimated air / fuel ratio increase / decrease direction, it is determined that the air / fuel ratio detection timing is correct, and this routine is directly executed. finish.

一方、上記ステップ404で、各気筒の燃料補正量の増減方向と推定空燃比の増減方向とが反対の挙動になっていると判定されれば、ステップ405に進み、空燃比検出タイミングがずれていると判定して、ずれ判定フラグを「1」にセットした後、本ルーチンを終了する。   On the other hand, if it is determined in step 404 that the increase / decrease direction of the fuel correction amount of each cylinder and the increase / decrease direction of the estimated air / fuel ratio are opposite, the process proceeds to step 405 and the air / fuel ratio detection timing is shifted. This routine is terminated after the deviation determination flag is set to “1”.

[空燃比検出タイミングずれ学習補正ルーチン]
図8に示す空燃比検出タイミングずれ学習補正ルーチンは、クランク角センサ33の出力パルスに同期して所定クランク角毎(例えば30CA毎)に起動される。本ルーチンが起動されると、まず、ステップ501で、Local学習完了フラグが「1」にセットされているか否かを判定し、Local学習完了フラグが「1」にセットされていると判定されれば、ステップ502に進み、Local学習完了後カウンタをカウントアップする。
[Air-fuel ratio detection timing deviation learning correction routine]
The air-fuel ratio detection timing deviation learning correction routine shown in FIG. 8 is started every predetermined crank angle (for example, every 30 CA) in synchronization with the output pulse of the crank angle sensor 33. When this routine is started, first, in step 501, it is determined whether or not the local learning completion flag is set to “1”, and it is determined that the local learning completion flag is set to “1”. In step 502, the counter is incremented after the local learning is completed.

この後、ステップ503に進み、図7の空燃比検出タイミング判定ルーチンにより空燃比検出タイミングがずれていると判定されたか否かを、ずれ判定フラグが「1」にセットされているか否かによって判定する。   Thereafter, the routine proceeds to step 503, where it is determined whether or not the air-fuel ratio detection timing is determined to be shifted by the air-fuel ratio detection timing determination routine of FIG. 7 depending on whether or not the shift determination flag is set to “1”. To do.

このステップ503で、空燃比検出タイミングがずれていると判定されていない場合(ずれ判定フラグ=0の場合)には、ステップ504以降の処理を行うことなく、本ルーチンを終了する。   If it is not determined in step 503 that the air-fuel ratio detection timing has shifted (if the shift determination flag = 0), this routine is terminated without performing the processing from step 504 onward.

一方、上記ステップ503で、空燃比検出タイミングがずれていると判定されている場合(ずれ判定フラグ=1の場合)には、ステップ504に進み、Local学習完了フラグが「0」であるか又はLocal学習完了後カウンタのカウント値が所定値T1 以上であるか否かを判定する。   On the other hand, when it is determined in step 503 that the air-fuel ratio detection timing has shifted (when the shift determination flag = 1), the process proceeds to step 504, where the local learning completion flag is “0” or It is determined whether or not the count value of the counter after completion of the local learning is equal to or greater than a predetermined value T1.

このステップ504で、Local学習完了フラグが「0」であると判定された場合、又は、Local学習完了後カウンタのカウント値が所定値T1 以上であると判定された場合には、ステップ505に進む。このステップ505で、Local学習完了後カウンタのカウント値を「0」にリセットすると共に、Local学習完了フラグを「0」にリセットして、Local学習実行カウンタをカウントアップする。   If it is determined in step 504 that the local learning completion flag is “0”, or if the count value of the counter after completion of local learning is determined to be greater than or equal to the predetermined value T1, the process proceeds to step 505. . In step 505, the count value of the local learning completion counter is reset to “0”, the local learning completion flag is reset to “0”, and the local learning execution counter is counted up.

この後、ステップ506に進み、各気筒の気筒別補正値(燃料補正量)を前回値にホールドした後、ステップ507に進み、後述する図9のLocal学習実行ルーチンを実行して、1サイクル内で空燃比センサ36の検出値のばらつきが最大となるように空燃比検出タイミングを補正するLocal学習を実行する。   Thereafter, the process proceeds to step 506, and the cylinder-specific correction value (fuel correction amount) of each cylinder is held at the previous value, and then the process proceeds to step 507, where a local learning execution routine of FIG. Thus, local learning for correcting the air-fuel ratio detection timing is executed so that the variation in the detection value of the air-fuel ratio sensor 36 is maximized.

一方、上記ステップ504で、Local学習完了フラグが「1」であると判定され、且つ、Local学習完了後カウンタのカウント値が所定値T1 に達していないと判定された場合には、ステップ508に進み、Local学習完了後カウンタのカウント値が所定値T2 以上であるか否かを判定する。ここで、所定値T2 は、所定値T1 よりも小さい値である(T2 <T1 )。   On the other hand, if it is determined in step 504 that the local learning completion flag is “1” and it is determined that the count value of the counter after completion of the local learning has not reached the predetermined value T1, step 508 is executed. Then, it is determined whether or not the count value of the counter after completion of the local learning is equal to or greater than a predetermined value T2. Here, the predetermined value T2 is a value smaller than the predetermined value T1 (T2 <T1).

このステップ508で、Local学習完了後カウンタのカウント値が所定値T2 に達していないと判定された場合には、Local学習が完了してから気筒別空燃比制御が安定するのに十分な時間が経過していないと判断して、本ルーチンを終了する。   If it is determined in step 508 that the count value of the counter after completion of the local learning has not reached the predetermined value T2, a sufficient time is required for the cylinder-by-cylinder air-fuel ratio control to stabilize after the local learning is completed. It is determined that it has not elapsed, and this routine is terminated.

その後、上記ステップ508で、Local学習完了後カウンタのカウント値が所定値T2 以上であると判定された場合には、Local学習が完了してから気筒別空燃比制御が安定するのに十分な時間が経過したと判断して、ステップ509に進み、Global学習実行カウンタをカウントアップする。   Thereafter, if it is determined in step 508 that the count value of the counter after the completion of local learning is equal to or greater than the predetermined value T2, a sufficient time for the cylinder-by-cylinder air-fuel ratio control to stabilize after the local learning is completed. In step 509, the global learning execution counter is counted up.

この後、ステップ510に進み、後述する図11のGlobal学習実行ルーチンを実行して、各気筒の推定空燃比の変化と気筒別補正値(燃料補正量)の変化との関係に基づいて空燃比検出タイミングを補正するGlobal学習を実行する。   Thereafter, the routine proceeds to step 510, where a global learning execution routine of FIG. 11 described later is executed, and the air-fuel ratio is determined based on the relationship between the change in the estimated air-fuel ratio of each cylinder and the change in the correction value (fuel correction amount) for each cylinder. Global learning for correcting the detection timing is executed.

[Local学習実行ルーチン]
図9に示すLocal学習実行ルーチンは、前記図8の空燃比検出タイミングずれ学習補正ルーチンのステップ507で実行されるサブルーチンである。
[Local learning execution routine]
The local learning execution routine shown in FIG. 9 is a subroutine executed in step 507 of the air-fuel ratio detection timing deviation learning correction routine of FIG.

本ルーチンでは、1サイクル内で空燃比センサ36の検出値のばらつきが最大となるように空燃比検出タイミングを補正するLocal学習を実行する。このLocal学習では、各気筒の空燃比検出タイミング毎に検出された空燃比センサ36の検出値の分散に相当する値が最大となるように空燃比検出タイミングを補正する。   In this routine, local learning for correcting the air-fuel ratio detection timing is performed so that the variation in the detection value of the air-fuel ratio sensor 36 is maximized within one cycle. In this local learning, the air-fuel ratio detection timing is corrected so that the value corresponding to the dispersion of the detection value of the air-fuel ratio sensor 36 detected at each air-fuel ratio detection timing of each cylinder becomes maximum.

本ルーチンが起動されると、まず、ステップ601で、Local学習実行カウンタのカウント値が所定値(例えば30サイクルに相当する値)以下であるか否かを判定する。
このステップ601で、Local学習実行カウンタのカウント値が所定値以下であると判定されれば、ステップ602に進み、図10のLocal学習指標算出ルーチンを実行して、Local学習指標を次のようにして算出する。第1気筒#1の空燃比検出タイミングを下記の各タイミングL1 〜L6 [CA]と仮定した場合について、それぞれ各気筒の空燃比検出タイミング毎に検出された空燃比センサ36の検出値の分散に相当する値(以下「検出空燃比の分散」という)を算出し、この検出空燃比の分散をLocal学習指標とする。
When this routine is started, first, in step 601, it is determined whether or not the count value of the local learning execution counter is equal to or less than a predetermined value (for example, a value corresponding to 30 cycles).
If it is determined in step 601 that the count value of the local learning execution counter is equal to or smaller than the predetermined value, the process proceeds to step 602, the local learning index calculation routine of FIG. 10 is executed, and the local learning index is set as follows. To calculate. Assuming that the air-fuel ratio detection timing of the first cylinder # 1 is the following timings L1 to L6 [CA], the dispersion of the detection value of the air-fuel ratio sensor 36 detected at each air-fuel ratio detection timing of each cylinder will be described. A corresponding value (hereinafter referred to as “dispersion of detected air-fuel ratio”) is calculated, and this detected air-fuel ratio dispersion is used as a local learning index.

(1) 第1気筒#1の空燃比検出タイミングを、第1のタイミングL1 =Dca1 −90(第1気筒#1の現在の空燃比検出タイミングDca1 から90CA進角したタイミング)と仮定した場合の検出空燃比の分散V(Dca1-90) は、次式により算出する。   (1) When the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the first timing L1 = Dca1 -90 (timing advanced by 90 CA from the current air-fuel ratio detection timing Dca1 of the first cylinder # 1) The detected air-fuel ratio variance V (Dca1-90) is calculated by the following equation.

Figure 2016041922
Figure 2016041922

ここで、Nは一つの空燃比センサ36当りの気筒数(例えば4)、φ(k) はk[CA]での空燃比センサ36の検出値である。また、Mean φ(k) は{φ(k) 、φ(k+720/N*1) 、φ(k+720/N*2) 、φ(k+720/N*3) }の平均値である。尚、φ(k) は等量比(空気過剰率の逆数)で算出される。   Here, N is the number of cylinders per air-fuel ratio sensor 36 (for example, 4), and φ (k) is a detected value of the air-fuel ratio sensor 36 at k [CA]. Mean φ (k) is the average value of {φ (k), φ (k + 720 / N * 1), φ (k + 720 / N * 2), φ (k + 720 / N * 3)} It is. Φ (k) is calculated by an equivalence ratio (reciprocal of excess air ratio).

(2) 第1気筒#1の空燃比検出タイミングを、第2のタイミングL2 =Dca1 −60(第1気筒#1の現在の空燃比検出タイミングDca1 から60CA進角したタイミング)と仮定した場合の検出空燃比の分散V(Dca1-60) は、次式により算出する。   (2) When the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the second timing L2 = Dca1−60 (timing advanced by 60 CA from the current air-fuel ratio detection timing Dca1 of the first cylinder # 1) The variance V (Dca1-60) of the detected air-fuel ratio is calculated by the following equation.

Figure 2016041922
Figure 2016041922

(3) 第1気筒#1の空燃比検出タイミングを、第3のタイミングL3 =Dca1 −30(第1気筒#1の現在の空燃比検出タイミングDca1 から30CA進角したタイミング)と仮定した場合の検出空燃比の分散V(Dca1-30) は、次式により算出する。   (3) When the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the third timing L3 = Dca1-30 (timing advanced by 30 CA from the current air-fuel ratio detection timing Dca1 of the first cylinder # 1) The detected air-fuel ratio variance V (Dca1-30) is calculated by the following equation.

Figure 2016041922
Figure 2016041922

(4) 第1気筒#1の空燃比検出タイミングを、第4のタイミングL4 =Dca1 (第1気筒#1の現在の空燃比検出タイミングDca1 と同じタイミング)と仮定した場合の検出空燃比の分散V(Dca1)は、次式により算出する。   (4) Dispersion of the detected air-fuel ratio when the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the fourth timing L4 = Dca1 (the same timing as the current air-fuel ratio detection timing Dca1 of the first cylinder # 1) V (Dca1) is calculated by the following equation.

Figure 2016041922
Figure 2016041922

(5) 第1気筒#1の空燃比検出タイミングを、第5のタイミングL5 =Dca1 +30(第1気筒#1の現在の空燃比検出タイミングDca1 から30CA遅角したタイミング)と仮定した場合の検出空燃比の分散V(Dca1+30) は、次式により算出する。   (5) Detection when it is assumed that the air-fuel ratio detection timing of the first cylinder # 1 is the fifth timing L5 = Dca1 + 30 (timing delayed by 30 CA from the current air-fuel ratio detection timing Dca1 of the first cylinder # 1) The air-fuel ratio dispersion V (Dca1 + 30) is calculated by the following equation.

Figure 2016041922
(6) 第1気筒#1の空燃比検出タイミングを、第6のタイミングL6 =Dca1 +60(第1気筒#1の現在の空燃比検出タイミングDca1 から60CA遅角したタイミング)と仮定した場合の検出空燃比の分散V(Dca1+60) は、次式により算出する。
Figure 2016041922
(6) Detection when the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the sixth timing L6 = Dca1 + 60 (timing delayed by 60 CA from the current air-fuel ratio detection timing Dca1 of the first cylinder # 1) The air-fuel ratio dispersion V (Dca1 + 60) is calculated by the following equation.

Figure 2016041922
Figure 2016041922

このようにして、第1気筒#1の空燃比検出タイミングを各タイミングL1 〜L6 と仮定した場合について、それぞれ検出空燃比の分散V(Local学習指標)を算出した後、図9のステップ603に進む。このステップ603で、第1気筒#1の空燃比検出タイミングを各タイミングL1 〜L6 と仮定した場合について、それぞれ検出空燃比の分散V(Local学習指標)を正規化する。   In this way, when the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the respective timings L1 to L6, after calculating the variance V (Local learning index) of the detected air-fuel ratio, the process proceeds to step 603 in FIG. move on. In this step 603, when the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the respective timings L1 to L6, the detected air-fuel ratio variance V (Local learning index) is normalized.

具体的には、第1気筒#1の空燃比検出タイミングを各タイミングL1 〜L6 と仮定した場合の検出空燃比の分散V(Dca1-90) ,V(Dca1-60) ,V(Dca1-30) ,V(Dca1),V(Dca1+30) ,V(Dca1+60) に対して、値が大きい方から順に高い得点(例えば5〜0点)を付加する。それらの得点Point(Dca1-90) ,Point(Dca1-60) ,Point(Dca1-30) ,Point(Dca1),Point(Dca1+30) ,Point(Dca1+60) を、正規化指標(検出空燃比の分散Vを正規化したデータ)とする。   Specifically, the variances V (Dca1-90), V (Dca1-60), V (Dca1-30) of the detected air-fuel ratio when the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the respective timings L1 to L6. ), V (Dca1), V (Dca1 + 30), V (Dca1 + 60) are assigned higher scores (for example, 5 to 0 points) in descending order. Those points Point (Dca1-90), Point (Dca1-60), Point (Dca1-30), Point (Dca1), Point (Dca1 + 30), Point (Dca1 + 60) are normalized indices (detection sky). Data obtained by normalizing the dispersion V of the fuel ratio).

V(Dca1-90) →Point(Dca1-90)
V(Dca1-60) →Point(Dca1-60)
V(Dca1-30) →Point(Dca1-30)
V(Dca1) →Point(Dca1)
V(Dca1+30) →Point(Dca1+30)
V(Dca1+60) →Point(Dca1+60)
V (Dca1-90) → Point (Dca1-90)
V (Dca1-60) → Point (Dca1-60)
V (Dca1-30) → Point (Dca1-30)
V (Dca1) → Point (Dca1)
V (Dca1 + 30) → Point (Dca1 + 30)
V (Dca1 + 60) → Point (Dca1 + 60)

この後、ステップ604に進み、第1気筒#1の空燃比検出タイミングを各タイミングL1 〜L6 と仮定した場合について、それぞれ前回までの正規化指標(検出空燃比の分散Vを正規化したデータ)の積算値に今回の正規化指標を積算して正規化指標の積算値を更新する。   Thereafter, the process proceeds to step 604, where the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the respective timings L1 to L6. The current normalized index is added to the integrated value to update the integrated value of the normalized index.

その後、上記ステップ601で、Local学習実行カウンタのカウント値が所定値を越えたと判定された時点で、正規化指標の所定期間の積算値を算出したと判断して、ステップ605に進み、各タイミングL1 〜L6 のうちの正規化指標の所定期間の積算値が最大となるタイミングを最適タイミングとして選択する。   Thereafter, when it is determined in step 601 that the count value of the local learning execution counter has exceeded a predetermined value, it is determined that the integrated value of the normalization index for a predetermined period has been calculated, and the flow proceeds to step 605 to determine each timing. The timing at which the integrated value of the normalization index among the L1 to L6 is maximized is selected as the optimum timing.

この後、ステップ606に進み、選択した最適タイミング(正規化指標の所定期間の積算値が最大となるタイミング)を第1気筒#1の空燃比検出タイミングとして学習すると共に、その第1気筒#1の空燃比検出タイミングを基準にして他の気筒(第2気筒#2〜第4気筒#4)の空燃比検出タイミングを学習する。それらの学習値をECU39のバックアップRAM等の書き換え可能な不揮発性メモリの学習値記憶領域に更新記憶する。   Thereafter, the process proceeds to step 606, where the selected optimal timing (timing at which the integrated value of the normalization index during the predetermined period becomes maximum) is learned as the air-fuel ratio detection timing of the first cylinder # 1, and the first cylinder # 1. The air-fuel ratio detection timings of the other cylinders (second cylinder # 2 to fourth cylinder # 4) are learned on the basis of the air-fuel ratio detection timing. These learning values are updated and stored in a learning value storage area of a rewritable nonvolatile memory such as a backup RAM of the ECU 39.

この後、ステップ607に進み、Local学習実行カウンタのカウント値を「0」にリセットすると共に、ずれ判定フラグを「0」にリセットして、Local学習完了フラグを「1」にセットする。この後、ステップ608に進み、各気筒の気筒別補正値(燃料補正量)を所定値(例えば初期値又はずれ判定前の値)にリセットして、本ルーチンを終了する。   Thereafter, the process proceeds to step 607 where the count value of the local learning execution counter is reset to “0”, the deviation determination flag is reset to “0”, and the local learning completion flag is set to “1”. Thereafter, the process proceeds to step 608, the cylinder-specific correction value (fuel correction amount) of each cylinder is reset to a predetermined value (for example, an initial value or a value before deviation determination), and this routine ends.

[Global学習実行ルーチン]
図11に示すGlobal学習実行ルーチンは、前記図8の空燃比検出タイミングずれ学習補正ルーチンのステップ510で実行されるサブルーチンである。
[Global learning execution routine]
The global learning execution routine shown in FIG. 11 is a subroutine executed in step 510 of the air-fuel ratio detection timing deviation learning correction routine of FIG.

本ルーチンでは、各気筒の推定空燃比の変化と気筒別補正値(燃料補正量)の変化との関係に基づいて空燃比検出タイミングを補正するGlobal学習を実行する。このGlobal学習では、各気筒の推定空燃比が想定している各気筒番号を仮想的に複数通り変更した場合の各々において各気筒の推定空燃比の変化とその推定空燃比の変更後の気筒番号の気筒別補正値(燃料補正量)の変化との相関値を算出し、その相関値が最大となるように空燃比検出タイミングを補正する。   In this routine, global learning for correcting the air-fuel ratio detection timing is executed based on the relationship between the change in the estimated air-fuel ratio of each cylinder and the change in the correction value for each cylinder (fuel correction amount). In this global learning, the change in the estimated air-fuel ratio of each cylinder and the cylinder number after the change in the estimated air-fuel ratio in each of the cases where each cylinder number assumed for the estimated air-fuel ratio of each cylinder is virtually changed in several ways. A correlation value with a change in the cylinder specific correction value (fuel correction amount) is calculated, and the air-fuel ratio detection timing is corrected so that the correlation value becomes maximum.

本ルーチンが起動されると、まず、ステップ701で、Global学習指標算出タイミング(例えば720CA毎)であるか否かを判定し、Global学習指標算出タイミングではないと判定されれば、ステップ702以降の処理を行うことなく、本ルーチンを終了する。   When this routine is started, first, in step 701, it is determined whether or not it is a global learning index calculation timing (for example, every 720CA). If it is determined that it is not a global learning index calculation timing, steps 702 and thereafter are performed. This routine is terminated without performing any processing.

一方、上記ステップ701で、Global学習指標算出タイミングであると判定されれば、ステップ702に進み、Global学習実行カウンタのカウント値が所定値(例えば30サイクルに相当する値)以下であるか否かを判定する。   On the other hand, if it is determined in step 701 that it is the global learning index calculation timing, the process proceeds to step 702, and whether or not the count value of the global learning execution counter is equal to or less than a predetermined value (for example, a value corresponding to 30 cycles). Determine.

このステップ702で、Global学習実行カウンタのカウント値が所定値以下であると判定されれば、ステップ703に進み、図12のGlobal学習指標算出ルーチンを実行して、Global学習指標を次のようにして算出する。第1気筒#1の空燃比検出タイミングを下記の各タイミングG1 〜G4 [CA]と仮定した場合について、それぞれ各気筒の推定空燃比の変化と燃料補正量の変化との相関値を算出し、この相関値をGlobal学習指標とする。   If it is determined in step 702 that the count value of the global learning execution counter is equal to or smaller than the predetermined value, the process proceeds to step 703, the global learning index calculation routine of FIG. 12 is executed, and the global learning index is set as follows. To calculate. When the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the following timings G1 to G4 [CA], the correlation value between the change of the estimated air-fuel ratio of each cylinder and the change of the fuel correction amount is calculated, This correlation value is used as a global learning index.

具体的には、ステップ711で、現在の空燃比検出タイミングでの各気筒の推定空燃比の変化量Δφと各気筒の燃料補正量の変化量ΔCmpを次式により算出する。
Δφ^#i(t) =φ^#i(t) −φ^#i(t-n)
ΔCmp#i(t) =Cmp#i(t) −Cmp#i(t-n)
Specifically, in step 711, the estimated air-fuel ratio change amount Δφ of each cylinder at the current air-fuel ratio detection timing and the fuel correction amount change amount ΔCmp of each cylinder are calculated by the following equations.
Δφ ^ # i (t) = φ ^ # i (t) −φ ^ # i (tn)
ΔCmp # i (t) = Cmp # i (t) −Cmp # i (tn)

ここで、φ^#i(t) は第i気筒#iの推定空燃比の今回の算出値であり、φ^#i(t-n) は第i気筒#iの推定空燃比のn回前の算出値である。また、Cmp#i(t) は第i気筒#iの燃料補正量の今回の算出値であり、Cmp#i(t-n) は第i気筒#iの燃料補正量のn回前の算出値である。尚、nは1以上の所定整数値である。   Here, φ ^ # i (t) is the current calculated value of the estimated air-fuel ratio of the i-th cylinder #i, and φ ^ # i (tn) is n times before the estimated air-fuel ratio of the i-th cylinder #i. It is a calculated value. Cmp # i (t) is the current calculated value of the fuel correction amount for the i-th cylinder #i, and Cmp # i (tn) is the calculated value n times before the fuel correction amount for the i-th cylinder #i. is there. Note that n is a predetermined integer value of 1 or more.

この後、ステップ712に進み、第1気筒#1の空燃比検出タイミングを下記の各タイミングG1 〜G4 [CA]と仮定した場合について、それぞれ各気筒の推定空燃比の変化と燃料補正量の変化との相関値(推定空燃比の変化量Δφと燃料補正量の変化量ΔCmpとの積の和)を算出する。   Thereafter, the process proceeds to step 712, and assuming that the air-fuel ratio detection timing of the first cylinder # 1 is the following timings G1 to G4 [CA], the estimated air-fuel ratio change and the fuel correction amount change of each cylinder respectively. (A sum of products of the estimated amount of change Δφ of the estimated air-fuel ratio and the amount of change ΔCmp of the fuel correction amount).

(1) 第1気筒#1の空燃比検出タイミングを、第1のタイミングG1 =Dca1 (第1気筒#1の現在の空燃比検出タイミングDca1 と同じタイミング)と仮定した場合には、図13(a)に示すように、現在の空燃比検出タイミングでの第1気筒#1の推定空燃比φ^#1が第1気筒#1の推定空燃比として算出される。また、現在の空燃比検出タイミングでの第3気筒#3の推定空燃比φ^#3が第3気筒#3の推定空燃比として算出され、現在の空燃比検出タイミングでの第4気筒#4の推定空燃比φ^#4が第4気筒#4の推定空燃比として算出され、現在の空燃比検出タイミングでの第2気筒#2の推定空燃比φ^#2が第2気筒#2の推定空燃比として算出される。   (1) When the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the first timing G1 = Dca1 (the same timing as the current air-fuel ratio detection timing Dca1 of the first cylinder # 1), FIG. As shown in a), the estimated air-fuel ratio φ ^ # 1 of the first cylinder # 1 at the current air-fuel ratio detection timing is calculated as the estimated air-fuel ratio of the first cylinder # 1. The estimated air-fuel ratio φ ^ # 3 of the third cylinder # 3 at the current air-fuel ratio detection timing is calculated as the estimated air-fuel ratio of the third cylinder # 3, and the fourth cylinder # 4 at the current air-fuel ratio detection timing. Is calculated as the estimated air-fuel ratio of the fourth cylinder # 4, and the estimated air-fuel ratio φ ^ # 2 of the second cylinder # 2 at the current air-fuel ratio detection timing is that of the second cylinder # 2. Calculated as the estimated air-fuel ratio.

従って、第1気筒#1の空燃比検出タイミングを第1のタイミングG1 =Dca1 と仮定した場合の相関値Cor(Dca1)は、次式により算出することができる。
Cor(Dca1)=Δφ^#1(t) ×ΔCmp#1(t) +Δφ^#3(t) ×ΔCmp#3(t)
+Δφ^#4(t) ×ΔCmp#4(t) +Δφ^#2(t) ×ΔCmp#2(t)
Accordingly, the correlation value Cor (Dca1) when the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the first timing G1 = Dca1 can be calculated by the following equation.
Cor (Dca1) = Δφ ^ # 1 (t) × ΔCmp # 1 (t) + Δφ ^ # 3 (t) × ΔCmp # 3 (t)
+ Δφ ^ # 4 (t) × ΔCmp # 4 (t) + Δφ ^ # 2 (t) × ΔCmp # 2 (t)

(2) 第1気筒#1の空燃比検出タイミングを、第2のタイミングG2 =Dca1 +180(第1気筒#1の現在の空燃比検出タイミングDca1 から180CA遅角したタイミング)と仮定した場合には、図13(b)に示すように、現在の空燃比検出タイミングでの第1気筒#1の推定空燃比φ^#1が第2気筒#2の推定空燃比として算出される。また、現在の空燃比検出タイミングでの第3気筒#3の推定空燃比φ^#3が第1気筒#1の推定空燃比として算出され、現在の空燃比検出タイミングでの第4気筒#4の推定空燃比φ^#4が第3気筒#3の推定空燃比として算出され、現在の空燃比検出タイミングでの第2気筒#2の推定空燃比φ^#2が第4気筒#4の推定空燃比として算出される。   (2) When the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the second timing G2 = Dca1 +180 (a timing delayed by 180 CA from the current air-fuel ratio detection timing Dca1 of the first cylinder # 1) As shown in FIG. 13B, the estimated air-fuel ratio φ ^ # 1 of the first cylinder # 1 at the current air-fuel ratio detection timing is calculated as the estimated air-fuel ratio of the second cylinder # 2. Further, the estimated air-fuel ratio φ ^ # 3 of the third cylinder # 3 at the current air-fuel ratio detection timing is calculated as the estimated air-fuel ratio of the first cylinder # 1, and the fourth cylinder # 4 at the current air-fuel ratio detection timing. Is calculated as the estimated air-fuel ratio of the third cylinder # 3, and the estimated air-fuel ratio φ ^ # 2 of the second cylinder # 2 at the current air-fuel ratio detection timing is that of the fourth cylinder # 4. Calculated as the estimated air-fuel ratio.

従って、第1気筒#1の空燃比検出タイミングを第2のタイミングG2 =Dca1 +180と仮定した場合の相関値Cor(Dca1+180)は、次式により算出することができる。
Cor(Dca1+180)=Δφ^#3(t) ×ΔCmp#1(t) +Δφ^#4(t) ×ΔCmp#3(t)
+Δφ^#2(t) ×ΔCmp#4(t) +Δφ^#1(t) ×ΔCmp#2(t)
Accordingly, the correlation value Cor (Dca1 + 180) when the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the second timing G2 = Dca1 + 180 can be calculated by the following equation.
Cor (Dca1 + 180) = Δφ ^ # 3 (t) × ΔCmp # 1 (t) + Δφ ^ # 4 (t) × ΔCmp # 3 (t)
+ Δφ ^ # 2 (t) × ΔCmp # 4 (t) + Δφ ^ # 1 (t) × ΔCmp # 2 (t)

(3) 第1気筒#1の空燃比検出タイミングを、第3のタイミングG3 =Dca1 +360(第1気筒#1の現在の空燃比検出タイミングDca1 から360CA遅角したタイミング)と仮定した場合には、図13(c)に示すように、現在の空燃比検出タイミングでの第1気筒#1の推定空燃比φ^#1が第4気筒#4の推定空燃比として算出される。また、現在の空燃比検出タイミングでの第3気筒#3の推定空燃比φ^#3が第2気筒#2の推定空燃比として算出され、現在の空燃比検出タイミングでの第4気筒#4の推定空燃比φ^#4が第1気筒#1の推定空燃比として算出され、現在の空燃比検出タイミングでの第2気筒#2の推定空燃比φ^#2が第3気筒#3の推定空燃比として算出される。   (3) When the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the third timing G3 = Dca1 + 360 (a timing delayed by 360 CA from the current air-fuel ratio detection timing Dca1 of the first cylinder # 1) As shown in FIG. 13 (c), the estimated air-fuel ratio φ ^ # 1 of the first cylinder # 1 at the current air-fuel ratio detection timing is calculated as the estimated air-fuel ratio of the fourth cylinder # 4. Further, the estimated air-fuel ratio φ ^ # 3 of the third cylinder # 3 at the current air-fuel ratio detection timing is calculated as the estimated air-fuel ratio of the second cylinder # 2, and the fourth cylinder # 4 at the current air-fuel ratio detection timing. Is estimated as the estimated air-fuel ratio of the first cylinder # 1, and the estimated air-fuel ratio φ ^ # 2 of the second cylinder # 2 at the current air-fuel ratio detection timing is the same as that of the third cylinder # 3. Calculated as the estimated air-fuel ratio.

従って、第1気筒#1の空燃比検出タイミングを第3のタイミングG3 =Dca1 +360と仮定した場合の相関値Cor(Dca1+360)は、次式により算出することができる。
Cor(Dca1+360)=Δφ^#4(t) ×ΔCmp#1(t) +Δφ^#2(t) ×ΔCmp#3(t)
+Δφ^#1(t) ×ΔCmp#4(t) +Δφ^#3(t) ×ΔCmp#2(t)
Accordingly, the correlation value Cor (Dca1 + 360) when the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the third timing G3 = Dca1 + 360 can be calculated by the following equation.
Cor (Dca1 + 360) = Δφ ^ # 4 (t) × ΔCmp # 1 (t) + Δφ ^ # 2 (t) × ΔCmp # 3 (t)
+ Δφ ^ # 1 (t) × ΔCmp # 4 (t) + Δφ ^ # 3 (t) × ΔCmp # 2 (t)

(4) 第1気筒#1の空燃比検出タイミングを、第4のタイミングG4 =Dca1 +540(第1気筒#1の現在の空燃比検出タイミングDca1 から540CA遅角したタイミング)と仮定した場合には、図13(d)に示すように、現在の空燃比検出タイミングでの第1気筒#1の推定空燃比φ^#1が第3気筒#3の推定空燃比として算出される。また、現在の空燃比検出タイミングでの第3気筒#3の推定空燃比φ^#3が第4気筒#4の推定空燃比として算出され、現在の空燃比検出タイミングでの第4気筒#4の推定空燃比φ^#4が第2気筒#2の推定空燃比として算出され、現在の空燃比検出タイミングでの第2気筒#2の推定空燃比φ^#2が第1気筒#1の推定空燃比として算出される。   (4) When the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the fourth timing G4 = Dca1 +540 (timing delayed by 540CA from the current air-fuel ratio detection timing Dca1 of the first cylinder # 1) As shown in FIG. 13 (d), the estimated air-fuel ratio φ ^ # 1 of the first cylinder # 1 at the current air-fuel ratio detection timing is calculated as the estimated air-fuel ratio of the third cylinder # 3. Further, the estimated air-fuel ratio φ ^ # 3 of the third cylinder # 3 at the current air-fuel ratio detection timing is calculated as the estimated air-fuel ratio of the fourth cylinder # 4, and the fourth cylinder # 4 at the current air-fuel ratio detection timing is calculated. Is calculated as the estimated air-fuel ratio of the second cylinder # 2, and the estimated air-fuel ratio φ ^ # 2 of the second cylinder # 2 at the current air-fuel ratio detection timing is the same as that of the first cylinder # 1. Calculated as the estimated air-fuel ratio.

従って、第1気筒#1の空燃比検出タイミングを第4のタイミングG4 =Dca1 +540と仮定した場合の相関値Cor(Dca1+540)は、次式により算出することができる。
Cor(Dca1+540)=Δφ^#2(t) ×ΔCmp#1(t) +Δφ^#1(t) ×ΔCmp#3(t)
+Δφ^#3(t) ×ΔCmp#4(t) +Δφ^#4(t) ×ΔCmp#2(t)
Accordingly, the correlation value Cor (Dca1 + 540) when the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the fourth timing G4 = Dca1 + 540 can be calculated by the following equation.
Cor (Dca1 + 540) = Δφ ^ # 2 (t) × ΔCmp # 1 (t) + Δφ ^ # 1 (t) × ΔCmp # 3 (t)
+ Δφ ^ # 3 (t) × ΔCmp # 4 (t) + Δφ ^ # 4 (t) × ΔCmp # 2 (t)

このようにして、第1気筒#1の空燃比検出タイミングを各タイミングG1 〜G4 と仮定した場合について、それぞれ各気筒の推定空燃比の変化と燃料補正量の変化との相関値Cor(Global学習指標)を算出した後、図11のステップ704に進む。このステップ704で、第1気筒#1の空燃比検出タイミングを各タイミングG1 〜G4 と仮定した場合について、それぞれ前回までの相関値Corの積算値に今回の相関値Corを積算して相関値Corの積算値を更新する。この際、相関値Corのうちのプラス値のみを積算するようにしたり、或は、相関値Corのうちのマイナス値のみを積算するようにしても良い。   In this way, when the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the respective timings G1 to G4, the correlation value Cor (Global learning) between the change of the estimated air-fuel ratio of each cylinder and the change of the fuel correction amount, respectively. After calculating the index, the process proceeds to step 704 in FIG. In this step 704, when the air-fuel ratio detection timing of the first cylinder # 1 is assumed to be the respective timings G1 to G4, the correlation value Cor is obtained by adding the current correlation value Cor to the previous integration value Cor. Update the accumulated value of. At this time, only the positive value of the correlation value Cor may be integrated, or only the negative value of the correlation value Cor may be integrated.

その後、上記ステップ702で、Global学習実行カウンタのカウント値が所定値を越えたと判定された時点で、相関値Corの所定期間の積算値を算出したと判断して、ステップ705に進み、各タイミングG1 〜G4 のうちの相関値Corの所定期間の積算値が最大となるタイミングを最適タイミングとして選択する。   Thereafter, when it is determined in step 702 that the count value of the global learning execution counter has exceeded a predetermined value, it is determined that the integrated value of the correlation value Cor for a predetermined period has been calculated, and the process proceeds to step 705, where each timing Among the G1 to G4, the timing at which the integrated value of the correlation value Cor for a predetermined period is maximized is selected as the optimum timing.

この後、ステップ706に進み、選択した最適タイミング(相関値Corの所定期間の積算値が最大となるタイミング)を第1気筒#1の空燃比検出タイミングとして学習すると共に、その第1気筒#1の空燃比検出タイミングを基準にして他の気筒(第2気筒#2〜第4気筒#4)の空燃比検出タイミングを学習する。それらの学習値をECU39のバックアップRAM等の書き換え可能な不揮発性メモリの学習値記憶領域に更新記憶する。   Thereafter, the process proceeds to step 706, where the selected optimum timing (timing at which the integrated value of the correlation value Cor during the predetermined period becomes maximum) is learned as the air-fuel ratio detection timing of the first cylinder # 1, and the first cylinder # 1. The air-fuel ratio detection timings of the other cylinders (second cylinder # 2 to fourth cylinder # 4) are learned on the basis of the air-fuel ratio detection timing. These learning values are updated and stored in a learning value storage area of a rewritable nonvolatile memory such as a backup RAM of the ECU 39.

この後、ステップ707に進み、Global学習実行カウンタのカウント値を「0」にリセットすると共に、ずれ判定フラグを「0」にリセットし、更に、Local学習完了フラグを「0」にリセットすると共に、Local学習完了後カウンタのカウント値を「0」にリセットして、本ルーチンを終了する。   Thereafter, the process proceeds to step 707, where the count value of the global learning execution counter is reset to “0”, the deviation determination flag is reset to “0”, and the local learning completion flag is reset to “0”. After the local learning is completed, the count value of the counter is reset to “0”, and this routine ends.

これらの図7乃至図12のルーチンが特許請求の範囲でいう検出タイミング補正手段としての役割を果たす。
尚、Local学習が完了してからGlobal学習が完了するまでの期間、気筒別空燃比制御のF/Bゲインを大きくするようにしても良い。この場合、特定の気筒のF/Bゲインのみを大きくするようにして良いし、各気筒毎に異なるF/Bゲインを設定するようにしても良い。
These routines shown in FIGS. 7 to 12 serve as detection timing correction means in the claims.
Note that the F / B gain of cylinder-by-cylinder air-fuel ratio control may be increased during the period from the completion of local learning to the completion of global learning. In this case, only the F / B gain of a specific cylinder may be increased, or a different F / B gain may be set for each cylinder.

また、Local学習の実行後(つまりLocal学習により空燃比検出タイミングが補正された後)、空燃比検出タイミングがずれていると判定される毎に該空燃比検出タイミングをエンジン11の燃焼間隔(4気筒の場合には180CA)又はその複数倍ずつ補正するGlobal学習を実行することで、各気筒の空燃比検出タイミングを他の気筒の空燃比検出タイミングと入れ替えて、各気筒の空燃比検出タイミングを正しい空燃比検出タイミングに補正するようにしても良い。   In addition, after the local learning is performed (that is, after the air-fuel ratio detection timing is corrected by the local learning), the air-fuel ratio detection timing is set to the combustion interval (4 In the case of a cylinder, 180CA) or a global learning that corrects each multiple thereof is executed, so that the air-fuel ratio detection timing of each cylinder is replaced with the air-fuel ratio detection timing of each cylinder, and the air-fuel ratio detection timing of each cylinder is changed. You may make it correct | amend to the correct air fuel ratio detection timing.

以上説明した本実施例1では、エンジン11の失火有りと判定されたときに、気筒別空燃比推定と気筒別空燃比制御を停止するようにしたので、失火により各気筒の空燃比を正しく制御できない状態で気筒別空燃比制御が通常通りに継続されることを回避して排気エミッションの悪化を抑制することができる。   In the first embodiment described above, the cylinder-by-cylinder air-fuel ratio estimation and the cylinder-by-cylinder air-fuel ratio control are stopped when it is determined that the engine 11 has misfired. Therefore, the air-fuel ratio of each cylinder is correctly controlled by misfire. It is possible to prevent the deterioration of exhaust emissions by preventing the cylinder-by-cylinder air-fuel ratio control from being continued as usual in a state where it is not possible.

また、本実施例1では、エンジン11の失火有りと判定されたときに、気筒別空燃比推定と気筒別空燃比制御を停止すると共に、気筒別空燃比制御による気筒別補正値(燃料補正量)をリセットするようにしている。これにより、気筒別空燃比制御を再開する際に、気筒別補正値をリセットした状態(つまり失火の影響を排除した状態)で気筒別空燃比制御を開始することができる。   In the first embodiment, when it is determined that the engine 11 has misfired, the cylinder-by-cylinder air-fuel ratio estimation and the cylinder-by-cylinder air-fuel ratio control are stopped, and the cylinder-by-cylinder air-fuel ratio control is corrected. ) Is reset. As a result, when the cylinder-by-cylinder air-fuel ratio control is resumed, the cylinder-by-cylinder air-fuel ratio control can be started in a state in which the cylinder-by-cylinder correction value is reset (that is, a state in which the influence of misfire is eliminated).

尚、上記実施例1では、エンジン11の失火有りと判定されたときに、気筒別空燃比推定と気筒別空燃比制御を両方とも停止するようにしたが、これに限定されず、気筒別空燃比推定と気筒別空燃比制御のうちの一方のみを停止するようにしても良い。   In the first embodiment, when it is determined that the engine 11 has misfired, both the cylinder-by-cylinder air-fuel ratio estimation and the cylinder-by-cylinder air-fuel ratio control are stopped. However, the present invention is not limited to this. Only one of the fuel ratio estimation and the cylinder-by-cylinder air-fuel ratio control may be stopped.

気筒別空燃比推定を停止(各気筒の推定空燃比の算出を停止)することで、気筒別空燃比制御による各気筒の気筒別補正値の更新を停止することができるため、気筒別空燃比推定のみを停止しても、気筒別空燃比制御を停止(各気筒の気筒別補正値の算出を停止)するのとほぼ同様の状態にできる。従って、気筒別空燃比推定と気筒別空燃比制御のうちの一方のみを停止しても、失火により各気筒の空燃比を正しく制御できない状態で気筒別空燃比制御が通常通りに継続されることを回避して排気エミッションの悪化を抑制することができる。   By stopping the estimation of the air-fuel ratio for each cylinder (stopping the calculation of the estimated air-fuel ratio for each cylinder), the update of the correction value for each cylinder by the cylinder-by-cylinder air-fuel ratio control can be stopped. Even if only the estimation is stopped, the air-fuel ratio control for each cylinder can be almost the same as when the correction value for each cylinder is stopped. Therefore, even if only one of the cylinder-by-cylinder air-fuel ratio estimation and the cylinder-by-cylinder air-fuel ratio control is stopped, the cylinder-by-cylinder air-fuel ratio control is continued as usual in a state where the air-fuel ratio of each cylinder cannot be controlled correctly due to misfire. It is possible to prevent the exhaust emission from deteriorating.

次に、図14乃至図17を用いて本発明の実施例2を説明する。但し、前記実施例1と実質的に同一部分については説明を省略又は簡略化し、主として前記実施例1と異なる部分について説明する。   Next, Embodiment 2 of the present invention will be described with reference to FIGS. However, description of substantially the same parts as those in the first embodiment will be omitted or simplified, and different parts from the first embodiment will be mainly described.

エンジン11が急加速した後に急減速すると、排気流速が大きく低下して、排気の流れが停滞することがある。気筒別空燃比制御中に、空燃比センサ36付近の排気の流れが停滞すると、その影響で空燃比センサ36出力の振幅が小さくなってしまい、各気筒の空燃比検出タイミング毎の空燃比センサ36出力を正しく読み込むことが困難になることがある。このような場合、推定気筒間違え(各気筒と推定空燃比との対応関係の間違え)が発生して、各気筒の空燃比を正しく制御することができず、排気エミッションの悪化を招く可能性がある。このような状態で、空燃比検出タイミング補正を行うと、各気筒の空燃比の推定精度が更に悪化する可能性もある。   If the engine 11 suddenly decelerates after sudden acceleration, the exhaust flow velocity may drop significantly, and the exhaust flow may stagnate. If the flow of exhaust gas in the vicinity of the air-fuel ratio sensor 36 stagnate during the cylinder-by-cylinder air-fuel ratio control, the amplitude of the air-fuel ratio sensor 36 output decreases due to the influence, and the air-fuel ratio sensor 36 at each air-fuel ratio detection timing of each cylinder. It may be difficult to read the output correctly. In such a case, an erroneous estimation cylinder (correspondence between each cylinder and the estimated air-fuel ratio) occurs, and the air-fuel ratio of each cylinder cannot be controlled correctly, which may lead to deterioration of exhaust emissions. is there. If the air-fuel ratio detection timing correction is performed in such a state, the estimation accuracy of the air-fuel ratio of each cylinder may be further deteriorated.

この対策として、本実施例2では、ECU39により後述する図14及び図15の各ルーチンを実行することで、エンジン11の排気の流れが停滞した状態(以下「排気流停滞状態」という)か否かを判定し、排気流停滞状態と判定されたときに、気筒別空燃比推定と気筒別空燃比制御と空燃比検出タイミング補正を停止するようにしている。   As a countermeasure against this, in the second embodiment, the ECU 39 executes the routines shown in FIGS. 14 and 15 to be described later to determine whether or not the exhaust flow of the engine 11 is stagnant (hereinafter referred to as “exhaust flow stagnant state”). When the exhaust flow stagnation state is determined, the cylinder-by-cylinder air-fuel ratio estimation, the cylinder-by-cylinder air-fuel ratio control, and the air-fuel ratio detection timing correction are stopped.

その際、本実施例2では、エンジン11の急加速後の急減速時に排気流停滞状態と判定するようにしている。エンジン11が急加速した後に急減速すると、排気流速が大きく低下して、排気の流れが停滞するため、急加速後の急減速時には排気流停滞状態(排気流速が大きく低下した状態)と判定することができる。
以下、本実施例2でECU39が実行する図14及び図15の各ルーチンの処理内容を説明する。
At this time, in the second embodiment, the exhaust flow stagnation state is determined when the engine 11 suddenly decelerates after sudden acceleration. If the engine 11 suddenly decelerates after rapid acceleration, the exhaust flow velocity decreases greatly, and the exhaust flow stagnate. Therefore, it is determined that the exhaust flow is stagnant (the exhaust flow velocity is greatly decreased) during sudden deceleration after the rapid acceleration. be able to.
Hereinafter, the processing content of each routine of FIG.14 and FIG.15 which ECU39 performs in the present Example 2 is demonstrated.

[急加減速判定ルーチン]
図14に示す急加減速判定ルーチンは、クランク角センサ33の出力パルスに同期して所定クランク角毎(例えば30CA毎)に起動され、特許請求の範囲でいう排気流判定手段としての役割を果たす。
[Rapid acceleration / deceleration judgment routine]
The rapid acceleration / deceleration determination routine shown in FIG. 14 is started at every predetermined crank angle (for example, every 30 CA) in synchronization with the output pulse of the crank angle sensor 33, and serves as exhaust flow determination means in the claims. .

本ルーチンが起動されると、まず、ステップ801で、所定タイミング毎(例えばTDC毎)にエアフローメータ14や吸気管圧力センサ18の出力信号に基づいて吸入空気量GN[g/rev]及び吸入空気量GA[g/s]を算出する。   When this routine is started, first, in step 801, the intake air amount GN [g / rev] and the intake air based on the output signals of the air flow meter 14 and the intake pipe pressure sensor 18 at every predetermined timing (for example, every TDC). The amount GA [g / s] is calculated.

この後、ステップ802に進み、今回の吸入空気量GN(i) と前回の吸入空気量GN(i-1) との差を算出することで吸入空気量GNの所定期間(例えばTDC間)の変化量dGNを求め、今回の吸入空気量GA(i) と前回の吸入空気量GA(i-1) との差を算出することで吸入空気量GAの所定期間(例えばTDC間)の変化量dGAを求める。
dGN=GN(i) −GN(i-1)
dGA=GA(i) −GA(i-1)
Thereafter, the process proceeds to step 802, and the difference between the current intake air amount GN (i) and the previous intake air amount GN (i-1) is calculated to obtain a predetermined period (for example, between TDCs) of the intake air amount GN. The change amount dGN is obtained, and the difference between the current intake air amount GA (i) and the previous intake air amount GA (i-1) is calculated, whereby the change amount of the intake air amount GA over a predetermined period (for example, between TDCs). Obtain dGA.
dGN = GN (i) −GN (i−1)
dGA = GA (i) −GA (i−1)

この後、ステップ803に進み、急加速後の急減速時フラグが「1」にセットされているか否かを判定する。この急加速後の急減速時フラグは、後述するステップ808で、急加速後の急減速時であると判定されたときに「1」にセットされる。   Thereafter, the process proceeds to step 803, where it is determined whether or not the rapid deceleration flag after rapid acceleration is set to “1”. This rapid deceleration flag after rapid acceleration is set to “1” when it is determined in step 808 described later that rapid deceleration after rapid acceleration has occurred.

このステップ803で、急加速後の急減速時フラグ=0と判定された場合には、ステップ804に進み、急加速時フラグが「1」にセットされているか否かを判定する。この急加速時フラグは、後述するステップ806で、急加速時であると判定されたときに「1」にセットされる。   If it is determined in step 803 that the rapid deceleration flag after rapid acceleration = 0, the process proceeds to step 804, in which it is determined whether the rapid acceleration flag is set to “1”. The rapid acceleration flag is set to “1” when it is determined in step 806, which will be described later, that rapid acceleration is being performed.

このステップ804で、急加速時フラグ=0と判定された場合には、ステップ805に進み、変化量dGNが所定の増加判定値KN1 (>0)よりも大きく且つ変化量dGAが所定の増加判定値KA1 (>0)よりも大きい(dGN>KN1 且つdGA>KA1 )か否かを判定する。   If it is determined in step 804 that the rapid acceleration flag = 0, the process proceeds to step 805, where the change amount dGN is larger than a predetermined increase determination value KN1 (> 0) and the change amount dGA is determined to be a predetermined increase determination. It is determined whether or not the value is greater than the value KA1 (> 0) (dGN> KN1 and dGA> KA1).

このステップ805で、dGN≦KN1 又はdGA≦KA1 と判定された場合には、急加速時ではないと判断して、急加速時フラグを「0」に維持したまま、本ルーチンを終了する。   If it is determined in this step 805 that dGN ≦ KN1 or dGA ≦ KA1, it is determined that there is no sudden acceleration, and this routine is terminated while the rapid acceleration flag is maintained at “0”.

その後、上記ステップ805で、dGN>KN1 且つdGA>KA1 と判定された場合には、ステップ806に進み、急加速時であると判定して、急加速時フラグを「1」にセットした後、本ルーチンを終了する。   Thereafter, if it is determined in step 805 that dGN> KN1 and dGA> KA1, the process proceeds to step 806, where it is determined that there is sudden acceleration, and the rapid acceleration flag is set to “1”. This routine ends.

この後、上記ステップ804で、急加速時フラグ=1と判定された場合には、ステップ807に進み、変化量dGNが所定の減少判定値KN2 (<0)よりも小さく且つ変化量dGAが所定の減少判定値KA2 (<0)よりも小さい(dGN<KN2 且つdGA<KA2 )か否かを判定する。   Thereafter, if it is determined in step 804 that the rapid acceleration flag = 1, the process proceeds to step 807, where the change amount dGN is smaller than a predetermined decrease determination value KN2 (<0) and the change amount dGA is predetermined. It is determined whether or not it is smaller than the decrease determination value KA2 (<0) (dGN <KN2 and dGA <KA2).

このステップ807で、dGN≧KN2 又はdGA≧KA2 と判定された場合には、急加速後の急減速時ではないと判断して、急加速後の急減速時フラグを「0」に維持したまま、本ルーチンを終了する。   If it is determined in this step 807 that dGN ≧ KN2 or dGA ≧ KA2, it is determined that there is no sudden deceleration after sudden acceleration, and the rapid deceleration flag after sudden acceleration is maintained at “0”. This routine is terminated.

その後、上記ステップ807で、dGN<KN2 且つdGA<KA2 と判定された場合には、ステップ808に進み、急加速後の急減速時(つまり排気流停滞状態)であると判定して、急加速後の急減速時フラグを「1」にセットすると共に、急加速時フラグを「0」にリセットした後、本ルーチンを終了する。   Thereafter, if it is determined in step 807 that dGN <KN2 and dGA <KA2, the process proceeds to step 808, where it is determined that the vehicle is suddenly decelerating after rapid acceleration (that is, exhaust gas stagnation). The subsequent rapid deceleration flag is set to “1” and the rapid acceleration flag is reset to “0”, and then this routine is terminated.

この後、上記ステップ803で、急加速後の急減速時フラグ=1と判定された場合には、ステップ809に進み、急加速後の急減速時(急加速後の急減速時フラグ=1)と判定してから所定時間が経過したか否かを判定する。   Thereafter, if it is determined in step 803 that the rapid deceleration flag after rapid acceleration = 1, the process proceeds to step 809, during rapid deceleration after rapid acceleration (rapid deceleration flag after rapid acceleration = 1). It is determined whether or not a predetermined time has elapsed since the determination.

このステップ809で、急加速後の急減速時(急加速後の急減速時フラグ=1)と判定してから所定時間が経過していないと判定された場合には、ステップ810に進み、変化量dGNが所定値KN3 (>0)よりも大きく且つ変化量dGAが所定値KA3 (>0)よりも大きい(dGN>KN3 且つdGA>KA3 )か否かを判定する。ここで、所定値KN3 ,KA3 は、予め設定した固定値としても良いが、急加速後の急減速時と判定してからの経過時間に応じて設定するようにしても良い。
このステップ810で、dGN≦KN3 又はdGA≦KA3 と判定された場合には、急加速後の急減速時フラグを「1」に維持したまま、本ルーチンを終了する。
If it is determined in step 809 that the predetermined time has not elapsed since it was determined that the vehicle was suddenly decelerating after rapid acceleration (the flag for rapid deceleration after rapid acceleration = 1), the process proceeds to step 810 and changes are made. It is determined whether the amount dGN is larger than a predetermined value KN3 (> 0) and the change amount dGA is larger than a predetermined value KA3 (> 0) (dGN> KN3 and dGA> KA3). Here, the predetermined values KN3 and KA3 may be fixed values set in advance, but may be set in accordance with the elapsed time after determining the sudden deceleration after the rapid acceleration.
If it is determined in this step 810 that dGN≤KN3 or dGA≤KA3, the routine ends while the rapid deceleration flag after rapid acceleration is maintained at "1".

その後、上記ステップ809で急加速後の急減速時(急加速後の急減速時フラグ=1)と判定してから所定時間が経過したと判定された場合、又は、上記ステップ810でdGN>KN3 且つdGA>KA3 と判定された場合には、ステップ811に進み、急加速後の急減速時(つまり排気流停滞状態)ではないと判定して、急加速後の急減速時フラグを「0」にリセットした後、本ルーチンを終了する。   Thereafter, when it is determined in step 809 that a predetermined time has elapsed since it is determined that the vehicle is suddenly decelerating after sudden acceleration (a flag during rapid deceleration after rapid acceleration = 1), or in step 810, dGN> KN3 If it is determined that dGA> KA3, the routine proceeds to step 811 where it is determined that the engine is not suddenly decelerating after rapid acceleration (that is, the exhaust flow stagnation state) and the rapid deceleration flag after rapid acceleration is set to “0”. After the reset to, this routine ends.

尚、図14のルーチンでは、ステップ805,807,810で、変化量dGNと変化量dGAを両方とも用いるようにしたが、これに限定されず、変化量dGNと変化量dGAのうちの一方のみを用いるようにしても良い。   In the routine of FIG. 14, both the change amount dGN and the change amount dGA are used in steps 805, 807, and 810. However, the present invention is not limited to this, and only one of the change amount dGN and the change amount dGA is used. May be used.

具体的には、ステップ805で、dGN>KN1 か否かを判定し、dGN>KN1 と判定された場合に、ステップ806に進むようにしても良い。或は、ステップ805で、dGA>KA1 か否かを判定し、dGA>KA1 と判定された場合に、ステップ806に進むようにしても良い。   Specifically, in step 805, it is determined whether dGN> KN1, and if it is determined that dGN> KN1, the process may proceed to step 806. Alternatively, in step 805, it is determined whether dGA> KA1, and if it is determined that dGA> KA1, the process may proceed to step 806.

また、ステップ807で、dGN<KN2 か否かを判定し、dGN<KN2 と判定された場合に、ステップ808に進むようにしても良い。或は、ステップ807で、dGA<KA2 か否かを判定し、dGA<KA2 と判定された場合に、ステップ808に進むようにしても良い。   In step 807, it is determined whether dGN <KN2, and if it is determined that dGN <KN2, the process may proceed to step 808. Alternatively, it may be determined in step 807 whether or not dGA <KA2, and if it is determined that dGA <KA2, the process may proceed to step 808.

また、ステップ810で、dGN>KN3 か否かを判定し、dGN>KN3 と判定された場合に、ステップ811に進むようにしても良い。或は、ステップ810で、dGA>KA3 か否かを判定し、dGA>KA3 と判定された場合に、ステップ811に進むようにしても良い。   In step 810, it is determined whether dGN> KN3. If it is determined that dGN> KN3, the process may proceed to step 811. Alternatively, in step 810, it is determined whether dGA> KA3, and if it is determined that dGA> KA3, the process may proceed to step 811.

[実行条件判定ルーチン]
本実施例2で実行する図15の実行条件判定ルーチンは、前記実施例1で説明した図5のルーチンのステップ201の処理をステップ201aの処理に変更すると共に、図5のルーチンのステップ205の処理を省略したものであり、それ以外の各ステップの処理は図5と同じである。
[Execution condition judgment routine]
The execution condition determination routine of FIG. 15 executed in the second embodiment changes the process of step 201 of the routine of FIG. 5 described in the first embodiment to the process of step 201a, and also performs the process of step 205 of the routine of FIG. The processing is omitted, and the processing of each step other than that is the same as FIG.

図15の実行条件判定ルーチンでは、まず、ステップ201aで、急加速後の急減速時フラグ=0であるか否かを判定する。このステップ201aで、急加速後の急減速時フラグ=0と判定された場合には、ステップ202に進み、空燃比センサ36が使用可能であるか否かを判定し、空燃比センサ36が使用可能であると判定された場合には、ステップ203に進み、エンジン運転状態が所定領域内であるか否かを判定する。   In the execution condition determination routine of FIG. 15, first, in step 201a, it is determined whether or not the rapid deceleration flag after rapid acceleration = 0. If it is determined in step 201a that the rapid deceleration flag after rapid acceleration = 0, the process proceeds to step 202 to determine whether or not the air-fuel ratio sensor 36 is usable. If it is determined that it is possible, the process proceeds to step 203 to determine whether or not the engine operating state is within a predetermined region.

上記ステップ201a〜203で全て「Yes」と判定された場合(つまり上記ステップ201a〜203の条件を全て満たした場合)には、ステップ204に進み、気筒別空燃比制御の実行条件が成立していると判定して、実行条件フラグを「1」にセットした後、本ルーチンを終了する。   If all the determinations in steps 201a to 203 are “Yes” (that is, if all the conditions in steps 201a to 203 are satisfied), the process proceeds to step 204, and the execution condition for the cylinder-by-cylinder air-fuel ratio control is satisfied. This routine is terminated after the execution condition flag is set to “1”.

これに対して、上記ステップ201aで、急加速後の急減速時フラグ=1(急加速後の急減速時である)と判定された場合には、ステップ206に進み、気筒別空燃比制御の実行条件が不成立であると判定して、実行条件フラグを「0」にリセットした後、本ルーチンを終了する。これらの処理により、エンジン11の急加速後の急減速時(つまり排気流停滞状態)と判定されたときに、気筒別空燃比制御の実行条件を不成立(実行条件フラグ=0)にして、気筒別空燃比推定と気筒別空燃比制御を停止すると共に、気筒別空燃比制御の停止に伴って空燃比検出タイミング補正が停止される。従って、本実施例2では、図15のルーチン等が特許請求の範囲でいう停止手段としての役割を果たす。   On the other hand, if it is determined in step 201a that the rapid deceleration flag after rapid acceleration = 1 (the rapid deceleration after rapid acceleration), the routine proceeds to step 206 where the cylinder-by-cylinder air-fuel ratio control is performed. After determining that the execution condition is not satisfied and resetting the execution condition flag to “0”, this routine is terminated. By these processes, when it is determined that the engine 11 is suddenly decelerated after sudden acceleration (that is, an exhaust flow stagnation state), the execution condition of the cylinder-by-cylinder air-fuel ratio control is not satisfied (execution condition flag = 0), and the cylinder While the separate air-fuel ratio estimation and the cylinder-by-cylinder air-fuel ratio control are stopped, the air-fuel ratio detection timing correction is stopped as the cylinder-by-cylinder air-fuel ratio control is stopped. Therefore, in the second embodiment, the routine of FIG. 15 or the like serves as stop means in the claims.

以上説明した本実施例2の制御の実行例を図16及び図17のタイムチャートを用いて説明する。
図16及び図17に示すように、所定タイミング毎(例えばTDC毎)に吸入空気量GNの変化量dGN及び吸入空気量GAの変化量dGAを算出する。
An execution example of the control of the second embodiment described above will be described with reference to the time charts of FIGS.
As shown in FIGS. 16 and 17, the change amount dGN of the intake air amount GN and the change amount dGA of the intake air amount GA are calculated at every predetermined timing (for example, every TDC).

そして、変化量dGNが増加判定値KN1 よりも大きく且つ変化量dGAが増加判定値KA1 よりも大きい(dGN>KN1 且つdGA>KA1 )と判定された時点t1 で、急加速時であると判定して、急加速時フラグを「1」にセットする(図示せず)。   Then, at the time point t1 when it is determined that the change amount dGN is greater than the increase determination value KN1 and the change amount dGA is greater than the increase determination value KA1 (dGN> KN1 and dGA> KA1), it is determined that there is a sudden acceleration. Then, the rapid acceleration flag is set to “1” (not shown).

この後、変化量dGNが減少判定値KN2 よりも小さく且つ変化量dGAが減少判定値KA2 よりも小さい(dGN<KN2 且つdGA<KA2 )と判定された時点t2 で、急加速後の急減速時(つまり排気流停滞状態)であると判定して、急加速後の急減速時フラグを「1」にセットする。これにより、気筒別空燃比制御の実行条件が不成立であると判定して、実行条件フラグを「0」にリセットすることで、気筒別空燃比推定と気筒別空燃比制御と空燃比検出タイミング補正を停止する。   Thereafter, at the time t2 when it is determined that the change amount dGN is smaller than the decrease determination value KN2 and the change amount dGA is smaller than the decrease determination value KA2 (dGN <KN2 and dGA <KA2), (In other words, the exhaust flow stagnation state is determined), and the rapid deceleration flag after rapid acceleration is set to “1”. As a result, it is determined that the execution condition of the cylinder-by-cylinder air-fuel ratio control is not satisfied, and the execution condition flag is reset to “0”, so that the cylinder-by-cylinder air-fuel ratio estimation, cylinder-by-cylinder air-fuel ratio control, and air-fuel ratio detection timing correction are performed. To stop.

この後、図16に示すように、急加速後の急減速時(急加速後の急減速時フラグ=1)と判定してから所定時間が経過した時点t3 で、急加速後の急減速時(つまり排気流停滞状態)ではないと判定して、急加速後の急減速時フラグを「0」にリセットする。或は、図17に示すように、変化量dGNが所定値KN3 よりも大きく且つ変化量dGAが所定値KA3 よりも大きい(dGN>KN3 且つdGA>KA3 )とされた時点t3 で、急加速後の急減速時ではないと判定して、急加速後の急減速時フラグを「0」にリセットする。これにより、気筒別空燃比制御の実行条件が成立していると判定して、実行条件フラグを「1」にセットすることで、気筒別空燃比推定と気筒別空燃比制御と空燃比検出タイミング補正を再開する。   After that, as shown in FIG. 16, at the time t3 when a predetermined time has elapsed since it was determined that the vehicle was suddenly decelerated after sudden acceleration (the flag for sudden deceleration after sudden acceleration = 1), In other words, it is determined that the exhaust flow stagnation state is not established, and the rapid deceleration flag after rapid acceleration is reset to “0”. Alternatively, as shown in FIG. 17, after the rapid acceleration at time t3 when the change amount dGN is larger than the predetermined value KN3 and the change amount dGA is larger than the predetermined value KA3 (dGN> KN3 and dGA> KA3). It is determined that it is not during sudden deceleration, and the rapid deceleration flag after rapid acceleration is reset to “0”. Accordingly, it is determined that the execution condition of the cylinder-by-cylinder air-fuel ratio control is satisfied, and the execution condition flag is set to “1”, so that the cylinder-by-cylinder air-fuel ratio estimation, the cylinder-by-cylinder air-fuel ratio control, and the air-fuel ratio detection timing are set. Resume correction.

以上説明した本実施例2では、エンジン11の急加速後の急減速時か否かによって排気流停滞状態であるか否かを判定し、急加速後の急減速時(排気流停滞状態)と判定されたときに、気筒別空燃比推定と気筒別空燃比制御と空燃比検出タイミング補正を停止するようにしている。これにより、排気の流れの停滞により各気筒の空燃比を正しく制御できない状態で気筒別空燃比制御が通常通りに継続されることを回避して排気エミッションの悪化を抑制することができる。   In the second embodiment described above, it is determined whether or not the exhaust flow stagnation state is based on whether or not the engine 11 is suddenly decelerated after sudden acceleration, and when the engine 11 is suddenly decelerated after sudden acceleration (exhaust flow stagnation state). When the determination is made, cylinder-by-cylinder air-fuel ratio estimation, cylinder-by-cylinder air-fuel ratio control, and air-fuel ratio detection timing correction are stopped. Thereby, it is possible to prevent the cylinder-by-cylinder air-fuel ratio control from continuing normally in a state where the air-fuel ratio of each cylinder cannot be controlled correctly due to the stagnation of the exhaust flow, and to suppress the deterioration of exhaust emission.

また、本実施例2では、吸入空気量の変化量が所定の増加判定値よりも大きい状態から所定の減少判定値よりも小さい状態に変化したときに、急加速後の急減速時(排気流停滞状態)と判定するようにしている。これにより、センサで検出可能な吸入空気量に基づいて急加速後の急減速時(排気流速低下状態)を精度良く判定することができる。   In the second embodiment, when the amount of change in the intake air amount changes from a state larger than a predetermined increase determination value to a state smaller than a predetermined decrease determination value, a sudden deceleration after the rapid acceleration (exhaust flow) (Stagnation state). As a result, it is possible to accurately determine the time of sudden deceleration (exhaust gas flow rate lowered state) after sudden acceleration based on the intake air amount detectable by the sensor.

更に、本実施例2では、急加速後の急減速時(排気流停滞状態)と判定してから所定時間が経過したとき又は吸入空気量の変化量が所定値よりも大きくなったときに、急加速後の急減速時(排気流停滞状態)ではないと判定するようにしている。このようにすれば、急加速後の急減速時(排気流速低下状態)と判定してから所定時間が経過するか又は吸入空気量の変化量が所定値よりも大きくなって、排気の流れの停滞が解消されて、空燃比センサ36出力の振幅がある程度大きくなってから気筒別空燃比制御を再開することができる。   Furthermore, in the second embodiment, when a predetermined time has elapsed since it was determined that the vehicle is suddenly decelerating after sudden acceleration (exhaust flow stagnation state) or when the amount of change in the intake air amount is greater than a predetermined value, It is determined that it is not at the time of sudden deceleration after sudden acceleration (exhaust flow stagnation state). In this way, a predetermined time elapses after it is determined that the vehicle is suddenly decelerating after sudden acceleration (a state in which the exhaust gas flow rate is reduced), or the amount of change in the intake air amount exceeds a predetermined value, and The cylinder-by-cylinder air-fuel ratio control can be resumed after the stagnation is eliminated and the amplitude of the output of the air-fuel ratio sensor 36 increases to some extent.

尚、上記実施例2では、急加速後の急減速時(排気流停滞状態)と判定されたときに、気筒別空燃比推定と気筒別空燃比制御と空燃比検出タイミング補正を全て停止するようにしたが、これに限定されず、気筒別空燃比推定と気筒別空燃比制御と空燃比検出タイミング補正のうちの一つ又は二つを停止するようにしても良い。   In the second embodiment, when it is determined that the vehicle is suddenly decelerating after sudden acceleration (exhaust flow stagnation state), all cylinder-by-cylinder air-fuel ratio estimation, cylinder-by-cylinder air-fuel ratio control, and air-fuel ratio detection timing correction are all stopped. However, the present invention is not limited to this, and one or two of the cylinder-by-cylinder air-fuel ratio estimation, the cylinder-by-cylinder air-fuel ratio control, and the air-fuel ratio detection timing correction may be stopped.

前述したように、気筒別空燃比推定を停止(各気筒の推定空燃比の算出を停止)することで、気筒別空燃比制御による各気筒の気筒別補正値の更新を停止することができるため、気筒別空燃比推定のみを停止しても、気筒別空燃比制御を停止(各気筒の気筒別補正値の算出を停止)するのとほぼ同様の状態にできる。また、空燃比検出タイミング補正のみを停止しても、各気筒の空燃比の推定精度の悪化を抑制して、気筒別空燃比制御の制御精度の悪化を抑制することができる。   As described above, since the cylinder-by-cylinder air-fuel ratio estimation is stopped (the calculation of the estimated air-fuel ratio of each cylinder is stopped), the update of the cylinder-specific correction value for each cylinder by the cylinder-by-cylinder air-fuel ratio control can be stopped. Even if only the cylinder-by-cylinder air-fuel ratio estimation is stopped, the cylinder-by-cylinder air-fuel ratio control can be brought into a state substantially the same as that in which the cylinder-by-cylinder correction value calculation is stopped. Even if only the air-fuel ratio detection timing correction is stopped, it is possible to suppress the deterioration of the estimation accuracy of the air-fuel ratio of each cylinder and to suppress the deterioration of the control accuracy of the cylinder-by-cylinder air-fuel ratio control.

また、上記実施例2では、吸入空気量に基づいて急加速後の急減速時(排気流速低下状態)か否かを判定するようにしたが、これに限定されず、例えば、エンジン回転速度、アクセル開度、スロットル開度、吸気圧等に基づいて、急加速後の急減速時か否かを判定するようにしても良い。   Further, in the second embodiment, it is determined whether or not the vehicle is suddenly decelerating after sudden acceleration (exhaust gas flow rate lowered state) based on the intake air amount. However, the present invention is not limited to this. Based on the accelerator opening, the throttle opening, the intake pressure, and the like, it may be determined whether or not the vehicle is suddenly decelerating after sudden acceleration.

また、上記実施例2では、図14のルーチンで、急加速後の急減速時と判定してから所定時間が経過したか否かを判定する処理(ステップ809)と、吸入空気量の変化量が所定値よりも大きくなったか否かを判定する処理(ステップ810)を両方とも行うようにしたが、いずれか一方の処理を省略するようにしても良い。   In the second embodiment, the routine shown in FIG. 14 determines whether or not a predetermined time has elapsed since it was determined that the vehicle was suddenly decelerated after sudden acceleration (step 809), and the amount of change in the intake air amount. Both of the processes (step 810) for determining whether or not is greater than a predetermined value are performed, but either one of the processes may be omitted.

また、上記実施例2では、急加速後の急減速時と判定されたときに、気筒別空燃比推定と気筒別空燃比制御と空燃比検出タイミング補正を停止するようにしたが、これに限定されず、急加速後の急減速時以外でも、排気流停滞状態と判定されたときに、気筒別空燃比推定や気筒別空燃比制御や空燃比検出タイミング補正を停止するようにしても良い。   In the second embodiment, the cylinder-by-cylinder air-fuel ratio estimation, the cylinder-by-cylinder air-fuel ratio control, and the air-fuel ratio detection timing correction are stopped when it is determined that there is a sudden deceleration after sudden acceleration. Alternatively, the cylinder-by-cylinder air-fuel ratio estimation, the cylinder-by-cylinder air-fuel ratio control, and the air-fuel ratio detection timing correction may be stopped when it is determined that the exhaust flow is in a stagnation state, even at times other than sudden deceleration after sudden acceleration.

また、空燃比検出タイミングのずれ有りと判定されたときに、空燃比検出タイミングを補正する方法は、上記各実施例1,2で説明した方法に限定されず、適宜変更しても良い。
また、上記各実施例1,2では、本発明を4気筒エンジンに適用したが、これに限定されず、2気筒エンジンや3気筒エンジン或は5気筒以上のエンジンに本発明を適用しても良い。
Further, the method of correcting the air-fuel ratio detection timing when it is determined that there is a deviation in the air-fuel ratio detection timing is not limited to the method described in the first and second embodiments, and may be changed as appropriate.
In the first and second embodiments, the present invention is applied to a four-cylinder engine. However, the present invention is not limited to this, and the present invention can be applied to a two-cylinder engine, a three-cylinder engine, or an engine having five or more cylinders. good.

その他、本発明は、吸気ポート噴射式エンジンに限定されず、筒内噴射式エンジンや、吸気ポート噴射用の燃料噴射弁と筒内噴射用の燃料噴射弁の両方を備えたデュアル噴射式のエンジンにも適用して実施できる。   In addition, the present invention is not limited to the intake port injection type engine, but is an in-cylinder injection type engine or a dual injection type engine having both a fuel injection valve for intake port injection and a fuel injection valve for in-cylinder injection. It can also be applied to.

11…エンジン(内燃機関)、12…吸気管、34…排気管、34a…排気集合部、36…空燃比センサ、39…ECU(気筒別空燃比推定手段,気筒別空燃比制御手段,検出タイミング補正手段,失火判定手段,停止手段,排気流判定手段)   DESCRIPTION OF SYMBOLS 11 ... Engine (internal combustion engine), 12 ... Intake pipe, 34 ... Exhaust pipe, 34a ... Exhaust collecting part, 36 ... Air-fuel ratio sensor, 39 ... ECU (Air-fuel ratio estimation means by cylinder, Air-fuel ratio control means by cylinder, Detection timing (Correction means, misfire determination means, stop means, exhaust flow determination means)

Claims (6)

内燃機関(11)の各気筒の排出ガスが合流して流れる排気集合部(34a)に該排出ガスの空燃比を検出する空燃比センサ(36)を設置し、前記各気筒の空燃比検出タイミング毎に検出された前記空燃比センサ(36)の検出値に基づいて前記各気筒の空燃比を推定する気筒別空燃比推定を実行する気筒別空燃比推定手段(39)と、前記各気筒の推定空燃比に基づいて前記各気筒の空燃比を制御する気筒別空燃比制御を実行する気筒別空燃比制御手段(39)とを備えた内燃機関の気筒別空燃比制御装置において、
前記内燃機関(11)の失火の有無を判定する失火判定手段(39)と、
前記失火判定手段(39)により前記内燃機関(11)の失火有りと判定されたときに、前記気筒別空燃比推定と前記気筒別空燃比制御のうちの少なくとも一方を停止する停止手段(39)と
を備えていることを特徴とする内燃機関の気筒別空燃比制御装置。
An air-fuel ratio sensor (36) for detecting the air-fuel ratio of the exhaust gas is installed in the exhaust collecting part (34a) where the exhaust gas of each cylinder of the internal combustion engine (11) flows and flows. Cylinder-by-cylinder air-fuel ratio estimation means (39) for executing cylinder-by-cylinder air-fuel ratio estimation for estimating the air-fuel ratio of each cylinder based on the detected value of the air-fuel ratio sensor (36) detected every time; In a cylinder-by-cylinder air-fuel ratio control apparatus for an internal combustion engine, comprising: a cylinder-by-cylinder air-fuel ratio control means (39) for performing cylinder-by-cylinder air-fuel ratio control for controlling the air-fuel ratio of each cylinder based on an estimated air-fuel ratio;
Misfire determination means (39) for determining the presence or absence of misfire in the internal combustion engine (11);
Stop means (39) for stopping at least one of the cylinder-by-cylinder air-fuel ratio estimation and the cylinder-by-cylinder air-fuel ratio control when the misfire judgment means (39) determines that the internal combustion engine (11) has misfired. And a cylinder-by-cylinder air-fuel ratio control apparatus for an internal combustion engine.
前記停止手段(39)は、前記失火判定手段(39)により前記内燃機関(11)の失火有りと判定されたときに、前記気筒別空燃比制御による気筒別補正値をリセットすることを特徴とする請求項1に記載の内燃機関の気筒別空燃比制御装置。   The stop means (39) resets the cylinder specific correction value by the cylinder specific air-fuel ratio control when the misfire determination means (39) determines that the internal combustion engine (11) has misfired. The cylinder-by-cylinder air-fuel ratio control apparatus for an internal combustion engine according to claim 1. 内燃機関(11)の各気筒の排出ガスが合流して流れる排気集合部(34a)に該排出ガスの空燃比を検出する空燃比センサ(36)を設置し、前記各気筒の空燃比検出タイミング毎に検出された前記空燃比センサ(36)の検出値に基づいて前記各気筒の空燃比を推定する気筒別空燃比推定を実行する気筒別空燃比推定手段(39)と、前記各気筒の推定空燃比に基づいて前記各気筒の空燃比を制御する気筒別空燃比制御を実行する気筒別空燃比制御手段(39)と、前記気筒別空燃比制御中に前記各気筒の推定空燃比に基づいて前記空燃比検出タイミングを補正する空燃比検出タイミング補正を実行する検出タイミング補正手段(39)とを備えた内燃機関の気筒別空燃比制御装置において、
前記内燃機関(11)の排気の流れが停滞した状態(以下「排気流停滞状態」という)か否かを判定する排気流判定手段(39)と、
前記排気流判定手段(39)により前記排気流停滞状態と判定されたときに、前記気筒別空燃比推定と前記気筒別空燃比制御と前記空燃比検出タイミング補正のうちの少なくとも一つを停止する停止手段(39)と
を備えていることを特徴とする内燃機関の気筒別空燃比制御装置。
An air-fuel ratio sensor (36) for detecting the air-fuel ratio of the exhaust gas is installed in the exhaust collecting part (34a) where the exhaust gas of each cylinder of the internal combustion engine (11) flows and flows. Cylinder-by-cylinder air-fuel ratio estimation means (39) for executing cylinder-by-cylinder air-fuel ratio estimation for estimating the air-fuel ratio of each cylinder based on the detected value of the air-fuel ratio sensor (36) detected every time; Cylinder air-fuel ratio control means (39) for executing cylinder-by-cylinder air-fuel ratio control for controlling the air-fuel ratio of each cylinder based on the estimated air-fuel ratio, and the estimated air-fuel ratio of each cylinder during the cylinder-by-cylinder air-fuel ratio control. A cylinder-by-cylinder air-fuel ratio control apparatus for an internal combustion engine, comprising detection timing correction means (39) for executing air-fuel ratio detection timing correction for correcting the air-fuel ratio detection timing based on
Exhaust flow determination means (39) for determining whether or not the exhaust flow of the internal combustion engine (11) is stagnant (hereinafter referred to as "exhaust flow stagnant state");
When it is determined by the exhaust flow determination means (39) that the exhaust flow is stagnant, at least one of the cylinder-by-cylinder air-fuel ratio estimation, the cylinder-by-cylinder air-fuel ratio control, and the air-fuel ratio detection timing correction is stopped. A cylinder-by-cylinder air-fuel ratio control apparatus for an internal combustion engine, comprising: a stop means (39).
前記排気流判定手段(39)は、前記内燃機関(11)の急加速後の急減速時に前記排気流停滞状態と判定することを特徴とする請求項3に記載の内燃機関の気筒別空燃比制御装置。   The air-fuel ratio for each cylinder of the internal combustion engine according to claim 3, wherein the exhaust flow determination means (39) determines the exhaust flow stagnation state when the internal combustion engine (11) is suddenly decelerated after sudden acceleration. Control device. 前記排気流判定手段(39)は、前記内燃機関(11)の吸入空気量の変化量が所定の増加判定値よりも大きい状態から所定の減少判定値よりも小さい状態に変化したときに、前記急加速後の急減速時と判定することを特徴とする請求項4に記載の内燃機関の気筒別空燃比制御装置。   When the amount of change in the intake air amount of the internal combustion engine (11) changes from a state larger than a predetermined increase determination value to a state smaller than a predetermined decrease determination value, the exhaust flow determination means (39) 5. The cylinder-by-cylinder air-fuel ratio control apparatus for an internal combustion engine according to claim 4, wherein it is determined that the vehicle is suddenly decelerated after sudden acceleration. 前記排気流判定手段(39)は、前記急加速後の急減速時と判定してから所定時間が経過したとき又は前記内燃機関(11)の吸入空気量の変化量が所定値よりも大きくなったときに、前記急加速後の急減速時ではないと判定することを特徴とする請求項5に記載の内燃機関の気筒別空燃比制御装置。   The exhaust flow determining means (39) determines that the predetermined amount of time has elapsed since it was determined to be suddenly decelerated after the rapid acceleration, or the amount of change in the intake air amount of the internal combustion engine (11) is greater than a predetermined value. 6. The cylinder-by-cylinder air-fuel ratio control apparatus for an internal combustion engine according to claim 5, wherein it is determined that it is not at the time of sudden deceleration after the sudden acceleration.
JP2014166312A 2014-08-19 2014-08-19 Internal combustion engine cylinder-specific air-fuel ratio control unit Pending JP2016041922A (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2014166312A JP2016041922A (en) 2014-08-19 2014-08-19 Internal combustion engine cylinder-specific air-fuel ratio control unit
US14/825,455 US9890726B2 (en) 2014-08-19 2015-08-13 Individual cylinder air-fuel ratio control device of internal combustion engine
US15/585,227 US9790882B2 (en) 2014-08-19 2017-05-03 Individual cylinder air-fuel ratio control device of internal combustion engine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014166312A JP2016041922A (en) 2014-08-19 2014-08-19 Internal combustion engine cylinder-specific air-fuel ratio control unit

Publications (1)

Publication Number Publication Date
JP2016041922A true JP2016041922A (en) 2016-03-31

Family

ID=55591787

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014166312A Pending JP2016041922A (en) 2014-08-19 2014-08-19 Internal combustion engine cylinder-specific air-fuel ratio control unit

Country Status (1)

Country Link
JP (1) JP2016041922A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019194451A (en) * 2018-05-02 2019-11-07 株式会社デンソー Air-fuel ratio estimation device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019194451A (en) * 2018-05-02 2019-11-07 株式会社デンソー Air-fuel ratio estimation device
JP7091814B2 (en) 2018-05-02 2022-06-28 株式会社デンソー Air-fuel ratio estimator

Similar Documents

Publication Publication Date Title
JP4420288B2 (en) Cylinder-by-cylinder air-fuel ratio control apparatus for internal combustion engine
JP4321411B2 (en) Cylinder-by-cylinder air-fuel ratio control apparatus for internal combustion engine
US7103467B2 (en) Device for detecting response characteristics of sensor
JP5107392B2 (en) Device for determining an air-fuel ratio imbalance between cylinders
US7487035B2 (en) Cylinder abnormality diagnosis unit of internal combustion engine and controller of internal combustion engine
US9790882B2 (en) Individual cylinder air-fuel ratio control device of internal combustion engine
JP2005163696A (en) Misfire detection device of internal combustion engine
JP2008144639A (en) Control device for internal combustion engine
JP2008128080A (en) Control device for internal combustion engine
JP6213085B2 (en) Cylinder-by-cylinder air-fuel ratio control apparatus for internal combustion engine
US10247120B2 (en) Cylinder-by-cylinder air-fuel ratio controller for internal combustion engine
JP6213078B2 (en) Cylinder-by-cylinder air-fuel ratio control apparatus for internal combustion engine
JP2006057523A (en) Failure diagnosis device for engine control system
JP2007211609A (en) Device for controlling air-fuel ratio per cylinder of internal combustion engine
JP4600699B2 (en) Cylinder-by-cylinder air-fuel ratio control apparatus for internal combustion engine
JP2006138280A (en) Control device for internal combustion engine
JP2016041922A (en) Internal combustion engine cylinder-specific air-fuel ratio control unit
JP2005207354A (en) Individual cylinder air fuel ratio estimation device and individual cylinder air fuel ratio control device for internal combustion engine
JP2008038784A (en) Cylinder-by-cylinder air-fuel ratio control device of internal combustion engine
JP2008128161A (en) Control device of internal combustion engine
JP2008121632A (en) Each cylinder abnormal diagnosis device of internal combustion engine
US11193433B2 (en) Engine controller, engine control method, and memory medium
JP2016044576A (en) Cylinder air-fuel ratio control device for internal combustion engine
JP4186350B2 (en) Combustion state detection device for internal combustion engine
JP2016044575A (en) Cylinder air-fuel ratio control device for internal combustion engine

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20160307

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20160309