Suppress runtime popups
In case an unexpected error occurs during program run, the program will normally present a popup on the teach pendant. The popup can contain a warning or error text.
However, in some projects where the teach pendant is not in use, the popups are not recommended and should be suppressed.
Currently it is possible to suppress the popups and set output registers instead. The following rf_variables are reserved and should be defined in order to use popup redirection.
rf_out_state_error
- can be any type of output signal / register
rf_out_state_warning
- can be any type of output signal / register
rf_out_state_info
- can be any type of output signal / register
rf_out_state_code
- should be an integer output register or MODBUS integer signal
rf_out_state_param
- should be an integer output register or MODBUS integer signal
rf_in_state_ack
- can be any type of input signal / register
The variables should be initialized according to the rules defined in Pally I/O and Software Controlled Inputs i.e. each variable has to contain an array of 2 elements with the 0th element as the IO type and 1st element as the IO channel number.
When the program would normally display a popup, it will set one of the the registers to True or 1 according to the following rules:
rf_out_state_error
- when an error occurs
rf_out_state_warning
- when a warning would appear
rf_out_state_info
- for all other messages
A unique (error)code and optionally an error-specific parameter will be presented in the registers defined by rf_out_state_code
and rf_out_state_param
respectively.
The receiver has to set rf_in_state_ack
to True or 1 and wait until the corresponding rf_out_state_...
becomes False or 0. Afterwards, rf_in_state_ack
should be reset to False or 0.
Example 1:
rf_out_state_error=[0, 0]
rf_out_state_warning=[0, 0]
rf_out_state_info=[0, 0]
rf_in_state_ack=[0, 7]
When any popup would appear (error, warning, info) the standard digital output channel 0 will be set to HIGH. Program execution gets paused until the event is acknowledged via setting digital input channel 7 to HIGH.
Example 2:
rf_out_state_error=[3, 1]
rf_out_state_warning=[3, 2]
rf_out_state_info=[3, 3]
rf_out_state_code=[5, 1]
rf_out_state_param=[5, 2]
rf_in_state_ack=[3, 1]
Error popups will set boolean output register 1 to True. Warning popups will set boolean output register 2 to True. Info popups will set boolean output register 3 to True. Type of error/warning/info will appear as a unique integer code in integer output register 1. Error specific parameters will appear in integer output register 2. The receiver has to acknowledge the information by setting boolean input register 1 to True.