技術コラム Vol.11

つながる!産業用イーサネット対応マイコン

公開日:2023/04/06

近年のDXの推進は、工場などの製造業にも波及しており、スマートファクトリー化などの取り組みが活発になっています。この取り組みに必要不可欠な技術が産業用イーサネットであり、高い通信品質と堅牢性が求められる生産設備機器の相互接続ネットワークを構築することができます。

今回は、産業用イーサネットを検討されている方向けに、概要とサンプルプログラムを使ったEtherCATのデモをご紹介します。

  1. 産業用ネットワークの概要
  2. RX72MでEtherCATを動作させる
  3. まとめ

1.産業用ネットワークの概要

産業用ネットワークは、工場の生産設備機器や管理システムを相互接続するネットワーク技術の総称で、通信不良によって生産に支障がでない高い堅牢性と、機器同士を連携させるためのリアルタイム性など、一般的なネットワークよりも厳格な仕様が求められます。産業用ネットワークの中でも、イーサネットをベースにした通信規格のことを産業用イーサネットと呼びます。

産業用ネットワーク自体の歴史は古く、元々はCC-LinkやDeviceNet、PROFIBUSなど、フィールドバスと称されるRS485をベースにしたネットワークが主流でした。しかし、近年のDX化によるトラフィックの増加に伴い、より高速なネットワークが求められるようになり、ここ数年で産業用イーサネットが主流になってきています。

本コラムでは産業用イーサネットの「EtherCAT」「EtherNet/IP」、フィールドバスの規格から「PROFIBUS」「CC-Link」についてピックアップしてご紹介します。

規格名 通信速度 通信距離 最大接続台数
EtherCAT 全二重100Mbps 100m(ノード間) 65535台
EtherNet/IP 10/100Mbps 100m(ノード間) 256台
PROFIBUS 9600bps~12Mbps 1200m~100m
(通信速度による)
126台
CC-Link 9600bps~10Mbps 1200m~100m
(通信速度による)
64台

(1)「EtherCAT」の概要

Beckhoff Automation GmbH社が開発し、現在はEtherCAT Technology Group(以下、ETG)により管理されている、Ethernetベースのネットワークです。主に欧州でのシェアが高く、国内ではトヨタ自動車で全面採用されたことで話題になりました。既存の汎用イーサネットをベースにネットワーク環境を構築でき、精度の高い時刻同期を可能とする低ジッタとリアルタイム性が特徴です。

関連して、1Gbps・10Gbpsの高速通信に対応する「EtherCAT G」という規格もあります。

通信はマスタ・スレーブ方式でマスタが通信タイミングを一元管理し、スレーブはオンザフライ式で流れてくるデータに書き込みや読み込みを行います。この仕様により、予想外の通信が発生することなく、リアルタイム性を保証しています。

(2)「EtherNet/IP」の概要

Open DeviceNet Vendor Association, Inc.(以下、ODVA)により管理されている、Ethernetベースのネットワークです。主に米国でのシェアが高いプロトコルです。

CIP(共通産業用プロトコル)を汎用イーサネットに適用したプロトコルとなっています。EtherNet/IP以外でCIPを使用している産業用イーサネットとしてDeviceNet、ControlNet、CompoNetなどがあり、これらもODVAによって管理されています。また、EtherNet/IPの特長としては、TCP/IPを使用しているため、既存の汎用イーサネットワークと共存が可能で、汎用性・拡張性に優れています。

通信方式はマスタ・スレーブ方式とは異なり、スキャナ・アダプタという概念で構成され、各役割によって通信の送信タイミングに制限があるなどします。

(3)「PROFIBUS」の概要

ドイツが官民共同にて開発し、現在はPROFIBUS & PROFINET Internationalにより管理されているネットワークです。海外でシェアの高いフィールドバスですが、近年は、PROFINETなど産業用イーサネットに置き換わってきています。

PROFIBUSはプロトコルを使い分けることでファクトリーオートメーション(FA)とプロセスオートメーション(PA)まで幅広い分野でカバーできます。

PROFIBUSはマルチマスタを許容するトークンパッシング方式とマスタ・スレーブ方式を組み合わせたハイブリッド方式で通信を行います。

(4)「CC-Link」の概要

三菱電機株式会社が開発し、CC-Link協会により管理されているネットワークです。

国内では最もシェアの高いフィールドバスですが、近年は、CC-Link IEなど産業用イーサネットに置き換わってきています。

CC-Linkはマスタ・スレーブ方式で通信し、1台のマスタに対して最大64台のスレーブを接続することができます。スレーブには「リモートデバイス局」「リモートI/O局」があり、マスタである「マスタ局」は接続したスレーブの種類やアドレスを把握してネットワークを管理します。

その他、マスタ局のバックアップとして「待機マスタ局」を接続でき、マスタを二重化することで故障に強い構成が可能です。

2.RX72MでEtherCATを動作させる

ルネサス エレクトロニクス社では、さまざまな産業用イーサネットに対応したデバイスを提供しています。

