今回の記事ではオムロンのNX CPU同士でEthernet/IP+Tag Setの構築方法を説明します。
Tag Setの活用により、複数のGlobal 変数を1つのEthernet/IP Tagとしてデータをまとめ、データの構造化・Tag数の節約・変数管理にも活躍可能です。
さ、FAを楽しもう。

前書き
いつも私の技術ブログとYouTubeチャンネルをご覧いただき、心より感謝申し上げます。また、いまFullさん(full@桜 八重 (@fulhause) / X)と共に毎週水曜日の夜にお届けしている「高橋クリス」ラジオ番組を運営しています。
技術は独り占めせず、届けるもの
私たちは工場の生産技術や制御に関する技術情報を、ブログや動画などで無料公開しています。「知識は誰でもアクセスできるべき」という信念のもと、現場で役立つ具体的なノウハウやトラブル事例などを発信してきました。すべて無料で続けているのは、「知らなかったせいで困る人」を少しでも減らしたいからです。
また、もしあなたの現場で…
- 「このPLCとデバイスの組み合わせ、ちゃんと動くのかな?」
- 「EtherCAT通信でうまくいかない部分を検証してほしい」
- 「新しいリモートI/Oを試したいけど社内に検証環境がない」
など、困っている構成や試してみたいアイデアがあれば、ぜひお知らせください。機器の貸出や構成の共有が可能であれば、検証し、記事や動画で発信します(ご希望に応じて匿名対応も可能です)。
支援のかたち
現在、私達の活動はほぼ無償で続けており、記事や動画の制作には、時間と検証環境の整備が必要です。この活動を継続的にコンテンツを提供するためには、皆様の温かいご支援が大変重要です。
メンバーシップ(ラジオの応援)
Fullさんとのラジオをより充実させるための支援プランです。
https://note.com/fulhause/membership/join
Amazonギフトリスト
コンテンツ制作に必要な機材・書籍をリストにしています。
https://www.amazon.co.jp/hz/wishlist/ls/H7W3RRD7C5QG?ref_=wl_share
Patreon(ブログ・動画活動への応援)
月額での小さなご支援が、記事の執筆・検証環境の充実につながります。
https://www.patreon.com/user?u=84249391
Paypal
小さな支援が大きな力になります。
https://paypal.me/soup01threes?country.x=JP&locale.x=ja_JP
知ってたら助かること、届けたいだけです
あなたの応援が、知識の共有をもっと自由で持続可能なものにしてくれます。これからもどうぞよろしくお願いします。
soup01threes*gmail.com
技術はひとりじゃもったいない。
Implementation
今回の記事ではNX102-9000とNX502-1500両方にも設定が必要です。
NX1 Side
最初にNX1側を構築します。

Ethenret/IP ポート
NX102-9000本体のEthernet/IP PortのIP設定をしてください。

構造体
次は構造体を作成するためにData→Data Typesをクリックします。

今回の記事はメモリOFFSETを共有できるUNIONデータ・タイプを定義します。

Global Variables
今度はGlobal変数を定義していきましょう。Data→Global Variablesをクリックします。

先程定義したUNION構造体を使用し、Global変数を定義します。
そして出力変数をOuputに設定し、入力変数をInputに設定します。

Ethernet/IP Setting
次はNX102-9000のEthenret/IP接続を行い、Tools>Ethenret/IP Connection Settingsをクリックしてください。

今回記事でNX102-9000 のPort2を使用するので、Port2を選び>右クリック>Editします。

こちらはSysmac Studio のEthernet/IPの設定画面になります。

Create New Tag Set
新しい出力Tagを作成したいので、Output Tabを開き→右クリック→Create New Tag Setします。

Done!新しいTag Setが追加されました。

次はTag Set名を入力してください。

次は先程追加したTag Setに右クリック→Create New Tagをクリックします。

Done!Tag欄が追加されました。

今度は先程Global Variablesで追加したOutput変数を入力しましょう。

EIP_PIS_StatusというTagは4 Bytes占有であることがわかります。

コントローラーへ転送
Ethernet/IPの設定を完了したら、Transfer to ControllerでEthernet/IP設定をNX502-1500に転送します。

ダウンロード
次はTransfer>To Controllerでプロジェクト全体もNX502-1500に転送しましょう。

NX5 Side
次はNX5側を構築します。

Sysmac Studioでは複数のCPUを1つのプロジェクトとしてまとめれます。

初回ログイン
Sysmac Studioから新品のNX502-1500を接続すると、User名とパスワードの設定が求められ、それらを設定し、CPUに転送していきましょう。

Done!

Ethenret/IP ポート
次はNX502-1500本体のEthernet/IP PortのIP設定をしてください。

Global Variables
今度はGlobal変数を定義していきましょう。Data→Global Variablesをクリックします。

GlobalのEthernet/IP入力データ変数を定義し、Inputに設定します。

Ethernet/IP Setting
次はNX5のEthenret/IP接続を行い、Tools>Ethenret/IP Connection Settingsをクリックしてください。

Ethernet/IPを使用するポートを右クリック→Editします。

こちらはSysmac StudioのEthernet/IP接続設定画面です。

すべて変数登録
プログラム内にあるInput/Output変数を”Register All”ボタンで変数をEthernet/IPネットワークに登録します。

NX102-9000の追加
次はSysmac StudioにNX102-9000のEthernet/IP接続を追加します。

ノードアドレス
Node AddressはNX102-9000のIPをアドレスに設定します。

モデル名
Model NameはNX10202-9000に設定してください。

Revision
Revisionは2に設定します。

結果
最後はAdd ボタンをクリックしNX10202-9000を追加します。

Done!

新しい接続を作成する
次は新しいEthernet/IP接続を作成し、Input VariableをNX1のTag Set名に合わせて設定すればOKです。

コントローラーへ転送
Ethernet/IPの設定を完了したら、Transfer to ControllerでEthernet/IP設定をNX102-9000に転送します。

ダウンロード
次はTransfer>To Controllerでプロジェクト全体もNX102-9000に転送しましょう。

Result
NX5側からTarget Node Statusに青いランプがついてます。それは通信確立です。

NX1のデータをNX5にEthernet/IP経由で転送できました!
