(57)【特許請求の範囲】
【請求項１】
内燃機関の吸気通路に配設されたスロットル弁と、
前記内燃機関の運転状態に基づいて目標スロットル弁開度を演算する目標スロットル弁開度演算手段と、
前記スロットル弁の実開度である実スロットル弁開度を検出する実スロットル弁開度検出手段と、
前記実スロットル弁開度が前記目標スロットル弁開度に近づくように前記スロットル弁を開閉駆動するアクチュエータと、
前記スロットル弁が全閉状態となる開度より若干大きい開度に設定されたオープナ開度より前記実スロットル弁開度が大きいときに同スロットル弁を閉方向に付勢するとともに、同実スロットル弁開度が同オープナ開度より小さいときに同スロットル弁を開方向に付勢する付勢手段を有し、前記アクチュエータが同スロットル弁を駆動していないときに同実スロットル弁開度を同オープナ開度に保持するためのオープナ機構と、
前記目標スロットル弁開度に基づいて、前記実スロットル弁開度の推定値である推定スロットル弁開度を演算する第１推定スロットル弁開度演算手段と、
少なくとも前記オープナ開度のばらつきの範囲内にて予め設定されているオープナ開度上限値とオープナ開度下限値との間の範囲内において、前記第１推定スロットル弁開度演算手段により演算された前記推定スロットル弁開度が減少しているときに、前記実スロットル弁開度が減少しながら同オープナ開度を通過する過程にて同オープナ開度に到達したと判定する判定手段と、
前記判定手段により前記実スロットル弁開度が前記オープナ開度に到達したと判定された時点から所定時間に渡り、前記推定スロットル弁開度が、前記実スロットル弁開度がとり得る値のうちの上限値以上であって、かつ前記オープナ開度上限値以下の値になるように、前記第１推定スロットル弁開度演算手段に優先して同推定スロットル弁開度を演算する第２推定スロットル弁開度演算手段と、
前記推定スロットル弁開度に応じた吸入空気量に対して所定の目標空燃比を得るために必要な燃料噴射量を演算する燃料噴射量演算手段と、
前記燃料噴射量の燃料を噴射する燃料噴射手段と、
を備えた内燃機関の燃料噴射量制御装置。
【請求項２】
請求項１に記載された内燃機関の燃料噴射量制御装置において、
前記第１推定スロットル弁開度演算手段及び第２推定スロットル弁開度演算手段は、所定の演算周期毎に前記推定スロットル弁開度を演算し、
前記判定手段は、前記第１推定スロットル弁開度演算手段が演算した前記推定スロットル弁開度における今回値が前回値よりも小さく、かつ同前回値が前記オープナ開度下限値よりも大きく、かつ同今回値が前記オープナ開度上限値よりも小さいときに、前記実スロットル弁開度が前記オープナ開度に到達したと判定するとともに、
前記第２推定スロットル弁開度演算手段は、前記前回値が前記オープナ開度上限値未満の場合には、前記所定時間内において前記推定スロットル弁開度が同前回値以上で同オープナ開度上限値以下の範囲内の任意の一定値に保持されるように同推定スロットル弁開度を演算し、同前回値が同オープナ開度上限値以上の場合には、同所定時間内において同推定スロットル弁開度が同オープナ開度上限値に保持されるように同推定スロットル弁開度を演算するように構成されたことを特徴とする内燃機関の燃料噴射量制御装置。
【請求項３】
内燃機関の吸気通路に配設されたスロットル弁と、
前記内燃機関の運転状態に基づいて目標スロットル弁開度を演算する目標スロットル弁開度演算手段と、
前記スロットル弁の実開度である実スロットル弁開度を検出する実スロットル弁開度検出手段と、
前記実スロットル弁開度が前記目標スロットル弁開度に近づくように前記スロットル弁を開閉駆動するアクチュエータと、
前記実スロットル弁開度が、前記スロットル弁が全閉状態となる開度より若干大きい開度に設定されたオープナ開度より大きいときに同スロットル弁を閉方向に付勢するとともに、同実スロットル弁開度が同オープナ開度より小さいときに同スロットル弁を開方向に付勢する付勢手段を有し、前記アクチュエータが同スロットル弁を駆動していないときに同実スロットル弁開度を同オープナ開度に保持するためのオープナ機構と、
前記目標スロットル弁開度に基づいて、前記実スロットル弁開度の推定値である推定スロットル弁開度を演算する第１推定スロットル弁開度演算手段と、
前記第１推定スロットル弁開度演算手段により演算された前記推定スロットル弁開度が、前記オープナ開度のばらつきの範囲内において予め設定されているオープナ開度上限値を増加しながら通過しているときに、前記実スロットル弁開度が増加しながら同オープナ開度を通過する過程にて同オープナ開度に到達したと判定する判定手段と、
前記判定手段により前記実スロットル弁開度が前記オープナ開度に到達したと判定された時点から所定時間に渡り、前記推定スロットル弁開度が前記オープナ開度上限値になるように、前記第１推定スロットル弁開度演算手段に優先して同推定スロットル弁開度を演算する第２推定スロットル弁開度演算手段と、
前記推定スロットル弁開度に応じた吸入空気量に対して所定の目標空燃比を得るために必要な燃料噴射量を演算する燃料噴射量演算手段と、
前記燃料噴射量の燃料を噴射する燃料噴射手段と、
を備えた内燃機関の燃料噴射量制御装置。
【請求項４】
請求項３に記載された内燃機関の燃料噴射量制御装置において、
前記第１推定スロットル弁開度演算手段及び第２推定スロットル弁開度演算手段は、所定の演算周期毎に前記推定スロットル弁開度を演算するとともに、
前記判定手段は、前記第１推定スロットル弁開度演算手段が演算した前記推定スロットル弁開度における前回値が前記オープナ開度上限値以下であり、かつ同推定スロットル弁開度における今回値が前記オープナ開度上限値よりも大きいときに、前記実スロットル弁開度が前記オープナ開度に到達したと判定するように構成されたことを特徴とする内燃機関の燃料噴射量制御装置。
【請求項５】
請求項１乃至請求項４のいずれか一項に記載された内燃機関の燃料噴射量制御装置であって、
前記実スロットル弁開度検出手段により検出された実スロットル弁開度と、前記オープナ開度のばらつきの範囲内において予め設定されている同オープナ開度の初期値との偏差が所定の判定時間に渡り所定値未満となり、かつ同実スロットル弁開度が同判定時間に渡り略一定となる状態が発生している場合に、同状態における同実スロットル弁開度に少なくとも基づいて、前記オープナ開度上限値及び／又はオープナ開度下限値を更新する更新手段を備えた内燃機関の燃料噴射量制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内燃機関の燃料噴射量制御装置に係り、特に、スロットル弁を駆動するアクチュエータが同スロットル弁を駆動していないときにスロットル弁開度をオープナ開度に保持するためのオープナ機構を備えた燃料噴射量制御装置に関する。
【０００２】
【従来の技術】
電子制御燃料噴射式の内燃機関においては、吸気行程直前又は吸気行程中にあって燃料噴射による燃料の供給が必要な気筒（以下、「燃料噴射気筒」と称呼する。）の同吸気行程における吸入空気量を求め、この求めた吸入空気量に応じた量の燃料を、最も遅くとも同吸気行程に対する吸気弁閉弁時（吸気弁の状態が開状態から閉状態に変化する時点）までに、場合によっては同吸気行程開始前までに、噴射する必要がある。
【０００３】
このため、例えば、特開平１０−１６９４６９号公報に開示された内燃機関の制御装置は、アクセルペダルの位置等の内燃機関の運転状態に応じて設定される（暫定）目標スロットル弁開度を、図１６のタイムチャートに示したように、所定の遅延時間TDだけ遅延し、この遅延した暫定目標スロットル弁開度を目標スロットル弁開度TAtとして設定して、スロットル弁を駆動するアクチュエータに出力するようになっている。これにより、現時点から遅延時間TDだけ先の目標スロットル弁開度TAtの変化を現時点にて知ることが可能となる。
【０００４】
そして、この制御装置は、目標スロットル弁開度TAtに基づいて、スロットル弁の制御遅れ等を考慮しながら実際のスロットル弁開度（実スロットル弁開度）を燃料噴射気筒の吸気弁閉弁時まで前もって予測・推定し、少なくとも同推定した推定スロットル弁開度TAestに基づいて燃料噴射気筒の吸気弁閉弁時における吸入空気量を同吸気弁閉弁時よりも前の時点で予測・推定するとともに、その予測した吸入空気量に対して所定の目標空燃比を得るために必要な燃料噴射量の燃料を同気筒に対して噴射するようになっている。従って、この種の制御装置においては、燃料噴射量の計算に用いられる推定スロットル弁開度TAestを精度よく演算する必要がある。
【０００５】
ところで、上記したようにスロットル弁をアクチュエータにより駆動する装置（電子制御スロットル弁装置）を備えた内燃機関の制御装置においては、同アクチュエータの故障時等において、路肩への退避走行等の車両の必要最小限度の走行を可能にするため、同電子制御スロットル装置に所謂オープナ機構を搭載する技術が知られている。
【０００６】
オープナ機構は、例えば、特開２００１−１３２５１５号公報に開示されているように、スロットル弁が全閉状態となる開度より若干大きい開度に設定されたオープナ開度より実スロットル弁開度が大きいときにスロットル弁を閉方向に付勢するとともに、実スロットル弁開度がオープナ開度より小さいときにスロットル弁を開方向に付勢する付勢手段を有している。これにより、アクチュエータがスロットル弁を駆動していないときに実スロットル弁開度がオープナ開度に保持され、オープナ開度により確保される吸入空気量により、内燃機関の運転を必要最小限だけ継続させることができる。
【０００７】
しかし、上記内燃機関の制御装置（電子制御スロットル弁装置）にオープナ機構が搭載されると、図１６（ａ），（ｂ）に示したように、目標スロットル弁開度TAt（一点鎖線にて表示）がオープナ開度（例えば、オープナ開度は、設計上の中央値TACNTになっているものとする。）を通過するように変化した場合、目標スロットル弁開度TAtに追従する実スロットル弁開度TA（実線にて表示）が、オープナ開度TACNTを通過する過程においてオープナ開度TACNTに到達した後、所定時間に渡りオープナ開度TACNTに保持され、その後目標スロットル弁開度TAtに追従するという現象が発生する。以下、実スロットル弁開度が、オープナ開度を通過する過程においてオープナ開度に到達した後一時的に同オープナ開度に保持される現象を「特異現象」と称呼する。
【０００８】
この特異現象は、実スロットル弁開度TAがオープナ開度TACNTを通過する前の状態と後の状態とで、オープナ機構によりアクチュエータの負荷トルクの向きが逆になることに起因して発生する。即ち、通常、スロットル弁と同スロットル弁を駆動するアクチュエータとの間には歯車列で構成された減速機が介挿されているところ、アクチュエータの負荷トルクの向きが逆になるときには、同歯車間にて不可避的に存在するバックラッシュに対応する角度だけアクチュエータが回転している間（上記所定時間に対応する）、スロットル弁はアクチュエータからの駆動力を受けない。よって、実スロットル弁開度TAは、所定時間に渡りオープナ機構の付勢手段の付勢力によりオープナ開度TACNTに保持される。
【０００９】
また、スロットル弁とアクチュエータとが直接的に連結されている場合でも、スロットル弁開度TAがオープナ開度を通過する際にアクチュエータの負荷トルクの大きさ及び向きが急激に変化することに起因して、アクチュエータを制御する制御手段（ＣＰＵ）が同アクチュエータ制御のために演算する制御量が変動することにより、特異現象が発生する場合がある。
【００１０】
従って、オープナ機構が搭載された内燃機関の制御装置において、推定スロットル弁開度TAestを精度よく演算し所定の目標空燃比を安定して得るためには、同制御装置は、上記特異現象を考慮して同推定スロットル弁開度TAestを演算する必要がある。即ち、推定スロットル弁開度TAestがオープナ開度TACNTを通過するように変化するとき、図１６（ａ），（ｂ）に実線で示したように、制御装置は、推定スロットル弁開度TAestがオープナ開度TACNTに到達した時点で特異現象が開始したと判定し、その後、所定時間に渡り推定スロットル弁開度TAestが同オープナ開度TACNTに保持されるとともにその後目標スロットル弁開度TAtに追従するように、同推定スロットル弁開度TAestを演算する必要がある。
【００１１】
【発明が解決しようとする課題】
しかしながら、上記オープナ機構により設定されるオープナ開度は、同オープナ機構内の各構成部材の寸法のばらつき、付勢手段の付勢力のばらつき等によりオープナ機構の個体毎に相違する。また、一つのオープナ機構（同一の個体）であっても、オープナ機構内の付勢手段の劣化による付勢力の変化、スロットル弁回動時の摩擦抵抗の変化等により、オープナ開度は時間の経過とともに変化する。
【００１２】
従って、実スロットル弁開度TAが保持されるオープナ開度（以下、「実オープナ開度」と称呼する。）も、図１６（ａ），（ｂ）に破線で示したように、オープナ開度のばらつきの範囲内（上限値TAMAX、下限値TAMINとする。以下、この範囲を「オープナ開度領域」と称呼する。）においてばらつくことになる。
【００１３】
よって、制御装置が、特異現象を考慮して推定スロットル弁開度TAestを演算する際に、上記したように、推定スロットル弁開度TAestが一定値であるオープナ開度TACNTに到達した時点で一律に特異現象が開始したと判定し、その後所定時間に渡り推定スロットル弁開度TAestが同オープナ開度TACNTに保持されるように同推定スロットル弁開度TAestを演算すると、特異現象が継続している間、実スロットル弁開度TAと推定スロットル弁開度TAestとの間に偏差が発生し、所定の目標空燃比が得られなくなる場合が発生する。
【００１４】
具体的に述べると、実オープナ開度がオープナ開度TACNTより下限値TAMIN側の開度となっている場合、目標スロットル弁開度TAtが減少しながら実オープナ開度を通過するとき（図１６（ａ）参照）には、制御装置は、実際に特異現象が開始する前の時点から特異現象が開始したと判定し、推定スロットル弁開度TAestを同オープナ開度TACNTに保持する。一方、目標スロットル弁開度TAtが増加しながら実オープナ開度を通過するとき（図１６（ｂ）参照）には、制御装置は、実際に特異現象が開始した後の時点で特異現象が開始したと判定し、推定スロットル弁開度TAestを同オープナ開度TACNTに保持する。
【００１５】
これらの場合、特異現象が継続している間において、推定スロットル弁開度TAestが実スロットル弁開度TAよりも大きくなる。従って、予測・推定される吸入空気量が、実際の吸入空気量よりも大きく演算され、燃料噴射量が、目標空燃比を得るために本来必要な量よりも大きく演算される。よって、機関の空燃比は、目標空燃比よりもリッチな空燃比となる。
【００１６】
他方、実オープナ開度がオープナ開度TACNTより上限値TAMAX側の開度となっている場合、目標スロットル弁開度TAtが減少しながら実オープナ開度を通過するとき（図１６（ａ）参照）には、制御装置は、実際に特異現象が開始した後の時点で特異現象が開始したと判定し、推定スロットル弁開度TAestを同オープナ開度TACNTに保持する。一方、目標スロットル弁開度TAtが増加しながら実オープナ開度を通過するとき（図１６（ｂ）参照）には、制御装置は、実際に特異現象が開始する前の時点から特異現象が開始したと判定し、推定スロットル弁開度TAestを同オープナ開度TACNTに保持する。
【００１７】
これらの場合は、特異現象が継続している間において、推定スロットル弁開度TAestが実スロットル弁開度TAよりも小さくなることに伴い、機関の空燃比は、目標空燃比よりもリーンな空燃比となる。
【００１８】
ここで、オープナ開度は、上述したように、スロットル弁が全閉状態となる開度より若干大きい開度であって、微小な開度に設定されているので、上記特異現象発生時における吸入空気量の絶対量自体が少ない。従って、特異現象が継続している間において機関の空燃比が目標空燃比よりもリーンな空燃比になると、内燃機関が失火する等の不具合が発生するおそれがある。
【００１９】
よって、特異現象が継続している間においては、機関の空燃比が目標空燃比よりもリッチな空燃比になることは許容され得るとしても、機関の空燃比が目標空燃比よりもリーンな空燃比になる事態（図１６（ａ），図１６（ｂ）において、斜線で示された領域内で実スロットル弁開度TAが推移する場合に対応する。）が発生することは、少なくとも回避されることが好ましい。
【００２０】
従って、本発明の目的は、オープナ機構を備えるとともに、推定スロットル弁開度に少なくとも基づいて燃料噴射量を演算する内燃機関の燃料噴射量制御装置において、スロットル弁開度がオープナ開度を通過するとき、空燃比が目標空燃比よりもリーンにならないように同空燃比を制御可能なものを提供することにある。
【００２１】
【発明の概要】
本発明の第１の特徴は、内燃機関の吸気通路に配設されたスロットル弁と、前記内燃機関の運転状態に基づいて目標スロットル弁開度を演算する目標スロットル弁開度演算手段と、前記スロットル弁の実開度である実スロットル弁開度を検出する実スロットル弁開度検出手段と、前記実スロットル弁開度が同目標スロットル弁開度に近づくように前記スロットル弁を開閉駆動するアクチュエータと、前記スロットル弁が全閉状態となる開度より若干大きい開度に設定されたオープナ開度より前記実スロットル弁開度が大きいときに同スロットル弁を閉方向に付勢するとともに、同実スロットル弁開度が同オープナ開度より小さいときに同スロットル弁を開方向に付勢する付勢手段を有し、前記アクチュエータが同スロットル弁を駆動していないときに同実スロットル弁開度を同オープナ開度に保持するためのオープナ機構と、前記目標スロットル弁開度に基づいて、前記実スロットル弁開度の推定値である推定スロットル弁開度を演算する第１推定スロットル弁開度演算手段と、少なくとも前記オープナ開度のばらつきの範囲内にて予め設定されているオープナ開度上限値とオープナ開度下限値との間の範囲内において、前記第１推定スロットル弁開度演算手段により演算された前記推定スロットル弁開度が減少しているときに、前記実スロットル弁開度が減少しながら同オープナ開度を通過する過程にて同オープナ開度に到達したと判定する判定手段と、前記判定手段により前記実スロットル弁開度が前記オープナ開度に到達したと判定された時点から所定時間に渡り、前記推定スロットル弁開度が、前記実スロットル弁開度がとり得る値のうちの上限値以上であって、かつ前記オープナ開度上限値以下の値になるように、前記第１推定スロットル弁開度演算手段に優先して同推定スロットル弁開度を演算する第２推定スロットル弁開度演算手段と、前記推定スロットル弁開度に応じた吸入空気量に対して所定の目標空燃比を得るために必要な燃料噴射量を演算する燃料噴射量演算手段と、前記燃料噴射量の燃料を噴射する燃料噴射手段と、を備えた内燃機関の燃料噴射量制御装置としたことにある。
【００２２】
これによれば、判定手段は、少なくともオープナ開度のばらつきの範囲内にて予め設定されているオープナ開度上限値とオープナ開度下限値との間の範囲内（オープナ開度領域内）において、第１推定スロットル弁開度演算手段が演算した推定スロットル弁開度が減少しているときに、実スロットル弁開度が減少しながらオープナ開度を通過する過程にて同オープナ開度に到達したと判定する。換言すれば、判定手段は、かかる条件が成立したときには、実オープナ開度の値がオープナ開度領域内のどの値になっていても、また、実際に特異現象が開始しているか否かにかかわらず、特異現象が開始したと判定する。
【００２３】
また、第２推定スロットル弁開度演算手段は、判定手段により特異現象が開始したと判定された場合、その時点から所定時間に渡り、推定スロットル弁開度が、実スロットル弁開度がとり得る値のうちの上限値以上であって、かつオープナ開度上限値以下の値になるように、第１推定スロットル弁開度演算手段に優先して同推定スロットル弁開度を演算する。
【００２４】
従って、本発明の第１の特徴を採用した内燃機関の燃料噴射量制御装置によれば、実オープナ開度が存在し得るオープナ開度領域内において推定スロットル弁開度が減少しているときには、推定スロットル弁開度は、実スロットル弁開度がとり得る値のうちの上限値以上の値に演算され、この結果、空燃比が目標空燃比よりもリーンにならないように制御される。
【００２５】
この場合、上記本発明の第１の特徴を採用した内燃機関の燃料噴射量制御装置をマイクロコンピュータにより実施しようとすると、一般にマイクロコンピュータは所定の演算周期毎に演算を繰り返すようにプログラミングされるので、前記判定手段は、前記第１推定スロットル弁開度演算手段が演算した前記推定スロットル弁開度における今回値が前回値よりも小さく、かつ同前回値が前記オープナ開度下限値よりも大きく、かつ同今回値が前記オープナ開度上限値よりも小さいときに、前記実スロットル弁開度が前記オープナ開度に到達したと判定するとともに、前記第２推定スロットル弁開度演算手段は、前記前回値が前記オープナ開度上限値未満の場合には、前記所定時間内において前記推定スロットル弁開度が同前回値以上で同オープナ開度上限値以下の範囲内の任意の一定値に保持されるように同推定スロットル弁開度を演算し、同前回値が同オープナ開度上限値以上の場合には、同所定時間内において同推定スロットル弁開度が同オープナ開度上限値に保持されるように同推定スロットル弁開度を演算するように構成されることが好適である。
【００２６】
ここで、上記した「実スロットル弁開度がとり得る値のうちの上限値」は、第１推定スロットル弁開度演算手段が演算した推定スロットル弁開度の前回値がオープナ開度上限値未満の場合には、同前回値に対応し、同前回値が同オープナ開度上限値以上の場合には、同オープナ開度上限値に対応している。
【００２７】
本発明の第２の特徴は、上記本発明の第１の特徴に対して、「判定手段」と「第２推定スロットル弁開度演算手段」のみを変更したものであり、本発明の第２の特徴に係る「判定手段」は、前記第１推定スロットル弁開度演算手段が演算した前記推定スロットル弁開度が、前記オープナ開度のばらつきの範囲内において予め設定されているオープナ開度上限値を増加しながら通過しているときに、前記実スロットル弁開度が増加しながら同オープナ開度を通過する過程にて同オープナ開度に到達したと判定し、本発明の第２の特徴に係る「第２推定スロットル弁開度演算手段」は、前記判定手段により前記実スロットル弁開度が前記オープナ開度に到達したと判定された時点から所定時間に渡り、前記推定スロットル弁開度が前記オープナ開度上限値になるように、前記第１推定スロットル弁開度演算手段に優先して同推定スロットル弁開度を演算する。
【００２８】
これによれば、判定手段は、第１推定スロットル弁開度演算手段により演算された推定スロットル弁開度がオープナ開度領域を増加しながら通過する過程において、同推定スロットル弁開度がオープナ開度領域の上限値であるオープナ開度上限値を増加しながら通過するときまで特異現象が開始していないと判定する。換言すれば、判定手段は、推定スロットル弁開度がオープナ開度上限値を増加しながら通過しているときに初めて特異現象が開始したと判定する。
【００２９】
従って、実オープナ開度の値がオープナ開度上限値より小さい値になっている場合、判定手段が特異現象が開始していないと判定している間においては、実際に特異現象が開始して実スロットル弁開度が同実オープナ開度になっていても推定スロットル弁開度は第１推定スロットル弁開度演算手段により演算される値となるので、同推定スロットル弁開度は実スロットル弁開度以上の値となる。
【００３０】
また、第２推定スロットル弁開度演算手段は、判定手段が特異現象が開始したと判定した場合、その時点から所定時間に渡り、推定スロットル弁開度が上記オープナ開度上限値になるように、第１推定スロットル弁開度演算手段に優先して同推定スロットル弁開度を演算する。
【００３１】
従って、本発明の第２の特徴を採用した内燃機関の燃料噴射量制御装置によれば、実オープナ開度が存在し得るオープナ開度領域内において推定スロットル弁開度が増加しているときには、判定手段が特異現象が開始していないと判定している間は、推定スロットル弁開度は少なくとも実スロットル弁開度以上の値になるように演算される。また、判定手段が特異現象が開始したと判定した後所定時間の間も、推定スロットル弁開度は、特異現象継続中において実スロットル弁開度がとり得る値のうちの上限値であるオープナ開度上限値に演算される。この結果、空燃比が目標空燃比よりもリーンにならないように制御される。
【００３２】
この場合、上記本発明の第２の特徴を採用した内燃機関の燃料噴射量制御装置をマイクロコンピュータにより実施しようとすると、一般にマイクロコンピュータは所定の演算周期毎に演算を繰り返すようにプログラミングされるので、前記判定手段は、前記第１推定スロットル弁開度演算手段が演算した前記推定スロットル弁開度における前回値が前記オープナ開度上限値以下であり、かつ同推定スロットル弁開度における今回値が前記オープナ開度上限値よりも大きいときに、前記実スロットル弁開度が前記オープナ開度に到達したと判定するように構成されることが好適である。
【００３３】
また、上記した本発明に係る内燃機関の燃料噴射量制御装置においては、前記実スロットル弁開度検出手段により検出された実スロットル弁開度と、前記オープナ開度のばらつきの範囲内において予め設定されている同オープナ開度の初期値との偏差が、所定の判定時間に渡り所定値未満となり、かつ同実スロットル弁開度が同判定時間に渡り略一定となる状態が発生している場合に、同状態における同実スロットル弁開度に少なくとも基づいて、前記オープナ開度上限値及び／又はオープナ開度下限値を更新する更新手段を備えることが好適である。
【００３４】
これによれば、更新手段は、例えば、上記状態における実スロットル弁開度が、オープナ開度のばらつきの範囲内において予め設定されているオープナ開度上限値より大きい値又はオープナ開度下限値より小さい値であった場合（予め設定されているオープナ開度領域外の値であった場合）には、その時点でのオープナ開度上限値又はオープナ開度下限値を、同実スロットル弁開度の値に更新するように構成され得る。
【００３５】
ここで、上記状態における実スロットル弁開度は、その時点における実オープナ開度である可能性が非常に高い。従って、上記判定手段及び第２推定スロットル弁開度演算手段が演算する際に使用するオープナ開度領域が、実際に発生した可能性の高い実オープナ開度の値が考慮されて適宜更新されていくので、一層確実に、空燃比が目標空燃比よりもリーンにならないように制御され得る。
【００３６】
【発明の実施の形態】
以下、本発明による内燃機関の燃料噴射量制御装置の実施形態について図面を参照しつつ説明する。図１は、本発明の実施形態に係る燃料噴射量制御装置を火花点火式多気筒（４気筒）内燃機関１０に適用したシステムの概略構成を示している。
【００３７】
この内燃機関１０は、シリンダブロック、シリンダブロックロワーケース、及びオイルパン等を含むシリンダブロック部２０と、シリンダブロック部２０の上に固定されるシリンダヘッド部３０と、シリンダブロック部２０にガソリン混合気を供給するための吸気系統４０と、シリンダブロック部２０からの排ガスを外部に放出するための排気系統５０とを含んでいる。
【００３８】
シリンダブロック部２０は、シリンダ２１、ピストン２２、コンロッド２３、及びクランク軸２４を含んでいる。ピストン２２はシリンダ２１内を往復動し、ピストン２２の往復動がコンロッド２３を介してクランク軸２４に伝達され、これにより同クランク軸２４が回転するようになっている。シリンダ２１とピストン２２のヘッドは、シリンダヘッド部３０とともに燃焼室２５を形成している。
【００３９】
シリンダヘッド部３０は、燃焼室２５に連通した吸気ポート３１、吸気ポート３１を開閉する吸気弁３２、吸気弁３２を駆動するインテークカムシャフトを含むとともに同インテークカムシャフトの位相角を連続的に変更する可変吸気タイミング装置３３、可変吸気タイミング装置３３のアクチュエータ３３ａ、燃焼室２５に連通した排気ポート３４、排気ポート３４を開閉する排気弁３５、排気弁３５を駆動するエキゾーストカムシャフト３６、点火プラグ３７、点火プラグ３７に与える高電圧を発生するイグニッションコイルを含むイグナイタ３８、及び燃料を吸気ポート３１内に噴射するインジェクタ（燃料噴射手段）３９を備えている。
【００４０】
吸気系統４０は、吸気ポート３１に連通し同吸気ポート３１とともに吸気通路を形成するインテークマニホールドを含む吸気管４１、吸気管４１の端部に設けられたエアフィルタ４２、吸気管４１内にあって吸気通路の開口断面積を可変とするスロットル弁４３、スロットル弁アクチュエータ４４、及びオープナ機構４５を備えている。
【００４１】
スロットル弁４３は、同スロットル弁４３近傍の概略構成を表した図２に示すように、スロットル軸４３ａを有し、同スロットル軸４３ａがスロットルハウジングＨgに回動可能に軸支されることにより、吸気管４１内で開閉作動可能に構成されている。なお、図２において、図１における各構成と同一の構成については、図１における符号と同一の符号を付している。
【００４２】
ＤＣモータからなるスロットル弁アクチュエータ４４は、複数の歯車列で構成された減速機４６を介して、スロットル軸４３ａの一端に連結されている。そして、スロットル弁アクチュエータ４４は、後述する電子制御装置７０により目標スロットル弁開度TAtが与えられると、比例・積分制御（ＰＩ制御）により、実際のスロットル弁開度（実スロットル弁開度）TAが目標スロットル弁開度TAtとなるように（に近づくように）、減速機４６を介してスロットル弁４３を駆動するようになっている。
【００４３】
オープナ機構４５は、スロットル弁アクチュエータ４４がスロットル弁４３を駆動していないときに、実スロットル弁開度TAを所定のオープナ開度に保持する機能を有するものであり、同オープナ開度は、スロットル弁４３が吸気管４１を閉塞する状態（全閉状態）となる開度より若干大きい開度に設定されている。このオープナ機構４５により、スロットル弁アクチュエータ４４の故障時等において、車両は、路肩への退避走行等のような必要最小限度の走行が可能となる。
【００４４】
具体的には、オープナ機構４５は、図２に示すように、スロットル弁４３（スロットル軸４３ａの他端部）と係合しながら回動するオープナレバー４５ａと、スロットル弁４３を閉方向（スロットル弁開度が減少する方向）に付勢するリターンスプリング４５ｂと、スロットル弁４３を開方向（スロットル弁開度が増加する方向）に付勢するオープナスプリング４５ｃと、オープナレバー４５ａの開方向回動限界位置及び閉方向回動限界位置をそれぞれ決定するためにスロットルハウジングＨgに設けられた全開ストッパ４５ｄ及びオープナ開度ストッパ４５ｅと、スロットル弁４３の全閉位置を決定するためにスロットルハウジングＨgに設けられた全閉ストッパ４５ｆを備えている。
【００４５】
なお、説明の便宜上、図２においては、スロットル弁４３（オープナレバー４５ａ）の回動作動が上下方向の平行移動により示されており、図２においてスロットル弁４３（オープナレバー４５ａ）が上方へ移動することは、スロットル弁４３（オープナレバー４５ａ）が開方向へ回動することに対応しているとともに、スロットル弁４３（オープナレバー４５ａ）が下方へ移動することは、スロットル弁４３（オープナレバー４５ａ）が閉方向へ回動することに対応している。
【００４６】
スロットル弁４３は、図２に示す位置（オープナ開度ストッパ４５ｅに当接している状態にあるオープナレバー４５ａにスロットル軸４３ａの他端部が係合している位置）から閉方向へ回動するとき、オープナレバー４５ａとの係合が解除され、オープナレバー４５ａと独立して回動するようになっているとともに、図２に示す位置から開方向へ回動するとき、オープナレバー４５ａと係合して、オープナレバー４５ａと一体的に回動するようになっている。
【００４７】
オープナレバー４５ａは、一端がスロットルハウジングＨgに固定されるとともに他端がオープナレバー４５ａに固定されたリターンスプリング４５ｂにより、常時閉方向へ付勢されるようになっている。また、オープナレバー４５ａとスロットル弁４３（スロットル軸４３ａの他端部）との間には、両者を互いに係合させる方向に付勢するオープナスプリング４５ｃが配設されている。
【００４８】
従って、スロットル弁４３は、図２に示す位置から開方向へ回動するときには、オープナレバー４５ａを介してリターンスプリング４５ｂから閉方向へ付勢力Ｆcを受ける一方で、オープナレバー４５ａと係合したままの状態となっているのでオープナスプリング４５ｃからの開方向への付勢力Ｆoを受けないように構成されている。なお、スロットル弁４３の全開位置は、オープナレバー４５ａが全開ストッパ４５ｄに当接する位置に対応している。
【００４９】
一方、スロットル弁４３は、図２に示す位置から閉方向へ回動するときには、リターンスプリング４５ｂからの付勢力Ｆcを受けない一方で、オープナレバー４５ａと独立して回動するのでオープナスプリング４５ｃから開方向へ付勢力Ｆoを受けるように構成されている。なお、スロットル弁４３の全閉位置は、スロットル軸４３ａの他端部が全閉ストッパ４５ｆに当接する位置に対応している。
【００５０】
従って、オープナ機構４５は、スロットル弁アクチュエータ４４がスロットル弁４３を駆動していないときに、スロットル弁４３が図２に示す位置にあるときの開度に実スロットル弁開度TAを保持する機能を有するものであり、同オープナ機構４５において、スロットル弁４３が図２に示す位置にあるときの開度は上記オープナ開度に対応している。
【００５１】
以上の構成により、スロットル弁アクチュエータ４４に働く負荷トルクは、閉方向のトルクを正の値として表し開方向のトルクを負の値として表すとともに実スロットル弁開度TAと同負荷トルクとの関係を表した図３に示すように、実スロットル弁開度TAがオープナ開度より大きいとき、リターンスプリング４５ｂの付勢力Ｆcによる閉方向のトルクとなる。この閉方向のトルクは、実スロットル弁開度TAがオープナ開度にあるときに、リターンスプリング４５ｂのセット荷重（オープナレバー４５ａがオープナ開度ストッパ４５ｅに当接している状態にあるときの荷重）に対応するトルク「ａ」となり、この状態から、実スロットル弁開度TAが増加するにつれて、リターンスプリング４５ｂの弾性定数に基づいて増加する。
【００５２】
一方、スロットル弁アクチュエータ４４に働く負荷トルクは、実スロットル弁開度TAがオープナ開度より小さいとき、オープナスプリング４５ｃの付勢力Ｆoによる開方向のトルクとなる。この開方向のトルクは、実スロットル弁開度TAがオープナ開度にあるときに、オープナスプリング４５ｃのセット荷重（オープナレバー４５ａとスロットル軸４３ａの他端部とが互いに係合している状態にあるときの荷重）に対応するトルク「-ｂ」となり、この状態から、実スロットル弁開度TAが減少するにつれて、オープナスプリング４５ｃの弾性定数に基づいて減少する（開方向のトルクの絶対値は増加する）。
【００５３】
排気系統５０は、排気ポート３４に連通したエキゾーストマニホールド５１、エキゾーストマニホールド５１に接続されたエキゾーストパイプ５２、及びエキゾーストパイプ５２に介装された触媒コンバータ（三元触媒装置）５３を備えている。
【００５４】
一方、このシステムは、熱線式エアフローメータ６１、スロットルポジションセンサ（実スロットル弁開度検出手段）６２、カムポジションセンサ６３、クランクポジションセンサ６４、水温センサ６５、空燃比センサ６６、及びアクセル操作量検出手段（の一部）を構成するアクセル開度センサ６７を備えている。
【００５５】
エアフローメータ６１は、吸気管４１内を流れる吸入空気流量を計測し、吸入空気流量mTAFMを表す信号を出力するようになっている。スロットルポジションセンサ６２は、スロットル弁４３の開度（実スロットル弁開度）を検出し、実スロットル弁開度TAを表す信号を出力するようになっている。カムポジションセンサ６３は、インテークカムシャフトが９０°回転する毎に（即ち、クランク軸２４が１８０°回転する毎に）一つのパルスを有する信号（Ｇ２信号）を発生するようになっている。クランクポジションセンサ６４は、クランク軸２４が１０°回転する毎に幅狭のパルスを有するとともに同クランク軸２４が３６０°回転する毎に幅広のパルスを有する信号を出力するようになっている。この信号は、エンジン回転速度NEを表す。水温センサ６５は、内燃機関１０の冷却水の温度を検出し、冷却水温THWを表す信号を出力するようになっている。空燃比センサ６６は、触媒コンバータ５３に流入する排ガス中の酸素濃度を検出することで空燃比を表す信号を出力するようになっている。アクセル開度センサ６７は、運転者によって操作されるアクセルペダルＡＰの操作量を検出し、同アクセルペダルの操作量Accpを表す信号を出力するようになっている。
【００５６】
さらに、このシステムは電気制御装置７０を備えている。電気制御装置７０は、互いにバスで接続されたＣＰＵ７１、ＣＰＵ７１が実行するルーチン（プログラム）、テーブル（ルックアップテーブル、マップ）、定数等を予め記憶したＲＯＭ７２、ＣＰＵ７１が必要に応じてデータを一時的に格納するＲＡＭ７３、電源が投入された状態でデータを格納するとともに同格納したデータを電源が遮断されている間も保持するバックアップＲＡＭ７４、及びＡＤコンバータを含むインターフェース７５等からなるマイクロコンピュータである。インターフェース７５は、前記センサ６１〜６７と接続され、ＣＰＵ７１にセンサ６１〜６７からの信号を供給するとともに、同ＣＰＵ７１の指示に応じて可変吸気タイミング装置３３のアクチュエータ３３ａ、イグナイタ３８、インジェクタ３９、及びスロットル弁アクチュエータ４４に駆動信号を送出するようになっている。
【００５７】
次に、上記のように構成されたシステムにおいて本発明に係る燃料噴射量制御装置が燃料噴射量を決定する原理について説明する。以下に述べる処理は、ＣＰＵ７１がプログラムを実行することにより行われる。
【００５８】
（燃料噴射量fiの決定方法の概要）
このような燃料噴射量制御装置は、吸気行程にある気筒、又は吸気行程の直前の状態にある気筒（即ち、燃料噴射気筒）の吸気弁３２が、その吸気行程において開弁した状態から閉弁する状態に移行する時点（吸気弁閉弁時）より前の時点にて、同気筒に対して所定量の燃料を噴射する必要がある。そのため、本燃料噴射量制御装置は、吸気弁３２が閉弁状態に移行する時点において同気筒内に吸入されているであろう吸入空気量を前もって予測し、同予測した吸入空気量に応じた燃料量の燃料を同吸気弁３２の閉弁時より前の時点で同気筒に対して噴射する。本例においては、噴射終了時期を、燃料噴射気筒の吸気上死点前７５°クランクアングル（以下、「BTDC７５°CA」と表す。他のクランクアングルについても同様に表す。）と定めている。従って、本制御装置は、噴射に要する時間（インジェクタ３９の開弁時間）、ＣＰＵ７１の計算時間を考慮して、BTDC７５°CAの時点よりも前の時点にて、燃料噴射気筒の吸入空気量を予測する。
【００５９】
一方、吸気弁閉弁時の吸気管圧力（即ち、吸気管内空気圧力）は、吸入空気量と密接な関係にある。また、吸気弁閉弁時の吸気管圧力は、吸気弁閉弁時のスロットル弁開度に依存する。そこで、本制御装置は、吸気弁閉弁時のスロットル弁開度を予測・推定し、その推定スロットル弁開度に基づいて燃料噴射気筒の吸入空気量Ｑを事前に予測し、予測した吸入空気量Ｑをエンジンの運転状態に応じて別途定められる目標空燃比AbyFrefで除することで、機関の空燃比を目標空燃比AbyFrefに維持するための燃料噴射量fiを求める。以上が、燃料噴射量fiを求める方法の概要である。
【００６０】
（燃料噴射量fiの具体的決定方法）
より具体的に述べると、この燃料噴射量制御装置は、先ず、演算周期ΔTt（例えば、８msec）の経過毎にアクセル開度センサ６７の出力値に基づいてアクセル操作量Accpを読込み、読み込んだアクセル操作量Accpと、同アクセル操作量Accpと暫定目標スロットル弁開度TAtnewとの関係を規定した所定のテーブルとに基づいて、今回の暫定目標スロットル弁開度TAtnewを求め、この暫定目標スロットル弁開度TAtnewを図４のタイムチャートに示したように、所定の遅延時間TDだけ遅延し、この遅延した暫定目標スロットル弁開度TAtnewを目標スロットル弁開度TAtとして設定してスロットル弁アクチュエータ４４に出力する。なお、遅延時間TDは、本例においては一定の時間であるが、内燃機関１０が所定のクランク角度（例えば、クランク角２７０°CA）だけ回転するのに要する時間T270とする等、エンジン回転速度NEに応じた可変の時間とすることもできる。
【００６１】
ところで、本装置から目標スロットル弁開度TAtがスロットル弁アクチュエータ４４に出力された場合であっても、同スロットル弁アクチュエータ４４の遅れや、スロットル弁４３の慣性などにより、実際のスロットル弁開度TAは、ある遅れをもって目標スロットル弁開度TAtに追従する。そこで、本装置においては、下記数１に基づいて遅延時間TD後におけるスロットル弁開度を予測・推定する（図４を参照）。
【００６２】
【数１】
TAest(ntdly)＝TAt(ntdly)＋((Smth1-1)/Smth1)・(TAest(ntdly-1)-TAt(ntdly))
【００６３】
数１において、TAest(ntdly)は今回の演算タイミングにおいて新たに予測・推定される推定スロットル弁開度TAestであり、TAt(ntdly)は今回の演算タイミングにて新たに得られた目標スロットル弁開度TAt（即ち、今回の暫定目標スロットル弁開度TAtnew）であり、TAest(ntdly-1)は今回の演算タイミングにおいて既に予測・推定されていた前回の推定スロットル弁開度TAest（即ち、前回の演算タイミングにおいて予測・推定された推定スロットル弁開度TAest）である。ここで、ntdlyは遅延処理回数であり、遅延時間TDを演算周期ΔTtで除した値である。また、Smth1は遅延係数であり、「１」より大きい一定値である。
【００６４】
このように、この燃料噴射量制御装置（ＣＰＵ７１）は、今回の演算タイミングにて遅延時間TD後の目標スロットル弁開度TAt(ntdly)を新たに決定するとともに、遅延時間TD後の推定スロットル弁開度TAest(ntdly)を新たに予測・推定する。そして、本装置は、新たに推定スロットル弁開度TAest(ntdly)を演算する度に、同推定スロットル弁開度TAest(ntdly)の値とその時点でのエンジン回転速度NEとから燃料噴射気筒の吸入空気量Ｑ(ntdly)を演算するとともに、現時点から遅延時間TD経過後までの目標スロットル弁開度TAt(0)〜TAt(ntdly)、推定スロットル弁開度TAest(0)〜TAest(ntdly)及び吸入空気量Ｑ(0)〜Ｑ(ntdly)を、現時点からの時間経過に対応させた形でＲＡＭ７３に記憶・格納する。
【００６５】
そして、本装置は、燃料噴射気筒のクランクアングルがBTDC９０°CAとなる毎に、同燃料噴射気筒の吸気弁閉弁時をエンジン回転速度NEから予測し、ＲＡＭ７３に格納されているその時点から遅延時間TD経過後までの吸入空気量Ｑの中から同吸気弁閉弁時に対応する吸入空気量Ｑを選択し、同選択した（予測した）吸入空気量Ｑを目標空燃比AbyFrefで除することで、機関の空燃比を目標空燃比AbyFrefに維持するための燃料噴射量fiを求める。以上が、燃料噴射量fiを求める具体的方法である。
【００６６】
（オープナ開度通過時における推定スロットル弁開度TAestの演算方法の概要）本装置は、基本的には、上記数１に基づいて演算された、実スロットル弁開度TAに追従する推定スロットル弁開度の値（以下、この値を「仮の推定スロットル弁開度TAest1」と称呼する。）をそのまま推定スロットル弁開度TAestとして設定する。しかし、仮の推定スロットル弁開度TAest1（即ち実スロットル弁開度TA）がオープナ開度（オープナ開度領域）を通過する際には、スロットル弁４３とスロットル弁アクチュエータ４４との間に介挿された減速機４６の歯車列の存在により発生するバックラッシュに基づく特異現象が発生する。従って、この場合、本装置は、特異現象が考慮された推定スロットル弁開度の値（以下、この値を「仮の推定スロットル弁開度TAest2」と称呼する。）を、上記仮の推定スロットル弁開度TAest1の値に優先して、推定スロットル弁開度TAestとして設定する。
【００６７】
具体的に述べると、本装置は、オープナ機構４５において、同オープナ機構４５内のオープナレバー４５ａ及びオープナ開度ストッパ４５ｅ等の各構成部材の寸法のばらつきにより発生し得るであろう実オープナ開度のばらつきの範囲の上限値TAMAX（オープナ開度の設計上の中央値TACNTよりも大きい値）及び下限値TAMIN（オープナ開度の設計上の中央値TACNTよりも小さい値）（即ちオープナ開度領域）を、予め設定しておく。
【００６８】
そして、本装置は、図５に示すように、仮の推定スロットル弁開度TAest1がオープナ開度領域を減少しながら通過する過程において、今回の仮の推定スロットル弁開度TAest1（今回値）が前回の仮の推定スロットル弁開度TAest1*（前回値）より小さく、かつ同前回値がオープナ開度下限値TAMINよりも大きく、かつ同今回値がオープナ開度上限値TAMAXよりも小さいときには、仮の推定スロットル弁開度TAest1がオープナ開度領域内において減少する過程において特異現象が開始したと判定する。その後、本装置は、その時点以降所定時間に渡り、仮の推定スロットル弁開度TAest2がオープナ開度上限値TAMAXに保持されるとともにその後目標スロットル弁開度TAtに追従するように、仮の推定スロットル弁開度TAest2を演算し、上記仮の推定スロットル弁開度TAest1の値に優先して、仮の推定スロットル弁開度TAest2の値を推定スロットル弁開度TAestとして設定する。
【００６９】
従って、例えば、図５に示すように、仮の推定スロットル弁開度TAest1がオープナ開度上限値TAMAXより大きい値からオープナ下限値TAMINより小さい値まで減少しながら推移する場合、本装置は、今回の仮の推定スロットル弁開度TAest1の値がオープナ開度上限値TAMAXよりも初めて小さい値となった時点（時刻t1）で、特異現象が開始したと判定する。
【００７０】
よって、図５（ａ）に示すように、実オープナ開度がオープナ上限値TAMAXになっている場合には、本装置は、実際に特異現象が開始する時期と同時期に特異現象が開始したと判定する。これにより、特異現象継続中における実スロットル弁開度TAと推定スロットル弁開度TAestとが同一となる。従って、この場合、特異現象継続中における機関の空燃比は目標空燃比AbyFrefに制御される。
【００７１】
一方、図５（ｂ）に示すように、実オープナ開度がオープナ下限値TAMINになっている場合には、本装置は、実際に特異現象が開始する前の段階から特異現象が開始したと判定する（時刻t1）。これにより、特異現象継続中における推定スロットル弁開度TAestと実スロットル弁開度TAとの間には偏差（斜線で示された領域に対応する。この場合、同偏差が最大となる。）が生じ、推定スロットル弁開度TAest（実線にて表示）が実スロットル弁開度TA（破線にて表示）よりも大きくなる。従って、特異現象継続中における機関の空燃比は目標空燃比AbyFrefよりもリッチとなる。
【００７２】
よって、本装置によれば、推定スロットル弁開度TAest（仮の推定スロットル弁開度TAest1）がオープナ開度領域を減少しながら通過する過程においては、機関の空燃比は、実オープナ開度のばらつきによって目標空燃比AbyFrefよりリッチに制御されることはあっても、目標空燃比AbyFrefよりリーンに制御されることはない。
【００７３】
他方、本装置は、図６に示すように、仮の推定スロットル弁開度TAest1がオープナ開度領域を増加しながら通過する過程において、前回の仮の推定スロットル弁開度TAest1*（前回値）がオープナ開度上限値TAMAX以下であり、今回の仮の推定スロットル弁開度TAest1（今回値）がオープナ開度上限値TAMAXよりも大きいときには、仮の推定スロットル弁開度TAest1がオープナ開度領域内において増加する過程において特異現象が開始したと判定する。そして、本装置は、その時点以降所定時間に渡り、仮の推定スロットル弁開度TAest2がオープナ開度上限値TAMAXに保持されるとともにその後目標スロットル弁開度TAtに追従するように、仮の推定スロットル弁開度TAest2を演算し、上記仮の推定スロットル弁開度TAest1の値に優先して、仮の推定スロットル弁開度TAest2の値を推定スロットル弁開度TAestとして設定する。
【００７４】
従って、例えば、図６に示すように、仮の推定スロットル弁開度TAest1がオープナ開度下限値TAMINより小さい値からオープナ上限値TAMAXより大きい値まで増加しながら推移する場合、本装置は、今回の仮の推定スロットル弁開度TAest1の値がオープナ開度上限値TAMAXよりも初めて大きい値となった時点（時刻t1）で、特異現象が開始したと判定する。
【００７５】
よって、図６（ａ）に示すように、実オープナ開度がオープナ上限値TAMAXになっている場合には、本装置は、実際に特異現象が開始する時期と同時期に特異現象が開始したと判定する。これにより、特異現象継続中における実スロットル弁開度TAと推定スロットル弁開度TAestとが同一となる。従って、この場合、特異現象継続中における機関の空燃比は目標空燃比AbyFrefに制御される。
【００７６】
一方、図６（ｂ）に示すように、実オープナ開度がオープナ下限値TAMINになっている場合には、本装置は、実際に特異現象が開始した後の段階で特異現象が開始したと判定する（時刻t1）。これにより、特異現象継続中における推定スロットル弁開度TAestと実スロットル弁開度TAとの間には偏差（斜線で示された領域に対応する。この場合、同偏差が最大となる。）が生じ、推定スロットル弁開度TAest（実線にて表示）が実スロットル弁開度TA（破線にて表示）よりも大きくなる。従って、特異現象継続中における機関の空燃比は目標空燃比AbyFrefよりもリッチとなる。
【００７７】
よって、本装置によれば、推定スロットル弁開度TAest（仮の推定スロットル弁開度TAest1）がオープナ開度領域を増加しながら通過する過程においても、機関の空燃比は、実オープナ開度のばらつきによって目標空燃比AbyFrefよりリッチに制御されることはあっても、目標空燃比AbyFrefよりリーンに制御されることはない。
【００７８】
次に、電気制御装置７０の実際の作動について、図７〜図１３に示したフローチャートを参照しながら説明する。
【００７９】
（目標スロットル弁開度の演算）
ＣＰＵ７１は、図７にフローチャートにより示した目標スロットル弁開度演算手段に対応するルーチンを演算周期ΔTt（ここでは、８msec）の経過毎に実行することにより、今回の暫定目標スロットル弁開度TAtnew（即ち今回の目標スロットル弁開度TAt(ntdly)）の演算を行う。
【００８０】
具体的に述べると、ＣＰＵ７１は所定のタイミングにてステップ７００から処理を開始し、ステップ７０５に進んで、アクセル開度センサ８１の出力値に基づいてアクセル操作量Accpを読込み、読み込んだアクセル操作量Accpと、同アクセル操作量Accpと暫定目標スロットル弁開度TAtnewとの関係を規定するステップ７０５内に記載したテーブルとに基づいて、今回の暫定目標スロットル弁開度TAtnewを求める。そして、ＣＰＵ７１は、ステップ７９５に進んで本ルーチンを一旦終了する。
【００８１】
（推定スロットル弁開度の演算）
ＣＰＵ７１は、図８にフローチャートにより示したルーチンを演算周期ΔTt（ここでは、８msec）の経過毎に実行することにより、今回の推定スロットル弁開度TAestnew（即ちTAest(ntdly)）の演算を行う。
【００８２】
<通常モード>
まず、ドライバーのアクセル操作量Accpにより変動する目標スロットル弁開度TAtの値に追従する推定スロットル弁開度TAest（仮の推定スロットル弁開度TAest1）の値が、オープナ開度領域を通過しない範囲で推移する場合について説明する。以下、この場合を「通常モード」と称呼する。
【００８３】
ＣＰＵ７１は所定のタイミングにてステップ８００から処理を開始し、ステップ８０５に進んで、上記数１に基づいて前回の演算周期にて演算された（具体的には続くステップ８１０にて前回演算された）仮の推定スロットル弁開度TAest1の値を、前回の仮の推定スロットル弁開度TAest1*に格納する。この処理は、今回の演算周期におけるステップ８１０にて仮の推定スロットル弁開度TAest1の値を更新する準備として実行される。
【００８４】
次に、ＣＰＵ７１はステップ８１０に進み、図７のステップ７０５にて演算した今回の暫定目標スロットル弁開度TAtnewの値と、前回の仮の推定スロットル弁開度TAest1の値と、上記数１（の右辺）に基づくステップ８１０内に記載した式とにより、今回の仮の推定スロットル弁開度TAest1を演算する。なお、このステップ８１０は第１推定スロットル弁開度演算手段に対応する。これにより、今回の仮の推定スロットル弁開度TAest1が今回の暫定目標スロットル弁開度TAtnewの値に追従するように演算される。
【００８５】
次に、ＣＰＵ７１はステップ８１５に進んで、図９にフローチャートにより示した特異現象開始判定ルーチンを実行する。具体的には、ＣＰＵ７１はステップ９００から処理を開始し、ステップ９０５に進んで、フラグFDHOLDが「１」となっているか否かを判定する。
【００８６】
ここで、フラグFDHOLDは、仮の推定スロットル弁開度TAest1が減少する過程においてＣＰＵ７１が特異現象が開始・継続中であると判定しているか否かを示すフラグであり、その値が「１」のときは、同減少過程においてＣＰＵ７１が特異現象が開始・継続中であると判定している場合を示し、その値が「０」のときは、同減少過程においてＣＰＵ７１が特異現象が開始・継続中でないと判定している場合を示している。
【００８７】
この時点では、フラグFDHOLDは「０」となっているので、ＣＰＵ７１はステップ９０５にて「Ｎｏ」と判定してステップ９１０に進み、フラグFUHOLDが「１」となっているか否かを判定する。ここで、フラグFUHOLDは、仮の推定スロットル弁開度TAest1が増加する過程においてＣＰＵ７１が特異現象が開始・継続中であると判定しているか否かを示すフラグであり、その値が「１」のときは、同増加過程においてＣＰＵ７１が特異現象が開始・継続中であると判定している場合を示し、その値が「０」のときは、同増加過程においてＣＰＵ７１が特異現象が開始・継続中でないと判定している場合を示している。
【００８８】
この時点では、フラグFUHOLDも「０」となっているので、ＣＰＵ７１はステップ９１０にて「Ｎｏ」と判定してステップ９１５に進み、仮の推定スロットル弁開度TAest1が増加する過程において特異現象が開始したか否かを判定する（以下、この判定を「増加過程特異現象開始判定」と称呼する。）。具体的には、ＣＰＵ７１は、前回の仮の推定スロットル弁開度TAest1*の値がオープナ開度上限値TAMAX以下であって、かつ今回の仮の推定スロットル弁開度TAest1の値が同オープナ開度上限値TAMAXよりも大きいか否かを判定する。なお、このステップ９１５は、判定手段に対応する。
【００８９】
この時点では、この条件は満足されないので、ＣＰＵ７１はステップ９１５にて「Ｎｏ」と判定してステップ９２０に進み、仮の推定スロットル弁開度TAest1が減少する過程において特異現象が開始したか否かを判定する（以下、この判定を「減少過程特異現象開始判定」と称呼する。）。具体的には、ＣＰＵ７１は、今回の仮の推定スロットル弁開度TAest1の値が前回の仮の推定スロットル弁開度TAest1*の値よりも小さく、かつ前回の仮の推定スロットル弁開度TAest1*の値がオープナ開度下限値TAMINよりも大きく、かつ今回の仮の推定スロットル弁開度TAest1の値がオープナ開度上限値TAMAXよりも小さいか否かを判定する。なお、このステップ９２０も、判定手段に対応する。
【００９０】
この時点では、この条件も満足されないので、ＣＰＵ７１はステップ９２０にて「Ｎｏ」と判定してステップ９９５へ進み、この特異現象開始判定ルーチンを一旦終了するとともに、図８のステップ８２０に進む。そして、ＣＰＵ７１はステップ８２０において、フラグFDHOLDとフラグFUHOLDのどちらか一方が「１」になっているか否かを判定する。
【００９１】
上述のとおりこの時点ではフラグFDHOLDもフラグFUHOLDも「０」となっているので、ＣＰＵ７１は、ステップ８２０において「Ｎｏ」と判定してステップ８２５に進み、今回の仮の推定スロットル弁開度TAest1の値を今回の推定スロットル弁開度TAestnewに格納する。これにより、今回の推定スロットル弁開度TAestnewが決定される。そして、ＣＰＵ７１はステップ８９５へ進み、この推定スロットル弁開度演算ルーチンを一旦終了する。
【００９２】
以上、通常モードにある限りにおいて、図８のルーチンにおいて上記した処理が繰り返し実行される。これにより、通常モードにおいては、ドライバーのアクセル操作量Accpにより変動する目標スロットル弁開度TAtの値に追従する仮の推定スロットル弁開度TAest1の値が、そのまま今回の推定スロットル弁開度TAestnewとして設定されていく。
【００９３】
<減少モード>
次に、通常モードの状態から、例えばドライバーがアクセル操作量Accpを減少することにより、同アクセル操作量Accpにより変動する目標スロットル弁開度TAtの値に追従する仮の推定スロットル弁開度TAest1の値が、オープナ開度領域内で減少する場合（以下、この場合を「減少モード」と称呼する。）について説明する。以下、この場合の代表例として上述した図５を参照しつつ説明する。
【００９４】
ＣＰＵ７１は、上記した通常モードの処理を繰り返し実行している過程において、今回の仮の推定スロットル弁開度TAest1の値が図５に示すように推移してオープナ開度上限値TAMAXより初めて小さくなったとき、図９のステップ９２０の減少過程特異現象開始判定において「Ｙｅｓ」と判定する。従って、ＣＰＵ７１はステップ９２５に進み、仮の推定スロットル弁開度TAest1が減少する過程において特異現象が開始・継続中であると判定していることを示すため、フラグFDHOLDに「１」を設定する。
【００９５】
次いで、ＣＰＵ７１は、以後図８のルーチンにて使用する変数ｉを初期化するため、ステップ９３０にて変数ｉに「０」を設定した後、ステップ９９５に進んで特異現象開始判定ルーチンを一旦終了し、図８のステップ８２０に進む。この時点は、図５における時刻t1に対応している。
【００９６】
この時点では、フラグFDHOLDが「１」に設定されているので、ＣＰＵ７１は、ステップ８２０において「Ｙｅｓ」と判定してステップ８３０に進み、変数ｉが定数ntholdになっているか否かを判定する。ここで、変数ｉは、特異現象継続中において、仮の推定スロットル弁開度TAest2（推定スロットル弁開度TAestnew）の値をオープナ開度上限値TAMAXに保持すべき時間（所定時間Ｔ）が経過したか否かを判定するためのカウンタであって、ＣＰＵ７１は、変数ｉが定数ntholdとなった時点で、上記所定時間Ｔが経過したと判定する。ここにおいて、定数ntholdは、上記所定時間を演算周期ΔTtで除した値である。
【００９７】
この時点では、変数ｉは「０」であり、上記所定時間Ｔが経過していないので、ＣＰＵ７１はステップ８３０にて「Ｎｏ」と判定し、ステップ８３５に進んで仮の推定スロットル弁開度TAest2にオープナ開度上限値TAMAXを格納し、続くステップ８４０にて変数ｉの値を「１」だけ増大させるとともに、続くステップ８４５にて、今回の推定スロットル弁開度TAestnewに仮の推定スロットル弁開度TAest2の値を格納する。なお、このステップ８３５は第２推定スロットル弁開度演算手段に対応する。これにより、今回の推定スロットル弁開度TAestnewがオープナ開度上限値TAMAXに設定される。そして、ＣＰＵ７１はステップ８９５へ進み、図８のルーチンを一旦終了する。
【００９８】
これ以降、ＣＰＵ７１は、図８のルーチンを繰り返し実行するにあたり、フラグFDHOLDの値が「１」となっている限りにおいて、変数ｉの値が定数ntholdになるまで、ステップ８００〜ステップ８１０，ステップ８１５（図９のルーチン），ステップ８２０，ステップ８３０，ステップ８３５，ステップ８４０，ステップ８４５，ステップ８９５の処理を繰り返し実行する。
【００９９】
これにより、今回の推定スロットル弁開度TAestnewの値が上記所定時間Ｔの間、オープナ開度上限値TAMAXに保持される。なお、この段階でフラグFDHOLDの値が「０」となる場合は、図９のステップ９３５にてＣＰＵ７１が「Ｙｅｓ」と判定し、ステップ９４０の処理を実行する場合のみであるところ、この場合については後述する。
【０１００】
いま、フラグFDHOLDの値が「１」に保持されつづけており、かつ変数ｉの値が定数ntholdになったものとして説明を続けると、ＣＰＵ７１は、ステップ８３０において「Ｙｅｓ」と判定してステップ８５０に進み、仮の推定スロットル弁開度TAest2（今回の推定スロットル弁開度TAestnew）の値を図７のステップ７０５にて演算した今回の暫定目標スロットル弁開度TAtnewの値に収束させるための処理を開始する。なお、このステップ８５０は第２推定スロットル弁開度演算手段に対応する。この時点は、図５における時刻t2に対応している。
【０１０１】
具体的には、ＣＰＵ７１は、ステップ８５０において、今回の暫定目標スロットル弁開度TAtnewの値と、前回の仮の推定スロットル弁開度TAest2の値（この時点ではオープナ開度上限値TAMAX）と、ステップ８５０内に記載した式とにより、今回の仮の推定スロットル弁開度TAest2を演算する。ここで、Smth2は収束係数であり、「１」より大きい一定値である。このステップ８５０内に記載した式は、このステップ８５０が実行される度に、今回の仮の推定スロットル弁開度TAest2の値を、収束係数Smth2に応じて今回の暫定目標スロットル弁開度TAtnewの値に徐々に収束させるための式となっている。
【０１０２】
次いで、ＣＰＵ７１は、ステップ８５５に進んで、今回の仮の推定スロットル弁開度TAest2の値が今回の暫定目標スロットル弁開度TAtnewの値に収束したか否かを判定する。具体的には、ＣＰＵ７１は、今回の仮の推定スロットル弁開度TAest2の値と今回の暫定目標スロットル弁開度TAtnewの値との差の絶対値が収束判定定数KTA（正の定数）未満となっているか否かを判定する。
【０１０３】
この時点（図５において時刻t2）では、まだ今回の仮の推定スロットル弁開度TAest2の値と今回の暫定目標スロットル弁開度TAtnewの値（即ち今回の目標スロットル弁開度TAest(ntdly)）との差は大きいのでこの条件は満足されず、ＣＰＵ７１はステップ８５５にて「Ｎｏ」と判定し、ステップ８６０に進んで変数ｊに「０」を設定するとともに、ステップ８４５に進んで仮の推定スロットル弁開度TAest2の値を推定スロットル弁開度TAestnewに格納する。ここで、変数ｊは、ステップ８５５における条件が連続して成立した回数をカウントするためのカウンタである。
【０１０４】
これ以降、ＣＰＵ７１は、図８のルーチンを繰り返し実行するにあたり、フラグFDHOLDの値が「１」となっている限りにおいて、ステップ８５５の条件が成立するまで、ステップ８００〜ステップ８１０，ステップ８１５（図９のルーチン），ステップ８２０，ステップ８３０，ステップ８５０，ステップ８５５，ステップ８６０，ステップ８４５，ステップ８９５の処理を繰り返し実行する。これにより、ステップ８５５の条件が成立するまでの間、今回の推定スロットル弁開度TAestnewの値が今回の暫定目標スロットル弁開度TAtnewの値に徐々に収束していく。なお、この段階でフラグFDHOLDの値が「０」となる場合も、図９のステップ９３５にてＣＰＵ７１が「Ｙｅｓ」と判定し、ステップ９４０の処理を実行する場合のみであるところ、この場合については後述する。
【０１０５】
いま、フラグFDHOLDの値が「１」に保持されつづけており、ステップ８５５の条件が成立したものとして説明を続けると、ＣＰＵ７１は、ステップ８５５において「Ｙｅｓ」と判定してステップ８６５に進み、変数ｊの値を「１」だけ増大させて変数ｊの値を「１」とした後、ステップ８７０に進んで、変数ｊの値が収束判定回数ntconv（１より大きい正の整数）になっているか否かを判定する。
【０１０６】
ここで、変数ｊの値が収束判定回数ntconvとなっていれば、ステップ８５５における条件が収束判定回数ntconv回だけ連続して成立したことになり、ＣＰＵ７１は、今回の仮の推定スロットル弁開度TAest2の値が今回の暫定目標スロットル弁開度TAtnewの値に収束完了したと判定する。しかし、この時点では、変数ｊの値は「１」であって収束判定回数ntconvとなっていないので、この条件は満足されず、ＣＰＵ７１はステップ８７０にて「Ｎｏ」と判定し、ステップ８４５に進んで仮の推定スロットル弁開度TAest2の値を今回の推定スロットル弁開度TAestnewに格納する。
【０１０７】
これ以降、ＣＰＵ７１は、図８のルーチンを繰り返し実行するにあたり、フラグFDHOLDの値が「１」となっている限りにおいて、ステップ８７０の条件が成立するまで、ステップ８００〜ステップ８１０，ステップ８１５（図９のルーチン），ステップ８２０，ステップ８３０，ステップ８５０〜ステップ８７０，ステップ８４５，ステップ８９５の処理を繰り返し実行する。なお、この段階でフラグFDHOLDの値が「０」となる場合も、図９のステップ９３５にてＣＰＵ７１が「Ｙｅｓ」と判定し、ステップ９４０の処理を実行する場合のみであるところ、この場合については後述する。
【０１０８】
いま、フラグFDHOLDの値が「１」に保持されつづけており、ステップ８７０の条件が成立したものとして説明を続けると、ＣＰＵ７１は、ステップ８７０において「Ｙｅｓ」と判定してステップ８７５に進んで、特異現象が終了したと判定したことを示すため、フラグFDHOLD及びフラグFUHOLDに「０」を設定する。そして、ＣＰＵ７１は、ステップ８４５に進んで仮の推定スロットル弁開度TAest2の値を推定スロットル弁開度TAestnewに格納するとともにステップ８９５に進んで図８のルーチンを一旦終了する。この時点は、図５における時刻t3に対応している。
【０１０９】
そしてこれ以降、フラグFDHOLD及びフラグFUHOLDは共に「０」となっているため、ＣＰＵ７１は、図８のルーチンにおいて上記した通常モードにおける処理を開始し、仮の推定スロットル弁開度TAest1の値が、そのまま今回の推定スロットル弁開度TAestnewとして設定されていくようになる。
【０１１０】
一方、上記したフラグFDHOLDの値が「１」になっている間（図５において時刻t1〜時刻t3までの間）、図８のルーチンを繰り返し実行するにあたり、ＣＰＵ７１は、フラグFDHOLDの値が「１」になっているか否かを判定する図９のステップ９０５に進んだ段階で、「Ｙｅｓ」と判定してステップ９３５に進むようになる。そして、ＣＰＵ７１は、ステップ９３５にて仮の推定スロットル弁開度TAest1の値がオープナ開度上限値TAMAXより大きいか否かを判定する。
【０１１１】
この条件は、仮の推定スロットル弁開度TAest2の値とは別個に、図８のステップ８１０にて常時繰り返し演算されている仮の推定スロットル弁開度TAest1が、オープナ開度上限値TAMAXより小さい領域において図５に示すように減少している過程において、目標スロットル弁開度TAt（ドライバーのアクセル操作量Accp）が増加を開始しオープナ開度上限値TAMAXを超えることにより、同目標スロットル弁開度TAtに追従する仮の推定スロットル弁開度TAest1の値が増加を開始し、オープナ開度上限値TAMAXを超えた場合に成立する。
【０１１２】
この条件が成立する場合、目標スロットル弁開度TAtに追従して実スロットル弁開度TAの値もオープナ開度上限値TAMAXを超えるように変化する可能性がある。従って、フラグFDHOLDの値を「１」に保持したまま、図５における時刻t1から時刻t3までにおいて図示のように（オープナ開度上限値TAMAX以下の範囲で）今回の推定スロットル弁開度TAestnew（TAest2）の値を演算していくと、実スロットル弁開度TAの値の方が今回の推定スロットル弁開度TAestnewの値より大きくなり、機関の空燃比が目標空燃比AbyFrefよりリーンに制御される事態が発生する。
【０１１３】
従って、かかる事態の発生を阻止するため（又はかかる事態が発生している期間を少しでも短くするため）、この条件が成立する場合は、オープナ開度上限値TAMAXを超えた値となっている仮の推定スロットル弁開度TAest1の値をそのまま今回の推定スロットル弁開度TAestnewに設定した方がよい。
【０１１４】
従って、このような場合、ＣＰＵ７１はステップ９３５にて「Ｙｅｓ」と判定し、続くステップ９４０に進んでフラグFDHOLDを「０」に設定する。これにより、これ以降、ＣＰＵ７１は、図８のルーチンにおいて上記した通常モードにおける処理を開始し、仮の推定スロットル弁開度TAest1の値が、そのまま今回の推定スロットル弁開度TAestnewとして設定されていくようになる。
【０１１５】
<増加モード>
次に、通常モードの状態から、例えばドライバーがアクセル操作量Accpを増加することにより、同アクセル操作量Accpにより変動する目標スロットル弁開度TAtの値に追従する仮の推定スロットル弁開度TAest1の値が、オープナ開度領域内で増加する場合（以下、この場合を「増加モード」と称呼する。）について説明する。以下、この場合の代表例として上述した図６を参照しつつ説明する。
【０１１６】
ＣＰＵ７１は、上記した通常モードの処理を繰り返し実行している過程において、今回の仮の推定スロットル弁開度TAest1の値が図６に示すように推移してオープナ開度上限値TAMAXより初めて大きくなったとき、図９のステップ９１５の増加過程特異現象開始判定において「Ｙｅｓ」と判定する。従って、ＣＰＵ７１はステップ９４５に進み、仮の推定スロットル弁開度TAest1が増加する過程において特異現象が開始・継続中であると判定していることを示すため、フラグFUHOLDに「１」を設定する。
【０１１７】
次いで、ＣＰＵ７１は、以後図８のルーチンにて使用する変数ｉを初期化するため、ステップ９５０にて変数ｉに「０」を設定した後、ステップ９９５に進んで特異現象開始判定ルーチンを一旦終了し、図８のステップ８２０に進む。この時点は、図６における時刻t1に対応している。
【０１１８】
この時点では、フラグFUHOLDが「１」に設定されているので、ＣＰＵ７１は、ステップ８２０において「Ｙｅｓ」と判定してステップ８３０に進む。これ以降ＣＰＵ７１は、図８のルーチンを繰り返し実行するにあたり、フラグFUHOLDの値が「１」となっている限りにおいて、上記した減少モードにおける処理と同一の処理を実行する。
【０１１９】
従って、これ以降今回の推定スロットル弁開度TAestnewの値は、上記所定時間Ｔの間（図６における時刻t1〜時刻t2）、オープナ開度上限値TAMAXの値に保持される。また、所定時間Ｔ経過後は、今回の推定スロットル弁開度TAestnewの値は、今回の暫定目標スロットル弁開度TAtnewに収束していくように演算されていく（図６における時刻t2〜時刻t3）。
【０１２０】
そして、今回の推定スロットル弁開度TAestnewの値が今回の暫定目標スロットル弁開度TAtnewに収束完了した後は、フラグFDHOLD及びフラグFUHOLDは共に「０」となっているため、図８のルーチンにおいて上記した通常モードにおける処理が開始され、仮の推定スロットル弁開度TAest1の値が、そのまま今回の推定スロットル弁開度TAestnewとして設定されていくようになる。
【０１２１】
一方、上記したフラグFUHOLDの値が「１」になっている間（図６において点Ｄ〜点Ｆまでの間）、図８のルーチンを繰り返し実行するにあたり、ＣＰＵ７１は、フラグFUHOLDの値が「１」になっているか否かを判定する図９のステップ９１０に進んだ段階で、「Ｙｅｓ」と判定してステップ９５５に進むようになる。そして、ＣＰＵ７１は、ステップ９５５にて仮の推定スロットル弁開度TAest1の値がオープナ開度上限値TAMAXより小さいか否かを判定する。
【０１２２】
この条件は、仮の推定スロットル弁開度TAest2の値とは別個に、図８のステップ８１０にて常時繰り返し演算されている仮の推定スロットル弁開度TAest1が、オープナ開度上限値TAMAXより大きい領域において図６に示すように増加している過程において、目標スロットル弁開度TAt（ドライバーのアクセル操作量Accp）が減少を開始しオープナ開度上限値TAMAXより小さくなることにより、同目標スロットル弁開度TAtに追従する仮の推定スロットル弁開度TAest1の値が減少を開始し、オープナ開度上限値TAMAXより小さくなる場合に成立する。
【０１２３】
この条件が成立する場合、図９のステップ９２０における減少過程特異現象開始判定において「Ｙｅｓ」と判定される条件が成立する。即ち、今回の仮の推定スロットル弁開度TAest1の値が前回の仮の推定スロットル弁開度TAest1*の値よりも小さく、かつ前回の仮の推定スロットル弁開度TAest1*の値がオープナ開度下限値TAMINよりも大きく、かつ今回の仮の推定スロットル弁開度TAest1の値がオープナ開度上限値TAMAXよりも小さくなる。
【０１２４】
よって、この条件が成立する場合は、この時点まで継続中であると判定されていた特異現象が終了するとともに、仮の推定スロットル弁開度TAest1が減少する過程において（減少モードにおいて）特異現象が新たに開始したと判定する方がよい。その時点から新たに上記所定時間Ｔが経過するまでの間、推定スロットル弁開度TAestnewの値がオープナ開度上限値TAMAXに保持されて確実に実スロットル弁開度TAよりも大きくなることにより、機関の空燃比が目標空燃比AbyFrefよりもリーンにならないように制御されるからである。
【０１２５】
従って、このような場合、ＣＰＵ７１はステップ９５５にて「Ｙｅｓ」と判定し、続くステップ９６０に進んでフラグFUHOLDを「０」に設定した後、ステップ９２０にて「Ｙｅｓ」と判定するとともにステップ９２５に進んでフラグFDHOLDを「１」に設定する。これにより、これ以降、ＣＰＵ７１は、図８のルーチンにおいて上記した減少モードにおける処理を開始し、仮の推定スロットル弁開度TAest2の値が、今回の推定スロットル弁開度TAestnewとして設定されていくようになる。以上説明したように、今回の推定スロットル弁開度TAestnewは図８のルーチンが実行される毎に演算されていく。
【０１２６】
（吸入空気量の演算）
ＣＰＵ７１は、図１０にフローチャートにより示したルーチンを演算周期ΔTt（ここでは、８msec）の経過毎に実行することにより、図８のルーチンにて演算された今回の推定スロットル弁開度TAestnewに基づく吸入空気量Ｑnew（Ｑ(ntdly)）の演算を行う。
【０１２７】
具体的には、ＣＰＵ７１はステップ１０００から処理を開始し、ステップ１００５に進んで、クランクポジションセンサ６４の出力値に基づいてその時点でのエンジン回転速度NEを取得し、取得したエンジン回転速度NEの値と、今回の推定スロットル弁開度TAestnewの値と、ステップ１００５内に記載したテーブルとに基づいて、吸入空気量Ｑnewを演算する。これにより、今回の推定スロットル弁開度TAestnewに基づく吸入空気量Ｑnewが決定される。そして、ＣＰＵ７１はステップ１０９５に進んで本ルーチンを一旦終了する。
【０１２８】
（遅延処理）
ＣＰＵ７１は、図１１にフローチャートにより示したルーチンを演算周期ΔTt（ここでは、８msec）の経過毎に実行することにより、図７のルーチンにて演算された今回の暫定目標スロットル弁開度TAtnew、図８のルーチンにて演算された今回の推定スロットル弁開度TAestnew及び図１０のルーチンにて演算された吸入空気量Ｑnewについて、遅延処理を行う。具体的には、ＣＰＵ７１はステップ１１００から処理を開始し、ステップ１１０５に進んで変数ｈに「０」を設定し、ステップ１１１０に進んで変数ｈが遅延処理回数ntdlyと等しいか否かを判定する。
【０１２９】
この時点で変数ｈは「０」であるから、ＣＰＵ７１はステップ１１１０にて「Ｎｏ」と判定し、ステップ１１１５に進んで目標スロットル弁開度TAt(h)に目標スロットル弁開度TAt(h+1)の値を格納し、続くステップ１１２０にて推定スロットル弁開度TAest(h)に推定スロットル弁開度TAest(h+1)の値を格納するとともに、続くステップ１１２５にて吸入空気量Ｑ(h)に吸入空気量Ｑ(h+1)の値を格納する。以上の処理により、目標スロットル弁開度TAt(0)に目標スロットル弁開度TAt(1)の値が格納され、推定スロットル弁開度TAest(0)に推定スロットル弁開度TAest(1)の値が格納され、吸入空気量Ｑ(0)に吸入空気量Ｑ(1)の値が格納される。
【０１３０】
次いで、ＣＰＵ７１は、ステップ１１３０にて変数ｈの値を「１」だけ増大させてステップ１１１０に復帰する。そして変数ｈの値が遅延処理回数ntdlyより小さければ、再びステップ１１１５〜ステップ１１３０の処理を実行する。即ち、ステップ１１１５〜ステップ１１３０は、変数ｈの値が遅延回数ntdlyと等しくなるまで繰り返し実行される。これにより、目標スロットル弁開度TAt(h+1)の値が目標スロットル弁開度TAt(h)に順次シフトされ、推定スロットル弁開度TAest(h+1)の値が推定スロットル弁開度TAest(h)に順次シフトされるとともに、吸入空気量Ｑ(h+1)の値が吸入空気量Ｑ(h)に順次シフトされて行く。
【０１３１】
前述のステップ１１３０が繰り返されることにより変数ｈの値が遅延処理回数ntdlyと等しくなると、ＣＰＵ７１はステップ１１１０にて「Ｙｅｓ」と判定してステップ１１３５に進み、今回の暫定目標スロットル弁開度TAtnewの値を目標スロットル弁開度TAt(ntdly)に格納し、続くステップ１１４０にて今回の推定スロットル弁開度TAestnewの値を推定スロットル弁開度TAest(ntdly)に格納するとともに、続くステップ１１４５にて今回の推定スロットル弁開度TAestnewに基づく吸入空気量Ｑnewの値を吸入空気量Ｑ(ntdly)に格納する。
【０１３２】
そして、ＣＰＵ７１は、ステップ１１５０にて目標スロットル弁開度TAtに目標スロットル弁開度TAt(0)の値を設定するとともに、ステップ１１９５に進んで本遅延処理ルーチンを一旦終了する。
【０１３３】
以上のように、目標スロットル弁開度TAtに関するメモリ（ＲＡＭ７３）においては、本遅延処理ルーチンが実行される毎にメモリの内容が一つずつシフトされて行き、目標スロットル弁開度TAt(0)に格納された値が、ＣＰＵ７１よってスロットル弁アクチュエータ４４に出力される目標スロットル弁開度TAtとして設定される。即ち、今回の本ルーチンの実行により目標スロットル弁開度TAt(ntdly)に格納された値TAtnewは、今後において本ルーチンが遅延処理回数ntdlyだけ繰り返されたときにTAt(0)に格納され、目標スロットル弁開度TAtとなる。
【０１３４】
また、推定スロットル弁開度TAestに関するメモリにおいては、同メモリ内のTAest(m)に、現時点から所定時間(m・ΔTt)経過後の推定スロットル弁開度TAestが格納されて行く。同様に、吸入空気量Ｑに関するメモリにおいても、同メモリ内のＱ(m)に、現時点から所定時間(m・ΔTt)経過後の推定スロットル弁開度TAest(m)に基づく吸入空気量Ｑが格納されて行く。この場合の値mは、１〜ntdlyの整数である。
【０１３５】
（噴射実行ルーチン）
次に、電気制御装置７０が、実際に燃料噴射を行うために実行するルーチンについて、同ルーチンをフローチャートにより示した図１２を参照して説明すると、ＣＰＵ７１は各気筒のクランクアングルがBTDC９０°ＣＡになる毎に、各気筒（燃料噴射気筒）毎に同図１２に示したルーチンを実行するようになっている。
【０１３６】
従って、特定の（任意の）気筒のクランク角度がBTDC９０°ＣＡになると、ＣＰＵ７１はステップ１２００から処理を開始し、続くステップ１２０５にて、クランクポジションセンサ６４の出力値に基づいてその時点でのエンジン回転速度NEを取得し、取得したエンジン回転速度NEの値により燃料噴射気筒の吸気弁３２の閉弁時を予測するとともに、ＲＡＭ７３に格納されているその時点から遅延時間TD経過後までの吸入空気量Ｑ(0)〜Ｑ(ntdly)の中から同吸気弁閉弁時に対応する吸入空気量Ｑを選択する。
【０１３７】
次に、ＣＰＵ７１は、ステップ１２１０に進んで、選択した（予測した）吸入空気量Ｑを目標空燃比AbyFrefで除することにより燃料噴射量fiを求め（燃料噴射量演算手段に対応する）、続くステップ１２１５にて燃料噴射気筒のインジェクタ３９に対して燃料噴射量fiの燃料の噴射を指示する。これにより、燃料噴射量fiに応じた量の燃料が燃料噴射気筒のインジェクタ３９から噴射される。その後、ＣＰＵ７１はステップ１２９５に進んで本ルーチンを一旦終了する。
【０１３８】
（オープナ開度領域学習）
また、ＣＰＵ７１は、図１３にフローチャートにより示したルーチンを演算周期ΔTt（ここでは、８msec）の経過毎に実行することにより、オープナ開度領域の学習を実行している。このルーチンは、現時点における実オープナ開度TACNTnewを検出するとともに、検出した実オープナ開度TACNTnewの値が、その時点でのオープナ開度上限値TAMAXより大きい値又はオープナ開度下限値TAMINより小さい値であった場合（その時点において設定されているオープナ開度領域外の値であった場合）には、その時点でのオープナ開度上限値TAMAX又はオープナ開度下限値TAMINを、同実オープナ開度TACNTnewの値に更新する処理を行うルーチンである。
【０１３９】
具体的には、ＣＰＵ７１はステップ１３００から処理を開始し、ステップ１３０５に進んで、前回の演算周期にて検出された（具体的には続くステップ１３１０にて前回検出された）実スロットル弁開度TAactの値を、前回の実スロットル弁開度TAact*に格納する。この処理は、今回の演算周期におけるステップ１３１０にて実スロットル弁開度TAactの値を更新する準備として実行される。
【０１４０】
次に、ＣＰＵ７１はステップ１３１０に進み、スロットルポジションセンサ６２の出力値に基づいてその時点での実スロットル弁開度TAを読込み、同実スロットル弁開度TAの値を今回の実スロットル弁開度TAactに格納する。
【０１４１】
次いで、ＣＰＵ７１はステップ１３１５に進んで、図１１のステップ１１５０にて設定されている目標スロットル弁開度TAtと、予め設定されているオープナ開度の設計上の中央値TACNT（以下、「オープナ開度中央値」と称呼する。）との偏差の絶対値が正の定数KOPより小さいか否かを判定し、同ステップ１３１５にて「Ｙｅｓ」と判定する場合には、ステップ１３２０に進んで今回の実スロットル弁開度TAactと、オープナ開度中央値TACNTとの偏差の絶対値が前記定数KOPより小さいか否かを判定し、同ステップ１３２０にて「Ｙｅｓ」と判定する場合には、ステップ１３２５に進んで今回の実スロットル弁開度TAactと、前回の実スロットル弁開度TAact*との偏差の絶対値が定常判定定数KSA（正の定数）未満となっているか否かを判定する。
【０１４２】
一方、ＣＰＵ７１は、上記ステップ１３１５、ステップ１３２０及びステップ１３２５のいずれか一つにおいて「Ｎｏ」と判定した場合、この時点での実スロットル弁開度TAactの値は、その時点における実オープナ開度TACNTnewである可能性がない（少ない）ので、ステップ１３３０に進んで変数Ｋに「０」を設定するとともに、ステップ１３３５にて変数TAtotalに「０」を設定して、オープナ開度上限値TAMAX及びオープナ下限値TAMINを学習（更新）することなくステップ１３９５に進んで、本ルーチンを一旦終了する。ここで、変数Ｋは、ステップ１３１５，ステップ１３２０及びステップ１３２５における条件が共に連続して成立した回数をカウントするためのカウンタである。また、変数TAtotalは、後述するステップ１３６０にて実オープナ開度TACNTnewを演算するための変数である。
【０１４３】
いま、ステップ１３１５，ステップ１３２０及びステップ１３２５の条件が共に成立しているものとして説明を続けると、ＣＰＵ７１は、実スロットル弁開度TAactの値はオープナ開度中央値TACNTに近く、かつ略一定となっているので、その時点における実オープナ開度TACNTnewである可能性があると判定し、ステップ１３４０に進み、その時点における変数TAtotalの値（現時点では「０」）に今回の実スロットル弁開度TAactの値を加えた値を変数TAtotalに格納する。
【０１４４】
次いで、ＣＰＵ７１は、ステップ１３４５に進んで変数Ｋの値を「１」だけ増大させて変数Ｋの値を「１」とした後、ステップ１３５０に進んで、変数Ｋの値が学習実行許可回数ntl（１より大きい正の整数）になっているか否かを判定する。ここで、変数Ｋの値が学習実行許可回数ntlとなっていれば、ステップ１３１５，ステップ１３２０及びステップ１３２５における条件が同時に学習実行許可回数ntlだけ連続して成立したことになり、ＣＰＵ７１は、現時点での実スロットル弁開度TAactの値は、現時点における実オープナ開度TACNTnewであると判定する。しかし、この時点では、変数Ｋの値は「１」であって学習実行許可回数ntlとなっていないので、この条件は満足されず、ＣＰＵ７１はステップ１３５０にて「Ｎｏ」と判定し、オープナ開度上限値TAMAX及びオープナ下限値TAMINを学習（更新）することなくステップ１３９５に進んで、本ルーチンを一旦終了する。
【０１４５】
これ以降、ＣＰＵ７１は、図１３のルーチンを繰り返し実行するにあたり、ステップ１３１５，ステップ１３２０及びステップ１３２５における条件が同時に連続して成立する限りにおいて、ステップ１３５０の条件が成立するまで、ステップ１３００〜ステップ１３５０，ステップ１３９５の処理を繰り返し実行する。
【０１４６】
いま、ステップ１３１５，ステップ１３２０及びステップ１３２５における条件が同時に学習実行許可回数ntlだけ連続して成立したものとして説明を続けると、ＣＰＵ７１は、ステップ１３５０において「Ｙｅｓ」と判定してステップ１３５５に進んで、変数TAtotalの値を学習実行許可回数ntlで除した値を実オープナ開度TACNTnewに格納する。ここで、変数TAtotalは、ステップ１３４０の処理により、実スロットル弁開度TAactの値を、((学習実行許可回数ntl)-1)回分遡った過去値から今回値まで学習実行許可回数ntl回加算した値となっているので、実オープナ開度TACNTnewの値は、実スロットル弁開度TAactの値の((学習実行許可回数ntl)-1)回分遡った過去値から今回値までの平均値となる。
【０１４７】
次いで、ＣＰＵ７１は更新手段に対応するステップ１３６０に進んで、オープナ開度上限値TAMAX又はオープナ開度下限値TAMINの学習を行う。具体的には、ＣＰＵ７１は、ステップ１３５５にて演算した実オープナ開度TACNTnewの値と現時点でのオープナ開度上限値TAMAXの大きい方の値を今後のオープナ開度上限値TAMAXとする。同様に、ＣＰＵ７１は、ステップ１３５５にて演算した実オープナ開度TACNTnewの値と現時点でのオープナ開度下限値TAMINの小さい方の値を今後のオープナ開度下限値TAMINとする。これにより、その時点でのオープナ開度上限値TAMAX又はオープナ開度下限値TAMINが、適宜、実オープナ開度TACNTnewの値に更新されていく。
【０１４８】
そして、ＣＰＵ７１は、次回のオープナ開度領域の学習処理の準備として、ステップ１３３０に進んで変数Ｋに「０」を設定するとともに、ステップ１３３５にて変数TAtotalに「０」を設定した後、ステップ１３９５に進んで本ルーチンを一旦終了する。
【０１４９】
次に、図１４及び図１５を用いて、オープナ開度領域近傍において（仮の）推定スロットル弁開度が推移する種々の場合において、特異現象が開始したと判定されるか否かについて、以上説明した本発明の実施形態に係る燃料噴射量制御装置と、上述した図１６に示したように推定スロットル弁開度を演算する従来技術による制御装置とを比較した結果を説明する。図１４は、オープナ開度領域近傍において仮の推定スロットル弁開度（今回値TAest1）の値がその前回値TAest1*より小さくなる種々の場合の比較結果を示し、図１５は、オープナ開度領域近傍において仮の推定スロットル弁開度（今回値TAest1）の値が前回値TAest1*より大きくなる種々の場合の比較結果を示している。
【０１５０】
図１４に示したように、従来技術においては、オープナ開度領域内で仮の推定スロットル弁開度が減少する(2)〜(8)及び(10)の場合（図中において網掛けされた場合）のうち、オープナ開度中央値TACNTが前回値と今回値との間の値になる(3),(5),(7)及び(10)の場合には、特異現象が開始したと判定され、オープナ開度中央値TACNTが前回値と今回値との間の値にならない(2),(4),(6)及び(8)の場合には、特異現象が開始しないと判定される。
【０１５１】
しかし、特異現象が開始したと判定される(3),(5),(7)及び(10)の場合、推定スロットル弁開度の値はそれ以後オープナ開度中央値TACNTに保持されるところ、実オープナ開度（実スロットル弁開度）は同オープナ開度中央値TACNTより大きい値となっている可能性があり、機関の空燃比が目標空燃比AbyFrefよりリーンとなる可能性がある。また、特異現象が開始しないと判定される(2),(4),(6)及び(8)の場合、推定スロットル弁開度の値はそれ以後も仮のスロットル弁開度の値そのままとなるところ、実際には特異現象が開始されており実オープナ開度（実スロットル弁開度）が同仮のスロットル弁開度の値より大きい値となっている可能性がある。従って、この場合も機関の空燃比が目標空燃比AbyFrefよりリーンとなる可能性がある。
【０１５２】
一方、本発明においては、オープナ開度領域内で仮の推定スロットル弁開度TAest1が減少する(2)〜(8)及び(10)の場合（即ち、（仮の）推定スロットル弁開度TAest1が減少する過程において同推定スロットル弁開度TAest1が一時的にでもオープナ開度領域内で減少する時間が存在する場合）には全て、図９のステップ９２０にて特異現象が開始したと判定され、推定スロットル弁開度TAest（TAest2）の値はそれ以後オープナ開度上限値TAMAXに保持される。従って、この過程において、実際に特異現象が開始されているか否かにかかわらず、実スロットル弁開度TAが推定スロットル弁開度TAest（TAest2）より大きくなることはない。従って、(2)〜(8)及び(10)の場合の全てにおいて、機関の空燃比は、目標空燃比AbyFrefよりリッチとなることはあってもリーンとなることはない。
【０１５３】
また、図１５に示したように、従来技術においては、図中において網掛けされた(3),(5),(7)及び(10)の場合、オープナ開度中央値TACNTが前回値と今回値との間の値になるので特異現象が開始したと判定してしまう。この場合、推定スロットル弁開度の値はそれ以後オープナ開度中央値TACNTに保持されるところ、実オープナ開度（実スロットル弁開度）は同オープナ開度中央値TACNTより大きい値となっている可能性があり、機関の空燃比が目標空燃比AbyFrefよりリーンとなる可能性がある。
【０１５４】
一方、本発明においては、図中において網掛けされた(3),(5),(7)及び(10)の場合のうち、オープナ開度上限値TAMAXが前回値と今回値との間の値になる(3)及び(10)の場合には、図９のステップ９１５にて特異現象が開始したと判定され、オープナ開度上限値TAMAXが前回値と今回値との間の値にならない(5)及び(7)の場合には、同ステップにて特異現象が開始しないと判定される。
【０１５５】
ここで、特異現象が開始したと判定される(3)及び(10)の場合、推定スロットル弁開度TAest（TAest2）の値はそれ以後オープナ開度上限値TAMAXに保持されるので、実スロットル弁開度TAが推定スロットル弁開度TAest（TAest2）より大きい値となることがなく、機関の空燃比が目標空燃比AbyFrefよりリーンとなることがない。また、特異現象が開始しないと判定される(5)及び(7)の場合、推定スロットル弁開度TAestの値はそれ以後も仮のスロットル弁開度TAest1の値そのままとなるので、この過程において、実際に特異現象が開始されているか否かにかかわらず、実スロットル弁開度TAが推定スロットル弁開度TAest（TAest1）より大きくなることはない。従って、(5)及び(7)の場合も、機関の空燃比は目標空燃比AbyFrefよりリーンとなることはない。従って、(3),(5),(7)及び(10)の場合の全てにおいて、機関の空燃比は、目標空燃比AbyFrefよりリッチとなることはあってもリーンとなることはない。
【０１５６】
以上、説明したように、本発明の実施形態に係る内燃機関の燃料噴射量制御装置によれば、実スロットル弁開度がオープナ開度領域を通過するとき、機関の空燃比が目標空燃比よりもリーンにならないように制御されるので、この過程において内燃機関が失火する等の不具合が発生しにくくなる。
【０１５７】
また、本発明は上記実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、上記実施形態においては、図８のステップ８３５にて、仮の推定スロットル弁開度TAest2を一律にオープナ開度上限値TAMAXに保持しているが、フラグFDHOLDが「１」に設定されているとき（図９のステップ９２０にて、仮の推定スロットル弁開度TAest1が減少する過程において特異現象が開始した（「Ｙｅｓ」）と判定されたとき）であって、同ステップ９２０にて「Ｙｅｓ」と判定した時点での推定スロットル弁開度TAest1の前回値TAest1*の値がオープナ開度上限値TAMAX未満の場合（図１４において(4)〜(8)の場合）には、図８のステップ８３５にて仮の推定スロットル弁開度TAest2を同前回値TAest1*の値に保持してもよい。
【０１５８】
この理由は以下のとおりである。即ち、図１４における(4)〜(8)に示すように仮の推定スロットル弁開度が推移したことにより特異現象が開始したと判定された場合、図１４に示す前回値TAest1*に対応する時刻になるまでの間、仮の推定スロットル弁開度TAest1の値は、増加しながら同前回値に到達したか、又は同前回値を維持していたかのどちらかである。従って、図１４における(4)〜(8)に示すように仮の推定スロットル弁開度TAest1が推移する過程において実際に特異現象が発生しているときは、実スロットル弁開度TA（実オープナ開度開度）の値は少なくとも図１４に示す前回値以下の値となっている。また、図１４における(4)〜(8)に示すように仮の推定スロットル弁開度TAest1が推移する過程において実際に特異現象が発生していないときは、実スロットル弁開度TA（実オープナ開度開度）の値は推定スロットル弁開度TAest1の値と（略）同一になるように変化する。
【０１５９】
よって、特異現象が開始したと判定された時点以降所定時間Ｔの間、実際に特異現象が継続しているか否かにかかわらず、実スロットル弁開度TAの値が仮の推定スロットル弁開度TAest1の前回値TAest1*（図１４中に示した前回値）より大きくなることはない（可能性は少ない）。従って、仮の推定スロットル弁開度TAest2を実スロットル弁開度TAがとり得る値のうちの上限値である前回値TAest1*（又は同前回値TAest1*以上オープナ開度上限値TAMAX以下）に保持しても、機関の空燃比が目標空燃比よりもリーンになることはないからである。
【０１６０】
また、上記実施形態においては、仮の推定スロットル弁開度TAest（TAest2）を所定時間Ｔの間オープナ開度上限値TAMAXに保持した後、図８のステップ８５０において、同推定スロットル弁開度TAest（TAest2）が目標スロットル弁開度TAtnewに収束するように同推定スロットル弁開度TAest2を演算しているが、図８のステップ８５０において、同推定スロットル弁開度TAest（TAest2）が仮の推定スロットル弁開度TAest1に収束するように同推定スロットル弁開度TAest2を演算してもよい。
【図面の簡単な説明】
【図１】  本発明による燃料噴射量制御装置を火花点火式多気筒内燃機関に適用したシステムの概略構成図である。
【図２】  図１に示したスロットル弁近傍の概略構成図である。
【図３】  図２に示したオープナ機構により発生するスロットル弁アクチュエータに働く負荷トルクと実スロットル弁開度との関係を示したグラフである。
【図４】  図１に示したＣＰＵが演算する暫定目標スロットル弁開度、目標スロットル弁開度、及び推定スロットル弁開度の時間的変化を示したタイムチャートである。
【図５】  推定スロットル弁開度がオープナ開度領域を減少しながら通過する過程において、図１に示したＣＰＵが演算する暫定目標スロットル弁開度、目標スロットル弁開度、及び推定スロットル弁開度の時間的変化を示したタイムチャートであって、図５（ａ）は、実オープナ開度がオープナ開度上限値となっている場合を、図５（ｂ）は、実オープナ開度がオープナ開度下限値となっている場合を示したタイムチャートである。
【図６】  推定スロットル弁開度がオープナ開度領域を増加しながら通過する過程において、図１に示したＣＰＵが演算する暫定目標スロットル弁開度、目標スロットル弁開度、及び推定スロットル弁開度の時間的変化を示したタイムチャートであって、図６（ａ）は、実オープナ開度がオープナ開度上限値となっている場合を、図６（ｂ）は、実オープナ開度がオープナ開度下限値となっている場合を示したタイムチャートである。
【図７】  図１に示したＣＰＵが実行する目標スロットル弁開度を演算するためのプログラムを示したフローチャートである。
【図８】  図１に示したＣＰＵが実行する推定スロットル弁開度を演算するためのプログラムを示したフローチャートである。
【図９】  図１に示したＣＰＵが実行する特異現象が開始したか否かを判定するためのプログラムを示したフローチャートである。
【図１０】  図１に示したＣＰＵが実行する吸入空気量を演算するためのプログラムを示したフローチャートである。
【図１１】  図１に示したＣＰＵが実行する、同ＣＰＵが演算した目標スロットル弁開度、推定スロットル弁開度及び吸入空気量の値をそれぞれ遅延させるためのプログラムを示したフローチャートである。
【図１２】  図１に示したＣＰＵが実行する燃料噴射を実行するためのプログラムを示したフローチャートである。
【図１３】  図１に示したＣＰＵが実行するオープナ開度領域を学習するためのプログラムを示したフローチャートである。
【図１４】  オープナ開度領域近傍において推定スロットル弁開度が減少しながら推移する種々の場合において、特異現象が開始したと判定されるか否かについて、本発明の実施形態に係る燃料噴射量制御装置と、従来技術による制御装置とを比較した結果を示した図である。
【図１５】  オープナ開度領域近傍において推定スロットル弁開度が増加しながら推移する種々の場合において、特異現象が開始したと判定されるか否かについて、本発明の実施形態に係る燃料噴射量制御装置と、従来技術による制御装置とを比較した結果を示した図である。
【図１６】  推定スロットル弁開度がオープナ開度領域を通過する過程において、従来技術における燃料噴射量制御装置（ＣＰＵ）が演算する暫定目標スロットル弁開度、目標スロットル弁開度、及び推定スロットル弁開度の時間的変化を示したタイムチャートであって、図１６（ａ）は、推定スロットル弁開度がオープナ開度領域を減少しながら通過する場合を、図１６（ｂ）は、推定スロットル弁開度がオープナ開度領域を増加しながら通過する場合を示したタイムチャートである。
【符号の説明】
１０…火花点火式多気筒内燃機関、２０…シリンダブロック部（エンジン本体部）、２５…燃焼室、３１…吸気ポート、３２…吸気弁、３９…インジェクタ、４１…吸気管、４３…スロットル弁、４４…スロットル弁アクチュエータ、４５…オープナ機構、７０…電気制御装置、７１…ＣＰＵ。
【図１】
0003821044.tif 000002
【図２】
0003821044.tif 000003
【図３】
0003821044.tif 000004
【図４】
0003821044.tif 000005
【図５】
0003821044.tif 000006
【図６】
0003821044.tif 000007
【図７】
0003821044.tif 000008
【図８】
0003821044.tif 000009
【図９】
0003821044.tif 000010
【図１０】
0003821044.tif 000011
【図１１】
0003821044.tif 000012
【図１２】
0003821044.tif 000013
【図１３】
0003821044.tif 000014
【図１４】
0003821044.tif 000015
【図１５】
0003821044.tif 000016
【図１６】
0003821044.tif 000017