Turtlebot 3 Navigation with Waypoints
I have Turtlebot 3 Waffle Pi, and I have grids in my environment. I want to move my robot to the grid by grid, and diagonal movements are not allowed. To solve the problem, I calculate the coordinates of the center points of each grid, and when I need to move the robot, I send it to these points by calling a new navigation package. I use TEB Local Planner as the local planner. Do you know a more convenient way to do this? In fact, I desire to give start and goal configurations with these configurations of waypoints, and planners do the rest.
I use ROS 1 - Kinetic Kame Turtlebot 3 Waffle Pi Ubuntu 16.04
Asked by batini on 2021-03-18 17:41:43 UTC
Answers
If you upgrade to navigation2, things could get more convenient for you. There is a dedicated package named nav2_waypoint_follower
, which employs an action server that accepts way points and follow them consecutively.
The action definition goes as;
#goal definition
geometry_msgs/PoseStamped[] poses
---
#result definition
int32[] missed_waypoints
---
#feedback
uint32 current_waypoint
as you can see, it is possible to feed this server with an vector of poses(aka your waypoints). Lastly see an example here on how you can create a client to this action
Asked by Fetullah Atas on 2021-03-18 21:42:08 UTC
Comments
Thank you, but to upgrade to navigation2, I have to upgrade my whole system to ROS2, right? I am not sure if I really want to do it. Is there a way to do with ROS 1?
Asked by batini on 2021-03-19 07:58:46 UTC
thats right you will need to install ROS2 and every component will be based on ROS2, not sure what are your goals but if it is a long term project I strongly will suggest you to do so , better earlier. But if it is a school project or a demo application you may look a way to do with your current version
Asked by Fetullah Atas on 2021-03-28 21:07:48 UTC
Comments