I have a macro that contains an IMOV but, if the operator happens to press the emergency button while the robot is doing this macro code, the job line holding this macro call is restarted. The robot ends up doing the IMOV twice, restarting the IMOV from the position the robot was when the emergency was pressed. This obviously leads to collisions.
I need the macro not to be restarted or, if it's not that, preventing the IMOV from executing the logic twice. It would also work if the robot could go backwards to the last fixed position, and restart from there. But I guess that's not out of the box.
I can use fixed positions in most of the program but I need IMOVs at least in two points. Naturally I want to keep the macro code but I will get rid of it if that's the issue.
I recall I saw in a manual a way to let the controller show the macro step, instead of just the line containing the macro call. Would this help? There's also some parameter that might be helpful but I'm not so sure.
S2C324, S2C325: OPERATION AFTER RESET FROM PATH DEVIATION
These parameters specify the method of restarting the manipulator that has deviated from the normal path such as an emergency stop or jog operation.
0: Move to the indicated step (initial setting).
1: After moving back to the deviated position, move to the indicated step.
2: Move back to the deviated position and stop.
Thanks