Rockwell Automation 1756 ControlLogix, 1756 GuardLogix, 1769 CompactLogix, 1769 Compact GuardLogix, 1789 SoftLogix Programming Manual

...
Programming Manual

Logix 5000 Controllers Information and Status

1756 ControlLogix, 1756 GuardLogix, 1769 CompactLogix, 1769 Compact GuardLogix, 1789 SoftLogix, 5069 CompactLogix, 5069 Compact GuardLogix, Studio 5000 Logix Emulate
Original Instructions
Logix 5000 Controllers Information and Status
personal injury or death, property damage, or economic loss.
Attentions help you identify a hazard, avoid a hazard, and recognize the consequence.
IMPORTANT
Identifies information that is critical for successful application and understanding of the product.
temperatures.
for Personal Protective Equipment (PPE).

Important User Information

Read this document and the documents listed in the additional resources section about installation, configuration, and operation of this equipment before you install, configure, operate, or maintain this product. Users are required to familiarize themselves with installation and wiring instructions in addition to requirements of all applicable codes, laws, and standards.
Activities including installation, adjustments, putting into service, use, assembly, disassembly, and maintenance are required to be carried out by suitably trained personnel in accordance with applicable code of practice.
If this equipment is used in a manner not specified by the manufacturer, the protection provided by the equipment may be impaired.
In no event will Rockwell Automation, Inc. be responsible or liable for indirect or consequential damages resulting from the use or application of this equipment.
The examples and diagrams in this manual are included solely for illustrative purposes. Because of the many variables and requirements associated with any particular installation, Rockwell Automation, Inc. cannot assume responsibility or liability for actual use based on the examples and diagrams.
No patent liability is assumed by Rockwell Automation, Inc. with respect to use of information, circuits, equipment, or software described in this manual.
Reproduction of the contents of this manual, in whole or in part, without written permission of Rockwell Automation, Inc., is prohibited.
Throughout this manual, when necessary, we use notes to make you aware of safety considerations.
WARNING: Identifies information about practices or circumstances that can cause an explosion in a hazardous environment, which may lead to
ATTENTION: Identifies information about practices or circumstances that can lead to personal injury or death, property damage, or economic loss.
Labels may also be on or inside the equipment to provide specific precautions.
SHOCK HAZARD: Labels may be on or inside the equipment, for example, a drive or motor, to alert people that dangerous voltage may be present.
BURN HAZARD: Labels may be on or inside the equipment, for example, a drive or motor, to alert people that surfaces may reach dangerous
ARC FLASH HAZARD: Labels may be on or inside the equipment, for example, a motor control center, to alert people to potential Arc Flash. Arc Flash
will cause severe injury or death. Wear proper Personal Protective Equipment (PPE). Follow ALL Regulatory requirements for safe work practices and
2 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
Change
Topic
Updated branding.
Throughout
Topic Name
Reason
Legal notices on page 8
Updated Legal notices
5580 controllers.
cable disconnected entries.
page 27
Compact GuardLogix 5380, and GuardLogix 5580 controllers.

Summary of Changes

This manual includes new and updated information. Use these reference tables to locate changed information.
Grammatical and editorial style changes are not included in this summary.
Global changes
New or enhanced features
This table contains a list of topics changed in this version, the reason for the change, and a link to the topic that contains the changed information.
Controller log on page 25 Updated the controller log information for the Compact
GuardLogix 5370, CompactLogix 5370, ControlLogix 5570, GuardLogix 5570 Compact GuardLogix 5380, CompactLogix 5380, CompactLogix 5480, ControlLogix 5580, and GuardLogix 5580 controllers.
Controller log buffer on page 28 Updated the controller log buffer information for the Compact
GuardLogix 5370, CompactLogix 5370, ControlLogix 5570, GuardLogix 5570 Compact GuardLogix 5380, CompactLogix 5380, CompactLogix 5480, ControlLogix 5580, and GuardLogix
Controller log events on page 37 Added the information logged for USB cable connected and USB
Entries captured in the controller log on
Get memory information from the controller on page 22
Added USB cable connected and disconnected to the list.
Added a note to indicate that this section is not applicable to CompactLogix 5380, CompactLogix 5480, ControlLogix 5580,
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 3
Summary of Changes Connections
Determine controller memory information
Controller logging

Table of Contents

Preface
In this manual ............................................................................................. 7
Studio 5000 environment .......................................................................... 7
Additional Resources .................................................................................. 7
Legal notices ................................................................................................ 8
Chapter 1
Introduction ................................................................................................ 9
Inhibit a Connection .................................................................................. 9
Manage a connection failure ..................................................................... 11
Configure a major fault to occur ......................................................... 12
Monitor the health of a module .......................................................... 13
Chapter 2
Introduction ............................................................................................... 17
View data usage ......................................................................................... 17
Capacity tab for controllers that divide memory ............................... 18
Capacity tab for controllers with common memory area ................. 18
Estimate memory information offline for controllers with divided
memory ................................................................................................. 19
View run-time memory information for controllers with divided
memory ................................................................................................ 20
View the maximum and used Ethernet nodes for a controller ........ 21
Write logic to get memory information .................................................. 22
Get memory information from the controller .................................. 22
Choose the memory information .......................................................23
Convert INTs to a DINT ...................................................................... 24
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 5
Chapter 3
Introduction .............................................................................................. 25
Controller log ............................................................................................ 25
Controller log header .......................................................................... 26
Controller log entry ............................................................................. 26
Entries captured in the controller log ............................................... 27
Controller log buffer ........................................................................... 28
Controller log files and the removable media ................................... 28
Writing the controller log to the SD card .......................................... 28
Automatic save .............................................................................. 29
Save on demand ............................................................................ 30
Controller logging counters ................................................................ 31
Total entry count ............................................................................ 31
Table of Contents
Change detection
Access status information
Unsaved entry count ...................................................................... 31
Execution modification count ......................................................32
Log file storage ..................................................................................... 34
Log file format ...................................................................................... 35
Create Custom Log Entries ................................................................. 36
Sample Ladder Logic File ..................................................................... 37
Controller Log Events .......................................................................... 37
Chapter 4
Introduction ............................................................................................... 45
Controller change detection ..................................................................... 45
ChangesToDetect ................................................................................. 45
AuditValue ............................................................................................ 47
ChangesToDetect format ................................................................... 48
Change detection in the Logix Designer application ............................. 49
Component tracking ................................................................................. 49
Track the state of components and constant tags ............................. 51
View tracked components ................................................................... 51
Retrieve the tracked state value using a Message instruction .......... 51
Chapter 5
Introduction ............................................................................................... 53
Status of S:FS when the project has an SFC ............................................. 53
Get and set system data ............................................................................. 54
6 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
Resource
Description
Guidelines, publication, 1770-4.1
Automation industrial system.
and other certification details.

In this manual

Studio 5000 environment

Additional Resources

Preface

This manual describes how Logix 5000 controllers use connections with other
devices. This manual also describes status keywords and how to get controller information, such as memory resources. This manual is one of a set of related manuals that show common procedures for programming and operating Logix 5000 controllers.
For a complete list of common procedures manuals, refer to the
Logix 5000 Controllers Common Procedures Programming Manual, publication 1756­PM001.
The term Logix 5000 controller refers to any controller based on the Logix 5000 operating system.
The Studio 5000 Automation Engineering & Design Environment® combines
engineering and design elements into a common environment. The first element is the Studio 5000 Logix Designer® application. The Logix Designer application is the rebranding of RSLogix 5000® software and will continue to be the product to program Logix 5000™ controllers for discrete, process, batch, motion, safety, and drive-based solutions.
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 7
The Studio 5000® environment is the foundation for the future of Rockwell Automation® engineering design tools and capabilities. The Studio 5000 environment is the one place for design engineers to develop all elements of their control system.
These documents contain additional information concerning related
Rockwell Automation products.
Industrial Automation Wiring and Grounding
Product Certifications website, http://www.ab.com Provides declarations of conformity, certificates,
Provides general guidelines for installing a Rockwell
Preface

Legal notices

