Industrial Control Code Generation With Simulation Validation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The manual creation of control code for industrial assets in automation systems is labor-intensive and requires substantial knowledge of control theory, production processes, and programming, necessitating thorough validation and testing before deployment.

Innovation Solution

A computer-implemented method using an automatic code generator to produce candidate control code, followed by validation and execution in a simulation environment, with feedback loops to refine the code until it meets the given task requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If control code is created manually by control engineers, then the code can be validated and tested thoroughly, but the engineering phase requires significant manual effort and time

Engineering Contradiction:
Improvecode validation qualityVSAvoidengineering phase efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system enables self-service by allowing the code generator to automatically validate and test generated control code without requiring manual intervention from control engineers. The validation process checks syntax, semantics, and task fulfillment automatically, freeing engineers from routine verification tasks while maintaining code quality.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements feedback mechanisms where validation results and test outcomes are automatically fed back to the code generator. This allows the generator to learn from validation failures and improve subsequent code generation, maintaining high reliability while reducing manual effort through iterative self-correction.

Inventive Principle:
Principle #23Feedback

2Productivity

If control code is generated automatically, then the engineering phase time is reduced, but the code must be validated to ensure it can perform the given task

Engineering Contradiction:
Improvecode generation speedVSAvoidvalidation system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The validation system is segmented into multiple independent components: syntax validation, semantic validation, and task fulfillment validation. Each component handles a specific aspect of code verification, making the overall complex validation process manageable and modular while enabling rapid automated checking of generated code.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A simulation environment acts as an intermediary between code generation and real-world deployment. This intermediary allows automatic testing of control code in a virtual representation of the target system, validating functionality without requiring physical hardware while reducing the complexity of direct validation.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If thorough validation and testing are performed on control code, then code reliability is ensured, but manual effort and time consumption increase

Engineering Contradiction:
Improvecontrol code functionalityVSAvoidengineering phase duration
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary validation and testing actions during the code generation process itself. Syntax checks, semantic validations, and simulation tests are executed immediately when code is generated, rather than as separate post-processing steps. This preliminary action ensures reliability while preventing time loss through deferred validation.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP4617855A1Automatic control code generation for industrial assets
Publication Date: 2025.09.17 ABB (SCHWEIZ) AG
  • EP4617855A1 patent drawingFigure 1
  • EP4617855A1 patent drawingFigure 2
  • EP4617855A1 patent drawingFigure 3

AI summary

A computer-implemented method (100) for generating control code (3) for actuating an asset (2) in an industrial plant (1) to perform a given task (4), comprising the steps of: • obtaining (110), from an automatic code generator (5), based at least in part on the given task (4), candidate control code (3a); • performing (120) code validation on the candidate control code (3a), said code validation being configured to determine whether the candidate control code (3a) is capable of being executed, and/or capable of being compiled for execution; • after successful code validation, determining (130) whether execution of the candidate control code (3a) is capable of actuating the asset (2) to perform the given task (4) by executing the candidate control code (3a) in a simulation environment (6); and • if this determination is positive, determining (140) the candidate control code (3a) as the sought control code (3).