Industrial Controller Programming via GUI Sequence-to-Code Translation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Programming industrial controllers requires professional expertise, making it expensive and time-consuming, especially when changes are needed in industrial systems, as different manufacturers use different programming languages and require specialized knowledge for modifications.

Innovation Solution

A computerized system and method that allows non-professionals to program industrial controllers using a graphical user interface to define operation sequences, which are then converted into executable code, enabling users to generate logical connections between controllable elements and automatically program the controller without needing extensive programming knowledge.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If professional programmers are used to program industrial controllers, then programming accuracy and reliability are improved, but programming cost and time increase

Engineering Contradiction:
Improveprogramming accuracyVSAvoidprogramming time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent introduces an intermediary system that translates natural language or simplified graphical inputs into controller-specific programming code. This intermediary layer eliminates the need for users to learn complex programming languages while maintaining programming accuracy, as the system automatically generates reliable code for different controller manufacturers.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the mechanical process of manual code writing and debugging with an automated computer-based system that generates programming code through algorithmic translation. This substitution eliminates manual programming errors and significantly reduces programming time while maintaining reliability through systematic code generation.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Reliability

If professional programmers are used to program industrial controllers, then programming reliability is improved, but cost increases

Engineering Contradiction:
Improveprogramming accuracyVSAvoidprogramming cost
Core Design Contradiction:
ReliabilityVSEase of manufacture

Solution Approach 1:

The patent enables end-users to program industrial controllers themselves through an automated system that requires no professional programming expertise. Users can define control logic using natural language or simple graphical interfaces, and the system automatically generates the necessary code, making the programming service self-sufficient and eliminating dependency on expensive professional programmers.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent creates a reusable programming framework that can be copied and applied across different projects and controllers. Once the translation system is established, programming templates and code patterns can be replicated and adapted, significantly reducing the cost of programming while maintaining consistent quality and reliability across multiple applications.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If different programming languages are used for different controller manufacturers, then controller compatibility is improved, but user complexity increases

Engineering Contradiction:
Improvecontroller compatibilityVSAvoidprogramming complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates a universal programming interface that works across multiple controller manufacturers and models. The system translates a single standardized input format into the specific programming languages required by different controllers, allowing users to program any controller through a single unified interface without needing to learn multiple programming languages.

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

Solution Approach 2:

Instead of requiring users to learn multiple controller-specific programming languages, the patent inverts the approach by having the system learn and adapt to multiple languages. The translation system is designed to understand various controller programming languages and automatically convert between them, placing the complexity in the system rather than in the user interface.

Inventive Principle:
Principle #13The other way round (Inversion)

4Manufacturing precision

If system changes are made by professional programmers, then modification accuracy is improved, but time consumption increases

Engineering Contradiction:
Improvemodification accuracyVSAvoidprogramming speed
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The patent implements preliminary action by pre-defining programming templates, code structures, and translation rules for common control scenarios. When system modifications are needed, the system can quickly adapt these pre-established patterns to the specific changes required, ensuring accuracy through proven templates while achieving rapid implementation without starting from scratch.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces dynamic adaptability that allows the programming system to automatically adjust to system changes. The translation system can dynamically modify existing code structures and logic based on user inputs describing desired changes, maintaining accuracy through systematic adaptation while achieving rapid reconfiguration without requiring complete re-programming.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12130605B2System and method for computerized programing of a controller of an industrial system
Publication Date: 2024.10.29 CIP CONTROL LTD
  • US12130605B2 patent drawing
  • US12130605B2 patent drawing
  • US12130605B2 patent drawing

AI summary

Disclosed are a computerized system and a method of programing a controller of an industrial system. The method may include: receiving, from the controller, data defining two or more controllable elements included in the industrial system; generating logical connections between the two or more controllable elements based on the received data and the graphical presentation; receiving, from a user interface included in the computerized system, one or more graphical markers presenting an operation sequence of the two or more controllable elements; and converting the graphical markers to an executable code configured to control a controller of the industrial system to control the two or more controllable elements according to the operation sequence.