(57)【要約】【課題】可変バルブタイミング制御システムにおいて、実バルブタイミングを一定状態に保持するのに必要な保持デューティを予め決められた所定の温度領域で学習するだけで、他の温度領域の保持デューティを学習しなくても、全ての温度領域で保持デューティを学習したのとほぼ同等の効果を得ることができるようにする。【解決手段】予め、製品の設計・製造段階で、油温又はそれに相関する温度（冷却水温等）と保持デューティとの関係を規定する保持デューティ基準特性データをＥＣＵ２４のＲＯＭ４１等の不揮発性の記憶手段に記憶しておき、所定の温度領域（例えば暖機後の油温又は冷却水温に相当する温度領域）で保持デューティを学習し、学習した所定の温度領域の保持デューティ学習値とＲＯＭ４１等から読み出した保持デューティ基準特性データとに基づいて他の温度領域の保持デューティを設定する。【選択図】図１
2010031700.tif 000002
【特許請求の範囲】
【請求項１】
油圧を駆動源として内燃機関の吸気側及び／又は排気側のバルブタイミングを調整する可変バルブタイミング機構と、
前記可変バルブタイミング機構を駆動する油圧を制御する油圧制御装置と、
目標バルブタイミングに対して実バルブタイミングを一致させるように前記油圧制御装置を制御する制御手段とを備え、
前記制御手段は、前記目標バルブタイミングと実バルブタイミングとの偏差に応じたフィードバック制御量と、実バルブタイミングを一定状態に保持するのに必要な保持制御量とに基づいて、前記油圧制御装置の制御量を演算する内燃機関の可変バルブタイミング制御装置において、
油温又はそれに相関する温度（以下「油温等」という）を検出する温度検出手段と、
予め、油温等と前記保持制御量との関係を規定する保持制御量基準特性データが記憶された不揮発性の記憶手段と、
所定の温度領域で前記保持制御量を学習する保持制御量学習手段とを備え、
前記制御手段は、前記保持制御量学習手段で学習した所定の温度領域の保持制御量学習値と前記記憶手段から読み出した保持制御量基準特性データとに基づいて前記温度検出手段で検出した油温等に対応する温度領域の保持制御量を設定して前記油圧制御装置の制御量を演算することを特徴とする内燃機関の可変バルブタイミング制御装置。
【請求項２】
前記記憶手段に記憶された前記保持制御量基準特性データは、前記保持制御量学習手段が前記保持制御量を学習する時の温度領域の保持制御量を基準にしてこれに対する補正量を各温度領域毎に設定したデータであり、
前記制御手段は、前記保持制御量学習手段で学習した所定の温度領域の保持制御量学習値を前記記憶手段から読み出した各温度領域の補正量で補正することで各温度領域の保持制御量を設定し、前記各温度領域の保持制御量の中から前記温度検出手段で検出した現在の油温等に対応する温度領域の保持制御量を選択して前記油圧制御装置の制御量を演算することを特徴とする請求項１に記載の内燃機関の可変バルブタイミング制御装置。
【請求項３】
前記記憶手段に記憶された前記保持制御量基準特性データは、各温度領域毎にそれぞれ保持制御量基準値を設定したデータであり、
前記制御手段は、前記保持制御量学習手段で学習した所定の温度領域の保持制御量学習値と当該所定の温度領域の保持制御量基準値との差分から補正量を設定し、前記各温度領域の保持制御量基準値を前記補正量で補正することで各温度領域の保持制御量を設定し、前記各温度領域の保持制御量の中から前記温度検出手段で検出した現在の油温等に対応する温度領域の保持制御量を選択して前記油圧制御装置の制御量を演算することを特徴とする請求項１に記載の内燃機関の可変バルブタイミング制御装置。
【請求項４】
前記保持制御量学習手段が前記保持制御量を学習する温度領域は、内燃機関の暖機後の温度領域であることを特徴とする請求項１乃至３のいずれかに記載の内燃機関の可変バルブタイミング制御装置。
【請求項５】
前記制御手段は、前記所定の温度領域の保持制御量学習値と前記保持制御量基準特性データとに基づいて設定した各温度領域の保持制御量を、目標バルブタイミングと実バルブタイミングとの定常偏差に基づいて補正し、補正後の保持制御量を用いて前記油圧制御装置の制御量を演算することを特徴とする請求項１乃至４のいずれかに記載の内燃機関の可変バルブタイミング制御装置。
【請求項６】
前記制御手段は、前記目標バルブタイミングと実バルブタイミングとの定常偏差が所定値以上である場合に、該定常偏差に基づいて前記保持制御量を補正することを特徴とする請求項５に記載の内燃機関の可変バルブタイミング制御装置。
【請求項７】
実バルブタイミングを一定状態に保持している状態から前記油圧制御装置の制御量を変化させても実バルブタイミングがほとんど動かない不感帯の幅を学習する不感帯幅学習手段を備え、
前記不感帯幅学習手段は、前記保持制御量学習手段で前記所定の温度領域の保持制御量を学習して、その保持制御量学習値と前記保持制御量基準特性データとに基づいて他の温度領域の保持制御量を設定した後に、前記不感帯幅の学習を実行し、
前記制御手段は、前記目標バルブタイミングと実バルブタイミングとの偏差に応じたフィードバック制御量と前記保持制御量とに基づいて演算した前記油圧制御装置の制御量を前記不感帯幅の学習値に応じてオフセット補正することを特徴とする請求項１乃至６のいずれかに記載の内燃機関の可変バルブタイミング制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、実バルブタイミングを一定状態に保持するのに必要な保持制御量を学習する機能を備えた内燃機関の可変バルブタイミング制御装置に関する発明である。
【背景技術】
【０００２】
近年、車両に搭載される内燃機関においては、出力向上、燃費節減、排気エミッション低減等を目的として、内燃機関の吸気バルブや排気バルブのバルブタイミング（開閉タイミング）を変化させる油圧駆動式の可変バルブタイミング機構を搭載したものが増加しつつある。この油圧駆動式の可変バルブタイミング機構は、特許文献１（特開２００７−２２４７４４号公報）、特許文献２（特開２００４−２５１２５４号公報）に記載されているように、油圧を制御する油圧制御弁の制御量（制御デューティ）を演算する際に、目標バルブタイミングと実バルブタイミングとの偏差に応じたフィードバック制御量と、実バルブタイミングを一定状態に保持するのに必要な保持制御量（保持デューティ）とに基づいて油圧制御弁の制御量を設定し、この制御量で油圧制御弁を駆動して可変バルブタイミング装置の進角室や遅角室に供給する作動油の流量（油圧）を変化させることで、バルブタイミングを進角又は遅角させるようにしている。この際、可変バルブタイミング機構や油圧制御弁の製造ばらつきや経時変化によって保持制御量が変動することを考慮して、保持制御量を学習するようにしている。
【０００３】
ところで、油温によって作動油の流動性（粘性）や可変バルブタイミング機構の各部品間のクリアランス等が変化するため、実バルブタイミングを一定状態に保持するのに必要な保持制御量も油温に応じて変動する。
【０００４】
そこで、特許文献３（特開２０００−２３０４３７号公報）に記載されているように、複数の温度領域毎に保持制御量を学習するようにしたものがある。
【特許文献１】特開２００７−２２４７４４号公報
【特許文献２】特開２００４−２５１２５４号公報
【特許文献３】特開２０００−２３０４３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、複数の温度領域毎に保持制御量を学習するシステムでは、いずれかの温度領域で保持制御量を学習しても、他の温度領域で保持制御量が未学習であれば、当該他の温度領域で可変バルブタイミング制御を行う場合に、保持制御量を用いることができないため、可変バルブタイミング制御の精度が悪くなる。しかも、保持制御量の学習頻度が各温度領域毎にばらつくため、学習頻度が低い温度領域では、保持制御量の学習精度も低くなり、可変バルブタイミング制御の精度が低下する。
【０００６】
そこで、本発明の目的は、一部の温度領域の保持制御量を学習するだけで、他の温度領域の保持制御量を学習しなくても、全ての温度領域で保持制御量を学習したのとほぼ同等の効果を得ることができ、全ての温度領域で可変バルブタイミング制御の精度を確保できる内燃機関の可変バルブタイミング制御装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、請求項１に係る発明は、油圧を駆動源として内燃機関の吸気側及び／又は排気側のバルブタイミングを調整する可変バルブタイミング機構と、前記可変バルブタイミング機構を駆動する油圧を制御する油圧制御装置と、目標バルブタイミングに対して実バルブタイミングを一致させるように前記油圧制御装置を制御する制御手段とを備え、前記制御手段は、前記目標バルブタイミングと実バルブタイミングとの偏差に応じたフィードバック制御量と、実バルブタイミングを一定状態に保持するのに必要な保持制御量とに基づいて、前記油圧制御装置の制御量を演算する内燃機関の可変バルブタイミング制御装置において、油温又はそれに相関する温度（以下「油温等」という）を検出する温度検出手段と、予め、油温等と前記保持制御量との関係を規定する保持制御量基準特性データが記憶された不揮発性の記憶手段と、所定の温度領域で前記保持制御量を学習する保持制御量学習手段とを備え、前記制御手段は、前記保持制御量学習手段で学習した所定の温度領域の保持制御量学習値と前記記憶手段から読み出した保持制御量基準特性データとに基づいて前記温度検出手段で検出した油温等に対応する温度領域の保持制御量を設定して油圧制御装置の制御量を演算するようにしたものである。
【０００８】
この構成によれば、一部の温度領域の保持制御量を学習するだけで、他の温度領域の保持制御量を学習しなくても、所定の温度領域の保持制御量学習値と記憶手段から読み出した保持制御量基準特性データとに基づいて当該他の温度領域の保持制御量を精度良く設定できるため、一部の温度領域の保持制御量を学習するだけで、全ての温度領域で保持制御量を学習したのとほぼ同等の効果を得ることができ、全ての温度領域で可変バルブタイミング制御の精度を確保できる。
【０００９】
この場合、記憶手段に記憶する保持制御量基準特性データは、例えば、保持制御量を学習する時の温度領域の保持制御量を基準にしてこれに対する補正量を各温度領域毎に設定したデータであっても良いし、或は、各温度領域毎にそれぞれ保持制御量基準値を設定したデータであっても良い。ここで、各温度領域の補正量や保持制御量基準値は、予め、製品の設計・製造段階で、平均的な製品（製造ばらつきの中央値又は設計値等）を基準にして決めれば良い。
【００１０】
記憶手段に記憶する保持制御量基準特性データとして、保持制御量を学習する時の温度領域の保持制御量を基準にしてこれに対する補正量を各温度領域毎に設定したデータを用いる場合は、請求項２のように、保持制御量学習手段で学習した所定の温度領域の保持制御量学習値を、記憶手段から読み出した各温度領域の補正量で補正することで、各温度領域の保持制御量を設定し、前記各温度領域の保持制御量の中から温度検出手段で検出した現在の油温等に対応する温度領域の保持制御量を選択して油圧制御装置の制御量を演算するようにすれば良い。
【００１１】
一方、記憶手段に記憶する保持制御量基準特性データとして、各温度領域毎にそれぞれ保持制御量基準値を設定したデータを用いる場合は、請求項３のように、保持制御量学習手段で学習した所定の温度領域の保持制御量学習値と当該所定の温度領域の保持制御量基準値との差分から補正量を設定し、前記各温度領域の保持制御量基準値を前記補正量で補正することで各温度領域の保持制御量を設定し、前記各温度領域の保持制御量の中から温度検出手段で検出した現在の油温等に対応する温度領域の保持制御量を選択して前記油圧制御装置の制御量を演算するようにすれば良い。
【００１２】
これら請求項２，３のいずれの場合でも、一部の温度領域の保持制御量学習値と記憶手段から読み出した保持制御量基準特性データとに基づいて全ての温度領域の保持制御量を精度良く設定できる。
【００１３】
また、請求項４のように、保持制御量を学習する温度領域を、内燃機関の暖機後の温度領域に設定すると良い。これは、暖機後の温度領域で保持制御量を学習した方が、それよりも低い温度領域で保持制御量を学習する場合よりも、保持制御量を精度良く学習できるためである。但し、本発明は、保持制御量を学習する温度領域を、暖機前の温度領域に設定して、暖機前に保持制御量を早期に学習できるようにしても良い。
【００１４】
更に、請求項５のように、所定の温度領域の保持制御量学習値と保持制御量基準特性データとに基づいて設定した各温度領域の保持制御量を、目標バルブタイミングと実バルブタイミングとの定常偏差に基づいて補正し、補正後の保持制御量を用いて油圧制御装置の制御量を演算するようにしても良い。ここで、定常偏差とは、目標バルブタイミングと実バルブタイミングが共に変化しない定常状態のときの両者の偏差である。この定常偏差は、保持制御量の誤差により生じるものと考えられるため、当該定常偏差に基づいて各温度領域の保持制御量を補正すれば、各温度領域の保持制御量の精度を更に向上させることができる。
【００１５】
この場合、請求項６のように、目標バルブタイミングと実バルブタイミングとの定常偏差が所定値以上である場合に、該定常偏差に基づいて保持制御量を補正するようにしても良い。要するに、定常偏差が所定値未満である場合は、定常偏差が小さくてほとんど問題にならないと判断して、定常偏差に基づく保持制御量の補正を行わないようにするものであり、これにより、保持制御量の過補正を防止できると共に、演算負荷を軽減することができる。
【００１６】
また、請求項７のように、実バルブタイミングを一定状態に保持している状態から油圧制御装置の制御量を変化させても実バルブタイミングがほとんど動かない不感帯の幅を学習する不感帯幅学習手段を備えたシステムに本発明を適用する場合は、保持制御量学習手段で前記所定の温度領域の保持制御量を学習して、その保持制御量学習値と前記保持制御量基準特性データとに基づいて他の温度領域の保持制御量を設定した後に、前記不感帯幅の学習を実行し、その後、目標バルブタイミングと実バルブタイミングとの偏差に応じたフィードバック制御量と前記保持制御量とに基づいて演算した油圧制御装置の制御量を前記不感帯幅の学習値に応じてオフセット補正するようにすると良い。このようにすれば、不感帯幅の学習精度を向上させることができ、精度の良い不感帯幅の学習値に応じて油圧制御装置の制御量を精度良くオフセット補正することができて、可変バルブタイミング制御の精度を更に向上させることができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明を実施するための最良の形態を、内燃機関の吸気側の可変バルブタイミング制御装置に適用して具体化した一実施例を説明する。
まず、図１に基づいてシステム全体の概略構成を説明する。
【００１８】
内燃機関であるエンジン１１は、クランク軸１２からの動力がタイミングチェーン１３（又はタイミングベルト）により各スプロケット１４，１５を介して吸気側カム軸１６と排気側カム軸１７とに伝達されるようになっている。但し、吸気側カム軸１６には、クランク軸１２に対する吸気側カム軸１６の回転位相（カム軸位相）を変化させて吸気バルブ（図示せず）のバルブタイミング（バルブ開閉特性）を変化させる可変バルブタイミング装置１８（可変バルブタイミング機構）が設けられている。この可変バルブタイミング装置１８の油圧回路には、オイルパン１９内の作動油がオイルポンプ２０により供給され、その油圧を油圧制御弁２１（油圧制御装置）で制御することで、吸気バルブのバルブタイミング（進角量）が制御される。
【００１９】
また、吸気側カム軸１６の外周側には、気筒判別のために複数のカム角でカム角信号を出力するカム角センサ２２が設置され、一方、クランク軸１２の外周側には、所定クランク角毎にクランク角信号を出力するクランク角センサ２３が設置されている。これらカム角センサ２２及びクランク角センサ２３の出力信号は、エンジン制御回路（以下「ＥＣＵ」と表記する）２４に入力され、このＥＣＵ２４によって吸気バルブの実バルブタイミングが演算されると共に、クランク角センサ２３の出力パルスの周波数からエンジン回転速度が演算される。
【００２０】
また、アクセルセンサ４４、吸入空気量センサ４５、冷却水温センサ４６（温度検出手段）、油温センサ４７（温度検出手段）等の出力信号もＥＣＵ２４に入力される。このＥＣＵ２４は、これら各種のセンサ信号に基づいてエンジン運転状態を検出して、そのエンジン運転状態に応じて燃料噴射制御や点火制御を行うと共に、可変バルブタイミング制御を行い、吸気バルブの実バルブタイミング（吸気側カム軸１６の実カム軸位相）を目標バルブタイミング（吸気側カム軸１６の目標カム軸位相）に一致させるように可変バルブタイミング装置１８（油圧制御弁２１）をフィードバック制御する。その他、ＥＣＵ２４には、各種プログラム、マップ、定数、フラグ等のデータを記憶するＲＯＭ４１等の不揮発性の記憶手段と、演算データ等を一時的に記憶するＲＡＭ４２と、エンジン停止中でもバッテリを電源として記憶データを保持する書き換え可能な不揮発性メモリであるバックアップＲＡＭ４３（ＳＲＡＭ）等が設けられている。
【００２１】
次に、図１及び図２に基づいて可変バルブタイミング装置１８の構成を説明する。図２に示すように、可変バルブタイミング装置１８のハウジング２５は、吸気側カム軸１６の外周に回動自在に支持されたスプロケット１４にボルト２６で締め付け固定されている。これにより、クランク軸１２の回転がタイミングチェーン１３を介してスプロケット１４とハウジング２５に伝達され、スプロケット１４とハウジング２５がクランク軸１２と同期して回転する。一方、吸気側カム軸１６の一端部には、ロータ２７がストッパ２８を介してボルト２９で締め付け固定されている。このロータ２７は、ハウジング２５内に相対回動自在に収納されている。
【００２２】
図１に示すように、ハウジング２５の内部には、複数の流体室３０が形成され、各流体室３０が、ロータ２７の外周部に形成されたベーン３１によって進角室３２と遅角室３３とに区画されている。
【００２３】
また、図２に示すように、エンジン１１の動力でオイルポンプ２０が駆動されることにより、オイルパン１９から汲み上げた作動油が油圧制御弁２１を介して吸気側カム軸１４の進角溝３４や遅角溝３５に供給される。進角溝３４に接続された進角油路３６は、各進角室３２に連通している。一方、遅角溝３５に接続された遅角油路３７は、各遅角室３３に連通している。
【００２４】
進角室３２と遅角室３３に所定圧以上の油圧が供給された状態では、進角室３２と遅角室３３の油圧でベーン３１が固定されて、クランク軸１２の回転によるハウジング２５の回転が作動油を介してロータ２７（ベーン３１）に伝達され、ロータ２７と一体的に吸気側カム軸１６が回転駆動される。エンジン停止後には、ハウジング２５内の油圧が低下して、ベーン３１に設けられたロックピン（図示せず）がスプリング力によりハウジング２５のロック穴（図示せず）に嵌まり込んで、ハウジング２５に対してベーン３１が始動に適した基準位置（例えば最遅角位置、中間位置等）でロックされた状態になる。エンジン始動後に、油圧がロックピンのロック状態を解除するのに必要な所定油圧以上に上昇すると、その油圧によりロックピンがロック穴から押し出されてロック状態が解除され、ハウジング２５に対してロータ２７が相対回転可能な状態（バルブタイミングを変化可能な状態）となる。
【００２５】
油圧制御弁２１は、リニアソレノイド３８に供給される電流に応じて弁体３９を駆動して各油圧ポートの開度を連続的に変えることによって、各進角室３２及び各遅角室３３に供給する作動油量を増減する。これにより、ハウジング２５とロータ２７（ベーン３１）とを相対回動させることで、クランク軸１２に対する吸気側カム軸１６の回転位相（カム軸位相）を変化させて吸気バルブのバルブタイミングを変化させる。
【００２６】
エンジン運転中には、ＥＣＵ２４は、吸気バルブの実バルブタイミング（吸気側カム軸１６の実カム軸位相）を目標バルブタイミング（吸気側カム軸１６の目標カム軸位相）に一致させるように、可変バルブタイミング装置１８の油圧制御弁２１をフィードバック制御する。以下の説明では、「可変バルブタイミング装置」を「ＶＣＴ」と表記する。
【００２７】
一般に、図３に示すように、ＶＣＴ１８の実バルブタイミングの変化速度（以下「ＶＣＴ変化速度」という）と制御デューティとの関係は、実バルブタイミングを目標バルブタイミングに保持する保持デューティＤ0 （保持制御量）の付近に、制御デューティが変化しても、ＶＣＴ変化速度が０付近にとどまってＶＣＴ１８がほとんど動かない不感帯ｄ1 ，ｄ2 が存在する。尚、図３（ａ）、（ｂ）の横軸は、制御デューティと保持デューティＤ0 との差分である相対デューティで表されているが（「相対デューティ」＝「制御デューティ」−「保持デューティＤ0 」）、図３（ａ）、（ｂ）の横軸を制御デューティに代えても、ＶＣＴ変化速度の特性は同じ曲線で表される。
【００２８】
不感帯ｄ1 より進角側には、制御デューティ（相対デューティ）に応じて進角方向へのＶＣＴ変化速度が増大する領域が存在し、その領域よりも進角側の領域ではＶＣＴ変化速度が最大値付近でほぼ一定となる。不感帯ｄ2 より遅角側には、制御デューティ（相対デューティ）に応じて遅角方向へのＶＣＴ変化速度（マイナスのＶＣＴ変化速度の絶対値）が増大する領域が存在し、その領域よりも遅角側の領域ではＶＣＴ変化速度がほぼ一定となる。
【００２９】
一方、図４（ａ）、（ｂ）は、ＶＣＴ１８の応答性のばらつきの上下限と不感帯幅と作動油の油温との関係を進角側と遅角側のそれぞれについて示す図である。図４（ａ）は、油温に対する進角側の不感帯幅ｄ1 の特性を示し、図４（ｂ）は、油温に対する遅角側の不感帯幅ｄ2 の特性を示している。同じ油温でも、ＶＣＴ１８の駆動方向が進角側か遅角側かによって不感帯幅ｄ1 ，ｄ2 が少し異なる。図４（ａ）、（ｂ）において、一点鎖線は、ＶＣＴ１８の応答性のばらつき範囲のうちの応答性が最も速い応答性上限品についての不感帯幅を示し、実線は、応答性のばらつき範囲のうちの応答性が最も遅い応答性下限品についての不感帯幅を示している。ＶＣＴ１８の応答性のばらつきによって、不感帯幅が変化し、応答性上限品も応答性下限品も、油温が低下するに従って、不感帯幅が大きくなる。しかも、油温が低下するに従って、応答性上限品と応答性下限品との間で不感帯幅の差が拡大する。
【００３０】
また、図５は、ＶＣＴ１８の実バルブタイミングを目標バルブタイミングに保持している状態から該目標バルブタイミングをステップ状に変化させたときのＶＣＴ１８の実バルブタイミングと制御デューティと積算デューティの挙動とＶＣＴ１８の応答性ばらつきとの関係を説明するタイムチャートである。ここで、積算デューティは、相対デューティ（制御デューティと保持デューティとの差分）の積算値である。
【００３１】
目標バルブタイミングの変化に対して実バルブタイミングはＶＣＴ１８の応答性に応じた応答遅れをもって変化し、ＶＣＴ１８の応答性が悪くなるほど応答遅れが大きくなるため、ＶＣＴ１８の応答性が悪くなるほど、目標バルブタイミングと実バルブタイミングとの偏差が小さくならない状態が長く続くようになる。その結果、積算デューティは、ＶＣＴ１８の応答性が悪くなるほど大きな値となる。図６に示すように、積算デューティと不感帯幅との関係を調べると、積算デューティと不感帯幅との間には相関関係があり、積算デューティが大きくなるほど、不感帯幅が大きくなる。そして、同じ積算デューティでも、ＶＣＴ１８の駆動方向が進角側か遅角側かによって不感帯幅が異なる。
【００３２】
そこで、本実施例では、所定の不感帯幅学習実行条件が成立したときに、目標バルブタイミングを強制的にステップ状に変化させてから所定の学習時間が経過するまでの期間に、不感帯幅と相関関係のあるパラメータ（以下「不感帯幅相関パラメータ」という）として積算デューティを算出して、その積算デューティに基づいて不感帯を学習し、この学習完了後は、目標バルブタイミングが変化すると、不感帯の学習値に基づいてＶＣＴ１８の制御デューティをオフセット補正して該ＶＣＴ１８を駆動する。
【００３３】
更に、本実施例では、予め、製品の設計・製造段階で、応答性基準品である例えば応答性上限品の積算デューティａ1 と不感帯幅ｂ1 を実験又はシミュレーション等により算出して、そのデータをＥＣＵ２４のＲＯＭ４１等の不揮発性の記憶手段に記憶しておく。そして、学習した実使用品の積算デューティａ2 と、ＲＯＭ４１等から読み込んだ応答性上限品の積算デューティａ1 との比ａ2 ／ａ1 に応じた学習補正係数を算出し、応答性上限品の不感帯幅ｂ1 （不感帯幅ベース値）を上記学習補正係数で補正して実使用品の不感帯幅ｂ2 を求め、この不感帯幅ｂ2 に応じてＶＣＴ１８の制御デューティをオフセット補正する。
【００３４】
不感帯幅ｂ2 ＝不感帯幅ベース値×学習補正係数
ここで、応答性基準品としては、応答性上限品に限定されず、例えば、応答性下限品、応答性ばらつきの中央品等のいずれかであっても良い。
【００３５】
また、図４に示すように、油温に応じて不感帯幅が変化することを考慮して、予め、製品の設計・製造段階で、油温又はそれに相関する温度（例えば冷却水温等）の温度領域毎に応答性基準品である例えば応答性上限品における積算デューティａ1 と不感帯幅ｂ1 のデータをＥＣＵ２４のＲＯＭ４１等の不揮発性の記憶手段に記憶しておき（図８参照）、その後、学習した実使用品の積算デューティａ2 と、ＲＯＭ４１等から読み込んだ現在の油温等に対応する温度領域の応答性上限品の積算デューティａ1 との比ａ2 ／ａ1 に応じた学習補正係数を図９の学習補正係数マップにより算出し、ＲＯＭ４１等から読み込んだ現在の油温等に対応する温度領域の応答性上限品の不感帯幅ｂ1 （不感帯幅ベース値）を前記学習補正係数で補正して実使用品の不感帯幅ｂ2 を求めることで、不感帯幅ｂ2 を温度領域毎に学習するようにしている。
【００３６】
更に、本実施例では、同じ積算デューティでも、ＶＣＴ１８の駆動方向が進角側か遅角側かによって不感帯幅が異なることを考慮して、予め、製品の設計・製造段階で、応答性基準品である例えば応答性上限品の積算デューティａ1 と不感帯幅ｂ1 を、進角側と遅角側とで別々に算出して、そのデータをＥＣＵ２４のＲＯＭ４１等の不揮発性の記憶手段に記憶しておき（図８参照）、目標バルブタイミングを進角側に強制的に変化させて進角側の積算デューティを算出して進角側の不感帯幅を学習する進角側の学習処理と、目標バルブタイミングを遅角側に強制的に変化させて遅角側の積算デューティを算出して遅角側の不感帯幅を学習する遅角側の学習処理とを実行し、これらの学習完了後に目標バルブタイミングが進角側に変化する場合は、進角側の不感帯幅の学習値に基づいてＶＣＴ１８の制御デューティをオフセット補正し、目標バルブタイミングが遅角側に変化する場合は、遅角側の不感帯幅の学習値に基づいてＶＣＴ１８の制御デューティをオフセット補正するようにしている。
【００３７】
前述したように、本実施例では、所定の不感帯幅学習実行条件が成立したときに、図７に示すように、目標バルブタイミングを強制的に変化させて、その時点Ｔ0 から所定の学習時間が経過するまでの期間に相対デューティ（制御デューティと保持デューティとの差分）を積算する処理を継続して、所定の学習時間が経過した時点で積算デューティ（相対デューティの積算値）の積算を終了し、この積算デューティを不感帯幅相関パラメータとして用いるようにしている。この場合、ＶＣＴ１８の実バルブタイミングが強制変化後の目標バルブタイミングに到達した後は、ＶＣＴ１８の制御デューティが保持デューティ付近に維持されるため、相対デューティ（制御デューティと保持デューティとの差分）がほぼ０となり、積算デューティ（相対デューティの積算値）がほとんど変化しなくなる。従って、学習時間は、実バルブタイミングが強制変化後の目標バルブタイミングに到達するまでの時間とすれば良く、これ以上長い時間をかけて学習しても無駄である。
【００３８】
このような観点から、本実施例では、学習時間は、応答性上限品の実バルブタイミングが強制変化後の目標バルブタイミングに到達するまでの時間（Ｔ1 −Ｔ0 ）以上で、且つ、応答性下限品の実バルブタイミングが強制変化後の目標バルブタイミングに到達するまでの時間（Ｔ2 −Ｔ0 ）以下となる範囲で設定されている。この範囲内であれば、学習時間が長い方が不感帯幅と積算デューティとの相関関係が強くなり、学習精度を高めることができる。学習対象となる実使用品の応答性が応答性上限品と応答性下限品との間でばらついているためである。但し、学習時間が長くなるほど、学習途中で不感帯幅学習実行条件が不成立となって学習が中止される確率が高くなるため、学習頻度を高めることを優先する場合は、上記範囲内で学習時間を短い方に設定すれば良い。
【００３９】
更に、本実施例では、ＶＣＴ１８の駆動方向が進角側か遅角側かによって不感帯幅（応答性）が異なるため、実バルブタイミングが強制変化後の目標バルブタイミングに到達するまでの時間も進角側と遅角側とで異なることを考慮して、予め、進角側と遅角側の不感帯幅（応答性）に応じて学習時間も進角側と遅角側とで異なる時間に設定され、そのデータがＥＣＵ２４のＲＯＭ４１等の不揮発性の記憶手段に記憶されている。
【００４０】
ところで、可変バルブタイミング制御中は、目標バルブタイミングと実バルブタイミングとの偏差に応じたフィードバック制御量と、実バルブタイミングを一定状態に保持するのに必要な保持デューティ（保持制御量）とを加算して基本的な制御デューティを求め、この基本的な制御デューティを不感帯幅学習値に応じたオフセット補正量で補正して、最終的な制御デューティを設定するようにしている。
【００４１】
制御デューティ＝フィードバック制御量＋保持デューティ＋オフセット補正量
従って、可変バルブタイミング制御の精度を高めるには、不感帯幅学習値（オフセット補正量）の精度を高めると共に、保持デューティの精度を高める必要がある。また、不感帯幅を学習する際にも、上式により制御デューティを設定するため、不感帯幅の学習精度を高めるためにも、保持デューティの精度を高めることが必要となってくる。
【００４２】
一般に、保持デューティは、学習によって求められるが、油温に応じて保持デューティが変動することを考慮して、学習領域を複数の温度領域に区分して各温度領域毎に保持デューティを学習するようにすると、いずれかの温度領域で保持デューティを学習しても、他の温度領域で保持デューティが未学習であれば、当該他の温度領域で可変バルブタイミング制御を行う場合に、保持デューティを用いることができないため、可変バルブタイミング制御の精度が悪くなる。しかも、保持デューティの学習頻度が各温度領域毎にばらつくため、学習頻度が低い温度領域では、保持デューティの学習精度も低くなり、可変バルブタイミング制御の精度が低下する。
【００４３】
そこで、本実施例では、予め、製品の設計・製造段階で、油温又はそれに相関する温度（冷却水温等）と保持デューティとの関係を規定する保持デューティ基準特性データ（保持制御量基準特性データ）を算出して、そのデータをＥＣＵ２４のＲＯＭ４１等の不揮発性の記憶手段に記憶しておき、所定の温度領域（例えば暖機後の油温等に相当する温度領域）で保持デューティを学習し、学習した所定の温度領域の保持デューティ学習値とＲＯＭ４１等から読み出した保持デューティ基準特性データとに基づいて他の温度領域の保持デューティを設定するようにしている。
この場合、保持デューティの設定方法は、例えば、次の２通りの方法がある。
【００４４】
［保持デューティ設定方法（その１）］
保持デューティ基準特性データとして、図１０及び図１１に示すように、保持デューティを学習する時の温度領域（例えば暖機後の油温に対応する温度領域）の保持デューティを基準値Ｃにしてこれに対する補正量を各温度領域毎に設定したデータを用いる。本実施例では、暖機後の油温（例えば８５ｄｅｇＣ）の時に保持デューティを学習し、この保持デューティ学習値Ｄを、図１０の保持デューティ補正量マップから読み出した各温度領域の補正量Ａ１，Ａ２，Ａ３，…で補正することで、各温度領域の保持デューティを設定する。ここで、保持デューティ基準値Ｃと各温度領域の補正量Ａ１，Ａ２，Ａ３，…は、予め、製品の設計・製造段階で、机上で算出されている。
【００４５】
温度領域ｉの保持デューティ＝Ｃ＋Ａｉ＋（Ｄ−Ｃ）
＝Ａｉ＋Ｄ
上式において、Ａｉは、温度領域ｉにおける補正量である。
【００４６】
［保持デューティ設定方法（その２）］
保持デューティ基準特性データとして、図１２及び図１３に示すように、各温度領域毎にそれぞれ保持デューティ基準値Ｃ１，Ｃ２，Ｃ３，…を設定したデータを用い、実際に学習した所定の温度領域（例えば暖機後の油温に対応する温度領域）の保持デューティ学習値Ｄと当該所定の温度領域の保持デューティ基準値Ｃ５との差分（Ｄ−Ｃ５）を補正量Ｂとして設定し、各温度領域の保持デューティ基準値Ｃ１，Ｃ２，Ｃ３，…を前記補正量Ｂで補正することで各温度領域の保持デューティを設定する。ここで、各温度領域の保持デューティ基準値Ｃ１，Ｃ２，Ｃ３，…は、予め、製品の設計・製造段階で、机上で算出されている。
【００４７】
温度領域ｉの保持デューティ＝Ｃｉ＋Ｂ
＝Ｃｉ＋（Ｄ−Ｃ５）
上式において、Ｃｉは、温度領域ｉにおける保持デューティ基準値である。
【００４８】
以上説明したいずれかの保持デューティ設定方法で設定した各温度領域の保持デューティは、書き換え可能な不揮発性メモリであるバックアップＲＡＭ４３（ＳＲＡＭ）等に学習マップとして記憶しておき、その学習マップの各温度領域の保持デューティの中から、油温センサ４７で検出した現在の油温等に対応する温度領域の保持デューティを選択して制御デューティを演算するようにしても良い。勿論、エンジン運転中に油温センサ４７で検出した油温等が変化する毎に、その都度、その温度領域の保持デューティを上記いずれかの方法で設定して制御デューティを演算するようにしても良い。
【００４９】
本実施例では、不感帯幅の学習を行う際に、上記いずれかの方法で設定した保持デューティを用いて制御デューティを演算し、図１４に示すように、目標バルブタイミングを進角側に強制的に変化させて進角側の積算デューティを算出して進角側の不感帯幅を学習する進角側の学習処理と、目標バルブタイミングを遅角側に強制的に変化させて遅角側の積算デューティを算出して遅角側の不感帯幅を学習する遅角側の学習処理とを実行するようにしているが、この際、目標バルブタイミングを進角側／遅角側に強制的に変化させる直前に、それぞれ目標バルブタイミングと実バルブタイミングとの定常偏差を算出して、図１５又は図１６の保持デューティ定常偏差補正マップを参照して、定常偏差に応じた補正量を設定して保持デューティを補正する。ここで、定常偏差とは、目標バルブタイミングと実バルブタイミングが共に変化しない定常状態のときの両者の偏差である。目標バルブタイミングを進角側に強制的に変化させる場合は、図１５の進角側の保持デューティ定常偏差補正マップを用い、目標バルブタイミングを遅角側に強制的に変化させる場合は、図１６の遅角側の保持デューティ定常偏差補正マップを用いる。
【００５０】
この場合、目標バルブタイミングと実バルブタイミングとの定常偏差が所定値以上である場合のみに、該定常偏差に基づいて保持デューティを補正するようにしても良い。要するに、定常偏差が所定値未満である場合は、定常偏差が小さくてほとんど問題にならないと判断して、定常偏差に基づく保持デューティの補正を行わないようにするものであり、これにより、保持デューティの過補正を防止できると共に、ＥＣＵ２４の演算負荷を軽減することができる。
【００５１】
以上説明した本実施例の保持デューティの設定処理、不感帯幅学習処理及び可変バルブタイミング制御は、ＥＣＵ２４によって図１７乃至図２０の各ルーチンに従って実行される。以下、各ルーチンの処理内容を説明する。
【００５２】
［メインルーチン］
図１７のメインルーチンは、イグニッションスイッチのオン期間中（ＥＣＵ２４の電源オン期間中）にＥＣＵ２４によって周期的に実行される。本ルーチンが起動されると、まず、ステップ１００で、後述する図１８の保持デューティ設定ルーチンを実行して、保持デューティ学習実行条件が成立しているときに、所定の温度領域（例えば暖機後の油温又は冷却水温に相当する温度領域）で保持デューティを学習し、学習した所定の温度領域の保持デューティ学習値とＲＯＭ４１等から読み出した保持デューティ基準特性データ（図１０の保持デューティ補正量マップ又は図１２の保持デューティ基準値マップ）とに基づいて、上述したいずれかの方法で各温度領域の保持デューティを設定する。
【００５３】
この後、ステップ２００に進み、後述する図１９の不感帯幅学習ルーチンを実行して、不感帯幅を学習する。この後、ステップ３００に進み、後述する図２０の可変バルブタイミング制御ルーチンを実行して、目標バルブタイミングと実バルブタイミングとの偏差に応じたフィードバック制御量と保持デューティと不感帯幅学習値を用いて制御デューティを設定する。
【００５４】
［保持デューティ設定ルーチン］
図１８の保持デューティ設定ルーチンは、上記図１７のメインルーチンのステップ１００で実行されるサブルーチンであり、後述する図２０の可変バルブタイミング制御ルーチンと共に特許請求の範囲でいう制御手段としての役割を果たす。本ルーチンが起動されると、まず、ステップ１０１で、保持デューティ学習実行条件が成立しているか否かを、例えば以下の３つの条件(1) 〜(3) によって判定する。
【００５５】
(1) 油温センサ４７で検出した油温（又は冷却水温センサ４６で検出した冷却水温）が所定の温度領域（例えば暖機後の油温等に相当する温度領域）であること
(2) 目標バルブタイミングと実バルブタイミングが共に変化しない定常状態であること  (3) 自己診断機能（図示せず）によりＶＣＴ制御系の異常が検出されていないこと
【００５６】
これら３つの条件(1) 〜(3) のうち、いずれか１つでも満たさない条件があれば、保持デューティ学習実行条件が不成立となり、以降の処理を行うことなく本ルーチンを終了する。
【００５７】
一方、３つの条件(1) 〜(3) が全て満たされれば、保持デューティ学習実行条件が成立して、ステップ１０２に進み、所定の温度領域（例えば暖機後の油温等に相当する温度領域）における現在の制御デューティを保持デューティとして学習する。このステップ１０２の処理が特許請求の範囲でいう保持デューティ学習手段としての役割を果たす。
【００５８】
この後、ステップ１０３に進み、学習した所定の温度領域の保持デューティ学習値とＲＯＭ４１等から読み出した保持デューティ基準特性データ（図１０の保持デューティ補正量マップ又は図１２の保持デューティ基準値マップ）とに基づいて、上述したいずれかの方法で各温度領域の保持デューティを設定する。
【００５９】
この後、ステップ１０４に進み、目標バルブタイミングと実バルブタイミングとの定常偏差が所定値以上であるか否かを判定し、当該定常偏差が所定値未満であれば、定常偏差が小さくてほとんど問題にならないと判断して、定常偏差に基づく保持デューティの補正を行わずに、本ルーチンを終了する。
【００６０】
これに対して、上記ステップ１０４で、定常偏差が所定値以上であると判定されれば、ステップ１０６に進み、実バルブタイミングの駆動方向に応じて、図１５又は図１６の保持デューティ定常偏差補正マップを参照して、定常偏差に応じた補正量を設定して保持デューティを補正する。
【００６１】
［不感帯幅学習ルーチン］
図１９の不感帯幅学習ルーチンは、前記図１７のメインルーチンのステップ２００で実行されるサブルーチンであり、特許請求の範囲でいう不感帯幅学習手段としての役割を果たす。本ルーチンが起動されると、まず、ステップ２０１で、不感帯幅学習実行条件が成立しているか否かを、例えば以下の３つの条件(1) 〜(3) によって判定する。
【００６２】
(1) エンジン始動後にＶＣＴ１８を駆動する油圧が該ＶＣＴ１８のロック状態を解除するのに必要な所定油圧以上に上昇するまでの所定時間（例えば数秒）が経過すること
(2) アクセルペダルが踏み込まれていないこと
(3) 自己診断機能（図示せず）によりＶＣＴ制御系の異常が検出されていないこと
上記条件(1) を設ける理由は、エンジン停止後に油圧が低下してＶＣＴ１８のロックピンがロック穴に嵌まり込んでＶＣＴ１８が基準位置（例えば最遅角位置、中間位置等）でロックされた状態になるため、不感帯幅を学習するためにＶＣＴ１８を駆動するには、その前提として、ＶＣＴ１８のロック状態を解除する必要があるためである。
【００６３】
上記条件(2) を設ける理由は、不感帯幅学習の実行中であっても、運転者がアクセルペダルを踏み込んだときには、運転者の車両発進意思又は加速意思を優先して、直ちに車両発進又は加速を実行できるようにするためである。
【００６４】
上記条件(3) を設ける理由は、ＶＣＴ制御系が異常であれば、不感帯幅の学習を正常に行うことができないためである。
上述した３つの条件(1) 〜(3) のうち、いずれか１つでも満たさない条件があれば、不感帯幅学習実行条件が不成立となり、以降の処理を行うことなく本ルーチンを終了する。      
【００６５】
一方、３つの条件(1) 〜(3) が全て満たされれば、不感帯幅学習実行条件が成立して、まず、進角側の不感帯幅の学習を次のように実行する。まず、ステップ２０２で、目標バルブタイミング（目標値）を進角側にステップ状に所定クランク角度（例えば１０〜１５℃Ａ）だけ強制的に変化させる。これにより、後述する図２０の可変バルブタイミング制御ルーチンにより、目標バルブタイミングと実バルブタイミングとの偏差に応じたフィードバック制御量と保持デューティと不感帯幅学習値を用いて制御デューティを設定して、実バルブタイミングを強制変化後の目標バルブタイミングへ向けて進角側に駆動する。この後、ステップ２０３に進み、目標バルブタイミングの進角側への強制変化後の相対デューティ（制御デューティと保持デューティとの差分）を積算して、進角側の積算デューティ（相対デューティの積算値）を更新する。
【００６６】
この後、ステップ２０４に進み、目標バルブタイミングを進角側に強制的に変化させた時点から、進角側の学習時間が経過したか否かを判定する。ここで、進角側の学習時間は、応答性上限品の実バルブタイミングが進角側への強制変化後の目標バルブタイミングに到達するまでの時間（Ｔ1 −Ｔ0 ）以上で、且つ、応答性下限品の実バルブタイミングが進角側への強制変化後の目標バルブタイミングに到達するまでの時間（Ｔ2 −Ｔ0 ）以下となる範囲で設定されている。この範囲内であれば、比較的短い学習時間で、精度の良い進角側の不感帯幅を学習することができる。
【００６７】
上記ステップ２０４で、まだ進角側の学習時間が経過していないと判定されれば、ステップ２０５に進み、前記ステップ２０１で判定した不感帯幅学習実行条件が成立した状態が続いているか否かを判定し、不感帯幅学習実行条件が成立した状態が続いていれば、ステップ２０３に戻り、進角側の積算デューティの算出を継続する。
【００６８】
もし、進角側の学習時間が経過する前に、上記ステップ２０５で、不感帯幅学習実行条件が不成立と判定されれば、その時点で、本ルーチンを終了する。これにより、例えば、進角側の学習時間が経過する前に、アクセルペダルが踏み込まれれば、その時点で、進角側の不感帯幅の学習が中止（禁止）されて、通常の可変バルブタイミング制御に切り換えられ、アクセルペダルの踏み込み量に応じて目標バルブタイミングが設定される。
【００６９】
一方、進角側の学習時間が経過するまで、不感帯幅学習実行条件が成立した状態が続けば、その時点で、ステップ２０４で「Ｙｅｓ」と判定されて、ステップ２０６に進み、進角側の学習時間が経過した時点の進角側の積算デューティａ2 と、ＲＯＭ４１等から読み込んだ現在の油温（又は冷却水温等）に対応する温度領域の応答性上限品の進角側の積算デューティａ1 との比ａ2 ／ａ1 に応じた進角側の学習補正係数を図９の学習補正係数マップにより算出する。
【００７０】
この後、ステップ２０７に進み、進角側の学習補正係数を所定の上下限のガード値の範囲内に制限するようにガード処理する。つまり、上記ステップ２０６で算出した進角側の学習補正係数が上下限のガード値の範囲内であれば、そのまま制限せずに進角側の学習補正係数を学習し、上記ステップ２０６で算出した進角側の学習補正係数が上下限のガード値の範囲を越えれば、進角側の学習補正係数をガード値で制限する（学習補正係数＝ガード値）。これにより、進角側の学習補正係数を誤学習することを防止する。
【００７１】
この後、ステップ２０８に進み、ＲＯＭ４１等から読み込んだ現在の油温（又は冷却水温等）に対応する温度領域の応答性上限品の進角側の不感帯幅ｂ1 （不感帯幅ベース値）を進角側の学習補正係数で補正して実使用品の進角側の不感帯幅ｂ2 を求めることで、進角側の不感帯幅ｂ2 を温度領域毎に学習して、書き換え可能な不揮発性メモリであるバックアップＲＡＭ４３（ＳＲＡＭ）等に保存された進角側の不感帯幅学習マップの該当温度領域の学習値を更新する。
進角側の不感帯幅ｂ2 ＝進角側の不感帯幅ベース値×進角側の学習補正係数
【００７２】
以上のようにして、進角側の不感帯幅ｂ2 を学習した後、遅角側の不感帯幅の学習を次のように実行する。まず、ステップ２０９で、目標バルブタイミング（目標値）を遅角側にステップ状に所定クランク角度（例えば１０〜１５℃Ａ）だけ強制的に変化させる。これにより、後述する図２０の可変バルブタイミング制御ルーチンにより、目標バルブタイミングと実バルブタイミングとの偏差に応じたフィードバック制御量と保持デューティと不感帯幅学習値を用いて制御デューティを設定して、実バルブタイミングを強制変化後の目標バルブタイミングへ向けて遅角側に駆動する。この後、ステップ２１０に進み、目標バルブタイミングの遅角側への強制変化後の相対デューティ（制御デューティと保持デューティとの差分）を積算して、遅角側の積算デューティ（相対デューティの積算値）を更新する。
【００７３】
この後、ステップ２１１に進み、目標バルブタイミングを遅角側に強制的に変化させた時点から、遅角側の学習時間が経過したか否かを判定する。ここで、遅角側の学習時間は、応答性上限品の実バルブタイミングが遅角側への強制変化後の目標バルブタイミングに到達するまでの時間以上で、且つ、応答性下限品の実バルブタイミングが遅角側への強制変化後の目標バルブタイミングに到達するまでの時間以下となる範囲で設定されている。この範囲内であれば、比較的短い学習時間で、精度の良い遅角側の不感帯幅を学習することができる。
【００７４】
上記ステップ２１１で、まだ遅角側の学習時間が経過していないと判定されれば、ステップ２１２に進み、前記ステップ２０１で判定した不感帯幅学習実行条件が成立した状態が続いているか否かを判定し、不感帯幅学習実行条件が成立した状態が続いていれば、ステップ２１０に戻り、遅角側の積算デューティの算出を継続する。
【００７５】
もし、遅角側の学習時間が経過する前に、上記ステップ２１２で、不感帯幅学習実行条件が不成立と判定されれば、その時点で、本ルーチンを終了する。これにより、例えば、遅角側の学習時間が経過する前に、アクセルペダルが踏み込まれれば、その時点で、遅角側の不感帯幅の学習が中止（禁止）されて、通常の可変バルブタイミング制御に切り換えられ、アクセルペダルの踏み込み量に応じて目標バルブタイミングが設定される。
【００７６】
一方、遅角側の学習時間が経過するまで、不感帯幅学習実行条件が成立した状態が続けば、その時点で、ステップ２１１で「Ｙｅｓ」と判定されて、ステップ２１３に進み、遅角側の学習時間が経過した時点の遅角側の積算デューティと、ＲＯＭ４１等から読み込んだ現在の油温（又は冷却水温等）に対応する温度領域の応答性上限品の遅角側の積算デューティとの比に応じた遅角側の学習補正係数を図９の学習補正係数マップにより算出する。
【００７７】
この後、ステップ２１４に進み、遅角側の学習補正係数を所定の上下限のガード値の範囲内に制限するようにガード処理する。つまり、上記ステップ２１３で算出した遅角側の学習補正係数が上下限のガード値の範囲内であれば、そのまま制限せずに遅角側の学習補正係数を学習し、上記ステップ２１３で算出した遅角側の学習補正係数が上下限のガード値の範囲を越えれば、遅角側の学習補正係数をガード値で制限する（学習補正係数＝ガード値）。これにより、遅角側の学習補正係数を誤学習することを防止する。
【００７８】
この後、ステップ２１５に進み、ＲＯＭ４１等から読み込んだ現在の油温（又は冷却水温等）に対応する温度領域の応答性上限品の遅角側の不感帯幅（不感帯幅ベース値）を遅角側の学習補正係数で補正して実使用品の遅角側の不感帯幅を求めることで、遅角側の不感帯幅を温度領域毎に学習して、書き換え可能な不揮発性メモリであるバックアップＲＡＭ４３（ＳＲＡＭ）等に保存された遅角側の不感帯幅学習マップの該当温度領域の学習値を更新する。
遅角側の不感帯幅＝遅角側の不感帯幅ベース値×遅角側の学習補正係数
【００７９】
［可変バルブタイミング制御ルーチン］
図２０の可変バルブタイミング制御ルーチンは、前記図１７のメインルーチンのステップ３００で実行されるサブルーチンであり、特許請求の範囲でいう制御手段としての役割を果たす。本ルーチンが起動されると、まず、ステップ３０１で、各種センサの出力信号を読み込んだ後、ステップ３０２に進み、現在の実バルブタイミングＶＴを算出する。この後、ステップ３０３に進み、エンジン運転状態に基づいて目標バルブタイミングＶＴtgを算出し、次のステップ３０４で、目標バルブタイミングＶＴtgと実バルブタイミングＶＴとの偏差ΔＶＴ（＝ＶＴtg−ＶＴ）を算出する。
【００８０】
この後、ステップ３０５に進み、目標バルブタイミングＶＴtgと実バルブタイミングＶＴとの偏差ΔＶＴに基づいて例えばＰＤ制御演算を行うことによりフィードバック制御量を次式により算出する。
フィードバック制御量＝Ｋp ・ΔＶＴ＋Ｋd ・ｄ（ΔＶＴ）／ｄｔ
ここで、ｄ（ΔＶＴ）／ｄｔ＝［ΔＶＴ(i) −ΔＶＴ(i-1) ］／ｄｔであり、ｄｔは演算周期、Ｋp は比例ゲイン、Ｋd は微分ゲインである。ΔＶＴ(i) は今回の偏差ΔＶＴ、ΔＶＴ(i-1) は前回の偏差ΔＶＴである。
【００８１】
この後、ステップ３０６に進み、前記図１８の保持デューティ設定ルーチンにより設定した各温度領域の保持デューティの中から、現在の油温（又は冷却水温等）に対応する温度領域の保持デューティを読み込む。
【００８２】
そして、次のステップ３０７で、不感帯幅の学習値に基づくオフセット補正による制御ハンチングを防止するために、オフセット補正を実行する制御領域であるか否かを、例えば、目標バルブタイミングＶＴtgと実バルブタイミングＶＴとの偏差ΔＶＴの絶対値が判定値以上であるか否かで判定する。この判定値は、固定値でも良いが、現在の油温、エンジン回転速度、負荷の少なくとも１つに応じてマップ等により設定するようにしても良い。このステップ３０７で、不感帯幅の学習値に基づくオフセット補正を実行する制御領域ではないと判定されれば、ステップ３１１に進み、オフセット補正量を０に設定して、制御デューティのオフセット補正を解除して制御ハンチングを防止する。
【００８３】
これに対して、ステップ３０７で、不感帯幅の学習値に基づくオフセット補正を実行する制御領域であると判定されれば、ステップ３０８に進み、目標バルブタイミングＶＴtgと実バルブタイミングＶＴとの偏差ΔＶＴが０以上（プラス値）であるか否かで、バルブタイミングの駆動方向が進角方向であるか否かを判定し、偏差ΔＶＴが０以上（プラス値）であれば、バルブタイミングの制御方向が進角方向であると判断して、ステップ３０９に進み、バックアップＲＡＭ４３（ＳＲＡＭ）等に保存された進角側の不感帯幅学習マップを検索して現在の油温（又は冷却水温等）に対応する温度領域の進角側の不感帯幅の学習値を読み込み、この進角側の不感帯幅の学習値に応じて、制御デューティのオフセット補正量を進角側オフセット補正量のマップＭａｐ１により設定する。この進角側オフセット補正量はプラス値となる。
【００８４】
また、上述したステップ３０８で、偏差ΔＶＴが０以下（マイナス値）であると判定されれば、バルブタイミングの制御方向が遅角方向であると判断して、ステップ３１０に進み、バックアップＲＡＭ４３（ＳＲＡＭ）等に保存された遅角側の不感帯幅学習マップを検索して現在の油温（又は冷却水温等）に対応する温度領域の遅角側の不感帯幅の学習値を読み込み、この遅角側の不感帯幅の学習値に応じて、制御デューティのオフセット補正量を遅角側オフセット補正量のマップＭａｐ２により設定する。この遅角側オフセット補正量はマイナス値となる。
【００８５】
以上のようにして、ステップ３０９〜３１１のいずれかでオフセット補正量を設定した後、ステップ３１２に進み、偏差ΔＶＴに応じたフィードバック制御量に保持デューティとオフセット補正量を加算して制御デューティを求める。
【００８６】
制御デューティ＝フィードバック制御量＋保持デューティ＋オフセット補正量
更に、バッテリ電圧の変動の影響を補償するために、上記制御デューティをバッテリ電圧に応じて補正しても良い。
この後、ステップ３１３に進み、制御デューティを出力してＶＣＴ１８の油圧制御弁２１を駆動し、実バルブタイミングを目標バルブタイミングに近付ける方向に駆動する。
【００８７】
以上説明した本実施例によれば、予め、製品の設計・製造段階で、油温又はそれに相関する温度（冷却水温等）と保持デューティとの関係を規定する保持デューティ基準特性データ（図１０の保持デューティ補正量マップ又は図１２の保持デューティ基準値マップ）をＥＣＵ２４のＲＯＭ４１等の不揮発性の記憶手段に記憶しておき、所定の温度領域（例えば暖機後の油温又は冷却水温に相当する温度領域）で保持デューティを学習し、学習した所定の温度領域の保持デューティ学習値とＲＯＭ４１等から読み出した保持デューティ基準特性データとに基づいて他の温度領域の保持デューティを設定するようにしたので、一部の温度領域の保持デューティを学習するだけで、他の温度領域の保持デューティを学習しなくても、所定の温度領域の保持デューティ学習値とＲＯＭ４１等から読み出した保持デューティ基準特性データとに基づいて当該他の温度領域の保持デューティを精度良く設定できる。これにより、一部の温度領域の保持デューティを学習するだけで、全ての温度領域で保持デューティを学習したのとほぼ同等の効果を得ることができ、全ての温度領域で可変バルブタイミング制御の精度を確保できる。
【００８８】
しかも、本実施例では、暖機後の温度領域で保持デューティを学習した方が、それよりも低い温度領域で保持デューティを学習する場合よりも、保持デューティを精度良く学習できるという事情を考慮して、保持デューティを学習する温度領域を、暖機後の温度領域に設定したので、保持デューティを精度良く学習することができる。
【００８９】
更に、本実施例では、保持デューティの誤差により目標バルブタイミングと実バルブタイミングとの間に定常偏差が発生することを考慮して、当該定常偏差に基づいて各温度領域の保持デューティを補正し、補正後の保持デューティを用いて制御デューティを設定するようにしたので、各温度領域の保持デューティの精度を更に向上させることができる。      
【００９０】
以上のようにして各温度領域の保持デューティを精度良く設定した後に、不感帯幅の学習を実行するようにしたので、不感帯幅の学習精度を向上させることができ、精度の良い不感帯幅の学習値に応じて制御デューティを精度良くオフセット補正することができて、可変バルブタイミング制御の精度を更に向上させることができる。
【００９１】
尚、本実施例では、不感帯幅を学習して、不感帯幅の学習値を書き換え可能な不揮発性メモリであるバックアップＲＡＭ４３（ＳＲＡＭ）等に更新記憶するようにしたが、積算デューティ又は学習補正係数の学習値をバックアップＲＡＭ４３（ＳＲＡＭ）等に更新記憶しておき、可変バルブタイミング制御中に、バックアップＲＡＭ４３（ＳＲＡＭ）等から読み込んだ積算デューティ又は学習補正係数の学習値を用いて不感帯幅を算出して、その不感帯幅に基づいてオフセット補正量を算出するようにしても良い。
【００９２】
また、本実施例では、不感帯幅相関パラメータとして、相対デューティ（制御デューティと保持デューティとの差分）の時間積分値（積算値）である積算デューティを用いたが、これに代えて、例えば、相対デューティの変化速度を用いても良い。或は、実バルブタイミングの変化速度、実バルブタイミングの時間積分値、目標バルブタイミングと実バルブタイミングとの差分Ａの変化速度、該差分Ａの時間積分値のいずれかを不感帯幅相関パラメータとして用いても良い。
【００９３】
尚、本実施例は、本発明を吸気側の可変バルブタイミング制御に適用した実施例であるが、排気側の可変バルブタイミング制御に適用しても良く、また、油温センサ４７を持たないシステムであっても、油温と相関関係のある冷却水温等の温度を検出する冷却水温センサ４６等の温度センサがあれば、本発明を適用して実施できることは言うまでもない。
【図面の簡単な説明】
【００９４】
【図１】本発明の一実施例における可変バルブタイミング制御システムを概略的に示す図である。
【図２】可変バルブタイミング装置の縦断面図である。
【図３】（ａ）は相対デューティとＶＣＴ変化速度との関係を表すＶＣＴ応答特性図、（ｂ）は不感帯付近のＶＣＴ応答特性を拡大して示す図である。
【図４】（ａ）はＶＣＴの応答性のばらつきの上下限と進角側の不感帯幅と作動油の油温との関係を示す図、（ｂ）はＶＣＴの応答性のばらつきの上下限と遅角側の不感帯幅と作動油の油温との関係を示す図である。
【図５】学習時のバルブタイミング、制御デューティ、積算デューティの挙動を説明するタイムチャートである。
【図６】積算デューティと不感帯幅との相関関係を説明する図である。
【図７】学習時の目標バルブタイミングと実バルブタイミングの挙動とＶＣＴの応答性のばらつきとの関係を説明する図である。
【図８】不感帯幅ベース値マップを概念的に説明する図である。
【図９】学習補正係数マップを概念的に説明する図である。
【図１０】保持デューティ補正量マップの一例を概念的に示す図である。
【図１１】保持デューティ設定方法（その１）を説明する図である。
【図１２】保持デューティ基準値マップの一例を概念的に示す図である。
【図１３】保持デューティ設定方法（その２）を説明する図である。
【図１４】進角側の不感帯幅を学習する進角側の学習処理と、遅角側の不感帯幅を学習する遅角側の学習処理と、定常偏差に応じて保持デューティを補正する処理を説明する図である。
【図１５】進角側の保持デューティ定常偏差補正マップの一例を概念的に示す図である。
【図１６】遅角側の保持デューティ定常偏差補正マップの一例を概念的に示す図である。
【図１７】メインルーチンの処理の流れを説明するフローチャートである。
【図１８】保持デューティ設定ルーチンの処理の流れを説明するフローチャートである。
【図１９】不感帯幅学習ルーチンの処理の流れを説明するフローチャートである。
【図２０】可変バルブタイミング制御ルーチンの処理の流れを説明するフローチャートである。
【符号の説明】
【００９５】
１１…エンジン（内燃機関）、１６…吸気側カム軸、１７…排気側カム軸、１８…可変バルブタイミング装置（ＶＣＴ，可変バルブ機構）、２０…オイルポンプ、２１…油圧制御弁（油圧制御装置）、２２…カム角センサ、２３…クランク角センサ、２４…ＥＣＵ（制御手段，保持制御量学習手段）、２５…ハウジング、３１…ベーン、３２…進角室、３３…遅角室、４１…ＲＯＭ（不揮発性の記憶手段）、４３…バックアップＲＡＭ（書き換え可能な不揮発性メモリ）、４４…アクセルセンサ、４６…冷却水温センサ（温度検出手段）、４７…油温センサ（温度検出手段）
【図１】
2010031700.tif 000003
【図２】
2010031700.tif 000004
【図３】
2010031700.tif 000005
【図４】
2010031700.tif 000006
【図５】
2010031700.tif 000007
【図６】
2010031700.tif 000008
【図７】
2010031700.tif 000009
【図８】
2010031700.tif 000010
【図９】
2010031700.tif 000011
【図１０】
2010031700.tif 000012
【図１１】
2010031700.tif 000013
【図１２】
2010031700.tif 000014
【図１３】
2010031700.tif 000015
【図１４】
2010031700.tif 000016
【図１５】
2010031700.tif 000017
【図１６】
2010031700.tif 000018
【図１７】
2010031700.tif 000019
【図１８】
2010031700.tif 000020
【図１９】
2010031700.tif 000021
【図２０】
2010031700.tif 000022