diff --git a/cfg/AckermannLocalPlanner.cfg b/cfg/AckermannLocalPlanner.cfg index 769eb125b3a08b516f6276e344a5e7da37712198..17772ce84b0bcfd98a64870f884ac682c79e2503 100755 --- a/cfg/AckermannLocalPlanner.cfg +++ b/cfg/AckermannLocalPlanner.cfg @@ -86,6 +86,7 @@ trajectory.add("min_steer_vel", double_t, 0, "minimum steer speed", trajectory.add("max_steer_acc", double_t, 0, "maximum steer acceleration", 0.36, 0, 5) trajectory.add("max_angular_vel", double_t, 0, "maximum angular speed", 0.3, 0, 20) trajectory.add("min_angular_vel", double_t, 0, "minimum angular speed", -0.3, -20, 0) +trajectory.add("max_curvature", double_t, 0, "Maximum allowed curvature for trajectory generation", 2.0, 0.5, 10.0) trajectory.add("trans_vel_samples", int_t, 0, "The number of samples to use when exploring the x velocity space", 3, 1) trajectory.add("steer_angle_samples", int_t, 0, "The number of samples to use when exploring the steer angle space", 10, 1) trajectory.add("angular_vel_samples", int_t, 0, "The number of samples to use when exploring the angular velocity space", 10, 1) diff --git a/src/ackermann_spline_generator.cpp b/src/ackermann_spline_generator.cpp index 668ba9d43986490bbd8257c2cc1a64d633c1bb6e..6a88e0218dc60d03df70e48d1b7843aa9759135e 100644 --- a/src/ackermann_spline_generator.cpp +++ b/src/ackermann_spline_generator.cpp @@ -192,7 +192,7 @@ bool AckermannSplineGenerator::nextTrajectory(base_local_planner::Trajectory &co if(fabs(curvature[i])>k_max) k_max=fabs(curvature[i]); next_sample_index_++; - if(k_max>2.0) + if(k_max>current_config_.max_curvature) return false; /* fill the ouput trajectory object */ double k_max_speed,min_max_speed,new_start_vel,new_max_vel;