ROS RRT RRTstar的实现

本文是将RRT算法和RRTstar算法应用到ROS里作为全局路径规划使用。

RRT算法原理:

ROS RRT RRTstar的实现_第1张图片

 

 

RRTstar树枝修剪原理:

ROS RRT RRTstar的实现_第2张图片

 

 

 

原理是将生成随机点qrand,找到树上最临近点qnearest(point2),会根据步长预先生成一个qnew,在以

qnew为中心生成一个半径为R的圆,在圆里找到点半径小于R的点(每个点有相应的cost,cost代表他从根节点到当前点的代价),如果dist(point1,qnew)+cost(point1)

基于ROS的仿真

ROS RRT RRTstar的实现_第3张图片

这是RRT的

ROS RRT RRTstar的实现_第4张图片

这是RRTstar的

 

ROS源码:https://github.com/longjianquan/path-planning     (注释:里面有个srcrrt 是我备用的,要用这个包时就改为src)

使用方法 先修改 ros里的一个包,  turtlebot_navigation/launch/move_base.launch.xml  里

添加一行 就可以了

 

roslaunch  turtlebot_stage turtlebot_in_stage.launch    就行了

--------------------------------------------------------------------分割线-----------------------------------------------------------------------------------

经过贝塞尔曲线拟合

ROS RRT RRTstar的实现_第5张图片

ROS RRT RRTstar的实现_第6张图片

 

github源码:https://github.com/longjianquan/add--planner

下载下来命名为src替换上文那个主文件夹里的src,就可以了。

================分割线================================

基于OMPL开发:https://blog.csdn.net/ljq31446/article/details/79899172

你可能感兴趣的:(ros)