(57)【要約】【課題】多気筒エンジン１の、空燃比の気筒間ずれの診断精度を高める。【解決手段】例示的診断方法は、多気筒エンジン１と、多気筒エンジン１の排気通路９５に設置したセンサ４７とを有するエンジンシステムにおいて、センサ４７が出力する、各気筒内の空燃比に関連したセンシング値を用いて多気筒エンジン１の診断を行う。この診断方法は、プロセッサ２１１が、互いに離れたタイミングでセンサ４７が出力した２つのセンシング値の差分の二乗を演算する工程、プロセッサ２１１が、二乗値を、所定回数分、積算する工程、及び、プロセッサ２１１が、前記積算値である診断パラメータに基づいて多気筒エンジン１の診断を行う工程、を含む。【選択図】図３
2011208629.tif 000002
【特許請求の範囲】
【請求項１】
多気筒エンジンと、当該多気筒エンジンの排気通路に設置したセンサと、を有するエンジンシステムにおいて、前記センサが出力する、各気筒内の空燃比に関連したセンシング値を用いて前記多気筒エンジンの診断を行う方法であって、
プロセッサが、互いに離れたタイミングで前記センサが出力した２つのセンシング値の差分の二乗を演算する工程、
前記プロセッサが、前記二乗値を、所定回数分、積算する工程、及び、
前記プロセッサが、前記積算値である診断パラメータに基づいて前記多気筒エンジンの診断を行う工程、を含む診断方法。
【請求項２】
請求項１に記載の診断方法において、
前記プロセッサは、前記センサが所定期間の最初と最後で出力する前記２つのセンシング値を取り込むと共に、当該センシング値の後退差分の二乗を演算する診断方法。
【請求項３】
請求項２に記載の診断方法において、
前記プロセッサは、前記二乗値を、前記多気筒エンジンの１燃焼サイクルの整数倍の積算期間分、積算する診断方法。
【請求項４】
請求項１に記載の診断方法において、
前記２つのセンシング値は、前記多気筒エンジンの１燃焼サイクルの整数倍の期間内における最大のセンシング値と最小のセンシング値である診断方法。
【請求項５】
請求項１に記載の診断方法において、
前記２つのセンシング値は、前記多気筒エンジンの各気筒の燃焼を１回ずつ含む１回のエンジンサイクルの最大値と最小値である診断方法。
【請求項６】
請求項１〜５のいずれか１項に記載の診断方法において、
前記プロセッサが、前記診断パラメータと予め設定したしきい値とを比較する工程、及び、
前記プロセッサが、前記診断パラメータが前記しきい値を超えているときに、前記多気筒エンジンが異常であると判定する工程をさらに含む診断方法。
【請求項７】
請求項１〜５のいずれか１項に記載の診断方法において、
前記プロセッサが、前記診断パラメータと予め設定したしきい値との比較を、複数回分、行う工程、
前記プロセッサが、前記診断パラメータが前記しきい値を超えた回数をカウントする工程、及び、
前記プロセッサが、前記比較した回数に対する前記カウントした回数の割合が予め設定した所定値を超えているときに、前記多気筒エンジンが異常であると判定する工程をさらに含む診断方法。
【請求項８】
多気筒エンジンと、当該エンジンの排気通路に設置したセンサとを有するエンジンシステムにおいて、前記センサが出力する、各気筒内の空燃比に関連したセンシング値を用いて前記多気筒エンジンの診断を行う方法であって、
プロセッサが、前記センシング値を所定周期で取り込むと共に、当該センシング値の後退差分の二乗を演算する工程、
前記プロセッサが、前記二乗値を、所定回数分、積算する工程、及び、
前記プロセッサが、前記積算値である診断パラメータに基づいて前記多気筒エンジンの診断を行う工程、を含む診断方法。
【請求項９】
多気筒エンジンと、当該エンジンの排気通路に設置したセンサとを有するエンジンシステムにおいて、前記センサが出力する、各気筒内の空燃比に関連したセンシング値を用いて前記多気筒エンジンの診断を行う方法であって、
プロセッサが、前記多気筒エンジンの１燃焼サイクルの期間内で、前記センサが出力するセンシング値の内、最大のセンシング値と最小のセンシング値とを決定する工程、
前記プロセッサが、前記最大のセンシング値と最小のセンシング値との差分の二乗を演算する工程、及び、
前記プロセッサが、前記二乗値である診断パラメータに基づいて前記多気筒エンジンの診断を行う工程、を含む診断方法。
【請求項１０】
請求項９に記載の診断方法において、
前記プロセッサが、前記二乗値を、所定回数分、積算する工程をさらに含み、
前記多気筒エンジンの診断は、前記積算値を診断パラメータとして行う診断方法。
【請求項１１】
請求項８〜１０のいずれか１項に記載の診断方法において、
前記プロセッサが、前記診断パラメータと予め設定したしきい値とを比較する工程、及び、
前記プロセッサが、前記診断パラメータが前記しきい値を超えているときに、前記多気筒エンジンが異常であると判定する工程をさらに含む診断方法。
【請求項１２】
請求項８〜１０のいずれか１項に記載の診断方法において、
前記プロセッサが、前記診断パラメータと予め設定したしきい値との比較を、複数回分、行う工程、
前記プロセッサが、前記診断パラメータが前記しきい値を超えた回数をカウントする工程、及び、
前記プロセッサが、前記比較した回数に対する前記カウントした回数の割合が予め設定した所定値を超えているときに、前記多気筒エンジンが異常であると判定する工程をさらに含む診断方法。
【請求項１３】
多気筒エンジンと、当該多気筒エンジンの排気通路に設置されたセンサと、を有するエンジンシステムの診断を行うシステムであって、
前記センサが出力する、各気筒内の空燃比に関連したセンシング値を用いて前記多気筒エンジンの診断を行うテスターを備え、
前記テスターは、
互いに離れたタイミングで前記センサが出力した２つのセンシング値の差分の二乗を演算する工程、
前記二乗値を、所定回数分、積算する工程、及び、
前記積算値に基づいて前記多気筒エンジンの診断を行う工程、を実行するように構成されている診断システム。
【請求項１４】
多気筒エンジンと、当該多気筒エンジンの排気通路に設置されたセンサと、を有するエンジンシステムの診断を行うシステムであって、
前記センサが出力する、各気筒内の空燃比に関連したセンシング値を用いて前記多気筒エンジンの診断を行うテスターを備え、
前記テスターは、
前記多気筒エンジンの１燃焼サイクルの期間内で、前記センサが出力するセンシング値の内、最大のセンシング値と最小のセンシング値との差分の二乗を演算する工程、及び、
前記二乗値に基づいて前記多気筒エンジンの診断を行う工程、を実行するように構成されている診断システム。
【請求項１５】
請求項１３又は１４に記載の診断システムにおいて、
前記テスターは、前記エンジンシステムのコントローラに組み込まれている診断システム。
【発明の詳細な説明】
【技術分野】
【０００１】
ここに開示する技術は、多気筒エンジンの診断方法及び診断システムに関し、特に多気筒エンジンにおける空燃比の気筒間ずれの発生を診断するための方法及びシステムに関する。
【背景技術】
【０００２】
エンジンからの排出物の抑制のためには、エンジンの各気筒における空気と燃料の混合気を均等なものとすることが望ましい。例えば、各気筒において、ほぼ同じ混合気が燃焼しているときには、各気筒の空気燃料混合気を、いずれかの気筒における失火発生の可能性を最小にした状態で、排気システム中の触媒の効率を向上するように調整することができる。具体的には、全気筒が実質的に同等の空気燃料混合気を燃焼しているときに、一つの気筒が他の気筒より先にリーン燃焼限界に到達することにより、その一つの気筒で失火が起きる可能性が小さい状態で、エンジンの空気燃料混合気を、触媒の効率を高めるように、リーン化することが出来る。一方で、一つの気筒が他の気筒よりもリーンな空気燃料混合気で作動しているならば、空燃比をリーン化している途中でその一つの気筒が失火を起こす可能性が高まる。例えば特許文献１には、空燃比フィードバック制御を行うエンジンにおいて、混合気の空燃比が複数の気筒間で互いにずれているか否かを判定するシステムが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１２１５３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本願発明者らは、エンジンからの排出物をさらに抑制する上で、空燃比の気筒間ずれの検出精度を向上させる余地があることに気づいた。
【課題を解決するための手段】
【０００５】
本願発明者らは、エンジンの診断に係る診断パラメータの特性を、従来の特性とは異ならせることに着目し、センサが出力するセンシング値の差分を二乗することによって、その差が大きければ大きいほど誇張されるような特性とした。このことにより、診断パラメータにセンシング値のばらつきが含まれたとしても、誤診断を防止し得るようにした。
【０００６】
具体的に、ここに開示する診断方法は、多気筒エンジンと、当該多気筒エンジンの排気通路に設置したセンサと、を有するエンジンシステムにおいて、前記センサが出力する、各気筒内の空燃比に関連したセンシング値を用いて前記多気筒エンジンの診断を行う方法である。この診断方法は、プロセッサが、互いに離れたタイミングで前記センサが出力した２つのセンシング値の差分の二乗を演算する工程、前記プロセッサが、前記二乗値を、所定回数分、積算する工程、及び、前記プロセッサが、前記積算値である診断パラメータに基づいて前記多気筒エンジンの診断を行う工程、を含む。
【０００７】
センシング値は、各気筒内の空燃比に関連し、気筒間の空燃比のずれが生じておらず、ほとんど同じ場合には実質的に変動せず、気筒間の空燃比のずれが生じた場合に変動をする。このため、センシング値の差分値は、気筒間の空燃比のずれ状態を表す。つまり、差分値が大きいことは、センシング値の変動が大きいことであるため、気筒間の空燃比のずれが大きいことを示し、差分値が小さいことは、センシング値の変動が小さいことであるため、気筒間の空燃比のずれが小さいことを示す。前記の方法では、差分の二乗値を演算することによって、空燃比の気筒間ずれが大きいときには、それが誇張される。すなわち、差分の二乗値は、空燃比の気筒間ずれが大きければ大きいほど、ずれ量を誇張する特性を有する。
【０００８】
前記の方法ではさらに、差分の二乗値を所定回数分だけ積算している。各回の差分の二乗値がばらついたとしても、積算はその二乗値を実質的に平均化し、ばらつきの影響を小さくする。従って、空燃比の気筒間ずれを誇張する特性と、センシング値の平均化とが組み合わさった診断パラメータに基づいてエンジンの診断、例えば空燃比の気筒間ずれの診断を行うことは、その診断精度を高め得る。
【０００９】
前記プロセッサは、前記センサが所定期間の最初と最後で出力する前記２つのセンシング値を取り込むと共に、当該センシング値の後退差分の二乗を演算する、としてもよい。
【００１０】
センシング値の後退差分を演算すること、つまり、センシング値の前回値と今回値との差分を演算することは、変動するセンシング値の変化率を演算することであるから、センシング値の変動状態を正確に把握することを可能にする。その結果、空燃比の気筒間のずれ状態を正確に把握することができて、診断精度が高まり得る。
【００１１】
前記プロセッサは、前記二乗値を、前記多気筒エンジンの１燃焼サイクルの整数倍の積算期間分、積算する、としてもよい。
【００１２】
本願発明者らは、空燃比の気筒間ずれを表すセンシング値の変動パターンは、多気筒エンジンの１燃焼サイクル、つまり４ストローク機関ではクランク角７２０°を１周期とする点に気づいた。そこで、積算期間は、少なくとも一つ分の変動パターンを含み得るように１燃焼サイクルを最小単位として設定することが好ましい。このことは、診断パラメータに、空燃比の気筒間ずれの状態を正確に反映させて、診断精度の向上に有利になり得る。
【００１３】
前記２つのセンシング値は、前記多気筒エンジンの１燃焼サイクルの整数倍の期間内における最大のセンシング値と最小のセンシング値である、としてもよい。
【００１４】
前述したように、センシング値の変動パターンは、１燃焼サイクルで一つの変動パターンであることから、１燃焼サイクルの整数倍の期間内における最大のセンシング値と最小のセンシング値の差分の大きさ、換言すればセンシング値の変動振幅は、空燃比の気筒間ずれ量の大きさを表す。従って、センシング値の前記最大値と前記最小値との差分の二乗値を演算すると共に、それを積算した診断パラメータは、空燃比の気筒間ずれの状態を正確に反映し得る。
【００１５】
前記２つのセンシング値は、前記多気筒エンジンの各気筒の燃焼を１回ずつ含む１回のエンジンサイクルの最大値と最小値である、としてもよい。
【００１６】
前記診断方法は、前記プロセッサが、前記診断パラメータと予め設定したしきい値とを比較する工程、及び、前記プロセッサが、前記診断パラメータが前記しきい値を超えているときに、前記多気筒エンジンが異常であると判定する工程をさらに含む、としてもよい。
【００１７】
空燃比の気筒間ずれ量が大きくなればなるほど、診断パラメータは大きくなる特性を有しているため、診断パラメータとしきい値との比較は、許容することができない空燃比の気筒間ずれの発生を、精度よく判定し得る。前述したように、二乗値に基づく診断パラメータは、気筒間ずれ量が大きくなればなるほどそれを誇張する特性を有しているから、センシング値のばらつきの影響を相対的に低下させて、診断精度を高め得る。
【００１８】
前記診断方法は、前記プロセッサが、前記診断パラメータと予め設定したしきい値との比較を、複数回分、行う工程、前記プロセッサが、前記診断パラメータが前記しきい値を超えた回数をカウントする工程、及び、前記プロセッサが、前記比較した回数に対する前記カウントした回数の割合が予め設定した所定値を超えているときに、前記多気筒エンジンが異常であると判定する工程をさらに含む、としてもよい。
【００１９】
診断パラメータは、センシング値のばらつきを含むため、診断パラメータとしきい値との１回の比較だけに基づいて診断を行うことは、誤診断を招く虞がある。これに対し、診断パラメータとしきい値との比較を複数回行うと共に、診断パラメータがしきい値を超えた割合に基づいて多気筒エンジンの診断を行うことは、誤診断を回避して、診断精度をさらに向上し得る。
【００２０】
前記とは別の診断方法は、プロセッサが、前記センシング値を所定周期で取り込むと共に、当該センシング値の後退差分の二乗を演算する工程、前記プロセッサが、前記二乗値を、所定回数分、積算する工程、及び、前記プロセッサが、前記積算値である診断パラメータに基づいて前記多気筒エンジンの診断を行う工程、を含む。
【００２１】
さらに別の診断方法は、プロセッサが、前記多気筒エンジンの１燃焼サイクルの整数倍の期間内で、前記センサが出力するセンシング値の内、最大のセンシング値と最小のセンシング値とを決定する工程、前記プロセッサが、前記最大のセンシング値と最小のセンシング値との差分の二乗を演算する工程、及び、前記プロセッサが、前記二乗値である診断パラメータに基づいて前記多気筒エンジンの診断を行う工程、を含む。
【００２２】
前記診断方法は、前記プロセッサが、前記二乗値を、所定回数分、積算する工程をさらに含み、前記多気筒エンジンの診断は、前記積算値を診断パラメータとして行う、としてもよい。
【００２３】
前記診断方法は、前記プロセッサが、前記診断パラメータと予め設定したしきい値とを比較する工程、及び、前記プロセッサが、前記診断パラメータが前記しきい値を超えているときに、前記多気筒エンジンが異常であると判定する工程をさらに含む、としてもよい。
【００２４】
前記診断方法は、前記プロセッサが、前記診断パラメータと予め設定したしきい値との比較を、複数回分、行う工程、前記プロセッサが、前記診断パラメータが前記しきい値を超えた回数をカウントする工程、及び、前記プロセッサが、前記比較した回数に対する前記カウントした回数の割合が予め設定した所定値を超えているときに、前記多気筒エンジンが異常であると判定する工程をさらに含む、としてもよい。
【００２５】
ここに開示する診断システムは、多気筒エンジンと、当該多気筒エンジンの排気通路に設置されたセンサと、を有するエンジンシステムの診断を行うシステムであって、前記センサが出力する、各気筒内の空燃比に関連したセンシング値を用いて前記多気筒エンジンの診断を行うテスターを備える。そして、前記テスターは、互いに離れたタイミングで前記センサが出力した２つのセンシング値の差分の二乗を演算する工程、前記二乗値を、所定回数分、積算する工程、及び、前記積算値に基づいて前記多気筒エンジンの診断を行う工程、を実行するように構成されている。
【００２６】
別の診断システムは、前記テスターは、前記多気筒エンジンの１燃焼サイクルの整数倍の期間内で、前記センサが出力するセンシング値の内、最大のセンシング値と最小のセンシング値との差分の二乗を演算する工程、及び、前記二乗値に基づいて前記多気筒エンジンの診断を行う工程、を実行するように構成されている。
【００２７】
前記テスターは、前記エンジンシステムのコントローラに組み込まれている、としてもよい。
【発明の効果】
【００２８】
以上説明したように、前記の診断方法及び診断システムは、診断パラメータが、センシング値の差分の二乗値に基づくパラメータであることで、多気筒エンジンの診断精度、例えば多気筒エンジンにおける空燃比の気筒間ずれの診断精度を高め得る。
【図面の簡単な説明】
【００２９】
【図１】例示的診断システムが適用されたエンジンシステムの一例を示す概略構成図である。
【図２】エンジンシステムにおける排気系の構成の一例を示す概略構成図である。
【図３】ＰＣＭが実行する空燃比の気筒間ずれ診断に係るフローチャートの一例である。
【図４】センサ出力値の一例を示す図である。
【図５】診断パラメータに係る積算値の一例を示す図である。
【図６】１燃焼サイクル分の積算値を、さらに積算した積算値の一例を示す図である。
【図７】空燃比の気筒間ずれ量と積算値との関係において、差分の積算値の特性と、差分の二乗値の積算値の特性との違いを示す図である。
【図８】ＰＣＭが実行する空燃比の気筒間ずれ診断に係るフローチャートの一例である。
【発明を実施するための形態】
【００３０】
以下、エンジンシステムの診断方法及び診断システムについて、図面を参照しながらより具体的に説明する。尚、以下の実施形態の説明は、本質的に例示に過ぎない。図１は、エンジンシステムの概略構成図である。当該システムが備えるエンジン１は、図例では一つのシリンダのみを図示しているが、直列４気筒の火花点火式の直墳エンジンである。但し、エンジン１はこれに限定されるものではない。例えば気筒数は、これとは異なってもよい。また、Ｖ型エンジンや、水平対向エンジンであってもよい。さらに、燃料は、燃焼室内でなく、吸気ポートに噴射してもよい。エンジン１は、シリンダブロック３と、当該シリンダブロック３の上部に固定されたシリンダヘッド５とを備えている。シリンダブロック３のシリンダ１３内には、往復動可能なピストン７が嵌挿されており、このピストン７の上方に、当該ピストン７の頂面とシリンダ１３の内壁面とシリンダヘッド５のペントルーフ型の底面とに囲まれた燃焼室１１が形成されている。ピストン７の下方のクランクケース内には、クランク軸（図示せず）が配設されており、コネクティングロッド１７が、クランク軸とピストン７とを互いに連結している。クランクケース内には、クランク軸の回転角（クランク角）を検出するためのクランク角センサ３７が配設されている。このクランク角センサ３７は、クランク軸と一体回転するように当該クランク軸の端部に取り付けられたロータ２７の回転に伴い、当該ロータ２７の外周部に設けられた凸部の通過に対応して、信号をＰＣＭ（Power-train Control Module）２１に出力する電磁ピックアップコイルを有している。シリンダブロック３には、ウォータジャケット（図示せず）内を流れる冷却水の温度を検出するためのエンジン水温センサ２３と、エンジンオイルの温度を検出するためのエンジンオイル温度センサ３３とが取り付けられている。
【００３１】
シリンダヘッド５には、シリンダ１３の一つ一つに対応するように、複数個の点火プラグ９が取り付けられている。各点火プラグ９の先端電極は、各燃焼室１１内に臨んでいるとともに、各点火プラグ９は、シリンダヘッド５の上部に配置された点火回路１９に接続されている。点火回路１９は、この例では、各点火プラグ９に対応する数だけ設けているが、これに限らず、複数個の点火プラグ９に共通する、一つ又は複数個の点火回路を設けてもよい。またシリンダヘッド５には、各燃焼室１１内に燃料を直接噴射するためのインジェクタ３９が取り付けられている。インジェクタ３９は、図外の燃料供給源に供給管を介して接続されかつ、この燃料供給源から燃料の供給を受ける。
【００３２】
シリンダヘッド５にはまた、各燃焼室１１に連通する吸気ポート１５及び排気ポート２５が２つずつ（図例ではそれぞれ一つのみ図示する）形成されており、これら吸気ポート１５及び排気ポート２５のポート開口部には、ＶＶＴ（Variable Valve Timing）機構３５１，４５１を通じて、所定タイミングで独立に開閉動作する吸排気バルブ（吸気弁３５及び排気弁４５）が配設されている。ＶＶＴ機構３５１，４５１は、吸気弁３５及び排気弁４５の開閉タイミングを、進角側及び遅角側のそれぞれに変更する機構であり、吸気弁３５及び排気弁４５の開閉のオーバーラップ期間を変化させることによって、燃焼室１１に残留する既燃ガスの量を変化させることが可能である。ＶＶＴ機構の構成については特に制限はなく、機械式のＶＶＴや電磁式のＶＶＴを採用し得る。
【００３３】
吸気通路５５は、各シリンダ１３の吸気ポート１５に連通しており、排気通路６５は、排気ポート２５に連通している。ＥＧＲ通路８５は、吸気通路５５と排気通路６５とを互いに接続している。ＥＧＲ通路８５の途中に配置したＥＧＲ弁５１の開度を調整することより、排気通路６５の排気ガスの一部が吸気通路５５に還流する。吸気通路５５には、その上流側から下流側に向かって、エアクリーナ７５、吸気温度センサ４３、吸気流量を検出するエアフローセンサ２９、電動モータ４１１により駆動されて吸気通路５５を絞るスロットル弁４１、燃焼室１１内の吸気流動の強さを調整するＴＳＣＶ（タンブルスワールコントロール弁）３１、が順に配設されている。図１，２に示すように、４つの気筒♯１，♯２，♯３，♯４それぞれからの排気通路６５１，６５２，６５３，６５４が集合する排気集合部９５に、排気ガス中の酸素濃度に対して線形な信号を出力するリニアＯ２センサ４７と、排気ガスを浄化するための触媒コンバータ４９とが配設されている。尚、触媒コンバータ４９としては、例えば、ＨＣ，ＣＯ，ＮＯｘの３成分を同時に浄化し得る三元触媒を採用してもよい。リニアＯ２センサ４７が出力するセンシング値は、ＰＣＭ２１に取り込まれて、混合気の空燃比の検出に利用される。ＰＣＭ２１は、このセンシング値に基づいて、エンジン１の空燃比フィードバック制御、例えば、所望の空燃比となるようにインジェクタ３９の燃料噴射量の調整を行うと共に、後述するように、空燃比の気筒間ずれの発生有無を診断する。
【００３４】
ＰＣＭ２１は、例えば通常のマイクロコンピュータであり、図１に示すように、少なくともＣＰＵ２１１、ＲＯＭ２１２、ＲＡＭ２１３、Ｉ／Ｏインターフェース回路２１４、及びデータバスを備えて構成される。このＰＣＭ２１には、この例では、前記クランク角センサ３７、前記エンジン水温センサ２３、前記エアフローセンサ２９、前記リニアＯ２センサ４７、前記吸気温度センサ４３、及び前記エンジンオイル温度センサ３３の各出力信号に加え、スロットル開度を検出するスロットル開度センサ５３、エンジン回転数を検出するエンジン回転数センサ５７の各出力信号がそれぞれ、Ｉ／Ｏインターフェース回路２１４を介して入力される。ＰＣＭ２１は、これらのセンサの出力信号等に基づいて、点火回路１９、ＶＶＴ機構３５１，４５１、インジェクタ３９、スロットル弁４１、及び、ＥＧＲ弁５１のそれぞれに対して、制御信号を出力することで、エンジン１の制御（空燃比フィードバック制御を含む）を行う。ＰＣＭ２１はまた、詳しくは後述するが、前記リニアＯ２センサ４７のセンシング値に基づいて、空燃比の気筒間ずれ診断を行う。さらにＰＣＭ２１には、警報ランプ５９が電気的に接続されており、ＰＣＭ２１は、警報ランプ５９の点灯を制御する。警報ランプ５９は、例えばインストルメントパネルに配置されて、乗員に対する警報を行うランプであり、この例では具体的には、ＰＣＭ２１が空燃比の気筒間ずれが発生したと判定したときに、警報ランプ５９が点灯する。
【００３５】
図３は、ＰＣＭ２１が実行する、空燃比の気筒間ずれ診断に係るフローチャートの一例である。このフローでは、所定周期で、具体的にはクランク角９０°間隔で得られるリニアＯ２センサ４７のセンシング値の差分の二乗値を演算し、その二乗値の、１燃焼サイクル分の積算値に基づいて空燃比の気筒間ずれの発生を診断する。先ず、ステップＳ３１で、ＰＣＭ２１は、各種のセンサの出力信号値を読み込み、ステップＳ３２で、ＰＣＭ２１は、読み込んだ信号値に基づいて、気筒間ずれ診断の実行条件が成立したか否かを判定する。ＰＣＭ２１は、暖機運転が終了した状態、すなわち水温が所定温度以上になっている状態でかつ、エンジン回転数、吸気充填効率、スロットル開度の各変動量が小さく安定している（それぞれ所定値以下である）状態であるときに、診断条件が成立していると判定する。但し、診断条件は、これに限定されるものではない。ステップＳ３２の判定でＹＥＳのときにはステップＳ３３に移行する一方、ＮＯのときにはステップＳ３２を繰り返す。
【００３６】
ステップＳ３３でＰＣＭ２１は、リニアＯ２センサ４７のセンシング値λ（ｉ）を読み込み、続くステップＳ３４でＰＣＭ２１は、センシング値の前回値λ（ｉ−１）と今回値λ（ｉ）との差分（後退差分）の二乗値Ｓ１を算出する。つまり、
Ｓ１＝（λ（ｉ）−λ（ｉ−１））２
を演算する。図４に黒丸で示すように、リニアＯ２センサ４７のセンシング値は、クランク角９０°毎に得られるため、このステップＳ３４で演算される二乗値Ｓ１は、クランク角９０°毎のセンシング値の差分の二乗値である。換言すれば、ＰＣＭ２１は、センシング値の変化率の二乗値を演算する。尚、ステップＳ３４が初回であって前回値が存在しないときには、ステップＳ３４は飛ばす。
【００３７】
続くステップＳ３５及びＳ３６で、ＰＣＭ２１は、図５に示すように、二乗値Ｓ１を、エンジン１の１燃焼サイクル、換言すればクランク角７２０°分、積算する。つまり、ステップＳ３５で、
積算値ｒ＝ｒ（前回値）＋Ｓ１
を演算し、ステップＳ３６で、１燃焼サイクル分の積算が終了したか否かを判定する。ステップＳ３６でＹＥＳのときには、ステップＳ３８に移行する一方、ＮＯのときには、ステップＳ３７に移行する。フローは、ステップＳ３７でクランク角９０°が経過するのを待って、ステップＳ３３に戻り、ＰＣＭ２１は、新たなセンシング値λ（ｉ）を読み込む。
【００３８】
ステップＳ３８及びＳ３９で、ＰＣＭ２１は、１燃焼サイクル分の積算値ｒを、さらに１００サイクル分、積算する（図６参照）。つまり、ステップＳ３８で、
積算値Ｒ１＝Ｒ１（前回値）＋ｒ
を演算し、ステップＳ３９で、１００サイクル分の積算が終了したか否かを判定する。ステップＳ３９の判定でＮＯのときにはステップＳ３２に戻り、診断条件が成立したか否かを判定する。ステップＳ３５の１燃焼サイクル分の積算は、連続的に行われるのに対し、ステップＳ３８の１００サイクル分の積算は必ずしも連続的に行われない。つまり、ステップＳ３６で１燃焼サイクル分の積算が完了した後、診断条件が再成立するまで所定時間が経過した後、次の１燃焼サイクル分の積算が行われる場合がある。ステップＳ３９の判定でＹＥＳのときにはステップＳ３１０に移行し、ＰＣＭ２１は、演算した積算値Ｒ１が、予め設定されかつ、ＰＣＭ２１に記憶されているしきい値を超えているか否かを判定する。例えば図６の例は、積算値Ｒ１が、一点鎖線で示すしきい値を超えていることを示している。ステップＳ３１０の判定でＹＥＳのときには、ステップＳ３１１に移行して、ＰＣＭ２１は異常検出回数をインクリメントすると共に、ステップＳ３１２で診断回数をインクリメントする。ステップＳ３１０の判定でＮＯのときには、ステップＳ３１１に移行せず、従って異常検出回数はインクリメントせずに、ＰＣＭ２１は、ステップＳ３１２で診断回数のみをインクリメントする。
【００３９】
ステップＳ３１３では、予め設定した所定の診断回数が終了したか否かを判定する。診断回数は、例えば１５回としてもよい。但し、診断回数は、これに限定されるものではない。ステップＳ３１３の判定でＮＯのときにはステップＳ３２に戻り、診断を継続する一方、ＹＥＳのときにはステップＳ３１４に移行する。ステップＳ３１４でＰＣＭ２１は、所定回数の診断を行った内で、異常を検出した割合（異常検出回数／診断回数）を算出し、それが予め設定した異常判定値を超えたか否かを判定する。ステップＳ３１４の判定でＮＯのときには、ステップＳ３１５に移行して正常と判断する。一方、ステップＳ３１４の判定でＹＥＳのときにはステップＳ３１６に移行して、エンジン１の異常、具体的には空燃比の気筒間ずれが生じていると判断し、ＰＣＭ２１は、警報ランプ５９を点灯する。
【００４０】
このエンジン１の診断方法では、リニアＯ２センサ４７のセンシング値の差分の二乗値を診断パラメータとしている。二乗値は、差分が大きいほど、つまり、センシング値の変動が大きいほど、それを誇張する特性を有する。図７に破線で示すように、空燃比の気筒間ずれ量と差分の積算値との関係は、気筒間ずれがリッチ側及びリーン側のいずれにずれたときでも、ずれ量が大きくなるほど積算値が線形的に大きくなる関係を有する。これは、空燃比フィードバック制御を行っているため、特定気筒の空燃比がずれたときには、そのずれを打ち消すように全ての気筒の空燃比の補正を行うためである。空燃比の気筒間ずれを診断するための診断パラメータとして、差分の積算値を利用する場合は、その差分の積算値と予め設定した判定値（図７の一点鎖線参照）とを比較して、差分の積算値が判定値を超えたときに、許容することのできない気筒間ずれが発生したと判断することになる。しかしながら、図７に例示的に示すように、気筒間の空燃比のずれ量が相対的に小さいときにはリニアＯ２センサ４７のセンシング値の変動が相対的小さいため、積算値のばらつきも小さいのに対し、気筒間の空燃比のずれ量が大きくなればなるほど、リニアＯ２センサ４７のセンシング値の変動が大きくなるため、積算値のばらつきも大きくなってしまう。積算値のばらつきが大きくなることは、演算した積算値が実際よりも小さくなって判定値よりも小さくなり、実際は異常と判定すべきであるのに正常と判定したり、積算値が実際よりも大きくなって判定値以上となり、実際は正常と判定すべきであるのに異常と判定したりすることになってしまう。このことは、診断精度を低下させる。
【００４１】
これに対し、センシング値の差分の二乗値は、図７に実線で示すように、破線とは特性が大きく異なる。つまり、ずれ量が大きくなるほど、それを誇張するように積算値が大きくなる。従って、センシング値の変動が大きくなって積算値のばらつきが大きくなったとしてもその影響を相対的に小さくして、誤診断を防止することが可能になるのである。
【００４２】
また、前記の診断方法では、差分の二乗値を、１燃焼サイクル分、積算しており、このことは、リニアＯ２センサ４７のセンシング値の変動の状態を、診断パラメータに反映する上で有利な構成である。図４に示すように、リニアＯ２センサ４７のセンシング値の変動パターンは、１燃焼サイクルで１周期となる。そのため、差分の二乗値を、１燃焼サイクル分、積算することは、その積算期間中に１個の変動パターンを含み得る。つまり、このことは、診断パラメータに空燃比の気筒間ずれの状態を正確に反映させて、診断精度の向上に有利になり得る。尚、積算期間は、１燃焼サイクルに限定されず、１燃焼サイクルの、１よりも大きい整数倍に設定してもよい。
【００４３】
さらに、前記の診断方法では、１燃焼サイクル分の積算値ｒを、さらに１００サイクル分、積算している。この積算は、積算値ｒを平均化していることと等価であり、リニアＯ２センサ４７の出力信号のばらつき等に起因して積算値ｒがばらつく影響を抑制して、診断精度を高める上で有利である。但し、積算値ｒの積算は、１００サイクル分に限定されるものではなく、適宜の数に設定することが可能である。勿論、１サイクル分であってもよい。
【００４４】
加えて、前記の診断方法では、１００サイクル分の積算値Ｒ１としきい値との比較によって異常を検出すると共に、所定の診断回数において異常を検出した割合が、所定の異常判定値を超えたか否かに基づいて、最終的に、異常の発生を判定している。従って、高い診断精度を確保し得る。尚、ステップＳ３１１〜Ｓ３１４を省略して、ステップＳ３１０の判定でＹＥＳのときには、ステップＳ３１６に移行して、エンジン１が異常であると判定し、ステップＳ３１０の判定でＮＯのときには、ステップＳ３１５に移行して、エンジン１が正常であると判定してもよい。
【００４５】
図８は、別の診断パラメータを用いた、エンジン１の診断方法に係るフローチャートを示している。このフローでは、例えば図４に示すように、１燃焼サイクル中でのリニアＯ２センサ４７のセンシング値の内、最大のセンシング値λｍａｘと、最小のセンシング値λｍｉｎとの差分の二乗値を演算し、その二乗値に基づいて空燃比の気筒間ずれを診断する。これは、前述したように、空燃比の気筒間ずれに関係するリニアＯ２センサ４７のセンシング値の変動パターンが、１燃焼サイクルで１周期であることに着目した診断手法である。つまり、センシング値の最大値λｍａｘと最小値λｍｉｎとの差分、換言すれば、１燃焼サイクル中のセンシング値の変動振幅は、空燃比の気筒間ずれの状態に対応し、当該差分が大きければ大きいほど、気筒間ずれが大きいことを示す。
【００４６】
図８のフローのステップＳ８１で、ＰＣＭ２１は、各種のセンサ出力信号値を読み込み、ステップＳ８２で、ＰＣＭ２１は、読み込んだ信号値に基づいて、気筒間ずれ診断の実行条件が成立したか否かを判定する。実行条件は、前記と同様の条件とすればよい。ステップＳ８２の判定でＹＥＳのときにはステップＳ８３に移行する一方、ＮＯのときにはステップＳ８２を繰り返す。
【００４７】
ステップＳ８３でＰＣＭ２１は、リニアＯ２センサ４７のセンシング値λ（ｉ）を読み込み、続くステップＳ８４でＰＣＭ２１は、１燃焼サイクル分の、センシング値を読み込んだか否かを判定する。ステップＳ８４の判定でＹＥＳのときにはステップＳ８６に移行する一方、ＮＯのときにはステップＳ８５に移行する。フローは、ステップＳ８５でクランク角９０°が経過するのを待って、ステップＳ８３に戻り、ＰＣＭ２１は、新たなセンシング値λ（ｉ）を読み込む。
【００４８】
ステップＳ８６でＰＣＭ２１は、読み込んだ１燃焼サイクル分のセンシング値の内、最大値λｍａｘ及び最小値λｍｉｎを決定し、その差分、例えば図４に示すセンシング値の波形の振幅の二乗値Ｓ２を演算する。つまり、
Ｓ２＝（λｍａｘ−λｍｉｎ）２
を演算する。
【００４９】
続くステップＳ８７及びＳ８８で、ＰＣＭ２１は、二乗値Ｓ２を、１００サイクル分、積算する。つまり、ステップＳ８７で、
積算値Ｒ２＝Ｒ２（前回値）＋Ｓ２
を演算し、ステップＳ８８で、１００サイクル分の積算が終了したか否かを判定する。ステップＳ８８の判定でＮＯのときにはステップＳ８２に戻り、診断条件が成立したか否かを判定する。これは、図３のフローと同様である。ステップＳ８８の判定でＹＥＳのときにはステップＳ８９に移行し、ＰＣＭ２１は、演算した積算値Ｒ２が、予め設定されかつ、ＰＣＭ２１に記憶されているしきい値を超えているか否かを判定する。ステップＳ８９の判定でＹＥＳのときには、ステップＳ８１０に移行して、ＰＣＭ２１は異常検出回数をインクリメントすると共に、ステップＳ８１１で診断回数をインクリメントする。ステップＳ８９の判定でＮＯのときには、ステップＳ８１０に移行せずに、ＰＣＭ２１は、ステップＳ８１１で診断回数のみをインクリメントする。
【００５０】
ステップＳ８１２では、予め設定した所定の診断回数が終了したか否かを判定する。診断回数は、例えば１５回としてもよい。但し、診断回数は、これに限定されるものではない。ステップＳ８１２の判定でＮＯのときにはステップＳ８２に戻り、診断を継続する一方、ＹＥＳのときにはステップＳ８１３に移行する。ステップＳ８１３でＰＣＭ２１は、所定回数の診断を行った内で、異常を検出した割合（異常検出回数／診断回数）を算出し、それが予め設定した異常判定値を超えたか否かを判定する。ステップＳ８１３の判定でＮＯのときには、ステップＳ８１４に移行して正常と判断する。一方、ステップＳ８１３の判定でＹＥＳのときにはステップＳ８１５に移行して、エンジン１の異常が生じていると判断し、ＰＣＭ２１は、警報ランプ５９を点灯する。
【００５１】
このフローでは、リニアＯ２センサ４７のセンシング値における変動波形の振幅の二乗値を演算している。前述したように、変動波形の振幅は、空燃比の気筒間ずれ量に対応するため、その二乗値は、ずれ量が大きくなるほど、それを誇張するような特性を有することになる。従って、センシング値の変動が大きくなって二乗値のばらつきが大きくなったとしてもその影響を相対的に小さくして、誤診断を防止することが可能になる。
【００５２】
尚、前記のフローでは、エンジン１の１燃焼サイクル中における、リニアＯ２センサ４７の最大のセンシング値及び最小のセンシング値の差分を演算している。例えば１燃焼サイクルの、１よりも大きい整数倍の期間中における最大のセンシング値及び最小のセンシング値の差分を演算してもよい。但し、リニアＯ２センサ４７のセンシング値は、１燃焼サイクルよりも周期の長い変動を含んでいる場合があるため、１燃焼サイクルよりも長い期間中での最大のセンシング値及び最小のセンシング値は、その長周期の変動成分を含み得る。診断精度の向上の観点からは、エンジン１の１燃焼サイクル中における、リニアＯ２センサ４７の最大のセンシング値及び最小のセンシング値の差分を演算することが好ましい。
【００５３】
また、図８のフローにおいて、１００サイクル分の積算を行わなくても、適宜のサイクル数（１サイクルを含む）に設定することが可能である。また、ステップＳ８１０〜Ｓ８１３を省略することも可能である。
【００５４】
尚、図３，８のフローに示す各ステップ中の処理、及び、ステップの順番等は、例示であり、処理内容を変更したり、処理の順番を入れ替えたり、処理の一部を省略することは当然に可能である。必要に応じて、複数の処理を並行して実行することもまた可能である。
【符号の説明】
【００５５】
１    多気筒エンジン
２１  ＰＣＭ（コントローラ、テスター）
２１１  ＣＰＵ（プロセッサ）
４７  リニアＯ２センサ
９５  排気集合部（排気通路）
【図１】
2011208629.tif 000003
【図２】
2011208629.tif 000004
【図３】
2011208629.tif 000005
【図４】
2011208629.tif 000006
【図５】
2011208629.tif 000007
【図６】
2011208629.tif 000008
【図７】
2011208629.tif 000009
【図８】
2011208629.tif 000010