(57)【要約】  【課題】  空燃比制御装置の異常を診断する装置の信頼性を高める。  【解決手段】  異常診断装置が、内燃機関１の空燃比を検出する空燃比検出手段３８と、空燃比検出手段３８の出力に基づいて空燃比を理論空燃比に近づけるように空燃比制御装置の操作量を補正する操作量決定部４３と、操作量に対する補正量に関連付けされた補正値と、操作量決定部４３による補正に関わらず設定される比較値とに基づいて、空燃比制御装置の異常を診断する診断部４４と、を備える。【選択図】図２
2015121112.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の空燃比を制御する空燃比制御装置の異常を診断する装置であって、
前記内燃機関の空燃比を検出する空燃比検出手段と、
前記空燃比検出手段の出力に基づいて空燃比を理論空燃比に近づけるように前記空燃比制御装置の操作量を補正する操作量決定部と、
前記操作量に対する補正量に関連付けされた補正値と、前記操作量決定部による補正に関わらず設定される比較値とに基づいて、前記空燃比制御装置の異常を診断する診断部と、を備える、空燃比制御装置の異常診断装置。
【請求項２】
前記内燃機関の運転状態に対応して、空燃比が理論空燃比となるために必要な補正量を定めた対応関係を記憶する記憶部を更に備え、
前記空燃比検出手段は、空燃比が理論空燃比付近を跨いだときに出力特性を反転させるＯ２センサであり、
前記操作量決定部は、操作量を前記対応関係に従って補正した後で、空燃比を理論空燃比に近づけるように前記Ｏ２センサの出力に基づき操作量を時間経過に伴って段階的に補正する、請求項１に記載の空燃比制御装置の異常診断装置。
【請求項３】
前記補正値は、操作量を前記対応関係に従って補正した後で、空燃比を理論空燃比に近づけるために必要となった補正量に基づいて設定される、請求項２に記載の空燃比制御装置の異常診断装置。
【請求項４】
前記補正値が前記比較値を超えた状態が所定時間継続すると、前記診断部は前記空燃比制御装置が異常であると診断する、請求項１乃至３のいずれか１項に記載の空燃比制御装置の異常診断装置。
【請求項５】
前記補正値は、所定期間内に取得された補正量の平均と関連付けされた値である、請求項１乃至４のいずれか１項に記載の空燃比制御装置の異常診断装置。
【請求項６】
前記診断部は、前記内燃機関の運転状態が安定的に推移しているとの条件、又は、前記補正量が安定的に推移しているとの条件を含む診断許可条件の成否を判定し、
前記診断許可条件が不成立であれば前記空燃比制御装置の異常診断が実施されず、前記診断許可条件が成立すれば前記空燃比制御装置の異常診断が実施される、請求項１乃至５のいずれか１項に記載の空燃比制御装置の異常診断装置。
【請求項７】
前記空燃比制御装置が異常であると診断されると運転者にその旨報知する警報装置を更に備える、請求項１乃至６のいずれか１項に記載の空燃比制御装置の異常診断装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の空燃比制御装置の異常を診断する装置に関する。
【背景技術】
【０００２】
乗物に搭載されたコントローラが、当該乗物のシステム又は機器の自己診断を実施可能に構成される場合がある。例えば、特許文献１には、空燃比フィードバック制御系の異常診断装置が開示されている。空燃比フィードバック制御系は、空燃比センサにより検出された空燃比と目標空燃比との偏差に応じた空燃比補正係数を設定し、空燃比が目標空燃比となるように燃料供給量を補正する。異常診断装置は、空燃比補正係数の今回値と、当該補正係数の平均値との偏差を異常判定要素とし、この異常判定要素を閾値と比較することで空燃比フィードバック制御系の異常を診断する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１０−２２４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、初期不良があった場合にその影響が平均値に含まれるので、初期不良を検知することができない。また、今回値と平均値との偏差を異常判定要素に用いると、劣化の漸次進行により異常性が認められるに至ったような場合、これを正確に検知することが難しい。
【０００５】
そこで本発明は、より信頼性の高い異常診断装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る空燃比制御装置の異常診断装置は、内燃機関の空燃比を制御する空燃比制御装置の異常を診断する装置であって、前記内燃機関の空燃比を検出する空燃比検出手段と、前記空燃比検出手段の出力に基づいて空燃比を理論空燃比に近づけるように前記空燃比制御装置の操作量を補正する操作量決定部と、前記操作量に対する補正量に関連付けされた補正値と、前記操作量決定部による補正に関わらず設定される比較値とに基づいて、前記空燃比制御装置の異常を診断する診断部と、を備える。
【０００７】
前記構成によれば、補正量に依存しない比較値が異常診断に用いられるので、空燃比制御装置に初期不良が存在しても比較値にその初期不良は含まれない。このため、診断部が初期不良を検出することができる。また、劣化が漸次進行して空燃比制御装置が異常に至ったと認められる場合であっても、これを検知しやすくなる。よって異常診断装置の信頼性が高くなる。
【０００８】
前記内燃機関の運転状態に対応して、空燃比が理論空燃比となるために必要な補正量を定めた対応関係を記憶する記憶部を更に備え、前記空燃比検出手段は、空燃比が理論空燃比付近を跨いだときに出力特性を反転させるＯ２センサであり、前記操作量決定部は、操作量を前記対応関係に従って補正した後で、空燃比を理論空燃比に近づけるように前記Ｏ２センサの出力に基づき操作量を時間経過に伴って段階的に補正してもよい。
【０００９】
前記構成によれば、空燃比制御装置が異常でない場合、空燃比を理論空燃比に近づけるまでの時間を短くすることができる。その結果として、空燃比制御装置が異常である場合にも、これを検知するまでの時間も短くすることができる。
【００１０】
前記補正値は、操作量を前記対応関係に従って補正した後で、空燃比を理論空燃比に近づけるために必要となった補正量に基づいて設定されてもよい。
【００１１】
前記構成において、空燃比制御装置が個体差も劣化も異常もない理想の状態にあれば、操作量が対応関係に従って補正されることで空燃比は理論空燃比に達するはずである。当該補正後の更なる補正量は、空燃比制御装置がそうではないために空燃比が理論空燃比と異なる値となっている場合に必要であり、この空燃比の誤差を補償する。補正値がこのような補正量に基づき設定されるので、診断部は、異常ではなく個体差又は劣化などを原因に理想的な状態から外れているだけであるのか、異常であるのかを峻別しやすくなる。よって、異常診断装置の信頼性を高めやすい。また、運転状態によって比較値を大きく変えなくて済むので、比較値の設定を簡便に行うことができるようになる。
【００１２】
前記補正値が前記比較値を超えた状態が所定時間継続すると、前記診断部は前記空燃比制御装置が異常であると診断してもよい。
【００１３】
前記構成によれば、ノイズの影響等により補正値が瞬間的に比較値を超えた場合であっても、診断部の診断精度が向上する。
【００１４】
前記補正値は、所定期間内に取得された補正量の平均と関連付けされた値であってもよい。
【００１５】
前記構成によれば、ノイズの影響等により補正量の今回値が瞬間的に比較値を超えている場合であっても、診断部の診断精度が向上する。
【００１６】
前記診断部は、前記内燃機関の運転状態が安定的に推移しているとの条件、又は、前記補正量が安定的に推移しているとの条件を含む診断許可条件の成否を判定し、前記診断許可条件が不成立であれば前記空燃比制御装置の異常診断が実施されず、前記診断許可条件が成立すれば前記空燃比制御装置の異常診断が実施されてもよい。
【００１７】
前記構成によれば、運転状態及び補正量が安定しているときに異常診断が実施されるので、診断部の診断精度が向上する。
【００１８】
前記空燃比制御装置が異常であると診断されると運転者にその旨報知する警報装置を更に備えてもよい。
【００１９】
前記構成によれば、運転者に空燃比制御装置の異常を知らせることができ、運転者に適切な対応を促すことができる。
【発明の効果】
【００２０】
本発明によれば、信頼性の高い異常診断装置を提供することができる。
【図面の簡単な説明】
【００２１】
【図１】第１実施形態に係る空燃比制御装置の構成を示す概念図である。
【図２】図１に示す空燃比制御装置及びその異常診断装置の構成を示すブロック図である。
【図３】第１対応関係の一例を示す図である。
【図４】第２対応関係の一例を示す図である。
【図５】（ａ）は、図２に示す空燃比制御装置が個体差も劣化も異常もない理想的な状態にある場合における開弁期間及び空燃比の一例を示す図である。（ｂ）及び（ｃ）は、図２に示す空燃比制御装置に個体差又は劣化が存在する場合における開弁期間及び空燃比の一例を示す図である。
【図６】変動補正係数の設定法の一例を示すグラフである。
【図７】図２に示す空燃比制御装置及びその異常診断装置により実行される空燃比制御及び異常診断の一例を示すフローチャートである。
【図８】図７に示す異常診断処理の一例を示すフローチャートである。
【図９】（ａ）〜（ｃ）は診断許可条件の一例を示すグラフである。
【図１０】（ａ）及び（ｂ）は異常条件の一例を示すグラフである。
【図１１】図１０（ａ）に例示した異常条件の説明図である。
【図１２】第２実施形態に係る空燃比制御装置及びその異常診断装置の構成を示すブロック図である。
【図１３】閉ループ補正係数及び学習補正係数の設定法の一例を示すグラフである。
【図１４】図１２に示す空燃比制御装置に個体差又は劣化が存在する場合における開弁期間及び空燃比の一例を示す図である。
【図１５】図１２に示す空燃比制御装置及びその異常診断装置により実行される空燃比制御及び異常診断の一例を示すフローチャートである。
【図１６】第３実施形態に係る空燃比制御装置及びその異常診断装置の構成を示すブロック図である。
【図１７】実時学習係数及び長期学習係数の設定法の一例を示すグラフである。
【図１８】（ａ）は第３対応関係の一例を示す図である。（ｂ）は第４対応関係の一例を示す図である。
【図１９】第４実施形態に係る空燃比制御装置及びその異常診断装置の構成を示すブロック図である。
【図２０】第１判定部による燃焼状態の判定法の一例を示す図である。
【図２１】第２判定部による燃焼状態の判定法の一例を示す図である。
【図２２】アイドル補正係数の設定法の一例を示すグラフである。
【図２３】図１９に示す空燃比制御装置及びその異常診断装置により実行される空燃比制御及び異常診断の一例を示すフローチャートである。
【発明を実施するための形態】
【００２２】
以下、図面を参照しながら本発明の実施形態について説明する。なお、同一の又は対応する符号には全ての図を通じて同一の符号を付して重複する説明を省略する。
【００２３】
（第１実施形態）
図１は、第１実施形態に係る空燃比制御装置の構成を示す概念図である。空燃比制御装置は、内燃機関１を駆動源とする乗物（例えば、自動二輪車、不整地走行車、四輪車又は小型滑走艇）に搭載される。内燃機関１は、シリンダ３及び燃焼室４を形成する本体２、シリンダ３内で往復するピストン５、及びコネクティングロッド６を介しピストン５に連結されてピストン５により回転駆動されるクランク軸（図示せず）を含む。吸気通路７の下流端は燃焼室４に開口して吸気弁８で開閉される。排気通路９の上流端は燃焼室４に開口して排気弁１０で開閉される。
【００２４】
吸気通路７は、吸気流れの上流から順に、エアクリーナ１１の内空間、スロットル装置１２のボディ内空間、及び本体２の吸気ポート１３を含む。外気がエアクリーナ１１に流入して浄化され、浄化された外気がスロットル装置１２を通り吸気ポート１３に取り込まれる。
【００２５】
運転者は、自身の加速、定速又は減速要求に応じてスロットルグリップ又はアクセルペダルのようなアクセル操作部材１４を操作することで、スロットル装置１２のボディに内蔵されたスロットル弁１５を操作可能である。吸気量はスロットル弁１５の開度（以下、「スロットル開度」）に応じて調整される。スロットル弁１５は、弁モータ１６により駆動される電動スロットル弁１５ａを含む。弁モータ１６は電子制御ユニット（以下、「ＥＣＵ」）４０によって制御され、弁モータ１６はアクセル操作部材１４の操作量（以下、「アクセル操作量」）に応じて動作し、スロットル開度がアクセル操作量に応じたものとなる。スロットル弁１５は、アクセル操作部材１４での操作に応じて機械的に駆動される手動スロットル弁１５ｂを含んでもよく、その場合、２つの弁１５ａ，１５ｂが吸気通路７内で吸気流れ方向に並ぶ。
【００２６】
燃料系は、燃料（例えば、ガソリン）を蓄える燃料タンク１７、燃料を噴射するインジェクタ１８、燃料タンク１７をインジェクタ１８の燃料入口に接続する燃料パイプ１９、及び燃料タンク１７内の燃料を燃料パイプ１９ひいては燃料入口に圧送する燃料ポンプ２０を含む。本実施形態では燃料が吸気通路７内に噴射されるが、燃焼室４に噴射されてもよい。インジェクタ１８は、ＥＣＵ４０によって制御され、１エンジンサイクルごとに燃料を噴射する。内燃機関１は、例えば４スロトークエンジンであり、１エンジンサイクルは、例えば吸気、圧縮、膨張及び排気の４行程で構成される。
【００２７】
吸気行程では吸気弁８が吸気通路７を開放し、吸気及び燃料が燃焼室４に供給される。燃焼室４内の混合気は、圧縮行程で圧縮されて点火プラグ２１により点火燃焼される。排気行程では排気弁１０が排気通路９を開放し、燃焼排ガスが燃焼室４から排気通路９へと排出される。
【００２８】
排気通路９は、排気流れの上流から順に、本体２内の排気ポート２２、排気マニホルド２３の内空間、三元触媒管２４の内空間、及び排気マフラ２５の内空間を含む。燃焼排ガスは、排気通路９を通って外気に放出される。三元触媒管２４の通過中、燃焼排ガスから炭化水素、一酸化炭素及び窒素酸化物が除去される。
【００２９】
詳細な図示を省略するが、内燃機関１は複数のシリンダ３を有する多気筒型である。燃焼室４、ピストン５及びコネクティングロッド６はシリンダ３に個別対応し、クランク軸は全シリンダ３で共通する。エアクリーナ１１は全シリンダ３で共通し、吸気弁８及び吸気ポート１３はシリンダ３に個別対応する。一例として、スロットル弁１５は、シリンダ３に個別対応するが、全シリンダ３でスロットル開度が同じとなるよう一斉に動作する。燃料タンク１７及び燃料ポンプ２０は全シリンダ３で共通し、インジェクタ１８はシリンダ３に個別対応する。燃料パイプ１９は、上流部では集合され、下流部ではインジェクタ１８に対応して分岐する。排気弁１０及び排気ポート２２はシリンダ３に個別対応し、三元触媒管２４及び排気マフラ２５は全シリンダ３で共通する。排気マニホルド２３は、上流部では排気ポート２２に対応して分岐し、下流部では集合される。
【００３０】
図２は、図１に示す空燃比制御装置及びその異常診断装置の構成を示すブロック図である。空燃比制御装置は、前述したＥＣＵ４０、電動スロットル弁１５ａ及びインジェクタ１８を含む。また、空燃比制御装置は、内燃機関１（図１参照）の運転状態を検出する運転状態検出手段と、内燃機関１の空燃比を検出するための空燃比検出手段とを含む。
【００３１】
運転状態検出手段には、例えば、クランク角センサ３１、スロットル開度センサ３２及びアクセル操作量センサ３３が含まれる。クランク角センサ３１は、クランク軸の回転位置（以下、「クランク角」）を検出する。ＥＣＵ４０は、クランク角センサ３１の出力に基づいてエンジン回転数を検出することができる。スロットル開度センサ３２は、スロットル開度を検出する。アクセル操作量センサ３３は、アクセル操作量を検出する。
【００３２】
本実施形態に係る空燃比検出手段は、内燃機関１（図１参照）の空燃比が理論空燃比付近を跨いだとき（すなわち、空燃比がリッチからリーンに移行したとき又はその逆のとき）に、出力特性を反転させるＯ２センサ３８である。Ｏ２センサ３８は全シリンダ３（図１参照）で共通し、例えば、排気マニホルド２３（図１参照）の下流部に取り付けられ、排気マニホルド２３内の燃焼排ガスの酸素濃度に応じて高電圧又は低電圧の信号を出力する。排気マニホルド２３内の燃焼排ガスの酸素濃度が、理論空燃比の混合気を燃焼したときに得られると想定される排ガス酸素濃度値を跨ぐように上昇又は下降したときに、Ｏ２センサ３８は出力特性を反転させる。ＥＣＵ４０は、Ｏ２センサ３８の出力に基づいて内燃機関１の空燃比がリッチ状態であるのかリーン状態であるのか判断することができる。ＥＣＵ４０は、Ｏ２センサ３８の出力特性が反転したことに基づいて空燃比が理論空燃比付近であると判断することができる。
【００３３】
ＥＣＵ４０は、運転状態に応じて制御対象としての弁モータ１６及びインジェクタ１８を制御し、それにより制御量としての空燃比を制御する。ＥＣＵ４０は、空燃比検出手段の出力に基づいて空燃比を理論空燃比に近づけるように空燃比制御装置の操作量を補正するフィードバック制御を実施する。空燃比に影響を及ぼす操作量には、弁モータ１６の位置ひいてはスロットル開度、及びインジェクタ１８の開弁期間が含まれる。本実施形態では、インジェクタ１８の開弁期間がフィードバック制御を実施する際に補正の対象となっている。
【００３４】
インジェクタ１８は、その噴射口を常閉する電磁開閉弁である。ＥＣＵ４０は、１エンジンサイクルごとに運転状態に応じてインジェクタ１８の開弁期間を決定する。適当な時期から当該決定された開弁期間が経過するまで、インジェクタ１８はＥＣＵ４０から開弁指令を受ける。開弁期間中に、噴射口が開放され、圧送された燃料が噴射口より噴射される。インジェクタ１８から噴射される燃料量は、燃料系を構成する部品の設計値（例えば、噴射口径など）、燃料性状（例えば、粘性など）、燃料圧力及びインジェクタ１８の開弁期間に応じて決まる。設計値及び燃料性状は略一定であり、燃料圧力も、燃料ポンプ１７（図１参照）、インジェクタ１８又は燃料パイプ１９（図１参照）のような燃料系を構成する部品に異常がなければ略一定に保たれる。このため、インジェクタ１８の開弁期間を操作量と扱うことで、燃料量及び空燃比を制御量とする燃料噴射制御及び空燃比制御を実施できる。
【００３５】
開弁期間がいくら補正されても目的の空燃比を得られない場合、燃料系を構成する部品に異常があると考えることができる。あるいは、エアクリーナ１１（図１参照）又はスロットル弁１５（図１参照）のような吸気系を構成する部品に異常があると考えることもできる。あるいは、運転状態検出手段又は空燃比検出手段のような検出系を構成する部品に異常があると考えることもできる。開弁期間を大きく補正することなく目的の空燃比を得ることができる場合、その補正量は、内燃機関１（図１参照）、吸気系、燃料系及び検出系を構成する部品の個体差又はこれら部品の劣化により生じた許容誤差を補償するために必要な補正量であると考えることができる。
【００３６】
ＥＣＵ４０は、補正量に関連付けされた補正値と、補正量に関わらず設定される比較値とに基づいて空燃比制御装置の異常を診断する。ＥＣＵ４０は、空燃比制御装置を構成し且つその異常診断装置も構成する。
【００３７】
異常診断装置は、空燃比制御装置に異常があると診断されると運転者にその旨報知する警報装置３９を備える。警報装置３９は、ＥＣＵ４０によって制御される。警報装置３９は、警告表示を行うことによって運転者の視覚に訴えて異常を知らせる報知する表示装置であってもよい。表示装置は、乗物のインストルメントパネル上に配置されてもよく、表示装置にはランプ又は液晶パネルを採用することができる。警報装置３９は、警告音を放音することによって運転者の聴覚に訴えて異常を報知するスピーカ装置であってもよい。
【００３８】
ＥＣＵ４０は、上記の空燃比制御及び異常診断を実現する機能モジュールとして、記憶部４１、モード決定部４２、操作量決定部４３及び診断部４４を有する。記憶部４１は、メモリのようなＥＣＵ４０のハードウェア要素により実現される。モード決定部４２、操作量決定部４３及び診断部４４は、メモリに記憶されたプログラムのようなＥＣＵ４０のソフトウェア要素と、プログラムを実行するＣＰＵのようなＥＣＵ４０のハードウェア要素とにより実現される。
【００３９】
モード決定部４２は、運転状態に基づいてフィードバック制御を実施する条件（以下、「フィードバック実施条件」）の成否を判定する。フィードバック実施条件が成立していれば、モード決定部４２は制御モードとして「フィードバックモード」を設定し、空燃比検出手段の出力に基づいて空燃比が理論空燃比付近となるように操作量を補正するフィードバック制御を実施する。フィードバック実施条件が不成立であれば、モード決定部４２は制御モードとして「非フィードバックモード」を設定し、ＥＣＵ４０は、空燃比検出手段の出力に関わらず操作量を決める非フィードバック制御を実施する。例えば、高負荷時及び急加速時には、フィードバック実施条件が不成立となる。
【００４０】
操作量決定部４３は、スロットル開度決定部５１及びインジェクタ開弁期間決定部５２を含む。スロットル開度決定部５１は、記憶部４１に記憶される開度マップ（図示せず）に従って運転状態に応じて弁モータ１６の位置指令値を決定する。ＥＣＵ４０は、決定された位置指令値に従って弁モータ１６を駆動し、それによりスロットル開度が運転状態に応じて制御される。例えば、スロットル開度はアクセル操作量に比例するよう制御され、内燃機関１（図１参照）の出力並びに乗物の推進力及び速度が、運転者の要求に応じて調整される。
【００４１】
インジェクタ開弁期間決定部５２は、運転状態に応じてインジェクタ１８の開弁期間を決定し、ＥＣＵ４０は、クランク角センサ３１の出力を監視し、適当な時期から開弁期間だけ開弁するようにインジェクタ１８に開弁指令を与える。開弁期間ＴＡＵは、例えば次式（１Ａ）を用いて決定される。
【００４２】
ＴＡＵ＝ＴBASE×ＦFB      …(１Ａ)
ＴBASEは開弁期間の標準値、ＦFBはフィードバック補正係数である。式（１Ａ）を用いる場合、開弁期間ＴＡＵは、標準値ＴBASEに補正係数を乗算補正することによって求められる。ただし、これは一例であり、開弁期間ＴＡＵは、標準値ＴBASEに補正量を加減算補正することによって求められてもよい。
【００４３】
フィードバック補正係数ＦFBは、フィードバック制御の実施中に、空燃比検出手段の出力に基づいて空燃比を理論空燃比に近づけるよう、開弁期間ＴＡＵを標準値ＴBASEから補正する。非フィードバック制御の実施中、フィードバック補正係数ＦFBは基準値に設定され、それによりフィードバック補正係数ＦFBによる開弁期間ＴＡＵの補正が行われない。式（１Ａ）を用いる場合、フィードバック補正係数ＦFBの基準値は１である。なお、式（１Ａ）より導かれるとおり、フィードバック補正係数ＦFBによる開弁期間ＴＡＵの補正量ＴFBは、標準値ＴBASE及びフィードバック補正係数ＦFBの積から標準値ＴBASEを減算した値である（ＴFB＝ＴBASE×ＦFB−ＴBASE＝ＴBASE(ＦFB−１)）。
【００４４】
標準値ＴBASEは、運転状態に対応した開弁期間である。本実施形態では、非フィードバック補正の実施中、開弁期間ＴＡＵが標準値ＴBASEに設定される（そうならない場合については、第２実施形態を参照）。標準値ＴBASEは、開弁期間ＴＡＵが標準値ＴBASEに設定された場合に空燃比が内燃機関１（図１参照）の出力特性や燃焼排ガスの性状（例えば、含有成分など）に対する様々な要求を考慮して当該運転領域に適した想定標準値ＡBASEとなるよう、運転状態に応じて設定される。空燃比の想定標準値ＡBASEは、開弁期間の標準値ＴBASEと同じく、当初に（すなわち、乗物、内燃機関１及び空燃比制御装置の設計段階で）想定されるものである。空燃比の想定標準値ＡBASEは、必ずしも理論空燃比ではない。例えば、高出力型の自動二輪車では、空燃比の想定標準値ＡBASEは、上記要求が考慮された結果として運転状態の略全般にわたってリッチ値である。
【００４５】
例えば記憶部４１は、運転状態に対応する標準値ＴBASEを定める第１対応関係６１を予め記憶している。第１対応関係６１は、複数の運転領域をスロットル開度及びエンジン回転数で規定し、複数の運転領域を複数の標準値ＴBASEと一対一で対応付ける（図３参照）。この場合、インジェクタ開弁期間決定部５２は、第１対応関係６１に従って運転状態に応じた標準値ＴBASEを決定することができる。ただし、第１対応関係６１は、テーブル又はマップの形態に限られず、演算式であってもよい。標準値ＴBASEは第１対応関係６１に従ってスロットル開度及びエンジン回転数以外の運転状態に応じて決定されてもよい。
【００４６】
本実施形態に係るフィードバック補正係数ＦFBは、運転状態に基づき設定される空気過剰率補正係数（以下、「λ補正係数」）ＦO2RAMと、空燃比検出手段の出力に基づき空燃比を理論空燃比に近づけるように可変的に設定される変動補正係数ＦVFBとを含む。この点を考慮して、式（１Ａ）は次式（２Ａ）に変形可能である。
【００４７】
ＴＡＵ＝ＴBASE×ＦO2RAM×(１＋ＦVFB)      …(２Ａ)
式（２Ａ）では、フィードバック補正係数ＦFBが、λ補正係数ＦO2RAMと、変動補正係数ＦVFBに１加算した値との積であり、λ補正係数ＦO2RAMの基準値は１、変動補正係数ＦVFBの基準値はゼロである。ただし、これは一例であり、フィードバック補正係数ＦFBは２係数ＦO2RAM，ＦVFBの積でもよく（ＦFB＝ＦO2RAM×ＦVFB）、この場合はどちらの基準値も１である。非フィードバック制御の実施中、２係数ＦO2RAM，ＦVFBは基準値に設定される。
【００４８】
λ補正係数ＦO2RAMは、空燃比を想定標準値ＡBASEから理論空燃比ＡSTに変えるために標準値ＴBASEに乗算される補正係数である。つまり、λ補正係数ＦO2RAMは、標準値ＴBASEに対応した想定標準値ＡBASEを理論空燃比ＡSTで除算することで得られる空気過剰率である（ＦO2RAM＝ＡBASE／ＡST）。以下、標準値ＴBASEをこれに対応するλ補正係数ＦO2RAMで乗算補正した値を「理論値ＴST」と呼ぶ（ＴST＝ＴBASE×ＦO2RAM）。
【００４９】
例えば記憶部４１は、運転状態に対応したλ補正係数ＦO2RAMを定める第２対応関係６２を予め記憶している。第２対応関係６２は、第１対応関係６１と全く同じに複数の運転領域を規定し、複数の運転領域を複数のλ補正係数ＦO2RAMと一対一で対応付けている（図４参照）。つまり、λ補正係数ＦO2RAMは、第１及び第２対応関係６１，６２を介し、これら対応関係６１，６２により規定される運転領域ごとに、標準値ＴBASEと一対一で対応付けられる。この場合、フィードバック制御の実施中、インジェクタ開弁期間決定部５２は、第１対応関係６１に従って運転状態に応じた標準値ＴBASEを決定し、第２対応関係６２に従って同じ運転状態に応じたλ補正係数ＦO2RAMを決定し、標準値ＴBASEをλ補正係数ＦO2RAMで乗算補正する。
【００５０】
なお、標準値ＴBASEは当初に定められる。標準値ＴBASEを決めれば、これに対応するλ補正係数ＦO2RAMが一意に決まり、理論値ＴSTも決まる。そこで、第２対応関係は、複数の運転領域を複数の理論値ＴSTと一対一で対応付けてもよい。この場合、フィードバック制御の実施中、インジェクタ開弁期間決定部５２は、第１対応関係６１を用いず、この変形例に係る第２対応関係に従って運転状態に応じて理論値ＴSTを直接的に決定する。
【００５１】
図５（ａ）は、空燃比制御装置が個体差も劣化も異常もない理想的な状態にある場合における開弁期間及び空燃比の一例を示す図である。この場合、図５（ａ）に示すように、非フィードバック制御の実施中に開弁期間ＴＡＵが標準値ＴBASEに設定されると、そのときの実際の空燃比ＡBASE(A)が想定標準値ＡBASEに等しくなる（棒ａ−１参照）。フィードバック制御が開始して開弁期間ＴＡＵが理論値ＴSTに設定されると、そのときの実際の空燃比ＡST(A)は理論空燃比ＡSTと等しくなる（棒ａ−２参照）。なお、式（２Ａ）より導かれるとおり、λ補正係数ＦO2RAMによる開弁期間ＴＡＵの補正量ＴO2RAMは、標準値ＴBASE及びλ補正係数ＦO2RAMの積から標準値ＴBASEを減算した値、すなわち、理論値ＴSTから標準値ＴBASEを減算した値である（ＴO2RAM＝ＴBASE×ＦO2RAM−ＴBASE＝ＴST−ＴBASE）。
【００５２】
フィードバック制御の実施中に運転状態が変化して標準値ＴBASEが変更されると、これと同時にλ補正係数ＦO2RAMも変更される。このため、開弁期間ＴＡＵは、変化後の運転状態に対応する理論値ＴSTに設定され、空燃比が理論空燃比ＡSTに維持される。
【００５３】
図５（ｂ）及び（ｃ）は、空燃比制御装置に個体差又は劣化が存在する場合における開弁期間及び空燃比の一例を示す図である。図５（ｂ）に示すように、非フィードバック制御の実施中に開弁期間ＴＡＵを標準値ＴBASEに設定しても、そのときの実際の空燃比ＡBASE(A)が想定標準値ＡBASEを下回る可能性がある（棒ｂ−１参照）。つまり、実際の燃料量が、標準値ＴBASEに応じた当初想定の燃料量よりも多くなる、又は、実際の吸気量が標準値ＴBASEに対応付けられた運転状態に応じた当初想定の吸気量よりも少なくなる可能性がある。その場合、フィードバック制御が開始して開弁期間ＴＡＵを理論値ＴSTに設定しても、そのときの実際の空燃比ＡST(A)が理論空燃比ＡSTを下回る可能性がある（棒ｂ−２参照）。
【００５４】
図５（ｃ）に示すように、非フィードバック制御の実施中に開弁期間ＴＡＵを標準値ＴBASEに設定しても、そのときの実際の空燃比ＡBASE(A)が想定標準値ＡBASEを上回る可能性もある（棒ｃ−１参照）。つまり、実際の燃料量が、標準値ＴBASEに応じた当初想定の燃料量よりも少なくなる、又は、実際の吸気量が標準値ＴBASEに対応付けられた運転状態に応じた当初想定の吸気量よりも多くなる可能性がある。この場合、フィードバック制御が開始して開弁期間ＴＡＵを理論値ＴSTに設定しても、そのときの実際の空燃比ＡST(A)が理論空燃比ＡSTを上回る可能性がある（棒ｃ−２参照）。
【００５５】
本実施形態では、空燃比検出手段がＯ２センサ３８で構成されるので、実際の空燃比ＡBASE(A)が想定標準値ＡBASEからどの程度離れているのか、実際の空燃比ＡST(A)が理論空燃比ＡSTからどの程度離れているのかを正確に検出し得ない。これに対し、変動補正係数ＦVFBは、フィードバック制御の実施中にＯ２センサ３８の出力に基づいて変化し、開弁期間ＴＡＵを時間経過に伴って段階的に補正する。開弁期間ＴＡＵは、λ補正係数ＦO2RAMを用いて標準値ＴBASEから理論値ＴSTへと一次的に補正されてから、変動補正係数ＦVFBを用いて理論値ＴSTから二次的に補正される。変動補正係数ＦFBは、個体差又は劣化により生じた空燃比の誤差（ＡST(A)−ＡST）を補償することができ、それにより空燃比は理論空燃比ＡSTに近づけられていく（棒ｂ−３及びｃ−３参照）。
【００５６】
式（２Ａ）より導かれるとおり、変動補正係数ＦVFBによる開弁期間ＴＡＵの補正量ＴVFBは、標準値ＴBASEとλ補正係数ＦO2RAMと変動補正係数ＦVFBに１加算した値との積から標準値ＴBASE及びλ補正係数ＦO2RAMの積を減算した値、すなわち、理論値ＴST及び変動補正係数ＦVFBの積である（ＴVFB＝ＴBASE×ＦO2RAM×(１＋ＦVFB)−ＴBASE×ＦO2RAM＝ＴST×ＦVFB）。
【００５７】
フィードバック制御の実施中に運転状態が変化して標準値ＴBASEが変更されると、これと同時にλ補正係数ＦO2RAMも変更され、理論値ＴSTが変化後の運転状態に応じた値に変更される。変動補正係数ＦVFBによる補正量ＴVFBは、理論値ＴST及び変動補正係数ＦVFBの積であるので、変化後の理論値ＴSTに依存して自動的に変更される。よって、運転状態が変化して吸気量が変化しても、変動補正係数ＦVFBの値を大きく変えずに空燃比の誤差を補償し続けることができる。
【００５８】
図６は、変動補正係数ＦVFBの設定法の一例を示すグラフである。図６左側は、図５（ｂ）に示したケースでの変動補正係数ＦVFBの一例を、図６右側は、図５（ｃ）に示したケースでの変動補正係数ＦVFBの一例をそれぞれ示している。図６に示すように、フィードバック制御が開始すると、変動補正係数ＦVFBは先ず基準値に設定される。一方、図６では詳細に図示しないが、フィードバック制御が開始すると、λ補正係数ＦO2RAMが運転状態に応じた値に設定され、開弁期間ＴＡＵは理論値ＴSTに設定される。
【００５９】
図６左側に示すように、図５（ｂ）に示したケースでは、開弁期間ＴＡＵが理論値ＴSTに設定された直後、Ｏ２センサ３８の出力特性がリッチ状態を示す。変動補正係数ＦVFBはＯ２センサ３８の出力に基づいて空燃比が理論空燃比に近づくように変化していく。つまり、変動補正係数ＦVFBは、空燃比がリッチ状態から理論空燃比に近づくように漸次減少していく。Ｏ２センサ３８の出力特性が反転すると、変動補正係数ＦVFBは、その増減を反転させる。出力特性及び増減傾向が反転する際、変動補正係数ＦVFBは、反転時の値から所定スキップ値だけ反転側にスキップしたうえで、それまでと増減を逆にして変化してもよい。ここでは、変動補正係数ＦVFBが漸次減少してきたので、変動補正係数ＦVFBが反転時の値から所定スキップ値だけ増加するようスキップし、それから漸次増加する。その後、Ｏ２センサ３８の出力特性が反転するたび、変動補正係数ＦVFBがスキップしてその増減を反転させる。空燃比の誤差が大きいほど、変動補正係数ＦVFBの基準値からの変化量が大きくなる。
【００６０】
図６右側に示すように、図５（ｃ）に示したケースでも同様である。開弁期間ＴＡＵが理論値ＴSTに設定された直後、Ｏ２センサ３８の出力特性はリーン状態を示す。変動補正係数ＦVFBはＯ２センサ３８の出力に基づいて空燃比が理論空燃比に近づくように変化していく。このケースでは、変動補正係数ＦVFBが先ず漸次増加する。
【００６１】
図７は、空燃比制御装置及びその異常診断装置により実行される空燃比制御及び異常診断の一例を示すフローチャートである。このフローは、ＥＣＵ４０及び内燃機関１の稼働中、１エンジンサイクルおきに繰返し実行される。図７に示すように、スロットル開度決定部５１が、アクセル操作量に応じて弁モータ１６の目標位置ひいては目標スロットル開度を決定する（Ｓ１）。インジェクタ開弁期間決定部５２が、第１対応関係６１に従って運転状態（一例として、エンジン回転数及びスロットル開度で規定される運転領域）に応じて開弁期間の標準値ＴBASEを決定する（Ｓ２）。
【００６２】
モード決定部４２がフィードバック実施条件の成否を判定する（Ｓ３）。フィードバック実施条件が不成立であれば（Ｓ３：ＮＯ）、ＥＣＵ４０は、非フィードバック制御を実施する。その一環として、インジェクタ開弁期間決定部５２が、フィードバック補正係数ＦFBを基準値に設定する（Ｓ１１）。すなわち、λ補正係数ＦO2RAMを基準値（１）に設定し、変動補正係数ＦVFBを基準値（ゼロ）に設定する。
【００６３】
次に、インジェクタ開弁期間決定部５２が開弁期間ＴＡＵを決定する（Ｓ３０）。本実施形態では、非フィードバック制御の実施中、開弁期間ＴＡＵは標準値ＴBASEに設定される。インジェクタ開弁期間決定部５２は、クランク角センサ３１の出力を監視し、適当な時期になれば当該時期からステップＳ３０で決定された開弁期間ＴＡＵだけインジェクタ１８に開弁指令を与える。図５（ａ）に示すように空燃比制御装置が理想的な状態にあれば、空燃比が想定標準値ＡBASEになる。したがって、当初のねらいどおり、内燃機関１の出力特性や燃焼排ガスの性状が運転状態に適したものとなる。図５（ｂ）及び（ｃ）に示すように個体差又は劣化が生じていれば、実際の空燃比ＡBASE(A)と想定標準値ＡBASEとの間に誤差が生じる。この誤差のため、内燃機関１の出力特性や燃焼排ガスの性状が当初のねらいから外れる可能性がある。
【００６４】
フィードバック実施条件が成立していれば（Ｓ３：ＹＥＳ）、ＥＣＵ４０は、フィードバック制御を実施する。その一環として、インジェクタ開弁期間決定部５２は、第２対応関係６２に従って運転状態に応じてλ補正係数ＦO2RAMを決定し、Ｏ２センサ３８の出力に基づいて変動補正係数ＦVFBを決定する（Ｓ１４）。変動補正係数ＦVFBの設定法は前述のとおりである。次に、空燃比制御装置の異常診断処理を実行する（Ｓ２０）。
【００６５】
図８は、空燃比制御装置の異常診断処理Ｓ２０の手順を示すフローチャートである。図８に示すように、異常診断処理Ｓ２０では、診断部４４が、診断を実施する条件（以下、「診断許可条件」）の成否を判定する（Ｓ２１）。診断許可条件が不成立であれば（Ｓ２１：ＮＯ）、異常診断処理Ｓ２０を終了し、ステップＳ３０（図７参照）に進む。診断許可条件が成立していれば（Ｓ２１：ＹＥＳ）、診断部４４が、空燃比制御装置の異常を診断する（Ｓ２２）。異常でないと診断すると（Ｓ２２：ＮＯ）、異常診断処理Ｓ２０を終了し、ステップＳ３０に進む。異常であると診断すると（Ｓ２２：ＹＥＳ）、警報装置が作動し（Ｓ２３）、ステップＳ３０に進む。異常診断処理Ｓ２０では３つのルートのうちいずれかを通りステップＳ３０に進むところ、そのステップＳ３０では、ステップＳ２で決定された標準値ＴBASEと、ステップＳ１４で決定された２係数ＦO2RAM，ＦVFBとを用いて開弁期間ＴＡＵが決定される。
【００６６】
図９（ａ）〜（ｃ）は、診断許可条件の一例を示すグラフである。診断許可条件は、運転状態が安定的に推移しているとの第１診断許可条件（図９（ａ）参照）、変動補正係数ＦVFBが安定的に推移しているとの第２診断許可条件（図９（ｂ）及び（ｃ）参照）を含む。診断許可条件は、第１診断許可条件及び第２診断許可条件の両方を充足したときに成立してもよいし、片方を充足したときに成立してもよい。
【００６７】
図９（ａ）に示すように、例えば第１診断許可条件は、スロットル開度が、条件判定時点（現時点）に至るまでの第１所定期間Ｐ１の間、下限閾値及び上限閾値で規定される許容範囲内で推移しているとの条件である。実線ａ１は当該条件を充足する場合を示す。上限閾値を上回る領域もしくは下限閾値を下回る領域内で第１所定期間Ｐ１の間留まり続けているとき（破線ａ２，ａ３参照）、又はいずれかの閾値を跨ぐように加速もしくは減速しているとき（破線ａ４，ａ５参照）には、当該条件が不成立となる。第１診断許可条件は、エンジン回転数に関する同様の条件を有する。第１診断許可条件は、スロットル開度に関する条件とエンジン回転数に関する条件との両方を充足したときに成立してもよく、片方を充足したときに成立してもよい。
【００６８】
図９（ｂ）に示すように、例えば第２診断許可条件は、条件判定時点（現時点）に至るまでの第２所定期間Ｐ２内に取得された複数の変動補正係数ＦVFBのうち最大値ＦVFBmaxと最小値ＦVFBminとの差ｄＦVFBmmが所定値未満との条件である。図９（ｃ）に示すように、例えば第２診断許可条件は、変動補正係数ＦVFBの平均値ＦVFBavの変化率ｄＦVFBavが、条件判定時点（現時点）に至るまでの第３所定期間Ｐ３の間、上限閾値及び下限閾値で規定される所定範囲内で推移しているとの条件である。なお、平均値ＦVFBavは、算出時点に至るまでの第４所定期間Ｐ４（図９（ｂ）参照）内に取得された複数の変動補正係数ＦVFBの平均であり、平均は算術平均でも加重平均でもよく、加重平均であれば算出時点に近い補正量ほど重みづけ係数が高くてもよい。第２診断許可条件は、差ｄＦVFBmmに関する条件と変化率ｄＦVFBavに関する条件との両方を充足したときに成立してもよく、片方を充足したときに成立してもよい。なお、第１〜第４所定期間Ｐ１〜Ｐ４は同じ長さでもよいし、異なる長さでもよい。
【００６９】
ステップＳ２２では、診断部４４が、操作量の一例としての開弁期間ＴＡＵに対する補正量に関連付けされた補正値と、補正に関わらず設定される比較値とに基づいて空燃比制御装置の異常を診断する。診断に用いる補正値の元となる「補正量」は、フィードバック制御の実施中における開弁期間の補正量ＴFBを含む。補正量ＴFBは、λ補正係数ＦO2RAMによる補正量ＴO2RAMと、変動補正係数ＦVFBによる補正量ＴVFBとを含む。これら補正量ＴFB，ＴO2RAM，ＴVFBは係数ＦFB，ＦO2RAM，ＦVFBによって決定づけられる。本書では、診断に用いる補正値の元となる「補正量」は、開弁期間ＴＡＵに対する補正量ＴFB，ＴO2RAM，ＴVFBそのものだけでなく、これを決定づける係数ＦFB，ＦO2RAM，ＦVFBも含む。
【００７０】
「補正量」は、１エンジンサイクルごとに更新される。補正量に関連付けされた「補正値」は、今回エンジンサイクルにおける開弁期間ＴＡＵを決定するために設定された補正量の今回値でもよい。また、「補正値」は、所定期間内に取得された補正量の平均値でもよい。所定期間は、例えば今回のエンジンサイクル及びそれよりも過去の１以上のエンジンサイクルである。
【００７１】
本実施形態に係る補正値は、標準値ＴBASEを理論値ＴSTへと一次的に補正してから、空燃比を理論空燃比付近に到達させるまでに二次的に必要になった補正量、すなわち、補正量ＴVFB及びこれを決定づける変動補正係数ＦVFBに基づいて設定される。例えば、補正値は、変動補正係数ＦVFBの今回値及び変動補正係数ＦVFBの平均値である。
【００７２】
一方、診断に用いる「比較値」は、上記補正量に関わらず設定される。例えば、比較値は、記憶部４１に予め記憶される。このとき、比較値は運転状態に関わらず一定の値でもよい。複数の比較値が、第１及び第２対応関係６１，６２により規定される複数の運転領域それぞれに一対一で対応付けられていてもよい。比較値は、開弁期間ＴＡＵ及びその補正値を含まない関数によって求められてもよい。
【００７３】
「比較値」は、上限比較値及び下限比較値を含み、これら２比較値が補正値の許容範囲を規定する。診断部４４は、補正値と比較値（上限比較値及び下限比較値）との比較に基づいて、空燃比制御装置が異常であるとの診断結果を下す条件（以下、「異常条件」）の成否を判定する。
【００７４】
図１０（ａ）及び（ｂ）は、異常条件の一例を示すグラフである。図１０（ａ）に示すように、異常条件は、変動補正係数ＦVFBの今回値が上限比較値Ｕ１及び下限比較値Ｌ１を超えて許容範囲Ｒ１外に出ている状態を所定期間Ｐ１１継続しているとの条件を含む。図１０（ｂ）に示すように、異常条件は、変動補正係数ＦVFBの平均値ＦVFBavが上限比較値Ｕ２及び下限比較値Ｌ２を超えて許容範囲Ｒ２外に出ている状態を所定期間Ｐ１２継続しているとの条件を含む。２つの期間Ｐ１１，Ｐ１２は同じ長さでもよいし、異なる長さでもよい。
【００７５】
図１１は、図１０（ａ）に例示した異常条件の説明図である。前述のとおり、変動補正係数ＦVFBによる開弁期間ＴＡＵの補正量ＴVFBは、理論値ＴST及び変動補正係数ＦVFBの積である。そこで図１１では、変動補正係数ＦVFB、上限比較値Ｕ１及び下限比較値Ｌ１を、理論値ＴSTとの積に変換して開弁期間軸上に表している。図１１に示すように、フィードバック制御の実施中、変動補正係数ＦVFBによる補正を行い、変動補正係数ＦVFBの今回値が許容範囲Ｒ１内に収まっていれば、空燃比制御装置は異常でないと診断する（棒３参照）。ＥＣＵ４０は、変動補正係数ＦVFBの今回値が許容範囲Ｒ１外に出て所定期間Ｐ１１（図１０（ａ）参照）内に許容範囲Ｒ１内に戻ったときも、空燃比制御装置は異常でないと診断する。これらのケースでは、ＥＣＵ４０は、空燃比の誤差が許容されるとして、これを補償する制御を実施し続ける。ＥＣＵ４０は、変動補正係数ＦVFBが許容範囲Ｒ１外に出て所定期間Ｐ１１を経過すると、変動補正係数ＦVFBによる補正によっても空燃比の誤差を適切に修正することはできないとして、空燃比制御装置が異常であると診断する（棒４参照）。
【００７６】
補正値が下限比較値を下回るケースは、Ｏ２センサ３８の出力特性がリッチ状態を示し続けて変動補正係数ＦVFB及びその平均値ＦVFBavが減少し続けたときに生じる。すなわち、開弁期間ＴＡＵを短くして燃料量を少なくしようとしても、Ｏ２センサ３８の出力特性がリッチ状態を示し続けるときに生じる。このようなケースで想定される空燃比制御装置の異常として、インジェクタ１８の噴射口における異物噛込み等によるインジェクタ１８の閉弁不良、エアクリーナ１１のフィルタ目詰まり、スロットル開度閉じ側でのスロットル弁１５のスタック、Ｏ２センサ３８の検出不良（酸素濃度の過小評価）、Ｏ２センサ３８の断線などが考えられる。
【００７７】
補正値が上限比較値を上回るケースは、Ｏ２センサ３８の出力特性がリーン状態を示し続けて変動補正係数ＦVFB及びその平均値ＦVFBavが増加し続けたときに生じる。すなわち、開弁期間ＴＡＵを長くして燃料量を多くしようとしても、Ｏ２センサ３８の出力特性がリーン状態を示し続けるときに生じる。このようなケースで想定される空燃比制御装置の異常として、燃料ポンプ１７の吐出不良、インジェクタ１８の開弁不良、燃料パイプ１９のシール不良、スロットル開度開き側でのスロットル弁１５のスタック、Ｏ２センサ３８の検出不良（酸素濃度の過大評価）、Ｏ２センサ３８の断線などが考えられる。
【００７８】
本実施形態に係る異常診断装置では、ＥＣＵ４０のインジェクタ開弁期間決定部５２が、空燃比検出手段の出力に基づいて空燃比を理論空燃比に近づけるように空燃比制御装置の操作量の一例としての開弁期間ＴＡＵを補正する。ＥＣＵ４０の診断部４４が、開弁期間ＴＡＵに対する補正量に関連付けされた補正値と、インジェクタ開弁期間決定部５２における補正に関わらず設定される比較値とに基づいて空燃比制御装置の異常を診断する。このように、補正量に依存しない比較値を異常診断に用いるので、空燃比制御装置に初期不良が存在しても比較値にその影響は含まれない。このため、ＥＣＵ４０の診断部４４は初期不良を検出することができる。また、劣化が漸次進行して空燃比制御装置が異常に至ったと認められる場合であっても、これを検知しやすくなる。よって異常診断装置の信頼性が高くなる。特に、補正値が補正量の変化率（今回値と過去値又は平均値との差分）ではなく今回値又は平均値に基づくので、劣化の漸次進行に伴う異常を検知しやすい。
【００７９】
ＥＣＵ４０のモード決定部４２は、空燃比検出手段の出力に基づいて空燃比を理論空燃比に近づけるフィードバック制御を実施するフィードバックモードと、空燃比検出手段の出力に基づかずに操作量を決める非フィードバック制御を実施する非フィードバックモードとで制御モードを切り換える。フィードバック制御が開始すると、インジェクタ開弁期間決定部５２は、第２対応関係６２に従って開弁期間ＴＡＵを標準値ＴBASEから補正したのち、開弁期間ＴＡＵを時間経過に伴って段階的に二次的に補正することによって空燃比を理論空燃比ＡSTに近づける。このため、空燃比制御装置が異常でない場合に、空燃比を理論空燃比ＡSTに近づけるまでの時間を短くすることができる。その結果として、空燃比制御装置が異常である場合に、これを検知するまでの時間も短くすることができる。
【００８０】
補正値は、開弁期間ＴＡＵが第２対応関係６２に従って一次的に理論値ＴSTへと補正されてから、空燃比が理論空燃比ＡSTに達するまでの二次的な変動補正係数ＦVFBに基づいて設定される。第２対応関係６２に従って開弁期間ＴＡＵが一次的に設定されると、空燃比制御装置が個体差も劣化も異常もない理想的な状態にあれば、空燃比は理論空燃比ＡSTに達するはずである。変動補正係数ＦVFBは、空燃比制御装置がそうではないために生じた空燃比の理論空燃比ＡSTからの誤差を補償するために用いられる。逆にいえば、空燃比制御装置が理想的な状態にあれば、変動補正係数ＦVFBは（スキップ値分の変動はあるかもしれないが）基準値から殆ど変動しない。異常診断に用いる補正値がこのような補正量に基づき設定されるので、個体差や劣化による許容される誤差であるのか、異常が生じているのかを峻別しやすくなる。よって、異常診断装置の信頼性が高くなる。
【００８１】
空燃比が理論空燃比ＡSTとなるために必要な開弁期間ＴＡＵの標準値ＴBASEからの総補正量ＴFBは、運転状態によって異なる。吸気量が異なるし、運転状態によって空燃比の想定標準値ＡBASEも異なるためである。しかし、第２対応関係６２に従って開弁期間ＴＡＵを一次的に理論値ＴSTまで補正すれば、その後に必要な補正量ＴVFBは、運転状態に変化によって大きく変わらない。しかも、本実施形態では、当該補正量ＴVFBが、理論値ＴSTに変動補正係数ＦVFBを乗算した値であり、変動補正係数ＦVFBは、運転状態の変化に応じて敏感に変動させなくてもよい。よって、比較値を運転状態に応じて大きく変えなくて済むことになり、比較値の設定を簡便に行うことができるようになる。
【００８２】
診断部４４は、補正値が比較値を超えた状態が所定時間継続すると空燃比制御装置が異常であると診断する。このため、ノイズの影響等により補正値が瞬間的に比較値を超えた場合であっても、診断部４４の診断精度が向上する。また、補正値に補正量の平均値も採用している。このため、ノイズの影響等により今回値が瞬間的に比較値を超えている場合であっても、診断部４４の診断精度が向上する。
【００８３】
診断部４４は、診断許可条件が成立したときに空燃比制御装置の異常診断を実施し、診断許可条件が不成立であれば空燃比制御装置の異常診断を実施しない。診断許可条件は、運転状態が安定的に推移しているとの第１診断許可条件、及び変動補正係数ＦVFBが安定的に推移しているとの第２診断許可条件を含む。運転状態及び変動補正係数ＦVFBが安定しているときに異常診断を実施するので、診断部４４の診断精度が向上する。
【００８４】
空燃比制御装置が異常であると診断すると、ＥＣＵ４０は警報装置３９を作動させる。これにより、運転者に空燃比制御装置の異常を知らせることができ、運転者に適切な対応を促すことができる。
【００８５】
（第２実施形態）
図１２は、第２実施形態に係る空燃比制御装置及びその異常診断装置の構成を示すブロック図である。本実施形態は、主として、変動補正係数ＦVFBが閉ループ補正係数ＦAF及び学習補正係数ＦLAFに分かれている点、非フィードバック制御の実施中に開弁期間ＴＡＵが劣化補正係数ＦDLAFを用いて補正される点、及び異常条件がこれら係数ＦAF，ＦLAF，ＦDLAFに基づいた条件を含む点で、第１実施形態と相違する。以下、この相違を中心に第２実施形態について説明する。
【００８６】
本実施形態に係るＥＣＵ２４０は、操作量決定部２４３を有し、そのインジェクタ開弁期間決定部２５２は、式（１Ｂ）を用いて開弁期間ＴＡＵを決定する。
【００８７】
ＴＡＵ＝ＴBASE×ＦFB×(１＋ＦDLAF)      …（１Ｂ）
ＦDLAFは劣化補正係数である。フィードバック制御の実施中は、劣化補正係数ＦDLAFが基準値に設定され、劣化補正係数ＦDLAFによる開弁期間ＴＡＵの補正が行われない。式（１Ｂ）を用いる場合、劣化補正係数ＦDLAFの基準値はゼロである。
【００８８】
フィードバック補正係数ＦVFBはλ補正係数ＦO2RAM及び変動補正係数ＦVFBを含み、変動補正係数ＦVFBは閉ループ補正係数ＦAF及び学習補正係数ＦLAFを含む。この点を考慮して、式（１Ｂ）は次式（２Ｂ）に変形可能である。
【００８９】
ＴＡＵ＝ＴBASE×ＦO2RAM×(１＋ＦAF＋ＦLAF)×(１＋ＦDLAF)      …(２Ｂ)
式（２Ｂ）及び第１実施形態に係る式（２Ａ）に示すように、閉ループ補正係数ＦAF及び学習補正係数ＦLAFの和が、第１実施形態に係る変動補正係数ＦVFBに相当する。式（２Ｂ）を用いる場合、係数ＦAF，ＦLAFの基準値はゼロである。非フィードバック制御の実施中、係数ＦO2RAM，ＦAF，ＦLAFはいずれも基準値に設定される。閉ループ補正係数ＦAFによる補正量ＴAFは、理論値ＴST及び閉ループ補正係数ＦAFの積であり（ＴAF＝ＴST×ＦAF）、学習補正係数ＦLAFによる補正量ＴLAFは、理論値ＴST及び学習補正係数ＦLAFの積である（ＴLAF＝ＴST×ＦLAF）。
【００９０】
図１３は、閉ループ補正係数ＦAF及び学習補正係数ＦLAFの設定法の一例を示すグラフである。ここでは、フィードバック制御が開始して開弁期間ＴＡＵを理論値ＴSTに設定してもＯ２センサ３８の出力特性がリッチ状態を示すものとする。この場合、閉ループ補正係数ＦAF及び学習補正係数ＦLAFはＯ２センサ３８の出力に基づいて空燃比を理論空燃比ＡSTに近づけるように漸次減少する。
【００９１】
Ｏ２センサ３８の出力特性が反転すると、閉ループ補正係数ＦAFは所定スキップ値だけ増加したうえで空燃比を理論空燃比に近づけるよう漸次増加する。次に、Ｏ２センサ３８の出力特性が反転すると、閉ループ補正係数ＦAFが所定スキップ値だけ減少したうえで空燃比を理論空燃比に近づけるよう漸次減少する。以後フィードバック制御が終了するまで、この閉ループ補正係数ＦAFの変動が繰り返される。
【００９２】
学習補正係数ＦLAFは、閉ループ補正係数ＦAFのスキップ時に閉ループ補正係数ＦAFが所定の学習停止値ＦAFstopを跨ぐまで減少し続ける。なお、学習停止値ＦAFstopは基準値でもよいし、２つの学習停止値ＦAFstopが閉ループ補正係数ＦAFの基準値を挟むように設定されてもよい。閉ループ補正係数ＦAFが学習停止値ＦAFstopを跨ぐと、以降フィードバック制御が終了するまで、学習補正係数ＦLAFはその時点の値で固定される。
【００９３】
閉ループ補正係数ＦAFが減少するときには学習補正係数ＦLAFの減少が加味され、Ｏ２センサ３８の出力特性を反転させるまでの時間が短くなる。閉ループ補正係数ＦAFが増加するときには学習補正係数ＦLAFの減少に逆らって空燃比を理論空燃比に近づけていくので、Ｏ２センサ３８の出力特性を反転させるまでの時間が長くなる。そのため、閉ループ補正係数ＦAFは増減を反転させつつも基準値へと近づいていく。これを実現するために、学習補正係数ＦLAFの変化率は、閉ループ補正係数ＦAFの変化率よりも小さい。
【００９４】
このように、２係数ＦAF，ＦLAFがフィードバック制御開始後に共に減少して一旦空燃比の誤差が補償されると（一旦Ｏ２センサ３８の出力特性が反転すると）、学習補正係数ＦLAFは閉ループ補正係数ＦAFの当初減少分（誤差補償分）を譲り受けるように減少し続ける一方、閉ループ補正係数ＦAFは増減を繰り返しながら基準値へ戻っていく。係数の値の受渡しは、Ｏ２センサ３８の出力を監視しながら行われる。よって、この受渡しは、空燃比を理論空燃比付近に維持して行われる。
【００９５】
つまり、学習補正係数ＦLAFは、第１実施形態に係る変動補正係数ＦVFBから、Ｏ２センサ３８の出力に基づき増減したりスキップしたりする要素を取り除き、開弁期間ＴＡＵが理論値ＴSTに設定されたときに生じる空燃比の理論空燃比からの誤差を補償する要素を抽出することで得られる補正係数である。学習補正係数ＦLAFは、フィードバック制御が終了するたび、記憶部２４１に更新記憶される。詳細な図示を省略するが、次のフィードバック制御が開始すると、学習補正係数ＦLAFは先ず記憶部２４１に記憶されている値に設定される。よって、フィードバック制御が開始してから一旦Ｏ２センサ３８の出力特性が反転するまでの期間が短くなる。
【００９６】
図１４は、図１２に示す空燃比制御装置に個体差又は劣化が存在する場合における開弁期間及び空燃比の一例を示す図である。図１４に示すように、フィードバック制御が開始して開弁期間ＴＡＵを理論値ＴSTに設定しても、そのときの実際の空燃比ＡST(A)は理論空燃比ＡSTと異なる値となる場合がある（棒２参照）。フィードバック制御の実施中、閉ループ補正係数ＦAF及び学習補正係数ＦLAFによる補正でもって一旦空燃比の誤差が補償され（棒３参照）、その後、学習補正係数ＦLAFが閉ループ補正係数ＦAFの誤差補償分を漸次受け持っていく（棒４参照）。
【００９７】
このフィードバック制御が終了して非フィードバック制御が開始すると、開弁期間ＴＡＵは、標準値ＴBASEを劣化補正係数ＦDLAFで補正した値に設定される。劣化補正係数ＦDLAFは、非フィードバック制御の実施中に開弁期間ＴＡＵを標準値ＴBASEに設定しても実際の空燃比ＡBASE(A)が想定標準値ＡBASEとならない場合にその誤差を補償するよう、開弁期間ＴＡＵを標準値ＴBASEから補正する（棒５参照）。非フィードバック制御の実施中はＦO2RAM＝１及びＦAF，ＦLAF＝０であるため、式（２Ｂ）より導かれるとおり、劣化補正係数ＦDLAFによる開弁期間ＴＡＵの補正量ＴDLAFは、標準値ＴBASEと劣化補正係数ＦDLAFに１加算した値の積からＴBASEを減算した値、すなわち、標準値ＴBASE及び係数ＦDLAFの積である（ＴDLAF＝ＴBASE×(１＋ＦDLAF)−ＴBASE＝ＴBASE×ＦDLAF）。
【００９８】
劣化補正係数ＦDLAFは、学習補正係数ＦLAFに基づいて設定される。本実施形態では、劣化補正係数ＦDLAFは、直前のフィードバック制御の終了時に記憶部２４１に更新記憶された学習補正係数ＦLAFと同値に設定される（そうでない場合については第３実施形態を参照）。これにより、実際の空燃比ＡBASE(A)が想定標準値ＡBASEとならない場合に、その誤差を劣化補正係数ＦDLAFで補償することができる。よって、空燃比を想定標準値ＡBASEに近づけることができ、個体差や劣化の存在に関わらず、内燃機関の出力特性及び燃焼排ガスの性状を良好に保つことができる。
【００９９】
図１５は、図１２に示す空燃比制御装置及びその異常診断装置により実行される空燃比制御及び異常診断の一例を示すフローチャートである。図１５に示すように、弁モータ１６の目標位置ひいては目標スロットル開度が決定され（Ｓ２０１）。標準値ＴBASEが第１対応関係６１に従って決定され（Ｓ２０２）、フィードバック実施条件の成否が判定される（Ｓ２０３）。フィードバック実施条件が不成立であれば（Ｓ２０３：ＮＯ）、非フィードバック制御が実施される。その一環として、フィードバック補正係数ＦFBが基準値に設定され（Ｓ２１１）、劣化補正係数ＦDLAFが学習補正係数ＦLAFに基づいて決定される（Ｓ２１２）。フィードバック実施条件が成立していれば（Ｓ２０３：ＹＥＳ）、フィードバック制御が実施される。その一環として、劣化補正係数ＦDLAFが基準値に決定され（Ｓ２１３）、フィードバック補正係数ＦFBが決定される（Ｓ２１４）。すなわち、λ補正係数ＦO2RAMが第２対応関係６２に従って決定され、閉ループ補正係数ＦAF及び学習補正係数ＦLAFが空燃比検出手段の出力に基づいて決定される。
【０１００】
次に、空燃比制御装置の異常診断処理が実行され（Ｓ２２０）、開弁期間ＴＡＵが決定される（Ｓ２３０）。本実施形態では、非フィードバック制御の実施中にも異常診断処理Ｓ２２０が実行される。異常診断処理Ｓ２２０の手順そのものは第１実施形態（図８参照）と同様であり、診断許可条件も第１実施形態と同様である。
【０１０１】
ステップＳ２２（図８参照）での異常の診断に関し、診断に用いる補正値の元となる「補正量」は、フィードバック制御実施中における開弁期間の補正量ＴFBと、非フィードバック制御実施中における開弁期間の補正量ＴDLAFと、これら補正量を決定づける係数とを含む。補正量ＴFBは、λ補正係数ＦO2RAMによる補正量ＴO2RAMと、閉ループ補正係数ＦAFによる補正量ＴAFと、学習補正係数ＦLAFによる補正量ＴLAFと、変動補正係数ＦVFB（閉ループ補正係数ＦAFと学習補正係数ＦLAFの和）による補正量ＴVFBとを含む。補正量ＴFB，ＴO2RAM，ＴAF，ＴLAF，ＴVFB，ＴDLAFは、係数ＦFB，ＦO2RAM，ＦAF，ＦLAF，ＦVFB，ＦDLAFによって決定づけられる。
【０１０２】
本実施形態に係る補正値は、標準値ＴBASEを理論値ＴSTへと一次的に補正してから、空燃比を理論空燃比付近に到達させるまでに二次的に必要になった補正量に基づいて設定される。補正値は、閉ループ補正係数ＦAFの今回値、閉ループ補正係数ＦAFの平均値、学習補正係数ＦLAFの今回値、変動補正係数ＦVFB（閉ループ補正係数ＦAF及び学習補正係数ＦLAFの和）の今回値を含む。補正値は、劣化補正係数ＦDLAFの今回値も含む。劣化補正係数ＦDLAFは、前記二次的に必要になった補正量である学習補正係数ＦLAFに基づいて設定されるので、劣化補正係数ＦDLAFの今回値もかかる補正量に基づいて設定される値である。比較値は、これら補正値に対応して設定される。
【０１０３】
フィードバック制御の実施中では、異常条件が、閉ループ補正係数ＦAFの今回値が上限比較値及び下限比較値を超えて許容範囲外に出ている状態を所定期間継続しているとの条件、閉ループ補正係数ＦAFの平均値が上限比較値及び下限比較値を超えて許容範囲外に出ている状態を所定期間継続しているとの条件、学習補正係数ＦLAFの今回値が上限比較値及び下限比較値を超えて許容範囲外に出ている状態を所定期間継続しているとの条件、変動補正係数ＦVFBの今回値が上限比較値及び下限比較値を超えて許容範囲外に出ている状態を所定期間継続しているとの条件を含む。診断部２４４は、これらの条件が全て充足したときに異常条件が成立したと判定してもよいし、少なくとも１つが充足したときに異常条件が成立したと判定してもよい。
【０１０４】
非フィードバック制御の実施中では、異常条件が、劣化補正係数ＦDLAFの今回値が上限比較値及び下限比較値を超えて許容範囲外に出ている状態を所定期間継続しているとの条件を含む。
【０１０５】
本実施形態でも、フィードバック制御の実施中、上記実施形態と同様にして信頼性の高い異常診断を行うことができる。本実施形態では、インジェクタ開弁期間決定部２５２が、非フィードバック制御の実施中に、それよりも過去のフィードバック制御の実施中に設定された補正量に基づいて開弁期間ＴＡＵを補正する。よって、診断部２４４は、非フィードバック制御の実施中にも、補正量に関連付けされた補正値と、補正量に関わらず設定される比較値とに基づいて空燃比制御装置の異常を診断することができる。
【０１０６】
前記構成によれば、個体差、劣化又は異常による空燃比誤差の補償を担う変動補正係数が学習補正係数として学習され、記憶された学習補正係数が次のＯ２フィードバック制御の開始時から変動補正係数に加味される。このため、フィードバック制御の開始から誤差補償完了までの時間が短くなる。よって、内燃機関１の出力や燃焼排ガスの性状を速やかに所要のものへと変化する。
【０１０７】
そして、学習補正係数ＦLAFを用いて異常を診断する場合、異常がフィードバック制御の実施前に生じたとしても、当該フィードバック制御の実施直後にその異常を検知することができる。また、学習補正係数ＦLAFと閉ループ補正係数ＦAFの和を用いて異常を診断する場合、劣化の漸次進行により異常性が認められるに至っても、これを検知しやすくなる。
【０１０８】
（第３実施形態）
図１６は、第３実施形態に係る空燃比制御装置及びその異常診断装置の構成を示すブロック図である。本実施形態は、主として、学習補正係数ＦLAFが実時学習係数ＦRLAF及び長期学習係数ＦLLAFに分かれている点、学習補正係数ＦLAFが運転状態に対応して記憶される点、劣化補正係数ＦDLAFが長期学習係数ＦLLAFに基づいて設定される点で、上記実施形態と相違する。以下、この相違を中心に第３実施形態について説明する。
【０１０９】
本実施形態に係るＥＣＵ３４０は操作量決定部３４３を有し、そのインジェクタ開弁期間決定部３５２は、前述した式（１Ｂ）を用いて開弁期間ＴＡＵを決定する。フィードバック補正係数ＦVFBはλ補正係数ＦO2RAM及び変動補正係数ＦVFBを含み、変動補正係数ＦVFBは、閉ループ補正係数ＦAF及び学習補正係数ＦLAFを含み、学習補正係数ＦLAFは実時学習係数ＦRLAF及び長期学習係数ＦLLAFを含む。この点を考慮して、式（１Ｂ）は次式（２Ｃ）に変形可能である。
【０１１０】
ＴＡＵ＝ＴBASE×ＦO2RAM×(１＋ＦAF＋ＦRLAF＋ＦLLAF)
×(１＋ＦDLAF)      …(２Ｃ)
式（２Ｃ）及び第２実施形態に係る式（２Ｂ）に示すように、実時学習係数ＦRLAF及び長期学習係数ＦLLAFの和が、第２実施形態に係る学習補正係数ＦLAFに相当する。式（２Ｃ）を用いる場合、２係数ＦLLAF，ＦRLAFの基準値はゼロであり、非フィードバック制御の実施中、係数ＦO2RAM，ＦAF，ＦRLAF，ＦLLAFはいずれも基準値に設定される。実時学習係数ＦRLAFによる補正量ＴRLAFは、理論値ＴST及び実時学習係数ＦRLAFの積であり（ＴRLAF＝ＴST×ＦRLAF）、長期学習係数ＦLLAFによる補正量ＴLLAFは、理論値ＴST及び長期学習係数ＦLLAFの積である（ＴLLAF＝ＴST×ＦLLAF）。
【０１１１】
図１７は、実時学習係数ＦRLAF及び長期学習係数ＦLLAFの設定法の一例を示すグラフである。図１７に示すように、フィードバック制御が開始すると、学習補正係数ＦLAF（実時学習係数ＦRLAFと長期学習係数ＦLLAFの和）は、第２実施形態において説明したとおり閉ループ補正係数ＦAFが学習停止値を跨ぐまで漸次変化する。長期学習係数ＦLLAFは変化せず、実時学習係数ＦRLAFのみが変化する。実時学習係数ＦRLAFが所定の移行閾値ＦTH1，ＦTH2に達すると、実時学習係数ＦRLAFが所定の移行値ΔＦだけ減算される一方、長期学習係数ＦLLAFが当該移行値ΔＦだけ加算される。これにより、両係数ＦRLAF，ＦLLAFの和を保ったまま、実時学習係数ＦRLAFから長期学習係数ＦLLAFへと値の受渡しが行われる。この時点で閉ループ補正係数ＦAFが未だ学習停止値を跨いでいなければ、長期学習値が加算後の値のまま変化せず、実時学習係数ＦRLAFが減算後の値から漸次変化し続ける。実時学習係数ＦRLAF及び長期学習係数ＦLLAFは記憶部３４１に更新記憶される。
【０１１２】
例えば記憶部３４１は、実時学習係数ＦRLAFを運転状態に関連付けする第３対応関係３６３と、長期学習係数ＦLLAFを運転状態に関連付けする第４対応関係３６４とを記憶している。第３対応関係３６３は、複数の運転領域をスロットル開度及びエンジン回転数で規定し、複数の運転領域を複数の実時学習係数ＦRLAFと一対一で対応付ける（図１８（ａ）参照）。第４対応関係３６４は、複数の運転領域をスロットル開度及びエンジン回転数で規定し、複数の運転領域を複数の実時学習係数ＦRLAFと一対一で対応付ける（図１８（ｂ）参照）。フィードバック制御が終わると、その時点の実時学習係数ＦRLAF及び長期学習係数ＦLLAFが、その時点の運転領域に対応付けされて更新記憶される。フィードバック制御の実施中に運転状態が変化したときに、変化時点の実時学習係数ＦRLAF及び長期学習係数ＦLLAFが、その時点の運転領域に対応付けされて更新記憶されてもよい。詳細な図示を省略するが、次のフィードバック制御が開始すると、第３対応関係３６３に従って運転状態に応じた実時学習係数ＦRLAFが読み出され、第４対応関係３６４に従って運転状態に応じた長期学習係数ＦLLAFが読み出され、係数ＦRLAF，ＦLLAFが読み出された値に設定される。
【０１１３】
劣化補正係数ＦDLAFは、記憶部３４１に記憶される第４対応関係３６４に記憶された長期学習係数ＦLLAFに基づいて設定される。例えば、劣化学習係数ＦDLAFは、複数の運転領域それぞれに対応付けられた複数の長期学習係数ＦLLAFの重みづけ平均値である。このとき、重みづけ係数は、エンジン回転数が小さいときほど大きい値に設定され、スロットル開度が小さいときほど大きい値に設定されてもよい。これにより、吸気量が少ないときほど燃料補正の感度が上がり、劣化に対処した補正をより正確に行うことができる。
【０１１４】
診断部３４４は、このように設定される劣化学習係数ＦDLAFの今回値と、これに対応する比較値との比較に基づいて、非フィードバック制御の実施中に空燃比制御装置の異常を診断してもよい。
【０１１５】
（第４実施形態）
図１には、二点鎖線で第４実施形態に係る構成も示されている。本実施形態は、主として、乗物が排気ポート２２に二次エアを供給するシステムを備える点、アイドリング時に該システムを利用して空燃比検出手段の出力に基づき燃焼状態を安定させる制御を実施する点、その制御で空燃比制御装置の制御対象の操作量（一例としてインジェクタ１８の開弁期間）が補正される点、異常条件がこの補正に基づく条件を含む点で、上記実施形態と相違する。以下、この相違を中心に第４実施形態について説明する。
【０１１６】
図１に二点鎖線で示すように、本実施形態では、エアクリーナ１１のクリーン側が二次エア供給管４２６を介して排気ポート２２に接続されている。二次エア供給管４２６は二次エア供給弁４２７により開閉される。二次エア供給弁４２７が二次エア供給管４２６を開放しているときには、浄化された外気が、スロットル装置１２及び燃焼室４を迂回し、エアクリーナ１１から排気ポート２２へと送られる。この二次エアを排気ポート２２に供給することで、燃焼排ガスを再燃焼させ、燃焼排ガス中の炭化水素及び一酸化炭素を低減することができる。二次エア供給弁４２７はＥＣＵ４４０によって制御される。なお、燃焼排ガスの逆流は、二次エア供給管４２６上において二次エア供給弁４２７よりも下流に配置される逆止弁４２８によって防止される。
【０１１７】
図１９は、第４実施形態に係る空燃比制御装置及びその異常診断装置の構成を示すブロック図である。モード決定部４４２は、内燃機関１（図１参照）がアイドリング状態にあれば、制御モードとして「アイドルモード」を設定し、空燃比検出手段の出力に基づいて二次エア込みの空燃比がリッチとならないように操作量を補正するアイドル劣化補正制御を実施する。内燃機関１がアイドリング状態でなければ、モード決定部４４２は運転状態に基づいてフィードバック実施条件の成否を判定する。上記実施形態と同様にして、フィードバック実施条件が成立していれば、フィードバックモードが設定されてフィードバック制御が実施される。フィードバック実施条件が不成立であれば、非フィードバックモードが設定されて非フィードバック制御が実施される。
【０１１８】
操作量決定部４４３は、上記実施形態と同様のスロットル開度決定部５１のほか、インジェクタ開弁期間決定部４５２及び二次エア供給決定部４５３を有する。インジェクタ開弁期間決定部４５２は、例えば式（１Ｄ）を用いて開弁期間ＴＡＵを決定する。
【０１１９】
ＴＡＵ＝ＴBASE×ＦFB×(１＋ＦDLAF)×ＦILAF      …(１Ｄ)
ＦILAFはアイドル補正係数であり、インジェクタ１８ごと（シリンダ３（図１参照）ごと）に個別設定される。フィードバック制御及び非フィードバック制御の実施中、アイドル補正係数ＦILAFは基準値に設定される。式（１Ｄ）を用いる場合、アイドル補正係数ＦILAFの基準値は１である。逆に、アイドル劣化補正制御の実施中、係数ＦFB，FDLAFは基準値に設定される。なお、第３実施形態における式（１Ｂ）から式（２Ｃ）への変形と同様に、式（１Ｄ）は次式（２Ｄ3）に変形可能である。
【０１２０】
ＴＡＵ＝ＴBASE×ＦO2RAM×(１＋ＦAF＋ＦRLAF＋ＦLLAF)
×(１＋ＦDLAF)×ＦILAF      …(２Ｄ3)
記憶部４４１は、第３実施形態と同様の第３及び第４対応関係３６３，３６４を記憶している。劣化補正係数ＦDLAFは、第３実施形態と同様にして、長期学習係数ＦLLAFに基づいて設定される。
【０１２１】
二次エア供給決定部４５３は、アイドル劣化補正制御を実施すると二次エア供給弁４２７に開指令を与える。その他、二次エア供給決定部４５３は、フィードバック実施条件が不成立であって運転状態が特定の運転領域にあるときに、二次エア供給弁４２７に開指令を与える。開指令の付与により、二次エア供給弁４２７は二次エア供給通路４２６を開放する。二次エア供給決定部４５３は、アイドル劣化補正制御を実施しておらず、また、フィードバック実施条件不成立時に運転状態が特定の運転領域になければ、二次エア供給弁４２７に開指令を与えない。それにより二次エア供給弁４２７は二次エア供給通路４２６を閉鎖する。
【０１２２】
ＥＣＵ４４０は、アイドル劣化補正制御の実施時に燃焼状態を判定する燃焼状態判定部４４５を有する。燃焼状態判定部４４５は、第１判定部４５６及び第２判定部４５７を有する。燃焼状態判定部４４５は、メモリに記憶されたプログラムのようなＥＣＵ４４０のソフトウェア要素と、プログラムを実行するＣＰＵのようなＥＣＵ４４０のハードウェア要素とにより実現される。
【０１２３】
図２０は、第１判定部４５６による燃焼状態の判定法の一例を示す図である。第１判定部４５６は、アイドル劣化補正制御の実施中、所定期間Δｔ１内で検出された複数のエンジン回転数の検出値から最小値と最大値とを抽出し、最大値と最小値の偏差Δωの算出を経て、偏差Δωが閾値以上であるか否かを判断する。この所定期間Δｔ１は、内燃機関１がアイドリング状態である場合に１以上のエンジンサイクルを経過させることができる十分に長い時間に設定される。すなわち、燃焼状態を巨視的に監視するために十分に長い時間に設定される。偏差Δωが閾値未満であれば、第１判定部４５６は燃焼状態が安定していると判定する。偏差Δωが閾値以上であれば、第１判定部４５６は燃焼状態が不安定であると判定する。
【０１２４】
図２１（ａ）及び（ｂ）は、第２判定部４５７による燃焼状態の判定法の一例を示す図である。図２１（ａ）は燃焼状態が安定しているときの典型例、図２１（ｂ）は燃焼状態が不安定であるときの典型例を示している。第２判定部４５７は、各シリンダ３の膨張行程の開始時付近（例えば、クランク角：１５[degCA]）で取得された第１回転数ωＡと、膨張行程の終了時付近（例えば、クランク角：１３５[degCA]）で取得された第２回転数ωＢとの差分値を算出する。なお、差分値は、第２回転数ωＢから第１回転数ωＡを減算して求められる。差分値は、所定数のエンジンサイクルが経過するまでエンジンサイクル毎に算出される。所定数の差分値から最大値と最小値とを抽出して、最大値と最小値との偏差をフィルタ係数で除算する鈍し処理を行うことにより偏差変化係数を算出する。
【０１２５】
正常な燃焼が行われていれば、膨張行程が開始してから終了付近に至るまでの間、エンジン回転数は上に凸の上昇傾向で推移する（図２１（ａ）参照）。このため、上記差分値は比較的大きい正の値をとることになる。このような燃焼が継続して行われれば、偏差変化係数が比較的大きい正値となる。他方、弱火や失火が生ずると、膨張行程が開始してから終了付近に至るまでの間、エンジン回転数が顕著な上昇傾向を見せず、極端な場合、図示するように、エンジン回転数は低下傾向で推移する（図２１（ｂ）参照）。この場合、上記差分値は正値であってもゼロに近い値、極端な場合に負値となる。このような燃焼が継続して行われれば、偏差変化係数がゼロ付近の正値又はゼロ以下の値をとる。
【０１２６】
第２判定部４５７は、各シリンダ３について偏差変化係数が閾値以上であるか否かを判断する。ここで、閾値は正値に設定される。偏差変化係数が閾値以上であれば、第２判定部４５７は当該シリンダ３の燃焼状態が安定していると判定する。偏差変化係数が閾値未満であれば、第２判定部４５７は当該シリンダ３の燃焼状態が不安定であると判定する。
【０１２７】
図２２は、アイドル補正係数ＦILAFの設定法の一例を示すグラフである。図２２に示すように、内燃機関１がアイドリング状態になると、二次エア供給決定部４５３が二次エア供給弁４２７に開指令を与え、第１及び第２判定部４５６，４５７が燃焼状態を判定する。インジェクタ開弁期間決定部４５２は、標準値ＴBASEを第１対応関係６１に従って決定し、アイドル補正係数ＦILAFを決定する。アイドル補正係数ＦILAFの初期値は基準値（１）である。
【０１２８】
そして、Ｏ２センサ３８の出力特性がリッチ状態を示すものからリーン状態を示すものに変化するか否かを監視する。アイドル劣化補正制御においては、二次エア供給弁４２７が開いている。このため、Ｏ２センサ３８は、燃焼室４に供給された混合気の燃焼排ガスそのものではなく、これに二次エアが加味され、場合によっては再燃焼が行われた後に排気マニホルド２３の下流部まで達した燃焼排ガスの酸素濃度に応じて、高電圧又は低電圧の信号を出力する。
【０１２９】
アイドル劣化補正制御が開始してから所定時間が経過したか否かを判断し、所定時間が経過するまでにＯ２センサ３８の出力特性がリーン状態を示すものに変化すると、アイドル補正係数ＦILAFを補正せずにアイドル劣化補正制御を継続する。アイドル劣化補正制御の実施中、Ｏ２センサの出力特性がリーン状態を示すものからリッチ状態を示すものに反転すると、この反転時点から所定時間が経過するまでの間にＯ２センサ３８の出力特性がリーン状態を示すものへと再び反転するか否かを監視する。
【０１３０】
所定時間内にＯ２センサ３８の出力特性がリーン状態を示すものに変化しなかった場合、インジェクタ開弁期間決定部４５２は、アイドル補正係数ＦILAFをその時点での値から所定の減少量だけ減少補正する。そして、この補正時点から所定時間が経過するまでの間にＯ２センサ３８の出力特性がリーン状態を示すものへと変化するか否かを監視する。Ｏ２センサ３８の出力特性がリーン状態を示すものへと変化するまで、所定時間おきに上記減少量ずつ減少補正し続ける。この補正により、内燃機関１がアイドリング状態であっても、劣化のために二次エア込みの空燃比が過リッチとなるのを良好に抑制することができる。このＯ２センサ３８の出力に基づくアイドル補正係数ＦILAFの減少補正は、燃焼状態が安定していると判定されているシリンダ３のみを対象にして実施される。
【０１３１】
Ｏ２センサ３８の出力に基づく減少補正は弱化や失火の遠因となるおそれもある。そこで、燃焼状態が不安定であると判断されると、その時点から安定していると判定されるまでの間、所定時間Δｔ３が経過するたびにアイドル補正係数ＦILAFを所定の増加量ずつ増加させる。それにより、Ｏ２センサ３８に基づく減少補正分を徐々に縮小していく。
【０１３２】
第１判定部４５６は巨視的に燃焼状態を判定しているので、第１判定部４５６が燃焼状態を不安定であると判定したときには、全シリンダ３のアイドル補正係数ＦILAFを一律に増加させる。第２判定部４５７はシリンダ３毎に燃焼状態を判定しているので、第２判定部４５７が燃焼状態を不安定であると判定したときには、そのように判定されたシリンダ３のアイドル補正係数ＦILAFのみを増加させる。このような補正を行うことにより、Ｏ２センサに基づくアイドル補正係数ＦILAFの過補正を防止することができる。なお、燃焼状態の判定結果に基づく補正は、アイドル補正係数ＦILAFが基準値に達した後は、それ以上アイドル係数ＦILAFの値を増加させないようにしてもよい。これにより、二次エア込みの空燃比がリッチ化するのを抑制することができる。
【０１３３】
図２３は、図１９に示す空燃比制御装置及びその異常診断装置により実行される空燃比制御及び異常診断の一例を示すフローチャートである。図２３に示すように、弁モータ１６の目標位置ひいては目標スロットル開度が決定され（Ｓ４０１）。標準値ＴBASEが決定され（Ｓ４０２）、内燃機関１がアイドリング状態であるか否かが判断される（Ｓ４０４）。アイドリング状態でなければ（Ｓ４０４：ＮＯ）、フィードバック実施条件の成否が判定される（Ｓ４０３）。フィードバック実施条件が不成立であれば（Ｓ４０３：ＮＯ）、非フィードバック制御が実施される。その一環として、フィードバック補正係数ＦFB及びアイドル補正係数ＦILAFが基準値に設定され（Ｓ４１１）、劣化補正係数ＦDLAFが決定される（Ｓ４１２）。フィードバック実施条件が成立していれば（Ｓ４０３：ＹＥＳ）、フィードバック制御が実施される。その一環として、劣化補正係数ＦDLAF及びアイドル補正係数ＦILAFが基準値に決定され（Ｓ４１３）。フィードバック補正係数ＦFBが決定される（Ｓ４１４）。すなわち、λ補正係数ＦO2RAMが第２対応関係６２に従って決定され、閉ループ補正係数ＦAFが空燃比検出手段の出力に基づいて決定され、実時学習係数ＦLLAF及び長期学習係数ＦRLAFが第３及び第４対応関係３６３，３６４に従って運転状態に基づき、また、空燃比検出手段の出力に基づいて決定される。次に、空燃比制御装置の異常診断処理が実行され（Ｓ４２０）、開弁期間ＴＡＵが決定される（Ｓ４３０）。
【０１３４】
内燃機関１がアイドリング状態であれば（Ｓ４０４：ＹＥＳ）、アイドル劣化補正制御が実施される。その一環として、フィードバック補正係数ＦFB及び劣化補正係数ＦDLAFが基準値に設定され（Ｓ４１５）、アイドル補正係数ＦILAFが決定される（Ｓ４１６）。アイドル補正係数ＦILAFの設定法は前述のとおりである。次に、異常診断処理Ｓ４２０に進んだ後、開弁期間ＴＡＵが決定される（Ｓ４３０）。このように、本実施形態では、アイドル劣化補正制御の実施中にも異常診断処理Ｓ４２０が実行される。異常診断処理Ｓ４２０の手順そのものは第１実施形態（図８参照）と同様であり、診断許可条件も第１実施形態と同様である。
【０１３５】
ステップＳ２２（図８参照）での異常の診断に関し、診断に用いる補正量の元となる補正量には、アイドル補正係数ＦILAFによる補正量ＴILAF、及びこれを決定づけるアイドル補正係数ＦILAFも含まれる。補正値は、各シリンダ３のアイドル補正係数ＦILAFの今回値を含む。比較値は、アイドル補正係数ＦILAFの今回値に対応して設定される。
【０１３６】
アイドル劣化補正制御の実施中では、異常条件が、アイドル補正係数ＦILAFの今回値が下限比較値を超えて許容範囲外に出ている状態を所定時間継続しているとの条件である。アイドル補正係数ＦILAF自体が上限に制限があるので、許容範囲の上限はアイドル補正係数ＦILAFの上限値（例えば、基準値）である。なお、非フィードバック制御の実施中における異常条件、フィードバック制御の実施中における異常条件は上記実施形態と同様である。本実施形態では、診断部４４４は、アイドル劣化補正制御の実施中にも、補正量に関連付けされた補正値と、補正量に関わらず設定される比較値とに基づいて空燃比制御装置の異常を診断することができる。
【０１３７】
（変更例）
劣化学習係数ＦDLAFの設定法に第２実施形態を適用するように第４実施形態が変更されてもよい。その場合、式（１Ｄ）は次式（２Ｄ2）に変形可能である。開弁期間ＴＡＵを決定するに際して劣化補正係数ＦDLAFを考慮しないように第４実施形態が変更されてもよい。その場合、式（１Ｄ）を次式（１Ｅ）に変更可能である。フィードバック補正係数ＦFBの設定法には第１、第２及び第３実施形態のいずれを適用してもよく、式（１Ｅ）は次式（２Ｅ1），（２Ｅ2）又は（２Ｅ3）に変形可能である。
【０１３８】
ＴＡＵ＝ＴBASE×ＦO2RAM×(１＋ＦAF＋ＦLAF)
×(１＋ＦDLAF)×ＦILAF      …(２Ｄ2)
ＴＡＵ＝ＴBASE×ＦFB×ＦILAF      …(１Ｅ)
ＴＡＵ＝ＴBASE×ＦO2RAM×(１＋ＦVFB)×ＦILAF      …(２Ｅ1)
ＴＡＵ＝ＴBASE×ＦO2RAM×(１＋ＦAF＋ＦLAF)×ＦILAF      …(２Ｅ2)
ＴＡＵ＝ＴBASE×ＦO2RAM×(１＋ＦAF＋ＦRLAF＋ＦLLAF)×ＦILAF      …(２Ｅ3)
開弁期間ＴＡＵを決定する式を上記のように変えると、異常条件もこれに応じて変更される。
【０１３９】
開弁期間ＴＡＵは、走行環境に応じて補正されてもよい。これにより、変動補正係数が、走行環境の変化による空燃比の誤差を補償しなくてもよくなる。このため、変動補正係数に基づいて設定される補正値を用いて、空燃比制御装置の異常を診断する精度が更に向上する。この場合、当該補正が第１実施形態に適用される場合は、式（２Ａ）を次式（３Ａ）に変更すればよい。他の実施形態及び上記変更例に適用する場合についても同様である。
【０１４０】
ＴＡＵ＝ＴBASE×ＦO2RAM×(１＋ＦKI＋ＦVFB)      …(３Ａ)
ＦKIは環境補正係数である。環境補正係数ＦKIは、内燃機関の冷却水温や吸気圧に応じて可変的に設定される。
【０１４１】
非フィードバック制御からフィードバック制御への移行時に、開弁期間が標準値から理論値へと変化するが、λ補正係数は基準値から運転状態に応じた値へと徐々に変化してもよい。これにより、モード移行時に燃料量が急変して内燃機関の出力が急変するのを抑えることができる。
【０１４２】
非フィードバック制御の実施中において、劣化補正係数ＦDLAFが、アイドル劣化補正制御と同様に、燃焼状態に応じて補正されてもよい。この場合、劣化補正係数ＦDLAFは、学習補正係数ＦLAFに基づいて第２又は第３実施形態のように学習補正係数ＦLAF（又は長期学習係数ＦLLAF）に基づいて全シリンダに共通して設定される代表補正係数と、燃焼状態が不安定であると判定されたときに代表補正係数を補正すべくシリンダに個別設定される燃焼状態補正係数とを含んでもよい。
【０１４３】
上記実施形態では、スロットル開度とエンジン回転数とから標準値ＴBASEを求めたが、スロットル開度に対応して変化する第１関連値、エンジン回転数に対応して変化する第２関連値とに基づいて標準値ＴBASEを求めてもよい。例えば、第１関連値として、給気通路の圧力である吸気圧を用いてもよいし、吸気圧とスロットル開度とを併用してもよい。第２関連値として、車速及び変速機のギヤ比を用いてもよいし、カム角センサの値を用いてもよい。このほか、他の演算方法又はマップを用いて標準値ＴBASEを求めてもよい。例えば、他の運転状態に応じて標準値ＴBASEが補正されてもよい。
【０１４４】
上記実施形態では、空燃比制御装置が空燃比を制御するためにインジェクタの開弁期間を補正し、その補正量に基づき空燃比制御装置の異常が診断されるが、空燃比制御装置は弁モータの位置ひいてはスロットル開度を補正してもよい。その場合、異常診断装置は、弁モータの位置又はスロットル開度の補正量に関連付けられた補正値と、これに対応する比較値との比較に基づいて空燃比制御装置の異常を診断してもよい。
【０１４５】
空燃比制御装置は空燃比を制御することができればよい。スロットル開度はそのための操作量と扱うことができるが、インジェクタの開弁期間を補正することで空燃比制御を実現できるのであれば、スロットル弁１５は必ずしも電動スロットル弁１５ａを含まなくてもよい。
【０１４６】
上記実施形態では内燃機関が４ストローク型であるが、内燃機関は２ストローク型でもよい。内燃機関の燃料は、ガソリン以外の燃料（例えば、エタノール、エタノール混合ガソリン、軽油）であってもよい。上記実施形態では内燃機関が多気筒型であるが、その場合における気筒の配列は特に限定されず、例えば並列型でもＶ型でもよい。内燃機関は単気筒型でもよい。本発明は、内燃機関を駆動源とする乗物に好適に利用することができ、内燃機関を備える装置全般に適用することができる。
【産業上の利用可能性】
【０１４７】
本発明は、内燃機関を備える装置全般に利用可能であり、特に、空燃比制御装置を搭載した乗物のＯＢＤ（On-Board Diagnostics）装置として利用可能である。
【符号の説明】
【０１４８】
１  内燃機関
１８  インジェクタ
３８  Ｏ２センサ
４０，２４０，３４０，４４０  ＥＣＵ
４１，２４１，３４１，４４１  記憶部
４３，２４３，３４３，４４３  操作量決定部
４４，２４４，３４４，４４４  診断部
５２，２５２，３５２，４５２  インジェクタ開弁期間決定部
６１  第１対応関係
６２  第２対応関係
【図１】
2015121112.tif 000003
【図２】
2015121112.tif 000004
【図３】
2015121112.tif 000005
【図４】
2015121112.tif 000006
【図５】
2015121112.tif 000007
【図６】
2015121112.tif 000008
【図７】
2015121112.tif 000009
【図８】
2015121112.tif 000010
【図９】
2015121112.tif 000011
【図１０】
2015121112.tif 000012
【図１１】
2015121112.tif 000013
【図１２】
2015121112.tif 000014
【図１３】
2015121112.tif 000015
【図１４】
2015121112.tif 000016
【図１５】
2015121112.tif 000017
【図１６】
2015121112.tif 000018
【図１７】
2015121112.tif 000019
【図１８】
2015121112.tif 000020
【図１９】
2015121112.tif 000021
【図２０】
2015121112.tif 000022
【図２１】
2015121112.tif 000023
【図２２】
2015121112.tif 000024
【図２３】
2015121112.tif 000025