【无标题】

  • 结果比较

  • Matlab结果:
>> angle2dcm(60*pi/180, 45*pi/180, 30*pi/180, 'zyx')'

ans =

    0.3536   -0.5732    0.7392
    0.6124    0.7392    0.2803
   -0.7071    0.3536    0.6124
  • python结果
    rot = R.from_euler('xyz', [30, 45, 60], degrees=True)
    [[ 0.35355339 -0.5732233   0.73919892]
 	[ 0.61237244  0.73919892  0.28033009]
 	[-0.70710678  0.35355339  0.61237244]]
  • 其中两组结果存在转置的关系

  • 计算原理

  • matlab中angle2dcm的计算过程

xm = angle2dcm(0*pi/180, 0*pi/180, 30*pi/180, 'zyx')

xm =

    1.0000         0         0
         0    0.8660    0.5000
         0   -0.5000    0.8660

ym = angle2dcm(0*pi/180, 45*pi/180, 0*pi/180, 'zyx')
ym =

    0.7071         0   -0.7071
         0    1.0000         0
    0.7071         0    0.7071

zm = angle2dcm(60*pi/180, 0*pi/180, 0*pi/180, 'zyx')

zm =

    0.5000    0.8660         0
   -0.8660    0.5000         0
         0         0    1.0000


xm * (ym * zm)


ans =

    0.3536    0.6124   -0.7071
   -0.5732    0.7392    0.3536
    0.7392    0.2803    0.6124


tt = angle2dcm(60*pi/180, 45*pi/180, 30*pi/180, 'zyx')

tt =

    0.3536    0.6124   -0.7071
   -0.5732    0.7392    0.3536
    0.7392    0.2803    0.6124

其中,后缀“zyx”表示前边三个数对应的轴的旋转角度,最后结果就是x * (y*z)得到的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值