Robot Programming Conflict Detection for Parallel Device Commands

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In programming for parallel operations of two or more devices, such as robots, bugs that cause conflicts in operation commands are often not detected until the program is executed, leading to significant time and effort in debugging.

Innovation Solution

A robot programming assistance apparatus and method that includes a device extractor, a determiner, and an alerter to identify and alert programmers about potential bugs in parallel operation programs by detecting shared target devices that receive conflicting operation commands.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a special program for parallel operation is created without assistance mechanisms, then the program can be executed on multiple devices, but bugs causing conflicts in operation commands are not detected until execution, leading to significant debugging time and effort

Engineering Contradiction:
Improvedetection of bugs in parallel operation programsVSAvoiddebugging time for parallel operation programs
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by performing static analysis of the parallel operation program during the programming phase to detect potential conflicts before execution. The conflict detection unit analyzes operation commands targeting shared devices and identifies conflicts in advance, allowing programmers to fix issues before deployment and significantly reducing debugging time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback by providing real-time conflict detection results to programmers during program creation. The system analyzes the program code, detects potential conflicts in operation commands on shared devices, and provides feedback information that helps programmers identify and correct bugs before execution, improving reliability and reducing debugging effort.

Inventive Principle:
Principle #23Feedback

2Measurement precision

If message identification data is added to messages in parallel programs as suggested in PTL 1, then bug identification can be improved, but the mechanism does not provide sufficient assistance for quickly locating high-probability bug portions

Engineering Contradiction:
Improveidentification accuracy of bugs in parallel programsVSAvoidease of locating bug portions in parallel programs
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The patent extracts and highlights the specific portions of code that are likely to contain bugs by providing detailed feedback information that points to conflicting operation commands. Instead of just adding identification data to messages, the system extracts the actual conflicting code segments and presents them to programmers, making it easy to locate and fix high-probability bug portions.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent uses visual feedback mechanisms (such as highlighting or color-coding conflicting code portions) to make bug-prone areas easily distinguishable. The feedback information visually emphasizes the specific lines or blocks of code that contain conflicts, enabling programmers to quickly locate and address high-probability bug portions without manually searching through the entire program.

Inventive Principle:
Principle #32Color changes

Data Source

PatentUS20250042026A1Robot programming assistance apparatus, robot programming assistance program, and robot programming assistance method
Publication Date: 2025.02.06 KAWASAKI JUKOGYO KK
  • US20250042026A1 patent drawing
  • US20250042026A1 patent drawing
  • US20250042026A1 patent drawing

AI summary

A programming assistance apparatus assists programming with respect to a program that operates two or more devices including at least a robot in parallel. The programming assistance apparatus includes a device extractor, a determiner, and an alerter. The device extractor extracts an identification name of a device to which an operation command is issued per unit of parallel operation based on a description content of the program. The determiner determines whether there is a shared target device, to which operation commands targeting a same device in two or more parallel operations are issued. The alerter outputs an alert when it is determined that there is the shared target device.