Robot Pose

CMU- ROBOT POSE - REPRESENTATION AND TRANSFORMATION

What is the difference between the pose of a robot and the configuration of a robot?

A robot’s pose describes how the robot is positioned. In 2D space, the pose is defined by position (x, y) and orientation angle (θ)

q = (x,y,θ)

In three-dimensional space, the pose is a 6-dimensional vector: q = (x,y,z,α,β,γ)

Degrees of Freedom

The degrees of freedom (DOF) of a robot refers to the number of independently moving joints.

This robot arm with 3 revolute joints has 3 DOF. The pose of the end-effector in 2D space can be defined by q = (x,y,θ)

A robot arm with 6 DOF has 3 DOF for position (x, y, z) and 3 DOF for rotation (roll, pitch, and yaw)

The joint layout of this 6 DOF robotic arm:

  1. Joint 1 – Base rotation (yaw of the whole arm)
  2. Joint 2 – Shoulder pitch
  3. Joint 3 – Elbow pitch
  4. Joint 4 – Wrist pitch
  5. Joint 5 – Wrist roll
  6. Joint 6 – Wrist yaw

Rotations

Right Hand Rule

Euler Angles

The Euler angles are three angles introduced by Leonhard Euler to describe the orientation of a rigid body with respect to a fixed coordinate system.

The x, y, and z components of Euler angles are commonly called roll, pitch, and yaw.

Euler angles are easy to for humans to visualize but are susceptible to Gimbal Lock which occurs when 2 axes align and you lose 1 degree of freedom.

Quaternions

Quaternions are an alternative representation that avoids the gimbal lock issue of euler angles.

Summary

Pose and Rotation Representations

Pose or RotationRepresentationNotes
Pose (2D)position (x, y) and orientation (θ)

q = (x, y, θ)
-
Pose (3D)position (x, y, z) and orientation (roll, pitch, yaw)

q = (x, y, z, roll, pitch, yaw
-
Rotation (Euler angles) (3D)Axis of rotation, Euler Angle Symbol, Euler Angle Name

AxisSymbolName
xγroll
yβpitch
zαyaw
Sequence of rotations matters (e.g. ZYX)
Rotation (Quaternion) (4D)rotation axis (x, y, z) and scalar - angle of rotation (w)

q = (x, y, z, w)
Represents final rotation, avoids gimbal lock
Axis-Angle to Quaternion ConversionGiven axis of rotation unit vector λ = (λₓ, λᵧ, λ_z) and rotation θ (radians)

q = (λₓ·sin(θ⁄2), λᵧ·sin(θ⁄2), λ_z·sin(θ⁄2), cos(θ⁄2))
-