I am interested in retrieving CPU Usage % data similar to what the Task Monitor tool offers from one ControlLogix to another using a CIP Message. Any suggestions on how to achieve this would be highly valuable and appreciated! Keywords: CPU Usage, Task Monitor tool, ControlLogix, CIP Message.
I was unaware of this, but it appears that certain Logix controllers offer support for class 72 "user memory object". To find out more information, you can refer to the documentation provided by Rockwell Automation at the following link: https://literature.rockwellautomation.com/idc/groups/literature/documents/pm/1756-pm015_-en-p.pdf.
Thank you for inquiring! I am currently retrieving information from the memory.
I am pleased that I could provide assistance so quickly. It is always rewarding to be able to help others in need.
It seems they have successfully executed the task in the Task Monitor tool. I received a response from Rockwell advising me to refer to a technote regarding CPU utilization of a Logix controller. The message from Michael at Rockwell Automation provides guidance on monitoring and optimizing CPU usage. Please click on the following link for more information: https://rockwellautomation.custhelp.com/app/answers/answer_view/a_id/116890/track/AvP8KQrqDv8S~S4sGoIK~yI8XP8qrC75Mv8W~zj~PP~f"
PLCPrgmr, could you please copy and paste the response by Rockwell? I am experiencing difficulty accessing the link or viewing it on this platform. Thank you, Derek.
To retrieve CPU usage data you're after, you may want to look into creating a custom service with ControlLogix. Here, you could actually develop an application-specific program to gather CPU usage data and send it over CIP. The inherent challenge, however, would be that ControlLogix, as far as I know, does not provide a standard mechanism for retrieving such data. So, such a task would require a fair degree of skill in programming and knowledge of ControlLogix internals. It's definitely no walk in the park, but could turn into an interesting project if you're into that sort of thing!
You can indeed retrieve CPU usage data via CIP, but it's not directly comparable to Task Monitor output because ControlLogix and CIP serve different functions. For a more accurate alternative, consider using SNMP (Simple Network Management Protocol) combined with the ControlLogix SNMP agent. This setup provides similar data like the Task Monitor. Additionally, Rockwell's FactoryTalk also offers robust system diagnostics that could capture the kind of data you're looking for. Either approach, though, will involve a fair bit of setup and networking knowledge. Remember, any method will carry some degree of overhead, so choose your approach with your PLC's capacity in mind.
For monitoring CPU usage across different ControlLogix queues, I'd suggest using the SNMP protocol in combination with a network management software. SNMP can retrieve data such as CPU usage, process details and more. As for CIP messaging, it's more useful for seamless data transfer between PLCs, rather than for gathering CPU stats. However, bear in mind that CPU stats will depend on the specific ControlLogix model you're using as not all models may support the comprehensive data retrieval that you're aiming for. In any case, ensuring that the firmware is up to date may aid in obtaining more detailed statistics.
You may want to consider using the GetSystemTimes function, as this can provide the stats you are after. It's not delivered in a percentage format like the Task Monitor, but it does tell you how much time the CPU has spent idle, in user mode, and in kernel mode since the system started. From the idle time especially, you can calculate CPU usage. As for transferring this data from one ControlLogix to another via CIP Message, you might have to create a bit of custom scripting to achieve it. Once you have the necessary data, you should be able to construct an explicit message that can carry the data across. Hope this helps!
To retrieve CPU Usage % data via CIP messaging between ControlLogix CPUs, you might want to look into using the Get Attribute Single command to access the processor's status parameters. Specifically, you can leverage the 'Processor Status' class and identify the appropriate instance that includes CPU usage metrics. It could also help to create a structured program that periodically queries this data and compares it to Task Monitor outputs for consistency. Just remember that you’ll need the correct permissions and network setup to access these attributes from one controller to another.
✅ Work Order Management
✅ Asset Tracking
✅ Preventive Maintenance
✅ Inspection Report
We have received your information. We will share Schedule Demo details on your Mail Id.
Answer: 1. How can I retrieve CPU Usage % data on a ControlLogix using a CIP Message? - To retrieve CPU Usage % data on a ControlLogix using a CIP Message, you can utilize specific CIP objects and services to request and receive this information from the target device.
Answer: - Yes, it is possible to monitor CPU Usage between ControlLogix devices by implementing a solution that involves exchanging CIP Messages to request and receive the CPU Usage % data.
Answer: - It is recommended to thoroughly understand the CIP protocol, relevant objects, and services related to CPU Usage monitoring on ControlLogix. Additionally, consider implementing error handling mechanisms and ensuring proper data formatting during the CIP Message exchange process.
Join hundreds of satisfied customers who have transformed their maintenance processes.
Sign up today and start optimizing your workflow.