Executing as an Integrated Visualization

You can execute the visualization as an integrated visualization. In this case a display variant of the visualization runs on the development system without the visualization code being loaded to the controller.

Use the integrated visualization for the testing and diagnosis of your application, or for the service and commissioning of a plant.

The requirement for this is that there are no objects under the visualization manager. Alternatively, any objects located there can be excluded from compilation. You can configure an individual object accordingly in its dialog Properties on the tab Compile.

See also

Configuring and starting display variants

Attention

In the case of projects with a fixed compiler version :code:`< 3.3.2.0`\ , the activation of the option Don’t use the PLC for Visu is necessary in order to execute the visualization as an integrated visualization.

The option no longer exists from version 3.3.2.0.

  1. Remove all objects from underneath the visualization manager or exclude the objects from compilation.

    The VISU_TASK has been removed from under the task configuration.

  2. Load the application to the controller.

    Now no visualization code will be transferred on loading the application.

  3. Start the application.

    The visualization in the visualization editor is being executed. You can operate your application.

Note

Use the command Activate keyboard usage in order to toggle between the keyboard usage of the integrated visualization and the keyboard usage of CODESYS.

See also

Restrictions in the variable output

Numerical variable values, which are output within a text in an integrated visualization, are displayed according to the current display format. You can select the display format with the command Debug ‣ Display.

See also

Data sources manager restrictions

A variable value that is transferred via the data sources manager is not output. The integrated visualization only outputs the initialization or the last transferred value.

The integrated visualization thus only enables a passive observation of the application.

Restrictions in variable types

VAR_INPUT variables behave like integrated visualizations such as VAR_IN_OUT variables during execution.

Restrictions in expressions and monitoring

Only the following expressions, which are also used in the monitoring mechanism of the development system, are supported in an integrated visualization.

Variable access:

  • Example: PLC_PRG.myPou.nCounter

Array access:

  • Requirement: the version of the runtime system is at least V3.3 SP2 or newer.

  • Access to an array of scalar data types, where a variable is used as an index

    Example: a[i]

  • Access to an array of complex data types (structure, function block, array), where a variable is used as an index

    Example: a[i].x

  • Access to a multidimensional array of all kinds of data types with one or more variable indices

    Example: a[i, 1, j].x

  • Access to an array with constant index

    Example: a[3]

  • Accesses like those described above in which simple operators are used for the calculations inside the index brackets.

    Example: a[i+3]

  • Nested combinations of the complex expressions listed above

    Example: a[i + 4 \* j].aInner[j \* 3].x

Operators in index calculations:

  • +, -, \*, /, MOD

Pointer monitoring:

  • Example: p^.x

Methods and function calls are not supported with the exception of the following:

  • Standard string functions

  • Type conversion functions

    Example: INT_TO_DWORD

  • Operators such as SEL, MIN, etc.

Restrictions in the input action Execute ST-Code

When the input action Execute ST-Code is called, only a list of assignments is supported.

If a list of assignments is used, the value of the left-hand side is not assigned until the next cycle. Processing in the next row immediately afterwards is not possible.

Example

PLC_PRG.n := 20 * PLC_PRG.m; // Don't use this!
IF PLC_PRG.n < MAX_COUNT THEN
PLC_PRG.n := PLC_PRG.n + 1;
END_IF
//Use the following!
PLC_PRG.n := MIN(MAX_COUNT, PLC_PRG.n + 1);

Restrictions in the interface of a visualization

An interface (INTERFACE) may be declared as a VAR_INPUT, however not as a VAR_IN_OUT, in the interface editor of a visualization.