轉載:https://blog.csdn.net/zhangrelay/article/details/79297492
node
ROS和RRT結合的示例比較多,以前博文提過兩次( 1 和 2 ),本文作一些彙總和整理,大部分都在roswiki和GitHub上有具體說明。須要認真閱讀源碼和說明文件,才能使用順利。git
01. RRT for Swarm 02. RRT-Plugin 03. CallistoRover 04. navigation algorithms(A, RRT+) github
05. ROS-assignment-3-RRT-planner 06. turtlebot_rrt 07. Quadcopter path planning using RRT算法
08. Kinodynamic RRT Implementation 09. SRL_GLOBAL_PLANNER(RRT, RGG, RRT, Theta-RRT) app
10. roswiki: rrt_exploration、riskrrt和motion_planning。ide
基礎內容關注,move base、Navigation、MoveIt!等。下面對上面資源作一個簡單的分類。ui
第一類:插件(plugin)this
1. Implementation of RRTidea
2. A RRT* ROS plugin for Move Base using OMPLspa
3. SRL_GLOBAL_PLANNER軟件包提供了基於採樣的運動規劃器(RRT,RGG,RRT ,Theta -RRT)做爲ROS中Move-base的全局規劃器插件
The srl_global_planner
ROS
package provides an implementation of the sampling based motion planners (RRT
, RRT
, Theta
-RRT
) as global planner plugin for move_base
, a ROS
framework. Please refer to http://wiki.ros.org/move_base, for a detailed description of the move_base
framework. All the algorithms exploit the POSQ steer function, but other steer functions are available (single and double integrator, Dubins curve). For additional info regarding the POSQ steer function and the learned distance metric used by srl_global_planner
refer to the following papers:
Clone the package into you catkin workspace
cd [workspace]/src
git clone https://github.com/srl-freiburg/srl_global_planner.git
cd ../
catkin_make
or catkin build
TYPE_PLANNER
, set to:
RRT
RRT
only partial rewiringRRT
NUMBER_UPDATE_TRAJ
, set to:
BOX
:
RADIUS
:
RRT
select -1 so to have the RRT
shrinking ball.RHO
:
DT
:
TYPE_SAMPLING
:
TYPE_SAMPLING
== 0 support set as uniform over a strips following a discrete path generate by a Theta
algorithmTYPE_SAMPLING
== 1 support set as Gaussian Mixture over the Theta
pathTYPE_SAMPLING
== 2 support set as gaussians over a spline fitting the Theta
waypointsTYPE_SAMPLING
== 3 support for Theta
-RRT
, if set need to specify the range where to set orientations OR_RANGE
and the width of the strip along the Theta
path WIDTH_STRIP
TYPE_SAMPLING
== 4 support set as the entire state space, the dimension of the state space are read from the grid generate by the move_base frameworkTYPE_SAMPLING
== 5 Path Biasing along the current available trajectory. If used need to set also the biasing probability BIAS_PROB
and the DISPERSION
GOAL_BIASING
GOAL_BIASING_THS
ADD_COST_FROM_COSTMAP
, set to true if you want to add cost from global cost mapADD_COST_PATHLENGTH
, set to true if you want to add the cost associated to path length and changes of headingADD_COST_THETASTAR
, set to true if you want to add cost resembling closeness to thetastar pathLEARNED
and NOTLEARNED
select the best vertex from the spherical neighborhood with radius equal to the parameter RADIUS
:
LEARNED
, set to 1, if you want to find the nearest vertex according to the learned costFINDNEAREST
, set to 1 if you want to find the nearest vertex according to the Kd Tree Euclidean DistanceNOTLEARNED
, set to 1 if you want to find the nearest vertex according to the cost computed over extensions of POSQ pathTIMECOUNTER
, set to 1 if you want to specify the maximum amount of seconds your planner should work.MAXTIME
, max number of seconds allowed to find a pathmax_iterations
, if TIMECOUNTER
is 0, this is the maximum number of iterations the planner will execute to find a path,Any contribution to the software is welcome. Contact the current developers for any info:
RRTx
------
第二類:算法(rviz可視化)
1. 在ROS中實現的基於RRT的路徑規劃算法(參考博文1)
------
第三類:實現(Gazebo仿真)
1. rrt_exploration實現了基於多機器人RRT的地圖探索算法。它還具備使用圖像處理來提取邊界點和基於圖像的前沿檢測(參考博文2)
2. ROS Kinetic Kame快速探索隨機樹(RRT)全局路徑規劃插件(turtlebot)
3. 使用RRT 的四旋翼飛行器路徑規劃和最小加速度軌跡生成算法
------