AMCL with robot_pose_ekf

asked 2015-07-22 03:18:52 -0600

osmancns gravatar image

updated 2015-07-22 03:22:22 -0600

I have a map that ı used gmapping. But now ı need to use AMCL package. My AMCL is working but result is so bad. I am using robot_pose_ekf ( odom_combined --> base_footprint). you think is there a problem this combine. I use 2d pose estimate button for inital pose.

my lidar is RPlidar .( 5 hz, 6 meters range)

my odom_frame_id : odom_combined and base_frame_id : base_footprint

what can I do on AMCL parameters for a good result please help me...

this is my AMCL result:

this is my tf trees:

this is my AMCL parameters :

  <arg name="use_map_topic"   default="true"/>
  <arg name="initial_pose_x"  default="0.0"/>
  <arg name="initial_pose_y"  default="0.0"/>
  <arg name="initial_pose_a"  default="0.0"/>

<node pkg="amcl" type="amcl" name="amcl" args="scan:=scan2" output="screen">
<!-- Publish scans from best pose at a max of 10 Hz -->

<param name="odom_frame_id" value="odom_combined"/>
<param name="base_frame_id" value="base_footprint"/>
<param name="global_frame_id" value="map"/>
<param name="odom_model_type" value="diff"/>

<param name="transform_tolerance" value="0.5" />
<param name="gui_publish_rate" value="5.0"/>
<param name="laser_max_beams" value="30"/>
<param name="min_particles" value="100"/>
<param name="max_particles" value="4000"/>
<param name="kld_err" value="0.05"/>
<param name="kld_z" value="0.99"/>
<param name="odom_alpha1" value="0.2"/>
<param name="odom_alpha2" value="0.2"/>
<!-- translation std dev, m -->
<param name="odom_alpha3" value="0.2"/>
<param name="odom_alpha4" value="0.2"/>
<param name="odom_alpha5" value="0.2"/>
<param name="laser_max_range" value="6"/>
<param name="laser_z_hit" value="0.95"/>
<param name="laser_z_short" value="0.1"/>
<param name="laser_z_max" value="0.05"/>
<param name="laser_z_rand" value="0.05"/>
<param name="laser_sigma_hit" value="0.2"/>
<param name="laser_lambda_short" value="0.1"/>
<param name="laser_lambda_short" value="0.1"/>
<param name="laser_model_type" value="likelihood_field"/>
<!-- <param name="laser_model_type" value="beam"/> -->
<param name="laser_likelihood_max_dist" value="2.0"/>
<param name="update_min_d" value="0.2"/>
<param name="update_min_a" value="0.5"/>

<param name="resample_interval" value="2"/>
<param name="transform_tolerance" value="0.1"/>
<param name="recovery_alpha_slow" value="0.0"/>
<param name="recovery_alpha_fast" value="0.0"/>

<param name="initial_pose_x" value="$(arg initial_pose_x)"/>
<param name="initial_pose_y" value="$(arg initial_pose_y)"/>
<param name="initial_pose_a" value="$(arg initial_pose_a)"/>
<param name="use_map_topic" value="$(arg use_map_topic)"/>

edit retag flag offensive close merge delete


have you ever run AMCL with robot_pose_ekf successfully?

fj138696 gravatar image fj138696  ( 2017-07-19 20:19:49 -0600 )edit