1 of 34

Autonomous Mobile Manipulation

Transformations

C. Papachristos

Robotic Workers (RoboWork) Lab

University of Nevada, Reno

CS-791

2 of 34

Coordinate Systems

  • In Manipulation, Guidance, Navigation and Control, reference frames are fundamental

  • Describe the relative position and orientation of:
    • Robot Base frame relative to the Inertial frame
    • Arm Base frame relative to the Robot Base frame
    • End-effector relative to Arm Base frame
    • Camera relative to the End-effector
    • Robot relative to a manipulation Target

  • Some expressions are easier to formulate in specific frames:
    • Newton’s law
    • End-effector pose
    • Externally applied forces/moments
    • Camera frames
    • Inertial sensor data
    • GPS coordinates

CS791 C. Papachristos

3 of 34

ENU & NED Conventions

  • Ground Robots and ROS use East-North-Up (ENU):
    • Z is up.
    • X is aligned with the East.
    • Right-hand coordinate system.
  • UAVs and IMUs typically use aircraft conventions

  • North-East-Down (NED):
    • Z is the direction of gravity.
    • Vehicle and Inertial frame have the same orientation.
    • Vehicle frame is fixed at the Center of Mass (CoM).
  • Computer Vision uses�Camera Coordinates:
    • Z away from camera.
    • XY aligned with image projection plane.

CS791 C. Papachristos

4 of 34

Vectors

 

 

 

 

CS791 C. Papachristos

5 of 34

Vectors

 

 

 

 

CS791 C. Papachristos

6 of 34

Rotations

 

CS791 C. Papachristos

7 of 34

Rotations

 

 

Specifies relative orientation of {B} as seen from frame{S}

CS791 C. Papachristos

8 of 34

Rotations

 

 

 

 

But from previous:

 

 

 

and

 

, so:

CS791 C. Papachristos

9 of 34

Rotations

 

 

 

 

CS791 C. Papachristos

10 of 34

Rotations

 

 

 

 

CS791 C. Papachristos

ENU Convention

NED Convention

11 of 34

Special Orthogonal Group SO(3)

 

More on these later on…

 

CS791 C. Papachristos

12 of 34

Axis-Angle

 

 

 

 

 

CS791 C. Papachristos

13 of 34

Euler Angles

  • Sequence of single-axis rotations

  • ψ is the “Yaw” angle about the k (or z) axis:

 

 

 

CS791 C. Papachristos

14 of 34

Euler Angles

  • Sequence of single-axis rotations

  • θ is the “Pitch” angle about the j (or y) axis:

 

 

 

CS791 C. Papachristos

15 of 34

Euler Angles

  • Sequence of single-axis rotations

  • φ is the “Roll” angle about the i (or x) axis:

 

 

 

CS791 C. Papachristos

16 of 34

Euler Angles

  • Rotation Hierarchy:
    • Yaw, Pitch, Roll (Others also exist)

  • Yaw/Pitch/Roll Rotation Composition:
    • Post-multiply (sequence of rotations w.r.t. Body-frame) one after the other

  • So to transform a vector:

 

 

 

 

CS791 C. Papachristos

17 of 34

Orientation Representations

 

 

 

Axis-Angle

Advantages:

  • Infinitesimal rotation intuition

Disadvantages:

  • Cannot be composed directly
  • Cannot directly transform points

 

 

 

 

CS791 C. Papachristos

18 of 34

Quaternions

 

 

Scalar part

Vector part

 

 

Note: Required to make division� algebra associative.� (but commutativity is still lost…)

(with respect to Hamilton Product)

Note: The Hamilton Product� of two quaternions is also a quaternion

 

CS791 C. Papachristos

 

19 of 34

Rotation Quaternions

 

 

therefore:

 

 

 

CS791 C. Papachristos

20 of 34

Quaternions

  • A conversion also exists between this representation and the Rotation matrix one:

  • Conversions also exist between this representation and the Euler angles one:

 

 

CS791 C. Papachristos

 

 

21 of 34

Rotation Quaternions

 

 

 

 

 

 

 

 

CS791 C. Papachristos

 

22 of 34

Quaternions

 

 

 

  • Disadvantages

CS791 C. Papachristos

 

23 of 34

Configuration / Pose

 

 

CS791 C. Papachristos

24 of 34

Homogeneous Representation

 

 

 

 

 

 

 

 

 

and:

 

Note(!):

 

CS791 C. Papachristos

25 of 34

Rotation – Translation

 

1)

2)

 

 

composed as:

 

CS791 C. Papachristos

26 of 34

Rotation – Translation

 

 

composed as:

 

1)

2)

 

CS791 C. Papachristos

27 of 34

Special Euclidian Group SE(3)

 

More on these later on…

CS791 C. Papachristos

28 of 34

Resources

  • Equivalent Representations and Transformations – a CheatSheet

http://people.csail.mit.edu/jstraub/download/straubTransformationCookbook.pdf

CS791 C. Papachristos

29 of 34

Resources

CS791 C. Papachristos

30 of 34

Resources

  • Thorough academic resources:

Modern Robotics: Mechanics, Planning, and Control�Kevin M. Lynch and Frank C. Park, Cambridge University Press, 2017

CS791 C. Papachristos

31 of 34

Resources

  • Python toolbox library for homogeneous matrix transformations & quaternions

https://pypi.org/project/transforms3d/

CS791 C. Papachristos

32 of 34

Resources

  • ROS’ Transformation(s) library: http://wiki.ros.org/tf2

CS791 C. Papachristos

33 of 34

Resources

CS791 C. Papachristos

34 of 34

Time for Questions !

CPE-791

CS791 C. Papachristos