OMRONのEthernet/IP通信カプラNX-EIC202にセーフティコントロールユニットNX-SL3300を装着した状態で、OMRON NJ501とNX-SL3300内に作成した公開変数をEthernet/IPで接続します。
本稿の構成では通信経由で安全信号をやり取りすることはできませんが、NJ501からNX-SL3300へ汎用信号を送ったり、NX-SL3300から非常停止や運転準備のON/OFF状態をNJ501に送ることは可能ですのでその例を示します。
1 構成
2 NX-EIC202の設定
NX-EIC202とNX-SL3300の組み合わせで作成した過去投稿のプロジェクトをベースにEthernet/IPでNJ501と通信するための設定を追加します。
“new_SafetyCPU0”を選択し“スタンダード”の“公開変数”を開き、以下のような入力と出力の変数を追加します。
“new_SlaveTerminal_0”を選択し“構成・設定”の“NX-EIC202”を右クリックして“I/O割付表示”を選択します。
上記でNX-SL3300に追加した公開変数が以下のように追加されていることを確認します。
(追加した公開変数はBOOL型ですが、1WORD単位で領域が自動的に追加されます)
BOOL型の公開変数をもう一個追加すると、BOOL型でも1変数で1BYTE分占有することが分かります。
パソコンとNX-EIC202をUSB接続し、NX-EIC202及びNX-SL3300に設定を書き込みます。
3 NJ501CPUの設定
SysmacStudioでNJ501の新規プロジェクトを作成します。
WORD型データのビット指定ができるように以下のような共用体型を作成します。
グローバル変数に以下のようなネットワーク公開変数を作成します。
(データ型のサイズはNX-EIC202のI/O割付下部に表示されるBYTE数に合わせます)
“ツール”から“Ethernet/IPコネクション設定”を選択します。
“Ethernet/IPデバイスリスト”から“NJ501”を右クリックして“編集”を選択します。
ツールボックスの“+”ボタンを選択します。
NX-EIC202のIPアドレスと形式、リビジョンを選択して“追加”します。
“内蔵Ethernet/IPポート設定コネクション設定”の“タグセット”画面で“一括登録”を選択します。
すべてチェックした状態で“登録”します。
“コネクション”設定を開きデバイスを追加して以下のように設定します。
“タスク設定”の“変数のタスク間排他制御設定”に作成したネットワーク公開変数を追加します。
プログラムPOU“Program0”にビルドエラーにならないように適当なラダーを追加します。
ビルドしエラーが無いことを確認し、NJ501とオンライン接続してEthernet/IPの設定も含めて書き込みます。
4 動作確認
NJ501のグローバル変数“NJ501toNXEIC202.BOOL[0]”をONすると、NX-SL3300の公開変数“PLCtoSCPU1”がONします。
NJ501のグローバル変数“NJ501toNXEIC202.BOOL[8]”をONすると、NX-SL3300の公開変数“PLCtoSCPU2”がONします。
NX-SL3300の公開変数“SCPUtoPLC1”がONすると、NJ501のグローバル変数“NXEIC202toNJ501[2].BOOL[0]”がONします。
NX-SL3300の公開変数“SCPUtoPLC2”をONすると、NJ501のグローバル変数“NXEIC202toNJ501[2].BOOL[8]”がONします。
5 参考文献
OMRON:NX-SL□□□□/SI□□□□/SO□□□□セーフティコントロールユニット ユーザーズマニュアル(SGFM-710Z)
以上。