(57)【要約】【課題】  空燃比センサの無駄時間特性の劣化を運転性および排気性能の悪化なく高精度に検出すること。【解決手段】  空燃比を検出する手段と、空燃比を所定周期で変動させる手段と、空燃比検出手段の出力信号における所定周波数の振幅が所定範囲内でかつ、エンジンに関するパラメータの基準位置もしくは基準時期から、前記空燃比検出手段の出力信号の所定値までの所要時間もしくは所要角度が所定値以上のとき、空燃比検出手段の異常を報知するもしくは少なくともエンジン制御の一部をフェールセーフにする手段とを備えたことを特徴とするエンジンの制御装置。【選択図】  図３
2015224588.tif 000002
【特許請求の範囲】
【請求項１】
排気管の空燃比を検出する空燃比検出手段と、
排気管の空燃比を所定周期で変動させる空燃比変動手段と、を備え、
前記空燃比変動手段により空燃比が変動しているときの前記空燃比検出手段の出力信号における所定周波数の振幅が所定値以上かつ、エンジン位相に関するパラメータの基準位置もしくは基準時期から前記空燃比検出手段の出力信号の所定値までの所要時間もしくは所要角度が所定値以上のとき、前記空燃比検出手段の異常を報知またはエンジン制御の一部をフェールセーフにすることを特徴とするエンジンの制御装置。
【請求項２】
請求項１において、
前記空燃比変動手段は、空燃比を所定周波数以上の周波数で振動させることを特徴とするエンジンの制御装置。
【請求項３】
請求項２において、
前記所定周波数は、空燃比センサ周波数特性におけるカットオフ周波数以上の周波数であることを特徴とするエンジンの制御装置。
【請求項４】
請求項２または３いずれか一項において、
前記空燃比変動手段は、少なくとも一つの気筒の空燃比を他の気筒の空燃比より所定量ずらすことで、前記空燃比検出手段の信号をエンジン２回転周期で振動させることを特徴とするエンジンの制御装置。
【請求項５】
請求項１において、
前記エンジンに関するパラメータの基準位置もしくは基準時期は、エンジンの所定クランク角度もしくは燃料噴射量変更タイミングであることを特徴とするエンジンの制御装置。
【請求項６】
請求項１において、
前記空燃比検出手段の出力信号の所定値は、前記空燃比検出手段の出力信号の振動波形一周期あたりの最大値もしくは最小値であることを
特徴とするエンジンの制御装置。
【請求項７】
請求項１において、
前記空燃比検出手段の出力信号をフーリエ変換するフーリエ変換手段と、
前記フーリエ変換により得られるパワースペクトルから前記振幅を求める振幅算出手段と、
前記フーリエ変換により得られる位相スペクトルから
前記エンジンに関するパラメータの基準位置もしくは基準時期から、前記空燃比検出手段の出力信号の所定値までの所要時間もしくは所要角度を求める所要時間算出手段と、を備えたことを特徴とするエンジンの制御装置。
【請求項８】
請求項１において、
前記エンジンに関するパラメータの基準位置もしくは基準時期から、
前記空燃比検出手段の出力信号の所定値までの所要時間もしくは所要角度に基づいて、
空燃比フィードバック制御のパラメータを変更する手段を
備えたことを特徴とするエンジンの制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エンジンの制御装置に関し、特に排気管の空燃比を検出する空燃比センサの劣化検出に関する。
【背景技術】
【０００２】
本技術分野の背景技術として、特開２００８−１７５２０２号公報（特許文献１）がある。この公報には、内燃機関の排気ガスの空燃比を検出する空燃比センサの入力空燃比の分散値ピークと出力空燃比ピークとの時間から空燃比センサの無駄時間を計測し、異常診断することが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１７５２０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１記載の技術では、分散値を算出する期間中、空燃比を所定の中心空燃比を境にリーン側とリッチ側にステップ的に変化させる必要がある。したがって、分散値を算出する期間空燃比を変動させる制御を継続させる必要があり、エンジンの運転性及び排気性能が悪化するという課題がある。また、分散値を算出するために検出期間も長期間化するという課題がある。
【０００５】
本発明はこのような課題に鑑みてなされたものであって、その目的は空燃比センサの無駄時間特性の劣化を運転性および排気性能の悪化なく高精度に検出することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するため、本発明の制御装置は、排気管の空燃比を検出する空燃比検出手段と、排気管の空燃比を所定周期で変動させる空燃比変動手段と、を備え、前記空燃比変動手段により空燃比が変動しているときの前記空燃比検出手段の出力信号における所定周波数の振幅が所定値以上かつ、エンジン位相に関するパラメータの基準位置もしくは基準時期から前記空燃比検出手段の出力信号の所定値までの所要時間もしくは所要角度が所定値以上のとき、前記空燃比検出手段の異常を報知またはエンジン制御の一部をフェールセーフにすることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、空燃比センサ出力信号の振幅と位相変化とに基づいて空燃比センサの劣化を診断するので、短い期間で劣化診断が可能である。
【０００８】
また、平均空燃比が排気最適空燃比の状態で、比較的高周波な空燃比振動を用いて、空燃比センサの無駄時間特性の劣化を検出するので、運転性および排気性能の悪化なく短時間にかつ高精度な検出が可能である。  
【図面の簡単な説明】
【０００９】
【図１】実施例１〜４におけるエンジン制御システム図
【図２】実施例１〜４におけるコントロールユニットの内部を表した図
【図３】実施例１における制御全体を表したブロック図
【図４】実施例１における燃料噴射量補正値演算部のブロック図
【図５】実施例１における振幅演算部のブロック図
【図６】実施例１における所要時間(所要角度)演算部のブロック図
【図７】実施例１における無駄時間異常判定部のブロック図
【図８】実施例２における制御全体を表したブロック図
【図９】実施例２〜４における燃料噴射量補正値演算部のブロック図
【図１０】実施例２における振幅演算部のブロック図
【図１１】実施例２における所要角度演算部のブロック図
【図１２】実施例２における無駄時間異常判定部のブロック図
【図１３】実施例３における制御全体を表したブロック図
【図１４】実施例３、４における２回転成分演算部のブロック図
【図１５】実施例３、４における振幅演算部のブロック図
【図１６】実施例３、４における所要角度演算部のブロック図
【図１７】実施例３、４における無駄時間異常判定部のブロック図
【図１８】実施例４における制御全体を表したブロック図
【図１９】実施例４における空燃比フィードバック補正値演算部のブロック図
【発明を実施するための形態】
【００１０】
以下、実施例を図面を用いて説明する。
【実施例１】
【００１１】
図１は、本実施例を示すシステム図である。多気筒（ここでは４気筒）で構成されるエンジン９において、外部からの空気はエアクリーナ１を通過し、吸気マニホールド４、コレクタ５を経てシリンダー内に流入する。流入空気量は電子スロットル３により調節される。エアフローセンサ２では流入空気量が検出される。また、吸気温センサ２９で、吸気温が検出される。クランク角センサ１５では、クランク軸の回転角１０゜毎の信号と燃焼周期毎の信号が出力される。水温センサ１４はエンジン９の冷却水温度を検出する。またアクセル開度センサ１３は、アクセル６の踏み込み量を検出し、それによって運転者の要求トルクを検出する。
【００１２】
アクセル開度センサ１３、エアフローセンサ２、吸気温センサ２９、電子スロットル３に取り付けられたスロットル開度センサ１７、クランク角センサ１５、水温センサ１４のそれぞれの信号は、後述のコントロールユニット１６に送られ、これらセンサ出力からエンジン９の運転状態を得て、空気量、燃料噴射量、点火時期のエンジン９の主要な操作量が最適に演算される。
【００１３】
コントロールユニット１６内で演算された目標空気量は、目標スロットル開度→電子スロットル駆動信号に変換され、電子スロットル３に送られる。燃料噴射量は開弁パルス信号に変換され、燃料噴射弁(インジェクタ)７に送られる。またコントロールユニット１６で演算された点火時期で点火されるよう駆動信号が点火プラグ８に送られる。
【００１４】
噴射された燃料は吸気マニホールドからの空気と混合されエンジン９のシリンダー内に流入し混合気を形成する。混合気は所定の点火時期で点火プラグ８から発生される火花により爆発し、その燃焼圧によりピストンを押し下げてエンジン９の動力となる。爆発後の排気は排気マニホールド１０を経て三元触媒１１に送り込まれる。排気還流管１８を通って排気の一部は吸気側に還流される。還流量はＥＧＲ弁１９によって制御される。
【００１５】
排気管集合部に空燃比センサ１２が取り付けられている。触媒下流Ｏ２センサ２０は三元触媒１１の下流に取り付けられている。
【００１６】
図２はコントロールユニット１６の内部を示したものである。ＥＣＵ１６内にはエアフローセンサ２、空燃比センサ１２、アクセル開度センサ１３、水温センサ１４、クランク角センサ１５、スロットル弁開度センサ１７、触媒下流Ｏ２センサ２０、吸気温センサ２９、の各センサ出力値が入力され、入力回路２４にてノイズ除去等の信号処理を行った後、入出力ポート２５に送られる。入力ポートの値はＲＡＭ２３に保管され、ＣＰＵ２１内で演算処理される。演算処理の内容を記述した制御プログラムはＲＯＭ２２に予め書き込まれている。制御プログラムに従って演算された各アクチュエータ作動量を表す値はＲＡＭ２３に保管された後、入出力ポート２５に送られる。点火プラグ８の作動信号は点火出力回路２６内の一次側コイルの通流時はＯＮとなり、非通流時はＯＦＦとなるＯＮ・ＯＦＦ信号がセットされる。点火時期はＯＮからＯＦＦになる時である。出力ポートにセットされた点火プラグ８用の信号は点火出力回路２６で燃焼に必要な十分なエネルギーに増幅され点火プラグ８に供給される。また燃料噴射弁７の駆動信号は開弁時ＯＮ、閉弁時ＯＦＦとなるＯＮ・ＯＦＦ信号がセットされ、燃料噴射弁駆動回路２７で燃料噴射弁７を開くに十分なエネルギーに増幅され燃料噴射弁７に送られる。電子スロットル３の目標開度を実現する駆動信号は、電子スロットル駆動回路２８を経て、電子スロットル３に送られる。ＥＧＲ弁１９の目標開度を実現する駆動信号は、ＥＧＲ弁駆動回路３０を経て、ＥＧＲ弁１９に送られる。
【００１７】
以下、ＲＯＭ２２に書き込まれる制御プログラムについて述べる。図３は制御全体を表したブロック図であり、以下の演算部から構成される。
【００１８】
・燃料噴射量補正値演算部（図４）
・振幅演算部（図５）
・所要時間(所要角度)演算部（図６）
・無駄時間異常判定部（図７）
「燃料噴射量補正値演算部」では、所定周期で、全気筒の燃料噴射量を一律に変化させるための燃料噴射量補正値(Ti_hos)と所定周期毎にオンとなる周期フラグ(f_sin_init)を演算する。基本燃料噴射量(Tp)にTi_hosを乗じて、各気筒の燃料噴射量を決める噴射パルス幅(Ti1〜Ti4)を演算する。なお、Tpの演算方法は、広く知られている一般的な方法があるので、ここでは詳述しないが、吸入空気量、エンジン回転速度、インジェクタの噴射量特性等から求める。「振幅演算部」では、触媒上流空燃比信号センサ信号(Rabf)から空燃比信号の振幅(A1)を求める。「所要時間(所要角度)演算部」では、触媒上流空燃比センサ信号(Rabf)から、前記f_sin_initが１となってから、前記所定周期一サイクル間においてRabfが最大となるまでの所要時間(T1)あるいは角度を求める。「無駄時間異常判定部」では、A1とT1とから異常フラグ(f_MUL)を求める。以下、各演算部の詳細を説明する。
＜燃料噴射量補正値演算部（図４）＞
本演算部では、Ti_hos(燃料噴射量補正値)とf_sin_init(周期フラグ)を演算する。具体的には、図４に示される。
i)回転速度が所定範囲かつ、エンジン負荷が所定範囲かつ、
回転速度の今回値と前回値の差が所定値以下かつ
エンジン負荷の今回値と前回値の差が所定値以下のとき
・周期faで、sin波の値s0を
演算する。
ただし、fa≧fcとする。
fc：カットオフ周波数
・一周期毎にf_sin_init=1
とする。
それ以外は、
f_sin_init=0とする。
ii) ‘i)’以外のとき
s0=0
f_sin_init=0
とする。
s0にK_Ti_hos(補正値幅)を乗じ、１を加えた値をTi_hos(燃料噴射量補正値)とする。K_Ti_hosは、燃料噴射量もしくは実空燃比の振動振幅を決める値であり、エンジン９の運転性、排気性能、無駄時間特性の検出精度を考慮して決める。なお、エンジン性能への影響などを考慮し、Ti_hosを周期faで振動させる回数は、所定回数と決めておき、必要最小な回数だけ、振動させるのが望ましい。
＜振幅演算部（図５）＞
本演算部では、A1(振幅)を演算する。具体的には、図５に示される。
f_sin_init=1となってから次回f_sin_init=1となるまでのRabfの最大値と最小値の差を振幅Ａ1とする。
＜所要時間(所要角度)演算部（図６）＞
本演算部では、T1(所要時間)を演算する。具体的には、図６に示される。
・f_sin_init=1となったときタイマーをリセットする。
・f_sin_init=1となってから次回f_sin_init=1となるまでの期間でRabfが最大値となったときのタイマー値をT1とする。
なお、上記処理は、所要時間としているが、下記の様に、所要角度を演算しても良い。
・f_sin_init=1となったときのエンジン回転角度θaを記憶する。
・f_sin_init=1となってから次回f_sin_init=1となるまでの期間でRabfが最大値となったときのエンジン回転角度θbとし、θb-θaを所要角度θ0とする。なお、θ0のダイナミックレンジは、空燃比センサ１２の無駄時間の長さ、検出時のエンジン運転条件および周期faに応じて設定する（３６０ｄｅｇより大きくなることもある）。
＜無駄時間異常判定部（図７）＞
本演算部では、f_MUL(異常フラグ)を演算する。具体的には、図７に示される。
【００１９】
K_A1≦A1かつK_T1≦T1のとき、f_MUL=1とする。
【００２０】
K_A1,K_T1は、無駄時間異常と判定するレベルを規定する値である。診断目標性能に応じて決める。
【００２１】
なお、上述した所要角度θ0を用いて判定する場合は、下記処理となる。
【００２２】
K_A1≦A1かつK_θ0≦θ0のとき、f_MUL=1とする。
【００２３】
K_θ0は、無駄時間異常と判定するレベルを規定する値である。診断目標性能に応じて決める。また、空燃比センサ１２の無駄時間が一定であっても、所用角度θ0は、エンジン９の回転速度に応じて変化するので、様々な回転速度で検出を行う場合は、回転速度の感度がなくなるように補正を行う。
【実施例２】
【００２４】
本実施例では、一気筒の空燃比を他の気筒の空燃比より所定量ずらして、エンジン２回転周期の空燃比振動を発生させ、当該信号を用いて、空燃比センサ１２の無駄時間劣化を検出する。
【００２５】
図１は本実施例を示すシステム図であるが、実施例１と同じであるので詳述しない。図２はコントロールユニット１６の内部を示したものであるが、実施例１と同じであるので詳述しない。
【００２６】
以下、ＲＯＭ２２に書き込まれる制御プログラムについて述べる。図８は制御全体を表したブロック図であり、以下の演算部から構成される。
【００２７】
・燃料噴射量補正値演算部（図９）
・振幅演算部（図１０）
・所要角度演算部（図１１）
・無駄時間異常判定部（図１２）
「燃料噴射量補正値演算部」では、各気筒の燃料噴射量補正値(Ti_hos1〜4)を演算する。特に本実施例では１番気筒の燃料噴射量補正値(Ti_hos1)のみ所定量ずらすことで、エンジン２回転周期の空燃比振動を発生させる。基本燃料噴射量(Tp)にTi_hos1〜4を乗じて、各気筒の燃料噴射量を決める噴射パルス幅(Ti1〜Ti4)を演算する。なお、Tpの演算方法は、広く知られている一般的な方法があるので、ここでは詳述しない。「振幅演算部」では、触媒上流空燃比信号センサ信号(Rabf)から空燃比信号の振幅(A1)を求める。「所要角度演算部」では、触媒上流空燃比センサ信号(Rabf)から、一周期（エンジン２回転）においてRabfが最大となるまでの所要角度(θ1)を求める。「無駄時間異常判定部」では、A1とθ1とから異常フラグ(f_MUL)を求める。以下、各演算部の詳細を説明する。
＜燃料噴射量補正値演算部（図９）＞
本演算部では、Ti_hos1〜4(１〜４番気筒燃料噴射量補正値)を演算する。具体的には、図９に示される。
i)回転速度が所定範囲かつ、エンジン負荷が所定範囲かつ、
回転速度の今回値と前回値の差が所定値以下かつ
エンジン負荷の今回値と前回値の差が所定値以下のとき
Ti_hos1=K_Ti_hos1
とする。
ii) ‘i)’以外のとき
Ti_hos1=1
とする。K_Ti_hos1(１番気筒燃料噴射量補正値)は、燃料噴射量もしくは実空燃比の振動振幅を決める値であり、エンジン９の運転性、排気性能、無駄時間特性の検出精度を考慮して決める。なお、エンジン性能への影響などを考慮し、Ti_hos1=K_Ti_hos1とする期間は、所定期間と決めておき、必要最小な期間だけ、振動させるのが望ましい。
＜振幅演算部（図１０）＞
本演算部では、A1(振幅)を演算する。具体的には、図１０に示される。エンジン９が２回転する間のRabfの最大値と最小値の差を振幅Ａ1とする。
＜所要角度演算部（図１１）＞
本演算部では、θ1(所要角度)を演算する。具体的には、図６に示される。エンジン９が２回転する間に、Rabfが最大値となったときのエンジン回転角度をθ1a(所要角度基本値)とする。θ1_Gak(所要角度学習値)を７２０で割った余りをMod_θ1_Gak(所要角度学習値余り値)とする。Mod_θ1_Gakとθ1aの差をΔθ1(所要角度変化値)とする。θ1_GakとMod_θ1_Gakの差をθ1_Gak0(所要角度学習値オフセット)とする。
Δθ1≧K_Δθ1のとき、
θ1=θ1_Gak0＋Δθ1
θ1_Gak=θ1
とする。
・それ以外のとき
θ1=θ1_Gak
とする。
空燃比センサ１２の無駄時間の長さは、角度換算で、エンジン２回転に相当する７２０ｄｅｇより大きくなることもある。一方で、０≦θ1a＜７２０である。空燃比センサ１２の無駄時間の長さに相当する角度であるθ1_Gak(所要角度学習値)が７２０より大きい場合を想定して、上記処理を行う。
【００２８】
なお、θ1_Gakの初期値は、空燃比センサ初期状態における無駄時間の長さとする。また、空燃比センサ１２の無駄時間が一定であっても、本演算部で扱う各所要角度値は、エンジン９の回転速度に応じて変化するので、様々な回転速度で検出を行う場合は、回転速度の感度がなくなるように補正を行う。
＜無駄時間異常判定部（図１２）＞
本演算部では、f_MUL(異常フラグ)を演算する。具体的には、図１２に示される。
【００２９】
K_A1≦A1かつK_θ1≦θ1のとき、f_MUL=1とする。
【００３０】
K_A1,K_θ1は、無駄時間異常と判定するレベルを規定する値である。診断目標性能に応じて決める。
【００３１】
本実施例では、１番気筒の燃料噴射量をずらすことで、エンジン２回転相当の周波数で振動する空燃比変動を発生させているが、２〜４番気筒のいずれの燃料噴射量をずらしても、同じ現象が得られる。また、複数の気筒の燃料噴射量を同時にずらしても良い。排気性能、運転性能などを考慮して、最適な各気筒の燃料噴射量補正値を決めるのが良い。また、各気筒の燃料噴射量補正値に応じて、エンジン２回転周期の空燃比変動の振幅、位相も変わるので、θ1_Gakの初期値、K_A1、K_θ1もそれに応じて設定する。
【実施例３】
【００３２】
本実施例では、一気筒の空燃比を他の気筒の空燃比より所定量ずらして、エンジン２回転周期の空燃比振動を発生させ。空燃比センサ信号をフーリエ変換し、エンジン２回転周期に相当する周波数のパワースペクトルと位相スペクトルを演算する。パワースペクトルと位相スペクトルを用いて、無駄時間劣化を検出する。
【００３３】
図１は本実施例を示すシステム図であるが、実施例１と同じであるので詳述しない。図２はコントロールユニット１６の内部を示したものであるが、実施例１と同じであるので詳述しない。
【００３４】
以下、ＲＯＭ２２に書き込まれる制御プログラムについて述べる。図１３は制御全体を表したブロック図であり、以下の演算部から構成される。
【００３５】
・燃料噴射量補正値演算部（図９）
・２回転成分演算部（図１４）
・振幅演算部（図１５）
・所要角度演算部（図１６）
・無駄時間異常判定部（図１７）
「燃料噴射量補正値演算部」では、各気筒の燃料噴射量補正値(Ti_hos1〜4)を演算する。特に本実施例では１番気筒の燃料噴射量補正値(Ti_hos1)のみ所定量ずらすことで、エンジン２回転周期の空燃比振動を発生させる。基本燃料噴射量(Tp)にTi_hos1〜4を乗じて、各気筒の燃料噴射量を決める噴射パルス幅(Ti1〜Ti4)を演算する。なお、Tpの演算方法は、広く知られている一般的な方法があるので、ここでは詳述しない。「２回転成分演算部」で、触媒上流空燃比センサ信号(Rabf)をフーリエ変換し、エンジン２回転周期に相当する周波数成分の実数部(R_2rev)と虚数部(I_2rev)を演算する。「振幅演算部」では、R_2revとI_2revから、パワースペクトルを求め、振幅(A1)とする。「所要角度演算部」では、R_2revとI_2revから、位相スペクトルを求め、所要角度(θ2)とする。「無駄時間異常判定部」では、A1とθ2とから異常フラグ(f_MUL)を求める。以下、各演算部の詳細を説明する。
＜燃料噴射量補正値演算部（図９）＞
本演算部では、Ti_hos1〜4(１〜４番気筒燃料噴射量補正値)を演算する。具体的には、図９に示されるが、実施例２と同じであるので、詳述しない。
＜２回転成分演算部（図１４）＞
本演算部では、触媒上流空燃比センサ１２の信号(Rabf)の２回転成分の実数部(R_2rev)と虚数部(I_2rev)を演算する。具体的には、図１４に示される。Rabfの今回値と前回値の差を演算し、dRabf(触媒上流空燃比センサ信号差分値)とする。dRabfに対して図中の波線で囲まれた処理(離散フーリエ変換)を実施する。
【００３６】
C_R×dRabfの今回値と前回値と前々回値と前々々回値の和をR_2revとする。また、C_I×dRabfの今回値と前回値と前々回値と前々々回値の和をI_2revとする。ここに、C_RおよびC_Iは、CYLCNT(シリンダNo.)に応じて、次の様に演算する。CYLCNTは、Ｎ番気筒のピストン位置が所定値にあるときに更新される。ここでは、当該気筒の圧縮ＴＤＣ前１１０degで更新されるものとする。
【００３７】
CYLCNT=1のとき、C_R=1
CYLCNT=3もしくは2のとき、C_R=0
CYLCNT=4のとき、C_R=-1
また、
CYLCNT=1もしくは4のとき、C_I=0
CYLCNT=3のとき、C_I=1
CYLCNT=2のとき、C_I=-1
＜振幅演算部（図１５）＞
本演算部では、A2(振幅)を演算する。具体的には、図１５に示される。R_2revとI_2revから、下式により、２回転成分のパワースペクトルを求め、A2とする。
【００３８】
√((R_2rev×R_2rev)＋(I_2rev×I_2rev))
精度を高めるために、複数回パワースペクトルを求め、その平均値（移動平均でもよい）を用いるのも良い。
＜所要角度演算部（図１６）＞
本演算部では、θ2(所要角度)を演算する。具体的には、図１６に示される。R_2revとI_2revから、下式により、Phase0(２回転成分位相基本値)を求める    
arctan2(I_2rev/R_2rev)×(180/π)
ここに、arctan2は、４象限(-180〜180deg)に対応した逆正接値(＝位相)演算する。
さらに、位相の範囲を0〜360degとした位相スペクトルをθ2a（所要角度基本値）とする。具体的には、
Phase0＜0の時は、θ2a=Phase0+360とし、
それ以外の時は、θ2a=Phase0とする。
【００３９】
θ2b=2×θ2a
とする。
【００４０】
これは、θ2aをエンジン回転角度に換算する為である。
θ2_Gak(所要角度学習値)を７２０で割った余りをMod_θ2_Gak(所要角度学習値余り値)とする。Mod_θ2_Gakとθ2aの差をΔθ2(所要角度変化値)とする。θ2_GakとMod_θ2_Gakの差をθ2_Gak0(所要角度学習値オフセット)とする。
Δθ2≧K_Δθ2のとき、
θ2=θ2_Gak0＋Δθ2
θ2_Gak=θ2
とする。
・それ以外のとき
θ2=θ2_Gak
とする。
【００４１】
空燃比センサ１２の無駄時間の長さは、角度換算で、エンジン２回転に相当する７２０ｄｅｇより大きくなることもある。一方で、θ2bは、０≦θ2b＜７２０である。空燃比センサ１２の無駄時間の長さに相当する角度であるθ2_Gak(所要角度学習値)が７２０より大きい場合を想定して、上記処理を行う。
【００４２】
なお、θ2_Gakの初期値は、空燃比センサ初期状態における無駄時間の長さとする。また、空燃比センサ１２の無駄時間が一定であっても、本演算部で扱う各所要角度値は、エンジン９の回転速度に応じて変化するので、様々な回転速度で検出を行う場合は、回転速度の感度がなくなるように補正を行う。また、精度を高めるために、θ2aの演算は平均値（移動平均でもよい）を用いるのも良い。
＜無駄時間異常判定部（図１７）＞
本演算部では、f_MUL(異常フラグ)を演算する。具体的には、図１７に示される。
【００４３】
K_A1≦A1かつK_θ2≦θ2のとき、f_MUL=1とする。
K_A1,K_θ2は、無駄時間異常と判定するレベルを規定する値である。診断目標性能に応じて決める。
【００４４】
本実施例では、１番気筒の燃料噴射量をずらすことで、エンジン２回転相当の周波数で振動する空燃比変動を発生させているが、２〜４番気筒のいずれの燃料噴射量をずらしても、同じ現象が得られる。また、複数の気筒の燃料噴射量を同時にずらしても良い。排気性能、運転性能などを考慮して、最適な各気筒の燃料噴射量補正値を決めるのが良い。また、各気筒の燃料噴射量補正値に応じて、エンジン２回転周期の空燃比変動の振幅、位相も変わるので、θ2_Gakの初期値、K_A1、K_θ2もそれに応じて設定する。
【実施例４】
【００４５】
本実施例では、検出した無駄時間に基づいて空燃比フィードバック制御のパラメータを補正する。
【００４６】
図１は本実施例を示すシステム図であるが、実施例１と同じであるので詳述しない。図２はコントロールユニット１６の内部を示したものであるが、実施例１と同じであるので詳述しない。
【００４７】
以下、ＲＯＭ２２に書き込まれる制御プログラムについて述べる。図１８は制御全体を表したブロック図であり、以下の演算部から構成される。
【００４８】
・燃料噴射量補正値演算部（図９）
・２回転成分演算部（図１４）
・振幅演算部（図１５）
・所要角度演算部（図１６）
・無駄時間異常判定部（図１７）
・空燃比フィードバック補正値演算部（図１９）
「燃料噴射量補正値演算部」では、各気筒の燃料噴射量補正値(Ti_hos1〜4)を演算する。特に本実施例では１番気筒の燃料噴射量補正値(Ti_hos1)のみ所定量ずらすことで、エンジン２回転周期の空燃比振動を発生させる。基本燃料噴射量(Tp)にTi_hos1〜4を乗じて、各気筒の燃料噴射量を決める噴射パルス幅(Ti1〜Ti4)を演算する。なお、Tpの演算方法は、広く知られている一般的な方法があるので、ここでは詳述しない。「２回転成分演算部」で、触媒上流空燃比センサ信号(Rabf)をフーリエ変換し、エンジン２回転周期に相当する周波数成分の実数部(R_2rev)と虚数部(I_2rev)を演算する。「振幅演算部」では、R_2revとI_2revから、パワースペクトルを求め、振幅(A1)とする。「所要角度演算部」では、R_2revとI_2revから、位相スペクトルを求め、所要角度(θ2)とする。「無駄時間異常判定部」では、A1とθ2とから異常フラグ(f_MUL)を求める。「空燃比フィードバック補正値演算部」では、触媒上流空燃比センサ信号(Rabf)の出力値が目標値となるように、燃料噴射量を補正する補正値(Alpha)を演算する。また空燃比フィードバックに関するパラメータをθ2の値に応じて補正する。以下、各演算部の詳細を説明する。
＜燃料噴射量補正値演算部（図９）＞
本演算部では、Ti_hos1〜4(１〜４番気筒燃料噴射量補正値)を演算する。具体的には、図９に示されるが、実施例２と同じであるので、詳述しない。
＜２回転成分演算部（図１４）＞
本演算部では、触媒上流空燃比センサ１２の信号(Rabf)の２回転成分の実数部(R_2rev)と虚数部(I_2rev)を演算する。具体的には、図１４に示されるが、実施例３と同じであるので、詳述しない。
＜振幅演算部（図１５）＞
本演算部では、A2(振幅)を演算する。具体的には、図１５に示されが、実施例３と同じであるので、詳述しない。
＜所要角度演算部（図１６）＞
本演算部では、θ2(所要角度)を演算する。具体的には、図１６に示されるが、実施例３と同じであるので、詳述しない。
＜無駄時間異常判定部（図１７）＞
本演算部では、f_MUL(異常フラグ)を演算する。具体的には、図１７に示されるが、実施例３と同じであるので、詳述しない。
＜空燃比フィードバック補正値演算部（図１９）＞
本演算部では、Alpha(空燃比フィードバック補正値)を演算する。具体的には、図１９に示される。Rabf(触媒上流空燃比)とTaRabf(目標空燃比)の差に基づいて、ＰＩ制御により、Alphaを演算する。
【００４９】
θ2からテーブルM_Phosを参照して、ＰＩ制御Ｐ分ゲイン(P_hos)を求める。
【００５０】
θ2からテーブルM_Ihosを参照して、ＰＩ制御Ｉ分ゲイン(I_hos)を求める。
M_Phos,M_Ihosは、空燃比制御系の伝達特性等から求める。また、エンジン９の運転条件に応じて、変える仕様としてもよい。無駄時間系に対する制御方法として、スミス法など無駄時間系モデルを用いた方式がある。図１９では示していないが、θ２を用いて、無駄時間モデルの無駄時間パラメータを補正する方式としても良い。
【００５１】
なお、各気筒の空燃比を検出もしくは推定しつつ、各気筒の空燃比を目標空燃比に制御する気筒別空燃比がある。当該制御を実施していない時に、本実施例２〜４を、実施することが望ましい。ただし、当該制御を実施していても、特定の気筒の燃料噴射量をずらしたとき、当該制御により補正が行われる期間に診断が可能である。
【００５２】
以下に本発明の特徴についてまとめる。本発明の一態様における制御装置は、空燃比を検出する手段と、空燃比を所定周期で変動させる手段と、空燃比検出手段の出力信号における所定周波数の振幅が所定値以上でかつ、エンジンに関するパラメータの基準位置もしくは基準時期から、前記空燃比検出手段の出力信号の所定値までの所要時間もしくは所要角度が所定値以上のとき、空燃比検出手段の異常を報知するもしくは少なくともエンジン制御の一部をフェールセーフにする手段とを備えたことを特徴とする。
【００５３】
すなわち、空燃比センサの劣化モードには、主に、ゲイン劣化、応答性劣化、無駄時間劣化の３つがある。所定周波数で空燃比が振動しているとき、ゲイン劣化発生時は、振動空燃比の振幅が正常時と比較して、小さくあるいは大きくなる。応答性劣化発生時は、振動空燃比の振幅が所定周波数以上では、正常時の振幅と比較して小さくなり、また、振動空燃比の位相（振動空燃比の最大値、最小値などの位置）が正常時の位相と比較して遅くなる。これに対して、無駄時間劣化発生時は、振動空燃比の振幅は正常時と比較して変化せず、また、振動空燃比の位相が正常時と比較して遅くなる。位相が正常時と比較して、変化するのは、応答性劣化発生時と無駄時間劣化発生時である。振幅は、応答性劣化時は、小さくなるが、無駄時間劣化発生時は、変化しない。したがって、上述の如く、「空燃比センサの出力信号における所定周波数の振幅が所定値以上」（振動空燃比の振幅は正常時と比較して変化せず）でかつ、「エンジンに関するパラメータの基準位置もしくは基準時期から、前記空燃比センサの出力信号の所定値までの所要時間もしくは所要角度が所定値以上」（振動空燃比の位相が正常時と比較して遅くなっている）のとき、空燃比センサの無駄時間特性が悪化（無駄時間が長くなっている）として、空燃比センサの異常を報知するもしくは少なくともエンジン制御の一部をフェールセーフにするものである。
【００５４】
また、本発明の制御装置は、空燃比を所定周波数以上の周波数で振動させる手段を備えたことを特徴とする。
【００５５】
すなわち、所定周波数以上で振動させることで、短期間で多くの検出結果が得られるため、実用上、有利である。また、上述したように、応答性劣化発生時、周波数が所定周波数より低いと、振幅は正常時と比較して、ほとんど小さくならないので、無駄時間劣化と分離検出するためにも、周波数を所定周波数以上とするものである。
【００５６】
また、本発明の制御装置は、前記所定周波数は、空燃比センサ周波数特性におけるカットオフ周波数以上の周波数であることを特徴とするエンジンの制御装置。
【００５７】
すなわち、応答性劣化発生時に、正常時と比較して、振幅が小さくなる周波数帯域として、カットオフ周波数より高い周波数であることを明記するものである。
【００５８】
また、本発明の制御装置は、少なくとも一つの気筒の空燃比を他の気筒の空燃比より所定量ずらすことで、空燃比(検出手段の出力信号)をエンジン２回転周期で振動させる手段を備えたことを特徴とする。
【００５９】
すなわち、少なくとも一つの気筒の空燃比を他の気筒の空燃比より所定量ずらすと、気筒間の空燃比にばらつきが発生し、排気管集合部の空燃比信号が、エンジンが２回転する周期で振動する現象が発生する。この振動空燃比から、上述の方法で、空燃比センサの無駄時間劣化を検出するものである。この場合、全気筒の平均空燃比は、目標空燃比になるので、排気性能の悪化、運転性の悪化がほとんどなく、空燃比センサの無駄時間特性の検出が可能である。
【００６０】
また、本発明の制御装置は、前記エンジンに関するパラメータの基準位置もしくは基準時期は、エンジンの所定クランク角度もしくは燃料噴射量変更タイミングであることを特徴とする。
【００６１】
すなわち、振動空燃比の位相（振動空燃比の最大値、最小値などの位置）を求める基準位置としてエンジンの所定角度であることを明記するものである。すなわち、上述の気筒間空燃比ばらつきによる空燃比振動現象の周波数は、エンジン２回転周期に相当するので、エンジンの所定角度（たとえば、特定気筒のＴＤＣ、ＢＤＣなど）を基準点として、例えば、振動波形の最大値もしくは最小値までの所要角度を位相として求めることができる。また、振動空燃比の位相を求める基準時期として燃料噴射変更タイミングであることを明記するものである。全気筒の燃料噴射量を所定周波数で増減量することで、振動空燃比を発生させる場合、燃料噴射量を変更したタイミングを基準点として、例えば、振動波形の最大値もしくは最小値までの所要角度を位相として求めることができる。
【００６２】
また、本発明の制御装置は、前記空燃比検出手段の出力信号の所定値は、前記空燃比検出手段の出力信号の振動波形一周期あたりの最大値もしくは最小値であることを特徴とする。
【００６３】
すなわち、空燃比振動波形の位相を求める場合、上述のように、エンジンの所定角度、燃料噴射量変更タイミングなど決められた基準点から、空燃比振動波形の決められた位置までの角度、時間を得ればよい。空燃比振動波形の決められた位置として、扱いやすい振動波形一周期あたりの最大値もしくは最小値であることを明記するものである。
【００６４】
また、本発明の制御装置は、前記空燃比検出手段の出力信号をフーリエ変換する手段と、前記フーリエ変換により得られるパワースペクトルから前記振幅を求める手段と、前記フーリエ変換により得られる位相スペクトルから前記エンジンに関するパラメータの基準位置もしくは基準時期から、前記空燃比検出手段の出力信号の所定値までの所要時間もしくは所要角度を求める手段を備えたことを特徴とする。
【００６５】
すなわち、振動空燃比の信号をフーリエ変換することで、パワースペクトルと位相スペクトルを得る。「振動空燃比の振動周波数におけるパワースペクトルの大きさ」と「振動空燃比の振幅の大きさ」は比例関係にある。また、「振動空燃比の振動周波数における位相スペクトル値」と「エンジンに関するパラメータの基準位置もしくは基準時期から、振動空燃比の所定値（例えば最大値、最小値）までの所要時間もしくは所要角度」の間には相関がある。この関係を利用するものである。
【００６６】
また、本発明の制御装置は、前記エンジンに関するパラメータの基準位置もしくは基準時期から、前記空燃比検出手段の出力信号の所定値までの所要時間もしくは所要角度に基づいて、空燃比フィードバック制御のパラメータを変更する手段を備えたことを特徴とする。
【００６７】
すなわち、空燃比センサを用いた空燃比フィードバック制御性能に関するパラメータは、空燃比センサが正常な場合、あるいは、ある一定の範囲内の特性悪化までを想定して、予め決められている。空燃比センサの無駄時間特性が大きく変化すると、このパラメータとのアンマッチが発生し、空燃比フィードバック制御の性能を悪化させる。したがって、上述の方法で、無駄時間に相当するエンジンに関するパラメータの基準位置もしくは基準時期から、振動空燃比の所定値（例えば最大値、最小値）までの所要時間もしくは所要角度に基づいて、空燃比フィードバック制御のパラメータを最適化し、性能の悪化を抑制するものである。
【符号の説明】
【００６８】
１  エアクリーナ
２  エアフローセンサエアフローセンサ
３  電子スロットル
４  吸気管
５  コレクタ
６  アクセル
７  燃料噴射弁
８  点火プラグ
９  エンジン
１０  排気管
１１  三元触媒
１２  空燃比センサ
１３  アクセル開度センサ
１４  水温センサ
１５  クランク角センサ
１６  コントロールユニット
１７  スロットル開度センサ
１８  排気還流管
１９  ＥＧＲ弁
２０  触媒下流Ｏ２センサ
２１  ＣＰＵ
２２  ＲＯＭ
２３  ＲＡＭ
２４入力回路
２５  入出力ポート
２６  点火出力回路
２７  燃料噴射弁駆動回路
２８  電子スロットル駆動回路
２９  吸気温センサ
３０  ＥＧＲ弁駆動回路
【図１】
2015224588.tif 000003
【図２】
2015224588.tif 000004
【図３】
2015224588.tif 000005
【図４】
2015224588.tif 000006
【図５】
2015224588.tif 000007
【図６】
2015224588.tif 000008
【図７】
2015224588.tif 000009
【図８】
2015224588.tif 000010
【図９】
2015224588.tif 000011
【図１０】
2015224588.tif 000012
【図１１】
2015224588.tif 000013
【図１２】
2015224588.tif 000014
【図１３】
2015224588.tif 000015
【図１４】
2015224588.tif 000016
【図１５】
2015224588.tif 000017
【図１６】
2015224588.tif 000018
【図１７】
2015224588.tif 000019
【図１８】
2015224588.tif 000020
【図１９】
2015224588.tif 000021