(57)【要約】【課題】加速時における点火時期の遅角補正を、実際の車両駆動力の変動に応じた最適なタイミングで実行でき、加速性能を確保しながら、トルク変動による車両前後振動を効果的に抑制できる内燃機関の点火時期制御装置を提供する。【解決手段】加速要求を検出する加速要求検出手段６と、検出された内燃機関２の回転数ＮＥ、変速機２５の変速比および車両Ｖの速度ＶＰに基づいて、車両Ｖの速度ＶＰに対応する回転数を上回る内燃機関２の余剰回転数ＳＮＥを算出する余剰回転数算出手段３と、余剰回転数ＳＮＥに基づいて、余剰回転変動量ＤＳＮＥを算出する余剰回転変動量算出手段３と、加速要求が検出されたときに、余剰回転数ＳＮＥおよび余剰回転変動量ＤＳＮＥに基づいて、点火時期ＩＧＬＯＧを遅角側に補正する遅角補正を実行する遅角補正実行手段３と、を備えている。【選択図】  図１２
2004360475.tif 000002
【特許請求の範囲】
【請求項１】
車両に搭載され、加速時に点火時期を遅角側に制御する内燃機関の点火時期制御装置であって、
前記内燃機関に対する加速要求を検出する加速要求検出手段と、
前記内燃機関の回転数を検出する回転数検出手段と、
前記内燃機関と駆動輪の間に連結された変速機の変速比を検出する変速比検出手段と、
前記車両の速度を検出する車両速度検出手段と、
前記検出された内燃機関の回転数、変速機の変速比および車両の速度に基づいて、前記車両の速度に対応する回転数を上回る前記内燃機関の余剰回転数を算出する余剰回転数算出手段と、
当該算出された余剰回転数に基づいて、前記内燃機関の余剰回転変動量を算出する余剰回転変動量算出手段と、
前記加速要求が検出されたときに、前記余剰回転数および前記余剰回転変動量に基づいて、前記点火時期を遅角側に補正する遅角補正を実行する遅角補正実行手段と、
を備えていることを特徴とする内燃機関の点火時期制御装置。
【請求項２】
前記遅角補正実行手段は、前記余剰回転数が所定回転数よりも大きく、かつ前記余剰回転変動量が所定量よりも小さいときに、前記遅角補正を実行することを特徴とする、請求項１に記載の内燃機関の点火時期制御装置。
【請求項３】
前記遅角補正実行手段は、前記余剰回転数の絶対値が所定のしきい値以上のときに、前記遅角補正を実行することを特徴とする、請求項１または２に記載の内燃機関の点火時期制御装置。
【請求項４】
前記余剰回転数検出手段は、
前記変速機の変速比、前記車両の速度、および前記内燃機関から前記駆動輪に伝達される駆動力の伝達ロスの度合に基づいて、前記内燃機関の理想回転数を算出する理想回転数算出手段を有し、
前記余剰回転数を、前記内燃機関の回転数と前記算出された理想回転数との偏差として算出することを特徴とする、請求項１ないし３のいずれかに記載の内燃機関の点火時期制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内燃機関の点火時期制御装置に関し、特に加速時における急激なトルク変動に起因する車両前後振動を低減するために点火時期を遅角側に制御する点火時期制御装置に関する。
【０００２】
【従来の技術】
車両の加速時には、内燃機関のトルクの急激な増加に対して駆動輪が追従できないために、内燃機関から駆動輪へトルクを伝達する駆動系、特にドライブシャフトにねじれが生じ、それに起因する内燃機関の変位をマウントで吸収する際に加速変動が起き、車両前後振動が発生することがある。このような車両前後振動が発生すると、加速感を悪化させるとともに、走行安定性を損なう。このような問題を解決するための従来の点火時期制御装置として、例えば特許文献１に開示されたものが知られている。
【０００３】
この点火時期制御装置では、検出された内燃機関の回転数の時間微分値、さらにこれを時間微分した２回時間微分値を求めるとともに、２回微分値の積分値、さらにこれを積分した２回積分値を求める。そして、この２回積分値が、内燃機関の軸などの弾性部のねじり量の微分値（ねじり角速度）に比例するとして、この２回積分値に比例する点火時期補正量を算出し、この点火時期補正量を基本点火時期から差し引き、点火時期を遅角側に補正することによって、内燃機関の出力を低下させ、それにより、ねじり振動の見かけの減衰力を増すことで、振動を抑制するようにしている。
【０００４】
【特許文献１】
特許第２６３３８２９号公報（第３図）
【０００５】
【発明が解決しようとする課題】
しかし、上述した従来の点火時期制御装置による手法は、内燃機関の回転とそれにより駆動される駆動輪の回転との位相差が一定の場合に限り、有効に作用する。これに対し、加速変動は、急激な加速中にのみ発生するものであり、主として駆動輪の伝達トルク量が内燃機関の出力トルクに対して少ないことに起因している。このため、加速変動が発生するような状況では、内燃機関の回転と駆動輪の回転との位相差が、一定ではなく、変化するため、この点火時期制御装置によっては、車両前後振動を有効に抑制できない。また、この点火時期制御装置では、２回積分値に基づいて点火時期補正量を求めるにすぎないので、それに基づく遅角補正を、ねじり振動を抑制するのに適したタイミングで実行できず、その結果、やはり車両前後振動を有効に抑制することができない。
【０００６】
本発明は、このような課題を解決するためになされたものであり、加速時における点火時期の遅角補正を、実際の車両駆動力の変動に応じた最適なタイミングで実行でき、それにより、加速性能を確保しながら、トルク変動による車両前後振動を効果的に抑制することができる内燃機関の点火時期制御装置を提供することを目的とする。
【０００７】
【課題を解決するための手段】
この目的を達成するために、請求項１に係る発明は、車両に搭載され、加速時に点火時期を遅角側に制御する内燃機関の点火時期制御装置であって、内燃機関２に対する加速要求を検出する加速要求検出手段（実施形態における（以下、本項において同じ）スロットル開度センサ６）と、内燃機関２の回転数（エンジン回転数ＮＥ）を検出する回転数検出手段（クランク角センサ１５、ＥＣＵ３）と、内燃機関２と駆動輪（前輪２８）の間に連結された変速機２５の変速比（ギヤ比ＲＧＥＡＲ）を検出する変速比検出手段（ギヤ位置センサ２０）と、車両Ｖの速度ＶＰを検出する車両速度検出手段（後輪回転数センサ１９ａ、１９ｂ）と、検出された内燃機関２の回転数、変速機２５の変速比および車両Ｖの速度ＶＰに基づいて、車両Ｖの速度ＶＰに対応する回転数を上回る内燃機関２の余剰回転数ＳＮＥを算出する余剰回転数算出手段（ＥＣＵ３、図４のステップ３１、図６のステップ６２）と、算出された余剰回転数ＳＮＥに基づいて、内燃機関２の余剰回転変動量ＤＳＮＥを算出する余剰回転変動量算出手段（ＥＣＵ３、図４のステップ３１、図６のステップ６３）と、加速要求が検出されたときに、余剰回転数ＳＮＥおよび算出された余剰回転変動量ＤＳＮＥに基づいて、点火時期ＩＧＬＯＧを遅角側に補正する遅角補正を実行する遅角補正実行手段（ＥＣＵ３、図１２のステップ８１〜８３、８５）と、を備えていることを特徴とする。
【０００８】
この内燃機関の点火時期制御装置によれば、検出された内燃機関の回転数、変速機の変速比および車両の速度に基づき、余剰回転数算出手段によって、そのときの車両の速度に対応する回転数を上回る内燃機関の余剰回転数が算出される。また、算出した余剰回転数に基づいて、余剰回転変動量が算出される。そして、加速要求が検出されたときに、点火時期の遅角補正の実行タイミングが、余剰回転数および余剰回転変動量に基づいて決定される。このように、加速時における点火時期の遅角補正の実行タイミングを、内燃機関の余剰回転数および余剰回転変動量に基づいて決定するのは、以下の理由による。
【０００９】
すなわち、加速時における加速変動による車両前後振動は、内燃機関の急激なトルクの増加に対して駆動輪が追従できないために、内燃機関から駆動輪へのトルクの伝達率が変動し、内燃機関のトルクと駆動輪の駆動力（以下「車両駆動力」という）が、定速時の１：１の関係を中心として周期的に変化することによって生じる。すなわち、内燃機関のトルクの増加に対して駆動輪が追従できないために、駆動輪へのトルクの伝達率が低下すると、その低下分が内燃機関への反動となることで、内燃機関の回転数が急上昇し、内燃機関のトルクと車両駆動力がバランスした定速時の回転数を上回ることによって、余剰回転が発生し、余剰トルクとして蓄積される。その後、余剰回転数がピークに達したときに、蓄積された余剰トルクの揺り返しによって、車両駆動力が増加するとともに、その反動によって内燃機関の回転数が急低下し、余剰回転数は負側へ増大する。以上のように、内燃機関の余剰回転数は、車両駆動力の増加時には減少し、車両駆動力の減少時には増加するという挙動を示し、車両駆動力とは互いに逆位相の関係を有する。車両前後振動の発生原因は、車両駆動力の変動に他ならないので、車両駆動力の増加を抑制すれば、その反動としての車両駆動力の減少も抑制でき、それにより、車両前後振動を効果的に抑制できる。
【００１０】
以上の観点から、本発明によれば、上記のような加速時における内燃機関の余剰回転数を、内燃機関の回転数、変速機の変速比および車両Ｖの速度ＶＰに基づいて算出するとともに、その増減を表す余剰回転変動量を算出する。そして、算出した余剰回転数および余剰回転変動量に基づいて、点火時期の遅角補正を実行することによって、車両駆動力の実際の増減のタイミングに合わせて、車両駆動力を相殺するように内燃機関のトルクを低減することができる。その結果、加速変動の発生原因である車両駆動力の変動を効果的に抑制でき、したがって、加速性能を確保しながら、車両前後振動を効果的に抑制することができる。
【００１１】
請求項２に係る発明は、請求項１に記載の内燃機関の点火時期制御装置において、遅角補正実行手段は、余剰回転数ＳＮＥが所定回転数よりも大きく、かつ余剰回転変動量ＤＳＮＥが所定量よりも小さいときに、遅角補正を実行する（図１２のステップ８１、８３、８５）ことを特徴とする。
【００１２】
この構成によれば、例えば余剰回転すなわち余剰トルクが発生しており、かつ余剰回転数が減少し始めるタイミングで、すなわち車両駆動力が実際に増加し始める最適なタイミングで、点火時期の遅角補正を実行できる。その結果、増加しようとする車両駆動力を相殺するように、内燃機関のトルクを最適なタイミングで低減でき、したがって、車両前後振動を最も効果的に抑制することができる。
【００１３】
請求項３に係る発明は、請求項１または２に記載の内燃機関の点火時期制御装置において、遅角補正実行手段は、余剰回転数ＳＮＥの絶対値が所定のしきい値＃ＤＮＥＡＣＣＲＰ以上のときに、遅角補正を実行する（図１２のステップ８２）ことを特徴とする。
【００１４】
この構成によれば、余剰回転数の絶対値が所定のしきい値以上であることをさらなる条件として、点火時期の遅角補正を実行する。したがって、算出した余剰回転数に含まれ得るノイズ成分の影響を排除しながら、余剰トルクが確実に発生している状況でのみ遅角補正を実行でき、それにより、遅角補正の誤作動やハンチングを適切に回避することができる。
【００１５】
請求項４に係る発明は、請求項１ないし３のいずれかに記載の内燃機関の点火時期制御装置において、余剰回転数検出手段は、変速機２５の変速比、車両Ｖの速度ＶＰ、および内燃機関２から駆動輪に伝達される駆動力の伝達ロスの度合（伝達ロス係数ＫＬＯＳＳ）に基づいて、内燃機関２の理想回転数ＩＮＥを算出する理想回転数算出手段（ＥＣＵ３、図６のステップ６１）を有し、余剰回転数ＳＮＥを、内燃機関２の回転数と算出された理想回転数ＩＮＥとの偏差として算出する（図６のステップ６２）ことを特徴とする。
【００１６】
内燃機関の理想回転数とは、内燃機関のトルクと車両駆動力が互いにバランスした定速時の関係にあるときの、車両の速度に対応する回転数を表し、この理想回転数を上回る回転数が余剰回転数として把握される。この構成によれば、内燃機関の理想回転数を、変速機の変速比および車両の速度に加えて、内燃機関から駆動輪までの駆動力の伝達ロスの度合に基づいて算出するので、駆動輪の滑りや、内燃機関から駆動輪に至る駆動系のガタおよび剛性などに起因する伝達ロスを反映させながら、理想回転数を適正に算出することができる。そして、内燃機関の実際の回転数とこの理想回転数との偏差として、余剰回転数を適正に算出でき、したがって、余剰回転数および余剰回転変動量に基づいて実行される遅角補正による車両前後振動の抑制効果を、より良好に得ることができる。
【００１７】
【発明の実施の形態】
以下、本発明の好ましい実施形態を、図面を参照しながら説明する。図１は、本発明を適用した内燃機関２を搭載した車両Ｖを示している。この車両Ｖは、前輪駆動式のものである。内燃機関（以下「エンジン」という）２は、例えば４気筒４サイクルエンジンであり、その出力軸（図示せず）は、手動式の変速機２５、フロントディファレンシャル２６、および左右の駆動軸２７、２７を介して、駆動輪としての左右の前輪２８、２８に連結されている。変速機２５には、そのギヤ位置を検出するギヤ位置センサ２０（変速比検出手段）が取り付けられている。また、従動輪としての左右の後輪２９、２９の付近には、それらの回転数を検出する後輪回転数センサ１９ａ、１９ｂ（車両速度検出手段）がそれぞれ取り付けられている。
【００１８】
図２は、本発明の実施形態による点火時期制御装置１の構成を、エンジン２とともに概略的に示している。エンジン２の吸気管４には、スロットル弁５が設けられている。このスロットル弁５の開度（以下「スロットル開度」という）ＴＨは、スロットル開度センサ６（加速要求検出手段）によって検出され、その検出信号は、後述するＥＣＵ３に出力される。
【００１９】
吸気管４のスロットル弁５よりも下流側でかつ吸気弁（図示せず）のすぐ上流側には、燃料噴射弁（以下「インジェクタ」という）７が気筒ごとに設けられている（１つのみ図示）。各インジェクタ７は、燃料ポンプ（図示せず）に接続されおり、その開弁時間（燃料噴射時間）ＴＯＵＴは、ＥＣＵ３からの駆動信号によって制御される。
【００２０】
また、エンジン２の各気筒には、点火プラグ８（１つのみ図示）が設けられており、ディストリビュータ９を介してＥＣＵ３に接続されている。各点火プラグ８は、ＥＣＵ３からの駆動信号により点火時期ＩＧＬＯＧに応じたタイミングで高電圧が加えられ、次に遮断されることによって放電し、それにより、各気筒内で混合気の点火が行われる。
【００２１】
一方、吸気管４のスロットル弁５よりも下流側には、吸気管内絶対圧センサ１０が配置されている。この吸気管内絶対圧センサ１０は、吸気管４内の絶対圧である吸気管内絶対圧ＰＢＡを検出し、その検出信号をＥＣＵ３に出力する。また、吸気管４には、吸気管内絶対圧センサ１０の下流側に、吸気温センサ１１が取り付けられており、吸気管４内の吸気温ＴＡを検出し、その検出信号をＥＣＵ３に出力する。さらに、エンジン２の本体には、エンジン水温センサ１２が取り付けられており、エンジン２の本体内を循環する冷却水の温度であるエンジン水温ＴＷを検出し、その検出信号をＥＣＵ３に出力する。
【００２２】
一方、エンジン２のクランクシャフト（図示せず）の周囲には、気筒判別センサ１３、ＴＤＣセンサ１４およびクランク角センサ１５（回転数検出手段）が設けられている。これらのセンサ１３〜１５は、マグネットロータやＭＲＥピックアップなど（いずれも図示せず）で構成され、それぞれの所定クランク角度位置でパルス信号を発生し、ＥＣＵ３に出力する。具体的には、気筒判別センサ１３は、特定の気筒の所定のクランク角度位置で、気筒判別信号ＣＹＬ（以下「ＣＹＬ信号」という）を発生する。ＴＤＣセンサ１４は、各気筒の吸気行程開始時のＴＤＣ（上死点）よりも少し前の所定のクランク角度位置で、ＴＤＣ信号を発生する。エンジン２が４気筒タイプの本例では、ＴＤＣ信号はクランク角１８０度ごとに１パルスが出力される。また、クランク角センサ１５は、ＴＤＣ信号よりも短い所定のクランク角度の周期（例えば３０度ごと）で、クランク角信号ＣＲＫ（以下「ＣＲＫ信号」という）を発生する。
【００２３】
ＥＣＵ３は、これらのＣＹＬ信号、ＴＤＣ信号およびＣＲＫ信号に基づき、気筒ごとのクランク角度位置を判別するとともに、ＣＲＫ信号に基づき、エンジン２の回転数（以下「エンジン回転数」という）ＮＥを算出する。
【００２４】
エンジン２の排気管１６には三元触媒１７が配置されており、排気ガス中のＨＣ、ＣＯ、ＮＯｘ  などの成分の浄化を行う。また、排気管１６の三元触媒１７よりも上流側には、酸素濃度センサ１８が設けられており、排気ガス中の酸素濃度を検出し、その検出信号をＥＣＵ３に出力する。
【００２５】
また、ＥＣＵ３には、前記後輪回転数センサ１９ａ、１９ｂから、対応する後輪２９の回転数ＶＲ１、ＶＲ２を表す検出信号が出力される。ＥＣＵ３は、これらの回転数ＶＲ１、ＶＲ２に基づき、後輪２９、２９の平均回転数（以下「後輪回転数」という）ＶＲを算出するとともに、この後輪回転数ＶＲに基づいて、車両Ｖの速度（以下「車速」という）ＶＰを算出する。ＥＣＵ３にはさらに、前記ギヤ位置センサ２０から、変速機２５のギヤ位置に対応するギヤ位置番号ＮＧＲを表す検出信号が出力される。このギヤ位置番号ＮＧＲは、第１速〜第６速のギヤ位置に対して、それぞれ値１〜６が割り当てられており、ＥＣＵ３は、検出されたギヤ位置信号ＮＧＲから、変速機２５のギヤ位置を判別するとともに、ギヤ比ＲＧＥＡＲを求める。また、ＥＣＵ３には、空調装置（以下「エアコン」という）２２のコンプレッサ（図示せず）とエンジン２との間を接続・遮断する電磁式のエアコンクラッチ２１が電気的に接続されていて、ＥＣＵ３からの駆動信号によって、エアコンクラッチ２１の接続・遮断が制御される。
【００２６】
ＥＣＵ３は、本実施形態において、回転数検出手段、理想回転数算出手段、余剰回転数算出手段、余剰回転変動量算出手段、および遅角補正実行手段を構成するものである。ＥＣＵ３は、ＣＰＵ、ＲＡＭ、ＲＯＭおよび入出力インターフェース（いずれも図示せず）などからなるマイクロコンピュータで構成されている。
【００２７】
ＣＰＵは、上述した各種のセンサで検出されたエンジンパラメータ信号に基づいて、エンジン２の運転状態を判別するとともに、その判別結果に応じ、ＴＤＣ信号の発生に同期して、燃料噴射時間ＴＯＵＴおよび点火時期ＩＧＬＯＧを演算し、その演算結果に基づく駆動信号をインジェクタ７およびディストリビュータ９に出力する。また、車両の加速時には、点火時期ＩＧＬＯＧの加速リタード制御を後述するように実行する。
【００２８】
図３は、点火時期ＩＧＬＯＧの算出処理のメインフローを示すフローチャートである。本処理は、ＴＤＣ信号の発生に同期して実行される。まず、ステップ２１（「Ｓ２１」と図示。以下同じ）において、前述した各種センサで検出された運転パラメータを読み込む。次いで、エンジン回転数ＮＥおよび吸気管内絶対圧ＰＢＡに応じ、マップ（図示せず）を検索することによって、基本点火時期ＩＧＭＡＰを決定する（ステップ２２）。
【００２９】
次に、加速リタード補正量ＩＧＡＣＣＲを算出する（ステップ２３）。この加速リタード補正量ＩＧＡＣＣＲは、車両の加速時に実行される加速リタード制御において算出されるものであり、その詳細については後述する。
【００３０】
次いで、算出した加速リタード補正量ＩＧＡＣＣＲを用い、次式（１）によって、点火時期ＩＧＬＯＧを算出する（ステップ２４）。
ＩＧＬＯＧ  ＝  ＩＧＭＡＰ−ＩＧＡＣＣＲ＋ＩＧＣＲＯ  ・・・（１）
ここで、ＩＧＣＲＯは、ＩＧＡＣＣＲ以外の補正量であり、例えば、エンジン水温ＴＷに応じて決定される水温進角補正量、吸気温ＴＡに応じて決定される吸気温進角補正量や、低温始動時における暖機向上のための暖機向上進角量などが含まれる。
【００３１】
そして、算出した点火時期ＩＧＬＯＧに基づく駆動信号をディストリビュータ９に出力する（ステップ２５）ことによって、各気筒の点火時期を制御し、本プログラムを終了する。
【００３２】
図４および図５は、図３のステップ２３で実行される加速リタード補正量ＩＧＡＣＣＲの算出処理を示している。なお、以下の説明では、ＥＣＵ３のＲＯＭに記憶されているデータについては、その先頭に「＃」を付することで、随時、検出または更新される他のデータと区別して表すものとする。この処理ではまず、ステップ３１において、エンジン２の余剰回転数ＳＮＥおよびその微分値である余剰回転変動量ＤＳＮＥを算出する。
【００３３】
図６は、その算出サブルーチンを示している。この処理ではまず、検出された後輪回転数ＶＲおよび変速機２５のギヤ比ＲＧＥＡＲを用い、次式（２）によって、エンジン２の理想回転数ＩＮＥを算出する（ステップ６１）。
ＩＮＥ  ＝  ＶＲ×ＲＧＥＡＲ×ＫＬＯＳＳ              ・・・（２）
ここで、ＫＬＯＳＳは、エンジン２から前輪２８、２８に伝達されるトルクの伝達ロスの度合を表す伝達ロス係数であり、実験などにより、１．０よりも大きな所定値にあらかじめ設定されている。この式（２）から分かるように、理想回転数ＩＮＥは、後輪回転数ＶＲに変速機２５のギヤ比ＲＧＥＡＲを乗算するとともに、エンジン２から前輪２８までの駆動系の伝達ロスを加味したものであり、エンジン２が定速状態にあり、そのときの車速ＶＰに対応しているときのエンジン２の回転数を表す。
【００３４】
次いで、検出されたエンジン回転数ＮＥと算出した理想回転数ＩＮＥとの偏差（＝ＮＥ−ＩＮＥ）を、エンジン２の余剰回転数ＳＮＥとして算出する（ステップ６２）。次に、余剰回転数の今回値ＳＮＥ（ｎ）と前回値ＳＮＥ（ｎ−１）との差（＝ＳＮＥ（ｎ）−ＳＮＥ（ｎ−１））を、余剰回転変動量ＤＳＮＥとして算出し（ステップ６３）、本サブルーチンを終了する。
【００３５】
図４に戻り、ステップ３１に続くステップ３２では、加速リタード制御の実行領域判定処理を行う。この処理は、エンジン２が加速リタード制御の実行に適した運転領域にあるか否かを判定するものであり、図７に示すサブルーチンに従って実行される。この処理ではまず、エンジン回転数ＮＥに応じ、図８に示すテーブルからテーブル値＃ＴＨＡＣＣＲＮを検索し、スロットル開度判定値ＴＨＡＣＣＲとして設定する（ステップ７１）。同図に示すように、このテーブル値＃ＴＨＡＣＣＲＮは、エンジン回転数ＮＥの４つの格子点ＮＥ１〜ＮＥ４に対して、ＮＥ値が大きいほど、より大きな値になるように設定されており、格子点間では補間計算によって求められる。
【００３６】
スロットル開度判定値ＴＨＡＣＣＲが上記のように設定されるのは、次の理由による。後述するように、本実施形態の加速リタード制御では、スロットル弁５が前回時に低開度状態にあることが、加速リタード制御の開始条件の１つになっていて、その判定にスロットル開度判定値ＴＨＡＣＣＲが用いられる。一方、加速変動による車両前後振動は、エンジン回転数ＮＥが大きいほど、エンジン２のトルクが大きいことで生じやすい傾向にあるので、低開度状態と判定されるスロットル開度領域を拡大することで、加速リタード制御の頻度を高くするためである。
【００３７】
次に、スロットル開度の今回値ＴＨ（ｎ）と前回値ＴＨ（ｎ−１）との差（ＴＨ（ｎ）−ＴＨ（ｎ−１））を、スロットル開度変化量ＤＴＨＡＣＲとして算出する（ステップ７２）。
【００３８】
次いで、エンジン水温ＴＷが、その下限値＃ＴＷＩＧＡＣＣＲ（例えば７０℃）よりも高いか否か（ステップ７３）、車速ＶＰがその下限値＃ＶＩＧＡＣＣＲＬ（例えば５ｋｍ／ｈ）と上限値＃ＶＩＧＡＣＣＲＨ（例えば１８０ｋｍ／ｈ）との間にあるか否か（ステップ７４）、およびエンジン回転数ＮＥがその下限値＃ＮＩＧＡＣＣＲＬ（例えば１０００ｒｐｍ）と上限値＃ＮＩＧＡＣＣＲＨ（例えば７０００ｒｐｍ）との間にあるか否か（ステップ７５）をそれぞれ判別する。
【００３９】
これらの答のいずれかがＮＯのときには、エンジン２が加速リタード制御の実行に適した運転領域にないとして、加速リタード許可フラグＦ＿ＩＧＡＣＣＲを「０」にセットし（ステップ７６）、加速リタード制御を禁止する。一方、前記ステップ７３〜７５の答がいずれもＹＥＳで、エンジン水温ＴＷ、車速ＶＰおよびエンジン回転数ＮＥがそれぞれの所定の範囲内にあるときには、エンジン２が加速リタード制御の実行に適した運転領域にあるとして、加速リタード許可フラグＦ＿ＩＧＡＣＣＲを「１」にセットする（ステップ７７）ことで、加速リタード制御を許可し、本サブルーチンを終了する。
【００４０】
図４に戻り、ステップ３２に続くステップ３３〜４６では、加速リタード制御の開始条件が成立しているか否かを判定する。まず、加速リタード許可フラグＦ＿ＩＧＡＣＣＲが「１」であるか否かを判別する。この答がＮＯで、図７の判定処理によって加速リタード制御が禁止されているときには、後述する回転数低下フラグＦ＿ＡＣＣＲ、エアコン停止フラグＦ＿ＩＧＡＣＣＮおよびエアコン作動フラグＦ＿ＩＧＡＣＣＡＮをそれぞれ「０」にセットする（ステップ３４〜３６）とともに、図５のステップ４７および４８において、後述する加速リタード算出量ＩＧＡＣＣＲＡＭおよび加速リタード補正量ＩＧＡＣＣＲをそれぞれ値０に設定し、本プログラムを終了する。
【００４１】
一方、ステップ３３の答がＹＥＳで、加速リタード制御が許可されているときには、回転数低下フラグＦ＿ＡＣＣＲが「１」であるか否かを判別する（ステップ３７）。前記ステップ３４の実行によって、加速リタード制御が許可された直後にはこの答がＮＯになるので、その場合にはステップ３８に進み、加速リタード算出量ＩＧＡＣＣＲＡＭが値０であるか否かを判別する。前記ステップ４７の実行によって、加速リタード制御が許可された直後にはこの答がＹＥＳになるので、その場合にはステップ３９以降に進む。
【００４２】
このステップ３９では、スロットル開度の前回値ＴＨ（ｎ−１）が、図７のステップ７１で設定したスロットル開度判定値の今回値ＴＨＡＣＣＲ（ｎ）よりも小さいか否かを判定し、また、ステップ４０では、図７のステップ７２で算出したスロットル開度変化量ＤＴＨＡＣＲが、その判定値＃ＤＴＨＡＣＣＲ（例えば１０度）よりも大きいか否かを判別する。これらの答のいずれかがＮＯのとき、すなわちスロットル弁５が前回時の低開度状態から急開されていないときには、加速要求が高くなく、加速リタード制御の開始条件が成立していないとして、加速リタード算出量ＩＧＡＣＣＲＡＭが値０であるか否かを判別する（ステップ４１）。この答がＹＥＳ、すなわち加速リタード制御中でないときには、前記ステップ３５以降に進み、加速リタード制御の開始を保留する一方、ステップ４１の答がＮＯで、加速リタード制御中のときには、後述するステップ６０の加速リタード補正量ＩＧＡＣＣＲの算出処理に進む。
【００４３】
一方、前記ステップ３９および４０の答がいずれもＹＥＳのときには、前記ステップ３１で算出したエンジン２の余剰回転数ＳＮＥが、値０よりも大きいか否かを判別する（ステップ４２）。この答がＹＥＳのとき、すなわちスロットル弁５が低開度状態から急開されていて、加速要求が高く、かつ、エンジン回転数ＮＥが理想回転数ＩＮＥよりも大きく、余剰回転すなわち余剰トルクが発生しているときには、回転数低下フラグＦ＿ＡＣＣＲを「０」にセットする（ステップ４３）とともに、加速リタード制御の開始条件が成立しているとして、図４の後述するステップ４９以降に進み、加速リタード量算出値ＩＧＡＣＣＲＡＭを算出する。
【００４４】
前記ステップ４２の答がＮＯで、余剰回転が発生していないときには、余剰回転数の絶対値｜ＳＮＥ｜が判定値＃ＤＮＡＣＣＲ０（例えば１０ｒｐｍ）よりも大きいか否かを判別する（ステップ４４）。この答がＮＯのとき、すなわち余剰回転が発生していないときでも、余剰回転数ＳＮＥの負側への変化度合が小さいときには、前記ステップ４３を実行するとともに、加速リタード制御の開始条件が成立しているとして、ステップ４９以降に進む。
【００４５】
一方、前記ステップ４４の答がＹＥＳのとき、すなわち余剰回転数ＳＮＥが負側へ変化しており、且つその変化度合が大きいときには、回転数低下フラグＦ＿ＡＣＣＲを「１」にセットする（ステップ４５）とともに、加速リタード制御の開始条件が成立していないとして、図４の前記ステップ４７、４８を実行し、加速リタード算出量ＩＧＡＣＣＲＡＭおよび加速リタード補正量をそれぞれ値０に設定する。このように回転数低下フラグＦ＿ＡＣＣＲが「１」にセットされると、前記ステップ３７の答がＹＥＳになり、その場合には、前記ステップ４２以降に進む。すなわち、スロットル弁５が急開された場合において、余剰回転数が負側へ変化していて、その変化度合が大きいときには、加速リタード制御の開始を保留し、その後、余剰回転数ＳＮＥが正側に転じ、余剰回転が発生するのを待って、加速リタード制御が開始される。
【００４６】
また、前記ステップ３８の答がＮＯで、加速リタード制御中のときには、後述するリタード終了タイマのタイマ値ＴＡＣＣＲＥが値０であるか否かを判別し（ステップ４６）、その答がＹＥＳのときには、前記ステップ３９以降に進む一方、ＮＯのときにはステップ６０に進む。
【００４７】
前記ステップ４２または４４により加速リタード制御の開始条件が成立していると判定されたときには、ステップ４３に続く図５のステップ４９〜５９において、加速リタード量算出値ＩＧＡＣＣＲＡＭを設定する。
【００４８】
まず、ステップ４９および５０において、エアコン作動フラグＦ＿ＩＧＡＣＣＡＮおよびエアコン停止フラグＦ＿ＩＧＡＣＣＮが「１」であるか否かをそれぞれ判別する。それらの答のいずれもがＮＯのときには、エアコンクラッチ２１（ＡＣＣＬ）が接続（ＯＮ）状態であるか否かを判別し（ステップ５１）、その答がＮＯのときにはエアコン停止フラグＦ＿ＩＧＡＣＣＮを「１」にセットし（ステップ５２）、ＹＥＳのときにはエアコン作動フラグＦ＿ＩＧＡＣＣＡＮを「１」にセットする（ステップ５３）。また、前記ステップ５０の答がＹＥＳで、エアコン停止フラグＦ＿ＩＧＡＣＣＮがすでに「１」にセットされているときには、前記ステップ５２に進み、その値を保持し、同様に、前記ステップ４９の答がＹＥＳで、エアコン作動フラグＦ＿ＩＧＡＣＣＡＮがすでに「１」にセットされているときには、前記ステップ５３に進み、その値を保持する。このように、エアコン停止・作動フラグＦ＿ＩＧＡＣＣＮ、Ｆ＿ＩＧＡＣＣＡＮは、エアコンクラッチ２１の遮断・接続状態に応じて一旦、セットされると、以降はその値に保持される。
【００４９】
エアコン２２が停止中のときには、前記ステップ５２に続くステップ５４において、エンジン回転数ＮＥに応じ、図９（ａ）に示すテーブルから、エアコン停止時用のテーブル値＃ＩＧＡＣＣＲＮを検索し、加速リタード量基本値ＩＧＡＣＣＲＸとして設定する。同図に示すように、このテーブル値＃ＩＧＡＣＣＲＮは、エンジン回転数ＮＥの５つの格子点ＮＥ１〜ＮＥ５に対して、ＮＥ値が大きいほど、より大きな値になるように設定されている。これは、前述したように、エンジン回転数ＮＥが高いほど、エンジン２のトルクが大きいことで、車両前後振動が生じやすいので、加速リタード量基本値ＩＧＡＣＣＲＸをより大きな値に設定することによって、遅角補正によるエンジン２のトルクダウン量をより大きくするためである。
【００５０】
一方、エアコン２２が作動中のときには、前記ステップ５３に続くステップ５５において、エンジン回転数ＮＥに応じ、図９（ｂ）に示すテーブルから、エアコン作動時用のテーブル値＃ＩＧＡＣＣＲＡＮを検索し、加速リタード量基本値ＩＧＡＣＣＲＸとして設定する。同図に示すように、このテーブル値＃ＩＧＡＣＣＲＡＮは、エアコン停止時用のテーブル値＃ＩＧＡＣＣＲＮと同様、エンジン回転数ＮＥの５つの格子点ＮＥ１〜ＮＥ５に対して、ＮＥ値が大きいほど大きな値に設定されるとともに、テーブル値＃ＩＧＡＣＣＲＮよりも低い値に設定されている。これは、エアコン２２の作動に伴うエンジン２の負荷の増大に対応して、エンジン２のトルクを確保するためである。
【００５１】
前記ステップ５４または５５に続くステップ５６では、スロットル開度ＴＨに応じ、図１０に示すテーブルからテーブル値＃ＫＴＨＡＣＲＮを検索し、スロットル開度補正係数ＫＴＨＡＣＲとして設定する。同図に示すように、このテーブル値＃ＫＴＨＡＣＲＮは、スロットル開度ＴＨの４つの格子点ＴＨ１〜ＴＨ４に対して、ＴＨ値が大きいほど、より大きな値になるように設定されている。これは、スロットル開度ＴＨが大きいほど、エンジン２のトルクが大きいことで、車両前後振動が生じやすいので、スロットル開度補正係数ＫＴＨＡＣＲをより大きな値に設定することによって、エンジン２のトルクダウン量をより大きくするためである。
【００５２】
次に、ステップ５７に進み、ギヤ位置番号ＮＧＲに応じ、図１１に示すテーブルからテーブル値＃ＫＧＲＮを検索し、ギヤ位置補正係数ＫＧＲとして設定する。このテーブルでは、テーブル値＃ＫＧＲＮは、ギヤ位置番号ＮＧＲが小さいほど、すなわちギヤ比が低いほど、より大きな値に設定されている。これは、ギヤ比が低いほど、加速時における駆動輪側からの反動が大きいことで、車両前後振動が生じやすいので、ギヤ位置補正係数ＫＧＲをより大きな値に設定することによって、エンジン２のトルクダウン量をより大きくするためである。
【００５３】
次いで、ステップ５８に進み、前記ステップ５４または５５で設定した加速リタード量基本値ＩＧＡＣＣＲＸに、前記ステップ５６および５７でそれぞれ設定したスロットル開度補正係数ＫＴＨＡＣＲおよびギヤ位置補正係数ＫＧＲを乗算した値を、加速リタード量算出値ＩＧＡＣＣＲＡＭとして設定する。
【００５４】
次に、ステップ５９において、後述する加速リタード実行フラグＦ＿ＩＧＡＣＣＲＤの反転の有無を判定するためのダウンカウント式のＦ＿ＩＧＡＣＣＲＤ反転タイマＴＡＣＣＲＤＥ、および加速リタード終了タイマＴＡＣＣＲＥに、それぞれの所定時間＃ＴＭＡＣＣＲＤＥ（例えば２００ｍｓ）、＃ＴＭＡＣＣＲＥ（例えば１５００ｍｓ）をセットし、これらをスタートさせるとともに、後述する初回加速リタード指示フラグＦ＿ＩＧＡＣＣＲ１を「１」にセットし、初回加速リタード中フラグＦ＿ＩＧＡＣＣＲ１Ａおよび加速リタード実行フラグＦ＿ＩＧＡＣＣＲＤを、それぞれ「０」にセットする。
【００５５】
次いで、ステップ６０に進み、加速リタード補正量ＩＧＡＣＣＲの算出処理を行う。図１２および図１３は、そのサブルーチンを示している。まず、エンジン２の余剰回転数ＳＮＥが値０（所定回転数）よりも大きいか否かを判別する（ステップ８１）。この答がＹＥＳで、ＳＮＥ＞０のとき、すなわち、エンジン回転数ＮＥが理想回転数ＩＮＥよりも大きく、余剰回転が発生しているときには、余剰回転数の絶対値｜ＳＮＥ｜が回転上昇側のしきい値＃ＤＮＥＡＣＣＲＰ（しきい値、例えば１０ｒｐｍ）以上であるか否かを判別する（ステップ８２）。この答がＮＯで、｜ＳＮＥ｜＜＃ＤＮＥＡＣＣＲＰのときには、後述するステップ９５以降に進む。この判別は、エンジン２の燃焼変動などにより余剰回転数ＳＮＥ中に含まれるノイズ成分の影響を排除し、余剰回転が確実に発生している状況でのみ、加速リタードを実行するためのものであり、それにより、加速リタードの誤作動を防止することができる。
【００５６】
前記ステップ８２の答がＹＥＳで、｜ＳＮＥ｜≧＃ＤＮＥＡＣＣＲＰのときには、余剰回転変動量ＤＳＮＥが値０（所定量）以上であるか否かを判別する（ステップ８３）。この答がＹＥＳで、ＤＳＮＥ≧０のとき、すなわち余剰回転数ＳＮＥが減少していないときには、加速リタードの実行条件が成立していないとして、ステップ９５に進む。一方、ステップ８３の答がＮＯで、ＤＳＮＥ＜０のとき、すなわち、余剰回転が発生しており、かつ前回時と今回時との間で、余剰回転数ＳＮＥが減少しているときには、車両駆動力が増加しており、加速リタードの実行条件が成立しているとして、加速リタード実行フラグＦ＿ＩＧＡＣＣＲＤが「１」であるか否かを判別する（ステップ８４）。そして、この答がＮＯのときには、加速リタード実行フラグＦ＿ＩＧＡＣＣＲＤを「１」にセットする（ステップ８５）一方、この答がＹＥＳで、すでに加速リタードの実行中であるときには、ステップ９５に進む。
【００５７】
次いで、初回加速リタード指示フラグＦ＿ＩＧＡＣＣＲ１が「１」であるか否かを判別する（ステップ８６）。図４の前記ステップ５９の実行により、加速リタード制御が開始された直後にはこの答がＹＥＳになるので、その場合にはステップ８７に進み、初回加速リタード中フラグＦ＿ＩＧＡＣＣＲ１Ａを「１」にセットした後、Ｆ＿ＩＧＡＣＣＲＤ反転タイマＴＡＣＣＲＤＥに所定時間＃ＴＭＡＣＣＲＤＥをセットし、これをスタートさせる（ステップ８８）。一方、前記ステップ８６の答がＮＯで、Ｆ＿ＩＧＡＣＣＲ１＝０のとき、すなわち加速リタード制御の開始直後でないときには、前記ステップ８７をスキップして、前記ステップ８８に進む。
【００５８】
一方、前記ステップ８１の答がＮＯで、余剰回転数ＳＮＥ≦０のとき、すなわち余剰回転が発生していないときには、余剰回転数の絶対値｜ＳＮＥ｜が回転低下側のしきい値＃ＤＮＥＡＣＣＲＭ（例えば５ｒｐｍ）以上であるか否かを判別する（ステップ８９）。この答がＮＯで、｜ＳＮＥ｜＜＃ＤＮＥＡＣＣＲＭのときには、ステップ９５に進む。ステップ８９の答がＹＥＳで、｜ＳＮＥ｜≧＃ＤＮＥＡＣＣＲＭのときには、余剰回転変動量ＤＳＮＥが値０以上であるか否かを判別する（ステップ９０）。この答がＮＯで、ＤＳＮＥ＜０のとき、すなわち余剰回転数ＳＮＥが減少しているときには、ステップ９５に進む。
【００５９】
一方、ステップ９０の答がＹＥＳで、ＤＳＮＥ≧０のとき、すなわち、余剰回転が発生しておらず、かつ余剰回転数ＳＮＥが減少していないときには、車両駆動力が増加しておらず、加速リタードの停止条件が成立しているとして、加速リタード実行フラグＦ＿ＩＧＡＣＣＲＤが「１」であるか否かを判別する（ステップ９１）。そして、この答がＹＥＳで、加速リタードの実行中であるときには、加速リタード実行フラグＦ＿ＩＧＡＣＣＲＤを「０」にセットする（ステップ９２）一方、この答がＮＯで、すでに加速リタードの停止中であるときには、ステップ９５に進む。
【００６０】
次いで、初回加速リタード中フラグＦ＿ＩＧＡＣＣＲ１Ａが「１」であるか否かを判別する（ステップ９３）。この答がＹＥＳ、すなわち初回加速リタードの実行中であるときには、初回加速リタード指示フラグＦ＿ＩＧＡＣＣＲ１および初回加速中リタードフラグＦ＿ＩＧＡＣＣＲ１Ａをいずれも「０」にセットした（ステップ９４）後、前記ステップ８８に進み、Ｆ＿ＩＧＡＣＣＲＤ反転タイマＴＡＣＣＲＤＥをスタートさせる。また、ステップ９３の答がＮＯで、初回以外の加速リタードの実行中であるときには、ステップ９４をスキップして、前記ステップ８８に進む。
【００６１】
以上のように、余剰回転が発生しており（ＳＮＥ＞０、｜ＳＮＥ｜≧＃ＤＮＥＡＣＣＲＰ）、かつ余剰回転数ＳＮＥが減少しているとき（ＤＳＮＥ＜０）ときには、車両駆動力が増加しており、加速リタードの実行条件が成立しているとして、加速リタードが実行される。一方、余剰回転が発生しておらず（ＳＮＥ≦０、｜ＳＮＥ｜≧＃ＤＮＥＡＣＣＲＭ）、かつ余剰回転数ＳＮＥが減少していないとき（ＤＳＮＥ≧０）には、車両駆動力が増加しておらず、加速リタードの停止条件が成立しているとして、加速リタードが停止される。また、上記の２つの条件がいずれも成立していないときには、前回時の制御状態が保持される。
【００６２】
次いで、前記ステップ８８などに続く図１３のステップ９５では、スロットル開度ＴＨが、図７の前記ステップ７１で設定したスロットル開度判定値ＴＨＡＣＣＲよりも小さいか否かを判定する。この答がＮＯで、スロットル開度ＴＨが低開度状態でないときには、Ｆ＿ＩＧＡＣＣＲＤ反転タイマＴＡＣＣＲＤＥおよび加速リタード終了タイマＴＡＣＣＲＥの各タイマ値が０であるか否かを判別する（ステップ９６、９７）。両ステップ９６、９７の答がいずれもＮＯのときには、加速リタード実行フラグＦ＿ＩＧＡＣＣＲＤが「１」であるか否かを判別する（ステップ９８）。
【００６３】
このステップ９８の答がＹＥＳで、加速リタードの実行条件が成立しているときには、初回加速リタード中フラグＦ＿ＩＧＡＣＣＲ１Ａが「１」であるか否かを判別する（ステップ９９）。この答がＹＥＳ、すなわち今回が加速リタード制御開始後の初回の加速リタードであるときには、図５の前記ステップ５８で設定した加速リタード量算出値ＩＧＡＣＣＲＡＭに、値１．０よりも大きな初回時補正係数＃ＫＩＧＡＣＣＲ１（例えば１．５）を乗算した値を、加速リタード補正量ＩＧＡＣＣＲとして設定する（ステップ１００）。また、ステップ９９の答がＮＯ、すなわち今回の加速リタードが２回目以降であるときには、加速リタード量算出値ＩＧＡＣＣＲＡＭをそのまま、加速リタード補正量ＩＧＡＣＣＲとして設定する（ステップ１０１）。一方、前記ステップ９８の答がＮＯで、Ｆ＿ＩＧＡＣＣＲＤ＝０のとき、すなわち加速リタードの停止条件が成立しているときには、加速リタード補正量ＩＧＡＣＣＲを値０に設定し（ステップ１０２）、本サブルーチンを終了する。
【００６４】
以上のように、この加速リタード制御では、加速リタード実行フラグＦ＿ＩＧＡＣＣＲＤ＝１のとき、すなわち余剰回転が発生し且つ余剰回転数ＳＮＥが減少しているときの加速リタードの実行と、Ｆ＿ＩＧＡＣＣＲＤ＝０のとき、すなわち余剰回転が発生しておらず且つ余剰回転数ＳＮＥが減少していないときの加速リタードの停止とが、切り換えながら交互に行われる。また、初回の加速リタード時にのみ、初回時補正係数＃ＫＩＧＡＣＣＲ１が適用されることで、加速リタード補正量ＩＧＡＣＣＲがより大きな値に設定される。
【００６５】
一方、前記ステップ９７の答がＹＥＳで、加速リタード終了タイマＴＡＣＣＲＥのタイマ値＝０のとき、すなわち加速リタード制御の開始後、所定時間＃ＴＭＡＣＣＲＥが経過したときには、加速リタード制御の終了モードに移行し、加速リタード量算出値ＩＧＡＣＣＲＡＭからリタード戻し量＃ＤＩＧＡＣＣＲ（例えば０．２度）を差し引いた値を、新たなＩＧＡＣＣＲＡＭ値として設定する（ステップ１０３）。このように加速リタード終了タイマＴＡＣＣＲＥが値０になった後には、図４のステップ４６の答がＹＥＳになることで、ステップ３９以降に進むので、スロットル弁５が急開操作されない限り、ステップ４１の答がＮＯになるまで、すなわち加速リタード量算出値ＩＧＡＣＣＲＡＭが値０になるまで、上記ステップ１０３が繰り返し実行される。これにより、加速リタード補正量ＩＧＡＣＣＲが漸減されるとともに、その値が０になったときに加速リタード制御が終了する。
【００６６】
また、前記ステップ９６の答がＹＥＳで、Ｆ＿ＩＧＡＣＣＲＤ反転タイマＴＡＣＣＲＤＥのタイマ値＝０のとき、すなわち加速リタード実行フラグＦ＿ＩＧＡＣＣＲＤが、所定時間＃ＴＭＡＣＣＲＤＥの間、反転しなかったときには、車両前後振動が収束したことで、加速リタード制御を終了すべきとして、加速リタード終了タイマＴＡＣＣＲＥのタイマ値を値０にリセットし（ステップ１０４）、次いで前記ステップ１０３に進む。これにより、加速リタード制御が強制的に終了モードに移行され、加速リタード補正量ＩＧＡＣＣＲが漸減される。
【００６７】
さらに、前記ステップ９５の答がＹＥＳで、ＴＨ＜ＴＨＡＣＣＲのときには、スロットル開度変化量ＤＴＨＡＣＲが値０よりも小さく、かつその絶対値｜ＤＴＨＡＣＲ｜が判定値＃ＤＴＨＡＣＣＲよりも大きいか否かを判別する（ステップ１０５）。この答がＮＯのときには、前記ステップ９６に進む一方、ＹＥＳのとき、すなわちスロットル弁５が急閉されたときには、前記ステップ１０４に進み、加速リタード終了タイマＴＡＣＣＲＥのタイマ値を０にリセットすることによって、加速リタード制御が強制的に終了モードに移行される。
【００６８】
以上のように、加速リタード制御は、その開始から所定時間＃ＴＭＡＣＣＲＥが経過したとき、加速リタード実行フラグＦ＿ＩＧＡＣＣＲＤが所定時間＃ＴＭＡＣＣＲＤＥの間、反転しなかったとき、あるいはスロットル弁５が急閉されたときに、加速リタード補正量ＩＧＡＣＣＲを漸減する終了モードを経て、終了する。また、この終了モードの実行中および実行終了後には、図４のステップ４６および３８の答がそれぞれＹＥＳになることで、ステップ３９以降に進むので、この状態でスロットル弁５が再度、急開され、実行条件が成立した場合には、加速リタード制御が再開される。
【００６９】
図１４は、これまでに述べた加速リタード制御による動作例を示している。すなわち、スロットル弁５が急開されることで、エンジン回転数ＮＥが上昇し、理想回転数ＩＮＥを上回り、余剰回転が発生し始めると（図４のステップ４２：ＹＥＳ）、加速リタード制御が開始され（時刻ｔ１）、図５のステップ４９〜５９の実行によって、加速リタード量算出値ＩＧＡＣＣＲＡＭが算出されるとともに、Ｆ＿ＩＧＡＣＣＲＤ反転タイマＴＡＣＣＲＤＥおよび加速リタード終了タイマＴＡＣＣＲＥがスタートし、初回加速リタード指示フラグＦ＿ＩＧＡＣＣＲ１が「１」にセットされる。
【００７０】
その後、余剰回転数ＳＮＥ＞０、｜ＳＮＥ｜≧＃ＤＮＥＡＣＣＲＰで、かつ余剰回転変動量ＤＳＮＥ＜０が成立したとき、すなわち余剰回転が発生していて、余剰回転数ＳＮＥが減少し始めたとき（時刻ｔ２）に、加速リタード実行フラグＦ＿ＩＧＡＣＣＲＤが「１」にセットされ（図１２のステップ８４）、それに応じて加速リタードが実行される。すなわち、加速リタード補正量ＩＧＡＣＣＲが、加速リタード量算出値ＩＧＡＣＣＲＡＭに設定される（図１３のステップ１０１）とともに、式（１）に従って、基本点火時期ＩＧＭＡＰなど（ＩＧＭＡＰ＋ＩＧＣＲＯ）から加速リタード補正量ＩＧＡＣＣＲを減算した値が、点火時期ＩＧＬＯＧとして設定される。なお、初回の加速リタード時のみは、初回加速リタード中フラグＦ＿ＩＧＡＣＣＲ１Ａが「１」にセットされるのに応じて、加速リタード補正量ＩＧＡＣＣＲが、加速リタード量算出値ＩＧＡＣＣＲＡＭに初回時補正係数＃ＫＩＧＡＣＣＲ１を乗算した割増された値に設定される（ステップ１００）。
【００７１】
その後、ＳＮＥ≦０、｜ＳＮＥ｜≧＃ＤＮＥＡＣＣＲＭで、かつＤＳＮＥ≧０が成立したとき、すなわち余剰回転が発生しておらず、かつ余剰回転数ＳＮＥが増加し始めたとき（時刻ｔ３）に、加速リタード実行フラグＦ＿ＩＧＡＣＣＲＤが「０」にセットされ（図１２のステップ９２）、それに応じて加速リタード補正量ＩＧＡＣＣＲが値０に設定される（図１３のステップ１０２）ことで、加速リタードが停止される。
【００７２】
その後は、余剰回転数ＳＮＥおよび余剰回転変動量ＤＳＮＥの変化に応じて、加速リタード実行フラグＦ＿ＩＧＡＣＣＲＤが「１」「０」間で切り換えられるごとに（時刻ｔ４〜ｔ７）、加速リタードの実行と停止が交互に行われる。
【００７３】
そして、上記のような加速リタード制御によって加速変動Ｇが次第に小さくなり、車両前後振動が収束することで、加速リタード実行フラグＦ＿ＩＧＡＣＣＲＤが、所定時間＃ＴＭＡＣＣＲＤＥの間、反転しない状態になると、Ｆ＿ＩＧＡＣＣＲＤ反転タイマＴＡＣＣＲＤＥのタイマ値が値０になり（時刻ｔ８）、それに応じて加速リタード終了タイマＴＡＣＣＲＥが強制的に値０にリセットされる（ステップ１０４）ことで、終了モードに移行する。この終了モードでは、スロットル弁５の急開操作がなされない限り、加速リタード量算出値ＩＧＡＣＣＲＡＭからのリタード戻し量＃ＤＩＧＡＣＣＲの減算（ステップ１０３）が繰り返し実行されることで、加速リタード補正量ＩＧＡＣＣＲが値０になるまで漸減される。なお、加速リタード制御の途中で、エンジン２の運転領域が実行領域から外れたときには、加速リタード補正量ＩＧＡＣＣＲが値０に設定される（図５のステップ４８）ことで、加速リタード制御が直ちに終了される。図１４は、そのようなエンジン２の実行領域からの逸脱が、終了モードの途中（時刻ｔ９）で生じた例を示している。
【００７４】
以上のように、本実施形態によれば、スロットル弁５が急開された場合において、エンジン２の余剰回転数ＳＮＥ＞０で、かつ余剰回転変動量ＤＳＮＥ＜０が成立したとき、すなわち余剰回転が発生していて、余剰回転数ＳＮＥが減少し始めたときに、加速リタードを実行する。これにより、車両駆動力が実際に増加し始める最適なタイミングで、加速リタードを開始できるので、増加しようとする車両駆動力を相殺するように、内燃機関のトルクを最適なタイミングで低減でき、したがって、車両前後振動を最も効果的に抑制することができる。また、余剰回転数ＳＮＥの絶対値がしきい値＃ＤＮＥＡＣＣＲＰ以上であることをさらなる条件として、加速リタードを実行するので、余剰回転数ＳＮＥへのノイズ成分の影響を排除でき、したがって、ノイズに起因する加速リタードの誤作動やハンチングを適切に回避することができる。
【００７５】
さらに、エンジン２の理想回転数ＩＮＥを、変速機２５の変速比ＲＧＥＡＲ、車速ＶＰに相当する後輪回転数ＶＲに加えて、伝達ロス係数ＫＬＯＳＳに基づいて算出するので、前輪２８の滑りや、エンジン２から前輪２８に至る駆動系のガタおよび剛性などに起因する伝達ロスを反映させながら、理想回転数ＩＮＥを適正に算出することができる。その結果、余剰回転数ＳＮＥを、エンジン回転数ＮＥと理想回転数ＩＮＥとの偏差として、適正に算出できる。したがって、余剰回転数ＳＮＥおよび余剰回転変動量ＤＳＮＥに基づいて実行される加速リタードによる車両前後振動の抑制効果を、より良好に得ることができる。
【００７６】
さらに、ＳＮＥ≦０で、かつＤＳＮＥ≧０が成立したとき、すなわち余剰回転が発生しておらず、かつ余剰回転数ＳＮＥが増加し始めたときに、加速リタードを停止するので、車両駆動力が減少している状態でのエンジン２の不要なトルクダウンを回避でき、より高い加速性能を確保することができる。また、この場合にも、余剰回転数ＳＮＥの絶対値がしきい値＃ＤＮＥＡＣＣＲＭ以上であることを条件として、加速リタードを停止するので、余剰回転数ＳＮＥへのノイズ成分の影響を排除でき、これに起因する加速リタードの誤停止やハンチングを適切に回避することができる。また、加速リタードを停止するだけで、進角補正は行わないので、ノッキングの発生を確実に防止することができる。
【００７７】
また、加速リタード補正量ＩＧＡＣＣＲを、エンジン回転数ＮＥおよび変速機２５のギヤ位置、さらにはスロットル開度ＴＨおよびエアコン２２の作動状態に応じて設定するので、加速リタードによるエンジン２のトルクダウン量を、加速変動の度合に応じて適切に制御でき、その結果、車両駆動力の変動およびそれに起因する車両前後振動をより良く抑制することができる。また、エアコン２２の作動に伴う負荷の増大に対応して、エンジン２のトルクを適切に確保することができる。
【００７８】
さらに、初回の加速リタード時に、加速リタード補正量ＩＧＡＣＣＲを、初回時補正係数＃ＫＩＧＡＣＣＲ１によって、より大きな値に設定するので、特に加速の立ち上がり時におけるトルクダウンを強化でき、それにより、車両前後振動の収束性を高めることができる。
【００７９】
図１５は、本実施形態の加速リタード制御による上述した車両前後振動の抑制効果を確認するために実施した試験の結果を示している。同図（ａ）は本実施形態による実施例を、（ｂ）は、加速リタードの実行タイミングを決定するパラメータとして、本実施形態の余剰回転数ＳＮＥおよび余剰回転変動量ＤＳＮＥに代えて、エンジン回転数ＮＥの１回および２回微分値である回転変動量ＤＮＥおよび回転変動量微分値ＤＤＮＥを用いた場合の比較例を、それぞれ示している。両図の比較から明らかなように、比較例では、パラメータの算出遅れなどの影響があることで、エンジン回転数ＮＥの変動および車両前後振動の振幅がいずれも大きく、車両前後振動が十分に抑制されていない。これに対し、実施例では、加速リタードの実行タイミングが、余剰回転数ＳＮＥおよび余剰回転変動量ＤＳＮＥに基づいて最適に決定される結果、エンジン回転数ＮＥの変動および車両前後振動の振幅がいずれも小さく、車両前後振動を十分に抑制できることが確認された。
【００８０】
なお、本発明は、説明した実施形態に限定されることなく、種々の態様で実施することができる。例えば、実施形態では、加速リタードの実行および停止を決定するために、余剰回転数ＳＮＥおよび余剰回転変動量ＤＳＮＥとそれぞれ比較される所定回転数および所定量が、すべて値０に設定されているが、これらを０以外の適当な値に設定してもよい。
【００８１】
【発明の効果】
以上のように、本発明の内燃機関の点火時期制御装置は、加速時における点火時期の遅角補正を、実際の車両駆動力の変動に応じた最適なタイミングで実行でき、それにより、加速性能を確保しながら、トルク変動による車両前後振動を効果的に抑制することができるなどの効果を有する。
【図面の簡単な説明】
【図１】本発明を適用した内燃機関を搭載した車両を示す平面図である。
【図２】本発明の実施形態による点火時期制御装置の構成を内燃機関とともに示す図である。
【図３】図２の制御装置により実行される点火時期の算出処理のメインフローを示すフローチャートである。
【図４】第１実施形態による加速リタード補正量の算出処理の前半部を示すフローチャートである。
【図５】図４の算出処理の後半部を示すフローチャートである。
【図６】余剰回転数ＳＮＥおよび余剰回転変動量ＤＳＮＥの算出サブルーチンを示すフローチャートである。
【図７】図４のステップ３２で実行される加速リタード制御の実行領域判定処理のサブルーチンを示すフローチャートである。
【図８】スロットル開度判定値ＴＨＡＣＣＲを設定するための＃ＴＨＡＣＣＲＮテーブルの一例である。
【図９】加速リタード量基本値ＩＧＡＣＣＲＸを設定するための（ａ）エアコン停止時用の＃ＩＧＡＣＣＲＮテーブルおよび（ｂ）エアコン作動時用の＃ＩＧＡＣＣＲＡＮテーブルの一例である。
【図１０】スロットル開度補正係数ＫＴＨＡＣＲを設定するための＃ＫＴＨＡＣＲＮテーブルの一例である。
【図１１】ギヤ位置補正係数ＫＧＲを設定するための＃ＫＧＲＮテーブルの一例である。
【図１２】図５のステップ６０で実行される加速リタード補正量ＩＧＡＣＣＲの算出サブルーチンの前半部を示すフローチャートである。
【図１３】図１２の算出サブルーチンの後半部を示すフローチャートである。
【図１４】実施形態の加速リタード制御によって得られる動作例を示すタイミングチャートである。
【図１５】実施形態の加速リタード制御を適用して実施した試験の結果を示す図である。
【符号の説明】
１  点火時期制御装置
２  内燃機関
３  ＥＣＵ（回転数検出手段、理想回転数算出手段、余剰回転数算出手段、余剰回転変動量算出手段、および遅角補正実行手段）
６  スロットル開度センサ（加速要求検出手段）
１５  クランク角センサ（回転数検出手段）
１９ａ、１９ｂ  後輪回転数センサ（車両速度検出手段）
２０  ギヤ位置センサ（変速比検出手段）
２５  変速機
２８  前輪（駆動輪）
Ｖ  車両
ＮＥ  エンジン回転数
ＳＮＥ  余剰回転数
ＤＳＮＥ  余剰回転変動量
ＩＮＥ  理想回転数
ＶＰ  車両の速度
ＲＧＥＡＲ  変速機のギヤ比
ＩＧＬＯＧ  点火時期
ＩＧＡＣＣＲ  加速リタード補正量
＃ＤＮＥＡＣＣＲＰ  しきい値
【図１】
2004360475.tif 000003
【図２】
2004360475.tif 000004
【図３】
2004360475.tif 000005
【図４】
2004360475.tif 000006
【図５】
2004360475.tif 000007
【図６】
2004360475.tif 000008
【図７】
2004360475.tif 000009
【図８】
2004360475.tif 000010
【図９】
2004360475.tif 000011
【図１０】
2004360475.tif 000012
【図１１】
2004360475.tif 000013
【図１２】
2004360475.tif 000014
【図１３】
2004360475.tif 000015
【図１４】
2004360475.tif 000016
【図１５】
2004360475.tif 000017