Error in Spotware module SWUSER.SYS

In RobotStudio and real robot
In robotware 5.13 and 5.14 the results were the same.

Error handling routine if user_recover = TRUE.
The error appears when I run a welding point without water:
SW_PREPARE_ERR

Error:

Declaration:

used in the same routine:

:warning: It is not clearwhere the error is.

My temporary solution wrong.

physical input signal.:

What is the correct solution.

See full module.

webwiz/3047/SWUSER.zip

Hello,

If you don’t already know the solution to this problem.
You can add a proc call to the SwInitUserIO routine in the SwErrorRecover routine.
That will solve the problem, the routine SwErrorRecover is no longer called from the weld task but from the robot task (T_ROB1) and the reference to the signals are lost, so a new init needs to be done.

Example:

PROC SwErrorRecover (num GunNum,
num ErrType,
string ErrText,
um CurrThickness,
INOUT num Status)
VAR btnres answer;

SwInitUserIO GunNum;

TEST ErrType
CASE SW_WELD_ERR:

Thank you.
That helps, and it’s clear the behavior of RobotWare.
But it should come as standard source.