(57)【要約】【課題】総伝送時間を低減してＮＣ装置と複数のサーボアンプとのシリアル通信を実行する方法を提供する。【解決手段】ＮＣ装置を双方向のシリアル通信ケーブル４１、４２、４３、４４、４５、４６を介してループ構成で複数のサーボアンプへ接続する。ＮＣ装置中の指令データを前半と後半へ分割し、指令データ前半をＮＣ装置から反時計回りに出力し同時に指令データ後半部分をＮＣ装置から時計回りに出力して複数のサーボアンプの一つへ送信する。複数のサーボアンプの前記一つにおけるフィードバックデータを前半と後半へ分割し、指令データ前半に応答してフィードバックデータ前半を反時計回りに出力し指令データ後半に応答してフィードバックデータ後半を時計回りに出力してＮＣ装置へ送信する。【選択図】  図４
2008165745.tif 000002
【特許請求の範囲】
【請求項１】
ＮＣ装置と複数のサーボアンプとのシリアル通信方法において、
前記ＮＣ装置を双方向シリアル通信ケーブルを介してループ構成で前記複数のサーボアンプへ接続するステップと、
前記ＮＣ装置中の指令データを第１の部分と第２の部分へ分割するステップと、
指令データの前記第１の部分を前記ＮＣ装置から前記複数のサーボアンプの一つへ反時計回りに出力し同時に、指令データの前記第２の部分を前記ＮＣ装置から複数のサーボアンプの前記一つへ時計回りに出力するステップと、
複数のサーボアンプの前記一つにおけるフィードバックデータを第１の部分と第２の部分へ分割するステップと、
指令データの前記第１の部分に応答してフィードバックデータの前記第１の部分を複数のサーボアンプの前記一つから反時計回りに前記ＮＣ装置へ伝送するステップと、
指令データの前記第２の部分に応答してフィードバックデータの前記第２の部分を前記ＮＣ装置から複数のサーボアンプの前記一つへ時計回りに出力するステップとを含むシリアル通信方法。
【請求項２】
指令データを分割する前記ステップにおいて、指令データは前半および後半に２等分される請求項１に記載のシリアル通信方法。
【請求項３】
フィードバックデータを分割する前記ステップにおいて、フィードバックデータは前半および後半に２等分される請求項１に記載のシリアル通信方法。
【請求項４】
指令データは、位置指令データ、速度指令データおよび電流指令データのうち少なくとも一つを含む請求項１に記載のシリアル通信方法。
【請求項５】
フィードバックデータは、位置フィードバックデータ、速度フィードバックデータおよび電流フィードバックデータのうち少なくとも一つを含む請求項１に記載のシリアル通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のサーボモータを制御するサーボモータ制御システムに関する。特に、本発明はＮＣ装置と、複数のサーボモータを個別に駆動するサーボアンプとの間に行われるシリアル通信の方法に関する。
【背景技術】
【０００２】
図１中に示されるように、放電加工機やマシニングセンタのような工作機械は、制御対象物を個別の軸方向に移動させる複数のサーボモータ５１、５２、５３、５４、５５と、サーボモータ５１、５２、５３、５４、５５に個別に駆動電流を供給する複数のサーボアンプ１、２、３、４、５と、各サーボアンプへ位置、速度または電流指令を送る数値制御（「ＮＣ」）装置６を備えている。制御対象物は、例えば、ヘッドに取り付けられた工具、またはテーブルに固定されたワークである。
【０００３】
ＮＣ装置６は、制御対象物が移動する経路に関する情報を取得するためＮＣコードを解析する。ＮＣ装置６は、経路情報に基づいてサーボモータ５１、５２、５３、５４、５５に対し位置指令を生成する。位置指令は速度指令を生成するため位置フィードバックと比較される。速度指令を速度フィードバックと比較することによって電流指令が生成される。各サーボアンプ１、２、３、４、５は、電流指令と電流フィードバック間の偏差に応じてサーボモータ５１、５２、５３、５４、５５へ駆動電流を供給する。ＮＣ装置６はサーボアンプから物理的に離隔している。ほとんどの工作機械では、電流制御ループを各サーボアンプ中に設けている。位置制御ループと速度制御ループは、ＮＣ装置６または各サーボアンプ中に設けるようにすればよい。
【０００４】
一般に、サーボアンプ１、２、３、４、５は、省配線のため双方向シリアル通信ケーブル４１、４２、４３、４４、４５を用いたデイジーチェーン構成で、ＮＣ装置６へ接続されている。そのようなデイジーチェーン構成は、特許文献１、２、３に開示されている。ＮＣ装置６中のシリアルバス制御器はホストとして動作し、サーボアンプ１、２、３、４、５の各シリアルバス制御器はターゲットとして動作する。工作機械の位置決め精度および送り速度に関する要求が高まるにつれて、位置制御ループ、速度制御ループおよび電流制御ループのループ実行周波数が、５０ＫＨｚを超えてますます大きくなっている。そのような高いループ実行周波数に応えるためシリアルバスには数百Ｍｂｐｓ（メガビット／秒）からＧｂｐｓ（ギガビット／秒）までのビットレートが必要とされている。１０００Ｂａｓｅ−Ｔまたは１０００Ｂａｓｅ−ＳＸのようなギガビットイーサネット(登録商標)に含まれる物理層が、図１のサーボモータ制御システム中においてデータを送信および受信するために使用されている。
【０００５】
物理層２６がＮＣ装置６へ取り付けられている。物理層の対１１、２１、１２、２２、１３、２３、１４、２４、１５、２５がそれぞれのサーボアンプ１、２、３、４、５へ取り付けられている。ＮＣ装置６の物理層２６は、シリアル通信ケーブル４１によって第１のサーボアンプ１の物理層１１へ接続されている。第１のサーボアンプ１の物理層２１はシリアル通信ケーブル４２によって第２のサーボアンプ２の物理層１２へ接続されている。第２のサーボアンプ２の物理層２２はシリアル通信ケーブル４３によって第３のサーボアンプ３の物理層１３へ接続されている。このように、各物理層１１、１２、１３、１４、１５は前のノードとの通信を提供し、各物理層２６、２１、２２、２３、２４は後ろのノードとの通信を提供する。最後のサーボアンプ５の物理層２５は、どのノードにも接続されていない。
【０００６】
図２は、ＮＣ装置６の物理層２６が位置、速度または電流の６４バイト・指令データパケットを各サーボアンプ１、２、３、４、５へ送信し、各サーボアンプ１、２、３、４、５は応答のため６４バイト・フィードバックデータパケットをＮＣ装置６へ送信するシリアル通信を示している。時間ｔ１にＮＣ装置６の物理層２６は、第１の指令データパケットを第１のサーボアンプ１へ送信し始める。第１の指令データパケットのアドレスは第１のサーボアンプ１である。物理層の遅延Ｔｄの後、第１のサーボアンプ１の物理層１１は時間ｔ２に第１の指令データパケットを受信し始める。第１のサーボアンプ１の物理層１１が第１の指令データパケットの受信を完了しアドレスを確認した後、時間ｔ３に物理層１１は第１のフィードバックデータパケットをＮＣ装置６へ送信し始める。フィードバックデータは、確認応答と、サーボモータ中のエラー例えば過電力や過熱を示すデータとを含んでいる。もしＮＣ装置６が位置制御ループと速度制御ループを含んでいれば、フィードバックデータは位置フィードバックデータと速度フィードバックデータを更に含んでもよい。ＮＣ装置６の物理層２６は第１のフィードバックデータパケットの受信を完了した後、時間ｔ４に第２の指令データパケットを第１のサーボアンプ１へ送信し始める。第２の指令データパケットのアドレスは第２のサーボアンプ２である。第２のサーボアンプ２の物理層１２が第２の指令データパケットの受信を完了しアドレスを確認した後、時間ｔ５に物理層１２は第２のフィードバックデータパケットを第１のサーボアンプ１へ送信し始める。第２のフィードバックデータパケットは第１のサーボアンプ１を介してＮＣ装置６へ送られる。
【０００７】
時間ｔ６に、ＮＣ装置６の物理層２６は最後の指令データパケットを第１のサーボアンプ１へ送信する。最後の指令データパケットのアドレスは最後のサーボアンプ５である。最後のサーボアンプ５の物理層１５が最後の指令データパケットの受信を完了しアドレスを確認した後、時間ｔ７に最後のサーボアンプ５の物理層１５は最後のフィードバックデータパケットを第４のサーボアンプ４へ送信し始める。最後のフィードバックデータパケットは、第１、第２、第３および第４のサーボアンプ１、２、３、４を介してＮＣ装置６へ送られる。時間ｔ８に、ＮＣ装置６の物理層２６は最後のフィードバックデータパケットの受信を完了する。サーボアンプ１、２、３、４、５がそれぞれの指令データパケットの受信を完了しＮＣ装置６がサーボアンプ１、２、３、４、５からフィードバックデータパケットの受信を完了する総伝送時間Ｔｔｏｔａｌが、数式１によって表わされる。
【０００８】
【数１】
2008165745.tif 000003
ここで、ｎはサーボアンプの個数、Ｔｄは物理層の遅延、Ｔｐは６４バイトパケットの時間長さである。遅延Ｔｄは、主に、ギガビットイーサネット(登録商標)１０００Ｂａｓｅ−Ｔの物理層におけるアナログ・デジタルとデジタル・アナログの変換、または光ファイバーのギガビットイーサネット(登録商標)１０００Ｂａｓｅ−ＳＸにおける光電子変換を含んでいる。いずれにしても、遅延Ｔｄはおよそ５００ｎｓである。ギガビットイーサネット(登録商標)はギガビット／秒の速度でデータを伝送することができるので、Ｔｐは５１２ｎｓである。したがって、総伝送時間Ｔｔｏｔａｌは、およそ２０．１２μｓである。実際には、通信不良に因る再伝送に要する追加的な時間を考慮に入れると、図１のサーボモータ制御システムは総伝送時間をおよそ２０．１２μｓに維持できないと思われる。物理層の遅延は、ビットレートが高くなればなるほど、総伝送時間により支配的影響を及ぼすようになってくる。
【０００９】
【特許文献１】特開２００３−１８９６５４号公報
【特許文献２】特開平９−５４６０９号公報
【特許文献２】特開２００４−２５２５２７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
本発明の目的は、データの衝突を起こすことなくしかも過度に配線を増やすことなく総伝送時間を低減してＮＣ装置と複数のサーボアンプ間のシリアル通信を実行する方法を提供することである。
【課題を解決するための手段】
【００１１】
本発明によれば、ＮＣ装置（６）と複数のサーボモータ（１、２、３、４、５）を駆動する複数のサーボアンプ（２１、２２、２３、２４、２５）とのシリアル通信を実行する方法は、ＮＣ装置を双方向のシリアル通信ケーブル（４１、４２、４３、４４、４５、４６）を介してループ構成で複数のサーボアンプへ接続するステップと、ＮＣ装置中の指令データを第１のパケットと第２のパケットへ分割するステップと、指令データの第１のパケットをＮＣ装置から複数のサーボアンプの一つへ反時計回りに送信し同時に指令データの第２のパケットをＮＣ装置から複数のサーボアンプの前記一つへ時計回りに送信するステップと、複数のサーボアンプの前記一つにおけるフィードバックデータを第１のパケットと第２のパケットへ分割するステップと、指令データの第１のパケットに応答してフィードバックデータの第１のパケットを複数のサーボアンプの前記一つからＮＣ装置へ反時計回りに送信するステップと、指令データの第２のパケットに応答してフィードバックデータの第２のパケットを複数のサーボアンプの前記一つからＮＣ装置へ時計回りに送信するステップとを含む。
【００１２】
指令データは、位置指令データ、速度指令データおよび電流指令データのうち一つであればよい。また、フィードバックデータは、位置フィードバックデータ、速度フィードバックデータおよび電流フィードバックデータのうち一つであればよい。
【発明の効果】
【００１３】
本発明によれば、複数のサーボアンプがＮＣ装置から各自の指令データパケットの受信を完了しＮＣ装置が複数のサーボアンプからフィードバックデータパケットの受信を完了する総伝送時間を低減することができる。
【発明を実施するための最良の形態】
【００１４】
シリアル通信を実行する方法の一実施例が図面を参照して説明される。シリアル通信は図３のサーボモータ制御システムにおいて実行される。図１中に用いられたものと同じ参照番号が同じ装置に付され、それらの説明はここで繰り返さない。物理層１６はＮＣ装置６に取り付けられ、双方向シリアル通信ケーブル４６が物理層１６を最後のサーボアンプ５の物理層２５へ接続する。こうして、ＮＣ装置６とサーボアンプ１、２、３、４、５はループ構成に接続される。物理層１１、２１、１２、２２、１３、２３、１４、２４、１５、２５、１６、２６と複数の双方向シリアル通信ケーブル４１、４２、４３、４４、４５、４６は、ギガビットイーサネット(登録商標)１０００Ｂａｓｅ−Ｔまたは１０００Ｂａｓｅ−ＳＸ中に含まれているものであればよい。
【００１５】
６４バイトの指令データは３２バイトの２つの部分へ等分割される。指令データの３２バイトの前半パケットは反時計回りにサーボアンプへ送信され、同時に指令データの３２バイトの後半パケットは時計回りにサーボアンプへ送信される。アドレスを確認する時間を節約するため、各第１の物理層１１、１２、１３、１４、１５が指令データの前半パケットを受信し始めた後直ちに各第２の物理層２１、２２、２３、２４、２５は無条件に指令データの前半パケットを隣りのノードへ反時計回りに転送し始める。また、各第２の物理層２１、２２、２３、２４、２５が指令データの後半パケットを受信し始めた後直ちに各第１の物理層１１、１２、１３、１４、１５は無条件に指令データの後半パケットを隣りのノードへ時計回りに転送し始める。指令データの前半パケットと指令データの後半パケットは、一巡して同時にＮＣ装置６に戻る。
【００１６】
６４バイト・フィードバックデータもまた３２バイトの２つの部分へ等分割される。各第１の物理層１１、１２、１３、１４、１５が指令データの前半パケットの受信を完了しアドレスを確認した後、各第２の物理層２１、２２、２３、２４、２５は無条件にフィードバックデータの前半パケットを隣りのノードへ反時計回りに送信し始める。また、各第２の物理層２１、２２、２３、２４、２５が指令データの後半パケットの受信を完了しアドレスを確認した後、各第１の物理層１１、１２、１３、１４、１５は無条件にフィードバックデータの後半パケットを隣りのノードへ時計回りに送信し始める。ＮＣ装置６は時間Ｔｃｙｃの周期で一連の指令データパケットを生成する。時間Ｔｃｙｃは時間長さＴｐの最大値の２倍以上長い。
【００１７】
図４中に示されるように、時間ｔ１で、物理層２６は第１の指令データの前半パケットを第１のサーボアンプ１の物理層１１へ送信し、物理層１６は第１の指令データの後半パケットを最後のサーボアンプ５の物理層２５へ送信する。第１の指令データパケットのアドレスは第１のサーボアンプ１である。物理層の遅延Ｔｄの後、時間ｔ２に物理層１１は第１の指令データの前半パケットを受信し始め、物理層２５は第１の指令データの後半パケットを受信し始める。時間ｔ２に、物理層２１は第１の指令データの前半パケットを第２のサーボアンプ２へ転送し始め物理層１５は第１の指令データの後半パケットを第４のアンプ４へ転送し始める。物理層１１が第１の指令データの前半パケットの受信を完了しアドレスを確認した後、時間ｔ３に第１のサーボアンプ１の物理層２１は第１のフィードバックデータの前半パケットを物理層１２へ送信し始める。第１のフィードバックデータの前半パケットは、後ろのサーボアンプ２、３、４、５を介してＮＣ装置６へ送信される。物理層２１が第１の指令データの後半パケットの受信を完了しアドレスを確認した後、時間ｔ４に第１のサーボアンプ１の物理層１１は第１のフィードバックデータの後半パケットをＮＣ装置６へ送信し始める。ＮＣ装置６は、時間Ｔｃｙｃの周期で、第１、第２、第３、第４および最後の指令データパケットを生成する。データの衝突を防止するため、時間Ｔｃｙｃは時間Ｔｐの最大値の２倍である。
【００１８】
時間ｔ５に、物理層２６は最後の指令データの前半パケットを第１のサーボアンプ１の物理層１１へ送信し、物理層１６は最後の指令データの後半パケットを最後のサーボアンプ５の物理層２５へ送信する。最後の指令データパケットのアドレスは最後のサーボアンプ５である。物理層２５が最後の指令データの後半パケットの受信を完了しアドレスを確認した後、時間ｔ６に最後のサーボアンプ５の物理層１５は最後のフィードバックデータの前半パケットを物理層２４へ送信し始める。最後のフィードバックデータの前半パケットは、前のサーボアンプ４、３、２、１を介してＮＣ装置６へ送信される。物理層１５が最後の指令データの前半パケットの受信を完了しアドレスを確認した後、時間ｔ７に最後のサーボアンプ５の物理層２５は最後のフィードバックデータの後半パケットをＮＣ装置６へ送信し始める。時間ｔ８に、ＮＣ装置６は最後のフィードバックデータの前半パケットと最後のフィードバックデータの後半パケットの受信を完了する。
【００１９】
サーボアンプ１、２、３、４、５がそれぞれの指令データパケットの受信を完了しＮＣ装置６がサーボアンプ１、２、３、４、５からフィードバックデータパケットの受信を完了する総伝送時間Ｔｔｏｔａｌは、数式２によって表わされる。
【数２】
2008165745.tif 000004
ここで、ｎはサーボアンプの個数、Ｔｄは物理層の遅延でありおよそ５００ｎｓである。ギガビットイーサネット(登録商標)はギガビット／秒の速度でデータを伝送することができるので、Ｔｃｙｃは５１２ｎｓである。したがって、総伝送時間Ｔｔｏｔａｌは、およそ５．５６μｓである。
【００２０】
本発明は、開示された形態に限定されるものではない。上述の説明を参照すれば、多様な改善及び変形形態が可能なことは明らかである。図示した実施例は、発明の本質と実用化を説明するために選ばれた。発明の範囲は、添付の「特許請求の範囲」により定義する。
【図面の簡単な説明】
【００２１】
【図１】先行技術のサーボモータ制御システムを示すブロック図である。
【図２】先行技術のシリアル通信方法を示すタイミングチャートである。
【図３】本発明が適用されるサーボモータ制御システムを示すブロック図である。
【図４】本発明のシリアル通信方法を示すタイミングチャートである。
【符号の説明】
【００２２】
１、２、３、４、５・・・サーボアンプ
６・・・ＮＣ装置
１１、１２、１３、１４、１５、１６・・・物理層
２１、２２、２３、２４、２５、２６・・・物理層
４１、４２、４３、４４、４５、４６・・・双方向シリアル通信ケーブル
５１、５２、５３、５４、５５・・・サーボモータ
【図１】
2008165745.tif 000005
【図２】
2008165745.tif 000006
【図３】
2008165745.tif 000007
【図４】
2008165745.tif 000008