Path points following
Hi everyone, I'm working on a 4 wheels mobile robot and I have to follow a path points (series of points on a path). So my question is there a ROS algorithm to do that?
ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
Hi everyone, I'm working on a 4 wheels mobile robot and I have to follow a path points (series of points on a path). So my question is there a ROS algorithm to do that?
I would suggest setting up a base global planner for the global path and teb local planner for the local one since teb local planner actually supports points.
See http://wiki.ros.org/teb_local_planner
take a look at the subscribed topics you'll find "via_points (nav_msgs/Path)" in the optimization parameters you can weight the local planner to follow the via points more.
Note: You'll need to set global path via point seperation to a negative number. Otherwise the planner will strictly follow the global path since it is supplying the via points now.
It should be fairly simple to implement that behavior.
EDIT:
I just thought about it again, if you run into timing problems between supplying the goal and the via points it might be an option to set everything from one node. Using the actionlib you can provide the goal and a simple publisher can publish your points. Then you can define precise timings and prevent a edgecase where you are supplying waypoints from the past.
Asked: 2020-12-21 07:38:28 -0600
Seen: 533 times
Last updated: Dec 22 '20
how to set my path time, and how can i show it in map? [closed]
Are there any viewers for ImageMarker?
constrain move_arm to orbits or hemispheres [closed]
How do I record multiple paths?
Publishers and Subscribers in ros
what path planning method does GMAPPING-based navigation use?
How to visualize a frame pose as a path
There are alot of algorithms to plan a path, and alot of tutorials/examples. I don't know what your configuration is but a goot starting point is 'move_base_simple/goal' to just move your robot to each point. (assuming your 'points' are known locations)