(57)【要約】【課題】内燃機関の故障を判定する場合に、内燃機関の故障を特定すること。【解決手段】ＥＣＵは、サブフィードバック制御で用いる補正量が最大値に達したか否かを判定し、補正量が最大値に達したと判定した場合、空燃比検出手段から出力される空燃比が中央値を跨ぐ回数と、フィルタ処理を行ったフィルタ値を跨ぐ回数とを用いて内燃機関の故障を特定する。【選択図】図４
2018040322.tif 000002
【特許請求の範囲】
【請求項１】
複数の気筒を備える内燃機関の故障判定装置は、
前記内燃機関で燃焼された排気ガスを浄化する触媒の上流側に配置され、前記排気ガスの空燃比を検出する空燃比検出手段と、
前記触媒の下流側に配置され、前記排気ガスの酸素濃度を検出する酸素濃度検出手段と、
前記空燃比検出手段の出力を所定の空燃比を中央値としてリッチ側とリーン側とに強制振動させた際に酸素濃度検出手段により検出される酸素濃度に基づいて設定される補正量により前記中央値を補正する空燃比フィードバック制御とを行う制御手段と、
を備え、
前記制御手段は、
前記空燃比フィードバック制御で用いる前記補正量が最大値に達したか否かを判定する補正量判定手段と、
前記補正量が最大値に達したと判定した場合、前記空燃比検出手段から出力される空燃比が前記中央値を跨ぐ回数と、フィルタ処理を行ったフィルタ値を跨ぐ回数とを用いて前記内燃機関の故障を特定する故障特定手段と、
を備えることを特徴とする内燃機関の故障判定装置。
【請求項２】
前記制御手段は、
所定期間内に前記中央値を跨ぐ回数が所定回数以上であるか否かを判定する回数判定手段を有し、
前記回数判定手段で前記中央値を跨ぐ回数が所定回数を超えていると判定した場合、前記故障特定手段は、気筒間A/Fずれ故障が発生していると仮判定する、
ことを特徴とする請求項１に記載の内燃機関の故障判定装置。
【請求項３】
前記制御手段は、
所定期間内に前記中央値を跨ぐ回数が所定回数以上であるか否かを判定する回数判定手段を有し、
前記回数判定手段で前記中央値を跨ぐ回数が所定回数以下であると判定した場合、前記故障特定手段は、前記空燃比検出手段または前記酸素濃度検出手段に故障が発生していると仮判定する、
ことを特徴とする請求項１または２に記載の内燃機関の故障判定装置。
【請求項４】
前記制御手段は、
前記フィルタ値を跨ぐ回数を前記中央値を跨ぐ回数で除した除算値が所定値以上であるか否か判定する第１除算値判定手段を備え、
前記第１除算値判定手段で前記除算値が前記所定値以上であると判定した場合、前記故障特定手段は、気筒間A/Fずれ故障が発生していると特定する、
ことを特徴とする請求項１から３の何れか一項に記載の内燃機関の故障判定装置。
【請求項５】
前記制御手段は、
前記フィルタ値を跨ぐ回数を前記中央値を跨ぐ回数で除した除算値が前記所定値以下であるか否か判定する第２除算値判定手段を備え、
前記第２除算値判定手段で前記除算値が前記所定値以下であると判定した場合、前記故障特定手段は、前記空燃比検出手段または前記酸素濃度検出手段の故障であることを特定する、
ことを特徴とする請求項１から４の何れか一項に記載の内燃機関の故障判定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の故障判定装置に関する。
【背景技術】
【０００２】
反応遅れ条件が所定回数満たされた場合に空燃比センサには反応遅れの異常が生じていると判定する反応遅れ判定部と、反応遅れ判定部の判定結果に基づき空燃比センサの異常を診断するセンサ異常診断部とを備えて構成した空燃比検出センサ異常診断装置が知られている（下記、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５３８１７６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
空燃比センサを含む内燃機関において、空燃比検出センサにより検出される空燃比を目標空燃比に一致させるように制御するメインフィードバック制御と、酸素濃度検出手段により検出される酸素濃度に基づいて設定される補正量により燃料供給量を補正するサブフィードバック制御とを行う種類がある。
【０００５】
このような種類の内燃機関において、サブフィードバック制御を行う場合、サブフィードバックを行うための補正量が予め設定されており、この補正量が最大値に達した際に内燃機関の故障を判定する制御になっていることがある。これは、補正量を最大値まで使いきるような場合、内燃機関から排出される排気ガスが悪化するためである。なお、上記特許文献１には、サブフィードバック補正の補正量が最大値に達した際に内燃機関の故障を判定することについて言及されていない。
【０００６】
また、内燃機関に故障が発生した場合、作業者が修理を行う必要がある。上記サブフィードバックが過剰に進行する故障として、空燃比センサの非対称故障(リッチ→リーン、リーン→リッチいずれかの応答のみが遅れる故障)や気筒間の空燃比(A/F)ずれ故障が想定されるが、内燃機関のいずれの箇所が故障しているのかがわからず、修理する場合に故障を特定するのに多くの時間を要していた。したがって、内燃機関の故障が判定された場合に、故障を特定できる技術が求められている。
【０００７】
本発明は、上記事情に鑑みてなされたものであり、内燃機関の故障を判定する場合に、内燃機関の故障を特定することができる内燃機関の故障判定装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の複数の気筒を備える内燃機関の故障判定装置は、前記内燃機関で燃焼された排気ガスを浄化する触媒の上流側に配置され、前記排気ガスの空燃比を検出する空燃比検出手段と、前記触媒の下流側に配置され、前記排気ガスの酸素濃度を検出する酸素濃度検出手段と、前記空燃比検出手段の出力を所定の空燃比を中央値としてリッチ側とリーン側とに強制振動させた際に酸素濃度検出手段により検出される酸素濃度に基づいて設定される補正量により前記中央値を補正する空燃比フィードバック制御とを行う制御手段と、を備える。また、前記制御手段は、前記空燃比フィードバック制御で用いる前記補正量が最大値に達したか否かを判定する補正量判定手段と、前記補正量が最大値に達したと判定した場合、前記空燃比検出手段から出力される空燃比が前記中央値を跨ぐ回数と、フィルタ処理を行ったフィルタ値を跨ぐ回数とを用いて前記内燃機関の故障を特定する故障特定手段と、を備えることを特徴とする。
【０００９】
このように構成された故障判定装置は、フィードバック制御で用いる補正量が最大値に達したと判定した場合、中央値を跨ぐ回数と、フィルタ値を跨ぐ回数とを用いて内燃機関の故障の形態を特定することができる。
【００１０】
また、前記制御手段は、所定期間内に前記中央値を跨ぐ回数が所定回数以上であるか否かを判定する回数判定手段を有し、前記回数判定手段で前記中央値を跨ぐ回数が所定回数を超えていると判定した場合、前記故障特定手段は、気筒間A/Fずれ故障が発生していると仮判定するようにしても良い。これにより、故障判定装置は、気筒間A/Fずれ故障が発生している可能性があることを判定することができる。
【００１１】
また、前記制御手段は、所定期間内に前記中央値を跨ぐ回数が所定回数以上であるか否かを判定する回数判定手段を有し、前記回数判定手段で前記中央値を跨ぐ回数が所定回数以下であると判定した場合、前記故障特定手段は、前記空燃比検出手段または前記酸素濃度検出手段に故障が発生していると仮判定するようにしても良い。これにより、故障判定装置は、空燃比検出手段に故障が発生している可能性があることを判定することができる。
【００１２】
さらに、故障判定装置の制御手段は、前記フィルタ値を跨ぐ回数を前記中央値を跨ぐ回数で除した除算値が所定値以上であるか否か判定する第１除算値判定手段を備え、前記第１除算値判定手段で前記除算値が前記所定値以上であると判定した場合、前記故障特定手段は、気筒間A/Fずれ故障が発生していると特定するようにしても良い。これにより、故障判定装置は、気筒間A/Fずれ故障であると特定することが可能になる。
【００１３】
さらに、故障判定装置の制御手段は、前記フィルタ値を跨ぐ回数を前記中央値を跨ぐ回数で除した除算値が前記所定値以下であるか否か判定する第２除算値判定手段を備え、前記第２除算値判定手段で前記除算値が前記所定値以下であると判定した場合、前記故障特定手段は、前記空燃比検出手段または前記酸素濃度検出手段の故障であることを特定するようにしても良い。これにより、故障判定装置は、空燃比検出手段または酸素濃度算出手段の故障であると特定することが可能になる。
【発明の効果】
【００１４】
本発明によれば、内燃機関の故障を判定する場合に、内燃機関の故障を特定することができる内燃機関の故障判定装置を提供することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１の実施形態に係る内燃機関の故障判定装置の概略的な構成の一例を示す図。
【図２】同第１の実施形態に係る内燃機関の故障を特定する原理を説明するための図。
【図３】同第１の実施形態に係るＬＡＦＳの故障であることを確定する処理の一例を説明するための図である。
【図４】同第１の実施形態に係る気筒間A/Fずれ故障であることを確定する処理の一例を説明するための図である。
【図５】同第１の実施形態に係る内燃機関の故障を特定する処理の一例を示すフローチャート。
【図６】図５の計数処理の詳細の一例を示すサブフローチャート。
【図７】本発明の第２の実施形態に係る内燃機関の故障を特定する処理の一例を示すフローチャート。
【発明を実施するための形態】
【００１６】
以下、本発明の実施の各形態について図面を参照しながら説明する。  
（第１の実施形態）
図１は、本第１の実施形態に係る内燃機関の故障判定装置の概略的な構成の一例を示す図である。  
図１に示すように、内燃機関（エンジン）１は、シリンダブロック２に形成された燃焼室３の内部で燃料および空気の混合気を燃焼させ、燃焼室３内でピストンを往復移動させることにより動力を発生する。本第１の実施形態において、内燃機関１は、車両に搭載された多気筒内燃機関であり、例えば、直列４気筒の火花点火式内燃機関である。なお、本第１の実施形態においては、直列４気筒の火花点火式内燃機関の場合で説明するが、複数の気筒を備える内燃機関に本発明を適用することが可能である。
【００１７】
内燃機関１のシリンダヘッドには、吸気ポートを開閉する吸気弁（図示省略）と、排気ポートを開閉する排気弁（図示省略）とが気筒ごとに配設されており、各吸気弁および各排気弁は、カムシャフト又はソレノイドアクチュエータによって開閉させられる。シリンダヘッドの頂部には、燃焼室３内の混合気を点火するための点火プラグ７が気筒ごとに取り付けられている。
【００１８】
各気筒の吸気ポートは、気筒毎の枝管４を介して、サージタンク８に接続されている。サージタンク８の上流側には吸気管１３が接続されており、吸気管１３はエアクリーナ９に連結されている。
【００１９】
吸気管１３には、吸入空気量（単位時間当たりの吸入空気の量すなわち吸気流量）を検出するためのエアフローメータ５と、電子制御式のスロットルバルブ１０とが組み込まれている。吸気ポート、枝管４、サージタンク８および吸気管１３により、吸気通路が形成される。
【００２０】
吸気通路、特に吸気ポート内に燃料を噴射するインジェクタ（燃料噴射弁）１２が、気筒ごとに配設される。インジェクタ１２から噴射された燃料は吸入空気と混合されて混合気となり、この混合気が吸気弁の開弁時に燃焼室３に吸入され、ピストンで圧縮され、点火プラグ７で点火燃焼させられる。
【００２１】
各気筒の排気ポートは、排気マニフォールド１４に接続される。排気マニフォールド１４は、その上流部の気筒毎の枝管と、その下流部の排気集合部とからなる。排気集合部の下流側には、排気管６に接続されている。排気ポート、排気マニフォールド１４および排気管６により排気通路が形成される。
【００２２】
排気管６には、三元触媒からなる触媒１１が取り付けられている。この触媒１１は、例えばアルミナに、白金（Ｐｔ）、パラジウム（Ｐｈ）あるいはロジウム（Ｒｄ）などの貴金属を担持させたものである。触媒１１により、一酸化炭素（ＣＯ）、炭化水素（ＨＣ）および窒素酸化物（ＮＯｘ）等をまとめて触媒反応により浄化できるようになっている。
【００２３】
排気ガスの空燃比を検出するために、触媒１１の上流側に触媒上流空燃比センサ（以下、ＬＡＦＳという：空燃比検出手段）１７が設置され、かつ触媒１１の下流側に下流酸素センサ（以下、ＲＯ２Ｓという：酸素濃度検出手段）１８が設置されている。ＬＡＦＳ１７は触媒１１の直前の位置に設置され、ＲＯ２Ｓ１８は触媒１１の直後の位置に設置され、いずれも排気ガス中の酸素濃度に基づいて空燃比を検出する。
【００２４】
点火プラグ７、スロットルバルブ１０、およびインジェクタ１２等は、制御手段としてのＥＣＵ（Electronic Control Unit）２０に接続されている。ＥＣＵ２０は、ＣＰＵ、ＲＯＭ、ＲＡＭ、入出力ポート、および記憶装置等を含むものである。また、ＥＣＵ２０には、ストイキに対する出力反転回数ＮＬＡＦａを記憶するメモリ２０ａ、フィルタ値に対する出力反転回数ＮＬＡＦｂを記憶するメモリ２０ｂ、及び内燃機関１の故障を特定する際に用いられる閾値回数Ｘを記憶するメモリ２０ｃを有している。出力反転回数ＮＬＡＦａ、出力反転回数ＮＬＡＦｂについての詳細は後述する。
【００２５】
ＥＣＵ２０には、図示されるように、前述のエアフローメータ５、ＬＡＦＳ１７、ＲＯ２Ｓ１８のほか、内燃機関１のクランク角を検出するクランク角センサ１６、アクセル開度を検出するアクセル開度センサ１５、その他の各種センサが接続されている。
【００２６】
ＥＣＵ２０は、各種センサの検出値等に基づいて、所望の出力が得られるように、点火プラグ７、スロットルバルブ１０、インジェクタ１２等を制御し、点火時期、スロットル開度、燃料噴射量、および燃料噴射時期等を制御する。
【００２７】
ＬＡＦＳ１７は、広域空燃比センサからなり、比較的広範囲に亘る空燃比を連続的に検出可能である。ＬＡＦＳ１７は、検出した排気空燃比に概ね比例した大きさの電圧信号Ｖｆを出力する。排気空燃比がストイキ（理論空燃比、例えばＡ／Ｆ＝１４．６）であるときの出力電圧はＶｒｅｆｆ（例えば約２．３Ｖ）である。
【００２８】
他方、ＲＯ２Ｓ１８は、ストイキを境に出力値が急変する特性を持つ。排気空燃比がストイキであるときの出力電圧、すなわちストイキ相当値はＶｒｅｆｒ（例えば０．４５Ｖ）である。ＲＯ２Ｓ１８の出力電圧は所定の範囲（例えば０〜１（Ｖ））内で変化する。排気空燃比がストイキよりリーンのとき、ＲＯ２Ｓの出力電圧はストイキ相当値Ｖｒｅｆｒより低くなり、排気空燃比がストイキよりリッチのとき、ＲＯ２Ｓの出力電圧はストイキ相当値Ｖｒｅｆｒより高くなる。
【００２９】
触媒１１は、流入する排気ガスの空燃比（Ａ／Ｆ）がストイキ近傍のときにＮＯｘ、ＨＣおよびＣＯを同時に浄化するが、この三者を同時に高効率で浄化できる空燃比の幅は比較的狭くなっている。
【００３０】
触媒１１に流入する排気ガスの空燃比がストイキ近傍に制御されるように、空燃比制御（ストイキ制御）がＥＣＵ２０により実行される。この空燃比制御は、ＬＡＦＳ１７によって検出された排気ガスの空燃比を所定の目標空燃比であるストイキに一致させるようなメインフィードバック制御（主空燃比制御）と、ＲＯ２Ｓ１８の出力値に基づいて設定される補正量により燃料供給量を補正する制御、より詳細には、ＬＡＦＳ１７の出力を所定の空燃比を中央値としてリッチ側とリーン側とに強制振動させた際にＲＯ２Ｓ１８により検出される酸素濃度に基づいて設定される補正量により中央値を補正するサブフィードバック制御（空燃比フィードバック制御）とからなる。このように２種類のフィードバック制御を行う目的は、検出素子の熱劣化に起因する誤差を生じやすいＬＡＦＳ１７の出力を、ＲＯ２Ｓ１８の出力によって補正することにある。
【００３１】
また、サブフィードバックは、排気ガスの熱によりＬＡＦＳ１７が劣化すること等により、ＬＡＦＳ１７の出力にずれが生じる場合があるために実行され、ＬＡＦＳ１７の出力値に生じたずれを、ＲＯ２Ｓ１８を用いたサブフィードバック制御により補償して、ＬＡＦＳ１７の出力値が実際の排気空燃比に対応した値となるように補正する。
【００３２】
ここで、ＬＡＦＳ１７の劣化が大きい場合は、つまり、ＬＡＦＳ１７の出力と、ＲＯ２Ｓ１８の出力との出力ずれが大きい場合は、サブフィードバックの補正量を最大値まで使いきってしまい、内燃機関１からの排気ガスが悪化するため、ＥＣＵ２０は、内燃機関１の故障を判定する。
【００３３】
次に、内燃機関１の故障を判定する場合に、内燃機関１の故障を特定する方法について図２を参照して説明する。車両走行中のＬＡＦＳ１７の出力（空燃比）は、既述のように所定の目標空燃比であるストイキに一致させようとする制御が行われる。言い換えれば、ストイキを中心として振動的に制御される。本発明では、この制御を利用して、内燃機関１の故障を特定する。
【００３４】
図２の縦軸は、ＬＡＦＳ１７から出力される空燃比（Ａ／Ｆ）を示しており、横軸は時間Ｔを示している。また、図２（ａ）は、内燃機関１が正常に作動、つまり、故障なく作動している場合のＬＡＦＳ１７出力の波形を示しており、図２（ｂ）は、ＬＡＦＳ１７にリッチ→リーン、リーン→リッチいずれか片側の応答のみが悪化する故障が発生した場合の波形を示しており、図２（ｃ）は、気筒間A/Fずれ故障が発生した場合の波形を示している。また、ストイキと、各波形との交点の黒丸は、出力反転回数ＮＬＡＦａのカウント箇所になっている。
【００３５】
内燃機関１が故障なく作動している場合は、図２（ａ）に示すように、ＬＡＦＳ１７の出力波形は、均等な正弦波になる。また、内燃機関１にＬＡＦＳ１７の非対称故障が発生している場合は、図２（ｂ）に一例を示すように、出力反転回数ＮＬＡＦａは、正常な場合（参照：図２（ａ））と同じ、又はそれ以下の回数になる。さらに、内燃機関１に気筒間A/Fずれ故障が発生している場合、ＬＡＦＳ１７の出力に高周波成分が発生し周期の短い乱れた波形になり、正常な場合（参照：図２（ａ））と比較して、図２（ｃ）に示すように、交点が多数発生するようになっている。よって、出力反転回数ＮＬＡＦｂは、正常な場合やＬＡＦＳ１７に故障が発生した場合（参照：図２（ｂ））と比較して多い回数になる。
【００３６】
したがって、適切な閾値回数Ｘ（例えば、正常な場合に所定期間内で反転する回数より多い回数）をメモリ２０ｃに設定し、このように設定される閾値回数Ｘ、既述の出力反転回数ＮＬＡＦａ、及び出力反転回数ＮＬＡＦｂを用いることにより、内燃機関１に故障が発生した場合に、内燃機関１のいずれの箇所に故障が発生しているかを特定することが可能になる。より具体的には、所定期間内にストイキに対する出力反転回数ＮＬＡＦａ（中央値を跨ぐ回数）が閾値回数Ｘ以上であるか否かを判定し、閾値回数Ｘを超えていると判定した場合、気筒間A/Fずれ故障が発生していると仮判定し、閾値回数Ｘを超えていないと判定した場合、ＬＡＦＳ１７に故障が発生していると仮判定することができる。
【００３７】
そして、このように内燃機関１の故障をＬＡＦＳ１７の故障であるか、内燃機関１の故障であるかを仮判定した後、ＬＡＦＳ１７の故障であるか否か、気筒間A/Fずれ故障であるか否かを確定する処理を実行することができる。本第１の実施形態においては、出力反転回数ＮＬＡＦｂ（フィルタ値を跨ぐ回数）を計数することにより、内燃機関１の故障を特定する処理が実行される。
【００３８】
図３は、ＬＡＦＳ１７の故障であることを確定する処理の一例を説明するための図である。図３に示すように、センサ出力の一次遅れとなるフィルタ値を設定し、この設定したフィルタ値に対して、ＬＡＦＳ１７から出力される空燃比が反転したか否かを示す出力反転回数ＮＬＡＦｂをカウントする。図３に示すように、このときの出力反転回数ＮＬＡＦｂは、３回になっている。一方、図２（ｂ）の場合のストイキに対する出力反転回数ＮＬＡＦｂは、４回である。
【００３９】
ＬＡＦＳ１７の故障であると仮判定した場合に、ストイキに対する出力反転回数ＮＬＡＦａと、フィルタ値に対する出力反転回数ＮＬＡＦｂとを用いて、ＥＣＵ２０は、仮判定からＬＡＦＳ１７の故障であると特定することが可能になる。具体的には、本第１の実施形態において、フィルタ値に対する出力反転回数ＮＬＡＦｂ（フィルタ値を跨ぐ回数）をストイキに対する出力反転回数ＮＬＡＦａ（中央値を跨ぐ回数）で除した値（以下、除算値という）が所定値以下であるか否か判定し、所定値以下であると判定した場合に、ＬＡＦＳ１７の故障であることを特定する。所定値は、任意に設定することが可能である。
【００４０】
図４は、内燃機関１の故障であることを確定する処理の一例を説明するための図である。図４に示すように、センサ出力の一次遅れとなるフィルタ値を設定し、この設定したフィルタ値に対して、ＬＡＦＳ１７から出力される空燃比が反転したか否かを示す出力反転回数ＮＬＡＦｂをカウントする。図４に示すように、このときの出力反転回数ＮＬＡＦｂは、３３回になっている。一方、図２（ｂ）の場合のストイキに対する出力反転回数ＮＬＡＦｂは、９回である。
【００４１】
内燃機関１の故障であると仮判定した場合に、ストイキに対する出力反転回数ＮＬＡＦａと、フィルタ値に対する出力反転回数ＮＬＡＦｂとを用いて、ＥＣＵ２０は、仮判定から気筒間A/Fずれ故障であると特定することが可能になる。本第１の実施形態においては、具体的には、ＥＣＵ２０がフィルタ値に対する出力反転回数ＮＬＡＦｂ（フィルタ値を跨ぐ回数）をストイキに対する出力反転回数ＮＬＡＦａ（中央値を跨ぐ回数）で除した値（以下、除算値という）が所定値以上であるか否か判定し、所定値以上であると判定した場合に、気筒間A/Fずれ故障が発生していると特定する。本実施形態において所定値は既述の所定値と同じ値である。
【００４２】
次に、内燃機関１の故障を判定した場合に、故障を特定する処理について説明する。  
図５は、ＥＣＵ２０が実行する内燃機関１の故障を特定する処理の一例を示すフローチャートである。この処理は、例えば、内燃機関１の動作中（車両走行中）に常時実行される。
【００４３】
図５に示すように、ＥＣＵ２０は、サブフィードバック制御に用いる補正量が最大値を超えたか否かを判定する（ＳＴ２０１：補正量判定手段）。より詳細には、ＥＣＵ２０は、サブフィードバック制御に用いる補正量が、予め設定された補正を容認する最大値を超えたか否かを判定する。補正量の最大値を超えていないと判定した場合（ＳＴ２０１：ＮＯ）、処理は、終了する。
【００４４】
また、補正量の最大値を超えていると判定した場合（ＳＴ２０１：ＹＥＳ）、言い換えると、内燃機関１に故障があると判定した場合、ＥＣＵ２０は、計数処理を実行する（ＳＴ１０２）。ここで、計数処理についてより詳細に説明する。図６は、計数処理の詳細の一例を示すフローチャートである。本第１の実施形態においては、ストイキに対する出力反転回数ＮＬＡＦａ、及びフィルタ値に対する出力反転回数ＮＬＡＦｂの２つを順次計数する処理について説明する。なお、本第１の実施形態においては、出力反転回数ＮＬＡＦは、サブフィードバック制御に用いる補正量が最大値を超えたときに計数される場合で説明するが、所定期間毎にカウントされるよう構成し、内燃機関１に故障があると判定したときに、ＥＣＵ２０がそのカウント値を参照するように構成しても良い。
【００４５】
図６に示すように、ＥＣＵ２０は、フィルタ値を設定する（ＳＴ２０１）。フィルタ値は、既述のようにストイキに所定量加算させた値である。なお、フィルタ値は、予め設定しておくように構成しても良い。
【００４６】
次に、ＥＣＵ２０は、ＬＡＦＳ１７からの出力空燃比（Ａ／Ｆ）を取得する（ＳＴ２０２）。次に、ＥＣＵ２０は、出力空燃比がストイキに対して反転したか否かを判定する（ＳＴ２０２）。車両走行中のＬＡＦＳ１７の出力空燃比は、ストイキを中心として振動的に制御されるため（参照：図２）、ＥＣＵ２０は、出力空燃比がストイキに対して、正側から負側に、又は負側から正側に反転したか否かに基づいて、この判定を実行する。そして、出力反転したと判定した場合（ＳＴ２０３：ＹＥＳ）、ＥＣＵ２０は、出力が反転したことをメモリ２０ａに記憶する（ＳＴ２０４）。このようにして、ストイキに対する出力反転回数ＮＬＡＦａがカウントされる。なお、出力判定していない場合（ＳＴ２０３：ＮＯ）、メモリ２０ａには、カウントされず、ステップＳＴ２０５の処理へ進む。
【００４７】
ストイキに対する出力反転の処理（ＳＴ２０３，ＳＴ２０４）をした後、ＥＣＵ２０は、ステップＳＴ２０２で取得する出力空燃比がフィルタ値に対して反転したか否かを判定する（ＳＴ２０５）。ＥＣＵ２０は、ＬＡＦＳ１７からの出力空燃比の値がフィルタ値に対して、正側から負側に、又は負側から正側に反転したか否かに基づいて、この判定を実行する。そして、出力反転したと判定した場合（ＳＴ２０５：ＹＥＳ）、ＥＣＵ２０は、出力が反転したことをメモリ２０ｂに記憶する（ＳＴ２０６）。このようにして、ストイキに対する出力反転回数ＮＬＡＦｂがカウントされる。なお、出力判定していない場合（ＳＴ２０５：ＮＯ）、メモリ２０ｂには、カウントされず、ステップＳＴ２０７の処理へ進む。
【００４８】
次に、ＥＣＵ２０は、ＬＡＦＳ１７の出力値の取得を開始してから所定時間が経過したか否かを判定する（ＳＴ２０７）。所定時間が経過かしていないと判定した場合（ＳＴ２０７：ＮＯ）、処理はステップＳＴ２０２へ戻る。このようにして、所定時間内のストイキ、及びフィルタ値に対する出力反転回数ＮＬＡＦａ，ＮＬＡＦｂがそれぞれカウントされる。所定時間が経過したと判定した場合（ＳＴ２０７：ＹＥＳ）、ステップＳＴ１０２の計数処理が終了する。
【００４９】
ここで、図５に戻り説明を続ける。  
ステップＳＴ１０２の計数処理が終了すると、ＥＣＵ２０は、ストイキに対する出力反転回数ＮＬＡＦａが閾値回数Ｘを超えているか否かに基づいて、内燃機関１の故障を判定する処理を実行する（ＳＴ１０３：回数判定手段）。閾値回数Ｘを超えていると判定した場合（ＳＴ１０３：ＹＥＳ）、ＥＣＵ２０は、内燃機関１の故障が気筒間A/Fずれ故障であると仮判定する（ＳＴ１０４：故障特定手段）。
【００５０】
次に、ＥＣＵ２０は、除算値を算出する（ＳＴ１０５）。ここで、除算値は、フィルタ値を跨ぐ回数をストイキを跨ぐ回数で除した値である。本第１の実施形態においては、メモリ２０ｂに記憶されているフィルタ値に対する出力反転回数ＮＬＡＦｂをメモリ２０ａに記憶されるストイキに対する出力反転回数ＮＬＡＦａで除した値である。
【００５１】
次に、ＥＣＵ２０は、算出した除算値が所定値以上であるか否かを判定する（ＳＴ１０６：第１除算値判定手段）。ここで、所定値は、任意に設定することが可能である。
【００５２】
除算値が所定値以上であると判定した場合（ＳＴ１０６：ＹＥＳ）、ＥＣＵ２０は、内燃機関１の故障を気筒間A/Fずれ故障であると確定し（ＳＴ１０７：故障特定手段）、ステップＳＴ１１２へ進む。また、除算値が所定値以上でないと判定した場合（ＳＴ１０６：ＮＯ）、ステップＳＴ１０７の処理は行われずに処理はステップＳＴ１１２へ進む。
【００５３】
そして、ＥＣＵ２０は、判定結果を出力する（ＳＴ１１２）。より詳細には、ＥＣＵ２０は、除算値が所定値以上であると判定した場合（ＳＴ１０６：ＹＥＳ）、内燃機関１に気筒間A/Fずれが発生していることを出力し、除算値が所定値以上でないと判定した場合（ＳＴ１０６：ＮＯ）、内燃機関１に気筒間A/Fずれが発生している可能性があることを出力する。
【００５４】
一方、ステップＳＴ１０３において、閾値回数Ｘを超えていないと判定した場合（ＳＴ１０３：ＮＯ）、ＥＣＵ２０は、内燃機関１の故障がＬＡＦＳ１７の故障であると仮判定する（ＳＴ１０８：故障特定手段）。そして、ＥＣＵ２０は、既述のステップＳＴ１０５の処理と同様に除算値を算出する（ＳＴ１０９）。
【００５５】
次に、ＥＣＵ２０は、算出した除算値が所定値以下であるか否かを判定する（ＳＴ１１０：第２除算値判定手段）。除算値が所定値以下であると判定した場合（ＳＴ１１０：ＹＥＳ）、ＥＣＵ２０は、内燃機関１の故障をＬＡＦＳ１７の故障であると確定し（ＳＴ１１１：故障特定手段）、処理はステップＳＴ１１２へ進む。また、除算値が所定値以下でないと判定した場合（ＳＴ１１０：ＮＯ）、ステップＳＴ１１１の処理は行われずに処理はステップＳＴ１１２へ進む。
【００５６】
そして、ＥＣＵ２０は、判定結果を出力する（ＳＴ１１２）。より詳細には、ＥＣＵ２０は、除算値が所定値以下であると判定した場合（ＳＴ１１０：ＹＥＳ）、ＬＡＦＳ１７に故障が発生していることを出力し、除算値が所定値以下でないと判定した場合（ＳＴ１１０：ＮＯ）、ＬＡＦＳ１７に故障が発生している可能性があることを出力する。
【００５７】
判定結果の出力は、例えば、内燃機関１が搭載される車両の運転席の表示部に表示される。これにより、ドライバが内燃機関１の故障の形態を容易に把握することが可能になる。本第１の実施形態においては、内燃機関１の故障の形態は、内燃機関１に故障が発生していること、内燃機関１に故障が発生している可能性があること、ＬＡＦＳ１７が故障していること、及びＬＡＦＳ１７に故障が発生している可能性があること、の４つである。
【００５８】
したがって、ＥＣＵ２０は、サブフィードバック制御で用いる補正量が最大値に達したと判定した場合、ストイキに対する出力反転回数ＮＬＡＦａと、フィルタ値に対する出力反転回数ＮＬＡＦｂとを用いて内燃機関１の故障を複数の故障の形態のうちから特定することができる。
【００５９】
また、ＥＣＵ２０は、ストイキに対する出力反転回数ＮＬＡＦａが閾値回数Ｘを超えていると判定した場合、気筒間A/Fずれ故障が発生していると仮判定することができる。これにより、ＥＣＵ２０は、気筒間A/Fずれ故障が発生している可能性があることを判定することができる。
【００６０】
さらに、ＥＣＵ２０は、フィルタ値に対する出力反転回数ＮＬＡＦｂをストイキに対する出力反転回数ＮＬＡＦａで除した除算値が所定値以上であると判定した場合、気筒間A/Fずれ故障が発生していると特定することができる。これにより、ＥＣＵ２０は、気筒間A/Fずれ故障であると特定することが可能になる。
【００６１】
また、ＥＣＵ２０は、ストイキに対する出力反転回数ＮＬＡＦａが閾値回数Ｘを超えていないと判定した場合、ＬＡＦＳ１７に故障が発生していると仮判定することができる。これにより、ＥＣＵ２０は、ＬＡＦＳ１７の故障が発生している可能性があることを判定することができる。
【００６２】
さらに、ＥＣＵ２０は、フィルタ値に対する出力反転回数ＮＬＡＦｂをストイキに対する出力反転回数ＮＬＡＦａで除した除算値が所定値以下であると判定した場合、ＬＡＦＳ１７の故障であることを特定することができる。これにより、ＥＣＵ２０は、ＬＡＦＳ１７の故障であると特定することが可能になる。
【００６３】
（第２の実施形態）
本第２の実施形態が第１の実施形態と異なるのは、内燃機関１の故障の形態を特定する処理について、仮判定を行わずに、内燃機関１の故障を特定するようにした点である。したがって、以下では、第１の実施形態と異なる処理について詳細に説明することとする。なお、第１の実施形態と同一の構成には同一の符号を付し、説明は省略する。
【００６４】
図７は、ＥＣＵ２０が実行する内燃機関１の故障を特定する処理の一例を示すフローチャートである。なお、ステップＳＴ２０１からＳＴ２０４と、第１実施形態のステップＳＴ１０１，ＳＴ１０２，ＳＴ１０５，ＳＴ１０６の処理と、第２の実施形態のステップＳＴ２０１からＳＴ２０４の処理とはそれぞれ同一の処理であるため（参照：図５）、ステップＳＴ２０５の処理から説明をする。
【００６５】
ステップＳＴ２０４において、除算値が所定値より大きいと判定した場合（ＳＴ２０４：ＹＥＳ）、ＥＣＵ２０は、内燃機関１の故障を気筒間A/Fずれ故障であると確定し（ＳＴ２０５）、ステップＳＴ２０７の処理へ進む。
【００６６】
また、除算値が所定値以上でないと判定した場合（ＳＴ２０４：ＮＯ）、ＥＣＵ２０は、内燃機関１の故障をＬＡＦＳ１７の故障であると確定し（ＳＴ２０６）、ステップＳＴ２０７の処理へ進む。
【００６７】
次に、ＥＣＵ２０は、結果を出力する（ＳＴ２０７）。除算値が所定値以上である場合は内燃機関１の故障が気筒間A/Fずれ故障であることを、所定値以下である場合はＬＡＦＳ１７に故障が発生していることを出力する。なお、除算値が所定値以上でもなく、所定値以下でもない場合は、故障が確定できないため、本第２の実施形態では、内燃機関１に故障が発生していることのみを出力する。
【００６８】
このように構成しても、ＥＣＵ２０は、サブフィードバック制御で用いる補正量が最大値に達したと判定した場合、ストイキに対する出力反転回数ＮＬＡＦａと、フィルタ値に対する出力反転回数ＮＬＡＦｂとを用いて内燃機関１の故障を複数の故障の形態のうちから特定することができる。
【００６９】
なお、上記各実施形態では、気筒間A/Fずれ故障であるか、ＬＡＦＳ１７の故障であるかに関する判定を所定値により行う場合で説明したが、これに限るものではなく、故障形態に応じて異なる所定値を用いるようにしても良い。また、上記各実施形態では、気筒間A/Fずれ故障であるか、ＬＡＦＳ１７の故障であるかを判定する場合で説明したが、気筒間A/Fずれ故障であるか、ＬＡＦＳ１７またはＲＯ２Ｓ１８の故障であるかを判定するようにしても良い。
【００７０】
この発明は、上述した実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上述した実施の形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、上述した実施の形態に示される全構成要素から幾つかの構成要素を削除しても良い。さらに、異なる実施形態の構成を組み合わせてもよい。
【符号の説明】
【００７１】
１…内燃機関、１７…ＬＡＦＳ（空燃比検出手段）、１８…ＲＯ２Ｓ（酸素濃度検出手段）、２０…ＥＣＵ、２０ａ，２０ｂ，２０ｃ…メモリ、Ｘ…閾値回数、ＮＬＡＦａ，ＮＬＡＦｂ…出力反転回数
【図１】
2018040322.tif 000003
【図２】
2018040322.tif 000004
【図３】
2018040322.tif 000005
【図４】
2018040322.tif 000006
【図５】
2018040322.tif 000007
【図６】
2018040322.tif 000008
【図７】
2018040322.tif 000009