[ros-users] Navigation Stack with Stage 3.2.2 (C-turtle)

ian_wk i2rshuttle at gmail.com
Tue Sep 7 09:50:34 UTC 2010


Hi Eitan,

I have successfully converted and changed to using the navigation_stage
package. But the robot still tend to turn in cycle when reaching the goal
though sometime it will stop at the goal. 

Below is my config for the simulation. 
===============================================================

FOR STAGE
------------------------map.world format------------------------------
include "map.inc"
include "p3dx.inc"

# set the resolution of the underlying raytrace model in meters
resolution 0.02
# simulation timestep in milliseconds
interval_sim 100
# real-time interval between simulation updates in milliseconds  
interval_real 100  

# configure the GUI window
window
( 
	size [800 1000]	# in pixels 
	scale 20	# pixels per meter
	show_data 1	# 1=on 0=false	
)

# load an environment bitmap
floorplan
(
	name "worldmap"	
	bitmap "map.jpg" 
	size [28 52 2.6]
	pose [14 26 0 0]
)

# throw in a robot
p3dx ( pose [6 14 0 0] name "p3dx" color "blue")

--------------------------map.yaml-------------------------------------------
image: map.jpg
resolution: 0.05
origin: [0.000000, 0.000000, 0.000000]
negate: 0
occupied_thresh: 0.65
free_thresh: 0.196

FOR MOVE_BASE
--------------------------------------------amcl_node.xml-------------------------------------
<launch>
<node pkg="amcl" type="amcl" name="amcl" respawn="true">
  <remap from="scan" to="base_scan" />
  <!-- Publish scans from best pose at a max of 10 Hz -->
  
  
  
  
  
  
  
  
  
  
  
  <!-- translation std dev, m -->
  
  
  
  
  
  
  
  
  
  
  <!--  -->
  
  
  
  
  
  
  
  
  
  
  <!--  -->
</node>
</launch>

----------------------base_local_planner.yaml---------------------------------------------
#base_local_planner: "dwa_local_planner/DWAPlannerROS"
#
#DWAPlannerROS:
#  min_vel_x: -0.5
#  min_trans_vel: 0.1
#

TrajectoryPlannerROS:
  #Independent settings for the local costmap
  sim_time: 1.7
  sim_granularity: 0.025
  dwa: true
  vx_samples: 3
  vtheta_samples: 20
  max_vel_x: 1.25
  min_vel_x: 0.2
  max_rotational_vel: 1.0
  min_in_place_rotational_vel: 0.4
  xy_goal_tolerance: 0.1
  yaw_goal_tolerance: 0.15
  goal_distance_bias: 0.8
  path_distance_bias: 0.6
  occdist_scale: 0.5
  heading_lookahead: 0.325
  oscillation_reset_dist: 0.05
  holonomic_robot: false
  acc_lim_th: 0.55
  acc_lim_x: 0.55
  acc_lim_y: 0.55
  backup_vel: -.5

---------------------------------------costmap_common_params.yaml---------------------------
#START VOXEL STUFF
map_type: voxel
origin_z: 0.0
z_resolution: 0.2
z_voxels: 10
unknown_threshold: 9
mark_threshold: 0
#END VOXEL STUFF
transform_tolerance: 0.3
max_obstacle_height: 1.7
#footprint: [[-0.4, -0.4], [-0.4, 0.4], [0.4, 0.4], [0.52, 0.0], [0.4,
-0.4]]
#footprint: [[-0.2 0.12], [-0.2 -0.12], [-0.12 -0.2555], [0.12 -0.2555],
[0.2 -0.12], [0.2 0.12], [0.12 0.2555], [-0.12 0.2555]]
#foorprint: [[-0.12 0.2555], [0.12 0.2555], [0.2 0.12], [0.2 -0.12], [0.12
-0.2555], [-0.12 -0.2555], [-0.2 -0.12], [-0.2 0.12]]
footprint: [[-0.2555, -0.12],[-0.2555, 0.12],[-0.12, 0.2],[0.12, 0.2],
[0.2555, 0.12],[0.2555, -0.12],[0.12, -0.2],[-0.12, -0.2]]
#robot_radius: 0.46
footprint_padding: 0.01
inflation_radius: 0.25
cost_scaling_factor: 10.0
lethal_cost_threshold: 100
observation_sources: base_scan
base_scan: {data_type: LaserScan, expected_update_rate: 0.4,
  observation_persistence: 0.0, marking: true, clearing: true,
max_obstacle_height: 1.7, min_obstacle_height: 0.08, obstacle_range: 5.5,
raytrace_range: 6.0}

