Error handler/Trap routine
I am currently working on a auto recovery program so that the operators don't have to manually recover the robot as many of them on site aren't trained to use these. As a result in this we are experiencing many crashes when they are attempting to recover weld faults.
As a result of this i have tried to create my own error handler to automatically recover the robot in fault. I am using a semi static task to to monitor if the robot is welding and moving.
VAR clock clkR1_MOVE;
VAR num nR1_Move;
WHILE TRUE DO
IF DOutput(do_MonitorStop)=1 THEN
WHILE DOutput(do_R1_Not_Moving)=1 AND DOutput(do_R1_Welding)=1 AND DOutput(doR1_AWError)=0 DO
IF DOutput(do_R1_Not_Moving)=1 AND DOutput(do_R1_Welding)=1 AND DOutput(doR1_AWError)=0 AND nR1_Move>3 THEN
Using this monitoring I am calling a trap routine to raise an error. Unfortunately this is where I am struggling as I am pretty much self taught using RAPID. I am trying to use the error code below to call the automatic recovery using a UI message box so the operator has to acknowledge the fault before it starts to move back through the program to the determined safe areas within the actual welding program.
IF ERRNO=err_R1_Weld_Fault THEN
R1_Recover:=UIMessageBox(\Header:="R1 Automatic Recover to Safe Point"\MsgArray:=maint_msg1\BtnArray:=maint_btn1\Icon:=iconInfo);
IF R1_Recover=1 then
Any time I go to test this it either pops up with interrupt queue full and value error. Or it just skips this all together and calls ABB's generic arc supervision error.
Any pointers in the right direction will be highly appreciated.
- All Categories
- 5.4K RobotStudio
- 375 UpFeed
- 15 Tutorials
- 12 RobotApps
- 286 PowerPacs
- 405 RobotStudio S4
- 1.8K Developer Tools
- 241 ScreenMaker
- 2.7K Robot Controller
- 266 IRC5
- 40 OmniCore
- 6 RCS (Realistic Controller Simulation)
- 3 RobotStudio AR Viewer
- 721 RAPID Programming
- 15 Wizard Easy Programming
- 107 Collaborative Robots
- 3 Job listings