-
Notifications
You must be signed in to change notification settings - Fork 14
机械臂轨迹规划
机器人运动控制有一大类问题,叫做Motion Planning运动规划. 就是已知A点和B点的空间坐标,机器人如何在有障碍的情况下,从A点移动到B点。很常见的简单方法是:在A和B点中间定义一些关键点(Key Point),即我希望我的机械臂在从A到B的过程中能够经过这些Key Points.利用逆运动学,解算出在这些Key Points的机械臂的各个关节角度,然后在关节角空间中利用三阶样条插值,或5阶,也有用b样条的方法将这些点关节角点连接起来。
平时的x-y-z坐标系叫做笛卡尔坐标系(Cartesian space),而在机械臂运动规划问题中,关节空间更加常用。
在关节空间中进行轨迹规划时,算法简单、工具移动效率高、关节空间与直角坐标空间连续的对应关系是不存在的,因此机构的奇异性问题一般不会发生。对于无路径的要求,应尽量在关节空间进行轨迹规划。
轨迹规划的方法最基本的就是插值。
三次多项式可以保证在中间点的角度是柔顺变化的,即角度曲线处处可导 角速度曲线是处处联系的 角加速度曲线是可不连续的,即速度趋势可以突然改变
五次多项式可以保证中间点处的角度,角速度,角加速度都是柔顺变化的,不过计算量大大增加。
把任意的空间曲线分割成为空间直线或者空间圆弧。然后把空间直线和空间圆弧进行插值,将插值点转入关节空间进行轨迹规划,然后实时PID之类的进行轨迹跟踪控制。
分为加速,匀速,减速段
可以根据固定时间方法来插点。
先转移到圆弧平面,在圆弧平面分加减速段进行插值,最后将插值点反算回笛卡尔绝对坐标系,再转到关节空间进行轨迹规划,然后轨迹跟踪即可。
为什么关节空间不容易遇到奇异点?
球面线性插值(Spherical linear interpolation,通常简称Slerp)
牛顿插值法
RRT(Rapidly-exploring Random Trees),RPM,RRT*做运动规划
Howie Choset, et al. Principles of Robot Motion: Theory, Algorithms, and Implementations