From 5b0e10ea33e89fb1c8132cf9014a3a927e93bd6f Mon Sep 17 00:00:00 2001 From: HaraldSchafer Date: Thu, 2 Dec 2021 23:56:02 -0800 Subject: [PATCH] Reaction buffer on follow distance (#23112) * Reaction time buffer * new ref --- selfdrive/controls/lib/longitudinal_mpc_lib/long_mpc.py | 8 +++++--- selfdrive/test/process_replay/ref_commit | 2 +- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/selfdrive/controls/lib/longitudinal_mpc_lib/long_mpc.py b/selfdrive/controls/lib/longitudinal_mpc_lib/long_mpc.py index 32dac71285..54d4b0be31 100644 --- a/selfdrive/controls/lib/longitudinal_mpc_lib/long_mpc.py +++ b/selfdrive/controls/lib/longitudinal_mpc_lib/long_mpc.py @@ -49,14 +49,16 @@ T_IDXS_LST = [index_function(idx, max_val=MAX_T, max_idx=N+1) for idx in range(N T_IDXS = np.array(T_IDXS_LST) T_DIFFS = np.diff(T_IDXS, prepend=[0.]) MIN_ACCEL = -3.5 -T_REACT = 1.45 +T_REACT = 0.5 +T_FOLLOW = 1.45 COMFORT_BRAKE = 2.0 +STOP_DISTANCE = 6.0 def get_stopped_equivalence_factor(v_lead): - return v_lead**2 / (2 * COMFORT_BRAKE) - T_REACT * v_lead + return v_lead**2 / (2 * COMFORT_BRAKE) - (T_FOLLOW - T_REACT) * v_lead def get_safe_obstacle_distance(v_ego): - return (v_ego*v_ego) / (2 * COMFORT_BRAKE) + 6.0 + return (v_ego*v_ego) / (2 * COMFORT_BRAKE) + T_REACT * v_ego + STOP_DISTANCE def desired_follow_distance(v_ego, v_lead): return get_safe_obstacle_distance(v_ego) - get_stopped_equivalence_factor(v_lead) diff --git a/selfdrive/test/process_replay/ref_commit b/selfdrive/test/process_replay/ref_commit index 914a17bdb1..e0187495ff 100644 --- a/selfdrive/test/process_replay/ref_commit +++ b/selfdrive/test/process_replay/ref_commit @@ -1 +1 @@ -fb4318e66ce98c9bc267b0778d9238265c1c5b17 \ No newline at end of file +6ab94cfcfe183a09e75e9f8b67a7ee2a2d3630df \ No newline at end of file