Skip to content

avt_341_local_planner_node

Chris Goodin edited this page Sep 10, 2021 · 5 revisions

Local Planner Node

The local planning algorithm is a spline-based planner for local path planning. The algorithm is based on "Dynamic path planning for autonomous driving on various roads with avoidance of static and moving obstacles" by Hu, Chen, Tang, Cao, and He.

The planning algorithm requires a road centerline to follow. In the off-road case, the road centerline is assumed to be the "global path" published by the global path node.

Subuscribed Topics

  • avt_341/odometry (nav_msgs/Odometry) Vehicle odometry from real-time-kinematic or other localization sensor.
  • avt_341/occupancy_grid (nav_msgs/OccupancyGrid) Grid showing obstacle locations.
  • avt_341/global_path (nav_msgs/Path) Global path defined by user as waypoints in East-North-Up coordinates.

Published Topics

  • avt_341/local_path (nav_msgs/Path) Local path with obstacle avoidance and safe steering properties.

Parameters

  • ~path_look_ahead (double, default: 15.0) Defines how far along the global path the planner should look for calculating obstacle avoidance and comfort planning.
  • ~vehicle_width (double, default: 3.0) The width of the vehicle in meters.
  • ~use_global_path (bool, default: false) If true, use the global path published by the global path node as the desired centerline. If false, use the user-defined input waypoints as the desired centerline.
  • ~num_paths (int, default: 31) The number of candidate paths to generate. More paths will result in a more optimal solution, but increase the computation time.
  • ~max_steer_angle (double, default: 0.5) The maximum desired steering angle of the vehicle, in radians.
  • ~output_path_step (double, default: 0.5) The spacing between points in the output path, in meters.
  • ~path_integration_step (double, default: 0.35) The discretization step along the global path. Lower values will give more accurate calculations but be slower.
  • ~dilation_factor (int, default: 0) The number of cells to expand around each obstacle. Provides a safety buffer around obstacles.
  • ~trim_path (bool, default: false) Reduce the length of the global path to only include points near the vehicle.
  • ~display (bool, default: false) Display the map and calculated paths in an Xwindow.
  • ~rate (double, default: 50.0) The rate in Hz at which the calculation will run.
  • ~w_c (double, default: 0.2) The "comfort" weight for the path cost.
  • ~w_s (double, default: 0.2) The "static safety" weight for the path cost.
  • ~w_d (double, default: 0.2) The "dynamic safety" weight for the path cost.
  • ~w_r (double, default: 0.4) The "path deviation" weight for the path cost.