(57)【特許請求の範囲】
【請求項１】
所定の対象気筒の燃料噴射量を強制的に所定量変更する燃料噴射量変更制御を実行する燃料噴射量変更制御手段と、
前記所定の対象気筒に対して点火遅角制御を実行する点火遅角制御手段と、
前記所定の対象気筒に対して前記燃料噴射量変更制御と前記点火遅角制御とが一緒に実行されたときの前記所定の対象気筒に関する出力変動に基づき、気筒間空燃比ばらつき異常を検出する検出手段と
を備えた、多気筒内燃機関の気筒間空燃比ばらつき異常検出装置。
【請求項２】
前記燃料噴射量変更制御手段は、前記所定の対象気筒の燃料噴射量を通常時燃料噴射量から所定量増やすようにまたは減らすように燃料噴射量変更制御を実行する、請求項１に記載の多気筒内燃機関の気筒間空燃比ばらつき異常検出装置。
【請求項３】
前記検出手段は、前記所定の対象気筒に対して前記燃料噴射量変更制御と前記点火遅角制御とが一緒に実行されたときの前記所定の対象気筒の回転変動に基づき、気筒間空燃比ばらつき異常を検出する、請求項１または２に記載の多気筒内燃機関の気筒間空燃比ばらつき異常検出装置。
【請求項４】
前記検出手段は、前記燃料噴射量変更制御と前記点火遅角制御とが一緒に実行されたとき以外には、前記検出を実行しない、請求項１ないし３のいずれかに記載の多気筒内燃機関の気筒間空燃比ばらつき異常検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、多気筒内燃機関の気筒間空燃比のばらつき異常を検出するための装置に関する。
【背景技術】
【０００２】
一般に、触媒を利用した排気浄化システムを備える内燃機関では、排気中有害成分の触媒による浄化を高効率で行うため、内燃機関で燃焼される混合気の空気と燃料との混合割合、すなわち空燃比のコントロールが欠かせない。こうした空燃比の制御を行うため、内燃機関の排気通路に空燃比センサを設け、これによって検出された空燃比を所定の目標空燃比に一致させるようフィードバック制御を実施している。
【０００３】
一方、多気筒内燃機関においては、通常全気筒に対し同一の制御量を用いて空燃比制御を行うため、空燃比制御を実行したとしても実際の空燃比が気筒間でばらつくことがある。このときばらつきの程度が小さければ、空燃比フィードバック制御で吸収可能であり、また触媒でも排気中有害成分を浄化処理可能なので、排気エミッションに影響を与えず、特に問題とならない。
【０００４】
しかし、例えば一部の気筒の燃料噴射系や吸気バルブの動弁機構が故障するなどして、気筒間の空燃比が大きくばらつくと、排気エミッションを悪化させてしまい、問題となる。このような排気エミッションを悪化させる程の大きな空燃比ばらつきは異常として検出するのが望ましい。特に自動車用内燃機関の場合、排気エミッションが悪化した車両の走行を未然に防止するため、気筒間空燃比ばらつき異常を車載状態で検出する技術（所謂ＯＢＤ；On-Board Diagnostics）があり、米国においては法規制化されている。
【０００５】
例えば、特許文献１は、理論空燃比より希薄側の空燃比で多気筒内燃機関を運転したときに生じる回転変動を気筒ごとに検出し、該回転変動に基づいて燃料噴射量を変更して該変更量から気筒間空然比のばらつきを検出することを開示する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平７−２７９７３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、多気筒内燃機関において気筒間空燃比ばらつき異常があるときには、気筒間の出力におけるばらつきが大きくなり得る。こうした出力変動をより確実に検出するためには強制的に燃料噴射量を変更させることが有効であるだろう。しかし、検出精度を上げるために燃料噴射量の変更量を大きくしすぎると、ドライバビリティの悪化または排気エミッションの悪化が生じる可能性がある。
【０００８】
そこで本発明は、以上の事情に鑑みて創案され、その目的は、多気筒内燃機関において、ドライバビリティの悪化および排気エミッションの悪化を抑制しつつ、気筒間空燃比ばらつき異常をより適切に検出することにある。
【課題を解決するための手段】
【０００９】
本発明の一の態様によれば、所定の対象気筒の燃料噴射量を強制的に所定量変更する燃料噴射量変更制御を実行する燃料噴射量変更制御手段と、前記所定の対象気筒に対して点火遅角制御を実行する点火遅角制御手段と、前記所定の対象気筒に対して前記燃料噴射量変更制御と前記点火遅角制御とが一緒に実行されたときの前記所定の対象気筒に関する出力変動に基づき、気筒間空燃比ばらつき異常を検出する検出手段とを備えた、多気筒内燃機関の気筒間空燃比ばらつき異常検出装置が提供される。
【００１０】
前記燃料噴射量変更制御手段は、前記所定の対象気筒の燃料噴射量を通常時燃料噴射量から所定量増やすようにまたは減らすように燃料噴射量変更制御を実行するとよい。
【００１１】
前記検出手段は、前記所定の対象気筒に対して前記燃料噴射量変更制御と前記点火遅角制御とが一緒に実行されたときの前記所定の対象気筒の回転変動に基づき、気筒間空燃比ばらつき異常を検出するとよい。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１実施形態に係る内燃機関の概略図である。
【図２】触媒前センサおよび触媒後センサの出力特性を示すグラフである。
【図３】回転変動を表す値を説明するためのタイムチャートである。
【図４】回転変動を表す別の値を説明するためのタイムチャートである。
【図５】対象気筒のインバランス率と回転変動量との関係を概念的に表したグラフである。
【図６】図５の特性線の一部を表したグラフであり、燃料噴射量の増量と、増量前後の回転変動量の変化との関係を説明するためのグラフである。
【図７】図６の特性線に重ねて、燃料噴射量の増量および増量前後の回転変動量の変化に対する点火遅角の関係を説明するための特性線を表したグラフである。
【図８】第１実施形態の制御の流れを説明するための図である。
【図９】第２実施形態の制御の流れを説明するための図である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施形態を添付図面に基づき説明する。まず、第１実施形態を説明する。
【００１４】
図１に本実施形態に係る内燃機関を概略的に示す。図示される内燃機関（エンジン）１は自動車に搭載されたＶ型８気筒火花点火式内燃機関（ガソリンエンジン）である。エンジン１は第１のバンクＢ１と第２のバンクＢ２とを有し、第１のバンクＢ１には奇数番気筒すなわち＃１，＃３，＃５，＃７気筒が設けられ、第２のバンクＢ２には偶数番気筒すなわち＃２，＃４，＃６，＃８気筒が設けられている。＃１，＃３，＃５，＃７気筒が第１の気筒群をなし、＃２，＃４，＃６，＃８気筒が第２の気筒群をなす。
【００１５】
各気筒に燃料噴射手段としてのインジェクタ（燃料噴射弁）２が設けられる。インジェクタ２は、対応気筒の吸気通路特に吸気ポート（図示せず）内に向けて燃料を噴射する。また各気筒には、筒内の混合気に点火するための点火手段としての点火プラグ１３が設けられる。なお、エンジン１での点火順序は＃１、＃８、＃７、＃３、＃６、＃５、＃４、＃２気筒の順である。
【００１６】
吸気を導入するための吸気通路７は、前記吸気ポートの他、集合部としてのサージタンク８、各気筒の吸気ポートおよびサージタンク８を結ぶ複数の吸気マニホールド９、サージタンク８の上流側の吸気管１０などによって区画形成される。サージタンク８よりも上流側の吸気通路７の部分には、上流側から順にエアフローメータ１１と電子制御式スロットルバルブ１２とが設けられている。エアフローメータ１１は吸気流量に応じた大きさの信号を出力する。なお、吸気通路７の上流端側には、吸気通路７に導かれる空気中の塵埃などを除去するべくエアクリーナ（図示せず）が設けられている。
【００１７】
第１のバンクＢ１に対して第１の排気通路１４Ａが設けられ、第２のバンクＢ２に対して第２の排気通路１４Ｂが設けられる。これら第１および第２の排気通路１４Ａ，１４Ｂは下流触媒コンバータ１９の上流側で合流して単一の排気通路となる。この合流位置より上流側の排気系の構成は両バンクで同一なので、ここでは第１のバンクＢ１側についてのみ説明し、第２のバンクＢ２側については図中同一符号を付して説明を省略する。
【００１８】
合流位置よりも上流側の第１の排気通路１４Ａの部分は、＃１，＃３，＃５，＃７の各気筒の排気ポート（図示せず）、これら排気ポートの排気ガスを集合させる排気マニホールド１６、排気マニホールド１６の下流側に設置された排気管１７などによって区画形成される。そして排気管１７の途中には上流触媒コンバータ１８が設けられている。上流触媒コンバータ１８の上流側および下流側（直前および直後）にそれぞれ、排気ガスの空燃比を検出するための空燃比検出手段である触媒前センサ２０および触媒後センサ２１が設置されている。このように、一方のバンクに属する複数の気筒（あるいは気筒群）に対して、上流触媒コンバータ１８、触媒前センサ２０および触媒後センサ２１が各一つずつ設けられている。なお、第１および第２の排気通路１４Ａ，１４Ｂを合流させないで、これらに個別に下流触媒コンバータ１９を設けることも可能である。
【００１９】
エンジン１には各種制御手段（制御装置）および各種検出手段（検出部）としての各機能を担う電子制御ユニット（以下ＥＣＵと称す）１００が設けられている。ＥＣＵ１００は、何れも図示されないＣＰＵ、ＲＯＭおよびＲＡＭを含む記憶装置、並びに入出力ポート等を含むものである。ＥＣＵ１００には、前述のエアフローメータ１１、触媒前センサ２０、触媒後センサ２１のほか、エンジン１のクランク角を検出するためのクランク角センサ２２、アクセル開度を検出するためのアクセル開度センサ２３、エンジン冷却水の温度を検出するための水温センサ２４、ノッキングの発生を検出するためのノックセンサ２５、その他の各種センサが図示されないＡ／Ｄ変換器等を介して電気的に接続されている。ＥＣＵ１００は、各種センサの検出値等に基づき、所望の出力が得られるように、インジェクタ２、点火プラグ１３、スロットルバルブ１２等を制御し、燃料噴射量、燃料噴射時期、点火時期、スロットル開度等を制御する。
【００２０】
このようにＥＣＵ１００は、燃料噴射制御手段、点火制御手段、吸入空気量制御手段、およびこれらのうちの部分の組み合わせとして構成される空燃比制御手段等のそれぞれの機能を担う。より詳細には、エンジン１には後で詳述するように気筒間空燃比ばらつき異常検出装置が装備されていて、ＥＣＵ１００は、燃料噴射量変更制御手段、点火遅角制御手段、気筒間空燃比ばらつき異常を検出する検出手段の各機能を担う。なお、本実施形態では、検出手段は、エンジン１におけるある出力変動を表す値（出力変動量）を検出するための出力変動量検出手段と、該出力変動量検出手段により検出された出力変動量と所定値との比較を行う比較手段とのそれぞれを含む。
【００２１】
スロットルバルブ１２にはスロットル開度センサ（図示せず）が設けられ、スロットル開度センサからの出力信号がＥＣＵ１００に送られる。ＥＣＵ１００は、通常、アクセル開度に応じて定まる開度に、スロットルバルブ１２の開度（スロットル開度）をフィードバック制御する。
【００２２】
またＥＣＵ１００は、エアフローメータ１１からの出力信号に基づき、単位時間当たりの吸入空気の量すなわち吸入空気量を検出する。そしてＥＣＵ１００は、検出したアクセル開度、スロットル開度および吸入空気量の少なくとも一つに基づき、エンジン１の負荷を検出する。
【００２３】
ＥＣＵ１００は、クランク角センサ２２からのクランクパルス信号に基づき、クランク角自体を検出すると共にエンジン１の回転数を検出する。ここで「回転数」とは単位時間当たりの回転数のことをいい、回転速度と同義である。本実施形態では回転数とは１分間当たりの回転数ｒｐｍのことをいう。なお、ＥＣＵ１００の気筒間空然比ばらつき異常を検出する検出手段として実質的に機能する部分は、出力検出手段としてのクランク角センサ２２の出力に基づいて出力変動量としての回転変動を表す値（回転変動量）を検出する。
【００２４】
また、ＥＣＵ１００は、エンジン運転状態、例えばエンジン回転速度およびエンジン負荷に基づいて定められる基準点火時期に対して、点火時期補正制御を行う。ＥＣＵ１００は、点火時期をエンジン１が最大トルクを発生する点火時期（ＭＢＴ）に近づけるように、かつ、ノッキング発生を回避するように、ノックセンサ２５からの出力に基づいて点火プラグ１３の作動を制御する。つまり、エンジン１は、点火時期をノック限界付近に制御するようにノックコントロールシステム（ＫＣＳ）を備えている。ノックセンサ２５からの出力に基づいてノック有りと判定された場合には点火遅角し、またノック無しと判定された場合には点火進角するように点火時期は補正制御される。
【００２５】
空燃比センサである触媒前センサ２０は所謂広域空燃比センサからなり、比較的広範囲に亘る空燃比を連続的に検出可能である。図２に触媒前センサ２０の出力特性を示す。図示するように、触媒前センサ２０は、検出した排気空燃比（触媒前空燃比Ａ／Ｆｆ）に比例した大きさの電圧信号Ｖｆを出力する。排気空燃比がストイキ（理論空燃比、例えばＡ／Ｆ＝１４．５）であるときの出力電圧はＶｒｅｆｆ（例えば約３．３Ｖ）である。
【００２６】
他方、空燃比センサである触媒後センサ２１は所謂Ｏ２センサからなり、ストイキを境に出力値が急変する特性を持つ。図２に触媒後センサ２１の出力特性を示す。図示するように、排気空燃比（触媒後空燃比Ａ／Ｆｒ）がストイキであるときの出力電圧、すなわちストイキ相当値はＶｒｅｆｒ（例えば０．４５Ｖ）である。触媒後センサ２１の出力電圧は所定の範囲（例えば０〜１Ｖ）内で変化する。概して排気空燃比がストイキよりリーンのとき、触媒後センサの出力電圧Ｖｒはストイキ相当値Ｖｒｅｆｒより低くなり、排気空燃比がストイキよりリッチのとき、触媒後センサの出力電圧Ｖｒはストイキ相当値Ｖｒｅｆｒより高くなる。なお、触媒後センサ２１は省かれることができる。
【００２７】
上流触媒コンバータ１８および下流触媒コンバータ１９はそれぞれ三元触媒を備え、それぞれに流入する排気ガスの空燃比Ａ／Ｆがストイキ近傍のときに排気中の有害成分であるＮＯｘ、ＨＣおよびＣＯを同時に浄化する機能を有する。この三者を同時に高効率で浄化できる空燃比の幅（ウィンドウ）は比較的狭い。
【００２８】
そこで、エンジン１の通常運転時、上流触媒コンバータ１８に流入する排気ガスの空燃比をストイキ近傍に制御するための空燃比制御（ストイキ制御）がＥＣＵ１００により実行される。この空燃比制御は、触媒前センサ２０によって検出された排気空燃比が所定の目標空燃比であるストイキになるように混合気の空燃比（具体的には燃料噴射量）をフィードバック制御する主空燃比制御（主空燃比フィードバック制御）と、触媒後センサ２１によって検出された排気空燃比がストイキになるように混合気の空燃比（具体的には燃料噴射量）をフィードバック制御する補助空燃比制御（補助空燃比フィードバック制御）とからなる。
【００２９】
このように本実施形態において、空燃比の基準値（目標値）はストイキであり、このストイキに相当する燃料噴射量（ストイキ相当量という）が燃料噴射量の基準値（目標値）である。但し、空燃比および燃料噴射量の基準値は他の値とすることもできる。
【００３０】
空燃比制御はバンク単位で若しくはバンク毎に行われる。例えば第１のバンクＢ１側の触媒前センサ２０および触媒後センサ２１の検出値は、第１のバンクＢ１に属する＃１，＃３，＃５，＃７の気筒の空燃比フィードバック制御にのみ用いられ、第２のバンクＢ２に属する＃２，＃４，＃６，＃８の気筒の空燃比フィードバック制御には用いられない。逆も同様である。あたかも独立した直列４気筒エンジンが二つあるように、空燃比制御が実行される。また空燃比制御においては、同一バンクに属する各気筒に対し同一の制御量が一律に用いられる。
【００３１】
さて、例えば全気筒のうちの一部の気筒（特に１気筒）において、インジェクタ２の故障等が発生し、気筒間に空燃比のばらつき（インバランス：imbalance）が発生することがある。例えば第１のバンクＢ１について、インジェクタ２の閉弁不良により＃１気筒の燃料噴射量が他の＃３，＃５，＃７気筒の燃料噴射量よりも多くなり、＃１気筒の空燃比が他の＃３，＃５，＃７気筒の空燃比よりも大きくリッチ側にずれる場合である。
【００３２】
このときでも、前述の空燃比フィードバック制御により比較的大きな補正量を与えれば、触媒前センサ２０に供給されるトータルガス（合流後の排気ガス）の空燃比をストイキに制御できる場合がある。しかし、気筒別に見ると、＃１気筒がストイキより大きくリッチ、＃３，＃５，＃７気筒がストイキよりリーンであり、全体のバランスとしてストイキとなっているに過ぎず、排気エミッション上好ましくないことは明らかである。そこで本実施形態では、かかる気筒間空燃比ばらつき異常を検出する装置が装備されている。
【００３３】
ここで、気筒間空燃比のばらつき度合いを表す指標値としてインバランス率なる値を用いる。インバランス率とは、複数の気筒のうちある１気筒のみが燃料噴射量ズレを起こしている場合に、その燃料噴射量ズレを起こしている気筒（インバランス気筒）の燃料噴射量がどれくらいの割合で、燃料噴射量ズレを起こしていない気筒（バランス気筒）の燃料噴射量すなわち基準噴射量からズレているかを示す値である。インバランス率をＩＢ（％）、インバランス気筒の燃料噴射量をα、バランス気筒の燃料噴射量すなわち基準噴射量をβとすると、ＩＢ＝（α−β）／β×１００で表される。インバランス率ＩＢが大きいほど、インバランス気筒のバランス気筒に対する燃料噴射量ズレが大きく、空燃比ばらつき度合いは大きい。
【００３４】
他方、本実施形態においては、所定の対象気筒の燃料噴射量をアクティブにまたは強制的に増量または減量し、少なくとも燃料噴射量の増量または減量後の対象気筒の出力変動としての回転変動に基づき、ばらつき異常を検出する。
【００３５】
まず、回転変動について説明する。回転変動とは、エンジン回転速度あるいはクランクシャフト回転速度の変化をいう。そして本明細書では、上記したように回転変動を表す値つまり回転変動の程度を表した値を回転変動量と称する。例えば、クランクシャフトが所定角度回転するのに要する時間を計測し、その計測値を演算処理することで求められるその大きさおよび変化の仕方を表す値（量）が回転変動量として用いられることができる。以下の図３および図４を用いた説明で、種々の値を回転変動量として用いることができることが理解されるだろう。
【００３６】
図３には回転変動を説明するための一例としてのタイムチャートを示す。図示例は直列４気筒エンジンの例であるが、本実施形態のようなＶ型８気筒エンジンにも適用可能であることが理解されよう。図３の直列４気筒エンジンでの点火順序は＃１，＃３，＃４，＃２気筒の順である。
【００３７】
図３において、（Ａ）はエンジンのクランク角（°ＣＡ）を示す。１エンジンサイクルは７２０（°ＣＡ）であり、図には逐次的に検出される複数サイクル分のクランク角が鋸歯状に示されている。
【００３８】
図３（Ｂ）は、クランクシャフトが所定角度だけ回転するのに要した時間、すなわち回転時間Ｔ（ｓ）を示す。ここでは所定角度が３０（°ＣＡ）であるが、他の値（例えば１０（°ＣＡ））としてもよい。回転時間Ｔが長いほど（図中上側に至るほど）エンジン回転速度は遅く、逆に回転時間Ｔが短いほどエンジン回転速度は速い。この回転時間Ｔはクランク角センサ２２の出力に基づきＥＣＵ１００により検出される。
【００３９】
図３（Ｃ）は、後に説明する回転時間差ΔＴを示す。図中、「正常」とは、いずれの気筒にも空燃比ずれが生じていない正常な場合を示し、「リーンずれ異常」とは、＃１気筒のみにインバランス率ＩＢ＝−３０％のリーンずれが生じている異常な場合を示す。リーンずれ異常は例えばインジェクタの噴孔詰まりや開弁不良により生じ得る。
【００４０】
まず、各気筒の同一タイミングにおける回転時間ＴがＥＣＵにより検出される。ここでは各気筒の圧縮上死点（ＴＤＣ）のタイミングにおける回転時間Ｔが検出される。この回転時間Ｔが検出されるタイミングを検出タイミングという。
【００４１】
次いで、検出タイミング毎に、当該検出タイミングにおける回転時間Ｔ２と、直前の検出タイミングにおける回転時間Ｔ１との差（Ｔ２−Ｔ１）がＥＣＵにより算出される。この差が図３（Ｃ）に示す回転時間差ΔＴであり、ΔＴ＝Ｔ２−Ｔ１である。
【００４２】
通常、クランク角がＴＤＣを超えた後の燃焼行程では回転速度が上昇するため回転時間Ｔが低下し、その後の圧縮行程では回転速度が低下するため回転時間Ｔが増大する。
【００４３】
しかしながら、図３（Ｂ）に示すように＃１気筒がリーンずれ異常の場合、＃１気筒を点火させても十分なトルク（出力）が得られず、回転速度が上昇しづらいので、その影響で＃３気筒ＴＤＣにおける回転時間Ｔは大きくなっている。それ故、＃３気筒ＴＤＣにおける回転時間差ΔＴは、図３（Ｃ）に示すように大きな正の値となる。この＃３気筒ＴＤＣにおける回転時間および回転時間差をそれぞれ＃１気筒の回転時間および回転時間差とし、それぞれＴ1およびΔＴ1で表す。他の気筒についても同様である。
【００４４】
次に、＃３気筒は正常であるので、＃３気筒を点火させたときには回転速度が急峻に上昇する。これにより次の＃４気筒ＴＤＣのタイミングでは、＃３気筒ＴＤＣのときに比べ回転時間Ｔが若干低下しているに過ぎない。それ故、＃４気筒ＴＤＣにおいて検出された＃３気筒の回転時間差ΔＴ3は、図３（Ｃ）に示すように小さな負の値となる。このようにある気筒の回転時間差ΔＴが、点火気筒ＴＤＣ毎に検出される。
【００４５】
以降の＃２気筒ＴＤＣおよび＃１気筒ＴＤＣにおいても＃４気筒ＴＤＣのときと同様の傾向が見られ、両タイミングにおいて検出された＃４気筒の回転時間差ΔＴ4および＃２気筒の回転時間差ΔＴ2はともに小さな負の値となっている。以上の特性が１エンジンサイクル毎に繰り返される。
【００４６】
このように、各気筒の回転時間差ΔＴは、各気筒の回転変動を表す値であり、各気筒の空燃比ずれ量に相関した値であることが分かる。そこで各気筒の回転時間差ΔＴを各気筒の回転変動の指標値つまり回転変動量として用いることができる。各気筒の空燃比ずれ量が大きいほど、各気筒の回転変動は大きくなり、各気筒の回転時間差ΔＴは大きくなる。
【００４７】
他方、図３（Ｃ）に示すように、正常の場合には回転時間差ΔＴが常時ゼロ付近である。
【００４８】
図３の例ではリーンずれ異常の場合を示したが、逆のリッチずれ異常、すなわち１気筒のみに大きなリッチずれが生じている場合にも、同様の傾向がある。大きなリッチずれが生じた場合、点火しても燃料過多のため燃焼が不十分となり、十分なトルクが得られず、回転変動が大きくなるからである。
【００４９】
次に、図４を参照して、回転変動を表す別の値つまり別の回転変動量の例を説明する。図４（Ａ）は図３（Ａ）と同様にエンジンのクランク角（°ＣＡ）を示す。
【００５０】
図４（Ｂ）は、前記回転時間Ｔの逆数である角速度ω（ｒａｄ／ｓ）を示す。ω＝１／Ｔである。当然ながら、角速度ωが大きいほどエンジン回転速度は速く、角速度ωが小さいほどエンジン回転速度は遅い。角速度ωの波形は、回転時間Ｔの波形を上下反転した形となる。
【００５１】
図４（Ｃ）は、前記回転時間差ΔＴと同様、角速度ωの差である角速度差Δωを示す。角速度差Δωの波形も、回転時間差ΔＴの波形を上下反転した形となる。図中の「正常」および「リーンずれ異常」については図３と同様である。
【００５２】
まず、各気筒の同一タイミングにおける角速度ωがＥＣＵにより検出される。ここでも各気筒の圧縮上死点（ＴＤＣ）のタイミングにおける角速度ωが検出される。角速度ωは、１を前記回転時間Ｔで除することにより算出される。
【００５３】
次いで、検出タイミング毎に、当該検出タイミングにおける角速度ω２と、直前の検出タイミングにおける角速度ω１との差（ω２−ω１）がＥＣＵにより算出される。この差が図４（Ｃ）に示す角速度差Δωであり、Δω＝ω２−ω１である。
【００５４】
通常、クランク角がＴＤＣを超えた後の燃焼行程では回転速度が上昇するため角速度ωが上昇し、その後の圧縮行程では回転速度が低下するため角速度ωが低下する。
【００５５】
しかしながら、図４（Ｂ）に示すように＃１気筒がリーンずれ異常の場合、＃１気筒を点火させても十分なトルクが得られず、回転速度が上昇しづらいので、その影響で＃３気筒ＴＤＣにおける角速度ωは小さくなっている。それ故、＃３気筒ＴＤＣにおける角速度差Δωは、図４（Ｃ）に示すように大きな負の値となる。この＃３気筒ＴＤＣにおける角速度および角速度差をそれぞれ＃１気筒の角速度および角速度差とし、それぞれω1およびΔω1で表す。他の気筒についても同様である。
【００５６】
次に、＃３気筒は正常であるので、＃３気筒を点火させたときには回転速度が急峻に上昇する。これにより次の＃４気筒ＴＤＣのタイミングでは、＃３気筒ＴＤＣのときに比べ角速度ωが若干上昇するに過ぎない。それ故、＃４気筒ＴＤＣにおいて検出された＃３気筒の角速度差Δω3は、図４（Ｃ）に示すように小さな正の値となる。このようにある気筒の角速度差Δωが、次点火気筒ＴＤＣ毎に検出される。
【００５７】
以降の＃２気筒ＴＤＣおよび＃１気筒ＴＤＣにおいても＃４気筒ＴＤＣのときと同様の傾向が見られ、両タイミングにおいて検出された＃４気筒の角速度差Δω4および＃２気筒の角速度差Δω2はともに小さな正の値となっている。以上の特性が１エンジンサイクル毎に繰り返される。
【００５８】
このように、各気筒の角速度差Δωは、各気筒の回転変動を表す値であり、各気筒の空燃比ずれ量に相関した値であることが分かる。そこで各気筒の角速度差Δωを各気筒の回転変動の指標値として用いることができる。各気筒の空燃比ずれ量が大きいほど、各気筒の回転変動は大きくなり、各気筒の角速度差Δωは小さくなる（マイナス方向に大きくなる）。
【００５９】
他方、図４（Ｃ）に示すように、正常の場合には角速度差Δωが常時ゼロ付近である。
【００６０】
逆のリッチずれ異常の場合にも同様の傾向がある点は上述した通りである。
【００６１】
次に、ある１気筒の燃料噴射量をアクティブにつまり強制的に増量または減量して当該気筒での空燃比を変化させたときの回転変動量の変化を、図５の概念図を参照して説明する。ただし、この場合、燃料噴射量をアクティブに増量または減量するとき、吸入空気量は変化しないようにスロットルバルブ１２等の作動は制御される。
【００６２】
図５において、横軸はインバランス率ＩＢを示し、縦軸は回転変動量を示す。ここでは、全８気筒のうちのある１気筒のみのインバランス率ＩＢを燃料噴射量を増減させることで変化させ、このときの当該１気筒のインバランス率ＩＢと当該１気筒の回転変動量との関係を線Ｌ１にしたがって示す。当該１気筒をアクティブ対象気筒という。他の気筒は全てバランス気筒であり、基準噴射量としてストイキ相当量を噴射しているものとする。
【００６３】
なお、図５では横軸にインバランス率が用いられるが、インバランス率に代えて空燃比が用いられることができる。図５では左側に至るほどインバランス率がプラス方向に大きくなるが、これに対応して、インバランス率の代わりに空燃比が用いられる場合には、図中左側に至るほど空燃比はリッチになる。
【００６４】
図５の横軸には、インバランス率ＩＢがとられている。図５中、アクティブ対象気筒の燃料噴射量がストイキ相当量であるときに相当するインバランス率が０％の線Ｓから左側に移動するほど、インバランス率ＩＢがプラス方向に増加し、燃料噴射量としては過多すなわちリッチな状態となる。逆に、図５中、インバランス率ＩＢが０％の線Ｓから右側に移動するほど、インバランス率ＩＢがマイナス方向に増加し（減少し）、燃料噴射量としては過少すなわちリーンな状態となる。また、図５中、上側に移動するほど、回転変動量が大きくなる。
【００６５】
特性線Ｌ１から理解され得るように、アクティブ対象気筒のインバランス率ＩＢが０％からプラス方向に増加してもマイナス方向に増加しても、アクティブ対象気筒の回転変動量は大きくなる傾向にある。そして、インバランス率ＩＢが０％から離れるほど、特性線Ｌ１の傾きが急になり、インバランス率ＩＢの変化量または変化割合に対する回転変動量の変化量または変化割合は大きくなる傾向にある。
【００６６】
ここで、インバランス率ＩＢがプラスの範囲の図５の一部領域が取り出されて、図６に示される。なお、図６の線Ｌ２は図５の線Ｌ１の一部に相当する。
【００６７】
図６には、アクティブ対象気筒における２つのインバランス率ＩＢの例が線Ａ、Ｂで表されている。線Ａにおけるインバランス率ＩＢａは、ストイキ相当値である０％のインバランス率（図５の線Ｓ参照）からプラス方向にずれているが許容範囲内のものの一例である。これに対して、線Ｂにおけるインバランス率ＩＢｂは、線Ａにおけるインバランス率ＩＢａよりも燃料噴射量がさらに多い方向にずれていて、許容範囲外のものの一例である。
【００６８】
ここで、通常運転時にストイキ制御を行っているときのアクティブ対象気筒の状態が線Ａ上の状態である場合を考える。このときに、矢印Ｆ１で示すように、アクティブ対象気筒の燃料噴射量を、所定量Δｆ１、強制的に増量変更したとする。所定量Δｆ１は任意に設定されることができるが、例えば、燃料噴射量はインバランス率で約４０％相当の増量が図られる。ＩＢ＝０％の近辺（図６中右端側）では特性線Ｌ２の傾きが緩やかであることから、ストイキ制御を行っているときのアクティブ対象気筒の状態が線Ａ上の状態である場合、燃料噴射量を増量変更したときの線Ａ´上の状態における回転変動量Ｖａ´は増量前の回転変動量Ｖａとほぼ変わらない。
【００６９】
他方、ストイキ制御を行っているときのアクティブ対象気筒の状態が線Ｂ上の状態である場合を考える。このとき、アクティブ対象気筒において既に許容範囲を超えるリッチずれが生じており、そのインバランス率ＩＢｂが比較的大きなプラス側の値になっている。例えば、線Ｂでのインバランス率ＩＢｂは、インバランス率で約６０％のリッチずれに相当する。この状態から矢印Ｆ２で示すように、アクティブ対象気筒の燃料噴射量を同一所定量Δｆ１、強制的に増量したとすると、燃料噴射量を増量変更したときの線Ｂ´を含む領域では特性線Ｌ２の傾きが急であることから、増量後の回転変動量Ｖｂ´は増量前の回転変動量Ｖｂよりかなり大きく、増量前後の回転変動量の差（Ｖｂ´―Ｖｂ）は大きくなる。すなわちこのような燃料噴射量の増量により、アクティブ対象気筒の回転変動は十分大きくなる。
【００７０】
よって、アクティブ対象気筒の燃料噴射量を強制的に所定量増量変更したときの少なくとも増量後のアクティブ対象気筒の回転変動量に基づき、ばらつき異常を検出することが可能である。例えば、増量後の回転変動量の大きさ（例えば｜Ｖｂ´｜）が所定量よりも大きいときにばらつき異常があると判断することができる。さらに、複数サイクルに関してアクティブ対象気筒に関して求めた回転変動量の平均値または統計処理して求めた値を、回転変動量として、所定量と比較することで、気筒間空然比ばらつき異常があるか否かが判断されてもよい。このように、燃料噴射量の増量により、気筒間空然比ばらつき異常があるときにはそれを顕著に燃焼室での燃料つまり混合気の燃焼状態に反映させて、その結果を回転変動量として検出して、該回転変動量に基づいてばらつき異常を検出することができる。
【００７１】
なお、上記説明では、燃料噴射量を所定量分だけ強制的に増量変更させる制御（燃料噴射量増量制御）を行って、ばらつき異常を検出した。これは、インバランス気筒で燃料噴射量が多い側にずれているときに有効である。
【００７２】
逆に、インバランス気筒で燃料噴射量が少ない側にずれているときには、燃料噴射量を所定量Δｆ２分だけ強制的に減量変更させる制御（燃料噴射量減量制御）を行って、ばらつき異常を検出することが有効である。このインバランス率が負の領域で強制減量を行う場合も、上記の場合から理解できるので、その説明は省略される。ただし、燃料噴射量減量制御における減量量（大きさ）Δｆ２は燃料噴射量増量制御における増量量（大きさ）Δｆ１よりも少ないとよい。これは、リーンずれ異常気筒に対しあまりに多くの減量を行ってしまうと失火の虞があるからである。所定量Δｆ２は任意に設定されることができるが、例えば、燃料噴射量はインバランス率で約１０％相当の減量がなされ得る。なお、燃料噴射量増量制御においてばらつき異常を検出するための閾値である上記所定値と、燃料噴射量減量制御においてばらつき異常を検出するための閾値である所定値は同じであっても異なってもよい。
【００７３】
なお、燃料噴射量増量制御や燃料噴射量減量制御は、全気筒一律且つ同時に適用されることが可能であり、この場合、所定の対象気筒は全気筒である。しかし、本実施形態では、後述するように、燃料噴射量変更制御は、全気筒一律且つ同時に適用されるのではなく、一部の気筒である所定の対象気筒のみに一時に適用され、順次、燃料噴射量変更制御が適用される対象気筒は他の気筒に移行する。つまり、燃料噴射量変更制御の適用方法は、全気筒同時に行う方法の他、任意数の気筒ずつ順番に且つ交互に行う方法がある。例えば１気筒ずつ増量したり、２気筒ずつ増量したり、４気筒ずつ増量したりする方法がある。燃料噴射量を強制的に増量または減量する対象気筒の数および気筒番号は任意に設定できる。
【００７４】
以上述べたように、気筒間空燃比ばらつき異常を検出するためには、上記したように、燃料噴射量を強制的に増量変更または減量変更させる制御つまり燃料噴射量変更制御を行ってインバランス率に応じた回転変動量を大きくすることが有効である。そして、このような燃料噴射量変更制御に対して、ばらつき異常があるときにそれをより明確に回転変動量として検出できるように、燃料噴射量の増量量または減量量を大きくすることが望まれる。しかし、燃料噴射量の増量量または減量量をあまりに大きくすると、振動発生によりドライバビリティの悪化が生じたり、排気エミッションの悪化が生じたりし得る。そこで、ドライバビリティの悪化および排気エミッションの悪化を可能な限り生じさせずに、燃料噴射量変更制御の制御量を抑制することが望まれる。
【００７５】
そこで、燃料噴射量変更制御の制御量を抑制しつつ気筒間空燃比ばらつき異常を適切に検出するために、ここでは、点火時期を遅角する制御（点火遅角制御）が併せて実行される。一般に、点火時期を遅らせることで、対象気筒での発生トルクを減少させることができる。それ故、発生トルクの減少により、燃料噴射量変更制御に基づいて生じた回転変動を顕著に浮かび上がらせることが可能である。つまり、所定の対象気筒に対して点火遅角制御を燃料噴射量変更制御に併せて行うことで、気筒間空然比ばらつき異常がある気筒での出力により生じる回転変動量を大きくすることができる。加えて、点火遅角制御の適用により燃料噴射量増量制御による燃料の増量量を抑えることができるので、燃費も向上させることができる。
【００７６】
図７に、点火遅角制御を適用した場合のインバランス率ＩＢに対する回転変動量の変化を概念的に線Ｌ３で示す。なお、図７には、図６の線Ｌ２も重ねて表されている。図７の線Ｌ３から明らかなように、点火遅角制御と燃料噴射量変更制御とを組み合わせて実行することで、インバランス率ＩＢの変化量または変化割合に対する回転変動量の変化量または変化割合を高めることができる。よって、燃料噴射量変更制御における燃料の増量量または減量量を減らして抑制しつつ、点火遅角制御を行うことで、気筒間空然比ばらつき異常がある場合に大きな回転変動量を得ることが可能になる。
【００７７】
燃料噴射量変更制御と共に行われる点火遅角制御の点火遅角量は所定量に設定され得、該所定量は任意に定められることができる。例えばその所定量はクランク角で１０°と設定されることができる。そして、これに対して、燃料噴射量変更制御における燃料噴射量の増量量は例えば上記したインバランス率で約４０％相当の燃料量から減らされ得、その４分の３、２分の１などにされることができ、燃料噴射量の減量量は例えば上記したインバランス率で約１０％相当の燃料量から減らされ得、その４分の３、２分の１などにされることができる。なお、ただ単に、上記増減量での燃料噴射量変更制御に点火遅角制御を組み合わせることを本発明は許容する。
【００７８】
以下、通常時の燃料噴射制御による通常時燃料噴射量に対して燃料噴射量を増量または減量させる燃料噴射量変更制御と共に点火遅角制御を行って気筒間空然比ばらつき異常を検出する制御つまり本発明の第１実施形態における空燃比診断用制御を以下に、図８のフローチャートにしたがって説明する。
【００７９】
エンジン１が始動されると、ステップＳ８０１で対象気筒カウンタＣａがゼロにされる。対象気筒カウンタＣａは、上記したような空燃比診断用制御の実施対象となる気筒つまり（アクティブ）対象気筒の気筒番号を指し示すカウンタである。ステップＳ８０３では、対象気筒カウンタＣａが１だけ増やされる。そして、次ぐ、ステップＳ８０５で実施サイクルカウンタＣｃがゼロにされる。
【００８０】
そして、ステップＳ８０７で、空燃比診断制御を実行するための所定条件が成立しているか否かが判定される。ここでは、所定条件として、エンジン始動後の所定の（運転）状態であることという条件が定められている。所定条件は種々定められることができる。例えば、エンジン冷却水温が所定温度（例えば７０℃）以上であること、負荷が所定範囲内にあること（例えば吸入空気量が所定吸入空気量範囲（例えば１５〜５０ｇ／ｓ）にあること）、エンジン回転速度が所定エンジン回転速度域（例えば１５００ｒｐｍ〜２０００ｒｐｍ）にあることの全てを満たすことが所定条件として定められることができる。
【００８１】
このような所定条件が満たされるとき、通常は、上記したように触媒コンバータ１８、１９で排気浄化をより好適に行うために、排気空燃比がストイキに追従するように空燃比フィードバック制御が実行されている。したがって、ステップＳ８０７の判定は、排気空燃比を所定の目標空燃比に一致させるように空燃比制御を実行しているか否かの判定に相当し、特にここでは所定の目標空燃比はストイキである。しかし、所定の目標空燃比は、ストイキ以外とされることもできる。なお、本発明は、所定条件に、そのような空燃比制御が行われていることを含めることができるが、含めなくてもよい。
【００８２】
ステップＳ８０７の判定で肯定判定されると、ステップＳ８０９で実施サイクルカウンタＣｃが第１所定値未満か否かが判定される。この第１所定値はここでは１に設定されているが、任意の１以上の整数に定められることができる。なお、この第１所定値は後述される第２所定値よりも小さな数である。
【００８３】
実施サイクルカウンタＣｃが第１所定値未満であるのでステップＳ８０９で肯定判定されると、ステップＳ８１１で、燃料噴射量の変更量ｔａｕｍｉｂが算出される。ここでは燃料噴射量を増やすための所定量としての変更量ｔａｕｍｉｂが算出される。変更量ｔａｕｍｉｂの算出は、エンジン回転速度およびエンジン負荷に基づいて予め記憶装置に記憶する燃料噴射量増量用のデータを検索することで実行される。所定の演算式に基づいて所定の演算を行うことが行われてもよい。
【００８４】
次ぐステップＳ８１３では、点火時期の変更量ａｏｐｉｍｂが算出される。変更量ａｏｐｉｍｂの算出は、エンジン回転速度およびエンジン負荷に基づいて予め記憶装置に記憶する燃料噴射量増量用のデータを検索することで実行される。所定の演算式に基づいて所定の演算を行うことが行われてもよい。
【００８５】
そして、ステップＳ８１５で、基本制御用につまり通常制御用に算出された燃料噴射量つまり通常時燃料噴射量ｔａｕｂに、ステップＳ８１１で算出された変更量ｔａｕｍｉｂが加算されて、これにより燃料噴射量変更制御における燃料噴射量ｔａｕａが定められる。なお、ここでは、通常時燃料噴射量ｔａｕｂは、ストイキ相当量である。
【００８６】
次ぐ、ステップＳ８１７では、上述されたように定められる基本制御におけるつまり通常制御における点火時期つまり通常時点火時期ａｏｐｂに対して、ステップＳ８１３で算出された点火時期の変更量ａｐｏｉｍｂが適用されて、変更量ａｏｐｉｍｂ分、点火時期を遅らせた点火遅角制御における点火時期ａｏｐａが定められる。
【００８７】
そして、ステップＳ８１９で、ステップＳ８１５で算出された量ｔａｕａの燃料が対象気筒における燃料噴射弁２から噴射される。そしてこれに対して、ステップＳ８２１で、ステップＳ８１７で算出された点火時期ａｏｐｂに点火がされるように対象気筒における点火プラグ１３の作動が制御される。
【００８８】
このように燃料噴射量変更制御および点火遅角制御が行われたときの回転変動量が、ステップＳ８２３で、上記したようにクランク角センサ２２からの出力に基づいて算出される。このステップＳ８２３で算出された回転変動量は、ステップＳ８２５で、第３所定値以下か否かが判定される。第３所定値は、気筒間空然比ばらつき異常を検出するために定められていて、エンジン１では、第３所定値までの回転変動量は許容される。
【００８９】
ステップＳ８２５で回転変動量が第３所定値以下であるので肯定判定されると、ステップＳ８２７で実施サイクルカウンタＣｃに１だけ加算される。そして、ステップＳ８２９で、実施サイクルカウンタＣｃが上記第１所定値よりも大きな第２所定値であるか否かが判定される。この第２所定値はここでは２に設定されているが、任意の２以上の整数に定められることができる。なお、例えば、後述される燃料噴射量の強制的な減量変更を行う制御ステップが図８の制御から省かれる場合には、第２所定値は任意の１以上の整数に定められることができる。
【００９０】
ステップＳ８２９で、実施サイクルカウンタＣｃが第２所定値でないので否定判定されると、ステップＳ８０７に戻り、さらに診断制御が繰り返される。
【００９１】
次ぐステップＳ８０９では、実施サイクルカウンタＣｃが１であり、第１所定値未満ではないので否定判定されて、ステップＳ８３１へ進む。ステップＳ８３１では、燃料噴射量の変更量ｔａｕｍｉｂが算出される。このステップＳ８３１では、上記ステップＳ８１１とは異なり、燃料噴射量を減らすための所定量としての変更量ｔａｕｍｉｂが算出される。変更量ｔａｕｍｉｂの算出は、同様に、エンジン回転速度およびエンジン負荷に基づいて予め記憶装置に記憶する燃料噴射量減量用のデータを検索することで行われる。所定の演算式に基づいて所定の演算を行うことが行われてもよい。
【００９２】
次ぐステップＳ８３３では、点火時期の変更量ａｏｐｉｍｂが算出される。変更量ａｏｐｉｍｂの算出は、エンジン回転速度およびエンジン負荷に基づいて予め記憶装置に記憶する燃料減量用のデータを検索することで行われる。所定の演算式に基づいて所定の演算を行うことが行われてもよい。
【００９３】
そして、ステップＳ８３３を経ると上記ステップＳ８１５に進み、以下ステップＳ８１５〜Ｓ８２３の上記演算および制御が実行される。ステップＳ８２３で算出された回転変動量は、上記したように、ステップＳ８２５で第３所定値以下か否かが判定される。なお、ステップＳ８１１を経て燃料噴射量が増やされる場合と、ステップＳ８３１を経て燃料噴射量が減らされる場合とで、第３所定値が変えられてもよい。ステップＳ８２５で、回転変動量が第３所定値以下であると判定されると、ステップＳ８２７で実施サイクルカウンタＣｃは１だけ加算されて２になる。そして、ステップＳ８２９で、実施サイクルカウンタＣｃが上記第２所定値であるか否かが判定される。この第２所定値はここでは２に設定されているので、ステップＳ８２９で肯定判定される。
【００９４】
ステップＳ８２９で肯定判定されると、次ぐ、ステップＳ８３５で、対象気筒カウンタＣａが気筒数であるか否かが判定される。ステップＳ８３５の判定は、上記した、ステップＳ８０７〜Ｓ８３３の演算および制御が全ての気筒の各々に対して実行されたか否かを調べることに相当する。なお、ここでは、気筒数が８である。
【００９５】
ステップＳ８３５で、対象気筒カウンタＣａが気筒数でないとして否定判定されると、ステップＳ８０３に戻り、対象気筒カウンタＣａに１が加算される。そして次ぐステップＳ８０５で実施サイクルカウンタＣｃがゼロにされて、ステップＳ８０７に進む。
【００９６】
こうして全ての気筒の各々に対してステップＳ８０７〜Ｓ８３３の演算および制御つまり診断制御が繰り返されて、ステップＳ８３５で対象気筒カウンタＣａが気筒数であるとして肯定判定されると、当該診断制御が終了される。なお、ここでは、エンジン１の始動後、たった一度のみ、図８の診断制御が実行される。しかし、適宜の時期に、この診断制御が実行されてもよい。例えば、エンジン１の作動時間またはエンジン１を搭載した車両の走行距離が所定値になったときに、診断制御が実行されることができる。
【００９７】
他方、ステップＳ８２５で、回転変動量が第３所定値を越えて否定判定されると、ステップＳ８３７で運転者に気筒間空然比ばらつき異常が検出されたことを知らせるべく、例えば運転席のフロントパネルに備えられた警告ランプが点灯される。これにより図８の診断制御は終了される。
【００９８】
なお、このように、本実施形態では、任意の１つの気筒に上記ばらつき異常が検出された場合に、図８の診断制御は終了されるが、気筒間空然比ばらつき異常がある気筒を特定するべく、全ての気筒に対して上記診断制御が必ず行われるように図８のフローが構築されることも可能である。
【００９９】
次に、本発明に係る第２実施形態を説明する。第２実施形態が適用されたエンジンの構成は、概ね第１実施形態が適用されたエンジン１の構成と同じであるので、以下では、第２実施形態が適用されたエンジンの構成要素の説明は省略される。第２実施形態が適用されたエンジンにおいても、上記エンジン１と同様に、燃料噴射量変更制御と点火遅角制御とを組み合わせた気筒間空然比ばらつき異常検出用の制御つまり診断制御が実行される。しかし、本第２実施形態では、診断用に点火遅角制御が強制的に実行されるのではなく、点火遅角制御が実行されているときに、燃料噴射量変更制御が強制的に実行される。これにより気筒間空然比ばらつき異常の有無が判断され得る。
【０１００】
以下に、図９のフローチャートにしたがって本発明の第２実施形態における空燃比診断用制御を説明する。なお、図９のステップＳ９０１〜Ｓ９０５、Ｓ９０９、Ｓ９１１〜Ｓ９２９は、それぞれ、図８の上記ステップＳ８０１〜Ｓ８０５、Ｓ８０９、Ｓ８１１、Ｓ８１５、Ｓ８１９、Ｓ８２３〜Ｓ８３１、Ｓ８３５、Ｓ８３７に対応するので、これらの説明は実質的に省略される。
【０１０１】
ステップＳ９０７では、ステップＳ８０７と同様に、空燃比診断制御を実行するための所定条件が成立しているか否かが判定される。エンジン始動後の所定の状態であることという条件が所定条件として定められている。例えば、点火時期を所定量遅角させる点火遅角制御が実行されていることという条件が所定条件として定められることができ、または所定条件に含まれることができる。例えば、上記ＫＣＳによる基準点火時期からの点火遅角補正量が１０°を越えているとき、点火時期を所定量遅角させる点火遅角制御が実行されていることという条件が満たされていると判断されることができる。なお、ノッキングに関する以外の他の種々の制御因子に基づいて、点火遅角制御が行われているときにも、そのような条件は満たされていると判断され得る。ただし、ステップＳ９０７での所定条件には、ステップＳ８０７の所定条件の全部または一部が含まれることができる。
【０１０２】
ステップＳ９０７で肯定判定されると、ステップＳ９０９以下で、燃料噴射量変更制御が実行される。なお、ステップＳ９１５は、ステップＳ９０７で実行が確認された点火遅角制御と一緒に、燃料噴射量変更制御を実行することを意味する。
【０１０３】
以上、本発明を上記実施形態に基づいて説明したが、本発明は上記実施形態に限定されない。本発明は、上記複数の実施形態およびそれらの変形例の矛盾しない範囲での任意の種々の組み合わせ、および、上記複数の実施形態およびそれらの変形例の一部のみを含む実施形態を許容する。本発明は、種々の形式の２つ以上の気筒を有する多気筒エンジンに適用され得、ポート噴射形式のエンジンのみならず、筒内噴射形式のエンジン、ガスを燃料として用いるエンジンなどにも適用され得る。また、本発明が適用されるエンジンの気筒数、気筒配列形式などは任意である。
【０１０４】
また、上記実施形態では、出力変動を判断または評価するために回転変動量を用いた。しかし、他の値または量が用いられることができる。例えば、各気筒に筒内圧センサを設けて、該筒内圧センサからの出力に基づいて出力変動が判断されてもよい。または、内燃機関の各気筒の燃焼室内で混合気の燃焼に伴って発生するイオン電流を検出するための手段（センサ）を設けて、検出されたイオン出力に基づいて出力変動が判断されてもよい。
【０１０５】
本発明の実施形態は前述の実施形態のみに限らず、特許請求の範囲によって規定される本発明の思想に包含されるあらゆる変形例や応用例、均等物が本発明に含まれる。従って本発明は、限定的に解釈されるべきではなく、本発明の思想の範囲内に帰属する他の任意の技術にも適用することが可能である。
【符号の説明】
【０１０６】
１  内燃機関（エンジン）
２  インジェクタ
１１  エアフローメータ
１２  スロットルバルブ
１８  上流触媒コンバータ
２０  触媒前センサ
２２  クランク角センサ
２３  アクセル開度センサ
２５  ノックセンサ
１００  電子制御ユニット（ＥＣＵ）
【図１】
0005263327.tif 000002
【図２】
0005263327.tif 000003
【図３】
0005263327.tif 000004
【図４】
0005263327.tif 000005
【図５】
0005263327.tif 000006
【図６】
0005263327.tif 000007
【図７】
0005263327.tif 000008
【図８】
0005263327.tif 000009
【図９】
0005263327.tif 000010