EtherNet/IP is an industrial network protocol that adapts the Common Industrial Protocol to standard Ethernet. EtherNet/IP is one of the leading industrial protocols in the United States and is widely used in a range of industries including factory, hybrid and process.
Connection Properties
Endpoint Properties
Input Format on Write
When writing data, a JSON object with the following structure should be sent to a write Endpoint (/set
):
Copy { 'id' : '<correlation id>' , 'value' : '<value>' }
Output Format on Write
When writing data, the result of the operation will be published to a /res
topic with the following structure:
Copy { 'id' : '<correlation id>' , 'timestamp' : '<msSinceEpoch>' , 'result' : '<result>' }
Output Format on Read
When data is read from a read Endpoint (/req
) the following JSON is returned as a response in a /res
topic:
Copy { 'id' : '<correlation id>' , 'timestamp' : '<msSinceEpoch>' , 'value' : '<value>' }
Output Format on Subscribe
When data is read by means of a subscription Endpoint, the following JSON is returned as response:
Copy { 'id' : '<correlation id>' , 'timestamp' : '<msSinceEpoch>' , 'oldValue' : '<old value>' , 'value' : '<value>' }
Service Commissioning File Example
Copy description: >
Sample EtherNet/IP service commissioning file
metadata:
name: Sample EtherNet/IP service
icon: https://www.cybus.io/wp-content/uploads/2017/10/for-whom1.svg
provider: cybus
homepage: https://www.cybus.io
version: 1.0.0
parameters:
host:
type: string
default: 127.0.0.1
initialReconnectDelay:
type: integer
default: 1000
maxReconnectDelay:
type: integer
default: 30000
factorReconnectDelay:
type: integer
default: 2
resources:
ethernetIpConnection:
type: Cybus::Connection
properties:
protocol: EthernetIp
connection:
host: !ref host
connectionStrategy:
initialDelay: !ref initialReconnectDelay
maxDelay: !ref maxReconnectDelay
incrementFactor: !ref factorReconnectDelay
sampleSubscription:
type: Cybus::Endpoint
properties:
protocol: EthernetIp
connection: !ref ethernetIpConnection
subscribe:
tagName: dn_count
programName: SimulationMain
sampleRead:
type: Cybus::Endpoint
properties:
protocol: EthernetIp
connection: !ref ethernetIpConnection
subscribe:
tagName: dn_count
programName: SimulationMain
sampleWrite:
type: Cybus::Endpoint
properties:
protocol: EthernetIp
connection: !ref ethernetIpConnection
subscribe:
tagName: dn_count
programName: SimulationMain
tagType: DINT