Synchronization Manager for Deadlock Detection in Robotic Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In automated control environments, such as industrial robotic systems, detecting and preventing deadlocks among control programs that utilize various synchronization objects is complex and error-prone, leading to production halts and significant manual intervention, as existing methods are insufficient for analyzing combinations of synchronization objects beyond mutex types.

Innovation Solution

The system detects actual and potential deadlocks by standardizing the interface between control programs and synchronization objects, using partner lists and synchronization matrices to identify circular waits and potential deadlocks, expanding the definitions of 'owner' and 'waiter' to apply to all synchronization object types, and analyzing synchronization matrices to prevent deadlocks before execution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional programming methods are used to interface synchronization objects and control programs, then the system can handle basic synchronization needs, but the programming becomes complex and error-prone

Engineering Contradiction:
Improvesynchronization correctnessVSAvoidprogramming complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a synchronization manager as an intermediary component that automatically manages synchronization objects. This manager handles the complex interactions between control programs and synchronization objects, providing a simplified interface while maintaining rigorous synchronization correctness through automated state tracking and validation.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The synchronization objects are designed to be self-managing through the synchronization manager, which automatically tracks their state, manages waiting programs, and coordinates access without requiring complex manual programming. The system self-regulates synchronization based on predefined rules and state transitions.

Inventive Principle:
Principle #25Self-service

2Adaptability or versatility

If the system supports multiple types of synchronization objects (mutex, rendezvous, barrier, buffer, fixture, handoff, sequence element, multi-sequence element, time synchronization), then the system becomes more versatile, but the complexity of synchronizing control programs increases

Engineering Contradiction:
Improvesynchronization object type varietyVSAvoidsynchronization coordination complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates a universal synchronization manager that handles all types of synchronization objects (mutex, rendezvous, barrier, buffer, fixture, handoff, sequence element, multi-sequence element, and time synchronization) through a unified framework. This single manager provides multi-functional capabilities to manage diverse synchronization objects without requiring separate management mechanisms for each type.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The synchronization manager uses parameter-based configuration to adapt to different synchronization object types. By changing parameters such as object type, access mode, and synchronization semantics, the same manager infrastructure can handle various synchronization scenarios without increasing structural complexity.

Inventive Principle:
Principle #35Parameter changes

3Extent of automation

If the number of synchronization objects and control programs increases, then the system becomes more advanced and complex, but the difficulty in synchronizing control programs and synchronization objects increases

Engineering Contradiction:
Improvesystem advancementVSAvoidsynchronization difficulty
Core Design Contradiction:
Extent of automationVSDifficulty of detecting and measuring

Solution Approach 1:

The synchronization manager implements continuous feedback mechanisms by monitoring the state of all synchronization objects and control programs. It tracks which programs are waiting for which objects, maintains state information, and uses this feedback to automatically coordinate synchronization and detect potential deadlocks or conflicts before they occur.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The synchronization manager serves as a central intermediary that mediates all interactions between control programs and synchronization objects. This single point of coordination simplifies the complexity by providing a unified management layer, regardless of the number of programs and objects in the system.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If manual intervention is used to resolve deadlocks, then production halts can be addressed, but significant time is lost and manual intervention is required

Engineering Contradiction:
Improvedeadlock resolution capabilityVSAvoiddeadlock resolution time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The synchronization manager implements self-service deadlock detection and resolution by automatically monitoring system state and identifying deadlock conditions. When a deadlock is detected, the system can automatically resolve it through predefined strategies such as selecting a victim program to rollback or reassigning synchronization resources, eliminating the need for manual intervention.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system uses continuous feedback from synchronization object states to detect deadlock conditions automatically. By tracking waiting relationships and resource allocation, the manager can identify circular wait conditions and trigger automated resolution protocols before production is significantly impacted.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9086690B2Uniform synchronizing robot control and deadlock detection in uniform synchronization
Publication Date: 2015.07.21 KUKA ROBOTICS CORP
  • US9086690B2 patent drawing
  • US9086690B2 patent drawing
  • US9086690B2 patent drawing

AI summary

Control programs for robotic systems are synchronized through the use of synchronization objects which control access to shared resources and allow for sequencing of events in separate program threads. Where necessary, partner objects generate between control programs and synchronization objects to assure uniform interaction between control program threads and synchronization objects. As all synchronization objects contain searchable partner lists, actual simulated and runtime deadlocks including any type of synchronization object can be detected, and the full system can be analyzed to identify potential deadlocks.