Quaternion to Euler Angles Quaternion to Rotation Matrix navigation bar

Table of Contents

Quaternion from Rotation Matrix

This block converts a rotation matrix into a unit quaternion.

Library

QUARC Targets/Math Operations/Quaternions

MATLAB Command Line

Click to copy the following command line to the clipboard. Then paste it in the MATLAB Command Window:

qc_open_library('quarc_library/Math Operations/Quaternions')

Description

Quaternion from Rotation Matrix

This block convert a rotation matrix into a unit quaternion according to the Euler angle convention selected in the block parameters. All 24 possible combinations of rotations about fixed or relative axes are supported.

Input Ports

R

This input is the rotation matrix to convert to a unit quaternion. The Euler angle convention is determined by the Rotation order parameter.

Output Ports

q

Outputs a unit quaternion.

Parameters and Dialog Box

Quaternion from Rotation Matrix

Rotation order

Selects the Euler angle convention to use. There are 24 different definitions for Euler angles. The classic Euler angles consist of rotations where the first and third axes are the same e.g. a Z-X-Z convention. The roll-pitch-yaw or Tait-Byran angles consist of rotations where all the axes are different e.g. an X-Y-Z convention.

Targets

Target Name

Compatible*

Model Referencing

Comments

QUARC Win32 Target

Yes

Yes

QUARC Win64 Target

Yes

Yes

QUARC Linux Nvidia Target

Yes

Yes

QUARC Linux QBot Platform Target

Yes

Yes

QUARC Linux QCar 2 Target

Yes

Yes

QUARC Linux QDrone 2 Target

Yes

Yes

QUARC Linux Raspberry Pi 3 Target

Yes

Yes

QUARC Linux Raspberry Pi 4 Target

Yes

Yes

QUARC Linux RT ARMv7 Target

Yes

Yes

QUARC Linux x64 Target

Yes

Yes

QUARC Linux DuoVero Target

Yes

Yes

QUARC Linux DuoVero 2016 Target

Yes

Yes

QUARC Linux Verdex Target

Yes

Yes

QUARC QNX x86 Target

Yes

Yes

Last fully supported in QUARC 2018.

Rapid Simulation (RSIM) Target

Yes

Yes

S-Function Target

No

N/A

Old technology. Use model referencing instead.

Normal simulation

Yes

Yes

* Compatible means that the block can be compiled for the target.

See Also

 

navigation bar