(57)【要約】【課題】可変吸気カム位相機構及び可変排気カム位相機構を制御する際、両者の一方が故障状態にあるときでも、混合気の安定した燃焼状態を確保でき、運転性を向上させることができる内燃機関の制御装置を提供する。【解決手段】可変吸気カム位相機構12及び可変排気カム位相機構22を制御する内燃機関3の制御装置1はECU2を備える。ECU2は、吸気カム位相CAIN及び排気カム位相CAEXを算出し、算出した吸気カム位相CAIN及び排気カム位相CAEXに基づき、バルブオーバーラップ期間が正常時よりも長くなるような、可変吸気カム位相機構12及び可変排気カム位相機構22の一方の機構の故障状態が発生しているか否かを判定し(ステップ83，113)、一方の機構の故障状態が発生していると判定されたときに、他方の機構をバルブオーバーラップ期間が短くなるように制御する(ステップ8,10,11,13)。【選択図】図12
2016037878.tif 000002
【特許請求の範囲】
【請求項１】
吸気弁を開閉する吸気カムのクランクシャフトに対する位相である吸気カム位相を変更する可変吸気カム位相機構と、排気弁を開閉する排気カムのクランクシャフトに対する位相である排気カム位相を変更する可変排気カム位相機構と備え、当該吸気カム位相及び当該排気カム位相を変更することによって、前記吸気弁と前記排気弁とのバルブオーバーラップ期間を変更可能な内燃機関において、前記可変吸気カム位相機構及び前記可変排気カム位相機構を制御する内燃機関の制御装置であって、
前記吸気カム位相を取得する吸気カム位相取得手段と、
前記排気カム位相を取得する排気カム位相取得手段と、
前記取得された前記吸気カム位相及び前記取得された前記排気カム位相に基づき、前記バルブオーバーラップ期間が正常時よりも長くなるような、前記可変吸気カム位相機構及び前記可変排気カム位相機構の一方の機構の故障状態である第１故障状態が発生しているか否かを判定する第１故障判定手段と、
当該第１故障判定手段によって前記一方の機構の第１故障状態が発生していると判定されたときに、前記可変吸気カム位相機構及び前記可変排気カム位相機構の他方の機構を、前記バルブオーバーラップ期間が短くなるように制御する第１故障時制御手段と、
を備えることを特徴とする内燃機関の制御装置。
【請求項２】
前記第１故障時制御手段は、前記一方の機構の第１故障状態が発生しているときに、前記吸気カム位相及び前記排気カム位相のうちの、前記他方の機構によって変更される位相が、当該位相の可変範囲において前記バルブオーバーラップ期間を最短とする値になるように、前記他方の機構を制御することを特徴とする請求項１に記載の内燃機関の制御装置。
【請求項３】
前記吸気カム位相及び前記排気カム位相に基づき、前記バルブオーバーラップ期間が正常時よりも短くなるような、前記可変吸気カム位相機構及び前記可変排気カム位相機構の一方の機構の故障状態である第２故障状態が発生しているか否かを判定する第２故障判定手段と、
当該第２故障判定手段によって前記一方の機構の第２故障状態が発生していると判定されたときに、前記可変吸気カム位相機構及び前記可変排気カム位相機構の他方の機構を、通常制御する第２故障時制御手段と、
をさらに備えることを特徴とする請求項１又は２に記載の内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、吸気カム位相及び排気カム位相をそれぞれ変更する可変吸気カム位相機構及び可変排気カム位相機構を制御する内燃機関の制御装置において、可変吸気カム位相機構及び可変排気カム位相機構の故障状態が発生したときの制御手法に関する。
【背景技術】
【０００２】
従来、内燃機関の制御装置として、特許文献１に記載されたものが知られている。この内燃機関には、油圧駆動式の可変吸気カム位相機構及び可変排気カム位相機構が設けられている。この可変吸気カム位相機構では、吸気側油圧制御弁からの供給油圧が変更されるのに伴って、吸気弁を開閉する吸気カムのクランクシャフトに対する位相である吸気カム位相が、所定の最進角値と所定の最遅角値との間で変更される。
【０００３】
また、可変排気カム位相機構では、排気側油圧制御弁からの供給油圧が変更されるのに伴って、排気弁を開閉する排気カムのクランクシャフトに対する位相である排気カム位相が、所定の最進角値と所定の最遅角値との間で変更される。この場合、吸気カム位相が最進角値に設定され、排気カム位相が最遅角値に設定されているときに、吸気弁と排気弁のバルブオーバーラップ期間が最大となる。
【０００４】
この制御装置では、通常制御中、可変吸気カム位相機構及び可変排気カム位相機構を制御することで、吸気カム位相及び排気カム位相が最適な値に制御されるとともに、吸気側及び排気側油圧制御弁の一方における異物の噛み込み状態が発生したときには、吸気側及び排気側の噛み込み状態が発生した方の異物除去制御と、他方の位相保持制御とが実行される。例えば、排気側油圧制御弁における異物の噛み込み状態が発生したときには、排気側の異物除去制御と吸気側の位相保持制御とが実行される。
【０００５】
この排気側の異物除去制御では、排気側油圧制御弁に供給される制御入力信号のデューティ比が、０％と１００％との間で反転を繰り返すように制御されることによって、排気側油圧制御弁のスプール弁が、排気カム位相を最進角値に設定する位置と最遅角値に設定する位置との間での往復動作を繰り返すように、駆動される。それにより、排気側油圧制御弁における異物の噛み込み状態が解消される。また、吸気側の位相保持制御では、吸気カム位相をその最遅角値よりも若干、進角側の所定値αに保持するように、吸気側油圧制御弁が制御される。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−３１７４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記従来の内燃機関の制御装置によれば、吸気側又は排気側の異物除去制御を実行したにもかかわらず、異物の除去に失敗した場合、そのような状態で、通常制御を実行すると、可変吸気カム位相機構又は可変排気カム位相機構が正常に動作しないことに起因して、吸気カム位相又は排気カム位相が最適な値に制御されず、バルブオーバーラップ期間が不適切な状態に保持されるおそれがある。特に、バルブオーバーラップ期間が長すぎる状態に保持された場合には、内部ＥＧＲ量が過大になったり、掃気ガス量が過大になったりしてしまう。このように、内部ＥＧＲ量が過大になったときには、混合気の燃焼状態が不安定になったり、最悪の場合には、失火したりするおそれがあるとともに、掃気ガス量が過大になった場合には、機関出力が必要以上に上昇し、運転性が悪化するおそれがある。以上の問題は、可変吸気カム位相機構及び可変排気カム位相機構として、油圧駆動式のものに代えて、電動機とギヤ機構を組み合わせた電動式のものを用いた場合にも発生する。
【０００８】
本発明は、上記課題を解決するためになされたもので、可変吸気カム位相機構及び可変排気カム位相機構を制御する際、両者の一方が故障状態にあるときでも、混合気の安定した燃焼状態を確保でき、運転性を向上させることができる内燃機関の制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、請求項１に係る発明は、吸気弁４を開閉する吸気カム１１ａのクランクシャフト３ｃに対する位相である吸気カム位相ＣＡＩＮを変更する可変吸気カム位相機構１２と、排気弁５を開閉する排気カム２１ａのクランクシャフト３ｃに対する位相である排気カム位相ＣＡＥＸを変更する可変排気カム位相機構２２と備え、吸気カム位相ＣＡＩＮ及び排気カム位相ＣＡＥＸを変更することによって、吸気弁４と排気弁５とのバルブオーバーラップ期間を変更可能な内燃機関３において、可変吸気カム位相機構１２及び可変排気カム位相機構２２を制御する内燃機関３の制御装置１であって、吸気カム位相ＣＡＩＮを取得する吸気カム位相取得手段（ＥＣＵ２、クランク角センサ３０、吸気カム角センサ３２）と、排気カム位相ＣＡＥＸを取得する排気カム位相取得手段（ＥＣＵ２、クランク角センサ３０、排気カム角センサ３３）と、取得された吸気カム位相ＣＡＩＮ及び取得された排気カム位相ＣＡＥＸに基づき、バルブオーバーラップ期間が正常時よりも長くなるような、可変吸気カム位相機構１２及び可変排気カム位相機構２２の一方の機構の故障状態である第１故障状態が発生しているか否かを判定する第１故障判定手段（ＥＣＵ２、ステップ１２０〜１２２，１５０〜１５２）と、第１故障判定手段によって一方の機構の第１故障状態が発生していると判定されたときに、可変吸気カム位相機構１２及び可変排気カム位相機構２２の他方の機構を、バルブオーバーラップ期間が短くなるように制御する第１故障時制御手段（ＥＣＵ２、ステップ８，１０，１１，１３）と、を備えることを特徴とする。
【００１０】
この内燃機関の制御装置によれば、取得された吸気カム位相及び取得された排気カム位相に基づき、バルブオーバーラップ期間が正常時よりも長くなるような、可変吸気カム位相機構及び可変排気カム位相機構の一方の機構の故障状態である第１故障状態が発生しているか否かが判定され、一方の機構の第１故障状態が発生していると判定されたときに、可変吸気カム位相機構及び可変排気カム位相機構の他方の機構が、バルブオーバーラップ期間が短くなるように制御される。それにより、可変吸気カム位相機構及び可変排気カム位相機構を制御する際、両者の一方の機構の第１故障状態が発生したときでも、他方の機構をバルブオーバーラップ期間が短くなるように制御することによって、バルブオーバーラップ期間が長すぎる状態になるのを回避でき、内部ＥＧＲ量が過大になったり、掃気ガス量が過大になったりするのを回避することができる。それにより、混合気の安定した燃焼状態を確保でき、運転性を向上させることができる。その結果、商品性を向上させることができる（なお、本明細書における「吸気カム位相の取得」及び「排気カム位相の取得」の「取得」は、これらの値を他のパラメータに基づいて算出することや、これらの値をセンサなどによって直接検出することを意味する）。
【００１１】
請求項２に係る発明は、請求項１に記載の内燃機関３の制御装置１において、第１故障時制御手段は、一方の機構の第１故障状態が発生しているときに、吸気カム位相ＣＡＩＮ及び排気カム位相ＣＡＥＸのうちの、他方の機構によって変更される位相が、位相の可変範囲においてバルブオーバーラップ期間を最短とする値（原点値ＣＡＩＮ＿０，ＣＡＥＸ＿０）になるように、他方の機構を制御することを特徴とする。
【００１２】
この内燃機関の制御装置によれば、一方の機構の第１故障状態が発生しているときに、吸気カム位相及び排気カム位相のうちの、他方の機構によって変更される位相が、位相の可変範囲においてバルブオーバーラップ期間を最短とする値になるように、他方の機構が制御されるので、バルブオーバーラップ期間が長すぎる状態になるのを確実に回避することができる。それにより、商品性をさらに向上させることができる。
【００１３】
請求項３に係る発明は、請求項１又は２に記載の内燃機関３の制御装置１において、吸気カム位相ＣＡＩＮ及び排気カム位相ＣＡＥＸに基づき、バルブオーバーラップ期間が正常時よりも短くなるような、可変吸気カム位相機構１２及び可変排気カム位相機構２２の一方の機構の故障状態である第２故障状態が発生しているか否かを判定する第２故障判定手段（ＥＣＵ２、ステップ５０〜５９，８０〜８９）と、第２故障判定手段によって一方の機構の第２故障状態が発生していると判定されたときに、可変吸気カム位相機構１２及び可変排気カム位相機構２２の他方の機構を、通常制御する第２故障時制御手段（ＥＣＵ２、ステップ１６０，１６２，１６３，１６５）と、をさらに備えることを特徴とする。
【００１４】
この内燃機関の制御装置によれば、吸気カム位相及び排気カム位相に基づき、バルブオーバーラップ期間が正常時よりも短くなるような、可変吸気カム位相機構及び可変排気カム位相機構の一方の機構の故障状態である第１故障状態が発生しているか否かが判定され、一方の機構の第２故障状態が発生していると判定されたときには、可変吸気カム位相機構及び可変排気カム位相機構の他方の機構が通常制御される。この場合、一方の機構の第２故障状態が発生しているときには、バルブオーバーラップ期間が正常時よりも長くなることがないので、他方の機構をバルブオーバーラップ期間が正常時よりも短くなるように制御する必要がない。したがって、一方の機構の第２故障状態が発生しているときに、他方の機構を通常制御することによって、バルブオーバーラップ期間が長すぎる状態になるのを確実に回避しながら、正常時と同様に、混合気の安定した燃焼状態を確保でき、良好な運転性を確保することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施形態に係る制御装置及びこれを適用した内燃機関の構成を模式的に示す図である。
【図２】可変吸気カム位相機構により吸気カム位相が最進角値（実線）及び原点値（破線）に設定されているときの吸気弁のバルブリフト曲線と、可変排気カム位相機構により排気カム位相が最遅角値（実線）及び原点値（破線）に設定されているときの排気弁のバルブリフト曲線をそれぞれ示す図である。
【図３】カム位相制御処理を示すフローチャートである。
【図４】動作判定処理を示すフローチャートである。
【図５】吸気側動作判定処理を示すフローチャートである。
【図６】吸気側第２故障判定処理を示すフローチャートである。
【図７】排気側動作判定処理を示すフローチャートである。
【図８】排気側第２故障判定処理を示すフローチャートである。
【図９】吸気側クリーニング制御処理を示すフローチャートである。
【図１０】吸気側第１故障判定処理を示すフローチャートである。
【図１１】排気側クリーニング制御処理を示すフローチャートである。
【図１２】排気側第１故障判定処理を示すフローチャートである。
【図１３】通常制御処理を示すフローチャートである。
【図１４】可変吸気カム位相機構で第１故障状態が発生し、吸気側クリーニング制御処理を実行した場合において、第１故障状態が解消されたときの制御結果の一例を示すタイミングチャートである。
【図１５】可変吸気カム位相機構で第１故障状態が発生し、吸気側クリーニング制御処理を実行した場合において、第１故障状態が解消されなかったときの制御結果の一例を示すタイミングチャートである。
【発明を実施するための形態】
【００１６】
以下、図面を参照しながら、本発明の一実施形態に係る内燃機関の制御装置について説明する。図１に示すように、この制御装置１は、ＥＣＵ２を備えており、このＥＣＵ２は、後述するように、内燃機関（以下「エンジン」という）３の運転状態に応じて、カム位相制御処理などの各種の制御処理を実行する。
【００１７】
エンジン３は、４組の気筒３ａ及びピストン３ｂ（１組のみ図示）を有する直列４気筒ガソリンエンジンであり、図示しない車両に搭載されている。また、エンジン３は、気筒３ａごとに設けられた吸気弁４（１つのみ図示）と、気筒３ａごとに設けられた排気弁５（１つのみ図示）と、吸気弁４を開閉駆動する吸気動弁機構１０と、排気弁５を開閉駆動する排気動弁機構２０などを備えている。
【００１８】
この吸気動弁機構１０は、吸気カム１１ａによって吸気弁４を駆動する吸気カムシャフト１１と、可変吸気カム位相機構１２などで構成されている。この可変吸気カム位相機構１２は、吸気カム１１ａすなわち吸気カムシャフト１１のクランクシャフト３ｃに対する相対的な位相（以下「吸気カム位相」という）ＣＡＩＮを無段階に（すなわち連続的に）進角側又は遅角側に変更することで、吸気弁４のバルブタイミングを変更するものであり、吸気カムシャフト１１の吸気スプロケット（図示せず）側の端部に設けられている。
【００１９】
この可変吸気カム位相機構１２は、油圧駆動式のものであり、具体的には、本出願人が特開２００７−１００５２２号公報などで提案済みのものと同様に構成されているので、その詳細な説明は省略するが、吸気カム位相制御弁１２ａ、油圧回路（図示せず）及びリターンスプリング（図示せず）などを備えている。この吸気カム位相制御弁１２ａは、ソレノイドとスプール弁（いずれも図示せず）を組み合わせたものである。
【００２０】
この吸気カム位相制御弁１２ａでは、ＥＣＵ２からの制御入力信号が入力されたときに、ソレノイドが制御入力信号のデューティ比に応じて駆動されることで、スプール弁が駆動される。それに伴い、油圧回路から可変吸気カム位相機構１２の進角室及び遅角室に供給される油圧が変更される。その結果、吸気カム位相ＣＡＩＮが、所定の原点値ＣＡＩＮ＿０と所定の最進角値ＣＡＩＮ＿ＡＤＶとの間で変更されることによって、吸気弁４のバルブタイミングが、図２に破線で示す原点タイミングと、図２に実線で示す最進角タイミングとの間で無段階に変更される。この場合、原点値ＣＡＩＮ＿０は値０に設定され、最進角値ＣＡＩＮ＿ＡＤＶは、所定の正値に設定されている。
【００２１】
以上のように、吸気カム位相ＣＡＩＮは、原点値ＣＡＩＮ＿０と最進角値ＣＡＩＮ＿ＡＤＶとの間を可変範囲とするものであり、吸気カム位相ＣＡＩＮが原点値ＣＡＩＮ＿０にあるときに、吸気弁４と排気弁５のバルブオーバーラップ期間が最短になるとともに、吸気カム位相ＣＡＩＮが原点値ＣＡＩＮ＿０から増大するほど、吸気弁４のバルブタイミングが原点タイミングから進角側に変更されることで、バルブオーバーラップ期間がより長くなる。
【００２２】
また、ＥＣＵ２では、吸気カム位相制御弁１２ａに供給する制御入力信号のデューティ比が、０〜１００％の間で設定される。この場合、制御入力信号のデューティ比が０％のときには、吸気カム位相制御弁１２ａへの制御入力信号の供給が停止され、それにより、前述したリターンスプリングの付勢力によって、吸気カム位相ＣＡＩＮが原点値ＣＡＩＮ＿０に保持される。すなわち、吸気カム位相制御弁１２ａへの制御入力信号の供給が停止されているときには、可変吸気カム位相機構１２の構造に起因して、吸気カム位相ＣＡＩＮは、原点値ＣＡＩＮ＿０よりも遅角側に変更されることがなく、原点値ＣＡＩＮ＿０に保持される。
【００２３】
一方、排気動弁機構２０は、排気カム２１ａによって排気弁５を駆動する排気カムシャフト２１と、可変排気カム位相機構２２などで構成されている。この可変排気カム位相機構２２は、排気カム２１ａすなわち排気カムシャフト２１のクランクシャフト３ｃに対する相対的な位相（以下「排気カム位相」という）ＣＡＥＸを無段階に（すなわち連続的に）進角側又は遅角側に変更することで、排気弁５のバルブタイミングを変更するものであり、排気カムシャフト２１の排気スプロケット（図示せず）側の端部に設けられている。
【００２４】
可変排気カム位相機構２２は、上述した可変吸気排気カム位相機構１２と同様に構成された油圧駆動式のものであり、排気カム位相制御弁２２ａ、油圧回路（図示せず）及びリターンスプリング（図示せず）などを備えている。この排気カム位相制御弁２２ａも、吸気カム位相制御弁１２ａと同様に、ソレノイドとスプール弁（いずれも図示せず）を組み合わせたものである。
【００２５】
この排気カム位相制御弁２２ａでは、ＥＣＵ２からの制御入力信号が入力されたときに、ソレノイドが制御入力信号のデューティ比に応じて駆動されることで、スプール弁が駆動され、それに伴って、油圧回路から可変吸気カム位相機構１２の進角室及び遅角室に供給される油圧が変更される。その結果、排気カム位相ＣＡＥＸが、所定の原点値ＣＡＥＸ＿０と所定の最遅角値ＣＡＥＸ＿ＲＥＴとの間で変更されることによって、排気弁５のバルブタイミングが、図２に破線で示す原点タイミングと、図２に実線で示す最遅角タイミングとの間で無段階に変更される。この場合、原点値ＣＡＥＸ＿０は値０に設定され、最遅角値ＣＡＥＸ＿ＲＥＴは、所定の正値に設定されている。
【００２６】
以上のように、排気カム位相ＣＡＥＸは、原点値ＣＡＥＸ＿０と最遅角値ＣＡＥＸ＿ＲＥＴとの間を可変範囲とするものであり、排気カム位相ＣＡＥＸが原点値ＣＡＥＸ＿０にあるときに、バルブオーバーラップ期間が最短になるとともに、排気カム位相ＣＡＥＸが最遅角値ＣＡＥＸ＿ＲＥＴから増大するほど、排気弁５のバルブタイミングが原点タイミングから遅角側に変更されることで、バルブオーバーラップ期間がより長くなる。
【００２７】
また、ＥＣＵ２では、排気カム位相制御弁２２ａに供給する制御入力信号のデューティ比が、０〜１００％の間で設定される。この場合、制御入力信号のデューティ比が０％のときには、排気カム位相制御弁２２ａへの制御入力信号の供給が停止され、それにより、前述したリターンスプリングの付勢力によって、排気カム位相ＣＡＥＸが原点値ＣＡＥＸ＿０に保持される。すなわち、排気カム位相制御弁２２ａへの制御入力信号の供給が停止されているときには、可変排気カム位相機構２２の構造に起因して、排気カム位相ＣＡＥＸは、原点値ＣＡＥＸ＿０よりも進角側に変更されることがなく、原点値ＣＡＥＸ＿０に保持される。
【００２８】
また、エンジン３には、点火プラグ６、燃料噴射弁７及びクランク角センサ３０が設けられており、これらの点火プラグ６及び燃料噴射弁７はいずれも、気筒３ａごとに設けられている（いずれも１つのみ図示）。
【００２９】
点火プラグ６は、エンジン３のシリンダヘッドに取り付けられており、ＥＣＵ２に電気的に接続されているとともに、ＥＣＵ２によって、点火プラグ６の放電タイミングが制御される。すなわち、混合気の点火時期が制御される。また、燃料噴射弁７は、各気筒３ａ内に燃料を直接噴射するようにシリンダヘッドに取り付けられている。燃料噴射弁７は、ＥＣＵ２に電気的に接続されており、ＥＣＵ２によって、燃料噴射弁７による燃料の噴射量及び噴射時期が制御される。
【００３０】
一方、クランク角センサ３０は、クランクシャフト３ｃの回転に伴い、パルス信号であるＣＲＫ信号をＥＣＵ２に出力する。このＣＲＫ信号は、所定のクランク角（例えば１゜）ごとに１パルスが出力され、ＥＣＵ２は、このＣＲＫ信号に基づき、エンジン３の回転数（以下「エンジン回転数」という）ＮＥを算出する。
【００３１】
さらに、ＥＣＵ２には、アクセル開度センサ３１、吸気カム角センサ３２及び排気カム角センサ３３が電気的に接続されている。このアクセル開度センサ３１は、車両の図示しないアクセルペダルの踏み込み量（以下「アクセル開度」という）ＡＰを検出して、それを表す検出信号をＥＣＵ２に出力する。
【００３２】
また、吸気カム角センサ３２は、吸気カムシャフト１１の可変吸気カム位相機構１２と反対側の端部に設けられており、吸気カムシャフト１１の回転に伴い、パルス信号である吸気ＣＡＭ信号を所定のカム角（例えば１゜）ごとにＥＣＵ２に出力する。ＥＣＵ２は、この吸気ＣＡＭ信号及び前述したＣＲＫ信号に基づき、吸気カム位相ＣＡＩＮを算出する。
【００３３】
さらに、排気カム角センサ３３は、排気カムシャフト２１の可変排気カム位相機構２２と反対側の端部に設けられており、排気カムシャフト２１の回転に伴い、パルス信号である排気ＣＡＭ信号を所定のカム角（例えば１゜）ごとにＥＣＵ２に出力する。ＥＣＵ２は、この排気ＣＡＭ信号及び前述したＣＲＫ信号に基づき、排気カム位相ＣＡＥＸを算出する。
【００３４】
なお、本実施形態では、クランク角センサ３０が吸気カム位相取得手段及び排気カム位相取得手段に、吸気カム角センサ３２が吸気カム位相取得手段に、排気カム角センサ３３が排気カム位相取得手段にそれぞれ相当する。
【００３５】
一方、ＥＣＵ２は、ＣＰＵ、ＲＡＭ、ＥＥＰＲＯＭ、ＲＯＭ及びＩ／Ｏインターフェース（いずれも図示せず）などからなるマイクロコンピュータで構成されており、以上の各種のセンサ３０〜３３の検出信号などに基づいて、以下に述べるように、カム位相制御処理などを実行する。なお、本実施形態では、ＥＣＵ２が、吸気カム位相取得手段、排気カム位相取得手段、第１故障判定手段、第１故障時制御手段、第２故障判定手段及び第２故障時制御手段に相当する。
【００３６】
次に、図３を参照しながら、カム位相制御処理について説明する。このカム位相制御処理は、可変吸気カム位相機構１２及び可変排気カム位相機構２２を制御することによって、吸気カム位相ＣＡＩＮ及び排気カム位相ＣＡＥＸを制御するものであり、ＥＣＵ２によって所定の制御周期ΔＴ（例えば１０ｍｓｅｃ）で実行される。
【００３７】
なお、以下に述べる制御処理で設定される各種のフラグに関して、２つのフラグＦ＿ＩＮ＿ＮＧ，Ｆ＿ＥＸ＿ＮＧの値は、イグニッション・スイッチのＯＮ／ＯＦＦ状態にかかわらず、ＥＥＰＲＯＭ内に記憶・保持されるとともに、それら以外のフラグの値は、イグニッション・スイッチがＯＮ状態にあるときにはＲＡＭ内に記憶され、イグニッション・スイッチがＯＦＦされたときには「０」にリセットされるものとする。
【００３８】
図３に示すように、まず、ステップ１（図では「Ｓ１」と略す。以下同じ）で、動作判定処理を実行する。この動作判定処理は、可変吸気カム位相機構１２及び可変排気カム位相機構２２が正常に動作しているか否かを判定するものであり、具体的には、図４に示すように実行される。
【００３９】
同図に示すように、まず、ステップ２０で、吸気側クリーニング条件フラグＦ＿ＩＮ＿ＣＬＮが「１」であるか否かを判別する。この吸気側クリーニング条件フラグＦ＿ＩＮ＿ＣＬＮは、後述する吸気側クリーニング制御処理の実行条件が成立しているか否かを表すものである。
【００４０】
ステップ２０の判別結果がＹＥＳで、吸気側クリーニング制御処理の実行条件が成立しているときには、そのまま本処理を終了する。
【００４１】
一方、ステップ２０の判別結果がＮＯのときには、ステップ２１に進み、吸気側第１故障フラグＦ＿ＩＮ＿ＮＧ１が「１」であるか否かを判別する。この吸気側第１故障フラグＦ＿ＩＮ＿ＮＧ１は、可変吸気カム位相機構１２において吸気側第１故障状態が発生しているか否かを表すものであり、この吸気側第１故障状態は、吸気カム位相ＣＡＩＮが後述する所定の異常進角判定値ＣＡＩＮ＿ＥＲＲ１以上に進角した値に保持されている故障状態に相当する。
【００４２】
ステップ２１の判別結果がＹＥＳで、吸気側第１故障状態が発生しているときには、そのまま本処理を終了する。
【００４３】
一方、ステップ２１の判別結果がＮＯのときには、ステップ２２に進み、吸気側第２故障フラグＦ＿ＩＮ＿ＮＧ２が「１」であるか否かを判別する。この吸気側第２故障フラグＦ＿ＩＮ＿ＮＧ２は、可変吸気カム位相機構１２において吸気側第２故障状態が発生しているか否かを表すものであり、この吸気側第２故障状態は、吸気カム位相ＣＡＩＮが原点値ＣＡＩＮ＿０よりも大きい値になるような制御入力信号が吸気カム位相制御弁１２ａに供給されているにもかかわらず、吸気カム位相ＣＡＩＮが原点値ＣＡＩＮ＿０に固着・保持されている故障状態に相当する。
【００４４】
このステップ２２の判別結果がＹＥＳで、吸気側第２故障状態が発生しているときには、そのまま本処理を終了する。
【００４５】
一方、ステップ２２の判別結果がＮＯのときには、ステップ２３に進み、排気側クリーニング条件フラグＦ＿ＥＸ＿ＣＬＮが「１」であるか否かを判別する。この排気側クリーニング条件フラグＦ＿ＥＸ＿ＣＬＮは、排気側クリーニング制御処理の実行条件が成立しているか否かを表すものである。
【００４６】
ステップ２３の判別結果がＹＥＳで、排気側クリーニング制御処理の実行条件が成立しているときには、そのまま本処理を終了する。
【００４７】
一方、ステップ２３の判別結果がＮＯのときには、ステップ２４に進み、排気側第１故障フラグＦ＿ＥＸ＿ＮＧ１が「１」であるか否かを判別する。この排気側第１故障フラグＦ＿ＥＸ＿ＮＧ１は、可変排気カム位相機構２２において排気側第１故障状態が発生しているか否かを表すものであり、この排気側第１故障状態は、排気カム位相ＣＡＥＸが後述する所定の異常遅角判定値ＣＡＥＸ＿ＥＲＲ１以上に遅角した値に保持されている故障状態に相当する。
【００４８】
ステップ２４の判別結果がＹＥＳで、排気側第１故障状態が発生しているときには、そのまま本処理を終了する。
【００４９】
一方、ステップ２４の判別結果がＮＯのときには、ステップ２５に進み、排気側第２故障フラグＦ＿ＥＸ＿ＮＧ２が「１」であるか否かを判別する。この排気側第２故障フラグＦ＿ＥＸ＿ＮＧ２は、可変排気カム位相機構２２において排気側第２故障状態が発生しているか否かを表すものであり、この排気側第２故障状態は、排気カム位相ＣＡＥＸが原点値ＣＡＥＸ＿０よりも大きい値になるような制御入力信号が排気カム位相制御弁２２ａに供給されているにもかかわらず、排気カム位相ＣＡＥＸが原点値ＣＡＥＸ＿０に固着・保持されている故障状態に相当する。
【００５０】
このステップ２５の判別結果がＹＥＳで、排気側第２故障状態が発生しているときには、そのまま本処理を終了する。
【００５１】
一方、ステップ２５の判別結果がＮＯのときには、ステップ２６に進み、排気側第１遅延フラグＦ＿ＥＸ＿ＤＬＹ１又は排気側第２遅延フラグＦ＿ＥＸ＿ＤＬＹ２が「１」であるか否かを判別する。この判別結果がＹＥＳで、後述する排気側の第１遅延処理又は排気側の第２遅延処理を実行中であるときには、後述するステップ２９に進む。
【００５２】
一方、ステップ２６の判別結果がＮＯのときには、ステップ２７に進み、吸気側動作判定処理を実行する。この吸気側動作判定処理は、可変吸気カム位相機構１２の異常動作状態の有無を判定するものであり、具体的には、図５に示すように実行される。
【００５３】
同図に示すように、まず、ステップ４０で、吸気カム位相偏差ＤＣＡＩＮが所定の異常判定値ＤＣＡＩＮ＿ＥＲＲ以上であるか否かを判別する。この吸気カム位相偏差ＤＣＡＩＮは、後述する目標吸気カム位相ＣＡＩＮ＿ＣＭＤと吸気カム位相ＣＡＩＮとの偏差の絶対値｜ＣＡＩＮ＿ＣＭＤ−ＣＡＩＮ｜であり、この異常判定値ＤＣＡＩＮ＿ＥＲＲは、吸気カム位相偏差ＤＣＡＩＮがこれを上回っているときに、可変吸気カム位相機構１２が異常動作状態にあると推定される正の所定値に設定されている。
【００５４】
ステップ４０の判別結果がＮＯで、可変吸気カム位相機構１２が正常であるときには、ステップ４８に進み、吸気側の第１遅延処理を実行中でないことを表すために、吸気側第１遅延フラグＦ＿ＩＮ＿ＤＬＹ１を「０」に設定した後、本処理を終了する。
【００５５】
一方、ステップ４０の判別結果がＹＥＳのときには、ステップ４１に進み、吸気カム位相ＣＡＩＮが所定の異常進角判定値ＣＡＩＮ＿ＥＲＲ１以上であるか否かを判別する。この異常進角判定値ＣＡＩＮ＿ＥＲＲ１は、可変吸気カム位相機構１２が正常な状態にあるときには、ＣＡＩＮ＜ＣＡＩＮ＿ＥＲＲ１が常に成立するとともに、例えば、吸気カム位相制御弁１２ａにおける異物の噛み込み状態が発生することで、可変吸気カム位相機構１２が異常進角状態にあるときにのみ、ＣＡＩＮ≧ＣＡＩＮ＿ＥＲＲ１が成立するような値に設定されている。
【００５６】
このステップ４１の判別結果がＹＥＳで、可変吸気カム位相機構１２が異常進角状態にあるときには、ステップ４２に進み、吸気側第１遅延フラグＦ＿ＩＮ＿ＤＬＹ１が「１」であるか否かを判別する。この判別結果がＮＯで、吸気側の第１遅延処理を実行中でないときには、ステップ４３に進み、吸気側第１遅延カウンタの計数値ＣＴ１を所定の吸気側第１遅延値ＩＮ＿ＤＬＹ１に設定する。
【００５７】
次いで、ステップ４４に進み、吸気側の第１遅延処理を実行中であることを表すために、吸気側第１遅延フラグＦ＿ＩＮ＿ＤＬＹ１を「１」に設定する。
【００５８】
このように、ステップ４４で、吸気側第１遅延フラグＦ＿ＩＮ＿ＤＬＹ１が「１」に設定されると、次回以降の制御タイミングで、前述したステップ４２の判別結果がＹＥＳとなり、その場合には、ステップ４５に進み、吸気側第１遅延カウンタの計数値ＣＴ１を、その前回値ＣＴ１ｚから値１を減算した値（ＣＴ１ｚ−１）に設定する。すなわち、吸気側第１遅延カウンタの計数値ＣＴ１を値１デクリメントする。
【００５９】
以上のステップ４４又は４５に続くステップ４６で、吸気側第１遅延カウンタの計数値ＣＴ１が値０であるか否かを判別する。この判別結果がＮＯで、ＣＴ１≠０であるときには、そのまま本処理を終了する。
【００６０】
一方、ステップ４６の判別結果がＹＥＳで、ＣＡＩＮ≧ＣＡＩＮ＿ＥＲＲ１が成立している状態が値ΔＴ・ＩＮ＿ＤＬＹ１に相当する時間分、継続したときには、可変吸気カム位相機構１２の異常進角状態が続いていることで、吸気側クリーニング制御処理を実行すべきであると判定して、それを表すために、ステップ４７に進み、吸気側クリーニング条件フラグＦ＿ＩＮ＿ＣＬＮを「１」に設定する。
【００６１】
次いで、前述したステップ４８に進み、吸気側の第１遅延処理が終了したことを表すために、吸気側第１遅延フラグＦ＿ＩＮ＿ＤＬＹ１を「０」に設定した後、本処理を終了する。
【００６２】
一方、前述したステップ４１の判別結果がＮＯで、ＣＡＩＮ＜ＣＡＩＮ＿ＥＲＲ１が成立しているときには、ステップ４９に進み、吸気側第２故障判定処理を実行する。
【００６３】
この吸気側第２故障判定処理は、前述した吸気側第２故障状態が発生しているか否かを判別するものであり、具体的には、図６に示すように実行される。
【００６４】
同図に示すように、まず、ステップ５０で、吸気カム位相ＣＡＩＮが所定の原点固着判定値ＣＡＩＮ＿ＥＲＲ２以下であるか否かを判別する。この所定の原点固着判定値ＣＡＩＮ＿２は、原点値ＣＡＩＮ＿０よりも若干、大きい値に設定されている。
【００６５】
この判別結果がＮＯで、ＣＡＩＮ＞ＣＡＩＮ＿ＥＲＲ２であるときには、吸気側の第２遅延処理を実行中でないことを表すために、ステップ６０に進み、吸気側第２遅延フラグＦ＿ＩＮ＿ＤＬＹ２を「０」に設定した後、本処理を終了する。
【００６６】
一方、ステップ５０の判別結果がＹＥＳのときには、ステップ５１に進み、吸気側第２遅延フラグＦ＿ＩＮ＿ＤＬＹ２が「１」であるか否かを判別する。この判別結果がＮＯで、吸気側の第２遅延処理を実行中でないときには、ステップ５２に進み、吸気側第２遅延カウンタの計数値ＣＴ２を所定の吸気側第２遅延値ＩＮ＿ＤＬＹ２に設定する。
【００６７】
次いで、ステップ５３に進み、吸気側の第２遅延処理を実行中であることを表すために、吸気側第２遅延フラグＦ＿ＩＮ＿ＤＬＹ２を「１」に設定する。
【００６８】
このように、ステップ５３で、吸気側第２遅延フラグＦ＿ＩＮ＿ＤＬＹ２が「１」に設定されると、次回以降の制御タイミングで、前述したステップ５１の判別結果がＹＥＳとなり、その場合には、ステップ５４に進み、吸気側第２遅延カウンタの計数値ＣＴ２を、その前回値ＣＴ２ｚから値１を減算した値（ＣＴ２ｚ−１）に設定する。
【００６９】
以上のステップ５３又は５４に続くステップ５５で、吸気カム位相偏差ＤＣＡＩＮの積算値である積算吸気カム位相偏差Ｓ＿ＤＣＡＩＮを、その前回値Ｓ＿ＤＣＡＩＮｚと吸気カム位相偏差ＤＣＡＩＮの和Ｓ＿ＤＣＡＩＮｚ＋ＤＣＡＩＮに設定する。この場合、積算吸気カム位相偏差の前回値Ｓ＿ＤＣＡＩＮｚの初期値は値０に設定される。
【００７０】
次いで、ステップ５６に進み、吸気側第２遅延カウンタの計数値ＣＴ２が値０であるか否かを判別する。この判別結果がＮＯで、ＣＴ２≠０であるときには、そのまま本処理を終了する。
【００７１】
一方、ステップ５６の判別結果がＹＥＳで、ＣＡＩＮ≦ＣＡＩＮ＿ＥＲＲ２が成立している時間が値ΔＴ・ＩＮ＿ＤＬＹ２分、継続したときには、ステップ５７に進み、積算吸気カム位相偏差Ｓ＿ＤＣＡＩＮが所定の第２故障判定値Ｓ＿ＥＲＲ２以上であるか否かを判別する。
【００７２】
この判別結果がＹＥＳで、Ｓ＿ＤＣＡＩＮ≧Ｓ＿ＥＲＲ２であるときには、吸気側第２故障状態が発生していると判定して、それを表すために、ステップ５８に進み、吸気側第２故障フラグＦ＿ＩＮ＿ＮＧ２を「１」に設定する。
【００７３】
一方、ステップ５７の判別結果がＮＯで、Ｓ＿ＤＣＡＩＮ＜Ｓ＿ＥＲＲ２であるときには、吸気側第２故障状態が発生していないと判定して、それを表すために、ステップ５９に進み、吸気側第２故障フラグＦ＿ＩＮ＿ＮＧ２を「０」に設定する。
【００７４】
以上のステップ５８又は５９に続くステップ６０で、吸気側の第２遅延処理を終了したことを表すために、吸気側第２遅延フラグＦ＿ＩＮ＿ＤＬＹ２を「０」に設定した後、本処理を終了する。
【００７５】
図５に戻り、ステップ４９で、吸気側第２故障判定処理を以上のように実行した後、図５の吸気側動作判定処理を終了する。
【００７６】
図４に戻り、ステップ２７で、以上のように吸気側動作判定処理を実行した後、ステップ２８に進み、吸気側第１遅延フラグＦ＿ＩＮ＿ＤＬＹ１又は吸気側第２遅延フラグＦ＿ＩＮ＿ＤＬＹ２が「１」であるか否かを判別する。この判別結果がＹＥＳで、吸気側の第１遅延処理又は吸気側の第２遅延処理を実行中であるときには、そのまま本処理を終了する。
【００７７】
一方、ステップ２８の判別結果がＮＯのとき、又は前述したステップ２６の判別結果がＹＥＳのときには、ステップ２９に進み、排気側動作判定処理を実行する。この排気側動作判定処理は、可変排気カム位相機構２２の異常動作状態の有無を判定するものであり、具体的には、図７に示すように実行される。
【００７８】
同図に示すように、まず、ステップ７０で、排気カム位相偏差ＤＣＡＥＸが所定の異常判定値ＤＣＡＥＸ＿ＥＲＲ以上であるか否かを判別する。この排気カム位相偏差ＤＣＡＥＸは、後述する目標排気カム位相ＣＡＥＸ＿ＣＭＤと排気カム位相ＣＡＥＸとの偏差の絶対値｜ＣＡＥＸ＿ＣＭＤ−ＣＡＥＸ｜であり、この異常判定値ＤＣＡＥＸ＿ＥＲＲは、排気カム位相偏差ＤＣＡＥＸがこれを上回っているときに、可変排気カム位相機構２２が異常動作状態にあると推定される正の所定値に設定されている。
【００７９】
ステップ７０の判別結果がＮＯで、可変排気カム位相機構２２が正常であるときには、ステップ７８に進み、排気側の第１遅延処理を実行中でないことを表すために、排気側第１遅延フラグＦ＿ＥＸ＿ＤＬＹ１を「０」に設定した後、本処理を終了する。
【００８０】
一方、ステップ７０の判別結果がＹＥＳのときには、ステップ７１に進み、排気カム位相ＣＡＥＸが所定の異常遅角判定値ＣＡＥＸ＿ＥＲＲ１以上であるか否かを判別する。この異常遅角判定値ＣＡＥＸ＿ＥＲＲ１は、可変排気カム位相機構２２が正常な状態にあるときには、ＣＡＥＸ＜ＣＡＥＸ＿ＥＲＲ１が常に成立するとともに、例えば、排気カム位相制御弁２２ａにおける異物の噛み込み状態が発生することで、可変排気カム位相機構２２が異常遅角状態にあるときにのみ、ＣＡＥＸ≧ＣＡＥＸ＿ＥＲＲ１が成立するような値に設定されている。
【００８１】
このステップ７１の判別結果がＹＥＳで、可変排気カム位相機構２２が異常遅角状態にあるときには、ステップ７２に進み、排気側第１遅延フラグＦ＿ＥＸ＿ＤＬＹ１が「１」であるか否かを判別する。この判別結果がＮＯで、排気側の第１遅延処理を実行中でないときには、ステップ７３に進み、排気側第１遅延カウンタの計数値ＣＴ３を所定の排気側第１遅延値ＥＸ＿ＤＬＹ１に設定する。
【００８２】
次いで、ステップ７４に進み、排気側の第１遅延処理を実行中であることを表すために、排気側第１遅延フラグＦ＿ＥＸ＿ＤＬＹ１を「１」に設定する。
【００８３】
このように、ステップ７４で、排気側第１遅延フラグＦ＿ＥＸ＿ＤＬＹ１が「１」に設定されると、次回以降の制御タイミングで、前述したステップ７２の判別結果がＹＥＳとなり、その場合には、ステップ７５に進み、排気側第１遅延カウンタの計数値ＣＴ３を、その前回値ＣＴ３ｚから値１を減算した値（ＣＴ３ｚ−１）に設定する。すなわち、排気側第１遅延カウンタの計数値ＣＴ３を値１デクリメントする。
【００８４】
以上のステップ７４又は７５に続くステップ７６で、排気側第１遅延カウンタの計数値ＣＴ３が値０であるか否かを判別する。この判別結果がＮＯで、ＣＴ３≠０であるときには、そのまま本処理を終了する。
【００８５】
一方、ステップ７６の判別結果がＹＥＳで、ＣＡＥＸ≧ＣＡＥＸ＿ＥＲＲ１が成立している状態が値ΔＴ・ＥＸ＿ＤＬＹ１に相当する時間分、継続したときには、可変排気カム位相機構２２の異常遅角状態が続いていることで、排気側クリーニング制御処理を実行すべきであると判定して、それを表すために、ステップ７７に進み、排気側クリーニング条件フラグＦ＿ＥＸ＿ＣＬＮを「１」に設定する。
【００８６】
次いで、前述したステップ７８に進み、排気側の第１遅延処理が終了したことを表すために、排気側第１遅延フラグＦ＿ＥＸ＿ＤＬＹ１を「０」に設定した後、本処理を終了する。
【００８７】
一方、前述したステップ７１の判別結果がＮＯで、ＣＡＥＸ＜ＣＡＥＸ＿ＥＲＲ１が成立しているときには、ステップ７９に進み、排気側第２故障判定処理を実行する。
【００８８】
この排気側第２故障判定処理は、前述した排気側第２故障状態が発生しているか否かを判別するものであり、具体的には、図８に示すように実行される。
【００８９】
同図に示すように、まず、ステップ８０で、排気カム位相ＣＡＥＸが所定の原点固着判定値ＣＡＥＸ＿ＥＲＲ２以下であるか否かを判別する。この所定の原点固着判定値ＣＡＥＸ＿２は、原点値ＣＡＥＸ＿０よりも若干、大きい値に設定されている。
【００９０】
この判別結果がＮＯで、ＣＡＥＸ＞ＣＡＥＸ＿ＥＲＲ２であるときには、排気側の第２遅延処理を実行中でないことを表すために、ステップ９０に進み、排気側第２遅延フラグＦ＿ＥＸ＿ＤＬＹ２を「０」に設定した後、本処理を終了する。
【００９１】
一方、ステップ８０の判別結果がＹＥＳのときには、ステップ８１に進み、排気側第２遅延フラグＦ＿ＥＸ＿ＤＬＹ２が「１」であるか否かを判別する。この判別結果がＮＯで、排気側の第２遅延処理を実行中でないときには、ステップ８２に進み、排気側第２遅延カウンタの計数値ＣＴ４を所定の排気側第２遅延値ＥＸ＿ＤＬＹ２に設定する。
【００９２】
次いで、ステップ８３に進み、排気側の第２遅延処理を実行中であることを表すために、排気側第２遅延フラグＦ＿ＥＸ＿ＤＬＹ２を「１」に設定する。
【００９３】
このように、ステップ８３で、排気側第２遅延フラグＦ＿ＥＸ＿ＤＬＹ２が「１」に設定されると、次回以降の制御タイミングで、前述したステップ８１の判別結果がＹＥＳとなり、その場合には、ステップ８４に進み、排気側第２遅延カウンタの計数値ＣＴ４を、その前回値ＣＴ４ｚから値１を減算した値（ＣＴ４ｚ−１）に設定する。
【００９４】
以上のステップ８３又は８４に続くステップ８５で、排気カム位相偏差ＤＣＡＥＸの積算値である積算排気カム位相偏差Ｓ＿ＤＣＡＥＸを、その前回値Ｓ＿ＤＣＡＥＸｚと排気カム位相偏差ＤＣＡＥＸの和Ｓ＿ＤＣＡＥＸｚ＋ＤＣＡＥＸに設定する。この場合、積算排気カム位相偏差の前回値Ｓ＿ＤＣＡＥＸｚの初期値は値０に設定される。
【００９５】
次いで、ステップ８６に進み、排気側第２遅延カウンタの計数値ＣＴ４が値０であるか否かを判別する。この判別結果がＮＯで、ＣＴ４≠０であるときには、そのまま本処理を終了する。
【００９６】
一方、ステップ８６の判別結果がＹＥＳで、ＣＡＥＸ≦ＣＡＥＸ＿ＥＲＲ２が成立している時間が値ΔＴ・ＥＸ＿ＤＬＹ２分、継続したときには、ステップ８７に進み、積算排気カム位相偏差Ｓ＿ＤＣＡＥＸが前述した所定の第２故障判定値Ｓ＿ＥＲＲ２以上であるか否かを判別する。
【００９７】
この判別結果がＹＥＳで、Ｓ＿ＤＣＡＥＸ≧Ｓ＿ＥＲＲ２であるときには、排気側第２故障状態が発生していると判定して、それを表すために、ステップ８８に進み、排気側第２故障フラグＦ＿ＥＸ＿ＮＧ２を「１」に設定する。
【００９８】
一方、ステップ８７の判別結果がＮＯで、Ｓ＿ＤＣＡＥＸ＜Ｓ＿ＥＲＲ２であるときには、排気側第２故障状態が発生していないと判定して、それを表すために、ステップ８９に進み、排気側第２故障フラグＦ＿ＥＸ＿ＮＧ２を「０」に設定する。
【００９９】
以上のステップ８８又は８９に続くステップ９０で、排気側の第２遅延処理を終了したことを表すために、排気側第２遅延フラグＦ＿ＥＸ＿ＤＬＹ２を「０」に設定した後、本処理を終了する。
【０１００】
図７に戻り、ステップ７９で、排気側第２故障判定処理を以上のように実行した後、図７の排気側動作判定処理を終了する。
【０１０１】
図４に戻り、ステップ２９で、以上のように排気側動作判定処理を実行した後、図４の動作判定処理を終了する。
【０１０２】
図３に戻り、ステップ１で、以上のように動作判定処理を実行した後、ステップ２に進み、前述した吸気側クリーニング条件フラグＦ＿ＩＮ＿ＣＬＮが「１」であるか否かを判別する。
【０１０３】
この判別結果がＹＥＳのときには、吸気側クリーニング制御処理を実行すべきであると判定して、ステップ３に進み、吸気側クリーニング制御処理を実行する。この吸気側クリーニング制御処理は、具体的には、図９に示すように実行される。
【０１０４】
同図に示すように、まず、ステップ１００で、吸気側Ｌｏモード中フラグＦ＿ＩＮ＿ＣＬＬｏが「１」であるか否かを判別する。この判別結果がＮＯで、吸気側Ｌｏモード制御処理を実行していないときには、ステップ１０１に進み、吸気側Ｈｉモード中フラグＦ＿ＩＮ＿ＣＬＨｉが「１」であるか否かを判別する。
【０１０５】
この判別結果がＮＯで、吸気側Ｈｉモード制御処理を実行していないときには、吸気側Ｈｉモード制御処理を実行すべきであると判定して、ステップ１０２に進み、吸気側Ｈｉモードカウンタの計数値ＣＴ５を、所定の吸気側Ｈｉモード用値ＩＮ＿ＣＬＨｉに設定する。
【０１０６】
次いで、ステップ１０３に進み、吸気側Ｈｉモード制御処理を実行中であることを表すために、吸気側Ｈｉモード中フラグＦ＿ＩＮ＿ＣＬＨｉを「１」に設定する。
【０１０７】
このように、ステップ１０３で、吸気側Ｈｉモード中フラグＦ＿ＩＮ＿ＣＬＨｉが「１」に設定されると、次回以降の制御タイミングで、上述したステップ１０１の判別結果がＹＥＳとなり、その場合には、ステップ１０４に進み、吸気側Ｈｉモードカウンタの計数値ＣＴ５を、その前回値ＣＴ５ｚから値１を減算した値（ＣＴ５ｚ−１）に設定する。
【０１０８】
以上のステップ１０３又は１０４に続くステップ１０５で、吸気側Ｈｉモードカウンタの計数値ＣＴ５が値０であるか否かを判別する。この判別結果がＮＯで、ＣＴ５≠０であるときには、ステップ１０６に進み、吸気側Ｈｉモード制御処理を実行した後、本処理を終了する。この吸気側Ｈｉモード制御処理では、吸気カム位相制御弁１２ａへの制御入力信号のデューティ比が１００％に設定され、そのように設定した制御入力信号が吸気カム位相制御弁１２ａに供給される。
【０１０９】
一方、ステップ１０５の判別結果がＹＥＳで、吸気側Ｈｉモード制御処理の実行時間が値ΔＴ・ＩＮ＿ＣＬＨｉに達したときには、吸気側Ｈｉモード制御処理を終了し、吸気側Ｌｏモード制御処理を実行すべきであると判定して、ステップ１０７に進み、吸気側Ｌｏモードカウンタの計数値ＣＴ６を、所定の吸気側Ｌｏモード用値ＩＮ＿ＣＬＬｏに設定する。
【０１１０】
次いで、ステップ１０８に進み、吸気側Ｈｉモード制御処理を終了したことを表すために、吸気側Ｈｉモード中フラグＦ＿ＩＮ＿ＣＬＨｉを「０」に設定するとともに、吸気側Ｌｏモード制御処理を実行中であることを表すために、吸気側Ｌｏモード中フラグＦ＿ＩＮ＿ＣＬＬｏを「１」に設定する。
【０１１１】
このように、ステップ１０８で、吸気側Ｌｏモード中フラグＦ＿ＩＮ＿ＣＬＬｏが「１」に設定されると、次回以降の制御タイミングで、前述したステップ１００の判別結果がＹＥＳとなり、その場合には、ステップ１０９に進み、吸気側Ｌｏモードカウンタの計数値ＣＴ６を、その前回値ＣＴ６ｚから値１を減算した値（ＣＴ６ｚ−１）に設定する。
【０１１２】
以上のステップ１０８又は１０９に続くステップ１１０で、吸気側Ｌｏモードカウンタの計数値ＣＴ６が値０であるか否かを判別する。この判別結果がＮＯで、ＣＴ６≠０であるときには、ステップ１１１に進み、吸気側Ｌｏモード制御処理を実行した後、本処理を終了する。この吸気側Ｌｏモード制御処理では、吸気カム位相制御弁１２ａへの制御入力信号のデューティ比が０％に設定され、それにより、吸気カム位相制御弁１２ａへの制御入力信号の供給が停止される。
【０１１３】
一方、ステップ１１０の判別結果がＹＥＳで、吸気側Ｌｏモード制御処理の実行時間が値ΔＴ・ＩＮ＿ＣＬＬｏに達したときには、吸気側Ｌｏモード制御処理を終了すべきであると判定して、それを表すために、ステップ１１２に進み、吸気側Ｌｏモード中フラグＦ＿ＩＮ＿ＣＬＬｏを「０」に設定する。
【０１１４】
次いで、ステップ１１３に進み、吸気側第１故障判定処理を実行する。この吸気側第１故障判定処理は、具体的には、図１０に示すように実行される。
【０１１５】
同図に示すように、まず、ステップ１２０で、吸気カム位相ＣＡＩＮが前述した異常進角判定値ＣＡＩＮ＿ＥＲＲ１未満であるか否かを判別する。
【０１１６】
この判別結果がＮＯのときには、可変吸気カム位相機構１２において吸気側第１故障状態が発生していると判定して、それを表すために、ステップ１２１に進み、吸気側第１故障フラグＦ＿ＩＮ＿ＮＧ１を「１」に設定する。
【０１１７】
一方、ステップ１２０の判別結果がＹＥＳで、ＣＡＩＮ＜ＣＡＩＮ＿ＥＲＲ１が成立しているときには、可変吸気カム位相機構１２において吸気側第１故障状態が発生していないと判定して、それを表すために、ステップ１２２に進み、吸気側第１故障フラグＦ＿ＩＮ＿ＮＧ１を「０」に設定する。
【０１１８】
以上のステップ１２１又は１２２に続くステップ１２３で、吸気側クリーニング制御処理を終了したことを表すために、吸気側クリーニング条件フラグＦ＿ＩＮ＿ＣＬＮを「０」に設定した後、本処理を終了する。
【０１１９】
図９に戻り、ステップ１１３で、吸気側第１故障判定処理を以上のように実行した後、図９の吸気側クリーニング制御処理を終了する。
【０１２０】
図３に戻り、ステップ３で、吸気側クリーニング制御処理を以上のように実行した後、ステップ４に進み、排気側原点制御処理を実行する。この排気側原点制御処理では、排気カム位相制御弁２２ａに供給すべき制御入力信号のデューティ比が０％に設定される。すなわち、排気カム位相制御弁２２ａへの制御入力信号の供給が停止される。それにより、排気カム位相ＣＡＥＸが、所定の原点値ＣＡＥＸ＿０に保持される。ステップ４で、排気側原点制御処理を以上のように実行した後、本処理を終了する。
【０１２１】
一方、前述したステップ２の判別結果がＮＯで、吸気側クリーニング制御処理が実行されていないときには、ステップ５に進み、前述した排気側クリーニング条件フラグＦ＿ＥＸ＿ＣＬＮが「１」であるか否かを判別する。
【０１２２】
この判別結果がＹＥＳのときには、排気側クリーニング制御処理を実行すべきであると判定して、ステップ６に進み、排気側クリーニング制御処理を実行する。この排気側クリーニング制御処理は、具体的には、図１１に示すように実行される。
【０１２３】
同図に示すように、まず、ステップ１３０で、排気側Ｌｏモード中フラグＦ＿ＥＸ＿ＣＬＬｏが「１」であるか否かを判別する。この判別結果がＮＯで、排気側Ｌｏモード制御処理を実行していないときには、ステップ１３１に進み、排気側Ｈｉモード中フラグＦ＿ＥＸ＿ＣＬＨｉが「１」であるか否かを判別する。
【０１２４】
この判別結果がＮＯで、排気側Ｈｉモード制御処理を実行していないときには、排気側Ｈｉモード制御処理を実行すべきであると判定して、ステップ１３２に進み、排気側Ｈｉモードカウンタの計数値ＣＴ７を、所定の排気側Ｈｉモード用値ＥＸ＿ＣＬＨｉに設定する。
【０１２５】
次いで、ステップ１３３に進み、排気側Ｈｉモード制御処理を実行中であることを表すために、排気側Ｈｉモード中フラグＦ＿ＥＸ＿ＣＬＨｉを「１」に設定する。
【０１２６】
このように、ステップ１３３で、排気側Ｈｉモード中フラグＦ＿ＥＸ＿ＣＬＨｉが「１」に設定されると、次回以降の制御タイミングで、上述したステップ１３１の判別結果がＹＥＳとなり、その場合には、ステップ１３４に進み、排気側Ｈｉモードカウンタの計数値ＣＴ７を、その前回値ＣＴ７ｚから値１を減算した値（ＣＴ７ｚ−１）に設定する。
【０１２７】
以上のステップ１３３又は１３４に続くステップ１３５で、排気側Ｈｉモードカウンタの計数値ＣＴ７が値０であるか否かを判別する。この判別結果がＮＯで、ＣＴ７≠０であるときには、ステップ１３６に進み、排気側Ｈｉモード制御処理を実行した後、本処理を終了する。この排気側Ｈｉモード制御処理では、排気カム位相制御弁２２ａへの制御入力信号のデューティ比が１００％に設定され、そのように設定した制御入力信号が排気カム位相制御弁２２ａに供給される。
【０１２８】
一方、ステップ１３５の判別結果がＹＥＳで、排気側Ｈｉモード制御処理の実行時間が値ΔＴ・ＥＸ＿ＣＬＨｉに達したときには、排気側Ｈｉモード制御処理を終了し、排気側Ｌｏモード制御処理を実行すべきであると判定して、ステップ１３７に進み、排気側Ｌｏモードカウンタの計数値ＣＴ８を、所定の排気側Ｌｏモード用値ＥＸ＿ＣＬＬｏに設定する。
【０１２９】
次いで、ステップ１３８に進み、排気側Ｈｉモード制御処理を終了したことを表すために、排気側Ｈｉモード中フラグＦ＿ＥＸ＿ＣＬＨｉを「０」に設定するとともに、排気側Ｌｏモード制御処理を実行中であることを表すために、排気側Ｌｏモード中フラグＦ＿ＥＸ＿ＣＬＬｏを「１」に設定する。
【０１３０】
このように、ステップ１３８で、排気側Ｌｏモード中フラグＦ＿ＥＸ＿ＣＬＬｏが「１」に設定されると、次回以降の制御タイミングで、前述したステップ１３０の判別結果がＹＥＳとなり、その場合には、ステップ１３９に進み、排気側Ｌｏモードカウンタの計数値ＣＴ８を、その前回値ＣＴ８ｚから値１を減算した値（ＣＴ８ｚ−１）に設定する。
【０１３１】
以上のステップ１３８又は１３９に続くステップ１４０で、排気側Ｌｏモードカウンタの計数値ＣＴ８が値０であるか否かを判別する。この判別結果がＮＯで、ＣＴ８≠０であるときには、ステップ１４１に進み、排気側Ｌｏモード制御処理を実行した後、本処理を終了する。この排気側Ｌｏモード制御処理では、排気カム位相制御弁２２ａへの制御入力信号のデューティ比が０％に設定され、それにより、排気カム位相制御弁２２ａへの制御入力信号の供給が停止される。
【０１３２】
一方、ステップ１４０の判別結果がＹＥＳで、排気側Ｌｏモード制御処理の実行時間が値ΔＴ・ＥＸ＿ＣＬＬｏに達したときには、排気側Ｌｏモード制御処理を終了すべきであると判定して、それを表すために、ステップ１４２に進み、排気側Ｌｏモード中フラグＦ＿ＥＸ＿ＣＬＬｏを「０」に設定する。
【０１３３】
次いで、ステップ１４３に進み、排気側第１故障判定処理を実行する。この排気側第１故障判定処理は、具体的には、図１２に示すように実行される。
【０１３４】
同図に示すように、まず、ステップ１５０で、排気カム位相ＣＡＥＸが前述した異常遅角判定値ＣＡＥＸ＿ＥＲＲ１未満であるか否かを判別する。
【０１３５】
この判別結果がＮＯのときには、可変排気カム位相機構２２において排気側第１故障状態が発生していると判定して、それを表すために、ステップ１５１に進み、排気側第１故障フラグＦ＿ＥＸ＿ＮＧ１を「１」に設定する。
【０１３６】
一方、ステップ１５０の判別結果がＹＥＳで、ＣＡＥＸ＜ＣＡＥＸ＿ＥＲＲ１が成立しているときには、可変排気カム位相機構２２において排気側第１故障状態が発生していないと判定して、それを表すために、ステップ１５２に進み、排気側第１故障フラグＦ＿ＥＸ＿ＮＧ１を「０」に設定する。
【０１３７】
以上のステップ１５１又は１５２に続くステップ１５３で、排気側クリーニング制御処理を終了したことを表すために、排気側クリーニング条件フラグＦ＿ＥＸ＿ＣＬＮを「０」に設定した後、本処理を終了する。
【０１３８】
図１１に戻り、ステップ１４３で、排気側第１故障判定処理を以上のように実行した後、図１１の排気側クリーニング制御処理を終了する。
【０１３９】
図３に戻り、ステップ６で、排気側クリーニング制御処理を以上のように実行した後、ステップ７に進み、吸気側原点制御処理を実行する。この吸気側原点制御処理では、吸気カム位相制御弁１２ａに供給すべき制御入力信号のデューティ比が０％に設定される。すなわち、吸気カム位相制御弁１２ａへの制御入力信号の供給が停止される。それにより、吸気カム位相ＣＡＩＮが所定の原点値ＣＡＩＮ＿０に保持される。ステップ７で、吸気側原点制御処理を以上のように実行した後、本処理を終了する。
【０１４０】
一方、前述したステップ５の判別結果がＮＯのとき、すなわち吸気側クリーニング制御処理及び排気側クリーニング制御処理が実行されてないときには、ステップ８に進み、吸気側第１故障フラグＦ＿ＩＮ＿ＮＧ１が「１」であるか否かを判別する。
【０１４１】
この判別結果がＹＥＳで、可変吸気カム位相機構１２において吸気側第１故障状態が発生しているときには、ステップ９に進み、吸気側停止処理を実行する。この吸気側停止処理では、吸気カム位相制御弁１２ａへの制御入力信号の供給が停止される。
【０１４２】
次いで、ステップ１０に進み、前述したステップ４と同様に、排気側原点制御処理を実行する。すなわち、排気カム位相制御弁２２ａへの制御入力信号の供給を停止することで、排気カム位相ＣＡＥＸを所定の原点値ＣＡＥＸ＿０に保持する。ステップ１０で、排気側原点制御処理を以上のように実行した後、本処理を終了する。
【０１４３】
一方、前述したステップ８の判別結果がＮＯのときには、ステップ１１に進み、排気側第１故障フラグＦ＿ＥＸ＿ＮＧ１が「１」であるか否かを判別する。この判別結果がＹＥＳで、可変排気カム位相機構２２において排気側第１故障状態が発生しているときには、ステップ１２に進み、排気側停止処理を実行する。この排気側停止処理では、排気カム位相制御弁２２ａへの制御入力信号の供給が停止される。
【０１４４】
次いで、ステップ１３に進み、前述したステップ１０と同様に、吸気側原点制御処理を実行する。すなわち、吸気カム位相制御弁１２ａへの制御入力信号の供給を停止することで、吸気カム位相ＣＡＩＮを所定の原点値ＣＡＩＮ＿０に保持する。ステップ１３で、吸気側原点制御処理を以上のように実行した後、本処理を終了する。
【０１４５】
一方、ステップ１１の判別結果がＮＯのときには、ステップ１４に進み、通常制御処理を実行する。この通常制御処理は、具体的には、図１３に示すように実行される。
【０１４６】
同図に示すように、まず、ステップ１６０で、前述した吸気側第２故障フラグＦ＿ＩＮ＿ＮＧ２が「１」であるか否かを判別する。この判別結果がＹＥＳで、可変吸気カム位相機構１２において吸気側第２故障状態が発生しているときには、ステップ１６１に進み、前述したステップ９と同様に、吸気側停止処理を実行する。すなわち、吸気カム位相制御弁１２ａへの制御入力信号の供給が停止される。
【０１４７】
次いで、ステップ１６２に進み、排気側通常制御処理を実行する。この排気側通常制御処理では、エンジン回転数ＮＥ及びアクセル開度ＡＰに応じて、図示しないマップを検索することにより、要求トルクＴＲＱを算出し、この要求トルクＴＲＱ及びエンジン回転数ＮＥに応じて、図示しないマップを検索することにより、目標排気カム位相ＣＡＥＸ＿ＣＭＤを算出する。
【０１４８】
そして、排気カム位相ＣＡＥＸが目標排気カム位相ＣＡＥＸ＿ＣＭＤになるように、排気カム位相制御弁２２ａへの制御入力信号のデューティ比を設定し、そのように設定した制御入力信号が排気カム位相制御弁２２ａに供給される。その結果、排気カム位相ＣＡＥＸが目標排気カム位相ＣＡＥＸ＿ＣＭＤになるように制御される。以上のように、ステップ１６２で、排気側通常制御処理を実行した後、本処理を終了する。
【０１４９】
一方、ステップ１６０の判別結果がＮＯのときには、ステップ１６３に進み、前述した排気側第２故障フラグＦ＿ＥＸ＿ＮＧ２が「１」であるか否かを判別する。この判別結果がＹＥＳで、可変排気カム位相機構２２において排気側第２故障状態が発生しているときには、ステップ１６４に進み、前述したステップ１２と同様に、排気側停止処理を実行する。すなわち、排気カム位相制御弁２２ａへの制御入力信号の供給が停止される。
【０１５０】
次いで、ステップ１６５に進み、吸気側通常制御処理を実行する。この吸気側通常制御処理では、エンジン回転数ＮＥ及びアクセル開度ＡＰに応じて、図示しないマップを検索することにより、要求トルクＴＲＱを算出し、この要求トルクＴＲＱ及びエンジン回転数ＮＥに応じて、図示しないマップを検索することにより、目標吸気カム位相ＣＡＩＮ＿ＣＭＤを算出する。
【０１５１】
そして、吸気カム位相ＣＡＩＮが目標吸気カム位相ＣＡＩＮ＿ＣＭＤになるように、吸気カム位相制御弁１２ａへの制御入力信号のデューティ比を設定し、そのように設定した制御入力信号が吸気カム位相制御弁１２ａに供給される。その結果、吸気カム位相ＣＡＩＮが目標吸気カム位相ＣＡＩＮ＿ＣＭＤになるように制御される。以上のように、ステップ１６５で、吸気側通常制御処理を実行した後、本処理を終了する。
【０１５２】
一方、ステップ１６３の判別結果がＮＯのときには、ステップ１６６に進み、上述したステップ１６５と同様に、吸気側通常制御処理を実行する。次いで、ステップ１６７に進み、前述したステップ１６２と同様に、排気側通常制御処理を実行した後、本処理を終了する。
【０１５３】
図３に戻り、ステップ１４で、通常制御処理を以上のように実行した後、図３のカム位相制御処理を終了する。
【０１５４】
次に、前述したカム位相制御処理を実行したときの制御結果の一例（以下「制御結果例」という）について説明する。まず、図１４を参照しながら、吸気側カム位相制御弁１２ａでの異物の噛み込み状態が発生し、可変吸気カム位相機構１２において吸気側第１故障状態が発生した場合において、吸気側クリーニング制御処理を実行することで、異物の噛み込み状態が解消され、吸気側第１故障状態が解消されたときの制御結果例について説明する。
【０１５５】
同図に示すように、吸気側カム位相制御弁１２ａで異物の噛み込み状態が発生するのに伴って、吸気カム位相ＣＡＩＮが進角側に変化し、その値が増大する。そして、ＣＡＩＮ≧ＣＡＩＮ＿ＥＲＲ１が成立したタイミング（時刻ｔ１）で、前述したステップ４１の判別結果がＹＥＳとなることで、吸気側の第１遅延処理が開始され、吸気側第１遅延カウンタの計数値ＣＴ１が前述した吸気側第１遅延値ＩＮ＿ＤＬＹ１に設定される。それと同時に、排気側原点制御処理が開始され、排気カム位相ＣＡＥＸが原点値ＣＡＥＸ＿０になるように制御される。
【０１５６】
その後、吸気側の遅延処理が終了し、ＣＴ１＝０が成立したタイミング（時刻ｔ２）で、吸気側クリーニング条件フラグＦ＿ＩＮ＿ＣＬＮが「１」に設定されることで、吸気側クリーニング制御処理が開始されると同時に、吸気側Ｈｉモード中フラグＦ＿ＩＮ＿ＣＬＨｉが「１」に設定されることで、吸気側Ｈｉモード制御処理が開始される。それにより、吸気側Ｈｉモードカウンタの計数値ＣＴ５が吸気側Ｈｉモード用値ＩＮ＿ＣＬＨｉに設定されるとともに、吸気カム位相制御弁１２ａへの制御入力信号のデューティ比が１００％に設定される。
【０１５７】
そして、制御の進行に伴い、ＣＴ５＝０が成立したタイミング（時刻ｔ３）で、吸気側Ｈｉモード中フラグＦ＿ＩＮ＿ＣＬＨｉが「０」に設定され、吸気側Ｈｉモード制御処理が終了すると同時に、吸気側Ｌｏモード中フラグＦ＿ＩＮ＿ＣＬＬｏが「１」に設定されることで、吸気側Ｌｏモード制御処理が開始される。それにより、吸気側Ｌｏモードカウンタの計数値ＣＴ６が吸気側Ｌｏモード用値ＩＮ＿ＣＬＬｏに設定されるとともに、吸気カム位相制御弁１２ａへの制御入力信号のデューティ比が０％に設定される。この吸気側Ｌｏモード制御処理の実行中、吸気側カム位相制御弁１２ａで異物の噛み込み状態が解消されることで、吸気カム位相ＣＡＩＮが原点値ＣＡＩＮ＿０に変化する。
【０１５８】
その後、ＣＴ６＝０が成立したタイミング（時刻ｔ４）で、吸気側Ｌｏモード中フラグＦ＿ＩＮ＿ＣＬＬｏ及び吸気側クリーニング条件フラグＦ＿ＩＮ＿ＣＬＮが「０」に設定され、吸気側Ｌｏモード制御処理及び吸気側クリーニング制御処理が終了すると同時に、吸気側第１故障判定処理が実行される。その際、ＣＡＩＮ＜ＣＡＩＮ＿ＥＲＲ１が成立し、前述したステップ１２０の判別結果がＹＥＳとなることで、吸気側第１故障フラグＦ＿ＩＮ＿ＮＧ１が「０」に保持される。それにより、前述したステップ２，５，８，１１，１６０,１６３の判別結果がいずれもＮＯとなることで、それ以降、吸気側通常制御処理及び排気側通常制御処理が実行される。
【０１５９】
次に、図１５を参照しながら、吸気側カム位相制御弁１２ａで異物の噛み込み状態が発生した場合において、吸気側クリーニング制御処理を実行したにもかかわらず、異物の噛み込み状態が解消されず、吸気側第１故障状態が解消されなかったときの制御結果例について説明する。
【０１６０】
同図に示すように、ＣＡＩＮ≧ＣＡＩＮ＿ＥＲＲ１が成立したタイミング（時刻ｔ１１）以降、吸気側の第１遅延処理が開始され、吸気側遅延カウンタの計数値ＣＴ１が前述した吸気側第１遅延値ＩＮ＿ＤＬＹ１に設定されると同時に、排気側原点制御処理が開始され、排気カム位相ＣＡＥＸが原点値ＣＡＥＸ＿０になるように制御される。
【０１６１】
その後、吸気側の遅延処理が終了し、ＣＴ１＝０が成立したタイミング（時刻ｔ１２）で、吸気側クリーニング制御処理及び吸気側Ｈｉモード制御処理が開始される。それにより、吸気側Ｈｉモードカウンタの計数値ＣＴ５が吸気側Ｈｉモード用値ＩＮ＿ＣＬＨｉに設定されるとともに、吸気カム位相制御弁１２ａへの制御入力信号のデューティ比が１００％に設定される。
【０１６２】
そして、制御の進行に伴い、ＣＴ５＝０が成立したタイミング（時刻ｔ１３）で、吸気側Ｈｉモード制御処理が終了すると同時に、吸気側Ｌｏモード制御処理が開始される。それにより、吸気側Ｌｏモードカウンタの計数値ＣＴ６が吸気側Ｌｏモード用値ＩＮ＿ＣＬＬｏに設定されるとともに、吸気カム位相制御弁１２ａへの制御入力信号のデューティ比が０％に設定される。
【０１６３】
そして、制御の進行に伴い、ＣＴ６＝０が成立したタイミング（時刻ｔ１４）で、吸気側Ｌｏモード中フラグＦ＿ＩＮ＿ＣＬＬｏが「０」に設定され、吸気側Ｌｏモード制御処理が終了すると同時に、吸気側第１故障判定処理が実行される。その際、ＣＡＩＮ≧ＣＡＩＮ＿ＥＲＲ１が成立し、前述したステップ１２０の判別結果がＮＯとなることで、吸気側第１故障フラグＦ＿ＩＮ＿ＮＧ１が「１」に設定される。それにより、前述したステップ８の判別結果がＹＥＳとなることで、それ以降、吸気側停止処理及び排気側原点制御処理が実行される。
【０１６４】
以上のように、本実施形態の制御装置１によれば、ＣＡＩＮ≧ＣＡＩＮ＿ＥＲＲ１が成立し、吸気側カム位相制御弁１２ａで異物の噛み込み状態などが発生していると推定された場合、吸気側クリーニング制御処理が実行される。そして、吸気側クリーニング制御処理の実行後においても、ＣＡＩＮ≧ＣＡＩＮ＿ＥＲＲ１が成立しているときには、可変吸気カム位相機構１２において吸気側第１故障状態が発生していると判定され、吸気側停止処理及び排気側原点制御処理が実行される。すなわち、可変吸気カム位相機構１２の制御が停止されるとともに、排気カム位相ＣＡＥＸが原点値ＣＡＥＸ＿０になるように、可変排気カム位相機構２２が制御される。
【０１６５】
これと同様に、ＣＡＥＸ≧ＣＡＥＸ＿ＥＲＲ１が成立し、排気カム位相制御弁２２ａで異物の噛み込み状態などが発生していると推定された場合、排気側クリーニング制御処理が実行される。そして、排気側クリーニング制御処理の実行後においても、ＣＡＥＸ≧ＣＡＥＸ＿ＥＲＲ１が成立しているときには、可変排気カム位相機構２２において排気側第１故障状態が発生していると判定され、排気側停止処理及び吸気側原点制御処理が実行される。すなわち、可変排気カム位相機構２２の制御が停止されるとともに、吸気カム位相ＣＡＩＮが原点値ＣＡＩＮ＿０になるように、可変吸気カム位相機構１２が制御される。
【０１６６】
以上のように、可変吸気カム位相機構１２及び可変排気カム位相機構２２を制御する際、両者の一方の機構において、バルブオーバーラップ期間が長くなるような故障状態が発生したときでも、他方の機構において、バルブオーバーラップ期間が短くなるように吸気側原点制御処理又は排気側原点制御処理を実行することによって、バルブオーバーラップ期間が長すぎる状態になるのを回避でき、内部ＥＧＲ量が過大になったり、掃気ガス量が過大になったりするのを回避することができる。それにより、混合気の安定した燃焼状態を確保でき、運転性を向上させることができる。その結果、商品性を向上させることができる。
【０１６７】
また、吸気側原点制御処理では、吸気カム位相ＣＡＩＮが原点値ＣＡＩＮ＿０になるように制御されるので、吸気カム位相ＣＡＩＮを、その可変範囲内においてバルブオーバーラップ期間が最短となる値に制御することができる。これと同様に、排気側原点制御処理では、排気カム位相ＣＡＥＸが原点値ＣＡＥＸ＿０になるように制御されるので、排気カム位相ＣＡＥＸを、その可変範囲内においてバルブオーバーラップ期間が最短となる値に制御することができる。それにより、上述した作用効果を確実に得ることができる。
【０１６８】
さらに、可変吸気カム位相機構１２において吸気側第２故障状態が発生していると判定されたとき、すなわち吸気カム位相ＣＡＩＮが原点値ＣＡＩＮ＿０よりも大きい値になるような制御入力信号が吸気カム位相制御弁１２ａに供給されているにもかかわらず、吸気カム位相ＣＡＩＮが原点値ＣＡＩＮ＿０に固着・保持されているときには、可変排気カム位相機構２２の通常制御処理が実行される。これと同様に、可変排気カム位相機構２２において排気側第２故障状態が発生していると判定されたときには、可変吸気カム位相機構１２の通常制御処理が実行される。
【０１６９】
この場合、吸気側第２故障状態又は排気側第２故障状態が発生しているときには、吸気カム位相ＣＡＩＮが原点値ＣＡＩＮ＿０に保持される状態か、又は排気カム位相ＣＡＥＸが原点値ＣＡＥＸ＿０に保持される状態となる関係上、バルブオーバーラップ期間が正常時よりも長くなることがないので、故障していない方の機構をバルブオーバーラップ期間が正常時よりも短くなるように制御する必要がない。したがって、吸気側第２故障状態又は排気側第２故障状態が発生しているときに、正常な方の機構を通常制御することによって、バルブオーバーラップ期間が長すぎる状態になるのを確実に回避しながら、正常時と同様に、混合気の安定した燃焼状態を確保でき、良好な運転性を確保することができる。
【０１７０】
なお、実施形態は、可変吸気カム位相機構及び可変排気カム位相機構として、油圧駆動式のものを用いた例であるが、これに代えて、電動機とギヤ機構を組み合わせた電動式のものを用いてもよい。その場合には、ステップ１の動作判定処理で、図１０の吸気側第１故障判定処理、図６の吸気側第２故障判定処理、図１２の排気側第１故障判定処理及び図８の吸気側第２故障判定処理を実行するとともに、ステップ２〜７の制御処理を省略すればよい。
【０１７１】
また、実施形態は、可変吸気カム位相機構１２及び可変排気カム位相機構２２として、図２に示すように、吸気カム位相ＣＡＩＮが原点値ＣＡＩＮ＿０に、排気カム位相ＣＡＥＸが原点値ＣＡＥＸ＿０にそれぞれ保持されている状態のときに、バルブオーバーラップ期間が値０になるように構成されたものを用いた例であるが、これらに代えて、可変吸気カム位相機構１２及び可変排気カム位相機構２２として、吸気カム位相ＣＡＩＮが原点値ＣＡＩＮ＿０に、排気カム位相ＣＡＥＸが原点値ＣＡＥＸ＿０にそれぞれ保持されている状態のときに、吸気弁４及び排気弁５の双方が閉鎖された期間、すなわち負のバルブオーバーラップ期間が生じるように構成されたものを用いてもよい。
【０１７２】
さらに、実施形態は、吸気側第２故障状態が発生しているときには、可変排気カム位相機構２２を通常制御した例であるが、吸気側第２故障状態が発生しているときに、可変排気カム位相機構２２を、通常制御処理に代えて、故障時用の制御処理を実行してもよい。その場合、例えば、目標排気カム位相ＣＡＥＸ＿ＣＭＤの算出に用いるマップを、通常制御用のマップから故障時用のマップに切り換えればよい。これと同様に、排気側第２故障状態が発生しているときには、可変吸気カム位相機構１２を、通常制御処理に代えて、故障時用の制御処理を実行してもよく、その場合にも、目標吸気カム位相ＣＡＩＮ＿ＣＭＤの算出に用いるマップを、通常制御用のマップから故障時用のマップに切り換えればよい。
【０１７３】
一方、実施形態は、本発明の制御装置を車両用の内燃機関に適用した例であるが、本発明の制御装置は、これに限らず、船舶用の内燃機関や、他の産業機器用の内燃機関にも適用可能であることは言うまでもない。
【符号の説明】
【０１７４】
１  制御装置
２  ＥＣＵ（吸気カム位相取得手段、排気カム位相取得手段、第１故障判定手段、第        １故障時制御手段、第２故障判定手段、第２故障時制御手段）
３  内燃機関
３ｃ  クランクシャフト
４  吸気弁
５  排気弁
１１ａ  吸気カム
１２  可変吸気カム位相機構
２１ａ  排気カム
２２  可変排気カム位相機構
３０  クランク角センサ    （吸気カム位相取得手段、排気カム位相取得手段）
３２  吸気カム角センサ    （吸気カム位相取得手段）
３３  排気カム角センサ    （排気カム位相取得手段）
ＣＡＩＮ  吸気カム位相
ＣＡＩＮ＿０  原点値（バルブオーバーラップ期間を最短とする値）
ＣＡＥＸ  排気カム位相
ＣＡＥＸ＿０  原点値（バルブオーバーラップ期間を最短とする値）
【図１】
2016037878.tif 000003
【図２】
2016037878.tif 000004
【図３】
2016037878.tif 000005
【図４】
2016037878.tif 000006
【図５】
2016037878.tif 000007
【図６】
2016037878.tif 000008
【図７】
2016037878.tif 000009
【図８】
2016037878.tif 000010
【図９】
2016037878.tif 000011
【図１０】
2016037878.tif 000012
【図１１】
2016037878.tif 000013
【図１２】
2016037878.tif 000014
【図１３】
2016037878.tif 000015
【図１４】
2016037878.tif 000016
【図１５】
2016037878.tif 000017