(57)【要約】【課題】ブラシレスモータの回転速度に基づいて通電相の進角処理を行う制御装置において、誤った回転速度が検出されたときに生じやすい当該ブラシレスモータの出力トルク低下を好適に抑えることのできるブラシレスモータの制御装置を提供する【解決手段】位置センサからのパルス信号のエッジを計数したカウンタ値Ｐｉとブラシレスモータの実際の回転角に対応したカウンタ値である補正カウンタ値ＰＨとの差を、ずれ量ΔＰとして算出する（Ｓ３１０）。そして、今回算出されたずれ量ΔＰと前回算出されたずれ量ΔＰとが異なっている場合には（Ｓ３２０：ＹＥＳ）、所定期間内におけるカウンタ値Ｐｉの変化量に基づいて検出されるブラシレスモータの回転速度が誤っていると判断する。そして、この場合には、ブラシレスモータの回転速度に基づいて通電相の切り換え時期を早める進角処理の実行を禁止する（Ｓ３３０）。【選択図】図１５
2007185006.tif 000002
【特許請求の範囲】
【請求項１】
ブラシレスモータの回転時にあって複数の電気角センサから位相がずれた状態で出力されるパルス信号の出力パターンに基づき前記ブラシレスモータの通電相を切り換える切換手段と、前記ブラシレスモータの回転に伴って位置センサから出力されるパルス信号のエッジを計数したカウンタ値を算出するカウント手段と、前記カウンタ値に基づいて前記ブラシレスモータの回転角を検出するとともに、所定期間内における同カウンタ値の変化量に基づいて前記ブラシレスモータの回転速度を検出する速度検出手段と、その検出された回転速度に基づいて前記通電相の切り換え時期を早める進角処理を行う進角手段とを備えるブラシレスモータの制御装置において、
前記カウント手段によって算出されたカウンタ値と前記ブラシレスモータの実際の回転角に対応したカウンタ値とのずれ量を算出する算出手段と、
前記ずれ量が変化している場合には、前記進角処理の実行を禁止する禁止手段とを備える
ことを特徴とするブラシレスモータの制御装置。
【請求項２】
請求項１に記載のブラシレスモータの制御装置において、
前記位置センサは、前記各電気角センサから出力されるパルス信号のエッジ間隔よりも短いエッジ間隔のパルス信号を出力するものであって、
前記各電気角センサから出力されるパルス信号のエッジ発生毎に、今回のエッジ発生時における前記カウンタ値Ｐi と前回のエッジ発生時における前記カウンタ値Ｐi-1 との差（Ｐi −Ｐi-1 ）を算出し、この算出された差（Ｐi −Ｐi-1 ）と当該差（Ｐi −Ｐi-1 ）の正常値との差分を補正値として設定し、前記カウント手段によって算出される前記カウンタ値を前記補正値にて補正する補正手段を備え、
前記算出手段は、前記補正手段にて補正されたカウンタ値と前記カウント手段にて算出される前記カウンタ値との差を前記ずれ量として算出する
ことを特徴とするブラシレスモータの制御装置。
【請求項３】
前記補正手段は、当該ブラシレスモータの回転状態が正回転中、逆回転中、及び正逆回転反転中のうちのいずれであるかを判断し、前記各電気角センサから出力されるパルス信号のエッジ間において前記位置センサから出力されるパルス信号のエッジ数の適正値が「ｎ」であるとすると、前記正常値をモータ正回転中であれば「ｎ」に設定し、モータ逆回転中であれば「−ｎ」に設定し、モータ正逆回転反転中であれば「０」に設定する
請求項２記載のブラシレスモータの制御装置。
【請求項４】
当該ブラシレスモータは、内燃機関の機関バルブのバルブ特性を可変とする可変動弁機構の駆動に用いられるものである
請求項１〜３のいずれか１項に記載のブラシレスモータの制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ブラシレスモータの制御装置に関する。
【背景技術】
【０００２】
従来、ブラシレスモータを用いて各種機構を駆動するといったことが行われている。このブラシレスモータは、周知のごとく、磁石で構成された回転子や、同回転子の外周面に対向した複数の固定子を構成するコイルや、同モータの回転時において互いに位相がずれたパルス信号を出力する複数の電気角センサ等を備えている。そして、各電気角センサから出力されるパルス信号の出力パターンに基づいて励磁するコイルの組み合わせ、いわゆる通電相を順次切り換えることにより、その励磁されたコイルによる回転子の吸引及び反発が連続して行われ、これにより同回転子は連続回転される。
【０００３】
ところで、各電気角センサから出力されるパルス信号の出力パターンに基づいて通電相を切り換える際には、その切り換えにかかる演算処理や、通電相での電流の立ち上がり等にある程度の時間がかかる。そのため、パルス信号の出力パターンに基づいて通電相の切り換え処理を開始してから、実際に通電相が切り換えられるまでには遅れが生じてしまい、その結果、ブラシレスモータの出力トルクが十分に得られなくなることがある。そこで、特許文献１に記載の装置では、通電相の切り換えに際してその切り換え時期を前もって早めておく進角処理を行うことで、そうした遅れの発生を抑えるようにしている。
【０００４】
ここで、上述したような遅れは、ブラシレスモータの回転速度に応じて変化するため、上記進角処理を行う場合には、そうした回転速度に基づいて通電相の切り換え時期を設定することが望ましい。
【０００５】
こうしたブラシレスモータの回転速度は、次のような態様にて検出することができる。すなわち、同モータが一定角度回転するごとにパルス信号を出力するセンサを設け、そのセンサから出力されるパルス信号を計数する。このようにすれば、同パルス信号を計数したカウンタ値はブラシレスモータの回転角に対応した値となるため、所定期間内におけるカウンタ値の変化量から同モータの回転速度を検出することができる。
【特許文献１】特開２００４−１８０３９９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、上記態様にてブラシレスモータの回転速度を検出する場合には、以下のような不都合の発生が懸念される。
すなわち、位置センサから出力される信号にはノイズが重畳してしまうことがあり、そのノイズ信号がパルス信号として誤認されてしまうと、パルス信号を計数して得られるカウンタ値がブラシレスモータの実際の回転角に対応した値からずれてしまう。そのため、カウンタ値の変化量に基づいて検出される同モータの回転速度は、実際の回転速度からずれてしまう。
【０００７】
また、位置センサに断線やショートといった異常が一時的であれ発生した場合には、パルス信号が正常に出力されなくなるため、ブラシレスモータが回転していてもカウンタ値はほとんど変化しなくなってしまう。従って、この場合にも、パルス信号を計数して得られるカウンタ値が同モータの実際の回転角に対応した値からずれてしまい、その結果、カウンタ値の変化量に基づいて検出されるブラシレスモータの回転速度は、実際の回転速度からずれてしまう。
【０００８】
このように、カウンタ値の変化量から算出される回転速度と実際のブラシレスモータの回転速度との間にずれが生じると、上記進角処理の実行に際して進角量を正確に設定することができなくなる。すなわち、ブラシレスモータの回転速度に応じた適切な進角量に対して、実際に設定される進角量がより進角側の値にされたり、遅角側の値にされてしまい、その結果、当該ブラシレスモータの出力トルクが低下してしまうおそれがある。
【０００９】
この発明は、こうした実情に鑑みてなされたものであって、その目的は、ブラシレスモータの回転速度に基づいて通電相の進角処理を行う制御装置において、誤った回転速度が検出されたときに生じやすい当該ブラシレスモータの出力トルク低下を好適に抑えることのできるブラシレスモータの制御装置を提供することにある。
【課題を解決するための手段】
【００１０】
以下、上記目的を達成するための手段及びその作用効果について記載する。
請求項１に記載の発明は、ブラシレスモータの回転時にあって複数の電気角センサから位相がずれた状態で出力されるパルス信号の出力パターンに基づき前記ブラシレスモータの通電相を切り換える切換手段と、前記ブラシレスモータの回転に伴って位置センサから出力されるパルス信号のエッジを計数したカウンタ値を算出するカウント手段と、前記カウンタ値に基づいて前記ブラシレスモータの回転角を検出するとともに、所定期間内における同カウンタ値の変化量に基づいて前記ブラシレスモータの回転速度を検出する速度検出手段と、その検出された回転速度に基づいて前記通電相の切り換え時期を早める進角処理を行う進角手段とを備えるブラシレスモータの制御装置において、前記カウント手段によって算出されたカウンタ値と前記ブラシレスモータの実際の回転角に対応したカウンタ値とのずれ量を算出する算出手段と、前記ずれ量が変化している場合には、前記進角処理の実行を禁止する禁止手段とを備えることをその要旨とする。
【００１１】
位置センサからのパルス信号のエッジを計数したカウンタ値とブラシレスモータの実際の回転角に対応した正しいカウンタ値との間にずれが生じている場合にあって、そのずれ量が一定であれば、同一の期間内において、正しいカウンタ値の変化量と実際に計数されたカウンタ値の変化量とは同じ値になる。従って、ずれ量が一定の値に維持されている場合、すなわちずれ量が変化していない場合には、ずれが生じているカウンタ値の変化量に基づいて検出されるブラシレスモータの回転速度と、該ブラシレスモータの実際の回転速度とは一致する。逆に、ずれ量が変化している場合には、正しいカウンタ値の変化量と実際に計数されたカウンタ値の変化量とは異なった値になるため、ずれが生じているカウンタ値の変化量に基づいて検出されるブラシレスモータの回転速度と、該ブラシレスモータの実際の回転速度とは一致しなくなる。
【００１２】
このように、所定期間内におけるカウンタ値の変化量に基づいてブラシレスモータの回転速度を検出する場合にあって、同カウンタ値のずれ量が変化している場合には、カウンタ値の変化量に基づいて検出されるブラシレスモータの回転速度が誤って検出されていると判断することができる。そこで、同構成では、カウント手段によって算出されたカウンタ値とブラシレスモータの実際の回転角に対応したカウンタ値とのずれ量を算出し、算出されたずれ量が変化している場合には、検出されたブラシレスモータの回転速度が誤っていると判断して上記進角処理の実行を禁止するようにしている。従って、同構成によれば、ブラシレスモータの回転速度に基づいて通電相の進角処理を行うブラシレスモータの制御装置において、誤った回転速度が検出されたときに生じやすい当該ブラシレスモータの出力トルク低下を好適に抑えることができるようになる。また、同構成によれば、カウンタ値にずれが生じていたとしても、そのずれ量が変化していない場合には通電相の進角処理が実行される。従って、カウンタ値にずれが生じている場合に通電相の進角処理を禁止する場合と比較して、同進角処理の実行機会を増大させることも可能となる。
【００１３】
請求項２に記載の発明は、請求項１に記載のブラシレスモータの制御装置において、前記位置センサは、前記各電気角センサから出力されるパルス信号のエッジ間隔よりも短いエッジ間隔のパルス信号を出力するものであって、前記各電気角センサから出力されるパルス信号のエッジ発生毎に、今回のエッジ発生時における前記カウンタ値Ｐi と前回のエッジ発生時における前記カウンタ値Ｐi-1 との差（Ｐi −Ｐi-1 ）を算出し、この算出された差（Ｐi −Ｐi-1 ）と当該差（Ｐi −Ｐi-1 ）の正常値との差分を補正値として設定し、前記カウント手段によって算出される前記カウンタ値を前記補正値にて補正する補正手段を備え、前記算出手段は、前記補正手段にて補正されたカウンタ値と前記カウント手段にて算出される前記カウンタ値との差を前記ずれ量として算出することをその要旨とする。
【００１４】
各電気角センサから出力されるパルス信号の前回のエッジ発生時におけるカウンタ値Ｐi-1 と、今回のエッジ発生時におけるカウンタ値Ｐi との差（Ｐi-1 −Ｐi ）には、上記位置カウンタのカウンタ値における上記ブラシレスモータの実際の回転角に対応する値からのずれが反映される。そこで、同構成では、算出された差（Ｐi −Ｐi-1 ）と当該差（Ｐi −Ｐi-1 ）の正常値（カウンタ値がブラシレスモータの実際の回転角に対応する値と一致しているときの当該差（Ｐi −Ｐi-1 ））との差分を補正値として設定し、前記カウンタ値を補正するようにしている。従って、同カウンタ値におけるブラシレスモータの実際の回転角に対応する値からのずれは適切に修正され、補正後のカウンタ値は、ブラシレスモータの実際の回転角に対応した正しいカウンタ値になる。
【００１５】
他方、前記カウント手段にて算出されるカウンタ値、いわば補正されていないカウンタ値には上述したようなずれが含まれている。従って、上記態様にて補正されたカウンタ値と上記カウント手段にて算出されるカウンタ値との差を前記ずれ量として算出する同構成によれば、カウント手段で算出されるカウンタ値、すなわちブラシレスモータの回転速度の検出に利用されるカウンタ値と、同ブラシレスモータの実際の回転角に対応するカウンタ値とのずれ量を適切に算出することができるようになる。
【００１６】
請求項３に記載の発明は、請求項２記載のブラシレスモータの制御装置において、前記補正手段は、当該ブラシレスモータの回転状態が正回転中、逆回転中、及び正逆回転反転中のうちのいずれであるかを判断し、前記各電気角センサから出力されるパルス信号のエッジ間において前記位置センサから出力されるパルス信号のエッジ数の適正値が「ｎ」であるとすると、前記正常値をモータ正回転中であれば「ｎ」に設定し、モータ逆回転中であれば「−ｎ」に設定し、モータ正逆回転反転中であれば「０」に設定することをその要旨とする。
【００１７】
位置カウンタのカウンタ値は、ブラシレスモータの正回転時に位置センサからのパルス信号のエッジ毎に「１」ずつ増加してゆき、ブラシレスモータの逆回転時には位置センサからのパルス信号のエッジ毎に「１」ずつ減少してゆく。このため、位置カウンタのカウンタ値が正常であるとき、換言すればカウンタ値が回転子の実際の回転角に対応しているとき、差（Ｐi −Ｐi-1 ）は、モータ正回転中であれば上記エッジ数ｎに対応して「ｎ」となり、モータ逆回転中であれば「−ｎ」となり、ブラシレスモータの正逆回転反転中であれば「０」となる。この点、同構成によれば、正常値がブラシレスモータの回転状態に応じて「ｎ」、「−ｎ」、及び「０」の間で切り換えられるため、その正常値に対する差（Ｐi −Ｐi-1 ）のずれ量をモータの回転状態に関わらず適切に算出することができるようになる。
【００１８】
請求項４に記載の発明は、請求項１〜３のいずれか１項に記載のブラシレスモータの制御装置において、当該ブラシレスモータは、内燃機関の機関バルブのバルブ特性を可変とする可変動弁機構の駆動に用いられるものであることをその要旨とする。
【００１９】
内燃機関の可変動弁機構をブラシレスモータで駆動する場合に、当該ブラシレスモータの回転速度が誤って検出されると、上述したような理由により同モータの出力トルクが低下し、これにより、可変動弁機構の駆動を通じたバルブ特性の変更に際し、その応答性が低下してしまうおそれがある。この点、同構成によれば、誤った回転速度が検出されたときに生じやすい当該ブラシレスモータの出力トルク低下を抑えることができるようになるため、そうした応答性の低下も好適に抑えることができるようになる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明を、エンジンに設けられた可変動弁機構を駆動するブラシレスモータの制御装置に具体化した一実施形態について、図１〜図１５を併せ参照して説明する。
図１に、本実施形態におけるエンジンのシリンダヘッド周りについてその断面構造を示す。
【００２１】
この図１に示すように、このエンジン１には、シリンダヘッド２、シリンダブロック３、及びピストン５によって燃焼室６が区画形成されており、この燃焼室６には吸気通路７及び排気通路８が接続されている。そして、吸気通路７と燃焼室６との間は、吸気バルブ９の開閉動作によって連通・遮断され、排気通路８と燃焼室６との間は、排気バルブ１０の開閉動作によって連通・遮断される。
【００２２】
シリンダヘッド２には、吸気バルブ９及び排気バルブ１０を駆動するための吸気カムシャフト１１及び排気カムシャフト１２が設けられている。これら吸気カムシャフト１１及び排気カムシャフト１２は、エンジン１のクランクシャフトの回転力を利用して回転駆動される。また、吸気カムシャフト１１及び排気カムシャフト１２には、それぞれ吸気カム１１ａ及び排気カム１２ａが設けられている。そして、吸気カムシャフト１１と一体回転する吸気カム１１ａによって吸気バルブ９は開閉動作され、排気カムシャフト１２と一体回転する排気カム１２ａによって排気バルブ１０は開閉動作される。
【００２３】
また、吸気カム１１ａと吸気バルブ９との間には、吸気バルブ９のバルブ特性、より詳細には吸気バルブ９の最大リフト量ＶＬ、及び同吸気バルブ９の開弁期間に相当する吸気カム１１ａの作用角ＩＮＣＡＭを可変とする可変動弁機構１４が設けられている。この可変動弁機構１４の駆動を通じて、燃焼室６に導入される吸入空気量を多く必要とする機関運転状態になるほど、最大リフト量ＶＬ及び作用角ＩＮＣＡＭ（開弁期間）は大きくされる。これは最大リフト量ＶＬ及び作用角ＩＮＣＡＭが大きくなるほど、吸気通路７から燃焼室６への空気の吸入が効率よく行われ、吸入空気量に関する上記要求を満たすことが可能になるためである。
【００２４】
次に、可変動弁機構１４の詳細な構造について説明する。
同可変動弁機構１４は、シリンダヘッド２に固定されて吸気カムシャフト１１と平行に延びるパイプ状のロッカシャフト１５、ロッカシャフト１５に挿入された棒状のコントロールシャフト１６、コントロールシャフト１６の軸線を中心に揺動する入力アーム１７、入力アーム１７の揺動に基づき上記軸線を中心に揺動する出力アーム１８等を備えている。
【００２５】
入力アーム１７には、ローラ１９が回転可能に取り付けられており、このローラ１９は、コイルスプリング２０によって吸気カム１１ａ側に押し付けられている。また、出力アーム１８は、その揺動時にロッカアーム２１に押し付けられ、同ロッカアーム２１を介して吸気バルブ９をリフトさせる。
【００２６】
このロッカアーム２１の一端部はラッシュアジャスタ２２によって支持され、同ロッカアーム２１の他端部は吸気バルブ９に接触している。また、ロッカアーム２１は吸気バルブ９のバルブスプリング２４によって出力アーム１８側に付勢されており、これによりロッカアーム２１の一端部と他端部との間に回転可能に支持されたローラ２３が出力アーム１８に押し付けられている。従って、吸気カム１１ａの回転に基づき入力アーム１７及び出力アーム１８が揺動すると、出力アーム１８がロッカアーム２１を介して吸気バルブ９をリフトさせ、吸気バルブ９の開閉動作が行われる。
【００２７】
この可変動弁機構１４では、ロッカシャフト１５内に配置されたコントロールシャフト１６を軸方向に変位させることで、入力アーム１７と出力アーム１８との揺動方向についての相対位置を変更することが可能になっている。このように、入力アーム１７と出力アーム１８との揺動方向について、それらの相対位置を変更することにより、上記吸気バルブ９の最大リフト量ＶＬ及び作用角ＩＮＣＡＭが可変とされる。すなわち、入力アーム１７と出力アーム１８とを揺動方向について互いに接近させるほど、吸気バルブ９の最大リフト量ＶＬ及び作用角ＩＮＣＡＭはともに同期しながら小さくなる。逆に、入力アーム１７と出力アーム１８とを揺動方向について互いに離間させるほど、吸気バルブ９の最大リフト量ＶＬ及び作用角ＩＮＣＡＭはともに同期しながら大きくなる。
【００２８】
次に、可変動弁機構１４を駆動するべく上記コントロールシャフト１６を軸方向に変位させるための駆動機構、及び、その駆動機構を駆動制御する制御装置について、図２を参照して説明する。
【００２９】
同図２に示されるように、コントロールシャフト１６の末端（図中右端）には、ブラシレスモータ４７が変換機構４８を介して連結されている。
ブラシレスモータ４７には、磁石で構成された回転子や、同回転子の外周面に対向した複数の固定子を構成するコイルや、同モータ４７の回転時において互いに位相がずれたパルス信号を出力する３つの電気角センサＳ１〜Ｓ３や、回転子（ブラシレスモータ４７）の回転角を検出するための２つの位置センサＳ４，Ｓ５等が設けられている。そして、各電気角センサＳ１〜Ｓ３から出力されるパルス信号の出力パターンに基づいて励磁するコイルの組み合わせ、いわゆる通電相を順次切り換えることにより、その励磁されたコイルによる回転子の吸引及び反発が連続して行われ、これにより同回転子は連続回転される。
【００３０】
また、変換機構４８は、ブラシレスモータ４７の回転運動をコントロールシャフト１６の軸方向への直線運動に変換するためのものである。そして、上記ブラシレスモータ４７の所定の回転角範囲内での回転駆動、例えば同モータ４７の１０回転分の回転角範囲（０〜３６００°）内での回転駆動を通じて、コントロールシャフト１６が軸方向に変位させられ、可変動弁機構１４が駆動されることとなる。
【００３１】
ちなみに、ブラシレスモータ４７を正回転させると、コントロールシャフト１６は先端（図中左端）側に変位し、入力アーム１７と出力アーム１８との揺動方向についての相対位置が互いに接近するように変更される。また、ブラシレスモータ４７を逆回転させると、コントロールシャフト１６は末端（図中右端）側に変位し、入力アーム１７と出力アーム１８との揺動方向についての相対位置が互いに離間するように変更される。こうしたブラシレスモータ４７の回転駆動による入力アーム１７及び出力アーム１８の揺動方向についての相対位置の変更を通じて、吸気カム１１ａの回転により出力アーム１８が揺動したときの吸気バルブ９の最大リフト量ＶＬ及び作用角ＩＮＣＡＭが可変とされる。
【００３２】
上記電気角センサＳ１〜Ｓ３は、ブラシレスモータ４７の回転時、同モータ４７の回転子と一体回転する４極の多極マグネットの磁気に応じて、図３（ａ）〜（ｃ）に示すようなパルス状の信号、すなわちハイ信号「Ｈ」とロー信号「Ｌ」とを交互に出力するものである。また、各電気角センサＳ１〜Ｓ３からのパルス信号は、互いに位相をずらした状態で出力されるようになっている。すなわち、こうしたパルス信号の波形が得られるよう、上記回転子に対する各電気角センサＳ１〜Ｓ３の周方向位置が定められている。なお、各電気角センサＳ１〜Ｓ３のうちの一つのセンサから出力されるパルス信号のエッジは、ブラシレスモータ４７の４５°回転毎に発生している。また、上記一つのセンサからのパルス信号は、他の２つのセンサからのパルス信号に対し、ブラシレスモータ４７の３０°回転分だけそれぞれ進み側及び遅れ側に位相がずれた状態となっている。
【００３３】
上記位置センサＳ４，Ｓ５は、ブラシレスモータ４７の回転時、同モータ４７の回転子と一体回転する４８極の多極マグネットの磁気に応じて、図３（ｄ）及び（ｅ）に示されるようなパルス状の信号、すなわちハイ信号「Ｈ」とロー信号「Ｌ」とを交互に出力するものである。また、各位置センサＳ４，Ｓ５からのパルス信号は、互いに位相をずらした状態で出力されるようになっており、モータ正回転時には位置センサＳ４からのパルス信号の立ち上がりエッジ及び立ち下がりエッジがそれぞれ、位置センサＳ４からのパルス信号の立ち上がりエッジ及び立ち下がりエッジよりも先に生じる。すなわち、こうしたパルス信号の波形が得られるよう、上記回転子に対する各位置センサＳ４，Ｓ５の周方向位置が定められている。なお、各位置センサＳ４，Ｓ５の内の一方のセンサから出力されるパルス信号のエッジは、ブラシレスモータ４７の７．５°回転毎に発生している。また、上記一方のセンサからのパルス信号は、他方のセンサからのパルス信号に対し、ブラシレスモータ４７の３．７５°回転分だけ位相をずらした状態となっている。
【００３４】
従って、電気角センサＳ１〜Ｓ３からのパルス信号のエッジ間隔が１５°であるのに対し、位置センサＳ４，Ｓ５からのパルス信号のエッジ間隔は３．７５°となっており、上記１５°というエッジ間隔よりも短くなっている。更に、電気角センサＳ１〜Ｓ３からのパルス信号のエッジ発生から次回のエッジ発生までには、位置センサＳ４，Ｓ５からのパルス信号のエッジが４回発生するようになっている。
【００３５】
可変動弁機構１４の駆動制御、換言すればブラシレスモータ４７の回転駆動制御は、エンジン１の各種制御を行う電子制御装置５０（先の図２を参照）よって行われる。この電子制御装置５０は、上記各種制御にかかる演算処理を実行するＣＰＵ、その制御に必要なプログラムやデータの記憶されたＲＯＭ、ＣＰＵの演算結果が一時的に記憶されるＲＡＭ、外部との間で信号を入・出力するための入・出力ポート等を備えて構成されている。
【００３６】
電子制御装置５０の入力ポートには、上述した電気角センサＳ１〜Ｓ３及び位置センサＳ４，Ｓ５が接続されるほか、更に以下のセンサを含む各種センサが接続されている。
・自動車の運転者によって踏み込み操作されるアクセルペダルの踏み込み量（アクセル操作量ＡＣＣＰ）を検出するアクセルセンサ５１。
【００３７】
・エンジン１の吸気通路７に設けられたスロットルバルブの開度（スロットル開度ＴＡ）を検出するスロットルセンサ５２。
・上記吸気通路７を介して燃焼室６に吸入される空気の量、すなわち吸入空気量ＧＡを検出するエアフロメータ５３。
【００３８】
・エンジン１の出力軸の回転に対応する信号を出力して機関回転速度ＮＥの検出等に用いられるクランク角センサ５４。
・自動車の運転者により切り換え操作され、現在の切換位置に対応した信号を出力するイグニッションスイッチ５５。
【００３９】
また、電子制御装置５０の出力ポートには、ブラシレスモータ４７の駆動回路等が接続されており、同電子制御装置５０は、上記各種センサ等から入力した検出信号に基づき機関運転状態を把握する。そして、その把握した機関運転状態に基づいてブラシレスモータ４７を駆動し、コントロールシャフト１６を軸方向に変位させることで、可変動弁機構１４の駆動を通じた吸気バルブ９のバルブ特性制御が行われる。なお、ブラシレスモータ４７の駆動は、各電気角センサＳ１〜Ｓ３から出力される同モータ４７の回転時のパルス信号の出力パターンに応じて、ブラシレスモータ４７の通電相を切り換えることによって行われる。
【００４０】
可変とされる上記最大リフト量ＶＬ及び作用角ＩＮＣＡＭは、コントロールシャフト１６の軸方向の位置に対応しており、このコントロールシャフト１６の軸方向の位置は、ブラシレスモータ４７の上記所定回転角範囲内での回転角に対応している。従って、最大リフト量ＶＬ及び作用角ＩＮＣＡＭの可変制御に際しては、ブラシレスモータ４７の回転角が制御される。
【００４１】
そうしたブラシレスモータ４７の回転角についてその検出手順を、図３に示すタイミングチャート及び図４に示すフローチャートを併せ参照して説明する。
図３において、（ａ）〜（ｅ）は、ブラシレスモータ４７の回転時における同モータ４７の回転角変化に対し、各センサＳ１〜Ｓ５からパルス信号がどのように出力されるかを示す波形図である。また、（ｆ）〜（ｈ）にはそれぞれ、ブラシレスモータ４７の回転時における同モータ４７の回転角の変化に対し、電気角カウンタＥ、位置カウンタＰ、及びストロークカウンタＳのカウンタ値がどのように推移するかを示している。
【００４２】
なお、上記電気角カウンタＥは、ブラシレスモータ４７を駆動すべく上記通電相を切り換える際に用いられるものである。また、上記位置カウンタＰは、エンジン１を運転開始する際のイグニッションスイッチ５５のオン操作（イグニッションオン）後、ブラシレスモータ４７の回転角がどれだけ変化したか、その相対回転角を表すものである。更に、上記ストロークカウンタＳは、ブラシレスモータ４７の上記所定回転角範囲（１０回転分）において、コントロールシャフト１６を最も先端側に変位させたときのブラシレスモータ４７の回転角を基準（０°）とした同モータ４７の回転角を表すものであり、このストロークカウンタＳは、ブラシレスモータ４７の絶対回転角を表している。
【００４３】
図４に、上記電気角カウンタＥ、位置カウンタＰ、及びストロークカウンタＳのカウンタ値を変化させるためのカウント処理についてその手順を示す。このカウント処理は、電子制御装置５０により、位置センサＳ４，Ｓ５からのパルス信号のエッジ間隔に対応する時間間隔よりも短い間隔をもって周期的に実行される。
【００４４】
本処理においては、まず、先の図３（ａ）〜（ｃ）に示した各電気角センサＳ１〜Ｓ３からのパルス信号の出力パターンに基づき、図３（ｆ）に示すように電気角カウンタＥのカウンタ値を変化させる（Ｓ１０１）。
【００４５】
より詳しくは、図５（ａ）に示すように、各電気角センサＳ１〜Ｓ３から各々ハイ信号「Ｈ」とロー信号「Ｌ」とのいずれが出力されているかに応じて、電気角カウンタＥのカウンタ値は「０」〜「５」の範囲内の連続した整数値のうちのいずれかが当てはめられる。その結果、ブラシレスモータ４７の正回転時（図３中右向き）には、電気角センサＳ１〜Ｓ３からのパルス信号の出力パターンに応じて、「０」〜「５」の範囲内の連続した各整数値が「０」→「１」→「２」→「３」→「４」→「５」→「０」といった順序で順方向に電気角カウンタＥのカウンタ値として当てはめられる。また、ブラシレスモータ４７の逆回転時（図３中左向き）には、電気角センサＳ１〜Ｓ３からのパルス信号の出力パターンに応じて、「０」〜「５」の範囲内の連続した各整数値が「５」→「４」→「３」→「２」→「１」→「０」→「５」といった順序で逆方向に電気角カウンタＥのカウンタ値として当てはめられる。なお、何らかの原因により、各電気角センサＳ１〜Ｓ３全てがハイ信号「Ｈ」を出力する場合、或いは、各電気角センサＳ１〜Ｓ３全てがロー信号「Ｌ」を出力する場合もあるが、これらの場合には異常状態である旨判断され、電気角カウンタＥのカウンタ値がそのまま保持される。
【００４６】
そして、この電気角カウンタＥのカウンタ値に基づいてブラシレスモータ４７の通電相を切り換えることで、同モータの正回転方向または逆回転方向への駆動が行われる。
続いて、各位置センサＳ４，Ｓ５からのパルス信号の出力パターンに基づき、同パルス信号のエッジ毎に位置カウンタＰのカウンタ値が増減される（図４のＳ１０２）。
【００４７】
詳しくは、図５（ｂ）に示すように、位置センサＳ４，Ｓ５のうち、一方のセンサからパルス信号の立ち上がりエッジ或いは立ち下がりエッジのいずれが生じているか、及び他方のセンサからハイ信号「Ｈ」或いはロー信号「Ｌ」のいずれが出力されているかに応じて、位置カウンタＰのカウンタ値には、「＋１」或いは「−１」が加算される。なお、同図５（ｂ）において、「↑」はパルス信号の立ち上がりエッジを表し、「↓」はパルス信号の立ち下がりエッジを表している。こうした処理を実行して得られる位置カウンタＰのカウンタ値は、各位置センサＳ４，Ｓ５からのパルス信号のエッジを計数した値となっている。
【００４８】
ここで、ブラシレスモータ４７の正回転中であれば、位置カウンタＰのカウンタ値は、図３（ｄ）及び（ｅ）に示される位置センサＳ４，Ｓ５からのパルス信号のエッジ毎に「１」ずつ加算されてゆき、図３（ｇ）中の右方向に変化してゆく。また、ブラシレスモータ４７の逆回転中であれば、位置カウンタＰのカウンタ値は、上記エッジ毎に「１」ずつ減算されてゆき、図３（ｇ）中の左方向に変化してゆく。なお、この位置カウンタＰは、イグニッションスイッチ５５のオフ操作（イグニッションオフ）がなされたとき、「０」にリセットされる。従って、位置カウンタＰのカウンタ値は、イグニッションオン後にコントロールシャフト１６が軸方向にどれだけ変位したかを表すものとなる。
【００４９】
そして、図３（ｇ）に示すように変化する位置カウンタＰに応じて、図３（ｈ）に示すようにストロークカウンタＳは変化する。具体的には、位置カウンタＰに対して学習値Ｐｒの正負を反転させた値（−Ｐｒ）を加算して得られる値がストロークカウンタＳのカウンタ値として設定される（図４のＳ１０３）。なお、上記学習値Ｐｒは、コントロールシャフト１６をその移動範囲における図２の左端（先端）側の変位端まで変位させたとき、すなわちブラシレスモータ４７の回転角を上記所定の回転角範囲内における上記コントロールシャフト１６の変位状態に対応する端まで変化させたときの位置カウンタＰのカウンタ値に対応した値である。この学習値Ｐｒは、イグニッションオン後に所定の条件下で学習が行われて電子制御装置５０の不揮発性メモリに記憶される。従って、位置カウンタＰのカウンタ値に学習値Ｐｒの正負を反転させた値を加算して得られるストロークカウンタＳのカウンタ値は、コントロールシャフト１６が最も先端側に変位した状態を基準とする同シャフト１６の軸方向位置を表すものになる。このことは、言い換えれば、ストロークカウンタＳのカウンタ値は、ブラシレスモータ４７の上記所定回転角範囲におけるコントロールシャフト１６の上記変位状態に対応する端を基準としたブラシレスモータ４７の絶対回転角を表すものになっている。
【００５０】
電子制御装置５０は、上記ストロークカウンタＳのカウンタ値に基づき、ブラシレスモータ４７の回転角を検出する。そして、電子制御装置５０は、可変動弁機構１４を駆動して吸気バルブ９の最大リフト量及び吸気カム１１ａの作用角といったバルブ特性を制御する際に、上記のように検出されたブラシレスモータ４７の回転角が目標とするバルブ特性に対応する回転角となるようブラシレスモータ４７を駆動する。これにより、吸気バルブ９のバルブ特性を目標とする特性へと精密に制御することができるようになる。
【００５１】
なお、上述したように、ブラシレスモータ４７の回転時において、位置センサＳ４，Ｓ５からのパルス信号のエッジを計数する代わりに、電気角センサＳ１〜Ｓ３からのパルス信号のエッジを計数しても、その計数値に基づきブラシレスモータ４７の回転角を大まかに検出することは可能である。しかし、可変動弁機構１４を駆動するブラシレスモータ４７の回転角を検出する場合には、その回転角検出に高い精度が要求されるため、上記のような大まかな回転角検出では検出精度が不足してしまう。このため、電気角センサＳ１〜Ｓ３からのパルス信号のエッジ間隔よりも短いエッジ間隔でパルス信号を出力する位置センサＳ４，Ｓ５を設け、それら位置センサＳ４，Ｓ５からのパルス信号のエッジを計数した位置カウンタＰのカウンタ値に基づき、ブラシレスモータ４７の回転角検出を行うようにしている。
【００５２】
ところで、各電気角センサＳ１〜Ｓ３から出力されるパルス信号の出力パターンに基づいて、換言すれば電気角カウンタＥのカウンタ値に基づいてブラシレスモータ４７の通電相を切り換える際には、その切り換えにかかる演算処理や、通電相（コイル）での電流の立ち上がり等にある程度の時間がかかる。そのため、電気角カウンタＥのカウンタ値に基づいて通電相の切り換え処理を開始してから、実際に通電相が切り換えられるまでには遅れが生じてしまい、その結果、ブラシレスモータ４７の出力トルクが十分に得られなくなることがある。
【００５３】
例えば、図６の（Ａ）に示すように、電気角カウンタＥが「２」から「３」に変化した場合（時刻ｔ（３））、切り換え処理の実行時間や通電相での電流の立ち上がり時間等が加算された遅れ時間Ｒが経過した時点（時刻ｔ３＋Ｒ）で、電気角カウンタＥ＝「２」に対応した通電相からＥ＝「３」に対応した通電相への切り換えが完了する（一点鎖線）。このように、電気角カウンタＥの変化に対して通電相の切り換えが遅れてしまうと、ブラシレスモータ４７の出力トルクが低下してしまい、その結果、可変動弁機構１４を適切に駆動することができなくなるなどといった不都合が発生してしまう。そこで、本実施形態では、通電相の切り換えに際してその切り換え時期を前もって早めておく進角処理を電子制御装置５０にて行うことにより、そうした通電相の切り換え遅れの発生を抑えるようにしている。すなわち、電気角カウンタＥが変化したときには、変化後の電気角カウンタＥに対応した通電相に通電するのではなく、その変化後の電気角カウンタＥの次に変化するはずの電気角カウンタＥに対応した通電相に対して、上記遅れ時間Ｒを見越して先に通電を行うようにしている。
【００５４】
上記進角処理の実行態様についてその一例を図６の（Ｂ）に示す。この図６の（Ｂ）に示すごとく、電気角カウンタＥが「１」から「２」に変化した場合（時刻ｔ（２））には、上記遅れ時間Ｒを見越して電気角カウンタＥ＝「３」に対応した通電相への切り換え処理が開始される。より詳細には、電気角カウンタＥが「１」から「２」に変化した場合（時刻ｔ（２））には、その変化時点から所定の時間Ｘが経過した時点（時刻ｔ（２）＋Ｘ）で、電気角カウンタＥ＝「３」に対応した通電相への切り換え処理が開始される。その結果、電気角カウンタＥが「２」から「３」に変化した時点（時刻ｔ（３））では、電気角カウンタＥ＝「３」に対応した通電相への切り換えが完了している。なお、上記時間Ｘは、通電相の切り換え処理を開始した後、上記遅れ時間Ｒが経過した時点で電気角カウンタＥが「２」から「３」に変化するように、ブラシレスモータ４７の回転速度に基づいて可変設定される。このブラシレスモータ４７の回転速度は、所定期間内の上記位置カウンタＰのカウンタ値の変化量や、所定期間内の上記ストロークカウンタＳのカウンタ値の変化量と相関関係にある。そこで、本実施形態では、適宜設定された期間内における位置カウンタＰのカウンタ値の変化量（例えば２ｍｓごとの変化量など）に基づいて上記時間Ｘを可変設定するようにしている。また、上述した進角処理は、電気角カウンタＥが「１」から「２」に変化した場合のみならず、電気角カウンタＥの値が変化するたびに実行される。
【００５５】
他方、位置カウンタＰのカウンタ値は、常にブラシレスモータ４７の実際の回転角に対応しているとは限らず、その実際の回転角に対応した値からずれることがある。
例えば、位置センサＳ４，Ｓ５から出力される信号にはノイズが重畳してしまうことがあり、そのノイズ信号がパルス信号として誤認されてしまうと、パルス信号を計数することで得られる位置カウンタＰのカウンタ値が、ブラシレスモータ４７の実際の回転角に対応した値からずれてしまう。
【００５６】
また、位置センサＳ４，Ｓ５に断線やショートといった異常が一時的であれ発生した場合には、パルス信号が正常に出力されなくなるため、ブラシレスモータ４７が回転していても位置カウンタＰのカウンタ値はほとんど変化しなくなってしまう。従って、この場合にも、パルス信号を計数して得られる位置カウンタＰのカウンタ値が、ブラシレスモータ４７の実際の回転角に対応した値からずれてしまう。
【００５７】
以下、ブラシレスモータ４７の正回転中に上記ノイズが発生した場合、ブラシレスモータ４７の逆回転中に上記ノイズが発生した場合、及びブラシレスモータ４７の正逆回転反転中に上記ノイズが発生した場合の上記不具合の発生態様について説明する。
【００５８】
なお、モータ正回転中及び逆回転中での上記不具合発生の説明については図７のタイミングチャートを参照して行い、モータ正逆回転反転中での上記不具合発生の説明については図８のタイムチャートを参照して行う。図７において、（ａ）〜（ｅ）は、ブラシレスモータ４７の回転角の変化に対する位置センサＳ４，Ｓ５からのパルス信号の波形、電気角カウンタＥのカウンタ値の推移、及び位置カウンタＰのカウンタ値の推移を表している。また、図８において、（ａ）〜（ｄ）は、時間経過に対する位置センサＳ４，Ｓ５からのパルス信号の波形、電気角カウンタＥのカウンタ値の推移、及び位置カウンタＰのカウンタ値の推移を表している。
【００５９】
［モータ正回転中］
ブラシレスモータ４７の正回転中、例えば図７（ａ）に示されるように、位置センサＳ４からの信号にノイズが重畳し、そのノイズが位置センサＳ５からのパルス信号の立ち下がりエッジと重なると、上記ノイズの発生しているタイミングａ，ｂ，ｃでの位置センサＳ４，Ｓ５からの信号の出力パターンは、図９（ａ）に示されるようなパターンとなる。
【００６０】
すなわち、タイミングａにおいては、位置センサＳ４の信号は立ち上がりエッジとなっており、位置センサＳ５の信号はハイ信号になっている。また、タイミングｂにおいては、位置センサＳ４の信号はハイ信号となっており、位置センサＳ５の信号は立ち下がりエッジになっている。そして、タイミングｃにおいては、位置センサＳ４の信号は立ち下がりエッジとなっており、位置センサＳ５の信号はロー信号になっている。
【００６１】
その結果、タイミングａ，ｂ，ｃにおいて、それぞれ位置カウンタＰのカウンタ値に「−１」が加算され、図７（ｄ）のタイミングａ，ｂ，ｃでは、当該カウンタ値が破線で示されるように「１」ずつ減少してゆく。一方、上記ノイズが発生していなければ、タイミングａ，ｂ，ｃのうち、タイミングｂで位置カウンタＰのカウンタ値に「１」が加算されるだけとなるはずである。このため、上記ノイズが発生したときの位置カウンタＰのカウンタ値は、タイミングｃ以降、ブラシレスモータ４７の実際の回転角に対応する値（実線）に対し、二点鎖線で示されるように「４」だけ小さくなる。
【００６２】
［モータ逆回転中］
ブラシレスモータ４７の逆回転中、例えば図７（ａ）に示されるように、位置センサＳ４からの信号にノイズが重畳し、そのノイズが位置センサＳ５からのパルス信号の立ち上がりエッジと重なると、上記ノイズの発生しているタイミングｃ，ｂ，ａでの位置センサＳ４，Ｓ５からの信号の出力パターンは、図９（ｂ）に示されるようなパターンとなる。
【００６３】
すなわち、タイミングｃにおいては、位置センサＳ４の信号は立ち上がりエッジとなっており、位置センサＳ５の信号はハイ信号になっている。また、タイミングｂにおいては、位置センサＳ４の信号はハイ信号となっており、位置センサＳ５の信号は立ち上がりエッジになっている。そして、タイミングａにおいては、位置センサＳ４の信号は立ち下がりエッジとなっており、位置センサＳ５の信号はハイ信号になっている。
【００６４】
その結果、タイミングｃ，ｂ，ａで、それぞれ位置カウンタＰのカウンタ値に「１」が加算され、図７（ｅ）のタイミングｃ，ｂ，ａでは当該カウンタ値が破線で示されるように「１」ずつ増加してゆく。一方、上記ノイズが発生していなければ、タイミングｃ，ｂ，ａのうち、タイミングｂで位置カウンタＰのカウンタ値に「−１」が加算されるだけとなるはずである。このため、上記ノイズが発生したときの位置カウンタＰのカウンタ値は、タイミングａ以降、ブラシレスモータ４７の実際の回転角に対応する値（実線）に対し、二点鎖線で示されるように「４」だけ大きくなる。
【００６５】
［モータ正逆回転反転中］
ブラシレスモータ４７の正逆回転の反転、例えば正回転から逆回転への反転が行われる際、位置センサＳ４，Ｓ５の波形及び電気角カウンタＥのカウンタ値は、時間経過に対してそれぞれ図８（ａ）〜（ｃ）に示されるように推移する。
【００６６】
すなわち、ブラシレスモータ４７の正逆回転反転中、例えば図８（ｂ）に破線Ｌ１で示されるように、位置センサＳ５からの信号にノイズが重畳し、そのノイズが位置センサＳ４からのパルス信号の立ち上がりエッジと重なると、上記ノイズのエッジ及び上記パルス信号のエッジ毎に位置カウンタＰのカウンタ値が「１」ずつ減少してゆく。これは、上記ノイズの重畳によって位置センサＳ４，Ｓ５からの信号の出力パターンが、位置カウンタＰのカウンタ値を「−１」ずつ加算してゆくパターンとなるためである。一方、上記ノイズが発生していなければ、上記のように位置カウンタＰのカウンタ値が「１」ずつ減少する期間に対応する期間中には、位置カウンタＰのカウンタ値に「１」が加算されるはずである。このため、上記ノイズが発生したときの位置カウンタＰのカウンタ値は、ブラシレスモータ４７の実際の回転角に対応する値（実線）に対し、破線Ｌ２で示されるように「４」だけ小さくなる。
【００６７】
また、ブラシレスモータ４７の正逆回転反転中、例えば図８（ｂ）に破線Ｌ３で示されるように、位置センサＳ５からの信号にノイズが重畳し、そのノイズが位置センサＳ４からのパルス信号の立ち下がりエッジと重なると、上記ノイズのエッジ及び上記パルス信号のエッジ毎に位置カウンタＰのカウンタ値が「１」ずつ増加してゆく。これは、上記ノイズの発生によって位置センサＳ４，Ｓ５からの信号の出力パターンが、位置カウンタＰのカウンタ値を「１」ずつ加算してゆくパターンとなるためである。一方、上記ノイズが発生していなければ、上記のように位置カウンタＰのカウンタ値が「１」ずつ増加する期間に対応する期間中には、位置カウンタＰのカウンタ値に「−１」が加算されるはずである。このため、上記ノイズが発生したときの位置カウンタＰのカウンタ値は、ブラシレスモータ４７の実際の回転角に対応する値（実線）に対し、破線Ｌ４で示されるように「４」だけ大きくなる。
【００６８】
なお、位置センサＳ４，Ｓ５に断線やショートといった異常が発生した場合には、パルス信号が正常に出力されなくなるため、ブラシレスモータ４７が回転していても位置カウンタＰのカウンタ値はほとんど変化しなくなってしまう。従って、
以上のように、位置センサＳ４，Ｓ５から出力される信号にノイズが重畳し、そのノイズが位置センサＳ４，Ｓ５からのパルス信号のエッジと重なると、位置カウンタＰのカウンタ値がブラシレスモータ４７の実際の回転角と対応しなくなる。その結果、位置カウンタＰ（正確にはストロークカウンタＳ）のカウンタ値に基づき検出されるブラシレスモータ４７の実際の回転角、言い換えれば最大リフト量ＶＬ及び作用角ＩＮＣＡＭといったバルブ特性が不正確になる。従って、上記検出されたバルブ特性が目標とする特性となるようブラシレスモータ４７（可変動弁機構１４）を駆動したとき、実際のバルブ特性が目標とする特性からずれてしまい、機関運転に対して悪影響を与えるおそれがある。より詳しくは、吸気バルブ９の実際のバルブ特性を目標の特性に制御できないことから、当該バルブ特性に基づくエンジン１の吸入空気量の推定を正しく行えなくなり、ひいてはその推定される吸入空気量に基づきエンジン１を運転制御する際に、エンジン１のエミッション不良や加速不良を招くおそれがある。
【００６９】
そこで本実施形態では、位置カウンタＰのカウンタ値がブラシレスモータ４７の実際の回転角に対応する値となるように補正値を求め、その補正値を当該カウンタ値に加えることにより、同カウンタ値をブラシレスモータ４７の実際の回転角に対応する値に戻すようにしている。
【００７０】
より詳しくは、以下の［１］〜［３］の処理を実行することで、上述した位置カウンタＰのカウンタ値の補正を行い、同カウンタ値をブラシレスモータ４７の実際の回転角に対応する値に戻すようにしている。
【００７１】
［１］各電気角センサＳ１〜Ｓ３から出力されるパルス信号のエッジ発生毎に、今回のエッジ発生時における位置カウンタＰのカウンタ値Ｐi と前回のエッジ発生時における位置カウンタＰのカウンタ値Ｐi-1 との差（Ｐi −Ｐi-1 ）を算出する。
【００７２】
［２］電気角カウンタＥのカウンタ値の変化に基づきブラシレスモータ４７の回転状態が正回転中、逆回転中、及び正逆回転反転中のうちのいずれであるかを判断する。より詳しくは、各電気角センサＳ１〜Ｓ３からのパルス信号の前回のエッジ発生時と今回のエッジ発生時とにおける各々の電気角カウンタＥの変化方向に基づき、ブラシレスモータ４７が正回転中、逆回転中、及び正逆回転反転中のいずれであるかを判断する。すなわち、図１０に示すように、前回のエッジ発生時と今回のエッジ発生時との電気角カウンタＥの変化方向について、それらが共に順方向であればモータ正回転中である旨の判断を行い、それらが共に逆方向であればモータ逆回転中である旨の判断を行う。また、前回のエッジ発生時と今回のエッジ発生時との電気角カウンタＥの変化方向が順方向と逆方向とで異なっていれば、モータ正逆回転反転中である旨の判断を行う。
【００７３】
そして、ブラシレスモータ４７の回転状態に応じて差（Ｐi −Ｐi-1 ）の正常時の値である正常値Ｊを可変設定する。この正常値Ｊとは、カウンタ値がブラシレスモータ４７の実際の回転角に対応する値と一致しているときの上記差（Ｐi −Ｐi-1 ）である。そして、上述したように、電気角センサＳ１〜Ｓ３からのパルス信号のエッジ発生から次回のエッジ発生までには、位置センサＳ４，Ｓ５からのパルス信号のエッジが４回発生するようになっており、また、位置カウンタＰのカウンタ値は、モータ正回転中には増大、モータ逆回転中には減少するようになっている。従って、電気角センサＳ１〜Ｓ３からのパルス信号のエッジ間において位置センサＳ４，Ｓ５から出力されるパルス信号のエッジ数の適正値「ｎ」（本実施形態では「４」）と、ブラシレスモータ４７の回転状態に関係して、正常値Ｊはモータ正回転中であれば「ｎ（＝４）」とされる。また、モータ逆回転中であれば正常値Ｊは「−ｎ（＝−４）」とされる。そして、モータ正逆回転反転中であれば正常値Ｊは「０」とされる。
【００７４】
［３］上記正常値Ｊと算出された上記差（Ｐi −Ｐi-1 ）との差分である「Ｊ−（Ｐi −Ｐi-1 ）」を補正値Ｈとし、当該補正値Ｈ分の補正を位置カウンタＰのカウンタ値に加える。
【００７５】
この場合、上記ノイズの重畳に起因して位置カウンタＰのカウンタ値がブラシレスモータ４７の実際の回転角に対応しなくなり、その実際の回転角に対応する値からずれた状態になると、上記差（Ｐi −Ｐi-1 ）に位置カウンタＰのカウンタ値における上記実際の回転角に対応する値からのずれが反映される。すなわち、そのずれの分だけ上記差（Ｐi −Ｐi-1 ）が正常値Ｊからずれることになる。従って、上記［３］の処理で算出される補正値Ｈを位置カウンタＰのカウンタ値に加えることで、そのカウンタ値においてブラシレスモータ４７の実際の回転角に対応する値からのずれを無くすことができる。このため、位置カウンタＰのカウンタ値等に基づき検出されるバルブ特性が目標の特性となるようブラシレスモータ４７（可変動弁機構１４）を駆動したとき、実際のバルブ特性が目標とする特性からずれてしまい、機関運転に悪影響を与えてしまうといった不具合の発生を抑制することができる。
【００７６】
次に、上述した補正値Ｈによる位置カウンタＰのカウンタ値の補正の概要について、ブラシレスモータ４７の正回転中、逆回転中、及び正逆回転反転中に分けて詳しく説明する。
【００７７】
［モータ正回転中］
ブラシレスモータ４７の正回転中、図７（ａ）に示されるようにノイズが発生すると、図７（ｄ）に示されるように、位置カウンタＰのカウンタ値がブラシレスモータ４７の実際の回転角に対応する値（実線）に対し、二点鎖線で示されるように「４」だけ小さくなることは上述したとおりである。この場合、電気角カウンタＥのカウンタ値が「２」から「３」に変化する電気角センサＳ１〜Ｓ３からのパルス信号のエッジ発生時、上記差（Ｐi −Ｐi-1 ）が正常値Ｊ（この場合は「４」）に対し「−４」だけずれた「０」になる。
【００７８】
上記差（Ｐi −Ｐi-1 ）の正常値Ｊについては、モータ正回転中、位置カウンタＰのカウンタ値が位置センサＳ４，Ｓ５からのパルス信号のエッジ毎に「１」ずつ増加することから、電気角センサＳ１〜Ｓ３からのパルス信号のエッジ間において位置センサＳ４，Ｓ５から出力されるパルス信号のエッジ数ｎに関係して、「ｎ」に設定される。なお、この実施形態では、電気角センサＳ１〜Ｓ３からのパルス信号のエッジ間において位置センサＳ４，Ｓ５から出力されるパルス信号のエッジ数ｎが「４」であることから、モータ正回転中の上記正常値Ｊは「４」に設定される。
【００７９】
そして、電気角カウンタＥのカウンタ値が「２」から「３」に変化する電気角センサＳ１〜Ｓ３からのパルス信号のエッジ発生時、正常値Ｊと上記差（Ｐi −Ｐi-1 ）との差分「Ｊ−（Ｐi −Ｐi-1 ）」が上記補正値Ｈとして算出され（この場合、Ｈ＝「４」）、この補正値Ｈ分の補正が位置カウンタＰのカウンタ値（二点鎖線）に加えられる。その結果、図７（ｄ）に黒矢印で示されるように、位置カウンタＰのカウンタ値がブラシレスモータ４７の実際の回転角に対応する値（実線）へと変化する。これにより、位置カウンタＰのカウンタ値における上記実際の回転角に対応する値（実線）からのずれが修正される。
【００８０】
［モータ逆回転中］
ブラシレスモータ４７の逆回転中、図７（ａ）に示されるようにノイズが発生すると、図７（ｅ）に示されるように、位置カウンタＰのカウンタ値がブラシレスモータ４７の実際の回転角に対応する値（実線）に対し、二点鎖線で示されるように「４」だけ大きくなることは上述したとおりである。この場合、電気角カウンタＥのカウンタ値が「２」から「１」に変化する電気角センサＳ１〜Ｓ３からのパルス信号のエッジ発生時、上記差（Ｐi −Ｐi-1 ）が正常値Ｊ（この場合は「−４」）に対し「＋４」だけずれた「０」になる。
【００８１】
上記差（Ｐi −Ｐi-1 ）の正常値Ｊについては、モータ逆回転中、位置カウンタＰのカウンタ値が位置センサＳ４，Ｓ５からのパルス信号のエッジ毎に「１」ずつ減少することから、電気角センサＳ１〜Ｓ３からのパルス信号のエッジ間において位置センサＳ４，Ｓ５から出力されるパルス信号のエッジ数ｎに関係して、「−ｎ」に設定される。なお、この実施形態では、エッジ数ｎが「４」であることから、モータ逆回転中の上記正常値Ｊは「−４」に設定される。
【００８２】
そして、電気角カウンタＥのカウンタ値が「２」から「１」に変化する電気角センサＳ１〜Ｓ３からのパルス信号のエッジ発生時、正常値Ｊと上記差（Ｐi −Ｐi-1 ）との差分「Ｊ−（Ｐi −Ｐi-1 ）」が上記補正値Ｈとして算出され（この場合、Ｈ＝「−４」）、この補正値Ｈ分の補正が位置カウンタＰのカウンタ値（二点鎖線）に加えられる。その結果、図７（ｅ）に黒矢印で示されるように、位置カウンタＰのカウンタ値がブラシレスモータ４７の実際の回転角に対応する値（実線）へと変化する。これにより、位置カウンタＰのカウンタ値における上記実際の回転角に対応する値（実線）からのずれが修正される。
【００８３】
［モータ正逆回転反転中］
ブラシレスモータ４７の正逆回転反転中、例えば図８（ｂ）に破線Ｌ１で示されるようにノイズが発生すると、図８（ｄ）に破線Ｌ２で示されるように、位置カウンタＰのカウンタ値がブラシレスモータ４７の実際の回転角に対応する値（実線）に対し、二点鎖線で示されるように「４」だけ小さくなることは上述したとおりである。この場合、電気角カウンタＥのカウンタ値が「３」から「２」に変化する電気角センサＳ１〜Ｓ３からのパルス信号のエッジ発生時、上記差（Ｐi −Ｐi-1 ）が正常値Ｊ（この場合は「０」）に対し「−４」だけずれる。
【００８４】
上記差（Ｐi −Ｐi-1 ）の正常値Ｊについては、位置カウンタＰのカウンタ値がモータ正回転中には位置センサＳ４，Ｓ５からのパルス信号のエッジ毎に「１」ずつ増加し、モータ逆回転中には上記エッジ毎に「１」ずつ減少するため、モータ正逆回転反転中には「０」に設定される。
【００８５】
そして、電気角カウンタＥのカウンタ値が「３」から「２」に変化する電気角センサＳ１〜Ｓ３からのパルス信号のエッジ発生時、正常値Ｊと上記差（Ｐi −Ｐi-1 ）との差分「Ｊ−（Ｐi −Ｐi-1 ）」が上記補正値Ｈとして算出され（この場合、Ｈ＝「４」）、この補正値Ｈ分の補正が位置カウンタＰのカウンタ値（破線Ｌ２）に加えられる。その結果、図８（ｄ）に上向き黒矢印で示されるように、位置カウンタＰのカウンタ値がブラシレスモータ４７の実際の回転角に対応する値（実線）へと変化する。これにより、位置カウンタＰのカウンタ値における上記実際の回転角に対応する値（実線）からのずれが修正される。
【００８６】
また、上記ブラシレスモータの正逆回転反転中、例えば図８（ｂ）に破線Ｌ３で示されるようにノイズが発生すると、図８（ｄ）に破線Ｌ４で示されるように、位置カウンタＰのカウンタ値がブラシレスモータ４７の実際の回転角に対応する値（実線）に対し、二点鎖線で示されるように「４」だけ大きくなることは上述したとおりである。この場合、電気角カウンタＥのカウンタ値が「３」から「２」に変化する電気角センサＳ１〜Ｓ３からのパルス信号のエッジ発生時、上記差（Ｐi −Ｐi-1 ）が正常値Ｊ（この場合は「０」）に対し「＋４」だけずれる。
【００８７】
この場合も、電気角カウンタＥのカウンタ値が「３」から「２」に変化する電気角センサＳ１〜Ｓ３からのパルス信号のエッジ発生時、正常値Ｊと上記差（Ｐi −Ｐi-1 ）との差分「Ｊ−（Ｐi −Ｐi-1 ）」が上記補正値Ｈとして算出され（この場合、Ｈ＝「−４」）、この補正値Ｈ分の補正が位置カウンタＰのカウンタ値（破線Ｌ４）に加えられる。その結果、図８（ｄ）に下向き黒矢印で示されるように、位置カウンタＰのカウンタ値がブラシレスモータ４７の実際の回転角に対応する値（実線）へと変化する。これにより、位置カウンタＰのカウンタ値における上記実際の回転角に対応する値（実線）からのずれが修正される。
【００８８】
なお、位置センサＳ４，Ｓ５に断線やショートといった異常が発生した場合には、パルス信号が正常に出力されなくなるため、パルス信号を計数して得られる位置カウンタＰのカウンタ値は、ブラシレスモータ４７の実際の回転角に対応した値からずれてしまう。しかし、このような異常によるずれの発生時であっても、上述した正常値Ｊと差（Ｐi −Ｐi-1 ）との差分「Ｊ−（Ｐi −Ｐi-1 ）」を補正値Ｈとして算出し、この補正値Ｈ分の補正が位置カウンタＰのカウンタ値に加えることにより、位置カウンタＰのカウンタ値はブラシレスモータ４７の実際の回転角に対応する値へと変化する。従って、そうした異常発生時であっても、上記態様にてカウンタ値を補正することにより、位置カウンタＰのカウンタ値に対して実際の回転角に対応する値からのずれを修正することができる。
【００８９】
次に、上述した補正値Ｈ分の補正を位置カウンタＰのカウンタ値に加えるための位置カウンタ補正処理について、図１１及び図１２に示す処理手順を参照して説明する。この位置カウンタ補正処理は、電子制御装置５０を通じて、位置センサＳ４，Ｓ５からのパルス信号のエッジ間隔に対応する時間間隔よりも短い間隔をもって周期的に実行される。
【００９０】
本処理では、電気角センサＳ１〜Ｓ３からのパルス信号のエッジが発生したときに（図１１のＳ２０１：ＹＥＳ）、位置センサＳ４，Ｓ５から出力されたパルス信号のエッジを計数した位置カウンタＰのカウンタ値が電子制御装置５０内のメモリに記憶される（Ｓ２０２）。
【００９１】
そして、今回のエッジ発生時のカウンタ値Ｐi と前回のエッジ発生時のカウンタ値Ｐi-1 との差（Ｐi −Ｐi-1 ）が算出される（Ｓ２０３）。
続いて、ブラシレスモータ４７の回転状態に応じて、上記差（Ｐi −Ｐi-1 ）の正常値Ｊが可変設定される。具体的には、正常値Ｊは、モータ正回転中（図１２のＳ２０４：ＹＥＳ）であれば「４」に設定され（Ｓ２０６）、モータ逆回転中（Ｓ２０５：ＹＥＳ）であれば「−４」に設定され（Ｓ２０７）、モータ正逆回転反転中（Ｓ２０５：ＮＯ）であれば「０」に設定される（Ｓ２０８）。
【００９２】
そして、上記差（Ｐi −Ｐi-1 ）が正常値Ｊと等しいか否かに基づき、位置カウンタＰのカウンタ値に異常が発生しているか否かが判断される（Ｓ２０９）。ここで差（Ｐi −Ｐi-1 ）が正常値Ｊでなく肯定判定がなされると、位置カウンタＰのカウンタ値における異常発生が検出される（Ｓ２１０）。
【００９３】
このようにカウンタ値に異常ありとの判定がなされると、正常値Ｊと上記差（Ｐi −Ｐi-1 ）との差分「Ｊ−（Ｐi −Ｐi-1 ）」が補正値Ｈとして算出される（Ｓ２１１）。
また、ステップＳ２０９で差（Ｐi −Ｐi-1 ）が正常値Ｊであり否定判定がなされると、位置カウンタＰのカウンタ値が正常であることが検出される（Ｓ２１２）。このときには、補正値Ｈが「０」に設定される（Ｓ２１３）。
【００９４】
上記のように補正値Ｈが算出されると、その補正値Ｈが位置カウンタＰのカウンタ値に加えられる（Ｓ２１４）。これにより、位置カウンタＰのカウンタ値がブラシレスモータ４７の実際の回転角に対応した値からずれていたとしても、そのずれは修正される。
【００９５】
ところで、上記態様にて位置カウンタＰのカウンタ値を補正すると、その補正タイミングにおいてカウンタ値が変化する。そのため、補正されたカウンタ値（以下、補正カウンタ値ＰＨという）の所定期間内における変化量に基づいてブラシレスモータ４７の回転速度を算出すると、カウンタ値の補正変化分が算出される回転速度に反映されてしまい、実際の回転速度と検出される回転速度とが異なってしまうおそれがある。そこで、本実施形態では、位置カウンタＰのカウンタ値として、上記補正カウンタ値ＰＨの他に、上述した位置カウンタ補正処理がなされていないカウンタ値Ｐｉも保持するようにしている。すなわち位置センサＳ４，Ｓ５から出力されたパルス信号のエッジをそのまま計数し続けた値であって、上述したようなずれが発生した場合にはそのずれも含んだカウンタ値を保持するようにもしている。そして、このカウンタ値Ｐｉの所定期間内における変化量に基づいてブラシレスモータ４７の回転速度を算出するようにしている。
【００９６】
ここで、位置センサＳ４，Ｓ５から出力されるパルス信号にノイズが重畳すると、位置センサＳ４，Ｓ５から出力されるパルス信号のエッジを計数して得られる位置カウンタＰのカウンタ値Ｐｉが、ブラシレスモータ４７の実際の回転角に対応した値からずれてしまう。その結果、同カウンタ値Ｐｉの変化量に基づいて検出されるブラシレスモータ４７の回転速度は、実際の回転速度からずれてしまう。
【００９７】
また、位置センサＳ４，Ｓ５に断線やショートといった異常が一時的であれ発生すると、パルス信号が正常に出力されなくなるため、ブラシレスモータ４７が回転していてもカウンタ値Ｐｉはほとんど変化しなくなってしまう。従って、この場合にも、パルス信号のエッジを計数して得られるカウンタ値Ｐｉが、ブラシレスモータ４７の実際の回転角に対応した値からずれてしまい、その結果、同カウンタ値Ｐｉの変化量に基づいて検出されるブラシレスモータ４７の回転速度は、実際の回転速度からずれてしまう。
【００９８】
このように、カウンタ値Ｐｉの変化量から算出される回転速度と実際のブラシレスモータ４７の回転速度との間にずれが生じると、上述した通電相の進角処理を実行する際、進角量を正確に設定することができなくなる。すなわち、ブラシレスモータ４７の回転速度に応じた適切な進角量に対して、実際に設定される進角量は、さらに進角側の値にされたり、遅角側の値にされてしまう。このように進角量を正確に設定することができなくなると、ブラシレスモータ４７の出力トルクは低下してしまうおそれがあり、ひいては可変動弁機構１４の駆動を通じたバルブ特性の変更に際し、その応答性が低下してしまうおそれもある。
【００９９】
ただし、カウンタ値Ｐｉとブラシレスモータ４７の実際の回転角に対応した正しいカウンタ値との間にずれが生じている場合であっても、そのずれ量が一定であれば、同一の期間内において、正しいカウンタ値の変化量と実際に計数されたカウンタ値Ｐｉの変化量とは同じ値になる。従って、ずれ量が一定の値に維持されている場合、すなわちずれ量が変化していない場合には、ずれが生じているカウンタ値の変化量に基づいて検出されるブラシレスモータ４７の回転速度と、該ブラシレスモータ４７の実際の回転速度とは一致する。
【０１００】
例えば、図１３に示すように、ブラシレスモータの正回転中にあって、位置センサＳ４からの信号にノイズが重畳し（タイミングｔ１）、そのノイズが位置センサＳ５からのパルス信号の立ち下がりエッジと重なった場合、カウンタ値Ｐｉ（実線）は、前述したように「１」ずつ減少していく。そして、最終的にはブラシレスモータ４７の実際の回転角に対応する値（ここでは、上記位置カウンタ補正処理にて補正された直後のカウンタ値であり、以下、補正カウンタ値ＰＨ（一点鎖線にて図示）という）に対し、「４」だけ小さくなる（タイミングｔ２）。そしてその後は、ブラシレスモータ４７の実際の回転角に対応する値、すなわち補正カウンタ値ＰＨの変化に同期して「１」ずつ増大していく。この場合、カウンタ値Ｐｉと、ブラシレスモータ４７の実際の回転角に対応した正しいカウンタ値との間にずれが生じるものの、そのずれ量ΔＰについては「―４」といった一定の値を維持しつつ、カウンタ値Ｐｉは変化していく。このようにずれ量ΔＰが一定値に維持されている場合、すなわちずれ量ΔＰが変化していない場合には、所定期間内、例えば電気角カウンタＥの値が「３」となっている間（タイミングｔ２〜タイミングｔ３）において、ブラシレスモータ４７の実際の回転角の変化量ＨＲと、位置カウンタＰのカウンタ値Ｐｉの変化量ＨＣとは同じになる。従って、ずれ量ΔＰが変化していない場合には、ずれが生じているカウンタ値Ｐｉの変化量ＨＣに基づいて検出されるブラシレスモータ４７の回転速度と、該ブラシレスモータ４７の実際の回転速度とは一致する。
【０１０１】
逆に、上記ずれ量ΔＰが変化している場合には、正しいカウンタ値の変化量と実際に計数されたカウンタ値の変化量とは異なった値になるため、ずれを含んだカウンタ値Ｐｉの変化量に基づいて検出されるブラシレスモータ４７の回転速度と、該ブラシレスモータ４７の実際の回転速度とは一致しなくなる。
【０１０２】
例えば、図１４に示すように、先の図１３と同様な態様にて位置センサＳ４からの信号にノイズが重畳した後、再び同様な態様にてノイズが重畳した場合（タイミングｔ３）、カウンタ値Ｐｉは、再び「１」ずつ減少していく。そして、最終的にはブラシレスモータ４７の実際の回転角に対応する値（ここでも、上記位置カウンタ補正処理にて補正された直後の補正カウンタ値ＰＨ（一点鎖線））に対し、「８」だけ小さくなる（タイミングｔ４）。このようにずれ量ΔＰが「―４」から「―８」に変化する場合、すなわちずれ量ΔＰが変化する場合には、所定期間内、例えば電気角カウンタＥの値が「３」となっている間（タイミングｔ２〜タイミングｔ４）において、ブラシレスモータ４７の実際の回転角の変化量ＨＲと、カウンタ値Ｐｉの変化量ＨＣとは異なるようになる。従って、ずれ量ΔＰが変化している場合には、ずれを含むカウンタ値Ｐｉの変化量ＨＣに基づいて検出されるブラシレスモータ４７の回転速度と、該ブラシレスモータ４７の実際の回転速度とは一致しなくなる。
【０１０３】
このように、所定期間内におけるカウンタ値Ｐｉの変化量に基づいてブラシレスモータ４７の回転速度を検出する場合にあって、同カウンタ値Ｐｉのずれ量ΔＰが変化している場合には、カウンタ値Ｐｉの変化量に基づいて検出されるブラシレスモータ４７の回転速度が誤って検出されていると判断することができる。
【０１０４】
なお、ブラシレスモータ４７の逆回転中にあっても、カウンタ値Ｐｉのずれ量ΔＰが変化している場合には、カウンタ値Ｐｉの変化量に基づいて検出されるブラシレスモータ４７の回転速度が誤って検出されていると判断することができる。すなわち、ブラシレスモータ４７の逆回転中にあっては、図１３に示したずれ量ΔＰは「４」となり、図１４に示したずれ量ΔＰは「４」から「８」に変化する点が異なるものの、ブラシレスモータ４７の正回転中と同様な原理に基づき、検出されたブラシレスモータ４７の回転速度が誤っているか否かを判定することができる。
【０１０５】
また、位置センサＳ４，Ｓ５に断線やショートといった異常が発生し、カウンタ値Ｐｉがほとんど変化しなくなってしまった場合でも、同様な原理に基づき、カウンタ値Ｐｉのずれ量ΔＰが変化している場合には、カウンタ値Ｐｉの変化量に基づいて検出されるブラシレスモータ４７の回転速度が誤って検出されていると判断することができる。
【０１０６】
そこで、本実施形態では、カウンタ値Ｐｉとブラシレスモータ４７の実際の回転角に対応したカウンタ値とのずれ量ΔＰを算出し、算出されたずれ量ΔＰが変化している場合には、検出されたブラシレスモータ４７の回転速度が誤っていると判断して上記進角処理の実行を禁止するようにしている。そして、これにより、ブラシレスモータ４７の回転速度に基づいて通電相の進角処理を行う場合にあって、誤った回転速度が検出されたときに生じやすい当該ブラシレスモータ４７の出力トルク低下を抑えるようにしている。
【０１０７】
また、ずれ量ΔＰが変化しているか否かに基づいて進角処理を実行するか否かを判定することにより、カウンタ値Ｐｉにずれが生じていたとしても、そのずれ量ΔＰが変化していない場合には通電相の進角処理が実行される。従って、カウンタ値Ｐｉにずれが生じている場合に通電相の進角処理を禁止する場合と比較して、同進角処理の実行機会を増大させることも可能となっている。
【０１０８】
図１５に、上述した進角処理の可否判定処理についてその処理手順を示す。この処理は、電子制御装置５０を通じて、所定周期毎に繰り返し実行される。
本処理が開始されるとまず、補正カウンタ値ＰＨが算出された直後か否かが判定される（Ｓ３００）。ここでは、例えば補正カウンタ値ＰＨが算出された後（先の図１２におけるステップＳ２１４の処理が行われた後）、位置センサＳ４，Ｓ５からのパルス信号によるカウンタ値の変化が起きていない場合、すなわち補正カウンタ値ＰＨが算出された後、その値が変化していない場合に肯定判定される。このように補正カウンタ値ＰＨが算出された直後であれば、その値には上記ノイズの重畳による誤差や位置センサＳ４，Ｓ５の断線・ショートによる誤差が含まれていないため、現在の補正カウンタ値ＰＨが、ブラシレスモータ４７の実際の回転角に対応する正しい値になっていると判断することができる。
【０１０９】
そして、補正カウンタ値ＰＨが算出された直後でない場合には（Ｓ３００：ＮＯ）、現在の補正カウンタ値ＰＨが、ブラシレスモータ４７の実際の回転角に対応する正しい値になっていない可能性があるため、本処理は一旦終了される。
【０１１０】
一方、補正カウンタ値ＰＨが算出された直後である場合には（Ｓ３００：ＹＥＳ）、ずれ量ΔＰが算出される（Ｓ３１０）。ここでは、補正カウンタ値ＰＨと現在のカウンタ値Ｐｉとの差がずれ量ΔＰとして算出される。
【０１１１】
そして、今回の実行周期で算出された上記ずれ量ΔＰと前回の実行周期で算出されたずれ量ΔＰとが異なっているか否か、すなわちずれ量ΔＰが変化しているか否かが判定される（Ｓ３２０）。そして、今回の実行周期で算出された上記ずれ量ΔＰと前回の実行周期で算出されたずれ量ΔＰとが異なっている場合には（Ｓ３２０：ＹＥＳ）、所定期間内のカウンタ値Ｐｉの変化量に基づいて算出されるブラシレスモータ４７の回転速度が誤って検出されているため、上記進角処理の実行が禁止される（Ｓ３３０）。そして、本処理は一旦終了される。
【０１１２】
一方、今回の実行周期で算出された上記ずれ量ΔＰと前回の実行周期で算出されたずれ量ΔＰとが異なっていない場合には（Ｓ３２０：ＮＯ）、所定期間内のカウンタ値Ｐｉの変化量に基づいて算出されるブラシレスモータ４７の回転速度が正しく検出されているため、上記進角処理の実行が許可され（Ｓ３４０）、本処理は一旦終了される。
【０１１３】
以上説明したように、本実施形態によれば、以下のような作用効果を得ることができる。
（１）ブラシレスモータ４７の回転に伴って位置センサＳ４，Ｓ５から出力されるパルス信号のエッジを計数したカウンタ値Ｐｉを算出し、所定期間内におけるカウンタ値Ｐｉの変化量に基づきブラシレスモータ４７の回転速度を検出するようにしている。そして、検出された回転速度に基づいてブラシレスモータ４７の通電相の切り換え時期を早める進角処理を行うようにしている。そして、カウンタ値Ｐｉとブラシレスモータ４７の実際の回転角に対応したカウンタ値とのずれ量ΔＰを算出し、算出されたずれ量ΔＰが変化している場合には、検出されたブラシレスモータ４７の回転速度が誤っていると判断して上記進角処理の実行を禁止するようにしている。従って、ブラシレスモータ４７の回転速度に基づいて通電相の進角処理を行う場合にあって、誤った回転速度が検出されたときに生じやすい当該ブラシレスモータ４７の出力トルク低下を好適に抑えることができるようになる。また、カウンタ値Ｐｉにずれが生じていたとしても、そのずれ量ΔＰが変化していない場合には通電相の進角処理が実行される。従って、カウンタ値Ｐｉにずれが生じている場合に通電相の進角処理を禁止する場合と比較して、同進角処理の実行機会を増大させることも可能となる。
【０１１４】
（２）各電気角センサＳ１〜Ｓ３から出力されるパルス信号の前回のエッジ発生時における位置カウンタのカウンタ値Ｐi-1 と、今回のエッジ発生時における位置カウンタのカウンタ値Ｐi との差（Ｐi-1 −Ｐi ）には、位置カウンタＰのカウンタ値における上記ブラシレスモータの実際の回転角に対応する値からのずれが反映される。そこで、上記実施形態では、その差（Ｐi −Ｐi-1 ）と当該差（Ｐi −Ｐi-1 ）の正常値Ｊとの差分を補正値Ｈとして設定し、上記カウンタ値を補正するようにしている。従って、同カウンタ値におけるブラシレスモータ４７の実際の回転角に対応する値からのずれは適切に修正され、補正後のカウンタ値は、ブラシレスモータ４７の実際の回転角に対応した正しいカウンタ値になる。
【０１１５】
他方、位置センサＳ４，Ｓ５から出力されたパルス信号のエッジをそのまま計数し続けたカウンタ値Ｐｉ、いわば補正されていない同カウンタ値Ｐｉには上述したようなずれが含まれている。そこで、上記態様にて補正された補正カウンタ値ＰＨと上記カウンタ値Ｐｉとの差をずれ量ΔＰとして算出するようにしており、これによりブラシレスモータ４７の回転速度の検出に利用されるカウンタ値Ｐｉと、同ブラシレスモータ４７の実際の回転角に対応する正しいカウンタ値とのずれ量を適切に算出することができるようになる。
【０１１６】
（３）位置カウンタＰのカウンタ値は、ブラシレスモータ４７の正回転中には位置センサＳ４，Ｓ５からのパルス信号のエッジ毎に「１」ずつ増加してゆき、ブラシレスモータ４７の逆回転中には位置センサＳ４，Ｓ５からのパルス信号のエッジ毎に「１」ずつ減少してゆく。このため、位置カウンタＰのカウンタ値が正常であるとき、上記差（Ｐi −Ｐi-1 ）は、モータ正回転中であれば上記エッジ数ｎ（＝４）に対応して「４」となり、モータ逆回転中であれば「−４」となり、モータ正逆回転反転中であれば「０」となる。そこで本実施形態では、差（Ｐi −Ｐi-1 ）の正常値Ｊを、ブラシレスモータ４７の回転状態に応じて「４」、「−４」、及び「０」の間で切り換えるようにしている。従って、その正常値Ｊに対する上記差（Ｐi −Ｐi-1 ）のずれ量「Ｊ−（Ｐi −Ｐi-1 ）」を、ブラシレスモータ４７の回転状態に関わらず適切に算出することができるようになる。
【０１１７】
（４）エンジン１の吸気バルブ９についてそのバルブ特性を可変とする可変動弁機構１４を上記ブラシレスモータ４７で駆動するようにしている。このようにエンジン１の可変動弁機構１４をブラシレスモータ４７で駆動する場合にあって、当該ブラシレスモータ４７の回転速度が誤って検出されると、上述したような理由により同モータ４７の出力トルクが低下し、これにより、可変動弁機構１４の駆動を通じたバルブ特性の変更に際し、その応答性が低下してしまうおそれがある。この点、本実施形態によれば、誤った回転速度が検出されたときに生じやすいブラシレスモータ４７の出力トルク低下を抑えることができるようになるため、そうした応答性の低下も好適に抑えることができるようになる。
【０１１８】
なお、上記各実施形態は以下のように変更して実施することもできる。
・ずれ量ΔＰを算出するために、補正カウンタ値ＰＨとカウンタ値Ｐｉとの差を求めるようにしたが、この他の態様にてカウンタ値Ｐｉとブラシレスモータ４７の実際の回転角に対応したカウンタ値とのずれ量を算出する場合にも、本発明は同様に適用することができる。例えば、上記実施形態にあっては、電気角センサＳ１〜Ｓ３からのパルス信号のエッジ発生から次回のエッジ発生までに、位置センサＳ４，Ｓ５からのパルス信号のエッジが４回発生するようになっている。従って、上述したようなノイズの重畳や、位置センサＳ４，Ｓ５の異常が発生していない場合、電気角センサＳ１〜Ｓ３からのパルス信号のエッジ発生から次回のエッジ発生までに、換言すれば電気角カウンタＥが変化するたびに、位置カウンタＰのカウンタ値は、モータの正回転中にあっては「４」だけ増加する。また、モータの逆回転中にあっては「４」だけ減少する。そこで、各電気角センサＳ１〜Ｓ３からパルス信号のエッジが発生するたびに、モータの回転方向に応じて「４」ずつ増加、あるいは減少するカウンタ値を用意する。このようにすれば、そのカウンタ値は、各電気角センサＳ１〜Ｓ３からパルス信号のエッジが発生した時点において、ブラシレスモータ４７の実際の回転角に対応した正しいカウンタ値となる。従って、このカウンタ値と上記カウンタ値Ｐｉとの差を求めれば、上記ずれ量ΔＰと同一の値を求めることができる。
【０１１９】
・位置カウンタＰのカウンタ値に基づき検出されるブラシレスモータ４７の回転角が、換言すれば現在の吸気バルブ９のバルブ特性が目標とする特性にされているときに、上記補正値Ｈをそのままカウンタ値に加算して、同カウンタ値を実際のモータ回転角に対応する値に補正する場合には、次のような不都合が生じるおそれがある。すなわち、その補正直後には位置カウンタＰのカウンタ値に基づき検出されるバルブ特性が目標の特性から大きくずれてしまうため、その検出されるバルブ特性を目標の特性にすべくブラシレスモータ４７（可変動弁機構１４）が駆動制御され、バルブ特性が目標の特性に向けて急変させられる。その結果、エンジン１の吸入空気量が急変し、トルクショックが発生するおそれがある。そこで、カウンタ値の補正に際しては、位置カウンタＰのカウンタ値に補正値を徐々に加えていく、より詳しくは、予め定められた間隔毎に補正値Ｈの絶対値よりも小さい所定値Ｈａずつ位置カウンタＰのカウンタ値を補正し、それを間隔毎の所定値Ｈａの合計値が補正値Ｈの絶対値と等しくなるまで続けるようにすることが望ましい。このようにすれば、補正後の位置カウンタＰのカウンタ値に基づき検出されるバルブ特性が目標の特性から急速にずれることを抑制することができる。
【０１２０】
・電気角センサ数の変更や同センサの検出対象である多極マグネットの極数の変更を通じて、各電気角センサからのパルス信号のエッジ間隔を変更することも可能である。
・位置センサ数の変更や同センサの検出対象である多極マグネットの極数の変更を通じて各位置センサからのパルス信号のエッジ間隔を変更することも可能である。
【０１２１】
・電気角センサＳ１〜Ｓ３からのパルス信号のエッジ間において位置センサＳ４，Ｓ５から出力されるパルス信号のエッジ数ｎを「４」に設定したが、その値についてはブラシレスモータ４７の回転角検出精度を確保し得る位置センサＳ４，Ｓ５からのパルス信号のエッジ間隔に対応する値であればよく、「２」以上の整数値に適宜変更可能である。このようにエッジ数ｎを変更する際には、位置カウンタの数や位置、及び、それら位置センサの検出対象である多極マグネットの極数が適宜変更されることとなる。
【０１２２】
・ブラシレスモータ４７と一体回転する多極マグネットの磁気に応じてパルス信号を出力する位置センサＳ４，Ｓ５を設ける代わりに、ブラシレスモータ４７の回転に伴いパルス信号を出力する他のセンサ、例えば光学式のセンサを設けるようにしてもよい。この場合、ブラシレスモータ４７と一体回転するスリット付円板の厚さ方向側方にそれぞれ発光素子と受光素子を備える光学式のセンサを周方向に複数設け、ブラシレスモータ４７の回転時に当該各センサからパルス信号を出力させるようにする。そして、この場合の各センサからのパルス信号の出力パターンについては、スリット付円板におけるスリットのパターン、及び、光学式のセンサの数や位置によって調整することが可能である。
【０１２３】
・上記実施形態では、可変動弁機構１４にて吸気バルブ９のバルブ特性を変更するようにしたが、排気バルブ１０のバルブ特性を変更する場合、あるいは吸気バルブ９及び排気バルブのバルブ特性を変更する場合にも同様に適用することができる。
【０１２４】
・上各実施形態で説明した可変動弁機構１４は一例であり、他の構成で吸気バルブ９や排気バルブ１０といった機関バルブのバルブ特性（例えば、開時期、閉時期、開弁期間、あるいは最大リフト量等）を可変とする可変動弁機構であっても、本発明は同様に適用することができる。
【０１２５】
・可変動弁機構１４を駆動するブラシレスモータ４７に本発明を適用したが、それ以外の各種機構を駆動するブラシレスモータの制御装置に本発明を適用することもできる。
【図面の簡単な説明】
【０１２６】
【図１】本発明にかかるモータの制御装置を具体化した一実施形態にあって、これが適用されるエンジンのシリンダヘッド周りの構造を示す拡大断面図。
【図２】同実施形態において、可変動弁機構を駆動する駆動機構、及びその駆動機構を制御する制御装置を示す模式図。
【図３】（ａ）は、ブラシレスモータの回転角の変化に対する電気角センサＳ１のパルス信号の波形、（ｂ）は、ブラシレスモータの回転角の変化に対する電気角センサＳ２のパルス信号の波形、（ｃ）は、ブラシレスモータの回転角の変化に対する電気角センサＳ３のパルス信号の波形、（ｄ）は、ブラシレスモータの回転角の変化に対する位置センサＳ４のパルス信号の波形、（ｅ）は、ブラシレスモータの回転角の変化に対する位置センサＳ５のパルス信号の波形、（ｆ）は、ブラシレスモータの回転角の変化に対する電気角カウンタＥのカウンタ値の推移、（ｇ）は、ブラシレスモータの回転角の変化に対する位置カウンタＰのカウンタ値の推移、（ｈ）は、ブラシレスモータの回転角の変化に対するストロークカウンタＳのカウンタ値の推移を示すタイミングチャート。
【図４】同実施形態において、電気角カウンタＥ、位置カウンタＰ、及びストロークカウンタＳのカウンタ値を変化させるカウント処理の手順を示すフローチャート。
【図５】（ａ）は電気角センサＳ１〜Ｓ３からの信号に応じて変化する電気角カウンタＥのカウンタ値の変化態様を示す表。（ｂ）は位置センサＳ４，Ｓ５からの信号に応じた位置カウンタＰのカウンタ値の加減算態様を示す表。
【図６】（Ａ）は、通電相の切り換え遅れについてその一例を示すタイミングチャート。（Ｂ）は、通電相の切り換え遅れに対処するべく実行される進角処理についてその一態様を示すタイミングチャート。
【図７】ブラシレスモータの正回転中及び逆回転中にノイズが重畳した場合の態様、及び位置カウンタＰのカウンタ値に対する補正態様を示すタイミングチャートであって、（ａ）は、ブラシレスモータの回転角の変化に対する位置センサＳ４からのパルス信号の波形、（ｂ）は、ブラシレスモータの回転角の変化に対する位置センサＳ５からのパルス信号の波形、（ｃ）は、ブラシレスモータの回転角の変化に対する電気角カウンタＥのカウンタ値の推移、（ｄ）は、正回転中のブラシレスモータの回転角の変化に対する位置カウンタＰのカウンタ値の推移、（ｅ）は、逆回転中のブラシレスモータの回転角の変化に対する位置カウンタＰのカウンタ値の推移を示すタイミングチャート。
【図８】ブラシレスモータの正逆回転反転中にノイズが重畳した場合の態様、及び位置カウンタＰのカウンタ値に対する補正態様を示すタイミングチャートであって、（ａ）は、時間経過に対する位置センサＳ４からのパルス信号の波形、（ｂ）は、時間経過に対する位置センサＳ４からのパルス信号の波形、（ｃ）は、時間経過に対する電気角カウンタＥのカウンタ値の推移、（ｄ）は、時間経過に対する位置カウンタＰのカウンタ値の推移を示すタイムチャート。
【図９】（ａ）は図７（ｄ）のタイミングａ，ｂ，ｃでの位置センサＳ４，Ｓ５からの信号に応じた位置カウンタＰのカウンタ値の加減算態様を示す表、（ｂ）は図７（ｅ）のタイミングｃ，ｂ，ａでの位置センサＳ４，Ｓ５からの信号に応じた位置カウンタＰのカウンタ値の加減算態様を示す表。
【図１０】電気角センサＳ１〜Ｓ３からのパルス信号における前回のエッジ発生時と今回のエッジ発生時との電気角カウンタＥの変化方向と、ブラシレスモータの回転状態との関係を示す表。
【図１１】位置カウンタＰのカウンタ値を正しい値に戻すための補正手順を示すフローチャート。
【図１２】位置カウンタＰのカウンタ値を正しい値に戻すための補正手順を示すフローチャート。
【図１３】正しいカウンタ値の変化量と実際に計数されたカウンタ値の変化量について、カウンタ値のずれ量が変化しない場合の態様を示すタイミングチャート。
【図１４】正しいカウンタ値の変化量と実際に計数されたカウンタ値の変化量について、カウンタ値のずれ量が変化する場合の態様を示すタイミングチャート。
【図１５】進角可否判定処理についてその手順を示すフローチャート。
【符号の説明】
【０１２７】
１…エンジン、２…シリンダヘッド、３…シリンダブロック、５…ピストン、６…燃焼室、７…吸気通路、８…排気通路、９…吸気バルブ、１０…排気バルブ、１１…吸気カムシャフト、１１ａ…吸気カム、１２…排気カムシャフト、１２ａ…排気カム、１４…可変動弁機構、１５…ロッカシャフト、１６…コントロールシャフト、１７…入力アーム、１８…出力アーム、１９…ローラ、２０…コイルスプリング、２１…ロッカアーム、２２…ラッシュアジャスタ、２３…ローラ、２４…バルブスプリング、４７…ブラシレスモータ、４８…変換機構、５０…電子制御装置（切り換え手段、カウント手段、速度検出手段、進角手段、算出手段、禁止手段、補正手段）、５１…アクセルセンサ、５２…スロットルセンサ、５３…エアフロメータ、５４…クランク角センサ、５５…イグニッションスイッチ、Ｓ１〜Ｓ３…電気角センサ、Ｓ４，Ｓ５…位置センサ。
【図１】
2007185006.tif 000003
【図２】
2007185006.tif 000004
【図３】
2007185006.tif 000005
【図４】
2007185006.tif 000006
【図５】
2007185006.tif 000007
【図６】
2007185006.tif 000008
【図７】
2007185006.tif 000009
【図８】
2007185006.tif 000010
【図９】
2007185006.tif 000011
【図１０】
2007185006.tif 000012
【図１１】
2007185006.tif 000013
【図１２】
2007185006.tif 000014
【図１３】
2007185006.tif 000015
【図１４】
2007185006.tif 000016
【図１５】
2007185006.tif 000017