Simulation

The OPC-Server offers to simulate process-values. In this case no communication to the ADS-device (like PLC) is done instead simulated values are send to OPC-client.

Different simulation templates like sinus, ramp, random etc. are available to be configured with detailed behaviour (amplitude, start /stop values).

The feature "Simulation" ist available in OPC Server version V4.0.x.x.

OPC-Server version V4.1.x.x offers a multiple more performant access to TwinCAT-devices, the simulation-mode is under construction and not supported today.

The OPC-Server offers

It is not possible to combine both simulated and real-process values.

Sample
The complete sample contains both, the PLC project and the definition of OPC-simulation.

1. Step: Configuration of simulation-templates for TwinCAT OPC Server

Start TwinCAT-OPC-Configurator "Start - All Programs - TwinCAT System - TwinCAT - TwinCAT OPC Configurator"

Simulation 1:

Navigate to "Simulations", right click and select menu "New".

Simulation 2:

For "Name" please enter a name for this simulation template.
This name must be OPC conform, no special characters allowed.

Simulation 3:

With "OK" you get into the dialog to configure in details your new "Simulations Signal".

Simulation 4:

Following settings can be done :

Signal Type

Req./Opt.

Description

 

 

 

0 : ReadCount

Optional

 

1 : WriteCount

Optional

 

2 : Random

Optional

 

3 : Ramp

Optional

 

4 : Sine

Optional

 

5 : Square

Optional

 

6 : Triangle

Optional

 

7 : Stepp

Optional

 

 

 

 

Disable

Optional

Disables this signal. OPC-Server will ignore this signal.

2. Step: Check and save configuration

Save new configuration by selecting menue "File - Save As...".

After successfully creating and saving of new OPC-configuration file the next dialog offers to activate this new configuration.

Simulation 5:

Select "OK" to activate the configuration. With next startup the OPC-Server will work with new settings.

Simulation 6:
Simulation 7:

In case of opc server offers old previous configuration to opc-clients but a new configuration was activated this means, that OPC-server was not restarted to load fresh configuration.

3. Step: Link of PLC-Variable with Alarm-Type

With previous steps we defined a "simulation-template" with detailed information about simulation behaviour.
Now we define, which PLC variable should be handled like a simluation.

This link is configured in PLC-Control as and additional information for IEC1131-variable declaration.

Take care on following settings :

Add a comment behind PLC-variable declaration. This comment will be interpreted by the opc-server and links this plc-variable to a previous defined simulation-template.
The simulation-template with the unique Simulation-ID was configured in step 1.

Simulation 8:

Today just global PLC-variables can be linked to Simulation-Templates. Elements of structures or arrays can not be configured as an simulated variable.

Future versions of OPC-Server will not have this limitation.

Sample :

The syntax is important:

dblMemAlarmCounter     :     LREAL;   (* ~
                    (OPC         : 1 :
available for OPC-clients)
                    (OPC_PROP[6006]  : 1 :
OPC_PROP_SIMU_ENABLE)
                    (OPC_PROP[6007]  : 6 :
OPC_PROP_SIMU_ID)
                      *)

Each time compiling the PLC-project the PLC-Control will create the file <PLC-projectname>.tpy. This XML based file contains information about PLC-variables and their link to simulation templates.
The OPC server will analyze this information of the TPY file., so configure the OPC-Server to know the file <PLC-projectname>.tpy Details