Determine Controller Memory Information
This is information is not applicable to
CompactLogix
5380, CompactLogix
5480, ControlLogix
5580, Compact GuardLogix
5380, and GuardLogix
5580 controllers. In these controllers, the memory used attributes are not supported or accesible.The memory of the controller is divided into I/O memory and expansion memory. This table shows how the controller uses each type of memory:
Note that the controller returns values in the number of 32-bit words. To see a value in bytes, simply multiply by 4.Use this procedure to get the following information about the controller's memory:
This | Uses memory from |
---|---|
I/O tags | I/O memory |
produced tags | |
consumed tags | |
communication via MSG instructions | |
communication with workstations | |
tags other than I/O, produced, or consumed tags | expansion memory |
logic routines | |
communication with polled (OPC/DDE) tags that use RSLinx Classic. | I/O memory and expansion memory |
- available (free) I/O and expansion memory
- total I/O and expansion memory
- largest contiguous block of I/O and expansion memory
From the Message Properties dialog - Communication tab:
Choose the Memory Information You WantThe MSG instruction returns the following information to INT_array (the destination tag of the MSG instruction).
IMPORTANT:
For a 1756-L55M16 controller, the MSG instruction returns two values for each expansion memory category. To determine the free or total expansion memory of a 1756-L55M16 controller, add both values for the category.
Convert INTs to a DINTThe MSG instruction returns each memory value as two separate INTs.
- The first INT represents the lower 16 bits of the value.
- The second INT represents the upper 16 bits of the value.
In this operand: | Specify: | Which means: |
---|---|---|
Source | first INT of the 2 element pair (lower 16 bits) | Start with the lower 16 bits |
Destination | DINT tag in which to store the 32-bit value | Copy the value to the DINT tag |
Length | 1 | Copy 1 times the number of bytes in the Destination data type. In this case, the instruction copies 4 bytes (32 bits), which combines the lower and upper 16 bits into one 32-bit value. |
Provide Feedback