The velocity planner is designed to take in fixed global waypoints from a map, and the current world state (vehicle location, detected obstacles, detected traffic signals) and alter the velocities of the waypoints as required.
Yellow cubes: global waypoints, Purple circle: current pose, Green/red circles: local planned waypoints
- Ubuntu 20.04
- ROS2 Foxy Fitzroy
- mcav_interfaces
- A colcon workspace (assumed to be at
~/colcon_ws
). See the Creating a Workspace tutorial
- Go to the
src
directory:cd ~/colcon_ws/src
- Clone the source code:
git clone
- Go to the root of the workspace:
cd ~/colcon_ws
- Build:
colcon build --symlink-install --packages-up-to velocity_planner
- current location (
geometry_msgs/Pose
on topic/planner/current_pose
) - global waypoints (
mcav_interfaces/msg/WaypointArray
on topic/planner/global_waypoints
)
- Array of upcoming waypoints beginning at the point closest to the vehicle (
mcav_interfaces/msg/WaypointArray
on topic/planner/local_waypoints
)
cd ~/colcon_ws && . install/setup.bash
ros2 launch velocity_planner velocity_planner.launch.py
ros2 run velocity_planner waypoint_visualiser
cd velocity_planner/ && rviz2 -d planner.rviz
. install/setup.bash
ros2 run velocity_planner fake_waypoint_publisher
. install/setup.bash
ros2 run velocity_planner waypoint_reader town01_small_waypoints.csv
Shows planner stopping for a detected object