Parallel write access of the visualisation to g_DCTRL_bCInh1_b

Which products are affected?
TensionControl template as of V2.0, DancerControl template as of V2.0

What happens?
The request to inhibit the controller via g_DCTRL_bCINH1_b=TRUE from the user program in an interval task is cyclically interrupted for a short period of time. The visualisation display changes between red and green.

When does the problem occur?
The controller inhibit is cyclically written with the 'CINH' status of the visualisation button. If the user applies the g_DCTRL_bCINH1_b variable a cyclical task overwrites the variable status.

Possible diagnostics?
The interruption of the controller inhibit requested can most clearly bee seen if g_DCTRL_bCINH1_b=FALSE is written in very long time intervals and the 'CINH' button in the visualisation is kept pressed. The change of colour between red and green illustrating the controller inhibit status can then very clearly be observed in the visualisation.

Short-term measures/recommendations?
Instead of g_DCTRL_bCINH1_b it is only allowed to use g_DCTRL_bCINH2_b in the user program since this device control input is not written from the template.

Evaluation:
The controller can be inhibited unrestrictedly via the second device control input. The interruption of the controller inhibit is in case of usually short interval times of the user tasks so short (3 - 10 ms) that there is no movement inside the machine.
In the template documentation it is explicitly pointed out that the g_DCTRL_bCINH1_b variable must not be accessed and written from the user program.

URL for linking this AKB article: https://www.lenze.com/en-de/go/akb/200704425/1/
Kontaktformular