-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
executable file
·45 lines (34 loc) · 1.85 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
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/EPICSTools/ether_ip
provides in C.
Like the C implementation, the Java code is based on
* The generic EtherNet/IP specification available
from http://www.odva.org.
This describes the basic CIP commands and how they
are wrapped for TCP.
It allows reading the device info like vendor code
and serial number from the AllenBradley Control Logix ENET module.
* Allen Bradley document 1756-RM005A-EN-E.pdf,
"Logix5000 Data Access", which descrives the CIP service codes
specific to the ControlLogix 5000 series.
It allows reading and writing tags on the controller.
What this means:
* The code can read and write tags from AllenBradley Control Logix PLCs.
* There is generic EtherNet/IP code for reading attributes of control net objects.
You might be able to use that to access information on other types of
EtherNet/IP devices, but as in the Control Logix example you might
need details about additional, vendor-specific CIP service codes
to get at the useful data.
See also the ICALEPCS 2001 paper "Interfacing the ControlLogix PLC over Ethernet/IP",
http://accelconf.web.cern.ch/AccelConf/ica01/papers/THDT002.pdf
The C implemetation also provides EPICS device support
for IOCs on top of the basic protocol library.
The Java implementation is currently only the basic read/write library
with unit tests to demonstrate the functionality.
Eventually, this could be connected to an EPICS V4 network server.
For basic read/write, see test/etherip/EtherIPDemo.java
For a 'scan list' that reads tags all the time, but also allows writing them, see test/etherip/scan/ScanListTest.java