图片缩略图

转换DCM、欧拉角、四元数和欧拉向量的函数

version 1.11.0.0 (5.71 KB) by 约翰·富勒
函数转换4种类型的旋转数据:DCM,欧拉角,四元数,欧拉参数。

14.5 k下载

更新2013年1月25日

查看许可协议

SpinCalc是一个整合的matlab函数,它将转换所包含的4种类型之间的任何旋转数据。也将转换两种不同的欧拉角设置类型。

可以输入多个方向。N方向:
DCM ===> 3x3xN多维数组
EA### ===> Nx3矩阵
欧拉向量===> Nx4矩阵
四元数===> Nx4矩阵

输入包括错误检查标志,当欧拉角接近奇异点或适当的值偏离单位时发出警告。错误的DCM等致命错误。

* * * * *注意* * * * *用户
我遇到了很多关于平移到欧拉角集的问题。当将数据转换为欧拉角时,必须确保所转换的方向不在奇异点附近。奇异欧拉集是在特定的旋转顺序中不能唯一转换为3个变量的方向。奇异集如下:

类型1旋转:123 - 132 - 213 - 231 - 321 - 312
如果第二个旋转角度为-90°或90°,则为单数。

类型2旋转:121 - 131 - 212 - 232 - 313 - 323
如果第二个旋转角度为0或180度,则为单数。

SpinCalc现在应该检测输入DCM、EV或Q何时对应一个奇异欧拉集输出。它将禁止在这样的事件中输出。

当然,当从这些奇异的欧拉角集转换到其他数据类型时,您将得到正确的答案。不幸的是,你无法将输出转换回正确的欧拉角。这就是为什么奇异的欧拉输入是被禁止的。

一些用户可能需要SpinCalc,因为他们需要将奇异欧拉集转换为其他类型。在这些情况下,删除禁用的错误检查应该不会太难。如果需要帮助,请与我联系。

引用作为

约翰•富勒(2021)。转换DCM、欧拉角、四元数和欧拉向量的函数(//www.tianjin-qmedu.com/matlabcentral/fileexchange/20696-function-to-convert-between-dcm-euler-angles-quaternions-and-euler-vectors), MATLAB中央文件交换。检索

MATLAB版本兼容性
创建R2007b
与任何版本兼容
平台的兼容性
窗户 macOS Linux

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!