Handling Broken I/O Connections

It is important in many industrial applications to detect faults quickly. One such fault is losing communication to EtherNet/IP I/O. EtherNet/IP supports a variable timeout value, which is expressed in terms of Requested Packet Intervals (RPIs). For example, the ControlLogix establishes its EtherNet/IP I/O connections with a timeout of 32 RPIs. Therefore, an RPI of 5.0 ms will have a timeout of 32 x 5.0 ms or 160 ms.

When either device in an I/O connection does not receive a packet from the other device for the timeout interval, it closes the connection and typically indicates this condition to the main program. The method of indicating this condition depends on the actual device. This topic describes the methods used by the RMC and ControlLogix.

Handling Broken I/O Connections in the RMC

The following conditions are defined as a broken connection in the RMC ENET:

Note: All of these conditions only apply to the controlling client and its connection. No broken connection actions will be done when an Input Only connection is broken.

 

The action taken when any of these conditions occur is selectable by the Broken Connection Action byte of the Configuration Data described in Controlling the RMC over EtherNet/IP I/O. If this byte is omitted, the connection will behave as though the Broken Connection Action byte was specified as -1. The following values define the recovery action taken:

Value

Action

-1

Every axis without the Continue bit set in its Configuration word is halted and its event step sequence stops if it was running. All such axes will receive the Halt (H) command unless they are in open loop, in which case they will receive the Disable Drive Output (K) command.

For more flexibility, use Broken Connection Action values of 0 to 31 as described below.

0 to 15

The Simulate Rising Edge ({ ) command is issued to axis 0 with a command value equal to the value of the Broken Connection Action byte (0 to 15). This allows the user to define an event sequence to run on any or all of the axes. Therefore, event sequences can be stopped and other special recovery sequences can be run. Review the Simulate Rising Edge command and the Input-to-Event table for details.

16 to 31

Same as 0 to 15, except that the Simulate Falling Edge (}) command is issued with a command value equal to the value of the Broken Connection Action byte minus sixteen (0 to 15).

 

Handling Broken I/O Connections in the ControlLogix

The ControlLogix has two methods of handling a broken connection with an EtherNet/IP device such as the RMC:

image\ebx_-113048451.gif

The core of this ladder segment is reading the EntryStatus and FaultCode attributes from the RMC MODULE object using the GSV blocks. The MODULE objects are internal to the ControlLogix and represent external modules. In the Instance Name field of the GSV blocks, type the name you selected for the particular RMC module.

If the connection to the module is running, then the high four bits of the EntryStatus will be equal to 4 and the FaultCode will be equal to 0. This is described in the RSLogix 5000 online help's "Accessing the MODULE Object" topic.

The above ladder masks off the low 12 bits of the EntryStatus using an AND block, and then sets the RMCConnFault coil to indicate whether or not the connection is faulted.

 


Copyright (c) 1997-2015 by Delta Computer Systems, Inc.