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

Implementation of gloabal path planner for turtlebot

asked 2018-04-08 16:53:19 -0500

inani47 gravatar image

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.

edit retag flag offensive close merge delete

Comments

Could you provide more details on what you want help with? Are you unsure on how to get started?

stevejp gravatar image stevejp  ( 2018-04-08 17:45:12 -0500 )edit

@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?

inani47 gravatar image inani47  ( 2018-04-08 17:51:38 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
0

answered 2018-04-09 07:54:00 -0500

stevejp gravatar image

updated 2018-04-09 07:54:18 -0500

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.

edit flag offensive delete link more

Comments

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?

inani47 gravatar image inani47  ( 2018-04-09 08:47:51 -0500 )edit

You could see whether move_base_flex can provide an alternative approach. It's the same navigation stack, but the implementation is different.

gvdhoorn gravatar image gvdhoorn  ( 2018-04-09 08:53:09 -0500 )edit

@stevejp sorry forgot to tag you in my comment.

inani47 gravatar image inani47  ( 2018-04-09 11:30:27 -0500 )edit

Question Tools

2 followers

Stats

Asked: 2018-04-08 16:53:19 -0500

Seen: 388 times

Last updated: Apr 09 '18