PLC Execution Environment for Priority-Driven Event Scheduling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Event-driven control systems in automation technology face challenges in ensuring timely execution of time-critical parts of control programs due to the lack of predefined processing cycles, leading to potential safety-critical response time violations.
Innovation Solution
A method for executing event-oriented control programs on programmable logic controllers, where activation events are prioritized, and function modules are executed in a sequence determined by these priorities, allowing for flexible prioritization of time-critical program parts and efficient resource allocation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If event-driven control programs are used without predefined processing cycles, then flexibility in control logic is improved, but response time reliability deteriorates
Solution Approach 1:
The control program is segmented into function modules with assigned priorities. The execution environment divides event processing into priority-based queues, separating time-critical events from less critical ones. This segmentation allows flexible event-driven logic while ensuring reliable response times for high-priority events through dedicated processing slots.
Solution Approach 2:
The system implements dynamic priority-based scheduling where the execution order of function modules adjusts based on event priorities. The execution environment dynamically allocates processing resources, allowing the system to adapt to varying event urgencies while maintaining guaranteed response times for critical events through priority-driven execution sequencing.
2Reliability
If computing capacity is significantly oversized to ensure timely execution, then response time reliability is improved, but device complexity and cost worsen
Solution Approach 1:
Instead of uniformly increasing computing capacity, the system changes the parameter of event processing by introducing priority levels and associated time windows. This allows the same hardware resources to handle multiple event types with different urgency levels, ensuring reliable response times for critical events without requiring excessive overall computing power.
Solution Approach 2:
The system applies different quality levels of processing to different events based on their priority. High-priority events receive dedicated execution slots with guaranteed response times, while lower-priority events share remaining resources. This local differentiation ensures reliability for critical functions without oversizing the entire system.
3Adaptability or versatility
If priorities are assigned to activation events with multiple possible priorities, then execution flexibility is improved, but determining execution order becomes more complex
Solution Approach 1:
The system segments the execution order determination by creating separate priority queues for different event priority levels. Instead of complex global scheduling, each priority level has its own processing slot definition. This segmentation simplifies the determination process by breaking it into manageable priority-based segments rather than requiring complex multi-criteria sorting.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method is described for executing an event-driven control program on a programmable logic controller (PLC) of an automation system. The control program comprises several function modules, and the execution of each function module is triggered by the occurrence of activation events assigned to that module. These activation events are assigned priorities. The method includes the following steps: - Detecting the activation events; - Executing the function modules assigned to the activation events in an execution order determined by the priorities of the individual activation events.