(57)【特許請求の範囲】
【請求項１】
エンジン内のクランク軸からカム軸に至る回転伝達経路内に設けられ、両軸間の回転位相差を変えるための位相調整機構と、
この位相調整機構を駆動するための駆動手段と、
前記エンジンの運転状態を表す複数の運転状態量を検出する運転状態検出手段と、
この運転状態検出手段によって検出された運転状態量に基づいて前記両軸間の実位相差角を求める回転位相差検出手段と、
前記運転状態検出手段によって検出された運転状態量に基づいて回転位相差の目標値を決定する目標値決定手段と、
前記実位相差角を回転位相差の目標値に一致させるための制御値を生成して前記駆動手段に出力する制御手段と
を備えたエンジンの弁動作タイミング調整装置において、
前記制御手段は、前記実位相差角が所定時間ほぼ一定となっているか否かを判断する第１の判断手段と、前記実位相差角が所定時間ほぼ一定となったときに前記制御値を学習する学習手段と、学習した値に基づいてその後の制御値を求めるコントローラとを備え、該コントローラは、積分動作を含まないＰＤ動作コントロ−ラであり、該コントローラの制御対象となる前記駆動手段は、積分要素を含むことを特徴とするエンジンの弁動作タイミング調整装置。
【請求項２】
前記制御手段は、前記目標値が所定時間ほぼ一定となっているか否かを判断する第２の判断手段を有し、前記実位相差角及び前記目標値が共に所定時間ほぼ一定となったときに前記学習手段に前記制御値を学習させることを特徴とする請求項１に記載のエンジンの弁動作タイミング調整装置。
【請求項３】
前記学習手段は、前記制御値を学習する際に、前記運転状態検出手段によって検出された運転状態量も学習し、前記制御手段は、該運転状態量が変化したときに前記制御値の学習値を該運転状態量の変化に応じて補正するようにしたことを特徴とする請求項１又は２に記載のエンジンの弁動作タイミング調整装置。
【請求項４】
前記実位相差角又はこれと前記目標値がほぼ一定値に収束したか否かを判断するための前記所定時間を、前記実位相差角の算出に使用するパルス信号のｎパルス分の時間、又はこのｎパルス分の時間に或る時間を加算した時間に設定したことを特徴とする請求項１乃至３のいずれかに記載のエンジンの弁動作タイミング調整装置。
【請求項５】
前記学習手段は、学習する制御値の平均値又は学習する制御値を平滑化した値を学習することを特徴とする請求項１乃至４のいずれかに記載のエンジンの弁動作タイミング調整装置。
【請求項６】
前記学習手段は、エンジン回転数，油温又は水温で分割した領域ごとに前記制御値を学習することを特徴とする請求項１乃至５のいずれかに記載のエンジンの弁動作タイミング調整装置。
【請求項７】
前記学習手段は、前記制御値の学習をエンジン回転数，油温又は水温で限定した領域ｎヶ所でのみ行い、他の領域は前記運転状態検出手段によって検出された運転状態量により学習値を補正して使用することを特徴とする請求項１乃至５のいずれかに記載のエンジンの弁動作タイミング調整装置。
【請求項８】
前記制御手段は、始動直後の場合や、油温による学習値補正がないときの油温，水温が所定温度以下の場合には、前記学習手段による学習を禁止し、前回の学習値を補正して使用することを特徴とする請求項１乃至７のいずれかに記載のエンジンの弁動作タイミング調整装置。
【請求項９】
前記学習手段は、学習値の更新の際、新しく学習した値をそのまま学習値とするのではなく、前回の学習値と今回学習した値の差の１／ｍを前回の値に加算した値を新しい学習値とすることを特徴とする請求項１乃至８のいずれかに記載のエンジンの弁動作タイミング調整装置。
【請求項１０】
一回の学習で行える学習値の変更量に制限が設けられていることを特徴とする請求項１乃至９のいずれかに記載のエンジンの弁動作タイミング調整装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、エンジンにおける吸気弁，排気弁の動作時期を変えるためのエンジンの弁動作タイミング調整装置に関するものである。
【０００２】
【従来の技術】
例えば、特開平１−１３４０１０号公報に示すように、弁動作タイミング調整装置は、エンジンの吸気弁、排気弁の動作時期を速くしたり遅くしたりする進角制御のために用いられている。この装置は、エンジンのクランク軸とカム軸との間に位相調整部材を嵌合させて、この位相調整部材を２つの油圧系で摺動させることにより両軸間の回転位相を変化させ、カム軸上のロ−タで駆動される吸気弁，排気弁の動作時期を変化させるものである。
【０００３】
【発明が解決しようとする課題】
しかし、上述した弁動作タイミング調整装置は、位相調整部材を摺動させるために２つの油圧系を必要とするので構造が複雑であり、また、電磁弁の単なる開放／閉鎖の制御によりクランク軸，カム軸間の位相角を変化させるだけなので、微小角度の進角制御が難しいという問題があった。
【０００４】
そこで、上記問題を解決するために、本出願人は、特願平５−８６３２１号に示すように、弁動作タイミング調整装置の油圧系を一つにして構造を簡略化し、また、油圧系の電磁弁の開度を連続的に制御すると共に、電磁弁の開度制御にフィ−ドバック学習制御を採用することにより、微小角度の進角制御を可能にする弁動作タイミング調整装置を開発中である。このものは、クランク軸とカム軸との間の回転位相差の目標値が所定時間ほぼ一定となっているときに、コントローラから油圧系の電磁弁へ出力される制御値を学習手段に記憶し、制御値を生成する際に、上記学習手段に記憶された制御値を学習値として用いるようにしたものである。
【０００５】
このものの学習原理は、両軸間の回転位相差の目標値がほぼ一定の状態を所定時間継続すれば、回転位相差もほぼ一定値に収束するとして、“目標値が所定時間ほぼ一定”を学習の条件とするものである。しかし、実際のエンジンにおいて、例えばエンジン回転数が低く油温が高い状態では、制御油圧の低下及び油粘度低下による漏れの増加が生じて、回転位相差の変化速度が低下し、目標値がほぼ一定で所定時間過ぎても、実際の回転位相差（実位相差角）は未だ変化中という事態が生じることがある。また、この事態に対応するため、所定時間の設定を長くすると、今度は学習条件が厳しくなって学習頻度を減らしてしまう結果となり、運転状態の変化に適切に対応できなくなってしまう。
【０００６】
本発明はこのような事情を考慮してなされたものであり、従ってその目的は、実際の回転位相差（実位相差角）を反映した学習制御を行うことができ、学習頻度を減らさずに運転状態の変化に追従した弁動作のタイミング調整を行うことができるエンジンの弁動作タイミング調整装置を提供することにある。
【０００７】
【課題を解決するための手段】
上記目的を達成するための本発明の構成を以下に説明する。ここでは、説明の便宜上、本発明の各構成要件を図１に概念的に示し、符号を付して説明する。
【０００８】
まず、請求項１では、エンジン内のクランク軸からカム軸に至る回転伝達経路内に設けられ、両軸間の回転位相差を変えるための位相調整機構１と、
この位相調整機構１を駆動するための駆動手段２と、
前記エンジンの運転状態を表す複数の運転状態量を検出する運転状態検出手段３と、
この運転状態検出手段３によって検出された運転状態量に基づいて前記両軸間の実位相差角を求める回転位相差検出手段４と、
前記運転状態検出手段３によって検出された運転状態量に基づいて回転位相差の目標値を決定する目標値決定手段５と、
前記実位相差角を回転位相差の目標値に一致させるための制御値を生成して前記駆動手段２に出力する制御手段６と
を備えたエンジンの弁動作タイミング調整装置において、
前記制御手段６は、前記実位相差角が所定時間ほぼ一定となっているか否かを判断する第１の判断手段７ａと、前記実位相差角が所定時間ほぼ一定となったときに前記制御値を学習する学習手段８と、学習した値に基づいてその後の制御値を求めるコントローラ９とを有し、該コントローラ９は、積分動作を含まないＰＤ動作コントロ−ラであり、該コントローラ９の制御対象となる駆動手段２は、積分要素を含むことを特徴とするものである。
【０００９】
請求項２では、前記制御手段６は、前記目標値が所定時間ほぼ一定となっているか否かを判断する第２の判断手段７ｂを有し、前記実位相差角及び前記目標値が共に所定時間ほぼ一定となったときに前記学習手段８に前記制御値を学習させるようになっている。
【００１０】
請求項３では、前記学習手段８は、前記制御値を学習する際に、前記運転状態検出手段３によって検出された運転状態量も学習し、前記制御手段６は、該運転状態量が変化したときに前記制御値の学習値を該運転状態量の変化に応じて補正するようにしている。
【００１１】
請求項４では、前記実位相差角又はこれと前記目標値がほぼ一定値に収束したか否かを判断するための前記所定時間を、前記実位相差角の算出に使用するパルス信号のｎパルス分の時間、又はこのｎパルス分の時間に或る時間を加算した時間に設定している。
【００１２】
請求項５では、前記学習手段８は、制御値の平均値又は制御値を平滑化した値を学習するようにしている。
請求項６では、前記学習手段８は、エンジン回転数，油温又は水温で分割した領域ごとに前記制御値を学習する。
【００１３】
請求項７では、前記学習手段は、前記制御値の学習をエンジン回転数，油温又は水温で限定した領域ｎヶ所でのみ行い、他の領域は前記運転状態検出手段によって検出された運転状態量により学習値を補正して使用する。
【００１４】
請求項８では、前記制御手段は、始動直後の場合や、油温による学習値補正がないときの油温，水温が所定温度以下の場合には、前記学習手段による学習を禁止し、前回の学習値を補正して使用する。
【００１５】
請求項９では、前記学習手段は、学習値の更新の際、新しく学習した値をそのまま学習値とするのではなく、前回の学習値と今回学習した値の差の１／ｍを前回の値に加算した値を新しい学習値とする。
請求項１０では一回の学習で行える学習値の変更量に制限が設けられている。
【００１６】
【作用】
ここでは、まず図２を用いて前記閉ル−プ制御系の性質を説明する。
図２は、電磁弁の開度を調節して回転位相角、すなわち実位相差角（カム軸進角値）をフィ−ドバック制御するための制御系ブロック線図の例を示している。
【００１７】
図２（ａ）の１０６は例えば積分動作を含まないＰＤ動作コントロ−ラ、１０７は制御対象として例えば電磁弁の製造公差，油温，油圧，エンジン回転数により特性が変動するような制御対象（油圧装置）を示している。図２（ａ）における電磁弁の静特性は、以下の説明を簡単に行えるようにｕ１  ＝０近傍の特性がリニアなものを用いている。また、ｒは目標進角値、ｕはコントロ−ラ１０６から出力される制御値、ｕ１  は上記静特性により決定される制御値、ｙは制御による現在の実位相差角（カム軸進角値）である。ここで、制御対象１０７は積分要素を含み、電磁弁における操作量ｕとカム軸進角速度との間の静特性は、製造公差，油温，油圧，エンジン回転数により変動するものとする。したがって、図２（ａ）中のｄの値（ｕ１  ＝０となるｕの値）は変動する。また、その値は未知であるものと仮定する。
【００１８】
上記制御対象の静特性を傾きＫで近似すると、この制御系は図２（ｂ）のように表すことができ、以下のような関係式が得られる。このとき、上記ｄは制御対象の入力部に加えられる外乱と見なすことができる。
【００１９】
Ｙ（ｓ）＝［Ｋ／ｓ］・Ｇ（ｓ）・［Ｕ（ｓ）＋Ｄ（ｓ）］    ……（１）
Ｕ（ｓ）＝Ｇｃ（ｓ）・Ｅ（ｓ）                            ……（２）
Ｅ（ｓ）＝Ｒ（ｓ）−Ｙ（ｓ）                              ……（３）
そして、式（３）における目標値ｒを一定とすると、上記各式より式（４）が導かれる。
【００２０】
0003733600.tif 000002
ここで、外乱ｄを大きさｄ0 のステップ入力とすると「Ｄ（ｓ）＝ｄ0 ／ｓ」で表され、これを式（４）に代入してラプラス変換の最終値の定理を適用すると式（５）が導かれる。
【００２１】
Ｅ（∞）＝−ｄ0 ／Ｇｃ（０）                              ……（５）
例えば、コントロ−ラ１０６が「比例＋微分動作」であれば、その伝達関数は式（６）で与えられる。コントロ−ラ１０６のゲインはＧｃ（０）＝Ｋｃとなり上記式（５）は式（７）のようになる。
【００２２】
Ｇｃ（ｓ）＝Ｋｃ・（１＋ＴＤ  ・ｓ）                        ……（６）    ｅ（∞）＝−ｄ０  ／Ｋｃ                                        （７）  従って、目標値ｒが一定であるとすると、偏差ｅは一定値に収束することになる。ここで、実位相差角（カム軸進角値）ｙの定常時には「ｕ１  ＝０」であることが成立しているので、このときのコントロ−ラ１０６の制御値は「ｕ＝ｄ０  」となる。つまり、コントロ−ラ１０６の出力値が外乱ｄの大きさを表していることになり、この出力値を学習すれば、これを以後の制御に用いることができる。
【００２３】
ところで、上記図１の構成によれば、制御手段６のコントロ−ラ９は積分器を含んでおらず、また制御対象である油圧アクチュエ−タは積分要素を含んでいる。従って、上記閉ル−プ制御系の性質で説明したように、油圧アクチュエ−タに外乱要素ｄが存在する場合、目標値ｒが一定値のため実位相差角ｙが一定値に収束しているときにコントロ−ラ９から出力された制御値ｕを以って外乱要素ｄを補償することができる。
【００２４】
そこで、請求項１では、実位相差角が所定時間ほぼ一定となっているか否かを第１の判断手段７ａにより判断し、実位相差角が所定時間ほぼ一定となったときに学習手段８が制御値を学習し、学習した値に基づいてコントローラ９がその後の制御値を求める。この結果、学習手段８が制御値を学習する際は、実位相差角の変化速度に対応した学習が行われ、コントローラ９が求める制御値は外乱要素ｄを補償したものとなる。そして、上記学習操作は実位相差角が一定値に収束するごとに更新され、この収束状態が継続すれば、その間、繰り返し学習が行われる。
【００２５】
更に、請求項２では、制御手段６は、目標値が所定時間ほぼ一定となっているか否かを第２の判断手段７ｂにより判断し、実位相差角及び目標値が共に所定時間ほぼ一定となったときに学習手段８に制御値を学習させる。これにより、アクチュエータ（位相調整機構）の応答遅れ等による誤学習を避けることができ、学習手段８で学習する制御値の精度が向上する。
【００２６】
また、請求項３では、制御値を学習する際に、運転状態検出手段３によって検出されたエンジン回転数，油温，油圧，水温等の運転状態量も同時に学習し、該運転状態量が変化したときに制御値の学習値を該運転状態量の変化に応じて補正する。これにより、運転状態量の変化に追従した学習制御が可能となる。
【００２７】
また、請求項４では、実位相差角又はこれと前記目標値がほぼ一定値に収束したか否かを判断するための所定時間を、実位相差角の算出に使用するパルス信号のｎパルス分の時間、又はこのｎパルス分の時間に或る時間を加算した時間に設定する。これにより、エンジン回転数の変化によるカム軸位置検出信号の増減に対応することができるようになる。
【００２８】
また、請求項５では、制御値の平均値又は制御値を平滑化した値を学習する。これにより、信号のばらつき等が存在した場合でも、その影響を受け難い学習を行うことができる。
【００２９】
また、請求項６では、エンジン回転数，油温又は水温で分割した領域ごとに制御値を学習する。これにより、エンジン回転数，油温又は水温ごとに区分けして詳細な学習制御を行うことができる。
【００３０】
また、請求項７では、制御値の学習をエンジン回転数，油温又は水温で限定した領域ｎヶ所でのみ行い、他の領域は前記運転状態検出手段３によって検出された運転状態量により学習値を補正して使用する。このようにすれば、学習しない領域は学習値を計算で求めることができるため、運転状態の変化中など学習チャンスが少ない状態でも学習の効果を得ることができる。
【００３１】
また、請求項８では、始動直後の場合や、油温による学習値補正がないときの油温，水温が所定温度以下の場合には、学習を禁止し、前回の学習値を補正して使用する。これにより、エンジン回転数が不安定な状態で、精度の低い学習を行わずに済む。
【００３２】
また、請求項９では、学習値の更新の際、新しく学習した値をそのまま学習値とするのではなく、前回の学習値と今回学習した値の差の１／ｍを前回の値に加算した値を新しい学習値とする。これにより、制御値を学習する際に、誤学習を行わずに済む。
また、請求項１０では、一回の学習で行える学習値の変更量に制限を設ける。これによっても、誤学習を行わずに済む。
【００３３】
【実施例】
以下、本発明の弁動作タイミング調整装置の一実施例を図面に基づいて説明する。ここで、図３は本装置をＤＯＨＣエンジンに適用した場合の構成図である。この図３において、１０はエンジン、２０はエンジン１０内に設けた位相調整機構（斜線部分）、５０は位相調整機構２０を駆動するための駆動手段としての油圧装置、７０はエンジン１０等に設けた各種センサ（運転状態検出手段）の信号からエンジン運転状態を把握して油圧装置５０に制御信号（制御値）を出力する制御装置（制御手段）を示している。
【００３４】
エンジン１０のクランク軸１１、排気弁用スプロケット１２及び吸気弁用スプロケット１３にはタイミングチェ−ン１４が架けられており、クランク軸１１の回転が各カム軸１５，１６に伝達される。この実施例では、このスプロケット１３−カム軸１６間の回転伝達経路内に位相調整機構２０を設けて、スプロケット１３をカム軸１６の回転軸方向に摺動させ、スプロケット１３−カム軸１６間の回転位相を変化させることにより、吸気弁の進角制御を行うようになっている。勿論、上記位相調整機構２０を排気弁側、或は吸排気弁両方に設けて同様な制御を行うことも可能である。
【００３５】
一方、クランク軸１１近傍にはクランク位置検出センサ１７が設けられ、カム軸１６近傍にはカム軸位置検出センサ１８が設けられており、これらは例えば電磁ピックアップ型のセンサが用いられている。これら各センサ１７，１８は、それぞれ各軸１１，１６の回転に伴って制御装置７０にパルス信号を出力する。この際、クランク位置検出センサ１７はクランク軸１１の２回転当たりＮ個以上のパルス信号を発生し、カム軸位置検出センサ１８はカム軸１６の１回転当たりＮ個以上のパルス信号を発生する。これに対し、制御装置７０は、クランク軸１１が２回転する間に、クランク位置検出センサ１７のパルス信号をＮ個取り出すと共に、カム軸位置検出センサ１８のパルス信号をＮ個取り出し、それらのパルス信号を基にクランク軸１１−カム軸１６の間の回転位相差角θを計測するようになっている。尚、上記取出し信号数Ｎは、回転位相差角θの最大値をθmax （℃Ａ）としたときに、Ｎ＜７２０／θmax となるように設定される。
【００３６】
また、制御装置７０は、上記パルス信号の他に、各種センサ（運転状態検出手段）から出力されるエンジン回転数，吸入空気量，スロットル開度，アイドル信号，冷却水温，油温等の運転状態量を取り込み、後に詳細説明する学習制御演算により制御値を算出して油圧装置５０に出力する。
【００３７】
次に、図４は位相調整機構２０，スプロケット１３及びカム軸１６との間の結合状態を断面図で示したものであり、以下、この構成について詳述する。位相調整機構２０は、スプロケット１３にボルト２８で固定されたハウジング２２内に組み付けられている。図面左側から延びたカム軸１６の端部には、略円筒状のカム軸スリ−ブ２３がピン２４及びボルト２５によって固定されている。上記カム軸スリ−ブ２３がカム軸１６を支持している部分にはスプロケット１３が嵌合されており、スプロケット１３はその回転軸方向の動きが阻止されているが、回転方向には摺動できるようになっている。そして、カム軸スリ−ブ２３とカム軸１６及びハウジング２２とスプロケット１３は各々一体となっている。
【００３８】
また、カム軸スリ−ブ２３の外周側の一部には外歯ヘリカルスプライン３２ａが形成されており、一方のハウジング２２内周側の一部には内歯ヘリカルスプライン３３ａが形成されている。各カム軸スリ−ブ２３、ハウジング２２間にはシリンダ３４が嵌合されており、各ヘリカルスプライン３２ａ，３３ａは、シリンダ３４の内周側に形成された内歯ヘリカルスプライン３２ｂ、同じくその外周側に形成された外歯ヘリカルスプライン３３ｂと各々噛合している。これにより、スリ−ブ２３，ハウジング２２及びシリンダ３４は一体となって回転してスプロケット１３の回転がカム軸１６に伝達される。そして、これらは上述したヘリカルスプライン噛合により、シリンダ３４が回転軸方向に摺動したときに上記噛合部にスラストが発生し、このスラストによりカム軸１６が回転方向に摺動されることで、スプロケット１３−カム軸１６間の回転位相が変化するようになっている。
【００３９】
この実施例ではシリンダ３４を摺動させるために油圧装置５０を用いており、そのために位相調整機構２０の内部には２つの油圧室３５、３６が形成されている。図４において、右側が進角動作用の油圧室３５、左側が遅角動作用の油圧室３６であり、シリンダ３４は各油圧室３５，３６に供給される作動油量に応じて軸方向に摺動される。尚、各油圧室３５，３６を形成する領域各部には適宜オイルシ−ルが施されている。
【００４０】
一方、油圧装置５０は、作動油を蓄えているオイルパン５１、エンジン動力で駆動される油圧ポンプ５２、油圧ポンプ５２から圧送される作動油を各油圧室３５，３６に分配するスプ−ル弁５３、及びこれらの各間を連通する油圧路とを備えている。図４において、３７は油圧ポンプ５２−スプ−ル弁５３間の油圧路、３８はスプ−ル弁５３−ドレン間の油圧路、３９はスプ−ル弁５３−油圧室３５間の油圧路、４０はスプ−ル弁５３−油圧室３６間の油圧路を示している。
【００４１】
次に、図５を用いてスプ−ル弁５３の動作について説明する。図５において、５４はシリンダ、５５はシリンダ５４内を摺動するスプ−ル、５６は制御装置７０からの制御信号に従ってスプ−ル５５を摺動させるリニアソレノイド、５７はリニアソレノイド５６による駆動方向と反対にスプ−ル５５を付勢するスプリングである。上記シリンダ５４には、油圧ポンプ５２と連通された作動油供給ポ−ト５８、オイルパンと連通された作動油排出ポ−ト５９、油圧室３５と連通された油圧ポ−ト６０、及び油圧室３６と連通された油圧ポ−ト６１が形成されている。
【００４２】
前述した各油圧室３５、３６の作動油量は、スプ−ル５５が摺動して各油圧ポ−トの開度が連続的に変えられることにより増減され、その開度はリニアソレノイド５６に供給される電流値で決定される。そのために、上記制御装置７０は、制御信号をデュ−ティ値で生成して電流制御回路（図示せず）に出力し、この電流制御回路からリニアソレノイド５６に上記デュ−ティ値に対応する電流を供給するようになっている。
【００４３】
以下、図５を用いてスプ−ル弁５３の代表的な作動状態を説明する。
図５（ａ）は、制御装置７０における制御信号のデュ−ティ値が約１００％のときの例であり、スプ−ル５５がリニアソレノイド５６によりシリンダ５４の右端に駆動され、供給ポ−ト５８−油圧ポ−ト６０間、及び油圧ポ−ト６１−排出ポ−ト５９間が連通した状態を示している。このとき、上記油圧室３５には油圧路３９を通して作動油が供給される一方、油圧室３６からは作動油が排出される。これにより、図４に示すシリンダ３４が図面右方向に動き、スプロケット１３に対するカム軸１６の位相が進んで進角制御となる。
【００４４】
一方、図５（ｂ）は、同デュ−ティ値が約５０％のときの例であり、相対するリニアソレノイド５６とスプリング５７との力が釣り合い、スプ−ル５５が両方の油圧ポ−ト６０、６１を閉鎖する位置に維持され、油圧室３５、３６の作動油の供給及び排出が行われていない状態を示している。このとき、油圧室３５、３６から作動油の漏れがない場合には、上記シリンダ３４は現在位置に保持され、スプロケット１３とカム軸１６との間の位相は現状のまま維持される。
【００４５】
また、図５（ｃ）は、デュ−ティ値が約０％のときの例であり、スプ−ル５５がスプリング５７によりシリンダ５４の左端に付勢され、供給ポ−ト５８−油圧ポ−ト６１間、及び油圧ポ−ト６０−排出ポ−ト５９間とが連通した状態を示している。このとき、油圧室３６には作動油が供給される一方、油圧室３５からは作動油が排出されるので、図４に示すシリンダ３４は図面左方向に動き、スプロケット１３に対するカム軸１６の位相が遅れて遅角制御となる。
【００４６】
次に、図６を用いて制御装置７０の制御動作について説明する。図６（ａ）は制御装置７０で実行される制御系を表している。コントロ−ラ７２はＰＤ動作のコントロ−ラで構成されており、エンジン１０の運転状態に基づいて決定された目標カム軸進角値ｒと、現在のカム軸進角値（実位相差角）ｙと、ＲＡＭを備えて構成された学習回路７３（学習手段）からの学習値ｄ’とが入力される。コントロ−ラ７２は、後述するフローチャートに基づいて制御値ｕをデュ−ティ値で決定し、油圧装置５０及び位相調整機構２０からなる制御対象７４に出力する。この際、制御値ｕはパルス幅変調信号で生成され、前記電流制御回路を経由してリニアソレノイド５６に供給される。これにより、上記油圧室３５，３６の作動油が調節され、作動油量に応じてカム軸１６がその回転方向に変位される。このときのカム軸進角値ｙが制御対象７４から検出される。また、制御値ｕとカム軸進角速度の間の関係は図６（ｂ）のように表される。
【００４７】
図６（ｂ）のｄａの位置のデュ−ティ値を、保持デュ−ティ値と呼び、進角速度が「０」となるときのデュ−ティ値である。この保持デュ−ティ値ｄａは、言い換えれば、現状のカム軸進角値を維持するための値である。この保持デュ−ティ値ｄａは、実験等により予め設定され、後述する制御値ｕの決定の際に用いられるが、例えばスプ−ル弁５３の製造公差又は経時変化，エンジン回転数あるいは油圧値又は油圧温度等によりその値が変動する。
【００４８】
このように、保持デュ−ティ値ｄａは、上記スプ−ル弁５３の製造公差又は油温，回転数等の外乱要素により変動するので、弁動作タイミング調整制御においては、この保持デュ−ティ値ｄａを補償しながら制御を行う必要がある。
【００４９】
この観点から、本実施例では保持デュ−ティ値ｄａを学習しながら補償して弁動作タイミング調整制御を行うものであり、以下、その制御の詳細を図７及び図８のフローチャートに従って説明する。
【００５０】
まず、ステップ１００で、各種のセンサからエンジン１０内の各運転状態信号を取り込み、ステップ１１０で、エンジン運転状態及び現在のカム軸進角値ｙ（ｋ）［実位相差角］を算出し、ステップ１２０で、当該運転状態に基づいて目標カム軸進角値ｒ（ｋ）［目標値］を算出する（以下、現在のカム軸進角値を「実進角値」と略称し、目標カム軸進角値を「目標値」と略称する）。この実施例では、上述したステップ１１０の処理が特許請求の範囲でいう“回転位相差検出手段”の役割を果たし、ステップ１２０の処理が“目標値決定手段”の役割を果たす。
【００５１】
この後、ステップ１３０で、目標値ｒ（ｋ）及び実進角値ｙ（ｋ）から偏差ｅ（ｋ）を算出した後、ステップ１４０で、現在の偏差ｅ（ｋ）を「０」と比較し、ｅ（ｋ）≧０の場合には、現在のカム軸進角値を進角するために、次の（８）式に従って制御値ｕ（ｋ）を算出する（ステップ１５０）。
【００５２】
0003733600.tif 000003
一方、ｅ（ｋ）＜０の場合には、現在のカム軸進角値を遅角するために次の（９）式に従って制御値ｕ（ｋ）を算出する（ステップ１６０）。
【００５３】
0003733600.tif 000004
ここで、ＫP 、ＫD はフィ−ドバックゲインである。本例では、両式に同じゲイン値ＫP 、ＫD を用いているが、弁動作タイミング調整に要する負荷に応じて各々別個の値で設定されても構わない。そして決定された制御値ｕ（ｋ）は制御信号として前記電流制御回路を経由してリニアソレノイド５６に出力される。
【００５４】
上述したステップ１５０又は１６０において、制御値ｕ（ｋ）を算出した後、ステップ１６１に進み、スタータ信号がオンか否か、つまり始動時であるか否かを判断し、始動時であれば、後述する学習操作は行わず、ステップ１６３に進んで、今回の保持デュ−ティ値ｄａ(i) として、前回走行時の保持デュ−ティ値ｄａを用いて弁動作タイミング調整制御を継続する。
【００５５】
一方、始動時でなければ、ステップ１６２に進んで、油温（又は水温）が所定温度Ｔ（℃）以上であるか否かを判断し、油温（又は水温）＜Ｔ（℃）であれば、上述した始動時の場合と同じく、後述する学習操作は行わず、ステップ１６３に進んで、今回の保持デュ−ティ値ｄａ(i) として、前回走行時の保持デュ−ティ値ｄａを用いて弁動作タイミング調整制御を継続する。
【００５６】
これ以外の場合、つまり、始動時でなく、且つ油温（又は水温）が所定温度Ｔ（℃）以上である場合には、次のような学習操作を実行する。まず、ステップ１６４で、基準設定の有無、つまり後述する基準設定フラグのオン・オフを判断し、基準設定がなければ、ステップ１６６に進んで、学習条件成立判定用の基準値（目標基準値ｒa 、進角値基準値ｙa ）を次のようにして設定する。
▲１▼目標値ｒ（ｋ）を目標基準値ｒa に入力する。
▲２▼実進角値ｙ（ｋ）を進角値基準値ｙa に入力する。
▲３▼基準設定フラグをオンに設定する。
【００５７】
このようにして学習条件成立判定用の基準値ｒa ，ｙa を設定した後、ステップ１６７に進み、連続時間カウンタ▲１▼に“０”を入力する（リセットする）。この後、ステップ１６８に進み、学習条件成立判定用の学習中フラグをオフすると共に、制御値ｕ（ｋ）の記憶値を消去して、本制御を終了する。
【００５８】
一方、前述したステップ１６４で、基準設定有りと判断された場合には、学習中フラグがオンか否か、つまり学習条件が成立しているか否かを判断し、学習条件が成立していなければ、ステップ１７０に進んで、目標値ｒ（ｋ）がほぼほぼ一定であるか否か、つまり目標基準値ｒa に対する目標値ｒ（ｋ）の変動幅が微小範囲Δｒ内であるか否かを次式により判定する。
【００５９】
｜ｒ（ｋ）−ｒa ｜≦Δｒ
もし、目標値ｒ（ｋ）がほぼ一定でなければ、前述したステップ１６６に進んで、学習条件成立判定用の基準値ｒa ，ｙa を設定する。これに対し、目標値ｒ（ｋ）がほぼ一定と判定されれば、ステップ１８０に進んで、実進角値ｙ（ｋ）がほぼ一定であるか否か、つまり進角値基準値ｙa に対するｙ（ｋ）の変動幅が微小範囲Δｙ内であるか否かを次式により判定する。
【００６０】
｜ｙ（ｋ）−ｙa ｜≦Δｙ
もし、実進角値ｙ（ｋ）がほぼ一定でなければ、前述したステップ１６６に進んで、学習条件成立判定用の基準値ｒa ，ｙa を設定する。従って、この実施例では、目標値ｒ（ｋ）と実進角値ｙ（ｋ）のいずれか一方でもほぼ一定でなければ、学習条件成立判定用の基準値ｒa ，ｙa を設定することになる。
【００６１】
これに対し、ステップ１７０，１８０において目標値ｒ（ｋ）及び実進角値ｙ（ｋ）がいずれもほぼ一定であると判定された場合には、以下のステップに従って保持デュ−ティ値ｄａの学習を実行する。
【００６２】
本装置は、制御対象に外乱要素が存在すると一定量の定常偏差が発生するという閉ル−プ制御系の性質を保持デュ−ティ値ｄａの学習に適応させており、弁動作タイミング調整制御の際に目標値ｒ（ｋ）及び実進角値ｙ（ｋ）の値を監視して、その値が所定時間ほぼ一定であるときに、その時の制御値ｕ（ｋ）を新しい保持デュ−ティ値ｄａとして学習するものである。
【００６３】
保持デュ−ティ値ｄａの学習は、まず、ステップ１９０で、目標値ｒ（ｋ）及び実進角値ｙ（ｋ）の双方がほぼ一定値を維持する継続時間Ｍ1 を連続時間カウンタ▲１▼により計測し、継続時間Ｍ1 が所定時間ｔ1 に到達している場合にのみ目標値ｒ（ｋ）及び実進角値ｙ（ｋ）の定常状態が判定可能として学習中フラグをオンし（ステップ２００）、学習操作を開始する（ステップ２１０）。一方、継続時間Ｍ1 が所定時間ｔ1 に達していない場合には学習操作を行わずに弁動作タイミング調整制御を継続する。
【００６４】
学習操作は、まず、定常状態の判定が可能になった時点（ステップ２００）での制御値ｕ（ｋ）を記憶し（ステップ２１０）、連続時間カウンタ▲２▼に“０”を入力し（ステップ２１５）、弁動作タイミング調整制御を継続する。この後、実進角値ｙ（ｋ）がほぼ一定値を維持する継続時間Ｍ2 を連続時間カウンタ▲２▼により計測し、継続時間Ｍ2 が所定時間ｔ2 に到達すると、ステップ２３０の判断が「Ｙｅｓ」となり、記憶した制御値ｕ（ｋ）で実進角値ｙ（ｋ）が変わらないことが確認できたとして、ステップ２４０に進み、新しく学習した値ｕ（ｋ）をそのまま学習値として学習する。尚、上述したステップ２３０で判断する所定時間ｔ2 は、出力された制御値ｕ（ｋ）に対する実進角値ｙ（ｋ）の応答遅れ時間以上の時間とする。上述したステップ２４０で新しい学習値ｄａ(i) の算出を終了すると、ステップ２４５に進み、基準設定フラグをオフに設定して学習を終了する。
【００６５】
この学習操作は、弁動作タイミング調整制御中に行うため、学習操作開始後に、進角値基準値ｙa に対するｙ（ｋ）の変動幅がΔｙよりも大きくなることがあり、学習条件を外れることもある。このような場合には、ステップ２２０の判断が「Ｎｏ」となり、学習を中止して、最初の学習操作を開始する条件の設定（ステップ１６６）から再開する。
【００６６】
以上説明した学習操作は、保持デュ−ティ値ｄａを学習した時点で終了し、再び学習条件の成立判定用基準値ｒa ，y a の設定（ステップ１６６）より開始する。そして、学習操作による保持デュ−ティ値ｄａの学習値の更新を完了した後は、即座に新しい保持デュ−ティ値ｄａを基準に制御値ｕ（ｋ）の算出を開始する。
【００６７】
ところで、学習の条件として、まず始動直後のエンジン回転数が不安定な状態では行わないことがある。これは、クランク位置検出センサ１７，カム軸位置検出センサ１８より出力される信号で進角値を算出する制御の場合、図１８のような算出方法が知られているが、この方法は信号と信号の間は回転数が一定との仮定に基づいた計算であるため、特に始動時等の回転変動が大きい場合には学習の誤差が大きくなってしまうためである。ちなみに、図１８の算出方法は、カム軸信号▲１▼が最遅角状態で、進角値が“０”であり、カム軸信号▲２▼が進角状態で、次式により進角値を次式により算出する。
【００６８】
進角値＝（ｔ/ Ｔ）×１２０
また、学習を行わないもう１つの条件としては、油温変化時の保持デュ−ティ値の補正が行えない制御を採用している場合で、且つ油温又は水温が所定値以下の場合がある。これは、学習値（保持デュ−ティ値）が運転状態（油温，エンジン回転数）で変化するためである（図９参照）。暖気後は油温はそう急激に変化しないため、学習の繰り返しで、ある程度は保持デュ−ティ値の変化に対応できるが、暖気完了（今回は８０℃と設定）前の油温が安定するまでの間は、油温変化が早いため、学習を行ってもすぐに合わなくなってくる。このため、学習の機会の少ない場合には、ごく短い時間の油温用の保持デュ−ティ値を、その後の安定した油温時にも使用する事態も起ってしまい、制御精度の低下につながってしまう。従って、「油温毎に学習値を持つ」又は「油温で学習値を補正する」制御でない場合には、所定油温又は所定水温以下の学習を禁止することが必要となってくる。
【００６９】
これらの事情を考慮し、この実施例では、図７のステップ１６１でスタータ信号がオンか否か、つまり始動時であるか否かを判断し、始動時であれば、学習操作は行わず、ステップ１６３に進んで、今回の保持デュ−ティ値ｄａ(i) として、前回走行時の保持デュ−ティ値ｄａ（学習値）を用いる。一方、始動時であれば、ステップ１６２に進んで、油温（又は水温）が所定温度Ｔ（℃）以上であるか否かを判断し、油温（又は水温）＜Ｔ（℃）であれば、上述した始動時の場合と同じく、学習操作は行わず、ステップ１６３に進んで、今回の保持デュ−ティ値ｄａ(i) として、前回走行時の保持デュ−ティ値ｄａ（学習値）を用いる。
【００７０】
また、後述するように学習値を回転数別に持つ場合には、低油温時は前回走行時の高回転側（２０００ｒｐｍ以上）の保持デュ−ティ値ｄａ（学習値）を全回転に使用する。これは、低油温時の保持デュ−ティ値ｄａは回転数に関係なく、暖気後の高回転側の保持デュ−ティ値ｄａと近い値を取るからである（図９参照）。
【００７１】
ところで、保持デュ−ティ値ｄａは、部品寸法の公差，エンジン回転数，油温で変化するため、前述したような学習が必要となるが、エンジン回転数，油温の変化に対する保持デュ−ティ値ｄａの変化量は推定可能である。従って、前記学習操作により学習を行う際、エンジン回転数，油温を同時に学習しておくことで、運転状態変化時（回転数、油温の変化時）に、学習チャンスが来るまで、保持デュ−ティ値ｄａをエンジン回転数，油温の変化に応じて補正することが可能となる。
【００７２】
以下、これを具体化した実施例を図９乃至図１１に基づいて説明する。図９に示すような保持デュ−ティ値ｄａとエンジン回転数，油温との関係を示す特性曲線に基づいて、図１０に示すようなエンジン回転数と油温から基準保持デュ−ティ値を求めるマップを作成し、次の学習チャンスが来るまで、図１１のような手順で実際の学習値を次のように補正して使用する。まず、ステップ３００で、学習時のエンジン回転数と油温に基づいて、図１０のマップから基準保持デュ−ティ値ｄａ1 を求める。次いで、ステップ３１０で、現状のエンジン回転数と油温に基づいて図１０のマップから基準保持デュ−ティ値ｄａ2 を求める。この後、ステップ３２０で、次式により、実際の学習値ｄａ(i-1) を補正して今回の保持デュ−ティ値ｄａ(i) を求める。
【００７３】
ｄａ(i) ＝（ｄａ2 −ｄａ1 ）＋実際の学習値ｄａ(i-1)
但し、基準保持デュ−ティ値を求める図１０のマップは、実際には、各部品の寸法公差等の影響で、１台毎に違ってくるものであるため、補正した保持デュ−ティ値ｄａ(i) は、実際に学習した値と比較して、精度が若干低下することは否めない。
【００７４】
また、油温の代わりに水温による補正も可能であるが、油温と水温では多少違いがあるため、油温に比べ補正の精度が若干低くなることが考えられる。
【００７５】
前述した学習操作に関する一連の処理で学習条件を確認するために所定時間ｔ1 、ｔ2 を使用しているが、この所定時間の代わりに、カム軸位置検出センサ１８からのパルス信号の入力回数をカウントして使用することで、エンジン回転数の変化によるカム軸位置検出センサ１８からの信号の増減に対応することができるようになる。
【００７６】
以下、これを具体化した実施例を図１２に基づいて説明する。この図１２の学習操作については、前述した図８の学習操作と相違するステップについてのみ符号“ａ”を付して説明する。ステップ１６６で、学習条件成立判定用の基準値ｒa ，ｙa を設定した後、ステップ１６７ａに進み、センサ信号数用カウンタ▲１▼に“０”を入力する（リセットする）。一方、ステップ１７０，１８０において目標値ｒ（ｋ）及び実進角値ｙ（ｋ）がいずれもほぼ一定であると判定された場合には、ステップ１９０ａに進んで、目標値ｒ（ｋ）及び実進角値ｙ（ｋ）の双方がほぼ一定値を維持する時間中のセンサ信号数用カウンタ▲１▼のカウント値Ｃ1 （カム軸位置検出センサ１８からのパルス信号の入力回数）を所定数Ｓ1 と比較し、カウント値Ｃ1 が所定数Ｓ1 に到達していない場合には、学習操作を行わずに弁動作タイミング調整制御を継続する。
【００７７】
一方、ステップ１９０ａで、センサ信号数用カウンタ▲１▼のカウント値Ｃ1 が所定数Ｓ1 に達したと判定されると、目標値ｒ（ｋ）及び実進角値ｙ（ｋ）の定常状態が判定可能として学習中フラグをオンし（ステップ２００）、制御値ｕ（ｋ）を記憶して（ステップ２１０）、センサ信号数用カウンタ▲２▼をリセットする（ステップ２１５ａ）。
【００７８】
この後、実進角値ｙ（ｋ）がほぼ一定値を維持する時間中、センサ信号数用カウンタ▲２▼が入力信号をカウントし、そのカウント値Ｃ2 が所定数Ｓ2 に到達すると、ステップ２３０ａの判断が「Ｙｅｓ」となり、記憶した制御値ｕ（ｋ）で実進角値ｙ（ｋ）が変わらないことが確認できたとして、ステップ２４０に進み、新しく学習した値ｕ（ｋ）をそのまま学習値として学習する。
【００７９】
ところで、この実施例では、エンジン回転数により学習条件確認の時間は変わってくる。よって、最適な使い方は、入力信号の数（進角値の数）で精度を確保する制御値記憶前の定常判定には入力信号カウント式を用い、また、記憶した制御値で進角値が変化しないことの確認（ステップ２３０ａ〜２４０）では時間の影響が大きいので、時間判定方式を採用するという組合わせで行う方法である。
【００８０】
以下、これを具体化した実施例を図１３に基づいて説明する。この実施例では、図８の学習操作で使用した連続時間カウンタ▲２▼と、図１２の学習操作で使用したセンサ信号数用カウンタ▲１▼とを組み合わせる。つまり、ステップ１６６で、学習条件成立判定用の基準値ｒa ，ｙa を設定した後は、図８の学習操作と同じく、ステップ１６７に進み、センサ信号数用カウンタ▲１▼に“０”を入力する（リセットする）。一方、ステップ１７０，１８０において目標値ｒ（ｋ）及び実進角値ｙ（ｋ）がいずれもほぼ一定であると判定された場合には、ステップ１９０に進み、図８の学習操作と同じく、目標値ｒ（ｋ）及び実進角値ｙ（ｋ）の双方がほぼ一定値を維持する継続時間をセンサ信号数用カウンタ▲１▼により計測し、継続時間のセンサ信号数のカウント値Ｃ1 が所定数Ｓ1 に到達している場合にのみ目標値ｒ（ｋ）及び実進角値ｙ（ｋ）の定常状態が判定可能として学習中フラグをオンし（ステップ２００）、制御値ｕ（ｋ）を記憶し（ステップ２１０）、連続時間用カウンタ▲２▼をリセットする（ステップ２１５ａ）。
【００８１】
この後は、図８の学習操作と同じく、実進角値ｙ（ｋ）がほぼ一定値を維持する時間中、連続時間カウンタ▲２▼が継続時間を計測し、その継続時間Ｍ2 が所定時間ｔ2 に到達すると、ステップ２３０ａの判断が「Ｙｅｓ」となり、記憶した制御値ｕ（ｋ）で実進角値ｙ（ｋ）が変わらないことが確認できたとして、ステップ２４０に進み、新しく学習した値ｕ（ｋ）をそのまま学習値として学習する。
【００８２】
また、エンジン回転数，油温等で制御値に対する進角値の応答性が変化するため、判定時間や判定信号数を固定すると、学習精度の低下する運転領域が生じる。従って、エンジン回転数，油温等で、判定時間又は判定信号入力数を変更することで、学習精度の維持が可能となる。
【００８３】
前述した図８，図１２，図１３の各学習操作では、ステップ２４０で、条件成立時の制御値を生値で学習するようにしたが、生値ではなく、平滑化した値、例えば１／ｎなまし値又は学習条件成立判定時間ｔ1 の間の平均値とすることで、信号のばらつき等が存在した場合でも、影響を受け難い学習を行うことができる。制御値は、算出の基本となる進角値及び目標値双方のばらつきの影響を受けるため、他の値（目標値，進角値）よりもばらつきは大きくなりやすい。
【００８４】
これまでに説明した学習操作においては、学習値を１つだけとしていたが、プログラム容量に余裕がある場合には、運転状態（エンジン回転数，油温，水温）により区分けした領域ごとに学習値を持つほうが、制御上は有効である。これを具体化する一例としては、図１４に示すように全運転領域を油温，エンジン回転数で等分に分割し、それぞれに学習値を持たせることが考えられる。
【００８５】
しかし、実際の保持デュ−ティ値は油温，エンジン回転数に対し均等に変化しているわけではない（図９参照）。従って、図１５のように、保持デュ−ティ値の変化に合わせて領域を不均等に分割した方がより制御精度の向上につながり、プログラム容量の無駄を減らすことができる。
【００８６】
また、別の方法として、上記ほどプログラム容量に余裕がない場合、図１６に示すように、特定の運転領域ｎか所のみ学習値を持ち、他の領域は運転状態のパラメ−タを使って、前記ｎか所のうち近い複数か所の学習値を補正して保持デュ−ティ値として使用する方法もある。この方法は、学習しない領域は計算で求めるため、運転状態の変化中など学習チャンスが少ない状態で有利である。但し、計算で補完して求めるだけのため、正しい値を学習できた場合と比べると制御精度（目標値と進角値の差）は若干低いものとなる。
【００８７】
以下、この方法による学習値の求め方を図１７のフローチャートに従って説明する。まず、ステップ４００で、回転数が２０００rpm 以上であるか否かを判断し、回転数≧２０００rpm であれば、ステップ４１０に進み、図１２の領域▲２▼で学習した値ｄａ▲２▼を保持デュ−ティ値ｄａとして採用する。
【００８８】
一方、回転数＜２０００rpm であれば、ステップ４２０に進み、油温が５０℃以下であるか否かを判断し、油温≦５０℃であれば、ステップ４３０に進み、図１２の領域▲３▼で学習した制御値ｄａ▲３▼を保持デュ−ティ値ｄａとして採用する。一方、油温＞５０℃であれば、ステップ４４０に進み、次式により仮の値ｄａ▲４▼を算出する。
【００８９】
ｄａ▲４▼＝（油温−５０）×（ｄａ▲１▼−ｄａ▲３▼）／５０＋ｄａ▲３▼
この後、ステップ４５０に進み、回転数が１０００rpm より大きいか否かを判断し、回転数≦１０００rpm であれば、ステップ４６０に進み、上述したステップ４４０で算出した仮の値ｄａ▲４▼を保持デュ−ティ値ｄａとして採用する。一方、回転数＞１０００rpm であれば、ステップ４７０に進み、次式により保持デュ−ティ値ｄａを算出する。
【００９０】
ｄａ＝｛（ｄａ▲４▼−ｄａ▲２▼）／１０００｝×（２０００−回転数）＋ｄａ▲２▼
ところで、学習操作において、制御値を学習する際に、誤学習を防止するためには以下の２通りの方法が有効である。
【００９１】
１つ目の方法は、学習の際、新しい学習値に一回で置き換えるのでなく、次式のように前回の学習値との差の１／ｍずつ変えていく方法（ｍは定数）である。
0003733600.tif 000005
これを具体化する場合には、図８，図１２，図１３の各学習操作におけるステップ２４０の処理を、図１９に示すステップ２４０ａの処理に置き換えれば良い。つまり、学習値の更新の際、新しく学習した値ｕ（ｋ）をそのまま学習値とするのではなく、前回の学習値ｄａ(i-1) と今回学習した値の差の１／ｍを前回の値ｄａ(i-1) に加算した値を新しい学習値ｄａ(i) とする。
【００９２】
誤学習を防止する２つ目の方法は、１回の学習で行える学習値の変更量に制限を設けることである。例えば、１回の変更量の最大値をＬ（％）とすると、下記のようになる。
【００９３】
前回の学習値＋Ｌ（％）≧新学習値（％）≧前回の学習値−Ｌ（％）
これを具体化する場合には、図８，図１２，図１３の各学習操作におけるステップ２４０の処理を、図２０に示すステップ２４０ｃ〜２４０ｇの処理に置き換えれば良い。この処理では、まず、ステップ２４０ｃにおいて、前回の学習値ｄａ(i-1) と新しく学習した値ｕ（ｋ）との差の絶対値が学習値の変更最大量Ｌよりも小さいか否かを判断し、小さければ、ステップ２４０ｄに進み、新しく学習した値ｕ（ｋ）を今回の学習値ｄａ(i) として用いる。一方、前回の学習値ｄａ(i-1) と新しく学習した値ｕ（ｋ）との差の絶対値が変更最大量Ｌ以上であれば、ステップ２４０ｅに進んで、ｄａ(i-1) −ｕ（ｋ）が０以上であるか否か、つまりｄａ(i-1) とｕ（ｋ）との大小関係を判定する。もし、ｄａ(i-1) −ｕ（ｋ）が０以上であれば、ステップ２４０ｆに進んで、前回の学習値ｄａ(i-1) から変更最大量Ｌを差し引いた値を今回の学習値ｄａ(i) として用いる。一方、ｄａ(i-1) −ｕ（ｋ）の値が負であれば、ステップ２４０ｇに進んで、ｄａ(i-1) ＋Ｌを計算し、その計算値を今回の学習値ｄａ(i) として用いる。
【００９４】
本弁動作タイミング調整装置（例えば図８の学習制御を行うもの）を用いてカム軸進角値を目標値にする実験を行った例を図２１乃至図２４に示す。
各図はいずれも保持デュ−ティ値ｄａがその真値から外れた状態を模擬的に形成させた例であり、図２１と図２２は真値より下に外れた場合、図２３と図２４は真値より上に外れた場合である。そして、図２１と図２３は保持デュ−ティ値ｄａを学習せずに制御した場合、図２２と図２４は上記保持デュ−ティ値ｄａを学習しながら制御する場合を示している。尚、各図において（ａ）は本学習制御によるカム軸進角値の推移を示しており、（ｂ）は本学習制御におけるデュ−ティ値の推移を示している。
【００９５】
図２１及び図２２において、スプ−ル弁５３の実際の保持デュ−ティ値ｄａは約５１％であるが、実験に際し当初模擬的に約４８％に設定してある。
【００９６】
図２１（ａ）において学習操作を行わずに制御すると、実際のカム軸進角位置ｙ（ｋ）は時間とともに目標値ｒ（ｋ）に近づくが、定常偏差ｅ1 を残して一定値に収束している。
【００９７】
一方、図２２（ａ）に示すように学習操作を行いながら制御した場合では、当初は学習操作を行わないときと同様に、カム軸進角位置ｙ（ｋ）は定常偏差ｅ1 を残して一定値に収束されるが、目標値ｒ（ｋ）及びカム軸進角位置ｙ（ｋ）が一定の所定時間ｔ1 （または、カム軸センサ信号の３パルス分の時間）継続した時点で学習操作が開始され、その後、所定時間ｔ2 （例えば１００msec）の間、カム軸進角位置ｙ（ｋ）が一定の状態を継続した場合、保持デュ−ティ値ｄａが更新されることにより、カム軸進角位置ｙ（ｋ）は速やかに目標値ｒ（ｋ）に到達している。
【００９８】
また、図２３及び図２４においては、スプ−ル弁５３の実際の保持デュ−ティ値ｄａは約５１％であるが、実験に際し当初模擬的に約５４％に外してある。図２３（ａ）において学習操作を行わずに制御すると、カム軸進角位置ｙ（ｋ）は時間とともに目標値ｒ（ｋ）に近づき、そして更にオ−バ−シュ−ト量ｅ2 をもって収束する。
【００９９】
一方、図２４（ａ）に示すように学習操作を行いながら制御した場合は、図２２（ａ）と同様に学習を行い、保持デュ−ティ値ｄａが更新されてカム軸進角位置ｙ（ｋ）は速やかに目標値ｒ（ｋ）に収束する。
【０１００】
本弁動作タイミング調整装置は、以上のように積分動作を含まないコントロ−ラを用いることにより、当該コントロ−ラの出力から保持デュ−ティ値を速やかに得ることができ、これによりスプ−ル弁の動作変動による外乱を速やかに補償し、以後の制御において定常偏差をなくすことができるものである。
【０１０１】
尚、上記実施例では、実位相差角及び目標値が共に所定時間ほぼ一定となったときに制御値を学習するようにしたが、目標値とは関係なく、実位相差角のみに基づいて学習チャンスを判定する構成、つまり実位相差角が所定時間ほぼ一定となったときに制御値を学習する構成としても良く、この場合でも本発明の所期の目的を達成することができる。
【０１０２】
【発明の効果】
以上説明した本発明の各請求項の構成によれば、次のような効果を得ることができる。
即ち、請求項１では、実位相差角が所定時間ほぼ一定となったときに制御値を学習し、学習した値に基づいてその後の制御値を求めるようにしたので、実位相差角の変化速度に対応した学習を行うことができて、学習頻度を減らさずに運転状態の変化に追従した弁動作のタイミング調整を行うことができる。
【０１０３】
更に、請求項２では、実位相差角及び目標値が共に所定時間ほぼ一定となったときに制御値を学習するようにしたので、学習の際に実位相差角に加え目標値も安定していることを反映させることができて、誤学習を避けて学習制御の精度を一層向上させることができる。
【０１０４】
また、請求項３では、制御値を学習する際に、運転状態量も同時に学習し、該運転状態量が変化したときに制御値の学習値を該運転状態量の変化に応じて補正するようにしたので、運転状態量の変化に追従した学習制御が可能となり、学習制御の精度向上に寄与することができる。
【０１０５】
また、請求項４では、実位相差角又はこれと前記目標値がほぼ一定値に収束したか否かを判断するための所定時間を、実位相差角の算出に使用するパルス信号のｎパルス分の時間、又はこのｎパルス分の時間に或る時間を加算した時間に設定するようにしたので、エンジン回転数の変化によるカム軸位置検出信号の増減に対応することができ、この面からも学習制御の精度向上に寄与することができる。
【０１０６】
また、請求項５では、制御値の平均値又は制御値を平滑化したなまし値を学習するようにしたので、信号のばらつき等が存在した場合でもその影響を受け難い学習を行うことができて、学習制御の信頼性を向上させることができる。
【０１０７】
また、請求項６では、エンジン回転数，油温又は水温で分割した領域ごとに制御値を学習するようにしたので、エンジン回転数，油温又は水温ごとに詳細な学習制御を行うことができ、学習制御の精度向上に寄与することができる。
【０１０８】
また、請求項７では、制御値の学習をエンジン回転数，油温又は水温で限定した領域ｎヶ所でのみ行い、他の領域は運転状態量により学習値を補正して使用するようにしたので、学習しない領域は学習値を計算で求めることができて、運転状態の変化中など学習チャンスが少ない状態でも学習効果を得ることができる。
【０１０９】
また、請求項８では、始動直後の場合や、油温による学習値補正がないときの油温，水温が所定温度以下の場合には、学習を禁止し、前回の学習値を補正して使用するようにしたので、エンジン回転数が不安定な状態で、精度の低い学習を行わずに済み、学習制御の信頼性を向上させることができる。
【０１１０】
また、請求項９では、学習値の更新の際、新しく学習した値をそのまま学習値とするのではなく、前回の学習値と今回学習した値の差の１／ｍを前回の値に加算した値を新しい学習値とするようにしたので、制御値を学習する際に、誤学習を行わずに済み、学習制御の信頼性を向上させることができる。
【０１１１】
また、請求項１０では、一回の学習で行える学習値の変更量に制限を設けようにしたので、この場合も、誤学習を行わずに済み、学習制御の信頼性を向上させることができる。
【図面の簡単な説明】
【図１】本発明に係る弁動作タイミング調整装置の一形態を示すブロック図である。
【図２】本発明に用いる閉ル−プ系の性質を説明するためのブロック線図で、（ａ）は制御系のブロック線図、（ｂ）は（ａ）を近似したブロック線図である。
【図３】本発明に係る弁動作タイミング調整装置の一実施例を示す構成図である。
【図４】位相調整機構を示す断面図である。
【図５】図３の調整装置におけるスプ−ル弁の各状態例を示す断面図で、（ａ）はデュ−ティ値１００％、（ｂ）は同５０％、（ｃ）は同０％の状態を示し、（ｄ）はコントローラ出力と各油路への油量との関係を示す図である。
【図６】図３の調整装置の制御系を表す図で、（ａ）はブロック線図、（ｂ）はデュ−ティ値とカム軸進角速度の静特性である。
【図７】図３の調整装置の制御装置で実行される学習制御フローチャートである。
【図８】図７の学習制御フローチャートの続きである。
【図９】保持デューティ値と油温，エンジン回転数との関係を示す図である。
【図１０】保持デューティ値マップを示す図である。
【図１１】図１０の保持デューティ値マップから保持デューティ値を求める例を説明するフローチャートである。
【図１２】学習操作の第２の例を示すフローチャートである。
【図１３】学習操作の第３の例を示すフローチャートである。
【図１４】エンジン回転数，油温で等分割した領域ごとに学習領域を設ける例を示す図である。
【図１５】エンジン回転数，油温に応じて不均等に分割した領域ごとに学習領域を設ける例を示す図である。
【図１６】制御値の学習をエンジン回転数，油温で限定した領域ｎ箇所でのみ行う例を説明する図で、（ａ）はエンジン回転数，油温と学習領域との関係を示す図、（ｂ）は各学習領域の範囲を説明する図である。
【図１７】制御値の学習をエンジン回転数，油温で限定した領域ｎ箇所でのみ行う場合の制御例を示すフローチャートである。
【図１８】クランク信号，カム軸信号，進角値との関係を説明する図である。
【図１９】学習値の更新方法の第２の例を示すフローチャートである。
【図２０】学習値の更新方法の第３の例を示すフローチャートである。
【図２１】図３の調整装置において学習制御を行わずに弁動作タイミングを調整したときの１つのタイムチャ−トであり、（ａ）はカム軸進角位置と時間との関係、（ｂ）はデュ−ティ値と時間との関係を示す。
【図２２】図３の調整装置において学習制御を行いながら弁動作タイミングを調整したときの１つのタイムチャ−トであり、（ａ）はカム軸進角位置と時間との関係、（ｂ）はデュ−ティ値と時間との関係を示す。
【図２３】図３の調整装置において学習制御を行わずに弁動作タイミングを調整したときのもう１つのタイムチャ−トであり、（ａ）はカム軸進角位置と時間との関係、（ｂ）はデュ−ティ値と時間との関係を示す。
【図２４】図３の調整装置において学習制御を行いながら弁動作タイミングを調整したときのもう１つのタイムチャ−トであり、（ａ）はカム軸進角位置と時間との関係、（ｂ）はデュ−ティ値と時間との関係を示す。
【符号の説明】
１…位相調整機構、２…駆動手段、３…運転状態検出手段、４…回転位相差検出手段、５…目標値決定手段、６…制御手段、７ａ…第１の判断手段、７ｂ…第２の判断手段、８…学習手段、９…コントローラ、１０…エンジン、１１…クランク軸、１３…吸気弁用スプロケット、１６…吸気弁用カム軸、１７…クランク位置検出センサ、１８…カム軸位置検出センサ、２０…位相調整機構、２３…カム軸スリ−ブ、３４…シリンダ、３５，３６…油圧室、３７，３８，３９，４０…油圧路、５０…油圧装置（駆動手段）、５２…油圧ポンプ、５３…スプ−ル弁、５４…シリンダ、５５…スプ−ル、５６…リニアソレノイド、５７…スプリング、７０…制御装置（制御手段）、７２…コントローラ、７３…学習回路（学習手段）、７４…制御対象。
【図１】
0003733600.tif 000006
【図２】
0003733600.tif 000007
【図３】
0003733600.tif 000008
【図４】
0003733600.tif 000009
【図５】
0003733600.tif 000010
【図６】
0003733600.tif 000011
【図７】
0003733600.tif 000012
【図８】
0003733600.tif 000013
【図９】
0003733600.tif 000014
【図１０】
0003733600.tif 000015
【図１１】
0003733600.tif 000016
【図１２】
0003733600.tif 000017
【図１３】
0003733600.tif 000018
【図１４】
0003733600.tif 000019
【図１５】
0003733600.tif 000020
【図１６】
0003733600.tif 000021
【図１７】
0003733600.tif 000022
【図１８】
0003733600.tif 000023
【図１９】
0003733600.tif 000024
【図２０】
0003733600.tif 000025
【図２１】
0003733600.tif 000026
【図２２】
0003733600.tif 000027
【図２３】
0003733600.tif 000028
【図２４】
0003733600.tif 000029