6x6 v-nl_rotation

Non-linear (6x6) rotation matrix around any axis.

For the 6 d.o.f. body motion (3 translations and 3 rotations), this block implements the non linear $(6 \times 6)$ rotation matrix -or its transposed- associated to the rotation of a given angle $\theta$ around a given axis $\mathbf{v}$ to transform the frame $\mathcal{R}_1$ into the frame $\mathcal{R}_2$.

It is the non linear version of the linear block 6x6 v-u_rotation.

See also: 3x3 v-nl_rotation, 6x6 v-u_rotation

Contents

Description

Considering the 2 frames $\mathcal{R}_{1}$ and $\mathcal{R}_{2}$, the $\mathbf{DCM}=\mathbf{P}_{2/1}$ between $\mathcal{R}_{1}$ and $\mathcal{R}_2$ is defined as the $(3\times 3)$ matrix where each column is the component vector of each $\mathcal{R}_{2}$ orthogonal unit vector expressed in $\mathcal{R}_{1}$.

$$ \left[\mathbf{v}\right]_{\mathcal{R}_{1}} = \mathbf{DCM}\;\left[\mathbf{v}\right]_{\mathcal{R}_{2}} $$

In the 6 d.o.fs case (3 translations and 3 rotations), the rotation matrix is:

$$ \mathbf{rot} = \left[\begin{array}{cc}\mathbf{DCM} & \mathbf{0}_{3 \times 3} \\ \mathbf{0}_{3 \times 3} & \mathbf{DCM}\end{array}\right] $$

Thus, this block is the concatenation of two blocks 3x3 v-nl_rotation.

Ports

Inputs:

Output: the expression of the $(6 \times 1)$ vector $\mathbf{x}$ in the frame $\mathcal{R}_{1}$ (resp. $\mathcal{R}_{2}$).

$\left[\mathbf{x}\right]_{\mathcal{R}_{1}} = \mathbf{rot} \, \left[\mathbf{x}\right]_{\mathcal{R}_{2}}$ (resp. $\left[\mathbf{x}\right]_{\mathcal{R}_{2}} = \mathbf{rot}^T \, \left[\mathbf{x}\right]_{\mathcal{R}_{1}}$).

Parameters

The only parameters are the coordinates of the (3x1) rotation axis vector $\mathbf{v}$ in $\mathcal{R}_{1}$ (or $\mathcal{R}_{2}$) and a checkbox to implement the transposed: $\mathbf{rot}^T$.

Simulink diagram under the mask

with: $\mathrm{signe}=1$ for direct $\mathbf{rot}$, $\mathrm{signe}=-1$ for $\mathbf{rot}^T$.