(57)【要約】【課題】  ノッキングが発生したか否かを精度よく判定する。【解決手段】  エンジンＥＣＵは、ノイズの発生時期を推定するステップ（Ｓ１０７）と、推定されたノイズの発生時期に基づいて、正規化された振動波形からノイズ波形モデルを減算するステップ（Ｓ１０８）と、減算された波形に積算値がゼロより小さくなる角度がなければ（Ｓ１１０にてＮＯ）、減算された振動波形とノック波形モデルとを比較した結果に基づいて、ノック強度Ｎを算出するステップ（Ｓ１１６）と、ノック強度Ｎが予め定められた判定値よりも大きい場合（Ｓ１１８にてＹＥＳ）、ノッキングが発生したと判定するステップ（Ｓ１２０）と、ノック強度Ｎが予め定められた判定値よりも大きくない場合（Ｓ１１８にてＮＯ）、ノッキングが発生していないと判定するステップ（Ｓ１２４）とを含む、プログラムを実行する。【選択図】        図７
2006307709.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関のノッキング判定装置であって、
前記内燃機関のクランク角を検出するためのクランク角検出手段と、
予め定められたクランク角の間における前記内燃機関の振動の波形を検出するための波形検出手段と、
前記予め定められたクランク角の間における前記内燃機関のノッキングに対応する振動の波形を予め記憶するための記憶手段と、
前記内燃機関の作動に起因して発生する、前記ノッキング以外のノイズの振動に対応するノイズ波形を予め記憶するためのノイズ波形記憶手段と、
前記検出された波形と前記ノイズ波形とを比較した結果に基づいて、前記ノイズの発生時期を推定するための推定手段と、
前記推定された発生時期に基づいて、前記検出された波形から前記ノイズ波形に対応する部分を除去するための除去手段と、
前記ノイズ波形に対応する部分が除去された波形と前記記憶手段に記憶された波形とを比較した結果に基づいて、前記ノッキングが発生したか否かを判定するための判定手段とを含む、内燃機関のノッキング判定装置。
【請求項２】
内燃機関のノッキング判定装置であって、
前記内燃機関のクランク角を検出するためのクランク角検出手段と、
予め定められたクランク角の間における前記内燃機関の振動の波形を検出するための波形検出手段と、
前記予め定められたクランク角の間における前記内燃機関のノッキングに対応する振動の波形を予め記憶するための記憶手段と、
前記内燃機関の予め定められた運転条件のもとで、前記内燃機関の作動に起因して発生する、前記ノッキング以外のノイズの振動に対応するノイズ波形を検出するための手段と、
前記検出された波形と前記ノイズ波形とを比較した結果に基づいて、前記ノイズの発生時期を推定するための推定手段と、
前記推定された発生時期に基づいて、前記検出された波形から前記ノイズ波形に対応する部分を除去するための除去手段と、
前記ノイズ波形に対応する部分が除去された波形と前記記憶手段に記憶された波形とを比較した結果に基づいて、前記ノッキングが発生したか否かを判定するための判定手段とを含む、内燃機関のノッキング判定装置。
【請求項３】
前記除去手段は、前記推定された発生時期の前後のクランク角に対応する振動強度に基づいて、前記検出された波形から前記ノイズ波形に対応する部分を除去するための除去手段を含む、請求項１または２に記載の内燃機関のノッキング判定装置。
【請求項４】
前記ノッキング以外のノイズの振動は、前記内燃機関に設けられる部品の作動に起因して発生する振動であって、
前記ノッキング判定装置は、前記部品の作動状態に基づいて、前記ノイズの発生が予測される時期を検知するための手段をさらに含み、
前記推定手段は、前記予測される時期に対応するクランク角を中心として、予め定められた区間における前記ノイズの発生時期を推定するための手段を含む、請求項１または２に記載の内燃機関のノッキング判定装置。
【請求項５】
前記除去手段は、前記推定されたノイズの発生時期に基づいて、前記検出された波形から前記ノイズ波形を減算するための減算手段を含む、請求項４に記載の内燃機関のノッキング判定装置。
【請求項６】
前記減算手段は、前記検出された波形から前記ノイズ波形を減算すると、減算された波形が予め定められた基準を満足しないと、前記減算を中止するための手段を含む、請求項５に記載の内燃機関のノッキング判定装置。
【請求項７】
前記部品は、前記内燃機関に燃料を噴射する燃料噴射装置である、請求項４〜６のいずれかに記載の内燃機関のノッキング判定装置。
【請求項８】
前記部品は、前記内燃機関の気筒に対して設けられた吸気バルブおよび排気バルブのうちの少なくともいずれか一方である、請求項４〜６のいずれかに記載の内燃機関のノッキング判定装置。
【請求項９】
前記ノッキング判定装置は、前記内燃機関の予め定められた運転条件のもとで、前記ノイズ波形の振動強度を学習して、前記ノイズ波形を補正するための手段をさらに含み、
前記予め定められた運転条件は、前記内燃機関への燃料の供給が停止されているという条件である、請求項８に記載の内燃機関のノッキング判定装置。
【請求項１０】
前記ノッキング判定装置は、前記内燃機関の予め定められた運転条件のもとで、前記ノイズ波形の振動強度を学習して、前記ノイズ波形を補正するための手段をさらに含む、請求項１〜７のいずれかに記載の内燃機関のノッキング判定装置。
【請求項１１】
前記ノイズ波形は、前記ノイズに対応する振動の波形のピーク値を含む予め定められた区間の波形である、請求項１〜１０のいずれかに記載の内燃機関のノッキング判定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ノッキング判定装置に関し、特に、内燃機関の振動の波形に基づいて、ノッキングが発生したか否かを判定する内燃機関のノッキング判定装置に関する。
【背景技術】
【０００２】
従来より、内燃機関のノッキングを検出する技術が知られている。特開２００１−２２７４００号公報（特許文献１）は、ノッキングの発生の有無を正確に判定することができる内燃機関用ノック制御装置を開示する。特許文献１に記載の内燃機関用ノック制御装置は、内燃機関で発生する振動波形信号を検出する信号検出部と、信号検出部で検出された振動波形信号が予め定められた値以上となる期間を発生期間として検出する発生期間検出部と、発生期間検出部で検出された発生期間におけるピーク位置を検出するピーク位置検出部と、発生期間とピーク位置との関係に基づき内燃機関におけるノック発生の有無を判定するノック判定部と、ノック判定部による判定結果に応じて内燃機関の運転状態を制御するノック制御部とを含む。ノック判定部は、発生期間に対するピーク位置が予め定められた範囲内にあるときにはノック（ノッキング）発生有りと判定する。
【０００３】
この公報に記載の内燃機関用ノック制御装置によれば、内燃機関で発生する振動波形信号が信号検出部で検出され、その振動波形信号が予め定められた値以上となる発生期間とそのピーク位置とが発生期間検出部およびピーク位置検出部でそれぞれ検出される。このように、振動波形信号の発生期間のどの位置でピークが発生しているかが分かることで内燃機関におけるノック発生の有無がノック判定部にて判定され、このノック判定結果に応じて内燃機関の運転状態が制御される。ノック判定部では、発生期間に対するピーク位置が予め定められた範囲内にあるとき、即ち、振動波形信号の予め定められた長さの発生期間に対してピーク位置が早めに現われるような波形形状であるときには、ノック発生時に特有のものであると認識される。これにより、内燃機関の運転状態が急変する過渡時や電気負荷のＯＮ／ＯＦＦ時においても、内燃機関におけるノック発生の有無が正確に判定され、内燃機関の運転状態を適切に制御することができる。
【特許文献１】特開２００１−２２７４００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、ノッキングが発生した場合であっても、ノッキングに起因した振動よりも大きい強度の振動がノイズとして検出される場合がある。すなわち、ノックセンサの異常や内燃機関自体の振動に起因した振動の強度が、ノッキングに起因した振動の強度よりも大きい場合がある。このような場合、特開２００１−２２７４００号公報に記載の内燃機関用ノック制御装置では、ノッキングが発生しているにも関わらず、発生期間に対するピーク位置が予め定められた範囲外にあるため、ノッキングが発生していないと誤判定されるおそれがあるという問題点があった。
【０００５】
本発明は、上述の課題を解決するためになされたものであって、その目的は、ノッキングが発生したか否かを精度よく判定することができるノッキング判定装置を提供することである。
【課題を解決するための手段】
【０００６】
第１の発明に係るノッキング判定装置は、内燃機関のノッキングを判定する。このノッキング判定装置は、内燃機関のクランク角を検出するためのクランク角検出手段と、予め定められたクランク角の間における内燃機関の振動の波形を検出するための波形検出手段と、予め定められたクランク角の間における内燃機関のノッキングに対応する振動の波形を予め記憶するための記憶手段と、内燃機関の作動に起因して発生する、ノッキング以外のノイズの振動に対応するノイズ波形を予め記憶するためのノイズ波形記憶手段と、検出された波形とノイズ波形とを比較した結果に基づいて、ノイズの発生時期を推定するための推定手段と、推定された発生時期に基づいて、検出された波形からノイズ波形に対応する部分を除去するための除去手段と、ノイズ波形に対応する部分が除去された波形と記憶手段に記憶された波形とを比較した結果に基づいて、ノッキングが発生したか否かを判定するための判定手段とを含む。
【０００７】
第１の発明によると、クランク角検出手段が内燃機関のクランク角を検出し、波形検出手段が、予め定められたクランク角の間における内燃機関の振動の波形を検出する。記憶手段が、予め定められたクランク角の間の内燃機関の振動の波形を記憶し、ノイズ波形記憶手段が、予め定められたクランク角の間の内燃機関の作動に起因して発生する、ノッキング以外のノイズの振動に対応するノイズ波形を予め記憶する。推定手段が、検出された波形とノイズ波形とを比較した結果に基づいて、ノイズの発生時期を推定する。除去手段が、推定された発生時期に基づいて、検出された波形からノイズ波形に対応する部分を除去する。記憶された波形とノイズ波形に対応する部分が除去された波形とを比較した結果に基づいて、ノッキングが発生したか否かを判定する。たとえば、実験などにより、ノッキングが発生した場合の振動の波形であるノック波形モデルを予め作成しておく。同様に、実験などにより、内燃機関の作動に起因して発生するノイズ（たとえば、吸排気バルブの着座ノイズや燃料噴射装置の作動音に起因して発生するノイズ）に対応する振動の波形であるノイズ波形を予め作成しておく。検出された波形とノイズ波形とを比較した結果に基づいて、検出された波形からノイズ波形のピークに対応する部分を検出して、ノイズの発生時期を推定する。推定された発生時期に基づいて、波形検出手段により検出された波形からノイズ波形を減算することによりノイズに対応する部分を精度よく除去することができる。したがって、ノック波形モデルと検出された波形からノイズを排除した波形とを比較することにより内燃機関にノッキングが発生したか否かを精度よく判定することができる内燃機関のノッキング判定装置を提供することができる。
【０００８】
第２の発明に係るノッキング判定装置は、内燃機関のノッキングを判定する。このノッキング判定装置は、内燃機関のクランク角を検出するためのクランク角検出手段と、予め定められたクランク角の間における内燃機関の振動の波形を検出するための波形検出手段と、予め定められたクランク角の間における内燃機関のノッキングに対応する振動の波形を予め記憶するための記憶手段と、内燃機関の予め定められた運転条件のもとで、内燃機関の作動に起因して発生する、ノッキング以外のノイズの振動に対応するノイズ波形を検出するための手段と、検出された波形とノイズ波形とを比較した結果に基づいて、ノイズの発生時期を推定するための推定手段と、推定された発生時期に基づいて、検出された波形からノイズ波形に対応する部分を除去するための除去手段と、ノイズ波形に対応する部分が除去された波形と記憶手段に記憶された波形とを比較した結果に基づいて、ノッキングが発生したか否かを判定するための判定手段とを含む。
【０００９】
第２の発明によると、クランク角検出手段が内燃機関のクランク角を検出し、波形検出手段が、予め定められたクランク角の間における内燃機関の振動の波形を検出する。記憶手段が、予め定められたクランク角の間の内燃機関の振動の波形を記憶する。内燃機関の予め定められた運転条件のもとで、内燃機関の作動に起因して発生する、ノッキング以外のノイズの振動に対応するノイズ波形が検出されると、推定手段が、検出された波形とノイズ波形とを比較した結果に基づいて、ノイズの発生時期を推定する。除去手段が、推定された発生時期に基づいて、検出された波形からノイズ波形に対応する部分を除去する。記憶された波形とノイズ波形に対応する部分が除去された波形とを比較した結果に基づいて、ノッキングが発生したか否かを判定する。たとえば、実験などにより、ノッキングが発生した場合の振動の波形であるノック波形モデルを予め作成しておく。そして、予め定められた運転条件（たとえば、内燃機関への燃料の供給が停止されているという条件）のもとで、内燃機関の作動に起因して発生するノイズ（たとえば、吸排気バルブの着座ノイズに起因して発生するノイズ）に対応する振動の波形であるノイズ波形を検出する。検出された波形とノイズ波形とを比較した結果に基づいて、検出された波形からノイズ波形のピークに対応する部分を検出して、ノイズの発生時期を推定する。推定された発生時期に基づいて、波形検出手段により検出された波形からノイズ波形を減算することによりノイズに対応する部分を精度よく除去することができる。したがって、ノック波形モデルと検出された波形からノイズを排除した波形とを比較することにより内燃機関にノッキングが発生したか否かを精度よく判定することができる内燃機関のノッキング判定装置を提供することができる。
【００１０】
第３の発明に係るノッキング判定装置においては、第１または２の発明の構成に加えて、除去手段は、推定された発生時期の前後のクランク角に対応する振動強度に基づいて、検出された波形からノイズ波形に対応する部分を除去するための除去手段を含む。
【００１１】
第３の発明によると、除去手段は、ノイズの発生時期の前後のクランク角に対応する振動強度に基づいて、検出された波形からノイズ波形に対応する部分を除去する。たとえば、ノイズの発生時期の前の角度に対応する振動強度から発生時期の後の角度に対応する振動強度へと一定に変化するように補正することにより、検出された波形からノイズの発生時期のピーク値に対応する部分を除去することができる。
【００１２】
第４の発明に係るノッキング判定装置においては、第１または２の発明の構成に加えて、ノッキング以外のノイズの振動は、内燃機関に設けられる部品の作動に起因して発生する振動である。ノッキング判定装置は、部品の作動状態に基づいて、ノイズの発生が予測される時期を検知するための手段をさらに含む。推定手段は、予測される時期に対応するクランク角を中心として、予め定められた区間におけるノイズの発生時期を推定するための手段を含む。
【００１３】
第４の発明によると、ノッキング以外のノイズの振動は、内燃機関に設けられる部品（たとえば、吸気バルブ、排気バルブおよび燃料噴射装置）の作動に起因して発生する振動である。ノッキング判定装置は、部品の作動状態に基づいて、ノイズの発生が予測される時期を検知する。推定手段は、予測される時期に対応するクランク角を中心として、予め定められた区間におけるノイズの発生時期を推定する。部品の作動状態に基づいて、ノイズの発生が予測される時期を検知して、ノイズが発生する時期のおおよその範囲を推定することにより、ノッキングに対応する振動をノイズであると誤判定することを抑制することができる。
【００１４】
第５の発明に係るノッキング判定装置は、第４の発明の構成に加えて、除去手段は、推定されたノイズの発生時期に基づいて、検出された波形からノイズ波形を減算するための減算手段を含む。
【００１５】
第５の発明によると、除去手段は、推定されたノイズの発生時期に基づいて、検出された波形からノイズ波形を減算する。ノイズ波形を、推定されたノイズの発生時期に対応させて、検出された波形から減算することにより、検出された波形からノイズに対応する部分を精度よく除去することができる。
【００１６】
第６の発明に係るノッキング判定装置においては、第５の発明の構成に加えて、減算手段は、検出された波形からノイズ波形を減算すると、減算された波形が予め定められた基準を満足しないと、減算を中止するための手段を含む。
【００１７】
第６の発明によると、減算手段は、検出された波形からノイズ波形を減算すると、減算された波形が予め定められた基準を満足しない場合（たとえば、減算された波形の振動強度が振動波形として取り得ない値になる場合）、減算を中止する。そのため、減算された波形が振動波形として取り得ない値となることによる、ノッキング判定の精度の悪化を抑制することができる。
【００１８】
第７の発明に係るノッキング判定装置においては、第４〜６のいずれかの発明の構成に加えて、部品は、内燃機関に燃料を噴射する燃料噴射装置である。
【００１９】
第７の発明によると、部品は、内燃機関に燃料を噴射する燃料噴射装置である。たとえば、燃料噴射装置の作動音に起因して発生するノイズに対応するノイズ波形を予め作成しておく。検出された波形とノイズ波形とを比較した結果に基づいて、燃料噴射装置の作動音によるノイズの発生時期を推定する。推定されたノイズの発生時期に基づいて、検出された波形からノイズ波形を減算することにより、検出された波形から燃料噴射装置の作動音に起因して発生するノイズに対応する部分を精度よく除去することができる。そのため、内燃機関にノッキングが発生したか否かを精度よく判定することができる。
【００２０】
第８の発明に係るノッキング判定装置においては、第４〜６のいずれかの発明の構成に加えて、部品は、内燃機関の気筒に対して設けられた吸気バルブおよび排気バルブのうちの少なくともいずれか一方である。
【００２１】
第８の発明によると、部品は、内燃機関の気筒に対して設けられた吸気バルブおよび排気バルブのうちの少なくともいずれか一方である。たとえば、内燃機関の作動に起因して発生する吸気バルブあるいは排気バルブの着座ノイズに対応するノイズ波形を予め作成しておく。検出された波形とノイズ波形とを比較した結果に基づいて、吸気バルブあるいは排気バルブの着座ノイズの発生時期を推定する。推定されたノイズの発生時期に基づいて、検出された波形からノイズ波形を減算することにより、検出された波形から吸気バルブあるいは排気バルブの着座ノイズに対応する部分を精度よく除去することができる。したがって、検出された波形からノイズを排除した波形に修正することができるため、内燃機関にノッキングが発生したか否かを精度よく判定することができる。
【００２２】
第９の発明に係るノッキング判定装置においては、第８の発明の構成に加えて、内燃機関の予め定められた運転条件のもとで、ノイズ波形の振動強度を学習して、ノイズ波形を補正するための手段をさらに含む。予め定められた運転条件は、内燃機関への燃料の供給が停止されているという条件である。
【００２３】
第９の発明によると、予め定められた運転条件とは、内燃機関への燃料の供給が停止されているという条件である。この運転条件においては、内燃機関にはノッキングを含む燃焼ノイズに対応する振動が発生しない。そのため、この運転条件において吸気バルブあるいは排気バルブの着座ノイズを検出することにより、着座ノイズに対応するノイズ波形を学習することができる。そのため、学習結果に基づいて、ノイズ波形を精度よく補正することができる。したがって、検出された波形からノイズに対応する部分を精度よく除去することができる。
【００２４】
第１０の発明に係るノッキング判定装置は、第１〜７のいずれかの発明の構成に加えて、内燃機関の予め定められた運転条件のもとで、ノイズ波形の振動強度を学習して、ノイズ波形を補正するための手段をさらに含む。
【００２５】
第１０の発明によると、内燃機関の予め定められた運転条件（たとえば、内燃機関への燃料の供給が停止されているという条件）のもとで、ノイズ波形（たとえば、吸気バルブおよび排気バルブの着座ノイズのノイズ波形）を学習することができる。学習結果に基づいて、ノイズ波形を補正することにより、ノイズ波形を精度よく補正することができる。そのため、検出された波形からノイズに対応する部分を精度よく除去することができる。
【００２６】
第１１の発明に係るノッキング判定装置は、第１〜１０のいずれかの発明の構成に加えて、ノイズ波形は、ノイズに対応する振動の波形のピーク値を含む予め定められた区間の波形である。
【００２７】
第１１の発明によると、ノイズに対応する振動は、検出された波形の区間のうちの一部の区間で、そのノイズに対応する振動の波形のピーク値を含むように重畳している。そのため、ノイズ波形は、ノイズに対応する振動波形のピーク値を含む予め定められた区間の波形であれば、検出された波形からノイズの発生時期を推定することができる。
【発明を実施するための最良の形態】
【００２８】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰返さない。
【００２９】
図１を参照して、本発明の実施の形態に係るノッキング判定装置を搭載した車両のエンジン１００について説明する。本実施の形態に係るノッキング判定装置は、たとえばエンジンＥＣＵ（Electronic Control Unit）２００が実行するプログラムにより実現される。
【００３０】
エンジン１００は、エアクリーナ１０２から吸入された空気とインジェクタ１０４から噴射される燃料との混合気を、燃焼室内で点火プラグ１０６により点火して燃焼させる内燃機関である。
【００３１】
混合気が燃焼すると、燃焼圧によりピストン１０８が押し下げられ、クランクシャフト１１０が回転する。燃焼後の混合気（排気ガス）は、三元触媒１１２により浄化された後、車外に排出される。エンジン１００に吸入される空気の量は、スロットルバルブ１１４により調整される。
【００３２】
クランクシャフトが回転すると、チェーンあるいはベルト等で連結された吸気側および排気側のカムシャフト（図示せず）が回転させられる。そして、吸気側および排気側のカムシャフトの回転により、エンジン１００の気筒の上部に設けられた吸気バルブ１１６および排気バルブ１１８の開閉が行なわれる。排気バルブ１１８が開くことにより、気筒内の燃焼後の排気ガスは、外部に排気される。そして、吸気バルブ１２６が開くことにより、気筒内に混合気が流入する。
【００３３】
エンジン１００の吸気側のカムシャフトには、さらにバルブタイミング可変機構１２２が設けられる。なお、排気側のカムシャフトにもバルブタイミング可変機構が設けられてもよい。バルブタイミング可変機構１２２は、吸気バルブ１１６の開閉のタイミングを可変とする機構である。
【００３４】
バルブタイミング可変機構１２２は、オイルコントロールバルブ（図示せず）からオイルを供給されて作動する。具体的には、バルブタイミング可変機構１２２は、図示しない進角室および遅角室を内部に有する。そして、進角室に供給されるオイルの油圧が上昇すると、バルブタイミング可変機構１２２は、カムシャフトを進角方向（吸気バルブ１１６が早く閉じる方向）に回転させる。一方、遅角室に供給されるオイルの油圧が上昇すると、バルブタイミング可変機構１２２は、カムシャフトを遅角方向（吸気バルブ１１６が遅く閉じる方向）に回転させる。オイルコントロールバルブは、エンジン１００に設けられるオイルポンプ（図示せず）から供給されるオイルを、進角室と遅角室とに選択的に供給するスプール弁を有する。オイルコントロールバルブは、エンジンＥＣＵ２００からのデューティ信号に基づいて、スプール弁の位置を制御することにより、進角室および遅角室における油圧を制御する。
【００３５】
エンジン１００は、エンジンＥＣＵ２００により制御される。エンジンＥＣＵ２００には、ノックセンサ３００と、水温センサ３０２と、タイミングロータ３０４に対向して設けられたクランクポジションセンサ３０６と、スロットル開度センサ３０８と、車速センサ３１０と、イグニッションスイッチ３１２とが接続されている。
【００３６】
ノックセンサ３００は、圧電素子により構成されている。ノックセンサ３００は、エンジン１００の振動により電圧を発生する。電圧の大きさは、振動の大きさと対応した大きさとなる。ノックセンサ３００は、電圧を表す信号をエンジンＥＣＵ２００に送信する。水温センサ３０２は、エンジン１００のウォータージャケット内の冷却水の温度を検出し、検出結果を表す信号を、エンジンＥＣＵ２００に送信する。
【００３７】
タイミングロータ３０４は、クランクシャフト１１０に設けられており、クランクシャフト１１０と共に回転する。タイミングロータ３０４の外周には、予め定められた間隔で複数の突起が設けられている。クランクポジションセンサ３０６は、タイミングロータ３０４の突起に対向して設けられている。タイミングロータ３０４が回転すると、タイミングロータ３０４の突起と、クランクポジションセンサ３０６とのエアギャップが変化するため、クランプポジションセンサ３０６のコイル部を通過する磁束が増減し、コイル部に起電力が発生する。クランクポジションセンサ３０６は、起電力を表す信号を、エンジンＥＣＵ２００に送信する。エンジンＥＣＵ２００は、クランクポジションセンサ３０６から送信された信号に基づいて、クランク角を検出する。
【００３８】
スロットル開度センサ３０８は、スロットル開度を検出し、検出結果を表す信号をエンジンＥＣＵ２００に送信する。車速センサ３１０は、車輪（図示せず）の回転数を検出し、検出結果を表す信号をエンジンＥＣＵ２００に送信する。エンジンＥＣＵ２００は、車輪の回転数から、車速を算出する。イグニッションスイッチ３１２は、エンジン１００を始動させる際に、運転者によりオン操作される。
【００３９】
エンジンＥＣＵ２００は、各センサおよびイグニッションスイッチ３１２から送信された信号、メモリ２０２に記憶されたマップおよびプログラムに基づいて演算処理を行ない、エンジン１００が所望の運転状態となるように、機器類を制御する。
【００４０】
本実施の形態において、エンジンＥＣＵ２００は、ノックセンサ３００から送信された信号およびクランク角に基づいて、予め定められたノック検出ゲート（予め定められた第１クランク角から予め定められた第２クランク角までの区間）におけるエンジン１００の振動の波形（以下、振動波形と記載する）を検出し、検出された振動波形に基づいて、エンジン１００にノッキングが発生したか否かを判定する。本実施の形態におけるノック検出ゲートは、燃焼行程において上死点（０度）から９０度までである。なお、ノック検出ゲートはこれに限らない。
【００４１】
ノッキングが発生した場合、エンジン１００には、図２において実線で示す周波数付近の周波数の振動が発生する。すなわち、ノッキングが発生した場合、エンジン１００には、第１の周波数帯Ａ、第２の周波数帯Ｂ、第３の周波数帯Ｃおよび第４の周波数帯Ｄに含まれる周波数の振動が発生する。なお、図２におけるＣＡは、クランク角（Crank Angle）を示す。また、ノッキングに起因する振動の周波数を含む周波数帯は４つに限らない。
【００４２】
これらの周波数帯のうち、第４の周波数帯Ｄには、図２において一点鎖線で示すエンジン１００自体の共振周波数が含まれる。共振周波数の振動は、ノッキングの有無に関わらず発生する。
【００４３】
そのため、本実施の形態においては、共振周波数を含まない第１の周波数帯Ａから第３の周波数帯Ｃの振動の強度（大きさ）に基づいて、振動波形を検出する。なお、振動波形の検出に用いられる周波数帯の数は３つに限らない。検出された振動波形は、後述するノック波形モデルと比較される。
【００４４】
ノッキングが発生したか否かを判定するため、エンジンＥＣＵ２００のメモリ２０２には、図３に示すように、エンジン１００にノッキングが発生した場合の振動波形のモデルであるノック波形モデルが記憶されている。
【００４５】
ノック波形モデルにおいて、振動の強度は０〜１の無次元数として表され、振動の強度はクランク角と一義的には対応していない。すなわち、本実施の形態のノック波形モデルにおいては、振動の強度のピーク値以降、クランク角が大きくなるにつれ振動の強度が低減することが定められているが、振動の強度がピーク値となるクランク角は定められていない。また、ノック波形モデルは、第１の周波数帯Ａから第３の周波数帯Ｃの振動の合成波である。
【００４６】
本実施の形態におけるノック波形モデルは、ノッキングに起因した振動の立ち上がり以降の振動に対応している。なお、ノッキングにより発生した振動の強度のピーク値以降の振動に対応したノック波形モデルを記憶してもよい。
【００４７】
ノック波形モデルは、実験などにより、強制的にノッキングを発生させた場合におけるエンジン１００の振動波形を検出し、この振動波形に基づいて予め作成されて記憶される。なお、ノック波形モデルを作成する方法は、これに限られない。
【００４８】
ところで、エンジン１００の振動には、ノッキングに起因せず、エンジン１００自体の機械的な作動に起因する振動がある。ノッキングに起因した振動波形を検出する際には、ノッキングに起因しない振動の影響を受け、振動波形にノイズが混在する。
【００４９】
たとえば、図４に示すような検出された波形（細線）には、ノッキングに対応する振動波形の他に、ノッキング以外のノイズに対応する振動を含む。そのため、検出された波形のピーク値に対応する角度α（１）と、図３に示したノック波形モデル（太線）のピーク値に対応する角度とを一致させて、両者を比較する場合に、ノッキングを精度よく判定できない可能性がある。
【００５０】
ノッキング以外のノイズとは、エンジン１００に設けられる部品の作動に起因して発生する振動である。部品とは、エンジンの作動時に振動を発生する部品であれば特に限定されるものではないが、たとえば、エンジン１００の気筒に対して設けられる吸気バルブ１１６である。
【００５１】
本発明は、図５に示すように、検出された波形（細線）とノイズ波形モデル（太線）とを比較した結果に基づいて、ノイズの発生時期を推定して、推定された発生時期に基づいて、検出された波形からノイズ波形モデルを減算することにより、検出された波形のノイズに対応する部分を除去する点に特徴を有する。
【００５２】
具体的には、エンジンＥＣＵ２００は、検出された波形とノイズ波形モデルとを比較した結果に基づいて、吸気バルブ１１６の着座ノイズの発生時期に対応する角度を推定する。エンジンＥＣＵ２００は、バルブタイミング可変機構１２２の制御状態に基づいて、吸気バルブ１１６の閉じるタイミング、すなわち、着座時期に対応するクランク角を検知する。しかしながら、バルブタイミング可変機構１２２の制御状態に基づいて検知される着座時期と、実際に発生する着座時期とは、誤差を有する場合がある。そこで、本実施の形態においては、エンジンＥＣＵ２００は、上述した部品の作動状態に基づく吸気バルブ１１６の閉じるタイミングを、ノイズの発生が予測される時期として検知する。エンジンＥＣＵ２００は、ノイズの発生が予測される時期に対応するクランク角を中心として、予め定められた区間におけるノイズの発生時期を推定する。エンジンＥＣＵ２００は、ノイズ波形モデルのピーク値に対応する角度を、推定されたノイズの発生時期に対応する角度に一致させた状態で、検出された波形からノイズ波形モデルを減算する。
【００５３】
ノイズ波形モデルは、吸気バルブ１１６の着座ノイズの振動波形に対応する。ノイズ波形モデルは、たとえば、実験などにより、強制的に吸気バルブ１１６の着座ノイズを発生させた場合におけるエンジン１００の振動波形を検出し、この振動波形に基づいて予め作成されて、メモリ２０２に記憶される。本実施の形態におけるノイズ波形モデルは、吸気バルブ１１６の着座ノイズに起因した振動の立ち上がり以降の振動に対応している。
【００５４】
なお、ノイズ波形モデルは、ピーク値を含む予め定められた区間の波形である。ノイズ波形モデルは、ノッキング波形モデルに対応しており、ノッキング波形モデルと同様に、振動の強度は、０〜１の無次元数として表わされ、振動の強度はクランク角と一義的には対応していない。すなわち、ノイズの振動の強度がピーク値となるクランク角は定められていない。
【００５５】
なお、ノイズ発生時期の推定方法は、本実施の形態において、予測されたノイズ発生時期に対応するクランク角を中心とした予め定められた区間において、ノイズ波形モデルを予め定められたクランク角Ｂ度ごとにピークに対応する角度を移動させて、検出された波形と比較した結果、形状の相関係数が最も高くなる角度をノイズの発生時期と推定する。
【００５６】
また、本実施の形態においては、エンジン１００にバルブタイミング可変機構１２２が搭載される場合について説明したが、バルブタイミング可変機構１２２が搭載されていない場合には、吸気バルブ１１６は、予め定められたタイミングで閉じるように設けられている。また、吸気バルブ１１６は、バルブスプリング（図示せず）により保持されており、バルブスプリングの戻りバラツキ等により閉じるタイミングにズレが発生する。したがって、予め定められたタイミングと上記したズレ等を考慮して、吸気バルブ１１６が実際に閉じるタイミングに対応するクランク角が、着座ノイズの発生が予測される時期に対応する角度とされる。
【００５７】
以上のようにして、ノイズ波形モデルのピーク値に対応する角度を、推定されたノイズの発生時期に一致させて、検出された波形からノイズ波形モデルが減算されると、図６に示すように、検出された波形からノイズに対応する部分を除去された波形となる。エンジンＥＣＵ２００は、ノイズに対応する部分が除去された波形と記憶されたノイズ波形モデルとを比較して、内燃機関にノッキングが発生したか否かを判定する。
【００５８】
図７を参照して、本実施の形態に係るノッキング判定装置において、エンジンＥＣＵ２００が実行するプログラムの制御構造について説明する。
【００５９】
ステップ（以下、ステップをＳと略す）１００にて、エンジンＥＣＵ２００は、ノックセンサ３００から送信された信号に基づいて、エンジン１００の振動の強度を検出する。振動の強度は、ノックセンサ３００の出力電圧値で表される。なお、ノックセンサ３００の出力電圧値と対応した値で振動の強度を表してもよい。強度の検出は、燃焼行程において上死点から９０度（クランク角で９０度）までの間で行なわれる。
【００６０】
Ｓ１０２にて、エンジンＥＣＵ２００は、ノックセンサ３００の出力電圧値（振動の強度を表す値）を、クランク角で５度ごとに（５度分だけ）積算した値（以下、積算値と記載する）を算出する。積算値の算出は、第１の周波数帯Ａから第３の周波数帯Ｃの振動ごとに行なわれる。
【００６１】
Ｓ１０４にて、エンジンＥＣＵ２００は、算出された積算値のうち、第１の周波数帯Ａから第３の周波数帯Ｃの振動の積算値を合成する。これにより、エンジン１００の振動波形が検出される。Ｓ１０６にて、エンジンＥＣＵ２００は、合成された振動波形における積算値のうち、最大の積算値を用いて波形の正規化を行なう。ここで、波形の正規化とは、たとえば、検出された振動波形における積算値の最大値で、各積算値を除算することにより、振動の強度を０〜１の無次元数で表わすことをいう。なお、各積算値を除算する値は、積算値の最大値に限らない。
【００６２】
Ｓ１０７にて、エンジンＥＣＵ２００は、ノイズの発生時期を推定する。図８に示すように、エンジンＥＣＵ２００は、バルブタイミング可変機構１２２の制御状態に基づいて検知される吸気バルブ１１６の閉じるタイミングに対応するクランク角を、着座が予測される時期に対応する角度ｅｖｔとする。エンジンＥＣＵ２００は、角度ｅｖｔを中心として、その前後の区間をノイズの発生予測区間とする。たとえば、発生予測区間は、角度ｅｖｔ±Ａ°ＣＡとする。ここで、「Ａ」は、吸気バルブ１１６の着座タイミングのずれ量の最大値に対応するクランク角であれば、特に限定されるものではなく、たとえば、実験的に算出すればよい。
【００６３】
エンジンＥＣＵ２００は、図９に示すように、ｅｖｔ−Ａからｅｖｔ＋Ａの区間で、ノイズ波形モデル（太線）を、クランク角が進む方向にスライドさせて、積算された波形と比較をする。なお、ｅｖｔ＋Ａが９０°ＣＡよりも大きくなる場合は、積算された波形は、９０度までの積算値を有するため、発生予測区間の終点は多くとも９０度までとする。また、ｅｖｔ−Ａが４５°ＣＡよりも小さくなる場合は、吸気バルブ１１６の着座タイミングが４５°ＣＡより小さいクランク角では発生しないため、発生予測区間の始点は、少なくとも４５度からとする。
【００６４】
エンジンＥＣＵ２００は、図１０に示すように、移動幅を予め定められた角度Ｂ度ごととして、ノイズ波形モデルのピークに対応する角度をｅｖｔ−ＡからＢ度ごとにクランク角が進む方向に移動させて、積算された波形と比較をする。ここで、「Ｂ」は、特に限定される値ではなく、たとえば、「Ｂ」は５度であってもよいし、１度であってもよいものとする。
【００６５】
本実施の形態において、積算された波形とノイズ波形モデルとは、積算された波形とノイズ波形モデルとの形状の相関係数を算出することにより比較する。たとえば、積算された波形のノイズ（太破線）のピークに対応する角度が角度ｅｖｔ−Ａであるとすると、ノイズ波形モデル（太実線）のピークに対応する角度が角度ｅｖｔ−Ａのときに、積算された波形とノイズ波形モデルとの相関係数が最も高くなる。したがって、Ｂ度刻みで相関係数Ｋｎが算出された結果、積算された波形とノイズ波形モデルとの相関係数が最も高くなるときのノイズ波形モデルのピークに対応する角度がノイズ発生時期であると推定することができる。
【００６６】
なお、相関係数の算出方法は、たとえば、ノイズ波形モデルのピークに対応する角度を中心として予め定められた区間を積分して、その区間におけるノイズ波形モデルの面積Ｓｎを算出する。そして、同じ区間において、ノイズ波形モデルと積算された波形との偏差の領域、すなわち、ノイズ波形モデルの波形と積算された波形とにより囲まれる領域の面積Ｓｎ’を算出する。領域の面積の算出方法は、５度ＣＡごとの積算値の偏差の総和を算出するようにしてもよい。ここで「予め定められた区間」とは、ノイズ波形モデルのピーク値に対応するクランク角を含む区間であれば、特に限定されるものではない。
【００６７】
エンジンＥＣＵ２００は、相関係数Ｋｎを、Ｋｎ＝（Ｓｎ−Ｓｎ’）／Ｓｎという方程式より算出する。エンジンＥＣＵ２００は、Ｂ度ごとにノイズ波形モデルを移動させるごとに積算された波形との形状の相関係数Ｋｎを算出する。エンジンＥＣＵ２００は、算出された相関係数Ｋｎのうち最も高くなるときのノイズ波形モデルのピーク値に対応する角度を、ノイズの発生時期に対応する角度β（１）と推定する。
【００６８】
Ｓ１０８にて、エンジンＥＣＵ２００は、正規化された波形をノイズ波形モデルで減算する。たとえば、正規化された波形の各角度に対応する積算値を線で結んで図１１に示すような波形が検出されたとする。エンジンＥＣＵ２００は、図１２に示すように、ノイズ波形モデルのピーク値に対応する角度をＳ１０７にて推定された角度β（１）に一致させる。そして、エンジンＥＣＵ２００は、図１１に示す正規化された波形から図１２に示すノイズ波形モデルを減算する。
【００６９】
なお、ノイズ波形モデルのピークに対応する振動強度は、実験的に求められた振動強度に基づいて、ノック波形モデルに対応するように正規化されているが、たとえば、ノッキングに対応する振動の実測値と吸気バルブ１１６の着座ノイズに対応する振動の実測値との比によりノイズ波形モデルのピークに対応する振動強度を算出するようにしてもよい。エンジンＥＣＵ２００は、ノイズ波形モデルのピーク値に対応する角度をノイズ発生時期に対応する角度ｅｖｔに一致させた後、正規化された波形からノイズ波形モデルを減算すると、図１３に示すように、ノイズに対応する部分が除去された波形が得られる。
【００７０】
図７に戻って、Ｓ１１０にて、エンジンＥＣＵ２００は、正規化された波形をノイズ波形モデルで減算したときに、積算値（振動強度）がゼロより小さくなる角度があるか否かを判定する。これは、たとえば、図１４に示すように、ノイズ発生時期に発生した吸気バルブ１１６の着座ノイズが小さい場合において、正規化された波形からノイズ波形モデルを減算すると、図１５に示すように、正規化された波形の振動強度がゼロレベルを下回る可能性があるためである。積算値がゼロより小さくなる角度があると判定されると（Ｓ１１０にてＹＥＳ）、処理はＳ１１２に移される。もしそうでないと（Ｓ１１０にてＮＯ）、処理はＳ１１４に移される。なお、本実施の形態において、減算された波形に積算値がゼロより小さくなる角度があるか否かを判定したが、ゼロに特に限定されるものではない。たとえば、減算された波形に、積算値として取り得ない、予め定められた値より小さくなる角度がないという基準を満足するか否かを判定するようにしてもよい。
【００７１】
図７に戻って、Ｓ１１２にて、エンジンＥＣＵ２００は、正規化された波形からノイズ波形モデルの減算を中止する。すなわち、エンジンＥＣＵ２００は、減算する前の波形に戻す。エンジンＥＣＵ２００は、減算された波形にノイズ波形モデル分を加算するようにして、減算する前の波形に戻してもよいし、メモリ２０２に予め記憶しておいた減算される前の波形を読み出して、減算する前の波形に戻してもよい。
【００７２】
Ｓ１１４にて、エンジンＥＣＵ２００は、正規化された振動波形とノック波形モデルとの偏差に関する値である相関係数Ｋを算出する。正規化後の減算された振動波形において振動の強度が最大になるタイミングとノック波形モデルにおいて振動の強度が最大になるタイミングとを一致させた状態で、正規化後の振動波形とノック波形モデルとの偏差の絶対値（ズレ量）をクランク角ごと（５度ごと）に算出することにより、相関係数Ｋが算出される。
【００７３】
正規化後の振動波形とノック波形モデルとのクランク角ごとの偏差の絶対値をΔＳ（Ｉ）（Ｉは自然数）とし、ノック波形モデルにおける振動の強度をクランク角で積分した値（ノック波形モデルの面積）をＳとおくと、相関係数Ｋは、Ｋ＝（Ｓ−ΣΔＳ（Ｉ））／Ｓという方程式により算出される。ここで、ΣΔＳ（Ｉ）は、上死点から９０度までのΔＳ（Ｉ）の総和である。なお、相関係数Ｋの算出方法はこれに限らない。
【００７４】
Ｓ１１６にて、エンジンＥＣＵ２００は、ノック強度Ｎを算出する。算出された積算値の最大値をＰとし、エンジン１００にノッキングが発生していない状態におけるエンジン１００の振動の強度を表す値をＢＧＬ（Back Ground Level）とおくと、ノック強度Ｎは、Ｎ＝Ｐ×Ｋ／ＢＧＬという方程式で算出される。ＢＧＬはメモリ２０２に記憶されている。なお、ノック強度Ｎの算出方法はこれに限らない。
【００７５】
Ｓ１１８にて、エンジンＥＣＵ２００は、ノック強度Ｎが予め定められた判定値よりも大きいか否かを判別する。ノック強度Ｎが予め定められた判定値よりも大きい場合（Ｓ１１８にてＹＥＳ）、処理はＳ１２０に移される。そうでない場合（Ｓ１１８にてＮＯ）、処理はＳ１２４に移される。
【００７６】
Ｓ１２０にて、エンジンＥＣＵ２００は、エンジン１００にノッキングが発生したと判定する。Ｓ１２２にて、エンジンＥＣＵ２００は、点火時期を遅角する。Ｓ１２４にて、エンジンＥＣＵ２００は、エンジン１００にノッキングが発生していないと判定する。Ｓ１２６にて、エンジンＥＣＵ２００は、点火時期を進角する。
【００７７】
以上のような構造およびフローチャートに基づく、本実施の形態に係るノッキング判定装置におけるエンジンＥＣＵ２００の動作について説明する。
【００７８】
運転者がイグニッションスイッチ３１２をオン操作し、エンジン１００が始動すると、ノックセンサ３００から送信された信号に基づいて、エンジン１００の振動の強度が検出される（Ｓ１００）。
【００７９】
燃焼行程における上死点から９０度までの間において、５度ごとの積算値が第１の周波数帯Ａから第３の周波数帯Ｃの周波数の振動ごとに算出され（Ｓ１０２）。算出された積算値のうち、第１の周波数帯Ａから第３の周波数帯Ｃまでの振動の積算値が合成される（Ｓ１０４）。これにより、エンジン１００の振動波形が第１の周波数帯Ａから第３の周波数帯Ｃにおける振動の合成波として検出される。
【００８０】
５度ごとの積算値により振動波形を検出することにより、振動の強度が細かく変化する複雑な形状の振動波形が検出されることを抑制することができる。そのため、検出された振動波形とノック波形モデルとの比較を容易にすることができる。
【００８１】
このようにして検出された振動波形における積算値のうち、最大の積算値を用いて、図１６に示すように、波形の正規化が行なわれる（Ｓ１０６）。ここでは、１５度から２０度までの積算値により各積算値が除算されて、振動波形が正規化されたと想定する。正規化により、振動波形における振動の強度が０〜１の無次元数で表される。これにより、振動の強度に関係なく検出された振動波形とノック波形モデルとの比較を行なうことができる。そのため、振動の強度に対応した多数のノック波形モデルを記憶しておく必要がなく、ノック波形モデルの作成を容易にすることができる。
【００８２】
なお、図１６においては、振動波形を矩形的に表しているが、各積算値を線で結び、線を用いて振動の波形を表してもよい。また、各積算値のみを点で表して振動波形を表してもよい。
【００８３】
そして、ノイズ波形モデルのピークに対応する角度を、Ｂ度クランク角が進む方向に移動させるごとに、ノイズ波形モデルと積算された波形との形状の相関係数Ｋｎが算出される。算出された相関係数Ｋｎのうち最も高くなるときのノイズ波形モデルのピーク値に対応する角度を、ノイズの発生時期に対応する角度β（１）であると推定する（Ｓ１０７）。
【００８４】
なお、本実施の形態においては、エンジンＥＣＵ２００において、吸気バルブ１１６の着座ノイズの発生時期に対応する角度が６５度であると推定されたと想定する。エンジンＥＣＵ２００は、ノイズ波形モデルのピーク値に対応する角度を６５度に一致させて、正規化された波形からノイズ波形モデルを減算して（Ｓ１０８）、図１６の斜線の部分が除去される。減算された波形において、積算値がゼロレベルを下回る角度がないと（Ｓ１１０にてＮＯ）、図１７に示すように、減算された振動波形において振動の強度が最大になるタイミングとノック波形モデルにおいて振動の強度が最大になるタイミングとを一致させ、この状態で、正規化後の振動波形とノック波形モデルとのクランク角ごとの偏差の絶対値ΔＳ（Ｉ）が算出される。
【００８５】
このΔＳ（Ｉ）の総和ΣΔＳ（Ｉ）およびノック波形モデルにおいて振動の強度をクランク角で積分した値Ｓに基づいて、Ｋ＝（Ｓ−ΣΔＳ（Ｉ））／Ｓにより相関係数Ｋが算出される（Ｓ１１４）。これにより、検出された振動波形とノック波形モデルとの一致度合を数値化して客観的に判定することができる。
【００８６】
一方、積算値がゼロを下回る角度があると（Ｓ１１０にてＹＥＳ）、減算は中止される（Ｓ１１２）。この場合、減算する前の積算された波形とノック波形モデルとを上述したように比較して相関係数Ｋが算出される（Ｓ１１４）。
【００８７】
このようにして算出された相関係数Ｋと積算値の最大値Ｐとの積をＢＧＬで除算することにより、ノック強度Ｎが算出される（Ｓ１１６）。これにより、検出された振動波形とノック波形モデルとの一致度合に加えて、振動の強度に基づいて、エンジン１００の振動がノッキングに起因した振動であるか否かをより詳細に分析することができる。ここでは、相関係数Ｋと１５度から２０度までの積算値との積をＢＧＬで除算することによりノック強度Ｋが算出されたと想定する。
【００８８】
ノック強度Ｎが予め定められた判定値よりも大きい場合（Ｓ１１８にてＹＥＳ）、ノッキングが発生したと判定され（Ｓ１２０）、点火時期が遅角される（Ｓ１２２）。これにより、ノッキングの発生が抑制される。
【００８９】
一方、ノック強度Ｎが予め定められた判定値よりも大きくない場合（Ｓ１１８にてＮＯ）、ノッキングが発生していないと判定され（Ｓ１２４）、点火時期が進角される（Ｓ１２６）。
【００９０】
以上のようにして、本実施の形態に係る内燃機関のノッキング判定装置によると、実験などにより、ノッキングが発生した場合の振動の波形であるノック波形モデルを予め作成しておく。同様に、実験などにより、吸気バルブの着座ノイズに対応する振動の波形であるノイズ波形モデルを予め作成しておく。検出された波形とノイズ波形とを比較した結果に基づいて、検出された波形からノイズ波形のピークに対応する部分を検出して、ノイズの発生時期を推定する。推定された発生時期に基づいて、積算された波形からノイズ波形を減算することによりノイズに対応する部分を精度よく除去することができる。したがって、ノック波形モデルと検出された波形からノイズを排除した波形とを比較することにより内燃機関にノッキングが発生したか否かを精度よく判定することができる内燃機関のノッキング判定装置を提供することができる。
【００９１】
また、エンジンＥＣＵは、減算された波形がゼロ以下の振動波形として取り得ない値となる場合には、減算を中止するため、減算された波形が振動波形として取り得ない値となることによる、ノッキング判定の精度の悪化を抑制することができる。なお、本実施の形態において、減算された波形の積算値がゼロ以下になる角度がある場合には、減算を中止するとしたが、積算値がゼロ以下になる角度は積算値をゼロとして、減算するようにしてもよい。
【００９２】
あるいは、図１８に示すように、ノイズの発生時期に対応する角度β（１）が推定された場合に、推定された発生時期の前後のクランク角に対応する振動強度に基づいて、積算された波形からノイズ波形に対応する部分を除去するようにしてもよい。たとえば、ノイズの発生時期に対応する角度β（１）の前の角度Ｃ（１）に対応する振動強度から角度β（１）の後の角度Ｃ（２）に対応する振動強度へと一定に変化するように補正するようにしてもよい。これにより、検出された波形からノイズの発生時期のピーク値に対応する部分を除去することができる。
【００９３】
また、ノイズ波形モデルは、エンジンの作動中の予め定められた運転条件のもとで、に学習するようにしてもよい。予め定められた運転条件とは、たとえば、エンジンへの燃料の供給が停止されているという条件である。すなわち、フューエルカット時のエンジンの作動中においては、ノッキングを含む燃焼ノイズが発生しない。そのため、この運転条件において吸気バルブあるいは排気バルブの着座ノイズを検出することにより、ノイズ波形を学習することができる。そのため、学習結果に基づいて、ノイズ波形を精度よく補正することができる。したがって、検出された波形からノイズに対応する部分を精度よく除去することができる。
【００９４】
さらに、以上の説明では、吸気バルブに対応するノイズ波形モデルを予め作成しておき、検出された波形から減算するようにしたが、たとえば、排気バルブの着座ノイズやインジェクタの作動音に起因して発生するノイズのノイズ波形モデルを作成しておき、検出された波形から減算するようにしてもよい。このようにすると、検出された波形から排気バルブの着座ノイズに対応する部分やインジェクタによるノイズに対応する部分を除去することができる。そのため、内燃機関にノッキングが発生したか否かを精度よく判定することができる。
【００９５】
なお、本実施の形態においては、正規化後の波形とノイズ波形モデルとの比較結果に基づいて、ノイズの発生時期を推定したが、たとえば、正規化されていないノイズ波形モデルを予め作成しておき、正規化する前の積算された波形とノイズ波形モデルとを比較した結果に基づいて、ノイズの発生時期を推定するようにしてもよい。
【００９６】
さらに、本実施の形態においては、振動の強度が細かく変化する複雑な形状の振動波形が検出されることを抑制するために、５度ごとの積算値により振動波形を検出したが、特に限定されるものではなく、たとえば、１度ごとの積算値により振動波形を検出するようにしてもよい。このようにすると、ノイズの発生時期の推定の際に、ノイズ波形モデルとの比較の際においても、１度ごとに積算された波形とノイズ波形モデルとの比較を行なうことができるため、精度よくノイズの発生時期を推定することができる。
【００９７】
また、本実施の形態において、ノイズ波形モデルは、予め作成して記憶しておくようにしたが特にこれに限定されるものではない。たとえば、エンジン１００の実働時に、予め定められた運転条件（たとえば、エンジンへの燃料の供給が停止されているという条件）のもとで、検出されるノイズ（たとえば、吸排気バルブの着座ノイズ）をノイズ波形モデルとして設定するようにしてもよい。
【００９８】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【００９９】
【図１】本発明の実施の形態に係るノッキング判定装置により制御されるエンジンを示す概略構成図である。
【図２】エンジンで発生する振動の周波数を示す図である。
【図３】エンジンＥＣＵのメモリに記憶されたノック波形モデルを示す図である。
【図４】ノック波形モデルとノイズを含む振動波形を示す図である。
【図５】ノイズ波形モデルとノイズを含む振動波形を示す図（その１）である。
【図６】ノイズが除去された振動波形を示す図（その１）である。
【図７】エンジンＥＣＵが実行するプログラムの制御構造を示すフローチャートである。
【図８】ノイズを含む振動波形を示す図（その１）である。
【図９】ノイズ波形モデルとノイズを含む振動波形を示す図（その２）である。
【図１０】ノイズ波形モデルとノイズを含む振動波形を示す図（その３）である。
【図１１】ノイズを含む振動波形を示す図（その２）である。
【図１２】ノイズの発生時期に対応させたノイズ波形モデルを示す図である。
【図１３】ノイズが除去された振動波形を示す図（その２）である。
【図１４】ノイズを含む振動波形を示す図（その３）である。
【図１５】ノイズが除去された振動波形を示す図（その３）である。
【図１６】正規化後の振動波形を示す図である。
【図１７】正規化後の振動波形とノック波形とを比較するタイミングを示す図である。
【図１８】補正後の振動波形を示す図である。
【符号の説明】
【０１００】
１００  エンジン、１０４  インジェクタ、１０６  点火プラグ、１１０  クランクシャフト、１１６  吸気バルブ、１１８  排気バルブ、１２０  ポンプ、１２２  バルブタイミング可変機構、２００  エンジンＥＣＵ、３００  ノックセンサ、３０２  水温センサ、３０４  タイミングロータ、３０６  クランクポジションセンサ、３０８  スロットル開度センサ、３１４  筒内圧センサ。
【図１】
2006307709.tif 000003
【図２】
2006307709.tif 000004
【図３】
2006307709.tif 000005
【図４】
2006307709.tif 000006
【図５】
2006307709.tif 000007
【図６】
2006307709.tif 000008
【図７】
2006307709.tif 000009
【図８】
2006307709.tif 000010
【図９】
2006307709.tif 000011
【図１０】
2006307709.tif 000012
【図１１】
2006307709.tif 000013
【図１２】
2006307709.tif 000014
【図１３】
2006307709.tif 000015
【図１４】
2006307709.tif 000016
【図１５】
2006307709.tif 000017
【図１６】
2006307709.tif 000018
【図１７】
2006307709.tif 000019
【図１８】
2006307709.tif 000020