JP7454767B2 - モータ制御システム、モータ制御方法、及びプログラム - Google Patents

モータ制御システム、モータ制御方法、及びプログラム Download PDF

Info

Publication number
JP7454767B2
JP7454767B2 JP2021518310A JP2021518310A JP7454767B2 JP 7454767 B2 JP7454767 B2 JP 7454767B2 JP 2021518310 A JP2021518310 A JP 2021518310A JP 2021518310 A JP2021518310 A JP 2021518310A JP 7454767 B2 JP7454767 B2 JP 7454767B2
Authority
JP
Japan
Prior art keywords
motor
compensation
torque
control system
command
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021518310A
Other languages
English (en)
Other versions
JPWO2020225978A1 (ja
JPWO2020225978A5 (ja
Inventor
健太 村上
弘 藤原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Publication of JPWO2020225978A1 publication Critical patent/JPWO2020225978A1/ja
Publication of JPWO2020225978A5 publication Critical patent/JPWO2020225978A5/ja
Application granted granted Critical
Publication of JP7454767B2 publication Critical patent/JP7454767B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P5/00Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors
    • H02P5/46Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors for speed regulation of two or more dynamo-electric motors in relation to one another
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P23/00Arrangements or methods for the control of AC motors characterised by a control method other than vector control
    • H02P23/20Controlling the acceleration or deceleration
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P5/00Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors
    • H02P5/46Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors for speed regulation of two or more dynamo-electric motors in relation to one another
    • H02P5/50Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors for speed regulation of two or more dynamo-electric motors in relation to one another by comparing electrical values representing the speeds

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Control Of Electric Motors In General (AREA)

Description

本開示は、モータ制御システム、モータ制御方法、及びプログラムに関する。より詳細には、本開示は、モータの軸の動作を制御するモータ制御システム、モータ制御方法、及びプログラムに関する。
特許文献1には、振動制御装置が開示されている。この振動制御装置は、トルク指令出力部と、トルク指令生成手段と、加算手段と、を備える。トルク指令出力部は、モータにより駆動される機械装置に対して、トルク指令を出力する。トルク指令生成手段は、機械装置を駆動することで発生する振動と逆の位相の振動に対応する補償トルク指令を生成する。加算手段は、生成した補償トルク指令をトルク指令に加算する。
しかしながら、特許文献1に記載の振動制御装置(モータ制御システム)では、X軸モータ(つまり、モータ)に出力する位置指令に基づいて補償トルク指令を生成している。このため、この振動制御装置では、X軸モータとは異なるモータ(他モータ)の動作に伴う振動を低減しにくい、という問題があった。
特開2017-138821号公報
本開示は、上記の点に鑑みてなされており、他モータの動作に伴う振動を低減しやすいモータ制御システム、モータ制御方法、及びプログラムを提供することを目的とする。
本開示の一態様に係るモータ制御システムは、制御部と、補償部と、を備える。制御部は、モータに対する動作指令に応じて、モータの有する軸の動作を制御する。補償部は、モータとは異なる他モータの有する他軸の動作に関する他軸情報に基づいて、補償情報を演算する。補償情報は、他軸の動作が軸に与える影響を補償するための情報である。制御部は、補償部にて演算された補償情報を用いて軸の動作を制御する。
本開示の一態様に係るモータ制御方法は、制御ステップと、補償ステップと、を有する。制御ステップは、モータに対する動作指令に応じて、モータの有する軸の動作を制御するステップである。補償ステップは、モータとは異なる他モータの有する他軸の動作に関する他軸情報に基づいて、補償情報を演算するステップである。補償情報は、他軸の動作が軸に与える影響を補償するための情報である。制御ステップは、補償ステップにて演算された補償情報を用いて軸の動作を制御する。
本開示の一態様に係るプログラムは、1以上のプロセッサに、上記のモータ制御方法を実行させる。
本開示は、他モータの動作に伴う振動を低減しやすい、という利点がある。
図1は、本開示の実施形態に係るモータ制御システムの概要を示すブロック図である。 図2は、同上のモータ制御システムにおける、モータの制御対象及び他モータの制御対象の概念図である。 図3は、同上のモータ制御システムにおける、モータの制御系の数理モデルの一例を示す概念図である。 図4は、同上のモータ制御システムにおいて、第3伝達関数の周波数特性の一例を示す図である。 図5Aは、同上のモータ制御システムのシミュレーション結果の一例を示す図である。 図5Bは、同上のモータ制御システムのシミュレーション結果の一例を示す図である。 図6は、同上のモータ制御システムの動作の一例を示すフローチャートである。 図7は、本開示の実施形態の第3伝達関数の周波数特性の一例と、第1変形例の振動補償部で用いる1次のローパスフィルタの周波数特性の一例を示す図である。 図8Aは、本開示の実施形態の第1変形例のモータ制御システムのシミュレーション結果の一例を示す図である。 図8Bは、同上のモータ制御システムのシミュレーション結果の一例を示す図である。 図9は、本開示の実施形態の第2変形例に係るモータ制御システムにおいて、第7伝達関数の周波数特性の一例を示す図である。 図10Aは、同上のモータ制御システムのシミュレーション結果の一例を示す図である。 図10Bは、同上のモータ制御システムのシミュレーション結果の一例を示す図である。 図11は、本開示の実施形態の第3変形例に係るモータ制御システムにおいて、1次のハイパスフィルタの周波数特性の一例を示す図である。 図12Aは、同上のモータ制御システムのシミュレーション結果の一例を示す図である。 図12Bは、同上のモータ制御システムのシミュレーション結果の一例を示す図である。 図13は、本開示の実施形態の第4変形例に係るモータ制御システムにおける、モータの制御対象及び他モータの制御対象の概念図である。 図14は、同上のモータ制御システムの要部の概要を示すブロック図である。 図15Aは、同上のモータ制御システムのシミュレーション結果の一例を示す図である。 図15Bは、同上のモータ制御システムのシミュレーション結果の一例を示す図である。 図16は、本開示の実施形態の第5変形例に係るモータ制御システムにおける、モータの制御対象及び複数の他モータの制御対象の概念図である。 図17は、同上のモータ制御システムの概要を示すブロック図である。 図18は、本開示の実施形態の第6変形例に係るモータ制御システムの概要を示すブロック図である。 図19は、本開示の実施形態の第7変形例に係るモータ制御システムの概要を示すブロック図である。
(実施形態)
(1)概要
図1は、本開示の実施形態に係るモータ制御システム100の概要を示すブロック図である。図2は、同上のモータ制御システム100における、モータM1の制御対象及び他モータの制御対象の概念図である。本実施形態のモータ制御システム100は、図1に示すように、モータM1に対する動作指令S1に応じて、モータM1の有する軸の動作を制御する。これにより、モータ制御システム100は、モータM1の軸に図2に示す接続部C1を介して接続された負荷L1の動作を制御する。モータ制御システム100は、例えば電子部品実装機、又は半導体製造装置等で用いられる。
モータ制御システム100は、上記に挙げた装置等において、他モータ制御システム200と併用される。他モータ制御システム200は、モータM1とは異なる他モータM2に対する動作指令S2に応じて、他モータM2の有する他軸の動作を制御する。これにより、他軸に対する接続部(図示せず)を介して他軸に接続された他負荷L2の動作を制御する。他負荷L2は、負荷L1とは異なる負荷である。
ここで、図2に示すように、図1に示すモータ制御システム100の制御対象CT1であるモータM1及び負荷L1は、図1に示す他モータ制御システム200の制御対象CT2である他モータM2及び他負荷L2の動作の影響を受け得る。図2において、図1に示す他モータ制御システム200の制御対象CT2が負荷L1に接している状態は、図1に示す他モータ制御システム200の制御対象CT2の動作による反動が、直接的に負荷L1に伝わることを表している。
一例として、モータM1の軸が停止し、他モータM2の軸が動作している状態において、他モータM2の動作の反動による外乱トルクが、負荷L1及びモータM1に作用する場合がある。この場合、モータM1の軸が停止しているにも関わらず、外乱トルクによりモータM1の軸の位置がずれてしまう、という状況が生じ得る。このような状況は、例えば電子部品実装機において、モータ制御システム100がヘッド(負荷L1)のX軸方向に沿った移動を制御し、他モータ制御システム200がヘッドを有するアーム(他負荷L2)のY軸方向に沿った移動を制御する場合に生じ得る。
そこで、モータ制御システム100は、以下の構成により、上記の問題の解決を図っている。すなわち、モータ制御システム100は、図1に示すように、制御部1と、補償部2と、を備えている。
制御部1は、モータM1に対する動作指令S1に応じて、モータM1の有する軸の動作を制御する。動作指令S1は、モータ制御システム100の上位システムに相当するコントローラA1からモータ制御システム100へ与えられる。同様に、他モータM2に対する動作指令S2は、コントローラA1から他モータ制御システム200へ与えられる。
補償部2は、モータM1とは異なる他モータM2の有する他軸の動作に関する他軸情報に基づいて、補償情報を演算する。他軸情報は、一例として他モータM2に対する動作指令S2である。補償情報は、他軸の動作がモータM1の軸に与える影響を補償するための情報である。一例として、他軸(つまり、他モータM2)の動作の反動による外乱トルクが負荷L1及びモータM1に作用する場合、補償情報は、この外乱トルクによる振動を相殺するための補償トルク指令である。言い換えれば、補償トルク指令は、外乱トルクがモータM1及びモータM1の軸に接続される負荷L1の少なくとも一方に作用することで生じる振動を低減するための指令である。
制御部1は、補償部2にて演算された補償情報を用いてモータM1の軸の動作を制御する。このように、本実施形態では、他モータM2の有する他軸の動作がモータM1の軸に与える影響を想定して、この影響を補償するようにモータM1の軸を動作させることが可能である。したがって、本実施形態では、他モータM2の動作に伴う振動を低減しやすい、という利点がある。
(2)詳細
以下、モータ制御システム100について図1及び図2を用いて詳細に説明する。以下では、一例として、電子部品実装機において、モータ制御システム100がヘッド(負荷L1)のX軸方向に沿った移動を制御し、他モータ制御システム200がヘッドを有するアーム(他負荷L2)のY軸方向に沿った移動を制御する、と仮定する。なお、他モータ制御システム200は、補償部2を有していない点を除いて、モータ制御システム100と構成は同じである。したがって、以下では、他モータ制御システム200の説明を適宜省略する。
既に述べたように、モータM1に対する動作指令S1及び他モータM2に対する動作指令S2は、それぞれコントローラA1からモータ制御システム100及び他モータ制御システム200へ与えられる。具体的には、コントローラA1は、動作指令S1,S2を含む指令信号S0を、有線ネットワーク又は無線ネットワークを介して指令抽出部Bへ出力する。指令抽出部Bは、受信した指令信号S0から動作指令S1,S2を抽出し、動作指令S1をモータ制御システム100へ出力し、動作指令S2を他モータ制御システム200へ出力する。
指令抽出部Bは、指令抽出部B1,B2を含む。指令抽出部B1は、受信した指令信号S0から動作指令S1を抽出し、抽出した動作指令S1をモータ制御システム100へ出力する。動作指令S1は、モータM1の軸の目標位置を指示する位置指令である。指令抽出部B2は、受信した指令信号S0から動作指令S2を抽出し、抽出した動作指令S2を他モータ制御システム200へ出力する。動作指令S2は、他モータM2の他軸の目標位置を指示する位置指令である。本実施形態では、指令抽出部B2は、抽出した動作指令S2を、他モータ制御システム200のみならずモータ制御システム100にも出力する。なお、指令抽出部B1が、指令信号S0から動作指令S1,S2を抽出してモータ制御システム100へ供給する構成としてもよい。
モータ制御システム100の少なくとも一部は、ハードウェアとしての1以上のプロセッサ及びメモリを主構成とするコンピュータシステムである。モータ制御システム100では、メモリに記録されたプログラムを1以上のプロセッサで実行することによって、種々の機能が実現される。プログラムは、メモリに予め記録されてもよく、電気通信回線を通じて提供されてもよく、コンピュータシステムで読み取り可能な光学ディスク、ハードディスクドライブ等の非一時的記録媒体に記録されて提供されてもよい。
モータ制御システム100は、モータM1に設けられた位置検出器D1で検出された軸の現在の位置と、動作指令S1で指示された軸の目標位置とが一致するように、モータM1に供給する電流を制御する。位置検出器D1は、一例としてロータリエンコーダである。同様に、他モータ制御システム200は、他モータM2に設けられた位置検出器で検出された他軸の現在の位置と、動作指令S2で指示された他軸の目標位置とが一致するように、他モータM2に供給する電流を制御する。
制御部1は、動作指令S1に応じて、モータM1の有する軸の動作を制御する。制御部1は、位置制御部11と、速度変換部12と、速度制御部13と、電流制御部14と、を有している。
位置制御部11には、動作指令S1と、位置検出器D1の検出結果と、の差分が入力される。つまり、位置制御部11には、モータM1の軸の目標位置と、モータM1の軸の現在の位置との偏差が入力される。位置制御部11は、入力された偏差に対して比例制御演算した値を、速度指令として出力する。速度指令は、モータM1の軸の目標速度を指示する指令である。
速度変換部12は、位置検出器D1の検出結果、つまりモータM1の軸の現在の位置に基づいて演算した値を、モータM1の軸の軸速度として出力する。
速度制御部13には、速度指令と、軸速度と、の差分が入力される。つまり、速度制御部13には、モータM1の軸の目標速度と、モータM1の軸の現在の速度との偏差が入力される。速度制御部13は、入力された偏差に対して比例積分制御演算した値を、トルク指令として出力する。トルク指令は、モータM1の軸に作用する目標トルクを指示する指令である。
電流制御部14には、トルク指令と、補償トルク指令(後述する)との和である合成トルク指令が入力される。電流制御部14は、合成トルク指令にて指示されるトルクがモータM1の軸で生じるように、モータM1へ供給する電流を制御する。
補償部2は、他モータM2に対する動作指令S2(他軸情報)に基づいて、補償トルク指令(補償情報)を演算して出力する。補償部2は、トルク推定部3と、補償トルク演算部4と、を有している。
トルク推定部3は、動作指令S2(他軸情報)に基づいて、他モータM2の他軸の動作に伴ってモータM1に作用する外乱トルクを推定する。トルク推定部3には、動作指令S2として他軸の位置指令が入力される。トルク推定部3は、回転運動の運動方程式[イナーシャ(慣性モーメント)×加速度=トルク]を用いて、他軸の位置指令から外乱トルクを推定する。具体的には、トルク推定部3は、他軸の位置指令を2回微分することで、他軸の加速度指令に変換する。さらに、トルク推定部3は、他軸の加速度指令に、他軸の総イナーシャを乗算し、更にローパスフィルタ処理を実行することで、外乱トルクを推定する。
ここで、他軸の動作による外乱トルクは、他モータ制御システム200に動作指令S2が入力された時点ではなく、他モータM2が実際に動作した後にモータM1の軸に作用する。そこで、トルク推定部3では、他軸の位置指令から演算された外乱トルクが、他モータM2の実際の動作と時間のずれが生じないようにするために、上述のローパスフィルタ処理を実行している。これにより、ローパスフィルタ処理を実行しない場合と比較して、モータM1の軸に作用する外乱トルクを高精度に推定することが可能である。
補償トルク演算部4は、トルク推定部3で推定された外乱トルクに基づいて、補償トルク指令を演算し、補償トルク指令を補償情報として出力する。補償トルク演算部4は、振動補償部41と、位相補償部42と、を有している。
振動補償部41は、トルク推定部3で推定された外乱トルクを入力として、図2に示す制御対象CT1の数式モデル(図3を参照)に基づいて演算することで、仮補償トルク指令を出力する。図3は、本開示の実施形態に係るモータ制御システムにおける、モータの制御系の数理モデルの一例を示す概念図である。本開示でいう「仮補償トルク指令」は、補償トルク演算部4から出力される補償トルク指令のうち、位相補償部42にて演算処理を実行する前の補償トルク指令に相当する。仮に補償トルク演算部4が位相補償部42を有していない場合、仮補償トルク指令が補償トルク指令となる。
ここで、制御対象CT1は、モータM1の慣性、モータM1の軸と負荷L1とを接続する接続部C1に含まれるばね要素C11及びダンパ要素C12(図2を参照)、並びに負荷L1の慣性からなる2慣性系モデルで表される。図3において、「J」はモータM1の慣性を、「D」はモータM1側の粘性摩擦を、「K」は接続部C1のばね剛性を、「D」は接続部C1のダンパ粘性を、「J」は負荷L1の慣性を、「D」は負荷L1側の粘性摩擦をそれぞれ表している。図3において、「τ」はモータM1に作用するモータトルクを、「τ」は負荷L1に作用する負荷トルクを、「ω」はモータM1の軸の軸速度(モータ速度)を、「ω」は負荷L1の負荷速度を、「s」はラプラス演算子をそれぞれ表している。
図3において、他モータM2の他軸の動作の反動による外乱トルクは、トルク「τ」として負荷L1に作用する。補償トルクは、トルク「τ」としてモータM1に作用する。そこで、他軸から負荷L1に伝わる外乱トルク「τ」によってモータM1に発生する振動を、補償トルク「τ」で相殺するために、外乱トルク「τ」を入力、補償トルク「τ」を出力とする伝達関数を導出する。
モータトルク「τ」を入力、モータ速度「ω」を出力とする第1伝達関数「G(s)」は、以下の式(1)で表される。また、負荷トルク「τ」を入力、モータ速度「ω」を出力とする第2伝達関数「G(s)」は、以下の式(2)で表される。
Figure 0007454767000001
そして、式(1)、(2)により、負荷トルク(つまり、外乱トルク)「τ」を入力、モータトルク(つまり、補償トルク)「τ」を出力とする第3伝達関数「G(s)」は、以下の式(3)のように導出することができる。
Figure 0007454767000002
図4は、本開示の実施形態に係るモータ制御システムにおいて、第3伝達関数「G(s)」の周波数特性の一例を示す図である。図4において、縦軸はゲインを表しており、横軸は対数軸であって周波数を表している。以下、図7、図9、及び図11においても同様である。図4に示すように、第3伝達関数「G(s)」は、図2に示す制御対象CT1の***振周波数である「f」に共振特性のピークを持つ2次フィルタとなっている。共振周波数「f」は、以下の式(4)で表される。
Figure 0007454767000003
図1に示すように、振動補償部41は、トルク推定部3で推定された外乱トルクに対して、第3伝達関数「G(s)」を用いたフィルタ処理を実行することで、仮補償トルク指令を演算して出力する。つまり、補償トルク演算部4は、外乱トルクに対して、伝達関数(第3伝達関数「G(s)」)に基づくフィルタ処理を実行することで、補償トルク指令(ここでは、仮補償トルク指令)を演算する。伝達関数は、モータM1に作用するモータトルクを入力、負荷L1に作用する負荷トルクを出力とする。
上述のフィルタ処理は、伝達関数(第1伝達関数「G(s)」)の逆関数と、伝達関数(第2伝達関数「G(s)」)と、の積に基づく処理である。第1伝達関数は、モータトルクを入力、モータ速度を出力とする。第2伝達関数は、負荷トルクを入力、モータ速度を出力とする。
位相補償部42は、仮補償トルク指令を入力として、位相補償演算を行うことで、補償トルク指令を出力する。電流制御部14では、既に述べたように、トルク指令で指示されるトルクがモータM1で生じるように、モータM1に供給する電流を制御している。しかしながら、トルク指令が入力された時点から、トルク指令で指示されるトルクがモータM1で生じるようになるまでには、電流制御部14の応答性能に起因する遅れが生じ得る。このため、仮補償トルク指令をそのまま電流制御部14に入力した場合、外乱トルクと、仮補償トルク指令で指示されたトルクとの間で位相差が生じ得る。このような位相差が生じると、外乱トルクによる振動を低減する性能が損なわれ得る。
そこで、振動を低減させるために、補償トルク演算部4は、位相補償部42により、上記の位相差を考慮した補償トルク指令を演算している。言い換えれば、補償トルク演算部4は、補償トルク指令(ここでは、仮補償トルク指令)で指示されるトルクと、外乱トルクと、の位相差を補償する位相補償部42を有している。
位相補償部42は、例えば一次のフィルタで構成されている。位相補償部42では、入力された仮補償トルク指令に対して、上記の位相差を低減するように時定数が設定されている。したがって、位相補償部42は、入力された仮補償トルク指令に対して位相補償演算を行うことで、上記の位相差を考慮した補償トルク指令を出力する。電流制御部14には、補償トルク指令と、トルク指令との和である合成トルク指令が入力される。電流制御部14は、合成トルク指令で指示されるトルクがモータM1で生じるように、モータM1へ供給する電流を制御する。これにより、外乱トルクによる振動を低減することが可能である。
以下、外乱トルクによる振動を低減する効果についてシミュレーションで検証した結果の一例を、図5A及び図5Bに示す。図5A及び図5Bは、本開示の実施形態に係るモータ制御システムのシミュレーション結果の一例を示す図である。図5Aは、合成トルク指令を図1に示す電流制御部14に与えた場合(つまり、補償トルク指令を電流制御部14に与えた場合)のシミュレーション結果の一例を示している。図5Bは、トルク指令のみを図1に示す電流制御部14に与えた場合(つまり、補償トルク指令を電流制御部14に与えない場合)のシミュレーション結果の一例を示している。これらのシミュレーションでは、モータM1の軸を停止させた状態で他モータ制御システム200に動作指令S2を与えることで、他モータM2の他軸のみを意図的に動作させている。
図5A及び図5Bの各々において、縦軸はモータM1の軸の目標位置と、モータM1の軸の現在の位置との偏差を表しており、横軸は、時間を表している。本実施形態では、モータM1の軸を停止させているので、外乱トルクが作用していなければ、偏差は零となる。以下、図8A及び図8B、図10A及び図10B、図12A及び図12B、並びに図15A及び図15Bにおいても同様である。図5A及び図5Bの各々において、時刻t0から時刻t1の間に、他モータ制御システム200に動作指令S2が与えられている。
図5Bでは、他モータ制御システム200に動作指令S2が与えられて他モータM2の他軸が動作することに伴って、偏差が変動している。つまり、図5Bでは、モータM1の軸が停止している状態であるにも関わらず、外乱トルクがモータM1に作用することで、モータM1の軸の位置が変動している。一方、図5Aでは、図5Bと比較して、偏差の変動、つまりモータM1の軸の位置の変動が抑えられている。
このように、本実施形態では、補償部2にて演算された補償情報(補償トルク指令)を用いてモータM1の軸の動作を制御することで、外乱トルクによる振動を低減することができる。その結果、補償部2を有さない場合と比較して、モータM1の軸の目標位置と、モータM1の軸の現在の位置との偏差を小さくすることができる。つまり、モータ制御システム100は、他モータM2の有する他軸の動作がモータM1の軸に与える影響を想定して、この影響を補償するようにモータM1の軸を動作させることが可能である。したがって、本実施形態では、他モータM2の動作に伴う振動を低減しやすい、という利点がある。
特に、実際にモータM1に外乱トルクが作用する前に、他モータM2に与える動作指令S2に基づいて外乱トルクを予測し、予測した外乱トルクによる振動を相殺するようにモータM1の軸の動作を制御している。このため、本実施形態では、外乱トルクがモータM1に作用してからフィードバック制御することで振動を低減する場合と比較して、他モータM2の動作に伴う振動を低減しやすい、という利点がある。
(3)動作
以下、モータ制御システム100の動作の一例について図6を用いて説明する。前提として、モータ制御システム100では、モータM1に対する動作指令S1に基づいて、トルク指令を生成している。
まず、他モータM2に動作指令S2が与えられない場合(ステップS101においてNo)の動作について説明する。この場合、動作指令S2が入力されないので、補償トルク指令は生成されない(あるいは、補償トルク指令が0である)。したがって、モータM1は、動作指令S1に基づいて生成されたトルク指令によって制御される(ステップS102)。
その結果、モータM1の軸が動作している場合、つまり、モータM1に動作指令S1が与えられている場合、動作指令S1に基づいて生成されたトルク指令に対応する電流が、モータM1へ出力される。一方、モータM1の軸が停止している場合、つまり、モータM1に動作指令S1が与えられていない場合、トルク指令及び補償トルク指令のいずれも入力されない(あるいはどちらの値も0である)。このため、モータM1の軸は停止し続ける。
次に、他モータM2に動作指令S2が与えられる場合(ステップS101においてYes)、動作指令S2を取得し、取得した動作指令S2に基づいて、外乱トルクを推定する(ステップS103)。次に、推定された外乱トルクに基づいて、補償トルク指令を生成する(ステップS104)。ステップS104においては、まず、推定された外乱トルクに基づいて、仮補償トルク指令を生成する(ステップS104a)。その後、仮補償トルク指令に基づいて、補償トルク指令を生成する(ステップS104b)。
生成されたトルク指令と、補償トルク指令との和である合成トルク指令を算出する(ステップS105)。その後、算出された合成トルク指令に基づいて、モータM1に供給する電流を出力する(ステップS106)。
その結果、モータM1の軸が動作している場合、つまり、モータM1に動作指令S1が与えられている場合、モータM1は、合成トルク指令に基づいて制御される。一方、モータM1の軸が停止している場合、つまり、モータM1に動作指令S1が与えられていない場合、モータM1は、補償トルク指令に基づいて制御される。なお、モータM1に動作指令S1が与えられていない場合に、生成されたトルク指令と補償トルク指令との和を算出する演算を行なわなくてもよい。この場合、モータM1に供給する電流を出力する(ステップS106)際に、合成トルク指令に代えて補償トルク指令に基づいてモータM1に供給する電流を出力してもよい。
上述のように、モータM1の軸が動作している場合、及びモータM1の軸が停止している場合のいずれにおいても、補償情報(補償トルク指令)を用いてモータM1の軸の動作を制御する。このため、上記のいずれの場合においても、外乱トルクによる振動を低減することができる。
(4)変形例
上述の実施形態は、本開示の様々な実施形態の一つに過ぎない。上述の実施形態は、本開示の目的を達成できれば、設計等に応じて種々の変更が可能である。モータ制御システムと同様の機能は、モータ制御方法、コンピュータプログラム、又はコンピュータプログラムを記録した非一時的記録媒体等で具現化されてもよい。
本開示の一態様に係るモータ制御方法は、制御ステップと、補償ステップと、を有する。制御ステップは、モータM1に対する動作指令S1に応じて、モータM1の有する軸の動作を制御するステップである。補償ステップは、モータM1とは異なる他モータM2の有する他軸の動作に関する他軸情報(ここでは、動作指令S2)に基づいて、補償情報を演算するステップである。補償情報は、他軸の動作がモータM1の軸に与える影響を補償するための情報である。制御ステップは、補償ステップにて演算された補償情報を用いてモータM1の軸の動作を制御する。
本開示の一態様に係るプログラムは、1以上のプロセッサに、上記のモータ制御方法を実行させるためのプログラムである。
以下、上述の実施形態の第1変形例~第7変形例を列挙する。
(4.1)第1変形例
第1変形例のモータ制御システム100では、図2に示すダンパ要素C12の粘性摩擦が、上述の実施形態でのダンパ要素C12の粘性摩擦よりも大きくなっている。第1変形例のモータ制御システム100では、振動補償部41での演算処理が、上述の実施形態の振動補償部41での演算処理と異なっている。
具体的には、本変形例の振動補償部41は、上述の実施形態で説明した第3伝達関数「G(s)」を用いたフィルタ処理の代わりに、第3伝達関数「G(s)」の共振特性のピーク付近に遮断周波数を有する1次のローパスフィルタを用いたフィルタ処理を行っている。言い換えれば、補償トルク演算部4(ここでは、振動補償部41)で実行されるフィルタ処理は、1次のローパスフィルタの伝達関数に基づく処理である。
図7は、本開示の実施形態の第3伝達関数「G(s)」の周波数特性の一例(同図の破線を参照)と、第1変形例の振動補償部41で用いる1次のローパスフィルタの周波数特性の一例(同図の実線を参照)を示す図である。本変形例では、上述の実施形態と比較して図2に示すダンパ要素C12の粘性摩擦が大きいため、接続部C1のダンパ粘性「D」が上述の実施形態よりも大きくなっている。このため、本変形例では、第3伝達関数「G(s)」の周波数特性において、共振特性のピークでのゲインが、上述の実施形態よりも小さくなっている。このため、本変形例では、第3伝達関数「G(s)」の周波数特性は、共振特性のピーク付近に遮断周波数を有する1次のローパスフィルタの周波数特性に近似する。
したがって、本変形例では、振動補償部41は、上記のように1次のローパスフィルタを用いたフィルタ処理を行うことで、上述の実施形態と同様に、外乱トルクによる振動を十分に相殺し得る補償トルク指令(ここでは、仮補償トルク指令)を出力することが可能である。
図8A及び図8Bは、本開示の実施形態の第1変形例のモータ制御システムのシミュレーション結果の一例を示す図である。図8Aは、合成トルク指令を電流制御部14に与えた場合(つまり、補償トルク指令を電流制御部14に与えた場合)のシミュレーション結果の一例を示している。図8Bは、トルク指令のみを電流制御部14に与えた場合(つまり、補償トルク指令を電流制御部14に与えない場合)のシミュレーション結果の一例を示している。これらのシミュレーションでは、モータM1の軸を停止させた状態で他モータ制御システム200に動作指令S2を与えることで、他モータM2の他軸のみを意図的に動作させている。
図8A及び図8Bの各々において、時刻t2から時刻t3の間に、他モータ制御システム200に動作指令S2が与えられている。図8Bでは、他モータ制御システム200に動作指令S2が与えられて他モータM2の他軸が動作することに伴って、偏差が変動している。つまり、図8Bでは、モータM1の軸が停止している状態であるにも関わらず、外乱トルクがモータM1に作用することで、モータM1の軸の位置が変動している。図8Aでは、図8Bと比較して、偏差の変動、つまりモータM1の軸の位置の変動が抑えられている。
このように、本変形例では、上述の実施形態と同様に、外乱トルクによる振動を低減することができる。本変形例では、上述の実施形態とは異なり、振動補償部41でのフィルタ処理で用いるフィルタの次数が2次から1次に低減されている。このため、本変形例では、上述の実施形態と比較して、振動補償部41での演算負荷を低減することができる。
(4.2)第2変形例
第2変形例のモータ制御システム100では、振動補償部41のフィルタ処理で用いる伝達関数が上述の実施形態とは異なっている。具体的には、上述の実施形態では、外乱トルク「τ」によってモータM1に発生する振動を、補償トルク「τ」で相殺するために、外乱トルク「τ」を入力、補償トルク「τ」を出力とする伝達関数を導出した。これに対して、本変形例では、外乱トルク「τ」によって負荷L1に発生する振動を、補償トルク「τ」で相殺するために、外乱トルク「τ」を入力、補償トルク「τ」を出力とする伝達関数を導出する。
モータトルク「τ」を入力、負荷速度「ω」を出力とする第4伝達関数「G(s)」は、以下の式(5)で表される。また、負荷トルク「τ」を入力、負荷速度「ω」を出力とする第5伝達関数「G(s)」は、以下の式(6)で表される。
Figure 0007454767000004
そして、式(5)、(6)により、負荷トルク(つまり、外乱トルク)「τ」を入力、モータトルク(つまり、補償トルク)「τ」を出力とする第6伝達関数「G(s)」は、以下の式(7)のように導出することができる。
Figure 0007454767000005
ここで、第6伝達関数「G(s)」は、分母の次数よりも分子の次数が大きい不安定な伝達関数である。このため、第6伝達関数「G(s)」に遮断周波数「ω」を有する1次のローパスフィルタを用いたフィルタ処理を加えることで、以下の式(8)に示すプロパー(proper)な第7伝達関数「G(s)」を導出する。ここで、遮断周波数「ω」は、第6伝達関数「G(s)」の周波数特性における***振周波数よりも高い周波数である。
Figure 0007454767000006
つまり、本変形例では、上述のフィルタ処理は、伝達関数(第5伝達関数「G(s)」)と、伝達関数(第4伝達関数「G(s)」の逆関数)と、1次のローパスフィルタの伝達関数と、の積に基づく処理である。第5伝達関数は、負荷トルクを入力、負荷速度を出力とする。第4伝達関数は、モータトルクを入力、負荷速度を出力とする。そして、本変形例では、上述の1次のローパスフィルタの遮断周波数は、負荷トルクを入力、負荷速度を出力とする伝達関数(第6伝達関数「G(s)」)の周波数特性の***振周波数以上である。
図9は、本開示の実施形態の第2変形例に係るモータ制御システムにおいて、第7伝達関数「G(s)」の周波数特性の一例を示す図である。図9に示すように、第7伝達関数「G(s)」は、制御対象CT1の***振周波数である「f」に共振特性のピークを持つ2次フィルタとなっている。***振周波数「f」は、以下の式(9)で表される。
Figure 0007454767000007
振動補償部41は、トルク推定部3で推定された外乱トルクに対して、第7伝達関数「G(s)」を用いたフィルタ処理を実行することで、補償トルク指令(ここでは、仮補償トルク指令)を出力する。
図10A及び図10Bは、本開示の実施形態の第2変形例のモータ制御システムのシミュレーションで検証した結果の一例を示す図である。図10Aは、合成トルク指令を電流制御部14に与えた場合(つまり、補償トルク指令を電流制御部14に与えた場合)のシミュレーション結果の一例を示している。図10Bは、トルク指令のみを電流制御部14に与えた場合(つまり、補償トルク指令を電流制御部14に与えない場合)のシミュレーション結果の一例を示している。これらのシミュレーションでは、モータM1の軸を停止させた状態で他モータ制御システム200に動作指令S2を与えることで、他モータM2の他軸のみを意図的に動作させている。
図10A及び図10Bの各々において、時刻t4から時刻t5の間に、他モータ制御システム200に動作指令S2が与えられている。図10Bでは、他モータ制御システム200に動作指令S2が与えられて他モータM2の他軸が動作することに伴って、偏差が変動している。つまり、図10Bでは、モータM1の軸が停止している状態であるにも関わらず、外乱トルクがモータM1に作用することで、モータM1の軸の位置が変動している。一方、図10Aでは、図10Bと比較して、偏差の変動、つまりモータM1の軸の位置の変動が抑えられている。
このように、本変形例では、上述の実施形態と同様に、外乱トルクによる振動を低減することができる。
(4.3)第3変形例
第3変形例のモータ制御システム100では、ダンパ要素C12の粘性摩擦が、第2変形例でのダンパ要素C12の粘性摩擦よりも大きくなっている。第3変形例のモータ制御システム100では、振動補償部41での演算処理が、第2変形例の振動補償部41での演算処理と異なっている。
具体的には、本変形例では、振動補償部41は、第2変形例における第7伝達関数「G(s)」を用いたフィルタ処理の代わりに、第7伝達関数「G(s)」の共振特性のピーク付近に遮断周波数を有する1次のハイパスフィルタを用いたフィルタ処理を行っている。言い換えれば、補償トルク演算部4(ここでは、振動補償部41)で実行されるフィルタ処理は、1次のハイパスフィルタの伝達関数に基づく処理である。
図11は、本開示の実施形態の第3変形例に係るモータ制御システムにおいて、1次のハイパスフィルタの周波数特性の一例を示す図である。図11において、破線は、第2変形例にて説明した第7伝達関数「G(s)」の周波数特性の一例を示す。実線は、本変形例の振動補償部41で用いる1次のハイパスフィルタの周波数特性の一例を示す。本変形例では、第2変形例と比較してダンパ要素C12の粘性摩擦が大きいため、接続部C1のダンパ粘性「D」が第2変形例よりも大きくなっている。このため、本変形例では、第7伝達関数「G(s)」の周波数特性において、共振特性のピークでのゲインが、第2変形例よりも大きくなっている。このため、本変形例では、第7伝達関数「G(s)」の周波数特性は、共振特性のピーク付近に遮断周波数を有する1次のハイパスフィルタの周波数特性に近似する。
したがって、本変形例では、振動補償部41は、上記のように1次のハイパスフィルタを用いたフィルタ処理を行うことで、第2変形例と同様に、外乱トルクによる振動を十分に相殺し得る補償トルク指令(ここでは、仮補償トルク指令)を出力することが可能である。
図12A及び図12Bは、本開示の実施形態の第3変形例に係るモータ制御システムのシミュレーション結果の一例を示す図である。図12Aは、合成トルク指令を電流制御部14に与えた場合(つまり、補償トルク指令を電流制御部14に与えた場合)のシミュレーション結果の一例を示している。図12Bは、トルク指令のみを電流制御部14に与えた場合(つまり、補償トルク指令を電流制御部14に与えない場合)のシミュレーション結果の一例を示している。これらのシミュレーションでは、モータM1の軸を停止させた状態で他モータ制御システム200に動作指令S2を与えることで、他モータM2の他軸のみを意図的に動作させている。
図12A及び図12Bの各々において、時刻t6から時刻t7の間に、他モータ制御システム200に動作指令S2が与えられている。図12Bでは、他モータ制御システム200に動作指令S2が与えられて他モータM2の他軸が動作することに伴って、偏差が変動している。つまり、図12Bでは、モータM1の軸が停止している状態であるにも関わらず、外乱トルクがモータM1に作用することで、モータM1の軸の位置が変動している。図12Aでは、図12Bと比較して、偏差の変動、つまりモータM1の軸の位置の変動が抑えられている。
このように、本変形例では、第2変形例と同様に、外乱トルクによる振動を低減することができる。本変形例では、第2変形例とは異なり、振動補償部41でのフィルタ処理で用いるフィルタの次数が2次から1次に低減されている。このため、本変形例では、第2変形例と比較して、振動補償部41での演算負荷を低減することができる。
(4.4)第4変形例
図13は、本開示の実施形態の第4変形例に係るモータ制御システムにおける、モータの制御対象及び他モータの制御対象の概念図である。第4変形例のモータ制御システム100は、図13に示すように、他モータ制御システム200の制御対象CT2(他モータM2及び他負荷L2)が、モータM1及び負荷L1の両者に直接的に影響を与え得る位置に設置されている点で、上述の実施形態と相違する。図13において、他モータ制御システム200の制御対象CT2がモータM1及び負荷L1の両方に接している状態は、他モータ制御システム200の制御対象CT2の動作による反動が、直接的にモータM1及び負荷L1の両方に伝わることを表している。
つまり、上述の実施形態では、制御対象CT2の動作による反動は、負荷L1に対しては直接的に伝わる一方、モータM1に対しては接続部C1を介して間接的に伝わっていた。これに対して、本変形例では、制御対象CT2の動作による反動は、モータM1及び負荷L1の両方に直接的に伝わる。
本変形例では、他モータM2の軸が動作すると、他モータM2の動作の反動による外乱トルクが、モータM1及び負荷L1の両方に直接的に作用する。ここで、モータM1と負荷L1とではイナーシャが互いに異なるため、同じ外乱トルクが作用した場合でも、両者に位置ずれが生じる。両者に位置ずれが生じると、ばね要素C11の弾性に起因して振動が生じ、モータM1及び負荷L1の両方が振動し得る。一方、モータM1に直接的に作用する外乱トルクについては、ばね要素C11を介してモータM1に伝わっていないので、モータM1には、この外乱トルクに起因する振動が生じず、代わりにインパルス状の偏差が生じ得る。
図14は、本開示の実施形態の第4変形例に係るモータ制御システムの要部の概要を示すブロック図である。図14に示すように、本変形例では、上述の実施形態とは異なり、上記のインパルス状の偏差を低減するために、補償部2は、偏差補償部43を更に有している。偏差補償部43は、トルク推定部3で推定された外乱トルクに基づいて、外乱トルクが負荷L1を介さずにモータM1に作用する場合にモータM1に生じる偏差を補償する。具体的には、偏差補償部43は、トルク推定部3で推定された外乱トルクを入力として、外乱トルクに係数を乗じる演算処理を実行する。これにより、偏差補償部43は、偏差補償トルク指令を出力する。したがって、本変形例では、補償部2は、位相補償部42から出力される補償トルク指令と、偏差補償部43から出力される偏差補償トルク指令との和である補償トルク指令を、制御部1に出力する。
図15A及び図15Bは、本開示の実施形態の第4変形例に係るモータ制御システムのシミュレーション結果の一例を示す図である。図15Aは、合成トルク指令を電流制御部14に与えた場合(つまり、補償トルク指令を電流制御部14に与えた場合)のシミュレーション結果の一例を示している。図15Bは、トルク指令のみを電流制御部14に与えた場合(つまり、補償トルク指令を電流制御部14に与えない場合)のシミュレーション結果の一例を示している。これらのシミュレーションでは、モータM1の軸を停止させた状態で他モータ制御システム200に動作指令S2を与えることで、他モータM2の他軸のみを意図的に動作させている。
図15A及び図15Bの各々において、時刻t8から時刻t9の間に、他モータ制御システム200に動作指令S2が与えられている。図15Bでは、他モータ制御システム200に動作指令S2が与えられて他モータM2の他軸が動作することに伴って、偏差が変動している。つまり、図15Bでは、モータM1の軸が停止している状態であるにも関わらず、外乱トルクがモータM1に作用することで、モータM1の軸の位置が変動している。一方、図15Aでは、図15Bと比較して、偏差の変動、つまりモータM1の軸の位置の変動が抑えられている。
このように、本変形例では、上述の実施形態と同様に、外乱トルクによる振動を低減することができる。本変形例では、さらに外乱トルクがモータM1に直接的に作用することで生じるインパルス状の偏差を低減することができる。
(4.5)第5変形例
図16は、本開示の実施形態の第5変形例に係るモータ制御システム100における、モータの制御対象及び複数の他モータの制御対象の概念図である。第5変形例のモータ制御システム100では、図16に示すように、モータM1及び負荷L1が、複数(ここでは、2つ)の他モータ制御システム200(図17を参照)の制御対象CT21,CT22の動作の影響を受け得る点で、上述の実施形態と相違する。図16において、制御対象CT21,CT22が負荷L1に接している状態は、制御対象CT21,CT22の動作による反動が、直接的に負荷L1に伝わることを表している。
図17は、本開示の実施形態の第5変形例に係るモータ制御システムの概要を示すブロック図である。制御対象CT21である他モータM21及び他負荷L21は、図17に示す他モータ制御システム201により制御される。同様に、制御対象CT22である他モータM22及び他負荷L22は、図17に示す他モータ制御システム202により制御される。図17に示すように、コントローラA1は、動作指令S1,S21,S22を含む指令信号S0を、有線ネットワーク又は無線ネットワークを介して指令抽出部Bへ出力する。指令抽出部Bは、指令信号S0に基づいて動作指令S1,S21,S22を出力する。なお、指令抽出部Bは、動作指令S21を他モータ制御システム201へ出力し、動作指令S22を他モータ制御システム202へと出力する。また、指令抽出部Bは、動作指令S1をモータ制御システム100へと出力する。他モータ制御システム201,202は、それぞれ指令抽出部Bから出力される動作指令S21,S22を受けて、他モータM21,M22の軸の動作を制御する。
モータ制御システム100は、2つの補償部2を有している。2つの補償部2のうちの第1補償部21には、他モータ制御システム201に対する動作指令S21が入力される。2つの補償部2のうちの第2補償部22には、他モータ制御システム202に対する動作指令S22が入力される。
なお、指令抽出部Bは、指令抽出部B1,B21,B22を含む。指令抽出部B1は、モータ制御システム100へ動作指令S1を出力する。指令抽出部B21は、他モータ制御システム201へ動作指令S21を出力する。指令抽出部B22は、他モータ制御システム202へ動作指令S22を出力する。
第1補償部21は、入力された動作指令S21に基づいて、第1補償トルク指令を演算して出力する。同様に、第2補償部22は、入力された動作指令S22に基づいて、第2補償トルク指令を演算して出力する。したがって、補償部2は、第1補償トルク指令と、第2補償トルク指令との和である補償トルク指令を、制御部1に出力する。
なお、本変形例では、第1補償トルク指令と、第2補償トルク指令との和を補償トルク指令としているが、第1補償トルク指令及び第2補償トルク指令をそれぞれ補償トルク指令として出力する構成でもよい。この場合、制御部1において、第1補償トルク指令、第2補償トルク指令、及びトルク指令の和を算出する。
上述のように、本変形例では、他モータM2が複数である。補償部2は、複数の他モータM2それぞれの他軸情報(動作指令S21,S22)に基づいて、補償情報(補償トルク指令)を演算する。したがって、複数の他モータM2の動作の反動による外乱トルクがモータM1及び負荷L1に作用する場合においても、外乱トルクによる振動を低減することができる。
なお、本変形例においては、他モータ制御システム200による制御対象CT2が2つであるが、3つ以上であってもよい。この場合、モータ制御システム100は、3つ以上の制御対象CT2にそれぞれ対応する3つ以上の補償部2を有していればよい。すなわち、補償部2の数は、他モータM2の数と等しい。
(4.6)第6変形例
図18は、本開示の実施形態の第6変形例に係るモータ制御システム100の概要を示すブロック図である。第6変形例のモータ制御システム100では、図18に示すように、他モータ制御システム200が補償部2を有している点で、上述の実施形態と相違する。つまり、本変形例では、他モータ制御システム200は、モータ制御システム100に相当する。一方のモータ制御システム100では、補償部2は、他方のモータ制御システム100(他モータ制御システム200)に対する動作指令S12に基づいて、補償トルク指令を演算して制御部1に出力する。同様に、他方のモータ制御システム100では、補償部2は、一方のモータ制御システム100に対する動作指令S11に基づいて、補償トルク指令を演算して制御部1に出力する。
このように、2つのモータ制御システム100の補償部2は、それぞれ相手側のモータ制御システム100に対する動作指令S1を用いて補償情報(補償トルク指令)を演算する。したがって、本変形例では、2つのモータ制御システム100のいずれにおいても、外乱トルクによる振動を低減することができる。
(4.7)第7変形例
図19は、本開示の実施形態の第7変形例に係るモータ制御システムの概要を示すブロック図である。第7変形例のモータ制御システム100では、図19に示すように、複数(ここでは、2つ)のモータ制御システム100で補償部2を共用する点で、第6変形例と相違する。つまり、2つのモータ制御システム100は、それぞれ制御部1を有している。補償部2には、2つのモータ制御システム100に対する動作指令S11,S12の両方が入力される。補償部2は、一方の制御部1と他方の制御部1とのいずれか一方に接続可能に構成されている。
一方のモータ制御システム100に動作指令S11が与えられる場合、補償部2は、この動作指令S11に基づいて補償情報(補償トルク指令)を演算し、演算した補償情報を他方のモータ制御システム100の制御部1に出力する。同様に、他方のモータ制御システム100に動作指令S12が与えられる場合、補償部2は、この動作指令S12に基づいて補償情報を演算し、演算した補償情報を一方のモータ制御システム100の制御部1に出力する。
このように、2つのモータ制御システム100において1つの補償部2を共用する。これにより、第6変形例と同様に、2つのモータ制御システム100のいずれにおいても、外乱トルクによる振動を低減することができる。
(4.8)その他の変形例
以下、上述の第1変形例~第7変形例以外の変形例について列挙する。以下に説明する変形例は、適宜組み合わせて適用可能である。
上述の実施形態において、モータM1の軸に接続される負荷L1は、モータM1の用途に応じて適宜変更されてもよい。この場合、補償部2は、モータM1の軸に接続される負荷L1に応じて、補償情報(ここでは、補償トルク指令)を演算するために用いるパラメータを設定可能であるのが好ましい。
上述の実施形態では、図1に示すトルク推定部3は、他モータM2に対する動作指令S2としての位置指令を用いて外乱トルクを推定している。しかし、これに限らず、例えば速度指令又は加速度指令を用いて外乱トルクを推定してもよい。これらの態様では、外乱トルクを推定する演算処理において、外乱トルクを推定するために必要な微分演算の回数を減らすことができる。これにより、演算負荷の低減を図ることができる。
上述の実施形態において、トルク推定部3は、他モータM2に対する動作指令S2(位置指令、速度指令、又は加速度指令)の代わりに、他モータM2の他軸の動作量(他軸の位置、速度、又は加速度)を用いて外乱トルクを推定してもよい。この態様では、他モータM2の実際の動作量を用いて外乱トルクを推定することから、外乱トルクを推定する演算処理において、ローパスフィルタ処理が不要となる。また、動作指令S2を用いて外乱トルクを推定する場合と比較して、外乱トルクをより推定しやすい、という利点がある。
上述の実施形態では、モータ制御システム100は、補償トルク指令をトルク指令に加えることでモータM1の軸の動作を制御している。しかし、この態様に限られない。例えば、モータ制御システム100は、他モータM2に対する動作指令S2に基づいて、外乱トルクによる振動を相殺するための補償位置指令又は補償速度指令を、モータM1に対する位置指令又は速度指令に加えることでモータM1の軸の動作を制御してもよい。つまり、補償情報は、補償トルク指令に限られない。
(まとめ)
以上述べたように、第1の態様に係るモータ制御システム100は、制御部1と、補償部2と、を備える。制御部1は、モータM1に対する動作指令S1に応じて、モータM1の有する軸の動作を制御する。補償部2は、モータM1とは異なる他モータM2の有する他軸の動作に関する他軸情報(動作指令S2)に基づいて、補償情報を演算する。補償情報は、他軸の動作が軸に与える影響を補償するための情報である。制御部1は、補償部2にて演算された補償情報を用いて軸の動作を制御する。
この態様によれば、他モータM2の動作に伴う振動を低減しやすい、という利点がある。
第2の態様に係るモータ制御システム100では、第1の態様において、補償部2は、トルク推定部3と、補償トルク演算部4と、を有する。トルク推定部3は、他軸情報に基づいて、他軸の動作に伴ってモータM1に作用する外乱トルクを推定する。補償トルク演算部4は、外乱トルクに基づいて、補償トルク指令を演算し、補償トルク指令を補償情報として出力する。補償トルク指令は、外乱トルクがモータM1及びモータM1の軸に接続される負荷L1の少なくとも一方に作用することで生じる振動を低減するための指令である。
この態様によれば、他モータM2の動作の反動による外乱トルクを、補償トルク指令により生じるトルクで相殺することができ、振動を低減しやすい、という利点がある。
第3の態様に係るモータ制御システム100では、第2の態様において、補償トルク演算部4は、外乱トルクに対して、伝達関数(第3伝達関数「G(s)」)に基づくフィルタ処理を実行することで、補償トルク指令を演算する。伝達関数は、モータM1に作用するモータトルクを入力、負荷L1に作用する負荷トルクを出力とする。
この態様によれば、他モータM2の動作の反動による外乱トルクを、補償トルク指令により生じるトルクで相殺することができ、振動を低減しやすい、という利点がある。
第4の態様に係るモータ制御システム100では、第3の態様において、フィルタ処理は、伝達関数(第1伝達関数「G(s)」)と、伝達関数(第2伝達関数「G(s)」)の逆関数と、の積に基づく処理である。第1伝達関数は、モータトルクを入力、モータのモータ速度を出力とする。第2伝達関数は、負荷トルクを入力、モータ速度を出力とする。
この態様によれば、他モータM2の動作の反動による外乱トルクを、補償トルク指令により生じるトルクで相殺することができ、振動を低減しやすい、という利点がある。
第5の態様に係るモータ制御システム100では、第3の態様において、フィルタ処理は、1次のローパスフィルタの伝達関数に基づく処理である。
この態様によれば、補償部2でのフィルタ処理の演算負荷を低減しやすい、という利点がある。
第6の態様に係るモータ制御システム100では、第3の態様において、フィルタ処理は、伝達関数(第5伝達関数「G(s)」)と、伝達関数(第4伝達関数「G(s)」)と、1次のローパスフィルタの伝達関数と、の積に基づく処理である。第5伝達関数は、負荷トルクを入力、負荷の負荷速度を出力とする。第4伝達関数は、モータトルクを入力、負荷速度を出力とする。
この態様によれば、他モータM2の動作の反動による外乱トルクを、補償トルク指令により生じるトルクで相殺することができ、振動を低減しやすい、という利点がある。
第7の態様に係るモータ制御システム100では、第5の態様において、1次のローパスフィルタの遮断周波数は、負荷トルクを入力、モータトルクを出力とする伝達関数(第6伝達関数「G(s)」)の周波数特性の***振周波数以上である。
この態様によれば、他モータM2の動作の反動による外乱トルクを、補償トルク指令により生じるトルクで相殺することができ、振動を低減しやすい、という利点がある。
第8の態様に係るモータ制御システム100では、第5の態様において、フィルタ処理は、1次のハイパスフィルタの伝達関数に基づく処理である。
この態様によれば、補償部2でのフィルタ処理の演算負荷を低減しやすい、という利点がある。
第9の態様に係るモータ制御システム100では、第2~第8のいずれかの態様において、補償トルク演算部4は、補償トルク指令で指示されるトルクと、外乱トルクと、の位相差を補償する位相補償部42を有する。
この態様によれば、外乱トルクと、補償トルク指令により生じるトルクとの位相差が生じにくくなり、結果として外乱トルクによる振動を低減しやすい、という利点がある。
第10の態様に係るモータ制御システム100では、第9の態様において、位相補償部42は、1次のフィルタで構成されている。
この態様によれば、外乱トルクと、補償トルク指令により生じるトルクとの位相差が生じにくくなり、結果として外乱トルクによる振動を低減しやすい、という利点がある。
第11の態様に係るモータ制御システム100では、第2~第10のいずれかの態様において、補償部2は、偏差補償部43を更に有する。偏差補償部43は、外乱トルクに基づいて、外乱トルクが負荷L1を介さずにモータM1に作用する場合にモータM1に生じる偏差を補償する。
この態様によれば、外乱トルクがモータM1に直接的に作用することで生じるインパルス状の偏差を低減しやすい、という利点がある。
第12の態様に係るモータ制御システム100では、第1~第11のいずれかの態様において、他モータM2は複数の他モータを有する。補償部2は、複数の他モータM2それぞれの他軸情報に基づいて、補償情報を演算する。
この態様によれば、複数の他モータM2の動作の反動による外乱トルクがモータM1及び負荷L1に作用する場合においても、外乱トルクによる振動を低減しやすい、という利点がある。
第13の態様に係るモータ制御システム100では、第1~第12のいずれかの態様において、補償部2は、モータM1の軸に接続される負荷L1に応じて、補償情報を演算するために用いるパラメータを設定可能である。
この態様によれば、モータM1の用途に応じて、適切に外乱トルクによる振動を低減しやすい、という利点がある。
第14の態様に係るモータ制御方法は、制御ステップと、補償ステップと、を有する。制御ステップは、モータM1に対する動作指令S1に応じて、モータM1の有する軸の動作を制御するステップである。補償ステップは、モータM1とは異なる他モータM2の有する他軸の動作に関する他軸情報(動作指令S2)に基づいて、補償情報を演算するステップである。補償情報は、他軸の動作が軸に与える影響を補償するための情報である。制御ステップは、補償ステップにて演算された補償情報を用いて軸の動作を制御する。
この態様によれば、他モータM2の動作に伴う振動を低減しやすい、という利点がある。
第15の態様に係るプログラムは、1以上のプロセッサに、第14の態様に係るモータ制御方法を実行させる。
この態様によれば、他モータM2の動作に伴う振動を低減しやすい、という利点がある。
第2~第13の態様に係る構成については、モータ制御システム100に必須の構成ではなく、適宜省略可能である。
1 制御部
2 補償部
3 トルク推定部
4 補償トルク演算部
11 位置制御部
12 速度変換部
13 速度制御部
14 電流制御部
21 第1補償部
22 第2補償部
41 振動補償部
42 位相補償部
43 偏差補償部
100 モータ制御システム
200 他モータ制御システム
201 他モータ制御システム
202 他モータ制御システム
A1 コントローラ
B、B1、B2、B21、B22 指令抽出部
C1 接続部
C11 ばね要素
C12 ダンパ要素
CT1、CT2、CT21、CT22 制御対象
L1 負荷
L2、L21、L22 他負荷
M1 モータ
M2、M21、M22 他モータ
S1、S2、S11、S12、S21、S22 動作指令

Claims (13)

  1. モータに対する動作指令に応じて、前記モータの有する軸の動作を制御する制御部と、
    前記モータとは異なる他モータの有する他軸の動作に関する他軸情報に基づいて、前記他軸の動作が前記軸に与える影響を補償するための補償情報を演算する補償部と、を備え、
    前記制御部は、前記補償部にて演算された前記補償情報を用いて前記軸の動作を制御する、モータ制御システムにおいて、
    前記補償部は、
    前記他軸情報に基づいて、前記他軸の動作に伴って前記モータに作用する外乱トルクを推定するトルク推定部と、
    前記外乱トルクが前記モータ及び前記モータの前記軸に接続される負荷の少なくとも一方に作用することで生じる振動を低減するための補償トルク指令を前記外乱トルクに基づいて、演算し、前記補償トルク指令を前記補償情報として出力する補償トルク演算部と、を有し、
    前記補償トルク演算部は、
    前記外乱トルクに対して、前記モータに作用するモータトルクを入力、前記負荷に作用する負荷トルクを出力とする伝達関数に基づくフィルタ処理を実行することで、前記補償トルク指令を演算する、
    モータ制御システム。
  2. 前記フィルタ処理は、
    前記モータトルクを入力、前記モータのモータ速度を出力とする伝達関数と、
    前記負荷トルクを入力、前記モータ速度を出力とする伝達関数の逆関数と、の積に基づく処理である、
    請求項1記載のモータ制御システム。
  3. 前記フィルタ処理は、1次のローパスフィルタの伝達関数に基づく処理である、
    請求項1記載のモータ制御システム。
  4. 前記フィルタ処理は、
    前記負荷トルクを入力、前記負荷の負荷速度を出力とする伝達関数と、
    前記モータトルクを入力、前記負荷速度を出力とする伝達関数の逆関数と、
    1次のローパスフィルタの伝達関数と、の積に基づく処理である、
    請求項1記載のモータ制御システム。
  5. 前記1次のローパスフィルタの遮断周波数は、前記負荷トルクを入力、前記モータトルクを出力とする伝達関数の周波数特性の***振周波数以上である、
    請求項4記載のモータ制御システム。
  6. 前記フィルタ処理は、1次のハイパスフィルタの伝達関数に基づく処理である、
    請求項1記載のモータ制御システム。
  7. 前記補償トルク演算部は、前記補償トルク指令で指示されるトルクと、前記外乱トルクと、の位相差を補償する位相補償部を有する、
    請求項1~6のいずれか1項に記載のモータ制御システム。
  8. 前記位相補償部は、1次のフィルタで構成されている、
    請求項7に記載のモータ制御システム。
  9. 前記補償部は、前記外乱トルクに基づいて、前記外乱トルクが前記負荷を介さずに前記モータに作用する場合に前記モータに生じる偏差を補償する偏差補償部を更に有する、
    請求項1~6のいずれか1項に記載のモータ制御システム。
  10. 前記他モータは、複数の他モータを有し、
    前記補償部は、前記複数の他モータそれぞれの前記他軸情報に基づいて、前記補償情報を演算する、
    請求項1~6のいずれか1項に記載のモータ制御システム。
  11. 前記補償部は、前記モータの前記軸に接続される負荷に応じて、前記補償情報を演算するために用いるパラメータを設定可能である、
    請求項1~6のいずれか1項に記載のモータ制御システム。
  12. モータに対する動作指令に応じて、前記モータの有する軸の動作を制御する制御ステップと、
    前記モータとは異なる他モータの有する他軸の動作に関する他軸情報に基づいて、前記他軸の動作が前記軸に与える影響を補償するための補償情報を演算する補償ステップと、を有し、
    前記制御ステップは、前記補償ステップにて演算された前記補償情報を用いて前記軸の動作を制御する、モータ制御方法において、
    前記補償ステップは、
    前記他軸情報に基づいて、前記他軸の動作に伴って前記モータに作用する外乱トルクを推定するステップと、
    前記外乱トルクが前記モータ及び前記モータの前記軸に接続される負荷の少なくとも一方に作用することで生じる振動を低減するための補償トルク指令を前記外乱トルクに基づいて演算し、前記補償トルク指令を前記補償情報として出力するステップと、を有し、
    前記補償トルク指令を演算する際に、
    前記外乱トルクに対して、前記モータに作用するモータトルクを入力、前記負荷に作用する負荷トルクを出力とする伝達関数に基づくフィルタ処理を実行することで、前記補償トルク指令を演算する、
    モータ制御方法。
  13. 1以上のプロセッサに、請求項12記載のモータ制御方法を実行させる、
    プログラム。
JP2021518310A 2019-05-09 2020-03-13 モータ制御システム、モータ制御方法、及びプログラム Active JP7454767B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2019089265 2019-05-09
JP2019089265 2019-05-09
PCT/JP2020/011108 WO2020225978A1 (ja) 2019-05-09 2020-03-13 モータ制御システム、モータ制御方法、及びプログラム

Publications (3)

Publication Number Publication Date
JPWO2020225978A1 JPWO2020225978A1 (ja) 2020-11-12
JPWO2020225978A5 JPWO2020225978A5 (ja) 2022-02-08
JP7454767B2 true JP7454767B2 (ja) 2024-03-25

Family

ID=73050589

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021518310A Active JP7454767B2 (ja) 2019-05-09 2020-03-13 モータ制御システム、モータ制御方法、及びプログラム

Country Status (5)

Country Link
US (1) US11791751B2 (ja)
EP (1) EP3968513A4 (ja)
JP (1) JP7454767B2 (ja)
CN (1) CN113767565B (ja)
WO (1) WO2020225978A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003263228A (ja) 2002-03-08 2003-09-19 Yaskawa Electric Corp 同期制御装置
JP2009077591A (ja) 2007-09-21 2009-04-09 Juki Corp Xy位置決め装置の駆動制御装置
JP2018098846A (ja) 2016-12-09 2018-06-21 Juki株式会社 モーター制御装置、ミシン及び電子部品実装装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5467004A (en) * 1992-11-24 1995-11-14 Matsushita Electric Industrial Co., Ltd. Motor speed control apparatus for keeping the speed of the motor fixed in the presence of a disturbance torque
KR0185951B1 (ko) * 1995-07-04 1999-05-15 김광호 회전모터의 속도제어방법 및 그 장치
JPH11231942A (ja) * 1998-02-13 1999-08-27 Toyo Electric Mfg Co Ltd ねじり軸系トルク制御方法
JPH11332272A (ja) * 1998-05-15 1999-11-30 Toyo Electric Mfg Co Ltd 2慣性共振系トルク制御方法
TW412669B (en) * 1998-09-28 2000-11-21 Yaskawa Denki Seisakusho Kk Position control apparatus
JP3298069B2 (ja) * 1999-05-20 2002-07-02 住友重機械工業株式会社 ステージの位置制御装置及び速度制御装置
JP3816725B2 (ja) * 2000-04-21 2006-08-30 三菱電機株式会社 モータ制御装置、および同装置で使用する、トルクリプルを抑制するための補正値の測定方法
JP2003092896A (ja) * 2001-09-20 2003-03-28 Matsushita Electric Ind Co Ltd Dcブラシレスモータのトルク制御装置
JP4020726B2 (ja) * 2002-08-08 2007-12-12 三菱電機株式会社 機械の位置制御装置および機械の位置制御システム
JP4084169B2 (ja) * 2002-11-27 2008-04-30 株式会社リコー 捩り振動系制御装置
JP4949786B2 (ja) * 2006-09-13 2012-06-13 本田技研工業株式会社 電動機の制御装置
JP5919346B2 (ja) * 2014-09-01 2016-05-18 ファナック株式会社 軸間干渉を補正するモータ制御装置
JP6496167B2 (ja) * 2015-03-19 2019-04-03 オークマ株式会社 タンデム位置制御装置
JP6693013B2 (ja) 2016-02-04 2020-05-13 ブラザー工業株式会社 振動抑制装置と振動抑制方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003263228A (ja) 2002-03-08 2003-09-19 Yaskawa Electric Corp 同期制御装置
JP2009077591A (ja) 2007-09-21 2009-04-09 Juki Corp Xy位置決め装置の駆動制御装置
JP2018098846A (ja) 2016-12-09 2018-06-21 Juki株式会社 モーター制御装置、ミシン及び電子部品実装装置

Also Published As

Publication number Publication date
CN113767565A (zh) 2021-12-07
US20220216813A1 (en) 2022-07-07
EP3968513A4 (en) 2022-06-29
JPWO2020225978A1 (ja) 2020-11-12
CN113767565B (zh) 2023-09-29
US11791751B2 (en) 2023-10-17
EP3968513A1 (en) 2022-03-16
WO2020225978A1 (ja) 2020-11-12

Similar Documents

Publication Publication Date Title
JP5273575B2 (ja) 電動機制御装置
JP5169836B2 (ja) 位置制御装置
JP4685071B2 (ja) モータ制御装置及びモータ制御方法
WO2015004885A1 (ja) 電動機の制御装置
JP2005301508A (ja) 制御装置
JP5652678B2 (ja) 電動機制御装置
JP2016105686A (ja) モータ駆動装置の制御装置、複軸モータ駆動装置の制御装置、及びモータ駆動装置の制御方法
JP6604157B2 (ja) 多慣性共振システムにおける共振抑制制御装置
JP4914979B2 (ja) モータ制御装置およびモータ制御方法
KR19980074456A (ko) 2관성 공진계의 진동 억제방법 및 장치
JP7454767B2 (ja) モータ制御システム、モータ制御方法、及びプログラム
JP6930868B2 (ja) サーボ制御装置、サーボ制御方法及びシステム
JP3970699B2 (ja) モータ制御装置
JP6720714B2 (ja) 電動車両の制御方法、及び電動車両の制御装置
JP5411687B2 (ja) ロボットの制御装置
JPH10217173A (ja) ロボットの非干渉化制御装置
JPWO2020225978A5 (ja)
JP2002325473A (ja) 振動抑制装置
JP3983577B2 (ja) 推定装置を用いた制御装置
JP3220589B2 (ja) メカニカルシステムの制御装置
JP3856215B2 (ja) 速度制御装置
WO2019123573A1 (ja) 電動機の制御装置
JP3303566B2 (ja) 共振比制御による2慣性共振系の振動抑制装置
JP7447650B2 (ja) 制御装置
WO2021157178A1 (ja) モータ制御装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210823

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20221024

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230106

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231226

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240130

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240212

R151 Written notification of patent or utility model registration

Ref document number: 7454767

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151