so(3)

The space of skew-symmetric matrices in 3D Euclidean space. They satisfy the constraint that \(\{[\textbf{x}] = -[\textbf{x}]^T\}\) where \(\textbf{x}\in \mathbb{R}^3\) and \([\textbf{x}]=\begin{bmatrix}0 & -x_3 & x_2 \\ x_3 & 0 & -x_1 \\ -x_2 & x_1 & 0 \end{bmatrix}\).

In robotics, they are used to represent angular velocities. Any such angular velocity can be represented by a unit vector \(\hat{\omega}\) pointing in the direction of the rotation axis, and speed of rotation \(\dot{\theta}\) around it. Denote the angular velocity in frame \(\{s\}\) as \(\omega_s = \dot{\theta}\hat{\omega}\). As frame \(\{b\}\) rotates, its x-axis traces out a circle whose linear velocity is in a direction tangent to this circle, which can be computed as \(\dot{\hat{x_b}}= \omega_s \times \hat{x}_b = [\omega_s]\hat{x}_b\). Similarly, \(\dot{\hat{y_b}}= [\omega_s]\hat{y}_b\) and \(\dot{\hat{z_b}}=[\omega_s]\hat{z}_b\). This results in the matrix representation of angular velocity as \(\dot{R}_{sb} = [\dot{\hat{x}}_b \; \dot{\hat{x}}_b \; \dot{\hat{x}}_b] = [\omega_s]R_{sb}\).

Emacs 29.4 (Org mode 9.6.15)