"アルコール燃料を使用可能な多気筒内燃機関の気筒間空燃比ばらつき異常検出装置であって、前記内燃機関の排気通路に設けられた空燃比センサと、前記空燃比センサの出力変動度合いに相関する出力変動パラメータを検出する検出手段と、前記検出手段により検出された出力変動パラメータに基づき、少なくとも正常または異常の判定を実行する判定手段と、前記検出手段による出力変動パラメータの検出時に、空燃比を所定の基準空燃比よりもリーンに制御する空燃比制御手段と、を備えることを特徴とする気筒間空燃比ばらつき異常検出装置。前記空燃比制御手段は、空燃比を、前記基準空燃比よりもリッチまたはリーンな第1空燃比に制御し、前記検出手段は、この第1空燃比への制御中に出力変動パラメータの検出を行い、前記判定手段は、当該出力変動パラメータの検出値に基づき、正常、異常または保留の判定を実行し、前記判定手段が保留の判定を実行したとき、前記空燃比制御手段は、空燃比を、前記基準空燃比および前記第1空燃比よりリーンな第2空燃比に制御し、前記検出手段は、この第2空燃比への制御中に出力変動パラメータの検出を行い、前記判定手段は、当該出力変動パラメータの検出値に基づき、正常または異常の判定を実行することを特徴とする請求項1に記載の気筒間空燃比ばらつき異常検出装置。前記空燃比センサが使用初期状態にあるか否かを判定する判定手段をさらに備え、前記空燃比制御手段は、前記判定手段により前記空燃比センサが使用初期状態にあると判定されたとき、空燃比を前記第1空燃比に制御することを特徴とする請求項2に記載の気筒間空燃比ばらつき異常検出装置。前記基準空燃比に対する前記第1空燃比のずれ量が、前記基準空燃比に対する前記第2空燃比のずれ量よりも少ないことを特徴とする請求項2または3に記載の気筒間空燃比ばらつき異常検出装置。空燃比センサの下流側に設けられた触媒と、前記触媒の下流側に設けられた別の空燃比センサと、前記別の空燃比センサが前記基準空燃比よりもリーンな空燃比を検出しているとき、前記空燃比制御手段が空燃比を前記基準空燃比よりもリーンに制御することを禁止する禁止手段と、をさらに備えることを特徴とする請求項1~4のいずれか一項に記載の気筒間空燃比ばらつき異常検出装置。前記基準空燃比がストイキであることを特徴とする請求項1~5のいずれか一項に記載の気筒間空燃比ばらつき異常検出装置。ところで、代替燃料としてのアルコール燃料を使用可能な多気筒内燃機関を搭載した車両所謂FFVFlexibleFuelVehicleが実用化されている。かかる内燃機関においては、基準のガソリン燃料に対し0~100濃度のアルコール燃料を含む燃料が使用可能である。かかる内燃機関に上述のばらつき異常検出を行うと、使用燃料のアルコール濃度に応じて検出結果が異なる場合があることが判明した。そこで本発明は、上記事情に鑑みて創案され、その目的は、使用燃料のアルコール濃度に拘わらず正確な異常検出を可能とし、検出精度を向上できる気筒間空燃比ばらつき異常検出装置を提供することにある。本発明の一の態様によれば、アルコール燃料を使用可能な多気筒内燃機関の気筒間空燃比ばらつき異常検出装置であって、前記内燃機関の排気通路に設けられた空燃比センサと、前記空燃比センサの出力変動度合いに相関する出力変動パラメータを検出する検出手段と、前記検出手段により検出された出力変動パラメータに基づき、少なくとも正常または異常の判定を実行する判定手段と、前記検出手段による出力変動パラメータの検出時に、空燃比を所定の基準空燃比よりもリーンに制御する空燃比制御手段と、を備えることを特徴とする気筒間空燃比ばらつき異常検出装置が提供される。好ましくは、前記空燃比制御手段は、空燃比を、前記基準空燃比よりもリッチまたはリーンな第1空燃比に制御し、前記検出手段は、この第1空燃比への制御中に出力変動パラメータの検出を行い、前記判定手段は、当該出力変動パラメータの検出値に基づき、正常、異常または保留の判定を実行し、前記判定手段が保留の判定を実行したとき、前記空燃比制御手段は、空燃比を、前記基準空燃比および前記第1空燃比よりリーンな第2空燃比に制御し、前記検出手段は、この第2空燃比への制御中に出力変動パラメータの検出を行い、前記判定手段は、当該出力変動パラメータの検出値に基づき、正常または異常の判定を実行する。好ましくは、前記気筒間空燃比ばらつき異常検出装置は、前記空燃比センサが使用初期状態にあるか否かを判定する判定手段をさらに備え、前記空燃比制御手段は、前記判定手段により前記空燃比センサが使用初期状態にあると判定されたとき、空燃比を前記第1空燃比に制御する。好ましくは、前記基準空燃比に対する前記第1空燃比のずれ量が、前記基準空燃比に対する前記第2空燃比のずれ量よりも少ない。好ましくは、前記空燃比制御手段は、空燃比センサの下流側に設けられた触媒と、前記触媒の下流側に設けられた別の空燃比センサと、前記別の空燃比センサが前記基準空燃比よりもリーンな空燃比を検出しているとき、前記空燃比制御手段が空燃比を前記基準空燃比よりもリーンに制御することを禁止する禁止手段と、をさらに備える。好ましくは、前記基準空燃比がストイキである。本発明によれば、使用燃料のアルコール濃度に拘わらず正確な異常検出を可能とし、検出精度を向上できるという、優れた効果が発揮される。以下、本発明の実施形態を添付図面に基づき説明する。図1は、本実施形態に係る内燃機関の概略図である。図示されるように、内燃機関エンジン1は、シリンダブロック2に形成された燃焼室3の内部で燃料および空気の混合気を燃焼させ、燃焼室3内でピストンを往復移動させることにより動力を発生する。本実施形態の内燃機関1は自動車に搭載された多気筒内燃機関であり、より具体的には直列4気筒火花点火式内燃機関である。内燃機関1は1~4気筒を備える。但し気筒数、形式等は特に限定されない。特に本実施形態の内燃機関1は、燃料として、アルコール燃料とガソリン燃料とをそれぞれ単独でまたは混合して使用可能なFFV用エンジンとして構成されている。燃料のアルコール濃度は0ガソリンのみ~100アルコールのみの範囲内でユーザが任意に設定可能である。以下、特に言及しない限り、基準燃料であるガソリンのみが使用燃料であるとして説明を進める。図示しないが、内燃機関1のシリンダヘッドには吸気ポートを開閉する吸気弁と、排気ポートを開閉する排気弁とが気筒ごとに配設されており、各吸気弁および各排気弁はカムシャフトによって開閉させられる。シリンダヘッドの頂部には、燃焼室3内の混合気に点火するための点火プラグ7が気筒ごとに取り付けられている。各気筒の吸気ポートは気筒毎の枝管4を介して吸気集合室であるサージタンク8に接続されている。サージタンク8の上流側には吸気管13が接続されており、吸気管13の上流端にはエアクリーナ9が設けられている。そして吸気管13には、上流側から順に、吸入空気量を検出するためのエアフローメータ5と、電子制御式のスロットルバルブ10とが組み込まれている。吸気ポート、枝管、サージタンク8及び吸気管13により吸気通路が形成される。吸気通路、特に吸気ポート内に燃料を噴射するインジェクタ燃料噴射弁12が気筒ごとに配設されている。インジェクタ12から噴射された燃料は吸入空気と混合されて混合気をなし、この混合気が吸気弁の開弁時に燃焼室3に吸入され、ピストンで圧縮され、点火プラグ7で点火燃焼させられる。一方、各気筒の排気ポートは排気マニフォールド14に接続される。排気マニフォールド14は、その上流部をなす気筒毎の枝管14aと、その下流部をなす排気集合部14bとからなる。排気集合部14bの下流側には排気管6が接続されている。排気ポート、排気マニフォールド14及び排気管6により排気通路が形成される。排気管6の上流側と下流側にはそれぞれ三元触媒からなる触媒、すなわち上流触媒11と下流触媒19が直列に取り付けられている。これら触媒11,19は酸素吸蔵能O2ストレージ能を有する。すなわち、触媒11,19は、排気ガスの空燃比がストイキ理論空燃比、例えばA/F=14.6より大きいリーンなときに排気ガス中の過剰酸素を吸蔵し、NOxを還元する。また触媒11,19は、排気ガスの空燃比がストイキより小さいリッチなときに吸蔵酸素を放出し、排気ガス中のHC,COを酸化する。上流触媒11の上流側及び下流側にそれぞれ排気ガスの空燃比を検出するための第1及び第2の空燃比センサ、即ち触媒前センサ17及び触媒後センサ18が設置されている。これら触媒前センサ17及び触媒後センサ18は、上流触媒11の直前及び直後の位置に設置され、排気中の酸素濃度に基づいて空燃比を検出する。このように上流触媒11の上流側の排気合流部に単一の触媒前センサ17が設置されている。上流触媒11が本発明にいう触媒に該当し、触媒前センサ17が本発明にいう空燃比センサに該当し、触媒後センサ18が本発明にいう別の空燃比センサに該当する。上述の点火プラグ7、スロットルバルブ10及びインジェクタ12等は、制御手段としての電子制御ユニット以下ECUと称す20に電気的に接続されている。ECU20は、何れも図示されないCPU、ROM、RAM、入出力ポート、および記憶装置等を含むものである。またECU20には、図示されるように、前述のエアフローメータ5、触媒前センサ17、触媒後センサ18のほか、内燃機関1のクランク角を検出するクランク角センサ16、アクセル開度を検出するアクセル開度センサ15、その他の各種センサが図示されないA/D変換器等を介して電気的に接続されている。ECU20は、各種センサの検出値等に基づいて、所望の出力が得られるように、点火プラグ7、スロットルバルブ10、インジェクタ12等を制御し、点火時期、燃料噴射量、燃料噴射時期、スロットル開度等を制御する。スロットルバルブ10にはスロットル開度センサ図示せずが設けられ、スロットル開度センサからの信号がECU20に送られる。ECU20は、通常、アクセル開度に応じて定まる目標スロットル開度に、スロットルバルブ10の開度スロットル開度をフィードバック制御する。ECU20は、エアフローメータ5からの信号に基づき、単位時間当たりの吸入空気の量すなわち吸入空気量を検出する。そしてECU20は、検出したアクセル開度、スロットル開度および吸入空気量の少なくとも一つに基づき、エンジン1の負荷を検出する。ECU20は、クランク角センサ16からのクランクパルス信号に基づき、クランク角自体を検出すると共にエンジン1の回転数を検出する。ここで回転数とは単位時間当たりの回転数のことをいい、回転速度と同義である。本実施形態では1分間当たりの回転数rpmのことをいう。触媒前センサ17は所謂広域空燃比センサからなり、比較的広範囲に亘る空燃比を連続的に検出可能である。図2に触媒前センサ17の出力特性を示す。図示するように、触媒前センサ17は、排気空燃比に比例した大きさの電圧信号Vfを出力する。排気空燃比がストイキであるときの出力電圧はVreff例えば約3.3Vである。他方、触媒後センサ18は所謂O2センサからなり、ストイキを境に出力値が急変する特性を持つ。図2に触媒後センサ18の出力特性を示す。図示するように、排気空燃比がストイキであるときの出力電圧、すなわちストイキ相当値はVrefr例えば0.45Vである。触媒後センサ18の出力電圧は所定の範囲例えば0~1V内で変化する。排気空燃比がストイキよりリーンのとき、触媒後センサの出力電圧はストイキ相当値Vrefrより低くなり、排気空燃比がストイキよりリッチのとき、触媒後センサの出力電圧はストイキ相当値Vrefrより高くなる。上流触媒11及び下流触媒19は、それぞれに流入する排気ガスの空燃比A/Fがストイキ近傍のときに排気中の有害成分であるNOx,HCおよびCOを同時に浄化する。この三者を同時に高効率で浄化できる空燃比の幅ウィンドウは比較的狭い。そこで通常運転時、上流触媒11に流入する排気ガスの空燃比がストイキ近傍に制御されるように、空燃比フィードバック制御がECU20により実行される。この空燃比フィードバック制御は、触媒前センサ17によって検出された排気空燃比を所定の目標空燃比であるストイキに一致させるような主空燃比制御主空燃比フィードバック制御と、触媒後センサ18によって検出された排気空燃比をストイキに一致させるような補助空燃比制御補助空燃比フィードバック制御とからなる。なお、このように目標空燃比をストイキとする空燃比フィードバック制御をストイキ制御という。ストイキは基準空燃比をなす。これに対し、目標空燃比をストイキ以外とする空燃比フィードバック制御も存在する。これについては後述する。さて、例えば全気筒のうちの一部の気筒特に1気筒のインジェクタ12が故障し、気筒間に空燃比のばらつきインバランス:imbalanceが発生したとする。例えば1気筒が他の2、3及び4気筒よりも燃料噴射量が多くなり、その空燃比が大きくリッチ側にずれる場合等である。このときでも前述の主空燃比フィードバック制御により比較的大きな補正量を与えれば、触媒前センサ17に供給されるトータルガスの空燃比をストイキに制御できる場合がある。しかし、気筒別に見ると、1気筒がストイキより大きくリッチ、2、3及び4気筒がストイキより若干リーンであり、全体のバランスとしてストイキとなっているに過ぎず、エミッション上好ましくないことは明らかである。そこで本実施形態では、かかる気筒間空燃比ばらつき異常を検出する装置が装備されている。[ばらつき異常検出の第1の態様]以下、ばらつき異常検出の第1の態様を説明する。図3に示すように、気筒間空燃比ばらつきが発生すると、1エンジンサイクル間=720°CAでの排気空燃比の変動が大きくなる。Bの空燃比線図a,b,cはそれぞればらつき無し、1気筒のみ20のインバランス割合でリッチずれ、及び1気筒のみ50のインバランス割合でリッチずれの場合の、触媒前センサ17による検出空燃比A/Fを示す。見られるように、ばらつき度合いが大きくなるほど空燃比変動の振幅が大きくなる。ここでインバランス割合とは、気筒間空燃比のばらつき度合いに相関する一つのパラメータである。即ち、インバランス割合とは、全気筒のうちある1気筒のみが燃料噴射量ズレを起こしている場合に、その燃料噴射量ズレを起こしている気筒インバランス気筒の燃料噴射量がどれくらいの割合で、燃料噴射量ズレを起こしていない気筒バランス気筒の燃料噴射量即ち基準噴射量からズレているかを示す値である。インバランス割合をIB、インバランス気筒の燃料噴射量をQib、バランス気筒の燃料噴射量即ち基準噴射量をQsとすると、IB=Qib-Qs/Qsで表される。インバランス割合IBが大きいほど、インバランス気筒のバランス気筒に対する燃料噴射量ズレが大きく、空燃比ばらつき度合いは大きい。図3から理解されるように、インバランス割合が大きいほど、すなわち気筒間空燃比のばらつき度合いが大きいほど、触媒前センサ17の出力変動が大きくなる。よってこの特性を利用し、本実施形態では、触媒前センサ17の出力変動度合いに相関する出力変動パラメータXを、気筒間空燃比ばらつき度合いに相関するパラメータとして用い、且つ出力変動パラメータXを検出する。そしてこの検出された出力変動パラメータに基づき、ばらつき異常を検出する。なお、前述のインバランス割合は説明目的のために用いる。以下に出力変動パラメータの検出方法を説明する。図4は図3のU部に相当する拡大図であり、特に1エンジンサイクル内の触媒前センサ出力の変動を簡略的に示す。触媒前センサ出力としては、触媒前センサ17の出力電圧Vfを空燃比A/Fに換算した値を用いる。但し触媒前センサ17の出力電圧Vfを直接用いることも可能である。図4Bに示すように、ECU20は、1エンジンサイクル内において、所定のサンプル周期τ単位時間、例えば4ms毎に、触媒前センサ出力A/Fの値を取得する。そして今回のタイミング第2のタイミングで取得した値A/Fnと、前回のタイミング第1のタイミングで取得した値A/Fn1との差ΔA/Fnの絶対値を次式1により求める。この差ΔA/Fnは今回のタイミングにおける微分値あるいは傾きと言い換えることができる。最も単純には、この差ΔA/Fnが触媒前センサ出力の変動を表す。変動度合いが大きくなるほど空燃比線図の傾きが大きくなり、差ΔA/Fnが大きくなるからである。そこで所定の1タイミングにおける差ΔA/Fnの値を出力変動パラメータとすることができる。但し、本実施形態では精度向上のため、複数の差ΔA/Fnの平均値を出力変動パラメータとする。本実施形態では、1エンジンサイクルの間、各タイミング毎に差ΔA/Fnを積算し、最終積算値をサンプル数Nで除し、1エンジンサイクル内の差ΔA/Fnの平均値を求める。そしてさらに、Mエンジンサイクル分例えばM=100だけ差ΔA/Fnの平均値を積算し、最終積算値をサイクル数Mで除し、Mエンジンサイクル内の差ΔA/Fnの平均値を求める。こうして求められた最終的な平均値を出力変動パラメータXとする。触媒前センサ出力の変動度合いが大きくなるほど出力変動パラメータXは大きくなる。なお、触媒前センサ出力A/Fは増加する場合と減少する場合とがあるので、これら各場合の一方についてだけ上記差ΔA/Fnあるいはその平均値を求め、これを出力変動パラメータとしても良い。特に1気筒のみリッチずれの場合、当該1気筒に対応した排気ガスを触媒前センサが受けた時にその出力が急速にリッチ側に変化すなわち急減するので、減少側のみの値をリッチずれ検出のために用いることも可能である。もっとも、これに限定されず、増加側の値のみを用いることも可能である。また、触媒前センサ出力の変動度合いに相関する如何なる値をも出力変動パラメータとすることができる。例えば、1エンジンサイクル内における触媒前センサ出力の最大ピークと最小ピークの差所謂ピークトゥピークpeaktopeak、または2階微分値の最大ピークまたは最小ピークの絶対値に基づいて、出力変動パラメータを算出することもできる。触媒前センサ出力の変動度合いが大きいほど、触媒前センサ出力の最大ピークと最小ピークの差は大きくなり、また2階微分値の最大ピークまたは最小ピークの絶対値も大きくなるからである。図5には、インバランス割合IBと出力変動パラメータXの関係を示す。図示されるように、インバランス割合IBと出力変動パラメータXの間には強い相関関係があり、インバランス割合IBの絶対値が増加するほど空燃比変動パラメータXも増加する。検出された出力変動パラメータXと、所定の判定値との比較結果に応じて、ばらつき異常の有無が判定される。例えば、検出された出力変動パラメータXが判定値以上であればばらつき異常あり異常、検出された出力変動パラメータXが判定値より小さければばらつき異常なし正常と判定される。ところで、使用燃料にアルコールが含まれていると、使用燃料がガソリンのみの場合と比べて、触媒前センサ出力変動が変化し、出力変動パラメータXの値が異なることが判明した。すなわち、使用燃料にアルコールが含まれていると、使用燃料がガソリンのみの場合と比べて、燃料の気化特性や燃焼速度が異なり、排気中の水素H2濃度が増加する。水素は分子サイズが小さいため、触媒前センサの拡散層を選択的に通過可能である。従って排気中の水素濃度が増加するとセンサの反応が速くなる。この影響で、触媒前センサ出力変動が増大し、出力変動パラメータXの値が増大する。よって、このアルコール分の影響を解消若しくは抑制するため、本実施形態では、出力変動パラメータXの検出時に、空燃比をストイキよりもリーンに制御する。具体的には、空燃比フィードバック制御における目標空燃比をストイキよりも若干リーンな所定空燃比に設定し、この状態で空燃比フィードバック制御を実行する。所定空燃比は、ストイキに対し数程度リーン側の空燃比である。例えばストイキ=14.6に対し5リーン側の空燃比に設定することができ、この場合所定空燃比は15.3である。この所定空燃比を目標空燃比とする空燃比フィードバック制御をリーン制御という。また所定空燃比をリーン目標空燃比という。図6には、使用燃料のアルコール濃度と出力変動パラメータXの関係を示す。なおここでいうアルコール濃度とはエタノール濃度のことである。図中の各データないしプロットについて、黒菱形は、ばらつき異常なし正常且つストイキ制御を実行した場合である。白菱形はばらつき異常なし正常且つリーン制御を実行した場合である。黒四角はばらつき異常あり異常、且つストイキ制御を実行した場合とリーン制御を実行した場合である。ばらつき異常ありの場合、ストイキ制御時とリーン制御時とで同等のデータが取得されている。ここではばらつき異常ありの場合として、1気筒のみに40のインバランス割合のリッチずれが生じている場合を示す。まず、使用燃料がガソリンのみアルコール濃度=0であり、ストイキ制御実行時であるときの正常時のデータaと異常時のデータbに着目する。これらデータに鑑み、正常と異常を区別するための判定値を、例えばX=0.025と等しく設定することができる。しかし、ストイキ制御実行時の場合、アルコール濃度の増大につれ、正常時と異常時の出力変動パラメータXの値が増大する傾向にある。すると、例えばデータcを見れば容易に分かるように、アルコール濃度が大きいとき、正常時の出力変動パラメータXの値が判定値を上回り、本来正常なのに誤って異常と誤判定してしまうことがある。これに対し、リーン制御実行時だと、アルコール濃度の増大につれ、異常時の出力変動パラメータXの値は相変わらず増大傾向にあるが、正常時の出力変動パラメータXの値はほぼ変わらなくなる。よって、例えばデータc’を見れば容易に分かるように、アルコール濃度が大きいときでも、正常時の出力変動パラメータXの値が判定値を上回ることがなく、上記の誤判定を防止することができる。これから理解されるように、リーン制御を実行すると、使用燃料のアルコール濃度の増加に対して、水素発生量の増加を抑制し、正常時の出力変動パラメータXの増加を抑制することができる。よって、正常と異常を正確に区別することができ、使用燃料のアルコール濃度に拘わらず正確な異常検出を可能とし、検出精度を向上できる。また、使用燃料のアルコール濃度をアルコール濃度センサで検出若しくは推定する必要がない。検出若しくは推定アルコール濃度に基づく出力変動パラメータX若しくは判定値の補正の必要もない。よってシンプル、低廉な手法にて検出精度を向上できる。ところで、リーン制御を実行すると、ストイキ制御時に比べ排ガス中のNOxが増大する。そして上流触媒11がNOxを十分処理できない状態にあるときにリーン制御を実行すると、上流触媒11からNOxが排出されることが懸念される。そこで本実施形態では、上流触媒11がNOxを十分処理できる状態にある場合に限ってリーン制御を許可し、上流触媒11がNOxを十分処理できる状態にない場合には、リーン制御を禁止する。具体的には、触媒後センサ18が、ストイキまたはこれよりリッチな空燃比を検出している場合に限って、リーン制御を許可し、触媒後センサ18が、ストイキよりリーンな空燃比を検出している場合には、リーン制御を禁止する。前者の場合には、上流触媒11における吸蔵酸素が比較的少量または皆無であることが想定され、この場合にリーン制御を実行し、NOxが増大しても、上流触媒11はそのNOxを十分処理できると考えられる。従ってこの場合にはリーン制御を許可する。逆に、後者の場合には、上流触媒11における吸蔵酸素が比較的多量または満杯であることが想定され、この場合にリーン制御を実行し、NOxが増大すると、上流触媒11はそのNOxを十分処理できない可能性がある。従ってこの場合にはリーン制御を禁止する。以下、図7を用いて、第1の態様のばらつき異常検出ルーチンを説明する。このルーチンはECU20により所定の演算周期τ毎に繰り返し実行される。まずステップS101では、異常検出を行うのに適した所定の前提条件が成立しているか否かが判断される。この前提条件は、例えば次の各条件が成立したときに成立する。1エンジンの暖機が終了している。ECU20は、図示しない水温センサで検出された水温が所定値例えば75°C以上であるとき暖機終了と判断する。2触媒前センサ17および触媒後センサ18が活性化している。ECU20は、両センサのインピーダンスがそれぞれ所定の活性温度相当の値になっているとき、両センサが活性化していると判断する。3上流触媒11および下流触媒19が活性化している。ECU20は、別途推定した上流触媒11および下流触媒19の温度がそれぞれ所定の活性温度相当の値になっているとき、両触媒が活性化していると判断する。4エンジンが定常運転中である。5エアフローメータ5により検出された吸入空気量Gaが所定値例えば20g/s以上である。6ストイキ制御中である。7触媒後センサ18がストイキまたはこれよりリッチな空燃比を検出している。特にこの条件を含めることにより、前述したように、リーン制御時のNOxを上流触媒11で浄化し、エミッション悪化を抑制できる。前提条件が成立していない場合にはルーチンが終了される。他方、前提条件が成立している場合には、ステップS102においてリーン制御が実行される。このとき、空燃比フィードバック制御における目標空燃比が、ストイキ14.6から、これよりも若干リーンなリーン目標空燃比例えば15.3に変更され、この状態で空燃比フィードバック制御が実行される。次いでステップS103において、今回のタイミングにおける触媒前センサ出力A/Fnが取得される。なお触媒前センサ出力A/Fnは触媒前センサ17の出力電圧Vfを空燃比に換算した値である。次に、ステップS104において、今回のタイミングにおける出力差ΔA/Fnが前式1より算出される。次に、ステップS105において、出力差ΔA/Fnが積算され、すなわち今回のタイミングにおける積算出力差ΣΔA/Fnが次式2より算出される。次に、ステップS106において、1エンジンサイクルが終了したか否かが判断される。終了してなければルーチンが終了され、終了した場合にはステップS107に進む。ステップS107では、今回の1エンジンサイクル終了時点における最終的な積算出力差ΣΔA/FNがサンプル数Nで除して平均化され、平均出力差Rmが算出される。そしてステップS108において、平均出力差Rmが積算され、すなわち今回のエンジンサイクル終了時における積算平均出力差ΣRmが次式3より算出される。次に、ステップS109において、Mエンジンサイクル但しMは2以上の整数で、例えば100が終了したか否かが判断される。終了してなければルーチンが終了され、終了した場合にはステップS110に進む。ステップS110では、Mエンジンサイクル終了時点における最終的な積算平均出力差ΣRMがサイクル数Mで除して平均化され、出力変動パラメータXが算出される。この算出された出力変動パラメータXが最終的な検出値としての出力変動パラメータXとされる。次いで、ステップS111において、出力変動パラメータXが所定の正異常判定値αと比較される。正異常判定値αは例えば、図6の試験結果に従い0.025とされる。出力変動パラメータXが正異常判定値α以上である場合、ステップS112に進んでばらつき異常有り、すなわち異常と判定され、ルーチンが終了される。なお異常判定と同時に、異常の事実をユーザに知らせるべくチェックランプ等の警告装置を起動するのが好ましい。他方、出力変動パラメータXが正異常判定値α未満である場合、ステップS113に進んでばらつき異常無し、すなわち正常と判定され、ルーチンが終了される。[ばらつき異常検出の第2の態様]次に、ばらつき異常検出の第2の態様を説明する。なお前述の第1の態様と同様の部分については説明を省略し、以下相違点を中心に述べる。触媒前センサ17をなす空燃比センサの中には、基準空燃比としてのストイキ付近において応答性が低下するものがある。図8はこれを示し、aは応答性が低下していないセンサ通常センサというの場合、bは応答性が低下したセンサ応答性低下センサというの場合である。図示例は、触媒前センサ17に対する入力空燃比を15.4から14.4に切り替えた場合の各センサの出力を示す。図中円内に示すように、応答性低下センサbの場合、通常センサaに比べ、ストイキ付近を通過するときの応答性が低下しており、またストイキ付近を通過する前後よりも出力変化速度が一時的に遅くなる所謂息継ぎ現象が発生している。このような息継ぎ現象は特に使用初期状態慣らし中ともいうのセンサに見られる。すなわち慣らし中だと、空燃比センサの電極反応と触媒反応がストイキ付近で低下し、このためにストイキ付近の応答性が低下するものと考えられる。一方、センサの慣らしが終了し、センサが使用初期状態でなくなるこの状態を慣らし後ともいうと、息継ぎ現象が解消し、通常センサaの如くストイキ付近の応答性低下が解消する。この応答性低下を考慮せず、ストイキ制御中に出力変動パラメータXを検出してしまうと、通常センサ時と比べて出力変動パラメータXの検出値が変化し、検出精度の低下や誤判定が生じる虞がある。そこで本態様では、この対策として、出力変動パラメータXの検出時に、ストイキよりもリッチまたはリーンな第1空燃比に空燃比を制御する。具体的には、空燃比フィードバック制御における目標空燃比をストイキよりも若干リッチまたはリーンな所定の第1空燃比に設定し、この状態で空燃比フィードバック制御を実行する。第1空燃比は、ストイキに対し数程度リッチまたはリーン側の空燃比である。例えばストイキ=14.6に対し3リッチまたはリーン側の空燃比に設定することができ、この場合、第1空燃比は14.2または15.0である。この第1空燃比を目標空燃比とする空燃比フィードバック制御をずらし制御という。ずらし制御を行うと、息継ぎ現象が発生するストイキ付近の空燃比領域をできるだけ避けて出力変動パラメータXを検出することができる。よってセンサ応答性低下の影響を抑制し、検出精度の低下や誤判定の可能性を低減することができる。ここで、息継ぎ現象は使用初期状態の空燃比センサに特有の現象である。よって空燃比センサが使用初期状態にあるか否かを予め判定し、使用初期状態にあると判定した場合に限ってずらし制御を実行するのが好ましい。空燃比センサの使用初期状態については次の通りである。エンジンが車両に搭載されている場合、空燃比センサの性能保証期間は例えば車両走行距離で150000mile240000kmとされる。一方、息継ぎ現象が無くなるには、使用温度条件等によっても変わるが例えば最大で1000kmの走行が必要である。よって息継ぎ現象が無くなるまでの使用初期状態とは、例えば空燃比センサの性能保証期間の最初の約04の期間をいう。次に、空燃比センサとしての触媒前センサ17が使用初期状態にあるか否かを判定する際の判定方法を説明する。この判定は、触媒前センサ17の慣らし度合いに相関するパラメータに基づいて行うのが好適である。第1の判定方法は、エンジンが車両に搭載されている場合に、上述の通り、車両の走行距離に基づいて判定を行う方法である。車両の走行距離が長くなるほど、触媒前センサ17の新品時からの慣らし度合いが大きくなる。よって車両の走行距離は、触媒前センサ17の慣らし度合いに相関するパラメータであるといえる。車両の走行距離を当該パラメータとすることにより、単純な方法で、触媒前センサ17が使用初期状態にあるか否かを好適に判定することができる。車両の走行距離は、例えば車両に搭載された走行距離計により検出可能である。例えば、走行距離計により検出された走行距離が所定距離例えば1000km未満であれば、触媒前センサ17を使用初期状態と判定し、当該走行距離が所定距離以上であれば触媒前センサ17を使用初期状態でないと判定する。第2の判定方法は、触媒前センサ17の温度に応じて変化する温度パラメータの積算値に基づいて判定を行う方法である。温度パラメータについては、触媒前センサ17の温度自体のほか、触媒前センサ17のセンサ素子のアドミタンスY1/Ωを好適に用いることができる。センサ素子の温度が高くなるほど、センサ素子のインピーダンスZΩは低下し、インピーダンスZの逆数であるアドミタンスYは高くなる傾向にある。そこで、センサ素子のアドミタンスYに応じたカウント値Cを、新品センサの使用開始時から所定時間毎に積算し、当該積算値が所定値以上に達した時以降、触媒前センサ17が使用初期状態でなくなったと判定する。逆に、当該積算値が所定値以上に達する前は、触媒前センサ17が使用初期状態であると判定する。カウント値Cは、図9に示すような、アドミタンスYとカウント値Cとの関係を予め定めたマップから求められる。ECU20は、新品センサの使用開始時から、所定時間例えば1s毎に、アドミタンスYを検出し、アドミタンスYに対応したカウント値Cをマップから求め、求めたカウント値Cを積算すなわちSRAMのカウンタをカウントアップする。図9に示すように、アドミタンスYが大きくなるほどカウント値Cも大きくなる。これは、センサ素子温度が高くなるほど大きなカウント値Cが得られることを意味する。こうしてECU20は、センサの新品時から所定時間毎にカウント値Cを積算し、その積算値ΣCが所定値A以上に達した時に、触媒前センサ17が使用初期状態でなくなった、すなわち使用初期状態終了慣らし終了と判定する。この第2の判定方法ではカウント値Cが温度パラメータをなす。かかる温度パラメータの積算値に基づいて判定を行うことにより、センサの温度履歴を反映させつつ使用初期状態終了を判定することができる。例えば高温条件下で多くセンサが使用されたならば早期に使用初期状態終了と判定でき、逆に低温条件下で多くセンサが使用されたならば遅い時期に使用初期状態終了と判定でき、実状に即した判定が可能である。従って触媒前センサ17が使用初期状態にあるか否かを、実際の使用状況に即して的確に判定することができる。ところで、アルコール燃料を使用可能な本実施形態のエンジンにおいては、上述のずらし制御を実行しても、使用燃料のアルコール濃度の変化により出力変動パラメータXが変化するため、第1の態様と同様に誤判定する虞がある。そこでこの第2の態様では、まずずらし制御を実行し、その最中に1回目の出力変動パラメータXの検出を行い、1回目の出力変動パラメータXの検出値に基づき、正常、異常または保留の判定すなわち第1判定を実行する。そして第1判定において保留と判定されたとき、前述のリーン制御を行い、このリーン制御中に2回目の出力変動パラメータの検出を行い、2回目の出力変動パラメータの検出値に基づき、正常または異常の判定すなわち第2判定を実行する。ずらし制御の目標空燃比は、ストイキ14.6に対しリッチまたはリーンな第1空燃比であり、例えば3程度ずれた14.2または15.0である。これに対し、リーン制御の目標空燃比は、ストイキに対しリーンのリーン目標空燃比であり、例えば5程度ずれた15.3である。このリーン目標空燃比を第2空燃比ともいう。ずらし制御の目標空燃比は、リーン制御の目標空燃比よりも、ストイキに対し少量しかずれていない。言い換えれば、ずらし制御のリッチ化またはリーン化度合いは、リーン制御のリーン化度合いよりも少ない。よってずらし制御の方がリーン制御よりもエミッションおよびドライバビリティへの悪影響が少ない。上記によれば、ずらし制御の実行中に1回目の出力変動パラメータXを検出し、正常または異常が明らかな場合には、1回目の出力変動パラメータXの検出値に基づき正常または異常を判定する。そしてこの判定が困難な場合には保留の判定を行う。その後空燃比フィードバック制御をリーン制御に変更して2回目の出力変動パラメータXを検出する。この2回目の出力変動パラメータXの検出値に基づき正常または異常を判定する。まず、エミッション等への悪影響が相対的に小さいずらし制御を実行して出力変動パラメータXを検出し、正常または異常が明らかな場合にはその旨判定するので、エミッション等への悪影響が相対的に大きいリーン制御を実行しないで済み、ばらつき異常検出に伴うエミッションおよびドライバビリティの悪化を抑制できる。またばらつき異常検出に要する時間も短縮できる。また、正常または異常の判定が困難な場合のみ、リーン制御を実行して出力変動パラメータXを検出し、正常または異常を判定するので、エミッションおよびドライバビリティの悪化を最小限に抑制できると共に、アルコール濃度の影響を考慮した微妙な判定が可能となり、誤判定を防止できる。なお、ずらし制御の目標空燃比がストイキよりリーンな15.0、リーン制御の目標空燃比が15.3である場合、ずらし制御からリーン制御に制御変更すると目標空燃比は0.3だけリーン化される。またずらし制御の目標空燃比がストイキよりリッチな14.2、リーン制御の目標空燃比が15.3である場合、ずらし制御からリーン制御に制御変更すると目標空燃比は1.1だけリーン化される。以下、図10を用いて、第2の態様のばらつき異常検出ルーチンを説明する。このルーチンはECU20により所定の演算周期τ毎に繰り返し実行される。まずステップS201では、前記ステップS101と同様、所定の前提条件が成立しているか否かが判断される。前提条件が成立していない場合にはルーチンが終了される。他方、前提条件が成立している場合には、ステップS251において、後述の保留判定ステップS257が既にあったか否かが判断される。保留判定ありの場合には、ステップS202に進んで、前記ステップS102と同様にリーン制御が実行され、ステップS203に進む。他方、保留判定なしの場合には、ステップS252に進んで、触媒前センサ17が使用初期状態にあるか否かが、前述の第1および第2の判定方法のいずれかに従って判断される。使用初期状態にある、すなわち触媒前センサ17が慣らし中であると判断されたときには、ステップS253に進んでずらし制御が実行され、ステップS203に進む。他方、使用初期状態にない、すなわち触媒前センサ17が慣らし後であると判断されたときには、ステップS254に進んでストイキ制御が実行され、ステップS203に進む。ステップS203~S210は前記ステップS103~S110と同様である。ステップS210に続くステップS255では、出力変動パラメータXが、明らかに異常と判定できるような異常判定値α1と比較される。異常判定値α1は例えば、図6の試験結果に従い0.03とされる。出力変動パラメータXが異常判定値α1以上である場合、ステップS212に進んでばらつき異常有り、すなわち異常の判定がなされ、ルーチンが終了される。他方、出力変動パラメータXが異常判定値α1未満である場合、ステップS256に進んで、出力変動パラメータXが、明らかに正常と判定できるような正常判定値α2と比較される。正常判定値α2は例えば、図6の試験結果に従い0.02とされる。出力変動パラメータXが正常判定値α2未満である場合、ステップS213に進んでばらつき異常無し、すなわち正常の判定がなされ、ルーチンが終了される。他方、出力変動パラメータXが正常判定値α2以上である場合、ステップS257に進んで保留の判定がなされ、ステップS258において保留時処理が行われた後、ルーチンが終了される。ここで保留時処理とは具体的には、保留判定の基礎となった各検出値および記憶値出力変動パラメータX等をクリアする処理である。このルーチンによれば、まず1回目の検出時には保留判定がなされていないので、ステップS251の判断結果がノーとなり、ステップS252で触媒前センサ17が使用初期状態にあるか否かが判断される。使用初期状態にある場合、ステップS253でずらし制御が実行される。他方、触媒前センサ17が慣らし終了後で使用初期状態にない場合には、ステップS254でストイキ制御が実行される。このように上記ルーチンによれば、1回目の検出時にストイキ制御を実行できるので、1回目の検出時にずらし制御を実行する場合よりもエミッションおよびドライバビリティの悪化を抑制できる。こうしてずらし制御またはストイキ制御が実行されている最中に、1回目の出力変動パラメータXが検出される。そしてこの検出値に基づき保留判定がなされた場合、次の前提条件成立後ステップS201に2回目の検出が実行される。2回目の検出時には既に保留判定がなされているので、ステップS251の判断結果がイエスとなり、ステップS202で、よりリーン化度合いの大きいリーン制御が実行される。そして2回目の出力変動パラメータXの検出値に基づき、異常または正常判定ステップS212またはS213がなされる。なお、このルーチンでは2回目の検出時に保留判定ステップS257がなされる可能性もある。これを防止するためには、2回目の検出時に、第1の態様と同様、2回目の出力変動パラメータXの検出値を正異常判定値αと比較すればよい。以上、本発明の好適な実施形態を詳細に述べたが、本発明の実施形態は他にも様々なものが考えられる。上記の数値はあくまで例示であり、適宜変更が可能である。本発明の実施形態は前述の実施形態のみに限らず、特許請求の範囲によって規定される本発明の思想に包含されるあらゆる変形例や応用例、均等物が本発明に含まれる。従って本発明は、限定的に解釈されるべきではなく、本発明の思想の範囲内に帰属する他の任意の技術にも適用することが可能である。"