四元数与欧拉角的转换与使用matlab的simulink搭建实现

定义四元数与欧拉角的转换与使用matlab的simulink搭建实现分别为绕Z轴、Y轴、X轴的旋转角度,分别为Yaw、Pitch、Roll。

四元数的定义

四元数与欧拉角的转换与使用matlab的simulink搭建实现

通过旋转轴和绕该轴旋转的角度可以构造一个四元数:

四元数与欧拉角的转换与使用matlab的simulink搭建实现

其中四元数与欧拉角的转换与使用matlab的simulink搭建实现是绕旋转轴旋转的角度,四元数与欧拉角的转换与使用matlab的simulink搭建实现为旋转轴在x,y,z方向的分量(由此确定了旋转轴)。

欧拉角到四元数的转换

四元数与欧拉角的转换与使用matlab的simulink搭建实现

四元数到欧拉角的转换

四元数与欧拉角的转换与使用matlab的simulink搭建实现

在matlab中simulink搭建如下:

四元数与欧拉角的转换与使用matlab的simulink搭建实现

Eul2Quat内部如下:

四元数与欧拉角的转换与使用matlab的simulink搭建实现

输出值为[1;1;1]值时,输出图形如下:

四元数与欧拉角的转换与使用matlab的simulink搭建实现