global_planner整体解析
拿ROS玩移动机器人自主导航攻略(二) --by 西工大一小学生
对Navigation基础的了解
对于某一个控制循环(control cycle),算法都会对每个网格进行评分,使用迈哈顿距离,即街区距离
这个网格地图用来对轨迹评分
在此持的目标goal是局部的goal,与终点最近的局部goal,叫做local goal,符合要求的点,是在局部区域内,是第一个与区域外部点相连的点,局部区域的尺寸由move_base来决定
震荡抑制
通用局部规划
概述
局部规划的目的是,在每一个控制循环中找到合适的局部规划。
可以以dwa_local_planner为模板制定自己的局部规划器,或者只是简单地添加损失计算函数或轨迹生成器
轨迹生成器
The SimpleTrajectoryGenerator class can generate trajectories described in the overview, using either the trajectory rollout or the DWA principle.
轨迹损失函数
A negative score means the trajectory is invalid. For positive value, the semantics are that a trajectory with a lower score is preferrable to one with a higher score with respect to this cost function.
SimpleScoredSamplingPlanner
帮助类
LocalPlannerUtil
LatchedStopRotateController
到终点后彻底停止
OdometryHelperRos
损失函数
障碍损失函数
根据检测到的障碍物来对计算出的轨迹进行评分,如果该轨迹从障碍物上通过,会产生负值或零值
栅格地图损失函数
根据该轨迹与全局规划的靠近程度对轨迹进行评分
震荡损失函数
帮助减少震荡
前向优先损失函数
这种函数的目的在于鼓励机器人前向运动
相关的类
整理相关参数
原文:https://www.cnblogs.com/lizhensheng/p/11117697.html