(57)【要約】【課題】マスタユニットとスレーブユニットとの構成及び処理を共通化すること、マスタユニットとスレーブユニットとの間で時刻情報を伝達するための専用通信ラインを不要とすること、スレーブユニットの追加や各ユニット間の関係の変更においてパラメータの変更を不要とすること。【解決手段】数値制御システム１の形態において、数値制御装置１０は、制御軸の制御開始時刻を記憶する記憶手段２と、外部から発信される時刻情報を受信すると共に、該時刻情報に同期して補間開始信号を出力する時刻情報受信手段３と、補間開始信号を受信すると共に、記憶手段に記憶された制御開始時刻と時刻情報が一致した時にサーボ制御部に対する移動指令出力を開始する移動指令出力手段４とを有する。複数の数値制御装置１０は、外部からの時刻情報に基づいて各制御軸を駆動する。【選択図】  図１
2005018605.tif 000002
【特許請求の範囲】
【請求項１】
複数の数値制御装置同士でそれぞれの制御軸を同期して制御する数値制御システムであって、
前記数値制御装置は、前記制御軸の制御開始時刻を記憶する記憶手段と、
外部から発信される時刻情報を受信すると共に、該時刻情報に同期して補間開始信号を出力する時刻情報受信手段と、
前記補間開始信号を受信すると共に、前期記憶手段に記憶された制御開始時刻と時刻情報が一致した時にサーボ制御部に対する移動指令出力を開始する移動指令出力手段とを有し、
前記外部からの時刻情報に基づいて前記複数の数値制御装置が制御軸を駆動することを特徴とする数値制御システム。
【請求項２】
複数の数値制御装置同士でそれぞれの制御軸を同期して制御する数値制御システムであって、
前記数値制御装置は、前記制御軸の制御開始時刻を記憶した記憶手段と、
外部から発信される時刻情報を受信すると共に、該時刻情報に同期してパルスを発生する時刻情報受信手段と、
クロックによってカウントアップされ、所定の値の時にカウントをリセットして補間開始信号を出力すると共に、前記パルスを受信するとカウントをリセットし補間開始信号を出力するカウンタと、
前記補間開始信号を受信すると共に、前期記憶手段に記憶された制御開始時刻と時刻情報が一致した時にサーボ制御部に対する移動指令出力を開始する移動指令出力手段とを有し、
前記外部からの時刻情報に基づいて前記複数の数値制御装置が制御軸を駆動することを特徴とする数値制御システム。
【請求項３】
複数の数値制御装置同士でそれぞれの制御軸を同期して制御する数値制御システムであって、
前記数値制御装置は、前記制御軸の制御開始時刻を記憶した記憶手段と、
外部から発信される時刻情報を受信すると共に、該時刻情報に同期してパルスを発生する時刻情報受信手段と、
クロックによってカウントアップされ、所定の値の時にカウントをリセットし補間開始信号を出力すると共に、前記パルスを受信した時、カウント値をレジスタに出力するカウンタと、
該カウント値を格納するレジスタと、
前期記憶手段に記憶された制御開始時刻と時刻情報が一致した時、前記レジスタの値に基づきサーボ制御部に対する移動指令出力を開始する移動指令出力手段とを有し、
前記外部からの時刻情報に基づいて前記複数の数値制御装置が制御軸を駆動することを特徴とする数値制御システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、数値制御装置に関し、特に複数の数値制御装置の同期運転に関する。
【０００２】
【従来の技術】
輪転機、包装機、塗装機などの多数軸を同期して駆動させる必要がある機械装置を複数の数値制御装置により制御する場合がある。このような複数の数値制御装置によって制御される軸の同期を取る方法として、マスタとなる１台の数値制御装置から各軸への移動指令等のデータをスレーブとなる各数値制御装置に伝送して同期制御を行う方法が公知であり、また、電子カムといわれるような、基準となる軸の位置情報を各数値制御装置に伝送し、この基準となる軸の情報に基づいて、各数値制御装置がそれぞれ制御する軸の位置等を制御する方法も公知である。
【０００３】
この基準となる軸の位置情報を各数値制御装置に伝送する方法では、外部パルス同期方式と内部パルス同期方式がある。外部パルス同期方式は、外部に基準となるマスタ軸を設け、このマスタ軸の位置を示すパルスをパルス発生器から発生させ、このパルスをスレーブとなる各数値制御装置に入力する。各スレーブユニットを構成する各数値制御装置は、入力されたマスタ軸の位置からそれぞれの数値制御装置が制御する軸の位置を割り出して位置決め制御を行うことで、同期してスレーブ軸を制御する。
【０００４】
また、内部パルス同期方式は、外部にマスタ軸を設けず、一台の数値制御装置をマスタユニットとし他の数値制御装置をスレーブユニットとする。マスタユニットによって仮想のマスタ軸を制御して仮想マスタ軸の位置を示すパルス発生手段から基準となるパルスを発生させ、マスタユニットはこのパルスを各スレーブユニットの数値制御装置に出力する。各スレーブユニットは、入力された仮想マスタ軸の位置から、各スレーブ軸の位置を割り出して位置決め制御を行う。
【０００５】
この外部パルス同期方式では、外部にカムシャフトのような実際に動作するものが必要であり、コストや保守面で不利である。一方、内部パルス同期方式では、外部にカムシャフト等を設ける必要はないが、マスタユニットで仮想マスタ軸の位置を制御しなければならないので複雑な制御が必要となり、マスタユニットが制御する実際の制御軸の軸数は仮想マスタ軸の軸数分だけ減ってしまうという問題がある。
【０００６】
また、上記の問題の他に、スレーブ軸同士の同期を制御することができないといった問題や同期をとる区間と同期をとらない区間とを分けて制御することができないという問題もある。また、オーバードライブ時において、スレーブ軸についてのオーバードライブを選択的に制御することができないという問題もある。
このような問題を解決して、スレーブ軸をマスタ軸に対して同期、非同期を自由にすることができる数値制御装置として、特許文献１が知られている。
【０００７】
この同期制御は、同期運転させたい複数の数値制御装置の内の１つをマスタユニットとし他の数値制御装置をスレーブユニットとし、マスタユニットによりクロックからのクロック信号をカウントして時計情報を生成する。この時計情報をスレーブユニットに出力し、かつ自身の時計情報格納用メモリに格納する。スレーブユニットは、受信した時計情報を自身の時計情報格納用メモリに格納する。マスタユニット及びスレーブユニットのＰＭＣ用プロセッサは、時計情報格納メモリに格納された時計情報に基づいて同期させる軸の動作プログラムを起動させ、同期運転を実行させる。
【０００８】
図７は、従来の数値制御装置の同期制御を説明するための概略図である。
多数の軸を複数の数値制御装置によって分割して制御し、かつ、これらの軸を同期制御するものである。複数の数値制御装置の内の１台をマスタユニット１００とし、他の数値制御装置をスレーブユニット２００，３００，…としている。なお、図７では、マスタユニット１００と、２台のスレーブユニット２００，３００のみを示している。マスタユニット１００及び各スレーブユニット２００、３００には、サーボアンプＡを介して軸を駆動するモータＭが複数接続されている。
【０００９】
マスタユニット１００は、通常の数値制御装置とほぼ同一の構成であるが、時計情報を生成するカウンタ１９、該時計情報をスレーブユニット２００，３００，…に伝送するドライバ２０、時計情報を格納する時計情報格納用メモリ１８を備える。
【００１０】
クロック（水晶発振器等）１１からのクロック信号より、ＩＴＰ生成手段１２は動作の基本単位時間（以下ＩＴＰという）のパルスを生成する。また、カウンタ１９はクロック１１からのクロック信号をカウントして時計情報を作成し、ドライバ２０は、この時計情報を各スレーブユニット２００，３００，…にケーブル３０を介して伝送する。さらに、この時計情報は数値制御装置用プロセッサ（ＣＮＣＣＰＵ）（以下ＣＮＣ用プロセッサという）１３によって読み込まれ、時計情報格納用メモリ１８に格納される。
【００１１】
以上のように、カウンタ１９とクロック１１によって、時計情報生成手段を構成している。プログラム格納用メモリ１４には、ＣＮＣ用プロセッサ１３が実行するパートプログラムが格納記憶され、また、ラダープログラム格納用メモリ１６には、プログラマブルコントローラ用プロセッサ（ＰＭＣＣＰＵ）（以下、ＰＭＣ用プロセッサという）１７が実行するラダープログラム、プログラマブルコントローラ用の軸制御プログラムが格納されている。これら各メモリに格納されるプログラムは、図示しない表示装置付き操作盤等から入力設定しても、又、通信インターフェースを介してホストコンピュータから転送入力しても、更には、紙テープ、フロッピー（登録商標）ディスク、ＩＣカード等より読み込まれ前記メモリ１４，１６に格納されるものである。
【００１２】
ＰＭＣ用プロセッサ１７は、時計情報格納用メモリ１８に格納された時計情報とラダープログラム格納用メモリ１６に格納されたラダープログラムから、プログラム格納用メモリ１４に格納されたパートプログラム、又はラダープログラム格納用メモリ１６に格納されたプログラマブルコントローラ用の軸制御プログラムを起動させる。
【００１３】
ＣＮＣ用プロセッサ１３は、起動されたプログラムにより、ＩＴＰ生成手段１２から出力されるパルスのＩＴＰ単位での各軸（マスタユニットが制御する軸）の動作量を計算し求め、軸制御プロセッサ１５に出力する。軸制御プロセッサ１５は、サーボアンプＡを介して各軸のモータＭを駆動制御する。
【００１４】
スレーブユニット２００，３００，…は、マスタユニット１００と同様に、クロック１１，ＩＴＰ生成手段１２，ＣＮＣ用プロセッサ１３，プログラム格納用メモリ１４，軸制御プロセッサ１５，ラダープログラム格納用メモリ１６，ＰＭＣ用プロセッサ１７，時計情報格納用メモリ１８を備える点はマスタユニットと同一である。
【００１５】
スレーブユニット２００，３００，…は、マスタユニット１００が備える時計情報生成手段（カウンタ１９及びドライバ２０）に代えてケーブル３０に接続されるレシーバ２１を備え、マスタユニット１００のドライバ２０及びケーブル３０等の伝送手段により伝送される時計情報を受信する。
【００１６】
ケーブル３０を介してレシーバ２１に受信された時計情報はＣＮＣ用プロセッサ１３で読み込まれ、時計情報格納用メモリ１８に格納される。この格納された時計情報とラダープログラム格納用メモリ１６に格納されたラダープログラムからプログラムが起動され、前述したマスタユニット１００の動作と同様の動作処理によって各スレーブユニット２００，３００，…の各軸を駆動制御する。なお、各スレーブユニット２００，３００，…のプログラム格納用メモリ１４には、予め、各スレーブユニットのＣＮＣ用プロセッサが実行するパートプログラムが格納されている。又、各スレーブユニット２００，３００，…のラダープログラム格納用メモリ１６には、各スレーブユニット用のラダープログラム及びプログラマブルコントローラ用の軸制御プログラムが格納されている。
【００１７】
以上の構成により、マスタユニット１００，各スレーブユニット２００，３００，…は、時計情報に基づいて各プログラムを起動し制御し、この時計情報に基づいてマスタユニット１００，各スレーブユニット２００，３００，…で制御される各軸の同期制御を可能としている。
【００１８】
【特許文献１】
特開２００１−２７９０４号
【００１９】
【発明が解決しようとする課題】
上記したように、スレーブユニットはマスタユニットが備える時計情報生成手段に代えたレシーバ２１により時計情報を受信するなど、マスタユニットとスレーブユニットでは異なった構成及び処理が必要であるという問題がある。
また、時計情報を伝達するためにマスタユニットとスレーブユニットとを接続する専用の通信ラインが必要であるという問題がある。
【００２０】
また、マスタユニットとスレーブユニットとの関係を設定して同期システムを構築した後は、この同期システムに新たにスレーブユニットを追加したり、マスタユニットとスレーブユニットとの関係を変更する場合には、既存の全ユニットのパラメータを変更する必要があるという問題がある。
【００２１】
そこで、本発明は前記した従来の問題点を解決し、マスタユニットとスレーブユニットとの構成及び処理を共通化することも目的とし、また、マスタユニットとスレーブユニットとの間において、時計情報を伝達するための専用通信ラインを不要とすることを目的とする。また、スレーブユニットの追加や各ユニット間の関係の変更においてパラメータの変更を不要とすることを目的とする。
【００２２】
【課題を解決するための手段】
本発明は、無線により配信される時刻情報を利用して複数の数値制御装置を同期運転するものであり、マスタユニットとスレーブユニットに係わらず共通に配信される時刻情報を用いて同期をとることにより、いずれの数値制御装置においても共通の構成及び処理とすることができるものであり、マスタユニットとスレーブユニットの階層性を有しない構成とするものである。
また、無線により配信される時刻情報を用いることにより、同期をとる複数の数値制御装置間において時計情報を伝達するための専用通信ラインは不要となる。
【００２３】
また、同期制御を行う複数の数値制御装置を含む数値制御システムにおいて、当該数値制御システムに新たに数値制御装置を追加する場合や、当該数値制御システムの構成を変更する場合であっても、既存の数値制御装置は追加された数値制御装置や他の数値制御装置との関係において同期制御の関係は独立しているため、同期制御するために個々のパラメータの変更を不要とすることができる。
【００２４】
本発明の数値制御システムは、複数の数値制御装置同士でそれぞれの制御軸を同期して制御する数値制御システムであり、複数の形態とすることができる。
本発明の数値制御システムの第１の形態において、数値制御装置は、制御軸の制御開始時刻を記憶する記憶手段と、外部から発信される時刻情報を受信すると共に、該時刻情報に同期して補間開始信号を出力する時刻情報受信手段と、補間開始信号を受信すると共に、記憶手段に記憶された制御開始時刻と時刻情報が一致した時にサーボ制御部に対する移動指令出力を開始する移動指令出力手段とを有する。複数の数値制御装置は、外部からの時刻情報に基づいて各制御軸を駆動する。
【００２５】
移動指令出力手段は、制御開始時刻と時刻情報が一致した時点で、サーボ制御部に対して移動指令出力を開始する。これにより、複数の数値制御装置間において制御開始の同期をとることができる。
【００２６】
本発明の数値制御システムの第２の形態において、数値制御装置は、制御軸の制御開始時刻を記憶した記憶手段と、外部から発信される時刻情報を受信すると共に、該時刻情報に同期してパルスを発生する時刻情報受信手段と、補間開始信号を出力するカウンタと、補間開始信号を受信すると共に記憶手段に記憶された制御開始時刻と時刻情報が一致した時にサーボ制御部に対する移動指令出力を開始する移動指令出力手段とを有する。複数の数値制御装置は、外部からの時刻情報に基づいて各制御軸を駆動する。
【００２７】
カウンタは、クロックによってカウントアップされ、カウント値が所定の値に達した時、及び時刻情報に同期して発せられるパルスを受信した時に、カウントをリセットし補間開始信号を出力する。
移動指令出力手段は、制御開始時刻と時刻情報が一致した時点で、サーボ制御部に対して移動指令出力を開始する。これにより、複数の数値制御装置間において制御開始の同期をとることができる。
【００２８】
本発明の数値制御システムの第３の形態において、数値制御装置は、制御軸の制御開始時刻を記憶した記憶手段と、外部から発信される時刻情報を受信すると共に、該時刻情報に同期してパルスを発生する時刻情報受信手段と、補間開始信号を出力するカウンタと、カウンタの値を格納するレジスタと、記憶手段に記憶された制御開始時刻と時刻情報が一致した時、レジスタの値に基づきサーボ制御部に対する移動指令出力を開始する移動指令出力手段とを有する。
【００２９】
カウンタは、クロックによってカウントアップされ、カウント値が所定の値に達した時にカウントをリセットし補間開始信号を出力し、パルスを受信した時にカウント値をレジスタに出力する。
【００３０】
各数値制御装置は個々に補間開始信号を出力し互いにずれた状態のままである。移動指令出力手段は、制御開始時刻と時刻情報が一致した時点で、レジスタの値に基づきサーボ制御部に対する移動指令出力を出力する。この移動指令出力は、モータ位置を目標位置に追従させるソフト制御を行い、これにより複数の数値制御装置間の同期をとることができる。
【００３１】
【発明の実施の形態】
以下、本発明の実施の形態について、図を参照しながら詳細に説明する。
図１は本発明の数値制御システムの第１の形態を説明するためのブロック図である。
第１の形態は、複数の数値制御装置同士でそれぞれの制御軸を同期して制御する数値制御システムであって、同期運転を行う全ての数値制御装置の補間開始信号（ＩＴＰ）を時刻情報と同期させることにより同期運転を行う形態である。この第１の形態では、時刻情報の配信周期は補間開始信号（ＩＴＰ信号）の周期よりも短周期である場合を想定しており、配信された時刻情報をそのまま補間開始信号（ＩＴＰ信号）として用いる。
【００３２】
図１において、数値制御システム１は、多軸同期制御を行いたい複数の数値制御装置（ＣＮＣ）１０とサーボアンプＡとモータＭにより構成され、各制御軸を制御する。
【００３３】
数値制御システム１を構成する全ての数値制御装置１０は、各制御軸の制御開始時刻等のパラメータを記憶する記憶手段２と、外部から発信される時刻情報を受信すると共に、受信した時刻情報に同期して補間開始信号（ＩＴＰ）を出力する時刻情報受信手段３と、補間開始信号（ＩＴＰ）を受信すると共に、記憶手段２に記憶された制御開始時刻と時刻情報が一致した時にサーボ制御手段５に対する移動指令出力ΔＸｉを開始する移動指令出力手段４とを備える。
【００３４】
時刻情報受信手段３は、配信される時刻情報に同期した信号（例えば１秒毎に発生するパルスＲ１）を受け取る。なお、配信される時刻情報としては、例えばＪＪＹ（独立行政法人通信総合研究所登録商標第４３５５７４９号）の原子時計の時刻情報を利用することができるが、これに限らず他の時刻情報同期サービスを用いることもできる。
【００３５】
時刻情報受信手段３は、配信される時刻情報に同期した信号をそのまま補間開始信号（ＩＴＰ信号）として移動指令出力手段４に出力する。これにより、数値制御装置システム１を構成する全ての数値制御装置１０の補間開始信号（ＩＴＰ信号）は時刻情報同期サービス９が配信する時刻情報に同期するため、結果として複数の数値制御装置１０の補間開始信号（ＩＴＰ信号）は同期することになる。
【００３６】
また、記憶手段２にはモータ制御を開始する制御開始時刻Ｔ０が記憶される。時刻がこの制御開始時刻Ｔ０になると、移動指令出力手段４は、この制御開始時刻と、配信された時刻情報とを比較し、一致した時点でサーボ制御手段５に対して移動指令出力ΔＸｉを開始してモータ制御を開始し、これにより同時に制御が開始される。
【００３７】
図２は本発明の数値制御システムの第２の形態を説明するためのブロック図である。
第２の形態は、複数の数値制御装置同士でそれぞれの制御軸を同期して制御する数値制御システムであって、第１の形態と同様に、同期運転を行う全ての数値制御装置の補間開始信号（ＩＴＰ）を時刻情報と同期させることにより同期運転を行う形態である。この第２の形態では、時刻情報の配信周期は補間開始信号（ＩＴＰ信号）の周期よりも長周期である場合を想定しており、クロック及びカウンタを用い、配信された時刻情報を元にして周期の短い補間開始信号（ＩＴＰ信号）を形成する。
【００３８】
図２において、数値制御システム１は、多軸同期制御を行いたい複数の数値制御装置（ＣＮＣ）１０とサーボアンプＡとモータＭにより構成され、各制御軸を制御する。
【００３９】
数値制御システム１を構成する全ての数値制御装置１０は、各制御軸の制御開始時刻等のパラメータを記憶する記憶手段２と、外部から発信される時刻情報を受信すると共に、受信した時刻情報に同期してパルスＲ１を出力する時刻情報受信手段３と、クロック６と、補間開始信号（ＩＴＰ信号）を出力するカウンタ７と、カウンタ７から補間開始信号（ＩＴＰ信号）を受信すると共に、記憶手段２に記憶された制御開始時刻と時刻情報が一致した時にサーボ制御手段５に対する移動指令出力ΔＸｉを開始する移動指令出力手段４とを備える。
【００４０】
カウンタ７のカウントアップは、クロック６からのクロック信号により行われる。また、カウンタ７は、カウント値が予め設定された設定値Ｂ０に達するとリセットされ、補間開始信号（ＩＴＰ信号）を発生する。また、カウンタ７は、時刻情報受信手段３から配信された時刻情報に同期した信号（例えば１秒毎に発生するパルスＲ１）を受け取ると、内部カウンタをリセットすると同時に補間開始信号（ＩＴＰ信号）を発生させる。なお、配信される時刻情報としては、前記した第１の形態と同様の原子時計の時刻情報等を利用することができる。
【００４１】
カウンタ７は、配信される時刻情報により同期が取られた信号を補間開始信号（ＩＴＰ信号）として移動指令出力手段４に出力する。これにより、数値制御システム１を構成する全ての数値制御装置１０の補間開始信号（ＩＴＰ信号）は時刻情報同期サービス９が配信する時刻情報に同期するため、結果として複数の数値制御装置１０の補間開始信号（ＩＴＰ信号）は同期することになる。
【００４２】
また、前記した第１の形態と同様に、記憶手段２にはモータ制御を開始する制御開始時刻Ｔ０が記憶される。移動指令出力手段４は、この制御開始時刻と配信された時刻情報とを比較し、時刻情報がこの制御開始時刻Ｔ０に一致した時点でサーボ制御手段５に対して移動指令出力ΔＸｉを開始してモータ制御を開始し、これにより全ての数値制御装置１０は同時に制御が開始される。
【００４３】
図３は本発明の数値制御システムの第３の形態を説明するためのブロック図である。
第３の形態は、複数の数値制御装置同士でそれぞれの制御軸を同期して制御する数値制御システムであって、同期運転を行う各数値制御装置の補間開始信号（ＩＴＰ）は個々に有し、互いにずれた状態のままとし、ソフト処理によって同期運転を行う形態である。
【００４４】
図３において、数値制御システム１は、多軸同期制御を行いたい複数の数値制御装置（ＣＮＣ）１０とサーボアンプＡとモータＭにより構成され、各制御軸を制御する。
数値制御システム１を構成する全ての数値制御装置１０は、各制御軸の制御開始時刻等のパラメータを記憶する記憶手段２と、外部から発信される時刻情報を受信し、この時刻情報と同期したパルスを出力する時刻情報受信手段３と、補間開始信号（ＩＴＰ信号）を出力するカウンタ７、クロック６、レジスタ８、移動指令出力手段４、サーボ制御手段５で構成される。
【００４５】
カウンタ７は、クロック６によってカウントアップされるが、カウンタ値が予め設定されたＢ０に達するとリセットされ、ＩＴＰ信号を発生させるように構成する。
カウンタ７は時刻情報受信手段３より原子時計の時刻情報に同期した信号（例えば１秒毎に発生するパルスＲ１）を受け取ると、その時のカウンタ値をレジスタＥに格納する。
【００４６】
移動指令出力手段４のＣＰＵは、まず、時刻情報の時刻の関数として目標位置を算出する。次に、レジスタ８の値を使用し、補正のアルゴリズムに従った計算により移動指令ΔＸｉを求め、サーボ制御手段５に出力することで、モータ位置を目標位置に追従させる。
【００４７】
全ての数値制御装置１０がこの操作を行うことで同期運転を実現する。また、数値制御システム１を構成する全ての数値制御装置１０のパラメータ格納用の記憶手段２にはモータ制御を開始する開始時刻Ｔ０が記憶される。移動指令出力手段４は、時刻情報の時刻と開始時刻Ｔ０とを比較し、時刻情報の時刻と開始時刻Ｔ０に一致するとモータ制御を開始する。これにより全ての数値制御装置１０は同時に制御が開始される。
【００４８】
次に、前記した第３の形態において、移動指令出力手段が行うモータ位置を目標位置に追従させる処理について説明する。
図４は目標位置及び移動指令出力手段がサーボ制御手段に渡す移動指令と、補間開始信号（ＩＴＰ信号）、時刻情報に同期して得られる信号（Ｒ１）信号、及びカウンタのカウント値との関係を示している。
以下、移動指令出力手段が備えるプロセッサ（ＣＰＵ）が行う手順に従って説明する。
【００４９】
はじめに、プロセッサは目標値を算出する。この目標値は、取得した時刻情報の時刻の関数として算出することができる。図４（ａ）は、横軸に記憶手段に格納される開始時刻を原点とする時刻情報による時刻ｔをとり、縦軸に位置Ｘをとる。位置Ｘは時刻の関数であり、横軸の時刻情報のよる時刻ｔに対して計算される位置を表しており、数値制御装置が備える移動プログラムに従って算出することができる。
【００５０】
図４（ｃ）は時刻情報に同期したＲ１信号であって、例えば、図４（ａ）の原点と同期した所定の周期Δｔａの信号である。
また、図４（ｄ）はカウンタ７のカウント値の時間変化を示している。カウンタ７はクロック６が発生するクロック信号をカウントアップし、そのカウント値が所定値Ｂ０に達する度にリセットされると共に、補間開始信号（ＩＴＰ信号）を発生する。なお、図４では、ある数値制御装置の補間開始信号（ＩＴＰ信号）を「ＩＴＰ′」で表している。この補間開始信号ＩＴＰ′は必ずしも時刻情報と同期していないため、時刻情報と同期して得られるＲ１信号とは同期していない。そのため、図４（ｃ）のＲ１信号が発生したとき、図４（ｄ）のカウンタ７のカウント値は、Ｒ１信号の周期Δｔａやクロック信号の周期等によりＢ１あるいはＢ２の値をとることになる。
【００５１】
この補間開始信号ＩＴＰ′の周期Δｔ（ＩＴＰ′）は、以下の式により計算することができる。
2005018605.tif 000003
なお、ΔｔａはＲ１信号の周期、ｎはΔｔａ／Δｔ（ＩＴＰ）、Δｔ（ＩＴＰ）は補間開始信号（ＩＴＰ信号）の信号周期（設計値）、Δｔ（ＩＴＰ′）は補間開始信号（ＩＴＰ′信号）の信号周期（実測値）、ΔはΔｔａとｎ・Δｔ（ＩＴＰ′）の差である。
【００５２】
次に、Δｔ（ＩＴＰ′）とＢ２により、補間開始信号（ＩＴＰ′信号）が発生する時刻を算出し、その時刻における移動指令ΔＸｉを計算し、サーボ制御手段５に渡す。図４（ａ）に、隣り合う補間開始信号（ＩＴＰ′信号）発生時における目標位置の差から得られる移動指令ΔＸｉを示している。上記した手順によって、目標位置への追従が行われる。
実際には、演算で得られた補間開始信号の発生時刻と、実際の補間開始信号の発生時刻との間にはずれが発生する。図４は、計算値が実測値よりも早い場合を示している。
【００５３】
この場合には、Ｒ１信号が入る前に、サーボ制御手段５に渡されるべき移動指令ΔＸｉが渡されていないので、モータの位置は目標位置に対して遅れている。この遅れが累積されると、モータの位置が目標位置からずれることになる。この位置ずれを解消するため、Ｒ１信号が入った後の最初の補間開始信号（ＩＴＰ′信号）の発生時刻に、この遅れ分を追加するように、サーボ制御手段５に移動指令を渡す。
【００５４】
図５はこの実際の補間開始信号（ＩＴＰ′信号）の発生時刻が計算値よりも遅れた場合の補正を説明するための図である。
時刻ｔ１，ｔ３は、前回Ｒ１信号が入った時刻ｔ０において、前記式（１），（２）により計算した補間開始信号（ＩＴＰ′信号）の発生時刻である。Ｒ１信号が入り前の時刻ｔ１にサーボ制御手段５に渡されるべき移動指令ΔＸｉは時刻ｔ３での目標位置Ｘ（ｔ３）と時刻ｔ１での目標位置Ｘ（ｔ１）の差として次式で表される。
【００５５】
ΔＸｉ＝Ｘ（ｔ３）−Ｘ（ｔ１）      …（３）
ところが、実際の補間開始信号（ＩＴＰ′信号）の周期が計算値より長かったため、実際に補間開始信号（ＩＴＰ′信号）が発生する時刻、ｔ１より遅れ、Ｒ１信号の発生時刻より後のｔ２となる。
【００５６】
Ｒ１信号が発生すると、プロセッサは前記式（１），（２）により補間開始信号（ＩＴＰ′信号）を計算し直し、補間開始信号（ＩＴＰ′信号）が発生する時刻ｔ２とｔ４を得る。
時刻ｔ２でサーボ制御手段５に渡される移動指令はＸ（ｔ４）−Ｘ（ｔ２）に、実際の補間開始信号（ＩＴＰ′信号）が発生する事項が計算値より遅れたために渡されていないＸ（ｔ２）−Ｘ（ｔ１）を加えたＸ（ｔ４）−Ｘ（ｔ１）となる。Ｒ１信号が発生する毎にこの補正を行うことにより、誤差の累積を防ぐことができ、実際の位置を目標位置に追従させることができる。
【００５７】
なお、計算値と実測値の順序が逆になった場合にも同様な補正を行う。この場合、Ｒ１信号が発生する前に渡しすぎた移動指令を、Ｒ１信号発生後、最初に渡す移動指令から減算してサーボ制御手段５に渡す。
図６は、この実際の補間開始信号（ＩＴＰ′信号）の発生時刻が計算値よりも早くなった場合の補正を説明するための図である。
【００５８】
時刻ｔ１２，ｔ１４は前回Ｒ１信号が入った時刻ｔ０において式（１），（２）より計算した補間開始信号（ＩＴＰ′信号）の発生時刻である。Ｒ１信号が入る前の時刻ｔ１１では、プロセッサは、「Ｒ１信号が入る前にもう補間開始信号（ＩＴＰ′信号）が発生しないはず」と判断していたが、実際の補間開始信号（ＩＴＰ′信号）の周期が計算値より短かったため補間開始信号（ＩＴＰ′信号）がはいってしまったので、移動指令ΔＸｉを次式のように計算し、いったんサーボ制御手段５に渡す。
【００５９】
ΔＸｉ＝Ｘ（ｔ１４）−Ｘ（ｔ１２）          …（４）
Ｒ１信号が発生すると、プロセッサは式（１），（２）により補間開始信号（ＩＴＰ′信号）を計算し直し、補間開始信号（ＩＴＰ′信号）が発生する時刻ｔ１３とｔ１５を得る。時刻ｔ１３でサーボ制御手段５に渡される移動指令はＸ（ｔ１５）−Ｘ（ｔ１３）に、実際の補間開始信号（ＩＴＰ′信号）が発生する時刻が計算値より早くなったためにすでに渡してしまったＸ（ｔ１４）−Ｘ（ｔ１３）を引いたＸ（ｔ１５）−Ｘ（ｔ１４）となる。
【００６０】
Ｒ１信号が発生する毎にこの補正を行うことで、誤差の累積を防ぐことができるので、実際の位置を目標位置に追従させることができる。
以上により、モータ位置は目標位置に追従する。この操作を行うことで全ての数値制御装置が時刻情報の関数である目標位置に追従するので、同期運転を行うことが可能である。なお、Ｒ１信号発生直後にΔＸｉの補正を一度に行うことで、大きな変位変動が発生するような場合には、補正値を分割し複数の補間開始信号（ＩＴＰ′信号）に渡って少しずつ補正することで解消することができる。
【００６１】
【発明の効果】
以上説明したように、本発明によれば、マスタユニットとスレーブユニットとの構成及び処理を共通化することができる。また、マスタユニットとスレーブユニットとの間において、時刻情報を伝達するための専用通信ラインを不要とすることができる。また、スレーブユニットの追加や各ユニット間の関係の変更においてパラメータの変更を不要とすることができる。
【図面の簡単な説明】
【図１】本発明の数値制御システムの第１の形態を説明するためのブロック図である。
【図２】本発明の数値制御システムの第２の形態を説明するためのブロック図である。
【図３】本発明の数値制御システムの第３の形態を説明するためのブロック図である。
【図４】目標位置、補間開始信号（ＩＴＰ信号）、Ｒ１信号、及びカウンタのカウント値との関係を示す図である。
【図５】実際の補間開始信号（ＩＴＰ′信号）の発生時刻が計算値よりも遅れた場合の補正を説明するための図である。
【図６】実際の補間開始信号（ＩＴＰ′信号）の発生時刻が計算値よりも早くなった場合の補正を説明するための図である。
【図７】従来の数値制御装置の同期制御を説明するための概略図である。
【符号の説明】
１  数値制御システム
２  記憶手段
３  時刻情報受信手段
４  移動指令出力手段
５  サーボ制御手段
６  クロック
７  カウンタ
８  レジスタ
９  時刻情報同期サービス
１０  数値制御装置
１１  クロック
１２  ＩＴＰ生成手段
１３  ＣＮＣ用プロセッサ
１４  プログラム格納用メモリ
１５  軸制御プロセッサ
１６  ラダープログラム格納用メモリ
１７  ＰＭＣ用プロセッサ
１８  時計情報格納用メモリ
１９  カウンタ
２０  ドライバ
２１  レシーバ
３０  ケーブル
１００  マスタユニット
２００  スレーブユニット
３００  スレーブユニット
Ａ  サーボアンプ
Ｍ  モータ
【図１】
2005018605.tif 000004
【図２】
2005018605.tif 000005
【図３】
2005018605.tif 000006
【図４】
2005018605.tif 000007
【図５】
2005018605.tif 000008
【図６】
2005018605.tif 000009
【図７】
2005018605.tif 000010