(57)【要約】【課題】ノックが発生したか否かを精度よく判定する【解決手段】振動波形の強度の対数値ならびに予め定められるノック波形モデルの強度の対数値の差を算出することにより、あるいは振動波形の強度とノック波形モデルの強度との差にノック波形モデルの強度の逆数を乗じることにより、振動波形の強度とノック波形モデルの強度との差を、強度が小さくなるほどより大きな重みを付けて算出する。強度が小さくなるほどより大きな重みを付けて算出された振動波形の強度とノック波形モデルの強度との差に基づいて、ノックが発生したか否かを判定する。【選択図】図８
2010019226.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関のノック判定装置であって、
前記内燃機関の振動の強度を検出するための手段と、
前記内燃機関の振動の強度に基づいて、クランク角についての予め定められた区間における振動の波形を検出するための手段と、
検出された波形の強度と、前記内燃機関の振動の波形の基準として予め定められる波形モデルの強度との差を、強度が小さくなるほどより大きな重みを付けて算出するための算出手段と、
前記検出された波形の強度と前記波形モデルの強度との差に応じてノックが発生したか否かを判定するための判定手段とを備える、内燃機関のノック判定装置。
【請求項２】
前記算出手段は、前記内燃機関の出力軸回転数が予め定められた回転数以上である場合に、前記検出された波形の強度と前記波形モデルの強度との差を、強度が小さくなるほどより大きな重みを付けて算出するための手段を含み、
前記ノック判定装置は、前記内燃機関の出力軸回転数が前記予め定められた回転数よりも小さい場合に、前記検出された波形の強度と前記波形モデルの強度との差を、重みを付けずに算出するための手段をさらに備える、請求項１に記載の内燃機関のノック判定装置。
【請求項３】
前記算出手段は、前記検出された波形の強度の対数値と前記波形モデルの強度の対数値との差を算出することにより、前記検出された波形の強度と前記波形モデルの強度との差を、強度が小さくなるほどより大きな重みを付けて算出するための手段を含む、請求項１または２に記載の内燃機関のノック判定装置。
【請求項４】
前記算出手段は、前記検出された波形の強度と前記波形モデルの強度との差に前記波形モデルの強度の逆数を乗算することにより、前記検出された波形の強度と前記波形モデルの強度との差を、強度が小さくなるほどより大きな重みを付けて算出するための手段を含む、請求項１または２に記載の内燃機関のノック判定装置。
【請求項５】
前記判定手段は、
前記検出された波形の強度と前記波形モデルの強度との差がしきい値よりも小さい場合にノックが発生したと判定するための手段と、
前記検出された波形の強度と前記波形モデルの強度との差が前記しきい値以上である場合にノックが発生していないと判定するための手段とを含む、請求項１〜４のいずれかに記載の内燃機関のノック判定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関のノック判定装置に関し、特に、内燃機関の振動の強度を予め定められた基準と比較した結果に基づいてノックが発生したかを判定する技術に関する。
【背景技術】
【０００２】
従来より、内燃機関においてノックが発生することが知られている。ノックが発生したか否かは、一般的にはノックセンサにより検出される振動の強度に基づいて判定される。たとえば、振動の強度がしきい値よりも大きい場合にノックが発生したと判定される。
【０００３】
しかしながら、ノックセンサにより検出される振動には、ノックに起因する振動以外のノイズが含まれ得る。たとえば、吸気バルブもしくは排気バルブが閉じる際に発生する振動がノイズとしてノックセンサにより検出される。ノイズの強度はノックに起因する振動の強度と同程度に大きい場合がある。したがって、ノックが発生していないにもかかわらず、ノックが発生したと誤判定し得る。
【０００４】
そこで、振動の強度に加えて、振動の減衰率なども考慮してノックが発生したか否かを判定するために、予め定められた区間における振動の波形を、振動の基準として定められたノック波形モデルと比較した結果に基づいてノックが発生したか否かを判定する技術が提案されている。
【０００５】
特開２００６−１７７２５９号公報（特許文献１）は、内燃機関のクランク角を検出するためのクランク角検出部と、クランク角についての予め定められた間隔における内燃機関の振動の波形を検出するための波形検出部と、内燃機関の振動の波形を予め記憶するための記憶部と、検出された波形と記憶された波形とを複数のタイミングで比較した結果に基づいて、内燃機関にノッキング（ノック）が発生したか否かを判定するための判定部とを含む、内燃機関のノッキング判定装置を開示する。
【０００６】
この公報に記載のノッキング判定装置によれば、たとえば実験などにより、ノックが発生した場合の振動の波形であるノック波形モデルを予め作成して記憶しておき、このノック波形モデルと検出された波形とを複数のタイミングで比較して、ノックが発生したか否かが判定される。これにより、クランク角についての予め定められた間隔において複数のタイミングで振動が発生した場合に、各タイミングでの振動がノックに起因した振動であるか否かを詳細に分析することができる。そのため、精度よくノックが発生したか否かを判定することができる。
【特許文献１】特開２００６−１７７２５９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、特開２００６−１７７２５９号公報に記載のノッキング判定装置のように内燃機関の振動の波形とノック波形モデルとを比較しても、ノックに起因する振動とノイズとを区別し難い場合がある。たとえば、内燃機関の出力軸回転数が大きい場合、ノイズが発生する時間が一定であってもクランク角が早く大きくなる。そのため、ノイズが検出されるクランク角が比較的長くなる。したがって、ノイズの減衰率が小さくなる。そのため、減衰率が比較的小さいノックに起因する振動の強度と、ノイズの強度との差が小さくなる。その結果、ノックに起因する振動とノイズとを区別し難くなる。
【０００８】
本発明は、上述の課題を解決するためになされたものであって、その目的は、ノックが発生したか否かを精度よく判定することができる内燃機関のノック判定装置を提供することである。
【課題を解決するための手段】
【０００９】
第１の発明に係る内燃機関のノック判定装置は、内燃機関の振動の強度を検出するための手段と、内燃機関の振動の強度に基づいて、クランク角についての予め定められた区間における振動の波形を検出するための手段と、検出された波形の強度と、内燃機関の振動の波形の基準として予め定められる波形モデルの強度との差を、強度が小さくなるほどより大きな重みを付けて算出するための算出手段と、検出された波形の強度と波形モデルの強度との差に応じてノックが発生したか否かを判定するための判定手段とを備える。
【００１０】
この構成によると、内燃機関の振動の強度に基づいて、クランク角についての予め定められた区間における振動の波形が検出される。内燃機関の振動の波形の基準として、波形モデルが定められる。ノイズの強度の減衰率が小さくなった状態でも、強度が小さい部分では検出された波形の強度と波形モデルの強度との差が生じ易い。そのため、検出された波形の強度と波形モデルの強度との差が、強度が小さくなるほどより大きな重みを付けて算出される。これにより、検出された波形の強度と波形モデルの強度との差を強調することができる。その結果、ノックに起因する振動とノイズとを区別し易くすることができる。検出された波形の強度と波形モデルの強度との差に応じてノックが発生したか否かが判定される。そのため、ノックが発生したか否かを精度よく判定することができる内燃機関のノック判定装置を提供することができる。
【００１１】
第２の発明に係る内燃機関のノック判定装置においては、第１の発明の構成に加え、算出手段は、内燃機関の出力軸回転数が予め定められた回転数以上である場合に、検出された波形の強度と波形モデルの強度との差を、強度が小さくなるほどより大きな重みを付けて算出するための手段を含む。ノック判定装置は、内燃機関の出力軸回転数が予め定められた回転数よりも小さい場合に、検出された波形の強度と波形モデルの強度との差を、重みを付けずに算出するための手段をさらに備える。
【００１２】
この構成によると、内燃機関の出力軸回転数が予め定められた回転数以上である場合には、検出された波形の強度と波形モデルの強度との差が、強度が小さくなるほどより大きな重みを付けて算出される。これにより、ノイズの強度の減衰率が小さくなり得る運転状態において、検出された波形の強度と波形モデルの強度との差を強調することができる。そのため、ノックに起因する振動とノイズとを区別し易くすることができる。一方、内燃機関の出力軸回転数が予め定められた回転数よりも小さい場合には、検出された波形の強度と波形モデルの強度との差が重みを付けずに算出される。これにより、ノイズの強度が速やかに減衰する運転状態では、不必要な演算を省略することができる。
【００１３】
第３の発明に係る内燃機関のノック判定装置においては、第１または２の発明の構成に加え、算出手段は、検出された波形の強度の対数値と波形モデルの強度の対数値との差を算出することにより、検出された波形の強度と波形モデルの強度との差を、強度が小さくなるほどより大きな重みを付けて算出するための手段を含む。
【００１４】
この構成によると、検出された波形の強度の対数値と波形モデルの強度の対数値との差を算出することにより、検出された波形の強度と波形モデルの強度との差を、強度が小さくなるほどより大きな重みを付けて算出することができる。
【００１５】
第４の発明に係る内燃機関のノック判定装置においては、第１または２の発明の構成に加え、算出手段は、検出された波形の強度と波形モデルの強度との差に波形モデルの強度の逆数を乗算することにより、検出された波形の強度と波形モデルの強度との差を、強度が小さくなるほどより大きな重みを付けて算出するための手段を含む。
【００１６】
この構成によると、検出された波形の強度と波形モデルの強度の差に波形モデルの強度の逆数を乗算することにより、検出された波形の強度と波形モデルの強度との差を、強度が小さくなるほどより大きな重みを付けて算出することができる。
【００１７】
第５の発明に係る内燃機関のノック判定装置においては、第１〜４のいずれかの発明の構成に加え、判定手段は、検出された波形の強度と波形モデルの強度との差がしきい値よりも小さい場合にノックが発生したと判定するための手段と、検出された波形の強度と波形モデルの強度との差がしきい値以上である場合にノックが発生していないと判定するための手段とを含む。
【００１８】
この構成によると、検出された波形の強度と波形モデルの強度との差がしきい値よりも小さい場合にノックが発生したと判定される。検出された波形の強度と波形モデルの強度との差がしきい値以上である場合にノックが発生していないと判定される。これにより、検出された波形が波形モデルから乖離する度合いに基づいてノックが発生したか否かを制度よく判定することができる。
【発明を実施するための最良の形態】
【００１９】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同一である。したがって、それらについての詳細な説明は繰返さない。
【００２０】
図１を参照して、本発明の実施の形態に係るノック判定装置を搭載した車両のエンジン１００について説明する。このエンジン１００には複数の気筒が設けられる。本実施の形態に係るノック判定装置は、たとえばエンジンＥＣＵ（Electronic Control Unit）２００が実行するプログラムにより実現される。なお、ＥＣＵ２００により実行されるプログラムをＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disc）などの記録媒体に記録して市場に流通させてもよい。
【００２１】
エンジン１００は、エアクリーナ１０２から吸入された空気とインジェクタ１０４から噴射される燃料との混合気を、燃焼室内で点火プラグ１０６により点火して燃焼させる内燃機関である。点火時期は、出力トルクが最大になるＭＢＴ（Minimum advance for Best Torque）になるように制御されるが、ノックが発生した場合など、エンジン１００の運転状態に応じて遅角されたり、進角されたりする。
【００２２】
混合気が燃焼すると、燃焼圧によりピストン１０８が押し下げられ、クランクシャフト１１０が回転する。燃焼後の混合気（排気ガス）は、三元触媒１１２により浄化された後、車外に排出される。エンジン１００に吸入される空気の量は、スロットルバルブ１１４により調整される。気筒の頭頂部には、吸気バルブ１１６および排気バルブ１１８が設けられる。
【００２３】
エンジン１００は、エンジンＥＣＵ２００により制御される。エンジンＥＣＵ２００には、ノックセンサ３００と、水温センサ３０２と、タイミングロータ３０４に対向して設けられたクランクポジションセンサ３０６と、スロットル開度センサ３０８と、車速センサ３１０と、イグニッションスイッチ３１２と、エアフローメータ３１４とが接続されている。
【００２４】
ノックセンサ３００は、エンジン１００のシリンダブロックに設けられる。ノックセンサ３００は、圧電素子により構成されている。ノックセンサ３００は、エンジン１００の振動により電圧を発生する。電圧の大きさは、振動の大きさと対応した大きさとなる。ノックセンサ３００は、電圧を表わす信号をエンジンＥＣＵ２００に送信する。水温センサ３０２は、エンジン１００のウォータージャケット内の冷却水の温度を検出し、検出結果を表わす信号を、エンジンＥＣＵ２００に送信する。
【００２５】
タイミングロータ３０４は、クランクシャフト１１０に設けられており、クランクシャフト１１０と共に回転する。タイミングロータ３０４の外周には、予め定められた間隔で複数の突起が設けられている。クランクポジションセンサ３０６は、タイミングロータ３０４の突起に対向して設けられている。タイミングロータ３０４が回転すると、タイミングロータ３０４の突起と、クランクポジションセンサ３０６とのエアギャップが変化するため、クランクポジションセンサ３０６のコイル部を通過する磁束が増減し、コイル部に起電力が発生する。クランクポジションセンサ３０６は、起電力を表わす信号を、エンジンＥＣＵ２００に送信する。エンジンＥＣＵ２００は、クランクポジションセンサ３０６から送信された信号に基づいて、クランク角およびクランクシャフト１１０の回転数を検出する。
【００２６】
スロットル開度センサ３０８は、スロットル開度を検出し、検出結果を表わす信号をエンジンＥＣＵ２００に送信する。車速センサ３１０は、車輪（図示せず）の回転数を検出し、検出結果を表わす信号をエンジンＥＣＵ２００に送信する。エンジンＥＣＵ２００は、車輪の回転数から、車速を算出する。イグニッションスイッチ３１２は、エンジン１００を始動させる際に、運転者によりオン操作される。エアフローメータ３１４は、エンジン１００に吸入される空気量を検出し、検出結果を表わす信号をエンジンＥＣＵ２００に送信する。
【００２７】
エンジンＥＣＵ２００は、電源である補機バッテリ３２０から供給された電力により作動する。エンジンＥＣＵ２００は、各センサおよびイグニッションスイッチ３１２から送信された信号、ＲＯＭ（Read Only Memory）２０２に記憶されたマップおよびプログラムに基づいて演算処理を行ない、エンジン１００が所望の運転状態となるように、機器類を制御する。
【００２８】
本実施の形態において、エンジンＥＣＵ２００は、ノックセンサ３００から送信された信号およびクランク角に基づいて、予め定められたノック検出ゲート（予め定められた第１クランク角から予め定められた第２クランク角までの区間）におけるエンジン１００の振動の波形（以下、振動波形と記載する）を検出し、検出された振動波形に基づいて、エンジン１００にノックが発生したか否かを判定する。本実施の形態におけるノック検出ゲートは、燃焼行程において上死点（０度）から９０度までである。なお、ノック検出ゲートはこれに限らない。
【００２９】
ノックが発生した場合、エンジン１００には、図２において実線で示す周波数付近の周波数の振動が発生する。ノックに起因して発生する振動の周波数は一定ではなく、所定の帯域幅を有する。そのため、本実施の形態においては、図２に示すように、第１の周波数帯Ａ、第２の周波数帯Ｂおよび第３の周波数帯Ｃを含む第４の周波数帯Ｄの振動を検出する。なお、図２におけるＣＡは、クランク角（Crank Angle）を示す。なお、ノックに起因して発生する振動の周波数帯は３つに限られない。
【００３０】
図３を参照して、エンジンＥＣＵ２００についてさらに説明する。エンジンＥＣＵ２００は、Ａ／Ｄ（アナログ／デジタル）変換部４００と、バンドパスフィルタ４１０と、積算部４２０とを含む。
【００３１】
Ａ／Ｄ変換部４００は、ノックセンサ３００から送信されたアナログ信号をデジタル信号に変換する。バンドパスフィルタ４１０は、ノックセンサ３００から送信された信号のうち、第４の周波数帯Ｄの信号のみを通過させる。すなわち、バンドパスフィルタ４１０により、ノックセンサ３００が検出した振動から、第４の周波数帯Ｄの振動のみが抽出される。
【００３２】
積算部４２０は、バンドパスフィルタ４１０により選別された信号、すなわち振動の強度を、クランク角度で５度分づつ積算した積算値（以下、５度積算値とも記載する）を算出する。これにより、図４に示すように、周波数帯Ｄの振動波形が検出される。
【００３３】
検出された振動波形は、図５に示すノック波形モデルと比較される。ノック波形モデルは、エンジン１００にノックが発生した場合の振動波形のモデルとして作成される。ノック波形モデルは、たとえばＲＯＭ２０２に記憶される。
【００３４】
ノック波形モデルにおいて、振動の強度は０〜１の無次元数として表され、振動の強度はクランク角と一義的には対応していない。すなわち、本実施の形態のノック波形モデルにおいては、振動の強度のピーク値以降、クランク角が大きくなるにつれ振動の強度が低減することが定められているが、振動の強度がピーク値となるクランク角は定められていない。
【００３５】
本実施の形態におけるノック波形モデルは、ノックにより発生した振動の強度のピーク値以降の振動に対応している。なお、ノックに起因した振動の立ち上がり以降の振動に対応したノック波形モデルを記憶してもよい。
【００３６】
ノック波形モデルは、たとえば実験などにより、強制的にノックを発生させた場合におけるエンジン１００の振動波形を検出し、この振動波形に基づいて予め作成されて記憶される。
【００３７】
ノック波形モデルは、エンジン１００の寸法やノックセンサ３００の出力値が、寸法公差やノックセンサ３００の出力値の公差の中央値であるエンジン１００（以下、特性中央エンジンと記載する）を用いて作成される。すなわち、ノック波形モデルは、特性中央エンジンに強制的にノックを発生させた場合における振動波形である。なお、ノック波形モデルを作成する方法は、これに限られず、その他、シミュレーションにより作成してもよい。
【００３８】
ノックに起因する振動は緩やかに減衰するという特徴を有することが実験などの結果から判明しているため、ノック波形モデルの減衰率は比較的小さく設定される。一方、吸気バルブ１１６もしくは排気バルブ１１８が閉じる際などに発生する振動、すなわちノイズの減衰率は比較的大きいことが実験などの結果から判明している。
【００３９】
検出された振動波形とノック波形モデルとの比較においては、図６に示すように、正規化された波形とノック波形モデルとが比較される。ここで、正規化とは、たとえば、検出された振動波形における５度積算値の最大値で各５度積算値を除算することにより、振動の強度を０〜１の無次元数で表わすことである。なお、正規化の方法はこれに限らない。
【００４０】
本実施の形態において、エンジンＥＣＵ２００は、正規化された振動波形とノック波形モデルとの差に関する値である相関係数Ｋを算出する。正規化後の振動波形において振動の強度が最大になるタイミングとノック波形モデルにおいて振動の強度が最大になるタイミングとを一致させた状態で、正規化後の振動波形とノック波形モデルとの差の絶対値（ズレ量）をクランク角ごと（５度ごと）に算出することにより、相関係数Ｋが算出される。
【００４１】
相関係数Ｋの算出方法は、エンジン回転数ＮＥがしきい値ＮＥ１より小さい場合とエンジン回転数ＮＥがしきい値ＮＥ１以上である場合とで異なる。
【００４２】
エンジン回転数ＮＥがしきい値ＮＥ１より小さい場合、正規化された振動波形における強度とノック波形モデルにおける強度とのクランク角毎の差をそのまま用いて相関係数Ｋが算出される。
【００４３】
振動波形における強度とノック波形モデルにおける強度とのクランク角毎の差の絶対値をΔＳ（Ｉ）（Ｉは自然数）とおく。図７において斜線で示すように、ノック波形モデルの振動の強度を合計した値、すなわち、ノック波形モデルの面積をＳとおく。相関係数Ｋは、下記の式１を用いて算出される。
【００４４】
Ｋ＝（Ｓ−ΣΔＳ（Ｉ））／Ｓ・・・（１）
ΣΔＳ（Ｉ）は、ΔＳ（Ｉ）の総和である。
【００４５】
エンジン回転数ＮＥがしきい値ＮＥ１以上である場合、正規化後の振動波形の強度とノック波形モデルの強度との差が、強度が小さくなるほどより大きな重みを付けて算出される。より具体的には、図８に示すように、正規化後の振動波形の強度の対数値ならびにノック波形モデルの強度の対数値の差を用いて相関係数Ｋが算出される。すなわち、正規化後の振動波形の強度の対数値とノック波形モデルの強度の対数値とのクランク角毎の差の絶対値がΔＳ（Ｉ）として算出され、式１に従って相関係数Ｋが算出される。
【００４６】
なお、エンジン回転数ＮＥがしきい値ＮＥ１以上である場合に相関係数Ｋを算出するために用いられるノック波形モデルの面積Ｓは、エンジン回転数ＮＥがしきい値ＮＥ１より小さい場合に用いられるノック波形モデルの面積Ｓと同じである。相関係数Ｋの算出方法はこれらに限らない。
【００４７】
図９に示すように、変数Ｘの対数値Ｙの変化率は、変数Ｘが小さくなるほどより大きくなる。したがって、振動波形における強度の対数値とノック波形モデルにおける強度の対数値と差を算出することにより、強度が小さくなるほど、振動波形における強度とノック波形モデルにおける強度と差をより強調することができる。
【００４８】
なお、振動波形の強度の対数値とノック波形モデルの強度の対数値との差を算出する代わりに、正規化された振動波形の強度とノック波形モデルの強度とのクランク角毎の差に、各クランク角におけるノック波形モデルの強度の逆数を各クランク角において乗じることにより、振動波形の強度とノック波形モデルの強度との差に重みを付けるようにしてもよい。このようにしても、強度が小さくなるほど、振動波形における強度とノック波形モデルにおける強度と差をより強調することができる。
【００４９】
本実施の形態において、相関係数Ｋは、振動波形の形状がノック波形モデルの形状に近いほど、大きな値として算出される。したがって、振動波形にノック以外の要因による振動の波形が含まれた場合、相関係数Ｋは小さく算出される。なお、相関係数Ｋの算出方法はこれに限らない。
【００５０】
本実施の形態においては、相関係数Ｋの他、ノック強度Ｎが算出される。ノック強度Ｎは、図１０において斜線で示すように、振動波形における強度（５度積算値）を合計した９０度積算値ｌｐｋｋｎｋを用いて算出される。なお、９０度積算値ｌｐｋｋｎｋの代わりに、振動波形における最大の強度を用いるようにしてもよい。
【００５１】
エンジン１００にノックが発生していない状態におけるエンジン１００の振動の強度を表わす値をＢＧＬ（Back Ground Level）と表わす。ノック強度Ｎは、下記の式２を用いて算出される。
【００５２】
Ｎ＝ｌｐｋｋｎｋ／ＢＧＬ・・・（２）
なお、ノック強度Ｎの算出方法はこれに限らない。ＢＧＬは、図１１に示すように、各９０度積算値ｌｐｋｋｎｋが検出された頻度（回数、確率ともいう）を表わす頻度分布において、標準偏差σと係数（たとえば「１」）との積を、中央値ＶＭＥＤから減算した値として算出される。
【００５３】
なお、頻度分布を作成する際、９０度積算値ｌｐｋｋｎｋの対数値が用いられる。また、ノック強度Ｎを算出する際、ＢＧＬは逆対数変換される。ＢＧＬの算出方法はこれに限らず、ＢＧＬをＲＯＭ２０２に記憶しておくようにしてもよい。
【００５４】
本実施の形態においては、振動波形の形状に基づいて算出される相関係数Ｋおよび振動波形の強度に基づいて算出されるノック強度Ｎを用いて、ノックが発生したか否かが１点火毎に判定される。ノックが発生したか否かは気筒毎に判定される。
【００５５】
相関係数Ｋがしきい値Ｋ１より大きく、かつノック強度Ｎが判定値ＶＪより大きいと、ノックが発生したと判定される。もしそうでないと、ノックが発生していないと判定される。
【００５６】
ここで、前述の式１で記載した通り、Ｋ＝（Ｓ−ΣΔＳ（Ｉ））／Ｓである。したがって、相関係数Ｋがしきい値Ｋ１より大きい状態を、下記の式３を用いて表わすことができる。
【００５７】
（Ｓ−ΣΔＳ（Ｉ））／Ｓ＞Ｋ１・・・（３）
さらに、式３は下記の式４に変形することができる。なお、ノック波形モデルの面積Ｓは正値である。
【００５８】
Ｓ−ΣΔＳ（Ｉ）＞Ｋ１×Ｓ＝・・・（４）
さらに、式４は下記の式５に変形することができる。
【００５９】
ΣΔＳ（Ｉ）＜Ｓ−Ｋ１×Ｓ・・・（５）
したがって、相関係数Ｋがしきい値Ｋ１より大きい場合、振動波形における強度とノック波形モデルにおける強度との差ΣΔＳ（Ｉ）が「Ｓ−Ｋ１×Ｓ」よりも小さい。すなわち、振動波形における強度とノック波形モデルにおける強度との差ΣΔＳ（Ｉ）が「Ｓ−Ｋ１×Ｓ」よりも小さい場合にノックが発生したと判定される。
【００６０】
ノックが発生したと判定された場合、予め定められた量だけ点火時期が遅角される。ノックが発生していないと判定された場合、予め定められた量だけ点火時期が進角される。
【００６１】
図１２を参照して、エンジンＥＣＵ２００の機能について説明する。なお、以下に説明する機能はソフトウェアにより実現するようにしてもよく、ハードウェアにより実現するようにしてもよい。
【００６２】
エンジンＥＣＵ２００は、クランク角検出部６００と、強度検出部６０２と、波形検出部６０４と、相関係数算出部６０６と、９０度積算値算出部６０８と、算出部６１０と、判定部６１２と、点火時期制御部６１４とを備える。
【００６３】
クランク角検出部６００は、クランクポジションセンサ３０６から送信された信号に基づいて、クランク角を検出する。
【００６４】
強度検出部６０２は、ノックセンサ３００から送信された信号に基づいて、ノック検出ゲートにおける振動の強度を検出する。振動の強度は、クランク角に対応させて検出される。また、振動の強度は、ノックセンサ３００の出力電圧値で表される。なお、ノックセンサ３００の出力電圧値と対応した値で振動の強度を表してもよい。
【００６５】
波形検出部６０４は、振動の強度をクランク角で５度分づつ積算することにより、ノック検出ゲートにおける振動波形を検出する。
【００６６】
相関係数算出部６０６は、振動波形がノック波形モデルに類似する度合を表わす（振動波形の形状とノック波形モデルの形状との差を表わす）相関係数Ｋを算出する。
【００６７】
９０度積算値算出部６０８は、振動波形における強度（５度積算値）を合計した９０度積算値ｌｐｋｋｎｋを算出する。
【００６８】
算出部６１０は、９０度積算値ｌｐｋｋｎｋを用いて、ノック強度Ｎを算出する。判定部６１２は、相関係数Ｋおよびノック強度Ｎを用いて、ノックが発生したか否かを１点火毎に判定する。相関係数Ｋがしきい値Ｋ１より大きく、かつノック強度Ｎが判定値ＶＪより大きいと、ノックが発生したと判定される。もしそうでないと、ノックが発生していないと判定される。
【００６９】
点火時期制御部６１４は、ノックが発生したか否かに応じて点火時期を制御する。ノックが発生したと判定された場合、予め定められた量だけ点火時期が遅角される。ノックが発生していないと判定された場合、予め定められた量だけ点火時期が進角される。
【００７０】
図１３を参照して、エンジンＥＣＵ２００が実行するプログラムの制御構造について説明する。
【００７１】
ステップ（以下、ステップをＳと略す）１００にて、エンジンＥＣＵ２００は、クランクポジションセンサ３０６から送信された信号に基づいて、クランク角を検出する。Ｓ１０２にて、エンジンＥＣＵ２００は、ノックセンサ３００から送信された信号に基づいて、クランク角に対応させて、エンジン１００の振動の強度を検出する。
【００７２】
Ｓ１０４にて、エンジンＥＣＵ２００は、ノックセンサ３００の出力電圧値（振動の強度を表わす値）を、クランク角で５度ごとに（５度分だけ）積算した５度積算値を算出することにより、エンジン１００の振動波形を検出する。
【００７３】
Ｓ１０６にて、エンジンＥＣＵ２００は、振動波形における５度積算値のうち、最も大きい５度積算値（ピーク値）を特定する。
【００７４】
Ｓ１０８にて、エンジンＥＣＵ２００は、エンジン１００の振動波形を正規化する。ここで、正規化とは、特定されたピーク値で各５度積算値を除算することにより、振動の強度を０〜１の無次元数で表わすことをいう。
【００７５】
Ｓ１１０にて、エンジンＥＣＵ２００は、エンジン回転数ＮＥがしきいＮＥ１以上であるか否かを判定する。エンジン回転数ＮＥがしきい値ＮＥ１以上であると（Ｓ１１０にてＹＥＳ）、処理はＳ１２０に移される。もしそうでないと（Ｓ１１０にてＮＯ）、処理はＳ１２４に移される。
【００７６】
Ｓ１２０にて、エンジンＥＣＵ２００は、強度が小さくなるほどより大きな重みを付けて、正規化後の振動波形の強度とノック波形モデルの強度との差を算出する。すなわち、正規化後の振動波形の強度の対数値とノック波形モデルの強度の対数値との差が算出される。
【００７７】
Ｓ１２２にて、エンジンＥＣＵ２００は、強度が小さくなるほどより大きな重みを付けて算出された振動波形の強度とノック波形モデルの強度と差を用いて相関係数Ｋを算出する。
【００７８】
Ｓ１２４にて、エンジンＥＣＵ２００は、重みを付けずに、正規化後の振動波形の強度とノック波形モデルの強度との差を算出する。Ｓ１２６にて、エンジンＥＣＵ２００は、重みを付けずに算出された振動波形の強度とノック波形モデルの強度との差を用いて相関係数Ｋを算出する。
【００７９】
Ｓ１２８にて、エンジンＥＣＵ２００は、相関係数Ｋがしきい値Ｋ１より大きいか否かを判定する。相関係数Ｋがしきい値Ｋ１より大きいと（Ｓ１２８にてＹＥＳ）、処理はＳ１３０に移される。もしそうでないと（Ｓ１２８にてＮＯ）、処理はＳ１４６に移される。
【００８０】
Ｓ１３０にて、エンジンＥＣＵ２００は、９０度積算値ｌｐｋｋｎｋを算出する。Ｓ１３２にて、エンジンＥＣＵ２００は、ノック強度Ｎを算出する。
【００８１】
Ｓ１４０にて、エンジンＥＣＵ２００は、ノック強度Ｎが判定値ＶＪより大きい否かを判定する。ノック強度Ｎが判定値ＶＪより大きいと（Ｓ１４０にてＹＥＳ）、処理はＳ１４２に移される。もしそうでないと（Ｓ１４０にてＮＯ）、処理はＳ１４６に移される。
【００８２】
Ｓ１４２にて、エンジンＥＣＵ２００は、エンジン１００にノックが発生したと判定する。Ｓ１４４にて、エンジンＥＣＵ２００は、点火時期を遅角する。Ｓ１４６にて、エンジンＥＣＵ２００は、エンジン１００にノックが発生していないと判定する。Ｓ１４８にて、エンジンＥＣＵ２００は、点火時期を進角する。
【００８３】
以上のような構造およびフローチャートに基づく、本実施の形態におけるエンジンＥＣＵ２００の動作について説明する。
【００８４】
エンジン１００の運転中、クランクポジションセンサ３０６から送信された信号に基づいて、クランク角が検出される（Ｓ１００）。ノックセンサ３００から送信された信号に基づいて、クランク角に対応させて、エンジン１００の振動の強度が検出される（Ｓ１０２）。ノックセンサ３００の出力電圧値をクランク角で５度ごとに積算した５度積算値を算出することにより、エンジン１００の振動波形が検出される（Ｓ１０４）。
【００８５】
振動波形における５度積算値のうち、最も大きい積算値（ピーク値）が特定され（Ｓ１０６）、特定されたピーク値で各５度積算値を除算することにより、振動波形が正規化される（Ｓ１０８）。
【００８６】
エンジン回転数ＮＥが高い場合、クランク角が早く大きくなる。言い換えると、振動が発生する時間は一定であっても、振動が検出されるクランク角が長くなる。そのため、検出される振動波形の減衰率はクランク角に関して小さくなる。すなわち、ノイズが検出された場合でも、ノイズの減衰率が小さくなる。
【００８７】
図１４に示すように、振動の強度（振幅）が比較的大きいノイズが検出された場合、正規化後のノイズの減衰率が小さくなっても、ノック波形モデルと振動波形とが比較される区間の後半においてノック波形モデルの強度とノイズの強度との差が明確に生じる。そのため、ノックに起因する振動とノイズとを区別し易い。
【００８８】
図１５に示すように、振動の強度が比較的小さいノイズが検出された場合、正規化後のノイズの減衰率がさらに小さくなる。そのため、ノック波形モデルの強度とノイズの強度との差が小さくなる。したがって、ノックに起因する振動とノイズとを区別し難い。
【００８９】
そこで、エンジン回転数ＮＥがしきいＮＥ１以上であると（Ｓ１１０にてＹＥＳ）、図１６および図１７に示すように、振動波形の強度の対数値とノック波形モデルの強度の対数値との差を算出することにより、強度が小さくなるほどより大きな重みを付けて振動波形の強度とノック波形モデルの強度との差が算出される（Ｓ１２０）。
【００９０】
あるいは、正規化された振動波形の強度とノック波形モデルの強度とのクランク角毎の差に、各クランク角におけるノック波形モデルの強度の逆数を各クランク角において乗じることにより、強度が小さくなるほどより大きな重みを付けて振動波形の強度とノック波形モデルの強度との差が算出される（Ｓ１２０）。
【００９１】
これにより、強度が小さくなるほど、振動波形における強度とノック波形モデルにおける強度と差をより強調することができる。そのため、振動波形における強度とノック波形モデルにおける強度と差を明確に把握することができる。その結果、ノックに起因する振動とノイズとを区別し易くすることができる。なお、図１６には、正規化前の強度が比較的大きいノイズが示される。図１７には、正規化前の強度が比較的小さいノイズが示される。
【００９２】
さらに、強度が小さくなるほどより大きな重みを付けて算出された振動波形の強度とノック波形モデルの強度と差を用いて相関係数Ｋが算出される（Ｓ１２２）。
【００９３】
一方、エンジン回転数ＮＥが低いと、振動の強度が比較的小さいノイズが検出された場合であっても、図１８に示すように、ノック波形モデルの減衰率とノイズの減衰率との差は明確に生じる。そのため、ノックに起因する振動とノイズとを区別し易い。
【００９４】
この場合、重みを付けずに正規化後の振動波形の強度とノック波形モデルの強度との差が算出される（Ｓ１２４）。さらに、重みを付けずに算出された振動波形の強度とノック波形モデルの強度との差を用いて相関係数Ｋが算出される（Ｓ１２６）。これにより、不必要な処理を省略することができる。
【００９５】
相関係数Ｋがしきい値Ｋ１より大きいと（Ｓ１２８にてＹＥＳ）、検出された振動波形の形状がノックによる波形の形状に類似しているといえる。すなわち、ノッキングが発生した可能性が非常に高いといえる。
【００９６】
この場合、９０度積算値ｌｐｋｋｎｋが算出され（Ｓ１３０）、ノック強度Ｎが算出される（Ｓ１３２）。ノック強度Ｎが判定値ＶＪより大きいと（Ｓ１４０にてＹＥＳ）、エンジン１００にノックが発生したと判定される（Ｓ１４２）。ノッキングを抑制するために、点火時期が遅角される（Ｓ１４４）。
【００９７】
相関係数Ｋがしきい値Ｋ１以下である場合（Ｓ１２８にてＮＯ）、またはノック強度Ｎが判定値ＶＪ以下である場合（Ｓ１４０にてＮＯ）、エンジン１００にノックが発生していないと判定される（Ｓ１４６）。この場合、点火時期が進角される（Ｓ１４８）。
【００９８】
以上のように、本実施の形態に係るノック判定装置によれば、強度が小さくなるほどより大きな重みを付けて、振動波形の強度とノック波形モデルの強度との差が算出される。これにより、振動波形の強度とノック波形モデルの強度との差を強調することができる。その結果、ノックに起因する振動とノイズとを区別し易くすることができる。強度が小さくなるほどより大きな重みを付けて算出された振動波形の強度とノック波形モデルの強度と差に基づいてノックが発生したか否かが判定される。そのため、ノックが発生したか否かを精度よく判定することができる。
【００９９】
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【０１００】
【図１】エンジンを示す図である。
【図２】ノック時にエンジンで発生する振動の周波数帯を示す図である。
【図３】エンジンＥＣＵを示す制御ブロック図である。
【図４】エンジンの振動波形を示す図である。
【図５】ノック波形モデルを示す図である。
【図６】振動波形とノック波形モデルとを比較した図である。
【図７】ノック波形モデルの面積Ｓを示す図である。
【図８】正規化後の振動波形の強度の対数値とノック波形モデルの強度の対数値とを比較した図である。
【図９】変数Ｘに対する対数値Ｙを示す図である。
【図１０】９０度積算値ｌｐｋｋｎｋを示す図である。
【図１１】９０度積算値ｌｐｋｋｎｋの頻度分布を示す図である。
【図１２】エンジンＥＣＵの機能ブロック図である。
【図１３】エンジンＥＣＵが実行するプログラムの制御構造を示すフローチャートである。
【図１４】ノック波形モデルとノイズとを比較した図（その１）である。
【図１５】ノック波形モデルとノイズとを比較した図（その２）である。
【図１６】ノック波形モデルとノイズとを比較した図（その３）である。
【図１７】ノック波形モデルとノイズとを比較した図（その４）である。
【図１８】ノック波形モデルとノイズとを比較した図（その５）である。
【符号の説明】
【０１０１】
１００  エンジン、１０２  エアクリーナ、１０４  インジェクタ、１０６  点火プラグ、１０８  ピストン、１１０  クランクシャフト、１１２  三元触媒、１１４  スロットルバルブ、１１６  吸気バルブ、１１８  排気バルブ、２００  エンジンＥＣＵ、２０２  ＲＯＭ、３００  ノックセンサ、３０２  水温センサ、３０４  タイミングロータ、３０６  クランクポジションセンサ、３０８  スロットル開度センサ、３１０  車速センサ、３１２  イグニッションスイッチ、３１４  エアフローメータ、３２０  補機バッテリ、４００  Ａ／Ｄ変換部、４１０  バンドパスフィルタ、４２０  積算部、６００  クランク角検出部、６０２  強度検出部、６０４  波形検出部、６０６  相関係数算出部、６０８  ９０度積算値算出部、６１０  算出部、６１２  判定部、６１４  点火時期制御部。
【図１】
2010019226.tif 000003
【図２】
2010019226.tif 000004
【図３】
2010019226.tif 000005
【図４】
2010019226.tif 000006
【図５】
2010019226.tif 000007
【図６】
2010019226.tif 000008
【図７】
2010019226.tif 000009
【図８】
2010019226.tif 000010
【図９】
2010019226.tif 000011
【図１０】
2010019226.tif 000012
【図１１】
2010019226.tif 000013
【図１２】
2010019226.tif 000014
【図１３】
2010019226.tif 000015
【図１４】
2010019226.tif 000016
【図１５】
2010019226.tif 000017
【図１６】
2010019226.tif 000018
【図１７】
2010019226.tif 000019
【図１８】
2010019226.tif 000020