メインコンテンツまでスキップ

Allen-Bradley EtherNet/IP

EtherNet/IP (CIP, Common Industrial Protocol) は Allen-Bradley / Rockwell の ControlLogix / CompactLogix シリーズ PLC が使用する通信プロトコルです。

シンボリックタグ (Logix Tag) の制限

現在、このゲートウェイの EIP ドライバは CIP 属性 (class / instance / attribute) のみを読み取ります。ControlLogix で一般的なシンボリックタグ (例: MyController:Pump1.RPM) には、別途 "Read Tag Service" が必要であり、将来のバージョンでのサポートを予定しています。それまでの間、シンボリックタグが必要な場合は、Kepware などのゲートウェイを経由して OPC-UA で取り込む方法を推奨します。


登録フォームの入力値​

入力欄何を記入するか例
IP アドレスPLC の IP192.168.0.90
ポートEtherNet/IP ポート44818 (標準)
Backplane (backplane)バックプレーン番号1
Slot (local-slot)CPU スロット番号0

PLC 側では RSLogix / Studio5000 で EtherNet/IP モジュールが有効化されている必要があります。

LOGIX カードも同じドライバです

接続登録画面に EIP と LOGIX が別々に表示されますが、同じプロトコル、同じドライバです。 ControlLogix / CompactLogix を探している方が名前で見分けやすいように別名を設けただけで、 どちらを選んでも動作は同じです。


タグの PLC アドレス表記​

EIP CIP 座標を <class>,<instance>,<attribute> 形式で入力します。10進または 0x で始まる16進の両方が可能です。

表記意味
0x01,1,1Identity Object → Vendor ID
0x01,1,2Identity Object → Device Type
0x01,1,7Identity Object → Product Name (文字列)
0x6B,1,1Symbol Class instance 1 attribute 1
0x6C,1,1Template Class

CIP 座標をどうやって調べるか​

  • Studio5000 の Tag Browser で attribute 情報を確認
  • Wireshark などで既存の EIP 通信パケットをキャプチャして確認
  • メーカー / インテグレーションパートナーのマッピング表を活用

シンボリックタグに馴染みがある場合は、上記で述べた Kepware 経由の方法 がはるかに簡単です。


データ形式のマッチング​

PLC の値データ形式形式補助
文字列 (製品名、ステータスなど)String(空欄)
整数 (Vendor ID、DeviceType など)Integer(空欄)
実数Float(空欄)
BooleanBoolean(空欄)

EIP ドライバは応答の raw バイトをそのまま文字列として受け取り、その後 [データ形式] に応じて後処理でキャストします。大きな整数 / 実数の変換が必要な場合は、計算式の適用 で後処理してください。


よくある問題と解決策​

症状 / メッセージ考えられる原因解決策
"Connection timeout"ポート 44818 がブロックされている、EtherNet/IP モジュールが無効RSLogix / Studio5000 で EtherNet/IP モジュールを有効化
"Forward Open failure"rack/slot または backplane の不一致上記の表を参照して backplane / slot を修正
"Class/Instance not found"誤った CIP 座標Studio5000 の Tag Browser または Wireshark で座標を検証
値が壊れて見えるraw バイトをそのまま String として受け取るため計算式で little-endian を解釈するか、Kepware 経由を推奨

より詳細な例 / 自動登録​

高度な操作 — REST API の EIP 例を参照してください。