User and Object Frame
viktor
✭
in RobotStudio
Hello!
I am programming for some time in RobotStudio already(Current version is 5.10) and meanwhile I was asking myself, why is it necessary actually to differ the object and user frame, I kept on reading the definitions in the manual, but I did not understand it. I can define a object frame also in world coordinates. I know that object coordinate sysetm is attached to user CS and user CS is attached to world. Why couldn't I attach the object directly to world without the middle step(User frame)??
I would be very thankful for your answer.
Best regards
Viktor
0
Comments
-
Short answer: Because that's the way it works in RAPID!
regards,
Johannes
Johannes Weiman
Software Engineer
ABB Robotics0 -
Hello Viktor,A workobject's User frame is referenced from the world coordinate sytem. The Object frame is referenced from the User Frame coordinate system.This comes in handy when you want displace movements in the User coordinate system. It is used in palletizing for layer control. You teach the User frame of your workobject at a top corner of the pallet. To go to the next layer you put the value of the height of the next layer in the trans.z value for the Object frame. You use the the same movement routine that was used on the first layer to move to the new layer positions.Another example is a table with 2 fixtures. You only need to program 1 fixture that has a User Frame and Object frame defined. By changing the values in the Object frame you can execute the same routine at the other fixture. If for some reason the entire table moves, all you have to do is re-teach your User frame to have your positions in the correct place.Another example is vision. You can teach a model using a User frame. To offset the x,yand angle you could put those values into the object frame to move the robot's positions.Hope this helps. The Rapid Overview Manual (3HAC16580-1_revG) has a good explaination.BR Jim Proulx0
-
Hello -Another reason I have found very helpful, (Once you understand completely the relationship between world, user and object frames) is fine tuning the workobject.Once a work object is "roughed in" you can fine tune it using the Object Frame.Once your tuning is complete, you can combine the object frame tuning offsets into the user frame, that will allow you to zero out the object frame for dynamic use in your RAPID program - I use it extensively in palletizing programs...1: Teach your workobject using the 3-point method in the user frame2: fine tune it in the object frame3: combine the object frame offsets into the user frame, and zero the object frameExample RAPID Code for combining/zero object frame:woMyWobj.uframe:=PoseMult(woMyWobj.uframe,woMyWobj.oframe);
woMyWobj.oframe:=[[0,0,0],[1,0,0,0]];Depending on the orientation of the userframe, it is much easier and more intuitive to tune in the object frame (because it is in reference to the user frame) than it would be to tune in the userframe (because it is in reference to the BASE or WORLD frame).Hope this helps...Thomas H. Johnston
PACs Application Engineer0 -
Hi,You also need it when working with positioners when the workobject user frame is attached to the baseframe of the positioner (user frame moved by <MECH UNIT>). The user frame will then coinicide with the base frame of the positioner (usually the center of the rotating disc). The object frame is then needed to use as a more natural reference of the robtargets of your path, such as a corner, or a reference hole of your workpiece. Similarly for conveyor tracking.Henrik Berlin
ABB0
Categories
- All Categories
- 5.5K RobotStudio
- 396 UpFeed
- 18 Tutorials
- 13 RobotApps
- 297 PowerPacs
- 405 RobotStudio S4
- 1.8K Developer Tools
- 249 ScreenMaker
- 2.7K Robot Controller
- 310 IRC5
- 59 OmniCore
- 7 RCS (Realistic Controller Simulation)
- 786 RAPID Programming
- AppStudio
- 3 RobotStudio AR Viewer
- 18 Wizard Easy Programming
- 105 Collaborative Robots
- 5 Job listings