View or download publications at
http://www.rockwellautomation.com/literature
. To order paper copies of technical documentation, contact a local Rockwell Automation distributor or sales representative.
Rockwell Automation publishes legal notices, such as privacy policies, license agreements, trademark disclosures, and other terms and conditions on the
Legal Notices
page of the Rockwell Automation website.
End User License Agreement (EULA)
You can view the Rockwell Automation End User License Agreement (EULA) by opening the license.rtf file located in your product's install folder on your hard drive.
The default location of this file is:
C:\Program Files (x86)\Common Files\Rockwell\license.rtf.
Open Source Software Licenses
The software included in this product contains copyrighted software that is licensed under one or more open source licenses.
You can view a full list of all open source software used in this product and their corresponding licenses by opening the oss_license.txt file located your product's OPENSOURCE folder on your hard drive. This file is divided into these sections:
Components Includes the name of the open source component, its version number, and the type of license.
Copyright Text Includes the name of the open source component, its version number, and the copyright declaration.
Licenses Includes the name of the license, the list of open source components citing the license, and the terms of the license.
The default location of this file is:
C:\Program Files (x86)\Common Files\Rockwell\Help\<product name>\Release Notes\OPENSOURCE\oss_licenses.txt.
8 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
You may obtain Corresponding Source code for open source packages included in this product from their respective project web site(s). Alternatively, you may obtain complete Corresponding Source code by contacting Rockwell Automation via the Contact form on the Rockwell Automation website:
http://www.rockwellautomation.com/global/about­us/contact/contact.page. Please include "Open Source" as part of the request
text.
Term
Definition
Connection
Requested packet
guarantees that the data transfers at least as often as the RPI.
Path
communication of I/O data.

Introduction

Inhibit a Connection

