ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

The publish frequency of /amcl_pose in navigation amcl package is too low

asked 2017-03-04 22:35:10 -0500

Yuxi gravatar image

Hi,I'm just starting to use amcl package, but I found that the publish frequency of /amcl_pose is too low ,the frequency of /scan is about 25HZ, but when I run "rostopic hz /amcl_pose" in terminal to check its frequency,I found that it is only about 1 hz or 2hz, is it a bug of amcl or there's something wrong with my parameters? This is my launch file:

<?xml version="1.0"?>
<param name="use_sim_time" value="true"/>
<node pkg="amcl" type="amcl" name="amcl" output="screen"/>
<node pkg="tf" type="static_transform_publisher" name="map_nav_broadcaster" args="0 0 0 0 0 0 /base_link /laser 100"> 
<!-- Publish scans from best pose at a max of 10 Hz -->
<param name="use_map_topic" value="true"/>
<param name="odom_model_type" value="diff"/>
<param name="odom_alpha5" value="0.1"/>
<param name="transform_tolerance" value="0.2" />
<param name="gui_publish_rate" value="10.0"/>
<param name="laser_max_beams" value="30"/>
<param name="min_particles" value="500"/>
<param name="max_particles" value="5000"/>
<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.8"/>
<param name="odom_alpha4" value="0.2"/>
<param name="laser_z_hit" value="0.5"/>
<param name="laser_z_short" value="0.05"/>
<param name="laser_z_max" value="0.05"/>
<param name="laser_z_rand" value="0.5"/>
<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="odom_frame_id" value="odom"/>
<param name="resample_interval" value="1"/>
<param name="transform_tolerance" value="0.1"/>
<param name="recovery_alpha_slow" value="0.0"/>
<param name="recovery_alpha_fast" value="0.0"/>

If anyone knows about this, please to tell me how to fix it, thx a lot. </launch>

edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted

answered 2017-03-08 04:29:04 -0500

Procópio gravatar image

The AMCL node will skip scans until it moves/rotates more than the distances/angles defined by these parameters:

<param name="update_min_d" value="0.2"/>
<param name="update_min_a" value="0.5"/>

If you set these parameters to a negative value, the filter should update and publish the /amcl_pose topic at your /scan frequency.

edit flag offensive delete link more

Question Tools



Asked: 2017-03-04 22:35:10 -0500

Seen: 3,352 times

Last updated: Mar 08 '17