(57)【要約】【課題】安定したアイドル回転を維持しながら空燃比を無理なくリーン化させることができるようにする。【解決手段】エンジン始動後のアイドル暖機運転において、エンジン始動直後からアイドル運転へ移行する際のエンジン運転状態の変動に基づいて空燃比をリーン化することが可能か否かを調べ（Ｓ１７，Ｓ１８）、リーン化可能と判定した場合、空燃比補正係数λに設定値αを加算した値で更新して（Ｓ１９）、空燃比をリーン補正する。次いでリーン補正後のエンジン運転状態の変動に基づいて空燃比がリーン限界に達している否かを判定し、リーン限界に達していない場合は空燃比を更にリーン補正し、又リーン限界に達した場合は空燃比を初期値に戻す（Ｓ２２）。【選択図】図４
2010007523.tif 000002
【特許請求の範囲】
【請求項１】
空燃比を制御するエンジンの空燃比制御装置において、
エンジン始動後からアイドル運転へ移行する際のエンジン運転状態の変動に基づいて前記エンジンの燃焼状態が安定しているか否かを判定し、該エンジンの燃焼状態が安定していると判定した場合、空燃比をリーン化する始動後リーン化手段と、
前記始動後リーン化手段で前記空燃比をリーン化した後の前記エンジン運転状態の変動を検出して前記空燃比を補正する空燃比補正手段と
を備えることを特徴とするエンジンの空燃比制御装置。
【請求項２】
前記空燃比補正手段は、前記始動後リーン化手段でリーン化した後の前記エンジン運転状態の変動を検出して、前記空燃比がリーン限界に達していないと判定した場合、前記空燃比を更にリーン化する
ことを特徴とする請求項１記載のエンジンの空燃比制御装置。
【請求項３】
前記空燃比補正手段は、前記始動後リーン化手段でリーン化した後の前記エンジン運転状態の変動を検出して、前記空燃比がリーン限界に達していると判定した場合、前記空燃比をリッチ化する
ことを特徴とする請求項１又は２記載のエンジンの空燃比制御装置。
【請求項４】
前記始動後リーン化手段では、エンジン始動後からアイドル運転へ移行する際に、エンジンのクランキングを開始したときから予め設定した始動後判定回転数に達するまでの到達時間と前記エンジンのクランキング後の最大吹き上がり回転数との少なくとも一方を検出し、該到達時間が予め設定した所定時間より短く、或いは該最大吹き上がり回転数が予め設定した所定回転数を超えている場合、前記エンジンの燃焼状態が安定していると判定する
ことを特徴とする請求項１〜３の何れか１項に記載のエンジンの空燃比制御装置。
【請求項５】
前記エンジン運転状態の変動は、少なくともエンジン回転数の回転変動に基づいて検出し、該回転変動が予め設定した第１の許容変動幅内の場合は、エンジンの燃焼状態が安定していると判定する
ことを特徴とする請求項１〜３の何れか１項に記載のエンジンの空燃比制御装置。
【請求項６】
前記エンジン運転状態の変動は、少なくともエンジン回転数の回転変動と、目標アイドル回転数とエンジン回転数との差分から算出したアイドル回転数偏差とに基づいて検出し、前記回転変動が予め設定した第１の許容変動幅内で、且つ前記アイドル回転数偏差が予め設定した許容回転数偏差内の場合は、エンジンの燃焼状態が安定していると判定する
ことを特徴とする請求項１〜３の何れか１項に記載のエンジンの空燃比制御装置。
【請求項７】
前記空燃比補正手段は、前記エンジンの燃焼状態が安定していないと判定した場合、空燃比を初期値に戻す
ことを特徴とする請求項１〜６の何れか１項に記載のエンジンの空燃比制御装置。
【請求項８】
前記空燃比補正手段で検出する前記エンジン運転状態の変動は、少なくともエンジン回転数の回転変動に基づいて検出し、該回転変動が予め設定した、前記第１の許容変動幅よりも狭い第２の許容変動幅内の場合は、エンジンの燃焼状態が安定していると判定する
ことを特徴とする請求項１〜７の何れか１項に記載のエンジンの空燃比制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エンジンの燃焼状態が安定しているときは空燃比をリーン制御して排気エミッションの低減、及び燃費向上を図るエンジンの空燃比制御装置に関する。
【背景技術】
【０００２】
周知のように、始動時等の触媒は充分に活性していないため、始動直後の空燃比はリーンにすることが望ましい。空燃比をリーンにすることで、排気エミッション（特にＨＣ）の低減が図れるばかりでなく、燃費向上を実現することができる。
【０００３】
しかし、例えば始動直後のアイドル運転時の空燃比をリーン化すると、多気筒エンジンでは気筒毎の機差（機械的なばらつき）や各気筒に配設されているインジェクタの個体差等の影響が顕在化して、アイドル回転が不安定化してくる。
【０００４】
従って、従来の始動直後等のアイドル運転時の空燃比制御では、エンジン回転数を安定化させるために、当該空燃比をリーンバーン時における燃焼安定限界よりもややリッチ側に設定した制御が行われている。例えば特許文献１（特開平９−５３４９２号公報）には、始動後のアイドル時における排気エミッションを改善するために、始動直後に燃料性状を判別し、判別した燃料性状に応じた補正量に基づき空燃比の初期値を安定限界に達するまでリーン側に補正することで、始動直後から排気エミッションの低減を図るようにした技術が開示されている。
【特許文献１】特開平９−５３４９２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述した文献に開示されている技術では、燃料性状に応じて空燃比を設定することで、始動直後の排気エミッションの低減を図るようにしているが、単純に燃料性状のみに基づいて空燃比をリーン化させた場合、上述したような、気筒毎の機差やインジェクタの個体差等の影響は考慮されていないため、アイドル時の空燃比をリーン化するには限界がある。
【０００６】
又、アイドル運転の回転変動は、エンジンの機差やインジェクタの個体差のみならず、バッテリの充電状態や、エンジンを駆動源とするオルタネータを代表とする補器類等の外乱によっても影響を受け易く、従って、アイドル時における空燃比のリーン化は困難である。
【０００７】
しかし、触媒が充分に活性していない暖機運転時において、エンジン回転を安定させた状態で、空燃比を更にリーン化することができれば、ＨＣの排出量が抑制され、排気エミッションを大幅に低減させることができる。
【０００８】
本発明は、上記事情に鑑み、安定したアイドル回転を維持しながら空燃比をリーン化させることのできるエンジンの空燃比制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するため本発明は、空燃比を制御するエンジンの空燃比制御装置において、エンジン始動後からアイドル運転へ移行する際のエンジン運転状態の変動に基づいて前記エンジンの燃焼状態が安定しているか否かを判定し、該エンジンの燃焼状態が安定していると判定した場合、空燃比をリーン化する始動後リーン化手段と、前記始動後リーン化手段で前記空燃比をリーン化した後の前記エンジン運転状態の変動を検出して前記空燃比を補正する空燃比補正手段とを備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、エンジン運転状態の変動に基づいてエンジンの燃焼状態が安定しているか否かを判定し、エンジンの燃焼状態が安定していると判定した場合、空燃比をリーン化し、空燃比をリーン化した後のエンジン運転状態の変動から、エンジンの燃焼状態が安定しているか否かを判定し、エンジンの燃焼状態が安定していると判定した場合は空燃比を更にリーン化するようにしたので、安定したアイドル回転を維持しながら空燃比を無理なくリーン化させることができる。
【発明を実施するための最良の形態】
【００１１】
以下、図面に基づいて本発明の一実施形態を説明する。図１にエンジンの全体構成図、図２に電子制御装置の回路構成図を示す。
【００１２】
図１の符号１はエンジンで、本実施形態においては水平対向エンジンを示す。このエンジン１のシリンダブロック１ａの左右両バンクにシリンダヘッド２がそれぞれ設けられ、各シリンダヘッド２に吸気ポート２ａと排気ポート２ｂとが形成されている。
【００１３】
このシリンダヘッド２の各吸気ポート２ａに吸気マニホルド３が連通され、この吸気マニホルド３の上流側がエアチャンバ４に集合されている。更に、このエアチャンバ４の上流にスロットルチャンバ５が連通され、このスロットルチャンバ５にスロットル弁５ａが介装されている。このスロットル弁５ａはスロットルアクチュエータ２６に連設されて、弁開度が電子的に制御される電子制御スロットルを構成している。
【００１４】
更に、スロットルチャンバ５の上流側に吸気管６を介してエアクリーナ７が取り付けられ、エアクリーナ７がエアインテークチャンバ８に連通されている。又、吸気マニホルド３の各気筒の吸気ポート２ａの直上流側にインジェクタ１１が配設されている。更に、シリンダヘッド２の各気筒毎に、先端の放電電極を燃焼室に露呈する点火プラグ１７が取り付けられ、この点火プラグ１７にイグナイタ１８が接続されている。
【００１５】
一方、シリンダヘッド２の各排気ポート２ｂに排気マニホルド２０が連通され、この排気マニホルド２０の集合部に排気管２１が連通され、この排気管２１の下流端がマフラ２３に連通されている。又、排気管２１の上流側と下流側とに触媒２２Ａ，２２Ｂが各々介装されている。
【００１６】
又、吸気管６のエアクリーナ７の直下流に吸入空気量検出手段としての吸入空気量センサ２４が臨まされ、スロットル弁５ａに、このスロットル弁５ａの開度を検出するスロットル開度センサ２５が連設されている。更に、エンジン１のクランク軸１ｂに軸着するクランクロータ１ｃの外周に、クランクロータ１ｃ（クランク軸１ｂ）の回転からクランク角を検出するクランク角センサ３２が対設されている。尚、後述するように、このクランク角センサ３２で検出したクランク角に基づいてエンジン回転数Ｎｅが算出される。
【００１７】
又、クランク軸１ｂに対して１／２回転するカム軸３３にカムロータ３４が軸着されており、このカムロータ３４の外周に、カムロータ３４の回転から点火対象気筒を判別する気筒判別センサ３５が対設されている。更に、排気マニホルド２０の触媒２２Ａの直上流に、排気ガス中の酸素濃度から空燃比を検出する空燃比センサ２７が臨まされている。尚、シリンダブロック１ａ内に形成されている冷却水通路（図示せず）には、冷却水温を検出する水温センサ２９が臨まされている。
【００１８】
又、図２の符号４０は、エンジン１の運転状態を制御する電子制御装置（ＥＣＵ）で、ＣＰＵ、ＲＯＭ、ＲＡＭ、バックアップＲＡＭ等を備えるマイクロコンピュータ、及びその周辺機器で構成されている。このＥＣＵ４０の入力側に、上述した各センサ２４，２５，２８，３９，３２，３５、及び車速を検出する車速センサ３６等が接続されている。又、ＥＣＵ４０の出力側に、インジェクタ１１、スロットルアクチュエータ２６、イグナイタ１８等が接続されている。
【００１９】
ＥＣＵ４０では、ＣＰＵにおいてＲＯＭに記憶されている制御プログラムに従い、入力されるセンサ類からの検出信号に基づき、スロットル開度量、燃料噴射量、点火時期等を演算し、スロットル開度制御、燃料噴射制御、点火時期制御等のエンジン制御を行う。
【００２０】
上述したＥＣＵ４０にて実行される燃料噴射制御は、具体的には、図３〜図７に示すフローチャートに従って処理される。
【００２１】
イグニッションスイッチ（図示せず）をＯＮすると、ＥＣＵ４０が起動する。その後、スタータスイッチをＯＮして、クランキングが開始されると、ＥＣＵ４０にはクランク角センサ３２からのクランクパルス、及び吸入空気量センサ２４からの吸入空気量信号が入力がされ、この各信号に基づいて、エンジン回転数Ｎｅ、及び吸入空気量Ｑが算出される。
【００２２】
又、イグニッションスイッチをＯＮすると、図３に示す燃料噴射制御ルーチンが設定クランク角周期（例えば４気筒であれば、１８０[CA-deg(クランク角度)]）毎に実行され、先ず、ステップＳ１でエンジン回転数Ｎｅを読込み、続くステップＳ２で吸入空気量Ｑを読込む。
【００２３】
その後、ステップＳ３で吸入空気量Ｑとエンジン回転数Ｎｅとに基づき、下式から基本燃料噴射量Ｔｐを算出する。  
Ｔｐ←Ｋ・Ｑ／Ｎｅ
但し、Ｋはインジェクタ１１の流量特性補正定数であり、予め機種毎に設定されている。又、吸入空気量センサ２４とクランク角センサ３２の何れかから信号が出力されていない場合は、Ｔｐ←０となる。従って、基本燃料噴射量Ｔｐはエンジンがクランキングされた後に算出されることになる。
【００２４】
その後、空燃比補正係数λを読込み、ステップＳ５で基本燃料噴射量Ｔｐを空燃比補正係数λの逆数（１／λ）で補正して、燃料噴射量Ｔｉを算出し（Ｔｉ←Ｔｐ・１／λ）、ステップＳ６へ進み、燃料噴射量Ｔｉを、燃料噴射用タイマへ出力して、ルーチンを抜ける。燃料噴射用タイマでは入力された燃料噴射量に相当する燃料噴射パルス幅（パルス時間）をタイマセットし、燃料噴射対象気筒のインジェクタ１１に対して所定タイミングで出力する。
【００２５】
尚、上述した燃料噴射量Ｔｉを算出するに際し、詳しくは、この燃料噴射量Ｔｉが、空燃比センサ２７で検出した排気ガスの空燃比と目標空燃比との比較値に応じて設定した空燃比フィードバック補正係数で補正されるが、この技術は周知であるため説明を省略する。
【００２６】
ステップＳ４で読込まれる空燃比補正係数λは、図４に示す空燃比補正係数演算ルーチンにおいて設定される。この空燃比補正係数λは基本空燃比を１とした場合の補正係数であり、本実施形態では基本空燃比を理論空燃比としている。従って、１／λ＞１でリッチ空燃比、１／λ＜１でリーン空燃比となる。
【００２７】
このルーチンは、イグニッションスイッチをＯＮした後、設定クランク角周期（例えば４気筒であれば、１８０[CA-deg]）毎に実行され、先ず、ステップＳ１１で始動後か否かが判定される。始動後か否かの判定は、例えばスタータをＯＮ後のエンジン回転数Ｎｅに基づいて行われ、イグニッションスイッチをＯＮした後のエンジン回転数Ｎｅが予め設定した始動後判定回転数（例えば１２００〜１８００[rpm]）を超えた場合、始動後（始動完了）と判定する。或いはスタータスイッチがＯＮされた後にＯＦＦされたときを始動後（始動完了）と判定しても良い。
【００２８】
そして、始動後と判定された場合はステップＳ１２へ進み、始動前と判定された場合はステップＳ１４へジャンプする。ステップＳ１２へ進むと、アイドル運転か否かを調べる。アイドル運転か否かは、例えばアクセル開度センサ２８で検出したアクセル開度と、車速センサ３６で検出した車速とに基づき判定し、アクセル開度センサ２８でアクセル未踏を検出し、且つ車速センサ３６で車速０を検出した場合、アイドル運転と判定する。そして、アイドル運転と判定された場合、ステップＳ１３へ進み、又、非アイドル運転と判定された場合、ステップＳ１４へジャンプする。尚、このステップＳ１２での処理が、本発明のアイドル運転判定手段に相当する。
【００２９】
ステップＳ１３へ進むと、暖機中か否かが判定される。暖機中か否かは、例えば水温センサ２９で検出した冷却水温に基づいて判定し、この冷却水温が暖機完了温度（例えば６５［℃］）に未達の場合、暖機中と判定し、到達した場合暖機完了と判定する。そして、暖機完了と判定された場合はステップＳ１４へ進み、暖機中と判定された場合はステップＳ１６へ進む。
【００３０】
ステップＳ１１〜Ｓ１３の何れかからステップＳ１４へ進むと、エンジン回転数Ｎｅとエンジン負荷Ｌｏとに基づき、マップ検索等により空燃比補正係数λを設定し、ステップＳ１５で始動後初回判定フラグＦｓをクリアして（Ｆｓ←０）、ルーチンを抜ける。尚、エンジン負荷Ｌｏとして、本実施形態では基本燃料噴射量Ｔｐを代用している。又、空燃比補正係数λは基本空燃比を補正するものであり、エンジン回転数Ｎｅとエンジン負荷Ｌｏとが共に低い場合はリーン空燃比（Ａ／Ｆ＝１７〜２０）に設定され、高回転高負荷方向へ移行するに従い、次第に空燃比がリッチ側に設定され、高回転領域或いは高負荷運転領域で理論空燃比（Ａ／Ｆ＝１４〜１５）に設定される。
【００３１】
一方、ステップＳ１６へ進むと、始動後初回判定フラグＦｓの値を参照し、Ｆｓ＝０の始動後初回リーン化判定処理が行われていない場合は、ステップＳ１７へ進み、Ｆｓ＝１の始動後初回リーン化判定処理が行われた場合は、ステップＳ２１へ分岐する。この始動後初回判定フラグＦｓは、後述するステップＳ２４でセットされ、上述したステップＳ１５でクリアされる。
【００３２】
そして、Ｆｓ＝０の始動後初回リーン化判定処理が行われてないと判定されてステップＳ１７へ進むと、始動後初回リーン化判定処理を実行し、その後、ステップＳ１８へ進む。このリーン化判定処理は、図５に示すリーン化判定処理サブルーチンに従って、処理される。
【００３３】
図５に示すリーン化判定処理サブルーチンでは、先ず、ステップＳ３１〜Ｓ３４で、エンジンの各気筒の機差やインジェクタの個体差、及び燃料の重質度のバラツキによって生じる、当該エンジンの気筒間のエンジン運転状態の変動を調べる。
【００３４】
すなわち、先ず、ステップＳ３１で、スタータスイッチをＯＮした後から、エンジン回転数Ｎｅが始動後判定回転数に達するまでの時間（始動後到達時間）Ｔｍｓを読込み、ステップＳ３２で始動後到達時間Ｔｍｓがリーン化判定時間Ｔｍｓｏ（例えば１[sec}）よりも短いか否かを調べる。そして、Ｔｍｓ≦Ｔｍｓｏの短い場合は、エンジンの燃焼状態が安定している（エンジンに耐力がある）と判定し、ステップＳ３６へジャンプする。又、Ｔｍｓ＞Ｔｍｓｏの長い場合は、ステップＳ３３へ進み、最大吹き上がり回転数Ｎｅｍを読込む。この最大吹き上がり回転数Ｎｅｍは、クランキング後の吹き上がり回転数の最大値である。
【００３５】
その後、ステップＳ３４へ進み、最大吹き上がり回転数Ｎｅｍと予め設定したリーン化判定吹き上がり回転数Ｎｅｍｏ（例えば1800〜2000[rpm]）とを比較し、Ｎｅｍ＜Ｎｅｍｏのときはリーン限界に達していると判定し、ステップＳ３５へ進み、リーン化判定フラグＦL1をクリアして（ＦL1←０）、図４のステップＳ１８へ進む。又、Ｎｅｍ≧Ｎｅｍｏのときはエンジンの燃焼状態が安定している（エンジンに耐力がある）と判定し、ステップＳ３６へ進む。
【００３６】
そして、ステップＳ３２、或いはステップＳ３４からステップＳ３６へ進むと、リーン化判定フラグＦL1をセットして（ＦL1←１）、図４のステップＳ１８へ進む。
【００３７】
このように、本実施形態では、始動後暖機運転中の空燃比制御において、空燃比を一律にリーン化することなく、クランキング後のエンジン回転数Ｎｅの立ち上がり状態から、エンジンの機差やインジェクタの個体差、及び燃料の重質度のバラツキによって生じる、気筒間のエンジン運転状態の変動を調べ、エンジンの燃焼状態が安定している場合は空燃比補正係数λをリーン補正し、又燃焼状態がリーン限界に有る場合は、空燃比補正係数λを一律に初期値λｏで設定するようにしたので、エンジンの機差やインジェクタの個体差、及び燃料の重質度にバラツキが有っても、空燃比を無理なくリーン化させることができ、エンジン回転数の安定したアイドル運転をえることができる。
【００３８】
又、エンジンの耐力（エンジンの燃焼状態）を判定するパラメータとして、通常、装備されているクランク角センサ３２で検出したクランクパルスから算出したエンジン回転数Ｎｅを用いているため、新たなセンサ類を増設する必要がなく経済的であり、しかも高い汎用性を得ることができる。
【００３９】
その後、図４のステップＳ１８へ進むと、リーン化判定フラグＦL1の値を参照し、リーン化可能か否かを調べる。そして、ＦL1＝１のエンジンの燃焼状態が安定しており、リーン化が可能と判定されている場合は、ステップＳ１９へ進み、空燃比補正係数λを、これに設定値α(例えば0.02)を加算した値で更新し（λ←λ＋α）、ステップＳ２４へ進む。尚、ステップＳ１７〜Ｓ１９での処理が、本発明の始動後リーン化手段に相当する。
【００４０】
又、ＦL1＝０のエンジンの燃焼状態が安定しておらずリーン限界にあると判定されている場合は、ステップＳ２０へ分岐し、空燃比補正係数λを初期値λｏで設定して（λ←λｏ）、ステップＳ２４へ進む。この初期値λｏは、予め設計などから求めた平均的なリーン限界に近い値（例えば1.1）に設定されている。
【００４１】
そして、ステップＳ２４へ進むと、始動後初回判定フラグＦｓをセットして（Ｆｓ←１）、ルーチンを抜ける。従って、始動後の暖機運転においては、最初にステップＳ１９或いはステップＳ２０で設定した空燃比補正係数λにて基本燃料噴射量Ｔｐを補正することで燃料噴射量Ｔｉが設定される。
【００４２】
このように、本実施形態では、クランキングからのエンジンの立ち上がり時間Ｔｍｓと最大吹き上がり回転数Ｎｅｍとを計測してリーン化が可能か否かを判定し、リーン化が可能な場合は、ステップＳ１９で空燃比補正係数λが設定値α分だけ増加され、この増加された空燃比補正係数λの逆数（１／λ）が、燃料噴射制御ルーチンのステップＳ５において基本燃料噴射量Ｔｐに乗算されるため、燃料噴射量Ｔｉが減量され、空燃比がリーン化される。一方、ＦL1＝０のリーン限界に達していると判定された場合は、ステップＳ２０で空燃比補正係数λが初期値λｏで一律に初期化され、この初期化された空燃比補正係数λ（＝λｏ）の逆数が基本燃料噴射量Ｔｐに乗算されるため、燃料噴射量Ｔｉは初期値λｏの空燃比（例えば1.1）に対応する値に一律に増量される。その結果、エンジンの機差やインジェクタの個体差の影響を受けることのない適正な空燃比が設定されると共に、エンジンの燃焼状態が安定している場合は更に空燃比をリーン化することができるため、暖機運転時において触媒２２Ａ，２２Ｂが活性するまでのＨＣを代表とする排気エミッションの低減を図ることができる。
【００４３】
一方、ステップＳ１６でＦｓ＝１の始動後初回リーン化判定処理が終了していると判定されてステップＳ２１へ進むと、リーン限界判定フラグＦL2の値を参照する。このリーン限界判定フラグＦL2は、後述するリーン限界判定処理サブルーチンにおいて、空燃比補正係数λがリーン側へ更新された際にクリア（ＦL2←０）され、空燃比補正係数λがリッチ側へ更新された際にセット（ＦL2←１）される。尚、この空燃比補正係数λの初期値は０である。
【００４４】
そして、ＦL2＝０の始動後初回リーン化判定処理が終了した後の最初のルーチン、或いは空燃比補正係数λが、後述するリーン限界判定処理サブルーチンにおいてリーン補正されたと判定した場合は、ステップＳ２２へ進み、リーン限界判定処理を実行する。又、ＦL2＝１の空燃比補正係数λがリーン限界判定処理サブルーチンにおいてリッチ側へ補正されたと判定された場合、ステップＳ２３へ進み、リッチ補正後判定処理を実行する。
【００４５】
ステップＳ２２で行われるリーン限界判定処理は、図６に示すリーン限界判定処理サブルーチンに従って実行される。このサブルーチンでは、エンジンの出力を検出する各種パラメータを読込み、その検出値からエンジンの燃焼状態が安定しているか否かを判定し、エンジンの燃焼状態が安定している場合は空燃比を更にリーン補正し、エンジンの燃焼状態が安定していない場合は、空燃比をリッチ側へ補正するものである。尚、このサブルーチンでの処理が、本発明のリーン補正判定手段に相当する。
【００４６】
このサブルーチンは、ステップＳ１９、或いはステップＳ２０で設定した空燃比補正係数λの逆数（１／λ）で基本燃料噴射量Ｔｐを補正して得られた燃料噴射量Ｔｉがインジェクタ１１から噴射されて燃焼された後のエンジン運転状態の変動を検出し、エンジンの燃焼状態が安定している場合は空燃比を更にリーン補正するものである。尚、エンジン運転状態の変動は、最小限、エンジン回転数Ｎｅの変化を調べることで判別できるが、点火時期ＳＰ、吸入空気量Ｑの変化を検出することで、空燃比をより高い精度で制御することができる。
【００４７】
すなわち、先ず、ステップＳ４１で、今回算出したエンジン回転数Ｎｅと前回の演算時に算出したエンジン回転数Ｎｅ(n-1)との差分の絶対値から、エンジン回転数Ｎｅの回転変動を示すパラメータである差回転ΔＮｅを算出する（ΔＮｅ←｜Ｎｅ−Ｎｅ(n-1)｜）。そして、ステップＳ４２へ進み、差回転ΔＮｅと第１の許容変動幅である許容差回転ΔＮｅｏ（例えば５０[rpm]）とを比較する。そして、差回転ΔＮｅが許容差回転ΔＮｅｏ以下の場合は（ΔＮｅ≦ΔＮｅｏ）、ステップＳ４３へ進む。又、差回転ΔＮｅが許容差回転ΔＮｅｏを超過している場合（ΔＮｅ＞ΔＮｅｏ）、回転変動が大きいためリーン限界に有ると判定し、ステップＳ５２へジャンプする。
【００４８】
又、ステップＳ４３へ進むと、暖機時目標アイドル回転数ＮIDLとエンジン回転数Ｎｅとの差分からアイドル回転数偏差ＩＤＬσを算出する（ＩＤＬσ←｜ＮIDL−Ｎｅ｜）。尚、暖機時目標アイドル回転数ＮIDLは水温センサ２９で検出した冷却水温に基づいて設定される可変値である。そして、ステップＳ４４でアイドル回転数偏差ＩＤＬσが第１の許容回転数偏差ＩＤＬσｏ（例えば２０[rpm]）内に収まっているか否かを調べ、第１の許容回転数偏差ＩＤＬσｏ以内の場合（ＩＤＬσ≦ＩＤＬσｏ）、ステップＳ４５へ進む。一方、第１の許容回転数偏差ＩＤＬσｏを超過している場合（ＩＤＬσ＞ＩＤＬσｏ）、リーン限界にあると判定し、ステップＳ５２へジャンプする。
【００４９】
又、ステップＳ４５へ進むと、ＥＣＵ２０のＲＯＭに格納されているアイドル時基本点火時期ＳＰIDLと、このアイドル時基本点火時期ＳＰIDLをアイドル安定化のためにエンジン回転数Ｎｅ等に基づいて補正して設定した最終的に出力される点火時期ＳＰとを読込み、その差分の絶対値から点火時期偏差ＳＰσを算出する（ＳＰσ←｜ＳＰIDL−ＳＰ｜）。
【００５０】
そして、ステップＳ４６で点火時期偏差ＳＰσと許容点火時期偏差ＳＰσｏとを比較し、点火時期偏差ＳＰσが許容点火時期偏差ＳＰσｏ以内の場合（ＳＰσ≦ＳＰσｏ）、ステップＳ４７へ進む。一方、点火時期偏差ＳＰσが許容点火時期偏差ＳＰσｏを超過している場合（ＳＰσ＞ＳＰσｏ）、リーン限界にあると判定し、ステップＳ５２へジャンプする。
【００５１】
更に、ステップＳ４７へ進むと、エンジン運転状態を調べるパラメータである目標アイドル回転数ＮIDLとエンジン負荷Ｌｏとに基づいて設定した要求吸入空気量Ｑｙと吸入空気量センサ２４で検出した吸入空気量Ｑとの差分（空気量差分）ΔＱを算出し（ΔＱ←｜Ｑｙ−Ｑ｜）、ステップＳ４８で、空気量差分ΔＱと許容空気量差分ΔＱｏとを比較する。そして、空気量差分ΔＱが許容空気量差分ΔＱｏ以内の場合（ΔＱ≦ΔＱｏ）、ステップＳ４９へ進む、一方、空気量差分ΔＱが許容空気量差分ΔＱｏを超過している場合（ΔＱ＞ΔＱｏ）、リーン限界にあると判定し、ステップＳ５２へジャンプする。
【００５２】
又、ステップＳ４９へ進むと、エンジン回転数Ｎｅと予め設定されている落ち込み判定用限界回転数ＮL（例えば８００[rpm]）とを比較して、エンジン回転数の落ち込みを調べる。そして、エンジン回転数Ｎｅが落ち込み判定用限界回転数ＮL以上の場合は、エンジンの燃焼状態が安定しており、更にリーン化が可能と判定し、ステップＳ５０へ進み、空燃比補正係数λを更にリーン補正すべく、この空燃比補正係数λに設定値αを加算した値で更新し（λ←λ＋α）、ステップＳ５１へ進み、リーン限界判定フラグＦL2をクリアして（ＦL2←０）、ルーチンを抜ける。
【００５３】
一方、ステップＳ４２，Ｓ４４，Ｓ４６，Ｓ４８，Ｓ４９の何れかでリーン限界と判定されてステップＳ５２へ進むと、空燃比補正係数λをリッチ側へ補正すべく、この空燃比補正係数λから設定値αを減算した値で更新する（λ←λ−α）。この場合、リーン限界と判定された場合、空燃比補正係数λを初期値（λ＝1.1）に戻すことも考えられるが、空燃比を設定値αによりリッチ側へ補正し、補正後のエンジン運転状態の変動を調べることで、当該エンジンの気筒間のエンジン運転状態の変動に応じた空燃比を設定することが可能となり、アイドル断機運転時における空燃比制御をよりきめ細かく行うことができる。
【００５４】
その後、ステップＳ５３へ進み、空燃比補正係数λが初期値λｏ以下か否かを調べる。そして、空燃比補正係数λが初期値λｏ以下のときは、ステップＳ５４へ進み、空燃比補正係数λを初期値λｏで固定して（λ←λｏ）、ステップＳ５８へ進む。又、空燃比補正係数λが初期値λｏよりも高い場合は（λ＞λｏ）、そのままステップＳ５５へ進む。そして、ステップＳ５５でリーン限界判定フラグＦL2をセットして（ＦL2←１）、ルーチンを抜ける。尚、この空燃比補正係数λは、上述したように燃料噴射制御ルーチンのステップＳ４にて読込まれる。
【００５５】
このように、本実施形態では、エンジン始動後のアイドル暖機運転において一度空燃比を補正した場合（Ｓ１９，Ｓ２０）、その後のルーチン実行時において、当該空燃比補正後のエンジン運転状態を調べ、エンジンの燃焼状態が安定している（エンジンに耐力がある）と判定した場合に空燃比をリーン化するようにしたので、エンジンの機差やインジェクタ１１の個体差によるエンジン運転状態の変動に応じてリーン空燃比が設定され、安定したアイドル回転数を得ることができる。又、気筒間のエンジン運転状態の変動はエンジンを駆動源とするオルタネータを代表とする補器類等からの外乱によっても影響を受けるが、結果的にこれらの外乱によるトルク変動をも吸収して、適正な空燃比が設定される。
【００５６】
一方、ステップＳ２１で、リーン限界判定フラグＦL2が、ＦL2＝１（空燃比補正係数λがリッチ側へ補正された）と判定されてステップＳ２３へ進むと、リッチ補正後判定処理を実行して、ルーチンを抜ける。
【００５７】
このリッチ補正後判定処理は、図７に示すリッチ補正後判定処理サブルーチンで実行される。尚、このリッチ補正後サブルーチンでの処理が、本発明の空燃比補正手段に相当する。
【００５８】
このサブルーチンでは、空燃比補正係数λがリッチ側へ補正された後のエンジン運転状態の変動を調べ、空燃比をリッチ側へ補正したことでエンジンの燃焼状態が安定したか否かを調べる。エンジン運転状態の変動を調べるパラメータは、上述したリーン限界判定処理で採用したものと同じであるが、各々の許容幅が上述したリーン限界判定処理で採用する判定値よりもやや狭い値、すなわち厳しい値に設定されている。
【００５９】
先ず、ステップＳ６１で、今回算出したエンジン回転数Ｎｅと前回の演算時に算出したエンジン回転数Ｎｅ(n-1)との差分の絶対値から差回転ΔＮｅを算出し（ΔＮｅ←｜Ｎｅ−Ｎｅ(n-1)｜）、ステップＳ６２で、差回転ΔＮｅと第２の許容変動幅であるリッチ補正後許容差回転ΔＮｅ1（例えば４０[rpm]）とを比較する。そして、差回転ΔＮｅがリッチ補正後許容差回転ΔＮｅ1以下の場合は（ΔＮｅ≦ΔＮｅ1）、ステップＳ６３へ進む。又、差回転ΔＮｅが許容差回転ΔＮｅ1を超過している場合（ΔＮｅ＞ΔＮｅ1）、リッチ側へ補正しても回転変動が改善されないと判定し、ステップＳ７２へジャンプする。
【００６０】
又、ステップＳ６３へ進むと、冷却水温に基づいて設定される暖機時目標アイドル回転数ＮIDLとエンジン回転数Ｎｅとの差分からアイドル回転数偏差ＩＤＬσを算出し（ＩＤＬσ←｜ＮIDL−Ｎｅ｜）、ステップＳ６４でアイドル回転数偏差ＩＤＬσが、第２の許容回転数偏差としてのリッチ補正後許容回転数偏差ＩＤＬσ1（例えば１５[rpm]）内に収まっているか否かを調べる。そして、リッチ補正後許容回転数偏差ＩＤＬσ1以内の場合（ＩＤＬσ≦ＩＤＬσ1）、ステップＳ６５へ進む。一方、アイドル回転数偏差ＩＤＬσがリッチ補正後許容回転数偏差ＩＤＬσ1を超過している場合（ＩＤＬσ＞ＩＤＬσ1）、空燃比をリッチ側へ補正してもアイドル回転数偏差ＩＤＬσが改善されないと判定し、ステップＳ７２へジャンプする。
【００６１】
又、ステップＳ６５へ進むと、アイドル時基本点火時期ＳＰIDLと実際に出力される最終的な点火時期ＳＰとを読込み、その差分の絶対値から点火時期偏差ＳＰσを算出し（ＳＰσ←｜ＳＰIDL−ＳＰ｜）、ステップＳ６６で点火時期偏差ＳＰσとリッチ補正後許容点火時期偏差ＳＰσ1とを比較する。そして、点火時期偏差ＳＰσがリッチ補正後許容点火時期偏差ＳＰσ1以内の場合（ＳＰσ≦ＳＰσ1）、ステップＳ６７へ進む。一方、点火時期偏差ＳＰσがリッチ補正後許容点火時期偏差ＳＰσ1を超過している場合（ＳＰσ＞ＳＰσ1）、空燃比をリッチ側へ補正しても点火時期偏差ＳＰσが改善されないと判定し、ステップＳ７２へジャンプする。
【００６２】
更に、ステップＳ６７へ進むと、要求吸入空気量Ｑｙと吸入空気量Ｑとの差分（空気量差分）ΔＱを算出し（ΔＱ←｜Ｑｙ−Ｑ｜）、ステップＳ６８で、空気量差分ΔＱとリッチ補正後許容空気量差分ΔＱ1とを比較する。そして、空気量差分ΔＱがリッチ補正後許容空気量差分ΔＱ1以内の場合（ΔＱ≦ΔＱ1）、ステップＳ６９へ進む、一方、空気量差分ΔＱがリッチ補正後許容空気量差分ΔＱ1を超過している場合（ΔＱ＞ΔＱ1）、空燃比をリッチ側へ補正しても空気量差分ΔＱが改善されないと判定し、ステップＳ７２へジャンプする。
【００６３】
又、ステップＳ６９へ進むと、エンジン回転数Ｎｅと落ち込み判定用限界回転数ＮL（例えば８００[rpm]）とを比較して、エンジン回転数の落ち込みを調べる。そして、エンジン回転数Ｎｅが限界回転数ＮL以上の場合は、リーン化が可能と判定し、ステップＳ７０へ進み、空燃比補正係数λをリーン補正すべく、この空燃比補正係数λに設定値αを加算した値で更新し（λ←λ＋α）、ステップＳ７１へ進み、リーン限界判定フラグＦL2をクリアして（ＦL2←０）、ルーチンを抜ける。
【００６４】
一方、ステップＳ６２，Ｓ６４，Ｓ６６，Ｓ６８，Ｓ６９の何れかで、各パラメータの値が改善されてないと判定されて、ステップＳ７２へ進むと、空燃比補正係数λのリーン補正をキャンセルし、この空燃比補正係数λを初期値λｏ（例えば1.1）に戻して（λ←λｏ）、ルーチンを抜ける。
【００６５】
このように、本実施形態では、空燃比をリッチ側へ補正した後のエンジン運転状態の変動を調べ、回転変動が改善された場合は、再び空燃比をリーン補正し、又、改善されない場合は、空燃比補正係数λを初期値λｏに戻すようにしたので、空燃比を無理にリーン化することなく、エンジンの燃焼状態（耐力）に応じた空燃比を設定することができる。
【００６６】
尚、本発明は、上述した実施形態に限るものではなく、例えば上述した空燃比のリーン化処理は、暖機完了後のアイドル運転においても適用することができる。この場合、図４のステップＳ１３は省略される。又、リーン限界を判定するパラメータは、最小限、エンジン回転数Ｎｅに基づいて判定できるものであれば良い。
【００６７】
又、本実施形態では、リッチ補正後判定処理サブルーチンにおいて、空燃比をリッチ側へ補正してもエンジン運転状態の変動が改善されていないと判定した場合、空燃比補正係数λを一律に初期値λｏで設定しているが、例えばステップＳ７２において空燃比補正係数λを所定値（例えば設定値α）で、更にリッチ側へ補正し、リッチ補正した後のエンジン運転状態の変動を検出するパラメータに基づいて、第２段階のリッチ補正後判定処理を実行するようにしても良く、更に、第３段階のリッチ補正後判定処理を実行するようにしても良い。
【図面の簡単な説明】
【００６８】
【図１】エンジンの全体構成図
【図２】電子制御装置の回路構成図
【図３】燃料噴射制御ルーチンを示すフローチャート
【図４】空燃比補正係数演算ルーチンを示すフローチャート
【図５】リーン化判定処理サブルーチンを示すフローチャート
【図６】リーン限界判定処理サブルーチンを示すフローチャート
【図７】リッチ補正後判定処理サブルーチンを示すフローチャート
【符号の説明】
【００６９】
１…エンジン、
２４…吸入空気量センサ、
２５…スロットル開度センサ、
２７…空燃比センサ、
２８…アクセル開度センサ、
２９…水温センサ、
３２…クランク角センサ、
３５…気筒判別センサ、
３６…車速センサ、
４０…電子制御装置、
ΔＮｅ…差回転、
ΔＮｅ1…リッチ補正後許容差回転、
ΔＮｅｏ…許容差回転、
ΔＱ…空気量差分、
ΔＱ1…リッチ補正後許容空気量差分、
ΔＱｏ…許容空気量差分、
α…設定値、
λ…空燃比補正係数、
λｏ…初期値、
ＩＤＬσ…アイドル回転数偏差、
ＩＤＬσ1…リッチ補正後許容回転数偏差、
ＩＤＬσｏ…許容回転数偏差、
ＮIDL…暖機時目標アイドル回転数、
ＮL…落ち込み判定用限界回転数、
Ｎｅ…エンジン回転数、
Ｎｅｍ…最大吹き上がり回転数、
Ｎｅｍｏ…リーン化判定吹き上がり回転数、
ＰＳIDL…アイドル時基本点火時期、
Ｑ…吸入空気量、
Ｑｙ…要求吸入空気量、
ＳＰ…点火時期、
ＳＰIDL…アイドル時基本点火時期、
ＳＰσ…点火時期偏差、
ＳＰσ1…リッチ補正後許容点火時期偏差、
ＳＰσｏ…許容点火時期偏差、
Ｔｉ…燃料噴射量、
Ｔｍｓ…始動後到達時間、
Ｔｍｓｏ…リーン化判定時間、
Ｔｐ…基本燃料噴射量
【図１】
2010007523.tif 000003
【図２】
2010007523.tif 000004
【図３】
2010007523.tif 000005
【図４】
2010007523.tif 000006
【図５】
2010007523.tif 000007
【図６】
2010007523.tif 000008
【図７】
2010007523.tif 000009