参考:産業用Ethernet & Fieldbus(ルネサス エレクトロニクス社)

弊社では、産業用イーサネット対応するCPUボード製品として、下記をラインアップしています。
詳細は各製品ページをご覧ください。

今回は、「AP-RX72M-0A」でEtherCAT通信を動作させてみます。

RX72Mは、RXv3コア 240MHzとROM 4MByte、RAM 1MByteのほか、EtherCATのスレーブコントローラ、USB、CANなどの各種インタフェースを搭載しています。今回使用する「AP-RX72M-0A」は、Ethernetを2ポート搭載し、EtherCATをはじめ、各種産業イーサネットに対応可能で、評価用のサンプルプログラムも提供しています。

(1)SOEMの準備

EtherCAT通信を始めるためにまずPCにマスタ機の役割ができるように準備を行います。

事前にマスタ機としてお使いになるPCにVisual Studioをインストールしてください。

その後、オープンソースのEtherCATマスタ用ソフトウェア「SOEM(Simple Open EtherCAT Master)」を「Open EtherCAT Society」のWebサイトよりダウンロードしてください。

SOEMのダウンロード

ダウンロードしたSOEMをPCの任意のフォルダへデータを展開し、コマンドプロンプトで対象フォルダに移動後、次の3コマンドを順次実行してください。

> make_libsoem_lib.bat "C: Program Files (x86) Microsoft Visual Studio 10.0 VC" x86
> make_test_win32.bat "C: Program Files (x86) Microsoft Visual Studio 10.0 VC" x86
> make_test_win32_all.bat "C: Progra m Files (x86) Microsoft Visual Studio 10.0 VC" x86

※コマンド内のVisual Studioのパスはユーザーの環境に沿って修正ください。

(2)プログラムの実行

AP-RX72M-0Aでは、ビルドしなくても書き込むだけで動作するサンプルプログラムの実行ファイルを提供しています。

AP-RX72M-0AにE2エミュレータliteとLANケーブルを接続して、CS+プロジェクトからプログラムをダウンロード・実行してください。

サンプルプログラムの実行環境

提供しているサンプルプログラムをカスタマイズやビルド・デバッグする場合には、EtherCAT管理団体であるETGからスレーブスタックコード(以下、SSC)と呼ばれるソースコードをダウンロードする必要があります。

ETG(EtherCAT Technology Group)

ダウンロードには、ETGへの入会が必要です。入会費は無料です。

ソースコードはETGからダウンロードできる「Slave Stack Code Tool」を使って出力できます。

SSCを出力するためのソフトウェア「Slave Stack Code Tool」

(3)EtherCAT通信の確認

AP-RX72M-0Aでプログラムの実行を開始するとEtherCATのスレーブ機として動作を開始します。

PCからEtherCATマスタ通信を始めるためにまずは次のコマンドを実行します。

> getmac

「getmac」コマンドはPCが認識しているNICを表示します。AP-RX72M-0Aと接続したPCのLANポートに該当するNICを確認し、"トランスポート名"内にある{}中の数値(デバイス名)を確認します。

通信に使用するNICのデバイス名

最後にPCから次のコマンドを順次実行します。

> cd "SOEMのインストールフォルダ"\test\win32\simple_test
> simple_test.exe /Device/NPF_{XXXX} -map

上記コマンドを実行すると、PCがEtherCATマスタ機としてAP-RX72M-0Aへデータを送信し、データに応じて基板上のLEDが点滅します。

このときパケットキャプチャソフト「Wireshark」などを使うことでEtherCAT通信データを確認することもできます。

Wiresharkで通信データを確認

サンプルプログラムの内容については公開しているアプリケーションノートも参考にしてください。

AN1565 AP-RX72M-0A(RX72M CPU BOARD) EtherCAT サンプルプログラム解説

3. まとめ

今回は、産業用ネットワークの概要とRX72Mを利用したEtherCAT通信の手順について、簡単にご紹介しました。 ある調査会社のレポートによると、製造業のDX化などに伴い、産業用ネットワーク市場は拡大を続けており、中でも産業用イーサネットについては、すでに産業用ネットワーク全体の7割近くを占めているとのことです。

これから、DX化を進める製造業の企業では、産業用イーサネットは欠かせない技術になってくると思います。

弊社では産業用ネットワーク対応CPUを搭載したボードとして「AP-RX72M-0A」の他、「AP-RZT2-0A」、「AP-RZT-0A」、「AP-RZN-0A」などもご用意しております。

製品のご案内

本コラム以外にも開発にお役立ていただける技術情報をアプリケーションノートとして公開しております。
ご興味のある方は、ぜひ製品をご利用ください。

  • ※ArmおよびCortexは、米国および/またはその他の地域におけるArm Limited(またはその子会社)の登録商標です。
  • ※記載されている会社名、製品名は、各社の登録商標または商標です。
  • ※記載の内容は改良のため、予告なく変更する場合がございます。