You are on page 1of 6

EGD Configuration Checklist

Introduction
EGD is a communication protocol based on Ethernet data packages that are sent
perodically by one device (the producer) and received by one or more other devices (the
consumers). These data packages are referred to as exchanges.
EGD is based on Internet Protocol and is connection less. That is, unlike other typical
communication protocols, reception of data exchanges is not acknowledged.
The advantage of this concept is reduced overhead-, and network bandwith utilization.
EGD is an efficient way to exchange memory between devices on a network. It is not
intended for event notification or communications, where loss of a data sample could
have significant consequences.
A producer can determine physical health of the network, but cannot assume arrival of
transmitted data at the consumer(s).
A consumer knows the time interval to receive data and can therefore qualify health of
the communication.
A simple EGD communication between two or more devices (targets) requires at least a
produced exchange to send data from one device, and one or more corresponding
consumed exchanges to receive this same data on other devices.
Each device can however produce and consume multiple exchanges (to-, or from multiple
other devices) at the same time.

EGD Configuration
EGD is configured in Machine Edition by adding an EGD component to a target and
setting up produced and consumed exchanges as required by the application.
Communication takes place automatically without any application program intervention.
Configuration of EGD exchanges (produced, as well consumed) specifies two sets of
information:

The Exchange Configuration (Data Definition)

The Exchange Properties (Communication Parameters)

Exchange Configuration / Data Definition


The data definition of an EGD exchange is a list of data elements (ranges) that are
included in this exchange.

On a produced exchange definition, this list specifies all memory locations (i.e.
reference memory or symbolic variables) that are to be sent with this exchange.

On a consumed exchange definition, this list specifies all memory locations,


where the received data is to be placed.

Data source on the produced-, and consumed exchange may be different. A


consumer receives an exchange as raw data stream that can be distributed to any
suitable PLC memory location.

Data length of a produced exchange and the corresponding consumed exchange


must exactly match. A consumer can only receive complete exchanges. If not all
data in the consumed exchange is needed, part of it may be marked as unused or
simply be discarded.

Maximum data length for a single exchange is 1400 bytes.


Exchange Status
Each exchange data definition (produced, as well consumed) in an intelligent EGD
device (PLC- CPU, or ENIU) automatically defines one status word that must be mapped
to a memory location. An application can monitor the exchange status word to determine
health of the communication.
The status word is not part of the exchange data and does not count towards the exchange
data length.
Exchange Timestamp
Intelligent EGD producers (PLC- CPU, or ENIU) automatically add a timestamp to each
exchange before sending it to a network interface. Each consumed exchange data
definition includes an 8 Byte timestamp. This field may be left unused (default) or
mapped to PLC memory. The receiving CPU automatically extracts the timestamp from
the exchange into this memory location. An application can e.g. read the timestamp to
determine whether the exchange contains actual data.
The time stamp is not part of the exchange data and does not count towards the exchange
data length.

Exchange Properties / Communication Parameters


The following section describes communication parameters common to EGD exchange
configuration on all GE Fanuc products.
Please note: As far as not marked different, these parameters appear in the properties of
both, produced and consumed exchanges. Within Machine Edition configuration, the
parameters do not necessarily appear in the order given below.
(Local) Producer ID

1)

The Local Producer ID is a general configuration parameter in the EGD component of a


device.

It must be a unique number across the network of EGD devices to identify the
producing device. The Local Producer ID is given in IP address format and is
submitted with each produced exchange from the device.

It does not necessarily need to be the IP address of a local Ethernet interface. (In a
PAC System or 90-70, there may also be more than one ETM sending / receiving
EGD.)
The Producer ID also appears in each consumed exchange configuration and must match
the Local Producer ID of the exchange that is to be received.
Exchange ID

1)

The Exchange ID is typically first assigned on a produced exchange and is submitted


with the exchange.

It must be a unique number for each exchange from one and the same producing
device. Exchanges from different producing devices may however use the same
Exchange ID.

The Exchange ID of both, a produced exchange and the corresponding consumed


exchange must always match. This also applies for multicast exchanges.
1)

Producer ID and Exchange ID together provide a unique identification for each EGD
exchange on a particular network.
Produced exchanges are either multicast, or directed to a target IP address. However, the
decision to consume an exchange is NOT taken on the IP address of the producer, but on the
Local Producer ID and Exchange ID submitted with the exchange.