Connections
A Logix 5000 controller uses connections for most, but not all, of its communication with other devices.
A communication link between two devices, such as between a controller and an I/O module, PanelView terminal, or another controller.
Connections are allocations of resources that provide more reliable communication between devices than unconnected messages. The number of connections that a single controller can have is limited.
Configuring the controller to communicate with other devices in the system indirectly determines the number of connections the controller uses. These communication types use these connections:
• I/O modules
Produced and consumed tags
Program parameters
• Certain types of Message (MSG) instructions (not all types use a connection)
Chapter 1
The RPI specifies the period at which data updates over a connection. For
interval (RPI)
example, an input module sends data to a controller at the RPI assigned to the module.
Typically, an RPI is configured in milliseconds (ms). The range is 0.2 ms (200 microseconds)…750 ms.
If a ControlNet network connects the devices, the RPI reserves a slot in the
stream of data flowing across the ControlNet network. The timing of this slot may not coincide with the exact value of the RPI, but the control system
The path describes the route that a connection takes to get to the destination. Typically, the path for a connection is defined when a device is added to the I/O
Configuration folder of the controller.
In some situations, such as when initially commissioning a system, it is useful
to disable portions of a control system and enable them as they are connected to the control system. Inhibiting individual modules or groups of modules prevents the controller from trying to communicate with the modules.
ATTENTION: Inhibiting a module breaks the connection to the module and prevents
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 9
Chapter 1 Connections
To
Then
check box.
box.
If
And you
And
Then
Program mode.
an error condition or fault)
indicate the fault condition.
An installed I/O module defaults to not inhibited. To inhibit a module, change an individual module’s properties.
Communicate with the module Do not inhibit the module. Clear the Inhibit Module
Prevent communication with the module Inhibit the module. Select the Inhibit Module check
When a communication bridge module is inhibited, the controller shuts down the connections to the bridge module and to all the modules that depend on that bridge module. Inhibit a communication bridge module to disable an entire branch of the I/O network.
When the module is inhibited, the Controller Organizer displays a yellow attention symbol over the module.
Offline ------------------------------> --------> The inhibit status is stored in the project.
When the project downloads to the controller, the module still is inhibited.
Online Inhibit a module while connected
to the module
Inhibit a module but a connection to the module was not established (perhaps due to
Uninhibit a module (clear the check box)
--------> The connection to the module is closed. The module's outputs go to the last configured
--------> The module is inhibited. The module status information changes to indicate that the module is inhibited and not faulted.
No fault occurs A connection is made to the module and the
module is dynamically reconfigured (if the controller is the owner-controller) with the configuration created for that module. If the controller is configured for listen-only, it cannot reconfigure the module.
Fault occurs A connection is not made to the module. The
module status information changes to
10 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
of I/O modules.
Manage a connection
Chapter 1 Connections
To inhibit or uninhibit a connection
1. Use a Get System Value (GSV) instruction to read the Mode attribute for the module.
2. To inhibit the module, set bit 2. To uninhibit the module, clear bit 2.
3. Use a Set System Value (SSV) instruction to write the Mode attribute back to the module.
Example: Inhibit a connection
If Module_1_Inhibit = 1, then inhibit the operation of the I/O module named Module_1.
The GSV instruction sets Module_1_Mode = value of the Mode attribute for the module.
The OTE instruction sets bit 2 of Module_1_Mode = 1. This means inhibit the connection.
The SSV instruction sets the Mode attribute for the module = Module_1_Mode.
failure
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 11
If the controller loses communication with a module, data from that device does not update. When this occurs, the logic acts on the data in ways that may or may not be correct. Program the controller to manage faults safely and efficiently.
ATTENTION: Outputs respond to the last, non-faulted state of the controlling inputs. To avoid potential injury and damage to machinery, make sure this does not create an unsafe operation. Configure critical I/O modules to generate a controller major fault when they lose their connections to the controller, or monitor the status
Chapter 1 Connections
If the controller should
Then
Continue operating
Configure a major fault to
Example: Loss of communication
Controller B requires data from controller A. If communication fails between the controllers, controller B continues to act on the last data that it received from controller A.
occur
If communication with a device in the I/O configuration of the controller does not occur for 100 ms, the communication times out. If this occurs, choose between these options.
Fault (major fault)
Configure a major fault to occur Monitor the health of a module
See also

Configure a major fault to occur on page 12

Monitor the health of a module on page 13
To force a module to generate a major fault in the controller if it loses connection with the controller, configure a major fault to occur. This interrupts the execution of logic and runs the Controller Fault Handler. If the Controller Fault Handler does not clear the fault, the controller shuts down.
12 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
Monitor the health of a
Chapter 1 Connections
When selecting Major Fault On Controller…Run Mode, the controller:
Must be connected to the module during the Program transition to Run mode. During the Program to Run mode transition, there can be a 20-second delay.
During this delay, the controller makes one attempt to connect to a module. If Major Fault On Controller…Run Mode is selected and no connection occurs during the 20-second delay, a fault occurs because at least one required connection is not established before going to Run mode. This is a 3/23 type fault code. This fault can occur in large systems with networked I/O.
module
Registers a fault if the connection is dropped while in Run mode. A required I/O module connection failed, creating a 3/16 type fault.
For fault codes, see the Logix 5000 Controllers Major and Minor Faults Programming Manual, publication no. 1756-PM014.
See also
Logix 5000 Controllers Major and Minor Faults Programming Manual,
publication no. 1756-PM014
Monitor the module status if the module is not configured to generate a major fault. If a module loses its connection to the controller, outputs go to their configured faulted state. The controller and other I/O modules continue to operate based on old data from the module.
If communication with a module times out, the controller produces the following warnings.
The I/O status indicator on the front of the controller flashes green.
A Warning ( ) icon shows over the I/O configuration folder and over
the device that has timed out.
A module fault code is produced, which is accessible through:
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 13
Module Properties window for the module.
GSV instruction.
Chapter 1 Connections
To
Get this attribute
Data Type
Description
Value
Meaning
section of the controller organizer).
are Running.
object is not Running.
To
Get this attribute
Data Type
Description
project.
To monitor the health of connections, use a Get System Value (GSV) instruction to monitor the Module object for either the controller or a specific module.
Determine if communication has timed out with any device
LEDStatus INT
For efficiency, use a DINT as the destination data type.
Current state of the I/O status indicator on the front of the controller.
No need to enter an instance name with this attribute. This attribute applies to the entire collection of modules.
This table describes the meaning of the I/O status indicator on the front of the controller.
0 Status Indicator off. No Module objects
are configured for the controller (there are no modules in the I/O Configuration
1 Flashing red. None of the Module objects
2 Flashing green. At least one Module
3 Solid green. All the Module objects are
Running.
Determine if communication has timed out with a specific device
FaultCode INT
For efficiency, use a DINT as the destination data type.
A number that identifies a module fault, if one occurs.
In the Instance Name, choose the device with a connection to monitor. Make sure to assign a name to the device in the I/O Configuration folder of the
If Module_Status is any value other than 4, the controller is not communicating with the module. See the following example.
Example:
This rung checks the status of an I/O connection. The controller checks the entry status of the connection; any value other than 4 indicates that the connection is not functioning correctly. When the controller detects an error, the error code and information is trapped, and the controller tries to re­establish the connection.
14 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
Chapter 1 Connections
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 15
This controller
Stores this
In this memory
instructions
Communication with workstations
that use RSLinx software1
tags
GuardLogixlLogix 5580
memory or has one common memory area.

Introduction

View data usage

Chapter 2
Determine controller memory information
Depending on the type of controller, the memory of the controller is divided into several areas.
ControlLogix 5570 GuardLogix 5570S CompactLogix 5370 Compact GuardLogix 5370S ControlLogix 1756-L5x, L6x GuardLogix 1756-L6xS
CompactLogix 1769-L2x, L3x SoftLogix5800 CompactLogix 5380 CompactGuardLogix 5380 CompactLogix 5480 ControlLogix 5580
I/O tags I/O memory Produced / Consumed tags Communication via Message (MSG)
Communication with polled (OPC/DDE) tags
Tags other than I/O, produced, or consumed
Logic routines Communication with polled (OPC/DDE) tags
that use RSLinx software These controllers do not divide their memory. They store all elements
in one common memory area.
1
Data and logic
2
memory
(1) To communicate with polled tags, the controller uses both I/O data and logic memory.
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 17
(2) 1756-L55M16 controllers have an additional memory section for logic.
In the Logix Designer application, the Capacity tab (formerly the Memory tab) on the Controller Properties dialog box shows data usage in the
controller. The data displayed on the Capacity tab depends on the controller.
Tip: Refer to the Memory information table to see whether a controller divides its
See also
Memory information table on page 17
Chapter 2 Determine controller memory information
IMPORTANT
Capacity tab for controllers
Capacity tab for controllers
The Capacity tab for controllers that divide memory shows I/O memory and Data and Logic memory separately. For each area of controller memory, the
that divide memory
tab shows the consumed and available memory in bytes.
The tab provides an estimation tool to estimate the amount of controller memory a project requires for I/O, Data, and Logic. It also includes a Max Used field for each type of memory to show peak memory usage as communication occurs.
with common memory area
The Capacity tab for controllers that store elements in one common area differs slightly from the Capacity tab for other controllers.
Instead of describing consumed memory in bytes, the Capacity tab shows
logical program blocks which represent units of executable code. The Capacity tab shows project size in blocks compared to the specified product capacity in blocks to determine if the project can be downloaded to the controller. If the size of the project exceeds the controller capacity available, a message appears that states the overage size in blocks. When the project size exceeds the memory available, the project does not download to the controller.
Block units are only used for application source code sizes. Data structures and messages are still described in bytes.
Although block sizes are not physically equivalent to the bytes measured in controllers with divided memory controllers, in general, applications that fit in a divided memory controller should fit in the same controller with one common memory area.
18 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
controllers with common memory area for information about the other controllers.
Estimate memory
Chapter 2 Determine controller memory information
information offline for controllers with divided memory
For controllers with divided memory, the applications in the project have a close correlation between the size of the source code and the physical memory in the controller. To estimate how much controller memory a project requires, use the Estimate button on the Capacity tab. It estimates the number of bytes of:
Free (unused) memory.
Used memory.
Largest free contiguous block of memory.
Tip: This section only applies to controllers with divided memory. Refer to the Memory information table for a list of controllers with divided memory. Refer to Capacity tab
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 19
Chapter 2 Determine controller memory information
for information about the other controllers.
View run-time memory
To estimate memory information offline for controllers with divided memory
1. On the Online toolbar, click the Controller Properties icon.
2. On the Controller Properties dialog box, click the Capacity tab.
3. In the Estimated Data and Logic Memory area, view the memory information since the last estimate.
4. Click Estimate to re-estimate the amount of controller memory.
5. Click OK.
information for controllers with divided memory
See also
Memory information table on page 17
Capacity tab for controllers with common memory area on page 18
When online with a controller with divided memory, the Capacity tab shows the actual memory usage of the controller. While the controller is running, it uses additional memory for communication. The amount of memory the controller needs varies depending on the state of the communication.
The Capacity tab of the controller includes a Max Used entry for each type of
memory. The Max Used values show the peak memory usage as communication occurs.
Tip: This section only applies to controllers with divided memory. Refer to the Memory information table for a list of controllers with divided memory. Refer to Capacity tab controllers with common memory area
20 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
The system provides a warning when the recommended node limit has been exceeded.
View the maximum and
Chapter 2 Determine controller memory information
To view run-time memory information for controllers with divided memory
1. On the Online toolbar, click the Controller Properties icon.
2. On the Controller Properties dialog box, click the Capacity tab.
3. Click Reset All Max to reset values.
4. Click OK.
See also
Memory information table on page 17
used Ethernet nodes for a controller
Capacity tab for controllers with common memory area on page 18
Some controllers have limits on the number of Ethernet nodes they support in the I/O Configuration tree. When a device is added directly to the Ethernet I/O configuration, it is counted toward the node limitation of the controller.
The Capacity tab of the Controller Properties dialog box shows the current number of used Ethernet nodes in the I/O Configuration tree and the
maximum number of Ethernet nodes supported by the controller.
When the controller is online, the controller enforces the node count, and the node count exceeds the limit:
An error dialog box appears.
The I/O module cannot be added to the I/O Configuration tree.
When the controller is offline, the controller enforces the node count, and the node count exceeds the limit when the project is verified or the controller attempts to go online:
An error message is generated on the Error tab of the Output window.
The project cannot be downloaded to the controller.
Tip: The 1756-L85E controllers do not enforce the node count, meaning the system does not prevent connecting additional nodes, and it may be possible to download the project.
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 21
Chapter 2 Determine controller memory information
determines capacity information for controllers that store elements in one common area.
IMPORTANT
On this tab
For this item
Type or select
Which means
Service Code
3
Read specific information about the controller (GetAttributeList service).
Class
72
Get information from the user memory object.
Instance
1
This object contains one instance.
Attribute
0
Null value.
In this element
Enter
Which means
source_array[1]
0
Null value.
source_array[2]
1
Get free memory.
source_array[3]
0
Null value.
Write logic to get memory
Get memory information
To view the maximum and used Ethernet nodes for a controller:
1. On the Online toolbar, click the Controller Properties icon.
2. On the Controller Properties dialog box, click the Capacity tab.
3. In the Ethernet Node group, view the information about the Ethernet nodes.
Maximum/Recommended Maximum - Number of Ethernet nodes
Used - Current number of Ethernet nodes in the I/O Configuration
supported by the controller, or the recommended maximum number of Ethernet nodes for the controller.
tree If the controller is offline, appears next to the Used parameter
when the node count exceeds the limit. For controllers that do not limit the number of Ethernet nodes, appears next to the Used parameter when the node count exceeds the recommended limit and this message appears:
The recommended node limit has been exceeded. It may be possible to connect additional nodes depending on the node type and system architecture.
Use a Message (MSG) instruction to get memory information from the controller.
information
Tip: This procedure applies to controllers with divided memory. The Logix Designer application
The information in this section is not applicable to CompactLogix 5380, CompactLogix 5480, ControlLogix 5580, Compact GuardLogix 5380, and
from the controller
To get memory information from the controller, execute a Message (MSG) instruction. This table lists configuration information for the instruction.
Configuration Message Type CIP Generic Execute a Control and Information Protocol command.
Service Type Custom Create a CIP Generic message that is not available in the list.
GuardLogix 5580 controllers. In these controllers, the memory used attributes are not supported or accessible.
Source Element source_array of type SINT[12]
source_array[0] 5 Get 5 attributes.
22 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
On this tab
For this item
Type or select
Which means
source_array[6]
5
Get largest contiguous block of additional free logic memory.
source_array[7]
0
Null value.
source_array[8]
6
Get largest contiguous block of free I/O memory.
source_array[9]
0
Null value.
[10]
7
Get largest contiguous block of free data and logic memory.
[11]
0
Null value.
determines capacity information for controllers that store elements in one common area.
IMPORTANT
To find this information
Then copy these array elements
Description
bit words)
Choose the memory
source_array[4] 2 Get total memory. source_array[5] 0 Null value.
source_array source_array
Source Length 12 Write 12 bytes (12 SINTs). Destination INT_array of type INT[29]
Communication Path 1, slot_number_of_controller
This table lists the information that the MSG instruction returns to INT_array
information
(destination tag of the MSG).
Chapter 2 Determine controller memory information
Tip: This procedure applies to controllers with divided memory. The Logix Designer application
The controller returns the values in 32-bit words. To see a value in bytes, multiply it by 4. If a controller does not divide its memory, the values show up as I/O memory. For the 1756-L55M16 controller, the MSG instruction returns two values for each logic memory category. To determine the free or total logic memory of a 1756-L55M16 controller, add both values for the category.
Amount of free I/O memory (32-bit words)
Amount of free data and logic memory (32-bit words)
1756-L55M16 controllers only— amount of additional free logic memory (32-bit words)
Total size of I/O memory (32­bit words)
Total size of data and logic memory (32-bit words)
1756-L55M16 controllers only— additional logic memory (32­bit words)
1756-L55M16 controllers only— largest contiguous block of additional free logic memory (32-
INT_array[3] Lower 16 bits of the 32 bit value INT_array[4] Upper 16 bits of the 32 bit value INT_array[5] Lower 16 bits of the 32 bit value INT_array[6] Upper 16 bits of the 32 bit value INT_array[7] Lower 16 bits of the 32 bit value INT_array[8] Upper 16 bits of the 32 bit value
INT_array[11] Lower 16 bits of the 32 bit value INT_array[12] Upper 16 bits of the 32 bit value INT_array[13] Lower 16 bits of the 32 bit value INT_array[14] Upper 16 bits of the 32 bit value INT_array[15] Lower 16 bits of the 32 bit value INT_array[16] Upper 16 bits of the 32 bit value
INT_array[19] Lower 16 bits of the 32 bit value INT_array[20] Upper 16 bits of the 32 bit value
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 23
INT_array[23] Lower 16 bits of the 32 bit value
Chapter 2 Determine controller memory information
To find this information
Then copy these array elements
Description
memory (32-bit words)
bit words)
In this operand
Specify
Which means
16 bits into one 32-bit value.

