Turtlebot path planner fails with added plugin [closed]

asked 2014-04-09 08:52:53 -0500

kmb11 gravatar image

updated 2014-04-14 09:48:59 -0500

EDIT: After recent trials, this question which my coworker has posted more fully describes this situation.

Hello,

I am working on navigation with a Turtlebot and have added a costmap layer that adds a lethal obstacle at all points that have been 1 metre in front of the robot. I added the plugin for this layer in the turtlebot_navigation package parameters, such that when AMCL runs, this layer is added to the costmap. I then launch AMCL (roslaunch turtlebot_navigation amcl_demo.launch map_file:=(path to map)/map.yaml, and Rviz displays the costmap with the added lethal obstacle. However, when I try to send a 2d nav goal (using either a node or with Rviz), it plans a path but does not execute the path. When I run a node to send a goal, I get "waiting for result" until I cancel it. In Rviz, the path is displayed, but the robot does not move (neither the real robot nor the Rviz robot). How can I successfully send 2d nav goals with this layer added?

The code for the layer I added is from this tutorial.

ROS Hydro, Ubuntu 12.04, Turtlebot 2

Thank you.

costmap_common_params.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.1875
inflation_radius: 0.50

# voxel map configuration; z-voxels 0 are filled by bumpers and 1 by laser scan (kinect)
map_type: voxel
origin_z: 0.0
z_resolution: 0.2
z_voxels: 2
publish_voxel_map: false

observation_sources: scan bump

scan: {data_type: LaserScan, topic: scan, marking: true, clearing: true, min_obstacle_height: 0.25, max_obstacle_height: 0.35}
bump: {data_type: PointCloud2, topic: mobile_base/sensors/bumper_pointcloud, marking: true, clearing: false, min_obstacle_height: 0.0, max_obstacle_height: 0.15}

local_costmap_params.yaml:

local_costmap:
   global_frame: /map
   robot_base_frame: /base_footprint
   update_frequency: 5.0
   publish_frequency: 2.0
   static_map: false
   rolling_window: true
   width: 4.0
   height: 4.0
   resolution: 0.05
   transform_tolerance: 0.5
   robot_radius: 0.1875

global_costmap_params.yaml:

global_costmap:
   global_frame: /map
   robot_base_frame: /base_footprint
   update_frequency: 1.0
   publish_frequency: 0.5
   static_map: true
   transform_tolerance: 0.5
   robot_radius: 0.1875

move_base_params.yaml:

shutdown_costmaps: false

controller_frequency: 5.0
controller_patience: 3.0

planner_frequency: 1.0
planner_patience: 5.0

oscillation_timeout: 10.0
oscillation_distance: 0.2

base_local_planner_params.yaml:

TrajectoryPlannerROS:

# Robot Configuration Parameters
  max_vel_x: 0.3
  min_vel_x: 0.1

  max_vel_theta:  1.0
  min_vel_theta: -1.0
  min_in_place_vel_theta: 0.6

  acc_lim_x: 0.5
  acc_lim_theta: 1.0

# Goal Tolerance Parameters
  yaw_goal_tolerance: 0.3
  xy_goal_tolerance: 0.15

# Forward Simulation Parameters
  sim_time: 3.0
  vx_samples: 6
  vtheta_samples: 20

# Trajectory Scoring Parameters
  meter_scoring: true
  pdist_scale: 0.6
  gdist_scale: 0.8
  occdist_scale: 0.01
  heading_lookahead: 0.325
  dwa: true

# Oscillation Prevention Parameters
  oscillation_reset_dist: 0.05

# Differential-drive robot configuration
  holonomic_robot: false
  max_vel_y: 0.0
  min_vel_y: 0.0
  acc_lim_y: 0.0
  vy_samples: 0

amcl_demo.launch:

<launch>
  <include file="$(find turtlebot_bringup)/launch/3dsensor.launch">
    <arg name="rgb_processing" value="false" />
    <arg name="depth_registration" value="false" />
    <arg name="depth_processing" value="false" />

    <arg name="scan_topic" value="/scan" />
  </include>

  <!-- Map server -->
  <arg name="map_file" default="$(find turtlebot_navigation)/maps/willow-2010-02-18-0.10.yaml"/>
  <node name="map_server" pkg="map_server" type="map_server" args="$(arg map_file ...
(more)
edit retag flag offensive reopen merge delete

Closed for the following reason duplicate question by kmb11
close date 2014-04-15 07:42:01

Comments

I think that your map_file:=map.yaml is careless miss. This isn't an true solution. is it? I mean the correct description is for example, map_file:= /tmp/map.yaml.

Ken_in_JAPAN gravatar imageKen_in_JAPAN ( 2014-04-09 20:26:12 -0500 )edit

Thank you for your reply, but "map.yaml" was just an example, I was using the command with the absolute path to the map.

kmb11 gravatar imagekmb11 ( 2014-04-10 04:30:27 -0500 )edit

I can't tell you a clear answer, because I have not tried the plugin yet. I think you should check a part of "waiting for result" in a source and It is a clue.

Ken_in_JAPAN gravatar imageKen_in_JAPAN ( 2014-04-10 05:13:43 -0500 )edit

You are working with the costmaps in move_base, right? Could you update your question with all the configuration files (yaml and launch) relating to move_base.

demmeln gravatar imagedemmeln ( 2014-04-10 23:46:43 -0500 )edit

I've added all the files I thought to be relevant, please let me know if there are any others. Also, I have noticed that sometimes the goals work if I reboot the laptop and robot, but not always.

kmb11 gravatar imagekmb11 ( 2014-04-11 07:00:19 -0500 )edit

It is move_base related question. please update the tags. So the navigation and move_base experts can see.

jihoonl gravatar imagejihoonl ( 2014-04-12 19:26:54 -0500 )edit

So do you still want this question answered, or are you pursuing a solution at the other question you linked to?

demmeln gravatar imagedemmeln ( 2014-04-15 07:24:32 -0500 )edit

This question incorrectly models my situation, I will therefore close it.

kmb11 gravatar imagekmb11 ( 2014-04-15 07:41:13 -0500 )edit