(57)【要約】【課題】位置センサからのパルス信号を係数する位置カウンタのカウンタ値がモータの実際の回転角に対応する値からずれたとしても、そのずれを新たなセンサ等を設けることなく無くすことのできるモータ制御装置を提供する。【解決手段】ブラシレスモータの各電気角センサからのパルス信号のエッジ発生毎に、前回のエッジ発生時の位置カウンタＰのカウンタ値Ｐi-1 と今回のエッジ発生時の位置カウンタＰのカウンタ値Ｐi との差（Ｐi −Ｐi-1 ）が算出される。この差には、位置カウンタＰのカウンタ値がブラシレスモータの実際の回転角に対応する値からずれた状態になったとき、当該ずれが反映されることとなる。すなわち、そのずれの分だけ上記差が正常値Ｊからずれることになる。そして、この正常値Ｊに対する上記差のずれ量である補正値ΔＰを用いて位置カウンタＰのカウンタ値が補正される。【選択図】      図６
2007043853.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 と、前回のエッジ発生時における位置カウンタのカウンタ値Ｐ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 −Ｐ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 −Ｐ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 −Ｐ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 ）」の大きさの最大値であればよく、同最大値が「２」以外の値となる場合には、その値を判定値ｈとすることが好ましい。
【００８９】
・電気角センサ数の変更や同センサの検出対象である多極マグネットの極数の変更を通じて、各電気角センサからのパルス信号のエッジ間隔を変更することも可能である。
・位置センサ数の変更や同センサの検出対象である多極マグネットの極数の変更を通じて各位置センサからのパルス信号のエッジ間隔を変更することも可能である。
【００９０】
・本実施形態では、電気角センサＳ１〜Ｓ３からのパルス信号のエッジ間において位置センサＳ４，Ｓ５から出力されるパルス信号のエッジ数の適正値「ｎ」を「４」に設定したが、本発明はこれに限定されない。すなわち、エッジ数ｎについては、ブラシレスモータ４７の回転角検出精度を確保し得る位置センサＳ４，Ｓ５からのパルス信号のエッジ間隔に対応する値であればよく、「２」以上の整数値に適宜変更可能である。このようにエッジ数ｎを変更する際には、位置カウンタの数や位置、及び、それら位置センサの検出対象である多極マグネットの極数が適宜変更されることとなる。
【００９１】
・ブラシレスモータ４７と一体回転する多極マグネットの磁気に応じてパルス信号を出力する位置センサＳ４，Ｓ５を設ける代わりに、ブラシレスモータ４７の回転に伴いパルス信号を出力する他のセンサ、例えば光学式のセンサを設けることも考えられる。この場合、ブラシレスモータ４７と一体回転するスリット付円板の厚さ方向側方にそれぞれ発光素子と受光素子を備える光学式のセンサを周方向に複数設け、ブラシレスモータ４７の回転時に当該各センサからパルス信号を出力させるようにすることが考えられる。この場合の各センサからのパルス信号の出力パターンについては、スリット付円板におけるスリットのパターン、及び、光学式のセンサの数や位置によって調整される。
【００９２】
・上記実施形態では、ブラシレスモータ４７の回転運動をコントロールシャフト１６の軸方向への運動に変換し、そのコントロールシャフト１６の軸方向変位を通じて駆動されるバルブリフト可変機構を例示したが、本発明のバルブリフト可変機構はこれに限定されない。例えば、ブラシレスモータ４７の回転運動を直接的に受けて駆動されるバルブリフト可変機構を採用することも可能である。
【００９３】
・バルブリフト可変機構１４を駆動するブラシレスモータ４７に本発明を適用したが、それ以外の各種機構を駆動するブラシレスモータに本発明を適用することもできる。
【図面の簡単な説明】
【００９４】
【図１】本実施形態のバルブリフト可変機構が適用されるエンジンのシリンダヘッド周りの構造を示す拡大断面図。
【図２】上記バルブリフト可変機構を駆動すべくコントロールシャフトを軸方向に変位させるための駆動機構、及び、その駆動機構を駆動制御する制御装置を示す略図。
【図３】（ａ）〜（ｈ）は、ブラシレスモータの回転角の変化に対する電気角センサＳ１〜Ｓ３のパルス信号の波形、位置センサＳ４，Ｓ５のパルス信号の波形、電気角カウンタＥのカウンタ値の推移、位置カウンタＰのカウンタ値の推移、及び、ストロークカウンタＳのカウンタ値の推移を示すタイミングチャート。
【図４】電気角カウンタＥ、位置カウンタＰ、及びストロークカウンタＳのカウンタ値を変化させる手順を示すフローチャート。
【図５】（ａ）は電気角センサＳ１〜Ｓ３からの信号に応じて変化する電気角カウンタＥのカウンタ値の変化態様を示す表、（ｂ）は位置センサＳ４，Ｓ５からの信号に応じた位置カウンタＰのカウンタ値の加減算態様を示す表。
【図６】（ａ）〜（ｅ）は、ブラシレスモータ４７の回転角の変化に対する位置センサＳ４，Ｓ５からのパルス信号の波形、電気角カウンタＥのカウンタ値の推移、及び、位置カウンタＰのカウンタ値の推移を示すタイミングチャート。
【図７】（ａ）は図６（ｄ）のタイミングａ，ｂ，ｃでの位置センサＳ４，Ｓ５からの信号に応じた位置カウンタＰのカウンタ値の加減算態様を示す表、（ｂ）は図６（ｅ）のタイミングｃ，ｂ，ａでの位置センサＳ４，Ｓ５からの信号に応じた位置カウンタＰのカウンタ値の加減算態様を示す表。
【図８】電気角センサＳ１〜Ｓ３からのパルス信号における前回のエッジ発生時と今回のエッジ発生時との電気角カウンタＥの変化方向と、ブラシレスモータの回転状態との関係を示す表。
【図９】（ａ）〜（ｇ）は、ブラシレスモータの回転角の変化に対する電気角センサＳ１〜Ｓ３のパルス信号の波形、位置センサＳ４，Ｓ５のパルス信号の波形、電気角カウンタＥのカウンタ値の推移、位置カウンタＰのカウンタ値の推移、及び、ストロークカウンタＳのカウンタ値の推移を示すタイミングチャート。
【図１０】位置カウンタＰのカウンタ値が正しい値からずれたときに当該カウンタ値を正しい値に戻すための補正手順を示すフローチャート。
【図１１】位置カウンタＰのカウンタ値が正しい値からずれたときに当該カウンタ値を正しい値に戻すための補正手順を示すフローチャート。
【符号の説明】
【００９５】
１…エンジン、２…シリンダヘッド、３…シリンダブロック、５…ピストン、６…燃焼室、７…吸気通路、８…排気通路、９…吸気バルブ、１０…排気バルブ、１１…吸気カムシャフト、１１ａ…吸気カム、１２…排気カムシャフト、１２ａ…排気カム、１４…バルブリフト可変機構、１５…ロッカシャフト、１６…コントロールシャフト、１７…入力アーム、１８…出力アーム、１９…ローラ、２０…コイルスプリング、２１…ロッカアーム、２２…ラッシュアジャスタ、２３…ローラ、２４…バルブスプリング、４７…ブラシレスモータ、４８…変換機構、５０…電子制御装置（駆動装置、算出手段、補正手段、禁止手段、設定手段）、５１…アクセルポジションセンサ、５２…スロットルポジションセンサ、５３…エアフローメータ、５４…クランクポジションセンサ、５５…イグニッションスイッチ、５６…不揮発性メモリ、Ｓ１〜Ｓ３…電気角センサ、Ｓ４，Ｓ５…位置センサ。
【図１】
2007043853.tif 000003
【図２】
2007043853.tif 000004
【図３】
2007043853.tif 000005
【図４】
2007043853.tif 000006
【図５】
2007043853.tif 000007
【図６】
2007043853.tif 000008
【図７】
2007043853.tif 000009
【図８】
2007043853.tif 000010
【図９】
2007043853.tif 000011
【図１０】
2007043853.tif 000012
【図１１】
2007043853.tif 000013