Robotics StackExchange | Archived questions

Robot Unable to track path - (tf2 empty frame id warning)

I am currently running a differential drive setup robot configured to run on GMapping, custom made odometry publisher and navigation stack(movebase, costmap2d). I have the following errors and warnings with the param settings given below:

  1. I get the following error when giving a goal on the map (map and current position are perfect ).( I created a map from recording /scan topic on a bag file)

[ WARN] [1487352631.099260113]: MessageFilter [target=map ]: Discarding message from [/move_base] due to empty frame_id. This message will only print once.

[ WARN] [1487352631.099750851]: Invalid argument passed to canTransform argument source_frame in tf2 frame_ids cannot be empty

  1. movebase linear and angular velocities aren't getting tracked. The robot just weirdly rotates at full speed and performs in place rotation, and goes away from the goal given. BUT , using keyboard to publish cmdvel works and the robot moves around perfectly. Which suggests the move_base isn't configured properly.

  2. Sometimes, the above two problems don't come up but the robot veers away just as it reaches the goal at a high speed(away from the goal).

The robot has a square base with motors kept at either centres of sides of square with a castor wheel at center.

My setup files are:

  TrajectoryPlannerROS:
      acc_lim_x: 0.09
      acc_lim_y: 0.0
      acc_lim_theta: .05
      max_vel_x: 0.6
      min_vel_x: 0.3
      max_vel_theta: 0.2
      min_vel_theta: 0.1
      min_in_place_vel_theta: 0.2
      holonomic_robot: false
      yaw_goal_tolerance: .2
      xy_goal_tolerance: .2
      sim_time: 1.0
      vx_samples: 12
      meter_scoring: true
      pdist_scale: 15
      heading_lookahead: 0.325
      heading_scoring: true
      dwa: true
      global_frame_id: map



     global_costmap:
          global_frame: /map
          robot_base_frame: /base_link
          update_frequency: 1.0 #before: 5.0
          publish_frequency: 0.5 #before 0.5
          static_map: true
          transform_tolerance: 0.5

    local_costmap:
      global_frame: /map
      robot_base_frame: /base_link
      update_frequency: 1.0 #before 5.0
      publish_frequency: 2.0 #before 2.0
      static_map: false
      rolling_window: true
      width: 5
      height: 5
      resolution: 0.025 #before 0.05
      transform_tolerance: 0.5

common_costmap:
    obstacle_range: 2.5
    raytrace_range: 3.0
    footprint: [[0.15, 0.15], [-0.15, 0.15], [-0.15, -0.15], [0.15, -0.15]]
    inflation_radius: 0.15
    transform_tolerance: 0.13
    meter_scoring: true
    observation_sources: scan
    scan:
      data_type: LaserScan
      topic: scan
      marking: true
      clearing: true
    map_type: costmap

move_base_params
    shutdown_costmaps: false
    controller_frequency: 5.0 #before 5.0
    controller_patience: 15
    planner_frequency: 5.0
    planner_patience: 5.0
    oscillation_timeout: 10.0
    oscillation_distance: 0.2
    conservative_reset_dist: 0.10 #distance from an obstacle at which it will unstuck itself
    recovery_behavior_enabled: false
    clearing_rotation_allowed: false

Asked by kartikmadhira1 on 2017-02-17 13:23:22 UTC

Comments

Answers