Control Program Debugging With Edit History and Error Context

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As control programs become larger in scale, identifying the cause of errors and dependencies between program organization units (POUs) and variables becomes complicated, lengthening the debugging time, especially for programmers unfamiliar with the program.

Innovation Solution

A control-program-development supporting apparatus with an editing unit and display unit that displays debugging assistance information, including past editing contents and relevant error information, when the same process is performed multiple times, facilitating easy comparison and identification of errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the control program becomes larger in scale, then the functionality and complexity of the system improve, but the time required for debugging increases and error identification becomes more difficult

Engineering Contradiction:
Improvecontrol program functionalityVSAvoiddebugging time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent segments the debugging information by separating past editing contents, change contents, and error information into distinct display regions. This segmentation allows developers to access specific types of information without being overwhelmed by the entire codebase, effectively managing the complexity of large control programs while maintaining efficient debugging workflows.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by automatically collecting and storing past editing contents, change contents, and error information before debugging is needed. This pre-prepared information is then readily available during debugging sessions, eliminating the time-consuming manual search through historical data and reducing overall debugging time.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If the control program becomes larger in scale, then the system capabilities improve, but the complexity of identifying dependencies between POUs and variables increases

Engineering Contradiction:
Improvesystem capabilitiesVSAvoiddebugging complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary information display mechanism that mediates between the complex control program and the debugger. By inserting intermediate information such as past editing contents and change contents as references, the system simplifies the identification of dependencies between POUs and variables, making the debugging process more manageable despite the program's scale.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements feedback by displaying error information alongside past editing contents and change contents. This feedback loop allows developers to immediately see the relationship between previous code modifications and current errors, reducing the complexity of tracing dependencies through large codebases and enabling faster identification of problematic areas.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If the control program becomes larger in scale, then the functionality improves, but the ease of operation during debugging deteriorates

Engineering Contradiction:
Improveprogram functionalityVSAvoiddebugging ease
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent merges multiple debugging information types (past editing contents, change contents, and error information) into a single integrated display interface. This merging allows developers to access all necessary debugging information in one location without switching between multiple tools or windows, significantly improving the ease of operation during debugging sessions while supporting large-scale control programs.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system provides self-service by automatically gathering and organizing debugging information without requiring manual intervention. The automatic collection and display of past editing contents, change contents, and error information eliminates the need for developers to manually search through code history or reconstruct debugging contexts, making the debugging process more accessible even for those less familiar with the control program.

Inventive Principle:
Principle #25Self-service

Data Source

PatentEP3709172B1Apparatus, system, method and program supporting control-program-development
Publication Date: 2026.04.15 OMRON CORP
  • EP3709172B1 patent drawingFigure 1~2
  • EP3709172B1 patent drawingFigure 3
  • EP3709172B1 patent drawingFigure 4~6

AI summary

A control-program-development supporting apparatus (10) comprises an editing unit (11) and a display unit (14). The editing unit (11) executes editing of a control program and debugging of the control program. The display unit (14) displays the contents of the editing and the contents of the debugging. In addition, when the same processing is designated a plurality of times for a program construct or a variable to be debugged contained in the control program during executing debugging, the editing unit (11) causes the display unit (14) to display debugging supplementary information including at least one of past edited contents concerning the program construct or the variable to be debugged, changed contents of the control program, and related error information.