(57)【特許請求の範囲】
【請求項１】
スロットル弁（３）の手動開閉手段および自動開閉手段（８）を有し、前記自動開閉手段（８）のためのスロットル開度指示値（ＩＡＣＶ）が、所定のアイドルストッパ開度（θＴＨＳＰ）を初期値として設定される全閉基準値（θＴＨ０）にエンジン冷却水温の関数である水温補正値（ＩＴＷ）および大気圧の関数である大気圧補正値（ＫＩＰＡ）を加算した値であり、エンジン始動時およびその後の暖機中は、前記自動開閉手段であるステッピングモータ（８）を付勢してスロットル開度（θＴＨ）を暖機後のアイドル運転時より大きくするファストアイドルを行うエンジンの制御装置において、
スロットル弁の実開度（θＴＨ）を検出するスロットル開度検出手段（９）を備え、
前記実開度（θＴＨ）から前記水温補正値分（ＩＴＷ）および前記大気圧補正値分（ＫＩＰＡ）を減算した前記全閉基準値（θＴＨ０）を更新基準値（θＴＨＲＮＷ）として設定するとともに、前記全閉基準値（θＴＨ０）の初期値を初期値とし、かつ、上下所定範囲に不感帯（θＴＨＤＺ）を有する全閉更新目標値（θＴＨＴＧＴ）を設定し、前記更新基準値（θＴＨＲＮＷ）が前記不感帯（θＴＨＤＺ）から外れた場合、該更新基準値（θＴＨＲＮＷ）で前記全閉更新目標値（θＴＨＴＧＴ）を置き換える更新手段（４２）を備え、
前記更新手段（４２）が、前記更新基準値（θＴＨＲＮＷ）が予定の更新時間継続して前記不感帯（θＴＨＤＺ）から外れた場合、全閉更新目標値（θＴＨＴＧＴ）の更新を行うように構成され、
前記不感帯（θＴＨＤＺ）が、更新された全閉更新目標値（θＴＨＴＧＴ）に対して新たに設定され、前記全閉基準値（θＴＨ０）が、該更新された全閉更新目標値（θＴＨＴＧＴ）で置き換えられることを特徴とするエンジンの制御装置。
【請求項２】
前記更新手段が、スロットル全閉更新方向が下向き（閉弁方向）か、上向き（開弁方向）であるかを判断する更新方向判断手段を含み、
前記スロットル全閉更新方向が、下向きの場合には下向き更新時間をセットし、上向きの場合には上向き更新時間をセットするタイマをさらに備えていることを特徴とする請求項１記載のエンジンの制御装置。
【請求項３】
前記上向き更新時間が、前記下向き更新時間に比べて長い時間であることを特徴とする請求項１または２記載のエンジンの制御装置。
【請求項４】
前記全閉値からの開度増大時と前記全閉値以外からの開度増大時とによって互いに異なる燃料増量補正値（ＴＡＣＣ）を設定し、基準燃料供給量（Ｔ０）を前記燃料増量補正値（ＴＡＣＣ）で補正するように構成されたことを特徴とする請求項１〜３のいずれかに記載のエンジンの制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、エンジンの制御装置に関し、特に、スロットル弁の全閉を検出し、その検出信号を基準にしたスロットル弁の開度に基づいて燃料供給量を決定するエンジンの制御装置に関する。
【０００２】
【従来の技術】
内燃エンジンの燃料供給量を決定する際に、スロットル弁の全閉位置からスロットル開度を増大させたときと、全閉位置以外からスロットル開度を増大させたときとで燃料供給量の増量補正値を異ならせる制御装置が知られる（特開平１１−３４３９０１号公報）。
【０００３】
一方、暖機運転時にスロットル弁の最小開度を機械的に大きくしてアイドル回転数を増大するファストアイドル機構を有するエンジンが知られる。このようなエンジンにおいては、ファストアイドル運転時と暖機後の通常のアイドル運転時とでスロットル弁の実開度が異なる。そこで、このようにアイドル時の開度が異なってもそのときの最小開度（全閉）を検出できるようにしたスロットル弁全閉検出装置が提案されている（特開昭５６−１０７９２６号公報）。
【０００４】
この装置では、スロットル弁の開度検出信号の最低値を記憶する手段を設け、誤差あるいは予め定められた不感帯の範囲内で新たな開度検出信号の値が記憶値を下回ったときには、前記最低値が、新たな開度検出信号の値によって置き換えられる。スロットル弁の全閉位置を更新することができるこの全閉検出装置によれば、ファストアイドル時であるか通常のアイドル時であるかにかかわらず、全閉位置を検出することができる。
【０００５】
【発明が解決しようとする課題】
全閉位置を示すスロットル弁の開度には、不感帯が設けられ、この不感帯を超えてスロットル弁が開かれたときに、運転者が加速のための操作をしたと判断される。ファストアイドル機構を有するエンジンにおいては、ファストアイドルに対応する大きい開度まで拡大された不感帯が設定される。このようにファストアイドル領域まで不感帯を広げた場合、この不感帯の範囲内では、運転者によりスロットル弁が開かれているのかファストアイドル機構によりスロットル弁が開かれているのかが判定できない。
【０００６】
本発明の目的は、上記問題点を解消し、ファストアイドル機構を有するエンジンにおいて、スロットル弁の全閉状態を正確に判断することができるエンジンの制御装置を提供することにある。
【０００７】
【課題を解決するための手段】
前記目的を達成するために、本発明は、スロットル弁の手動開閉手段および自動開閉手段を有し、前記自動開閉手段のためのスロットル開度指示値が、所定のアイドルストッパ開度を初期値として設定される全閉基準値にエンジン冷却水温の関数である水温補正値および大気圧の関数である大気圧補正値を加算した値であり、エンジン始動時およびその後の暖機中は、前記自動開閉手段であるステッピングモータを付勢してスロットル開度を暖機後のアイドル運転時より大きくするファストアイドルを行うエンジンの制御装置において、スロットル弁の実開度を検出するスロットル開度検出手段を備え、前記実開度から前記水温補正値分および前記大気圧補正値分を減算した前記全閉基準値を更新基準値として設定するとともに、前記全閉基準値の初期値を初期値とし、かつ、上下所定範囲に不感帯を有する全閉更新目標値とを設定し、前記更新基準値が前記不感帯から外れた場合、該更新基準値で前記更新目標値を置き換える更新手段を備え、前記更新手段が、前記更新基準値が予定の更新時間継続して前記不感帯から外れた場合、全閉更新目標値の更新を行うように構成され、前記不感帯が、更新された全閉更新目標値に対して新たに設定される点に第１の特徴がある。
【０００８】
第１の特徴によれば、エンジンの制御において、スロットル弁が自動開閉手段で動かされる場合でも、全閉値は、実開度から水温補正値分や大気圧補正値分を除いた全閉更新目標値で判断される。したがって、スロットル弁を自動開閉手段で動かした場合も、全閉更新目標値に関する不感帯は小さく維持したままでよい。
【００１０】
また、第１の特徴によれば、経時劣化等を考慮して全閉更新目標値を更新する場合、全閉目標更新値に関する更新のための不感帯を小さくしたままでよいので、わずかな劣化による更新基準値の変化を感知して全閉更新目標値の更新を行うことができる。
【００１１】
また、第１の特徴によれば、瞬間的な全閉状態の変化を検出して全閉値としての更新基準値が更新されるのを防止することができる。
【００１２】
さらに、本発明は、第１〜第３のいずれかの特徴に加えて、前記全閉位置からの開度増大時と前記全閉位置以外からの開度増大時とによって互いに異なる燃料増量補正値を設定し、基準燃料供給量を前記燃料増量補正値で補正するように構成された点に第４の特徴がある。第４の特徴によれば、検出される正確な全閉値に基づいて、基準燃料供給量を補正することができる。
【００１３】
【発明の実施の形態】
以下、図面を参照して本発明の一実施形態を説明する。図２は、本発明の一実施形態に係るエンジン制御装置のシステム構成を示すブロック図である。同図において、エンジン１の吸気管２には吸入空気量を制御するスロットル弁３が設けられる。スロットル弁３は、枢軸４およびこの枢軸４に固定される弁体５を有する。弁体５は枢軸４を中心にして予定角度の範囲で回動自在である。
【００１４】
枢軸４の一端にはスロットルドラム６が固着され、このスロットルドラム６は、図示しないケーブルによりエンジン１のアクセル操作子（例えば、自動二輪車ではアクセルグリップ）に接続される。さらに、スロットルドラム６はドラム開閉用のカム７を介してステッピングモータ８が係合する。ステッピングモータ８の回転がカム７で揺動に変換され、このカム７の揺動によってスロットルドラム６が揺動される。
【００１５】
スロットルドラム６の揺動角度つまりスロットル弁３の開度（以下、「スロットル開度」という）は、手動開閉手段としてのアクセル操作子の操作に対応して決定されるとともに、アイドル運転時のスロットル開度θTHは自動開閉手段としてのステッピングモータ８に供給されるステップ数つまりスロットル弁３の開度指示値IACVによって決定される。スロットル開度θTHは枢軸４の他端に設けられるスロットル開度センサ９で検出される。スロットル開度センサ９はポテンショメータで構成することができる。
【００１６】
さらに、吸気管２には吸気管負圧PBを検出する吸気管圧力センサ１０、吸気温度TAを検出する吸気温センサ３４および燃料噴射弁１１が設けられる。エンジン１の燃焼室１２に開口する吸気口には吸気弁１３が設けられる。燃焼室１２には排気管１４も結合され、この排気管１４の、燃焼室１２側端部には排気口が形成され、排気口には排気弁が設けられる（いずれも図示しない）。排気管１４には、排気中の酸素濃度O2を検出するＯ2センサ１５およびマフラ３５が設けられる。
【００１７】
エンジン１の水冷ジャケット１６には、エンジン１の温度を代表する冷却水の温度TWを検出するための水温センサ１７が設けられる。クランク軸１８の周りには、予定のクランク角（例えば３０°）毎にパルス信号を出力する回転センサ１９と、ピストンの上死点（ＴＤＣ）を検出するＴＤＣセンサ２０とが設けられる。さらに、エンジン１には、図示しない変速機の変速段位置を検出して位置信号SSを発生する変速検出センサ２１が設けられる。エンジン１の近傍には大気圧PAを検出する大気圧センサ２２が設けられる。
【００１８】
上記各センサによる検出信号は、電子制御ユニット（以下、「ＥＣＵ」という）２３に入力される。各センサ９，１０，１５，１７，２１，２２、３４による検出信号θTH、PB、O2、TW、SS、PA、TAは、レベル変換回路群２４に供給されて、所定レンジの電圧信号に変換された後、ＥＣＵ２３内のマルチプレクサ２５に入力される。マルチプレクサ２５は所定の読み込みタイミング毎に前記各センサ９，１０，１５，１７，２１，２２，３４による検出信号を順次Ａ／Ｄ変換器２６に供給する。Ａ／Ｄ変換器２６は、供給されるアナログ信号をデジタル信号に変換し、入出力バス２７に供給する。
【００１９】
また、回転センサ１９およびＴＤＣセンサ２０の検出信号は波形整形回路２８で波形整形された後、ＣＰＵ２９の割り込み入力、および回転数カウンタ３０へ入力される。回転数カウンタ３０は回転センサ１９による検出信号に基づいてエンジン１の回転数を代表する信号を入出力バス２７へ供給する。
【００２０】
入出力バス２７には、ＲＯＭ３１、ＲＡＭ３２、ステッピングモータ８の駆動回路３３および燃料噴射弁１１の駆動回路３６が接続される。燃料噴射弁１１はＣＰＵ２９から供給される燃料噴射制信号つまり噴射時間ＴOUTに基づいて決定されるデューティ比で駆動され、このデューティ比に応じた量の燃料が吸気口に向けて噴射される。
【００２１】
図３は、エンジン１のアイドル運転時のスロットル開度（実開度θTHおよび実開度θTHから各種補正値を減算した値を含む）の変化を示す図である。同図において、実開度θTHはステッピングモータ８に供給される開度指示値IACVによって決定される。実開度θTHは、燃料噴射制御において、例えば、加速時制御やアイドル判断に使用される。
【００２２】
エンジン始動前は、実開度θTHは「０」である。時期ｔ０でイグニッションスイッチがオンにされると、アイドルストッパ開度（初期設定値）θTHSPに水温補正値ITWおよび大気圧補正値KIPAが加算された値が開度指示値IACVに設定されてエンジン１が始動される。すなわち、エンジン始動時およびその後の暖機中は、ステッピングモータ８を付勢してスロットル開度を暖機後のアイドル運転時より大きくするファストアイドルが行われる。スロットル開度を増大方向に補正する補正値として水温補正値ITWが使用される。なお、前記アイドルストッパ開度θTHSPは、初期値としてメモリ（例えばＥＥＰＲＯＭ）に設定される。
【００２３】
スロットル弁３はファストアイドル時やフィードバック制御によりステッピングモータ８で開閉される。したがって、スロットル開度の変化に追従してスロットル開度の基準値である全閉位置つまりスロットル全閉基準値（以下、単に「全閉基準値」という）θTH0を動かしたのでは制御が煩雑である。
【００２４】
また、全閉基準値θTH0には不感帯を設けるが、この不感帯をステッピングモータ８による開度変化に追従させて拡大するとファストアイドル機構により開度変化があったのか人の操作によるものか判断できない。さらに、スロットル弁３等の経時劣化等を考慮して全閉基準値θTH0は変化させる全閉値更新制御を行うのが好ましいが、フィードバック制御によって変化する実開度θTHに従って更新を行うことは困難である。
【００２５】
そこで、本実施形態では、スロットル全閉基準値θTH0に対して狭い不感帯を設定する。そして、フィードバック制御中に実開度θTHから大気圧補正値KIPAを減算した値が、全閉更新目標値θTHRNWから不感帯（全閉開度更新用不感帯）の幅以上変動したときに全閉基準値θTH0を更新することとした。すなわち、全開基準値θTH0の更新には実開度θTHを直接反映させないようにした。
【００２６】
エンジン始動直後の暖機中つまり時期ｔ１〜時期ｔ２の期間では、エンジン１の冷却水温TWに応じた水温補正値ITWがアイドルストッパ開度θTHSPに加算される。したがって、この暖機中は、その後の期間と比べて実開度θTHは大きくなり、いわゆるファストアイドル期間となる。暖機中は、エンジン１の冷却水温度TWが徐々に上昇し、冷却水温TWの上昇に応じて水温補正値ITWが小さくなるので、実開度θTHも次第に小さくなる。
【００２７】
暖機が終了すると、時期ｔ２〜ｔ４はフィードバック（Ｆ／Ｂ）制御期間となる。フィードバック制御中は水温補正値ITWはほとんどゼロであり、実開度θTHは、アイドルストッパ開度θTHSPに大気圧補正値KIPAおよびフィードバック補正値IFBを加算した値になる。フィードバック補正値IFBはアイドル回転数の目標値に対するエンジンの実回転数Neの偏差に対応する値である。
【００２８】
このフィードバック制御中は、実開度θTHから大気圧補正値KIPAを減算した値、換言すれば、アイドルストッパ開度θTHSPにフィードバック補正値IFBが加算された値（以下、「更新基準値」という）θTHRNWがスロットル全閉更新目標値（以下、単に「全閉更新目標値」という）θTHTGTに関して設けられる不感帯から外れた場合に全閉基準値θTH0が更新される。全閉基準値θTH0の更新についてはさらに後述する。図３では、時期ｔ３で全閉基準値θTH0が下向きに、つまり小さい値に更新される。時期ｔ４でイグニッションスイッチ・オフとなり、実開度θTHは「０」に向かって小さくなる。
【００２９】
図４は、フィードバック制御中のスロットル開度の変化を示す要部の図である。同図において、全閉更新目標値θTHTGTが設けられ、この全閉更新目標値θTHTGTには不感帯θTHDZが設けられる。全閉更新目標値θTHTGTの初期値としては、全閉基準値θTH0の初期値（アイドルストッパ開度の初期値で決定される）が設定される。更新基準値θTHRNWが全閉更新目標値θTHTGTに関して設定される不感帯θTHDZから外れると、全閉更新目標値θTHTGTは、更新基準値θTHRNWで置き換えられる（図３の時期ｔ３’）。全閉更新目標値θTHTGTが変化すると、全閉基準値θTH0もこれに伴って更新される。但し、全閉更新目標値θTHTGTが変更された後、予定の更新時間が経過しても、依然として元の全閉更新目標値θTHTGTの不感帯θTHDZから外れていた場合に限って実際に全閉基準値θTH0が更新される（図３の時期ｔ３）。
【００３０】
図５は、大気圧補正値KIPAと大気圧PAとの関係を設定したテーブルの一例を示す図である。このテーブルには、大気圧の変化によって不足する空気量を補正するように大気圧補正値KIPAが設定される。大気圧PAに基づき、このテーブルを参照して大気圧補正値KIPAを求めることができる。
【００３１】
図６は、水温補正値ITWとエンジン１の冷却水温度TWとの関係を設定したテーブルの一例を示す図である。このテーブルにはエンジン１の冷却水温度TWに応じて水温補正値ITWが設定される。エンジン１の冷却水温度TWに基づき、このテーブルを参照して水温補正値ITWを求めることができる。
【００３２】
図７、図８は、スロットル弁全閉更新判断のフローチャートである。図７において、ステップＳ１では、エンジン１が無負荷か否かを判断する。この判断は変速検出センサ２１の出力信号SSをもとに、変速機がニュートラルにあるか否かによって行われる。変速機の位置がニュートラルつまり無負荷であるときには、ステップＳ２に進んで暖機中か否かを判断する。この判断は水温センサ１７によって検出されるエンジン水温TWが、暖機中判断のための基準温度TW0より低いか否かによって行われる。エンジン水温TWが基準温度TW0より高くて暖機が終了していると判断されればステップＳ３に進む。無負荷でない場合（ステップＳ１否定）、または暖機中でない場合（ステップＳ２肯定）は、ステップＳ１１に進んで、スロットル全閉更新許可を示すフラグＦ０をクリア（＝０）にする。つまりスロットル全閉更新不許可が記憶される。
【００３３】
ステップＳ３では、回転数カウンタ３０の出力に基づいて検出される、エンジン回転数Nｅが、予め低回転域に設定されたアイドル判定回転数NeIDL以下か否かを判断する。エンジン回転数Neがアイドル判定回転数NeIDL以下であった場合は、ステップＳ４に進んで現在のスロットル開度（実開度）θTHから大気圧補正値KIPAを減算した値（θTH-KIPA）つまり更新基準値θTHRNWが、予め設定されるスロットル全閉更新上限開度θTHU以下かを判断する。
【００３４】
ステップＳ４が肯定ならばステップＳ５に進んで、更新基準値θTHRNWがスロットル全閉更新目標範囲内か否か、つまりスロットル全閉更新目標値θTHTGTの不感帯範囲θTHDZ内か否かを判断する。
【００３５】
エンジン回転数Neがアイドル判定回転数NeIDL以下でない場合（ステップＳ３否定）、または更新基準値θTHRNWがスロットル全閉更新上限限度θTHU以下でない場合（ステップＳ４否定）は、ステップＳ１２に進んで、スロットル全閉更新許可を示すフラグＦ０をクリアにする。さらにステップＳ１３では、スロットル全閉更新上限開度θTHUによってスロットル全閉更新目標値θTHTGTを置き換える。
【００３６】
ステップＳ５が否定ならばステップＳ６に進み、スロットル全閉更新許可か否かをフラグＦ０に基づいて判別する。最初はフラグＦ０がクリアされていて、スロットル全閉更新不許可となっているので、ステップＳ６は否定となり、ステップＳ７に進む。ステップＳ７では、スロットル全閉更新方向が下向きか（閉弁方向）か上向きか（開弁方向）を判断する。下向き更新ならば、ステップＳ８に進んで下向き更新時間をタイマにセットする。また、上向き更新ならばステップＳ９に進んで上向き更新時間をタイマにセットする。下向き更新時間は例えば０．３秒であり、上向き更新時間は下向き更新時間より長い時間、例えば３秒である。ステップＳ１０ではスロットル全閉更新許可を示すフラグＦ０をセット（＝１）する。ステップＳ６が肯定の場合、つまりスロットル全閉更新許可を示すフラグＦ０がセットされている場合は、ステップＳ７〜Ｓ１０をスキップしてステップＳ１６（図８）に進む。
【００３７】
更新基準値θＴＨＲＮＷが、スロットル全閉更新目標値θＴＨＴＧＴの不感帯θＴＨＤＺ内でない場合は、ステップＳ５は肯定となり、ステップＳ１４に進んでフラグＦ０をクリアにする。続いて、ステップＳ１５では更新基準値θＴＨＲＮＷによってスロットル全閉更新目標値θＴＨＴＧＴを置き換える。
【００３８】
図８のステップＳ１６では、スロットル全閉更新許可（Ｆ0＝１）か、否（Ｆ0＝０）かを判断する。スロットル全閉更新許可（Ｆ0＝１）の場合は、ステップＳ１７に進み、前記下向きまたは上向きの更新時間が経過したか否かを判断する。
【００３９】
更新時間が経過した場合には、ステップＳ１８に進んで全閉基準値θTH0によってスロットル全閉更新目標値θTHTGTを置き換える。ステップＳ１９では、更新された全閉基準値θTH0をメモリ（ＥＥＰＲＯＭ）に書き込む。ステップＳ２０では全閉基準値に大気圧補正値KIPAと水温補正値ITWとを加算した値をスロットル全閉値θTHCLSとして記憶する。
【００４０】
スロットル全閉更新許可を示すフラグＦ０がセットされていない場合（ステップＳ１６否定）、または前記更新時間が経過していない場合（ステップＳ１７否定）は、ステップＳ１８、Ｓ１９をスキップしてステップＳ２０に進む。
【００４１】
上述のように全閉基準値θTH0は水温補正値ITWや大気圧補正値KIPAを除去した値（更新基準値）に基づいて更新されるとともに、燃料噴射制御は、水温補正値ITWや大気圧補正値KIPAを含むスロットル弁３の実開度θTHを使用して実行される。
【００４２】
図１は、全閉度検出および更新制御の要部機能を示すブロック図である。同図において、スロットル開度指示値算出部４０はアイドルストッパ値（初期値）θTHSPと、大気圧PAと、冷却水温TWとに基づいてスロットル開度指示値を算出し、駆動回路３３に供給する。アイドルストッパ値θTHSTPは全閉基準値θTH0で更新される。駆動回路３３はスロットル開度指示値に応答してステッピングモータ８を駆動し、スロットル弁３の開度を変化させる。スロットルセンサ９は検出したスロットル開度θTHを全閉基準値算出部４１に入力する。
【００４３】
全閉更新基準値算出部４１はスロットル開度θTHから冷却水温TWおよび大気圧PAを減算して全閉更新基準値θTHRNWを求める。更新部４２では全閉更新目標値θTHTGTに対する全閉更新基準値θTHRNWの偏倚を検出し、予定の不感帯幅以上偏倚していれば全閉基準値θTH0を全閉更新目標値θTHTGTで更新する。全閉更新目標値θTHTGTの初期値はアイドルストッパ値θTHSTPであり、その後は、前記不感帯幅以上偏倚した全閉基準値θTH0で置き換えられる。更新された全閉基準値θTH0は全閉基準値記憶部４３に記憶される。
【００４４】
燃料供給量補正部４４はエンジン状態を表すパラメータに基づいて基本燃料供給量（噴射時間）の補正を行い、補正された燃料供給量指示値としての燃料噴射時間が燃料噴射弁の駆動回路３６に供給される。燃料供給量補正部４４では全閉基準値θTH0に基づく全閉値θTHCLSが基本燃料供給量の補正に使用される。
【００４５】
続いて、スロットル開度θTHを使用した燃料噴射制御の一例を説明する。図９は、スロットル弁の開度を検出するサブルーチンのフローチャートである。この処理は、予定時間毎、例えば、回転センサ１９の検出信号に基づいて、クランク角３０°毎に実行される。ステップＳ１０１ではスロットル開度θTHを検出する。ステップＳ１０２ではスロットル全閉か否かを、スロットル開度θTHがスロットル全閉値θTHCLS以下か否かで判断する。ステップＳ１０２が肯定ならばステップＳ１０３に進み、全閉状態を示すフラグＦ１をセットする。
【００４６】
一方、ステップＳ１０２が否定の場合、つまりスロットル弁３が全閉状態でない場合は、ステップＳ１０４に進み、前記フラグＦ１がセットされているか否かにより、前回検出時が全閉状態であったか否かを判断する。ステップＳ１０４が肯定の場合、つまり全閉状態からスロットル開度が増大されたと判断された場合は、ステップＳ１０５に進んで全閉からのスロットル開度増大を示すフラグＦ２をセットする。ステップＳ１０６では、フラグＦ１をクリアにする。ステップＳ１０４が否定の場合は、全閉以外の状態からスロットル開度θTHが変化したと判断し、ステップＳ１０５をスキップしてステップＳ１０６に進む。つまり、この場合フラグＦ２はセットされない。
【００４７】
図１０は、燃料の増量補正値ＴACCを検索するサブルーチンを示すフローチャートである。この処理は、予定時間毎、例えば、ＴＤＣ毎に実行される。ステップＳ２１では、まず、フラグＦ３がセットされているか否かを判断する。このフラグＦ３は、スロットル弁３が全閉状態から開かれたことを判別したときの増量補正値ＴACC検索処理を実行中であるか否かを示すフラグである。フラグＦ３がセットされていないと判別した場合には、ステップＳ２２でフラグＦ２がセットされているか否かを判断する。
【００４８】
フラグＦ２がセットされていた場合は、スロットル弁３が全閉状態から開かれたと判断され、ステップＳ２３に進んでフラグＦ２がクリヤにされる。次いで、ステップＳ２４では、スロットル弁３が全閉状態から開かれたことを判別した時点からの燃料の噴射回数ｎが予定回数、例えば８回より大きいか否かを判断する。燃料の噴射回数ｎが予定回数以下であると判別した場合には、ステップＳ２５で燃料の噴射回数ｎをインクリメント（＋１）させる。ステップＳ２６では、図１１に示すような燃料の噴射回数ｎと増量補正値ＴACCとの対応関係から燃料の噴射回数に応じた増量補正値ＴACCを検索する。ステップＳ２７では、フラグＦ３をセットし、本サブルーチンを終了する。
【００４９】
ステップＳ２７でフラグＦ３がセットされているので、次にこのＴACC検索ルーチンを実行する場合には、ステップＳ２１の判断は肯定となり、ステップＳ２２，Ｓ２３はスキップされてステップＳ２４に進む。ステップＳ２４で燃料の噴射回数ｎが予定回数以下であると判別した場合には、上述したステップＳ２５、Ｓ２６及びＳ２７の処理を実行して本サブルーチンを終了する。このように、スロットル弁３が全閉状態から開かれた場合には、ステップＳ２４において、燃料の噴射回数ｎが所定回数より大きいと判別するまで、上述した処理が繰り返し実行される。
【００５０】
一方、ステップＳ２４において、燃料の噴射回数ｎが予定回数より大きいと判別したときには、ステップＳ２８で燃料の噴射回数ｎを「０」で初期化する。ステップＳ２９では、前回検出したスロットル開度θTH(前回)と今回検出したスロットル開度θTH(今回)との差ΔθTHを算出する。ステップＳ３０では、スロットル開度の差ΔθTHが予定値、例えば０．３度以上であるか否かを判断する。差ΔθTHが予定値以上であると判別した場合には、ステップＳ３１で、ＲＯＭ３１に記憶されている差ΔθTHと増量補正値ＴACCとの対応関係のマップから差ΔθTHに応じた増量補正値ＴACCを検索し、ステップＳ３２でフラグＦ３をクリアにして本サブルーチンを終了する。一方、ステップＳ３０において差ΔθTHが予定値より小さいと判別した場合には、ステップＳ３２でフラグＦ３をクリアにして本サブルーチンを終了する。
【００５１】
また、図９のステップＳ１０５において、フラグＦ２がセットされていない場合、すなわち、スロットル弁３が全閉状態から開かれた場合でないと判別したときには、フラグＦ３はクリアされている。したがって、ステップＳ２１の判別結果は否定となり、かつ、ステップＳ２２でも判別結果は否定となってステップＳ２９に進む。ステップＳ２９、Ｓ３０およびＳ３１では、既述の処理が実行され、本サブルーチンを終了する。
【００５２】
本サブルーチンを終了した後、例えば、ＴOUT＝Ｔ0(Ne，PB)×ＫTA×ＫTW×ＫPA×ＫO2＋ＴACC…（式１）から燃料噴射時間ＴOUTを算出し、燃料噴射弁１１から噴射する燃料噴射量が制御される。ここで、Ｔ0(Ne，PB)は、エンジン１の回転数Neと吸気管負圧PBとから算出した基本燃料噴射時間、ＫTAは吸気温度TAによる補正係数、ＫTWはエンジン１の冷却水温度による補正係数、ＫPAは大気圧PAによる補正係数、ＫO2は排気ガス中に含まれる酸素濃度O2による補正係数である。
【００５３】
図１１は、燃料の噴射回数ｎと増量補正値ＴACCとの関係を示すグラフである。増量補正値ＴACCは、噴射回数ｎが「１」であるときが最も大きく、噴射回数ｎが増すにつれて小さくなるように設定される。噴射回数ｎと増量補正値ＴACCとの関係をこのようにすることにより、スロットル弁３を全閉状態から開いて加速する場合に、良好な加速性能を得ることができる。
【００５４】
【発明の効果】
以上の説明から明らかなとおり、請求項１の発明によれば、ファストアイドル運転のようにエンジン状態に応じて自動的にスロットル弁を開閉する手段を有するエンジンの制御において、スロットル弁が自動的に開閉されたときでも、スロットル弁の全閉値は全閉基準値に加算される補正値を除いた分として検出される。したがって、全閉値の不感帯を拡大する必要がなくなり、狭い不感帯とすることができる。その結果、この狭い不感帯を超えた場合をもって、スロットル弁が手動開閉されたことを検出することができる。
【００５５】
また、請求項１の発明によれば、狭い不感帯を超えたときに全閉値が更新されるので、劣化等による全閉度のわずかな変化を捕捉して更新を行うことができる。したがって、全閉状態の検出精度の向上を図ることができる。特に、瞬間的な変化によっては、全閉度の更新は行われない。また、請求項４の発明によれば、全閉位置が正確に検出されるので、燃料増量補正の精度が向上する。
【図面の簡単な説明】
【図１】  本発明の一実施形態に係る制御装置の要部機能を示すブロック図である。
【図２】  本発明の一実施形態に係る制御装置を備えたエンジンのシステム構成図である。
【図３】  アイドル運転時のスロットル開度の変化を示す図である。
【図４】  フィードバック制御中のスロットル開度の変化を示す要部の図である。
【図５】  スロットル開度指示値の水温補正値を示す図である。
【図６】  スロットル開度指示値の大気圧補正値を示す図である。
【図７】  スロットル全閉更新制御のフローチャート（その１）である。
【図８】  スロットル全閉更新制御のフローチャート（その２）である。
【図９】  スロットル開度検出ルーチンのフローチャートである。
【図１０】  燃料供給量の増量補正値検索ルーチンのフローチャートである。
【図１１】  燃料の噴射回数と増量補正値との関係を示すグラフである。
【符号の説明】
１…エンジン、  ３…スロットル弁、  ８…ステッピングモータ、  ９…スロットルセンサ、  １１…燃料噴射弁、  １７…水温センサ、  ２２…大気圧センサ、  ２３…ＥＣＵ
【図１】
0004817216.tif 000002
【図２】
0004817216.tif 000003
【図３】
0004817216.tif 000004
【図４】
0004817216.tif 000005
【図５】
0004817216.tif 000006
【図６】
0004817216.tif 000007
【図７】
0004817216.tif 000008
【図８】
0004817216.tif 000009
【図９】
0004817216.tif 000010
【図１０】
0004817216.tif 000011
【図１１】
0004817216.tif 000012