On Line Change

The workbench enables you to change your application "on the fly" while it is running in the target system. In order to enable most kinds of changes, you need to configure the programming environment and enable the On Line changes.

Run the "Build / Compiling Options" menu command and select the "On Line Change" page to setup the application for accepting changes.

When the On Line Change is disabled, no On Line Change at all is possible. There is no limitation in editing and programming features when On Line Change is disabled.

When On Line change is enabled, you can perform on the fly the following kinds of changes:

- Change the code of a program
- Change the condition of a SFC transition or the actions of a SFC step
- Create, rename or delete global and local variables
- Create, rename or delete global and local function block instances

The following kinds of changes are not allowed:

- Create, delete or rename a program
- Change SFC charts
- Change the local parameters and variables of a UDFB
- Change the type or dimension (or string length) of a variable or function block instance
- Change the set of I/O boards
- Change the definition of RETAIN variables

In addition, the following programming features that are not safe during a change are forbidden:

- Pulse (P or N) contacts and coils (edge detection)
  Instead, you must use declared instances of R_TRIG and F_TRIG function blocks
- Loops in FBD with no declared variable linked
  You need to explicitely insert a variable in the loop

In order to allow the declaration of new variables and blocks, you have to define the amount of memory to be allocated in the target for each type of data. This includes:

- The number of variable for each type (8, 16, 32 or 64 variables, character strings)
- The number of function block instances
- The amount of memory for storing character strings
- The amount of memory for private data of function block instances

The number of variables of each type actually used in the application is given as a report at the end of each build. Changes are allowed until you exceed the sizing for at least one type of data. At this time, if you need to declare new variables, you have to change the configuration of memory sizing, rebuild the application and perform a full download stopping the target application.

When On Line Change is enabled, all new created variables are marked in blue in the variable editor. Deleted variables are kept as "ghosts", marked in gray and renamed with a "_del_" prefix. You are allowed to manually rename a ghost variable if you want to make it alive again.

Note: The On Line Change feature can be experimented with the Simulator started in "Hot Retart" mode. A hot restart is possible when On Line Change is enabled and when the application includes valid changes.