Apollo 10.0
自动驾驶开放平台
README_cn

planning-task-open-space-trajectory-partition

简介

OpenSpaceTrajectoryPartition首先对开放空间生成轨迹进行线性插值,而后根据路径前进或后退,将轨迹分割为不同段。最后找到当前轨迹上与自车最接近的点,作为轨迹起点,规划相应轨迹。

InterpolateTrajectory

对生成轨迹stitched_trajectory_result通过间隔时间进行线性插值,而后将插值后的轨迹存储在interpolated_trajectory中。

PartitionTrajectory

该函数遍历所有轨迹点,根据当前轨迹点与下一轨迹点的朝向,判断车辆是否换挡,如果换挡则以当前轨迹点对轨迹进行分割,从而使每段轨迹的车辆朝向相同。

AdjustRelativeTimeAndS

该函数以车辆当前跟踪轨迹点为起点,对所有轨迹点进行相对时间与纵向距离调整,使当前跟踪轨迹点处的相对时间与纵向距离为0。

InsertGearShiftTrajectory

当车辆走到轨迹末端,要走下一段轨迹时,插入停车轨迹,使车辆能够原地调整车轮转角。

目录结构

modules/planning/tasks/open_space_trajectory_partition/
├── BUILD
├── conf
│ └── default_conf.pb.txt
├── cyberfile.xml
├── open_space_trajectory_partition.cc
├── open_space_trajectory_partition.h
├── open_space_trajectory_partition_test.cc
├── plugins.xml
├── proto
│ ├── BUILD
│ └── open_space_trajectory_partition.proto
└── README_cn.md

模块输入输出与配置

planning-task-open-space-trajectory-partition插件

配置文件&配置项

文件路径 类型/结构
说明
modules/planning/tasks/open_space_trajectory_partition/conf/default_conf.pb.txt apollo::planning::OpenSpaceTrajectoryPartitionConfig OpenSpaceTrajectoryPartition 的配置文件

使用方式

配置加载 OpenSpaceTrajectoryPartition Task 插件

modules/planning/scenarios/xxxx/conf/pipeline.pb.txt 在期望增加OpenSpaceTrajectoryPartition插件的scenarios xxxx中增加相应的配置,配置参数中name 表示task的名称,这个由用户自定义,表达清楚是哪个task即可,type 是task的类名称,即OpenSpaceTrajectoryPartition

task {
name: "OPEN_SPACE_TRAJECTORY_PARTITION"
type: "OpenSpaceTrajectoryPartition"
}

配置 OpenSpaceTrajectoryPartition 参数

modules/planning/tasks/open_space_trajectory_partition/conf/default_conf.pb.txt中,对OpenSpaceTrajectoryPartition插件的参数进行配置。 在modules/planning/planning_component/conf/planning.conf中,对作用在OpenSpaceTrajectoryPartition插件的gflag参数进行配置。

启动planning
mainboard -d modules/planning/planning_component/dag/planning.dag

文档意见反馈

如果您在使用文档的过程中,遇到任何问题,请到我们在【开发者社区】建立的 反馈意见收集问答页面,反馈相关的问题。我们会根据反馈意见对文档进行迭代优化。