(57)【要約】【課題】  触媒劣化診断の精度を従来よりもいっそう向上させる。【解決手段】  エンジン制御装置（３）は、圧縮比を変更可能に構成されたエンジン（１）の運転を制御するものであって、ガスセンサ（３１８ｂ）と、圧縮比制御部及び触媒診断部（３００）と、を備えている。ガスセンサは、エンジンから排出される排気ガスを浄化するための触媒（２０５）よりも排気ガスの流動方向における下流側の排気通路（２０２）に介装されていて、触媒を通過した排気ガス中の特定成分の濃度に対応した出力を生じるようになっている。圧縮比制御部（３００）は、運転状態に応じてエンジンの圧縮比を制御するようになっている。触媒診断部（３００）は、ガスセンサの出力に基づいて触媒の劣化度を診断するようになっている。圧縮比制御部は、触媒診断部による触媒の劣化度の診断中に、圧縮比の変更を禁止するようになっている。【選択図】  図１
2009264151.tif 000002
【特許請求の範囲】
【請求項１】
圧縮比を変更可能に構成されたエンジンの運転を制御する、エンジン制御装置であって、
前記エンジンから排出される排気ガスを浄化するための触媒よりも前記排気ガスの流動方向における下流側の排気通路に介装されていて、前記触媒を通過した前記排気ガス中の特定成分の濃度に対応した出力を生じる、ガスセンサと、
運転状態に応じて前記エンジンの圧縮比を制御する、圧縮比制御部と、
前記ガスセンサの出力に基づいて前記触媒の劣化度を診断する、触媒診断部と、
を備え、
前記圧縮比制御部は、前記触媒診断部による前記劣化度の診断中に、圧縮比の変更を禁止することを特徴とする、エンジン制御装置。
【請求項２】
請求項１に記載のエンジン制御装置であって、
前記触媒診断部は、
前記ガスセンサの出力に基づいて前記触媒の最大酸素吸蔵量を取得する、最大酸素吸蔵量取得部を備え、
前記最大酸素吸蔵量取得部による前記最大酸素吸蔵量の取得値と、所定の基準値と、に基づいて、前記劣化度を診断することを特徴とする、エンジン制御装置。
【請求項３】
請求項１又は請求項２に記載のエンジン制御装置において、
前記触媒の使用期間を取得する、使用期間取得部をさらに備え、
前記圧縮比制御部は、前記使用期間が所定レベルより小さい場合に、前記劣化度の診断中における圧縮比の変更を許可することを特徴とする、エンジン制御装置。
【請求項４】
請求項１又は請求項２に記載のエンジン制御装置であって、
前記圧縮比制御部は、前記劣化度又はその変動が所定レベルより小さい場合に、前記劣化度の診断中における圧縮比の変更を許可することを特徴とする、エンジン制御装置。
【請求項５】
請求項１又は請求項２に記載のエンジン制御装置であって、
前記圧縮比制御部は、圧縮比の変更量が所定量より小さい場合に、前記劣化度の診断中における圧縮比の変更を許可することを特徴とする、エンジン制御装置。
【請求項６】
請求項１ないし請求項５のうちのいずれか１項に記載のエンジン制御装置において、
前記触媒の温度を取得する、温度取得部をさらに備えたことを特徴とする、エンジン制御装置。
【請求項７】
請求項６に記載のエンジン制御装置であって、
前記温度取得部は、圧縮比と、前記エンジンの吸入空気量に関連するパラメータと、に基づいて、前記温度を推定することを特徴とする、エンジン制御装置。
【請求項８】
請求項６又は請求項７に記載のエンジン制御装置であって、
前記圧縮比制御部は、前記温度に応じて、前記劣化度の診断中における圧縮比の変更を許可することを特徴とする、エンジン制御装置。
【請求項９】
請求項８に記載のエンジン制御装置であって、
前記圧縮比制御部は、前記温度が所定温度より高い場合に、前記劣化度の診断中に圧縮比を高くする変更を許可することを特徴とする、エンジン制御装置。
【請求項１０】
請求項９に記載のエンジン制御装置であって、
前記触媒診断部は、前記温度が所定範囲外である場合に、前記劣化度の診断を中断することを特徴とする、エンジン制御装置。
【請求項１１】
請求項８に記載のエンジン制御装置であって、
前記触媒診断部は、前記触媒の診断中における圧縮比の変更による前記温度の変動が、所定温度差よりも大きい場合に、前記劣化度の診断を中断することを特徴とする、エンジン制御装置。
【請求項１２】
請求項３ないし請求項１１のうちのいずれか１項に記載のエンジン制御装置であって、
前記触媒診断部は、圧縮比の変更量が所定の上限量よりも大きい場合に、前記劣化度の診断を中断することを特徴とする、エンジン制御装置。
【請求項１３】
請求項３ないし請求項１２のうちのいずれか１項に記載のエンジン制御装置であって、
前記触媒診断部は、前記劣化度の診断結果に基づいて前記触媒の異常判定を行う、異常判定部をさらに備え、
前記異常判定部は、今回の前記劣化度の診断中に圧縮比が変更された場合、前回の前記診断結果と今回との前記診断結果の差が所定レベルより小さいときに、今回の前記診断結果に基づいて前記異常判定を行うことを特徴とする、エンジン制御装置。
【請求項１４】
請求項１ないし請求項１３のうちのいずれか１項に記載のエンジン制御装置において、
前記ガスセンサの出力波形が安定しているか否かを判定する、センサ判定部をさらに備え、
前記触媒診断部は、前記出力波形が安定していないと判定された場合、前記劣化度の診断を中断することを特徴とする、エンジン制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、圧縮比を変更可能に構成されたエンジンの運転を制御する、エンジン制御装置に関する。
【背景技術】
【０００２】
この種のエンジンを搭載したシステム（例えば自動車等）においては、排気ガスを浄化するために、排気通路に触媒が介装されている。この触媒が、燃料中の有害成分（鉛や硫黄等）等により劣化すると、排気ガス浄化率が悪化し、排気エミッションが増大する。そこで、この劣化を判定するための装置が、従来種々提案されている（例えば特開平５−１３３２６４号公報等）。
【０００３】
この種の触媒として、いわゆる三元触媒が広く用いられている。この三元触媒は、酸素吸蔵機能あるいは酸素貯蔵機能と称される機能を有している。この機能は、（１）燃料混合気の空燃比がリーンである場合に、排気ガス中の窒素酸化物（ＮＯｘ）から酸素を奪うことでＮＯｘを還元して、この奪った酸素を内部に吸蔵（貯蔵）するとともに、（２）燃料混合気の空燃比がリッチである場合に、吸蔵されている酸素を排気ガス中の未燃成分（ＨＣ，ＣＯ等）の酸化のために放出する、という機能である。
【０００４】
したがって、三元触媒が吸蔵し得る酸素量（以下、「酸素吸蔵量」と称する。）の最大値（以下、「最大酸素吸蔵量」と称する。）が大きいほど、三元触媒の浄化能力は高くなる。換言すれば、三元触媒の劣化状態は、最大酸素吸蔵量によって判定され得る。
【０００５】
そこで、特開平５−１３３２６４号公報に開示された触媒劣化度検出装置は、以下のように構成されている。排気通路における三元触媒の上流側には、第１空燃比センサが配置されている。また、排気通路における三元触媒の下流側には、第２空燃比センサが配置されている。そして、かかる装置は、上述の三元触媒の劣化判定（最大酸素吸蔵量算出）を、以下のように行うようになっている。
【０００６】
まず、エンジンのシリンダ内に供給される燃料混合気の空燃比が、所定のリーン空燃比に所定時間設定される。これにより、吸蔵能力の限界まで、三元触媒に酸素が吸蔵される。その後、燃料混合気の空燃比が、所定のリッチ空燃比に強制的に変化させられる。すると、第２空燃比センサにより検出される空燃比は、一定時間Δｔだけ理論空燃比に維持された後に、リッチ側に変化する。このときの、理論空燃比とリッチ空燃比との差Δ（Ａ／Ｆ）と、Δｔと、吸入空気量と、に基づいて、最大酸素吸蔵量が求められる。
【特許文献１】特開平５−１３３２６４号公報
【特許文献２】特開２００５−６９１２９号公報
【特許文献３】特開２００７−８５３００号公報
【発明の開示】
【０００７】
ところで、従来、圧縮比を変更可能に構成されたエンジン（可変圧縮比エンジン）が知られている（例えば特開２００５−６９１２９号公報や特開２００７−８５３００号公報等参照）。この可変圧縮比エンジンにおいては、圧縮比が変更されると、排気温度が変化する。これにより、触媒温度も変化する。触媒温度が変化すると、当該触媒の性能もまた変化する。具体的には、三元触媒の温度が上昇すると、最大酸素吸蔵量が大きくなる。
【０００８】
したがって、触媒劣化診断中に、運転状態に応じて圧縮比が変更されると、触媒劣化診断の精度が悪くなる可能性がある。本発明は、かかる課題に対処するためになされたものである。すなわち、本発明の目的は、触媒劣化診断の精度を従来よりもいっそう向上させることにある。
【０００９】
＜構成＞
本発明のエンジン制御装置は、圧縮比を変更可能に構成されたエンジンの運転を制御するように構成されている。ここで、「圧縮比」には、以下に説明するように、「機械的圧縮比」と、「実圧縮比」とがある。本発明は、機械的圧縮比を変更可能な場合に限定されず、広く実圧縮比を変更可能な場合に適用され得る。
【００１０】
機械的圧縮比は、隙間容積（ピストン上死点における燃焼室容積）とピストン行程容積との和を隙間容積で割った値であって、公称圧縮比あるいは幾何学的圧縮比とも称される。この機械的圧縮比は、例えば、クランクシャフトが回転可能に支持されたクランクケースと、シリンダヘッドが上端部に固定されたシリンダブロックとを、シリンダの中心軸に沿って相対移動させることで変更され得る。あるいは、機械的圧縮比は、コンロッド（ピストンと前記クランクシャフトとを連結する部材）が屈曲可能に構成されている場合に、このコンロッドの屈曲状態を変更することで変更され得る。
【００１１】
実圧縮比は、吸入空気に対する実効的な圧縮比であり、典型的には、吸入空気の圧縮開始時の燃焼室容積を圧縮終了時の燃焼室容積で割った値となる。この実圧縮比は、当然、上述のような機械的圧縮比の変更に伴って変更され得る。また、この実圧縮比は、機械的圧縮比の変更とともに、あるいは、機械的圧縮比の変更に代えて、吸気バルブや排気バルブの動作タイミングを可変とすることによって変更され得る。
【００１２】
本発明の適用対象である前記エンジンには、排気通路が接続されている。この排気通路は、前記エンジンから排出される排気ガスの通路である。この排気通路には、触媒が介装されている。この触媒は、前記排気ガスを浄化するように構成されている。
【００１３】
本発明のエンジン制御装置は、ガスセンサと、圧縮比制御部と、触媒診断部と、を備えている。
【００１４】
前記ガスセンサは、前記触媒よりも前記排気ガスの流動方向における下流側の前記排気通路に設けられている。このガスセンサは、前記触媒を通過した前記排気ガス中の特定成分の濃度（例えば酸素濃度）に対応した出力を生じるように構成されている（このガスセンサは燃料混合気の空燃比に対応する出力を生じるために「空燃比センサ」とも称され得る）。
【００１５】
前記触媒診断部は、前記ガスセンサの出力に基づいて前記触媒の劣化度を診断するように構成されている。ここで、この触媒診断部は、例えば、以下のように構成され得る：この触媒診断部は、前記ガスセンサの出力に基づいて前記触媒の最大酸素吸蔵量を取得する最大酸素吸蔵量取得部を備えている。そして、この触媒診断部は、前記最大酸素吸蔵量取得部による前記最大酸素吸蔵量の取得値と、所定の基準値と、に基づいて、前記劣化度を診断するように構成されている。
【００１６】
また、本エンジン制御装置は、前記触媒の温度を取得する温度取得部をさらに備え得る。具体的には、この温度取得部は、圧縮比と、前記エンジンの吸入空気量に関連するパラメータと、に基づいて、前記温度を推定するように構成され得る。あるいは、この温度取得部は、前記触媒に装着された温度センサから構成され得る。
【００１７】
前記圧縮比制御部は、運転状態に応じて前記エンジンの圧縮比を制御するように構成されている。
【００１８】
※本発明の特徴は、前記圧縮比制御部が、前記触媒診断部による前記劣化度の診断中（少なくとも前記最大酸素吸蔵量取得部による前記最大酸素吸蔵量の取得中）に、圧縮比の変更を禁止するように構成されていることにある。
【００１９】
※本発明においては、以下のように、所定条件下で、前記劣化度の診断中における圧縮比の変更が許可されるように構成され得る（この場合、前記触媒診断部は、圧縮比の変更量が所定の上限量よりも大きい場合に、前記劣化度の診断を中断するように構成され得る。）。
【００２０】
・本エンジン制御装置は、前記触媒の使用期間（車両走行距離、燃焼サイクル数、機関運転時間、等）を取得する使用期間取得部をさらに備え得る。この場合、前記圧縮比制御部は、前記使用期間が所定レベルより小さい場合に、前記劣化度の診断中における圧縮比の変更を許可するように構成され得る。
【００２１】
・前記圧縮比制御部は、前記劣化度又はその変動が所定レベルより小さい場合に、前記劣化度の診断中における圧縮比の変更を許可するように構成され得る。
【００２２】
・前記圧縮比制御部は、圧縮比の変更量が所定量（前記劣化度の診断の中断条件である前記上限量とは一応区別される）より小さい場合に、前記劣化度の診断中における圧縮比の変更を許可するように構成され得る。
【００２３】
・前記圧縮比制御部は、前記触媒の前記温度に応じて、前記劣化度の診断中における圧縮比の変更を許可するように構成され得る。具体的には、例えば、前記圧縮比制御部は、前記温度が所定温度より高い場合に、前記触媒の保護のために、前記劣化度の診断中に圧縮比を高くする変更を許可するように構成され得る。
【００２４】
前記触媒診断部は、前記温度に応じて前記劣化度の診断を中断するように構成され得る。具体的には、例えば、前記触媒診断部は、前記温度が所定範囲外である場合に、前記劣化度の診断を中断するように構成され得る。あるいは、前記触媒診断部は、前記触媒の診断中における圧縮比の変更による前記温度の変動が、所定温度差よりも大きい（と推定される）場合に、前記劣化度の診断を中断するように構成され得る。
【００２５】
※前記触媒診断部は、前記劣化度の診断結果に基づいて前記触媒の異常判定を行う、異常判定部をさらに備え得る。この場合、前記異常判定部は、今回の前記劣化度の診断中に圧縮比が変更された場合、前回の前記診断結果と今回との前記診断結果の差が所定レベルより小さいときに、今回の前記診断結果に基づいて前記異常判定を行うように構成され得る。
【００２６】
※本エンジン制御装置は、前記ガスセンサの出力波形が安定しているか否かを判定するセンサ判定部をさらに備え得る。この場合、前記触媒診断部は、前記出力波形が安定していないと判定されたときに、前記劣化度の診断を中断するように構成され得る。
【００２７】
＜作用・効果＞
※本発明のエンジン制御装置においては、前記触媒診断部による前記触媒の前記劣化度の診断中には、圧縮比の変更が（原則的に）禁止される。これにより、圧縮比の変更に起因する、前記触媒の温度の変動が、良好に抑制され得る。したがって、触媒劣化診断の精度が従来よりもいっそう向上され得る。
【００２８】
※例えば、前記触媒が新品あるいはそれに近い状態である場合、当該触媒の温度変化に伴う性能変化の度合いは小さく、前記劣化度及び／又はその変動も比較的小さい。このような場合、前記触媒の前記劣化度の診断中に、運転状態に応じて圧縮比が変更されても、（圧縮比や触媒温度の変動が過大でない範囲であれば）前記劣化度の診断に関する特段の問題は生じない。
【００２９】
また、前記触媒の前記劣化度の診断中に、圧縮比を低くする要求がある場合（例えば前記エンジンを搭載する車両の加速時等）、かかる要求を許可して圧縮比を低下させても、これによって排気温度が上昇して前記触媒の性能が向上（前記最大酸素吸蔵量が増大）する。よって、この場合、前記触媒の前記劣化度の診断中に圧縮比を低下させても、（低下幅が過大でなければ）特段の問題は生じない。
【００３０】
このように、前記触媒の前記劣化度の診断中に、運転状態に応じて圧縮比が変更されても差し支えない場合があり得る。そこで、このような場合、前記触媒の前記劣化度の診断中であっても、圧縮比の変更禁止が解除（圧縮比の変更が許可）され得る。これにより、触媒劣化診断の精度を悪化させることなく、運転者要求を良好に満足させることが可能になる。
【００３１】
※前記触媒の前記劣化度の診断中に圧縮比が（比較的大幅に）変更されることで、前回の前記診断結果と今回との前記診断結果の差が大きくなり、今回の前記診断結果の信頼性が乏しくなる場合があり得る。
【００３２】
そこで、このような場合、今回の前記診断結果が、前記触媒の前記異常判定に反映されないようにされ得る。換言すれば、前記触媒の前記劣化度の診断中に圧縮比が変更されても、今回の前記診断結果の信頼性があると考えられるとき（前回の前記診断結果と今回との前記診断結果の差が所定レベルより小さいとき）には、今回の前記診断結果に基づいて前記異常判定が行われ得る。これにより、触媒劣化診断の精度が、良好に維持され得る。
【００３３】
※前記ガスセンサの出力に基づいて前記触媒の前記劣化度が診断されるため、当該ガスセンサの出力波形が安定していないと、前記劣化度の良好な診断は行われ難い。そこで、前記出力波形が安定していない場合、前記劣化度の診断が中断され得る。これにより、触媒劣化診断の精度が、良好に維持され得る。
【発明を実施するための最良の形態】
【００３４】
以下、本発明の実施形態（本願の出願時点において出願人が最良と考えている実施形態）について、図面を参照しつつ説明する。
【００３５】
なお、以下の実施形態に関する記載は、法令で要求されている明細書の記載要件（記述要件・実施可能要件）を満たすために、本発明の具体化の単なる一例を、可能な範囲で具体的に記述しているものにすぎない。よって、後述するように、本発明が、以下に説明する実施形態の具体的構成に何ら限定されるものではないことは、全く当然である。実施形態に対する変形例（modification）は、当該実施形態の説明中に挿入されると、首尾一貫した実施形態の説明の理解が妨げられるので、末尾にまとめて記載されている。
【００３６】
＜システムの全体構成＞
図１は、本発明の一実施形態が適用されたシステムＳ（車両等）の全体構成を示す概略構成図である。このシステムＳには、直列複数気筒のエンジン１が搭載されている（なお、図１には、気筒配列方向と直交する面によるエンジン１の側断面図が示されているものとする。）。
【００３７】
このエンジン１は、後述するように、機械的圧縮比と吸排気バルブタイミングとを変更することで、実圧縮比を変更可能に構成されている。このエンジン１には、吸排気通路２が接続されている。また、本実施形態のエンジン制御装置３は、エンジン１の運転を制御するように構成されている。
【００３８】
＜エンジン＞
エンジン１は、シリンダブロック１１と、シリンダヘッド１２と、クランクケース１３と、可変圧縮比機構１４と、を備えている。
【００３９】
シリンダブロック１１には、略円柱形状の貫通孔であるシリンダボア１１１が形成されている。シリンダボア１１１の内側には、ピストン１１２が、シリンダ中心軸（シリンダボア１１１の中心軸線）ＣＣＡに沿って往復移動可能に収容されている。
【００４０】
シリンダブロック１１の上端部（ピストン１１２の上死点側の、シリンダブロック１１の端部）には、シリンダヘッド１２が接合されている。シリンダヘッド１２は、シリンダブロック１１に対して相対移動しないように、シリンダブロック１１の前記上端部に対して、図示しないボルト等によって固定されている。
【００４１】
シリンダヘッド１２の下端部には、複数の凹部が、各シリンダボア１１１の上端部に対応する位置に設けられている。すなわち、シリンダヘッド１２がシリンダブロック１１に接合されて固定された状態における、ピストン１１２の頂面よりも上側（シリンダヘッド１２側）のシリンダボア１１１の内側の空間と、上述の凹部の内側（下側）の空間と、によって、燃焼室ＣＣが形成されている。この燃焼室ＣＣに連通するように、シリンダヘッド１２には、吸気ポート１２１及び排気ポート１２２が形成されている。
【００４２】
シリンダヘッド１２には、また、吸気バルブ１２３と、排気バルブ１２４と、可変吸気バルブタイミング装置１２５と、可変排気バルブタイミング装置１２６と、インジェクタ１２７と、が備えられている。
【００４３】
吸気バルブ１２３は、吸気ポート１２１と燃焼室ＣＣとの連通状態を制御するためのバルブである。排気バルブ１２４は、排気ポート１２２と燃焼室ＣＣとの連通状態を制御するためのバルブである。
【００４４】
可変吸気バルブタイミング装置１２５及び可変排気バルブタイミング装置１２６は、吸気バルブ１２３及び排気バルブ１２４の開閉タイミングを変更することで、実圧縮比を変更し得るように構成されている。かかる可変吸気バルブタイミング装置１２５及び可変排気バルブタイミング装置１２６の具体的な構成については周知なので、その説明を省略する。
【００４５】
インジェクタ１２７は、燃焼室ＣＣ内に供給するための燃料を、吸気ポート１２１内に噴射し得るように構成されている。
【００４６】
クランクケース１３内には、クランクシャフト１３１が回転可能に支持されている。クランクシャフト１３１は、気筒配列方向と平行に配置されている。このクランクシャフト１３１は、ピストン１１２のシリンダ中心軸ＣＣＡに沿った往復移動に基づいて回転駆動されるように、コンロッド１３２を介して、ピストン１１２と連結されている。
【００４７】
本実施形態の可変圧縮比機構１４は、シリンダブロック１１とシリンダヘッド１２との接合体を、クランクケース１３に対して、シリンダ中心軸ＣＣＡに沿って互いに相対移動させて、隙間容積を変更することで、機械的圧縮比を変更し得るように構成されている。
【００４８】
可変圧縮比機構１４は、特開２００３−２０６７７１号公報や特開２００７−８５３００号公報等に記載されているものと同様の構成を備えている。したがって、本明細書においては、この機構の詳細な説明は省略され、概要のみが説明されている。
【００４９】
可変圧縮比機構１４は、連結機構１４１と、駆動機構１４２と、を備えている。連結機構１４１は、シリンダブロック１１とクランクケース１３とを、シリンダ中心軸ＣＣＡに沿って互いに相対移動可能に連結するように構成されている。駆動機構１４２は、モータやギヤ機構等を備えていて、シリンダブロック１１とクランクケース１３とをシリンダ中心軸ＣＣＡに沿って（すなわち図中上下方向に沿って）互いに相対移動させ得るように構成されている。
【００５０】
＜吸排気通路＞
吸排気通路２は、インテークマニホールドやサージタンク等を含む吸気通路２０１と、エキゾーストマニホールドを含む排気通路２０２と、を含んでいて、吸気通路２０１は吸気ポート１２１と接続され、排気通路２０２は排気ポート１２２と接続されている。
【００５１】
吸気通路２０１には、スロットルバルブ２０３が介装されている。スロットルバルブ２０３は、ＤＣモータからなるスロットルバルブアクチュエータ２０４によって回転駆動されるように構成されている。
【００５２】
排気通路２０２は、排気ポート１２２を介して燃焼室ＣＣから排出される排気ガスの通路である。この排気通路２０２には、上流側触媒２０５及び下流側触媒２０６が介装されている。上流側触媒２０５及び下流側触媒２０６は、酸素吸蔵機能を有する三元触媒をその内部に備えていて、排気ガス中のＨＣ、ＣＯ、及びＮＯｘを浄化可能に構成されている。上流側触媒２０５は、下流側触媒２０６よりも、排気ガスの流動方向における上流側に設けられている。
【００５３】
＜エンジン制御装置＞
エンジン制御装置３は、本発明の触媒診断部、圧縮比制御部、最大酸素吸蔵量取得部、温度取得部、使用期間取得部、異常判定部、及びセンサ判定部を構成する、エンジン電子制御ユニット（以下、「ＥＣＵ３００」と称する。）３００を備えている。
【００５４】
ＥＣＵ３００は、ＣＰＵ３０１と、ＲＯＭ３０２と、ＲＡＭ３０３と、バックアップＲＡＭ３０４と、インターフェース３０５と、バス３０６と、を備えている。ＣＰＵ３０１、ＲＯＭ３０２、ＲＡＭ３０３、バックアップＲＡＭ３０４、及びインターフェース３０５は、バス３０６によって互いに接続されている。
【００５５】
ＲＯＭ３０２には、ＣＰＵ３０１が実行するルーチン（プログラム）、及びこのルーチン実行の際に参照されるテーブル（ルックアップテーブル、マップ）やパラメータ等、が予め格納されている。ＲＡＭ３０３は、ＣＰＵ３０１がルーチンを実行する際に、必要に応じてデータを一時的に格納し得るように構成されている。バックアップＲＡＭ３０４は、電源が投入された状態でＣＰＵ３０１がルーチンを実行する際にデータが格納されるとともに、この格納されたデータが電源遮断後も保持され得るように構成されている。
【００５６】
インターフェース３０５は、後述する各種のセンサと電気回路的に接続されていて、これらのセンサからの信号をＣＰＵ３０１に伝達し得るように構成されている。また、インターフェース３０５は、可変吸気バルブタイミング装置１２５、可変排気バルブタイミング装置１２６、インジェクタ１２７、駆動機構１４２、等の動作部と電気回路的に接続されていて、これらの動作部を動作させるための動作信号をＣＰＵ３０１からこれらの動作部に伝達し得るように構成されている。すなわち、エンジン制御装置３は、インターフェース３０５を介して上述の各種のセンサからの信号を受け取り、当該信号に応じたＣＰＵ３０１の演算結果に基づいて、上述の動作信号を各動作部に向けて送出するように構成されている。
【００５７】
＜＜各種センサ＞＞
冷却水温センサ３１１は、シリンダブロック１１に装着されている。この冷却水温センサ３１１は、シリンダブロック１１内の冷却水温Ｔｗに対応する信号を出力するように構成されている。
【００５８】
クランクポジションセンサ３１２は、クランクケース１３に装着されている。このクランクポジションセンサ３１２は、クランクシャフト１３１の回転角度に応じたパルスを有する波形の信号を出力するように構成されている。具体的には、クランクポジションセンサ３１２は、クランクシャフト１３１が１０°回転する毎に幅狭のパルスを有するとともに、クランクシャフト１３１が３６０°回転する毎に幅広のパルスを有する信号を出力するように構成されている。すなわち、クランクポジションセンサ３１２は、エンジン回転数Ｎｅに対応する信号を出力するように構成されている。
【００５９】
吸気カムポジションセンサ３１３及び排気カムポジションセンサ３１４は、シリンダヘッド１２に装着されている。吸気カムポジションセンサ３１３は、吸気バルブ１２３を往復移動させるための図示しない吸気カムシャフト（可変吸気バルブタイミング装置１２５に含まれている）の回転角度に応じたパルスを有する波形の信号を出力するように構成されている。排気カムポジションセンサ３１４も、同様に、図示しない排気カムシャフトの回転角度に応じたパルスを有する波形の信号を出力するように構成されている。
【００６０】
エアフローメータ３１５、吸気温センサ３１６、及びスロットルポジションセンサ３１７は、吸気通路２０１に装着されている。エアフローメータ３１５は、吸気通路２０１内を流れる吸入空気の質量流量である吸入空気流量Ｇａに対応する信号を出力するように構成されている。吸気温センサ３１６は、吸入空気の温度に対応する信号を出力するように構成されている。スロットルポジションセンサ３１７は、スロットルバルブ２０３の回転位相（スロットルバルブ開度ＴＡ）に対応する信号を出力するように構成されている。
【００６１】
上流側空燃比センサ３１８ａ及び下流側空燃比センサ３１８ｂは、排気通路２０２に介装されている。上流側空燃比センサ３１８ａは、上流側触媒２０５よりも排気ガスの流動方向における上流側に配置されている。下流側空燃比センサ３１８ｂは、上流側触媒２０５よりも排気ガスの流動方向における下流側であって、下流側触媒２０６よりも同方向における上流側に配置されている。
【００６２】
図２Ａは、図１に示されている上流側空燃比センサ３１８ａの出力特性を示すグラフである。図２Ｂは、図１に示されている下流側空燃比センサ３１８ｂの出力特性を示すグラフである。
【００６３】
上流側空燃比センサ３１８ａは、図２Ａに示されているように、幅広い空燃比の範囲で比較的リニアな出力特性を有する全領域型の空燃比センサである。具体的には、この上流側空燃比センサ３１８ａは、限界電流式酸素濃度センサから構成されている。
【００６４】
本発明のガスセンサとしての下流側空燃比センサ３１８ｂは、図２Ｂに示されているように、理論空燃比よりもリッチ側及びリーン側にてほぼ一定である一方で理論空燃比の前後において急変する出力特性を有する空燃比センサである。具体的には、この下流側空燃比センサ３１８ｂは、固体電解質型のジルコニア酸素センサから構成されている。
【００６５】
再び図１を参照すると、アクセル開度センサ３１９は、運転者によって操作されるアクセルペダル３２０の操作量Ａccpに対応する信号を出力するように構成されている。
【００６６】
車速・走行距離出力部３２１は、図示しない車輪速センサからの矩形波パルス信号を処理することで、車速信号及び走行距離信号を生成するとともに、これらの信号をＥＣＵ３００に向けて出力するようになっている。
【００６７】
また、運転者によって視認されやすい位置には、警報装置３２２が設けられている。この警報装置３２２は、警告表示灯等を備えている。
【００６８】
＜動作の概要＞
本実施形態のシステムＳにおいては、エンジン制御装置３によって、以下の処理が行われる。
【００６９】
［１：空燃比制御］  スロットルバルブ開度等に基づいて、目標空燃比が設定される。この目標空燃比は、通常は理論空燃比に設定される。一方、必要に応じて、理論空燃比から若干リッチ側あるいはリーン側にシフトした値に目標空燃比が設定され得る。
【００７０】
また、エンジン１の始動後の定常運転中に所定の条件（触媒ＯＢＤ条件）が成立した場合、上流側触媒２０５の劣化判定（触媒ＯＢＤ：ＯＢＤはon-board  diagnosisの略）が実行される。本実施形態においては、この触媒ＯＢＤは、１トリップ（１回の始動から停止までの期間）あたり１回実行されるものとする。この触媒ＯＢＤが実行される場合、目標空燃比は、理論空燃比からリッチ側にシフトした値と、理論空燃比からリーン側にシフトした値と、の間で、矩形波的に変化するように設定される。
【００７１】
上述のようにして設定された目標空燃比と、吸入空気流量等と、に基づいて、インジェクタ１２７から噴射される燃料量の基本値（基本燃料噴射量）が取得される。
【００７２】
エンジン１の始動直後で上流側空燃比センサ３１８ａ及び下流側空燃比センサ３１８ｂが充分に暖機されていない場合等、所定のフィードバック制御条件が成立していない場合は、基本燃料噴射量に基づくオープンループ制御が行われる（このオープンループ制御では学習補正係数に基づく学習制御が行われ得る）。
【００７３】
これらのセンサの活性化後にフィードバック制御条件が成立した場合は、基本燃料噴射量が、上流側空燃比センサ３１８ａ及び下流側空燃比センサ３１８ｂからの出力に基づいてフィードバック補正されることで、インジェクタ１２７からの実際の燃料噴射量（指令燃料噴射量）が取得される。また、上流側空燃比センサ３１８ａ及び下流側空燃比センサ３１８ｂからの出力に基づいて、上述のオープンループ制御の際の学習補正係数を取得するための空燃比学習が行われる。
【００７４】
［２：圧縮比制御］  暖機状態や負荷状態等の、エンジン１の運転状態に基づいて、圧縮比が設定される。本実施形態においては、運転状態に基づいて、可変圧縮比機構１４による機械的圧縮比の変更が行われる。
【００７５】
但し、触媒ＯＢＤが実行される場合、運転状態に応じた機械的圧縮比の変更は原則的に禁止され、機械的圧縮比が一定に保持される。
【００７６】
もっとも、触媒ＯＢＤの実行中に機械的圧縮比が変更されても差し支えないような所定の条件（かかる条件については具体例を用いて後述する）の下では、触媒ＯＢＤの実行中であっても、可変圧縮比機構１４による機械的圧縮比の変更が許可される。
【００７７】
＜動作の詳細＞
次に、図１に示されている本実施形態のエンジン制御装置３の動作の具体例について、フローチャートを用いて説明する。なお、以下の説明及び図面において、「ステップ」は“Ｓ”と略記されている。
【００７８】
＜＜触媒ＯＢＤ条件判定＞＞
ＣＰＵ３０１は、図３に示されている触媒ＯＢＤ条件判定ルーチン３００を、所定タイミング毎に実行する。
【００７９】
このルーチン３００が起動されると、まず、Ｓ３１０にて、触媒推定温度Ｔceが取得される。この触媒推定温度Ｔceは、上流側触媒２０５の温度のオンボード推定値であって、後述する触媒推定温度取得ルーチン６００（図６参照）の実行によって取得される。
【００８０】
次に、Ｓ３２０にて、触媒推定温度Ｔceが、所定の下限温度ＴＬと、所定の上限温度ＴＨと、の間であるか否かが判定される。すなわち、触媒推定温度Ｔceが下限温度ＴＬと上限温度ＴＨとの間であることが、上流側触媒２０５の温度に関する触媒ＯＢＤ条件とされている。
【００８１】
触媒推定温度Ｔceが下限温度ＴＬと上限温度ＴＨとの間である場合（Ｓ３２０＝Ｙｅｓ）、処理がＳ３３０に進行し、他の触媒ＯＢＤ条件が成立しているか否かが判定される。このＳ３３０における触媒ＯＢＤ条件は、エンジン１の暖機後（冷却水温Ｔｗ≧Ｔｗ0）、スロットルバルブ開度ＴＡの単位時間あたりの変化量が所定量以下、車速が所定速度以上、及び吸入空気流量が所定量以下（上流側触媒２０５におけるいわゆる「吹き抜け」が生じない程度の吸入空気流量）、等である。
【００８２】
すべての触媒ＯＢＤ条件が成立している場合（Ｓ３２０及びＳ３３０＝Ｙｅｓ）、処理がＳ３４０に進行し、今回の触媒ＯＢＤ条件の成立がエンジン１の始動後の初回であるか否かが判定される。今回の触媒ＯＢＤ条件の成立がエンジン１の始動後の初回である場合（Ｓ３４０＝Ｙｅｓ）、処理がＳ３５０に進行し、触媒ＯＢＤフラグＸｃがセットされ、本ルーチンが一旦終了する。
【００８３】
一方、触媒ＯＢＤ条件が成立していない場合（Ｓ３２０又はＳ３３０＝Ｎｏ）、あるいは今回の触媒ＯＢＤ条件の成立がエンジン１の始動後の初回でない場合（Ｓ３４０＝Ｎｏ）、処理がＳ３６０に進行し、触媒ＯＢＤフラグＸｃがリセットされ（あるいは触媒ＯＢＤフラグＸｃのリセット状態が維持され）、本ルーチンが一旦終了する。
【００８４】
＜＜触媒ＯＢＤ＞＞
ＣＰＵ３０１は、図４に示されている触媒ＯＢＤルーチン４００を、所定タイミング毎に実行する。なお、本実施形態においては、エンジン制御装置３（ＣＰＵ３０１）における本ルーチン４００の処理によって、本発明の触媒診断部（手段）が実現されている。すなわち、本実施形態においては、下流側空燃比センサ３１８ｂの出力に基づいて、上流側触媒２０５の最大酸素吸蔵量Ｃmax（上流側触媒２０５の劣化度の指標となる値）が、以下のようにして取得される。
【００８５】
このルーチン４００が起動されると、まず、Ｓ４１０にて、触媒ＯＢＤフラグＸｃがセットされているか否かが判定される。触媒ＯＢＤフラグＸｃがセットされている場合（Ｓ４１０＝Ｙｅｓ）、処理がＳ４２０以降に進行する。触媒ＯＢＤフラグＸｃがセットされていない場合（Ｓ４１０＝Ｎｏ）、Ｓ４２０以降の処理がスキップされ、本ルーチンが一旦終了する。
【００８６】
次に、Ｓ４２０にて、触媒ＯＢＤ中断条件が成立しているか否かが判定される。この触媒ＯＢＤ中断条件については後述する。
【００８７】
触媒ＯＢＤ中断条件が成立していない場合（Ｓ４２０＝Ｎｏ）、処理がＳ４３０に進行し、触媒ＯＢＤが実行される（あるいは触媒ＯＢＤの実行状態が維持される）。
【００８８】
ここで、図５は、触媒ＯＢＤの実行の様子を示すグラフである。図５中、（ｉ）は、触媒ＯＢＤの実行中における空燃比変化を示すグラフである。（ii）は、（ｉ）に示された空燃比変化に対応して変化する、上流側触媒２０５の酸素吸蔵量ＯＳＡを示すグラフである。（iii）は、（ｉ）に示された空燃比変化及び（ii）に示された酸素吸蔵量ＯＳＡの変化に対応する、下流側空燃比センサ３１８ｂの出力Ｖoxsを示すグラフである。
【００８９】
まず、図５の（ｉ）に示されているように、触媒ＯＢＤ開始時刻ｔ１より、空燃比が理論空燃比（stoich）よりもΔＡ／Ｆだけリーンに設定される。すると、上流側触媒２０５にリーンな空燃比の排気ガスが流入する。よって、図５の（ii）に示されているように、上流側触媒２０５の酸素吸蔵量ＯＳＡは、次第に増大し、時刻ｔ２にてピーク値Ｃmax2に達する。
【００９０】
上流側触媒２０５の酸素吸蔵量ＯＳＡがピーク値Ｃmax2に達すると、上流側触媒２０５にてこれ以上の酸素が吸蔵できなくなる。よって、時刻ｔ２より、上流側触媒２０５の下流側に、酸素を含む排気ガス（リーン空燃比の排気ガス）が流出し始める。このため、図５の（iii）に示されているように、下流側空燃比センサ３１８ｂの出力Ｖoxsは、理論空燃比よりリーン側に大きく変位した値に変化する。
【００９１】
時刻ｔ２にて、下流側空燃比センサ３１８ｂの出力Ｖoxsが理論空燃比よりリーン側に大きく変位した値に変化したことが判定されると、図５の（ｉ）に示されているように、空燃比が理論空燃比よりもΔＡ／Ｆだけリッチに設定される。すると、上流側触媒２０５にリッチな空燃比の排気ガスが流入する。このとき、上流側触媒２０５に吸蔵された酸素が、流入する未燃ＨＣ,ＣＯの酸化のために消費される。よって、図５の（ii）に示されているように、上流側触媒２０５の酸素吸蔵量ＯＳＡは、Ｃmax2から次第に減少し、時刻ｔ３にて上流側触媒２０５の酸素吸蔵量が「０」となる。
【００９２】
上流側触媒２０５の酸素吸蔵量ＯＳＡが０になると、上流側触媒２０５にてこれ以上の未燃ＨＣ,ＣＯの酸化ができなくなる。よって、時刻ｔ３より、上流側触媒２０５の下流側に、リッチ空燃比のガスが流出し始める。このため、図５の（iii）に示されているように、下流側空燃比センサ３１８ｂの出力Ｖoxsは、リーンを示す値からリッチを示す値に変化する。
【００９３】
時刻ｔ３にて、下流側空燃比センサ３１８ｂの出力がリーンを示す値からリッチを示す値に変化したことが判定されると、図５の（ｉ）に示されているように、再度、空燃比が理論空燃比よりもΔＡ／Ｆだけリーンに設定される。これにより、図５の（ii）に示されているように、上流側触媒２０５の酸素吸蔵量ＯＳＡは、「０」から増大し続け、時刻ｔ４にてピーク値Ｃmax4に達する。すると、上述と同様に、時刻ｔ４にて、下流側空燃比センサ３１８ｂの出力Ｖoxsは、リッチを示す値からリーンを示す値に変化する。時刻ｔ４における上述のような下流側空燃比センサ３１８ｂの出力Ｖoxsの変化が判定されると、触媒ＯＢＤは終了され、空燃比制御が通常制御に戻される。
【００９４】
上述のような矩形波状の空燃比制御（アクティブ制御）を実行することで、上流側触媒２０５の最大酸素吸蔵量Ｃmaxが、以下の式によって取得され、当該取得値はバックアップＲＡＭ３０４に順次格納される。なお、以下の式において、値「０．２３」は、大気中に含まれる酸素の重量割合である。ｍｆｒは、所定時間（計算周期tsample）内の燃料噴射量Ｆｉの合計量である。
ΔＯ2＝０．２３・ｍｆｒ・ΔＡ／Ｆ
Ｃmax2＝ΣΔＯ2（区間ｔ＝ｔ２〜ｔ３）
Ｃmax4＝ΣΔＯ2（区間ｔ＝ｔ３〜ｔ４）
Ｃmax＝（Ｃmax2＋Ｃmax4）／２
【００９５】
この式に示されているように、区間ｔ＝ｔ２〜ｔ３における、所定時間tsample内の噴射量の合計量ｍｆｒに、空燃比Ａ／Ｆの理論空燃比からの偏移ΔＡ／Ｆを乗じることで、当該所定時間tsampleにおける空気の不足量が求められ、この空気の不足量に酸素の重量割合を乗じることで、当該所定時間tsampleにおける酸素吸蔵量変化量（吸蔵酸素の消費量）ΔＯ2が求められる。そして、酸素吸蔵量変化量ΔＯ2を時刻ｔ２〜ｔ３にわたって積算することで、上流側触媒２０５が酸素を最大限貯蔵していた状態から酸素をすべて消費した状態となるまでの酸素消費量、すなわちピーク値Ｃmax2が推定・算出される。同様に、区間ｔ＝ｔ３〜ｔ４においても、酸素吸蔵量変化量ΔＯ2を積算することで、上流側触媒２０５が酸素をすべて消費した状態から酸素を最大限に吸蔵した状態となるまでの酸素吸蔵量、すなわちピーク値Ｃmax4が推定・算出される。
【００９６】
なお、触媒ＯＢＤ実行中に筒内吸入空気量Ｍｃが一定（すなわち吸入空気流量Ｇａが一定）である場合には、上式は、以下のように簡略化され得る。
Ｃmax2＝０．２３・ｍｆｒ・ΔＡ／Ｆ・（ｔ３−ｔ２）
Ｃmax4＝０．２３・ｍｆｒ・ΔＡ／Ｆ・（ｔ４−ｔ３）
Ｃmax＝（Ｃmax2＋Ｃmax4）／２
【００９７】
以上のようにして上流側触媒２０５の最大酸素吸蔵量Ｃmaxを取得する処理によって、本発明の最大酸素吸蔵量取得部（手段）が実現されている。
【００９８】
続いて、Ｓ４４０にて、触媒ＯＢＤが終了したか否かが判定される。触媒ＯＢＤの終了前（Ｓ４４０＝Ｎｏ）は、Ｓ４５０ないしＳ４７０の処理はスキップされ、本ルーチンが一旦終了する。
【００９９】
触媒ＯＢＤが終了すると（Ｓ４４０＝Ｙｅｓ）、処理がＳ４５０に進行し、上流側触媒２０５に劣化異常が発生したか否かが判定される。この判定は、具体的には、劣化度診断結果としての最大酸素吸蔵量Ｃmaxが、所定の基準値Ｃmax_err以上であるか否かによって行われる。この処理によって、本発明の異常判定部（手段）が実現されている。
【０１００】
最大酸素吸蔵量Ｃmaxが所定の基準値Ｃmax_errより小さくなった場合、触媒劣化異常であると判定され（Ｓ４５０＝Ｙｅｓ）、警報装置３２２を介して運転者に対して警報が発せられる（Ｓ４６０）。上流側触媒２０５に劣化異常が発生していない場合（Ｓ４５０＝Ｎｏ）、Ｓ４６０の処理がスキップされる。その後、処理がＳ４７０に進行し、触媒ＯＢＤフラグがリセットされ、本ルーチンが一旦終了する。
【０１０１】
触媒ＯＢＤ中断条件が成立している場合（Ｓ４２０＝Ｙｅｓ）、Ｓ４３０ないしＳ４７０の処理がスキップされて、処理がＳ４８０に進行し、触媒ＯＢＤが中断され、本ルーチンが一旦終了する。なお、触媒ＯＢＤ中断条件の成立が解消されると（Ｓ４２０＝Ｎｏ）、触媒ＯＢＤが再開される。このとき、触媒ＯＢＤは最初から行われる（中断前の処理結果は破棄される）ものとする。
【０１０２】
＜＜触媒推定温度取得＞＞
ＣＰＵ３０１は、図６に示されている触媒推定温度取得ルーチン６００を、所定タイミング毎に実行する。
【０１０３】
このルーチン６００が起動されると、まず、Ｓ６１０にて、エンジン回転数Ｎｅ、負荷率ＫＬ、及び現在の機械的圧縮比εが取得される。ここで、機械的圧縮比εは、エンジン制御装置３による駆動機構１４２の動作制御状態（例えばモータの回転角度等）をＣＰＵ３０１が把握することで、容易かつ比較的正確に取得され得る。
【０１０４】
次に、Ｓ６２０にて、機械的圧縮比εが所定値εa（例えば最小値εmin）である条件でエンジン回転数Ｎｅ及び負荷率ＫＬをパラメータとして作成された触媒温度マップと、Ｓ６１０にて取得されたエンジン回転数Ｎｅ及び負荷率ＫＬと、に基づいて、温度Ｔce（εa）が取得される。同様に、続くＳ６３０にて、機械的圧縮比εが所定値εb（＞εa：例えば最大値εmax）である条件で作成された触媒温度マップと、Ｓ６１０にて取得されたエンジン回転数Ｎｅ及び負荷率ＫＬと、に基づいて、温度Ｔce（εb）が取得される。
【０１０５】
続いて、Ｓ６４０にて、Ｔce（εa）と、Ｔce（εb）と、Ｓ６１０にて取得された機械的圧縮比εと、所定のマップあるいは関数と、に基づいて、触媒推定温度Ｔceが取得される。例えば、エンジン回転数Ｎｅ及び負荷率ＫＬが一定の場合における、機械的圧縮比εの変化による触媒温度の変化が直線に近似されるとすると、以下のようにして触媒推定温度Ｔceが取得され得る。
Ｔce＝
Ｔce（εa）＋（ε−εa）・（Ｔce（εb）−Ｔce（εa））／（εb−εa）
その後、本ルーチンが一旦終了する。
【０１０６】
なお、本実施形態においては、エンジン制御装置３（ＣＰＵ３０１）におけるＳ６２０ないしＳ６４０の処理によって、本発明の温度取得部（手段）が実現されている。
【０１０７】
＜＜圧縮比制御＞＞
ＣＰＵ３０１は、図７に示されている圧縮比制御ルーチン７００を、所定タイミング毎に実行する。なお、本実施形態においては、エンジン制御装置３（ＣＰＵ３０１）における本ルーチン７００の処理によって、本発明の圧縮比制御部（手段）が実現されている。
【０１０８】
まず、Ｓ７１０にて、エンジン１が暖機後であるか否か（冷却水温Ｔｗ≧Ｔｗ0であるか否か）が判定される。エンジン１が暖機中である場合（Ｓ７１０＝Ｎｏ）、処理がＳ７２０に進行する。Ｓ７２０においては、排気温度を上昇させることでエンジン１や上流側触媒２０５の暖機を促進するために、機械的圧縮比εが、低めの値ε０に設定される。その後、処理がＳ７３０に進行し、機械的圧縮比εの設定状態がバックアップＲＡＭ３０４に格納され、本ルーチンが一旦終了する。
【０１０９】
エンジン１が暖機後である場合（Ｓ７１０＝Ｙｅｓ）、処理がＳ７４０に進行し、触媒ＯＢＤフラグＸｃがセットされているか否かが判定される。触媒ＯＢＤフラグＸｃがセットされていない場合（Ｓ７４０＝Ｎｏ）、現在の運転状態は、エンジン１の暖機後の通常運転である。よって、この場合、処理がＳ７５０に進行する。Ｓ７５０においては、機械的圧縮比εが、エンジン回転数Ｎｅや負荷率ＫＬ等のエンジンパラメータに基づいて、マップ等を用いて取得される。なお、負荷率ＫＬは、周知の通り、吸入空気流量Ｇａ、スロットルバルブ開度ＴＡ、あるいはアクセル操作量Ａccpに基づいて取得され得る。その後、処理がＳ７３０に進行し、機械的圧縮比εの設定値がバックアップＲＡＭ３０４に格納され、本ルーチンが一旦終了する。
【０１１０】
エンジン１が暖機後であり（Ｓ７１０＝Ｙｅｓ）、且つ触媒ＯＢＤフラグＸｃがセットされている場合（Ｓ７４０＝Ｙｅｓ）、触媒ＯＢＤの実行中である。この場合、まず、処理がＳ７６０に進行し、触媒ＯＢＤの実行中における機械的圧縮比の変更要求（例えばアクセルペダル３２０の操作等）があるか否かが判定される。
【０１１１】
圧縮比変更要求がある場合（Ｓ７６０＝Ｙｅｓ）、処理がＳ７７０に進行し、圧縮比変更許可条件が成立しているか否かが判定される。この圧縮比変更許可条件については後述する。圧縮比変更許可条件が成立している場合（Ｓ７７０＝Ｙｅｓ）、処理が上述のＳ７５０及びＳ７６０に進行して、圧縮比変更要求に応じた機械的圧縮比の変更が許可され、本ルーチンが一旦終了する。
【０１１２】
圧縮比変更要求がない場合（Ｓ７６０＝Ｎｏ）、Ｓ７７０の処理がスキップされることで、機械的圧縮比が前回と同一とされる。すなわち、機械的圧縮比が一定に維持される。その後、本ルーチンが一旦終了する。
【０１１３】
また、圧縮比変更許可条件が成立していない場合（Ｓ７７０＝Ｎｏ）、処理がＳ７５０及びＳ７６０に進行せず、機械的圧縮比が前回と同一とされたまま、本ルーチンが一旦終了する。すなわち、この場合、圧縮比変更要求があっても、機械的圧縮比の変更が禁止されることになる。
【０１１４】
＜＜圧縮比変更許可条件の詳細＞＞
以下、圧縮比変更要求があった場合（Ｓ７６０＝Ｙｅｓ）の、圧縮比変更許可条件が成立しているか否かの判定（Ｓ７７０）の具体例について、フローチャートを用いて説明する。なお、以下の各具体例は、単独で、あるいは、複数のものが適宜組み合わされた状態で適用され得る。
【０１１５】
＜＜＜具体例１＞＞＞
本具体例における圧縮比変更許可条件判定８００は、上流側触媒２０５の使用期間に基づいて行われるものであって、具体的には、以下のようにして行われる。
【０１１６】
まず、新品の上流側触媒２０５が装着されてからの車両の走行距離が、車速・走行距離出力部３２１から出力された走行距離信号に基づいて取得される（Ｓ８１０）。次に、この走行距離が所定距離以下であるか否かが判定される（Ｓ８２０）。
【０１１７】
走行距離が所定距離以下である場合（Ｓ８２０＝Ｙｅｓ）、上流側触媒２０５の劣化があまり進んでいない（劣化度が小さい）ことが推認される。この場合、触媒ＯＢＤの実行中に機械的圧縮比が変更されても差し支えないので、圧縮比変更許可条件が成立していることとされる（Ｓ８３０）。
【０１１８】
一方、走行距離が所定距離より長い場合（Ｓ８２０＝Ｎｏ）、上流側触媒２０５の劣化が比較的進んでいる（劣化度が所定程度を超える）ことが推認される。この場合、触媒ＯＢＤを精度よく実行して上流側触媒２０５の劣化度（最大酸素吸蔵量Ｃmax）を精度よく取得する必要があるため、圧縮比変更許可条件が成立していないこととされる（Ｓ８４０）。
【０１１９】
なお、本具体例においては、上述の走行距離が、本発明の使用期間に相当する。また、エンジン制御装置３（ＣＰＵ３０１）におけるＳ８１０の処理によって、本発明の使用期間取得部（手段）が実現されている。
【０１２０】
＜＜＜具体例２＞＞＞
本具体例における圧縮比変更許可条件判定９００は、前回の触媒ＯＢＤの実行時における上流側触媒２０５の劣化度に基づいて行われるものであって、具体的には、以下のようにして行われる。
【０１２１】
まず、前回の触媒ＯＢＤの実行によって取得された最大酸素吸蔵量Ｃmaxが、バックアップＲＡＭ３０４から読み出される（Ｓ９１０）。次に、前回の最大酸素吸蔵量Ｃmaxが所定値Ｃmaxrより大きいか否かが判定される（Ｓ９２０）。すなわち、前回の触媒ＯＢＤの実行時に診断された、上流側触媒２０５の劣化度が、所定レベルよりも小さいか否かが判定される。この判定結果に基づいて、上述の具体例と同様に、圧縮比変更許可条件の成立の可否が判定される。
【０１２２】
すなわち、上流側触媒２０５の劣化度が所定レベルよりも小さい場合（Ｃmax＞Ｃmaxr：Ｓ９２０＝Ｙｅｓ）、圧縮比変更許可条件が成立していることとされる（Ｓ９３０）。一方、上流側触媒２０５の劣化度が所定レベル以上である場合（Ｃmax≦Ｃmaxr：Ｓ９２０＝Ｎｏ）、圧縮比変更許可条件が成立していないこととされる（Ｓ９４０）。
【０１２３】
＜＜＜具体例３＞＞＞
本具体例における圧縮比変更許可条件判定１０００は、前回の触媒ＯＢＤの精度（劣化度診断値の変動度合い）に基づいて行われる。すなわち、本具体例においては、以下の通り、上流側触媒２０５の劣化度の変動が所定レベルよりも小さいか否かによって、圧縮比の変更の許可あるいは禁止が判定される。
【０１２４】
まず、前回（Ｎ−１回目）の触媒ＯＢＤの実行時の、前々回（Ｎ−２回目）からの最大酸素吸蔵量Ｃmaxの変動分ΔＣmaxが取得される（Ｓ１０１０）。このΔＣmaxは、以下の式によって計算される。
ΔＣmax＝Ｃmax（Ｎ−１）−Ｃmax（Ｎ−２）
【０１２５】
次に、このΔＣmaxが所定値ΔＣmaxrより小さいか否かが判定される（Ｓ１０２０）。すなわち、前回（Ｎ−１回目）の触媒ＯＢＤの実行時における、劣化度の取得値の変動が所定以上であるか否かが判定される。この判定結果に基づいて、上述の具体例と同様に、圧縮比変更許可条件の成立の可否が判定される。
【０１２６】
すなわち、ΔＣmaxが所定値ΔＣmaxrより小さい場合（Ｓ１０２０＝Ｙｅｓ）、前回（Ｎ−１回目）の触媒ＯＢＤの精度が良かったことが推認される。また、この場合、現在装着されている上流側触媒２０５の劣化度が、異常判定が必要な程度には高くないことが推認される（前回のエンジン１の運転時に精度よい触媒ＯＢＤが実行された後で、今回エンジン１が起動されている。よって、前回の触媒ＯＢＤ時の上流側触媒２０５が交換されずに今回の触媒ＯＢＤ時にも装着されている状態で今回エンジン１が起動されているとすれば、この上流側触媒２０５は前回の精度よい触媒ＯＢＤの実行時に異常判定されなかったものであるので、この上流側触媒２０５の劣化度は異常判定レベルには達していないことが推認される。一方、前回の精度よい触媒ＯＢＤの実行時に上流側触媒２０５の異常判定がされた後に今回エンジン１が起動されているとすれば、この劣化した上流側触媒２０５は今回のエンジン１の起動前に新品に交換されていることが推認される。）。
【０１２７】
よって、この場合、触媒ＯＢＤの実行中に機械的圧縮比が変更されても差し支えないので、圧縮比変更許可条件が成立していることとされる（Ｓ１０３０）。
【０１２８】
一方、ΔＣmaxが所定値ΔＣmaxr以上である場合（Ｓ１０２０＝Ｎｏ）、前回（Ｎ−１回目）の触媒ＯＢＤの精度が良くなかったことが推認される。よって、この場合、今回の触媒ＯＢＤを精度よく実行して上流側触媒２０５の劣化度を精度よく取得する必要があるため、圧縮比変更許可条件が成立していないこととされる（Ｓ１０４０）。
【０１２９】
＜＜＜具体例４＞＞＞
本具体例における圧縮比変更許可条件判定１１００は、触媒ＯＢＤの実行中に要求された圧縮比変更量に基づいて行われるものであって、具体的には、以下のようにして行われる。
【０１３０】
まず、運転者要求等に基づく機械的圧縮比の目標値（目標圧縮比ε１）が取得される（Ｓ１１１０）。次に、現在の機械的圧縮比εと目標圧縮比ε１との差分Δεが計算される（Ｓ１１２０）。この差分Δεに基づいて、目標圧縮比ε１への変更の許可又は禁止が判定される（Ｓ１１３０〜Ｓ１１６０）。
【０１３１】
差分Δεが正の場合（Ｓ１１３０＝Ｙｅｓ）、現在の機械的圧縮比εから目標圧縮比ε１への変更は、低圧縮比化である。このような圧縮比変更は、主として運転者によるアクセルペダル３２０の操作に基づくものである（例えば追い越しのための車両加速時等）。よって、可能な範囲で運転者要求に沿った運転制御が行われることが好ましい。
【０１３２】
ここで、低圧縮比化は、排気温度が上昇して上流側触媒２０５の最大酸素吸蔵量Ｃmaxが増加する方向の圧縮比変更である。よって、差分Δεが正の場合（Ｓ１１３０＝Ｙｅｓ）の、現在の機械的圧縮比εから目標圧縮比ε１への変更は、精度が悪化するような大幅な変更でなければ、触媒ＯＢＤの途中に行われても差し支えない。
【０１３３】
そこで、本具体例においては、差分Δεが正であって所定値Δε0よりも小さい場合（Ｓ１１３０＝Ｙｅｓ→Ｓ１１４０＝Ｙｅｓ）、圧縮比変更許可条件が成立していることとされる（Ｓ１１５０）。一方、差分Δεが正であっても所定値Δε0以上である場合（Ｓ１１３０＝Ｙｅｓ→Ｓ１１４０＝Ｎｏ）、圧縮比変更許可条件が成立していないこととされる（Ｓ１１６０）。
【０１３４】
差分Δεが負の場合（Ｓ１１３０＝Ｎｏ）、現在の機械的圧縮比εから目標圧縮比ε１への変更は、高圧縮比化であり、排気温度及び最大酸素吸蔵量Ｃmaxの低下を招くものである。また、このような圧縮比変更は、主として高燃費化のための要求に基づくものである。
【０１３５】
よって、この場合、高圧縮比化よりも、高精度の触媒ＯＢＤの実行の方が優先であるので、圧縮比変更許可条件が成立していないこととされる（Ｓ１１６０）。
【０１３６】
＜＜＜具体例５＞＞＞
本具体例における圧縮比変更許可条件判定１２００は、上流側触媒２０５が比較的高温である場合に触媒温度を下げるような高圧縮比化を許可するように、以下のようにして行われる。
【０１３７】
まず、触媒推定温度取得ルーチン６００により触媒推定温度Ｔceが取得され（Ｓ１２１０）、この触媒推定温度Ｔceが所定の高温ＴＨ１（＞ＴＨ）よりも高いか否かが判定される（Ｓ１２２０）。
【０１３８】
触媒推定温度Ｔceが所定温度ＴＨ１よりも高い場合（Ｓ１２２０＝Ｙｅｓ）、目標圧縮比ε１、及び現在の機械的圧縮比εと目標圧縮比ε１との差分Δεが取得され、（Ｓ１２３０，Ｓ１２４０）この差分Δεに基づいて、目標圧縮比ε１への変更の許可又は禁止が判定される（Ｓ１２５０）。
【０１３９】
すなわち、差分Δεが負の場合（Ｓ１２５０＝Ｙｅｓ）、現在の機械的圧縮比εから目標圧縮比ε１への変更は、高圧縮比化であり、排気温度の低下を招くものである。よって、この場合、触媒温度を下げて上流側触媒２０５を保護するために、圧縮比変更許可条件が成立していることとされる（Ｓ１２６０）。
【０１４０】
一方、差分Δεが正の場合（Ｓ１２５０＝Ｎｏ）、現在の機械的圧縮比εから目標圧縮比ε１への変更は、低圧縮比化であり、排気温度及び触媒温度の上昇を招くものである。よって、この場合、触媒温度のさらなる上昇を抑制するために、圧縮比変更許可条件が成立していないこととされる（Ｓ１２７０）。
【０１４１】
また、触媒推定温度Ｔceが所定温度ＴＨ１以下である場合（Ｓ１２２０＝Ｎｏ）、触媒保護のための圧縮比変更の必要はないので、触媒ＯＢＤの精度よい実行のため、圧縮比変更が禁止される（Ｓ１２７０）。
【０１４２】
＜＜＜具体例６＞＞＞
本具体例における圧縮比変更許可条件判定１３００は、上流側触媒２０５の温度変化が大きくなるような圧縮比変更を禁止する（上流側触媒２０５の温度変化があまり大きくならないような圧縮比変更は許可する）ように、以下のようにして行われる。
【０１４３】
まず、触媒推定温度取得ルーチン６００により現在の触媒推定温度Ｔceが取得される（Ｓ１３１０）。次に、目標圧縮比ε１が取得される（Ｓ１３２０）。続いて、機械的圧縮比が目標圧縮比ε１に変更された場合の触媒推定温度Ｔce１が取得される（Ｓ１３３０）。この触媒推定温度Ｔce１は、触媒推定温度取得ルーチン６００のＳ６４０におけるεを目標圧縮比ε１とすることによって取得される。
【０１４４】
その後、現在の触媒推定温度Ｔceと、機械的圧縮比が目標圧縮比ε１に変更された場合の触媒推定温度Ｔce１と、の差である温度偏差ΔＴceが計算され（Ｓ１３４０）、この温度偏差ΔＴceに基づいて、目標圧縮比ε１への変更の許可又は禁止が判定される（Ｓ１３５０〜Ｓ１３７０）。
【０１４５】
すなわち、温度偏差ΔＴceが所定値ΔＴce0より小さい場合（Ｓ１３５０＝Ｙｅｓ）、目標圧縮比ε１への変更が許可される（Ｓ１３６０）。これにより、触媒ＯＢＤによる最大酸素吸蔵量Ｃmaxの測定値に大きな変動が生じない（精度よい触媒ＯＢＤが実行され得る）範囲で、圧縮比変更要求に応じた機械的圧縮比の変更が行われる。
【０１４６】
一方、温度偏差ΔＴceが所定値ΔＴce0以上である場合（Ｓ１３５０＝Ｎｏ）、目標圧縮比ε１への変更が禁止される（Ｓ１３７０）。これにより、最大酸素吸蔵量Ｃmaxの測定値に大きな変動が生じるような、触媒ＯＢＤ実行中の圧縮比変更が禁止される。
【０１４７】
＜＜触媒ＯＢＤ中断条件の詳細＞＞
以下、触媒ＯＢＤ中断条件が成立しているか否かの判定（Ｓ４２０）の具体例について、フローチャートを用いて説明する。なお、以下の各具体例も、単独で、あるいは、複数のものが適宜組み合わされた状態で適用され得る。
【０１４８】
＜＜＜具体例１＞＞＞
本具体例における触媒ＯＢＤ中断条件判定１４００は、上流側触媒２０５の温度に基づいて行われる。すなわち、本具体例においては、触媒ＯＢＤの実行中に上流側触媒２０５の温度が所定範囲を外れた場合に、触媒ＯＢＤが中断される。
【０１４９】
具体的には、まず、触媒推定温度取得ルーチン６００により現在の触媒推定温度Ｔceが取得される（Ｓ１４１０）。次に、この触媒推定温度Ｔceが所定の温度範囲（ＴＬerrとＴＨerrとの間：ＴＨ１＜ＴＨerr，ＴＬerr＜ＴＬ）にあるか否かが判定される。（Ｓ１４２０）。そして、触媒推定温度Ｔceが所定範囲外である場合（Ｓ１４２０＝Ｎｏ）、触媒ＯＢＤが中断される（Ｓ１４３０）。一方、触媒推定温度Ｔceが所定範囲以内にある場合（Ｓ１４２０＝Ｙｅｓ）、触媒ＯＢＤは中断されない。
【０１５０】
この具体例によれば、触媒ＯＢＤの実行中の運転状態の変化（特に運転者要求に基づく機械的圧縮比の変更）によって、上流側触媒２０５の温度が、触媒ＯＢＤの実行に適さない温度範囲に達した場合に、触媒ＯＢＤが中断される。これにより、触媒ＯＢＤの精度が確保され得る。
【０１５１】
＜＜＜具体例２＞＞＞
本具体例における触媒ＯＢＤ中断条件判定１５００は、上流側触媒２０５の温度変化が大きくなる場合に、触媒ＯＢＤが中断される。
【０１５２】
具体的には、まず、触媒推定温度取得ルーチン６００により現在の触媒推定温度Ｔceが取得される（Ｓ１５１０）。次に、目標圧縮比ε１、及び、機械的圧縮比が目標圧縮比ε１に変更された場合の触媒推定温度Ｔce１が取得される（Ｓ１５２０，Ｓ１５３０）。続いて、温度偏差ΔＴceが取得され（Ｓ１５４０）、この温度偏差ΔＴceに基づいて、触媒ＯＢＤが中断されるか否かが判定される（Ｓ１５５０，Ｓ１５６０）
【０１５３】
すなわち、温度偏差ΔＴceが所定値ΔＴce_err以上である場合（Ｓ１５５０＝Ｎｏ）、触媒ＯＢＤが中断される（Ｓ１５６０）。一方、温度偏差ΔＴceが所定値ΔＴce_errより小さい場合（Ｓ１５５０＝Ｙｅｓ）、触媒ＯＢＤは中断されない。
【０１５４】
この具体例によれば、触媒ＯＢＤの実行中の運転状態の変化（特に運転者要求に基づく機械的圧縮比の変更）によって、上流側触媒２０５の温度変化が大きくなって触媒ＯＢＤの精度よい実行が確保され難い状態となった場合に、触媒ＯＢＤが中断される。これにより、触媒ＯＢＤの精度が確保され得る。
【０１５５】
＜＜＜具体例３＞＞＞
本具体例における触媒ＯＢＤ中断条件判定１６００は、触媒ＯＢＤ中の圧縮比変更量が所定の上限量よりも大きい場合に、触媒ＯＢＤが中断される。
【０１５６】
具体的には、まず、目標圧縮比ε１が取得される（Ｓ１６１０）。次に、現在の機械的圧縮比εと目標圧縮比ε１との偏差δεが計算される（Ｓ１６２０）。続いて、この圧縮比偏差δεに基づいて、触媒ＯＢＤが中断されるか否かが判定される（Ｓ１５５０，Ｓ１５６０）
【０１５７】
すなわち、圧縮比偏差δεが所定の上限量δεerr以上である場合（Ｓ１６３０＝Ｎｏ）、触媒ＯＢＤが中断される（Ｓ１６４０）。一方、圧縮比偏差δεが上限量δεerrより小さい場合（Ｓ１６３０＝Ｙｅｓ）、触媒ＯＢＤは中断されない。
【０１５８】
この具体例によれば、触媒ＯＢＤの実行中に、運転者要求等に基づいて機械的圧縮比が大きく変更される場合、触媒ＯＢＤの精度よい実行が確保され難いため、触媒ＯＢＤが中断される。これにより、追い越しのための急加速等の運転者要求を満たしつつ、触媒ＯＢＤの精度が確保され得る。
【０１５９】
＜＜＜具体例４＞＞＞
本具体例における触媒ＯＢＤ中断条件判定１７００は、空燃比アクティブ制御中の下流側空燃比センサ３１８ｂの出力波形（図５参照）が不安定になった場合に、触媒ＯＢＤが中断される。この具体例においては、エンジン制御装置３（ＣＰＵ３０１）における触媒ＯＢＤ中断条件判定１７００の処理によって、本発明のセンサ判定部（手段）が実現されている。
【０１６０】
具体的には、まず、下流側空燃比センサ３１８ｂの応答状態が取得される（Ｓ１７１０）。具体的には、リッチ→リーン応答とリーン→リッチ応答との間の経過時間（図５の（iii）におけるｔ２−ｔ３間やｔ３−ｔ４間の経過時間）の変動状態がチェックされる。次に、この応答状態が正常であるか（上述の経過時間の変動が所定程度よりも小さいか）が判定される（Ｓ１７２０）。
【０１６１】
下流側空燃比センサ３１８ｂの応答状態が正常でない場合（Ｓ１７２０＝Ｎｏ）、触媒ＯＢＤが中断される（Ｓ１７３０）。一方、下流側空燃比センサ３１８ｂの応答状態が正常である場合（Ｓ１７２０＝Ｙｅｓ）、触媒ＯＢＤは中断されない。
【０１６２】
この具体例によれば、触媒ＯＢＤの実行中に、運転状態の変化（特に運転者要求に基づく機械的圧縮比の変更）等によって、下流側空燃比センサ３１８ｂの出力波形が不安定になった場合、触媒ＯＢＤの精度よい実行が確保され難いため、触媒ＯＢＤが中断される。これにより、触媒ＯＢＤの精度が確保され得る。
【０１６３】
＜変形例の例示列挙＞
なお、上述の実施形態は、上述した通り、出願人が本願の出願時点において最良であると考えた本発明の具体的構成例を単に例示したものにすぎないのであって、本発明はもとより上述の実施形態によって何ら限定されるべきものではない。よって、上述の実施形態に示された具体的構成に対して、本発明の本質的部分を変更しない範囲内において、種々の変形が施され得ることは、当然である。
【０１６４】
以下、変形例について幾つか例示する。ここで、以下の変形例の説明において、上述の実施形態における各構成要素と同様の構成・機能を有する構成要素については、当該変形例においても同一の名称及び同一の符号が付されているものとする。そして、当該構成要素の説明については、上述の実施形態における説明が、矛盾しない範囲で適宜援用され得るものとする。
【０１６５】
もっとも、変形例とて、下記のものに限定されるものではないことは、いうまでもない。本発明を、上述の実施形態や下記変形例の記載に基づいて限定解釈することは、（特に先願主義の下で出願を急ぐ）出願人の利益を不当に害する反面、模倣者を不当に利するものであって、許されない。
【０１６６】
また、上述の実施形態の構成、及び下記の各変形例に記載された構成は、技術的に矛盾しない範囲において、適宜複合して適用され得ることも、いうまでもない。
【０１６７】
（１）本発明は、ガソリンエンジン、ディーゼルエンジン、メタノールエンジン、バイオエタノールエンジン、その他の任意のタイプの内燃機関に適用され得る。気筒数、気筒配列方式（直列、Ｖ型、水平対向）、燃料噴射方式（ポート噴射、筒内直接噴射）も、特に限定はない。
【０１６８】
（２）可変圧縮比機構１４を含むエンジン１の構成も、上述の実施形態のものに限定されない。例えば、コンロッド１３２がマルチリンク構造を有していて、このコンロッド１３２の屈曲状態が変更されることで機械的圧縮比が変更されるように、エンジン１が構成されていても、本発明は良好に適用される。
【０１６９】
（３）上述の実施形態における圧縮比制御は、主として機械的圧縮比に対するものであった。しかしながら、本発明はこれに限定されるものではない。例えば、可変吸気バルブタイミング装置１２５や可変排気バルブタイミング装置１２６による実圧縮比制御に対しても、本発明は同様に適用され得る。また、運転状態に応じた実圧縮比の変更は、可変圧縮比機構１４による機械的圧縮比の変更と、可変吸気バルブタイミング装置１２５や可変排気バルブタイミング装置１２６によるバルブタイミングの変更と、を併用することでも行われ得る。本発明はこの場合に対しても良好に適用され得る。
【０１７０】
（４）上述の実施形態においては、触媒ＯＢＤが１トリップあたり１回行われていた。しかしながら、本発明はこれに限定されるものではない。例えば、触媒劣化度に応じて、触媒ＯＢＤが１トリップ中に複数回行われてもよい。この場合、触媒劣化度に応じてＯＢＤの実行頻度が変えられてもよい。
【０１７１】
（５）Ｓ３２０における所定温度ＴＨと、Ｓ１２２０における所定温度ＴＨ１と、Ｓ１４２０における所定温度ＴＨerrとの大小関係については、特に限定はない。例えば、上述の具体例とは大小関係が逆であってもよいし、これら３つの温度のうちの２つあるいは３つ全部が等しくてもよい。同様に、Ｓ３２０における所定温度ＴＬと、Ｓ１４２０における所定温度ＴＬerrとの大小関係についても、特に限定はない。
【０１７２】
（６）Ｓ４５０における上流側触媒２０５の劣化異常判定は、最大酸素吸蔵量Ｃmaxが所定の基準値Ｃmax_err以上であるか否かによって単純に行われるものに限定されない。
【０１７３】
例えば、上述のように、触媒ＯＢＤの実行中に、運転者要求等により、圧縮比が変更される場合がある。このような場合、触媒ＯＢＤの精度が悪くなる可能性がある。そこで、今回の触媒ＯＢＤの精度が悪いと推認される場合には、今回のＯＢＤの結果が触媒異常判定に反映されないように、触媒異常判定が行われ得る。具体的には、例えば、触媒異常判定は、以下のように行われ得る。
【０１７４】
図１８は、本変形例の触媒異常判定１８００を示すフローチャートである。この変形例の触媒異常判定１８００においては、まず、前回（Ｎ−１回目の）最大酸素吸蔵量Ｃmaxの取得値がバックアップＲＡＭ３０４から読み出される（Ｓ１８１０）。次に、今回の最大酸素吸蔵量Ｃmaxの取得値と、前回の取得値と、の偏差ΔＣmaxが計算される（Ｓ１８２０）。
【０１７５】
偏差ΔＣmaxが所定値ΔＣmax_errより小さい場合（Ｓ１８３０＝Ｙｅｓ）、今回の最大酸素吸蔵量Ｃmaxの取得値が、Ｎ回目の値として採用され、この値がバックアップＲＡＭ３０４に格納される（Ｓ１８４０）。そして、この値の基準値Ｃmax_errとの大小関係によって、上流側触媒２０５の劣化異常判定が行われる（Ｓ１８５０〜Ｓ１８７０）。
【０１７６】
一方、偏差ΔＣmaxが所定値ΔＣmax_err以上である場合（Ｓ１８３０＝Ｎｏ）、今回の最大酸素吸蔵量Ｃmaxの取得値はＮ回目の値として採用されず、上流側触媒２０５の劣化異常判定も行われない。
【０１７７】
（７）本発明の温度取得部（手段）に対応する処理や構成も、上述の実施形態や各具体例の記載に限定されない。
【０１７８】
例えば、触媒温度推定は、上述の実施形態のように、２つの圧縮比に対応する温度マップを用いて内挿あるいは外挿により行う他にも、様々な方法で行われ得る。例えば、いくつかの標準圧縮比に対応する温度マップを用意して、触媒ＯＢＤ実施時の実際の圧縮比に最も近い標準圧縮比のマップを選択することで、触媒温度推定が行われるようになっていてもよい。
【０１７９】
また、図１９に示されているように、上流側触媒２０５には触媒床温センサ３２３が装着され得る。この場合、上述の各フローチャートにおいて、触媒推定温度Ｔceに代えて、触媒床温センサ３２３による測定触媒床温Ｔcrが用いられてもよい。
【０１８０】
（８）触媒ＯＢＤ中の圧縮比の変更の禁止は、触媒ＯＢＤの実行開始から終了（触媒異常判定終了）までの全期間にわたって行われる必要はなく、例えば、少なくとも最大酸素吸蔵量Ｃmaxの取得中に、圧縮比の変更が禁止されれば充分である。
【０１８１】
（９）その他、特段に言及されていない変形例についても、本発明の本質的部分を変更しない範囲内において、本発明の技術的範囲に含まれることは当然である。
【０１８２】
さらに、本発明の課題を解決するための手段を構成する各要素における、作用・機能的に表現されている要素は、上述の実施形態や変形例にて開示されている具体的構造の他、当該作用・機能を実現可能ないかなる構造をも含む。
【図面の簡単な説明】
【０１８３】
【図１】本発明の一実施形態が適用されたシステム（車両等）の全体構成を示す概略構成図である。
【図２Ａ】図１に示されている上流側空燃比センサの出力特性を示すグラフである。
【図２Ｂ】図１に示されている下流側空燃比センサの出力特性を示すグラフである。
【図３】図１に示されている本実施形態のエンジン制御装置の動作（触媒ＯＢＤ条件判定）の具体例を示すフローチャートである。
【図４】図１に示されている本実施形態のエンジン制御装置の動作（触媒ＯＢＤ）の具体例を示すフローチャートである。
【図５】図４に示されている触媒ＯＢＤの実行の様子を示すグラフである。
【図６】図１に示されている本実施形態のエンジン制御装置の動作（触媒推定温度取得）の具体例を示すフローチャートである。
【図７】図１に示されている本実施形態のエンジン制御装置の動作（圧縮比制御）の具体例を示すフローチャートである。
【図８】図１に示されている本実施形態のエンジン制御装置の動作（圧縮比変更許可条件判定）の具体例を示すフローチャートである。
【図９】図１に示されている本実施形態のエンジン制御装置の動作（圧縮比変更許可条件判定）の他の具体例を示すフローチャートである。
【図１０】図１に示されている本実施形態のエンジン制御装置の動作（圧縮比変更許可条件判定）のさらに他の具体例を示すフローチャートである。
【図１１】図１に示されている本実施形態のエンジン制御装置の動作（圧縮比変更許可条件判定）のさらに他の具体例を示すフローチャートである。
【図１２】図１に示されている本実施形態のエンジン制御装置の動作（圧縮比変更許可条件判定）のさらに他の具体例を示すフローチャートである。
【図１３】図１に示されている本実施形態のエンジン制御装置の動作（圧縮比変更許可条件判定）のさらに他の具体例を示すフローチャートである。
【図１４】図１に示されている本実施形態のエンジン制御装置の動作（触媒ＯＢＤ中断条件判定）の具体例を示すフローチャートである。
【図１５】図１に示されている本実施形態のエンジン制御装置の動作（触媒ＯＢＤ中断条件判定）の他の具体例を示すフローチャートである。
【図１６】図１に示されている本実施形態のエンジン制御装置の動作（触媒ＯＢＤ中断条件判定）のさらに他の具体例を示すフローチャートである。
【図１７】図１に示されている本実施形態のエンジン制御装置の動作（触媒ＯＢＤ中断条件判定）のさらに他の具体例を示すフローチャートである。
【図１８】図１に示されている本実施形態のエンジン制御装置の動作（触媒異常判定）の一変形例を示すフローチャートである。
【図１９】図１に示されている本実施形態のエンジン制御装置の一変形例の構成を示す概略図である。
【符号の説明】
【０１８４】
Ｓ…システム
１…エンジン
１１…シリンダブロック        １２…シリンダヘッド        １３…クランクケース
１４…可変圧縮比機構          １４１…連結機構            １４２…駆動機構  
２…吸排気通路
２０２…排気通路              ２０５…上流側触媒          ２０６…下流側触媒  
３…エンジン制御装置
３００…ＥＣＵ                ３１８ｂ…下流側空燃比センサ  
３２１…車速・走行距離出力部  ３２２…警報装置
【図１】
2009264151.tif 000003
【図２Ａ】
2009264151.tif 000004
【図２Ｂ】
2009264151.tif 000005
【図３】
2009264151.tif 000006
【図４】
2009264151.tif 000007
【図５】
2009264151.tif 000008
【図６】
2009264151.tif 000009
【図７】
2009264151.tif 000010
【図８】
2009264151.tif 000011
【図９】
2009264151.tif 000012
【図１０】
2009264151.tif 000013
【図１１】
2009264151.tif 000014
【図１２】
2009264151.tif 000015
【図１３】
2009264151.tif 000016
【図１４】
2009264151.tif 000017
【図１５】
2009264151.tif 000018
【図１６】
2009264151.tif 000019
【図１７】
2009264151.tif 000020
【図１８】
2009264151.tif 000021
【図１９】
2009264151.tif 000022