CompactLogix#

A tested PLC model for EtherNetIPDevice

CompactLogix

CompactLogix is the specific Allen-Bradley PLC family EtherNetIPDevice has been hardware-tested against (CompactLogix 5332E 1769-L32E), not a separate driver class.

Creating an EtherNetIPDevice for a CompactLogix PLC#

{
  "version": 1,
  "protocol": "ethernetip",
  "device": {
    "name": "line_plc",
    "description": "CompactLogix PLC for line telemetry",
    "manufacturer": "Allen-Bradley",
    "model": "CompactLogix 5332E 1769-L32E"
  },
  "connection": {
    "host": "192.168.1.10",
    "port": 44818,
    "route_path": {
      "hops": [
        {"type": "backplane", "slot": 0}
      ]
    }
  },
  "timing": {
    "poll_interval": 1.0
  }
}
import time

from instro.lib.publishers import NominalCorePublisher
from instro.ethernetip import EtherNetIPDevice

RID = "<dataset_rid>"  # Nominal Core dataset RID.

with EtherNetIPDevice(config="compactlogix.json", autostart=True) as plc:
    plc.add_publisher(NominalCorePublisher(dataset_rid=RID))
    time.sleep(10)

Parameters and methods specific to EtherNetIPDevice can be found in the Reference.