(57)【特許請求の範囲】
【請求項１】
内燃機関の始動状態を検出する始動状態検出手段と、内燃機関の温度を検出する温度検出手段とを備え、前記始動状態検出手段と前記温度検出手段からの出力に基づき、内燃機関の始動時に内燃機関の温度が基準温度を越えたとき燃料噴射量を減量する電子燃料制御装置において、
内燃機関にノッキングが発生したか否かを判断する判断手段と、該判断手段によりノッキングが発生した時の温度を基準温度として記憶し、前記記憶された基準温度と前記温度検出手段から検出された温度とを比較し、該温度が前記基準温度よりも高いと判断したときだけ前記燃料噴射量を減量する制御手段とを備えたことを特徴とする電子燃料噴射制御装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、内燃機関のノッキング時に燃料噴射量を減量する電子燃料噴射制御装置に関する。
【０００２】
【従来技術】
ノッキングとはシリンダ内にある燃料ガスが自然爆発する現象をいうが、このノックが発生すると異常な振動が運転者に伝わったり、温度過上昇によってピストン等が溶損してしまう。
内燃機関（エンジン）が始動後であれば、ソフト処理によりエンジン回転数，吸入空気量等から最適な点火時期を計算する（点火時期を遅角させる）ことでこのノッキングを防止できる。しかしながらエンジンの始動時においては、上述したような点火時期を制御するのに用いる上記パラメータが不安定である等の理由から、このパラメータを用いて正確に計算することができず、ソフト処理ではノック対策だけでなく、点火時期制御でさえ行うことができないのが現状である。
【０００３】
従って始動時においてはこのようなパラメータを用いず、ハード回路（バックアップＩＣ）によって、固定的に点火時期制御を行うようにしている。このハード回路によって点火時期制御と共にノック対策を行うのは可能であるが、ハード回路に対してこのようなノック対策も行うようにすると、構成が複雑になり、コストアップにつながる。
【０００４】
従って、始動時、特に高温再始動時に発生するノックを防止するのは困難であった。始動時におけるノックは、燃料圧縮比が高く、吸気温等のエンジンの環境温度が高く、また燃料が多いことが発生要因となって燃料がプラグのスパークする前に爆発して発生するものである。
このため、従来では例えば特開平２−３０９３９号公報に示すように、エンジンの始動時においては上述した点火時期制御の代わりに燃料噴射量を制御する電子燃料噴射制御装置により、ソフト処理にて燃料噴射量を調節し、始動後になれば通常のように点火時期制御により対応するようにしていた。
【０００５】
すなわち、エンジンの始動時、エンジン内の吸気温が所定値以上であればノックが起こり易いと判断して、通常噴射するべき始動時燃料噴射量を所定量だけ減量し、燃料を少なく噴射して、上述したノックの発生要因を抑え、ノッキングを防止していた。このようにソフトで処理すれば構成を簡単にしながらノック対策を図ることができる。
【０００６】
【発明が解決しようとする課題】
エンジンが経年変化すると、例えば吸気温が比較的高くてもノッキングの可能性が低くなる場合がある。これは噴射した燃料が吸気管に付着するため、シリンダ内に吸入される燃料が実際に噴射した燃料よりも少なくなり、シリンダ内の燃料が薄くなってしまうからである。すなわち、余程吸気温が高くならない限り、ノックは殆ど発生しない。
【０００７】
ところが従来では前記所定値は一定であるので、吸気温が該所定値を越えるとノッキングの可能性の有無にかかわらず、無条件に燃料噴射量を減量してしまうことになる。
エンジンを良好に始動させるには燃料を多く噴射して燃料が爆発し易いようにする必要があるが、このように始動時の燃料噴射量を減量する動作を数多くの機会に行うと、特にエンジンが経年変化して古くなってしまったときは、エンジンが始動しないという可能性が非常に高くなってしまう。
【０００８】
本発明は、できる限り始動時燃料噴射量を減量する動作回数を少なくし、エンジンの始動性を向上させることを目的とする。
【０００９】
【課題を解決するための手段】
上記目的を達成するために本発明は、内燃機関の始動状態を検出する始動状態検出手段と、内燃機関の温度を検出する温度検出手段とを備え、前記始動状態検出手段と前記温度検出手段からの出力に基づき、内燃機関の始動時に内燃機関の温度が基準温度を越えたとき燃料噴射量を減量する電子燃料制御装置において、内燃機関にノッキングが発生したか否かを判断する判断手段と、該判断手段によりノッキングが発生した時の温度を基準温度として記憶し、前記記憶された基準温度と前記温度検出手段から検出された温度とを比較し、該温度が前記基準温度よりも高いと判断したときだけ前記燃料噴射量を減量する制御手段とを備えたことを特徴とする。
【００１０】
【作用】
ノッキングが発生したときの温度を基準温度として新たに記憶するので、この基準温度は内燃機関の経年変化に応じた値となる。そしてこの基準温度に基づいて燃料噴射量を減量する制御を行うので、温度が実際にノックする値に達したときしか燃料噴射量を減量せず、始動時燃料噴射量の減量動作回数は少なくなり、エンジンの始動性向上を図ることができる。
【００１１】
【実施例】
図１は本発明の一実施例であるエンジン２を示す全体構成図である。このエンジン２は吸気管７からの空気とインジェクタ８から噴射された燃料との混合気の爆発により動力を発生する。
また１２は圧力検出器、１３はスロットル弁、１４は弁開度検出器、１５は吸気温度検出器、１７は酸素濃度検出器、１８は水温検出器、９はシリンダ３の上部に取り付けられている点火プラグ、１９はエンジン２の回転速度を検出する配電器である。圧電素子からなるノックセンサ２１はシリンダ３付近に設けられており、このエンジン２の振動の大きさを電圧として出力するものである。
【００１２】
１６は点火プラグ９の点火時期を制御する点火時期制御装置と、インジェクタ８の噴射制御を行う電子燃料制御装置とを兼ね備えた制御回路で、マイクロコンピュータ等で実現され、各検出器からの出力信号を入力するための入力インターフェース１６１と、処理回路１６２と、出力インターフェース１６３とを含む。また図示はしないが、処理回路１６２は中央処理装置（ＣＰＵ）、リードオンリメモリ（ＲＯＭ）、常時電源がバックアップされたランダムアクセスメモリ（ＲＡＭ）とを備える。
【００１３】
制御回路１６は検出器１２、１５、１７、１８、配電器１９、そしてノックセンサ２１からの出力信号に基づいて、インジェクタ８の開弁時間によって定められる燃料噴射量を演算してインジェクタ８の動作を制御し（燃料噴射制御）、また点火プラグを点火するべき時期を演算して点火プラグ９を制御する（点火時期制御）。
【００１４】
次に本発明における処理回路１６２の動作について図２を用いて説明する。
図２はこの処理回路１６２の処理動作を示すメインルーチンのフローチャートである。この処理の実行は、例えば数ｍｓｅｃで繰り返される。
スタータスイッチ２０がオンしてエンジン２が回転し始めると処理回路１６２は実行を開始する。まずステップＳ１でエンジン２が始動状態であるか否かが判断される。この判断では配電器１９からの出力信号に基づきエンジン回転数（以下、ＮＥと称する）が４００回転以上であるか否かで行うようにしている。例えばスタータスイッチ２０のオン直後ではエンジン２は始動状態であり、回転数は低く４００回転以下となるため、次のステップＳ２、Ｓ３へ進む。これらステップＳ２、Ｓ３はノッキングの可能性があるか否かを判断するためのもので、ステップＳ２，Ｓ３の判断により、水温検出器１８からの出力信号に基づき現在の水温が基準温度Ａ°Ｃ（ＲＡＭに記憶されている）以上で、且つ吸気温度検出器１５からの出力信号に基づき、現在の吸気温が基準温度Ｂ°Ｃ（同じくＲＡＭに記憶されている）以上であればエンジン２の環境温度が高く、ノッキングの可能性があると判断して次のステップＳ４に進み、フラグが１であるか否か、即ち前回の処理で噴射量の減量処理が行われたか否かを判断する。そして減量処理が行われていなければ次のステップＳ５で始動時における噴射量を所定量減量させる処理を行う。この減量処理は例えば次の計算式により求められる。
【００１５】
噴射量＝始動時噴射量−ノッキング減量補正量
始動時噴射量は水温と吸気温に基づいて予めＲＯＭに記憶されている。始動時噴射量は始動性を良くするため、水温や吸気温が低い程多くなるよう設定されている。ノッキングの可能性があるときは始動時噴射量から上記のノッキング減量補正量分だけ減量させる。このノッキング減量補正量は水温や吸気温に応じて設定され、水温や吸気温が高い程大きくなるようにしてある。
【００１６】
そしてこのステップＳ５で減量処理をおこなったあとは、ステップＳ６でこの処理を実行したことを示すフラグに１を立てる。このようにフラグを設定することによって、このメインルーチン処理が繰り返される毎に噴射量が減量してゆくことを防止する。
次のステップＳ７で上述した噴射量を処理回路１６２内にあるＲＡＭに記憶させておく。そして噴射させるべきタイミングが到来し、処理回路１６２に割込みがかかると（例えば上死点の９０°ＣＡ前）、処理回路１６２はこのＲＡＭに記憶された噴射量だけインジェクタ８に燃料を噴射させる。噴射が完了すれば上記フラグをリセットし、次の減量処理に備える。
【００１７】
ステップＳ８はその他の制御処理、例えば点火時期制御（始動後のノッキング対応制御も含む）等を行うものであり、これら一連の処理がなされるとステップＳ１に戻ることになる。
一方、ステップＳ２，Ｓ３において水温がＡ°Ｃ以下、あるいは吸気温がＢ°Ｃ以下であればノッキングの可能性がないとして通常の始動時噴射量（すなわち上記のノッキング減量補正を行わない）を求める（ステップＳ８）。
【００１８】
また、エンジン２が始動状態でない場合、即ちステップＳ１においてＮＥが４００回転以上になればステップＳ７に進み、始動後の噴射量が求められてこの噴射量によりインジェクタ８から燃料が噴射される。この始動後の噴射量は一般に知られているようにＮＥと圧力検出器１２から検出された吸気管圧力との関係で求められる。
【００１９】
以上説明した基準温度Ａ、Ｂはノッキングの発生の有無によって可変されるものであり、このエンジン２の特性に応じた適切な値として設定されている。すなわち本例の基本動作としてはノッキングが発生すればこのときの水温，吸気温を新たな基準温度Ａ，Ｂとして設定される。すなわち過去最近に起こったノッキング条件のデータ（水温，吸気温）を設定するので、エンジン２の経年変化に応じた基準温度が定められる。従って正確にノッキングの可能性の有無を判断することができ、むやみに噴射量が減量されてしまうことを防止することができる。
【００２０】
次にこの基準温度の設定方法について図３を用いて具体的に説明する。図３は処理回路１６２の割込みルーチンを示すフローチャートである。この割込み処理は基本的にはノックセンサ２１から検出されたノックレベルをモニタするもので、例えば１８０°ＣＡ毎に配電器１９から処理回路１６２へ出力されるＴＤＣ信号（上死点を示す）が到来したのち９０°ＣＡ回転が進んでから、処理回路１６２がモニタを開始し、次のＴＤＣ信号を検知したらモニタを終了するようにしている。点火プラグ９が点火する時期はほぼＴＤＣ信号の発生の直後，或いは直前であり、また始動時のノックは点火する前に発生するので、本例においては点火が行われる前にノックレベルをモニタするようにしている。
【００２１】
まずＴＤＣ信号が到来してから回転が９０°ＣＡ進むと、処理回路１６２のプログラムが割込みモードになり、ステップＱ１においてエンジン２が始動状態であるか否かを判断する。この判断は上述したようにＮＥが４００回転以下であれば始動時と判定するようにしている。従って、ＮＥが４００回転以下であれば次のステップＱ２に進み、このときノックが発生しているか否かを判断する。この判断においてはノックセンサ２１から出力された電圧値（振動の大きさに比例する）を入力インターフェース１６１でＡＤ変換して、振動の大きさをディジタル値として処理回路１６２が読み込むようにする。そして現在の振動の大きさが予め設定された基準値よりも大きければノック状態であると判断するようにしている。
【００２２】
そしてステップＱ２によりエンジン２がノックしていると判断すればステップＱ３〜Ｑ６で基準温度Ａ，Ｂが更新される処理が行われる。すなわち、ステップＱ３において現在の水温が基準温度Ａよりも低ければ、ステップＱ４においてこのときの水温を新たな基準温度ＡとしてＲＡＭに更新・記憶する。また現在の水温が基準温度Ａよりも高ければ、基準温度Ａは変更されない。
【００２３】
このようにして水温が比較的低いときにノックが発生すれば基準温度Ａを下げ、図２で説明したステップＳ２でノッキング可能性をいち早く検知して燃料を減量する。そしてノックが発生していてもこの時の水温が比較的高ければ基準温度Ａをそのままにし、特定の条件（水温が比較的低い）が発生しない限り、これ以上基準温度Ａを下げないようにして、できるだけ燃料の減量を行わないようにする。
【００２４】
尚、基準温度Ａをそのままにするのは次の理由による。すなわち、水温が基準温度Ａよりも高い時に基準温度Ａをこの水温に設定しても、実際には減量（ノック）判定の限界点がこの水温よりも低い場合がある。このように、基準温度Ａを限界点より高くすると、実際にはノックが発生しうる温度であるのにノック可能性大と判断せず、燃料減量を行わなくなってしまうため、基準温度Ａを保持して様子を見る。
【００２５】
次のステップＱ５，Ｑ６は吸気温に対する基準温度Ｂを更新させるものであり、この処理もステップＱ３，Ｑ４の動作と同様で、吸気温が比較的低いときにノックが発生すれば基準温度Ｂを下げ（ステップＱ６）、ノックが発生していても吸気温が比較的高ければ基準温度Ｂをそのままにする。そのままにする理由は、基準温度Ａと同様である。
【００２６】
尚、本例では上述したように水温や吸気温が比較的高い場合は基準温度Ａ，Ｂをそのままにしているが、例えばステップＱ３において水温が基準温度Ａよりも高いと判断したときは、所定温度（例えば１°Ｃ）だけ基準温度Ａを増やすステップをこのステップＱ３の後に付加しても良い。また精度よく行いたければ現在の水温と基準温度Ａとの差をとり、この差の数分の１（例えば５分の１）だけ基準温度Ａを増やすようにしても良い。このようにすれば、減量（ノック）判定の精度にも殆ど影響はでず、またできるだけ減量を行わないようにできる。尚、基準温度Ｂについてもこれと同様にしても良い。また、できるだけ減量を行わないことを最優先するのであれば、環境温度が基準温度よりも高い時に基準温度をこの温度に設定するようにしてもよい。
【００２７】
一方、ステップＱ２において、ノックが発生していないと判断すると、次のステップＱ７〜Ｑ１０で基準温度Ａ，Ｂが更新される処理が行われる。ここでは基準温度Ａ，Ｂを上げようとする処理が行われる。すなわち、ステップＱ７において現在の水温が基準温度Ａよりも高ければ、ステップＱ８においてこのときの水温を新たな基準温度ＡとしてＲＡＭに更新・記憶する。また現在の水温が基準温度Ａよりも低ければ、基準温度Ａは変更されない。このようにして水温が比較的高いときでも、ノックが発生していなければ基準温度Ａを上げてゆき、簡単には燃料の減量を行わないようにする。
【００２８】
次のステップＱ９，Ｑ１０は吸気温に対する基準温度Ｂを更新させるものであり、ここの処理もステップＱ７，Ｑ８の動作と同様で、吸気温が比較的高くてもノックが発生していなければ基準温度Ｂを上げ（ステップＱ１０）、吸気温が比較的低ければ基準温度Ｂをそのままにして、エンジン２の特性にあわせて最適な基準温度Ｂを学習するようにしている。またＮＥが４００回転以上になればステップＱ１により始動後と判断して、上述した基準温度の設定処理を行わない。
【００２９】
図４は以上説明した基準温度の設定についてまとめたものであり、エンジン２が使用されるにつれ、基準温度が変化してゆくことを示している。以下本図を用いて説明する。
上述したように、エンジン２が経年変化すると、ノックするときの環境温度（水温，吸気温）は上昇してゆくが、本発明ではこの温度に追従して基準温度を変化させるようにしている。すなわち、ノックが発生していなければ基準温度を刻々上昇させてゆき、減量判定の限界まで上げるようにする。つまり、図４に示すように減量処理させる範囲を狭めてゆき、余程現在の環境温度が高くない限り、燃料を減量させないようにする。しかし例えば比較的低い環境温度でノックが発生すると、ノックしたときの環境温度（水温，吸気温）を記憶し、これを最新のデータとして保持し、逆に減量処理させる範囲を拡げ、できる限り燃料を減量させてノックが発生しないようにする。その後ノックが発生しなくなったら再度基準温度を上昇させてゆく。
【００３０】
このように、本例ではノックが発生すればこのときの環境温度を基準温度として設定し、また一方でノックが発生していなければ基準温度を刻々上昇させてゆくようにすることで、このエンジン２の特性にあわせて最適な基準温度Ａ，Ｂが学習されることになる。すなわちエンジンの経年変化に追従した信頼性のある基準温度を設定することができ、減量するか否かを正確に判断することができる。
【００３１】
尚、本例の構成に限らず、ノックが発生すればこのときの環境温度を基準温度として設定する構成のみでも充分エンジンの経年変化に追従することができる。また本例においては２つの基準温度（水温，吸気温）を用いるようにしたがこれに限らず、１つの基準温度（水温，あるいは吸気温のどちらか一方）だけで処理してもよい。
【００３２】
【発明の効果】
以上、本発明によれば、エンジンの経年変化に追従し、できる限り始動時燃料噴射量を減量する動作回数を少なくし、エンジンの始動性を向上することができる。
【図面の簡単な説明】
【図１】本発明の一例であるエンジン２の全体構成を示すブロック図である。
【図２】処理回路１６２のメインルーチンを示すフローチャートである。
【図３】処理回路１６２の割り込みルーチンを示すフローチャートである。
【図４】基準温度の変化状態を示すタイミングチャートである。
【符号の説明】
２・・・エンジン
２１・・・ノックセンサ
１６・・・制御回路
１６２・・・処理回路
【図１】
0003574151.tif 000002
【図２】
0003574151.tif 000003
【図３】
0003574151.tif 000004
【図４】
0003574151.tif 000005