(57)【特許請求の範囲】
【請求項１】
複数の軸のそれぞれと対応付けられている複数のサーボモータを同期制御する多軸制御システムであって、
それぞれが複数の前記サーボモータの中の１つ以上を駆動する複数のサーボアンプと、
複数の前記サーボアンプを制御するコントローラと、
を備え、
前記サーボアンプは、
エンジニアリングツールから取得した、前記サーボモータの制御で使用する動作パラメータを記憶するパラメータ記憶部と、
複数の前記サーボモータのうち駆動対象の前記サーボモータを前記パラメータ記憶部が記憶している前記動作パラメータに従って制御するモータ制御部と、
を備え、
前記コントローラは、複数の前記サーボアンプのそれぞれと、予め定められた周期で繰り返し通信を行う定周期通信を行い、前記同期制御の対象のサーボモータを駆動する複数のサーボアンプに対して、前記パラメータ記憶部が記憶している動作パラメータに従った動作の開始を前記定周期通信の同一周期で同時に指示する、
ことを特徴とする多軸制御システム。
【請求項２】
複数の軸のそれぞれと対応付けられている複数のサーボモータを同期制御する多軸制御システムであって、
それぞれが複数の前記サーボモータの中の１つ以上を駆動する複数のサーボアンプと、
複数の前記サーボアンプを制御するコントローラと、
を備え、
前記サーボアンプは、
エンジニアリングツールから取得した、前記サーボモータの制御で使用する動作パラメータを記憶するパラメータ記憶部と、
複数の前記サーボモータのうち駆動対象の前記サーボモータを前記パラメータ記憶部が記憶している前記動作パラメータに従って制御するモータ制御部と、
を備え、
前記サーボアンプは、前記動作パラメータに従い駆動対象のサーボモータを制御する動作の開始時刻を示す開始時刻情報を前記エンジニアリングツールから取得して前記パラメータ記憶部で記憶し、
前記モータ制御部は、前記開始時刻になると、前記駆動対象のサーボモータを前記動作パラメータに従って制御する動作を開始する、
ことを特徴とする多軸制御システム。
【請求項３】
前記サーボアンプは、前記エンジニアリングツールから測定開始条件を取得し、前記測定開始条件を満たした場合に、制御対象のサーボモータの測定を行うことを特徴とする請求項１または２に記載の多軸制御システム。
【請求項４】
前記サーボアンプは、前記エンジニアリングツールから測定開始条件を取得し、前記駆動対象のサーボモータの制御を開始後、前記測定開始条件を満たした場合に、前記測定開始条件を満たしていることを前記コントローラに通知し、
前記コントローラは、前記測定開始条件に含まれるサーボモータを駆動する複数のサーボアンプから前記通知を受けると、測定対象となるサーボモータを駆動する複数のサーボアンプに対してサーボモータの測定開始を指示する、
ことを特徴とする請求項１に記載の多軸制御システム。
【請求項５】
前記サーボアンプは、前記動作パラメータに従ってサーボモータの試運転を行うことを特徴とする請求項１または２に記載の多軸制御システム。
【請求項６】
前記サーボアンプは、前記動作パラメータに従ってサーボモータの位置決め動作を行うことを特徴とする請求項１または２に記載の多軸制御システム。
【請求項７】
複数の前記サーボアンプの各々は、
前記サーボモータを駆動する動作で使用中の前記動作パラメータである第１の動作パラメータを記憶する第１の記憶部と、
前記サーボモータを駆動する動作での使用を開始する前の前記動作パラメータである第２の動作パラメータを記憶する第２の記憶部と、
を備え、
前記コントローラからの指示に従い、前記第２の記憶部が記憶している前記第２の動作パラメータの使用を開始する、
ことを特徴とする請求項１から６のいずれか一つに記載の多軸制御システム。
【請求項８】
複数の軸のそれぞれと対応付けられている複数のサーボモータを同期制御する多軸制御システムであって、
それぞれが複数の前記サーボモータの中の１つ以上を駆動する複数のサーボアンプと、
複数の前記サーボアンプを制御するコントローラと、
を備え、
前記サーボアンプは、
エンジニアリングツールから取得した制御で使用する動作パラメータを記憶するパラメータ記憶部と、
複数の前記サーボモータのうち駆動対象の前記サーボモータを前記パラメータ記憶部が記憶している前記動作パラメータに従って制御するモータ制御部と、
を備え、
前記コントローラは、前記同期制御の対象のサーボモータを駆動する複数のサーボアンプに対して動作開始の指示を同時に行い、
前記サーボアンプは、前記コントローラから前記指示を受けると、前記動作パラメータに従って、制御対象のサーボモータの測定、サーボモータの試運転、または、サーボモータの位置決め動作を行うことを特徴とする多軸制御システム。
【請求項９】
複数の軸のそれぞれと対応付けられている複数のサーボモータを同期制御する多軸制御システムであって、
それぞれが複数の前記サーボモータの中の１つ以上を駆動する複数のサーボアンプと、
複数の前記サーボアンプを制御するコントローラと、
を備え、
前記サーボアンプは、
エンジニアリングツールから取得した制御で使用する動作パラメータを記憶するパラメータ記憶部と、
複数の前記サーボモータのうち駆動対象の前記サーボモータを前記パラメータ記憶部が記憶している前記動作パラメータに従って制御するモータ制御部と、
を備え、
前記サーボアンプは、前記エンジニアリングツールから測定開始条件を取得し、前記駆動対象のサーボモータの制御を開始後、前記測定開始条件を満たした場合に、前記測定開始条件を満たしていることを前記コントローラに通知し、
前記コントローラは、前記測定開始条件に含まれるサーボモータを駆動する複数のサーボアンプから前記通知を受けると、測定対象となるサーボモータを駆動する複数のサーボアンプに対してサーボモータの測定開始を指示する、
ことを特徴とする多軸制御システム。
【請求項１０】
複数の軸のそれぞれと対応付けられている複数のサーボモータを同期制御する多軸制御システムであって、
それぞれが複数の前記サーボモータの中の１つ以上を駆動する複数のサーボアンプと、
複数の前記サーボアンプを制御するコントローラと、
を備え、
複数の前記サーボアンプの各々は、
前記サーボモータを駆動する動作で使用中の前記サーボモータの制御で使用する動作パラメータを記憶する第１の記憶部と、
前記サーボモータを駆動する動作での使用を開始する前の前記サーボモータの制御で使用する動作パラメータを記憶する第２の記憶部と、
を備え、
前記コントローラは、複数の前記サーボアンプに対して、駆動対象の前記サーボモータの制御で使用する動作パラメータの変更を同時に指示し、
複数の前記サーボアンプの各々は、前記コントローラから前記指示を受けると、前記第２の記憶部が記憶している動作パラメータの使用を開始する、
ことを特徴とする多軸制御システム。
【請求項１１】
それぞれが複数のサーボモータの中の１つ以上を駆動する複数のサーボアンプと、複数の前記サーボアンプを制御するコントローラと、を備える多軸制御システムにおいて、複数の軸のそれぞれと対応付けられている複数の前記サーボモータを同期制御する多軸制御方法であって、
前記サーボアンプが、エンジニアリングツールから前記サーボモータの制御で使用する動作パラメータを取得する第１のステップと、
前記サーボアンプが、複数の前記サーボモータのうち駆動対象のサーボモータを前記第１のステップで取得した動作パラメータに従って制御する第２のステップと、
前記コントローラが、複数の前記サーボアンプのそれぞれと、予め定められた周期で繰り返し通信を行う定周期通信を行い、前記同期制御の対象のサーボモータを駆動する複数のサーボアンプに対して、前記動作パラメータに従った動作の開始を前記定周期通信の同一周期で同時に指示する第３のステップと、
を含むことを特徴とする多軸制御方法。
【請求項１２】
それぞれが複数のサーボモータの中の１つ以上を駆動する複数のサーボアンプと、複数の前記サーボアンプを制御するコントローラと、を備える多軸制御システムにおいて、複数の軸のそれぞれと対応付けられている複数の前記サーボモータを同期制御する多軸制御方法であって、
前記サーボアンプが、エンジニアリングツールから前記サーボモータの制御で使用する動作パラメータを取得する第１のステップと、
前記サーボアンプが、複数の前記サーボモータのうち駆動対象のサーボモータを前記第１のステップで取得した動作パラメータに従って制御する第２のステップと、
前記サーボアンプが、前記動作パラメータに従い駆動対象のサーボモータを制御する動作の開始時刻を示す開始時刻情報を前記エンジニアリングツールから取得する第３のステップと、
前記サーボアンプが、前記第３のステップで取得した開始時刻情報が示す開始時刻になると、前記駆動対象のサーボモータを前記動作パラメータに従って制御する動作を開始する第４のステップと、
を含むことを特徴とする多軸制御方法。
【請求項１３】
それぞれが複数のサーボモータの中の１つ以上を駆動する複数のサーボアンプと、複数の前記サーボアンプを制御するコントローラと、を備える多軸制御システムにおいて、複数の軸のそれぞれと対応付けられている複数の前記サーボモータを同期制御する多軸制御方法であって、
前記サーボアンプが、エンジニアリングツールから前記サーボモータの制御で使用する動作パラメータを取得する第１のステップと、
前記コントローラが、前記同期制御の対象のサーボモータを駆動する複数のサーボアンプに対して、前記第１のステップで取得した動作パラメータに従った動作の開始を同時に指示する第２のステップと、
前記コントローラから前記指示を受けた前記サーボアンプが、複数の前記サーボモータのうち駆動対象のサーボモータを前記動作パラメータに従って制御する第３のステップと、
を含み、
前記第３のステップでは、前記動作パラメータに従って、制御対象のサーボモータの測定、サーボモータの試運転、または、サーボモータの位置決め動作を行う、
ことを特徴とする多軸制御方法。
【請求項１４】
それぞれが複数のサーボモータの中の１つ以上を駆動する複数のサーボアンプと、複数の前記サーボアンプを制御するコントローラと、を備える多軸制御システムにおいて、複数の軸のそれぞれと対応付けられている複数の前記サーボモータを同期制御する多軸制御方法であって、
前記サーボアンプが、エンジニアリングツールから前記サーボモータの制御で使用する動作パラメータを取得する第１のステップと、
前記サーボアンプが、前記エンジニアリングツールから、サーボモータの測定開始条件を取得する取得する第２のステップと、
前記サーボアンプが、複数の前記サーボモータのうち駆動対象のサーボモータを前記第１のステップで取得した動作パラメータに従って制御する第３のステップと、
前記サーボアンプが、前記駆動対象のサーボモータの制御を開始後、前記測定開始条件を満たした場合に、前記測定開始条件を満たしていることを前記コントローラに通知する第４のステップと、
前記コントローラが、前記測定開始条件に含まれるサーボモータを駆動する複数のサーボアンプから前記通知を受けると、測定対象となるサーボモータを駆動する複数のサーボアンプに対してサーボモータの測定開始を指示する第５のステップと、
を含むことを特徴とする多軸制御方法。
【請求項１５】
それぞれが複数のサーボモータの中の１つ以上を駆動する複数のサーボアンプと、複数の前記サーボアンプを制御するコントローラと、を備える多軸制御システムにおいて、複数の軸のそれぞれと対応付けられている複数の前記サーボモータを同期制御する多軸制御方法であって、
前記サーボアンプが、エンジニアリングツールから前記サーボモータの制御で使用する動作パラメータを取得する第１のステップと、
前記サーボアンプが、複数の前記サーボモータのうち駆動対象のサーボモータを前記第１のステップで取得した動作パラメータに従って制御する第２のステップと、
前記サーボアンプが、前記サーボモータを駆動する動作での使用を開始する前の前記サーボモータの制御で使用する動作パラメータを前記エンジニアリングツールから取得する第３のステップと、
前記コントローラが、複数の前記サーボアンプに対して、駆動対象の前記サーボモータの制御で使用する動作パラメータの変更を同時に指示する第４のステップと、
前記サーボアンプが、前記コントローラからの前記指示に従い、前記第３のステップで取得した動作パラメータの使用を開始する第５のステップと、
を含むことを特徴とする多軸制御方法。
【請求項１６】
複数の軸のそれぞれと対応付けられている複数のサーボモータを同期制御する多軸制御システムを構成するサーボアンプの処理をコンピュータに実行させる多軸制御プログラムであって、
エンジニアリングツールから前記サーボモータの制御で使用する動作パラメータを取得する第１のステップと、
複数の前記サーボモータのうち駆動対象のサーボモータを前記第１のステップで取得した動作パラメータに従って制御する第２のステップと、
コントローラと予め定められた周期で繰り返し通信を行う定周期通信を行い、前記コントローラが前記同期制御の対象のサーボモータを駆動する複数のサーボアンプに対して行う指示であり、前記動作パラメータに従った動作の開始指示を、前記定周期通信の同一周期で他のサーボアンプと同時に受ける第３のステップと、
を前記コンピュータに実行させることを特徴とする多軸制御プログラム。
【請求項１７】
複数の軸のそれぞれと対応付けられている複数のサーボモータを同期制御する多軸制御システムを構成するサーボアンプの処理をコンピュータに実行させる多軸制御プログラムであって、
エンジニアリングツールから前記サーボモータの制御で使用する動作パラメータを取得する第１のステップと、
複数の前記サーボモータのうち駆動対象のサーボモータを前記第１のステップで取得した動作パラメータに従って制御する第２のステップと、
前記動作パラメータに従い駆動対象のサーボモータを制御する動作の開始時刻を示す開始時刻情報を前記エンジニアリングツールから取得する第３のステップと、
前記第３のステップで取得した開始時刻情報が示す開始時刻になると、前記駆動対象のサーボモータを前記動作パラメータに従って制御する動作を開始する第４のステップと、
を前記コンピュータに実行させることを特徴とする多軸制御プログラム。
【請求項１８】
複数の軸のそれぞれと対応付けられている複数のサーボモータを同期制御する多軸制御システムを構成するサーボアンプの処理をコンピュータに実行させる多軸制御プログラムであって、
エンジニアリングツールから前記サーボモータの制御で使用する動作パラメータを取得する第１のステップと、
コントローラが前記同期制御の対象のサーボモータを駆動する複数のサーボアンプに対して行う指示であり、前記動作パラメータに従った動作の開始指示を、他のサーボアンプと同時に受ける第２のステップと、
前記開始指示を受けた場合に、複数の前記サーボモータのうち駆動対象のサーボモータを前記第１のステップで取得した動作パラメータに従って制御し、制御対象のサーボモータの測定、サーボモータの試運転、または、サーボモータの位置決め動作を行う第３のステップと、
を前記コンピュータに実行させることを特徴とする多軸制御プログラム。
【請求項１９】
複数の軸のそれぞれと対応付けられている複数のサーボモータを同期制御する多軸制御システムを構成するサーボアンプの処理をコンピュータに実行させる多軸制御プログラムであって、
エンジニアリングツールから、サーボモータの制御で使用する動作パラメータを取得する第１のステップと、
前記エンジニアリングツールから、サーボモータの測定開始条件を取得する第２のステップと、
複数の前記サーボモータのうち駆動対象のサーボモータを前記第１のステップで取得した動作パラメータに従って制御する第３のステップと、
前記駆動対象のサーボモータの制御を開始後、前記測定開始条件を満たした場合に、前記測定開始条件を満たしていることをコントローラに通知する第４のステップと、
前記測定開始条件に含まれるサーボモータを駆動する複数のサーボアンプから前記測定開始条件を満たしていることの通知を受けた前記コントローラから、サーボモータの測定開始指示を受ける第５のステップと、
を前記コンピュータに実行させることを特徴とする多軸制御プログラム。
【請求項２０】
複数の軸のそれぞれと対応付けられている複数のサーボモータを同期制御する多軸制御システムを構成するサーボアンプの処理をコンピュータに実行させる多軸制御プログラムであって、
エンジニアリングツールから前記サーボモータの制御で使用する動作パラメータを取得する第１のステップと、
複数の前記サーボモータのうち駆動対象のサーボモータを前記第１のステップで取得した動作パラメータに従って制御する第２のステップと、
前記サーボモータを駆動する動作での使用を開始する前の前記サーボモータの制御で使用する動作パラメータを前記エンジニアリングツールから取得する第３のステップと、
駆動対象の前記サーボモータの制御で使用する動作パラメータの変更指示を、他のサーボアンプと同時にコントローラから受ける第４のステップと、
前記変更指示を受けた場合に、前記第３のステップで取得した動作パラメータの使用を開始する第５のステップと、
を前記コンピュータに実行させることを特徴とする多軸制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のサーボアンプおよびコントローラから成る多軸制御システム、多軸制御方法および多軸制御プログラムに関する。
【背景技術】
【０００２】
半導体製造装置および工作機械装置といった産業用途の装置では、複数のモータを組み合わせた多軸制御システムが使用されている。多軸制御システムの例は、ガントリ機構、多関節ロボットなどである。【０００３】
多軸制御システムは、各軸が制御する物体の位置によって負荷が変動する。例として、Ｘ軸、Ｙ軸およびＺ軸が互いに直交するものとし、Ｘ軸方向に移動可能なＸ＿１軸およびＸ＿２軸、Ｙ軸方向に移動可能なＹ軸、Ｚ軸方向に移動可能なＺ軸からなるガントリ機構を考える。このガントリ機構では、Ｘ＿１軸およびＸ＿２軸は同一動作を行う必要がある。しかしながら、Ｚ軸の機構がＹ軸上でＸ＿１軸に寄っていた場合、Ｚ軸の機構がＸ＿１軸に影響を大きく与えるため、Ｘ＿１軸に掛かる負荷がＸ＿２軸に比べると大きい。また各々軸を運転する毎に負荷は変動する。【０００４】
特許文献１には、モータを駆動する複数の下位コントローラと、下位コントローラを制御する上位コントローラとを備え、下位コントローラは予め設定された駆動内容に基づいてモータを駆動する構成の駆動系システムが記載されている。特許文献１に記載の駆動系システムでは、上位コントローラの指示によって下位コントローラがモータを駆動し、移動内容等を測定することが可能である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−３４７４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述したように、多軸制御システムは、各機構がどの位置にあるかで各軸に掛かる負荷が変動する。そのため、同時に複数のモータを駆動したり、同時に測定を行ったりすることで各軸間の影響を考慮しながら制御パラメータの設定を行う必要がある。そしてその際には、多軸制御システムは、複数のモータの動作を同期させる同期制御を行う必要がある。ただし、単一のコントローラで同期制御を実現する場合、制御可能なモータの数がコントローラの性能に依存するため、制御対象のモータの数を増加させることが難しいという問題がある。【０００７】
本発明は、上記に鑑みてなされたものであって、システム全体の動作を制御するコントローラの負荷が増加するのを抑制しつつ同期制御の対象のモータの数を増加させることが可能な多軸制御システムを得ることを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、複数の軸のそれぞれと対応付けられている複数のサーボモータを同期制御する多軸制御システムであって、それぞれが複数のサーボモータの中の１つ以上を駆動する複数のサーボアンプと、複数のサーボアンプを制御するコントローラと、を備える。サーボアンプは、エンジニアリングツールから取得した、サーボモータの制御で使用する動作パラメータを記憶するパラメータ記憶部と、複数のサーボモータのうち駆動対象のサーボモータをパラメータ記憶部が記憶している動作パラメータに従って制御するモータ制御部と、を備える。コントローラは、複数のサーボアンプのそれぞれと、予め定められた周期で繰り返し通信を行う定周期通信を行い、同期制御の対象のサーボモータを駆動する複数のサーボアンプに対して、パラメータ記憶部が記憶している動作パラメータに従った動作の開始を定周期通信の同一周期で同時に指示する。
【発明の効果】
【０００９】
本発明にかかる多軸制御システムは、コントローラの負荷が増加するのを抑制しつつ同期制御の対象のサーボモータの数を増加させることができる、という効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】実施の形態１にかかる多軸制御システムの構成例を示す図
【図２】実施の形態１にかかる多軸制御システムが有する機械構成の一例を示す図
【図３】実施の形態１にかかるコントローラの構成例を示す図
【図４】実施の形態１にかかるサーボアンプの構成例を示す図
【図５】実施の形態１にかかるエンジニアリングツールの構成例を示す図
【図６】実施の形態１にかかる多軸制御システムにおいてサーボモータの測定を行う場合のコントローラの動作の一例を示すフローチャート
【図７】エンジニアリングツールが表示部に表示する測定画面の一例を示す図
【図８】エンジニアリングツールが表示部に表示する測定結果の一例を示す図
【図９】実施の形態１にかかる多軸制御システムにおいてサーボモータの測定を行う場合のサーボアンプの動作の一例を示すフローチャート
【図１０】実施の形態１にかかる多軸制御システムにおいてサーボモータの試運転を行う場合のコントローラの動作の一例を示すフローチャート
【図１１】エンジニアリングツールが表示部に表示する試運転画面の一例を示す図
【図１２】実施の形態１にかかる多軸制御システムにおいてサーボモータの試運転を行う場合のサーボアンプの動作の一例を示すフローチャート
【図１３】実施の形態１にかかる多軸制御システムにおいてサーボモータの位置決め動作を行う場合のコントローラの動作の一例を示すフローチャート
【図１４】エンジニアリングツールが表示部に表示する入力受け付け画面の一例を示す図
【図１５】実施の形態１にかかる多軸制御システムにおいてサーボモータの位置決め動作を行う場合のサーボアンプの動作の一例を示すフローチャート
【図１６】実施の形態１にかかる多軸制御システムにおいてサーボアンプが使用する動作パラメータを変更する場合のコントローラの動作の一例を示すフローチャート
【図１７】エンジニアリングツールが表示部に表示する入力受け付け画面の一例を示す図
【図１８】実施の形態１にかかる多軸制御システムにおいてサーボモータの動作パラメータを変更する場合のサーボアンプの動作の一例を示すフローチャート
【図１９】実施の形態２にかかる多軸制御システムにおいてサーボモータの測定を行う場合のコントローラの動作の一例を示すフローチャート
【図２０】実施の形態２にかかる多軸制御システムにおいてサーボモータの測定を行う場合のサーボアンプの動作の一例を示すフローチャート
【図２１】実施の形態１，２にかかる多軸制御システムのコントローラを実現するハードウェアの一例を示す図
【発明を実施するための形態】
【００１１】
以下に、本発明の実施の形態にかかる多軸制御システム、多軸制御方法および多軸制御プログラムを図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１２】
実施の形態１．
図１は、実施の形態１にかかる多軸制御システムの構成例を示す図である。図１に示す多軸制御システム１１は、コントローラ１２と、サーボアンプ１３ａおよび１３ｂと、サーボモータ１４ａ〜１４ｄと、機械要素１５ａ〜１５ｄとを備える。機械要素１５ａ〜１５ｄのそれぞれは、機械を形成する部品の１つであり、サーボモータ１４ａ〜１４ｄにより駆動される。多軸制御システム１１が備えるサーボアンプの数、サーボモータの数および機械要素の数は一例であり図１に示した数に限定するものではない。サーボアンプ、サーボモータおよび機械要素の数は２以上であればよい。これ以降の説明では、サーボアンプ１３ａとサーボアンプ１３ｂとを区別する必要が無い場合、これらをサーボアンプ１３と記載する。同様に、サーボモータ１４ａ〜１４ｄをサーボモータ１４と記載し、機械要素１５ａ〜機械要素１５ｄを機械要素１５と記載する。
【００１３】
コントローラ１２および各サーボアンプ１３は、ネットワーク１８に接続される。ネットワーク１８には、エンジニアリングツール１７を含む端末１６がさらに接続される。端末１６は、パーソナルコンピュータ、タブレット端末などである。エンジニアリングツール１７は、ユーザがコントローラ１２および各サーボアンプ１３に対して各種設定を行う場合に用いられる。また、エンジニアリングツール１７は、ユーザがコントローラ１２および各サーボアンプ１３に対して指示を行う場合にも用いられる。エンジニアリングツール１７は、エンジニアリングツール１７として動作するためのプログラムを端末１６にインストールすることにより実現される。なお、端末１６がコントローラ１２の機能を包含していてもよい。
【００１４】
サーボアンプ１３ａには、サーボモータ１４ａおよび１４ｂが接続される。サーボモータ１４ａにはＸ＿１軸の機械要素１５ａが接続され、サーボモータ１４ｂにはＸ＿２軸の機械要素１５ｂが接続される。サーボアンプ１３ｂには、サーボモータ１４ｃおよび１４ｄが接続される。サーボモータ１４ｃにはＹ軸の機械要素１５ｃが接続され、サーボモータ１４ｄにはＺ軸の機械要素１５ｄが接続される。なお、図１に示した多軸制御システム１１では１台のサーボアンプ１３が２台のサーボモータ１４を駆動する構成としているが、この構成に限定されない。１台のサーボアンプ１３が１台のサーボモータ１４を駆動してもよいし、１台のサーボアンプ１３が３台以上のサーボモータ１４を駆動してもよい。また、各サーボアンプ１３が駆動するサーボモータ１４の数が同じである必要もない。例えば、１台目のサーボアンプ１３が１台のサーボモータ１４を駆動し、２台目のサーボアンプ１３が３台のサーボモータ１４を駆動するといった構成であってもよい。
【００１５】
図１に示した多軸制御システム１１は、各サーボアンプ１３がサーボモータ１４を駆動する際に使用する動作パラメータをエンジニアリングツール１７から取得し、取得した動作パラメータに従い各サーボアンプ１３が個別にサーボモータ１４を駆動して複数のサーボモータの動作を同期させる機能を有する。すなわち、多軸制御システム１１において、各サーボアンプ１３は、コントローラ１２からの指示を受けることなく、エンジニアリングツール１７から取得済みの動作パラメータに従いサーボモータ１４を駆動して同期制御を行う。つまり、多軸制御システム１１は、従来のシステムではシステム全体を制御する制御装置がトップダウン的に行っていたサーボモータの同期制御を、コントローラ１２から各サーボアンプ１４に分散させたものである。動作パラメータについては別途説明する。
【００１６】
多軸制御システム１１において、コントローラ１２は、各サーボアンプ１３と定周期通信を行い、システム全体の動作を制御する。定周期通信では、コントローラ１２と各サーボアンプ１３とがシステムで予め定められた周期で繰り返し通信を行う。
【００１７】
各サーボアンプ１３は、各種動作の動作パラメータをエンジニアリングツール１７から受け取った場合はこれを保持し、動作パラメータに従った動作を行う。動作パラメータに従った動作については別途説明する。
【００１８】
図２は、実施の形態１にかかる多軸制御システム１１が有する機械構成の一例を示す図である。図２に示す多軸制御システム１１は、サーボモータ１４ａとサーボモータ１４ｂとの２軸のサーボモータにより駆動されるＸ軸の機械要素１５ａおよび１５ｂを有する。サーボモータ１４ａにより駆動される軸をＸ＿１軸とし、サーボモータ１４ｂにより駆動される軸をＸ＿２軸とする。また、Ｘ＿１軸とＸ＿２軸は平行である。また、多軸制御システム１１は１軸のサーボモータ１４ｃによって駆動されるＹ軸を有し、Ｙ軸はＸ軸と直交するようにＸ軸に機械的に接続されている。また、多軸制御システム１１は１軸のサーボモータ１４ｄにより駆動されるＺ軸の機械要素を有し、Ｚ軸はＸ軸およびＹ軸と直交するようにＹ軸に機械的に接続されている。ここでは、互いに平行に設けられたＸ＿１軸とＸ＿２軸がガントリ軸となる。すなわち、Ｘ＿１軸とＸ＿２軸とがガントリ機構を構成している。
【００１９】
図３は、実施の形態１にかかるコントローラ１２の構成例を示す図である。コントローラ１２は、各サーボアンプ１３と定周期通信を行う定周期通信部２１と、各サーボアンプ１３を制御するサーボアンプ制御部２２と、各サーボモータ１４を同期制御する際に使用する動作パラメータをエンジニアリングツール１７から取得して保持するパラメータ取得部２３と、エンジニアリングツール１７と任意のタイミングで通信を行う通信部２４とを備える。これらの各部は内部バス２０に接続され、相互に通信が可能である。
【００２０】
図４は、実施の形態１にかかるサーボアンプ１３の構成例を示す図である。サーボアンプ１３は、通信部３１と、測定開始条件判断部３２と、測定処理部３３と、測定データ記憶部３４と、モータ制御部３５と、パラメータ記憶部３６と、パラメータ設定部３７と、時刻管理部３８とを備える。これらの各部は内部バス３０に接続され、相互に通信が可能である。
【００２１】
通信部３１は、コントローラ１２と定周期通信または非定周期通信を行う。非定周期通信は、予め定められた周期で通信を繰り返し行う定周期通信に該当しない通常の通信であり、通信を行うタイミングは決まっておらず、任意のタイミングで行う通信である。測定開始条件判断部３２は、測定処理部３３がデータ測定動作を開始する条件である測定開始条件を満たしたか否かを判断する。測定処理部３３は、測定開始条件を満たした場合にデータ測定処理を行う。データ測定処理の詳細については後述する。測定データ記憶部３４は、測定処理部３３がデータ測定処理を実行して得られる測定データを記憶する。
【００２２】
モータ制御部３５は、試運転処理部３５１および位置決め処理部３５２を含み、サーボアンプ１３に接続されているサーボモータ１４を駆動させる制御を行う。試運転処理部３５１は、多軸制御システム１１が後述する試運転を行う際に、パラメータ記憶部３６が記憶している動作パラメータのうち、試運転に関連する動作パラメータである試運転条件に従ってサーボモータ１４を駆動する。位置決め処理部３５２は、多軸制御システム１１が後述する位置決め動作を行う際に、パラメータ記憶部３６が記憶している動作パラメータのうち、位置決め動作のパラメータに従ってサーボモータ１４を駆動する。
【００２３】
パラメータ記憶部３６は、主記憶部３６１および補助記憶部３６２を含み、エンジニアリングツール１７から取得する同期制御用の動作パラメータを記憶する。主記憶部３６１は、サーボアンプ１３が動作する際に実際に使用される動作パラメータを記憶する。補助記憶部３６２は、主記憶部３６１が動作パラメータを記憶している状態のときに通信部３１が新たな動作パラメータを受信した場合に、受信した新たな動作パラメータを記憶する。なお、主記憶部３６１および補助記憶部３６２への動作パラメータの書き込みはパラメータ設定部３７が行う。
【００２４】
パラメータ設定部３７は、主記憶部３６１が動作パラメータを記憶している状態のときに通信部３１経由でエンジニアリングツール１７から新たな動作パラメータを受け取ると、補助記憶部３６２に書き込む。また、パラメータ設定部３７は、予め定められた条件を満たした場合、補助記憶部３６２から動作パラメータを読み出して主記憶部３６１に書き込む。
【００２５】
時刻管理部３８は、内蔵時計３８１および時刻記憶部３８２を含み、パラメータ記憶部３６が記憶している動作パラメータを使用した動作の開始時刻を管理する。内蔵時計３８１は時刻情報を出力する。時刻管理部３８は、ＮＴＰ（Network  Time  Protocol）等を利用することで、内蔵時計３８１を他のサーボアンプ１３が備える内蔵時計３８１と同期させる。時刻記憶部３８２は、コントローラ１２から動作の開始時刻が通知された場合にこれを記憶する。
【００２６】
図５は、実施の形態１にかかるエンジニアリングツール１７の構成例を示す図である。エンジニアリングツール１７は、コントローラ１２と任意のタイミングで通信を行う通信部７１と、コントローラ１２または各サーボアンプ１３に設定する各種データをユーザから取得するデータ取得部７２と、ユーザから取得した各種データをコントローラ１２または各サーボアンプ１３に設定するデータ設定部７３と、各種データの入力画面、多軸制御システム１１の状態表示画面などを表示する表示部７４とを備える。これらの各部は内部バス７０に接続され、相互に通信が可能である。
【００２７】
つづいて、多軸制御システム１１の動作について、具体例を挙げて説明する。本実施の形態では、サーボモータ１４の測定を行う場合の動作、サーボモータ１４の試運転を行う場合の動作、サーボモータ１４の位置決め動作、サーボアンプ１３が使用する動作パラメータを変更する場合の動作について、図面を参照しながら説明する。各動作の説明では、コントローラ１２の動作とサーボアンプ１３の動作とに分けて説明を行う。
【００２８】
＜サーボモータ１４の測定を行う場合の動作＞
図６は、実施の形態１にかかる多軸制御システム１１においてサーボモータ１４の測定を行う場合のコントローラ１２の動作の一例を示すフローチャートである。なお、図６では、「サーボモータ」を単に「モータ」と記載している。これ以降の説明に用いる図面についても同様であり、「モータ」は「サーボモータ」を意味するものとする。
【００２９】
サーボモータ１４の測定を行う場合、コントローラ１２は、まず、サーボモータ１４の測定条件を動作パラメータとしてエンジニアリングツール１７から取得する（ステップＳ１１）。詳細には、エンジニアリングツール１７がサーボモータ１４の測定条件の入力をユーザから受け付け、入力された測定条件をコントローラ１２へ送信する。すなわち、コントローラ１２は、ステップＳ１１において、エンジニアリングツール１７が送信した測定条件を受信する。ステップＳ１１の処理はパラメータ取得部２３が行う。
【００３０】
エンジニアリングツール１７が測定条件をユーザから取得する方法はどのような方法であってもよい。例えば、エンジニアリングツール１７は、図７に示した測定画面２１０を表示し、測定条件の入力を受け付ける。図７は、エンジニアリングツール１７が表示部７４に表示する測定画面２１０の一例を示す図である。
【００３１】
測定画面２１０は、測定条件の入力をユーザから受け付けるための入力領域２１１を含む。ユーザは、予め定められた操作をエンジニアリングツール１７に対して行って測定画面２１０を表示させ、測定条件の入力領域２１１に測定条件を入力する。図７に示したように、測定条件の例は、測定時間、開始条件、測定対象軸および測定対象データである。図７は、測定条件の入力が完了した後の表示例を示している。エンジニアリングツール１７は、図７に示した測定画面２１０の右上に配置されている「測定開始」ボタンが押下されると、測定条件を示す測定条件データを生成してコントローラ１２へ送信する。具体的には、エンジニアリングツール１７は、「開始条件」が「Ｘ＿１軸速度＞１００ｒ／ｍｉｎ  ＡＮＤ  Ｙ軸速度＞１００ｒ／ｍｉｎ」であることを示し、かつ、「測定対象軸」が「Ｘ＿１軸、Ｘ＿２軸、Ｙ軸」であることを示す測定条件データを生成してコントローラ１２へ送信する。また、このとき、エンジニアリングツール１７は、「測定時間」が「４．０ｓｅｃ」であること、「測定対象データ」が「モータ速度、トルク、速度指令」であることを示す測定データを生成して、「測定対象軸」とされているＸ＿１軸、Ｘ＿２軸およびＹ軸のそれぞれのサーボモータ１４を駆動する各サーボアンプ１３へ送信する。以下の説明では、説明の便宜上、測定条件データを単に測定条件と記載する場合がある。
【００３２】
図６の説明に戻り、コントローラ１２は、測定条件を取得すると、次に、各サーボモータ１４の状態を示す情報を各サーボアンプ１３から取得する（ステップＳ１２）。コントローラ１２が取得する情報は、各サーボアンプ１３から定期的に送信される。各サーボアンプ１３が情報を送信する周期は予め定められており、サーボアンプ１３は、駆動させているサーボモータ１４の状態を示す情報を予め定められた周期で繰り返し送信する。情報を送信する周期は、各サーボアンプ１３とコントローラ１２とが定周期通信を行う周期の整数倍となる。サーボモータ１４の状態を示す情報、すなわち、測定対象軸のサーボモータ１４の状態を示す情報には、測定対象軸の速度である、単位時間あたりの回転数を示す情報が含まれる。コントローラ１２では、サーボアンプ制御部２２がステップＳ１２の処理を行う。なお、これ以降のステップＳ１３〜Ｓ１５の処理についてもサーボアンプ制御部２２が行う。
【００３３】
コントローラ１２は、次に、上述した「開始条件」である測定開始条件を満足するか否かを確認する（ステップＳ１３）。図７に示した例では「Ｘ＿１軸速度＞１００ｒ／ｍｉｎ  ＡＮＤ  Ｙ軸速度＞１００ｒ／ｍｉｎ」とされているため、コントローラ１２は、Ｘ＿１軸の速度が１００ｒ／ｍｉｎを超え、かつ、Ｙ軸の速度が１００ｒ／ｍｉｎを超えた場合、測定開始条件を満足すると判断する。
【００３４】
測定開始条件を満足しない場合（ステップＳ１３：Ｎｏ）、コントローラ１２は、ステップＳ１２に戻って動作を続ける。また、測定開始条件を満足する場合（ステップＳ１３：Ｙｅｓ）、コントローラ１２は、測定対象の各サーボモータ１４を駆動する各サーボアンプ１３に測定開始を指示する（ステップＳ１４）。コントローラ１２は、測定対象の各サーボモータ１４を駆動する各サーボアンプ１３に対して測定開始を同時に指示する。なお、この指示を受けた各サーボアンプ１３は、エンジニアリングツール１７から予め取得している動作パラメータ、具体的には、図７に示す「測定時間」および「測定対象データ」としてユーザが入力した内容を示す動作パラメータに従って測定を行い、測定結果を示す測定データをコントローラ１２へ送信する。
【００３５】
コントローラ１２は、ステップＳ１４を実行して測定開始を指示した後、各サーボアンプ１３から測定データを取得してエンジニアリングツール１７へ出力する（ステップＳ１５）。エンジニアリングツール１７は、コントローラ１２から測定データを受信すると、図７に示した測定画面２１０を更新して測定結果を表示する。エンジニアリングツール１７は、例えば、測定画面２１０の表示を図８に示した内容に更新する。図８は、エンジニアリングツール１７が表示部７４に表示する測定結果の一例を示す図である。
【００３６】
図９は、実施の形態１にかかる多軸制御システム１１においてサーボモータ１４の測定を行う場合のサーボアンプ１３の動作の一例を示すフローチャートである。
【００３７】
サーボアンプ１３は、まず、測定条件を取得する（ステップＳ２１）。このステップＳ２１では、エンジニアリングツール１７から通知されてくる測定条件、具体的には、エンジニアリングツール１７が図７に示す測定画面２１０を表示してユーザから入力を受け付けた「測定時間」および「測定対象データ」の内容を測定条件として取得する。サーボアンプ１３は、次に、取得した測定条件を設定し、サーボモータ１４を駆動する（ステップＳ２２）。ステップＳ２１において測定条件を取得する処理およびステップＳ２２において測定条件を設定する処理はパラメータ設定部３７が行う。また、サーボモータ１４を駆動させる制御はモータ制御部３５が行う。本実施の形態では、モータ制御部３５が、サーボモータ１４の測定を行う場合のサーボモータ１４の速度の情報を予め保持しているものとする。サーボモータ１４の速度とは、単位時間当たりのサーボモータ１４の回転子の回転数である。なお、サーボモータ１４の速度の情報は、モータ制御部３５が、予め保持しておくのではなく、ステップＳ２１で取得する測定条件に含まれるようにしてもよい。ステップＳ２２において、パラメータ設定部３７は、取得した測定条件、具体的には、測定時間および測定対象データのそれぞれを示す情報をパラメータ記憶部３６に書き込むことで、測定条件を設定する。パラメータ設定部３７は、パラメータ記憶部３６の主記憶部３６１または補助記憶部３６２に、測定時間および測定対象データのそれぞれを示す情報を書き込む。測定時間および測定対象データのそれぞれを示す情報はサーボモータ１４の測定を行う動作で用いる動作パラメータである。
【００３８】
サーボアンプ１３は、次に、サーボモータ１４の状態を示す情報を生成してコントローラ１２へ送信する（ステップＳ２３）。サーボモータ１４の状態は、サーボモータ１４が駆動する軸の速度とする。このステップＳ２３の処理は測定処理部３３が行う。
【００３９】
サーボアンプ１３は、次に、コントローラ１２から測定開始の指示を受けたか否かを確認し（ステップＳ２４）、指示を受けていない場合（ステップＳ２４：Ｎｏ）、ステップＳ２３に戻って動作を続ける。
【００４０】
サーボアンプ１３は、測定開始の指示を受けた場合（ステップＳ２４：Ｙｅｓ）、ステップＳ２２で設定した測定条件に従って測定を行い、測定データをコントローラ１２へ送信する（ステップＳ２５）。ステップＳ２４の処理は測定開始条件判断部３２が行う。測定開始条件判断部３２は、測定開始の指示を受けた場合、測定開始条件を満たしたと判断する。また、ステップＳ２５の処理は測定処理部３３が行う。ステップＳ２５において、測定処理部３３は、測定条件で指定された測定時間（本実施の形態では４．０ｓｅｃ）が経過するまで測定を繰り返し、測定を行うごとに得られる測定結果を測定データとして測定データ記憶部３４に格納する。測定処理部３３は、その後、測定データ記憶部３４から測定データを読み出してコントローラ１２へ送信する。なお、ユーザが入力した測定時間が長いために、測定時間での測定で得られる測定データを測定データ記憶部３４が記憶しきれない場合があり得る。この場合、測定処理部３３は、測定データ記憶部３４を構成する記憶領域を２つの領域に分割して使用し、一方の領域に測定データを書き込む処理と、もう一方の領域から測定データを読み出してコントローラ１２へ送信する処理とを並列に行う。これにより、コントローラ１２への測定データの送信が途切れるのを防止できる。
【００４１】
このように、サーボアンプ１３は、測定開始の指示を受けると、測定を開始して測定データを測定データ記憶部３４に格納し、測定時間が経過すると、測定データ記憶部３４に格納されている測定データをコントローラ１２へ送信する。多軸制御システム１１では、サーボアンプ１３が測定データを定周期通信にてコントローラ１２へ随時送信する必要が無く、測定データのデータ量が１回の定周期通信で送信可能なデータ量に制限されない。そのため、コントローラ１２は、高精細な測定データを得ることができ、各サーボモータ１４および各機械要素１５の正確な状態を把握することができる。また、複数のサーボモータ１４に対して複雑な条件で測定を開始できるため、期待した状況でのデータ測定が容易となる。複数のモータに対して測定開始条件のＡＮＤ、ＯＲといった複雑な条件で測定を開始できるため、期待した状況でのデータ測定が容易となり、ユーザは測定データの取捨選択に要する時間を削減できる。また、コントローラ１２はサーボアンプ１３から送信される測定データを常時監視する必要がないため負荷を軽減でき、測定条件の測定対象軸に指定できる軸の数の制限を緩和することができる。
【００４２】
＜サーボモータ１４の試運転を行う場合の動作＞
図１０は、実施の形態１にかかる多軸制御システム１１においてサーボモータ１４の試運転を行う場合のコントローラ１２の動作の一例を示すフローチャートである。
【００４３】
サーボモータ１４の試運転を行う場合、コントローラ１２は、試運転の開始操作をエンジニアリングツール１７経由でユーザから受け付け、各サーボアンプ１３に試運転開始を指示する（ステップＳ３１）。詳細には、エンジニアリングツール１７がサーボモータ１４の試運転開始操作をユーザから受け付け、その旨を示す信号をコントローラ１２へ送信する。すなわち、コントローラ１２は、ステップＳ３１において、エンジニアリングツール１７が送信した試運転開始を示す信号を受信する。この信号を受信すると、コントローラ１２は各サーボアンプ１３に試運転開始を指示する。ステップＳ３１の処理はサーボアンプ制御部２２が行う。
【００４４】
エンジニアリングツール１７が試運転の開始操作をユーザから受け付ける方法はどのような方法であってもよい。例えば、エンジニアリングツール１７は、図１１に示した試運転画面２２０を表示し、試運転条件の入力と試運転開始の開始操作とを受け付ける。図１１は、エンジニアリングツール１７が表示部７４に表示する試運転画面２２０の一例を示す図である。なお、試運転条件としてユーザが入力した情報はエンジニアリングツール１７から各サーボアンプ１３へ送信される。
【００４５】
ユーザは、予め定められた操作をエンジニアリングツール１７に対して行って試運転画面２２０を表示させ、モータ回転速度、加減速時定数および運転継続時間を試運転条件として入力する。試運転条件には、試運転の対象軸も含まれる。ユーザは、試運転画面２２０の左上に配置されているプルダウンメニューを使用して、試運転の対象軸を指定する。図１１は、試運転条件の入力が完了した後の表示例を示している。エンジニアリングツール１７は、図１１に示した試運転画面２２０の左下に配置されている「正転」ボタン、または「逆転」ボタンが押下されると、試運転の開始を示す情報を生成してコントローラ１２へ送信する。また、このとき、エンジニアリングツール１７は、試運転条件を示す試運転条件データを生成して各サーボアンプ１３へ送信する。試運転条件データは、試運転の対象軸、モータ回転速度、加減速時定数、運転継続時間および回転方向（正転か逆転）のそれぞれを示す情報を含む。以下の説明では、説明の便宜上、試運転条件データを単に試運転条件と記載する場合がある。なお、「正転」ボタンは試運転の各対象軸を正転させる試運転の開始指示を受け付けるためのボタン、「逆転」ボタンは試運転の各対象軸を逆転させる試運転の開始指示を受け付けるためのボタンである。正転および逆転の方向は予め定められているものとする。
【００４６】
図１２は、実施の形態１にかかる多軸制御システム１１においてサーボモータ１４の試運転を行う場合のサーボアンプ１３の動作の一例を示すフローチャートである。
【００４７】
サーボアンプ１３は、まず、試運転条件を取得する（ステップＳ４１）。このステップＳ４１では、エンジニアリングツール１７から通知されてくる試運転条件を取得する。ここでは、サーボアンプが取得する試運転条件が、モータ回転速度＝２００ｒ／ｍｉｎ、加減速時定数＝１０００ｍｓ、運転継続時間＝３０ｓ、回転方向＝正転を示すものとする。サーボアンプ１３は、次に、取得した試運転条件を設定し、その後、サーボモータ１４の試運転の開始指示をコントローラ１２から受けると試運転を実施する（ステップＳ４２）。サーボアンプ１３は、サーボモータ１４の試運転では、軸の正転を開始させた後、回転速度が２００ｒ／ｍｉｎとなるまで、時定数１０００ｍｓでサーボモータ１４を加速させる。その後、３０ｓが経過すると、時定数１０００ｍｓでサーボモータ１４を減速させて試運転を終了する。この制御はモータ制御部３５の試運転処理部３５１が行う。
【００４８】
＜サーボモータ１４の位置決め動作＞
図１３は、実施の形態１にかかる多軸制御システム１１においてサーボモータ１４の位置決め動作を行う場合のコントローラ１２の動作の一例を示すフローチャートである。
【００４９】
サーボモータ１４の位置決め動作を行う場合、コントローラ１２は、位置決め動作の開始操作をエンジニアリングツール１７経由でユーザから受け付け、各サーボアンプ１３に位置決め動作の開始を指示する（ステップＳ５１）。詳細には、エンジニアリングツール１７がサーボモータ１４の位置決め動作開始操作をユーザから受け付け、その旨を示す信号をコントローラ１２へ送信する。すなわち、コントローラ１２は、ステップＳ５１において、エンジニアリングツール１７が送信した位置決め動作開始を示す信号を受信する。この信号を受信すると、コントローラ１２は各サーボアンプ１３に位置決め動作の開始を指示する。ステップＳ５１の処理はサーボアンプ制御部２２が行う。
【００５０】
エンジニアリングツール１７が位置決め動作の開始操作をユーザから受け付ける方法はどのような方法であってもよい。例えば、エンジニアリングツール１７は、図１４に示した入力受け付け画面２３０を表示し、位置決め動作のパラメータの入力と位置決め動作の開始操作とを受け付ける。図１４は、エンジニアリングツール１７が表示部７４に表示する入力受け付け画面２３０の一例を示す図である。なお、位置決め動作のパラメータとしてユーザが入力した情報はエンジニアリングツール１７から各サーボアンプ１３へ送信される。
【００５１】
ユーザは、予め定められた操作をエンジニアリングツール１７に対して行って入力受け付け画面２３０を表示させ、パラメータテーブル２３１に対して、目標位置、回転速度、加速時定数、減速時定数、ドウェル時間、補助機能およびＭコードの組を入力する。位置決め動作のパラメータには、位置決め動作の対象軸も含まれる。ユーザは、入力受け付け画面２３０の左上に配置されているプルダウンメニューを使用して、位置決め動作の対象軸を指定する。図１４は、パラメータの入力が完了した後の表示例を示している。エンジニアリングツール１７は、図１４に示した入力受け付け画面２３０の右上に配置されている「選択項目書込」ボタン、または「一括書込」ボタンが押下されると、位置決め動作の開始を示す情報を生成してコントローラ１２へ送信する。また、このとき、エンジニアリングツール１７は、位置決め動作のパラメータをサーボアンプ１３へ送信する。「選択項目書込」ボタンが押下された場合、エンジニアリングツール１７は、入力済みの複数の組の中から、書き込みの対象とする組をユーザに選択させ、選択された組をサーボアンプ１３へ送信する。「一括書込」ボタンが押下された場合、エンジニアリングツール１７は、入力済みの全ての組をサーボアンプ１３へ送信する。エンジニアリングツール１７は、目標位置、回転速度、加速時定数、減速時定数、ドウェル時間、補助機能およびＭコードのそれぞれを示す情報を位置決め動作のパラメータとして各サーボアンプ１３へ送信する。
【００５２】
図１５は、実施の形態１にかかる多軸制御システム１１においてサーボモータ１４の位置決め動作を行う場合のサーボアンプ１３の動作の一例を示すフローチャートである。
【００５３】
サーボアンプ１３は、まず、位置決め動作のパラメータを取得する（ステップＳ６１）。このステップＳ６１では、エンジニアリングツール１７から送信されてくる位置決め動作のパラメータ、例えば図１４に示した目標位置、回転速度、加速時定数、減速時定数、ドウェル時間、補助機能およびＭコードを取得する。サーボアンプ１３は、次に、取得した位置決め動作のパラメータを設定する（ステップＳ６２）。ステップＳ６１およびＳ６２はパラメータ設定部３７が行う。
【００５４】
サーボアンプ１３は、ステップＳ６２を実行後、コントローラ１２から動作開始の指示があるか否かを確認し（ステップＳ６３）、指示がない場合（ステップＳ６３：Ｎｏ）、ステップＳ６３を繰り返す。動作開始の指示がある場合（ステップＳ６３：Ｙｅｓ）、サーボアンプ１３は、ステップＳ６２で設定したパラメータに従って位置決め動作を実施する（ステップＳ６４）。ステップＳ６３およびＳ６４はモータ制御部３５の位置決め処理部３５２が行う。図１４に示したパラメータが設定されている場合、モータ制御部３５は、サーボモータ１４の位置が０．５００ｍｍかつ軸の回転速度が１００ｒ／ｍｉｎとなるようサーボモータ１４を制御する。モータ制御部３５は、この時の加速時定数および減速時定数を１０ｍｓとする。次に、モータ制御部３５は、サーボモータ１４の位置が３００．０００ｍｍかつ軸の回転速度が２００ｒ／ｍｉｎとなるようサーボモータ１４を制御する。モータ制御部３５は、この時の加速時定数および減速時定数を５０ｍｓとする。以下、同様に、モータ制御部３５は、設定済みの動作パラメータに従ってサーボモータ１４を制御する。
【００５５】
このように、複数のサーボモータ１４の動作を同期させて試運転および位置決めを行うことができ、図２に記載のＸ＿１軸およびＸ＿２軸のようなタイミングを合わせて駆動する必要がある機構での故障を低減することができる。また、動作を同期させる必要がある機構の調整が容易となる。また、位置決め動作を用いる場合、予め設定された位置決めデータに基づきサーボモータ１４が駆動されるため、コントローラ１２が各サーボアンプ１３に対して位置を指定するための位置指令を逐次送信する必要がない。そのためコントローラ１２の負荷が軽減され、同時に位置決め可能となるサーボモータ１４の数の制限を緩和することができる。
【００５６】
＜サーボアンプ１３が使用する動作パラメータを変更する場合の動作＞
図１６は、実施の形態１にかかる多軸制御システム１１においてサーボアンプ１３が使用する動作パラメータを変更する場合のコントローラ１２の動作の一例を示すフローチャートである。
【００５７】
サーボアンプ１３が使用する動作パラメータを変更する場合、コントローラ１２は、動作パラメータの切り替え開始操作をエンジニアリングツール１７経由でユーザから受け付け、各サーボアンプ１３に動作パラメータの切り替えを指示する（ステップＳ７１）。詳細には、エンジニアリングツール１７が、動作パラメータの切り替え開始操作をユーザから受け付け、その旨を示す信号をコントローラ１２へ送信する。すなわち、コントローラ１２は、ステップＳ７１において、エンジニアリングツール１７が送信した動作パラメータ切り替え開始を示す信号を受信する。この信号を受信すると、コントローラ１２は各サーボアンプ１３に動作パラメータの切り替えを指示する。このとき、コントローラ１２は、各サーボアンプ１３に対して、動作パラメータの切り替えを同時に指示する。ステップＳ７１の処理はサーボアンプ制御部２２が行う。
【００５８】
エンジニアリングツール１７が動作パラメータの切り替え開始操作をユーザから受け付ける方法はどのような方法であってもよい。例えば、エンジニアリングツール１７は、図１７に示した入力受け付け画面２４０を表示し、サーボアンプ１３が使用する動作パラメータの入力と動作パラメータの切り替え開始操作とを受け付ける。図１７は、エンジニアリングツール１７が表示部７４に表示する入力受け付け画面２４０の一例を示す図である。なお、動作パラメータとしてユーザが入力した情報はエンジニアリングツール１７から各サーボアンプ１３へ送信される。
【００５９】
ユーザは、予め定められた操作をエンジニアリングツール１７に対して行って入力受け付け画面２４０を表示させ、パラメータテーブル２４１に対して、動作パラメータを変更する対象の軸それぞれのパラメータ、すなわち、ＰＢ０１〜ＰＢ１１の各パラメータを入力する。ユーザは、入力受け付け画面２４０の右上に配置されている「軸選択」ボタンを押下することで、動作パラメータを変更する対象軸の選択メニューを呼び出し、動作パラメータを変更する軸の選択を行う。図１７は、動作パラメータを変更する対象軸として軸Ｘ＿１および軸Ｘ＿２が選択され、動作パラメータの入力が完了した後の表示例を示している。エンジニアリングツール１７は、入力受け付け画面２４０の「書込」ボタンが押下されると、動作パラメータの切り替え開始を示す情報を生成してコントローラ１２へ送信する。また、このとき、エンジニアリングツール１７は、動作パラメータをコントローラ１２へ送信する。エンジニアリングツール１７は、サーボアンプ１３に対して、図１７に示す各項目（Ｎｏ．、略称、名称、単位、…）のそれぞれを示す情報を変更用の動作パラメータとして送信する。
【００６０】
図１８は、実施の形態１にかかる多軸制御システム１１においてサーボモータ１４の動作パラメータを変更する場合のサーボアンプ１３の動作の一例を示すフローチャートである。
【００６１】
サーボアンプ１３は、まず、変更用の動作パラメータを取得する（ステップＳ８１）。このステップＳ８１では、エンジニアリングツール１７から送信されてくる変更用の動作パラメータを取得する。サーボアンプ１３は、次に、取得した変更用の動作パラメータをパラメータ記憶部３６の補助記憶部３６２に格納する（ステップＳ８２）。ステップＳ８１およびＳ８２はパラメータ設定部３７が行う。補助記憶部３６２が記憶する変更用の動作パラメータは、サーボアンプ１３がサーボモータ１４を駆動する動作での使用を開始する前の動作パラメータである。
【００６２】
サーボアンプ１３は、ステップＳ８２を実行後、コントローラ１２から動作パラメータの切り替え指示があるか否かを確認し（ステップＳ８３）、指示がない場合（ステップＳ８３：Ｎｏ）、ステップＳ８３を繰り返す。動作パラメータの切り替え指示がある場合（ステップＳ８３：Ｙｅｓ）、サーボアンプ１３は、補助記憶部３６２が記憶している動作パラメータの使用を開始する（ステップＳ８４）。具体的には、サーボアンプ１３のパラメータ設定部３７が、補助記憶部３６２から動作パラメータを読み出して主記憶部３６１に書き込み、サーボモータ１４を駆動する際に使用する動作パラメータを切り替える。なお、主記憶部３６１は、サーボアンプ１３がサーボモータ１４を駆動する動作で使用中の動作パラメータを記憶する第１の記憶部である。また、補助記憶部３６２は、サーボアンプ１３がサーボモータ１４を駆動する動作での使用を開始する前の動作パラメータを記憶する第２の記憶部である。
【００６３】
これにより、複数のサーボアンプ１３の動作パラメータを一斉に変更でき、動作パラメータの偏差からくる複数のサーボモータ１４の動作の差異を最小限に抑えることができ、調整が容易となる。また、対象の各サーボアンプ１３の動作パラメータをネットワーク１８に一度に送信する必要がなくなるため、動作パラメータを一斉に変更できるサーボアンプ１３の数の制限を緩和できる。
【００６４】
なお、パラメータ設定部３７は、パラメータ記憶部３６の主記憶部３６１と補助記憶部３６２のどちらを有効にするかをフラグ等の識別子にて管理し、この識別子を変更することで有効となるパラメータを変更してもよい。また、補助記憶部３６２を複数備える構成としてもよい。
【００６５】
以上のように、本実施の形態にかかる多軸制御システム１１において、システム全体の動作を制御するコントローラ１２は、サーボモータ１４を駆動する動作で使用する動作パラメータを対象のサーボアンプ１３へ送信し、動作パラメータの送信先の各サーボアンプ１３に対して、送信済みの動作パラメータを使用した動作の開始を指示する。各サーボアンプ１３は、コントローラ１２から受信した動作パラメータを記憶しておき、動作開始の指示を受けると、記憶している動作パラメータに従い個別に動作を行い、サーボモータ１４を駆動する。これにより、複数のサーボアンプ１３の各々が駆動するサーボモータ１４の動作を同期させることができ、複数の軸の同期制御を実現できる。また、コントローラ１２は、各サーボアンプ１３に動作開始を指示した後は、サーボモータ１４の制御情報をサーボアンプ１３に送信する必要が無い。そのため、コントローラ１２の負荷を軽減することができる。また、多軸制御システム１１が備えるサーボモータ１４の数が増加してもコントローラ１２の負荷が大きく増加することがない。すなわち、コントローラ１２の負荷が増加するのを抑制しつつ同期制御の対象のモータを増加させることができる。また、コントローラ１２とサーボアンプ１３が接続されたネットワーク１８の負荷を軽減できる。
【００６６】
実施の形態２．
実施の形態２にかかる多軸制御システムを説明する。本実施の形態にかかる多軸制御システムの構成は実施の形態１と同様である。また、多軸制御システムを構成するコントローラおよびサーボアンプの構成も実施の形態１と同様である。
【００６７】
上述したように、実施の形態１にかかる多軸制御システム１１では、同期制御の対象軸のサーボモータ１４を駆動するサーボアンプ１３である対象のサーボアンプ１３に動作パラメータを設定し、コントローラ１２が対象の各サーボアンプ１３に対して動作の開始を同時に指示することで、対象の各サーボアンプ１３が動作を開始して同期制御を実現する。これに対して、本実施の形態にかかる多軸制御システム１１は、各サーボアンプ１３に動作の開始時刻および動作パラメータを設定し、各サーボアンプ１３は、動作の開始時刻になると、動作パラメータに従った動作を開始する。
【００６８】
一例として、実施の形態２にかかる多軸制御システム１１においてサーボモータ１４の測定を行う場合の動作について説明する。
【００６９】
図１９は、実施の形態２にかかる多軸制御システム１１においてサーボモータ１４の測定を行う場合のコントローラ１２の動作の一例を示すフローチャートである。
【００７０】
実施の形態２にかかる多軸制御システム１１においてサーボモータ１４の測定を行う場合、コントローラ１２は、まず、測定開始時刻および動作パラメータである測定条件をエンジニアリングツール１７から取得する（ステップＳ９１）。詳細には、エンジニアリングツール１７が測定開始時刻および測定条件の入力をユーザから受け付け、入力された測定開始時刻および測定条件をコントローラ１２へ送信する。コントローラ１２は、実施の形態１で説明したステップＳ１１と同様の方法によって、測定開始時刻および測定条件を取得する。例えば、エンジニアリングツール１７が、図７に示した測定画面２１０と同様の画面を表示部７４に表示し、測定開始時刻および測定条件の入力を受け付ける。このとき、図７に示した入力領域２１１に含まれる開始条件として、軸の速度の代わりに測定開始時刻の入力を受け付ける。コントローラ１２がステップＳ９１で取得する測定条件は、測定対象軸である。すなわち、コントローラ１２は、ステップＳ９１において、測定開始時刻および測定対象軸を取得する。また、エンジニアリングツール１７は、コントローラ１２へ測定開始時刻および測定条件を送信するとき、これと並行して、測定対象軸のサーボモータ１４を駆動するサーボアンプ１３へ測定開始時刻および測定条件を送信する。具体的には、エンジニアリングツール１７は、測定開始時刻、測定時間および測定対象データをサーボアンプ１３へ送信する。
【００７１】
その後、コントローラ１２は、各サーボアンプ１３から測定データを取得してエンジニアリングツール１７へ出力する（ステップＳ９２）。ステップＳ９２は実施の形態１で説明したステップＳ１５と同様の処理である。
【００７２】
図２０は、実施の形態２にかかる多軸制御システム１１においてサーボモータ１４の測定を行う場合のサーボアンプ１３の動作の一例を示すフローチャートである。
【００７３】
サーボアンプ１３は、まず、測定開始時刻および測定条件を取得する（ステップＳ１０１）。このステップＳ１０１では、エンジニアリングツール１７から通知されてくる測定開始時刻および測定条件を取得する。サーボアンプ１３は、次に、取得した測定開始時刻および測定条件を設定し、サーボモータ１４を駆動する（ステップＳ１０２）。ステップＳ１０１およびＳ１０２の処理は、図９に示したステップＳ２１およびＳ２２と同様の処理である。なお、ステップＳ１０２では、時刻管理部３８の時刻記憶部３８２が、測定条件に含まれる測定開始時刻を記憶する。
【００７４】
サーボアンプ１３は、次に、測定開始時刻か否かを確認し（ステップＳ１０３）、測定開始時刻ではない場合（ステップＳ１０３：Ｎｏ）、ステップＳ１０３を繰り返す。測定開始時刻の場合（ステップＳ１０３：Ｙｅｓ）、ステップＳ１０２で設定した測定条件に従って測定を行い、測定データをコントローラ１２へ送信する（ステップＳ１０４）。サーボアンプ１３の時刻管理部３８がステップＳ１０３の判定処理を行う。ステップＳ１０４の処理は、図９に示したステップＳ２５と同様の処理である。
【００７５】
本実施の形態では、サーボモータ１４の測定を行う場合の例について説明したが、実施の形態１で説明したその他の動作、具体的には、サーボモータ１４の試運転、位置決め動作および動作パラメータを切り替える動作において、動作の開始時刻をサーボアンプ１３に設定するようにしてもよい。動作の開始時刻が設定されたサーボアンプ１３は、動作の開始時刻になると、動作を実行する。
【００７６】
以上のように、本実施の形態にかかる多軸制御システムにおいて、コントローラ１２は、動作の開始時刻の情報を含む動作パラメータをサーボアンプ１３へ送信し、動作パラメータを受信したサーボアンプ１３は、動作の開始時刻になると、動作パラメータに従い個別に動作を行い、サーボモータ１４を駆動する。本実施の形態にかかる多軸制御システムは、実施の形態１にかかる多軸制御システムと同様に、複数のサーボアンプ１３の各々が駆動するサーボモータ１４の動作を同期させることができ、複数の軸の同期制御を実現できる。
【００７７】
なお、実施の形態１および２では、ガントリ機構を備える多軸制御システムについて説明したが、あくまで一例であり、これ以外の構成の多軸制御システムに対しても、実施の形態１，２で説明した制御を適用することが可能である。
【００７８】
つづいて、上記の各実施の形態で説明したコントローラ１２のハードウェア構成について説明する。図２１は、実施の形態１，２にかかる多軸制御システム１１のコントローラ１２を実現するハードウェアの一例を示す図である。実施の形態１，２で説明したコントローラ１２を構成する構成要素のそれぞれは、例えば、図２１に示したプロセッサ１０１、メモリ１０２および通信装置１０３で構成される処理回路で実現される。図２１に示したプロセッサ１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等である。また、図２１に示したメモリ１０２は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フラッシュメモリー、等の、不揮発性または揮発性の半導体メモリ、磁気ディスク等である。
【００７９】
コントローラ１２のサーボアンプ制御部２２およびパラメータ取得部２３は、これらの各部として動作するためのプログラムをプロセッサ１０１が実行することにより実現される。サーボアンプ制御部２２およびパラメータ取得部２３として動作するためのプログラムはメモリ１０２に予め格納されている。プロセッサ１０１は、上記プログラムをメモリ１０２から読み出して実行することにより、サーボアンプ制御部２２およびパラメータ取得部２３として動作する。また、定周期通信部２１および通信部２４は、通信装置１０３により実現される。
【００８０】
なお、プロセッサ１０１がコントローラ１２のサーボアンプ制御部２２およびパラメータ取得部２３として動作するためのプログラムは、メモリ１０２に予め格納されているものとしたがこれに限定されない。上記のプログラムは、ＣＤ（Compact  Disc）−ＲＯＭ、ＤＶＤ（Digital  Versatile  Disc）−ＲＯＭなどの記録媒体に書き込まれた状態でユーザに供給され、ユーザがメモリ１０２にインストールする形態であってもよい。この場合、プロセッサ１０１を実現するハードウェアは、記録媒体からプログラムを読み出すための読み取り装置、または、読み取り装置を接続するためのインタフェース回路を含む構成となる。また、上記のプログラムは、インターネットなどの通信回線を介してユーザに提供され、メモリ１０２にインストールされる形態であってもよい。
【００８１】
コントローラ１２を実現するハードウェアについて説明したが、サーボアンプ１３も同様のハードウェアで実現できる。すなわち、図４に示したサーボアンプ１３の各構成要素は、図２１に示したプロセッサ１０１、メモリ１０２および通信装置１０３で構成される処理回路で実現される。
【００８２】
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
【符号の説明】
【００８３】
１１  多軸制御システム、１２  コントローラ、１３，１３ａ，１３ｂ  サーボアンプ、１４ａ，１４ｂ，１４ｃ，１４ｄ  サーボモータ、１５ａ，１５ｂ，１５ｃ，１５ｄ  機械要素、１６  端末、１７  エンジニアリングツール、１８  ネットワーク、２０，３０，７０  内部バス、２１  定周期通信部、２２  サーボアンプ制御部、２３  パラメータ取得部、２４，３１，７１  通信部、３２  測定開始条件判断部、３３  測定処理部、３４  測定データ記憶部、３５  モータ制御部、３６  パラメータ記憶部、３７  パラメータ設定部、３８  時刻管理部、７２  データ取得部、７３  データ設定部、７４  表示部、３５１  試運転処理部、３５２  位置決め処理部、３６１  主記憶部、３６２  補助記憶部、３８１  内蔵時計、３８２  時刻記憶部。
【要約】
複数の軸のそれぞれと対応付けられている複数のサーボモータ（１４ａ，１４ｂ，１４ｃ，１４ｄ）を同期制御する多軸制御システム（１１）であって、それぞれが複数のサーボモータの中の１つ以上を駆動する複数のサーボアンプ（１３ａ，１３ｂ）と、複数のサーボアンプを制御するコントローラ（１２）と、を備え、サーボアンプは、エンジニアリングツールから取得した制御用の動作パラメータを記憶するパラメータ記憶部（３６）と、複数のサーボモータのうち駆動対象のサーボモータをパラメータ記憶部が記憶している動作パラメータに従って制御するモータ制御部（３５）と、を備える。【図１】
0006762437.tif 000002
【図２】
0006762437.tif 000003
【図３】
0006762437.tif 000004
【図４】
0006762437.tif 000005
【図５】
0006762437.tif 000006
【図６】
0006762437.tif 000007
【図７】
0006762437.tif 000008
【図８】
0006762437.tif 000009
【図９】
0006762437.tif 000010
【図１０】
0006762437.tif 000011
【図１１】
0006762437.tif 000012
【図１２】
0006762437.tif 000013
【図１３】
0006762437.tif 000014
【図１４】
0006762437.tif 000015
【図１５】
0006762437.tif 000016
【図１６】
0006762437.tif 000017
【図１７】
0006762437.tif 000018
【図１８】
0006762437.tif 000019
【図１９】
0006762437.tif 000020
【図２０】
0006762437.tif 000021
【図２１】
0006762437.tif 000022