(57)【要約】【課題】内燃機関におけるノック判定の精度を向上させることを課題とする。【解決手段】ノックに特有の周波数帯であるノック周波数帯を抽出するノック周波数フィルタ処理部２０２と、外乱ノイズに特有の周波数帯である外乱ノイズ周波数帯を抽出する外乱ノイズフィルタ処理部２０４と、ノック周波数フィルタ処理部２０２が抽出したノック周波数帯におけるノック周波数に対する、外乱ノイズフィルタ処理部２０４が抽出した外乱ノイズ周波数帯における外乱ノイズ周波数の影響度である強度比率差分を算出し、この強度比率差分を基に、ノック周波数帯強度の補正計数を決定し、補正計数によって、ノック周波数帯強度を補正するノック周波数補正部２０６と、補正されたノック周波数帯強度を基に、ノッキングが発生しているか否かを判定する判定処理部２０８と、を有することを特徴とする。【選択図】図３
2018003631.tif 000002
【特許請求の範囲】
【請求項１】
ノック計測部が計測したノック信号からノックに特有の周波数帯であるノック周波数帯を抽出するノック用フィルタ処理部と、
外乱ノイズに特有の周波数帯である外乱ノイズ周波数帯を抽出する外乱ノイズ用フィルタ処理部と、
前記ノック用フィルタ処理部が抽出した前記ノック周波数帯におけるノック周波数に対する、前記外乱ノイズ用フィルタ処理部が抽出した前記外乱ノイズ周波数帯における外乱ノイズ周波数の影響度を算出する影響度算出部と、
前記影響度を基に、ノッキングが発生しているか否かを判定する判定部と、
を有することを特徴とする内燃機関の制御装置。
【請求項２】
前記影響度を基に、ノック判定基準量の補正量を決定し、前記補正量によって、ノック判定基準量を補正する補正部を有し、
前記判定部は、
前記補正されたノック判定基準量を基に、ノッキングが発生しているか否かを判定する
ことを特徴とする請求項１に記載の内燃機関の制御装置。
【請求項３】
前記ノック判定基準量は、前記ノック周波数における周波数強度であるノック周波数帯強度である
ことを特徴とする請求項２に記載の内燃機関の制御装置。
【請求項４】
前記ノック判定基準量は、ノックが生じているか否かを判定するための閾値であるスライスレベルである
ことを特徴とする請求項２に記載の内燃機関の制御装置。
【請求項５】
前記ノック周波数帯及び前記外乱ノイズ周波数帯は複数存在し、
どの前記ノック周波数帯と、どの前記外乱ノイズ周波数帯とが隣接しているかを示す情報が予め設定されており、
前記補正部は、抽出された前記ノック周波数及び前記外乱ノイズ周波数のうち、互いに隣接している前記ノック周波数及び外乱ノイズ周波数に対して、前記影響度を算出する
ことを特徴とする請求項２に記載の内燃機関の制御装置。
【請求項６】
ノック周波数帯強度は、前記ノック周波数帯における周波数強度であり、
前記外乱ノイズとは異なるノイズであり、観測される周波数全域にわたってのっているバックグラウンドノイズを算出するバックグラウンドノイズ算出部を有し、
前記補正部は、
前記バックグラウンドノイズに基づいて、前記ノック周波数帯強度を補正する
ことを特徴とする請求項２に記載の内燃機関の制御装置。
【請求項７】
ノック周波数帯強度は、前記ノック周波数帯における周波数強度であり、
外乱ノイズ周波数帯強度は、前記外乱ノイズ周波数帯における周波数強度であり、
前記ノック周波数帯強度及び前記外乱ノイズ周波数帯強度のうち、大きい方を１００％とし、前記ノック周波数帯強度及び前記外乱ノイズ周波数帯強度のうち、大きいほうの周波数強度に対する小さい方の周波数強度の割合を算出することで、ノック周波数帯強度比率及び外乱ノイズ周波数帯強度比率を算出し、前記ノック周波数帯強度比率から前記外乱ノイズ周波数帯強度比率を減算した値が、前記ノック周波数に対する前記外乱ノイズ周波数の影響度である
ことを特徴とする請求項１に記載の内燃機関の制御装置。
【請求項８】
ノック計測部が計測したノック信号からノックに特有の周波数帯であるノック周波数帯を抽出するとともに、外乱ノイズに特有の周波数帯である外乱ノイズ周波数帯を抽出し、
抽出された前記ノック周波数帯におけるノック周波数に対する、前記外乱ノイズ周波数帯における外乱ノイズ周波数の影響度を算出し、
前記影響度を基に、ノッキングが発生しているか否かを判定する
ことを特徴とするノック判定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関におけるノック発生を検知する内燃機関の制御装置及びノック判定方法の技術に関する。
【背景技術】
【０００２】
近年、自動車等の車両において、燃費や排気に関する規制が強化される傾向にある。そのような規制は今後も益々強くなると考えられている。特に、燃費に関する規制は、近年の燃料価格におけるボラリティの高さ、地球温暖化への影響、エネルギ資源枯渇等の問題により、極めて関心の高い事項である。
【０００３】
このような状況下において、例えば自動車産業では、車両の燃費性能や排気性能の向上を目的とした様々な技術開発が進められている。そのような燃費性能の向上を目的とした開発技術の一つとして、例えば、内燃機関の圧縮比を上げる高圧縮比化技術がある。また、排気性能の向上を目的とした開発技術の一つとして、例えば、吸気行程時に複数回に分けて燃料を噴射し、一回当たりの燃料噴射量を低減してＰＮ（Particulate Number）を低減する多段噴射技術がある。
【０００４】
ところで、前記した高圧縮比化技術では、内燃機関の圧縮比が上がることにより、熱効率が向上して燃費が改善する。しかし、高圧縮比化技術では、燃焼室内の温度が上昇してノッキングが発生し易くなることが知られている。
【０００５】
そのため、従来の内燃機関においては、ノッキング発生時に特定の周波数信号レベルが上昇することを利用することが行われている。すなわち、シリンダブロックに振動型のノックセンサが取り付けられる。そして、このノックセンサから出力される所定のクランク角度の区間の信号をＦＦＴ（高速フーリエ変換）解析してノッキングの発生が検出されている。
【０００６】
しかしながら、ノックセンサは、内燃機関の振動を伝えるものであるため、ノック判定角度区間にインジェクタノイズ等の外乱ノイズが発生すると、その外乱ノイズをノッキングと誤検出してしまう可能性がある。そのため、ノック判定角度区間に燃料噴射時期を設定することができず、例えばＰＮを低減する多段噴射技術のポテンシャルを十分に発揮できないといった問題が生じ得る。なお、ノック判定角度区間とは、ノックが生じやすいクランク角度の区間である。
【０００７】
このような問題に対し、特許文献１には、「ノックセンサの出力信号を複数のバンドパスフィルタで処理して複数の周波数帯ｆ１〜ｆ４の振動波形成分を抽出し、各周波数帯の振動波形成分に乗算する重み係数Ｇ１〜Ｇ４を、各周波数帯のノイズ強度が大きいほど小さい値に設定する。これにより、複数の周波数帯の振動波形成分を、各周波数帯のノイズ強度による影響度に応じた重み付けで合成することができるので、いずれかの周波数帯の振動波形成分にノイズが重畳している場合でも、そのノイズの影響を低減して各周波数帯の振動波形成分を合成することが可能となり、その合成振動波形に基づいて精度の良いノック判定を行うことができる」内燃機関のノック判定装置が開示されている（要約参照）。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００９−４２０２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ノッキングの判定は、ノック判定角度区間におけるノックセンサ信号に基づいて行われる。しかし、ノック判定角度区間に外乱ノイズが含まれるか否かは内燃機関の制御状態によって決まる。そのため、ノッキング起因で発生する振動の周波数帯と、外乱ノイズ起因で発生する振動の周波数帯とが互いに近い場合であっても、ノック判定角度区間に外乱ノイズが含まれていなければ、外乱ノイズの影響を受けることなくノック周波数帯強度を得ることができる。
【００１０】
特許文献１に記載の技術では、外乱ノイズが生じていない場合でも、ノックの周波数を下げてしまうため、正しいノック周波数帯強度を得ることができないという課題がある。
【００１１】
さらに、特許文献１では、各周波数帯の振動波形成分に乗算する重み係数を、各周波数帯のノイズ強度が大きいほど小さい値に設定する。しかし、ノックの周波数帯強度や外乱ノイズの周波数帯強度は常に一定の大きさで現れるものではなく、サイクル毎に強度が変動することが発明者らの実験により確認されている。そのため、ノック判定角度区間に外乱ノイズが含まれていた場合、この外乱ノイズがノック周波数帯強度に与える影響度は、内燃機関のサイクル毎に変動する。また、外乱ノイズの影響度はノック起因で発生する振動の周波数帯と外乱ノイズ起因で発生する振動の周波数帯との重なり具合によっても異なる。そのため、特許文献１のように、外乱ノイズの周波数帯強度が高いほど各周波数帯の振動波形成分に乗算する重み計数を小さく設定しておけばよいとは限らない。
【００１２】
このように、特許文献１に記載の技術では、サイクル毎に変動する外乱ノイズ影響に応じてノック周波数帯強度を補正することが困難になるといった課題がある。
【００１３】
このような背景に鑑みて本発明がなされたのであり、本発明は、ノック判定の精度を向上させることを課題とする。
【課題を解決するための手段】
【００１４】
前記した課題を解決するため、本発明は、ノック計測部が計測したノック信号からノックに特有の周波数帯であるノック周波数帯を抽出するノック用フィルタ処理部と、外乱ノイズに特有の周波数帯である外乱ノイズ周波数帯を抽出する外乱ノイズ用フィルタ処理部と、前記ノック用フィルタ処理部が抽出した前記ノック周波数帯におけるノック周波数に対する、前記外乱ノイズ用フィルタ処理部が抽出した前記外乱ノイズ周波数帯における外乱ノイズ周波数の影響度を算出する影響度算出部と、前記影響度を基に、ノッキングが発生しているか否かを判定する判定部と、を有することを特徴とする。
その他の解決手段については後記する。
【発明の効果】
【００１５】
本発明によれば、ノック判定の精度を向上させることができる。
前記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【００１６】
【図１】第１実施形態に係る内燃機関の全体構成を示す図である。
【図２】第１実施形態に係るＥＣＵの構成を示す図である。
【図３】第１実施形態に係る制御プログラムの構成を示す図である。
【図４】バンドパスフィルタ特性を示す図である。
【図５】ノック周波数帯強度と外乱ノイズ周波数帯強度が発生する周波数帯の一例を示す図である。
【図６】ノック判定角度区間にノックのみが発生している場合における、ノック周波数帯Ｆｓ２のノック周波数帯強度を示す図である。
【図７】ノックが発生しておらず、ノック判定角度区間に外乱ノイズが含まれている場合における、外乱ノイズ周波数帯強度を示す図である。
【図８】ノックが発生し、さらにノック判定角度区間に外乱ノイズが含まれている場合におけるノック周波数帯強度を示す図である。
【図９】外乱ノイズ非混入の場合における、ノック周波数帯強度及び外乱ノイズ周波数帯強度を示す図である。
【図１０】外乱ノイズ非混入の場合における信号がノック用フィルタ処理部を通過した後のノック周波数帯強度を示す図である。
【図１１】外乱ノイズ非混入の場合における信号が外乱ノイズ用フィルタ処理部を通過した後の外乱ノイズ周波数帯強度を示す図である。
【図１２】ノック周波数帯強度が外乱ノイズ周波数帯強度より大きい場合におけるノック周波数帯強度及び外乱ノイズ周波数帯強度を示す図である。
【図１３】ノック周波数帯強度が外乱ノイズ周波数帯強度より大きい信号が、ノック用フィルタ処理部を通過した後のノック周波数帯強度を示す図である。
【図１４】ノック周波数帯強度が外乱ノイズ周波数帯強度より大きい信号が、外乱ノイズ用フィルタ処理部を通過した後の外乱ノイズ周波数帯強度を示す図である。
【図１５】ノック周波数帯強度と、外乱ノイズ周波数帯強度とが、同程度の場合におけるノック周波数帯強度及び外乱ノイズ周波数帯強度を示す図である。
【図１６】ノック周波数帯強度と、外乱ノイズ周波数帯強度とが、同程度の信号がノック用フィルタ処理部を通過した後のノック周波数帯強度を示す図である。
【図１７】ノック周波数帯強度と、外乱ノイズ周波数帯強度とが、同程度の信号が、外乱ノイズ用フィルタ処理部を通過した後の外乱ノイズ周波数帯強度を示している。
【図１８】外乱ノイズ周波数帯強度が、ノック周波数帯強度より大きい場合におけるノック周波数帯強度及び外乱ノイズ周波数帯強度を示す図である。
【図１９】外乱ノイズ周波数帯強度が、ノック周波数帯強度より大きい信号が、ノック用フィルタ処理部を通過した後のノック周波数帯強度を示す図である。
【図２０】乱ノイズ周波数強度が、ノック周波数帯強度より大きい信号が、外乱ノイズ用フィルタ処理部を通過した後の外乱ノイズ周波数帯強度を示す図である。
【図２１】第１実施形態に係る内燃機関の制御装置における処理手順を示すフローチャートである。
【図２２】第１実施形態に係る補正要否フラグテーブルの例を示す図である。
【図２３】第１実施形態に係るノック周波数帯強度補正テーブルの一例を示す図である。
【図２４】第１実施形態に係るノック周波数帯強度補正部の詳細な機能ブロック図である。
【図２５】第１実施形態に係るバックグラウンドレベル算出部の詳細な機能ブロック図である。
【図２６】第１実施形態に係るノック判定処理部の詳細な機能ブロック図である。
【図２７】第２実施形態に係る制御プログラムの構成を示す図である。
【図２８】第２実施形態に係る内燃機関の制御装置における処理手順を示すフローチャートである。
【発明を実施するための形態】
【００１７】
次に、本発明を実施するための形態（「実施形態」という）について、適宜図面を参照しながら詳細に説明する。
【００１８】
［本実施形態の概要］
本実施形態は、クランク角度センサと、ノックセンサから得られる情報を基に、ノックが発生するクランク角度の区間であるノック判定角度区間のノックセンサ信号を取得する。
そして、ノック角度判定区間での、ノック周波数帯強度に対する外乱ノイズ周波数帯強度の影響度を算出し、この影響度を基にノック周波数帯強度もしくはノック判定のためのスライスレベル（閾値）を補正する。
そこで、本実施形態では、まず、ノック周波数帯強度の補正を行う第１実施形態から説明する。第１実施形態では、まず、内燃機関の全体構成を説明する。その後、制御装置であるＥＣＵ（Electric Control Unit）の説明を行い、本実施形態における制御を行うためのプログラム構成を説明する。
その後、前記した影響度（本実施形態では強度比率差分）の考え方を説明し、フローチャートの説明を行う。
続いて、スライスレベルを補正する第２実施形態の説明を行う。
【００１９】
［第１実施形態］
（内燃機関）
図１は、第１実施形態に係る内燃機関の全体構成を示す図である。
図１に示す内燃機関Ｚは、例えば、火花点火式燃焼を実施する自動車用４気筒ガソリンエンジンを示したものである。
内燃機関（エンジン）Ｚは、エアフローセンサ２０と、電子制御スロットル２と、吸気温度センサ１５と、吸気圧センサ２１とを備えている。
エアフローセンサ２０は、吸気管６における吸入空気量を計測する。
電子制御スロットル２は、吸気管６の圧力を調整する。
吸気温度センサ１５は、吸入空気温度を計測する。
吸気圧センサ２１は、吸気管６内の圧力を計測する。
【００２０】
また、内燃機関Ｚは、シリンダヘッド７において、気筒Ｃ（Ｃ１〜Ｃ４）と、インジェクタ３と、点火システム４とを備えている。
インジェクタ３は、各吸気管６と連通する気筒Ｃ（Ｃ１〜Ｃ４）毎に、各気筒Ｃの燃焼室１２の内部に燃料を噴射する燃料噴射装置であり、筒内直接噴射用インジェクタとも称される。
点火システム４は、混合気に着火するためのシステムであり、シグナルジェネレータ、イグニッションコイル、ディストリビュータ、点火プラグ等を有する。
【００２１】
さらに、内燃機関Ｚは、冷却水温度センサ１４と、可変バルブ５とを備えている。
冷却水温度センサ１４は、シリンダヘッド７に備えられ、内燃機関Ｚの冷却水温度を計測する。
可変バルブ５は、気筒Ｃ内に流入する吸入ガスを調整する吸気バルブ可変装置５ａと、気筒Ｃ内から排出される排気ガスを調整する排気バルブ可変装置５ｂとから構成される。ここで、可変バルブ５は、吸気バルブ可変装置５ａや排気バルブ可変装置５ｂの位相角を検出する位相角センサ（不図示）を有している。ＥＣＵ１は、可変バルブ５（特に吸気バルブ可変装置５ａや排気バルブ可変装置５ｂ）の位相角を調整することにより、気筒Ｃ１から気筒Ｃ４までの各気筒Ｃの吸気量や、ＥＧＲ（Exhaust Gas Recirculation）量等を調整する。
【００２２】
また、内燃機関Ｚのインジェクタ３には、当該インジェクタ３に高圧燃料を供給するための高圧燃料ポンプ１７が燃料配管を介して接続されている。また、燃料配管には、燃料圧力を計測する燃料圧力センサ１８が設けられている。
さらに、内燃機関Ｚのクランク軸（不図示）には、その回転角度を算出するクランク角度センサ１３が設けられている。そして、内燃機関Ｚのシリンダブロック（不図示）には、内燃機関Ｚの振動を検出するノックセンサ（ノック計測部）２２が設けられている。
【００２３】
また、内燃機関Ｚは、三元触媒１０と、空燃比センサ９と、排気温度センサ１１とを備えている。
三元触媒１０は、排気管８に設置され、排気を浄化する。
空燃比センサ９は、三元触媒１０の上流側で排気の空燃比を検出する。
排気温度センサ１１は、三元触媒１０の上流側で排気温度を計測する。
また、符号２３は、カムシャフトである。
【００２４】
そして、内燃機関Ｚは、当該内燃機関Ｚの燃焼状態を制御するＥＣＵ（Engine Control Unit)）１を備えている。ＥＣＵ１は、エアフローセンサ２０、空燃比センサ９、冷却水温度センサ１４、吸気温度センサ１５等から信号を取得する。さらに、ＥＣＵ１は、排気温度センサ１１、クランク角度センサ１３、燃料圧力センサ１８、吸気圧センサ２１、点火システム４、可変バルブ５、ノックセンサ２２等から信号を取得する。また、ＥＣＵ１は、アクセルペダルの踏み込み量、すなわちアクセル開度を検出するアクセル開度センサ１６からの信号も取得する。
このうち、本実施形態において重要な信号は、クランク角度センサ１３及びノックセンサ２２から取得される信号である。
【００２５】
ＥＣＵ１は、アクセル開度センサ１６から得られる信号に基づいて内燃機関Ｚへの要求トルクを算出する。なお、ＥＣＵ１の詳細については後記する。
また、ＥＣＵ１は、クランク角度センサ１３から得られる信号に基づいて内燃機関Ｚの回転速度を算出する。さらに、ＥＣＵ１は、前記した各種センサの出力から得られる信号に基づいて内燃機関Ｚの運転状態を算出する。そして、ＥＣＵ１は、空気流量、燃料噴射量、点火時期、スロットル開度、可変バルブ５の作動量、燃料圧力等といった内燃機関Ｚに関する主要な作動量を算出する。
【００２６】
ＥＣＵ１で算出された燃料噴射量は、開弁パルス信号に変換されてインジェクタ３に送信される。また、ＥＣＵ１で算出された点火時期で点火されるように生成された点火信号が、ＥＣＵ１から点火システム４へ送信される。さらに、ＥＣＵ１で算出されたスロットル開度は、スロットル駆動信号として電子制御スロットル２に送信される。そして、ＥＣＵ１で算出された可変バルブ５の作動量は、可変バルブ駆動信号として可変バルブ５へ送信される。さらに、ＥＣＵ１で算出された燃料圧力は、高圧燃料ポンプ駆動信号として高圧燃料ポンプ１７へ送信される。
【００２７】
ＥＣＵ１からインジェクタ３へ送信された開弁パルス信号に基づいて、吸気管６から吸気バルブ（不図示）を介して燃焼室１２内に流入した空気に対しインジェクタ３から所定量の燃料が噴射される。これにより、混合気が形成される。
【００２８】
また、燃焼室１２内に形成された混合気は、点火信号に基づいて所定の点火時期で点火システム４の点火プラグ（不図示）から発生される火花により爆発する。そして、この爆発による燃焼圧によりピストン（不図示）が押し下げられて内燃機関Ｚの駆動力が発生される。爆発後の排気ガスは、排気管８を介して三元触媒１０に送出され、排気ガスの排気成分が三元触媒１０内で浄化されて外部へ排出される。
【００２９】
（ＥＣＵ）
図２は、第１実施形態に係るＥＣＵの構成を示す図である。
ＥＣＵ１は、主に、ＣＰＵ（Central Processing Unit）１０１と、ＲＡＭ（Random Access Memory）１０２と、ＲＯＭ（Read Only Memory）１０３と、入力回路１０４と、入力ポート及び出力ポートからなる入出力ポート１０５とを有している。
ＣＰＵ１０１は、ＲＯＭ１０３に格納されている制御プログラムに従って演算処理を行う。
ＲＡＭ１０２には、制御プログラムに従って算出された各アクチュエータの作動量を示す値が格納される。
ＲＯＭ１０３には、算出処理内容を記述した制御プログラムが格納されている。
なお、図２において、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３及び入出力ポート１０５の間の太矢印はバスを示している。
【００３０】
また、ＥＣＵ１は、制御プログラムによる算出処理に従って、電子制御スロットル２を駆動する電子制御スロットル駆動回路１０６と、インジェクタ３を駆動するインジェクタ駆動回路１０７とを有する。さらに、ＥＣＵ１は、点火システム４を制御する点火制御回路１０８と、吸気バルブ可変装置５ａや排気バルブ可変装置５ｂを制御する可変バルブ駆動回路１０９を有する。そして、ＥＣＵ１は、高圧燃料ポンプ１７を駆動する高圧燃料ポンプ駆動回路１１０を有する。
なお、ＥＣＵ１内の駆動回路は、これらに限定されない。
【００３１】
さらに、図２に示すように、ＥＣＵ１の入力回路１０４には、エアフローセンサ２０、点火システム４、空燃比センサ９、排気温度センサ１１、クランク角度センサ１３等の出力信号が入力される。さらに、入力回路１０４には、冷却水温度センサ１４、吸気温度センサ１５、アクセル開度センサ１６、燃料圧力センサ１８、吸気圧センサ２１、ノックセンサ２２等の出力信号が入力される。なお、入力回路１０４に入力される入力信号はこれらに限定されない。入力回路１０４に入力された各センサの信号は、入出力ポート１０５内の入力ポートに送信され、ＲＡＭ１０２に保管された後、制御プログラムによって演算処理される。
【００３２】
制御プログラムによって算出された各アクチュエータの作動量を示す値（以降、作動量と適宜称する）は、ＲＡＭ１０２に保管された後、入出力ポート１０５内の出力ポートに送信される。その後、作動量は電子制御スロットル駆動回路１０６、インジェクタ駆動回路１０７、点火制御回路１０８、可変バルブ駆動回路１０９、高圧燃料ポンプ駆動回路１１０等を介して電子制御スロットル２、インジェクタ３、点火システム４、吸気バルブ可変装置５ａ、排気バルブ可変装置５ｂ、高圧燃料ポンプ１７等に送信される。
【００３３】
ここで、前記したように、ＥＣＵ１の入力回路１０４には、ノックセンサ２２の出力信号（ノックセンサ信号）が入力されている。ＥＣＵ１は、入力されたノックセンサ信号に基づいて、制御プログラムが内燃機関Ｚのノックを検出する。ＥＣＵ１は、内燃機関Ｚのノック発生を検出した場合、制御プログラムは、点火制御回路１０８を介して点火システム４へ制御信号を送信してその点火時期を制御する。
【００３４】
次に、ＥＣＵ１による内燃機関Ｚのノック検出方法について、図３〜図２６を参照して概説する。
（制御プログラム）
図３は、第１実施形態に係る制御プログラムの構成を示す図である。
なお、図３における各部２０１〜２０９の処理の詳細は後記する。
制御プログラムは、信号選択部２００、高速ＡＤＣ(Analog Digital Converter)２０１、ノック用フィルタ処理部２０２、ノック周波数帯強度算出部２０３を有している。さらに、制御プログラムは、外乱ノイズ用フィルタ処理部２０４、外乱ノイズ周波数帯強度算出部２０５を有している。また、制御プログラムは、ノック周波数帯強度補正部（影響度算出部、補正部）２０６、バックグラウンドレベル算出部（バックグラウンドノイズ算出部）２０７、ノック判定処理部２０８、ノック回避制御部２０９を有している。
以下、各部の動作の概要を順に説明する。各部の処理の詳細は後記する。
【００３５】
内燃機関Ｚの振動をノックセンサ２２（図１参照）が電圧信号に変換してＥＣＵ１へ送信する。すると、信号選択部２００が、クランク角度センサ１３からの信号を判定し、クランク角度センサ１３の信号がノック判定角度区間を示している場合のみ、ノックセンサ２２の信号（ノックセンサ信号）を高速ＡＤＣ２０１へ出力する。
高速ＡＤＣ２０１は、入力されたノックセンサ信号を高速ＡＤ変換する。ノック発生時、内燃機関Ｚに数十ｋＨｚの高周波数成分がノックセンサ信号に重畳する。従って、高速ＡＤＣ２０１では、サンプリング定理により検出したい周波数の倍以上の周波数でＡＤ変換することが望ましい。例えば、２０ｋＨｚまでの振動を検出したい場合、高速ＡＤＣ２０１は、４０ｋＨｚ（＝２５μｓ）以上のサンプリング周波数で高速ＡＤ変換する。
【００３６】
高速ＡＤＣ２０１によってＡＤ変換された信号は、ノック用フィルタ処理部２０２と、外乱ノイズ用フィルタ処理部２０４にそれぞれ出力される。
【００３７】
ノック用フィルタ処理部２０２は、ノック発生時に特徴的な周波数強度が発生する周波数帯（ノック周波数帯）において、それぞれのノック周波数帯の周波数成分を抽出する。なお、ノック周波数帯は、実験等で予めわかっているものである。ノック用フィルタ処理部２０２は、ノック周波数帯の周波数成分を抽出するため、ノック周波数帯毎にバンドパスフィルタ（ノック用バンドパスフィルタ）を設定している。ノック周波数帯がｎ個ある場合、ノック用バンドパスフィルタもＦＬｓ１〜ＦＬｓｎのｎ個を設定する。ノック用バンドパスフィルタＦＬｓ１〜ＦＬｓｎは、それぞれのフィルタの中心周波数をＦｓ１、Ｆｓ２…、Ｆｓｎとし、中心周波数から所定の周波数帯の周波数成分のみを通過させるフィルタである。その結果、ノック用フィルタ処理部２０２は、各ノック周波数帯の周波数成分を抽出することができる。
【００３８】
ノック周波数帯強度算出部２０３は、ノック用フィルタ処理部２０２によって抽出された各ノック周波数帯の周波数成分を用いて、各ノック周波数帯の周波数強度であるノック周波数帯強度をそれぞれ算出する。ノック周波数帯強度算出部２０３による算出結果は、ノック周波数帯強度補正部２０６へ出力される。
【００３９】
外乱ノイズ用フィルタ処理部２０４では、外乱ノイズ発生時に特徴的な周波数強度が発生する周波数帯（外乱ノイズ周波数帯）において、外乱ノイズ周波数帯の周波数成分を抽出する。なお、外乱ノイズ周波数帯は実験等で予めわかっているものである。外乱ノイズ用フィルタ処理部２０４は、外乱ノイズ周波数帯の周波数成分を抽出するため、外乱ノイズ用バンドパスフィルタを設定する。ここで、外乱ノイズ用バンドパスフィルタは、ノック周波数帯と隣接する周波数帯について設定する。ノック周波数帯と隣接する外乱ノイズ周波数帯がｍ個ある場合、バンドパスフィルタもＦＬｎ１〜ＦＬｎｍのｍ個設定する。ノック周波数帯と隣接しない周波数帯に外乱ノイズ用のバンドパスフィルタを設定しても、この周波数帯の外乱ノイズはノック周波数帯強度に影響を与えないため、補正には使われない。従って、処理負荷やリソースを低減させる意味でも不要な外乱ノイズ用バンドパスフィルタの設定を行わない方が望ましい。
なお、周波数強度とは、バンドパスフィルタ内の周波数特性において、最も強度の高い部分のことである。多くの場合、中心周波数における強度と一致する。
【００４０】
その結果、外乱ノイズ用フィルタ処理部２０４は、ノック周波数帯強度に影響を与える外乱ノイズ周波数帯の周波数成分のみを抽出することができる。
【００４１】
外乱ノイズ周波数帯強度算出部２０５は、外乱ノイズ用フィルタ処理部２０４によって抽出された各外乱ノイズ周波数帯の周波数成分を用いて、各外乱ノイズ周波数帯の周波数強度である外乱ノイズ周波数帯強度をそれぞれ算出する。外乱ノイズ周波数帯強度算出部２０５による算出結果は、ノック周波数帯強度補正部２０６へ出力される。
【００４２】
ノック周波数帯強度補正部２０６は、各ノック周波数帯の周波数強度において、外乱ノイズの影響を受けていると考えられる周波数帯に対して外乱ノイズ影響分を補正する。なお、ノック周波数帯強度補正部２０６は、外乱ノイズの影響を受けていない周波数帯のノック周波数帯強度について、外乱ノイズ補正は行わない。
【００４３】
外乱ノイズの影響を受けていると考えられるノック周波数帯強度において、外乱ノイズ影響を補正しないままノック制御を行うと、ノック非発生時にも関わらず、ノック発生と誤検出されてしまうおそれがある。この結果、内燃機関Ｚ（図１参照）の出力低下や燃費悪化が生じるおそれがある。このため、ノック周波数帯強度が、外乱ノイズの影響を受けている場合、外乱ノイズ影響分を補正することによってノック制御を正しく実施する。
ノック周波数帯強度補正部２０６による算出結果は、バックグラウンドレベル算出部２０７と、ノック判定処理部２０８に出力される。
【００４４】
バックグラウンドレベル算出部２０７は、ノック非発生時のバックグラウンドレベルＢＧＬを各ノック周波数帯でそれぞれ算出する。バックグラウンドレベルＢＧＬは内燃機関Ｚの各部品の動作に伴い発生するバックグラウンドノイズ（メカニカルノイズ）の大きさである。バックグラウンドノイズの主な原因として、シリンダの回転によるものが多い。各ノック周波数帯のバックグラウンドレベルＢＧＬの算出方法は、後記するように加重平均処理等で行えばよい。バックグラウンドレベル算出部２０７については後記する。
バックグラウンドレベル算出部２０７による算出結果は、ノック判定処理部２０８へ出力される。
【００４５】
ノック判定処理部２０８は、ノック周波数帯強度補正部２０６による算出結果と、バックグラウンドレベル算出部２０７による算出結果と、予め設定されているスライスレベル（閾値）を用いて内燃機関Ｚにノックが発生しているか否かを判定する。判定方法としては、ノック周波数帯強度補正部２０６による算出結果と、バックグラウンドレベル算出部２０７による算出結果との差分もしくは比率を、運転条件毎にあらかじめ設定してあるスライスレベルと比較する。そして、比較の結果、スライスレベルよりも大きい場合、ノック判定処理部２０８は、ノックが発生していると判定する。
【００４６】
ノック回避制御部２０９は、ノック判定処理部２０８においてノックが発生していると判定された場合、ノック回避のための制御を実施する。ノック回避方法としては点火時期を遅角側に動かす方法や、燃料噴射量を増量する等が挙げられるが、燃費・排気影響が少なく、応答性の速い点火時期の遅角化が一般的なノック回避方法である。
【００４７】
（バンドパスフィルタ特性）
図４は、バンドパスフィルタ特性を示す図である。
図４において、横軸は周波数を示し、縦軸はゲイン（ｄＢ）を示している。
バンドパスフィルタを構成する場合、中心周波数に対して信号の通過帯域が狭く、中心周波数帯の外側のゲインが低くなるよう設定する。これにより、バンドパスフィルタを通過した信号は中心周波数帯より外側のノイズ成分をほぼ含むことがないため、シグナル（ノック周波数帯強度）とノイズの比率であるＳＮ比が高い。なお、ここでの「ノイズ」とは、外乱ノイズに限らず、一般的な意味でのノイズである。そのため、ノック用フィルタ処理部２０２（図３参照）及び外乱ノイズ用フィルタ処理部２０４（図３参照）では、このようなバンドパスフィルタを用いて各周波数帯の周波数強度を得ることが望ましい。
【００４８】
（ノック周波数帯強度と外乱ノイズ周波数帯強度）
図５は、ノック周波数帯強度と外乱ノイズ周波数帯強度が発生する周波数帯の一例を示す図である。
図５の上段及び下段とも、横軸は周波数を示し、縦軸は周波数強度を示している。なお、図５の上段及び下段において、周波数軸は一致している。
なお、以下では、中心周波数がＦｓｎのノック周波数帯をノック周波数帯Ｆｓｎと称する。同様に、中心周波数がＦｎｍの外乱ノイズ周波数帯を外乱ノイズ周波数帯Ｆｎｍと称する。
図５の上段は、ノック周波数帯強度の特性を示している。図５の上段では、Ｆｓ１〜Ｆｓ５の周波数帯にノック特有の周波数強度ピークが現れている例を示している。
【００４９】
また、図５の下段は、外乱ノイズの周波数強度特性を示している。図５の下段では、Ｆｎ１〜Ｆｎ３の周波数帯に外乱ノイズ特有の周波数強度ピークが現れている例を示している。
本来バックグラウンドノイズが、図５の上段及び下段における全周波数帯に含まれるが、バックグラウンドノイズはノックとは無関係に発生するものであるため、説明の簡素化のため図５の上段及び下段では図示省略している。
【００５０】
図５の例では、ノック周波数帯Ｆｓ２と外乱ノイズ周波数帯Ｆｎ１とが隣接した周波数帯に存在している。すなわち、ノック周波数帯Ｆｓ２と外乱ノイズ周波数帯Ｆｎ１とは、互いに影響し合っている。
一方、外乱ノイズ周波数帯のＦｎ２やＦｎ３は、いずれのノック周波数帯からも離れた位置に存在しているため、これらの外乱ノイズがノック周波数帯強度に影響することはない。
そのため、外乱ノイズ影響を受けているノック周波数帯Ｆｓ２のノック周波数帯強度は外乱ノイズ影響を補正する。一方、外乱ノイズ影響を受けていないノック周波数帯Ｆｓ１，Ｆｓ３〜Ｆｓ５については外乱ノイズ補正を実施しなくてもよい。
【００５１】
（ノック周波数帯強度と外乱ノイズ周波数帯強度）
次に、図６〜図２０を参照して、ノック周波数帯Ｆｓ２と外乱ノイズ周波数帯Ｆｎ１の関係について説明する。適宜、図３を参照する。
なお、図６〜図２０において、横軸は周波数を示し、縦軸は周波数強度を示している。また、図６〜図２０において、周波数軸は一致している。
【００５２】
＜強度比率差分について＞
まず、図６〜図８を参照して、外乱ノイズがノック周波数帯強度に影響する一例を説明する。
図６は、ノック判定角度区間にノックのみが発生し、外乱ノイズが含まれていない場合における、ノック周波数帯のノック周波数帯強度を示す図である。
ノック周波数帯Ｆｓ２のノック周波数帯強度は、ノック周波数Ｆｓ２を中心とするバンドパスフィルタＦＬｓ２で構成されている。図６に示す周波数成分は、ノック用フィルタ処理部２０２通過後の周波数成分に相当する。
【００５３】
ノック発生時に現れる周波数強度ピークの一つがノック周波数Ｆｓ２に現れるため、ノック周波数Ｆｓ２における周波数強度は高く、ノック周波数Ｆｓ２から遠ざかるほど周波数強度は低くなる。そして、バンドパスフィルタの通過帯域外の周波数強度はほぼ得られない。
【００５４】
図７は、ノックが発生しておらず、ノック判定角度区間に外乱ノイズが含まれている場合における、外乱ノイズ周波数帯の外乱ノイズ周波数帯強度を示す図である。参考として、バンドパスフィルタＦＬｓ２を併記している。
外乱ノイズ周波数帯Ｆｎ１の外乱ノイズ周波数帯強度は、外乱ノイズ周波数Ｆｎ１を中心とするバンドパスフィルタＦＬｎ１で構成されている。なお、図７に示す周波数成分は、外乱ノイズ用フィルタ処理部２０４通過後の周波数成分に相当する。
外乱ノイズ発生時に現れる周波数強度ピークの一つが外乱ノイズ周波数Ｆｎ１に現れるため、外乱ノイズ周波数Ｆｎ１における周波数強度は高く、外乱ノイズ周波数Ｆｎ１から遠ざかるほど周波数強度は低くなる。そして、バンドパスフィルタＦＬｎ１の通過帯域外の周波数強度はほぼ得られない。
【００５５】
図８は、ノックが発生し、さらにノック判定角度区間に外乱ノイズが含まれている場合におけるノック周波数帯強度を示す図である。
図８では、図６に示すノック周波数帯Ｆｓ２のノック周波数帯強度と、図７に示す外乱ノイズ周波数帯強度がともに発生している状態が示されている。
ノック周波数帯Ｆｓ２と外乱ノイズ周波数帯Ｆｎ１は隣接しており、一部の周波数帯が重なり合っているため、重なり合った部分においては、外乱ノイズ周波数帯強度がノック周波数帯強度に重畳する。そのため、実際にノックで発生している周波数強度は図６に示す大きさであるが、外乱ノイズ影響を受けると図８に示すように、一部が実際よりも大きい周波数強度となってしまう。
【００５６】
図８ではノック判定角度区間にノックが発生している場合を例にして記載しているが、その場合、実際は微小なノックであるにも関わらず、外乱ノイズ影響を受けることで過大なノックと誤検知してしまうおそれが生じる。このため、発生したノック周波数帯強度の大小によりノック回避制御量（例えば点火時期の遅角量）を変更する場合、必要以上に点火時期を遅角させてしまい燃費の悪化に繋がるおそれがある。
【００５７】
また、ノック判定角度区間にノックが発生していなかった場合において、外乱ノイズの影響（図７参照）により、ノックが発生していると誤検知し、本来は実行されなくてもよいノック回避制御が実行されてしまうおそれがある。このような制御が実行されてしまうと、燃費の悪化に繋がるおそれがある。
【００５８】
そのため、ノックが正しく検知されるために、ノック周波数帯に影響を与える外乱ノイズ周波数帯について、ノック発生有無を問わず補正する。
【００５９】
ここで、本実施形態において、ノック周波数帯強度の補正係数を決定する際に使用される強度比率差分ΔＲＫＤについて説明する。
これ以降の説明では、図５において、外乱ノイズの影響をうけるノック周波数帯Ｆｓ２に注目し、この周波数強度（ノック周波数帯強度）をＳＫＤ２とする。また、図５において、ノック周波数帯Ｆｓ２に影響を与える外乱ノイズ周波数帯Ｆｎ１の周波数強度（外乱ノイズ周波数帯強度）をＮＫＤ１とする。
【００６０】
ここで、ノック周波数帯強度ＳＫＤ２と前記外乱ノイズ周波数帯強度ＮＫＤ１のうち、周波数強度の大きい方を割合１００％とし、該周波数強度に対する、もう一方の周波数強度の比率を求める。この比率を周波数強度比率と称する。本実施形態の例では、周波数強度比率には、ノック周波数帯強度ＳＫＤ２に関するノック周波数強度比率ＲＳＫＤ２と、外乱ノイズ周波数帯強度ＮＫＤ１に関する外乱周波数帯強度比率ＲＮＫＤ１とがある。
【００６１】
つまり、ノック周波数帯強度ＳＫＤ２の方が、外乱ノイズ周波数帯強度ＮＫＤ１より大きい場合、ノック周波数帯強度ＳＫＤ２を１００％とし、このノック周波数帯強度ＳＫＤ２に対する外乱ノイズ周波数帯強度ＮＫＤ１の比率をｘ（０≦ｘ＜１００）％とする。
例えば、ノック周波数帯強度ＳＫＤ２の方が外乱ノイズ周波数帯強度ＮＫＤ１よりも大きく、外乱ノイズ周波数帯強度ＮＫＤ１がノック周波数帯強度ＳＫＤ２の半分の大きさであるとする。このような場合、ノック周波数帯強度比率ＲＳＫＤ２及び外乱ノイズ周波数帯強度比率ＲＮＫＤ１は、以下のようになる。
ＲＳＫＤ２＝１００％
ＲＮＫＤ１＝５０％
【００６２】
また、外乱ノイズ周波数帯強度ＮＫＤ１の方が、ノック周波数帯強度ＳＫＤ２より大きい場合、外乱ノイズ周波数帯強度ＮＫＤ１を１００％とし、外乱ノイズ周波数帯強度ＮＫＤ１に対するノック周波数帯強度ＳＫＤ２の比率をｘ（０≦ｘ＜１００）％とする。
例えば、外乱ノイズ周波数帯強度ＮＫＤ１の方がノック周波数帯強度ＳＫＤ２よりも大きく、ノック周波数帯強度ＳＫＤ２が外乱ノイズ周波数帯強度ＮＫＤ１の半分の大きさであるとする。このような場合、ノック周波数帯強度比率ＲＳＫＤ２及び外乱ノイズ周波数帯強度比率ＲＮＫＤ１は、以下のようになる。
ＲＳＫＤ２＝５０％
ＲＮＫＤ１＝１００％
【００６３】
そして、以下の式（１）に示すように、ノック周波数帯強度比率ＲＳＫＤ２から外乱ノイズ周波数帯強度比率ＲＮＫＤ１を引いた差分を強度比率差分ΔＲＫＤとする。
【００６４】
ΔＲＫＤ＝ＲＳＫＤ２−ＲＮＫＤ１  ・・・  （１）
【００６５】
ここで、−１００％≦ΔＲＫＤ≦＋１００％である。
強度比率差分ΔＲＫＤは、ノック周波数に対して、どのくらい外乱ノイズ周波数が影響しているのかを示す評価値である。つまり、ノック周波数に対する外乱周波数の影響度である。
強度比率差分ΔＲＫＤが＋側であれば、ノック周波数帯強度ＳＫＤ２の方が、外乱ノイズ周波数帯強度ＮＫＤ１よりも大きいことを示している。そして、強度比率差分ΔＲＫＤが＋側に大きな値であればあるほど、ノック周波数帯強度ＳＫＤ２が外乱ノイズ周波数帯強度ＮＫＤ１よりも大きいことを示している。すなわち、外乱ノイズ周波数の影響が小さいことを示している。
【００６６】
また、強度比率差分ΔＲＫＤが−側であれば、外乱ノイズ周波数帯強度ＮＫＤ１の方が、ノック周波数帯強度ＳＫＤ２よりも大きいことを示している。そして、強度比率差分ΔＲＫＤが−側に小さな値であればあるほど、外乱ノイズ周波数帯強度ＮＫＤ１がノック周波数帯強度ＳＫＤ２よりも大きいことを示している。すなわち、外乱ノイズ周波数の影響が大きいことを示している。
【００６７】
＜外乱ノイズ周波数帯強度≒０＞
次に、図９〜図１１を参照して、外乱ノイズ周波数帯強度が、ほぼ０である例について説明する。
図９は、ノックが発生し、ノック判定角度区間に外乱ノイズ非混入の場合における、それぞれの周波数強度を示す図である。
ノック周波数帯強度は、発生しているノック周波数帯強度の中心周波数はＦｓ２である。また、外乱ノイズは、ほぼ非混入であるため外乱ノイズ周波数帯強度はほとんど出ていない。
そして、ノック用フィルタ処理部２０２を通過した後のノック周波数帯強度は図１０のようになる。同様に、外乱ノイズ用フィルタ処理部２０４を通過した後の外乱ノイズ周波数帯強度は図１１のようになる。
【００６８】
図１０は、図９における条件の信号がノック用フィルタ処理部を通過した後のノック周波数帯強度を示す図である。
ここで、ノック周波数帯Ｆｓ２と外乱ノイズ周波数帯Ｆｎ１は隣接しており、一部の周波数帯が重なり合っている。しかし、外乱ノイズが非混入であるため、図１０に示すように、外乱ノイズの影響はほぼ受けない。
【００６９】
図１１は、図９における条件の信号が外乱ノイズ用フィルタ処理部を通過した後の外乱ノイズ周波数帯強度を示す図である。
ちなみに、ノック周波数帯強度ＳＫＤ２及び外乱ノイズ周波数帯強度ＮＫＤ１は、ノック周波数及び外乱ノイズ周波数が互いに重畳した周波数特性において、それぞれのバンドパスフィルタ中でのピーク値を指している。
【００７０】
図９〜図１１に示す例では、ノック周波数帯強度比率ＲＳＫＤ２＝１００％、外乱ノイズ周波数帯強度比率ＲＮＫＤ１＝０％であるので、強度比率差分ΔＲＫＤは＋１００％となる。
前記したように、強度比率差分ΔＲＫＤはノック周波数帯強度比率ＲＳＫＤ２から外乱ノイズ周波数帯強度比率ＲＮＫＤ１を引いた差分である。
強度比率差分ΔＲＫＤ＝＋１００％は、外乱ノイズの影響が、ほぼ０であることを示している。このような場合、ノック周波数帯強度の補正は実行されない。
【００７１】
また、外乱ノイズ周波数帯強度比率ＲＮＫＤ１が０％ではなく、ノック周波数帯強度比率ＲＳＫＤ２＝１００％、かつ、外乱ノイズ周波数帯強度比率ＲＮＫＤ１＝１０％であったとすると、強度比率差分ΔＲＫＤは＋９０％となる。
強度比率差分ΔＲＫＤ＝＋９０％は、外乱ノイズの影響が、非常に小さいことを示している。このような場合、ノック周波数帯強度の補正は小さくてよい。
強度比率差分ΔＲＫＤが＋９０％以上の場合のように、外乱ノイズの影響が小さい場合、ノック周波数帯強度の補正は実行されないようにするのが望ましい。なお、ノック周波数帯強度の補正が実行されない強度比率差分ΔＲＫＤは＋９０％以上に限らない。
【００７２】
（ノック周波数帯強度＞外乱ノイズ周波数帯強度）
次に、図１２〜図１４を参照して、外乱ノイズが混入し、かつ、ノック周波数帯強度に対する外乱ノイズの影響が図９〜図１１に示す例より大きく、補正量も図９〜図１１に示す例より大きい例を説明する。
図１２は、ノック周波数帯強度が、外乱ノイズ周波数帯強度より大きい場合におけるノック周波数帯強度及び外乱ノイズ周波数帯強度を示す図である。
図１２において、ノック周波数帯強度及び外乱ノイズ周波数帯強度は重畳されていない状態が示されている。
図１２に示すように、発生しているノック周波数帯強度の中心周波数はＦｓ２である。そして、外乱ノイズが混入しているため外乱ノイズ周波数帯強度も、ノック周波数帯強度ほどではないが、外乱ノイズ周波数帯Ｆｎ１を中心周波数として発生している。
このような場合、ノック用フィルタ処理部２０２を通過した後のノック周波数帯強度は図１３のようになる。また、外乱ノイズ用フィルタ処理部２０４を通過した後の外乱ノイズ周波数帯強度は図１４のようになる。
【００７３】
図１３は、図１２における条件の信号が、ノック用フィルタ処理部を通過した後のノック周波数帯強度を示す図である。ノック周波数帯Ｆｓ２と外乱ノイズ周波数帯Ｆｎ１は隣接しており、一部の周波数帯が重なり合っているため、ノック周波数帯強度は、外乱ノイズの影響を受け（外乱ノイズが重畳され）、一部で、本来のノック周波数帯強度よりも大きい周波数強度となっている。
【００７４】
図１４は、図１２における条件の信号が、外乱ノイズ用フィルタ処理部を通過した後の外乱ノイズ周波数帯強度を示す図である。
前記したように、ノック判定角度区間に外乱ノイズが混入しており、かつ、ノック周波数帯Ｆｓ２と外乱ノイズ周波数帯Ｆｎ１は隣接している。そのため、外乱ノイズはノックの影響を受けて（周波数強度が重畳されて）、一部で、本来の大きな外乱ノイズ周波数帯強度よりも大きい周波数強度となっている。
【００７５】
図１２〜図１４に示す例は、ノック周波数帯強度が外乱ノイズ周波数帯強度よりも大きい場合である。例えば、ノック周波数帯強度比率ＲＳＫＤ２＝１００％、外乱ノイズ周波数帯強度比率ＲＮＫＤ１＝５０％とすると、強度比率差分ΔＲＫＤは＋５０％となる。強度比率差分ΔＲＫＤ＝＋５０％は、ノック周波数帯強度ＳＫＤ２が外乱ノイズ周波数帯強度ＮＫＤ１に比べて大きいことを示している。しかし、図９〜図１１に示す例と比べると外乱ノイズ影響を受けているため、ノック周波数帯強度の補正量は図９〜図１１に示す例より大きくする。
【００７６】
＜ノック周波数帯強度≒外乱ノイズ周波数帯強度＞
次に、図１５〜図１７を参照して、ノック周波数帯強度に対する外乱ノイズ周波数帯強度の影響が図１２〜図１４の場合より大きく、補正量も図１２〜図１４の場合より大きい例について説明する。
図１５は、ノック周波数帯強度と、外乱ノイズ周波数帯強度とが、同程度の場合におけるノック周波数帯強度及び外乱ノイズ周波数帯強度を示す図である。
図１５において、ノック周波数帯強度及び外乱ノイズ周波数帯強度は重畳されていない状態が示されている。
図１５に示すように、発生しているノック周波数帯強度の中心周波数はＦｓ２である。そして、このノック周波数の一部は、中心周波数Ｆｎ１の外乱ノイズの影響を受けている。また、発生している外乱ノイズ周波数帯強度の中心周波数はＦｎ１である。この外乱ノイズ周波数帯強度の一部はノックの影響を受けている。この場合、ノック用フィルタ処理部２０２を通過した後のノック周波数帯強度は図１６のようになる。また、外乱ノイズ用フィルタ処理部２０４を通過した後の外乱ノイズ周波数帯強度は図１７のようになる。
【００７７】
図１６は、図１５における条件の信号がノック用フィルタ処理部を通過した後のノック周波数帯強度を示す図である。
前記したように、ノック周波数帯Ｆｓ２と外乱ノイズ周波数帯Ｆｎ１は隣接している。そのため、ノック周波数帯Ｆｓ２と、外乱ノイズ周波数帯Ｆｎ１は、一部の周波数帯が重複している。そのため、ノック周波数帯Ｆｓ２のノック周波数帯強度は、外乱ノイズの影響を受け、一部が本来のノック周波数帯強度よりも大きい周波数強度となっている。
【００７８】
図１７は、図１５における条件の信号が、外乱ノイズ用フィルタ処理部を通過した後の外乱ノイズ周波数帯強度を示している。
前記したように、ノック周波数帯Ｆｓ２と外乱ノイズ周波数帯Ｆｎ１は隣接している。そのため、外乱ノイズ周波数帯強度はノックの影響を受けて、一部が本来の外乱ノイズ周波数帯強度よりも大きな周波数強度となっている。
【００７９】
図１５〜図１７に示す例では、ノック周波数帯強度と外乱ノイズ周波数帯強度がほぼ同程度の場合を示している。このような場合、例えば、ノック周波数帯強度比率ＲＳＫＤ２＝１００％、外乱ノイズ周波数帯強度比率ＲＮＫＤ１＝８０％とすると、強度比率差分ΔＲＫＤは＋２０％となる。強度比率差分ΔＲＫＤ＝＋２０％は、ノック周波数帯強度ＳＫＤ２が外乱ノイズ周波数帯強度ＮＫＤ１に比べて大きいが、図１２〜図１４の場合と比べると外乱ノイズ影響をより一層強く受けていることを示している。このため、ノック周波数帯強度の補正量を図１２〜図１４の場合よりさらに大きくする。
【００８０】
＜ノック周波数帯強度＜外乱ノイズ周波数帯強度＞
次に、図１８〜図２０を参照して、ノック周波数帯強度に対する外乱ノイズの影響が図１５〜図１７の場合より大きく、補正量も図１５〜図１７の場合より大きい例について説明する。すなわち、図１８〜図２０は、外乱ノイズ周波数帯強度が、ノック周波数帯強度より大きい場合について説明する。
図１８は、外乱ノイズ周波数帯強度が、ノック周波数帯強度より大きい場合におけるノック周波数帯強度及び外乱ノイズ周波数帯強度を示す図である。
図１８において、ノック周波数帯強度及び外乱ノイズ周波数帯強度は重畳されていない状態が示されている。
図１８に示すように、ノック周波数帯強度の中心周波数はＦｓ２である。そして、ノック周波数帯Ｆｓ２のノック周波数帯強度は、外乱ノイズの影響を受けている。
一方、外乱ノイズの中心周波数はＦｎ１である。そして、外乱ノイズ周波数帯Ｆｎ１の外乱ノイズ周波数帯強度の一部はノックの影響を受けている。
このような場合、ノック用フィルタ処理部２０２を通過した後のノック周波数帯強度は図１９のようになる。また、外乱ノイズ用フィルタ処理部２０４を通過した後の外乱ノイズ周波数帯強度は図２０のようになる。
【００８１】
図１９は、図１８における条件の信号が、ノック用フィルタ処理部を通過した後のノック周波数帯強度を示す図である。
前記したように、ノック周波数帯Ｆｓ２と外乱ノイズ周波数帯Ｆｎ１は隣接している。そのため、ノック周波数帯Ｆｓ２及び外乱ノイズ周波数帯Ｆｎ１は、互いに一部の周波数帯が重なり合っている。そのため、ノック周波数帯強度ＳＫＤ２は、外乱ノイズの影響を受け、一部が本来のノック周波数帯強度よりも大きい周波数強度となっている。
【００８２】
図２０は、図１８における条件の信号条件が、外乱ノイズ用フィルタ処理部を通過した後の外乱ノイズ周波数帯強度を示す図である。
前記したように、ノック周波数帯Ｆｓ２と外乱ノイズ周波数帯Ｆｎ１は隣接している。そのため、外乱ノイズ周波数帯強度ＮＫＤ１はノックの影響を受けて、一部が本来の周波数強度よりも大きな周波数強度となっている。
【００８３】
図１８〜図２０に示す例では、ノック周波数帯強度よりも外乱ノイズ周波数帯強度の方が大きい場合を示している。例えば、ノック周波数帯強度比率ＲＳＫＤ２＝５０％、外乱ノイズ周波数強度比率ＲＮＫＤ１＝１００％とすると、強度比率差分ΔＲＫＤは−５０％となる。強度比率差分ΔＲＫＤ＝−５０％は、ノック周波数帯強度ＳＫＤ２は外乱ノイズ周波数強度ＮＫＤ１に比べて小さく、図１５〜図１７の場合と比べると外乱ノイズ影響をより一層強く受けていることを示している。そのため、ノック周波数帯強度の補正量は図１５〜図１７の場合よりさらに大きくする。
【００８４】
以上の説明から、強度比率差分ΔＲＫＤとノック周波数帯強度の補正量の関係は、強度比率差分ΔＲＫＤがプラス側に大きいほど補正量は小さく、また、マイナス側に大きいほど補正量は大きくする。
【００８５】
（処理手順）
次に、図２１〜図２６を参照して、本実施形態に係るＥＣＵにおける処理手順を説明する。
図２１は、第１実施形態に係る内燃機関の制御装置における処理手順を示すフローチャートである。
図２１の処理は、内燃機関Ｚが「ＯＮ」となると実行開始される。
まず、信号選択部２００が、クランク角度センサ１３の信号に基づいて、ノックセンサ２２から入力される信号を選択して、高速ＡＤＣ２０１へ出力する。つまり、信号選択部２００は、クランク角度センサ１３の信号がノック判定角度区間である場合のみ、ノックセンサ２２の信号を高速ＡＤＣ２０１へ出力する。
そして、高速ＡＤＣ２０１は、ノック判定を行うノック判定角度区間において、ノックセンサ２２からノックセンサ信号を読み込む（Ｓ１０１）。
ノック判定角度区間は、予め設定されたクランク角度の区間（例えば上死点からクランク角度９０ｄｅｇ進むまでの間等）とする。ノック判定角度区間であるか否かは、クランク角度センサ１３から取得される信号を基に判定されればよい。
あるいは、エンジン回転数や負荷によって、ノック判定角度区間の開始位置やクランク角度判定区間を可変にしてもよい。
【００８６】
そして、高速ＡＤＣ２０１は、読み込んだノックセンサ信号に対し高速ＡＤ変換を行う（Ｓ１０２）。高速ＡＤ変換されたノックセンサ信号は、ノック周波数帯強度及び外乱ノイズ周波数帯強度の算出のため、ノック用フィルタ処理部２０２及び外乱ノイズ用フィルタ処理部２０４へ送られる。
【００８７】
次に、ノック用フィルタ処理部２０２がノックセンサ信号に対して、ノック用フィルタ処理を行う（Ｓ１０３）。
ノック用フィルタ処理部２０２には、ノック発生時に特徴的な周波数強度ピークを得るため、ｎ個のノック用バンドパスフィルタＦＬｓ１〜ＦＬｓｎが設けてある。なお、ノック用バンドパスフィルタＦＬｓ１〜ＦＬｓｎは、実験で予めわかっているノック周波数帯を基に予め設定されている。
例えばノック用バンドパスフィルタＦＬｓ１の場合、中心周波数をＦｓ１(ｋＨｚ)とする所定の周波数帯域内の周波数強度の信号のみを抽出するフィルタである。その他のノック用バンドパスフィルタＦＬｓ２〜ＦＬｓｎも同様の特性である。ノック用フィルタ処理部２０２は、各ノック用バンドパスフィルタＦＬｓ１〜ＦＬｓｎを用いて、ノックセンサ信号から各周波数帯のノック周波数帯強度ＳＫＤ１〜ＳＫＤｎの信号を抽出する。
【００８８】
そして、ノック周波数帯強度算出部２０３が、ノック用バンドパスを通過したノックセンサ信号の周波数強度を算出するノック周波数帯強度算出を行う（Ｓ１０４）。
【００８９】
また、外乱ノイズ用フィルタ処理部２０４がノックセンサ信号に対して、外乱ノイズ用フィルタ処理を行う（Ｓ１０５）。
外乱ノイズ用フィルタ処理部２０４は、外乱ノイズ発生時に特徴的な外乱ノイズ周波数帯強度のピークを有する外乱ノイズ用バンドパスフィルタが設定されている。外乱ノイズ周波数帯強度のピークを有する周波数帯がｍ個ある場合、ｍ個の外乱ノイズ用バンドパスフィルタＦＬｎ１〜ＦＬｎｍが設定されている。なお、外乱ノイズ用バンドパスフィルタＦＬｎ１〜ＦＬｎｍは、実験で予めわかっている外乱ノイズ周波数帯を基に予め設定されている。
例えば、外乱ノイズ用バンドパスフィルタＦＬｎ１の場合、中心周波数をＦｎ１(ｋＨｚ)とする所定の周波数帯域内の周波数成分のみの信号を抽出するバンドパスフィルタである。その他の外乱ノイズ用バンドパスフィルタＦＬｎ２〜ＦＬｎｍも同様の特性である。外乱ノイズ用フィルタ処理部２０４は、各外乱ノイズ用バンドパスフィルタを用いて、ノックセンサ信号から各周波数帯の外乱ノイズ周波数帯強度ＮＫＤ１〜ＮＫＤｍの信号を抽出する。
【００９０】
そして、外乱ノイズ周波数帯強度算出部２０５が、外乱ノイズ用バンドパスを通過したノックセンサ信号の周波数強度を算出する外乱ノイズ周波数帯強度算出を行う（Ｓ１０６）。
なお、ステップＳ１０３〜Ｓ１０４と、ステップＳ１０５〜Ｓ１０６は並列処理で行われる。
【００９１】
次に、ノック周波数帯強度補正部２０６が、ステップＳ１０４で算出された各ノック周波数帯のノック周波数帯強度ＳＫＤ１〜ＳＫＤｎについて、ＲＯＭ１０３（図２参照）に格納されている補正要否フラグテーブル（図２２参照）を基に補正要否フラグｆＨＯＳを読み込む（Ｓ１１１）。
補正要否フラグｆＨＯＳは、外乱ノイズの影響による補正を行うか否かを識別するためのフラグである。
ノック発生時に特徴的なノック周波数帯強度のピークが現れるノック周波数帯と、外乱ノイズ発生時に特徴的な外乱ノイズ周波数帯強度ピークが現れる外乱ノイズ周波数帯は、内燃機関Ｚの機種毎に異なる。そのため、メーカは、予め実験等で外乱ノイズ影響を受けやすい周波数帯を特定しておく。そして、各ノック周波数帯のノック周波数帯強度ＳＫＤ１〜ＳＫＤｎのそれぞれに対して補正要否フラグｆＨＯＳを予め割り当てておく。補正要否フラグｆＨＯＳ割り当ての様子を図２２に示す。
【００９２】
図２２は、第１実施形態に係る補正要否フラグテーブルの例を示す図である。
補正要否フラグテーブルは、ＲＯＭ１０３（図２参照）に格納されているものである。
図２２では、どのノック周波数帯強度に対して補正が行われ、どのノック周波数帯強度に対して補正が行われないかを示している。
ノック周波数帯強度ＳＫＤ１〜ＳＫＤｎにはそれぞれ補正要否フラグｆＨＯＳ１〜ｆＨＯＳｎが割り当てられている。そして、補正要否フラグ＝「１」の場合、該当するノック周波数帯強度に影響する外乱ノイズ周波数帯強度が示されている。
【００９３】
図２２の例では、ノック周波数帯強度ＳＫＤ１〜ＳＫＤｎのうち、ＳＫＤ２のみ補正要否フラグｆＨＯＳ２＝「１」となっている。そして、その他のノック周波数帯強度は補正要否フラグ＝「０」となっている。これは、外乱ノイズ影響を受けるノック周波数帯強度は、ＳＫＤ２のみであることを示している。言い換えれば、図２２に示す補正要否フラグｆＨＯＳからノック周波数帯強度ＳＫＤ２のみ外乱ノイズ影響を補正すればよいことが分かる。そして、図２２に示す補正要否フラグｆＨＯＳにおいて、この場合、影響する外乱ノイズ周波数帯強度はＮＫＤ１であることが示されている。つまり、外乱ノイズ周波数帯強度ＮＫＤ１の周波数帯は、ノック周波数帯強度ＳＫＤ２の周波数帯に隣接しているので、ノック周波数帯強度ＳＫＤ２の周波数帯は、外乱ノイズ周波数帯強度ＮＫＤ１における周波数帯の影響を受ける。そのため、ノック周波数帯強度ＳＫＤ２が補正されることを、図２２の補正要否フラグｆＨＯＳは示している。
前記したように、補正要否フラグｆＨＯＳは、実験等を基に予め作成されている。
【００９４】
図２１の説明に戻る。
ステップＳ１１１の後、ノック周波数帯強度補正部２０６が、補正要否フラグｆＨＯＳ＝１となっているノック周波数帯強度ＳＫＤと、それに対応した外乱ノイズ周波数帯強度ＮＫＤを読み込む。ここで、ノック周波数帯強度ＳＫＤは、ノック周波数帯強度ＳＫＤ１〜ＳＫＤｎを一般化したものである。同様に、外乱ノイズ周波数帯強度ＮＫＤは、外乱ノイズ周波数帯強度ＮＫＤ１〜ＮＫＤｍを一般化したものである。
【００９５】
そして、ノック周波数帯強度補正部２０６は、ノック周波数帯強度比率ＲＳＫＤを算出し（Ｓ１１２）、外乱ノイズ周波数帯強度比率ＲＮＫＤを算出する（Ｓ１１３）。
【００９６】
そして、ノック周波数帯強度補正部２０６は、前記した式（１）に従って強度比率差分ΔＲＫＤを算出する（Ｓ１１４）。
次に、ノック周波数帯強度補正部２０６は、強度比率差分ΔＲＫＤをキーとして、図２３で後記するノック周波数帯強度補正テーブルを参照し、補正係数ＣＯＨＯＳを検索する（Ｓ１１５）。
【００９７】
ここで、補正係数ＣＯＨＯＳは、ノック周波数帯強度ＳＫＤに含まれる外乱ノイズの影響を補正するための補正係数である。
補正係数ＣＯＨＯＳにおいて、補正が全くかからない場合はＣＯＨＯＳ＝「１」である。また、補正する場合において、補正係数ＣＯＨＯＳは「１」よりも小さい数値（０＜ＣＯＨＯＳ＜１）となる。その理由は、補正係数ＣＯＨＯＳは、ノック周波数帯強度ＳＫＤから外乱ノイズ影響を除外するための補正係数であるので、ノック周波数帯強度ＳＫＤを小さくする側に補正するためである。
【００９８】
（ノック周波数帯強度補正テーブル）
図２３は、第１実施形態に係るノック周波数帯強度補正テーブルの一例を示す図である。
ノック周波数帯強度補正テーブルは、ＲＯＭ１０３（図２参照）に格納されているものである。
強度比率差分ΔＲＫＤの値が、マイナス側に大きくなるほど、補正係数ＣＯＨＯＳの値が０に近づき、補正量が大きくなるように（ノック周波数帯強度ＳＫＤが小さくなるように）設定されている。逆に、強度比率差分ΔＲＫＤの値が、プラス側に大きくなるほど、補正係数ＣＯＨＯＳの値は１に近づき、補正量としては小さくなるよう（ノック周波数帯強度ＳＫＤが大きくなるよう）に設定されてある。
図９〜図２０で説明したように、強度比率差分ΔＲＫＤの値がプラスの方向に大きい値であればあるほど、ノック周波数帯強度が外乱ノイズ周波数帯強度より大きいことを示している。つまり、外乱ノイズの影響が小さいことを示している。
また、強度比率差分ΔＲＫＤの値がマイナスの方向に大きい値であればあるほど、外乱ノイズ周波数帯強度がノック周波数帯強度より大きいことを示している。つまり、外乱ノイズの影響が大きいことを示している。
そのため、強度比率差分ΔＲＫＤの値が、マイナス側に大きくなるほど、補正量が大きくなるように設定される。また、強度比率差分ΔＲＫＤの値が、プラス側に大きくなるほど、補正量が小さくなるように設定される。
【００９９】
図２１の説明に戻る。
ノック周波数帯強度補正部２０６は、ステップＳ１１５で検索した補正係数ＣＯＨＯＳと、ノック周波数帯強度ＳＫＤ（ノック判定基準量）とを乗算することで、補正されたノック周波数帯強度である補正後ノック周波数帯強度ＨＳＫＤを算出する（Ｓ１１６）。
【０１００】
（ノック周波数帯強度補正部）
ここで、ノック周波数帯強度補正部２０６の詳細について説明する。
図２４は、第１実施形態に係るノック周波数帯強度補正部の詳細な機能ブロック図である。
ノック周波数帯強度補正部２０６は、周波数強度比率算出部４０１、強度比率差分算出部（影響度算出部）４０２、補正係数検索部４０３及び補正ノック周波数帯強度算出部４０４を有している。
周波数強度比率算出部４０１は、ノック周波数帯強度ＳＫＤ、外乱ノイズ周波数帯強度ＮＫＤを読み込むとともに、補正要否フラグｆＨＯＳを読み込む（図２１のＳ１１１）。そして、周波数強度比率算出部４０１が、外乱ノイズの影響に対する補正を行うため、前記したように、ノック周波数帯強度と外乱ノイズ周波数帯強度の周波数強度比率ＲＳＫＤ、ＲＮＫＤをそれぞれ算出する（図２１のＳ１１２とＳ１１３）。
【０１０１】
その後、強度比率差分算出部４０２が、算出されたノック周波数帯強度比率ＲＳＫＤと外乱ノイズ周波数帯強度比率ＲＮＫＤとの差分（前記した式（１））により強度比率差分ΔＲＫＤを算出する（図２１のＳ１１４）。
そして、補正係数検索部４０３が、算出された強度比率差分ΔＲＫＤをキーとして、ノック周波数帯強度補正テーブル（図２３参照）を検索する（図２１のＳ１１５）。
続いて、補正ノック周波数帯強度算出部４０４が、処理対象となっているノック周波数帯強度ＳＫＤに補正係数ＣＯＨＯＳを乗算することで補正ノック周波数帯強度を算出する（図２１のＳ１１６）。
【０１０２】
図２１の説明に戻る。
次に、バックグラウンドレベル算出部２０７が、ノック周波数帯強度を用いて各周波数帯のバックグラウンドレベルＢＧＬを算出する（Ｓ１１７）。
前記したように、バックグラウンドレベルＢＧＬは内燃機関Ｚの各部品の動作に伴って発生するメカニカルノイズであり、エンジン回転数に関連するノイズに由来するものが多い。バックグラウンドレベルＢＧＬの算出については後記する。
【０１０３】
図２５は、第１実施形態に係るバックグラウンドレベル算出部の詳細な機能ブロック図である。
バックグラウンドレベル算出部２０７は、算出部５０１、前回強度記憶部５０２及びバックグラウンドレベル記憶部５０３を有する。
前回強度記憶部５０２では、前回処理時におけるノック周波数帯強度が格納されている。前回処理時に外乱ノイズの補正が行われた場合、前回強度記憶部５０２に格納されているノック周波数帯強度は補正ノック周波数帯強度となる。前回処理時に外乱ノイズの補正が行われていない場合、前回強度記憶部５０２に格納されているノック周波数帯強度は補正がなされていないノック周波数帯強度となる。
なお、前回処理時において、ノックが検出されていない場合、前回強度記憶部５０２には、ノック周波帯強度ＳＫＤ＝ＢＧＬとなっているノック周波数帯強度が格納される。すなわち、ノックが発生していない場合のノック周波数強度は、図６の山がない状態となる。
【０１０４】
バックグラウンドレベル記憶部５０３には、前回までのバックグラウンド算出の処理で算出されたバックグラウンドレベルＢＧＬが格納されている。
【０１０５】
算出部５０１は、（補正）ノック周波数帯強度（Ｈ）ＳＫＤの今回値が入力されると、ＲＯＭ１０３（図２参照）に格納されている前回ノック発生フラグｆＫＮＫを読み込む。前回ノック発生フラグｆＫＮＫは、前回の処理においてノックが検知された場合、「１」が格納され、前回の処理においてノックが検知されなかった場合、「０」が格納される。
そして、前回ノック発生フラグｆＫＮＫが「０」であった場合、算出部５０１は、バックグラウンドレベル記憶部５０３に格納されているバックグラウンドレベルＢＧＬに、前回強度記憶部５０２に格納されている前回処理時の（補正）ノック周波数帯強度を加重平均する。加重平均の割合は、例えば、前回処理時の（補正）ノック周波数帯強度：バックグラウンドレベルＢＧＬ＝１：３である。
算出部５０１は、加重平均した結果を新たなバックグラウンドレベルＢＧＬとしてノック判定処理部２０８へ出力するとともに、バックグラウンドレベル記憶部５０３を新たに算出されたバックグラウンドレベルＢＧＬで上書き保存する。
【０１０６】
前回ノック判定フラグｆＫＮＫが「１」であった場合、算出部５０１は、バックグラウンドレベル記憶部５０３に格納されているバックグラウンドレベルＢＧＬを、そのままノック判定処理部２０８へ出力し、バックグラウンドレベル記憶部５０３の更新を行わない。
【０１０７】
そして、バックグラウンドレベルＢＧＬを算出するための一連の処理が終了すると、（補正）ノック周波数帯強度（Ｈ）ＳＫＤの今回値を前回強度記憶部５０２に上書き保存する。
なお、バックグラウンドレベルＢＧＬはエンジン回転数によって値の大きさが変わる。そのため、バックグラウンドレベルＢＧＬ値の更新は、エンジン回転数が変わる毎に実行されてもよい。
なお、バックグラウンドレベルＢＧＬは、外乱ノイズ周波数帯が隣接しているか否かにかかわらず、ノック周波数帯毎に算出される。
【０１０８】
図２１の説明に戻る。
そして、ノック判定処理部２０８は、ノック判定におけるスライスレベルＳＬを読み込む（Ｓ１１８）。
スライスレベルＳＬは、予めエンジン回転数毎に設定されているものでる。
そして、ノック判定処理部２０８は、内燃機関Ｚにノックが発生しているか否かを判定する（Ｓ１２１）。
ノックの判定は、ステップＳ１１６で補正された各ノック周波数帯のノック周波数帯強度と、ステップＳ１１７で算出した各ノック周波数帯のバックグラウンドレベルＢＧＬと、ステップＳ１１８で読込んだスライスレベルＳＬを用いて行われる。具体的には、ノック判定処理部２０８は、ノック周波数帯強度からバックグラウンドレベルＢＧＬを引いた差分を各ノック周波数帯でそれぞれ算出する。そして、ノック判定処理部２０８は、算出された差分（バックグラウンドノイズの影響を除いたノック周波数帯強度）をそれぞれ加算する。この加算結果と、スライスレベルＳＬと比較する。スライスレベルＳＬ以上の値を示した場合、ノック判定処理部２０８は、ノックが発生していると判定し（Ｓ１２１→Ｙｅｓ）、ノック回避制御部２０９がノック回避制御を行う（Ｓ１２２）。
それぞれの差分（バックグラウンドノイズの影響を除いたノック周波数帯強度を加算した結果がスライスレベルＳＬ未満の値を示した場合、ノック判定処理部２０８はノックが発生していないと判定し（Ｓ１２１→Ｎｏ）、ＥＣＵ１はステップＳ１０１へ処理を戻す（ノック回避制御は実行されない）。
なお、図２１に示す処理は、内燃機関Ｚが「ＯＦＦ」となるまで実行され続ける。
【０１０９】
（ノック判定処理部）
図２６は、第１実施形態に係るノック判定処理部の詳細な機能ブロック図である。
ノック判定処理部２０８は、算出部６０１、スライスレベル検索部６０２及び判定部６０３を有する。
算出部６０１は、ノック周波数帯強度ＳＫＤ又は補正後ノック周波数帯強度ＨＳＫＤと、それぞれのノック周波数帯に対応するバックグラウンドレベルＢＧＬを読み込む。
そして、算出部６０１は、それぞれのノック周波数帯のノック周波数帯強度ＳＫＤ又は補正後ノック周波数帯強度ＨＳＫＤからそれぞれのノック周波数帯のバックグラウンドレベルＢＧＬを差し引く。これにより、算出部６０１は、メカニカルノイズ（バックグラウンドノイズ）を含まないノック発生時の振動によるノック周波数帯強度ＫＰｎ（ｎはノック周波数帯を示す添え字で、ＫＰ１〜ＫＰｎのｎ個あることを示す）を、それぞれのノック周波数帯で算出する。
また、スライスレベル検索部６０２は、現在のエンジン回転数を読み込む。そして、スライスレベル検索部６０２は、図示しないスライスレベルテーブルから、ノック判定におけるスライスレベルＳＬを検索する。ノック判定におけるスライスレベルＳＬとは、現在のエンジン回転数に対応するスライスレベルＳＬである。スライスレベルテーブルは、エンジン回転数と、スライスレベルＳＬとが対応付けられているテーブルである。
エンジン回転数毎のスライスレベルＳＬは実験等で予め設定されている値である。
【０１１０】
そして、判定部６０３は、算出部６０１が算出したノック周波数帯強度ＫＰｎの一部又はすべてを加算する。ここで、ノック周波数帯強度ＫＰｎの一部又はすべてを加算するとは、ノック周波数帯強度ＫＰｎのうち、強度の高い順に、ｉ個（１≦ｉ≦ｎ）のノック周波数帯強度ＫＰｎを加算するという意味である。ｉ＜ｎであれば、ノック周波数帯強度ＫＰｎの一部が加算され、ｉ＝ｎであれば、ノック周波数帯強度ＫＰｎのすべてが加算される。なお、ｉは、ユーザによって予め設定されている値である。
その後、判定部６０３は、ノック周波数帯強度ＫＰｎの加算結果と、スライスレベルＳＬを比較する。ノック周波数帯強度ＫＰｎの加算結果がスライスレベルＳＬ以上である場合、判定部６０３は、内燃機関Ｚにノックが発生していると判定する（図２１のステップＳ１２１で「Ｙｅｓ」）。逆に、ノック周波数ＫＰｎの加算結果がスライスレベルＳＬよりも小さい場合、判定部６０３は、内燃機関Ｚにノックが発生していない判定する（図２１のステップＳ１２１で「Ｎｏ」）。
【０１１１】
（ノック回避制御処理）
図２１のステップＳ１２２における回避制御処理として、ノック回避制御部２０９は点火時期を遅角側に変更する。点火時期の遅角量は常に一定でもよいし、発生したノックの強さに段階を設け、その段階に応じて遅角量を決めてもよい。
【０１１２】
このように、本実施形態によれば、ノック用フィルタ処理部２０２及び外乱ノイズ用フィルタ処理部２０４を用いることにより、ノック判定角度区間における外乱ノイズの影響に応じてノック周波数帯強度を補正する。これにより、内燃機関Ｚのノック発生をより一層精緻に検出することができる。また、ノック発生の検出結果に基づいて点火時期を制御してノック回避制御を実施することにより、内燃機関Ｚの燃焼状態を、これまでよりさらに精緻に制御することができる。
【０１１３】
また、外乱ノイズ用フィルタ処理部２０４では、外乱ノイズ発生時に特徴的な周波数帯にバンドパスフィルタを設定する。しかし、外乱ノイズ発生時に特徴的な周波数帯を得るためには、外乱ノイズが発生している区間のノックセンサ信号を用いる。そのため、外乱ノイズ用バンドパスフィルタの設定の適合を実施する際には、外乱ノイズが発生するタイミングに同期して、ノックセンサ信号を外乱ノイズ用フィルタ処理部２０４に入力できるようにしておく。
本実施形態では、信号選択部２００が、クランク角度センサ１３の信号に基づいて、ノックセンサ信号を高速ＡＤＣ２０１に出力している。
他にも、例えば、外乱ノイズが燃料噴射弁の開閉弁時に生じることがわかっているなら、信号選択部２００は、噴射開始時期、噴射終了時期のノックセンサ信号を高速ＡＤＣ２０１に出力するようにしてもよい。また、外乱ノイズが吸排気弁の着座時の振動であることがわかっている場合、信号選択部２００は、吸排気弁の開閉タイミング時のノックセンサ信号を高速ＡＤＣ２０１に出力するようにしてもよい。
【０１１４】
本実施形態では、ノック周波数帯強度に対する外乱ノイズ周波数帯強度の影響度（強度比率差分）を基に補正量（補正係数）を決定し、該補正量を基にノック周波数帯強度を補正する。そして、補正されたノック周波数帯強度を基に、ノック判定が行われる。このような構成とすることで、外乱ノイズの影響を除外したノック判定を行うことでき、ノック判定の精度を向上させることができる。言い換えれば、外乱ノイズの混入時において、外乱ノイズの影響度に応じた適切なノック判定を行うことができる。特に、ノック周波数帯強度を補正してノック判定に用いることで、ノック周波数帯強度を適切な値とすることができ、ノック判定の精度を向上させることができる。
また、式（１）による強度比率差分を前記した影響度とすることにより、ノック周波数帯強度に対する外乱ノイズ周波数帯強度の影響度を定量化することができる。これにより、補正量（補正係数）の決定を定量的に行うことができる。
【０１１５】
また、図５、図２２に示すように、互いに隣接しているノック周波数帯と、外乱ノイズ周波数帯のみを影響度（強度比率差分）の算出に用いることで、外乱ノイズの影響がないノック周波数帯を処理から除外することができる。これにより、処理負荷を軽減することができる。
さらに、バックグラウンドレベルを算出し、このバックグラウンドレベルを補正ノック周波数帯強度から減算することにより、補正ノック周波数帯強度からバックグラウンドノイズの影響を除外することができる。これにより、さらにノック判定の精度を高めることができる。
【０１１６】
［第２実施形態］
次に、図２７及び図２８を参照して、本発明に係る第２実施形態における内燃機関の制御装置について説明する。
（制御プログラムの構成）
図２７は、第２実施形態に係る制御プログラムの構成を示す図である。図２７では、図３と異なる箇所について説明を行い、図３と同様の構成については、図３と同一の符号を付し、説明を省略する。
図２７に示す制御プログラムでは、図３におけるノック周波数帯強度補正部２０６の代わりにスライスレベル補正量算出部７０１が設けられている。
スライスレベル補正量算出部７０１は、補正要否フラグの検索、ノック周波数帯強度比率及び外乱ノイズ周波数帯強度比率の算出、強度比率差分の算出、強度比率差分を用いたノック周波数帯強度の算出までは、図３のノック周波数帯強度補正部２０６と同様の処理を行う。しかし、その後、スライスレベル補正量算出部７０１は、補正前のノック周波数帯強度と、補正後のノック周波数帯強度とを基に、スライスレベルの補正量であるスライスレベル補正量を算出することが、ノック周波数帯強度補正部２０６とは異なる。
【０１１７】
また、図２７において、ノック判定処理部２０８ａは、スライスレベル補正量算出部７０１が算出したスライスレベル補正量を基に、スライスレベルを補正する。
【０１１８】
（フローチャート）
図２８は、第２実施形態に係る内燃機関の制御装置における処理手順を示すフローチャートである。図２８において、図２１と同様の処理については、同一のステップ番号を付して説明を省略する。
なお、図２１において、ステップＳ１１１〜Ｓ１１６は、ノック周波数帯強度補正部２０６が行う処理であったが、図２８では、スライスレベル補正量算出部７０１がステップＳ１１１〜Ｓ１１６の処理を行う。
そして、ステップＳ１１６の後、スライスレベル補正量算出部７０１は、以下の式（２）からスライスレベル補正量ΔＳＬを算出する（Ｓ２０１）。
【０１１９】
ΔＳＬ＝ＳＫＤ−ＨＳＫＤ  ・・・  （２）
【０１２０】
式（２）において、ＳＫＤは、ステップＳ１０４で算出された補正前のノック周波数帯強度であり、ＨＳＫＤは、ステップＳ１１６で算出された補正後のノック周波数帯強度である。
なお、補正ノック周波数帯強度が複数存在する場合、式（２）で算出されたΔＳＬの平均値をΔＳＬとしてもよい。
【０１２１】
そして、ステップＳ１１８の後、ノック判定処理部２０８ａは、以下の式（３）により補正後スライスレベルＨＳＬを算出する（Ｓ２１１）。
【０１２２】
ＨＳＬ＝ＳＬ＋ΔＳＬ  ・・・  （３）
【０１２３】
式（３）において、ＳＬはステップＳ１１８で読み込まれたスライスレベル（ノック判定基準量）であり、ΔＳＬはステップＳ２０１で算出されたスライスレベル補正量である。
そして、ステップＳ１２１では、補正前のノック周波数帯強度の一部又はすべてを加算し、平均値をとったものと、補正スライスレベルＨＳＬを比較する。
【０１２４】
第２実施形態によれば、スライスレベルを補正することにより、補正量が一律となり、処理概念がシンプルとなる。このように処理概念がシンプルとなることにより、バグの修正等を効率的に行うことができる。
【０１２５】
本発明は前記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、前記した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明したすべての構成を有するものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【０１２６】
なお、第１及び第２実施形態では、バックグラウンドレベル算出部２０７がノック判定処理部２０８の前段に設置されている（図３及び図２７を参照）が、これに限らず、ノック判定処理部２０８の後段に設置されてもよい。
このようにした場合、バックグラウンドレベル算出部２０７の処理は以下のようになる。
ノック判定処理部２０８でノックが検出された場合、バックグラウンドレベル算出部２０７が、（補正）ノック周波数帯強度（Ｈ）ＳＫＤの今回値と、過去のバックグラウンドレベルＢＧＬを加重平均する。そして、バックグラウンドレベル算出部２０７は、加重平均の結果を新たなバックグラウンドレベルＢＧＬとしてバックグラウンドレベル記憶部５０３に上書き保存する。
ノック判定処理部２０８でノックが検出されなかった場合、バックグラウンドレベル算出部２０７はなにも処理を行わない。
【０１２７】
また、前記した各構成、機能、各部２００〜２０９，４０１〜４０４，５０１〜５０２，６０１〜６０３，７０１，２０８ａ、前回強度記憶部５０２等は、それらの一部又はすべてを、例えば集積回路で設計すること等によりハードウェアで実現してもよい。また、図２に示すように、前記した各構成、機能等は、ＣＰＵ等のプロセッサがそれぞれの機能を実現するプログラムを読み込んで、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、ＨＤ（Hard Disk）に格納すること以外に、メモリや、ＳＳＤ（Solid State Drive）等の記録装置、又は、ＩＣ（Integrated Circuit）カードや、ＳＤ（Secure Digital）カード、ＤＶＤ（Digital Versatile Disc）等の記録媒体に格納することができる。
また、各実施形態において、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしもすべての制御線や情報線を示しているとは限らない。実際には、ほとんどすべての構成が相互に接続されていると考えてよい。
【符号の説明】
【０１２８】
１      ＥＣＵ（制御装置）
１３    クランク角度センサ
２２    ノックセンサ（ノック計測部）
２００  信号選択部
２０１  ノック用フィルタ処理部
２０３  ノック周波数帯強度算出部
２０４  外乱ノイズ用フィルタ処理部
２０５  外乱ノイズ周波数帯強度算出部
２０６  ノック周波数帯強度補正部（影響度算出部、補正部）
２０７  バックグラウンドレベル算出部（バックグラウンドノイズ算出部）
２０８，２０８ａ  ノック判定処理部（判定部）
２０９  ノック回避制御部
４０１  周波数強度比率算出部
４０２  強度比率差分算出部（影響度算出部）
４０３  補正係数検索部
４０４  補正ノック周波数帯強度算出部
５０１  算出部
５０２  前回強度記憶部
６０１  算出部
６０２  スライスレベル検索部
６０３  判定部
７０１  スライスレベル補正量算出部（補正部）
Ｚ      内燃機関
【図１】
2018003631.tif 000003
【図２】
2018003631.tif 000004
【図３】
2018003631.tif 000005
【図４】
2018003631.tif 000006
【図５】
2018003631.tif 000007
【図６】
2018003631.tif 000008
【図７】
2018003631.tif 000009
【図８】
2018003631.tif 000010
【図９】
2018003631.tif 000011
【図１０】
2018003631.tif 000012
【図１１】
2018003631.tif 000013
【図１２】
2018003631.tif 000014
【図１３】
2018003631.tif 000015
【図１４】
2018003631.tif 000016
【図１５】
2018003631.tif 000017
【図１６】
2018003631.tif 000018
【図１７】
2018003631.tif 000019
【図１８】
2018003631.tif 000020
【図１９】
2018003631.tif 000021
【図２０】
2018003631.tif 000022
【図２１】
2018003631.tif 000023
【図２２】
2018003631.tif 000024
【図２３】
2018003631.tif 000025
【図２４】
2018003631.tif 000026
【図２５】
2018003631.tif 000027
【図２６】
2018003631.tif 000028
【図２７】
2018003631.tif 000029
【図２８】
2018003631.tif 000030