(57)【要約】【課題】  ノッキングが発生したか否かを精度よく判定する。【解決手段】  エンジンＥＣＵは、ノックセンサの出力電圧値を積算した積算値に基づいて検出されたエンジンの振動波形とノック波形モデルとを比較して、相関係数Ｋを算出するステップ（Ｓ１２０）と、算出された相関係数Ｋと検出された振動波形における積算値の最大値Ｐとの積を、エンジンの回転数が高いほど大きくなるように設定されたＢＧＬで除算することにより、ノック強度Ｎを算出するステップ（Ｓ１２２）と、ノック強度Ｎが判定値よりも大きい場合（Ｓ１２４にてＹＥＳ）、ノッキングが発生したと判定するステップ（Ｓ１２６）と、ノック強度Ｎが判定値よりも大きくない場合（Ｓ１２４にてＮＯ）、ノッキングが発生していないと判定するステップ（Ｓ１３０）とを含む、プログラムを実行する。【選択図】        図７
2006307710.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の振動の強度に関する第１の値を検出するための強度検出手段と、
前記内燃機関のクランク角を検出するためのクランク角検出手段と、
前記第１の値に基づいて、クランク角についての予め定められた間隔における前記内燃機関の振動の波形を検出するための波形検出手段と、
前記内燃機関の振動の波形を予め記憶するための手段と、
前記検出された波形と前記記憶された波形とを比較した結果に基づいて、前記検出された波形と前記記憶された波形との偏差に関する値を算出するための手段と、
前記偏差に関する値および前記第１の値に基づいて算出される値を第２の値で補正して、前記内燃機関の振動の強度に関する第３の値を算出するための算出手段と、
前記内燃機関の振動の強度に関する第４の値を予め記憶するための手段と、
前記第３の値と前記第４の値とを比較した結果に基づいて、内燃機関にノッキングが発生したか否かを判定するための判定手段とを含む、内燃機関のノッキング判定装置。
【請求項２】
前記第２の値は、前記内燃機関の負荷が大きいほど大きくなるという第１の条件および前記内燃機関の回転数が高いほど大きくなるという第２の条件の少なくともいずれか一方の条件を満たすように設定された値である、請求項１に記載の内燃機関のノッキング判定装置。
【請求項３】
前記第２の値は、前記第１の条件および前記第２の条件の少なくともいずれか一方の条件に加えて、前記内燃機関の負荷が予め定められた負荷よりも大きい状態および前記内燃機関の回転数が予め定められた回転数よりも高い状態の少なくともいずれか一方の状態において、予め定められた強度のノッキングが発生した場合に、前記第３の値が前記第４の値よりも小さくなるという第３の条件を満たすように設定された値である、請求項２に記載の内燃機関のノッキング判定装置。
【請求項４】
前記算出手段は、前記偏差に関する値と前記第１の値との積を前記第２の値で除算して、前記第３の値を算出するための手段を含む、請求項１〜３のいずれかに記載の内燃機関のノッキング判定装置。
【請求項５】
前記判定手段は、前記第３の値が前記第４の値よりも大きい場合、前記内燃機関にノッキングが発生したと判定するための手段を含む、請求項１〜４のいずれかに記載の内燃機関のノッキング判定装置。
【請求項６】
前記ノッキング判定装置は、
予め定められた運転状態における前記内燃機関の振動の強度に関する第５の値を検出するための手段と、
前記予め定められた運転状態における前記内燃機関の振動の強度に関する第６の値を予め記憶するための手段と、
前記第５の値および前記第６の値に基づいて前記第１の値を補正するための手段とをさらに含む、請求項１〜５のいずれかに記載の内燃機関のノッキング判定装置。
【請求項７】
前記予め定められた運転状態は、アイドリング状態である、請求項６に記載の内燃機関のノッキング判定装置。
【請求項８】
前記予め定められた運転状態は、クランキング状態である、請求項６に記載の内燃機関のノッキング判定装置。
【請求項９】
前記予め定められた運転状態は、前記内燃機関の温度が予め定められた範囲内の温度であるという運転状態である、請求項６に記載の内燃機関のノッキング判定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ノッキング判定装置に関し、特に、内燃機関の振動の波形に基づいて、ノッキングが発生したか否かを判定する内燃機関のノッキング判定装置に関する。
【背景技術】
【０００２】
従来より、内燃機関のノッキングを検出する技術が知られている。特開２００１−２２７４００号公報（特許文献１）は、ノッキングの発生の有無を正確に判定することができる内燃機関用ノック制御装置を開示する。特許文献１に記載の内燃機関用ノック制御装置は、内燃機関で発生する振動波形信号を検出する信号検出部と、信号検出部で検出された振動波形信号が予め定められた値以上となる期間を発生期間として検出する発生期間検出部と、発生期間検出部で検出された発生期間におけるピーク値を検出するピーク値検出部と、発生期間とピーク値との関係に基づき内燃機関におけるノック発生の有無を判定するノック判定部と、ノック判定部による判定結果に応じて内燃機関の運転状態を制御するノック制御部とを含む。ノック判定部は、ピーク値と発生期間との比が予め定められた範囲内にあるときにはノック発生有りと判定する。
【０００３】
この公報に記載の内燃機関用ノック制御装置によれば、内燃機関で発生する振動波形信号が信号検出部で検出され、その振動波形信号が予め定められた値以上となる発生期間とそのピーク値とが発生期間検出部およびピーク値検出部でそれぞれ検出される。このように、振動波形信号の発生期間とそのピーク値とが分かることで内燃機関におけるノック発生の有無がノック判定部にて判定され、このノック判定結果に応じて内燃機関の運転状態が制御される。ノック判定部では、ピーク値と発生期間との比が予め定められた範囲内にあるとき、すなわち、振動波形信号の予め定められた長さの発生期間に対してピーク値が大きな波形形状であるときには、ノック発生時に特有のものであると認識される。これにより、内燃機関の運転状態が急変する過渡時や電気負荷のＯＮ／ＯＦＦ時においても、内燃機関におけるノック発生の有無が正確に判定され、内燃機関の運転状態を適切に制御することができる。
【特許文献１】特開２００１−２２７４００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、内燃機関で検出される振動の強度（大きさ）には、ノッキングに起因した振動の強度に加えて、内燃機関自体の機械振動の強度が含まれる。内燃機関の機械振動の強度は、内燃機関の負荷が大きくなったり回転数が高くなったりするほど大きくなる傾向がある。そのため、特開２００１−２２７４００号公報に記載の内燃機関用ノック制御装置においては、内燃機関の負荷や回転数に応じた閾値を用いてノッキングが発生したか否かを判定しなければならない。そのため、特に内燃機関の負荷や回転数が頻繁に変化する過渡状態において、判定に用いる閾値が急変し、ノッキング判定の精度が悪化するおそれがあるという問題点があった。
【０００５】
本発明は、上述の課題を解決するためになされたものであって、その目的は、ノッキングが発生したか否かを精度よく判定することができるノッキング判定装置を提供することである。
【課題を解決するための手段】
【０００６】
第１の発明に係る内燃機関のノッキング判定装置は、内燃機関の振動の強度に関する第１の値を検出するための強度検出手段と、内燃機関のクランク角を検出するためのクランク角検出手段と、第１の値に基づいて、クランク角についての予め定められた間隔における内燃機関の振動の波形を検出するための波形検出手段と、内燃機関の振動の波形を予め記憶するための手段と、検出された波形と記憶された波形とを比較した結果に基づいて、検出された波形と記憶された波形との偏差に関する値を算出するための手段と、偏差に関する値および第１の値に基づいて算出される値を第２の値で補正して、内燃機関の振動の強度に関する第３の値を算出するための算出手段と、内燃機関の振動の強度に関する第４の値を予め記憶するための手段と、第３の値と第４の値とを比較した結果に基づいて、内燃機関にノッキングが発生したか否かを判定するための判定手段とを含む。
【０００７】
第１の発明によると、振動の強度に関する第１の値が検出されて、内燃機関の振動の波形が検出される。検出された波形が、たとえば内燃機関にノッキングが発生した場合の振動の波形として予め記憶された波形と比較され、検出された波形と記憶された波形との偏差に関する値が算出される。ここで、内燃機関の振動は、ノッキングの有無に関わらず、内燃機関自体の機械振動により、負荷が大きいほど大きくなったり、回転数が高くなるほど大きくなったりする。そのため、第１の値は、内燃機関の負荷が大きいほど大きい。また、第１の値は、回転数が高いほど大きい。このような第１の値および偏差に関する値に基づいて算出される値を第２の値で補正して、第３の値が算出される。たとえば、第１の値と偏差に関する値との積を、第２の値により除算して第３の値が算出される。第２の値は、内燃機関の負荷が大きいほど大きくなるという第１の条件および内燃機関の回転数が高いほど大きくなるという第２条件の少なくともいずれか一方の条件を満たすように設定される。これにより、内燃機関の負荷や回転数に応じた変化が抑制された第３の値を得ることができる。この第３の値と第４の値とを比較することにより、ノッキングが発生したか否かが判定される。これにより、ノッキング判定の閾値として用いられる第４の値に、定数など、内燃機関の負荷や回転数に応じた変化が抑制された値を用いることができる。そのため、内燃機関の負荷が変化する過渡時においても、ノッキング判定の閾値の変化が抑制され、精度よくノッキングが発生したか否かを判定することができる。その結果、ノッキングが発生したか否かを精度よく判定することができるノッキング判定装置を提供することができる。
【０００８】
第２の発明に係る内燃機関のノッキング判定装置においては、第１の発明の構成に加え、第２の値は、内燃機関の負荷が大きいほど大きくなるという第１の条件および内燃機関の回転数が高いほど大きくなるという第２の条件の少なくともいずれか一方の条件を満たすように設定された値である。
【０００９】
第２の発明によると、たとえば、第１の値と偏差に関する値との積が、内燃機関の負荷が大きいほど大きくなるという第１の条件および内燃機関の回転数が高いほど大きくなるという第２の条件の少なくともいずれか一方の条件を満たすように設定される第２の値により除算して第３の値が算出される。これにより、内燃機関の負荷や回転数に応じた変化が抑制された第３の値を得ることができる。この第３の値と第４の値とを比較することにより、ノッキングが発生したか否かが判定される。これにより、ノッキング判定の閾値として用いられる第４の値に、定数など、内燃機関の負荷や回転数に応じた変化が抑制された値を用いることができる。そのため、内燃機関の負荷が変化する過渡時においても、ノッキング判定の閾値の変化が抑制され、精度よくノッキングが発生したか否かを判定することができる。
【００１０】
第３の発明に係る内燃機関のノッキング判定装置においては、第２の発明の構成に加え、第２の値は、第１の条件および第２の条件の少なくともいずれか一方の条件に加えて、内燃機関の負荷が予め定められた負荷よりも大きい状態および内燃機関の回転数が予め定められた回転数よりも高い状態の少なくともいずれか一方の状態において、予め定められた強度のノッキングが発生した場合に、第３の値が第４の値よりも小さくなるという第３の条件を満たすように設定された値である。
【００１１】
第３の発明によると、負荷が大きい場合や回転数が高い場合、内燃機関の機械振動などによる騒音が大きい。したがって、ノッキングが発生しても、ノッキングによる異音が乗員に与える不快感などが小さい。そのため、負荷が大きい場合や回転数が高い場合において、予め定められた強度のノッキングが発生した場合、第３の値が第４の値よりも小さくなるように設定されている。これにより、負荷が大きい場合や回転数が高い場合においては、予め定められた強度のノッキングが発生しても、ノッキングが発生していないと判定することができる。そのため、たとえばノッキングが発生したと判定された場合において実行される点火時期の遅角制御を抑制して、内燃機関の出力の低下を抑制することができる。
【００１２】
第４の発明に係る内燃機関のノッキング判定装置においては、第１〜３のいずれかの発明の構成に加え、算出手段は、偏差に関する値と第１の値との積を第２の値で除算して、第３の値を算出するための手段を含む。
【００１３】
第４の発明によると、第１の値と偏差に関する値との積を、第２の値により除算して第３の値が算出される。第２の値は、たとえば、内燃機関の負荷が大きいほど大きくなるという第１の条件および内燃機関の回転数が高いほど大きくなるという第２の条件の少なくともいずれか一方の条件を満たすように設定される。これにより、内燃機関の負荷や回転数に応じた変化が抑制された第３の値を得ることができる。この第３の値と第４の値とを比較することにより、ノッキングが発生したか否かが判定される。これにより、ノッキング判定の閾値として用いられる第４の値に、定数など、内燃機関の負荷や回転数に応じた変化が抑制された値を用いることができる。そのため、内燃機関の負荷が変化する過渡時においても、ノッキング判定の閾値の変化が抑制され、精度よくノッキングが発生したか否かを判定することができる。
【００１４】
第５の発明に係る内燃機関のノッキング判定装置においては、第１〜４のいずれかの発明の構成に加え、判定手段は、第３の値が第４の値よりも大きい場合、内燃機関にノッキングが発生したと判定するための手段を含む。
【００１５】
第５の発明によると、第３の値と第４の値とを比較して、ノッキングが発生したことを検出することができる。
【００１６】
第６の発明に係る内燃機関のノッキング判定装置は、第１〜５のいずれかの発明の構成に加え、予め定められた運転状態における内燃機関の振動の強度に関する第５の値を検出するための手段と、予め定められた運転状態における内燃機関の振動の強度に関する第６の値を予め記憶するための手段と、第５の値および第６の値に基づいて第１の値を補正するための手段とをさらに含む。
【００１７】
第６の発明によると、たとえばアイドリング状態やクランキング状態において検出された第５の値とアイドリング状態やクランキング状態における振動の強度に関する値として記憶された第６の値との差に基づいて、第１の値が補正される。また、内燃機関の温度が予め定められた範囲内の温度である運転状態において検出された第５の値と内燃機関の温度が予め定められた範囲内の温度である運転状態における振動の強度に関する値として記憶された第６の値との差に基づいて、第１の値が補正される。これにより、検出される第１の値に含まれるノックセンサの個体差によるバラツキを抑制することができる。
【００１８】
第７の発明に係る内燃機関のノッキング判定装置においては、第６の発明の構成に加え、予め定められた運転状態は、アイドリング状態である。
【００１９】
第７の発明によると、内燃機関の振動が比較的安定したアイドリング状態における内燃機関の振動に基づいて、第１の値を補正することができる。これにより、精度よく第１の値を補正することができる。
【００２０】
第８の発明に係る内燃機関のノッキング判定装置においては、第６の発明の構成に加え、予め定められた運転状態は、クランキング状態である。
【００２１】
第８の発明によると、内燃機関の振動が比較的安定したクランキング状態における内燃機関の振動に基づいて、第１の値を補正することができる。これにより、精度よく第１の値を補正することができる。
【００２２】
第９の発明に係る内燃機関のノッキング判定装置においては、第６の発明の構成に加え、予め定められた運転状態は、内燃機関の温度が予め定められた範囲内の温度であるという運転状態である。
【００２３】
第９の発明によると、内燃機関の温度が予め定められた範囲内の温度であるという運転状態における第５の値および第６の値に基づいて、第１の値が補正される。これにより、温度条件が違うためにノックセンサの出力が異なることに起因する第５の値と第６の値との差を抑制することができる。そのため、精度よく第１の値を補正することができる。
【発明を実施するための最良の形態】
【００２４】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同一である。したがって、それらについての詳細な説明は繰返さない。
【００２５】
図１を参照して、本発明の実施の形態に係るノッキング判定装置を搭載した車両のエンジン１００について説明する。本実施の形態に係るノッキング判定装置は、たとえばエンジンＥＣＵ（Electronic Control Unit）２００が実行するプログラムにより実現される。
【００２６】
エンジン１００は、エアクリーナ１０２から吸入された空気とインジェクタ１０４から噴射される燃料との混合気を、燃焼室内で点火プラグ１０６により点火して燃焼させる内燃機関である。
【００２７】
混合気が燃焼すると、燃焼圧によりピストン１０８が押し下げられ、クランクシャフト１１０が回転する。燃焼後の混合気（排気ガス）は、三元触媒１１２により浄化された後、車外に排出される。エンジン１００に吸入される空気の量は、スロットルバルブ１１４により調整される。
【００２８】
エンジン１００は、エンジンＥＣＵ２００により制御される。エンジンＥＣＵ２００には、ノックセンサ３００と、水温センサ３０２と、タイミングロータ３０４に対向して設けられたクランクポジションセンサ３０６と、スロットル開度センサ３０８と、車速センサ３１０と、イグニッションスイッチ３１２とが接続されている。
【００２９】
ノックセンサ３００は、圧電素子により構成されている。ノックセンサ３００は、エンジン１００の振動により電圧を発生する。電圧の大きさは、振動の大きさと対応した大きさとなる。ノックセンサ３００は、電圧を表す信号をエンジンＥＣＵ２００に送信する。水温センサ３０２は、エンジン１００のウォータージャケット内の冷却水の温度を検出し、検出結果を表す信号を、エンジンＥＣＵ２００に送信する。
【００３０】
タイミングロータ３０４は、クランクシャフト１１０に設けられており、クランクシャフト１１０と共に回転する。タイミングロータ３０４の外周には、予め定められた間隔で複数の突起が設けられている。クランクポジションセンサ３０６は、タイミングロータ３０４の突起に対向して設けられている。タイミングロータ３０４が回転すると、タイミングロータ３０４の突起と、クランクポジションセンサ３０６とのエアギャップが変化するため、クランクポジションセンサ３０６のコイル部を通過する磁束が増減し、コイル部に起電力が発生する。クランクポジションセンサ３０６は、起電力を表す信号を、エンジンＥＣＵ２００に送信する。エンジンＥＣＵ２００は、クランクポジションセンサ３０６から送信された信号に基づいて、クランク角を検出する。
【００３１】
スロットル開度センサ３０８は、スロットル開度を検出し、検出結果を表す信号をエンジンＥＣＵ２００に送信する。車速センサ３１０は、車輪（図示せず）の回転数を検出し、検出結果を表す信号をエンジンＥＣＵ２００に送信する。エンジンＥＣＵ２００は、車輪の回転数から、車速を算出する。イグニッションスイッチ３１２は、エンジン１００を始動させる際に、運転者によりオン操作される。
【００３２】
エンジンＥＣＵ２００は、各センサおよびイグニッションスイッチ３１２から送信された信号、メモリ２０２に記憶されたマップおよびプログラムに基づいて演算処理を行ない、エンジン１００が所望の運転状態となるように、機器類を制御する。
【００３３】
本実施の形態において、エンジンＥＣＵ２００は、ノックセンサ３００から送信された信号およびクランク角に基づいて、予め定められたノック検出ゲート（予め定められた第１クランク角から予め定められた第２クランク角までの区間）におけるエンジン１００の振動の波形（以下、振動波形と記載する）を検出し、検出された振動波形に基づいて、エンジン１００にノッキングが発生したか否かを判定する。本実施の形態におけるノック検出ゲートは、燃焼行程において上死点（０度）から９０度までである。なお、ノック検出ゲートはこれに限らない。
【００３４】
ノッキングが発生したか否かを判定するため、エンジンＥＣＵ２００のメモリ２０２には、図２に示すように、エンジン１００にノッキングが発生した場合の振動波形のモデルであるノック波形モデルが記憶されている。
【００３５】
ノック波形モデルにおいて、振動の強度は０〜１の無次元数として表され、振動の強度はクランク角と一義的には対応していない。すなわち、本実施の形態のノック波形モデルにおいては、振動の強度のピーク値以降、クランク角が大きくなるにつれ振動の強度が低減することが定められているが、振動の強度がピーク値となるクランク角は定められていない。また、ノック波形モデルは、各周波数帯の振動の合成波である。なお、図２におけるＣＡは、クランク角（Crank Angle）を示す。
【００３６】
本実施の形態におけるノック波形モデルは、ノッキングにより発生した振動の強度のピーク値以降の振動に対応している。なお、図３に示すように、ノッキングに起因した振動の立ち上がり以降の振動に対応したノック波形モデルを記憶してもよい。
【００３７】
ノック波形モデルは、実験などにより、強制的にノッキングを発生させた場合におけるエンジン１００の振動波形を検出し、この振動波形に基づいて予め作成されて記憶される。
【００３８】
ノック波形モデルは、エンジン１００の寸法やノックセンサ３００の出力値が、寸法公差やノックセンサ３００の出力値の公差の中央値であるエンジン１００（以下、特性中央エンジンと記載する）を用いて作成される。すなわち、ノック波形モデルは、特性中央エンジンに強制的にノッキングを発生させた場合における振動波形である。
【００３９】
なお、ノック波形モデルを作成する方法は、これに限られない。エンジンＥＣＵ２００は、検出された波形と記憶されたノック波形モデルとを比較して、エンジン１００にノッキングが発生したか否かを判定する。
【００４０】
また、メモリ２０２には、ノック波形モデルの他、図４に示すように、特性中央エンジンをアイドリング状態で運転させた場合における振動の強度が、振動の周波数帯別に記憶される。アイドリング状態における特性中央エンジンの振動の強度は、ノック検出ゲート（上死点から９０度）におけるノックセンサ３００の出力電圧値（振動の強度を表す値）を積算した値（以下、積算値と記載する）により表される。なお、振動の強度を、ノックセンサ３００の出力電圧値と対応した値により表してもよい。また、本実施の形態においては、第１の周波数帯から第４の周波数帯までの４つの周波数帯の振動の強度（積算値）が記憶されるが、周波数帯の数は４つに限らない。
【００４１】
本実施の形態においては、後述するように、アイドリング状態における特性中央エンジンの振動の積算値を用いて、アイドリング状態とは異なる運転状態（たとえば加速時）において検出された振動の積算値を補正する。
【００４２】
さらに、図５に示すように、メモリ２０２には、エンジン１００にノッキングが発生していない状態におけるエンジン１００の振動の強度を表す値であるＢＧＬ（Back Ground Level）が、エンジン１００の回転数に対応して記憶される。
【００４３】
エンジン１００の回転数が高いほど、エンジン１００自体の機械振動の強度が大きくなる。したがって、図５に示すようにＢＧＬは、エンジン回転数が高いほど大きくなるような値として記憶される。
【００４４】
ノッキングが発生したか否かは、ＢＧＬを用いて算出されるノック強度Ｎが、図６において破線で示す判定値よりも大きいか否かにより判定する。ノック強度Ｎが判定値よりも大きい場合、ノッキングが発生したと判定される。ノック強度Ｎが判定値よりも小さい場合、ノッキングは発生していないと判定される。なお、ノック強度Ｎの算出方法については後で詳述する。
【００４５】
図７を参照して、本実施の形態に係るノッキング判定装置において、エンジンＥＣＵ２００が実行するプログラムの制御構造について説明する。
【００４６】
ステップ（以下、ステップをＳと略す）１００にて、エンジンＥＣＵ２００は、ノックセンサ３００から送信された信号に基づいて、エンジン１００の振動の強度を検出する。振動の強度は、ノックセンサ３００の出力電圧値で表される。なお、ノックセンサ３００の出力電圧値と対応した値で振動の強度を表してもよい。強度の検出は、燃焼行程において上死点から９０度（クランク角で９０度）までの間で行なわれる。
【００４７】
Ｓ１０２にて、エンジンＥＣＵ２００は、アイドリング状態における上死点から９０度までの積算値が算出されたか否かを判別する。エンジン１００の運転状態はエンジンＥＣＵ２００が決定し、積算値の算出はエンジンＥＣＵ２００が行なうため、アイドリング状態における積算値が算出されたか否かはエンジンＥＣＵ２００の内部で判別される。アイドリング状態における積算値が算出された場合（Ｓ１０２にてＹＥＳ）、処理はＳ１０４に移される。そうでない場合（Ｓ１０２にてＮＯ）、処理はＳ１００に移される。
【００４８】
Ｓ１０４にて、エンジンＥＣＵ２００は、各周波数帯について、振動の強度（積算値）の補正係数を算出する。補正係数の算出は、たとえば、メモリ２０２に記憶されたアイドリング状態における特性中央エンジンの振動の強度（積算値）を、アイドリング状態において実際に算出された積算値で除算することにより算出される。なお、補正係数の算出方法はこれに限らない。
【００４９】
Ｓ１０６にて、エンジンＥＣＵ２００は、アイドリング状態とは異なる運転状態における第１の周波数帯の振動について、積算値を算出する。Ｓ１０６においては、ノックセンサ３００の出力電圧値（振動の強度を表す値）を、クランク角で５度ごとに（５度分だけ）積算することにより、積算値が算出される。
【００５０】
Ｓ１０８にて、エンジンＥＣＵ２００は、アイドリング状態とは異なる運転状態における第２の周波数帯の振動について、積算値を算出する。Ｓ１０８においては、ノックセンサ３００の出力電圧値（振動の強度を表す値）を、クランク角で５度ごとに（５度分だけ）積算することにより、積算値が算出される。
【００５１】
Ｓ１１０にて、エンジンＥＣＵ２００は、アイドリング状態とは異なる運転状態における第３の周波数帯の振動について、積算値を算出する。Ｓ１１０においては、ノックセンサ３００の出力電圧値（振動の強度を表す値）を、クランク角で５度ごとに（５度分だけ）積算することにより、積算値が算出される。
【００５２】
Ｓ１１２にて、エンジンＥＣＵ２００は、アイドリング状態とは異なる運転状態における第４の周波数帯の振動について、積算値を算出する。Ｓ１１２においては、ノックセンサ３００の出力電圧値（振動の強度を表す値）を、クランク角で５度ごとに（５度分だけ）積算することにより、積算値が算出される。なお、Ｓ１０６〜Ｓ１１２の処理を同時に行なうようにしてもよい。
【００５３】
Ｓ１１４にて、エンジンＥＣＵ２００は、各周波数帯の振動の積算値（５度ごとの積算値）を補正する。積算値は、各周波数帯の積算値に、その周波数帯の補正係数を乗算することにより補正される。なお、積算値の補正方法についてはこれに限らない。
【００５４】
Ｓ１１６にて、エンジンＥＣＵ２００は、補正後の各周波数帯の振動の積算値を合成する。これにより、燃焼行程において上死点から９０度までの振動波形が検出される。Ｓ１１８にて、エンジンＥＣＵ２００は、検出された振動波形を正規化する。ここで、振動波形の正規化とは、たとえば、検出された振動波形における積算値の最大値で各積算値で除算することにより、図８に示すように振動の強度を０〜１の無次元数で表すことである。
【００５５】
図７に戻って、Ｓ１２０にて、エンジンＥＣＵ２００は、正規化された振動波形とノック波形モデルとの偏差に関する値である相関係数Ｋを算出する。正規化後の振動波形において振動の強度が最大になるタイミングとノック波形モデルにおいて振動の強度が最大になるタイミングとを一致させた状態で、正規化後の振動波形とノック波形モデルとの偏差の絶対値（ズレ量）をクランク角ごと（５度ごと）に算出することにより、相関係数Ｋが算出される。
【００５６】
正規化後の振動波形とノック波形モデルとのクランク角ごとの偏差の絶対値をΔＳ（Ｉ）（Ｉは自然数）とし、ノック波形モデルにおける振動の強度をクランク角で積分した値（ノック波形モデルの面積）をＳとおくと、相関係数Ｋは、Ｋ＝（Ｓ−ΣΔＳ（Ｉ））／Ｓという方程式により算出される。ここで、ΣΔＳ（Ｉ）は、上死点から９０度までのΔＳ（Ｉ）の総和である。なお、相関係数Ｋの算出方法はこれに限らない。
【００５７】
Ｓ１２２にて、エンジンＥＣＵ２００は、ノック強度Ｎを算出する。補正後の積算値の最大値をＰとすると、ノック強度Ｎは、Ｎ＝Ｐ×Ｋ／ＢＧＬという方程式で算出される。なお、ノック強度Ｎの算出方法はこれに限らない。
【００５８】
ここで、ＢＧＬは、エンジン１００の回転数が予め定められた回転数よりも高いという条件が満たされた場合において、予め定められた強度（たとえば小さい強度）のノッキングが発生した場合でも、ノック強度Ｎが予め定められた判定値よりも小さくなるように設定されている。
【００５９】
Ｓ１２４にて、エンジンＥＣＵ２００は、ノック強度Ｎが予め定められた判定値よりも大きいか否かを判別する。ノック強度Ｎが予め定められた判定値よりも大きい場合（Ｓ１２４にてＹＥＳ）、処理はＳ１２６に移される。そうでない場合（Ｓ１２４にてＮＯ）、処理はＳ１３０に移される。
【００６０】
Ｓ１２６にて、エンジンＥＣＵ２００は、エンジン１００にノッキングが発生したと判定する。Ｓ１２８にて、エンジンＥＣＵ２００は、点火時期を遅角する。Ｓ１３０にて、エンジンＥＣＵ２００は、エンジン１００にノッキングが発生していないと判定する。Ｓ１３２にて、エンジンＥＣＵ２００は、点火時期を進角する。
【００６１】
以上のような構造およびフローチャートに基づく、本実施の形態に係るノッキング判定装置のエンジンＥＣＵ２００の動作について説明する。
【００６２】
運転者がイグニッションスイッチ３１２をオン操作し、エンジン１００が始動すると、ノックセンサ３００から送信された信号に基づいて、エンジン１００の振動の強度が検出される（Ｓ１００）。
【００６３】
図９において実線で示すように、アイドリング状態における上死点から９０度までの振動の積算値が算出された場合（Ｓ１０２にてＹＥＳ）、アイドリング状態における特性中央エンジンの振動の積算値（図９における破線）を、検出された振動波形における積算値で各周波数帯ごとに除算することにより、補正係数が算出される（Ｓ１０４）。
【００６４】
さらに、アイドリング状態とは異なる運転状態における第１の周波数帯の振動について、５度ごとの積算値が算出される（Ｓ１０６）。これにより、図１０に示すように、第１の周波数帯の振動波形が検出される。
【００６５】
さらに、アイドリング状態とは異なる運転状態における第２の周波数帯の振動について、５度ごとの積算値が算出される（Ｓ１０８）。これにより、図１１に示すように、第２の周波数帯の振動波形が検出される。
【００６６】
さらに、アイドリング状態とは異なる運転状態における第３の周波数帯の振動について、５度ごとの積算値が算出される（Ｓ１１０）。これにより、図１２に示すように、第３の周波数帯の振動波形が検出される。
【００６７】
さらに、アイドリング状態とは異なる運転状態における第４の周波数帯の振動について、５度ごとの積算値が算出される（Ｓ１１２）。これにより、図１３に示すように、第４の周波数帯の振動波形が検出される。
【００６８】
算出された５度ごとの積算値に、対応する周波数帯の補正係数が乗算され、各周波数帯の積算値が補正される（Ｓ１１４）。アイドリング状態において、算出された積算値が記憶された積算値（特性中央エンジンの振動の積算値）よりも大きい場合、アイドリング状態とは異なる運転状態における５度ごとの積算値は小さくされる。一方、アイドリング状態において、算出された積算値が記憶された積算値（特性中央エンジンの振動の積算値）よりも小さい場合、アイドリング状態とは異なる運転状態における５度ごとの積算値は、大きくされる。これにより、ノックセンサ３００の個体差により生じる振動の強度のバラツキを抑制することができる。
【００６９】
補正された各周波数帯の振動の積算値が合成され（Ｓ１１６）、図１４に示すように、燃焼行程において上死点から９０度までの振動波形が検出される。５度ごとの積算値により振動波形を検出することにより、振動の強度が細かく変化する複雑な形状の振動波形が検出されることを抑制することができる。そのため、検出された振動波形とノック波形モデルとの比較を容易にすることができる。
【００７０】
このようにして検出された振動波形における積算値の最大値を用いて振動波形の正規化が行なわれる（Ｓ１１８）。ここでは、１５度から２０度までの積算値を用いて正規化が行なわれたと想定する。
【００７１】
正規化では、各クランク角における積算値が１５度から２０度までの積算値で除算され、図１５に示すように、振動波形における振動の強度が０〜１の無次元数で表される。この正規化により、振動の強度に関係なく検出された振動波形とノック波形モデルとの比較を行なうことができる。そのため、振動の強度に対応した多数のノック波形モデルを記憶しておく必要がなく、ノック波形モデルの作成を容易にすることができる。
【００７２】
図１５に示すように、正規化後の振動波形において振動の強度が最大になるタイミングとノック波形モデルにおいて振動の強度が最大になるタイミングとを一致させ、この状態で、正規化後の振動波形とノック波形モデルとのクランク角ごとの偏差の絶対値ΔＳ（Ｉ）が算出される。このΔＳ（Ｉ）の総和ΣΔＳ（Ｉ）およびノック波形モデルにおいて振動の強度をクランク角で積分した値Ｓに基づいて、Ｋ＝（Ｓ−ΣΔＳ（Ｉ））／Ｓにより相関係数Ｋが算出される（Ｓ１２０）。これにより、検出された振動波形とノック波形モデルとの一致度合を数値化して客観的に判定することができる。
【００７３】
さらに、算出された相関係数Ｋと補正後の積算値の最大値Ｐとの積をＢＧＬで除算することにより、ノック強度Ｎが算出される（Ｓ１２２）。これにより、検出された振動波形とノック波形モデルとの一致度合に加えて、振動の強度に基づいて、エンジン１００の振動がノッキングに起因した振動であるか否かをより詳細に分析することができる。
【００７４】
ここで、ノック強度Ｎを算出する際に用いられている積算値の最大値Ｐは、ノックセンサ３００の出力電圧値を積算することにより算出されている。ノックセンサ３００の出力電圧値は、エンジン１００の回転数が高いほどエンジン１００自体の機械振動の強度が高くなることに伴なって高くなる。そのため、積算値の最大値Ｐは、エンジン１００の回転数が高いほど高くなる。
【００７５】
このような積算値の最大値Ｐと相関係数Ｋとの積を、エンジン回転数が高いほど大きくなるような値として記憶されたＢＧＬで除算することにより、図１６において実線で示すように、算出されるノック強度Ｎがエンジン１００の回転数に応じて変化することを抑制することができる。
【００７６】
これにより、図１６において破線で示すように、エンジン１００の回転数に応じた変化が抑制された定数の判定値を用いてノッキングが発生したか否かを判定することができる。そのため、エンジン１００の回転数が変化する過渡時においても、判定値の変化が抑制され、精度よくノッキングが発生したか否かを判定することができる。なお、図１６において、判定値は定数として記載しているが、判定値をエンジン回転数に応じて徐変させてもよい。
【００７７】
ノック強度Ｎが予め定められた判定値よりも大きい場合（Ｓ１２４にてＹＥＳ）、ノッキングが発生したと判定され（Ｓ１２６）、点火時期が遅角される（Ｓ１２８）。これにより、ノッキングの発生が抑制される。
【００７８】
一方、ノック強度Ｎが予め定められた判定値よりも大きくない場合（Ｓ１２４にてＮＯ）、ノッキングが発生していないと判定され（Ｓ１３０）、点火時期が進角される（Ｓ１３２）。
【００７９】
ここで、ＢＧＬは、エンジン１００の回転数が予め定められた回転数よりも高いという条件が満たされた場合において、予め定められた強度（たとえば小さい強度）のノッキングが発生した場合でも、ノック強度Ｎが予め定められた判定値よりも小さくなるように設定されている。そのため、エンジン１００の回転数が予め定められた回転数よりも高い領域においては、小さい強度のノッキングが発生している場合であっても、ノッキングが発生していないと判定され（Ｓ１３０）、点火時期が進角される（Ｓ１３２）。
【００８０】
これにより、高回転領域においては、ノッキングの抑制よりもエンジン１００の出力を優先することができる。この場合、ノッキングが抑制されないが、高回転領域においては走行音など、ノッキング以外の音源から音が大きいため、ノッキングによる異音が乗員に与える不快感は小さい。
【００８１】
以上のように、本実施の形態に係るノッキング判定装置のエンジンＥＣＵは、ノックセンサの出力電圧値の積算値（第１の値）を振動の周波数帯ごとに算出する。また、アイドリング状態において算出された積算値（第５の値）と予め記憶された特性中央エンジンの積算値（第６の値）とを比較して、補正係数が算出される。この補正係数により、アイドリング状態とは異なる運転状態において算出された積算値（第１の値）が補正される。これにより、エンジンの個体差による振動の強度のバラツキを抑制することができる。補正後の算出値（第１の値）を合成することにより、アイドリング状態とは異なる運転状態におけるエンジンの振動波形が検出される。この振動波形とノック波形モデルとが比較され、相関係数Ｋが算出される。算出された相関係数Ｋと補正後の積算値の最大値Ｐ（第１の値）との積を、エンジン回転数が高いほど大きくなるような値として記憶されたＢＧＬ（第２の値）により除算して、ノック強度Ｎ（第３の値）が算出される。ノック強度Ｎが判定値（第４の値）よりも大きい場合、エンジンにノッキングが発生したと判定される。ノック強度Ｎが判定値よりも大きくない場合、エンジンにノッキングが発生していないと判定される。ここで、ノック強度Ｎを算出する際に用いられている積算値の最大値Ｐ（第１の値）は、ノックセンサの出力電圧値を積算することにより算出されている。ノックセンサの出力電圧値は、エンジンの回転数が高いほどエンジン自体の機械振動の強度が高くなることに伴なって高くなる。そのため、積算値の最大値Ｐ（第１の値）は、エンジンの回転数が高いほど高くなる。このような積算値の最大値Ｐ（第１の値）と相関係数Ｋとの積をＢＧＬ（第２の値）で除算することにより、算出されるノック強度Ｎ（第３の値）がエンジンの回転数に応じて変化することを抑制することができる。これにより、エンジンの回転数に応じた変化が抑制された判定値（第４の値）を用いてノッキングが発生したか否かを判定することができる。そのため、エンジンの回転数が変化する過渡時においても、判定値（第４の値）の変化が抑制され、精度よくノッキングが発生したか否かを判定することができる。
【００８２】
なお、本実施の形態においては、アイドリング状態における積算値に基づいて補正係数を算出していたが、アイドリング状態における積算値の代わりに、クランキング状態（スタータモータなどによるエンジン始動時）における積算値により補正係数を算出するようにしてもよい。この場合、クランキング状態とは異なる運転状態における積算値を補正するようにしてもよい。
【００８３】
また、ノックセンサ３００の出力は、温度の影響を受けて変化するため、エンジン１００の温度、すなわちエンジン１００の冷却水の温度が、予め定められた温度の範囲内である場合における積算値に基づいて、補正係数を算出するようにしてもよい。
【００８４】
この場合、冷却水の温度が予め定められた温度の範囲内である場合のアイドリング状態またはクランキング状態における積算値として記憶された積算値を、冷却水の温度が予め定められた温度の範囲内である場合のアイドリング状態またはクランキング状態において実際に算出された積算値で除算することにより、補正係数を算出するようにしてもよい。
【００８５】
また、エンジン１００の負荷が大きいほど、エンジン１００自体の機械振動の強度が大きくなる。したがって、エンジン１００の負荷が大きいほど大きくなるような値として、ＢＧＬを記憶するようにしてもよい。この場合、エンジン１００の負荷が予め定められた負荷よりも大きいという条件が満たされた場合において、予め定められた強度（たとえば小さい強度）のノッキングが発生した場合でも、ノック強度Ｎが予め定められた判定値よりも小さくなるように、ＢＧＬを設定してもよい。
【００８６】
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【００８７】
【図１】本発明の実施の形態に係るノッキング判定装置により制御されるエンジンを示す概略構成図である。
【図２】エンジンＥＣＵのメモリに記憶されたノック波形モデルを示す図（その１）である。
【図３】エンジンＥＣＵのメモリに記憶されたノック波形モデルを示す図（その２）である。
【図４】アイドリング状態における特性中央エンジンのノックセンサの出力電圧値の積算値を示す図である。
【図５】ＢＧＬを示す図である。
【図６】判定値を示す図である。
【図７】本発明の実施の形態に係るノッキング判定装置のエンジンＥＣＵが実行するプログラムの制御構造を示すフローチャートである。
【図８】正規化後の振動波形を示す図である。
【図９】アイドリング状態におけるノックセンサの出力電圧値の積算値を示す図である。
【図１０】第１の周波数帯の振動の波形を示す図である。
【図１１】第２の周波数帯の振動の波形を示す図である。
【図１２】第３の周波数帯の振動の波形を示す図である。
【図１３】第４の周波数帯の振動の波形を示す図である。
【図１４】正規化前の振動波形を示す図である。
【図１５】正規化後の振動波形とノック波形モデルとを比較した状態を示す図である。
【図１６】ノック強度Ｎと判定値とを示す図である。
【符号の説明】
【００８８】
１００  エンジン、１０４  インジェクタ、１０６  点火プラグ、１１０  クランクシャフト、２００  エンジンＥＣＵ、３００  ノックセンサ、３０２  水温センサ、３０４  タイミングロータ、３０６  クランクポジションセンサ、３０８  スロットル開度センサ。
【図１】
2006307710.tif 000003
【図２】
2006307710.tif 000004
【図３】
2006307710.tif 000005
【図４】
2006307710.tif 000006
【図５】
2006307710.tif 000007
【図６】
2006307710.tif 000008
【図７】
2006307710.tif 000009
【図８】
2006307710.tif 000010
【図９】
2006307710.tif 000011
【図１０】
2006307710.tif 000012
【図１１】
2006307710.tif 000013
【図１２】
2006307710.tif 000014
【図１３】
2006307710.tif 000015
【図１４】
2006307710.tif 000016
【図１５】
2006307710.tif 000017
【図１６】
2006307710.tif 000018