以下に本発明の実施の形態を説明する。
図1は、本発明に係る制御装置が適用される車両用内燃機関のシステム構成を示す図である。
内燃機関101は例えば直列4気筒ガソリン機関であり、各気筒に空気を導入するための吸気管102には、内燃機関101の吸入空気流量QAを検出する吸入空気量センサ103が設けられている。
前記吸入空気量センサ103としては、例えば、熱線式流量計などが用いられる。
各気筒の燃焼室104の吸気口を開閉する吸気バルブ105が設けられ、該吸気バルブ105上流側の吸気管102には、気筒毎に燃料噴射弁106が配置される。
前記燃料噴射弁106には、前記燃料噴射弁106の開弁時間に比例する燃料が噴射されるように圧力が調整された燃料が供給される。
前記燃料噴射弁106から噴射された燃料は、吸気バルブ105を介して燃焼室104内に空気と共に吸引され、点火プラグ107による火花点火によって着火燃焼し、該燃焼による圧力がピストン108をクランク軸109に向けて押し下げることで、前記クランク軸109を回転駆動する。
また、前記燃焼室104の排気口を開閉する排気バルブ110が設けられ、該排気バルブ110が開くことで排ガスが排気管111に排出される。
前記排気管111には、触媒コンバータ112が介装されており、排ガス中の有害成分は、前記触媒コンバータ112によって無害成分に転換され、排出される。
前記吸気バルブ105及び排気バルブ110は、クランク軸109を介して回転駆動されるカム軸の回転によって開動作する。
前記排気バルブ110は、一定のバルブリフト量・バルブ作動角・バルブタイミング(一定の開弁特性)で開動作するが、前記吸気バルブ105のバルブリフト量・バルブ作動角・バルブタイミングは、可変バルブリフト機構(VEL)113及び可変バルブタイミング機構(VTC)114によって変更可能となっている。
前記可変バルブリフト機構113は、吸気バルブ105のバルブリフト量(最大バルブリフト量)及びバルブ作動角を連続的に変化させる機構であり、前記可変バルブタイミング機構114は、クランク軸109に対する後述の吸気カム軸115の回転位相を変化させることで、吸気バルブ105のバルブ作動角の中心位相を進角・遅角変化させる機構である。
また、前記点火プラグ107それぞれには、点火プラグ107に対して点火エネルギを供給する点火モジュール116が直付けされている。
前記点火モジュール116は、点火コイルと該点火コイルへの通電を制御するパワートランジスタとを含んで構成される。
前記燃料噴射弁106,可変バルブリフト機構113,可変バルブタイミング機構114及び点火モジュール116は、制御装置201によって制御される。
前記制御装置201は、マイクロコンピュータを含んで構成され、各種センサ・スイッチからの信号を入力し、予め記憶されたプログラムに従った演算処理を行うことで、前記燃料噴射弁106,可変バルブリフト機構113,可変バルブタイミング機構114及び点火モジュール116それぞれの操作量を決定し出力する。
前記燃料噴射弁106による燃料噴射の制御においては、各気筒の吸気行程に合わせて個別に燃料噴射を実行させる、所謂シーケンシャル噴射制御が行われるようになっている。
図2は、吸気バルブ105のバルブリフト量及びバルブ作動角(開弁特性)を連続的に可変とする可変バルブリフト機構113(可変動弁機構)の構造を示す斜視図である。
前記吸気バルブ105の上方に、前記クランク軸109によって回転駆動される吸気カム軸115が気筒列方向に沿って回転可能に支持されている。
前記吸気カム軸115には、吸気バルブ105のバルブリフタ105aに当接して吸気バルブ105を開閉駆動する揺動カム4が相対回転可能に外嵌されている。
前記吸気カム軸115と揺動カム4との間には、吸気バルブ105のバルブ作動角及びバルブリフト量を連続的に変更するための可変バルブリフト機構113が設けられている。
また、前記吸気カム軸115の一端部には、クランク軸109に対する前記吸気カム軸115の回転位相を変化させることにより、吸気バルブ105のバルブ作動角の中心位相を連続的に変更する可変バルブタイミング機構114が配設されている。
前記可変バルブリフト機構113は、図2及び図3に示すように、吸気カム軸115に偏心して固定的に設けられる円形の駆動カム11と、この駆動カム11に相対回転可能に外嵌するリング状リンク12と、吸気カム軸115と略平行に気筒列方向へ延びる制御軸13と、この制御軸13に偏心して固定的に設けられた円形の制御カム14と、この制御カム14に相対回転可能に外嵌すると共に、一端がリング状リンク12の先端に連結されたロッカアーム15と、このロッカアーム15の他端と揺動カム4とに連結されたロッド状リンク16と、を有している。
前記制御軸13は、モータ17によりギア列18を介して所定の制御範囲内で回転駆動される。
尚、モータ17として本実施形態では、ブラシレスモータ(以下、BLMともいう)を用いる。
上記の構成により、クランク軸109に連動して吸気カム軸115が回転すると、駆動カム11を介してリング状リンク12が略並進移動すると共に、ロッカアーム15が制御カム14の軸心周りに揺動し、ロッド状リンク16を介して揺動カム4が揺動して吸気バルブ105が開閉駆動される。
また、前記モータ17を駆動制御して制御軸13の角度を変化させることにより、ロッカアーム15の揺動中心となる制御カム14の軸心位置が変化して揺動カム4の姿勢が変化する。
これにより、図5の矢印301に示すように、吸気バルブ105のバルブ作動角の中心位相SPが略一定のままで、吸気バルブ105のバルブ作動角OA及びバルブリフト量VLが連続的に変化する。
尚、バルブ作動角及びバルブリフト量が連続的に変化すると同時に、バルブ作動角の中心位相が変化するように、前記可変バルブリフト機構113を構成することも可能である。
図4は、吸気バルブ105のバルブ作動角の中心位相を可変とする前記可変バルブタイミング機構114の構造を示す。
前記可変バルブタイミング機構114は、クランク軸109によりタイミングチェーンを介して回転駆動されるカムスプロケット51(タイミングスプロケット)と、前記吸気カム軸115の端部に固定されてカムスプロケット51内に回転自在に収容された回転部材53と、該回転部材53をカムスプロケット51に対して相対的に回転させる油圧回路54と、カムスプロケット51と回転部材53との相対回転位置を所定位置で選択的にロックするロック機構60とを備えている。
前記カムスプロケット51は、外周にタイミングチェーン(又はタイミングベルト)が噛合する歯部を有する回転部(図示省略)と、該回転部の前方に配置されて前記回転部材53を回転自在に収容するハウジング56と、該ハウジング56の前後開口を閉塞するフロントカバー,リアカバー(図示省略)とから構成される。
前記ハウジング56は、前後両端が開口形成された円筒状を呈し、内周面には、横断面台形状を呈し、それぞれハウジング56の軸方向に沿って設けられる4つの隔壁部63が90°間隔で突設されている。
前記回転部材53は、吸気カムシャフト3の前端部に固定されており、円環状の基部77の外周面に90°間隔で4つのベーン78a,78b,78c,78dが設けられている。
前記第1〜第4ベーン78a〜78dは、それぞれ断面が略逆台形状を呈し、各隔壁部63間の凹部に配置され、前記凹部を回転方向の前後に隔成し、ベーン78a〜78dの両側と各隔壁部63の両側面との間に、進角側油圧室82と遅角側油圧室83を構成する。
前記ロック機構60は、ロックピン84が、回転部材53の初期位置において係合孔(図示省略)に係入するようになっている。
前記油圧回路54は、進角側油圧室82に対して油圧を給排する第1油圧通路91と、遅角側油圧室83に対して油圧を給排する第2油圧通路92との2系統の油圧通路を有し、この両油圧通路91,92には、供給通路93とドレン通路94a,94bとがそれぞれ通路切り換え用の電磁切換弁95を介して接続されている。
前記供給通路93には、オイルパン96内の油を圧送する機関駆動のオイルポンプ97が設けられている一方、ドレン通路94a,94bの下流端がオイルパン96に連通している。
前記第1油圧通路91は、回転部材53の基部77内に略放射状に形成されて各進角側油圧室82に連通する4本の分岐路91dに接続され、第2油圧通路92は、各遅角側油圧室83に開口する4つの油孔92dに接続される。
前記電磁切換弁95は、内部のスプール弁体が各油圧通路91,92と供給通路93及びドレン通路94a,94bとを相対的に切り換え制御するようになっている。
前記制御装置201は、前記電磁切換弁95を駆動する電磁アクチュエータ99に対する通電量を、ディザ信号が重畳されたデューティ制御信号(操作量)に基づいて制御する。
可変バルブタイミング機構114においては、電磁アクチュエータ99にデューティ比(オン時間割合)0%のオフ制御信号を出力すると、オイルポンプ47から圧送された作動油は、第2油圧通路92を通って遅角側油圧室83に供給されると共に、進角側油圧室82内の作動油が、第1油圧通路91を通って第1ドレン通路94aからオイルパン96内に排出されるようにしてある。
従って、電磁アクチュエータ99にデューティ比0%のオフ制御信号を出力すると、遅角側油圧室83の内圧が高くなる一方で、進角側油圧室82の内圧が低くなり、回転部材53は、ベーン78a〜78bを介して最大遅角側に回転し、この結果、吸気バルブ105の開期間(バルブ作動角の中心位相)がピストン位置に対して相対的に遅角変化する。
即ち、電磁アクチュエータ99への通電を遮断すると、吸気バルブ105のバルブ作動角の中心位相は遅角変化し、最終的には、最遅角位置で停止する。
また、電磁アクチュエータ99にデューティ比100%のオン制御信号を出力すると、作動油は、第1油圧通路91を通って進角側油圧室82内に供給されると共に、遅角側油圧室83内の作動油が第2油圧通路92及び第2ドレン通路94bを通ってオイルパン96に排出され、遅角側油圧室83が低圧になる。
このため、電磁アクチュエータ99にデューティ比100%のオン制御信号を出力すると、回転部材53は、ベーン78a〜78dを介して進角側へ最大に回転し、これによって、吸気バルブ105の開期間(バルブ作動角の中心位相)がピストン位置に対して相対的に進角変化する。
このように、前記可変バルブタイミング機構114は、図5の矢印302に示すように、吸気バルブ105のバルブ作動角OA及びバルブリフト量VLを変えずに、吸気バルブ105のバルブ作動角の中心位相SPを進・遅角変化させる機構であり、前記制御信号のデューティ比を変更することで、最遅角位置から最進角位置までの間の任意の位置にバルブ作動角の中心位相を変化させることができる。
尚、吸気バルブ105のバルブ作動角・バルブリフト量を連続的に可変とする可変バルブリフト機構113、吸気バルブ105のバルブ作動角の中心位相を連続的に可変とする可変バルブタイミング機構114は、上記の図2〜4に示したものに限定されない。
例えば、可変バルブタイミング機構114としては、上記のベーン式の他、歯車を用いてクランク軸109に対し前記吸気カム軸115を相対回転させる機構などを用いることができ、更に、油圧アクチュエータの他、モータや電磁ブレーキをアクチュエータとして用いる機構を採用できる。
前記制御装置201には、前記制御軸13の角度に応じたレベルの信号を出力する動作位置測定手段としての角度センサ202からの信号が入力されると共に、前記モータ17に備えられる電気角検出手段としての3つのモータ角度検出センサ(モータ角度検出センサ)211U,211V,211Wからのパルス信号がそれぞれ入力される。
前記角度センサ202は例えばポテンショメータからなり、制御軸13の角度に応じた電圧を出力し、前記モータ角度検出センサ211U,211V,211Wは、例えばホールICからなり、ロータの回転に応じて周期的に変化するパルス信号を出力する。
そして、前記センサからの信号に基づき前記制御軸13の角度を検出する一方、機関運転条件(機関負荷・機関回転速度など)に応じて目標バルブリフト量に対応する目標角度を演算し、前記角度の検出値と前記目標角度とに基づいて、前記モータ17(U相,V相及びW相)の通電をフィードバック制御する。
尚、モータ17の構成,駆動回路及びモータ角度検出センサ211U,211V,211Wの詳細は、後で詳細に説明する。
また、前記制御装置201は、機関運転条件(機関負荷・機関回転速度など)に基づいて吸気バルブ105のバルブ作動角の中心位相の目標進角量を演算し、クランク角センサ203及びカムセンサ204の出力信号に基づいて検出される実際の進角量が前記目標進角量に近づくように、前記実際の進角量と目標進角量との偏差に基づいて、電磁アクチュエータ99に出力する制御信号のデューティ比(操作量)をフィードバック制御する。
前記クランク角センサ203は、クランク軸109に軸支したシグナルプレート203aの周縁に等間隔で形成された突起部203bを、ピックアップ203cで検出することで、単位クランク角毎のポジション信号POSを出力すると共に、前記シグナルプレート203aに180deg間隔で2箇所に形成した突起部203dをピックアップ203eで検出することで、各気筒の所定クランク角位置(所定ピストン位置)毎のリファレンス信号REFを出力する。
前記リファレンス信号REFの出力間隔は、本実施形態における4気筒機関における点火間隔に相当し、前記リファレンス信号REFは、各気筒の同じピストン位置(例えばBTDC75deg)毎に出力されることになる。
前記制御装置201では、クランク角センサ203の出力信号(ポジション信号POS又はリファレンス信号REF)に基づいて内燃機関101の回転速度NEを算出する。
一方、前記カムセンサ204は、前記リファレンス信号REFの発生間隔において、気筒ナンバーを示す数のカム信号CAMを出力し、可変バルブタイミング機構114によってクランク軸109に対する吸気カム軸115の位相が変化すると、前記リファレンス信号REFの出力位置に対するカム信号CAMの出力位置が変化する。
従って、例えば、前記リファレンス信号REFが発生してからカム信号CAMが発生するまでの角度を計測することで、可変バルブタイミング機構114による中心位相の進角量を検出することができる。
尚、前記カム信号CAMの発生位置は、可変バルブタイミング機構114によって吸気カム軸115の位相を変化させても、リファレンス信号REFの出力位置を超えて変化することがないように設定されている。
前記制御装置201には、上記吸入空気量センサ103,角度センサ202,クランク角センサ203及びカムセンサ204の出力信号が入力される他、内燃機関101の運転・停止のメインスイッチであるイグニッションスイッチ(IGNスイッチ)205の信号、アクセルセンサ206からのアクセルペダル207の開度信号ACC、水温センサ208からの冷却水温度信号TW、空燃比センサ209からの空燃比信号AFなどが入力される。
前記空燃比センサ209は、排気管111に設けられ、内燃機関101の空燃比と密接な関係にある排気中の酸素濃度に感応して出力が変化するセンサ(酸素濃度センサ)である。
図6は、前記制御装置201の詳細構成を示す図であり、前記制御装置201は、内燃機関101の点火や燃料噴射を制御するECM214と、前記可変バルブリフト機構113のモータ17を駆動する駆動回路212と、前記駆動回路212を制御するVELコントローラ213とを備えている。
前記ECM214には、前記水温センサ208やクランク角センサ203などの内燃機関101の運転状態を検出する各種センサ・スイッチからの信号が入力されると共に、アクセルセンサ206などの車両の運転状態を検出するセンサ・スイッチからの信号が入力され、これらの信号に基づいて、前記点火モジュール116や燃料噴射弁106に対して制御信号を出力する。
また、前記ECM214は、前記各種センサ・スイッチからの信号に基づいて、前記可変バルブリフト機構113の制御軸13の目標角度(目標バルブリフト量)を演算して、前記VELコントローラ213に出力する。
前記VELコントローラ213には、前記角度センサ202からの検出信号(出力電圧VAS)が入力されると共に、前記モータ17に設けられる3つのモータ角度検出センサ211U,211V,211Wからのパルス信号が入力され、これらに基づいて制御軸13の実際の角度を検出し、実際の角度が前記目標角度に近づくように、モータ17の駆動回路212に含まれるスイッチング素子の制御信号を出力する。
図7は、前記駆動回路212及びモータ17の詳細を示す。
前記モータ17はブラシレスモータ(BLM)であり、U相、V相及びW相の3相巻線215U,215V,215Wが、図示省略した円筒状の固定子に設けられ、該固定子の中央部に形成された空間に永久磁石回転子216が配置される。
そして、駆動回路212は、例えばIGBTからなる6個のスイッチング素子217a〜217fを3相ブリッジ接続し、かつ、各スイッチング素子217a〜217fに逆並列にダイオード218a〜218fをそれぞれ接続して構成され、かつ、電源回路219を有している。
前記スイッチング素子217a〜217fの制御端子(ゲート端子)は、前記VELコントローラ213に接続されている。
また、図8に示すように、前記モータ17の回転子102の回転軸を中心とする円周上に3つのモータ角度検出センサ211U,211V,211W(ホールIC)が配置されている。
前記3つのモータ角度検出センサ211U,211V,211Wはロータの回転に伴って周期的に変化するパルス信号を出力するセンサであり、それぞれのパルス信号は、図9及び図10に示すように、電気角で120deg(1/3周期)の位相差をもって出力される。
ここで、モータ17の正転時には、図9に示すように、モータ角度検出センサ211Wの出力パルスSwの立ち上がりから電気角120deg後に、モータ角度検出センサ211Uの出力パルスSuが立ち上がり、更に電気角120deg後に、モータ角度検出センサ211Vの出力パルスSvが立ち上がる。
これに対し、モータ17の逆転時には、図10に示すように、モータ角度検出センサ211Vの出力パルスSvの立ち上がりから電気角120deg後に、モータ角度検出センサ211Uの出力パルスSuが立ち上がり、更に電気角120deg後に、モータ角度検出センサ211Wの出力パルスSwが立ち上がる。
このため、例えば、正転時は、モータ角度検出センサ211Uの出力パルスSuの立ち上がり時にモータ角度検出センサ211Vの出力パルスSvがローレベルであるのに対し、逆転時は、モータ角度検出センサ211Uの出力パルスSuの立ち上がり時にモータ角度検出センサ211Vの出力パルスSvがハイレベルとなり、前記ローレベル・ハイレベルを区別することで、モータ17の正転状態と逆転状態とを判別できるようになっている。
更に、前記3つのモータ角度検出センサ211U,211V,211Wのパルス信号Su,Sv,Swの立ち上がり・立ち下りは電気角60deg毎に発生するので、図11に示すように、ロータの回転角(電気角)を、前記立ち上がり・立ち下りの検出毎に、回転方向に応じて電気角60degだけ増大又は減少させることで、モータ17のロータの回転角(電気角)を検出することができる。
そして、前記ロータの回転がギア列18(減速機)を介して制御軸13に伝達され、制御軸13が回動するから、前記3つのモータ角度検出センサ211U,211V,211Wで検出されるロータの電気角を、前記ギア列18におけるギア比に基づいて、制御軸13の角度に変換することができる。
例えば、制御軸13の角度を増大させる方向である正転方向にモータ17を駆動する場合には、図12に示すように、パルス信号Su,Sv,Swの立ち上がり・立ち下り毎に、モータ角度分解能を制御軸13の角度に換算した分だけ、制御軸角度CSA2を増大させることで、制御軸角度CSA2の角度の増大変化が検出されることになる。
また、制御軸13の角度を減少させる方向である逆転方向にモータ17を駆動する場合には、図13に示すように、パルス信号Su,Sv,Swの立ち上がり・立ち下り毎に、モータ角度分解能を制御軸13の角度に換算した分だけ、制御軸角度CSA2を減少させることで、制御軸角度CSA2の角度の減少変化が検出されることになる。
尚、本実施形態では、制御軸13の角度の増大方向が、バルブリフト量の増大方向であるものとする。
また、角度センサ202は、ポテンショメータに限定されるものではなく、制御軸13の角度位置に応じたレベルの出力を発生するセンサであればよく、例えば、特開2005−273650号公報に開示されるように、ギャップセンサの出力が、制御軸13の角度に応じて連続的に変化するように構成したセンサを用いることができる。
更に、ブラシレスモータ(BLM)17を、3相モータに限定するものではなく、従って、モータ角度検出センサ(電気角検出手段)の数・配置を上記の構成に限定するものでもない。
以下では、前記角度センサ202及びモータ角度検出センサ211U,211V,211Wの出力パルスに基づく制御軸13の角度検出、及び、前記モータ17の駆動制御を詳細に説明する。
図14のフローチャートは、本実施形態における制御軸13の角度検出及びモータ17の駆動制御の流れを示す。
まず、ステップS401でイグニッションスイッチ205がオンされると、ステップS402では、モータ角度検出センサ211U,211V,211Wの出力に基づいて制御軸角度CSA2を求めるための基準位置(基準角度)を学習する。
前記基準位置の学習は、前記モータ角度検出センサ211U,211V,211Wの出力に基づく制御軸角度CSA2の検出における初期位置を、前記角度センサ202の検出結果に基づいて検出して記憶する処理を示す。
前記モータ角度検出センサ211U,211V,211Wの出力からは、図12及び図13に示したように、モータ17のロータの角度、引いては、制御軸13の角度の変化分を検出することができるものの、ロータ(制御軸13)の絶対角を検出することはできない。
換言すれば、制御軸13の絶対角が判明している位置(基準位置)からの角度変化を、モータ角度検出センサ211U,211V,211Wの出力から検出することで、前記基準位置を初期値として制御軸13の角度を検出できる。
そこで、イグニッションスイッチ205がオンされると、制御軸13の角度を変更する前に、そのときの角度センサ202の出力(出力電圧VAS)から検出した制御軸13の角度を、即ち、機関101の停止中に制御軸13が保持していた角度を前記基準位置として学習する。
前記基準位置が学習されると、前記モータ角度検出センサ211U,211V,211Wの出力から検出されるロータの角度の変化分をギア比で補正して制御軸13の角度の変化分に変換し、係る角度変化分の積算値を前記基準位置(基準角度)に加算することで、そのときの制御軸13の角度CSA2を求めることができる。
制御軸角度CSA2=Σ(ロータ角度変化×ギア比)+基準位置
前述のように、前記モータ角度検出センサ211U,211V,211Wの出力からロータの正転と逆転とを区別できるので、例えば、正転方向への角度変化分をプラスとし、逆転方向への角度変化分をマイナスとすることで、正転方向にロータが回転すれば制御軸角度CSA2は増大変化し、逆転方向にロータが回転すれば制御軸角度CSA2は減少変化し、前記制御軸角度CSA2はそのときの制御軸13の角度を示すことになる。
上記の制御軸角度CSA2の演算機能が、本実施形態における回転位置検出手段に相当する。
図15は前記基準位置からの制御軸13の角度の増大変化を、前記モータ角度検出センサ211U,211V,211Wの出力に基づいて検出した例を示し、基準位置からの制御軸13の角度変化が、モータ角度検出センサ211U,211V,211Wによる角度検出の最小分解能に基づき検出される。
本実施形態では、前記モータ角度検出センサ211U,211V,211Wの出力から検出されるロータの角度変化に基づく制御軸13の角度検出値を制御軸角度CSA2とし、前記角度センサ202の出力(出力電圧VAS)に基づく制御軸13の角度検出値を制御軸角度CSA1として、両者を区別するものとする。
尚、イグニッションスイッチ205がオンされた時点における制御軸13の角度は、例えば、バルブリフトの最小値又は最大値を定めるストッパに突き当たっている状態であっても良いし、最小バルブリフト側のストッパと最大バルブリフト側のストッパとで挟まれる領域の中間位置であっても良い。
更に、イグニッションスイッチ205がオンされたときに、制御軸13を予め定めた初期位置(好ましくはストッパ位置)にまで回転させ、前記初期位置を前記基準位置として学習させることができる。
図16のフローチャートは、制御軸13を前述の初期位置に向けて駆動させて基準位置を学習させる場合の処理を示すものである。
まず、ステップS501でイグニッションスイッチ205がオンされると、次のステップS502では、予め記憶されている初期位置に向けて制御軸13を回転させるように、前記角度センサ202の出力電圧VASから検出される実際の角度(制御軸角度CSA1)と、前記初期位置とに基づいて前記モータ17をフィードバック制御する。
尚、可変バルブリフト機構(VEL)113が、機関101の回転が停止している状態であっても制御軸13を回転させること(開弁特性の変更)が可能な機構であれば、イグニッションスイッチ205のオンから制御軸13を初期位置に向けて回転させる制御を開始させる。
一方、制御軸13を回転させること(開弁特性の変更)が、機関101の回転中である場合にのみ可能である場合には、機関101の始動開始を待って、前記初期角度位置に向けての駆動を開始させるものとする。
そして、ステップS503では、前記角度センサ202の出力電圧VASから検出される実際の角度(制御軸角度CSA1)と、前記初期位置との偏差の絶対値が所定値以下であるか否かを判断し、前記偏差の絶対値が所定値以下になると、ステップS504へ進み、そのときに角度センサ202の出力電圧VASから検出される実際の角度(制御軸角度CSA1)又は前記初期角度位置を前記基準位置とする学習を行い、制御軸角度CSA2の更新を開始させる。
前記所定値は、許容誤差に基づき設定される値であり、前記偏差の絶対値が所定値以下になった場合には、実際の角度位置が初期位置になっていると見なすことができるようにしてある。
ここで、前記初期位置として、制御軸13の回動範囲を規制するストッパ位置(最大リフト側ストッパ又は最小リフト側ストッパ)を設定することが好ましい。
図17は、制御軸13が最小リフト側ストッパに突き当たる位置を前記初期位置とした場合の角度変化を示し、イグニッションスイッチ205がオンされると、そのときの角度位置から最小リフト側ストッパに向けて(リフト量の減少方向に向けて)制御軸13を徐々に回転させ、最小リフト側ストッパに突き当たって角度センサ202の出力電圧VASから検出される実際の角度(制御軸角度CSA1)が最小リフト側ストッパの位置に対応する値になると、最小リフト側ストッパの位置を基準位置とし、該基準位置から、前記モータ角度検出センサ211U,211V,211Wの出力から検出されるロータの角度変化分だけ変化しているものとして、そのときの制御軸角度CSA2を求めるようにする。
尚、制御軸13を最小リフト側ストッパの位置に突き当てた状態での角度センサ202の出力電圧VASを、最小リフト側ストッパの位置での基準出力として学習し、該基準出力に基づいて角度センサ202の出力電圧VASに基づく制御軸角度CSA1の検出を行わせることができ、これにより角度センサ202の取り付け角度のばらつきなどによる出力のオフセット分を補正することができる。
前記最小リフト側ストッパの位置での角度センサ202の出力電圧VASを学習させる場合には、リフト量の減少方向に向けて制御軸13を徐々に回転させ、角度センサ202の出力電圧VASが略変化しなくなった状態での角度センサ202の出力電圧VASを、最小リフト側ストッパ位置相当の出力として学習させることができる。
また、前記初期位置として、角度センサ202の出力電圧VASの温度条件によるばらつきが最小となる角度を設定することができる。
ポテンショメータからなる角度センサ202では、例えば図18に示すように、ある角度を境に温度の影響による出力変化の傾向が切り換り、出力変化の傾向が切り換る境界付近では、温度が変化しても角度センサ202の出力電圧VASが大きく変化しない特性を示す場合がある。
角度センサ202の出力電圧VASが温度による影響を受け難い角度であれば、その角度に向けて制御軸13を回動させるべく角度センサ202の出力電圧VASに基づいてモータ17をフィードバック制御すれば、そのときの温度条件に大きく影響されることなく、高精度に制御軸13の角度を一定の角度位置にフィードバック制御でき、前記モータ角度検出センサ211U,211V,211Wの出力に基づく角度検出の基準を高精度に設定できることになる。
尚、角度センサ202の出力電圧VASが温度による影響を受け難い角度位置は、予め実験又はシミュレーションに基づいて求めて記憶させておく。
図19は、初期位置を、角度センサ202の出力電圧VASが温度による影響を受け難い角度とする場合に設定した場合の角度変化を示す。
イグニッションスイッチ205がオンされると、そのときの角度位置から、角度センサ202の出力電圧VASが温度による影響を受け難い角度として予め記憶された角度(図18に示す例では、45deg)に向けて制御軸13を徐々に回転させる。
そして、角度センサ202の出力電圧VASから検出される実際の角度(制御軸角度CSA1)が初期位置に対応する値になると、そのときの制御軸角度CSA1(又は予め記憶した初期位置)を基準位置として定め、該基準位置から、前記モータ角度検出センサ211U,211V,211Wの出力から検出されるロータの角度変化分だけ変化しているものとして、そのときの制御軸角度CSA2を求めるようにする。
尚、前記初期位置として、ストッパ位置と、角度センサ202の出力電圧VASが温度による影響を受け難い角度位置とのいずれかを選択させることができ、選択基準としては、イグニッションスイッチ205がオンされた時点で角度センサ202により検出された角度により近い方の初期位置、即ち、初期位置までの角度変化が小さく早期に基準位置を求めることができる側を、目標とする初期位置として選択させることができる。
また、角度センサ202の出力電圧VASが温度による影響を受け難い角度位置が2点以上存在する場合に、これらの角度位置のうち、イグニッションスイッチ205がオンされた時点で角度センサ202により検出された角度により近い角度位置を、初期位置として選択させることができる。
図13のフローチャートのステップS402で、上記のようにして制御軸13の角度の基準位置を学習すると、次のステップS403では、アクセル開度ACC、機関回転速度NEなどの各種検出情報を取得する。
ステップS404では、可変バルブリフト機構(VEL)113の制御軸13の目標角度(目標制御軸角度)を設定する。
具体的には、図20に示すように、まず、そのときの機関回転速度NEとアクセル開度ACCとから目標トルクを設定し、次いで、前記目標トルクと機関回転速度NEとから、吸気バルブ105の目標バルブリフト量(目標バルブ作動角)に相当する制御軸13の目標角度である目標制御軸角度を設定する。
ステップS405では、前記目標制御軸角度と、前記モータ角度検出センサ211U,211V,211Wの出力から検出される制御軸角度CSA2との偏差(エラー)VELERに基づく比例・積分・微分処理によって、モータ17の指令トルクを算出する。
具体的には、下式に従って前記指令トルクを算出する。
尚、数1において、Pは比例ゲイン、Iは積分ゲイン、Dは微分ゲインであり、予め実機若しくはモデルを用いて適合された値を記憶しておいて用いる。
ステップS406では、前記指令トルクに基づいてモータ17の3相(U相、V相、W相)の電圧Vu、Vv、Vwを決定する。
前記指令トルクに基づく3相電圧Vu、Vv、Vwの決定は、図21のブロック図に示す構成によって行われる。
図21において、角度・角速度演算部601では、前記モータ角度検出センサ211U,211V,211Wの出力を入力し、ロータの角度及び角速度を算出する。
3相−2相変換器602では、3相電流の検出値を、そのときのロータ角度に基づいて2軸の回転座標系(d−q座標系)の電流Id,Iqに変換する。
また、ベクトル制御部603には、指令トルクをトルク定数Ktで除算して得られる目標電流と、前記角度・角速度演算部601で算出された角速度と、前記3相−2相変換器602で求めた電流Id,Iqとが入力され、前記目標電流及び電気角・角速度に基づいてd−q座標系におけるd軸電流指令値Idref及びq軸電流指令値Iqrefを算出する。
そして、指令電流Idref及びq軸電流指令値Iqrefと算出電流Iq,Idを比較してフィードバックし、指令電圧Vq,Vdを算出する。
2相−3相変換器604では、前記指令電圧Vq,Vdを3相電圧Vu、Vv、Vwに変換して出力する。
上記構成によって3相電圧Vu、Vv、Vwを求めると、ステップS407では、前記3相電圧Vu、Vv、Vwを駆動回路212に出力して、モータ17を駆動させる。
次のステップS408では、イグニッションスイッチ205がオフされたか否かを判断し、イグニッションスイッチ205がオフされるまで(内燃機関101が停止されるまで)は、ステップS403〜ステップS407の処理を繰り返し、可変バルブリフト機構(VEL)113によって吸気バルブ(機関バルブ)105のバルブリフト量をそのときの運転条件に応じた目標値に制御する。
但し、可変バルブリフト機構(VEL)113によってバルブリフト量を可変とする機関バルブは排気バルブであっても良いし、モータによって制御軸の角度を変更することで機関バルブの開弁特性を変更する可変動弁機構であれば、バルブリフト量を可変とする可変バルブリフト機構でなくても良い。
イグニッションスイッチ205がオフされると(内燃機関101が停止されると)、ステップS409へ進む。
ステップS409では、角度センサ202に基づく制御軸角度CSA1の検出における基準位置の学習を行う。
前記制御軸角度CSA1の検出における基準位置の学習においては、制御軸13をストッパ位置に押し付けるようにモータ17を駆動し、制御軸13がストッパに押し付けられ、制御軸13の回動が停止した状態での角度センサ202の出力電圧VASを、ストッパ位置でのセンサ出力として学習し、次回イグニッションスイッチ205がオンされたときに、前記学習したストッパ位置での出力を基準に、角度センサ202の出力電圧VASから制御軸角度CSA1を検出するようにする。
例えば、前記ストッパ位置でのセンサ出力が初期値から増大変化している場合には、センサ出力を制御軸13の角度データに変換するときに、前記増大変化分だけセンサ出力を減少補正し、該補正後のセンサ出力を角度データに変換することで、角度センサ202の出力オフセットに対する補正を行う。
ところで、モータ角度検出センサ211U,211V,211Wの出力に基づく制御軸角度CSA2の検出においては、モータ角度検出センサ211U,211V,211Wからのパルス信号にノイズが重畳したり、パルスの歯抜けが発生したりすると、制御軸角度CSA2の検出精度が大きく悪化してしまう。
そこで、前記ノイズ・歯抜けの対策を実施することが好ましく、以下では、前記ノイズ・歯抜けの対策を示す。
図22のフローチャートは、前記ノイズ・歯抜け対策の概略を示し、ステップS701では、モータ17の回転速度が所定速度以下であるか否かを判断し、モータ17の回転速度が所定速度以下であれば、ステップS702へ進み、モータ17の回転速度が所定速度以下の低回転域に適合されているノイズ・歯抜け対策を実施し、モータ17の回転速度が所定速度を超えていれば、ステップS703へ進み、モータ17の回転速度が所定速度を超える高回転域に適合されているノイズ・歯抜け対策を実施する。
即ち、前記所定速度は、ノイズ・歯抜けの対策の選択に最適な値として予め適合されている。
ここで、前記ステップS702及びステップS703におけるノイズ・歯抜けの対策を説明する。
前記図12及び図13に示したように、3個のモータ角度検出センサ211U,211V,211Wから出力されるパルス信号は、前述のように相互に位相がずれており、例えば、図12に示す正転時であれば、各パルス信号の立ち上がり・立ち下がりは、モータ角度検出センサ211Vの出力パルスSvの立ち上がり→モータ角度検出センサ211Uの出力パルスSuの立ち下がり→モータ角度検出センサ211Wの出力パルスSwの立ち上がり→モータ角度検出センサ211Vの出力パルスSvの立ち下がり→モータ角度検出センサ211Uの出力パルスSuの立ち上がり→モータ角度検出センサ211Wの出力パルスSwの立ち上がりの順を繰り返す。
また、図13に示す逆転時であれば、各パルス信号の立ち上がり・立ち下がりは、モータ角度検出センサ211Uの出力パルスSuの立ち上がり→モータ角度検出センサ211Vの出力パルスSvの立ち下がり→モータ角度検出センサ211Wの出力パルスSwの立ち上がり→モータ角度検出センサ211Uの出力パルスSuの立ち下がり→モータ角度検出センサ211Vの出力パルスSvの立ち上がり→モータ角度検出センサ211Wの出力パルスSwの立ち下がりの順となる。
従って、3個のモータ角度検出センサ211U,211V,211Wからのパルス信号のいずれかについて立ち上がり又は立ち下がりを検出した時点で、次に立ち上がり又は立ち下がりを示すモータ角度検出センサ211U,211V,211Wを予測することができ、該予測と異なる結果となった場合(基準のパターンでの立ち上がり・立ち下がりの繰り返しとは異なるパターンで立ち上がり・立ち下がりが発生した場合)には、ノイズの重畳又はパルスの歯抜けの発生を判定することができる。
上記ノイズの重畳又はパルスの抜けの判定方法は、モータ回転速度とは無関係に実施できる方法であり、図22のフローチャートに従って、回転領域を判別する場合であっても双方で実施できる。
また、前記3個のモータ角度検出センサ211U,211V,211Wからのパルス信号のいずれかについて立ち上がり又は立ち下がりを検出した時点から、次に立ち上がり又は立ち下がりを検出するまでの角度は一定である。
従って、前記立ち上がり又は立ち下がりから次の立ち下がり又は立ち上がりまでの時間間隔ΔTを逐次計測し、前記時間Δと一定値である立ち上がり・立ち下がり周期の角度とからモータ17の角速度を演算することができ、この角速度の前回値と今回値とが、通常の角速度変化時とは大きく異なる急激な変化を示した場合には、ノイズの重畳又はパルスの歯抜けの発生を判定することができる。
図23は、パルスの歯抜けが発生した場合の前記時間間隔ΔTの変化を示し、パルスの歯抜けが発生すると、立ち上がり又は立ち下がりから次の立ち下がり又は立ち上がりまでの角度が一時的に大きくなることから、前記時間間隔ΔTがステップ的に大きくなり、また、時間間隔ΔTに基づいて算出される角速度は、立ち上がり・立ち下がりの角度周期が一定であるとの前提で演算されるので、前記時間ΔTがステップ的に大きくなることで、角速度の算出結果がステップ的に低下し、パルスの歯抜けによって立ち上がり・立ち下がり周期が長くなった部分での角速度は、抜けの発生していない場合に比べて半分程度に落ち込むことになる。
逆に、正規の立ち上がり・立ち下がり前にノイズの重畳による立ち上がり・立ち下がりが発生すると、前記時間間隔ΔTがステップ的に小さくなり、また、時間間隔ΔTに基づいて算出される角速度は、立ち上がり・立ち下がりの角度周期が一定であるとの前提で演算されるので、前記時間間隔ΔTがステップ的に小さくなることで、角速度の算出結果がステップ的に増大することになる。
従って、前記時間間隔ΔT又は該時間間隔ΔTに基づく角速度の算出結果の前回値と今回値とを比較することで、より具体的には、前回値と今回値との比と閾値とを比較することで、ノイズの重畳又はパルスの歯抜けを判定できる。
尚、前記時間間隔ΔTに基づいて算出される角速度のデータは、前述のように、モータ17のベクトル制御において用いられる情報であるので、ベクトル制御用に算出された結果を流用することができる。
但し、低回転時には、パルス信号の立ち上がり・立ち下がりの時間周期が長くなるために、前記時間間隔ΔT又は該時間間隔ΔTに基づく角速度の算出結果は、モータ角速度を正確に表さず、前述のような前回値と今回値との比較に基づくノイズの重畳又はパルスの抜けの判定を精度良く行わせることができない。
このため、前述のような角速度の前回値と今回値との比較に基づくノイズの重畳又はパルスの歯抜けの判定は、高回転域で行わせることが好ましく、低回転域では、前述の立ち上がり・立ち下り順のパターンに基づくノイズの重畳又はパルスの歯抜けの判定に加えて、以下の判定を実施する。
モータ角度検出センサ211U,211V,211Wからのパルス信号にノイズが重畳していない場合には、制御軸角度CSA2は、前記パルス信号の立ち上がり・立ち下り周期毎に分解能角度分だけ増大することになり、換言すれば、前記パルス信号の立ち上がり・立ち下りの1周期は、モータ17のロータが分解能に相当する角度だけ回転したことを示す。
これに対し、図24に示すように、モータ角度検出センサ211U,211V,211Wからのパルス信号の立ち上がり・立ち下り周期の間にノイズが重畳すると、正規の立ち上がり・立ち下りからノイズ発生位置までの角度は、前記分解能角度よりも小さくなる。
一方、パルスの抜けが発生すると、モータ角度検出センサ211U,211V,211Wからのパルス信号の立ち上がり・立ち下りの角度周期が長くなり、前記分解能角度を超えることになる。
そこで、前回のパルス信号の立ち上がり又は立ち下り時から、今回の立ち上がり又は立ち下りまでの角度変化を、角度センサ202による検出角度の変化分として検出し、前記角度変化と前記分解能角度とを比較することで、ノイズの重畳又はパルスの抜けを判定できる。
具体的には、前回のパルス信号の立ち上がり又は立ち下り時における角度センサ202による検出角度と、今回の立ち上がり又は立ち下り時における角度センサ202による検出角度との差から、立ち上がり・立ち下り周期の角度を求め、この角度と、分解能角度との偏差(図24の角度偏差A)の絶対値を演算する。
そして、前記偏差の絶対値が所定値以上である場合、即ち、立ち上がり・立ち下り周期の角度が本来の分解能角度よりも所定以上に小さいか又は大きい場合には、ノイズの重畳又はパルスの歯抜けが発生していると判定する。
従って、前記偏差の絶対値と比較させる所定値は、角度センサ202による角度周期の計測誤差を超えるノイズの重畳又はパルスの歯抜けによる角度周期の変化を判定できるように予め適合される。
上記のようにして、ノイズの重畳又はパルスの歯抜けの発生が判定された場合には、制御軸角度CSA2が大きな誤差を含んでいることを示すので、制御軸角度CSA2に代えて、角度センサ202により検出される制御軸角度CSA1に基づいてモータ17を制御させるように切り換えたり、ノイズの重畳と判定された立ち上がり又は立ち下がりタイミングでの制御軸角度CSA2の更新を停止させたり、パルスの歯抜けが判定された場合に、歯抜け分だけ余分に制御軸角度CSA2を更新させたりすることができる。
ところで、モータ角度検出センサ211U,211V,211Wに基づく制御軸13の角度検出(制御軸角度CSA2)は、パルス信号の立ち上がり又は立ち下りから次の立ち下がり又は立ち上がりまでを1単位(分解能)として行われるから、基準位置から制御軸13が回転し始めて最初にパルス信号の立ち上がり・立ち下りが検出されるまでの間の分解能以下の角度変化を検出することができず、最大で分解能角度に相当する誤差を生じることになってしまう。
例えば、最初にパルス信号の立ち上がり・立ち下りが検出された時点で、基準位置から分解能角度分だけ制御軸13が回転していると仮定すると、基準位置が最初の立ち上がり・立ち下りの直前であった場合に、分解能角度分に近い誤差を生じることになり、また、最初にパルス信号の立ち上がり・立ち下りが検出された時点で制御軸角度CSA2を更新しないと、基準位置がパルス信号の立ち上がり・立ち下り位置の直後であった場合に、最大で分解能角度分に近い検出誤差を生じることになる。
上記誤差の発生に対する対策として、図25のフローチャート及び図26のタイムチャートに示す処理を施す。
図25のフローチャートにおいて、ステップS801では、モータ角度検出センサ211U,211V,211Wからのパルス信号の最初の立ち上がり又は立ち下りを検出済みであるか否かを判断する。
そして、最初の立ち上がり又は立ち下りを検出しておらず、モータ17の動作開始から最初の立ち上がり又は立ち下りを検出する前の状態である場合には、ステップS803へ進み、モータ17制御に用いる制御軸13の検出角度として、角度センサ202の検出結果である制御軸角度CSA1を用いるように設定する。
一方、ステップS801で、最初の立ち上がり又は立ち下りを検出した後であると判別された場合には、ステップS802へ進み、モータ角度検出センサ211U,211V,211Wからのパルス信号の立ち上がり又は立ち下り毎に分解能角度分だけ増減される制御軸角度CSA2に基づいてモータ17を制御させる設定に切り替える。
ステップS802に最初に進んだ場合、即ち、最初の立ち上がり又は立ち下りを検出した時点では、そのときの角度センサ202の検出結果である制御軸角度CSA1の値を、制御軸角度CSA2の基準位置(初期値)に設定し、その後、立ち上がり又は立ち下りが検出される毎に、分解能と回転方向とから判断される角度ステップ変化分を積算して、該積算値だけ前記基準位置から変化したものとして制御軸角度CSA2を更新する。
図26は、図25のフローチャートに従ってモータ17の制御に用いる制御軸角度を切り替える場合の特性を示し、モータ17の動作開始からパルス信号の最初の立ち上がり又は立ち下りを検出するまでは、角度センサ202の検出結果である制御軸角度CSA1を用いてモータを制御し、最初の立ち上がり又は立ち下りを検出すると、そのときの制御軸角度CSA1を初期値として、その後立ち上がり又は立ち下りが検出される毎に制御軸角度CSA2を分解能分だけ更新させるようにして、制御軸角度CSA2に基づいてモータ17を制御させる。
次に、角度センサ202の出力から制御軸角度CSA1を求める手法について詳述する。
前記角度センサ202は、図27に示すように、基本的な特性としては、制御軸13の角度の増大に対してリニアに出力電圧VASが増大するため、図27に示すような特性の変換テーブルを参照して、そのときの出力電圧に対応する制御軸角度CSA1を求めることができる。
但し、角度センサ202の組み付けばらつきなどによって、実際の制御軸13の角度に対する出力電圧がシフトしてしまい、角度センサ202の出力電圧をそのまま図27の変換テーブルに基づいて制御軸角度CSA1に変換すると、前記出力電圧VASのシフト分だけ誤差を生じることになる。
そこで、例えば、最小リフト側のストッパに制御軸13を押し付けた状態での角度センサ202の出力電圧VASを求め、図27に示す変換テーブルにおける最小リフト側のストッパ位置での出力電圧と、実際に最小リフト側のストッパ位置で出力された電圧との偏差から、出力電圧の補正値を設定し、該補正値で補正した後の出力電圧を図27の変換テーブルで制御軸角度CSA1に変換させるか、又は、前記偏差に基づいて前記変換テーブルにおける制御軸角度CSA1の値を一律に補正して変換特性を補正するようにする。
また、ポテンショメータからなる角度センサ202は、温度条件で出力特性が変化し、例えば図18に示すように、実際の角度と角度センサ202の出力電圧との相関がリニアな特性からずれてしまう場合がある。
図18に示した特性例では、制御軸13の角度が閾値を下回る領域では、角度センサ202の出力電圧が設計値よりも低下し、制御軸13の角度が前記閾値を上回る領域では、角度センサ202の出力電圧が設計値よりも増大し、前記閾値に対応するセンサ出力が温度条件に関わらず略一定で、前記閾値を下回る領域及び上回る領域でのセンサ出力のずれ代は、温度に応じて変化する。
そこで、前述のセンサ出力の低下・増大変化に対応する基本の補正値(基準温度条件に対応する補正値)、即ち、図28に示すように、前記閾値に対応するセンサ出力を下回る低出力領域ではセンサ出力を増大補正し、前記閾値に対応するセンサ出力を上回る高出力領域ではセンサ出力を減少補正する補正値を、センサ出力(出力電圧)毎に予め記憶させておく。
そして、基準温度と異なる温度条件による補正要求レベルの変化に対しては、図28のテーブルから求めた補正値を、そのときの温度条件に応じて設定されるゲインkで補正することで対応し、ゲインkで補正した補正値(=補正値×k)をセンサ出力電圧VASに加算し、該加算結果を出力電圧値OVASとして出力させ、前記出力電圧値OVASを制御軸角度CSA1に変換させるようにする。
尚、前記ゲインkは、基準温度条件で1に設定されることになる。また、前記ゲインkによる補正に代えて、図28に示したような補正値テーブルを複数の温度条件毎に複数記憶し、そのときの温度に対応する補正値を補間演算で求めるようにすることができる。
出力電圧値OVAS=センサ出力電圧VAS+(図28から求めた補正値)*k
即ち、センサ出力電圧VASを出力電圧値OVASに変換する処理は、センサ出力電圧VASを、制御軸13の角度変化に比例する値に変換する処理(以下では、リニアライズ処理ともいう)であり、図29に示すような変換テーブルを用いて行わせることもできる。
前記出力電圧値OVASは、温度影響による出力特性の変化がキャンセルされ、制御軸13の角度変化に比例する変化を示す値となるから、温度影響を受けないポイントでの電圧及び角度を、例えば図18に示すように2.5V及び45degとし、最小リフト側のストッパ位置でのセンサ出力電圧を学習値とすると、前記補正後のセンサ出力に基づく制御軸角度CSA1の算出は、下式に従って行える。
制御軸角度CSA1=(出力電圧値OVAS−学習値)×45/(2.5−学習値)
上式で、45/(2.5−学習値)は、角度センサ202の単位出力当たりの角度変化を示し、これに「出力電圧値OVAS−学習値」、即ち、最小リフト側のストッパ位置からの出力の変化量を乗算すれば、最小リフト側のストッパ位置からの制御軸13の角度変化量が求められることになる。
尚、角度センサ202の温度は、角度センサ202に設けた温度センサで検出させることができる他、内燃機関101の温度(冷却水温度・潤滑油温度)やエンジンルーム内の温度などで代表させることができる。
また、角度センサ202の温度条件による制御軸角度CSA1の検出誤差を補正する方法としては、モータ角度検出センサ211U,211V,211Wの出力パルスによる制御軸角度CSA2を用いる方法があり、係る補正方法を図30のフローチャートに従って説明する。
但し、図30のフローチャートに示す補正方法は、温度による制御軸角度CSA1の検出誤差が、モータ17の駆動力を制御軸13に伝達するギア列18のギア比のばらつきによる制御軸角度CSA2の検出誤差よりも大きい場合に適用されるものとする。
図30のフローチャートにおいて、ステップS901では、角度センサ202の出力に基づいて制御軸角度CSA1を算出する。
ここで、前記制御軸角度CSA1の算出は、記述したように、角度センサ202の出力電圧VASをリニアライズ処理によって出力電圧値OVASに変換し、該出力電圧値OVASに基づく「制御軸角度CSA1=(出力電圧値−学習値)×45/(2.5−学習値)」なる演算(又は変換テーブルによる変換)に基づいて行われるが、温度条件によって最小リフト側のストッパ位置での出力(学習値)が異なる場合には、制御軸角度CSA1の算出精度が低下してしまう。
そこで、前記学習値を、学習時の角度センサ202の温度条件に応じて補正し、補正後の学習値を用いて制御軸角度CSA1の算出させることが好ましい。
次のステップS902では、モータ角度検出センサ211U,211V,211Wの出力パルスの立ち上がり又は立ち下がりタイミング(切り替り発生タイミング)であるか否かを判断する。
そして、出力パルスの立ち上がり又は立ち下がりタイミング(切り替り発生タイミング)であれば、ステップS903へ進み、制御軸角度CSA2を、出力パルスの立ち上がり・立ち下がり周期分(分解能)だけ変化させて更新する。
ステップS904では、ステップS901で算出した制御軸角度CSA1と、ステップS903で算出した制御軸角度CSA2との偏差の絶対値が所定値(1)以上であるか否かを判断する。
前記偏差の絶対値が前記所定値(1)以上である場合には、モータ角度検出センサ211U,211V,211Wの出力パルスの歯抜けや前記出力パルスに対するノイズの重畳などによって、温度によるばらつきを超える偏差が生じたものと判断し、補正処理を行わずに本ルーチンを終了させる。
例えば、図31に示すように、モータ角度検出センサ211U,211V,211Wからのパルスに歯抜けやノイズの重畳が発生すると、角度の分解能分だけ制御軸角度CSA2に誤差が生じ、その結果、ステップS901で算出した制御軸角度CSA1と、ステップS903で算出した制御軸角度CSA2との偏差の絶対値が大きくなるが、この場合、制御軸角度CSA2が誤差を有するので、制御軸角度CSA2を基準に制御軸角度CSA1を補正することはできない。
そこで、ステップS904で前記偏差の絶対値が前記所定値(1)以上であると判断された場合には、制御軸角度CSA1を補正することなく、本ルーチンを終了させる。
即ち、前記所定値(1)は、モータ角度検出センサ211U,211V,211Wからのパルスによる角度分解能(検出角度の最小単位)から温度ばらつきの影響分を減算した値であり、温度ばらつきだけでは前記偏差の絶対値が超えることがなく、モータ角度検出センサ211U,211V,211Wからのパルスに歯抜けやノイズの重畳があった場合に初めて超える値に設定される。
一方、ステップS904で、前記偏差の絶対値が前記所定値(1)未満であると判断された場合には、モータ角度検出センサ211U,211V,211Wからのパルスに歯抜けやノイズの重畳がなく、前記偏差は温度ばらつきの影響を受けて発生しているものと判断して、ステップS905へ進む。
ステップS905では、前記偏差の絶対値が前記所定値(2)以上であるか否かを判断する。
ここで、前記所定値(2)は、前記所定値(1)よりも小さい値であって、許容誤差に基づき補正処理が必要か否かを区別できるような値に適合されている。
ステップS905で、前記偏差の絶対値が前記所定値(2)未満であると判断された場合には、補正処理は不要と判断し、そのまま本ルーチンを終了させる。
一方、図32に示すように、前記偏差の絶対値が前記所定値(2)以上であると判断された場合には、補正処理が必要と判断し、ステップS906へ進む。
ステップS906では、角度センサ202の出力電圧VASを出力電圧値OVASに変換する変換テーブル(リニアライズテーブル)の補正、即ち、変換テーブル(リニアライズテーブル)を、温度による角度センサ202の出力特性の変化に対応させる変更を行う。
具体的には、角度センサ202の出力電圧VASの上昇時に、図33に示すように、リニアライズテーブルの出力電圧VASの格子軸(1)と格子軸(2)との間で、前記偏差の絶対値が前記所定値(2)以上であると判断された場合には、格子軸(1)での出力電圧値OVASをOVAS(1)、格子軸(2)での出力電圧OVASをOVAS(2)としたときに、格子軸(2)に対応する出力電圧OVAS(2)を、下式で算出される出力電圧値OVAS(2)’に置き換える。
OVAS(2)’=(OVAS(2)−OVAS(1))×B/A×a+OVAS(1)
ここで、Bは、前記偏差を求めたときの制御軸角度CSA2に対応する出力電圧値OVASの出力電圧OVAS(1)からの増大分であり、Aは、補正前のリニアライズテーブルで、前記偏差の絶対値が前記所定値(2)以上であると判断されたときのセンサ電圧OVASに対応する出力電圧OVASの出力電圧OVAS(1)からの増大分である。
更に、aは重み係数であり、B>AのときにはA/B≦a≦1に設定され、B≦Aのときには1≦a≦A/Bに設定される。
一方、角度センサ202の出力電圧VASの下降時に、図34に示すように、リニアライズテーブルの出力電圧VASの格子軸(1)と格子軸(2)との間で、前記偏差の絶対値が前記所定値(2)以上であると判断された場合には、格子軸(1)での出力電圧値OVASをOVAS(4)、格子軸(2)での出力電圧OVASをOVAS(3)としたときに、格子軸(1)に対応する出力電圧OVAS(4)を、下式で算出される出力電圧値OVAS(4)’に置き換える。
OVAS(4)’=OVAS(3)−(OVAS(3)−OVAS(4))×B/A×a
ここで、Bは、前記偏差を求めたときの制御軸角度CSA2に対応する出力電圧値OVASの出力電圧OVAS(3)からの減少分であり、Aは、補正前のリニアライズテーブルで、前記偏差の絶対値が前記所定値(2)以上であると判断されたときのセンサ電圧OVASに対応する出力電圧OVASの出力電圧OVAS(3)からの減少分である。
更に、aは重み係数であり、B>AのときにはA/B≦a≦1に設定され、B≦Aのときには1≦a≦A/Bに設定される。
上記のようにして、角度センサ202の出力電圧VASを出力電圧値OVASに変換する変換テーブル(リニアライズテーブル)を学習すれば、そのとき温度条件によって出力電圧VASにばらつきが生じても、ばらつき分を補正する変換を行わせることができるようになり、制御軸角度CSA1の検出精度を維持できる。
前述のように、本実施形態では、前記制御軸角度CSA2を用いてモータ17を制御させるが、この場合、モータ角度検出センサ211U,211V,211Wからのパルスの立ち上がり・立ち下がり周期の間は、制御軸角度CSA2が一定値を保持し、その間におけるモータ17の制御精度が低下する。
そこで、モータ角度検出センサ211U,211V,211Wからのパルスの立ち上がり・立ち下がりタイミングでは、制御軸角度CSA2に基づいてモータ制御を行わせる一方、立ち上がり・立ち下がり周期の間における制御軸13の回転角変化を、角度センサ202の出力変化から判断して補間し、該補間された制御軸角度Cに基づいてモータを制御させるようにすることができる。
係る構成にすれば、立ち上がり・立ち下がり周期の間も実際の制御軸角度に応じたモータ制御を行わせることができ、オーバーシュートの発生を抑制しつつ、応答良く目標角度に制御軸13を回動させることができる。
図35のフローチャートは、前記立ち上がり・立ち下がり周期の間(前回の立ち上がり又は立ち下がりから次の立ち下がり又は立ち上がりまでの間)で、制御軸角度CSA2の検出結果を、角度センサ202の出力で補間する制御を示す。
まず、ステップS1001では、モータ角度検出センサ211U,211V,211Wからのパルスの立ち上がり・立ち下がりタイミング(切り替り発生タイミング)であるか否かを判断し、立ち上がり・立ち下がりタイミングであれば、ステップS1002へ進み、立ち上がり又は立ち下がりに基づいて更新される制御軸角度CSA2の値を、モータ制御に用いる制御軸角度CSA3に設定する。
一方、ステップS1001で、モータ角度検出センサ211U,211V,211Wからのパルスの立ち上がり・立ち下がりタイミングではないと判断され、前回の立ち上がり又は立ち下がりから次の立ち下がり又は立ち上がりまでの間であるときには、ステップS1003へ進む。
ステップS1003では、前回のパルスの立ち上がり・立ち下がりタイミングでの制御軸角度CSA2の値に、前回のパルスの立ち上がり・立ち下がりタイミングから現時点までの間における角度センサ202の出力電圧の変化から求められる角度変化分を加算し、該加算結果をモータ制御に用いる制御軸角度Cに設定する。
制御軸角度C=制御軸角度CSA2の前回更新値+角度センサの出力変化分の角度
図36は、図35のフローチャートに示すルーチンを実行した場合における制御軸角度CSA2,CSA3の変化を示すタイムチャートである。
図36に示すように、制御軸角度CSA2は、パルスの立ち上がり・立ち下がりタイミング毎に分解能分だけ変化するが、係る制御軸角度CSA2に対し、前回の立ち上がり又は立ち下がりからの角度センサ202の出力変化分から求められる角度変化分を加算し、これを制御軸角度CSA3とする。
前記制御軸角度CSA3は、制御軸13の角度が連続して変化するときに、これに対応して連続して変化する特性となり、かつ、パルスの立ち上がり・立ち下がりタイミング毎に制御軸角度CSA2の値にリセットされるから、温度に影響される制御軸角度CSA1に比べて高い検出精度を維持できる。
従って、制御軸角度Cに基づいてモータを制御すれば、オーバーシュートの発生を抑制しつつ、応答良く目標角度に制御軸13を回動させることができる。
ここで、角度センサ202の温度による出力ばらつきが大きいと、前記制御軸角度CSA3を、パルスの立ち上がり・立ち下がりタイミング毎に制御軸角度CSA2の値にリセットするときに、制御軸角度Cがステップ的に変化し、モータ17制御が不安定になってしまう。
そこで、前記制御軸角度CSA3の設定処理のより好ましい実施形態を、図37のフローチャートに従って説明する。
まず、ステップS1101では、モータ17の回転速度が所定速度以下であるか否かを判断する。
そして、モータ17の回転速度が所定速度を超えている場合には、ステップS1105へ進んで、制御軸角度CSA2の値をそのまま制御軸角度CSA3に設定する。
即ち、ステップS1105に進んだ場合には、制御軸角度CSA3は、ステップ的に変化することになるが、モータ回転速度が速いため制御軸角度CSA3が更新される周期が短く、また、モータ回転速度が速い場合には、制御軸13の角度検出の精度要求が高くないため、制御軸角度CSA2の更新周期の間で、角度センサ202の出力変化に基づく補間を行う必要性が低い。
そこで、モータ17の回転速度が所定速度を超えている場合には、制御軸角度CSA2の値をそのまま制御軸角度CSA3に設定することで、演算負荷の低減を図る。
前記ステップS1101で用いる所定速度は、制御軸角度CSA2の値で充分な制御精度を確保できる回転速度領域の下限値として適合される。
一方、ステップS1101でモータ17の回転速度が所定速度以下であると判断された場合には、制御軸角度CSA2に基づいてモータ17を制御すると、更新周期が長くなることから、オーバーシュートが発生したり、応答が遅くなったりするため、角度センサ202の出力変化分に基づく補間を行わせるべく、ステップS1102へ進む。
ステップS1102では、パルスの立ち上がり・立ち下がりタイミング(切り替り発生タイミング)であるか否かを判断し、立ち上がり・立ち下がりタイミングでなく、前回の立ち上がり・立ち下がりタイミングから次の立ち上がり・立ち下がりタイミングまでの間であると判断すると、ステップS1104へ進む。
ステップS1104では、前回の立ち上がり・立ち下がりタイミングで更新した制御軸角度CSA2に、角度センサ202の出力変化から求めた角度変化分を加算して制御軸角度CSA3を求めるが、角度センサ202の温度による出力ばらつきを考慮して、制御軸角度CSA3を補正する。
具体的には、前記ステップS1003と同様に、前回のパルスの立ち上がり・立ち下がりタイミングでの制御軸角度CSA2の値に、前回のパルスの立ち上がり・立ち下がりタイミングから現時点までの間における角度センサ202の出力電圧の変化から求められる角度変化分を加算し、該加算結果をモータ制御に用いる制御軸角度CSA3に設定するが、前記角度センサ202の出力電圧の変化から求められる角度変化分を補正するための係数αを設定する。
CSA3=CSA2の前回更新値+角度センサ202の出力変化分角度×α
前記係数αは、パルスの立ち上がり・立ち下がりタイミング、即ち、制御軸角度CSA2の更新時における、角度センサ202の出力変化分から求められた前回更新時からの角度変化分A(図38参照)と、制御軸角度CSA2の分解能角度B(図38参照)との比B/Aを、重み係数aに基づき下式に従って加重平均した値である。
α=(1−a)×今回のB/A+a×前回のB/A
上記係数αを角度センサ202の出力変化分から求められる角度に乗算すれば、図38に示すように、角度センサ202の出力変化の傾きが温度ばらつきの影響で低下し、実際には、分解能角度B分だけ回転しているのに、角度センサ202の検出結果が分解能角度Bよりも低くなると、角度センサ202の出力変化分から求められる角度を増大補正して、分解能角度Bに近づけることになる。
従って、制御軸角度CSA2の更新時で、制御軸角度CSA3の値を制御軸角度CSA2の値にリセットするときに、リセット直前の制御軸角度CSA3の値が更新後の制御軸角度CSA2に近づき、制御軸角度CSA3がステップ的に変化することを抑制できる。
ステップS1102で、パルスの立ち上がり・立ち下がりタイミングであると判断されると、ステップS1103へ進む。
ステップS1103では、前記ステップS1002と同様に、立ち上がり又は立ち下がりに基づいて更新される制御軸角度CSA2の値を、モータ制御に用いる制御軸角度Cに設定する。
この場合、角度センサ202の温度影響による出力ばらつきが急激に変化した場合には、前記ステップS1104の補正を行っても、制御軸角度Cを制御軸角度CSA2の値にリセットするときに、ステップ的な変化になってしまう可能性がある。
そこで、前記ステップS1103でのより好ましい処理を以下に示す。
図39に示す例は、制御軸角度CSA2の更新タイミングにおいて、制御軸角度CSA2の値にリセットする直前の制御軸角度CSA3の値を、記憶値FCとして記憶しておき、この記憶値FCと、更新後の制御軸角度Cとで内分処理を行うものである。
前記内分処理は、内分比率増加量a(0≦a≦1)を用い、以下の式に従って行われる。
制御軸角度CSA3’=記憶値FC×(1−a)+制御軸角度CSA3×a
ここで、内分比率増加率aは、図39中に示すように、制御軸角度CSA2の更新タイミングにおいて0に設定され、その後所定時間で1となるように設定される。
前記所定時間は、制御軸角度CSA2の更新周期がモータ回転速度に応じて変化することに基づき、モータ回転速度に応じて可変に設定でき、更に、機関運転条件の違いによるバルブリフトの制御応答の要求などから設定させることができる。
制御軸角度CSA3’は、制御軸角度CSA2の更新タイミングでは、記憶値FCとなり、その後、徐々に制御軸角度CSA3に近づき、最終的に内分比率増加率aが1に戻った時点で制御軸角度CSA3=制御軸角度CSA3’となる。
従って、制御軸角度CSA2の更新タイミングにおいて、制御軸角度CSA3と制御軸角度CSA2との間に偏差があったとしても、制御軸角度CSA3’はステップ的に変化することが抑制され、制御軸角度CSA3’に基づいてモータ17の制御を安定して行わせることができる。
前記図39に示した内分処理は、モータ17の回転速度が低い領域で常時行わせても良いが、制御軸角度CSA2の更新タイミングにおける制御軸角度CSA3と制御軸角度CSA2との偏差が充分に小さい場合には、制御軸角度CSA3’を制御軸角度CSA2の値にステップ的に変化させても、モータ17制御の安定性を維持することが可能である。
そこで、図40に示すように、制御軸角度CSA2の更新タイミングにおける制御軸角度Cと制御軸角度CSA2との偏差を所定値と比較し、偏差が所定値未満であれば、制御軸角度CSA3を制御軸角度CSA2の値にステップ的に変化させ、偏差が前記所定値以上であれば、前記内分処理を実行させるようにする。
ここで、前記内分処理の実行を判断するために、偏差と比較される所定値は、前記偏差分だけステップ的に変化させた場合に、モータ17制御が不安定となって、機関性能に影響を与えるか否かを判別できるように予め適合され、機関運転条件によって要求されるモータ制御の安定度が異なる場合には、機関負荷・機関回転速度・機関温度などの機関運転条件に応じて可変に設定させることができる。
一方、角度センサ202の温度による出力ばらつきが小さい場合には、図41のフローチャートに示すようにして、制御軸角度CSA3を演算させることができる。
図41のフローチャートにおいて、ステップS1201では、モータ17の回転速度が所定速度以下であるか否かを判断する。
そして、モータ17の回転速度が所定速度を超えている場合には、ステップS1205へ進んで、制御軸角度CSA2の値をそのまま制御軸角度CSA3に設定する。
一方、ステップS1201でモータ17の回転速度が所定速度以下であると判断された場合には、ステップS1202へ進む。
ステップS1202では、パルスの立ち上がり・立ち下がりタイミング(切り替り発生タイミング)であるか否かを判断し、パルスの立ち上がり・立ち下がりタイミングであると判断されると、ステップS1203へ進む。
ステップS1203では、前記図39に基づいて説明した内分処理を行って求めた制御軸角度CSA3’に基づいてモータ17を制御させる。
一方、立ち上がり・立ち下がりタイミングでなく、前回の立ち上がり・立ち下がりタイミングから次の立ち上がり・立ち下がりタイミングまでの間であると判断すると、ステップS1204へ進む。
ステップS1204では、前記ステップS1003と同様に、前回のパルスの立ち上がり・立ち下がりタイミングでの制御軸角度CSA2の値に、前回のパルスの立ち上がり・立ち下がりタイミングから現時点までの間における角度センサ202の出力電圧の変化から求められる角度変化分を加算し、該加算結果をモータ制御に用いる制御軸角度CSA3に設定する。
CSA3=CSA2の前回更新値+角度センサの出力変化分角度
即ち、ステップS1204では、角度センサ202の温度による出力ばらつきが小さい場合には、制御軸角度CSA2の更新タイミングにおける制御軸角度CSA3と制御軸角度CSA2との偏差が充分に小さいと推定されるため、前記偏差を縮小するための補正を行わず、偏差が生じた場合には、前述の内分処理によって制御軸角度CSA3のステップ的な変化を抑制する。
但し、温度による角度センサ202の出力ばらつきは小さいものの、モータ17の回転駆動力を制御軸13に伝達するギア列18のギア比にばらつきがあると、前記モータ角度検出センサ211U,211V,211Wのパルス信号に基づき検出される制御軸角度CSA2は、前記ギア比が設計値であることを前提として算出されるから、制御軸角度CSA2に誤差を生じることになり、制御軸角度CSA2の更新タイミングにおいて、制御軸角度CSA2と制御軸角度CSA3との間に偏差を生じ、制御軸角度CSA3をステップ的に変化させることになり、かつ、制御軸13の角度位置の検出精度が低下することになる。
そこで、前記ギア列18のギア比のばらつきが大きい場合には、前記制御軸角度CSA2について、図42に示すようなギア比ばらつきに対する補正処理を実行することが好ましい。
図42に示す補正処理においては、制御軸角度CSA2の更新タイミングにおける制御軸角度CSA2と制御軸角度CSA3との間の偏差が、ギア比のばらつきによるものであると仮定する。
すると、前回の更新タイミングでの制御軸角度CSA2に対する今回の更新直前の制御軸角度CSA3の変化代Aと、前回の更新タイミングでの制御軸角度CSA2と今回更新した制御軸角度CSA2との偏差Bとの間には、以下の関係が成立することになる。
ギア比実値=A/B×ギア比設計値
A/B=ギア比実値/ギア比設計値
また、ギア比のばらつきは、図43に示すように、制御軸角度とは無関係に一定であり、前記A,Bを求めたときの制御軸角度に影響されない。
そこで、前記A/Bの値を、制御軸角度CSA2の更新タイミング毎に求め、下式に従って加重平均する。
ギア比実値/ギア比設計値=(1−a)×前回のA/B+a×今回のA/B
そして、ギア比のばらつき分を補正すべく、下式に従って制御軸角度CSA2を補正する。
CSA2’=((CSA2−基準位置)×(ギア比実値/ギア比設計値))+基準位置
上記のようにして、制御軸角度CSA2’を補正設定すれば、ギア比のばらつき分が補正され、制御軸角度CSA2の更新タイミングにおいて、制御軸角度CSA2と制御軸角度CSA3との間の偏差を充分に小さくすることができる。