Ask Your Question
1

set a path to move_base

asked 2014-07-28 09:21:04 -0600

Hi everyone, In order to do my own 3D navigation I would like to set a path to move_base.

I explain what i am doing:

  • I generate 3 2d map
  • Use each of these 3d map for generated a plan ( with make_plan)

But now i want to check if one path is good in each 2d maps.

So i was thinking to check this with the move_base but I find nothing to load a path. (I could maybe change the move_base code to subscribe to a topic and use the received path, but it sound complicated )

Is there a way to load a path in the move_base ? Or someone have an idea how could i do that?

thanks

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted
1

answered 2014-07-28 13:49:54 -0600

ahendrix gravatar image

updated 2014-07-28 13:52:08 -0600

Mike Phillips did some great work on this during his internship at Willow Garage, and published the software as a ROS package: http://wiki.ros.org/3d_navigation

The wiki page doesn't mention it, but I believe internally he's doing collision checks against several 2D maps as a shortcut to full 3D collision checking. The paper linked from the wiki page goes into much greater detail about this.

edit flag offensive delete link more

Comments

thank you for the link, but i am pretty new in ROS so I don't know how to break the package down. With which file should i start?

GuillaumeB gravatar imageGuillaumeB ( 2014-07-29 01:53:08 -0600 )edit

I'm not familiar with the code, so I can't give you any hints there. I would probably start by reading the paper, and then contact the authors directly if you have questions about their implementation.

ahendrix gravatar imageahendrix ( 2014-07-29 02:00:39 -0600 )edit
1

answered 2014-07-28 12:30:34 -0600

mateus03 gravatar image

Hi!

Assuming that you implemented a plugin of BaseGlobalPlanner to plan your paths, you can just publish the plan to topic and then you can see the results in rviz. You just need to do

ros::NodeHandle private_nh("~/" + name);   
plan_pub_ = private_nh.advertise<nav_msgs::Path>("plan", 1);

And then implement a method to fill a nav_msgs::Path msg and publish it.

edit flag offensive delete link more

Comments

thank you i will see how to write a plugin to BaseGlobalPlanner.

GuillaumeB gravatar imageGuillaumeB ( 2014-07-29 01:53:58 -0600 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2014-07-28 09:21:04 -0600

Seen: 605 times

Last updated: Jul 28 '14