(57)【要約】【課題】位置検出センサを用いることなくＤＣブラシレスモータのロータ角度を精度良く検出するロータ角度検出装置を提供する。【解決手段】角度検出部２５は、余弦参照値と正弦参照値とを用いてモータのロータ角度の推定値（θ＾）と実際値（θ）との位相差（θ−θ＾）を表す第１の位相差データを算出し、該第１の位相差データに所定のオフセットを加えた第２の位相差データが表す位相差（θ−θ＾）を解消するように構成したオブザーバにより、ロータ角度を検出する。角度検出部２５は、モータのトルク指令値（ｔｒｑ＿ｃ）の変更により推定位相差／実位相差の相関グラフが正又は負方向にシフト（Ｙ→Ｙｐ，Ｙ→Ｙｍ）したときは、それに応じてオフセット値を変更する（ｏｆｂ→ｏｆｐ，ｏｆｂ→ｏｆｍ）。【選択図】　図４
2004072901.tif 000002
【特許請求の範囲】
【請求項１】
突極型のＤＣブラシレスモータの３相の電機子に駆動電圧又は回生電圧を印加する電圧印加手段と、該駆動電圧又は該回生電圧に高周波電圧を重畳する高周波重畳手段と、該３相の電機子のうちの第１相の電機子に流れる電流を検出する第１電流検出手段と、該３相の電機子のうちの第２相の電機子に流れる電流を検出する第２電流検出手段と、
前記高周波重畳手段により前記駆動電圧又は前記回生電圧に前記高周波電圧が重畳されたときに前記第１電流検出手段により検出される第１電流値及び前記第２電流検出手段により検出される第２電流値と、前記高周波電圧に応じた高周波成分とを用いて、前記モータのロータ角度の２倍角の正弦値に応じた正弦参照値と該２倍角の余弦値に応じた余弦参照値とを抽出する参照値抽出手段と、
前記正弦参照値と前記余弦参照値とを用いて前記モータのロータ角度の推定値（θ＾）と実際値（θ）との位相差（θ−θ＾）を表す第１の位相差データを算出し、該第１の位相差データに所定のオフセット値を加えた第２の位相差データが表す前記位相差（θ−θ＾）を解消するように構成したオブザーバにより、前記ロータ角度を算出するロータ角度算出手段とを備えたＤＣブラシレスモータのロータ角度検出装置において、
所定のトルク指令値に応じた駆動トルク又は回生トルクが前記モータに生じるように、前記電圧印加手段により前記モータの電機子に印加される駆動電圧又は回生電圧を制御するトルク制御手段を備え、
前記ロータ角度算出手段は、前記トルク指令値に応じて、前記オフセット値を決定することを特徴とするＤＣブラシレスモータのロータ角度検出装置。
【請求項２】
前記ロータ角度算出手段は、前記トルク指令値が変更されたときに、変更前のトルク指令値に応じたオフセット値から変更後のトルク指令値に応じたオフセット値に向けて、前記オフセット値を連続的に変化させることを特徴とする請求項１記載のＤＣブラシレスモータのロータ角度検出装置。
【請求項３】
前記ロータ角度算出手段は、前記トルク指令値の絶対値が大きいほど前記オフセット値の絶対値が大きくなるように、前記オフセット値を決定することを特徴とする請求項１又は請求項２記載のＤＣブラシレスモータのロータ角度検出装置。
【請求項４】
前記参照値抽出手段は、次式（１）と（２）により前記正弦参照値と前記余弦参照値を抽出し、
前記ロータ角度算出手段は、前記第１の位相差データとして次式（３）により算出したΔθ１を用い、前記第２の位相差データとして次式（４）により算出したΔθ２を用いたことを特徴とする請求項１記載のＤＣブラシレスモータのロータ角度検出装置。
【数１】
2004072901.tif 000022
【数２】
2004072901.tif 000023
【数３】
2004072901.tif 000024
【数４】
2004072901.tif 000025
但し、上記式（１）〜（４）において、Ｖｓ：前記正弦参照値、Ｖｃ：前記余弦参照値、Ｉｕ：前記第１電流値、Ｉｗ：前記第２電流値、ω：前記高周波電圧の角速度、Δθ１：前記第１の位相差データ、Δθ２：前記第２の位相差データ、ｏｆｆｓｅｔ：前記オフセット値。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、突極型のＤＣブラシレスモータのロータ角度を検出するロータ角度検出装置に関する。
【０００２】
【従来の技術】
ＤＣブラシレスモータに所望のトルクを発生させるためには、磁極を有するロータの電気角（以下、ロータ角度という）に対応した適切な位相で電機子に電圧を印加する必要がある。そして、ロータ角度を検出する位置検出センサを省いてＤＣブラシレスモータと駆動装置のコストダウンを図るべく、位置検出センサを用いずにロータ角度を検出する種々の方法が提案されている。
【０００３】
本願発明者らも、先の出願（特願２００１−２８８３０３）において、位置検出センサを用いずにロータ角度を検出するロータ角度検出装置を提案している。かかるロータ角度検出装置においては、突極型のＤＣブラシレスモータの３相の電機子に印加する駆動電圧に高周波電圧を重畳したときに、該３相の電子機のうちの第１相に流れる電流の検出値及び第２相に流れる電流の検出値と、該高周波電圧に応じた高周波成分とを用いて、該モータのロータ角度の２倍角の正弦値に応じた正弦参照値と該２倍角の余弦値に応じた余弦参照値とを算出する。
【０００４】
そして、前記正弦参照値と前記余弦参照値とを用いてＤＣブラシレスモータのロータ角度の推定値（θ＾）と実際値（θ）との位相差（θ−θ＾）を表す第１の位相差データを算出し、該第１の位相差データが表す該位相差（θ−θ＾）に一定のオフセット値を加えた第２の位相差データが表す該位相差（θ−θ＾）を解消するように構成したオブザーバを用いて前記ロータ角度を算出することによって、前記ロータ角度の検出誤差を減少させて前記ロータ角度の検出精度を高めている。
【０００５】
しかし、本願発明者らは、その後の検討により、上述したオブザーバを用いて前記モータのロータ角度を検出したときに、該ロータ角度の検出誤差が増大する場合があることを知見した。そして、このように前記モータのロータ角度の検出誤差が増大すると、検出されたロータ角度に基づいて前記モータの電機子に印加する駆動電圧の位相を決定したときに、実際のロータ角度の変化に対する該駆動電圧の制御系の応答性が悪化し、前記モータの脱調等が生じる場合がある。
【０００６】
【発明が解決しようとする課題】
本発明は、上記背景を鑑みてなされたものであり、位置検出センサを用いることなくＤＣブラシレスモータのロータ角度を精度良く検出するロータ角度検出装置を提供することを目的とする。
【０００７】
【課題を解決するための手段】
本発明は上記目的を達成するためになされたものであり、突極型のＤＣブラシレスモータの３相の電機子に駆動電圧又は回生電圧を印加する電圧印加手段と、該駆動電圧又は該回生電圧に高周波電圧を重畳する高周波重畳手段と、該３相の電機子のうちの第１相の電機子に流れる電流を検出する第１電流検出手段と、該３相の電機子のうちの第２相の電機子に流れる電流を検出する第２電流検出手段と、前記高周波重畳手段により前記駆動電圧又は前記回生電圧に前記高周波電圧が重畳されたときに前記第１電流検出手段により検出される第１電流値及び前記第２電流検出手段により検出される第２電流値と、前記高周波電圧に応じた高周波成分とを用いて、前記モータのロータ角度の２倍角の正弦値に応じた正弦参照値と該２倍角の余弦値に応じた余弦参照値とを抽出する参照値抽出手段と、前記正弦参照値と前記余弦参照値とを用いて前記モータのロータ角度の推定値（θ＾）と実際値（θ）との位相差（θ−θ＾）を表す第１の位相差データを算出し、該第１の位相差データに所定のオフセット値を加えた第２の位相差データが表す前記位相差（θ−θ＾）を解消するように構成したオブザーバにより、前記ロータ角度を算出するロータ角度算出手段とを備えたＤＣブラシレスモータのロータ角度検出装置の改良に関する。
【０００８】
上記目的を達成するために各種検討を重ねた結果、本願発明者らは、実際の前記ロータ角度の推定値（θ＾）と実際値（θ）との位相差（実位相差）に対する、前記正弦参照値と前記余弦参照値とを用いて算出される前記第１の位相差データにより表される前記位相差（推定位相差）の乖離度合が、前記モータが発生するトルク（駆動トルク及び回生トルク）の大きさに応じて変化することを知見した。
【０００９】
そこで、本発明は、所定のトルク指令値に応じた駆動トルク又は回生トルクが前記モータに生じるように、前記電圧印加手段により前記モータの電機子に印加される駆動電圧又は回生電圧を制御するトルク制御手段を備え、前記ロータ角度算出手段は、前記トルク指令値に応じて、前記オフセット値を決定することを特徴とする。
【００１０】
かかる本発明によれば、前記トルク指令値に応じて前記オフセット値を決定することにより、前記モータが発生する駆動トルク又は回生トルクの大きさに応じて変化する実際の前記ロータ角度の推定値（θ＾）と実際値（θ）との位相差（実位相差）に対する、前記正弦参照値と前記余弦参照値とを用いて算出される前記第１の位相差データにより表される前記位相差（推定位相差）の乖離度合を減少させることができる。そのため、前記モータが発生するトルクの大きさの変化による影響を抑制して、前記ロータ角度算出手段による前記モータのロータ角度の検出精度を高めることができる。
【００１１】
また、前記ロータ角度算出手段は、前記トルク指令値が変更されたときに、変更前のトルク指令値に応じたオフセット値から変更後のトルク指令値に応じたオフセット値に向けて、前記オフセット値を連続的に変化させることを特徴とする。
【００１２】
かかる本発明によれば、前記トルク指令値が変更されたときに、前記ロータ角度算出手段は前記オフセット値を連続的に変化させて、前記オフセット値を徐々に漸変させる。この場合、前記トルク指令値が変更されて、変更前のトルク指令値に応じたトルクから変更後のトルク指令値に応じたトルクへと、前記モータの発生するトルクが過渡的に変化する過程において、前記モータが発生するトルクの変化に従って前記オフセット値が設定される。そのため、前記トルク指令値が変更されたときの前記ロータ角度算出手段による前記モータのロータ角度の検出精度を高めることができる。
【００１３】
また、詳細は後述するが、前記モータの発生するトルクの絶対値が大きくなるほど、前記実位相差に対する前記推定位相差の乖離度合が大きくなる。そこで、前記ロータ角度算出手段により、前記トルク指令値の絶対値が大きいほど前記オフセット値の絶対値が大きくなるように、前記オフセット値を決定することによって、前記モータのロータ角度をより精度良く検知することができる。
【００１４】
また、前記参照値抽出手段は、次式（５）と（６）により前記正弦参照値と前記余弦参照値を抽出し、前記ロータ角度算出手段は、前記第１の位相差データとして次式（７）により算出したΔθ１を用い、前記第２の位相差データとして次式（８）により算出したΔθ２を用いたことを特徴とする。
【００１５】
【数５】
2004072901.tif 000003
【００１６】
【数６】
2004072901.tif 000004
【００１７】
【数７】
2004072901.tif 000005
【００１８】
【数８】
2004072901.tif 000006
但し、上記式（５）〜（８）において、Ｖｓ：前記正弦参照値、Ｖｃ：前記余弦参照値、Ｉｕ：前記第１電流値、Ｉｗ：前記第２電流値、ω：前記高周波電圧の角速度、Δθ１：前記第１の位相差データ、Δθ２：前記第２の位相差データ、ｏｆｆｓｅｔ：前記オフセット値。
【００１９】
かかる本発明によれば、前記参照値算出手段によって上記式（５），（６）により算出された前記正弦参照値（Ｖｓ）と前記余弦参照値（Ｖｃ）とを用いて、上記式（７），（８）により前記オブザーバの構成に必要となる前記第１の位相差データ（Δθ１）と前記第２の位相差データ（Δθ２）を算出することができる。
【００２０】
【発明の実施の形態】
本発明の実施の形態の一例について図１〜図５を参照して説明する。図１はＤＣブラシレスモータの構成図、図２は図１に示したＤＣブラシレスモータの作動を制御するモータコントローラの制御ブロック図、図３はｏｆｆｓｅｔ値を加えた位相差データを用いたときの効果を示したグラフ、図４はＤＣブラシレスモータのトルク指令値に応じてｏｆｆｓｅｔ値を決定した場合の効果を示したグラフ、図５はトルク指令値が変更された場合のｏｆｆｓｅｔ値の設定方法の説明図である。
【００２１】
図２に示したモータコントローラ１０は、図１に示した突極型のＤＣブラシレスモータ１（以下、モータ１という）の電機子３，４，５に流れる電流をフィードバック制御して、モータ１が発生するトルク（駆動トルク及び回生トルク）を制御するものであり、モータ１をロータ２の界磁極の磁束方向であるｑ軸上にあるｑ軸電機子と該ｑ軸と直交するｄ軸上にあるｄ軸電機子とを有するｄｑ座標系による等価回路に変換して扱う。
【００２２】
そして、モータコントローラ１０は、外部から与えられるモータ１に対するトルク指令値（ｔｒｑ＿ｃ）に応じて決定されるｄ軸電機子に流れる電流（以下、ｄ軸電流という）の指令値であるＩｄ＿ｃとｑ軸電機子に流れる電流（以下、ｑ軸電流という）の指令値であるＩｑ＿ｃとが、実際にモータ１の３相の電機子に流れる電流の検出値から３相／ｄｑ変換により算出したｄ軸電流の検出値であるＩｄ＿ｓとｑ軸電流の検出値であるＩｑ＿ｓとに、それぞれ一致するように、モータ１の３相の電機子に印加する電圧を制御する。
【００２３】
これにより、モータ１からトルク指令（ｔｒｑ＿ｃ）に応じたトルクが発生するように、ｄ軸電流とｑ軸電流が制御される。なお、このようにトルク指令値（ｔｒｑ＿ｃ）に応じてモータ１の３相の電機子に印加する電圧を制御するモータコントローラ１０の機能が、本発明のトルク制御手段に相当する。
【００２４】
モータコントローラ１０は、トルク指令値（ｔｒｑ＿ｃ）に応じて、ｄ軸電流の指令値Ｉｄ＿ｃとｑ軸電流の指令値Ｉｑ＿ｃとを決定する電流指令値決定部１５、ｄ軸電機子に印加する電圧（以下、ｄ軸電圧という）の指令値であるＶｄ＿ｃとｑ軸電機子に印加する電圧（以下、ｑ軸電圧という）の指令値であるＶｑ＿ｃとを、Ｕ，Ｖ，Ｗの３相の電機子に印加する電圧の指示値であるＶＵ＿ｃ，ＶＶ＿ｃ，ＶＷ＿ｃに変換するｄｑ／３相変換部２０、ｄｑ／３相変換部２０から出力されるＶＵ＿ｃ，ＶＶ＿ｃ，ＶＷ＿ｃに、それぞれ高周波電圧ｖｕ，ｖｖ，ｖｗを重畳する高周波重畳部２１（本発明の高周波重畳手段に相当する）、及び該高周波電圧が重畳されたＶＵ＿ｃ，ＶＶ＿ｃ，ＶＷ＿ｃに応じた電圧ＶＵ，ＶＶ，ＶＷをモータ１のＵ，Ｖ，Ｗの各相の電機子にそれぞれ印加するパワードライブユニット２２（本発明の電圧印加手段に相当する）を備える。
【００２５】
さらに、モータコントローラ１０は、モータ１のＵ相（本発明の第１相に相当する）の電機子に流れる電流を検出するＵ相電流センサ２３（本発明の第１電流検出手段に相当する）、モータ１のＷ相（本発明の第２相に相当する）の電機子に流れる電流を検出するＷ相電流センサ２４（本発明の第２電流検出手段に相当する）、Ｕ相電流センサ２３の検出電流値Ｉｕ＿ｓとＷ相電流センサ２４の検出電流値Ｉｗ＿ｓとを用いてモータ１のロータ角度θ（図１参照）を検出する角度検出部２５、Ｉｕ＿ｓとＩｗ＿ｓとを用いてＩｄ＿ｓとＩｑ＿ｓとを算出する３相／ｄｑ変換部２６、及びｄ軸とｑ軸間で干渉し合う速度起電力の影響を打消す処理を行なう非干渉演算部２７を備える。
【００２６】
モータコントローラ１０は、ｄ軸電流の指令値Ｉｄ＿ｃと検出値Ｉｄ＿ｓとを第１減算器２８で減算し、その減算結果に第１のＰＩ演算部２９でＰＩ（比例積分）処理を施し、第１加算器３０で非干渉成分を加算して、Ｉｄ＿ｃとＩｄ＿ｓとの偏差に応じたｄ軸電圧の指令値Ｖｄ＿ｃを生成する。
【００２７】
また、モータコントローラ１０は、同様にして、ｑ軸電流の指令値Ｉｑ＿ｃと検出値Ｉｑ＿ｓとを第２減算器３１で減算し、その減算結果に第２のＰＩ演算部３２でＰＩ処理を施し、第２加算器３３で非干渉成分を加算して、Ｉｑ＿ｃとＩｑ＿ｓとの偏差に応じたｑ軸電圧の指令値Ｖｑ＿ｃを生成する。
【００２８】
そして、モータコントローラ１０は、ｄ軸電圧の指令値Ｖｄ＿ｃとｑ軸電圧の指令値Ｖｑ＿ｃとをｄｑ／３相変換部２０に入力する。これにより、パワードライブユニット２２を介して、ｄ軸電流の指令値Ｉｄ＿ｃと検出値Ｉｄ＿ｓとの偏差、及びｑ軸電流の指令値Ｉｑ＿ｃと検出値Ｉｑ＿ｓとの偏差を解消するように、モータ１の電機子に３相電圧ＶＵ，ＶＶ，ＶＷが印加され、トルク指令値（ｔｒｑ＿ｃ）に応じたトルクが発生するように、モータ１の電機子に流れる電流が制御される。
【００２９】
なお、トルク指令値（ｔｒｑ＿ｃ）が正であるときはモータ１は駆動トルクを発生し、トルク指令値（ｔｒｑ＿ｃ）が負であるときにはモータ１は回生トルクを発生する。そして、モータ１が発生する駆動トルク及び回生トルクはｄ軸電流の大きさに依存し、また、モータ１の内部損失はｄ軸電流とｑ軸電流の大きさに依存する。
【００３０】
そのため、電流指令値決定部１５は、トルク指令値（ｔｒｑ＿ｃ）に応じてｄ軸電流の指令値（Ｉｄ＿ｃ）を決定すると共に、トルク指令値（ｔｒｑ＿ｃ）が負（回生トルク）のときは、モータ１の発電電力がモータ１の内部損失で相殺されるようにｑ軸電流の指令値（Ｉｑ＿ｃ）を決定する。
【００３１】
次に、３相／ｄｑ変換部２６は、Ｕ相電流センサ２３の検出電流値Ｉｕ＿ｓと、Ｗ相電流センサ２４の検出電流値Ｉｗ＿ｓと、ロータ角度θとからｄ軸電流の検出値Ｉｄ＿ｓとｑ軸電流の検出値Ｉｑ＿ｓとを、以下の式（９）と式（１０）から算出するため、モータコントローラ１０はロータ角度θを検出する必要がある。
【００３２】
【数９】
2004072901.tif 000007
【００３３】
【数１０】
2004072901.tif 000008
そして、モータコントローラ１０は、レゾルバ等の位置検出センサを用いずに、ｄｑ／３相変換部２０から出力されるＵ，Ｖ，Ｗ相に印加する電圧の指令値ＶＵ＿ｃ，ＶＶ＿ｃ，ＶＷ＿ｃに対して、高周波重畳部２１から出力される高周波電圧ｖｕ，ｖｖ，ｖｗ（以下の式（１１）で表される）をそれぞれ重畳することによってロータ角度θを検出する。
【００３４】
【数１１】
2004072901.tif 000009
すなわち、第３加算器３４でＶＵ＿ｃにｖｕを加算し、第４加算器３５でＶＶ＿ｃにｖｖを加算し、第５加算器３６でＶＷ＿ｃにｖｗを加算する。そして、角度検出部２５は、高周波電圧ｖｕ，ｖｖ，ｖｗを重畳したときに、Ｕ相電流センサ２３により検出される電流値Ｉｕ＿ｓとＷ相電流センサ２４により検出される電流値Ｉｗ＿ｓとを用いて、ロータ角度θを検出する。
【００３５】
なお、角度検出部２５は、本発明の参照値抽出手段とロータ角度算出手段の機能を含み、角度検出部２５、パワードライブユニット２２、高周波重畳部２１、Ｕ相電流センサ２３、Ｗ相電流センサ２４、及び上述したトルク指令値（ｔｒｑ＿ｃ）に応じてモータ１の３相の電機子に印加する電圧を制御するモータコントローラ１０の機能とにより、本発明のＤＣブラシレスモータのロータ角度検出装置が構成される。以下、高周波重畳部２１と角度検出部２５とによるロータ角度θの検出処理について説明する。
【００３６】
角度検出部２５は、上述した式（５）と式（６）のＩｕとＩｗに、Ｕ相電流センサ２３により検出された電流値Ｉｕ＿ｓとＷ相電流センサ２４により検出された電流値Ｉｗ＿ｓをそれぞれ代入し、式（５）と式（６）のωに高周波重畳部２１により重畳された高周波電圧ｖｕ，ｖｖ，ｖｗの角速度ωを代入して、以下の式（１２）と式（１３）により、ロータ角度θの２倍角の正弦参照値Ｖｓと余弦参照値Ｖｃとを算出する。
【００３７】
【数１２】
2004072901.tif 000010
【００３８】
【数１３】
2004072901.tif 000011
なお、式（１２）と式（１３）におけるωｔについてのｓｉｎ，ｃｏｓ成分が本発明の重畳した高周波電圧に応じた高周波成分に該当する。また、式（１２）と式（１３）における演算ゲインＫは、以下の式（１４）で示した形となる。
【００３９】
【数１４】
2004072901.tif 000012
但し、ｌ：モータ１の各相の自己インダクタンスの直流分、Δｌ：ｌの変動分、ｍ：各相間の相互インダクタンスの直流分。
【００４０】
なお、上記式（１２）と式（１３）では、積分期間を０〜２π／ωとして、ＩｕとＩｗの直流成分（Ｉｕｄｃ，Ｉｗｄｃ）に関する積分値が０になるようにしたが、ＩｕとＩｗが直流成分を含まず、以下の式（１５），（１６）の形で表される場合には、以下の式（１７），（１８）に示したように、積分期間を０〜π／ωとしても正弦参照値Ｖｓと余弦参照値Ｖｃを算出することができる。
【００４１】
【数１５】
2004072901.tif 000013
【００４２】
【数１６】
2004072901.tif 000014
【００４３】
【数１７】
2004072901.tif 000015
【００４４】
【数１８】
2004072901.tif 000016
そして、以下の式（１９）の関係式から、ロータ角度の推定値θ＾と実際値θとの位相差（θ−θ＾）に応じた位相差データとして以下の式（２０）に示すΔθ１（本発明の第１の位相差データに相当する）を算出し、該位相差（θ−θ＾）を解消するように構成した以下の式（２１）で表されるオブザーバによりロータ角度を算出することによって、高周波成分の大きさ（√（Ｖｓ２＋Ｖｃ２））の変動に伴うゲインの変動を抑制してロータ角度算出の安定性を高めることができる。
【００４５】
【数１９】
2004072901.tif 000017
【００４６】
【数２０】
2004072901.tif 000018
【００４７】
【数２１】
2004072901.tif 000019
但し、Ｋ１，Ｋ２：演算ゲイン。
【００４８】
また、角度検出部２５の演算能力が低く、上記式（２０）の平方根演算に要する時間が問題となる場合は、以下の式（２２）に示す近似を行ってもよい。
【００４９】
【数２２】
2004072901.tif 000020
ここで、このように上記式（２０）又は式（２２）により算出した位相差データΔθ１を用いて構成したオブザーバによりロータ角度を検出したときに、ロータ角度の検出精度が悪化する場合がある。そして、ロータ角度の検出精度が悪化すると、検出されたロータ角度に基づいてモータ１に印加する駆動電圧（ＶＵ，ＶＶ，ＶＷ）を制御した場合に、モータ１の出力トルクのボトム値が低下し、出力トルクの脈動が大きくなる場合がある。
【００５０】
そして、このように出力トルクの脈動が生じる原因は、ロータ角度の推定値θ＾と実際値θとの実際の位相差（以下、実位相差という）と、上記式（２０）又は上記式（２２）により算出される位相差の推定値（以下、位相差推定値という）とが乖離することにあると考えられる。
【００５１】
図３（ａ）は、実位相差と推定位相差とが乖離する様子を示したグラフであり、縦軸を推定位相差、横軸を実位相差に設定している。実位相差と推定位相差との相関グラフが、図中Ｘで示した理想曲線である場合は、推定位相差を零とすることにより実位相差も零となるため、ロータ角度の検出誤差は生じない。
【００５２】
しかし、実際には、実位相差と推定位相差との相関グラフは、図中Ｙで示した態様となり、この場合には、推定位相差を零に収束させてもＥ１分の誤差が生じる。そして、この誤差によりロータ角度の検出値が実際のロータ角度からずれ、これにより上述したモータ１の出力トルクの脈動が生じると考えられる。
【００５３】
そこで、以下の式（２３）に示すように、上記式（２０）により算出した位相差データΔθ１にｏｆｆｓｅｔ値を加えた位相差データΔθ２（本発明の第２の位相差データに相当する）を用いて構成したオブザーバによりロータ角度を算出し、強制的にロータ角度の検出値をずらすことによって、ロータ角度の検出誤差を減少させることができる。
【００５４】
【数２３】
2004072901.tif 000021
図３（ａ）においては、ｏｆｆｓｅｔ値としてｏｆｂを加えており、この場合は、推定位相差を零に収束させたときの誤差がＥ１からＥ２に減少している。
【００５５】
しかし、図３（ａ）に示した推定位相差／実位相差の相関グラフＹは、図３（ｂ）に示したように、モータ１の発生するトルクの大きさに応じて変化する。すなわち、モータ１の駆動時においては、モータ１が発生する駆動トルクが小さくなると推定位相差／実位相差の相関グラフは図中上方（推定位相差軸の正方向）にシフトし（Ｙ→Ｙｐ）、また、モータ１に発生する駆動トルクが大きくなると推定位相差／実位相差の相関グラフは図中下方（推定位相差軸の負方向）にシフトする（Ｙ→Ｙｍ）。
【００５６】
そして、推定位相差／実位相差の相関グラフが正方向にシフトすると、推定位相差／実位相差の相関グラフＹｐと推定位相差＝ｏｆｂのラインが交差しなくなって、ロータ角度の検出が不安定となり、モータ１の脱調が生じ易くなるという不都合がある。
【００５７】
一方、推定位相差／実位相差の相関グラフが負方向にシフトすると、推定位相差を零に収束させたときの誤差がＥ２からＥ２＋Ｅ３に増大し、上述したモータ１の出力トルクの脈動が生じ易くなるという不都合がある。
【００５８】
そこで、角度検出部２５は、図４に示したように、トルク指令値（ｔｒｑ＿ｃ，≒モータ１の実際の出力トルク）が大きくなって推定位相差／実位相差の相関グラフが負方向にシフトしたとき（Ｙ→Ｙｍ）は、それに応じてｏｆｆｓｅｔ値を大きく設定する（ｏｆｂ→ｏｆｍ）。
【００５９】
また、モータ１のトルク指令値（ｔｒｑ＿ｃ）が小さくなって推定位相差／実位相差の相関グラフが正方向にシフトしたとき（Ｙ→Ｙｐ）には、角度検出部２５は、それに応じてｏｆｆｓｅｔ値を小さく設定する（ｏｆｂ→ｏｆｐ）。
【００６０】
このように、トルク指令値（ｔｒｑ＿ｃ，≒モータ１の実際の出力トルク）の大きさに応じてｏｆｆｓｅｔ値を設定することによって、モータ１の出力トルクが変化した場合であっても、角度検出部２５は、ロータ角度の検出誤差が増大することを抑制してロータ角度を精度良く検出することができる。そして、これにより、モータ１の出力トルクの脈動や脱調が生じることを抑制することができる。
【００６１】
また、モータ１の回生時は、トルク指令値（ｔｒｑ＿ｃ）が負となり、モータ１に発生する回生トルクの応じた推定位相差／実位相差の相関グラフのシフト方向は、モータ１の駆動時と逆になる。すなわち、モータ１に生じる回生トルクが大きくなるほど、推定位相差／実位相差の相関グラフは、推定位相差軸の正方向にシフトする。
【００６２】
そこで、角度検出部２５は、図５（ａ）に示したデータマップに従って、トルク指令（ｔｒｑ＿ｃ）が正（駆動トルク）であるときは、トルク指令値（ｔｒｑ＿ｃ）の絶対値が大きくなるほどｏｆｆｓｅｔ値（ｏｆｆｓｅｔ）が負方向に大きくなるように設定し、トルク指令値（ｔｒｑ＿ｃ）が負（回生トルク）であるときには、トルク指令値（ｔｒｑ＿ｃ）の絶対値が大きくなるほどｏｆｆｓｅｔ値（ｏｆｆｓｅｔ）が正方向に大きくなるように設定する。
【００６３】
また、トルク指令値（ｔｒｑ＿ｃ）が変更されたときに、ｏｆｆｓｅｔ値（ｏｆｆｓｅｔ）を変更前のトルク指令値に応じたｏｆｆｓｅｔ値から変更後のトルク指令値に応じたｏｆｆｓｅｔ値に直ちに変更すると、モータ１の実際の出力トルクが、変更前のトルク指令値に応じた出力トルクから変更後のトルク指令値に応じた出力トルクに移行する過程においては、モータコントローラ１０による制御の応答遅れにより、トルク指令値（ｔｒｑ＿ｃ）に応じたトルクとモータ１の実際の出力トルクの間にずれが生じる。
【００６４】
そのため、ｏｆｆｓｅｔ値を、直ちに変更すると、モータ１の実際の出力トルクに応じたｏｆｆｓｅｔ値が設定されないこととなって、ロータ角度の検出誤差が大きくなる。
【００６５】
そこで、角度検出部２５は、図５（ｂ）に示したように、トルク指令値（ｔｒｑ＿ｃ）が変更されたときにｏｆｆｓｅｔ値（ｏｆｆｓｅｔ）を連続的に変化させる。図５（ｂ）は、縦軸をｏｆｆｓｅｔ値（ｏｆｆｓｅｔ）、横軸を時間（ｔ）とした時系列グラフであり、時刻ｔ１でトルク指令値（ｔｒｑ＿ｃ）がｔｑ１からｔｑ２に変更された例を示している。
【００６６】
時刻ｔ１でトルク指令値（ｔｒｑ＿ｃ）が変更されたとき、角度検出部２５は、ｏｆｆｓｅｔ値（ｏｆｆｓｅｔ）をｔｑ１に応じたｏｆｆｓｅｔ値であるｏｆ１から、ｔｑ２に応じたｏｆｆｓｅｔ値であるｏｆ２に向かって、モータコントローラ１０の制御応答性に基づいて決定した間隔Ｔ１（ｔ１〜ｔ２）をもって連続的に変化させる。
【００６７】
これにより、実際のモータ１の出力トルクの変化に応じてｏｆｆｓｅｔ値（ｏｆｆｓｅｔ）が徐々に漸変するため、ロータ角度の検出精度を高めることができる。そして、このようにして検出されたロータ角度に基づいて、ｄｑ／３相変換部２０及び３相／ｄｑ変換部２６による処理を行うことにより、モータ１の出力トルクの脈動や脱調が生じることを抑制することができる。
【００６８】
なお、ｏｆｆｓｅｔ値（ｏｆｆｓｅｔ）を連続的に変化させる方法としては、例えば、トルク指令値（ｔｒｑ＿ｃ）に平滑フィルタを施して、平滑後のトルク指令値に応じて図５（ａ）のマップデータによりｏｆｆｓｅｔ値（ｏｆｆｓｅｔ）を決定する方法や、トルク指令値（ｔｒｑ＿ｃ）に応じて図５（ａ）のマップデータにより決定されたｏｆｆｓｅｔ値（ｏｆｆｓｅｔ）に平滑フィルタを施したものを、上記式（２３）におけるｏｆｆｓｅｔ値（ｏｆｆｓｅｔ）とする方法を用いることができる。
【００６９】
また、本実施の形態では、角度検出部２５は、前記式（１２），（１３）において、時間に応じて変化する高周波成分に対して積分演算を行うことにより、ロータ角度θの２倍角の正弦参照値Ｖｓと余弦参照値Ｖｃを算出したが、ローパスフィルタを施して正弦参照値と余弦参照値を出力するように処理してもよい。
【図面の簡単な説明】
【図１】ＤＣブラシレスモータの構造図。
【図２】図１に示したＤＣブラシレスモータの作動を制御するモータコントローラの制御ブロック図。
【図３】ｏｆｆｓｅｔ値を加えた位相差データを用いたときの効果を示したグラフ。
【図４】ＤＣブラシレスモータのトルク指令値に応じてｏｆｆｓｅｔ値を決定した場合の効果を示したグラフ。
【図５】トルク指令値が変更された場合のｏｆｆｓｅｔ値の設定方法の説明図である。
【符号の説明】
１…ＤＣブラシレスモータ、２…ロータ、３…Ｕ相の電機子、４…Ｖ相の電機子、５…Ｗ相の電機子、１０…モータコントローラ、１５…電流指令値決定部、２０…ｄｑ／３相変換部、２１…高周波重畳部、２２…パワードライブユニット、２３…Ｕ相電流センサ、２４…Ｗ相電流センサ、２５…角度検出部、２６…３相／ｄｑ変換部、２７…非干渉演算部
【図１】
2004072901.tif 000026
【図２】
2004072901.tif 000027
【図３】
2004072901.tif 000028
【図４】
2004072901.tif 000029
【図５】
2004072901.tif 000030