I just get the Turtlebot2. It works well with default move_base global planner. I can give the goal in rviz, and it move to the goal correctly.
Now I am trying to use sbpl_lattice_planner as global planner, as I want to generate path without turning in place. I mean Turtlebot2 will move as a car like robot.
- so I generate the motion primitive file without turning in place.
https://www.dropbox.com/s/uoz1b9snfju7usz/genmprim_unicycle_005.m
- make a new launch file ,set move_base param "base_global_planner" as "SBPLLatticePlanner"
I launch the move_base and rviz without error. I can push the robot, and in rviz the turtlebot moves. localization is OK.
but when I give a goal in rviz, sbpl_lattice_planner can not find the path, even the goal is just 0.1 meter straight forward of the turtlebot2.
output of move_base:
... logging to /home/turtlebot/.ros/log/aaa7fbae-6da7-11e2-b8da-844bf57e1339/roslaunch-turtlebot-AO756-15972.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
]2;/home/turtlebot/ros_workspace/turtlebot_apps/turtlebot_navigation/launch/amcl_sbpl.launch
[1mstarted roslaunch server http://192.168.1.6:40117/[0m
SUMMARY
========
PARAMETERS
* /amcl/gui_publish_rate
* /amcl/initial_pose_a
* /amcl/initial_pose_x
* /amcl/initial_pose_y
* /amcl/kld_err
* /amcl/kld_z
* /amcl/laser_lambda_short
* /amcl/laser_likelihood_max_dist
* /amcl/laser_max_beams
* /amcl/laser_max_range
* /amcl/laser_model_type
* /amcl/laser_sigma_hit
* /amcl/laser_z_hit
* /amcl/laser_z_max
* /amcl/laser_z_rand
* /amcl/laser_z_short
* /amcl/max_particles
* /amcl/min_particles
* /amcl/odom_alpha1
* /amcl/odom_alpha2
* /amcl/odom_alpha3
* /amcl/odom_alpha4
* /amcl/odom_alpha5
* /amcl/odom_frame_id
* /amcl/odom_model_type
* /amcl/recovery_alpha_fast
* /amcl/recovery_alpha_slow
* /amcl/resample_interval
* /amcl/transform_tolerance
* /amcl/update_min_a
* /amcl/update_min_d
* /amcl/use_map_topic
* /camera/depthimage_to_laserscan_loader/output_frame_id
* /camera/depthimage_to_laserscan_loader/range_min
* /camera/depthimage_to_laserscan_loader/scan_height
* /camera/openni_camera_loader/depth_frame_id
* /camera/openni_camera_loader/depth_mode
* /camera/openni_camera_loader/depth_registration
* /camera/openni_camera_loader/depth_time_offset
* /camera/openni_camera_loader/image_mode
* /camera/openni_camera_loader/image_time_offset
* /camera/openni_camera_loader/rgb_frame_id
* /move_base/SBPLLatticePlanner/primitive_filename
* /move_base/TrajectoryPlannerROS/acc_lim_th
* /move_base/TrajectoryPlannerROS/acc_lim_x
* /move_base/TrajectoryPlannerROS/acc_lim_y
* /move_base/TrajectoryPlannerROS/dwa
* /move_base/TrajectoryPlannerROS/goal_distance_bias
* /move_base/TrajectoryPlannerROS/heading_lookahead
* /move_base/TrajectoryPlannerROS/holonomic_robot
* /move_base/TrajectoryPlannerROS/max_rotational_vel
* /move_base/TrajectoryPlannerROS/max_vel_x
* /move_base/TrajectoryPlannerROS/meter_scoring
* /move_base/TrajectoryPlannerROS/min_in_place_rotational_vel
* /move_base/TrajectoryPlannerROS/min_vel_x
* /move_base/TrajectoryPlannerROS/oscillation_reset_dist
* /move_base/TrajectoryPlannerROS/path_distance_bias
* /move_base/TrajectoryPlannerROS/sim_time
* /move_base/TrajectoryPlannerROS/vtheta_samples
* /move_base/TrajectoryPlannerROS/vx_samples
* /move_base/TrajectoryPlannerROS/xy_goal_tolerance
* /move_base/TrajectoryPlannerROS/yaw_goal_tolerance
* /move_base/base_global_planner
* /move_base/controller_frequency
* /move_base/global_costmap/bump/clearing
* /move_base/global_costmap/bump/data_type
* /move_base/global_costmap/bump/marking
* /move_base/global_costmap/bump/topic
* /move_base/global_costmap/footprint
* /move_base/global_costmap/footprint_padding
* /move_base/global_costmap/global_frame
* /move_base/global_costmap/inflation_radius
* /move_base/global_costmap/max_obstacle_height
* /move_base/global_costmap/observation_sources
* /move_base/global_costmap/obstacle_range
* /move_base/global_costmap/publish_frequency
* /move_base/global_costmap/raytrace_range
* /move_base/global_costmap/robot_base_frame
* /move_base/global_costmap/robot_radius
* /move_base/global_costmap/scan/clearing
* /move_base/global_costmap/scan/data_type
* /move_base/global_costmap/scan/marking
* /move_base/global_costmap/scan/topic
* /move_base/global_costmap/static_map
* /move_base/global_costmap/transform_tolerance
* /move_base/global_costmap/update_frequency
* /move_base/local_costmap/bump/clearing
* /move_base/local_costmap/bump/data_type
* /move_base/local_costmap/bump/marking
* /move_base/local_costmap/bump/topic
* /move_base/local_costmap/footprint
* /move_base/local_costmap/footprint_padding
* /move_base/local_costmap/global_frame
* /move_base/local_costmap/height
* /move_base/local_costmap/inflation_radius
[0m[ INFO] [1359864425.904491010]: Subscribed to Topics: scan[0m
[0m[ INFO] [1359864425.929688201]: Requesting the map...
[0m
[0m[ INFO] [1359864425.932161705]: Still waiting on map...
[0m
[0m[ INFO] [1359864426.934195933]: Still waiting on map...
[0m
[33m[ WARN] [1359864427.937342467]: You have set map parameters, but also requested to use the static map. Your parameters will be overwritten by those given by the map server[0m
[0m[ INFO] [1359864427.937413002]: Received a 576 X 480 map at 0.050000 m/pix
[0m
[0m[ INFO] [1359864430.708101100]: Name is SBPLLatticePlanner[0m
setting parameter cost_inscribed_thresh to 19
setting parameter cost_possibly_circumscribed_thresh to 3
env: initialize with width=576 height=480 start=0.000 0.000 0.000 goalx=0.000 0.000 0.000 cellsize=0.050 nomvel=0.400 timetoturn=0.600, obsthresh=20
NOTE: goaltol parameters currently unused
perimeter has size=5
perimeter(0) = -0.3350 -0.3350
perimeter(1) = -0.3350 0.3350
perimeter(2) = 0.3350 0.3350
perimeter(3) = 0.4700 0.0100
perimeter(4) = 0.3350 -0.3350
Reading in motion primitives...done
number of cells in footprint of the robot = 241
Footprint cell at (-7, -7)
Footprint cell at (-7, -6)
Footprint cell at (-7, -5)
Footprint cell at (-7, -4)
Footprint cell at (-7, -3)
Footprint cell at (-7, -2)
Footprint cell at (-7, -1)
Footprint cell at (-7, 0)
Footprint cell at (-7, 1)
Footprint cell at (-7, 2)
Footprint cell at (-7, 3)
Footprint cell at (-7, 4)
Footprint cell at (-7, 5)
Footprint cell at (-7, 6)
Footprint cell at (-7, 7)
Footprint cell at (-6, -7)
Footprint cell at (-6, -6)
Footprint cell at (-6, -5)
Footprint cell at (-6, -4)
Footprint cell at (-6, -3)
Footprint cell at (-6, -2)
Footprint cell at (-6, -1)
Footprint cell at (-6, 0)
Footprint cell at (-6, 1)
Footprint cell at (-6, 2)
Footprint cell at (-6, 3)
Footprint cell at (-6, 4)
Footprint cell at (-6, 5)
Footprint cell at (-6, 6)
Footprint cell at (-6, 7)
Footprint cell at (-5, -7)
Footprint cell at (-5, -6)
Footprint cell at (-5, -5)
Footprint cell at (-5, -4)
Footprint cell at (-5, -3)
Footprint cell at (-5, -2)
Footprint cell at (-5, -1)
Footprint cell at (-5, 0)
Footprint cell at (-5, 1)
Footprint cell at (-5, 2)
Footprint cell at (-5, 3)
Footprint cell at (-5, 4)
Footprint cell at (-5, 5)
Footprint cell at (-5, 6)
Footprint cell at (-5, 7)
Footprint cell at (-4, -7)
Footprint cell at (-4, -6)
Footprint cell at (-4, -5)
Footprint cell at (-4, -4)
Footprint cell at (-4, -3)
Footprint cell at (-4, -2)
Footprint cell at (-4, -1)
Footprint cell at (-4, 0)
Footprint cell at (-4, 1)
Footprint cell at (-4, 2)
Footprint cell at (-4, 3)
Footprint cell at (-4, 4)
Footprint cell at (-4, 5)
Footprint cell at (-4, 6)
Footprint cell at (-4, 7)
Footprint cell at (-3, -7)
Footprint cell at (-3, -6)
Footprint cell at (-3, -5)
Footprint cell at (-3, -4)
Footprint cell at (-3, -3)
Footprint cell at (-3, -2)
Footprint cell at (-3, -1)
Footprint cell at (-3, 0)
Footprint cell at (-3, 1)
Footprint cell at (-3, 2)
Footprint cell at (-3, 3)
Footprint cell at (-3, 4)
Footprint cell at (-3, 5)
Footprint cell at (-3, 6)
Footprint cell at (-3, 7)
Footprint cell at (-2, -7)
Footprint cell at (-2, -6)
Footprint cell at (-2, -5)
Footprint cell at (-2, -4)
Footprint cell at (-2, -3)
Footprint cell at (-2, -2)
Footprint cell at (-2, -1)
Footprint cell at (-2, 0)
Footprint cell at (-2, 1)
Footprint cell at (-2, 2)
Footprint cell at (-2, 3)
Footprint cell at (-2, 4)
Footprint cell at (-2, 5)
Footprint cell at (-2, 6)
Footprint cell at (-2, 7)
Footprint cell at (-1, -7)
Footprint cell at (-1, -6)
Footprint cell at (-1, -5)
Footprint cell at (-1, -4)
Footprint cell at (-1, -3)
Footprint cell at (-1, -2)
Footprint cell at (-1, -1)
Footprint cell at (-1, 0)
Footprint cell at (-1, 1)
Footprint cell at (-1, 2)
Footprint cell at (-1, 3)
Footprint cell at (-1, 4)
Footprint cell at (-1, 5)
Footprint cell at (-1, 6)
Footprint cell at (-1, 7)
Footprint cell at (0, -7)
Footprint cell at (0, -6)
Footprint cell at (0, -5)
Footprint cell at (0, -4)
Footprint cell at (0, -3)
Footprint cell at (0, -2)
Footprint cell at (0, -1)
Footprint cell at (0, 0)
Footprint cell at (0, 1)
Footprint cell at (0, 2)
Footprint cell at (0, 3)
Footprint cell at (0, 4)
Footprint cell at (0, 5)
Footprint cell at (0, 6)
Footprint cell at (0, 7)
Footprint cell at (1, -7)
Footprint cell at (1, -6)
Footprint cell at (1, -5)
Footprint cell at (1, -4)
Footprint cell at (1, -3)
Footprint cell at (1, -2)
Footprint cell at (1, -1)
Footprint cell at (1, 0)
Footprint cell at (1, 1)
Footprint cell at (1, 2)
Footprint cell at (1, 3)
Footprint cell at (1, 4)
Footprint cell at (1, 5)
Footprint cell at (1, 6)
Footprint cell at (1, 7)
Footprint cell at (2, -7)
Footprint cell at (2, -6)
Footprint cell at (2, -5)
Footprint cell at (2, -4)
Footprint cell at (2, -3)
Footprint cell at (2, -2)
Footprint cell at (2, -1)
Footprint cell at (2, 0)
Footprint cell at (2, 1)
Footprint cell at (2, 2)
Footprint cell at (2, 3)
Footprint cell at (2, 4)
Footprint cell at (2, 5)
Footprint cell at (2, 6)
Footprint cell at (2, 7)
Footprint cell at (3, -7)
Footprint cell at (3, -6)
Footprint cell at (3, -5)
Footprint cell at (3, -4)
Footprint cell at (3, -3)
Footprint cell at (3, -2)
Footprint cell at (3, -1)
Footprint cell at (3, 0)
Footprint cell at (3, 1)
Footprint cell at (3, 2)
Footprint cell at (3, 3)
Footprint cell at (3, 4)
Footprint cell at (3, 5)
Footprint cell at (3, 6)
Footprint cell at (3, 7)
Footprint cell at (4, -7)
Footprint cell at (4, -6)
Footprint cell at (4, -5)
Footprint cell at (4, -4)
Footprint cell at (4, -3)
Footprint cell at (4, -2)
Footprint cell at (4, -1)
Footprint cell at (4, 0)
Footprint cell at (4, 1)
Footprint cell at (4, 2)
Footprint cell at (4, 3)
Footprint cell at (4, 4)
Footprint cell at (4, 5)
Footprint cell at (4, 6)
Footprint cell at (4, 7)
Footprint cell at (5, -7)
Footprint cell at (5, -6)
Footprint cell at (5, -5)
Footprint cell at (5, -4)
Footprint cell at (5, -3)
Footprint cell at (5, -2)
Footprint cell at (5, -1)
Footprint cell at (5, 0)
Footprint cell at (5, 1)
Footprint cell at (5, 2)
Footprint cell at (5, 3)
Footprint cell at (5, 4)
Footprint cell at (5, 5)
Footprint cell at (5, 6)
Footprint cell at (5, 7)
Footprint cell at (6, -7)
Footprint cell at (6, -6)
Footprint cell at (6, -5)
Footprint cell at (6, -4)
Footprint cell at (6, -3)
Footprint cell at (6, -2)
Footprint cell at (6, -1)
Footprint cell at (6, 0)
Footprint cell at (6, 1)
Footprint cell at (6, 2)
Footprint cell at (6, 3)
Footprint cell at (6, 4)
Footprint cell at (6, 5)
Footprint cell at (6, 6)
Footprint cell at (6, 7)
Footprint cell at (7, -7)
Footprint cell at (7, -6)
Footprint cell at (7, -5)
Footprint cell at (7, -4)
Footprint cell at (7, -3)
Footprint cell at (7, -2)
Footprint cell at (7, -1)
Footprint cell at (7, 0)
Footprint cell at (7, 1)
Footprint cell at (7, 2)
Footprint cell at (7, 3)
Footprint cell at (7, 4)
Footprint cell at (7, 5)
Footprint cell at (7, 6)
Footprint cell at (7, 7)
Footprint cell at (8, -5)
Footprint cell at (8, -4)
Footprint cell at (8, -3)
Footprint cell at (8, -2)
Footprint cell at (8, -1)
Footprint cell at (8, 0)
Footprint cell at (8, 1)
Footprint cell at (8, 2)
Footprint cell at (8, 3)
Footprint cell at (8, 4)
Footprint cell at (8, 5)
Footprint cell at (9, -2)
Footprint cell at (9, -1)
Footprint cell at (9, 0)
Footprint cell at (9, 1)
Footprint cell at (9, 2)
Pre-computing action data using motion primitives for every angle...
pre-computing for angle 0 out of 16 angles
pre-computing for angle 14 out of 16 angles
pre-computing for angle 15 out of 16 angles
done pre-computing action data based on motion primitives
environment stores states in lookup table
Precomputing heuristics...
setting OPEN2D data structure to sliding buckets
creating sliding bucket-based OPEN2D 28305 buckets, each bucket of size 1056 ...done
setting OPEN2D data structure to sliding buckets
creating sliding bucket-based OPEN2D 28305 buckets, each bucket of size 1056 ...done
done
[0m[ INFO] [1359864430.944110901]: Planning with ARA*[0m
[0m[ INFO] [1359864430.945214960]: [sbpl_lattice_planner] Initialized successfully[0m
[0m[ INFO] [1359864430.948520646]: MAP SIZE: 576, 480[0m
[0m[ INFO] [1359864430.958509489]: Subscribed to Topics: scan[0m
[0m[ INFO] [1359864431.389478681]: Sim period is set to 0.20[0m
[0m[ INFO] [1359866077.162641893]: [sbpl_lattice_planner] getting start point (0.19944,-0.0267501) goal point (0.456126,0.011827)[0m
env: setting start to 13.999 12.173 0.615 (279 243 2)
planner: setting start to 1
X=279 Y=243 Theta=2
env: setting goal to 14.256 12.212 0.663 (285 244 2)
planner: setting goal to 2
the state is a goal state
X=285 Y=244 Theta=2
planner: forceplanfromscratch set
planner: search mode set to 0
planner: replan called (bFirstSol=0, bOptSol=0)
2D search with sliding buckets and term_factor=0.500
# of expands during 2dgridsearch=154 time=0 msecs 2Dsolcost_inmm=311 largestoptfval=622 (start=279 243 goal=285 244)
2dsolcost_infullunits=777
solution does not exist: search exited because heap is empty
eps=1000000000.000000 expands=9 g(searchgoal)=1000000000 time=0.000
MaxMemoryCounter = 812
could not find a solution
total expands this call = 9, planning time = 0.000 secs, solution cost=1000000000
failed to find a solution
[0m[ INFO] [1359866077.177486666]: Solution not found
[0m
[0m[ INFO] [1359866077.179027582]: [sbpl_lattice_planner] getting start point (0.19944,-0.0267501) goal point (0.456126,0.011827)[0m
env: setting start to 13.999 12.173 0.615 (279 243 2)
Here is my launch file and other configs(sorry, as my lower karma I cannot attach files):
amcl and move_base launch file
_move_base_sbpl.launch
base_local_planner_params_sbpl.yaml
controller_frequency: 5.0 TrajectoryPlannerROS: max_vel_x: 0.30 min_vel_x: 0.10 max_rotational_vel: 1.5 min_in_place_rotational_vel: 1.0 acc_lim_th: 0.75 acc_lim_x: 0.50 acc_lim_y: 0.50
holonomic_robot: false yaw_goal_tolerance: 0.3 xy_goal_tolerance: 0.15 goal_distance_bias: 0.8 path_distance_bias: 0.6 sim_time: 1.5 heading_lookahead: 0.325 oscillation_reset_dist: 0.05
vx_samples: 6 vtheta_samples: 20 dwa: false meter_scoring: true
costmap_common_params_sbpl.yaml
max_obstacle_height: 0.60 # assume something like an arm is mounted on top of the robot obstacle_range: 2.5 raytrace_range: 3.0 robot_radius: 0.18 inflation_radius: 0.10 observation_sources: scan
scan: {data_type: LaserScan, topic: /scan, marking: true, clearing: true}
Current bump cloud configuration
bump: {data_type: PointCloud2, topic: mobile_base/sensors/bumper_pointcloud, marking: true, clearing: false}
These were for the create, but I think weren't getting used.
Can we merge to a common configuration - DJS?
scan: {data_type: LaserScan, topic: /scan, marking: true, clearing: true}
left_bump: {data_type: PointCloud2, topic: /bump_sensor_left, marking: true, clearing: true}
right_bump: {data_type: PointCloud2, topic: /bump_sensor_right, marking: true, clearing: true}
footprint: [[-0.325, -0.325], [-0.325, 0.325], [0.325, 0.325], [0.46, 0.0], [0.325, -0.325]] #robot_radius: 0.46 footprint_padding: 0.01
global_costmap_params.yaml
global_costmap: global_frame: /map robot_base_frame: /base_footprint update_frequency: 3.0 publish_frequency: 0.0 static_map: true transform_tolerance: 0.5
Originally posted by redheli on ROS Answers with karma: 68 on 2013-02-02
Post score: 2