(57)【特許請求の範囲】
【請求項１】
モータの回転子の位置を検出する位置検出器と、
前記位置検出器が検出した位置検出値に基づいて、速度検出値を算出する速度検出部と、
モータの回転子の回転速度を指令する速度指令を生成する速度指令生成部と、
前記位置検出器が検出した位置検出値に基づいて、補正量を算出する補正量算出部と、
前記補正量を用いて前記速度検出値を補正する補正演算部と、
前記速度指令と前記補正演算部により補正された速度検出値とに基づいてモータの回転トルクを指令するトルク指令を生成するトルク指令生成部と、
を備え、
前記補正量算出部は、固有の周波数成分、振幅成分および初期位相を有する正弦波を複数合成することによって前記補正量を算出し、
各前記正弦波の周波数成分は、モータの回転周波数と前記位置検出器の物理的な目盛数で決まる基本周波数の自然数倍の値を有することを特徴とするモータ制御装置。
【請求項２】
モータの回転子の位置を検出する位置検出器と、
前記位置検出器が検出した位置検出値に基づいて、速度検出値を算出する速度検出部と、
モータの回転子の回転速度を指令する速度指令を生成する速度指令生成部と、
前記速度指令と前記速度検出値とに基づいてモータの回転トルクを指令するトルク指令を生成するトルク指令生成部と、
前記位置検出器が検出した位置検出値に基づいて、補正量を算出する補正量算出部と、
前記補正量を用いて前記トルク指令を補正する補正演算部と、
を備え、
前記補正量算出部は、固有の周波数成分、振幅成分および初期位相を有する正弦波を複数合成することによって前記補正量を算出し、
各前記正弦波の周波数成分は、モータの回転周波数と前記位置検出器の物理的な目盛数で決まる基本周波数の自然数倍の値を有することを特徴とするモータ制御装置。
【請求項３】
前記補正量算出部は、予め測定された前記位置検出器が有する前記回転子の１回転あたりの内挿誤差に起因する誤差と前記補正量との差が所定の範囲内に収まるよう、前記補正量の算出処理において合成される各前記正弦波を決定する請求項１または２に記載のモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータの回転子の位置を検出する位置検出器を備えるモータ制御装置に関する。
【背景技術】
【０００２】
モータの回転駆動を制御するモータ制御装置においては、モータの回転子の位置を検出するために、例えばロータリエンコーダやリニアスケールなどの位置検出器が設けられる。位置検出器によって検出されフィードバックされた位置検出値は、モータに対する速度指令やトルク指令の生成に利用される。
【０００３】
位置検出器においては、物理的な目盛の間をさらに電気的に内挿（分割）することによって高い分解能を実現している。しなしながら、内挿には誤差が存在し、その誤差はモータの回転子が１回転するごとに周期的に発生する。したがって、位置検出器の出力においては内挿誤差に起因する位置検出誤差が周期的に現れる。この位置検出誤差により、モータ制御装置が生成する速度指令もしくはトルク指令は周期的に振動し、その結果、モータ制御装置により駆動制御されるモータに騒音が発生してしまうという問題がある。位置検出誤差は、位置検出器の処理、構造および特性などの内容によって異なり、位置検出器固有のものである。
【０００４】
位置検出器が固有に持つ位置検出誤差の変動に対して、その周波数を算出し、それを中心周波数としてもつノッチフィルタをかけることによって位置検出誤差に対して補正をかけ、位置検出誤差に起因して発生する振動を低減する技術がある（例えば、特許文献１参照。）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１１−２５９１１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
モータ制御装置内に設けられる位置検出器には、内挿誤差に起因する周期的な位置検出誤差が存在する。このうち、位置検出誤差を含んだ位置検出値を用いてモータ制御装置が生成するトルク指令は周期的に振動し、このようなトルク指令を用いてモータの回転駆動を制御しようとすると、モータに騒音発生してしまうという問題がある。
【０００７】
また、特許文献１（特開平１１−２５９１１０号公報）に記載された発明は、位置検出器内で位置検出誤差に対する補正を行う機能を有するものである。しかしながら、このような補正機能を内部に持たない既存の位置検出器に対しては、その内部に当該補正機能を物理的に増設する形で設けなければならず、位置検出器の構造によっては困難であったり、コストが増大する問題がある。
【０００８】
従って本発明の目的は、上記問題に鑑み、位置検出器が固有に持つ位置検出誤差の変動があっても安定してモータを制御することができるモータ制御装置を実現することにある。
【課題を解決するための手段】
【０００９】
上記目的を実現するために、本発明の第１の態様においては、モータ制御装置は、モータの回転子の位置を検出する位置検出器と、位置検出器が検出した位置検出値に基づいて、速度検出値を算出する速度検出部と、モータの回転子の回転速度を指令する速度指令を生成する速度指令生成部と、位置検出器が検出した位置検出値に基づいて、補正量を算出する補正量算出部と、補正量を用いて速度検出値を補正する補正演算部と、速度指令と補正演算部により補正された速度検出値とに基づいてモータの回転トルクを指令するトルク指令を生成するトルク指令生成部と、を備える。
【００１０】
また、本発明の第２の態様においては、モータ制御装置は、モータの回転子の位置を検出する位置検出器と、位置検出器が検出した位置検出値に基づいて、速度検出値を算出する速度検出部と、モータの回転子の回転速度を指令する速度指令を生成する速度指令生成部と、速度指令と速度検出値とに基づいてモータの回転トルクを指令するトルク指令を生成するトルク指令生成部と、位置検出器が検出した位置検出値に基づいて、補正量を算出する補正量算出部と、補正量を用いてトルク指令を補正する補正演算部と、を備える。
【００１１】
本発明の第１および第２の態様においては、補正量算出部は、固有の周波数成分、振幅成分および初期位相を有する正弦波を複数合成することによって補正量を算出するようにしてもよい。
【００１２】
また、本発明の第１および第２の態様においては、各正弦波の周波数成分は、モータの回転周波数と位置検出器の物理的な目盛数で決まる基本周波数の自然数倍の値を有するようにしてもよい。
【００１３】
また、本発明の第１および第２の態様においては、補正量算出部は、予め測定された位置検出器が有する回転子の１回転あたりの内挿誤差に起因する誤差と補正量との差が所定の範囲内に収まるよう、補正量の算出処理において合成される各正弦波を決定するようにしてもよい。
【発明の効果】
【００１４】
本発明によれば、位置検出器が固有に持つ位置検出誤差の変動があっても安定してモータを制御することができるモータ制御装置を実現することができる。
【００１５】
本発明の第１の実施例によれば、モータの速度検出値を補正することにより位置検出値の内挿誤差に起因する速度検出誤差は低減するので、この補正後の速度検出値を用いて生成されたトルク指令については、位相検出器の内挿誤差に起因する振動は低減されたものとなる。また、本発明の第２の実施例によれば、モータに対するトルク指令を補正することにより、補正後のトルク指令については、位相検出器の内挿誤差に起因する振動は低減されたものとなる。その結果、本発明の第１および第２の実施例いずれについても、内挿誤差に起因する振動が低減されたトルク指令に従ってモータが回転するので、従来のように位相検出器の内挿誤差に起因するモータの騒音は発生しない。
【００１６】
また、本発明によれば、モータの速度検出値への補正やモータに対するトルク指令への補正に係る機能を有する補正量算出部および補正演算部をソフトウェアプログラム形式で構築することができるので、既存の位置検出器を有するモータ制御装置に対しても、上述の補正量算出部および補正演算部に係るソフトウェアプログラムをモータ制御装置に追加的にインストールするだけで、既存の位置検出器を改造する必要はなく本発明を適用可能である。
【図面の簡単な説明】
【００１７】
【図１】本発明の第１の実施例によるモータ制御装置を示すブロック図である。
【図２】補正量算出部および補正演算部の動作を説明する図である。
【図３】本発明の第１の実施例によるモータ制御装置１の動作フローを示すフローチャートである。
【図４】本発明の第２の実施例によるモータ制御装置を示すブロック図である。
【図５】補正量算出部および補正演算部の動作を説明する図である。
【図６】本発明の第２の実施例によるモータ制御装置１の動作フローを示すフローチャートである。
【発明を実施するための形態】
【００１８】
図１は、本発明の第１の実施例によるモータ制御装置を示すブロック図である。ここでは、モータ制御装置１によりモータ２を回転駆動させる例について説明する。モータ２の駆動電力は、電力変換器３によって生成される。電力変換器３は、例えばＰＷＭインバータなどのような、内部にスイッチング素子を有する変換回路（図示せず）で構成される。電力変換器３は、モータ制御装置１によって生成されたトルク指令に基づき、内部に設けられたスイッチング素子をスイッチング動作させることで、直流電力を、モータ２を回転駆動するための所望の電圧および所望の周波数の三相交流電力に変換する。モータ２は、供給された電圧可変および周波数可変の三相交流電力に基づいて動作する。
【００１９】
本発明の第１の実施例によるモータ制御装置１は、モータ２の回転子の位置を検出する位置検出器１１と、位置検出器１１が検出した位置検出値に基づいて、速度検出値を算出する速度検出部１２と、モータ２の回転子の回転速度を指令する速度指令を生成する速度指令生成部１３と、位置検出器１１が検出した位置検出値に基づいて、補正量を算出する補正量算出部１４と、補正量を用いて速度検出値を補正する補正演算部１５と、速度指令と補正演算部１５により補正された速度検出値とに基づいてモータの回転トルクを指令するトルク指令を生成するトルク指令生成部１６と、を備える。位置検出器１１の具体例としては、ロータリエンコーダやリニアスケールなどがある。
【００２０】
図２は、補正量算出部および補正演算部の動作を説明する図である。一例として、周期λで繰り返し発生する位置検出器１１の内挿誤差に起因する速度検出誤差が発生する場合における補正量算出部１４および補正演算部１５の動作について説明する。
【００２１】
上述のように、モータ制御装置１内に設けられる位置検出器１１には内挿誤差に起因する位置検出誤差が周期的に発生する。また、速度検出部１２は、位置検出誤差を含む位置検出値を微分することによって速度検出値を生成するので、速度検出値にも速度検出誤差が周期的に発生する。そこで、本発明の第１の実施例では、周期的に発生する速度検出誤差を、固有の周波数成分、振幅成分および初期位相を有する正弦波を複数合成する（重ね合わせる）ことによってモデル化し、このモデル化した値を、速度検出値に含まれる速度検出誤差を打ち消すための補正量として用いる。
【００２２】
補正量算出部１４は、固有の周波数成分、振幅成分およびを有する正弦波を複数合成することによって補正量を算出する。これら各正弦波の周波数成分は、モータの回転周波数と位置検出器１１の物理的な目盛数（例えば、位置検出器１１がロータリーエンコーダである場合はスリット数）で決まる基本周波数の自然数倍の値を有する。補正量算出部１４は、図２に示すような周期λで繰り返し発生する内挿誤差に起因する速度検出誤差と補正量との差が、所定の範囲内に収まるよう、当該補正量の算出処理において合成される各正弦波を決定する。補正量算出部１４により生成される補正量は、ｍ、ｎを自然数（１≦ｎ≦ｍ）、ｇnをｎ次高調波の振幅成分、ｄθ／ｄｔを基本周波数、ψnをｎ次高調波における初期位相としたとき、式１のように表される。
【００２３】
【数１】
0005850960.tif 000002
【００２４】
一般に位置検出器の内挿誤差は位置検出器ごとに固有であるので、補正量算出部１４による補正量の算出処理に先立ち、モータ制御装置１に設けられる位置検出器１１について、内挿誤差に起因する速度検出誤差を予め測定しておく。例えば、モータ２に一定速度で回転させる速度指令を与え、位置検出器１１から出力された測定位置と、モータが一定速度で動いたと仮定したときの位置からの差を測定する。測定した速度検出誤差を再現するようなｇn、φnを求める。補正量算出部１４は、このｇn、φnを用いて補正量を作成する。補正量算出部１４では、速度検出誤差と補正量との差が所定の範囲内に収まるまで、重ね合わせられる正弦波の数を増やす。より具体的にいえば、速度検出誤差と補正量との差が所定の範囲内に収まるまで、式１における自然数ｎを大きくすることで、式１における各正弦波を決定し、これらを重ね合わせることで補正量を算出する。
【００２５】
補正演算部１５は、補正量算出部１４により算出された補正量を用いて速度検出値を補正する。例えば、補正演算部１５は、図２に示す例において、周期λで繰り返し発生する内挿誤差に起因する速度検出誤差から、正弦波を複数重ね合わせることにより作成した補正量を減算することによって、速度検出誤差を低減する。
【００２６】
なお、速度検出部１２、速度指令生成部１３、補正量算出部１４、補正演算部１５およびトルク指令生成部１６は、例えばソフトウェアプログラム形式で構築されてもよく、あるいは各種電子回路とソフトウェアプログラムとの組み合わせで構築されてもよい。例えば速度検出部１２、速度指令生成部１３、補正量算出部１４、補正演算部１５およびトルク指令生成部１６をソフトウェアプログラム形式で構築する場合は、モータ制御装置１内の演算処理装置はこのソフトウェアプログラムに従って動作することで上述の速度検出部１２、速度指令生成部１３、補正量算出部１４、補正演算部１５およびトルク指令生成部１６の機能が実現される。したがって、既存の位置検出器を有するモータ制御装置に対しても、上述の補正量算出部１４および補正演算部１５に係るソフトウェアプログラムをモータ制御装置に追加的にインストールすることで本発明を適用可能である。
【００２７】
図３は、本発明の第１の実施例によるモータ制御装置１の動作フローを示すフローチャートである。
【００２８】
まず、ステップＳ１０１において、位置検出器１１は、電力変換器３から供給される駆動電力に基づき回転駆動されるモータ２の回転子の位置を検出する。
【００２９】
次いで、ステップＳ１０２において、速度検出部１２は、位置検出器１１が検出した位置検出値を微分することで速度検出値を生成する。
【００３０】
ステップＳ１０３では、速度指令生成部１３は、モータ２の回転子の回転速度を指令する速度指令を生成する。なお、ステップＳ１０３と、ステップＳ１０１およびＳ１０２とは、順序を入れ替えて実行してもよい。
【００３１】
ステップＳ１０４では、補正量算出部１４が、位置検出器１１が検出した位置検出値に基づいて、補正量を算出する。
【００３２】
次いで、ステップＳ１０５において、補正演算部１５は、速度検出値から補正量を減算することで速度検出値を補正する。これにより速度検出誤差が低減される。
【００３３】
次いで、ステップＳ１０６において、トルク指令生成部１６は、速度指令と補正演算部１５により補正された速度検出値とに基づいてモータの回転トルクを指令するトルク指令を生成する。このトルク指令は、速度検出誤差が低減された補正後の速度検出値を用いて作成されたものであるので、トルク指令誤差は低減されている。したがって、このトルク指令により電力変換動作が制御される電力変換器３が出力する駆動電力でモータ２が回転するので、従来のように位相検出器１１の内挿誤差に起因するモータの騒音は発生しない。
【００３４】
続いて、本発明の第２の実施例について説明する。本発明の第２の実施例では、上述の第１の実施例における速度検出値の補正に代えて、トルク指令を補正する。図４は、本発明の第２の実施例によるモータ制御装置を示すブロック図である。第２の実施例においても、上述の第１の実施例同様、モータ制御装置１によりモータ２の回転駆動を制御する例について説明する。すなわち、モータ２の駆動電力は、例えばＰＷＭインバータなどのような、内部にスイッチング素子を有する変換回路（図示せず）で構成される電力変換器３によって生成される。電力変換器３は、モータ制御装置１によって生成されたトルク指令に基づき、内部に設けられたスイッチング素子をスイッチング動作させることで、直流電力をモータ２を駆動するための所望の電圧および所望の周波数の三相交流電力に変換する。モータ２は、供給された電圧可変および周波数可変の三相交流電力に基づいて動作する。
【００３５】
本発明の第２の実施例によるモータ制御装置１は、モータ２の回転子の位置を検出する位置検出器１１と、位置検出器１１が検出した位置検出値に基づいて、速度検出値を算出する速度検出部１２と、モータ２の回転子の回転速度を指令する速度指令を生成する速度指令生成部１３と、速度指令と速度検出値とに基づいてモータの回転トルクを指令するトルク指令を生成するトルク指令生成部２１と、位置検出器１１が検出した位置検出値に基づいて、補正量を算出する補正量算出部２２と、補正量を用いてトルク指令を補正する補正演算部２３と、を備える。位置検出器１１の具体例としては、ロータリエンコーダやリニアスケールなどがある。
【００３６】
図５は、補正量算出部および補正演算部の動作を説明する図である。一例として、周期λで繰り返し発生する位置検出器１１の内挿誤差に起因するトルク指令誤差が発生する場合における補正量算出部２２および補正演算部２３の動作について説明する。
【００３７】
上述のように、モータ制御装置１内に設けられる位置検出器１１には内挿誤差に起因する位置検出誤差が周期的に発生する。また、速度検出部１２は、位置検出誤差を含む位置検出値を微分することによって速度検出値を生成するので、速度検出値にも速度検出誤差が周期的に発生する。また、トルク指令生成部２１は、速度指令と速度検出誤差を含む速度検出値とに基づいてモータの回転トルクを指令するトルク指令を生成するので、トルク指令にもトルク指令誤差が周期的に発生する。つまり、トルク指令の作成には、位置検出誤差を含んだ位置検出値を用いるので、トルク指令の中には内挿誤差に起因したトルク指令誤差が含まれている。そこで、本発明の第２の実施例では、周期的に発生するトルク指令誤差を、固有の周波数成分、振幅成分および初期位相を有する正弦波を複数合成する（重ね合わせる）ことによってモデル化し、このモデル化した値を、トルク指令に含まれるトルク指令誤差を打ち消すための補正量として用いる。
【００３８】
補正量算出部２２は、上述の第１の実施例における補正量算出部１４の場合と同様、固有の周波数成分、振幅成分および初期位相を有する正弦波を複数合成することによって補正量を算出する。これら各正弦波の周波数成分は、モータの回転周波数と位置検出器１１の物理的な目盛数で決まる基本周波数の自然数倍の値を有する。補正量算出部２２は、図５に示すような周期λで繰り返し発生する内挿誤差に起因するトルク指令誤差と補正量との差が、所定の範囲内に収まるよう、当該補正量の算出処理において合成される各正弦波を決定する。補正量算出部２２により生成される補正量は、上述の第１の実施例における補正量算出部１４の場合と同様、式１で表される。
【００３９】
一般に位置検出器の内挿誤差は位置検出器ごとに固有であるので、補正量算出部２２による補正量の算出処理に先立ち、モータ制御装置１に設けられる位置検出器１１について内挿誤差に起因するトルク指令誤差を予め測定しておく。例えば、位置検出器１１に位置検出誤差が発生しない理想状態においてトルク指令生成部２１により生成されるトルク指令は振動を含まないものであるが、一定速度で回転させる速度指令を与えてモータ２を実際に回転させると、トルク指令生成部２１から出力されるトルク指令には、位置検出器１１の内挿誤差に起因した振動すなわちトルク指令誤差が現れる。測定した速度検出誤差を再現するようなｇn、φnを求める（式１）。補正量算出部２２は、このｇn、φnを用いて補正量を作成する。補正量算出部２２では、トルク指令誤差と補正量との差が所定の範囲内に収まるまで、重ね合わせられる正弦波の数を増やす。より具体的にいえば、トルク指令誤差と補正量との差が所定の範囲内に収まるまで、式１における自然数ｎを大きくすることで、式１における各正弦波を決定し、これらを重ね合わせることで補正量を算出する。
【００４０】
補正演算部２３は、補正量算出部２２により算出された補正量を用いて速度検出値を補正する。例えば、図５に示すように、補正演算部２３は、周期λで繰り返し発生する内挿誤差に起因するトルク指令誤差から、正弦波を複数重ね合わせることにより作成した補正量を減算することによって、トルク指令誤差を低減する。
【００４１】
なお、速度検出部１２、速度指令生成部１３、トルク指令生成部２１、補正量算出部２２および補正演算部２３は、例えばソフトウェアプログラム形式で構築されてもよく、あるいは各種電子回路とソフトウェアプログラムとの組み合わせで構築されてもよい。例えば速度検出部１２、速度指令生成部１３、トルク指令生成部２１、補正量算出部２２および補正演算部２３をソフトウェアプログラム形式で構築する場合は、モータ制御装置１内の演算処理装置はこのソフトウェアプログラムに従って動作することで上述の速度検出部１２、速度指令生成部１３、トルク指令生成部２１、補正量算出部２２および補正演算部２３の機能が実現される。したがって、既存の位置検出器を有するモータ制御装置に対しても、上述の補正量算出部２２および補正演算部２３に係るソフトウェアプログラムをモータ制御装置に追加的にインストールすることで本発明を適用可能である。
【００４２】
図６は、本発明の第２の実施例によるモータ制御装置１の動作フローを示すフローチャートである。
【００４３】
まず、ステップＳ２０１において、位置検出器１１は、電力変換器３から供給される駆動電力に基づき回転駆動されるモータ２の回転子の位置を検出する。
【００４４】
次いで、ステップＳ２０２において、速度検出部１２は、位置検出器１１が検出した位置検出値を微分することで速度検出値を生成する。
【００４５】
ステップＳ２０３では、速度指令生成部１３は、モータ２の回転子の回転速度を指令する速度指令を生成する。なお、ステップＳ２０３と、ステップＳ２０１およびＳ２０２とは、順序を入れ替えて実行してもよい。
【００４６】
ステップＳ２０４では、補正量算出部２２が、位置検出器１１が検出した位置検出値に基づいて、補正量を算出する。
【００４７】
ステップＳ２０５において、トルク指令生成部２１は、速度指令と速度検出値とに基づいてモータの回転トルクを指令するトルク指令を生成する。なお、ステップＳ２０５とステップＳ２０４とは、順序を入れ替えて実行してもよい。
【００４８】
次に、ステップＳ２０６において、補正演算部２３は、トルク指令から補正量を減算することでトルク指令を補正する。これによりトルク指令誤差が低減される。この補正後のトルク指令により電力変換動作が制御される電力変換器３が出力する駆動電力でモータ２が回転するので、従来のように内挿誤差に起因するモータの騒音は発生しない。
【産業上の利用可能性】
【００４９】
本発明は、モータの回転子の位置を検出する位置検出器を備えるモータ制御装置に適用することができる。
【符号の説明】
【００５０】
１    モータ制御装置
２    モータ
３    電力変換器
１１    位置検出器
１２    速度検出部
１３    速度指令生成部
１４、２２    補正量算出部
１５、２３    補正演算部
１６、２１    トルク指令生成部
【図１】
0005850960.tif 000003
【図２】
0005850960.tif 000004
【図３】
0005850960.tif 000005
【図４】
0005850960.tif 000006
【図５】
0005850960.tif 000007
【図６】
0005850960.tif 000008