産業用イーサネット(11)EtherCAT の同期動作

EtherCATは、スレーブ間またはマスタ/スレーブ間で動作タイミングを合わせるための同期動作のモードを用意している。例えば、工作機械のパラメータのダウンロード/アップロードや LED の点灯ならば動作タイミングを合わせる必要はないが、多関節ロボットを動作させるときは各関節を制御するモータ動作は同期する必要がある(図1 参照)。勝手な順序やタイミングで動いたのでは期待通りには動作せず危険だ。

同期をとるためには、マスタと全てのスレーブの時刻が一致している必要がある。EtherCAT では、時刻誤差を1マイクロ秒以内に抑える同期方式を採用している。

産業用途で使用する高精度な時刻同期は、電力と鉄道用に規格化された(ITUT8275.1/8275.2)が最初だ。この規格を基に通信用のプロファイルとして IEEE1588 が制定された。現在の最新規格は、IEEE1588v2 (IEEE1588-2008)だ。高精度時刻同期については、Ethernet TSN の解説の中で改めて説明の予定だ。ここでは省略したい。

図1 多関節ロボット制御
図1 多関節ロボット制御

フリーラン(Free Run)

同期は取らず、各スレーブが独自の内部周期で動作する。スレーブ間の同期も EtherCAT の PDO 通信フレームとの同期もとらない。動作確認等で使用する。

図2 フリーラン
図2 フリーラン

※初掲の図は「1つのPDOに対して複数処理が行われるように誤解を与える」とのご指摘をいただきましたので、図の差替えを行いました(2023/6/29)

SM 同期(Synchronous with SM)

各スレーブは、SM2 または SM3 のEtherCATのPDO フレーム受信に同期して動作する。フレーム受信タイミングと同期するが、スレーブ間の伝搬遅延時間分のずれが発生する。伝搬遅延時間のずれがあるため、多軸ロボットなどの同期処理には使用できない。

図3 SM 同期
図3 SM 同期

DC 同期( Synchronous with SYNC Event )

スレーブ間の伝搬遅延時間を考慮し、全スレーブの時刻を合わせる(同期する)。時刻ずれ(同期誤差)は1マイクロ秒以内と小さく、ほぼ同じ時刻に合わせることができる。この時刻を使用し、各スレーブで同時に動作を開始するモード。多軸ロボットの制御には不可欠なモードだ。

図4 DC 同期
図4 DC 同期

工場・物流現場のネットワークの現状

この記事を書いた人

岩崎 有平

早稲田大学 理工学部 電子通信学科にて通信工学を専攻。
安立電気(現 アンリツ)に入社後、コンピュータ周辺機器の開発を経てネットワーク機器の開発やプロモーションに従事する。
おもにEthernetを利用したリアルタイム監視映像配信サービスの実現や、重要データの優先配信、映像ストリームの安定配信に向けた機器の開発行い、Video On Demandや金融機関のネットワークシステム安定化に注力した。
現在は、Ethernetにおけるリアルタイム機能の強化・開発と普及に向けて、Ethernet TSNの普及活動を行っている。