(57)【特許請求の範囲】
【請求項１】
内燃機関の排気系に設けられた触媒装置と、
この触媒装置における触媒の活性状態を判定する活性判定手段と、
内燃機関の発生トルクを検出するトルク検出手段と、
内燃機関の吸入空気量を検出する吸入空気量検出手段と、
内燃機関の発生トルクと吸入空気量とから一定吸入空気量当たりの発生トルクを算出する手段と、
上記触媒が未活性であると判定されているときに、内燃機関の点火時期を、上記の一定吸入空気量当たりの発生トルクが急減するトルク急減点まで徐々に遅角させる遅角制御手段と、
を備えていることを特徴とする内燃機関の排気浄化装置。
【請求項２】
１つの燃焼期間中におけるクランクシャフトの角速度変化から内燃機関の発生トルクを検出することを特徴とする請求項１に記載の内燃機関の排気浄化装置。
【請求項３】
点火時期の遅角に伴う遅角制御開始前の発生トルクからの低下量が所定値に達したときに、点火時期が上記トルク急減点に達したと判定することを特徴とする請求項１または２に記載の内燃機関の排気浄化装置。
【請求項４】
点火時期の遅角に伴う発生トルクの低下率が所定値に達したときに、点火時期が上記トルク急減点に達したと判定することを特徴とする請求項１または２に記載の内燃機関の排気浄化装置。
【請求項５】
複数の気筒群に分けるとともに、点火時期の遅角制御の際に、各気筒群の点火時期を僅かに異ならせ、各気筒群の気筒の発生トルクの差が拡大したときに、点火時期が上記トルク急減点に達したと判定することを特徴とする請求項１または２に記載の内燃機関の排気浄化装置。
【請求項６】
複数の気筒群に分けるとともに、点火時期の遅角制御の際に、各気筒群の空燃比を僅かに異ならせ、各気筒群の気筒の発生トルクの差が拡大したときに、点火時期が上記トルク急減点に達したと判定することを特徴とする請求項１または２に記載の内燃機関の排気浄化装置。
【請求項７】
基本点火時期から上記トルク急減点までの遅角補正量を学習値として記憶するとともに、実際の遅角補正量がこの遅角補正量学習値に近づくまで遅角補正の速度を大きくすることを特徴とする請求項１〜６のいずれかに記載の内燃機関の排気浄化装置。
【請求項８】
点火時期がトルク急減点まで遅角したと判定した後に、複数回の燃焼期間におけるクランクシャフトの角速度変化から内燃機関の安定度を判定する安定度判定手段をさらに備えていることを特徴とする請求項１〜７のいずれかに記載の内燃機関の排気浄化装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、排気系に触媒装置を備えた内燃機関の排気浄化装置に関し、特に、触媒の強制的な昇温のための点火時期遅角制御に関する。
【０００２】
【従来の技術】
内燃機関の排気浄化のために、排気系に、いわゆる三元触媒やＮＯｘ触媒等からなる触媒装置を設けた排気浄化装置においては、内燃機関の始動後、触媒の温度が所定の活性温度に達するまでの間、十分な排気浄化を行うことができない。そこで、内燃機関の始動後、速やかに触媒を活性化させるために、暖機完了までの間、点火時期を通常の値よりも遅角側に設定し、排気ガス温度を高めて触媒の昇温を促進するようにした技術が広く知られている。
【０００３】
このような遅角制御においては、点火時期の遅角量を大きくするほど排気ガス温度が高くなって触媒の活性化には有利となる一方、点火時期を過剰に遅角させると内燃機関の燃焼安定度が悪化する問題があり、従って、従来の遅角制御の多くは、燃焼安定度が安定限界を越えないように十分な余裕を持って点火時期の遅角補正の限界を予め設定し、その範囲内で遅角制御することになり、点火時期を最大限に遅角させることができない。
【０００４】
これに対し、特開平１１−１０７８３８号公報に開示された技術では、内燃機関の回転変動から実際の燃焼安定度を検出し、この検出した燃焼安定度が許容限界を越えないようにしつつ点火時期を最大限遅角させるようにしている。
【０００５】
【発明が解決しようとする課題】
「燃焼安定度が悪い」とは、燃焼毎に発生するトルクがばらついてエンジンの回転が不規則に変化することである。このような現象を内燃機関の回転変動から正確に判定するには、燃焼毎の機関回転速度を多数検出し、この多数の検出値にばらつきが生じているかどうか検出データを統計処理（たとえば標準偏差の算出）して判断する必要がある。ｎ個の検出値から燃焼安定度を判定するものとすると、一般に内燃機関がｎ回燃焼する毎に遅角補正を進めることになり、遅角補正が許容限界に達するまで多くの時間を要するという問題がある。
【０００６】
本発明の目的は、燃焼安定度の上で許容される限界まで一層速やかに点火時期を遅角させ、始動後の触媒の活性化をさらに早めることにある。
【０００７】
【課題を解決するための手段】
請求項１に係る内燃機関の排気浄化装置は、内燃機関の排気系に設けられた触媒装置と、この触媒装置における触媒の活性状態を判定する活性判定手段と、内燃機関の発生トルクを検出するトルク検出手段と、内燃機関の吸入空気量を検出する吸入空気量検出手段と、内燃機関の発生トルクと吸入空気量とから一定吸入空気量当たりの発生トルクを算出する手段と、上記触媒が未活性であると判定されているときに、内燃機関の点火時期を、上記の一定吸入空気量当たりの発生トルクが急減するトルク急減点まで徐々に遅角させる遅角制御手段と、を備えていることを特徴としている。
【０００９】
吸入空気量を一定とし、点火時期を変化させたときの内燃機関の発生トルクは、図１に示すように、点火時期が所定の範囲にあるときに最大となり、ここから進角側へ変化させても遅角側に変化させても徐々に低下する特性になる。特に、点火時期を遅角側へ変化させると、始めは緩やかにトルクが低下するが、特定の点火時期を越えるとトルクの低下が急激となる。本発明では、このトルクが急激に低下するときの点火時期をトルク急減点と呼ぶ。
【００１０】
本発明者らの実験により、このような点火時期に対するトルク変化特性と燃焼安定度との間に密接な関係が成立することが分かった。すなわち、図１のように、トルクの低下が急激となる範囲に点火時期を設定すると、燃焼安定度（発明者らの実験では平均有効圧の標準偏差σＰｉを算出し、これを燃焼安定度とした）も急激に悪化する。
【００１１】
このようなトルク急減点はエンジンの個体毎に異なり、また、同一個体であっても経時的に変化してしまうが、点火時期がトルク急減点を越えると燃焼安定度が急激に悪化するという関係は不変である。
【００１２】
トルク急減点は、エンジンの発生トルクを検出しつつ点火時期を徐々に遅角させれば容易に探し出すことができる。本発明では、これを利用することにより、実際の燃焼安定度を検出することなく、点火時期を安定限界まで速やかに遅角させることができる。
【００１３】
一方、実際の内燃機関では、吸入空気量が一定となる状況はほとんど発生しない。しかし、検出した発生トルクを吸入空気量で除算することにより、一定吸入空気量当たりの発生トルクを求めることが可能である。請求項１の発明では、このようにして求めた一定吸入空気量当たりの発生トルクに基づいて、トルク急減点に達したか否か判定される。
【００１４】
内燃機関の発生トルクは、例えば請求項２のように、１つの燃焼期間中におけるクランクシャフトの角速度変化から検出することができる。例えば、一定クランク角毎の時間間隔からクランクシャフトの角速度が求められ、この角速度の増加期間における角加速度平均値から平均有効圧が発生トルクとして求められる。従って、１つの燃焼の度にトルク急減点に達したか判定でき、その１つの燃焼の度に点火時期の遅角を進めることができる。
【００１５】
点火時期が上記トルク急減点に達したことの判定は、種々の方法で可能である。
【００１６】
請求項３の発明は、点火時期の遅角に伴う遅角制御開始前の発生トルクからの低下量が所定値に達したときに、点火時期が上記トルク急減点に達したと判定する。なお、上記発生トルクとしては、勿論、一定吸入空気量当たりの発生トルクが用いられる。
【００１７】
点火時期と発生トルク（例えば平均有効圧）との関係の特性は、内燃機関の個体毎に異なり、また、同一個体であっても経時的に変化してしまうものであるが、その違いは、図５に示すように、簡易的には平行移動と見なすことができる。つまり、トルク最大点での発生トルクとトルク急減点での発生トルクとの差は、同型の機関であれば、いずれの個体でもほぼ同じになる。遅角制御開始前の発生トルクは、通常、トルク最大点となるので、遅角に伴うトルク低下量からトルク急減点に達したことを精度よく判定できる。
【００１８】
請求項４の発明は、点火時期の遅角に伴う発生トルクの低下率が所定値に達したときに、点火時期が上記トルク急減点に達したと判定することを特徴としている。上述したように、点火時期と発生トルクとの関係の特性の個体差もしくは経時的な変化は、簡易的に平行移動と見なすことができるので、トルク急減点付近での特性の傾きつまりトルク低下率は、いずれの個体でもほぼ一定となる。
【００１９】
請求項５の発明は、複数の気筒群に分けるとともに、点火時期の遅角制御の際に、各気筒群の点火時期を僅かに異ならせ、各気筒群の気筒の発生トルクの差が拡大したときに、点火時期が上記トルク急減点に達したと判定することを特徴としている。具体的には、例えば、２つの気筒群に分け、各気筒群の点火時期を僅かに異ならせると、遅角側となる一方の気筒群の点火時期がトルク急減点に達したときに、他方の気筒群の点火時期はトルク急減点直前（トルク急減点よりも進角側）にあるので、それぞれの気筒の発生トルクの差は、急激に大きくなる。従って、点火時期がトルク急減点に達したことを精度よく判定できる。特に、個体差あるいは経時的な特性変化が単純な平行移動ではなく特殊な形態で生じた場合でも、実際のトルク急減点を正確に探し出すことができる。
【００２０】
請求項６の発明は、複数の気筒群に分けるとともに、点火時期の遅角制御の際に、各気筒群の空燃比を僅かに異ならせ、各気筒群の気筒の発生トルクの差が拡大したときに、点火時期が上記トルク急減点に達したと判定することを特徴としている。空燃比をリーンに設定すると、トルク急減点は、進角側にずれる。従って、請求項５の発明と同様に、実際のトルク急減点を正確に探し出すことができる。
【００２１】
次に、請求項７の発明は、基本点火時期から上記トルク急減点までの遅角補正量を学習値として記憶するとともに、実際の遅角補正量がこの遅角補正量学習値に近づくまで遅角補正の速度を大きくすることを特徴としている。例えば、遅角補正量学習値の一定割合の値に達するまで、遅角補正の速度が大きく与えられ、その後、より小さな速度で遅角補正が行われる。これにより、より早く遅角させて排気温度を高めることができ、かつ同時に、過度の遅角による燃焼安定度の悪化を回避できる。
【００２２】
また請求項８の発明は、点火時期がトルク急減点まで遅角したと判定した後に、複数回の燃焼期間におけるクランクシャフトの角速度変化から内燃機関の安定度を判定する安定度判定手段をさらに備えていることを特徴としている。例えば複数回の燃焼についてそれぞれ平均有効圧を求め、この複数個のデータのばらつき（例えば標準偏差）から、燃焼安定度が許容範囲内であるか否か判定することができる。実際の燃焼安定度が許容範囲を越えて悪化している場合には、点火時期を進角側に戻すことになる。これにより、限界付近まで速やかに遅角させると同時に、燃焼安定度を確実に許容範囲内に維持できる。
【００２３】
【発明の効果】
この発明によれば、内燃機関の始動後、燃焼安定度の上で許容される限界まで速やかに点火時期を遅角させて排気温度を高めることができ、触媒の早期活性化が図れる。特に、燃焼安定度と発生トルクとの相関を利用して、発生トルクから遅角補正の限界を定めることにより、燃焼安定度を監視しつつ遅角を進める場合よりも一層早く遅角を進めることができる。
【００２４】
また、特に、請求項５あるいは請求項６の発明によれば、内燃機関の個体差あるいは経時的な特性変化に影響されずに、実際のトルク急減点を正確に探し出すことができる。
【００２５】
また、請求項７の発明によれば、燃焼安定度の悪化を回避しつつ一層急激な遅角を実現できる。
【００２６】
さらに、請求項８の発明によれば、トルク急減点まで速やかに遅角した後に、実際の燃焼安定度を確認するので、実際の燃焼安定度を確実に許容範囲内に維持できる。
【００２７】
【発明の実施の形態】
以下、この発明の好ましい実施の形態について、図面に基づいて説明する。
【００２８】
図２は、内燃機関１として直列４気筒ガソリン機関に本発明を適用した実施の形態を示している。内燃機関１は、吸気通路２および排気通路３を備え、それぞれカムシャフト６，７によって駆動される吸気弁４および排気弁５を備えている。各気筒に配置された点火栓９は、後述するエンジンコントロールモジュール（ＥＣＭ）２３からの点火信号に応じて点火される。また、吸気弁４の上流側に配置された燃料噴射弁１０は、ＥＣＭ２３からの噴射信号に応じて噴射駆動される。なお、燃料を直接筒内へ噴射するように燃料噴射弁を配設してもよい。
【００２９】
吸気通路２には、エアクリーナ１１、吸入空気量を検出するエアフロメータ１２、スロットルバルブ１４を備えたスロットルチャンバ１３が、上流側から順次介装されている。また、上記スロットルバルブ１４をバイパスして補助空気通路１５が設けられており、該補助空気通路１５には、アイドルスピードコントロールバルブ１６が介装されている。このアイドルスピードコントロールバルブ１６は、ＥＣＭ２３からの開度制御信号に応じて補助空気通路を流れる空気量を制御しており、特にアイドル運転時は、内燃機関１のアイドル回転数が目標アイドル回転数と一致するように、その開度がフィードバック制御される。上記スロットルバルブ１４の開度は、スロットル開度センサ１７によって検出される。なお、スロットルバルブ１４の開度を電気的に制御するいわゆる電制スロットルを使用する場合は、アイドル運転時の回転数フィードバック制御を、スロットルバルブ１４の開度自体の制御によって行うこともできる。
【００３０】
内燃機関１の排気通路３には、排気浄化のために、例えば三元触媒からなる触媒装置１８が介装されており、その入口側に、排気通路３内の排気ガスの空燃比（あるいは酸素濃度）を検出する空燃比センサ１９が配置されている。
【００３１】
また、水温センサ２０が、機関冷却水温を検出するように設けられている。
【００３２】
第１クランク角センサ２１は、クランクシャフト８に対し設けられており、クランクシャフト８が１度回転する毎に所定の１度信号を、１０度回転する毎に所定の１０度信号を、それぞれＥＣＭ２３に出力している。また、第２クランク角センサ２２は、例えば排気側のカムシャフト７に対し設けられており、各気筒が圧縮上死点前の所定角度（たとえば上死点前１００度）となると、気筒毎の基準信号をＥＣＭ２３に出力している。４気筒内燃機関の場合、カムシャフト７の１回転（クランクシャフト８の２回転）の間に、４つの基準信号がＥＣＭ２３に送られることになる。
【００３３】
上記ＥＣＭ２３は、空燃比制御等の各種エンジン制御プログラムを実行する他、バックグラウンドジョブとして、エアフローメータ１２、スロットル開度センサ１７、空燃比センサ１９および水温センサ２０の出力信号を、所定時間（たとえば４ｍｓ）毎にサンプリングし、該サンプリング値からそれぞれ吸入空気量Ｑａ、スロットル開度ＴＶＯ、空燃比Ｏ２Ｓ、水温Ｔｗを検出する。また、第２クランク角センサ２２から各気筒の基準信号を受け取る度に、その基準信号の発生時間間隔に基づいて機関回転数Ｎｅを求めている。
【００３４】
次に、上記の構成における触媒活性化のための点火時期制御について、図３等のフローチャートに基づいて説明する。
【００３５】
図３は、点火時期制御の全体の流れを示すフローチャートである。この図３のルーチンは、図示せぬイグニッションスイッチがＯＮである間、気筒毎の基準信号が発生する度に、ＥＣＭ２３において実行される。すなわち、内燃機関１が１回燃焼する度に実行されることになる。
【００３６】
なお、このルーチンでは、最終点火時期ＦＡＤＶを算出する処理のみを行い、実際に点火信号を点火栓９へ出力する処理は点火制御ルーチン（図示せず）によって行われる。そして、点火制御ルーチンでは、基準信号の発生位置（例えば圧縮上死点前１００度）からＦＡＤＶ度だけクランクシャフト８が回転したときに点火信号を点火栓９へ出力する。従って、最終点火時期ＦＡＶＤの値が大きいほど点火時期は遅角側になる。
【００３７】
まずステップ１（図中ではＳ１のように記す）では、図示せぬスタータスイッチ（ＳＴＡＲＴ  ＳＷ）がＯＮであるか否か、すなわち、内燃機関１の始動のためのクランキングを行っている最中であるか否かを判断する。ここでクランキング中であると判断されたときはステップ２、ステップ３へ進み、クランキング中でない（始動操作が終了している）と判断されたときはステップ４へ進む。
【００３８】
ステップ２では、必要に応じて各種変数やフラグの初期化を行う。また、始動後の経過時間を計測するタイマのタイマ値ＴＩＭＥを０にリセットし、該タイマをスタートさせる。
【００３９】
ステップ３では、始動用の基本点火時期ＡＤＶを、例えば、機関回転数Ｎｅと水温Ｔｗとに基づいて算出する。
【００４０】
一方、クランキング中以外におけるステップ４では、基本点火時期ＡＤＶを、基本燃料噴射量Ｔｐ、機関回転数Ｎｅ、水温Ｔｗに基づいて算出する。なお、上記基本燃料噴射量Ｔｐは、吸入空気量Ｑａと機関回転数Ｎｅとに基づき、所定時間（たとえば１０ｍｓ）毎に実行される燃料噴射量演算ルーチン（図示せず）で算出される値で、ここでは、内燃機関の負荷を代表する値として使用している。
【００４１】
このステップ４で算出される基本点火時期ＡＤＶは、内燃機関１の発生トルクが最大となる時期に設定される。
【００４２】
次のステップ５では、水温Ｔｗが、内燃機関の暖機完了を判定する所定値Ｔｗｔｈより低いか否かを判断する。ここで内燃機関１の暖機完了後は、触媒装置１８における触媒の温度を積極的に昇温させる必要がないので、遅角制御を行わないものとし、ステップ１１へ進む。
【００４３】
なお、触媒装置１８における触媒の温度を直接検出し、触媒温度が活性完了温度に達しているか否かを判断するようにしても良い。あるいは、簡易的に、始動後の経過時間から触媒活性状態を判断するようにしても良い。
【００４４】
ステップ６では、始動後の経過時間を計測するタイマのタイマ値ＴＩＭＥが、所定の遅角制御開始許可時間ＴＩＭＥＬＭＴより大きいか否かを判断する。ＴＩＭＥＬＭＴ以下であれば、遅角制御を行わないものとし、ステップ１１へ進む。つまり、クランキング中や内燃機関始動直後は、内燃機関が過渡的な運転状態にあるため、遅角制御を行わないようにしている。
【００４５】
さらにステップ７では、内燃機関１がアイドル運転中であるか否かを判断する。アイドル運転中でない場合は、遅角制御を行わなくても排気ガスが十分な熱量を持つため、燃費の悪化を伴なう遅角制御を行わないものとし、ステップ１１へ進む。なお、スロットル開度ＴＶＯがほぼ０であり、機関回転数Ｎｅが所定回転数以下であるときアイドル運転中であると判断する。
【００４６】
これらの条件が成立して遅角制御が許可された場合は、ステップ８へ進み、後に詳述するように、遅角制御された点火時期がトルク急減点に達していないか否かを判断する。
【００４７】
トルク急減点に達していないと判断された場合はステップ９へ進み、トルク急減点に達したと判断された場合はステップ１０へ進む。
【００４８】
上記ステップ９では、徐々に遅角補正を進める。つまり、遅角補正量の前回算出値ＲＴＤｏに所定の遅角ステップ量ΔＲを加算して今回の遅角補正量ＲＴＤを算出する。
【００４９】
またトルク急減点に達した場合のステップ１０では、今回の遅角補正量ＲＴＤとして前回算出値ＲＴＤｏをそのまま維持する。
【００５０】
すなわち、ステップ８〜ステップ１０の処理が繰り返されることにより、点火時期がトルク急減点に達するまでは徐々に遅角補正量ＲＴＤを大きくし、やがてトルク急減点に達するとそれ以上の遅角は行わずに、前回までに算出した遅角補正量を維持する。これにより内燃機関１の燃焼安定度を実際に検出することなく、点火時期を安定度許容限界まで速やかに遅角させることができる。
【００５１】
ステップ５〜７でＮＯの場合に進むステップ１１では、点火時期の遅角制御を行わないので、遅角補正量ＲＴＤを０に設定する。
【００５２】
そして、ステップ１２で、基本点火時期ＡＤＶに遅角補正量ＲＴＤを加算し、最終的な点火時期ＦＡＤＶを算出する。最後に、ステップ１３で、今回算出した遅角補正量ＲＴＤの値でＲＴＤｏを更新する。
【００５３】
次に、図４は、上記ステップ８の具体的な判断処理ルーチンを示しており、燃焼毎の平均有効圧Ｐｉ（機関発生トルク）に基づいて点火時期がトルク急減点に達したか否かを判断する方法の一例を示している。
【００５４】
まず、ステップ２１では、推定平均有効圧Ｐｉ（後述の平均有効圧推定ルーチン（図８）によって算出する）を吸入空気量Ｑａで除算し、一定吸入空気量当たりの推定平均有効圧ＰＩを算出する。
【００５５】
次にステップ２２で、遅角制御の実行を示すフラグＦが０であるか否かを判断する。このフラグＦは、図３のステップ２（初期設定）実行時に０に初期化されるものである。従って、内燃機関１の始動後、ステップ８ヘ初めて処理が進んだときは、このステップ２２の判断がＹＥＳとなり、ステップ２３へ進む。
【００５６】
ステップ２３では、ステップ２１で算出したＰＩを基準値ＰＩＳＥＴとする。このステップ２３が実行される段階では、点火時期の遅角はまだ開始されていないので、基準値ＰＩＳＥＴには、内燃機関１を基本点火時期ＡＤＶで運転したときの推定平均有効圧ＰＩが設定されることになる。これは、遅角補正前の最大トルクに相当する。
【００５７】
そして、ステップ２４でフラグＦを１にする。これにより、次回以降は、ステップ２２からステップ２５へジャンプする。
【００５８】
ステップ２５では、上記基準値ＰＩＳＥＴとそのときの推定平均有効圧ＰＩとの差、すなわちトルク最大点からの推定平均有効圧ＰＩの低下量が、所定量ＰＩＮＧより小さいか否かを判断する。
【００５９】
上記の所定量ＰＩＮＧは、トルク最大点での平均有効圧（ＰＩ）とトルク急減点での平均有効圧（ＰＩ）との差に相当する値で、同型の内燃機関で実験を行い予め求めておいた値である。
【００６０】
なお、上述したように、点火時期と発生トルク（ＰＩ）との間の特性は、内燃機関１の個体毎に異なり、また、同一個体であっても経時的に変化してしまうものであるが、その違いは、簡易的には図５のように平行移動と見なすことができるので、トルク最大点での平均有効圧（ＰＩ）とトルク急減点での平均有効圧（ＰＩ）との差は、いずれの個体でもほぼ同じになる。
【００６１】
上記ステップ２５の判断がＹＥＳである場合、点火時期はトルク急減点に達していないと見なして良いので、遅角量をさらに増加させるべく図３のステップ９へ進む。また、ＮＯであれば、ステップ１０へ進む。
【００６２】
ところで、内燃機関の発生トルクは燃焼毎にばらつくので、必ずしも算出した推定平均有効圧ＰＩが図５の線上にあるわけではない。
【００６３】
しかしながら、点火時期がトルク急減点に達するまでは、発生トルクひいては推定平均有効圧ＰＩのばらつきが小さいので、点火時期がトルク急減点に達していないにも拘らずステップ２５の判断がＮＯとなるような誤判断が起こる可能性は小さい。また、逆に、点火時期がトルク急減点を越えたときは、推定平均有効圧ＰＩがばらついたとしても、その大きさが急に小さくなることに変わりがなく、点火時期がトルク急減点を越えているにも拘らずステップ２５の判断がＹＥＳとなるような誤判断が起こる可能性も小さい。
【００６４】
図６は、上記ステップ８の具体的な判断処理ルーチンの他の実施例を示している。これは、基本的な考え方は図４の例と同じものであるが、前述した発生トルク（推定平均有効圧ＰＩ）のばらつきによる影響をより確実に低減するために、推定平均有効圧ＰＩの加重平均値ＡＶＰＩを算出してこのＡＶＰＩからトルク急減点の判断を行うようにしている。
【００６５】
ステップ３１，３２，３４は、図４のステップ２１，２２，２４と同様の処理を行うものである。
【００６６】
ステップ３３では、初回にステップ３１で算出した推定平均有効圧ＰＩを基準値ＰＩＳＥＴとするとともに、加重平均値ＡＶＰＩの初期値にする。
【００６７】
次回以降はステップ３５に進み、該ステップ３５で加重平均値の前回算出値ＡＶＰＩｏと今回の推定平均有効圧ＰＩと加重平均の重み係数Ｗとから、今回の加重平均値ＡＶＰＩを算出する。なお、重み係数Ｗは、１より小さい適宜な値が与えられる。そして、ステップ３６で今回算出したＡＶＰＩの値でＡＶＰＩｏを更新した後、ステップ３７で、前述したステップ２５と同様に、上記基準値ＰＩＳＥＴとそのときの推定平均有効圧加重平均値ＡＶＰＩとの差が、所定量ＰＩＮＧより小さいか否かを判断する。
【００６８】
図７は、上記ステップ８の具体的な判断処理ルーチンのさらに他の実施例を示している。これは、発生トルクの低下率つまり一定吸入空気量当たりの推定平均有効圧ＰＩの傾きに基づいて点火時期がトルク急減点に達したか否かを判断するようにしたものである。
【００６９】
ステップ４１，４２，４４は、図４のステップ２１，２２，２４と同様の処理を行うものである。
【００７０】
ステップ４３では、傾きＫＰＩの初期値として０を設定する。これは、本ステップが実行されるときは推定平均有効圧ＰＩの前回算出値ＰＩｏがないためである．
次回以降は、ステップ４５へ進み、該ステップ４５で、今回の一定吸入空気量当たりの推定平均有効圧ＰＩとその前回算出値ＰＩｏと遅角ステップ量ΔＲとから、推定平均有効圧ＰＩの傾きＫＰＩを算出する。なお、ここでは、推定平均有効圧ＰＩの低下に対し傾きＫＰＩの値が正となるように、前回値から今回値を減算してＰＩの差を求め、その差を遅角ステップ量ΔＲで除算している。
【００７１】
そして、ステップ４６において今回算出した推定平均有効圧ＰＩの値でＰＩｏを更新した後、ステップ４７において、傾きＫＰＩが所定値ＫＰＩＮＧより小さいか否かを判断する。
【００７２】
所定値ＫＰＩＮＧは、トルク急減点における推定平均有効圧ＰＩの傾きに相当する値で、同型の内燃機関で実験を行い予め求めておいた値である。
【００７３】
前述したように、点火時期と発生トルク（推定平均有効圧ＰＩ）との間の特性の変化を平行移動と見なせば、トルク急減点のＰＩの傾きは、いずれの個体でもほぼ同じになる。
【００７４】
ステップ４７の判断がＹＥＳである場合、点火時期はトルク急減点に達していないと見なし、遅角量をさらに増加させるべく図３のステップ９へ進む。
【００７５】
なお、推定平均有効圧ＰＩの燃焼毎のばらつきを考慮する場合には、図６の実施例と同様に加重平均値ＡＶＰＩを算出し、この加重平均値ＡＶＰＩの前回値と今回値に基づいて傾きＫＰＩを算出するようにすれば良い。
【００７６】
次に、図８に基づいて、発生トルクに相当する平均有効圧を推定するルーチンを説明する。このルーチンは、イグニッションスイッチがＯＮである間、第１クランク角センサ２１の１０度信号が発生する度にＥＣＭ２３で実行される。ただし、処理がステップ５９〜ステップ６３に進むのは１燃焼に１回となるので、平均有効圧Ｐｉの算出は１燃焼毎に行われる。
【００７７】
このルーチンでは、１つの燃焼期間中における角速度の変化からその燃焼で発生したトルク（平均有効圧）を推定する。
【００７８】
まずステップ５１では、前回１０度信号が発生してから今回１０度信号が発生するまでの１０度信号発生時間間隔Ｔ１０に基づいて、内燃機関の回転角速度ωを算出する。
【００７９】
次に、ステップ５２で、今回算出した角速度ωが角速度の前回算出値ωｏより大きいか否かを判断する。ＹＥＳであれば、角速度ωが増加中であるとして、ステップ５３へ進み、ＮＯであれば、角速度ωが減少中であるとして、ステップ５８へ進む。
【００８０】
ステップ５３では、角速度の増減方向を示すフラグＦωが０であるか否かを判断する。Ｆω＝０であるときは、前回本ルーチンを実行したときに、角速度が減少方向にあったことを示し、Ｆω＝１であるときは、増加方向にあったことを示す。Ｆω＝０であればステップ５４へ、Ｆω＝１であればステップ５６へそれぞれ進む。
【００８１】
ステップ５４では、角速度の前回算出値ωｏを、角速度の極小値ωｍｉｎとして記憶する。
【００８２】
このステップ５４が実行されるのは、前回まで角速度ωが減少中であり（ステップ５３がＹＥＳ）、今回角速度ωが増加を示した（ステップ５２がＹＥＳ）とき、つまり角速度ωが減少から増加へ転じた場合であるから、前回算出した角速度ωは極小値であったと見ることができる。角速度ωが極小となるのは、何れかの気筒で点火が実行される直前ないしは直後である。
【００８３】
そして、ステップ５５へ進み、ここで、角速度ωが増加している時間を計測するための変数ｄＴの初期値として、１０度信号発生時間間隔の前回値Ｔ１０ｏの半分を設定する。つまり、角速度ωが減少から増加に転じたのは、Ｔ１０ｏの途中であるので、その１／２の位置とみなし、半分の時間を角速度増加時間ｄＴの初期値として与える。
【００８４】
一方、ステップ５６へ進むのは、角速度ωの増加状態が継続している場合であり、このステップ５６では、角速度増加時間の前回算出値ｄＴｏに１０度信号発生時間間隔の前回値Ｔ１０ｏを加算して角速度増加時間ｄＴを算出する。
【００８５】
そして、ステップ５７で、フラグＦωを１（角速度増加中）とする。
【００８６】
さらに、ステップ６５において、角速度ω、１０度信号発生時間間隔Ｔ１０、角速度増加時間ｄＴの今回値で、ωｏ、Ｔ１０ｏ、ｄＴｏをそれぞれ更新する。
【００８７】
従って、角速度ωが増加中である間、以上の処理が繰り返される結果、その角速度増加時間ｄＴが積算されていく。
【００８８】
ステップ５２の判断がＮＯである場合（角速度ωが減少している場合）は、ステップ５８へ進み、該ステップ５８で、前回本ルーチンを実行したときに角速度が増加中であったか否かをフラグＦωから判断する。前回も減少中（フラグＦωが０）であった場合は、ステップ６４へジャンプするが、初回はフラグＦωが１となっているので、ステップ５９へ進む。
【００８９】
ステップ５９では、角速度ωの前回算出値ωｏと極小値ωｍｉｎとから、両者の平均値ＡＶωを算出する。すなわち、このステップ５９へ進むのは、前回まで角速度ωが増加中であり（ステップ５８がＹＥＳ）、今回角速度ωが減少に転じた（ステップ５２がＮＯ）ときであるから、前回算出した角速度ωは極大値であったと見ることができる。従って、平均値ＡＶωは、角速度の極小値と極大値の平均値となる。
【００９０】
次に、ステップ６０へ進み、角速度増加時間ｄＴの前回算出値ｄＴｏに１０度信号発生時間間隔の前回値Ｔ１０ｏの半分を加算して最終的な角速度増加時間ｄＴを算出する。角速度ωが増加から減少に転じたのは、直前の１０度信号発生時間間隔Ｔ１０ｏの途中であるから、ここではその半分の時間を角速度増加時間ｄＴｏに加算する。
【００９１】
そして、ステップ６１において、角速度ωの増加量（＝ωｏ−ωｍｉｎ）を角速度増加時間ｄＴで除算することにより、角速度増加期間における角加速度の平均値ＡＶｄωを算出し、かつステップ６２において、この角加速度平均値ＡＶｄωから平均有効圧Ｐｉ０を算出する。
【００９２】
さらに、ステップ６３で、上記角速度平均値ＡＶω（ステップ５９）と水温Ｔｗとに基づいて、ステップ６２の平均有効圧Ｐｉ０を補正し、最終的な平均有効圧Ｐｉを算出する。すなわち、平均有効圧は、基本的には角加速度ｄωに比例するが、そのときのエンジンフリクション等でその相関関係が多少変化するので、角速度平均値ＡＶωと水温Ｔｗとで補正を加える。具体的には、角速度平均値ＡＶωが大きい（内燃機関回転数が高い）ほど、また、水温Ｔｗが低い（潤滑油の粘度が高い）ほどエンジンフリクション等が大きくなるので、角速度平均値ＡＶωが大きいほど、また、水温Ｔｗが低いほど上記Ｐｉ０の値を増大補正して最終的な平均有効圧Ｐｉを算出する。
【００９３】
ステップ６４では、フラグＦωを０（角速度減少中）とする。
【００９４】
図９は、上記図８のルーチンにおける種々の変数等を説明するための説明図であり、横軸はクランク角である。この例では、♯１気筒の燃焼に伴う平均有効圧ＰＩの算出を行っている。また、角速度ωは、クランク角１０度毎に算出されるので、角速度−クランク角のグラフ中に短い横棒の形で表されている。
【００９５】
なお、図中に、ω、Ｔ１０、ｄＴ、ωｏ、Ｔ１０ｏと付してあるものは、★で示すタイミングの１０度信号発生時に実行するルーチンに対応している。
【００９６】
本発明において、内燃機関発生トルクの検出は、図８の方法に限られるものではなく、たとえば、筒内圧を検出するセンサを設け、その検出値に基づいて算出するようにしても良い。ただし、図８の方法は、一般的な内燃機関が通常備えているクランク角センサを使用するため、トルク検出のための特別なセンサを必要としないという利点を有する。
【００９７】
また、本発明の場合、必ずしも燃焼毎の発生トルクを検出する必要はなく、点火時期の遅角補正に対して内燃機関の発生トルクが平均的にどの程度低下したかを知れば十分である。
【００９８】
例えば、内燃機関が無負荷で運転されているアイドル運転時には、平均的な機関回転数（基準信号発生時間間隔から算出する機関回転数Ｎｅ等）と内燃機関の平均的な発生トルクとが比例していると見なすことも可能であり、機関回転数Ｎｅに定数を乗算するだけの式で平均有効圧Ｐｉを算出しても良い。
【００９９】
さらには、所定のフィードバック制御によりアイドル回転数が一定の目標回転数に収束している場合に限って遅角制御を実行するとすれば、平均有効圧Ｐｉを一定の固定値としても良い。このとき、点火時期の遅角による発生トルクの低下は、吸人空気量の増加（アイドルスピードコントロールバルブ１６の開度増加による補助空気通路１５の流通空気量の増加）で補われることになるから、平均有効圧Ｐｉが一定であっても、一定吸入空気量当たりの発生トルクを表す平均有効圧ＰＩは点火時期の遅角に応じて小さくなり、トルク急減点の判定を行うことができる。
【０１００】
なお、エンジンフリクションが変化すると平均的な機関回転数と平均的な発生トルクとの比例関係も変化するので、上記のような簡易な方法による平均有効圧Ｐｉを用いる場合も、水温Ｔｗによる補正（ステップ６３と同様の補正）は行う方が好ましい。
【０１０１】
次に、図１０は、図３におけるステップ８〜ステップ１１の処理の変形例を示している。
【０１０２】
これは、遅角補正をより速やかに行うために、遅角ステップ量ΔＲを可変設定するためのステップ１０１〜ステップ１０５を追加したものである。
【０１０３】
ステップ８でトルク急減点に達していないと判定した場合に進むステップ１０１では、遅角補正量学習値ＬＲＴＤに所定の係数ＫＲＴＤ（＜１）を乗じて、遅角ステップ量ΔＲの選択を判断するための判定値ＭＲＴＤを算出する。
【０１０４】
そしてステップ１０２で、遅角補正量の前回算出値ＲＴＤｏ（ステップ１３）が判定値ＭＲＴＤよりも小さいか否かを判断し、ＹＥＳの場合は、ステップｌ０３で遅角ステップ量ΔＲを大ステップ量ＤＲ１に設定し、ＮＯの場合は、ステップ１０４で遅角ステップ量ΔＲを小ステップ量ＤＲ２に設定する。
【０１０５】
なお、ステップｌ０５では、ステップ８でトルク急減点に達したと判断されたときの遅角補正量ＲＴＤｏを遅角補正量学習値ＬＲＴＤとして記憶する。この遅角補正量学習値ＬＲＴＤは、内燃機関停止中も値が消失しないメモリに記憶保持され、次回内燃機関が運転されたときにステップ１０１で使用される。
【０１０６】
このような処理により、遅角制御開始当初（遅角補正量が判定値ＭＲＴＤ以上となるまで）は制御速度を大きくしてより速やかに点火時期を運角させ、判定値ＭＲＴＤ以上のトルク急減点近傍では制御速度を小さくして精度よくトルク急減点に収束させることができる。
【０１０７】
次に、図１１は、図３におけるステップ８〜ステップ１１の処理のさらに異なる実施例を示している。
【０１０８】
これは、トルク急減点に達したと判断された後、実際の燃焼安定度を検出して一定の燃焼安定度が確保されているか確認を行うためのステップ２０１〜ステップ２０９の処理を追加したものである。
【０１０９】
このルーチンでは、ステップ８の前にステップ２０１が実行され、ここで、トルク急減点に達したことを示すフラグＦＦが０であるか否かを判断する。
【０１１０】
このフラグＦＦは、ステップ２（初期設定）で０に初期化され、ステップ１０に続くステップ２０２で１とされる。つまり、遅角制御が開始されてからトルク急減点に達するまではステップ２０１の判断はＹＥＳとなり、一旦トルク急減点に達したと判断されるとステップ２０１の判断はＮＯとなる。
【０１１１】
従って、一旦トルク急減点に達したと判断されると、ステップ２０１からステップ２０３に進み、このステップ２０３以降で実際の安定度が確認される。
【０１１２】
まず、ステップ２０３で、一定吸入空気量当たりの推定平均有効圧ＰＩ（＝Ｐｉ／Ｑａ）のデータを最新のものから８つ用意する。
【０１１３】
すなわち、今回の推定平均有効圧ＰＩをＰＩ１とし、前回のＰＩ１を新たなＰＩ２とする形で、順次更新することにより、推定平均有効圧ＰＩのデータを順に８つ格納する。
【０１１４】
なお、これらのＰＩ１〜ＰＩ８のデータは、機関始動後ステップ２（初期設定）で全て０に初期化されており、また後述するようにステップ２０８においても初期化される。
【０１１５】
続いてステップ２０４で、最も古いデータであるＰＩ８の値が０でないか否かを判断する。このＰＩ８の値が０でなければ、ＰＩ１〜ＰＩ８に全て実際のデータが入っており、燃焼安定度の算出が可能であると判断することができる。
【０１１６】
データが８つ揃った段階でステップ２０５へ進み、ここで、ＰＩ１〜ＰＩ８の値を統計処理して、データのバラツキを示す指標、例えばその標準偏差σＰＩを算出する。この平均有効圧ＰＩの標準偏差σＰＩは、燃焼安定度を示す。
【０１１７】
ステップ２０６では、上記標準偏差σＰＩが、燃焼安定度の許容上限を示すσＰＩＮＧより大きいか否かを判断する。
【０１１８】
許容限界σＰＩＮＧより大であれば、ステップ２０７へ進み、遅角補正量の前回算出値ＲＴＤｏから所定の進角ステップ量ΔＡを減算して今回の遅角補正量ＲＴＤを算出する。つまり、点火時期を僅かに進角側に戻すことになる。そして、ステップ２０８で、このように僅かに進角側に修正した点火時期での平均有効圧ＰＩのデータを新たに８つ用意するために、ＰＩ１〜ＰＩ８を全て０に初期化する。従って、次に標準偏差σＰＩの算出が行われるのは、８回燃焼後になる。
【０１１９】
一方、ステップ２０６で許容限界σＰＩＮＧ以下であれば、ステップ２０９へ進み、今回の遅角補正量ＲＴＤとして前回算出値ＲＴＤｏをそのまま維持する。
【０１２０】
このような処理を加えることにより、仮にステップ８，９の遅角制御によって多少過剰な遅角補正がなされたとしても、実際に燃焼安定度が許容限度に入るように進角側に修正されることになり、確実に燃焼安定度を許容範囲内に収めることができる。
【０１２１】
次に、図１２は、図３におけるステップ８〜ステップ１３の処理のさらに異なる変形例を示している。
【０１２２】
これは、４つの気筒を２つの気筒群つまり気筒群Ａ（例えば＃１、＃４気筒）と気筒群Ｂ（例えば＃２、＃３気筒）とに分け、気筒群Ｂの点火時期を気筒群Ａの点火時期よりも一定量だけ遅角側に設定しつつ全体の点火時期を徐々に遅角させる制御を行い、気筒群Ｂの気筒の発生トルクと気筒群Ａの気筒の発生トルクとの差が一定以上となったときに、気筒群Ｂの点火時期がトルク急減点を越えたと判断するものである。図１３は、この処理による点火時期等の変化を示している。
【０１２３】
まず、ステップ３０１では、既にトルク急減点に達したと判断したことを示すフラグＦＦが０であるか否かを判断する。このフラグＦＦは、ステップ２（初期設定）で０に初期化され、ステップ３１４で１とされる。つまり、遅角制御が開始されてからトルク急減点に達するまではステップ３０１の判断はＹＥＳとなり、ステップ３０２以降へ進み、一旦トルク急減点に達したと判断されるとステップ３０１の判断はＮＯとなって、ステップ３１５へ進む。
【０１２４】
ステップ３０２では、本ルーチンが実行される直前の燃焼が＃１気筒または＃４気筒であったか否か、つまり気筒群Ａであったか否かを判断する。
【０１２５】
本ルーチンは、図３のルーチンと同じく、気筒毎の基準信号が発生する度に実行されるルーチンであるから、例えば、今回＃３気筒の基準信号発生をトリガーとして本ルーチンがスタートしているとすると、直前の燃焼は＃１気筒であったと判断することができる（但し、点火順を、＃１→＃３→＃４→＃２とする）。
【０１２６】
ステップ３０２の判断がＹＥＳである場合、ステップ３０３で、平均有効圧Ｐｉと吸入空気量Ｑａとから、気筒群Ａ（＃１、＃４気筒）の一定吸入空気量当たりの推定平均有効圧ＰＩＡを算出する。
【０１２７】
なお、平均有効圧Ｐｉは図８の平均有効圧推定ルーチンで算出されている値を使用する。直前の燃焼が＃１気筒であれば、図８のルーチンで算出された平均有効圧Ｐｉは＃１気筒燃焼中に算出された値になっているはずである。ただし、演算タイミングのずれが発生する可能性がある場合は、図８のルーチンにおいても、気筒群Ａと気筒群Ｂとに分けてそれぞれの平均有効圧（ＰｉＡ、ＰｉＢ）を算出するようにするとよい。
【０１２８】
ステップ３０４では、気筒群Ａの平均有効圧ＰＩＡの算出を行ったことを示すフラグＦＡを１にセットする。
【０１２９】
ステップ３０２の判断がＮＯである場合、直前は気筒群Ｂの燃焼であるから、ステップ３０５で、平均有効圧Ｐｉと吸入空気量Ｑａとから、気筒群Ｂの一定吸入空気量当たりの推定平均有効圧ＰＩＢを算出する。
【０１３０】
そして、ステップ３０６で、気筒群Ｂの平均有効圧ＰＩＢの算出を行ったことを示すフラグＦＢを１にセットする。
【０１３１】
次に、ステップ３０７では、フラグＦＡ、ＦＢの何れかが０であるか否か、すなわち、平均有効圧ＰＩＡ、ＰＩＢ何れかの算出が未了であるか否かを、両者の積から判断する。
【０１３２】
平均有効圧ＰＩＡ、ＰＩＢの双方の算出が完了していない場合は、ステップ３０８で、気筒群Ａの遅角補正量ＲＴＤＡおよび気筒群Ｂの遅角補正量ＲＴＤＢとして、前回算出値ＲＴＤＡｏ、ＲＴＤＢｏをそのまま維持する。
【０１３３】
これに対し、ステップ３０７において、平均有効圧ＰＩＡ、ＰＩＢの双方の算出が済んでいると判断された場合は、両者の差ΔＰＩ（＝ＰＩＡ−ＰＩＢ）を算出するとともに、ステップ３１０で、フラグＦＡ、ＦＢを０にリセットする。
【０１３４】
そして、ステップ３１１において、両者の差ΔＰＩが所定値ΔＰＩＮＧより小さいか否かを判断する。
【０１３５】
両気筒群Ａ，Ｂの点火時期が何れもトルク急減点より進角側に設定されているときに比べ、気筒群Ａの点火時期がトルク急減点より進角側に設定され、かつ、気筒群Ｂの点火時期がトルク急減点より遅角側に設定されたときに、差ΔＰＩが非常に大きくなる（図１３）。従って、この差ΔＰＩを所定値ΔＰＩＮＧと比較することで、気筒群Ｂの点火時期がトルク急減点を越えていないか否かを精度よく判断することができる。
【０１３６】
トルク急減点に達するまでは、ステップ３１２へ進み、ここで、気筒群Ａの遅角補正量の前回算出値ＲＴＤＡｏに所定の遅角ステップ量ΔＲを加算して今回の遅角補正量ＲＴＤＡを算出するとともに、算出した気筒群Ａの遅角補正量ＲＴＤＡに一定のオフセット遅角量ＯＦＳを加算して、気筒群Ｂの遅角補正量ＲＴＤＢを算出する。このステップ３１２の処理により、図１３に示すように、気筒群Ｂの遅角補正量ＲＴＤＢは気筒群Ａの遅角補正量ＲＴＤＡよりも一定量ＯＦＳだけ遅角側に設定され、かつ、両方の遅角補正量が徐々に増大することになる。
【０１３７】
差ΔＰＩによりステップ３１１において気筒群Ｂの点火時期がトルク急減点を越えたと判断された場合は、ステップ３１３へ進む。ここで、気筒群Ａの遅角補正量ＲＴＤＡとして前回算出値ＲＴＤＡｏをそのまま維持するとともに、気筒群Ｂの遅角補正量ＲＴＤＢも、これと等しいＲＴＤＡｏに設定する。すなわち、両気筒群Ａ，Ｂの遅角補正量を互いに等しくし、特に、気筒群Ａの方に揃えることで、トルク急減点直前となる値に設定する。
【０１３８】
続いて、ステップ３１４で、フラグＦＦを１（トルク急減点までの遅角制御完了）にセットする。
【０１３９】
またステップ３０１においてトルク急減点までの遅角制御が完了（ＦＦ＝１）していると判断された場合、ステップ３１５において、気筒群Ａの遅角補正量ＲＴＤＡ、気筒群Ｂの遅角補正量ＲＴＤＢとして、前回算出値ＲＴＤＡｏ、ＲＴＤＢｏをそのまま維持する。これにより、トルク急減点直前となる遅角補正量が維持される。
【０１４０】
なお、ステップ３１６は、図３のステップ１１と同様に、図３のステップ５〜ステップ７において遅角制御を行わないと判断された場合に、遅角補正量ＲＴＤＡ、ＲＴＤＢを何れも０に設定する。
【０１４１】
また、ステップ３１７およびステップ３１８は、図３のステップ１２およびステップ１３に相当する。ステップ３１７では、基本点火時期ＡＤＶに遅角補正量ＲＴＤＡを加算し、気筒群Ａの最終的な点火時期ＦＡＤＶＡを算出する。また、基本点火時期ＡＤＶに遅角補正量ＲＴＤＢを加算し、気筒群Ｂの最終的な点火時期ＦＡＤＶＢを算出する。ステップ３１８では、今回算出した遅角補正量ＲＴＤＡ、ＲＴＤＢの値でＲＴＤＡｏ、ＲＴＤＢｏを更新する。
【０１４２】
前述した図４，図６，図７の方法では、何れかの気筒が１回燃焼する毎にトルク急減点に達したかの判断を行って遅角補正を進めることができるのに対し、この図１２のルーチンの方法では、気筒群Ａと気筒群Ｂで１回づつ燃焼しないと判断することができない。すなわち、２回の燃焼毎に１段階づつ遅角補正を進めることになり、遅角ステップ量ΔＲが同一であれば、遅角制御の速度は半分となる。
【０１４３】
しかし、図４，図６，図７の方法では、個体毎のバラツキや経時変化の影響による点火時期−発生トルクの特性変化を平行移動と見なす前提で判断を行っているのに対し、この図１２のルーチンの方法では、そのような現象を前堤とする必要がない。つまり、特性変化が平行移動以外の特殊な形態を取っても、正確にトルク急減点を探し出すことができる利点がある。
【０１４４】
しかも、発生トルクのデータを統計処理して燃焼安定度を算出し、この燃焼安定度に基づいて遅角補正を進める従来の方法に比べれば、本ルーチンの制御速度のほうがはるかに高速である。
【０１４５】
次に、図１４は、図３におけるステップ８〜ステップ１１の処理のさらに異なる実施例を示している。
【０１４６】
これは、図１２の方法と同様に、４つの気筒を２つの気筒群つまり気筒群Ａ（例えば＃１、＃４気筒）と気筒群Ｂ（例えば＃２、＃３気筒）とに分け、気筒群Ｂの空燃比を気筒群Ａの空燃比よりも一定量だけリーン側に設定しつつ点火時期を徐々に遅角させる制御を行い、気筒群Ｂの気筒の発生トルクと気筒群Ａの気筒の発生トルクとの差が一定以上となったときに、気筒群Ｂの点火時期がトルク急減点を越えたと判断するものである。図１６は、この処理による点火時期等の変化を示している。
【０１４７】
空燃比がリーン側に設定されると、リッチもしくは理論空燃比の場合に比べて、トルク急減点が進角側にずれる。つまり、遅角していくと、先にトルク急減点に達する。本ルーチンは、これを利用して一方の気筒群の点火時期がトルク急減点を越えたか否かを判断している。
【０１４８】
なお、本ルーチンは、図１２のルーチンと類似しているので、重複する説明は一部省略する。
【０１４９】
まず、ステップ４０１では、既にトルク急減点に達したと判断したことを示すフラグＦＦが０であるか否かを判断する。このフラグＦＦは、ステップ２（初期設定）で０に初期化され、ステップ４１５で１とされる。つまり、遅角制御が開始されてからトルク急減点に達するまではステップ４０１の判断はＹＥＳとなり、ステップ４０２以降へ進み、一旦トルク急減点に達したと判断されるとステップ４０１の判断はＮＯとなって、ステップ４１６へ進む。
【０１５０】
ステップ４０２で、気筒群Ｂの空燃比をリーンとすべきことを示すフラグＦＲＬを１とする。これは、遅角制御が開始されてから気筒群Ｂの点火時期がトルク急減点を越えるまでの間、１となっている。
【０１５１】
ステップ４０３〜ステップ４１２は、前述したステップ３０２〜ステップ３１１と同様であり、ステップ４０３で、本ルーチンが実行される直前の燃焼が＃１気筒または＃４気筒であったか否か、つまり気筒群Ａであったか否かを判断し、ＹＥＳであれば、ステップ４０４で、気筒群Ａ（＃１、＃４気筒）の一定吸入空気量当たりの推定平均有効圧ＰＩＡを算出して、ステップ４０５でフラグＦＡを１にセットする。
【０１５２】
ステップ４０３でＮＯであれば、ステップ４０６で、気筒群Ｂの一定吸入空気量当たりの推定平均有効圧ＰＩＢを算出し、ステップ４０７で、フラグＦＢを１にセットする。
【０１５３】
次に、ステップ４０８で、平均有効圧ＰＩＡ、ＰＩＢの双方の算出が完了したか判定し、いずれかの平均有効圧ＰＩＡ、ＰＩＢの算出が完了していない場合は、ステップ４０９で、遅角補正量ＲＴＤとして、前回算出値ＲＴＤｏをそのまま維持する。
【０１５４】
平均有効圧ＰＩＡ、ＰＩＢの双方の算出が済んでいれば、ステップ４１０で両者の差ΔＰＩ（＝ＰＩＡ−ＰＩＢ）を算出するとともに、ステップ４１１で、フラグＦＡ、ＦＢを０にリセットする。
【０１５５】
そして、ステップ４１２において、両者の差ΔＰＩが所定値ΔＰＩＮＧより小さいか否かを判断する。前述したように、この差ΔＰＩを所定値ΔＰＩＮＧ以上であれば、気筒群Ｂの点火時期がトルク急減点を越えていることを意味する（図１６）。
【０１５６】
トルク急減点に達するまでは、ステップ４１３へ進み、ここで、遅角補正量の前回算出値ＲＴＤｏに所定の遅角ステップ量ΔＲを加算して今回の遅角補正量ＲＴＤを算出する。なお、気筒群Ａおよび気筒群Ｂの双方で同一の遅角補正量ＲＴＤが用いられる。
【０１５７】
差ΔＰＩによりステップ４１２において気筒群Ｂの点火時期がトルク急減点を越えたと判断された場合は、ステップ４１４へ進み、遅角補正量ＲＴＤとして前回算出値ＲＴＤｏをそのまま維持するとともに、ステップ４１５で、フラグＦＦを１（トルク急減点までの遅角制御完了）にセットし、かつフラグＦＲＬを０（リーン制御終了）にリセットする。
【０１５８】
またステップ４０１においてトルク急減点までの遅角制御が完了（ＦＦ＝１）していると判断されれば、ステップ４１６で、遅角補正量ＲＴＤとして前回算出値ＲＴＤｏをそのまま維持する。この遅角補正量ＲＴＤの下では、気筒群Ｂの空燃比を気筒群Ａと等しく復帰させれば、気筒群Ａ，Ｂのいずれについても、トルク急減点直前となる遅角補正量が維持されることになる。
【０１５９】
なお、図３のステップ５〜ステップ７において遅角制御を行わないと判断された場合には、ステップ４１７で遅角補正量ＲＴＤを０に設定するとともに、ステップ４１８でフラグＦＲＬを０にリセットする。
【０１６０】
次に、この図１４のルーチンとともに用いられる燃料噴射量演算ルーチンを、図１５に基づいて説明する。
【０１６１】
この燃料噴射量演算ルーチンは、所定時間毎に実行される。
【０１６２】
始めに、ステップ４５１で、上述したフラグＦＲＬが０であるか否かを判断する。このフラグＦＲＬが０であれば、気筒群Ａおよび気筒群Ｂの双方の空燃比を等しく維持することを意味し、ステップ４５２側へ進む。
【０１６３】
ステップ４５２では、所定の空燃比フィードバック条件が成立しているか否かを判断する。例えば、空燃比センサ１９の活性化が完了していないときは、条件不成立とし、ステップ４５５へ進む。
【０１６４】
条件が成立していれば、ステップ４５３へ進み、空燃比センサ１９の出力信号から算出した空燃比Ｏ２Ｓに応じて、空燃比フィードバック補正係数αを算出する。
【０１６５】
ステップ４５４では、気筒群Ａ（＃１、＃４気筒）の目標当量比ＴＦＢＹＡＡ、気筒群Ｂ（＃２、＃３気筒）の目標当量比ＴＦＢＹＡＢを、いずれも１に設定する。つまり目標空燃比を理論空燃比とする。
【０１６６】
これに対しステップ４５５では、空燃比フィードバック補正係数αを１にクランプする。また、ステップ４５６で、気筒群Ａ，Ｂの目標当量比ＴＦＢＹＡＡ、ＴＦＢＹＡＢを共に１に設定する。
【０１６７】
さらにフラグＦＲＬが１である場合は、ステップ４５７に進み、空燃比フィードバック補正係数αを１にクランプする。そして、ステップ４５８において、気筒群Ａの目標当量比ＴＦＢＹＡＡを１に設定するとともに、気筒群Ｂの目標当量比ＴＦＢＹＡＢを、１より一定のオフセット量ＯＦＳＴだけ小さい値つまりリーン側の値に設定する。
【０１６８】
ステップ４５９では、吸入空気量Ｑａと機関回転数Ｎｅと所定の係数Ｋとから、基本燃料噴射量Ｔｐ（理論空燃比に対応する燃料噴射量）を算出する。
【０１６９】
さらに、ステップ４６０において、この基本燃料噴射量Ｔｐと、気筒群Ａの目標当量比ＴＦＢＹＡＡと、空燃比フィードバック補正係数αとから、気筒群Ａの燃料噴射量ＴｉＡを算出する。同様に、基本燃料噴射量Ｔｐと、気筒群Ｂの目標当量比ＴＦＢＹＡＢと、空燃比フィードバック補正係数αとから、気筒群Ｂの燃料噴射量ＴｉＢを算出する。
【０１７０】
フラグＦＲＬが１となっている間は、ＴＦＢＹＡＡ＞ＴＦＢＹＡＢとなるので、この間の燃料噴射量は、ＴｉＡ＞ＴｉＢとなり、気筒群Ｂの空燃比が気筒群Ａの空燃比より僅かにリーン側に制御される。
【図面の簡単な説明】
【図１】点火時期と発生トルクならびに燃焼安定度との関係を示す特性図。
【図２】この発明に係る排気浄化装置を備えた内燃機関の構成説明図。
【図３】点火時期演算ルーチンの全体を示すフローチャート。
【図４】ステップ８のトルク急減点の判断の具体的な処理を示すフローチャート。
【図５】個体差等による点火時期に対する発生トルクの特性の変化を示す特性図。
【図６】ステップ８のトルク急減点の判断の異なる処理の例を示すフローチャート。
【図７】ステップ８のトルク急減点の判断のさらに異なる処理の例を示すフローチャート。
【図８】平均有効圧推定ルーチンを示すフローチャート。
【図９】平均有効圧推定ルーチンの変数等を説明するための説明図。
【図１０】ステップ８〜ステップ１１の処理の異なる例を示すフローチャート。
【図１１】ステップ８〜ステップ１１の処理のさらに異なる例を示すフローチャート。
【図１２】ステップ８〜ステップ１３の処理の異なる例を示すフローチャート。
【図１３】図１２のルーチンによる発生トルク等の変化を示すタイムチャート。
【図１４】ステップ８〜ステップ１１の処理のさらに異なる例を示すフローチャート。
【図１５】図１４のルーチンとともに用いられる燃料噴射量演算ルーチンを示すフローチャート。
【図１６】図１４のルーチンによる発生トルク等の変化を示すタイムチャート。
【符号の説明】
１…内燃機関
１８…触媒装置
２１…第１クランク角センサ
２２…第２クランク角センサ
２３…エンジンコントロールモジュール（ＥＣＭ）
【図１】
0003959910.tif 000002
【図２】
0003959910.tif 000003
【図３】
0003959910.tif 000004
【図４】
0003959910.tif 000005
【図５】
0003959910.tif 000006
【図６】
0003959910.tif 000007
【図７】
0003959910.tif 000008
【図８】
0003959910.tif 000009
【図９】
0003959910.tif 000010
【図１０】
0003959910.tif 000011
【図１１】
0003959910.tif 000012
【図１２】
0003959910.tif 000013
【図１３】
0003959910.tif 000014
【図１４】
0003959910.tif 000015
【図１５】
0003959910.tif 000016
【図１６】
0003959910.tif 000017