(57)【特許請求の範囲】
【請求項１】
吸気バルブ若しくは排気バルブに、バルブタイミングを変更可能な第１可変動弁機構と、バルブリフト量を変更可能な第２可変動弁機構とを備え、
前記第１及び第２の可変動弁機構のうち、少なくとも一方の可変動弁機構を、他方の可変動弁機構の制御状態に応じて作動制限する作動制限手段を備える内燃機関の可変動弁制御装置において、
前記可変動弁制御装置の異常を検出してフェイルセーフ制御を行わせる異常検出手段を備える一方、
前記作動制限手段は、他方の可変動弁機構の制御状態に応じて設定される制限基本値を、前記異常検出手段が異常を検出するために必要な時間内に変位可能な変位分、オフセットして、制限値を算出することを特徴とする内燃機関の可変動弁制御装置。
【請求項２】
前記異常検出手段は、前記第１の可変動弁機構を制御する第１コントロールユニットと前記第２の可変動弁機構を制御する第２コントロールユニットとの間の通信手段の通信異常を検出する手段を含むものであり、
前記異常検出手段が異常を検出するために必要な時間は、前記通信異常を検出するために必要な時間を含むことを特徴とする請求項１記載の内燃機関の可変動弁制御装置。
【請求項３】
前記通信異常を検出するために必要な時間は、予め定めた一定時間とすることを特徴とする請求項２記載の内燃機関の可変動弁制御装置。
【請求項４】
前記異常検出手段は、前記第１可変動弁機構による実際のバルブタイミングを検出するセンサ、又は、前記第２可変動弁機構による実際のバルブリフト量を検出するセンサの異常を検出する手段を含むものであり、
前記異常検出手段が異常を検出するために必要な時間は、前記センサの異常を検出するために必要な時間を含むことを特徴とする請求項１〜請求項３のいずれか１つに記載の内燃機関の可変動弁制御装置。
【請求項５】
前記センサの異常を検出するための時間は、機関回転数に応じて設定し機関回転数が高いほど短くすることを特徴とする請求項４記載の内燃機関の可変動弁制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の可変動弁制御装置に関し、特にバルブタイミングを変更可能な第１可変動弁機構と、バルブリフト量を変更可能な第２可変動弁機構とを備えるものに関する。
【背景技術】
【０００２】
特許文献１に記載の内燃機関の可変動弁制御装置では、内燃機関の吸気バルブ又は排気バルブの少なくとも一方に対し、バルブタイミング制御とバルブリフト量制御とを行う場合に、バルブタイミングとバルブリフト量との一方の制御状態に応じて、他方の制御の制御範囲を制限している。
【０００３】
具体的には、例えば吸気バルブのバルブリフト量の目標値を算出して、これに基づいてバルブリフト量を制御する一方、バルブリフト量の実際値を検出して、これに基づいて吸気バルブのバルブタイミングの進角側制限値を設定し、バルブタイミングが進角側制限値を超えないように制御することで、吸気バルブとピストンとの干渉を防止している。
【特許文献１】特開２００２−２８５８７１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、内燃機関の可変動弁制御装置においては、システムの異常を検出して、フェイルセーフ制御を行わせるようにするが、異常の発生によりバルブタイミングとバルブリフト量との協調制御が困難となると、異常の検出には時間がかかるので、異常を検出するまでに、バルブタイミングが制限値を超えてしまい、フェイルセーフ制御が開始される前に吸気バルブとピストンとの干渉を生じる懸念がある。
【０００５】
本発明は、このような実状に鑑み、異常が発生してから異常を検出するまで、吸気バルブ若しくは排気バルブを好適に制御し得るようにすることを目的とする。
【課題を解決するための手段】
【０００６】
このため、本発明では、一方の可変動弁機構の制限値を算出する際に、他方の可変動弁機構の制御状態に応じて設定される制限基本値を、前記異常検出手段が異常を検出するために必要な時間内に変位可能な変位分、オフセットして、制限値を算出する構成とする。
【発明の効果】
【０００７】
本発明によれば、異常が発生してから異常を検出するまでの間に、可変動弁機構が制限値を超えて変位したとても、その変位分を見込んで、制限値を設定してあるので、ピストンとの干渉を生じることなく、吸気バルブ若しくは排気バルブを好適に制御することができる。
【発明を実施するための最良の形態】
【０００８】
以下に本発明の実施の形態を図面に基づいて説明する。
図１は本発明の一実施形態を示すエンジン（直噴火花点火式内燃機関）のシステム図である。
【０００９】
エンジン１の吸気通路２には、電制スロットル弁３が設置されている。電制スロットル弁３は、エンジンコントロールユニット（以下ＥＣＭという）１０により開度制御される。電制スロットル弁３の制御を受けた空気は、吸気バルブ４を介して、エンジン１の燃焼室５に吸入される。
【００１０】
吸気バルブ４には、第１可変動弁機構として、吸気バルブ４のバルブタイミング（バルブ作動角の中心位相）を連続的に変化させることができるバルブタイミング可変機構（ＶＴＣ機構；ＶＴＣアクチュエータ５１）と、第２可変動弁機構として、吸気バルブ４のバルブリフト量、詳しくはバルブ作動角（開期間）及びリフト量を連続的に変化させることができるバルブ作動角及びリフト量可変機構（ＶＥＬ機構；ＶＥＬアクチュエータ４９）とが設けられている。詳細については後述する。
【００１１】
エンジン１の燃焼室５には、点火プラグ６と共に、燃料噴射弁７が設置されている。燃料噴射弁７は、ＥＣＭ１０からエンジン回転に同期して吸気行程又は圧縮行程にて出力される噴射パルス信号によりソレノイドに通電されて開弁し、燃焼室５内に所定圧力に調圧された燃料を噴射するようになっている。
【００１２】
燃焼室５内に噴射された燃料は混合気を形成し、ＥＣＭ１０により決定された点火時期にて点火プラグ６により点火されて燃焼する。燃焼後の排気は、排気バルブ８を介して、排気通路９へ排出される。
【００１３】
ＥＣＭ１０には、エンジン運転条件として、アクセルペダルセンサ１１により検出されるアクセル開度ＡＰＯ、クランク角センサ１２により検出されるエンジン回転数Ｎｅ、エアフローメータ１３により検出される吸入空気量Ｑａなどが入力されている。
【００１４】
次に、吸気バルブ４の可変動弁機構について、図２により説明する。
吸気バルブ４（１気筒につき２つ設けられる）の端部のバルブリフタ４０の上方には、図外のクランク軸に連動して軸周りに回転駆動されるカム軸４１が気筒列方向に延在している。このカム軸４１の外周には、吸気バルブ４に対応して揺動カム４２が揺動可能に外装されており、この揺動カム４２がバルブリフタ４０に当接してこれを押圧することにより、吸気バルブ４が図外のバルブスプリングのバネ力に抗して開閉駆動される。
【００１５】
ここにおいて、カム軸４１と揺動カム４２との間で、両者４１、４２を機械的に連携するリンクの姿勢を変化させて、吸気バルブ４のバルブ作動角（開期間）及びリフト量を連続的に可変制御可能なバルブ作動角及びリフト量可変機構（ＶＥＬ機構）が設けられている。
【００１６】
ＶＥＬ機構は、カム軸４１に偏心して設けられてカム軸４１と一体的に回転する円形の駆動カム４３と、この駆動カム４３の外周に相対回転可能に外嵌するリング状リンク４４と、カム軸４１と略平行に気筒列方向へ延在する制御軸４５と、この制御軸４５に偏心して設けられて制御軸４５と一体的に回転する円形の制御カム４６と、この制御カム４６の外周に相対回転可能に外嵌すると共に、一端がリング状リンク４４の先端と相対回転可能に連結されたロッカアーム４７と、このロッカアーム４７の他端と揺動カム４２の先端とに回転可能に連結され、両者４７、４２を機械的に連携するロッド状リンク４８と、を有している。
【００１７】
上記のカム軸４１及び制御軸４５は、軸受ブラケットを介してエンジンのシリンダヘッド側へ回転可能に支持されている。制御軸４５の一端にはバルブ作動角及びリフト量変更用のアクチュエータ（ＶＥＬアクチュエータ）４９の出力端が接続されており、このＶＥＬアクチュエータ４９によって制御軸４５が所定の制御角度範囲内で軸周りに回転駆動されると共に、所定の回転位相に保持される。
【００１８】
このような構成により、クランク軸に連動してカム軸４１が回転すると、駆動カム４３を介してリング状リンク４４が実質的に並進作動すると共に、ロッカアーム４７が制御カム４６周りを揺動し、ロッド状リンク４８を介して揺動カム４２が揺動して、吸気バルブ４が開閉駆動される。
【００１９】
また、ＶＥＬアクチュエータ４９により制御軸４５を回動することにより、ロッカアーム４７の揺動中心となる制御カム４６の中心位置が変化して、各リンク４４、４８等の姿勢が変化し、揺動カム４２の揺動角度範囲が変化する。これにより、バルブ作動角の中心位相が略一定のままで、バルブ作動角及びリフト量が連続的に変化する。より具体的には、制御軸４５を一方向へ回動することにより、バルブ作動角及びリフト量が増加し、他方向へ回動することによりバルブ作動角及びリフト量が減少するようになっている。
【００２０】
従って、ＶＥＬアクチュエータ４９の通電量をデューティ制御することで、制御軸４５の回転位相を変更して、吸気バルブ４のバルブ作動角及びリフト量を変更することができ（図３のＡ参照）、これによりバルブ作動角及びリフト量可変機構（ＶＥＬ機構）が構成される。
【００２１】
一方、カム軸４１は、クランク軸の回転がタイミングベルトによりスプロケット５０に入力されて駆動されるが、バルブタイミング変更のため、スプロケット５０とカム軸４１との間に、これらの回転位相を制御可能なロータリー式のアクチュエータ（ＶＴＣアクチュエータ）５１が装着されている。
【００２２】
従って、ＶＴＣアクチュエータ５１の通電量をデューティ制御することで、クランク軸とカム軸４１との回転位相を変更して、吸気バルブ４のバルブタイミング（バルブ作動角の中心位相）を変更することができ（図３のＡ参照）、これによりバルブタイミング可変機構（ＶＴＣ機構）が構成される。
【００２３】
ここにおいて、図４に制御系の構成を示すように、ＶＴＣ機構のＶＴＣアクチュエータ５１は、第１コントロールユニットであるＥＣＭ１０により制御するが、ＶＥＬ機構のＶＥＬアクチュエータ４９は、第１コントロールユニットであるＥＣＭ１０とは別の、第２コントロールユニット（以下ＶＥＬ−Ｃ／Ｕという）２０により制御する。
【００２４】
そして、各制御のため、ＥＣＭ１０には、ＶＴＣアクチュエータ５１の実位置を検出するＶＴＣ位置センサ５１Ｓの信号を入力して、ＶＴＣ実際値（実バルブタイミング）を検出する機能を持たせ、ＶＥＬ−Ｃ／Ｕ２０には、ＶＥＬアクチュエータ４９の実位置を検出するＶＥＬ位置センサ４９Ｓの信号を入力して、ＶＥＬ実際値（実バルブリフト量）を検出する機能を持たせている。
【００２５】
但し、エンジン運転条件に応じてＶＥＬ目標値（目標バルブリフト量）を算出する機能と、エンジン運転条件に応じてＶＴＣ目標値（目標バルブタイミング）を算出する機能とは、エンジン運転条件に関する各種センサの信号が入力されるＥＣＭ１０に集中させている。
【００２６】
このため、ＥＣＭ１０とＶＥＬ−Ｃ／Ｕ２０とは、通信手段（ＣＡＮ）３０により接続し、ＥＣＭ１０からＶＥＬ−Ｃ／Ｕ２０へ、ＶＥＬ目標値（目標バルブリフト量）を送信するようにしている。ＣＡＮ（Controller Area Network）は、それぞれのコントロールユニットを２本の通信線でつないでシリアル通信することにより、コントロールユニット間でのデータの送受信を可能とするものである。
【００２７】
また、ＶＥＬ−Ｃ／Ｕ２０からＥＣＭ１０へは、ＶＥＬ実際値（実バルブリフト量）を送信するようにしている。これは次の理由による。
吸気バルブのバルブタイミング制御とバルブリフト量制御とは独立に行うものであり、それぞれの制御範囲は、各制御特性によってエンジン性能（運転性能及び排気浄化性能など）を最大限高められるように設定されている。しかし、そのため、これらの制御を併用した場合には、例えば図３のＢに示すように、バルブタイミングを進角側に、バルブリフト量を高リフト側に制御すると、ピストン上死点におけるバルブリフト量が極めて大きくなる恐れがある。
【００２８】
ピストン上死点近傍において、バルブリフト量が過度に大きくならないように吸気バルブのＶＴＣ機構の最大進角値やＶＥＬ機構の最大リフト量を制限するため、ストッパ等により機械的に制限するのでは、制御範囲が狭められてしまい、吸気バルブとピストンとの間に干渉が生じないバルブタイミング及びバルブリフト量においても、制御量の上限が制限されるため、吸気バルブのバルブタイミング制御とバルブリフト量制御とを併用することによる出力増大及び排気性能向上の効果が十分に得られない。
【００２９】
そこで、吸気バルブのＶＴＣ機構に比べてＶＥＬ機構の方が応答性が高いことを前提とすると、ＶＥＬ実際値（実バルブリフト量）に応じて、ＶＴＣ目標値（目標バルブタイミング）に対する進角側制限値を設定し、ＶＴＣ目標値の算出に際し、これが進角側制限値を超えないように、制限している。
【００３０】
このため、ＶＥＬ実際値を検出する機能を有するＶＥＬ−Ｃ／Ｕ２０から、ＶＴＣ目標値を算出する機能を有するＥＣＭ１０へ、ＶＥＬ実際値を送信している。
但し、以下にフローチャートによって説明する実施形態では、ＶＥＬ目標値（目標バルブタイミング）の算出に際しても、ＶＴＣ実際値（実バルブタイミング）に応じて、制限している。この場合、ＶＥＬ目標値算出機能とＶＴＣ実際値検出機能はＥＣＭ１０にあるので、制限処理もＥＣＭ１０にて実行し、制限処理後のＶＥＬ目標値（目標バルブリフト量）をＶＥＬ−Ｃ／Ｕ２０へ送信している。
【００３１】
図５はＥＣＭ１０側のメイン制御のフローチャートであり、これについて説明する。
Ｓ１０では、システム異常の有無を判定し、異常なしの場合は、Ｓ１１へ進む。異常ありの場合については後述する。
【００３２】
Ｓ１１では、ＶＴＣ位置センサの検出信号に基づいて、ＶＴＣ実際値（実バルブタイミング）を検出する。
Ｓ１２では、ＶＥＬ位置センサの検出信号に基づいてＶＥＬ−Ｃ／Ｕにて検出した値であって、ＶＥＬ−Ｃ／Ｕから通信手段を介して受信したＶＥＬ実際値（実バルブリフト量）を読込む。
【００３３】
Ｓ１３では、エンジン回転数Ｎｅとエンジン負荷を代表する基本燃料噴射量Ｔｐ（＝Ｋ×Ｑａ／Ｎｅ；Ｋは定数）とに基づいて、マップを参照することにより、ＶＴＣ目標値（目標バルブタイミング）を算出する。
【００３４】
Ｓ１４では、後述する図１１のサブルーチンに従って、ＶＴＣ目標値（目標バルブタイミング）に対する制限処理（制限値より大きい場合に制限値に規制する処理）を行う。
Ｓ１５では、ＶＴＣ目標値（目標バルブタイミング）とＶＴＣ実際値（実バルブタイミング）との偏差ＶＴＣＥＲＲを算出する。
【００３５】
Ｓ１６では、前記偏差ＶＴＣＥＲＲに応じて、ＶＴＣ実際値をＶＴＣ目標値に一致させるように、ＶＴＣアクチュエータに対する制御出力を算出して出力し、フィードバック制御を行い、バルブタイミングを制御する。
【００３６】
具体的には、先ず、前記偏差ＶＴＣＥＲＲと、フィードバックゲインＧｐ（比例分）、Ｇｉ（積分分）、Ｇｄ（微分分）とに基づいて、次式により、比例分制御量ＶＴＣｐ、積分分制御量ＶＴＣｉ、微分分制御量ＶＴＣｄをそれぞれ求める。
【００３７】
ＶＴＣｐ＝Ｇｐ・ＶＴＣＥＲＲ
ＶＴＣｉ＝ＶＴＣｉｚ＋Ｇｉ・ＶＴＣＥＲＲ
ＶＴＣｄ＝Ｇｄ・（ＶＴＣＥＲＲ−ＶＴＣＥＲＲｚ）
尚、添字のｚは、前回値であることを示す。
【００３８】
次に、基本デューティ値ＢＡＳＤＴＹｖｔｃと制御量ＶＴＣｐ、ＶＴＣｉ、ＶＴＣｄを加算して、ＶＴＣデューティ値ＶＴＣＤＴＹを演算し（次式参照）、これを出力信号としてＶＴＣアクチュエータを駆動する。
【００３９】
ＶＴＣＤＴＹ＝ＢＡＳＤＴＹｖｔｃ＋ＶＴＣｐ＋ＶＴＣｉ＋ＶＴＣｄ
ここでは、ＶＴＣアクチュエータは、ＶＴＣデューティ値ＶＴＣＤＴＹ＝基本デューティ値ＢＡＳＤＴＹｖｔｃ（例えば５０％）のときに、そのときの位置で固定され、偏差の分、プラス側又はマイナス側に設定されることで、駆動され、偏差がなくなれば、ＶＴＣデューティ値ＶＴＣＤＴＹ＝基本デューティ値ＢＡＳＤＴＹｖｔｃとなって、その位置で固定されるものとする。
【００４０】
Ｓ１７では、エンジン回転数Ｎｅとエンジン負荷を代表する基本燃料噴射量Ｔｐとに基づいて、マップを参照することにより、ＶＥＬ目標値（目標バルブリフト量）を算出する。
【００４１】
Ｓ１８では、後述する図１２のサブルーチンに従って、ＶＥＬ目標値（目標バルブリフト量）に対する制限処理（制限値より大きい場合に制限値に規制する処理）を行う。
Ｓ１９では、ＶＥＬ目標値を、通信手段により、ＶＥＬ−Ｃ／Ｕへ送信する。
【００４２】
図６はＶＥＬ−Ｃ／Ｕ２０側のメイン制御のフローチャートであり、これについて説明する。
Ｓ２０では、システム異常の有無を判定し、異常なしの場合は、Ｓ２１へ進む。異常ありの場合については後述する。
【００４３】
Ｓ２１では、ＶＥＬ位置センサの検出信号に基づいて、ＶＥＬ実際値（実バルブリフト量）を検出する。検出したＶＥＬ実際値は、通信手段により、ＥＣＭへ送信する。
Ｓ２２では、ＥＣＭにより算出した値であって、ＥＣＭから通信手段を介して受信したＶＥＬ目標値（目標バルブリフト量）を読込む。
【００４４】
Ｓ２３では、ＶＥＬ目標値（目標バルブリフト量）とＶＥＬ実際値（実バルブリフト量）との偏差ＶＥＬＥＲＲを算出する。
Ｓ２４では、前記偏差ＶＥＬＥＲＲに応じて、ＶＥＬ実際値をＶＥＬ目標値に一致させるように、ＶＥＬアクチュエータに対する制御出力を算出して出力し、フィードバック制御を行い、バルブリフト量を制御する。フィードバック制御の詳細は、ＥＣＭでのＶＴＣアクチュエータに対するフィードバック制御と同様である。
【００４５】
ところで、上記のシステムにおいて、ＥＣＭ１０とＶＥＬ−Ｃ／Ｕ２０との間の通信手段３０が、マイコンの通信機能（通信ドライバ）の故障、ハーネス・コネクタの故障、あるいは、ノイズなどにより、通信異常を生じると、通信手段３０で送るＶＥＬ目標値やＶＥＬ実際値が異常となるため、ＥＣＭ１０でのＶＥＬ実際値に基づくＶＴＣ制限値設定を含むＶＴＣ制御（バルブタイミング制御）や、ＶＥＬ−Ｃ／Ｕ２０でのＶＥＬ目標値に基づくＶＥＬ制御（バルブリフト量制御）などに支障をきたす。
【００４６】
従って、通信手段３０の通信異常を検出し、通信異常の検出時に、フェイルセーフ制御を行う。
通信異常の検出の概要について説明する。
【００４７】
各コントロールユニット（ＥＣＭ１０、ＶＥＬ−Ｃ／Ｕ２０）にそれぞれ具備させる通信異常検出手段は、他方のコントロールユニットから通信手段を介して所定のクロック周期でカウントアップしつつ送信するメッセージカウンタの値を監視することにより、通信異常を検出する。
【００４８】
具体的には、図１３に示すように、ＥＣＭ１０では、所定の周期でカウントアップしつつメッセージカウンタＥＣＭＶＥＬＣＫをＶＥＬ−Ｃ／Ｕ２０へ送信し、ＶＥＬ−Ｃ／Ｕ２０では、そのメッセージカウンタＥＣＭＶＥＬＣＫの値を監視し、所定の周期でカウントアップしていないときに異常とみなす。
【００４９】
また、ＶＥＬ−Ｃ／Ｕ２０では、所定の周期でカウントアップしつつメッセージカウンタＶＥＬＥＣＭＣＫをＥＣＭ１０へ送信し、ＥＣＭ１０では、そのメッセージカウンタＶＥＬＥＣＭＣＫの値を監視し、所定の周期でカウントアップしていないときに異常とみなす。
【００５０】
図７はＥＣＭ１０での通信異常検出のフローチャート（単位時間毎に実行）であり、これについて説明する。
Ｓ１０１では、ＶＥＬ−Ｃ／ＵからのメッセージカウンタＶＥＬＥＣＭＣＫについて、前回値ＶＥＬＥＣＭＣＫｚとの差（カウンタ偏差）を求めて、１以外か否かを判定する。ＮＯの場合（＝１の場合）は、正常であるので、Ｓ１０２へ進み、インクリメントカウンタＶＥＬＥＣＭＮＧ＝０とする。
【００５１】
これに対し、ＹＥＳの場合（≠１の場合）は、正しくカウントアップしておらず、異常であるので、Ｓ１０３へ進み、インクリメントカウンタＶＥＬＥＣＭＮＧを１アップする（ＶＥＬＥＣＭＮＧ＝ＶＥＬＥＣＭＮＧｚ＋１）。
【００５２】
次のＳ１０４では、インクリメントカウンタＶＥＬＥＣＭＮＧが予め定めた異常確定判定値ＣＮＧ以上（ＶＥＬＥＣＭＮＧ≧ＣＮＧ）であるか否かを判定する。ＮＯの場合（ＶＥＬＥＣＭＮＧ＜ＣＮＧの場合）は、正常とみなして、Ｓ１０５へ進み、第１フェイルセーフフラグｆＥＣＭＦＳ１＝０とする。
【００５３】
これに対し、ＹＥＳの場合（ＶＥＬＥＣＭＮＧ≧ＣＮＧの場合）は、通信異常と確定し、Ｓ１０６へ進んで、フェイルセーフ制御に移行させるべく、第１フェイルセーフフラグｆＥＣＭＦＳ１＝１とする。
【００５４】
図８はＶＥＬ−Ｃ／Ｕ２０での通信異常検出のフローチャート（単位時間ごとに実行）であり、これについて説明する。
Ｓ２０１では、ＥＣＭからのメッセージカウンタＥＣＭＶＥＬＣＫについて、前回値ＥＣＭＶＥＬＣＫｚとの差（カウンタ偏差）を求めて、１以外か否かを判定する。ＮＯの場合（＝１の場合）は、正常であるので、Ｓ２０２へ進み、インクリメントカウンタＥＣＭＶＥＬＮＧ＝０とする。
【００５５】
これに対し、ＹＥＳの場合（≠１の場合）は、正しくカウントアップしておらず、異常であるので、Ｓ２０３へ進み、インクリメントカウンタＥＣＭＶＥＬＮＧを１アップする（ＥＣＭＶＥＬＮＧ＝ＥＣＭＶＥＬＮＧｚ＋１）。
【００５６】
次のＳ２０４では、インクリメントカウンタＥＣＭＶＥＬＮＧが予め定めた異常確定判定値ＣＮＧ以上（ＥＣＭＶＥＬＮＧ≧ＣＮＧ）であるか否かを判定する。ＮＯの場合（ＥＣＭＶＥＬＮＧ＜ＣＮＧの場合）は、正常とみなして、Ｓ２０５へ進み、第１フェイルセーフフラグｆＶＥＬＦＳ１＝０とする。
【００５７】
これに対し、ＹＥＳの場合（ＥＣＭＶＥＬＮＧ≧ＣＮＧの場合）は、通信異常と確定し、Ｓ２０６へ進んで、フェイルセーフ制御に移行させるべく、第１フェイルセーフフラグｆＶＥＬＦＳ１＝１とする。
【００５８】
また、上記のシステムにおいて、ＶＴＣ位置センサ５１ＳやＶＥＬ位置センサ４９Ｓなどに、センサ異常（故障）を生じた場合も、ＶＴＣ制御（バルブタイミング制御）やＶＥＬ制御（バルブリフト量制御）などに支障をきたす。
【００５９】
従って、ＶＴＣ位置センサ５１ＳやＶＥＬ位置センサ４９のセンサ異常を検出し、センサ信異常の検出時も、フェイルセーフ制御を行う。
図９はＥＣＭ１０でのセンサ異常検出のフローチャートであり、これについて説明する。
【００６０】
Ｓ１１１では、ＶＴＣ位置センサ出力は正常に出力されているか否かを判定する。ＶＴＣ位置センサ出力は、回転に同期して出力されるので、回転に同期したタイミングで出力が得られないときや、出力値が通常範囲から大きく外れているときに、異常と判定する。
【００６１】
正常と判定された場合は、Ｓ１１２へ進み、第２フェイルセーフフラグｆＥＣＭＦＳ２＝０とする。
これに対し、異常と判定された場合は、Ｓ１１３へ進み、フェイルセーフ制御に移行させるべく、第２フェイルセーフフラグｆＥＣＭＦＳ２＝１とする。
【００６２】
図１０はＶＥＬ−Ｃ／Ｕ２０でのセンサ異常検出のフローチャートであり、これについて説明する。
Ｓ２１１では、ＶＥＬ位置センサ出力は正常に出力されているか否かを判定する。ＶＥＬ位置センサ出力は、回転に同期して出力されるので、回転に同期したタイミングで出力が得られないときや、出力値が通常範囲から大きく外れているときに、異常と判定する。
【００６３】
正常と判定された場合は、Ｓ２１２へ進み、第２フェイルセーフフラグｆＶＥＬＦＳ２＝０とする。
これに対し、異常と判定された場合は、Ｓ２１３へ進み、フェイルセーフ制御に移行させるべく、第２フェイルセーフフラグｆＶＥＬＦＳ２＝１とする。
【００６４】
尚、ＥＣＭ１０側でセットされた第１及び第２フェイルセーフフラグｆＥＣＭＦＳ１、ｆＥＣＭＦＳ２は、通信手段３０により、ＶＥＬ−Ｃ／Ｕ２０へ送信される。逆に、ＶＥＬ−Ｃ／Ｕ２０側でセットされた第１及び第２フェイルセーフフラグｆＶＥＬＦＳ１、ｆＶＥＬＦＳ２は、通信手段３０により、ＥＣＭ１０へ送信される。こうして、できる限り情報が共有される。
【００６５】
次に、異常検出時のフェイルセーフ制御について、図５、図６のフローチャートに戻って説明する。
図５のＥＣＭ１０でのメイン制御において、最初のＳ１０では、システム異常の有無を判定している。具体的には、第１フェイルセーフフラグｆＥＣＭＦＳ１＝１（通信異常）又は第２フェイルセーフフラグｆＥＣＭＦＳ２＝１（ＶＴＣ位置センサ異常）の場合に、システム異常とし、Ｓ１００へ進む。尚、ＶＥＬ−Ｃ／Ｕ２０側から、第１フェイルセーフフラグｆＶＥＬＦＳ１＝１（通信異常）又は第２フェイルセーフフラグｆＶＥＬＦＳ２＝１（ＶＥＬ位置センサ異常）の情報が来ている場合も、システム異常とし、Ｓ１００へ進む。
【００６６】
Ｓ１００では、ＶＴＣフェイルセーフ制御を実行する。具体的には、バルブタイミングを予め定めた所定値（例えば最遅角位置など）に制御する。
図６のＶＥＬ−Ｃ／Ｕ２０でのメイン制御において、最初のＳ２０では、システム異常の有無を判定している。具体的には、第１フェイルセーフフラグｆＶＥＬＦＳ１＝１（通信異常）又は第２フェイルセーフフラグｆＶＥＬＦＳ２＝１（ＶＥＬ位置センサ異常）の場合に、システム異常とし、Ｓ２００へ進む。尚、ＥＣＭ１０側から、第１フェイルセーフフラグｆＥＣＭＦＳ１＝１（通信異常）又は第２フェイルセーフフラグｆＥＣＭＦＳ２＝１（ＶＴＣ位置センサ異常）の情報が来ている場合も、システム異常とし、Ｓ２００へ進む。
【００６７】
Ｓ２００では、ＶＥＬフェイルセーフ制御を実行する。具体的には、バルブリフト量を予め定めた所定値（例えば中リフト）に制御する。あるいは、ＶＥＬ電源リレーをシャットオフする。これにより、ＶＥＬアクチュエータへのＶＥＬデューティを強制的に０％にして、バルブリフト量を最小リフトに制御する。但し、ＶＥＬ電源リレーをＯＦＦする機能がＥＣＭ側にある場合は、ＥＣＭ側でシャットオフを実行する。
【００６８】
次に図１１のＶＴＣ目標値制限処理のサブルーチンについて説明する。本サブルーチンは、図５のＥＣＭ１０でのメイン制御において、Ｓ１４にて実行される。
Ｓ１４１では、ＶＥＬ実際値（実バルブリフト量）に基づいて、テーブルを参照することにより、ＶＴＣ目標値（目標バルブタイミング）に対する進角側への制限基本値を算出する。
【００６９】
ＶＴＣ目標値（目標バルブタイミング）に対する制限基本値は、ＶＥＬ実際値（実バルブリフト量）が低リフト側の範囲においては、ＶＴＣを最進角値に制御しても、吸気バルブとピストンとが干渉する恐れはないため、ＶＴＣのストッパ機構により規制される最進角位置と同じにしている。
【００７０】
一方、吸気バルブのバルブリフト量が高リフト側の範囲になると、ＶＴＣが最進角位置に近づくにつれて、ピストン上死点において吸気バルブとピストンとが干渉する恐れを生じるため、ＶＴＣ目標値の制限基本値を徐々に遅角側へ設定するようになっている。
【００７１】
Ｓ１４２では、通信異常検出手段が通信異常を検出するために必要な時間内にＶＴＣが変位可能な変位分であるオフセット量ＯＦＳ１を読込む。
これは、通信異常が発生してから通信異常が検出されるまでに、ＶＴＣが変位しても、吸気バルブとピストンとが干渉しないように、ＶＴＣ制限値を、予め遅角側へオフセットしておくためのものである。
【００７２】
通信異常を検出するために必要な時間は、一定時間とすることができ、エンジン回転数Ｎｅの影響を受けないので、オフセット量ＯＦＳ１は予め定めた一定値（固定値）とすればよい。
【００７３】
尚、通信異常を検出するために必要な時間には、図７のフローのＳ１０４で異常確定用の閾値として用いているＣＮＧに想到する時間の他、送受信に要する時間や判定後の処理時間などを含める考えると、より安全に設定できる。
【００７４】
Ｓ１４３では、エンジン回転数Ｎｅを読込む。
Ｓ１４４では、エンジン回転数Ｎｅに基づいて、テーブルを参照することにより、センサ異常検出手段がセンサ異常を検出するために必要な時間内にＶＴＣが変位可能な変位分であるオフセット量ＯＦＳ２を算出する。
【００７５】
これは、センサ異常が発生してからセンサ異常が検出されるまでに、ＶＴＣが変位しても、吸気バルブとピストンとが干渉しないように、ＶＴＣ制限値を、予め遅角側へオフセットしておくためのものである。
【００７６】
センサ異常を検出するために必要な時間は、エンジン回転数Ｎｅに応じて変化し、エンジン回転数Ｎｅが高いほど短くなる（回転同期で出力される出力の有無を見るため）。従って、オフセット量ＯＦＳ２は、エンジン回転数Ｎｅが高くなるほど小さくする。
【００７７】
尚、センサ異常を検出するために必要な時間には、センサ自体の検出遅れ時間などを含めて考えると、より安全に設定できる。
Ｓ１４５では、ＶＴＣ制限基本値から、オフセット量ＯＦＳ１、ＯＦＳ２のうち大きい方を減算することにより、ＶＴＣ制限値を算出する（次式参照）。
【００７８】
ＶＴＣ制限値＝ＶＴＣ制限基本値−ｍａｘ（ＯＦＳ１，ＯＦＳ２）
ここで、オフセット量ＯＦＳ１、ＯＦＳ２のうち大きい方であるｍａｘ（ＯＦＳ１，ＯＦＳ２）は、異常検出手段が異常を検出するために必要な時間内に変位可能な変位分である。
【００７９】
Ｓ１４６では、Ｓ１３（図５）で求めたＶＴＣ目標値とＳ１４５で求めたＶＴＣ制限値とを比較し、ＶＴＣ目標値＞制限値の場合（ＶＴＣ目標値が制限値より進角側の場合）は、Ｓ１４７へ進んで、ＶＴＣ目標値＝制限値として、ＶＴＣ目標値を制限した後、リターンする。ＶＴＣ目標値≦制限値の場合（ＶＴＣ目標値が制限値より遅角側の場合）は、そのままリターンする。
【００８０】
次に図１２のＶＥＬ目標値制限処理のサブルーチンについて説明する。本サブルーチンは、図５のＥＣＭ１０でのメイン制御において、Ｓ１８にて実行される。
Ｓ１８１では、ＶＴＣ実際値（実バルブタイミング）に基づいて、テーブルを参照することにより、ＶＥＬ目標値（目標バルブリフト量）に対する制限基本値を算出する。
【００８１】
ＶＥＬ目標値（目標バルブリフト量）に対する制限基本値は、ＶＴＣ実際値（実バルブタイミング）が遅角側の範囲においては、ＶＥＬを最大リフト量に制御しても、吸気バルブとピストンとが干渉する恐れはないため、ＶＥＬのストッパ機構により規制される最大リフト量と同じにしている。
【００８２】
一方、吸気バルブのバルブタイミングが進角側の範囲になると、ＶＥＬが最大リフト量に近づくにつれて、ピストン上死点において吸気バルブとピストンとが干渉する恐れを生じるため、ＶＥＬ目標値の制限基本値を徐々に低リフト側へ設定するようになっている。
【００８３】
Ｓ１８２では、通信異常検出手段が通信異常を検出するために必要な時間内にＶＥＬが変位可能な変位分であるオフセット量ＯＦＳ３を読込む。
これは、通信異常が発生してから通信異常が検出されるまでに、ＶＥＬが変位しても、吸気バルブとピストンとが干渉しないように、ＶＥＬ制限値を、予め低リフト側へオフセットしておくためのものである。
【００８４】
通信異常を検出するために必要な時間は、一定時間とすることができ、エンジン回転数Ｎｅの影響を受けないので、オフセット量ＯＦＳ３は予め定めた一定値（固定値）とすればよい。
【００８５】
Ｓ１８３では、エンジン回転数Ｎｅを読込む。
Ｓ１８４では、エンジン回転数Ｎｅに基づいて、テーブルを参照することにより、センサ異常検出手段がセンサ異常を検出するために必要な時間内にＶＥＬが変位可能な変位分であるオフセット量ＯＦＳ４を算出する。
【００８６】
これは、センサ異常が発生してからセンサ異常が検出されるまでに、ＶＥＬが変位しても、吸気バルブとピストンとが干渉しないように、ＶＥＬ制限値を、予め低リフト量側へオフセットしておくためのものである。
【００８７】
センサ異常を検出するために必要な時間は、エンジン回転数Ｎｅに応じて変化し、エンジン回転数Ｎｅが高いほど短くなる（回転同期で出力される出力の有無を見るため）。従って、オフセット量ＯＦＳ４は、エンジン回転数Ｎｅが高くなるほど小さくする。
【００８８】
Ｓ１８５では、ＶＥＬ制限基本値から、オフセット量ＯＦＳ３、ＯＦＳ４のうち大きい方を減算することにより、ＶＥＬ制限値を算出する（次式参照）。
ＶＥＬ制限値＝ＶＥＬ制限基本値−ｍａｘ（ＯＦＳ３，ＯＦＳ４）
ここで、オフセット量ＯＦＳ３、ＯＦＳ４のうち大きい方であるｍａｘ（ＯＦＳ３，ＯＦＳ４）は、異常検出手段が異常を検出するために必要な時間内に変位可能な変位分である。
【００８９】
Ｓ１８６では、Ｓ１７（図５）で求めたＶＥＬ目標値とＳ１８５で求めたＶＥＬ制限値とを比較し、ＶＥＬ目標値＞制限値の場合（ＶＥＬ目標値が制限値より高リフト側の場合）は、Ｓ１８７へ進んで、ＶＥＬ目標値＝制限値として、ＶＥＬ目標値を制限した後、リターンする。ＶＥＬ目標値≦制限値の場合（ＶＥＬ目標値が制限値より低リフト側の場合）は、そのままリターンする。
【００９０】
尚、以上では吸気バルブの可変動弁機構について説明したが、本発明は排気バルブの可変動弁機構についても適用可能である。
排気バルブのバルブタイミング制御とバルブリフト量制御とを併用するものでも、排気バルブのバルブタイミングを遅角側に制御すると共にバルブリフト量を高リフト側に制御すると、ピストン上死点近傍で排気バルブのリフト量が大きすぎる恐れがあり、同様の問題を生じるからである。
【００９１】
以上説明したように、本実施形態によれば、吸気バルブ若しくは排気バルブに、バルブタイミングを変更可能な第１可変動弁機構（ＶＴＣ機構）と、バルブリフト量を変更可能な第２可変動弁機構（ＶＥＬ機構）とを備え、前記第１及び第２の可変動弁機構のうち、少なくとも一方の可変動弁機構を、他方の可変動弁機構の制御状態に応じて作動制限する作動制限手段を備える内燃機関の可変動弁制御装置において、前記可変動弁制御装置の異常を検出してフェイルセーフ制御を行わせる異常検出手段を備える一方、前記作動制限手段は、他方の可変動弁機構の制御状態に応じて設定される制限基本値を、前記異常検出手段が異常を検出するために必要な時間内に変位可能な変位分、オフセットして、制限値を算出する構成とすることにより、異常が発生してから異常を検出するまでの間に、可変動弁機構が制限値を超えて変位したとても、その変位分を見込んで、制限値を設定してあるので、ピストンとの干渉を生じることなく、吸気バルブ若しくは排気バルブを好適に制御することができる。また、ストッパ等による機械的な制限が不要となり、可変動弁機構の制御範囲を拡大できるため、燃費向上等を図ることができる。また、干渉対策のためピストンのバルブリセスを深くすることによる出力、燃費、排気性能低下を防止することができる。
【００９２】
また、本実施形態によれば、前記異常検出手段は、前記第１の可変動弁機構（ＶＴＣ機構）を制御する第１コントロールユニット（ＥＣＭ１０）と前記第２の可変動弁機構（ＶＥＬ機構）を制御する第２コントロールユニット（ＶＥＬ−Ｃ／Ｕ２０）との間の通信手段（３０）の通信異常を検出する手段を含むものであり、前記異常検出手段が異常を検出するために必要な時間は、前記通信異常を検出するために必要な時間を含むこととすることにより、通信異常に確実に対処することができる。
【００９３】
ここで、前記通信異常を検出するために必要な時間は、予め定めた一定時間とすることにより、オフセット量ＯＦＳ１、ＯＦＳ３の設定も容易となる。
尚、各コントロールユニット（ＥＣＭ１０、ＶＥＬ−Ｃ／Ｕ２０）に具備させる通信異常検出手段は、他方のコントロールユニットから前記通信手段を介して所定の周期でカウントアップしつつ送信するメッセージカウンタ（ＥＣＭＶＥＬＣＫ、ＶＥＬＥＣＭＣＫ）の値を監視することにより、通信異常を検出する構成とすることにより、簡単かつ確実なものとすることができる。
【００９４】
また、本実施形態によれば、前記異常検出手段は、前記第１可変動弁機構（ＶＴＣ機構）による実際のバルブタイミングを検出するセンサ（ＶＴＣ位置センサ）、又は、前記第２可変動弁機構（ＶＥＬ機構）による実際のバルブリフト量を検出するセンサ（ＶＥＬ位置センサ）の異常を検出する手段を含むものであり、前記異常検出手段が異常を検出するために必要な時間は、前記センサの異常を検出するために必要な時間を含むこととすることにより、センサ異常に確実に対処することができる。
【００９５】
ここで、前記センサの異常を検出するための時間は、機関回転数に応じて設定し機関回転数が高いほど短くすることにより、オフセット量ＯＦＳ２、ＯＦＳ４の設定を的確なものとすることができ、必要以上の制限を付すこともなくなる。
【図面の簡単な説明】
【００９６】
【図１】本発明の一実施形態を示すエンジンのシステム図
【図２】可変動弁機構の構成図
【図３】可変動弁機構によるバルブリフト特性図
【図４】制御系の構成図
【図５】ＥＣＭ側のメイン制御のフローチャート
【図６】ＶＥＬ−Ｃ／Ｕ側のメイン制御のフローチャート
【図７】ＥＣＭ側の通信異常検出のフローチャート
【図８】ＶＥＬ−Ｃ／Ｕ側の通信異常検出のフローチャート
【図９】ＥＣＭ側のセンサ異常検出のフローチャート
【図１０】ＶＥＬ−Ｃ／Ｕ側のセンサ異常検出のフローチャート
【図１１】ＶＴＣ目標値制限処理のサブルーチンのフローチャート
【図１２】ＶＥＬ目標値制限処理のサブルーチンのフローチャート
【図１３】通信異常の検出に用いるメッセージカウンタの説明図
【符号の説明】
【００９７】
１  エンジン
４  吸気バルブ
８  排気バルブ
１０  ＥＣＭ（第１コントロールユニット）
２０  ＶＥＬ−Ｃ／Ｕ（第２コントロールユニット）
３０  通信手段
４９  ＶＥＬアクチュエータ（第２可変動弁機構）
４９Ｓ  ＶＥＬ位置センサ
５１  ＶＴＣアクチュエータ（第１可変動弁機構）
５１Ｓ  ＶＴＣ位置センサ
【図１】
0004840287.tif 000002
【図２】
0004840287.tif 000003
【図３】
0004840287.tif 000004
【図４】
0004840287.tif 000005
【図５】
0004840287.tif 000006
【図６】
0004840287.tif 000007
【図７】
0004840287.tif 000008
【図８】
0004840287.tif 000009
【図９】
0004840287.tif 000010
【図１０】
0004840287.tif 000011
【図１１】
0004840287.tif 000012
【図１２】
0004840287.tif 000013
【図１３】
0004840287.tif 000014