(57)【特許請求の範囲】
【請求項１】
内燃機関の少なくとも２つの気筒に設けられ、当該気筒内の圧力である筒内圧を検出する複数の筒内圧センサの検出値に基づき、前記気筒内の燃焼状態を表す燃焼状態パラメータを算出する内燃機関の燃焼状態パラメータ算出装置であって、
前記燃焼状態パラメータとして、前記内燃機関のクランク角に対する前記筒内圧の変化状態に依存し、前記クランク角で表される第２燃焼状態パラメータを、前記筒内圧センサの検出値に基づき、前記気筒ごとに算出する第２燃焼状態パラメータ算出手段と、
前記筒内圧センサの検出値の大きさが実際の前記筒内圧に対してずれる特性異常故障が発生しているか否かを、前記筒内圧センサごとに判定する故障判定手段と、を備え、
前記第２燃焼状態パラメータ算出手段は、前記複数の筒内圧センサの少なくとも１つに前記特性異常故障が発生していると判定された場合においても、当該少なくとも１つの筒内圧センサが設けられた気筒の前記第２燃焼状態パラメータを、当該少なくとも１つの筒内圧センサの検出値に基づいて算出することを特徴とする内燃機関の燃焼状態パラメータ算出装置。
【請求項２】
内燃機関の少なくとも２つの気筒に設けられ、当該気筒内の圧力である筒内圧を検出する複数の筒内圧センサの検出値に基づき、前記気筒内の燃焼状態を表す燃焼状態パラメータを算出する内燃機関の燃焼状態パラメータ算出装置であって、
前記燃焼状態パラメータとして、前記筒内圧の大きさに依存する第１燃焼状態パラメータと、前記内燃機関のクランク角に対する前記筒内圧の変化状態に依存し、前記クランク角で表される第２燃焼状態パラメータとを、前記筒内圧センサの検出値に基づき、前記気筒ごとに算出する燃焼状態パラメータ算出手段と、
前記筒内圧センサの検出値の大きさが実際の前記筒内圧に対してずれる特性異常故障が発生しているか否かを、前記筒内圧センサごとに判定する故障判定手段と、を備え、
前記燃焼状態パラメータ算出手段は、前記特性異常故障が、前記複数の筒内圧センサの少なくとも１つに発生しており、かつ他の少なくとも１つに発生していないと判定されたときに、前記少なくとも１つの筒内圧センサが設けられた気筒の前記第１燃焼状態パラメータを、前記他の少なくとも１つの筒内圧センサの検出値に基づいて算出し、前記少なくとも１つの筒内圧センサが設けられた気筒の前記第２燃焼状態パラメータを、当該少なくとも１つの筒内圧センサの検出値に基づいて算出することを特徴とする内燃機関の燃焼状態パラメータ算出装置。
【請求項３】
前記故障判定手段は、前記特性異常故障に加え、前記実際の筒内圧の変化に対して前記筒内圧センサの検出値が変化しない出力不変故障が発生しているか否かを判定するように構成され、
前記少なくとも１つの筒内圧センサに前記出力不変故障が発生していると判定されたときに、当該少なくとも１つの筒内圧センサの検出値に基づく前記第２燃焼状態パラメータの算出を禁止する算出禁止手段をさらに備えることを特徴とする、請求項１又は２に記載の内燃機関の燃焼状態パラメータ算出装置。
【請求項４】
前記故障判定手段は、前記特性異常故障に加え、前記クランク角と前記筒内圧センサの検出値との関係が、前記クランク角と前記実際の筒内圧との関係に対してずれる位相ずれ故障が発生しているか否かを判定するように構成され、
前記少なくとも１つの筒内圧センサに前記位相ずれ故障が発生していると判定されたときに、当該少なくとも１つの筒内圧センサの検出値に基づく前記第２燃焼状態パラメータの算出を禁止する算出禁止手段をさらに備えることを特徴とする、請求項１又は２に記載の内燃機関の燃焼状態パラメータ算出装置。
【請求項５】
前記内燃機関は、所定の条件が成立したときに、一部の気筒における燃焼を休止する気筒休止運転を実行するように構成され、
当該気筒休止運転が実行されているときに、燃焼が休止された前記一部の気筒に設けられた筒内圧センサの故障の判定を禁止する判定禁止手段をさらに備えることを特徴とする、請求項１ないし４のいずれかに記載の内燃機関の燃焼状態パラメータ算出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の気筒内の圧力を検出する筒内圧センサの検出値に基づき、気筒内の燃焼状態を表す燃焼状態パラメータを算出する内燃機関の燃焼状態パラメータ算出装置に関する。
【背景技術】
【０００２】
筒内圧センサの検出結果を用いた従来の内燃機関の制御装置として、例えば特許文献１に開示されたものが知られている。この制御装置では、筒内圧センサによって検出された気筒内の圧力（筒内圧）が最大になるクランク角を、ピーククランク角として算出するとともに、このピーククランク角が所定の最適値になるように、点火時期をフィードバック制御する。具体的には、最適値とピーククランク角との偏差に所定のゲインを乗算し、フィードバック補正量を算出するとともに、このフィードバック補正量を点火時期のマップ値に加算することによって、点火時期が算出される。
【０００３】
また、この制御装置では、算出されたフィードバック補正量が所定の範囲から外れているときに、筒内圧センサが故障していると判定するとともに、そのフェールセーフのために、点火時期を上記のマップ値に固定することによって、内燃機関の出力が抑制される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第２６１２０９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
筒内圧センサの検出結果からは、気筒内での燃焼による圧力、熱やエネルギの発生状態などの燃焼状態を表す情報として、各種の燃焼状態パラメータを取得することが可能であり、取得した燃焼状態パラメータは、内燃機関やこれを搭載した車両の制御に用いられる。例えば、燃焼状態パラメータとして、気筒内の燃焼によって発生するトルクを気筒ごとに算出し、それらの合算値を内燃機関から実際に出力される総トルクとして算出することが可能であり、算出された内燃機関の総トルクは、車両の運転者の要求トルクに応じた内燃機関のトルク制御や変速装置の変速制御などに用いられる。
【０００６】
このため、筒内圧センサが故障した場合でも、燃焼状態パラメータの算出をできるだけ継続して行うことが望ましく、そうでないと、上述した内燃機関や車両の制御を中止せざるを得なくなる。これに対し、前述した従来の制御装置では、筒内圧センサが故障していると判定された場合、フェールセーフ動作として、点火時期を低出力側の所定値に固定するにすぎず、ピーククランク角に応じた点火時期の制御が中止されてしまう。
【０００７】
本発明は、以上のような課題を解決するためになされたものであり、一部の筒内圧センサが故障した場合においても、その気筒内の燃焼状態をより良好に反映する筒内圧センサの検出値に基づき、燃焼状態パラメータを、その精度を良好に保ちながら継続して算出することができる内燃機関の燃焼状態パラメータ算出装置を提供することを目的とする。
【課題を解決するための手段】
【００１７】
前記目的を達成するため、請求項１に係る発明は、内燃機関３の少なくとも２つの気筒３ａに設けられ、気筒３ａ内の圧力である筒内圧を検出する複数の筒内圧センサ２１の検出値ＰＣＹＬに基づき、気筒３ａ内の燃焼状態を表す燃焼状態パラメータを算出する内燃機関の燃焼状態パラメータ算出装置であって、燃焼状態パラメータとして、内燃機関３のクランク角ＣＡに対する筒内圧の変化状態に依存し、クランク角ＣＡで表される第２燃焼状態パラメータ（最大筒内圧角θＰｍａｘ）を、筒内圧センサ２１の検出値ＰＣＹＬに基づき、気筒３ａごとに算出する第２燃焼状態パラメータ算出手段（ＣＰＳ演算ユニット２Ｂ、図１０）と、筒内圧センサ２１の検出値ＰＣＹＬの大きさが実際の筒内圧に対してずれる特性異常故障が発生しているか否かを、筒内圧センサ２１ごとに判定する故障判定手段（ＣＰＳ演算ユニット２Ｂ、図３のステップ５、図６）と、を備え、第２燃焼状態パラメータ算出手段は、複数の筒内圧センサ２１の少なくとも１つに特性異常故障が発生していると判定された場合においても、少なくとも１つの筒内圧センサ２１が設けられた気筒３ａの第２燃焼状態パラメータを、少なくとも１つの筒内圧センサ２１の検出値ＰＣＹＬに基づいて算出すること（図１０のステップ９１、９５〜９９）を特徴とする。
【００１８】
この構成によれば、内燃機関の少なくとも２つの気筒に設けられた筒内圧センサの検出値に基づき、気筒内の燃焼状態を表す燃焼状態パラメータとして、内燃機関のクランク角に対する筒内圧の変化状態に依存し、クランク角で表される第２燃焼状態パラメータが、気筒ごとに算出される。また、各筒内圧センサに特性異常故障が発生しているか否かが、判定される。そして、複数の筒内圧センサのうちの少なくとも１つに特性異常故障が発生していると判定された場合においても、故障判定気筒の第２燃焼状態パラメータは、当該故障判定気筒の筒内圧センサの検出値に基づいて算出される。
【００１９】
上述したように、第２燃焼状態パラメータは、内燃機関のクランク角に対する筒内圧の変化状態に依存し、クランク角で表されるものであり、例えば、筒内圧の最大値が得られるクランク角である最大筒内圧角や、所定の燃焼質量割合（例えばＭＦＢ５０）が得られるクランク角などが相当する。このため、筒内圧センサに特性異常故障が発生し、その検出値が、実際の筒内圧（真値）に対してずれている場合でも、クランク角に対する筒内圧の変化状態を適切に反映するときには、その検出値に基づく方が、他の筒内圧センサの検出値に基づくよりも、高精度の第２燃焼状態パラメータが得られる。
【００２０】
以上の観点から、本発明によれば、筒内圧センサに特性異常故障が発生していると判定された場合においても、故障判定気筒の第２燃焼状態パラメータを、当該筒内圧センサの検出値に基づいて算出する。これにより、第２燃焼状態パラメータをその精度を保ちながら継続して算出でき、したがって、第２燃焼状態パラメータを用いた内燃機関などの制御を、精度良く継続して実行することができる。
【００２１】
また、前記目的を達成するため、請求項２に係る発明は、内燃機関３の少なくとも２つの気筒３ａに設けられ、気筒３ａ内の圧力である筒内圧を検出する複数の筒内圧センサ２１の検出値ＰＣＹＬに基づき、気筒３ａ内の燃焼状態を表す燃焼状態パラメータを算出する内燃機関の燃焼状態パラメータ算出装置であって、燃焼状態パラメータとして、筒内圧の大きさに依存する第１燃焼状態パラメータ（図示平均有効圧力ＰＭＩ）と、内燃機関３のクランク角ＣＡに対する筒内圧の変化状態に依存し、クランク角ＣＡで表される第２燃焼状態パラメータ（最大筒内圧角θＰｍａｘ）とを、筒内圧センサ２１の検出値ＰＣＹＬに基づき、気筒３ａごとに算出する燃焼状態パラメータ算出手段（ＣＰＳ演算ユニット２Ｂ、図７、図１０）と、筒内圧センサ２１の検出値ＰＣＹＬの大きさが実際の筒内圧に対してずれる特性異常故障が発生しているか否かを、筒内圧センサ２１ごとに判定する故障判定手段（ＣＰＳ演算ユニット２Ｂ、図３のステップ５、図６）と、を備え、燃焼状態パラメータ算出手段は、特性異常故障が、複数の筒内圧センサ２１の少なくとも１つに発生しており、かつ他の少なくとも１つに発生していないと判定されたときに、少なくとも１つの筒内圧センサ２１が設けられた気筒３ａの第１燃焼状態パラメータを、他の少なくとも１つの筒内圧センサ２１の検出値ＰＣＹＬに基づいて算出し、少なくとも１つの筒内圧センサ２１が設けられた気筒の第２燃焼状態パラメータを、当該少なくとも１つの筒内圧センサ２１の検出値ＰＣＹＬに基づいて算出すること（図７のステップ６５〜６８、図１０のステップ９１、９５〜９９）を特徴とする。
【００２２】
この構成によれば、内燃機関の少なくとも２つの気筒に設けられた筒内圧センサの検出値に基づき、燃焼状態パラメータとして、第１燃焼パラメータ及び上述した第２燃焼パラメータが、気筒ごとに算出される。また、各筒内圧センサに特性異常故障が発生しているか否かが、判定される。上記の第１燃焼状態パラメータは、筒内圧の大きさに依存するものであり、例えば、筒内圧の最大値や、燃焼によって発生するトルク・出力などが相当する。このため、筒内圧センサに特性異常故障が発生し、その検出値が実際の筒内圧に対してずれている場合には、検出値に基づいて第１燃焼状態パラメータを算出しても、その精度を確保できず、むしろ、特性異常故障が発生していない他の筒内圧センサの検出値に基づく方が、より高精度の第１燃焼状態パラメータが得られる。
【００２３】
さらに、本発明によれば、一部の筒内圧センサに特性異常故障が発生していると判定された場合には、故障判定気筒の第１燃焼状態パラメータを、特性異常故障が発生していないと判定された他の筒内圧センサの検出値に基づいて算出し、故障判定気筒の第２燃焼状態パラメータを、一部の筒内圧センサの検出値に基づいて算出する。これにより、燃焼状態パラメータの種類に応じた、気筒内の燃焼状態をより良好に反映する筒内圧センサの検出値に基づき、第１及び第２燃焼状態パラメータを、それぞれの精度を保ちながら継続して算出できる。その結果、両燃焼状態パラメータを用いた内燃機関などの制御を、精度良く継続して実行することができる。
【００２４】
請求項３に係る発明は、請求項１又は２に記載の内燃機関の燃焼状態パラメータ算出装置において、故障判定手段は、特性異常故障に加え、実際の筒内圧の変化に対して筒内圧センサ２１の検出値ＰＣＹＬが変化しない出力不変故障が発生しているか否かを判定するように構成され（図３のステップ３、図４）、少なくとも１つの筒内圧センサ２１に出力不変故障が発生していると判定されたときに、少なくとも１つの筒内圧センサ２１の検出値ＰＣＹＬに基づく第２燃焼状態パラメータの算出を禁止する算出禁止手段（ＣＰＳ演算ユニット２Ｂ、図１０のステップ９２）をさらに備えることを特徴とする。
【００２５】
筒内圧センサの故障が上述した出力不変故障の場合には、実際の筒内圧が変化しても検出値が変化しないため、この検出値に基づいて第２燃焼状態パラメータを算出しても、その算出を有効に行えない。この構成によれば、出力不変故障と判定されたときには、その筒内圧センサの検出値に基づく第２燃焼状態パラメータの算出を禁止するので、その誤算出を確実に回避することができる。
【００２６】
請求項４に係る発明は、請求項１又は２に記載の内燃機関の燃焼状態パラメータ算出装置において、故障判定手段は、特性異常故障に加え、クランク角ＣＡと筒内圧センサ２１の検出値ＰＣＹＬとの関係が、クランク角ＣＡと実際の筒内圧との関係に対してずれる位相ずれ故障が発生しているか否かを判定するように構成され（図３のステップ４、図５）、少なくとも１つの筒内圧センサ２１に位相ずれ故障が発生していると判定されたときに、少なくとも１つの筒内圧センサ２１の検出値ＰＣＹＬに基づく第２燃焼状態パラメータの算出を禁止する算出禁止手段（ＣＰＳ演算ユニット２Ｂ、図１０のステップ９３）をさらに備えることを特徴とする。
【００２７】
筒内圧センサの故障が上述した位相ずれ故障の場合には、クランク角と筒内圧センサの検出値との関係が、クランク角と実際の筒内圧との関係に対してずれているため、検出値に基づいて第２燃焼状態パラメータを算出しても、その算出を有効に行えない。この構成によれば、位相ずれ故障と判定されたときには、その筒内圧センサの検出値に基づく第２燃焼状態パラメータの算出を禁止するので、その誤算出を確実に回避することができる。
【００２８】
請求項５に係る発明は、請求項１ないし４のいずれかに記載の内燃機関の燃焼状態パラメータ算出装置において、内燃機関３は、所定の条件が成立したときに、一部の気筒（＃１〜＃３気筒）における燃焼を休止する気筒休止運転を実行するように構成され、気筒休止運転が実行されているときに、燃焼が休止された一部の気筒に設けられた筒内圧センサ２１の故障の判定を禁止する判定禁止手段（ＣＰＳ演算ユニット２Ｂ、図３のステップ１、２）をさらに備えることを特徴とする。
【００２９】
気筒休止運転が実行された場合、燃焼が休止された気筒では、筒内圧は気筒内を往復動するピストンの動きに応じて変化するため、筒内圧の大きさや変化の周期などは、燃焼が行われている気筒の筒内圧とは明らかに異なる挙動を示す。この構成によれば、気筒休止運転が実行されているときに、燃焼が休止された気筒に設けられた筒内圧センサの故障の判定を禁止するので、故障の誤判定を確実に回避することができる。
【図面の簡単な説明】
【００３０】
【図１】本発明を適用した内燃機関及び燃焼状態パラメータ算出装置の概略構成を示す図である。
【図２】内燃機関の制御装置を示すブロック図である。
【図３】筒内圧センサの故障判定処理のメインフローである。
【図４】出力不変故障の判定処理を示すフローチャートである。
【図５】位相ずれ故障の判定処理を示すフローチャートである。
【図６】特性異常故障の判定処理を示すフローチャートである。
【図７】図示平均有効圧力の算出処理を示すフローチャートである。
【図８】エンジントルクの算出処理を示すフローチャートである。
【図９】エンジンのトルク制御処理を示すフローチャートである。
【図１０】最大筒内圧角の算出処理を示すフローチャートである。
【図１１】点火時期の制御処理を示すフローチャートである。
【発明を実施するための形態】
【００３１】
以下、図面を参照しながら、本発明の好ましい実施形態について説明する。図１は、本発明を適用した燃焼状態パラメータ算出装置を、内燃機関（以下「エンジン」という）３とともに概略的に示している。エンジン３は、車両（図示せず）に搭載された、例えばＶ型６気筒のＤＯＨＣエンジンであり、リヤバンク３Ｒ及びフロントバンク３Ｆにそれぞれ３つの気筒３ａ（＃１〜＃３、＃４〜＃６）を備えている。
【００３２】
各気筒３ａには、吸気マニホルド４ａを介して吸気管４が接続され、排気マニホルドを介して排気管（いずれも図示せず）が接続されるとともに、吸気弁及び排気弁（いずれも図示せず）が設けられている。吸気管４にはスロットル弁７が設けられている。スロットル弁７の開度（以下「スロットル弁開度」という）θＴＨは、電子制御ユニット（以下「ＥＣＵ」という）２からの駆動信号により、ＴＨアクチュエータ７ａを介して制御され、それにより、気筒３ａへの吸入空気量が制御される。また、スロットル弁開度θＴＨは、スロットル弁開度センサ２２によって検出され、その検出信号はＥＣＵ２に入力される。
【００３３】
また、各気筒３ａには、燃料噴射弁８及び点火プラグ９が設けられている（図２参照）。燃料噴射弁８は、気筒３ａ内に燃料を直接、噴射する直噴タイプのものである。点火プラグ９は、気筒３ａ内への放電による点火動作を行い、それにより、気筒３ａ内に噴射された燃料と吸入された空気との混合気が燃焼する。燃料噴射弁８による燃料の噴射量及び噴射時期と点火プラグ９の点火時期θＩＧは、ＥＣＵ２からの駆動信号によって制御される。
【００３４】
さらに、各気筒３ａには、その内部の圧力である筒内圧を検出するための筒内圧センサ２１が設けられている。筒内圧センサ２１は、例えば燃料噴射弁８と一体型のものであり、燃料噴射弁８の先端部に取り付けられた圧力検出素子と、増幅回路ユニット（いずれも図示せず）などを備えている。圧力検出素子は、筒内圧ＰＣＹＬの変化率を検出し、増幅回路ユニットは、圧力検出素子の検出信号をフィルタリング及び増幅するとともに、筒内圧ＰＣＹＬに変換する。
【００３５】
各筒内圧センサ２１で検出された＃１〜＃６気筒の筒内圧ＰＣＹＬ１〜６を表す検出信号は、ＣＰＳ演算ユニット２Ｂに入力される。このＣＰＳ演算ユニット２Ｂは、入力された筒内圧ＰＣＹＬ１〜６に基づき、気筒３ａ内の燃焼状態を表す燃焼状態パラメータの算出などを行う。後述するように、本実施形態では、第１燃焼状態パラメータとして、図示平均有効圧力ＰＭＩが算出され、第２燃焼パラメータとして、筒内圧ＰＣＹＬの最大値（最大筒内圧）Ｐｍａｘが得られるクランク角である最大筒内圧角θＰｍａｘが算出される。
【００３６】
図２に示すように、ＣＰＳ演算ユニット２ＢとＥＣＵ２は、ＣＡＮ通信で結ばれており、相互間のデータの送受信がＣＡＮ通信によって行われる。ＣＰＳ演算ユニット２Ｂで算出された図示平均有効圧力ＰＭＩ及び最大筒内圧角θＰｍａｘを表すデータもまた、ＣＡＮ通信によってＥＣＵ２に送信される。
【００３７】
エンジン３のリヤバンク３Ｒには、気筒休止機構１１が設けられている。この気筒休止機構１１は、例えば油圧式のものであり、吸気弁用及び排気弁用の２つの油路１２ａ、１２ｂを介して、油圧ポンプ（図示せず）に接続されている。また、油路１２ａ、１２ｂの途中には、電磁弁１３ａ、１３ｂがそれぞれ設けられている。
【００３８】
所定の気筒休止運転の条件が成立すると、リヤバンク３Ｒの＃１〜＃３気筒への燃料の供給が停止されるとともに、ＥＣＵ２からの駆動信号によって電磁弁１３ａ、１３ｂが開弁する。これにより、油路１２ａ、１２ｂを介して供給された油圧によって気筒休止機構１１が作動し、吸気弁と吸気カム（図示せず）の間、及び排気弁と排気カム（図示せず）の間が遮断されることによって、＃１〜＃３気筒の吸気弁及び排気弁が閉弁状態に保持される。
【００３９】
また、エンジン３には、クランク角センサ２３が設けられている。クランク角センサ２３は、エンジン３のクランクシャフト（図示せず）の回転に伴い、パルス信号であるＣＲＫ信号およびＴＤＣ信号をＥＣＵ２に出力する。ＣＲＫ信号は、所定のクランク角度（例えば１度）ごとに出力される。ＥＣＵ２は、このＣＲＫ信号に基づき、エンジン３の回転数（以下「エンジン回転数」という）ＮＥを算出する。
【００４０】
また、ＴＤＣ信号は、エンジン３のピストン（図示せず）が吸気行程のＴＤＣ位置よりも若干、手前の所定のクランク角度位置にあることを表す信号であり、本実施形態のようにエンジン３が６気筒の場合には、クランク角度１２０度ごとに出力される。ＥＣＵ２は、ＴＤＣ信号およびＣＲＫ信号に応じて、ＴＤＣ信号の出力タイミングを基準とするクランク角ＣＡを、気筒３ａごとに算出する。
【００４１】
また、吸気管４のスロットル弁７よりも下流側には、吸気圧センサ２４及び吸気温センサ２５が設けられている。吸気圧センサ２４は、気筒３ａに吸入される吸気の圧力（吸気圧）ＰＢＡを絶対圧として検出し、吸気温センサ２５は、吸気の温度（吸気温）ＴＡを検出する、それらの検出信号はＥＣＵ２に入力される。さらに、ＥＣＵ２には、アクセル開度センサ２６から、車両のアクセルペダル（図示せず）の操作量（以下「アクセル開度」という）ＡＰを表す検出信号が入力される。
【００４２】
ＣＰＳ演算ユニット２Ｂ及びＥＣＵ２は、Ｉ／Ｏインターフェース、ＣＰＵ、ＲＡＭ及びＲＯＭなどから成るマイクロコンピュータで構成されている。また、ＥＣＵ２は、前述した各種のセンサ２２〜２６からの検出信号や、ＣＰＳ演算ユニット２Ｂから送信された燃焼状態パラメータのデータなどに応じて、スロットル弁開度θＴＨ、燃料噴射弁８の燃料噴射量や点火プラグ９の点火時期θＩＧなどを制御することによって、エンジン３を制御する。
【００４３】
なお、本実施形態では、上述したＣＰＳ演算ユニット２Ｂが、第１燃焼状態パラメータ算出手段、故障判定手段、ヒステリシス量算出手段、第２燃焼状態パラメータ算出手段、燃焼状態パラメータ算出手段、算出禁止手段、及び判定禁止手段に相当し、ＥＣＵ２が、総トルクパラメータ算出手段に相当する。
【００４４】
図３〜図６は、ＣＰＳ演算ユニット２Ｂで実行される、筒内圧センサ２１の故障判定処理を示す。この故障判定処理は、ＣＲＫ信号の発生に同期して、筒内圧センサ２１ごとに実行される。
【００４５】
図３は、故障判定処理のメーンフローを示す。本処理では、まずステップ１（「Ｓ１」と図示。以下同じ」）において、気筒休止フラグＦ＿ＣＹＬＳＴＯＰが「１」であるか否かを判別する。この気筒休止フラグＦ＿ＣＹＬＳＴＯＰは、前述したリヤバンク３Ｒに対する気筒休止運転が実行されているときに、「１」にセットされるものである。
【００４６】
このステップ１の答えがＹＥＳで、気筒休止運転の実行中のときには、そのときに判定処理の対象になっている筒内圧センサ２１及び気筒３ａの番号（＃１〜＃６）を表すインデックス番号ｎが、１〜３のいずれかに等しいか否かを判別する（ステップ２）。この答えがＹＥＳで、その時点での故障判定の対象が＃１〜＃３気筒の筒内圧センサ２１のいずれかであるときには、故障判定を実行しないものとして、そのまま本処理を終了する。このように、気筒休止運転の実行中、燃焼が休止された＃１〜＃３気筒の筒内圧センサ２１の故障判定を禁止することによって、故障の誤判定を確実に回避することができる。
【００４７】
前記ステップ２の答えがＮＯで、故障判定の対象が＃４〜＃６気筒の筒内圧センサ２１のとき、又は前記ステップ１の答えがＮＯで、気筒休止運転が実行されていないときには、ステップ３〜５において、互いに異なる３つの故障パターンである出力不変故障、位相ずれ故障及び特性異常故障の判定処理をそれぞれ実行し、本処理を終了する。
【００４８】
図４は、出力不変故障の判定処理のサブルーチンを示す。この出力不変故障は、ショートや断線などにより、実際の筒内圧が変化するのに対して、筒内圧センサ２１の検出値ＰＣＹＬ（出力）がほぼ一定値を示す（ほとんど変化しない）パターンの故障をいう。
【００４９】
本処理では、まずステップ１１において、出力不変故障フラグＦ＿ＣＰＳＮＧＣが「１」であるか否かを判別する。この答えがＹＥＳで、本処理によって出力不変故障が発生しているとすでに判定されたときには、そのまま本処理を終了する。
【００５０】
上記ステップ１１の答えがＮＯのときには、ステップ１２及び１３において、筒内圧最大値ＰＣＹＬＭＡＸ及び筒内圧最小値ＰＣＹＬＭＩＮをそれぞれ算出する。この筒内圧最大値ＰＣＹＬＭＡＸの算出は、例えば、１燃焼サイクルごとに行われる。具体的には、１燃焼サイクルの開始時の筒内圧センサ２１の検出値ＰＣＹＬを筒内圧最大値ＰＣＹＬＭＡＸの初期値とするとともに、１燃焼サイクルの終了時まで、検出値ＰＣＹＬが筒内圧最大値ＰＣＹＬＭＡＸを上回るごとに、筒内圧最大値ＰＣＹＬＭＡＸを検出値ＰＣＹＬに置き換え、更新することによって、筒内圧最大値ＰＣＹＬＭＡＸが算出される。
【００５１】
同様に、筒内圧最小値ＰＣＹＬＭＩＮの算出は、例えば、１燃焼サイクルの開始時の筒内圧センサ２１の検出値ＰＣＹＬを筒内圧最小値ＰＣＹＬＭＩＮの初期値とするとともに、１燃焼サイクルの終了時まで、検出値ＰＣＹＬが筒内圧最小値ＰＣＹＬＭＩＮを下回るごとに、筒内圧最小値ＰＣＹＬＭＩＮを検出値ＰＣＹＬに置き換え、更新することによって行われる。
【００５２】
次に、算出した筒内圧最大値ＰＣＹＬＭＡＸが、所定の上限値ＰＣＹＬＬＭＴＨよりも大きいか否かを判別する（ステップ１４）。この答えがＹＥＳで、ＰＣＹＬＭＡＸ＞ＰＣＹＬＬＭＴＨのときには、電源側のショートなどにより、筒内圧センサ２１の検出値ＰＣＹＬが過大な一定値を示す出力不変故障が発生していると判定して、出力不変故障フラグＦ＿ＣＰＳＮＧＣを「１」にセットし（ステップ１５）、本処理を終了する。
【００５３】
前記ステップ１４の答えがＮＯのときには、算出した筒内圧最小値ＰＣＹＬＭＩＮが、所定の下限値ＰＣＹＬＬＭＴＬよりも小さいか否かを判別する（ステップ１６）。この答えがＹＥＳで、ＰＣＹＬＭＩＮ＜ＰＣＹＬＬＭＴＬのときには、接地側のショートなどにより、筒内圧センサ２１の検出値ＰＣＹＬが過小な一定値を示す出力不変故障が発生していると判定し、前記ステップ１５に進み、出力不変故障フラグＦ＿ＣＰＳＮＧＣを「１」にセットした後、本処理を終了する。
【００５４】
前記ステップ１６の答えがＮＯのときには、筒内圧最大値ＰＣＹＬＭＡＸと筒内圧最小値ＰＣＹＬＭＩＮとの差を、筒内圧差ΔＰＣＹＬとして算出する（ステップ１７）とともに、この筒内圧差ΔＰＣＹＬが固着判定用の所定値ＰＣＹＬＲＥＦＦよりも小さいか否かを判別する（ステップ１８）。
【００５５】
この答えがＹＥＳで、筒内圧最大値ＰＣＹＬＭＡＸと筒内圧最小値ＰＣＹＬＭＩＮとの差が非常に小さいときには、上述した電源側又は接地側のショート以外の原因により、筒内圧センサ２１の検出値ＰＣＹＬがほぼ一定値に固着した出力不変故障が発生していると判定し、前記ステップ１５に進み、出力不変故障フラグＦ＿ＣＰＳＮＧＣを「１」にセットした後、本処理を終了する。
【００５６】
一方、前記ステップ１８の答えがＮＯのときには、出力不変故障が発生していないと判定して、出力不変故障フラグＦ＿ＣＰＳＮＧＣを「０」にセットし（ステップ１９）、本処理を終了する。
【００５７】
図５は、図３のステップ４で実行される位相ずれ故障の判定処理のサブルーチンを示す。この位相ずれ故障は、筒内圧センサ２１の検出値ＰＣＹＬの大きさは適正であるものの、クランク角ＣＡと検出値ＰＣＹＬとの関係（位相）が、クランク角ＣＡと実際の筒内圧との関係に対してずれるパターンの故障をいう。
【００５８】
本処理では、まずステップ３１及び３２において、出力不変故障フラグＦ＿ＣＰＳＮＧＣ及び位相ずれ故障フラグＦ＿ＣＰＳＮＧＰが「１」であるか否かを、それぞれ判別する。ステップ３１又は３２の答えがＹＥＳで、図４の判定処理において出力不変故障が発生していると判定されたとき、又は本処理によって位相ずれ故障が発生しているとすでに判定されたときには、そのまま本処理を終了する。
【００５９】
上記ステップ３１及び３２の答えがいずれもＮＯのときには、フューエルカットフラグＦ＿ＦＣが「１」であるか否かを判別する（ステップ３３）。この答えがＮＯで、気筒３ａへの燃料の供給を停止するフューエルカット運転の実行中でないときには、そのまま本処理を終了する。
【００６０】
上記ステップ３３の答えがＹＥＳで、フューエルカット運転中のときには、最大筒内圧角θＰｍａｘを算出する（ステップ３４）。この最大筒内圧角θＰｍａｘの算出は、例えば膨張行程において、前述した図４の処理の筒内圧最大値ＰＣＹＬＭＡＸの場合と同様にして、最大筒内圧Ｐｍａｘを更新し、そのときのクランク角ＣＡを記憶するとともに、膨張行程の終了時に最大筒内圧Ｐｍａｘが確定した時点で、記憶されているクランク角ＣＡを最大筒内圧角θＰｍａｘに決定することによって、行われる。
【００６１】
次に、算出した最大筒内圧角θＰｍａｘが所定の上限値θＬＭＴＨよりも大きいか否かを判別する（ステップ３５）。この答えがＹＥＳで、θＰｍａｘ＞θＬＭＴＨのときには、筒内圧センサ２１に位相ずれ故障が発生していると判定して、位相ずれ故障フラグＦ＿ＣＰＳＮＧＰを「１」にセットし（ステップ３６）、本処理を終了する。
【００６２】
また、最大筒内圧角θＰｍａｘが所定の下限値θＬＭＴＬよりも小さいか否かを判別し（ステップ３７）、その答えがＹＥＳで、θＰｍａｘ＜θＬＭＴＬのときにも、位相ずれ故障が発生していると判定し、ステップ３６に進んで、位相ずれ故障フラグＦ＿ＣＰＳＮＧＰを「１」にセットする。
【００６３】
一方、前記ステップ３７の答えがＮＯのときには、位相ずれ故障が発生していないと判定して、位相ずれ故障フラグＦ＿ＣＰＳＮＧＰを「０」にセットし（ステップ３８）、本処理を終了する。
【００６４】
図６は、図３のステップ５で実行される特性異常故障の判定処理のサブルーチンを示す。この特性異常故障は、筒内圧センサ２１の検出値ＰＣＹＬの大きさが実際の筒内圧に対してずれるパターンの故障をいう。この特性異常故障には、筒内圧センサ２１の圧力検出素子の劣化などによるゲインのずれやドリフト（ゼロ点のずれ）に起因するものに加え、後述するような他の原因によるものも含まれる。
【００６５】
本処理では、まずステップ４１及び４２において、出力不変故障フラグＦ＿ＣＰＳＮＧＣ及び位相ずれ故障フラグＦ＿ＣＰＳＮＧＰが「１」であるか否かを、それぞれ判別する。これらの答えのいずれかがＹＥＳで、図４及び図５の判定処理において出力不変故障又は位相ずれ故障が発生していると判定されたときには、そのまま本処理を終了する。
【００６６】
ステップ４１及び４２の答えがいずれもＮＯのときには、フューエルカットフラグＦ＿ＦＣが「１」であるか否かを判別する（ステップ４４）。この答えがＮＯで、フューエルカット運転中でないときには、そのまま本処理を終了する。
【００６７】
上記ステップ４４の答えがＹＥＳで、フューエルカット運転中のときには、ステップ４５以降において、ヒステリシス量ＰＨＹＳを算出する。このヒステリシス量ＰＨＹＳは、実際の筒内圧からの筒内圧センサ２１の検出値ＰＣＹＬのずれの大きさを表すものであり、排気行程の開始時前後の所定の算出区間において算出される。
【００６８】
まず、ステップ４５では、ヒステリシス量ＰＨＹＳの算出中フラグＦ＿ＣＡＬＨＹＳが「１」であるか否かを判別する。この答えがＮＯで、ヒステリシス量ＰＨＹＳの算出中でないときには、クランク角ＣＡが上記の算出区間の始期に相当する第１所定値ＣＡＨＹＳ１に等しいか否かを判別する（ステップ４６）。この答えがＮＯのときには、そのまま本処理を終了する。
【００６９】
一方、ステップ４６の答えがＹＥＳのときには、ヒステリシス量ＰＨＹＳの算出を開始するものとして、算出中フラグＦ＿ＣＡＬＨＹＳを「１」にセットし（ステップ４７）、ステップ４８に進む。また、ステップ４７の実行後には前記ステップ４５の答えがＹＥＳになり、その場合にはステップ４８に直接、進む。
【００７０】
このステップ４８では、モータリング圧ＰＭＯＴを算出する。このモータリング圧ＰＭＯＴは、気筒３ａ内で燃焼が行われないときに発生する筒内圧であり、吸入空気量ＱＡと、吸気温ＴＡと、クランク角ＣＡに対応する気筒３ａの容積Ｖｃとに応じ、気体の状態方程式を用いて算出され、記憶される。また、吸入空気量ＱＡは、エンジン回転数ＮＥ及び吸気圧ＰＢＡに応じて算出される。
【００７１】
次に、そのときの筒内圧センサ２１の検出値ＰＣＹＬを記憶する（ステップ４９）。これらのモータリング圧ＰＭＯＴ及び検出値ＰＣＹＬは、クランク角ＣＡごとに所定の複数の記憶領域に記憶される。
【００７２】
次に、クランク角ＣＡが算出区間の終期に相当する第２所定値ＣＡＨＹＳ２に等しいか否かを判別する（ステップ５０）。この答えがＮＯのときには、そのまま本処理を終了する。
【００７３】
一方、ステップ５０の答えがＹＥＳのときには、算出区間において算出・記憶された複数のモータリング圧ＰＭＯＴを読み出し、それらの平均値を、モータリング圧平均値ＰＭＯＴＡＶＥとして算出する（ステップ５１）。また、算出区間において記憶された筒内圧センサ２１の複数の検出値ＰＣＹＬを読み出し、それらの平均値を、筒内圧平均値ＰＣＹＬＡＶＥとして算出する（ステップ５２）。そして、算出されたモータリング圧平均値ＰＭＯＴＡＶＥと筒内圧平均値ＰＣＹＬＡＶＥとの差を、ヒステリシス量ＰＨＹＳとして算出する（ステップ５３）。
【００７４】
次に、算出中フラグＦ＿ＣＡＬＨＹＳを「０」にセットする（ステップ５４）とともに、算出されたヒステリシス量ＰＨＹＳが所定値ＰＲＥＦＨよりも大きいか否かを判別する（ステップ５５）。
【００７５】
このステップ５５の答えがＹＥＳで、ＰＨＹＳ＞ＰＲＥＦＨのときには、実際の筒内圧からの検出値ＰＣＹＬのずれが大きいため、筒内圧センサ２１に特性異常故障が発生していると判定し、特性異常故障フラグＦ＿ＣＰＳＮＧＨを「１」にセットした（ステップ５６）後、本処理を終了する。一方、ステップ５５の答えがＮＯのときには、特性異常故障が発生していないと判定して、特性異常故障フラグＦ＿ＣＰＳＮＧＨを「０」にセットし（ステップ５７）、本処理を終了する
【００７６】
次に、ＣＰＳ演算ユニット２Ｂで実行される図示平均有効圧力ＰＭＩの算出処理について説明する。この算出処理は、上述した特性異常故障の判定結果に応じて、図示平均有効圧力ＰＭＩを、リヤバンク３Ｒ（＃１〜＃３気筒）及びフロントバンク３Ｆ（＃４〜＃６気筒）の各々について、バンクごとに算出するものである。その算出処理の内容は両バンク間で同じであるので、以下、両者を代表し、図７を参照しながら、リヤバンク３Ｒの図示平均有効圧力ＰＭＩＢＡＮＫＲの算出処理を説明する。本処理は、ＴＤＣ信号の発生に同期して実行される。
【００７７】
本処理では、まずステップ６１において、＃１〜＃３気筒の図示平均有効圧力ＰＭＩ（ｎ）（ｎ＝１〜３）を、次式によってそれぞれ算出する。
ＰＭＩ（ｎ）  ＝  ＩＭＥＰ（ｎ）＋ＰＭＥＰ（ｎ）
ここで、ＩＭＥＰは、燃焼による仕事に相当する圧縮−膨張行程中の図示平均有効圧力（正値）、ＰＭＥＰは、ポンプ損失に相当する排気−吸入行程中の図示平均有効圧力（負値）であり、筒内圧センサ２１の検出値ＰＣＹＬと気筒３ａの容積Ｖｃとの関係から、別個の算出処理（図示せず）によって気筒３ａごとに算出される。
【００７８】
次に、気筒休止フラグＦ＿ＰＣＹＬＳＴＯＰが「１」であるか否かを判別する（ステップ６２）。この答えがＹＥＳで、リヤバンク３Ｒ（＃１〜＃３気筒）に対する気筒休止運転中のときには、リヤバンク３Ｒの図示平均有効圧力ＰＭＩＢＡＮＫＲを０に設定し（ステップ６３）、本処理を終了する。
【００７９】
一方、前記ステップ６２の答えがＮＯで、気筒休止運転中でないときには、ステップ６４以降において、リヤバンク３Ｒの図示平均有効圧力ＰＭＩＢＡＮＫＲを、特性異常故障の判定結果に応じて算出する。
【００８０】
まず、ステップ６４では、図６の判定処理で各筒内圧センサ２１に対してセットされた特性異常故障フラグＦ＿ＣＰＳＮＧＨ（ｎ）の合計値ΣＦ＿ＣＰＳＮＧＨ（ｎ）が、０に等しいか否かを判別する。この答えがＹＥＳのとき、すなわち、＃１〜＃３気筒の筒内圧センサ２１のいずれにも特性異常故障が発生していないと判定されたときには、ステップ６１で算出された気筒３ａごとの図示平均有効圧力ＰＭＩ（ｎ）をそのまま用いるものとし、後述するステップ７０に進む。
【００８１】
前記ステップ６４の答えがＮＯのときには、上記の故障フラグ合計値ΣＦ＿ＣＰＳＮＧＨ（ｎ）が１に等しいか否かを判別する（ステップ６５）。この答えがＹＥＳのとき、すなわち、特性異常故障が、３つの筒内圧センサ２１のうち、いずれか１つに発生し、他の２つに発生していないと判定されたときには、故障と判定された筒内圧センサ２１が設けられた１つの気筒３ａ（以下「故障判定気筒」という）の図示平均有効圧力ＰＭＩを、他の２つの気筒３ａの図示平均有効圧力ＰＭＩの平均値に置き換える（ステップ６６）。
【００８２】
例えば、特性異常故障が、＃１気筒の筒内圧センサ２１に発生し、＃２及び＃３気筒の筒内圧センサ２１に発生していないと判定されたときには、故障判定気筒である＃１気筒の図示平均有効圧力ＰＭＩ（１）を、ＰＭＩ（１）＝（ＰＭＩ（２）＋ＰＭＩ（３））／２として算出する。
【００８３】
前記ステップ６５の答えがＮＯのときには、故障フラグ合計値ΣＦ＿ＣＰＳＮＧＨ（ｎ）が２に等しいか否かを判別する（ステップ６７）。この答えがＹＥＳのとき、すなわち、特性異常故障が、３つの筒内圧センサ２１のうちのいずれか２つに発生し、他の１つに発生していないと判定されたときには、２つの故障判定気筒の図示平均有効圧力ＰＭＩをそれぞれ、他の１つの気筒３ａの図示平均有効圧力ＰＭＩに置き換える（ステップ６８）。
【００８４】
例えば、特性異常故障が、＃１及び＃２気筒の筒内圧センサ２１に発生し、＃３気筒の筒内圧センサ２１に発生していないと判定されたときには、＃１及び＃２気筒の図示平均有効圧力ＰＭＩ（１）及びＰＭＩ（２）を、ＰＭＩ（１）＝ＰＭＩ（３）、ＰＭＩ（２）＝ＰＭＩ（３）としてそれぞれ算出する。
【００８５】
前記ステップ６７の答えがＮＯのとき、すなわち、故障フラグ合計値ΣＦ＿ＣＰＳＮＧＨ（ｎ）が３に等しく、＃１〜＃３気筒の筒内圧センサ２１のいずれにも特性異常故障が発生していると判定されたときには、＃１〜＃３気筒の図示平均有効圧力ＰＭＩ（１）〜ＰＭＩ（３）をいずれも０に設定する（ステップ６９）。
【００８６】
前記ステップ６４、６６、６８又は６９に続くステップ７０では、これまでに算出された＃１〜＃３気筒の図示平均有効圧力ＰＭＩ（１）〜ＰＭＩ（３）の和を、リヤバンク３Ｒの図示平均有効圧力ＰＭＩＢＡＮＫＲとして算出し、本処理を終了する。前述したように、＃４〜＃６気筒を有するフロントバンク３Ｆの図示平均有効圧力ＰＭＩＢＡＮＫＦについても、上記と同様にして算出される。
【００８７】
図８は、ＥＣＵ２で実行されるエンジントルクＴＲＱＥの算出処理を示す。本処理は、上記のようにして算出されたリヤ及びフロントバンク３Ｒ、３Ｆの図示平均有効圧力ＰＭＩＢＡＮＫＲ、ＰＭＩＢＡＮＫＦに基づき、エンジン３から出力される正味のトルクを、エンジントルクＴＲＱＥとして算出するものである。
【００８８】
本処理では、まずステップ７１において、両バンク３Ｒ、３Ｆの図示平均有効圧力ＰＭＩＢＡＮＫＲ、ＰＭＩＢＡＮＫＦを加算することによって、エンジン３全体の図示平均有効圧力ＰＭＩＥを算出する。次に、この図示平均有効圧力ＰＭＩＥに、１気筒当たりの行程容積Ｖｃｓ、エンジン回転数ＮＥ及び所定の換算係数ＫＰＰを乗算することによって、エンジン３の図示出力（馬力）ＩＰＥを算出する（ステップ７２）。
【００８９】
次に、エンジン回転数ＮＥ及び吸気圧ＰＢＡに応じ、所定のマップ（図示せず）を検索することによって、エンジン３の摩擦出力ＦＰＥ（負値）を算出する（ステップ７３）。次に、図示出力ＩＰＥに摩擦出力ＦＰＥを加算することによって、エンジン３の正味出力ＳＰＥを算出する（ステップ７４）。
【００９０】
最後に、算出された正味出力ＳＰＥをエンジン回転数ＮＥで除算するとともに、所定の換算係数ＫＰＴを乗算することによって、エンジントルクＴＲＱＥを算出し（ステップ７５）、本処理を終了する。
【００９１】
以上のように算出されたエンジントルクＴＲＱＥは、エンジン３や車両の制御に用いられる。図９は、その一例であるエンジン３のトルク制御処理を示す。本処理では、まずステップ８１において、車両の運転者からの要求トルクＴＲＱＣＭＤを算出する。その算出は、例えば、アクセル開度ＡＰ及びエンジン回転数ＮＥに応じ、所定のマップ（図示せず）を検索することによって行われる。
【００９２】
次に、算出された要求トルクＴＲＱＣＭＤ及びエンジン回転数ＮＥに応じ、所定のマップ（図示せず）を検索することによって、目標スロットル弁開度θＴＨＣＭＤの基本値θＴＨＢＡＳＥを算出する（ステップ８２）。
【００９３】
次に、要求トルクＴＲＱＣＭＤとエンジントルクＴＲＱＥとの偏差に応じて、フィードバック補正項ΔθＴＨＦＢを算出する（ステップ８３）。最後に、このフィードバック補正項ΔθＴＨＦＢを基本値θＴＨＢＡＳＥに加算することによって、目標スロットル弁開度θＴＨＣＭＤを算出し（ステップ８４）、本処理を終了する。
【００９４】
以上のように設定された目標スロットル弁開度θＴＨＣＭＤに基づき、スロットル弁開度θＴＨを制御することによって、エンジントルクＴＲＱＥが要求トルクＴＲＱＣＭＤになるように制御される。
【００９５】
以上のように、本実施形態によれば、リヤ及びフロントバンク３Ｒ、３Ｆの各々において、気筒３ａごとに、筒内圧の大きさに依存する第１燃焼パラメータとして、図示平均有効圧力ＰＭＩを算出する（図７のステップ６１）。また、両バンク３Ｒ、３Ｆの各々において、一部の筒内圧センサ２１に、検出値ＰＣＹＬの大きさが実際の筒内圧に対してずれる特性異常故障が発生していると判定されたときには、その故障判定気筒の図示平均有効圧力ＰＭＩを、他の気筒３ａの図示平均有効圧力ＰＭＩ又はその平均値に置き換える（ステップ６６、６８）。
【００９６】
これにより、一部の筒内圧センサ２１に特性異常故障が発生した場合でも、故障判定気筒の図示平均有効圧力ＰＭＩを、その精度を良好に保ちながら継続して算出でき、その結果、両バンク３Ｒ、３Ｆの図示平均有効圧力ＰＭＩＢＡＮＫＲ、ＰＭＩＢＡＮＫＦ、及びエンジン３の図示平均有効圧力ＰＭＩＥの算出を、高い精度で継続して行うことができる。
【００９７】
また、エンジン３の図示平均有効圧力ＰＭＩＥに基づいてエンジントルクＴＲＱＥを算出する（図８）とともに、算出されたエンジントルクＴＲＱＥが要求トルクＴＲＱＣＭＤになるように、エンジン３のトルクを制御する（図９）ので、特性異常故障が発生した場合でも、エンジン３のトルク制御を精度良く継続して実行することができる。
【００９８】
さらに、実際の筒内圧に対する筒内圧センサ２１の検出値ＰＣＹＬのずれの大きさをヒステリシス量ＰＨＹＳとして算出し、このヒステリシス量ＰＨＹＳが所定値ＰＲＥＦＨよりも大きいときに、筒内圧センサ２１に特性異常故障が発生していると判定する。これにより、特性異常故障を適切に判定できるとともに、その判定結果に応じ、実際の筒内圧に対する検出値ＰＣＹＬのずれの影響を適切に排除しながら、図示平均有効圧力ＰＭＩやエンジントルクＴＲＱＥなどの算出を精度良く行うことができる。
【００９９】
なお、筒内圧センサ２１の検出値ＰＣＹＬが実際の筒内圧に対して大きくずれる原因として、前述した筒内圧センサ２１のゲインのずれやドリフトによるものの他、例えば、発明者によって見出された次のような現象がある。この現象は、実施形態のように筒内圧センサ２１が燃料噴射弁８に一体に取り付けられ、かつ筒内圧センサ２１が新品の場合に、膨張行程の終了時付近から排気行程にわたって、検出値ＰＣＹＬが実際値に対して大きく落ち込む（低下する）現象である。その後、エンジン３の運転が進むにつれて、この落込み量が減少し、検出値ＰＣＹＬが実際の筒内圧に一致するように回復することも確認されている。
【０１００】
このような検出値ＰＣＹＬの落込み現象が発生すると、その間、その気筒３ａの図示平均有効圧力ＰＭＩが小さめに算出され、それに応じてエンジントルクＴＲＱＥもまた小さめに算出される結果、エンジン３のトルク制御を適切に行えなくなるおそれがある。
【０１０１】
上述した実施形態によれば、この落込み現象を適切に判定することができる。すなわち、落込み現象が膨張行程の終了時付近から排気行程にわたって発生するのに対し、前述したように、ヒステリシス量ＰＨＹＳの算出区間は、排気行程の開始時前後に設定されていて、落込み現象の発生期間に属するので、ヒステリシス量ＰＨＹＳには検出値ＰＣＹＬの落込み量が反映される。
【０１０２】
したがって、落込み現象が発生した直後における検出値ＰＣＹＬの落込み量が比較的大きい状態では、ヒステリシス量ＰＨＹＳが所定値ＰＲＥＦＨを上回ることによって、筒内圧センサ２１に特性異常故障が発生していると判定され、それに応じて、その気筒３ａの図示平均有効圧力ＰＭＩが他の気筒３ａのものに置き換えられる。
【０１０３】
また、図６の特性異常故障の判定処理では、特性異常故障が発生していると一旦、判定された後にも、特性異常故障の判定が引き続き行われる。したがって、その後、検出値ＰＣＹＬの落込み量が減少したときに、ヒステリシス量ＰＨＹＳが所定値ＰＲＥＦＨ以下になることによって、筒内圧センサ２１に特性異常故障が発生していないと判定されるようになり、それに応じて、その気筒３ａの図示平均有効圧力ＰＭＩがそのまま採用される。
【０１０４】
以上により、筒内圧センサ２１の検出値ＰＣＹＬの落込み現象が発生した場合でも、その落込み量の大きさに応じて特性異常故障の有無を適切に判定でき、したがって、エンジントルクＴＲＱＥなどの算出やエンジン３のトルク制御などを精度良く継続して行うことができる。
【０１０５】
次に、図１０を参照しながら、ＣＰＳ演算ユニット２Ｂで実行される最大筒内圧角θＰｍａｘの算出処理について説明する。この算出処理は、ＣＲＫ信号の発生に同期して気筒３ａごとに実行され、以下に説明するように、最大筒内圧角θＰｍａｘは膨張行程において算出される。
【０１０６】
本処理では、まずステップ９１において、特性異常故障フラグＦ＿ＣＰＳＮＧＨが「１」であるか否かを判別する。この答えがＮＯのときには、出力不変故障フラグＦ＿ＣＰＳＮＧＣ及び位相ずれ故障フラグＦ＿ＣＰＳＮＧＰが「１」であるか否かを、それぞれ判別する（ステップ９２、９３）。これらの答えのいずれかがＹＥＳで、筒内圧センサ２１に出力不変故障又は位相ずれ故障が発生していると判定されたときには、最大筒内圧角θＰｍａｘの算出を禁止するものとし、そのまま本処理を終了する。
【０１０７】
一方、上記ステップ９２及び９３の答えがＮＯで、筒内圧センサ２１が正常と判定されているときには、最大筒内圧角θＰｍａｘを算出するものとし、筒内圧ステップ９４以降に進む。また、前記ステップ９１の答えがＹＥＳで、筒内圧センサ２１に特性異常故障が発生していると判定されているときにも、ステップ９４以降に進む。
【０１０８】
以上のように、筒内圧センサ２１が故障していると判定されている場合において、その故障パターンが出力不変故障又は位相ずれ故障のときには、最大筒内圧角θＰｍａｘの算出が禁止され、故障パターンが特性異常故障のときには、最大筒内圧角θＰｍａｘの算出が許可される。
【０１０９】
このステップ９４では、最大筒内圧角θＰｍａｘの算出中フラグＦ＿ＣＡＬＰＭＡＸが「１」であるか否かを判別する。この答えがＮＯで、最大筒内圧角θＰｍａｘの算出中でないときには、クランク角ＣＡが膨張行程の始期に相当する第１所定値ＣＡＰＭＡＸ１に等しいか否かを判別する（ステップ９５）。この答えがＮＯのときには、そのまま本処理を終了する。
【０１１０】
一方、ステップ９５の答えがＹＥＳのときには、最大筒内圧角θＰｍａｘの算出を開始するものとして、算出中フラグＦ＿ＣＡＬＰＭＡＸを「１」にセットし（ステップ９６）、ステップ９７に進む。また、ステップ９６の実行後には前記ステップ９４の答えがＹＥＳになり、その場合にはステップ９７に直接、進む。
【０１１１】
このステップ９７では、筒内圧センサ２１の今回の検出値ＰＣＹＬがその前回値ＰＣＹＬＺよりも大きいか否かを判別する。この答えがＹＥＳで、検出値ＰＣＹＬ＞前回値ＰＣＹＬＺのときには、検出値ＰＣＹＬを最大筒内圧Ｐｍａｘとして算出し、記憶する（ステップ９８）とともに、このときのクランク角ＣＡを、最大筒内圧角θＰｍａｘとして算出し、記憶する（ステップ９９）。以後、ステップ９７においてＰＣＹＬ＞ＰＣＹＬＺが成立するごとに、ステップ９８及び９９が実行されることで、最大筒内圧Ｐｍａｘ及び最大筒内圧角θＰｍａｘが更新される。
【０１１２】
このステップ９９の後、又は前記ステップ９７の答えがＮＯのときには、ステップ１００において、クランク角ＣＡが膨張行程の終期に相当する第２所定値ＣＡＰＭＡＸ２に等しいか否かを判別する。この答えがＮＯのときには、筒内圧センサ２１の検出値ＰＣＹＬを前回値ＰＣＹＬＺにシフトし（ステップ１０１）、本処理を終了する。
【０１１３】
一方、ステップ１００の答えがＹＥＳで、膨張行程が終了したときには、最大筒内圧角θＰｍａｘの算出を終了するものとし、その算出中フラグＦ＿ＣＡＬＰＭＡＸを「０」にセットした（ステップ１０２）後、本処理を終了する。以上により、ステップ９９で最後に記憶された最大筒内圧角θＰｍａｘが、最終的な最大筒内圧角θＰｍａｘとして確定される。
【０１１４】
図１１は、上記のように算出された最大筒内圧角θＰｍａｘを用いて実行される点火時期θＩＧの制御処理を示す。本処理では、まずステップ１１１において、図９のステップ８１と同様にして、要求トルクＴＲＱＣＭＤを算出する。
【０１１５】
次に、要求トルクＴＲＱＣＭＤ及びエンジン回転数ＮＥに応じ、所定のマップ（図示せず）を検索することによって、目標点火時期θＩＧＣＭＤの基本値θＩＧＢＡＳＥを算出する（ステップ１１２）。
【０１１６】
次に、所定の目標最大筒内圧角θＰｍａｘＣＭＤと算出された最大筒内圧角θＰｍａｘとの偏差に応じて、フィードバック補正項ΔθＩＧＦＢを算出する（ステップ１１３）。最後に、このフィードバック補正項ΔθＩＧＦＢを基本値θＩＧＢＡＳＥに加算することによって、目標点火時期θＩＧＣＭＤを算出し（ステップ１１４）、本処理を終了する。
【０１１７】
以上のように目標点火時期θＩＧＣＭＤを設定し、それに基づいて点火時期θＩＧを制御することによって、最大筒内圧角θＰｍａｘが目標最大筒内圧角θＰｍａｘＣＭＤになるように制御される。
【０１１８】
以上のように、本実施形態によれば、第２燃焼パラメータとして、最大筒内圧角θＰｍａｘを気筒３ａごとに算出する（図１０のステップ９９）。また、筒内圧センサ２１が故障していると判定された場合において、その故障パターンが特性異常故障のときには、その気筒３ａの最大筒内圧角θＰｍａｘを、故障と判定された筒内圧センサ２１の検出値ＰＣＹＬに基づいて算出する。これにより、最大筒内圧角θＰｍａｘをその精度を保ちながら継続して算出でき、それに応じて、最大筒内圧角θＰｍａｘを用いた点火時期制御を、精度良く継続して実行することができる。
【０１１９】
一方、筒内圧センサ２１の故障パターンが出力不変故障又は位相ずれ故障のときには、故障判定気筒の最大筒内圧角θＰｍａｘを禁止する（ステップ９２、９３）ので、最大筒内圧角θＰｍａｘの誤算出を確実に回避することができる。
【０１２０】
なお、本発明は、説明した実施形態に限定されることなく、種々の態様で実施することができる。例えば、実施形態では、第１燃焼状態パラメータとして、各気筒３ａの図示平均有効圧力ＰＭＩを算出している。この第１燃焼状態パラメータは、筒内圧の大きさに依存するパラメータであれば任意であり、例えば、膨張行程における最大筒内圧Ｐｍａｘや、前述した圧縮−膨張行程中の図示平均有効圧力ＩＭＥＰ、排気−吸入行程中の図示平均有効圧力ＰＭＥＰでもよい。その場合、これらの第１燃焼状態パラメータの算出は、前述した図示平均有効圧力ＰＭＩの場合と同様にして、特性異常故障の判定結果に応じて行われる。
【０１２１】
また、実施形態では、第２燃焼状態パラメータとして、各気筒３ａの最大筒内圧角θＰｍａｘを算出している。この第２燃焼状態パラメータは、クランク角に対する筒内圧の変化状態に依存し、クランク角で表されるパラメータであれば任意であり、例えば、所定の燃焼質量割合が得られるクランク角（例えばＭＦＢ５０）や実着火時期でもよい。その場合、これらの第２燃焼状態パラメータの算出は、前述した最大筒内圧角θＰｍａｘの場合と同様にして、特性異常故障の判定結果に応じて行われるとともに、出力不変故障及び位相ずれ故障の判定結果に応じて禁止される。
【０１２２】
また、実施形態では、各気筒３ａの図示平均有効圧力ＰＭＩをそれぞれ算出し、その後、特性異常故障の判定結果に応じて、故障判定気筒の図示平均有効圧力ＰＭＩを、他の気筒３ａのＰＭＩ値又はその平均値に置き換えることによって、最終的に決定しているが、これを以下のように変更してもよい。すなわち、特性異常故障の判定結果に応じて、故障判定気筒以外の気筒３ａの図示平均有効圧力ＰＭＩのみを算出するとともに、これらのうちの適当なものを選択し、故障判定気筒のＰＭＩ値として用いてもよい。
【０１２３】
さらに、実施形態では、エンジン３は例えばＶ型６気筒タイプのものであるが、エンジン３のタイプや気筒３ａの数は任意である。また、実施形態では、筒内圧センサ２１は、すべての気筒３ａに設けられているが、それらの一部である少なくとも２つの気筒３ａに設けられていてもよく、その場合には、一部の気筒３ａとそれに設けられた筒内圧センサ２１に対して、本発明が適用される。
【０１２４】
また、実施形態では、燃焼状態パラメータの算出やエンジン３の制御などの処理を行うためのユニットが、ＣＰＳ演算ユニット２ＢとＥＣＵ２に分けられ、それぞれ所定の処理を実行しているが、両ユニットの役割・分担を変更してもよく、また両ユニットを単一のユニットに統合してもよい。
【０１２５】
さらに、本実施形態は、本発明を車両用のエンジンに適用した例であるが、本発明は、これに限らず、他の用途のエンジン、例えばクランクシャフトを鉛直方向に配置した船外機のような船舶推進機用エンジンなどに適用可能である。その他、本発明の趣旨の範囲内で、細部の構成を適宜、変更することが可能である。
【符号の説明】
【０１２６】
１  筒内圧検出装置
２  ＥＣＵ（総トルクパラメータ算出手段）
２Ｂ  ＣＰＳ演算ユニット（第１燃焼状態パラメータ算出手段、故障判定手段、ヒステ
リシス量算出手段、第２燃焼状態パラメータ算出手段、燃焼状態パラメータ算出
手段、算出禁止手段、判定禁止手段）
３  エンジン（内燃機関）
３ａ  気筒
１１  気筒休止機構
２１  筒内圧センサ
ＰＣＹ  筒内圧センサの検出値（検出筒内圧）
ＰＭＩ  図示平均有効圧力（第１燃焼状態パラメータ、トルクパラメータ）
ＰＭＩＥ  エンジン全体の図示平均有効圧力（総トルクパラメータ）
ＰＨＹＳ  ヒステリシス量
ＰＲＥＦＨ  所定値
ＣＡ  クランク角
θＰｍａｘ  最大筒内圧角（第２燃焼状態パラメータ）
Ｆ＿ＣＰＳＮＧＨ  特性異常故障フラグ
Ｆ＿ＣＰＳＮＧＣ  出力不変故障フラグ
Ｆ＿ＣＰＳＮＧＰ  位相ずれ故障フラグ
【図１】
0006038102.tif 000002
【図２】
0006038102.tif 000003
【図３】
0006038102.tif 000004
【図４】
0006038102.tif 000005
【図５】
0006038102.tif 000006
【図６】
0006038102.tif 000007
【図７】
0006038102.tif 000008
【図８】
0006038102.tif 000009
【図９】
0006038102.tif 000010
【図１０】
0006038102.tif 000011
【図１１】
0006038102.tif 000012