1. 机器人中的轨迹规划
曲线柔顺:
五次多项式曲线
起终点位置、速度、加速度约束六个方程
虽然这三条曲线都是连续且光滑的,但却存在一个很实际的问题。从速图曲线中可以看出在t=25时速度达到最大值,没有匀速段,其它时刻速度都小于最大值。平均速度除以最大速度的值为:mean(sd) / max(sd) = 0.5231,即平均速度只有最大速度的一半左右,速度利用率较低。对于大多数实际伺服系统,电机的最大速度一般是固定的,因此希望速度曲线在最大速度的时间尽可能长。
梯形速度曲线
匀加速、匀速、匀减速
2. 工业机器人运动轨迹规划方法简述
- 点到点运动:不需要在笛卡尔空间规划末端运动轨迹,机器人各个关节运动不需要联动。
- 轨迹跟踪运动:以点到点为基础,各个关节运动需要联动
关节空间运动规划
目标:使关节空间轨迹平滑。
一般情况下,关节空间的规划方法便于计算,并且由于关节空间与笛卡尔空间之间并不存在连续的对应关系,因而不会发生机构的奇异性问题。
3次多项式插值
过路径点的3次多项式插值
假设起点与终点的关节速度不为0时,利用3次多项式进行插值。解法同上,不再赘述。
需要注意,选择路径点的关节速度时,要考虑到保证每个路径点的加速度是连续的。
高阶多项式插值
当考虑到机器人关节空间起始点和目标点的加速度时,需采用高阶多项式插值。
用抛物线过渡的线性插值
直接进行线性插值会导致起始点和终止点的关节运动速度不连续,因此我们可以在中间利用直线线性插值,两端利用抛物线过渡
过路径点的抛物线过渡线性插值
将邻近路径点用直线相连,路径点附近利用抛物线过渡。求取过渡时间时可以将路径分为第一路径、中间路径和最后路径三种情况分别讨论,原理同上,不再赘述。
值得注意的是,多段带有抛物线拟合的直线样条曲线实际并没有经过那些中间点,除非操作臂在此处停留。如果用户需要操作臂精确经过某个中间点而不停留,仍可采用前述计算公式,但是需要做如下补充:将操作臂希望经过的中间点替换为位于其两侧的两个伪中间点
B样条插值
B样条的主要特点是在局部的修改不会引起样条形状的大范围变化。
笛卡尔空间运动规划
笛卡尔空间的路径规划,就是计算机器人在给定路径上各点处的位置与姿态。
在关节空间中计算出的路径可保证操作臂能够到达中间点和目标点,即使这些路径点事用笛卡尔坐标系来规定的。不过,末端执行器在空间的路径不是直线,而且,其路径的复杂程度取决于操作臂特定的运动学特征。
位置规划
姿态规划
笛卡尔路径的几何问题
- 不可达的中间点:尽管操作臂的起始点和目标点都在其工作空间内部,但是很有可能在连接这两点的直线上有些点不在工作空间中。
- 在奇异点附近的高关节速率:在某些未知处无法用有限的关节速度来实现末端执行器在笛卡尔空间的期望速度。
- 不同解下的可达起点和终点:如下图所示,两杆操作臂的两个杆长度相同,但是关节存在约束,这使得机器人到达空间给定点的解数量减少。
3. 贝塞尔曲线原理(实现动图)
一阶
二阶
三阶
四阶
五阶
4.六轴机器人轨迹规划之五段位置S曲线插补
5.移动机器人路径规划方法
6. 两万字自动驾驶技术综述,你想知道的这里都有(附论文)
局部规划
局部规划实际可以理解为为了实现全局规划来找到一条足够优化且能避开障碍物的轨迹。同样可以分为四类:基于图搜索(graph-based planners),基于采样( sampling-based planners),曲线插值( interpolating curve planners)和数值优化( numerical optimization)方法。当然,后续还有一些基于深度学习的方法。基于图搜索的方法基本和基于图的全局规划差不多,Dijkstra和A以及其改进算法依然是最常见的方法。基于图搜索常见的做法都是将地图离散成状态格,这种做法在高维的情况下会产生指数爆炸。因此就有了基于采样的方法,最常见的基于采样的方法是概率图(PRM)和快速随机搜索树(RRT)。这类方法的缺陷主要是不稳定,在某些特定环境下可能要很长时间才能收敛。曲线插值是在一系列已知点上拟合一条可行的轨迹曲线,常见的曲线有回旋线,多项式曲线,贝塞尔曲线等,这种方法的避障策略一般是插入新的无碰撞的轨迹,如果偏离了初始轨迹,则避开障碍之后再返回初始轨迹。这种方法生成的轨迹较光滑,计算量也比较大,但是在实际ADS中,轨迹光滑一般意味着对乘客比较友好。数值优化一般可以用来改善已有的轨迹,比如72利用非线性数值函数(numeric non-linear functions )来优化A得到的轨迹,73利用牛顿法解决了势场法(Potential Field Method,PFM)的固有震荡问题。我之前写过一篇博客详细介绍了几种主流方法的原理,有兴趣的可以戳这里。
随着人工智能的火热,一些基于深度学习和强化学习方法的规划策略也开始涌现出来。74利用三维全卷积神经网络(Fully convolutional 3D neural networks)从激光雷达等输入设备获取点云并生成未来的轨迹。75利用深度强化学习在仿真环境下实现了交叉路口的安全路径规划。基于深度学习的缺陷前面已经提到过了,缺乏硬编码的安全措施,除此之外还有泛化能力问题,数据来源问题等,但总的来说,这一类方法应该是未来的趋势之一。
7. path and trajectory generation
extension://bfdogplmndidlpjfhoijckpakkdjkkil/pdf/viewer.html?file=http%3A%2F%2Fw3.uch.edu.tw%2Fcontrol%2Fdownload%2F10%25E6%25A9%259F%25E5%2599%25A8%25E4%25BA%25BA%25E6%2587%2589%25E7%2594%25A8I.pdf