OPC UA Server Repeated Write Access Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing OPC-UA communication protocols are inefficient for repeated write access by clients to variables in servers, particularly in resource-constrained devices like sensors and actuators, as they require constant setup and teardown of data structures for each write operation, leading to increased load and reduced throughput.

Innovation Solution

Implementing a method where a client notifies a server of an access time interval and variables for repeated write access, allowing the server to create a data structure for the duration of the interval, which is maintained and used for subsequent value transmissions, eliminating the need for repeated setup and teardown of data structures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a new data structure is created for each write access by the client to the server, then the write access can be performed according to the standard OPC-UA protocol, but the server load increases and the throughput rate decreases due to repeated setup and elimination of data structures

Engineering Contradiction:
Improveprotocol complianceVSAvoidthroughput rate
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The server creates a data structure in advance during a setup phase (call method) before the actual write operations occur. This pre-created data structure is then reused for multiple write accesses within a specified time interval, eliminating the need to create and eliminate data structures for each individual write operation. This preliminary action directly resolves the contradiction by maintaining protocol compliance while significantly improving throughput rate.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the server creates and maintains a data structure for repeated write access, then the throughput rate increases and server load decreases, but the device complexity increases due to the need to manage data structures with time intervals

Engineering Contradiction:
Improvethroughput rateVSAvoiddata structure management
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The data structure is designed to be dynamic with respect to time, automatically becoming invalid after a predetermined time interval expires. This dynamic characteristic simplifies management because the server does not need complex logic to manually destroy or update the data structure - it automatically becomes obsolete after the time interval, reducing the complexity burden while maintaining high throughput rates.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If simultaneous client and server functionality is implemented in field devices, then symmetric communication is enabled, but the development outlay and resource requirements increase significantly

Engineering Contradiction:
Improvecommunication symmetryVSAvoidresource requirements
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent deliberately maintains an asymmetric client-server architecture where the server (more powerful device) handles data structure creation and maintenance, while the client (resource-constrained field device) only performs simple write operations. This asymmetric division of labor avoids the need for resource-constrained field devices to implement complex simultaneous client-server functionality, thereby reducing their resource requirements while still enabling effective communication.

Inventive Principle:
Principle #4Asymmetry

Data Source

PatentUS9838470B2Write access to a variable in a server
Publication Date: 2017.12.05 SIEMENS AG
  • US9838470B2 patent drawing
  • US9838470B2 patent drawing
  • US9838470B2 patent drawing

AI summary

A method for optimizing repeated write access by a client to at least one variable in a server via OPC UA, wherein a call method for repeated write access is provided on the server, the call method includes notification of an access time interval and at least one variable for the repeated write access, the client calls the call method on the server, the server is notified of an access time interval and the at least one variable for the repeated write access in the process, where the server creates a data structure for the repeated write access and maintains said data structure during the access time interval, values of the at least one variable which are to be written are transmitted to the server by the client during the access time interval, and the server allocates each value transmitted by the client to the associated variable.