(57)【要約】    【課題】  周波数成分強度を二値化する際に適用する二値化閾値の設定、及びノイズ成分強度の算出をより適切に実行し、ノッキング判定精度を高める。    【解決手段】  周波数成分分析によって得られる検出強度マップデータＳＴＦＴに基づいて、ノイズ成分強度データＳＮＯＩＳＥが気筒毎に算出され、検出強度マップデータＳＴＦＴがノイズ成分強度データＳＮＯＩＳＥにより補正され、さらに二値化閾値ＳＴＪＵＤを用いて二値化される。二値化マップデータＢＳＴＦＴと、ノッキングが発生した状態に対応するマスタマップデータＢＭＳＴとを比較することより、ノッキングが発生したか否かが判定される。二値化閾値ＳＴＪＵＤは、複数の気筒のそれぞれに対応し、かつ検出強度マップにおける格子点のそれぞれに対応して設定された補正係数ＣＪＵＤ，ＣＪＵＤＨを用いて算出される。【選択図】  図３
2017190766.tif 000002
【特許請求の範囲】
【請求項１】
複数の気筒を備える内燃機関に装着されたノックセンサの出力信号に基づいてノッキングを検出する、内燃機関のノッキング検出装置において、
所定クランク角度間隔で前記ノックセンサ出力信号の周波数成分分析を行う周波数成分分析手段と、
前記周波数成分分析により得られる、複数の周波数成分の強度の時系列データを、クランク角度位置及び周波数で定義される２次元マップとして格納するデータ格納手段と、
前記周波数成分強度の時系列データに基づいて、ノイズ成分強度の時系列データを前記複数の気筒のそれぞれに対応して算出するノイズ成分強度算出手段と、
前記周波数成分強度の時系列データを前記ノイズ成分強度の時系列データにより補正するノイズ補正手段と、
前記ノイズ補正手段による補正後の時系列データを、前記機関の運転状態に応じて設定される二値化閾値を用いて二値化する二値化手段と、
前記二値化された時系列データの２次元マップと、ノッキングが発生した状態に対応するマスタパターンデータの２次元マップとを比較することより、ノッキングが発生したか否かを判定するノッキング判定手段とを備え、
前記二値化手段は、
前記二値化閾値の基本値を前記機関の運転状態に応じて算出する基本値算出手段と、
前記複数の気筒のそれぞれに対応し、かつ前記２次元マップにおける格子点のそれぞれに対応して設定された補正係数を用いて前記基本値を補正することにより、前記複数の気筒のそれぞれに対応し、かつ前記２次元マップにおける格子点のそれぞれに対応した前記二値化閾値を算出する二値化閾値算出手段とを含むことを特徴とする内燃機関のノッキング検出装置。
【請求項２】
前記補正係数は、前記複数の気筒のそれぞれに対応したノイズ成分強度の時系列データに基づいて予め設定されており、前記ノイズ成分強度が高いほど前記二値化閾値を増加させるように設定されることを特徴とする請求項１に記載の内燃機関のノッキング検出装置。
【請求項３】
前記二値化閾値算出手段は、前記機関が、特定の気筒においてノイズ成分強度が増加する特定運転状態にあると判定されたときは、前記特定の気筒に対応する前記二値化閾値を増加させるように前記補正係数を修正することを特徴とする請求項１または２に記載の内燃機関のノッキング検出装置。
【請求項４】
前記二値化閾値算出手段は、前記クランク角度位置が、対象気筒の燃焼行程開始時期に比較的近い範囲で前記二値化閾値の増加量が大きくなるように、前記補正係数の修正を行うことを特徴とする請求項３に記載の内燃機関のノッキング検出装置。
【請求項５】
前記ノイズ補正手段は、前記機関の回転数の今回検出値と、前回検出値との比を二乗することよって、過渡補正係数を算出する過渡補正係数算出手段を含み、
前記ノイズ成分強度に前記過渡補正係数を乗算して補正ノイズ成分強度を算出し、前記周波数成分強度から補正ノイズ成分強度を減算することによって前記補正を行うことを特徴とする請求項１から４の何れか１項に記載の内燃機関のノッキング検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関のノッキング検出装置に関し、特にノッキングセンサの出力信号に含まれる周波数成分の強度の時系列データに基づいてノッキングの発生を判定するものに関する。
【背景技術】
【０００２】
特許文献１には、ノッキングセンサの出力信号に含まれる周波数成分強度の時系列データに基づいてノッキングの発生を判定するノッキング検出装置が示されている。この装置によれば、複数の周波数成分強度の時系列データが、クランク角度位置及び周波数で定義される２次元マップとして格納されるとともに、周波数成分強度の時系列データが二値化され、二値化された時系列データの２次元マップと、ノッキングが発生した状態に対応するマスタパターンデータの２次元マップとを比較することより、ノッキングが発生したか否かが判定される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４８２７９３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ノッキングセンサの出力信号には、吸気弁の着座時に発生するノイズなどのノイズ成分が含まれているため、特許文献１に示された装置では、ノイズ成分強度を算出して、周波数成分強度の時系列データをノイズ成分強度によって補正する処理、及び周波数成分強度を二値化する際に適用する二値化閾値を機関運転状態に応じて設定する処理が行われる。
【０００５】
しかしながら、気筒数や気筒配置などで代表される機関の構造やノックセンサの装着位置などに依存して、クランク角度位置及び周波数で定義される２次元マップにおけるノイズ成分強度の分布が変化し、さらに気筒毎にノイズ成分強度が変化することがあり、そのようなノイズ成分強度の変化によってノッキングの判定精度が低下する場合があることが確認されている。
【０００６】
本発明はこの点に着目してなされたものであり、周波数成分強度を二値化する際に適用する二値化閾値の設定、及びノイズ成分強度の算出をより適切に実行し、ノッキング判定精度を高めることができるノッキング検出装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するため請求項１に記載の発明は、複数の気筒を備える内燃機関に装着されたノックセンサ（１１Ｒ，１１Ｌ）の出力信号に基づいてノッキングを検出する、内燃機関のノッキング検出装置において、所定クランク角度間隔で前記ノックセンサ出力信号の周波数成分分析を行う周波数成分分析手段と、前記周波数成分分析により得られる、複数の周波数成分の強度の時系列データ（ＳＴＦＴ(i,j)）を、クランク角度位置（ｉ）及び周波数（ｊ）で定義される２次元マップとして格納するデータ格納手段と、前記周波数成分強度の時系列データ（ＳＴＦＴ(i,j)）に基づいて、ノイズ成分強度の時系列データ（ＳＮＯＩＳＥ(i,j,k)）を前記複数の気筒のそれぞれに対応して算出するノイズ成分強度算出手段と、前記周波数成分強度の時系列データ（ＳＴＦＴ(i,j)）を前記ノイズ成分強度の時系列データ（ＳＮＯＩＳＥ(i,j,k)）により補正するノイズ補正手段と、前記ノイズ補正手段による補正後の時系列データ（ＳＴＦＴＣ(i,j)）を、前記機関の運転状態に応じて設定される二値化閾値（ＳＴＪＵＤ(i,j,k)）を用いて二値化する二値化手段と、前記二値化された時系列データ（ＢＳＴＦＴ(i,j)）の２次元マップと、ノッキングが発生した状態に対応するマスタパターンデータ（ＢＭＳＴ(i,j)）の２次元マップとを比較することより、ノッキングが発生したか否かを判定するノッキング判定手段とを備え、前記二値化手段は、前記二値化閾値の基本値（ＳＴＪＵＤＢ）を前記機関の運転状態に応じて算出する基本値算出手段と、前記複数の気筒のそれぞれに対応し、かつ前記２次元マップにおける格子点のそれぞれに対応して設定された補正係数（ＣＪＵＤ(i,j,k)，ＣＪＵＤＨ(i,j,kH)）を用いて前記基本値（ＳＴＪＵＤＢ）を補正することにより、前記複数の気筒のそれぞれに対応し、かつ前記２次元マップにおける格子点のそれぞれに対応した前記二値化閾値（ＳＴＪＵＤ(i,j,k)）を算出する二値化閾値算出手段とを含むことを特徴とする。
【０００８】
この構成によれば、所定クランク角度間隔でノックセンサ出力信号の周波数成分分析が行われ、その周波数成分分析により得られる、複数の周波数成分の強度の時系列データが、クランク角度位置及び周波数で定義される２次元マップとして格納される。周波数成分強度の時系列データに基づいて、ノイズ成分強度の時系列データが気筒毎に算出され、周波数成分強度の時系列データがノイズ成分強度の時系列データにより補正される。補正後の時系列データが二値化閾値を用いて二値化され、その二値化された時系列データの２次元マップと、ノッキングが発生した状態に対応するマスタパターンデータの２次元マップとを比較することより、ノッキングが発生したか否かが判定される。さらに二値化閾値の基本値が機関の運転状態に応じて算出されるとともに、複数の気筒のそれぞれに対応し、かつ２次元マップにおける格子点のそれぞれに対応して設定された補正係数を用いて基本値を補正することにより、複数の気筒のそれぞれに対応し、かつ２次元マップにおける格子点のそれぞれに対応した二値化閾値が算出され、上記時系列データの二値化に適用される。機関の構造あるいはノックセンサの装着位置に依存して、機関運転状態の変化がノイズ成分強度に与える影響が、気筒毎に異なる場合や、ノイズ成分の周波数帯域や出現時期に依存して変化する場合がある。したがって、複数気筒のそれぞれに対応したノイズ成分強度の算出を行い、さらに複数気筒のそれぞれに対応し、かつ２次元マップの格子点のそれぞれに対応して二値化閾値を設定することにより、気筒毎に異なり、かつマップ格子点毎に異なるノイズ成分強度に対応して、二値化閾値をより適切に設定してノイズ成分の影響を低減することが可能となり、ノッキング判定精度を高めることができる。
【０００９】
請求項２に記載の発明は、請求項１に記載の内燃機関のノッキング検出装置において、前記補正係数（ＣＪＵＤ(i,j,k)，ＣＪＵＤＨ(i,j,kH)）は、前記複数の気筒のそれぞれに対応したノイズ成分強度の時系列データ（ＳＮＯＩＳＥ(i,j,k)）に基づいて予め設定されており、前記ノイズ成分強度が高いほど前記二値化閾値（ＳＴＪＵＤ(i,j,k)）を増加させるように設定されることを特徴とする。
【００１０】
この構成によれば、複数気筒のそれぞれに対応したノイズ成分強度の時系列データに基づいて、各補正係数が予め設定されており、気筒毎にノイズ成分の発生状態が異なる場合にはその気筒毎のノイズ成分発生状態に対応した格子点毎の補正係数の設定を行い、ノイズ成分強度が高いほど二値化閾値を増加させることによって、ノイズ成分の影響を低減してノッキング判定精度を高めることができる。
【００１１】
請求項３に記載の発明は、請求項１また２に記載の内燃機関のノッキング検出装置において、前記二値化閾値算出手段は、前記機関が、特定の気筒（例えば＃５気筒）においてノイズ成分強度が増加する特定運転状態にあると判定されたときは、前記特定の気筒に対応する前記二値化閾値（ＳＴＪＵＤ(i,j,kH)）を増加させるように前記補正係数を修正する（ＣＪＵＤ(i,j,kH)→ＣＪＵＤＨ(i,j,kH)）ことを特徴とする。
【００１２】
この構成によれば、機関が、特定の気筒においてノイズ成分強度が増加する特定運転状態にあると判定されたときは、その特定の気筒に対応する二値化閾値を増加させるように補正係数が修正されるので、特定運転状態において特定気筒におけるノッキング判定精度が低下することを防止できる。
【００１３】
請求項４に記載の発明は、請求項３に記載の内燃機関のノッキング検出装置において、前記二値化閾値算出手段は、前記クランク角度位置が、対象気筒の燃焼行程開始時期に比較的近い範囲で前記二値化閾値（ＳＴＪＵＤ(i,j,k)）の増加量が大きくなるように、前記補正係数の修正を行うことを特徴とする。
【００１４】
この構成によれば、クランク角度位置が、対象気筒の燃焼行程開始時期に比較的近い範囲で二値化閾値の増加量が大きくなるように、補正係数の修正が行われる。ノイズ成分強度は燃焼行程開始時期に比較的近い範囲で大きくなる傾向があるので、クランク角度位置が燃焼行程開始時期に比較的近い範囲で二値化閾値の増加量が大きくなるように修正を行うことによって、ノッキング判定精度の低下を防止できる。
【００１５】
請求項５に記載の発明は、請求項１から４の何れか１項に記載の内燃機関のノッキング検出装置において、前記ノイズ補正手段は、前記機関の回転数の今回検出値（ＮＥＰ）と、前回検出値（ＮＥＺ）との比（ＮＥＰ／ＮＥＺ）を二乗することよって、過渡補正係数（ＫＣＤＮＥ）を算出する過渡補正係数算出手段を含み、前記ノイズ成分強度（ＳＮＯＩＳＥ(i,j,k)）に前記過渡補正係数（ＫＣＤＮＥ）を乗算して補正ノイズ成分強度（ＳＮＯＩＳＥ(i,j,k)×ＫＣＤＮＥ）を算出し、前記周波数成分強度（ＳＴＦＴ(i,j,k)）から補正ノイズ成分強度を減算することによって前記補正を行うことを特徴とする。
【００１６】
この構成によれば、機関回転数の今回検出値と、前回検出値との比を二乗することよって、過渡補正係数が算出され、ノイズ成分強度に過渡補正係数を乗算して補正ノイズ成分強度が算出され、周波数成分強度から補正ノイズ成分強度を減算することによって、ノイズ成分が除去された時系列データが算出される。ノイズ成分強度は、機関回転数が増加するほど増加し、機関回転数の二乗にほぼ比例することが確認されているので、過渡補正係数を用いて補正ノイズ成分強度を算出することにより、機関回転数が急変した場合におけるノイズ成分の影響を適切に低減し、機関回転数が変化する過渡状態においても正確な判定を行うことができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の一実施形態にかかる内燃機関及びその制御装置の構成を示す図である。
【図２】ノッキング検出に適用される公知の基本判定手法の課題を説明するための図である。
【図３】ノッキング判定を行う処理のフローチャート（第１の実施形態）である。
【図４】図３の処理で実行される二値化閾値（ＳＴＪＵＤ）算出処理のフローチャートである。
【図５】二値化閾値（ＳＴＪＵＤ）の基本値（ＳＴＪＵＤＢ）が設定されたマップを示す図である。
【図６】二値化閾値（ＳＴＪＵＤ）の算出に適用される補正係数（ＣＪＵＤ，ＣＪＵＤＨ）が設定されたマップを示す図である。
【図７】補正係数（ＣＪＵＤ，ＣＪＵＤＨ）の設定例を説明するためのテーブルを示す図である。
【図８】検出強度マップ、ノイズ補正マップ、及び二値化マップを示す図である。
【図９】ノッキングが発生した状態に対応するマスタパターンデータが設定されたマスタマップを示す図である。
【図１０】エンジン運転状態に応じてマスタマップが選択される点を説明するための図である。
【図１１】気筒毎に算出されるノイズ成分強度マップを示す図である。
【図１２】ノッキング判定を行う処理のフローチャート（第２の実施形態）である。
【図１３】図１２の処理で実行されるマップ修正処理のフローチャートである。
【図１４】図１２の処理で実行される二値化閾値（ＳＴＪＵＤ）算出処理のフローチャートである。
【図１５】図１３の処理によって修正が行われるマップ上の特定領域を示す図である。
【図１６】図１２に示す処理の変形例のフローチャートである。
【発明を実施するための形態】
【００１８】
以下本発明の実施の形態を図面を参照して説明する。
［第１の実施形態］
図１は、本発明の一実施形態にかかる内燃機関（以下「エンジン」という）及びその制御装置の構成を示す図であり、エンジン１は例えばＶ型６気筒の過給機（図示せず）を備えるエンジンである。エンジン１の吸気通路２にはスロットル弁３が設けられている。エンジン１とスロットル弁３との間かつ吸気通路２の図示しない吸気弁の少し上流側には、燃料噴射弁６が各気筒毎に設けられており、燃料噴射弁６は電子制御ユニット（以下「ＥＣＵ」という）５によってその作動が制御される。エンジン１の各気筒には、点火プラグ７が設けられており、点火プラグ７にはＥＣＵ５から点火信号が供給される。
【００１９】
スロットル弁３の下流側には吸気圧ＰＢＡを検出する吸気圧センサ８、及び吸気温ＴＡを検出する吸気温センサ９が設けられている。エンジン１の本体には、エンジン冷却水温ＴＷを検出する冷却水温センサ１０及び非共振型のノックセンサ１１Ｒ，１１Ｌが装着されている。ノックセンサ１１Ｒは、＃１〜＃３気筒が配置された第１バンクに装着され、ノックセンサ１１Ｌは、＃４〜＃６気筒が配置された第２バンクに装着されている。ノックセンサ１１Ｒは＃１〜＃３気筒におけるノッキングの検出に使用され、ノックセンサ１１Ｌは＃４〜＃５気筒におけるノッキングの検出に使用される。ノックセンサ１１Ｒ，１１Ｌとしては、例えば５ｋＨｚから２５ｋＨｚまでの周波数帯域の振動を検出可能なものが使用される。吸気通路２のスロットル弁３の上流側には、吸入空気流量ＧＡを検出する吸入空気流量センサ１３が設けられている。
【００２０】
エンジン１のクランク軸及びカム軸（図示せず）には、それらの回転角度を検出する角度位置センサ１２が設けられている。角度位置センサ１２は、エンジン１の特定の気筒の所定クランク角度位置でパルス（以下「ＣＹＬパルス」という）を出力する気筒判別センサ、各気筒の吸入行程開始時の上死点（ＴＤＣ）に関し所定クランク角度前のクランク角度位置で（６気筒エンジンではクランク角１２０度毎に）ＴＤＣパルスを出力するＴＤＣセンサ及びＴＤＣパルスより短い一定クランク角周期（例えば６度周期）で１パルス（以下「ＣＲＫパルス」という）を発生するＣＲＫセンサから成り、ＣＹＬパルス、ＴＤＣパルス及びＣＲＫパルスがＥＣＵ５に供給される。これらのパルスは、燃料噴射時期、点火時期等の各種タイミング制御、エンジン回転数（エンジン回転速度）ＮＥの検出に使用される。
【００２１】
エンジン１は、吸気弁の弁リフト量及び開角（開弁期間）を変更する第１弁作動特性可変機構と、吸気弁を駆動するカムの、クランク軸回転角度を基準とした作動位相を連続的に変更する第２弁作動特性可変機構とを有する弁作動特性可変装置２０を備えている。
【００２２】
上述した各種センサ及び図示しない他のセンサ（スロットル弁の開度を検出するスロットル弁開度センサ、エンジン１によって駆動される車両のアクセルペダルの操作量を検出するアクセルセンサ、当該車両の車速を検出する車速センサなど）は、ＥＣＵ５に接続されており、ＥＣＵ５は、各種センサの検出信号に基づいて、燃料噴射弁６及び点火プラグ７の駆動制御、弁作動特性可変装置２０の制御を行うとともに、ノックセンサ１１Ｒ、１１Ｌの出力信号に基づくノッキング検出を行う。
【００２３】
本実施形態では、ノックセンサ１１Ｒ，１１Ｌの出力信号を、ＣＲＫパルスの発生毎にサンプリング周期２０マイクロ秒でサンプリングして周波数成分分析を行い、その分析の結果得られる周波数成分強度の時系列データに基づいてノッキング判定を行う。このノッキング判定の手法は、特許文献１に示された手法を改良したものに相当する。
【００２４】
特許文献１に示されたノッキング判定手法（以下「基本判定手法」という）は、以下のステップを含むものである。
１）ノックセンサ出力信号の周波数成分分析を、ＣＲＫパルスの発生に同期して実行し、この周波数成分分析によって得られる、複数の周波数成分の強度の時系列データを、クランク角度位置及び周波数で定義される２次元マップとして格納し（以下この２次元マップを「検出強度マップ」といい、このマップ上のデータを「検出強度マップデータ」という）、
【００２５】
２）ノッキングが発生していないと判定されたときの周波数成分強度の時系列データを、平均化することによってノイズ成分強度の時系列データを算出し（以下この時系列データを格納した２次元マップを「ノイズ成分強度マップ」といい、このマップ上のデータを「ノイズ成分強度マップデータ」という）、
【００２６】
３）検出強度マップデータから、対応するノイズ成分強度マップデータを減算することによって、ノイズ成分の影響を除いた補正周波数成分強度の時系列データを算出し（以下この時系列データを格納した２次元マップを「ノイズ補正マップ」といい、このマップ上のデータを「ノイズ補正マップデータ」という）、
【００２７】
４）ノイズ補正マップデータを、二値化閾値を用いて二値化することにより、二値化時系列データを算出し（以下この時系列データを格納した２次元マップを「二値化マップ」といい、このマップ上のデータを「二値化マップデータ」という）、
【００２８】
５）二値化マップと、ノッキングが発生した状態に対応するマスタパターンデータの２次元マップ（マップ上の格子点には「０」または「１」が設定されているマップであり、以下この２次元マップを「マスタマップ」といい、このマップ上のデータを「マスタマップデータ」という）との適合率を算出し、算出した適合率が適合率閾値を超えたときに、ノッキングが発生したと判定する。
【００２９】
図２は、この基本判定手法の課題を説明するための図であり、ノッキングが発生していない状態において周波数成分分析によって得られる周波数成分強度の最大値ＳＴＦＴＭＡＸと、エンジン回転数ＮＥとの関係を示す。すなわち、最大値ＳＴＦＴＭＡＸは、ノッキングによって発生する特有の周波数成分強度以外のノイズ成分強度の最大値に相当する。この図において実線で示す特性は、エンジン１の特定気筒（例えば＃５気筒）に対応し、破線で示す特性は特定気筒以外の気筒に対応する。このようにエンジン１の高回転運転状態で特定気筒の燃焼行程におけるノイズ成分強度が増加することが確認され、このエンジン１におけるノッキング判定に基本判定手法をそのまま適用すると、高回転運転状態で特定気筒におけるノッキングの判定精度が低下するという課題がある。なお、エンジン１の高負荷運転状態においても特定気筒の燃焼行程におけるノイズ成分強度が増加する点も確認されている。
【００３０】
この課題を解決するため本実施形態では、以下のような改良を行った。
１）基本判定手法では、ノイズ成分強度マップは全気筒共通の単一マップであるが、本実施形態では、複数気筒のそれぞれに対応したノイズ成分強度マップを設けることとした。
【００３１】
２）基本判定手法では、二値化閾値はエンジン運転状態に応じて設定され、全気筒に共通の値が適用されるが、本実施形態では複数気筒のそれぞれに対応した二値化閾値を適用することとした。
【００３２】
３）基本判定手法では、ノイズ補正マップデータは単一の二値化閾値を用いて二値化されるが、本実施形態ではノイズ補正マップの各格子点に対応して設定された二値化閾値を適用することとした。
【００３３】
４）基本判定手法では、検出強度マップデータからノイズ成分強度マップデータを減算することにより、ノイズ補正マップデータが算出されるが、本実施形態ではエンジン回転数ＮＥが急変したときに、ノイズ成分強度マップデータを補正して検出強度マップデータから減算することとした。
【００３４】
エンジン１では高回転運転状態及び高負荷運転状態で特定気筒のノイズ成分強度が増加する傾向が確認されたが、より一般的にはエンジン１の構造あるいはノックセンサ１１Ｒ，１１Ｌの装着位置に依存して、エンジン運転状態の変化がノイズ成分強度に与える影響が、気筒毎に異なる場合や、ノイズ成分の周波数帯域や出現時期よって異なる場合がある。したがって、複数気筒のそれぞれに対応したノイズ成分強度マップを設け、さらに複数気筒のそれぞれに対応し、かつノイズ補正マップの格子点のそれぞれに対応して二値化閾値を設定することより、気筒毎に異なり、かつマップ格子点毎に異なるノイズ成分強度に対応して、二値化閾値をより適切に設定し、ノイズ成分の影響を低減することが可能となる。その結果、上述したような特定気筒におけるノッキング判定精度の低下を防止し、ノッキング判定精度を高めることができる。またエンジン回転数ＮＥが急変したときに、ノイズ成分強度マップデータを補正して検出強度マップデータから減算することにより、エンジン回転数ＮＥが急変する過渡状態においても正確なノッキング判定を行うことができる。
【００３５】
図３は、基本判定手法を改良した手法でノッキング判定を行う処理のフローチャートである。この処理は、ＴＤＣパルスの発生に同期してＥＣＵ５で実行される。
ステップＳ１１では、クランク角度６度毎に実行される高速フーリエ変換によって、周波数５ｋＨｚ〜２０ｋＨｚまでの周波数範囲において、５，６，…，１９，２０ｋＨｚの周波数成分強度ＳＴＦＴが算出され、図８（ａ）に示すように周波数とクランク角度で定義される検出強度マップとして格納される。この図に示す検出強度マップデータＳＴＦＴ(i,j)のインデクスパラメータｉは、燃焼行程開始上死点を基準としたクランク角度を示し、ｉ＝１〜１１がクランク角度１２度〜７２度に対応する。またインデクスパラメータｊは周波数を示し、ｊ＝１〜１６がそれぞれ周波数５ｋＨｚ〜２０ｋＨｚに対応する。なお、以下に説明する演算処理は、本処理の１回の演算において、すべてのマップデータ、すなわちマップ上の格子点（ｉ＝１〜１１，ｊ＝１〜１６）について実行される。
【００３６】
ステップＳ１２では、ノイズ除去処理を実行する。すなわち、後述するノイズ学習処理（ステップＳ１９）において気筒毎に算出されるノイズ成分強度マップデータＳＮＯＩＳＥ(i,j,k)及び検出強度マップデータＳＴＦＴ(i,j)を下記式（１）に適用することにより、図８（ｂ）に示すノイズ補正マップデータＳＴＦＴＣ(i,j)を算出する。ノイズ成分強度マップデータＳＮＯＩＳＥ(i,j,k)（図１１参照）のインデクスパラメータｋは、気筒を特定するパラメータであり、ｋ＝１〜６が＃１気筒〜＃６気筒に対応する。式（１）には、今回の判定対象気筒ｋＸに対応するノイズ成分強度マップデータＳＮＯＩＳＥ(i,j,kX)が適用される。なお、式（１）の演算結果が負の値となったときは、ノイズ補正マップデータＳＴＦＴＣ(i,j)は「０」に設定される。
ＳＴＦＴＣ(i,j)＝ＳＴＦＴ(i,j)−ＳＮＯＩＳＥ(i,j,kX)×ＫＣＤＮＥ      （１）
【００３７】
式（１）のＫＣＤＮＥは下記式（２）で示される過渡補正係数である。式（２）のＮＥＰ及びＮＥＺは、それぞれエンジン回転数ＮＥの今回検出値及び前回検出値（クランク角度７２０度前の検出値）である。過渡補正係数ＫＣＤＮＥは、エンジン回転数ＮＥが急激に増加すると「１」より大きな値となり、ノイズ成分強度マップデータＳＮＯＩＳＥ(i,j,kX)を増加方向に補正する一方、エンジン回転数ＮＥが急激に減少すると「１」より小さな値となり、ノイズ成分強度マップデータＳＮＯＩＳＥ(i,j,kX)を減少方向に補正する。
ＫＣＤＮＥ＝（ＮＥＰ／ＮＥＺ）2                            （２）
【００３８】
ステップＳ１３では、図４に示すＳＴＪＵＤ算出処理を実行し、ノイズ補正マップデータＳＴＦＴＣ(i,j)の二値化に適用する二値化閾値ＳＴＪＵＤ(i,j,kX)を算出する。図４のステップＳ３１では、エンジン回転数ＮＥ及び吸気圧ＰＢＡに応じて図５に示すＳＴＪＵＤＢマップを検索して基本値ＳＴＪＵＤＢを算出する。ＳＴＪＵＤＢマップは、エンジン回転数ＮＥが増加するほど基本値ＳＴＪＵＤＢが増加し、かつ吸気圧ＰＢＡが増加するほど基本値ＳＴＪＵＤＢが増加するように設定されている。ラインＬ１で示される設定値は、第１所定吸気圧ＰＢＡ１から第２所定吸気圧ＰＢＡ２の範囲で適用される。ラインＬ２及びＬ３は、それぞれ第３所定吸気圧ＰＢＡ３及び第４所定吸気圧ＰＢＡ４に対応し、ＰＢＡ１＜ＰＢＡ２＜ＰＢＡ３＜ＰＢＡ４なる関係を満たす。
【００３９】
ステップＳ３２では、特定運転状態フラグＦＳＴＦＴＡＤＪが「１」であるか否かを判別する。特定運転状態フラグＦＳＴＦＴＡＤＪは、下記の条件１）〜３）がすべて満たされるとき、すなわち特定気筒においてノイズ成分強度が増加する特定運転状態において「１」に設定される。
【００４０】
１）エンジン冷却水温ＴＷが所定水温ＴＷＬ（例えば５０℃）より高く、
２）エンジン回転数ＮＥが所定高回転数範囲内（例えば２０００ｒｐｍ〜７０００ｒｐｍ）にあり、
３）吸気圧ＰＢＡが所定高負荷範囲内（２６．７ｋＰａ（２００ｍｍＨｇ）〜１６０．２ｋＰａ（１２００ｍｍＨｇ））にある。
【００４１】
ステップＳ３２の答が肯定（ＹＥＳ）であるときは、判定対象気筒ｋＸが特定気筒ｋＨ（例えば＃５気筒）であるか否かを判別する（ステップＳ３３）。ステップＳ３２またはＳ３３の答が否定（ＮＯ）であるときは、ステップＳ３４に進み、図６（ａ）に示す、気筒毎に設定されている６つのＣＪＵＤマップから判定対象気筒ｋＸに対応するＣＪＵＤマップを選択し、各格子点に対応する第１補正係数ＣＪＵＤ(i,j,kX)を取得する。
【００４２】
ステップＳ３５では、下記式（３）に基本値ＳＴＪＵＤＢ及び第１補正係数ＣＪＵＤ(i,j,kX)を適用して、判定対象気筒に対応する二値化閾値ＳＴＪＵＤ(i,j,kX)を算出する。
ＳＴＪＵＤ(i,j,kX)＝ＳＴＪＵＤＢ×ＣＪＵＤ(i,j,kX)                  （３）
【００４３】
ステップＳ３３の答が肯定（ＹＥＳ）であるとき、すなわちエンジン１が特定運転状態にありかつ判定対象気筒ｋＸが特定気筒ｋＨであるときは、図６（ｂ）に示す特定気筒ｋＨに対応して設定されているＣＪＵＤＨマップから、各格子点に対応する第２補正係数ＣＪＵＤ(i,j,kH)を取得する（ステップＳ３６）。ステップＳ３７では、下記式（４）に基本値ＳＴＪＵＤＢ及び第２補正係数ＣＪＵＤ(i,j,kH)を適用して、判定対象気筒（＝特定気筒）に対応する二値化閾値ＳＴＪＵＤ(i,j,kX)を算出する。
ＳＴＪＵＤ(i,j,kX)＝ＳＴＪＵＤＢ×ＣＪＵＤＨ(i,j,kH)                （４）
【００４４】
図７は、第１補正係数ＣＪＵＤ及び第２補正係数ＣＪＵＤＨの設定例を説明するためのテーブルを示す図であり、実線が第１補正係数ＣＪＵＤに対応し、破線が第２補正係数ＣＪＵＤＨに対応する。また図７（ａ）〜図７（ｅ）は、周波数を示すインデクスパラメータｊ＝１〜３の第１周波数範囲、ｊ＝４〜６の第２周波数範囲、ｊ＝７〜９の第３周波数範囲、ｊ＝１０〜１２の第４周波数範囲、及びｊ≧１３の第５周波数範囲に対応する。第１補正係数ＣＪＵＤ及び第２補正係数ＣＪＵＤＨは、基本的には、実験によって得られるノイズ成分強度マップデータＳＮＯＩＳＥ(i,j,k)に基づいて予め設定されており、ノイズ成分強度が高いほど二値化閾値ＳＴＪＵＤ(i,j,k)を増加させるように設定される。
【００４５】
第１補正係数ＣＪＵＤは、クランク角度を示すインデクスパラメータｉが小さくなるほど増加する傾向（すなわち燃焼行程開始上死点に近づくほど増加する傾向）に設定され、またｊ＝１０〜１２の第４周波数範囲の値が、燃焼行程開始上死点の近傍のクランク角度範囲において他の周波数範囲の値より大きな値に設定されている。また、第２補正係数ＣＪＵＤＨは、全周波数範囲及び全クランク角度範囲で、第１補正係数ＣＪＵＤ以上の値に設定され、特に燃焼行程開始上死点の近傍のクランク角度範囲で、第１補正係数ＣＪＵＤとの差が増加するように設定されている。
補正係数ＣＪＵＤ，ＣＪＵＤＨの設定は、図７に示す設定例に限るものではなく、周波数範囲で同じ設定するのではなく、周波数毎に異なる設定としてもよい。
【００４６】
図３に戻り、ステップＳ１４では、二値化閾値ＳＴＪＵＤ(i,j,kX)を用いてノイズ補正マップデータＳＴＦＴＣ(i,j)の二値化を行い、図８（ｃ）に示す二値化マップデータＢＳＴＦＴ(i,j)を算出する。すなわち、ノイズ補正マップデータＳＴＦＴＣ(i,j)が二値化閾値ＳＴＪＵＤ(i,j,kX)より大きいときは、二値化マップデータＢＳＴＦＴ(i,j)を「１」に設定し、ノイズ補正マップデータＳＴＦＴＣ(i,j)が二値化閾値ＳＴＪＵＤ(i,j,kX)以下であるときは、二値化マップデータＢＳＴＦＴ(i,j)を「０」に設定する。
【００４７】
ステップＳ１５では、二値化マップデータＢＳＴＦＴ(i,j)と、図９に示すマスタマップデータＢＭＳＴ(i,j)との適合率ＰＦＩＴを下記式（５）〜（７）により算出する。式（５）及び（６）のΣは、マップ上のすべての格子点（ｉ＝１〜１１，ｊ＝１〜１６）についての積算演算を示し、積算値ＳＵＭＭ及びＳＵＭＳを式（７）に適用して、適合率ＰＦＩＴが算出される。本実施形態では、図１０に示すように、エンジン回転数ＮＥ及び吸気圧ＰＢＡで定義される９個の運転領域に対応して９個のマスタマップが設定されており、エンジン回転数ＮＥ及び吸気圧ＰＢＡに応じて１つのマスタマップが選択される。
ＳＵＭＭ＝ΣＢＭＳＴ(i,j)                                     （５）
ＳＵＭＳ＝ΣＳＴＦＴＣ(i,j)×ＢＭＳＴ(i,j)                    （６）
ＰＦＩＴ＝ＳＵＭＳ／ＳＵＭＭ                                  （７）
【００４８】
ステップＳ１６では、ステップＳ１５で算出された適合率ＰＦＩＴが、気筒毎に予め設定されている適合率閾値ＰＦＩＴＴＨ(kX)より大きいか否かを判別する。ステップＳ１６の答が肯定（ＹＥＳ）であるときは、ノッキングが発生したと判定し、ノッキングフラグＦＫＮＯＣＫを「１」に設定する（ステップＳ１７）。
【００４９】
ステップＳ１６の答が否定（ＮＯ）であるときは、ノッキングが発生していないと判定し、ノッキングフラグＦＫＮＯＣＫを「０」に設定する（ステップＳ１８）。この場合、検出強度マップデータＳＴＦＴ(i,j)はノイズ成分強度を示すデータと考えられるので、図１１に示すノイズ成分強度マップの更新を行う（ステップＳ１９）。ノイズ成分強度マップは、＃１〜＃６気筒のそれぞれに対応して設けられており、ステップＳ１９では、判定対象気筒ｋＸに対応するノイズ成分強度マップのノイズ成分強度マップデータＳＮＯＩＳＥ(i,j,kX)を、下記式（８）に適用して更新する。式（８）のＣＳＮＯＩＳＥは、０から１の間の値（例えば「０．５」）に設定されるなまし係数である。
ＳＮＯＩＳＥ(i,j,kX)＝ＳＮＯＩＳＥ(i,j,kX)×ＣＳＮＯＩＳＥ
＋ＳＴＦＴ(i,j,kX)×（１−ＣＳＮＯＩＳＥ）      （８）
【００５０】
以上のように本実施形態では、クランク角度６度間隔でノックセンサ１１Ｒ，１１Ｌの出力信号の周波数成分分析が行われ、その周波数成分分析により得られる、複数の周波数成分の強度の時系列データＳＴＦＴが、クランク角度位置及び周波数で定義される検出強度マップとして格納される。検出強度マップデータＳＴＦＴ(i,j)に基づいて、ノイズ成分強度マップデータＳＮＯＩＳＥ(i,j,k)が気筒毎に算出され、検出強度マップデータＳＴＦＴ(i,j)がノイズ成分強度マップデータＳＮＯＩＳＥ(i,j,k)により補正される。補正後の時系列データであるノイズ補正マップデータＳＴＦＴＣ(i,j)が二値化閾値ＳＴＪＵＤ(i,j,k)を用いて二値化され、その二値化された時系列データＢＳＴＦＴ(i,j)の２次元マップである二値化マップ（図８（ｃ））と、ノッキングが発生した状態に対応するマスタパターンデータの２次元マップであるマスタマップ（図９）とを比較することより、ノッキングが発生したか否かが判定される。さらに二値化閾値ＳＴＪＵＤ(i,j,k)の基本値ＳＴＪＵＤＢがエンジン回転数ＮＥ及び吸気圧ＰＢＡに応じて算出されるとともに、＃１〜＃６気筒のそれぞれに対応し、かつノイズ補正マップにおける格子点のそれぞれに対応して設定された第１補正係数ＣＪＵＤまたは第２補正係数ＣＪＵＤＨを用いて基本値ＳＴＪＵＤＢを補正することにより、＃１〜＃６気筒のそれぞれに対応し、かつノイズ補正マップ（２次元マップ）における格子点のそれぞれに対応した二値化閾値ＳＴＪＵＤ(i,j,k)が算出され、ノイズ補正マップデータＳＴＦＴＣ(i,j)の二値化に適用される。エンジン１の構造あるいはノックセンサ１１Ｒ，１１Ｌの装着位置に依存して、エンジン運転状態の変化がノイズ成分強度に与える影響が、気筒毎に異なる場合や、ノイズ成分の周波数帯域や出現時期に依存して変化する場合がある。したがって、各気筒に対応したノイズ成分強度マップ（図１１）を設け、さらに各気筒に対応し、かつ２次元マップの格子点のそれぞれに対応して二値化閾値ＳＴＪＵＤ(i,j,k)を設定することにより、気筒毎に異なり、かつマップ格子点毎に異なるノイズ成分強度に対応して、二値化閾値ＳＴＪＵＤ(i,j,k)をより適切に設定してノイズ成分の影響を低減することが可能となり、ノッキング判定精度を高めることができる。
【００５１】
また各気筒に対応したノイズ成分強度マップデータＳＮＯＩＳＥ(i,j,k)に基づいて、補正係数ＣＪＵＤ，ＣＪＵＤＨが予め設定されており、例えば＃５気筒のノイズ発生状態が他の気筒と異なる場合には、図７に示すようにその気筒毎のノイズ成分発生状態に対応した格子点毎の補正係数ＣＪＵＤ，ＣＪＵＤＨの設定を行い、ノイズ成分強度が高いほど二値化閾値ＳＴＪＵＤを増加させることによって、ノイズ成分の影響を低減してノッキング判定精度を高めることができる。
【００５２】
またエンジン１が、特定の気筒においてノイズ成分強度が増加する特定運転状態にあると判定されたとき（ＦＳＴＦＴＡＤＪ＝１であるとき）は、その特定の気筒（＃５気筒）に対応する二値化閾値ＳＴＪＵＤ(i,j,kH)を増加させるように設定された第２補正係数ＣＪＵＤＨが適用されるので、特定運転状態において特定気筒におけるノッキング判定精度が低下することを防止できる。
【００５３】
また図７に示すようにクランク角度位置が、判定対象気筒ｋＸの燃焼行程開始時期に比較的近い範囲（インデクスパラメータｉが小さい範囲）で、二値化閾値ＳＴＪＵＤ(i,j,k)の増加量（第１補正係数ＣＪＵＤを適用した場合の値からの増加量）が大きくなるように、第２補正係数ＣＪＵＤＨが設定される。ノイズ成分強度は燃焼行程開始時期に比較的近い範囲で大きくなる傾向があるので、クランク角度位置が燃焼行程開始時期に比較的近い範囲で二値化閾値ＳＴＪＵＤ(i,j,k)の増加量が大きくなるように第２補正係数ＣＪＵＤＨを設定することによって、ノッキング判定精度の低下を防止できる。
【００５４】
またエンジン回転数ＮＥの今回検出値ＮＥＰと、前回検出値ＮＥＺとの比（ＮＥＰ／ＮＥＺ）を二乗することよって、過渡補正係数ＫＣＤＮＥが算出され、ノイズ成分強度マップデータＳＮＯＩＳＥ(i,j,k)に過渡補正係数ＫＣＤＮＥを乗算して、検出強度マップデータＳＴＦＴ(i,j)から減算することによって、ノイズ補正マップデータＳＴＦＴＣ(i,j)が算出される（式（１））。ノイズ成分強度ＳＮＯＩＳＥは、エンジン回転数ＮＥが増加するほど増加し、エンジン回転数ＮＥの二乗にほぼ比例することが確認されているので、過渡補正係数ＫＣＤＮＥを用いて補正したノイズ成分強度（ＳＮＯＩＳＥ×ＫＣＤＮＥ）を適用することにより、エンジン回転数ＮＥが急変した場合におけるノイズ成分の影響を適切に低減し、エンジン回転数ＮＥが変化する過渡状態においても正確な判定を行うことができる。
【００５５】
本実施形態では、ＥＣＵ５が、周波数成分分析手段、データ格納手段、ノイズ成分強度算出手段、ノイズ補正手段、二値化手段、ノッキング判定手段、基本値算出手段、二値化閾値算出手段、及び過渡補正係数算出手段を構成する。
【００５６】
［第２の実施形態］
図１２は、本発明の第２の実施形態にかかるノッキング判定処理のフローチャートである。この処理は、図３に示す処理のステップＳ１３をステップＳ１３ａに変更し、ステップＳ１１とＳ１２の間にステップＳ２１を追加し、ステップＳ１５とＳ１６の間にステップＳ２２を追加したものである。以下に説明する点以外は第１の実施形態と同一である。
【００５７】
ステップＳ２１では、図１３に示すマップ修正処理が実行される。図１３のステップＳ４１では、特定運転状態フラグＦＳＴＦＴＡＤＪが「１」であるか否かを判別し、その答が肯定（ＹＥＳ）であるときは、クランク角度のインデクスパラメータｉ及び周波数のインデクスパラメータｊが、検出強度マップ上の特定領域に対応する特定範囲内にあるか否かを判別する。具体的には本実施形態では、図１５（ａ）にハッチングを付して示す領域が特定領域であり、ｉ＝１でかつｊが１から１６の範囲内にあるか否かを判別する。
【００５８】
ステップＳ４１またはＳ４２の答が否定（ＮＯ）であるときは、検出強度マップの修正を行うことなく直ちに処理を終了する。ステップＳ４２の答が肯定（ＹＥＳ）であるときは、特定領域内の格子点のそれぞれに対応して予め設定されたノイズ差分閾値ＤＳＮＴＨ(i,j)を取得する（ステップＳ４３）。ノイズ差分閾値ＤＳＮＴＨ(i,j)は、実験によって取得される、各格子点におけるノイズ成分強度ＳＮＯＩＳＥ(i,j)に基づいて予め適切な値に設定される。
【００５９】
ステップＳ４４では、検出強度マップデータＳＴＦＴ(i,j)及びノイズ成分強度マップデータＳＮＯＩＳＥ(i,j,kX)を下記式（９）に適用し、ノイズ差分ＤＳＮＯＩＳＥ(i,j)を算出する。
ＤＳＮＯＩＳＥ(i,j)＝ＳＴＦＴ(i,j)−ＳＮＯＩＳＥ(i,j,kX)        （９）
【００６０】
ステップＳ４５では、ノイズ差分ＤＳＮＯＩＳＥ(i,j)がノイズ差分閾値ＤＳＮＴＨ(i,j)以上であるか否かを判別し、その答が否定（ＮＯ）であるときは、検出強度マップの修正を行うことなく直ちに処理を終了する。ステップＳ４５の答が肯定（ＹＥＳ）であって、検出強度マップデータＳＴＦＴ(i,j)に含まれるノイズ成分強度が大きいと推定されるときは、当該格子点の検出強度マップデータＳＴＦＴ(i,j)を「０」に設定し、修正カウンタＮＭＯＤの値を「１」だけ増加させる（ステップＳ４６）。修正カウンタＮＭＯＤの値は、本処理の開始前に「０」に設定されており、検出強度マップデータＳＴＦＴ(i,j)を「０」に修正した格子点の数を示す。
【００６１】
図１３の処理により、エンジン１が特定運転状態にある場合において、ノイズ差分ＤＳＮＯＩＳＥ(i,j)がノイズ差分閾値ＤＳＮＴＨ(i,j)以上であって、検出強度マップの特定領域内に含まれる格子点の検出強度マップデータＳＴＦＴ(i,j)が「０」に修正される（修正検出強度マップが生成される）。図１５（ｂ）は、修正検出強度マップの一例を示しており、特定領域内の一部のマップデータ（ｉ＝１，ｊ＝１〜１４の格子点におけるデータ）が「０」に設定されている。
【００６２】
図１２のステップＳ１３ａでは、図１４に示すＳＴＪＵＤ算出処理が実行される。図１４の処理は、図４のステップＳ３２，Ｓ３３，Ｓ３６，及びＳ３７を削除したものに相当する。すなわち、全ての気筒について、上述した式（３）によって二値化閾値ＳＴＪＵＤ(i,j,kX）の算出が行われる。
【００６３】
図１２のステップＳ２２では、下記式（１０）の右辺に適合率閾値ＰＦＩＴＴＨ(kX)、積算値ＳＵＭＭ（式（５））、及び修正カウンタＮＭＯＤの値を適用して、適合率閾値ＰＦＩＴＴＨ(kX)を修正する。
ＰＦＩＴＴＨ(kX)＝ＰＦＩＴＴＨ(kX)×（ＳＵＭＭ−ＮＭＯＤ）／ＳＵＭＭ  （１０）
【００６４】
式（１０）は、「０」に修正された検出強度マップデータＳＴＦＴ(i,j)は、ノッキング判定に寄与しなくなることを考慮して、適合率閾値ＰＦＴＩＴＨ(kX)を減少方向に修正するものである。
【００６５】
以上のように本実施形態では、検出強度マップに格納された検出強度マップデータＳＴＦＴ(i,j)と、対応するノイズ成分強度マップデータＳＮＯＩＳＥ(i,j,kX)との差分がノイズ差分ＤＳＮＯＩＳＥ(i,j)として算出され、ノイズ差分ＤＳＮＯＩＳＥ(i,j)に応じて検出強度マップ（図１５（ａ））を修正することにより、修正検出強度マップ（図１５（ｂ））が生成され、修正検出強度マップ上の検出強度マップデータＳＴＦＴ(i,j)がノイズ成分強度マップデータＳＮＯＩＳＥ(i,j,kX)により補正される。補正後の時系列データであるノイズ補正マップデータＳＴＦＴＣ(i,j)が二値化閾値ＳＴＪＵＤ(i,j,kX)を用いて二値化され、二値化マップデータＢＳＴＦＴ(i,j)が格納された二値化マップと、マスタマップとの適合率ＰＦＩＴが算出され、その適合率ＰＦＩＴが適合率閾値ＰＦＩＴＴＨ(kX)を超えたときに、ノッキングが発生したと判定される。適合率閾値ＰＦＩＴＴＨ(kX)は、修正検出強度マップの修正度合を示す修正カウンタＮＭＯＤの値が大きくなるほど減少するように設定される。
【００６６】
ノイズ差分ＤＳＮＯＩＳＥ(i,j)を算出することによって実際のノイズ発生状態を気筒毎に、かつ検出強度マップの格子点毎に監視し、ノイズ差分ＤＳＮＯＩＳＥ(i,j)に応じて検出強度マップを修正することにより、ノイズ成分強度の大きい気筒あるいは検出強度マップの格子点において、検出強度マップを修正することにより、ノイズ成分の影響が大きい格子点の寄与度を減少させた修正２次元マップが生成され、ノイズ成分の影響を低減することができる。ただし、修正検出強度マップには実際の検出周波成分強度ではない修正データ（「０」）が含まれることとなるため、修正度合を示す修正カウンタＮＭＯＤの値に応じて適合率閾値ＰＦＩＴＴＨ(kX)を減少させることによって、ノイズ成分の影響を低減してノッキング判定精度を高めることができる。
【００６７】
より具体的には、マップデータＳＴＦＴ(i,j)の修正は、検出強度マップ上の特定領域内において行われる。ノイズ成分の影響が大きい検出強度マップ上の特定領域は予め設定可能であり、その特定領域を対象として検出強度マップデータＳＴＦＴ(i,j)の修正を行うことにより、修正２次元マップによる判定の精度が低下することを防止できる。さらにノイズ差分ＤＳＮＯＩＳＥ(i,j)が予め設定されたノイズ差分閾値ＤＳＮＴＨ(i,j)以上であるときに、マップデータＳＴＦＴ(i,j)を減少方向に修正することにより修正検出強度マップが生成されるので、ノイズ成分の影響を低減し、判定精度の低下を防止できる。さらに修正度合を修正カウンタＮＭＯＤの値、すなわち修正されたデータの数で示すことにより、修正度合に応じた適合率閾値ＰＦＩＴＴＨ(kX)の変更を容易かつ適切に行うことができる。
【００６８】
また、エンジン１が、ノイズ成分強度マップデータＳＮＯＩＳＥ(i,j,kX)が増加する特定運転状態にあるときに、検出強度マップの修正が行われ、エンジン１が特定運転状態以外の運転状態にあるときは、検出強度マップの修正が行われないので、修正検出強度マップによる判定は必要最小限の運転状態に限定され、特定運転状態以外の運転状態における判定精度に影響を与えないようにすることができる。
【００６９】
［変形例１］
図１３に示すマップ修正処理では、修正すべき検出強度マップデータＳＴＦＴ(i,j)を「０」に設定するようにしたが、これに限るものではなく、対応する二値化閾値ＳＴＪＵＤ(i,j)より小さい値に減少させる修正を行ってもよい。
【００７０】
［変形例２］
図１２に示す処理は、図１６に示すように変形してもよい。図１６は、図１２のステップＳ１３ａをステップＳ１３に変更し、第１の実施形態と同様に図４に示すＳＴＪＵＤ算出処理を実行するようにしたものである。この変形例では、第２の実施形態においてもエンジン１が特定運転状態にあるときは、特定気筒に対応する二値化閾値ＳＴＪＵＤ(i,j,kX)が増加補正され、特定運転状態におけるノッキング判定精度をさらに高めることができる。
【００７１】
なお本発明は上述した実施形態に限るものではなく、種々の変形が可能である。例えば、特許文献１に示される第３の実施形態と同様に、５ｋＨｚから２０ｋＨｚまでの１６個の周波数を、３個または２個の周波数からなる６つの周波数グループに分割し、１つのサンプルタイミングに対応する検出強度マップデータＳＴＦＴ(i,j)の代表値である検出グループ強度マップデータＧＳＴＦＴを、周波数グループ内の最大値に設定し、周波数グループ及びクランク角度位置によって定義される２次元マップを用いてノッキング判定を行うようにしてもよい。これにより、ＥＣＵ５におけるノイズ補正以後の処理負荷を軽減することができる。
【００７２】
上述した実施形態では、＃５気筒におけるノイズ成分強度が他の気筒のノイズ成分強度より大きい例を示したが、本発明は例えば６気筒エンジンのノイズ成分強度及び／またはその周波数特性が、それぞれ異なるような場合であっても適用可能であり、各気筒のノイズ成分強度に適合したノイズ補正及び二値化閾値の設定を行うことができる。
【００７３】
また、上述した実施形態では６気筒エンジンに本発明を適用した例を示したが、本発明は６気筒に限らず２以上の気筒を有するエンジンのノッキング検出に適用可能である。また、燃料を燃焼室内に直接噴射する直噴型のエンジン、あるいは過給機を備えていないエンジンのノッキング検出にも適用可能である。
【００７４】
また、ノックセンサ出力のサンプリング周期は２０マイクロ秒とし、クランク角度間隔を６度としたが、これに限るものではなく、本発明の目的が達成される範囲内において変更可能である。また、検出強度マップの構成（１６行×１１列）も同様に変更可能である。また適合率閾値ＰＦＩＴＴＨは、特許文献１に示されるようにエンジン回転数ＮＥ及び吸気圧ＰＢＡに応じて気筒毎に設定するようにしてもよい。
【００７５】
上述した実施形態では、二値化マップデータＢＳＴＦＴ(i,j)とマスタマップＢＭＳＴ(i,j)との類似性（相関性）を示すパラメータとして、適合率ＰＦＩＴを用いたが、例えば二値化マップデータＢＳＴＦＴ(i,j)とマスタマップデータＢＭＳＴ(i,j)の差の絶対値の合計である差分積算値ＳＵＭＤＩＦを用いることもできる。この場合、差分積算値ＳＵＭＤＩＦは、その値が小さいほど類似性（相関性）が高いことを示すので、差分積算値ＳＵＭＤＩＦが差分判定閾値ＳＤＬＶＬより小さいとき、ノッキングが発生したと判定する。
【符号の説明】
【００７６】
１  内燃機関
５  電子制御ユニット（周波数成分分析手段、データ格納手段、ノイズ成分強度算出手段、ノイズ補正手段、二値化手段、ノッキング判定手段、基本値算出手段、二値化閾値算出手段、過渡補正係数算出手段）
１１Ｒ，１１Ｌ  ノックセンサ
【図１】
2017190766.tif 000003
【図２】
2017190766.tif 000004
【図３】
2017190766.tif 000005
【図４】
2017190766.tif 000006
【図５】
2017190766.tif 000007
【図６】
2017190766.tif 000008
【図７】
2017190766.tif 000009
【図８】
2017190766.tif 000010
【図９】
2017190766.tif 000011
【図１０】
2017190766.tif 000012
【図１１】
2017190766.tif 000013
【図１２】
2017190766.tif 000014
【図１３】
2017190766.tif 000015
【図１４】
2017190766.tif 000016
【図１５】
2017190766.tif 000017
【図１６】
2017190766.tif 000018