ornl-epics / etherip

Java lib. for Ethernet/IP (AllenBradley ControlLogix, Compact Logix PLCs)
Eclipse Public License 1.0
111 stars 69 forks source link

Etherip

A Java library for reading and writing tags on AllenBradley Control Logix or Compact Logix PLCs via the Ethernet/IP protocol (aka DeviceNet-over-Ethernet or CIP-over-Ethernet).

This is a Java implementation of the same protocol that https://github.com/epics-modules/ether_ip provides in C. Like the C implementation, the Java code is based on

What this means:

See also the ICALEPCS 2001 paper "Interfacing the ControlLogix PLC over Ethernet/IP", https://accelconf.web.cern.ch/ica01/papers/THDT002.pdf

The C implementation provides EPICS device support for IOCs on top of the basic protocol library. This Java implementation is currently only the basic read/write library with unit tests to demonstrate the functionality.

For basic read/write, see test/etherip/EtherIPDemo.java or Main.java (called by etherip script) for a simple command line tool.

For a 'scan list' that reads tags all the time, but also allows writing them, see test/etherip/scan/ScanListTest.java

Building

Build with maven:

mvn  -DskipTests=true clean package

Develop in Eclipse via File, Import, Maven, Existing Maven Projects.