Direction Cosine Matrix to Rotation Angles

Convert direction cosine matrix to rotation angles

Library

Utilities/Axes Transformations

Description

The Direction Cosine Matrix to Rotation Angles block converts a 3-by-3 direction cosine matrix (DCM) into three rotation angles R1, R2, and R3, respectively the first, second, and third rotation angles. The DCM matrix performs the coordinate transformation of a vector in inertial axes into a vector in body axes. The block Rotation Order parameter specifies the order of the block output rotations. For example, if Rotation Order has a value of ZYX, the block outputs are in the rotation order z-y-x (psi theta phi).

Parameters

Rotation Order

Specifies the output rotation order for three rotation angles. From the list, select ZYX, ZYZ, ZXY, ZXZ, YXZ, YXY, YZX, YZY, XYZ, XYX, XZY, or XZX. The default is ZYX.

Rotation order for three wind rotation angles.

For the 'ZYX', 'ZXY', 'YXZ', 'YZX', 'XYZ', and 'XZY' rotations, the block generates an R2 angle that lies between ±pi/2 radians, and R1 and R3 angles that lie between ±pi radians.

For the 'ZYZ', 'ZXZ', 'YXY', 'YZY', 'XYX', and 'XZX' rotations, the block generates an R2 angle that lies between 0 and pi radians, and R1 and R3 angles that lie between ±pi radians. However, in the latter case, when R2 is 0 ±pi radians, R3 is set to 0 radians.

Action for invalid DCM

Block behavior when direction cosine matrix is invalid (not orthogonal).

  • Warning — Displays warning and indicates that the direction cosine matrix is invalid.

  • Error — Displays error and indicates that the direction cosine matrix is invalid.

  • None — Does not display warning or error (default).

Tolerance for DCM validation

Tolerance of direction cosine matrix validity, specified as a scalar. Default is eps(2). The block considers the direction cosine matrix valid if these conditions are true:

  • The transpose of the direction cosine matrix times itself equals 1 within the specified tolerance (transpose(n)*n == 1±tolerance)

  • The determinant of the direction cosine matrix equals 1 within the specified tolerance (det(n) == 1±tolerance).

Inputs and Outputs

InputDimension TypeDescription

First

3-by-3 matrixContains the direction cosine matrix.
OutputDimension TypeDescription

First

3-by-1 vectorContains the rotation angles, in radians.

Introduced in R2007b