(57)【要約】【課題】燃料を内燃機関の吸気通路内及び気筒内に供給する２種類の燃料供給装置の故障を精度よくかつ迅速に判定することができ、商品性を向上させることができる燃料供給装置の故障判定装置を提供する。【解決手段】故障判定装置1のECU2は、検出空燃比KACＴが目標空燃比KCMDになるように、フィードバック補正係数KAFを算出し、要求トルクTRQ及びエンジン回転数NEが第1燃料供給装置10のみを用いるPI領域と、第2燃料供給装置20のみを用いるDI領域と、それ以外の領域のいずれにあるかを判定し、PI領域にあるときに算出された値KAFの加重平均演算によって、学習値KAFAVE_PIを算出し、これに基づいて第1燃料供給装置10の故障を判定し、DI領域にあるときに検出された値KAFの、PI領域よりも小さな重み係数を用いた加重平均演算によって学習値KAFAVE_DIを算出し、これに基づいて第2燃料供給装置20の故障を判定する。【選択図】図7
2015135060.tif 000002
【特許請求の範囲】
【請求項１】
燃料を内燃機関の吸気通路内及び気筒内にそれぞれ供給する第１燃料供給装置及び第２燃料供給装置の故障を判定する燃料供給装置の故障判定装置であって、
前記内燃機関の排気通路を流れる排ガスの空燃比を表す空燃比パラメータを検出する空燃比パラメータ検出手段と、
前記内燃機関の負荷を表す負荷パラメータを検出する負荷パラメータ検出手段と、
前記検出された空燃比パラメータ及び所定のフィードバック制御アルゴリズムを用いてフィードバック補正値を算出するフィードバック補正値算出手段と、
当該算出されたフィードバック補正値を用いて、前記第１燃料供給装置及び前記第２燃料供給装置による燃料の供給量を制御する燃料制御手段と、
前記検出された負荷パラメータが、前記第１燃料供給装置のみを使用すべき第１領域と、前記第２燃料供給装置のみを使用すべき第２領域と、当該第１領域及び当該第２領域以外の領域とのいずれにあるかを判定する領域判定手段と、
当該領域判定手段の判定結果に基づき、前記負荷パラメータが前記第１領域にあるときに算出されたフィードバック補正値を所定の第１学習手法を用いて第１学習値として学習し、前記負荷パラメータが前記第２領域にあるときに算出されたフィードバック補正値を所定の第２学習手法を用いて第２学習値として学習するとともに、当該学習された第１学習値に基づいて前記第１燃料供給装置の故障を判定し、当該学習された第２学習値に基づいて前記第２燃料供給装置の故障を判定する故障判定手段と、
を備え、
当該故障判定手段は、前記第１燃料供給装置の故障判定と前記第２燃料供給装置の故障判定とを互いに異なる手法で実行することを特徴とする燃料供給装置の故障判定装置。
【請求項２】
前記第１領域及び前記第２領域の一方の領域は、他方の領域よりも狭く設定されており、
前記故障判定手段は、当該一方の領域にあるときに学習される前記第１学習値及び前記第２学習値の一方の学習値の学習速度を、他方の学習値の学習速度よりも大きくなるように設定することを特徴とする請求項１に記載の燃料供給装置の故障判定装置。
【請求項３】
前記内燃機関の燃焼状態が安定しているか否かを判定する燃焼状態判定手段をさらに備え、
前記故障判定手段は、当該燃焼状態判定手段の判定結果に基づき、前記内燃機関の燃焼状態が安定しているときには、前記一方の学習値の学習速度を、前記内燃機関の燃焼状態が不安定であるときよりも大きく設定することを特徴とする請求項２に記載の燃料供給装置の故障判定装置。
【請求項４】
前記負荷パラメータの領域が前記第１領域以外の領域から前記第１領域に移行する第１領域移行と、前記第２領域以外の領域から前記第２領域に移行する第２領域移行との一方の領域移行が発生したか否かを判定する領域移行判定手段と、
前記故障判定手段は、当該領域移行判定手段の判定結果に基づき、前記一方の領域移行が発生したときには、当該移行先の領域にあるときに算出される前記第１学習値及び前記第２学習値の一方の学習値の学習速度を、前記一方の領域移行が発生しないときよりも小さく設定するか、又は当該一方の学習値の学習を停止することを特徴とする請求項１ないし３のいずれかに記載の燃料供給装置の故障判定装置。
【請求項５】
前記内燃機関の混合気の空燃比が不安定な状態にあるか否かを判定する空燃比状態判定手段をさらに備え、
前記故障判定手段は、当該空燃比状態判定手段の判定結果に基づき、前記混合気の空燃比が不安定な状態にあるときには、前記第１学習値及び前記第２学習値の少なくとも一方の学習値の学習速度を、前記混合気の空燃比が安定した状態にあるときよりも小さく設定するか、又は当該少なくとも一方の学習値の学習を停止することを特徴とする請求項１ないし４のいずれかに記載の燃料供給装置の故障判定装置。
【請求項６】
前記故障判定手段は、前記第１学習値が所定の第１判定領域にあるか否かに基づいて前記第１燃料供給装置の故障を判定し、前記第２学習値が前記所定の第１判定領域と異なる所定の第２判定領域にあるか否かに基づいて前記第２燃料供給装置の故障を判定することを特徴とする請求項１ないし５のいずれかに記載の燃料供給装置の故障判定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、燃料を内燃機関の吸気通路内及び気筒内にそれぞれ供給する２種類の燃料供給装置の故障を判定する燃料供給装置の故障判定装置に関する。
【背景技術】
【０００２】
従来、内燃機関における燃料供給装置の故障判定装置として、特許文献１に記載されたものが知られている。この内燃機関は、燃料供給装置として、吸気通路に設けられた１つの副燃料噴射弁と、燃料を気筒内に噴射するように、気筒ごとに設けられた主燃料噴射弁と、排気通路に設けられた空燃比センサなどを備えている。
【０００３】
この故障判定装置の場合、まず、空燃比センサの検出信号などに基づいて、主燃料噴射弁の故障を判定し（ステップ１０１）、主燃料噴射弁が正常である場合において、高負荷域にあるときには、主燃料噴射弁及び副燃料噴射弁による燃料噴射を実行する（ステップ１０６）。次いで、空燃比センサの検出信号に基づいて、副燃料噴射弁による噴射流量を算出し（ステップ１０８）、これが正常範囲にないときには、副燃料噴射弁が故障したと判定される（ステップ１１１）。
【０００４】
また、従来、車両用の内燃機関の運転中、排気通路内の排ガスの空燃比を目標値に収束させるように、所定のフィードバック制御アルゴリズムにより、フィードバック補正係数を算出するとともに、そのようなフィードバック補正係数を学習値として学習する制御手法として、特許文献２に記載されたものが知られている。この内燃機関は、原動機としてモータをさらに備えたハイブリッド車両に適用されたものであり、燃料を吸気通路内に噴射する第１燃料噴射弁と、燃料を気筒内に噴射する第２燃料噴射弁とを備えている。
【０００５】
この制御手法の場合、バッテリの充電レベルＳＯＣが十分な状態にあるときには、内燃機関を定常運転状態に制御するとともに、内燃機関の出力の不足分をモータの出力によって補助するように、モータが制御される。そして、内燃機関の定常運転中、第１燃料噴射弁及び第２燃料噴射弁の一方のみによる燃料噴射が実行されているときに、フィードバック補正係数の学習値が算出される。すなわち、学習値としては、第１燃料噴射弁のみを使用したときの第１学習値と、第２燃料噴射弁のみを使用したときの第２学習値とが算出される。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−９４１１号公報
【特許文献２】特開２００９−３０６１５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１の故障判定装置の場合、主燃料噴射弁が正常であると判定されている場合において、主燃料噴射弁及び副燃料噴射弁の双方から燃料を噴射しているときの空燃比センサの検出信号に基づいて、副燃料噴射弁の故障判定が実行されるので、副燃料噴射弁のみで噴射している条件下で副燃料噴射弁の故障判定を実行する場合と比べて、その判定精度が低いという問題がある。これに加えて、空燃比センサの１回分の検出信号に基づいて、副燃料噴射弁の故障判定が実行されるので、空燃比センサの検出誤差に起因して、故障の判定精度がさらに低下してしまう。
【０００８】
これを解消するために、特許文献２の制御手法を特許文献１の故障判定装置に適用し、主燃料噴射弁による燃料噴射を実行しているときのみに算出した学習値に基づいて、主燃料噴射弁の故障を判定し、副燃料噴射弁による燃料噴射を実行しているときのみに算出した学習値に基づいて、副燃料噴射弁の故障を判定することが考えられる。このように構成した場合、１回分の検出信号ではなく、学習値を用いることに加えて、２つの燃料噴射弁の一方のみが噴射している状態で、その燃料噴射弁の故障判定が実行されることによって、特許文献１の故障判定装置と比べて、故障判定の精度を向上させることが可能になる。
【０００９】
しかし、この場合、特許文献２の故障判定装置では、内燃機関を定常運転状態に保持する必要があるので、原動機として内燃機関のみを備えた車両の場合、定常運転状態のときにしか２つの学習値を算出できないことに起因して、学習速度の低下を招き、その学習精度の低下を招いてしまう。その結果、故障の判定精度が低下し、商品性が低下してしまう。
【００１０】
本発明は、上記課題を解決するためになされたもので、燃料を内燃機関の吸気通路内及び気筒内に供給する２種類の燃料供給装置の故障を精度よくかつ迅速に判定することができ、商品性を向上させることができる燃料供給装置の故障判定装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するために、請求項１に係る発明は、燃料を内燃機関３の吸気通路５内及び気筒４内にそれぞれ供給する第１燃料供給装置１０及び第２燃料供給装置２０の故障を判定する燃料供給装置の故障判定装置１であって、内燃機関３の排気通路６を流れる排ガスの空燃比を表す空燃比パラメータ（検出空燃比ＫＡＣＴ）を検出する空燃比パラメータ検出手段（ＥＣＵ２、ＬＡＦセンサ３２）と、内燃機関３の負荷を表す負荷パラメータ（エンジン回転数ＮＥ、要求トルクＴＲＱ）を検出する負荷パラメータ検出手段（ＥＣＵ２、クランク角センサ３０、アクセル開度センサ３１）と、検出された空燃比パラメータ及び所定のフィードバック制御アルゴリズムを用いてフィードバック補正値（フィードバック補正係数ＫＡＦ）を算出するフィードバック補正値算出手段（ＥＣＵ２、ステップ２２）と、算出されたフィードバック補正値を用いて、第１燃料供給装置１０及び第２燃料供給装置２０による燃料の供給量を制御する燃料制御手段（ＥＣＵ２、ステップ４，５，７，８）と、検出された負荷パラメータが、第１燃料供給装置１０のみを使用すべき第１領域（ＰＩ領域）と、第２燃料供給装置２０のみを使用すべき第２領域（ＤＩ領域）と、第１領域及び第２領域以外の領域とのいずれにあるかを判定する領域判定手段（ＥＣＵ２、ステップ１１〜１７）と、領域判定手段の判定結果に基づき、負荷パラメータが第１領域にあるときに算出されたフィードバック補正値を所定の第１学習手法（式（１））を用いて第１学習値（ＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩ）として学習し、負荷パラメータが第２領域にあるときに算出されたフィードバック補正値を所定の第２学習手法（式（２））を用いて第２学習値（ＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩ）として学習するとともに、学習された第１学習値に基づいて第１燃料供給装置１０の故障を判定し、学習された第２学習値に基づいて第２燃料供給装置２０の故障を判定する故障判定手段（ＥＣＵ２、ステップ５５〜６０，７３〜７８）と、を備え、故障判定手段は、第１燃料供給装置１０の故障判定と第２燃料供給装置２０の故障判定とを互いに異なる手法で実行することを特徴とする。
【００１２】
この燃料供給装置の故障判定装置によれば、検出された負荷パラメータが、第１燃料供給装置のみを使用すべき第１領域と、第２燃料供給装置のみを使用すべき第２領域と、第１領域及び第２領域以外の領域とのいずれにあるかが判定される。そして、その判定結果に基づき、負荷パラメータが第１領域にあるときに算出されたフィードバック補正値が所定の第１学習手法を用いて第１学習値として学習され、負荷パラメータが第２領域にあるときに算出されたフィードバック補正値が所定の第２学習手法を用いて第２学習値として学習される。さらに、学習された第１学習値に基づいて第１燃料供給装置の故障が判定され、学習された第２学習値に基づいて第２燃料供給装置の故障が判定されるので、内燃機関を定常運転状態に保持することなく、第１及び第２燃料供給装置の故障を判定することができる。これに加えて、第１燃料供給装置の故障判定と第２燃料供給装置の故障判定とを互いに異なる手法で実行されるので、第１及び第２学習値がそれぞれ学習される第１及び第２領域の特性に適した手法で、故障判定を実行することができる。以上の理由により、第１及び第２燃料供給装置の故障を精度よくかつ迅速に判定することができ、商品性を向上させることができる（なお、本明細書における「負荷パラメータの検出」及び「空燃比パラメータの検出」などの「検出」は、センサなどによってこれらのパラメータを直接検出することに限らず、これらのパラメータを他のパラメータを用いて算出することを含む）。
【００１３】
請求項２に係る発明は、請求項１に記載の燃料供給装置の故障判定装置１において、第１領域及び第２領域の一方の領域（ＰＩ領域）は、他方の領域（ＤＩ領域）よりも狭く設定されており（図４）、故障判定手段は、一方の領域にあるときに学習される第１学習値及び第２学習値の一方の学習値の学習速度を、他方の学習値の学習速度よりも大きくなるように設定する（ステップ５２〜５４，７１，７２）ことを特徴とする。
【００１４】
この燃料供給装置の故障判定装置によれば、第１領域及び第２領域の一方の領域が、他方の領域よりも狭く設定されているので、一方の領域にあるときに学習される学習値は、他方の領域で学習される学習値と比べて、その学習頻度が低くなる。これに対して、一方の領域にあるときに算出される第１学習値及び第２学習値の一方の学習値の学習速度が、他方の学習値の学習速度よりも大きくなるように設定されるので、学習頻度の低い方の学習値の学習速度がより大きくなることで、フィードバック補正値の算出結果をより迅速に学習値に反映させることができ、学習値の学習精度を向上させることができる。
【００１５】
請求項３に係る発明は、請求項２に記載の燃料供給装置の故障判定装置１において、内燃機関３の燃焼状態が安定しているか否かを判定する燃焼状態判定手段（ＥＣＵ２、ステップ５１）をさらに備え、故障判定手段は、燃焼状態判定手段の判定結果に基づき、内燃機関３の燃焼状態が安定しているときには、一方の学習値の学習速度を、内燃機関３の燃焼状態が不安定であるときよりも大きく設定する（ステップ５３，５４）ことを特徴とする。
【００１６】
この燃料供給装置の故障判定装置によれば、内燃機関の燃焼状態が安定しているときには、一方の学習値の学習速度が、内燃機関の燃焼状態が不安定であるときよりも大きく設定されるので、内燃機関の燃焼状態が安定していることに起因して精度よく算出されたフィードバック補正値を、より迅速に学習値に反映させることができ、学習値の学習精度をさらに向上させることができる。
【００１７】
請求項４に係る発明は、請求項１ないし３のいずれかに記載の燃料供給装置の故障判定装置１において、負荷パラメータの領域が第１領域以外の領域から第１領域に移行する第１領域移行と、第２領域以外の領域から第２領域に移行する第２領域移行との一方の領域移行が発生したか否かを判定する領域移行判定手段（ＥＣＵ２、ステップ３３，３５）と、故障判定手段は、領域移行判定手段の判定結果に基づき、一方の領域移行が発生したときには、移行先の領域にあるときに算出される第１学習値及び第２学習値の一方の学習値の学習速度を、一方の領域移行が発生しないときよりも小さく設定する（ステップ９１〜９４）か、又は一方の学習値の学習を停止することを特徴とする。
【００１８】
この燃料供給装置の故障判定装置によれば、負荷パラメータの領域が第１領域以外の領域から第１領域に移行する第１領域移行と、第２領域以外の領域から第２領域に移行する第２領域移行との一方の領域移行が発生したか否かが判定され、一方の領域移行が発生したときには、移行先の領域にあるときに算出される第１学習値及び第２学習値の一方の学習値の学習速度が、一方の領域移行が発生しないときよりも小さく設定されるか、又は第１学習値及び第２学習値の一方の学習が停止される。したがって、一方の学習値の学習速度が小さく設定されたときには、負荷パラメータの領域移行の発生に伴う、フィードバック補正値の変動や算出誤差の影響を抑制しながら、一方の学習値を学習することができ、その学習精度の低下を抑制することができる。さらに、一方の学習値の学習が停止されたときには、負荷パラメータの領域移行の発生に伴う、フィードバック補正値の変動や算出誤差の影響を回避しながら、一方の学習値を学習することができ、その学習精度を良好なレベルに維持することができる。
【００１９】
請求項５に係る発明は、請求項１ないし４のいずれかに記載の燃料供給装置の故障判定装置１において、内燃機関３の混合気の空燃比が不安定な状態にあるか否かを判定する空燃比状態判定手段（ＥＣＵ２、ステップ５０，７０）をさらに備え、故障判定手段は、空燃比状態判定手段の判定結果に基づき、混合気の空燃比が不安定な状態にあるときには、第１学習値及び第２学習値の少なくとも一方の学習値の学習速度を、混合気の空燃比が安定した状態にあるときよりも小さく設定する（ステップ５０，５２，５３，７０〜７２）か、又は少なくとも一方の学習値の学習を停止することを特徴とする。
【００２０】
この燃料供給装置の故障判定装置によれば、混合気の空燃比が不安定な状態にあるときには、第１学習値及び第２学習値の少なくとも一方の学習値の学習速度が、混合気の空燃比が安定した状態にあるときよりも小さく設定されるか、又は少なくとも一方の学習値の学習が停止される。したがって、少なくとも一方の学習値の学習速度が小さく設定されたときには、混合気の空燃比の変動に伴う、フィードバック補正値の変動や算出誤差の影響を抑制しながら、少なくとも一方の学習値を学習することができ、その学習精度の低下を抑制することができる。さらに、少なくとも一方の学習値の学習が停止されたときには、混合気の空燃比の変動に伴う、フィードバック補正値の変動や算出誤差の影響を回避しながら、少なくとも一方の学習値を学習することができ、その学習精度を良好なレベルに維持することができる。
【００２１】
請求項６に係る発明は、請求項１ないし５のいずれかに記載の燃料供給装置の故障判定装置１において、故障判定手段は、第１学習値が所定の第１判定領域にあるか否かに基づいて第１燃料供給装置１０の故障を判定し（ステップ５６）、第２学習値が所定の第１判定領域と異なる所定の第２判定領域にあるか否かに基づいて第２燃料供給装置２０の故障を判定する（ステップ７４）ことを特徴とする。
【００２２】
この燃料供給装置の故障判定装置によれば、第１学習値が所定の第１判定領域にあるか否かに基づいて第１燃料供給装置の故障が判定され、第２学習値が所定の第１判定領域と異なる所定の第２判定領域にあるか否かに基づいて第２燃料供給装置の故障が判定されるので、これらの第１判定領域及び第２判定領域を適切に設定することによって、故障判定精度を向上させることができる。
【図面の簡単な説明】
【００２３】
【図１】本発明の一実施形態に係る故障判定装置及びこれを適用した燃料供給装置を備えた内燃機関の構成を模式的に示す図である。
【図２】燃料噴射制御処理を示すフローチャートである。
【図３】領域判定処理を示すフローチャートである。
【図４】ＰＩ領域、ＤＩ領域及びＰＩ＋ＤＩ領域を示すマップである。
【図５】ＰＩ制御処理を示すフローチャートである。
【図６】故障判定処理を示すフローチャートである。
【図７】ＰＩ時判定処理を示すフローチャートである。
【図８】ＤＩ時判定処理を示すフローチャートである。
【図９】移行時学習処理を示すフローチャートである。
【発明を実施するための形態】
【００２４】
以下、図面を参照しながら、本発明の一実施形態に係る燃料供給装置の故障判定装置について説明する。図１に示すように、本実施形態の故障判定装置１は、内燃機関（以下「エンジン」という）３の燃料供給装置に適用されたものであり、ＥＣＵ２を備えている。  
【００２５】
このエンジン３は、図示しない車両に原動機として搭載された直列４気筒タイプのものであり、４つの気筒４と、これらの気筒４に接続された吸気通路５及び排気通路６と、気筒４ごとに設けられた点火プラグ７（１つのみ図示）などを備えている。この点火プラグ７は、ＥＣＵ２に電気的に接続されており、ＥＣＵ２は、エンジン３の運転中、点火プラグ７による混合気の着火タイミングすなわち点火時期を制御する。
【００２６】
また、燃料供給装置は、第１燃料供給装置１０及び第２燃料供給装置２０を備えている。この第１燃料供給装置１０は、燃料噴霧を吸気通路５の各吸気ポート５ａ内に供給するものであり、４つのポート燃料噴射弁１１、低圧燃料供給路１２及び低圧ポンプ１３などを備えている。この低圧ポンプ１３は、ＥＣＵ２に電気的に接続された電動ポンプタイプのものであり、その運転状態がＥＣＵ２によって制御される。
【００２７】
低圧ポンプ１３は、図示しない燃料タンクに接続されており、その運転中、燃料タンク内の燃料を、低圧燃料供給路１２を介して、各ポート燃料噴射弁１１に供給する。各ポート燃料噴射弁１１は、各気筒４の吸気ポート５ａに臨むように、吸気通路５のインテークマニホールドに設けられており、ＥＣＵ２に電気的に接続されている。ＥＣＵ２は、後述するように、ポート燃料噴射弁１１による吸気ポート５ａ内への燃料噴射量及び噴射時期を制御する。
【００２８】
一方、第２燃料供給装置２０は、燃料噴霧を気筒４内にダイレクトに供給するものであり、４つの筒内燃料噴射弁２１、高圧燃料供給路２２及び高圧ポンプ２３などを備えている。この高圧ポンプ２３は、エンジン３のクランクシャフト（図示せず）に連結されており、エンジン３の運転中、エンジン３の動力によって駆動される。
【００２９】
この高圧ポンプ２３は、前述した燃料タンクに接続されており、その運転中、燃料タンク内の燃料を、低圧ポンプ１３よりも高い圧力まで上昇させながら、高圧燃料供給路２２を介して、各筒内燃料噴射弁２１に供給する。さらに、この高圧ポンプ２３は、ＥＣＵ２に電気的に接続された圧力調整機構（図示せず）を備えており、ＥＣＵ２は、この圧力調整機構を制御することによって、高圧ポンプ２３から筒内燃料噴射弁２１に供給される燃料圧を制御する。
【００３０】
また、筒内燃料噴射弁２１は、気筒４ごとに配置され、その噴射口が気筒４内に臨む状態でシリンダヘッドに取り付けられているとともに、ＥＣＵ２に電気的に接続されている。ＥＣＵ２は、後述するように、筒内燃料噴射弁２１による気筒４内への燃料噴射量及び噴射時期を制御する。
【００３１】
さらに、ＥＣＵ２には、クランク角センサ３０、アクセル開度センサ３１及びＬＡＦセンサ３２が電気的に接続されている。このクランク角センサ３０は、マグネットロータ及びＭＲＥピックアップで構成されており、クランクシャフトの回転に伴い、いずれもパルス信号であるＣＲＫ信号及びＴＤＣ信号をＥＣＵ２に出力する。
【００３２】
このＣＲＫ信号は、所定クランク角（例えば１゜）ごとに１パルスが出力され、ＥＣＵ２は、このＣＲＫ信号に基づき、エンジン３の機関回転数（以下「エンジン回転数」という）ＮＥを算出する。また、ＴＤＣ信号は、各気筒４のピストン（図示せず）が吸気行程のＴＤＣ位置よりも若干、手前の所定のクランク角位置にあることを表す信号であり、所定クランク角ごとに１パルスが出力される。なお、本実施形態では、クランク角センサ３０が負荷パラメータ検出手段に相当し、エンジン回転数ＮＥが負荷パラメータに相当する。
【００３３】
また、アクセル開度センサ３１は、車両の図示しないアクセルペダルの踏み込み量（以下「アクセル開度」という）ＡＰを検出して、それを表す検出信号をＥＣＵ２に出力する。なお、本実施形態では、アクセル開度センサ３１が負荷パラメータ検出手段に相当する。
【００３４】
さらに、ＬＡＦセンサ３２は、排気通路６の途中に設けられており、理論空燃比よりもリッチなリッチ領域から極リーン領域までの広範囲な空燃比の領域において、排気通路６内を流れる排ガス中の酸素濃度をリニアに検出し、それを表す検出信号をＥＣＵ２に出力する。ＥＣＵ２は、このＬＡＦセンサ３２の検出信号の値に基づき、排ガス中の空燃比を表す検出空燃比ＫＡＣＴを算出する。この検出空燃比ＫＡＣＴは、具体的には当量比として算出される。なお、本実施形態では、ＬＡＦセンサ３２が空燃比パラメータ検出手段に相当し、検出空燃比ＫＡＣＴが空燃比パラメータに相当する。
【００３５】
ＥＣＵ２は、ＣＰＵ、ＲＡＭ、ＲＯＭ及びＩ／Ｏインターフェース（いずれも図示せず）などからなるマイクロコンピュータで構成されており、前述した各種のセンサ３０〜３２の検出信号などに応じて、以下に述べるように、燃料噴射制御処理などの各種の制御処理を実行する。
【００３６】
なお、本実施形態では、ＥＣＵ２が、空燃比パラメータ検出手段、負荷パラメータ検出手段、フィードバック補正値算出手段、燃料制御手段、領域判定手段、故障判定手段、燃焼状態判定手段、領域移行判定手段、及び空燃比状態判定手段に相当する。
【００３７】
次に、図２を参照しながら、燃料噴射制御処理について説明する。この制御装置は、前述したポート燃料噴射弁１１及び筒内燃料噴射弁２１による燃料噴射量及び噴射時期を算出するものであり、ＥＣＵ２により、ＴＤＣ信号の発生タイミングに同期して実行される。なお、以下の説明において算出される各種の値は、ＥＣＵ２のＲＡＭ内に記憶されるものとする。
【００３８】
同図に示すように、まず、ステップ１で、領域判定処理を実行する。この領域判定処理は、具体的には図３のように実行される。同図に示すように、まず、ステップ１０で、要求トルクＴＲＱを算出する。この要求トルクＴＲＱ（負荷パラメータ）は、運転者によってエンジン３に要求されているトルクを表すものであり、エンジン回転数ＮＥ及びアクセル開度ＡＰに応じて、図示しないマップを検索することにより算出される。
【００３９】
次いで、ステップ１１に進み、エンジン回転数ＮＥ及び要求トルクＴＲＱの組み合わせがＰＩ領域にあるか否かを判別する。このＰＩ領域は、図４において「ＰＩ」と表記した低回転かつ低負荷の領域であり、ポート燃料噴射弁１１のみによる燃料噴射を実行すべき運転領域に相当する。なお、以下の説明では、ポート燃料噴射弁１１のみによる燃料噴射を実行する制御処理を「ＰＩ制御処理」という。
【００４０】
ステップ１１の判別結果がＹＥＳで、エンジン回転数ＮＥ及び要求トルクＴＲＱの組み合わせがＰＩ領域にあるときには、ＰＩ制御処理を実行すべきであると判定して、それを表すために、ステップ１２に進み、ＰＩ制御フラグＦ＿ＰＩを「１」に設定すると同時に、後述するＤＩ制御フラグＦ＿ＤＩを「０」に設定した後、本処理を終了する。
【００４１】
一方、ステップ１１の判別結果がＮＯのときには、ステップ１３に進み、エンジン回転数ＮＥ及び要求トルクＴＲＱの組み合わせがＤＩ領域にあるか否かを判別する。このＤＩ領域は、図４において「ＤＩ」と表記しかつハッチングを施した領域、すなわちＰＩ領域よりも高負荷又は高回転の領域であって、筒内燃料噴射弁２１のみによる燃料噴射を実行すべき運転領域に相当する。なお、以下の説明では、筒内燃料噴射弁２１のみによる燃料噴射を実行する制御処理を「ＤＩ制御処理」という。
【００４２】
ステップ１３の判別結果がＹＥＳで、エンジン回転数ＮＥ及び要求トルクＴＲＱの組み合わせがＤＩ領域にあるときには、ＤＩ制御処理を実行すべきであると判定して、それを表すために、ステップ１４に進み、ＤＩ制御フラグＦ＿ＤＩを「１」に設定すると同時に、ＰＩ制御フラグＦ＿ＰＩを「０」に設定した後、本処理を終了する。
【００４３】
一方、ステップ１３の判別結果がＮＯのときには、ステップ１５に進み、エンジン回転数ＮＥ及び要求トルクＴＲＱの組み合わせがＰＩ＋ＤＩ領域にあるか否かを判別する。このＰＩ＋ＤＩ領域は、図４において「ＰＩ＋ＤＩ」と表記した領域であり、ＤＩ領域よりも高負荷の領域であって、ポート燃料噴射弁１１及び筒内燃料噴射弁２１の双方による燃料噴射を実行すべき運転領域に相当する。なお、以下の説明では、ポート燃料噴射弁１１及び筒内燃料噴射弁２１の双方による燃料噴射を実行する制御処理を「ＰＩ＋ＤＩ制御処理」という。
【００４４】
このステップ１５の判別結果がＹＥＳで、エンジン回転数ＮＥ及び要求トルクＴＲＱの組み合わせがＰＩ＋ＤＩ領域にあるときには、それを表すために、ステップ１６に進み、、ＰＩ制御フラグＦ＿ＰＩ及びＤＩ制御フラグＦ＿ＤＩをいずれも「１」に設定した後、本処理を終了する。
【００４５】
一方、ステップ１５の判別結果がＮＯのときには、燃料噴射を停止すべき運転領域にあると判定して、それを表すために、ステップ１７に進み、ＰＩ制御フラグＦ＿ＰＩ及びＤＩ制御フラグＦ＿ＤＩをいずれも「０」に設定した後、本処理を終了する。
【００４６】
図２に戻り、ステップ１で、領域判定処理を以上のように実行した後、ステップ２に進み、ＰＩ制御フラグＦ＿ＰＩが「１」であるか否かを判別する。この判別結果がＹＥＳのときには、ステップ３に進み、ＤＩ制御フラグＦ＿ＤＩが「０」であるか否かを判別する。この判別結果がＹＥＳのときには、ステップ４に進み、ＰＩ制御処理を実行する。
【００４７】
このＰＩ制御処理は、具体的には、図５のように実行される。同図に示すように、まず、ステップ２０で、エンジン回転数ＮＥ及び要求トルクＴＲＱに応じて、図示しないマップを検索することにより、基本噴射量ＴＩＢＡＳＥを算出する。
【００４８】
次いで、ステップ２１に進み、エンジン回転数ＮＥ及び要求トルクＴＲＱに応じて、図示しないマップを検索することにより、目標空燃比ＫＣＭＤを算出する。この目標空燃比ＫＣＭＤは当量比として算出される。
【００４９】
次に、ステップ２２で、検出空燃比ＫＡＣＴが目標空燃比ＫＣＭＤに収束するように、所定のフィードバック制御アルゴリズム（例えば、スライディングモード制御アルゴリズム）を用いて、フィードバック補正係数ＫＡＦ（フィードバック補正値）を算出する。
【００５０】
ステップ２２に続くステップ２３で、最終燃料噴射量ＴＯＵＴを算出する。具体的には、要求噴射量ＴＣＹＬを、基本噴射量ＴＩＢＡＳＥと目標空燃比ＫＣＭＤとフィードバック補正係数ＫＡＦの積ＴＩＢＡＳＥ・ＫＣＭＤ・ＫＡＦとして算出し、この要求噴射量ＴＣＹＬに対して、バッテリ電圧に応じた補正処理や付着補正処理を施すことによって、最終燃料噴射量ＴＯＵＴを算出する。
【００５１】
次いで、ステップ２４に進み、エンジン回転数ＮＥ及び最終燃料噴射量ＴＯＵＴに応じて、噴射時期θＩＮＪを算出した後、本処理を終了する。以上のように、最終燃料噴射量ＴＯＵＴ及び噴射時期θＩＮＪが算出されると、これらに対応する制御入力信号がポート燃料噴射弁１１に供給され、それにより、燃料がポート燃料噴射弁１１から吸気ポート５ａ内に噴射される。
【００５２】
図２に戻り、ステップ４で、ＰＩ制御処理を以上のように実行した後、本処理を終了する。
【００５３】
一方、前述したステップ３の判別結果がＮＯで、Ｆ＿ＰＩ＝Ｆ＿ＤＩ＝１のときには、ステップ５に進み、ＰＩ＋ＤＩ制御処理を実行する。このＰＩ＋ＤＩ制御処理の内容は、図示しないが、以下に述べるように実行される。
【００５４】
すなわち、前述した図５と同様の手法により、最終燃料噴射量ＴＯＵＴを算出した後、この最終燃料噴射量ＴＯＵＴをエンジン３の運転状態に応じて分割することにより、２つの燃料噴射弁１１，２１用の燃料噴射量を算出し、これらの燃料噴射量及びエンジン回転数ＮＥに応じて、２つの燃料噴射弁１１，２１用の噴射時期が算出される。そして、算出された燃料噴射量及び噴射時期に対応する制御入力信号が、２つの燃料噴射弁１１，２１に供給される。それにより、燃料が、ポート燃料噴射弁１１から吸気ポート５ａ内に、筒内燃料噴射弁２１から気筒４内にそれぞれ噴射される。ステップ５で、ＰＩ＋ＤＩ制御処理を以上のように実行した後、本処理を終了する。
【００５５】
一方、前述したステップ２の判別結果がＮＯで、Ｆ＿ＰＩ＝０のときには、ステップ６に進み、ＤＩ制御フラグＦ＿ＤＩが「１」であるか否かを判別する。この判別結果がＹＥＳのときには、ステップ７に進み、ＤＩ制御処理を実行する。このＤＩ制御処理の内容は、図示しないが、以下に述べるように実行される。
【００５６】
すなわち、前述した図５と同様の手法により、最終燃料噴射量ＴＯＵＴ及び噴射時期θＩＮＪを算出する。それにより、最終燃料噴射量ＴＯＵＴ及び噴射時期θＩＮＪに対応する制御入力信号が筒内燃料噴射弁２１に供給されることで、燃料が筒内燃料噴射弁２１から気筒４内に噴射される。ステップ７で、ＤＩ制御処理を以上のように実行した後、本処理を終了する。
【００５７】
一方、ステップ６の判別結果がＮＯのとき、すなわちＦ＿ＰＩ＝Ｆ＿ＤＩ＝０で、燃料噴射を停止すべき運転領域にあるときには、ステップ８に進み、最終燃料噴射量ＴＯＵＴを値０に設定し、燃料噴射を停止した後、本処理を終了する。
【００５８】
次に、図６を参照しながら、故障判定処理について説明する。この故障判定処理は、ポート燃料噴射弁１１及び筒内燃料噴射弁２１の故障を判定するものであり、ＥＣＵ２によって所定の制御周期ΔＴ（例えば１０ｍｓｅｃ）で実行される。
【００５９】
同図に示すように、まず、ステップ３０で、この故障判定処理の実行条件が成立しているか否かを判別する。この場合、具体的には、下記の３つの条件（ｆ１）〜（ｆ３）がいずれも成立しているときに、故障判定処理の実行条件が成立していると判別し、それ以外のときには、不成立であると判別する。
（ｆ１）Ｆ＿ＮＧ＿ＰＩ＝Ｆ＿ＮＧ＿ＤＩ＝０であること。
（ｆ２）Ｆ＿ＰＩ≠Ｆ＿ＤＩであること。
（ｆ３）エンジン３の各機器が正常であること。
【００６０】
なお、上記の条件（ｆ１）の２つのフラグＦ＿ＮＧ＿ＰＩ，Ｆ＿ＮＧ＿ＤＩは、ポート燃料噴射弁１１及び筒内燃料噴射弁２１が故障しているか否かを表すものであり、その値は後述するように設定される。この場合、Ｆ＿ＮＧ＿ＰＩ＝Ｆ＿ＮＧ＿ＤＩ＝０のときには、ポート燃料噴射弁１１及び筒内燃料噴射弁２１がいずれも正常であることを表している。また、上記の条件（ｆ２）は、ＰＩ制御処理の実行中であるか、ＤＩ制御処理の実行中であることを表している。
【００６１】
ステップ３０の判別結果がＮＯで、故障判定処理の実行条件が不成立であるときには、そのまま本処理を終了する。
【００６２】
一方、ステップ３０の判別結果がＹＥＳで、故障判定処理の実行条件が成立しているときには、ステップ３１に進み、移行時学習フラグＦ＿ＴＲＡＮＳが「１」であるか否かを判別する。この移行時学習フラグＦ＿ＴＲＡＮＳは、後述するように、運転領域がＰＩ領域以外の領域からＰＩ領域に移行するＰＩ領域移行が発生したとき、又はＤＩ領域以外の領域からＤＩ領域に移行するＤＩ領域移行が発生したときに「１」に設定される。
【００６３】
ステップ３１の判別結果がＮＯのとき、すなわちＰＩ領域移行が発生していないとき、又はＤＩ領域移行が発生していないときには、ステップ３２に進み、ＰＩ制御フラグＦ＿ＰＩが「１」であるか否かを判別する。
【００６４】
この判別結果がＹＥＳで、ＰＩ制御処理の実行中であるときには、ステップ３３に進み、ＰＩ制御フラグの前回値Ｆ＿ＰＩｚが「１」であるか否かを判別する。この判別結果がＹＥＳのとき、すなわち、Ｆ＿ＰＩ＝Ｆ＿ＰＩｚ＝１が成立し、前回の制御タイミングにおいてもＰＩ制御処理が実行されていたときには、ステップ３４に進み、ＰＩ時判定処理を実行する。
【００６５】
このＰＩ時判定処理は、ＰＩ制御処理の実行中において、ポート燃料噴射弁１１の故障を判定するものであり、具体的には、図７のように実行される。同図に示すように、まず、ステップ５０で、開度偏差ＤＡＰが所定値ＤＡＰｒｅｆよりも小さいか否かを判別する。この開度偏差ＤＡＰは、アクセル開度ＡＰの今回値と前回値の偏差の絶対値｜ＡＰ−ＡＰｚ｜として算出される。
【００６６】
ステップ５０の判別結果がＮＯのとき、すなわちＤＡＰ≧ＤＡＰｒｅｆが成立し、アクセル開度ＡＰの変化量が大きいときには、混合気の空燃比の変動が大きく、空燃比が不安定な状態にあると推定して、ステップ５２に進み、ＰＩ時判定用の重み係数Ｃ＿ＰＩを第１所定値Ｃ＿ＰＩ＿１に設定する。
【００６７】
一方、ステップ５０の判別結果がＹＥＳで、混合気の空燃比の変動が小さく、空燃比が安定した状態にあると推定されるときには、ステップ５１に進み、回転数偏差ＤＮＥが所定値Ｄｒｅｆよりも小さいか否かを判別する。この回転数偏差ＤＮＥは、エンジン回転数ＮＥの今回値と前回値の偏差の絶対値｜ＮＥ−ＮＥｚ｜として算出される。また、所定値Ｄｒｅｆは、エンジン３の燃焼状態が安定しているか否かを判定できるような値に設定されている。
【００６８】
この判別結果がＮＯで、ＤＮＥ≧Ｄｒｅｆが成立し、エンジン回転数ＮＥの変化量が大きいときには、エンジン３の燃焼状態が不安定であると推定して、ステップ５３に進み、ＰＩ時判定用の重み係数Ｃ＿ＰＩを第２所定値Ｃ＿ＰＩ＿２に設定する。
【００６９】
一方、ステップ５１の判別結果がＹＥＳで、エンジン回転数ＮＥの変化量が小さいときには、エンジン３の燃焼状態が安定していると推定して、ステップ５４に進み、ＰＩ時判定用の重み係数Ｃ＿ＰＩを第３所定値Ｃ＿ＰＩ＿３に設定する。この場合、後述する理由により、３つの所定値Ｃ＿ＰＩ＿１，Ｃ＿ＰＩ＿２，Ｃ＿ＰＩ＿３は、０＜Ｃ＿ＰＩ＿１＜Ｃ＿ＰＩ＿２＜Ｃ＿ＰＩ＿３＜１が成立するように設定されている。
【００７０】
以上のステップ５２〜５４のいずれかに続くステップ５５で、下式（１）の加重平均演算により、ＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩを算出する。
ＫＡＦＡＶＥ＿ＰＩ＝Ｃ＿ＰＩ・ＫＡＦ＋（１−Ｃ＿ＰＩ）・ＫＡＦＡＶＥ＿ＰＩｚ
……（１）
なお、上式（１）の値ＫＡＦＡＶＥ＿ＰＩｚは、ＰＩ時判定用の学習値の前回値である。
【００７１】
このように、ＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩは、フィードバック補正係数ＫＡＦの加重平均演算により算出されるので、重み係数Ｃ＿ＰＩが大きいほど、フィードバック補正係数ＫＡＦがより迅速にＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩに反映されることになる。すなわち、ＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩの学習速度が大きくなる。この原理に基づき、ＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩを算出する際、混合気の空燃比が安定した状態にあるときには、不安定な状態にあるときよりも学習速度を高めることと、エンジン３の燃焼状態が安定しているときには、不安定なときよりも学習速度をより大きくすることを目的として、前述した３つの所定値Ｃ＿ＰＩ＿１，Ｃ＿ＰＩ＿２，Ｃ＿ＰＩ＿３は、０＜Ｃ＿ＰＩ＿１＜Ｃ＿ＰＩ＿２＜Ｃ＿ＰＩ＿３＜１が成立するように設定されている。
【００７２】
次いで、ステップ５６に進み、Ｋ１＜ＫＡＦＡＶＥ＿ＰＩ＜Ｋ２が成立しているか否かを判別する。この場合、２つの値Ｋ１，Ｋ２は、所定の判定値であり、０＜Ｋ１＜１＜Ｋ２が成立するように設定される。なお、本実施形態では、Ｋ１＜ＫＡＦＡＶＥ＿ＰＩ＜Ｋ２の範囲が所定の第１判定領域に相当する。
【００７３】
このステップ５６の判別結果がＹＥＳで、Ｋ１＜ＫＡＦＡＶＥ＿ＰＩ＜Ｋ２が成立しているときには、ポート燃料噴射弁１１が正常であると判定して、それを表すために、ステップ５７に進み、ポート燃料噴射弁故障フラグＦ＿ＮＧ＿ＰＩを「０」に設定した後、本処理を終了する。
【００７４】
一方、ステップ５６の判別結果がＮＯのとき、すなわちＫＡＦＡＶＥ＿ＰＩ≦Ｋ１又はＫ２≦ＫＡＦＡＶＥ＿ＰＩが成立しているときには、ステップ５８に進み、ＰＩ時判定用カウンタの計数値ＣＴ＿ＰＩを、その前回値ＣＴ＿ＰＩｚと値１の和ＣＴ＿ＰＩｚ＋１に設定する。この場合、ＰＩ時判定用カウンタの計数値の前回値ＣＴ＿ＰＩｚは、その初期値が値０に設定される。
【００７５】
次いで、ステップ５９に進み、ＰＩ時判定用カウンタの計数値ＣＴ＿ＰＩが所定値Ｎ１以上であるか否かを判別する。この所定値Ｎ１は、正の整数に設定されている。この判別結果がＮＯのときには、前述したようにステップ５７を実行した後、本処理を終了する。
【００７６】
一方、ステップ５９の判別結果がＹＥＳのとき、すなわちステップ５６の判別結果がＮＯとなる状態の発生回数が所定値Ｎ１に達したときには、ポート燃料噴射弁１１が故障していると判定して、それを表すために、ステップ６０に進み、ポート燃料噴射弁故障フラグＦ＿ＮＧ＿ＰＩを「１」に設定した後、本処理を終了する。
【００７７】
図６に戻り、ステップ３４で、ＰＩ時判定処理を以上のように実行した後、故障判定処理を終了する。
【００７８】
一方、前述したステップ３２の判別結果がＮＯで、ＰＩ制御フラグＦ＿ＰＩ＝０のときには、ステップ３５に進み、ＤＩ制御フラグの前回値Ｆ＿ＤＩｚが「１」であるか否かを判別する。この判別結果がＹＥＳのとき、すなわちＦ＿ＤＩ＝Ｆ＿ＤＩｚ＝１が成立し、前回の制御タイミングにおいてもＤＩ制御処理が実行されていたときには、ステップ３６に進み、ＤＩ時判定処理を実行する。
【００７９】
このＤＩ時判定処理は、ＤＩ制御処理の実行中において、筒内燃料噴射弁２１の故障を判定するものであり、具体的には、図８のように実行される。同図に示すように、まず、ステップ７０で、前述したステップ５０と同様に、開度偏差ＤＡＰが所定値ＤＡＰｒｅｆよりも小さいか否かを判別する。
【００８０】
ステップ７０の判別結果がＮＯのとき、すなわちＤＡＰ≧ＤＡＰｒｅｆが成立し、アクセル開度ＡＰの変化量が大きいときには、空燃比の変動が大きく、空燃比が不安定な状態にあると推定して、ステップ７１に進み、ＤＩ時判定用の重み係数Ｃ＿ＤＩを第１所定値Ｃ＿ＤＩ＿１に設定する。
【００８１】
一方、ステップ７０の判別結果がＹＥＳで、空燃比の変動が小さく、空燃比が安定した状態にあると推定されるときには、ステップ７２に進み、ＤＩ時判定用の重み係数Ｃ＿ＤＩを第２所定値Ｃ＿ＤＩ＿２に設定する。この場合、２つの第１及び第２所定値Ｃ＿ＤＩ＿１，Ｃ＿ＤＩ＿２は、後述する理由により、０＜Ｃ＿ＤＩ＿１＜Ｃ＿ＤＩ＿２＜Ｃ＿ＰＩ＿１＜Ｃ＿ＰＩ＿２＜Ｃ＿ＰＩ＿３＜１が成立するように設定されている。
【００８２】
以上のステップ７１又は７２に続くステップ７３で、下式（２）に示す加重平均演算により、ＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩを算出する。
ＫＡＦＡＶＥ＿ＤＩ＝Ｃ＿ＤＩ・ＫＡＦ＋（１−Ｃ＿ＤＩ）・ＫＡＦＡＶＥ＿ＤＩｚ
……（２）
なお、上式（２）の値ＫＡＦＡＶＥ＿ＤＩｚは、ＤＩ時判定用の学習値の前回値である。
【００８３】
このように、ＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩは、ＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩと同様に、フィードバック補正係数ＫＡＦの加重平均演算により算出されるので、重み係数Ｃ＿ＤＩが大きいほど、フィードバック補正係数ＫＡＦがより迅速にＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩに反映されることになる。すなわち、ＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩの学習速度が大きくなる。この原理に基づき、ＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩを算出する際、混合気の空燃比が安定した状態にあるときには、不安定な状態にあるときよりも学習速度を高めることを目的として、前述した２つの所定値Ｃ＿ＤＩ＿１，Ｃ＿ＤＩ＿２は、Ｃ＿ＤＩ＿１＜Ｃ＿ＤＩ＿２が成立するように設定されている。これに加えて、図４に示すように、ＰＩ領域はＤＩ領域よりも狭い関係上、ＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩの算出頻度すなわち学習頻度は、ＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩの学習頻度よりも小さくなるので、学習頻度の低さを補償すべく、学習速度を高めるために、５つの所定値Ｃ＿ＰＩ＿１〜Ｃ＿ＰＩ＿３，Ｃ＿ＤＩ＿１，Ｃ＿ＤＩ＿２は、Ｃ＿ＤＩ＿１＜Ｃ＿ＤＩ＿２＜Ｃ＿ＰＩ＿１＜Ｃ＿ＰＩ＿２＜Ｃ＿ＰＩ＿３が成立するように設定されている。
【００８４】
次いで、ステップ７４に進み、Ｋ３＜ＫＡＦＡＶＥ＿ＤＩ＜Ｋ４が成立しているか否かを判別する。この場合、２つの値Ｋ３，Ｋ４は、所定の判定値であり、０＜Ｋ３＜１＜Ｋ４が成立するとともに、前述した所定の判定値Ｋ１，Ｋ２に対して、Ｋ１≠Ｋ３とＫ２≠Ｋ４が成立するように設定される。なお、本実施形態では、Ｋ３＜ＫＡＦＡＶＥ＿ＤＩ＜Ｋ４の範囲が所定の第２判定領域に相当する。
【００８５】
このステップ７４の判別結果がＹＥＳのときには、筒内燃料噴射弁２１が正常であると判定して、それを表すために、ステップ７５に進み、筒内燃料噴射弁故障フラグＦ＿ＮＧ＿ＤＩを「０」に設定した後、本処理を終了する。
【００８６】
一方、ステップ７４の判別結果がＮＯのとき、すなわちＫＡＦＡＶＥ＿ＤＩ≦Ｋ３又はＫ４≦ＫＡＦＡＶＥ＿ＤＩが成立しているときには、ステップ７６に進み、ＤＩ時判定用カウンタの計数値ＣＴ＿ＤＩを、その前回値ＣＴ＿ＤＩｚと値１の和ＣＴ＿ＤＩｚ＋１に設定する。この場合、ＤＩ時判定用カウンタの計数値の前回値ＣＴ＿ＤＩｚは、その初期値が値０に設定される。
【００８７】
次いで、ステップ７７に進み、ＤＩ時判定用カウンタの計数値ＣＴ＿ＤＩが所定値Ｎ２以上であるか否かを判別する。この所定値Ｎ２は、正の整数に設定されている。この判別結果がＮＯのときには、前述したようにステップ７５を実行した後、本処理を終了する。
【００８８】
一方、ステップ７７の判別結果がＹＥＳのとき、すなわちステップ７４の判別結果がＮＯとなる状態の発生回数が所定値Ｎ２に達したときには、筒内燃料噴射弁２１が故障していると判定して、それを表すために、ステップ７８に進み、筒内燃料噴射弁故障フラグＦ＿ＮＧ＿ＤＩを「１」に設定した後、本処理を終了する。
【００８９】
図６に戻り、ステップ３６で、ＤＩ時判定処理を以上のように実行した後、故障判定処理を終了する。
【００９０】
一方、前述したステップ３３又は３５の判別結果がＮＯのとき、すなわちＦ＿ＰＩ＝１＆Ｆ＿ＰＩｚ＝０が成立し、今回の制御タイミングで、運転領域がＰＩ領域以外の領域からＰＩ領域に移行するＰＩ領域移行が発生し、ＰＩ制御処理が開始されたとき、又はＦ＿ＤＩ＝１＆Ｆ＿ＤＩｚ＝０が成立し、今回の制御タイミングで、運転領域がＤＩ領域以外の領域からＤＩ領域に移行するＤＩ領域移行が発生し、ＤＩ制御処理が開始されたときには、移行時学習処理を実行すべきであると判定して、それを表すために、ステップ３７に進み、移行時学習フラグＦ＿ＴＲＡＮＳを「１」に設定した後、後述するステップ３８に進む。
【００９１】
このように、ステップ３７で、移行時学習フラグＦ＿ＴＲＡＮＳが「１」に設定されると、前述したステップ３１の判別結果がＹＥＳとなり、その場合にも、ステップ３８に進む。
【００９２】
以上のステップ３１又は３７に続くステップ３８で、移行時学習処理を実行する。この移行時学習処理は、具体的には、図９のように実行される。同図に示すように、まず、ステップ９０で、ＰＩ制御フラグＦ＿ＰＩが「１」であるか否かを判別する。
【００９３】
この判別結果がＹＥＳで、ＰＩ領域移行が発生したときには、ステップ９１に進み、ＰＩ時判定用の重み係数Ｃ＿ＰＩを所定の移行時用値Ｃ＿ＰＩ＿０に設定する。この所定の移行時用値Ｃ＿ＰＩ＿０は、後述する理由により、０＜Ｃ＿ＰＩ＿０＜Ｃ＿ＰＩ＿１が成立するように設定されている。
【００９４】
次いで、ステップ９２に進み、前述した式（１）の加重平均演算により、ＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩを算出する。
【００９５】
一方、ステップ９０の判別結果がＮＯで、ＤＩ領域移行が発生したときには、ステップ９３に進み、ＤＩ時判定用の重み係数Ｃ＿ＤＩを所定の移行時用値Ｃ＿ＤＩ＿０に設定する。この所定の移行時用値Ｃ＿ＤＩ＿０は、後述する理由により、０＜Ｃ＿ＤＩ＿０＜Ｃ＿ＤＩ＿１が成立するように設定されている。
【００９６】
次いで、ステップ９４に進み、前述した式（２）の加重平均演算により、ＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩを算出する。
【００９７】
以上のステップ９２又は９４に続くステップ９５で、移行時学習用カウンタの計数値ＣＴ＿ＴＲを、その前回値ＣＴ＿ＴＲｚと値１の和ＣＴ＿ＴＲｚ＋１に設定する。この場合、移行時学習用カウンタの計数値の前回値ＣＴ＿ＴＲｚは、その初期値が値０に設定される。
【００９８】
次いで、ステップ９６に進み、移行時学習用カウンタの計数値ＣＴ＿ＴＲが所定の判定値Ｎ３以上であるか否かを判別する。この判別結果がＮＯのときには、そのまま本処理を終了する。
【００９９】
一方、ステップ９６の判別結果がＹＥＳのとき、すなわち移行時学習処理の開始タイミングから値ΔＴ・Ｎ３に相当する時間が経過したときには、運転領域の移行に伴う検出空燃比ＫＡＣＴの変動が収束していると推定されることで、移行時学習処理を終了すべきであると判定して、それを表すために、ステップ９７に進み、移行時学習フラグＦ＿ＴＲＡＮＳを「０」に設定した後、本処理を終了する。
【０１００】
図６に戻り、ステップ３８で、移行時学習処理を以上のように実行した後、故障判定処理を終了する。
【０１０１】
以上のように、本実施形態の故障判定装置１によれば、要求トルクＴＲＱとエンジン回転数ＮＥの組み合わせがＰＩ領域にあり、ポート燃料噴射弁１１のみによる燃料噴射が実行されているときには、式（１）の加重平均演算をフィードバック補正係数ＫＡＦに適用することによって、ＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩが算出され、要求トルクＴＲＱとエンジン回転数ＮＥの組み合わせがＤＩ領域にあり、筒内燃料噴射弁２１のみによる燃料噴射が実行されているときには、式（２）の加重平均演算をフィードバック補正係数ＫＡＦに適用することによって、ＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩが算出される。
【０１０２】
そして、ポート燃料噴射弁１１のみによる燃料噴射が実行されているときに算出されたＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩが、所定の第１判定領域（Ｋ１＜ＫＡＦＡＶＥ＿ＰＩ＜Ｋ２）内にあるか否かに基づいて、ポート燃料噴射弁１１の故障が判定される。さらに、筒内燃料噴射弁２１のみによる燃料噴射が実行されているときに算出されたＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩが、所定の第２判定領域（Ｋ３＜ＫＡＦＡＶＥ＿ＤＩ＜Ｋ４）内にあるか否かに基づいて、筒内燃料噴射弁２１の故障が判定される。したがって、特許文献２の制御手法と異なり、エンジン３を定常運転状態に保持することなく、ポート燃料噴射弁１１及び筒内燃料噴射弁２１の故障を精度よく判定することができる。
【０１０３】
また、図４に示すように、ＰＩ領域はＤＩ領域よりも狭く設定されているので、エンジン３の運転中、ＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩの演算頻度は、ＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩの演算頻度よりも低くなってしまう。これに対して、前述したように、ＰＩ時判定用の重み係数Ｃ＿ＰＩにおける３つの所定値Ｃ＿ＰＩ＿１〜Ｃ＿ＰＩ＿３と、ＤＩ時判定用の重み係数Ｃ＿ＤＩにおける２つの所定値Ｃ＿ＤＩ＿１，Ｃ＿ＤＩ＿２とは、Ｃ＿ＤＩ＿１＜Ｃ＿ＤＩ＿２＜Ｃ＿ＰＩ＿１＜Ｃ＿ＰＩ＿２＜Ｃ＿ＰＩ＿３が成立するように設定されているので、フィードバック補正係数ＫＡＦがＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩに反映される速度は、フィードバック補正係数ＫＡＦがＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩに反映される速度よりも大きくなる。すなわち、ＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩの学習速度は、ＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩの学習速度よりも大きくなるので、フィードバック補正係数ＫＡＦの算出結果をより迅速にＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩに反映させることができ、ＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩの学習精度を向上させることができる。
【０１０４】
さらに、ＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩを算出する際、ステップ５０〜５４で、ＤＡＰ≧ＤＡＰｒｅｆが成立し、混合気の空燃比の変動が大きく、混合気の空燃比が不安定な状態にあるときには、ＰＩ時判定用の重み係数Ｃ＿ＰＩが、空燃比が安定した状態にあると推定されるときに設定される第２及び第３所定値Ｃ＿ＰＩ＿２，Ｃ＿ＰＩ＿３よりも小さな第１所定値Ｃ＿ＰＩ＿１に設定されるので、混合気の空燃比の変動に伴う、フィードバック補正係数ＫＡＦの変動や算出誤差の影響を抑制しながら、ＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩを学習することができ、その学習精度の低下を抑制することができる。
【０１０５】
これに加えて、ＤＮＥ＜Ｄｒｅｆが成立し、エンジン３の燃焼状態が安定していると推定されるときには、ＰＩ時判定用の重み係数Ｃ＿ＰＩが、不安定な燃焼状態にあると推定されるときに設定される第２所定値Ｃ＿ＰＩ＿２よりも大きな値Ｃ＿ＰＩ＿３に設定されるので、エンジン３の燃焼状態が安定していることに起因して精度よく算出されたフィードバック補正係数ＫＡＦを、より迅速に学習値に反映させることができ、学習値の学習精度をさらに向上させることができる。
【０１０６】
また、ＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩを算出する際、ステップ７０〜７２で、ＤＡＰ≧ＤＡＰｒｅｆが成立し、混合気の空燃比の変動が大きく、混合気の空燃比が不安定な状態にあるときには、ＤＩ時判定用の重み係数Ｃ＿ＤＩが、混合気の空燃比が安定した状態にあると推定されるときに設定される第２所定値Ｃ＿ＤＩ＿２よりも小さな第１所定値Ｃ＿ＤＩ＿１に設定されるので、混合気の空燃比の変動に伴う、フィードバック補正係数ＫＡＦの変動や算出誤差の影響を抑制しながら、ＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩを学習することができ、その学習精度の低下を抑制することができる。
【０１０７】
さらに、ＰＩ領域移行が発生した場合、移行時学習処理で、ＰＩ時判定用の重み係数Ｃ＿ＰＩはＰＩ領域移行が発生しないときよりも小さな値Ｃ＿ＰＩ＿０（＜Ｃ＿ＰＩ＿１）に設定されるので、ＰＩ領域移行の発生に伴う、フィードバック補正係数ＫＡＦの変動や算出誤差の影響を抑制しながら、ＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩを学習することができる。これと同様に、ＤＩ領域移行が発生した場合、移行時学習処理で、ＤＩ時判定用の重み係数Ｃ＿ＤＩはＤＩ領域移行が発生しないときよりも小さな値Ｃ＿ＤＩ＿０（＜Ｃ＿ＤＩ＿１）に設定されるので、ＤＩ領域移行の発生に伴う、フィードバック補正係数ＫＡＦの変動や算出誤差の影響を抑制しながら、ＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩを算出することができる。
【０１０８】
これに加えて、ＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩの第１判定領域を規定する上下限値Ｋ１，Ｋ２と、ＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩの第２判定領域を規定する上下限値Ｋ３，Ｋ４は、Ｋ１≠Ｋ３，Ｋ２≠Ｋ４が成立するように設定されているので、これらの４つの値Ｋ１〜Ｋ４をＰＩ領域及びＤＩ領域の特性に適した値に設定することによって、故障判定を精度よく実行することができる。以上の理由によって、ポート燃料噴射弁１１及び筒内燃料噴射弁２１の故障判定精度をさらに向上させることができる。
【０１０９】
なお、実施形態は、空燃比パラメータとして、検出空燃比ＫＡＣＴを用いた例であるが、本発明の空燃比パラメータはこれに限らず、排気通路を流れる排ガスの空燃比を表すものであればよい。例えば、空燃比パラメータとして、空気過剰率や燃空比を用いてもよい。
【０１１０】
また、実施形態は、負荷パラメータとして、エンジン回転数ＮＥ及び要求トルクＴＲＱを用いた例であるが、本発明の負荷パラメータはこれに限らず、内燃機関の負荷を表すものであればよい。例えば、負荷パラメータとして、吸入空気量及びアクセル開度ＡＰなどを用いてもよい。
【０１１１】
さらに、実施形態は、ＰＩ領域以外からＰＩ領域への移行であるＰＩ領域移行や、ＤＩ領域以外からＤＩ領域への移行であるＤＩ領域移行が発生したときに、移行時学習処理を実行した例であるが、このような領域移行が発生した場合において、前述した２つの移行時用値Ｃ＿ＰＩ＿０，Ｃ＿ＤＩ＿０をいずれも値０に設定することにより、移行時学習処理を停止するように構成してもよい。このように構成した場合、２つの学習値ＫＡＦＡＶＥ＿ＰＩ，ＫＡＦＡＶＥ＿ＤＩの学習速度は低下するものの、領域移行の発生に伴う、フィードバック補正係数ＫＡＦの変動や算出誤差の影響を回避しながら、フィードバック補正係数ＫＡＦの変動や算出誤差が発生しにくい条件下でのみ、２つの学習値ＫＡＦＡＶＥ＿ＰＩ，ＫＡＦＡＶＥ＿ＤＩを学習することができ、その学習精度を良好なレベルに維持することができる。
【０１１２】
一方、実施形態は、ＰＩ時判定用の重み係数Ｃ＿ＰＩにおける３つの所定値Ｃ＿ＰＩ＿１〜Ｃ＿ＰＩ＿３と、ＤＩ時判定用の重み係数Ｃ＿ＤＩにおける２つの所定値Ｃ＿ＤＩ＿１，Ｃ＿ＤＩ＿２とを、Ｃ＿ＤＩ＿１＜Ｃ＿ＤＩ＿２＜Ｃ＿ＰＩ＿１＜Ｃ＿ＰＩ＿２＜Ｃ＿ＰＩ＿３が成立するように設定した例であるが、ＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩの学習速度がＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩの学習速度よりも大きくなるように設定すればよい。例えば、Ｃ＿ＤＩ＿１＜Ｃ＿ＰＩ＿１と、Ｃ＿ＤＩ＿２＜Ｃ＿ＰＩ＿２とが少なくとも成立するように構成してもよく、Ｃ＿ＤＩ＿１＜Ｃ＿ＰＩ＿１＜Ｃ＿ＤＩ＿２＜Ｃ＿ＰＩ＿２が成立するように構成してもよい。
【０１１３】
また、実施形態は、加重平均演算の重み係数を異なる値に設定することで、第１学習値としてのＰＩ時判定用の学習値ＫＡＦＡＶＥ＿ＰＩの学習速度を、第２学習値としてのＤＩ時判定用の学習値ＫＡＦＡＶＥ＿ＤＩの学習速度よりも大きくなるように構成した例であるが、これに代えて、加重平均演算の実行周期を短くすることによって、第１学習値の学習速度を第２学習値の学習速度よりも大きくなるように構成してもよい。
【０１１４】
さらに、実施形態は、内燃機関の燃焼状態が安定しているか否かを判定する燃焼状態判定手法として、回転数偏差ＤＮＥを所定値Ｄｒｅｆと比較する手法を用いた例であるが、本発明の燃焼状態判定手法はこれに限らず、内燃機関の燃焼状態が安定しているか否かを判定できるものであればよい。例えば、燃焼状態判定手法として、アイドル運転中であるか否かを判定する手法や、要求トルクＴＲＱの変動量を所定値と比較する手法、車速の変化量を所定値と比較する手法を用いてもよく、これらの手法と上記の回転数偏差を用いる手法とを組み合わせて用いてもよい。
【０１１５】
一方、図８のＤＩ時判定処理において、回転数偏差ＤＮＥを所定値Ｄｒｅｆよりも小さいか否を判定し、その判定結果に基づいて、ＤＩ時判定用の重み係数Ｃ＿ＤＩを異なる値に設定してもよい。さらに、図４において、ＤＩ領域をＰＩ領域よりも広く設定してもよく、その場合には、ＤＩ時判定用の重み係数Ｃ＿ＤＩをＰＩ時判定用の重み係数Ｃ＿ＰＩよりも大きな値に設定すればよい。
【０１１６】
また、実施形態は、内燃機関の混合気の空燃比が不安定な状態にあるか否かを判定する空燃比状態判定手法として、開度偏差ＤＡＰを所定値ＤＡＰｒｅｆと比較する手法を用いた例であるが、本発明の空燃比状態判定手法はこれに限らず、内燃機関の混合気の空燃比が不安定な状態にあるか否かを判定できるものであればよい。例えば、空燃比状態判定手法として、ＬＡＦセンサ３２の検出信号に基づいて検出空燃比ＫＡＣＴの変化量を算出し、これを所定値と比較する手法を用いてもよい。
【０１１７】
さらに、実施形態は、ＤＡＰ≧ＤＡＰｒｅｆが成立し、内燃機関の混合気の空燃比が不安定な状態にあるときに、２つの学習値ＫＡＦＡＶＥ＿ＰＩ，ＫＡＦＡＶＥ＿ＤＩの学習速度を、安定した状態のときよりも小さくなるように設定した例であるが、２つの学習値ＫＡＦＡＶＥ＿ＰＩ，ＫＡＦＡＶＥ＿ＤＩの一方を安定した状態のときよりも小さくなるように設定してもよい。これに加えて、内燃機関の混合気の空燃比が不安定な状態にあるときに、２つの重み係数Ｃ＿ＰＩ，Ｃ＿ＤＩの少なくとも一方を値０に設定することにより、２つの学習値ＫＡＦＡＶＥ＿ＰＩ，ＫＡＦＡＶＥ＿ＤＩの少なくとも一方の学習を停止するように構成してもよい。
【０１１８】
一方、実施形態は、本発明の故障判定装置を車両用内燃機関における燃料供給装置に適用した例であるが、本発明の故障判定装置はこれに限らず、燃料を吸気通路内及び気筒内にそれぞれ供給する第１燃料供給装置及び第２燃料供給装置を備えたものに適用可能である。例えば、本願発明の故障判定装置を、船舶用の内燃機関における燃料供給装置や、他の産業機器用の内燃機関における燃料供給装置に適用してもよい。
【符号の説明】
【０１１９】
１  故障判定装置
２  ＥＣＵ（空燃比パラメータ検出手段、負荷パラメータ検出手段、フィードバック        補正値算出手段、燃料制御手段、領域判定手段、故障判定手段、燃焼状態判定手        段、領域移行判定手段、空燃比状態判定手段）
３  内燃機関
４  気筒
５  吸気通路
１０  第１燃料供給装置
２０  第２燃料供給装置
３０  クランク角センサ（負荷パラメータ検出手段）
３１  アクセル開度センサ（負荷パラメータ検出手段）
３２  ＬＡＦセンサ（空燃比パラメータ検出手段）
ＫＡＣＴ  検出空燃比（空燃比パラメータ）
ＮＥ  エンジン回転数（負荷パラメータ）
ＴＲＱ  要求トルク（負荷パラメータ）
ＫＡＦ  フィードバック補正係数（フィードバック補正値）
ＫＡＦＡＶＥ＿ＰＩ  ＰＩ時判定用の学習値（第１学習値）
ＫＡＦＡＶＥ＿ＤＩ  ＤＩ時判定用の学習値（第２学習値）
Ｃ＿ＰＩ  ＰＩ時判定用の重み係数（学習速度を規定する値）
Ｃ＿ＰＩ＿１  ＰＩ時判定用の重み係数の所定値（学習速度を規定する値）
Ｃ＿ＰＩ＿２  ＰＩ時判定用の重み係数の所定値（学習速度を規定する値）
Ｃ＿ＰＩ＿３  ＰＩ時判定用の重み係数の所定値（学習速度を規定する値）
Ｃ＿ＤＩ  ＤＩ時判定用の重み係数（学習速度を規定する値）
Ｃ＿ＤＩ＿１  ＤＩ時判定用の重み係数の所定値（学習速度を規定する値）
Ｃ＿ＤＩ＿２  ＤＩ時判定用の重み係数の所定値（学習速度を規定する値）
Ｋ１，Ｋ２  所定の判定値（所定の第１判定領域を規定する値）
Ｋ３，Ｋ４  所定の判定値（所定の第２判定領域を規定する値）
【図１】
2015135060.tif 000003
【図２】
2015135060.tif 000004
【図３】
2015135060.tif 000005
【図４】
2015135060.tif 000006
【図５】
2015135060.tif 000007
【図６】
2015135060.tif 000008
【図７】
2015135060.tif 000009
【図８】
2015135060.tif 000010
【図９】
2015135060.tif 000011