内燃機関の振動波形を検出するノッキングセンサと、前記内燃機関のクランク角度を検出するクランク角度センサと、前記内燃機関の振動波形から特定周波数の振動レベルを抽出する特定周波数抽出手段と、所定のクランク角度範囲における前記特定周波数の振動レベルのうちの最大値である第1のピーク値および前記第1のピーク値が現れたときのクランク角度を抽出するピーク信号抽出手段と、前記内燃機関に備えられた電気的または機械的な作動部材が作動することに起因して前記特定周波数に現れるノイズの振動レベルが記憶されるノイズレベル記憶手段と、前記作動部材の作動タイミングに基づいて、前記ノイズ振動のピーク値であるノイズピーク値が現れると予想されるクランク角度を推定するノイズ出現タイミング推定手段と、前記第1のピーク値が現れたときのクランク角度と前記ノイズピーク値が現れると予想されるクランク角度とが一致していなかった場合には前記第1のピーク値に基づいて第2のピーク値を算出し、前記第1のピーク値が現れたときのクランク角度と前記ノイズピーク値が現れると予想されるクランク角度とが一致していた場合には前記第1のピーク値と前記ノイズピーク値とに基づいて第2のピーク値を算出するノイズ除去手段と、前記第2のピーク値を平均化したバックグラウンドレベルBGLを算出するBGL算出手段と、前記第2のピーク値と前記バックグラウンドレベルとに基づいてノッキング判定しきい値を算出するしきい値算出手段と、前記第2のピーク値と前記ノッキング判定しきい値とに基づいてノッキングの発生有無を判定するノッキング判定手段と、前記ノッキング判定手段によりノッキングが発生していると判定されたときに、前記第2のピーク値と前記ノッキング判定しきい値と前記バックグラウンドレベルとに基づいてノッキング強度を算出するノッキング強度算出手段と、前記ノッキング強度算出手段により算出されたノッキング強度に基づいて点火時期のノッキングリタード量を算出するリタード量算出手段と、前記リタード量算出手段により算出されたノッキングリタード量に基づいて点火時期を補正する点火時期補正手段とを備えたことを特徴とする内燃機関の制御装置。前記ノイズ除去手段は、前記第1のピーク値が現れたときのクランク角度と前記ノイズピーク値が現れると予想されるクランク角度との差分に基づいて、前記ノイズピーク値を補正するためのノイズレベル補正係数を算出すると共に、前記第1のピーク値と前記ノイズピーク値と前記ノイズレベル補正係数とに基づいて第2のピーク値を算出することを特徴とする請求項1に記載の内燃機関の制御装置。前記作動部材が燃料噴射弁である場合において、前記ノイズレベル記憶手段は、前記燃料噴射弁から内燃機関へ噴射供給される燃料の圧力値に応じて予め記憶されているノイズの振動レベルを補正するようにしたことを特徴とする請求項1または請求項2に記載の内燃機関の制御装置。前記作動部材が吸気弁または排気弁である場合において、前記ノイズレベル記憶手段は、内燃機関の回転速度または負荷に応じて、予め記憶されているノイズの振動レベルを補正するようにしたことを特徴とする請求項1または請求項2に記載の内燃機関の制御装置。前記ノイズレベル記憶手段は、内燃機関の気筒内での燃焼に起因して発生する振動レベルがないときのノイズの振動レベルを記憶させておくようにしたことを特徴とする請求項1~4のいずれか1項に記載の内燃機関の制御装置。ところが、特許文献1に記載されている方法では、ノッキング検出期間のうち、ノイズ振動の出現期間の振動波形がマスクされてしまう。そのために、ノッキングが発生したことによって生じる振動波形とノイズ振動の出現期間とが同じタイミングに重なっている場合は、ノッキングが発生したことによって生じる振動波形までもがマスクされ、ノッキングが検出できなくなるという問題点がある。また、特許文献2に記載されている方法では、検出された振動波形とノイズ振動の形状をパターン照合してノイズ振動の出現期間を特定するようにしている。そのために、ノッキングが発生したことによって生じる振動波形とノイズ振動の出現期間とが同じタイミングで重なっている場合には、波形のパターン照合によるノイズ振動の特定が困難となってノッキングの発生を誤判定したり、ノッキングの発生を正しく判定できたとしてもノイズ振動を含んだままのノッキング強度を算出してしまうという問題点がある。本発明は、このような問題点を解決するためになされたものであり、ノッキング検出期間内に燃料噴射弁、吸気弁、排気弁などの作動部材の作動に起因して発生するノイズ振動が重畳している場合であっても、ノイズによる振動レベルを適正に除去して、ノッキングの発生有無を精度よく判定すると共に、常に適正なノッキング強度を算出することができる内燃機関の制御装置を提供することを目的とする。本発明に係る内燃機関の制御装置は、内燃機関の振動波形を検出するノッキングセンサと、前記内燃機関のクランク角度を検出するクランク角度センサと、前記内燃機関の振動波形から特定周波数の振動レベルを抽出する特定周波数抽出手段と、所定のクランク角度範囲における前記特定周波数の振動レベルのうちの最大値である第1のピーク値および前記第1のピーク値が現れたときのクランク角度を抽出するピーク信号抽出手段と、内燃機関に備えられた電気的または機械的な作動部材が作動することに起因して前記特定周波数に現れるノイズの振動レベルが記憶されるノイズレベル記憶手段と、前記作動部材の作動タイミングに基づいて、前記ノイズ振動のピーク値であるノイズピーク値が現れると予想されるクランク角度を推定するノイズ出現タイミング推定手段と、前記第1のピーク値が現れたときのクランク角度と前記ノイズピーク値が現れると予想されるクランク角度とが一致していなかった場合には前記第1のピーク値に基づいて第2のピーク値を算出し、前記第1のピーク値が現れたときのクランク角度と前記ノイズピーク値が現れると予想されるクランク角度とが一致していた場合には前記第1のピーク値と前記ノイズピーク値とに基づいて第2のピーク値を算出するノイズ除去手段と、前記第2のピーク値を平均化したバックグラウンドレベルBGLを算出するBGL算出手段と、前記第2のピーク値と前記バックグラウンドレベルとに基づいてノッキング判定しきい値を算出するしきい値算出手段と、前記第2のピーク値と前記ノッキング判定しきい値とに基づいてノッキングの発生有無を判定するノッキング判定手段と、前記ノッキング判定手段によりノッキングが発生していると判定されたときに、前記第2のピーク値と前記ノッキング判定しきい値と前記バックグラウンドレベルとに基づいてノッキング強度を算出するノッキング強度算出手段と、前記ノッキング強度算出手段により算出されたノッキング強度に基づいて点火時期のノッキングリタード量を算出するリタード量算出手段と、前記リタード量算出手段により算出されたノッキングリタード量に基づいて点火時期を補正する点火時期補正手段とを備えたものである。本発明によれば、ノッキングが発生したことによって生じる振動のピーク値と、内燃機関に備えられた作動部材例えば、燃料噴射弁、吸気弁、排気弁などが作動することによって発生するノイズ振動のピーク値とが同じタイミングで重なってしまう場合であっても、作動部材の作動に起因するノイズ振動レベルを適正に除去してノッキングの発生有無を精度よく判定すると共に常に適正なノッキング強度を算出することが可能となる。実施の形態1.以下、図面に基づいて、本発明に係る内燃機関の制御装置についての好適な実施の形態を説明する。図1は、本発明に係る内燃機関とその制御装置の全体構成を示す図である。図1において、内燃機関であるエンジン1における気筒1aの燃焼室1bには、吸気弁1cと排気弁1dとピストン1eとが備えられており、更に、燃焼室1b内を臨むようにして、点火プラグ2と燃料噴射弁3とが備えられている。また、エンジン1には、吸気通路4に設けられた電子制御スロットル5により、吸入空気量が調整される。電子制御スロットル5は、スロットルバルブ5aと、これを駆動するモータ5b、スロットルバルブ5aの開度を検出するスロットル開度センサ5cとで構成されている。エンジン制御ユニット以下、ECUと称する。6は、アクセルペダル7の操作量を検出するアクセルポジションセンサ8の出力信号を取得して、モータ5bに制御信号を送り、スロットル開度センサ5cからのスロットルバルブ開度信号に基づいて、スロットルバルブ5aを適切な開度に制御する。ECU6は、アクセルポジションセンサ8、クランク角度センサ9、カム角度センサ10、ノッキングセンサ11、エアーフローセンサ12のほか、各種センサ類図示せずからの出力信号を取得して、点火時期や燃料噴射量などを決定する。そして、それらの各決定値に基づいて、燃料噴射弁3を駆動して燃料を燃焼室1b内に噴射供給し、点火プラグ2に接続された点火コイル13を駆動することによって、点火プラグ2のプラグギャップから火花を放電させる。エアクリーナ14によって塵やごみが除去された吸入空気は、エアーフローセンサ12で流量が計測された後、電子制御スロットル5を通過してサージタンク15へと導かれ、更に、サージタンク15から吸気弁1cを通って燃焼室1bに導入される。燃焼室1b内に導入された吸入空気と燃料噴射弁3から噴射された燃料とが混ざりあって混合気が形成され、点火プラグ2の火花放電によって混合気が着火されて燃焼する。混合気の燃焼圧力は、ピストン1eに伝えられてピストン1eを往復運動させる。ピストン1eの往復運動はコネテクティングロッド1hを介してクランク軸1fに伝えられ、クランク軸1fで回転運動に変換されて、エンジン1の出力として取り出される。燃焼後の混合気は排気ガスとなり、排気弁1dを通ってエキゾーストマニホールド16へ排出され、触媒17で浄化された後、大気中へ排出される。次に、ECU6内で実行されるノッキング抑制機能の概要について説明する。図2は、実施の形態1に係る内燃機関の制御装置において、ノッキング抑制機能を実現するための構成を示したブロック図である。図2において、ECU6へ入力されたノッキングセンサ11の出力信号は、A/D変換器図示せずによりアナログ信号からデジタル信号へ変換されて、特定周波数抽出手段100へ入力される。特定周波数抽出手段100では、デジタル化されたノッキングセンサ11の出力信号に対して、例えば、離散フーリエ変換DFTと呼ばれる演算処理が行なわれ、特定周波数成分のスペクトルが抽出される。なお、特定周波数とは、ノッキングの発生に起因した振動レベルを感度良く検出することができる周波数一般的には5~15kHz付近の周波数であり、実験等により予め選定されているものである。続いて、ピーク信号抽出手段101では、特定周波数抽出手段100により抽出された特定周波数成分のスペクトルとクランク角度センサ9により検出されるクランク角度とを時系列データとして、順次、バッファ図示せずに記憶する。そして、予め設定されているノッキング検出期間のクランク角度の範囲内で観測されたスペクトルの最大値とそのときのクランク角度とを、それぞれ、第1のピーク値Smaxおよび第1のピーク値Smaxが現れたときのクランク角度Sposとして抽出する。なお、前述したノッキング検出期間とは、ノッキングによる振動レベルを感度良く検出することができるクランク角度の範囲として、実験等により予め設定されているものであり、一般的には圧縮上死点TDCTopDeathCenter:ピストンがシリンダ内で最も上昇した位置からATDCAfterTopDeathCenterの60[deg]辺りのクランク角度の範囲が設定される。ノイズ除去手段102では、ピーク信号抽出手段101で抽出された第1のピーク値Smaxおよび第1のピーク値Smaxが現れたときのクランク角度Sposのほか、後述するノイズレベル記憶手段103に記憶されているノイズピーク値Nmaxと、後述するノイズ出現タイミング推定手段104において推定されたノイズピーク値Nmaxが現れると予想されるクランク角度Nposとが入力される。そして、第1のピーク値Smaxが現れたときのクランク角度Sposと、ノイズピーク値Nmaxが現れると予想されるクランク角度Nposとの比較が行われる。ここで、SposとNposとが一致していなかった場合すなわち、Spos≠Nposの場合には、下記の式1により、第1のピーク値Smaxを第2のピーク値PKLとして採用する。反対に、SposとNposとが一致していた場合すなわち、Spos=Nposの場合には、下記の式2により、第1のピーク値Smaxからノイズピーク値Nmaxを減算した値を第2のピーク値PKLとして採用する。PKL=Smax式1PKL=Smax-Nmax式2ノイズレベル記憶手段103では、特定周波数の振動レベルに現れるノイズ振動の発生幅やスペクトルの大きさといった振動レベルの分布情報が記憶されており、それらの分布情報のうち、ノイズ振動のスペクトルの最大値であるノイズピーク値Nmaxをノイズ除去手段102へ出力する。ノイズ出現タイミング推定手段104では、ノイズ源となる燃料噴射弁3、吸気弁1c、排気弁1dといったエンジン1の作動部材の作動タイミングのクランク角度が入力される。なお、これらのノイズ源となる作動部材の作動タイミングは、ECU6によって演算される制御値やECU6に入力される各種センサによる検出値が使用される。そして、ノイズ源となる作動部材の作動タイミングと、その作動タイミングからノイズ振動が特定周波数の振動スペクトルとして実際に現れるまでの伝播遅れを考慮して設定された遅れ時間とに基づいて、ノイズピーク値Nmaxが現れると予想されるクランク角度Nposを推定し、推定されたクランク角度Nposをノイズ除去手段102へ出力する。BGLバックグラウンドレベル算出手段105では、下記の式3により、最終的なピーク値である第2のピーク値PKLをフィルタリングして、第2のピーク値PKLの平均値に相当するバックグランドレベルBGLを算出する。ここで、k0はBGLを算出するための所定のフィルタ係数である。BGL=K0×BGLの前回演算値1-K0×PKL式3しきい値算出手段106では、第2のピーク値PKLとBGLとに基づいて標準偏差SGMを求め、下記の式4により、ノッキング判定用しきい値THDを算出する。ここで、K1はノッキング判定用しきい値THDを算出するための所定の係数である。THD=BGLK1×SGM式4ノッキング判定手段107では、第2のピーク値PKLとノッキング判定用しきい値THDとを比較して、ノッキングの発生有無を判定する。ここで、PKL>THDであった場合にはノッキングが発生していると判定し、反対に、PKL≦THDであった場合にはノッキングは発生していないと判定する。ノッキング強度算出手段108では、ノッキング判定手段107の判定結果に基づいて、ノッキングが発生しているときPKL>THDのときには、下記の式5により、ノッキング強度KNKを算出し、反対に、ノッキングが発生していないときPKL≦THDのときには、下記の式6により、ノッキング強度KNKを零に設定する。KNK=PKL-THD/BGL式5KNK=0式6リタード量算出手段109では、ノッキング強度KNKに応じて、ノッキングリタード量RTDが、下記の式7により算出される。ここで、K2はノッキング強度KNKをノッキングリタード量RTDへ変換するための所定の係数である。RTD=KNK×K2式7点火時期補正手段110では、エンジン1の運転状態に応じて決定された基本点火時期IGBが、下記の式8により、ノッキングリタード量RTDだけ遅角側へ変更されて、最終点火時期IGTが決定される。なお、ノッキングが発生しなくなれば、KNKが零となって、RTDも零になるため、最終点火時期IGTは基本点火時期IGBへ戻される。IGT=IGB-RTD式8以上に述べた一連の処理により、ノッキングが発生したことによって生じる振動のピーク値Smaxとノイズ振動のピーク値Nmaxとが同じタイミングに重なってしまった場合であっても、前述の式2により、ノイズピーク値Nmaxが除去されてノッキングの発生有無を精度よく判定できると共に、常に適正なノッキング強度を算出することが可能となる。なお、前述の各式は、実施の形態1の動作を説明するための一例に過ぎず、これらの式に限定されるものではない。次に、ノッキング検出期間内にノイズ振動が重畳していない場合におけるノッキング強度の算出過程について、図3、図4のタイミングチャートを用いて補足説明する。図3は、ノッキング検出期間内にノイズ振動が重畳していない場合における1燃焼サイクルのノッキング信号および特定周波数の振動レベルを示したタイミングチャートである。なお、図3aには、ノッキング未発生且つノイズ源なしの時のクランク角度に対するノッキング信号および特定周波数の振動レベルスペクトルの一例が示されており、図3bには、ノッキング発生且つノイズ源なしの時のクランク角度に対するノッキング信号および特定周波数の振動レベルの一例が示されている。また、図4は、特定周波数の振動レベルスベクトルを示したタイミングチャートである。なお、図4aには、ノッキング未発生且つノイズ源なしの時の、第2のピーク値PKL、バックグランドレベルBGLおよびノッキング判定用しきい値THDが、複数のサイクル期間の時系列として示されており、図4bには、ノッキング発生且つノイズ源なしの時の、第2のピーク値PKL、バックグランドレベルBGLおよびノッキング判定用しきい値THDが、複数のサイクル期間の時系列として示されている。ノッキングが発生していない場合の図3aでは、ノッキングセンサ11により検出されたノッキング信号に対し、1燃焼サイクル中のノッキング検出期間仮に、ATDC0[deg]~ATDC60[deg]の間とする。で検出されたノッキング信号がDFT処理されて特定周波数のスペクトルが算出される。そして、ノッキング検出期間のうち最大となるスペクトル図3aでは左から6番目のスペクトルであるMX1が第1のピーク値Smaxとして選択される。なお、図3ではノッキング検出期間内にノイズ振動が重畳していないため、第1のピーク値Smaxとして選択されたMX1は、そのまま第2のピーク値PKLとして採用される。そして、燃焼サイクル毎に採用された第2のピーク値PKLを、複数サイクル期間を通して表したものが図4aに示された第2のピーク値PKLである。そして、この第2のピーク値PKLに基づいて、前述の式3により、図4aに示されたバックグランドレベルBGLが算出され、第2のピーク値PKLとバックグランドレベルBGLとに基づいて、前述の式4により、図4aに示されたノッキング判定用しきい値THDが算出される。なお、図3aおよび図4aにおいては、ノッキングが発生していない状態であるため、第2のピーク値PKLはノッキング判定用しきい値THDを超えておらず、前述の式6により、ノッキング強度KNKには零が設定される。次に、ある時刻Tにおいて、ノッキングが発生した場合、ノッキング信号には、図3bに示すようなノッキング振動が現れ、特定周波数のスペクトルについてもノッキング振動による大きなスペクトル図3bでは左から4番目のスペクトルMX3が算出され、これが第1のピーク値Smaxとして選択される。なお、図3ではノッキング検出期間内にノイズ振動が重畳していないため、第1のピーク値Smaxとして選択されたMX3は、そのまま第2のピーク値PKLとして採用される。そして、図4bには、前述の図4aと同様、複数サイクル期間を通して示された第2のピーク値PKL、バックグランドレベルBGL、ノッキング判定用しきい値THDが示されているが、ノッキングが発生した時刻Tのときの第2のピーク値PKLがノッキング判定用しきい値THDを超えた時点で、ノッキングが発生していると判定されて、式5により、ノッキング強度KNKが算出される。次に、ノッキング検出期間内にノイズ振動が重畳している場合におけるノッキング強度の算出過程について、図5、図6のタイミングチャートを用いて補足説明する。図5は、ノッキング検出期間内にノイズ振動が重畳している場合における1燃焼サイクルのノッキング信号および特定周波数の振動レベルを示したタイミングチャートである。図5aには、ノッキング未発生且つノイズ源ありの時クランク角度に対するノッキング信号および特定周波数の振動レベルの一例が示されており、図5bには、ノッキング発生且つノイズ源ありの時クランク角度に対するノッキング信号および特定周波数の振動レベルの一例が示されている。なお、図5bでは、ノッキング振動とノイズ振動とが異なるタイミングで発生している場合が示されている。また、図6は、前述の図5に対応して算出された特定周波数の振動レベルスベクトルを示したタイミングチャートである。なお、図6aには、ノッキング未発生且つノイズ源ありでノイズ除去を実施した時の、第2のピーク値PKL、バックグランドレベルBGL、ノッキング判定用しきい値THDが、複数のサイクル期間の時系列データとして示されており、図6bには、ノッキング発生且つノイズ源ありでノイズ除去を実施した時の、第2のピーク値PKL、バックグランドレベルBGL、ノッキング判定用しきい値THDが、複数のサイクル期間の時系列データとして示されている。ノッキングが発生していない場合の図5aでは、ノッキング検出期間内にノイズ振動が重畳しているため、特定周波数のスペクトルについてもノイズ振動に起因したスペクトル図5aでは左から10番目のスペクトルMX2が算出されている。このように、ノイズに起因したスペクトルMX2が最も大きい場合、実施の形態1においては、MX2が現れたときのクランク角度Sposと、ノイズピーク値が現れると予想されるクランク角度Nposとの比較が行なわれる。その結果、SposとNposとが一致しているため、前述の式2により、MX2からノイズピーク値Nmaxを減算した値MX0を第2のピーク値PKLとして採用する。燃焼サイクル毎に採用された第2のピーク値PKLを複数サイクル期間を通して示したものが図6aに示された第2のピーク値PKLである。そして、この第2のピーク値PKLに基づいて、前述の式3により、図6aに示されたバックグランドレベルBGLが算出され、第2のピーク値PKLとバックグランドレベルBGLとに基づいて、前述の式4により、図6aに示されたノッキング判定用しきい値THDが算出される。以上ようにして算出された、第2のピーク値PKL、バックグランドレベルBGL、ノッキング判定用しきい値THDは、何れについても、ノイズの重畳による影響が除去されるため、ノイズ振動をノッキングと誤判定することが回避される。なお、上記では、ノイズ振動に起因したスペクトル図5aでは左から10番目のスペクトルMX2からノイズピーク値Nmaxを減算した値MX0を第2のピーク値PKLとして採用すると説明したが、バッファに記憶されているクランク角度NposのときのスペクトルMX2をMX0に修正したうえで、再び、ノッキング検出期間でのピーク値を再検索するようにしても良い。そうした場合には、5aの左から6番目のスペクトルMX1が第1のピーク値Smaxとして再選択され、第1のピーク値Smaxが現れたときのクランク角度Sposとは異なるクランク角度Spos’に更新されるので、ノイズが重畳していない場合の図5aのときと同じ第1のピーク値とクランク角度が選択されるようにすることができる。上記の記載について、以下に補足説明を行なう。ノイズのために、元々はピーク値MX2Spos位置のスペクトルを最大値として検出するが、Spos位置のスペクトルを、MX0=MX2-Nmaxに修正する。そして、もう一度、ATDC0~ATDC60[deg]間の最大値を検査し直す。その結果、MX1Spos’位置のスペクトルが修正後のピーク値となるので、MX1Spos’位置のスペクトルをピーク値とする。次に、ある時刻Tにおいて、ノッキングが発生した場合、ノッキング信号には、図5bに示すようなノッキング振動が現れ、特定周波数のスペクトルについてもノッキング振動による大きなスペクトル図5bでは左から4番目のスペクトルMX3が算出され、これが第1のピーク値Smaxとして選択される。なお、図6bでは、第1のピーク値Smaxが現れたときのクランク角度Sposとノイズピーク値Nmaxが現れると予想されるクランク角度Nposとが一致していないため、前述した式1により、MX3がそのまま第2のピーク値PKLとして採用される。そして、図6bには、前述の図6aと同様、複数サイクル期間を通して示された第2のピーク値PKL、バックグランドレベルBGL、ノッキング判定用しきい値THDが示されているが、ノッキングが発生した時刻Tのときの第2のピーク値PKLがノッキング判定用しきい値THDを超えた時点で、ノッキングが発生していると判定されて、式5により、ノッキング強度KNKが算出される。以上ようにして算出されたノッキング強度KNKは、ノイズの重畳による影響が回避されており、ノイズが重畳していない場合の図5bのときと同等レベルの値が算出される。次に、ノッキング検出期間内にノイズ振動が重畳している別の場合におけるノッキング強度の算出過程について、図7、図8のタイミングチャートを用いて補足説明する。図7は、ノッキング検出期間内にノイズ振動が重畳している場合における1燃焼サイクルのノッキング信号および特定周波数の振動レベルを示したタイミングチャートである。図7aには、ノッキング未発生、且つノイズ源ありの時のクランク角度に対するノッキング信号および特定周波数の振動レベルの一例が示されており、図7bには、ノッキング発生、且つノイズ源ありの時クランク角度に対するノッキング信号および特定周波数の振動レベルの一例が示されている。なお、図7bでは、前述の図5bの場合とは異なり、ノッキング振動とノイズ振動とが同じタイミングで発生している場合が示されている。また、図8は、前述の図7に対応して算出された第2のピーク値PKL、バックグランドレベルBGL、ノッキング判定用しきい値THDが複数のサイクル期間の時系列データとして示したタイミングチャートである。なお、図8aはノッキング未発生、且つノイズ源ありでノイズ除去を実施した時を、図8bはノッキング発生、且つノイズ源ありでノイズ除去を実施した時を示している。ノッキングが発生していない場合の図7aでは、ノッキング検出期間内にノイズ振動が重畳しているため、特定周波数のスペクトルについてもノイズ振動に起因したスペクトル図7aでは左から4番目のスペクトルMX2が算出されている。このように、ノイズに起因したスペクトルMX2が最も大きい場合、本実施の形態においては、MX2が現れたときのクランク角度Sposとノイズピーク値が現れると予想されるクランク角度Nposとの比較が行なわれる。その結果、SposとNposが一致しているため、前述の式2により、MX2からノイズピーク値Nmaxを減算した値MX0を第2のピーク値PKLとして採用する。そして、燃焼サイクル毎に採用された第2のピーク値PKLを、複数サイクル期間を通して示したものが図8aに示された第2のピーク値PKLである。そして、この第2のピーク値PKLに基づいて、前述の式3により、図8aに示されたバックグランドレベルBGLが算出され、第2のピーク値PKLとバックグランドレベルBGLとに基づいて、前述の式4により、図8aに示されたノッキング判定用しきい値THDが算出される。以上ようにして算出された、第2のピーク値PKL、バックグランドレベルBGLおよびノッキング判定用しきい値THDは、何れについても、ノイズの重畳による影響が除去されるため、ノイズ振動をノッキングと誤判定することが回避される。なお、上記では、ノイズ振動に起因したスペクトル図7aでは左から4番目のスペクトルMX2からノイズピーク値Nmaxを減算した値MX0を第2のピーク値PKLとして採用すると説明したが、バッファに記憶されている、クランク角度NposのときのスペクトルMX2をMX0に修正したうえで、再び、ノッキング検出期間でのピーク値を再検索するようにしても良い。そうした場合には、図7aの左から6番目のスペクトルMX1が第1のピーク値Smaxとして再選択され、第1のピーク値Smaxの現れたときのクランク角度もSpos’に更新されるので、ノイズが重畳していない場合の図5aのときと同じ第1のピーク値とクランク角度が選択されるようにすることができる。次に、ある時刻Tにおいて、ノッキングが発生した場合のノッキング信号には、ノイズ振動と同じタイミングのところに図7bに示すようなノッキング振動が現れ、特定周波数のスペクトルについてもノイズ振動にノッキング振動が加わったより大きなスペクトル図7bでは左から4番目のスペクトルMX4が算出され、これが第1のピーク値Smaxとして選択される。ここで、本実施の形態においては、このノイズ振動によるスペクトルを含んで大きくなり過ぎているスペクトルMX4が現れたときのクランク角度Sposと、ノイズピーク値が現れると予想されるクランク角度Nposとの比較が行われる。その結果、SposとNposとが一致しているため、前述の式2により、MX4からノイズピーク値Nmaxを減算した値MX3を第2のピーク値PKLとして採用する。そして、燃焼サイクル毎に採用された第2のピーク値PKLを複数サイクル期間を通して示したものが図8bに示された第2のピーク値PKLである。そして、この第2のピーク値PKLに基づいて、前述の式3により、図8bに示されたバックグランドレベルBGLが算出され、第2のピーク値PKLとバックグランドレベルBGLとに基づいて、前述の式4により、図8bに示されたノッキング判定用しきい値THDが算出される。以上ようにして算出された第2のピーク値PKL、バックグランドレベルBGLおよびノッキング判定用しきい値THDは、何れについても、ノイズの重畳による影響が除去される。そのため、ノイズ振動を含んだノッキング振動のスペクトルによってノッキングと誤判定することや、ノイズ振動を含んだノッキング振動のスペクトルに基づいてノッキング強度を算出することによってノッキングリタード量が不適切となることも回避される。次に、ノイズ出現タイミング推定手段104によるノイズピーク値Nmaxが現れると予想されるクランク角度Nposの推定方法について、図9に示すタイミングチャートで説明する。図9は、ノイズ源となる作動部材燃料噴射弁3、吸気弁1c、排気弁1d、などの作動信号燃料噴射弁3の場合には燃料噴射弁3への通電信号、吸気弁1cや排気弁1dの場合は閉弁タイミングと特定周波数上に現れるノイズ振動のスペクトルとの関係の一例を示したタイミングチャートである。図9において、時刻Tnの時点でノイズ源の作動信号がOFFからONに切り替わったとすると、ノイズ源の作動に起因してノイズが発生し、そのノイズ振動は、伝播遅れにより、時刻Tnから遅れ時間Td後に特定周波数上に現れる。そして、このノイズ振動のスペクトルは、時間TLかけて増大し、時刻Tnから時間Tp経過後にピーク値を迎え、その後時間TRかけて減衰するという特性を有している。そこで、ノイズ源の作動信号がOFFからONに切り替わった時点から特定周波数上にノイズピーク値Nmaxが現れるまでの時間Tpを予め実験的に計測しておき、ECU6のメモリに記憶させておく。そして、クランク角度センサ9により検出される現在の回転速度に基づいてTpすなわち、ノイズ源の作動信号がOFFからONに切り替わった時点から特定周波数上にノイズピーク値Nmaxが現れるまでの時間を時間単位から角度単位に変換することでTpの角度換算値を算出する。これにより、ノイズ源が作動した時点からノイズピーク値Nmaxが現れるまでのクランク角度が推定される。なお、ノイズ源の作動信号については、ECU6によって演算される制御値、または、ECU6に入力される各種センサによる検出値に基づく値が使用される。ところで、特定周波数に現れるノイズ振動のスペクトルが、図9に示すような特性であった場合、第1のピーク値Smaxが現れたときのクランク角度Sposとノイズピーク値Nmaxが現れると予想されるクランク角度Nposとの差分=Spos-Nposに応じて設定したノイズレベル補正係数Knを、ノイズピーク値Nmaxに乗じることにより、SposとNposとが完全に一致していない場合であっても適正なノイズ振動レベルを除去することが可能となる。図10は、ノイズレベル補正係数の算出方法を説明するための図である。図10に示すように、例えば、Spos-Nmaxが零のときにはNmaxにKn=1が乗じられ、Spos-Nmaxが図9の時間幅TRの角度換算幅AR以上のときにはNmaxにKn=0が乗じられ、Spos-Nmaxが図9の時間幅TLの角度換算幅AL以下のときには、NmaxにKn=0が乗じられる。これにより、ノッキングが発生したことによって生じる振動のピーク値とノイズ振動のピーク値とが完全に同じタイミングに重なっていない場合であっても、ノイズによる振動レベルが適正に除去される。次に、実施の形態1に係るノッキング抑制機能の動作を、フローチャートを使って説明する。図11は、本実施の形態に係る内燃機関の制御装置におけるノッキング抑制機能の動作の前半部を示すフローチャートである。また、図12は、本実施の形態に係る内燃機関の制御装置におけるノッキング抑制機能の動作の後半部を示すフローチャートである。なお、図11~図12に示したフローチャートでの処理は、クランク角度センサ9により検出されたクランク角度がノッキング検出期間外からノッキング検出期間内に変化したことが判定されたときに実行が開始されるものとして説明を進める。今、ノッキング検出期間外からノッキング検出期間内に変化したことが判定されて最初に実行されるステップS101においては、特定周波数成分のスペクトル、および、そのスペクトルが検出されたクランク角度を順番に記憶しておくためのバッファ記憶領域をクリアしてから、次のステップS102へ進む。ステップS102では、クランク角度センサ9により検出されたクランク角度が読み込まれる。続くステップS103では、クランク角度に基づいてノッキング検出期間内か否かが判定される。今回はノッキング検出期間外からノッキング検出期間内に変化した直後であることからYESと判定されて、ステップS103からステップS104、ステップS105、ステップS106へと進む。ステップS104では、ノッキングセンサ11により検出されたノッキング信号のA/D変換値が読み込まれる。続くステップS105では、特定周波数抽出手段100によるDFT処理が行なわれ、特定周波数成分のスペクトルが抽出され、ステップS106へ進む。ステップS106では、ピーク信号抽出手段101により、ステップS105にて抽出された特定周波数成分のスペクトルとステップS102で検出されたクランク角度とを、バッファに記憶してステップS102へ戻る。ステップS106からステップ102へ戻ると、再びステップS102にてクランク角度が読み込まれる。それ以降、ステップS103における判定がNOとなるまで、すなわち、クランク角度がノッキング検出期間外となるまで、ステップS104、ステップS105、ステップS106、Sステップ102の処理が所定の周期で繰り返される。そして、時間が経過して、Sステップ102で読み込まれたクランク角度がノッキング検出期間内からノッキング検出期間外に移ると、Sステップ103における判定がNOとなり、Sステップ103からステップS107へと進む。そして、ステップS107では、バッファに記憶しておいたノッキング検出期間における特定周波数成分のスペクトルのうち最大値である第1のピーク値Smax、および第1のピーク値Smaxが検出されたときのクランク角度Sposを抽出してステップS108へ進む。ステップS108では、ノイズ源となる作動部材の作動タイミングに相当するクランク角度が読み込まれる。続くステップS109では、作動部材の作動タイミングと該作動タイミングからノイズ振動による最大値が特定周波数の振動スペクトルとして実際に現れるまでの伝播遅れを考慮して予め設定されている遅れ時間Tpとからノイズピーク値Nmaxが現れると予想されるクランク角度Nposが算出されてステップS110へと進む。なお、ステップS108およびステップS109は、ノイズ出現タイミング推定手段104により処理が行われる。そして、ステップS110では、第1のピーク値Smaxが現れたときのクランク角度Sposと、ノイズピーク値Nmaxが現れると予想されるクランク角度Nposとが等しいか否かが判定される。ここで、Spos≠Nposであった場合には、NOと判定されて、ステップS110からステップS113へ進み、前述の式1により、第2のピーク値PKL=Smaxが算出されてステップS114へと進む。一方、Spos=Nposであった場合には、YESと判定されて、ステップS110からステップS111へ進み、ノイズレベル記憶手段103に記憶されているノイズピーク値Nmaxが読み込まれる。続く、ステップS112では、前述の式2により、第2のピーク値PKL=Smax-Nmaxが算出されてステップS114へと進む。なお、ステップS110からステップS113までは、ノイズ除去手段102により処理が行われる。また、ステップS110では、SposとNposとが完全一致か否かで判定するようにしているが、ノイズピーク値Nmaxが現れると予想されるクランク角度Nposのばらつきや推定精度を考慮して、式9のように、YESと判定する条件に所定の幅VARを持たせるようにしても良い。Npos-VAR≦Spos≦NposVAR式9次のステップS114では、BGL算出手段105によりバックグランドレベルBGLが算出され、ステップS115では、しきい値算出手段106によりノッキング判定用しきい値THDが算出されて、ステップS116へ進む。そして、ステップS116では、第2のピーク値PKLとノッキング判定用しきい値THDとを比較することでノッキングの発生有無が判定される。ここで、PKL≧THDの場合には、ノッキングが発生していると判定YESと判定されてステップS117に進み、前述の式5によりノッキング強度KNKが算出されてステップS119へ進む。反対に、PKL<THDの場合には、ノッキングは発生していないと判定NOと判定され、前述の式6によりノッキング強度KNKには零が設定されてステップS119へ進む。なお、ステップS116では、ノッキング判定手段107により処理が行われ、ステップS117とステップS118では、ノッキング強度算出手段109により処理が行われる。そして、ステップS119では、式7により、ノッキング強度KNKに応じたノッキングリタード量RTDが算出され、最後のステップS120では、式8により、エンジン1の運転状態に応じて決定された基本点火時期IGBがノッキングリタード量RTDだけリタード側へ変更されて最終点火時期IGTが決定され、一連の処理が終了する。なお、ステップS119はリタード量算出手段110、ステップS120は点火時期補正手段110により処理が行われる。ところで、ノイズ源が燃料噴射弁であった場合、ノイズ振動による特定周波数スペクトルのピーク値Nmaxは、概略、一定値とみなしても構わない場合もある。しかし、燃料噴射弁から噴射される燃料圧力Pfが変化したときの燃料噴射弁の開弁ないし閉弁動作によるノイズ振動のレベル変化が無視できない変化量であった場合には、例えば、図13のような特性すなわち、燃料圧力Pfに対するノイズピーク値Nmaxの値を、予め実験的に計測しておき、ECU6に記憶させておく。これにより、燃料圧力Pfに応じた適切なNmaxの値を用いるようにすることができ、燃料圧力Pfの変化に関わらず、燃料噴射弁の作動によるノイズの振動レベルを精度良く除去することが可能となる。また、ノイズ源が吸気弁または排気弁であった場合、ノイズ振動による特定周波数スペクトルのピーク値Nmaxは、概略、一定値とみなしても構わない場合もあるが、内燃機関の回転速度Neが変化したときの吸気弁または排気弁の閉弁動作によるノイズ振動のレベル変化が無視できない変化量であった場合には、例えば、図14のような特性すなわち、回転速度Neに対するNmaxの値を、予め計測しておき、ECU6に記憶させておく。これにより、回転速度Neに応じた適切なNmaxの値を用いるようにすることができ、回転速度Neの変化に関わらず、吸気弁または排気弁の作動によるノイズの振動レベルを精度良く除去することが可能となる。また、ノイズレベル記憶手段103に記憶しておく特定周波数のノイズ振動のノイズピーク値Nmaxについては、内燃機関が燃焼することに起因して発生する振動レベルを除くノイズ振動のみによるスペクトルを予め計測しておいて記憶させるようにする。これにより、運転状態や燃焼状態の変化によってBGL、すなわち、通常の燃焼に起因した振動レベルが、運転状態によって異なるような場合であっても、ノイズによる振動レベルを適正に除去することができ、常に正確なBGLを算出することが可能となる。以上説明したように、本実施の形態による内燃機関の制御装置は、内燃機関1の振動波形を検出するノッキングセンサ11と、内燃機関1のクランク角度を検出するクランク角度センサ9と、内燃機関1の振動波形から特定周波数の振動レベルを抽出する特定周波数抽出手段100と、所定のクランク角度範囲における前記特定周波数の振動レベルのうちの最大値である第1のピーク値および第1のピーク値が現れたときのクランク角度を抽出するピーク信号抽出手段101と、内燃機関1に備えられた電気的または機械的な作動部材が作動することに起因して前記特定周波数に現れるノイズの振動レベルが記憶されるノイズレベル記憶手段103と、作動部材の作動タイミングに基づいて、ノイズ振動のピーク値であるノイズピーク値が現れると予想されるクランク角度を推定するノイズ出現タイミング推定手段104と、前記第1のピーク値が現れたときのクランク角度と前記ノイズピーク値が現れると予想されるクランク角度とが一致していなかった場合には第1のピーク値に基づいて第2のピーク値を算出し、第1のピーク値が現れたときのクランク角度とノイズピーク値が現れると予想されるクランク角度とが一致していた場合には第1のピーク値とノイズピーク値とに基づいて第2のピーク値を算出するノイズ除去手段102と、第2のピーク値を平均化したバックグラウンドレベルBGLを算出するBGL算出手段105と、第2のピーク値と前記バックグラウンドレベルとに基づいてノッキング判定しきい値を算出するしきい値算出手段106と、第2のピーク値とノッキング判定しきい値とに基づいてノッキングの発生有無を判定するノッキング判定手段107と、ノッキング判定手段107によりノッキングが発生していると判定されたときに、第2のピーク値とノッキング判定しきい値とバックグラウンドレベルとに基づいてノッキング強度を算出するノッキング強度算出手段108と、ノッキング強度算出手段108により算出されたノッキング強度に基づいて点火時期のノッキングリタード量を算出するリタード量算出手段109と、リタード量算出手段109により算出されたノッキングリタード量に基づいて点火時期を補正する点火時期補正手段110とを備える。この構成によれば、ノッキングが発生したことによって生じる振動のピーク値とノイズ振動のピーク値とが同じタイミングに重なってしまった場合であっても、ノイズによる振動レベルを適正に除去してノッキングの発生有無を精度よく判定すると共に常に適正なノッキング強度を算出することが可能となる。また、本実施の形態による内燃機関の制御装置のノイズ除去手段102は、第1のピーク値が現れたときのクランク角度とノイズピーク値が現れると予想されるクランク角度との差分に基づいて、ノイズピーク値を補正するためのノイズレベル補正係数を算出すると共に、第1のピーク値とノイズピーク値とノイズレベル補正係数とに基づいて第2のピーク値を算出する。この構成によれば、ノッキングが発生したことによって生じる振動のピーク値とノイズ振動のピーク値とが完全に同じタイミングに重なっていない場合であっても、ノイズによる振動レベルを適正に除去してノッキングの発生有無を精度よく判定すると共に常に適正なノッキング強度を算出することが可能となる。また、本実施の形態による内燃機関の制御装置は、作動部材が燃料噴射弁である場合において、ノイズレベル記憶手段103は、燃料噴射弁3から内燃機関1へ噴射供給される燃料の圧力値に応じて予め記憶されているノイズの振動レベルを補正する。この構成によれば、燃料噴射弁が作動したときに発生するノイズの振動レベルが燃料の圧力値によって変化することがあっても、ノイズの振動レベルが適正レベルに補正できるため、燃料の圧力値の変化に関わらず、燃料噴射弁の作動に起因したノイズの振動レベルを精度良く算出することが可能となる。また、本実施の形態による内燃機関の制御装置は、作動部材が吸気弁または排気弁である場合において、ノイズレベル記憶手段103は、内燃機関1の回転速度または負荷に応じて、予め記憶されているノイズの振動レベルを補正する。この構成によれば、吸気弁または排気弁が作動したときに発生するノイズの振動レベルが内燃機関の回転速度によって変化することがあっても、ノイズの振動レベルが適正レベルに補正できるため、内燃機関の回転速度に関わらず、吸気弁または排気弁の作動に起因したノイズの振動レベルを精度良く算出することが可能となる。また、本実施の形態による内燃機関の制御装置のノイズレベル記憶手段103は、内燃機関1の気筒内での燃焼に起因して発生する振動レベルがないときのノイズの振動レベルを記憶させておくようにしている。この構成によれば、ノッキングが発生していないときのバックグラウンドレベルの算出値に対してもノイズによる振動レベルを適正に除去することができ、常に正確なバックグラウンドレベルを算出することが可能となる。