GFK-2224AE PACS Ethernet Manual
GFK-2224AE PACS Ethernet Manual
GFK-2224AE
Nov 2022
WARNING
Warning notices are used in this publication to emphasize that hazardous voltages, currents, temperatures, or
other conditions that could cause personal injury exist in this equipment or may be associated with its use.
In situations where inattention could cause either personal injury or damage to equipment, a Warning notice is
used.
CAUTION
Caution notices are used where equipment might be damaged if care is not taken.
Note: Notes merely call attention to information that is especially significant to understanding and operating the
equipment.
These instructions do not purport to cover all details or variations in equipment, nor to provide for
every possible contingency to be met during installation, operation, and maintenance. The information
is supplied for informational purposes only, and Emerson makes no warranty as to the accuracy of the
information included herein. Changes, modifications, and/or improvements to equipment and
specifications are made periodically and these changes may or may not be reflected herein. It is
understood that Emerson may make changes, modifications, or improvements to the equipment
referenced herein or to the document itself at any time. This document is intended for trained
personnel familiar with the Emerson products referenced herein.
Emerson may have patents or pending patent applications covering subject matter in this document.
The furnishing of this document does not provide any license whatsoever to any of these patents.
Emerson provides the following document and the information included therein as-is and without
warranty of any kind, expressed or implied, including but not limited to any implied statutory warranty
of merchantability or fitness for particular purpose.
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Contents
GFK-2224AE Nov 2022
Contents
Table of Figures .................................................................................................................................... x
Contents ii
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Contents
GFK-2224AE Nov 2022
3.5 Verifying Proper Power-Up of the Ethernet Interface After Configuration ............. 43
5.1 Comparison Model for Ethernet Global Data Support .............................................. 101
Contents iii
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Contents
GFK-2224AE Nov 2022
5.5 Effect of PLC Modes and Actions on EGD Operations ................................................ 112
Contents iv
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Contents
GFK-2224AE Nov 2022
7.2 Multiple SNTP Servers (Applies only to SNTP Broadcast and Multicast Mode) ...... 136
7.4.1 Obtaining Timestamps from the Ethernet Interface Clock .................................. 138
7.4.2 Obtaining Timestamps from the CPU TOD Clock ................................................... 140
Contents v
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Contents
GFK-2224AE Nov 2022
Contents vi
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Contents
GFK-2224AE Nov 2022
11.3 Controlling the OPC UA Server with PAC Machine Edition ....................................... 224
12.3 Initialization Example of the RX3i Ethernet ETM001-Jx Module Interface.............. 273
12.5 ETHERNET OK/OK LED Blink Codes for Hardware Failures (ETM001-Jx)................... 275
Contents vii
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Contents
GFK-2224AE Nov 2022
12.8 Monitoring the FT Output of the COMMREQ Function Block. .................................. 289
12.10 Using the EGD Management Tool (RX3i Ethernet Module) ....................................... 302
Contents viii
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Contents
GFK-2224AE Nov 2022
Contents ix
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Contents
GFK-2224AE Nov 2022
Table of Figures
Figure 1: Ethernet Connection System Diagram .................................................................................................................5
Figure 2: Ethernet Operation in Redundancy Mode ........................................................................................................ 18
Figure 3: Basic Non-HSB System with Redundant IP ....................................................................................................... 19
Figure 4: RJ45 Connector ..................................................................................................................................................... 28
Figure 5: Ethernet Cable Routing........................................................................................................................................ 30
Figure 6: ETM001-Jx Faceplate ............................................................................................................................................ 32
Figure 7: ETM001-Kxxx Faceplate ....................................................................................................................................... 32
Figure 8: Ethernet Port Connectors on IC695ETM001-Kxxx ............................................................................................ 33
Figure 9: Install Module into RX3i Backplane ................................................................................................................... 37
Figure 10: Remove Module from RX3i Backplane ............................................................................................................ 37
Figure 11: Diagram of Embedded Ethernet Switch .......................................................................................................... 38
Figure 12: System Diagram: Ethernet Routing Using Embedded Switch ...................................................................... 38
Figure 13: Connection Using Hub/Switch/Repeater ......................................................................................................... 41
Figure 14: Direct Connection to the Embedded Ethernet Ports ...................................................................................... 42
Figure 15: Expand CPU Slot to Display Ethernet Node .................................................................................................... 47
Figure 16: Expand RX3i CPU Node to Configure Embedded Ethernet interface........................................................... 54
Figure 17: CPE400/CPL410 Settings Tab ............................................................................................................................ 57
Figure 18: CPE330/CPE205/210/215/220/240 Settings Tab ............................................................................................ 57
Figure 19: CPE310/305/302 Settings tab ........................................................................................................................... 58
Figure 20: CPE100/CPE115 Settings tab ............................................................................................................................ 58
Figure 21: CPE330 Advanced Ethernet Configuration LAN1 & LAN2 ............................................................................. 59
Figure 22: CPE205/210/215/220/240 Advanced Ethernet Configuration LAN1 & LAN2 ............................................. 60
Figure 23: CPE100/CPE115/ CPE400/CPL410 Advanced Ethernet Configuration LAN1 & LAN2 ................................. 61
Figure 24: SNTP PME configuration for the
CPE302/CPE305/CPE310/CPE330/CPE400/CPL410/205/210/215/220/240 CPU settings............................................ 62
Figure 25: SNTP Multicast/Broadcast or Unicast Mode Settings .................................................................................... 62
Figure 26: UTC Time Zone Settings ..................................................................................................................................... 63
Figure 27: Terminals Tab Settings in PAC Machine Edition............................................................................................. 63
Figure 28: Adding Ethernet Global Data (EGD) to the Configuration ............................................................................ 64
Figure 29: Defining EGD Produced Data Exchange ......................................................................................................... 65
Figure 30: Defining EGD Consumed Data Exchange........................................................................................................ 65
Figure 31: Configuring Multicast & Broadcast EGD on LAN1 ......................................................................................... 66
Figure 32: Configuring Multicast & Broadcast EGD on LAN2 ......................................................................................... 67
Figure 33: Setting Temporary IP Address .......................................................................................................................... 71
Figure 34: Install ETM001-Jx Module in Rack/Slot & Expand to Configure ................................................................... 75
Figure 35: Expand Node to View Ethernet Global Data ................................................................................................... 83
Figure 36: Local Producer ID ............................................................................................................................................... 83
Figure 37: Configuring the EGD Configuration Server .................................................................................................... 84
Contents x
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Contents
GFK-2224AE Nov 2022
Figure 80: Example of Get OPC UA Server Status Service Request ............................................................................... 237
Figure 81: CONFIG_STATUS Word bit definitions ............................................................................................................ 238
Figure 82: Server Status Definition ................................................................................................................................... 239
Figure 83: Config Status Definition .................................................................................................................................. 239
Figure 84: Example of Get Provisioning Mode Status Service Request ....................................................................... 240
Figure 85: OPC UA Binary Connection String .................................................................................................................. 244
Figure 86: Project Inspector/Ethernet Config Window .................................................................................................. 245
Figure 87: OPC UA Server Client Connection String ....................................................................................................... 245
Figure 88: OPC UA Client Connection Dialog .................................................................................................................. 246
Figure 89: PME Controller Hardware Configuration – Passwords Disabled ............................................................... 247
Figure 90: PME Controller Hardware Configuration – Passwords Enabled ................................................................ 248
Figure 91: PME Online Command to Set Passwords ...................................................................................................... 249
Figure 92: Example OPC UA Address Space .................................................................................................................... 250
Figure 93: PME Variable Inspector ................................................................................................................................... 251
Figure 94: Application Variable Address Space .............................................................................................................. 252
Figure 95: OPC UA Address Space - Server Node ............................................................................................................ 253
Figure 96: Server Specific Address Space ........................................................................................................................ 253
Figure 97: BuildInfo Subscription ..................................................................................................................................... 254
Figure 98: OPC UA Address Space - Application Information ....................................................................................... 254
Figure 99: PACSystems Controller Elements ................................................................................................................... 255
Figure 100: OPC UA Address Space – Device Information............................................................................................. 256
Figure 101: OPC UA Device Redundancy Configuration in Cimplicity 10 SIM 17 ....................................................... 259
Figure 102: Sweep Time Location ..................................................................................................................................... 265
Figure 103: Add Performance View Document ............................................................................................................... 268
Figure 104: Nodes in List ................................................................................................................................................... 268
Figure 105: Performance View Configuration ................................................................................................................ 268
Figure 106: Performance View .......................................................................................................................................... 270
Figure 107: States of the Ethernet interface.................................................................................................................... 273
Figure 108: Fault Extra Data Example ............................................................................................................................. 277
Figure 109: Monitoring FT Output in COMMREQ Function Block ................................................................................. 289
Figure 110: Decoding the COMMREQ Status Word ........................................................................................................ 290
Figure 111: EGD Management Tool Screenshot ............................................................................................................. 302
Figure 112: EGD Monitoring Tool Monitoring EGD Network ........................................................................................ 303
Figure 113: EGD Management Tool Displaying EGD Exchange Information ............................................................. 304
Figure 114: EGD Management Tool Displaying EGD Statistics ..................................................................................... 305
Figure 115: EGD Management Tool Displaying List of Variables for an Exchange ................................................... 306
Figure 116: IP Address Format for Network Classes A, B, C .......................................................................................... 314
Figure 117: CPE330 Overlapping Local IP Subnet Example .......................................................................................... 316
Figure 118: Expected Response Path ............................................................................................................................... 318
Figure 119: Actual Response Path .................................................................................................................................... 318
Figure 120: Gateway Connected to Two Networks ......................................................................................................... 319
Figure 121: Class B Network netid and hostid Bit Formats .......................................................................................... 320
Contents xii
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Contents
GFK-2224AE Nov 2022
Contents xiii
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
Section 1 Introduction
This chapter includes basic information about Ethernet interfaces for the PACSystems family of
controllers. It describes features of the Ethernet interfaces in both conventional and redundancy systems.
The rest of this manual provides instructions for installing and applying the PACSystems Ethernet
interfaces:
• Section 2 Installation and Start-up: RX3i/RSTi-EP Embedded Interface describes user features and
basic installation procedures.
• Section 3 Installation and Start-up: Ethernet Module Interfaces describes user features and basic
installation procedures.
• Section 4 Configuration describes assigning a temporary IP address and configuring the Ethernet
interface parameters. For the RX3i rack-based and embedded interfaces, describes how to
configure Ethernet Global Data (EGD) and set up the RS-232 port for Local Station Manager
operation.
• Section 5 Ethernet Global Data describes basic EGD operation for rack-based and embedded
interfaces.
• Section 6 Programming EGD Commands describes a set of commands that can be used in the
application program to read and write PLC data or use Ethernet Global Data exchange data over
the network.
• Section 7 SNTP Operation describes the benefit of synchronizing SNTP-capable interfaces with an
SNTP server to keep internal clocks up-to-date for accurate timestamp communications.
• Section 8 Programming SRTP Channel Commands explains how to implement PLC to PLC
communications over the Ethernet network using Service Request Transfer Protocol (SRTP)
Channel commands.
• Section 9 Modbus/TCP Server describes the implementation of the Modbus TCP Server feature for
the PACSystems family of products.
• Section 10, Modbus/TCP Client explains how to program communications over the Ethernet
network using Modbus TCP Channel commands.
• Section 11 OPC UA Server explains how to program communications for this protocol using the
embedded Ethernet port.
• Section 12 Diagnostics describes diagnostic techniques for a PACSystems Ethernet interface. This
chapter also lists COMMREQ Status codes.
• Section 13 Network Administration discusses how devices are identified on the network and how
data is routed among devices.
• Appendix A, Configuring Advanced User Parameters describes an optional configuration of
internal operating parameters used by the Ethernet interface. For most applications, the default
Advanced User Parameters (AUPs) should not be changed.
Introduction 1
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
Apr-
V Extended the document to EPSCPE115
2018
Feb- Addition of CPE302 throughout.
U
2018 Clarification as to which products support 1000Base-T IEEE 802.3.
Introduction 2
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
Introduction 3
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
PACSystems RXi, RX3i and RSTi-EP Controller Secure Deployment Guide GFK-2830
PACSystems RX3i Ethernet Network Interface Unit (NIU) User’s Manual GFK-2439
PACSystems RX3i IEC 61850 Ethernet Communication Module User Manual GFK-2849
PACSystems RX3i IEC 104 Server Module IC695EIS001 User’s Manual GFK-2949
PACSystems RX3i IC695CPE400 1.2GHz 64MB Rackless CPU w/Field Agent QSG GFK-3002
PACSystems RX3i IC695CPL410 1.2GHz 64MB Rackless CPU w/Linux QSG GFK-3053
Introduction 4
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
Network Network
Connection Connection
Ethernet
Interface Ethernet Ethernet
Interface Interface
Host Computer or Control Computer Running
Device running a Host PACSystems and Series 90 PLCs Programming Software-
Communications Toolkit TCP/IP Ethernet
Introduction 5
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
Introduction 6
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
CPE302/CPE305/CPE3101
• Extended controller connectivity via IEEE 802.3 CSMA/CD. CPE302/305/CPE310-
Axxx has a single 10Base-T/100Base-TX Port (LAN1) Ethernet Port.
CPE302/CPE305 -Bxxx has two switched Ethernet Ports 10Base-T/100Base-TX
Port/1000Base-TX (LAN1).
• A network switch that has Auto negotiate, Sense, Speed, and crossover detection.
• Direct connection to Base-T (twisted pair) network switch, hub, or repeater
without an external transceiver.
CPE330/CPE400/CPL410
• Two independent 10/100/1000 Ethernet LANs under the control of the embedded
RX3i PLC. Port 1 attaches to LAN1 through a dedicated RJ45 connector. Port 2
attaches to LAN2 through a pair of internally-switched RJ45 connectors. Space is
provided to mark the two corresponding IP addresses.
• The embedded Ethernet interface permits the CPU to support two LANs.
• CPE400 has a third Ethernet port (located on the underside) which is under the
control of the Field Agent.
• CPL410 also has a third Ethernet port (located on the underside) which is under
the control of the Linux OS.
1
Unless otherwise explicitly stated / differentiated all the statements are equally applicable to both the versions Axxx and
Bxxx of these controllers.
Introduction 7
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
RSTi-EP CPE100/CPE115
• Two independent 10/100 Ethernet LANs. Port 1 attaches to LAN1 through a
dedicated RJ45 connector. Port 2 attaches to LAN2 through three internally-
switched RJ45 connectors.
• The embedded Ethernet interface permits the CPU to support two LANs.
Refer to the PACSystems RX3i, and RSTi-EP CPU Reference Manual, GFK-2222, specifically to
the section, RX3i CPU Features and Specifications for RX3i CPUs & RSTi-EP CPU Features
and Specifications for RSTi-EP CPU, for a detailed list of features and specifications.
RSTi-EP CPE205
• In Single LAN mode: One 100/1000 Ethernet LAN. Port 1 and Port 2 attach to
LAN2 through the internally switched RJ45 connectors. In this mode the DUAL
LAN LED will be OFF.
• In Dual LAN mode: Two independent 100/1000 Ethernet LANs. Port 1 attaches to
LAN1 through a dedicated RJ45 connector. Port 2 attaches to LAN2 through RJ45
connector. In this mode the DUAL LAN LED will be ON GREEN.
RSTi-EP CPE210/CPE215/CPE220/CPE240
• Two independent 100/1000 Ethernet LANs. Port 3 attaches to LAN1 through a
dedicated RJ45 connector. Port 1 and Port 2 attach to LAN2 through two
internally-switched RJ45 connectors.
Introduction 8
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
Interface Specification
IC695ETM001-Jx or earlier
- Two RJ45 connectors
RX3i Rack-Based Ethernet - One 9-pin d-sub male serial connector (Station Manager
Interface Modules port)
Connectors IC695ETM001-Kxxx
Three autosensing RJ45 ports
IC695ETM001-Jx or earlier:
IEEE 802.3 CSMA/CD Medium Access Control 10/100 Mbps
LAN
IC695ETM001-Kxxx:
IEEE 802.3 CSMA/CD Medium Access Control 10/100/1000
Mbps
Number of IP addresses One
Introduction 9
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
Interface Specification
CPE302/CPE305 & CPE310-Axxx Versions: One RJ45 connector
CPE302/CPE305/310 – Bxxx Versions: Two RJ45 connectors
CPE330: Three RJ45 connectors
CPE400: Six RJ45 connectors: five on the front for LAN1, LAN2 & LAN3; one
EFA on the underside. (There is also a serial RJ45 on the underside, marked
COM1.)
Connector CPL410: Six RJ45 connectors: five on the front for LAN1, LAN2 & LAN3; one
ETH on the underside. (There is also a serial RJ45 on the underside, marked
COM1.)
CPE100/CPE115: Four RJ45 connectors
CPE205: Two RJ45 connectors
CPE210/CPE215/CPE220/CPE240: Four RJ45 connecters on the front for
LAN1 and LAN2 (One unused and plugged)
2
CPE400 firmware version 9.30 supports Redundancy via LAN3. No LAN components other than the two Redundant
CPUs are permitted on LAN3. All firmware versions of CPL410 support the same feature.
*Both the versions Axxx and Bxxx are applicable wherever it is not explicitly mentioned.
Introduction 10
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
Interface Specification
CPE100/CPE115 supports two independent 10/100 Ethernet LANs located on
the front panel.
▪ LAN1 attaches via the upper, dedicated RJ45 connector.
▪ LAN2 attaches via three internally-switched RJ45 connectors.
CPE205 Single LAN mode supports one 100/1000 Ethernet LAN
▪ Both Ethernet ports are attached to LAN2 using internally switched RJ45
connectors.
▪ DUAL LAN LED will be OFF
Introduction 11
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
Interface Specification
For CPE330, CPE4002 and CPL410, the embedded Ethernet permits the CPU
to support LAN1 and LAN2 with:
• Up to 48 simultaneous SRTP Server connections, and
• Up to 16 simultaneous Modbus/TCP Server connections
• Up to 32 Clients are permitted; each may be SRTP or Modbus/TCP
• OPC UA Server with support for up to 5 concurrent sessions with up to
10 concurrent variable subscriptions and up to 12,500 variables
• Up to 255 simultaneous Class 1 Ethernet Global Data (EGD) exchanges
OPC UA Server
Station Access remote UDP Refer to the PACSystems TCP/IP Ethernet Communications
Manager Station Manager User Manual, GFK-2225J or later for supported commands.
Introduction 12
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
The built-in Station Manager function of the Ethernet interface provides on-line
supervisory access to the Ethernet interface through the Station Manager port or over
the Ethernet cable. Station Manager services include:
▪ An interactive set of commands for interrogating and controlling the station.
▪ Unrestricted access to observe internal statistics, an exception log, and
configuration parameters.
▪ Password security for commands that change station parameters or operation.
Introduction 13
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
For remote Station Manager operation over the Ethernet network, the Ethernet interface
uses IP addresses. A PACSystems Ethernet interface cannot send or receive remote
Station Manager messages sent to a MAC address.
Refer to the PACSystems TCP/IP Ethernet Communications Station Manager User Manual,
GFK-2225 for complete information on the Station Manager.
PACSystems Ethernet interfaces receive their firmware upgrades indirectly from the RX3i
CPU using the WinLoader software utility. WinLoader is supplied with any updates to the
Ethernet interface software. The user connects WinLoader to the PLC CPU serial port and
specifies the target module by its Rack/Slot location.
For the CPU module, the embedded Ethernet interface firmware is upgraded along with
the rest of the CPU firmware. WinLoader seamlessly upgrades first the CPU firmware and
then the embedded Ethernet firmware without user intervention. Each Ethernet interface
module’s firmware must be explicitly upgraded by specifying the rack and slot location of
the module to the WinLoader utility.
Firmware upgrades for the CPE302-/CPE305/310-Bxxx, CPE330, CPE400, CPL410,
CPE100/CPE115, CPE205, CPE210, CPE215, CPE220, and CPE240 are performed over
Ethernet using a web browser. This method provides enhanced security features.
Instructions for the procedure are included in the corresponding upgrade kit
documentation. The WinLoader utility will not work with the CPE302/305/310-Bxxx,
CPE330, CPE400, CPL410, CPE100/CPE115, CPE205, CPE210, CPE215, CPE220, or CPE240
CPUs.
SRTP Client allows the PACSystems PLC to initiate data transfer with other SRTP-capable
devices on the network. SRTP channels can be set up in the PLC application program.
SRTP supports COMMREQ-driven channel commands to establish new channels, abort
existing channels, transfer data on an existing channel, and retrieve the status of an
existing channel.
Any given channel can be assigned to only one protocol at a time. For the number and
combinations of channels supported, refer t Section 10 Modbus/TCP Client.
The Modbus TCP Client allows the PACSystems PLC to initiate data transfer with other
Modbus TCP server devices on the network. Modbus TCP channels can be set up in the
application program. The Modbus TCP Client supports COMMREQ-driven channel
commands to open new channels, close existing channels, and transfer data on an
existing channel.
Any given channel can be assigned to only one protocol at a time. For the number and
combinations of channels supported, refer to Section 1.3.4 Ethernet Interface
Specifications.
Introduction 14
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
Both the ETM001-Jx and -Kxxx Ethernet interfaces can be configured to use Simple
Network Time Protocol (SNTP) to synchronize the timestamps of produced EGD
exchanges.
With an appropriate PME Hardware Configuration, the embedded Ethernet interface on
the CPE302, CPE305, CPE310, CPE330, CPE400, CPL410, CPE115, CPE205, CPE210,
CPE215, CPE220, and CPE240 will also support SNTP. For more information on PME
Hardware Configuration, please refer to Section 4.1.3, Configuring the Ethernet Interface
Parameters.
Introduction 15
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
CPE302/CPE305/
Yes, with PME Hardware Configuration
CPE310
Starting with Release 6.00, the PACSystems Ethernet interface supports inactivity timeout
checking on Secure Real-Time Transport Protocol (SRTP) server connections with any PAC
Machine Edition (PME) PLC programmer. Until the server connection is removed, other
programmers cannot switch from Monitor to Programmer mode. With inactivity timeout
checking, the Ethernet interface removes an abandoned SRTP server connection and all
its resources when there is no activity on the connection for the specified timeout
interval. Without the SRTP inactivity timeout, an abandoned SRTP server connection
persists until the underlying TCP connection times out (typically 7 minutes). All network
PME programmer connections initially use an SRTP inactivity timeout value of 30 seconds
(as set by the "vconn_tout" AUP parameter).
PME programmers can override the initial timeout value on a specified server
connection. Typically, the PME programmer sets the SRTP inactivity timeout to 20
seconds. An inactivity timeout value of zero disables SRTP inactivity timeout checking.
The SRTP server uses an internal inactivity timeout resolution of 5 seconds. This has two
effects. First, any non-zero inactivity timeout value (either set by the AUP parameter or
overridden on the programmer connection) is rounded up to the next multiple of 5
seconds. Additionally, the actual SRTP inactivity timeout detection for any individual
connection may vary up to an additional 5 seconds. The actual inactivity detection time
will never be less than the specified value.
Note: The SRTP inactivity timeout applies only to programmer connections over SRTP. It
does not affect HMI or SRTP channels.
Introduction 16
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
Support via
Embedded Ethernet
Ethernet Module
CPU Redundancy
(ETM001-Jx or
Support
ETM001-Kxxx)
CPL410 All firmware versions Not supported
Embedded Ethernet
CPE400 requires CPU Firmware Not supported
Version 9.30
Embedded Ethernet
CPE330 requires CPU Firmware Supported
Version 8.70
CPE302/CPE305/CPE310 Not supported Not supported
CPE205/CPE210/CPE215/CPE220/CPE240 Not supported Not supported
CPE100/CPE115 Not supported Not supported
CRU320 Not supported Supported
Introduction 17
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
Redundant System
Direct IP PLC A
Note: The Redundant IP feature is supported by Hot Standby (HSB) CPUs and non-HSB
CPUs. To use this feature, be sure to toggle Enable Redundancy for the target CPU.
An HSB system uses redundant CPUs to provide the coordination between the PLC units
in the system and determine which is the active unit and which is the backup unit. HSB
redundancy requires dedicated links to provide communications between the units in a
redundancy system. For information about HSB architectures, refer to the PACSystems
Hot Standby CPU Redundancy User’s Guide, GFK-2308.
Non-HSB redundancy systems use RX3i/RSTi-EP CPUs that do not have specialized
firmware for controlling redundancy operations (These CPUs have a “CPE” or “CPU”
designation). In these systems, the application logic coordinates between CPUs that act
as redundant partners and determines which CPU is the active unit and which are
backup units.
Figure 3 illustrates the use of the redundant IP feature in a non-HSB redundancy system.
Two non-HSB CPUs (designated primary and secondary) are linked by a communications
connection. An Ethernet interface in each controller is configured with Redundant IP
enabled so that they share a Redundant IP address. As in an HSB system, only the active
Ethernet interface can communicate through the Redundant IP address to produce EGD
exchanges or to initiate Channel operations.
The application logic must monitor the status of the Ethernet modules in the system to
manage the active/backup status of each controller.
Introduction 18
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
C E L C E L
I I
P T N
P T N
U M K U M K
Ethernet
Remote Device
Introduction 19
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
To perform a role switch manually in redundant systems that employ RMX modules,
toggle the Role Switch button located on the front panel of the RMX module.
CPE400/CPL410 permits the operator to manually perform a role switch via the OLED
display menu, using the RDN Command feature.
For additional information about role switches in HSB systems, refer to the PACSystems
Hot Standby CPU Redundancy User’s Guide, GFK-2308.
Introduction 20
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
Only the active unit maintains SRTP Server connections at the Redundant IP address and
can respond to SRTP requests. The backup unit does not respond to the Redundant IP
address. When an Ethernet interface changes from active state to backup state, it takes
down all SRTP Server connections and their underlying TCP connections that use the
Redundant IP address.
Both the active and backup units maintain SRTP Server connections at the direct IP
address for network communication with the programmer. Other remote hosts should
use the Redundant IP address when communicating to a redundant system. Existing
SRTP Server connections at the direct IP address are not disturbed when the Ethernet
interface switches between active and backup states.
Only the active unit establishes and maintains SRTP Client connections (channels). The
backup unit does not initiate any SRTP Client operations. If SRTP Client operations are
attempted, a COMMREQ error status is returned to the local logic program. When the
Ethernet interface changes from active state to backup state, it takes down all SRTP
Client connections and their underlying TCP connections.
Introduction 21
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
Because it can take some time to take down a TCP connection, the redundant system
should reserve a spare SRTP Client connection for each connection using the Redundant
IP address. That will prevent temporary resource problems when establishing new SRTP
Client connections to the new active unit while the previous connections to the old active
unit are being taken down.
Only the active unit maintains Modbus TCP Server connections at the Redundant IP
address and can respond to Modbus TCP requests. The backup unit does not respond to
the Redundant IP address. When an Ethernet interface changes from active to backup
state, it takes down all Modbus TCP Server connections and their underlying TCP
connections that use the Redundant IP address.
Remote hosts should use the Redundant IP address when communicating to a
redundant system. Existing Modbus TCP Server connections at the direct IP address are
not disturbed when the Ethernet interface switches between active and backup states.
Only the active unit establishes and maintains Modbus TCP Client connections
(channels). The backup unit does not initiate any Modbus TCP Client operations. If
Modbus TCP Client operations are attempted, a COMMREQ error status is returned to
the local logic program. When the Ethernet interface changes from active state to
backup state, it takes down all Modbus TCP Client connections and their underlying TCP
connections.
Because it can take some time to take down a TCP connection, the redundant system
should reserve a spare Modbus TCP Client connection for each connection using the
Redundant IP address. That will prevent temporary resource problems when
establishing new Modbus TCP Client connections to the new active unit while the
previous connections to the old active unit are being taken down.
The active unit produces Ethernet Global Data exchanges to the network. The backup
unit produces only the EGD exchanges for which Produce in Backup Mode is enabled.
When the active Ethernet interface changes to the backup, it stops the production of all
EGD exchanges.
When configured for Redundant IP operation, the active and backup Ethernet interfaces
should also be configured to consume EGD exchanges via multicast host groups or the
local subnet broadcast address. This permits both the active and backup units to receive
the latest data from the network. Emerson does not recommend Unicast operation as
the backup unit as it will not consume any unicast exchanges at the Redundant IP
address.
Introduction 22
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
The IP address the exchange is produced from should not typically matter to the
Consumer. If the consumer is only capable of listening to communications from the
Redundant IP address, the Produce EGD on Redundant IP setting in the Ethernet
interfaces Settings tab should be set to True.
Only the active unit processes Web server requests at the Redundant IP address and
responds to Web page requests. The backup unit does not respond to the Redundant IP
address. When the active Ethernet interface changes to the backup, all Web server
connections and their underlying TCP connections are disrupted. The Web server
maintains its underlying TCP connection only long enough to process:
▪ A new Web page request
▪ A new TCP connection opened, used, or closed for each subsequent Web page
display or update.
The Redundant IP address is transparent to the Web remote browser unless a Web page
change or update is requested during the redundancy role switch. Any Web page
request in process over the Redundant IP when a role switch occurs is terminated.
Although not recommended, the remote browser may issue Web server requests to the
direct IP address. Both the active and backup units respond to Web server requests
received at the direct IP address. Remote Web browsers are expected to use the
Redundant IP address when communicating to a redundant system.
Introduction 23
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 1
GFK-2224AE Nov 2022
FTP operations can transfer setup and configuration data to the Ethernet interface. Using
FTP operations for communication with the actual PLC application is not recommended.
FTP operations should only be performed using the direct IP address.
A PACSystems Ethernet interface can operate as an SNTP client-only, which enables the
interface to only receive broadcast time messages from an SNTP Server on the network.
SNTP operation is unaffected by the current Ethernet redundancy state or by
redundancy role switches.
The remote Station Manager should respond to the direct IP address whether the unit is
active or backup or whether the Redundant IP is configured.
Only the active unit responds to remote Station Manager commands at the Redundant IP
address. The backup unit does not respond to the Redundant IP address (Station
Manager responses from the Redundant IP address can be misleading because it is
difficult to determine which Ethernet interface is responding).
Redundancy systems should explicitly configure both the direct IP address and the
Redundant IP address. Do not set up the direct IP address via BOOTP.
The Redundant IP address must be configured on the same local sub-network as the
direct IP address and gateway IP address (if used).
3
FTP is not supported by ETM001-Kxxx
Introduction 24
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 2
GFK-2224AE Nov 2022
LED State
LED Ethernet Port State
On Blinking Off
The network data speed is 100 Mbps (-Axxx) or 1000
On, Green
Mbps (-Bxxx).
100
The network data speed is 10 Mbps (-Axxx) or 10/100
Off
Mbps (-Bxxx).
Speed On Yellow EFA port only: network data speed is 100 Mbps
(lower) Off Corresponding network data speed is 10 Mbps
For general information about CPU module and system, installation refers to the
PACSystems RX3i System Manual, GFK-2314 Sections 2 & 3.
For the RSTi-EP CPU model, refer to RSTi-EP System Manual, GFK-2958D, or later.
Either shielded or unshielded twisted pair cable may be attached to an Ethernet port. The
10Base-T/100Base-TX/1000Base-T twisted pair cable must meet the applicable IEEE 802
standards. Category 5 cable is required for 100Base-TX/1000Base-T operation.
The Ethernet port automatically senses the speed (10 Mbps or 100 Mbps or 1Gbps),
duplex mode (half-duplex or full-duplex), and cable configuration (straight-through or
crossover) attached to it with no intervention required.
Note: Pin assignments are provided for troubleshooting purposes only. 10Base-
T/100Base-TX/1000-Base-T cables are readily available from commercial distributors. We
recommend purchasing rather than making 10Base-T/100Base-TX/1000Base-T cables.
4
Pin 1 is at the bottom right of the Station Manager port connector as viewed from the front of the module.
Installation and Start-up: RX3i/RSTi-EP Embedded Interface 29
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 2
GFK-2224AE Nov 2022
Hub/Switch/Repeater
Ethernet Port
on RX3i/RSTi-EP
CPExxx
ETM001-Jx ETM001-Kxxx
The ETM001-Jx Ethernet module provides: The ETM001-Kxxx Ethernet module provides:
The revised Ethernet module ETM001-Kxxx has been updated with an RJ45 port. The
Ethernet port supports Station Manager over IP. The default IP settings on the front
panel port are 10.10.0.100, subnet 255.255.255.0, and gateway 0.0.0.0. Note: The Front
panel port does not support PACSAnalyzer; it only supports the Station Manager.
Two Ethernet ports (1A and 1B) Link – LED indicates network link
with two LED indicators (“100” status and activity. When the LED
IC695ETM001
and “LINK”) are located at the state is ON, the link is physically
front of the interface module. connected. When the LED blinks,
traffic is detected at that network
port. (Traffic at the port does not
indicate traffic is present at the
Ethernet interface. Traffic may be
introduced between ports of the
switch.)
Six single color green LEDs are
When the LED state is ON, the
located on the face of the
link is physically connected. When
interface module. The LEDs are
the LED blinks, traffic is detected
labeled 10, 100, 1000 for each of
IC695ETM001-Kxxx at that network port.
the two Ethernet ports.
Two Ethernet ports (1 and 2) are
The LED label indicates network
located on the underside of the
traffic speed.
interface module.
For PACSystems Ethernet interfaces, an Ethernet restart occurs when the restart/reset
pushbutton is pressed and released. The duration that the restart/reset pushbutton is
pressed determines the operation after the restart occurs.
If the Ethernet interface uses any optional Ethernet plug-in applications, these
applications are ordinarily started upon each power-up or restart. To restart the Ethernet
interface without starting any Ethernet plug-in applications, press and hold the Ethernet
restart/reset pushbutton between five and 10 seconds.
If the Ethernet interface can restart into firmware update operation, press and hold the
Ethernet restart pushbutton for more than 10 seconds. This is typically done during
troubleshooting to bypass possibly invalid firmware and allow valid firmware to be
loaded using WinLoader.
If the Ethernet interface uses the reset button to set a fixed temporary IP address, press
and hold the reset button for more than five seconds. Entering the IP Setup Mode will
display a light pattern on the front panel’s traffic speed LEDs.
Pushbutton-controlled restart operations are listed below, with the LED indications for
each:
Restart Operation ETM001-Jx – Press and Hold ETM001-Kxxx - Press and Hold
Restart Functionality Reset Functionality
Restart the Ethernet interface Less than five seconds Less than five seconds
normally and start any optional
Ethernet plug-in applications that
are being used.
Restart the Ethernet interface Five to 10 seconds N/A
without starting any Ethernet
plug-in applications.
Put into IP Setup Mode to set an N/A More than five seconds
initial IP address.
Restart the Ethernet interface More than 10 seconds After a restart, press and hold the
into firmware update operation. reset button on power-up (until the
top three LEDs flash)
When forced into firmware update operation, but before the firmware update begins,
press the Ethernet Restart/Reset pushbutton again to exit the firmware update mode
and restart with the existing firmware. Once the firmware update begins, the existing
firmware is erased, and the Ethernet Restart/Reset pushbutton is disabled until the
firmware update is complete.
If the firmware update mode was entered mistakenly, simply remove and replace the
Ethernet module from the backplane.
Setting a Temporary IP Address with the Reset Button
To use the Reset Button to set a temporary IP address, refer to the Section entitled
Assigning a Temporary IP Address Using the Programming Software.
Installation and Start-up: Ethernet Module Interfaces 36
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 3
GFK-2224AE Nov 2022
1. Holding the module firmly, align the Figure 9: Install Module into RX3i
module with the correct slot and
Backplane
connector.
1. The ETM001-Jx and ETM001-Kxxx may be Figure 10: Remove Module from RX3i Backplane
removed from the RX3i rack with the power
supplied to the rack.
The two Ethernet port connectors are controlled by an embedded network switch in the
module. The module has only one interface to the network (one Ethernet address and
one IP address).
PACSystems
Ethernet Interface
Ethernet
Processor
Ethernet
MAC
10/100/1000
Network Switch
Port 1A Port 1B
For simple installations, the embedded switch allows devices to be connected without
additional components.
5
ETM001-Jx is only capable of 100 Mbps speeds.
Installation and Start-up: Ethernet Module Interfaces 38
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 3
GFK-2224AE Nov 2022
Operator Personal
Interface PLC PLC Computer
Use extra care when placing PLCs in a daisy-chain configuration without additional
components. Power loss or reset at an Ethernet interface can cause loss of
communication to any devices downstream from that Ethernet interface in the daisy
chain. Restarting the Ethernet interface (via the Ethernet Restart/RESET pushbutton, for
example) disrupts daisy chain communication.
Each switch port defaults to the correct link speed and duplex mode for the device
connected to the other end of the link. Each port operates independently; devices at two
different speeds and/or duplex modes may be attached to the two ports. By default,
each port will automatically detect the attached cable and will work properly with either
straight-through or crossover cables.
CAUTION
The two Ethernet ports on the Ethernet interface must not be connected, directly or indirectly, to
the same device. The connections in an Ethernet network based on twisted pair cabling must form
a tree and not a ring. Failure to follow this caution may cause duplication of packets and cause a
network overload.
CAUTION
The IEEE 802.3 standard strongly discourages the manual configuration of duplex mode for a port
(as would be possible using Advanced User Parameters). Before manually configuring duplex
mode for an Ethernet interface port using advanced user parameters (AUP), be sure that you know
the characteristics of the link partner and are aware of the consequences of your selection. Setting
both the speed and duplex AUPs on an IC698 Ethernet interface port will disable the port’s auto-
negotiation function. If its link partner is not similarly manually configured, this can result in the
link partner concluding an incorrect duplex mode. Per the IEEE standard: “Connecting
incompatible DTE/MAU combinations such as full-duplex mode DTE to a half-duplex mode MAU, or
a full-duplex station (DTE or MAU) to a repeater or other half-duplex network, can lead to severe
network performance degradation, increased collisions, late collisions, CRC errors, and undetected
data corruption.”
Note: If both speed and duplex mode of an Ethernet interface port is forced using the
Advanced User Parameters file, that port will no longer perform automatic cable
detection. This means that if you have the Ethernet interface port connected to an
external switch or hub port, you must use a crossover cable. If you have the Ethernet
interface port connected to the uplink port on an external switch or hub, or if you have
the Ethernet interface port directly connected to another Ethernet device, you must use a
normal cable.
Either shielded or unshielded twisted pair cable may be attached to a port. The 10Base-
T/100Base-TX/1000Base-T twisted pair cables must meet the applicable IEEE 802
standards. Category 5 is supported for 100Base-TX operation. Category 5e or C6 is
recommended for 1000Base-T speeds.
Each Ethernet port automatically senses whether it is connected to a 10Base-T, 100Base-
TX, or 1000Base-T network, half-duplex or full-duplex (The automatic negotiation of
speed and/or duplex mode can be explicitly overridden using Advanced User Parameter
settings).
Note: Pin assignments are provided for troubleshooting purposes only. 10Base-
T/100Base-TX/1000Base-T/ cables are readily available from commercial distributors.
Purchasing commercial cables are recommended rather than making cables for this
application.
Hub/Switch/Repeater 10/100/
1000
10/100/
1000
Ethernet
Interface
10BaseT/100Base-TX/1000Base-TX
To Other Network Twisted Pair Cable
Devices
Note: Care must be taken with the use of active network control devices, such as
managed switches. If a device inserts excessive latency, especially regarding the ARP
protocol, produced EGD exchanges may generate PLC Fault Table entries indicating the
loss of a consumer when the PLC transitions from STOP to RUN. EGD data will be
successfully transferred after an initial delay.
10/100/
1000
10/100/
1000
Ethernet
Interface
10BaseT/100Base-
Tx/1000Base-T Twisted
Other Ethernet Pair Cable
devices such as PCs,
Ethernet Interfaces
on other PLCs,
Operator Interfaces
The serial (COM) port of the terminal or computer that is connected to the Ethernet
interface must use the same communications parameters as the Ethernet interface.
The default values for the Station Manager port are 9600 bps, 8 bits, no parity, and 1
stop bit. If the Ethernet interface is configured with default values for this port, or the
Ethernet interface has not been configured, use these default values. If the Ethernet
interface is configured with non-default values for this port, use those values for the
serial port settings of the terminal or computer.
LAN OK LAN OK
If a problem is detected during power-up, the Ethernet interface may not transition
directly to the operational state. If the interface does not transition to operational, refer
to Section 12, Diagnostics for corrective action.
6
ETM001-Kxxx does not support Ethernet Plug-in Applications
Installation and Start-up: Ethernet Module Interfaces 44
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Section 4 Configuration
Before you can use the Ethernet interface, you must configure it using PME Logic
Developer-PLC software.
This chapter includes configuration information for:
▪ RX3i/RSTi-EP Embedded Ethernet interface
o Ethernet Configuration Data
o Initial IP Address Assignment
o Configuring the Ethernet interface Parameters
▪ RX3i rack-based Ethernet interfaces
Configuration 45
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Configuration 46
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
The RX3i/RSTi-EP embedded Ethernet interface comes from the factory with a default IP
address (192.168.0.100). This address is intended only for the initial connection to
complete the configuration and must be changed before connecting to the Ethernet
network. The IP address must be selected for proper operation with your network and
application. See your network administrator for the proper IP address value.
1. Using PAC Machine Edition software, configure
Figure 15: Expand CPU Slot
the Ethernet-enabled CPU in an RX3i target (or)
RSTi-EP target and assign a new IP address to the to Display Ethernet Node
embedded Ethernet interface:
2. To configure the embedded Ethernet interface,
expand the CPU slot to display the Ethernet
interface (Figure 15).
3. Right-click the Ethernet interface to display its
parameters: IP Address, Subnet Mask, and Gateway IP Address. Consult your
network administrator for the proper values for these parameters.
Go online with the target and download the configuration. You can use one of the
following methods for the initial connection to the CPE3xx:
Method 1: Through the embedded Ethernet port, using the factory-loaded default IP
address (192.168.0.100). To set the IP address for PME to use to connect to the RX3i,
open the target properties, set Physical Port to ETHERNET, and then enter the factory
default IP address value.
Note: The factory-loaded default IP address is valid only when Hardware Configuration
has never been stored to the Controller. This value is overwritten with the configured
IP address each time that Hardware Configuration is stored to the Controller.
Method 2: Through the Ethernet connection of an ETM001-Jx/ETM001-Kxxx in the same
rack with a known IP address configuration.
Method 3: Through the RS-232 COM1 serial port – This is a data communications
equipment (DCE) port that allows a simple straight-through cable to connect with a
standard nine-pin AT-style RS-232 port.
Method 4: CPE310: Through the RS-485 COM2 serial port – Use SNP programming cable
IC690ACC901
Note: CPE100/CPE115, CPE205, CPE210, CPE215, CPE220, CPE240, CPE302, CPE305, and
CPE310 do not support the alternate methods of setting a temporary IP address:
• Set Temporary IP Address tool in PME
• BOOTP
• The Station Manager CHSOSW command.
CPE330 supports the Set Temporary IP Address tool in PME. The Station Manager CHSOSW
command is not supported.
Configuration 47
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Since the IP Addresses of the CPE400 and CPL410 may be displayed on its OLED display,
these CPUs do not support the Set Temporary IP Address tool.
To restore the default IP Address of the CPE100/CPE115, refer to Section 4.1.5,
Configuring the Ethernet Interface Parameters.
Configuration 48
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Configuration 49
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
The RSTi-EP Backplane controllers have two to three Ethernet port connectors, each of
which supports both 100Base-TX and 1000Base-T operation using either full-duplex or
half-duplex operation.
A forced transition from 1 Gb to 100 Mb speeds is required when either Port 1 or 2 is
plugged with an ethernet device that only supports 100 Mb. A port is also forced to 100
Mb when the Network Port Critical setting is enabled for the port in PME Hardware
Configuration.
Once a port is running at 100 Mb, the controller cannot switch back to 1 Gb speeds
automatically. To get back to 1 Gb speeds, a user must disable all network-critical ports
(if enabled), manually unplug both Port 1 and 2, and then reconnect the 1 Gb
devices. Alternately, the CPE200 Series CPU can be power-cycled.
If the PME Hardware Configuration (HWC) enables a single Network Critical port, it is
possible that the non-critical port can initially run at 1 Gb speeds as long as no link is
present on the designated critical port. However, the port at 1 Gb will be forced to 100
Mb if the critical port’s link is ever established. Once in the 100 Mb state, both ports will
remain at 100 Mb until the HWC is cleared/modified and both ports are reconnected.
Configuration 50
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
To establish communications between the computer hosting PME and the CPU, consider
the following methods:
Parameter Description
Initial Ethernet communication with the CPU may be established using the
default IP addresses programmed at the factory:
Initial Ethernet communication with the CPU may be established using the
default IP addresses programmed at the factory:
7
When the CPE400/410 Target property is configured for Enable Redundancy = True, LAN3 will display as 3 Redundancy
in PME and Switched for both LAN3 port with LAN 3 = Redundancy (greyed out). LAN3 will not be available to
configure.
Configuration 51
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Parameter Description
If the IP address of the CPE302/CPE305/CPE310 embedded Ethernet
interface is not known, communication may be established using one of
these methods to set a permanent IP address:
Connecting to CPE302/CPE305/ • Connect to the CPE302/CPE305/CPE310 via its serial port and assign
CPE310 Embedded Ethernet when an IP Address to the embedded Ethernet interface by downloading
IP Addresses are not known a Hardware Configuration.
Connecting to CPE100/CPE115 Power-up CPE100 with the Power pushbutton pressed and wait until the OK
Embedded Ethernet when LED flashes twice. This forces the CPE100/CPE115 LAN1 to reset to the
IP Addresses are not known default IP address of 192.168.0.100.
Caution: Resetting to the default IP address using the above procedure also
erases the stored Hardware Configuration, logic, and contents of the backup
RAM.
8
This method is not supported in firmware 9.80 or later.
Configuration 52
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Parameter Description
If the IP addresses of the CPE205/CPE210/CPE215/CPE220/CPE240
embedded LAN1 and LAN2 Ethernet interfaces are not known,
communication may be established using reset to factory settings method
as described below to set default IP addresses:
Press the Physical Presence button (PHY PRES) for 10 seconds while the CPU
Connecting to is in STOP mode (ensure no USB devices are inserted and the Web Page is
CPE205/CPE210/CPE215/CPE220/CP not waiting for a password change). Once the OK and RUN LEDs blink green,
E240 Embedded Ethernet when IP release the Physical Presence button. This forces the
Addresses are not known CPE205/CPE210/CPE215/CPE220/CPE240 LAN1 and LAN2 to reset to default
IP addresses.
Configuration 53
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
1. In the Project tab of the Navigator, expand the Figure 16: Expand RX3i CPU Node to
PACSystems Target, the Hardware Configuration, Configure Embedded Ethernet interface
and the main rack (Rack 0).
2. Expand the CPU slot (Slot 2). The Embedded
Ethernet interface is displayed as “Ethernet”
(Figure 16).
3. Right-click the daughterboard slot and choose
“Configure.” The Parameter Editor window
displays the Ethernet interface parameters.
4. To add the Ethernet Global Data component,
right-click the Target. Select “Add Component”
and then “Ethernet Global Data.”
5. Select the desired tab, and then click in the
appropriate Values field.
Configuration 54
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Configuration 55
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Length: This is the total length of the Ethernet interface status data. This is automatically
set to either 80 bits (for %I and %Q Status address locations) or 5 words (for %R, %AI, %AQ
and %W Status address locations).
Redundant IP: The Redundant IP option selects whether Redundant IP operation is
Enabled or Disabled. When this parameter is set to Enabled, the Redundant IP address
must be entered via the Redundant IP Address parameter. The default value is False.
Redundant IP Address: Redundant IP Address is an optional IP Address that will be
shared with another device on the network in a Redundant System. Both devices must
use the same subnet mask. This parameter is available only when the Redundant IP
parameter is set to Enabled. This address defaults to 0.0.0.0, which is not a valid IP
address; a valid Redundant IP address must be explicitly configured. See Section 1
Introduction for more information about Ethernet redundancy. This IP address is
assigned in addition to the device’s primary IP address.
Produce EGD on Redundant IP: Specifies that EGD Producer exchanges will use the
Redundant IP address as the source address IP address on the network instead of the
local IP Address configured above.
I/O Scan Set: Specifies the I/O scan set to be assigned to the Ethernet interface. Scan
sets are defined in the CPU’s Scan Sets tab. The valid range is 1 through 32; the default
value is 1.
Ethernet Global Data: Settings tab for
CPE100/CPE115/CPE330/CPE400/CPL410/CPE205/CPE210/CPE215/CPE220/CPE240 has
additional EGD configuration parameter entries. PME 8.60 SIM 5 (or later) is required for
the EGD configuration parameter entries for CPE330. The EGD parameter entries are
exclusive to the
CPE100/CPE115/CPE330/CPE400/CPL410/CPE205/CPE210/CPE215/CPE220/CPE240.
Note: In earlier CPU models these EGD configuration parameters were configured via
AUP files. An AUP file is not supported, nor is it needed, by the CPE330, CPE400, CPL410,
or CPE100/CPE115/CPE205/CPE210/CPE215/CPE220/CPE240.
Startup Delay Time for Produced Exchanges (ms): Corresponds to the gp_phase AUP
parameter.
Stale Consumed Exchanges: Corresponds to the gnostale AUP parameter.
TTL for Unicast Messages: Corresponds to the gucast_ttl AUP parameter.
Configuration 56
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
CPE100/CPE115/CPE302/CPE305/CPE330/CPE400/
CPL410/CPE205/CPE210/CPE215/CPE220/CPE240/ Settings
Tabs
Configuration 57
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
CPE100/CPE115 / CPE330/CPE400/CPL410/CPE205/CPE210/CPE215/CPE220/CPE240
LAN1:
TTL for Multicast Messages: Corresponds to the gmcast_ttl AUP parameter.
IP Address for Multicast Group X: Corresponds to the gXX_addr AUP parameters.
XX identifies the group (1 – 32).
Configuration 58
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
CPE100/CPE115/
CPE330/CPE400/CPL410/CPE205/CPE210/CPE215/CPE220/CPE
240 LAN1 and LAN2 Advanced EGD Settings
Configuration 59
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Configuration 60
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Configuration 61
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
9
Unicast must be enabled for Poll Interval parameter to display.
Configuration 62
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Local time zone offset with respect to UTC time. Valid range: Select the closest
appropriate time zone for your location.
Terminals Tab
The Terminals configuration tab (Figure 27) is displayed only when the Variable Mode
property of the Ethernet interface is set to True. When Variable Mode is selected, the
Ethernet Status bits are referenced as I/O variables. The I/O variables are mapped to the
Ethernet status bits via this configuration tab.
The use of I/O variables allows you to configure the Ethernet interface without having to
specify the reference addresses to use for the status information. Instead, you can
directly associate variable names with the status bits. For more information, refer to the
section on I/O Variables in the PACSystems RX7i, RX3i, and RSTi-EP CPU Reference Manual,
GFK-2222.
Configuration 63
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Once the EGD component has been added, it is possible to define the EGD data to be
produced (Figure 29) and the EGD data to be consumed (Figure 30) by the embedded
Ethernet interface, per the following screenshots.
Configuration 64
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
The parameters to be entered and their relevance is discussed in the sections entitled
Configuring an Ethernet Global Data Exchange for a Producer (page 86) and
Configuration 65
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Configuration 66
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Configuration 67
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
This chapter discusses only the configuration of the PACSystems Ethernet interface.
Information about overall system configuration is available in other PACSystems
documentation and in the Logic Developer online help.
The PACSystems PLC is configured exclusively by the PME PLC Logic Developer-PLC
programmer. The Programmer can be connected over the Ethernet network. For initial
programmer connection, an initial IP address must be manually assigned to the Ethernet
interface as described next in this chapter. The PACSystems PLC does not support auto-
configuration.
manually generated with a text editor and then imported into the Programmer. The
Programmer then stores any AUP files to the PLC within the Configuration Store
operation. Once stored to the PLC, the PACSystems main CPU maintains the
configuration data over power cycles.
Configuration 69
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Each PACSystems Ethernet interface comes from the factory with a default IP address
(0.0.0.0). Since the default address is not valid on any Ethernet network, an initial IP
address must be assigned for initial network operation, such as connecting the
programmer to download the first Hardware Configuration. The initial IP address must be
selected for proper operation with your network and application. See your network
administrator for the proper initial IP address value.
An IP address can be set up using the following methods:
Method 1: On an ETM001, the Set Temporary IP Address utility within PME can be used to
set a setting to connect PME and store the permanent network settings to the module.
Method 2: If using an ETM001 or ETM001-Kxxx, the IP address can be configured in
Hardware Configuration and store the configuration over a serial connection.
Method 3: If the ETM001 Ethernet interface module has the factory default IP Address
0.0.0.0, a temporary IP address can be set using BOOTP over the Ethernet network (if a
BOOTP server is present).
Method 4: If using an ETM001, an initial IP address can be set via the CHSOSW command
from a local serially connected Station Manager terminal. For more information, see the
PACSystems TCP/IP Ethernet Communications Station Manager User Manual, GFK-2225.
Method 5: If a serial connection through a Station Manager port is not available (for
example, the IC695ETM001-Kxxx), the user can assign an IP address by connecting to the
CPU and storing a Hardware Configuration to assign the IP settings.
Method 6: On an ETM001-Kxxx, the reset button can be used to enter IP Setup Mode and
a new configuration can be downloaded to configure the permanent network settings to
the module.
Configuration 70
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
▪ The target must be located on the same sub-network (subnet) as the computer
running the Set Temporary IP Address utility. The sub-network is specified by the
computer’s subnet mask and the IP addresses of the computer and the
PACSystems Ethernet interface.
To set the IP address, you need the MAC address of the Ethernet interface. The MAC
address is located on a label on the module. Connect the PACSystems Ethernet interface
to the Ethernet network.
In the Project tab of the Navigator, right-click the
PACSystems target. Choose Offline Commands, then Figure 33: Setting Temporary IP
CAUTION
The temporary IP address set by the Set Temporary IP Address utility is not retained through a
power cycle. To set a permanent IP Address, you must set configure the target's IP Address and
download the Hardware Configuration to the PACSystems target.
The Set Temporary IP Address utility can assign a temporary IP address even if the target Ethernet
interface has previously been configured to a non-default IP address (This includes overriding an
IP address previously configured by the programmer).
Configuration 71
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
CAUTION
The temporary IP address set by BOOTP is not retained through a power cycle. To set a permanent
IP Address, you must configure the Ethernet interface’s IP Address at the programmer and
download the Hardware Configuration to the PLC.
Redundancy systems using BOOTP should explicitly configure both the direct IP address
and the Redundant IP address. For redundancy operation, do not set up the direct IP
address via BOOTP.
10
BOOTP cannot be used to specify an IP Address on the IC695ETM001-Kxxx.
Configuration 72
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
CAUTION
The Telnet method can assign a temporary IP address whether or not the Ethernet interface
already has an IP address, even if the Ethernet interface has been previously configured to a non-
default IP address (This includes overriding an IP address previously configured by the
programming software).
To temporarily set the IP address over the network, the PLC CPU must not be running. IP
address assignment over the network will not be processed until the CPU is stopped and
is not scanning outputs.
1. Obtain the Ethernet interface’s MAC address from its MAC Address Label as
shown in Section 2
2. On the computer, open a standard DOS command window. Associate the desired
IP address for the Ethernet interface with the MAC address of the Ethernet
interface using the following method. In the DOS command window, enter:
> ARP –s ip_address mac_address
for ip_address enter the IP address being assigned to the Ethernet interface, and for
mac_address enter the MAC address of the Ethernet interface.
Issue a Telnet command to the IP address (ip_address) being assigned to the Ethernet
interface via the following command:
> telnet ip_address 1
(This command is always sent to port 1.) This Telnet command will fail, but the IP address
provided with the Telnet command will be passed to the Ethernet interface and will be
temporarily activated.
The IP address assigned over the network remains in effect until the Ethernet interface is
restarted, power-cycled, or until the configuration is downloaded or cleared. Once
connected, the intended IP address should be permanently downloaded to the Ethernet
interface via the Hardware Configuration data.
Configuration 73
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
While in this mode, the front panel port’s configuration will be:
▪ IP Address: 10.10.0.100
▪ Subnet Mask: 255.255.255.0
▪ Gateway IP Address: 0.0.0.0
IP Setup Mode has a timeout of 15 minutes. To exit IP Setup Mode, the reset button may
be pressed again, or the module can be safely removed and reinstalled. If run mode is
entered while in IP Setup Mode, the IP Setup mode will be automatically exited and there
will be a sub-second delay before communications are available.
Once the module is in IP Setup Mode (the PME connection IP Address of the specified
target must be set to Ethernet module’s temporary setting, 192.168.0.100), select the
target in the Hardware Configuration and navigate to the Target tab in the top ribbon
menu. Select Download to download the hardware configuration while in temporary
mode.
After entering the IP Setup Mode, the following opportunities are available:
▪ Setting a permanent IP address on the device. Creating an HWC for an RX3i, the
target’s IP address can be set to the desired permanent IP Address and the HWC
can be downloaded to the device.
▪ Acquiring the current permanent IP address. The HWC can be uploaded to obtain
its real IP address (if it had been previously configured), which can then be used for
further development.
NOTE: There is a 500 ms communication delay after the ETM001-Kxxx has entered IP
Setup Mode.
Configuration 74
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
IC695ETM001-Jx IC695ETM001-Kxxx
Ethernet Parameters
Configuration Mode X X
Adapter Name X X
BOOTP for IP Address X
Configuration 75
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
IC695ETM001-Jx IC695ETM001-Kxxx
IP Addresses X
Subnet Mask X
Gateway IP Addresses X
Name Server IP Addresses X
Max Web Server Connections X
Max FTP Server Connections X
Network Sync Type X X
UTC Offset X
Day Light Savings Time (DST) X
Status Address X X
Length 11
X X
Redundant IP X X
Produce EGD on Redundant IP X
I/O Scan Set X X
SNTP
CPU TOD Clock Sync X
SNTP Mode
X
(Unicast/Multicast/Broadcast)
Primary IP Address X
Secondary IP Address X
Poll Interval X
Poll Count X
Poll Timeout X
RS232- Port (Station Manager)
Baud Rate X
Parity X
Flow Control X
Stop Bits X
Terminals Tab
Variable Mode X X
Ethernet Global Data
Startup Delay Time for Produced
X
Exchanges (ms)
Stale Consumed Exchanges X
TTL for Unicast Messages X
TTL for Multicast Messages X
IP Address for Multicast Group 1-32 X
LAN1
IP Address X
Subnet Mask X
Gateway IP Address X
Ethernet Speed for Port 1 X
Ethernet Speed for Port 2 X
Front Panel
11
This parameter is not configurable for either Ethernet module.
Configuration 76
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
IC695ETM001-Jx IC695ETM001-Kxxx
IP Address X
Subnet Mask X
Gateway IP Address X
Time
UTC Offset X
Gateway IP Address: Contact your network administrator for the value to assign. Both
subnetting and supernetting are supported. For an isolated network with no gateways,
use the default value: 0.0.0.0.
Name Server IP Address: This parameter must be set to 0.0.0.0
Max Web Server Connections: (Available only when the Ethernet interface supports web
server operation.) The maximum number of web server connections. This value
corresponds to the number of TCP connections allocated for use by the web server,
rather than the number of web clients. The valid range is 0 through 16. Default is two.
Max FTP Server Connections: This value corresponds to the number of TCP connections
allocated for use by the FTP server, rather than the number of FTP clients. Each FTP client
uses two TCP connections when an FTP connection is established. The valid range is zero
through 16. Default is two.
Note: The sum of Max Web Server Connections and Max FTP Server Connections must
not exceed 16 total connections.
Network Time Sync: Selects the method used to synchronize the real-time clocks over
the network. The choices are:
▪ None (for no network time synchronization)
▪ SNTP (for synchronization to remote SNTP servers on the network)
If None is selected, the time stamp value for a consumed EGD exchange is obtained from
the local clock of the producing Controller or PLC. Timestamps of exchanges produced
by a PLC with this setting are not synchronized with the timestamps of exchanges
produced by other PLCs.
Refer to Section 7.4, Time-Stamping of Ethernet Global Data Exchanges, for more
information.
Status Address: The Status Address is the reference memory location for the Ethernet
interface status data. The Ethernet interface will automatically maintain 16 LAN Interface
Status (LIS) bits in this location and 64 Channel Status bits in this location for a total of
80 bits.
The Status address can be assigned to valid %I, %Q, %R, %AI, %AQ or %W memory.
The default value is the next available %I address. See Section 12 Diagnostics, for
definitions of the LAN interface Status (LIS) portion of the Ethernet Status data.
The definition of the Channel Status depends on the type of operation for each channel.
For details of the status bits and their operation, refer to 12.7, Monitoring the Ethernet
Interface Status Bits.
Note: Do not use the 80 bits configured as Ethernet Status data for other purposes or
data will be overwritten.
Note: If the Ethernet interface’s Variable Mode property is set to true, the Status Address
parameter is removed from the Settings tab. Instead, Ethernet Status references must be
defined as I/O variables on the Terminals tab (see section Terminals Tab). The Terminals
tab will become available after the Variable Mode property is set to true.
Configuration 78
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Length: The Length parameter is the total length of the Ethernet interface status data.
The value is automatically set to either 80 bits (for %I and %Q Status address locations) or
5 words (for %R, %AI, %AQ and %W Status address locations).
Redundant IP: The Redundant IP option selects whether Redundant IP operation is
Enabled or Disabled. When this parameter is set to Enabled, the Redundant IP address
must be entered via the Redundant IP Address parameter. The default value is False.
Redundant IP Address: Redundant IP Address is an optional IP Address that will be
shared with another device on the network in a Redundant System. Both devices must
use the same subnet mask. This parameter is available only when the Redundant IP
parameter is set to Enabled. This address defaults to 0.0.0.0, which is not a valid IP
address; a valid Redundant IP address must be explicitly configured. See Section 1,
Introduction, for more information about Ethernet redundancy. This IP address is
assigned in addition to the device’s primary IP address.
Produce EGD on Redundant IP: Specifies that EGD Producer exchanges will use the
Redundant IP address as the source address IP address on the network instead of the
local IP Address configured above.
I/O Scan Set: The I/O Scan Set parameter specifies the I/O scan set to be assigned to the
Ethernet interface. Scan sets are defined in the CPU’s Scan Sets tab. The valid range is
one through 32; the default value is one.
Note: The Ethernet interface delivers its Ethernet Status (including Channel Status bits)
during its input scan. Each channel's data transfer updates the Channels Status bits, so
channel performance may be reduced if the Ethernet interface is configured to use an
I/O Scan Set that runs more slowly than the PLC logic sweep.
If the Ethernet interface is configured to use an inactive I/O Scan Set, the Channels
Status bits will not be transferred and channel operations will not complete.
Configuration 79
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Terminals Tab
The Terminals tab is displayed only when the Ethernet interface’s Variable Mode property
is set to True.
Select View from the primary menu bar and check the checkbox next to Inspector to
enable to the Inspector pane. With the device selected, the Variable Mode value can be
configured.
When Variable Mode is enabled, the Ethernet Status bits are referenced as I/O variables
that are mapped to the Ethernet status bits on this configuration tab.
The use of I/O variables allows you to configure the Ethernet interface without having to
specify the reference addresses to use for the status information. Instead, you can
directly associate variable names with the status bits. For more information, refer to the
section on I/O Variables in the PACSystems RX7i, RX3i and RSTi-EP CPU Reference Manual,
GFK-2222.
Time Tab
Coordinated Universal Time (UTC) and Day Light Savings Time (DST) configuration
settings. Set the UTC offset and DST start/end times here.
UTC Offset: Local time zone offset with respect to UTC time. Valid range: Select the
closest appropriate time zone for your location. Default: [UTC-5] Eastern Standard Time.
DST Offset: The offset between DST and standard time in hours and minutes. Minutes
are limited to the values 0, 15, 30, 45. Default: zero.
DST Start/End Month: The month when DST starts or ends. Valid range: January to
December. Default: January.
DST Start/End Day: The day when DST starts or ends. Valid range: Sunday to Saturday.
Default Sunday.
DST Start/End Week: The week of the month when DST starts or ends. Valid range: 1 to
5.
DST Start/End Time: Valid range: 0.00 to 23:59. Default: zero.
DST Ref Zone: Indicates the time zone of reference for the DST Start and End times. Start
and End times may be relative to either UTC or Local time. Choices: UTC, Local Time.
Default: UTC.
Configuration 80
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
SNTP Tab
CPU TOD Clock Sync: Specifies whether the Ethernet module should sync with the TOD
clock on the controller’s CPU. Choices are Enabled or Disabled.
SNTP Mode: The timestamp value for a consumed EGD exchange is obtained from a
central clock, located on a user-supplied SNTP time server on the network. All controllers
with this setting (SNTP) have synchronized exchange time stamps. Synchronized time
stamps enable you to compare groups of data to determine the order in which they were
produced or to determine which contain the most current values. Choices are Unicast or
Multicast
Primary IP Address: (Only available in unicast mode.) The primary address identifies
hosts on a single network link. The primary address should specify the primary server.
Use of BOOTP must be set to True for IP address of 0.0.0.0
Secondary IP Address: (Only available in unicast mode.) If the primary server is down,
the secondary address can be polled.
Poll Interval: (Interval for unicast, in seconds, at which new time requests are sent to
the server): Low Limit =16, High Limit=1024, modulus 2
Poll Count: (Number of retransmissions that will be sent when no timely response is
received from the server): Low Limit =1, High Limit=100
Poll Timeout: Poll Timeout (The time, in seconds, to wait for a response from the
server): Low Limit =2, High Limit=100
Configuration 81
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Ethernet Speed for Port 1: The Ethernet ports on the bottom of the module can have
their traffic speed limited. Choices are Auto-detect, 10 Mbps, or 100 Mbps.
Ethernet Speed for Port 2: The Ethernet ports on the bottom of the module can have
their traffic speed limited. Choices are Auto-detect, 10 Mbps, or 100 Mbps.
Configuration 82
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
The Local Producer ID (Figure 32) is a 32-bit value that uniquely identifies this Ethernet
Global Data device across the network. It can either be expressed as a dotted-decimal
value in the same way an IP address value is specified or specified as an integer. It is
recommended that this value be set to the address of the Ethernet interface with the
lowest rack/slot location in the system. The same Producer ID applies to all exchanges
produced by this CPU, regardless of which Ethernet interface is used to send the
exchange to the network.
While the form of the Producer ID is sometimes the same as that of an IP address and an
IP address is used as its default value, the Producer ID is not an IP address. See Section
5, Ethernet Global Data, for more information on how the Producer ID is used.
Configuration 83
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Local Server Cache Path: This parameter sets the path to be used for caching data from
the configuration server. This cache is used if the server becomes inaccessible. (For
example, if the server is on another machine and that machine is inaccessible due to loss
of network communications.) You can also choose to work offline from the server and
use this cache. This mode of operation is explained below.
Base Path: Typically, this field should not be changed from the default of /EGD. This is
the path portion of the URL used to get to the server. This is the default Base Path set by
the Windows Installer.
Host Name: The hostname for the computer on which the configuration server runs.
This can be specified as “localhost” if the server is on the local machine.
Server Port: This parameter is typically left at the default of 7938. If changed, it must be
changed on both the programming software and on the server. This value is global and
Configuration 84
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
not project-specific. It will be used as the default by other projects created on that
computer and by other tools such as the EGD Management Tool that require access to
the server.
Timeout: The number of milliseconds the programming software will wait for a reply
from the server before deciding that the server is not going to respond.
Configuration Server: This read-only parameter displays the value Located if the
configuration server can be accessed and Unable to Locate if the server is not accessible.
When using the configuration server, the producer of data normally defines the
exchange. See below for a step-by-step description of defining an exchange in the
producer. After the producer of the data defines the exchange, consumers may make
use of the exchange. Each consumer selects the desired exchange from the list of
produced exchanges and defines the local PLC memory to be used for the variables of
interest from the exchange. Consumers can be resynchronized with any changes in the
producer on request. Consistency between the producer and consumer(s) is verified
during the build and validate the process.
Inspector window. This parameter may be set to the name of the collection for the device
(by default the collection for a device is the Machine Edition project name).
Property Description
Name A name was assigned for this exchange. Defaults to “ProdExchX”
where X is a sequential number.
Exchange ID A unique ID number that identifies a specific exchange to be sent
by the producing device.
Adapter Name The Adapter Name is the name of a specific Ethernet interface,
which is identified by its rack and slot location within the
consuming PLC.
Destination Specifies whether the data’s destination will be:
Type ▪ An IP address (Unicast)
▪ A Group ID (Multicast)
▪ All EGD nodes on the subnet (Broadcast). Choosing Broadcast
will cause the EGD packets to be received by any node on the
network. This can impact performance if there are non-EGD
devices on the network. Check with the system’s network
administrator if you are unsure about whether to use
Broadcast.
Destination Identifies the data’s consuming device, based on the Destination
Type selected above:
▪ a dotted-decimal IP address if Destination Type is IP Address
▪ the group’s ID (1–32) if Destination Type is Group ID
▪ the value 255.255.255.255 if Broadcast IP is the Destination
Type.
Produced The scheduled repetition period at which the data is produced on
Period the network. Configure a value in the range of zero or two–
3,600,000 (2 milliseconds to 1 hour). The value zero means data
will be produced at the end of each PLC scan, but not less than
two milliseconds from the previous production. Set the
production period to ½ the period at which the application needs
the data in this exchange. Round this value up to the nearest two
milliseconds (2 ms).
Reply Rate Not used.
Configuration 86
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Property Description
Send Type Fixed at Always. In the PLC, production of EGD is controlled by the
I/O state: when enabled, EGD production is enabled, and when
disabled, EGD production is disabled.
Run Mode Store When set to True, allows you to modify or delete this exchange
Enabled and store the changes while in Run mode. You can add exchanges
in Run mode regardless of the setting of this parameter.
It is recommended that you keep this parameter at its default
setting, False, unless your application has a specific need to
modify this exchange in Run mode.
Network ID Allows the user to select either LAN1 or LAN2 for Multicast or
Broadcast production.
Note: The Network ID field is only visible if the Destination Type is
configured for Multicast or Broadcast (not Unicast) AND the
Adaptor Name selects a device rack/slot that physically supports
multiple LANs (for example, the CPE330).
Property Description
Offset (Byte.Bit) The location within the data area for this exchange where
the start of the data for this variable is located. The offset is
expressed as Byte.Bit, where Byte is a zero-based byte offset
and Bit is a zero-based bit position within that byte. (Valid bit
values are 0—7. Bit 0 is the least-significant bit within the
byte; bit 7 the most significant.)
Ref Address The PLC memory reference address contains the start of the
data for this variable.
Ignore The default value is False. Not used for Produced exchange.
Length The size of the data for this variable is expressed in units of
the data type.
Configuration 87
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
To add a new variable to the end of the exchange, click the Add button. This does not
change the data offsets of any existing variables within that exchange.
To insert a new variable among the existing variables, on an existing variable adjacent to
where you want to insert the new variable, click the Insert button and a new variable will
be created ahead of the selected existing variable. This changes the data offsets of all
following variables in the exchange and will change the signature major number if you
are using signatures.
Once a new variable has been entered, double-click a data field within the row to edit
that value.
To delete an existing variable, click on the variable row, and then click the Delete button.
If you are using signatures, this will cause the signature major number to change.
The sum of the length for all variables in the exchange must not exceed 1400 bytes. The
total length of the exchange is displayed as Length (Bytes): above the variable list.
PACSystems CPUs with firmware version 5.0 and later support a maximum of 30,000
variables for all exchanges. Earlier firmware versions support approximately 12,000
variables for all exchanges.
A variable is automatically created for the local exchange status that is returned to the
PLC logic application. The exchange status is not part of the produced exchange data
and is not available to the network.
Configuration 88
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
To create a new consumed exchange, right-click the “Consumed Exchanges” node and
select “New.”
NOTE: If the new menu option is unavailable, ensure that the Local Producer ID property
of the Ethernet Global Data folder is set to a value other than 0.0.0.0.
A dialog box lists all produced exchanges in the EGD network that have been published
to the EGD Configuration Server. Select the exchange to be consumed. Once selected,
the exchange is populated with the variable, length, type, and description information
defined in the producer. The variable name consists of the target name, an underscore,
and the variable name in the producer (See the table below for information about name
generation). You must either enter a reference address or select ignore for each variable
in the exchange. You must also assign an adapter name and a timeout for the exchange.
With these steps, the configuration of the consumer is complete.
When an individual consumed exchange is selected, the following parameters can be
configured in the Properties Inspector window. Typically, only the adapter name and the
update timeout need to be specified for the exchange and the reference address
specified for the variables in the exchange. Changing any other values in a consumed
exchange should only be done with expert help.
Property Description
A name was assigned for this exchange. Defaults to the target
name of the producer, an underscore, and the exchange ID in the
Name
producer. Changing the name (or its syntax) may prevent
resynchronization of the variable.
The ID of the PLC producing the exchange. Producer ID is defined
Producer ID by the producer. Changing the Producer ID may prevent
resynchronization with the server.
Used only if the produced exchange has been configured with a
Destination Type of Multicast. The group ID is defined by the
Group ID
producer. Changing the Group ID may prevent the producer from
consuming the data.
Identifies a specific data exchange to be received by the
consuming device. Exchange ID is defined by the producer.
Exchange ID
Changing the Exchange ID may prevent resynchronization with the
server.
The Adapter Name is the name of a specific Ethernet interface,
Adapter Name which is identified by its rack and slot location within the
consuming PLC.
Configuration 89
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Property Description
Consumed
This is a non-editable field. It will always display 200 milliseconds.
Period
A value in the range of zero to 3,600,000 milliseconds (1 hour). The
Ethernet interface will declare a refresh error if the first or
Update subsequent packet of data does not arrive within this time. The
Timeout Update Timeout should be at least double the value of the
producer period and should allow for transient network delays. The
default, zero, indicates no timeout. Resolution is in two millisecond
(2ms) increments.
When set to True, the Run Mode Store Enabled parameter allows
the user to modify or delete this exchange and store the changes
while in Run mode. You can add exchanges in Run mode
Run Mode
regardless of the setting of this parameter.
Store Enabled
It is recommended that you keep this parameter at its default
setting, False, unless your application has a specific need to modify
this exchange in Run mode.
the Ethernet Global Data node in the Navigator, you will see a selection for Bind and
Build. Selecting this menu item causes the EGD definitions for the target to be cross-
checked against the definitions in the server. Each consumed exchange is compared to
the produced exchange published by the producer. The system will advise of any
discrepancies. See the previous table for a list of any errors detected.
It is also possible, by selecting the menu item Unconsumed Data Report to generate a
report to list any variables in produced exchanges that are not being used by a
consumer. Producing data that is not being consumed is not necessarily an error. If
producing data is not consumed, the consumer may not be able to publish its
information to the EGD configuration server or the application design may have chosen
to publish data that is not needed immediately. Each unconsumed variable may be an
indication of an error or oversight in one or more consumers in the application.
For the consumer to consume the data, the signature major number must match
between the producer and the consumer for the consumer to consume the data. Packets
that are received when produced and consumed exchange signatures are enabled and
incompatible (different major signature values) will result in an error consumed
exchange status.
Major Number
The primary format of the data is first established when the EGD exchange is defined. By
default, the signature is assigned the value of 1.0. Any change that reorders, removes,
renames, or changes the type or offset of a variable in the exchange is a primary format
change that causes the signature major number to be incremented.
Minor Number
The signature minor number is incremented when backward-compatible changes are
made in the format of the produced data. Backward-compatible changes are made by
adding data to unused areas of the exchange including adding data to the end of the
exchange.
If the signature minor number in a sample is greater than the signature minor number
configured for the exchange in the consumer, then the consumer will consume the data
truncating any unexpected data at the end of the sample. (The consumer can do this
because the minor number change guarantees that only backward-compatible changes
have been made in the format of the data.)
Incompatible Signatures
If the signature of a produced exchange is specified as zero, then consumers will not
check it. If the signature of a consumed exchange is configured as zero, then any
signature from a producer will be accepted and the data used if the length of the data
exactly matches the expected length.
Use of signatures is enabled by default for new RX3i projects and is disabled for other
targets and existing projects.
Only the PACSystems RX3i support non-zero signatures. All other targets force the
signature for both produced and consumed exchanges to be zero.
Configuration 92
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Configuration 93
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Property Description
A name is assigned for this exchange. Defaults to the target name of the
Name producer, an underscore, and the exchange ID in the producer. Changing
the name (or its syntax) may prevent resynchronization of the variable.
Identifies a specific data exchange to be received by the consuming device.
Exchange ID Exchange ID is defined by the producer. Changing the Exchange ID may
prevent resynchronization with the server.
Adapter The Adapter Name is the name of a specific Ethernet interface, which is
Name identified by its rack and slot location within the consuming PLC.
Specifies whether the data’s destination will be:
Destination ▪ An IP address (Unicast)
Type ▪ A Group ID (Multicast)
▪ All EGD nodes on the subnet (Broadcast IP).
Identifies the data’s consuming device, based on the Destination Type
selected:
Destination ▪ a dotted-decimal IP address if Destination Type is IP Address
▪ the group’s ID (1–32) if Destination Type is Group ID
▪ the value 255.255.255.255 if Broadcast IP is the Destination Type.
The scheduled repetition period at which the data is produced on the
network. Configure a value in the range of zero or 2–3,600,000 (2
milliseconds to 1 hour). The value zero means at the end of the next PLC
Produced
scan, but not less than two milliseconds (2 ms) from the previous
Period
production. Set the production period to ½ the period at which the
application needs the data in this exchange. Round this value to the nearest
2 milliseconds.
Fixed at Always. In the PLC, production of EGD is controlled by the I/O state:
Send Type when enabled, EGD production is enabled, and when disabled, EGD
production is disabled.
Reply Rate Not used.
When set to True, the Run Mode Store Enabled parameter allows the user to
modify or delete this exchange and store the changes while in Run mode.
You can add exchanges in Run mode regardless of the setting of this
Run Mode
parameter.
Store Enabled
It is recommended that you keep this parameter at its default setting, False,
unless your application has a specific need to modify this exchange in Run
mode.
Configuration 94
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Double-clicking on the produced exchange opens a window for configuring the variables
within the exchange. Each exchange has its own variable list. These variables contain the
data that is produced for the network. Each variable contains the following information:
Property Description
The location within the data area for this exchange where the
start of the data for this variable is located. The offset is
Offset expressed as Byte.Bit, where Byte is a zero-based byte offset and
(Byte.Bit) Bit is a zero-based bit position within that byte. (Valid bit values
are 0-7. Bit 0 is the least-significant bit within the byte; bit 7 the
most significant.)
Variable The name is defined for this variable.
The PLC memory reference address contains the start of the data
Ref Address
for this variable.
Ignore Not used for Produced exchange.
Size of the data for this variable expressed in units of the selected
Length
PLC reference memory type.
The data type of the selected PLC reference memory type.
Type
(Automatically set up by the Ref Address selection.)
Description An optional text description of this variable.
To add a new variable to the end of the exchange, click the Add button. This does not
change the data offsets of any existing variables within that exchange.
To insert a new variable among the existing variables, click on an existing variable. When
you click the Insert button, a new variable will be created ahead of the selected existing
variable. This changes the data offsets of all subsequent variables in the exchange.
Once a new variable has been entered, double-click a data field within the row to edit
that value.
To delete an existing variable, click on the variable row and then click the Delete button.
The sum of all variables in the exchange must not exceed 1400 bytes. The total length of
the exchange (in bytes) is displayed as Length (Bytes): at the top of the exchange window
above the variable list. PACSystems CPUs with firmware version 5.0 and later support a
maximum of 30,000 variables for all exchanges. Earlier firmware versions support
approximately 12,000 variables for all exchanges.
A variable is automatically created for the required Status variable. This variable contains
the local exchange status that is returned to the PLC logic application. The exchange
status is not part of the produced exchange data and is not available to the network.
Configuration 95
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Property Description
Name A name is assigned for this exchange. Defaults to the target
name of the producer, an underscore, and the exchange ID in
the producer. Changing the name (or its syntax) may prevent
resynchronization of the variable.
Producer ID The PLC producing the exchange. This value, conventionally
expressed as a dotted-decimal number uniquely identifies the
Ethernet Global Data device across the network.
Group ID Used only if the produced exchange has been configured with a
Destination Type of Group ID. This Group ID (1-32) must match
that of the producer.
Exchange ID Identifies a specific data exchange to be received by the
consuming device. It must match the Exchange ID specified in
the produced exchange.
Adapter Name The Adapter Name is the name of a specific Ethernet interface,
which is identified by its rack and slot location within the
consuming PLC.
Consumed Not used in PACSystems. (Always displayed as 200 milliseconds;
Period not editable.)
Update A value in the range of zero to 3,600,000 milliseconds (1 hour).
Timeout The Ethernet interface will declare a refresh error if the first or
subsequent packet of data does not arrive within this time. The
Update Timeout should be at least double the value of the
producer period and should allow for transient network delays.
The default, zero, indicates no timeout. Resolution is in two
milliseconds (2ms) increments.
Run Mode When set to True, the Run Mode Store Enabled parameter
Store Enabled allows the user to modify or delete this exchange and store the
changes while in Run mode. You can add exchanges in Run
mode regardless of the setting of this parameter.
It is recommended that you keep this parameter at its default
setting, False, unless your application has a specific need to
modify this exchange in Run mode.
Double-clicking on the consumed exchange opens a window for this exchange for
configuring the variables within the exchange. Each exchange has its own variable list.
These variables contain the data that is consumed from the network. Each variable
contains the following information
Configuration 96
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Property Description
Offset The location within the data area for this exchange where the start
(Byte.Bit) of this data for this variable is located. The offset is expressed as
Byte.Bit, where Byte is a zero-based byte offset and Bit is a zero-
based bit position within that byte. (Valid bit values are 0-7. Bit 0 is
the least-significant bit within the byte; bit 7 the most significant.)
Variable The name is defined for this variable.
Ref Address The PLC memory reference address contains the start of the data
for this variable. For consumed exchanges, %S memory types and
override references are not allowed. (This field is non-editable when
the Ignore selection is set to True.)
Ignore Allows a consumer to ignore this variable. Setting Ignore to True
means this variable is not sent to the PLC reference table. Defaults
to False.
Length The size of the data for this variable is expressed in units of the
selected PLC reference memory type.
Type The data type of the selected PLC reference memory type.
(Automatically set up by the Ref Address selection.)
Description An optional text description of this variable.
To add a new variable to the end of the exchange, click the Add button. This does not
change the data offsets of any existing variables within that exchange.
To insert a new variable among the existing variables, click on an existing variable. When
you click the Insert button, a new variable will be created ahead of the selected existing
variable. This changes the data offsets of all subsequent variables in the exchange.
Once a new variable has been entered, double-click a data field within the row to edit
that value.
To delete an existing variable, click on the variable row, and then click the Delete button.
The sum of all variables in the exchange must not exceed 1400 bytes. The total length of
the exchange (in bytes) is displayed as Length (Bytes): at the top of the exchange window
above the variable list. PACSystems CPUs with firmware version 5.0 and later support a
maximum of 30,000 variables for all exchanges. Earlier firmware versions support
approximately 12,000 variables total for all exchanges.
A variable is automatically created for the required Status variable. This variable contains
the local exchange status that is returned to the PLC logic application. The exchange
status is not part of the consumed exchange data.
A variable is automatically created for the optional Timestamp variable. This variable
contains the timestamp of the last received data packet (generated when the exchange
was produced) that is returned to the PLC logic application. Set the Ref Address to NOT
USED to ignore the timestamp variable.
Configuration 97
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Any consumed data variable may be ignored by setting the Ignore selection to True. See
Selective Consumption, below.
Note: If the total data length of a consumed exchange does not match the length of the
produced exchange received from the network, PLC Faults and Ethernet exceptions will
occur.
Selective Consumption
Not all data ranges within a produced exchange need to be consumed by each PLC. For
example, a producer is producing an exchange consisting of a 4-byte floating-point
value, followed by a two-byte integer, followed by a two-byte analog value. If the
consuming PLC wants to consume only the analog value and place it into %AI003, the
consumer might be configured as shown below.
Note: Where EGD signatures are not used the total length of the exchange must
be the same in producer and consumer, even if the consumer is ignoring a portion of the
exchange. Failure to configure any ignored bytes in the consumed exchange will result in
exchange exception log and fault table entries, error status in the exchange status data,
and no data is transferred for the exchange.
Configuration 98
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
Download Download
to to
Primary Secondary
exchange ID = X exchange ID = X
exchange ID = Y exchange ID = Y + ofs
Configuration 99
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 4
GFK-2224AE Nov 2022
2. Produce in Backup Mode: Both Redundant Controllers will produce the EGD
Exchange on their Ethernet interface’s native IP addresses.
Configuration 100
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 5
GFK-2224AE Nov 2022
ETM001-Kxxx
CPE205/210/
215/220/240
ETM001-Jx
CPE302
CPE305
CPE310
CPE330
CPE400
CPE100
CPE115
CPL410
EGD 1 X X X X X X X X X X X
EGD 2 X X
P C
The producer of an exchange periodically sends new samples of data from its local
internal memory. The producer of exchange is uniquely identified by its Producer ID. The
Producer ID can be expressed as a dotted-decimal number (for example, 0.0.0.1). Even
when expressed in IP address form, it is not used as an IP address. It is used to identify a
specific PLC on the network. Since the Producer ID identifies only the PLC producing the
exchange, the number of Ethernet interfaces installed will not affect the PLC.
When using the EGD configuration server, each PLC that transfers EGD must be assigned
a Producer ID even if that PLC produces no exchanges. The Producer ID uniquely
identifies each EGD device in the configuration server and must be present if the server
is used.
A consumer is a device that will update its local internal memory based on the data in
exchange. The consumer is identified at the producer by an IP Address, a Group ID, or a
Subnet Mask, depending on the Destination Type selected.
The Consumed Exchange configuration allows Selective Consumption of a produced EGD
exchange. Selective Consumption occurs when the consumer takes in the whole exchange
from the network but does not send all the exchange data to the PLC memory. A
Consumed Exchange can be set to ignore the data ranges (variables) that are not
needed.
Ethernet Global Data 102
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 5
GFK-2224AE Nov 2022
CPE205/210/2
ETM001-Kxxx
15/220/240
ETM001-Jx
CPE302
CPE305
CPE310
CPE330
CPE400
CPE100
CPE115
CPL410
Number of
EGD 1 255 255 255 255 255 255 8 8 32 255 255
Exchanges
Each exchange in EGD is identified by its Producer ID and Exchange ID. Up to 255
exchanges can be configured for a PACSystems Ethernet interface. They can be divided
into any combination of produced and consumed exchanges. Each exchange can be up
to 1400 bytes in length.
Some produced exchanges can accept partial data when exchanges are produced at
different rates or sent to different consumers. Consumed Exchanges should not
duplicate where the data is put as variable conflicts will occur and data will be
overwritten by the multiple exchanges.
CAUTION
Ethernet Global Data is designed for simple, efficient communication of sampled data between
devices. It is not intended for event notification where the possible loss of a sample of data would
be significant.
Some EGD devices support EGD pages. An EGD page consists of one or more exchanges
that are produced on the same schedule to the same destination. Pages remove the
1400-byte size limitation of EGD exchanges. PME does not currently show information
about EGD pages, but the user may see the constituent exchanges for each page.
Each Ethernet Global Data exchange is composed of one or more data ranges
transmitted as a sequence of 1 to 1400 bytes of data. The data ranges are commonly
called variables; they may be configured to correspond to PLC variables. The content of
the data is defined for both the producer and consumers of the data. In this example, a
producer sends an 11-byte exchange consisting of the current contents of %R00100
through %R00104 followed by the current contents of %I00257 through %I00264. The
same exchange can be configured for each consumer to suit the needs of the
application.
The variables within an exchange are defined in the Ethernet Global Data configuration
in Hardware Configuration. There can be:
▪ A length of 1 byte to 1400 bytes per exchange. The total size of an exchange is the
sum of the data lengths of all the data ranges configured for that exchange.
▪ A maximum of 30,000 data ranges for all exchanges in the target, for CPUs with
firmware version 5.0 or later. (Earlier firmware versions allow approximately 12,000
EGD data ranges per target.)
Different produced exchanges may share some or all the same data ranges even if the
exchanges are produced at different rates. A consumer does not have to consume all the
data from a produced exchange. A consumed exchange may be configured to ignore
specified data ranges.
The PLC memory types listed below can be included in EGD exchanges. Discrete point
references such as %I or %Q are configured as Byte-Array, Word-Array, or Dword-Array
variables. That means a variable with discrete point references must be defined in blocks
of 8 points if it is defined as a Byte-Array, 16 points if Word-Array, and 32 points if Dword-
Array. Discrete memory must be byte-aligned. Boolean type and Boolean-Array variables
are not allowed.
P-Producer
Memory
Description C-
Type
Consumer
%R Register memory in word mode P/C
%W Word memory in word mode P/C
%AI Analog input memory in word mode P/C
%AQ Analog output memory in word mode P/C
%I Discrete input memory in byte mode P/C
%Q Discrete output memory in byte mode P/C
%T Discrete temporary memory in byte mode P/C
%M Discrete momentary memory in byte mode P/C
%SA Discrete system memory group A in byte mode P/C
%SB Discrete system memory group B in byte mode P/C
%SC Discrete system memory group C in byte mode P/C
%S Discrete system memory in byte mode P
%G Discrete global data table in byte mode P/C
Symbolic
Symbolic variables P/C
Variables
To use a symbolic variable in an EGD exchange, it must exist in the Variables definition
for the target. To add it to an exchange, double click the Variable field to open a selection
dialog box as illustrated in Figure 43.
It is possible to configure more Ethernet Global Data than a PLC can transfer (especially
on 10Mbit networks). If high levels of consumer timeouts occur in some or all the
consumed exchanges, the EGD load can be reduced by:
▪ Increasing the production period (especially if the period is more frequent than
double the minimum time in which the data is needed).
▪ Defining fewer exchanges, each with more data.
▪ Using EGD groups or broadcasting to subnets. Rather than producing a directed
exchange to several destinations, a single exchange can contain all the data and
each consumer can transfer only the data it needs from the exchange.
▪ Adding another Ethernet interface module to the rack and spreading the EGD
exchanges.
When configured for Redundant IP operation, the active unit produces all EGD
exchanges to the network. The backup unit produces only EGD exchanges that have their
Produce in Backup Mode property set to True. When the active Ethernet interface changes
to the backup, it stops the production of all EGD exchanges except those that are
configured to produce in backup mode.
When configured for Redundant IP operation, the active and backup Ethernet interfaces
should be configured to consume EGD exchanges via multicast host groups or the local
subnet broadcast address. Redundancy roles permit both the active and backup units to
receive the latest data from the network. Unicast operation is not recommended. The
backup unit does not consume exchanges at the Redundant IP address. Sending an
Ethernet Global Data Exchange to Multiple Consumers.
There are two ways to send an EGD Exchange to multiple consumers at the same time:
by Multicasting it to a predefined group of consumers or by Broadcasting it to all the
consumers on a subnet. Both methods allow many consumer devices to simultaneously
receive the same data from one producing EGD device. If an exchange is a Broadcast or
Multicast, the same exchange must be configured at the producer and at each
consumer. Each consumer can use all the data or just a selected portion, as configured
for the consumed exchanges.
For more information about Multicasting and Broadcasting, refer to Section 13, Network
Administration.
If more than one device on the network should consume a Global Data exchange, those
devices can be set up as a group. The network can include up to 32 numbered groups.
Groups allow each sample from the producer to be seen simultaneously by all
consumers in the group.
A device can belong to more than one group, as illustrated below. In the following
example, device 10.0.0.2 consumes exchanges from Group 2 and Group 1. Each device in
a group responds to the group’s assigned ID number from 1 to 32.
Group 2 Group 1
Group 3
Note: Each device on the network using EGD should have a unique local producer
ID. If the devices using multicast EGD do not have unique local producer IDs, unexpected
results can occur when using group addressing for EGD exchanges.
Each Group ID corresponds to a Multicast (Class D) IP address reserved by the Internet
authorities. The default Multicast IP addresses used by Ethernet Global Data are:
The same Ethernet Global Data exchange can be sent to all the consumers on a subnet
by configuring the Produced Exchange to use a Destination Type of “Broadcast.” The
“Destination” of that exchange then changes to the value 255.255.255.255. (The Ethernet
interface converts this value to the appropriate subnet broadcast mask for this network.)
As with a Group ID, each consumer on the subnet can be configured to use some or all
of the exchange.
With the ability to perform a run-mode store of EGD, it is possible to change the Group
ID or Destination Type of a produced or consumed exchange at run-time. The effects of
such changes will depend upon the configurations of the local PLC and other devices on
your network.
Broadcast
Changing the Destination Type of a produced exchange from unicast or multicast to
broadcast causes samples to be sent to all nodes on your network. Samples are
subsequently processed if the local device has a consumed exchange configured with
matching Producer ID and Exchange ID. Otherwise, they are ignored.
Multicast
Changing the Destination Type of a produced exchange from unicast or broadcast to
multicast causes samples to be sent to a subset of the nodes on your network. Samples
are visible to all devices on the network that has any exchange(s) configured to consume
from the specified Group ID. Samples are subsequently processed only if the local device
has a consumed exchange configured with matching Producer ID and Exchange ID.
This means that modifying a multicast exchange so that it produces to a different Group
ID may or may not affect its consumption. If the remote device has any exchanges
configured to consume from the new producer ID, consumption will not be interrupted.
However, consumption will be affected if the remote device is not configured to
consume any exchanges from the new Group ID. In the latter case, updates to the
consumed exchange configuration will be necessary to resume consumption.
Unicast
Transitioning from a multicast or broadcast exchange to unicast production causes
samples to be sent to a single node. Thus, the exchange will now only be visible to a
single remote node and processed only if that node contains a consumed exchange with
matching Producer ID and Exchange ID.
CPU ETHERNET
INTERFACE
SHARED
INTERNAL MEMORY
MEMORY
NETWORK
In the producing PLC, the CPU updates its shared internal memory with a data sample
when requested by its Ethernet interface. The update affects the length of the PLC sweep
only for that specific exchange and will have little effect on the PLC average sweep time.
When the Ethernet interface’s producer period expires, it produces the data sample from
shared internal memory onto the network.
In a consuming PACSystems PLC, shared internal memory is updated as soon as the
Ethernet interface gets a data sample from the network. There is no user-configurable
consumer period. The CPU updates its reference tables from shared internal memory at
the end of the sweep after it is notified by the Ethernet interface that fresh data has
arrived for a specific exchange. The data is made available to the application on the next
PLC sweep after it is received. Some other types of Ethernet interfaces implement a
consumption period timer.
Ethernet Global Data attempts to provide the most up-to-date process data, consistent
with the configured schedule.
data is not available at the next production timer expiration, the Ethernet interface
produces a sample containing the previous data to the network.)
The Producer period for an EGD exchange can be two milliseconds (2 ms) to one hour. In
the PLC, the Ethernet interface attempts to produce the data at this interval. The
exchange production may vary from the configured interval by up to one production
period or one producer CPU sweep period, whichever is reported sooner.
The producer period is configurable in increments of 2 ms. If the Producer Period is set
to zero, production is scheduled for every scan or every 2 ms, whichever is slower. In a
PLC with rapid scan times, scheduling a produced exchange at zero results in a very high
load on the network and on the Ethernet interface, which can degrade overall Ethernet
performance. Scheduling multiple exchanges for a zero period in a PLC with a low scan
time can result in the Ethernet interface is unable to produce all the required data and
will degrade SRTP communication.
The following illustrations (Figure 46 and Figure 47) show the relationship between the
PLC output scan time, the produced exchange timer, and data samples on the network.
Timing Example 1
Only one sample is produced on the network per producer period expiration. The time
between samples can vary up to the producer CPU sweep time.
Sample on Network
Timing Example 2
More than one sample can be produced per producer period expiration and stale
samples are produced to the network.
Sample on Network
12
RUN-SUSPEND I/O refers to the SUSIO logic function. (The DOIO logic function does not affect EGD production or
consumption.)
13
Production and consumption is controlled by the PLC Mode as described above.
14
Producer ID and exchange definitions are replaced.
15
Producer ID and exchange states depend on the PLC mode and configuration prior to the action.
Ethernet Global Data 112
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 5
GFK-2224AE Nov 2022
CAUTION
Modifying an exchange using an RMS can cause an interruption in the transfer of EGD data or
possibly take the exchange offline. This is particularly a concern for exchanges used with remote
IO, such as exchanges between the CPU and NIU. Do not use this feature unless you are sure you
understand the possible results.
The user can modify EGD exchanges in a running controller without first transitioning to
stop mode. Each exchange can be configured individually to allow or disallow changing
or deleting the exchange in run mode. You can add exchanges in run mode without
changing any configuration settings.
Added Exchanges
Added exchanges begin consumption/production shortly after the activation of any logic
that is part of the run mode store sequence.
Deleted Exchanges
Deleted exchanges cease consumption/production shortly before the activation of any
logic that is part of the run mode store.
Modified Exchanges
Modified exchanges will be offline for a short time during the activation of the new logic
that is part of the RMS. This amount of time depends on factors, such as sleep mode and
sweep time. All variables associated with a modified exchange will hold their last state
during the pause in consumption. The consumption timeout is restarted for each
modified consumed exchange.
Parameter Behavior
Local Producer ID This setting cannot be changed in a run mode
store.
Use Signatures (only available when This setting cannot be changed in a run mode
Configuration Server is used) store.
Secondary Produced Exchange Offset (Redundancy systems only.) This setting
cannot be changed in a run mode store.
Redundancy Role (Redundancy systems only.) This setting
cannot be changed in a run mode store.
Parameter Behavior
Redefines the exchange. Causes a major signature change in the
Producer ID
producer. The exchange will be incompatible.
Determines the producer of the exchange and may affect compatibility.
Group ID For details, refer Sending an Ethernet Global Data Exchange to Multiple
Consumers.
Redefines the exchange. Causes a major signature change in the
Exchange ID
producer. The exchange will be incompatible.
Deletes an exchange from one Ethernet module and adds an exchange
to another. Assuming no other parameters change, this will not affect
compatibility
Adapter
To any EGD Class 2 device sending commands that operate on this
Name
exchange, it will appear that the exchange has been deleted. The Class
2 device must be updated to direct the commands to the IP address of
the adapter where the exchange has been moved.
Modifies existing exchange. Does not affect compatibility. Note that
Update
decreasing a consumed exchange’s update timeout without updating
Timeout
the corresponding producer’s production period may cause timeouts.
Resulting
Type of Change
Signature Change
Adding a variable to the end of the variable list Minor
Adding a variable at the beginning or middle of the list Major
Deleting or modifying a variable Major
Changing a variable’s name, type, or array dimensions Major
Changing other variable properties such as reference address and None
publish state
CAUTION
With signatures disabled, it is possible for a Run Mode Store to cause incompatibility between a
producer and/or consumer. For example, replacing an exchange variable with a different variable
of the same size does not change the size of the exchange. Since the size of the exchange is the
same, the consumer will continue to consume that exchange when the new definition has been
Run Mode Stored to either the producer or the consumer.
A unique Exchange Status word location must be configured for each exchange. The
Exchange Status word is used to store status information about an EGD exchange. The
PLC writes status codes into the Exchange Status word whenever an exchange is
transferred or a consumer timeout occurs
The Exchange Status word is typically set to 1, indicating that data transfer occurred
successfully. The application program can monitor for error conditions reported in the
Exchange Status word by setting it to 0 once a non-zero value is written to it. In all cases,
if the least significant bit of the exchange status is set to a 1, then data was transferred
successfully. Status values other than 1 with the least significant bit set (e.g., 3, 5, and 7)
give information about the data that was transferred, the producer, or the network that
are noteworthy in the application.
The program should also monitor the LAN Interface OK Status bit (see Section 12
Diagnostics) for each of the Ethernet interfaces performing EGD. The Exchange Status
word is invalid if the bit is 0.
Note that when an EGD exchange message received from the network contains an
invalid Protocol Version Number, the Ethernet interface cannot decode the message to
identify the exchange. In this case, the Exchange Status Word cannot be updated.
The following table shows the error codes that can be written to the Exchange Status
word in the Producer Exchange and Consumer Exchange. The Exchange Status Word
value for each exchange may be displayed via the STAT G Station Manager command.
The Exchange Status Word value is also part of the EGD Exchange PME configuration.
Value
(Dec.) P/C Error Description
Produced: Initial value until the first producer period refresh occurs.
No new status event
0 P/C Consumed: The data has not been refreshed since the previous consumption scan and
has occurred.
the consumer timeout has not expired.
No error currently The exchange is producing data.
1 P
exists. This value should be ignored in the Output Disabled PLC modes.
No error, data
1 C The data has been refreshed on schedule since the previous consumption.
consumed.
The Ethernet interface in the producer is configured for network time synchronization,
3 C SNTP error.
but is not synchronized to an SNTP server. The data was refreshed on schedule.
During exchange configuration, an invalid configuration parameter was received by the
4 P/C Specification error.
Ethernet interface or an error occurred in communication with the PLC CPU.
Stale or invalid data The producer has indicated that the data sent was stale or otherwise not valid at the
5 C
sample time it was produced.
Refresh timeout The exchange’s timeout period is configured to a non-zero value and the data has not
6 C
without data. been refreshed within the timeout period.
Data after refresh The data has been refreshed since the previous consumption, but not within the timeout
7 C
timeout. period.
This status can be set during exchange configuration16 if the Ethernet interface detects
IP Layer not
10 P/C that it cannot currently access a network. This temporary status can change if successful
currently initialized.
network access becomes possible.
Lack of resource Local resources are not available to establish the exchange during exchange
12 P/C
error. configuration16. The PLC Fault Table may provide more detail on the specific error.
Data size mismatch The data size of a consumed exchange does not match the exchange definition. The
14 C
error exchange is ignored.
This error can occur if the CPU no longer recognizes the Ethernet interface within the
Loss of Ethernet PLC rack. A loss of module PLC Fault Table entry will also be present. The error can also
18 P/C
interface error occur if the module in the given slot of the PLC rack does not match the module
specified in the configuration (configuration mismatch).
Major signature Producer and consumer signatures are different, indicating a mismatched configuration.
30 C
mismatch The exchange is ignored.
NOTE: PACSystems does not support EGD exchange status values 16, 22, 26, and
28. These exchange status values were used in Series 90 products only.
16
Exchange configuration occurs when either 1) Hardware Configuration containing EGD is stored to the PLC, 2) a PLC
containing EGD configuration powers up, or 3) an Ethernet interface configured for EGD is restarted.
Ethernet Global Data 119
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 6
GFK-2224AE Nov 2022
Note: The EGD commands described in this chapter are sent using the
Communications Request (COMMREQ) function. For more information on COMMREQ,
please reference PACSystems RX7i, RX3i, and RSTi-EP CPU Programmer’s Reference Manual,
GFK-2950, Section 4.8.6, Communication Request (COMMREQ)
Command Description
ENABLE Control logic for activating the COMMREQ Function Block.
IN The location of the Command Block. The Command Block contains the
parameters of the COMMREQ request. It can be located at any valid
address within a word-oriented memory area (%R, %AI, %AQ, %P, %L, or
%W) in the PACSystems PLC. Parameters for the EGD commands are
described on the following pages.
SYSID A hexadecimal word value that gives the rack (high byte) and slot (low
byte) location of the Ethernet interface. For example, an Ethernet
interface in rack zero, slot six would use the value 6 for this parameter.
For the PACSystems CPU embedded Ethernet interface, enter the
rack/slot location of the CPU module.
TASK For the PACSystems CPU embedded Ethernet interface, Task must be set
to the value 65536 (10000H) to address the CPU’s Ethernet
daughterboard. For a PACSystems Ethernet module, the Task must be
set to zero.
FT OUTPUT The FT output is set if the PLC CPU is unable to deliver the COMMREQ to
the Ethernet interface. When the FT output is set, the Ethernet interface
is unable to return a COMMREQ status word to the PLC logic application.
Value Value
Type (Decimal) (Hex.) Description
%R 8 08H Register memory (word mode)
%AI 10 0AH Analog input memory (word mode)
%AQ 12 0CH Analog output memory (word mode)
%I 16 10H Discrete input memory (byte mode)
70 46H Discrete input memory (bit mode)
%Q 18 12H Discrete output memory (byte mode)
72 48H Discrete output memory (bit mode)
%T 20 14H Discrete temporary memory (byte mode)
74 4AH Discrete temporary memory (bit mode)
%M 22 16H Discrete momentary internal memory (byte
76 4CH mode)
Discrete momentary internal memory (bit
mode)
%G 56 38H Discrete global data table (byte mode)
86 56H Discrete global data table (bit mode)
%W 196 C4H Word memory (word mode; limited to %W1-
%W65536)
Word 4 of the COMMREQ Command Block specifies the offset within the memory type
selected. The status word address offset is a zero-based number. For example, if %R1
should be the location of the status word, you must specify a zero for the offset. The
offset for %R100 would be 99 decimal (When using %W memory, the maximum offset
value that can be entered is 65535, signifying %W65536).
The Ethernet interface reports the status of the COMMREQ back to the status location.
See Section 12 Diagnostics for COMMREQ status values that may be reported for the EGD
commands.
(Continued …)
(Word 7) EGD Command Number: Word 7 requests that a read PLC memory operation occur. If the command is processed
successfully, it will result in PLC reference memory data being retrieved from the server to the client.
(Word 8) Command Retry Time: Word 8 specifies the time (in milliseconds) the Ethernet interface will wait between retries when
transferring the command. A total of four tries will be made to send the command. If no response is received after the four tries (i.e.
after four times the retry time value), an error status will be returned in the COMMREQ status word. If the command retry is specified
as zero, the default value of one second is used.
(Word 9) Local PLC - Memory Type: Words 9-11 specify the location in the local PLC where the Ethernet interface will store data
received from the remote PLC. The amount of data to be transferred is specified by the number of memory units of the data read
from the remote PLC (Word 15).
(Words 10 - 11) Local PLC - Memory Starting Address: Words 10 and 11 determine the starting address in the local PLC in which the
data from the remote PLC is to be stored. The value entered is the 32-bit offset (1-based) from the beginning of PLC memory for the
memory type and mode specified in Word 9. Word 10 contains the least significant 16 bits of the offset; Word 11 contains the most
significant 16 bits of the offset. This offset will be either in bits, bytes, or words depending on the mode specified. Valid ranges of
values depend on the PLC’s memory ranges. The user is responsible for assuring that this area is large enough to contain the
requested data without overwriting other application data.
(Word 12) Remote PLC - Memory Type: Words 12–14 specify the memory type and starting address in the remote
PLC from which the data is to be read. Valid values for Word 12 are listed above.
(Word 15) Remote PLC - Number of Memory Units: Word 15 specifies the amount of data to be transferred. The value entered
is the number of memory units to be transferred, where the size of the remote PLC memory type (bit, byte, or word) is specified
in Word 12. For Read PLC Memory, the maximum length is 11200 bits, 1400 bytes, or 700 words of data, or the amount of
memory available in the PLC for the selected memory type, whichever is less.
(Word 17) Remote PLC -Network Address Length: Word 17 specifies the length in words of the
remote PLC IP address in this COMMREQ Command Block. Word 17 must contain 4.
(Words 18-21) Remote PLC - IP Address: Words 18 – 21 specify the four integers, one integer per word, of the dotted-decimal IP
address of the remote PLC to be accessed.
(Word 7) EGD Command Number: Word 7 a write PLC memory operation. If the command is processed successfully, it
will result in PLC reference memory data being sent from the server to the client.
(Word 8) Command Retry Time: Word 8 specifies the time (in milliseconds) the Ethernet interface will wait between
retries when transferring the command. A total of four tries will be made to send the command. If no response is
received after the four tries (i.e. after four times the retry time value), an error status will be returned in the COMMREQ
status word. If the command retry is specified as zero, the default value of one second is used.
(Word 9) Local PLC - Memory Type: Words 9-11 specify the location in the local PLC where the Ethernet interface will
get the data to be written to the remote PLC. Valid values for Word 9 are listed in the description of Read PLC Memory
Command. The amount of data to be transferred is specified by the number of memory units of the data written to the
remote PLC (Word 15).
(Words 10 - 11) Local PLC - Memory Starting Address: Words 10 and 11 determine the starting address in the local PLC
from which the data is to be written to the remote PLC. The value entered is the 32-bit offset (1-based) from the
beginning of PLC memory for the memory type and mode specified in Word 9. Word 10 contains the least significant 16
bits of the offset; Word 11 contains the most significant 16 bits of the offset. This offset will be either in bits, bytes, or
words depending on the mode specified. (For example, if Word 9=16 and Words 10,11 = 2, 0 then the starting address
will be %I9.) Valid ranges of values depend on the PLC’s memory ranges.
(Word 12) Remote PLC - Memory Type: Words 12–14 specify the memory type and starting address in the remote PLC
where data is to be written. Valid values for Word 12 are listed above.
(Words 13 - 14) Remote PLC - Memory Starting Address: Words 13, 14 determine the starting address in the remote
PLC where data is to be written. The value entered is the 32-bit offset (1-based) from the beginning of PLC memory for
the memory type and mode specified in Word 12. Word 13 contains the least significant 16 bits of the offset; word 14
contains the most significant 16 bits of the offset. This offset will be either in bits, bytes, or words depending on the
mode specified (for example, if Word 12=16 and Words 13,14 =9, 0, then the starting address will be %I65). Valid ranges
of values depend on the remote PLC’s memory ranges.
(Word 15) Remote PLC - Number of Memory Units: Word 15 specifies the amount of data to be transferred. The value
entered is the number of memory units to be transferred, where the size of the remote PLC memory type (bit, byte, or
word) is specified in Word 12.
(Word 16) Remote PLC - Network Address Type: Word 16 specifies the format of the remote PLC address. Word 16
must contain the value 1. This indicates a dotted-decimal IP address expressed using a separate register for each
decimal digit.
(Word 17) Remote PLC - Network Address Length: Word 17 specifies the length in words of the remote PLC IP
address in this COMMREQ Command Block. Word 17 must contain 4.
(Words 18 – 21) Remote PLC - IP Address: Words 18–21 specify the four integers, one integer per word, of the dotted-
decimal IP address of the remote PLC to be accessed.
(Word 8) Command Retry Time: Word 8 specifies the time (in milliseconds) the Ethernet interface will wait between retries
when transferring the command. A total of four tries will be made to send the command. If no response is received after the
four tries (i.e. after four times the retry time value), an error status will be returned in the COMMREQ status word. If the
command retry is specified as zero, the default value of one second is used.
(Word 9) Local PLC – Memory Type: Words 9-11 specify the location in the local PLC where the Ethernet interface will get
the data to be read from the remote EGD device. Valid values for Word 9 are listed in the description of Read PLC Memory
Command. The amount of data to be transferred is specified by the Exchange DataLength (Word 18).
(Words 10 – 11) Local PLC – Memory Starting Address: Words 10 and 11 determine the starting address in the local PLC
where data is to be read from the remote EGD exchange. The value entered is the 32-bit offset (1-based) from the beginning
of PLC memory for the memory type and mode specified in Word 9. Word 10 contains the least significant 16 bits of the
offset; Word 11 contains the most significant 16 bits of the offset. This offset will be either in bits, bytes, or words depending
on the mode specified. (For example, if Word 9=16 and Words 10,11 = 2, 0 then the starting address will be %I9.) Valid
ranges of values depend on the PLC’s memory ranges. The user is responsible for assuring that this area is large enough to
contain the requested data without overwriting other application data.
(Words 10 – 11) Local PLC – Memory Starting Address: Words 10 and 11 determine the starting address in the local PLC
where data is to be read from the remote EGD exchange. The value entered is the 32-bit offset (1-based) from the beginning
of PLC memory for the memory type and mode specified in Word 9. Word 10 contains the least significant 16 bits of the
offset; Word 11 contains the most significant 16 bits of the offset. This offset will be either in bits, bytes, or words depending
on the mode specified. (For example, if Word 9=16 and Words 10,11 = 2, 0 then the starting address will be %I9.) Valid
ranges of values depend on the PLC’s memory ranges. The user is responsible for
(Words 13 – 14) Remote EGD exchange – Producer ID: Words 13 and 14 contains the 32-bit Producer ID of the desired
exchange at the remote EGD device. Word 13 contains the least significant 16 bits of the Producer ID; word 14 contains the
most significant 16 bits.
(Words 15 – 16) Remote EGD exchange – Exchange ID: Words 15 and 16 contains the 32-bit Exchange ID of the desired
exchange at the remote EGD device. Word 15 contains the least significant 16 bits of the Exchange ID; word 16 contains the
most significant 16 bits.
(Word 17) Remote EGD exchange – Exchange Data Offset: Word 17 contains the 0-based byte offset of the data to be
read from the data portion of the exchange at the remote EGD device.
(Word 18) Remote EGD exchange – Exchange Data Length: Word 18 contains the length (in bytes) of the exchange data to
be read from the remote EGD device. The exchange data length may not exceed 1400 bytes or the amount of memory
available in the PLC for the selected memory type, whichever is less.
(Word 19) Remote Server – Network Address Type: Word 19 specifies the format of the remote PLC address. Word 19
must contain the value 1. This indicates a dotted-decimal IP address expressed using a separate register for each decimal
digit.
(Word 20) Remote Server – Network Address Length: Word 20 specifies the length in words of the remote PLC IP address
in this COMMREQ Command Block. Word 20 must contain 4.
(Words 21 – 24) Remote Server – IP Address: Words 21–24 specify the four integers, one integer per word, of the dotted-
decimal IP address of the remote PLC to be accessed.
(Word 8) Command Retry Time: Word 8 specifies the time (in milliseconds) the Ethernet interface will wait between retries
when transferring the command. A total of four tries will be made to send the command. If no response is received after the
four tries (i.e. after four times the retry time value), an error status will be returned in the COMMREQ status word. If the
command retry is specified as zero, the default value of one second is used.
(Word 9) Local PLC - Memory Type: Words 9-11 specify the location in the local PLC where the Ethernet interface will get the
data to write to the remote EGD device. Valid values for Word 9 are listed in the description of Read PLC Memory Command.
The amount of data to be transferred is specified by the Exchange Data Length (Word 18).
(Words 10 - 11) Local PLC - Memory Starting Address: Words 10 and 11 determine the starting address in the local PLC from
which data is to be written to the remote EGD exchange. The value entered is the 32-bit offset (1-based) from the beginning of
PLC memory for the memory type and mode specified in Word 9. Word 10 contains the least significant 16 bits of the offset;
Word 11 contains the most significant 16 bits of the offset. This offset will be either in bits, bytes, or words depending on the
mode specified. (For example, if Word 9=16 and Words 10,11 = 2, 0 then the starting address will be %I9.) Valid ranges of
values depend on the PLC’s memory ranges.
(Word 7) EGD Command Number: Word 7 requests that a masked write EGD exchange operation occur. If the command is
processed successfully, it will result in a data bit for a specified EGD exchange being written from the client to the server.
(Word 8) Command Retry Time: Word 8 specifies the time (in milliseconds) the Ethernet interface will wait between retries
when transferring the command. A total of four tries will be made to send the command. If no response is received after the
four tries (i.e. after four times the retry time value), an error status will be returned in the COMMREQ status word. If the
command retry is specified as zero, the default value of one second is used.
(Word 9) Bit Mask: Words 9 – 10 specify the individual data to be written to the remote EGD exchange. The usage of the Bit
Mask and Data are described in Masked Write to EGD Exchange Bit Mask and Data Bits, below. Word 9 contins a bit mask that
identifies a bit or bits within a data byte. The mask bit corresponding to each data bit to be written is set to 1; all other bits
are set to 0.
(Word 10) Data: Word 10 contains the data byte that contains the bit or bits to be written to the remote EGD exchange. The
individual data bits to be written are in the same position as the "1" bits in the Bit Mask (Word 9).
(Word 11) Remote EGD exchange – Exchange Signature: Words 11 contains the 16-bit exchange signature value to be
compared at the remote EGD device. For remote PLC’s, the exchange signature should be set to zero if signatures are not
being used. However, when signatures are enabled, the signature field can be set to a non-zero value so that commands will
only be executed if signatures match. In this case, mismatched signatures will cause the command to return a failure status.
(Words 12 - 13) Remote EGD exchange – Producer ID: Words 12 and 13 contains the 32-bit Producer ID of the desired
exchange at the remote EGD device. Word 12 contains the least significant 16 bits of the Producer ID; word 13 contains the
most significant 16 bits.
(Words 14 - 15) Remote EGD exchange – Exchange ID: Words 14 and 15 contains the 32-bit Exchange ID of the desired
exchange at the remote EGD device. Word 14 contains the least significant 16 bits of the Exchange ID; word 15 contains the
most significant 16 bits. For the Masked Write EGD Command, the exchange at the remote device must be a Produced
exchange.
(Word 16) Remote EGD exchange – Exchange Data Offset: Word 16 contains the 0-based byte offset of the single data byte
data containing the bit or bits to be overwritten in the data portion of the exchange at the remote EGD device.
(Word 17) Remote Server - Network Address Type: Word 17 specifies the format of the remote PLC address. Word 17 must
contain the value 1. This indicates a dotted-decimal IP address expressed using a separate register for each decimal digit.
(Word 18) Remote Server - Network Address Length: Word 18 specifies the length in words of the remote PLC IP address in
this COMMREQ Command Block. Word 18 must contain 4.
(Words 19 – 22) Remote Server - IP Address: Words 19–22 specify the four integers, one integer per word, of the dotted-
decimal IP address of the remote PLC to be accessed.
Figure 49: Example: Masked Write to EGD Exchange Bitmask and Data Bits
The Ethernet interface will synchronize to a remote SNTP time server after receiving two
broadcast clock values within 150 seconds. The Station Manager can be used to view
server status information.
In this mode, the module tries to request the time from a time server to synchronize the
clock. You can configure a maximum of two time servers: One for Primary Time Server
and another for Secondary Time Server. Based on the configuration parameters, the
Ethernet module first polls the Primary Time Server and synchronizes the clock. If the
Primary Server does not respond to the requests, it switches to the Secondary Server and
polls it for updated time. This process repeats until it synchronizes to one of the time
servers. Polling rate and timing for switching from one server to another server are
defined as user-configurable parameters. These parameters are defined in 7.4.2. For
parameter definitions in older systems, refer to Configuring Advanced User Parameters.
Note: The SNTP error condition is considered the least important of all possible error
codes. Therefore, if another error condition exists, its status code will appear in the
Status word instead of the SNTP error code.
Upon loss or absence of synchronization, the Ethernet interface’s built-in clock will
operate as follows:
▪ If after its last power-up/restart cycle, the Ethernet interface has not received an
SNTP server's timing message, it will continue to use the PLC CPU's local clock
value that is received at the power-up/restart for its time base.
▪ If the Ethernet interface has been synchronized to an SNTP server but has lost its
signal, it will use the most recently received SNTP time message as its time base.
The Ethernet interface will continue supplying time values to the PLC CPU for
timestamping, while it searches for SNTP timing messages from the network. If SNTP
messages are received later, the Ethernet interface will then synchronize to them.
17
CPU Local in GMT Time
SNTP Operation 137
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 7
GFK-2224AE Nov 2022
The PLC CPU obtains the timestamp data from the time clock in the Ethernet interface.
The CPU only uses this timestamp for Ethernet Global Data exchanges. The timestamp
from the Ethernet interface does not affect the time of the CPU's internal time clock.
CPU Ethernet
interface
CPU
time
clock
time
timestamp clock
EGD with
timestamp
The time clock in the Ethernet interface is synchronized to either the clock in the CPU or
an external SNTP server on the network. Selection of the timestamp source for Ethernet
Global Data is part of the basic configuration of the Ethernet interface, as explained in
Chapter 4.
CPU Ethernet
interface
CPU
time CPU Time
clock
time
timestamp clock
Figure 52: Obtaining Timestamps from the SNTP Server’s Time Clock
CPU Ethernet
interface
CPU
time SNTP Time
clock Server on
SNTP Time Network
time
timestamp clock
EGD with
timestamp
Synchronizing the CPU TOD clock to an SNTP server allows you to set a consistent time
across multiple systems. Once the CPU TOD clock is synchronized with the SNTP time on
an ETM, all produced EGD exchanges will use the CPU’s TOD for the time stamp. 18 The
CPU TOD clock is set with accuracy within ±2ms of the SNTP time stamp.
18
Embedded EDG produced exchanges will produce GMT time, not local CPU time.
SNTP Operation 140
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 7
GFK-2224AE Nov 2022
The PME software can be used to enable SNTP functionality. Under the ETM001-Kxxx’s
Settings tab, set the SNTP parameter to Enabled. This action will add the SNTP tab, which
will include the CPU TOD Clock parameter. Set the CPU TOD Clock parameter to Enabled.
Alternatively, Ethernet module ETM001-Jx can enable the CPU Time Sync feature by
defining the parameter ncpu_sync as 1 in an AUP file. For details on configuring an AUP
file, refer to Appendix A.
CPU Ethernet
interface
CPU
SNTP Time
time SNTP Time Server on
clock
timestamp Network
SNTP Time
time
clock
EGD with
timestamp
Within a PLC, only one Ethernet interface can be selected as the time master for CPU
time synchronization. If multiple Ethernet modules are configured for CPU time
synchronization, the PLC application logic should issue a Read Ethernet Clock Status and
Stratum COMMREQ (5001) to each configured module.
The application logic must examine the stratum number at each Ethernet module to
determine which Ethernet module to select. When the application has determined which
module to use as the time master, it must send an Enable PLC Time Update COMMREQ
(5002) to that module.
When the CPU TOD is used for EGD time stamps, it continues until a STOP transition
occurs. On a RUN to STOP transition, the CPU disables CPU TOD clock synchronization.
The PLC application logic must enable CPU TOD clock synchronization by sending an
Enable PLC Time Update COMMREQ (5002) on every STOP to RUN transition. For an
overview of this operating sequence, see page 142.
HWC Settings
HWC Settings
ENET config + AUP
- enable SNTP protocol
- CPU time sync feature
User Logic:
- Choose ENET to use
for CPU time sync
Process COMMREQ 5002
- Enable CPU Time
Update interrupt
via COMMREQ 5002 Update ENET TOD
Update time in shared memory
The table below specifies each interface’s ability to update its AUPs.
19
The ET001-Kxxx only supports the use of AUP files when configured as a ETM001-Jx (such as when used as a drop-in
replacement.)
SNTP Operation 143
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 7
GFK-2224AE Nov 2022
When Network Time Sync is set to SNTP, a new SNTP tab becomes available. The newly
available SNTP tab will allow the user to configure the following parameters:
(Only available in unicast mode.) If the primary server is down, the secondary address
Secondary Address
can be polled.
Poll Interval (Interval for unicast, in seconds, at which new time requests are sent to the
Poll Interval 20
server):
Low Limit =16, High Limit=1024, modulus 2
Poll Count (Number of retransmissions that will be sent when no timely response is
Poll Count
received from the server): Low Limit =1, High Limit=100
Poll Timeout (The time, in seconds, to wait for a response from the server): Low Limit =2,
Poll Timeout
High Limit=100
For more information on these SNTP parameters, please refer to Section 7 SNTP
Operation.
20
Poll Interval is only available when Unicast is selected.
SNTP Operation 144
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 7
GFK-2224AE Nov 2022
COMMREQ Parameters
Command Description
ENABLE Control logic for activating the COMMREQ Function Block.
The location of the Command Block. It can be any valid address within a word-
IN
oriented area of (%R, %AI, %AQ, %P, %L, or %W).
A hexadecimal word value that gives the rack (high byte) and slot (low byte)
location of the Ethernet interface. For the PACSystems CPU embedded
Ethernet interface, enter the rack/slot location of the CPU module.
Rack Slot Hex Word Value
SYSID
0 4 0004H
3 4 0304H
2 9 0209H
4 2 0402H
For the PACSystems Ethernet module, the Task must be set to 98 (62H).
TASK For the PACSystems CPU embedded Ethernet interface, Task must be set to
the value 65634 (10062H) to address the CPU’s Ethernet daughterboard.
The FT output is set if the PLC CPU (rather than the Ethernet interface) detects
FT OUTPUT that the COMMREQ fails. In this case, the other status indicators are not
updated for this COMMREQ.
CAUTION
Entering an incorrect TASK value may cause unexpected results.
Word 5 0 Always 0.
Word 6 0 Always 0.
An Ethernet interface can maintain timing information from up to four SNTP servers at a
time. Each server assigns a stratum number that determines its priority.
When locked to a network time server, the Ethernet clock stratum value indicates the
accuracy of the time value provided by the server. A stratum value of one indicates the
highest accuracy time; a value of 15 indicates the lowest accuracy. A stratum value of 255
indicates that the Ethernet clock is not locked to any timeserver. Before using this
stratum value, always check that the corresponding clock status indicates that the
Ethernet clock is locked to a network timeserver.
The Status word indicates whether the Ethernet clock is locked to a network timeserver.
Value Description
0 Ethernet interface is not configured for SNTP operation
1 Ethernet clock is currently locked to network timer server
2 Ethernet clock is not locked to network timer server
Note: Bit 5 in the LAN interface Status (LIS) block indicates whether the Ethernet
module is currently locked to an SNTP time server on the network. The logic application
can periodically examine this bit to determine when an Ethernet module has lost its lock
with a network time server. For details of the LIS block, refer to Section 12.7, Monitoring
the Ethernet Interface Status Bits.
Word 5 0 Always 0.
Word 6 0 Always 0.
Minor Major
Description
(Hex) (Hex)
00 01 Successful completion.
Internal error enabling CPU time synchronization. The CPU clock will
12 0C
not be synchronized to an SNTP server at this Ethernet interface.
CPU and/or ENET firmware version does not support the SNTP Time
10 0D
Transfer feature.
Attempted to disable CPU time sync that was not previously enabled
13 0D
at this Ethernet interface.
Daylight Savings
If a Day Light Savings Time (DST) offset is required, the parameter can also be enabled
from the Settings tab. After it is enabled, the new DST parameter will become available in
the Time.
The default SNTP operation features no correction for local time or DST. Local time and
DST corrections must be enabled using the instructions above. Alternatively, previous
versions of Ethernet modules can be configured using an AUP file. For local time
correction and DST parameters, refer to Configuring Advanced User Parameters.
/215/220/24
CPE205/210
ETM001-Jx
ETM001-
CPE302
CPE305
CPE310
CPE330
CPE400
CPL410
CPE100
CPE115
Kxxx
0
Simultaneous SRTP
32 32 32 48 48 48 16 16 32 48 48
Server Connections
SRTP Channels 16 16 16 32 32 32 16 16 16 32 32
Channel commands are based on the concept of periodic data transfers. The client (local)
PLC uses a single COMMREQ function to establish a channel (connection) to a server
(remote) PLC and to request that specific data be periodically transferred between the
PLCs.
The Ethernet interface automatically manages the establishment of communications and
the periodic data transfer. Parameters in the Command Block specify the frequency and
direction of the transfer, and the memory locations in the client and server to be used in
the transfer.
The Ethernet interface status bits occupy a single block of memory, which is specified
during the configuration of the Ethernet interface. The status bits include Channel Status
bits, which provide runtime status information for each communication channel. Each
channel has two status bits; the meaning of the channel status bits depends upon the
type of communication performed on that channel.
SRTP channels operation provides two Channels Status bits for each SRTP channel, a
Data Transfer bit and a Channel Error bit.
For details of the status bits and their operation, refer to Section 12.7, Monitoring the
Ethernet Interface Status Bits.
When configured for Redundant IP operation (see Section 1 for more information), only
the active unit establishes and maintains the SRTP Client connections used for the
Channel commands. The backup unit does not perform any SRTP Client operations. If
SRTP Client operation is attempted, a COMMREQ error status is returned to the local
logic program. When the Ethernet interface changes from active to backup state, it takes
down all SRTP Client connections and their underlying TCP connections.
Because it can take some time to take down a TCP connection, the Redundant system
should reserve a spare SRTP Client connection for each connection using the Redundant
IP address. That will prevent temporary resource problems when establishing new SRTP
Client connections to the new active unit while the previous connections to the old active
unit are being taken down.
The figure below shows how a Communications Request carries out a Channel
command, in this case, Establish Read Channel.
Client
Client PLC Ethernet Server PLC Server
PLC CPU Backplane Interface LAN Ethernet Interface Backplane CPU
1. The command starts when there is power flow to a COMMREQ function in the
client PLC. At this time, the Command Block data is sent from the PLC CPU to the
Ethernet interface.
2. For the Establish Read Channel command, the COMMREQ status word is
returned immediately if the Command Block is invalid. If the syntax is correct, the
COMMREQ status word is returned after the first significant event: upon failure
to establish a channel correctly and promptly or upon the first successful transfer
of data.
3. After the channel is successfully set up to the server PLC, the Ethernet interface
performs the periodic reads as specified in the Command Block.
SYSID A hexadecimal word value that gives the rack (high byte) and slot (low byte)
location of the Ethernet interface. For the PACSystems CPU embedded Ethernet
interface, enter the rack/slot location of the CPU module.
The adapter name (module position) can be pointed by the hex word value in
the table below:
Rack Slot Hex Word Value
0 0 0000H CPE400/CPL410
and CPE100/CPE115)
0 4 0004H
3 4 0304H
2 9 0209H
4 2 0402H
TASK For the PACSystems Ethernet module, the Task must be set to zero.
For the PACSystems CPU embedded Ethernet interface, Task must be set to the
value 65536 (10000H)
FT OUTPUT The FT output is set if the PLC CPU (rather than the Ethernet interface) detects
that the COMMREQ fails. In this case, the other status indicators are not
updated for this COMMREQ.
When the COMMREQ function is initiated, the Command Block is sent from the PLC CPU
to the Ethernet interface. The Command Block contains the details of a Channel
command to be performed by the interface.
▪ The address in CPU memory of the Command Block is specified by the IN input of
the COMMREQ Function Block.
▪ The address can be any valid address within a word-oriented area of memory (%R,
%AI, %AQ, %P, %L, or %W).
▪ The Command Block is set up using an appropriate programming instruction, such
as a BLOCK MOVE or DATA_INIT_COMM). The Command Block has the following
structure:
Word Offset Description
Word 1 Data Block Length (words)
Word 2 WAIT/NOWAIT Flag
Word 3 COMMREQ status word Memory Type
Word 4 COMMREQ status word Address Offset
Word 5 Reserved
Word 6 Reserved
Words 7 and up Data Block (Channel Command Details)
(Word 2) WAIT/NOWAIT Flag: Must be set to zero for TCP/IP Ethernet Communications.
COMMREQ Status Word: The Ethernet interface updates the COMMREQ status word to show success or failure of the
command. Command words 3 and 4 specify the PLC memory location of the COMMREQ status word. For more
information, refer to COMMREQ Status Word Memory Type in this section.
(Word 3) COMMREQ Status Word Memory Type: This word specifies the memory type for the COMMREQ status word.
(Word 4) COMMREQ Status Word Address Offset: This word contains the offset within the memory type selected. The
status word address offset is a zero-based number. For example, if you want %R1 as the location of the COMMREQ status
word, you must specify a zero for the offset. The offset for %R100 would be 99 decimal. Note, however, that this is the
only zero-based field in the Channel commands. (When using %W memory, the maximum offset value that can be
entered is 65535, signifying %W65536.)
(Words 7 and up) Data Block: The Data Block defines the Channel command to be performed.
The Establish Read Channel command requests that a channel be associated with a
remote PLC and that data from the remote PLC be transferred (periodically) to the local
PLC. The Command Block specifies the period, the number of reads from the remote PLC
to perform, and the timeout allowed in waiting for each transfer to complete. The first
read is performed immediately, regardless of the period specified.
Value Meaning
1 hundredths of seconds (10ms)
2 tenths of seconds (100ms)
3 seconds
4 minutes
5 hours
(Word 11) Number of Time Units for Read Period: Word 11 specifies the number of time units for the read period. The
read period is in effect even when the Channel command is setup to issue a single read.
Example Read Period Calculation: If Word 10 contains a value of 3 specifying seconds as the time unit and Word 11
contains a value of 20, then the read period is 20 seconds.
A Channel command set up to issue a single read can have only one pending read transfer. A read will normally be issued at
the start of each read period. If the pending read transfer has not completed during the read period, the Channel Error
bit and Detailed Channel Status words will be set to indicate a non-fatal period error. If the period error occurs on the
first transfer, the COMMREQ Status will also indicate a non-fatal period error. If the Number of Time Units is zero, a
subsequent transfer will be issued as soon as the previous transfer completes. In this case, no period errors can occur.
(Word 12) Timeout for Each Read: Word 12 specifies the time (in hundredths of a second) the Ethernet interface will
wait for a read transfer to complete before setting the Channel Error bit and Detailed Channel Status words to indicate a
non-fatal timeout error. If the timeout error occurs on the first transfer, the COMMREQ Status will also indicate a non-
fatal timeout error.
For most applications, a timeout is not needed because the read period acts as a timeout. (Word 12 should be zero for
no timeout). However, there are two circumstances in which specifying a timeout is recommended:
When the number of time units (Word 11) is zero, so that a subsequent transfer will be issued as soon as the previous
transfer completes and no period errors are reported. In this case, a timeout value can be specified so that the Channel
Error bit will report timeout errors.
When the read period is very long (minutes or hours). In this case, a shorter timeout value can be specified so the
application doesn’t have to wait for the read period to expire before acting.
(Word 13) Local PLC - Memory Type: Words 13–14 specify the location in the local PLC where the Ethernet interface will
store data received from the remote PLC. Please see the table in the following section. The amount of data to be
transferred is specified by the number of memory units of the data read from the remote PLC (Word 17). For more
information, refer to Read Channel Memory Types Available in this section.
(Word 14) Local PLC - Memory Starting Address: Word 14 determines the starting address in the local PLC in which
the data from the remote PLC is to be stored. The value entered is the offset (1-based) from the beginning of PLC
memory for the memory type and mode specified in Word 13. This offset will be either in bits, bytes, or words
depending on the mode specified (for example, if Word 13=16 and Word 14=2, then the starting address will be %I9).
Valid ranges of values depend on the PLC’s memory ranges. The user is responsible for assuring that this area is large
enough to contain the requested data without overwriting other application data.
(Word 15) Remote PLC - Memory Type: Words 15–16 specify the memory type and starting address in the remote PLC
from which the data is to be read. Valid values for Word 15 are listed above. If %P memory is used, you must specify a
Program name in Words 24–27. If %L memory is used, you must specify a Program name in Words 24 –27 and a
Program Block name in Words 28–31.
(Word 16) Remote PLC - Memory Starting Address: Word 16 determines the starting address in the remote PLC from
which the data is to be read. The value entered is the offset (1-based) from the beginning of PLC memory for the
memory type and mode specified in Word 15. This offset will be either in bits, bytes, or words depending on the mode
specified (for example, if Word 15=16 and Word 16=9, then the starting address will be %I65). Valid ranges of values
depend on the remote PLC’s memory ranges.
(Word 17) Remote PLC - Number of Memory Units: Word 17 specifies the amount of data to be transferred. The value
entered is the number of memory units to be transferred, where the size of a memory unit is a bit, byte, or word as
specified in Word 15. For example, if Word 15=16 and Word 17=4, then 4 bytes (32 bits) of %I memory will be
transferred. A maximum of 16384bits, 2048bytes, or 1024words of data can be specified. Note: The offset needs to be
byte aligned to transfer all 16384 bits. (This will require padding if not byte aligned and will be unable to transfer all
16384 bits.)
(Word 18) Remote PLC - Network Address Type: Word 18 specifies the format of the remote PLC address. Word 18
must contain the value 1. This indicates a dotted-decimal IP address expressed using a separate register for each
decimal digit.
(Word 19) Remote PLC - Network Address Length: Word 19 specifies the length in words of the remote PLC IP
address. Word 19 must contain 4.
(Words 20–23) Remote PLC - IP Address: Words 20–23 specify the four integers, one integer per word, of the dotted-
decimal IP address of the remote PLC to be accessed.
(Words 24–27) Remote PLC - Program Name: Words 24–27 specify the case-sensitive, zero-terminated and padded
program name (also called task name, which can be found through the PROG Station Manager command on the server
Ethernet interface) to be used with access to remote %P or %L memory. These words are required only for access to
such memory and will be ignored if the Memory Type field is not %P or %L. See Note below.
(Words 28–31) Remote PLC - Program Block Name: Words 28–31 specify the case-sensitive, zero-terminated and
padded program block name (which can be found in the program block declaration in the server ladder program) to be
used with access to remote %L memory. These words are required only for access to such memory and will be ignored
if the Memory Type field is not %P or %L.
Note: The Program Name (Words 24–27) and Program Block Name (Words 28–31) must
have each pair of ASCII characters reversed within the PLC memory. For example, the
name “MARY” (“M” = 4DH, “A” = 41H, “R” = 52H, “Y” = 59H) would have 414DH in the first
word and 5952H in the second word.
21
Can only be accessed in the Remote PLC
22
%W memory is supported by PACSystems clients and servers only.
23
Read-only memory, cannot be written to.
(Word 8) Channel Number: Word 8 specifies the channel to be used for the write. This value must be in the range of 1–32. If
the channel number is out of range, a command error indication will be placed in the COMMREQ Status word. If the channel
number is the same as a channel already in use, the channel will be re-tasked to perform this new command.
(Word 9) Number of Write Repetitions: Word 9 specifies the number of writes to be performed before automatically
completing the communications request and closing the channel. If this value is set to 1, only a single write will be issued. If
this value is set to 0, writes will be issued on the requested period until the channel is aborted.
(Word 10) Time Units for Write Period: Words 10–11 together define how often the write is to be performed (write period).
Word 10 specifies the time unit such as seconds or minutes for the write period. Word 11 specifies the number of those units.
The choices for the time units are:
Value Meaning
1 hundredths of seconds (10ms)
2 tenths of seconds (100ms)
3 Seconds
4 minutes
5 hours
Word 14 00050 (0032) Local PLC - Starting address from which to write data (%R50)
Word 15 00008 Remote PLC - Memory type at which to store data (%R)
(Word 11) Number of Time Units for Write Period: Word 11 specifies the number of time units for the write period. The
write period is in effect even when the Channel command is setup to issue a single write.
Example Write Period Calculation: If Word 10 contains a value of 3 specifying seconds as the time unit and Word 11
contains a value of 20, then the write period is 20 seconds.
A Channel command set up to issue a single write can have only one pending write transfer. A write will normally be issued at the
start of each write period. If the pending write transfer has not completed during the write period, the Channel Error bit and
Detailed Channel Status words will be set to indicate a non-fatal period error. If the period error occurs on the first transfer,
the COMMREQ Status will also indicate a non-fatal period error.
If the Number of Time Units is zero, a subsequent transfer will be issued as soon as the previous transfer completes. In this
case, no period errors are reported by the Channel Error bit.
(Word 12) Timeout for Each Write: Word 12 specifies the time (in hundredths of a second) the Ethernet interface will wait for
a write transfer to complete before setting the Channel Error bit and Detailed Channel Status bits to indicate a non-fatal
timeout error. If the timeout error occurs on the first transfer, the COMMREQ Status (will also indicate a non-fatal timeout
error.
For most applications, a timeout is not needed because the write period acts as a timeout. (Word 12 should be zero for no
timeout.) However, there are two special circumstances in which specifying a timeout is recommended:
When the number of time units (Word 11) is zero, so that a subsequent transfer will be issued as soon as the previous
transfer completes and no period errors are reported. In this case, a timeout value can be specified so that the Channel Error
bit will report timeout errors.
When the write period is very long (minutes or hours). In this case, a shorter timeout value can be specified so the application
doesn’t have to wait for the write period to expire before taking action.
(Word 13) Local PLC - Memory Type: Words 13–14 specify the location in the local PLC where the Ethernet interface will get
the data to be written to the remote PLC. Valid values for Word 13 are listed in the description of Establish Read Channel. The
amount of data to be transferred is specified by the number of memory units of the data written to the remote PLC (Word 17).
(Word 14) Local PLC - Memory Starting Address: Word 14 determines the starting address in the local PLC from which the
data is to be written. The value entered is the offset (1-based) from the beginning of PLC memory for the memory type and
mode specified in Word 13. This offset will be in bits, bytes, or words depending on the mode specified (for example, if Word
13=16 and Word 14=2, then the starting address will be %I9). Valid ranges of values depend on the PLC’s memory ranges.
(Word 15) Remote PLC - Memory Type: Words 15–16 specify the memory type and starting address in the remote PLC
where the data is to be written. Valid values for Word 15 are listed under Establish Read Channel. If %P memory is used, you
must specify a Program name in Words 24–27. If %L memory is used, you must specify a Program name in Words 24–27 and
a Program Block name in Words 28–31.
The Send Information Report COMMREQ requests that a particular block of memory
within the PLC CPU reference tables be transferred periodically from a third-party
Ethernet interface to a host application SRTP server. Currently, PACS Ethernet devices do
not support this server capability. The Command Block specifies the repetition period,
the number of transfers to the server to perform, and the timeout allowed in waiting for
each transfer to complete. The first send is performed immediately, regardless of the
period specified.
Example Send Period Calculation: If Word 10 contains a value of 3 specifying seconds as the time unit and Word 11
contains a value of 20, the send period is 20 seconds.
A send is normally issued at the start of each send period. If the pending transfer has not completed during the send
period, the Channel Error bit and Detailed Channel Status words are set to indicate a non-fatal period error. The pending
transfer can still complete after the period error occurs. For Channel commands set up to issue multiple sends, the next
transfer is issued only after the pending transfer completes.
If the Number of Time Units is zero, a subsequent transfer is issued as soon as the previous transfer completes. In this
case, no period errors are reported by the Channel Error bit.
(Word 12) Timeout for Each Send: Word 12 specifies the time (in hundredths of a second) the Ethernet interface will
wait for a send transfer to complete before setting the Channel Error bit and Detailed Channel Status bits to indicate a
non-fatal timeout error. The transfer can still complete even after a timeout occurs. As a result, an application can choose
what to do if one occurs. If the timeout value is specified as zero, no timeout errors will be reported.
For most applications, a timeout is not needed because the send period acts as a timeout. (Word 12 should be zero for
no timeout.) However, there are two circumstances where a timeout is recommended:
• If number of time units (Word 11) is zero, so that a subsequent transfer is issued as soon as the previous transfer
completes and no period errors are reported. In this case, a timeout value can be specified so that the Channel Error
bit will report timeout errors.
• If the send period is very long (minutes or hours). In this case, a shorter timeout value can be specified so the
application doesn’t have to wait for the send period to expire before acting.
(Word 13) Local PLC - Memory Type: Words 13–14 specify the location in the local PLC where the Ethernet interface will
get the data to be written to the remote SRTP server. Valid values for Word 13 are listed for Establish Read Channel.
(Word 14) Local PLC - Memory Starting Address: Word 14 determines the starting address in the local PLC from which
the data is to be sent. The value entered is the offset (1-based) from the beginning of PLC memory for the memory type
and mode specified in Word 13. This offset can be in bits, bytes, or words depending on the mode specified (for example,
if Word 13=16 and Word 14=2, the starting address will be %I9). Valid ranges of values depend on the PLC’s memory
ranges.
(Word 16) Reserved: Word 16 is reserved and should contain the value zero.
(Word 17) Reserved: Word 17 is reserved and should contain the value zero.
(Word 18) Remote Host - Network Address Type: Word 18 specifies the format of the remote host’s
address. Word 18 must contain the value 1, which indicates a dotted-decimal IP address expressed using a
separate register for each decimal digit.
(Word 19) Remote Host - Network Address Length: Word 19 specifies the length in words of the remote
host’s IP address. Word 19 must contain 4.
(Words 20–23) Remote Host - IP Address: Words 20–23 specify the four integers, one integer per word, of
the dotted-decimal IP address of the remote host to be accessed.
The Abort Channel command immediately disconnects an active channel from its remote
PLC and closes the channel. The Channel Transfer bit, the Channel Error bit, and the
Detailed Channel Status words for the channel are set to zero.
Note: For the Abort Channel and Retrieve Detailed Channel Status commands, no actual
data is transmitted on the network. Communication occurs between the client PLC CPU
and the local Ethernet interface only. For these commands, the actual function is
performed locally within the Ethernet interface and then the COMMREQ Status word is
sent immediately to the CPU.
(Word 8) Channel Number: Specifies the channel (1 – 32) whose status is to be read.
(Word 9) Local PLC - Memory Type: Words 9 and 10 specify the starting point in the client CPU memory where the
Detailed Channel Status words are to be written. The length of the transfer is always 2 words.
(Word 10) Local PLC - Memory Starting Address: Determines the starting address to store the Detailed Channel Status
data. The value entered is the offset (1-based) from the beginning of PLC memory for the memory type and mode
specified in Word 9. This offset is in bits, bytes, or words depending on the mode specified (for example, if Word 9=16 and
Word 10=2, then the starting address will be %I9). Valid ranges of values depend on the PLC’s memory ranges. Make sure
this area can contain the 2 words of data without overwriting other application data.
Note: For the Abort Channel and Retrieve Detailed Channel Status commands, no actual
data is transmitted on the network. Communication occurs between the client CPU and
the local Ethernet interface only. For these commands, known as “local” commands, the
function is performed locally within the Ethernet interface and then the COMMREQ
Status word is sent immediately to the CPU.
In the sample logic that follows, the input values for the Block Move Functions are taken
from the command Example Command Block in this chapter.
Nicknames are used in this example to make the ladder program easier to follow.
LANIFOK is bit 16 of the LAN interface Status bits. All other nicknames can be assigned as
needed.
Rung # 1: Input LANIFOK (bit 16 of the LAN interface Status bits) monitors the health of
the Ethernet interface. If it is OK to send a COMMREQ, the LAN_OK coil is ON. LAN_OK is
used as an interlock for Rungs 3–6.
Rung # 2: Input BEGREAD triggers READREQ, which enables execution of the MOVE and
COMMREQ functions. READREQ is a one-shot (Positive Transition) coil, activating once
when BEGREAD transitions from OFF to ON.
Rung # 3: The MOVE WORD function moves a zero to the COMMREQ status word
referenced in the Command Block (see rung #4). This clears the COMMREQ status word.
This rung also resets the FT output coil of the COMMREQ Function Block in rung #6.
It is vital that the COMMREQ status word be cleared and the COMMREQ fault output coil
be cleared each time before initiating a COMMREQ function.
Rungs # 4–5: The BLKMV INT functions to set up the COMMREQ Command Block
contents. When these rungs are activated, the constant operands are moved into the
memory beginning at the address indicated in the instruction. The constant operands in
this example are defined in the Establish Read Channel Example in this chapter.
Rung # 6: The COMMREQ Function Block.
▪ The IN field points to the starting location of the Command Block parameters
(%R00301 in this example).
▪ The SYSID field of the COMMREQ function block defines the rack and slot of the
Ethernet interface to receive the command data. This is a hexadecimal word value
that gives the rack (high byte) and slot (low byte) location of the Ethernet interface
module. In the example ladder diagram shown, the first three number places (from
left to right) are zeroes and are not displayed; only the last number, 4, appears.
This indicates rack 0, slot 4.
▪ The TASK field of the COMMREQ function block indicates which mailbox task ID to
use for the specified rack and slot. For a PACSystems RX3i Ethernet module, the
Task must be set to 0. For a PACSystems CPU embedded Ethernet interface, the
Task must be set to 65536 (10000H).
▪ The FT output (energizes the FAULT coil in this example) is turned ON (set to 1) if
problems were preventing the delivery of the Command Block to the Ethernet
interface. In this case, the other status indicators are not updated for this
COMMREQ
If the Ethernet interface receives Command Blocks from the PLC CPU faster than the
interface can process them, the interface will log an exception event 08, Entry 2=0024H
and will log the PLC Fault Table entry:
“Backplane Communications with PLC Fault; Lost Request”
Only one COMMREQ function per channel can be pending at one time. A COMMREQ
function is pending from the time it is initiated in the ladder program until its COMMREQ
status word has been updated to a non-zero value by the Ethernet interface.
If the PLC CPU attempts to send COMMREQs to the Ethernet interface faster than the
Ethernet interface can receive them, the FT output of the COMMREQ function block will
be set and the CPU will generate the following entry in the PLC Fault Table:
“Mailbox queue full – COMMREQ aborted”
The PLC logic program should send retry the COMMREQ after a short delay.
When you issue a COMMREQ to establish a read or write channel, a TCP connection is
created, the transfer(s) are made, then upon completion of all the transfers, the TCP
connection is terminated. It takes time to create and to terminate these connections. If
an application is constructed so that it rapidly and repeatedly establishes a channel with
only one repetition (one transfer), the available TCP connections for the Ethernet
interface may be totally consumed. A “snapshot” of the state of the TCP connections
would show some of them being created, some being terminated, and some active, but
none available.
CAUTION
In Certain Conditions TCP Connections Can Be Totally Consumed
If the logic for issuing COMMREQs is constructed so it does the following, all available
TCP connections can quickly be used up:
▪ The number of repetitions (Word 9 in an Establish Read or Write Channel
COMMREQ) is set to 1, and
▪ A new COMMREQ is issued repeatedly and immediately upon completion of the
prior one.
TCP connections can be used up if each successive COMMREQ is directed to the same
target device (same IP address). In this case, it is better to establish a channel with the
target device once, leave it active, then re-task the channel, even if data transfers take
place infrequently. This method will use only one TCP connection.
An additional advantage of re-tasking is that the time and network traffic required to
create a channel and its associated TCP connection are not incurred each time a data
transfer is required.
The disadvantages of re-tasking are:
▪ While the TCP connection is open, it is unavailable to the rest of your application,
and
▪ The active TCP connection uses up network bandwidth because the active TCP
connection generates a small amount of ongoing periodic network traffic.
There is a period of time that the OS Network stack hangs on to the TCP resources
associated with a connection after it is closed. It applies to the initiator of the close,
which is almost always the client-side. This time is referred to as the “TCP Linger Period”.
Once the TCP Linger Period expires (60 seconds in the current OS implementation), the
TCP resources are released. Application developers using client channels need to be
aware of this behavior when designing their logic. There are a finite number of TCP
resources allocated to client channels, and if channel connections are brought up and
down so fast that these resources are depleted, then the application may have to wait
until a TCP resource frees up to establish another client channel (a COMMREQ Status of
0xA890 is returned if no TCP resources are currently available; the application should
wait and retry again).
SRTP Client Channels provide features that help the user preserve TCP connections.
These include a period time where one can establish an SRTP Channel and specify the
channel to run at a given interval, or run as fast as possible. One can also specify the
number of iterations, or run forever. Additionally, SRTP Channels allow channel re-
tasking of an active channel to the same remote device, where the parameters of an
active channel, such as changing the channel command type (Read/Write), number of
repetitions, periods, local memory address, remote memory address, etc. can be
changed. SRTP Channels also allows channel re-tasking of an active channel to a
different remote device (changing the remote device’s IP address, etc.). However, re-
tasking to a different remote device will neither conserve TCP connections nor save on
the time it takes to create a channel.
The application timeouts within SRTP Channels also include the time needed to establish
and maintain the underlying network and SRTP connection. Examples are establishing
the TCP connection for a new channel, establishing communication with the remote
device, and TCP retransmissions during Channel operations. If the time needed for TCP
connection establishment or maintenance exceeds the user-specified channel
application timeout values, an application timeout will occur. Channel application
timeouts are temporary errors; the channel continues to run when the expected
response is received.
If the application is seeing timeouts during channel startup, there are a few different
options:
1. Increase timeout value to account for Channel connection overhead
2. Ignore the timeout error on the first transfer
3. Use a two-step setup approach where the first COMMREQ has a timeout large
enough to account for the connection overhead and then Re-Task the channel to
the normal operating timeouts.
It is critical to monitor the COMMREQ status word for each COMMREQ function. Zero the
associated COMMREQ status word before executing the COMMREQ function. When the
COMMREQ status word becomes non-zero, the Ethernet interface has updated it.
If after executing a COMMREQ function, the COMMREQ status word is zero (0) and the FT
Output is OFF, the Command Block has been sent to the Ethernet interface, but no status
has been returned. If this condition persists, check the PLC Fault Table for information.
If the COMMREQ status word is updated to 1, the Command Block was processed
successfully by the Ethernet interface.
If the COMMREQ status word is updated to a value other than 1, an error has occurred in
processing the Command Block. The cause may be:
▪ Errors in the Command Block (the Channel command code or parameters), or
▪ For an establish command (Establish Read Channel, Establish Write Channel, or
Send Information Report), the command parameters were valid but there was an
error in establishing a channel
Section 12 lists the Major and Minor error codes that may be returned in the COMMREQ
status words. Do not use data received from a server until the COMMREQ status word for
that channel is 1 or the Data Transfer bit goes to 1.
PACSystems
TCP Connection Timeout - Default 75 Seconds.
- Override with AUP setting: “SRTP Channel TCP
Connect Timeout”
- (Minimum value 10 ms)
TCP Linger Period 60 Seconds
SRTP Channel - Run-to-Stop transition causes an Abrupt Shutdown
Implementation - Avoid Linger Period and reduces the change of
exhausting TCP resources when transitioning
between Run->Stop and Stop->Run.
Abort/Abort All Channel If COMMREQ Status Word is not updated before the
COMMREQ Issuance A/AA COMMREQ command is issued, Status Word is
set to failure value (A990) to indicate “discard while
aborting in progress.”
COMMREQ Status Codes New COMMREQ Status Codes Defined
Re-tasking Implementation support re-tasking to a different
remote device (different IP address)
Total Number of TCP - 48 Max Server TCP Connection
Connections Shared - 32 Max Client Channel TCP Connections
The values in the following table specify the maximum number of simultaneous
Modbus/TCP Server connections. These connections are not shared with any other
applications. Other TCP-based application protocols such as SRTP Server use a different
set of TCP connections.
Model Comparisons
CPE205/210/215
ETM001-Kxxx
ETM001-Jx
/220/240
CPE302
CPE305
CPE310
CPE330
CPE400
CPL410
CPE100
CPE115
Simultaneous
Modbus/TCP
16 16 16 16 16 16 8 8 16 16 16
Server
Connections
The Modbus/TCP Server supports the standard Station Manager commands: STAT and
TALLY. The Modbus/TCP Server task letter is “o”.
Modbus File Modbus Holding Modbus Input Modbus Input Modbus Coil PACSystems
Access Register Table Register Table Discrete Table Table Reference
(6xxxx) (4xxxx) (3xxxx) (1xxxx) (0xxxx) Tables
--- --- --- 1 – 32768 --- %I1 – 32768
(bits) 24
(bits)
--- --- 1 – 32640 --- --- %AI1 – 32640
(16-bit words) (16-bit words)
--- --- --- --- 1 – 32768 %Q1 – 32768
(bits) 25
(bits)
--- 1 – 32640 --- --- --- %R1 – 32640
(16-bit words) (16-bit words)
F1,R1 – --- --- --- --- %W1 –5,242,880
F525,R2880 (16-bit words)
(16-bit words)
Applicable Functions
▪ Read File Record
▪ Write File Record
24
CPE100/115 supports 1-2048 Modbus input discrete bits.
25
CPE100/115 supports 1-2048 Modbus coil bits.
Modbus/TCP Server 180
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 9
GFK-2224AE Nov 2022
%𝑊 = 10,000 (𝐹 − 1) + 𝑅
To find the Modbus File and Record equivalent of a PACSystems %W memory address:
Figure 62: Calculations for Modbus File and Record %W Memory Address
𝑊−1
𝐹𝑖𝑙𝑒 = ( )+1
10,000
Discard any fractional portion; round the result down to the next integer value.
CAUTION
If you use the Modbus function Write File Record and specify multiple record sections, the first N-1
sections will be written to the server’s PLC reference memory, even if an error prevents the writing
of the last section.
Applicable Functions
▪ Read Multiple Registers
▪ Write Multiple Registers
▪ Write Single Register
▪ Mask Write Register
▪ Read/Write Multiple Registers
Applicable Functions
▪ Read Input Registers
Applicable Functions
▪ Read Input Discretes
Applicable Functions
▪ Read Coils
▪ Write Coils
▪ Write Single Coil
▪ Address mapping is done in the PME Hardware Configuration of the CPU. All
Ethernet modules and daughter-boards in the PLC use Modbus-to-PLC address
mapping based on this one map. The Modbus/TCP Server does not use
COMMREQs to configure address mapping.
▪ Each PLC memory area is mapped to an appropriate Modbus address space. On
the Settings tab, Modbus Address Space Mapping can be set to Standard Modbus
Addressing or Disabled. If Modbus Address Space Mapping is set to Standard, the
Modbus/TCP Address Map tab displays the standard reference assignments.
Modbus PLC
Modbus Function Code Table Start Length Start Length
Address Address
1 Read Coils
%Q0000
5 Write Single Coil 0xxxx 1 32768 32768
1
15 Write Multiple Coils
2 Read Discrete Inputs 1xxxx 1 32768 %I00001 32768
3 Read Holding
6 Registers
16 Write Single Register
22 Write Multiple
4xxxx 1 1024 %R00001 1024
23 Registers
Mask Write Register
Read/Write Multiple
Registers
4 Read Input Registers %AI0000
3xxxx 1 64 64
1
7 Read Exception Status
N/A N/A N/A N/A N/A
8 Diagnostics
20 Read File Record %W0000
6yxxxx 1 0 0
21 Write File Record 1
Model Comparison
CPE205/210/21
ETM001-Kxxx
ETM001-Jx
5/220/240
CPE302
CPE305
CPE310
CPE330
CPE400
CPL410
CPE100
CPE115
Clients
permitted
(SRTP Client
16 16 16 32 32 32 8 8 16 32 32
or
Modbus/TC
P Client)
STATUS BITS
DETAILS
OF THE
CHANNEL LAN INTERFACE STATUS
COMMAND AND CHANNEL STATUS
BITS
The COMMREQ Function Block is the ladder instruction that triggers the execution of the
Channel command. In the COMMREQ Function Block, you specify the rack and slot
location of the Ethernet interface, a task value, and the address of a location in memory
that contains the Command Block. There is also a fault output on the COMMREQ
Function Block that indicates certain programming errors.
The COMMREQ Command Block is a structure that contains information about the
Channel command to be executed. The Command Block consists of two parts:
Common Area - includes the address of the COMMREQ Status word (CRS word).
Data Block Area - describes the Channel command to be executed.
When the COMMREQ function is initiated, the Command Block is transferred to the
Ethernet interface for action.
Modbus/TCP Client 186
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 10
GFK-2224AE Nov 2022
The Channel commands are a set of client commands used to communicate with a
server. Up to 32 channels can be established. The channel number is specified in the
Command Block for the Channel command. The channel can be monitored using the
Channel Status bits. The 32 Client connections of an Ethernet interface are shared
between all Client protocols. For example, if 16 Client connections are used for SRTP
Channels, there are 16 Client connections available for Modbus/TCP Channels. Any given
channel can be assigned to only one protocol at a time.
There are several types of status available to the client application program.
LAN Interface Status Bits (LIS Bits): The LIS bits comprise bits 1–16 of the 80-bit status
area. The location of this 80-bit status area is assigned using the configuration software.
The LIS bits contain information on the status of the Local Area Network (LAN) and the
Ethernet interface.
Channel Status Bits: The Channel Status bits comprise bits 17–80 (64 bits) of the 80-bit
status area. When used for Modbus/TCP channels, these bits consist of a connection open
bit and an unused bit, reserved for future use, for each of the 16 channels that can be
established. Status bits for unused channels are always set to zero.
COMMREQ Status Word (CRS Word): The 16-bit CRS word will receive the initial status of
the communication request. The location of the CRS word is assigned for each
COMMREQ function in the COMMREQ Command Block.
FT Output of the COMMREQ Function Block: This output indicates that the PLC CPU
detected errors in the COMMREQ Function Block and/or Command Block and did not
pass the Command Block to the Ethernet interface.
Figure 64 shows how Communications Requests are executed to complete a data read
from the remote Modbus/TCP device. The figure specifically illustrates the successful
operation of a data read.
Client Client
PACSystems PLC Ethernet Server Server Server
RX3i CPU Backplan Interface LAN Ethernet Interface Interface CPU
e
Send connection
Return COMMREQ
acknowlegement
Status (CRS) Word
COMMREQ to CPU
Status Word
Set Channel Open Bit
Channel Open Bit is
set to 1
Each of the inputs and outputs is discussed in detail below. It is important to understand
that the Command Block address points to the location in memory you have set up as
the Command Block.
Enable: Control logic for activating the COMMREQ Function Block. See Section 5 for tips
on developing your program.
IN: The location of the Command Block. It can be any valid address within a word-
oriented area of memory (%R, %AI, %AQ, %P, %L, or %W for the Ethernet interface).
SYSID: A hexadecimal word value that gives the rack (high byte) and slot (low byte)
location of the Ethernet interface. For the PACSystems embedded Ethernet interface,
enter the rack/slot location of the module.
Rack Slot Hex Word Value Notes
0 0 16#0000 RXi, CPE400/CPL410 and CPE100/CPE115
0 1 16#0001
0 4 16#0004
3 4 16#0304
2 10 16#020A
4 2 16#0402
TASK: For the RX3i ETM001-Jx and ETM001-Kxxx Ethernet interfaces TASK must always be
set to zero. For PACSystems CPU embedded Ethernet interface, TASK must be set to
65536 (0x10000) to address the CPU’s Ethernet embedded ethernet interfaces.
FT Output: The FT output is set if the PLC CPU (rather than the Ethernet interface)
detects that the COMMREQ fails. In this case, the other status indicators are not updated
for this COMMREQ.
When the COMMREQ function is initiated, the Command Block is sent from the PLC CPU to the
Ethernet interface. The Command Block contains the details of a command to be performed
by the interface.
The address in CPU memory of the Command Block is specified by the IN input of the
COMMREQ Function Block. This address can be any valid address within a word-oriented
area of memory. The Command Block is usually set up using either the BLOCK MOVE or
the DATA INIT COMM programming instruction. The Command Block has the following
structure:
Value Value
Type Description
(Decimal) (Hex.)
%R 8 08H Register memory (word mode)
%AI 10 0AH Analog input memory (word mode)
%AQ 12 0CH Analog output memory (word mode)
16 10H Discrete input memory (byte mode)
%I
70 46H Discrete input memory (bit mode)
18 12H Discrete output memory (byte mode)
%Q
72 48H Discrete output memory (bit mode)
20 14H Discrete temporary memory (byte mode)
%T
74 4AH Discrete temporary memory (bit mode)
Discrete momentary internal memory
22 16H (byte mode)
%M
76 4CH Discrete momentary internal memory
(bit mode)
56 38H Discrete global data table (byte mode)
%G
86 56H Discrete global data table (bit mode)
Word memory (word mode limited to
%W 196 C4H
%W1 - %W65536)
Please note that Modbus/TCP channel COMMREQs (unlike SRTP channel COMMREQs) do
not contain a parameter to configure a timeout value. Enforcing a timeout for a Modbus
channel command is at the discretion of the user and must be implemented in the user
application.
(Word 7) Channel Command Number: Word 7 is the command id for an Open Modbus/TCP Client Connection
COMMREQ. If successful a TCP connection with the specified device is allocated.
(Word 8) Channel Number: Word 8 specifies the channel number to allocate for the Modbus/TCP Client connection.
Channels 1-32 can be used for Client communications.
(Word 9) Address Type: Word 9 specifies the type of IP Address specified for the remote device. A value of one (1) is
required in this word.
(Word 10) Length of IP Address: Word 10 specifies the length of the IP Address. A value of four (4) is required in this
word.
(Word 11) IP Address 1st Octet: Word 11 specifies the value of the first octet of the IP Address.
(Word 12) IP Address 2nd Octet: Word 12 specifies the value of the second octet of the IP Address.
(Word 13) IP Address 3rd Octet: Word 13 specifies the value of the third octet of the IP Address.
(Word 14) IP Address 4th Octet: Word 14 specifies the value of the fourth octet of the IP Address.
The application program closes a Modbus/TCP Client Connection by issuing the Close
Modbus/TCP Client Connection COMMREQ. The Close COMMREQ closes the underlying
TCP connection and frees the channel for other communication tasks.
An error response is returned if the channel number in the COMMREQ identifies a non-
Modbus/TCP Client connection or an inactive channel.
(Word 7) Channel Command Number: Word 7 requests the Close channel service.
(Word 8) Channel Command Number: Word 8 identifies a channel previously opened with an Open Modbus/TCP
Client Connection request. If a Close Modbus/TCP Client Connection is sent to a channel that is already closed, a
success CRS value of 1 will be returned.
The Read Data from a Modbus/TCP Device COMMREQ requests a data transfer from a
Modbus/TCP device to the PLC. The Read Data COMMREQ must reference an active
Modbus/TCP channel previously established with the Open Modbus/TCP Client
Connection COMMREQ.
Registers, Coils, or Exception Status data may be read from the remote Modbus/TCP
device. The Modbus Function Code specifies the data type. Valid Function Codes for the
Read Data COMMREQ are presented in the following table.
Functi
Modbus Server Memory Region Data Unit Maximum
on Description
Accessed Size Data Units
Code
1 Read Coils Internal Bits or Physical coils Bit 2000
2 Read Input Physical Discrete Inputs Bit 2000
Discretes
3 Read Multiple Internal Registers or Physical Output Register 125
Registers Registers (16-bit
Word)
4 Read Input Physical Input Registers Register 125
Registers (16-bit
Word)
7 Read Exception Server Exception Memory Byte Not
Status Applicable
24 Read FIFO Internal Registers or Physical Output Register 32
Queue Registers (16-bit
Word)
The table above describes the general Modbus server memory areas. The actual memory
accessed is dependent on how the server maps the Modbus memory regions to the
server’s local memory.
An Address and Length specify the location of the data in the remote device and the
number of data units to transfer. The Length is the number of Registers or Coils to
transfer. Modbus Function Code 7, Read Exception Status does not require the address
as the remote device retrieves the exception status from an internal location.
When transferring data between server bit or coil memory to PLC bit memory, only the
number of bits specified is transferred. For example, if the COMMREQ requests to read 9
coils from the Remote Device and requests to put the data at %M00001 in the Local PLC
(using a bit type memory type), %M00001 through %M00009 will be updated with the
data from the Remote Device and %M00010 through %M00016 will be unaffected.
However, if server bit or coil memory is transferred to PLC byte or word memory, the
following rules apply:
1. Transferring discrete data from the Remote Device to Local PLC Word (16-bit)
memory: If the number of requested coils is not a multiple of 16, the data is padded with
0s to a 16-bit boundary. For example, if the COMMREQ requests reading 17 coils from
the Remote Device and requests to place this data at %R00010, %R00010 (all 16 bits) and
bit 0 of %R00011 will be updated with values from the Remote Device and bits 1 through
15 of %R00011 will be set to 0.
Modbus/TCP Client 195
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 10
GFK-2224AE Nov 2022
2. Transferring discrete data from the Remote Device to Local PLC byte memory
(using byte type memory type): If the number of requested coils is not on an 8-bit
boundary, the data is padded with 0s to an 8-bit boundary. For example, if the
COMMREQ requests 9 coils from the Remote Device and requests to place this data at
%M00001, %M00001 through %M00009 will be updated with values from the Remote
Device, and %M00010 through %M00016 will be set to 0.
Data returned from the remote device is stored in the PLC data area specified in the
Read Modbus/TCP Device COMMREQ. Data can be stored in any of the PLC data areas.
Note: the first item referred to in each data area is indexed at item 1 (not item 0).
The COMMREQ Status Word (CRS) indicates the success or failure of the Read Data
COMMREQ. If the COMMREQ requests an invalid channel number or any other field is
invalid, the COMMREQ fails and the CRS is set to a non-zero value to identify the failure.
(Word 7) Channel Command Number: Word 7 identifies the COMMREQ as a Read Data from Modbus/TCP
Device command block.
(Word 8) Channel Number: Word 8 identifies the channel number previously allocated for communication
with the remote Modbus/TCP server.
(Word 9) Modbus Function Code: Word 9 specifies Modbus Function Code 4, Read Input Registers.
(Word 10) Local PLC Memory Type: Words 10-11 specify the location in the local PLC where the Ethernet
interface will store data received from the remote device. For more information, refer to Local Memory Type.
(Word 11) Local PLC Memory Address: Word 11 determines the starting address in the local PLC in which the
data from the remote device is to be stored. The value entered is the offset (1-based) from the beginning of
PLC memory for the memory type and mode specified in Word 10. This offset will be either in bits, bytes, or
words depending on the mode specified. Valid ranges of values depend on the PLC’s memory ranges. Be sure
this area is large enough to contain the requested data without overwriting other application data.
(Word 12) Remote Device Address: Word 12 specifies the address in the remote Modbus/TCP device.
(Word 13) Number Registers in Remote Device: Words 13 specifies the quantity of registers (16bit words) to
read from the remote device.
(Word 14) Unit Identifier: This field is typically used by Ethernet to Serial bridges to specify the address of a
Modbus Slave on a multi-drop link. The Modbus/TCP Unit Identifier is a special control code used in a
Modbus/TCP message block.
Value
Type (Decimal) Description
%W 196 Word memory (word mode)
%R 8 Register memory (word mode)
%AI 10 Analog input memory (word mode)
%AQ 12 Analog output memory (word mode)
%I 16 Discrete input memory (byte mode)
70 Discrete input memory (bit mode)
%Q 18 Discrete output memory (byte mode)
72 Discrete output memory (bit mode)
%T 20 Discrete temporary memory (byte mode)
74 Discrete temporary memory (bit mode)
%M 22 Discrete momentary internal memory (byte
76 mode)
Discrete momentary internal memory (bit
mode)
%SA 24 Discrete system memory group A (byte mode)
78 Discrete system memory group A (bit mode)
%SB 26 Discrete system memory group B (byte mode)
80 Discrete system memory group B (bit mode)
%SC 28 Discrete system memory group C (byte mode)
82 Discrete system memory group C (bit mode)
%S 23 30 Discrete system memory (byte mode)
84 Discrete system memory (bit mode)
%G 56 Discrete global data table (byte mode)
86 Discrete global data table (bit mode)
(Word 7) Channel Command Number: Word 7 identifies the COMMREQ as a Read Data from Modbus/TCP Device
command block.
(Word 8) Channel Number: Word 8 identifies the channel number previously allocated for communication with the
remote Modbus/TCP server.
(Word 9) Modbus Function Code: Word 9 specifies Modbus Function Code 2, Read Input Discretes.
(Word 10) Local PLC Memory Type: Words 10-11 specify the location in the local PLC where the Ethernet interface will
store data received from the remote device. Valid values for Word 10 are listed on page
(Word 11) Local PLC Memory Address: Word 11 determines the starting address in the local PLC in which the data from
the remote device is to be stored. The value entered is the offset (1-based) from the beginning of PLC memory for the
memory type and mode specified in Word 10. This offset will be either in bits, bytes, or words depending on the mode
specified. Valid ranges of values depend on the PLC’s memory ranges. Be sure this area is large enough to contain the
requested data without overwriting other application data.
(Word 12) Remote Device Address: Word 12 specifies the address in the remote Modbus/TCP device
(Word 13) Number Registers in Remote Device: Words 13 specifies the quantity of input discretes to read from the
remote device.
(Word 14) Unit Identifier: This field is typically used by Ethernet to Serial bridges to specify the address of a Modbus Slave
on a multi-drop link. The Modbus/TCP Unit Identifier is a special control code used in a Modbus/TCP message block.
(Word 7) Channel Command Number: Word 7 identifies the COMMREQ as a Read Exception Status from the
Modbus/TCP device.
(Word 8) Channel Number: Word 8 identifies the channel number previously allocated for communication with the
remote Modbus/TCP server.
(Word 9) Modbus Function Code: Word 9 specifies Modbus Function Code 7, Read Exception Status.
(Word 10) Local PLC Memory Type: Words 10-11 specify the location in the local PLC where the Ethernet interface will
store data received from the remote device. Valid values for Word 10 are listed on page 174.
(Word 11) Local PLC Memory Address: Word 11 determines the starting address in the local PLC in which the data from
the remote device is to be stored. The value entered is the offset (1-based) from the beginning of PLC memory for the
memory type and mode specified in Word 10. This offset will be either in bits, bytes, or words depending on the mode
specified. Valid ranges of values depend on the PLC’s memory ranges. Be sure this area is large enough to contain the
requested data without overwriting other application data.
(Word 13) Data Size: Word 13 is the data size and must be set to 1.
(Word 14) Unit Identifier: This field is typically used by Ethernet to Serial bridges to specify the address of a Modbus
Slave on a multi-drop link. The Modbus/TCP Unit Identifier is a special control code used in a Modbus/TCP message block.
(Word 7) Channel Command Number: Word 7 identifies the COMMREQ as a Read Exception Status from the Modbus/TCP
device.
(Word 8) Channel Number: Word 8 identifies the channel number previously allocated for communication with the remote
Modbus/TCP server.
(Word 9) Modbus Function Code: Word 9 specifies Modbus Function Code 24, Read FIFO Queue.
(Word 10) Local PLC Memory Type: Words 10-11 specify the location in the local PLC where the Ethernet interface will
store data received from the remote device. Valid values for Word 10 are listed on page 174.
(Word 11) Local PLC Memory Address: Word 11 determines the starting address in the local PLC in which the data from the
remote device is to be stored. The value entered is the offset (1-based) from the beginning of PLC memory for the memory
type and mode specified in Word 10.
(Word 12) FIFO Pointer Address: Word 12 is the FIFO pointer address in the Remote Device.
(Word 13) Data Size: Word 13 is unused because the return data size is dependent on the number of items in the server’s
FIFO queue when the command is received. Zero (0) through 32 registers can be returned as a result of this function code.
(Word 14) Unit Identifier: This field is typically used by Ethernet to Serial bridges to specify the address of a Modbus Slave
on a multi-drop link. The Modbus/TCP Unit Identifier is a special control code used in a Modbus/TCP message block.
The Write Data to a Modbus/TCP Device COMMREQ requests a data transfer from the
PLC to a Modbus/TCP server. The Write Data COMMREQ must reference an active
Modbus/TCP channel previously established with the Open Modbus/TCP Client
Connection COMMREQ.
Registers or Coils may be written to the remote Modbus/TCP device. The Modbus
Function Code specifies the data type. Valid Function Codes for the Write Data
COMMREQ are presented in the following table:
Function Modbus Server Memory Data Unit Maximum
Description
Code Region Accessed Size Data Units
Internal Bits or Physical
5 Write Single Coil Bit 1
coils
Write Single Internal Registers or
6 Register 1
Register Physical Output Registers
Internal Bits or Physical
15 Write Multiple Coils Bit 1968
coils
Write Multiple Internal Registers or
16 Register 123
Registers Physical Output Registers
An Address Offset and Length specify the location in the Modbus/TCP device and the
number of data units to transfer. The Address Offset is the offset from the Base Address
for that memory region in the server. The Length is the number of Registers or Coils to
transfer.
A PLC data area is the source for the data written to the Modbus/TCP device.
Function Code 5, Write Single Coil, forces a Coil On or Off. To force a coil off, the value
zero (0) is used as the COMMREQ data value. If the PLC memory type is a bit type, the
remote device coil is set to the same state as the specified PLC memory location. If the
PLC memory type is a byte or word type, a value of zero (0) is used to force a coil off and
a value of one (1) is used to force a coil on.
Function Code 15, Write Multiple Coils, forces multiple Coils On or Off. If the PLC
memory type is a bit type, remote device coils are set to the same state as the
corresponding bits in the specified PLC memory location. If the PLC memory type is a
byte or word type, the remote device coils follow the state of the packed bits contained
in the byte or word memory. For example, if 16 coils are written to a PACSystems
Modbus server starting at %Q1 from the client PLC memory at %R1 containing a value of
0x1111, the following remote server coils will be set %Q1, %Q5, %Q9, and %Q13 and the
following remote server bits will be cleared: %Q2, %Q3, %Q4, %Q6, %Q7, %Q8, %Q10,
%Q11, %Q12, %Q14, %Q15, %Q16.
The COMMREQ Status Word (CRS) indicates the success or failure of the Write Data
COMMREQ. If the COMMREQ specifies an invalid channel number or any other invalid
field, the COMMREQ fails and the CRS is set to a non-zero value to identify the failure.
(Word 7) Channel Command Number: Word 7 identifies the COMMREQ as a Write Data to remote Modbus/TCP device.
(Word 8) Channel Number: Word 8 identifies the channel number previously allocated for communication with the remote
Modbus/TCP server.
(Word 9) Modbus Function Code: Word 9 specifies Function Code 6, Write Single Register.
(Word 10) Local PLC Memory Type: Words 10–11 specify the location in the local PLC from where the Ethernet interface will
get the data to be written to the remote PLC. Valid values for Word 10 are listed on page 174.
(Word 11) Local PLC Starting Address: Word 11 determines the starting address in the local PLC from which the data is to
be written. The value entered is the offset (1-based) from the beginning of PLC memory for the memory type and mode
specified in Word 10.
(Word 12) Remote Device Address: specifies the destination register in the remote device.
(Word 13) Number Registers in Remote Device: Word 13 specifies the quantity of registers to write to the remote device.
For Function Code 6, Write Single Register this must be set to 1.
(Word 14) Unit Identifier: This field is typically used by Ethernet to Serial bridges to specify the address of a Modbus Slave
on a multi-drop link. The Modbus/TCP Unit Identifier is a special control code used in a Modbus/TCP message block.
(Word 7) Channel Command Number: Word 7 identifies the COMMREQ as a Write Data to Modbus/TCP device.
(Word 8) Channel Number: Word 8 identifies the channel number previously allocated for communication with the remote
Modbus/TCP server.
(Word 9) Modbus Function Code: Word 9 specifies Modbus Function Code 5 Write Single Coil.
(Word 10) Local PLC Memory Type: Words 10–11 specify the location in the local PLC from where the Ethernet interface
will get the data to be written to the remote PLC. Valid values for Word 10 are listed on page 174.
(Word 11) Local PLC Starting Address: Word 11 determines the starting address in the local PLC from which the data is to
be written. The value entered is the offset (1-based) from the beginning of PLC memory for the memory type and mode
specified in Word 10. This offset will be either in bits, bytes, or words depending on the mode specified. Valid ranges of
values depend on the PLC’s memory ranges.
(Word 12) Remote Device Address: Word 12 specifies the destination coil address in the Modbus/TCP device.
(Word 13). Number Coils in Remote Device: Words 13 specifies the quantity of coils to write to the remote device. For
Modbus Function Code 5, Write Single Coil, this must be set to 1.
(Word 14) Unit Identifier: This field is typically used by Ethernet to Serial bridges to specify the address of a Modbus Slave
on a multi-drop link. The Modbus/TCP Unit Identifier is a special control code used in a Modbus/TCP message block.
The Mask Write Register Request to a Modbus Server Device COMMREQ is used to
modify the contents of a specified remote device register using a combination of an AND
mask, OR mask, and the current register’s value. This function is used to set or clear
individual bits in a register. The register is modified per the following algorithm:
Register value = ((Current register value) AND (And Mask Value)) OR
((OR Mask Value) AND (NOT(And Mask Value)))
(Word 7) Channel Command Number: Word 7 identifies the COMMREQ as a Mask Write Register operation on remote
Modbus/TCP device.
(Word 8) Channel Number: Word 8 identifies the channel number previously allocated for communication with the
remote Modbus/TCP server.
(Word 9) Modbus Function Code: Word 9 specifies Function Code 22, Mask Write Register.
(Word 10) Remote Device Address: specifies the destination register in the remote device.
(Word 11) AND Mask: Word 11 specifies the AND mask to be used in the Mask Write operation. For this example, all bits
are cleared except bit 0.
(Word 12) OR Mask: Word 12 specifies the OR mask to be used in the Mask Write operation. In this example, no bits are
to be set.
(Word 13) Unit Identifier: This field is typically used by Ethernet to Serial bridges to specify the address of a Modbus
Slave on a multi-drop link. The Modbus/TCP Unit Identifier is a special control code used in a Modbus/TCP message
block.
The Read/Write Multiple Registers to/from a Modbus Server Device COMMREQ is used to
read and write data between the remote server and the PLC with one COMMREQ
operation. The write operation occurs first and the data exchange does not occur
coherently (i.e. data can change in the server between the write and read operations).
(Word 12) Local PLC Starting Address MSW (Write With Data Read From Server): Word 12 determines the most
significant word (MSW) of the starting address in the local PLC from which the data is to be written. This value will typically
be 0 unless the address is above 65535 for %W memory.
(Word 13) Remote Device Read Address: Word 13 specifies the register(s) to read from the remote Modbus/TCP device.
(Word 14) Number Registers to Read From Remote Device: Words 14 specifies the quantity of registers to read from the
remote device.
(Word 15) Local PLC Memory Type (Read Data to Write to Server): Words 15–17 specify the location in the local PLC
where the Ethernet interface will read data to use for writing to the remote server. Values for Word 15 are listed on page
178. The value 8 specifies Register Memory %R.
(Word 16) Local PLC Starting Address LSW (Read Data to Write to Server): Word 16 determines the least significant word
(LSW) of the starting address in the local PLC from which the data is to be read. The value entered is the offset (1-based)
from the beginning of PLC memory for the memory type and mode specified in Word 15. This offset will be either in bits,
bytes, or words depending on the mode specified. Valid ranges of values depend on the PLC’s memory ranges.
(Word 17) Local PLC Starting Address MSW (Read Data to Write to Server): Word 17 determines the most significant
word (MSW) of the starting address in the local PLC from which the data is to be read. This value will typically be 0 unless the
address is above 65535 for %W memory.
(Word 18) Remote Device Write Address: Word 18 specifies the register(s) to be written on the remote Modbus/TCP
device.
(Word 19) Number Registers to Write To Remote Device: Words 19 specifies the quantity of registers to write to the
remote device.
(Word 20) Unit Identifier: This field is typically used by Ethernet to Serial bridges to specify the address of a Modbus Slave
on a multi-drop link. The Modbus/TCP Unit Identifier is a special control code used in a Modbus/TCP message block.
There are three main types of status data available to the application program:
▪ Ethernet interface status bits,
▪ FT Output of the COMMREQ function block
▪ COMMREQ Status Word
The Ethernet interface reports the status of the COMMREQ back to the status location.
See Section 12, Diagnostics, for COMMREQ major and minor error codes that may be
reported in the CRS words for Modbus/TCP commands.
Every ladder program, whether in the developmental phase or the operational phase,
should do the following before initiating a COMMREQ function.
1. Initiate the COMMREQ function with a one-shot transitional coil. This prevents
sending the same COMMREQ Command Block more than once.
2. Include at least the LAN interface OK bit in the LAN interface Status Word as an
interlocking contact for the COMMREQ function. You may choose to add more
interlocks.
3. Zero the word location you specify for the COMMREQ Status (CRS) word and the FT
Outputs of the COMMREQ Function Block before the COMMREQ function is initiated.
4. Move the command code and parameters for the Channel command into the
memory location specified by the IN input of the COMMREQ Function Block before
the COMMREQ function is initiated.
The example ladder program segment starting on the next page illustrates how to
incorporate these important points in your program.
Note: When using a Write Data or Read/Write COMMREQ, data is not read from the local
PLC synchronously with the execution of the COMMREQ. A number of CPU sweeps may
occur before the data is read. It is recommended that the data is not changed until after
the COMMREQ Status Word indicates completion of the command.
When you issue a COMMREQ to open a Modbus channel, a TCP connection is created,
the transfer then can be made, then upon “closing” of the channel, the TCP connection is
terminated. It takes time to create and to terminate these connections. If an application
is constructed so that it rapidly and repeatedly opens and closes a channel(s), the
available TCP connections for the Ethernet interface may be totally consumed. A
“snapshot” of the state of the TCP connections would show some of them being created,
some being terminated, and some active, but none available.
CAUTION
In Certain Conditions TCP Connections Can Be Totally Consumed
There is a period of time that the OS Network stack hangs on to the TCP resources
associated with a connection after it is closed. It applies to the initiator of the close,
which is almost always the client-side. This time is referred to as the “TCP Linger Period.”
Once the TCP Linger Period expires (60 seconds in the current OS implementation), the
TCP resources are released. Application developers using client channels need to be
aware of this behavior when designing their logic. There are a finite number of TCP
resources allocated to client channels, and if channel connections are brought up and
down so fast that these resources are depleted, then the application may have to wait
until a TCP resource frees up to establish another client channel (a COMMREQ Status of
0xA890 is returned if no TCP resources are currently available; the application should
wait and retry again).
Modbus Client Channels provides features that help the user preserve TCP connections.
This includes opening a channel where one can re-task an active channel to the same
remote device, where the parameters of an active channel, such as changing the channel
command type (Read/Write), local memory address, remote memory address, etc. can be
changed.
The input values for the Block Move Functions in the example below are taken from the
Open Modbus/TCP Connection (3000), Modbus/TCP Read (3003), and Close Modbus/TCP
Connection (3001) Examples in this chapter.
Named variables are used in this example to make the ladder program easier to follow.
LANIFOK is bit 16 of the LAN interface Status bits. LAN_OK is bit 13 of the LAN interface
Status bits. CH5_OPEN is bit 25 of the LAN interface Status bits. All other nicknames may
be assigned as you choose.
Rung # 1: Input LANIFOK (bit 16 of the LAN interface Status bits) monitors the health of
the Ethernet interface. Input LAN_OK (bit 13 of the LAN interface Status bits) monitors
the online/offline status of the Ethernet interface. If both bits are set, the network
connection is available and healthy. CH5_OPEN (bit 25 of the LAN interface Status bits)
monitors channel 5 Connection Open status: it needs to be 0 (off). If these conditions are
met, it is okay to send a COMMREQ, so the ETH_READY coil is turned ON. ETH_READY is
used as an interlock for Rungs 2-16 in this example.
Rung # 2: When ETH_READY is set and CH5_OPEN is not set, Input DO_OPEN triggers
OPEN_REQ, which enables execution of the MOVE and COMMREQ functions for the Open
Modbus/TCP Connection COMMREQ. OPEN_REQ is a one-shot (Positive Transition) coil,
activating once when both ETH_READY and DO_OPEN have transitioned from OFF to ON.
Rung # 3: The MOVE WORD function moves a zero to the CRS word referenced in the
Command Block (see rung #4). This clears the CRS word. This rung also resets the
OPEN_FLT output coil of the COMMREQ Function Block in rung #5.
It is vital that the CRS Status Word is cleared and the COMMREQ fault output coil is
cleared each time before initiating a COMMREQ function.
Rung # 4: The BLKMV INT functions to set up the COMMREQ Command Block contents.
When this rung is activated, the constant operands are moved into the memory
beginning at the address indicated in the instruction. The constant operands in this
example are defined in the Open Modbus/TCP Connection Example in this chapter.
Rung # 5: The COMMREQ Function Block has three input parameters and one output
parameter.
▪ The IN field points to the starting location of the Command Block parameters
(%R00301 in this example).
▪ The SYSID field of the COMMREQ Function Block defines the target rack and slot of
the Ethernet interface to receive the command data. This is a hexadecimal word
value that gives the rack (high byte) and slot (low byte) location of the Ethernet
interface module. In the example, the first three number places (from left to right)
are zeroes and are not displayed; only the last number, 4, appears. This indicates
rack 0, slot 4.
▪ The TASK field of the COMMREQ Function Block indicates which mailbox task ID to
use for the specified rack and slot. For the RX3i ETM001-Jx Ethernet interfaces TASK
must always be set to zero. For PACSystems CPU embedded Ethernet interface,
Rung # 6: When ETH_READY is set the CRS word for the Open Modbus/TCP Connection
COMMREQ is monitored for a status of 1, indicating that the Open COMMREQ completed
successfully. In addition, the Ethernet Module will set the CH5_OPEN status. The CRS
word change to 1 set coil OPEN_SUCCESS.
Rung # 7: When OPEN_SUCCESS and CH5_OPEN are set, it triggers READ_REQ, which
enables execution of the BLKMOV, MOVE, and COMMREQ functions for the Modbus/TCP
Read COMMREQ. READ_REQ is a one-shot (Positive Transition) coil, activating once when
OPEN_SUCCESS transitions from OFF to ON.
Rung # 8: The MOVE WORD function moves a zero to the CRS word referenced in the
Command Block (see rung #9). This clears the CRS word. This rung also resets the
READ_FLT output coil of the COMMREQ Function Block in rung #10.
Rung # 9: The BLKMV INT functions to set up the COMMREQ Command Block contents.
When this rung is activated, the constant operands are moved into the memory
beginning at the address indicated in the instruction. The constant operands in this
example are defined in the Modbus/TCP Read Example in this chapter.
Rung # 10: The COMMREQ Function Block has three input parameters and one output
parameter.
▪ The IN field points to the starting location of the Command Block parameters
(%R00301 in this example).
▪ The SYSID field of the COMMREQ Function Block defines the target rack and slot of
the Ethernet interface to receive the command data. This is a hexadecimal word
value that gives the rack (high byte) and slot (low byte) location of the Ethernet
interface module.
▪ The TASK field of the COMMREQ Function Block indicates which mailbox task ID to
use for the specified rack and slot. For the RX3i ETM001-Jx Ethernet interfaces TASK
must always be set to zero. For PACSystems CPU embedded Ethernet interface,
TASK must be set to 65536 (0x10000) to address the CPU’s Ethernet
daughterboard.
▪ The FT output (energizes the READ_FLT coil in this example) is turned ON (set to 1)
if problems were preventing the delivery of the Command Block to the Ethernet
interface. In this case, the other status indicators are not updated for this
COMMREQ.
Rung # 11: When ETH_READY is set the CRS word for the Modbus/TCP Read COMMREQ is
monitored for a status of 1, indicating that the Read COMMREQ completed successfully.
The CRS word change to 1 set coil READ_SUCCESS.
Rung # 12: When READ_SUCCESS and CH5_OPEN a reset it triggers CLOSE_REQ, which
enables execution of the BLKMOV, MOVE, and COMMREQ functions for the Close
Modbus/TCP Connection COMMREQ. CLOSE_REQ is a one-shot (Positive Transition) coil,
activating once when READ_SUCCESS transitions from OFF to ON.
Rung # 13: The MOVE WORD function moves a zero to the CRS word referenced in the
Command Block (see rung #9). This clears the CRS word. This rung also resets the
CLOSE_FLT output coil of the COMMREQ Function Block in rung #15.
Rung # 14: The BLKMV INT functions to set up the COMMREQ Command Block contents.
When this rung is activated, the constant operands are moved into the memory
beginning at the address indicated in the instruction. The constant operands in this
example are defined in the Close Modbus/TCP Connection Example in this chapter.
Rung # 15: The COMMREQ Function Block has three input parameters and one output
parameter.
▪ The IN field points to the starting location of the Command Block parameters
(%R00301 in this example).
▪ The SYSID field of the COMMREQ Function Block defines the target rack and slot of
the Ethernet interface to receive the command data. This hexadecimal word value
gives the rack (high byte) and slot (low byte) location of the Ethernet interface
module.
▪ The TASK field of the COMMREQ Function Block indicates which mailbox task ID to
use for the specified rack and slot. For the RX3i ETM001-Jx Ethernet interfaces TASK
must always be set to zero. For PACSystems CPU embedded Ethernet interface,
TASK must be set to 65536 (0x10000) to address the CPU’s Ethernet
daughterboard.
▪ The FT output (energizes the CLOSE_FLT coil in this example) is turned ON (set to 1)
if problems were preventing the delivery of the Command Block to the Ethernet
interface. In this case, the other status indicators are not updated for this
COMMREQ.
Rung # 16: When ETH_READY is set the CRS word for the Close Modbus/TCP Connection
COMMREQ is monitored for a status of 1, indicating that the Close COMMREQ completed
successfully. In addition, the Ethernet Module will clear the CH5_OPEN status. The CRS
word change to 1 set coil CLOSE_SUCCESS.
There are several forms of status data that can be accessed by the application program.
The use of the LAN interface OK bit in the LAN interface Status Word was described in
the example program. Some status data can be used to troubleshoot a program in its
developmental stage. The two primary sources of this data are the FT Output on the
COMMREQ Function Block and the COMMREQ Status word (CRS word).
FT Output is ON
If after executing a COMMREQ Function, the FT Output is ON, then there is a
programming error in one or more of the following areas.
▪ Invalid rack/slot specified. The module at this rack/slot is unable to receive a
COMMREQ Command Block.
▪ Invalid Task ID. For the RX3i ETM001-Jx Ethernet interfaces TASK must always be
set to zero. For PACSystems CPU embedded Ethernet interface, TASK must be set
to 65536 (0x10000) to address the CPU’s Ethernet daughterboard.
▪ Invalid Data Block length (0 or greater than 128).
If the CRS word does not contain a 1 indicating success, then it contains either a 0 or a
code indicating what error occurred.
The status data can be used to monitor communications and take action after certain
events.
Resulting
Memory Memory Memory
Transfer Value
Location / value Location / Notes
Direction After
Type example Type
Transfer
End-to-end
%M16-%M1 %R1 =
Client Bit → Server Word bytes un-
= 0x4321 0x4321
swapped
End-to-end
%M16-%M1 %R1 =
Server Bit → Client Word bytes un-
= 0x4321 0x4321
swapped
End-to-end
%R1 = %M16-%M1
Client Word → Server Bit bytes un-
0x4321 = 0x4321
swapped
End-to-end
%R1 = %M16-%M1
Server Word → Client Bit bytes un-
0x4321 = 0x4321
swapped
Model Comparison
ETM001-Kxxx
ETM001-Jx
CPE210/
215/220
CPE302
CPE305
CPE310
CPE330
CPE400
CPE100
CPE115
CPE205
CPE240
CPL410
OPC UA Server
Concurrent 5 5 5 5 5 5 2 2 3 3 5 N/A N/A
Sessions
OPC UA Server
Subscriptions 10 10 10 10 10 10 4 4 4 4 10 N/A N/A
Limit
Total OPC UA
Variables 12,500 12,500 12,500 12,500 12,500 12,500 1,000 1,000 1000 2000 4000 N/A N/A
Supported
Maximum
Number of
12,500 12,500 12,500 12,500 12,500 12,500 1,000 1,000 1000 2000 4000 N/A N/A
Monitored Items
Per Subscription
Note: When both PME 9.8 SIM 5 and PLC Firmware 10.10 (or greater) are in use,
configuring a redundant system will automatically enable non-transparent redundancy
for OPC UA on the PLCs. In a non-transparently redundant pair configuration, the client
is responsible for connecting to the two systems and swapping in the event of a failure.
1. The OPC UA server generates a self-signed certificate for the connection process.
2. The OPC UA certificate will include application-specific information within the
certificate, such as Target Name and the controller’s TCP/IP address (If this
information changes, the certificates should be cleared and regenerated).
3. The OPC UA server certificates will be stored internally on the controller’s non-
volatile storage and will be retained through power cycles, clearing of memory
and configuration from the programmer, and clearing of flash storage from the
programmer.
4. The CONFIG_STATUS service request returns a bitmask to indicate if the
certificates exist on the target, or if they are currently cleared.
OPC UA Servers Certificates Already Cleared
1. If the OPC UA server is started with the certificates cleared, new certificates are
generated during the startup of the OPC UA server.
2. If the OPC UA server is started with certificates already on the target, then those
existing certificates are used, and new ones are not generated.
OPC UA Server Certificates Need to be Cleared
If certificates currently exist on the target and need to be cleared, the OPC UA server
must be stopped, and then the CLEAR service request can be used to clear the
certificates on the controller.
When a CLEAR is used to clear the certificates, the certificates are permanently deleted
and cannot be restored.
NOTE: The CLEAR service request will not pass power if it is performed with the OPC
UA server running.
To assist with checking the status of and clearing certificates, the OPC UA subroutine
previously discussed offers a ClrSvr input that might be used to clear the server
certificates any time the server is stopped.
CAUTION
After successfully provisioning security, the OPC UA server must be restarted.
CAUTION
When a secure connection is created, messages between the client and the server are encrypted
and signed. Once the security server has a CA-signed certificate, the security server will only accept
connections from applications that are signed by the same CA.
26
The CPE100/115 support up to two concurrent sessions. Across these sessions only a maximum of 4 concurrent
subscriptions of variables. For details about support for specific models please see the table in Section 11.1.
OPC UA Server 227
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 11
GFK-2224AE Nov 2022
Note: Enabling OPC UA server logs will degrade the performance of the OPC UA server.
There are two logging settings available and, in both cases, greater level log settings
include all the lower level logs above that level (For example, the permissions for the
Informational log level will also include the permissions for Warnings and Errors log levels
as well).
The total log file length available is limited to 4000 lines. When these 4000 lines of
logging information are exceeded, the file is deleted and started over empty. This
rollover to a new log file happens automatically without user intervention when the log is
full. When this occurs the prior lines of the log are lost, but there is new space for
additional logs and the system memory will not be filled with logging info. Care should
be taken to set a logging level high enough to troubleshoot the given problem, but also
low enough so that the logs do not roll-over too fast to capture the information
necessary.
Sub-function Code
OPC UA SERVER 16#0001
Note: All other protocol codes are reserved, and if used, the SVC_REQ function will not
pass power.
Sub-function Code
START 16#0000
STOP 16#0001
CLEAR 16#0002
SERVER_STATUS 16#0003
CONFIG_STATUS 16#0004
RESTART 16#0005
PROVISIONING_STATUS 16#0006
RESERVED 16#0007
SET_TIME_MS_LIMIT_PER_SWEEP 16#0008
GET_TIME_MS_LIMIT_PER_SWEEP 16#0009
Data Direction
Parameter Summary
(LD perspective)
16#0001 OPC UA protocol IN
16#0000 START request IN
-1440 to 1440 Time Zone Offset IN
If the SVC_REQ does not pass power, the operation did not complete. The time zone
offset adjusts the OPC UA server time zone. The Controller’s Time of Day (TOD) clock
must be synchronized to local time and the time zone offset is your location’s offset
relative to Universal Time Coordinated (UTC, formerly known as Greenwich Mean Time or
GMT).
Data Direction
Parameter Summary
(LD perspective)
16#0001 OPC UA protocol IN
16#0001 STOP request IN
The use of the STOP sub-function code in a ladder diagram is illustrated in the following
example. If the SVC_REQ does not pass power, the operation did not complete.
Data Direction
Parameter Summary
(LD perspective)
16#0001 OPC UA protocol IN
16#0005 RESTART request IN
-1440 to 1440 Time Zone Offset IN
If the SVC_REQ does not pass power, the operation did not complete. The time zone
offset adjusts the OPC UA server time zone. The Controller’s Time of Day clock must be
synchronized to ‘local’ time and the time zone offset is your location’s offset relative to
UTC time.
Data Direction
Parameter Summary
(LD perspective)
16#0001 OPC UA protocol IN
16#0003 SERVER_STATUS request IN
0000 0000 0000 0000 Server Status Response – OUT
bitmask (see below)
If the SVC_REQ does not pass power, the operation did not complete.
The SERVER_STATUS word bit definitions are displayed below.
Note: The PACSystems OPC UA server takes up to two minutes to start if the server’s
configuration files and certificates need to be generated. This occurs the first time the
server is started. The OPC UA server can take up to 30 seconds to start on subsequent
starts.
Once the OPC UA server is running, the OPC UA SERVER_STATUS service request returns
0010h OPC UA Server Running.
Data Direction
Parameter Summary
(LD perspective)
16#0001 OPC UA protocol IN
16#0004 CONFIG_STATUS request IN
0000 0000 0000 0000 Config Status Response - OUT
bitmask
If the SVC_REQ does not pass power, the operation did not complete.
The CONFIG_STATUS word bit definitions are displayed below.
CAUTION
Should the active PLC fail or be put into STOP mode, the redundant PLCs may perform a role switch, transferring the
active unit status to the previous backup unit. This action transfers the backup unit’s status to the previous active
unit.
In this scenario, CIMPLICITY will begin to update its points with values from the new active unit at the time of the role
switch. However, if a point has not changed on the active unit since before the role switch, the CIMPLICITY project will
not update its displayed point value. Some values may remain effectively frozen until the unit changes the variable’s
value.
The value and its timestamp will continue to show the values obtained from the previously active unit until the
variable changes on the new active unit.
Failover Performance
Performance of failovers in OPC UA Non-Transparent Server Redundancy will vary
depending on the system configuration and type of failure mode. Users should expect
greater OPC UA server failover delays with Cold and Warm failover modes because the
OPC UA client must do extra work after the failure to reconnect and/or enable sampling.
The exact timing for this to occur will be specific to the load on the PLCs, the hardware
specifications of the controller, and the network conditions.
Since the OPC UA client subscribes to the Service Level variable in the OPC UA address
space and to obtain the current value when a change takes place requires a publishing
period of that changed data, the performance of how long this operation will take can be
identified by measuring the performance of the specific configuration for variable
updates as described in Section 11.7, OPC UA Service Performance and Estimation below.
The worst-case system subscription update would be the upper bound of how much time
it takes for a Service Level change to be set on the server, published over the network,
and obtained by the client.
When a network failure or PLC failure that resulted in complete loss of network
communication (such as a power loss or watchdog timeout expiration) is detected, the
OPC UA Client immediately attempts to connect to the standby server. It can take up to a
full connection timeout period for the client to detect the server was lost due to network
communication interruption. The specific name for this connection timeout may vary by
the type of OPC UA client being used. Please consult the documentation for the specific
OPC UA client to determine the value of its network communication timeout setting.
OPC UA Service Performance and Estimation.
Parameters for the SET_TIME_MS_LIMIT_PER_SWEEP function service request are:
Data Direction
Parameter Summary
(LD perspective)
16#0001 OPC UA protocol IN
16#0008 SET_TIME_MS_LIMIT_PER_SWEEP request IN
1 to 2550 New OPC UA task sweep time limit in IN
milliseconds.
Note: If the SVC_REQ does not pass Power, the operation did not complete.
Data Direction
Parameter Summary
(LD perspective)
16#0001 OPC UA protocol IN
16#0009 GET_TIME_MS_LIMIT_PER_SWEEP request IN
1 to 2550 Current OPC UA task sweep time limit in OUT
milliseconds.
Note: If the SVC_REQ does not pass power, the operation did not complete
As an example, a connection string for the OPC UA server is constructed. To begin, the
controller TCP/IP address of the embedded Ethernet port is needed. One method to find
this information is to use the PME programmer. Open the controller’s project and select
the project top level in the Project tab of the Navigator window. From the Inspector
window, scroll down to the IP Address Entry (see the screenshot below). From the figure,
we can see the current IP address is 10.10.1.102. For this example, the client’s connection
string for the controller is the following:
opc.tcp://10.10.1.102:4840
Note: The Redundant IP address cannot be used for OPC UA communication, and
the OPC UA server will not respond to requests sent to the PACSystems Controller’s
Redundant IP Address. For use of OPC UA in a redundant configuration the OPC UA
Client must support the OPC UA Non-Transparent Redundancy specification.
The specification is available as “OPC Unified Architecture Specification,” Release 1.04,
November 22, 2017. Published by the OPC Foundation. At the time of this release, online
versions of this specification are available at:
https://reference.opcfoundation.org/v104/
In Figure 86, Force Compact PVT is set to true. This is the required setting for the OPC UA
server. From the client-side, we can establish a connection by placing the above
information into the connection string (see screenshot below using an OPC UA client).
We can then connect to the OPC UA server.
Note: The Client can see the Controller Target Name when connecting to the server.
The Controller Target Name is set within PME and is displayed in the screenshot above. A
sample client connection can be seen below.
Note: The RX3i’s OPC UA server supports 5 clients. If 5 clients are connected, additional
connection requests will be rejected by the OPC UA server.
Anonymous Authentication
OPC UA server Anonymous Authentication can be enabled by disabling Controller
passwords. PME is used to disable controller passwords. To access this setting using
PME, open the Controller Hardware Configuration with the Project tab within the
Navigator, expand the Hardware Configuration, and select the controller. Double-click the
controller tree node to access the controller-specific Hardware Configuration settings.
Select the Settings tab, then set the Passwords parameter to Disabled (Figure 89).
Username/Password Authentication
OPC UA server Username/Password Authentication is enabled through RX3i controller
passwords. PME is used to enable controller passwords. To access this setting using
PME, open the RX3i Hardware Configuration in the Project tab within the Navigator,
expand the Hardware Configuration, and select the controller. Double-click the controller
tree node to access the controller-specific Hardware Configuration settings. Select the
Settings tab, then set the Passwords parameter to Enabled (Figure 90).
Note: Both the username and password are case-sensitive.
The OPC UA server password is the same as the controller password. Controller
passwords are set using the PME commands Select Target → Online Commands → Show
Status, which opens the controller status dialog box. Select the Protection tab, click the
Passwords button to set the passwords for the different access levels (see the screenshot
below).
The OPC Server assigns usernames to the different access levels. The usernames that
correspond to the different levels are as follows:
For example:
Level 2 password = MyLevel2Password
The OPC UA Client would use the following username/password to establish a
connection.
Username = OpcUserLevel2
Password = MyLevel2Password
Please reference the PME documentation for additional details regarding setting
passwords and the privileges assigned to different levels.
The available PME Publish attribute selections are as follows as they apply to the OPC UA
server:
Note: The Controller’s OPC UA address space supports 12,500 addressable elements. If
more than 12,500 addressable elements are published, only the first 12,500 (listed
alphabetically) will be made available in the OPC UA address space. Each index of a
variable array counts as a unique addressable element. CPE100 and CPE115 controllers’
OPC UA supports 1000 addressable elements. The OPC UA server regenerates the
address space only at startup. Thus, adding a new variable or modifying an existing
variable publish attribute requires the server to perform the startup sequence. In most
cases, the controller performs this function for the user. Please reference the section
entitled OPC UA Server – Service Request – RESTART for additional details on server restart
functionality.
The published application variable is accessible by the client. One method is to browse
the address space, opening the Application node displayed in the screenshot below.
Note: If the server address space has been updated and the client is currently connected
to the server, you may need to refresh the client view. Depending on the client
implementation, this may require the client to re-browse the address space.
The Server node can then be used to access server-specific information. For example, the
node Server → ServerStatus → Buildinfo (see below) contains information specific to the
OPC UA server.
The address space entries under BuildInfo can be accessed to learn more information for
a specific controller. Placing the variables in a subscription allows easy access to variable
values (see screenshot below).
The example above indicates the following about the PACSystems Controller.
Address Space Status = All Elements Published to Address Space
The number of published elements did not exceed the maximum allowed by the
controller. Thus, all elements were published. If the maximum had been exceeded, then
elements would still be published up to the limit and the text would change to:
Address Space Status = Maximum Published Elements Exceeded: Address Space
Truncated
Maximum Elements = 12,500
Maximum Elements is the maximum number of application elements supported by this
controller. In the example above, that limit is 12,500 application elements.
Published Elements = 58
Published Elements is a count of how many application elements are currently being
published. In the example above, the number is 58 application elements.
Published Variables = 24
Published Variables is a count of the controller application variables currently being
published. In the example, the number is 24. Note that the Published Variables = 24,
while Published Elements = 58. The difference is due to one of the application variables
being a 34-element array.
The tree structure allows the user to drill down into both the Controller and Energy Pack
nodes to get information on these devices. The variables under these nodes are defined
as follows.
Note: If the controller does not have an Energy Pack installed, the values for these
variables are NA. Only variables marked with a # are available on the Energy Pack node,
the rest are Controller only.
Only a PACSystems CPU that is configured for PACSystems Hot-Standby Redundancy will
support OPC UA Non-Transparent Server Redundancy. If a CPU is configured as a
simplex unit (either because it does not support redundancy or because it is configured
as a simplex CPU), it will offer the Service Level variable in the OPC UA address space, but
it will have a fixed value of 255. If the CPU is configured as a redundant unit, it will offer
the Service Level variable in the OPC UA address space and adjust it as the following
table shows:
Description of Service Levels
The OPC UA client subscribes to the ServiceLevel property provided by each redundant Server.
This value indicates which instance is the healthiest (any number >= 200 is considered healthy).
OPC UA Server 258
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 11
GFK-2224AE Nov 2022
If the ServiceLevel drops below 200, the current connection is now considered Degraded and a
failover is initiated if the standby server has a greater ServiceLevel.
NOTE: If synchronization is important, take care to place all OPC UA variables on the
Redundancy Transfer List, but not strictly required.
Failover mode and Client options Cold Warm Hot (a) Hot (b)
Activate publishing. X
At Failover:
Activate publishing. X X X
CAUTION
Should the active PLC fail or be put into STOP mode, the redundant PLCs may perform a role
switch, transferring the active unit status to the previous backup unit. This action transfers the
backup unit’s status to the previous active unit.
In this scenario, CIMPLICITY will begin to update its points with values from the new active unit at
the time of the role switch. However, if a point has not changed on the active unit since before the
role switch, the CIMPLICITY project will not update its displayed point value. Some values may
remain effectively frozen until the unit changes the variable’s value.
The value and its timestamp will continue to show the values obtained from the previously active
unit until the variable changes on the new active unit.
Failover Performance
Performance of failovers in OPC UA Non-Transparent Server Redundancy will vary
depending on the system configuration and type of failure mode. Users should expect
greater OPC UA server failover delays with Cold and Warm failover modes because the
OPC UA client must do extra work after the failure to reconnect and/or enable sampling.
The exact timing for this to occur will be specific to the load on the PLCs, the hardware
specifications of the controller, and the network conditions.
Since the OPC UA client subscribes to the Service Level variable in the OPC UA address
space and to obtain the current value when a change takes place requires a publishing
period of that changed data, the performance of how long this operation will take can be
identified by measuring the performance of the specific configuration for variable
updates as described in Section 11.7, OPC UA Service Performance and Estimation. The
worst-case system subscription update would be the upper bound of how much time it
takes for a Service Level change to be set on the server, published over the network, and
obtained by the client.
When a network failure or PLC failure that resulted in complete loss of network
communication (such as a power loss or watchdog timeout expiration) is detected, the
OPC UA Client immediately attempts to connect to the standby server. It can take up to a
full connection timeout period for the client to detect the server was lost due to network
communication interruption. The specific name for this connection timeout may vary by
the type of OPC UA client being used. Please consult the documentation for the specific
OPC UA client to determine the value of its network communication timeout setting.
OPC-UA-Specific Items
set to various modes and has an impact on how much time the OPC UA server can
execute each sweep in the controller. The OPC UA protocol has a workload based on the
quantity of variables that are part of the subscriptions created by connected clients, and
the quantity of OPC UA variable read-and-write requests that are in progress. If the
workload is greater than the sweep time, then the workload is broken up over one or
more sweeps of the PACSystems controller.
If there is not enough time left in the sweep to perform the OPC UA workload, then the
PLC will prioritize the timing commitments for User Logic execution and I/O scan. As a
result, the OPC UA server performance will be significantly slowed to accommodate the
other timing commitments.
Item Description
Considerations
The Sampling Interval determines the speed at which the controller can monitor data
changes. The Sampling Interval is not to exceed a rate at which a change in variable
value can be detected. However, the Sampling Interval does not guarantee the rate at
which a variable is sampled. If the controller has too large of a workload, the actual
timing of the sampling interval will be longer than the time requested, but the PLC will
still check for all data changes. These checks will occur before another sample is started;
no item will be skipped when the sampling interval time expires.
The Publishing Interval Timer determines the speed at which the OPC UA server sends
the detected value changes to the OPC UA client. No matter how fast the changes to data
in a subscription are detected, the data updates will not be sent to the client until the
next publishing interval. If sampled data changes are enqueued faster than they are
dequeued by publishing, then it is possible the change queue could fill up and new
samples will require a value to be discarded. The Queue Size setting determines how
many samples will be queued on the server-side. The Monitored Item setting determines
if the oldest or the newest value will be discarded if the monitored item queue has
become full.
Note: The Sampling Interval, Publishing Interval, Queue Size, and Discard Policy
(Oldest/Newest) are all available in the OPC UA protocol; however, it is possible that not
all OPC UA clients support adjusting each of these settings. For example, the UA Expert
OPC UA client does support each of these settings.
By default, the PACSystems CPU is set up for Normal Sweep Mode; however, this guide
will help users determine the controller’s communication time limit in three different
sweep modes: Normal Sweep Mode, Constant Sweep Mode, and Constant Window Mode.
These modes will operate concerning the Controller Communication window as follows:
This OPC UA task limit is only used when the controller is in Normal Sweep mode.
Additionally, when in the Normal Sweep mode, if the Controller Communication Window
tasks are complete before the limit timer expires then the PACSystems CPU will
immediately advance to the next sweep phase, which is the Backplane Communication
Window.
difference between these two modes is when the timer is started. In Constant Sweep
mode, the timer is started at the beginning of the PACSystems CPU sweep, but in Constant
Window mode, the timer is started at the end of the Output Scan phase of the sweep.
Use this information to determine how long in milliseconds will be allowed for OPC UA
tasks to execute in the Controller Communication window.
The following examples can be used to estimate how much time is dedicated to the OPC
UA protocol over the total time available
b. If the Controller Communication Window is set to 30 ms and the PLC’s sweep time is
about 120 ms, then about 30 ms/150 ms will be available for OPC UA
communication, which is about 1/5 of 20% of the time is permitted to be used by
OPC UA.
c. If Controller Communication is set to 10 ms and the PLC’s sweep time is about 840
ms, then about 10 ms / 850 ms will be available for OPC UA communication, which is
about 10 ms /850 ms or about 1/85 or about 1% of the time is permitted to be used
by OPC UA. In this case, the same OPC UA configuration would perform 10 times
slower than the similar configuration in example A and 5 times slower than the
similar configuration in example B.
Store the project to the controller and place the controller into Stop/Outputs
Disabled mode with the OPC UA server running.
2. Open UA Expert and connect to the controller with UA Expert and add the
Performance View document as seen in Figure 103: Add Performance View
Document.
OPC UA Server 267
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 11
GFK-2224AE Nov 2022
3. Drag and drop the variables that are expected to be subscribed to into the
Performance View Nodes section. Note the number of nodes added in Figure
104.
4. Select only the Read Registered configuration, use the full number of variables
in the Node Counts section, and set the Cycles: setting to 100 for iterations.
Press Start Test and wait for the Read Registered results to appear in the Log at
the bottom of the screen.
5. Interpret the results. This test informs the user how long it takes to read
monitored items assuming they all change every time. This should result in a
Min, Average, and Max time in milliseconds for how long it takes to update. Use
the Max time and this is a rough estimate of the time it takes to read a full
subscription assuming all variables have changed.
6. Remove all variables from the Nodes section to prepare for the next
measurement.
7. Important: Repeat steps 1 through 5 for each expected client subscription. The
max value should be summed for each pass through these steps. The maximum
number of subscriptions for PACSystems is 10 so no more than 10 passes
through steps 1 through 5 should be necessary to estimate the total base
workload for the PACSystems OPC UA server. The sum of the max times for all
subscriptions planned should be used as an estimate for the OPC UA protocol
workload.
EXAMPLES
a. If a system has a 10% sweep dedicated to OPC UA and a 100 ms OPC UA workload,
then the real-time subscription would take 1 second to execute.
100%
( ) ∗ 100 𝑚𝑠 = 10 ∗ 100 𝑚𝑠 = 1000 𝑚𝑠 𝑜𝑟 1 𝑠𝑒𝑐𝑜𝑛𝑑
10%
b. If a system has a 20% sweep dedicated to OPC UA and a 400 ms OPC UA workload,
then the real-time subscription would take 2 seconds to execute.
100%
( ) ∗ 400 𝑚𝑠 = 5 ∗ 400 𝑚𝑠 = 2000 𝑚𝑠 𝑜𝑟 2 𝑠𝑒𝑐𝑜𝑛𝑑
20%
Before beginning, the user will need to know the actual variable configuration and the
actual project running in an environment that is close to the production environment
that will be used for the PACSystems Controller. The user will also need to drag-and-drop
the variables into the Performance View Nodes to measure performance. This will allow
the user to measure the performance for a single subscription at a time with this view.
Note: The additional subscriptions will degrade the performance so the measured
number can only be used as an estimate for that subscription in isolation.
Note: The UA Expert client does not assume that all variables change every sampling
interval and instead only considers the actual changes it received during the test
procedure. If the PME project is not running as it would in a production environment,
add logic to artificially change the variables to closely simulate the actual real-world
performance of the system.
Section 12 Diagnostics
This chapter describes diagnostic techniques for a PACSystems Ethernet interface.
Diagnostics 271
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Refer to the PACSystems TCP/IP Ethernet Communications Station Manager User Manual,
GFK-2225, for information on how to access and use the Station Manager software.
Diagnostics 272
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Ethernet Interface
Initializing 1
(approx. 2-6 1
The Ethernet Interface is initialized by
seconds) ▪ Powering up the PLC
▪ Storing a new configuration to the PLC with changes
for the Ethernet Interface
E
E
Operational
Operational
▪ Full support for client and server capability
▪ Uses user-defined Advanced Parameters
Diagnostics 273
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
B
Connect a PC Software Loader
Software
and load new software.
Software corrupt
Loader
Did not
configure slot
• Use the PLC Programmer
using the PLC
configuration software to
C Programmer.
configure the interface then
CPU not
store the configuration to the
Waiting for communicating
PLC CPU.
Configuration with Ethernet
• Power cycle the PLC.
from PLC interface.
Blink behavior: Regular Periodic • Clear faults and Restart
(Condition can
Blinking interface.
last a maximum
of 5 minutes.)
Unrecoverable
See the list of blink codes on
hardware or
the next page.
runtime failure
Diagnostics 274
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Blink Blink
Description Description
Code Code
Undefined or Unexpected
0x12 0x42 Firmware Loader error
Interrupt.
Timer failure during power-up Unexpected watchdog timer
0x13 0x51
diagnostics. exception
DMA failure during power-up
0x14 0x52 Unexpected debug exception
diagnostics.
RAM failure during power-up Boot: Critical interrupt
0x21 0x61
diagnostics. exception
Stack error during power-up
0x22 0x62 Boot: Machine check exception
diagnostics.
Shared Memory interface error
0x23 0x63 Boot: Datastore exception
during power-up diagnostics.
Firmware CRC (cyclic redundancy
check) error during power-up or
Factory Test Boot: Instruction store
0x24 0x64
Note: CRC error or software exception
error during normal operation
causes Ethernet restart
Boot: External interrupt
0x25 Run time exception 0x65
exception
No mail communication available
0x26 0x66 Boot: Alignment exception
during software load
0x27 Serial EEPROM access exception 0x67 Boot: Program exception
Diagnostics 275
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Blink Blink
Description Description
Code Code
0x28 Serial EEPROM reset exception 0x68 Boot: System call exception
0x31 Machine check exception 0x69 Boot: PIT interrupt exception
0x32 Datastore exception. 0x71 Boot: FIT interrupt exception
0x33 Instruction store exception 0x72 Boot: WDT interrupt exception
Boot: Data cache TLB miss
0x34 Alignment exception 0x73
exception
Boot: Instruction cache TLB
0x35 Program exception 0x74
miss exception
0x36 System call exception 0x75 Boot: Debug exception
0x37 Unexpected IRQ exception 0x76 Boot: Flash memory CRC error
Boot: Unexpected ACFAIL
0x38 Data cache TLB miss exception 0x77
interrupt
Instruction cache TLB miss Boot: Unexpected Restart
0x39 0x78
exception pushbutton interrupt
0x41 BSP startup error
Diagnostics 276
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
For Ethernet interfaces, the leftmost 14 digits of fault extra data (underlined in the
example above) show the corresponding log Events (2 digits) and Entries 2, 3, and 4 (in
that order, 4 digits each).
The example above is reporting
▪ an Event 16,
▪ Entry 2=6,
▪ Entry 3=3, and
▪ Entry 4=5.
This information can be used to refer directly to detailed fault descriptions included in
the Exception Log Event tables in the PACSystems TCP/IP Ethernet Communications Station
Manager User Manual, GFK-2225 (In that document, refer to Appendix B, Exception Log
Events).
Diagnostics 277
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Diagnostics 278
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Diagnostics 279
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Diagnostics 280
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Status Description
Network Network
5 Time Time Reserved Reserved Network Time Locked
Locked Locked
A A
redundant redundant A redundant IP address is
6 Reserved Reserved
IP address IP address active
is active is active
LAN1 Port
LAN2 Port 2 (Bottom Port)
7 Reserved 1 @ 1000 Reserved Reserved
full-duplex
Mbps
Diagnostics 281
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Status Description
Any Any
Channel Channel
Error Error Any Channel Error Any Channel Error Any Channel Error
9
(error on (error on (error on any channel) (error on any channel) (error on any channel)
any any
channel) channel)
Resource Resource
14 Resource problem Resource problem Resource problem
problem problem
Module Module
Overtemp Overtemp
(RX3i rack- (RX3i rack-
15 Reserved Reserved Reserved
based based
ETM001-Jx ETM001-Jx
only) only)
LAN LAN
16 interface interface LAN interface OK LAN Interface OK LAN interface OK
OK OK
Diagnostics 282
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Status Description
Channel 1: Channel 1:
Modbus Modbus
TCP Client TCP Client - Channel 1: Channel 1: Channel 1:
- Reserved Reserved Modbus TCP Client - Modbus TCP Client - Modbus TCP Client -
18
SRTP SRTP Reserved Reserved Reserved
Client - Client - SRTP Client - Channel Error SRTP Client - Channel Error SRTP Client - Channel Error
Channel Channel
Error Error
Channels
Channels
2-16
2-16 Channels 2-16 Channels 2-16 Channels 2-16
(same
19-48 (same (same pattern as bits (same pattern as bits (same pattern as bits
pattern as
pattern as 17&18) 17&18) 17&18)
bits
bits 17&18)
17&18)
Channels
Channels
17–32
17–32 Channels 17–32
(same
49–80 (same Reserved Reserved (same pattern as bits
pattern as
pattern as 17&18)
bits
bits 17&18)
17&18)
Diagnostics 283
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
27
The EPXCPE205 has dual LAN mode enabled by default.
Diagnostics 284
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
The LAN interface Status bits monitor the health of the Ethernet interface.
Bit 4, Port 1B 100 Mbps (RX3i Ethernet Module) This bit is set to 1 when Port 1B is operating at 100 Mbps.
Diagnostics 286
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
The Channel Status bits provide runtime status information for each communication channel. Each
channel has two status bits; the meaning of the channel status bits depends upon the type of
communication performed on that channel.
Diagnostics 287
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Diagnostics 288
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
-
(Command Block address) IN FT - Function Faulted (logic)
This output also may indicate that no more COMMREQ functions can be initiated in the
ladder program until the Ethernet interface has time to process some of the pending
COMMREQ functions.
If the FT Output is set, the CPU did not transfer the Command Block to the Ethernet
interface. In this case, the other status indicators are not updated for this COMMREQ.
The Ethernet interface is unable to return a COMMREQ Status Word to the PLC logic
application.
Diagnostics 289
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Displaying the status word in hexadecimal form makes it easier to differentiate the high
and low bytes. This can be done using a MOVE WORD function block to display the
hexadecimal value within the ladder program.
Status Word in
Hex Format
High Low
00 00
The following tables list the error codes that are reported in the COMMREQ Status word
after the execution of a COMMREQ function.
Diagnostics 290
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Success or a Major Error Code appears in the low byte of the COMMREQ Status Word.
Hexadecimal values for the low byte are listed below. For many Major Error Codes,
additional information appears as a Minor Error Code in the high byte of the COMMREQ
Status Word. Hexadecimal values for the high byte are listed on the following pages.
Error Status
Major Error Code Description
(Hexadecimal)
Successful Completion. (This is the expected completion value in the
01H
COMMREQ Status word.)
Insufficient Privilege at server PLC. For a PACSystems or Series 90-70
02H server PLC, the minor error code contains the privilege level required for
the service request.
Protocol Sequence Error. The server CPU has received a message that is
04H
out of order. Contact Technical Support for assistance.
Service Request Error at server PLC. The minor error code contains the
05H
specific error code. See the following table of Minor Error codes.
Illegal Mailbox Type at server PLC. Service request mailbox type is either
06H
undefined or unexpected. Contact Technical Support for assistance.
The server PLC CPU’s Service Request Queue is full, usually due to heavy
CPU loading. The client should retry later. It is recommended that the
07H
client wait a minimum of 10 milliseconds before sending another service
request.
Illegal Service Request. The requested service is either not defined or not
supported at the server PLC. (This value is returned instead of the actual
0BH
service request error (01H), to avoid confusion with the normal successful
COMMREQ completion.) Contact Technical Support for assistance.
SRTP Error Code at the server. An error was detected at the SRTP server.
11H
See the following table of Minor Error codes.
Insufficient Privilege at client PLC. The minor error code contains the
82H
privilege level required for the service request.
Protocol Sequence Error. The CPU has received a message that is out of
84H
order. Contact Technical Support for assistance.
Service Request Error at the client PLC. The minor error code contains the
85H
specific error code. See the following table of Minor Error codes.
Illegal Mailbox Type. Service request mailbox type is either undefined or
86H
unexpected. Contact Technical Support for assistance.
The client PLC CPU’s Service Request Queue is full. The client should retry
87H later. It is recommended that the client wait a minimum of 10
milliseconds before sending another service request.
Illegal Service Request. The requested service is either not defined or not
8BH
supported. (This value is returned instead of the actual service request
Diagnostics 291
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Error Status
Major Error Code Description
(Hexadecimal)
error (01H), to avoid confusion with the normal successful COMMREQ
completion.). Contact Technical Support for assistance.
Client (Channels) error. See the following table of Minor Error codes.
90H (Some EGD command errors also use major code 90 when indicating the
same error condition as channels.)
Modbus/TCP error code at server. An error was detected at the
91H
Modbus/TCP server. See the following table of Minor Error codes.
A0H EGD Command error. See the following table of Minor Error codes.
12.9.3 Minor Error Codes for Major Error Codes 05H (at
Remote Server PLC) and 85H (at Client PLC)
Error Status
Minor Error Code Description
(Hexadecimal)
Remote
Client
Server
8F05H 8F85H Session already exists.
8E05H 8E85H Memory write is prohibited.
9005H 9085H Invalid PLC memory reference range.
9305H 9385H Text buffer length/count does not agree with request
parameters.
C105H C185H Invalid block state transition.
C305H C385H Text length does not match the traffic type.
C605H C685H Control Program (CP) tasks exist but the requestor is not logged
into the main CP.
C705H C785H Passwords are set to inactive and cannot be enabled or disabled.
C805H C885H Password(s) already enabled and cannot be forced inactive.
C905H C985H Login using a non-zero buffer size required for block commands.
CA05H CA85H The device is write-protected.
CB05H CB85H A comm or write verify error occurred during save or restore.
CC05H CC85H Data stored on the device has been corrupted and is no longer
reliable.
CD05H CD85H An attempt was made to read a device but no data has been
stored on it.
CE05H CE85H The specified device has insufficient memory to handle the
request.
CF05H CF85H The specified device is not available in the system (not present).
D105H D185H Packet size or total program size does not match the input.
Diagnostics 292
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Error Status
Minor Error Code Description
(Hexadecimal)
Remote
Client
Server
D205H D285H Invalid write mode parameter.
D505H D585H Invalid block name specified.
D605H D685H Total datagram connection memory exceeded.
D705H D785H Invalid datagram type specified.
D805H D885H Point length is not allowed.
D905H D985H Transfer type invalid for this Memory Type selector.
DA05H DA85H Null pointer to data in Memory Type selector.
DB05H DB85H Invalid Memory Type selector in a datagram.
DC05H DC85H Unable to find a connection address.
DD05H DD85H Unable to locate given datagram connection ID.
DE05H DE85H Size of datagram connection invalid.
DF05H DF85H Invalid datagram connection address.
E005H E085H Service in the process cannot log in.
E405H E485H Memory Type for this selector does not exist.
E905H E985H Memory Type selector not valid in context.
EA05H EA85H Not logged in to process the service request.
EE05H EE85H Could not return block sizes.
EF05H EF85H The programmer is already attached.
F005H F085H Request only valid in stop mode.
F105H F185H Request only valid from the programmer.
F205H F285H The invalid program cannot log in.
F405H F485H Invalid input parameter in the request.
F505H F585H Invalid password.
F605H F685H Invalid sweep state to set.
F705H F785H Required to log in to a task for service.
F805H F885H Invalid program name referenced.
F905H F985H Task address out of range.
FC05H FC85H I/O configuration is invalid.
FE05H FE85H No privilege for attempted operation.
FF05H FF85H A service request has been aborted.
Diagnostics 293
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
12.9.4 Minor Error Codes for Major Error Code 11H (at Remote
Server PLC)
Error Status
SRTP Error Code Description
(Hex)
0111H Generic SRTP error.
0211H The PLC is inaccessible.
0311H Reserved.
0411H Unexpected SRTP version encountered in the received message.
0511H Unrecognized SRTP message received.
0611H Data present in SRTP message, which should not contain data.
0711H Generic resource problem detected.
0811H SRTP message encountered in inappropriate connection state.
0911H Generic refusal by backplane driver to handle the request.
0A11H Recognized but unsupported SRTP message received.
0B11H Lost transaction in server.
0C11H Error sending SRTP PDU to the client PLC.
1411H Unable to allocate a text buffer from dual-port memory.
1711H Invalid text length detected in a mailbox message.
1811H An invalid number of destinations detected in a mailbox message.
1911H Invalid source detected in a mailbox message.
1A11H Invalid slot number detected in a mailbox message.
1B11H Invalid rack number detected in a mailbox message.
1D11H Bad text buffer address in dual-port memory.
2111H Unable to find control data required to send a mailbox message to the PLC.
2211H Timed out waiting for the availability of mail communications with the PLC.
Invalid task ID detected while attempting to send a mailbox message to the
2311H
PLC.
2411H Unable to send mailbox message to PLC because the mail queue is full.
2611H Unable to communicate with PLC.
Backplane driver not initialized or unable to acquire a dual-port memory
2711H
semaphore.
2A11H The backplane driver could not access the PLC.
2B11H Invalid binding on the message sent to the backplane driver.
The message could not be sent to its destination because the mailbox was
2C11H
not open.
The maximum number of transfers to the destination is already taking
2D11H
place.
Diagnostics 294
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Error Status
SRTP Error Code Description
(Hex)
The maximum number of transfers of this transfer type is already taking
2E11H
place.
2F11H Cannot obtain a backplane transfer buffer.
3011H Cannot obtain resources other than backplane transfer buffers.
3111H Connection ID or block transfer ID is not valid.
3211H Timed out waiting for PLC CPU response.
3311H The PLC CPU aborted the request.
3411H An invalid message type was specified.
3511H The specified task is not registered.
3611H The mailbox offset specified is invalid.
The backplane task could not be registered because the message response
3711H
handler was not specified.
The backplane task could not be registered because the unsolicited
3811H
mailbox message handler was not specified.
The backplane task could not be registered because a required parameter
3911H
was not specified.
3A11H More than the allowable byte length in a single transfer.
3B11H The bad sequence number in the request.
3C11H Invalid command in the request.
Response length does not match the length specified in the response
3D11H
qualifier.
Request failed because the PLC’s Service Request Processor is not
3E11H
initialized.
Request failed due to an error in the remote device, most likely running out
3F11H
of Dual-Port RAM text buffers.
Unable to free dual-port memory that was allocated for a connection or
4011H
block transfer area.
The backplane task could not be registered because the service request
4111H
handler was not specified.
No dual-port memory was allocated for the connection or block transfer
4211H
area needed to process the request.
Failure to register with backplane driver because the requested task is
4311H
already registered.
Request failed because an invalid field was identified in the request
4411H
mailbox qualifier.
Unable to send the request to the PLC because an internal message queue
E811H
is full.
Diagnostics 295
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Error Status
SRTP Error Code Description
(Hex)
Unable to send the request to the PLC because the text buffer type is
E911H
invalid.
Unable to send the request to the PLC because the mailbox utility function
EA11H
is invalid.
Unable to send the request to the PLC because the mailbox message is not
EB11H
specified.
Unable to send the request to the PLC because the internal message queue
EC11H
is not initialized.
Request failed due to mailbox error on the remote device. The remote
FE11H
device log will have more information.
2911H The backplane driver is not initialized.
2A11H The backplane driver could not access the PLC.
Request failed due to an invalid parameter detected in the remote device.
2F11H
The remote device log will have more information.
3011H The specified task is not registered.
Failure to register with backplane driver because the requested task is
3111H
already registered.
Unable to find the resource necessary for backplane driver to process a
3211H
service request.
Bad sequence number detected in the service request because it is already
3311H
in use.
Invalid data detected that prevents backplane driver from completing a
3411H
request.
3611H More than the allowable byte length in a single transfer.
4811H Memory resource problem detected.
4911H Network buffer resource problem detected.
4C11H Error detected while attempting to receive mailbox messages from the PLC.
4D11H Timed out waiting to obtain a backplane transfer buffer.
4E11H Timed out waiting to transfer a mailbox message to the PLC.
4F11H Timed out waiting for PLC CPU response.
Diagnostics 296
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
12.9.5 Minor Error Codes for Major Error Code 90H (at Client
PLC)
Error
Status Error Description
(Hex)
0190H Timeout expired before transfer completed; still waiting on transfer.
Period expired before transfer completed; still waiting on transfer.
Or, an attempt to establish a TCP connection with a Remote Server through a
gateway has failed (AA90H). Check the following:
0290H Make sure the Server is turned on.
Make sure cables are connected.
Make sure the Gateway is reachable from both the client and the server.
Make sure the switch is turned on when using a switch.
8190H COMMREQ data block too short for the command.
8290H COMMREQ data block too short for server PLC node address.
8390H Invalid server memory type.
8490H Invalid Program Name.
8590H Invalid Program Block Name.
8690H Zero server unit length is not allowed.
8790H The server unit length is too large.
8890H Invalid channel number.
8990H Invalid time unit for the period. (Maximum permitted 3965 hours)
8A90H The period value is too large.
8B90H Zero server memory starting address is not allowed.
8C90H Invalid client memory type.
8D90H Invalid server host address type.
8E90H Invalid IP address integer value. (Must be 0–255)
Invalid IP address class. (Must be valid Class A, B, or C IP address)
8F90H May also occur if the destination IP address in the COMMREQ is the same as the
sender’s IP address.
9090H Insufficient TCP connection resources to do requests.
9190H Zero local starting address is not allowed.
9290H Address length value invalid. Must be 4 for address type 1.
9390H COMMREQ data block too short for Program Block name (including 0 pad).
9490H COMMREQ data block too short for Program name (including 0 pad).
Internal API error. See Controller Fault Table or exception log for details. This
problem may occur due to the Ethernet interface being asked to perform beyond
9590H
its capacity. Try transferring less data per message or establishing fewer
simultaneous connections.
Diagnostics 297
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Error
Status Error Description
(Hex)
9690H Underlying TCP connection aborted (reset) by the server endpoint.
9790H Underlying TCP connection aborted by the client endpoint.
9890H The remote server has no Service Request Processor.
9A90H Response to session request did not arrive in proper order.
9B90H Session denied by server PLC.
9C90H Data response did not arrive in proper order.
9D90H Data response had an unexpected size.
Unrecognized COMMREQ command code, an invalid COMMREQ status word
9E90H address, or the Ethernet interface is not connected to the network. Check the
network cable and the connection to the network hub or switch.
A190H Invalid CRS word memory type.
A290H Failed an attempt to update the CRS word.
A390H Reserved.
A490H Reserved.
A590H Reserved.
A690H Invalid bitmask.
A790H Unable to connect to the remote device.
Channel Resources in Use. Try the command again; a resource will become
A890H
available.
“Establish Read/Write/Send Info Report Channel” COMMREQ was received while an
A990H
Abort was in progress.
An attempt to establish a TCP connection with a Remote Server has failed. Check
the following:
AA90H Make sure the Server is turned on.
Make sure cables are connected.
Make sure the switch is turned on if using a switch.
A COMMREQ was discarded because the application program issued the
AB90H COMMREQ before the COMMREQ Status Word for the previous COMMREQ was
set.
AC90H A protocol error occurred while communicating with the local PLC.
AD90H A TCP Timeout occurred while communicating with the Remote PLC.
AE90H A protocol error occurred while communicating with the local PLC.
B490H The channel that the application is trying to open is already open.
B590H The channel the application is trying to access is owned by a different protocol.
B690H COMMREQ specified an invalid Modbus function code.
B790H COMMREQ specified an invalid Modbus unit ID.
B890H COMMREQ specified an invalid number of subrequests.
B990H A COMMREQ subrequest specified an invalid record number.
Diagnostics 298
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Error
Status Error Description
(Hex)
BA90H COMMREQ specified an invalid Linger Time. Valid range is 10 to 60 seconds.
(Redundancy only) COMMREQs commands are not allowed when the Redundant
C090H
IP address is not active at this Ethernet interface.
FF90H Abort in Progress on a Channel
12.9.6 Minor Error Codes for Major Error Code 91H (at Remote
Modbus/TCP Server)
The Minor codes for Major Error Code 91H indicate standard Modbus exception codes
returned from the remote Modbus/TCP server/slave device. (These Modbus exception
codes are taken from Modbus Application Protocol V1.1b, December 28, 2006.)
Error Status
Error Description
(Hex)
Illegal function. The function code received in the query is not an allowable
0191H
action for the server. (Modbus exception code 01 ILLEGAL FUNCTION)
Illegal Data Address. The data address received in the query is not an
allowable address for the server. The combination of the reference number
0291H
and transfer length is invalid. (Modbus exception code 02 ILLEGAL DATA
ADDRESS)
Illegal Data Value. A value in the query field is not an allowable value for the
server. This indicates a fault in the remainder of the request, such as that
0391H the implied length is incorrect. It specifically does NOT mean that a data
item submitted for storage in the server has an incorrect value. (Modbus
exception code 03 ILLEGAL DATA VALUE)
Slave Device Failure. An unrecoverable error occurred while the server was
0491H attempting to perform the requested action. (Modbus exception code 04
SLAVE DEVICE FAILURE)
Acknowledge. Used for Programmer operations only. Our Modbus/TCP
0591H server does not support Modbus programmer operations. (Modbus
exception code 05 ACKNOWLEDGE)
Slave Device Busy. The server is unable to accept and process handle this
0691H
Modbus request. (Modbus exception code 06 SLAVE DEVICE BUSY)
Negative Acknowledge. An internal server error occurred while attempting
0791H to process a Modbus request. (Modbus exception code 07 NEGATIVE
ACKNOWLEDGE)
Diagnostics 299
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Error Status
Error Description
(Hex)
Memory Parity Error. (Function codes 20 and 21 only.) The extended file area
0891H failed to pass a consistency check. (Modbus exception code 08 MEMORY
PARITY ERROR)
0991H Reserved. (Modbus exception code 09 RESERVED)
Gateway Path Unavailable. Gateway was unable to allocate a PATH to
0A91H process the request. Usually means the gateway is misconfigured or
overloaded. (Modbus exception code 10 GATEWAY PATH UNAVAILABLE)
Gateway Target No Response. No response was obtained from the target
0B91H device. Usually means that the device is not present on the network.
(Modbus exception code 11 GATEWAY TARGET NO RESPONSE)
Diagnostics 300
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
12.9.7 Minor Error Codes for Major Error Code A0H (at Client
PLC)
Diagnostics 301
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
The EGD Management Tool is not automatically installed when you install the
Programmer. To install the EGD Management Tool, look in the directory where you
installed the programmer and you will find a subdirectory named EGD Installs. In that
directory, you will find a file named EgdManagementToolSetup.msi. Double-click on this
file to install the EGD Management Tool.
To run the EGD Management Tool, select the Ethernet Global Data node in the Navigator
and right click. Select Launch EGD Management Tool. The EMT will begin execution in a
separate frame on your desktop.
Diagnostics 302
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
The right side of the screen shows a graphical representation of the EGD network based
on the configuration data stored in the EGD Configuration Server. EGD collections are
displayed as a folder icon. The navigator on the left side allows specific devices,
exchanges, and variables in the configuration to be examined. Properties for these
elements are shown in the property pane at the lower left.
The EGD Management Tool displays devices and networks based on the configuration
information in the EGD Configuration Server for the machine it is running on. Using the
options menu, you can configure the server information much as you do for the
programming tool, and also set options for the online operation of the tool. Be aware
that changing the server configuration will change it for all tools running on that
machine, including the programming software.
In addition to the online operations described below, the EGD Management Tool has a
number of offline capabilities (such as View/Reports) for analyzing the Ethernet Global
Data configuration. See the EGD Management Tool help for more information.
The EGD Management Tool monitors the devices on the Ethernet Global Data network
provided it has access to that network. To have access to the EGD network, the computer
running the EGD Management Tool must have a Network Interface Card that connects to
the EGD network. Consult with your local network administrator if you need help
connecting the computer to the Ethernet Global Data network.
The screen below shows the EGD Monitoring Tool connected to and monitoring an EGD
network.
Devices that have a red ‘x’ are not responding to communications from the EGD
Management Tool. Devices that have a yellow triangle have some kind of error or
warning condition that may require attention. Use the browser pane to select the device
Diagnostics 303
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
to get further information about the failures being reported. The EGD Management Tool
reports a configuration mismatch for PLCs that have multiple Ethernet interfaces. Only
one of the interfaces in a PLC is queried by the EGD Management Tool, so only a subset
of the exchanges in the PLC is visible online through that interface.
Online information is only available for EGD Class 2 devices (devices that support the
EGD commands). This includes all PACSystems controllers.
When the EGD Management Tool is used online, it periodically sends Ethernet Global
Data commands to each device. This may have a performance impact on the network
and the devices on the network. Before using the EGD Management Tool in a production
environment, be sure to assess the performance impact of its use on your application.
The EGD Management Tool can display detailed information for each exchange in an
EGD Class 2 device such as a PACSystems controller. Selecting the Exchanges node for
the device in the navigator pane will display the list of exchanges for the device.
Configuration Summary
Selecting the Configuration Summary tab displays information about the exchanges
defined in the device.
Diagnostics 304
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
The configuration summary data for each exchange has the following information:
Exchange –The name of the exchange as it is stored in the EGD configuration server
Producer ID –The producer ID of the exchange as it is stored in the EGD configuration
server
Destination –The destination IP address for the exchange
Mode – Unicast, Multicast, or Broadcast based on the mode of the exchange
Type – Producer or Consumer depending on the type of the exchange
Configuration Time –The configuration timestamp of the exchange as it is stored in the
EGD configuration server
Signature –The signature value of the exchange as it is stored in the EGD configuration
server
Length –The byte size of the exchange as it is stored in the EGD configuration server
Period –The production period for a produced exchange or the consume timeout for a
consumed exchange as it is stored in the EGD configuration server
The statistics data for each exchange has the following information:
Exchange –The name of the exchange as it is stored in the EGD configuration server
Configuration Time –The date and time that the configuration for the exchange was
created
Diagnostics 305
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Due Time –The date and time that a sample is due. For a produced exchange, this is the
time that the next sample will be produced. For a consumed exchange, this is the time at
which the exchange will time out if data is not received
Status –Status variable of the exchange. For a produced exchange, the status will be
Producing if the exchange is actively being sent to the network and Pending if the
exchange is defined but not producing. A Pending status in a PACSystems exchange may
indicate that the controller has its I/O disabled thus stopping the production of EGD. For
a consumed exchange, the status will be Healthy if no timeout has occurred for the
exchange and Unhealthy if the exchange is timed out
Length –The byte size of the data for the exchange
Message Count –The number of samples transferred on the exchange
Missed Count –The number of samples that were missed on the exchange. Missed
samples may indicate issues with the underlying Ethernet network or overloading of the
consuming device
Refresh Errors –The number of timeouts that have occurred for a consumed exchange
Produced Variables
Expanding the Exchanges node in the navigator pane displays the list of exchanges for
the device as recorded in the EGD Configuration Server. Selecting an exchange brings up
a list of variables for that exchange as shown below. This can be used to look at the
details of the data for an exchange.
Figure 115: EGD Management Tool Displaying List of Variables for an Exchange
Diagnostics 306
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
When the PLC CPU attempts to initiate COMMREQs to the Ethernet interface more
rapidly than the Ethernet interface can accept them, the COMMREQ delivery will fail. The
fault output of the COMMREQ function block will be set and the COMMREQ will not be
delivered to the Ethernet interface. In this case, the PLC logic program should attempt to
initiate the COMMREQ on another sweep after a very short delay. This condition may
arise when the logic Program attempts to initiate greater than 16 COMMREQs in the
same logic sweep.
Sustained heavy COMMREQ delivery from the PLC CPU to the Ethernet interface can use
a considerable portion of the Ethernet interface’s processing capability. Under heavy
COMMREQ load, the Ethernet interface may discard some received COMMREQs until it is
once again able to process further COMMREQs. In such cases, the Ethernet interface
increments the “CmrqDscd” tally; this tally is available via the TALLY C Station Manager
command.
Under sustained extremely heavy COMMREQ load, the Ethernet interface may not
respond to Station Manager commands and possibly some network communications. A
COMMREQ fault may be logged in the Controller Fault Table (see Controller Fault Table
Descriptions, earlier in this chapter). If this occurs, first switch the PLC CPU to STOP
mode, which ceases COMMREQ delivery to resume normal Ethernet operation. Then
modify the PLC logic application to reduce the COMMREQ traffic to a manageable level.
PLC timeout errors may occur when the SRTP traffic to the Ethernet interface exceeds
the PLC’s ability to process the requests, or when the PLC is unable to deliver mail to the
Ethernet interface. PLC Timeout errors will take down an SRTP Server connection.
Therefore, the remote SRTP client must reestablish a new SRTP connection to the
Ethernet interface.
This error is indicated in the Controller Fault Table as:
Backplane communication with controller fault; lost request
with exception Event = 8, Entry 2 = 8
These errors may also be accompanied by any of the following:
Diagnostics 307
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Note: The rack-based Ethernet modules use the Backplane Communications Window.
Diagnostics 308
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
component(s) that are unable to handle the traffic volume. Consult your network
administrator for assistance.
▪ The SRTP channel timeout and period include the time required to establish the
TCP connection. It is important to consider the connection time when configuring
these values. If more than one SRTP channel is being established and the
PACSystems server has just been restarted or updated with a new Hardware
Configuration, the channel timeout and period should be more than one second.
This allows sufficient time for the high level of TCP traffic required to establish new
network connections. When first establishing a channel, a channel timeout lower
than one second may result in a 0190H (channel timeout) COMMREQ status and a
channel period lower than one second may result in a 0290H (period expired error).
When using Ethernet Global Data, the produced exchange (defined at the producer)
must agree with the consumed exchange (defined at the consumer). The consumer
generates an error when the size of an exchange received from the network differs from
the configured size for that consumed exchange.
This error is indicated in the Controller Fault Table as:
“LAN system-software fault; resuming”
with exception Event = 28, Entry 2 = 1d
As this error is generated each time the mismatched exchange is received, the Ethernet
exception log can quickly fill up with mismatch error events.
If the consumer wishes to ignore certain portions of a consumed exchange, be sure that
the length of the ignored portions is correct. The ignored portion is specified as a byte
count.
Diagnostics 309
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
Sustained heavy EGD and/or SRTP Server load can utilize all processing resources within
the Ethernet interface, effectively locking out the Station Manager function. The Station
Manager appears inoperative under either local or remote operation. The Ethernet
interface always gives higher priority to data communication functions than to the
Station Manager. When the processing load is reduced, the Station Manager becomes
operative once again.
This condition is not reported to the Controller Fault Table or Ethernet exception log.
To conserve network data buffer resources, the CPU processes only one ICMP control
message at a time. An ICMP Echo (ping) request that arrives while the CPU is processing
another ICMP control message is discarded. When multiple remote hosts attempt to
ping the CPU at the same time, some individual ping requests may be ignored
depending upon the timing of the ping requests on the network.
The CPU may initiate ping requests to another host on the network via the “ping” Station
Manager command. The ping request sequence is restricted to one remote host at a
time.
Discarded ping requests are not reported to the Controller Fault Table or Ethernet
exception log.
Diagnostics 310
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
If desired, the TCP connection timeout duration may be adjusted via AUP parameters.
See Configuring Advanced User Parameters to configure and use AUP parameters. The TCP
connection timeout interval (in seconds) is calculated as:
TimeoutSeconds = wkal_idle + ( (wkal_cnt + 1) wkal_intvl )
For example, the following set of AUP parameters will establish the TCP connection
timeout as 25 seconds:
wkal_idle = 10
wkal_cnt = 2
wkal_intvl = 5
Note that the TCP connection timeout interval applies to all TCP-based connections at
this Ethernet interface. This includes all SRTP, Modbus/TCP, FTP, and (where supported)
webserver communications. To allow for normal TCP reconnection, any adjusted TCP
connection timeout must exceed the longest application data transfer interval.
The underlying TCP connection timeout is normal expected behavior and is consistent
with our other PLC products.
The network programmer attempts to use a special “privileged” SRTP server connection
at the Ethernet interface to establish and maintain a connection even under heavy load
due to EGD and other SRTP connections. The Ethernet interface supports only one such
privileged connection. When the maximum number of privileged connections is in use,
no other privileged connections are permitted until a current privileged connection is
terminated. This normally occurs when the network programmer disconnects from the
target PLC.
When the programmer-PLC network connection is abruptly broken (not the orderly
termination performed during disconnection), the SRTP server connection and its
underlying TCP connection remain alive until either an SRTP inactivity timeout (see 1.4.2,
SRTP Inactivity Timeout details) occurs (20 –30 seconds), or the TCP connection
eventually times out (about 7 minutes). If the maximum privileged connections are in use
and the programmer reconnects during this interval, it obtains a new, non-privileged
connection. Under heavy load at the Ethernet interface, the programmer may experience
sluggish response over this non-privileged connection. If this occurs, you can manually
disconnect and reconnect the programmer after the previous connection has timed out.
Upon reconnection, the programmer should once again obtain a privileged connection.
Diagnostics 311
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
EGD Commands support only one pending EGD command from a client device to each
server device. Attempts to issue a second EGD command from a client to the same server
before completion of the first command will result in an error. Some examples are:
1. The logic application issues a second EGD Command COMMREQ to the same
remote server, perhaps from a different location in the logic program.
2. The EGDCMD Station Manager command issues a command to the same remote
server device as the logic application.
The Advanced User Parameter (AUP) named “chct_comp” provides greater compatibility
with existing Host Communication Toolkit devices. Some Host Communication Toolkit
devices generate incorrectly-encoded SRTP messages. In some cases, PACSystems
Ethernet interfaces detect and report SRTP encoding errors that were ignored by
previous Series 90 products; these errors cause the PACSystems SRTP server to drop the SRTP
connection to the Host Communications Toolkit device. If possible, the Host Communications
Toolkit device should be upgraded so that it will generate properly-encoded SRTP messages. If the
device cannot be upgraded, the “chct_comp” AUP parameter can be used to tell the
PACSystems Ethernet interface to ignore known SRTP errors that were not detected by
previous Series 90 products.
The PLC logic application program should generally wait for a response from each
COMMREQ function block before activating another COMMREQ function block to the
same endpoint. Extremely heavy COMMREQ delivery loading, such as activating the
same COMMREQ every logic sweep, can prevent normal SRTP, Modbus, EGD, and Station
Manager operation. During such loading, the Ethernet LAN LED may be frozen. Under
extreme COMMREQ loading, the Ethernet interface may automatically restart.
Consumed EGD exchanges received from the network normally receive accelerated
processing for increased overall EGD performance. This accelerated processing can
preempt EGD production activity, possibly delaying the transmission of produced
exchanges to the network. Such delay varies with network loading and the volume of
consumed exchanges. In applications requiring minimal produced exchange timing
variability, the consumed exchange acceleration may be disabled via the “gc_accel” AUP
parameter (See Appendix A: for details of the “gc_accel” parameter). Under extreme
network load, accelerated processing of the incoming EGD samples may consume so
Diagnostics 312
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 12
GFK-2224AE Nov 2022
much processing time that the watchdog timer for the network interface expires and the
network interface is reset.
Communication channel operation always includes updating the Channel Status Bits
(located within the Ethernet Status data) into PLC memory, which occurs when the PLC
scans inputs from the Ethernet module. At least one PLC input scan must occur for each
data transfer on a channel, so the channel can run no faster than the PLC scans the
Ethernet Status data. When the Ethernet interface is configured to use an I/O Scan Set
that runs more slowly than the PLC sweep, each channel must wait until the next time
that its scan set runs to transfer its Channel Status bits. This can reduce channel
performance.
If the Ethernet interface is configured to use an inactive I/O Scan Set, the Channels
Status bits will not be transferred, and channel operations will not complete.
Diagnostics 313
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 13
GFK-2224AE Nov 2022
13.1 IP Addressing
Each TCP/IP node on a network must have a unique IP address. The TCP/IP Ethernet
interface is such a node, as is a PC running TCP/IP. There may be other nodes on the
network that are not involved with communications to the PLCs, but no matter what
their function, each TCP/IP node must have its own IP address. It is the IP address that
identifies each node on the IP network (or system of connected networks). The term
“host” is often used to identify a node on a network.
The IP address is 32 bits long and has a netid part and a hostid part. Each network is a
Class A, Class B, or Class C network. The class of a network determines how an IP
address is formatted and is based on the number of bits in the netid part of the IP
address.
01 8 16 24 31
Class A 0 netid hostid
01 8 16 24 31
Class B 1 0 netid hostid
01 2 8 16 24 31
Class C 1 1 0 netid hostid
In general, the netid part is assigned by the Internet authorities and the hostid part is
assigned by your local network administrator. The class of the network determines the
number of hosts that can be supported. A Class A network can support 224-2 (16,777,214)
hosts, Class B, 216-2 (65,534) hosts, and Class C, 28-2 (254) hosts. The minus 2 refers to
host numbers reserved for the network itself and the local broadcast.
Each node on the same physical network must have an IP address of the same class and
must have the same netid. Each node on the same physical network must have a
different hostid thus giving it a unique IP address.
Network Administration 314
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Section 13
GFK-2224AE Nov 2022
10.0.0.1
To determine the class of an IP address, examine the first integer in its dotted-decimal IP
address and compare it with the range of values in the following table.
RFC 1918 reserves IP addresses in the following ranges to be used for private networks.
10.0.0.0 – 10.255.255.255 (Class A)
172.16.0.0 – 172.31.255.255 (Class B)
192.168.0.0 – 192.168.255.255 (Class C)
Class A IP Addresses in the 127.xxx.xxx.xxx range are reserved for loopback addressing.
A network packet using a loopback destination address is not transmitted on the
network but instead is processed by the same device as if it were received from the
network.
PACSystems Ethernet interfaces recognize only the IP address 127.0.0.1 as a loopback
address. All other addresses in the range 127.0.0.2 – 127.255.255.255 are ignored and do
not provide loopback operation.
Each interface on a LAN must have a unique IP Address and a non-overlapping IP subnet.
This is configured in PME. Care must be taken to survey the entire connected network
architecture to tabulate the IP addresses and IP subnets already in use, both on the local
networks and any of its routed subnets connected with a gateway. Never assign a
conflicting IP Address or configure duplicate IP subnets.
The following examples would be problematic:
Problem example #1:
The issue demonstrated in Figure 14 is that requests entering one CPE330 interface can
be routed out the other interface since both CPE330 Ethernet ports have been
configured to be on the same network (255.255.0.0) but are physically connected to
separate networks. Avoid this by assigning non-overlapping Subnets.
LAN1
IP 192.168.0.5
Subnet Mask 255.255.255.0
Gateway 192.168.0.250
LAN1 and LAN2 on the CPE330 are initially configured with the following problematic IP
parameters:
LAN1 LAN2
IP 10.10.0.1 192.168.0.1
Subnet Mask 255.255.255.0 255.255.255.0
Gateway 10.10.0.249 0.0.0.0
The user intends to communicate between the remote device and CPE330 LAN1 (Figure
118). IP Address routing allows the CPE330 to receive the remote IP requests through
the respective gateways (192.168.0.250 for the remote node and 10.10.0.249 for CPE330
LAN1). However, since CPE330 LAN2 shares the same IP subnet as the remote network
(192.168.0.x), responses may be routed to the local 192.168.0.x network rather than to
the remote network (Figure 119).
The duplicate IP subnet in the example must be eliminated. One way to do this is simply
to change the IP Address assigned to CPE330 LAN2 from 192.168.0.1 to 192.168.1.1
thereby creating a non-overlapping 192.168.1.x network. In short, consider the totality of
the network when assigning IP subnets and IP Addresses.
13.2 Gateways
Gateways (also known as routers) connect individual physical networks into a system of
networks. When a node needs to communicate with a node on another physical network,
a gateway transfers the data between the two networks.
A
172.16.0.1
Network 1
172.16.0.2
G Gateway
172.17.0.3
B C
172.17.0.1 172.17.0.2
Network 2
When host B with IP address 172.17.0.1 communicates with host C, it knows from C’s IP
address that C is on the same network. In an Ethernet environment, B can then resolve
C’s IP address to a MAC address (via ARP) and communicate with C directly.
When host B communicates with host A, it knows from A’s IP address that A is on
another network (the netids are different). To send data to A, B must have the IP address
of the gateway connecting the two networks. In this example, the gateway’s IP address
on Network 2 is 172.17.0.3. This address would be configured in the Ethernet interface’s
module configuration for PLC B as its default gateway address.
Note that the gateway has two IP addresses (172.16.0.2 and 172.17.0.3). The first must
be used by hosts on Network 1 and the second must be used by hosts on Network 2. To
be usable, a host’s gateway must be addressed using an IP address with a netid matching
its own.
Subnet addressing is an extension of the IP address scheme that allows a site to use a
single netid for multiple physical networks. Routing outside the site continues as usual
by dividing the IP address into a netid and a hostid via the class.
The standard format for the netid bits and hostid bits for an IP address is a Class B
network is shown below.
Inside a site, the subnet mask is used to re-divide the IP address into a custom netid
portion and hostid portion. Consider adding another physical network to Network 2 (a
Class B network) in the previous example. The result is shown in the figure below.
Selecting the subnet mask shown below would add two additional netid bits allowing for
four physical networks addressed as 0, 64, 128, and 192. The added subnet bits are
normally taken from the hostid bits adjacent to the netid and the subnet mask identifies
these bits.
The bits in the subnet mask correspond one to one with the Internet address. The bits in
the mask that are 1 treat the corresponding bits in the IP address as part of the netid
bits. The bits in the mask that are 0 treat the corresponding bits as part of the hostid bits.
In effect, two bits of the Class B hostid have been used to extend the netid, creating an
extended netid, or subnetid. Each unique combination of bits in the part of the hostid
where subnet mask bits are 1 specifies a different physical network.
The new network configuration dividing Network 2 into Subnets 2.1 and 2.2 is shown in
Figure 123.
A
172.16.0.1
Network 1 172.16.0.2
G1 Gateway
B C
172.17.64.3
172.17.64.1 172.17.64.2
(Sub)Network 2.1
172.17.64.4
D G2 Gateway
E
172.17.128.3
172.17.128.1 172.17.128.2
(Sub)Network 2.2
Here, a second network with Hosts D and E has been added. Gateway G2 connects
Subnet 2.1 with Subnet 2.2. Hosts D and E will use Gateway G2 to communicate with
hosts, not on Network 2.2.
Hosts B and C will use Gateways G1 and G2 to communicate with hosts, not on Network
2.1. When B is communicating with D, G2 (the configured Gateway for B) will route the
data from B to D through Gateway G2.
Host A will use Gateway G1 to communicate with hosts, not on Network 1.
Supernetting is a technique used to combine two smaller networks into a larger network
by extending the host portion of the subnet mask and reducing the network portion.
Supernetting works only with adjacent networks that share the same network id value,
such as networks 1 and 2 in this example Figure 124.
As with subnets, the subnet mask is used to divide the IP address into a custom netid
portion and hostid portion.
For example, the two networks 10.0.117.0 and 10.0.116.0 can be combined into a larger
10.0.116.0 network if the subnet mask (Figure 124) 255.255.254.0 is applied to both
addresses.
A
10.0.116.1
Network 1
10.0.116.2
G Gateway
10.0.117.3
B C
10.0.117.1 10.0.117.2
Network 2
28
Supported by RX3i CPE302, CPE305 and CPE310 models.
Configuring Advanced User Parameters 324
PACSystems™ RX3i and RSTi-EP TCP/IP Ethernet Communications User Manual Appendix A
GFK-2224AE Nov 2022
EGD provides a UDP port parameter and host group IP address parameter for each of 32 possible host groups
(1-32). The parameter formats for each host group are shown below. XX specifies host group 1-32.
gXX_udp UDP port for host group XX 18246 (4746H) 1 – 65535 (ffffH)
Only the gdata_port
and gXX_udp
parameters may share
the same UDP port
number. All other UDP
port number
parameters in the AUP
file must use unique
port numbers.
gXX_addr Multicast host group IP Address (must be Class D 224.0.7.XX 224.0.0.2 –
address) 239.255.255.255
gXX_ttl IP time-to-live for host group (multicast) messages (hop 1 (1H) 0 – 255 (00ffH)
count)
Note: If you configure different TTL values for EGD exchanges with Unicast and Broadcast
destination types on IC695ETM001-Jx, the largest value will be used for all Unicast and
Broadcast exchanges.
Other models have broadcast fixed to a TTL of 1.
If you configure multiple gXX_ttl values for different Multicast exchanges, the smallest value
among the configured parameters will be used for all exchanges.
This applies only to PACS Ethernet interface modules.
SNTP Local Time Corrections (LTC) and Daylight Savings Time (DST) Default Range
Parameters (task n)
nltc_offset This signed value indicates the hours and minutes of the offset of 0:00 -12:45 to +14:45
local time from UTC. The minutes must be specified by one of four
values, 0, 15, 30, or 45.
ndst_offset The offset between DST and standard time in hours and minutes, None 0:15 to 1:00
where the minutes are limited to the values 0, 15, 30, and 45.
ndst_start_ The month when DST begins. None 1 – 12
month
ndst_start_ The day of the week when DST begins. None 1–7
day 1 = Sunday
7 = Saturday
ndst_start_ The number of the occurrence of ndst_start_day in the month. (1 is None 1–4
week the first occurrence.)
ndst_start_ The time, in hours and minutes, when DST begins. None 0:00 – 23:59
time
ndst_ref_ Indicates the time zone of reference for ndst_start_time and None L or U
zone ndst_end_time.
L = Local Time
U = UTC
ndst_end_ The month when DST ends. Note that in the southern hemisphere, None 1 – 12
month this value will be smaller than the start value.
ndst_end_day The day of the week when DST ends. None 1–7
1 = Sunday
7 = Saturday
ndst_end_ The number of the occurrence of ndst_end_day in the month. (1 is None 1–4
week the first occurrence.)
ndst_end_ The time, in hours and minutes, when DST ends. None 0:00 – 23:59
time
System
Memory CPE330/400 and CPL410 ETM001-
CPE302/305/310 ETM001-Jx
Parameters CPE205/210/215/220/240 Kxxx
(task b)
Backplane
Driver CPE330/400 and CPL410 ETM001-
CPE302/305/310 ETM001-Jx
Parameters CPE205/210/215/220/240 Kxxx
(task c)
crsp_tout AUP File Default Value Only AUP File AUP File
chct_comp AUP File Default Value Only AUP File AUP File
cstorm AUP File Default Value Only AUP File AUP File
cnostorm AUP File Default Value Only AUP File AUP File
SRTP Client
(Channels) CPE330/400 and CPL410 ETM001-
CPE302/305/310 ETM001-Jx
Parameters CPE205/210/215/220/240 Kxxx
(task h)
hconn_tout AUP File Default Value Only AUP File AUP File
ittl AUP File Default Value Only AUP File AUP File
ifrag_tmr AUP File Default Value Only AUP File AUP File
Network
Interface CPE330/400 and CPL410 ETM001-
CPE302/305/310 ETM001-Jx
Parameters CPE205/210/215/220/240 Kxxx
(task l)
Modbus
TCP/IP CPE330/400 and CPL410 ETM001-
Server CPE302/305/310 ETM001-Jx
CPE205/210/215/220/240 Kxxx
Parameters
(task m)
SNTP Time
Transfer to CPE330/400 and CPL410 ETM001-
CPU CPE302/305/310 ETM001-Jx
CPE205/210/215/220/240 Kxxx
Parameters
(task n)
ncpu_sync AUP File Default Value Only AUP File AUP File
Unicast
SNTP AUP
CPE330/400 and CPL410
Parameters ETM001-
(task n) CPE302/305/310 CPE205/210/215/220/240 ETM001-Jx Kxxx
nprimary AUP File Default Value Only AUP File AUP File
nsecondary AUP File Default Value Only AUP File AUP File
npollinterval AUP File Default Value Only AUP File AUP File
SNTP Local
Time
Corrections
(LTC) and CPE330/400 and CPL410 ETM001-
Daylight CPE302/305/310 ETM001-Jx
CPE205/210/215/220/240 Kxxx
Savings
Time (DST)
Parameters
(task n)
Modbus
TCP/IP CPE330/400 and CPL410 ETM001-
Client CPE302/305/310 ETM001-Jx
CPE205/210/215/220/240 Kxxx
Parameters
(task o)
Ethernet
Redundancy CPE330/400 and CPL410 ETM001-
CPE302/305/310 ETM001-Jx
Parameters CPE205/210/215/220/240 Kxxx
(task q)
rdipckival AUP File Default Value Only AUP File AUP File
rdiparpivl AUP File Default Value Only AUP File AUP File
rdipnumarp AUP File Default Value Only AUP File AUP File
rdiparplog AUP File Default Value Only AUP File AUP File
UDP
CPE330/400 and CPL410
Parameters ETM001-
(task u) CPE302/305/310 CPE205/210/215/220/240 ETM001-Jx Kxxx
SRTP
CPE330/400 and CPL410
Parameters ETM001-
(task v) CPE302/305/310 CPE205/210/215/220/240 ETM001-Jx Kxxx
vconn_tout AUP File Default Value Only AUP File AUP File
wnodelay AUP File Default Value Only AUP File AUP File
wkal_idle AUP File Default Value Only AUP File AUP File
wkal_cnt AUP File Default Value Only AUP File AUP File
wkal_intvl AUP File Default Value Only AUP File AUP File
Application
Driven Data CPE330/400 and CPL410 ETM001-
Exchange CPE302/305/310 ETM001-Jx
CPE205/210/215/220/240 Kxxx
(ADDE) (task
?)
The following example shows a sample AUP file which specifies the Ethernet speed for
the Ethernet ports.
A_0_4
lspeed1a=2 ; sets Ethernet speed for Port 1A to 100 Mbps
lspeed1b=2 ; sets Ethernet speed for Port 1B to 100 Mbps
Configuring Advanced User Parameters 339
Support Links
Home link: http://www.Emerson.com/Industrial-Automation-Controls
Europe
Phone: +800-4444-8001
+420-225-379-328 (If toll-free option is unavailable)
+39-0362-228-5555 (from Italy - if toll-free 800 option is
unavailable or dialing from a mobile telephone)
Customer Care (Quotes/Orders/Returns): [email protected]
Technical Support: [email protected]
Asia
Phone: +86-400-842-8599
+65-6955-9413 (All other countries)
Customer Care (Quotes/Orders/Returns): [email protected]
Technical Support: [email protected]
Note: If the product is purchased through an Authorized Channel Partner, please contact the seller directly for any
support.
Emerson reserves the right to modify or improve the designs or specifications of the products mentioned in this manual
at any time without notice. Emerson does not assume responsibility for the selection, use or maintenance of any
product. Responsibility for proper selection, use and maintenance of any Emerson product remains solely with the
purchaser.
340