説明

内燃機関のノッキング検出装置

【課題】 ノックセンサの出力信号の周波数成分に基づいて、ノッキングの判定をより正確に行うことができる内燃機関のノッキング検出装置を提供する。
【解決手段】 クランク角6度間隔でノックセンサ11の出力信号の周波数成分分析を行い、分析の結果得られる周波数成分強度の時系列データ(KMAP(j,i))をメモリに格納する。時系列データ(KMAP(j,i))を二値化することにより、二値化強度パラメータNKMAP(j,i)を算出し(S11)、該二値化強度パラメータNKMAP(j,i)と、ノッキングが発生した状態に対応するマスタパラメータMMAP(j,i)とを用いて適合率PFITを算出し(S13)、適合率PFITが判定閾値SLVLを超えたとき、ノッキングが発生したと判定する(S15,S16)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、内燃機関のノッキング検出装置に関し、特にノックセンサの出力信号の周波数成分に基づいてノッキングの有無を判定するものに関する。
【背景技術】
【0002】
特許文献1には、ノックセンサの出力信号に含まれる複数の共鳴周波数成分を求め、その複数の共鳴周波数成分に基づいてノッキング指標を算出し、ノッキング指標と所定値とを比較することによりノッキングの有無を判定するようにしたノッキング検出装置が示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第2684611号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に示された手法では、高速フーリエ変換により例えば16個の周波数に対応する周波数成分の強度が算出され、強度の大きいもの5個を選択して、各成分に所定の重み付けを行って合計することによりノッキング指標が算出される。しかしながら、この手法には以下に説明するような課題がある。
【0005】
図30は、ノックセンサの出力信号の周波数成分分析結果の一例を示す図であり、同図の破線がノッキングが発生したときのスペクトルを示し、実線が機関の吸気弁の着座に起因する振動(以下「着座ノイズ」という)が発生したときのスペクトルを示す。このように着座ノイズの影響がノックセンサの出力信号に表れる場合には、特定の周波数成分がノッキング発生時と同程度の強さで表れるため、ノッキングが発生していないにも拘わらずノッキングが発生したと誤判定する可能性があった。
【0006】
本発明はこの点に着目してなされたものであり、ノックセンサの出力信号の周波数成分に基づいて、ノッキングの判定をより正確に行うことができる内燃機関のノッキング検出装置を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するため請求項1に記載の発明は、内燃機関(1)に装着されたノックセンサ(11)の出力信号に基づいてノッキングを判定するノッキング判定手段を備える内燃機関のノッキング検出装置において、所定クランク角度間隔で前記ノックセンサ出力信号の周波数成分分析を行う周波数成分分析手段と、前記周波数成分分析により得られる、複数の周波数成分の強度を時系列データ(KMAP(j,i))として格納するデータ格納手段と、前記周波数成分強度の時系列データ(KMAP(j,i))を二値化する二値化手段とを備え、前記ノッキング判定手段は、二値化された時系列データ(NKMAP(j,i))に基づいてノッキングが発生したか否かを判定することを特徴とする。
【0008】
請求項2に記載の発明は、請求項1に記載の内燃機関のノッキング検出装置において、前記ノッキング判定手段は、ノッキングが発生した状態に対応するマスタパターンデータ(MMAP(j,i))と、前記二値化された時系列データ(NMAP(j,i))とを比較することにより、前記ノッキング判定を行うことを特徴とする。
【0009】
請求項3に記載の発明は、請求項2に記載の内燃機関のノッキング検出装置において、前記ノッキング判定手段は、前記二値化された時系列データ(NKMAP(j,i))に基づいて、ノイズ成分の時系列データ(NNMAP(j,i))を算出するノイズ成分算出手段と、前記二値化された時系列データ(NKMAP(j,i))を前記ノイズ成分の時系列データ(NNMAP(j,i))により補正するノイズ補正手段とを備え、補正後の時系列データ(JKMAP(j,i))に基づいて前記ノッキング判定を行うことを特徴とする。
【0010】
請求項4に記載の発明は、請求項2に記載の内燃機関のノッキング検出装置において、前記周波数成分強度分布の時系列データ(KMAP(j,i))に基づいて、ノイズ成分の時系列データ(NLMAP(j,i))を算出するノイズ成分算出手段と、前記周波数成分強度の時系列データ(KMAP(j,i))を前記ノイズ成分の時系列データ(NLMAP(j,i))により補正するノイズ補正手段とを備え、前記二値化手段は、補正後の時系列データ(JKMAPI(j,i))を二値化することを特徴とする。
【0011】
請求項5に記載の発明は、請求項2から4の何れか1項に記載の内燃機関のノッキング検出装置において、前記ノッキング判定手段は、前記二値化された時系列データ(NKMAP(j,i),JKMAP(j,i))及び前記マスタパターンデータ(MMAP(j,i))に対して、周波数に応じた重み付けを行う重み付け手段を備え、重み付けされた時系列データ及びマスタパターンデータを用いて前記ノッキング判定を行うことを特徴とする。
【0012】
請求項6に記載の発明は、請求項2から5の何れか1項に記載の内燃機関のノッキング検出装置において、前記ノッキング判定手段は、前記マスタパターンデータ(MMAP(j,i))と前記二値化された時系列データ(NKMAP(j,i),JKMAP(j,i))との適合率(PFIT)を算出し、前記適合率(PFIT)が判定閾値(SLVL)を超えたときにノッキングが発生したと判定することを特徴とする。
【0013】
請求項7に記載の発明は、請求項2から6の何れか1項に記載の内燃機関のノッキング検出装置において、前記マスタパターンデータ(MMAP(j,i))は前記機関の運転状態に応じて設定されることを特徴とする。
【0014】
請求項8に記載の発明は、請求項1または2に記載の内燃機関のノッキング検出装置において、複数の周波数からなる周波数グループ(G1〜G7)毎に、1つのサンプルタイミングにおける最大強度を選択することにより、周波数グループ時系列データ(GKMAP(j,i))を生成する周波数グループ時系列データ生成手段を備え、前記二値化手段は前記周波数グループ時系列データ(GKMAP(j,i))を二値化することを特徴とする。
【0015】
請求項9に記載の発明は、請求項8に記載の内燃機関のノッキング検出装置において、前記周波数グループ時系列データ(GKMAP(j,i))に基づいて、前記周波数グループに対応するグループノイズ成分の時系列データ(GNLMAP(j,i))を算出するグループノイズ成分算出手段と、前記周波数グループ時系列データ(GKMAP(j,i))を前記グループノイズ成分の時系列データ(GNLMAP(j,i))により補正するグループノイズ補正手段とを備え、前記二値化手段は、補正後の周波数グループ時系列データ(GJKMAPI(j,i))を二値化することを特徴とする。
【発明の効果】
【0016】
請求項1に記載の発明によれば、所定クランク角度間隔でノックセンサ出力信号の周波数成分分析が行われ、この周波数成分分析により得られる、複数の周波数成分の強度分布が時系列データとして格納される。そして、強度分布の時系列データが二値化され、該二値化された時系列データに基づいてノッキングが発生したか否かが判定される。二値化された時系列データには、機関の回転に伴う強度分布の変化が表れるので、この時系列データと、ノッキング発生時に特有の変化パターンに対応するデータとを比較することにより、ノッキングの発生を正確に判定することができる。また二値化することにより、データ量が減少するとともに時系列データの変化パターンが単純化されるので、メモリ容量を低減するとともに演算速度を高めることができる。
【0017】
請求項2に記載の発明によれば、ノッキングが発生した状態に対応するマスタパターンデータと、二値化された時系列データとを比較することにより、ノッキング判定が行われる。二値化された時系列データがマスタパターンに近い変化パターンを示すとき、ノッキングが発生した可能性が高いので、得られた時系列データとマスタパターンの類似性(相関性)を示すパラメータを算出することにより、正確な判定を行うことができる。
【0018】
請求項3に記載の発明によれば、二値化された時系列データに基づいて、ノイズ成分の時系列データが算出され、二値化された時系列データがノイズ成分の時系列データにより補正され、補正後の二値化時系列データに基づいてノッキング判定が行われる。したがって、上述した着座ノイズのように定常的に表れるノイズ成分を除去してより正確な判定を行うことが可能となる。
【0019】
請求項4に記載の発明によれば、強度分布の時系列データに基づいて、ノイズ成分の時系列データが算出され、強度分布の時系列データがノイズ成分の時系列データにより補正される。そして補正後の時系列データが二値化され、その二値化された時系列データに基づいてノッキング判定が行われる。二値化した後にノイズ成分を低減する補正を行う場合に比べて、ノイズ成分の低減をより適切に行うことができる。
【0020】
請求項5に記載の発明によれば、二値化された時系列データ及びマスタパターンデータに対して、周波数に応じた重み付けが行われ、重み付けされた時系列データ及びマスタパターンデータを用いてノッキング判定が行われる。ノッキングが発生したときに大きくなる周波数成分は予め判明しているので、その周波数の近傍の周波数に対応するデータに大きな重みを付けることにより、判定精度を高めることができる。
【0021】
請求項6に記載の発明によれば、マスタパターンデータと二値化された時系列データとの適合率が算出され、適合率が判定閾値を超えたときにノッキングが発生したと判定される。適合率を用いることにより、マスタパターンデータと二値化された時系列データとの相関を、比較的簡単な演算で的確に評価し、正確な判定を行うことができる。
【0022】
請求項7に記載の発明によれば、マスタパターンデータが機関の運転状態に応じて設定されるので、機関運転状態の変化に拘わらず正確な判定を行うことができる。
【0023】
請求項8に記載の発明によれば、複数の周波数からなる周波数グループ毎に、1つのサンプルタイミングにおける最大強度を選択することにより、周波数グループ時系列データが生成され、該生成された周波数グループ時系列データが二値化され、その二値化された時系列データに基づいてノッキング判定が行われる。周波数グループ時系列データを用いることにより、判定処理に適用されるデータ量を減らし、装置の演算負荷を軽減することができる。
【0024】
請求項9に記載の発明によれば、周波数グループ時系列データに基づいて、周波数グループに対応するグループノイズ成分の時系列データが算出され、周波数グループ時系列データがグループノイズ成分の時系列データにより補正される。そして補正後の時系列データが二値化され、その二値化された時系列データに基づいてノッキング判定が行われる。したがって、周波数グループ時系列データに基づくノッキング判定を行う場合において、ノイズ成分の影響を軽減し、正確な判定を行うことができる。
【図面の簡単な説明】
【0025】
【図1】本発明の一実施形態にかかる内燃機関及びその制御装置の構成を示す図である。
【図2】ノックセンサ出力のサンプリング及び周波数成分分析を説明するための図である。
【図3】周波数成分分析による得られる強度データをスペクトル時系列マップ及び二値化スペクトル時系列マップとして示した図である。
【図4】吸気弁の着座ノイズの二値化スペクトル時系列マップを示す図である。
【図5】ノイズ除去処理を説明するために二値化スペクトル時系列マップを示す図である。
【図6】マスタパターンマップを用いたノッキング判定を説明するために二値化スペクトル時系列マップを示す図である。
【図7】重み付けマップの一例を示す図である。
【図8】ノッキング判定処理のフローチャートである。
【図9】図8の処理で参照されるマップを示す図である。
【図10】図8に示す処理で実行される二値化データマップ算出処理のフローチャートである。
【図11】図10に示す処理で実行される二値化処理のフローチャートである。
【図12】図11の処理で参照されるマップを示す図である。
【図13】図8に示す処理で実行されるノイズ除去処理のフローチャートである。
【図14】図8に示す処理で実行される適合率算出処理のフローチャートである。
【図15】図14の処理で参照されるマップを説明するための図である。
【図16】図8に示す処理で実行されるノイズ学習処理のフローチャートである。
【図17】図16に示す処理で実行されるノイズマップ更新処理のフローチャートである。
【図18】本発明の第2の実施形態にかかるノッキング判定処理のフローチャートである。
【図19】周波数成分分析による得られる強度データをスペクトル時系列マップ及びノイズ成分強度をスペクトル時系列マップとして示した図である。
【図20】ノイズ除去処理後のスペクトル時系列マップ及びそのスペクトル時系列マップを二値化したマップを示す図である。
【図21】図18の処理で実行されるデータマップ算出処理のフローチャートである。
【図22】図18の処理で実行されるノイズ除去処理のフローチャートである。
【図23】図18の処理で実行される二値化処理のフローチャートである。
【図24】図18の処理で実行されるノイズ学習処理のフローチャートである。
【図25】本発明の第3の実施形態におけるグループ化を説明するための図である。
【図26】グループ化されたスペクトル時系列マップに基づくノッキング判定処理を説明するための図である。
【図27】本発明の第3の実施形態にかかるノッキング判定処理のフローチャートである。
【図28】図27の処理で実行されるグループ化処理のフローチャートである。
【図29】図14に示す処理の変形例を示すフローチャートである。
【図30】従来技術の課題を説明するための図である。
【発明を実施するための形態】
【0026】
以下本発明の実施の形態を図面を参照して説明する。
[第1の実施形態]
図1は、本発明の一実施形態にかかる内燃機関(以下「エンジン」という)及びその制御装置の全体構成図であり、例えば4気筒のエンジン1の吸気管2の途中にはスロットル弁3が配されている。スロットル弁3にはスロットル弁開度THを検出するスロットル弁開度センサ4が連結されており、センサ4の検出信号は、電子制御ユニット(以下「ECU」という)5に供給される。
【0027】
燃料噴射弁6はエンジン1とスロットル弁3との間かつ吸気管2の図示しない吸気弁の少し上流側に各気筒毎に設けられており、各噴射弁は図示しない燃料ポンプに接続されていると共にECU5に電気的に接続されて当該ECU5からの信号により燃料噴射弁6の開弁時間が制御される。エンジン1の各気筒には、点火プラグ7が設けられており、点火プラグ7はECU5に接続されている。ECU5は、点火プラグ7に点火信号を供給する。
【0028】
スロットル弁3の下流側には吸気圧PBAを検出する吸気圧センサ8、及び吸気温TAを検出する吸気温センサ9が設けられている。エンジン1の本体には、エンジン冷却水温TWを検出する冷却水温センサ10及び非共振型のノックセンサ11が装着されている。センサ8〜11の検出信号は、ECU5に供給される。ノックセンサ11としては、例えば5kHzから25kHzまでの周波数帯域の振動を検出可能なものが使用される。
【0029】
吸気管2のスロットル弁3の上流側には、吸入空気流量GAを検出する吸入空気流量センサ13が設けられており、その検出信号はECU5に供給される。
ECU5には、エンジン1のクランク軸(図示せず)の回転角度を検出するクランク角度位置センサ11が接続されており、クランク軸の回転角度に応じた信号がECU5に供給される。クランク角度位置センサ11は、エンジン1の特定の気筒の所定クランク角度位置でパルス(以下「CYLパルス」という)を出力する気筒判別センサ、各気筒の吸入行程開始時の上死点(TDC)に関し所定クランク角度前のクランク角度位置で(4気筒エンジンではクランク角180度毎に)TDCパルスを出力するTDCセンサ及びTDCパルスより短い一定クランク角周期(例えば6度周期)で1パルス(以下「CRKパルス」という)を発生するCRKセンサから成り、CYLパルス、TDCパルス及びCRKパルスがECU5に供給される。これらのパルスは、燃料噴射時期、点火時期等の各種タイミング制御、エンジン回転数(エンジン回転速度)NEの検出に使用される。
【0030】
エンジン1は、吸気弁(図示せず)の弁リフト量及び開角(開弁期間)を連続的に変更する第1弁作動特性可変機構と、吸気弁を駆動するカムの、クランク軸回転角度を基準とした作動位相を連続的に変更する第2弁作動特性可変機構とを有する弁作動特性可変装置20を備えている。ECU5は、弁作動特性可変装置20にリフト量制御信号及び作動位相制御信号を供給し、吸気弁の作動制御を行う。第1及び第2弁作動特性可変機構の構成は、それぞれ例えば特開2008−25418号公報及び特開2000−227013号公報に示されている。
【0031】
ECU5は、各種センサからの入力信号波形を整形し、電圧レベルを所定レベルに修正し、アナログ信号値をデジタル信号値に変換する等の機能を有する入力回路、中央演算処理ユニット(以下「CPU」という)、該CPUで実行される各種演算プログラム及び演算結果等を記憶する記憶回路(メモリ)、燃料噴射弁6及び点火プラグ7に駆動信号を供給する出力回路等から構成される。
【0032】
次に本実施形態におけるノッキング判定手法の概要を説明する。図2(a)は、ノックセンサ11の出力信号波形を示し、図2(b)は、同図(a)の期間TSの波形を拡大して示す図である。本実施形態では、サンプリング周期20マクロ秒で検出される50個のデータを対象として、高速フーリエ変換による周波数成分分析を行う。その周波数成分分析の結果が図2(c)に示されている。図2(c)の縦軸はエネルギ強度PSであり、本実施形態では、5kHzから25kHzまでの周波数帯域における1kHz毎の周波数(5,6,7,…,24,25kHz)に対応するエネルギ強度PSが、クランク角度6度毎に算出される。
【0033】
これにより、周波数成分の時系列データが図3(a)に示すように2次元マトリクス(以下「スペクトル時系列マップ」という)として算出される。スペクトル時系列マップは縦方向が周波数f[kHz]であり、横方向がクランク角度(燃焼行程が開始する上死点後のクランク角度)CA[deg]である。ここで、縦方向及び横方向のインデクスとしてそれぞれ「j」(j=0〜20)及び「i」(i=0〜14)を用い、スペクトル時系列マップの要素を強度パラメータKMAP(j,i)と表示する。例えば強度パラメータKMAP(0,0)は、左下端の「34」、強度パラメータKMAP(0,14)は右下端の「31」、強度パラメータKMAP(20,0)は左上端の「56」、強度パラメータKMAP(20,14)は右上端の「30」に相当する。なお強度パラメータKMAPは相対強度を示す無次元量である。
【0034】
図3(a)のスペクトル時系列マップを二値化すると図3(b)の二値化スペクトル時系列マップが得られる。図3(b)のマップの要素である二値化強度パラメータNKMAP(j,i)は、強度パラメータKMAP(j,i)が「50」以上であるとき「1」、「50」未満であるとき「0」をとる。
【0035】
図3(b)に示す二値化スペクトル時系列マップは、図30に破線で示すノッキングが発生したときに得られるマップである。一方図30に実線で示す着座ノイズの二値化スペクトル時系列マップは、図4に示すようになり、図3(b)に示すノッキング発生時のマップと明確に相違するため、着座ノイズをノッキング発生と誤判定することがなく、正確なノッキング判定を行うことができる。
【0036】
本実施形態ではさらに、ノッキングが発生していないと判定されたときの二値化スペクトル時系列マップに基づいて、ノイズに対応する二値化スペクトル時系列マップ(以下単に「二値化ノイズマップ」という)を学習演算により生成し、二値化ノイズマップ上のノイズ学習値を、検出データから算出される二値化スペクトル時系列マップ上の対応する値から差し引くことにより、ノイズの影響を除去するようにしている。
【0037】
図5(a)は、学習演算により得られた二値化ノイズマップの一例を示す図であり、クランク角度6度のタイミングで6〜25kHzの帯域でノイズ成分が表れている。図5(b)は、図3(b)に示す二値化スペクトル時系列マップから図5(a)に示すノイズ成分を減算することによりノイズ除去処理を行った後の二値化スペクトル時系列マップを示す。このようにノイズ除去処理を行うことにより、ノイズの影響を除き、より正確な判定が可能となる。
【0038】
また本実施形態では、検出データから得られる二値化スペクトル時系列マップを、図6(a)に示すマスタパターンマップと比較することにより、ノッキングが発生したか否かを判定するようにしている。マスタパターンマップは、ノッキングが発生したときに得られる典型的な二値化スペクトル時系列マップに相当するものである。
【0039】
上記比較は具体的には以下のように行われる。二値化スペクトル時系列マップ上の二値化強度パラメータNKMAP(j,i)と、マスタパターンマップ上のマスタパラメータMMAP(j,i)との積を積算することにより、強度積算値SUMKを算出し、マスタパラメータMMAP(j,i)そのものの積算値である基準積算値SUMMを算出し、基準積算値SUMMに対する強度積算値SUMKの比率として適合率PFIT(=SUMK/SUMM)を算出する。そして、適合率PFITが判定閾値SLVLを超えるとノッキングが発生したと判定する。
【0040】
図6(b)は、図5(b)に示す二値化強度パラメータNKMAP(j,i)と、図6(a)に示すマスタパターンマップ上のマスタパラメータMMAP(j,i)との積(NKMAP(j,i)×MMAP(j,i))のマップを示す。この例では、図6(b)の積マップは、図5(b)に示すもとのマップと全く同一となり、適合率PFITは、「0.863」となる。
【0041】
なお、後述する実際のノッキング判定処理においては、上記強度積算値SUMK及び基準積算値SUMMを算出する際にエンジン運転状態に応じた重み付けを行うようにしている。この重み付けを行うための重み付けパラメータWMAP(j,i)が設定されている重み付けマップの一例を図7に示す。図7に示す重み付けマップは、周波数6kHzの成分についてクランク角12度から72度までのパラメータ値、周波数10kHzの成分についてクランク角36度から66度までのパラメータ値、並びに周波数11kHz、13kHz、15kHz、及び20kHzの成分についてクランク角12度から30度までのパラメータ値に対して重みが付けられるように設定されている。
【0042】
図7に示すような重み付けマップによる重み付けは、エンジン運転状態に依存して二値化スペクトル時系列マップの周波数に対する特性が変化することを補償するために行われるものである。エンジン運転状態に応じて重み付けを行うことにより、エンジン運転状態の変化に拘わらず正確な判定を行うことが可能となる。
【0043】
本実施形態におけるノックセンサ出力VSのサンプリング周期は20マイクロ秒とし、50個のサンプリング値を用いて周波数成分分析を行う。これにより、25kHzまでの周波数成分を1kHz間隔で算出することが可能となる。なお、クランク軸が6度回転するのに要する時間TD6は、エンジン回転数NEが1000rpmのとき1ミリ秒であり50個のサンプリング値が得られる。また例えばエンジン回転数NEが2000rpmのときは時間TD6が500マイクロ秒となり、サンプリングデータの数は25となるので、周波数成分分析は、直前に検出された、クランク角12度分のサンプリング値を用いてクランク角6度毎に行われる。
【0044】
周波数成分分析(高速フーリエ変換)は、図示しない処理において実行され、クランク角度6度毎に、演算の結果得られる周波数毎の強度値STFT(k)(k=0〜(KN−1))がECU5の記憶回路(RAM)に格納される。KNは、上死点後6度から90度までのクランク角度範囲で得られる強度値の数であり、本実施形態では315(図3〜6に示すマップ上のデータ数)である。
【0045】
図8は、上述した手法によりノッキング判定を行う処理のフローチャートであり、この処理はECU5のCPUでTDCパルスの発生に同期して実行される。
【0046】
ステップS11では、図10に示す二値化データマップ算出処理を実行し、上述した二値化スペクトル時系列マップの算出を行う。ステップS12では、図13に示すノイズ除去処理を実行し、図5(a)に例示するような二値化ノイズマップを用いてノイズ成分を除去する処理を行う。
【0047】
ステップS13では、図14に示す適合率算出処理を実行し、ノイズ成分が除去された二値化スペクトル時系列マップと、マスタパターンマップとを用いて適合率PFITを算出する。
【0048】
ステップS14では、エンジン回転数NE及び吸気圧PBAに応じて例えば図9に示すように設定されたSLVLマップを検索し、判定閾値SLVLを算出する。SLVLマップに設定されている格子点以外のエンジン回転数NE及び吸気圧PBAについては、補間演算により判定閾値SLVLを算出する。
【0049】
ステップS15では、ステップS13で算出される適合率PFITが判定閾値SLVLより大きいか否かを判別し、その答が肯定(YES)であるときは、ノッキングが発生したと判定し、ノッキングフラグFKNOCKを「1」に設定する(ステップS16)。
【0050】
ステップS15でPFIT≦SLVLであるときは、ノッキングは発生していないと判定し、ノッキングフラグFKNOCKを「0」に設定する(ステップS17)。次いで図16に示すノイズ学習処理を実行し、二値化ノイズマップ(図5(a)参照)の更新を行う。
【0051】
図10は、図8のステップS11で実行される二値化データマップ算出処理のフローチャートである。
ステップS21では、クランク角インデクスi,周波数インデクスj,及びメモリアドレスインデクスkをいずれも「0」に初期化する。ステップS22では、周波数インデクスjが周波数データ数JN(本実施形態では21)から「1」を減算した値より大きいか否かを判別する。最初はこの答は否定(NO)であるので、ステップS23に進み、クランク角インデクスiがクランク角データ数IN(本実施形態では15)から「1」を減算した値より大きいか否かを判別する。
【0052】
最初はステップS23の答も否定(NO)であるので、メモリアドレスインデクスkを下記式(1)により算出する(ステップS24)。したがって、メモリアドレスインデクスkは、クランク角インデクスi及び周波数インデクスjの増加に伴って、0から(JN×IN−1)まで変化する。
k=i+j×IN (1)
【0053】
ステップS25では、強度パラメータKMAP(j,i)を、メモリに格納されている強度値STFT[k]に設定し、ステップS26では、図11に示す二値化処理を実行する。次いでクランク角インデクスiを「1」だけインクリメントする(ステップS27)。
【0054】
図11のステップS31では、エンジン回転数NE及び吸気圧PBAに応じて図12に示すBLVLマップを検索し、二値化閾値BLVLを算出する。BLVLマップは、エンジン回転数NEが増加するほど二値化閾値BLVLが増加し、かつ吸気圧PBAが増加するほど二値化閾値BLVLが増加するように設定されている。ラインL1で示される設定値は、第1所定吸気圧PBA1(例えば53kPa(400mmHg))から第2所定吸気圧PBA2(例えば80kPa(600mmHg))の範囲で適用される。ラインL2及びL3は、それぞれ第3所定吸気圧PBA3(例えば93kPa(700mmHg))及び第4所定吸気圧PBA4(例えば107kPa(800mmHg))に対応する。
【0055】
ステップS32では、強度パラメータKMAP(j,i)が二値化閾値BLVLより大きいか否かを判別し、その答が肯定(YES)であるときは、二値化強度パラメータNKMAP(j,i)を「1」に設定する(ステップS33)。一方、ステップS32でKMAP(j,i)≦BLVLであるときは、二値化強度パラメータNKMAP(j,i)を「0」に設定する(ステップS34)。
【0056】
図10に戻り、ステップS23の答が否定(NO)である間はステップS24〜S27を繰り返し実行し、クランク角インデクスiが(IN−1)を超えると、ステップS28に進み、クランク角インデクスiを「0」に戻すとともに、周波数インデクスjを「1」だけインクリメントし、ステップS22に戻る。
【0057】
ステップS22の答が否定(NO)である間は、ステップS23〜S28を繰り返し実行し、周波数インデクスjが(JN−1)を超えると、本処理を終了する。
【0058】
図10の処理により、メモリに格納されている、周波数成分分析の結果として得られた強度値STFT[k]が、図3(a)に示すスペクトル時系列マップの形式に変換されるとともに、強度パラメータKMAP(j,i)の二値化が行われ、二値化強度パラメータNKMAP(j,i)が算出される。すなわち、図3(b)に示す二値化スペクトル時系列マップが生成される。
【0059】
図13は、図8のステップS12で実行されるノイズ除去処理のフローチャートである。
ステップS41では、クランク角インデクスi及び周波数インデクスjをともに「0」に初期化する。ステップS42では、周波数インデクスjが周波数データ数JNから「1」を減算した値より大きいか否かを判別する。最初はこの答は否定(NO)であるので、ステップS43に進み、クランク角インデクスiがクランク角データ数INから「1」を減算した値より大きいか否かを判別する。
【0060】
最初はステップS43の答も否定(NO)であるので、下記式(2)により二値化強度パラメータNKMAP(j,i)を補正し、補正二値化強度パラメータJKMAP(j,i)を算出する。式(2)のNNMAP(j,i)は、学習処理により更新される二値化ノイズマップ上の二値化ノイズパラメータである。
JKMAP(j,i)=NKMAP(j,i)−NNMAP(j,i) (2)
【0061】
ステップS45では、補正二値化強度パラメータJKMAP(j,i)が負の値であるか否かを判別し、その答が否定(NO)であるときは直ちにステップS47に進む。JKMAP(j,i)<0であるときは、JKMAP(j,i)を「0」に設定し(ステップS46)、ステップS47に進む。
【0062】
ステップS47ではクランク角インデクスiを「1」だけインクリメントし、ステップS43に戻る。ステップS43の答が否定(NO)である間はステップS44〜S47を繰り返し実行し、クランク角インデクスiが(IN−1)を超えると、ステップS48に進み、クランク角インデクスiを「0」に戻すとともに、周波数インデクスjを「1」だけインクリメントし、ステップS42に戻る。ステップS42の答が否定(NO)である間は、ステップS43〜S48を繰り返し実行し、周波数インデクスjが(JN−1)を超えると、本処理を終了する。
【0063】
図13の処理により、ノイズが除去された補正二値化強度パラメータJKMAP(j,i)が得られる(図5(b)参照)。
【0064】
図14は、図8のステップS13で実行される適合率算出処理のフローチャートである。
ステップS51では、エンジン回転数NE及び吸気圧PBAに応じてマスタパターンマップを選択し、ステップS52では、エンジン回転数NE及び吸気圧PBAに応じて重み付けマップを選択する。重み付けマップは、エンジン運転状態に依存して二値化スペクトル時系列マップの周波数に対する特性が変化することを補償するために設けられている。エンジン回転数NEまたは吸気圧PBA(エンジン負荷)が変化すると、燃焼室内の温度が変化し、二値化スペクトル時系列マップが変化する。したがって、エンジン回転数NE及び吸気圧PBAに応じてマスタパターンマップ及び重み付けマップを選択することにより、エンジン運転状態の変化に拘わらず正確な判定を行うことが可能となる。
【0065】
本実施形態では、図15に示すようにエンジン回転数NE及び吸気圧PBAにより定義される9個のエンジン運転領域に対応して、9個のマスタパターンマップ及び9個の重み付けマップが予め設定されており、ステップS51では9個のマスタパターンマップうちの1つが選択され、ステップS52では、9個の重み付けマップのうちの1つが選択される。図15において低回転領域は例えばエンジン回転数NEが2000rpm以下の領域とされ、中回転領域は2000rpmから4000rpmまでの領域とされ、高回転領域は4000rpmを超える領域とされる。また低負荷領域は例えば吸気圧PBAが67kPa(500mmHg)以下の領域とされ、中負荷領域は67kPaから93kPa(700mmHg)までの領域とされ、高負荷領域は93kPaを超える領域とされる。
【0066】
ステップS53では、クランク角インデクスi及び周波数インデクスjをともに「0」に初期化するとともに、強度積算値SUMK及び基準積算値SUMMを「0」に初期化する。強度積算値SUMK及び基準積算値SUMMは、後述するステップS57で更新され、ステップS60で適合率PFITの算出に適用される。
【0067】
ステップS54では、周波数インデクスjが周波数データ数JNから「1」を減算した値より大きいか否かを判別する。最初はこの答は否定(NO)であるので、ステップS55に進み、クランク角インデクスiがクランク角データ数INから「1」を減算した値より大きいか否かを判別する。
【0068】
最初はステップS55の答も否定(NO)であるので、ステップS56に進み、下記式(3)及び(4)により、重み付けマスタパラメータMMW及び重み付け積パラメータKMWを算出する。下記式のWMAP(j,i)は、重み付けマップに設定されている重み付けパラメータである。重み付け積パラメータKMWは、マスタパラメータMMAP(j,i)と補正二値化強度パラメータJKMAP(j,i)との積を、重み付けパラメータWMAP(j,i)によって重み付けしたものである。
MMW=MMAP(j,i)×WMAP(j,i) (3)
KMW=MMAP(j,i)×JKMAP(j,i)×WMAP(j,i) (4)
【0069】
ステップS57では、下記式(5)及び(6)により、重み付けマスタパラメータMMW及び重み付け積パラメータKMWを積算し、基準積算値SUMM及び強度積算値SUMKを算出する。
SUMM=SUMM+MMW (5)
SUMK=SUMK+KMW (6)
【0070】
ステップS58では、クランク角インデクスiを「1」だけインクリメントし、ステップS55に戻る。ステップS55の答が否定(NO)である間はステップS56〜S58を繰り返し実行し、クランク角インデクスiが(IN−1)を超えると、ステップS59に進み、クランク角インデクスiを「0」に戻すとともに、周波数インデクスjを「1」だけインクリメントし、ステップS54に戻る。ステップS54の答が否定(NO)である間は、ステップS55〜S59を繰り返し実行し、周波数インデクスjが(JN−1)を超えると、ステップS60に進み、下記式(7)により適合率PFITを算出する。
PFIT=SUMK/SUMM (7)
【0071】
図16は、図8のステップS18で実行されるノイズ学習処理のフローチャートである。
ステップS71では、クランク角インデクスi、周波数インデクスj、加算学習パラメータLK、及び減算学習パラメータLMをいずれも「0」に初期化する。ステップS72では、周波数インデクスjが周波数データ数JNから「1」を減算した値より大きいか否かを判別する。最初はこの答は否定(NO)であるので、ステップS73に進み、クランク角インデクスiがクランク角データ数INから「1」を減算した値より大きいか否かを判別する。
【0072】
最初はステップS73の答も否定(NO)であるので、ステップS74に進み、二値化強度パラメータNKMAP(j,i)が二値化ノイズパラメータNNMAP(j,i)と等しいか否かを判別する。この答が肯定(YES)であるときは、直ちにステップS80に進む。
【0073】
ステップS74の答が否定(NO)であって、二値化強度パラメータNKMAP(j,i)が二値化ノイズパラメータNNMAP(j,i)と異なるときは、二値化強度パラメータNKMAP(j,i)が二値化ノイズパラメータNNMAP(j,i)より大きいか否かを判別する(ステップS75)。この答が肯定(YES)であるときは、加算学習パラメータLKを「1」に設定し、減算学習パラメータLMを「0」に設定する(ステップS76)。一方、NKMAP(j,i)<NNMAP(j,i)であるときは、加算学習パラメータLKを「0」に設定し、減算学習パラメータLMを「1」に設定する(ステップS77)。
【0074】
ステップS78では、下記式(8)及び(9)により、加算学習パラメータLK及び減算学習パラメータLMを修正する。式(8)、(9)のDSNOISEは、例えば0.1に設定されるノイズ学習係数である。
LK=DSNOISE×LK (8)
LM=DSNOISE×LM (9)
【0075】
ステップS79では、下記式(10)に加算学習パラメータLK及び減算学習パラメータLMを適用し、ノイズパラメータNMAP(j,i)を更新する。次に説明する図17の処理で、ノイズパラメータNMAP(j,i)を二値化することにより、二値化ノイズパラメータNNMAP(j,i)が算出される。
NMAP(j,i)=NMAP(j,i)+LK−LM (10)
【0076】
ステップS80ではクランク角インデクスiを「1」だけインクリメントし、ステップS73に戻る。ステップS73の答が否定(NO)である間はステップS74〜S80を繰り返し実行し、クランク角インデクスiが(IN−1)を超えると、ステップS81に進み、クランク角インデクスiを「0」に戻すとともに、周波数インデクスjを「1」だけインクリメントし、ステップS72に戻る。ステップS72の答が否定(NO)である間は、ステップS73〜S81を繰り返し実行し、周波数インデクスjが(JN−1)を超えると、ステップS82に進み、図17に示すノイズマップ更新処理を実行する。
【0077】
図17のステップS91では、クランク角インデクスi及び周波数インデクスjをともに「0」に初期化する。ステップS92では、周波数インデクスjが周波数データ数JNから「1」を減算した値より大きいか否かを判別する。最初はこの答は否定(NO)であるので、ステップS93に進み、クランク角インデクスiがクランク角データ数INから「1」を減算した値より大きいか否かを判別する。
【0078】
最初はステップS93の答も否定(NO)であるので、ステップS94に進み、ノイズパラメータNMAP(j,i)がノイズ二値化閾値NLVL(例えば0.8)より大きいか否かを判別する。この答が肯定(YES)であるときは、二値化ノイズパラメータNNMAP(j,i)を「1」に設定する(ステップS95)。一方、NMAP(j,i)≦NLVLであるときは、二値化ノイズパラメータNNMAP(j,i)を「0」に設定する(ステップS96)。
【0079】
ステップS97ではクランク角インデクスiを「1」だけインクリメントし、ステップS93に戻る。ステップS93の答が否定(NO)である間はステップS94〜S97を繰り返し実行し、クランク角インデクスiが(IN−1)を超えると、ステップS98に進み、クランク角インデクスiを「0」に戻すとともに、周波数インデクスjを「1」だけインクリメントし、ステップS92に戻る。ステップS92の答が否定(NO)である間は、ステップS93〜S98を繰り返し実行し、周波数インデクスjが(JN−1)を超えると、本処理を終了する。
【0080】
図16のステップS75でNKMAP(j,i)>NNMAP(j,i)であるときは、ステップS78でLK=0.1,LM=0となり、式(10)により、ノイズパラメータNMAP(j,i)が「0.1」だけインクリメントされる。一方、ステップS75でNKMAP(j,i)<NNMAP(j,i)であるときは、ステップS78でLK=0,LM=0.1となり、式(10)により、ノイズパラメータNMAP(j,i)が「0.1」だけデクリメントされる。そして、図17の処理でノイズパラメータNMAP(j,i)がノイズ二値化閾値NLVLより大きいとき、二値化ノイズパラメータNNMAP(j,i)が「1」に設定される一方、ノイズパラメータNMAP(j,i)がノイズ二値化閾値NLVL以下であるときは、二値化ノイズパラメータNNMAP(j,i)が「0」に設定される。
【0081】
図16及び図17の処理により、ノッキングが発生していないと判定されたときの二値化強度パラメータNKMAP(j,i)に応じて二値化ノイズマップが更新され、例えば吸気弁の着座ノイズのように定常的に発生するノイズが二値化ノイズマップに反映される。その結果、ノイズの影響を除いて高精度の判定を行うことが可能となる。
【0082】
なお、ノイズ除去処理(図8,ステップS12)を行わずに、二値化強度パラメータNKMAPをそのまま用いて適合率PFITの算出を行うようにしてよい。ノイズ除去処理を行わない場合には、ノイズの影響を受ける可能性が高くなるが、図30を参照して説明したようにノイズと区別してノッキングの判定を行うことができるからである。
【0083】
以上詳述したように本実施形態では、クランク角6度間隔でノックセンサ11の出力信号の高速フーリエ変換演算(周波数成分分析)が行われ、その結果得られる、5kHz〜25kHzの周波数成分の強度の時系列データであるスペクトル時系列マップが生成される。すなわち、スペクトル時系列マップの要素が二次元配列データである強度パラメータKMAP(j,i)としてメモリに格納される。そして、強度パラメータKMAP(j,i)を二値化することにより、二値化強度パラメータNKMAP(j,i)が算出され、該二値化強度パラメータNKMAP(j,i)に基づいてノッキングが発生したか否かが判定される。二値化強度パラメータNKMAP(j,i)には、エンジンの回転に伴う周波数成分分布の変化が反映されるので、二値化強度パラメータNKMAP(j,i)と、ノッキング発生時に特有の変化パターンに対応するマスタパターンマップ上のマスタパラメータMMAP(j,i)とを比較することにより、ノッキングの発生を正確に判定することができる。また周波数成分分析の結果得られる強度パラメータKMAP(j,i)を二値化することにより、データ量が減少するとともに時系列データの変化パターンが単純化されるので、メモリ容量を低減するとともに演算速度を高めることができる。
【0084】
また二値化強度パラメータNKMAP(j,i)(JKMAP(j,i))が、マスタパラメータMMAP(j,i)に近い変化パターンを示すときに、ノッキングが発生している可能性が高いので、二値化強度パラメータNKMAP(j,i)(JKMAP(j,i))とマスタパラメータMMAP(j,i)との類似性(相関性)を示すパラメータを算出することにより、正確な判定を行うことができる。
【0085】
本実施形態ではこの類似性(相関性)を示すパラメータとして適合率PFITを用い、適合率PFITが判定閾値SLVLを超えたときにノッキングが発生したと判定される。適合率PFITを用いることにより、二値化強度パラメータNKMAP(j,i)(JKMAP(j,i))とマスタパラメータMMAP(j,i)との類似性(相関性)を比較的簡単な演算で的確に評価し、正確な判定を行うことができる。
【0086】
また二値化強度パラメータNKMAP(j,i)に基づいて、ノイズ成分の時系列データNNMAP(j,i)が算出され、二値化強度パラメータNKMAP(j,i)がノイズ成分の時系列データであるノイズパラメータNNMAP(j,i)により補正され、補正二値化強度パラメータJKMAP(j,i)に基づいてノッキング判定が行われる。したがって、上述した着座ノイズのように定常的に表れるノイズ成分を除去してより正確な判定を行うことが可能となる。
【0087】
また二値化強度パラメータNKMAP(j,i)(JNKMAP(j,i))及びマスタパラメータMMAP(j,i)に対して、周波数に応じて設定された重み付けパラメータWMAP(j,i)を乗算して、適合率PFITが算出される。ノッキングが発生したときに大きくなる周波数成分は予め判明しているので、その周波数の近傍の周波数に対応するパラメータに大きな重みを付けることにより、判定精度を高めることができる。
【0088】
本実施形態では、ECU5がノッキング判定手段、周波数成分分析手段、データ格納手段、二値化手段、ノイズ成分算出手段、ノイズ補正手段、及び重み付け手段を構成する。具体的には、図8のステップS12〜S18がノッキング判定手段に相当し、ステップS11(図10の処理)がデータ格納手段及び二値化手段に相当する。またステップS18がノイズ成分算出手段に相当し、ステップS12がノイズ補正手段に相当し、図14のステップS52及びS56が重み付け手段に相当する。
【0089】
[第2の実施形態]
本実施形態は、第1の実施形態におけるノッキング判定処理(図8)を、図18に示す処理に変更したものである。以下に説明する点以外は、第1の実施形態と同一である。
【0090】
図18に示す処理では、先ず二値化する前の強度パラメータKMAPについて、ノイズ除去処理を実行して、補正強度パラメータJKMAPIを算出し(ステップS12a)、補正強度パラメータJKMAPIを二値化して、補正二値化強度パラメータJKMAPを算出する(ステップS11b)。
【0091】
図19(a)は、本実施形態におけるスペクトル時系列マップの一例を示し、図19(b)は、本実施形態におけるノイズマップの一例を示す図であり、二値化されていないノイズ学習値が設定されている。ノイズ除去処理は、図19(a)のスペクトル時系列マップの各マップ値から図19(b)のノイズマップ値を減算することにより行われ、図20(a)に示す補正スペクトル時系列マップが得られる。そして、図20(a)の補正スペクトル時系列マップを二値化することにより、図20(b)に示す補正二値化強度パラメータマップが得られる。
【0092】
図21は、図18のステップS11aで実行されるデータマップ算出処理のフローチャートである。この処理は、図10に示す二値化データマップ算出処理のステップS26を削除したものである。すなわち、強度値STFT(k)をスペクトル時系列マップの形式に変換する処理のみ行われる。
【0093】
図22は、図18のステップS12aで実行されるノイズ除去処理のフローチャートである。この処理は、図13に示す処理のステップS44〜S46をそれぞれステップS44a〜S46aに変更したものである。
【0094】
ステップS44aでは、下記式(2a)により、補正強度パラメータJKMAPIを算出する。式(2a)のNLMAP(j,i)は、学習処理により更新されるノイズマップ(図19(b))上のノイズパラメータである。
JKMAPI(j,i)=KMAP(j,i)−NLMAP(j,i) (2a)
【0095】
ステップS45aでは、補正強度パラメータJKMAPI(j,i)が負の値であるか否かを判別し、その答が否定(NO)であるときは直ちにステップS47に進む。JKMAPI(j,i)<0であるときは、JKMAPI(j,i)を「0」に設定し(ステップS46a)、ステップS47に進む。
【0096】
図22の処理により図20(a)に示す補正スペクトル時系列マップが得られる。
【0097】
図23は、図18のステップS11bで実行される二値化処理のフローチャートである。この処理は図11に示す二値化処理のステップS32〜S34をそれぞれステップS32a〜34aに変更し、さらにすべてのマップ値について二値化を行うためのステップS41〜S43,S47及びS48(図22に示すステップと同じ処理を行うステップ)を追加したものである。
【0098】
ステップS32aでは、補正強度パラメータJKMAPI(j,i)が二値化閾値BLVLより大きいか否かを判別し、その答が肯定(YES)であるときは、補正二値化強度パラメータJKMAP(j,i)を「1」に設定する(ステップS33a)。一方、ステップS32aでJKMAPI(j,i)≦BLVLであるときは、補正二値化強度パラメータJKMAP(j,i)を「0」に設定する(ステップS34a)。
【0099】
図23の処理により、図20(a)に示すマップから図20(b)に示す補正二値化強度パラメータマップが得られる。
【0100】
図24は、図18のステップS18aで実行されるノイズ学習処理のフローチャートである。この処理は、図16に示す処理のステップS74〜S78,及びS82を削除し、ステップS79をステップS79aに変更したものである。
【0101】
ステップS79aでは、ノイズパラメータNLMAP(j,i)の更新を行う。具体的には、ノッキングが検出されないときに得られた強度パラメータKMAP(j,i)を下記式(31)に適用し、ノイズパラメータNLMAP(j,i)を更新する。右辺のノイズパラメータNLMAP(j,i)は、更新前のマップ値であり、DSNOISEaは例えば「0.5」に設定されるなまし係数である。
NLMAP(j,i)=NLMAP(j,i)×DSNOSEa
+KMAP(j,i)×(1−DSNOSEa) (31)
【0102】
なお、式(31)のなまし係数DSNOISEaは、以下に説明するようにエンジン運転状態に応じて0から1の範囲で変更するようにしてもよい。
1)エンジン回転数NEが急激に上昇したとき(例えばエンジン回転数の今回値NE(m)と前回値NE(m-1)との差(NE(m)−NE(m-1))が200rpm以上であるとき)は、なまし係数DSNOISEaをより小さい値に変更する。これにより、強度パラメータの今回値KMAP(j,i)の重みを増加させ、ノイズパラメータNLMAP(j,i)の学習速度が高められる。上記「m」は、図18の処理の実行周期で離散化した離散化時刻である。
【0103】
2)吸気弁の開弁時期CAIが急激に変化したとき(例えば開弁時期の今回値CAI(m)と前回値CAI(m-1)との差の絶対値が5度以上であるとき)は、なまし係数DSNOISEaをより小さい値に変更する。
【0104】
3)吸気弁のリフト量LFTが急激に変化したとき(例えばリフト量の今回値LFT(m)と前回値LFT(m-1)との差の絶対値が0.5mm以上であるとき)は、なまし係数DSNOISEaをより小さい値に変更する。
【0105】
本実施形態によれば、ノイズマップのマップ値(NLMAP)が、二値化前の強度パラメータKMAPを用いて更新されるので、第1の実施形態と比べて、より精度の高いノイズパラメータNLMAP(j,i)が得られる。
【0106】
本実施形態では、図18のステップS11aがデータ格納手段に相当し、ステップS12aがノイズ補正手段に相当し、ステップS18aがノイズ成分算出手段に相当し、ステップS11bが二値化手段に相当し、ステップS13〜S17がノッキング判定手段に相当する。
【0107】
[第3の実施形態]
本実施形態は、5kHzから25kHzまでの21個の周波数を、3個の周波数からなる7つの周波数グループG1〜G7に分割(グループ化)し、1つサンプルタイミングに対応する強度パラメータKMAPの代表値であるグループ強度パラメータGKMAPを、周波数グループ内の最大値に設定するようにしたものである。このようにグループ化を最初に行うことにより、ノイズ除去処理、二値化処理、及び適合率算出処理の対象となるデータ数が1/3に減少し、演算負荷を大幅に低減することができる。なお、以下に説明する点以外は、第2の実施形態と同一である。
【0108】
図25は、グループ化を説明するための図である。図25(a)に示すように、周波数5,6,7kHzが周波数グループG1に対応し、周波数8,9,10kHzが周波数グループG2に対応し、周波数11,12,13kHzが周波数グループG3に対応し、周波数14,15,16kHzが周波数グループG4に対応し、周波数17,18,19kHzが周波数グループG5に対応し、周波数20,21,22kHzが周波数グループG6に対応し、周波数23,24,25kHzが周波数グループG7に対応する。各サンプルタイミング(クランク角度)におけるグループ内の最大値がハッチングを付して示されている。この最大値を抽出することにより、図25(b)に示すグループ化したスペクトル時系列マップが得られる。
【0109】
本実施形態では、図25(b)に示すスペクトル時系列マップを用いて、ノッキング判定が行われる。図25(b)に示すスペクトル時系列マップの設定値を、「グループ強度パラメータGKMAP(n,i)」という。「n」は、周波数グループを示すグループインデクスであり、本実施形態では周波数グループG1からG7に対応して「0」から「6」の値をとる。
【0110】
図26(a)は、図25(b)と同一のマップを示し、図26(b)は、第2の実施形態で示した学習処理により得られるノイズマップである。図26(b)に示すノイズマップの設定値を、「グループノイズパラメータGNLMAP(n,i)」という。
【0111】
グループ強度パラメータGKMAP(n,i)からグループノイズパラメータGNLMAP(n,i)を減算することにより、グループ補正強度パラメータGJKMAPI(n,i)が算出される。図26(c)は、グループ補正強度パラメータGJKMAPI(n,i)が設定されたスペクトル時系列マップを示す。
【0112】
さらにグループ補正強度パラメータGJKMAPI(n,j)を二値化することにより、二値化グループ補正強度パラメータGJKMAP(n,j)が算出される。図26(d)は、二値化グループ補正強度パラメータGJKMAP(n,i)が設定されたスペクトル時系列マップを示す。またマスタパターンマップは例えば図26(e)で与えられる。
【0113】
二値化グループ補正強度パラメータGJKMAP及び図26(e)に示すマスタパターンマップに基づいて算出される適合率PFITに応じたノッキング判定は、上述した実施形態と同様にして行うことができる。
【0114】
図27は、本実施形態におけるノッキング判定処理のフローチャートである。図18に示す処理にグループ化処理を行うステップS100を追加し、ステップS12a,S11b,S13〜S17,S18aをそれぞれステップS101〜S108に変更したものである。
【0115】
ステップS101〜S103及びS108の処理が対応する図18のステップの処理と異なる点は、処理対象となるマップの行数が21行ではなく7行である点のみであるので、詳細な説明を省略する。
【0116】
図28は、図27のステップS100で実行されるグループ化処理のフローチャートである。
ステップS111では、クランク角インデクスi,周波数インデクスj,及びグループインデクスnをすべて「0」に初期化する。ステップS112では、周波数インデクスjが周波数データ数JNから「1」を減算した値より大きいか否かを判別する。最初はこの答は否定(NO)であるので、ステップS113に進み、クランク角インデクスiがクランク角データ数INから「1」を減算した値より大きいか否かを判別する。
【0117】
最初はステップS113の答も否定(NO)であるので、ステップS114に進み、パラメータa,b,cをそれぞれ周波数方向に連続する強度パラメータKMAP(j,i),KMAP(j+1,i),KMAP(j+2,i)に設定する。ステップS115では、グループ強度パラメータGKMAP(n,i)をパラメータa,b,cの最大値に設定する。
【0118】
ステップS116ではクランク角インデクスiを「1」だけインクリメントし、ステップS113に戻る。ステップS113の答が否定(NO)である間はステップS114〜S116を繰り返し実行し、クランク角インデクスiが(IN−1)を超えると、ステップS117に進み、クランク角インデクスiを「0」に戻すとともに、周波数インデクスjを「3」だけインクリメントし、ステップS112に戻る。ステップS112の答が否定(NO)である間は、ステップS113〜S117を繰り返し実行し、周波数インデクスjが(JN−1)を超えると、本処理を終了する。
【0119】
図28の処理により、グループ強度パラメータGKMAP(n,i)が設定されたスペクトル時系列マップ(図25(b))が得られる。
【0120】
本実施形態によれば、グループ強度パラメータGKMAPを対象として、ノイズ除去処理、二値化処理、及び適合率算出処理が行われるので、処理対象となるデータ数が減少し、演算負荷を低減することができる。
【0121】
本実施形態では、図28の処理が周波数グループ時系列データ生成手段に相当し、図27のステップS108がグループノイズ成分算出手段に相当し、ステップS101がグループノイズ補正手段に相当する。
【0122】
なお本発明は上述した実施形態に限るものではなく、種々の変形が可能である。例えば、ノックセンサ出力のサンプリング周期や周波数成分分析を行うクランク角度間隔は上述したもの(20マイクロ秒、6度)に限るものではなく、本発明の目的が達成される範囲内において変更可能である。また、二値化スペクトル時系列マップ(上述した実施形態では21行×15列のマトリクスで構成)も同様に変更可能である。
【0123】
また上述した第1の実施形態では、補正二値化強度パラメータJKMAP(j,i)及びマスタパラメータMMAP(j,i)に重み付けパラメータWMAP(j,i)を乗算して、適合率PFITを算出したが、重み付けパラメータWMAP(j,i)を乗算せずに、すなわち重み付けを行わずに算出するようにしてもよい。
【0124】
また上述した実施形態では、判定閾値SLVL、二値化閾値BLVL、マスタパターンマップ、及び重み付けマップをエンジン回転数NE及び吸気圧PBAに応じて、算出または選択するようにしたが、予め設定された値または1つのマップに固定しておいてもよい。
【0125】
また適合率PFITは、図29に示す処理により算出するようにしてもよい。図29に示す処理は、図14のステップS53,S56,S57,S60をステップS53a,S56a,S57a,S57b,及び60aに変更したものである。
【0126】
ステップS53aでは、クランク角インデクスi及び周波数インデクスjを初期化するとともに、強度積算値SUMKa及び基準積算値SUMMaを「0」に初期化する。
【0127】
ステップS56aでは、補正二値化強度パラメータJKMAP(j,i)が対応するマスタパラメータMMAP(j,i)と等しいか否かを判別し、その答が肯定(YES)であるときは、下記式(11)により、強度積算値SUMKaを更新する(ステップS57a)。
SUMKa=SUMKa+WMAP(j,i) (11)
【0128】
ステップS56aでJKMAP(j,i)が対応するマスタパラメータMMAP(j,i)と等しくないときは、直ちにステップS57bに進む。
ステップS57bでは、下記式(12)により、基準積算値SUMMaを更新する。
SUMMa=SUMMa+WMAP(j,i) (12)
【0129】
ステップS60aでは、下記式(13)に強度積算値SUMKa及び基準積算値SUMMaを適用し、適合率PFITを算出する。
PFIT=SUMKa/SUMMa (13)
【0130】
図29の処理により算出される適合率PFITも、補正二値化強度パラメータJKMAP(j,i)とマスタパラメータMMAP(j,i)の類似性(相関性)が高いほど、大きな値となり、類似性(相関性)を示すパラメータとして使用することができる。
【0131】
また上述した実施形態では、補正二値化強度パラメータJKMAP(j,i)とマスタパラメータMMAP(j,i)との類似性(相関性)を示すパラメータとして、適合度PFITを用いたが、例えば下記式(21)で算出される補正二値化強度パラメータJKMAP(j,i)とマスタパラメータMMAP(j,i)の差の絶対値の合計である差分積算値SUMDIFを用いることもできる。
【数1】

【0132】
差分積算値SUMDIFは、その値が小さいほど類似性(相関性)が高いことを示すので、差分積算値SUMDIFが差分判定閾値SDLVLより小さいとき、ノッキングが発生したと判定する。
【0133】
また上述した第3の実施形態では、グループ強度パラメータGKMAPを
グループノイズパラメータGNLMAPにより補正することによりグループ補正強度パラメータGJKMAPIを算出し、グループ補正強度パラメータGJKMAPIを二値化することにより、二値化グループ補正強度パラメータGJKMAPを算出するようにしたが、第1の実施形態と同様に、グループ強度パラメータGKMAPを二値化して二値化グループ強度パラメータGNKMAPを算出し、二値化グループ強度パラメータGNKMAPを二値化グループノイズパラメータNNMAPで補正することにより二値化グループ補正強度パラメータGJKMAPを算出するようにしてもよい。
【0134】
また上述した実施形態では、ノッキング判定を常時行うようにしているが、ノッキングの発生し難い気筒の有無を判定し、そのような気筒(以下「気筒CYLXK」という)が有る場合には、気筒CYLXKの爆発行程におけるノッキング判定処理を行わないようにしてもよい。これによって、ノッキング判定処理の演算負荷を低減することができる。
【0135】
気筒CYLXKの選択は例えば以下のようにして行う。エンジン回転数NEが比較的低い運転状態で全気筒についてノッキング判定を実行し、そのときに点火時期の遅角補正値IGKNOCKを気筒毎に算出する。そして遅角補正値IGKNOCKの最小値が所定閾値より小さい気筒を、気筒CYLXKとして選択する。そして、エンジン回転数NEが所定回転数より高い高回転領域において、気筒CYLXKに対応するノッキング判定処理を停止する。点火時期の遅角補正値IGKNOCKは、ノッキングが検出されたとき、第1所定量だけ増加させ、ノッキングが検出されないときは点火時期毎に漸減することにより算出される(この算出手法は、例えば特開2004−353473号公報に示されている)。
【0136】
また本発明は、クランク軸を鉛直方向とした船外機などのような船舶推進機用エンジンなどのノッキング検出にも適用が可能である。
【符号の説明】
【0137】
1 内燃機関
5 電子制御ユニット(ノッキング判定手段、周波数成分分析手段、データ格納手段、二値化手段、ノイズ成分算出手段、ノイズ補正手段、重み付け手段、周波数グループ時系列データ生成手段、グループノイズ成分算出手段、グループノイズ補正手段)
11 ノックセンサ

【特許請求の範囲】
【請求項1】
内燃機関に装着されたノックセンサの出力信号に基づいてノッキングを判定するノッキング判定手段を備える内燃機関のノッキング検出装置において、
所定クランク角度間隔で前記ノックセンサ出力信号の周波数成分分析を行う周波数成分分析手段と、
前記周波数成分分析により得られる、複数の周波数成分の強度を時系列データとして格納するデータ格納手段と、
前記周波数成分強度の時系列データを二値化する二値化手段とを備え、
前記ノッキング判定手段は、二値化された時系列データに基づいてノッキングが発生したか否かを判定することを特徴とする内燃機関のノッキング検出装置。
【請求項2】
前記ノッキング判定手段は、ノッキングが発生した状態に対応するマスタパターンデータと、前記二値化された時系列データとを比較することにより、前記ノッキング判定を行うことを特徴とする請求項1に記載の内燃機関のノッキング検出装置。
【請求項3】
前記ノッキング判定手段は、
前記二値化された時系列データに基づいて、ノイズ成分の時系列データを算出するノイズ成分算出手段と、
前記二値化された時系列データを前記ノイズ成分の時系列データにより補正するノイズ補正手段とを備え、
補正後の時系列データに基づいて前記ノッキング判定を行うことを特徴とする請求項2に記載の内燃機関のノッキング検出装置。
【請求項4】
前記周波数成分強度の時系列データに基づいて、ノイズ成分の時系列データを算出するノイズ成分算出手段と、
前記周波数成分強度の時系列データを前記ノイズ成分の時系列データにより補正するノイズ補正手段とを備え、
前記二値化手段は、補正後の時系列データを二値化することを特徴とする請求項2に記載の内燃機関のノッキング検出装置。
【請求項5】
前記ノッキング判定手段は、
前記二値化された時系列データ及び前記マスタパターンデータに対して、周波数に応じた重み付けを行う重み付け手段を備え、
重み付けされた時系列データ及びマスタパターンデータを用いて前記ノッキング判定を行うことを特徴とする請求項2から4の何れか1項に記載の内燃機関のノッキング検出装置。
【請求項6】
前記ノッキング判定手段は、前記マスタパターンデータと前記二値化された時系列データとの適合率を算出し、前記適合率が判定閾値を超えたときにノッキングが発生したと判定することを特徴とする請求項2から5の何れか1項に記載の内燃機関のノッキング検出装置。
【請求項7】
前記マスタパターンデータは前記機関の運転状態に応じて設定されることを特徴とする請求項2から6の何れか1項に記載の内燃機関のノッキング検出装置。
【請求項8】
複数の周波数からなる周波数グループ毎に、1つのサンプルタイミングにおける最大強度を選択することにより、周波数グループ時系列データを生成する周波数グループ時系列データ生成手段を備え、
前記二値化手段は前記周波数グループ時系列データを二値化することを特徴とする請求項1または2に記載の内燃機関のノッキング検出装置。
【請求項9】
前記周波数グループ時系列データに基づいて、前記周波数グループに対応するグループノイズ成分の時系列データを算出するグループノイズ成分算出手段と、
前記周波数グループ時系列データを前記グループノイズ成分の時系列データにより補正するグループノイズ補正手段とを備え、
前記二値化手段は、補正後の周波数グループ時系列データを二値化することを特徴とする請求項8に記載の内燃機関のノッキング検出装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate


【公開番号】特開2009−257316(P2009−257316A)
【公開日】平成21年11月5日(2009.11.5)
【国際特許分類】
【出願番号】特願2009−19354(P2009−19354)
【出願日】平成21年1月30日(2009.1.30)
【出願人】(000005326)本田技研工業株式会社 (23,863)
【Fターム(参考)】