Content
    Matrix Representation in a Coordinate Frame

Angular Velocity

Rotation of a body in space can be represented with a unit rotation vector (axis) and an angle of rotation around this axis.

The angular velocity ww can be defined as:

w=w^θ˙w = \hat{w} \dot{\theta}

Where:

  • w^\hat{w}: Rotation axis (unit vector), coordinate frame free
  • θ˙\dot{\theta}: Rate of rotation

Matrix Representation in a Coordinate Frame

To represent the angular velocity ww in coordinates a reference frame needs to be chosen. For example the stationary frame {s}\{s\}.

Angular Velocity

ωsR3\omega_s \in \mathbb{R}^3 is the angular velocity ww expressed in fixed frame {s}\{s\} coordinates.

r˙x=ωs×rx^\dot{r}_x = \omega_s \times r_{\hat{x}}
r˙y=ωs×ry^\dot{r}_y = \omega_s \times r_{\hat{y}}
r˙z=ωs×rz^\dot{r}_z = \omega_s \times r_{\hat{z}}

Where:

  • rir_i: unit axes x^\hat{x}, y^\hat{y} and z^\hat{z} in fixed frame coordinates (the columns of the rotation matrix representing the fixed frame)
  • ri˙\dot{r_i}: rate of change (angular velocity) of axis ii around the rotation axis

These equations can be combined:

R˙sb=[ωs×r1ωs×r2ωs×r3]=ωs×Rsb\dot{R}_{sb} = \begin{bmatrix} \omega_s \times r_1 & \omega_s \times r_2 & \omega_s \times r_3 \end{bmatrix} = \omega_s \times R_{sb}

Where:

  • RsbR_{sb}: the rotation matrix that describes the orientation of frame {b}\{b\} with respect to the fixed frame {s}\{s\}
  • R˙sb\dot{R}_{sb}: its rate of change

This can be simplified to:

R˙sb=[ωs]Rsb\dot{R}_{sb} = [\omega_s]R_{sb}

where:

[ωs][\omega_s] is a 3×33 \times 3 skew-symmetric matrix representation of the angular velocity ωsR3\omega_s \in \mathbb{R}^3 represented in the coordinate frame {s}\{s\}.

General Relations

[ωs]=R˙sbRsb1=R˙sbRsbT[\omega_s] = \dot{R}_{sb}R_{sb}^{-1} = \dot{R}_{sb}R_{sb}^T

and

[ωb]=Rsb1R˙sb=RsbTR˙sb[\omega_b] = R_{sb}^{-1}\dot{R}_{sb}= R_{sb}^T\dot{R}_{sb}

Where

  • [ωs]so(3)[\omega_s] \in so(3): fixed frame {s}\{s\} representation of the angular velocity ww in skew-symmetric matrix representation
  • [ωb]so(3)[\omega_b] \in so(3): body frame {b}\{b\} representation of the angular velocity ww in skew-symmetric matrix representation

Conversion between Frames

An angular velocity ω\omega expressed in an arbitrary frame {d}\{d\} can be represented in another frame {c}\{c\} using the subscript cancellation rule:

ωc=Rcdωd\omega_c = R_{cd}\omega_d
ωd=Rdcωc=Rcd1ωc=RcdTωc\omega_d = R_{dc}\omega_c = R^{-1}_{cd}\omega_c = R^T_{cd}\omega_c

Literature

Notes taken from:

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



  • Category

  • Mathematics

  • Tags

  • Robotics

  • Created

  • 5. September 2019


  • Modified

  • 3. June 2023