基于多项式曲线的速度规划

在无人车的运动规划(Motion Planning)过程中,比如在速度规划和路径规划时经常会遇到这样的问题:

  • 速度规划:已知当前的速度信息,以及目标的速度信息,需要生成一条平滑的速度曲线,从当前速度到目标速度,同时这个过程中应尽可能保持平顺,避免急加速、急减速;
  • 路径规划:已知当前的位姿信息,以及目标的位姿信息,需要生成一条平滑的路径,连接当前位姿到目标位姿,同时这个过程中应尽可能保持平顺,避免在路径跟踪时方向盘打得很猛。

上述两个问题可以归结为:在二维空间中,给定起点和终点状态,计算一条连接两点的平滑曲线。

这里以速度规划为例,介绍用不同的多项式曲线来生成平滑的速度曲线。一般无人车的纵向控制量为加速度,因此,在生成速度曲线的过程中,还需要关注加速度曲线以及加加速度(即加速度的导数)的曲线变化。

如下图所示,在S-V图上,若已知起点和终点的速度状态,如何计算出一条平滑的速度曲线?在不考虑避障的情况,可以用直线连接,也可以用一定的曲线来连接。

速度状态包括:

  • s – distance,距离
  • v – velocity,速度
  • a – acceleration,加速度
  • j – jerk,加加速度

根据已知的速度状态信息,可分别采用不同的多项式曲线。

1、一次多项式曲线

在S-V图上,若已知起点和终点的距离、速度,可采用一次多项式曲线。

采用一次多项式曲线拟合,对应的S-vel,S-acc,S-jerk分别如下图所示,可以看到加速度在初始位置是突变的。在实际的车辆控制过程中,一是车辆实际的加速度不可能突变,必然造成实际的车辆加速度跟不上规划的加速度;二是这个过程加速度突变,制动会让车上的人很不爽。

2、三次多项式曲线

在S-V图上,若已知起点和终点的距离、速度、加速度,则可采用三次多项式曲线。

采用三次多项式曲线拟合,对应的S-vel,S-acc,S-jerk分别如下图所示。可以看到加速度是连续变化的,但加加速度在初始位置是突变的。同样在实际的车辆控制过程中,实际的车辆加速度跟不上规划的加速度;二是这个过程加加速度突变,也会让车上的人不爽。

3、五次多项式曲线

在S-V图上,若已知起点和终点的距离、速度、加速度、加加速度,则可采用五次多项式曲线。

采用五次多项式曲线拟合,对应的S-vel,S-acc,S-jerk分别如下图所示。可以看到加速度、加加速度都是连续变化的。因此采用五次多项式曲线来进行拟合,可以使纵向的加速度控制平顺变化。

上面展示用不同多项式来生成速度平滑曲线的方法,在路径规划中同理。

一般在路径规划时采用Frenet坐标系,即使用道路的中心线作为参考线,使用参考线的 切线向量法线向量 建立坐标系。如下图所示,这个S-D坐标系即为Frenet坐标系(有关Frenet坐标系的介绍可见上一篇文章)。

可用不同多项式来生成S-D换道轨迹,在不考虑避障的情况下,通常使横向的加加速度最小化来提高换道时的平顺性。

版权声明:

作者: freeclashnode

链接: https://www.freeclashnode.com/news/article-1857.htm

来源: FreeClashNode

文章版权归作者所有,未经允许请勿转载。

免费节点实时更新

热门文章

最新文章

归档