3D Graphical Editor for Automation Programming

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional automation software programming environments require manual configuration of separate tools, leading to inefficiencies and a lack of direct mapping between logical elements and physical hardware, resulting in incomplete simulation and programming challenges.

Innovation Solution

A system that integrates tightly coupled logic and physical simulation in a three-dimensional graphical interface, allowing users to design, simulate, and implement automation applications by associating logical and physical components within the same workspace, enabling simulation code generation and execution, and generating controller-executable code for physical controllers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If separate tools are used for programming different aspects of automation behavior, then each tool can be specialized for its specific purpose, but the system complexity increases and manual configuration becomes tedious

Engineering Contradiction:
Improvespecialization of programming toolsVSAvoidnumber of separate tools
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges multiple separate programming tools into a single integrated programming environment. The system combines network protocol configuration, memory allocation, instruction encoding, and physical hardware mapping into one unified interface, eliminating the need for multiple separate tools and reducing manual configuration overhead.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The integrated programming environment provides universal functionality to handle multiple programming tasks simultaneously. A single tool can configure network protocols, allocate memory, encode instructions, and map to physical hardware, making the system multi-functional rather than requiring specialized separate tools for each task.

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

2Adaptability or versatility

If logical elements are indirectly tied to physical hardware through tool mappings, then tool independence is maintained, but the mapping between logical constructs and actual machine behavior becomes unclear

Engineering Contradiction:
Improvetool independenceVSAvoidmapping between logical and physical
Core Design Contradiction:
Adaptability or versatilityVSLoss of information

Solution Approach 1:

The system implements feedback mechanisms that continuously display the mapping relationship between logical programming elements and physical hardware components. As users configure logical elements, the system provides real-time feedback showing how these map to actual machine behavior, ensuring transparency and clarity in the connection between software and hardware.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The integrated programming environment acts as an intermediary that maintains clear, direct mappings between logical constructs and physical hardware. Rather than allowing indirect tool-based mappings, the system provides a unified interface that directly connects programming elements to their corresponding physical implementations, preserving information about the mapping relationship.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If simulation code is translated to lower-level languages for general-purpose execution, then runtime flexibility is improved, but the simulation no longer accurately represents the specific physical devices and environment

Engineering Contradiction:
Improveruntime execution flexibilityVSAvoidaccuracy of physical simulation
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary configuration of device-specific parameters, physical constraints, and environmental conditions before runtime execution. By pre-configuring the simulation environment with accurate physical device models and constraints, the system ensures that even when executed with runtime flexibility, the simulation maintains high fidelity to the actual physical system.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The integrated environment maintains device-specific parameters and physical constraints as configurable elements that can be adjusted at runtime while preserving the fundamental accuracy of the simulation. The system allows parameter changes for flexibility while ensuring that core physical relationships and device behaviors remain accurate representations of the actual hardware.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentEP3201702B1Programming automation in a 3D graphical editor with tightly coupled logic and physical simulation
Publication Date: 2023.06.07 SIEMENS AG
  • EP3201702B1 patent drawingFigure 1
  • EP3201702B1 patent drawingFigure 2
  • EP3201702B1 patent drawingFigure 3

AI summary

A system for designing automation applications based on input from a user includes a library interface, a three-dimensional workspace, a simulation engine, and controller code generation unit. The library interface is configured to receive a user selection of a plurality of components from a library of components. The three-dimensional workspace is configured to display the components and create a system design in the three-dimensional workspace using the components based on one or more instructions provided by the user. The simulation engine is configured to generate simulation code based on the system design in the three-dimensional workspace and execute the simulation code in response to a command from the user. One or more of the components in the three-dimensional workspace may be animated during execution of the simulation code. The controller code generation unit is configured to identify one or more physical controllers corresponding to the components in the three-dimensional workspace and generate controller-executable code for those physical controllers based on the system design.