(57)【要約】【課題】ノッキングの誤判定をしないように適正にノッキングの制御開始時間を変化させノッキングの制御範囲を広める。【解決手段】ピーク値取得手段１ａは、内燃機関２のクランク軸の回転周期に基づいて、内燃機関２の振動のピーク値を取得する。バックグランド算出手段１ｂは、ピーク値を平均化したバックグランドを算出する。ノック判定手段１ｃは、ピーク値取得手段１ａによって取得されたピーク値が、バックグランドに対して所定のレベルを超えているか否かに基づきノッキングの判定を行い、判定結果に応じて内燃機関２のノッキングをフィードバック制御する。温度取得手段１ｄは、内燃機関２の始動時、内燃機関２の温度を取得する。ノック判定制御手段１ｅは、温度取得手段１ｄによって取得された内燃機関２の温度に応じた所定時間が経過するまで、ノック判定手段１ｃの動作を禁止する。【選択図】図１
2006183662.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関のノックを検出するノック検出装置であって、
前記内燃機関の複数のノック信号に基づいてノック判定のためのしきい値を算出するしきい値算出手段と、
前記しきい値に基づいて前記ノック判定を行うノック判定手段と、
前記内燃機関の始動時、前記内燃機関の温度に応じた所定時間が経過するまで前記しきい値に基づく前記ノック判定を禁止するノック判定制御手段と、
を有することを特徴とするノック検出装置。
【請求項２】
前記所定時間は、前記内燃機関の温度と、前記内燃機関の始動後に検出した前記ノック信号の大きさとに応じて求めることを特徴とする請求項１記載のノック検出装置。
【請求項３】
前記しきい値は、前記内燃機関の所定クランク期間に検出された前記ノック信号に基づいて算出するものであり、
前記所定時間は、前記内燃機関の温度と、前記内燃機関の始動後の所定クランク期間に検出された前記ノック信号の大きさとに応じて求めることを特徴とする請求項１記載のノック検出装置。
【請求項４】
前記所定時間の計時を前記内燃機関の始動後かつスタータ信号がオフした後に開始する計時開始手段をさらに有することを特徴とする請求項１記載のノック検出装置。
【請求項５】
前記しきい値の算出は、前記しきい値の算出を前記内燃機関の始動後かつスタータ信号がオフした後に開始することを特徴とする請求項１記載のノック検出装置。
【請求項６】
前記ノック判定制御手段は、前記所定時間が経過するまで、前記しきい値に基づく前記ノック判定の結果を、エンジンの点火時期の制御に使用しないことを特徴とする請求項１または５記載のノック検出装置。
【請求項７】
内燃機関のノックを検出するノック検出装置であって、
前記内燃機関の複数のノック信号に基づいてノック判定のためのしきい値を算出するしきい値算出手段と、
前記しきい値に基づいて前記ノック判定を行うノック判定手段と、
前記内燃機関の始動時、前記しきい値に基づく前記ノック判定を、前記内燃機関の始動後に検出した前記ノック信号の大きさに応じた所定時間が経過するまで禁止するノック判定制御手段と、
を有することを特徴とするノック検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はノック検出装置に関し、特に検出した内燃機関のノック信号に基づいてノック判定のためのしきい値を算出するノック検出装置に関する。
【背景技術】
【０００２】
エンジンに発生するノッキングを検出し、ノッキングの検出状態に応じて点火時期を制御するノッキング制御方法がある（例えば、特許文献１参照）。このノッキング制御方法は、エンジンのノッキングによる振動を検出するノックセンサからの出力のうち、ノッキングによる振動が含まれる可能性のある周波数成分のみをバンドパスフィルタ（ＢＰＦ）によって濾波し、そのピーク値をＴＤＣ（上死点）ごとにサンプリングしている。そして、サンプリングしたピーク値を平均化した値（以下、バックグランドと呼ぶ）に対し、サンプリングされたピーク値が所定のレベルを超えているか否かに基づいて、ノッキングの有無を判定し、点火進角量をフィードバック制御している。判定によりノッキングが発生していなければ、点火時期を進角していき、ノッキングが発生すれば、点火時期を遅角するようにフィードバック制御している。
【０００３】
ところでバックグランドは、上述したようにピーク値を平均化したもの（具体的には、ピーク値を前回のバックグランドで減算したものに、所定の係数を積算した値を前回のバックグランドに加算する形で算出しており、この加算値（更新値）には、更新ガード値を設けている）であるため、エンジン始動時には、一定の値に収束するまでに時間を要する。
【０００４】
図２１は、エンジン始動時のバックグランドの収束を説明する図である。図に示すようにエンジン始動とともにピーク値がサンプリングされるが、バックグランドは、ピーク値を平均化したものであるためＴＤＣごとに更新され、徐々にピーク値に収束していく。バックグランドがピーク値に収束しきる前（図中の期間Ｆ）にノッキング判定を行うと、ピーク値がバックグランドに対し、所定のレベルを超えていると判定する恐れがあり、ノッキングが発生したと誤判定してしまう。そのため、従来では、バックグランドが収束する時間を考慮して、一定時間経過してから、ノッキングのフィードバック制御を開始していた。
【特許文献１】特開平８−２１８９９６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このように、従来では、実際はバックグランドがピーク値に収束していたとしても、一定時間経過してからノッキングのフィードバック制御を開始するため、ノッキングの制御範囲を狭めていたという問題点があった。
【０００６】
本発明はこのような点に鑑みてなされたものであり、ノッキングの誤判定をしないようにノック判定の開始時期を適正に変化させ、ノッキングの制御範囲を広めることができるノック検出装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明では上記問題を解決するために、内燃機関のノックを検出するノック検出装置であって、前記内燃機関の複数のノック信号に基づいてノック判定のためのしきい値を算出するしきい値算出手段と、前記しきい値に基づいて前記ノック判定を行うノック判定手段と、前記内燃機関の始動時、前記内燃機関の温度に応じた所定時間が経過するまで前記しきい値に基づく前記ノック判定を禁止するノック判定制御手段と、を有することを特徴とするノック検出装置が提供される。
【０００８】
このようなノック検出装置によれば、内燃機関の始動時、しきい値に基づくノック判定を、内燃機関の温度に応じた所定時間が経過するまで禁止する。これにより、ノッキングの誤判定をしないようにノック判定の開始時間を変化させることが可能になる。
【０００９】
また、本発明では上記問題を解決するために、内燃機関のノックを検出するノック検出装置であって、前記内燃機関の複数のノック信号に基づいてノック判定のためのしきい値を算出するしきい値算出手段と、前記しきい値に基づいて前記ノック判定を行うノック判定手段と、前記内燃機関の始動時、前記しきい値に基づく前記ノック判定を、前記内燃機関の始動後に検出した前記ノック信号の大きさに応じた所定時間が経過するまで禁止するノック判定制御手段と、を有することを特徴とするノック検出装置が提供される。
【００１０】
このようなノック検出装置によれば、内燃機関の始動時、しきい値に基づくノック判定を、内燃機関の始動後に検出したノック信号の大きさに応じた所定時間が経過するまで禁止する。これにより、ノッキングの誤判定をしないようにノック判定の開始時間を変化させることが可能になる。
【発明の効果】
【００１１】
本発明のノック検出装置では、内燃機関の始動時、しきい値に基づくノック判定を、内燃機関の温度に応じた所定時間が経過するまで禁止するようにした。これによって、ノッキングの誤判定をしないようにノック判定の開始時間を変化させることができ、ノッキングの制御範囲を広めることができる。
【００１２】
また、本発明のノック検出装置では、内燃機関の始動時、しきい値に基づくノック判定を、内燃機関の始動後に検出したノック信号の大きさに応じた所定時間が経過するまで禁止するようにした。これによって、ノッキングの誤判定をしないようにノック判定の開始時間を変化させることができ、ノッキングの制御範囲を広めることができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明に係るノック検出装置の原理を、図面を参照して詳細に説明する。
図１は、ノック検出装置の概要を示した図である。図に示すようにノック検出装置１は、ピーク値取得手段１ａ、バックグランド算出手段１ｂ、ノック判定手段１ｃ、温度取得手段１ｄ、およびノック判定制御手段１ｅを有している。ノック検出装置１は、内燃機関２の点火時期を制御してノッキングのフィードバック制御を行っている。
【００１４】
ピーク値取得手段１ａは、内燃機関２の、クランク軸の回転周期の所定期間において、内燃機関２の振動のピーク値（ノック信号）を取得する。内燃機関２には、例えば、振動を検出するノックセンサが固定されており、このノックセンサから内燃機関２の振動を取得する。
【００１５】
バックグランド算出手段１ｂは、ピーク値取得手段１ａによって取得されたピーク値を平均化してバックグランド（しきい値）を算出する。具体的には、ピーク値を前回のバックグランドで減算したものに、所定の係数を積算した値を前回のバックグランドに加算する形で算出している。この加算値（更新値）には、例えば、更新ガード値が設けられる。
【００１６】
ノック判定手段１ｃは、ピーク値取得手段１ａによって取得されたピーク値が、バックグランドに対して所定のレベルを超えているか否かに基づきノッキングの判定を行う。そして、ノッキングの判定に応じて、内燃機関２のノッキングをフィードバック制御する。例えば、ピーク値がバックグランドに対し、所定のレベルを超えていなければ、ノッキングが発生していないと判定し、内燃機関２の点火時期を進角していく。ピーク値がバックグランドに対し、所定のレベルを超えていれば、ノッキングが発生したと判定し、内燃機関２の点火時期を遅角するようにする。
【００１７】
温度取得手段１ｄは、内燃機関２の始動時、例えば、スタータがオンされたときに、内燃機関２の温度を取得する。内燃機関２の温度は、例えば、内燃機関２の水温、油温、および吸気温などであり、内燃機関２に固定されているセンサからこれらの温度を取得する。
【００１８】
ノック判定制御手段１ｅは、温度取得手段１ｄによって取得された内燃機関２の温度に応じた所定時間が経過するまで、ノック判定手段１ｃの動作を禁止する。
このように、内燃機関２の始動時、バックグランドに基づくノック判定を、内燃機関２の温度に応じた所定時間が経過するまで禁止するようにした。これによって、ノッキングの誤判定をしないようにノック判定の開始時間を変化させることができ、ノッキングの制御範囲を広めることができる。
【００１９】
次に、第１の実施の形態に係るノック検出装置を、図面を参照して詳細に説明する。
図２は、第１の実施の形態に係るノック検出装置のブロック構成図である。図に示すようにノック検出装置１０は、ＣＰＵ（Central Processing Unit）１１、ＢＰＦ１２、ピークホールドアンプ１３、入力インターフェース１４、ＲＡＭ（Random Access Memory）１５、ＲＯＭ（Read Only Memory）１６、および出力インターフェース１７を有している。ノック検出装置１０には、ノックセンサ２１、水温センサ２２、油温センサ２３、および吸気温センサ２４が接続されている。また、点火プラグ３２が接続されたイグナイタ３１が接続されている。
【００２０】
ノックセンサ２１は、エンジンの振動を電気信号に変換する振動センサである。ノックセンサ２１は、例えば、圧電素子であり、エンジンのシリンダブロックなどに固定されている。
【００２１】
ＢＰＦ１２には、ノックセンサ２１から出力される電気信号が入力される。ＢＰＦ１２は、ノッキングによる信号成分の現れる可能性のある周波数帯域の信号のみを濾波する。ＢＰＦ１２の中心周波数は、例えば、４ｋＨであり、帯域幅は、１ｋＨ〜１００ｋＨである。
【００２２】
ピークホールドアンプ１３には、ＢＰＦ１２によって濾波された信号が入力される。また、ピークホールドアンプ１３には、ＣＰＵ１１の制御（ＣＮＴ）端子から出力されるゲート制御信号と、ＣＰＵ１１のピークホールドリセット（ＰＨＲ）端子から出力されるピークホールドリセット信号が入力される。ピークホールドアンプ１３は、ＣＰＵ１１のＣＮＴ端子からゲート制御信号が出力されている間、ＢＰＦ１２から出力される信号のピーク値を更新しながら、その値を保持する。そして、ＣＰＵ１１のＰＨＲ端子からピークホールドリセット信号が出力されると、保持していたピーク値をリセットする。保持されたピーク値は、ＣＰＵ１１のアナログ／デジタル変換（Ａ／Ｄ１）端子に入力される。
【００２３】
水温センサ２２、油温センサ２３、および吸気温センサ２４は、エンジンの水温、油温、および吸気温を電気信号に変換して出力するセンサである。水温センサ２２、油温センサ２３、および吸気温センサ２４の信号は、入力インターフェース１４を介して、ＣＰＵ１１のアナログ／デジタル変換（Ａ／Ｄ２）端子に入力される。
【００２４】
ＲＡＭ１５およびＲＯＭ１６は、バスを介してＣＰＵ１１に接続されている。ＲＡＭ１５には、ＣＰＵ１１に実行させるＯＳ（Operating System）のプログラムや、ノッキングのフィードバック制御を行うためのアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１５には、ＣＰＵ１１による処理に必要な各種データが保存される。ＲＯＭ１６には、上記のＯＳやアプリケーションプログラム、各種データなどが格納される。なお、ＲＡＭ１５、ＲＯＭ１６は、ＣＰＵ１１が内蔵していてもよい。また、ＲＯＭ１６は、書換え可能なＦＬＡＳＨメモリなどであってもよい。
【００２５】
イグナイタ３１は、点火プラグ３２と接続され、出力インターフェース１７を介してＣＰＵ１１と接続されている。イグナイタ３１は、ＣＰＵ１１からの指示に従って、点火プラグ３２の点火タイミングを駆動制御している。
【００２６】
ＣＰＵ１１は、Ａ／Ｄ１端子に入力されるピーク値をアナログ／デジタル変換し、エンジンのノッキング判定を行う。そして、判定結果に基づいて、点火プラグ３２の点火タイミングをフィードバック制御している。具体的には、ＣＰＵ１１は、判定によりノッキングが発生していなければ、点火プラグ３２の点火時期を進角していき、ノッキングが発生すれば、点火プラグ３２の点火時期を遅角するようにノッキングのフィードバック制御をしている。
【００２７】
ＣＰＵ１１は、エンジン始動時において、ノッキングの誤判定をしないように、ノッキングのフィードバック制御開始時間を適正に変化させることができる。例えば、エンジン始動後、バックグランドがピーク値に早く収束するようであれば、ノッキングのフィードバック制御を早く開始するようにし、遅く収束するようであれば、ノッキングのフィードバック制御を遅く開始するようにする。
【００２８】
ＣＰＵ１１は、Ａ／Ｄ２端子に入力される水温センサ２２、油温センサ２３、および吸気温センサ２４の信号をアナログ／デジタル変換し、エンジンの水温、油温、および吸気温を取得する。ＲＯＭ１６には、エンジンのある水温、油温、および吸気温に対するノッキングのフィードバック制御の開始時間が記憶されており、ＣＰＵ１１は、ＲＯＭ１６を参照して、各センサから取得した水温、油温、および吸気温に対するノッキングのフィードバック制御の開始時間を算出する。
【００２９】
次に、ノッキング判定について説明する。
図３は、ノッキング判定を説明するための波形図である。図の（ａ）は、ピークホールドアンプ１３に入力される波形を示している。図の（ｂ）は、図２では示してないが、エンジンのクランク角センサから出力される波形を示している。クランク角センサから出力されるパルスは、点火行程に入ろうとする気筒のピストンがＴＤＣに到達するたびに出力され、例えば、４気筒４サイクルエンジンであるときには、図の（ｂ）に示すように、１８０°ＣＡ（クランク角）ごとに出力される。図の（ｃ）は、ＣＰＵ１１のＣＮＴ端子から出力されるゲート制御信号の波形を示している。
【００３０】
ピークホールドアンプ１３は、ＣＰＵ１１から出力されるゲート制御信号により、１０°ＣＡから７５°ＣＡの間をノッキング観測期間として、ＢＰＦ１２から出力される信号のピーク値を更新して、その値を保持する。ピークホールドアンプ１３で保持されたピーク値は、ＣＰＵ１１のＡ／Ｄ１端子に入力される。ピーク値がＣＰＵ１１に入力されてＡ／Ｄ変換された後、ＰＨＲ端子からピークホールドリセット信号が出力され、ピークホールドアンプ１３が保持していたピーク値は、リセットされる。
【００３１】
ＣＰＵ１１は、アナログ／デジタル変換されたピーク値より、バックグランドを算出する。バックグランドを算出する式は、例えば、次の式（１）で示される。式（１）のＢＧは、バックグランドを示し、なまし値は、１より大きい値である。なお、バックグランドには、所定以上の変化をしないように更新ガード値を設けるようにしてもよい。
【００３２】
ＢＧ＝前回のＢＧ＋（今回のピーク値−前回のＢＧ）×（１／なまし値）…（１）
バックグランドは、式（１）に示すようにピーク値を平均化したものである。ＣＰＵ１１は、今回アナログ／デジタル変換されたピーク値が、式（１）で求まるバックグランドに対して所定のレベルを超えているか否かを判断し、ノッキングの有無を判定する。ノッキングの有無を判定する式は、例えば、次の式（２）で示される。式（２）のＫは、エンジンの回転数や負荷に応じて変更される値である。
【００３３】
Ｙ＝ＢＧ×Ｋ  …（２）
ＣＰＵ１１は、今回アナログ／デジタル変換されたピーク値がバックグランドをＫ倍した値Ｙを超えている場合、ノッキングが発生したと判断する。そして、進角させていた点火プラグ３２の点火タイミングを遅角するようにフィードバック制御する。
【００３４】
ところで、バックグランドは、上述したようにピーク値を平均化したものである。そのため、ピーク値の大きさによっては、バックグランドのピーク値に収束する収束時間が異なる。例えば、バックグランドとピーク値の差が大きければ、バックグランドの収束時間は長くなってしまう。
【００３５】
図４は、バックグランドの収束時間を説明する図である。図の（ａ），（ｂ）には、バックグランドとピーク値が示してある。図の（ａ）のピーク値は、図の（ｂ）のピーク値より大きい値となっている。
【００３６】
エンジンを始動すると、ピークホールドアンプ１３からピーク値が出力される。ＣＰＵ１１は、前述した式（１）に従ってバックグランドを算出する。バックグランドは、ピーク値を平均化したものであるので、図の（ａ），（ｂ）に示すように、徐々に、ピーク値に収束していく。
【００３７】
バックグランドとピーク値の差が大きいとバックグランドの収束する時間も長くなる。図の（ａ）に示すピーク値は、図の（ｂ）のピーク値より大きいので、図の（ａ）のバックグランドの収束時間は、図の（ｂ）のバックグランドの収束時間より長くなる。そこで、ＣＰＵ１１は、エンジン始動後、ノッキングの誤判定によって誤ったフィードバック制御を行わないように、バックグランドの収束時間に応じて、ノッキングのフィードバック制御の開始時間を変化させる。例えば、図の（ａ）の場合、矢印Ａ１においてノッキングのフィードバック制御を開始するようにする。図の（ｂ）の場合、矢印Ａ２においてノッキングのフィードバック制御を開始するようにする。
【００３８】
次に、エンジンの水温、油温、および吸気温と、ノッキングのフィードバック制御の、開始時間の関係について説明する。図４でも説明したように、エンジン始動後のバックグランドの収束時間は、ピーク値の大きさに依存する。このピーク値の大きさは、エンジンの状態によって様々な値をとり、例えば、前記した水温、油温、および吸気温に依存する。そこで、ＣＰＵ１１は、各センサからエンジンの水温、油温、および吸気温を取得し、ＲＯＭ１６に記憶されている、エンジンのある水温、油温、および吸気温に対するノッキングのフィードバック制御の開始時間を参照して、制御を開始する時間を算出する。
【００３９】
図５は、水温に対するフィードバック制御開始時間の関係を示したテーブルである。図に示すように水温テーブル４１は、水温および開始時間の欄を有し、各水温に対するノッキングのフィードバック制御の開始時間が記憶されている。水温の欄に示される値の単位は℃、開始時間の欄に示される値の単位は秒である。水温テーブル４１は、例えば、図２で示したＲＯＭ１６などの記憶装置に構築される。
【００４０】
ＣＰＵ１１は、エンジンのある水温に対する開始時間を、水温テーブル４１を参照して算出する。水温センサ２２から取得した水温が、水温テーブル４１に示されている水温の欄の間にある場合は、その両側の欄の水温を基に補間して開始時間を算出する。例えば、水温センサ２２から取得した水温が１０℃から３０℃の間にあるときは、ＣＰＵ１１は、１０℃のときの開始時間５．１秒と、３０℃のときの開始時間３．１秒とを取得し、これらの開始時間を補間して、水温センサ２２から取得した水温に対する開始時間を算出する。
【００４１】
図６は、油温に対するフィードバック制御開始時間の関係を示したテーブルである。図に示すように油温テーブル４２は、油温および開始時間の欄を有し、各油温に対するノッキングのフィードバック制御の開始時間が記憶されている。油温の欄に示される値の単位は℃、開始時間の欄に示される値の単位は秒である。油温テーブル４２は、例えば、図２で示したＲＯＭ１６などの記憶装置に構築される。
【００４２】
ＣＰＵ１１は、エンジンのある油温に対する開始時間を、油温テーブル４２を参照して算出する。なお、油温に対する開始時間の算出方法は、図５で説明した水温の開始時間の算出方法と同じであり、その詳細な説明は省略する。
【００４３】
図７は、吸気温に対するフィードバック制御開始時間の関係を示したテーブルである。図に示すように吸気温テーブル４３は、吸気温および開始時間の欄を有し、各吸気温に対するノッキングのフィードバック制御の開始時間が記憶されている。吸気温の欄に示される値の単位は℃、開始時間の欄に示される値の単位は秒である。吸気温テーブル４３は、例えば、図２で示したＲＯＭ１６などの記憶装置に構築される。
【００４４】
ＣＰＵ１１は、エンジンのある吸気温に対する開始時間を、吸気温テーブル４３を参照して算出する。なお、吸気温に対する開始時間の算出方法は、図５で説明した水温の開始時間の算出方法と同じであり、その詳細な説明は省略する。
【００４５】
このように、ＣＰＵ１１は、エンジン始動時に各センサからエンジンの水温、油温、および吸気温を取得し、取得した水温、油温、および吸気温に対するノッキングのフィードバック制御の開始時間を算出する。
【００４６】
次に、ＣＰＵ１１の動作を、フローチャートを用いて説明する。
図８は、フィードバック制御開始時間を算出する処理を示したフローチャートである。ＣＰＵ１１は、以下のステップに従って処理を実行する。
【００４７】
ステップＳ１においてＣＰＵ１１は、エンジン始動時におけるエンジンの水温、油温、および吸気温を取り込むため、スタータがオフからオンに切替わったか判断する。スタータがオフからオンに切替わった場合、ステップＳ２へ進む。スタータがオフからオンに切替わらない場合は、ステップＳ７へ進む。
【００４８】
ステップＳ２においてＣＰＵ１１は、水温センサ２２、油温センサ２３、および吸気温センサ２４からエンジンの水温、油温、および吸気温を取得する。
ステップＳ３においてＣＰＵ１１は、水温テーブル４１を参照し、ステップＳ２で取得した水温に対するノッキングのフィードバック制御（Ｆ／Ｂ）の開始時間ａを算出する。ステップＳ４においてＣＰＵ１１は、油温テーブル４２を参照し、ステップＳ２で取得した油温に対するノッキングのフィードバック制御の開始時間ｂを算出する。ステップＳ５においてＣＰＵ１１は、吸気温テーブル４３を参照し、ステップＳ２で取得した吸気温に対するノッキングのフィードバック制御の開始時間ｃを算出する。ステップＳ６においてＣＰＵ１１は、ステップＳ３〜Ｓ５で算出した開始時間ａ〜ｃの最大値ｄを算出する。
【００４９】
ステップＳ７においてＣＰＵ１１は、エンジン始動後、時間がステップＳ６で算出した最大値ｄを経過したか判断する。ＣＰＵ１１は、時間が最大値ｄを経過すると、ステップＳ８へ進む。時間が最大値ｄ未満であれば、フローチャートの処理を終了し、次の割り込みで開始からフローチャートの処理を繰り返す。
【００５０】
ステップＳ８においてＣＰＵ１１は、ノッキングのフィードバック制御を開始する。つまり、ノッキング判定によりノッキングが発生していなければ、点火プラグ３２の点火時期を進角していき、ノッキングが発生すれば、点火プラグ３２の点火時期を遅角するようにノッキングのフィードバック制御を開始する。
【００５１】
次に、ＣＰＵ１１の動作を、制御チャートを用いて説明する。
図９は、フィードバック制御開始時間を算出する制御チャートを示した図である。図の（ａ）にはスタータのオン・オフタイミングを示した波形が示してある。図の（ｂ）にはスタータがオンされた後、ノッキングのフィードバック制御の開始時間をカウントするためのタイミングを示した波形が示してある。図の（ｃ）にはバックグランドの波形が示してある。図の（ｄ）には水温、油温、および吸気温に基づいて算出された、ノッキングのフィードバック制御を開始するカウント値が示してある。図の（ｅ）には、時間をカウントするカウンタ値が示してある。
【００５２】
図の点線Ｃ１に示すように、スタータがオフからオンに切替わると、ＣＰＵ１１は、バックグランドの算出を開始する。バックグランドは、ピーク値を平均化したものであるため、エンジン始動後、図の（ｃ）に示すように徐々に、ピーク値に収束していく。また、ＣＰＵ１１は、各センサからエンジンの水温、油温、および吸気温を取得し、水温テーブル４１、油温テーブル４２、および吸気温テーブル４３を参照して、取得した水温、油温、および吸気温に対するノッキングのフィードバック制御の開始時間（カウント値）を算出する。なお、水温、油温、および吸気温に対するノッキングのフィードバック制御を開始するためのカウント値は、図の（ｄ）に示すように水温＞油温＞吸気温の関係を有し、水温が最大値であるとする。
【００５３】
ＣＰＵ１１は、ノッキングのフィードバック制御を開始するためのカウント値を算出すると、図の（ｂ）に示すようにノッキングのフィードバック制御を開始する時間のカウントを開始する。すると、図の（ｅ）に示すように時間をカウントするカウンタ値は、点線Ｃ２のタイミングからカウントアップが開始される。
【００５４】
カウンタ値がカウントアップされ、矢印Ｃ３に示すように吸気温に基づいたノッキングのフィードバック制御を開始するカウント値に達したとする。しかし、図７の例では、吸気温のカウント値は、ノッキングのフィードバック制御を開始するカウント値の最大値ではないので、ＣＰＵ１１は、ノッキングのフィードバック制御を開始しない。
【００５５】
カウンタ値がさらにカウントアップされ、矢印Ｃ４に示すように油温に基づいたノッキングのフィードバック制御を開始するカウント値に達したとする。しかし、図６の例では、油温のカウント値は、ノッキングのフィードバック制御を開始するカウント値の最大値ではないので、ＣＰＵ１１は、ノッキングのフィードバック制御を開始しない。
【００５６】
カウンタ値がさらにカウントアップされ、矢印Ｃ５に示すように水温に基づいたノッキングのフィードバック制御を開始するカウント値に達したとする。図５の例では、水温のカウント値は、ノッキングのフィードバック制御を開始するカウント値の最大値であるので、ＣＰＵ１１は、ノッキングのフィードバック制御を開始する。なお、点線Ｃ６に示すように、バックグランドがピーク値に収束した後にノッキングのフィードバック制御が開始されている。このように、水温、油温、および吸気温に基づいて算出された開始時間の最大開始時間により、ノッキングのフィードバック制御を開始することにより、例えば、バックグランドが収束していない収束時間がいくつか算出されても、安全にノッキングのフィードバック制御開始時間を変化させ、制御範囲を広めることができる。
【００５７】
このように、エンジンの始動時にバックグランドがピーク値に収束するであろう収束時間を決定するための水温、油温、および吸気温を取得し、取得した水温、油温、および吸気温に基づいてバックグランドの収束時間を算出するようにした。これによって、ノッキングの誤判定をしないように適正にノッキングの制御開始時間を変化させることができ、ノッキングの制御範囲を広めることができる。
【００５８】
また、エンジンの始動後、ノッキングの誤判定をしないようにノッキングの制御開始時間を変化させるので、エンジンの誤遅角を防止することができる。
さらに、水温、油温、および吸気温で求まった収束時間の最大値を使用することにより、より安全にノッキングのフィードバック処理を開始して、誤遅角を防止することができる。
【００５９】
なお、上記では、水温、油温、および吸気温のパラメータに基づく収束時間の最大値で、ノッキングのフィードバック制御を開始するようにしたが、１つのパラメータに基づく収束時間で、または、１以上のパラメータに基づく収束時間の最大値で、ノッキングのフィードバック制御を開始するようにしてもよい。例えば、水温による収束時間のみを算出して、ノッキングのフィードバック制御を開始してもよく、水温と油温による収束時間のみを算出して、ノッキングのフィードバック制御を開始してもよい。
【００６０】
次に、第２の実施の形態に係るノック検出装置を、図面を参照して詳細に説明する。第２の実施の形態では、適正なバックグランドに収束するために必要なピーク値のサンプル数を、エンジン始動後のピーク値に基づいて算出し、ピーク値を、算出したサンプル数取得してから、ノッキングのフィードバック制御を開始する。
【００６１】
式（１）で示したようにバックグランドは、ピーク値を平均化したものであるため、エンジン始動時には、所定のピーク値のサンプル数が揃うまでは、適正な値に収束しない。バックグランドが適正な値に収束するピーク値のサンプル数は、ピーク値の大きさによって異なり、バックグランドとピーク値の差が大きければ、適正なバックグランドに収束するピーク値のサンプル数も多く必要とする。また、ピーク値のなまし率（なまし値の逆数）によっても、バックグランドが適正な値に収束するピーク値のサンプル数が異なる。そこで、図２で示したＣＰＵ１１は、適正なバックグランドを算出するのに必要なピーク値のサンプル数を算出し、ピーク値を、算出されたサンプル数取得してからノッキングのフィードバック制御を開始する。例えば、ＣＰＵ１１は、エンジン始動後に初めて取得したピーク値をなまし率で除算した値を、ノッキングのフィードバック開始のサンプル数とする。
【００６２】
ピーク値のサンプル数とエンジンの回転数の関係について説明する。ピーク値がサンプル数揃う時間は、エンジンの回転数に比例する。エンジンの回転数が高ければピーク値のサンプル数揃う時間は早く、エンジンの回転数が低ければピーク値のサンプル数揃う時間は遅くなる。
【００６３】
図１０は、バックグランドとエンジン回転数を示した図である。図の（ａ）には、ピーク値とバックグランドが示してある。図の（ｂ）には、エンジン回転数が示してある。ピーク値は、エンジンの回転数に比例してサンプリングされる。ＣＰＵ１１は、バックグランドの算出に必要なピーク値のサンプル数を算出し、エンジンの回転数が高ければ早くノッキングのフィードバック制御を開始し、エンジンの回転数が低ければ遅くノッキングのフィードバック制御を開始することになる。
【００６４】
次に、ＣＰＵ１１の動作を、フローチャートを用いて説明する。
図１１は、フィードバック制御を開始するためのピーク値のサンプル数を算出する処理を示したフローチャートである。ＣＰＵ１１は、所定の周期ごとに以下のステップに従った処理を実行する。
【００６５】
ステップＳ１１においてＣＰＵ１１は、エンジン始動時に以下で説明する変数α、βを初期化するため、スタータがオフからオンに切替わったか判断する。スタータがオフからオンに切替わった場合、ステップＳ１２の処理へ進む。スタータがオフからオンに切替わらない場合は、ステップＳ１４へ進む。
【００６６】
ステップＳ１２においてＣＰＵ１１は、ピーク値のサンプル数をカウントするための変数αを、例えば、０の最小値に初期化する。ステップＳ１３においてＣＰＵ１１は、ノッキングのフィードバック処理を開始するためのサンプル数を示す変数βを、例えば、０ｘＦＦＦＦの最大値に初期化する。
【００６７】
ステップＳ１４においてＣＰＵ１１は、ノッキングのフィードバック処理がゲートオープン中（ノッキング観測期間）であるか判断する。すなわち、図２で説明したゲート制御信号をピークホールドアンプ１３に出力しているか判断する。ゲートオープン中であれば、ステップＳ１５へ進む。ゲートオープン中でなければ、ステップＳ２０へ進む。
【００６８】
ステップＳ１５においてＣＰＵ１１は、ピーク値を更新する。すなわち、ピークホールドアンプ１３から新たなピーク値を取得する。ステップＳ１６においてＣＰＵ１１は、取得したピーク値によりバックグランドを更新する。ステップＳ１７においてＣＰＵ１１は、変数αに１を加算する。
【００６９】
ステップＳ１８においてＣＰＵ１１は、ステップＳ１５〜Ｓ１７の処理が初めてであるか判断する。初めてであればステップＳ１９へ進む。初めてでなければステップＳ２０へ進む。
【００７０】
ステップＳ１９においてＣＰＵ１１は、ノッキングのフィードバック制御を開始するためのサンプル数を示す変数βを算出する。変数βは、次の式（３）で示される。式（３）のなまし率は、なまし値の逆数である。
【００７１】
β＝ピーク値／なまし率  …（３）
すなわち、ノッキングのフィードバック制御を開始するためのサンプル数は、ピーク値に比例する。ピーク値が大きいほど、ノッキングのフィードバック制御を開始するためのサンプル数が多くなる。また、ノッキングのフィードバック制御を開始するためのサンプル数は、なまし率に逆比例する。なまし率が小さければ、バックグランドのピーク値に収束するためのサンプル数も多く必要となるからである。
【００７２】
ステップＳ２０においてＣＰＵ１１は、ピーク値のサンプル数をカウントするための変数αが、ノッキングのフィードバック制御を開始するためのサンプル数である変数β以上になったか判断する。変数αが変数β以上であれば、ステップＳ２１へ進む。変数αが変数βより小さければ、図１１のフローチャートの処理を終了し、次の割り込みで開始からフローチャートの処理を繰り返す。
【００７３】
ステップＳ２１においてＣＰＵ１１は、ノッキングのフィードバック制御を開始する。
このように、バックグランドを算出するためのピーク値の必要なサンプル数をピーク値の大きさに基づいて算出し、エンジン始動後、ピーク値を、算出したサンプル数取得してから、ノッキングのフィードバック制御を開始するようにした。これによって、ノッキングの誤判定をしないように適正にノッキングの制御開始時間を変化させることができ、ノッキングの制御範囲を広めることができる。
【００７４】
また、エンジンの始動後、ノッキングの誤判定をしないようにピーク値のサンプル数を変化させるので、エンジンの誤遅角を防止することができる。
なお、第１の実施の形態と第２の実施の形態を組み合わせることもできる。例えば、第２の実施の形態で説明したように、ノッキングのフィードバック制御を開始するためのサンプル数を算出する。そして、ピーク値を算出されたサンプル数取得してから、第１の実施の形態で説明した水温、油温、および吸気温に基づく開始時間を算出し、算出した開始時間後にノッキングのフィードバック制御を開始する。具体的には、図１１で示したフローチャートのステップＳ２０で変数αが変数β以上になったとき、図８で示したフローチャートのステップＳ２以下の処理を実行する。
【００７５】
次に、第３の実施の形態に係るノック検出装置を、図面を参照して詳細に説明する。スタータがオンしている間は、エンジンをスタータモータによりクランキングしているためデータにノイズが生じやすく、ノック判定について誤判定を起こす恐れがある。そこで、第３の実施の形態では、エンジンの始動後、スタータがオンからオフに切替わったときに、ノッキングのフィードバック制御を開始する時間のカウントを開始し、ノッキングのフィードバック制御が必ずスタータがオフした後に行われるようにする。
【００７６】
図１２は、ノック検出装置の概要を示す図である。図１２では、図１に対し内燃機関始動手段３と計時開始手段１ｆとが示してある。図１２において、図１と同じものには同じ符号を付し、その説明を省略する。
【００７７】
図に示す内燃機関始動手段３は、内燃機関２を始動させるためのクランキングを行う電気モータ（スタータ）である。内燃機関始動手段３は、スタータのオン・オフ信号を、計時開始手段１ｆに出力する。
【００７８】
計時開始手段１ｆには、内燃機関２から始動したか否かの信号および内燃機関始動手段３のオン・オフ信号が入力される。計時開始手段１ｆは、内燃機関２から始動した旨の信号が入力されかつ内燃機関始動手段３からオフ信号が入力されると、ノック判定制御手段１ｅの所定時間の計時を許可する。すなわち、計時開始手段１ｆは、内燃機関始動手段３によって内燃機関２が始動しかつ内燃機関始動手段３がオフした後にノック判定制御手段１ｅが所定時間の計時を開始するようにする。なお、ノック判定制御手段１ｅは、計時開始手段１ｆの計時開始の制御によって、内燃機関２の温度に応じた所定時間の計時を開始し、所定時間を経過すると、ノック判定手段１ｃの動作を解除する。
【００７９】
このように、ノッキングのフィードバック制御を開始するための所定時間の計時を、内燃機関２の始動後かつ内燃機関始動手段３がオフした後に開始するようにした。これにより、ノッキングのフィードバック制御は、内燃機関始動手段３がオフした後に行われるので、内燃機関始動手段３のクランキングによるノイズの影響を低減することができ、ノック判定についての誤判定を抑制することができる。
【００８０】
次に、ノック検出装置のブロック構成図について説明する。
図１３は、ノック検出装置のブロック構成図である。図１３では、図２に対しエンジン３３とスタータ３４が示してある。また、ノック検出装置１０ａのＣＰＵ１１ａは、Ｉ／Ｏ（Input/Output）１，２を有している。図１３において、図２と同じものには同じ符号を付し、その説明を省略する。
【００８１】
スタータ３４は、例えば、ユーザのキー操作によってオン・オフし、エンジン３３を始動する。スタータ３４は、オン・オフした状態を示すオン・オフ信号をＣＰＵ１１ａのＩ／Ｏ１に出力する。また、エンジン３３は、始動するとその旨の信号をＣＰＵ１１ａのＩ／Ｏ２に出力する。
【００８２】
ＣＰＵ１１ａは、Ｉ／Ｏ２にエンジンが始動した旨の信号が入力されかつＩ／Ｏ１にスタータ３４のオフ信号が入力されると、ノッキングのフィードバック制御を開始するための時間の計時を開始する。
【００８３】
次に、ＣＰＵ１１ａの動作を、制御チャートを用いて説明する。
図１４は、フィードバック制御開始時間を算出する制御チャートを示した図である。図の（ａ）にはノック判定が行われるタイミングを示した波形が示してある。図の（ｂ）にはスタータのオン・オフタイミングを示した波形が示してある。図の（ｃ）にはエンジンの始動タイミングを示した波形が示してある。図の（ｄ）にはバックグランドの波形が示してある。図の（ｅ）には水温、油温、および吸気温に基づいて算出された、ノッキングのフィードバック制御を開始するためのカウント値が示してある。図の（ｆ）には時間をカウントするカウンタ値が示してある。なお、第３の実施の形態は、エンジン始動後、スタータがオンからオフに切替わったタイミングで、ノッキングのフィードバック制御を開始する時間のカウントを開始する点で第１の実施の形態と異なる。その他の構成、機能は、第１の実施の形態と同様であり、その詳細な説明は、省略する。
【００８４】
図の点線Ｄ１に示すように、スタータがオフからオンに切替わると、ＣＰＵ１１ａは、バックグランドの算出を開始する。バックグランドは、ピーク値を平均化したものであるため、図の（ｄ）に示すように、エンジンの回転とともに徐々にピーク値に収束していく。また、ＣＰＵ１１ａは、各センサからエンジンの水温、油温、および吸気温を取得し、水温テーブル４１、油温テーブル４２、および吸気温テーブル４３を参照して、図の（ｅ）に示すようなノッキングのフィードバック制御を開始するための時間（カウント値）を算出する。
【００８５】
ＣＰＵ１１ａは、図の（ｃ）に示すようにエンジンが始動し、図の（ｂ）に示すようにスタータがオフすると、図の（ｆ）に示すように、ノッキングのフィードバック制御を開始するためのカウントを開始する（図中の点線Ｄ２）。
【００８６】
カウンタ値がカウントアップされ、矢印Ｄ３に示すようにノッキングのフィードバック制御を開始するカウント値に達すると、ＣＰＵ１１ａは、矢印Ｄ４に示すようにノッキングのフィードバック制御を開始する。なお、エンジン始動完了前は、機械的に点火時期を制御しているため、ノック判定の結果を点火時期制御に反映する必要はない。
【００８７】
次に、ＣＰＵ１１ａの動作を、フローチャートを用いて説明する。
図１５は、フィードバック制御開始時間を算出する処理を示したフローチャートである。図１５において、図８の処理と同じ処理には同じ符号を付し、その説明を省略する。
【００８８】
ステップＳ１〜Ｓ６では、図８で説明したようにＣＰＵ１１ａは、ノッキングのフィードバック制御を開始するための時間（最大値ｄ）を算出する。
ステップＳ６１ａにおいて、ＣＰＵ１１ａは、エンジン３３が始動した否か判断する。エンジン３３が始動しない場合、処理を終了し、エンジン３３が始動した場合、ステップＳ６２ａへ進む。
【００８９】
ステップＳ６２ａにおいて、ＣＰＵ１１ａは、スタータ３４がオフしたか否か判断する。スタータ３４がオフした場合、ステップＳ６３ａへ進む。スタータ３４がオンしている場合、処理を終了する。
【００９０】
ステップＳ６３ａにおいて、ＣＰＵ１１ａは、フィードバック制御を開始するための時間の計時を開始する。ステップＳ７では、図８で説明したようにＣＰＵ１１ａは、時間が最大値ｄを経過したか判断し、時間が最大値ｄを経過すると、ステップＳ８へ進む。ステップＳ８において、ＣＰＵ１１ａは、ノッキングのフィードバック制御を開始する。
【００９１】
このように、フィードバック制御を開始するための時間の計時を、エンジン始動後、スタータがオンからオフに切替わった後に開始するようにした。これにより、ノック判定は、スタータがオフした後に行われるので、スタータオン時のモータのクランキングによるノイズの影響を低減することができ、ノック判定についての誤判定を抑制することができる。
【００９２】
次に、第４の実施の形態に係るノック検出装置を、図面を参照して詳細に説明する。スタータがオンしている間は、エンジンをスタータモータによりクランキングしているためノック信号にノイズが生じやすいため、バックグランドの値が異常となる恐れがある。そこで、第４の実施の形態では、エンジンの始動後、スタータがオンからオフに切替わったときにバックグランドの算出を開始し、また、ノッキングのフィードバック制御を開始する時間のカウントを開始するようにする。
【００９３】
図１６は、ノック検出装置の概要を示す図である。図１６では、図１に対しバックグランド算出手段１ｇの機能が一部異なる。また、内燃機関２を始動させるためのクランキングを行う内燃機関始動手段３が示してある。図１６において、図１と同じものには同じ符号を付し、その説明を省略する。
【００９４】
図に示すバックグランド算出手段１ｇには、内燃機関２から始動したか否かの信号および内燃機関始動手段３のオン・オフ信号が入力される。バックグランド算出手段１ｇは、内燃機関２から始動した旨の信号が入力されかつ内燃機関始動手段３からオフ信号が入力されると、バックグランドの算出を開始する。すなわち、バックグランド算出手段１ｇは、内燃機関始動手段３によって内燃機関２が始動しかつ内燃機関始動手段３がオフした後にバックグランドの算出を開始するようにする。なお、ノック判定制御手段１ｅは、温度取得手段１ｄによって取得された内燃機関２の温度に応じた所定時間が経過するまで、ノック判定手段１ｃの動作を禁止する。
【００９５】
このように、バックグランドの算出を内燃機関２の始動後、内燃機関始動手段３がオンからオフに切替わった後に開始するようにした。これにより、内燃機関始動手段３のクランキングによる、バックグランドのノイズの影響を低減することができ、ノック判定についての誤判定を抑制することができる。
【００９６】
次に、第４の実施の形態に係るノック検出装置の動作を、制御チャートを用いて説明する。第４の実施の形態におけるブロック構成図は、図１３と同じであるので省略する。ただし、ＣＰＵ１１ａが、エンジン３３の始動後、スタータ３４からオフ信号が出力されたとき、バックグランドの算出を行うところが異なる。
【００９７】
図１７は、フィードバック制御開始時間を算出する制御チャートを示した図である。図の（ａ）にはノック判定が行われるタイミングを示した波形が示してある。図の（ｂ）にはスタータのオン・オフタイミングを示した波形が示してある。図の（ｃ）にはエンジンの始動タイミングを示した波形が示してある。図の（ｄ）にはバックグランドの波形が示してある。図の（ｅ）には水温、油温、および吸気温に基づいて算出された、ノッキングのフィードバック制御を開始するためのカウント値が示してある。図の（ｆ）には時間をカウントするカウンタ値が示してある。なお、第４の実施の形態は、エンジン始動後、スタータがオンからオフに切替わったタイミングで、バックグランドの算出を開始し、また、ノッキングのフィードバック制御を開始する時間のカウントを開始する点で第３の実施の形態と異なる。その他の構成、機能は、第３の実施の形態と同様であり、その詳細な説明は、省略する。
【００９８】
ＣＰＵ１１ａは、スタータがオンされると、各センサからエンジンの水温、油温、および吸気温を取得し、水温テーブル４１、油温テーブル４２、および吸気温テーブル４３を参照して、図の（ｅ）に示すようなノッキングのフィードバック制御を開始するための時間（カウント値）を算出する。
【００９９】
ＣＰＵ１１ａは、図の（ｂ），（ｃ）に示すように、エンジンが始動してスタータがオフすると、図の（ｄ）に示すようにバックグランドの算出を開始する（図中の点線Ｅ１）。バックグランドは、ピーク値を平均化したものであるため、エンジン始動後、図の（ｄ）に示すように徐々に、ピーク値に収束していく。また、ＣＰＵ１１ａは、図の（ｂ），（ｃ）に示すように、エンジンが始動してスタータがオフすると、図の（ｆ）に示すように、ノッキングのフィードバック制御を開始するためのカウント値をカウントアップする（図中の点線Ｅ１）。
【０１００】
カウンタ値がカウントアップされ、矢印Ｅ２に示すようにノッキングのフィードバック制御を開始するカウント値に達すると、ＣＰＵ１１ａは、図のＥ３に示すようにノッキングのフィードバック制御を開始する。
【０１０１】
次に、ＣＰＵ１１ａの動作を、フローチャートを用いて説明する。
図１８は、フィードバック制御開始時間を算出する処理を示したフローチャートである。図１８において、図８の処理と同じ処理には同じ符号を付し、その説明を省略する。
【０１０２】
ステップＳ１〜Ｓ６では、図８で説明したようにＣＰＵ１１ａは、ノッキングのフィードバック制御を開始するための時間（最大値ｄ）を算出する。
ステップＳ６１ｂにおいて、ＣＰＵ１１ａは、エンジン３３が始動した否か判断する。エンジン３３が始動しない場合、処理を終了し、エンジン３３が始動した場合、ステップＳ６２ｂへ進む。
【０１０３】
ステップＳ６２ｂにおいて、ＣＰＵ１１ａは、スタータ３４がオフしたか否か判断する。スタータ３４がオフした場合、ステップＳ６３ｂへ進む。スタータ３４がオンしている場合、処理を終了する。
【０１０４】
ステップＳ６３ｂにおいて、ＣＰＵ１１ａは、バックグランドの算出を開始する。ステップＳ６４ｂにおいて、ＣＰＵ１１ａは、フィードバック制御を開始するための時間の計時を開始する。ステップＳ７では、図８で説明したようにＣＰＵ１１ａは、時間が最大値ｄを経過したか判断し、時間が最大値ｄを経過すると、ステップＳ８へ進む。ステップＳ８において、ＣＰＵ１１ａは、ノッキングのフィードバック制御を開始する。
【０１０５】
このように、バックグランドの算出とフィードバック制御を開始するための時間の計時とを、エンジン始動後、スタータがオンからオフに切替わった後に開始するようにした。これにより、スタータオン時のモータのクランキングによる、バックグランドのノイズの影響を低減することができ、ノック判定についての誤判定を抑制することができる。
【０１０６】
次に、第５の実施の形態に係るノック検出装置を、図面を参照して詳細に説明する。第５の実施の形態では、ノック判定の結果をエンジンの温度に応じた所定時間を経過するまで、エンジンの点火時期の制御に用いないようにする。
【０１０７】
図１９は、ノック検出装置の概要を示す図である。図１９では、図１に対し点火時期制御手段１ｈが示してある。図１９において、図１と同じものには同じ符号を付し、その説明を省略する。
【０１０８】
ノック判定手段１ｃは、図１で説明したようにピーク値とバックグランドに基づいてノック判定を行い、判定結果に応じて、内燃機関２の点火時期を進角および遅角の制御を行う。点火時期制御手段１ｈは、ノック判定手段１ｃの進角および遅角の制御に応じて、内燃機関２の点火時期を進角および遅角するようにする。
【０１０９】
ノック判定制御手段１ｅは、図１で説明したように内燃機関２の温度に応じた時間が経過するまで、ノック判定手段１ｃの動作を禁止する。すなわち、ノック判定手段１ｃのノック判定は、内燃機関２の温度に応じた所定時間が経過するまで、点火時期の制御に反映されない。
【０１１０】
次に、第５の実施の形態に係るノック検出装置の動作を、フローチャートを用いて説明する。第５の実施の形態におけるブロック構成図は、図１３と同じであるので省略する。ただし、ＣＰＵ１１ａは、エンジン３３の温度に応じた所定時間が経過するまで、ノック判定の結果を点火時期制御に反映しない。
【０１１１】
図２０は、フィードバック制御開始時間を算出する制御チャートを示した図である。図２０において、図８の処理と同じ処理には同じ符号を付し、その説明を省略する。
ステップＳ１〜Ｓ６では、図８で説明したようにＣＰＵ１１ａは、ノッキングのフィードバック制御を開始するための時間（最大値ｄ）を算出する。
【０１１２】
ステップＳ６１ｃにおいて、ＣＰＵ１１ａは、エンジン３３が始動した否か判断する。エンジン３３が始動しない場合、処理を終了し、エンジン３３が始動した場合、ステップＳ６２ｃへ進む。
【０１１３】
ステップＳ６２ｃにおいて、ＣＰＵ１１ａは、スタータ３４がオフしたか否か判断する。スタータ３４がオフした場合、ステップＳ６３ｃへ進む。スタータ３４がオンしている場合、処理を終了する。ステップＳ６３ｃにおいて、ＣＰＵ１１ａは、ノック判定の結果を点火時期制御に反映しない。
【０１１４】
ステップＳ６４ｃにおいて、ＣＰＵ１１ａは、フィードバック制御を開始するための時間の計時を開始する。ステップＳ７では、図８で説明したようにＣＰＵ１１ａは、時間が最大値ｄを経過したか判断し、時間が最大値ｄを経過すると、ステップＳ８へ進む。ステップＳ８において、ＣＰＵ１１ａは、ノック判定の結果を点火時期制御に反映する。
【０１１５】
このように、ノック判定の結果をエンジン３３の温度に応じた所定時間が経過するまで点火時期制御に反映しないようにすることによっても、ノッキングの制御範囲を広めることができる。
【図面の簡単な説明】
【０１１６】
【図１】ノック検出装置の概要を示した図である。
【図２】第１の実施の形態に係るノック検出装置のブロック構成図である。
【図３】ノッキング判定を説明するための波形図である。
【図４】バックグランドの収束時間を説明する図である。
【図５】水温に対するフィードバック制御開始時間の関係を示したテーブルである。
【図６】油温に対するフィードバック制御開始時間の関係を示したテーブルである。
【図７】吸気温に対するフィードバック制御開始時間の関係を示したテーブルである。
【図８】フィードバック制御開始時間を算出する処理を示したフローチャートである。
【図９】フィードバック制御開始時間を算出する制御チャートを示した図である。
【図１０】バックグランドとエンジン回転数を示した図である。
【図１１】フィードバック制御を開始するためのピーク値のサンプル数を算出する処理を示したフローチャートである。
【図１２】ノック検出装置の概要を示す図である。
【図１３】ノック検出装置のブロック構成図である。
【図１４】フィードバック制御開始時間を算出する制御チャートを示した図である。
【図１５】フィードバック制御開始時間を算出する処理を示したフローチャートである。
【図１６】ノック検出装置の概要を示す図である。
【図１７】フィードバック制御開始時間を算出する制御チャートを示した図である。
【図１８】フィードバック制御開始時間を算出する処理を示したフローチャートである。
【図１９】ノック検出装置の概要を示す図である。
【図２０】フィードバック制御開始時間を算出する制御チャートを示した図である。
【図２１】エンジン始動時のバックグランドの収束を説明する図である。
【符号の説明】
【０１１７】
１  ノック検出装置
１ａ  ピーク値取得手段
１ｂ  バックグランド算出手段
１ｃ  ノック判定手段
１ｄ  温度取得手段
１ｅ  ノック判定制御手段
２  内燃機関
【図１】
2006183662.tif 000003
【図２】
2006183662.tif 000004
【図３】
2006183662.tif 000005
【図４】
2006183662.tif 000006
【図５】
2006183662.tif 000007
【図６】
2006183662.tif 000008
【図７】
2006183662.tif 000009
【図８】
2006183662.tif 000010
【図９】
2006183662.tif 000011
【図１０】
2006183662.tif 000012
【図１１】
2006183662.tif 000013
【図１２】
2006183662.tif 000014
【図１３】
2006183662.tif 000015
【図１４】
2006183662.tif 000016
【図１５】
2006183662.tif 000017
【図１６】
2006183662.tif 000018
【図１７】
2006183662.tif 000019
【図１８】
2006183662.tif 000020
【図１９】
2006183662.tif 000021
【図２０】
2006183662.tif 000022
【図２１】
2006183662.tif 000023