(57)【要約】【課題】演算負荷を過大に増加させず高い時間分解能でスペクトル群を算出してノックに起因する信号の検出性を向上させる。【解決方法】ノックセンサからの出力信号のノック検出ウィンドウ内でのＡ／Ｄ変換後の値に対し、値の最初から所定個数分を第１のデータ群とし、第１のデータ群の最初から第１のシフト数分シフトした所定個数分を第２のデータ群とし、以下順次Ａ／Ｄ変換後の値を所定個数と第１のシフト数を基にデータ群毎に区切り、各データ群に対し周波数解析を実施して時間分解能の低い第１のスペクトル群を出力し、第１のスペクトル群から大きなスペクトルが出力される区間を抽出し、その区間内でのＡ／Ｄ変換後の値を所定個数と第１のシフト数より小さい第２のシフト数とで各データ群に区切って、各データ群に対して周波数解析を実施して第２のスペクトル群を出力し、第１のスペクトル群および第２のスペクトル群を基にノック判定を実施する。【選択図】図２
2011032993.tif 000002
【特許請求の範囲】
【請求項１】
エンジンの振動またはシリンダ内圧振動を検出するセンサと、前記センサから出力される信号に各種処理を施しノック判定を実施してノック検出時に点火時期を遅角するためのノック遅角量を演算するノック制御手段とを備え、
前記ノック制御手段は、
前記センサから出力される信号のノック検出ウィンドウ内でのＡ／Ｄ変換後の値に対して、ノック検出ウィンドウ内でのＡ／Ｄ変換後の値の最初から所定個数分を第１のデータ群とし、第１のデータ群の最初から第１のシフト数分シフトしたところから所定個数分を第２のデータ群とし、第２のデータ群の最初から第１のシフト数分シフトしたところから所定個数分を第３のデータ群とし、以下順次ノック検出ウィンドウ内でのＡ／Ｄ変換後の値を所定個数と第１のシフト数を基にデータ群毎に区切り、各データ群に対して単数または複数の周波数帯での周波数解析を実施して第１のスペクトル群を出力し、
前記第１のスペクトル群を基にノック検出ウィンドウよりも狭い詳細検出区間を抽出し、前記詳細検出区間内でのＡ／Ｄ変換後の値を前記所定個数と第１のシフト数より小さい第２のシフト数とで各データ群に区切り、各データ群に対して単数または複数の周波数帯での周波数解析を実施して第２のスペクトル群を出力し、
前記第１のスペクトル群および第２のスペクトル群に基づいてノック判定を実施する
ことを特徴とする内燃機関の制御装置。
【請求項２】
請求項１に記載の内燃機関の制御装置において、
前記第１のスペクトル群のうち大きさが上位１番目〜所定番目のスペクトルを基に、前記詳細検出区間を抽出する
ことを特徴とする内燃機関の制御装置。
【請求項３】
請求項１または２に記載の内燃機関の制御装置において、
前記第１のスペクトル群のうち大きさが所定値以上の各スペクトルを基に、前記詳細検出区間を抽出する
ことを特徴とする内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、内燃機関の制御装置に関し、特に、エンジンの気筒内のエンドガスの自己着火により発生する圧力波に起因するノックを制御し、ノック検出性を向上できるノッキング制御装置に関する。
【背景技術】
【０００２】
エンジンにノックが発生すると、特有の共鳴周波数成分を持った振動が発生する。そこで、この振動を検出することによりノックの発生を判定することができる。例えば特許第３４７１０３４号では、ノックセンサから出力されるノックセンサ信号に対して、ノック検出ウィンドウ内でのＡ／Ｄ変換後の値を所定個数毎に区切り、区切られた各データ群に対して高速フーリエ変換（以下、ＦＦＴと称す）を実施することでノック検出ウィンドウ内での各周波数帯のスペクトル群を演算し、さらに各周波数帯でのスペクトル群のピークホールド値（以下、Ｐ／Ｈ値と称す）をそれぞれ演算してそれらを基にノック制御を実施している。
【０００３】
その際、データ群毎にＦＦＴすることにより生じる誤差を軽減するために窓関数を乗じるので、各データ群の両端近傍にノックに起因する信号がある場合はそのスペクトルの大きさが小さくなる恐れがある。これに対して、例えば特許第３０９８１０４号では、ノックセンサ信号のＡ／Ｄ変換後の値を所定個数毎に区切って作成した各データ群だけでなく、各データ群の両端近傍をまたいで所定個数毎に区切った作成した各データ群に対してもＦＦＴを実施することで、ノックセンサ信号のＡ／Ｄ変換後の値を所定個数毎に区切って作成した各データ群の両端近傍の信号の検出性を向上させることを示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第３４７１０３４号明細書
【特許文献２】特許第３０９８１０４号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許第３０９８１０４号では、ノックセンサ信号のＡ／Ｄ変換後の値の最初から所定個数分を第１のデータ群、第１のデータ群の最初から所定のシフト数分シフトしたところから所定個数分を第２のデータ群、第２のデータ群の最初から所定のシフト数分シフトしたところから所定個数分を第３のデータ群、という具合にノックセンサ信号のＡ／Ｄ変換後の値を各データ群に順次区切っていることと同様であり、シフト数を小さくするほどデータ群の数は増えて出力されるスペクトル群の時間分解能は高くなりノックに起因する信号の検出性は高くなる（特許第３０９８１０４号の実施例はシフト数を所定個数の１／２とした場合に相当）。
【０００６】
しかし、シフト数を小さくしてデータ群の数を増やすほどスペクトル群算出のための演算負荷が増大（シフト数を１／２倍すると、データ群は約２倍となるので演算負荷も約２倍）するため、マイコンの処理能力等の制約によりシフト数を十分小さくできないことも考えられる。そうすると、以下の課題が生じる恐れがある。
【０００７】
図６は、ノック発生時のノック検出ウィンドウ内でのＡ／Ｄ変換後の値を所定個数Ｎ＝３２、シフト数＝Ｎ／２（＝１６）で区切って離散フーリエ変換（以下、ＤＦＴと称す）を実施した場合のある周波数のスペクトル群と、所定個数＝３２、シフト数＝１（時間分解能が最大）で区切ってＤＦＴを実施した場合のスペクトル群のグラフイメージを示しており、横軸は時間（またはクランク角）、縦軸はスペクトルを示す。
【０００８】
図６に示すとおり、シフト数Ｎ／２の場合のスペクトル群はシフト数１のそれを間引きしたものとなる。このため、場合によっては図６に示すように時間分解能不足によりＰ／Ｈ値が低下し（図６のα（シフト数１でのＰ／Ｈ値）、β（シフト数Ｎ／２でのＰ／Ｈ値）参照）、結果として、ノック検出性の低下につながる恐れがある。また、時間分解能不足を解消するために、より高性能のマイコンを搭載してコストアップにつながる恐れがある。
【０００９】
この発明は、上記のような問題点を解決するためになされたもので、演算負荷を過大に増加させることなくノック検出性を向上させることができる内燃機関の制御装置を得ることを目的としている。
【課題を解決するための手段】
【００１０】
この発明に係る内燃機関の制御装置は、エンジンの振動またはシリンダ内圧振動を検出するセンサと、前記センサから出力される信号に各種処理を施しノック判定を実施してノック検出時に点火時期を遅角するためのノック遅角量を演算するノック制御手段とを備え、前記ノック制御手段は、前記センサから出力される信号のノック検出ウィンドウ内でのＡ／Ｄ変換後の値に対して、ノック検出ウィンドウ内でのＡ／Ｄ変換後の値の最初から所定個数分を第１のデータ群とし、第１のデータ群の最初から第１のシフト数分シフトしたところから所定個数分を第２のデータ群とし、第２のデータ群の最初から第１のシフト数分シフトしたところから所定個数分を第３のデータ群とし、以下順次ノック検出ウィンドウ内でのＡ／Ｄ変換後の値を所定個数と第１のシフト数を基にデータ群毎に区切り、各データ群に対して単数または複数の周波数帯での周波数解析を実施して第１のスペクトル群を出力し、前記第１のスペクトル群を基にノック検出ウィンドウよりも狭い詳細検出区間を抽出し、前記詳細検出区間内でのＡ／Ｄ変換後の値を前記所定個数と第１のシフト数より小さい第２のシフト数とで各データ群に区切り、各データ群に対して単数または複数の周波数帯での周波数解析を実施して第２のスペクトル群を出力し、前記第１のスペクトル群および第２のスペクトル群に基づいてノック判定を実施することを特徴とする。
【発明の効果】
【００１１】
この発明によれば、第１のスペクトル群および第２のスペクトル群を基にノック判定を実施することで、演算負荷を過大に増加させることなく、高い時間分解能でスペクトル群を算出してノックに起因する信号の検出性を向上させて、ノック検出性を向上させることができる。
【図面の簡単な説明】
【００１２】
【図１】この発明の実施の形態１によるノッキング制御装置のシステム構成を示す図である。
【図２】ノック検出ウィンドウ内での高速Ａ／Ｄ変換の実施からＰ／Ｈ値および平均値算出までのフローを示す図である。
【図３】第１のスペクトル群算出の具体例を示す図である。
【図４】第２のスペクトル群算出の具体例を示す図である。
【図５】第１のスペクトル群の上位１、２番目のスペクトルから詳細検出区間を抽出する場合の詳細検出区間および第２のスペクトル群を示す図、そして第１のスペクトル群のうち所定値以上のスペクトルから詳細検出区間を抽出する場合のノック発生時とノック未発生時の詳細検出区間を示す図である。
【図６】ノック発生時のノック検出ウィンドウ内でのＡ／Ｄ変換後の値を高い時間分解能（シフト数＝１）および低い時間分解能（シフト数＝１６）を実施した場合のある周波数のスペクトル群を示す図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照しながら、この発明の実施の形態について詳細に説明する。
【００１４】
図１は、この発明の実施の形態１に係るノッキング制御装置のシステム構成を示す図である。ノッキング制御装置は、ノッキングを検出するためにエンジンに取り付けられている、例えば圧電素子からなる非共振型ノックセンサ１と、非共振型ノックセンサ１からのアナログ信号に各種処理を施して最終的にノック遅角量を演算する電子制御ユニット（以下、「ＥＣＵ」と称す）２９とから構成される。ここで、ＥＣＵ２９は、ノックＩ／Ｆ回路と、ノックＩ／Ｆ回路を介した非共振型ノックセンサ１から出力される信号に各種処理を施しノック判定を実施してノック検出時に点火時期を遅角するためのノック遅角量を演算するノック制御手段としてのノック制御ロジックに大別される。なお、非共振型ノックセンサ１に関しては、それに限らずエンジンの振動またはシリンダ内圧振動を検出するセンサであればよく、例えば筒内圧センサなどを使用してもよい。
【００１５】
続いて、図１を用いてＥＣＵ２９内のシステム構成を説明する。非共振型ノックセンサ１から出力されたアナログ信号はバッファ２に送られる。そして、バッファ２から出力されるアナログ信号は、アンチエイリアス用のローパスフィルタ及び増幅器（以下、ローパスフィルタをＬＰＦと称す）５と故障検出用ＬＰＦ３に送られる。故障検出用ＬＰＦ３では、バッファ２でプルアップ・ダウンされたアナログ信号の交流成分を減衰させる。ノックセンサ故障検出部４は、この故障検出用ＬＰＦ３から出力される直流電圧をモニタすることで非共振型ノックセンサ１の故障検出を実施する。
【００１６】
一方、ＬＰＦ及び増幅器５では、アナログ信号のアンチエイリアシング処理を実施したあとでスイッチドレジスタによりアナログ信号の増幅を実施する。なお、スイッチドレジスタはエンジン回転数に応じて生成されるゲイン制御信号６により制御される。
【００１７】
そして、高速Ａ／Ｄ変換部７は、ＬＰＦ及び増幅器５で処理されたアナログ信号に対して高速Ａ／Ｄ変換を実施する。高速Ａ／Ｄ変換部７による高速Ａ／Ｄ変換は、ノック検出ウィンドウ判定部８で生成されるノック検出ウィンドウ信号のＬＯＷ期間中に実施される。
【００１８】
高速Ａ／Ｄ変換を実施した後に、高速Ａ／Ｄ変換後のデータに対して時間−周波数解析を実施する。本実施の形態では、２つの周波数帯（例えば６．２５ｋＨｚと１５．６３ｋＨｚ）について時間−周波数解析を実施するものとして以下の説明を行うが、解析する周波数の個数および周波数帯に関してはこれに限定するものではない。信号処理部９では第１の周波数帯（以下、周波数１と称す）での時間−周波数解析を実施し、信号処理部１８では第２の周波数帯（以下、周波数２と称す）での時間−周波数解析を実施する。なお、本実施の形態では、信号処理部９、１８で実施される時間−周波数解析は、高速Ａ／Ｄ変換後のデータを区切ってＤＦＴを実施するものであるが、時間−周波数解析はこれに限定するものではない。
【００１９】
ここで、図２〜図４を用いて図１の信号処理部９、１８で実施される高速Ａ／Ｄ変換後のデータ区切り処理からＤＦＴの演算、詳細検出区間の抽出等を経て、ピークホールド（以下、Ｐ／Ｈと称す）Ｐ／Ｈ値および平均値の算出までの説明を行う。図２では、高速Ａ／Ｄ変換部７およびノック検出ウィンドウ判定部８での処理から信号処理部９、１８での処理を経てピークホールド算出部１０、１９及び平均値算出部１４、２３での処理までのフローを示している。
【００２０】
図２のＳ２０１に示すとおりノック検出ウィンドウ内で高速Ａ／Ｄ変換を実施した後で、図２のＳ２０２、Ｓ２０３において比較的低い時間分解能でノック検出ウィンドウ内のスペクトル群（第１のスペクトル群）の算出を実施する。その後、図２のＳ２０４に示すとおり第１のスペクトル群から大きなスペクトルが出力される区間を抽出し、それを詳細検出区間とする。そして、図２のＳ２０５、Ｓ２０６において第１のスペクトル群の算出時よりも高い時間分解能で詳細検出区間内のスペクトル群（第２のスペクトル群）の算出を実施し、図２のＳ２０７において第１のスペクトル群および第２のスペクトル群からＰ／Ｈ値および平均値を算出する。
【００２１】
このように、まず比較的低い時間分解能でノック検出ウィンドウ内のスペクトル群を算出、その後に高い時間分解能でノック検出ウィンドウよりも狭い詳細検出区間内のスペクトル群を算出することで演算負荷を過大に増加させることなく、高い時間分解能でスペクトル群を算出してノックに起因する信号の検出性を向上させる。
【００２２】
以下、図３を用いた高速Ａ／Ｄ変換から第１のスペクトル群の算出までの詳細説明、図４を用いた詳細検出区間の決定から第２のスペクトル群の算出までの詳細説明を行う。
【００２３】
図３では、図１のＬＰＦ及び増幅器５の後の信号を高速Ａ／Ｄ変換部７、ノック検出ウィンドウ判定部８の処理を経て信号処理部９または信号処理部１８での処理により第１のスペクトル群が出力されるまでの具体例を示しており、図３の（ａ）にノックセンサ信号（図１のＬＰＦ及び増幅器５の後の信号）を示す。図３の（ａ）に示すノックセンサ信号に対して図３の（ｂ）に示すノック検出ウィンドウ信号のＬＯＷ期間中に高速Ａ／Ｄ変換を実施する（図２のＳ２０１の処理）。その結果、図３の（ｃ）に示すようなデータｘｓ（０）〜ｘｓ（１５９）が得られる。
【００２４】
その後、データｘｓ（０）〜ｘｓ（１５９）を所定個数（図３ではＮ＝３２。なお、所定個数はこれに限定されるものではない）と所定のシフト数（以下、このシフト数を第１のシフト数と称す）で区切り、図３の（ｄ）に示すようなデータ群（ｘｓ１〜ｘｓ９）を得る（図２のＳ２０２の処理）。ｘｓ１はｘｓ（０）〜所定個数分までのデータ群（＝ｘｓ（０）〜ｘｓ（３１））、ｘｓ２はｘｓ１の開始（＝ｘｓ（０））から第１のシフト数分シフトしたところ（＝ｘｓ（１６））〜所定個数分までのデータ群（＝ｘｓ（１６）〜ｘｓ（４７））、ｘｓ３はｘｓ２の開始（＝ｘｓ（１６））から第１のシフト数分シフトしたところ（＝ｘｓ（３２））〜所定個数分までのデータ群（＝ｘｓ（３２）〜ｘｓ（４７））で、以下順次ｘｓ９まで区切られている。なお、第１のシフト数（図３ではＮ／２）は、マイコンの処理能力に余裕があればＮ／４にするなどしてさらに時間精度を上げてもよい。
【００２５】
図３の（ｄ）に示す処理の実施後、高速Ａ／Ｄ変換後のデータを各データ群に区切って周波数解析することにより生じる誤差を軽減するために、図３の（ｅ）に示すように各データ群ｘｓ１〜ｘｓ９に対して窓関数をかける。本実施の形態では、窓関数として、式（１）に示すハニング窓を使用するが、窓関数に関してはこれに限定するものではない。
【００２６】
【数１】
2011032993.tif 000003
【００２７】
ここで、ｗ（ｎ）：ハニング窓、Ｎ：所定個数
【００２８】
例として、ｘｓ１に窓関数をかける場合の演算を式（２）に示す（[ ]は配列を表す）。
【００２９】
【数２】
2011032993.tif 000004
【００３０】
ここで、ｘｓｗ１（ｎ）：合成関数（ｘｓ１に窓関数を掛けた結果）
ｘｓｗ１（０）〜ｘｓｗ１（Ｎ−１）：ｘｓｗ１（ｎ）の配列成分
【００３１】
図３の（ｅ）に示す処理を実施後、図３の（ｆ）に示すようにデータ群毎にＤＦＴを行い、第１のスペクトル群を演算する（図２のＳ２０３の処理）。スペクトルの演算例としてｘｓｗ１（Ｎ）の場合を式（３）に示す。
【００３２】
【数３】
2011032993.tif 000005
【００３３】
ここで、ＸｓＳ１（ｋ）：ｘｓｗ１（ｎ）に対してＤＦＴを実施したときの周波数ｋ/                          ＮＴｓのスペクトル
ｋ：周波数に関する変数（抽出する周波数に応じてｋ＝０，１，２，・・・Ｎ              −１のいずれかを設定）
Ｔｓ：データｘｓのサンプリング周期
なお、各データ群でのＤＦＴ結果に対し、その時間（クランク角）は各データ群の区間の中間タイミングとする。
【００３４】
このように、高速Ａ／Ｄ変換後のデータを所定個数と第１のシフト数で区切って周波数解析を実施することにより、比較的低い時間分解能（演算負荷は小さい）でノック検出ウィンドウ内のスペクトルの分布状態を確認する。
【００３５】
続いて、図４で詳細説明を行う。図４では、詳細検出区間の抽出から第２のスペクトル群が出力されるまでの具体例を示している。図４の（ａ）に図３の（ｆ）で示した第１のスペクトル群と詳細検出区間とを示す。図４の（ａ）では、詳細検出区間を第１のスペクトル群の内で最大のスペクトル（図４の（ａ）のＸｓＳ４）を中心に隣接するスペクトル（図４の（ａ）のＸｓＳ３、ＸｓＳ５）が算出される範囲で抽出している（図２の（Ｓ２０４）の処理）。なお、詳細検出区間の範囲はこれに限らず、マイコンの処理能力に余裕があれば最大のスペクトルの２個隣（図４の（ａ）のＸｓＳ２、ＸｓＳ６）が算出される範囲で抽出するなどしてもよい。また、後述のように第１のスペクトル群の上位１〜所定番目のスペクトルを基に詳細検出区間を抽出したり、第１のスペクトル群のうち所定値以上のスペクトルを基に詳細検出区間を抽出したりしてもよい。
【００３６】
詳細検出区間の抽出後、図４の（ｂ）に示すように図３の（ｃ）の高速Ａ／Ｄ変換後のデータから詳細検出区間のデータ（＝ｘｓ（３２）〜ｘｓ（９５））を抽出する。そして、図４の（ｃ）に示すように詳細検出区間のデータを所定個数（図３の（ｄ）のときと同じ値とする）と第１のシフト数よりも小さい所定のシフト数（以下、このシフト数を第２のシフト数と称す）で図３の（ｅ）の時と同様に区切ってデータ群（ｙｓ１〜ｙｓ９）を得る（図２のＳ２０５の処理）。なお、第２のシフト数（図４ではＮ／８）も第１のシフト数と同様に、マイコンの処理能力に余裕があればＮ／１６にするなどしてさらに時間精度を上げてもよい。
【００３７】
図４の（ｃ）の処理の実施後、図４の（ｄ）に示すように図３の（ｅ）の時と同様に各データ群ｙｓ１〜ｙｓ９に対して窓関数をかける。演算式は式（１）、（２）と同様なので省略する。
【００３８】
図４の（ｄ）の処理の実施後、図４の（ｅ）に示すようにデータ群毎にＤＦＴを行い、第２のスペクトル群を演算する（図２のＳ２０６の処理）。なお、第２のスペクトル群の演算例は式（３）と同様なので省略する。
【００３９】
ここで、例としてノック検出ウィンドウ内での高速Ａ／Ｄ変換後のデータ＝３５２個、所定個数Ｎ＝３２個とした場合、シフト数＝Ｎ／８でノック検出ウィンドウ内のスペクトルを算出するとスペクトルの個数は８１個となる。一方、本実施の形態のように、第１のシフト数＝Ｎ／２でノック検出ウィンドウ内のスペクトルを、第２のシフト数＝Ｎ／８で詳細検出区間内のスペクトルを算出する場合はスペクトルの個数は合わせて３０個となり演算負荷は小さくなる（所定個数Ｎが同じならばスペクトルの個数が多いほど演算負荷は増大する）。
【００４０】
このように、詳細検出区間を抽出し、詳細検出区間内の高速Ａ／Ｄ変換後のデータを所定個数と第１のシフト数より小さい第２のシフト数で区切って周波数解析を実施することにより、演算負荷を過大に増加させることなく高い時間分解能のスペクトル群が得られる。
【００４１】
また、上記では、第１のスペクトル群の内で最大のスペクトルを基に詳細検出区間を抽出したが、図５に示す２通りの方法で詳細検出区間を抽出してもよい。図５は、第１のスペクトル群の上位１、２番目のスペクトルから詳細検出区間を抽出したときの詳細検出区間と第２のスペクトル群、そして第１のスペクトル群のうち所定値以上のスペクトルから詳細検出区間を抽出したときのノック発生時およびノック未発生時における詳細検出区間を示している。
【００４２】
第１のスペクトル群の上位１、２番目のスペクトルから詳細検出区間を抽出する場合では、第１のスペクトル群の上位１番目と２番目のそれぞれで詳細検出区間（図５の詳細検出区間１、詳細検出区間２）を抽出し、詳細検出区間１と詳細検出区間２の論理和をもって詳細検出区間とする。
【００４３】
このようにすることで、図５に示すように第１のスペクトル群の上位１番目の近傍ではなく２番目の近傍にスペクトル群のＰ／Ｈ値がある場合にも、Ｐ／Ｈ値を検出もれすることがない。なお、マイコンの処理能力に余裕があれば第１のスペクトル群の上位１番目〜４番目から同様に詳細検出区間を抽出するなどして詳細検出区間の範囲を拡大してもよい。
【００４４】
第１のスペクトル群のうち所定値以上のスペクトルから詳細検出区間を抽出する場合では、図５に示すように第１のスペクトル群のうち所定値以上のスペクトルのそれぞれで詳細検出区間を抽出し、それらの論理和をもって詳細検出区間とする。所定値はエンジン回転数、充填効率、点火時期等の運転条件に応じてマップ設定すればよいが、所定値の設定はこれに限定するものではない。
【００４５】
このようにすることで、図５に示すようにノック発生時には第１のスペクトル群の大きさに応じて詳細検出区間が抽出される。また、ノック未発生時には詳細検出区間が抽出されないので、不必要に詳細検出区間で第２のスペクトルを算出せず、演算負荷を軽減できる。なお、上記２とおりの方法を合わせて、第１のスペクトル群のうち大きさが所定値以上でかつ上位１番目〜所定番目のスペクトルから詳細検出区間を抽出するなどしてもよい。
【００４６】
図１に戻って、信号処理部９以降の説明を続ける。
【００４７】
信号処理部９での信号処理により出力されるＤＦＴのスペクトルに対して、ピークホールド算出部１０では第１のスペクトル群および第２のスペクトル群からＰ／Ｈ値を演算し、平均値算出部１４では第１のスペクトル群および第２のスペクトル群から平均値を演算する（図２のＳ２０７の処理）。なお、平均値算出の際に第１のスペクトル群と第２のスペクトル群とで重複するスペクトルの重複分は省くものとする。
【００４８】
そして、ノック判別スレショルド演算部１１においてピークホールド算出部１０で得られたＰ／Ｈ値を一次なまし処理した値にゲインを乗じてオフセットを付加することで周波数１のＰ／Ｈ値に対するノック判別スレッショルドを演算する。なお、ノック判別スレッショルドの演算に関してはこれに限定するものではない。
【００４９】
ノック判別スレショルド演算部１１で周波数１のＰ／Ｈ値に対するノック判別スレッショルドを演算した後で、ノック検出量演算部１２においてＰ／Ｈ値とノック判別スレッショルドの差分から周波数１のＰ／Ｈ値によるノック検出量を演算する。なお、ノック検出量の演算に関してはこれに限定するものではない。
【００５０】
そして、１点火毎ノック遅角量演算部１３において、周波数１のＰ／Ｈ値によるノック検出量から周波数１のＰ／Ｈ値による１点火毎ノック遅角量（ノック遅角量を１点火毎に補正する量）を演算する。
【００５１】
１点火毎ノック遅角量演算部１３以降は一旦置いて、平均値算出部１４に戻って平均値算出部１４から１点火毎ノック遅角量演算部１７までを説明する。上述のとおり平均値算出部１４から１点火毎ノック遅角量演算部１７までの処理では平均値により１点火毎点火時期補正量の演算を実施するが、その内容は上述のピークホールド算出部１０から１点火毎ノック遅角量演算部１３までの処理でＰ／Ｈ値を平均値に置き換えたものと同様である。
【００５２】
そして、信号処理部１８から１点火毎ノック遅角量演算部２６に関しては、周波数２のＰ／Ｈ値および平均値による１点火毎ノック遅角量の演算を示しており、これらは上述の周波数１での処理（信号処理部９から１点火毎ノック遅角量演算部１７）と同様の処理を実施するため説明は省略する。
【００５３】
信号処理部９から１点火毎ノック遅角量演算部２６までの処理を実施後に、１点火毎ノック遅角量のＭＡＸ値演算部２７において１点火毎ノック遅角量演算部１３、１７、２２、２６からそれぞれ演算された１点火毎ノック遅角量のうちの最大値を演算する。
【００５４】
そして、１点火毎ノック遅角量のＭＡＸ値演算部２７で演算された１点火毎ノック遅角量のうちの最大値を基に、ノック遅角量演算部２８においてノック遅角量を更新し、結果を点火時期制御へ反映させる。
【００５５】
以上説明したように、この発明の実施の形態１に係る内燃機関の制御装置によれば、エンジンの振動またはシリンダ内圧振動を検出するセンサから出力される信号のノック検出ウィンドウ内でのＡ／Ｄ変換後の値に対して、ノック検出ウィンドウ内でのＡ／Ｄ変換後の値の最初から所定個数分を第１のデータ群とし、第１のデータ群の最初から第１のシフト数分シフトしたところから所定個数分を第２のデータ群とし、第２のデータ群の最初から第１のシフト数分シフトしたところから所定個数分を第３のデータ群とし、以下順次にノック検出ウィンドウ内でのＡ／Ｄ変換後の値を所定個数と第１のシフト数を基にデータ群毎に区切って、各データ群に対して単数または複数の周波数帯での周波数解析を実施して時間分解能の低い第１のスペクトル群を出力し、第１のスペクトル群から大きなスペクトルが出力される区間を抽出し、それを詳細検出区間として、詳細検出区間内でのＡ／Ｄ変換後の値を所定個数と第１のシフト数より小さい第２のシフト数とで各データ群に区切って、各データ群に対して単数または複数の周波数帯での周波数解析を実施して第２のスペクトル群を出力し、第１のスペクトル群および第２のスペクトル群を基にノック判定を実施することで、演算負荷を過大に増加させることなく、高い時間分解能でスペクトル群を算出してノックに起因する信号の検出性を向上させて、ノック検出性を向上させることができる。
【００５６】
また、第１のスペクトル群のうち大きさが上位１番目〜所定番目のスペクトルを基に詳細検出区間を抽出することにより、例えば第１のスペクトル群の上位１番目の近傍ではなく上位２〜所定番目のいずれかの近傍に第２のスペクトル群のＰ／Ｈ値がある場合でも、Ｐ／Ｈ値の検出もれを防ぐことができる。
【００５７】
また、第１のスペクトル群のうち大きさが所定値以上の各スペクトルを基に、詳細検出区間を抽出することにより、第１のスペクトル群の大きさに応じて詳細検出区間が抽出され、例えばノック未発生時には第１のスペクトル群の大きさが所定値よりも小さく、詳細検出区間が抽出されないので、不必要に詳細検出区間で第２のスペクトルを算出することなく、演算負荷を軽減できる。
【符号の説明】
【００５８】
１  非共振型ノックセンサ、２  バッファ、３  故障検出用ＬＰＦ、４  ノックセンサ故障検出部、５  ＬＰＦ及び増幅器、６  ゲイン制御信号、７  高速Ａ／Ｄ変換部、８  ノック検出ウィンドウ判定部、９，１８  信号処理部、１０，１９  ピークホールド算出部、１１，１５，２０，２４  ノック判別スレッショルド演算部、１２，１６，２１，２５  ノック検出量演算部、１３，１７，２２，２６  １点火毎ノック遅角量演算部、１４，２３  平均値算出部、２７  １点火毎ノック遅角量のＭＡＸ値演算部、２８  ノック遅角量演算部、２９  電子制御ユニット（ＥＣＵ）。
【図１】
2011032993.tif 000006
【図２】
2011032993.tif 000007
【図３】
2011032993.tif 000008
【図４】
2011032993.tif 000009
【図５】
2011032993.tif 000010
【図６】
2011032993.tif 000011