Configuring Initial and Default Signal Values for SIMIT OPC UA Server Couplings
In Siemens SIMIT Simulation Platform, when output signals published through an OPC UA Server coupling initialize to zero instead of their configured default values upon simulation start, the cause is signal overwrite by connected simulation components during initialization cycle 0. SIMIT evaluates component initial states at simulation startup: if a component output or unassigned variable calculates an initial state of 0, it immediately overwrites the coupling's default parameter. To ensure persistent non-zero default values on OPC UA outputs, configure the 'Initial value' directly on the driving component parameters, use SIMIT Constant (CONST) blocks, or save an 'Operating point' (Arbeitspunkt) snapshot in SIMIT and set it as the default startup condition.
Table of Contents
- Executive Summary
- Architecture and Fundamental Mechanics
- Step-by-Step Implementation Procedure
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
Executive Summary
During virtual plant commissioning in SIMIT, simulation engineers frequently integrate third-party supervisory systems, SCADA platforms, or external MES systems using the native SIMIT OPC UA Server coupling. A recurring issue arises when engineers define non-zero default values for output tags in the OPC UA signal table, but observe that every time the simulation transitions to RUN mode, the tags immediately reset to zero. This occurs because of SIMIT's execution precedence rules during simulation cycle 0, where driving behavioral components override coupling defaults. This guide explains SIMIT initialization mechanics, details the role of operating points (snapshots), and provides proven methods to maintain default values on OPC UA interfaces.
Architecture and Fundamental Mechanics
The signal processing lifecycle in SIMIT coordinates coupling tables, behavioral equations, and operating state transitions:
1. SIMIT Initialization Sequence (Cycle 0):
When an engineer clicks 'Start' in SIMIT, the simulation engine executes an initialization phase (Cycle 0):
- Step 1: Coupling tables load their configured 'Default value' (Standardwert).
- Step 2: All diagram components (mathematical blocks, drives, valves) evaluate their internal equations and initial condition parameters.
- Step 3: Component output values are written to the global signal bus, overriding any preceding coupling default values if a physical link exists.
2. Why Output Signals Drop to Zero:
If an OPC UA output signal is connected to a diagram component whose initial state evaluates to zero (or if an uninitialized variable has no default specified in its component definition), Cycle 0 overwrites the signal with 0.0. External OPC UA clients reading the node immediately register zero.
3. The Operating Point / Snapshot Solution (Arbeitspunkt):
SIMIT provides an Operating Point (Snapshot) mechanism. An Operating Point captures the exact instantaneous state of all global signals, component states, and coupling values. By saving an Operating Point with the desired initial values and marking it as the 'Initial state' for the simulation project, SIMIT initializes all signals to those exact values at Cycle 0 without being overwritten by component startup defaults.
Step-by-Step Implementation Procedure
-
Configure the OPC UA Server Coupling in SIMIT:
a. Open the SIMIT project and navigate toCouplings -> OPC UA Server.
b. In the 'Signals' tab, locate the output signals intended for external clients.
c. Enter the desired value in the 'Default value' column. -
Configure Initial Value on Driving Diagram Components (Method A - Component Parameter):
a. Open the simulation diagram sheet driving the OPC UA signal.
b. Select the component connected to the signal.
c. In the component properties pane, look for the 'Initial value' or 'Startup value' parameter.
d. Set the initial value to match the desired startup condition (e.g., set pressure transmitter base to101.3 kPa).
e. If the signal is a static setpoint, insert aCONST(Constant) block from theStandard Library -> Mathpalette and wire it directly to the output signal. -
Capture and Set an Operating Point Snapshot (Method B - Recommended for Complex Models):
a. Start the SIMIT simulation in RUN mode.
b. In SIMIT, write the desired setpoints and initial values to all OPC UA output signals so the simulation reaches the desired steady-state starting condition.
c. In the top toolbar or menu, selectSimulation -> Operating Points -> Save operating point....
d. Name the snapshot (e.g.,Startup_Default_Condition).
e. Open project settings: under 'Startup operating point', selectStartup_Default_Condition.
f. Stop the simulation. -
Re-initialize Simulation and Test:
a. Click 'Start' in SIMIT.
b. SIMIT loads the saved operating point at Cycle 0.
c. Connect an external OPC UA client (e.g., UA Expert): verify that all output nodes immediately publish their configured non-zero default values.
Verification
- Connect an OPC UA testing client (such as UA Expert) to the SIMIT OPC UA Server endpoint URL (e.g.,
opc.tcp://localhost:4840). - Navigate to the SIMIT address space under
Objects -> Couplings -> OPC UA Server. - Start the simulation in SIMIT: observe the monitored values in UA Expert.
- Verify that the monitored nodes display their non-zero initial values from the very first update packet without dipping to zero.
Limitations and Operational Precautions
Ensure that external OPC UA clients do not write to read-only simulation output signals; attempting to overwrite output signals from both SIMIT components and external clients creates signal race conditions.
Engineer FAQ
Why do SIMIT OPC UA output values reset to zero upon startup?
Because during initialization cycle 0, connected simulation diagram components evaluate their own initial states and overwrite the coupling default table.
What is an Operating Point in SIMIT?
An Operating Point (Arbeitspunkt) is a saved snapshot of all signal values and component states across the entire simulation model.
How do I make a constant default value on an OPC UA output in SIMIT?
Insert a CONST (Constant) block from the SIMIT standard math library and wire its output directly to the OPC UA coupling signal.
What port does the SIMIT OPC UA Server use by default?
By default, SIMIT listens on port 4840 (opc.tcp://<Host>:4840).
Can SIMIT OPC UA Server run while connected to a Virtual Controller?
Yes. SIMIT can simultaneously execute a Virtual Controller coupling to the PLC while hosting an OPC UA Server for external SCADA or MES clients.
Technical References
- SIMATIC SIMIT Simulation Platform User Manual
- SIMIT OPC UA Server and Client Coupling Configuration Guide
- OPC Unified Architecture Specification (OPC Foundation)
Related Articles
- Simulating SINAMICS Control Unit Telegram 390 in SIMIT Simulation Platform
- Troubleshooting Empty SIMIT Component Libraries and Component Type Editor (CTE) Password Prompts
- Simulating TIA Portal Startdrive and Sinamics Drives in SIMIT via HWCNExport XML
Related Tags
- SIMIT
- OPC UA Server
- Default Values
- Operating Point
- Simulation Coupling
- Virtual Commissioning