0
$\begingroup$

Rosanswers logo

I have been going through this tutorial to use my own implementation of A star as the global planner. However, I want to go one step further. I have use gmapping to obtain a .pgm file of the map I will be using. Now, given a start point and a goal point, I not only want to compute the x,y coordiates of the path, but also find the velocities at each wheel to take me to the goal point, without using move_base. I know this is a solved problem but I need to do it this way for my project. Any help would be appreciated.


Originally posted by inani47 on ROS Answers with karma: 18 on 2018-04-08

Post score: 0


Original comments

Comment by stevejp on 2018-04-08:
Could you provide more details on what you want help with? Are you unsure on how to get started?

Comment by inani47 on 2018-04-08:
@stevejp Yes. I am a little confused. Is the first step implementing my global path planner as a plug in? If so, once I do that, how do i proceed to calculate the velocities on each wheel? and will the final step be just publishing these velocity commands on the correct topic?

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

Implementing the global planner plugin for move_base is a good first step. In the move_base / nav_core environment the local planner is responsible for calculating command velocities based on your current pose, the global plan, and local costmaps. There are several existing local planners which you can look at (e.g., DWA, TEB, EBand). Similar to how you've implemented your own global planner as a move_base plugin, you could implement your own local planner as a move_base plugin.

It can be overwhelming when you first start looking at move_base and how all of the components (i.e., global planner, local planner, etc.) interface. It would probably be beneficial to spend some time playing around with the built-in planners until you have a good feel for how everything fits together.


Originally posted by stevejp with karma: 929 on 2018-04-09

This answer was ACCEPTED on the original site

Post score: 0


Original comments

Comment by inani47 on 2018-04-09:
Wow. That does seem overwhelming. Is there any alternate (simpler) approach. Can I do this using simple publisher subscriber nodes where I just get the occupancy grid and do the differential calculations and publish velocities on the required topic?

Comment by gvdhoorn on 2018-04-09:
You could see whether move_base_flex can provide an alternative approach. It's the same navigation stack, but the implementation is different.

Comment by inani47 on 2018-04-09:
@stevejp sorry forgot to tag you in my comment.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.