Robotics StackExchange | Archived questions

amcl crashing when recovery alpha values are set

Hi,

I am trying to set up AMCL for localization on my simulation and it works fine as long as recoveryalphafast and recoveryalphaslow are both set to 0.0. When I set recoveryalphafast to 0.1 and recoveryalphaslow to 0.001, AMCL does not appear to work at all. /amcl_pose is in the topic list but all that is published to it is the initial pose, and I am simply not getting anything else out of it. Nothing is published to /particle cloud as well. When I move the robot, I get an error message (There are no error messages unless I try to move the robot).

[ERROR] [amcl-3]: process has died [pid 20497, exit code -11, cmd '/opt/ros/humble/lib/nav2amcl/amcl --ros-args -r _node:=amcl --params-file /home/nipuni/Projects/testrobot/install/testrobot/share/testrobot/config/amclparams.yaml']. [lifecyclemanager-1] [INFO] [1679536763.871037498] [lifecyclemanager_mapper]: Have not received a heartbeat from amcl. [lifecyclemanager-1] [ERROR] [1679536763.871075226] [lifecyclemanager_mapper]: CRITICAL FAILURE: SERVER amcl IS DOWN after not receiving a heartbeat for 4000 ms. Shutting down related nodes. [lifecyclemanager-1] [INFO] [1679536763.871087471] [lifecyclemanager_mapper]: Terminating bond timer... [lifecyclemanager-1] [INFO] [1679536763.871095805] [lifecyclemanager_mapper]: Resetting managed nodes... [lifecyclemanager-1] [INFO] [1679536763.871104201] [lifecyclemanager_mapper]: Deactivating amcl

The contents of the amcl_params.yaml file is given below:

    amcl:
  ros__parameters:
    alpha1: 0.2
    alpha2: 0.2
    alpha3: 0.2
    alpha4: 0.2
    alpha5: 0.2
    base_frame_id: "base_link"
    beam_skip_distance: 0.5
    beam_skip_error_threshold: 0.9
    beam_skip_threshold: 0.3
    do_beamskip: false
    global_frame_id: "map"
    lambda_short: 0.1
    laser_likelihood_max_dist: 2.0
    laser_max_range: 8.0
    laser_min_range: 0.3
    laser_model_type: "likelihood_field"
    max_beams: 360
    max_particles: 2000
    min_particles: 500
    odom_frame_id: "odom"
    pf_err: 0.05
    pf_z: 0.99
    recovery_alpha_fast: 0.1
    recovery_alpha_slow: 0.001
    resample_interval: 1
    robot_model_type: "nav2_amcl::DifferentialMotionModel"
    save_pose_rate: 0.5
    sigma_hit: 0.2
    tf_broadcast: true
    transform_tolerance: 1.0
    update_min_a: 0.2
    update_min_d: 0.25
    z_hit: 0.5
    z_max: 0.05
    z_rand: 0.5
    z_short: 0.05
    scan_topic: scan
    map_topic: map
    set_initial_pose: true
    always_reset_initial_pose: false
    first_map_only: false
    initial_pose:
      x: 0.0
      y: 0.0
      z: 0.0
      yaw: 0.0

I would appreciate any help with this.

Thanks!

Asked by ALNA_Perera on 2023-03-22 21:19:59 UTC

Comments

Answers