(57)【要約】【課題】数値制御装置の制御周期とモータ制御装置の制御周期とが異なる場合であっても、モータ制御の安定性が低下することを防止する。【解決手段】モータ制御装置１４は、複数の数値制御装置１２の各々から移動指令Ｓと移動指令Ｓの第１制御周期Ｔｃとを受信する指令受信部３０と、複数の第１制御周期Ｔｃと、複数の第１制御周期Ｔｃの各々に応じた複数の第２制御周期Ｔｍとに基づいて、複数の第１制御周期Ｔｃの移動指令Ｓから複数の第２制御周期Ｔｍの移動指令Ｓ´を生成する指令生成部３４と、指令生成部３４で生成された複数の移動指令Ｓ´にしたがって、モータ１６を制御するモータ制御部３６と、を備える。【選択図】図２
2019088100.tif 000002
【特許請求の範囲】
【請求項１】
複数の数値制御装置の各々から移動指令と前記移動指令の第１制御周期とを受信する指令受信部と、
複数の前記第１制御周期と、複数の前記第１制御周期の各々に応じた複数の第２制御周期とに基づいて、複数の前記第１制御周期の前記移動指令から複数の前記第２制御周期の前記移動指令を生成する指令生成部と、
前記指令生成部で生成された複数の前記移動指令にしたがって、モータを制御するモータ制御部と、
を備える、モータ制御装置。
【請求項２】
請求項１に記載のモータ制御装置であって、
複数の前記第１制御周期に基づいて、複数の前記第１制御周期の各々に応じた複数の前記第２制御周期を決定する周期決定部を備える、モータ制御装置。
【請求項３】
請求項２に記載のモータ制御装置であって、
前記周期決定部は、前記第１制御周期より短い周期を、前記第１制御周期に応じた前記第２制御周期として決定する、モータ制御装置。
【請求項４】
請求項２または３に記載のモータ制御装置であって、
前記周期決定部は、互いに異なる予め決められた複数の周期の中から、複数の前記第１制御周期の各々に応じた複数の前記第２制御周期を決定する、モータ制御装置。
【請求項５】
請求項１〜４のいずれか１項に記載のモータ制御装置であって、
前記モータ制御部は、前記指令生成部で生成された複数の前記移動指令を合算した合算移動指令にしたがって、前記モータを制御する、モータ制御装置。
【請求項６】
請求項５に記載のモータ制御装置であって、
前記モータ制御部は、複数の前記第２制御周期のうち、最も短い前記第２制御周期以下の周期で前記モータを制御する、モータ制御装置。
【請求項７】
請求項１〜６のいずれか１項に記載のモータ制御装置と、複数の前記数値制御装置とを備える制御システムであって、
複数の前記数値制御装置の各々は、前記第１制御周期を設定する周期設定部を備え、前記周期設定部は、前記数値制御装置による処理の負荷率に応じて前記第１制御周期を設定する、制御システム。
【請求項８】
モータを制御するモータ制御方法であって、
モータ制御装置が、複数の数値制御装置の各々から移動指令と前記移動指令の第１制御周期とを受信する指令受信ステップと、
前記モータ制御装置が、複数の前記第１制御周期と、複数の前記第１制御周期の各々に応じた複数の第２制御周期とに基づいて、複数の前記第１制御周期の前記移動指令から複数の前記第２制御周期の前記移動指令を生成する指令生成ステップと、
前記モータ制御装置が、前記指令生成ステップで生成された複数の前記移動指令にしたがって、前記モータを制御するモータ制御ステップと、
を含む、モータ制御方法。
【請求項９】
請求項８に記載のモータ制御方法であって、
前記モータ制御装置が、複数の前記第１制御周期に基づいて、複数の前記第１制御周期の各々に応じた複数の前記第２制御周期を決定する周期決定ステップを含む、モータ制御方法。
【請求項１０】
請求項９に記載のモータ制御方法であって、
前記周期決定ステップは、前記第１制御周期より短い周期を、前記第１制御周期に応じた前記第２制御周期として決定する、モータ制御方法。
【請求項１１】
請求項９または１０に記載のモータ制御方法であって、
前記周期決定ステップは、互いに異なる予め決められた複数の周期の中から、複数の前記第１制御周期の各々に応じた複数の前記第２制御周期を決定する、モータ制御方法。
【請求項１２】
請求項８〜１１のいずれか１項に記載のモータ制御方法であって、
前記モータ制御ステップは、前記指令生成ステップで生成された複数の前記移動指令を合算した合算移動指令にしたがって、前記モータを制御する、モータ制御方法。
【請求項１３】
請求項１２に記載のモータ制御方法であって、
前記モータ制御ステップは、複数の前記第２制御周期のうち、最も短い前記第２制御周期以下の周期で前記モータを制御する、モータ制御方法。
【請求項１４】
請求項８〜１３のいずれか１項に記載のモータ制御方法であって、
複数の前記数値制御装置が、前記数値制御装置による処理の負荷率に応じて複数の前記第１制御周期を設定する周期設定ステップを含む、モータ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータを制御するモータ制御装置、制御システム、および、モータ制御方法に関する。
【背景技術】
【０００２】
下記に示す特許文献１に記載されているように、モータ制御装置は、数値制御装置からの指令に基づいてモータを制御する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−２００５２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、数値制御装置の制御周期とモータ制御装置の制御周期とが異なる場合は、制御に必要なデータ数に過不足が発生したり、モータの制御が遅れてしまうという問題がある。その結果、速度変動や位置ずれが生じ、モータ制御の安定性が低下する。特に、複数の数値制御装置が、１つのモータ制御装置を介してモータを制御する場合は尚更である。
【０００５】
そこで、本発明は、数値制御装置の制御周期とモータ制御装置の制御周期とが異なる場合であっても、モータ制御の安定性が低下することを防止するモータ制御装置、制御システム、および、モータ制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の第１の態様は、モータ制御装置であって、複数の数値制御装置の各々から移動指令と前記移動指令の第１制御周期とを受信する指令受信部と、複数の前記第１制御周期と、複数の前記第１制御周期の各々に応じた複数の第２制御周期とに基づいて、複数の前記第１制御周期の前記移動指令から複数の前記第２制御周期の前記移動指令を生成する指令生成部と、前記指令生成部で生成された複数の前記移動指令にしたがって、モータを制御するモータ制御部と、を備える。
【０００７】
本発明の第２の態様は、上記本発明の第１の態様のモータ制御装置と、複数の前記数値制御装置とを備える制御システムであって、複数の前記数値制御装置の各々は、前記第１制御周期を設定する周期設定部を備え、前記周期設定部は、前記数値制御装置による処理の負荷率に応じて前記第１制御周期を設定する。
【０００８】
本発明の第３の態様は、モータを制御するモータ制御方法であって、モータ制御装置が、複数の数値制御装置の各々から移動指令と前記移動指令の第１制御周期とを受信する指令受信ステップと、前記モータ制御装置が、複数の前記第１制御周期と、複数の前記第１制御周期の各々に応じた複数の第２制御周期とに基づいて、複数の前記第１制御周期の前記移動指令から複数の前記第２制御周期の前記移動指令を生成する指令生成ステップと、前記モータ制御装置が、前記指令生成ステップで生成された複数の前記移動指令にしたがって、前記モータを制御するモータ制御ステップと、を含む。
【発明の効果】
【０００９】
本発明によれば、複数の数値制御装置とモータ制御装置との間で、制御周期が異なる場合であっても、モータ制御の安定性が低下することを防止することができるとともに、モータ制御装置の負荷を軽減することができる。
【図面の簡単な説明】
【００１０】
【図１】実施の形態の制御システムの概略構成を示す図である。
【図２】図１に示す制御システムの複数の数値制御装置およびモータ制御装置の具体的な構成を示す機能ブロック図である。
【図３】図２に示す指令生成部による移動指令の生成を説明するための図である。
【図４】図２に示す数値制御装置の動作を示すフローチャートである。
【図５】図２に示すモータ制御装置の動作を示すフローチャートである。
【発明を実施するための形態】
【００１１】
本発明に係るモータ制御装置、制御システム、および、モータ制御方法について、好適な実施の形態を掲げ、添付の図面を参照しながら以下、詳細に説明する。
【００１２】
［実施の形態］
図１は、本実施の形態の制御システム１０の概略構成を示す図である。制御システム１０は、複数の数値制御装置１２、モータ制御装置１４、および、モータ１６を備える。なお、複数の数値制御装置１２の制御周期（第１制御周期）Ｔｃと、モータ制御装置１４の制御周期（第２制御周期）Ｔｍとは、互いに異なるものとする。また、複数の数値制御装置１２は、制御周期Ｔｃが互いに異なるものとする。
【００１３】
数値制御装置１２は、モータ１６を駆動するためのプログラムまたはオペレータの操作にしたがって、モータ１６を制御するための上位制御装置である。複数の数値制御装置１２の各々は、モータ１６を駆動させるための指令（以下、移動指令と呼ぶ。）Ｓを、モータ制御装置１４に出力する。つまり、複数の数値制御装置１２によって、モータ１６の駆動が制御される。
【００１４】
モータ制御装置１４は、複数の数値制御装置１２から送られてきた複数の移動指令（駆動指令）Ｓにしたがって、モータ（例えば、サーボモータ）１６を制御する。モータ制御装置１４は、複数の移動指令Ｓに応じてモータ１６に電流を供給することで、モータ１６の駆動（回転）を制御する。
【００１５】
モータ１６には、回転位置若しくは回転速度を検出する回転センサ（例えば、エンコーダ）、および、モータ１６に供給される電流を検出する電流センサ等のセンサ１８が設けられている。モータ制御装置１４は、センサ１８が検出した検出信号に基づいてモータ１６をフィードバック制御する。
【００１６】
図２は、制御システム１０の複数の数値制御装置１２およびモータ制御装置１４の具体的な構成を示す機能ブロック図である。数値制御装置１２およびモータ制御装置１４は、ＣＰＵ等のプロセッサおよびメモリ等を備えている。
【００１７】
なお、以下の説明では、説明をわかり易くするため、数値制御装置１２の数は、２つとして説明する。また、２つの数値制御装置１２を互いに区別するため、一方の数値制御装置１２を１２ａ、他方の数値制御装置１２を１２ｂと呼ぶ場合がある。また、数値制御装置１２ａからの移動指令ＳをＳａ、数値制御装置１２ｂからの移動指令ＳをＳｂと呼び、数値制御装置１２ａの制御周期ＴｃをＴｃａ、数値制御装置１２ｂの制御周期ＴｃをＴｃｂと呼ぶ場合がある。
【００１８】
例えば、数値制御装置１２ａは、モータ１６を常時制御するための移動指令Ｓａをモータ制御装置１４に出力し、数値制御装置１２ｂは、ある特別の条件のときにモータ１６を制御するための移動指令Ｓｂをモータ制御装置１４に出力する。移動指令Ｓａの制御周期Ｔｃａ（数値制御装置１２ａの制御周期Ｔｃａ）は、移動指令Ｓｂの制御周期Ｔｃｂ（数値制御装置１２ｂの制御周期Ｔｃｂ）より長い周期とする（Ｔｃａ＞Ｔｃｂ）。
【００１９】
まず、数値制御装置１２の構成を説明した後に、モータ制御装置１４の構成について説明する。数値制御装置１２ａと数値制御装置１２ｂとは制御周期Ｔｃが異なるが、構成は同一なので、原則として数値制御装置１２ａを例に挙げて説明する。数値制御装置１２ａは、周期設定部２０、移動指令生成部２２、および、通信部２４を有する。
【００２０】
周期設定部２０は、数値制御装置１２ａによる処理の負荷率（数値制御装置１２ａのＣＰＵの負荷率）に応じて制御周期Ｔｃａを設定する。例えば、制御周期Ｔｃａが短い程、ＣＰＵの負荷率が高くなるので、現在の負荷率が高い場合は制御周期Ｔｃａを長く設定し、現在の負荷率が低い場合には制御周期Ｔｃａを短く設定する。これにより、モータ１６の制御の安定性が低下することを防止することができる。ここで、ＣＰＵの負荷率とは、ＣＰＵの処理容量に対する現在の処理量を意味する。周期設定部２０は、設定した制御周期Ｔｃａを移動指令生成部２２および通信部２４に出力する。
【００２１】
なお、数値制御装置１２ａの周期設定部２０は、数値制御装置１２ｂの周期設定部２０が設定する制御周期Ｔｃｂより周期が長い制御周期Ｔｃａを設定するものとする。
【００２２】
移動指令生成部２２は、モータ１６を駆動するためのプログラムを解析することで、移動指令Ｓａを設定された制御周期Ｔｃａで順次生成する。移動指令生成部２２は、生成した移動指令Ｓａを通信部２４に出力する。なお、数値制御装置１２ｂの移動指令生成部２２は、移動指令Ｓｂを制御周期Ｔｃｂで順次生成する。
【００２３】
通信部２４は、モータ制御装置１４との間で信号の授受を行うものである。通信部（指令送信部）２４は、設定された制御周期Ｔｃａをモータ制御装置１４に送信する。また、通信部（指令送信部）２４は、生成された移動指令Ｓａを設定された制御周期Ｔｃａでモータ制御装置１４に順次送信する。なお、数値制御装置１２ｂの通信部２４は、制御周期Ｔｃｂをモータ制御装置１４に送信するとともに、制御周期Ｔｃｂで移動指令Ｓｂをモータ制御装置１４に送信する。
【００２４】
次に、モータ制御装置１４の構成について説明する。モータ制御装置１４は、通信部３０、周期決定部３２、指令生成部３４、および、モータ制御部３６を有する。
【００２５】
通信部３０は、２つの数値制御装置１２（１２ａ、１２ｂ）の通信部２４との間で信号の授受を行うためのものである。通信部（指令受信部）３０は、２つの数値制御装置１２（１２ａ、１２ｂ）の各々から移動指令Ｓ（Ｓａ、Ｓｂ）と移動指令Ｓ（Ｓａ、Ｓｂ）の制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）とを受信する。通信部３０は、受信した２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）を周期決定部３２に出力するとともに、受信した２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）および２つの移動指令Ｓ（Ｓａ、Ｓｂ）を指令生成部３４に出力する。
【００２６】
周期決定部３２は、２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）に基づいて、２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）の各々に応じた２つの制御周期Ｔｍを決定する。これにより、２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）の各々に応じて、適切な２つの制御周期Ｔｍを決定することができる。
【００２７】
ここで、制御周期Ｔｃａに応じて決定されるモータ制御装置１４の制御周期ＴｍをＴｍａと呼び、制御周期Ｔｃｂに応じて決定されるモータ制御装置１４の制御周期ＴｍをＴｍｂと呼ぶ場合がある。周期決定部３２は、制御周期Ｔｃより短い周期を制御周期Ｔｃに応じた制御周期Ｔｍとして決定する。したがって、制御周期Ｔｃａと制御周期Ｔｍａとの関係は、Ｔｃａ＞Ｔｍａ、で表され、制御周期Ｔｃｂと制御周期Ｔｍｂとの関係は、Ｔｃｂ＞Ｔｍｂ、で表される。なお、Ｔｃａ＞Ｔｃｂ、であり、制御周期Ｔｍａは、制御周期Ｔｃｂより長くてもよい。
【００２８】
周期決定部３２は、互いに異なる予め決められた複数の周期の中から、２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）の各々に応じた２つの制御周期Ｔｍ（Ｔｍａ、Ｔｍｂ）を決定してもよい。これにより、様々な制御周期Ｔｃまたは制御周期Ｔｃの変化に対応することができる。この予め決められた複数の周期を示す情報は、周期決定部３２のメモリに記憶されていてもよい。周期決定部３２は、決定した２つの制御周期Ｔｍ（Ｔｍａ、Ｔｍｂ）を指令生成部３４に出力する。
【００２９】
指令生成部３４は、２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）と、２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）の各々に応じた２つの制御周期Ｔｍ（Ｔｍａ、Ｔｍｂ）とに基づいて、２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）の移動指令Ｓ（Ｓａ、Ｓｂ）から、２つの制御周期Ｔｍ（Ｔｍａ、Ｔｍｂ）の移動指令Ｓ´（Ｓａ´、Ｓｂ´）を生成する。
【００３０】
本実施の形態では、数値制御装置１２ａの制御周期Ｔｃａを「８」、数値制御装置１２ｂの制御周期Ｔｃｂを「３」とし、制御周期Ｔｃａに対応する制御周期Ｔｍａを「６」、制御周期Ｔｃｂに対応する制御周期Ｔｍｂを「２」として説明する。なお、周期の単位は明示しないが、これらの制御周期Ｔｃａ、Ｔｃｂ、Ｔｍａ、Ｔｍｂの単位は同一とする。
【００３１】
具体的には、指令生成部３４は、制御周期Ｔｃａと制御周期Ｔｍａとの比（４：３）を用いて、制御周期Ｔｃａの移動指令Ｓａから制御周期Ｔｍａの移動指令Ｓａ´を生成する。また、指令生成部３４は、制御周期Ｔｃｂと制御周期Ｔｍｂとの比（３：２）を用いて、制御周期Ｔｃｂの移動指令Ｓｂから制御周期Ｔｍｂの移動指令Ｓｂ´を生成する。つまり、指令生成部（指令変換部）３４は、制御周期Ｔｃａ、Ｔｍａに基づいて、制御周期Ｔｃａの移動指令Ｓａを制御周期Ｔｍａの移動指令Ｓａ´に変換している。また、指令生成部３４は、制御周期Ｔｃｂ、Ｔｍｂに基づいて、制御周期Ｔｃｂの移動指令Ｓｂを制御周期Ｔｍｂの移動指令Ｓｂ´に変換している。
【００３２】
図３は、指令生成部３４による移動指令Ｓ´の生成を説明するための図である。図３では、移動指令Ｓａから移動指令Ｓａ´を生成する場合を例に挙げて説明する。
【００３３】
通信部３０が受信した複数の移動指令Ｓａを、Ｓａ1、Ｓａ2、Ｓａ3で表し、生成後の複数の移動指令Ｓａ´を、Ｓａ1´、Ｓａ2´、Ｓａ3´、Ｓａ4´で表す。数値制御装置１２ａは、Ｓａ1、Ｓａ2、Ｓａ3の順で、モータ１６が制御されるように移動指令Ｓａを送信し、通信部３０は、Ｓａ1、Ｓａ2、Ｓａ3の順で移動指令Ｓａを受信したものとする。なお、移動指令Ｓａの制御周期Ｔｃａと移動指令Ｓａ´の制御周期Ｔｍａとの比は、４：３、となっているので、Ｓａ1〜Ｓａ3の期間とＳａ1´〜Ｓａ4´の期間とは、同一となる。
【００３４】
指令生成部３４は、移動指令Ｓａ1のうち、３／４に相当する指令を移動指令Ｓａ1´として生成する。例えば、移動指令Ｓａ1が８度だけ回転しなさいという指令の場合は、生成された移動指令Ｓａ1´は、６度（＝８度×３／４）だけ回転しなさいという指令になる。
【００３５】
そして、指令生成部３４は、移動指令Ｓａ1のうち残りの１／４に相当する指令と、移動指令Ｓａ2のうち１／２に相当する指令とを含む指令を移動指令Ｓａ2´として生成する。例えば、移動指令Ｓａ2が４度だけ回転しなさいという指令の場合は、生成された移動指令Ｓａ2´は、２度（＝８度×１／４）だけ回転しなさいという指令（移動指令Ｓａ1の１／４に相当する指令）と、２度（＝４度×１／２）だけ回転しなさいという指令（移動指令Ｓａ2の１／２に相当する指令）とを含む指令となる。
【００３６】
このようにして、指令生成部３４は、制御周期Ｔｃａと制御周期Ｔｍａとの比（４：３）に基づいて、移動指令Ｓａから移動指令Ｓａ´を生成する。また、同様に、指令生成部３４は、制御周期Ｔｃｂと制御周期Ｔｍｂとの比（３：２）に基づいて、移動指令Ｓｂから移動指令Ｓｂ´を生成する。指令生成部３４は、生成した移動指令Ｓ´（Ｓａ´、Ｓｂ´）をモータ制御部３６に出力する。制御周期Ｔｍは、対応する制御周期Ｔｃより短い周期なので、モータ１６の制御の安定性が低下することを防止することができる。
【００３７】
本実施の形態では、２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）と、２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）に応じた２つ制御周期Ｔｍ（Ｔｍａ、Ｔｍｂ）とに基づいて、２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）の移動指令Ｓ（Ｓａ、Ｓｂ）から２つの制御周期Ｔｍ（Ｔｍａ、Ｔｍｂ）の移動指令Ｓ´（Ｓａ´、Ｓｂ´）を生成した。これにより、モータ制御装置１４の負荷を軽減することができる。
【００３８】
例えば、モータ制御装置１４の制御周期Ｔｍを１つにし、２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）と、１つの制御周期Ｔｍとに基づいて、制御周期Ｔｃａの移動指令Ｓａおよび制御周期Ｔｃｂの移動指令Ｓｂから、制御周期Ｔｍの移動指令Ｓａ´、Ｓｂ´を生成することもできる。この場合も、制御周期Ｔｍは、２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）より短い方が好ましいので、制御周期Ｔｍを、例えば、「２」とする。但し、制御周期Ｔｃａは「８」、制御周期Ｔｃｂは「３」とする。
【００３９】
そのため、モータ制御装置１４は、「２」の制御周期で動作して、制御周期Ｔｃａが「８」の移動指令Ｓａおよび制御周期Ｔｃｂが「３」の移動指令Ｓｂから、制御周期が「２」の移動指令Ｓａ´、Ｓｂ´を生成しなければならない。そのため、モータ制御装置１４による処理の負荷が大きくなる。
【００４０】
これに対して、本実施の形態では、２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）に応じた２つの制御周期Ｔｍ（Ｔｍａ、Ｔｍｂ）を用いて、２つの移動指令Ｓ´（Ｓａ´、Ｓｂ´）を生成する。これにより、周期が長い制御周期Ｔｃａに関しては、比較的長い制御周期Ｔｍａで移動指令Ｓａ´を生成するので、移動指令Ｓａ´の生成処理の負荷を軽減することができる。その結果、モータ制御装置１４の全体の負荷を軽減することができる。
【００４１】
モータ制御部３６は、２つの移動指令Ｓ´（Ｓａ´、Ｓｂ´）にしたがってモータ１６を制御する。モータ制御部３６は、２つの移動指令Ｓ´（Ｓａ´、Ｓｂ´）を合算（重畳）した合算移動指令Ｓｓにしたがって、モータ１６を制御する。モータ制御部３６は、２つの制御周期Ｔｍａ、Ｔｍｂのうち、最も周期が短い制御周期Ｔｍｂ以下の周期でモータ１６を制御する。これにより、モータ１６の制御の安定性が低下することをさらに防止することができる。モータ制御部３６は、センサ１８が検出した検出信号に基づいてモータ１６をフィードバック制御する。
【００４２】
このように、複数の数値制御装置１２とモータ制御装置１４との間で、制御周期Ｔｃ、Ｔｍが異なる場合であっても、制御に必要なデータ数に過不足が発生したり、制御が遅れたりすることを防止することができる。そのため、速度変動や位置ずれ等が生じることを防止することができ、モータ１６の制御の安定性が低下することを防止することができる。したがって、数値制御装置１２とモータ制御装置１４との間で、制御周期Ｔｃ、Ｔｍが互いに異なる場合であっても、モータ制御装置１４が制御周期Ｔｃにしたがって移動指令Ｓでモータ１６を制御したときのモータ１６の状態と略同じとなるように、モータ１６を制御することができる。
【００４３】
また、２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）と、２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）に応じた２つの制御周期Ｔｍ（Ｔｍａ、Ｔｍｂ）とに基づいて、２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）の移動指令Ｓ（Ｓａ、Ｓｂ）から２つの移動指令Ｓ´（Ｓａ´、Ｓｂ´）が生成される。これにより、複数の数値制御装置１２とモータ制御装置１４との間で、制御周期Ｔｃ、Ｔｍが異なる場合であっても、モータ制御装置１４の負荷を軽減することができる。
【００４４】
次に、数値制御装置１２の動作を図４に示すフローチャートにしたがって説明する。この動作は、２つの数値制御装置１２の各々で実行される。ステップＳ１で、周期設定部２０は、数値制御装置１２による処理の負荷率に応じて制御周期Ｔｃを設定する。具体的には、数値制御装置１２ａの周期設定部２０は、数値制御装置１２ａの負荷率に応じて制御周期Ｔｃａを設定し、数値制御装置１２ｂの周期設定部２０は、数値制御装置１２ｂの負荷率に応じて制御周期Ｔｃｂを設定する。
【００４５】
次いで、ステップＳ２で、通信部２４は、ステップＳ１で設定された制御周期Ｔｃをモータ制御装置１４に送信するとともに、制御周期Ｔｃで移動指令Ｓを送信する。具体的には、数値制御装置１２ａの通信部２４は、ステップＳ１で設定された制御周期Ｔｃａをモータ制御装置１４に送信するとともに、制御周期Ｔｃａで移動指令Ｓａを送信する。また、数値制御装置１２ｂの通信部２４は、ステップＳ１で設定された制御周期Ｔｃｂをモータ制御装置１４に送信するとともに、制御周期Ｔｃｂで移動指令Ｓｂを送信する。なお、移動指令Ｓ（Ｓａ、Ｓｂ）は、数値制御装置１２（１２ａ、１２ｂ）の移動指令生成部２２によって、ステップＳ１で設定された制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）で順次生成される。
【００４６】
次に、モータ制御装置１４の動作を図５に示すフローチャートにしたがって説明する。ステップＳ１１で、通信部３０は、２つの数値制御装置１２（１２ａ、１２ｂ）から送信された２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）および移動指令Ｓ（Ｓａ、Ｓｂ）を受信する。
【００４７】
次いで、ステップＳ１２で、周期決定部３２は、ステップＳ１１で受信した２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）の各々に応じた２つの制御周期Ｔｍ（Ｔｍａ、Ｔｍｂ）を決定する。具体的には、周期決定部３２は、制御周期Ｔｃａより短い周期を制御周期Ｔｃａに応じた制御周期Ｔｍａとして決定するとともに、制御周期Ｔｃｂより短い周期を制御周期Ｔｃｂに応じた制御周期Ｔｍｂとして決定する。
【００４８】
次いで、ステップＳ１３で、指令生成部３４は、ステップＳ１１で受信した２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）とステップＳ１２で決定した２つの制御周期Ｔｍ（Ｔｍａ、Ｔｍｂ）とに基づいて、２つの制御周期Ｔｃ（Ｔｃａ、Ｔｃｂ）の移動指令Ｓ（Ｓａ、Ｓｂ）から、２つの制御周期Ｔｍ（Ｔｍａ、Ｔｍｂ）の移動指令Ｓ´（Ｓａ´、Ｓｂ´）を生成する。具体的には、指令生成部３４は、制御周期Ｔｃａと制御周期Ｔｍａとに基づいて、制御周期Ｔｃａの移動指令Ｓａから制御周期Ｔｍａの移動指令Ｓａ´を生成する。また、指令生成部３４は、制御周期Ｔｃｂと制御周期Ｔｍｂとに基づいて、制御周期Ｔｃｂの移動指令Ｓｂから制御周期Ｔｍｂの移動指令Ｓｂ´を生成する。
【００４９】
次いで、ステップＳ１４で、モータ制御部３６は、ステップＳ１３で生成された２つの移動指令Ｓ´（Ｓａ´、Ｓｂ´）にしたがって、モータ１６を制御する。具体的には、モータ制御部３６は、２つの移動指令Ｓ´（Ｓａ´、Ｓｂ´）を合算（重畳）した合算移動指令Ｓｓにしたがって、モータ１６を制御する。このとき、モータ制御部３６は、２つの制御周期Ｔｍ（Ｔｍａ、Ｔｍｂ）のうち、最も短い制御周期Ｔｍｂ以下の周期でモータ１６を制御する。
【００５０】
［実施の形態から得られる技術的思想］
上記実施の形態から把握しうる技術的思想について、以下に記載する。
【００５１】
＜第１の技術的思想＞
モータ制御装置（１４）は、複数の数値制御装置（１２）の各々から移動指令（Ｓ）と移動指令（Ｓ）の第１制御周期（Ｔｃ）とを受信する指令受信部（３０）と、複数の第１制御周期（Ｔｃ）と、複数の第１制御周期（Ｔｃ）の各々に応じた複数の第２制御周期（Ｔｍ）とに基づいて、複数の第１制御周期（Ｔｃ）の移動指令（Ｓ）から複数の第２制御周期（Ｔｍ）の移動指令（Ｓ´）を生成する指令生成部（３４）と、指令生成部（３４）で生成された複数の移動指令（Ｓ´）にしたがって、モータ（１６）を制御するモータ制御部（３６）と、を備える。
【００５２】
これにより、複数の数値制御装置（１２）とモータ制御装置（１４）との間で、制御周期（Ｔｃ、Ｔｍ）が異なる場合であっても、制御に必要なデータ数に過不足が発生したり、制御が遅れたりすることを防止することができる。そのため、速度変動や位置ずれ等が生じることを防止することができ、モータ（１６）の制御の安定性が低下することを防止することができる。また、モータ制御装置（１４）の負荷を軽減することができる。
【００５３】
モータ制御装置（１４）は、複数の第１制御周期（Ｔｃ）に基づいて、複数の第１制御周期（Ｔｃ）の各々に応じた複数の第２制御周期（Ｔｍ）を決定する周期決定部（３２）を備えてもよい。これにより、複数の第１制御周期（Ｔｃ）の各々に応じて適切な複数の制御周期（Ｔｍ）を決定することができる。したがって、モータ制御装置（１４）の負荷を軽減することができる。
【００５４】
周期決定部（３２）は、第１制御周期（Ｔｃ）より短い周期を、第１制御周期（Ｔｃ）に応じた第２制御周期（Ｔｍ）として決定してもよい。これにより、モータ（１６）の制御の安定性が低下することをさらに防止することができる。
【００５５】
周期決定部（３２）は、互いに異なる予め決められた複数の周期の中から、複数の第１制御周期（Ｔｃ）の各々に応じた複数の第２制御周期（Ｔｍ）を決定してもよい。これにより、様々な第１制御周期（Ｔｃ）または第１制御周期（Ｔｃ）の変化に対応することができる。
【００５６】
モータ制御部（３６）は、指令生成部（３４）で生成された複数の移動指令（Ｓ´）を合算した合算移動指令（Ｓｓ）にしたがって、モータ（１６）を制御してもよい。これにより、複数の数値制御装置（１２）によって、モータ（１６）を適切に制御することができる。
【００５７】
モータ制御部（３６）は、複数の第２制御周期（Ｔｍ）のうち、最も短い第２制御周期（Ｔｍ）以下の周期でモータ（１６）を制御してもよい。これにより、モータ（１６）の制御の安定性が低下することをさらに防止することができる。
【００５８】
＜第２の技術的思想＞
制御システム（１０）は、上記第１の技術的思想のモータ制御装置（１４）と、複数の数値制御装置（１２）とを備える。複数の数値制御装置（１２）の各々は、第１制御周期（Ｔｃ）を設定する周期設定部（２０）を備え、周期設定部（２０）は、数値制御装置（１２）による処理の負荷率に応じて第１制御周期（Ｔｃ）を設定する。
【００５９】
これにより、モータ（１６）の制御の安定性が低下することを防止することができ、モータ制御装置（１４）の負荷を軽減することができる。
【００６０】
＜第３の技術的思想＞
モータ（１６）を制御するモータ制御方法は、モータ制御装置（１４）が、複数の数値制御装置（１２）の各々から移動指令（Ｓ）と移動指令（Ｓ）の第１制御周期（Ｔｃ）とを受信する指令受信ステップと、モータ制御装置（１４）が、複数の第１制御周期（Ｔｃ）と、複数の第１制御周期（Ｔｃ）の各々に応じた複数の第２制御周期（Ｔｍ）とに基づいて、複数の第１制御周期（Ｔｃ）の移動指令（Ｓ）から複数の第２制御周期（Ｔｍ）の移動指令（Ｓ´）を生成する指令生成ステップと、モータ制御装置（１４）が、指令生成ステップで生成された複数の移動指令（Ｓ´）にしたがって、モータ（１６）を制御するモータ制御ステップと、を含む。
【００６１】
これにより、複数の数値制御装置（１２）とモータ制御装置（１４）との間で、制御周期（Ｔｃ、Ｔｍ）が異なる場合であっても、制御に必要なデータ数に過不足が発生したり、制御が遅れたりすることを防止することができる。そのため、速度変動や位置ずれ等が生じることを防止することができ、モータ（１６）の制御の安定性が低下することを防止することができる。また、モータ制御装置（１４）の負荷を軽減することができる。
【００６２】
モータ制御方法は、モータ制御装置（１４）が、複数の第１制御周期（Ｔｃ）に基づいて、複数の第１制御周期（Ｔｃ）の各々に応じた複数の第２制御周期（Ｔｍ）を決定する周期決定ステップを含んでもよい。これにより、複数の第１制御周期（Ｔｃ）の各々に応じて適切な複数の制御周期（Ｔｍ）を決定することができる。したがって、モータ制御装置（１４）の負荷を軽減することができる。
【００６３】
周期決定ステップは、第１制御周期（Ｔｃ）より短い周期を、第１制御周期（Ｔｃ）に応じた第２制御周期（Ｔｍ）として決定してもよい。これにより、モータ（１６）の制御の安定性が低下することをさらに防止することができる。
【００６４】
周期決定ステップは、互いに異なる予め決められた複数の周期の中から、複数の第１制御周期（Ｔｃ）の各々に応じた複数の第２制御周期（Ｔｍ）を決定してもよい。これにより、様々な第１制御周期（Ｔｃ）または第１制御周期（Ｔｃ）の変化に対応することができる。
【００６５】
モータ制御ステップは、指令生成ステップで生成された複数の移動指令（Ｓ´）を合算した合算移動指令（Ｓｓ）にしたがって、モータ（１６）を制御してもよい。これにより、複数の数値制御装置（１２）によって、モータ（１６）を適切に制御することができる。
【００６６】
モータ制御ステップは、複数の第２制御周期（Ｔｍ）のうち、最も短い第２制御周期（Ｔｍ）以下の周期でモータ（１６）を制御してもよい。これにより、モータ（１６）の制御の安定性が低下することをさらに防止することができる。
【００６７】
モータ制御方法は、複数の数値制御装置（１２）が、数値制御装置（１２）による処理の負荷率に応じて複数の第１制御周期（Ｔｃ）を設定する周期設定ステップを含んでもよい。これにより、モータ（１６）の制御の安定性が低下することを防止することができる。
【符号の説明】
【００６８】
１０…制御システム                      １２（１２ａ、１２ｂ）…数値制御装置
１４…モータ制御装置                    １６…モータ
１８…センサ                            ２０…周期設定部
２２…移動指令生成部                    ２４…通信部（指令送信部）
３０…通信部（指令受信部）              ３２…周期決定部
３４…指令生成部                        ３６…モータ制御部
Ｓ（Ｓａ、Ｓｂ）、Ｓ´（Ｓａ´、Ｓｂ´）…移動指令
Ｔｃ（Ｔｃａ、Ｔｃｂ）…制御周期（第１制御周期）
Ｔｍ（Ｔｍａ、Ｔｍｂ）…制御周期（第２制御周期）
【図１】
2019088100.tif 000003
【図２】
2019088100.tif 000004
【図３】
2019088100.tif 000005
【図４】
2019088100.tif 000006
【図５】
2019088100.tif 000007