Cyclic Program Monitoring via Timestamped Recording Buffer
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for monitoring cyclic user programs in automation systems struggle to observe rarely executed branches due to synchronization issues with Windows-based programming devices, leading to significant data loss and delayed observation of critical conditions.
Innovation Solution
A method where the automation device stores data associated with commands and counter values in a recording buffer, allowing for overwrite on repeated executions and unsolicited data transmission to the programming device, ensuring all commands are recorded and can be output on demand, without blocking the monitoring task.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If data is recorded for every command execution using Windows-based programming devices, then complete monitoring data is obtained, but system responsiveness deteriorates due to event queue synchronization limits
Solution Approach 1:
The patent divides the monitoring system into two independent parts: the automation device that generates monitoring data with timestamps, and the programming device that requests and receives data. This segmentation removes the synchronization bottleneck by allowing the automation device to operate independently without being blocked by Windows event queue processing.
Solution Approach 2:
The automation device performs preliminary action by storing all monitoring data with timestamps in its memory as commands are executed. This data is prepared in advance and can be retrieved later by the programming device without blocking either system's operation, thus preserving both data completeness and system responsiveness.
2Speed
If monitoring data is transmitted continuously to the programming device, then real-time observation is achieved, but data loss occurs for rarely executed commands due to Windows event queue limitations
Solution Approach 1:
Instead of continuous transmission, the system uses periodic action where the programming device sends requests at intervals and the automation device provides data snapshots. The timestamp information enables the programming device to reconstruct the complete execution sequence, ensuring rarely executed commands are captured without requiring continuous high-speed transmission.
Solution Approach 2:
The automation device creates a copy of the monitoring data with timestamps stored in its memory. This copy can be retrieved and transmitted to the programming device without affecting the original execution flow, ensuring complete data capture including rarely executed commands while maintaining normal system speed.
3Loss of information
If the monitoring task is blocked to ensure data transmission, then data completeness is maintained, but system productivity decreases
Solution Approach 1:
The automation device serves itself by maintaining its own monitoring data in memory with timestamps. It does not need to be blocked or interrupted for data transmission, as the programming device can request and receive data independently. This self-service approach maintains both data completeness and execution productivity.
Solution Approach 2:
Timestamp information acts as an intermediary that bridges the automation device and programming device. The timestamps enable the programming device to reconstruct the complete execution sequence without needing to block the automation device, thus maintaining productivity while ensuring data completeness through the intermediary timestamp mechanism.
Data Source
AI summary
There is described a method for monitoring a cyclic user program which is executed on an automation device by means of a programming device connected to communicate with the automation device, with a monitoring task being sent from the programming device to the automation device and the monitoring task containing command numbers of the commands to be monitored as well as the associated variables. With the method rarely run branches of the user program can also be easily observed by an execution of a command, by the data associated with the variables with corresponding command number and a first counter value, which assigns the data directly or indirectly to a cycle of the user program, being stored by the automation device in a recording buffer, by the old recording of the associated data including the first counter value being overwritten on renewed execution of the command and by the recording buffer being able to be output at the request of the programming device by the automation device.


