(57)【要約】  異常燃焼が発生した後、所定期間生じる筒内圧センサの出力値のずれを補正することのできる内燃機関の制御装置を提供する。  異常燃焼が発生するよりも前のサイクル（発生前サイクル）における筒内圧と前記筒内圧センサ（１４）の実出力値（センサ出力値）との関係を示す発生前出力特性（６０）を予め記憶する。異常燃焼が発生した後のサイクル（発生後サイクル）における推定筒内圧を取得する（Ｓ１３１、Ｓ１３４）。前記発生後サイクルにおける推定筒内圧とセンサ出力値とから発生後出力特性（６２）を算出する。前記発生前出力特性（６０）と前記発生後出力特性（６２）とから、前記異常燃焼の発生前後における前記筒内圧センサ（１４）の出力差（６４）を算出する（Ｓ１３８）。出力差（６４）を用いて前記発生後サイクルにおけるセンサ出力値を校正する（Ｓ１４０）。
2011155054.tif 000002
【特許請求の範囲】
【請求項１】
筒内圧センサを備えた内燃機関の制御装置であって、
筒内圧が設定値以上の高圧となる異常燃焼が発生したか否かを判定する異常燃焼判定手段と、
前記異常燃焼が発生するよりも前のサイクル（以下、発生前サイクルという。）における筒内圧と前記筒内圧センサの実出力値（以下、センサ出力値という。）との関係を示す発生前出力特性を予め記憶する発生前出力特性記憶手段と、
前記異常燃焼が発生した後のサイクル（以下、発生後サイクルという。）における推定筒内圧を取得する推定筒内圧取得手段と、
前記発生後サイクルにおける推定筒内圧とセンサ出力値とから発生後出力特性を算出する発生後出力特性算出手段と、
前記発生前出力特性と前記発生後出力特性とから、前記異常燃焼の発生前後における前記筒内圧センサの出力差を算出し、当該出力差を用いて前記発生後サイクルにおけるセンサ出力値を校正するセンサ出力値校正手段と、
を備えることを特徴とする内燃機関の制御装置。
【請求項２】
前記推定筒内圧取得手段は、
各サイクルにおいて、前記発生前出力特性から最大センサ出力値に応じた最大筒内圧を取得し、記憶する最大筒内圧記憶手段と、
前記異常燃焼の発生前後において運転状態が一定である場合に、前記最大筒内圧記憶手段に記憶された前記発生前サイクルにおける最大筒内圧を、前記発生後サイクルにおける推定筒内圧として取得する定常時推定筒内圧取得手段と、
を更に備えることを特徴とする請求項１記載の内燃機関の制御装置。
【請求項３】
前記推定筒内圧取得手段は、
運転状態と推定最大筒内圧との対応関係を予め記憶する関係記憶手段と、
前記対応関係から前記発生後サイクルの運転状態に対応する推定最大筒内圧を、前記発生後サイクルにおける推定筒内圧として取得する過渡時推定筒内圧取得手段と、
を更に備えることを特徴とする請求項１又は２記載の内燃機関の制御装置。
【請求項４】
前記推定筒内圧取得手段は、
圧縮工程において断熱圧縮の式を用いて算出される筒内圧を、前記発生後サイクルにおける推定筒内圧として取得する低圧時推定筒内圧取得手段、を更に備え、
前記発生後出力特性算出手段は、前記発生後サイクルにおける推定筒内圧とセンサ出力値とを関連付けた１又は複数のデータから、前記発生後出力特性を算出すること、
を特徴とする請求項２又は３記載の内燃機関の制御装置。
【請求項５】
点火後のノッキング判定期間において、振動センサの振れ幅がノック判定値以上となる場合に、ノッキングが生じたと判定するノックコントロールシステムを備え、
前記ノックコントロールシステムは、点火前に前記異常燃焼が発生した場合に、前記異常燃焼が発生したクランク角を含む異常燃焼判定区間を追加する異常燃焼判定区間追加手段を更に備えること、
を特徴とする請求項１乃至４いずれか１項記載の内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、内燃機関の制御装置に係り、特に、車両に搭載される内燃機関の制御を実行するのに好適な内燃機関の制御装置に関する。
【背景技術】
【０００２】
従来、例えば特許文献１に開示されるように、各気筒に筒内圧センサを備えた内燃機関が知られている。また、本公報には、各気筒における筒内圧センサの出力特性（筒内圧とセンサ出力との関係を示す特性）を、共通の基準出力特性に一致させるように補正する内燃機関の制御装置が開示されている。この基準出力特性として、各筒内圧センサの出力特性の平均や、いずれか１つの筒内圧センサの出力特性が用いられている。このような手法によれば、各気筒における筒内圧センサの出力特性のばらつきをなくす補正をすることができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】日本特開２００８−６９７１４号公報
【特許文献２】日本特開２００７−３２５３１号公報
【特許文献３】日本特開２００８−２９７９５２号公報
【特許文献４】日本特開２００９−２２９３２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、本願発明者は、鋭意研究を進めた結果、異常燃焼が発生すると、筒内圧センサに次のような現象が生じることを見出した。図２２は、異常燃焼の発生前後における筒内圧センサの出力値のずれ（出力特性の変化）を説明するための図である。図２３は、異常燃焼が発生した後のサイクルにおける筒内圧センサの出力値を示す図である。図２２に示すように、異常燃焼が発生すると、その後、筒内圧センサの出力値にずれが生じる。この出力ずれは、所定期間（数千〜数万サイクル）経過するまで続くことが判明した（図２３）。【０００５】
このように、異常燃焼が発生した後、所定期間は、筒内圧センサの出力値にずれが生じる。上記従来の内燃機関の制御装置では、この現象について考慮されておらず、この期間は、現実の筒内圧に対応する正しい出力値を得ることができない。そのため、この期間は、筒内圧センサの出力値に基づく各種制御（例えば、点火時期制御、空燃比フィードバック制御など）を正しく実施することができないという課題が生じる。【０００６】
この発明は、上述のような課題を解決するためになされたもので、異常燃焼が発生した後、所定期間生じる筒内圧センサの出力値のずれを補正することのできる内燃機関の制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
第１の発明は、上記の目的を達成するため、筒内圧センサを備えた内燃機関の制御装置であって、
筒内圧が設定値以上の高圧となる異常燃焼が発生したか否かを判定する異常燃焼判定手段と、
前記異常燃焼が発生するよりも前のサイクル（以下、発生前サイクルという。）における筒内圧と前記筒内圧センサの実出力値（以下、センサ出力値という。）との関係を示す発生前出力特性を予め記憶する発生前出力特性記憶手段と、
前記異常燃焼が発生した後のサイクル（以下、発生後サイクルという。）における推定筒内圧を取得する推定筒内圧取得手段と、
前記発生後サイクルにおける推定筒内圧とセンサ出力値とから発生後出力特性を算出する発生後出力特性算出手段と、
前記発生前出力特性と前記発生後出力特性とから、前記異常燃焼の発生前後における前記筒内圧センサの出力差を算出し、当該出力差を用いて前記発生後サイクルにおけるセンサ出力値を校正するセンサ出力値校正手段と、を備えることを特徴とする。【０００８】
また、第２の発明は、第１の発明において、
前記推定筒内圧取得手段は、
各サイクルにおいて、前記発生前出力特性から最大センサ出力値に応じた最大筒内圧を取得し、記憶する最大筒内圧記憶手段と、
前記異常燃焼の発生前後において運転状態が一定である場合に、前記最大筒内圧記憶手段に記憶された前記発生前サイクルにおける最大筒内圧を、前記発生後サイクルにおける推定筒内圧として取得する定常時推定筒内圧取得手段とを更に備えることを特徴とする。【０００９】
また、第３の発明は、第１の発明又は第２の発明において、
前記推定筒内圧取得手段は、
運転状態と推定最大筒内圧との対応関係を予め記憶する関係記憶手段と、
前記対応関係から前記発生後サイクルの運転状態に対応する推定最大筒内圧を、前記発生後サイクルにおける推定筒内圧として取得する過渡時推定筒内圧取得手段と、を更に備えることを特徴とする。【００１０】
また、第４の発明は、第２の発明又は第３の発明において、
前記推定筒内圧取得手段は、
圧縮工程において断熱圧縮の式を用いて算出される筒内圧を、前記発生後サイクルにおける推定筒内圧として取得する低圧時推定筒内圧取得手段、を更に備え、
前記発生後出力特性算出手段は、前記発生後サイクルにおける推定筒内圧とセンサ出力値とを関連付けた１又は複数のデータから、前記発生後出力特性を算出すること、を特徴とする。【００１１】
また、第５の発明は、第１の発明乃至第４の発明のいずれかにおいて、
点火後のノッキング判定期間において、振動センサの振れ幅がノック判定値以上となる場合に、ノッキングが生じたと判定するノックコントロールシステムを備え、
前記ノックコントロールシステムは、点火前に前記異常燃焼が発生した場合に、前記異常燃焼が発生したクランク角を含む異常燃焼判定区間を追加する異常燃焼判定区間追加手段を更に備えること、を特徴とする。
【発明の効果】
【００１２】
第１の発明によれば、発生前出力特性と発生後出力特性とから、異常燃焼の発生前後における筒内圧センサの出力差を算出し、当該出力差を用いて前記発生後サイクルにおけるセンサ出力値を校正することができる。このため、本発明によれば、異常燃焼が発生した後、所定期間生じる筒内圧センサの出力値のずれを補正することができる。筒内圧センサの出力値に基づく各種制御を好適に実施することが可能となり、燃費やドライバビリティの悪化を抑制することができる。【００１３】
第２の発明によれば、発生前サイクルにおける最大筒内圧を記憶する。そして、異常燃焼の発生前後において一定の運転状態である場合に、発生前サイクルに記憶した最大筒内圧を、発生後サイクルにおける推定筒内圧として取得することができる。このため、本発明によれば、異常燃焼の発生前後において一定の運転状態である場合に、この発生後サイクルにおける推定筒内圧とセンサ出力値とから上述の発生後出力特性を精度高く算出することができる。【００１４】
第３の発明によれば、運転状態と推定最大筒内圧との対応関係から、発生後サイクルの運転状態に対応する推定最大筒内圧を、発生後サイクルにおける推定筒内圧として取得することができる。このため、本発明によれば、過渡時においても、上述の発生後出力特性を精度高く算出することができる。【００１５】
第４の発明によれば、圧縮工程において断熱圧縮の式を用いて算出される筒内圧を、前記発生後サイクルにおける推定筒内圧として更に取得することができる。そのため、点火前の推定筒内圧に関してもデータを得ることができる。このため、本発明によれば、上述の発生後出力特性を更に精度高く算出することができる。【００１６】
第５の発明によれば、点火前に前記異常燃焼が発生した場合に、前記異常燃焼が発生したクランク角を含む異常燃焼判定区間を追加することができる。異常燃焼判定区間を設けることで、筒内圧センサの出力値に寄らず異常燃焼の発生を検出することが可能となる。このため、本発明によれば、異常燃焼が発生した後、筒内圧センサの出力値にずれが生じている期間においても、異常燃焼の発生を検出することが可能となる。
【図面の簡単な説明】
【００１７】
【図１】本発明の各実施の形態の位置付けについて説明するための図である。
【図２】本発明の実施の形態１のシステム構成を説明するための概略構成図である。
【図３】本発明の実施の形態１において、傾きの差異５８による出力値のずれを補正する制御について説明するための図である。
【図４】本発明の実施の形態１において、圧縮行程における筒内圧とクランク角との関係を示す図である。
【図５】本発明の実施の形態１において、ＥＣＵ５０が実行する制御ルーチンのフローチャートである。
【図６】本発明の実施の形態１において、異常燃焼を判定する一例について説明するための図である。
【図７】本発明の実施の形態１において、筒内圧センサ１４に異常が生じているか否かを判定する一例について説明するための図である。
【図８】本発明の実施の形態１において、ＥＣＵ５０が実行するサブルーチンのフローチャートである。
【図９】本発明の実施の形態２において、過渡時のエンジン回転数ＮＥと負荷率ＫＬとの関係を示す図である。
【図１０】本発明の実施の形態２において、エンジン回転数ＮＥ毎に、負荷率ＫＬと点火時期ＳＡと最大筒内圧Ｐｍａｘとの関係を示した関係マップである。
【図１１】本発明の実施の形態２において、点火時期ＳＡと負荷率ＫＬとを変化させた場合における最大筒内圧Ｐｍａｘの変化を示す図である。
【図１２】本発明の実施の形態２において、傾きの差異５８による出力値のずれを補正する制御について説明するための図である。
【図１３】本発明の実施の形態２において、ＥＣＵ５０が実行する制御ルーチンのフローチャートである。
【図１４】本発明の実施の形態２において、ＥＣＵ５０が実行するサブルーチンのフローチャートである。
【図１５】本発明の実施の形態３において用いられるノックコントロールシステム（ＫＣＳ）について説明するための図である。
【図１６】本発明の実施の形態３において、熱発生位置と最大筒内圧Ｐｍａｘとの関係を示す図である。
【図１７】本発明の実施の形態３において、ＥＣＵ５０が実行する制御ルーチンのフローチャートである。
【図１８】本発明の実施の形態４において、筒内圧の実値と筒内圧の推定値との関係について説明するための図である。
【図１９】本発明の実施の形態４において、異なる検出数（サイクル数）における、筒内圧の実値の平均値と推定値との誤差を示す図である。
【図２０】本発明の実施の形態４において、検出数に応じた筒内圧の実値と推定値との乖離率を示す図である。
【図２１】本発明の実施の形態４において、ＥＣＵ５０が実行する制御ルーチンのフローチャートである。
【図２２】異常燃焼の発生前後における筒内圧センサの出力値のずれ（出力特性の変化）を説明するための図である。
【図２３】異常燃焼が発生した後のサイクルにおける筒内圧センサの出力値を示す図である。
【図２４】出力値のずれが生じる第１の要素について説明するための図である。
【図２５】出力値のずれが生じる第２の要素について説明するための図である。
【符号の説明】
【００１８】
１０  エンジン
１４  筒内圧センサ
１６  点火プラグ
２２  エアフローメータ
２４  過給機
２４ａ、２４ｂ  コンプレッサ、タービン
２６  インタークーラ
２８  スロットルバルブ
３１  吸気管圧センサ
３４  クランク角センサ
３６  ノックセンサ
５０  ＥＣＵ(Electronic Control Unit)
５２  オフセット
５８  傾きの差異
６０  異常燃焼発生前の出力特性
６２  異常燃焼発生後の出力特性
６４  出力補正量
７０  ノッキング判定区間
７２  異常燃焼判定区間
Ｐｍａｘ  最大筒内圧
【発明を実施するための形態】
【００１９】
まず、本発明の各実施の形態の位置付けについて図１を用いて説明する。図１は、本発明の各実施の形態の位置付けについて説明するための図である。本発明の実施の形態１、２は、それぞれ、異常燃焼が発生した後に所定期間生じる筒内圧センサの出力値のずれを補正するものである。特に、実施の形態１は定常時に、実施の形態２は過渡時に好適なものである。また、実施の形態３は、実施の形態１又は２による補正制御中に発生した異常燃焼を、ＫＣＳ（Knock Control System）を用いて検出するものである。さらに、実施の形態４は、実施の形態１又は２による補正を代替するものである。
【００２０】
以下、図２〜図２５を参照して本発明の実施の形態について詳細に説明する。尚、各図において共通する要素には、同一の符号を付して重複する説明を省略する。
【００２１】
実施の形態１．
［実施の形態１のシステム構成］
まず、図２〜図８を参照して本発明の実施の形態１について説明する。図２は、本発明の実施の形態１のシステム構成を説明するための概略構成図である。図２に示すシステムは内燃機関（以下、単にエンジンという。）１０を備えている。図２に示す内燃機関１０は、直列４気筒型であるが、本発明では、気筒数および気筒配置はこれに限定されるものではない。
【００２２】
エンジン１０の各気筒には、燃料を筒内に直接噴射するインジェクタ１２と、筒内圧力（燃焼圧力）を検出するための筒内圧センサ１４と、点火プラグ１６とが取り付けられている。なお、本発明は、上述のような筒内直噴式のエンジンに限らず、ポート噴射式のエンジンにも適用可能である。
【００２３】
また、各気筒には、吸気通路１８および排気通路２０が接続されている。吸気通路１８の入口付近には、エアクリーナが取り付けられている。エアクリーナの下流には、吸入空気量ＧＡを検出するためのエアフローメータ２２が取り付けられている。
【００２４】
エアフローメータ２２の下流には、過給機２４が設けられている。過給機２４は、コンプレッサ２４ａとタービン２４ｂを備えている。コンプレッサ２４ａとタービン２４ｂとは、連結軸によって一体に連結されている。コンプレッサ２４ａは、タービン２４ｂに入力される排気ガスの排気エネルギーによって回転駆動される。
【００２５】
コンプレッサ２４ａの下流には、コンプレッサ２４ａで圧縮された新気を冷却するためのインタークーラ２６が設けられている。インタークーラ２６の下流には、スロットルバルブ２８が設けられている。スロットルバルブ２８下流の吸気通路１８には、サージタンク３０が設けられている。サージタンク３０の近傍には、吸気管圧を検出するための吸気管圧センサ３１が設けられている。サージタンク３０下流の吸気通路１８は、分岐して各気筒に接続されている。
【００２６】
また、排気通路２０には、過給機２４のタービン２４ｂが設けられている。タービン２４ｂの下流には、触媒３２が設けられている。触媒３２として、例えば三元触媒が用いられる。
【００２７】
本実施形態のシステムは、ＥＣＵ（Electronic Control Unit）５０を更に備えている。ＥＣＵ５０の入力部には、上述した筒内圧センサ１４、エアフローメータ２２、吸気管圧センサ３１の他、クランク角ＣＡを検出するためのクランク角センサ３４等の各種センサが接続されている。また、ＥＣＵ５０の出力部には、上述したインジェクタ１２、点火プラグ１６、スロットルバルブ２８等の各種アクチュエータが接続されている。
【００２８】
ＥＣＵ５０は、各種センサの出力に基づき、所定のプログラムに従って各種アクチュエータを作動させることにより、エンジン１０の運転状態を制御する。なお、ＥＣＵ５０は、クランク角ＣＡから、エンジン回転数ＮＥや筒内容積Ｖを計算することができる。
【００２９】
［実施の形態１における特徴的制御］
次に、上述のシステムにおける課題を説明し、その課題を解決する本実施形態の特徴的制御について説明する。上述のシステムにおいて、プレイグニッション等の異常燃焼が発生し、筒内圧が設定値以上の高圧になると、その後、筒内圧センサ１４の出力値にずれが生じる（図２２）。この出力値のずれは、数千〜数万サイクルが経過するまで継続する（図２３）。この期間は、現実の筒内圧に応じた正しい出力値が得られない。そのため、この期間は、筒内圧センサ１４の出力値に基づいた各種制御（例えば、点火時期制御、空燃比フィードバック制御）を正しく実施することができないという課題がある。
【００３０】
次に、筒内圧センサ１４に生じる出力値のずれの２つの要素について説明する。図２４は、出力値のずれが生じる第１の要素について説明するための図である。第１の要素は、異常燃焼の発生前後におけるオフセット５２である。また、図２５は、出力値のずれが生じる第２の要素について説明するための図である。破線５４は、異常燃焼が発生するよりも前のサイクルにおける筒内圧センサ１４の出力特性（筒内圧に対して筒内圧センサ１４が出力する出力値を表した関係）である。一方、実線５６は、異常燃焼が発生した後のサイクルにおける出力特性である。第２の要素は、破線５４と実線５６とで示される、異常燃焼の発生前後における出力特性の傾きの差異５８である。
【００３１】
異常燃焼が発生した後のサイクルにおいても、上述したオフセット５２及び傾きの差異５８による出力値のずれを適切に補正して、異常燃焼発生前における筒内圧センサ１４の出力値に校正できることが望まれる。
【００３２】
そこで、本実施形態のシステムにおいては、オフセット５２による出力値のずれについては、吸気行程の下死点において吸気管圧センサ３１により検出される吸気管圧を、下死点における筒内圧と考え、この吸気管圧と筒内圧センサ１４により検出される筒内圧との差を補正することとした。一方、傾きの差異５８による出力値のずれについては、次に述べる特徴的制御によって補正することとした。
【００３３】
本実施形態における特徴的制御の概要について図３〜図４を用いて説明する。図３は、傾きの差異５８による出力値のずれを補正する制御について説明するための図である。破線６０は、異常燃焼が発生するよりも前のサイクルにおける筒内圧と、筒内圧センサ１４の出力値との関係を示す出力特性である。以下、異常燃焼が発生するよりも前のサイクルのことを、単に「異常燃焼発生前サイクル」という。また、破線６０を「異常燃焼発生前の出力特性６０」という。異常燃焼発生前の出力特性６０は、例えば、新品時におけるセンサの正常な出力特性である。ＥＣＵ５０には、異常燃焼発生前の出力特性６０が予め記憶されている。
【００３４】
また、図３の実線６２は、異常燃焼が発生した後のサイクルにおける推定筒内圧と、筒内圧センサ１４の出力値との関係を示す出力特性である。以下、異常燃焼が発生した後のサイクルのことを、単に「異常燃焼発生後サイクル」という。また、実線６２を「異常燃焼発生後の出力特性６２」という。この異常燃焼発生後の出力特性６２の算出手法については後述する。
【００３５】
異常燃焼発生前の出力特性６０と異常燃焼発生後の出力特性６２とから、異常燃焼の発生前後における筒内圧センサ１４の出力差を算出する。当該出力差を用いて異常燃焼発生後サイクルにおける筒内圧センサ１４の出力値を校正することができる。
【００３６】
（異常燃焼発生後の出力特性６２の算出手法）
この異常燃焼発生後の出力特性６２を算出手法について説明する。異常燃焼発生後の出力特性６２を算出するためには、まず、異常燃焼発生後サイクルにおける推定筒内圧を算出する。次に、この推定筒内圧と筒内圧センサ１４の実出力値とを関連付けたデータを図３に示す関係マップに記憶する。関係マップ記憶した１又は複数のデータから、異常燃焼発生後の出力特性６２を算出ことができる。筒内圧センサ１４の実出力値は筒内圧に略比例して増大するため、異常燃焼発生後の出力特性６２は一次関数で表される。なお、異常燃焼発生後の出力特性６２には、オフセット５２に応じた上述の補正が加えられているものとする。
【００３７】
（異常燃焼発生後における推定筒内圧の算出：低圧領域）
本実施形態のシステムにおいて、異常燃焼発生後サイクルにおける推定筒内圧を算出する手法は、点火前後によって異なる。そこでまず、点火前の低圧領域において推定筒内圧を算出する手法について説明する。低圧領域は、図３に示す閾値αよりも低い領域である。閾値αは、例えば、点火前の圧縮上死点近傍における筒内圧である。
【００３８】
点火前の低圧領域においては、圧縮行程で断熱圧縮の式（１）が成立すると考えて、筒内圧を算出することとする。（１）式におけるＰは筒内圧、Ｖは筒内容積、κはポリトロープ指数（例えば、κ＝１．３２）である。
【００３９】
ＰＶκ＝const        ・・・（１）
【００４０】
図４を用いて具体的に説明する。図４は、圧縮行程における筒内圧とクランク角との関係を示す図である。図４のグラフ（Ａ）は、正常燃焼サイクルにおいて（１）式に基づいて算出される筒内圧の推定値と筒内圧の実値との関係を示す図である。また、図４のグラフ（Ｂ）は、正常燃焼サイクルにおいて、（１）式に基づいて算出される筒内圧の推定値と筒内圧の実値との乖離率を示す図である。なお、正常燃焼サイクルとは、筒内の混合気が、点火プラグ１６により点火されて、点火プラグ１６近傍から順次火炎伝搬し、好適に燃焼されたサイクルである。
【００４１】
図４のグラフ（Ａ）における筒内圧の推定値は、吸気行程の下死点における吸気管圧を、下死点における筒内圧Ｐ０と仮定し、下死点における筒内圧Ｐ０と筒内容積Ｖ０とを（１）式に代入して、クランク角ＣＡ毎に算出される。図４のグラフ（Ａ）に示す通り、正常燃焼サイクルにおいて、吸気行程の下死点から点火時期までの筒内圧の推定値と実値とは略等しい。詳細には、図４のグラフ（Ｂ）に示す通り、正常燃焼サイクルにおいて、筒内圧の推定値と筒内圧の実値との乖離率は、３％以内であり高精度である。
【００４２】
そのため、本実施形態のシステムでは、点火前の低圧領域において（１）式を用いて、異常燃焼発生後サイクルにおける推定筒内圧を高精度に算出することとする。そして、この推定筒内圧と、当該推定筒内圧を算出したクランク角ＣＡにおける筒内圧センサ１４の出力値とを関連付けたデータを、図３の関係マップに記憶させる。
【００４３】
（異常燃焼発生後における推定筒内圧の算出：高圧領域）
しかしながら、このように記憶されるデータは、使用範囲の小さい低圧領域だけに基づくものである。本実施形態のシステムでは、異常燃焼発生後の出力特性６２を精度高く算出するため、さらに、実使用域である高圧領域のデータも取得することとする。
【００４４】
そこで、次に、点火後の高圧領域において推定筒内圧を算出する手法について説明する。本実施形態では、異常燃焼の発生前後において、運転状態が一定（吸入空気量ＧＡが一定である定常時）であるものとする。
【００４５】
高圧領域においては、異常燃焼発生後サイクルにおける推定筒内圧として、異常燃焼発生前サイクルにおける最大筒内圧Ｐｍａｘの平均値を用いる。上述した通り、異常燃焼の発生前後で運転状態は一定であるため、異常燃焼の発生前後において、最大筒内圧Ｐｍａｘは変化しないと考えることができる。
【００４６】
また、異常燃焼発生後サイクルにおける筒内圧センサ１４の最大出力値についても、所定数のサイクルにおける平均値を用いる。そして、推定筒内圧（最大筒内圧Ｐｍａｘの平均値）と、最大出力値の平均値とを関連付けたデータを、図３の関係マップに記憶させる。なお、所定数のサイクルにおける平均値を用いることで、様々な要因（例えば、インタークーラ２６の効率のばらつき）による検出値のばらつきを低減し、精度の向上を図ることができる。
【００４７】
続いて、図３の関係マップに記憶した、低圧領域のデータと、高圧領域のデータとから異常燃焼発生後の出力特性６２を算出する。異常燃焼発生後の出力特性６２は、例えば、一次関数の近似線で表される。
【００４８】
異常燃焼発生前の出力特性６０と、異常燃焼発生後の出力特性６２とから、異常燃焼の発生前後における筒内圧センサ１４の出力差を算出することができる。この出力差を出力補正量６４（図３）として用い、異常燃焼発生後サイクルおける筒内圧センサ１４の出力値Ａ（図３）を、異常燃焼発生前サイクルおける筒内圧センサ１４の出力値Ｂ（図３）に校正することができる。
【００４９】
このように、異常燃焼の発生前後において運転状態が一定である場合に、精度高く異常燃焼発生後の出力特性６２を算出することができる。このため、本実施形態のシステムでは、異常燃焼発生前の出力特性６０と異常燃焼発生後の出力特性６２とから、異常燃焼により生じた筒内圧センサ１４の出力値のずれを補正することができる。
【００５０】
（制御ルーチン）
図５は、上述の動作を実現するために、ＥＣＵ５０が実行する制御ルーチンのフローチャートである。本ルーチンは、異常燃焼の発生前後において運転状態が一定である場合に実行されるものとする（図１のステップＳ７０）。
【００５１】
図５に示すメインルーチンでは、まず、ステップＳ１００において、ＥＣＵ５０は、異常燃焼が発生したか否かを判定する。例えば、次のように判定する。図６は、異常燃焼を判定する一例について説明するための図である。ＥＣＵ５０は、筒内圧センサ１４の出力値がクランク角ＣＡに応じた基準値から３σを超える場合に、異常燃焼が生じたと判定する。異常燃焼が発生していないと判定される場合には、その後、本ルーチンの処理は終了される。
【００５２】
一方、ステップＳ１００において異常燃焼が発生したと判定される場合には、次に、ＥＣＵ５０は、筒内圧センサ１４に異常が生じているか否かを判定する（ステップＳ１１０）。例えば、次のように判定する。図７は、筒内圧センサ１４に異常が生じているか否かを判定する一例について説明するための図である。異常燃焼が発生すると、上述したように、筒内圧センサ１４の出力値にずれ（オフセット５２、傾きの差異５８）が生じる。そこで、ＥＣＵ５０は、正味図示平均有効圧ＮＭＥＰが基準値から＋３σを超える場合には、筒内圧センサ１４に異常が生じていると判定する。筒内圧センサ１４に異常が生じていないと判定される場合には、その後、本ルーチンの処理は終了される。
【００５３】
一方、ステップＳ１１０において、筒内圧センサ１４に異常が生じていると判定される場合には、次に、ＥＣＵ５０は、筒内圧センサ１４の出力値に基づくパラメータ制御を一時的に禁止する（ステップＳ１２０）。具体的には、ＥＣＵ５０は、筒内圧センサ出力値を入力パラメータの１つとして用いる点火時期制御や空燃比フィードバック制御等を禁止する。
【００５４】
ステップＳ１３０において、ＥＣＵ５０は、上述した出力補正量６４（図３）を算出する。具体的には、ステップＳ１３０は、図８に示すサブルーチンを実行して出力補正量６４を算出する。
【００５５】
図８は、ステップＳ１３０においてＥＣＵ５０が実行するサブルーチンのフローチャートである。図８に示すサブルーチンでは、まず、ステップＳ１３１において、ＥＣＵ５０は、異常燃焼発生後サイクルの高圧領域における推定筒内圧を算出する。具体的には、ＥＣＵ５０は、この推定筒内圧として、異常燃焼発生前サイクルにおける最大筒内圧Ｐｍａｘの平均値を算出する。
【００５６】
ＥＣＵ５０は、他の独立したルーチンによって、過去所定サイクル数における最大筒内圧Ｐｍａｘを記憶する処理を実行している。この最大筒内圧Ｐｍａｘは、異常燃焼発生前の出力特性６０から、各サイクルにおける筒内圧センサ１４の最大出力値に応じた筒内圧を算出したものである。ＥＣＵ５０は、異常燃焼発生前サイクルにおける最大筒内圧Ｐｍａｘを取得し、その平均値を算出する。ＥＣＵ５０は、この最大筒内圧の平均値を、異常燃焼発生後サイクルの高圧領域における推定筒内圧とする。
【００５７】
ステップＳ１３２において、ＥＣＵ５０は、異常燃焼発生後サイクルにおける筒内圧センサ１４の最大出力値を取得する。ＥＣＵ５０は、所定数のサイクルにおける最大出力値の平均値を算出する。
【００５８】
ステップＳ１３３において、ＥＣＵ５０は、ステップＳ１３１で算出した推定筒内圧（最大筒内圧Ｐｍａｘの平均値）と、ステップＳ１３２で算出した最大出力値の平均値とを関連付けた高圧領域のデータを記憶する。
【００５９】
ステップＳ１３４において、ＥＣＵ５０は、上述した（１）式に示す断熱圧縮の式を用いて、圧縮工程における所定クランク角ＣＡでの筒内圧を算出する。この算出手法は、上述の図４において説明した通りであるため、ここではその説明を省略する。ＥＣＵ５０は、この筒内圧を、異常燃焼発生後サイクルにおける推定筒内圧として算出する。
【００６０】
ステップＳ１３５において、ＥＣＵ５０は、ステップＳ１３４において推定筒内圧を算出したクランク角ＣＡにおける筒内圧センサ１４の出力値を取得する。ＥＣＵ５０は、所定数のサイクルにおける出力値の平均値を算出する。
【００６１】
ステップＳ１３６において、ＥＣＵ５０は、ステップＳ１３４で算出した推定筒内圧と、ステップＳ１３５で算出した出力値の平均値とを関連付けた低圧領域のデータを記憶する。
【００６２】
ステップＳ１３７において、ＥＣＵ５０は、ステップＳ１３３、ステップＳ１３６で記憶したデータから、異常燃焼発生後の出力特性６２（図３）を算出する。異常燃焼発生後の出力特性６２は、例えば、一次関数の近似線で表される。なお、異常燃焼発生後の出力特性６２を算出するに際して、上述のオフセット５２（図２４）による出力値のずれも補正される。具体的には、吸気行程の下死点において吸気管圧センサ３１により検出される吸気管圧を、下死点における筒内圧と考え、この吸気管圧と筒内圧センサ１４により検出される筒内圧との差を補正する。
【００６３】
ステップＳ１３８において、ＥＣＵ５０は、異常燃焼発生前の出力特性６０と異常燃焼発生後の出力特性６２とから、筒内圧センサ１４の出力差を算出する。この出力差は、出力特性６０、６２の傾きの差異と、異常燃焼発生後サイクルおける筒内圧センサ１４の出力値とに基づいて算出することができる。なお、ＥＣＵ５０には、異常燃焼発生前の出力特性６０（図３）が予め記憶されている。
【００６４】
ステップＳ１３８の処理後、メインルーチン（図５）のステップＳ１３０の処理に戻る。ＥＣＵ５０は、ステップＳ１３８において算出された出力差を、出力補正量６４（図３）として算出する。
【００６５】
続いて、ステップＳ１４０において、ＥＣＵ５０は、異常燃焼発生後サイクルにおける筒内圧センサ１４の出力値を補正する。具体的には、ＥＣＵ５０は、図３に示すように、異常燃焼発生後サイクルにおける筒内圧センサ１４の出力値（例えば、出力値Ａ）を、ステップＳ１３０で算出した出力補正量６４で補正する（図３）。これにより、筒内圧センサ１４の出力値が校正される。
【００６６】
ステップＳ１５０において、ＥＣＵ５０は、ステップＳ１２０において一時的に禁止した各種制御を復帰させる。その後、他のルーチンにおいて、校正後の筒内圧センサ１４の出力値に基づいて、各種制御が実施される。
【００６７】
以上説明したように、図５及び図８に示すルーチンによれば、異常燃焼の発生前後において運転状態が一定である場合に、精度高く異常燃焼発生後の出力特性６２を算出することができる。そして、出力特性６０、６２との出力差に基づいて、異常燃焼発生後サイクルにおける筒内圧センサ１４の出力値を校正することができる。
【００６８】
このため、本実施形態のシステムによれば、異常燃焼が発生した後、所定期間、筒内圧センサ１４の出力値にずれが生じる場合であっても、この出力値のずれを補正することができる。そのため、この期間中も好適に各種制御を継続することができ、燃費、ドライバビリティの悪化を抑制することができる。
【００６９】
ところで、上述した実施の形態１のシステムにおいては、異常燃焼発生後の出力特性６２を、高圧領域のデータと、低圧領域のデータとから算出することとしている。しかし、この算出方法はこれに限定されるものではない。高圧領域のデータ（ステップＳ１３１〜ステップＳ１３３）及び低圧領域のデータ（ステップ１３４〜ステップＳ１３６）のいずれか一方のデータから、異常燃焼発生後の出力特性６２を算出することとしてもよい。なお、この点は以下の実施の形態でも同様である。
【００７０】
また、上述した実施の形態１のシステムにおいては、異常燃焼発生後の出力特性６２を、高圧領域と低圧領域とにおいて１つずつ取得したデータから算出することとしている。しかし、この算出方法はこれに限定されるものではない。各領域において複数のデータを取得して、異常燃焼発生後の出力特性６２を算出することとしてもよい。なお、この点は以下の実施の形態でも同様である。
【００７１】
また、上述した実施の形態１のシステムにおいては、出力補正量６４を、出力特性６０、６２の出力差に基づいて算出することとしている。しかし、この算出方法はこれに限定されるものではない。上述の図２３に示すように、筒内圧センサ１４の出力値のずれは、異常燃焼が発生した後、サイクルの経過に伴って解消される。この点に鑑みて、出力補正量６４の算出に際し、所定サイクル経過後に出力補正量を０に収束させる時定数を含めることとしてもよい。なお、この点は以下の実施の形態でも同様である。
【００７２】
また、上述した実施の形態１のシステムにおいては、筒内圧センサ１４を、各気筒に設けることとしている。しかし、本発明は、筒内圧センサ１４を１つの気筒にのみ設けたシステムにおいても適用可能である。なお、この点は実施の形態２、３でも同様である。
【００７３】
また、上述した実施の形態１のシステムにおいては、過給機２４を備えることとしている。しかし、本発明は、過給機２４を有さないシステムにおいても適用可能である。なおこの点は以下の実施の形態でも同様である。
【００７４】
尚、上述した実施の形態１においては、筒内圧センサ１４が前記第１の発明における「筒内圧センサ」に、異常燃焼発生前の出力特性６０が前記第１の発明における「発生前出力特性」に、異常燃焼発生後の出力特性６２が前記第１の発明における「発生後出力特性」に、ＥＣＵ５０が前記第１の発明における「発生前出力特性記憶手段」と、前記第２の発明における「最大筒内圧記憶手段」とに、それぞれ相当している。
【００７５】
また、ここでは、ＥＣＵ５０が、上記ステップＳ１３１又はＳ１３４の処理を実行することにより前記第１の発明における「推定筒内圧取得手段」が、上記ステップＳ１３７の処理を実行することにより前記第１及び第４の発明における「発生後出力特性算出手段」が、上記ステップＳ１３８及びステップＳ１４０の処理を実行することにより前記第１の発明における「センサ出力値校正手段」が、上記ステップ１３１の処理を実行することにより前記第２の発明における「定常時推定筒内圧取得手段」が、上記ステップＳ１３４の処理を実行することにより前記第４の発明における「低圧時推定筒内圧取得手段」が、それぞれ実現されている。
【００７６】
実施の形態２．
［実施の形態２のシステム構成］
次に、図９〜図１４を参照して本発明の実施の形態２について説明する。本実施形態のシステムは図２に示す構成において、ＥＣＵ５０に後述する図１３及び図１４のルーチンを実施させることで実現することができる。
【００７７】
上述した実施の形態１では、異常燃焼の発生前後において運転状態が一定である場合に、異常燃焼発生前サイクルにおける最大筒内圧Ｐｍａｘの平均値を、異常燃焼発生後サイクルにおける推定筒内圧として用いることしている。しかしながら、過渡時においては必ずしも最適とはいえない。
【００７８】
図９は、過渡時のエンジン回転数ＮＥと負荷率ＫＬとの関係を示す図である。図９に示すように、急加速などの過渡時には、吸入空気量ＧＡ（吸入空気量ＧＡは負荷率ＫＬに相関する。）の変動が大きくなる。そのため、筒内圧の変動が大きく、一定の運転状態において平均値を算出するためのサンプル数が十分に得られない。その結果、高圧領域に関する推定筒内圧の算出精度が低下する可能性がある。
【００７９】
［実施の形態２における特徴的制御］
このような課題を解決する本実施形態の制御概要について、図１０〜図１２を用いて説明する。図１０は、エンジン回転数ＮＥ毎に、負荷率ＫＬと点火時期ＳＡと最大筒内圧Ｐｍａｘとの関係を示した関係マップである。図１０に示すように、最大筒内圧Ｐｍａｘは、所定のエンジン回転数ＮＥにおいて、負荷率ＫＬと点火時期ＳＡとによって定まる。図１０の関係マップを用いることで、サンプル数が十分に得られない状況下であっても精度高く、エンジン回転数ＮＥと、負荷率ＫＬと、点火時期ＳＡとから、最大筒内圧Ｐｍａｘを推定することができる。
【００８０】
そこで、本実施形態のシステムでは、過渡時には、図１０の関係マップからエンジン回転数ＮＥ、負荷率ＫＬ、点火時期ＳＡに対応する最大筒内圧Ｐｍａｘを算出し、異常燃焼発生後サイクルにおける高圧領域の推定筒内圧として用いる。そして、この高圧領域の推定筒内圧を用いて異常燃焼発生後の出力特性６２を算出することとした。
【００８１】
次に、過渡時において、異常燃焼発生後の出力特性６２を算出する具体例について、図１１〜図１２を用いて説明する。図１１は、点火時期ＳＡと負荷率ＫＬとを変化させた場合における最大筒内圧Ｐｍａｘの変化を示す図である。図１２は、図１１に示す最大筒内圧Ｐｍａｘを高圧領域の推定筒内圧として用いて、異常燃焼発生後の出力特性６２を算出し、筒内圧センサ１４の出力値のずれを補正する制御について説明するための図である。
【００８２】
図１１に示すように、点火時期ＳＡと負荷率ＫＬとの変化に伴って、最大筒内圧Ｐｍａｘは変化する。この最大筒内圧Ｐｍａｘは、上述の図１０の関係マップから算出される。図１１の位置ａ、ｂは、それぞれ図１２の位置ａ、ｂに対応している。位置ａの運転状態に対応する最大筒内圧Ｐｍａｘと、位置ａの運転状態における筒内圧センサ１４の出力値とを関連付けたデータを、図１２の関係マップに記憶させる（位置ａ）。さらに、位置ｂの運転状態に対応する最大筒内圧Ｐｍａｘと、位置ｂの運転状態における筒内圧センサ１４の出力値とを関連付けたデータを、図１２の関係マップに記憶させる（位置ｂ）。
【００８３】
このように、高圧領域のデータについて複数のデータを記憶することで、異常燃焼発生後の出力特性６２の算出精度を高めることができる。
【００８４】
また、低圧領域のデータについては、上述した実施の形態１と同様に、（１）式に示す断熱圧縮の式を用いて得ることができる。この点は、実施の形態１と同様であるため、ここでは説明を省略する。
【００８５】
続いて、図１２の関係マップに記憶した、低圧領域のデータと、高圧領域のデータとから異常燃焼発生後の出力特性６２を算出する。異常燃焼発生後の出力特性６２は、例えば、一次関数の近似線で表される。
【００８６】
異常燃焼発生前の出力特性６０と、異常燃焼発生後の出力特性６２とから、異常燃焼の発生前後における筒内圧センサ１４の出力差を算出することができる。この出力差を出力補正量６４（図１２）として用い、異常燃焼発生後サイクルおける筒内圧センサ１４の出力値Ａ（図１２）を、異常燃焼発生前サイクルおける筒内圧センサ１４の出力値Ｂ（図１２）に校正することができる。
【００８７】
このように、過渡時において異常燃焼が発生した場合であっても、精度高く異常燃焼発生後の出力特性６２を算出することができる。このため、本実施形態のシステムでは、異常燃焼発生前の出力特性６０と異常燃焼発生後の出力特性６２とから、異常燃焼により生じた筒内圧センサ１４の出力値のずれを補正することができる。
【００８８】
（制御ルーチン）
図１３は、上述の動作を実現するために、ＥＣＵ５０が実行する制御ルーチンのフローチャートである。このルーチンは、ステップＳ１２０の処理後、ステップＳ２００〜ステップＳ２１０の処理が加えられている点を除き、図５に示すルーチンと同様である。以下、図１３において、図５に示すステップと同一のステップについては、同一の符号を付してその説明を省略または簡略する。
【００８９】
図１３に示すルーチンでは、ステップＳ２００において、ＥＣＵ５０は、過渡時であるか否かを判定する。具体的には、ＥＣＵ５０は、エンジン回転数ＮＥの変化量ΔＮＥが、所定の判定値よりも大きい場合には、過渡時であると判定する。過渡時でないと判定される場合には、上述した実施の形態１におけるステップＳ１３０以降の処理が実施される。
【００９０】
過渡時であると判定される場合には、ステップＳ２１０において、ＥＣＵ５０は、上述した出力補正量６４（図１２）を算出する。具体的には、ステップＳ２１０は、図１４に示すサブルーチンを実行して出力補正量６４を算出する。
【００９１】
図１４は、ステップＳ２１０においてＥＣＵ５０が実行するサブルーチンのフローチャートである。図１４に示すサブルーチンでは、まず、ステップＳ２１１において、ＥＣＵ５０は、エンジン回転数ＮＥ、吸入空気量ＧＡ、点火時期ＳＡを取得する。また、ＥＣＵ５０は、吸入空気量ＧＡに相関する負荷率ＫＬを算出する。
【００９２】
ステップＳ２１２において、ＥＣＵ５０は、異常燃焼発生後サイクルの高圧領域における推定筒内圧を算出する。具体的には、ＥＣＵ５０は、図１０に示す関係マップをエンジン回転数ＮＥ毎に記憶している。ＥＣＵ５０は、図１０の関係マップから運転状態（エンジン回転数ＮＥ、負荷率ＫＬ、点火時期ＳＡ）に応じた最大筒内圧Ｐｍａｘを算出する。ＥＣＵ５０は、この最大筒内圧Ｐｍａｘを、異常燃焼発生後サイクルの高圧領域における推定筒内圧とする。
【００９３】
ステップＳ２１３において、ＥＣＵ５０は、異常燃焼発生後サイクルにおける筒内圧センサ１４の最大出力値を取得する。ＥＣＵ５０は、筒内圧センサ１４によりステップＳ２１２の運転状態における最大出力値を検出する。
【００９４】
ステップＳ２１４において、ＥＣＵ５０は、ステップＳ２１２で算出した推定筒内圧（最大筒内圧Ｐｍａｘ）と、ステップＳ２１３で取得した最大出力値とを関連付けた高圧領域のデータを記憶する。なお、ステップＳ２１１〜ステップＳ２１４の処理を複数回実行することが望ましい。高圧領域のデータについて複数のデータを記憶することで、異常燃焼発生後の出力特性６２の算出精度を高めることができる。
【００９５】
ステップＳ２１４の処理後、ＥＣＵ５０は、上述の図８のステップＳ１３４〜ステップＳ１３８の処理を実行する。ＥＣＵ５０は、ステップＳ１３４〜ステップＳ１３６により低圧領域のデータを記憶し、ステップＳ１３７において、ステップＳ２１４、ステップＳ１３６で記憶したデータから、異常燃焼発生後の出力特性６２（図１２）を算出する。そして、ＥＣＵ５０は、ステップＳ１３８において、ＥＣＵ５０は、異常燃焼発生前の出力特性６０と異常燃焼発生後の出力特性６２とから、筒内圧センサ１４の出力差を算出する。これらの処理の詳細については、上述した図８と同様であるため、ここではその説明を省略する。
【００９６】
ステップＳ１３８の処理後、メインルーチンのステップＳ２１０の処理に戻る。ＥＣＵ５０は、ステップＳ１３８において算出された出力差を、出力補正量６４（図１２）として算出する。
【００９７】
その後、ステップＳ１４０以降の処理が実行される。筒内圧センサ１４の出力値が校正され、校正後の筒内圧センサ１４の出力値に基づいて、各種制御が実施される。
【００９８】
以上説明したように、図１３及び図１４に示すルーチンによれば、過渡時であっても、精度高く異常燃焼発生後の出力特性６２が算出することができる。特に、図１０に示す関係マップを用いることで、過渡時に変動する運転状態毎に、高圧領域のデータを複数算出することが可能となる。そのため、定常時の実施の形態１と同程度の精度で異常燃焼発生後の出力特性６２を算出することができる。そして、出力特性６０、６２との出力差に基づいて、異常燃焼発生後サイクルにおける筒内圧センサ１４の出力値を校正することができる。
【００９９】
このため、本実施形態のシステムによれば、異常燃焼が発生した後、所定期間、筒内圧センサ１４の出力値にずれが生じる場合であっても、この出力値のずれを補正することができる。そのため、この期間中も好適に各種制御を継続することができ、燃費、ドライバビリティの悪化を抑制することができる。
【０１００】
ところで、上述した実施の形態２のシステムにおいては、異常燃焼発生後の出力特性６２を、高圧領域のデータと、低圧領域のデータとから算出することとしている。しかし、この算出方法はこれに限定されるものではない。高圧領域のデータ（ステップＳ２１１〜ステップＳ２１４）及び低圧領域のデータ（ステップ１３４〜ステップＳ１３６）のいずれか一方のデータから、異常燃焼発生後の出力特性６２を算出することとしてもよい。なお、この点は以下の実施の形態でも同様である。
【０１０１】
尚、上述した実施の形態２においては、ＥＣＵ５０が前記第３の発明における「関係記憶手段」に相当している。また、ここでは、ＥＣＵ５０が、上記ステップＳ２１１〜Ｓ１２１２の処理を実行することにより前記第３の発明における「過渡時推定筒内圧取得手段」が、上記ステップＳ１３４の処理を実行することにより前記第４の発明における「低圧時推定筒内圧取得手段」が、それぞれ実現されている。
【０１０２】
実施の形態３．
［実施の形態３のシステム構成］
次に、図１５〜図１７を参照して本発明の実施の形態３について説明する。本実施形態のシステムは図２に示す構成において、ＥＣＵ５０に後述する図１７のルーチンを実施させることで実現することができる。なお、図２に示すエンジン１０には、シリンダブロックに少なくとも１つのノックセンサ３６を備えている。ノックセンサ３６は、ＥＣＵ５０の入力部に接続されている。
【０１０３】
上述した実施の形態１又は実施の形態２では、異常燃焼発生後の出力特性６２を精度高く算出することができる。これにより、異常燃焼が発生した後、所定期間生じる筒内圧センサ１４の出力値のずれを補正することができる。しかしながら、この異常燃焼発生後の出力特性６２は、異常燃焼が発生した後、正常燃焼がなされる範囲での出力特性であり、異常燃焼が生じる範囲の出力特性まで含むものではない。
【０１０４】
ところが、筒内圧センサ１４の出力値にずれが生じている期間に、さらに異常燃焼が発生する場合もある。上述したように、この期間は、異常燃焼が発生したことを、筒内圧センサ１４で精度高く検出することは難しい。そこで、筒内圧センサ１４の出力値以外の方法で、異常燃焼を精度高く検出できることが求められる。
【０１０５】
［実施の形態３における特徴的制御］
このような課題を解決する本実施形態の制御概要について、図１５〜図１６を用いて説明する。図１５は、本実施形態のシステムにおいて用いられるノックコントロールシステム（ＫＣＳ）について説明するための図である。ＫＣＳは、ノッキングが発生したか否かを判定することができる。ノック判定では、ノイズによる誤検出を避けるため、ノッキングが発生するタイミングとしてノッキング判定区間７０（ゲート）が設定されている。ノッキング判定区間は、例えば点火後〜ＡＴＤＣ数十度である。ノックセンサ３６は、シリンダブロックに伝わるノックによる振動を電気信号に変換し、その振れ幅がノック判定値以上となる場合に、ノッキングが発生したと判定する。
【０１０６】
ところで、ノックセンサ３６によれば、異常燃焼によりシリンダブロックに伝わる振動を検出することも可能である。また、プレイグニッションや筒内オイル流入などによる異常燃焼は、点火プラグ１６による点火前に発生する。そこで、本実施形態のシステムでは、異常燃焼が発生するクランク角を含む異常燃焼判定区間７２を、ノッキング判定区間７０とは別個に設定することとした。異常燃焼判定区間７２を設けることで、筒内圧センサ１４の出力値にずれが生じている期間においても、異常燃焼を検出することが可能となる。
【０１０７】
次に、異常燃焼判定区間７２のゲート開口位置の設定について説明する。図１６は、熱発生位置と最大筒内圧Ｐｍａｘとの関係を示す図である。ゲート開口位置として、前回異常燃焼が発生した熱発生位置ａを設定することが考えられる。これによればゲート開口位置の設定を単純化することができる。
【０１０８】
一方で、次回の異常燃焼は、前回の異常燃焼よりも更に進角した位置で生じることも考えられる。この点を鑑みて、ゲート開口位置として、エンジン１０の設計上許容される最大筒内圧Ｐｍａｘに対応する熱発生位置ｂを設定することも好適である。これによれば、異常燃焼判定区間７２を広く確保することができる。
【０１０９】
（制御ルーチン）
図１７は、上述の動作を実現するために、ＥＣＵ５０が実行する制御ルーチンのフローチャートである。このルーチンは、ステップＳ１１０の処理後、ステップＳ３００〜ステップＳ２１０の処理が加えられている点を除き、図５に示すルーチンと同様である。以下、図１７において、図５に示すステップと同一のステップについては、同一の符号を付してその説明を省略または簡略する。
【０１１０】
図１７に示すルーチンでは、ステップＳ３００において、ＥＣＵ５０は、上述の図５又は図１３の制御ルーチンによって、筒内圧センサ１４の出力値のずれを補正している状態であるか否かを判定する。出力値のずれを補正している状態でない場合には、その後、本ルーチンの処理は終了される。
【０１１１】
一方、出力値のずれを補正している状態である場合には、ステップＳ３１０において、ＥＣＵ５０は、異常燃焼判定区間７２を設定する。異常燃焼判定区間７２のゲート開口位置（クランク角）は、例えば、前回異常燃焼が発生した熱発生位置ａ（図１６）に設定することとする。他の例としては、エンジン１０の設計上許容される最大筒内圧Ｐｍａｘに対応する熱発生位置ｂ（図１６）に設定することとする。なお、異常燃焼判定区間７２のゲート閉口位置（クランク角）は、例えばＴＤＣに設定することとする。
【０１１２】
ステップＳ３２０において、ＥＣＵ５０は、異常燃焼判定区間７２におけるゲート開口を実施する。なお、この判定区間において、ノックセンサ３６によって検出される検出値が、異常燃焼判定値以上となる場合には、異常燃焼が発生したと判定される。
【０１１３】
ステップＳ３３０において、ＥＣＵ５０は、筒内圧センサ１４の出力値のずれを補正する制御（図５、図１３）が終了しているか否かを判定する。未だ制御が終了していないと判定される場合には、ステップ３１０に戻り、異常燃焼判定区間を用いた異常燃焼の判定を継続する。一方、制御が終了していると判定される場合には、筒内圧センサ１４の出力値のずれは収束しているため、その後、本ルーチンの処理は終了される。
【０１１４】
以上説明したように、図１７に示すルーチンによれば、ＫＣＳの判定区間として、異常燃焼判定区間を、通常のノッキング判定区間とは別個に加えることができる。異常燃焼発生後の所定期間は、筒内圧センサ１４の出力値にずれが生じ、筒内圧センサ１４によっては異常燃焼の検出が困難であるところ、異常燃焼判定区間７２を設けることで、この期間でも、ノックセンサ３６により異常燃焼を検出することができる。
【０１１５】
ところで、上述した実施の形態３のシステムにおいては、異常燃焼判定区間７２を、ステップＳ３００の判定条件が成立する場合に設定することとしている。しかし、異常燃焼判定区間７２の設定条件はこれに限定されるものではない。図５（実施の形態１）又は図１３（実施の形態２）の制御ルーチンによって筒内圧センサ１４の出力値が校正中であるか否かに関わらず、異常燃焼が発生した場合には、異常燃焼判定区間７２を設定することとしてもよい。
【０１１６】
また、上述した実施の形態３のシステムにおいては、異常燃焼判定区間７２のゲート閉口位置を、ＴＤＣとしている。しかし、このゲート閉口位置はこれに限定されるものではない。ゲート閉口位置は、ノッキング判定区間のゲート開口位置よりも前位置であればよい。
【０１１７】
尚、上述した実施の形態３においては、ＥＣＵ５０及びノックセンサ３６が前記第５の発明における「ノックコントロールシステム」に相当している。また、ここでは、ＥＣＵ５０が、上記ステップＳ３１０の処理を実行することにより前記第５の発明における「異常燃焼判定区間追加手段」が実現されている。
【０１１８】
実施の形態４．
［実施の形態４のシステム構成］
次に、図１８〜図２１を参照して本発明の実施の形態４について説明する。本実施形態のシステムは図２に示す構成において、ＥＣＵ５０に後述する図２１のルーチンを実施させることで実現することができる。
【０１１９】
上述した実施の形態１又は実施の形態２では、異常燃焼発生後の出力特性６２を精度高く算出することができる。異常燃焼発生前の出力特性６０と、異常燃焼発生後の出力特性６２とに基づいて、筒内圧センサ１４の出力値のずれを補正するものである。ところで、各種センサ、アクチュエータのばらつき等の原因により、適切な異常燃焼発生後の出力特性６２が得られない可能性もありうる。このような場合には、他の手法により、筒内圧センサ１４の出力値を校正することが望ましい。
【０１２０】
［実施の形態４における特徴的制御］
このような課題を解決する本実施形態の制御概要について、図１８〜図２０を用いて説明する。本実施形態では、異常燃焼が発生した気筒の筒内圧を、異常燃焼が発生していない気筒の筒内圧から推定することとする。具体的には、まず、異常燃焼発生前サイクルにおける全気筒の筒内圧の総和を記憶しておく。そして、ある気筒において異常燃焼が発生した場合には、上記総和から、異常燃焼が発生していない残りの気筒の筒内圧を引くことで、異常燃焼が発生した気筒の推定筒内圧を算出することができる。
【０１２１】
ところで、上述した通り、筒内圧センサ１４の出力値には、様々な要因（例えば、インタークーラ２６の効率のばらつき）によるばらつきがある。図１８は、筒内圧の実値と筒内圧の推定値との関係について説明するための図である。図１８に示すように、ばらつきは存在するが、重心では一致する。また、図１９は、異なる検出数（サイクル数）における、筒内圧の実値の平均値と推定値との誤差を示す図である。図１９に示すように、検出数が少ないと、実値と推定値との誤差は大きくなる。この誤差を軽減するためには、より多くの検出数を得ることが望まれる。しかし、過渡時においては、同一運転状態において多くの検出値を得ることは難しいため、別途、この誤差を補正する必要がある。
【０１２２】
そこで、本実施形態のシステムでは、検出数に応じて筒内圧の推定値を補正することとする。図２０は、検出数に応じた筒内圧の実値と推定値との乖離率を示す図である。図２０に示すように、検出数が少ないほど実値と推定値との乖離率が高いため、乖離率が大きいほど大きな補正率で筒内圧の推定値を補正することとした。
【０１２３】
（制御ルーチン）
図２１は、上述の動作を実現するために、ＥＣＵ５０が実行する制御ルーチンのフローチャートである。本ルーチンは、上述の図５又は図１３の制御ルーチンの実施後に実行される（図１）。図２１に示すルーチンでは、まず、ステップＳ４００において、ＥＣＵ５０は、図５又は図１３の制御ルーチンによって、適正範囲の異常燃焼発生後の出力特性６２が得られているか否かを判定する。例えば，異常燃焼発生後の出力特性６２の傾きが設計値から乖離する場合には、ステップＳ４００の判定条件が成立しないと判定される。ステップＳ４００の判定条件が成立する場合には、その後、本ルーチンは終了される。
【０１２４】
一方、ステップＳ４００の判定条件が成立しない場合には、ステップＳ４１０において、ＥＣＵ５０は、異常燃焼発生前サイクルにおける各気筒の平均筒内圧を算出する。具体的には、ＥＣＵ５０は、他の独立したルーチンによって、運転状態毎に各気筒の筒内圧を記憶する処理を実行している。ＥＣＵ５０は、異常燃焼発生前サイクルにおいて記憶したデータから、運転状態に応じた各気筒の平均筒内圧を算出する。
【０１２５】
ステップＳ４２０において、ＥＣＵ５０は、異常燃焼が発生した気筒の推定筒内圧を算出する。具体的には、まず、ＥＣＵ５０は、未だ異常燃焼が発生していない各気筒について、現運転状態（スロットル開度の変化が許容範囲内）での筒内圧を検出し、その検出数に応じた平均値を算出する。また、ＥＣＵ５０は、ステップＳ４００において算出した各気筒の平均筒内圧の総和を算出する。そして、ＥＣＵ５０は、この総和から、未だ異常燃焼が発生していない各気筒の筒内圧を引くことにより、異常燃焼が発生した気筒の推定筒内圧を算出する。
【０１２６】
ステップＳ４３０において、ＥＣＵ５０は、ステップＳ４１０での検出数に応じた補正率を算出する。ＥＣＵ５０には、図２０に示す検出数と補正率との関係を記憶した補正マップが記憶されており、補正マップから検出数に応じた補正率が算出される。
【０１２７】
ステップＳ４４０において、ＥＣＵ５０は、異常燃焼が発生した気筒の推定筒内圧を補正率に基づいて補正する。
【０１２８】
以上説明したように、図２１に示すルーチンによれば、定常時、過渡時を問わずに、未だ異常燃焼が発生していない各気筒の筒内圧から、異常燃焼が発生した気筒の推定筒内圧を算出することができる。そのため、上述した実施の形態１、２において適切な異常燃焼発生後の出力特性６２が得られない場合に代替することが可能となる。
【図１】
2011155054.tif 000003
【図２】
2011155054.tif 000004
【図３】
2011155054.tif 000005
【図４】
2011155054.tif 000006
【図５】
2011155054.tif 000007
【図６】
2011155054.tif 000008
【図７】
2011155054.tif 000009
【図８】
2011155054.tif 000010
【図９】
2011155054.tif 000011
【図１０】
2011155054.tif 000012
【図１１】
2011155054.tif 000013
【図１２】
2011155054.tif 000014
【図１３】
2011155054.tif 000015
【図１４】
2011155054.tif 000016
【図１５】
2011155054.tif 000017
【図１６】
2011155054.tif 000018
【図１７】
2011155054.tif 000019
【図１８】
2011155054.tif 000020
【図１９】
2011155054.tif 000021
【図２０】
2011155054.tif 000022
【図２１】
2011155054.tif 000023
【図２２】
2011155054.tif 000024
【図２３】
2011155054.tif 000025
【図２４】
2011155054.tif 000026
【図２５】
2011155054.tif 000027
【国際調査報告】
2011155054.tif 000028
2011155054.tif 000029