内燃機関のシリンダ内で発生する振動又は圧力波を振動データとして検出する振動検出部と、前記内燃機関の運転状態に応じて、前記内燃機関のノックにより発生する振動レベルが顕著にあらわれる第1の期間が含まれるように、ノック検出ウィンドウを予め設定するノック検出ウィンドウ設定部と、前記ノック検出ウィンドウ内で検出された前記振動データに対して、時間周波数解析を実施することにより得られる所定時間ごとの振動レベルを複数の周波数に対して同時に算出するデジタル信号処理部と、前記第1の期間に基づいて設定される第2の期間を用いて、前記所定時間ごとの振動レベルを順次移動平均し、前記移動平均後の振動レベルのうちのピーク値を抽出する処理を、前記複数の周波数に対して同時に実施する移動平均処理部と、前記抽出されたピーク値に基づいてノック判定閾値を算出し、前記ピーク値と前記ノック判定閾値とを比較することにより前記ノックの発生の有無を判定する処理を、前記複数の周波数に対して同時に実施するノック判定部と、前記複数の周波数のうち少なくともいずれか1つの周波数により前記ノックが発生したことを判定したときには、前記ノックを回避するための処置を行なうノック回避部と、前記周波数と、前記内燃機関の回転数を示す状態量と、前記内燃機関の負荷を示す状態量と、前記内燃機関の空燃比を示す状態量と、のうちの少なくともいずれか1つに基づいて、前記ノック検出ウィンドウ内に疑似ノックが発生しているか否かを判定する擬似ノック判定部と、を備え、前記移動平均処理部は、前記擬似ノックが発生していないと判定されているときには、前記第1の期間と同等の期間を前記第2の期間として設定し、前記擬似ノックが発生していると判定されているときには、前記移動平均を実施しない、もしくは前記第1の期間より狭い期間を前記第2の期間として設定する、ことを特徴とする内燃機関の制御装置。内燃機関のシリンダ内で発生する振動又は圧力波を振動データとして検出する振動検出部と、前記内燃機関の運転状態に応じて、前記内燃機関のノックにより発生する振動レベルが顕著にあらわれる第1の期間が含まれるように、ノック検出ウィンドウを予め設定するノック検出ウィンドウ設定部と、前記ノック検出ウィンドウ内で検出された前記振動データに対して、時間周波数解析を実施することにより得られる所定時間ごとの振動レベルを複数の周波数に対して同時に算出するデジタル信号処理部と、前記第1の期間に基づいて設定される第2の期間を用いて、前記所定時間ごとの振動レベルを順次移動平均し、前記移動平均後の振動レベルのうちのピーク値を抽出する処理を、前記複数の周波数に対して同時に実施する移動平均処理部と、前記抽出されたピーク値に基づいてノック判定閾値を算出し、前記ピーク値と前記ノック判定閾値とを比較することにより前記ノックの発生の有無を判定する処理を、前記複数の周波数に対して同時に実施するノック判定部と、前記複数の周波数のうち少なくともいずれか1つの周波数により前記ノックが発生したことを判定したときには、前記ノックを回避するための処置を行なうノック回避部と、前記周波数と、前記内燃機関の回転数を示す状態量と、前記内燃機関の負荷を示す状態量と、前記内燃機関の空燃比を示す状態量と、のうちの少なくともいずれか1つに基づいて、前記ノック検出ウィンドウ内に疑似ノックが発生しているか否かを判定する擬似ノック判定部と、を備え、前記移動平均処理部は、前記疑似ノック判定部による前記擬似ノックの発生の有無の判定結果にかかわらず、前記擬似ノックが発生していないことが判定されているときの前記第2の期間と、前記擬似ノックが発生していることが判定されているときの前記第2の期間とを用いて、前記所定時間ごとの振動レベルを順次移動平均し、前記移動平均後の振動レベルのうちのピーク値を抽出する処理を、前記複数の周波数に対して同時に実施し、前記ノック判定部は、前記抽出されたピーク値に基づいて前記ノック判定閾値を算出する処理を、前記複数の周波数に対して同時に実施する、ことを特徴とする内燃機関の制御装置。前記第1の期間、及び第2の期間は、前記所定時間ごとの振動レベルを順次移動平均する移動平均個数に相当することを特徴とする請求項1又は2に記載の内燃機関の制御装置。前記移動平均個数は、前記内燃機関の回転数に対応して予め設定された移動平均個数マップに基づいて定められることを特徴とする請求項3に記載の内燃機関の制御装置。前記疑似ノック判定部は、予め設定された疑似ノック判定マップに基づいて前記判定を行うことを特徴とする請求項1乃至4のうちの何れか一項に記載の内燃機関の制御装置。特許文献1に開示された従来の技術では、第1の周波数においてノック検出ウィンドウ内の振動レベルのピーク値に基づいてノックの発生を判定しているが、内燃機関によっては第1の周波数、第2の周波数ともに機械ノイズや電気ノイズが重畳するケースも当然ながら存在する。これに対しては、第1の周波数でもノック検出ウィンドウ内の振動レベルの積算値にもとづいてノックの発生を判定することが簡易に考えられる。このことは、特許文献2に開示された従来の技術において、複数の固有周波数の全てに対して、所定のスペクトル個数ごとにノック検出ウィンドウ内のスペクトル列を順次移動平均することと同等のことである。しかし、例えば内燃機関の回転数2000[r/min]付近で、かつ高負荷、かつ空燃比以下、A/Fと称するがエンリッチであるのような特定の運転条件において、特異な燃焼ノイズ以下、疑似ノックと称するが固有周波数に発生することがあり、その場合に、特許文献1に開示された技術のようにノック検出ウィンドウ内の振動レベルの積算値を用いていると、擬似ノックが発生したときに、S/Nが悪化する。図9は、ノックが発生しているときとノックが未発生で疑似ノックが発生しているときの、クランク角とスペクトルの関係特性を比較した説明図であり、横軸はクランク角、縦軸はスペクトルを示している。そして、図9の1は、ピストンの上死点後AfterTopDeathCenter:以下、ATDCと称する-10°CAからATDC80°CAの間の振動データを用いてDFTを実施したときのクランク角とスペクトルの関係特性を示す。図9の2は、図9の1のクランク角とスペクトルの関係特性に対して、ノック波形の幅と同じ期間であるスペクトル個数を用いて移動平均を実施したときのクランク角とスペクトルの関係特性を示す。図9の3は、図9の1のクランク角とスペクトルの関係特性に対して、図9の2に示す場合よりも多いスペクトル個数を用いて移動平均を実施したときのクランク角とスペクトルの関係特性を示す。なお、以下の説明では、移動平均に用いるスペクトル個数を移動平均個数と称する。図9の1、図9の2、図9の3において、Sはノックが発生しているときのクランク角とスペクトルとの関係特性のピーク値、Nは疑似ノックが発生しているときのクランク角とスペクトルとの関係特性のピーク値をそれぞれ示し、S/Nは、ピーク値Sとピーク値Nとの比を表している。図9の1に示すように、疑似ノック波形は、ピーク値Nに到達後のスペクトルレベルの減衰が、ノック波形がピーク値Sに到達後のスペクトルレベルの減衰よりもさらに遅いという特徴がある。擬似ノックが発生した場合に移動平均を実施すると、図9の1ではS/N=1.364であるのに対して、図9の2ではS/N=0.809となり、図9の3ではS/N=0.644となる。このように、移動平均個数特許文献1でのノック検出ウィンドウの期間に相当が多くなるほどS/Nが小さくなり、疑似ノックが重畳する周波数が固有周波数とほぼ同一であった場合には、ノック検出性および耐誤検出性が悪化するという課題がある。ところが、特許文献1に開示された従来の技術では、機械ノイズや電気ノイズが重畳する第2の周波数において、擬似ノックの発生有無に関わらず、ノック検出ウィンドウ内の振動レベルの積算値に基づいてノックの発生を判定しており、また、特許文献2に開示された従来の技術でも、擬似ノックの発生有無に関わらず、所定の移動平均個数ごとにスペクトル列を順次移動平均することにもとづいてノックの発生を判定するようにしているため、擬似ノックが重畳したときにノック検出性および耐誤検出性が悪化するという課題があった。この発明は、従来の技術に於ける前述の課題を解決するためになされたもので、疑似ノックが発生してもノック検出性および耐誤検出性の悪化を抑制し得る内燃機関の制御装置を提供することを目的とする。本願の第1の発明による内燃機関の制御装置は、内燃機関のシリンダ内で発生する振動又は圧力波を振動データとして検出する振動検出部と、前記内燃機関の運転状態に応じて、前記内燃機関のノックにより発生する振動レベルが顕著にあらわれる第1の期間が含まれるように、ノック検出ウィンドウを予め設定するノック検出ウィンドウ設定部と、前記ノック検出ウィンドウ内で検出された前記振動データに対して、時間周波数解析を実施することにより得られる所定時間ごとの振動レベルを複数の周波数に対して同時に算出するデジタル信号処理部と、前記第1の期間に基づいて設定される第2の期間を用いて、前記所定時間ごとの振動レベルを順次移動平均し、前記移動平均後の振動レベルのうちのピーク値を抽出する処理を、前記複数の周波数に対して同時に実施する移動平均処理部と、前記抽出されたピーク値に基づいてノック判定閾値を算出し、前記ピーク値と前記ノック判定閾値とを比較することにより前記ノックの発生の有無を判定する処理を、前記複数の周波数に対して同時に実施するノック判定部と、前記複数の周波数のうち少なくともいずれか1つの周波数により前記ノックが発生したことを判定したときには、前記ノックを回避するための処置を行なうノック回避部と、前記周波数と、前記内燃機関の回転数を示す状態量と、前記内燃機関の負荷を示す状態量と、前記内燃機関の空燃比を示す状態量と、のうちの少なくともいずれか1つに基づいて、前記ノック検出ウィンドウ内に疑似ノックが発生しているか否かを判定する擬似ノック判定部と、を備え、前記移動平均処理部は、前記擬似ノックが発生していないと判定されているときには、前記第1の期間と同等の期間を前記第2の期間として設定し、前記擬似ノックが発生していると判定されているときには、前記移動平均を実施しない、もしくは前記第1の期間より狭い期間を前記第2の期間として設定する、ことを特徴とするものである。また、本願の第2の発明による内燃機関の制御装置は、内燃機関のシリンダ内で発生する振動又は圧力波を振動データとして検出する振動検出部と、前記内燃機関の運転状態に応じて、前記内燃機関のノックにより発生する振動レベルが顕著にあらわれる第1の期間が含まれるように、ノック検出ウィンドウを予め設定するノック検出ウィンドウ設定部と、前記ノック検出ウィンドウ内で検出された前記振動データに対して、時間周波数解析を実施することにより得られる所定時間ごとの振動レベルを複数の周波数に対して同時に算出するデジタル信号処理部と、前記第1の期間に基づいて設定される第2の期間を用いて、前記所定時間ごとの振動レベルを順次移動平均し、前記移動平均後の振動レベルのうちのピーク値を抽出する処理を、前記複数の周波数に対して同時に実施する移動平均処理部と、前記抽出されたピーク値に基づいてノック判定閾値を算出し、前記ピーク値と前記ノック判定閾値とを比較することにより前記ノックの発生の有無を判定する処理を、前記複数の周波数に対して同時に実施するノック判定部と、前記複数の周波数のうち少なくともいずれか1つの周波数により前記ノックが発生したことを判定したときには、前記ノックを回避するための処置を行なうノック回避部と、前記周波数と、前記内燃機関の回転数を示す状態量と、前記内燃機関の負荷を示す状態量と、前記内燃機関の空燃比を示す状態量と、のうちの少なくともいずれか1つに基づいて、前記ノック検出ウィンドウ内に疑似ノックが発生しているか否かを判定する擬似ノック判定部と、を備え、前記移動平均処理部は、前記疑似ノック判定部による前記擬似ノックの発生の有無の判定結果にかかわらず、前記擬似ノックが発生していないことが判定されているときの前記第2の期間と、前記擬似ノックが発生していることが判定されているときの前記第2の期間とを用いて、前記所定時間ごとの振動レベルを順次移動平均し、前記移動平均後の振動レベルのうちのピーク値を抽出する処理を、前記複数の周波数に対して同時に実施し、前記ノック判定部は、前記抽出されたピーク値に基づいて前記ノック判定閾値を算出する処理を、前記複数の周波数に対して同時に実施する、ことを特徴とするものである。前述のそれぞれの発明において、疑似ノックとは、前記第1の期間と同等の期間に設定された第2の期間を用いて前記移動平均を実施した場合に、ノックが発生しているときの前記ピーク値とノックが発生していないときの前記ピーク値との比が所定値以下となるような振動レベルの状態を意味する。本願の第1の発明による内燃機関の制御装置によれば、疑似ノックが発生した場合に移動平均を実施しない、もしくは第1の期間より狭い期間で移動平均を実施するため、疑似ノックが発生してもノック検出性および耐誤検出性の悪化を抑制する効果が得られる。また、本願の第2の発明による内燃機関の制御装置によれば、擬似ノックが発生している運転状態と擬似ノックが発生していない運転状態とが切り替わった直後からすみやかにノックを判定することができ、擬似ノックが発生している運転状態と擬似ノックが発生していない運転状態とが切り替わった直後からノック判定閾値が収束するまでの間に誤検出が生じることを抑制する効果が得られる。実施の形態1.以下、図面を参照しながら、この発明の実施の形態1よる内燃機関の制御装置について詳細に説明する。図1は、この発明の実施の形態1による内燃機関の制御装置を適用する内燃機関を概略的に示す構成図である。尚、自動車等の車両用の内燃機関は、通常、複数のシリンダ及びピストンを備えているが、図1では説明の便宜上、一つのシリンダ及びピストンのみを示している。図2は、この発明の実施の形態1よる内燃機関の制御装置における制御部を概略的に示す構成図である。図1において、内燃機関1の吸気系の上流に吸入空気流量を調整するために電子的に制御される電子制御式スロットルバルブ2が設けられている。また、電子制御式スロットルバルブ2の開度を測定するために、スロットル開度センサ3が設けられている。なお、電子制御式スロットルバルブ2の代わりに、図示していないアクセルペダルに直接ワイヤを介して連結された機械式スロットルバルブを用いてもよい。電子制御式スロットルバルブ2の上流側には、吸入空気流量を測定するエアフロセンサ4が設けられており、電子制御式スロットルバルブ2の下流側である内燃機関1側には、サージタンク5内の圧力を測定するインテークマニホールド圧力センサ以下、インマニ圧センサと称する6が設けられている。なお、エアフロセンサ4とインマニ圧センサ6に関しては、両方とも設けてもよいし、いずれか一方のみが設けられていてもよい。サージタンク5の下流側の吸気ポートに設けられた吸気バルブには、吸気バルブの開閉タイミングやリフト量を可変制御できる可変吸気バルブ機構7が取り付けられており、また、吸気ポートには燃料を噴射するインジェクタ8が設けられている。なお、インジェクタ8は、内燃機関1のシリンダ内に直接噴射できるように設けられてもよい。内燃機関1のシリンダ内の混合気に点火するための点火コイル9及び点火プラグ10、内燃機関1の回転速度やクランク角度を検出するためにクランク軸に設けられたプレートのエッジを検出するためのクランク角センサ11、内燃機関1のシリンダ内で発生する振動又は圧力波を振動データとして検出するための振動検出部としてのノックセンサ12、内燃機関1の運転状態量としてのA/Fを検出するためのA/Fセンサ13が、内燃機関1にそれぞれ設けられている。なお、ノックセンサ12の代わりに、例えば内燃機関1のシリンダ内の圧力波を振動データとして計測する筒内圧センサを設けてもよい。図2おいて、エアフロセンサ4で測定された吸入空気流量と、インマニ圧センサ6で測定されたインマニ圧と、スロットル開度センサ3で測定された電子制御式スロットルバルブ2の開度と、クランク角センサ11より出力されるクランク軸に設けられたプレートのエッジに同期したパルスと、ノックセンサ12で測定された振動データと、A/Fセンサ13で測定された内燃機関の運転状態量としてのA/Fは、電子制御ユニット以下、ECUと称す14に入力される。また、前記以外の各種センサからもECU14に測定値が入力され、さらに、他のコントローラ例えば、自動変速機制御、ブレーキ制御、トラクション制御等の制御システムからの信号も入力される。ECU14は、アクセル開度や内燃機関の運転状態などを基にして目標スロットル開度が算出されて電子制御式スロットルバルブ2を制御する。また、ECU14は、その時の内燃機関1の運転状態に応じて、吸気バルブの開閉タイミングを可変制御する可変吸気バルブ機構7を制御し、目標A/Fを達成するようにインジェクタ8を駆動し、目標点火時期を達成するように点火コイル9への通電を行なう。なお、後述の方法でノックが検出された場合には、ECU14は、目標点火時期を遅角側リタード側に設定することでノックの発生を抑制する制御も行なう。さらに、ECU14は、前記以外の各種アクチュエータへの指示値も算出する。次に図を参照しながら、ECU14内で行うノック制御の概要について説明する。図3は、この発明の実施の形態1による内燃機関の制御装置における、ノック制御部を概略的に示す構成図である。図4は、この発明の実施の形態1による内燃機関の制御装置における、振動データから移動平均までの信号処理のイメージ図で、図4の1の縦軸はローパスフィルタ後の振動データ、2の縦軸はノック検出ウィンドウ、3の縦軸はA/D変換後の振動データ、4の縦軸はDFTにより算出したスペクトル列、5の縦軸は移動平均後のスペクトル列を示し、それぞれの横軸はクランク角を示す。図3において、ノックセンサ12およびECU14は、ぞれぞれ、図1、図2に示したノックセンサ12およびECUに相当する。次に、ECU14内のノック制御部の構成について説明する。ECU14は、各種のI/F回路141とマイクロコンピュータ142とから構成されている。マイクロコンピュータ142は、アナログ信号をデジタル信号に変換するA/D変換器、制御プログラムや制御定数を記憶しておくROM領域、プログラムを実行した際の変数を記憶しておくRAM領域等により構成されている。I/F回路141におけるローパスフィルタ以下、LPFと称する15は、ノックセンサ12からの振動データKARA高周波成分を除去し、図4の1に示すノック、機械ノイズ、電気ノイズが重畳した振動データを得る。マイクロコンピュータ142は、A/D変換器16と、デジタル信号処理部17と、移動平均処理部18と、ノック判定閾値算出部19と、比較演算部20と、1点火毎遅角量算出部21と、運転状態値検出部22と、疑似ノック判定部23とを構成している。A/D変換器16は、例えば、10[μs]や20[μs]等の一定の時間間隔毎にA/D変換を実行し、LPF15からのアナログ振動データをデジタル振動データに変換する。なお、LPF15には、A/D変換器16に全振動データを取り込むために、例えば、2.5[V]にバイアス振動データの中心を2.5[V]にするしておく機能と、2.5Vを中心に0~5[V]の範囲に振動データが収まるように、振動データが小さい場合には2.5[V]を中心に増幅し、振動データが大きい場合には2.5[V]を中心に減少させるゲイン変換機能も含まれている。なお、A/D変換器16によるA/D変換は常時行っておいて、ノック検出ウィンドウの振動データのみデジタル信号処理部17以降へ送るようにしても良いし、ノック検出ウィンドウでのみA/D変換を行いデジタル信号処理部17以降へ送るようにしても良い。図4の2にノック検出ウィンドウのイメージを示し、この実施の形態1では、ATDC-10°CAからATDC80°CAまでを、ノック検出ウィンドウとしている。図4の3にノック検出ウィンドウ内でのA/D変換後の振動データを示す。ノック検出ウィンドウは、内燃機関1の運転状態に応じて、内燃機関1のノックにより発生する振動レベルが顕著にあらわれる第1の期間が含まれるように、ノック検出ウィンドウを予め設定するノック検出ウィンドウ設定部図示せずにより設定される。ノック検出ウィンドウ設定部は、マイクロコンピュータ142により構成される。デジタル信号処理部17は、A/D変換器16からのデジタル信号に対してデジタル信号処理による時間周波数解析を行なう。このデジタル信号処理として、例えば、STFTやDFTにより、複数の固有周波数における所定時間ごとの振動レベルであるスペクトル列が算出される。デジタル信号処理部17は、ノック検出ウィンドウ内で検出された振動データに対して、時間周波数解析を実施することにより得られる所定時間ごとの振動レベルを後述する複数の周波数に対して同時に算出する。なお、前述のデジタル信号処理部17によるデジタル信号処理としては、無限インパルス応答IIRフィルタや有限インパルス応答FIRフィルタを用いて固有周波数の振動レベルを抽出するようにしてもよい。また、デジタル信号処理部17での演算は、A/D変換を実施しながら処理してもよいし、内燃機関1の回転に同期した割込み処理によりまとめて実施しても良い。図4の4にDFTにより算出されるスペクトル列のイメージを示す。例えば、図2に示すスロットル開度センサ3、エアフロセンサ4、インマニ圧センサ6、クランク角センサ11、A/Fセンサ13等の複数のセンサの信号より、運転状態値検出部22にて検出された複数の運転状態値を用いて、擬似ノック判定部23により擬似ノックの発生有無を判定し、その判定結果を移動平均処理部18に送る。また、後述する第1の期間に相当する第1の移動平均個数の設定のため、運転状態値検出部22により検出された複数の運転状態値も移動平均処理部18へ入力する。移動平均処理部18は、運転状態値検出部22により検出された複数の運転状態値に基づく第1の移動平均個数と、擬似ノック判定部23からの擬似ノックが発生しているとの判定結果とから、前述の第1の期間に基づいて設定される第2の期間に相当する第2の移動平均個数を設定し、その後に、第2の移動平均個数を用いて、デジタル信号処理部17により算出したスペクトル列を順次移動平均し、移動平均後のスペクトル列のピーク値VMAV2を抽出する。移動平均処理部18は、前述の移動平均後の振動レベルのうちのピーク値を抽出する処理を、前述の複数の周波数に対して同時に実施する。なお、図4の4に示すスペクトル列に対して、移動平均個数=5で移動平均を実施したときの移動平均後のスペクトル列のイメージを図4の5に示す。図4の4および図4の5に示すとおり、図4の4における1番目のスペクトルから5番目のスペクトルまでの平均値が図4の5における1番目のスペクトル、図4の4における2番目のスペクトルから6番目のスペクトルまでの平均値が図4の5における2番目のスペクトル、というようにして、図4の5に示すように移動平均後のスペクトル列が算出される。そしてこの図4の5に示す移動平均後のスペクトル列のうちからピーク値VMAV2を抽出する。図3に戻って、ノック判定閾値算出部19は、ノック判定閾値VTHを算出する。ノック判定閾値VTHは、複数の固有周波数の各々において下記の式1~3を用いて算出される。まず、下記の式1により、サイクルごとなお、気筒別にノック判定閾値を算出しない内燃機関の制御装置である場合は、内燃機関の行程ごととなるに算出された前述のピーク値VMAV2に対するフィルタ処理を行い平均化する。VBGLn=K1n×VBGL1-K1n×VMAV21ここで、VBGLはフィルタ値、VMAV2は第2の移動平均個数を用いた移動平均後のスペクトル列のピーク値、K1は第1のフィルタ係数、nはサイクル数、である。次に、下記の式2、3により、分散及び標準偏差を算出する。VV=K2×VV1-K2×VBGL-VMAV222VSGM=sqrt3ここで、VSGMは標準偏差、VVは分散、K2は第2のフィルタ係数、sqrtは平方根算出関数、である。次に下記の式4によりノック判定閾値を算出する。VTH=VBGLKth×VSGM4ここで、VTHはノック判定閾値、Kthは閾値算出係数、である。なお、ノック判定閾値VTHの算出方法は前述の式1~4による方法に限らず、別の算出方法を用いてもよい。次に、ノック判定部としての比較演算部20は、ピーク値VMAV2とノック判定閾値VTHとを比較し、下記の式5によりノック発生の有無を判定し、ノック強度に応じた信号を出力する。比較演算部20は、前記ノックの発生の有無を判定する処理を、前記複数の周波数に対して同時に実施する。VK=max[VMAV2-VTH/VTH0]5ここで、VKはノック強度であり、VK>0のときにノック有りと判定する。ノック回避部としての1点火毎遅角量算出部21は、比較演算部20によるノック判別結果から下記の式6により1点火毎のノック強度に応じた遅角量を算出する。ΔθRn=max-VK×Kgθmin6ここで、ΔθRは1点火毎遅角量、Kgは遅角量反映係数、θminは最大遅角量である。ΔθR>0の場合は、1点火毎遅角量ΔθRに応じて点火時期を遅角し、ΔθR=0の場合は、所定分だけ点火を進角側に復帰させる。なお、ノックの発生有無の判定方法および点火制御方法は前述の式5、6に記載の方法に限らず、別の方法を用いてもよい。図5A乃至図5Cは、この発明の実施の形態1による内燃機関の制御装置における動作を説明するフローチャートであり、運転状態値の取得からノック強度算出までの処理を示している。なお、図5A乃至図5Cに示すフローチャートによる処理は、ノック検出に用いる複数の周波数、この実施の形態1では第1の周波数としての低周波数F1以下、周波数F1と称すると、第2の周波数としての高周波数F2以下、周波数F2と称するとの2つの周波数、に対して各々実施する。図5Aに示すフローチャートは、運転状態値の取得ステップ101、擬似ノックの発生有無の判定ステップ102、第2の移動平均個数の設定を経てノック判定閾値の算出ステップ103、107~115、ノック強度の算出104~106、により構成される。以下、ステップ101から順に追って説明する。図5Aにおいて、ステップ101では、運転状態値検出部22から、内燃機関の回転数Ne、内燃機関1の負荷状態を示す状態量としての燃料の充填率Ce、A/Fを取得し、ステップ102に進む。ステップ102では、ステップ101で取得した回転数Ne、充填率Ce、A/Fと、ノック検出に用いる周波数F1、周波数F2と、次に述べる擬似ノック判定マップに基づいて、擬似ノックの発生有無を判定する。ここで、疑似ノック判定マップについて説明する。図6は、この発明の実施の形態1による内燃機関の制御装置における、擬似ノック判定マップである。図6に示す擬似ノック判定マップは、回転数Ne、充填率Ce、A/F、ノック検出に用いる周波数F1及び周波数F2をパラメータとし、回転数Neに関する第1の閾値としての閾値Ne1および第2の閾値としての閾値Ne2、充填率Ceに関する第1の閾値としての閾値Ce1および第2の閾値としての閾値Ce2、A/Fに関する第1の閾値としての閾値A/F1および第2の閾値としての閾値A/F2、および周波数F1、周波数F2によって区分けされている。そして、各区分け部分には擬似ノック発生の有無の情報を格納しており、図6に示す擬似ノック判定マップにおいて、擬似ノック発生と記載している区分け部分は、擬似ノックが発生する運転状態、擬似ノック未発生と記載している区分け部分は、擬似ノックが発生しない運転状態であることを示す。擬似ノック判定マップにおける前述の各閾値は、予めECU14のROM領域に書き込まれるものであり、事前に内燃機関の試験を実施して疑似ノックが発生する運転状態を特定するなどにより設定する。例えば、内燃機関の試験により周波数F1においてNe<2500[r/min]かつCe≧0.7かつA/F≦13で擬似ノックが発生し、周波数F2において2500≦Ne<3500[r/min]かつCe≧0.8かつA/F≦12.5で擬似ノックが発生することが特定された場合は、Ne1=2500[r/min]、Ne2=3500[r/min]、Ce1=0.7、Ce2=0.8、A/F1=13、A/F2=12.5と設定すればよい。図6に示す擬似ノック判定マップの各閾値が前述の値であるとして、図5Aにおけるステップ101で取得した回転数Ne、充填率Ce、A/FがそれぞれNe=2000[r/min]、Ce=0.8、A/F=12.5であった場合は、図6の擬似ノック判定マップ中に矢印Xで指し示す区分け部分に対応するため、F1に対する処理を実施しているのであれば擬似ノックが発生していると判定され、F2に対する処理を実施しているのであれば擬似ノックが発生していないと判定される。このように、ステップ102において、ステップ101で取得したNe、Ce、A/Fと、ノック検出に用いるF1、F2と、図6の擬似ノック判定マップとに基づいて擬似ノックの発生有無を判定する。なお、図6の擬似ノック判定マップは一例であって、事前の内燃機関の試験による疑似ノックが発生する運転状態の特定結果をもとに、疑似ノックが発生する運転状態の区分けの必要に応じて擬似ノック判定マップの区分けをより細分化してもよい。図5Aに戻り、ステップ102において前述のようにして擬似ノックの発生有無を判定した後に、ステップ103に進む。ステップ103では、ステップ102での判定結果の如何に関わらず、後述する図5Bに示す第1の処理としての処理αと、図5Cに示す第2の処理としての処理βとを並列処理する。図5Bに示す処理αは、ステップ107~111により構成され、擬似ノックが発生していないことが判定されているときの第2の移動平均個数を用いた処理である。図5Cに示す処理βは、ステップ112~115により構成され、擬似ノックが発生していることが判定されているときの第2の移動平均個数を用いた処理である。なお、処理αと処理βを並列処理する理由については、後述する。ここで、図5Bに示す処理αについて説明する。図5Bのフローチャートに示す処理αは、第1の移動平均個数MAV1の設定ステップ107、第2の移動平均個数MAV2αの設定ステップ108、移動平均実施ステップ109、移動平均後のスペクトル列のピーク値VMAV2αの抽出ステップ110、ノック判定閾値VTHαの算出ステップ111により構成される。図5Bにおいて、最初にステップ107により、前述のステップ101にて取得した回転数Ne、充填率Ceと、ノック検出に用いる周波数F1および周波数F2と、図7に示す第1の移動平均個数マップとから、第1の移動平均個数MAV1を設定する。ここで、図7に示す第1の移動平均個数マップについて説明する。図7に示す第1の移動平均個数マップは、回転数Ne、充填率Ce、ノック検出に用いる周波数F1および周波数F2をパラメータとし、回転数Neに関する閾値Ne11と閾値Ne12、充填率Ceに関する閾値Ce11乃至閾値Ce16、周波数F1、周波数F2、によって区分けされている。なお、図7に示すマップは、の説明の便宜上、Ne<Ne11を低回転数域A1、Ne11≦Ne<Ne12を中回転数域A2、Ne≧Ne12を高回転数域A3として区分けしている。そして低速回転数域A1において、Ce<Ce11を低負荷域B1、Ce11≦Ce<Ce12を中負荷域B2、Ce≧Ce12を高負荷域B3として区分けしている。同様に、中回転数域A2において、Ce<Ce13を低負荷域B4、Ce13≦Ce<Ce14を中負荷域B5、Ce≧Ce14を高負荷域B6、として区分けしている。更に、高回転数域A3において、Ce<Ce15を低負荷域B7、Ce15≦Ce<Ce16を中負荷域B8、Ce≧Ce146を高負荷域B9、として区分けしている。図7におけるマップの各区分け部分に、第1の移動平均個数MAV1A1、B1、F1~MAV1A3、B9、F2を格納しており、例えばMAV1A1、B1、F1は低回転数域A1、低負荷域B1、周波数F1での第1の移動平均個数MAV1の値を示す。なお、第1の移動平均個数マップの各閾値および第1の移動平均個数MAV1A1、B1、F1~MAV1A3、B9、F2は、予めECU14のROM領域に書き込まれるものである。図7に示すマップにおける第1の移動平均個数MAV1A1、B1、F1~MAV1A3、B9、F2は、機械ノイズや電気ノイズを低減してS/Nが向上するよう設定するものであり、次に図8を参照しながら、第1の移動平均個数MAV1A1、B1、F1~MAV1A3、B9、F2と、第1の移動平均個数の各閾値の設定について説明する。図8は、ノックが発生しているときと、機械ノイズが発生しているときただしノックは未発生のクランク角とスペクトルの関係特性を比較したチャートであり、横軸はクランク角、縦軸はスペクトルを示す。図8の1は、ATDC-10°CAからATDC80°CAの間の振動データを用いてDFTを実施したときのクランク角とスペクトルの関係特性を示す。図8の2は、図8の1のクランク角とスペクトルの関係特性に対して、ノック波形の幅図8-1参照と同じ期間である移動平均個数を用いて移動平均を実施したときのクランク角とスペクトルの関係特性を示す。図8の3は、図8の1のクランク角とスペクトルの関係特性に対して、図8-の2よりも多い移動平均個数を用いて移動平均を実施したときのクランク角とスペクトルの関係特性を示す。また、図8の1、図8の2、図8の3において、Sはノックが発生しているときのクランク角とスペクトルの関係特性のピーク値、Nは機械ノイズが発生しているときのクランク角とスペクトルの関係特性のピーク値を示し、夫々の図の下の欄にピーク値Sとピーク値Nとの比S/Nを示している。図8の1ではS/N=0.875であるのに対して、図8の2ではS/N=3.195、図8の3ではS/N=2.762となり、第1の移動平均個数はノック波形の幅と同じ期間である移動平均個数に設定することが好ましい。そこで、事前に内燃機関の試験を実施して、各運転状態でのクランク角とスペクトルの関係特性に基づいてノック波形の幅を特定するなどにより、図7に示すマップの第1の移動平均個数MAV1A1、B1、F1~MAV1A3、B9、F2と第1の移動平均個数マップの各閾値を設定する。ここで事前に実施する内燃機関の試験において、回転数Neは1000[r/min]と3000[r/min]と5000[r/min]の3パターンを実施し、充填率Ceは回転数Neの各パターンに対して、スロットル全開時の充填率Ce_HIと、ノック限界である点火時期とトルクが最大となる点火時期とが略一致する時の充填率Ce_LOと、スロットル全開時の充填率Ce_HIとトルクが最大となる点火時期が略一致する時の充填率Ce_LOとの中間の充填率Ce_MIDと、の3パターンを実施して、各運転状態でのノック波形の幅を特定した場合を例に説明する。第1の移動平均個数マップの回転数Neに関する閾値は、Ne11=2000[r/min]回転数1000[r/min]と3000[r/min]の中間、Ne12=4000[r/min]回転数3000[r/min]と5000[r/min]の中間とする。また、第1の移動平均個数マップの充填率Ceに関する閾値は、例えばCe13は3000[r/min]での前述のCe_LOとCe_MIDの中間の充填率Ceの値例としてC13=0.5とするを設定し、Ce14は3000[r/min]でのCe_MIDとCe_HIの中間の充填率Ceの値例としてC14=0.7とするを設定しておけばよい。また、第1の移動平均個数マップのMAV1A1、B1、F1~MAV1A3、B9、F2については、例えば、MAV1A1、B1、F1にはNe=1000[r/min]、Ce=1000[r/min]でのCe_LO、周波数F1でのノック波形の幅と同じ期間である移動平均個数を設定し、MAV1A2、B5、F2にはNe=3000[r/min]、Ce=3000[r/min]でのCe_MID、周波数F2でのノック波形の幅と同じ期間である移動平均個数を設定し、MAV1A3、B9、F1にはNe=5000[r/min]、Ce=5000[r/min]でのCe_HI、周波数F1でのノック波形の幅と同じ期間である移動平均個数を、それぞれ設定しておけばよい。以上のようにして、第1の移動平均個数マップのMAV1A1、B1、F1~MAV1A3、B9、F2と、第1の移動平均個数マップの各閾値は設定される。なお、図7の第1の移動平均個数マップは一例であって、事前の内燃機関試験で実施する運転状態のパターンが上記より多い場合は、必要に応じて第1の移動平均個数マップをより細分化してもよい。図7の第1の移動平均個数マップの各閾値が前述の値であるとして、前述の図5Aにおけるステップ101で取得した回転数Ne、充填率Ceが、それぞれNe=2000[r/min]、Ce=0.8であった場合は、図7の第1の移動平均個数マップ中の矢印Yにより指し示す区分け部分にあたるため、周波数F1に対する処理を実施しているのであれば第1の移動平均個数MAV1をMAV1A2、B6、F1の値に設定し、周波数F2に対する処理を実施しているのであれば第1の移動平均個数MAV1をMAV1A2、B6、F2の値に設定する。図5Bに戻り、ステップ107により第1の移動平均個数MAV1を前述のように設定した後に、ステップ108に進む。ステップ108では、第2の移動平均個数MAV2αとして、ステップ107で設定した第1の移動平均項数MAV1の値を設定し、その後にステップ109に進む。ステップ109では、ステップ108で設定した第2の移動平均個数MAV2αを用いて移動平均を実施し、その後ステップ110に進む。ステップ110では、ステップ109で算出した移動平均後のスペクトル列からピーク値VMAV2αを抽出し、その後、ステップ111に進む。ステップ111では、前述の式1~4を用いてステップ110で算出した第2の移動平均個数VMAV2αに対するノック判定閾VTHαを算出し、処理αを終了する。次に図5Cに示す処理βについて説明する。図5Cのフローチャートに示す処理βは、第2の移動平均個数MAV2βの設定ステップ112、移動平均実施ステップ113、移動平均後のスペクトル列のピーク値VMAV2βの抽出ステップ114、ノック判定閾値VTHβの算出ステップ115で構成される。図5Cにおいて、最初にステップ112により、第2の移動平均個数MAV2βとしてMAVβを設定する。MAVβは予めECU14のROM領域に書き込まれるものであり、MAVβ=1移動平均なし、もしくは、例えばMAVβ=3急峻な電気ノイズや機械ノイズを低減するための設定として、移動平均を実施しない、もしくは第1の移動平均個数より少ない個数を第2の移動平均個数として設定することにより、擬似ノック発生時のS/Nの悪化を抑制する。ステップ112で第2の移動平均個数MAV2βを設定した後にステップ113に進む。ステップ113では、ステップ112で設定した第2の移動平均個数MAV2βを用いて移動平均を実施してステップ114に進む。ただし、MAV2β=1の場合は移動平均は実施せずにステップ114に進む。ステップ114では、ステップ113で算出した移動平均後のスペクトル列MAV2β=1の場合は、移動平均未実施のスペクトル列からピーク値VMAV2βを抽出し、その後、ステップ115に進む。ステップ115では、前述の式1~4を用いてステップ114で算出した第2の移動平均個数VMAV2βに対するノック判定閾値VTHβを算出し、処理βを終了する。次に、図5Aに戻り、ステップ103において前述の処理α図5B、処理β図5Cの並列処理を完了した後に、ステップ104に進む。ステップ104では、ステップ102で擬似ノックが発生していないことが判定されているときはステップ105に進み、擬似ノックが発生していることが判定されているときはステップ106に進む。ステップ105に進んだ場合は、擬似ノックが発生していないことが判定されているので、第1の移動平均個数と同じ個数を第2の移動平均個数として設定したときの結果を用いてノック強度を算出する。即ち、処理αのステップ110で算出した移動平均後のスペクトル列のピーク値VMAV2αとステップ111で算出したノック判定閾値VTHαから前述の式5を用いてノック強度を算出し、図3の1点火毎遅角量算出部21に送る。ステップ106に進んだ場合は、擬似ノックが発生していることが判定されているので、第2の移動平均個数MAV2β=1、もしくは第1の移動平均個数より少ない個数を第2の移動平均個数としての設定したときの結果を用いてノック強度を算出する。即ち、処理βのステップ114で算出した第2の移動平均個数MAV2βとステップ115で算出したノック判定閾値VTHβから前述の式5を用いてノック強度を算出し、図3の1点火毎遅角量算出部21に送る。次に、図10を用いて、図5Aのステップ103において、擬似ノックが発生しているか否かの判定結果に関わらず、処理αと処理βを並列処理する理由を説明する。図10は、この発明の実施の形態1による内燃機関の制御装置における、ノック未発生時におけるピーク値とノック判定閾値の挙動を示すチャートであり、ノック未発生40[sec]以降で擬似ノックが発生していると判定におけるピーク値VMAV2VMAV2αおよびVMAV2βとノック判定閾値VTHVTHαおよびVTHβの挙動を示している。図10の1は、図5Aのステップ103により処理αと処理βを並列処理しておらず、それに代えて図5Aのステップ102で擬似ノックが発生していないと判定されているときは処理αのみ実施し、擬似ノックが発生している判定されているときは処理βのみを実施しているときのピーク値VMAV2およびノック判定閾値VTHの挙動を示している。図10の2は、図5Aのステップ103で処理αと処理βを並列処理しているときのピーク値VMAV2およびノック判定閾値VTHの挙動を示し、図10の2の上側のチャートが処理αでのピーク値VMAV2=VMAV2αおよびノック判定閾値VTH=VTHαの挙動、下側のチャートが処理βでのピーク値VMAV2=VMAV2βおよびノック判定閾値VTH=VTHβの挙動を示している。なお、図10に示すチャートでは、VMAV2β=1としている。また、各チャートの横軸は時間[sec]、縦軸はピーク値VMAV2およびノック判定閾値VTHである。また、図10の2の上側のチャートにおいて網掛けを施している領域40[sec]以降の領域と、下側のチャートにおいて網掛けをしている領域40[sec]以前の領域は、図5Aのステップ104でノック強度を算出しないと判定された区間を示している。図10の1に示すように、処理αと処理βを並列処理していない場合は、擬似ノックが発生していない運転状態から擬似ノックが発生している運転状態へ突入した際に、擬似ノックが発生していないことが判定されているときの第2の移動平均個数と擬似ノックが発生していることが判定されているときの第2の移動平均個数の違いにより、ピーク値VMAV2に急激な変化が生じ、ノック判定閾値VTHが収束するまでの間に誤検出を生じてしまう。それに対して、図10の2に示すように、処理αと処理βを並列処理する場合は、擬似ノックが発生していない運転状態から擬似ノックが発生している運転状態へ突入した際でも、ピーク値VMAV2に急激な変化が生ぜず、誤検出を生じない。以上説明したとおり、この発明の実施の形態1による内燃機関の制御装置では、ノック検出に用いる周波数、内燃機関の回転数、負荷、A/Fの少なくともいずれか1つにもとづいて擬似ノックの発生有無を判定する。そして、擬似ノックが発生していないことが判定されているときには、第1の移動平均個数と同じ個数を第2の移動平均個数として設定して移動平均を実施する。一方、擬似ノックが発生していることが判定されているときには、第2の移動平均個数=1、もしくは第1の移動平均個数より少ない個数を第2の移動平均個数として設定して移動平均を実施する。このようにすることで、疑似ノックが発生してもノック検出性および耐誤検出性の悪化を抑制する効果が得られる。また、この発明の実施の形態1による内燃機関の制御装置では、擬似ノックが発生しているか否かの判定結果に関わらず、擬似ノックが発生していないことが判定されているときの第2の移動平均個数と、擬似ノックが発生していることが判定されているときの第2の移動平均個数の2つの第2の移動平均個数を用いて、移動平均の実施からノック判定閾値の算出までを並列処理する。このようにすることで、擬似ノックが発生している運転状態と擬似ノックが発生していない運転状態とが切り替わった直後からすみやかにノックを判定することができ、擬似ノックが発生している運転状態と擬似ノックが発生していない運転状態とが切り替わった直後からノック判定閾値が収束するまでの間に誤検出が生じることを抑制する効果が得られる。