(57)【特許請求の範囲】
【請求項１】
モータに印加される電圧と電流とモータ定数から回転子の位置を検出し、その検出された回転子の位置情報に基づいて、前記モータに印加する電圧または電流を制御するモータ駆動方法であって、
同じトルクとなる電流指令で、現在の運転状態の電流位相指令から所定の電流位相を振る前と振った後との前後のモータ電流の大きさと前記所定の電流位相とを用いる数式から、前記同じトルクとなる電流指令における前記モータ電流の電流値が最小になる前記電流位相の補償量を算出し、当該補償量を前記電流位相指令に加算することで、前記回転子の位置誤差を補償するモータ駆動方法。
【請求項２】
前記電流位相指令から前記所定の電流位相を進める方向に振った場合のその前後での前記所定の電流値の大きさの差分と、前記所定の電流位相を遅らせる方向に振った場合のその前後での前記電流値の大きさの差分を比較し、この差分が大きい方の電流位相の方向に基づいて前記補償量を算出する請求項１に記載のモータ駆動方法。
【請求項３】
モータに印加される電圧と電流とモータ定数から回転子の位置を検出し、その検出された回転子の位置情報に基づいて、前記モータに印加する電圧または電流を制御するモータ制御装置であって、
同じトルクとなる電流指令で、現在の運転状態の電流位相指令から所定の電流位相分を振る前と振った後との前後のモータ電流の大きさと前記所定の電流位相とを用いる数式から、前記同じトルクとなる電流指令における前記モータ電流の電流値が最小になる電流位相の補償量を算出し、当該補償量を前記電流位相指令に加算した電流位相指令を出力する位相算出部を備えたことを特徴とするモータ制御装置。
【請求項４】
前記位相算出部はさらに、前記電流位相指令から前記所定の電流位相を進める方向に前記電流位相指令を振った場合のその前後での前記電流値の大きさの差分と、前記電流位相を遅らせる方向に振った場合のその前後での前記電流値の大きさの差分を比較し、この差分が大きい方の前記電流位相の方向に基づいて前記補償量を算出することを特徴とする請求項３に記載のモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は同期モータのモータ駆動方法およびモータ制御装置に関するもので、特に位置推定誤差の補償に関するものである。
【背景技術】
【０００２】
従来、同期モータのトルクを高速・高精度に制御する方法として、位置センサから検出した同期モータの回転子位置と同期した回転座標系で同期モータの電流を制御するベクトル制御が知られている。しかし、位置センサを用いる場合は、取り付けスペースの増加やコストの増加となり、またモータの使用環境が位置センサの使用環境に制限される等の課題がある。
【０００３】
この課題の解決策として、モータの電流、電圧及び巻線抵抗等のモータ定数から回転子位置情報を推定する、位置センサレスベクトル制御が実用化されている。しかし、位置推定に用いる電流、電圧やモータ定数に誤差が存在する場合（例えば、量産バラツキによるモータ定数誤差や温度や印加電流等の使用環境によるモータ定数の変化など）は、位置推定に誤差が生じる。
【０００４】
この解決策として、モータ電流が最小となる電流位相を求め、その電流位相から位置推定に用いるモータ定数を同定する方法が提案されている（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−１５３５８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、前記従来の方法では、電流位相を振りながらモータ電流が最小となる電流位相を探索するため、探索終了までに時間がかかり、また電流値が最小になる電流位相を求める処理に加え、その位相からモータ定数を修正する処理が必要で、ソフトウェアの処理も複雑になってしまうという課題がある。
【０００７】
本発明は、前記従来の課題を解決するもので、高速且つ簡便に位置推定誤差を補償することができるモータ駆動方法および制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
前記従来の課題を解決するために、本発明のモータ駆動方法または制御装置は、位置センサレスベクトル制御によって同期モータを制御するに当たって、同じトルクとなる電流指令で、電流位相を振り、モータ電流が最小になる電流位相を求め、この電流位相を電流制御に用いる電流位相に足し込むことで位置推定誤差の補償を行う。
【０００９】
これによって、モータ電流が最小となる電流位相を求めるのみで位置推定誤差を補償することができるため、モータ定数を修正する処理を省くことが可能であり、従来技術よりも高速且つ簡便に位置推定誤差を補償することができる。
【００１０】
また、本発明のモータ駆動方法または制御装置は、電流位相を振る前のモータ電流の大きさと、電流位相を振った後のモータ電流の大きさを測定し、その電流偏差から計算によって電流が最小となる電流位相を求める。これによって、電流位相を振りながら電流位相
が最小となる電流位相を探索していく従来技術よりも高速に位置推定誤差を補償することができる。
【発明の効果】
【００１１】
本発明によれば、短い時間で位置推定誤差の補償を行うことができるうえ、モータ定数を修正する処理が必要なく、ソフトウェアの処理を簡素化することができるため、より低性能なＣＰＵを使用することができるなど、コスト面で効果を有する。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態におけるモータ制御装置のブロック図
【図２】電流位相を振った際の電流偏差から位置誤差を求める方法を説明する図
【図３】電流位相を振った際に電流位相を振る量が位置誤差よりも大きい時に位置誤差を求める方法を説明する図
【図４】位置推定誤差の補償方法の手順を説明するためのフローチャート
【発明を実施するための形態】
【００１３】
第１の発明は、モータに印加される電圧と電流とモータ定数から回転子の位置を検出し、その検出された回転子の位置情報に基づいて、前記モータに印加する電圧または電流を制御する方法であって、現在の運転状態から、所定の電流位相を振った時の電流から、電流値が最小になる電流位相を補償量として算出し、当該補償量を電流位相指令に加算することで、前記回転子の位置誤差を補償するモータ駆動方法である。
【００１４】
第２の発明は、第１の発明において、所定の電流位相を振る前後のモータ電流の大きさから、電流値が最小となる補償量を算出することを特徴とする。
【００１５】
第３の発明は、第２の発明において、電流位相を進める方向に振った場合のその前後での電流値の大きさの差分と、電流位相を遅らせる方向に振った場合のその前後での電流値の大きさの差分を比較し、差分が大きい方の電流位相に基づいて補償量を算出することを特徴とする。
【００１６】
第４の発明は、モータに印加される電圧と電流とモータ定数から回転子の位置を検出し、その検出された回転子の位置情報に基づいて、前記モータに印加する電圧または電流を制御するモータ制御装置であって、所定の電流位相を振った時の電流から、電流値が最小になる電流位相を補償量として算出し、当該補償量を電流位相指令に加算した電流位相を出力する位相算出部を備えたことを特徴とするモータ制御装置である。
【００１７】
第５の発明は、第４の発明において、所定の電流位相を振る前後のモータ電流の大きさから、電流値が最小となる補償量を算出する位相算出部を備えたことを特徴とする。
【００１８】
第６の発明は、第５の発明において、電流位相を進める方向に振った場合のその前後での電流値の大きさの差分と、電流位相を遅らせる方向に振った場合のその前後での電流値の大きさの差分を比較し、差分が大きい方の電流位相に基づいて補償量を算出することを特徴とする。
【００１９】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【００２０】
図１は本発明の実施の形態におけるモータ制御装置のブロック図である。交流電源１を整流回路２１により直流化し、平滑コンデンサ２２を通して平滑化した後、三相インバータ２３によって交流化された電圧が、モータ４に供給される。そしてモータ４の運転電流を電流検出器３１で、またモータ４の運転電圧を電圧検出器３２によって検出する。
【００２１】
位置検出部５１は、検出したモータの電流、電圧及び予め測定しておいたモータ定数に基づいて、モータの回転子の位置を算出する。算出された位置情報から微分器５２によってモータの速度が算出され、速度制御部５３および位相算出部５５に入力される。
【００２２】
速度制御部５３は、外部より入力された速度指令と算出されたモータ速度の偏差が零となるような電流指令を電流制御部５４に出力する。電流制御部５４は、速度制御部５３からの電流指令と、後述する位相算出部５５からの電流位相を受け、三相インバータ２３に電圧指令を算出し出力する。
【００２３】
位相算出部５５は、算出されたモータ速度と検出した電流から、位置検出部５１により出力された回転子の位置情報に含まれる位置誤差を補償するための補償量を算出し、外部から入力される電流位相指令にその補償量を加算した電流位相を電流制御部５４に出力する。
【００２４】
この位相算出部５５について更に詳しく説明する。位置検出部５１は、電流検出器３１と電圧検出器３２から検出されたモータの電流、電圧及び予め測定しておいたモータのインダクタンス等のモータ定数を入力として回転子の位置を検出するが、電流検出器３１や電圧検出器３２の検出精度のばらつきや、モータ定数の量産ばらつき、さらには温度や印加電流の変化などの環境変化によるモータ定数の変化によって、入力された値に誤差が含まれる場合には、位置検出部５１から出力される位置情報にも誤差が生じる。
【００２５】
この位置情報に誤差が含まれる場合は、モータ効率の低下やモータが出力可能な最大トルクの低下の原因となる。また位置誤差が大きくなり過ぎた場合は、回転方向とは逆のトルクをモータが出力してしまい、モータが脱調したり、逆方向へ回転を始める可能性がある。そのため位相算出部５５は、位置検出部５１が出力する位置情報に含まれる誤差を求め、電流位相指令に加算して電流制御部５４へ出力することで位置情報に含まれる誤差を補償するようになっている。
【００２６】
図２は、位相算出部５５による位置誤差の求め方を説明する図である。回転子の永久磁石の磁束方向の軸をｄ軸、ｄ軸から回転方向に９０度位相が進んだ軸をｑ軸とする。
【００２７】
永久磁石によって発生するマグネットトルクはｑ軸の電流成分のみで決まるため、ｄ軸方向の電流成分を零にし、ｑ軸方向のみに電流を流した時に、一定のトルクを出力するのに必要なモータ電流は最小となる。このとき、ｑ軸とモータ電流との位相差（以後、電流位相と呼ぶ）をβとすると、ｑ軸電流とモータ電流が等しくなるため、電流位相βは０となる。
【００２８】
しかし、位置検出部５１が出力する位置情報に誤差が存在し、その位置誤差をΔθとした場合、電流はｑ軸からΔθずれたγ軸に流れるため、β≠０＝Δθのときにモータ電流は最小となる。よってモータ電流が最小となる電流位相を見つけることで位置誤差を求めることができる。そして、求めた位置誤差を電流位相指令に足しあわせたものを電流位相として電流制御部５４に出力することで、位置誤差による影響を補償することができる。
【００２９】
モータ電流が最小となる電流位相を見つける方法としては、まず予め決めておいた値だけ電流位相を振り、その前後で、電流が減った場合は前回と同じ方向に同じ値だけ電流位相を振り、電流が増えた場合は前回とは逆方向に同じ値だけ電流位相を振るという具合に、電流位相を一定値毎に振りながらモータの電流が最小となる位相を探索する方法が考えられる。また前回の電流偏差に予め決めておいた定数を掛けた値を次に振る電流位相の値とする方法なども考えられる。
【００３０】
しかし、電流位相を振りながらモータ電流が最小となる位相を探索する手法では、位置誤差Δθの大きさや電流位相を振る値によっては探索終了までにかなりの時間を要してしまう。そこで、図２において、位置誤差がΔθ存在し、γ軸に電流の大きさが｜Ａ｜の電流を印加している場合を考える。電流位相を予め決めておいたΔβだけ変更したとすると、電流はγ軸からΔβだけずれ、電流の大きさがＡと等しいＢとなる。ここで速度制御部５３により、電流位相を振る前と同じトルクとなる電流指令が出力されるため、電流はＢから、Ａとｑ軸電流成分が等しくなるＣへ移動する。この時の電流、ＡとＣの関係は次式で表すことができる。
【００３１】
【数１】
0006010752.tif 000002
【００３２】
この式１をΔθについて解くと次式となる。
【００３３】
【数２】
0006010752.tif 000003
【００３４】
この式２より、位置誤差を計算により求めることができる。予めΔβを決めておくことでｓｉｎΔβとｃｏｓΔβの値を定数とすることができるので、計算処理をより簡単にすることができる。
【００３５】
ここで、Δβ＞Δθの場合には、ｑ軸に近くなる方向にΔβを振った場合は、正しく位置誤差を計算することができない。この場合について次に説明する。
【００３６】
図３は、本発明の電流位相を振った際に電流位相を振る量が位置誤差よりも大きい時でも正しく位置誤差を求める方法を説明する図である。前述のとおり、位置誤差がΔθの時に電流位相をΔβ振った場合、モータ電流はＡ→Ｂ→Ｃとなる。次に、先ほど電流位相を振った方向とは逆にΔβ振った場合、つまり電流位相を−２×Δβ振った場合、モータ電流はＣからＤへと移動する。また速度制御部５３により、電流位相を振る前のＣと同じトルクとなる電流指令が出力されるため、電流はＤから、Ｃとｑ軸電流成分が等しくなるＥへ移動する。
【００３７】
ｑ軸から遠ざかる方向に電流位相を振ったほうが電流の変化量は大きくなるため、ＡとＣの電流の大きさの差分（以後、電流偏差１と呼ぶ）と、ＡとＥの電流の大きさの差分（以後、電流偏差２と呼ぶ）の、より大きい方から位置誤差を計算すればよい。また、この方法では常に電流偏差が大きくなる方向に電流位相を振るため、位置誤差が小さい時でも精度よく位置誤差の算出が可能である。なお、二つの電流偏差の差が零もしくは十分小さい場合は位置誤差Δθ≒０として位置誤差の算出及び補償はしなくてもよい。
【００３８】
図４は本発明の位置推定誤差の補償方法の手順を説明するためのフローチャートである。まず、ステップＳ１１でモータの電流を測定する（たとえば図３におけるＡ）。そして、ステップＳ１２で電流位相βを予め決めておいたΔβに設定し、その電流位相を振る。そしてステップＳ１３で、電流位相を振る前後の速度を比較し、振る前後の速度が等しく
なるまで待機する。電流位相を振る前後の速度が等しくなれば、ステップＳ１４に移行し、その時のモータ電流を測定する（たとえば図３におけるＣ）。
【００３９】
次にステップＳ１５で、電流位相を−Δβに設定し、その電流位相を振る。そしてステップＳ１３と同様に、ステップＳ１６で電流位相を振った前後の速度が等しくなるまで待機する。前後の速度が等しくなればステップＳ１７に移行し、その時のモータ電流を測定する（たとえば図３におけるＥ）。
【００４０】
ステップＳ１８で、電流偏差１と電流偏差２の差を比較し、この差が零もしくは十分小さい場合は位置誤差の補償ステップを終了する。ステップ１８で電流偏差１と電流偏差２の差が零もしくは十分小さくない場合は、ステップＳ１９に移行し、電流偏差１と電流偏差２を比較して、偏差のより大きい方の電流（たとえば図３におけるＥ）を選択する。
【００４１】
そしてステップＳ２０で、ステップＳ１９で選択された電流から、前述の式２を用いて位置誤差△θを計算する。そしてステップＳ２１で、その求めた位置誤差を電流位相指令に加算し、その加算した電流位相を出力する。そして位置誤差の補償は終了する。
【産業上の利用可能性】
【００４２】
以上のように、本発明はモータの回転子の位置推定誤差を従来技術よりも高速且つ簡便に補償することができ、位置センサレス制御によって駆動されるモータ駆動装置全般に利用することができる。
【符号の説明】
【００４３】
１  交流電源
４  モータ
２１  整流回路
２２  平滑コンデンサ
２３  三相インバータ
３１  電流検出器
３２  電圧検出器
５１  位置検出部
５２  微分器
５３  速度制御部
５４  電流制御部
５５  位相算出部
【図１】
0006010752.tif 000004
【図２】
0006010752.tif 000005
【図３】
0006010752.tif 000006
【図４】
0006010752.tif 000007