(57)【要約】【課題】  機械系に剛性の低い部分があったとしても、位置決め精度を低下させることなく、機械系の微振動を抑制できるモータ制御方法及び装置を提供する。【解決手段】  現在速度データ生成部９は、差分現在位置データ生成部７が生成した差分現在位置データに基づいてモータＭの可動子の現在速度データを生成する。現在速度データ生成部９は、極性判定部１１が極性が変化したことを判定した後直ちに、差分現在位置データ生成部７から出力される差分現在位置データを１以上の整数であるｎサンプリング周期の間ゼロとして現在速度データを生成する。現在速度データ生成部９は、ｎサンプリング周期が経過した後、差分現在位置データをゼロから実際のデータに戻す。その結果、制御できない力の影響で可動子の振動が大きくなって、騒音が発生するのを防ぐことができる。【選択図】  図１
2011151887.tif 000002
【特許請求の範囲】
【請求項１】
モータの可動子の移動位置を指令する位置指令データと、デジタル・エンコーダにより検出された前記可動子の現在位置を示す現在位置データとから偏差を演算して位置偏差データを生成し、
今回サンプリングした現在位置データと前回サンプリングした現在位置データとの差分を演算して差分現在位置データを生成し、
前記差分現在位置データに基づいて前記可動子の現在速度データを生成し、
前記位置偏差データに基づいて作成された速度指令データと前記現在速度データとの偏差を演算して速度偏差データを生成し、
前記速度偏差データに基づいてトルク指令データを生成し、
前記トルク指令データに基づいて前記モータのトルクを制御するモータ制御方法において、
前記差分現在位置データの極性が変化するか否かを判定し、
前記極性が変化したことが判定された後、前記差分現在位置データを１以上の整数であるｎサンプリング周期の間ゼロとして前記現在速度データを生成することを特徴とするモータ制御方法。
【請求項２】
前記可動子と負荷との間に弾性変形する連結機構が配置されており、
前記ｎは、発生する前記可動子の微振動が、前記連結機構の剛性に影響を受けない値に定められている請求項１に記載のモータ制御方法。
【請求項３】
前記連結機構がボールねじ連結機構であり、前記ｎが１である請求項２に記載のモータ制御方法。
【請求項４】
モータの可動子の現在位置をデジタル値で出力するエンコーダと、
前記可動子の移動位置を指令する位置指令データと、前記エンコーダにより検出された前記可動子の前記現在位置を示す現在位置データとから偏差を演算して位置偏差データを生成する位置偏差データ生成部と、
今回サンプリングした現在位置データと前回サンプリングした現在位置データとの差分を演算して差分現在位置データを生成する差分現在位置データ生成部、
前記差分現在位置データに基づいて前記可動子の現在速度データを生成する現在速度データ生成部と、
前記位置偏差データに基づいて速度指令データを生成する位置制御器と、
前記現在速度データと前記速度指令データとの偏差を演算して速度偏差データを生成する速度偏差データ生成部と、
前記速度偏差データに基づいてトルク指令データを生成する速度制御器と、
前記トルク指令データに基づいて前記モータのトルクをデジタル制御するトルク制御部とを備えてなるモータ制御装置において、
前記現在速度データ生成部は、前記差分現在位置データの極性が変化するか否かを判定する極性判定部を含み、前記極性が変化したことが判定された後、前記差分現在位置データを１以上の整数であるｎサンプリング周期の間ゼロとして前記現在速度データを生成することを備えていることを特徴とするモータ制御装置。
【請求項５】
前記可動子と負荷との間に弾性変形する連結機構が配置されており、
前記ｎは、発生する前記可動子の微振動が、前記連結機構の剛性に影響を受けない値に定められている請求項４に記載のモータ制御装置。
【請求項６】
前記連結機構がボールねじ連結機構であり、前記ｎが１である請求項５に記載のモータ制御装置。
【請求項７】
前記現在速度データ生成部は、前記位置指令データがゼロであるときに、前記極性が変化したことが判定された後、前記差分現在位置データを１以上の整数であるｎサンプリング周期の間ゼロとして前記現在速度データを生成する請求項４に記載のモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械などの高精度位置決めを行うモータ制御方法及び装置に関するものである。
【背景技術】
【０００２】
モータを用いた工作機械などの位置決め装置では、デジタル・エンコーダによりモータの可動子の現在位置を検出し、位置指令に応じた位置にモータの可動子を位置決めしている。このような装置で、例えば位置指令を０にして、モータを指令位置で停止させた場合において、位置検出がデジタル値による検出であるため、可動子にはエンコーダの±１パルス分の変動が常に生じている。モータと負荷とを連結する機械系が剛体である場合は、この変動は増幅されず、大きな問題は生じない。しかしながら、モータと負荷とを連結する機械系に剛性の低い部分がある場合には、条件によって、この変動が増幅され、機械系に共振した微振動を生ずることがある。
【０００３】
例えば、モータのシャフトにボールねじ連結機構が接続されて機械系が構成されている場合、ボールねじ連結機構のボールには図６に示すように弾性変形が生じる。図６（Ｂ）は、弾性変形をしていないボールであり、図６（Ａ）及び（Ｃ）は、振動により弾性変形したボールを誇張して描いている。図６（Ａ）及び（Ｃ）中の矢印は振動時の移動方向を示している。
【０００４】
デジタル・エンコーダによるモータの可動子の位置検出は、サンプリング周期ごとに実行される。そのためサンプリングが実行されるまでは、前回のサンプリングで検出された位置が可動子の位置となる。その結果、図５に示すように、実際の位置に対して遅れを持って位置を検出している。また、速度算出時も差分演算による遅れが原因となって、速度もサンプリング周期によって決まる検出粗さと時間遅れを伴って検出される。こうして検出された速度が抑制されるように速度制御系は動作する。また、モータに接続されているボールねじのボールの動きは、モータの動きよりさらに弾性変形分遅れる。そのため、モータの可動子が停止位置に停止させられている状況においても、巨視的に見ると、モータが±１パルスで変動している場合には、ボールの移動方向反転後［図６（Ａ）の状態から図６（Ｂ）の状態に戻るとき、または図６（Ｃ）の状態から図６（Ｂ）の状態に戻るとき］に、ボールが弾性変形から戻る速度を増幅するようにモータの軸を動かしてしまうことがある。この場合、ボールねじのボールが弾性変形を繰り返して微振動し、ボールねじを中心に機械から音が発生する。こういった微振動は、ボールねじの劣化などにつながるため、できるだけ抑制することが望ましい。
【０００５】
この微振動を抑制する方法として、モータ制御装置の速度ループや位置ループのゲインを機械系が共振しなくなるまで下げる方法がある。しかし、このような方法では、応答特性が低下し、サーボ剛性も低下してしまうという問題があった。別の方法としてトルク指令にノッチフィルタを挿入し、微振動の周波数成分をトルク指令から除外する方法がある。しかし、ノッチフィルタを挿入すると、ノッチ周波数より低い周波数において位相が遅れるため、速度制御応答特性にハンプなどを生じ、制御特性が悪くなるという問題があった。
【０００６】
また、別の微振動を抑制する技術として、特許文献１に示されたモータ制御装置に示された技術がある。特許文献１に示された装置では、モータ停止回路と不感帯形成回路とを備えている。モータ停止判定回路は、位置指令データがゼロであり、位置偏差データが位置決め完了範囲内にある場合に、モータが停止状態にあると判定する。不感帯形成回路は、モータ停止判定回路が、モータ停止と判定した場合には、位置決め点から±１パルス分の変動により変化するトルク指令分を無視するために、トルク指令に対して不感帯を設けている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００７−２５２０９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１の技術では、位置指令が０の場合にトルクに不感帯を設ける。不感帯の存在により、停止状態にあるモータの可動子の位置が外力等により、＋２パルスもしくは−２パルス変化しないとトルクが出力されない。このような不感帯を設けると、不感帯においては、位置決め制御をすることができない。そのために、特許文献１の装置では、位置決め精度を高めることができない。特に、モータ停止時に外力が加わった場合は、１パルス分の位置ずれを生じても、位置決め制御が行われない。そのため、工作機械のような高い位置決め精度が必要な用途で従来の装置を利用すると、加工精度が低下してしまうという問題があった。
【０００９】
本発明の目的は、デジタル・エンコーダを用いたモータ制御装置において、機械系に剛性の低い部分があったとしても、位置決め精度を低下させることなく、機械系の微振動を抑制できるモータ制御方法及び装置を提供することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成する本発明のモータ制御方法では、モータの可動子の移動位置を指令する位置指令データと、デジタル・エンコーダにより検出された可動子の現在位置を示す現在位置データとから偏差を演算して位置偏差データを生成する。また今回サンプリングした現在位置データと前回サンプリングした現在位置データとの差分を演算して差分現在位置データを生成する。そして差分現在位置データに基づいて可動子の現在速度データを生成する。さらに位置偏差データに基づいて作成された速度指令データと現在速度データとの偏差を演算して速度偏差データを生成し、この速度偏差データに基づいてトルク指令データを生成する。そしてトルク指令データに基づいてモータのトルクを制御する。特に、本発明においては、可動子が目標位置を通過するときに、差分現在位置データの極性が変化することを利用する。そこでまず差分現在位置データの極性が変化するか否かを判定する。そして極性が変化したことが判定された後、差分現在位置データを１以上の整数であるｎサンプリング周期の間ゼロとして現在速度データを生成する。
【００１１】
理論的には、差分現在位置データの極性が変化したときは、可動子が目標とする位置を通過したときである。位置指令データが目標位置（位置決め点）を指令しているときであれば、理論的には、可動子は目標位置にある。しかし従来の技術のように不感帯を設けない場合（制御が継続されている場合）には、可動子は目標位置を中心にしてエンコーダの出力の±１パルス内で微細に揺れている状況にある。すなわち極性が変化したことが判定された後、直ちに差分現在位置データに基づいて現在速度データを生成すると、極性が変化する前の移動方向とは逆の方向に可動子を移動させるトルクが発生する。例えば、モータと負荷とを連結する連結機構が弾性変形をする程度に機械的剛性が低い場合には、弾性変形を元に戻そうとする比較的大きな反発力が発生する。この反発力は、前述の可動子を逆方向に移動させるトルクを、増大する作用を果たす。その結果、可動子の移動量が大きくなって、最悪の場合には、共振が発生し、人間の耳で確認できるほどの振動音が発生する。本発明のように、極性が変化したことが判定された後、差分現在位置データを１以上の整数であるｎサンプリング周期の間ゼロとすると、その期間中は現在速度データはゼロとなり、可動子には弾性変形に基づく反発力だけが働いている。このｎサンプリング周期の間に、弾性変形に基づく反発力による可動子の変位は終了する。そしてｎサンプリング周期が経過した後に、差分現在位置データをゼロから実際のデータに戻す。このようにすると原因は、何であっても、制御できない力が差分現在位置データの極性が判定した後に可動子に作用する場合に、１以上の整数であるｎサンプリング周期の間、差分現在位置データをゼロとすれば、制御できない力の影響で可動子の振動が大きくなって、騒音が発生するのを防ぐことができる。また従来の技術のように不感帯を設けていないので、位置決め精度を従来よりも高めることができる。
【００１２】
ｎの値は、一定ではなく、可動子と負荷との間に配置される弾性変形する連結機構の機械的剛性に応じて適宜に設定されるとよい。そのｎの設定基準は、発生する可動子の微振動が、連結機構の剛性に影響を受けない値に定めることである。このようにすれば本発明の効果を有効に発揮することができる。
【００１３】
なお連結機構が、一般的な剛性のボールねじ連結機構である場合には、ｎを１にすればよい。その他の構造の連結機構を用いる場合には、適切なｎの値を選択すればよい。
【００１４】
本発明の方法を実施するモータ制御装置は、モータの可動子の現在位置をデジタル値で出力するエンコーダと、位置偏差データ生成部と、差分現在位置データ生成部、現在速度データ生成部と、位置制御器と、速度偏差データ生成部と、速度制御器と、トルク制御部とを備えている。位置偏差データ生成部は、可動子の移動位置を指令する位置指令データと、エンコーダにより検出された可動子の現在位置を示す現在位置データとから偏差を演算して位置偏差データを生成する。差分現在位置データ生成部は、今回サンプリングした現在位置データと前回サンプリングした現在位置データとの差分を演算して差分現在位置データを生成する。現在速度データ生成部は、差分現在位置データに基づいて可動子の現在速度データを生成する。位置制御器は、位置偏差データに基づいて速度指令データを生成する。速度偏差データ生成部は、現在速度データと速度指令データとの偏差を演算して速度偏差データを生成する。速度制御器は、速度偏差データに基づいてトルク指令データを生成する。トルク制御部は、トルク指令データに基づいてモータのトルクを制御する。現在速度データ生成部は、差分現在位置データの極性が変化するか否かを判定する極性判定部を含んでいる。そして現在速度データ生成部は、極性判定部が、極性が変化したことを判定した後直ちに、差分現在位置データを１以上の整数であるｎサンプリング周期の間ゼロとして現在速度データを生成する。本発明によれば、本発明の方法を簡単且つ確実に実施することができる。
【００１５】
本発明の装置でも、可動子と負荷との間に弾性変形する連結機構が配置されている場合には、発生する可動子の微振動が、連結機構の剛性に影響を受けない値にｎの値を定めればよい。また連結機構が一般的な剛性のボールねじ連結機構であれば、ｎを１とすればよい。
【００１６】
本発明は、停止操作する場合、すなわち位置指令データがゼロであるときにも当然にして適用できる。この場合も、極性が変化したことが判定された後、差分現在位置データを１以上の整数であるｎサンプリング周期の間ゼロとして現在速度データを生成する。
【図面の簡単な説明】
【００１７】
【図１】本発明のモータ制御方法を実施するモータ制御装置の実施の形態の一例の構成を示すブロック図である。
【図２】（Ａ）乃至（Ｃ）は、図１の実施の形態の動作の説明に用いるタイムチャートである。
【図３】（Ａ）及び（Ｂ）は、一方向に移動した場合の位置決め点付近でのトルク指令とエンコーダ出力の関係を示す図である。
【図４】（Ａ）及び（Ｂ）は、実際の機械で計測したモータ停止時の可動子の位置を示す図である。
【図５】本実施の形態にけるモータの可動子の位置検出動作を説明するためのタイムチャートである。
【図６】（Ａ）乃至（Ｃ）は、機械系として用いるボールねじ連結機構のボールの弾性変形を説明するための図である。
【発明を実施するための形態】
【００１８】
図１は、本発明のモータ制御方法を実施するモータ制御装置の実施の形態の一例の構成を示すブロック図である。本実施の形態のモータ制御装置１は、モータＭ（回転型モータ及びリニアモータの両方を含む）の可動子（回転型モータの場合にはロータ）の現在位置をデジタル値で出力するデジタル・エンコーダＥと、位置偏差データ生成部３と、位置制御器５と、差分現在位置データ生成部７、現在速度データ生成部９と、速度偏差データ生成部１５と、速度制御器１７と、トルク制御部１９とを備えている。エンコーダＥとしては、光学式エンコーダ、磁気式エンコーダ等の公知のエンコーダを用いることができる。
【００１９】
減算器により構成される位置偏差データ生成部３は、モータＭの可動子の移動位置を指令する位置指令データと、エンコーダＥにより検出された可動子の現在位置を示す現在位置データとから偏差を演算して位置偏差データを生成する。
【００２０】
差分現在位置データ生成部７は、エンコーダＥにより今回サンプリングした現在位置データと前回サンプリングした現在位置データとの差分を演算して差分現在位置データを生成する。そこで差分現在位置データ生成部７は、エンコーダＥからの出力を前回サンプリング分と今回サンプリング分とを少なくとも記憶する記憶部と、記憶部に記憶した前回のデータと今回のデータの差分を取る差分演算部と、差分演算部の演算結果を記憶する結果記憶部とを備えて構成されている。
【００２１】
現在速度データ生成部９は、差分現在位置データ生成部７が生成した差分現在位置データに基づいてモータＭの可動子の現在速度データを生成する。現在速度データ生成部９は、差分現在位置データ生成部７が生成する差分現在位置データの極性が変化するか否かを判定する極性判定部１１とゲイン乗算部１３とを含んでいる。極性判定部１１は、図２（Ａ）に示すような、差分現在位置データ生成部７で生成される差分現在位置データが「０」レベルを基準として大きいか否かにより、極性が変化しているか否かを判定する。図２（Ａ）に示す状況は、位置偏差データ生成部３に入力される位置指令データがゼロであるときに、可動子が僅かであるが振動している状況を示している。本実施の形態では、図２（Ｂ）に示すように、現在速度データ生成部９は、極性判定部１１が極性が変化したことを判定した後直ちに、差分現在位置データ生成部７から出力される差分現在位置データを１以上の整数であるｎサンプリング周期の間ゼロとして現在速度データを生成する。図２（Ｂ）では、この状態を「ヒステリシス挿入後の差分位置」と名付けている。ここで「ヒステリシス」とは、「前の状態を後の状態として予め定めた期間挿入する（維持する）」という意味で使用している。図２（Ｂ）の例では、極性反転判定前の「０」状態を、極性反転判定後に１サンプリング周期分維持している。ゲイン乗算部１３は、常時は、差分現在位置データ生成部７から出力される差分現在位置データに所定のゲインを乗算して速度フィードバックとして出力する。ゲイン乗算部１３は、エンコーダＥの分解能に応じたゲインをかけることにより、速度フィードバックを算出している。
【００２２】
位置制御器５は、位置偏差データ生成部３が生成した位置偏差データに基づいて速度指令データを生成する。減算器からなる速度偏差データ生成部１５は、現在速度データ生成部９のゲイン乗算部１３から出力される現在速度データ（速度フィードバック）と位置制御器５が出力する速度指令データとの偏差を演算して、速度偏差データとして出力する。速度制御器１７は、速度偏差データ生成部１５が出力する速度偏差データに基づいてトルク指令データを生成する。トルク制御部１９は、入力されるトルク指令データに基づいて可動子のトルクを制御する。
【００２３】
理論的には、差分現在位置データの極性が変化したときは、モータＭの可動子が目標とする停止位置を通過したときである。位置偏差データ生成部３に入力される（上位のコントローラから入力される）位置指令データに応じて、理論的には、可動子は目標位置で停止している。しかし実際上は、可動子は目標位置を中心にしてエンコーダＥの出力の±１パルス内で微細に揺れている状況にある。そこでもし極性判定部１１が極性の変化を判定した後、その後の差分現在位置データに基づいて現在速度データ生成部９が現在速度データを生成すると、極性が変化する前の移動方向とは逆の方向に可動子を移動させるトルクが発生する。先に図６を用いて説明したように、モータＭと負荷とを連結する機械系ＭＳとしての連結機構が弾性変形をするボールねじ連結機構であるとすると、機械系の機械的剛性が低いために、図６（Ａ）または（Ｃ）に示すように、ボールの弾性変形を元に戻そうとする比較的大きな反発力が発生する。この反発力は、前述の可動子を逆の方向に移動させるトルクを、増大する作用を果たす。その結果、可動子の移動量が大きくなって、最悪の場合には、共振が発生し、人間の耳で確認できるほどの振動音が発生する。
【００２４】
本実施の形態では、極性判定部１１が、極性が変化したことが判定した後直ちに、差分現在位置データ生成部７が出力する差分現在位置データを１以上の整数であるｎサンプリング周期の間ゼロとする。したがってそのサンプリング周期期間中は、現在速度データはゼロとなる。この期間、可動子には、弾性変形に基づく反発力が働いているが、このｎサンプリング周期の間に、弾性変形に基づく反発力による可動子の変位は終了する。そして現在速度データ生成部９は、ｎサンプリング周期が経過した後は、差分現在位置データをゼロから実際のデータに戻す。このようにすると、制御できない力（弾性変形による反発力等）の影響で可動子の振動が大きくなって、騒音が発生するのを防ぐことができる。
【００２５】
図２を用いて、より具体的に説明すると、図２（Ａ）に示す差分現在位置データの極性が変化した場合、図２（Ｂ）のヒステリシス挿入後の差分現在位置データは１サンプリング周期経過した後に変化している。すなわちモータの可動子の速度の極性が変化した場合に、１サンプル分（１サンプリング周期分）、速度フィードバックは出力されない。その後、２サンプル連続で同じ極性の値が来た時に初めて速度フィードバックに値が現れる。このため、時間的に１サンプル分（１サンプリング周期分）のヒステリシスが挿入されたことになる。これにより、モータ停止時にエンコーダの±１パルスの変動を生じて制御している制御系の動作が１サンプル分（１サンプリング周期分）遅れることになる。そのため本実施の形態によれば、前述のボールねじ連結機構のボールが弾性変形から戻る動きを増幅するようにモータの可動子を動かしてしまうことがある制御系において、速度の検出が１サンプル分遅れることになる。その結果、本実施の形態によれば、ボールねじ連結機構のボールが弾性変形から戻る動きを加速することがなくなって、ボールねじの微振動は抑制される。なお、機械系の剛性がさらに低い場合は、ヒステリシスのパルス数（ｎサンプリング周期のｎの数）を増やすことにより、対応する。
【００２６】
本実施の形態では、速度フィードバック算出時の位置の差分演算結果に対し、速度の極性が変化した時に、１制御サンプリング（サンプリング周期）という短い時間のヒステリシスを挿入した。これにより、位置決め精度を下げることなく、機械系の剛性が低い場合に生ずる弾性変形に伴う微振動を抑制することができる。そして、機械の劣化を防ぎ、高いサーボ応答による高精度な加工を実現できる。
【００２７】
図３（Ａ）及び（Ｂ）は一方向に移動した場合の位置決め点付近でのトルク指令とエンコーダ出力の関係を示したものである。図３（Ａ）はサンプリング周期と比較して長い時間（周期）でトルク指令の変化をみた場合のトルク指令を示している。長い時間（周期）で見ると、１サンプリング周期の間差分現在位置データをゼロとするヒステリシスは挿入されていない場合と同じになる。図３（Ｂ）はサンプリング周期相当の時間でトルク指令の変化を見た場合のトルク指令を示している。この場合は、サンプリング相当の時間で見ると１サンプリング周期の間差分現在位置データをゼロとするヒステリシスが挿入されている。図４（Ａ）及び（Ｂ）は、実際の機械で計測したモータ停止時の可動子の位置を示している。図４（Ａ）はヒステリシスが無い場合であり、この例では±２パルスの微振動を生じている。図４（Ｂ）は１サンプリング周期の間差分現在位置データをゼロとするヒステリシスを挿入した場合であり、微振動が抑制されている。
【産業上の利用可能性】
【００２８】
本発明によれば、原因は何であっても、差分現在位置データの極性が判定した後に制御できない力が可動子に作用する場合に、１以上の整数であるｎサンプリング周期の間、差分現在位置データをゼロとすることにより、制御できない力の影響で可動子の振動が大きくなって、騒音が発生するのを防ぐことができる。また従来の技術のような不感帯を設けていないので、位置決め精度を従来よりも高めることができる。
【符号の説明】
【００２９】
１  モータ制御装置
３  位置偏差データ生成部
５  位置制御器
７  差分現在位置データ生成部
９  現在速度データ生成部
１１  極性判定部
１３  ゲイン乗算部
１５  速度偏差データ生成部
１７  速度制御器
１９  トルク制御部
【図１】
2011151887.tif 000003
【図２】
2011151887.tif 000004
【図３】
2011151887.tif 000005
【図５】
2011151887.tif 000006
【図６】
2011151887.tif 000007
【図４】
2011151887.tif 000008