在我前面的博文基于抛物线过渡(梯形加减速)的空间直线插补算法与空间圆弧插补算法、五自由度diy机械臂空间插补算法(直线和圆弧)简单测试中出现姿态奇异性问题,这主要是由于我选用的RPY角姿态表达方法在β角等于±90°时姿态解算会出现奇异现象,剩下两个自由度会退化,α角和γ角会变成一个角。为解决这个问题,我换用单位四元数来对姿态进行表达。
结果显示能够解决奇异性问题:
机器人姿态表达
机器人姿态表达形式主要有旋转矩阵法、欧拉角法、RPY角法、单位四元数法等。
旋转矩阵法可以通过累乘表示坐标系的连续变化,能够清晰地表示当前坐标系相对于基座标系的姿态,是常用的姿态表达方式。但是由于旋转矩阵法需要9个元素才能描述姿态,在程序处理中需要使用大量内存空间且计算复杂,所以旋转矩阵法不适合应用与实时性较高的姿态控制和运动插补控制中。
欧拉角法和RPY角法都能非常简单地描述物体姿态。机器人末端执行器的示教姿态通常以欧拉角的形式给出,RPY通常表示船舶在航行中的姿态变化,都存在奇异性问题。
单位四元数在表达姿态时具有运算量小、便于