"気筒毎に最大トルクを発生する点火時期をそれぞれに求める点火時期検出手段と、前記最大トルクを発生する点火時期に基づいて各気筒の基準点火時期をそれぞれに設定する基準点火時期設定手段と、前記基準点火時期での運転における気筒間での発生トルクの差を減少させる制御を行うトルク差制御手段と、を含んで構成されたことを特徴とする火花点火式多気筒エンジンの燃焼制御装置。前記基準点火時期設定手段が、前記最大トルクを発生する点火時期を前記基準点火時期とすることを特徴とする請求項1記載の火花点火式多気筒エンジンの燃焼制御装置。前記基準点火時期設定手段が、前記最大トルクを発生する各気筒の点火時期を遅角補正値により遅角補正して、各気筒の基準点火時期を設定することを特徴とする請求項1記載の火花点火式多気筒エンジンの燃焼制御装置。前記基準点火時期設定手段が、前記遅角補正値を、エンジン負荷,エンジン回転速度,エンジン温度のうちの少なくとも1つに基づき可変に設定することを特徴とする請求項3記載の火花点火式多気筒エンジンの燃焼制御装置。前記トルク差制御手段が、前記基準点火時期に基づいて点火を行わせた場合の気筒毎の発生トルクに基づいて、各気筒に共通の目標トルクを設定し、各気筒での発生トルクを前記目標トルクに近づけるべく、気筒別に点火時期,燃料噴射量,シリンダ吸入空気量のうちの少なくとも1つを補正することを特徴とする請求項1~4のいずれか1つに記載の火花点火式多気筒エンジンの燃焼制御装置。前記トルク差制御手段によって気筒間での発生トルクの差を減少させる制御が行われた後、エンジンの目標アイドル回転速度を低下させるアイドル回転低下手段を設けたことを特徴とする請求項1~5のいずれか1つに記載の火花点火式多気筒エンジンの燃焼制御装置。ところで、火花点火式多気筒エンジンにおいては、部品ばらつきや劣化変形等によって気筒毎に点火位置のずれが発生する場合があり、気筒毎の燃料噴射量の調整によっては、各気筒の発生トルクを均一化させることができない場合があった。例えば、クランクシャフトの角度位置を検出するクランクシャフトポジションセンサにおける被検出部の一部に欠損や変形が生じると、クランク角の検出誤差が生じて点火時期を誤検出することになる。係る点火時期のずれによる発生トルクの差を燃料噴射量の調整によって解消しようとすると、目標空燃比に調整されている空燃比を強制的にずらすことになるため、排気性状や燃焼安定性の要求から燃料噴射量の調整範囲が限られ、発生トルクの差を充分に小さくすることができない場合が生じる。そして、気筒間に発生トルクの差があると、一般的にエンジン回転速度が低くなるほど回転変動が大きくなり、運転者に違和感を与えると共に、回転変動が大きくなるためにアイドル回転速度を低くできず、燃費性能を悪化させることになってしまうという問題が生じる。本発明は上記問題点に鑑みなされたものであり、気筒間における発生トルクのばらつきを高精度に補正できる火花点火式多気筒エンジンの燃焼制御装置を提供することを目的とする。そのため、本発明に係る火花点火式多気筒エンジンの燃焼制御装置では、気筒毎に最大トルクを発生する点火時期をそれぞれに求め、該最大トルクを発生する点火時期に基づいて各気筒の基準点火時期をそれぞれに設定し、該基準点火時期での運転における気筒間での発生トルクの差を減少させる制御を行うことを特徴とする。上記発明によると、気筒毎に最大トルクを発生する点火時期MBTに制御することで、気筒間における実際の点火時期のずれを正し、実際の点火時期のずれが修正された状態で、シリンダ吸入空気量や燃料噴射量の気筒間でのばらつきによって発生する気筒間でのトルク差を減少させる。従って、点火時期のずれによる気筒間での発生トルクの差を、各気筒のシリンダ吸入空気量や燃料噴射量で補正することが回避又は抑制されるので、燃焼安定性などを損ねることなく、気筒間におけるトルク差を小さくすることができる。以下に本発明の実施の形態を説明する。図1及び図2は、実施形態における車両用エンジンのシステム構成図である。図において、エンジン101は、4気筒の火花点火式エンジンであり、吸気マニホールド102のブランチ部102Aに燃料噴射弁103が気筒毎に設けられている。尚、エンジン101を4気筒に限定するものではなく、また、燃料噴射弁103が各気筒の燃焼室内に直接燃料を噴射する筒内直接噴射式エンジンであってもよい。また、前記吸気マニホールド102のブランチ部の燃料噴射弁103上流側には、各気筒のシリンダ吸入空気量をそれぞれ独立に制御する電子制御式のスロットルバルブ104が介装されている。前記スロットルバルブ104には、それぞれにモータ等のアクチュエータ図示省略が組み合わされ、各アクチュエータを独立に制御することで、各気筒のスロットルバルブ104を相互に異なる開度に駆動することが可能になっている。前記燃料噴射弁103から噴射された燃料と前記スロットルバルブ104で計量された空気とは、吸気バルブ105を介して燃焼室106内に吸引され、燃料は、燃焼室106内で点火プラグ107の火花点火によって着火燃焼する。前記燃焼室106は、シリンダ108、シリンダヘッド109、ピストン110によって形成される。排気ガスは、排気バルブ111,排気マニホールド112及び排気ダクト113を介して排出され、前記排気ダクト113には、触媒反応により排気ガス中の有害成分CO,HC,NOxを無害な成分CO2,H2O,NO2に変換する触媒コンバータ114が介装されている。前記点火プラグ107それぞれには、パワートランジスタを内蔵するイグニッションコイル115が直付けされており、前記パワートランジスタのオンオフを制御することで、前記イグニッションコイル115への通電開始タイミング及び通電遮断タイミングを制御し、各気筒の点火時期をそれぞれ独立に制御できるようになっている。前記スロットルバルブ104の開度、燃料噴射弁103による燃料噴射量、点火プラグ107による点火時期イグニッションコイル115への通電開始遮断タイミングは、電子コントロールユニットECU201によって制御される。前記ECU201は、マイクロコンピュータを備え、予め記憶したプログラムに従って、各種センサスイッチからの信号を演算処理することで、前記スロットル開度,燃料噴射量,点火時期などの制御目標を設定し、該制御目標に基づく操作信号を各気筒のスロットルバルブ104,燃料噴射弁103,イグニッションコイル115に出力する。前記各種センサとしては、アクセルペダル121の踏込み量アクセル開度ACCを検出するアクセル開度センサ202、前記吸気マニホールド102の上流側に接続される吸気ダクト122に介装され、エンジン101の吸入空気流量QAを計測するエアフローセンサ203、エンジン101の冷却ジャケット内の冷却水の温度TWを検出する水温センサ204、前記触媒コンバータ114よりも上流側の排気ダクト113内の排気中の酸素濃度に基づいて空燃比AFを検出する空燃比センサ205、クランクシャフト123が単位角度だけ回転する毎に単位角度信号POSを出力するクランクシャフトポジションセンサ206、吸気カムシャフト124の回転に同期して気筒判別信号PHASEを出力するカムシャフトポジションセンサ207などが設けられている。前記ECU201は、前記クランクシャフトポジションセンサ206又はカムシャフトポジションセンサ207からの信号に基づいてエンジン101の回転速度NEを算出し、該エンジン回転速度NEと前記エアフローセンサ203で検出された吸入空気流量QAとから基本燃料噴射量基本噴射パルス幅TPを演算する。更に、前記基本燃料噴射量TPを、冷却水温度TWに応じた増量補正係数KTWや、空燃比センサ205で検出される実際の空燃比を目標空燃比に近づけるための空燃比フィードバック補正係数αなどで補正して、最終的な燃料噴射量噴射パルス幅TIを算出し、前記最終的な燃料噴射量TIに対応するパルス幅の噴射パルス信号を、各気筒の吸気行程にタイミングを合わせて各燃料噴射弁103に出力する。また、前記ECU201は、エンジン負荷を示す前記基本燃料噴射量TPとエンジン回転速度NEとに基づいて点火進角値点火時期ADVを算出し、該点火進角値点火時期ADVに従って各気筒で点火が行われるように、前記イグニッションコイル115への通電を制御する。尚、点火進角値点火時期ADVは、圧縮上死点からの進角角度で点火時期を示すものとする。また、前記ECU201は、アクセル開度センサ202で検出されるアクセル開度ACCなどに基づいて目標スロットル開度を算出し、前記スロットルバルブ104の実際の開度が前記目標スロットル開度になるように、前記スロットルバルブ104を駆動するアクチュエータモータを制御する。更に、前記ECU201は、気筒間における発生トルクの差を縮小させるべく、気筒毎に発生トルクを調整する機能を備えている。図3のフローチャートは、前記気筒毎の発生トルクの調整制御の流れを示す。ステップS1001では、点火時期を気筒別に強制的に発生トルクの増大方向に補正し、ステップS1002では、補正した点火時期で点火を行わせた場合の発生トルクを気筒毎に検出する。気筒毎の発生トルクは、エンジン101クランクシャフト123の角速度に基づいて検出することができる。具体的には、各気筒の爆発行程の平均角速度圧縮上死点から膨張下死点まで回転するのに要した時間を検出するか、又は、点火タイミングを基準として設定されるトルク検出角度領域例えば点火時期を含む10deg程度のクランク角範囲での角速度を算出する。尚、エンジン101の角速度を算出する代わりに、角加速度を算出したり、例えばクランクシャフトの撓みからトルクを検出するトルクセンサの出力を、各気筒の爆発行程にタイミングを合わせてサンプリングしたり、燃焼圧筒内圧センサを各気筒それぞれに設け、各気筒における爆発行程での燃焼圧筒内圧をサンプリングさせたりすることで、各気筒の発生トルクを検出させることができる。次のステップS1003では、各気筒における発生トルク角速度の最大値を検出したか否かを判断させ、最大トルクを検出するまで点火時期の強制的な進角遅角変化を繰り返すことで、発生トルクが最大となる点火時期MBTMBT:minimumadvanceforthebesttorqueを気筒毎に求める。具体的には、エンジン負荷TP及びエンジン回転速度NEに基づいて決定される標準の点火時期から進角又は遅角方向に点火時期を変化させて、発生トルクが増大変化する点火時期の変化方向を判別し、発生トルク角速度が増大する方向に点火時期を徐々に変化させ、発生トルク角速度が減少に転じた直前の点火時期を、各気筒において発生トルク角速度が最大となる点火時期MBTとする。上記ステップS1001~ステップS1003の演算機能が、点火時期検出手段に相当する。尚、各気筒において発生トルクが最大となる点火時期MBTを求める場合に、基点とする点火時期をMBTよりも遅角側であると見込まれる点火時期に設定し、該点火時期から徐々に進角させてMBTを求めることができる。係る構成とすれば、点火時期の過剰な進角によるノックの発生を回避することができる。上記のようにして、発生トルクが最大となる点火時期MBTを各気筒それぞれについて求めると、次のステップS1004では、前記点火時期MBTを各気筒における点火進角値基準点火時期ADVに設定し、点火時期MBTを目標として点火制御が行われるようにする基準点火時期設定手段。各気筒における燃料噴射量やシリンダ吸入空気量に差がないとすると、最大トルクとなる点火時期は各気筒で略一致するはずであるが、制御目標としての点火時期ADVに対して、実際の点火時期が気筒間でずれていると、前記ずれに応じて、MBTを得るための点火時期ADVも気筒間で異なることになる。換言すれば、各気筒の発生トルクを検出して求めたMBTは、気筒間における実際の点火時期のずれを補正した結果であると見なすことができ、実際の点火時期のずれによって気筒間で発生トルクに差が生じていた場合には、MBTを点火時期の制御目標とすることで、点火時期のずれによる気筒間での発生トルクの差が解消されることになる。尚、気筒間での実際の点火時期のずれは、例えば、クランクシャフトポジションセンサ206における被検出部に変形や欠けが生じることで、クランク角位置を正しく検出できなくなった場合や、カムシャフトポジションセンサ207で点火時期計測の基準位置を検出する場合において、タイミングベルトの撓み等でクランクシャフトとカムシャフトとの回転位相差が発生した場合などに発生する。次のステップS1005では、各気筒において点火時期MBT基準点火時期で点火させたときに発生したトルク最大角速度の平均値各気筒の発生トルクの総和/気筒数を、全気筒に共通の目標トルク目標角速度に設定する。尚、気筒毎の発生トルクの平均値を前記目標トルクとする代わりに、予め決められた気筒の発生トルクを目標トルクに設定したり、気筒毎の発生トルクの最小値,最大値,メジアン値を目標トルクに設定したり、最大最小値を除いた平均値を目標トルクとすることができる。ここで、気筒間において燃料噴射量シリンダ吸入空気量実際量に差がない場合には、MBTで点火している状態での気筒毎の発生トルクは略一致し、気筒毎の発生トルクにばらつきがある場合には、気筒間で燃料噴射量シリンダ吸入空気量実際量に差があるものと推定できる。気筒間での燃料噴射量シリンダ吸入空気量実際量の差は、燃料噴射弁103の経時劣化や、吸気マニホールド102,スロットルバルブ104,吸気バルブ105の堆積物変形などによって生じると共に、吸気マニホールド102の設計上の空気分配特性などによっても生じる。ステップS1006では、前記目標トルクに各気筒の発生トルクを近づける制御を実行し、気筒間での燃料噴射量シリンダ吸入空気量実際量の差による発生トルクの差を抑制して、各気筒の発生トルクが前記目標トルクに略一致し、全気筒の発生トルクが略均一になるようにするトルク差制御手段。具体的には、ある気筒の発生トルク角速度が目標トルク目標角速度よりも大きい場合には、当該気筒における燃料噴射量の減量補正、吸入空気量スロットル開度の減量補正、点火時期の遅角補正のうちの少なくとも1つを実行し、当該気筒での発生トルク角速度を減少させ、目標トルクに近づけるようにする。一方、ある気筒の発生トルク角速度が目標トルク目標角速度よりも小さい場合には、当該気筒における燃料噴射量の増量補正、吸入空気量スロットル開度の増量補正、点火時期の進角補正のうちの少なくとも1つを実行し、当該気筒での発生トルク角速度を増大させ、目標トルクに近づけるようにする。前記燃料噴射量,吸入空気量スロットル開度,点火時期の補正においては、予め設定されたステップ幅に基づいて徐々に燃料噴射量,吸入空気量,点火時期の気筒別の補正量を変化させ、実際の発生トルクが目標トルクに略一致するようになった時点実際の発生トルクと目標トルクとの偏差の絶対値が許容値未満になった時点で、補正量の変更を停止させる。気筒別のシリンダ吸入空気量の補正は、前記スロットルバルブ104の目標開度を気筒別に補正することで実現できる他、吸気バルブ105の開特性バルブ作動角の中心位相、バルブリフト量、バルブ作動角を気筒別に可変にできる可変動弁機構を備える場合には、吸気バルブ105の開特性を気筒別に補正することで、各気筒のシリンダ吸入空気量を、個別に増減変化させることが可能である。更に、気筒別に排気還流量を調整できる排気還流装置を備える場合には、気筒毎の排気還流量を調整することで、各気筒の新気量を変化させ、発生トルクを増減変化させることができる。また、前記燃料噴射量シリンダ吸入空気量の補正においては、空燃比が許容最大値リーン限界許容最小値リッチ限界で挟まれる範囲内で変化するように、燃料噴射量シリンダ吸入空気量の補正範囲を制限することが好ましく、前記許容最大値リーン限界許容最小値リッチ限界は、燃焼安定性排気性状排気温度などの要求に基づき予め実験やシミュレーションに基づいて適合される。また、前記点火時期燃料噴射量シリンダ吸入空気量を補正しても、発生トルク角速度が変化しない場合には、当該気筒における補正を停止させ、補正に応じて発生トルク角速度が変化する気筒の補正を継続させるか、又は、発生トルクを目標トルクに近づける補正制御を全気筒について停止させる構成とすることができる。また、点火時期燃料噴射量シリンダ吸入空気量の補正に応じて発生トルク角速度が変化しない気筒が発生した場合に、当該気筒での発生トルクを目標トルクに設定し、補正に応じて発生トルク角速度が変化する他の気筒の発生トルクを、前記目標トルクに近づけるようにすることができる。更に、補正に応じて発生トルク角速度が変化しない気筒が複数発生した場合には、それら気筒での発生トルクの平均値を目標トルクとしたり、全体のトルクバランスを確保できる目標トルクを設定したりすることができる。例えば、発生トルクが変化しない気筒が4気筒中3気筒であり、該3気筒のうち2気筒の発生トルクが高く、残りの1気筒の発生トルクが低い場合には、点火順にも影響されるが、発生トルクが補正に応じて変化する気筒の目標を、前記低い発生トルクに合わせることで、全体のトルクバランスを確保して回転変動を小さく抑えることができる場合があり得る。また、補正に応じて発生トルクが変化しない気筒での発生トルクが、極端に低い場合には、この発生トルクが低い気筒に合わせて目標トルクを設定することを禁止し、他の気筒の発生トルクに基づいて目標トルクを設定することができる。前記ステップS1006に進む前に、各気筒の点火時期がMBTに制御され、気筒間での実際の点火時期のずれが直され、その分だけ気筒間における発生トルクの差が小さくなっているので、ステップS1006の処理に要求される補正代を小さくでき、運転性を悪化させない範囲で、燃料噴射量,吸入空気量,点火時期を補正することで、気筒間における発生トルクの差を充分に小さくできる。ステップS1006の処理によって、各気筒の発生トルクが目標トルク付近に一致するようになると、ステップS1007へ進み、エンジン101における目標アイドル回転速度を低下させる設定を行うアイドル回転低下手段。前記目標アイドル回転速度の低下は、目標アイドル回転速度を、標準値よりも一定値例えば100rpmだけ低い値に切り換える処理であっても良いし、アイドル運転状態になったときに、目標アイドル回転速度を標準値から微小値例えば25~50rpmずつ低下させていき、エンジン101の回転変動単位時間当たりの変化量が許容値を超えるようになる直前での目標アイドル回転速度を最終的な目標に設定することができる。前記目標アイドル回転速度に基づくアイドル回転速度制御は、実際のアイドル回転速度が前記目標アイドル回転速度に近づくように、エンジン101の吸入空気量をフィードバック制御することで行われる。ここで、気筒間での発生トルクの差が大きい状態でアイドル回転速度を低下させると、回転変動が大きくなって運転者に違和感を与えることになってしまうが、気筒間での発生トルクの差が充分に小さい状態であれば、アイドル回転速度を低下させても安定した回転が得られ、運転者に違和感を与えることがなく、また、アイドル回転速度を低下させることで、燃費性能の向上を図れる。図4のフローチャートは、前記ステップS1007での処理として、目標アイドル回転速度を徐々に低下させる処理を詳細に示すものであり、エンジン101のアイドル運転状態アイドル回転速度制御の実行条件成立時に実行される。まず、ステップS8001では、目標アイドル回転速度NETGを前回までの値よりも予め設定されたステップ幅A例えば25~50rpmだけ低下させる。尚、前記目標アイドル回転速度NETGの初期値は、気筒間での発生トルクのばらつきがある程度発生しても、運転者に違和感を与える回転変動を発生させることのない高めの回転速度に設定されており、気筒間での発生トルクの差が抑制された状態では、大きな回転変動を発生させることがない範囲で更に低下させることができる余裕代を備える。また、目標アイドル回転速度NETGを低下させる毎に、前記ステップ幅Aを、より小さい値に変更することができる。次のステップS8002では、前記ステップ幅Aだけ低下させた目標アイドル回転速度NETGに実際のエンジン回転速度が収束すると予測される時間T図5参照だけ待機させる。前記ステップ幅Aが大きいほど収束時間が長くなるので、前記待機時間Tは、前記ステップ幅Aが大きいほどより長い時間に設定する。ステップS8003では、エンジン回転速度NEの変動単位時間当たりの変化量の絶対値が許容値Bよりも大きいか否かを判断する。前記許容値Bは、運転者に違和感を与える回転変動量の最小値に基づき設定され、該許容値B以下の回転変動であれば、運転者に違和感を与えることがないように予め適合されている。エンジン回転速度NEの変動が許容値B以下であって、エンジン回転速度NEが安定している場合には、ステップS8001に戻って目標アイドル回転速度NETGを更にステップ幅Aだけ低下させるようにし、エンジン回転速度NEの変動が許容値B以下であると判断されている間は、目標アイドル回転速度NETGをステップ幅Aだけ低下させる処理を繰り返す。そして、エンジン回転速度NEの変動が許容値Bを超えていると判断されるようになると、ステップS8004へ進み、ステップ幅Aずつ低下させてきた目標アイドル回転速度NETGの前回値、即ち、エンジン回転速度NEの変動が許容値B以下であると判断された目標アイドル回転速度NETGのうちで最も低い回転速度を、最終的な目標アイドル回転速度NETGに設定する。尚、気筒間の発生トルクの差は、低回転域で大きな回転変動を招くことになるため、図3のフローチャートに示す処理気筒間の発生トルクを略揃える処理を、エンジン101のアイドル運転状態であるときに限定して行わせることができる。また、気筒間での発生トルクの差を小さくする処理を、非アイドル時にも行わせる場合には、トルク変動による車両への影響を抑えるために、エンジン101の定常運転状態であるときに、気筒間での発生トルクの差を小さくする処理燃料噴射量,吸入空気量,点火時期の補正制御を行うことが好ましい。また、各気筒の発生トルクが目標トルクに一致した時点での燃料噴射量,吸入空気量,点火時期の補正量を記憶しておき、前回までの補正量で補正した燃料噴射量,吸入空気量,点火時期での運転で、発生トルクに差が生じた場合に、記憶されている補正量を更新させることができる。更に、エンジン101の始動から停止までの1トリップ間に、気筒間の発生トルクの差を小さくする処理を1回だけ行わせ、気筒間での発生トルクの差が一旦小さくなった後は、そのときの燃料噴射量,吸入空気量,点火時期の補正量をそのまま継続して用いるようにすることができる。また、気筒間の発生トルクを揃えて目標アイドル回転速度を低下させる制御は、エアコン負荷の投入等に伴うアイドル回転速度の増大要求時には、その実行をキャンセルすることが、アイドル運転の安定性を確保するために好ましい。また、目標アイドル回転速度毎に、各気筒の発生トルクを揃えるための点火時期燃料噴射量シリンダ吸入空気量の補正量を学習し、該学習結果を次回以降のアイドル運転で反映させることができる。更に、エアコンなどの外部負荷が変化する場合、点火時期燃料噴射量シリンダ吸入空気量を変化させても発生トルクが変化しない場合、燃料噴射弁103、点火プラグ107、イグニッションコイル115、スロットルバルブ104などの発生トルクの制御に関わる部品が故障している場合、触媒昇温のための点火時期補正などの他の制御で点火時期を補正している場合には、各気筒の発生トルクを揃える制御を行わないことが好ましい。図6のフローチャートは、前記気筒毎の発生トルクの調整制御の第2実施形態を示す。前記第1実施形態では、各気筒の点火時期をMBTに制御し、MBTでの気筒間の発生トルクの差を減少させる構成としたが、第2実施形態では、MBTから遅角補正した点火時期としたときの気筒間の発生トルクの差を減少させることを特徴とする。図6のフローチャートにおいて、ステップS2004以外の各ステップは、図3のフローチャートのステップS1004以外の各ステップと同様な処理を行うので、詳細な説明は省略する。ステップS2001~ステップS2003で、各気筒の点火時期をMBTに調整すると、ステップS2004では、気筒毎に、MBTから遅角補正値を減算して求めた、MBTよりも遅角側の点火時期基準点火時期で点火を行わせるようにする基準点火時期設定手段。前記遅角補正値は、固定値であっても良いし、エンジン負荷エンジン回転速度エンジン温度冷却水温度などのエンジン運転条件に応じて可変に設定することができる。具体的には、図7に示すように、エンジン101の運転領域を、エンジン回転速度及びエンジン負荷に基づいて、低回転低負荷領域,中回転中負荷領域,高回転高負荷領域の3領域に区分し、低回転低負荷領域では、エンジン101の回転安定性を確保すべく前記遅角補正値を最も大きく設定し、高回転高負荷領域では、ノックの発生を回避すべく、前記遅角補正値を低回転低負荷領域に次いで大きな値に設定し、更に、中回転中負荷領域では、エンジン回転が比較的安定し、また、ノックが発生し難い領域であることから、前記遅角補正値を最も小さい値に設定し、MBTに最も近い点火時期を設定させる。また、エンジン温度冷却水温度TWの条件に対しては、図8に示すように、エンジン温度水温が低いほど、遅角補正値をより大きな値に設定する。これは、冷機時に点火時期を遅らせることによって排気温度を上昇させれば、これによって、触媒コンバータ114を早期に活性化昇温できるためであり、エンジン温度冷却水温度が低い条件とは、換言すれば、触媒コンバータ114の温度が低いときである。尚、エンジンの運転条件に応じた前記遅角補正値の可変設定は、エンジン負荷エンジン回転速度エンジン温度冷却水温度のうちの1つ又は複数に基づいて行わせることができ、また、前記エンジン温度冷却水温度は、前述のように、エンジン始動後の経過時間に相関するから、エンジン始動からの経過時間に応じて遅角補正値を設定させることができる。ステップS2005では、前記MBTを遅角補正した点火時期基準点火時期で燃焼させた場合における各気筒での発生トルクを求め、更に、各気筒での発生トルクの平均値を目標トルク目標角速度に設定する。ステップS2006,ステップS2007では、前記目標トルクに各気筒の発生トルクを近づけるべく、各気筒の点火時期、燃料噴射量、シリンダ吸入空気量を個別に補正設定し、各気筒の発生トルクが前記目標トルクに略揃ってから、目標アイドル回転速度を低下させる処理を行う。上記のように、MBTを遅角補正した点火時期で燃焼させたときの各気筒の発生トルクから目標トルクを設定するので、各気筒の発生トルクを目標トルクに揃えるための点火時期の進角方向への補正代を確保することができる。従って、エンジン回転の安定性の低下やノックの発生を回避しつつ、気筒毎の発生トルクを略一致させることができ、また、触媒の早期活性化を図りつつ、気筒毎の発生トルクを略一致させることが可能となる。図9のフローチャートは、前記気筒毎の発生トルクの調整制御の第3実施形態を示す。第3実施形態では、各気筒の点火時期をMBTに設定した定常運転状態での同一気筒での燃焼毎の発生トルクの変化量、又は、各気筒の点火時期をMBTに設定した状態での気筒間における発生トルクの差が、許容値を超えるか否かに基づいて、エンジン101の正常異常を判定することを特徴とする。図9のフローチャートにおいて、ステップS3001~ステップS3004では、前記図3のフローチャートのステップS1001~ステップS1004と同様にして、各気筒の点火時期をMBTに調整する。そして、ステップS3005では、点火時期をMBTとした定常運転状態での同一気筒での燃焼毎の発生トルクの変化量の絶対値が許容変化量を超えているか否かを判別する。ここで、1気筒でも、燃焼毎の発生トルクの変化が許容レベルを超えている気筒がある場合には、ステップS3007へ進み、エンジン101の異常を判定する。また、同一気筒での燃焼毎の発生トルクの変化量の絶対値が許容値以下であって、各気筒での発生トルクが安定している場合には、ステップS3006へ進み、気筒間における発生トルクの差の絶対値が許容偏差を越えているか否かを判別する。前記気筒間における発生トルクの差は、各気筒の中で最も高い発生トルクと最も低い発生トルクとの差の絶対値として求めることができる他、発生トルクの平均値に対する各気筒の発生トルクの差の絶対値として求めることができる。ステップS3006で、気筒間における発生トルクの差の絶対値が許容偏差を越えていると判断された場合には、ステップS3007へ進み、エンジン101の異常を判定する。前記ステップS3007でエンジン101の異常を判定した場合には、例えば、車両の運転席付近などに設けられる表示装置警告装置警告ランプやブザーなどによって、運転者に対してエンジン異常の発生を警告する。尚、前記許容変化量許容偏差は、運転者が感じるトルク変動回転変動の許容限界などに対応して設定される値であり、予め実験やシミュレーションなどに基づいて設定される。一方、ステップS3006で、気筒間における発生トルクの差の絶対値が許容偏差以下であると判断された場合には、ステップS3008へ進み、エンジン101の正常を判定する。点火時期をMBTに設定している状態で、同一気筒の発生トルクが大きく変動したり、気筒間での発生トルクの差が大きかったりする場合には、燃料噴射量やシリンダ吸入空気量の各気筒又は気筒間でのばらつきが許容レベルを超えているものと推定されるので、エンジン101の異常を判定して、異常状態のまま継続して運転されることを回避する。一方、ステップS3008でエンジン101が正常であると判定された場合には、同一気筒での発生トルクが安定していて、かつ、気筒間での発生トルクの差が小さいので、点火時期燃料噴射量シリンダ吸入空気量の補正によって各気筒での発生トルクを略同等に揃えることができるものと推察される。そこで、ステップS3008でエンジン101が正常であると判定された場合には、ステップS3009~ステップS3011へ進み、MBTでの発生トルクの平均値を目標トルクとし、該目標トルクに各気筒の発生トルクを近づけるべく、各気筒の点火時期燃料噴射量シリンダ吸入空気量を補正設定し、各気筒での発生トルクが目標トルク付近に収束してから、目標アイドル回転速度を低下させる。また、ステップS3007でエンジン101の異常を判定した場合には、同一気筒の発生トルクが大きく変動したり、気筒間での発生トルクの差が大きかったりすることで、各気筒での発生トルクを目標トルク付近に安定的に収束させることができなかったり、目標トルクに近づけるためには、点火時期燃料噴射量シリンダ吸入空気量を大きく補正する必要が生じることになる。そこで、ステップS3007でエンジン101の異常を判定した場合には、各気筒の発生トルクを目標に近づける制御、及び、目標アイドル回転速度を低下させる制御を行わず、過剰な補正や収束しない繰り返しの補正によって、エンジンの運転性をかえって悪化させてしまうことがないようにする。尚、上記第2実施形態のように、MBTを遅角補正して基準点火時期を設定し、該遅角補正された基準点火時期での発生トルクのばらつきから、エンジン101の異常を診断させることができる。また、各気筒の発生トルクを目標トルクに近づける制御を行っても、目標トルクに充分に近づけることができない場合、或いは、気筒間における発生トルクの差が充分に小さくならない場合に、エンジン101の異常を判定させることができ、係る構成とした第4実施形態を、図10のフローチャートに従って説明する。図10のフローチャートにおいて、ステップS4001~4006では、前記図3のフローチャートにおけるステップS1001~ステップS1006と同様に、各気筒の点火時期をMBTに制御し、MBTでの各気筒の発生トルクから目標トルクを設定し、該目標トルクに各気筒の発生トルクを揃えるべく、気筒別に点火時期燃料噴射量シリンダ吸入空気量を補正設定する。ステップS4007では、目標トルクに各気筒の発生トルクを揃えるための補正制御を行った結果、各気筒の発生トルクがそれぞれ目標トルクに近づき、気筒間における発生トルクの差の絶対値が許容差以下になっているか否かを判別する。尚、前記ステップS4007における発生トルクの補正結果の検証は、例えば、目標トルクと実際の発生トルクとの偏差の今回値と前回値との差が殆ど変化しなくなった時点で、補正制御の収束を判定し、全気筒の補正制御について収束判定した時点で、各気筒の発生トルクが目標トルクを含む所定範囲内になっているか否かを判断する。各気筒の発生トルクが目標トルクを含む所定範囲内になっていて、各気筒の発生トルクが目標トルク付近に揃っている場合には、ステップS4008へ進み、エンジン101が正常であると判定し、次のステップS4009では、目標アイドル回転速度を低下させる処理を実行する。一方、発生トルクを目標トルクに充分に近づけることができなかった気筒が少なくとも1気筒有り、気筒間における発生トルクの差の絶対値が許容差を越えている場合には、例えば、燃料噴射弁103の詰まり吸気バルブ105の汚れなどによって、一部気筒において発生トルクの可変範囲が制限されているものと推定し、ステップS4010へ進んで、エンジン101の異常を判定する。エンジン101の異常を判定した場合には、気筒間における発生トルクの差が充分に小さくなっていないから、ステップS4009の目標アイドル回転速度を低下させる処理を迂回して進み、目標アイドル回転速度を高いままに保持させる。従って、気筒間における発生トルクの差が大きい状態で、目標アイドル回転速度を低下させてしまうことが回避され、大きな回転変動の発生を未然に防止できる。尚、上記第4実施形態のステップS4004において、第2実施形態と同様に、MBTを遅角補正した点火時期を設定させることができる。図11のフローチャートは、気筒毎の発生トルクの調整制御の第5実施形態を示す。第5実施形態は、各気筒の発生トルクを1つの目標トルクに揃える処理を行い、その後目標アイドル回転速度を低下させると、低下させた目標アイドル回転速度でのアイドル運転状態で、再度MBTに制御し、MBT又はMBTを遅角補正した点火時期での発生トルクから設定した目標トルクに、各気筒の発生トルクを揃える処理を行う。図11のフローチャートにおいて、ステップS5001~ステップS5007では、図3のフローチャートにおけるステップS1001~ステップS1007と同様に、各気筒の点火時期を個別にMBTに調整し、MBT又はMBTを遅角補正した点火時期での発生トルクから目標トルクを設定し、該目標トルクに各気筒の発生トルクを揃える補正を行い、補正後に目標アイドル回転速度を低下させる処理を行う。そして、ステップS5007で目標アイドル回転速度を低下させる処理を行うと、ステップS5008では、低下させた目標アイドル回転速度でのアイドル運転状態で、各気筒の点火時期をMBTに調整し、MBT又はMBTを遅角補正した点火時期での発生トルクから目標トルクを設定し、該目標トルクに各気筒の発生トルクを揃える補正を、再度行わせる。上記のようにして、各気筒の発生トルクを揃えたことに基づいて、目標アイドル回転速度を低下させ、低下させた回転速度でのアイドル運転状態で、再度気筒間の発生トルクを一定に揃えるように補正すれば、低下させたエンジン回転速度でのアイドル運転で許容レベルを超える回転変動が発生することをより確実に防止できる。尚、目標アイドル回転速度を低下させた後の2度目の補正制御においては、MBTに調整する場合の点火時期の進遅角変化範囲を1度目よりも狭く限定することが好ましい。また、気筒間の発生トルク調整と、目標アイドル回転速度の変更とを繰り返す構成とすることができ、その場合、繰り返し回数が増える毎に、目標アイドル回転速度の低下幅をより狭く変更することが好ましい。上記各実施形態は、各気筒の発生トルクを一定に揃えるようにしたが、複数バンクを備えるV型や水平対向エンジンにおいて、バンク単位でMBTに調整し、そのときの各バンクの発生トルクの差を小さくするように、点火時期燃料噴射量吸入空気量をバンク単位で補正する構成とすることができる。更に、上記第1~第5実施形態に示した特徴的処理を適宜組み合わせることが可能である。"