« Back To Robotics Tech Papers
Patti Engineering Logo

Member Since 2014


Founded on June 3, 1991, Patti Engineering’s corporate headquarters is based in Auburn Hills, MI with offices in Indiana and Texas. We have nearly three decades of experience serving as a trusted advisor to clients, providing electrical control and automation system design, hardware, software, and installation for various automation projects at manufacturing plants and distribution centers.

Content Filed Under:



Coordinate System Frames in Industrial Robots

POSTED 07/07/2017  | By: Nikhil Niphadkar, Controls Engineer at Patti Engineering

It’s easy to teach a robot if you know what frame to teach the points in. If not, it can be a nightmare!  If you are having hard time teaching a robot point in space or you are spending more than a few minutes to teach the point, I have to tell you: you ain’t doing it right!

In order to define a location and orientation of any object in space, we need 6 parameters: the distances in X, Y, and Z directions and the rotations around the three axes. All of these distances and angles are measured from a reference point called the “origin”. Every time the object moves in the 3-D space, these distances and angles change.

There are 4 types of frames used in robot programming.

  • World Frame

    World frame is attached to the base of the robot. This is also referred to as Cartesian Co-ordinate Frame

  • Tool Frame

    Tool frame is attached to the end of arm of tooling.

  • User Frame

    User defined frames accommodate strange shaped work-pieces, like an inclined work surface. It becomes very easy to program points along these surfaces if we define one of the axes along this inclined surface. User frames allow you to align the x, y, z coordinate system about a fixture or workpiece that is translated and/or rotated with respect to the world frame of the robot.

  • Jog Frame

    Jog frames are not very commonly used but these are very similar to user frames.

User frames are designed to make programming easier. But if you are accustomed to programming in a different frame (like world frame) and aren’t aware of how user frame works, it’s not easier; it can be frustrating!  However, by using the best frame for your application, you can save steps in programming and headaches later on.