High Performance Large CIP Reads from the RMC200

The Situation:

Using the MSG instruction in Allen-Bradely PLCs to read large blocks of data from the RMC.

The Problem:

With SLC and PLC-5 Typed reads, large reads are broken up into smaller reads, so the received data is not necessarily all from the same point in time in the RMC. This is not always a problem depending on the application, but this method is more performant.

The Solution:

Use a CIP Generic Service to read blocks of data up to 999 elements (32 bits) without being broken up. This involves creating a User-Defined Data Type (UDT) and configuring the MSG instruction as described in the Step-by-Step Instructions below.

Max Read Length:

  • RMC200 Firmware 1.19.0 and newer: 999 REAL elements
    This ensures the total packet size (3998 bytes) remains under the CIP Large Connection limit of 4002 bytes.
  • RMC200 Firmware older than 1.19.0: 124 REAL elements

Step-by-Step Instructions:


1. Define a UDT in Studio 5000

Create a UDT with the following structure:

  • File (INT): The File portion of the address of the read location in the RMC’s. This uses the RMC’s internal IEC address in the form %MDfile.element. This does NOT use the DF1 (Allen Bradley) Address Maps.
  • Element (INT): The Element portion of the address of the read location in the RMC’s. This uses the RMC’s internal IEC address in the form %MDfile.element. This does NOT use the DF1 (Allen Bradley) Address Maps.
  • Count (INT): The number of 32-bit elements to read (must be ≤999).

2. Create a Message (MSG) Instruction

Set the MSG instruction to CIP Generic with the following parameters:

Parameters:

  • Service Code: 4b (Hex) — Read Registers LE.
  • Class: c0 (Hex) — RMC Register Object.
  • Instance: 1.
  • Attribute: 0 (Hex).
  • Source Element: CIPRead (Tag created from UDT in step 1).
  • Source Length: 6
  • Destination Element: Array of REALS. Size greater than or equal to Count in Step 1.

3. Enable Large Connection for large reads

To read more than ~120 elements in a single packet, Large Connection must be enabled on the Communication tab:

  • Ensure that the Connected box is checked.
  • Check the Large Connection box.
  • This requires RMC200 Firmware 1.19.0 or newer.

See Also
High-Performance Large CIP Writes to RMC200