You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It is necessary to plan the braking curve when parking. The current PID is adjusted according to the speed and position, which does not conform to human braking habits. There will be slipping, excessive braking, etc.
When parking, I suggest using the following acceleration curve, and the control module considers braking according to the acceleration.
--------
/
/
-----
Current implementation
For now they use a fix in control module(modules\control\controller\lon_controller.cc), but I don't think it’s very elegant
// At near-stop stage, replace the brake control command with the standstill
// acceleration if the former is even softer than the latter
if ((trajectory_message_->trajectory_type() ==
apollo::planning::ADCTrajectory::NORMAL) &&
((std::fabs(debug->preview_acceleration_reference()) <=
control_conf_->max_acceleration_when_stopped() &&
std::fabs(debug->preview_speed_reference()) <=
vehicle_param_.max_abs_speed_when_stopped()) ||
std::abs(debug->path_remain()) <
control_conf_->max_path_remain_when_stopped())) {
acceleration_cmd =
(chassis->gear_location() == canbus::Chassis::GEAR_REVERSE)
? std::max(acceleration_cmd,
-lon_controller_conf.standstill_acceleration())
: std::min(acceleration_cmd,
lon_controller_conf.standstill_acceleration());
ADEBUG << "Stop location reached";
debug->set_is_full_stop(true);
}
The text was updated successfully, but these errors were encountered:
It is necessary to plan the braking curve when parking. The current PID is adjusted according to the speed and position, which does not conform to human braking habits. There will be slipping, excessive braking, etc.
When parking, I suggest using the following acceleration curve, and the control module considers braking according to the acceleration.
Current implementation
For now they use a fix in control module(modules\control\controller\lon_controller.cc), but I don't think it’s very elegant
The text was updated successfully, but these errors were encountered: