(57)【特許請求の範囲】
【請求項１】
内燃機関で発生する振動波形信号を検出する信号検出手段と、
前記内燃機関の運転状態を検出する運転状態検出手段と、
前記信号検出手段で検出された前記振動波形信号を入力しノック特有の周波数帯域の信号を濾波し、ノック検出のために有効な代表値を検出する代表値検出手段と、
前記内燃機関の運転状態に基づき、前記代表値検出手段における濾波周波数帯域を切替える周波数切替手段と、
前記周波数切替手段による前記濾波周波数帯域の切替えに応じて、ノック判定レベルを設定するパラメータの上限値及び下限値を変更する制限値変更手段と、
前記代表値と前記ノック判定レベルとに基づき前記内燃機関におけるノック発生の有無を判定するノック判定手段と、
前記ノック判定手段による判定結果に応じて前記内燃機関の運転状態を制御するノック制御手段とを具備し、
前記ノック判定レベルは、前記代表値から求めた前記パラメータとして、その上限値及び下限値をノック特有の周波数帯域の中心周波数毎に設定する標準偏差値に基づき設定することを特徴とする内燃機関用ノック制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内燃機関におけるノック発生の有無を検出し、内燃機関の運転状態を制御する内燃機関用ノック制御装置に関するものである。
【０００２】
【従来の技術】
従来、内燃機関用ノック制御装置に関連する先行技術文献としては、特許第２７３０２１５号公報、特開平５−３０６６４５号公報にて開示されたものが知られている。このうち、特許第２７３０２１５号公報には、最適なノック検出を実現するため、ノック強度値の頻度分布における実質標準偏差等に基づきノック判定レベルを作成する技術が示されている。また、この標準偏差に上限値及び下限値を設け、ノック強度値の極小時の標準偏差低下や極大時の標準偏差の発散を防止する技術が示されている。また、特開平５−３０６６４５号公報には、ノック検出フィルタの中心周波数を可変選択し、ノック検出性を向上する技術が示されている。
【０００３】
【発明が解決しようとする課題】
ところで、前述のものでは、内燃機関におけるノック周波数が変わると、ノックセンサの振動特性も大きく変わり、従ってノック強度値の標準偏差値も大きく変わることとなる。このため、ノック判定レベルが変化してしまうことでノック発生の有無が正確に判定できないという不具合があった。
【０００４】
そこで、この発明はかかる不具合を解決するためになされたもので、ノック検出の周波数帯域に対するノック判定レベルを適切に設定することでノック発生の有無を的確に判定しノック制御可能な内燃機関用ノック制御装置の提供を課題としている。
【０００５】
【課題を解決するための手段】
請求項１の内燃機関用ノック制御装置によれば、信号検出手段で検出される内燃機関で発生した振動波形信号から代表値検出手段によってノック特有の周波数帯域の信号が濾波されノック検出のために有効な代表値が検出される。ここで、運転状態検出手段で検出された内燃機関の運転状態に基づき、周波数切替手段による代表値検出手段における濾波周波数帯域の切替えに応じてノック判定レベルを設定するパラメータが、制限値変更手段で最適範囲内となるようその上限値及び下限値も変更される。このようにして設定されたノック判定レベルと代表値とがノック判定手段で比較されることにより、内燃機関におけるノック発生の有無が正確に判定される。このようにして得られた判定結果によってノック制御手段では、内燃機関の運転状態が適切に制御される。
【０００６】
また、ノック判定レベルがノック特有の周波数帯域における代表値から求めたパラメータとしての標準偏差値を用いて設定されることで、内燃機関におけるノック発生の有無が正確に判定される。
【０００７】
そして、標準偏差値の上限値及び下限値がノック特有の周波数帯域の中心周波数毎に最適範囲内となるよう設定される。このような標準偏差値を用いて設定されたノック判定レベルによれば、その信頼性が高く内燃機関におけるノック発生の有無が正確に判定される。
【０００８】
【発明の実施の形態】
以下、本発明の実施の形態を実施例に基づいて説明する。
【０００９】
図１は本発明の実施の形態の一実施例にかかる内燃機関用ノック制御装置が適用された内燃機関の構成を示す概略図である。
【００１０】
図１において、１は４気筒４サイクル内燃機関であり、吸入空気が図示しないエアクリーナ、エアフローメータを通って吸気通路２より内燃機関１に供給される。また、内燃機関１に供給される吸気量はスロットルバルブ３により調節される。４は内燃機関１の基準クランク角（例えば、各気筒の圧縮上死点）を検出するための基準角センサ４ａと内燃機関１の一定クランク角毎に出力信号を発生するクランク角センサ４ｂとを内蔵したディストリビュータである。そして、後述するＥＣＵ（Electronic Control Unit:電子制御ユニット）１０でクランク角センサ４ｂからの信号に基づき機関回転速度ＮＥが算出される。
【００１１】
５は内燃機関１のノック発生現象に対応したシリンダブロックの振動を圧電素子式（ピエゾ素子式）、電磁式（マグネット、コイル）等によって検出するノックセンサ、６は内燃機関１の冷却水温に応じた信号を発生する水温センサである。そして、７はＥＣＵ１０からの制御信号に基づき吸気マニホルドへ燃料噴射供給するインジェクタ（燃料噴射弁）である。また、８はディストリビュータ４から分配される高電圧により内燃機関１のシリンダ内の混合気に火花点火し着火する点火プラグである。
【００１２】
９はノックセンサ５からの出力信号（ノックセンサ信号）から代表値を検出する代表値検出回路であり、図２に示すように、ノックセンサ信号のうちノック周波数成分のみを選別して取出すためのフィルタ回路９ａ、このフィルタ回路９ａからの信号を増幅する増幅回路９ｂ、代表値として所定クランク角内のノックセンサ信号のピーク値ＶP を検出するピークホールド回路９ｃにより構成されている。ここで、所定クランク角としては、例えば、本実施例ではノックは燃焼圧間のみで発生するためノイズによるノックの誤検出を防止するために点火出力後の一定期間（ノック判定期間）とされる。
【００１３】
ＥＣＵ１０は、周知の各種演算処理を実行する中央処理装置としてのＣＰＵ１１、制御プログラムを格納したＲＯＭ１２、各種データを格納するＲＡＭ１３、Ｂ／Ｕ（バックアップ）ＲＡＭ１４、アナログ−ディジタル変換するＡ／Ｄ変換器１５等を中心に論理演算回路として構成され、各種センサからの検出信号を入力する入力ポート１６及び各種アクチュエータに制御信号を出力する出力ポート１７等に対しバス１８を介して相互に接続されている。そして、ＥＣＵ１０は各種センサ信号及びノック発生状態に応じて点火プラグ８による点火時期、インジェクタ７からの燃料噴射量等を制御する。
【００１４】
次に、本発明の実施の形態の一実施例にかかる内燃機関用ノック制御装置で使用されているＥＣＵ１０内のＣＰＵ１１におけるノック検出・判定制御の処理手順を示す図３、図６、図８、図１０及び図１２のフローチャートに基づいて説明する。なお、このノック検出・判定制御ルーチンは内燃機関１の各燃焼サイクル毎に繰返し実行されるものであり、ＥＣＵ１０からピークホールド回路９ｃへ出力されるゲート信号の立下がり、即ち、ピーク値ＶP を読込んだ直後からＣＰＵ１１にて実行開始される。
【００１５】
図３において、ステップＳ１０１にて、代表値としてピークホールド回路８ｃで検出されるピーク値ＶP が読込まれる。次にステップＳ１０２に移行して、対数変換処理としてステップＳ１０１で読込まれたピーク値ＶP が次式（１）にて対数変換され、ピーク値ＶP の頻度分布が正規分布となるように補正される。ここで、Ａ，ａは定数（詳細は後述）で、Ａ＝６４／ｌｏｇ４，ａ＝４である。また、ピーク値ＶP を対数変換した値をｌＶP というように表現する。
【００１６】
【数１】
ｌＶP ＝Ａ×ｌｏｇ（ＶP ／ａ）                          ・・・（１）
【００１７】
次にステップＳ１０３に移行して、ノック判定レベル設定処理としてノック判定レベルＶJLが設定される（詳細は後述）。次にステップＳ１０４に移行して、ノック判定処理としてｌＶP ≧ＶJLであるときにはノック有りと判定される（詳細は後述）。この判定結果に基づき、ノック制御領域（例えば、高負荷領域）では、点火時期等が制御される。次にステップＳ１０５に移行して、内燃機関の運転条件が特定条件を満たしているかが判定される。この特定条件とは、例えば、内燃機関の負荷が所定値以上、機関回転速度ＮＥが所定範囲内、内燃機関の負荷の変化率が所定値以下、中央値ＶMED が所定範囲内の条件のうち１つまたは複数により規定される。
【００１８】
ステップＳ１０５の判定条件が成立、即ち、内燃機関の運転条件が特定条件を満たしているときにはステップＳ１０６に移行し、標準偏差更新処理としてｌＶP 分布（正規分布）の標準偏差とほぼ等しい値（即ち、実質標準偏差値、以下、単に『標準偏差』という）ＳGMが更新される（詳細は後述）。一方、ステップＳ１０５の判定条件が成立せず、即ち、内燃機関の運転条件が特定条件を満たしていないときにはステップＳ１０６がスキップされる。次にステップＳ１０７に移行して、中央値更新処理として累積％点における５０％点、即ち、ｌＶP 分布の中央値ＶMED が更新され（詳細は後述）、本ルーチンを終了する。
【００１９】
次に、上述のステップＳ１０２における対数変換処理について詳述する。
【００２０】
上式（１）において、Ａ＝６４／ｌｏｇ４，ａ＝４としているが、必ずしもこの値とする必要はない。しかし、現在の技術水準を考慮すると定数Ａ，ａは上述の値程度に設定するのが最適である。これら定数Ａ，ａの意味は、ノックが全く発生しない場合のピーク値ＶP の対数正規分布（図４参照）全体（大きな出力と小さな出力との比が４程度）を６４分割する。また、４bit や８bit のＣＰＵで扱い易いように、Ａ／Ｄ変換器１５により１０bit のＡ／Ｄ変換されたピーク値ＶP を８bit のデータに圧縮することである。
【００２１】
次に、上記２つの条件を満たす式を導出する。
【００２２】
まず、図４に示すような対数正規分布を図５に示すような正規分布に変換するため、次式（２），（３）が求められる。
【００２３】
【数２】
ｌＶL ＝Ａ×ｌｏｇ（ＶL ／ａ）                          ・・・（２）
【００２４】
【数３】
ｌＶH ＝Ａ×ｌｏｇ（ＶH ／ａ）                          ・・・（３）
【００２５】
ここで、分布全体を６４分割するためには、次式（４），（５）の条件が満たされる必要がある。
【００２６】
【数４】
ｌＶH −ｌＶL ＝６４                                    ・・・（４）
【００２７】
【数５】
ＶH ＝４×ＶL                                           ・・・（５）
【００２８】
したがって、上式（２）〜（５）より、次式（６）が導出される。
【００２９】
【数６】
Ａ×ｌｏｇ４＝６４
∴Ａ＝６４／ｌｏｇ４                                    ・・・（６）
【００３０】
また、ＶH が１０bit のＡ／Ｄ変換値の最大値２10をｌＶH に変換して８bit データの最大値２8 とするためには、次式（７）が導出される。
【００３１】
【数７】
２8 ＝Ａ×ｌｏｇ２10／ａ
∴ａ＝１０２４／１×ｐ（２５６／Ａ）                    ・・・（７）
【００３２】
したがって、上述の条件を満たす対数変換式は、次式（８）となる。
【００３３】
【数８】
ｌＶ＝（６４／ｌｏｇ４）×（ｌｏｇＶ／４）              ・・・（８）
【００３４】
現在の技術水準では、ＣＰＵ１１で直接、対数変換すると時間がかかり、実際の制御においては適応できないため、実際の制御においては予めピーク値ＶP に対応する対数変換値ｌＶP を計算し、ＲＯＭ１２に記憶しておき、逐次読出すようにすればよい。また、ピーク値ＶP が２8 以上の場合、ピーク値ＶP の４分の１の値に対応する対数変換値ｌＶP をＲＯＭ１２から読出して、その値に６４を加算するようにすることで、求めることができるため、ＲＯＭ１２に記憶しておくデータとしては２8 （＝２５６）バイトで済む。
【００３５】
図３のステップＳ１０３のノック判定レベル設定処理について、図６に示すフローチャートに基づいて説明する。
【００３６】
図６において、ステップＳ２０１では、内燃機関の機関回転速度ＮＥが対数変換される。対数変換の方法としては、図３のステップＳ１０２と同じである。次にステップＳ２０２に移行して、今回の制御タイミングにおける機関回転速度ＮＥの対数変換値ｌＮＥと、前回の制御タイミングにおける機関回転速度ＮＥの対数変換値ｌＮＥo との偏差ｄｌＮＥが求められる。次にステップＳ２０３に移行して、今回の制御タイミングにおける機関回転速度ＮＥの対数変換値ｌＮＥが次回の制御タイミングにおける前回の機関回転速度ＮＥの対数変換値ｌＮＥo として記憶される。次にステップＳ２０４に移行して、ピーク値ＶP の対数変換値ｌＶP の全気筒における平均値ＶMALLが次式（９）にて補正される。ここで、βは２程度の定数であり、平均値ＶMALLは図３のステップＳ１０７で制御タイミング毎に更新される（詳細は後述）。
【００３７】
【数９】
ＶMALL←ＶMALL＋β×ｄｌＮＥ                            ・・・（９）
【００３８】
次にステップＳ２０５に移行して、中央値ＶMED が次式（１０）にて補正される。ここで、ｄＶMED は気筒毎の中央値ＶMED と平均値ＶMALLとの偏差である。この偏差ｄＶMED は図３のステップＳ１０７で制御タイミング毎に更新される。
【００３９】
【数１０】
ＶMED ←ＶMALL＋ｄＶMED                               ・・・（１０）
【００４０】
そして、ステップＳ２０６に移行し、ノック判定レベルＶJLが次式（１１）にて設定され、本ルーチンを終了する。ここで、ｕは機関回転速度ＮＥに応じて設定される値である（詳細は後述）。
【００４１】
【数１１】
ＶJL←ｕ×ＳGM＋ＶMED                                 ・・・（１１）
【００４２】
次に、図６のステップＳ２０４における平均値ＶMALLの補正について説明する。発明者等が種々の内燃機関について実験を行ったところ、ピーク値ＶP の中央値ＶMED は次式（１２）にて与えられることが分かった。ここで、Ｖ0 ，βは内燃機関、気筒、ノックセンサ等で決まる定数であり、βは１．５〜２．５程度の値である。
【００４３】
【数１２】
0004386315.tif 000002
・・・（１２）
【００４４】
今、機関回転速度ＮＥが上昇率α〔ｒｐｍ／ｓｅｃ〕で変化していると仮定すると、１燃焼サイクル当たりの中央値ＶMED の上昇率ｄＶ／ｄｎは次式（１３）にて表される。
【００４５】
【数１３】
0004386315.tif 000003
・・・（１３）
【００４６】
ここで、β＝２で近似すると、ｄＶ／ｄｎ＝２４０αＶ0 となる。即ち、１燃焼サイクル毎に平均値ＶMALLに２４０αＶ0 だけ加算することにより、過渡時の平均値ＶMALLの追従遅れを防止することができる。しかし、Ｖ0 は内燃機関、気筒、ノックセンサ等によって大きく異なるため、これら全ての組合せを満足させる加算値はない。したがって、上昇率αに応じて平均値ＶMALLを適切に補正することは困難である。なお、ピーク値ＶP と機関回転速度ＮＥとを対数変換することにより、Ｖ0 の影響をなくすことができる。詳しくは、まず、上式（１２）の両辺がそれぞれ対数変換され、次式（１４）が求められる。
【００４７】
【数１４】
0004386315.tif 000004
・・・（１４）
【００４８】
ここで、ｘを対数変換した値をｌｘというように表現すると、次式（１５）にて表される。
【００４９】
【数１５】
ｌＶMED ＝Ａ×ｌｏｇＶ0 ＋β×ｌＮＥ                  ・・・（１５）
【００５０】
上式（１５）において、右辺の第１項は定数項なので、両辺を微分すると次式（１６）のようになる。
【００５１】
【数１６】
ｄｌＶMED ／ｄｎ＝β×ｄｌＮＥ／ｄｎ                  ・・・（１６）
【００５２】
したがって、１燃焼サイクル毎または点火タイミング毎にｄｌＮＥ／ｄｎを検出して、β×ｄｌＮＥ／ｄｎを加算することにより、Ｖ0 を無視して平均値ＶMALLを補正することができる。
【００５３】
次に、図６のステップＳ２０６のノック判定レベル設定処理について説明する。
【００５４】
今、進遅角量の仕様を１回のノックで１〔°ＣＡ（Crank Angle:クランク角）〕遅角、１秒毎に１〔°ＣＡ〕進角するものとする。この進遅角量の仕様において、ノックが発生していないとき、進遅角が安定するノック判定頻度は１〔回／ｓｅｃ〕である。ノック判定頻度が１〔回／ｓｅｃ〕となるようにノック判定レベルＶJLを設定したとき、遅角量Ｒは一定の値に収束するため、点火時期はほぼ一定に制御されることになる。
【００５５】
しかし、内燃機関の最大トルクは、若干のノックが発生している領域で得られる。よって、ノックが発生していない状態において、点火時期が常に進角するように制御される必要がある。したがって、ノック判定頻度を上述のような進遅角が安定するノック判定頻度より小さくなるように設定すればよい。
【００５６】
今、４気筒内燃機関において、ノック判定頻度を１／４〔回／ｓｅｃ〕とするとノック判定確率ＰK は次式（１７）にて表される。
【００５７】
【数１７】
ＰK ＝（１２０／ＮＥ）×（１／４）×（１／４）        ・・・（１７）
【００５８】
なお、機関回転速度ＮＥが２０００〔ｒｐｍ〕ならばノック判定確率ＰK ＝０．０３７５であり、このノック判定確率ＰK に対するｕ値を正規分布からｕ＝２．６７を導くことができる。また、機関回転速度ＮＥが４０００〔ｒｐｍ〕ならば、ＰK ＝０．００１８７５であり、ｕ＝２．９０を導くことができる。図７に機関回転速度ＮＥとｕ値の特性図を示す。ここで、Ｔはノック検出周期である。図７の特性図より明らかなように、ノック検出頻度が一定（Ｔ＝一定）のとき、ｕ値は機関回転速度ＮＥが大きくなるほど大きくなる。
【００５９】
通常、進遅角量の仕様は一定であるので、ノック検出頻度を一義的に設定することができる。よって、機関回転速度ＮＥに対応するｕ値を予め正規分布表より求めてＲＯＭ１２に記憶させておき、逐次機関回転速度ＮＥに対応するｕ値を読出すようにするとよい。
【００６０】
また、軽負荷ではノックが発生し難いので、内燃機関１の負荷を検出して、軽負荷ではｕ値を大きくするようにしてもよい。また、本実施例においては、ｕ値を所定のノック検出頻度（例えば、Ｔ＝４．０〔ｓｅｃ〕）となるように設定しているが、ノックが発生していないときに点火時期が常に進角するように制御するためには、例えば、上述の進遅角量の仕様においては、ｕ値を図７に示すＴ＝１．０〔ｓｅｃ〕の特性よりも大きな値に設定すればよい。
【００６１】
次に、図３のステップＳ１０４のノック判定処理について、図８に示すフローチャートに基づいて詳細に説明する。
【００６２】
図８において、まず、ステップＳ３０１で、ピーク値ＶP を対数変換した値ｌＶP がノック判定レベルＶJL以上であるかが判定される。ステップＳ３０１でｌＶP ≧ＶJLの不等式が成立し、ノックが発生していると判定されたときにはステップＳ３０２に移行し、対数変換値ｌＶP が次式（１８）を満足するかが判定される。
【００６３】
【数１８】
ｌＶP ≧ＶJL＋ＳGM                                    ・・・（１８）
【００６４】
ステップＳ３０２の判定条件が成立せず、即ち、上式（１８）の不等式を満足しないときにはステップＳ３０３に移行し、遅角量Ｒに所定値ΔＲが加算され遅角量Ｒが所定値ΔＲだけ大きくなるよう設定される。ここで、ΔＲは上述の進遅角量の仕様であり、ΔＲ＝１〔°ＣＡ〕である。一方、ステップＳ３０２で判定条件が成立、即ち、上式（１８）の不等式を満足するときにはステップＳ３０４に移行し、対数変換値ｌＶP が次式（１９）を満足するかが判定される。
【００６５】
【数１９】
ｌＶP ≧ＶJL＋２×ＳGM                                ・・・（１９）
【００６６】
ステップＳ３０４の判定条件が成立せず、即ち、上式（１９）の不等式を満足しないときにはステップＳ３０５に移行し、遅角量Ｒに所定値（２×ΔＲ）が加算され遅角量Ｒが所定値（２×ΔＲ）だけ大きくなるよう設定される。一方、ステップＳ３０４の判定条件が成立、即ち、上式（１９）の不等式を満足するときにはステップＳ３０６に移行し、遅角量Ｒに所定値（３×ΔＲ）が加算され遅角量Ｒが所定値（３×ΔＲ）だけ大きくなるよう設定される。ステップＳ３０３、ステップＳ３０５またはステップＳ３０６の処理ののちステップＳ３０７に移行し、遅角量Ｒが上限値Ｒmax を越えているかが判定される。ステップＳ３０７の判定条件が成立、即ち、遅角量Ｒが上限値Ｒmax を越え大きいときにはステップＳ３０８に移行し、ガード処理として遅角量Ｒが上限値Ｒmax に設定されたのち、本ルーチンを終了する。
【００６７】
一方、ステップＳ３０１でｌＶP ≧ＶJLの不等式が成立せず、ノックが発生していないと判定されたとき、またはステップＳ３０７で遅角量Ｒが上限値Ｒmax 以下と小さいときにはステップＳ３０９に移行する。ステップＳ３０９では、所定時間Ｔadが経過したかが判定される。ここで、所定時間Ｔadは進角に要する時間であり、例えば、１〔ｓｅｃ〕である。ステップＳ３０９の判定条件が成立、即ち、所定時間Ｔadが経過しているときにはステップＳ３１０に移行し、遅角量Ｒから所定値ΔＲが減算され遅角量Ｒが所定値ΔＲだけ小さくなるよう設定される。次にステップＳ３１１に移行して、遅角量Ｒが下限値Ｒmin 未満であるかが判定される。ステップＳ３１１の判定条件が成立、即ち、遅角量Ｒが下限値Ｒmin 未満と小さいときにはステップＳ３１２に移行し、ガード処理として遅角量Ｒが下限値Ｒmin に設定されたのち、本ルーチンを終了する。一方、ステップＳ３０９の判定条件が成立せず、即ち、所定時間Ｔadが未だ経過していないとき、またはステップＳ３１１の判定条件が成立せず、即ち、遅角量Ｒが下限値Ｒmin 以上と大きいときには何もすることなく、本ルーチンを終了する。
【００６８】
ここで、制御性を考えて、ノックが１〜２つの気筒に集中して発生する場合の方が、複数の気筒に分散して発生する場合よりも遅角量Ｒを大きく設定するようにすると好ましい。例えば、ノックが発生した気筒を記憶しておき、連続して同一気筒にノックが発生した場合には、遅角量Ｒを更に、遅角させるよう所定値（２×ΔＲ）を加算する。
【００６９】
次に、図８のステップＳ３０２において、遅角量Ｒを対数変換値ｌＶP がノック判定レベルＶJLに標準偏差ＳGMを加算した値より大きいか否かにより変えることについて、図９を参照して説明する。図９（ａ）〜図９（ｂ）において、対数変換値ｌＶP のノックが発生していないときの分布は、ノックなしとして実線にて示すように正規分布となり、ノックが発生しているとき（ノック発生していない燃焼サイクルとノック発生している燃焼サイクルとが混在しているとき）の分布は、ノック有りとして破線にて示すように高出力側で分布がくずれている。
【００７０】
また、このくずれ方は同じノック発生状態においても、図９（ａ）に示すように、ノック発生していないときの対数変換値ｌＶP の標準偏差ＳGMが小さいときに比べて、図９（ｂ）に示すように、標準偏差ＳGMの大きいときの方が大きくなる。但し、くずれている部分の確率は同じである。このため、基本のノック判定レベルＶJLに対し、ノック強度判定のための判定レベルを、例えば、ＶJL′１＝ＶJL＋ｋ（ｋは定数）と前提すれば、対数変換値ｌＶP がノック判定レベルＶJLを越える確率は同じノック発生状態にもかかわらず異なってしまうという問題点がある。
【００７１】
ここで、図９（ａ）及び図９（ｂ）において、対数軸上で話をしているので、定数ｋは加算となっているが、実軸上でいえばノック判定レベルＶJLを定数ｋ倍していることとなる。即ち、ノック強度の判定レベルＶJL′１も基本判定レベルの定数倍であるため、例え基本判定レベルが最適値であったとしても、正確なノック強度判定ができない。これに対し、図９（ｃ）及び図９（ｄ）に示すように、標準偏差ＳGMをもとにノック強度判定レベルＶJL′２＝ＶJL＋ＳGMと設定すれば、分布形状に応じたノック強度判定レベルＶJL′２を設定することができる。即ち、ノック強度判定レベルＶJL′２を越える確率を全ての分布形状に対して同一とすることができる。
【００７２】
次に、図３のステップＳ１０６の標準偏差更新処理について、図１０に示すフローチャートに基づいて説明する。
【００７３】
図１０において、まず、ステップＳ４０１で、ノック検出周波数帯域の中心周波数ｆ0 が設定される。この中心周波数ｆ0 としては、代表値検出回路９におけるフィルタ回路９ａを構成する周知のＳＣＦ（スイッチトキャパシタフィルタ）や複数のＢＰＦ（バンドパスフィルタ）等を用い、適宜、切替え設定される。例えば、内燃機関１の機関回転速度ＮＥが２０００〔ｒｐｍ〕未満、２０００〜４０００〔ｒｐｍ〕または４０００〔ｒｐｍ〕を越えているかによって、中心周波数ｆ0 がそれぞれＸ，Ｙ，Ｚに設定される。次にステップＳ４０２に移行して、ガード処理としてステップＳ４０１で設定された各中心周波数ｆ0 に対する標準偏差ＳGMの上限値ＳGMmax 及び下限値ＳGMmin が設定される。
【００７４】
次にステップＳ４０３に移行して、対数変換値ｌＶP が（ＶMED −ＳGM）とＶMED との範囲内にあるかが判定される。ステップＳ４０３の判定条件が成立、即ち、対数変換値ｌＶP が（ＶMED −ＳGM）とＶMED との範囲内にあるときにはステップＳ４０４に移行し、標準偏差ＳGMが次式（２０）にて更新される。ここで、ｄsgm は標準偏差ＳGMの更新量であり、内燃機関の運転状態の変化に応じて設定されるものである。例えば、機関回転速度ＮＥの対数変換値ｌＮＥの偏差ｄｌＮＥが大きいときは更新量ｄsgm も大きく設定される。まず、内燃機関の負荷の変化が大きいときにも更新量ｄsgm が大きく設定される。
【００７５】
【数２０】
ＳGM←ＳGM−２×ｄsgm                                 ・・・（２０）
【００７６】
一方、ステップＳ４０３の判定条件が成立せず、即ち、対数変換値ｌＶP が（ＶMED −ＳGM）とＶMED との範囲内にないときにはステップＳ４０５に移行し、標準偏差ＳGMが次式（２１）にて更新される。
【００７７】
【数２１】
ＳGM←ＳGM＋ｄsgm                                     ・・・（２１）
【００７８】
ステップＳ４０４またはステップＳ４０５における処理ののちステップＳ４０６に移行し、標準偏差ＳGMが上限値ＳGMmax を越えているかが判定される。ステップＳ４０６の判定条件が成立、即ち、標準偏差ＳGMが上限値ＳGMmax を越え大きいときにはステップＳ４０７に移行し、ガード処理として標準偏差ＳGMが上限値ＳGMmax に設定される。一方、ステップＳ４０６の判定条件が成立せず、即ち、標準偏差ＳGMが上限値ＳGMmax 以下と小さいときにはステップＳ４０７がスキップされる。
【００７９】
次にステップＳ４０８に移行して、標準偏差ＳGMが下限値ＳGMmin 未満であるかが判定される。ステップＳ４０８の判定条件が成立、即ち、標準偏差ＳGMが下限値ＳGMmin 未満と小さいときにはステップＳ４０９に移行し、ガード処理として標準偏差ＳGMが下限値ＳGMmin に設定され本ルーチンを終了する。一方、ステップＳ４０８の判定条件が成立せず、即ち、標準偏差ＳGMが下限値ＳGMmin 以上と大きいときにはステップＳ４０９がスキップされ、本ルーチンを終了する。
【００８０】
ここで、上述の処理にて標準偏差ＳGMが求まることについて説明する。
【００８１】
図１１（ａ）において、対数変換値ｌＶP が（ＶMED −ＳGM）からＶMED の範囲（斜線部分）である確率をＰs とすると、上述の図１０に示すフローチャートの処理により標準偏差ＳGMの安定する点においては、次式（２２）のようになる。
【００８２】
【数２２】
−Ｐs ×２×ｄsgm ＋（１−Ｐs ）×ｄsgm ＝０
∴Ｐs ＝１／３                                        ・・・（２２）
【００８３】
この標準偏差ＳGMに対応するｕ値を正規分布表から求めると、ｕ≒０．９７であり、標準偏差（ｕ＝１．０）とほぼ等しくなる。同様にして、図１１（ｂ）において、対数変換値ｌＶP が（ＶMED −ＳGM）から（ＶMED ＋ＳGM）の範囲（斜線部分）である確率をＰs とすると、上述の図１０に示すフローチャートの処理により標準偏差ＳGMの安定する点においては、次式（２３）のようになる。
【００８４】
【数２３】
−Ｐs ×ｄsgm ＋（１−Ｐs ）×２×ｄsgm ＝０
∴Ｐs ＝２／３                                        ・・・（２３）
【００８５】
この標準偏差ＳGMに対応するｕ値を正規分布表から求めると、標準偏差とほぼ等しい値となる。したがって、上述の図１０に示すフローチャートの処理により標準偏差ＳGMを簡単に求めることができる。また、上述のような方法に限らず、例えば、図１０のステップＳ４０４を次式（２４）のように変更してもよい。
【００８６】
【数２４】
ＳGM←ＳGM−３×ｄsgm                                 ・・・（２４）
【００８７】
しかし、この場合、Ｐs ＝１／４となり、ｕ＝０．６７であり、上式（２４）により求められる標準偏差ＳGMは実際の標準偏差の０．６７倍の値となる。したがって、標準偏差ＳGMの増減量のバランスまたは後処理の容易さを考えれば、図１０に示すような処理の方が好ましい。
【００８８】
次に、図３のステップＳ１０７の中央値更新処理について、図１２に示すフローチャートに基づいて説明する。
【００８９】
図１２において、まず、ステップＳ５０１で、対数変換値ｌＶP が中央値ＶMED を越えているかが判定される。ステップＳ５０１の判定条件が成立、即ち、対数変換値ｌＶP が中央値ＶMED を越え大きいときにはステップＳ５０２に移行し、中央値の偏差ｄＶMED が次式（２５）にて更新される。ここで、ｄＶm は偏差ｄＶMED の更新量である。
【００９０】
【数２５】
ｄＶMED ←ｄＶMED ＋ｄＶm                             ・・・（２５）
【００９１】
一方、ステップＳ５０１の判定条件が成立せず、即ち、対数変換値ｌＶP が中央値ＶMED を越えていないときにはステップＳ５０３に移行し、対数変換値ｌＶP が中央値ＶMED 未満であるかが判定される。ステップＳ５０３の判定条件が成立、即ち、対数変換値ｌＶP が中央値ＶMED 未満と小さいときにはステップＳ５０４に移行し、中央値の偏差ｄＶMED が次式（２６）にて更新される。
【００９２】
【数２６】
ｄＶMED ←ｄＶMED −ｄＶm                             ・・・（２６）
【００９３】
ステップＳ５０２またはステップＳ５０４における処理ののち、またはステップＳ５０３の判定条件が成立せず、即ち、対数変換値ｌＶP が中央値ＶMED に等しいときにはステップＳ５０４がスキップされたのちステップＳ５０５に移行する。ステップＳ５０５では、対数変換値ｌＶP の平均値ＶMALLが次式（２７）にて更新されたのち、本ルーチンを終了する。ここで、Ｎs は内燃機関の運転状態の変化に応じて設定される定数である。例えば、機関回転速度ＮＥの対数変換値の偏差ｄｌＮＥが大きければ定数Ｎs を小さくする。また、負荷または負荷の変化率が特定条件（例えば、高負荷または負荷の変化率が大きい）になってから所定期間だけ定数Ｎs を小さくするようにしても有効である。
【００９４】
【数２７】
ＶMALL←ＶMALL＋（ｌＶP −ＶMALL）／Ｎs               ・・・（２７）
【００９５】
上述の処理により以下のような効果がある。ノックセンサ５からの信号が正規分布に従うようにノック強度値を対数変換し、中央値ＶMED と標準偏差ＳGMとに基づいて、ノック判定レベルＶJLを作成するため、内燃機関、気筒、ノックセンサ等による分布が変化に左右されることなく正確なノック判定が可能である。または中央値ＶMED と標準偏差ＳGMとは各燃焼サイクル毎に更新されるため、素早く適切なノック判定レベルＶJLを設定することができる。
【００９６】
ノック強度値を次式（２８）にて対数変換することにより、１０bit のデータを８bit のデータに圧縮することができる。
【００９７】
【数２８】
ｌＶ＝Ａ×ｌｏｇ（Ｖ／ａ）                            ・・・（２８）
【００９８】
したがって、４bit ，８bit のＣＰＵで扱い易くなる。内燃機関の運転状態を対数変換し、この対数変換された結果に応じてノック判定レベルを補正するため、過渡時におけるノック判定レベルの追従遅れを防止することができる。更に、対数により処理を行うため、乗算を加算、べき乗を乗算として取扱うことができ、ＣＰＵの負荷を軽減することができる。また、ノック判定レベルＶJLはノック発生がない状態において、内燃機関の運転状態に関係なくノック判定確率が一定になるようｕ値を設定することができる。
【００９９】
このように、本実施例の内燃機関用ノック制御装置は、内燃機関１で発生する振動波形信号を検出する信号検出手段としてのノックセンサ５と、内燃機関１の運転状態を検出する運転状態検出手段としてのクランク角センサ４ｂと、ノックセンサ５で検出された振動波形信号を入力しノック特有の周波数帯域の信号を濾波し、ノック検出のために有効な代表値であるピーク値ＶP を検出する代表値検出手段としての代表値検出回路９と、内燃機関１の運転状態に基づき、代表値検出回路９における濾波周波数帯域を切替えるＥＣＵ１０にて達成される周波数切替手段と、前記周波数切替手段による濾波周波数帯域の切替えに応じて、ノック判定レベルＶJLを設定するパラメータの上限値及び下限値を変更するＥＣＵ１０にて達成される制限値変更手段と、ピーク値ＶP とノック判定レベルＶJLとに基づき内燃機関１におけるノック発生の有無を判定するＥＣＵ１０にて達成されるノック判定手段と、前記ノック判定手段による判定結果に応じて内燃機関１の運転状態を制御するＥＣＵ１０にて達成されるノック制御手段とを具備するものである。また、ノック判定レベルＶJLをピーク値ＶP から求めたパラメータとしての標準偏差ＳGMに基づき設定するものである。そして、標準偏差ＳGMの上限値ＳGMmax 及び下限値ＳGMmin をノック特有の周波数帯域の中心周波数ｆ0 毎に設定するものである。
【０１００】
つまり、ノックセンサ５で検出される内燃機関１で発生した振動波形信号から代表値検出回路９によってノック特有の周波数帯域の信号が濾波されノック検出のために有効なピーク値ＶP が検出される。ここで、内燃機関１の運転状態に基づき、代表値検出回路９における濾波周波数帯域の切替えに応じてノック判定レベルＶJLを設定する、ピーク値ＶP から求められるパラメータとしての標準偏差ＳGMが最適範囲内となるようその上限値ＳGMmax 及び下限値ＳGMmin も変更される。このようにして設定されたノック判定レベルＶJLとピーク値ＶP とが比較されることにより、内燃機関１におけるノック発生の有無が正確に判定される。このようにして得られた判定結果によれば、内燃機関１の運転状態を適切に制御することができる。
【図面の簡単な説明】
【図１】  図１は本発明の実施の形態の一実施例にかかる内燃機関用ノック制御装置が適用された内燃機関の構成を示す概略図である。
【図２】  図２は図１の代表値検出回路の構成を示すブロック図である。
【図３】  図３は本発明の実施の形態の一実施例にかかる内燃機関用ノック制御装置で使用されているＥＣＵ内のＣＰＵにおけるノック検出・判定制御の処理手順を示すフローチャートである。
【図４】  図４は図３の対数変換処理におけるピーク値の対数正規分布を示す特性図である。
【図５】  図５は図４の対数正規分布を変換した正規分布を示す特性図である。
【図６】  図６は図３におけるノック判定レベル設定の処理手順を示すフローチャートである。
【図７】  図７は図６のノック判定レベル設定処理における機関回転速度とｕ値との関係をノック検出周期をパラメータとして示す特性図である。
【図８】  図８は図３におけるノック判定の処理手順を示すフローチャートである。
【図９】  図９は図８のノック判定処理における対数変換値の頻度分布を示す特性図である。
【図１０】  図１０は図３における標準偏差更新の処理手順を示すフローチャートである。
【図１１】  図１１は図１０の処理で標準偏差が求まることを示す説明図である。
【図１２】  図１２は図３における中央値更新の処理手順を示すフローチャートである。
【符号の説明】
１    内燃機関
４ｂ  クランク角センサ（運転状態検出手段）
５    ノックセンサ（信号検出手段）
９    代表値検出回路（代表値検出手段）
１０    ＥＣＵ（電子制御ユニット）
１１    ＣＰＵ
【図１】
0004386315.tif 000005
【図２】
0004386315.tif 000006
【図３】
0004386315.tif 000007
【図４】
0004386315.tif 000008
【図５】
0004386315.tif 000009
【図６】
0004386315.tif 000010
【図７】
0004386315.tif 000011
【図８】
0004386315.tif 000012
【図９】
0004386315.tif 000013
【図１０】
0004386315.tif 000014
【図１１】
0004386315.tif 000015
【図１２】
0004386315.tif 000016