通信システムおよび方法
【課題】通信マスタ装置と複数のノードとの間をライントポロジーで接続する通信システムにおいて、各ノードにおける同期信号の生成タイミングのずれを補正する。
【解決手段】通信システムは、通信マスタ装置と、通信マスタ装置から送出される通信フレームを受信する複数のノードとがライントポロジーで接続されている。通信マスタ装置は、ライントポロジー上で通信マスタ装置から遠方に位置する順に、各ノードに与えるべきデータが格納されるフィールドが配置された通信フレームを送出する。各ノードの信号処理LSIは、通信フレーム内で各ノードに割り当てられたフィールドのデータ到着時に同期信号を生成する同期信号生成回路12と、ライントポロジー上で下流側に隣接するノードとの間に生じる伝播遅延時間を計算する演算回路18と、伝播遅延時間に基づき、下流側に隣接するノードに送信する通信フレームを遅延させる遅延回路24と、を備える。
【解決手段】通信システムは、通信マスタ装置と、通信マスタ装置から送出される通信フレームを受信する複数のノードとがライントポロジーで接続されている。通信マスタ装置は、ライントポロジー上で通信マスタ装置から遠方に位置する順に、各ノードに与えるべきデータが格納されるフィールドが配置された通信フレームを送出する。各ノードの信号処理LSIは、通信フレーム内で各ノードに割り当てられたフィールドのデータ到着時に同期信号を生成する同期信号生成回路12と、ライントポロジー上で下流側に隣接するノードとの間に生じる伝播遅延時間を計算する演算回路18と、伝播遅延時間に基づき、下流側に隣接するノードに送信する通信フレームを遅延させる遅延回路24と、を備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、産業用イーサネット技術を用いた通信技術に関する。
【背景技術】
【0002】
IEEE802.3で規定されるイーサネット(登録商標)技術を用いた産業用イーサネットでは、相互通信する複数の機器を通信ケーブルで接続する際に、図1に示すように、例えばCNC(Computer Numerical Control)装置などの通信マスタ装置Mとモータ制御装置などの複数のノード1〜4をデイジーチェーン方式で接続するライントポロジーを採用することがある。通信マスタ装置Mとノード1〜4は、それぞれ信号処理LSIとコネクタCを有しており、下り回線(すなわち、通信マスタ装置から各ノードに向かう回線)と上り回線(すなわち、各ノードから通信マスタ装置に向かう回線)とがループして通信マスタ装置に戻って来るように、コネクタC間にケーブルが接続される。終端ノードにおける空きコネクタの処置は、図示のように外部ケーブルで折り返ししてもよいし、LSIの内部処理で折り返すようにしてもよい。コネクタC内の「rx」は受信端子を表し、「tx」は送信端子を表している。
【0003】
ライントポロジーを用いる場合、通信マスタ装置から全ノードに与える通信データを一つの通信フレーム内にまとめて通信する統合フレーム方式を用いるのが一般的である。各ノードは、通信フレーム内でノード毎に予め定められたフィールドから自身のデータを読み出してそれぞれ必要な処理を実行する。このようなライントポロジーと統合フレーム方式の組み合わせの利点は、インターネット等で使用される一般的なイーサネットとは異なり、通信フレーム同士の衝突が発生しないため、通信マスタ装置から各ノードに通信フレームを周期的に送信できることである。
【0004】
例えば、特許文献1には、モータ制御用シリアル通信装置において、上位制御装置と各モータ駆動装置とをデイジーチェーン接続することで、配線効率を高め、またハブを不要にすることが開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2003−189654号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
図1に示すような通信システムでは、各ノードは通信フレームの受信をタイミングとして各ノードにおける処理を同期させる。例えば図2に示すように、ノード1は通信フレームの先頭が到達した時刻t1で同期信号を生成し、ノード2は時刻t2で同期信号を生成する。時刻t1とt2の差は、ノード1および2の間の伝播遅延に相当する。伝播遅延は、通信ケーブル内の遅延や各ノードの信号処理LSIによる遅延等を合計したものになる。
【0007】
CNC装置で制御される工作機械などのように、各ノード間の高精度の同期が必要とされるシステムでは、上記の伝播遅延は同期タイミングのずれとなり、そのまま加工誤差として現れる。したがって、伝播遅延の影響をできるだけ小さくすることが求められる。
【0008】
本発明はこうした状況に鑑みてなされたものであり、その目的は、通信マスタ装置と複数のノードとの間をライントポロジーで接続する通信システムにおいて、各ノードにおける同期信号生成タイミングのずれを補正する技術を提供することにある。
【課題を解決するための手段】
【0009】
本発明の一態様は、通信マスタ装置と、通信マスタ装置から送出される通信フレームを受信する複数のノードとがライントポロジーで接続された通信システムである。通信マスタ装置は、ライントポロジー上で通信マスタ装置から遠方に位置する順に、各ノードに与えるべきデータが格納されるフィールドが配置された通信フレームを送出する。ノードは、通信フレーム内で各ノードに割り当てられたフィールドのデータ到着時に同期信号を生成する同期信号生成回路と、ライントポロジー上で下流側に隣接するノードとの間に生じる伝播遅延時間を計算する演算回路と、伝播遅延時間に基づき下流側に隣接するノードに送信する通信フレームを遅延させる遅延回路と、を備える。
【0010】
この態様によると、各ノードにおける同期信号の生成タイミングのずれを低減することができる。
【0011】
なお、以上の構成要素の任意の組み合わせや、本発明の構成要素や表現を方法、装置、システムなどの間で相互に置換したものもまた、本発明の態様として有効である。
【発明の効果】
【0012】
本発明によれば、通信マスタ装置と複数のノードとの間をライントポロジーで接続する通信システムにおいて、各ノードにおける同期信号の生成タイミングのずれを補正することができる。
【図面の簡単な説明】
【0013】
【図1】通信マスタ装置と複数のノードとがライントポロジーで接続された従来技術による通信システムを示す図である。
【図2】従来技術による同期信号生成タイミングの遅延を説明する図である。
【図3】本発明の一実施形態に係る、通信マスタ装置と複数のノードとがライントポロジーで接続された通信システムの概略を示す図である。
【図4】通信マスタ装置から送信される通信フレームの構成を示す図である。
【図5】各ノードの信号処理LSIの回路構成を示すブロック図である。
【図6】各ノードにおける処理を同期させる原理を説明する図である。
【図7】各ノードにおける処理を同期させる原理を説明する図である。
【図8】伝播遅延時間の導出方法を説明する図である。
【図9】本実施形態に係る、各ノードにおける処理を同期させる方法のフローチャートである。
【図10】本実施形態を適用可能なリニアモータ駆動システムの概略構成図である。
【図11】図10のシステムにおける通信マスタ装置と複数のノード間の接続を示す図である。
【発明を実施するための形態】
【0014】
図3は、本発明の一実施形態に係る通信システム50の概略を示す図である。通信システム50は、図1で説明したものと同様に、通信マスタ装置Mと複数のノードとがライントポロジーで接続される。本実施形態では、通信マスタ装置にz個(zは自然数)のノードが接続されており、図3ではそのうちn番目(n<z、nは自然数)のノードnとn+1番目のノードn+1を主に表している。
【0015】
ノードnとノードn+1は、それぞれ二つのコネクタC1、C2と信号処理LSI10とを備える。便宜的に、通信マスタ側のコネクタをC1、末端ノードz側のコネクタをC2と表記する。図1と同様に、コネクタC1、C2内の「rx」は受信端子を表し、「tx」は送信端子を表している。通信フレームは、通信マスタ装置から下り回線(すなわち、通信マスタ装置から末端ノードzに向かう回線)を経由し、続いて上り回線(すなわち、末端ノードzから通信マスタ装置に向かう回線)を経由して通信マスタ装置に戻る。
【0016】
なお、ノードは、通信マスタ装置から送信されるデータを受け取る任意の機器であってよい。例えば、通信システムを多軸加工の工作機械に適用する場合、ノードは各軸モータの制御装置に相当する。通信システムをレーザ加工機に適用する場合、ノードはステージ駆動モータおよびガルバノモータの制御装置に相当する。
【0017】
図4は、通信マスタ装置から統合フレーム方式で送信される通信フレームFの構成を示す。図中の左側を先頭にフレームが伝送されるものとする。
【0018】
ヘッダ80には、通信フレームの先頭を表すビット、通信フレームのメタデータ等が格納される。
【0019】
データフィールド82は、通信マスタ装置に接続される全ノード数以上の個別フィールドが確保されており、ノード毎に一つのフィールドが割り当てられる。本実施形態では、通信マスタ装置から遠方に位置するノードから順にフィールドが割り当てられる。すなわち、データフィールド82の最左端に末端ノードz用のフィールドが割り当てられ、データフィールド82の最右端にノード1用のフィールドが割り当てられる。以下、ノードnに割り当てられるフィールドを「フィールドn」のように表記する。各ノードに割り当てられるフィールド長は全て等しいものとする
【0020】
LBTフィールド84は、後述するループバック時間(LBT:Loop Back Time)が格納されるフィールドである。LBTフィールド84は、データフィールド82の前に配置されてもよい。
【0021】
チェックコードフィールド86は、チェックサムまたはCRC符号値などのチェックコードが格納される。
なお、通信フレームFに上記以外のフィールドが確保されていてもよいのは言うまでもない。
【0022】
図5は、各ノードの信号処理LSI10の回路構成を示すブロック図である。
【0023】
時間計測回路14は、タイマ16を使用して、下り回線の通信フレームの到達時刻tdと上り回線の通信フレームの到達時刻tuとを測定する。
同期信号生成回路12は、通信フレーム内で各ノードに割り当てられたフィールドのデータ到着時に同期信号を生成する。
演算回路18は、上下の通信フレーム到達時刻の差分であるループバック時間LBT=(tu−td)を計算する。また、後述するように、遅延回路24で設定すべき遅延時間Dを計算する。
LBT読出回路28は、上り回線の通信フレームのLBTフィールドから、下流側の隣接ノードで書き込まれたLBTを読み出す。
LBT書込回路20は、演算回路18で求められた自ノードのLBTを上り回線の通信フレームのLBTフィールドに書き込む。LBTが書き込まれた通信フレームは、上流側の隣接ノードに送信される。
遅延回路24は、演算回路18で計算された遅延時間Dだけ下り回線の通信フレームを遅延させる。遅延された通信フレームは、下流側の隣接ノードに送信される。
【0024】
図示しないが、通信マスタ装置Mの信号処理LSIも、以下の点を除き図5に示したのと同様の構成を備える。通信マスタ装置Mでは、時間計測回路14は、通信フレームの送出時刻と上り回線の通信フレームの到達時刻との差分をループバック時間LBTとして計算する。また、LBT書込回路20は不要である。
【0025】
以下、信号処理LSI10によって、各ノードにおける処理を同期させる原理を説明する。
【0026】
通信マスタ装置Mは、図4に示した通信フレームFを送出する。上述したように、通信フレームF内では遠方のノードに対するデータの方が近方のノードに対するデータよりも先行して配置されている。各ノードの同期信号生成回路12は、通信フレームF内で、各ノードに割り当てられたフィールドのデータ到着時に同期信号を生成する。
【0027】
図6は、この様子を説明する図である。図中の上側がノードnに到達する通信フレームを、下側がノードn+1に到達する通信フレームを表している。ノードnに通信フレームの先頭が到達した時刻をt1、ノードn+1に通信フレームの先頭が到達した時刻をt2とすると、(t2−t1)がノード間の伝播遅延時間PDT(Propagation Delay Time)となる。
【0028】
また、ノードnはフィールドnの到達時刻t4で同期信号を生成するのに対して、ノードn+1はフィールドn+1の到達時刻t3で同期信号を生成する。ノードn+1は通信フレームF内でフィールドnよりも前に配置されているので、ノードn+1における同期信号生成の方がノードnにおける同期信号生成よりも早くなる。この時間差(t4−t3)を遅延時間Dと呼ぶ。
【0029】
したがって、図7に示すように、本来の伝播遅延時間PDTに加えて、ノードn+1への通信フレームFの到着を遅延時間Dだけ遅らせれば、ノードnとノードn+1における同期信号生成タイミングをともに時刻t4に合わせることができる。つまり、各ノードの信号処理LSIは、次式で算出される遅延時間Dを、遅延回路によって下りの通信フレームに付与した上で、下流側の隣接ノードに送信することで、ノード間の同期信号生成時間を補正することができる。
遅延時間D=(1フィールドデータ長の伝送時間L)−伝播遅延時間PDT・・・(式1)
【0030】
なお、図から理解できるように、上記原理は、1フィールドデータ長の伝送時間Lがノード間の伝播遅延時間PDTよりも長いことが前提となる。しかし、伝播遅延時間PDTは数十クロック程度であり、フィールドデータの伝送時間はそれより長いことが通常であるため、この前提が成立しない場合はほとんどないと考えられる。
【0031】
以上の処理を通信マスタ装置Mと全てのノードでそれぞれ実行することで、通信マスタ装置に接続される全ノードの同期信号生成タイミングを一致させることができる。
【0032】
上記の処理のためには、各ノード間の伝播遅延時間PDTを計測する必要がある。図8を参照して、伝播遅延時間PDTの導出方法について説明する。
【0033】
ライントポロジーでは、一つの通信フレームFが各ノードを下り回線と上り回線の二回通過する。図8(a)では、ノードn+1における下りの通信フレームの到達時刻をt2、上りの通信フレームの到達時刻をt3として表している。
【0034】
ノードn+1の信号処理LSIの時間計測回路14は、上下の通信フレームの到達時刻をそれぞれ測定し、演算回路18は到達時刻の差分(t3−t2)を計算する。この上下の通信フレームの時間差を、本明細書ではループバック時間LBTと呼ぶ。以下、ノードnにおけるループバック時間をLBT(n)のように表記する。
【0035】
信号処理LSIのLBT書込回路20が、算出されたループバック時間LBT(n+1)を上りの通信フレームFのLBTフィールドに書き込んだ後、通信フレームが上流側の隣接ノードnに送信される。
【0036】
図8(b)は、ノードnにおける下りの通信フレームの到達時刻をt1、上りの通信フレームの到達時刻をt4として表している。ここで、ノードnの方がノードn+1よりも上流すなわち通信マスタ装置側にあることから、t1<t2、t4>t3であることに注意する。
【0037】
ノードnの信号処理LSIのLBT読出回路28は、ノードn+1から送られて来た上りの通信フレームのLBTフィールドから、ループバック時間LBT(n+1)を読み取る。また、ノードn+1と同様に、演算回路18がノードnにおけるループバック時間LBT(n)=(t4−t1)を計算する。LBT書込回路がLBT(n)をLBTフィールドに書き込んだ後、通信フレームはさらに上流側の隣接ノードに送信される。
【0038】
図8(a)、(b)から理解できるように、LBT(n)とLBT(n+1)の差分は、ノードnとノードn+1とを結ぶ下り回線と上り回線の二回分の伝播遅延時間PDTを含んでいる。したがって、ノードnの演算回路18は、次式によりノードnとノードn+1との間の伝播遅延時間PDTを求める。
PDT={LBT(n)−LBT(n+1)}/2・・・(式2)
【0039】
なお、マスタ装置Mは、フレームを送出する際、あらかじめLBT=0として送信する。また、末端ノードでの伝播遅延時間PDTの計算式は、PDT=LBT(n)/2となる。
【0040】
以上の演算を、通信マスタ装置を含む全ノードで行うことで、全ての隣接ノード間の伝播遅延時間PDTを求めることができる。
【0041】
図9は、本実施形態に係る、各ノードにおける処理を同期させる方法のフローチャートである。
【0042】
通信マスタ装置Mは、制御用データを含む実際の通信フレームを送信する前に、時刻同期用の通信フレームを各ノードに送信する(S10)。ノードnの時間計測回路14は、上下の通信フレームの時間差であるループバック時間LBT(n)を計測する(S12)。LBT読出回路28は、上り通信フレームのLBTフィールドから、下流側隣接ノードのループバック時間LBT(n+1)を読み出す(S14)。LBT書込回路20は、上り通信フレームのLBTフィールドに、自ノードのループバック時間LBT(n)を書き込み、上流側隣接ノードに送信する(S16)。演算回路は、式2にしたがって自ノードと下流側隣接ノードの間の伝播遅延時間PDTを計算する(S18)。演算回路18は式1にしたがって遅延時間Dを計算し、遅延回路24に設定する(S20)。
【0043】
図10は、本実施形態を適用可能なリニアモータ駆動システム100の概略構成図である。ステージ102は、X方向に沿って配置されたリニアモータ104に搭載されている。また、リニアモータ104は、Y方向に沿って平行に配置された二台のリニアモータ106、108に搭載されている。これにより、リニアモータ駆動システム100は、ステージ102をXY平面内で移動させることができる。
【0044】
図11は、図10のリニアモータ駆動システム100における通信マスタ装置Mと複数のノードX、Y1、Y2間の接続を示す図である。図示するように、通信マスタ装置Mと複数のノードは、上記の通信システム50と同様にライントポロジーで接続される。図1と同様に、通信マスタ装置Mとノードはそれぞれ信号処理LSIとコネクタCを有しており、下り回線と上り回線とがループして通信マスタ装置に戻って来るように、コネクタC間にケーブルが接続される。終端ノードにおける空きコネクタの処置は、図示のように外部ケーブルで折り返ししてもよいし、LSIの内部処理で折り返すようにしてもよい。
【0045】
通信マスタ装置Mは例えばCNC装置であり、ノードX、Y1、Y2は、それぞれリニアモータ104、106、108のモータ制御装置である。CNC装置からモータ制御装置に対して、位置指令、速度指令、トルク指令などの各種動作指令が提供される。
【0046】
この構成において、上述の実施形態の通信方法を適用することで、CNC装置と複数のモータ制御装置の時刻同期精度を改善することができ、したがってステージ102の位置決め精度を改善することができる。
【0047】
以上説明したように、本実施形態によれば、通信マスタ装置と複数のノードとの間をライントポロジーで接続する通信システムにおいて、各ノード間の伝播遅延を測定し、これに基づき各ノードにおける同期信号の生成タイミングを補正することができる。したがって、複数ノード間の時刻同期精度が向上し、各ノードで制御される機器による移動誤差または加工誤差を低減することができる。
【0048】
以上、本発明の実施の形態について説明した。これらの実施の形態は例示であり、それらの各構成要素の組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【0049】
本発明は、複数機器間をライントポロジーで接続した通信システムであって、同期処理が必要となる任意のシステムに適用することができる。
【符号の説明】
【0050】
10 信号処理LSI、 12 同期信号生成回路、 14 時間計測回路、 16 タイマ、 18 演算回路、 20 LBT書込回路、 24 遅延回路、 28 LBT読出回路、 50 通信システム、 F 通信フレーム、 M 通信マスタ装置。
【技術分野】
【0001】
本発明は、産業用イーサネット技術を用いた通信技術に関する。
【背景技術】
【0002】
IEEE802.3で規定されるイーサネット(登録商標)技術を用いた産業用イーサネットでは、相互通信する複数の機器を通信ケーブルで接続する際に、図1に示すように、例えばCNC(Computer Numerical Control)装置などの通信マスタ装置Mとモータ制御装置などの複数のノード1〜4をデイジーチェーン方式で接続するライントポロジーを採用することがある。通信マスタ装置Mとノード1〜4は、それぞれ信号処理LSIとコネクタCを有しており、下り回線(すなわち、通信マスタ装置から各ノードに向かう回線)と上り回線(すなわち、各ノードから通信マスタ装置に向かう回線)とがループして通信マスタ装置に戻って来るように、コネクタC間にケーブルが接続される。終端ノードにおける空きコネクタの処置は、図示のように外部ケーブルで折り返ししてもよいし、LSIの内部処理で折り返すようにしてもよい。コネクタC内の「rx」は受信端子を表し、「tx」は送信端子を表している。
【0003】
ライントポロジーを用いる場合、通信マスタ装置から全ノードに与える通信データを一つの通信フレーム内にまとめて通信する統合フレーム方式を用いるのが一般的である。各ノードは、通信フレーム内でノード毎に予め定められたフィールドから自身のデータを読み出してそれぞれ必要な処理を実行する。このようなライントポロジーと統合フレーム方式の組み合わせの利点は、インターネット等で使用される一般的なイーサネットとは異なり、通信フレーム同士の衝突が発生しないため、通信マスタ装置から各ノードに通信フレームを周期的に送信できることである。
【0004】
例えば、特許文献1には、モータ制御用シリアル通信装置において、上位制御装置と各モータ駆動装置とをデイジーチェーン接続することで、配線効率を高め、またハブを不要にすることが開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2003−189654号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
図1に示すような通信システムでは、各ノードは通信フレームの受信をタイミングとして各ノードにおける処理を同期させる。例えば図2に示すように、ノード1は通信フレームの先頭が到達した時刻t1で同期信号を生成し、ノード2は時刻t2で同期信号を生成する。時刻t1とt2の差は、ノード1および2の間の伝播遅延に相当する。伝播遅延は、通信ケーブル内の遅延や各ノードの信号処理LSIによる遅延等を合計したものになる。
【0007】
CNC装置で制御される工作機械などのように、各ノード間の高精度の同期が必要とされるシステムでは、上記の伝播遅延は同期タイミングのずれとなり、そのまま加工誤差として現れる。したがって、伝播遅延の影響をできるだけ小さくすることが求められる。
【0008】
本発明はこうした状況に鑑みてなされたものであり、その目的は、通信マスタ装置と複数のノードとの間をライントポロジーで接続する通信システムにおいて、各ノードにおける同期信号生成タイミングのずれを補正する技術を提供することにある。
【課題を解決するための手段】
【0009】
本発明の一態様は、通信マスタ装置と、通信マスタ装置から送出される通信フレームを受信する複数のノードとがライントポロジーで接続された通信システムである。通信マスタ装置は、ライントポロジー上で通信マスタ装置から遠方に位置する順に、各ノードに与えるべきデータが格納されるフィールドが配置された通信フレームを送出する。ノードは、通信フレーム内で各ノードに割り当てられたフィールドのデータ到着時に同期信号を生成する同期信号生成回路と、ライントポロジー上で下流側に隣接するノードとの間に生じる伝播遅延時間を計算する演算回路と、伝播遅延時間に基づき下流側に隣接するノードに送信する通信フレームを遅延させる遅延回路と、を備える。
【0010】
この態様によると、各ノードにおける同期信号の生成タイミングのずれを低減することができる。
【0011】
なお、以上の構成要素の任意の組み合わせや、本発明の構成要素や表現を方法、装置、システムなどの間で相互に置換したものもまた、本発明の態様として有効である。
【発明の効果】
【0012】
本発明によれば、通信マスタ装置と複数のノードとの間をライントポロジーで接続する通信システムにおいて、各ノードにおける同期信号の生成タイミングのずれを補正することができる。
【図面の簡単な説明】
【0013】
【図1】通信マスタ装置と複数のノードとがライントポロジーで接続された従来技術による通信システムを示す図である。
【図2】従来技術による同期信号生成タイミングの遅延を説明する図である。
【図3】本発明の一実施形態に係る、通信マスタ装置と複数のノードとがライントポロジーで接続された通信システムの概略を示す図である。
【図4】通信マスタ装置から送信される通信フレームの構成を示す図である。
【図5】各ノードの信号処理LSIの回路構成を示すブロック図である。
【図6】各ノードにおける処理を同期させる原理を説明する図である。
【図7】各ノードにおける処理を同期させる原理を説明する図である。
【図8】伝播遅延時間の導出方法を説明する図である。
【図9】本実施形態に係る、各ノードにおける処理を同期させる方法のフローチャートである。
【図10】本実施形態を適用可能なリニアモータ駆動システムの概略構成図である。
【図11】図10のシステムにおける通信マスタ装置と複数のノード間の接続を示す図である。
【発明を実施するための形態】
【0014】
図3は、本発明の一実施形態に係る通信システム50の概略を示す図である。通信システム50は、図1で説明したものと同様に、通信マスタ装置Mと複数のノードとがライントポロジーで接続される。本実施形態では、通信マスタ装置にz個(zは自然数)のノードが接続されており、図3ではそのうちn番目(n<z、nは自然数)のノードnとn+1番目のノードn+1を主に表している。
【0015】
ノードnとノードn+1は、それぞれ二つのコネクタC1、C2と信号処理LSI10とを備える。便宜的に、通信マスタ側のコネクタをC1、末端ノードz側のコネクタをC2と表記する。図1と同様に、コネクタC1、C2内の「rx」は受信端子を表し、「tx」は送信端子を表している。通信フレームは、通信マスタ装置から下り回線(すなわち、通信マスタ装置から末端ノードzに向かう回線)を経由し、続いて上り回線(すなわち、末端ノードzから通信マスタ装置に向かう回線)を経由して通信マスタ装置に戻る。
【0016】
なお、ノードは、通信マスタ装置から送信されるデータを受け取る任意の機器であってよい。例えば、通信システムを多軸加工の工作機械に適用する場合、ノードは各軸モータの制御装置に相当する。通信システムをレーザ加工機に適用する場合、ノードはステージ駆動モータおよびガルバノモータの制御装置に相当する。
【0017】
図4は、通信マスタ装置から統合フレーム方式で送信される通信フレームFの構成を示す。図中の左側を先頭にフレームが伝送されるものとする。
【0018】
ヘッダ80には、通信フレームの先頭を表すビット、通信フレームのメタデータ等が格納される。
【0019】
データフィールド82は、通信マスタ装置に接続される全ノード数以上の個別フィールドが確保されており、ノード毎に一つのフィールドが割り当てられる。本実施形態では、通信マスタ装置から遠方に位置するノードから順にフィールドが割り当てられる。すなわち、データフィールド82の最左端に末端ノードz用のフィールドが割り当てられ、データフィールド82の最右端にノード1用のフィールドが割り当てられる。以下、ノードnに割り当てられるフィールドを「フィールドn」のように表記する。各ノードに割り当てられるフィールド長は全て等しいものとする
【0020】
LBTフィールド84は、後述するループバック時間(LBT:Loop Back Time)が格納されるフィールドである。LBTフィールド84は、データフィールド82の前に配置されてもよい。
【0021】
チェックコードフィールド86は、チェックサムまたはCRC符号値などのチェックコードが格納される。
なお、通信フレームFに上記以外のフィールドが確保されていてもよいのは言うまでもない。
【0022】
図5は、各ノードの信号処理LSI10の回路構成を示すブロック図である。
【0023】
時間計測回路14は、タイマ16を使用して、下り回線の通信フレームの到達時刻tdと上り回線の通信フレームの到達時刻tuとを測定する。
同期信号生成回路12は、通信フレーム内で各ノードに割り当てられたフィールドのデータ到着時に同期信号を生成する。
演算回路18は、上下の通信フレーム到達時刻の差分であるループバック時間LBT=(tu−td)を計算する。また、後述するように、遅延回路24で設定すべき遅延時間Dを計算する。
LBT読出回路28は、上り回線の通信フレームのLBTフィールドから、下流側の隣接ノードで書き込まれたLBTを読み出す。
LBT書込回路20は、演算回路18で求められた自ノードのLBTを上り回線の通信フレームのLBTフィールドに書き込む。LBTが書き込まれた通信フレームは、上流側の隣接ノードに送信される。
遅延回路24は、演算回路18で計算された遅延時間Dだけ下り回線の通信フレームを遅延させる。遅延された通信フレームは、下流側の隣接ノードに送信される。
【0024】
図示しないが、通信マスタ装置Mの信号処理LSIも、以下の点を除き図5に示したのと同様の構成を備える。通信マスタ装置Mでは、時間計測回路14は、通信フレームの送出時刻と上り回線の通信フレームの到達時刻との差分をループバック時間LBTとして計算する。また、LBT書込回路20は不要である。
【0025】
以下、信号処理LSI10によって、各ノードにおける処理を同期させる原理を説明する。
【0026】
通信マスタ装置Mは、図4に示した通信フレームFを送出する。上述したように、通信フレームF内では遠方のノードに対するデータの方が近方のノードに対するデータよりも先行して配置されている。各ノードの同期信号生成回路12は、通信フレームF内で、各ノードに割り当てられたフィールドのデータ到着時に同期信号を生成する。
【0027】
図6は、この様子を説明する図である。図中の上側がノードnに到達する通信フレームを、下側がノードn+1に到達する通信フレームを表している。ノードnに通信フレームの先頭が到達した時刻をt1、ノードn+1に通信フレームの先頭が到達した時刻をt2とすると、(t2−t1)がノード間の伝播遅延時間PDT(Propagation Delay Time)となる。
【0028】
また、ノードnはフィールドnの到達時刻t4で同期信号を生成するのに対して、ノードn+1はフィールドn+1の到達時刻t3で同期信号を生成する。ノードn+1は通信フレームF内でフィールドnよりも前に配置されているので、ノードn+1における同期信号生成の方がノードnにおける同期信号生成よりも早くなる。この時間差(t4−t3)を遅延時間Dと呼ぶ。
【0029】
したがって、図7に示すように、本来の伝播遅延時間PDTに加えて、ノードn+1への通信フレームFの到着を遅延時間Dだけ遅らせれば、ノードnとノードn+1における同期信号生成タイミングをともに時刻t4に合わせることができる。つまり、各ノードの信号処理LSIは、次式で算出される遅延時間Dを、遅延回路によって下りの通信フレームに付与した上で、下流側の隣接ノードに送信することで、ノード間の同期信号生成時間を補正することができる。
遅延時間D=(1フィールドデータ長の伝送時間L)−伝播遅延時間PDT・・・(式1)
【0030】
なお、図から理解できるように、上記原理は、1フィールドデータ長の伝送時間Lがノード間の伝播遅延時間PDTよりも長いことが前提となる。しかし、伝播遅延時間PDTは数十クロック程度であり、フィールドデータの伝送時間はそれより長いことが通常であるため、この前提が成立しない場合はほとんどないと考えられる。
【0031】
以上の処理を通信マスタ装置Mと全てのノードでそれぞれ実行することで、通信マスタ装置に接続される全ノードの同期信号生成タイミングを一致させることができる。
【0032】
上記の処理のためには、各ノード間の伝播遅延時間PDTを計測する必要がある。図8を参照して、伝播遅延時間PDTの導出方法について説明する。
【0033】
ライントポロジーでは、一つの通信フレームFが各ノードを下り回線と上り回線の二回通過する。図8(a)では、ノードn+1における下りの通信フレームの到達時刻をt2、上りの通信フレームの到達時刻をt3として表している。
【0034】
ノードn+1の信号処理LSIの時間計測回路14は、上下の通信フレームの到達時刻をそれぞれ測定し、演算回路18は到達時刻の差分(t3−t2)を計算する。この上下の通信フレームの時間差を、本明細書ではループバック時間LBTと呼ぶ。以下、ノードnにおけるループバック時間をLBT(n)のように表記する。
【0035】
信号処理LSIのLBT書込回路20が、算出されたループバック時間LBT(n+1)を上りの通信フレームFのLBTフィールドに書き込んだ後、通信フレームが上流側の隣接ノードnに送信される。
【0036】
図8(b)は、ノードnにおける下りの通信フレームの到達時刻をt1、上りの通信フレームの到達時刻をt4として表している。ここで、ノードnの方がノードn+1よりも上流すなわち通信マスタ装置側にあることから、t1<t2、t4>t3であることに注意する。
【0037】
ノードnの信号処理LSIのLBT読出回路28は、ノードn+1から送られて来た上りの通信フレームのLBTフィールドから、ループバック時間LBT(n+1)を読み取る。また、ノードn+1と同様に、演算回路18がノードnにおけるループバック時間LBT(n)=(t4−t1)を計算する。LBT書込回路がLBT(n)をLBTフィールドに書き込んだ後、通信フレームはさらに上流側の隣接ノードに送信される。
【0038】
図8(a)、(b)から理解できるように、LBT(n)とLBT(n+1)の差分は、ノードnとノードn+1とを結ぶ下り回線と上り回線の二回分の伝播遅延時間PDTを含んでいる。したがって、ノードnの演算回路18は、次式によりノードnとノードn+1との間の伝播遅延時間PDTを求める。
PDT={LBT(n)−LBT(n+1)}/2・・・(式2)
【0039】
なお、マスタ装置Mは、フレームを送出する際、あらかじめLBT=0として送信する。また、末端ノードでの伝播遅延時間PDTの計算式は、PDT=LBT(n)/2となる。
【0040】
以上の演算を、通信マスタ装置を含む全ノードで行うことで、全ての隣接ノード間の伝播遅延時間PDTを求めることができる。
【0041】
図9は、本実施形態に係る、各ノードにおける処理を同期させる方法のフローチャートである。
【0042】
通信マスタ装置Mは、制御用データを含む実際の通信フレームを送信する前に、時刻同期用の通信フレームを各ノードに送信する(S10)。ノードnの時間計測回路14は、上下の通信フレームの時間差であるループバック時間LBT(n)を計測する(S12)。LBT読出回路28は、上り通信フレームのLBTフィールドから、下流側隣接ノードのループバック時間LBT(n+1)を読み出す(S14)。LBT書込回路20は、上り通信フレームのLBTフィールドに、自ノードのループバック時間LBT(n)を書き込み、上流側隣接ノードに送信する(S16)。演算回路は、式2にしたがって自ノードと下流側隣接ノードの間の伝播遅延時間PDTを計算する(S18)。演算回路18は式1にしたがって遅延時間Dを計算し、遅延回路24に設定する(S20)。
【0043】
図10は、本実施形態を適用可能なリニアモータ駆動システム100の概略構成図である。ステージ102は、X方向に沿って配置されたリニアモータ104に搭載されている。また、リニアモータ104は、Y方向に沿って平行に配置された二台のリニアモータ106、108に搭載されている。これにより、リニアモータ駆動システム100は、ステージ102をXY平面内で移動させることができる。
【0044】
図11は、図10のリニアモータ駆動システム100における通信マスタ装置Mと複数のノードX、Y1、Y2間の接続を示す図である。図示するように、通信マスタ装置Mと複数のノードは、上記の通信システム50と同様にライントポロジーで接続される。図1と同様に、通信マスタ装置Mとノードはそれぞれ信号処理LSIとコネクタCを有しており、下り回線と上り回線とがループして通信マスタ装置に戻って来るように、コネクタC間にケーブルが接続される。終端ノードにおける空きコネクタの処置は、図示のように外部ケーブルで折り返ししてもよいし、LSIの内部処理で折り返すようにしてもよい。
【0045】
通信マスタ装置Mは例えばCNC装置であり、ノードX、Y1、Y2は、それぞれリニアモータ104、106、108のモータ制御装置である。CNC装置からモータ制御装置に対して、位置指令、速度指令、トルク指令などの各種動作指令が提供される。
【0046】
この構成において、上述の実施形態の通信方法を適用することで、CNC装置と複数のモータ制御装置の時刻同期精度を改善することができ、したがってステージ102の位置決め精度を改善することができる。
【0047】
以上説明したように、本実施形態によれば、通信マスタ装置と複数のノードとの間をライントポロジーで接続する通信システムにおいて、各ノード間の伝播遅延を測定し、これに基づき各ノードにおける同期信号の生成タイミングを補正することができる。したがって、複数ノード間の時刻同期精度が向上し、各ノードで制御される機器による移動誤差または加工誤差を低減することができる。
【0048】
以上、本発明の実施の形態について説明した。これらの実施の形態は例示であり、それらの各構成要素の組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【0049】
本発明は、複数機器間をライントポロジーで接続した通信システムであって、同期処理が必要となる任意のシステムに適用することができる。
【符号の説明】
【0050】
10 信号処理LSI、 12 同期信号生成回路、 14 時間計測回路、 16 タイマ、 18 演算回路、 20 LBT書込回路、 24 遅延回路、 28 LBT読出回路、 50 通信システム、 F 通信フレーム、 M 通信マスタ装置。
【特許請求の範囲】
【請求項1】
通信マスタ装置と、通信マスタ装置から送出される通信フレームを受信する複数のノードとがライントポロジーで接続された通信システムであって、
前記通信マスタ装置は、ライントポロジー上で通信マスタ装置から遠方に位置する順に、各ノードに与えるべきデータが格納されるフィールドが配置された通信フレームを送出し、
前記ノードは、
通信フレーム内で各ノードに割り当てられたフィールドのデータ到着時に同期信号を生成する同期信号生成回路と、
ライントポロジー上で下流側に隣接するノードとの間に生じる伝播遅延時間を計算する演算回路と、
前記伝播遅延時間に基づき下流側に隣接するノードに送信する通信フレームを遅延させる遅延回路と、
を備えることを特徴とする通信システム。
【請求項2】
請求項1に記載の通信システムを、互いに直交する方向に配置されたリニアモータを使用してステージを駆動するリニアモータ駆動装置に適用した通信システムであって、
前記通信マスタ装置がCNC装置であり、前記ノードがリニアモータ制御装置であることを特徴とする通信システム。
【請求項3】
通信マスタ装置と、通信マスタ装置から送出される通信フレームを受信する複数のノードとがライントポロジーで接続された通信システムにおいて、
前記通信マスタ装置は、ライントポロジー上で通信マスタ装置から遠方に位置する順に、各ノードに与えるべきデータが格納されるフィールドが配置された通信フレームを送出し、
前記ノードは、
通信フレーム内で各ノードに割り当てられたフィールドのデータ到着時に同期信号を生成し、
ライントポロジー上で下流側に隣接するノードとの間に生じる伝播遅延時間を計算し、
前記伝播遅延時間に基づき下流側に隣接するノードに送信する通信フレームを遅延させる
ことを含む通信方法。
【請求項1】
通信マスタ装置と、通信マスタ装置から送出される通信フレームを受信する複数のノードとがライントポロジーで接続された通信システムであって、
前記通信マスタ装置は、ライントポロジー上で通信マスタ装置から遠方に位置する順に、各ノードに与えるべきデータが格納されるフィールドが配置された通信フレームを送出し、
前記ノードは、
通信フレーム内で各ノードに割り当てられたフィールドのデータ到着時に同期信号を生成する同期信号生成回路と、
ライントポロジー上で下流側に隣接するノードとの間に生じる伝播遅延時間を計算する演算回路と、
前記伝播遅延時間に基づき下流側に隣接するノードに送信する通信フレームを遅延させる遅延回路と、
を備えることを特徴とする通信システム。
【請求項2】
請求項1に記載の通信システムを、互いに直交する方向に配置されたリニアモータを使用してステージを駆動するリニアモータ駆動装置に適用した通信システムであって、
前記通信マスタ装置がCNC装置であり、前記ノードがリニアモータ制御装置であることを特徴とする通信システム。
【請求項3】
通信マスタ装置と、通信マスタ装置から送出される通信フレームを受信する複数のノードとがライントポロジーで接続された通信システムにおいて、
前記通信マスタ装置は、ライントポロジー上で通信マスタ装置から遠方に位置する順に、各ノードに与えるべきデータが格納されるフィールドが配置された通信フレームを送出し、
前記ノードは、
通信フレーム内で各ノードに割り当てられたフィールドのデータ到着時に同期信号を生成し、
ライントポロジー上で下流側に隣接するノードとの間に生じる伝播遅延時間を計算し、
前記伝播遅延時間に基づき下流側に隣接するノードに送信する通信フレームを遅延させる
ことを含む通信方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2012−253682(P2012−253682A)
【公開日】平成24年12月20日(2012.12.20)
【国際特許分類】
【出願番号】特願2011−126583(P2011−126583)
【出願日】平成23年6月6日(2011.6.6)
【出願人】(000002107)住友重機械工業株式会社 (2,241)
【Fターム(参考)】
【公開日】平成24年12月20日(2012.12.20)
【国際特許分類】
【出願日】平成23年6月6日(2011.6.6)
【出願人】(000002107)住友重機械工業株式会社 (2,241)
【Fターム(参考)】
[ Back to top ]