OPC UA Session Transaction Simulation for Data Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

OPC UA's existing mechanism for ensuring consistent and error-proof data exchange between OPC UA client and server is limited, particularly for multiple, logically related write operations across different devices, as it requires tailored client-server communication and does not support transaction-oriented set operations effectively.

Innovation Solution

Implementing a method where OPC UA sessions are expanded to include transaction-oriented set operations by simulating all service calls within a session and deferring their execution until the session is completed, allowing clients to preview and manage the results of operations before actual execution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If OPC UA variables are treated individually with per-variable status codes, then communication flexibility is maintained, but ensuring consistency across multiple related write operations becomes complex and requires tailored client-server communication

Engineering Contradiction:
Improveconsistency of data exchangeVSAvoidcommunication mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the transaction into two distinct phases: a simulation phase where operations are validated and results are communicated, and an execution phase where operations are actually performed. This segmentation allows the system to maintain individual variable handling while ensuring transactional consistency across multiple variables, resolving the contradiction between communication flexibility and consistency assurance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary simulation of write operations before actual execution. The server simulates the operations during the session, communicates simulated results to the client, and only after client confirmation are the operations executed. This preliminary action ensures consistency across multiple related operations without requiring complex tailored communication mechanisms.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If multiple OPC UA sessions are allowed to exist simultaneously, then client-server communication flexibility is improved, but managing transactional consistency across sessions becomes difficult

Engineering Contradiction:
Improvesession management flexibilityVSAvoidtransaction consistency
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent makes the simulation mechanism universal by implementing it as a standard OPC UA session feature that can be used across all sessions and client-server configurations. Rather than requiring tailored communication for each transaction scenario, the universal simulation approach works consistently across multiple simultaneous sessions, maintaining both flexibility and reliability.

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

3Speed

If OPC UA calls are executed immediately upon receipt, then response time is reduced, but the ability to preview and control operation results is lost

Engineering Contradiction:
Improveoperation execution speedVSAvoidoperation control capability
Core Design Contradiction:
SpeedVSEase of operation

Solution Approach 1:

The patent introduces dynamic control over operation execution by allowing the client to decide whether to execute operations based on simulated results. The server dynamically switches between simulation mode and execution mode within the same session, enabling both fast execution (when operations are confirmed) and preview capability (during simulation phase), thus resolving the contradiction between speed and control.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP3137999B1Method and apparatus for expanding transactions in opc ua
Publication Date: 2020.04.08 SIEMENS AG
  • EP3137999B1 patent drawingFigure 1
  • EP3137999B1 patent drawingFigure 2
  • EP3137999B1 patent drawingFigure 3

AI summary

An OPC UA session is interpreted as a single transaction according to the invention. In this case, a transaction means that all service calls, apart from the above-mentioned calls, are initially only simulated and are not executed and the execution of the service calls is shifted to the termination of the transaction. Each operation inside a session is formally checked and then simulated. The simulated result or the result of the formal check is immediately sent to the client. The client therefore receives a preview of the result of the operations. If the client determines that one of the operations carried out would not lead to the desired result, the client can reject the operations. If the client wants the set operation to be carried out, the client terminates the current session.