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

Global Planner Parameters in Navigation

asked 2014-09-29 17:51:46 -0600

ROSCMBOT gravatar image

updated 2014-09-29 20:34:01 -0600

Hello,

I was wondering what the parameters below are exactly doing in the global planner (Reference Tutorial). The description is not very clear to me. I tried different values for the parameters in my yaml file, but it didn't seem to be affecting the global planner:

   ~<name>/planner_window_x (double, default: 0.0)

         Specifies the x size of an optional window to restrict the planner to. This can be useful for restricting NavFn to work in a small window of a large costmap.

   ~<name>/planner_window_y (double, default: 0.0)

      Specifies the y size of an optional window to restrict the planner to. This can be useful for restricting NavFn to work in a small window of a large costmap.

and I was wondering if they are visualizable in RViz?

Here is my yaml file

NavfnROS:
   allow_unknown: false
   planner_window_x: 0.0
   planner_window_y: 0.0
   default_tolerance: 0.05
   visualize_potential: true # false
   planner_costmap_publish_frequency: 0.2

Thanks

edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted
2

answered 2014-09-30 00:56:40 -0600

I am afraid those parameters are unused. If you download the source code of the navigation stack and do grep -R planner_window * you will get this:

global_planner/src/planner_core.cpp:        private_nh.param("planner_window_x", planner_window_x_, 0.0);
global_planner/src/planner_core.cpp:        private_nh.param("planner_window_y", planner_window_y_, 0.0);
global_planner/include/global_planner/planner_core.h:        double planner_window_x_, planner_window_y_, default_tolerance_;
navfn/src/navfn_ros.cpp:      private_nh.param("planner_window_x", planner_window_x_, 0.0);
navfn/src/navfn_ros.cpp:      private_nh.param("planner_window_y", planner_window_y_, 0.0);
navfn/include/navfn/navfn_ros.h:      double planner_window_x_, planner_window_y_, default_tolerance_;

Which makes me think that they are declared and initialised, but never used. Maybe it is just part of the API and the current global planner implementation does not use it, or may be it is just legacy code that will be removed at some point.

Might be a good idea to open an issue on github

edit flag offensive delete link more

Comments

am I wrong or actually those commands are just specifying the default parameters in case none are given?

Procópio gravatar image Procópio  ( 2014-09-30 09:01:17 -0600 )edit

Yeah, that looks to be the case. Please open up an issue. Was this a behavior you were looking to get, or just curious what the parameters did?

David Lu gravatar image David Lu  ( 2014-09-30 09:47:09 -0600 )edit

Thanks All. The parameters looked like to be performing a special case of the feature I am trying to implement (Explained Here). So yes I was looking to see how they behave.

ROSCMBOT gravatar image ROSCMBOT  ( 2014-09-30 10:18:04 -0600 )edit

@Procópio Silveira Stein, yes, those commands are just specifying the default parameters in case none are given, but after that they are not used anywhere else in the code.

Martin Peris gravatar image Martin Peris  ( 2014-09-30 21:17:06 -0600 )edit

Question Tools

1 follower

Stats

Asked: 2014-09-29 17:51:46 -0600

Seen: 1,791 times

Last updated: Sep 30 '14