実施の形態1
図1は、実施の形態1に係るモータ制御システムの構成を示す図である。実施の形態1に係るモータ制御システムの構成について、図1を参照して説明する。上位コントローラ1は、モータ制御装置21、22、23に接続する。
モータ制御装置21は、内部に加振指令生成部211及びデータ測定部212を備える。モータ制御装置22は、内部に加振指令生成部221及びデータ測定部222を備える。モータ制御装置23は、内部に加振指令生成部231及びデータ測定部232を備える。
モータ制御装置21は、モータ31及び検出器41に接続する。モータ制御装置22は、モータ32及び検出器42に接続する。モータ制御装置23は、モータ33及び検出器43に接続する。
図1において、梁5は、図1に示すX軸方向に沿って設置する。伝達機構71は、梁5の上に設置する。取付台61は、図1に示すY軸方向に沿って設置する。伝達機構72は、取付台61の上に設置する。取付台62は、図1に示すY軸方向に沿って設置する。伝達機構73は、取付台62の上に設置する。
可動部81は図1に示すX軸方向へ伝達機構71にそって移動できる。伝達機構71は、この可動部81と接続している。可動部82は図1に示すY軸方向へ伝達機構72にそって移動できる。伝達機構72は、この可動部82と接続している。可動部83は図1に示すY軸方向へ伝達機構73にそって移動できる。伝達機構73は、この可動部83と接続している。
以下において、図1に示すように、梁5及び伝達機構71を設置する軸のことを、第1軸とする。図1に示すように、取付台61及び伝達機構72を設置する軸のことを、第2軸とする。図1に示すように、取付台62及び伝達機構73を設置する軸のことを、第3軸とする。
第1軸の梁5は、図1に示すように、第2軸と第3軸とに跨るように設置する。また、梁5は、その両端をそれぞれ可動部82と可動部83とに固定する。このため、可動部82または可動部83が可動するとき、梁5は、可動部82または可動部83の動作に伴って可動する。なお、以下において、図1に示す第1軸の梁5のように、他の軸に固定されている部分のことを、機械的に連結した部分という。
実施の形態1において、第1軸の伝達機構71、第2軸の伝達機構72、第3軸の伝達機構73は、それぞれボールねじである。各モータ31、32、33は、各伝達機構71、72、73を時計回りまたは反時計回りに回転させる。なお、以下において、時計周りの回転のことを正方向の回転とする。反時計周りの回転のことを負方向の回転とする。
各伝達機構71、72、73の回転にともない、対応する各可動部81、82、83は、それぞれ可動する。第1軸の伝達機構71が正方向に回転する場合、可動部81は、図1に示すX軸の正方向へ可動する。第1軸の伝達機構71が負方向に回転する場合、可動部81は、図1に示すX軸の負方向へ可動する。
第2軸の伝達機構72が正方向に回転する場合、可動部82は、図1に示すY軸の正方向へ可動する。第2軸の伝達機構72が負方向に回転する場合、可動部82は、図1に示すY軸の負方向へ可動する。第3軸の伝達機構73が正方向に回転する場合、可動部83は、図1に示すY軸の正方向へ可動する。第3軸の伝達機構73が負方向に回転する場合、可動部83は、図1に示すY軸の負方向へ可動する。
第1軸のモータ31は、図1のX軸方向へ可動部81を動かす。可動部81は、伝達機構71を介して図1のX軸方向へ動かされる。
第2軸のモータ32は、図1のY軸方向へ可動部82を動かす。可動部82は、伝達機構72を介して図1のY軸方向へ動かされる。
第3軸のモータ33は、図1のY軸方向へ可動部83を動かす。可動部83は、伝達機構73を介して図1のY軸方向へ動かされる。
第1軸の検出器41は、モータ31の速度を検出する。第2軸の検出器42は、モータ32の速度を検出する。第3軸の検出器43は、モータ33の速度を検出する。なお、各モータ31、32、33の速度とは、例えば、回転速度、角速度等をいう。
次に、実施の形態1に係る動作原理について説明する。モータ制御システムは、半導体製造装置、工作機械、産業用ロボット等に用いられる。モータ制御システムは、各モータ31、32、33を駆動させることにより、負荷機械の装置可動部の位置決め制御を行う。なお、実施の形態1において、負荷機械とは、梁5、取付台61、62、伝達機構71、72、73、可動部81、82、83のことである。負荷機械の装置可動部とは、可動部81、82、83のことである。
位置決め制御とは、具体的には以下のとおりである。ユーザは、モータ制御システムに、負荷機械の装置可動部を移動させるための、目標とする位置を設定する。モータ制御システムは、負荷機械の装置可動部の現在の位置と、目標とする位置と、の誤差を判断する。この誤差に基づき、モータ制御システムは、モータ31、32、33を駆動させ、負荷機械の装置可動部を目標位置へと移動させるためのトルク指令を生成する。トルク指令は、モータ31、32、33の駆動時の振幅、回転方向、周波数等を指令する信号である。なお、振幅とは、モータ31、32、33を駆動させる際のトルクの大きさのことである。また、モータ31、32、33の回転数は、周波数に比例する。つまり、トルク指令の周波数が高いほど、モータ31、32、33の回転数は大きくなる。
モータ制御システムは、生成したトルク指令を各モータ31、32、33へ送信する。各モータ31、32、33は、トルク指令に従い駆動する。モータ31、32、33の駆動力は、伝達機構71、72、73を介して負荷機械の装置可動部に伝達される。これにより、負荷機械の装置可動部である可動部81、82、83は、目標の位置へと移動する。
ここで、発振について説明する。各モータ31、32、33へ入力されるトルク指令に対する負荷機械の応答の大きさのことを、ゲインという。上記のように、各モータ31、32、33は、トルク指令に基づき駆動する。しかし、ゲインが大きい場合、負荷機械の装置可動部は、各モータ31、32、33の駆動により過大な動作を行ってしまい、目標位置を通り越して移動してしまう。すると、モータ制御システムは、負荷機械の装置可動部を目標位置へ移動させるため、各モータ31、32、33を逆方向へ駆動させる。このような動作を繰り返してしまい、負荷機械の装置可動部が目標位置の近辺で往復してしまうことを、発振という。
また、モータ31、32、33を駆動させる際、モータ制御システムが制御する負荷機械には、位置決め制御の条件等により、様々な周波数の振動が発生する。例えば、負荷機械には、トルク指令の周波数に比例した周波数の振動が発生する。そして、負荷機械が振動する場合、この振動により、モータ制御システムに騒音が発生する。
一方、モータ制御システムが制御する負荷機械は、その構成により、ある周波数において共振点を持つ。共振点とは、上記のゲインが最も大きくなる点のことである。また、共振点における周波数を、共振周波数という。1軸のみを持つ負荷機械は、その構成に応じた共振周波数を持つ。しかし、負荷機械が複数の軸を持つ場合、負荷機械は、これらの軸が別々の構成とされている場合における共振周波数に対し、異なる共振周波数を持つ。また、各軸が干渉を起こすため、負荷機械は、複数の共振周波数を持つ。
共振点において、ゲインは大きな値となる。よって、共振点において、各モータ31、32、33に入力されたトルク指令に対し、負荷機械は、大きく移動する。このため、共振点において、各モータ31、32、33に振幅の大きいトルク指令を入力したならば、負荷機械の装置可動部は、発振を起こしてしまう。また、モータ31、32、33の駆動時に発生した振動は、その周波数が負荷機械の共振周波数と一致するならば、増幅され、大きな騒音が発生する。
上記のような事態を避けるため、モータ制御システムは、制御する負荷機械について、周波数特性を測定する。測定した周波数特性から、ユーザは、負荷機械の共振周波数を把握することができる。そして、ユーザは、共振周波数に基づいて、モータ制御システムの調整を行う。
次に、周波数特性の測定と、モータ制御システムの調整について説明する。一般に、サーボモータでは、トルク指令についての高速応答制御が必要であるため、トルク指令の電流のフィードバック制御を行う。フィードバック制御の制御系の出力は、制御系への入力と、その制御系の伝達関数とにより決定される。実施の形態1において、上述のように、モータ制御装置21、22、23は、各モータ31、32、33をトルク指令により駆動させる。検出器41、42、43は、各モータ31、32、33の駆動時の速度を検出する。上位コントローラ1は、このトルク指令を負荷機械への入力として、また検出した速度を負荷機械の出力として、負荷機械の伝達関数を求める。
電流のフィードバック制御において、ida、idqである電流制御器を用いる場合、Kidをida制御器の比例ゲイン、Kiqをidq制御器の比例ゲインとすると、P制御(比例制御)のオープンループ伝達関数は、以下の式1のように表される。
また、P制御のクローズドループ伝達関数は、以下の式2のように表される。
さらに、PI制御(比例積分制御)のオープンループ伝達関数は、以下の式3のように表すことができる。
また、PI制御のクローズドループ伝達関数は、以下の式4のように表される。
上記の式1から式4に示すように、負荷機械について伝達関数を求めることができる。また、伝達関数が求まれば、伝達関数からボード線図を作成することができる。ボード線図は、周波数に対するゲイン及び位相の関係を示す図である。負荷機械の周波数特性は、通常、このボード線図により表される。ボード線図の一例を、図2に示す。図2のボード線図において、位相は、各モータ31、32、33へ入力されるトルク指令に対する負荷機械の応答の遅れ分の位相を示す。
図2に示すように、ゲインがピークとなる共振点の周波数は、1000Hzである。つまり、ボード線図から、負荷機械の共振周波数及びその点におけるゲインの大きさと位相とを把握することができる。そして、ユーザは、この共振周波数に対してフィルタを設定する。フィルタの設定において、ユーザは、ゲインの大きさをもとに、最適な値をフィルタ値として設定する。フィルタを設定した周波数において、モータ制御装置21、22、23は、各モータ31、32、33に対し、本来出力すべきトルク指令の振幅よりも、フィルタ値の分だけ小さい振幅のトルク指令を出力する。共振周波数に対してフィルタを設定することにより、共振周波数における発振または騒音等の問題を解消することができる。
また、上記のボード線図により、負荷機械についての位相余裕、ゲイン余裕等を把握できる。位相余裕、ゲイン余裕とは、負荷機械が安定限界に到達するまでに、位相、ゲインにどれだけ余裕があるかを示す指標である。モータ制御システムの調整をする際、ユーザは、位相余裕、ゲイン余裕を考慮した調整を行う。
このように、ユーザは、モータ制御システムが制御する負荷機械について周波数特性を測定し、モータ制御システムの調整を行う。この調整を最適なものとするために、モータ31、32、33、検出器41、42、43を含む負荷機械全体の周波数特性について、正しく測定する必要がある。
なお、以上説明したように、各モータ31、32、33に入力したトルク指令で指令された速度に対し、検出される各モータ31、32、33の実際の速度の差のことを、周波数特性という。また、各モータ31、32、33に対するトルク指令と検出した速度とに基づいて負荷機械の伝達関数を求め、ボード線図を作成することを、周波数特性の測定または周波数特性の算出という。ユーザが、測定した周波数特性から導かれる共振周波数に基づき、共振周波数に対して最適なフィルタ値を設定し、負荷機械の共振を低減させることを、モータ制御システムの調整という。
次に、実施の形態1に係るモータ制御システムにおける周波数特性の測定について、図3から図14を参照して説明する。図3は、実施の形態1に係るモータ制御システムにおける周波数特性の測定を示す図である。図4は、実施の形態1における周波数特性の測定の手順を示すフローチャートである。
周波数特性を測定する際、図4に示すステップ1において、ユーザは、上位コントローラ1に予め測定順序を設定する。実施の形態1において、測定順序は、ポイント1からポイント9までとする。図5は、実施の形態1に係る周波数特性の測定順序のポイント1を示す図である。また、図13は、実施の形態1に係る周波数特性の測定順序のポイント9を示す図である。実施の形態1に係る周波数特性の測定順序のポイント1からポイント9は、それぞれ図5から図13に対応する。
図5-(a)は、ポイント1における各可動部81、82、83の測定位置を示している。ポイント1において、各可動部81、82、83の測定位置は、図5-(a)に示すように第1軸がX1、第2軸がY1、第3軸がY1である。ユーザは、ポイント1からポイント9のそれぞれについて、各可動部81、82、83の測定位置を設定する。なお、以下において、各測定順序における各可動部81、82、83の測定位置のことを、設定位置情報とする。
また、図4に示すステップ1において、ユーザは、上位コントローラ1に、加振条件、加振を開始する時間等を設定する。加振条件とは、モータ31、32、33の振幅、回転方向のことである。これらの設定は、ユーザが、上位コントローラ1に対してプログラムを入力することにより行う。なお、以下において、測定順序、設定位置情報、加振条件、加振を開始する時間等、各モータ31、32、33を駆動させるための情報のことを、設定情報とする。
図4に示すステップ1において、ユーザは、上位コントローラ1に対し、周波数特性の測定の開始を指示する。これにより、モータ制御システムは、周波数特性の測定を開始する。なお、これ以降、モータ制御システムは、自動的に動作を行う。
図4に示すステップ2において、上位コントローラ1は、図3に示すように、入力された設定情報に基づいて、第1軸に対する加振情報指令A1、第2軸に対する加振情報指令A2、第3軸に対する加振情報指令A3を生成する。加振情報指令A1、A2、A3とは、各モータ制御装置21、22、23に対し、後述の加振指令B1、B2、B3を生成させるための指令である。
図5-(b)は、測定順序のポイント1における設定情報を示す図である。加振情報指令A1は、図5-(b)に示す第1軸に係る設定情報を持つ。加振情報指令A2は、図5-(b)に示す第2軸に係る設定情報を持つ。加振情報指令A3は、図5-(b)に示す第3軸に係る設定情報を持つ。
図5-(b)において、第2軸、第3軸についての加振条件の方向は、正である。また、実施の形態1において、各伝達機構71、72、73はボールねじである。このため、各モータ32、33は、各伝達機構72、73を正方向に回転させる。図5-(b)において、第1軸についての加振条件の方向は、負である。このため、モータ31は、伝達機構71を負方向に回転させる。
また、図5-(b)において、第1軸についての加振条件の振幅は、20%である。これは、モータ31を駆動させる際のトルクの大きさを、最大値の20%とすることを示している。図5-(b)において、第2軸、第3軸についての加振条件の振幅は、30%である。これは、モータ32、33を駆動させる際のトルクの大きさを、最大値の30%とすることを示している。
図4に示すステップ3において、上位コントローラ1は、生成した加振情報指令A1をモータ制御装置21へ送信する。上位コントローラ1は、生成した加振情報指令A2をモータ制御装置22へ送信する。上位コントローラ1は、生成した加振情報指令A3をモータ制御装置23へ送信する。
各モータ制御装置21、22、23は、図4に示すステップ3において加振情報指令A1、A2、A3を受信した後、予め定められたシーケンスに従い、自動的に動作を行う。図4に示すステップ4において、加振指令生成部211は、加振情報指令A1に基づいて、図3に示す第1軸のモータ31に対する加振指令B1を生成する。図4に示すステップ4において、加振指令生成部221は、加振情報指令A2に基づいて、図3に示す第2軸のモータ32に対する加振指令B2を生成する。図4に示すステップ4において、加振指令生成部231は、加振情報指令A3に基づいて、図3に示す第3軸のモータ33に対する加振指令B3を生成する。
加振指令B1、B2、B3とは、実際に各モータ31、32、33を駆動させるための指令のことであり、各モータ31、32、33を駆動させる際の電流値に相当する。つまり、加振指令B1、B2、B3とは、各モータ31、32、33を、測定したい周波数帯域に応じた周波数で駆動させるトルク指令である。各モータ制御装置21、22、23は、加振指令B1、B2、B3を、その周期を変更しながら出力する。
なお、以下において、加振指令B1、B2、B3に従って各モータ31、32、33が駆動することにより、各可動部81、82、83が動作することを、加振とする。また、モータ駆動システムが制御する負荷機械についての、加振時における動作のことを、加振動作とする。
図4に示すステップ4において、各モータ制御装置21、22、23は、加振情報指令A1、A2、A3が持つ設定情報に基づいて、図5-(a)に示す測定順序のポイント1における加振指令B1、B2、B3を生成する。加振指令B1、B2、B3は、例えば、図5に示すポイント1における各軸の加振条件の情報を持つ。
図4に示すステップ5において、第1軸の加振指令生成部211は、加振情報指令A1が持つ設定情報に基づいて、加振を開始する時間に加振指令B1をモータ31に送信する。第2軸の加振指令生成部221は、加振情報指令A2が持つ設定情報に基づいて、加振を開始する時間に加振指令B2をモータ32に送信する。第3軸の加振指令生成部231は、加振情報指令A3が持つ設定情報に基づいて、加振を開始する時間に加振指令B3をモータ33に送信する。
図5-(a)に示す測定順序のポイント1において、第1軸のモータ33は、加振指令B1に従って、図5-(b)に示すように振幅20%でX軸の負方向に駆動する。第2軸のモータ31は、加振指令B2に従って、図5-(b)に示すように振幅30%でY軸の正方向に駆動する。第3軸のモータ32は、加振指令B3に従って、図5-(b)に示すように振幅30%でY軸の正方向に駆動する。これにより、図5-(a)に示すように、伝達機構71、72、73を介して、各可動部81、82、83が加振される。
図4に示すステップ5において、各モータ31、32、33は、加振指令B1、B2、B3に従って動作する。図5-(a)に示す測定順序のポイント1において、モータ32及びモータ33は、Y軸の正方向へ同期して動作するとともに、モータ31は、X軸の負方向へ同期して動作する。このように、各モータ31、32、33は、加振開始時間に受信した加振指令B1、B2、B3に基づいて、同期した動作を行う。
また、図4に示すステップ5において、加振指令生成部211は、図3に示すように、生成した加振指令B1をデータ測定部212へ送信する。図4に示すステップ5において、加振指令生成部221は、図3に示すように、生成した加振指令B2をデータ測定部222へ送信する。図4に示すステップ5において、加振指令生成部231は、図3に示すように、生成した加振指令B3をデータ測定部232へ送信する。
図4に示すステップ5において、データ測定部212は、加振指令生成部211から送信された加振指令B1を記憶する。データ測定部222は、加振指令生成部221から送信された加振指令B2を記憶する。データ測定部232は、加振指令生成部231から送信された加振指令B3を記憶する。
そして、図4に示すステップ6において、各可動部81、82、83が加振される時、各検出器41、42、43は、各モータ31、32、33についての速度を検出する。図4に示すステップ6において、第1軸の検出器41は、図3に示すように、加振動作時に検出した速度を検出器データC1としてデータ測定部212へ送信する。図4に示すステップ6において、第2軸の検出器42は、図3に示すように、加振動作時に検出した速度を検出器データC2としてデータ測定部222へ送信する。図4に示すステップ6において、第3軸の検出器43は、図3に示すように、加振動作時に検出した速度を検出器データC3としてデータ測定部232へ送信する。
図4に示すステップ6において、データ測定部212は、検出器41から送信された検出器データC1を記憶する。データ測定部222は、検出器42から送信された検出器データC2を記憶する。データ測定部232は、検出器43から送信された検出器データC3を記憶する。
図4に示すステップ7において、データ測定部212は、図3に示すように、記憶している検出器データC1及び加振指令B1をまとめて、同時に上位コントローラ1へ送信する。図4に示すステップ7において、データ測定部222は、図3に示すように、記憶している検出器データC2及び加振指令B2をまとめて、同時に上位コントローラ1へ送信する。図4に示すステップ7において、データ測定部232は、図3に示すように、記憶している検出器データC3及び加振指令B3をまとめて、同時に上位コントローラ1へ送信する。
図6は、実施の形態1に係る周波数特性の測定におけるポイント2を示す図である。図6-(a)は、ポイント2における各可動部81、82、83の測定位置を示している。ポイント2において、各可動部81、82、83の測定位置は、図6-(a)に示すように第1軸がX2、第2軸がY1、第3軸がY1である。
上位コントローラ1は、図4に示すステップ1において入力されたポイント2の設定位置情報をもとに、各モータ制御装置21、22、23に対して指令を送信する。この指令に基づいて、各モータ制御装置21、22、23は、各モータ31、32、33を駆動させる。これにより、モータ制御システムは、各可動部81、82、83を、図6-(a)に示すポイント2の測定位置へと移動させる。
図6-(b)は、測定順序のポイント2における設定情報を示す図である。加振情報指令A1は、図6-(b)に示す第1軸に係る設定情報を持つ。加振情報指令A2は、図6-(b)に示す第2軸に係る設定情報を持つ。加振情報指令A3は、図6-(b)に示す第3軸に係る設定情報を持つ。ポイント2では、図6-(b)に示す設定情報に係る周波数特性を測定する。ポイント2において、図4のフローチャートのステップ2からステップ7までの動作は、ポイント1の時と同様である。
以後、図7から図13に示すポイント3からポイント9の各測定順序について、モータ制御システムは、ポイント1の時と同様に、図4に示すステップ2からステップ7までそれぞれ動作する。
図4に示すステップ8において、上位コントローラ1は、図3に示すように、取得した検出器データC1、C2、C3及び加振指令B1、B2、B3に基づいて、周波数特性を算出する。上位コントローラ1は、図5に示すポイント1において取得した検出器データC1、C2、C3及び加振指令B1、B2、B3をもとに、ポイント1における周波数特性を算出する。
なお、周波数特性を算出する際、上位コントローラ1は、図5のポイント1についての設定情報に基づいて、算出した周波数特性の結果に、ポイント1における各可動部81、82、83の設定位置情報を付与する。図14は、ポイント1における周波数特性の算出結果を示す図である。上位コントローラ1は、図5のポイント1についての設定情報に基づいて、図14に示すような、ポイント1における各可動部81、82、83の設定位置情報を持った算出結果を生成する。
図4に示すステップ8において、上位コントローラ1は、図6に示すポイント2において取得した検出器データC1、C2、C3及び加振指令B1、B2、B3をもとに、ポイント2における周波数特性を算出する。上位コントローラ1は、図6のポイント2についての設定情報に基づいて、ポイント2における各可動部81、82、83の設定位置情報を持った算出結果を生成する。
図4に示すステップ8において、上位コントローラ1は、図7から図13に示すポイント3からポイント9において取得した検出器データC1、C2、C3及び加振指令B1、B2、B3についても、同様に周波数特性を算出する。上位コントローラ1は、図7から図13のポイント3からポイント9についての設定情報に基づいて、ポイント3からポイント9における各可動部81、82、83の設定位置情報を持った算出結果を生成する。
また、図4に示すステップ8において、上位コントローラ1は、ポイント1からポイント9までの周波数特性の算出後、各測定順序に従って、各可動部81、82、83の設定位置情報を含んだ算出結果を表示する。例えば、上位コントローラ1は、ポイント1について、図14に示すような、各可動部81、82、83の設定位置情報を持った算出結果を表示する。
以上の説明のとおり、実施の形態1に係るモータ制御システムは、上位コントローラ1が、加振情報指令A1、A2、A3を軸毎に生成し、各モータ制装置21、22、23へ送信する。また、各モータ制装置21、22、23は、加振情報指令A1、A2、A3に基づいて、加振指令B1、B2、B3をそれぞれ生成する。各モータ31、32、33は、加振指令B1、B2、B3に従い、実際に駆動する。つまり、実施の形態1に係るモータ制御システムは、各モータ31、32、33を駆動させるための指令を、上位コントローラ1とモータ制御装置21、22、23とで分担して生成する。これにより、実施の形態1に係るモータ制御システムは、複数のモータを駆動して制御する負荷機械について、精度の高い周波数特性の測定を行うことができる。
実施の形態1に係るモータ制御システムは、複数のモータを駆動して制御する負荷機械について、周波数特性を測定することにより、負荷機械についてのボード線図を作成することができる。作成したボード線図から、ユーザは、負荷機械の共振周波数を把握できる。そして、ユーザが、共振周波数に基づき、共振周波数に対して最適なフィルタ値を設定することができる。よって、本実施の形態1のモータ制御システムは、複数のモータを駆動して制御する負荷機械について、共振周波数における発振または騒音等を防止でき、安定した動作を実現できる。
また、実施の形態1に係るモータ制御システムは、制御する負荷機械の構成及び各軸の条件に合った適切な加振情報指令A1、A2、A3を設定できる。具体的には、複数のモータが連結された多軸構成のモータ制御システムにおいて、負荷機械全体の周波数特性の測定を、多軸全軸について容易に実行することができる。よって、実施の形態1に係るモータ制御システムは、精度の高い周波数特性の測定を行うことができる。
なお、特許文献1のモータ制御装置において、各モータは、入力された制御信号に従い、各軸の可動部をそれぞれ動作させる。しかし、特許文献1のモータ制御装置は、2つの軸の各モータを、同期して駆動させることはできない。このため、1軸目の加振動作と2軸目の加振動作には、ずれが生じる。1軸目の可動部と2軸目の可動部がずれて動作することにより、1軸目と2軸目の連結部分には、応力等の負荷がかかる。
これに対し、実施の形態1のモータ制御システムは、各モータ制装置21、22、23が、加振情報指令A1、A2、A3に基づいて、加振の開始時刻に同時に加振指令B1、B2、B3を生成する。各モータ31、32、33は、加振指令B1、B2、B3に従って、同期して動作を行う。これにより、図3において、第2軸と第3軸の連結部分である梁5に対し、応力等の負荷がかからない。すなわち、実施の形態1のモータ制御システムは、機械的に連結した部分に対し、応力等の負荷を与えずに周波数特性の測定を行うことができる。
また、実施の形態1に係るモータ制御システムにおいて、上位コントローラ1は、測定した周波数特性について、各測定順序についての設定情報に基づき、各測定順序における各可動部81、82、83の設定位置情報を持った算出結果を生成する。上位コントローラ1は、測定した周波数特性の算出結果を表示する。例えば、上位コントローラ1は、ポイント1について、図14に示すような、各可動部81、82、83の設定位置情報を持った算出結果を表示する。このため、ユーザは、表示された算出結果に含まれる設定位置情報から、どの測定順序についての算出結果であるかを判断することができる。これにより、周波数特性の測定後、ユーザは、収集したデータの判定や識別を容易に行うことできる。
また、実施の形態1に係るモータ制御システムは、各測定順序における設定位置情報を予め上位コントローラ1へ設定した後、自動的に周波数特性を測定する。上位コントローラ1は、測定した周波数特性の結果を表示する。よって、実施の形態1に係るモータ制御システムは、様々な測定位置における周波数特性について、自由なシーケンスで自動的に測定することができる。
なお、周波数特性の測定において、図4に示すステップ2からステップ7までの動作を行った後、次の測定位置へ移動してステップ2からステップ7までの動作を行うこととしたが、これに限るものではない。例えば、上位コントローラ1は、図4に示すステップ2において、ポイント1からポイント9の各測定順序についての加振情報指令A1、A2、A3を生成し、図4に示すステップ3において、各モータ制御装置21、22、23へ一度に送信する構成としてもよい。この場合、各モータ制御装置21、22、23は、ポイント1からポイント9の各測定順序についての設定情報を記憶しておき、測定順序毎に使用する。
実施の形態2
次に、実施の形態2に係るモータ制御システムについて説明する。実施の形態1と同一または同等の手段に関しては、同一の名称と符号とを用いて説明を省略する。
図15は、実施の形態2に係るモータ制御システムにおける周波数特性の測定を示す図である。図15において、上位コントローラ1は、第2軸のモータ32、第3軸のモータ33を駆動させ、かつ、第1軸のモータ31を固定するように指令する加振情報指令A1、A2、A3を生成する。
図16は、実施の形態2に係る周波数特性の測定において、測定順序のポイントaにおける設定情報を示す図である。図16において、第1軸のモータ31に対する加振条件の振幅は、0%である。これは、第1軸のモータ31を駆動させないことを示している。
なお、振幅の0%が指令された第1軸の可動部81は、固定された状態となる。言い換えると、振幅の0%が指令された第1軸のモータ31は、可動部81が、設定位置情報により指令された位置にとどまるよう、動作する。このため、図15において、第2軸の可動部82または第3軸の可動部83が加振された時、第1軸のモータ31は、可動部81が、図16に示すポイントaの設定位置情報であるX2にとどまるよう、動作する。
また、加振情報指令A1、A2、A3には、実施の形態1で説明したように、加振開始時間の情報が含まれる。上位コントローラ1は、このような加振情報指令A1、A2、A3を生成し、各モータ制御装置21、22、23へ送信する。
図15に示すように、モータ制御装置22、23は、加振情報指令A2、A3に従い、各軸のモータ32、33を駆動させるための加振指令B2、B3を生成し、モータ32、33へ送信する。このとき、モータ制御装置22、23は、加振情報指令A2、A3に含まれる加振開始時間の情報をもとに、加振開始時間に同時に加振指令B2、B3を生成する。
モータ制御装置21は、加振情報指令A1に従い、第1軸のモータ31を固定するような加振指令B1を生成する。モータ制御装置21は、加振情報指令A1に含まれる加振開始時間の情報をもとに、加振開始時間と同時に加振指令B1をモータ31に送信する。
第2軸のモータ32、第3軸のモータ33は、加振指令B2、B3に従い加振される。このとき、モータ32、33は、加振指令B2、B3に従って同時に加振を開始する。このため、モータ32、33は、同期した動作を行う。
第1軸のモータ31は、加振指令B1に従い固定されている。このため、第2軸の検出器42において検出される検出器データC2は、第3軸における加振の影響を含まない。第3軸の検出器43において検出される検出器データC3は、第2軸における加振の影響を含まない。つまり、各軸の加振の影響を分離したデータを検出することができる。検出した検出器データC2、C3を上位コントローラ1で分析することで、各軸の加振の影響を分離した周波数特性を測定することができる。
また、第1軸の検出器41において、データを検出してもよい。第1軸のモータ31は、駆動するよう指令されていない。しかし、第1軸の検出器41において検出される検出器データC1は、第2軸、第3軸における加振の影響を含む。つまり、各軸間の干渉を含めたデータを検出することができる。検出した検出器データC1を上位コントローラ1で分析することで、各軸間の干渉を含めた周波数特性を測定することができる。
このように、実施の形態2に係るモータ制御システムは、軸毎に加振情報指令A1、A2、A3を個別に設定できる構成のため、各軸のモータ31、32、33に対して同期して駆動または固定するように指令することで、各軸における加振の影響を分離した周波数特性を測定することができる。
また、実施の形態1で説明したとおり、上位コントローラ1は、制御する負荷機械について、周波数特性を測定する。もし、負荷機械が1軸だけを持つ場合、上位コントローラ1は、その軸に関する伝達関数を求め、周波数特性を算出する。この算出結果に従い、ユーザは、共振周波数に対するフィルタの設定等、モータ制御システムの調整を行う。
しかし、負荷機械が複数の軸を持つ場合、上位コントローラ1は、その負荷機械に関する多軸伝達関数を求める必要がある。この多軸伝達関数は、複雑であり、容易に求めることはできない。また、複数の軸を持つ負荷機械について上記の調整を行う場合、軸間の干渉等を考慮する必要がある。このため、ユーザは、1軸のみを持つ負荷機械の場合と同様に調整することはできない。
しかし、実施の形態2に係るモータ制御システムは、多軸間の組み合わせの影響を考慮して、軸毎に加振情報指令A1、A2、A3を個別に設定できる。このため、各軸間の干渉を考慮した検出器データC1、C2、C3及び加振指令B1、B2、B3を取得できる。これらをもとに、上位コントローラ1は、多軸伝達関数を近似的に求めることができる。つまり、実施の形態2に係るモータ制御システムは、複数の軸を持つ負荷機械について、軸間の干渉の影響を含んだ周波数特性を測定することができる。このため、ユーザは、モータ制御システムが制御する負荷機械について、軸間の干渉の影響を考慮して、共振周波数に対するフィルタを設定することができる。また、このモータ制御システムの調整について、ゲイン余裕、位相余裕等を考慮した調整を行うにあたり、軸間の干渉の影響を含めた調整を行うことができる。
実施の形態3
次に、実施の形態3に係るモータ制御システムについて説明する。実施の形態1または実施の形態2と同一または同等の手段に関しては、同一の名称と符号とを用いて説明を省略する。
図17は、実施の形態3に係るモータ制御システムにおける周波数特性の測定を示す図である。実施の形態3においては、図17に示すように、上位コントローラ1には、周辺ツール9を接続する。周波数特性を測定する際、ユーザは、周辺ツール9に対し、実施の形態1と同様の設定情報を設定する。また、ユーザは、周辺ツール9に対し、周波数特性の測定の開始を指示する。これにより、モータ制御システムは、周波数特性の測定を開始する。
周辺ツール9は、設定情報を上位コントローラ1へ送信する。上位コントローラ1は、設定情報に基づいて、加振情報指令A1、A2、A3を生成する。上位コントローラ1は、生成した加振情報指令A1、A2、A3を、各モータ制御装置21、22、23へ送信する。その後の動作は、実施の形態1または実施の形態2と同様である。
また、上位コントローラ1は、取得した検出器データC1、C2、C3及び加振指令B1、B2、B3から、周波数特性の算出を行う。上位コントローラ1は、この算出結果を周辺ツール9に送信する。周辺ツール9は、算出結果を表示する。例えば、周辺ツール9は、ポイント1について、図14に示すような、各可動部81、82、83の設定位置情報を持った算出結果を表示する。
なお、上位コントローラ1は、取得した検出器データC1、C2、C3及び加振指令B1、B2、B3を周辺ツール9へ送信するようにしてもよい。この場合、周辺ツール9は、取得した検出器データC1、C2、C3及び加振指令B1、B2、B3から周波数特性の算出を実施する。それから周辺ツール9は、算出結果を表示する。例えば、周辺ツール9は、ポイント1について、図14に示すような、各可動部81、82、83の設定位置情報を持った算出結果を表示する。
実施の形態3において、周辺ツール9は、例えば、市販のPCを使用してもよい。この場合、加振情報指令A1、A2、A3の入力操作及び周波数特性の算出結果の表示において、視認性、操作性が向上する。よって、容易に周波数特性の測定を行うことができる。
なお、実施の形態1から実施の形態3において、モータ制御システムは、モータ制御装置21、22、23、軸加振指令生成部211、212、213、データ測定部221、222、223、モータ31、32、33、検出器41、42、43、伝達機構71、72、73、可動部81、82、83を備える3軸構成の例について示した。しかし、実施の形態1から実施の形態3におけるモータ制御システムは、これに限るものではない。モータ制御システムが制御する負荷機械は、例えば、2軸または4軸以上を持つような構成としても良い。