(57)【特許請求の範囲】
【請求項１】
ノックセンサからの出力信号に基づいてバックグランドレベルを更新し、前記バックグランドレベルに基づいてノック判定値を算出すると共に、前記ノック判定値と前記ノックセンサからの出力信号とを比較することによりノックの発生を検出する内燃機関のノック検出装置であって、
前記バックグランドレベルが、
今回バックグランドレベル＝フィルタ係数×前回バックグランドレベル＋（１−フィルタ係数）×ノックセンサからの出力信号
で演算される場合、
（１−フィルタ係数）×ノックが発生していないときの前記ノックセンサからの出力信号の最大値
により、前記バックグランドレベルの更新量が制限されることを特徴とする内燃機関のノック検出装置。
【請求項２】
ノックが発生していないときの前記ノックセンサからの出力信号の前記最大値は、内燃機関の回転数に依存して定義されることを特徴とする請求項１記載の内燃機関のノック検出装置。
【請求項３】
前記ノックセンサからの出力信号は、前記ノックセンサの出力信号のピークホールド値であることを特徴とする請求項１又は請求項２記載の内燃機関のノック検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、検出したノックセンサからの出力信号に基づいてバックグランドレベルを算出し、バックグランドレベルからノック判定値を導出しノック判定を行う内燃機関のノック検出装置おいて、バックグランドレベルの算出に関するものである。
【背景技術】
【０００２】
ガソリンを燃料とするエンジン等では、燃焼行程において、点火プラグからの火花でシリンダ内の混合気を着火させて燃焼させるが、着火後の火炎伝播の途中でシリンダ内の圧力が異常に高くなった場合には、火炎伝播が終了する前に混合気の未燃焼部分が自己着火するノックが発生することがある。そして、このノックが発生すると、乗員に違和感を与える振動が発生し、最悪の場合は、ピストン上面が溶損しエンジンが故障するなどの問題がある。そこで、従来から、ノック発生時には、点火プラグの点火時期を遅角させることで、ノックを解消し、最適なトルクや燃費を実現するノック制御が提案されている。
【０００３】
このノック制御では、ノックの発生を検出するために、シリンダブロックにノックセンサと呼ばれる振動検出センサが取り付けられており、このノックセンサで検出したエンジンの振動波形を解析することでノック発生の有無を判定している。具体的には、もしノックが発生すれば、振動波形が得られる点火後の所定のクランク角度範囲をノック判定期間とし、このノック判定期間内において、ノックセンサからの出力信号をＡ／Ｄ変換し、ピーク値をこのノック判定期間でのピークホールド値とする。そして、ピークホールド値をなまし処理することにより、バックグランドレベルを算出する。また、このバックグランドレベルを所定倍（例えば２倍）するなどしてノック判定値を設定する。
【０００４】
そして、このノック判定値とピークホールド値とを比較し、ピークホールド値がノック判定値を超えている場合にはノッキングが発生していると判定して、点火プラグの点火時期を遅角させる等のノックの解消動作を行うようにしている。このようなノック判定動作を行うため、バックグランドレベルは適正に求められる必要がある。従来から、バックグランドレベルの更新量制限処理により安定化を図りつつ、過渡時には更新量制限を緩和したりして、追従性を確保してきた。
【０００５】
特許文献１では、バックグランドレベルの更新量に上限値を設けることで安定化を図りつつ、時間あたりの燃料噴射量の変化量やスロットル開度の変化量が大きくなる程、更新量上限値を大きくして、バックグランドレベルがピークホールド値へ早く収束するようにしている。また、特許文献１における従来技術として、時間あたりのエンジン回転数変化量や吸気管圧力の変化量が大きくなる程、更新量上限値を大きくして、バックグランドレベルがピークホールド値へ早く収束するようにしている。この目的は、エンジンの負荷が上がると、ノックが発生していない場合もピークホールド値が大きくなるが、なまし処理や更新量制限処理により安定化を続けていては、バックグランドレベルがすぐには上昇せず、結果、ノック判定値が過小となり、ノックを誤判定してしまう、という事象に対する対策である。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第４３１２１６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
一方で、エンジンの負荷が上がったとき、ノックが発生する場合もあり、また、場合によっては、非常に強いノックが連続して発生する場合がある。このような状態（ノック多発状態と呼ぶことにする）になった場合、すみやかに点火時期を遅角し、ノックを解消する必要がある。特許文献１は、負荷変化時にバックグランドレベルを早く追従させてしまうため、ノック判定値も早く上昇してしまい、結果、非常に強いノック信号であっても、これをノックと判定できない。すると、上記のようなノック多発状態から離脱できず、ノックが発生し続け、エンジンに重篤な影響が発生してしまう。
【０００８】
図１〜図３は、ピークホールド値、バックグランドレベル、ノック判定値のタイミングチャートである。簡単のため、ノック判定値はバックグランドレベルの２倍としている。図１は、エンジンの負荷が上昇したとき、ノックが発生しなかった場合の例である。この図では、更新量上限値が十分大きく、バックグランドレベルの更新が制限されない場合の挙動を示している。
【０００９】
図２は、エンジンの負荷が上昇したとき、ノック多発状態になる例である。この図では、従来技術の目的である、更新量上限値が大きく、バックグランドレベルの更新が制限されない場合の挙動を示している。図１と同様、負荷変化時にノック判定値もすぐに上昇し、ノックと判定できず、結果、ノック多発状態が継続してしまう。
【００１０】
図３は、図２のノック多発状態と同じ場合において、バックグランドレベルの更新量上限値が、図２の場合より小さな場合の挙動を示している。この図では、ノック多発状態に突入する非常に大きなピークホールド値に対し、バックグランドレベルの上昇が制限されるため、突入時にピークホールド値がノック判定値を超え、ノックと判定され、リタードが行われる。このため、ノック状態は継続せず、ピークホールド値を適正なレベルに戻すことができる。
【００１１】
このように、更新量上限値の設定によっては、ノック多発状態から離脱することが可能となり、エンジンに重篤な影響が発生することを防止できる。すなわち、更新量上限値は、追従性確保の目的と、ノック多発状態のような大きなピークホールド値をノックと判定しリタードを行い、ノック多発状態から離脱する目的との、背反する２つの目的を満足するように設定する必要がある。ところが、特許文献１には、どのように更新量上限値を定めるべきかについて技術が開示されておらず、図２の挙動になる懸念がある。
【００１２】
そこで、この発明は、追従性とノック多発状態からの離脱の２つの目的を満足するような更新量上限値を設定するための手段を、工数増大させることなく提供することを目的とする。
【課題を解決するための手段】
【００１３】
この発明に係わる内燃機関のノック検出装置は、ノックセンサからの出力信号に基づいてバックグランドレベルを更新し、前記バックグランドレベルに基づいてノック判定値を算出すると共に、前記ノック判定値と前記ノックセンサからの出力信号とを比較することによりノックの発生を検出する内燃機関のノック検出装置であって、
前記バックグランドレベルが、今回バックグランドレベル＝フィルタ係数×前回バックグランドレベル＋（１−フィルタ係数）×ノックセンサからの出力信号、で演算される場合、（１−フィルタ係数）×ノックが発生していないときの前記ノックセンサからの出力信号の最大値により、前記バックグランドレベルの更新量が制限されるものである。
また、ノックが発生していないときの前記ノックセンサからの出力信号の前記最大値は、内燃機関の回転数に依存して定義されるものである。
さらに、前記ノックセンサからの出力信号は、前記ノックセンサの出力信号のピークホールド値であるものである。
【発明の効果】
【００１４】
この発明の内燃機関のノック検出装置によれば、追従性を確保しつつ、ノック多発状態のような大きな変化には制限を与えることができ、即ち、ノック多発状態からの離脱ができる。
【図面の簡単な説明】
【００１５】
【図１】ノック判定を説明するタイミングチャートであって、ノックが発生しなかった場合の例である。
【図２】ノック判定を説明するタイミングチャートであって、ノック多発状態になる例である。
【図３】ノック判定を説明するタイミングチャートであって、ノック多発状態から離脱する例である。
【図４】この発明のピークホールド値の最大値Ｌの適合方法を示す図である。
【図５】この発明のピークホールド値の最大値Ｌの他の適合方法を示す図である。
【図６】この発明の実施の形態１におけるノック検出装置を用いたノック制御装置を備えた内燃機関を示す構成図である。
【図７】実施の形態１における内燃機関のノック検出装置を用いたノック制御装置の構成を示すブロック図である。
【図８】実施の形態１による内燃機関のノック制御装置のノック制御部の構成を示すブロック図である。
【図９】実施の形態１による内燃機関のノック制御装置のノック制御部のフローチャートである。
【図１０】実施の形態２におけるピークホールド値の最大値Ｌを定義する適合値の例を示す図である。
【図１１】実施の形態２におけるピークホールド値の最大値Ｌを算出するステップのフローチャートである。
【発明を実施するための形態】
【００１６】
初めに、この発明の主要技術を説明する。
内燃機関のノックセンサの出力信号から得られるバックグランドレベルは、ノックセンサの出力信号のピークホールド値の１次フィルタ演算により算出される。なお、ノックセンサの出力信号のピークホールド値は、ノックセンサの出力信号の積分値（振動中心より高電位側の面積）でもよく、要はノックセンサの出力信号に応じた値であればよい。
これを、
ＶＢＧＬ（ｎ）＝Ｋ×ＶＢＧＬ（ｎ−１）＋（１−Ｋ）×ＶＰ（ｎ）
ＶＢＧＬ（ｎ）：バックグランドレベル
ＶＰ（ｎ）：ピークホールド値
Ｋ：フィルタ係数
ｎ：処理タイミング（離散時間）
とする。フィルタ係数Ｋは、定数、あるいは、内燃機関の回転数に依存する値など、この発明を適用する対象のノック検出装置が定義するフィルタ係数Ｋである。
【００１７】
また、ノックの発生していない、様々な内燃機関の運転状態や負荷における、ピークホールド値のデータを測定し、その最大値Ｌを得ておく。そして、更新量上限値（１−Ｋ）×Ｌで、バックグランドレベルの更新量を制限する。すると、前式は、
ＶＢＧＬ（ｎ）＝ｍｉｎ（Ｋ×ＶＢＧＬ（ｎ−１）＋（１−Ｋ）×ＶＰ（ｎ），
ＶＢＧＬ（ｎ−１）＋（１−Ｋ）×Ｌ）  ・・・・・式（１）
Ｌ：ピークホールド値の最大値
ｍｉｎ（Ａ，Ｂ）：ＡとＢの小さい方を選択
となり、このようにバックグランドレベルＶＢＧＬ（ｎ）を定義する。
【００１８】
さらに、ノックが発生していないときのノックセンサからのピークホールド値の最大値Ｌは、内燃機関の回転数に依存して定めるとよい
【００１９】
この発明の前述した主要技術を有する内燃機関のノック検出装置によれば、次のように、追従性は確保しつつ、ノック多発状態のような大きな変化には制限を与えることができる、すなわち、ノック多発状態からの離脱ができる。
式（１）の、１次フィルタ演算部分
ＶＢＧＬ（ｎ）＝Ｋ×ＶＢＧＬ（ｎ−１）＋（１−Ｋ）×ＶＰ（ｎ）
に対し、バックグランドレベルの、ｎ−１演算時刻との差分を、
ΔＶＢＧＬ（ｎ）＝ＶＢＧＬ（ｎ）−ＶＢＧＬ（ｎ−１）
と定義すると、
ΔＶＢＧＬ（ｎ）＝Ｋ（ｎ）×ＶＢＧＬ（ｎ−１）＋（１−Ｋ（ｎ））×ＶＰ（ｎ）
−  Ｋ（ｎ−１）×ＶＢＧＬ（ｎ−２）−（１−Ｋ（ｎ−１））
×ＶＰ（ｎ−１）
となる。なお、フィルタ係数Ｋは、この発明の適用対象にて定義されているため、処理タイミングに依存する場合があり、Ｋ（ｎ）と表記している。
【００２０】
ΔＶＢＧＬ（ｎ）の上限を与える式を導出するため、内燃機関の負荷上昇前はピークホールド値が０一定、すなわち、
ＶＢＧＬ（ｎ−２）＝ＶＢＧＬ（ｎ−１）＝ＶＰ（ｎ−１）＝０
とすると、上式は、
ΔＶＢＧＬ（ｎ）＝（１−Ｋ（ｎ））×ＶＰ（ｎ）
となる。なお、処理タイミングがｎのみとなったので、Ｋ（ｎ）をＫと表記し、
ΔＶＢＧＬ（ｎ）＝（１−Ｋ）×ＶＰ（ｎ）・・・・・・・・・・・・・式（２）
を得る。
【００２１】
ここで、ＶＰ（ｎ）の代わりに、ノックが発生していないときのノックセンサのピークホールド値ＶＰ（ｎ）の最大値Ｌ、を設定すれば、各処理タイミングｎにおいて、
ΔＶＢＧＬ（ｎ）≦（１−Ｋ）×Ｌ
が成立し、すなわち、（１−Ｋ）×Ｌが、ノックが発生していないときのバックグランドレベルの最大の変化量（更新量）となる。
【００２２】
前述のように、ノックの発生していない、様々な内燃機関の運転状態や負荷における、ピークホールド値のデータを取得し、その最大値をＬとするのであるが、具体的には、図４を用いて説明する。
【００２３】
図４は、様々な内燃機関の運転状態や負荷におけるピークホールド値の測定結果から、ノック発生がなかった場合、ノック多発状態だった場合、の２つを抽出し、それぞれについて、内燃機関の回転数ｎｅでさらに分類し、それぞれの場合における、ピークホールド値の最大値をグラフ化した模式図である。
【００２４】
前記、ピークホールド値の最大値Ｌは、ノック発生がなかった場合のピークホールド値の最大値であるから、図４内のＰ印のデータにより定められる。すなわち、全ての回転数ｎｅにおいて、ノックが発生しなければ、ピークホールド値は、常にＬより小さい値となる。
【００２５】
よって、式（２）において、ＶＰ（ｎ）の代わりに、ピークホールド値の最大値Ｌをおけば、ノックが発生していない場合のΔＶＢＧＬ（ｎ）の最大値として、（１−Ｋ）×Ｌが得られることになる。
【００２６】
以上のことから、バックグランドレベルの更新量上限値として、（１−Ｋ）×Ｌを設定すれば、ノックではない場合のバックグランドレベルの変化量より常に大きいため、バックグランドレベルの上昇を制限することはなく、すなわち、追従性を損ねることはない。図１の応答波形が常に実現できることになる。
【００２７】
一方で、図４に示すように、ノック多発状態のような場合は、ピークホールド値の最大値がＬ以上となることから、ノック多発状態では、更新量上限値（１−Ｋ）×Ｌで、バックグランドレベルの上昇を制限することができる。このため、前述のように、ノック多発状態からの離脱が可能となる。すなわち、図２の応答波形のようにはならず、図３の応答波形が常に実現できることになる。
【００２８】
また、Ｌを設定するために、新たな評価は不要で、設定工数は増大しない。なぜなら、式（２）はＶＰ（ｎ）で定義されているため、ノックが発生していない場合のピークホールド値という、通常のノック適合時に測定するデータから設定できる。よって、この発明を適用するための新たなデータ取得が不要で、設定工数が増大しない。
【００２９】
また、ノックが発生していない場合の前記ノックセンサからのピークホールド値の最大値Ｌを、内燃機関の回転数に応じて設定できるため、回転数によってはＬをより小さな値に設定できる。すると、ノック判定値が低く抑制されるため、より確実に、ノック多発状態にノック判定をすることができる。図５は、図４におけるＬを、内燃機関の回転数ｎｅに応じて設定する場合である。回転数ｎｅが小さい領域では、更新量上限値（１−Ｋ）×Ｌは、図４の更新量上限値よりも小さくなる（図５のＱ部分）。このため、図３のバックグランドレベルの勾配がより緩やかになり、ピークホールド値がノック判定値をより超えやすくなる。つまり、よりノック判定がしやすくなる。
【００３０】
実施の形態１．
以下、図面を参照して、この発明の実施の形態１による内燃機関のノック検出装置を用いたノック制御装置について詳細に説明する。図６は、この発明の実施の形態１によるノック検出装置を用いたノック制御装置を備えた内燃機関を概略的に示す構成図である。なお、自動車等車両用の内燃機関は、通常、複数のシリンダ及びピストンを備えているが、図６では説明の便宜上、一つのシリンダ及びピストンのみを示している。
【００３１】
図６において、内燃機関１の吸気系１００には、上流側から、吸入空気流量を測定しその測定値に対応した吸入空気流量信号を出力するエアフローセンサ２、電子的に開度が制御されて吸気系１００の吸入空気流量を調整する電子制御式スロットルバルブ３、サージタンクに設けられたインテークマニホールド圧力センサ４（以下、インマニ圧センサと称する）が設けられ、インテークマニホールド５を介して内燃機関１の複数のシリンダに連結されている。
【００３２】
スロットル開度センサ６は、電子制御式スロットルバルブ３の開度を測定し、その測定値に対応したスロットルバルブ開度信号を出力する。なお、電子制御式スロットルバルブ３の代わりに、図示しないアクセルペダルに直接ワイヤで繋がれた機械式スロットルバルブを用いてもよい。インマニ圧センサ４は、インテークマニホールド５内の吸気圧を測定し、その測定値に対応するインテークマニホールド圧力信号（以下、インマニ圧信号と称する）を出力する。なお、この実施の形態１では、エアフローセンサ２とインマニ圧セン
サ４との両方を設けているが、何れか一方のみを設けるようにしても良い。インテークマニホールド５の吸気ポートには燃料を噴射するインジェクタ７が設けられている。なお、インジェクタ７は内燃機関１のシリンダ内に直接噴射できるように設けられてもよい。
【００３３】
内燃機関１のシリンダヘッドにはシリンダ内の混合気に点火するための点火コイル８と、この点火コイル８と接続された点火プラグ９が設けられている。又、内燃機関１のクランク軸には、周面に定められた間隔で設置された複数のエッジを備えたプレート１０が設けられている。クランク角センサ１１は、プレート１０のエッジに対向して設けられ、クランク軸と共に回転するプレート１０のエッジを検出し、夫々のエッジの設置間隔に同期したパルス信号を出力する。内燃機関１に設けられたノックセンサ１２は、内燃機関１の振動に基づく振動波形信号を出力する。内燃機関１の排気系１０１には、排気ガス中の酸素濃度を測定する酸素濃度センサ１３、排気ガスを浄化する触媒装置１４が設けられている。
【００３４】
図７は実施の形態１による内燃機関のノック検出装置を用いたノック制御装置の構成を示すブロック図である。図７において、内燃機関１の電子制御ユニット１５｛以下、ＥＣＵ（electronic control unit）と称する｝は、マイクロコンピュータ等の演算装置によ
り構成され、エアフローセンサ２から出力された吸入空気流量信号と、インマニ圧センサ４から出力されたインマニ圧信号と、スロットル開度センサ６から出力されたスロットルバルブ開度信号と、クランク角センサ１１から出力されたプレート１０のエッジの設置間隔に同期したパルス信号と、ノックセンサ１２から出力された内燃機関１の振動波形信号と、酸素濃度センサ１３から出力された排気ガス中の酸素濃度信号が、夫々入力される。
【００３５】
又、ＥＣＵ１５には、前述の各信号以外の図示していない他の各種センサからも夫々の測定値に対応した信号が入力され、更に、例えば、自動変速機制御システム、ブレーキ制御システム、トラクション制御システム等の他のコントローラからの信号も入力される。
【００３６】
ＥＣＵ１５は、図示しないアクセル開度や内燃機関１の運転状態等を基にして目標スロットル開度を算出し、その算出した目標スロットル開度に基づいて電子制御式スロットルバルブ３の開度を制御する。又、ＥＣＵ１５は、内燃機関１の運転状態に応じて、目標空燃比を達成するようにインジェクタ７を駆動して燃料噴射量を制御し、更に、目標点火時期を達成するように点火コイル８への通電を制御して点火時期を制御する。又、ＥＣＵ１５は、後述のようにして、内燃機関１のノックを検出した場合には、目標点火時期を遅角側（リタード側）に設定することで、ノックの発生を抑制する制御も行う。更に、前述以外の各種アクチュエータを制御するための指示値を算出し、その指示値に基づいて各種アクチュエータを制御する。
【００３７】
次に、ＥＣＵ１５内に構成されているノック制御部の構成及びその動作について説明する。図８は実施の形態１による内燃機関のノック制御装置におけるノック制御部の構成を示すブロック図である。図８において、ＥＣＵ１５内に構成されたノック制御部は、Ｉ／Ｆ回路とマイクロコンピュータ１６から構成されている。Ｉ／Ｆ回路は、ノックセンサ１２から出力された内燃機関１の振動波形信号を受け、その振動波形信号から高周波成分を除去するローパスフィルタ（以下、ＬＰＦと称する）１７により構成されている。
【００３８】
マイクロコンピュータ１６は、全体としては、アナログ信号をデジタル信号に変換するＡ／Ｄ変換器と、制御プログラムや制御定数を記憶しておくＲＯＭ領域と、プログラムを実行した際の変数を記憶しておくＲＡＭ領域等から構成されているが、ノック制御部の構成としては、Ａ／Ｄ変換部１８と、ＤＦＴ処理部１９と、ピークホールド部２０と、２１のフィルタ係数Ｋと、２２のピークホールド値の最大値Ｌと、１次フィルタ演算部２３と、更新量制限部２４と、判定値演算部２５と、比較演算部２６と、ノック補正量演算部２７とを備える。
【００３９】
ＬＰＦ１７は、前述のように、ノックセンサ１２から出力された内燃機関１の振動波形信号を受け、その振動波形信号から高周波成分を除去するが、Ａ／Ｄ変換部１８にて全振動成分を取り込むために、例えば、２．５Ｖのバイアスを加えることにより、振動成分の中心を２．５Ｖにしておき、２．５Ｖを中心として、０Ｖ〜５Ｖの範囲に振動成分が収まるように構成されている。なお、ＬＰＦ１７には、ノックセンサ１２からの振動波形信号の振動成分が小さい場合には、２．５Ｖを中心に増幅し、大きい場合には２．５Ｖを中心に減少させるゲイン変換機能も含まれている。
【００４０】
Ａ／Ｄ変換部１８は、Ｉ／Ｆ回路により高調波成分が除去されたノックセンサからの振動波形信号をデジタル信号に変換する。このＡ／Ｄ変換部１８によるＡ／Ｄ変換は、一定の時間間隔、例えば、１０μｓや２０μｓ毎に実行される。なお、Ａ／Ｄ変換部１８は、ＬＰＦ１７からのアナログ信号に対して常時Ａ／Ｄ変換を行い、内燃機関１にノックが発生する期間、例えば、ピストンの上死点（以下、ＴＤＣと称する）から上死点後（以下、ＡＴＤＣと称する）５０°ＣＡに設定されたノック検出期間のデータのみをＤＦＴ処理部１９へ送るようにしても良く、あるいは、例えばＴＤＣからＡＴＤＣ５０°ＣＡに設定されたノック検出期間のみＡ／Ｄ変換を行い、そのデータをＤＦＴ処理部１９へ送るようにしても良い。
【００４１】
ＤＦＴ処理部１９は、Ａ／Ｄ変換部１８からのデジタル信号に対して、時間−周波数解析を行う。具体的には、例えば、離散フーリエ変換（ＤＦＴ：Discrete Fourier Transform）若しくは短時間フーリエ変換（ＳＴＦＴ）の処理により、所定時間毎のノック固有周波数成分のスペクトル列を算出する。なお、ＤＦＴ処理部１９によるデジタル信号処理としては、無限インパルス応答（ＩＩＲ）フィルタや有限インパルス応答（ＦＩＲ）フィルタを用いてノック固有周波数成分を抽出するようにしてもよい。ＤＦＴ処理部１９は、Ａ／Ｄ変換器１８による前述のノック検出期間におけるＡ／Ｄ変換の完了後に処理を開始し、後述するピークホールド部２０からノック補正量演算部２７による処理を実施するクランク角同期の割り込み処理、例えば、上死点前（以下、ＢＴＤＣと称する）７５°ＣＡでの割込み処理までに処理を終了する。
【００４２】
ピークホールド部２０では、ＤＦＴ処理部１９にて算出したスペクトル列のピークホールド値を算出する。２１のフィルタ係数Ｋは、１次フィルタ演算部２３と更新量制限部２４へＫの値を出力する。フィルタ係数Ｋは、前述のように、この発明を適用する対象のノック検出装置が定義するフィルタ係数Ｋのままでよい。例えば、定数であれば０．９とする。
【００４３】
２２のピークホールド値の最大値Ｌは、図４で説明したように、あらかじめ適合された所定値を、更新量制限部２４へ出力する。１次フィルタ演算部２３は、ピークホールド部２０により算出されたピークホールド値に対する１次フィルタ演算を、２１のフィルタ係数Ｋを用いて行う。更新量制限部２４は、１次フィルタ演算の結果に対し、２１のフィルタ係数Ｋと２２のピークホールド値の最大値Ｌを用いて、前回出力値と更新量上限値（１−Ｋ）×Ｌの和で制限し、バックグランドレベルとして出力する。１次フィルタ演算部２３と更新量制限部２４は、前述の式（１）に相当する。
【００４４】
判定値演算部２５は、次に示す式（３）により、ノック判別値を算出する。
ＶＴＨ(ｎ)＝ＶＢＧＬ（ｎ）×Ｋｔｈ＋Ｖｏｆｓ  ・・・・・・・・・・式（３）
ＶＴＨ（ｎ）：ノック判定値
Ｋｔｈ：判定値係数 
Ｖｏｆｓ：判定値オフセット
判定値係数Ｋｔｈ、及び、判定値オフセットＶｏｆｓは、ノックが発生しない場合はノック判定値ＶＴＨ（ｎ）がピークホールド値ＶＰ（ｎ）より大きく、ノックが発生した場合はノック判定値ＶＴＨ（ｎ）がピークホールド値ＶＰ（ｎ）より小さくなるよう、あらかじめ適合された値である。例えば、判定値係数Ｋｔｈ＝２、判定値オフセットＶｏｆｓ＝０である。
【００４５】
比較演算部２６は、ピークホールド部２０により算出されたピークホールド値ＶＰ（ｎ）と、判定値演算部２５により演算されたノック判定値ＶＴＨ（ｎ）とを比較し、次に示す式（４）により、ノック強度ＶＫ（ｎ）を算出する。
ＶＫ（ｎ）＝ＶＰ（ｎ）−ＶＴＨ（ｎ）  ・・・・・・・・・・・・・・式（４）
ＶＫ（ｎ）：ノック強度
【００４６】
ノック補正量演算部２７は、比較演算部２６にて算出したノック強度ＶＫ（ｎ）に基づきノック補正量θＲ（ｎ）を更新する。すなわち、ＶＫ（ｎ）＞０であれば、ノック発生時と判定し、次に示す式（５）により、ノック補正量θＲ（ｎ）を更新する。
θＲ（ｎ）＝ｍｉｎ（ｍａｘ（θＲ（ｎ−１）−θｒｔｄ、θｍｉｎ）、θｍａｘ）
・・・・・式（５）
θＲ（ｎ）：ノック補正量
θｒｔｄ：遅角時の更新量
θｍｉｎ：ノック補正量の下限値
θｍａｘ：ノック補正量の上限値
ｍａｘ（Ａ、Ｂ）：ＡとＢの大きい方を選択
θｒｔｄ、θｍｉｎ、θｍａｘは、あらかじめ適合により定められた所定値、あるいは、ノック強度ＶＫ（ｎ）などに依存して定められる値である。これらは、この発明を適用する対象のノック検出装置が定義するままでよい。
【００４７】
また、ＶＫ（ｎ）≦０であれば、ノック発生なしと判定し、次に示す式（６）により、ノック補正量θＲ（ｎ）を更新する。
θＲ（ｎ）＝ｍｉｎ（ｍａｘ（θＲ（ｎ−１）−θａｄｖ、θｍｉｎ）、θｍａｘ）
・・・・・式（６）
θａｄｖ：進角時の更新量
θａｄｖについても、あらかじめ適合により定められた所定値、あるいは、ＶＫ（ｎ）などに依存して定められる値である。これらは、この発明を適用する対象のノック検出装置が定義するままでよい。
【００４８】
ＥＣＵ１５におけるマイクロコンピュータ１６は、前述のようにして演算されたノック補正量θＲ（ｎ）を用いて、次に示す式（７）により、最終点火時期θＩＧ（ｎ）を算出する。
θＩＧ（ｎ）＝θＢ（ｎ）＋θＲ（ｎ）  ・・・・・・・・・・・・・式（７）
θＩＧ（ｎ）：最終点火時期
θＢ（ｎ）：基本点火時期
θＢ（ｎ）についても、あらかじめ適合により定められた所定値であり、この発明を適用する対象のノック検出装置が定義するままでよい。なお、ノック補正量θＲ（ｎ）、基本点火時期θＢ（ｎ）、最終点火時期θＩＧ（ｎ）の何れも、進角側を正、遅角側を負としている。
【００４９】
以上、ＥＣＵ１５内に構成されているノック制御部の構成について説明した。なお、ノ
ック検出装置は図８においては、ノックセンサ１２，ローパスフィルタ１７，Ａ／Ｄ変換部１８，ＤＦＴ処理部１９，ピークホールド部２０，２１のフィルタ計数Ｋ，２２のピークホールド値の最大値Ｌ，１次フィルタ演算部２３，更新量制限部２４，判定値演算部２５，比較演算部２６で構成される。次に、図９を用いて、ノック制御部の動作を示す。図９は実施の形態１による内燃機関のノック制御装置におけるノック制御部のフローチャートである。図９に示す処理は、前述の通りクランク角同期の割り込み処理、例えば、ＢＴＤＣ７５°ＣＡでの割込み処理により実施される。
【００５０】
ステップＳ１では、ピークホールド値ＶＰ（ｎ）を算出する。このピークホールド値ＶＰ（ｎ）は、前述のように、ＤＦＴ処理部１９にて算出したスペクトル列の最大値を、ピークホールド部２０にて出力する値である。ステップＳ２では、フィルタ係数Ｋを算出する。フィルタ係数Ｋは、あらかじめ適合された定数、あるいは、内燃機関の回転数に依存する値などである。ステップＳ３では、ピークホールド値の最大値Ｌを算出する。実施の形態１においては、ピークホールド値の最大値Ｌは、図４で説明したように、あらかじめ適合された所定値である。
【００５１】
ステップＳ４では、バックグランドレベルＶＢＧＬ（ｎ）を算出する。バックグランドレベルＶＢＧＬ（ｎ）は、１次フィルタ演算部２３と更新量制限部２４にて、前述の式（１）にて演算される。ステップＳ５では、ノック判定値ＶＴＨ（ｎ）を算出する。ノック判定値ＶＴＨ(ｎ)は、判定値演算部２５にて、前述の式（３）にて演算される。ステップＳ６では、ノック強度ＶＫ（ｎ）を算出する。ノック強度ＶＫ（ｎ）は、比較演算部２６にて、前述の式（４）にて演算される。
【００５２】
ステップＳ７は、ノック補正量演算部２７に含まれ、前記ステップＳ６で演算されたノック強度ＶＫ（ｎ）を０と比較する。０より大きい場合はステップＳ８へ、それ以外はステップＳ９へ進む。ステップＳ８は、ノック補正量演算部２７に含まれ、ノック発生時のノック補正量θＲ（ｎ）を前述の式（５）にて更新する。ステップＳ９は、ノック補正量演算部２７に含まれ、ノック発生なし時のノック補正量θＲ（ｎ）を前述の式（６）にて更新する。ステップＳ１０は、最終点火時期θＩＧ（ｎ）を算出する。最終点火時期θＩＧ（ｎ）は、前述の式（７）にて算出される。そして、θＩＧ（ｎ）に従い点火が実行される。すなわち、ノック判定結果に依存して、進角や遅角した点火時期を実現できる。
【００５３】
実施の形態２．
実施の形態２による内燃機関のノック検出装置について説明する。実施の形態２が実施の形態１と異なるのは、ピークホールド値の最大値Ｌの算出方法であるため、この部分について説明する。ピークホールド値の最大値Ｌは、内燃機関の回転数ｎｅに依存して定義される。Ｌの設定方法は、実施の形態１と同様、ノックの発生していない、様々な内燃機関の運転状態や負荷におけるピークホールド値のデータを取得し、その最大値を、内燃機関の回転数ｎｅで分類し、テーブルデータとして設定する。これは、図５のＬのことであり、例えば、図１０のように設定される。
【００５４】
図８の２２のピークホールド値の最大値Ｌにおいて、回転数ｎｅで図１０のテーブルを補間し、その結果を更新量制限部２４における、式（１）のピークホールド値の最大値Ｌとして用いる。図９のステップＳ３において、ピークホールド値の最大値Ｌを算出するが、実施の形態２においては、図１１に従い演算する。図１１は、実施の形態２による内燃機関のノック検出装置における、ノック制御部のピークホールド値の最大値Ｌを算出するステップのフローチャートである。
【００５５】
図９のステップＳ２の次に、図１１のステップＳ１１に進む。ステップＳ１１では、内燃機関の回転数ｎｅを用いて、図１０のテーブルを補間し、ピークホールド値の最大値Ｌ
を算出する。そして、図９のステップＳ４へ進み、以下は、実施の形態１と同様に演算を行う。
なお、この発明は、その発明の範囲内において、各実施の形態を自由に組み合わせたり、各実施の形態を適宜、変形、省略することが可能である。
【符号の説明】
【００５６】
１  内燃機関                            １２  ノックセンサ
１５  ＥＣＵ                            １６  マイクロコンピュータ
１７  ローパスフィルタ                  １８  Ａ／Ｄ変換部
１９  ＤＦＴ処理部                      ２０  ピークホールド部
２３  １次フィルタ演算部                ２４  更新量制限部
２５  判定値演算部                      ２６  比較演算部
２７  ノック補正量演算部
【図１】
0005826054.tif 000002
【図２】
0005826054.tif 000003
【図３】
0005826054.tif 000004
【図４】
0005826054.tif 000005
【図５】
0005826054.tif 000006
【図６】
0005826054.tif 000007
【図７】
0005826054.tif 000008
【図８】
0005826054.tif 000009
【図９】
0005826054.tif 000010
【図１０】
0005826054.tif 000011
【図１１】
0005826054.tif 000012