2系統のEtherCATを異なる通信周期で運用する

設定

なぜ2系統(LANを2本)が必要になるのか?

装置の稼働スピードを上げ、システムの応答性を高めるためには、EtherCAT(Ethernet for Control Automation Technology)通信周期を早くするのがセオリーです。しかし、EtherCATのスレーブには通信周期が遅い機種も多く、1系統で使用できる通信周期は固定されているため、スレーブ性能の関係で速度を上げられない問題があります。

解決策:LANケーブルを2系統で動作させる方法

LANケーブルを2系統で動作させることで、この問題を解決できます。この記事では、その設定方法をご紹介します。設定自体は簡単ですが、パソコン側が高速通信に耐えうるかの検証は大変です。検証を省略して安心を得るためには、モベンシス社が販売しているPCを購入するのが近道かもしれません。

WMXの活用

WMXでは、特定のアプリケーションに合わせて異なる通信周期を持つ複数の系統を運用することが可能です。また、各系統ごとに異なるサイクルタイムを設定することもできます。この記事では、その方法をご紹介いたします。

まとめ

  • EtherCAT通信周期の向上: 装置の稼働スピードとシステムの応答性を高めるために重要。
  • 2系統のLANケーブル: スレーブ性能の制約を克服するための解決策。
  • WMXの多様な運用: 異なる通信周期とサイクルタイムの設定が可能。

この記事を参考に、システムの最適化を図ってください。

2系統のEtherCATを行うために、NICをもう一つ追加する

EtherCATのLAN1本で運用していた状態で、機器の接続を分離し2系統にするという方法をご説明します。※EcConfiguratorで機器の設定が完了していることが前提とします。

参考記事:WMX | TOOL EcConfiguratorTOOL (wmx-fan.com)

RTX Devicesに表示されているNICがEtherCAT用です。

NICをRTXのドライバーとして追加

まず、Windowsの管理下からRTXに渡す設定を行います。Windows Devices一覧の使用したいNICを選択し、Installボタンを押します。選択したNICがRTX一覧に移動します。

RTXに移動しましたが、まだEtherCAT通信は行えません。(Unconfiguraedの表示になっています)

EtherCAT通信を行うには、忘れずにAssign Platform to NICボタンを押してください。

これで、EtherCAT通信が出来るNICとなりました。

設定確認(チェックポイント)

EtherCAT通信を行うNICはWindowsから見ると以下のようになります。画面では無効になっていても、NICのLEDは点滅しています。

WMXでEtherCAT2系統分の制御を行う設定

2系統モードにするには、WMXが参照する2つのファイルの値を書き換えます。(デフォルトは1系統で使用する設定になっています)

1つ目のファイルは C:\Program Files\SoftServo\WMX3\Module.ini の中の値を

NumOfInterrupt = 2

[Platform 0]
NumOfMaster = 2

に変更します。

2つ目のファイルは C:\Program Files\SoftServo\WMX3\Platform\EtherCAT\RtxTcpIp.ini の値を

[TCP/IP]
NumOfInterfaces=2

に変更します。

設定のポイント

設定後は再起動が必要です。

EtherCATを2系統になっていることをWMXで確認する方法

設定が正しい場合は、Agent画面の状態が書き換わっています。

WOS画面では、マスター数が2に変わっています。

機器の接続検証

検証として、LANにそれぞれ1機器を接続しました。(NICとスレーブを1対1で接続)

系統接続機器
NIC1MOVENSYS BHY-AX-EC-04-CL
NIC2Panasonic A6サーボ

認識されている場合は、WOSの表示で以下のようになります。

ENIファイルの設定が正しくできていない場合は、スレーブの情報が正しく出てきません。1系統で通信ができていれば、2系統に変更してもENIファイルの変更は不要です。

異なる通信周期を持つ複数の系統の設定

検証では、1つ目のNICは1ms。2つ目のNICは0.125msとして動かしてみます。

通信周期の変更方法

WMXが参照するファイルの設定値を変更します。このファイルで通信周期が記載されています。

C:\Program Files\SoftServo\WMX3\Platform\EtherCAT\ec_network.def

この中の

[Master 0]
CommCycle=1000

[Master 1]
CommCycle=1000

を変更します。1000が1msになります。

今回は2本目のNICで125umの通信を行いたいため

[Master 1]
CommCycle=125

としました。[Master 0/1]がNICのことになります。

変更の注意点

権限の問題で、そのままファイルの上書きができません。いったんデスクトップに保存してから、ファイルを上書きしてください。

動作検証

通信を行った状態は以下のようになります。

[NIC1] 1ms周期について

BHY-AX-EC-04-CLの最高は1ms周期ですので、これ以上早くすることができません。

[NIC2] 125us周期について

Panasonicのサーボはこのスピードに対応しています。ただ、このPCの性能ではパケットタイムアウト発生していますね。 この速度になると、PCやNICの性能が問われてきます。

以上で通信を行うことができました。自作のソースコードは変更することなく動作させることができます。

別の設定方法

後で気づいたのですが、WMX3.6のバージョンからWOS+アプリが追加されていました。

EtherCATの設定をメモ帳で変更していましたが、こちらのアプリでは画面のパラメータで変更できそうな雰囲気があります。 こちらもまた記事にしたいと思います。

コメント

タイトルとURLをコピーしました