Adapter Name
Designates the Ethernet interface that is to produce / consume an exchange. This setting
is of special interest in systems with more than one Ethernet interface.

On PAC Systems, the Ethernet adapter (ETM) is specified by its Rack.Slot


location.

On 90-70 PLCs, the Ethernet adapter (CMM742) is specified by its name as


configured in the hardware configuration of the module.
On 90-30 and VersaMax PLCs, Adapter Name can only refer to the Ethernet
daughterboard of a CPU.

Destination Type (Producer only)


Specifies, whether an exchange is sent as a Unicast, or Multicast message.

A unicast exchange is sent directly to one destination IP address. It can only be


received by that specific device.

A multicast exchange is sent to a specific range of IP addresses and can therefore


be received by several devices. Use of these Multicast IP addresses is transparent
2)
to the user. Multicast exchanges only specify a destination Group ID.
Destination (Producer only)
Determines the consumer-, or group of consumers that an exchange is sent to.

For a unicast exchange, this parameter specifies the IP address of the Ethernet
interface that is to receice the exchange.

For a multicast exchange, the parameter specifies the Group ID of the devices that
2)
the exchange is sent to. Group IDs may range from 1 to 32
Group ID (Consumer only)
The Group ID is only needed when a multicast exchange is to be received. Otherwise, it
is ignored.

The number must match the Group ID configured in the destination parameter of
2)
the multicast exchange that is to be received.
A device can receive multicast exchanges that are directed to different groups. I.e. A
device can virtually belong to several groups.
2)

When sending I/O data from a controller to intelligent devices like a 90-30 ENIU or an RX3i
ENIU, the controller can send data for a whole group of devices within one exchange in
Multicast mode. The individual ENIUs are configured to receive the complete exchange and only
use their relevant data portion.
Usually, one large exchange in Multicast mode should be preferred and adds less load to the
network than many small exchanges in Unicast mode.

Produced Period (Producer only)


The time interval at which an exchange is sent on the network. A shorter production
period will typically add more load to the network. Therefore, it is a good practice to not
3)
produce exchanges faster than really needed by an application.

3)

On a controller, data from incoming (consumed) and outgoing (produced) exchanges is


transferred to the CPU at the end of the actual scan.
Appropriately, there is no benefit in producing any exchange to-, or from a controller faster than
the actual CPU scan time. This will rather result in stale data exchanges that add unnecessary
load to the network.

Consumed Period (Consumer only)


The time interval at which an exchange is expected to be received. In Machine Edition,
this parameter is preset to 200ms and is read only. Incoming exchanges are received
immediately and data is transferred to the controller at the end of the actual scan.
Only exception are 90-70 CMM742 and 90-30 CPU364. For these two modules the
Consumed Period is editable and should be set equal to the Produced Period in the
corresponding produced exchange.
Update Timeout (Consumer only)
The time interval at which an exchange is to be received before a refresh error is declared
in the exchange status data. This interval should be set to twice the Produced Period in
the corresponding produced exchange.

Monitoring Communication (Exchange Status)


An application can monitor the exchange status word of a produced-, or consumed
exchange to determine health of the communication.
Most common status values during normal operation are listed in the tables below. There
are more status values available that would mainly indicate configuration mismatches or
system / network errors. They may differ dependent on product line and can be read in
the controller specific TCP/IP manuals listed at the end of this document.
Consumer Status
Proper (and timely) reception of data can be monitored through the consumed exchange
status word.
Status
1
6
7

Description
Data has been received within the update timeout period
Update timeout expired and no data has been received
Data has been received, but not within the update timeout period

Producer Status
Since there is no acknowledgement for data reception, a produced exchange status can at
most indicate proper production, but there is no indication that the exchange is received
at the consumer.
Status Description
1
Data has been sent correctly within the production period

References
Machine Edition Help Files: Ethernet Global Data: an Overview
GFK-1541
GFK-2382
GFK-1246
GFK-2224

TCP/IP Ethernet Communications for the Series 90 PLC


TCP/IP Ethernet Communications for Series 90-30 CPU374 PLUS
TCP/IP Ethernet Communications (Type 2) for the Series 90_-70 PLC
TCP/IP Ethernet Communications for PACSystems