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

[navigation stack] How to Navigate using User-defined path ?

asked 2016-02-24 12:59:05 -0600

Hi guys ,

Since i'm working on the Robot Project which using the navigation stack

, The Robot Can Travel based on the shortest path.

But, What if i want to define the static path to the robot what should i do?

How can i define the Path of the robot in the map .

Example Explanation :

Firstly , Robot is trying to localize itself .

When it can already locate itself , Find the Nearest Checkpoint or User-defined Path .

After that , it tries to get in the path and Follow it until the checkpoint which it the nearest to the goal is reached.

thanks , Tew

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted

answered 2016-03-25 09:08:33 -0600

i've found the solution.

i must implement my own planner . For Example , i use Simple Navigation Goal (From Tutorial) and Mark a lot of points in a list manually (you may need to find the x,y,4 values of quaternian - memmorized it) .

Then Make the robot check the location compared to the Points In List (Waypoints) , which one is the nearest depends on the algorithm you 've chosen .

Choose the list (depends on the goal you want to go) and execute the navigation on those points.

The Short Answer is You need to implement it by yourself with help of navigation goal.

edit flag offensive delete link more



But this would mean that the robot is going to stop at each of these waypoints, how can I make it move through these smoothly?

Amogh Gupta gravatar image Amogh Gupta  ( 2017-09-03 13:09:13 -0600 )edit

if you want to make robot follow the path i think that you should implement global planner which create path according to static line (maybe create a graph of point to make the robot follow like line tracking - then create path by the edges) like @al-dev mentioned below

C3MX gravatar image C3MX  ( 2017-12-20 03:27:53 -0600 )edit

If you want it to move smoothly and not stop at each goal, subscribe to the pose of the robot and calculate the distance to the goal. Once the distance is small (you decide how close to get), you send the next goal. That way the robot won't stop at each goal.

liambroek gravatar image liambroek  ( 2021-02-04 07:20:25 -0600 )edit

answered 2016-03-28 12:20:35 -0600

al-dev gravatar image

Note that if you want to keep it simple, you don't actually need to implement another 'planner' in the sense of building a planner plugin for move_base. What you need is a node that simply maintains a queue of goals (your waypoints) which you could provide via a topic or service, and sends them successively to move_base (see this tutorial) after each one is completed.

edit flag offensive delete link more


But the move_base necessarily requires a global planner. It is not possible to simply give goal and using /odom data the robot navigates. Or is it possible?

shubhamv gravatar image shubhamv  ( 2019-04-09 02:53:03 -0600 )edit

Question Tools



Asked: 2016-02-24 12:59:05 -0600

Seen: 2,366 times

Last updated: Mar 28 '16