欧拉角和旋转矩阵的学习心得

本文详细介绍了欧拉角在机器人编程中的应用,包括右手系旋转正负判断、角度范围限制、旋转顺序的影响、内旋与外旋的区别、单位问题以及计算中的注意事项。特别强调了欧拉角与旋转矩阵转换时的计算方法和顺序对结果的影响,并提醒实际编程时务必参照手册核对相关参数。

1)欧拉角正负:

如果是右手系,旋转轴正方向面对观察者时,逆时针方向的旋转是正、顺时针方向的旋转是负。

即使用右手的大拇指指向旋转轴正方向,其他4个手指在握拳过程中的指向便是正方向。

在使用时,要注意机械臂旋转过程中角度是区分正负的!

(3)欧拉角的范围:

假如是车体坐标系(x-前,y-左,z-上),那么roll和pitch应该定义在(-90°,+90°),yaw应该定义在(-180°,+180°)。

但是,不同机械臂的角度限位需要看手册,比如史陶比尔的限位都在-180到180之间,此外还有个别要求:例如系统确保至少两个坐标在-90到90之间,除非rx=180 and ry=0等。

(4)明确旋转顺序和旋转轴:

对于x,y,z三个轴的不同旋转顺序一共有(x-y-z,y-z-x,z-x-y,x-z-y,z-y-x,y-x-z)六种组合,在旋转相同的角度的情况下不同的旋转顺序得到的姿态是不一样的。

比如,先绕x轴旋转alpha,再绕y轴旋转beta;先绕y轴旋转beta,再绕x轴旋转alpha。这两种顺序得到的姿态是不一样的。这里注意的原因是,在转换矩阵和欧拉角转换时,不同的机械臂内定程序旋转方法需要对得到的矩阵进行具体旋转方法对应的反解公式。

(5)内旋和外旋:

每次旋转是绕固定轴(一个固定参考系,比如世界坐标系)旋转,称为外旋。

每次旋转是绕自身旋转之后的轴旋转,称为内旋。

这个比较重要,因为机械臂封装好的程序中对于旋转的定义需要看手册,例如史陶比尔使用的val3程序中trsf定义的旋转就是内旋方法,因此转换方程也不同。

(6)单位问题

因为看到很多程序中默认rx ry rz单位是弧度,但是史陶比尔的机器人手册中单位是度,因此需要特别注意,中间涉及单位问题,对旋转影响还是很大的。

(7)计算问题

由于欧拉角的计算中,固定角是左

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值