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