Industrial Control Program Block Execution Time Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Users of industrial control systems lack the ability to analyze the distribution of computing times between individual program blocks due to varying execution priorities and interruptions, limiting their understanding of CPU utilization and load distribution.
Innovation Solution
A method and system that determine processing times for program blocks, assign block identifiers, and display these in a graphical view, allowing users to adjust processing priorities interactively and optimize timing behavior by analyzing discrepancies between processing and execution times, as well as communication times, to improve CPU efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If program blocks are executed with different priorities and can be interrupted by higher priority blocks, then the system can respond to critical events faster, but the user cannot analyze the distribution of computing times between individual program blocks
Solution Approach 1:
The patent introduces a measurement unit as an intermediary component that transparently monitors and records execution times of program blocks without interfering with the priority-based interrupt execution. This mediator captures start and end times of each program block execution, enabling post-analysis of computing time distribution while preserving the real-time responsiveness of the control system.
2Ease of operation
If the user can only specify a current cycle time for the main block, then the system is simpler to operate, but only a limited conclusion can be drawn about the distribution of the load in the industrial controller
Solution Approach 1:
The patent segments the overall cycle time measurement into individual program block execution time measurements. Instead of providing only a aggregate cycle time for the main block, the system divides the measurement into discrete segments corresponding to each program block, enabling detailed load distribution analysis while maintaining the simple cycle time specification interface for users.
3Productivity
If processing times are measured and displayed for each program block, then the user can optimize timing behavior, but the device complexity increases
Solution Approach 1:
The measurement unit automatically performs timing measurements for all program blocks without requiring manual configuration or intervention. The system self-services by continuously monitoring execution times, storing measurements in a buffer, and making data available for analysis, thereby reducing the operational complexity despite the enhanced functionality.
4Adaptability or versatility
If the control program is occupied with communication tasks, then communication with automation components is enabled, but the processing time for control instructions increases
Solution Approach 1:
The patent segments the total execution time into distinct components: communication time and control instruction processing time. By measuring and displaying these separately, users can identify the time consumed by communication tasks versus actual control processing, enabling optimization of the balance between communication versatility and control responsiveness.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
For the user of industrial controls, there is no way to analyze the distribution of the computing times of individual program blocks; therefore, a method and a system are proposed with which processing times for block identifiers of program blocks (OB1,OB35, OB40,OB80) can be graphically displayed in a view (8).