January 17, 2019, 07:29:06 PM

# Help calculating an offset

### Author Topic:  Help calculating an offset  (Read 1188 times)

0 Members and 1 Guest are viewing this topic.

August 14, 2017, 05:55:36 AM

#### DMayAstro

##### Help calculating an offset
Hi,

I'm brand new to the forum.  I'm having trouble with calculating an offset for pick and place equipment.

Here's the story.  I have a JIG that we use a pin to get specific X,Y and Z encoder values.  I want to use this same JIG to teach all the different product types we Pick and Place.  The hole in the JIG represents the X and Y center of a device on a tray.  I know the distance from the tray edge to the center of the pocket for both axis.

I have the same information for the other product.

I erroneously thought the answer would be to add the difference between these two center points to the original point for both X and Y axis.  This obviously doesn't work.

This strikes me as more a geometry problem.

•

Today at 07:29:06 PM

Guest
##### Re:  Help calculating an offset

August 14, 2017, 03:58:44 PM

#### SkyeFire

Global Moderator
##### Re: Help calculating an offset
It is a geometry problem, but one the robot should be equipped to handle natively.  The details depend on your brand, of course.

The critical point is that any reference frame in a robot (UFrame, Base, etc) is a relative transform from a reference frame, in 6 Degrees Of Freedom -- that is, X,Y,Z, and Rx, Ry, Rz.

In every industrial robot, there is a facility to create these frames by touching 3 or 4 points on the frame you're trying to create -- usually the Origin, a point defining the X+ vector, and a point somewhere in the positive quadrant of the XY plane.  This will generate an XYZRxRyRz set of 6 coordinates that, basically, say:  "Starting from the frame of reference (usually the robot's World/Root/Base-0), move this many mm along X, then Y, then Z, then rotate this many degrees around X, then this many degrees around the new Y, then this many degrees around the new Z."  The rotation angles are Euler or Tait-Bryan values, usually.

Let's assume for the sake of argument that you do this, and your new frame's XY plane is perfectly parallel to the World XY plane, but rotated 45deg relative around Z.

If you go to the values of your new frame, and simply add 10mm to the X value, you will not be moving along your frame's X axis, but along the World X axis.  To move along your frame's X axis, you need to perform some math.  Or, generally, most robots include a function to do this for you.

The underlying math is usually to convert each frame into a matrix, perform a cross-multiplication of the two matrices, then convert the result back into your robot's preferred coordinate nomenclature (this can be tricky, since there are many different valid Euler sequences, and every brand seems to use a different one.  And then there's ABB, which uses quaternions....)

•

### Similar Topics

###### Calculating TCP

Started by ambersat on KUKA Robot Forum

5 Replies
3608 Views
June 29, 2015, 10:20:10 AM
by Puck
###### Re-calculating C value at point

Started by meigo62 on KUKA Robot Forum

4 Replies
1893 Views
November 18, 2014, 09:36:21 PM
by JensDeckers
###### Calculating the difference between two WOBJ's

Started by Junior on Fanuc Robot Forum

1 Replies
1789 Views
November 25, 2015, 07:54:12 PM
by Lerak
###### Calculating coordinates in tool frame

Started by RoboticsMan on KUKA Robot Forum

3 Replies
2312 Views
May 04, 2015, 12:47:58 PM
by panic mode