From f7d79c613e2a1b6ae07e1d3255c378fa0ddb45e5 Mon Sep 17 00:00:00 2001 From: firestar5683 <168790843+firestar5683@users.noreply.github.com> Date: Sun, 3 May 2026 00:15:15 -0500 Subject: [PATCH] honda --- selfdrive/controls/lib/latcontrol_pid.py | 10 +++++----- selfdrive/controls/tests/test_latcontrol.py | 3 ++- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/selfdrive/controls/lib/latcontrol_pid.py b/selfdrive/controls/lib/latcontrol_pid.py index 4cdfaf703..14e9b129b 100644 --- a/selfdrive/controls/lib/latcontrol_pid.py +++ b/selfdrive/controls/lib/latcontrol_pid.py @@ -15,13 +15,13 @@ def civic_bosch_modified_lateral_testing_ground_active() -> bool: def get_civic_bosch_modified_pid_output_scale(desired_angle_deg: float, desired_angle_delta_deg: float, v_ego: float) -> float: abs_angle = abs(desired_angle_deg) speed_weight = min(max((v_ego - 4.0) / 10.0, 0.0), 1.0) - center_speed_weight = 0.60 + (0.40 * speed_weight) - center_weight = min(max((14.0 - abs_angle) / 14.0, 0.0), 1.0) - angle_weight = min(max((abs_angle - 14.0) / 14.0, 0.0), 1.0) + center_speed_weight = 0.65 + (0.35 * speed_weight) + center_weight = min(max((16.0 - abs_angle) / 16.0, 0.0), 1.0) + angle_weight = min(max((abs_angle - 16.0) / 12.0, 0.0), 1.0) phase = desired_angle_deg * desired_angle_delta_deg is_left = desired_angle_deg > 0.0 - center_taper = 0.26 + center_taper = 0.30 base_scale = 0.10 if is_left else 0.12 turn_in_scale = 0.10 if is_left else 0.14 unwind_scale = 0.14 if is_left else 0.20 @@ -33,7 +33,7 @@ def get_civic_bosch_modified_pid_output_scale(desired_angle_deg: float, desired_ elif phase < -0.2: scale -= speed_weight * angle_weight * unwind_scale - return max(scale, 0.78) + return max(scale, 0.74) class LatControlPID(LatControl): diff --git a/selfdrive/controls/tests/test_latcontrol.py b/selfdrive/controls/tests/test_latcontrol.py index 811a2bf3a..c48248db5 100644 --- a/selfdrive/controls/tests/test_latcontrol.py +++ b/selfdrive/controls/tests/test_latcontrol.py @@ -384,8 +384,9 @@ class TestLatControl: assert get_civic_bosch_modified_pid_output_scale(8.0, 0.0, 12.0) < 1.0 assert get_civic_bosch_modified_pid_output_scale(10.0, 0.0, 12.0) < 1.0 assert get_civic_bosch_modified_pid_output_scale(12.0, 0.0, 12.0) < 1.0 + assert get_civic_bosch_modified_pid_output_scale(14.0, 0.0, 12.0) < 1.0 assert get_civic_bosch_modified_pid_output_scale(0.0, 0.0, 6.0) < 0.9 - assert get_civic_bosch_modified_pid_output_scale(14.0, 0.0, 12.0) > get_civic_bosch_modified_pid_output_scale(8.0, 0.0, 12.0) + assert get_civic_bosch_modified_pid_output_scale(16.0, 0.0, 12.0) > get_civic_bosch_modified_pid_output_scale(8.0, 0.0, 12.0) assert get_civic_bosch_modified_pid_output_scale(20.0, 0.5, 12.0) > get_civic_bosch_modified_pid_output_scale(20.0, 0.0, 12.0) assert get_civic_bosch_modified_pid_output_scale(-20.0, -0.5, 12.0) > get_civic_bosch_modified_pid_output_scale(-20.0, 0.0, 12.0) assert get_civic_bosch_modified_pid_output_scale(20.0, -0.5, 12.0) < get_civic_bosch_modified_pid_output_scale(20.0, 0.0, 12.0)