(57)【要約】【課題】予め学習した不感帯幅と実際の不感帯幅とにズレが生じたときの不感帯の影響を排除する。【解決手段】本発明は、アクチュエータを操作して変換角を調整する可変動弁機構の制御装置であって、アクチュエータの不感帯領域を学習記憶し、不感帯領域を通過するように電流指令値をオフセットし、所定期間内における、電流指令値が不感帯領域の上限よりも上にオフセットされている第１の時間と、不感帯領域の下限よりも下にオフセットされている第２の時間と、を算出し（Ｓ５１１，Ｓ５２１）、第１の時間が第２の時間よりも大きいときは、学習記憶した不感帯領域を上限方向に移動修正し、第１の時間が第２の時間よりも小さいときは、学習記憶した不感帯領域を下限方向に移動修正する（Ｓ５１５〜Ｓ５１８）。【選択図】図６
2008151096.tif 000002
【特許請求の範囲】
【請求項１】
電流指令値に基づいてアクチュエータを操作して、機関のクランク軸に対するカム軸の相対位相角である変換角を変位させる可変動弁機構の制御装置であって、
機関運転状態に基づいて目標変換角を設定し、所望の規範応答でその目標変換角に到達するように、前記アクチュエータへの電流指令値を算出する電流指令値演算手段と、
前記アクチュエータの不感帯領域を学習記憶する不感帯領域学習手段と、
前記不感帯領域を通過するように前記電流指令値をオフセットする電流指令値オフセット手段と、
所定期間内における、前記電流指令値が前記不感帯領域の上限よりも上にオフセットされている第１の時間と、前記不感帯領域の下限よりも下にオフセットされている第２の時間と、を算出する時間演算手段と、
前記第１の時間が前記第２の時間よりも大きいときは、学習記憶した前記不感帯領域を上限方向に移動修正し、前記第１の時間が前記第２の時間よりも小さいときは、学習記憶した前記不感帯領域を下限方向に移動修正する不感帯領域修正学習手段と、
を備えたことを特徴とする可変動弁機構の制御装置。
【請求項２】
前記不感帯領域修正学習手段は、今回の制御周期における前記目標変換角と、その１制御周期前の前記目標変換角と、の差が第１の所定値より小さいときに前記不感帯領域を移動修正する
ことを特徴とする請求項１に記載の可変動弁機構の制御装置。
【請求項３】
前記変換角を検出する変換角検出手段を備え
前記不感帯領域修正学習手段は、前記目標変換角と前記変換角との偏差が第２の所定値より小さいときに前記不感帯領域を移動修正する
ことを特徴とする請求項１又は２に記載の可変動弁機構の制御装置。
【請求項４】
前記所定期間は、前記電流指令値が負から正に切り替わってから、再び負から正に切り替わるまでの期間である
ことを特徴とする請求項１から３までのいずれか１つに記載の可変動弁機構の制御装置。
【請求項５】
前記所定期間は、前記電流指令値が負から正に切り替わってから、再び負から正に切り替わるまでの期間よりも長い期間である
ことを特徴とする請求項１から３までのいずれか１つに記載の可変動弁機構の制御装置。
【請求項６】
前記不感帯領域修正学習手段は、前記不感帯領域の中央値を修正して、その不感帯領域を移動修正する
ことを特徴とする請求項１から５までのいずれか１つに記載の可変動弁機構の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は可変動弁機構の制御装置に関する。
【背景技術】
【０００２】
可変動弁機構の制御装置は、内燃機関のクランク軸に対するカム軸の相対位相角（以下「変換角」という）に基づいて、可変動弁機構のアクチュエータを所定の演算周期でフィードバック制御している。
【０００３】
しかし、アクチュエータが、入力信号の変化に対して応答が非常に遅いか、又はほとんど応答しない制御領域（以下「不感帯」という）を有するときは、不感帯の通過に時間を要するため、積分動作に遅れが生じ、目標値に応答よく収束させることができない。
【０００４】
そこで、従来、予め不感帯幅に相当する電流値を学習し、補正量として入力信号にオフセットすることで不感帯の影響を排除するものがあった（例えば、特許文献１参照）。
【特許文献１】特開２０００−７１９５９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、上述した従来制御は、２つのアクチュエータを使用して進角遅角を切り替えるため、不感帯の中央値を考慮する必要がなかった。しかしながら、１つのアクチュエータを使用して進角遅角を切り替える場合は、不感帯の中央値を考慮する必要があり、予め学習した不感帯中央値と実際の不感帯中央値とにズレが生じたときに、不感帯の影響を排除しきれず対応できないという問題点があった。
【０００６】
本発明は、このような従来の問題点に着目してなされたものであり、予め学習した不感帯中央値と実際の不感帯中央値とにズレが生じたときに、不感帯の影響を排除することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は以下のような解決手段によって、前記課題を解決する。なお、理解を容易にするため、本発明の実施形態に対応する符号を付するが、これに限定されるものではない。
【０００８】
電流指令値に基づいてアクチュエータ（２０）を操作して、機関のクランク軸に対するカム軸（１１）の相対位相角である変換角を変位させる可変動弁機構の制御装置（１）であって、機関運転状態に基づいて目標変換角を設定し、所望の規範応答でその目標変換角に到達するように、前記アクチュエータ（２０）への電流指令値を算出し（Ｓ３，Ｓ４）、前記アクチュエータ（２０）の不感帯領域を学習記憶し（Ｓ５１）、前記不感帯領域を通過するように前記電流指令値をオフセットし（Ｓ５３，Ｓ５４）、所定期間内における、前記電流指令値が前記不感帯領域の上限よりも上にオフセットされている第１の時間と、前記不感帯領域の下限よりも下にオフセットされている第２の時間と、を算出し（Ｓ５１１，Ｓ５２１）、前記第１の時間が前記第２の時間よりも大きいときは、学習記憶した前記不感帯領域を上限方向に移動修正し、前記第１の時間が前記第２の時間よりも小さいときは、学習記憶した前記不感帯領域を下限方向に移動修正する（Ｓ５１５〜Ｓ５１８）。
【発明の効果】
【０００９】
予め学習記憶していた不感帯中央値と実際の不感帯中央値とにズレがあるときに、電流指令値が正である時間と負である時間との長さに差が出ることを利用して、学習記憶していた不感帯中央値を修正する。これにより、不感帯の影響を排除することができる。
【発明を実施するための最良の形態】
【００１０】
以下、図面を参照して本発明の実施形態について説明する。
【００１１】
（第１実施形態）
図１は本発明の第１実施形態による可変動弁機構（Variable valve Timing Control；以下「ＶＴＣ」という）１０を備えたバルブタイミング制御装置１のシステム図である。
【００１２】
ＶＴＣ１０は、カム軸１１の一端部に設けられる。
【００１３】
カム軸１１は、一端部に設けられたカム軸駆動用スプロケット１２を介して、図示しないベルトやチェーンで機関のクランク軸と連係され、機関のクランク軸に連動して軸周りに回転する。カム軸１１には、カム軸１１と一体となって回転する数枚のベーン１３が接続される。ベーン１３は、カム軸駆動用スプロケット１２の内部に同軸的に配置され、所定の回転角の範囲で相対的に回転可能となっている。
【００１４】
カム軸駆動用スプロケット１２は、内部に油圧室を有する。この油圧室は、ベーン１３によって進角油圧室１４と遅角油圧室１５とに区切られる。
【００１５】
進角油圧室１４は進角油路２１を介して、遅角油圧室１５は遅角油路２２を介して、それぞれ通路切り換え用のソレノイドバルブ２０に接続される。ソレノイドバルブ２０には、進角油路２１及び遅角油路２２のほかに、オイルパン２３内の作動油を供給するオイル供給路２４と、オイルパン２３に作動油を戻すドレン通路２５と、が接続される。オイル供給路２４の途中にはオイルパン２３内の作動油を圧送するオイルポンプ２６が配設される。
【００１６】
バルブタイミング制御装置１は、このソレノイドバルブ２０への通電量を制御して通路を切り替えることで、進角油圧室１４及び遅角油圧室１５への油圧を適宜変更、保持し、変換角を変更、保持する。これにより、ＶＴＣ１０は、図示しない吸気バルブ又は排気バルブのバルブタイミング（開閉時期）を変化させる。
【００１７】
具体的には、ソレノイドバルブ２０への通電量を増大させると、通路Ａに切り替わり、オイルパン２３内の作動油が、進角油路２１を通って進角油圧室１４に供給される。一方で、遅角油圧室１５の作動油が、遅角油路２２及びドレン通路２５を通ってオイルパン２３に排出される。これにより、進角油圧室１４の油圧が相対的に高くなり、ベーン１３が遅角油圧室１５の方向に移動する。その結果、変換角が変化し、バルブタイミングが進角する。
【００１８】
また、ソレノイドバルブ２０への通電量を減少させると、通路Ｂに切り替わり、オイルパン２３内の作動油が、遅角油路２２を通って遅角油圧室１５に供給される。一方で、進角油圧室１４の作動油が、進角油路２１及びドレン通路２５を通ってオイルパン２３に排出される。これにより、遅角油圧室１５の油圧が相対的に高くなり、ベーン１３が進角油圧室１４の方向に移動する。その結果、変換角が、ソレノイドバルブ２０への通電量を増大させたときと反対方向に変化し、バルブタイミングが遅角する。
【００１９】
さらに、ソレノイドバルブ２０への通電量が上記２つの中間のときは、通路Ｃに切り替わり、作動油の供給が遮断される。その結果、変換角が変化せず、カム軸１１とカム軸駆動用スプロケット１２との相対位置がそのまま保持される。
【００２０】
このソレノイドバルブ２０への通電量の制御は、コントローラ３０によって実行される。コントローラ３０は、中央演算装置（ＣＰＵ）、読み出し専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）及び入出力インタフェース（Ｉ／Ｏインタフェース）等を備えたマイクロコンピュータで構成される。
【００２１】
コントローラ３０には、クランク角センサ３１と、カム角センサ３２と、水温センサ３３と、が接続される。クランク角センサ３１は、クランク軸の角度信号を出力するとともに、クランク軸の基準回転位置で基準クランク位置信号を出力する。カム角センサ３２は、カム軸１１の基準回転位置で基準カム位置信号を出力する。水温センサ３３は、機関水温を出力する。
【００２２】
コントローラ３０は、上記センサ３１，３２によって検出されたクランク軸とカム軸１１との基準回転位置のずれ角に基づいてＶＴＣ１０の現在の変換角（以下「実変換角」という）θnowを算出する。そして、この実変換角θnowが、機関の運転条件に基づいて設定される目標変換角（規範応答）θcomに追従するように、ソレノイドバルブ２０への通電量をフィードバック制御する。
【００２３】
しかしながら、ソレノイドバルブ２０は、通路Ａから通路Ｂへ、又は通路Ｂから通路Ａへ切り替わるとき、すなわち、進角側から遅角側へ、又は遅角側から進角側へバルブタイミングを変化させるときに不感帯（通路Ｃ）を通過する。このような不感帯を持つ制御対象をフィードバック制御する場合には、以下のような問題が生じる。
【００２４】
図２は、ソレノイドバルブ２０の不感帯特性を示す図である。図２に示すように、ソレノイドバルブ２０は、現在のバルブタイミング（変換角）を保持する保持電流値（以下「不感帯中央値」という）付近に、電流値の変化に対してバルブタイミングの応答性が極端に遅いか、又はほとんど応答しない所定の幅を持った不感帯を有する。
【００２５】
そのため、進角側から遅角側へ、又は遅角側から進角側へバルブタイミングを変化させるときに、電流値を変化させても、不感帯を抜けるまでは変換角はほとんど動かない。したがって、バルブタイミングの制御に応答遅れが発生する。そして、この応答遅れを補正するために、フォードバック制御によって電流値が増大される。その結果、電流値が増大された状態で不感帯を抜けてしまい、バルブタイミングを過剰に進角又は遅角させてしまうことになって、目標バルブタイミングに応答よく収束させることができないという問題が生じる。
【００２６】
このような問題を解決するために、進角側から遅角側へ、又は遅角側から進角側へバルブタイミングを変化させるときに、不感帯幅に相当する電流値を補正量としてオフセットして、不感帯の影響を排除することが考えられる。
【００２７】
しかしながら、不感帯は、ソレノイドバルブの品質バラツキや経時劣化、機関油温、機関回転速度等によって上下に変化する。つまり、不感帯中央値が上下に変化する。そのため、制御対象であるソレノイドバルブ２０の実際の不感帯中央値（以下「実不感帯中央値」という）と、コントローラ３０の認識している不感帯中央値（以下「コントローラ認識不感帯中央値」という）とにズレが生じる場合がある。そうすると、コントローラ３０が、不感帯の影響を排除すべく不感帯の領域外となるように不感帯幅に相当する電流値を補正量としてオフセットしても、実際には、オフセットされた電流値が不感帯の領域内に収まったままになることがある。その結果、不感帯の影響を排除しきれず、目標バルブタイミングに応答よく収束させることができなくなる。以下では、図１２を参照してこのような従来例による問題点について説明する。
【００２８】
図１２は、従来例によるコントローラ認識不感帯中央値と、実不感帯中央値と、にズレが生じたときに発生する問題点について説明するためのタイムチャートである。図１２では、コントローラ認識不感帯中央値よりも、実不感帯中央値が高い場合を一例として示してある。
【００２９】
図１２（Ａ）には、オフセット処理後の電流値Ｉcom（実線）を示すとともに、コントローラ認識不感帯中央値（太い破線）とその不感帯幅（以下「コントローラ認識不感帯幅」という）（破線）、及び実不感帯中央値（太い一点鎖線）とその不感帯幅（以下「実不感帯幅」という）（一点鎖線）を併記する。図１２（Ｂ）には、目標変換角に実変換角を一致させるための電流値（以下「オフセット処理前電流値」という）Ｉcomff+fbを示す。図１２（Ｃ）には、目標変換角と実変換角との偏差を示す。なお、図１２（Ａ）のオフセット処理後の電流値Ｉcomは、図１２（Ｂ）のオフセット処理前電流値Ｉcomff+fbに、不感帯を回避するだけの補正量をオフセットしたものである。
【００３０】
時刻ｔ１で、オフセット処理前電流値Ｉcomff+fbが負から正に切り替わると（図１２（Ｂ））、コントローラ３０は、コントローラ認識不感帯幅の上限値ＩCTまでオフセット処理後電流値Ｉcomをオフセットする（図１２（Ａ））。
【００３１】
しかし、コントローラ認識不感帯中央値Ｉcenよりも、実不感帯中央値Ｉscenのほうが大きいため、オフセット処理後の電流値Ｉcomは、実際には、未だ実不感帯幅の内側に収まっている（図１２（Ａ））。したがって、オフセット処理後の電流値Ｉcomが、実不感帯幅の上限値ＩSTに達する時刻ｔ２までは、変換角が変位せず、バルブタイミングの制御に応答遅れが生じる。
【００３２】
時刻ｔ２で、オフセット処理後の電流値Ｉcomが、実不感帯幅の上限値ＩSTを超えると、積分器によって偏差が積分され、変換角が変位する（図１２（Ｃ））。
【００３３】
時刻ｔ３で、偏差が負になると電流値は減少する。すると、オフセット処理後の電流値Ｉcomは、再び実不感帯幅の内側に収まってしまう（図１２（Ａ））。そのため、この間も変換角が変位せず、バルブタイミングの制御に応答遅れが生じる。
【００３４】
時刻ｔ４で、オフセット処理前電流値Ｉcomff+fbが正から負に切り替わったときは（図１２（Ｂ））、その時点で不感帯を超えているため、速やかに変換角が動き、時刻ｔ５で、偏差の符号が反転してオフセット処理前電流値Ｉcomff+fbが正になる（図１２（Ｂ））。
【００３５】
このように、コントローラ認識不感帯中央値と、実不感帯中央値と、にズレが生じていると、不感帯幅に相当する電流値を補正量としてオフセットしても、不感帯の影響を完全に排除することができない。そのため、バルブタイミングの制御に応答遅れが発生し、目標バルブタイミングに応答よく収束させることができない。
【００３６】
ところで、このような不感帯に起因する応答遅れによって、オフセット処理前電流値Ｉcomff+fbが正である時間ＴAと、負である時間ＴBと、の長さに差が出る（図１２参照）。図１２で示すように、コントローラ認識不感帯中央値が、実不感帯中央値より小さいときは、ＴA＞ＴBとなる。逆に、コントローラ認識不感帯中央値が、実不感帯中央値より大きいときは、ＴA＜ＴBとなる。
【００３７】
そこで、本実施形態では、時間ＴAとＴBとに基づいて、コントローラ認識不感帯中央値を修正する。具体的には、ＴA＞ＴBのときは、コントローラ認識不感帯中央値が、実不感帯中央値よりも小さいと判断して、実不感帯中央値に補正値を加算する。一方、ＴA＜ＴBのときは、コントローラ認識不感帯中央値が、実不感帯中央値よりも大きいと判断して、実不感帯中央値から補正値を減算する。これにより、最終的に、コントローラ認識不感帯中央値と実不感帯中央値とを一致させることができる。以下では、この不感帯中央値修正制御について説明する。
【００３８】
図３は、コントローラ３０で実行される不感帯中央値修正制御について説明するブロック図である。
【００３９】
フィードフォワード補償部（以下「Ｆ／Ｆ補償部」という）４１には、目標変換角θcomが入力される。この入力値に基づいて、Ｆ／Ｆ補償部４１は、電流値（Ｆ／Ｆ項）Ｉcomffと、フィードバック目標変換角θrefと、を算出する。電流値（Ｆ／Ｆ項）Ｉcomffは、規範モデルの伝達関数と制御対象モデルの伝達関数の逆系の積で構成された伝達関数に目標変換角θcomを入力することで算出される。フィードバック目標変換角θrefは、規範モデルの伝達関数に目標変換角θcomを入力することで算出される。
【００４０】
フィードバック補償部（以下「Ｆ／Ｂ補償部」という）４２には、規範応答θrefから実変換角θnowを減算した値が入力される。この入力値に基づいて、Ｆ／Ｂ補償部４２は電流値（Ｆ／Ｂ項）Ｉcomfbを算出する。
【００４１】
不感帯補償部４３には、電流値（Ｆ／Ｆ項）Ｉcomffと、電流値（Ｆ／Ｂ項）Ｉcomfbと、を加算した電流値（Ｆ／Ｆ項＋Ｆ／Ｂ項）Ｉcomff+fbが入力される。不感帯補償部４３は、この入力値から不感帯の影響を取り除いた電流値Ｉcomを算出する。以下では、発明の理解を容易にするため、必要に応じて、この不感帯補償部４３に入力される電流値のことをオフセット処理前電流値と、不感帯補償部４３から出力される電流値のことをオフセット処理後電流値という。
【００４２】
制御対象であるバルブタイミング制御装置１のソレノイドバルブ２０は、電流値Ｉcomに応じて変換角を変更する。
【００４３】
変換角算出部４４では、電流値Ｉcomに応じて変更された変換角を、クランク角センサ３１及びカムセンサ３２の検出信号に基づいて、実変換角θnowとして算出する。
【００４４】
図４は、本発明による不感帯中央値修正制御を説明するフローチャートである。コントローラ３０は、このルーチンを機関運転中に所定の演算周期Ｔsmpで繰り返し実行する。
【００４５】
ステップＳ１において、コントローラ３０は、クランク角センサ３１によって検出される機関回転速度及び水温センサ３３によって検出される機関水温から時定数を設定する。
【００４６】
ステップＳ２において、コントローラ３０は、本ルーチンと並行に、カム角センサ３２が基準カム位置信号を出力するごとに、割り込み処理として実行される実変換角算出処理によって算出された最新の実変換角θnowを読み込む。
【００４７】
ステップＳ３において、コントローラ３０は、図３の制御ブロック図で説明したＦ／Ｆ補償部４１での演算処理を実行する。すなわち、目標変換角θcomに基づいて、電流値（Ｆ／Ｆ項）Ｉcomffと、フィードバック目標変換角θrefと、を算出する。
【００４８】
ステップＳ４において、コントローラ３０は、図３の制御ブロック図で説明したＦ／Ｂ補償部４２での演算処理を実行する。すなわち、規範応答θrefから実変換角θnowを減算した値に基づいて、電流値（Ｆ／Ｂ項）Ｉcomfbを算出する。
【００４９】
ステップＳ５において、コントローラ３０は、図３の制御ブロック図で説明した不感帯補償部４３での演算処理を実行して、オフセット処理後電流値Ｉcom、すなわちＶＴＣ１０の操作量を算出する。具体的な内容は図５を参照して後述する。
【００５０】
ステップＳ６において、コントローラ３０は、算出した操作量に基づいてＶＴＣ１０を操作し、バルブタイミングを進角又は遅角する。
【００５１】
図５は、不感帯補償部４４での演算処理を示すフローチャートである。
【００５２】
ステップＳ５１において、コントローラ３０は、コントローラ認識不感帯中央値学習処理を実行する。具体的な内容は図６を参照して後述する。
【００５３】
ステップＳ５２において、コントローラ３０は、図２の不感帯補償部４３に入力されるオフセット処理前電流値Ｉcomff+fbの正負を判定する。コントローラ３０は、オフセット処理前電流値Ｉcomff+fbが正の場合にはステップＳ５３に処理を移行し、負の場合にはテップＳ５４に処理を移行する。
【００５４】
ステップＳ５３において、コントローラ３０は、オフセット処理前電流値Ｉcomff+fbに、Ｓ５１で修正学習した不感帯中央値Ｉcenと不感帯幅の半分の値（以下「不感帯オフセット値」という）Ｉoftとを加算し、この加算値をソレノイドバルブ２０に入力する電流値Ｉcomとする。
【００５５】
ステップＳ５４において、コントローラ３０は、オフセット処理前電流値Ｉcomff+fbにＳ５１で修正学習した不感帯中央値Ｉcenを加算し、この加算値から不感帯オフセット値Ｉoftを減算し、この減算値をソレノイドバルブ２０に入力する電流値Ｉcomとする。
【００５６】
図６は、コントローラ認識不感帯中央値学習処理を示すフローチャートである。
【００５７】
ステップＳ５１１において、コントローラ３０は、時間ＴA、ＴB算出処理を実行する。上述したように、時間ＴAは、オフセット処理前電流値Ｉcomff+fbが負から正に切り替わってから、再び負から正に切り替わるまでの1周期における、オフセット処理前電流値Ｉcomff+fbが正である時間である。時間ＴBは、オフセット処理前電流値Ｉcomff+fbが負である時間である。具体的な内容は図７を参照して後述する。
【００５８】
ステップＳ５１２において、コントローラ３０は、フラグＦTBが１か否かを判定する。フラグＦTBは、オフセット処理前電流値Ｉcomff+fbが負から正に切り替わったときに１にセットされるフラグである。このフラグによって、オフセット処理前電流値Ｉcomff+fbが負から正に切り替わってから、再び負から正に切り替わるまでの1周期が経過したか否かを判定する。コントローラ３０は、ＦTB＝１ならばステップＳ５１３に処理を移行し、ＦTB＝０ならばコントローラ認識不感帯中央値Ｉcenを修正することなく今回の処理を終了する。
【００５９】
ステップＳ５１３において、コントローラ３０は、前回の処理における目標変換角θcomzと今回の処理における目標変換角θcomの差が所定値以内か否かを判定する。すなわち、目標変換角θcomが一定の値を保っているか否かを判定する。コントローラ３０は、前回の処理における目標変換角θcomzと今回の処理における目標変換角θcomの差が所定値α以内であれば、ステップＳ５１４に処理を移行し、所定値αを超えていればコントローラ認識不感帯中央値Ｉcenを修正することなく今回の処理を終了する。このように、目標変換角θcomが定常状態にある場合に限ってコントローラ認識不感帯中央値Ｉcenを修正するのは、目標変換角θcomが変動する過渡応答のときは、時間ＴA、ＴBが非常に変動的であり、正確なコントローラ認識不感帯中央値Ｉcenの修正が困難となるためである。
【００６０】
ステップＳ５１４において、コントローラ３０は、目標変換角θcomと実変換角θnowとの偏差θerrが所定値以内か否かを判定する。すなわち、目標変換角θcomと実変換角θnowとの偏差θerrが一定の範囲内に収まっているか否かを判定する。コントローラ３０は、目標変換角θcomと実変換角θnowとの偏差θerrが所定値β以内であれば、ステップＳ５１５に処理を移行し、所定値βを超えていればコントローラ認識不感帯中央値Ｉcenを修正することなく今回の処理を終了する。このように、偏差θerrが一定の範囲内に収まっている場合に限ってコントローラ認識不感帯中央値Ｉcenを修正するのは、偏差θerrが大きいときは、不感帯のズレとは別の要因で、時間ＴAと時間ＴBとの長さに偏りが生じることがあるためである。
【００６１】
ステップＳ５１５において、コントローラ３０は、時間ＴAと時間ＴBとが一致しているか否かを判定する。具体的には、任意の所定値ＴBthrを設定し、ＴB−ＴBthr≦ＴA≦ＴB＋ＴBthrが成立するならば、時間ＴAと時間ＴBとが一致していると判定する。コントローラ３０は、時間ＴAと時間ＴBとが一致していればコントローラ認識不感帯中央値Ｉcenを修正することなくステップＳ５１９に処理を移行し、一致していなければステップＳ５１６に処理を移行する。
【００６２】
ステップＳ５１６において、コントローラ３０は、時間ＴAが時間ＴBよりも大きいか否かを判定する。コントローラ３０は、時間ＴAが時間ＴBよりも大きければステップＳ５１７に処理を移行し、小さければステップＳ５１８に処理を移行する。
【００６３】
ステップＳ５１７において、コントローラ３０は、実不感帯中央値Ｉscenが、コントローラ認識不感帯中央値Ｉcenよりも大きいと判定して、学習記憶していたコントローラ認識不感帯中央値Ｉcenに中央値補正量Ｉcorを加算して修正する。中央値補正量Ｉcorは、例えば不感帯幅の数％の値とする。
【００６４】
ステップＳ５１８において、コントローラ３０は、実不感帯中央値Ｉscenが、コントローラ認識不感帯中央値Ｉcenよりも小さいと判定して、学習記憶していたコントローラ認識不感帯中央値Ｉcenから中央値補正量Ｉcorを減算して修正する。
【００６５】
ステップＳ５１９において、コントローラ３０は、時間ＴAと時間ＴBとを０に戻す。
【００６６】
図７は、時間ＴA、ＴB算出処理を示すフローチャートである。
【００６７】
ステップＳ５１１１において、コントローラ３０は、今回の処理におけるオフセット処理前電流値Ｉcomff+fbの正負を判定する。コントローラ３０は、今回の処理におけるオフセット処理前電流値Ｉcomff+fbが正の場合にはステップＳ５１１２に処理を移行し、負の場合にはテップＳ５１１８に処理を移行する。
【００６８】
ステップＳ５１１２及びステップＳ５１１８において、コントローラ３０は、前回の処理におけるオフセット処理前電流値Ｉcomff+fbの正負を判定する。コントローラ３０は、ステップＳ５１１２において、前回の処理におけるオフセット処理前電流値Ｉcomff+fbが負の場合にはステップＳ５１１３に処理を移行し、正の場合にはテップＳ５１１６に処理を移行する。同様に、コントローラ３０は、ステップＳ５１１８において、前回の処理におけるオフセット処理前電流値Ｉcomff+fbが負の場合にはステップＳ５１１６に処理を移行し、正の場合にはテップＳ５１１９に処理を移行する。
【００６９】
このように、コントローラ３０は、今回の処理において、オフセット処理前電流値Ｉcomff+fbが負から正に切り替わったときは、ステップＳ５１１３に処理を移行し、オフセット処理前電流値Ｉcomff+fbが正又は負のまま切り替わらなかったときは、ステップＳ５１１６に処理を移行する。そして、オフセット処理前電流値Ｉcomff+fbが正から負に切り替わったときは、ステップＳ５１１９に処理を移行する。
【００７０】
ステップＳ５１１３において、コントローラ３０は、カウンタＣ2に演算周期Ｔsmpを掛けた値を時間ＴBとする。
【００７１】
ステップＳ５１１４において、コントローラ３０は、カウンタＣ2を初期化して1に戻す。
【００７２】
ステップＳ５１１５において、コントローラ３０は、フラグＦTAを０に、フラグＦTBを１にセットする。フラグＦTAは、オフセット処理前電流値Ｉcomff+fbが正から負に切り替わったときに１にセットされるフラグである。フラグＦTBは、オフセット処理前電流値Ｉcomff+fbが負から正に切り替わったときに１にセットされるフラグである。
【００７３】
ステップＳ５１１６において、コントローラ３０は、カウンタＣ2をカウントアップする。
【００７４】
ステップＳ５１１７において、コントローラ３０は、フラグＦTAを０に、フラグＦTBを０にセットする。
【００７５】
ステップＳ５１１９において、コントローラ３０は、カウンタＣ2に演算周期Ｔsmpを掛けた値を時間ＴAとする。
【００７６】
ステップＳ５１２０において、コントローラ３０は、カウンタＣ2を初期化して１に戻す。
【００７７】
ステップＳ５１２１において、コントローラ３０は、フラグＦTAを１に、フラグＦTBを０にセットする。
【００７８】
図８及び図９は、本発明による不感帯中央値修正制御の動作を示すタイムチャートである。
【００７９】
図８は、コントローラ認識不感帯中央値Ｉcenと実不感帯中央値Ｉscenとにズレが生じている場合のタイムチャートであり、コントローラ認識不感帯中央値Ｉcenが、実不感帯中央値Ｉscenよりも低い状態を一例として示している。図９は、本発明による不感帯中央値修正制御によって、図８に示したコントローラ認識不感帯中央値Ｉcenと実不感帯中央値Ｉscenとのズレが修正された状態のタイムチャートである。以下の説明では、図４〜７のフローチャートとの対応を明確にするため、フローチャートのステップ番号を併記して説明する。
【００８０】
まず、図８を参照して説明する。
【００８１】
時刻ｔ１で、オフセット処理前電流値Ｉcomff+fbが負から正に切り替わる（図８（Ｂ）；Ｓ５１１１でＹｅｓ、Ｓ５１１２でＮｏ）。この時点では、未だ時間ＴAとＴBが算出されておらず、共に０であるため、予め学習記憶していたコントローラ認識不感帯中央値Ｉcenの修正は行われない（Ｓ５１５でＹｅｓ）。
【００８２】
したがって、オフセット処理前電流値Ｉcomff+fbに、ステップＳ５１で修正学習した不感帯中央値Ｉcen（この場合は、未修正のコントローラ認識不感帯中央値Ｉcen）及び不感帯オフセット値Ｉoftを加算しても（図８（Ａ）；Ｓ５１、Ｓ５２でＹｅｓ、Ｓ５３）、オフセット処理後電流値Ｉcomが、実際には、実不感帯幅の内側に収まってしまう（図８（Ａ））。その結果、オフセット処理後電流値Ｉcomが、実不感帯幅の上限値ＩSTを超える時刻ｔ２までは、変換角が変位せず（図８（Ｃ））、バルブタイミングの制御に応答遅れが生じる。
【００８３】
時刻ｔ２で、オフセット処理後電流値Ｉcomが、実不感帯幅の上限値ＩSTを超えると（図８（Ａ））、積分器によって偏差が積分され、変換角が変位する（図８（Ｃ）；Ｓ６）。
【００８４】
時刻ｔ３で、偏差が負になると電流値は減少する。すると、オフセット処理後電流値Ｉcomは、再び実不感帯幅の内側に収まってしまう（図８（Ａ））。そのため、この間（時刻ｔ３〜ｔ４）も変換角が変位せず、バルブタイミングの制御に応答遅れが生じる（図８（Ｃ））。
【００８５】
時刻ｔ４で、オフセット処理前電流値Ｉcomff+fbが正から負に切り替わると（図８（Ｂ）；Ｓ５１１１でＮｏ、Ｓ５１１８でＹｅｓ）、オフセット処理前電流値Ｉcomff+fbに、ステップＳ５１で修正学習した不感帯中央値Ｉcenを加算したものから、不感帯オフセット値Ｉoftが減算される（図８（Ａ）；Ｓ５１、Ｓ５２でＮｏ、Ｓ５４）。コントローラ認識不感帯中央値Ｉcenよりも、実不感帯中央値Ｉscenが高いときには、この処理により、オフセット処理後電流値Ｉcomは、必ず不感帯領域外の値となる（図８（Ａ））。したがって、速やかに積分器によって偏差が積分され、変換角が変位する（図８（Ｃ）；Ｓ６）。
【００８６】
一方で、時刻ｔ１からｔ４までの時間が時間ＴAとされ（図８（Ａ）；Ｓ５１１９）、カウンタＣ2が初期値に戻されるとともに（Ｓ５１２０）、フラグＦTAが１にセットされる（図８（Ｄ）；Ｓ５１２１）。
【００８７】
時刻ｔ５で、再びオフセット処理前電流値Ｉcomff+fbが負から正に切り替わると（図８（Ｂ）；Ｓ５１１１でＹｅｓ、Ｓ５１１２でＮｏ）、オフセット処理前電流値Ｉcomff+fbに、ステップＳ５１で推定された不感帯中央値Ｉcen及び不感帯オフセット値Ｉoftが加算される（図８（Ａ）；Ｓ５１、Ｓ５２でＹｅｓ、Ｓ５３）。
【００８８】
そして、時刻ｔ４からｔ５までの時間が時間ＴBとされ（図８（Ａ）；Ｓ５１１５）、カウンタＣ2が初期値に戻されるとともに（Ｓ５１２０）、フラグＦTAが０に、フラグＦTBが１にセットされる（図８（Ｅ）；Ｓ５１２１）。
【００８９】
さらに、時間ＴAと時間ＴBの大小に基づいて、コントローラ認識不感帯中央値Ｉcenが修正される。図８の例のように、コントローラ認識不感帯中央値Ｉcenよりも、実不感帯中央値Ｉscenが高い場合には、ＴA＞ＴBとなる。したがって、学習記憶していたコントローラ認識不感帯中央値Ｉcenに中央値補正量Ｉcorが加算され修正される（Ｓ５１８でＮｏ、Ｓ５２１でＹｅｓ、Ｓ５２２）。
【００９０】
その結果、最終的に、コントローラ認識不感帯中央値Ｉcenと、実不感帯中央値Ｉscenと、にズレがなくなり、図９のタイムチャートのようになる。
【００９１】
図９において、時刻ｔ１で、オフセット処理前電流値Ｉcomff+fbが負から正に切り替わると（図９（Ｂ）；Ｓ５１１１でＹｅｓ、Ｓ５１１２でＮｏ）、オフセット処理前電流値Ｉcomff+fbに、ステップＳ５１で修正学習した不感帯中央値Ｉcen及び不感帯オフセット値Ｉoftが加算されたオフセット処理後電流値Ｉcomが算出される（図９（Ａ）；Ｓ５１、Ｓ５２でＹｅｓ、Ｓ５３）。
【００９２】
不感帯中央値推定処理（Ｓ５１）によって、実不感帯中央値Ｉscenと、コントローラ認識不感帯中央値Ｉcenとは、ほとんど一致している（図９（Ａ））。そのため、オフセット処理前電流値Ｉcomff+fbに、ステップＳ５１で修正学習した不感帯中央値Ｉcen及び不感帯オフセット値Ｉoftが加算されると、オフセット処理後電流値Ｉcomは、必ず実不感帯幅の上限値ＩSTより大きい値となる（図９（Ａ））。その結果、時刻ｔ１からｔ２で、応答遅れが生じることなく、積分器によって偏差が積分され、変換角が変位する（Ｓ６）。
【００９３】
時刻ｔ２で、オフセット処理前電流値Ｉcomff+fbが正から負に切り替わると（図９（Ｂ）；Ｓ５１１１でＮｏ、Ｓ５１１８でＹｅｓ）、オフセット処理前電流値Ｉcomff+fbにステップＳ５１で修正学習した不感帯中央値Ｉcenを加算したものから、不感帯オフセット値Ｉoftが減算される（図９（Ａ）；Ｓ５１、Ｓ５２でＮｏ、Ｓ５４）。これにより、オフセット処理後電流値Ｉcomは、必ず実不感帯幅の下限値ＩSBより小さい値となる（図９（Ａ））。その結果、時刻ｔ２からｔ３で、応答遅れが生じることなく、積分器によって偏差が積分され、変換角が変位する（Ｓ６）。
【００９４】
このように、時間ＴAと時間ＴBとに基づいて、コントローラ認識不感帯中央値Ｉcenを修正することで、コントローラ認識不感帯中央値Ｉcenと実不感帯中央値Ｉscenとを一致させることができる。そのため、電流値のオフセット処理によって不感帯の影響を排除することができ、バルブタイミング制御の応答遅れを防いで、目標バルブタイミングに応答よく収束させることができる。
【００９５】
また、目標変換角θcomが定常状態にある場合に限ってコントローラ認識不感帯中央値Ｉcenを修正することで、正確にコントローラ認識不感帯中央値Ｉcenを修正することができる。目標変換角θcomが変動する過渡応答のときは、時間ＴA、ＴBが非常に変動的になり、学習間違いを起こす可能性があるためである。
【００９６】
さらに、偏差θerrが一定の範囲内に収まっている場合に限ってコントローラ認識不感帯中央値Ｉcenを修正することで、正確にコントローラ認識不感帯中央値Ｉcenを修正することができる。偏差θerrが大きいときは、不感帯のズレとは別の要因で、時間ＴAと時間ＴBとの長さに偏りが生じることがあるためである。
【００９７】
（第２実施形態）
次に、本発明の第２実施形態による不感帯中央値修正制御について説明する。本発明の第２実施形態は、所定時間内における時間ＴAの積算値Ａと、時間ＴBの積算値Ｂとに基づいて、コントローラ認識不感帯中央値Ｉcenを修正する点で、第１実施形態と相違する。以下、その相違点について説明する。なお、前述した第１実施形態と同様の機能を果たす部分には、同一の符号を用いて重複する説明を適宜省略する。
【００９８】
図１０は、コントローラ３０で実行される第２実施形態によるコントローラ認識不感帯中央値学習処理を示すフローチャートである。なお、Ｓ５１１，Ｓ５１３，Ｓ５１４，Ｓ５１７，Ｓ５１８で実行される処理は、第１実施形態と同様なので、ここでは説明を省略する。
【００９９】
ステップＳ５２１において、コントローラ３０は、時間ＴA、ＴB積算処理を実行する。具体的な内容は図１１を参照して後述する。
【０１００】
ステップＳ５２２において、コントローラ３０は、カウンタＣ1から１を引く。
【０１０１】
ステップＳ５２３において、コントローラ３０は、カウンタＣ1が０か否かを判定する。コントローラ３０は、カウンタＣ1が０であればステップＳ５２４に処理を移行し、そうでなければコントローラ認識不感帯中央値Ｉcenを修正することなく今回の処理を終了する。
【０１０２】
ステップＳ５２４において、コントローラ３０は、カウンタＣ1を初期値Ｃ1MAXに戻す。
【０１０３】
このように、コントローラ３０は、ステップＳ５２２〜Ｓ５２４において、初期値Ｃ1MAXに設定されたカウンタＣ1が０になるまで、つまり、所定時間が経過するまでは不感帯中央値の修正を実施しない。これは、単に時間ＴA、ＴBの大小によってコントローラ認識不感帯中央値Ｉcenを修正するよりも、所定時間内に算出された時間ＴA、ＴBの積算値Ａ、Ｂの大小によってコントローラ認識不感帯中央値Ｉcenを修正するほうが、誤差が少なくなり、正確なコントローラ認識不感帯中央値Ｉcenの修正が実施できるためである。
【０１０４】
ステップＳ５２５において、コントローラ３０は、カウンタＣ1が０になるまでの所定時間内における時間ＴAの積算値Ａと時間ＴBの積算値Ｂとが一致しているか否かを判定する。具体的には、任意の所定値Ｂthrを設定し、Ｂ−Ｂthr≦Ａ≦Ｂ＋Ｂthrが成立するならば、積算値ＡとＢとが一致していると判定する。コントローラ３０は、積算値ＡとＢとが一致していればコントローラ認識不感帯中央値Ｉcenを修正することなくステップＳ５２７に処理を移行し、一致していなければステップＳ５２６に処理を移行する。
【０１０５】
ステップＳ５２６において、コントローラ３０は、積算値Ａが積算値Ｂよりも大きいか否かを判定する。コントローラ３０は、積算値Ａが積算値Ｂよりも大きければステップＳ５１７に処理を移行し、小さければステップＳ５１８に処理を移行する。
【０１０６】
ステップＳ５２７において、コントローラ３０は、積算値ＡとＢとを０に戻す。
【０１０７】
図１１は、時間ＴA、ＴB積算処理を示すフローチャートである。
【０１０８】
ステップＳ５２１１において、コントローラ３０は、フラグＦTAが１か否かを判定する。コントローラ３０は、ＦTA＝１ならばステップＳ５２１２に処理を移行し、ＦTA＝０ならば積算値Ａの値を保持したままステップＳ５２１３に処理を移行する。
【０１０９】
ステップＳ５２１２において、コントローラ３０は、前回までの積算値Ａに、新しく算出された時間ＴAを加算して積算値Ａを更新する。
【０１１０】
ステップＳ５２１３において、コントローラ３０は、フラグＦTBが１か否かを判定する。コントローラ３０は、ＦTB＝１ならばステップＳ５２１４に処理を移行し、ＦTB＝０ならば積算値Ａの値を保持したまま今回の処理を終了する。
【０１１１】
ステップＳ５２１４において、コントローラ３０は、前回までの積算値Ｂに、新しく算出された時間ＴBを加算して積算値Ｂを更新する。
【０１１２】
以上説明した本実施形態によれば、予め定められたカウンタＣ1が０、つまり所定時間が経過すると、所定時間内における時間ＴAの積算値Ａと、時間ＴBの積算値Ｂとに基づいて、コントローラ認識不感帯中央値Ｉcenを修正する。つまり、所定時間内に算出された時間ＴA、ＴBの積算値の大小によってコントローラ認識不感帯中央値Ｉcenを修正する。そのため、単に時間ＴA、ＴBの大小によってコントローラ認識不感帯中央値Ｉcenを修正する第１実施形態よりも、より正確なコントローラ認識不感帯中央値Ｉcenの修正が実施できる。
【０１１３】
なお、本発明は上記の実施形態に限定されずに、その技術的な思想の範囲内において種々の変更がなしうることは明白である。すなわち、内燃機関のバルブタイミング制御装置に限らず、制御領域に不感帯を有する制御対象を制御する制御装置に広く適用することができる。
【図面の簡単な説明】
【０１１４】
【図１】可変動弁機構を備えたバルブタイミング制御装置のシステム図である。
【図２】ソレノイドバルブの不感帯特性を示す図である。
【図３】不感帯中央値修正制御について説明するブロック図である。
【図４】不感帯中央値修正制御を説明するフローチャートである。
【図５】不感帯補償部演算処理を示すフローチャートである。
【図６】コントローラ認識不感帯中央値学習処理を示すフローチャートである。
【図７】時間算出処理を示すフローチャートである。
【図８】コントローラ認識不感帯中央値と実不感帯中央値とにズレが生じている場合のタイムチャートである。
【図９】不感帯中央値修正制御によって、コントローラ認識不感帯中央値と実不感帯中央値とのズレが修正された状態のタイムチャートである。
【図１０】コントローラ認識不感帯中央値学習処理を示すフローチャートである。
【図１１】時間ＴＡ、ＴＢ積算処理を示すフローチャートである。
【図１２】従来例によるコントローラ認識不感帯中央値と、実不感帯中央値と、にズレが生じたときに発生する問題点について説明するためのタイムチャートである。
【符号の説明】
【０１１５】
１  バルブタイミング制御装置（可変動弁機構の制御装置）
１０  可変動弁機構（ＶＴＣ）
１１  カム軸
２０  ソレノイドバルブ（アクチュエータ）
Ｓ２  変換角検出手段
Ｓ３  電流指令値演算手段
Ｓ４  電流指令値演算手段
Ｓ５１  不感帯領域学習手段
Ｓ５３  電流指令値オフセット手段
Ｓ５４  電流指令値オフセット手段
Ｓ５１１  時間演算手段
Ｓ５２１  時間演算手段
Ｓ５１５  不感帯領域修正学習手段
Ｓ５１６  不感帯領域修正学習手段
Ｓ５１７  不感帯領域修正学習手段
Ｓ５１８  不感帯領域修正学習手段
【図１】
2008151096.tif 000003
【図２】
2008151096.tif 000004
【図３】
2008151096.tif 000005
【図４】
2008151096.tif 000006
【図５】
2008151096.tif 000007
【図６】
2008151096.tif 000008
【図７】
2008151096.tif 000009
【図８】
2008151096.tif 000010
【図９】
2008151096.tif 000011
【図１０】
2008151096.tif 000012
【図１１】
2008151096.tif 000013
【図１２】
2008151096.tif 000014