Industrial Control Program Troubleshooting via Event Log Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Troubleshooting control programs in industrial control systems is cumbersome due to the complexity of high-bandwidth data streams and the inability to efficiently focus on specific fault conditions, especially when execution is affected by both current and historical input and output data, and state variables.
Innovation Solution
A troubleshooting tool that displays data events only when changes in physical inputs affect output instructions, allowing users to step forward or backward through the execution of the control program, synchronizing analysis with other data sources, and providing a system to review only relevant data related to the fault condition.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If all input and output data are displayed during control program execution, then complete information is provided for troubleshooting, but the display becomes opaquely complex and difficult to review
Solution Approach 1:
The patent extracts and displays only the specific data events relevant to the fault condition rather than all input and output data. The troubleshooting display selectively presents data associated with the faulting instruction and its related instructions, filtering out irrelevant information to reduce display complexity while maintaining troubleshooting completeness.
Solution Approach 2:
The patent segments the control program into individual instructions and displays data events associated with each instruction separately. This segmentation allows the troubleshooting tool to present information in manageable units, showing only the segments (instructions) related to the fault condition rather than the entire program execution data.
2Measurement precision
If high-bandwidth data streams from optical encoders are stored and reviewed, then detailed process information is captured, but the data must be sorted through and produces an opaquely complex display
Solution Approach 1:
The patent extracts only the relevant data events from high-bandwidth data streams and stores them in a condensed format. Instead of storing and reviewing all encoder data points, the system captures only the events (changes in input/output data) that are associated with control program execution, significantly reducing the volume of data to be reviewed while preserving troubleshooting information.
Solution Approach 2:
The patent changes the parameter of data representation from continuous high-resolution encoder values to discrete data events marking changes in input/output states. This parameter transformation converts the continuous high-bandwidth stream into a manageable sequence of events, making the data easier to review while maintaining the precision needed for troubleshooting.
3Loss of time
If the control program is animated using stored data, then off-line analysis is enabled, but execution can only occur in the forward direction making it cumbersome to track down antecedents of faults
Solution Approach 1:
The patent inverts the traditional forward-only animation approach by enabling backward execution of the control program through the data events. The troubleshooting display allows operators to step backward through instruction execution, examining antecedent conditions and data changes that led to the fault condition, thereby making fault tracking much more efficient.
4Reliability
If state or internal variables determined by historical execution are included in animation, then accurate program operation is reflected, but the ability to focus on particular defects is hampered
Solution Approach 1:
The patent extracts and displays only the state variable changes that are relevant to the fault condition rather than all historical state changes. The troubleshooting display filters state variable data to show only those changes associated with the faulting instruction and its related instructions, maintaining accuracy while reducing complexity.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A system for troubleshooting control programs employs an event log that captures the values of inputs to outputs from the control program only at event times determined by changes in input or output data. The program allows the event log to be reviewed in jumps to only events which cause a change in output value of an instruction or particular change in output value of a particular instruction, greatly simplifying the troubleshooting process. The event log records a particular instruction instance associated with the event permitting the operation of the program to be studied in reverse order. The event log may also record a timestamp of the event allowing time stamped data from different devices to be synchronized with the review of the events.