(58)【調査した分野】(Int.Cl.,DB名)
前記第1のトルクオフセットは、モータによって直動運動する移動体が有する摩擦トルクであり、前記第2のトルクオフセットは移動体の受ける重力を保持するトルクである重力保持トルクである請求項1に記載のモータ制御装置。
モータによって移動体を直動運動させたときに得られるトルク波形に基づいて、前記第1のトルクオフセット、前記第2のトルクオフセット、および前記負荷慣性モーメントが設定される請求項1または2に記載のモータ制御装置。
【背景技術】
【0002】
モータに移動体を接続して移動体を移動させる機構では、モータ制御装置にてモータのロータに対する位置指令または速度指令を生成してモータを制御し、モータに取り付けたエンコーダから得られたモータのロータ位置やロータ速度の情報がモータ制御装置にフィードバックされるサーボ制御ループが構成される。このような機構として、例えば、モータとボールねじをカップリングで結合し、ボールねじのナットには移動体であるテーブルが取り付けられたものがある。
【0003】
上述のようなサーボ制御ループにおいては、ステップ状の速度指令を与えると、指令開始時点における加速度が無限大となってしまい、モータが出力可能な最大トルクである許容トルクを超えてしまう。また、急激な加減速は、移動体に対して大きな衝撃を与え、位置決め精度が悪化する原因となる。このため、実際の指令では加減速処理によって加速度を制限している。代表的な加減速処理として、例えば移動平均型加減速(直線加減速)や、2段移動平均型加減速(S字加減速もしくはベル型加減速とも称する)などがある(例えば、非特許文献1参照。)。
【0004】
例えば、移動平均型加減速処理では、入力される速度指令f
in(τ)に対して、式1に示す演算処理が実行される。式1において、移動平均時間(1次加減速時間)をτ
1とし、移動平均型加減速処理後の速度指令をf
out(τ)とする。
【0005】
【数1】
【0006】
しかしながら、式1に基づく移動平均型加減速処理では、加速度指令に対して加速度応答が十分に早く追従する場合、加速度応答がステップ状に発生してしまい、モータに接続された移動体に与える衝撃が大きくなる。これを回避するためには、2段移動平均型加減速が用いられるのが多い。2段移動平均型加減速処理では、入力される速度指令f
in(τ)に対して、式2に示す演算処理が実行される。式2において、1段移動平均時間(1次加減速時間)をτ
1とし、2段移動平均時間(2次加減速時間)をτ
2とし、2段移動平均型加減速処理後の速度指令をf
out(τ)とする。なお、τ
1>τ
2の関係が成り立つものとする。
【0007】
【数2】
【0008】
ここで、式2に基づく2段移動平均型加減速処理のシミュレーション波形として
図5〜
図11を例示する。本シミュレーションでは、モータとボールねじをカップリングで結合し、ボールねじのナットには移動体であるテーブルが取り付けられたモデルを用いている。移動体であるテーブルの減速距離Dを0.4[m]とし、テーブルの最高速度V
Lを1.33[m/sec](=4000[rpm]÷60[sec/min]×0.02[m/rev])として、テーブルを上昇方向(すなわち重力に逆らう方向)に移動させる場合を考える。以下、減速距離Dとは、現在位置から減速を開始したときの減速距離を意味し、よって、現在位置に減速距離Dを加えた位置が、移動体の減速後の位置になる。通常、時々刻々、減速距離Dおよび減速距離Dと現在位置との合計(すなわち移動体の減速後の位置)を計算し続け、算出された移動体の減速後の位置が目標位置に達したときに減速を開始する。また、モータの最高回転数N
Lを4000[rpm]とし、ボールねじのリードを0.020[m/rev]とし、モータの回転運動におけるモータ回転角度を移動体における直動運動時の移動距離に変換するための回転直線変換係数Rを0.00318[m/rad](=0.02÷2π)とする。2段移動平均型加減速処理の1段移動平均時間τ
1を160[msec]、2段移動平均時間τ
2を80[msec]とする。モータのロータ慣性モーメントJ
mを0.00179[kgm
2]とする。また、テーブル、ボールねじ、カップリングの慣性モーメントの合計として表される移動体の慣性モーメントJ
mを0.00537[kgm
2]とする。モータによって直動運動する移動体が有する摩擦トルクを2[Nm]とする。また、移動体の受ける重力を保持するトルク(以下、「重力保持トルク」と称する)を4[Nm]とする。
【0009】
図5は、2段移動平均型加減速処理を実行する前の速度指令を示す図である。なお、
図5においては、速度指令f
in(τ)をモータ回転数で表している。テーブルが最高速度V
L(すなわちモータが最高回転数N
Lで回転している)で移動している状態から減速距離D=0.4[m])の位置に停止させるステップ状の速度指令f
in(τ)を与えると、2段移動平均型加減速処理を実行しない場合は、式3で示すように停止するまでに300[msec]の時間を要する。
【0010】
【数3】
【0011】
一方、
図6は、
図5に示す速度指令に対して2段移動平均型加減速処理が実行された場合の速度指令を示す図である。なお、
図6においては、速度指令f
out(τ)をモータ回転数で表している。
図5に示す速度指令f
in(τ)に対して2段移動平均型加減速処理を実行すると、
図6に示すような速度指令f
out(τ)が得られる。
図7は
図6に示す2段移動平均型加減速処理後の速度指令が与えられた場合の移動体の加速度を示す図であり、
図8は
図7に示す移動体の加速度についての加加速度を示す図である。また、
図9は、
図6に示す2段移動平均型加減速処理後の速度指令が与えられた場合の移動体の位置を示す図である。
図9に示すように、減速距離D=0.4[m])の位置に停止させるために540[msec]を要しており、2段移動平均型加減速処理を実行しない場合(
図5)の300[msec]に比べて位置決め時間は長くなっている。
【0012】
また、
図10は、
図6に示す2段移動平均型加減速処理後の速度指令が与えられた場合の発生トルクを示す図である。
図11は、
図6に示す2段移動平均型加減速処理後の速度指令が与えられた場合の回転数とトルクとの関係を示す図である。
図11において、モータが出力可能な最大トルクである許容トルクを破線で示し、実線は2段移動平均型加減速処理後の速度指令が与えられた場合の発生トルクを実線で示す。
図11に示すように、加速終了側のトルクが許容トルク内に収まるようにかつ加速終了側のトルクが許容トルクにできるだけ近くなるように、1段移動平均時間τ
1および2段移動平均時間τ
2が設定される。また、加速開始側の発生トルクと加速終了側の発生トルクが対称形であり、またここでは図示しないが速度−加速度グラフについても加速開始時と加速終了時で対称形になり、モータの許容トルクはモータ回転数が高い時に大きく低下するので、加速開始側の発生トルクはモータの許容トルクに対して余裕がある。また、上述のように1段移動平均時間τ
1および2段移動平均時間τ
2は加速終了側の発生トルクがモータの許容トルクに収まるように設定されるため、減速中に発生するトルクは許容トルクよりも十分に小さい値となる。
【0013】
このように、式2に基づく2段移動平均型加減速処理は、式1に基づく移動平均型加減速処理において生じ得たモータに接続された移動体に与える衝撃を回避できる利点があるものの、モータの高速域の加減速性能に制限されてしまうので、モータの低速域では性能に見合った十分な加速を行うことができない。つまり、低速域では加速性能のかなり大きな部分が生かされず、その分、位置決めやその前後の加減速に余計な時間がかかってしまう欠点がある。
【0014】
これに対し、軸の移動方向(モータ回転方向)と加速ならびに減速ごとの4通りのトルク波形に対して、(速度、加速度)の点列で構成される加速度パターンをモータの出力トルクに合わせて設定する加減速制御方法が提案されている(例えば、特許文献1参照。)。この方法によれば、モータ速度と加速度との関係を、加速開始側のトルクと加速終了側のトルクで対称形にせずに設定することで、加速開始側の発生トルクが許容トルクに近くなるようにすることができ、低速域の加速性能を効率よく利用することができる。
【0015】
ここで、上述したモータとボールねじをカップリングで結合し、ボールねじのナットには移動体であるテーブルが取り付けられたモデルに、特許文献1に記載された発明を適用した場合のシミュレーション波形について
図12〜
図16を参照して説明する。シミュレーションで用いたパラメータは、
図5〜
図11を参照して説明したシミュレーションのものと同様とする。
図12は、特許文献1(特許第3681972号公報)に記載された発明において、シミュレーションに用いた速度と加速度との関係を示す図であって、(A)は加速時、(B)は減速時を示す。また、
図13は、
図12に示す速度と加速度との関係をグラフ化した図である。本シミュレーションでは、モータにより移動体をプラス方向に移動させたときの加速時および減速時の速度と加速度との関係を
図12および
図13に示すように設定し、その間の速度は直線補完している。
【0016】
図12および
図13に示すように設定された加速度A(t)で加速したときの速度V(t)は式4のように表される。式4において計算周期をΔtとする。
【0017】
【数4】
【0018】
移動体の最高速度V
cとする。モータ制御装置1においては、最高速度V
cから減速するのに要する減速距離Dを計算し、目標の停止位置から減速距離Dだけ離れた位置に移動体が達したとき、
図12および
図13に示すように設定された加速度A(t)で減速し、速度V(t)=0になったところで停止する。
【0019】
図14は、
図12および
図13に示す速度と加速度との関係を維持しながら移動体を移動させたときの発生トルクを示す図である。また、
図15は、
図12および
図13に示す速度と加速度との関係を維持しながら移動体を移動させたときの移動体の位置を示す図である。
図15に示すように、減速距離D=0.4[m])の位置に停止させるために430[msec]を要しており、2段移動平均型加減速処理を実行した場合(
図9)の540[msec]に比べて位置決め時間は短くなっている。
図16は、
図12および
図13に示す速度と加速度との関係を維持しながら移動体を移動させたときの回転数とトルクとの関係を示す図である。
図16に示すように、加速終了側のトルクをモータの許容トルクと移動体(機械)に許容される加加速度(ジャーク)とに合わせて傾きを2段階に変えることができ、また、加速開始側のトルクについては、許容加加速度に合わせた傾きとすることができ、モータの出力可能トルクに対して十分にトルクを出力することができる。また、加速中のトルクと減速中のトルクは、許容加加速度により開離する最初と最後を除いて、曲線を一致させることができ、モータの出力可能トルクに対して十分にトルクを出力することができる。
【発明を実施するための形態】
【0033】
図1は、本発明の実施例によるモータ制御装置を示すブロック図である。ここでは、一例として、モータ2とボールねじをカップリングで結合し、ボールねじのナットには移動体3であるテーブルが取り付けられた場合について説明する。また、本実施例では、テーブルである移動体3は垂直方向に直動運動するものとし、このため垂直方向に直動運動する移動体3に対しては常に一方向(すなわt下方向)に重力が作用する。また、移動体
3の直動運動の際には、移動体
3の移動方向とは逆方向に摩擦力が発生する機械的構造を有しているものとする。また、本実施例では、移動体3の移動方向として、重力に逆らう方向を第1の方向(プラス方向)とし、第1の方向と反対の方向を第2の方向(マイナス方向)と定義する。
【0034】
本発明の実施例によるモータ制御装置1は、従来一般的な
モータ制御装置と同様、速度指令部21およびサーボ制御部22を備える。なお、ここでは説明を簡明にするために、サーボ制御部22を、内部にスイッチング素子を有し、直流リンク側から供給される直流電力をスイッチング制御信号に基づきスイッチング素子をスイッチング動作させて、モータ2を駆動するための所望の電圧および所望の周波数の三相交流電力に変換する逆変換器(図示せず)と、スイッチング制御信号を生成するスイッチング制御部(図示せず)とを含めたものとして記載している。これら逆変換器およびスイッチング制御部は本発明を限定するものではなく、例えば、スイッチング制御信号はPWM制御信号とし、逆変換器は、スイッチング素子を三相フルブリッジ構成したPWMインバータとして構成すればよい。このスイッチング素子の例としては、IGBT、サイリスタ、GTO(Gate Turn−OFF thyristor:ゲートターンオフサイリスタ)、トランジスタなどがある。
【0035】
本発明の実施例によるモータ制御装置1は、モータ回転数を検出する検出部11と、加速度指令計算に必要な各種パラメータおよび計算式を記憶する記憶部12と、モータ2の加速度指令を計算する加速度計算部13とを備える。
【0036】
検出部11は、モータ2のロータ近傍に設置されたロータリエンコーダからの信号に基づいて、モータ2のロータの回転数(モータ回転数)を検出する。モータ回転数は時刻tを独立変数とする関数N(t)で表され、0以上の値をとる。
【0037】
記憶部12には、検出部11が検出したモータ回転数N(t)のときにモータ2が出力可能な最大トルクである許容トルクT
ML(N(t))と、移動体3の移動方向とは逆方向に発生するトルクである第1のトルクオフセットT
1と、移動体3の移動方向に関わらず一方向に発生するトルクである第2のトルクオフセットT
2と、モータ2のロータ慣性モーメントJ
mと、負荷慣性モーメントJ
Lと、モータ2の回転運動におけるモータ回転角度を移動体における直動運動時の移動距離に変換するための変換係数Rとを記憶する。許容トルクT
ML(N(t))、第1のトルクオフセットT
1および第2のトルクオフセットT
2は正の値とする。
【0038】
記憶部12に記憶される各パラメータのうち、許容トルクは、モータ回転数N(t)を独立変数とする関数として表され、モータ制御装置1が駆動するモータ2に固有のものであってモータ2の仕様書などに予め規定されているのが一般的である。同様に、ロータ慣性モーメントJ
mについても、モータ制御装置1が駆動するモータ2に固有のものであってモータ2の仕様書などに予め規定されているのが一般的である。本実施例では、許容トルクおよびロータ慣性モーメントJ
mを記憶部12に予め記憶しておく。
【0039】
一方、記憶部12に記憶される第1のトルクオフセットT
1は、移動体3の移動方向とは逆方向に発生するトルクであり、本実施例では、モータ2によって直動運動する移動体3が有する摩擦トルクである。また、記憶部12に記憶される第2のトルクオフセットT
2は、移動体3の受ける重力を保持する重力保持トルクである。また、記憶部12に記憶される負荷慣性モーメントJ
Lは、モータ2によって直動運動する移動体3の種類によって規定されるものである。これら第1のトルクオフセットT
1、第2のトルクオフセットT
2、負荷慣性モーメントJ
Lは、モータ2に連結される移動体3の種類や動作状況などによって異なるので、移動体3が連結されたモータ2をモータ制御装置1によって実際に駆動してトルク波形を測定し、このトルク波形に基づいて設定し、記憶部12に記憶しておけばよい。
【0040】
加速度計算部13は、許容トルクT
ML(N(t))と、第1のトルクオフセット(摩擦トルク)T
1と、第2のトルクオフセット(重力保持トルク)T
2と、ロータ慣性モーメントJ
mと、負荷慣性モーメントJ
Lと、変換係数Rとを用いて、移動体3の移動方向ごとかつモータ2のロータの加速運転および減速運転ごとに、式9〜式12のうちの何れかに従ってモータ2の加速度指令を計算する。なお、許容トルクT
ML(N(t))は正の値としたので、加速度指令計算に用いられる許容トルクT
ML(N(t))は、移動体3が加速用と減速用とで使い分けられる。すなわち、移動体3が加速移動する場合は、加速度指令A
1(t)の符号と許容トルクT
ML(N(t))の符号が一致し、移動体3が減速移動する場合は、加速度指令A
1(t)の符号は許容トルクT
ML(N(t))の符号と逆向きに設定される。
【0041】
加速度計算部13により計算された加速度指令A
1(t)は、速度指令部21へ入力される。速度指令部21は、加速度指令A1(t)積分して速度指令を作成する。また必要に応じて、さらに速度指令を積分して位置指令を生成してもよい。
【0042】
続いて、加速度計算部13による加速度計算処理の詳細について説明する。
【0043】
移動体3が第1の方向(すなわち重力に逆らう方向)に加速移動する場合は、加速度指令A
1(t)の符号と許容トルクT
ML(N(t))の符号が一致し、かつ、許容トルクT
ML(N(t))の向きに対して第1のトルクオフセット(摩擦トルク)T
1および第2のトルクオフセット(重力保持トルク)T
2の向きが逆向きになるので、加速度計算部13は、第1の方向に加速移動中の移動体3の加速度指令A
1(t)を、式9に基づいて計算する。
【0045】
移動体3が第1の方向(すなわち重力に逆らう方向)に減速移動する場合は、加速度指令A
1(t)の符号は許容トルクT
ML(N(t))の符号と逆になり、かつ、許容トルクT
ML(N(t))の向きに対して第1のトルクオフセット(摩擦トルク)T
1および第2のトルクオフセット(重力保持トルク)T
2の向きが逆向きになるので、加速度計算部13は、第1の方向に減速移動中の移動体の
加速度
指令A
1(t)を、式10に基づいて計算する。
【0047】
移動体3が第1の方向とは反対方向である第2の方向(すなわち重力が働く方向)に加速移動する場合は、加速度指令A
1(t)の符号と許容トルクT
ML(N(t))の符号が一致し、かつ、許容トルクT
ML(N(t))の向きに対して、第1のトルクオフセット(摩擦トルク)T
1は逆向きになる一方、第2のトルクオフセット(重力保持トルク)T
2の向きが同じ向きになるので、加速度計算部13は、第1の方向とは反対方向である第2の方向に加速移動中の移動体3の加速度指令A
1(t)を、式11に基づいて計算する。
【0049】
移動体3が第1の方向とは反対方向である第2の方向(すなわち重力が働く方向)に減速移動する場合は、加速度指令A
1(t)の符号は許容トルクT
ML(N(t))の符号と逆向きになり、かつ、許容トルクT
ML(N(t))の向きに対して、第1のトルクオフセット(摩擦トルク)T
1は逆向きになる一方、第2のトルクオフセット(重力保持トルク)T
2の向きが同じ向きになるので、加速度計算部13は、第1の方向とは反対方向である第2の方向に減速移動中の移動体3の加速度指令A
1(t)を、式12に基づいて計算する。
【0051】
次に、本発明の実施例によるモータ制御装置のシミュレーション波形について
図2〜
図4を参照して説明する。本シミュレーションでは、ロータ慣性モーメントJ
mを0.00179[kgm
2]とする。
図2は、本発明の実施例によるモータ制御装置において、シミュレーションに用いた許容トルクを示す図である。これらロータ慣性モーメントJ
mおよび許容トルクT
ML(N(t))については、記憶部12に予め記憶しておく。また、
図3は、
図2に示すモータ回転数と許容トルクとの関係をグラフ化した図である。
図3の
点線は
図2に示す許容トルクT
ML(N(t))を示し、
実線はモータの出力可能トルクを示す。
【0052】
また、負荷慣性モーメントJ
Lを0.00537[kgm
2]とし、第1のトルクオフセット(摩擦トルク)T
1を2[Nm]とし、第2のトルクオフセット(重力保持トルク)T
2を4[Nm]とし、回転直線変換係数Rを0.00318[m/rad](=0.02÷2π)とする。これらパラメータについては、記憶部12に記憶しておく。以上説明した以外のパラメータについては、
図12〜
図16を参照して説明したシミュレーションのものと同様とする。
【0053】
図4は、本発明の実施例によるモータ制御装置についてシミュレーションにて得られた速度と加速度との関係をグラフ化した図である。加速度計算部13により式9〜式12に従って加速度を計算し、えられた加速度をさらに積分することで、
図4に示すような速度と加速度との関係が得られる。なお、加速度指令と加速度応答とは基本的には一致するので、ここでは説明を簡明なものとするために単に「加速度」として記載している。
図4に示す本発明の実施例における速度と加速度との関係と、
図13に示す特許文献1(特許第3681972号公報)に記載された発明における速度と加速度との関係とを比較すると、本発明により、特許文献1(特許第3681972号公報)に記載された発明と同等の速度−加速度特性が得られていることが分かる。上述したように、許容トルクT
ML(N(t))およびロータ慣性モーメントJ
mは、モータ制御装置1が駆動するモータ2に固有のものであってモータ2の仕様書などに予め規定されているのが一般的である。また、第1のトルクオフセット(摩擦トルク)T
1、第2のトルクオフセット(重力保持トルク)T
2、負荷慣性モーメントJ
Lは、モータ2に連結される移動体3の種類や動作状況などによって異なるので、移動体3が連結されたモータ2をモータ制御装置1によって実際に駆動してトルク波形を測定し、このトルク波形に基づいて設定する。このようなパラメータ設定をするだけで、特許文献1(特許第3681972号公報)に記載された発明と同等の速度−加速度特性を得ることができる。
【0054】
なお、上述の実施例では、テーブルである移動体3は垂直方向に直動運動するものとし、このため垂直方向に直動運動する移動体3に対しては常に一方向(すなわt下方向)に重力が作用するので、第1のトルクオフセットT
1を、モータ2によって直動運動する移動体が有する摩擦トルクとし、第2のトルクオフセットT
2を移動体3の受ける重力を保持するトルクである重力保持トルクとした。この変形例として、移動体3を水平方向に直動運動させ、かつこの場合に移動体3に常に水平方向のうちの一方向に力が作用する場合であっても、適用可能である。この変形例の場合、第2のトルクオフセットT
2を当該水平方向のうちの一方向に向かう力に起因するトルクに設定すればよい。
【0055】
なお、上述した加速度計算部13および速度指令部21は、例えばソフトウェアプログラム形式で構築されてもよく、あるいは各種電子回路とソフトウェアプログラムとの組み合わせで構築されてもよい。例えばこれらの手段をソフトウェアプログラム形式で構築する場合は、モータ制御装置1内の演算処理装置はこのソフトウェアプログラムに従って動作することで上述の各部の機能が実現される。また、既存のモータ制御装置にこれら手段に係るソフトウェアプログラムを当該モータ制御装置内の演算処理装置に追加的にインストールすることで本発明を適用することも可能である。