autoware.auto泊车规划模块介绍(一)

autoware.auto泊车规划模块介绍(一)
本节介绍autoware.auto泊车规划模块【parking_planner】的10个头文件的基本内容,各头文件包含的类体以及功能。10个头文件如下:
autoware.auto泊车规划模块介绍(一)_第1张图片
1、astar_path_planner.hpp
AstarPathPlanner类:从起始点到终止点规划一条无碰的但是不考虑车辆动力学的可行轨迹【仅有构造函数和核心的plan_astar函数【A*规划】】

2、nlp_adapters.hpp
1、定义nlp权重类
2、障碍物约束时候一个阶段的对偶变量类【lambda,mu向量】
3、单个障碍物的表示类【包括障碍物半平面参数参数、状态变量】
4、辅助函数:
4.1、目标函数待优化变量整合:车辆状态、车辆控制、障碍物状态变量,并设定待优化变量的上界和下界
4.2、将传入的向量生成horizon_length个轨迹片,组成轨迹
4.3、将nlp求解器的输入转换为一个向量

3、nlp_path_planner.hpp
构建NLPPathPlanner的类体:功能:
1、nlp求解器构造函数;
2、规划一个动力学可行、无碰的连接起始点和终止点的路径;3、进行生成轨迹的动力学、边界、无碰约束的检验

4、nlp_path_planner.hpp
1、泊车规划的结果类【终轨迹 nlp迭代次数 nlp求解时间 结果状态】
2、倒车规划的类体【规划结果:PlanningResult类;从A*全局规划的车辆状态列表生成对应的全轨迹】
3、辅助函数:将parkplan规划的轨迹转换为autoware格式的轨迹

5、parking_planner_types.hpp
车辆的状态类:位置,速度、朝向、前轮转角
车辆的输入类:油门和角速度
轨迹片类:某个时间点的车辆状态加车辆输入
整条轨迹类:轨迹片的向量

6、bicycle_model.hpp
1、自行车模型参数的存储类:
2、自行车模型类:根据车辆当前状态、车辆控制指令、步长、步数得到精确的车辆状态;车辆某状态的包围框

7、geometry.hpp
1、二维空间的点类。完成±*/><>=<=的运算符的重载,点的距离以及旋转固定角度后的位置
2、二维空间半平面类。功能:定义一个二维的半平面;判断给定点是否在半平面内部
3、定义一个二维空间的多边形类。功能:多边形由顶点和半平面组成:根据顶点更新半平面;根据半平面更新顶点;多边形的旋转;两多边形是否相交;点是否在多边形内部

8、rungekutta.hpp
完成向量+和*的运算符重载;设定Runge-Kutta算法,进行运动学离散化,得到某采样时间后更精确的车辆状态值

9、configuration.hpp
进行一些常用参数的设定:nlp求解器和rk4集合

10、visibility_control
不看

备注:
水平有限,仅供自看

你可能感兴趣的:(autoware,自动驾驶,动态规划)