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