tu-darmstadt-ros-pkg / hector_navigation

hector_navigation provides packages related to navigation of unmanned vehicles in USAR environments.
125 stars 90 forks source link

zigzag path and path smoother issue #30

Closed robbiedood closed 3 years ago

robbiedood commented 3 years ago

Dear hector_navigation friends,

It's great to successfully bring up hector_navigation to perform frontier exploration. The new challenge is that we got unsmooth path planning (zigzag path), which is not very efficient. We were wondering if any path smoother could be utilized in the package.

Hope to hear your expertise on the issue.

Thanks, -- Luke

Martin-Oehler commented 3 years ago

Our vehicle_controller uses path smoothing.

robbiedood commented 3 years ago

I am getting closer but found two issues in the source code of hector_exploration_planner.cpp.

In the line 867 and 874, there are two "if" statements, which can not be executed forever. (because they are fed by 'false'). In the case of line 867, it involves an important input argument 'start', and implies that 'start' never be used in the module of doExploration.

We were wondering if these "if" statements are originally working with the input argument useAnglePenalty. But for some reasons the feature is deprecated.

Hope to hear your expertise.

@StefanFabian

StefanFabian commented 3 years ago

If you check the git blame for these lines you can find this discussion where the reasons why this feature was disabled are detailed and a cleaner implementation of the exploration functionality is linked.

robbiedood commented 3 years ago

Problem solved after incorporating a path smoothing based on ps3d of vehicle_controller.

Thank you!