(57)【要約】    【課題】  制御システムの仕様変更等にも自動的に対応して空燃比ディザ制御によるトルク変動を確実に抑制できるようにする。    【解決手段】  アクセル開度と実エンジン回転速度Ｎｅ等に基づいて要求図示トルクを算出し、この要求図示トルクを実現するように要求スロットル開度と要求点火時期を算出する。その際、空燃比ディザ制御による空燃比のリーン方向への制御によるトルクダウン量の絶対値をリザーブトルクとして算出し、このリザーブトルクを要求図示トルクに加算してスロットル系要求図示トルクを求め、このスロットル系要求図示トルクを用いて要求スロットル開度を算出し、実スロットル開度を補正する。また、要求図示トルクをそのまま点火系要求図示トルクとして用いて要求点火時期を算出し、空燃比のリッチ／リーンに応じて要求点火時期を遅角／進角補正する。    【選択図】  図２
2005113877.tif 000002
【特許請求の範囲】
【請求項１】
空燃比をリッチ方向とリーン方向に交互に変化させる空燃比ディザ制御を行う空燃比ディザ制御手段を備えた内燃機関の制御装置において、
アクセル操作量や運転状態に基づいて要求トルクを算出する要求トルク算出手段と、
前記要求トルクに基づいて要求スロットル開度を算出する要求スロットル開度算出手段と、
前記要求トルクに基づいて要求点火時期を算出する要求点火時期算出手段と
を備えていることを特徴とする内燃機関の制御装置。
【請求項２】
前記空燃比ディザ制御による空燃比のリーン方向への制御によるトルクダウン量（以下「リザーブトルク」という）を算出するリザーブトルク算出手段を備え、
前記要求スロットル開度算出手段は、前記要求トルク算出手段で算出した要求トルクを前記リザーブトルクで補正してスロットル系要求トルクを求め、このスロットル系要求トルクを用いて前記要求スロットル開度を算出し、
前記要求点火時期算出手段は、前記要求トルク算出手段で算出した要求トルクをそのまま点火系要求トルクとして用いて前記要求点火時期を算出することを特徴とする請求項１に記載の内燃機関の制御装置。
【請求項３】
前記空燃比ディザ制御手段は、ベース空燃比をリッチ方向とリーン方向に交互に補正して目標空燃比を設定して前記空燃比ディザ制御を行い、
前記要求スロットル開度算出手段は、前記スロットル系要求トルクと前記ベース空燃比とに基づいて前記要求スロットル開度を算出し、
前記要求点火時期算出手段は、前記点火系要求トルクと前記目標空燃比とに基づいて前記要求点火時期を算出することを特徴とする請求項２に記載の内燃機関の制御装置。
【請求項４】
前記ベース空燃比に基づいてトルクに対する空燃比効率（以下「ベース空燃比効率」という）を算出するベース空燃比効率算出手段と、
ベース点火時期に基づいてトルクに対する点火時期効率（以下「ベース点火時期効率」という）を算出するベース点火時期効率算出手段と、
前記ベース空燃比効率と前記ベース点火時期効率とを用いて前記スロットル系要求トルクを補正するスロットル系要求トルク補正手段とを備え、
前記要求スロットル開度算出手段は、前記スロットル系要求トルク補正手段で補正されたスロットル系要求トルクに基づいて前記要求スロットル開度を算出することを特徴とする請求項３に記載の内燃機関の制御装置。
【請求項５】
実吸入空気量に基づいて推定トルクを算出する推定トルク算出手段と、
前記目標空燃比に基づいてトルクに対する空燃比効率（以下「目標空燃比効率」という）を算出する目標空燃比効率算出手段と、
前記目標空燃比効率を用いて前記推定トルクを補正する推定トルク補正手段とを備え、  前記要求点火時期算出手段は、前記推定トルク補正手段で補正された推定トルクと前記点火系要求トルクとに基づいて前記要求点火時期を算出することを特徴とする請求項３又は４に記載の内燃機関の制御装置。
【請求項６】
前記目標空燃比効率算出手段は、前記目標空燃比と内燃機関の運転条件とに基づいて推定した推定空燃比に基づいて前記目標空燃比効率を算出することを特徴とする請求項５に記載の内燃機関の制御装置。
【請求項７】
内燃機関の出力の変動度合に応じて前記点火時期効率を補正する手段を備えていることを特徴とする請求項４乃至６のいずれかに記載の内燃機関の制御装置。
【請求項８】
内燃機関の出力の変動度合に応じて前記空燃比効率を補正する手段を備えていることを特徴とする請求項４乃至７のいずれかに記載の内燃機関の制御装置。
【請求項９】
内燃機関の出力の変動度合に応じて前記目標空燃比のディザ振幅を補正する手段を備えていることを特徴とする請求項３乃至８のいずれかに記載の内燃機関の制御装置。
【請求項１０】
内燃機関の出力の変動度合に応じて前記点火時期効率を補正する手段と、
内燃機関の出力の変動度合に応じて前記空燃比効率を補正する手段と、
内燃機関の出力の変動度合に応じて前記目標空燃比のディザ振幅を補正する手段とを備え、
前記各補正は、前記点火時期効率の補正が第１位の優先順位で、前記空燃比効率の補正が第２位の優先順位で、前記目標空燃比のディザ振幅の補正が第３位の優先順位となるように行うことを特徴とする請求項４乃至６のいずれかに記載の内燃機関の制御装置。
【請求項１１】
前記点火時期効率の補正量を学習して該点火時期効率の算出に反映する手段を備えていることを特徴とする請求項７又は１０に記載の内燃機関の制御装置。
【請求項１２】
前記空燃比効率の補正量を学習して該空燃比効率の算出に反映する手段を備えていることを特徴とする請求項８又は１０に記載の内燃機関の制御装置。
【請求項１３】
前記目標空燃比のディザ振幅の補正量を学習して該目標空燃比のディザ振幅の算出に反映する手段を備えていることを特徴とする請求項９又は１０に記載の内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、空燃比をリッチ方向とリーン方向に交互に変化させる空燃比ディザ制御を行う内燃機関の制御装置に関するものである。
【背景技術】
【０００２】
従来より、内燃機関の始動後に、排出ガス浄化用の触媒を早期に活性温度に暖機する触媒早期暖機制御として空燃比ディザ制御を実行するようにしたものがある。この空燃比ディザ制御では、空燃比をリッチとリーンに交互に変化させることで、触媒内でリッチガスとリーンガスを混合させてリッチ成分（ＨＣ、ＣＯ）の酸化反応を発生させ、その反応熱で触媒を効率良く暖機するようにしている。しかし、空燃比ディザ制御によって空燃比をリッチとリーンに交互に変化させると、それに伴ってトルク変動が発生する。
【０００３】
この対策として、特許文献１（特許第２８６７７４７号公報）に記載されているように、空燃比ディザ制御による空燃比のリッチ／リーンに応じて、点火時期を予め適合された振幅で遅角／進角補正することで、トルク変動を抑制するようにしたものがある。
【０００４】
また、特許文献２（特開２００１−２２７３９９号公報）に示すトルク変動抑制制御を利用して、空燃比ディザ制御によって空燃比をリッチ／リーンに制御したときに、その空燃比の変化量によるトルク変動量を点火時期の変化量に換算し、その変化量分だけ点火時期を変化させることでトルク変動を抑制することも考えられる。
【特許文献１】特許第２８６７７４７号公報（第３頁〜第４頁等）
【特許文献２】特開２００１−２２７３９９号公報（第２頁等）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、上記特許文献１の技術では、制御システムの仕様変更等によって、空燃比ディザ制御の制御量（空燃比のディザ振幅等）が変更されると、それに伴って点火時期を遅角／進角補正する際の制御量（点火時期の補正量等）を新たに適合し直す必要があり、適合工数が増大するという欠点がある。しかも、内燃機関の運転環境や補機類の作動状態の変化等によって、実際の使用条件が適合時の使用条件と大きく異なってくると、空燃比ディザ制御中に点火時期を予め適合された補正量で補正しても、空燃比ディザ制御に伴うトルク変動を十分に抑制することができず、ドライバビリティの悪化を招く可能性がある。
【０００６】
また、上記特許文献２の技術では、点火時期がトルク・燃料消費率が最良となる点火時期ＭＢＴ（Minimum advance for the Best Torque ）付近に設定されているときに、空燃比ディザ制御が開始されると、次のような問題が生じる。空燃比ディザ制御によって空燃比がリーンに制御されたときに、リーン制御によるトルク低下を点火時期の進角補正によるトルク上昇で補ってトルク変動を抑制しようとしても、既に点火時期がＭＢＴ付近に設定されているため、リーン制御によるトルク低下を補うだけのトルク上昇を点火時期の進角補正によって確保する余裕がなく、空燃比ディザ制御に伴うトルク変動を十分に抑制することができない。
【０００７】
本発明は、これらの事情を考慮してなされたものであり、本発明の第１の目的は、制御システムの仕様変更や使用条件の変化等に自動的に対応して空燃比ディザ制御によるトルク変動を抑制できるようにすることであり、また、本発明の第２の目的は、点火時期がＭＢＴ付近に設定されているときでも、空燃比ディザ制御によるトルク変動を確実に抑制できるようにすることである。
【課題を解決するための手段】
【０００８】
前記第１の目的を達成するために、本発明の請求項１に記載の内燃機関の制御装置は、空燃比をリッチ方向とリーン方向に交互に変化させる空燃比ディザ制御を行うシステムにおいて、アクセル操作量や運転状態に基づいて要求トルク算出手段により要求トルクを算出し、その要求トルクに基づいて要求スロットル開度算出手段により要求スロットル開度を算出すると共に、要求トルクに基づいて要求点火時期算出手段により要求点火時期を算出するようにしたものである。
【０００９】
この構成では、空燃比ディザ制御によって空燃比がリッチ方向とリーン方向に交互に制御されても、アクセル操作量や運転状態に基づいて算出した要求トルクを実現するように要求スロットル開度と要求点火時期を算出して、空燃比ディザ制御によるトルク変動を抑制することができる。このようにすれば、制御システムの仕様変更等によって空燃比ディザ制御の制御量（空燃比のディザ振幅等）が変更されたり、内燃機関の運転環境や補機類の作動状態の変化等によって使用条件が変化しても、その時々の運転状態等に基づいて算出される要求トルクに基づいて該要求トルクを実現するための要求スロットル開度と要求点火時期を自動的に算出することができるので、制御システムの仕様変更や使用条件の変化等に自動的に対応して空燃比ディザ制御によるトルク変動を抑制することができる。これにより、制御システムの仕様変更時に点火時期の補正量等を再適合する必要がなく、適合工数を削減することができると共に、使用条件に左右されずにトルク変動を安定して抑制することができ、運転者にトルク変動を感じさせない快適な走行性能を実現することができる。
【００１０】
更に、前記第２の目的を達成するために、請求項２のように、空燃比ディザ制御による空燃比のリーン方向への制御によるトルクダウン量（以下「リザーブトルク」という）を算出して、このリザーブトルクで要求トルクを補正してスロットル系要求トルクを求め、このスロットル系要求トルクを用いて要求スロットル開度を算出する一方、要求トルク算出手段で算出した要求トルクをそのまま点火系要求トルクとして用いて要求点火時期を算出するようにすると良い。このようにすれば、要求スロットル開度をリザーブトルク分だけトルク上昇方向（スロットル開度の増大方向）へオフセットして、その分、要求点火時期をトルク低下方向（点火時期の遅角方向）へオフセットすることができる。このため、点火時期がＭＢＴ付近に設定されているときでも、空燃比のリーン制御によるトルク低下を補うだけのトルク上昇をスロットル開度の増加（吸入空気量の増加）と点火時期の進角補正によって確保する余裕を持たせることができて、空燃比ディザ制御によるトルク変動を確実に抑制することができる。
【００１１】
一般に、点火時期の補正は、スロットル開度（吸入空気量）の補正と比べてトルク補正の応答性が速い。そこで、請求項３のように、ベース空燃比をリッチ方向とリーン方向に交互に補正して目標空燃比を設定して空燃比ディザ制御を行う場合、スロットル系要求トルクとベース空燃比とに基づいて要求スロットル開度を算出し、点火系要求トルクと目標空燃比とに基づいて要求点火時期を算出するようにすると良い。
【００１２】
このようにすれば、要求スロットル開度については、実スロットル開度の応答遅れを考慮して、リッチ方向とリーン方向に交互に変化する目標空燃比を反映させずに、ベース空燃比を用いてスロットル系要求トルクに相当する要求スロットル開度を算出することができる。一方、要求点火時期については、応答性が速いことを考慮して、リッチ方向とリーン方向に交互に変化する目標空燃比に応じて点火系要求トルクを実現する要求点火時期を算出することができる。これにより、空燃比のリッチ／リーンに応じて要求点火時期を進角／遅角補正することができて、空燃比ディザ制御によるトルク変動を点火時期の補正によって応答良く抑えることができる。
【００１３】
この場合、要求スロットル開度の具体的な算出方法としては、請求項４のように、ベース空燃比に基づいてトルクに対する空燃比効率（以下「ベース空燃比効率」という）を算出すると共に、ベース点火時期に基づいてトルクに対する点火時期効率（以下「ベース点火時期効率」という）を算出して、これらのベース空燃比効率とベース点火時期効率とを用いてスロットル系要求トルクを補正し、補正されたスロットル系要求トルクに基づいて要求スロットル開度を算出するようにしても良い。このようにすれば、基準となる条件（ベース空燃比、ベース点火時期）において、スロットル系要求トルクに相当する要求スロットル開度を精度良く算出することができる。
【００１４】
また、要求点火時期の具体的な算出方法としては、請求項５のように、実吸入空気量に基づいて推定トルクを算出すると共に、目標空燃比に基づいてトルクに対する空燃比効率（以下「目標空燃比効率」という）を算出して、目標空燃比効率を用いて推定トルクを補正し、補正された推定トルクと点火系要求トルクとに基づいて要求点火時期を算出するようにしても良い。このようにすれば、要求スロットル開度に対応した実吸入空気量と、目標空燃比に応じて変化する実筒内空燃比を反映した目標空燃比効率とを考慮に入れて、点火系要求トルク（＝要求トルク）を実現する要求点火時期を精度良く算出することができる。
【００１５】
尚、要求燃料噴射量については、目標空燃比と実吸入空気量とに基づいて要求燃料噴射量を算出すれば、リッチ方向とリーン方向に交互に変化する目標空燃比に対応して要求燃料噴射量を増量／減量補正することができる。
【００１６】
ところで、吸気ポート噴射式の内燃機関では、目標空燃比に対応して要求燃料噴射量を増量／減量補正しても、吸気ポートの内壁面等に付着するウエット燃料の影響により、目標空燃比の変化に対して実筒内空燃比の変化に遅れが生じる傾向がある。
【００１７】
そこで、請求項６のように、目標空燃比と内燃機関の運転条件とに基づいて推定した推定空燃比に基づいて目標空燃比効率を算出するようにすると良い。吸気ポートの内壁面等に付着するウエット燃料の付着量や蒸発特性は、内燃機関の運転条件に応じて変化するので、目標空燃比と内燃機関の運転条件とを用いれば、実筒内空燃比の挙動を反映した推定空燃比を精度良く推定することができ、この推定空燃比に基づいて目標空燃比効率を算出すれば、実筒内空燃比の挙動を精度良く反映した目標空燃比効率を算出することができる。これにより、推定トルクの算出精度を向上させることができ、ひいてはトルク制御性を向上させることができる。
【００１８】
また、制御システムの経時変化や製造ばらつきによって点火時期効率特性（図７参照）や空燃比効率特性（図８参照）が変化すると、点火時期効率や空燃比効率に誤差が生じて、トルク制御精度が低下し、空燃比ディザ制御によるトルク変動を十分に抑制できなくなる可能性がある。
【００１９】
そこで、請求項７のように、内燃機関の出力の変動度合に応じて点火時期効率を補正するようにしても良い。更に、請求項８のように、内燃機関の出力の変動度合に応じて空燃比効率を補正するようにしても良い。点火時期効率や空燃比効率に誤差が生じると、それに応じてトルク変動が大きくなって、内燃機関の出力変動が大きくなるため、内燃機関の出力の変動度合は、点火時期効率や空燃比効率の誤差を反映したパラメータとなる。従って、内燃機関の出力の変動度合に応じて点火時期効率や空燃比効率を補正すれば、点火時期効率や空燃比効率の誤差を自動的にキャンセルすることができ、制御システムの経時変化や製造ばらつきによって点火時期効率特性や空燃比効率特性が変化しても、トルク制御精度を維持してトルク変動を十分に抑制することができる。
【００２０】
更に、請求項９のように、内燃機関の出力の変動度合に応じて目標空燃比のディザ振幅を補正するようにしても良い。このようにすれば、空燃比ディザ制御によるトルク変動を点火時期補正では抑制しきれない場合は、そのトルク変動（出力変動）に応じて目標空燃比のディザ振幅を小さくして、空燃比ディザ制御によるトルク変動を低減することができ、ドライブフィーリングの悪化を回避することができる。
【００２１】
これらの各補正は、請求項１０のように、点火時期効率の補正が第１位の優先順位で、空燃比効率の補正が第２位の優先順位で、目標空燃比のディザ振幅の補正が第３位の優先順位となるように行うようにすると良い。このようにすれば、点火時期効率の補正や空燃比効率の補正を優先的に行うことができるので、通常は、目標空燃比のディザ振幅の補正を行わずに、空燃比ディザ制御による触媒早期暖機効果等を最大限に発揮させながら、トルク変動を抑制することができる。そして、点火時期効率の補正や空燃比効率の補正を行ってもトルク変動を十分に抑制できない場合は、目標空燃比のディザ振幅を補正して、トルク変動を低減することができ、ドライブフィーリングの悪化を回避することができる。
【００２２】
また、請求項１１のように、点火時期効率の補正量を学習して該点火時期効率の算出に反映するようにしても良い。同様に、請求項１２のように、空燃比効率の補正量を学習して該空燃比効率の算出に反映するようにしても良い。更に、請求項１３のように、目標空燃比のディザ振幅の補正量を学習して該目標空燃比のディザ振幅の算出に反映するようにしても良い。このようにすれば、制御システムの経時変化や製造ばらつきの影響を受けない安定したトルク変動抑制制御を行うことができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の一実施例を図面に基づいて説明する。まず、図１に基づいてエンジン制御システム全体の概略構成を説明する。内燃機関であるエンジン１１の吸気管１２の最上流部には、エアクリーナ１３が設けられ、このエアクリーナ１３の下流側に、吸入空気量を検出するエアフローメータ１４が設けられている。このエアフローメータ１４の下流側には、ＤＣモータ等によって開度調節されるスロットルバルブ１５とスロットル開度を検出するスロットル開度センサ１６とが設けられている。
【００２４】
更に、スロットルバルブ１５の下流側には、サージタンク１７が設けられ、このサージタンク１７には、吸気管圧力を検出する吸気管圧力センサ１８が設けられている。また、サージタンク１７には、エンジン１１の各気筒に空気を導入する吸気マニホールド１９が設けられ、各気筒の吸気マニホールド１９の吸気ポート近傍に、それぞれ燃料を噴射する燃料噴射弁２０が取り付けられている。また、エンジン１１のシリンダヘッドには、各気筒毎に点火プラグ２１が取り付けられ、各点火プラグ２１の火花放電によって筒内の混合気に着火される。
【００２５】
一方、エンジン１１の排気管２２には、排出ガス中のＣＯ，ＨＣ，ＮＯｘ等を浄化する三元触媒等の触媒２３が設けられ、この触媒２３の上流側に、排出ガスの空燃比又はリッチ／リーン等を検出する排出ガスセンサ２４（空燃比センサ、酸素センサ等）が設けられている。
【００２６】
また、エンジン１１のシリンダブロックには、冷却水温を検出する冷却水温センサ２５や、エンジン１１のクランク軸が一定クランク角（例えば３０℃Ａ）回転する毎にパルス信号を出力するクランク角センサ２６が取り付けられている。このクランク角センサ２６の出力信号に基づいてクランク角やエンジン回転速度が検出される。
【００２７】
これら各種センサの出力は、エンジン制御回路（以下「ＥＣＵ」と表記する）２７に入力される。このＥＣＵ２７は、マイクロコンピュータを主体として構成され、内蔵されたＲＯＭ（記憶媒体）に記憶された各種のエンジン制御プログラムを実行することで、スロットルバルブ１５のスロットル開度、燃料噴射弁２０の燃料噴射量、点火プラグ２１の点火時期等を制御する。
【００２８】
その際、ＥＣＵ２７は、図１４乃至図１７に示すトルク制御用の各プログラムを実行することで、所定の空燃比ディザ制御実行条件（例えば触媒早期暖機制御実行条件）が成立したときに、空燃比をリッチ方向とリーン方向に交互に変化させる空燃比ディザ制御を行う。更に、アクセル開度と運転状態（実エンジン回転速度Ｎｅ等）に基づいて要求図示トルクを算出し、この要求図示トルクを実現するようにスロットルバルブ１５の要求スロットル開度、点火プラグ２１の要求点火時期、燃料噴射弁２０の要求燃料噴射量を算出する。これにより、空燃比ディザ制御によって空燃比がリッチ方向とリーン方向に交互に制御されても、運転状態等に基づいて算出した要求図示トルクを実現するように要求スロットル開度、要求点火時期、要求燃料噴射量を自動的に算出して、空燃比ディザ制御によるトルク変動を抑制するようにしている。
【００２９】
ここで、要求図示トルクは、図示トルクの要求値（目標値）であり、図示トルクは、エンジン１１の燃焼によって発生するトルク、つまり、エンジン１１の内部損失トルクや外部負荷トルクを含めたトルクである。従って、図示トルクから内部損失トルクや外部負荷トルクを差し引いたトルクは、クランク軸から取り出される軸トルク（正味トルク）となり、この軸トルクによって車両駆動系が駆動される。
【００３０】
以下、ＥＣＵ２７による要求図示トルクに基づいた要求スロットル開度、要求点火時期、要求燃料噴射量の算出方法について具体的に説明する。
［要求スロットル開度、要求点火時期、要求燃料噴射量の算出］
図２に示すように、ＥＣＵ２７は、まず、アクセル開度、実エンジン回転速度Ｎｅ等に基づいて要求トルクを算出し、この要求トルクにアイドルスピードコントロール（ＩＳＣ制御）によるトルク増減分を加算して要求軸トルクを求め、この要求軸トルクに、各種の損失トルクを加算して要求図示トルクを求める。ここで、要求軸トルクに加算する内部損失トルクは、機械摩擦損失、ポンピング損失等である。また、要求軸トルクに加算する外部損失トルクは、エンジン１１の動力で駆動される補機類（エアコンのコンプレッサ、オルタネータ、パワーステアリングのポンプ等）の負荷トルクである。
【００３１】
また、ＥＣＵ２７は、空燃比の情報として空燃比過剰率（以下これを「λ」と表記する）を用いて、所定の空燃比ディザ制御実行条件が成立したときに、ベースλを目標λ振幅量だけリッチ方向とリーン方向に交互に補正して目標λを設定することで、空燃比をリッチ方向とリーン方向に交互に変化させる空燃比ディザ制御を行う。尚、目標λ振幅量は、後述する方法（図６参照）で補正される。
【００３２】
ＥＣＵ２７は、この空燃比ディザ制御による空燃比のリーン方向への制御によるトルクダウン量の絶対値（以下「リザーブトルク」という）を後述する方法（図３参照）で算出し、このリザーブトルクを要求図示トルクに加算して求めたトルクをスロットル系要求図示トルクとして用いると共に、要求図示トルクをそのまま点火系要求図示トルクとして用いる。そして、スロットル系要求図示トルク（＝要求図示トルク＋リザーブトルク）に相当する要求スロットル開度を算出し、その要求スロットル開度（吸入空気量）において点火系要求図示トルク（＝要求図示トルク）を実現するように要求点火時期を算出する。これにより、要求スロットル開度をリザーブトルク分だけトルク上昇方向（スロットル開度の増大方向）へオフセットして、その分、要求点火時期をトルク低下方向（点火時期の遅角方向）へオフセットさせることで、空燃比のリーン制御によるトルク低下を補うだけのトルク上昇を点火時期の進角補正によって確保する余裕を持たせる。
【００３３】
この場合、要求スロットル開度は、次のようにして算出する。
まず、ベース点火時期効率とベースλ効率とを算出する。ここで、点火時期効率は、点火遅角量が図示トルクに及ぼす影響を評価するための無次元パラメータであり、図７に示すように、ＭＢＴからの遅角量に応じて設定され、ＭＢＴからの遅角量が０のときに図示トルクが最大になることから、ＭＢＴからの遅角量が０のときに点火時期効率＝１に設定される。つまり、点火時期効率は、ＭＢＴからの遅角量が０のときの図示トルクの大きさを「１」とし、これを基準にして、ＭＢＴからの遅角量に対応する図示トルクの大きさを相対的に表すものである。ベース点火時期効率を算出する場合は、図８に示す点火時期効率のマップ又は数式を用いて、ＭＢＴとベース点火時期との差（ＭＢＴからの遅角量）に応じたベース点火時期効率を算出する。このベース点火時期効率は、後述する方法（図４参照）で補正される。
【００３４】
また、λ効率（空燃比効率）は、空気過剰率λが図示トルクに及ぼす影響を評価するための無次元パラメータであり、図８に示すように、空気過剰率λに応じて設定され、λ＝１のときにλ効率＝１に設定される。つまり、λ効率は、λ＝１のときの図示トルクの大きさを「１」とし、これを基準にして、空気過剰率λに対応する図示トルクの大きさを相対的に表すものである。ベースλ効率を算出する場合は、図８に示すλ効率のマップ又は数式を用いて、ベースλに応じたベースλ効率を算出する。このベースλ効率は、後述する方法（図５参照）で補正される。
【００３５】
ベース点火時期効率とベースλ効率を算出した後、ベース点火時期効率とベースλ効率とを掛け合わせて総トルク効率を求め、この総トルク効率でスロットル系要求図示トルクを除算してスロットル系要求図示トルクを補正する。更に、補正後のスロットル系要求図示トルクと実エンジン回転速度Ｎｅとに基づいて要求吸入空気量を算出し、この要求吸入空気量と実エンジン回転速度Ｎｅと大気圧とに基づいて要求スロットル開度を算出する。このようにして、基準となる条件（ベース点火時期、ベースλ）において、スロットル系要求図示トルクに相当する要求スロットル開度を算出する。
【００３６】
一方、要求点火時期は、次のようにして算出する。
まず、目標λをスムージング（なまし処理）して推定λを求める。
推定λ＝目標λ＋Ｋ×｛推定λ(old) −目標λ｝
ここで、推定λ(old) は、前回の推定λである。また、Ｋは、なまし係数であり、エンジン運転条件（吸気管圧力Ｐｍ、実エンジン回転速度Ｎｅ等）に基づいて算出される。
【００３７】
推定λを算出した後、図８に示すλ効率のマップ又は数式を用いて、推定λに応じた目標λ効率を算出する。
【００３８】
吸気ポート噴射式のエンジン１１では、目標λに対応して要求燃料噴射量を増量／減量補正しても、吸気ポートの内壁面等に付着するウエット燃料の影響により、目標λの変化に対して実筒内λの変化に遅れが生じることがあるが、吸気ポートの内壁面等に付着するウエット燃料の付着量や蒸発特性は、エンジン運転条件に応じて変化するので、エンジン運転条件に基づいたなまし係数Ｋを用いて目標λをスムージング（なまし処理）すれば、実筒内λの挙動を反映した推定λを精度良く推定することができ、この推定λに応じた目標λ効率を算出すれば、実筒内λの挙動を精度良く反映した目標λ効率を算出することができる。
【００３９】
更に、実吸入空気量と実エンジン回転速度Ｎｅとに基づいてＭＢＴにおける推定図示トルクを算出し、この推定図示トルクに目標λ効率を乗算して推定図示トルクを補正する。そして、点火系要求図示トルク（＝要求図示トルク）と補正後の推定図示トルクとの比を要求トルク比として算出し、図７に示す点火時期効率のマップ又は数式を用いて、要求トルク比（要求点火時期効率）に応じた要求遅角量（ＭＢＴからの遅角量）を算出した後、ＭＢＴから要求遅角量だけ遅角して要求点火時期を求める。このようにして、要求スロットル開度に対応した実吸入空気量と、目標λに応じて変化する実筒内λの挙動を精度良く反映した目標λ効率とを考慮に入れて、点火系要求トルク（＝要求図示トルク）を実現する要求点火時期を算出する。
【００４０】
尚、要求燃料噴射量は、目標λと実吸入空気量とに基づいて算出する。これにより、リッチ方向とリーン方向に交互に変化する目標λに対応して要求燃料噴射量を増量／減量補正する。
【００４１】
［リザーブトルクの算出］
次に、図３を用いてリザーブトルクの算出方法について説明する。
【００４２】
まず、目標λのリーンＭＡＸ値（ベースλを目標λ振幅量だけリーン方向に補正した値）に応じたλ効率を図８に示すλ効率のマップ又は数式を用いて算出し、このλ効率を要求図示トルクに乗算した値を要求図示トルクから差し引くことで、空燃比ディザ制御による空燃比のリーン方向への制御によるトルクダウン量を算出する。このトルクダウン量の絶対値と予め設定された定数とを比較して大きい方をリザーブトルクとする。
【００４３】
ところで、制御システムの経時変化や製造ばらつきによって点火時期効率特性（図７参照）やλ効率特性（図８参照）が変化すると、点火時期効率やλ効率に誤差が生じて、トルク制御精度が低下し、空燃比ディザ制御によるトルク変動を十分に抑制できなくなる。      
【００４４】
そこで、ＥＣＵ２７は、実エンジン回転速度Ｎｅとその平均値との偏差である回転速度偏差ΔＮｅ（エンジン出力の変動度合の情報）に応じてベース点火時期効率やベースλ効率を補正するようにしている。ベース点火時期効率やベースλ効率に誤差が生じると、それに応じてトルク変動が大きくなって、回転速度偏差ΔＮｅが大きくなるため、回転速度偏差ΔＮｅは、ベース点火時期効率やベースλ効率の誤差を反映したパラメータとなる。従って、回転速度偏差ΔＮｅに応じてベース点火時期効率やベースλ効率を補正すれば、ベース点火時期効率やベースλ効率の誤差を自動的にキャンセルすることができる。
【００４５】
［ベース点火時期効率の補正］
図９に示すように、ＭＢＴからの遅角量Ｘと点火時期効率Ｙと点火時期効率特性線の曲率ａとの関係は、次のような近似式で表すことができる。
Ｙ＝１−ａ×Ｘ2
この点に着目して、回転速度偏差ΔＮｅに応じて点火時期効率特性線の基本曲率を補正して曲率ａを求め、この曲率ａをＭＢＴからの遅角量Ｘの二乗値Ｘ2 に乗算し、その値（ａ×Ｘ2 ）を１から減算してベース点火時期効率Ｙ（＝１−ａ×Ｘ2 ）を求めるようにしている。
【００４６】
具体的には、図４に示すように、まず、実エンジン回転速度Ｎｅと実エンジン回転速度Ｎｅの平均値との偏差である回転速度偏差ΔＮｅを求め、この回転速度偏差ΔＮｅに応じて図１０のマップ又は数式を用いて点火時期効率の曲率補正係数を算出し、この曲率補正係数を前回の補正量に加算して今回の補正量を求める。
【００４７】
この後、後述する学習制御によって学習した学習値とそれに応じて更新した補正量とに基づいて最終補正量（＝補正量＋学習値）を求め、この最終補正量を１に加算した値を基本曲率に乗算することで、回転速度偏差ΔＮｅに応じて補正した曲率を求める。この曲率をＭＢＴからの遅角量（ＭＢＴとベース点火時期との差）の二乗値に乗算し、その値を１から減算してベース点火時期効率を求める。このようにして、回転速度偏差ΔＮｅに応じて補正したベース点火時期効率を求める。
【００４８】
［ベースλ効率の補正］
ベースλ効率は、次のようにして補正する。
図５に示すように、まず、実エンジン回転速度Ｎｅと実エンジン回転速度Ｎｅの平均値との偏差である回転速度偏差ΔＮｅを求め、この回転速度偏差ΔＮｅに応じて図１１のマップ又は数式を用いてλ効率の補正係数を算出し、この補正係数を前回の補正量に加算して今回の補正量を求める。
【００４９】
この後、後述する学習制御によって学習した学習値とそれに応じて更新した補正量とに基づいて最終補正量（＝補正量＋学習値）を求め、この最終補正量を１に加算した値を、図８に示すλ効率のマップ又は数式を用いてベースλに応じて算出したベースλ効率に乗算することで、回転速度偏差ΔＮｅに応じて補正したベースλ効率を求める。
【００５０】
尚、図５では、目標λ＝１．０を境にしてリッチ側とリーン側とで別々にベースλ効率を補正し、目標λ＝１．０のときにはベースλ効率を補正しないようにしている。
【００５１】
［目標λ振幅量の補正］
目標λ振幅量は、次のようにして補正する。
図６に示すように、まず、実エンジン回転速度Ｎｅと実エンジン回転速度Ｎｅの平均値との偏差である回転速度偏差ΔＮｅを求め、この回転速度偏差ΔＮｅに応じて図１２のマップ又は数式を用いて目標λ振幅量の補正係数を算出し、この補正係数を前回の補正量に加算して今回の補正量を求める。
【００５２】
この後、後述する学習制御によって学習した学習値とそれに応じて更新した補正量とに基づいて最終補正量（＝補正量＋学習値）を求め、この最終補正量を１に加算した値を目標λ振幅量に乗算することで、回転速度偏差ΔＮｅに応じて補正した目標λ振幅量を求める。
【００５３】
尚、ベース点火時期効率とベースλ効率と目標λ振幅量の各補正の優先順位は、ベース点火時期効率の補正が第１位で、ベースλ効率の補正が第２位で、目標λ振幅量の補正が第３位の優先順位とする。
【００５４】
［学習制御］
ベース点火時期効率の補正量の学習制御と、ベースλ効率の補正量の学習制御と、目標λ振幅量の補正量の学習制御は、実質的に同一の方法で次のようにして行う。
【００５５】
図１３のタイムチャートに示すように、補正量がプラス側判定値（＋Ｋ１）以上になったときには、前回の学習値に所定の更新量を加算して今回の学習値を求める。
学習値（今回値）＝学習値（前回値）＋更新量
そして、補正量から更新量を減算して補正量を更新する。
補正量（更新後）＝補正量−更新量
【００５６】
一方、補正量がマイナス側判定値（−Ｋ２）以下になったときには、前回の学習値から更新量を減算して今回の学習値を求める。
学習値（今回値）＝学習値（前回値）−更新量
【００５７】
そして、補正量に更新量を加算して補正量を更新する。
補正量（更新後）＝補正量＋更新量
【００５８】
また、補正量がマイナス側判定値（−Ｋ２）よりも大きく且つプラス側判定値（＋Ｋ１）よりも小さいとき（−Ｋ２＜補正量＜＋Ｋ１）には、前回の学習値をそのまま今回の学習値として採用する。
学習値（今回値）＝学習値（前回値）
【００５９】
そして、今回の補正量をそのまま更新後の補正量として採用する。
補正量（更新後）＝補正量
このようにして学習値と補正量を算出した後、更新後の補正量に今回の学習値を加算して最終補正量を求める。
最終補正量＝補正量（更新後）＋学習値（今回値）
【００６０】
以上説明したＥＣＵ２７による要求図示トルクに基づいた要求スロットル開度、要求点火時期、要求燃料噴射量の算出は、図１４乃至図１７に示すトルク制御用の各プログラムに従って実行される。
【００６１】
図１４及び図１５に示すトルク制御プログラムは、例えば、イグニッションスイッチ（図示せず）のオン後に所定周期で実行される。本プログラムが起動されると、まず、ステップ１０１で、アクセル開度、実エンジン回転速度Ｎｅ等に基づいて算出した要求トルクに、ＩＳＣ制御で消費されるトルクと各種の損失トルクとを加算して要求図示トルクを求める。このステップ１０１の処理が特許請求の範囲でいう要求トルク算出手段としての役割を果たす。
【００６２】
この後、ステップ１０２に進み、エンジン運転条件等に基づいてベースλを算出した後、ステップ１０３に進み、所定の空燃比ディザ制御実行条件が成立したか否かを判定する。その結果、空燃比ディザ制御実行条件が成立していないと判定されれば、ステップ１０４に進み、目標λ振幅量を０に設定して、ステップ１０５〜１０７の処理を省略する。この場合、空燃比ディザ制御は実行されない。
【００６３】
一方、上記ステップ１０３で、空燃比ディザ制御実行条件が成立していると判定されたときには、ステップ１０５に進み、エンジン運転条件等に基づいて目標λ振幅量を算出する。尚、後述する目標λ振幅量の補正及び学習実行のためのフラグがオンされている場合には、目標λ振幅量の補正及び学習を実行する。
【００６４】
この後、ステップ１０６に進み、目標λのリーンＭＡＸ値（ベースλを目標λ振幅量だけリーン方向に補正した値）と要求図示トルクとに基づいて、空燃比ディザ制御による空燃比のリーン方向への制御によるトルクダウン量を算出し、このトルクダウン量の絶対値と定数とを比較して大きい方をリザーブトルクとする。このステップ１０６の処理が特許請求の範囲でいうリザーブトルク算出手段としての役割を果たす。
【００６５】
リザーブトルクの算出後、ステップ１０７に進み、要求図示トルクにリザーブトルクを加算して、要求スロットル開度の算出に用いるスロットル系要求図示トルクを求める。
スロットル系要求図示トルク＝要求図示トルク＋リザーブトルク
【００６６】
この後、ステップ１０８に進み、図７に示す点火時期効率のマップ又は数式を用いて、ＭＢＴとベース点火時期との差（ＭＢＴからの遅角量）に応じたベース点火時期効率を算出する。このステップ１０８の処理が特許請求の範囲でいうベース点火時期効率算出手段としての役割を果たす。尚、後述するベース点火時期効率の補正及び学習実行のためのフラグがオンされている場合には、ベース点火時期効率の補正及び学習を実行する。
【００６７】
この後、ステップ１０９に進み、図８に示すλ効率のマップ又は数式を用いて、ベースλに応じたベースλ効率を算出する。このステップ１０９の処理が特許請求の範囲でいうベース空燃比効率算出手段としての役割を果たす。尚、後述するベースλ効率の補正及び学習実行のためのフラグがオンされている場合には、ベースλ効率の補正及び学習を実行する。
【００６８】
この後、ステップ１１０に進み、ベース点火時期効率とベースλ効率とを掛け合わせて総トルク効率を求め、この総トルク効率でスロットル系要求図示トルクを除算してスロットル系要求図示トルクを補正する。このステップ１１０の処理が特許請求の範囲でいうスロットル系要求トルク補正手段としての役割を果たす。
【００６９】
この後、ステップ１１１に進み、補正後のスロットル系要求図示トルクと実エンジン回転速度Ｎｅとに基づいて要求吸入空気量を算出し、この要求吸入空気量と実エンジン回転速度Ｎｅと大気圧とに基づいて要求スロットル開度を算出する。このステップ１１１の処理が特許請求の範囲でいう要求スロットル開度算出手段としての役割を果たす。
【００７０】
また、上記ステップ１０７で、スロットル系要求図示トルクを算出した後は、図１５のステップ１１２で、要求図示トルクにリザーブトルクを加算した後（つまり、スロットル系要求図示トルクを算出した後）、所定時間が経過したか否かを判定する。所定時間が経過する前は、ステップ１１３の処理を飛ばしてステップ１１４に進む。
【００７１】
その後、上記ステップ１１２で、所定時間が経過したと判定されたときに、ステップ１１３に進み、ベースλを目標λ振幅量だけリッチ方向とリーン方向に交互に補正して目標λを設定することで、空燃比をリッチ方向とリーン方向に交互に変化させる空燃比ディザ制御を行う。このステップ１１３の処理が特許請求の範囲でいう空燃比ディザ制御手段としての役割を果たす。
【００７２】
この後、ステップ１１４に進み、エンジン運転条件に応じたなまし係数Ｋを用いて目標λをスムージング（なまし処理）して推定λを求めた後、ステップ１１５に進み、図８に示すλ効率のマップ又は数式を用いて、推定λに応じた目標λ効率を算出する。このステップ１１５の処理が特許請求の範囲でいう目標空燃比効率算出手段としての役割を果たす。
【００７３】
この後、ステップ１１６に進み、実吸入空気量と実エンジン回転速度Ｎｅとに基づいてＭＢＴにおける推定図示トルクを算出する。このステップ１１６の処理が特許請求の範囲でいう推定トルク算出手段としての役割を果たす。
【００７４】
推定図示トルクの算出後、ステップ１１７に進み、推定図示トルクに目標λ効率を乗算して推定図示トルクを補正する。このステップ１１７の処理が特許請求の範囲でいう推定トルク補正手段としての役割を果たす。
【００７５】
この後、ステップ１１８に進み、点火系要求図示トルク（＝要求図示トルク）と補正後の推定図示トルクとの比を要求トルク比として算出した後、ステップ１１９に進み、図７に示す点火時期効率のマップ又は数式を用いて、要求トルク比（要求点火時期効率）に応じた要求遅角量（ＭＢＴからの遅角量）を算出し、次のステップ１２０で、ＭＢＴから要求遅角量だけ遅角して要求点火時期を求める。このステップ１２０の処理が特許請求の範囲でいう要求点火時期算出手段としての役割を果たす。
【００７６】
また、ステップ１２１で、目標λと実吸入空気量とに基づいて要求燃料噴射量を算出して、リッチ方向とリーン方向に交互に変化する目標λに対応して要求燃料噴射量を増量／減量補正する。
【００７７】
以上のようにして、要求図示トルクを実現するように、要求スロットル開度、要求点火時期、要求燃料噴射量を算出した後、ステップ１２２に進み、図１６に示す補正及び学習判定プログラムを実行する。
【００７８】
本プログラムが起動されると、まず、ステップ２０１で、ベース点火時期効率の補正及び学習実行のためのフラグをオンする。この場合、図示しないベース点火時期効率補正プログラムを実行して、実エンジン回転速度Ｎｅと実エンジン回転速度Ｎｅの平均値との偏差である回転速度偏差ΔＮｅに応じてベース点火時期効率を補正する。更に、ベース点火時期効率の補正量の学習制御プログラム（図１７参照）を実行して、今回の学習値を求めると共に、それに応じて補正量を更新して、ベース点火時期効率の最終補正量（＝補正量＋学習値）を算出する。
【００７９】
この後、ステップ２０２に進み、ベース点火時期効率の最終補正量の絶対値が所定値以上であるか否かを判定する。その結果、ベース点火時期効率の最終補正量の絶対値が所定値よりも小さいと判定された場合には、ベース点火時期効率の補正だけでトルク変動を十分に抑制できると判断して、ステップ２０６に進み、ベースλ効率の補正及び学習実行のためのフラグをオフした後、ステップ２０７に進み、目標λ振幅量の補正及び学習実行のためのフラグをオフする。これにより、ベースλ効率の補正及び学習と、目標λ振幅量の補正及び学習は両方とも実行されない。
【００８０】
一方、上記ステップ２０２で、ベース点火時期効率の最終補正量の絶対値が所定値以上であると判定された場合には、ベース点火時期効率の補正だけではトルク変動を十分に抑制できないと判断して、ステップ２０３に進み、ベースλ効率の補正及び学習実行のためのフラグをオンする。この場合、図示しないベースλ効率補正プログラムを実行して、回転速度偏差ΔＮｅに応じてベースλ効率を補正する。更に、ベースλ効率の補正量の学習制御プログラム（図１７参照）を実行して、今回の学習値を求めると共にそれに応じて補正量を更新して、ベースλ効率の最終補正量（＝補正量＋学習値）を算出する。
【００８１】
この後、ステップ２０４に進み、ベースλ効率の最終補正量の絶対値が所定値以上であるか否かを判定する。その結果、ベースλ効率の最終補正量の絶対値が所定値よりも小さいと判定された場合には、ベース点火時期効率の補正とベースλ効率の補正でトルク変動を十分に抑制できると判断して、ステップ２０７に進み、目標λ振幅量の補正及び学習実行のためのフラグのみをオフする。これにより、目標λ振幅量の補正及び学習のみが実行されない。
【００８２】
一方、上記ステップ２０４で、ベースλ効率の最終補正量の絶対値が所定値以上であると判定された場合には、ベース点火時期効率の補正とベースλ効率の補正を両方とも行っても、トルク変動を十分に抑制できないと判断して、ステップ２０５に進み、目標λ振幅量の補正及び学習実行のためのフラグをオンする。この場合、図示しない目標λ振幅量補正プログラムを実行して、回転速度偏差ΔＮｅに応じて目標λ振幅量を補正する。更に、目標λ振幅量の補正量の学習制御プログラム（図１７参照）を実行して、今回の学習値を求めると共に、それに応じて補正量を更新して、目標λ振幅量の最終補正量（＝補正量＋学習値）を算出する。
【００８３】
以上の処理により、ベース点火時期効率とベースλ効率と目標λ振幅量の各補正を、ベース点火時期効率の補正が第１位の優先順位で、ベースλ効率の補正が第２位の優先順位で、目標λ振幅量の補正が第３位の優先順位となるように行う。
【００８４】
また、図１７に示す学習制御プログラムが起動されると、まず、ステップ３０１で、前回の学習値をＥＣＵ２７のバックアップＲＡＭ等の書き換え可能な不揮発性メモリから読み込んだ後、ステップ３０２に進み、今回の補正量がプラス側判定値（＋Ｋ１）以上であるか否かを判定する。その結果、補正量がプラス側判定値（＋Ｋ１）以上であると判定された場合には、ステップ３０３に進み、前回の学習値に所定の更新量を加算して今回の学習値を求める。
学習値（今回値）＝学習値（前回値）＋更新量
【００８５】
この後、ステップ３０４に進み、補正量から更新量を減算して補正量を更新する。
補正量（更新後）＝補正量−更新量
【００８６】
一方、上記ステップ３０１で、補正量がプラス側判定値（＋Ｋ１）よりも小さいと判定された場合には、ステップ３０５に進み、補正量がマイナス側判定値（−Ｋ２）以下であるか否かを判定する。その結果、補正量がマイナス側判定値（−Ｋ２）以下であると判定された場合には、ステップ３０６に進み、前回の学習値から更新量を減算して今回の学習値を求める。
学習値（今回値）＝学習値（前回値）−更新量
【００８７】
この後、ステップ３０７に進み、補正量に更新量を加算して補正量を更新する。
補正量（更新後）＝補正量＋更新量
【００８８】
また、上記ステップ３０１で補正量がプラス側判定値（＋Ｋ１）よりも小さいと判定され、且つ、上記ステップ３０５で補正量がマイナス側判定値（−Ｋ２）よりも大きいと判定された場合には、ステップ３０８に進み、前回の学習値をそのまま今回の学習値として採用する。
学習値（今回値）＝学習値（前回値）
【００８９】
この後、ステップ３０９に進み、今回の補正量をそのまま更新後の補正量として採用する。
補正量（更新後）＝補正量
【００９０】
このようにして学習値と補正量を算出した後、ステップ３１０に進み、更新後の補正量に今回の学習値を加算して最終補正量を求める。
最終補正量＝補正量（更新後）＋学習値（今回値）
【００９１】
この後、ステップ３１１に進み、今回の学習値を前回の学習値としてＥＣＵ２７のバックアップＲＡＭ等のメモリに記憶しておく。
学習値（前回値）＝学習値（今回値）
【００９２】
以上説明した本実施例では、アクセル開度と実エンジン回転速度Ｎｅ等に基づいて算出した要求図示トルクを実現するように要求スロットル開度、要求点火時期、要求燃料噴射量を算出するため、空燃比ディザ制御によって空燃比がリッチ方向とリーン方向に交互に制御されても、トルク変動を抑制することができる。このようにすれば、制御システムの仕様変更等によって空燃比ディザ制御の制御量（空燃比のディザ振幅等）が変更されたり、エンジン１１の運転環境や補機類の作動状態の変化等によって使用条件が変化しても、その時々のエンジン運転条件に基づいて算出される要求図示トルクに基づいて該要求図示トルクを実現する要求スロットル開度、要求点火時期、要求燃料噴射量を自動的に算出することができるので、制御システムの仕様変更や使用条件の変化等に自動的に対応して空燃比ディザ制御によるトルク変動を抑制することができる。これにより、制御システムの仕様変更時に制御量を再適合する必要がなく、適合工数を削減することができると共に、使用条件に左右されずにトルク変動を安定して抑制することができ、運転者にトルク変動を感じさせない快適な走行性能を実現することができる。
【００９３】
しかも、本実施例では、スロットル系要求図示トルク（＝要求図示トルク＋リザーブトルク）に相当する要求スロットル開度を算出し、その要求スロットル開度（吸入空気量）において点火系要求図示トルク（＝要求図示トルク）を実現するように要求点火時期を算出することで、要求図示トルクを実現する要求スロットル開度と要求点火時期を算出するようにしたので、要求スロットル開度をリザーブトルク分だけトルク上昇方向（スロットル開度の増大方向）へオフセットして、その分、要求点火時期をトルク低下方向（点火時期の遅角方向）へオフセットすることができる（図１８参照）。このため、点火時期がＭＢＴ付近に設定されているときでも、空燃比のリーン制御によるトルク低下を補うだけのトルク上昇を点火時期の進角補正によって確保する余裕を持たせることができて、空燃比ディザ制御によるトルク変化を点火時期補正によるトルク変化で確実に補うことができ、空燃比ディザ制御によるトルク変動を確実に抑制することができる。
【００９４】
一般に、点火時期の補正は、スロットル開度（吸入空気量）の補正と比べてトルク補正の応答性が速い。この点に着目して、本実施例では、要求スロットル開度については、実スロットル開度の応答遅れを考慮して、リッチ方向とリーン方向に交互に変化する目標λを反映させずに、ベース空燃比を用いてスロットル系要求トルクに相当する要求スロットル開度を算出し、一方、要求点火時期については、応答性が速いことを考慮して、リッチ方向とリーン方向に交互に変化する目標λに応じて点火系要求トルクを実現する要求点火時期を算出するようにしたので、図１８に示すように、空燃比のリッチ／リーンに応じて要求点火時期を進角／遅角補正することができて、空燃比ディザ制御によるトルク変動を点火時期の補正によって応答良く抑えることができる。
【００９５】
また、本実施例では、エンジン運転条件に応じたなまし係数Ｋを用いて目標λをスムージング（なまし処理）することで、実筒内λの挙動を反映した推定λを求め、この推定λに応じて目標λ効率を算出するようにしたので、実筒内λの挙動を精度良く反映した目標λ効率を算出することができる。これにより、目標λ効率を用いた推定図示トルクの算出精度を向上させることができ、ひいてはトルク制御性を向上させることができる。
【００９６】
また、本実施例では、制御システムの経時変化や製造ばらつきによって点火時期効率特性やλ効率特性が変化して点火時期効率やλ効率に誤差が生じると、それに応じてトルク変動が大きくなって、エンジン１１の回転速度偏差ΔＮｅが大きくなる点に着目して、回転速度偏差ΔＮｅに応じてベース点火時期効率やベースλ効率を補正するようにしたので、ベース点火時期効率やベースλ効率の誤差を自動的にキャンセルすることができ、制御システムの経時変化や製造ばらつきによって点火時期効率特性やλ効率特性が変化しても、トルク制御精度を維持してトルク変動を十分に抑制することができる。
【００９７】
更に、本実施例では、回転速度偏差ΔＮに応じて目標λ振幅量を補正するようにしたので、空燃比ディザ制御によるトルク変動を点火時期補正のみでは抑制しきれない場合でも、そのトルク変動（出力変動）に応じて目標λ振幅量を小さくして、空燃比ディザ制御によるトルク変動を低減することができ、ドライブフィーリングの悪化を回避することができる。
【００９８】
しかも、各補正は、ベース点火時期効率の補正が第１位の優先順位で、ベースλ効率の補正が第２位の優先順位で、目標λ振幅量の補正が第３位の優先順位となるように行うようにしたので、ベース点火時期効率の補正やベースλ効率の補正を優先的に行うことができ、通常は、目標λ振幅量の補正を行わずに、空燃比ディザ制御による触媒早期暖機効果等を最大限に発揮させながら、トルク変動を抑制することができる。そして、ベース点火時期効率の補正やベースλ効率の補正を行ってもトルク変動を十分に抑制できない場合に、目標λ振幅量を補正して、トルク変動を低減することができ、ドライブフィーリングの悪化を回避することができる。
【００９９】
また、本実施例では、ベース点火時期効率の補正量、ベースλ効率の補正量、目標λ振幅量の補正量を学習して、それぞれベース点火時期効率、ベースλ効率、目標λ振幅量の算出に反映するようにしたので、制御システムの経時変化や製造ばらつきの影響を受けない安定したトルク変動抑制制御を行うことができる。
【０１００】
尚、本実施例では、実エンジン回転速度Ｎｅとその平均値との偏差である回転速度偏差ΔＮｅに応じてベース点火時期効率、ベースλ効率、目標λ振幅量を補正するようにしたが、他のエンジン出力の変動度合の情報（例えば、所定期間におけるエンジン回転速度の最大値と最小値との差、標準偏差等）に応じてベース点火時期効率、ベースλ効率、目標λ振幅量を補正するようにしても良い。
【０１０１】
また、本実施例では、ベース点火時期効率とベースλ効率を補正したが、本システムに存在する全ての点火時期効率とλ効率を補正するようにしても良い。
【０１０２】
また、目標λ効率と要求トルク比に基づいて算出する要求遅角量を、回転速度偏差ΔＮｅや他のエンジン出力の変動度合の情報に応じて補正するようにしても良い。
【０１０３】
また、本発明の適用範囲は、触媒早期暖機制御時に空燃比ディザ制御を行うシステムに限定されず、例えば、ＮＯｘ触媒をＳ被毒等から回復させる触媒再生制御時に空燃比ディザ制御を行うシステムに適用しても良い等、空燃比をリッチ方向とリーン方向に交互に変化させる空燃比ディザ制御を行うシステムに広く適用することができる。
【０１０４】
その他、本発明は、吸気ポート噴射式のエンジンに限定されず、筒内噴射式のエンジンにも適用して実施できる。
【図面の簡単な説明】
【０１０５】
【図１】本発明の一実施例におけるエンジン制御システム全体の概略構成図である。
【図２】要求スロットル開度、要求点火時期、要求燃料噴射量の算出方法を説明するためのブロック図である。
【図３】リザーブトルクの算出方法を説明するためのブロック図である。
【図４】ベース点火時期効率の補正方法を説明するためのブロック図である。
【図５】ベースλ効率の補正方法を説明するためのブロック図である。
【図６】目標λ振幅量の補正方法を説明するためのブロック図である。
【図７】点火時期効率のマップを概念的に示す図である。
【図８】λ効率のマップを概念的に示す図である。
【図９】ベース点火時期効率の補正方法を説明するための図である。
【図１０】点火時期効率の曲率補正係数のマップを概念的に示す図である。
【図１１】λ効率の補正係数のマップを概念的に示す図である。
【図１２】目標λ振幅量の補正係数のマップを概念的に示す図である。
【図１３】学習制御を説明するためのタイムチャートである。
【図１４】トルク制御プログラムの処理の流れを示すフローチャート（その１）である。
【図１５】トルク制御プログラムの処理の流れを示すフローチャート（その２）である。
【図１６】補正及び学習判定プログラムの処理の流れを示すフローチャートである。
【図１７】学習制御プログラムの処理の流れを示すフローチャートである。
【図１８】トルク制御の実行例を示すタイムチャート
【符号の説明】
【０１０６】
１１…エンジン（内燃機関）、１２…吸気管、１４…エアフローメータ、１５…スロットルバルブ、１８…吸気管圧力センサ、２０…燃料噴射弁、２１…点火プラグ、２２…排気管、２３…触媒、２６…クランク角センサ、２７…ＥＣＵ（空燃比ディザ制御手段，要求トルク算出手段，要求スロットル開度算出手段，要求点火時期算出手段，リザーブトルク算出手段，ベース空燃比効率算出手段，ベース点火時期効率算出手段，スロットル系要求トルク補正手段，推定トルク算出手段，目標空燃比効率算出手段，推定トルク補正手段）
【図１】
2005113877.tif 000003
【図２】
2005113877.tif 000004
【図３】
2005113877.tif 000005
【図４】
2005113877.tif 000006
【図５】
2005113877.tif 000007
【図６】
2005113877.tif 000008
【図７】
2005113877.tif 000009
【図８】
2005113877.tif 000010
【図９】
2005113877.tif 000011
【図１０】
2005113877.tif 000012
【図１１】
2005113877.tif 000013
【図１２】
2005113877.tif 000014
【図１３】
2005113877.tif 000015
【図１４】
2005113877.tif 000016
【図１５】
2005113877.tif 000017
【図１６】
2005113877.tif 000018
【図１７】
2005113877.tif 000019
【図１８】
2005113877.tif 000020