/waypoint_follower

Node that serves as a workaround to move_base not changing status when waypoint is succesfully reached

Primary LanguageC++

waypoint_follower

This node serves as a controller for the rest of our robot. It is a workaround to a move_base bug where there is never a response when a waypoint is successfully reached. It also serves as an interface between the ROS robot and the web control client, where the website publishes to the topics below to control navigation modes.

Subscriptions:

  • /start_navigation: When triggered, it starts popping waypoints from the queue; when triggered again, it cancels the current waypoint and stops navigation
  • /save_waypoint: gets the current pose of robot w.r.t the /map frame, and saves it to the waypoint queue
  • /initialpose: Saves clicked waypoint from rviz

Publishers:

  • /cancel_waypoint: Cancels current goal sent to move_base

TODO:

  • add publisher to RTABmap localization service to enable/disable localization mode

If you are not running with website, operate the following:

rosrun waypoint_follower driver

To save waypoints:

Use 'initial pose' function of rviz or rostopic pub /save_waypoint std_msgs/Empty

Start navigation:

rostopic pub /start_navigation std_msgs/Empty