无人驾驶中的规划算法-Apollo轨迹生成算法中提到Apollo的轨迹规划采用STGraph做速度规划,并且结合源代码分析了STGraph是如何生成的,这次看下如何结合STGraph生成候选轨迹。
生成ST轨迹曲线
生成SL轨迹曲线2、SL轨迹的终止状态modules/planning/lattice/trajectory_generation/end_condition_sampler.cc文件无论车辆最终进入什么状态,它都应该与车道中心线平行对齐,并且在横向L方向上速度和加速度均为0,也就是车辆将沿着车道直行。对应于轨迹曲线也就是轨迹曲线终点的一阶导数和二阶导数为0.
对应的代码如下:
3、ST轨迹的终止状态终止状态可以分为三种:巡航(curise)、跟随(following)、停止(stopping)。巡航态表示车辆完成规划后将按照固定速度行进,横向速度和加速度都被修正0。
在跟随模式下,我们需要对时间和位置进行采样,即要求在某个时刻我们要出现在某辆车后面,并且跟随其前进。为了与跟随车辆保持安全距离,需要不断调整我们的车的速度和加速度。
停止模式下,我们只需要对车辆何时何地停止进行采样,然后车辆的终止态的速度和加速度都会被修正为0.
对应的代码:巡航态:
停止态:
跟随态:
4、轨迹曲线的生成有了起始状态和采样生成的终止状态,就可以通过多项式曲线生成对应的轨迹曲线。
领取专属 10元无门槛券
私享最新 技术干货