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

What should I do to increase my navigation precision

asked 2021-11-02 05:17:32 -0500

BlueSkeptical gravatar image

Hi guys, I'm struggling to understand how I can increase the precision in reaching a goal position. I'm moving a MIR100 simulation with this package https://github.com/mintar/mir_robot and I need a certain amount of precision in reaching a goal position. I've tried all can found online but probably I'm missing something...

I tried to increase the local costmap resolution with rqt_reconfigure and the MIR starts moving but, near the goal position, it gives me this error:

terminate called after throwing an instance of 'std::bad_alloc'
  what():  std::bad_alloc

I tried using different primitive file, such as unicycle_highcost_2cm.mprim in the repo, but it gives me this error:

[ INFO] [1635846411.439455111, 1323.215000000]: Name is SBPLLatticePlanner
terminate called after throwing an instance of 'SBPL_Exception'
  what():  ERROR: failed to read in motion primitive file

even if, as someone wrote here, i set the global costmap resolutions to 0.02 and even if, in this issue here, my file doesn't start with a UTF-8 byte order mark. I miss the goal up to 20/30cm, usually 10cm almost every time. What am I missing?

edit retag flag offensive close merge delete

Comments

Goal precision is determined by the local planner parameters for example in DWA you can adjust the goal tolerance parameters which are yaw_goal_tolerance , xy_goal_tolerance. You can see their default values in the wiki and lower it if you want your robot to stop at the goal as close as possible

rappy gravatar image rappy  ( 2021-11-02 05:40:01 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
1

answered 2021-11-02 08:01:29 -0500

Dragonslayer gravatar image

updated 2021-11-02 08:02:14 -0500

In the params of the local planners you linked

  • yaw_goal_tolerance: 0.03 #Means 0.03 radian
  • xy_goal_tolerance: 0.08 #Means 8 Centimeters

It seems your ca 10cm goal tolerance is expected. Be aware that for docking and other high precision positioning, many people use additional functionality. example roomba docking

edit flag offensive delete link more

Question Tools

1 follower

Stats

Asked: 2021-11-02 05:17:32 -0500

Seen: 211 times

Last updated: Nov 02 '21