-----------------------------------------global_costmap_params.yaml------------------------------------
#Independent settings for the planner's costmap
global_costmap: 
  global_frame: /map
  robot_base_frame: base_link
  update_frequency: 5.0
  publish_frequency: 0.0
  static_map: true
  rolling_window: false

------------------------------------------local_costmap_params.yaml----------------------------------
local_costmap:
  publish_voxel_map: true
  global_frame: /map
  robot_base_frame: base_link
  update_frequency: 5.0
  publish_frequency: 2.0
  static_map: false
  rolling_window: true
  width: 27.355
  height: 52.56
  resolution: 0.05
  origin_x: 0.0
  origin_y: 0.0

-----------------------------------------move_base.xml-----------------------------------------------------
<launch>
<!-- 
  Example move_base configuration. Descriptions of parameters, as well as a
full list of all amcl parameters, can be found at
http://www.ros.org/wiki/move_base.
-->
  <node pkg="move_base" type="move_base" respawn="false"
name="move_base_node" output="screen">
    
    

    <rosparam file="$(find
simulation)/move_base_config/costmap_common_params.yaml" command="load"
ns="global_costmap" />
    <rosparam file="$(find
simulation)/move_base_config/costmap_common_params.yaml" command="load"
ns="local_costmap" />
    <rosparam file="$(find
simulation)/move_base_config/local_costmap_params.yaml" command="load" />
    <rosparam file="$(find
simulation)/move_base_config/global_costmap_params.yaml" command="load" />
    <rosparam file="$(find
simulation)/move_base_config/base_local_planner_params.yaml" command="load"
/>
  </node>
</launch>

--------------------------------------------------nav_view.xml--------------------------------------
<launch>
<!-- 
  Example nav_view configuration. Descriptions of parameters, as well as a
full list of all amcl parameters, can be found at
http://www.ros.org/wiki/nav_view.
-->
  <node name="nav_view" pkg="nav_view" type="nav_view" respawn="false">
    <remap from="goal" to="move_base_simple/goal" />
    <remap from="obstacles" to="move_base_node/local_costmap/obstacles" />
    <remap from="inflated_obstacles"
to="move_base_node/local_costmap/inflated_obstacles" />
    <remap from="global_plan" to="move_base_node/NavfnROS/plan" />
    <remap from="local_plan"
to="move_base_node/TrajectoryPlannerROS/local_plan" />
    <remap from="robot_footprint"
to="move_base_node/local_costmap/robot_footprint"/>
  </node>
</launch>

------------------------------------- MY LAUNCH FILE
--------------------------------------------
<launch>
  <master auto="start"/>
  
  <include file="$(find simulation)/move_base_config/move_base.xml"/>
  <node name="map_server" pkg="map_server" type="map_server" args="$(find
simulation)/stage_config/map.yaml" />
  <node pkg="stage" type="stageros" name="stageros" args="$(find
simulation)/stage_config/map.world" respawn="false" >
    
  </node>
  
  <!-- Starts the visualizer using rviz --> 
  <node name="rviz" pkg="rviz" type="rviz" respawn="false" output="screen"
args="-d $(find simulation)/rviz_config/rviz.vcg" /> 

  <include file="$(find simulation)/move_base_config/amcl_node.xml"/>  
  <include file="$(find simulation)/rviz_config/rviz.xml"/>
</launch>

===============================================================

I tried change the trajectory planner goal tolerance but still won't work.
Any suggestions and idea? Sorry for the long post. 

Thanks for helping. =D

Best Regards,
Ian_wk
-- 
View this message in context: http://ros-users.122217.n3.nabble.com/Navigation-Stack-with-Stage-3-2-2-C-turtle-tp1410716p1431686.html
Sent from the ROS-Users mailing list archive at Nabble.com.



More information about the ros-users mailing list