January 17, 2019, 07:32:57 PM
Robotforum | Industrial Robots Community

 Converting from Tool to World Coordinates


Author Topic:  Converting from Tool to World Coordinates  (Read 1896 times)

0 Members and 1 Guest are viewing this topic.

August 10, 2017, 08:46:54 PM
Read 1896 times
Offline

howie


If I have a position represented in the tool coordinate frame, what is the formula for converting it to the world coordinate frame.  Positions are represented as Adept x, y, z, yaw, pitch, roll.  Note, Adept uses Z-Y-Z Euler rotation.  In the end I want the raw calculations behind the following Adept V+ code:

SET loc_in_tool = loc_in_world:INVERSE(tool_offset)

loc_in_world is the original position in world coordinates

loc_in_tool is the converted position in tool coordinates

tool_offset is the tool offset from the mounting flange

Any help you can provide is appreciated.





Linkback: https://www.robot-forum.com/robotforum/index.php?topic=24089.0
  • Like    Thanks

Today at 07:32:57 PM
Reply #1

Advertisement

Guest

August 11, 2017, 12:17:25 AM
Reply #1
Offline

TygerDawg


Unless I'm missing something, it seems you're getting tangled up in transforms, locations, and their relationships.

TOOL tool_offset              ;invoke the transform tool_offset as the TCP
HERE loc_in_world           ;set loc_in_world = the current location of the TCP
...alternately...
SET loc_in_world = HERE ;records the current TCP location to the transform variable loc_in_world
  • Like    Thanks
TygerDawg
Blue Technik
Virtuoso Robotics Engineering
www.bluetechnik.com

August 15, 2017, 12:44:53 PM
Reply #2
Offline

robotero


Howie: I don't understang how you get a position in TOOL frame coordinates

The controller reads the encoders and uses a direct kinematic algorithm to find the position of the faceplate in WORLD coordinates, then multiplies by  the TOOL offset transformation.
The result is the position of the TCP in WORLD coordinates for the given values of the encoders.

If you have the location (of the TCP) in WORLD coordinates and multiply by the inverse of the TOOL offset
what you get is the position of the FACEPLATE in WORLD coordinates.
From there you can use and inverse kinematic algorithm to find the encoder values that you need to move the tool in that position.

Usually you get  Positions in world coordinates from a simulation for example

please explain what exactly you want to do or need
« Last Edit: August 15, 2017, 04:47:17 PM by robotero »
  • Like    Thanks

August 15, 2017, 08:48:12 PM
Reply #3
Offline

SkyeFire

Global Moderator
Howie:  it sounds to me as if you want to predict the results of a "Tool Relative" motion, in World, before/without actually performing the motion.  That's quite simple.  All you need do is take the starting position as the frame of reference, and "multiply" it by the planned motion.

I usually do this in KUKA KRL, but the Adept V+ language looks to be similar in this instance. So:
Code: [Select]
DECL FRAME Shift
Shift = {X 10,Y 15,Z 20,A 1,B 2,C 3}
PTP P1 ; move to point P1
LIN_REL Shift #TOOL ; move along and rotate around the TCP axes
P2 = $POS_ACT ; Set P2 to robot current position in World
P3 = P1 : Shift ; mathematically generate P3 from P1

P2 and P3 will end up being identical points in World (within rounding error).

I've often used this technique to predict a LIN_REL #TOOL move before making the motion, in order to check it against range limits.
  • Like    Thanks


Share via facebook Share via linkedin Share via pinterest Share via reddit Share via twitter

xx
converting base coordinates to world coordinates?

Started by knowledgesharing on KUKA Robot Forum

5 Replies
3401 Views
Last post April 28, 2014, 08:18:30 PM
by Greedy
angry
World Coordinates

Started by Junkycosmo on Fanuc Robot Forum

3 Replies
2161 Views
Last post January 26, 2016, 07:08:46 PM
by pdl
angry
World Coordinates

Started by Junkycosmo on Fanuc Robot Forum

4 Replies
1699 Views
Last post September 09, 2016, 01:04:49 PM
by BigFrank612
xx
Get World coordinates of a position.

Started by teomannaskali on Fanuc Robot Forum

8 Replies
5284 Views
Last post October 08, 2013, 09:54:23 PM
by Chipprogr