This package is a Model Predictive Control based Local Planner for ROS Melodic.
It is a plugin to base_local_planner of the 2D ROS Navigation stack.
It wraps the library surajRathi/mpc_lib.
Forked from project-TARIV/mpc_local_planner to add documentation.
The package should be built within a catkin workspace. Dependencies are defined in package.xml.
The package has two steps of note.
- Converting ROS global path and costmap structures to polynomials in the local frame suitable for MPC.
- Invoking the
mpc_libMPC formulation.
frequency: Frequency at which points are sampled in the vehicles predicted trajectory, intreference/velocity: The target velocity for the vehicle, floatlimits/vel/low: Hard limit on velocity, floatlimits/vel/high: Hard limit on velocity, floatlimits/acc/low: Hard limit on acceleration, floatlimits/acc/high: Hard limit on acceleration, floatweights/cte: Cross track error weight, floatweights/etheta: Yaw error weight, floatweights/vel: Linear velocity error weight, floatweights/omega: Angular velocity error weight, floatweights/acc: Acceleration minimizing weight, floatweights/obs: Obstacle distance weight, float
Modified (bending) recursive shadow casting to get useful obstacle boundaries in the correct order.
38 outline points.
'@' is the robot.
'.' is empty space.
'=' is obstacle in the map.
'#' is an outline point.
. . . . . . . . . . = = = = = = = = = .
. . . . . . . . . V = = = = = = = = = .
. . . . . . . . . U = = = = = = = = = .
. . . . . . . . . T = = = = = = = = = .
. . . . . . . . . . S R Q = = = = = = .
. . . . . . . . . . . . P O N = = = . .
. . . . . . . . . . . . . . M L = . . .
. . . . . . . . . . . . . . . K J . . .
. . . . . . . . . . . . . . . . . . . .
. . . W X . . . . . . . . . . . . . . .
. . = = Y Z . . . . @ . . . . I = = . .
. . = = = [ . . . . . . . . . H = = = .
. . = = = \ . . . . . . . . F G = = . .
. . = = = ] . . . . . . . . E = = = . .
. . . = ^ . . . . . . . . . . D = . . .
. . . . . . . ` a . . . . . . . . . . .
. . . . . . _ = b . . . . . . . . . . .
. . . . . . = = c . f A B . . . . . . .
. . . . . . . . . . e = C . . . . . . .
. . . . . . . . . . d = = . . . . . . .An example of the path and obstacle boundaries represented as polynomials.
