"複数気筒を有する内燃機関の排気通路において空燃比を検出する空燃比検出手段を備える内燃機関の空燃比制御装置において、前記機関の回転速度に対応する周波数の1/2の周波数である0.5次周波数とは異なる設定周波数で前記空燃比を振動させるための振動信号を生成する振動信号生成手段と、前記前記振動信号の振幅を可変設定する振幅設定手段と、前記振動信号に応じて前記空燃比を振動させる空燃比振動手段と、前記空燃比検出手段の出力信号に含まれる前記0.5次周波数成分の強度を算出する0.5次周波数成分強度算出手段と、前記空燃比振動手段の作動中に、前記空燃比検出手段の出力信号に含まれる前記設定周波数成分の強度を算出する設定周波数成分強度算出手段と、前記設定周波数成分強度に対する前記0.5次周波数成分強度の比率に前記振動信号の振幅を乗算することにより、前記複数気筒のそれぞれに対応する空燃比のインバランス度合を判定するための判定パラメータを算出する判定パラメータ算出手段と、前記判定パラメータを用いて、前記空燃比のインバランス度合が許容限度を超えているインバランス故障を判定するインバランス故障判定手段とを備えることを特徴とする内燃機関の空燃比制御装置。前記インバランス度合の予測値である予測インバランス値を算出する予測インバランス値算出手段を備え、前記振幅設定手段は、前記予測インバランス値が大きいほど前記振動信号の振幅をより大きな値に設定することを特徴とする請求項1に記載の内燃機関の空燃比制御装置。前記予測インバランス値算出手段は、前記設定周波数成分強度に対する前記0.5次周波数成分強度の比率に前記振動信号の振幅を乗算した値が大きいほど、前記予測インバランス値が大きくなるように前記予測インバランス値の算出を行うことを特徴とする請求項1または2に記載の内燃機関の空燃比制御装置。前記排気通路には排気浄化触媒が設けられ、前記空燃比検出手段は前記排気浄化触媒の上流側に配置される上流側空燃比検出手段であり、前記排気浄化触媒の下流側には下流側空燃比検出手段が設けられており、前記下流側空燃比検出手段の検出値が下流側目標値と一致するように、制御偏差を示すパラメータの積分制御項を用いて目標空燃比を設定する第1フィードバック制御手段と、前記上流側空燃比検出手段による検出空燃比が前記目標空燃比と一致するように前記機関で燃焼する混合気の空燃比を制御する第2フィードバック制御手段とを備え、前記予測インバランス値算出手段は、前記積分制御項が大きいほど前記予測インバランス値が大きくなるように前記予測インバランス値の算出を行うことを特徴とする請求項1または2に記載の内燃機関の空燃比制御装置。特許文献1に示された装置では、空燃比振動制御における空燃比の振動振幅は一定値に固定されるため、実際の空燃比のインバランス度合によって、判定精度が低下するという課題がある。空燃比のインバランスは、例えば気筒毎に設けられる燃料噴射弁の何れかの故障によって発生する。したがって、例えばインバランス度合は、1つ燃料噴射弁の燃料噴射量の、正常値からのずれ率で表すことができる。図13aはこの課題を説明するための図であり、図の横軸は判定回数NDETに対応し、縦軸は比率パラメータRTに対応する。データ群DG1は空燃比ばらつきが全く無い状態に対応し、データ群DG2は1気筒の燃料噴射量が10ずれた低インバランス状態に対応し、データ群DG3は1気筒の燃料噴射量が40ずれた高インバランス状態に対応する。データ群DG1及びDG2では、比率パラメータRTのばらつき幅は比較的狭いのに対し、データ群DG3ではばらつき幅が非常に大きくなっている。したがって、この図に示す例では、高インバランス状態での比率パラメータRTの精度が低下し、誤判定が発生する可能性が高くなる。なお、図13aに示すデータ群DG1及びDG2は、黒く塗りつぶされたように示されているが、これは得られたデータが集中していることを示している。本発明はこの点に着目してなされたものであり、空燃比振動制御における空燃比の振動振幅を適切に設定し、空燃比のインバランス度合にかかわらず正確なインバランス故障判定を行うことができる空燃比制御装置を提供することを目的とする。上記目的を達成するため請求項1に記載の発明は、複数気筒を有する内燃機関の排気通路において空燃比を検出する空燃比検出手段15を備える内燃機関の空燃比制御装置において、前記機関の回転速度NEに対応する周波数の1/2の周波数である0.5次周波数fIMBとは異なる設定周波数f1で前記空燃比を振動させるための振動信号を生成する振動信号生成手段と、前記振動信号の振幅DAFを可変設定する振幅設定手段と、前記振動信号に応じて前記空燃比を振動させる空燃比振動手段と、前記空燃比検出手段の出力信号SLAFに含まれる前記0.5次周波数成分の強度MIMBを算出する0.5次周波数成分強度算出手段と、前記空燃比振動手段の作動中に、前記空燃比検出手段の出力信号に含まれる前記設定周波数成分の強度MPTf1を算出する設定周波数成分強度算出手段と、前記設定周波数成分強度MPTf1に対する前記0.5次周波数成分強度MIMBの比率RTに前記振動信号の振幅DAFを乗算することにより、前記複数気筒のそれぞれに対応する空燃比のインバランス度合を判定するための判定パラメータRSRCを算出する判定パラメータ算出手段と、前記判定パラメータRSRCを用いて、前記空燃比のインバランス度合が許容限度を超えているインバランス故障を判定するインバランス故障判定手段とを備えることを特徴とする。請求項2に記載の発明は、請求項1に記載の内燃機関の空燃比制御装置において、前記インバランス度合の予測値である予測インバランス値RSRC,UADPを算出する予測インバランス値算出手段を備え、前記振幅設定手段は、前記予測インバランス値RSRC,UADPが大きいほど前記振動信号の振幅DAFをより大きな値に設定することを特徴とする。請求項3に記載の発明は、請求項1または2に記載の内燃機関の空燃比制御装置において、前記予測インバランス値算出手段は、前記設定周波数成分強度MPTf1に対する前記0.5次周波数成分強度MIMBの比率RTに前記振動信号の振幅DAFを乗算した値が大きいほど、前記予測インバランス値RSRCが大きくなるように前記予測インバランス値の算出を行うことを特徴とする。請求項4に記載の発明は、請求項1または2に記載の内燃機関の空燃比制御装置において、前記排気通路には排気浄化触媒14が設けられ、前記空燃比検出手段15は前記排気浄化触媒の上流側に配置される上流側空燃比検出手段であり、前記排気浄化触媒14の下流側には下流側空燃比検出手段16が設けられており、前記下流側空燃比検出手段の検出値VO2が下流側目標値VO2TRGTと一致するように、制御偏差を示すパラメータσの積分制御項UADPを用いて目標空燃比KCMDを設定する第1フィードバック制御手段と、前記上流側空燃比検出手段15による検出空燃比KACTが前記目標空燃比KCMDと一致するように前記機関で燃焼する混合気の空燃比を制御する第2フィードバック制御手段とを備え、前記予測インバランス値算出手段は、前記積分制御項UADPが大きいほど前記予測インバランス値UADPが大きくなるように前記予測インバランス値の算出を行うことを特徴とする。請求項1に記載の発明によれば、0.5次周波数とは異なる設定周波数で空燃比を振動させるための振動信号を用いて空燃比振動制御が実行され、空燃比振動制御実行中に、空燃比検出手段の出力信号に含まれる設定周波数成分の強度が算出されるとともに、空燃比検出手段の出力信号に含まれる0.5次周波数成分の強度が算出される。そして、設定周波数成分強度に対する0.5次周波数成分強度の比率に振動信号の振幅を乗算することにより、複数気筒のそれぞれに対応する空燃比のインバランス度合を判定するための判定パラメータが算出され、その判定パラメータを用いて、空燃比のインバランス度合が許容限度を超えているインバランス故障が判定される。振動信号の振幅の可変設定することにより、空燃比のインバランス度合にかかわらず判定パラメータのばらつきを減少させることが可能となり、さらに設定周波数成分強度に対する0.5次周波数成分強度の比率に振動信号の振幅を乗算することにより、設定周波数成分強度に含まれる振幅の大きさに依存する成分が相殺され、判定精度を高めることができる。請求項2に記載の発明によれば、インバランス度合の予測値である予測インバランス値が算出され、予測インバランス値が大きいほど振動信号の振幅がより大きな値に設定される。インバランス度合が大きいほど振幅を大きな値に設定することにより、算出される判定パラメータのばらつき幅が減少し、判定精度が高くなることが確認されており、インバランス度合にかかわらず正確にインバランス故障判定を行うことができる。請求項3に記載の発明によれば、設定周波数成分強度に対する0.5次周波数成分強度の比率に振動信号の振幅を乗算した値が大きいほど、予測インバランス値が大きくなるように算出される。すなわち、予測インバランス値は判定パラメータの演算処理と同一若しくは類似の演算処理で算出されるので、故障判定処理が複雑化することを防止できる。請求項4に記載の発明によれば、下流側空燃比検出手段の検出値が下流側目標値と一致するように、制御偏差を示すパラメータの積分制御項を用いて目標空燃比が設定されるとともに、上流側空燃比検出手段による検出空燃比が目標空燃比と一致するように燃焼混合気の空燃比が制御され、積分制御項が大きいほど予測インバランス値が大きくなるように算出される。空燃比のインバランス度合が大きくなるほど積分制御項が増加することが確認されているので、積分制御項が大きいほど予測インバランス値が大きくなるように算出することにより、インバランス度合の正確な予測値が得られる。また、判定パラメータの算出手法とは異なる手法で予測インバランス値が算出されるので、外乱や部品交換などの影響で判定パラメータの誤差が一時的に増加するような場合でも、振動信号振幅の設定を適切に行い、判定精度の低下を抑制できる。以下本発明の実施の形態を図面を参照して説明する。[第1の実施形態]図1は、本発明の一実施形態にかかる内燃機関以下エンジンという及びその空燃比制御装置の全体構成図であり、例えば4気筒のエンジン1の吸気管2の途中にはスロットル弁3が配されている。スロットル弁3にはスロットル弁開度THを検出するスロットル弁開度センサ4が連結されており、その検出信号は電子制御ユニット以下ECUという5に供給される。燃料噴射弁6はエンジン1とスロットル弁3との間かつ吸気管2の図示しない吸気弁の少し上流側に各気筒毎に設けられており、各噴射弁は図示しない燃料ポンプに接続されていると共にECU5に電気的に接続されて当該ECU5からの信号により燃料噴射弁6の開弁時間が制御される。スロットル弁3の上流側には吸入空気流量GAIRを検出する吸入空気流量センサ7が設けられている。またスロットル弁3の下流側には吸気圧PBAを検出する吸気圧センサ8、及び吸気温TAを検出する吸気温センサ9が設けられている。これらのセンサの検出信号は、ECU5に供給される。エンジン1の本体には、エンジン冷却水温TWを検出する冷却水温センサ10が装着されており、その検出信号はECU5に供給される。ECU5には、エンジン1のクランク軸図示せずの回転角度を検出するクランク角度位置センサ11が接続されており、クランク軸の回転角度に応じた信号がECU5に供給される。クランク角度位置センサ11は、エンジン1の特定の気筒の所定クランク角度位置でパルス以下CYLパルスというを出力する気筒判別センサ、各気筒の吸入行程開始時の上死点TDCに関し所定クランク角度前のクランク角度位置で4気筒エンジンではクランク角180度毎にTDCパルスを出力するTDCセンサ及びTDCパルスより短い一定クランク角周期例えば6度周期で1パルス以下CRKパルスというを発生するCRKセンサから成り、CYLパルス、TDCパルス及びCRKパルスがECU5に供給される。これらのパルスは、燃料噴射時期、点火時期等の各種タイミング制御、エンジン回転数エンジン回転速度NEの検出に使用される。排気通路13には三元触媒14が設けられている。三元触媒14は、酸素蓄積能力を有し、エンジン1に供給される混合気の空燃比が理論空燃比よりリーン側に設定され、排気中の酸素濃度が比較的高い排気リーン状態では、排気中の酸素を蓄積し、逆にエンジン1に供給される混合気の空燃比が理論空燃比よりリッチ側に設定され、排気中の酸素濃度が低く、HC、CO成分が多い排気リッチ状態では、蓄積した酸素により排気中のHC,COを酸化する機能を有する。三元触媒14の上流側であって各気筒に連通する排気マニホールドの集合部より下流側には、比例型酸素濃度センサ15以下LAFセンサ15というが装着されており、このLAFセンサ15は排気中の酸素濃度空燃比にほぼ比例した検出信号を出力し、ECU5に供給する。ECU5には、エンジン1により駆動される車両のアクセルペダルの踏み込み量以下アクセルペダル操作量というAPを検出するアクセルセンサ21及び当該車両の走行速度車速VPを検出する車速センサ22が接続されており、それらセンサの検出信号がECU5に供給される。スロットル弁3は図示しないアクチュエータにより開閉駆動され、スロットル弁開度THはアクセルペダル操作量APに応じてECU5により制御される。なお、図示は省略しているが、エンジン1には周知の排気還流機構が設けられている。ECU5は、各種センサからの入力信号波形を整形し、電圧レベルを所定レベルに修正し、アナログ信号値をデジタル信号値に変換する等の機能を有する入力回路、中央演算処理ユニット以下CPUという、該CPUで実行される各種演算プログラム及び演算結果等を記憶する記憶回路、燃料噴射弁6に駆動信号を供給する出力回路を備えている。ECU5のCPUは、上述の各種センサの検出信号に基づいて、種々のエンジン運転状態を判別するとともに、該判別されたエンジン運転状態に応じて、次式1を用いて、TDCパルスに同期して開弁作動する燃料噴射弁6の燃料噴射時間TOUTを演算する。燃料噴射時間TOUTは、噴射される燃料量にほぼ比例するので、以下燃料噴射量TOUTという。TOUT=TIM×KCMD×KAF×KTOTAL1ここに、TIMは基本燃料量、具体的には燃料噴射弁6の基本燃料噴射時間であり、吸入空気流量GAIRに応じて設定されたTIMテーブルを検索して決定される。TIMテーブルは、エンジンにおいて燃焼する混合気の空燃比AFがほぼ理論空燃比になるように設定されている。KCMDはエンジン1の運転状態に応じて設定される目標空燃比係数である。目標空燃比係数KCMDは、空燃比A/Fの逆数、すなわち燃空比F/Aに比例し、理論空燃比のとき値1.0をとるので、以下目標当量比という。後述するように、空燃比のインバランス故障判定を行うときは、1.0±DAFの範囲で時間経過に伴って正弦波状に変化するように設定される。KAFは、空燃比フィードバック制御の実行条件が成立するときは、LAFセンサ15の検出値から算出される検出当量比KACTが目標当量比KCMDに一致するようにPID比例積分微分制御あるいは適応制御器SelfTuningRegulatorを用いた適応制御により算出される空燃比補正係数である。KTOTALは夫々各種エンジンパラメータ信号に応じて演算される他の補正係数エンジン冷却水温TMに応じた補正係数KTW、吸気温TAに応じた補正係数KTAなどの積である。ECU5のCPUは上述のようにして求めた燃料噴射量TOUTに基づいて燃料噴射弁6を開弁させる駆動信号を出力回路を介して燃料噴射弁6に供給する。また、ECU5のCPUは、以下に説明するように空燃比のインバランス故障判定を行う。本実施形態におけるインバランス故障判定手法は、特許文献1に示される手法をより改良したものであり、エンジン運転中に空燃比を周波数f1で振動させる空燃比振動制御を実行し、その制御実行中におけるLAFセンサ15の出力信号SLAFに含まれる0.5次周波数成分強度MIMBを、周波数f1成分強度MPTf1で除算することにより得られる比率パラメータRTを用いて、インバランス故障が判定される。0.5次周波数成分強度MIMBは、エンジン回転数NE[rpm]に対応するエンジン回転周波数fNE=NE/60の1/2に相当する0.5次周波数fIMBに対応する成分の強度である。図2は、インバランス故障判定のための空燃比振動制御を実行する処理のフローチャートである。この処理は所定クランク角度CACAL例えば30度毎にECU5のCPUで実行される。ステップS1では、判定実行条件フラグFMCNDが1であるか否かを判別する。判定実行条件フラグFMCNDは、例えば下記の条件1~11がすべて満たされると1に設定される。1エンジン回転数NEが所定上下限値の範囲内にある。2吸気圧PBAが所定圧より高い判定に必要な排気流量が確保されている。3LAFセンサ15が活性化している。4LAFセンサ15の出力に応じた空燃比フィードバック制御が実行されている。5エンジン冷却水温TWが所定温度より高い。6エンジン回転数NEの単位時間当たりの変化量DNEが所定回転数変化量より小さい。7吸気圧PBAの単位時間当たりの変化量DPBAFが所定吸気圧変化量より小さい。8燃料の加速増量急加速時に実行されるが行われていない。9排気還流率が所定値より大きい。10LAFセンサ出力が上限値または下限値に張り付いた状態ではない。11LAFセンサの応答特性が正常である応答特性の劣化故障が発生しているとの判定が行われていない。ステップS1の答が否定NOであるときは、空燃比振動制御フラグFPTを0に設定しステップS5、処理を終了する。FMCND=1であるときは、目標当量比KCMDを下記式2を用いて算出し、空燃比を正弦波状に振動させるとともに、空燃比補正係数KAFを所定値KAF0例えば1.0に固定する。式2のKf1は、例えば0.4に設定される振動周波数係数であり、kは本処理の実行周期CACALで離散化した離散化時刻である。またDAFは、振動制御の振幅であり、後述するように予測される空燃比のインバランス度合に応じて設定される。KCMD=DAF×sinKf1×CACAL×k12ステップS3では、空燃比振動制御の開始時点から所定安定化時間TSTBLが経過したか否かを判別する。その答が否定NOであるときは前記ステップS5に進む。ステップS3の答が肯定YESとなると、空燃比振動制御フラグFPTを1に設定する。図3は、インバランス故障判定処理のフローチャートである。この処理は、図2の処理と同様に所定クランク角度CACAL毎にECU5のCPUで実行される。ステップS11では、空燃比振動制御フラグFPTが1であるか否かを判別し、その答が否定NOであるときは直ちに処理を終了する。ステップS11の答が肯定YESであるときは、検出当量比KACTを取得し、メモリに格納する処理を行うステップS12。メモリには、0.5次周波数成分強度MIMB及び周波数f1成分強度MPTf1の算出に必要な数の過去値が格納される。ステップS13では、0.5次周波数成分を抽出するバンドパスフィルタ処理を実行し、抽出された信号の振幅を積算することにより、0.5次周波数成分強度MIMBを算出する。ステップS14では、周波数f1成分を抽出するバンドパスフィルタ処理を実行し、抽出された信号の振幅を積算することにより、周波数f1成分強度MPTf1を算出する。ステップS15では、周波数成分強度の算出開始時点から所定積算時間TINTが経過したか否かを判別し、その答が否定NOである間は直ちに処理を終了する。ステップS15の答が肯定YESとなると、下記式3により比率パラメータRTを算出するステップS16。RT=MIMB/MPTf13ステップS17では、比率パラメータRT及び振動制御振幅DAFを下記式4に適用し、判定パラメータRSRCを算出する。判定パラメータRSRCは、本実施形態ではインバランス度合の予測値である予測インバランス値としても使用される。RSRC=DAF×RT4ステップS18では、判定パラメータRSRCが判定閾値RSRCTHより大きいか否かを判別し、その答が肯定YESであるときは、インバランス故障が発生していると判定するステップS19。一方、ステップS18の答が否定NOであるときは、空燃比のインバランス度合は許容限度内にある正常と判定するステップS20。ステップS21では、判定パラメータRSRCに応じて図4に示すDAFテーブルを検索し、次回の空燃比振動制御に適用する振動制御振幅DAFを算出する。DAFテーブルは、判定パラメータRSRCが大きくなるほど振動制御振幅DAFが大きくなるように設定されている。振動制御振幅DAFの初期値は、例えばインバランス度合が低い状態に対応する所定値に設定され、以後はステップS21で更新される振幅DAFが適用される。図13bは、振動制御振幅DAFを高インバランス状態に対応させて、図13aに示す例より大きな値に設定したときの、比率パラメータRTの分布を示す。この図から明らかなように、データ群DG3aはデータ群DG3よりばらつきが減少する一方、データ群DG2aは逆にデータ群DG2よりばらつきが増加する。したがって、予測されるインバランス度合に応じて振動制御振幅DAFを設定することにより、比率パラメータRTの精度を高めて、空燃比のインバランス度合にかかわらず正確なインバランス故障判定を行うことができる。以上のように本実施形態では、0.5次周波数fIMBとは異なる周波数f1で空燃比を振動させるための振動信号を用いて空燃比振動制御が実行され、空燃比振動制御実行中に、LAFセンサ出力信号SLAFに含まれる0.5次周波数成分の強度MIMBと、周波数f1成分の強度MPTf1とが算出され、0.5次周波数成分強度MIMB及び周波数f1成分強度MPTf1に応じて判定パラメータRSRCが算出され、この判定パラメータRSRCを用いてインバランス故障が判定される。さらに判定パラメータRSRCが空燃比のインバランス度合の予測値として使用され、振動制御振幅DAFが判定パラメータRSRCに応じて設定される。すなわち、予測されるインバランス度合が大きくなるほど振動制御振幅DAFが増加するように設定されるので、実際のインバランス度合に適した振幅DAFで空燃比振動制御を行うことができ、空燃比のインバランス度合にかかわらず正確な判定を行うことが可能となる。また比率パラメータRTに振動制御振幅DAFを乗算することにより、判定パラメータRSRCが算出されるので、周波数f1成分強度MPTf1に含まれる振動制御振幅DAFに依存する成分が相殺され、判定精度を高めることができる。すなわち、予測されるインバランス度合に応じて振動制御振幅DAFを大きくしても、判定パラメータRSRCがそのことに起因して増加することがないので、実際のインバランス度合を正確に判定することができる。また本実施形態では、判定パラメータRSRCを予測インバランス値として使用するようにしたので、故障判定における演算処理の複雑化を防止できる。本実施形態では、LAFセンサ15が空燃比検出手段に相当し、燃料噴射弁6が空燃比振動手段の一部を構成し、ECU5が、振動信号生成手段、空燃比振動手段の一部、0.5次周波数成分強度算出手段、設定周波数成分強度算出手段、判定パラメータ算出手段、インバランス故障判定手段、予測インバランス値算出手段、及び振幅設定手段を構成する。具体的には、図2のステップS2が振動信号生成手段に相当し、図3のステップS13が0.5次周波数成分強度算出手段に相当し、ステップS14が設定周波数成分強度算出手段に相当し、ステップS16及びS17が判定パラメータ算出手段に相当し、ステップS18~S20がインバランス故障判定手段に相当し、ステップS17が予測インバランス値算出手段に相当し、ステップS21が振幅設定手段に相当する。[変形例1]図3に示す処理は、図5に示すように変形してもよい。図5の処理は、図3のステップS17~S21を削除し、ステップS31~S36を追加したものである。ステップS31では、比率パラメータRTが比率閾値RTTHより大きいか否かを判別し、その答が肯定YESであるときは、インバランス故障が発生していると判定するステップS35。一方、ステップS31の答が否定NOであるときは、前記式5により予測インバランス値判定パラメータRSRCを算出しステップS32、予測インバランス値RSRCに応じて図6に示すDAFテーブルを検索して、次回の振動制御振幅DAFを算出するステップS33。ステップS34では、算出した振動制御振幅DAFが振幅閾値DAFTHより大きいか否かを判別する。その答が肯定YESであるときは、インバランス故障が発生していると判定する。ステップS34の答が否定NOであるときは、空燃比のインバランス度合は許容限度内にある正常と判定するステップS36。本変形例では、先行技術と同様に比率パラメータRTが主たる判定用のパラメータとして使用され、比率閾値RTTHは、インバランス度合が低いにもかかわらず故障と誤判定されないように比較的大きい値に設定される。比率パラメータRTが比率閾値RTTH以下であるときは、上述した実施形態と同様の手法で次回の振動制御振幅DAFが算出され、その振動制御振幅DAFが振幅閾値DAFTHより大きいときは、インバランス故障が発生していると判定される。したがって、上述した実施形態と同程度の判定精度を確保することができる。本変形例では、図5のステップS16が判定パラメータ算出手段に相当し、ステップS32が予測インバランス値算出手段に相当し、ステップS33が振幅設定手段に相当し、ステップS31及びS35がインバランス故障判定手段に相当する。[変形例2]上述した実施形態では、今回の振動制御振幅DAFと比率パラメータRTを式4に適用して判定パラメータRSRCを算出し、判定パラメータRSRCを予測インバランス値として使用して次回の振動制御振幅DAFを算出するようにしたが、今回の振動制御振幅DAFと、比率パラメータRTとに応じて予め算出された次回の振動制御振幅DAFを、DAFマップとしてメモリに記憶しておき、今回の振動制御振幅DAFと、比率パラメータRTとに応じてDAFマップを検索することにより、次回の振動制御振幅DAFを算出するようにしてもよい。[第2の実施形態]図6は本発明の第2の実施形態にかかる内燃機関及びその空燃比制御装置の構成を示す図である。図6に示す空燃比制御装置は、図1に示す空燃比制御装置において、三元触媒14の下流側に二値型酸素濃度センサ以下O2センサという16を追加し、その検出信号をECU5に供給するようにしたものである。以下に説明する点以外は、第1の実施形態と同一である。O2センサ16は、空燃比AFが理論空燃比AFST近傍にあるとき、センサ出力VO2が急激に変化する特性を有し、O2センサ出力VO2は、空燃比AFが理論空燃比AFSTよりリッチ側にあるとき高レベルとなり、リーン側にあるとき低レベルとなる。本実施形態では、検出当量比KACTが目標当量比KCMDと一致するように空燃比補正係数KAFを算出するLAFフィードバック制御が実行されるとともに、O2センサ出力VO2が目標値VO2TRGTと一致するように目標当量比KCMDを設定するO2フィードバック制御が実行される。なお、このように2つフィードバック制御を並行して実行する空燃比制御方法はすでに周知であり例えば特開2001-241349号公報などに示されている、本実施形態における空燃比制御方法も同じものである。O2フィードバック制御は、スライディングモード制御を用いて行われる。以下、図7を参照して、O2フィードバック制御の概要を説明する。図7のステップS41では、下記式11にO2センサ出力VO2及び目標値VO2TRGTを適用して制御偏差DVO2を算出し、制御偏差DVO2を下記式12に適用して切換関数値σを算出する。下記式のiは、図7の処理の実行周期KCMDの算出周期で離散化した離散化時刻である。式12のVPOLEは制御偏差DVO2の減衰特性を決める応答特性指定パラメータであり、-1より大きく0より小さい値に設定される。DVO2=VO2-VO2TRGT11σ=DVO2VPOLE×DVO212ステップS42では、切換関数値σを用いてスライディングモード制御における等価制御入力UEQ、到達則制御入力URCH、及び適応則制御入力UADPを下記式13~15により算出する。これらの式におけるA1,A2,B,及びCは、制御対象モデルのモデルパラメータ及び応答特性指定パラメータVPOLEを用いて算出される制御係数であり、式13のdは、制御対象の離散化むだ時間でり、式15のDTはKCMDの算出周期である。UEQ=A1×DVO2A2×DVO213URCH=B×σ14UADP=C×Σσ×DT15ステップS43では、等価制御入力UEQ、到達則制御入力URCH、及び適応則制御入力UADPを下記式16に適用し、当量比偏差量DKCMDを算出する。DKCMD=UEQURCHUADP16ステップS44では、当量比偏差量DKCMDを下記式17に適用して、目標当量比KCMDを算出する。式17のKCMDREFは、1.0近傍の値をとる学習値である。KCMD=DKCMDKCMDREF17上記式15により算出される適応則制御入力UADPは、PID制御比例積分微分制御における積分項に相当し、制御偏差DVO2に応じた値をとる切換関数値σの積算値に比例する。空燃比のインバランス度合が大きくなると、図8に示すように適応則制御入力UADPが負の値をとり、時間経過とともに減少することが確認されている。これは空燃比のインバランスが発生している状態における検出当量比KACTLAFセンサ出力VLAFに応じて算出されるは、実際の平均的な当量比よりリッチ側の値を示すことに起因している。図9はLAFセンサ出力VLAFと空燃比AFとの関係を示す図であり、理論空燃比AFSTよりリッチ側とリーン側で直線の傾きが異なり、リッチ側の傾きがリーン側の傾きより大きい。LAFセンサ15は、図9に示すような特性を有しているため、空燃比のインバランスが発生している状態では、LAFセンサ出力VLAFは、実際の平均的な当量比よりリッチ側の値を示す。そのため、O2センサ出力VO2は定常的に目標値VO2TRGTより低くなるリーン方向にずれる傾向を示し、適応制御入力UADPはこの定常偏差を解消するように修正される。その結果、適応制御入力UADPは、図8に示すように時間経過とともに増加し、制御が定常状態に達した時点における適応則制御入力UADPは、インバランス度合が大きくなるほど大きくなる。本実施形態では、制御偏差DVO2は式11で算出されるため、インバランス度合が大きくなるほど切換関数値σは負の方向に減少する絶対値が増加する。したがって、式15の積算項Σσ×DTは負の方向に減少するが、式15の制御係数Cが負の値をとるので、適応制御入力UADPが増加する。その結果目標当量比KCMDが増加して、O2センサ出力VO2の定常偏差が解消される。そこで、本実施形態では、適応則制御入力UADPを予測インバランス値として使用し、適応則制御入力UADPに応じて振動制御振幅DAFを設定するようにしている。図10は本実施形態におけるインバランス故障判定処理のフローチャートである。この処理は、図2のステップS21をステップS21aに代えたものである。ステップS21aでは、適応則制御入力UADPに応じて図11に示すDAFテーブルを検索し、振動制御振幅DAFを算出する。なお、空燃比振動制御を実行するときは、目標当量比KCMDは前記式2により算出される。本実施形態によれば、O2センサ出力VO2が目標値VO2TRGTと一致するように、制御偏差に応じた切換関数値σの積分項に相当する適応則制御入力UADPを用いて目標当量比KCMDが設定されるとともに、検出当量比KACTが目標当量比KCMDと一致するように空燃比補正係数KAFが算出され、適応則制御入力UADPが予測インバランス値として使用される。空燃比のインバランス度合が大きくなるほど適応則制御入力UADPが増加することが確認されているので、適応則制御入力UADPを予測インバランス値として使用することができる。判定パラメータRSRCの算出手法とは異なる手法で予測インバランス値が算出されるので、外乱や部品交換などの影響で判定パラメータRSRCの誤差が一時的に増加するような場合でも、振動信号振幅DAFの設定を適切に行い、判定精度の低下を抑制することができる。本実施形態では、LAFセンサ15が上流側空燃比検出手段に相当し、O2センサ16が下流側空燃比検出手段に相当し、図7の処理が第1フィードバック制御手段に相当し、検出当量比KACTが目標当量比KCMDと一致するように空燃比補正係数KAFを算出する処理が第2フィードバック制御手段に相当し、図8のステップS42が予測インバランス値算出手段に相当し、図10のステップS21aが振幅設定手段に相当する。[変形例1]本実施形態では、図2の処理に代えて図12に示す処理により、空燃比振動制御を実行するようにしてもよい。図12の処理は、図2の処理にステップS1aを追加したものである。ステップS1aでは、適応則制御入力UADPに応じて図11のDAFテーブルを検索し、振幅DAFを算出する。その後ステップS2に進む。適応則制御入力UADPは、インバランス故障判定を実行しない通常制御中に算出されるので、インバランス故障判定の実行条件が成立したときに、適応則制御入力UADPに応じて振幅DAFを算出し、その振幅DAFを用いて空燃比振動制御を実行することにより、より適切な空燃比振動制御を行うことができる。この変形例では、図12のステップS1aが振幅設定手段に相当する。[変形例2]本実施形態においても、第1の実施形態の変形例1と同様の処理を適用するようにしてもよい。[変形例3]上述した実施形態では、図7に示すKCMD算出処理では、スライディングモード制御を用いて目標当量比KCMDを算出するようにしたが、PID比例積分微分制御を用いて目標当量比KCMDを算出するようにしてもよい。その場合には制御偏差DVO2の積算値に比例する積分項IDVO2制御偏差DVO2の積算値に乗算される制御ゲインが負の値に設定されるので、インバランス度合が増加すると積分項IDVO2が増加するを、予測インバランス値として使用することができる。また、適応則制御入力UADPまたは積分項IDVO2そのものを予測インバランス値として使用することに代えて、所定数倍することによりインバランス度合を示すパラメータに適した値となるようによう変換した値を予測インバランス値としてもよい。なお本発明は上述した実施形態に限るものではなく、種々の変形が可能である。例えば、上述した実施形態では、空燃比振動制御の周波数f1をエンジン回転周波数fNEの定数倍の値エンジン回転に同期した周波数に設定したが、例えば4Hz程度の固定周波数に設定するようにしてもよい。ただし、固定周波数とする場合には、インバランス故障判定の実行条件におけるエンジン回転数NEの範囲を比較的狭い範囲に限定することが望ましい。また周波数成分強度の算出処理は、インバランス故障判定処理とは別に最適の実行周期で実行するようにしてもよい。その場合には、インバランス故障判定処理では周波数成分強度算出を行わず、並行して実行される周波数成分強度算出処理で算出された周波数成分強度0.5次周波数成分強度MIMB,周波数f1成分強度MPTf1を読み込んで、判定処理を行う。また、空燃比振動制御が安定化した時点から所定サンプリング期間において、最適周期でLAFセンサ出力信号SLAFのサンプリングを行って、サンプリングデータをメモリに格納し、所定サンプリング期間終了後にサンプリングデータを一括処理することによって、各周波数成分強度を算出するようにしてもよい。その場合には、FFT高速フーリエ変換処理を用いることもできる。また上述した実施形態では、0.5次周波数成分強度MIMBの算出を、空燃比振動制御実行中に行うようにしたが、空燃比振動制御を行っていないときに算出するようにしてもよい。その場合には、空燃比振動制御を実行して周波数f1成分強度MPTf1を算出するエンジン運転領域を比較的狭い範囲に限定し、0.5次周波数成分強度MIMBの算出をその限定したエンジン運転領域において行うことが望ましい。また本発明は、クランク軸を鉛直方向とした船外機などのような船舶推進機用エンジンなどの空燃比制御装置にも適用が可能である。"