Convert INTs to a DINT

Largest contiguous block of free I/O
Largest contiguous block of free data and logic memory (32-
INT_array[24] Upper 16 bits of the 32 bit value
INT_array[27] Lower 16 bits of the 32 bit value INT_array[28] Upper 16 bits of the 32 bit value
The 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.
To convert the separate INTs into one usable value, use a Copy (COP) instruction.
Source First INT of the 2 element pair
(lower 16 bits)
Destination DINT tag in which to store the
32-bit value
Length 1 Copy 1 times the number of bytes in the Destination
Start with the lower 16 bits.
Copy the value to the DINT tag.
data type. In this case, the instruction copies 4 bytes (32 bits), which combines the lower and upper
In this example, the COP instruction produces the 32-bit value that represents the amount of free I/O memory, in 32-bit words.
Example: Convert INTs to a DINT.
Elements 3 of INT_array is the lower 16 bits of the amount of free I/O memory. Element 4 is the upper 16 bits.
Memory_IO_Free is a DINT tag (32 bits) in which to store the value for the amount of free I/O memory.
To copy all 32 bits, specify a Length of 1. This tells the instruction to copy 1 times the size of the Destination (32 bits). This copies both element 3 (16 bits) and element 4 (16 bits) and places the 32-bit result in Memory_IO_Free.
24 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
Record
Time
Entry Description
User Name
Workstation
FactoryTalk ID
Extended
Change Detection
controller program

Introduction

Controller log

Chapter 3
Controller logging
Use the controller logging feature to detect and log changes made to Logix5000 controllers without adding any auditing software. With controller
logging, the controllers:
Detect changes and create logs entries containing information about the changes.
Store the log entries to removable media for later review.
Provide programmatic access to log entry counters to provide change
detection information remotely.
Note these logging considerations:
The 1769-L3x and 1769-L4x CompactLogix Controllers do not support storing log entries to removable media, and the audit value is not populated.
The Audit Value is not supported in versions 19 and earlier.
A controller log is a record of interactions that occurred in the controller due to physical conditions such as keyswitches, changes to removable media, fault
conditions, and programming changes configured in the application.
For the Compact GuardLogix 5370, CompactLogix 5370, ControlLogix 5570, and GuardLogix 5570 controllers, up to 100 log entries are buffered in the controller memory. The controller can save these buffered entries to removable media using a message instruction. Additionally, the controller can be configured to write buffered entries to the removable media after accumulating 80 entries.
For the Compact GuardLogix 5380, CompactLogix 5380, CompactLogix 5480, ControlLogix 5580, and GuardLogix 5580 controllers, up to 500 log entries are buffered in the controller memory. The controller can be configured to write buffered entries to the removable media after accumulating 400 entries.
In the example table below, record numbers 4 through 6 are related to Change Detection.
Number
1 12-Feb 03:39:34 Project download John Doe Laptop FT\JDoe Project L71 16#FD60_CB89_029F
2 12-Feb 04:05:12 Forces Enabled Jones USMAYLT FT\Jones 3 12-Feb 04:22:03 Online edits modified
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 25
Name
John Doe Laptop FT\JDoe
Information
Audit Value
_3500
Chapter 3 Controller logging
Record
Time
Entry Description
User Name
Workstation
FactoryTalk ID
Extended
Change Detection
FC_FFFF
added
_35BF

Controller log header

Controller log entry

Number
4 12-Feb 04:42:12 Change Log entry
added
5 12-Feb 04:50:43 Change detection mask
modified
6 12-Feb 04:58:29 Change Log entry
When the controller creates a log file on the removable media, it includes some header information. The header information includes these items.
Date the log file was created.
Controller model number.
Controller serial number.
Version of firmware running on the controller.
Each entry in the log can include this information.
Record Number
Time of Occurrence (UTC - 24 hour clock)
Entry Description
Windows User Name
Workstation Name
FactoryTalk User ID (if available)
Extended Information
Change Detection Audit Value
Name
FT\JDoe
None None Old mask
None None
Information
16#FFFF_FFFF_FF FF_FFFF,
New mask 16#FFFF_FFFF_FF
Audit Value
16#FD60_CB89_029F _3521
16#FD60_CB89_029F _3566
16#FD60_CB89_029F
26 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
This example shows controller log entries in a spreadsheet. Controller log files are stored in plain text files in TSV format, so no special tools are required to read them. Open them in any text editor, or in a spreadsheet application such as Microsoft Excel.
Entries captured in the
controller log
Chapter 3 Controller logging
These entries are detected and logged by the controller. These events are described in more detail in Controller Log Events.
Tip: In Logix Designer versions 30 and later, audit log entries also appear in the controller log. Audit log entries describe events such as changes to component properties, edits in a routine, and changes to tag values. The audit log is used for auditing by the FactoryTalk® AssetCentre.
Project downloaded
Project loaded from removable media
Project stored to removable media
Online edits modified controller program
Partial import online completed or Transaction committed
I/O forces enabled, disabled, removed, or modified
SFC forces enabled, disabled, removed, or modified
Firmware update
Constant tag data changed
Multiple constant tag data changed
Change to constant tag configuration reset
Mode change
Major fault, major fault cleared
Program properties modified
Task properties modified
Controller timeslice modified
Removable media inserted or removed
Safety signature created or deleted
Safety locked or unlocked
Custom entry: User-defined logic to create a log entry, with user-
defined entry description and extended information
Safety signature delete inhibited in Run mode
Safety signature delete allowed in Run mode
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 27
Chapter 3 Controller logging
regarding the type of removable media the controller supports.

Controller log buffer

Controller log files and the
Writing the controller log to
The Changes To Detect value has changed
Log Collected Data Cleared
Program Connection Modified
USB cable connected and disconnected
See also
Controller log events on page 37
For the Compact GuardLogix 5370, CompactLogix 5370, ControlLogix 5570, and GuardLogix 5570 controllers, the controller keeps up to 100 log entries
buffered in its internal memory.
For the Compact GuardLogix 5380, CompactLogix 5380, CompactLogix 5480, ControlLogix 5580, and GuardLogix 5580 controllers, the controller keeps up to 500 log entries buffered in its internal memory.
Configure the controller to write the buffered entries to the removable media when its internal buffer is 80% full, or command the controller to write the buffered entries to the removable media with a message instruction. This procedure is detailed below. Once a log entry is written to the removable media, it is removed from the buffer.
removable media
the SD card
If the removable media is not present, is full, or if the controller is not configured to automatically write buffered entries to the removable media, and the internal buffer becomes full, entries are saved in the buffer in a circular fashion. As new entries are stored, the oldest entries are discarded.
When written to the removable media, controller logs are stored in plain text files in the Tab Separated Value (TSV) format. Each time the controller writes entries to the CompactFlash card, the entries are appended to the text file until the file reaches 1 MB in size. At this point, the controller creates a new
text file.
The controller does not attempt to write log entries to a full removable media card. If the removable media becomes full, the system behaves as if the removable media is not present.
Controller log files are stored in plain text files in the TSV format, so no special tools are required to read them. Open them in any text editor, or in a spreadsheet application such as Microsoft Excel.
The controller log can be written to the Secure Digital (SD) card either automatically or on demand.
Tip: Some Logix 5000 controllers support additional types of removable media that can be used to write the controller log entries. Refer to the Logix 5000 controller documentation for information
28 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
Automatic save
Chapter 3 Controller logging
Configure the controller to automatically write buffered log entries to the SD
card when the controller's internal log entry buffer becomes 80% full. Alternately, configure the controller to write the buffered entries before a firmware update. To write buffered entries before a firmware update, send a message instruction to the controller using a CIP Generic message type and a service type of Controller Log Automatic Write Set. Sending a value of 0 turns off automatic writes, and sending a value of 1 turns on automatic writes. By default, entries are not automatically written.
A rung of logic that performs this configuration and the configuration dialog box of the message instruction are shown in these examples.
Example: Automatic Save Set ladder instruction and configuration dialog box
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 29
Retrieve the current state of the automatic write setting by using a CIP Generic message type and a service type of Controller Log Automatic Write Get. Use this rung of ladder logic and message instruction configuration to get this value.
Example: Automatic Save Get ladder instruction and configuration dialog box
Chapter 3 Controller logging
Save on demand
Command the controller to write buffered entries to the SD card by using a
message instruction with a CIP Generic message type and a service type of Controller Log Write To Media.
A rung of ladder logic that sends this message and the configuration of the message instruction are shown in these examples.
Example: Write Buffered Entries to the SD Card ladder instruction and configuration dialog box
30 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
Counter Name
Description
Access
increment this count.

Controller logging counters

Total entry count
Unsaved entry count
Chapter 3 Controller logging
Three counters, listed in the following table, provide real-time statistics about
modifications to the controller.
Total Entry Count Number of entries added to the log since the last firmware
update.
Unsaved Entry Count Number of entries in controller RAM not yet written to the
CompactFlash card.
Modify Execution Count Count that specifically tracks modifications that can
change behavior of a running controller. A subset of entries
GSV/SSV
GSV
GSV/SSV
Total Entry Count is the number of controller entries that have been added
since the last firmware update. This counter increments after any entry is added to the log, and it is written to the log in the Record Number field. Use a Set System Value (SSV) instruction to set it to a known value. This can be useful, for example, for monitoring system changes during a production run.
This rung of ladder logic shows how to retrieve the Total Entry Count by using a Get System Value (GSV) instruction.
Example: Total Entry Count by using a Get System Value (GSV) ladder instruction
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 31
This rung of ladder logic shows how to set the Total Entry Count to a known value (in this example, 0) by using an SSV instruction.
Example: Set the Total Entry Count to a Known Value ladder instruction
The Unsaved Entry Count is the number of log entries that are in controller
memory but have not yet been stored to the CompactFlash card.
This counter value is available via a GSV instruction, and can range from 0…100, the maximum number of entries that the controller can buffer.
Chapter 3 Controller logging
Execution modification
count
This rung of ladder logic shows how to retrieve the Unsaved Entry Count by using a Get System Value (GSV) instruction.
Example: Retrieve the Unsaved Entry Count using a Get System Value (GSV) ladder instruction
The Execution Modification Count tracks the number of changes that occur
that can change the behavior of a running controller. Configure the counter
to include or exclude force changes.
These events cause the Execution Modification Count to increment:
Online edits tested or assembled
Forces enabled or disabled (if so configured)
Program properties modified
Task properties modified
Controller timeslice modified
Set this counter to a known value using an SSV instruction.
This example rung of ladder logic shows how to retrieve the Execution Modification Count by using a GSV instruction.
Example: Retrieve the Execution Modification Count by using a GSV ladder instruction
32 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
This rung of ladder logic shows how to set the Execution Modification Count to a known value.
Example: Ladder instruction to set the Execution Modification Count to a known value
To configure whether the Execution Modification Count includes forces, use a message instruction of message type CIP Generic and a service type of Controller Log Config Execution Set.
If it is sent a value of 1, forces are included in the counter. If it is sent a value of 0, forces are not included.
This rung of ladder logic shows how to send the message instruction, followed by the configuration dialog box of the message instruction.
Example: Controller Log Config Execution Set ladder instruction and configuration dialog box
Chapter 3 Controller logging
The Source Element should be of data type DINT.
Use a message instruction to retrieve the current value of this configuration. This message uses a message type of CIP Generic and a service type of Controller Log Config Execution Get.
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 33
Chapter 3 Controller logging

Log file storage

This rung of ladder logic shows how to send the message instruction, followed by the configuration dialog box of the message instruction.
Example: Controller Log Config Execution Get ladder instruction and configuration dialog box
The Destination tag should be of type DINT.
When a log file is written to the CompactFlash card, it is stored at
\Logix\XXXXXXXX\Logs\VYY_ZZ, where XXXXXXXX is the eight-digit serial number of the controller and YY_ZZ is the revision number of the firmware (major_minor revision).
34 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
Content
Description
Format
FactoryTalk ID
User's FactoryTalk login ID
Alphanumeric characters

Log file format

Log file location
The file is named ControllerLog_yyy.txt, where yyy is a sequential number from 000…999. The controller adds to the log file until it reaches a size greater than 1 MB. At that point, the next write of the controller log causes a new file to be created with the next sequence number.
Chapter 3 Controller logging
When there are 1000 files larger than 1 MB, no more logs are created. However, the controller searches for the file name with the smallest possible sequence number that it can create or write to. For example, if a user deletes files 001…100 but leaves the rest, the controller starts creating logs again starting at a sequence number of 001. If there are already 1000 log files and a user deletes log entries out of file 005, the controller writes the next log entries to that file. The controller starts at 000 and looks for the first file that does not exist or is less than 1 MB in size.
Each time the controller opens a log file for writing, it creates a back-up file that is a copy of the log file before the write. This file is called Backup.txt. The controller overwrites the backup every time it opens a log file is opened for writing.
Rockwell Automation recommends periodically clearing space on the card for new log files. The controller does not delete any files off the card to create more space for new log files.
This table lists the information that is contained in the controller log file.
Time Controller's GMT time MMM-DD-YY HH:MM:SS
24-hour time
Entry Entry Description (defined in Entry List
section)
User Name User's login ID Windows domain name with display
Workstation Name User's computer name Computer Name
name if available
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 35
Chapter 3 Controller logging
Content
Description
Format

Create Custom Log Entries

Extended Information Entry specific information (defined in
Entry List section)
Change Detection Audit
1
Value
Changes that the controller detected in the Audit value
(1) Version 20 or later. See Change detection.
The log file is formatted in UTF-16, and has a file extension of .txt. Double­clicking the file opens it in Notepad on most systems. However, since it is formatted as Tab Separated Values (TSV), it also opens correctly in a spreadsheet application, like Microsoft Excel.
This screen is an example of the log file in Notepad.
Tip: For version 20 and later, a column for the Audit Value changes is included in the log file.
This screen is an example of the log file in Excel.
See also
Change detection on page 49
Use a message instruction to add custom entries to the controller log. The
message instruction uses a CIP Generic message type and a service type of Controller Log Add Entry.
The source element of this message should be a tag of a user-defined data type. The user-defined data type should contain two string members. The controller writes the first string to the log entry's Description field. The controller writes the second string to the log entry's Extended Information field.
This rung of ladder logic shows how to send the message instruction, followed by the Configuration dialog box of the message instruction and the definition of the user-defined data type used for the source element.
Example: Send the Message ladder instruction, Controller Log Add Entry configuration dialog box, and Data Type dialog box.
36 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
changes to tag values. The audit log is used for auditing by the FactoryTalk® AssetCentre.

Sample Ladder Logic File

Controller Log Events

Chapter 3 Controller logging
The Logix Designer application contains a controller logging sample ladder
file. If the sample files were installed during the installation, open the sample files from the Help menu. On the Help menu, select Vendor Sample Projects.
This table describes the events that the controller stores in the controller log.
Tip: In Logix Designer versions 30 and later, audit log entries also appear in the controller log. Audit log entries describe events such as changes to component properties, edits in a routine, and
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 37
Chapter 3 Controller logging
Entry
Information Logged
Extended Information: Project
Extended Information: Project
• Extended Information: Project
• Extended Information: Project
Extended Information: None
Project download1 Time Stamp
• Entry Description: Project download
UserName
Workstation Name
FactoryTalk Login Id
Load from removable media Time Stamp
• Entry Description: Project load
UserName
Workstation Name
FactoryTalk Login Id
Load from removable media auto-initiated Time Stamp
Entry Description: Project auto load
UserName: Local
Workstation Name: None
FactoryTalk Login Id: None
Store to removable media Time Stamp
• Entry Description: Project store
UserName
Workstation Name
FactoryTalk Login Id
Online edits tested or assembled Time Stamp
• Entry Description: Online edits modified controller program
UserName
Workstation Name
FactoryTalk Login Id
Extended Information: None
Edits logged are:
Test Program Edits
UnTest Program Edits
• Assemble Program Edits
• Accept Program Edits
Accept Pending Rung Edits
Partial import online completed2 Time Stamp
• Entry Description: Partial import online modified controller
UserName
Workstation Name
FactoryTalk Login Id
I/O forces enabled Time Stamp
Entry Description: I/O forces enabled
UserName
Workstation Name
FactoryTalk Login Id
Extended Information: None
38 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
Entry
Information Logged
Extended Information: None
Extended Information: None
• Extended Information: Tag
Extended Information: None
Extended Information: None
Extended Information: Routine
I/O forces disabled Time Stamp
• Entry Description: I/O forces disabled
UserName
Workstation Name
FactoryTalk Login Id
I/O forces removed Time Stamp
• Entry Description: I/O forces removed
UserName
Workstation Name
FactoryTalk Login Id
I/O forces modified Time Stamp
Entry Description: I/O force value changed
UserName
Workstation Name
FactoryTalk Login Id
SFC forces enabled Time Stamp
• Entry Description: SFC forces enabled
UserName
Workstation Name
FactoryTalk Login Id
Chapter 3 Controller logging
SFC forces disabled Time Stamp
• Entry Description: SFC forces disabled
UserName
Workstation Name
FactoryTalk Login Id
Extended Information: None
SFC forces removed Time Stamp
• Entry Description: SFC forces removed
UserName
Workstation Name
FactoryTalk Login Id
SFC forces modified Time Stamp
Entry Description: SFC element force value changed
UserName
Workstation Name
FactoryTalk Login Id
Firmware update from workstation Time Stamp
Entry Description: Firmware update attempted
UserName: None
Workstation: None
FactoryTalk Login Id: None
Extended Information: Old revision <major.<minor>, New
revision <major.<minor>, where the major and minor revision numbers are each two digits.
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 39
Chapter 3 Controller logging
Entry
Information Logged
Remote Program
Remote Program
Extended Information: None
Firmware update from removable media Time Stamp
Entry Description: Firmware update from removable media attempted
UserName: Local
Workstation: None
FactoryTalk Login Id: None
Extended Information: Old revision <major.<minor>, New
revision <major.<minor>, where the major and minor revision numbers are each two digits.
Mode changed through Logix Designer Mode change started Time Stamp
Entry Description: Remote mode change
UserName
Workstation Name
FactoryTalk Login Id
Extended Information: Old mode <mode>, New mode
<mode>
• Possible modes:
• Run
Remote Run
• Test
• Program
Mode changed through keyswitch Time Stamp
• Entry Description: Keyswitch mode change
UserName: Local
Workstation Name: None
FactoryTalk Login Id: None
Extended Information: Old mode <mode>, New mode
<mode>
• Possible modes:
• Run
Remote Run
• Test
• Program
Major fault Time Stamp
Entry Description: A major fault occurred
UserName: None
Workstation Name: None
FactoryTalk Login Id: None
Extended Information: Fault type <type number>, Fault code
<code number>
Major faults cleared Time Stamp
• Entry Description: All major faults cleared
UserName
Workstation Name
FactoryTalk Login Id
40 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
Entry
Information Logged
Extended Information: None
• Fault routine changed
Extended Information: None
Major faults cleared through key switch Time Stamp
• Entry Description: All major faults cleared
UserName: Local
Workstation Name: None
FactoryTalk Login Id: None
Program properties modified Time Stamp
• Entry Description: Program properties modified
UserName
Workstation Name
FactoryTalk Login Id
Extended Information: Program
Property changes logged:
• Inhibit checkbox
Main routine changed
Task properties modified Time Stamp
• Entry Description: Task properties modified
UserName
Workstation Name
FactoryTalk Login Id
Extended Information: Task
Task property changes logged:
Type changed
• Inhibit checkbox
Disable Automatic Output Processing to Reduce Task
Overhead checkbox
• Priority value
• Period Value
• Execute if no Event occurs within X ms check box
Trigger changed
Trigger Tag changed
Schedule changed/Service operation
Controller time slice modified Time Stamp
• Entry Description: Controller timeslice modified
UserName
Workstation Name
FactoryTalk Login Id
Extended Information
Changes logged:
• System Overhead Time Slice
During unused System Overhead Time Slice radio buttons
Removable media removed Time Stamp
• Entry Description: Removable media removed
UserName: Local
Workstation Name: None
FactoryTalk Login Id: None
Chapter 3 Controller logging
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 41
Chapter 3 Controller logging
Entry
Information Logged
Extended Information: None
YYYYYYYYYYYYYYYYYYYY (hex format)
YYYYYYYYYYYYYYYYYYYY (hex format)
Extended Information: None
Removable media inserted Time Stamp
Entry Description: Removable media inserted
UserName: Local
Workstation Name: None
FactoryTalk Login Id: None
Safety signature create Time Stamp
Entry Description: Safety signature create
UserName
Workstation Name
FactoryTalk Login Id
• Extended Information:
Eight-character signature number on Compact
GuardLogix 5370 and GuardLogix 5570 controllers: 0xYYYYYYYY (hex format)
64-character signature number on Compact GuardLogix
5380 and GuardLogix 5580 controllers: 0xYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
Safety signature delete Time Stamp
Entry Description: Safety signature delete
UserName
Workstation Name
FactoryTalk Login Id
Extended Information:
Eight-character signature number on Compact
GuardLogix 5370 and GuardLogix 5570 controllers: 0xYYYYYYYY (hex format)
64-character signature number on Compact GuardLogix
5380 and GuardLogix 5580 controllers: 0xYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
42 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
Safety lock Time Stamp
• Entry Description: Safety lock
UserName
Workstation Name
FactoryTalk Login Id
Safety unlocked Time Stamp
• Entry Description: Safety unlock
UserName
Workstation Name
FactoryTalk Login Id
Extended Information: None
Custom entry Time Stamp
Entry Description: <User supplied string> maximum 40 characters
UserName
Workstation Name
FactoryTalk Login Id
Extended Information: <User supplied info>, maximum 82
characters
Entry
Information Logged
to <new value>
Extended Information: Tag: <tag name>
Extended Information: None
Extended Information: None
New mask: 0xFFFF_FFFF_FFFF_DFFF
Constant tag data changed Time Stamp
Entry Description: Constant tag data changed
UserName
Workstation Name
FactoryTalk Login Id
Extended Information: Tag: <tag name><old Value>
Multiple constant tag data changed Time Stamp
Entry Description: Multiple constant tag data changed
UserName
Workstation Name
FactoryTalk Login Id
Change to constant tag configuration reset Time Stamp
Entry Description: Constant tag configuration reset
UserName
Workstation Name
FactoryTalk Login Id
Extended Information: Tag: <tag name>
Safety signature delete inhibited in Run mode
Time Stamp
Entry Description: Safety signature delete inhibited in Run
mode
UserName
Workstation Name
FactoryTalk Login Id
Chapter 3 Controller logging
Safety signature delete allowed in Run mode Time Stamp
Entry Description: Safety signature delete allowed in Run
mode
UserName
Workstation Name
FactoryTalk Login Id
Audit Value Mask Modified Time Stamp
Entry Description: Change detection mask modified
UserName
Workstation Name
FactoryTalk Login Id
Extended Information:
Old mask: 0xFFFF_FFFF_FFFF_FFFF
Log Collected Data Cleared Time Stamp
Entry Description: Log Collected Data Cleared
UserName
Workstation Name
FactoryTalk Login Id
Extended Information: Log: <log name>
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 43
Chapter 3 Controller logging
Entry
Information Logged
Extended Information: Program, <connection type>
Extended Information: None
Extended Information: None
Program Connection Modified Time Stamp
• Entry Description: Program connection modified
UserName
Workstation Name
FactoryTalk Login Id
USB Cable Connected3 Time Stamp
• Entry Description: USB connected
UserName: None
Workstation Name: None
FactoryTalk Login Id: None
USB Cable Disconnected3 Time Stamp
• Entry Description: USB disconnected
UserName: None
Workstation Name: None
FactoryTalk Login Id: None
(1) In versions 20 and later, the Change Detection Audit Value column is included in the controller log. This column is used to record the Audit Value for Change Detection.
(2) In versions 20 and later, this value in the controller log equates to Transaction committed in the Change Detection mask.
(3) This feature only applies for the Compact GuardLogix 5380, CompactLogix 5380, CompactLogix 5480, ControlLogix 5580, and GuardLogix 5580 controllers.
44 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
IMPORTANT
Attribute Name
Description
Access

Introduction

Controller change detection

ChangesToDetect

Chapter 4
Change detection
Use the controller change detection feature as an additional means of detecting changes made to Logix 5000 controllers.
A unique audit value is generated when a project is downloaded to the controller.
When a change is detected in the controller, a new audit value is generated.
ChangesToDetect mask allows programmatic configuration of the events to monitor for changes.
Controller change detection is integrated into the Logix Designer application.
The change detection feature is not supported in version 19 or earlier.
Keep these considerations in mind when using change detection:
Change detection is not available on the Studio 5000® Logix Emulate™ Controller and the SoftLogix5860 Controller, and the audit value is not populated.
The 1769-L3x and 1769-L4x CompactLogix controllers do not support storing log entries to removable media.
Change detection is integrated in FactoryTalk AssetCentre version 4.1 and later. FactoryTalk AssetCentre can be configured to detect changes in the controller and read the controller's Controller Log.
Change detection is not integrated with RSMACC utilities.
Two controller attributes support the Change Detection feature in version 20 and later.
AuditValue A unique value that is generated when a project is downloaded to the
controller or loaded from removable storage. When a change is detected this value is updated. To specify which changes are monitored, use the ChangesToDetect attribute.
ChangesToDetect Used to specify which changes are monitored. When a monitored
change occurs, the Audit Value is updated.
GSV
GSV/SSV
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 45
The ChangesToDetect mask is a 64-bit value. Each bit of the ChangesToDetect mask corresponds to a particular event that could cause the Audit Value to
change. See ChangeToDecect format.
Chapter 4 Change detection
IMPORTANT
version 20 or later of the Logix Designer application.
data types in Rockwell Automation controllers.
If you want to:
In this property
Type or select
monitored for the controller.
Change detection is unavailable on the Studio 5000 Logix Emulate Controller and the SoftLogix5860 Controller.
If a bit is set to a value of 1, the corresponding event is monitored for changes and when a change for that event occurs the AuditValue updates. If a bit is set to a value of 2, the corresponding event is not monitored and does not affect the Audit Value. The default Audit Value of: 0xFFFFFFFFFFFFFFFF indicates that all events are monitored.
Tip: The Audit Value updates when the controller is online.
Some events always update the audit value when they occur. For example, the audit value changes when a project is downloaded to the controller, or when ChangesToDetect is reconfigured. These types of events are not included in the ChangesToDetect mask.
Configure the ChangesToDetect mask programmatically using SSV, GSV and MSG instructions.
Tip: Use the Security tab in the Controller Properties dialog box to configure Change Detection on
Use the Set System Value (SSV) instruction to write to the ChangesTo Detect attribute and the Get System Value (GSV) instruction to read the ChangesTo Detect attribute programmatically.
Tip: Rockwell recommends using the DINT[2] data type to avoid limitations when working with LINT
Use the Message Configuration dialog box to read or write to the ChangesToDetect attribute through CIP Generic Messages. For complete information on how to access data using an MSG instruction, refer to the <LOGIX> Controllers Message Programming Manual, publication 1756-PM012.
Use these settings to configure the ChangesToDetect attribute using the Message Configuration dialog box.
46 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
Set controller events monitored for changes
Message Type CIP Generic
Service Type Changes to Detect Set Source tag_name of type DINT[2] or LINT 1
This tag represents a bit mask of the changes
Destination Leave blank
If you want to:
In this property
Type or select
monitored for the controller.
To get AuditValue in this property
Type or select
Service Type
Audit Value Get
Source
Leave blank

AuditValue

Chapter 4 Change detection
Get controller events monitored for changes
Message Type CIP Generic
Service Type Changes to Detect Get Source Leave blank
Destination tag_name of type DINT[2] or LINT 1
This tag represents a bit mask of the changes
See also
ChangesToDetect Format on page 48
Logix 5000 Controllers Messages Programming Manual, publication
no. 1756-PM012
Use the Get System Value (GSV) instruction to read the AuditValue attribute programmatically.
Use the Message Configuration dialog box to read the AuditValue attribute through CIP Generic Messages. For complete information on how to access data using an MSG instruction, refer to the Logix 5000 Controllers Messages Programming Manual, publication no. 1756-PM0012.
Use these settings to read the Audit Value attribute using the Message Configuration.
Message Type CIP Generic
Destination tag_name of type DINT[2] or LINT 1
This tag contains the AuditValue for the controller.
See also
Logix 5000 Controllers Messages Programming Manual, publication no. 1756-PM012, publication no. 1756-PM012
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 47
Chapter 4 Change detection
Bit number
Event description
1
Online edits modified controller program
10
I/O forces modified
11
Firmware update attempted
12
Firmware update from removable media attempted
13
Remote mode change
14
Keyswitch mode change
15
A major fault occurred
16
All major faults cleared
20
Controller time slice modified
21
Removable media removed
22
Removable media inserted
23
Safety signature created
24
Safety signature deleted
25
Safety lock
28
Multiple constant Tag values changed
29
Constant Tag attribute cleared
30
Constant Tag attribute set
31
Custom Log Entry Added
35
Data log or Alarm log cleared
36
Program connection modified

ChangesToDetect format

0 Project stored to removable media
2 Transaction committed. Indicates that a batch of one or more changes has been applied
to the controller. For example, this might happen when a routine is imported online or when a module configuration is changed online.
3 SFC forces enabled 4 SFC forces disabled
5 SFC forces removed 6 SFC element force value changed
7 I/O forces enabled 8 I/O forces disabled 9 I/O forces removed
17 All major faults cleared through keyswitch 18 Task properties modified 19 Program properties modified
26 Safety unlock 27 Constant Tag value changed
32 Correlation Affected. Indicates a change occurred in the controller that affects the
synchronization between the controller and the project file that was downloaded to it.
Tip: Correlation Affected can include detection of a component that has been created, deleted, or modified, or logic that has been modified. Including the Correlation Affected event updates the audit value for these types of changes, even if other similar events (such as Online edits modified controller program or Task properties modified) are masked.
33 Safety signature delete inhibited in Run mode 34 Safety signature delete allowed in Run mode
48 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
Controller change detection.
Change detection in the
Logix Designer application

Component tracking

Chapter 4 Change detection
Use the Security tab in the Controller Properties dialog box (available in versions 20 and later of the application) to configure Change Detection.
To edit the Changes To Detect field, type a new value. To select the events to monitor for changes from a list, select Configure to open the Configure Changes to Detect dialog box.
For additional information on configuring the settings on the Security tab, refer to the <LOGIX> Security Programming Manual, publication 1756-PM016, or the online help for the Logix Designer application.
Tip: To configure Change Detection programmatically use SSV, GSV, or MSG instructions. See
See also
Controller Change Detection on page 45
Logix 5000 Security Programming Manual, publication no. 1756-PM016
Use component tracking to determine whether tracked components have
changed. Like change detection, component tracking indicates changes to a project, but at the component level. The Logix Designer application creates a unique signature for each tracked component and compiles those signatures into one overall tracked value to indicate their current state. Component tracking applies to:
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 49
Chapter 4 Change detection
Logix Designer application.
box to see the changes.
calculated on demand rather than at regular intervals.
Tracked component
Recommended limit
I/O Modules
50
Tags
300
Routines
Add-On Instructions
I/O Modules
Constant tags
Tip: Component tracking is supported only on CompactLogix 5370, ControlLogix 5570, Compact GuardLogix 5370, and GuardLogix 5570 controllers in versions 30 and 31 of the
Tracked components appear in the Tracked Components dialog box, which is accessible on the Controller Properties dialog box - Security tab. The tracked value changes when a tracked component updates in a way that affects the execution of a routine or an Add-On Instruction. Updating a component attribute that does not affect execution--for example, descriptions and non­constant tag values--does not change the tracked value.
Tip: When an attribute is changed and then changed back to its previous value, the tracked value does not change. This behavior differs from Change Detection, which registers a change when the change is reversed.
Tip: The Tracked State value and the list of tracked components are static as long as the dialog box is open and will not reflect changes from other workstations. If a user on another workstation makes an update, if changes are not showing, close and re-open the Tracked Components dialog
Recommended limits for tracked components
This table lists the recommended limits on the number of tracked components. If the limits are exceeded, a noticeable impact on performance may occur in the Logix Designer application.
Tip: To optimize performance, configure component tracking so that the tracked state value is
Routines 100 Add-On Instructions 100
FactoryTalk Security permissions that control component tracking
These FactoryTalk Security permissions control a user's ability to change tracking status for a component:
Routine: Modify Properties
Add-On Instruction: Modify
Module: Modify Properties
Tag: Modify Properties
50 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
prevent a user from modifying the project so that the tracked routine is no longer called.
Track the state of
components and constant

View tracked components

Retrieve the tracked state
tags
Designate project components for tracking to monitor the current state of a
component. Use the following instructions to track the state of a routine, an
Add-On Instruction, an I/O module, or a constant tag.
Chapter 4 Change detection
To track the state of a component:
1. In the Controller Organizer, highlight the component to track.
2. Right-click and select Include in tracking group.
3. To stop tracking a component, right-click and select Include in tracking group again.
Tip: When using the tracked state value to verify that code in a tracked routine is being executed, make sure to track all the routines that call the tracked routine, up to and including the main routine. Tracking all components that call the tracked routine helps to
To track the state of constant tags
1. In the Tag editor or the Data Monitor, highlight the constant tag to
track.
2. Right-click and select Include in tracking group.
3. To stop tracking a constant tag, right-click and select Include in tracking group again.
Tip: When a base tag or an alias tag is tracked, the base tag and all alias tags are tracked.
value using a Message instruction
After selecting project components for tracking, check project component status in the Tracked Components dialog box, which is accessible on the
Controller Properties dialog box - Security tab.
To view tracked components:
1. On the Online toolbar, click the Controller Properties icon.
2. On the Controller Properties dialog box, click the Security tab.
3. In the Change Detection section, click View components to open the Tracked components dialog box.
Use a Message (MSG) instruction to retrieve the tracked state value. When the controller receives the MSG instruction, it calculates the tracked state value and stores it in a destination tag.
Tip: When using the tracked state value to verify that code in a tracked routine is being executed, make sure to track all the routines that call the tracked routine, up to and including the main routine. Tracking all components that call the tracked routine helps to prevent a user from modifying the project so that the tracked routine is no longer called.
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 51
Chapter 4 Change detection
To retrieve the tracked state value using an MSG instruction:
1. Create a MESSAGE tag.
2. Insert an MSG instruction in the ladder logic or Structured Text routine.
3. In the instruction, click Browse to open the Message Configuration dialog box.
4. On the Configuration tab, configure the following settings:
For Message Type, select CIP Generic.
For Service Type, select Tracked State Value Get.
For Source Element, select the source tag element. In this release of
Logix Designer, the value of the SINT datatype must be 1.
For Destination Element, select the tag where the controller sends
the tracked state value. For best results, create a destination tag that is an array of 32 SINTs.
5. On the Communication tab, configure the communication path.
6. Click Apply.
52 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
To determine if
Use
The instruction’s destination value is negative.
S:N

Introduction

Status of S:FS when the
Chapter 5
Access status information
The controller supports status keywords inserted in logic for monitoring specific events.
The status keywords are not case sensitive.
Because the status flags can change quickly, the Logix Designer
application does not display the status of the flags. For example, even when a status flag is set, an instruction that references that flag is not highlighted.
A tag alias cannot be defined to a keyword.
The following table lists the available key words.
project has an SFC
The stored value cannot fit into the destination because it is either:
Greater than the maximum value for the destination.
Less than the minimum value for the destination.
Important: Each time S:V goes from cleared to set, it generates a minor fault (type 4, code 4). The instruction’s destination value is 0. S:Z
An arithmetic operation causes a carry or borrow that tries to use bits that are outside the data type.
For example:
Adding 3 + 9 causes a carry of 1.
Subtracting 25 - 18 causes a borrow of 10.
This is the first, normal scan of the routines in the current program. S:FS At least one minor fault has been generated.
The controller sets this bit when a minor fault occurs due to program execution.
The controller does not set this bit for minor faults that are not related to program
execution, such as battery low.
S:V
S:C
S:MINOR
The state of S:FS depends on the status of the SFC.
When using S:FS in an action of a sequential function chart (SFC), S:FS is set (on) for one scan each time the step goes active. S:FS = step_name.FS.
If the SFC calls a routine, S:FS is set (on) for one scan each time the step that calls the routine goes active. S:FS = step_name.FS.
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 53
If the SFC does not call a routine, S:FS is set (on) for the first scan of the task.
Example: SFC Calls a Ladder Diagram
Chapter 5 Access status information
unexpected controller operation or injury to personnel.
To get or set
Select this object
logic
application
System-overhead time slice
Controller

Get and set system data

Suppose several steps in an SFC call the same ladder diagram routine. And suppose the ladder diagram uses S:FS. Each time one of those steps goes active, S:FS turns on for one scan of the ladder diagram.
Example: Several Tasks but No SFC
Suppose two tasks use ladder diagrams. When the first task runs for the first time, S:FS turns on for one scan. After that, S:FS stays off for that task. When the other task runs for the first time, S:FS turns on for one scan in that task. S:FS stays off in the first task that ran.
The controller stores system data in objects. There is no status file, as in the PLC-5 controller. Use the GSV/SSV instructions to get and set controller
system data that is stored in objects.
The GSV instruction retrieves the specified information and places it in the destination.
The SSV instruction sets the specified attribute with data from the source.
ATTENTION: Use the SSV instruction carefully. Making changes to objects can cause
To create a GSV/SSV instruction, use Logix Designer online help to find the required information, and create the instruction in the Logix Designer application. The following summary describes the steps.
Open the online help in Logix Designer application to find the object and data type to use in the GSV/SSV instruction.
In the Logix Designer application, create a tag for the value of the attribute.
In the Ladder Logic editor, create the GSV/SSV instruction.
To get or set system data
1. Open the project in the Logix Designer application.
2. From the Help menu, choose Contents.
3. On the Help window, click the Index tab.
4. In the Type in the keyword to find field, type GSV/SSV objects and click Display.
5. In the GSV/SSV Objects help window, click the object.
Customize instructions for commonly-used
AddOnInstructionDefinition
54 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
Different Axis objects depending on motion
Axis (Several types)
To get or set
Select this object
Attributes of a message instruction
Message
Sttus, faults, and mode of a module
Module
Group of axes
MotionGroup
program
Instance number of a routine
Routine
Different objects for safety
Safety
Configuration of the serial port
SerialPort
Properties or elapsed time of a task
Task
control
If the data type of the attribute is
Then
type identified for the object.
To
Enter this instruction
Set the value of an attribute
SSV
For this operand
Select
select THIS.
Chapter 5 Access status information
Physical hardware of a controller ControllerDevice Groups one or more axes to generate
coordinated motion Coordinated system time for the devices in
one chassis DF1 communication driver for the serial
port Fault history for a controller FaultLog
CoordinateSystem
CST
DF1
Fault information or scan time for a
Precision time management for motion
Wall clock time of a controller WallClockTime
Program
TimeSynchronize
6. In the list of attributes for the object, identify the attribute to access. For attribute information, see the Logix 5000 Controllers General
Instruction Reference Manual, publication no. 1756-PM003.
7. In Logix Designer application, create a tag for the value of the attribute.
One element (for example, DINT) Create a tag for the attribute. More than one element (for example,
DINT[7])
Create a user-defined data type that matches the organization of data that is used by the attribute.
Create a tag for the attribute and use the data
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020 55
8. In the Ladder Logic routine, enter the appropriate instruction.
Get the value of an attribute GSV
9. Assign the required operands to the instruction.
Class name Name of the object. Instance name Name of the specific object (for example, name of
the required I/O module, task, message).
Not all objects require this entry. To specify the current task, program, or routine,
Attribute name Name of the attribute.
Chapter 5 Access status information
For this operand
Select
select the first member or element.
select the first member or element.
Dest (GSV) Tag that stores the retrieved value.
If the tag is a user-defined data type or an array,
Source (SSV) Tag that stores the value to be set.
If the tag is a user-defined data type or an array,
The following example gets the current date and time.
Example: Get a System Value
At the first scan, the following rung of logic gets the DateTime attribute of the WallClockTime object and stores it in the wall_clock tag, which is based on a user-defined data type.
For more GSV/SSV information, see the Logix 5000 Controllers General Instructions Reference Manual, publication no. 1756-RM003.
See also
Logix 5000 Controllers General Instructions Reference Manual,
publication no. 1756-RM003
56 Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
Technical Support Center Knowledgebase
Local Technical Support Phone Numbers Literature Library
Product Compatibility and Download Center
Rockwell Automation support
Use these resources to access support information.
(PCDC)
Find help with how-to videos, FAQs, chat, user forums, and product notification updates.
Access Knowledgebase articles. rok.auto/knowledgebase Locate the telephone number for your country. rok.auto/phonesupport
Find installation instructions, manuals, brochures, and technical data publications. rok.auto/literature Get help determining how products interact, check features and capabilities, and
find associated firmware.
rok.auto/support
rok.auto/pcdc
Documentation feedback
Your comments help us serve your documentation needs better. If you have any suggestions on how to improve our content, complete the form at
rok.auto/docfeedback
.
Waste Electrical and Electronic Equipment (WEEE)
At the end of life, this equipment should be collected separately from any unsorted municipal waste.
Rockwell Automation maintains current product environmental information on its website at rok.auto/pec.
Allen-Bradley, expanding human possibility, Logix, Rockwell Automation, and Rockwell Software are trademarks of Rockwell Automation, Inc.
EtherNet/IP is a trademark of ODVA, Inc.
Trademarks not belonging to Rockwell Automation are property of their respective companies.
Rockwell Otomayson Ticaret A.Ş. Kar Plaza İş Merkezi E Blok Kat:6 34752, İçerenkÖy, İstanbul, Tel: +90 (216) 5698400 EEE YÖnetmeliğine Uygundur
Rockwell Automation Publication 1756-PM015L-EN-P - November 2020
Supersedes Publication 1756-PM015K-EN-P - September 2020 Copyright © 2020 Rockwell Automation Technologies, Inc. All Rights Reserved. Printed in the U.S.A.
Loading...