Hi people,
I'm a pretty fresh RAPID user (this is my first time, in the past 3 years I only used Motoman and Kuka), while getting to learn how stuff works in ABB robots one of my colleagues came out with "how life was easier with Second Home Position button in Motoman robots"; he's right, I usually struggle a couple of days trying to teach operators the basic how-to's of robots, even with a Motoman, but at least after 2 days they know which menu and which button to press to get the arm in position.
Does anyone know how to setup something similar in RAPID?
I was thinking about, while in manual mode, keeping pressed one of the prog-keys could make the PP jump over, from basically any point, to a line in the Homing routine, checking a couple of conditions and then going home with a Move instruction.
But how to continously monitor one specific simulated output, which will trigger the motion directly and out of nowhere?
I want this to be just a baseline for something "safer" to come, I already have a backup code which is working in another way, but the management here went like "mmmeh... that's too complicated, why can't we do this by pressing a button and the robot goes in home?".
I have Multitasking in a couple systems but, I'm a real newbie and there's actually no time for some trial-and-error; the only thing I could read about is that there's one motion task per mechanical unit, so i should do something different with a semistatic task, but how do I "jump" inside another task?
Cheers
Homing for noobs
-
varda -
November 21, 2017 at 6:39 PM -
Thread is marked as Resolved.
-
-
real easy to do in auto mode ... not so much in manual. I think with ABB it was designed that if you're using it in manual mode, that 'Debug > PP to Routine > R_Home' should be simple enough if you know how to do everything else.
It's a design choice anyway.The 'easy' or 'safe' way I chose to do this is have operators run the machine from an interface built as an application with touch buttons on the screen. 'Production', 'Home',
Multi-tasking could do it, but what you could do is check an input with a 'Trap' Routine (Read about about those in the manual there's a lot there.)
Trap Routines are pretty straight forward - personally I don't like putting motion in them because the motion executes from where-ever the trap happens so you have to make damn sure the machine can get safely to the position if an error occurs. That said, it's a great way to safely-home a robot if you have a a limited program set.
The trap routine is triggered by an input - when the input happens the robot program pointer moves to the trap routine, and then moves back to regular program execution. I use it exclusively to stop motion, and display errors.
Your Trap routine could then look like
TRAP xxxx
StopMove;
TPWrite "Press START to GO TO HOME";
TPReadFK answer,"","START","","","","";
R_HOME;
Stop;
ENDTRAPSo when you press the button to home, the robot will stop what it's doing, prompt you to rpess 'start' to home the robot, move to home and then stop program execution.
If you pressed start after that it will continue in whatever program it left off from.
You would have to put this trap routine either in a program that was running in a separate task to have it occur any-time (dangerous) or put it only in the programs that you would want to be able to home in. It should also check that the robot is not in auto-mode.