Robot is rotating at one place in navigation stack.
Hello Everyone,
I'm using ROS Noetic and I have completed Odometry test as per the guidelines given in navigation tuning guide. My Lidar laser data is static with both translational as well as in place rotational motion. However when I'm performing navigation stack 2D pose estimate and 2D Nav Goal so my robot continuously rotates at same place rather than moving forward or backward etc. I have check rostopic echo /cmd_vel and there i see angular velocity is publishing to the move_base in autonomous navigation. Kindly help me regarding this issue. Here is my .yaml files:
base_local_planner:
TrajectoryPlannerROS:
# for details see: http://www.ros.org/wiki/base_local_planner
odom_topic: odom
max_vel_x: 0.15
min_vel_x: 0.10
max_rotational_vel: 0.1 # 0.8 rad/sec = 5.7 degree/sec ,0.02,0.3,0.05,0.05
min_in_place_rotational_vel: 0.001
acc_lim_th: 0.02
acc_lim_x: 0.05
acc_lim_y: 0.05
holonomic_robot: false
# goal tolerance parameters
yaw_goal_tolerance: 0.4 # 0.1 means 5.7 degrees 0.4 = yaw, 0.1 = xy
xy_goal_tolerance: 0.1
latch_xy_goal_tolerance: false
# Forward Simulation Parameters
sim_time: 1 # 1 ,The amount of time to forward-simulate trajectories in seconds
sim_granularity: 0.025 # The step size, in meters, to take between points on a given trajectory
angular_sim_granularity: 0.01 # The step size, in radians, to take between angular samples on a given trajectory. 0.01
vx_samples: 40 # The number of samples to use when exploring the x velocity space 10
vtheta_samples: 20 # The number of samples to use when exploring the theta velocity space 20
controller_frequency: 10 # The frequency at which this controller will be called in Hz
# Trajectory Scoring Parameters
meter_scoring: true # If true, distances are expressed in meters; otherwise grid cells
path_distance_bias: 1.0 # The weighting for how much the controller should stay close to the path it was given
goal_distance_bias: 0.8 # 0.8 The weighting for how much the controller should attempt to reach its local goal, also controls speed
occdist_scale: 0.01 # The weighting for how much the controller should attempt to avoid obstacles
# occdist_scale * (maximum obstacle cost along the trajectory in obstacle cost (0-254))
heading_lookahead: 0.325 # How far to look ahead in meters when scoring different in-place-rotation trajectories
heading_scoring: false
oscillation_reset_dist: 0.05 # How far the robot must travel in meters before oscillation flags are reset
publish_cost_grid: true
dwa: true
Dwa_local_planner_params.yaml
DWAPlannerROS:
# for details see: https://wiki.ros.org/dwa_local_planner
odom_topic: odom
# Robot Configuration Parameters
max_vel_x: 0.20
min_vel_x: 0.10
max_vel_y: 0.0 # 0 for non-holonomic robot max_rot_vel 1.6, min_rot_vel 0.2, acc_lim_theta 3.2
min_vel_y: 0.0 # 0 for non-holonomic robot
# The velocity when robot is moving in a straight line
max_trans_vel: 0.15
min_trans_vel: 0.10
max_rot_vel: 0.0
min_rot_vel: 0.0
acc_lim_x: 1.0
acc_lim_y: 0.0
acc_lim_theta: 0.2
# Goal Tolerance Parametes
xy_goal_tolerance: 0.1
yaw_goal_tolerance: 0.17
latch_xy_goal_tolerance: false
# Forward Simulation Parameters
sim_time: 3.0 # The amount of time to forward-simulate trajectories in seconds
sim_granularity: 0.025 # The step size, in meters, to take between points on ...
I sense that it may be spinning in recovery, is the Plan being made?Checking that the Plan is not obstructed or otherwise impassable may reveal something.
http://wiki.ros.org/cn/navigation/Tut...
Thankyou miura for your answer. I found the problem was with the arduino code. Now it's working absolutely fine.
Regards Suraj
Congratulations to. If you don't mind, I would like you to describe the cause of the problem and how to deal with it in the Answer. It may help the next person who encounters the same challenge.