From 60d6cc4476c344a1a09592ed901aa97d6606d4ca Mon Sep 17 00:00:00 2001 From: firestar5683 <168790843+firestar5683@users.noreply.github.com> Date: Wed, 29 Apr 2026 14:22:46 -0500 Subject: [PATCH] i6 --- selfdrive/controls/lib/latcontrol_torque.py | 54 ++++++++++----------- selfdrive/controls/tests/test_latcontrol.py | 6 +-- 2 files changed, 30 insertions(+), 30 deletions(-) diff --git a/selfdrive/controls/lib/latcontrol_torque.py b/selfdrive/controls/lib/latcontrol_torque.py index dead8a691..87ecda511 100644 --- a/selfdrive/controls/lib/latcontrol_torque.py +++ b/selfdrive/controls/lib/latcontrol_torque.py @@ -211,43 +211,43 @@ IONIQ_6_FF_CUTOFF = 0.48 IONIQ_6_FF_CUTOFF_WIDTH = 0.12 IONIQ_6_TRANSITION_SPEED = 10.0 IONIQ_6_PHASE_SCALE = 0.10 -IONIQ_6_TURN_IN_BOOST_LEFT = 0.66 -IONIQ_6_TURN_IN_BOOST_RIGHT = 0.50 -IONIQ_6_UNWIND_TAPER_LEFT = 1.08 -IONIQ_6_UNWIND_TAPER_RIGHT = 1.92 +IONIQ_6_TURN_IN_BOOST_LEFT = 0.72 +IONIQ_6_TURN_IN_BOOST_RIGHT = 0.58 +IONIQ_6_UNWIND_TAPER_LEFT = 1.22 +IONIQ_6_UNWIND_TAPER_RIGHT = 2.18 IONIQ_6_FRICTION_MULT = 0.995 IONIQ_6_FRICTION_LAT_RISE = 0.20 IONIQ_6_FRICTION_JERK_RISE = 0.24 -IONIQ_6_TURN_IN_THRESHOLD_REDUCTION_LEFT = 0.16 -IONIQ_6_TURN_IN_THRESHOLD_REDUCTION_RIGHT = 0.14 -IONIQ_6_UNWIND_THRESHOLD_INCREASE_LEFT = 0.84 -IONIQ_6_UNWIND_THRESHOLD_INCREASE_RIGHT = 1.74 -IONIQ_6_TURN_IN_FRICTION_BOOST_LEFT = 0.07 -IONIQ_6_TURN_IN_FRICTION_BOOST_RIGHT = 0.06 -IONIQ_6_UNWIND_FRICTION_REDUCTION_LEFT = 0.72 -IONIQ_6_UNWIND_FRICTION_REDUCTION_RIGHT = 1.44 -IONIQ_6_CENTER_TAPER_MAX = 0.036 -IONIQ_6_CENTER_TAPER_LAT = 0.15 +IONIQ_6_TURN_IN_THRESHOLD_REDUCTION_LEFT = 0.18 +IONIQ_6_TURN_IN_THRESHOLD_REDUCTION_RIGHT = 0.18 +IONIQ_6_UNWIND_THRESHOLD_INCREASE_LEFT = 1.02 +IONIQ_6_UNWIND_THRESHOLD_INCREASE_RIGHT = 2.10 +IONIQ_6_TURN_IN_FRICTION_BOOST_LEFT = 0.08 +IONIQ_6_TURN_IN_FRICTION_BOOST_RIGHT = 0.08 +IONIQ_6_UNWIND_FRICTION_REDUCTION_LEFT = 0.88 +IONIQ_6_UNWIND_FRICTION_REDUCTION_RIGHT = 1.72 +IONIQ_6_CENTER_TAPER_MAX = 0.038 +IONIQ_6_CENTER_TAPER_LAT = 0.16 IONIQ_6_CENTER_TAPER_LAT_WIDTH = 0.02 IONIQ_6_CENTER_TAPER_SPEED = 18.0 IONIQ_6_CENTER_TAPER_SPEED_WIDTH = 2.5 -IONIQ_6_LOW_MID_CENTER_TAPER_MAX = 0.032 -IONIQ_6_LOW_MID_CENTER_TAPER_LAT = 0.18 -IONIQ_6_LOW_MID_CENTER_TAPER_LAT_WIDTH = 0.03 -IONIQ_6_LOW_MID_CENTER_TAPER_SPEED_MIN = 9.0 -IONIQ_6_LOW_MID_CENTER_TAPER_SPEED_MAX = 15.0 -IONIQ_6_LOW_MID_CENTER_TAPER_SPEED_WIDTH = 1.0 +IONIQ_6_LOW_MID_CENTER_TAPER_MAX = 0.050 +IONIQ_6_LOW_MID_CENTER_TAPER_LAT = 0.22 +IONIQ_6_LOW_MID_CENTER_TAPER_LAT_WIDTH = 0.035 +IONIQ_6_LOW_MID_CENTER_TAPER_SPEED_MIN = 8.0 +IONIQ_6_LOW_MID_CENTER_TAPER_SPEED_MAX = 15.5 +IONIQ_6_LOW_MID_CENTER_TAPER_SPEED_WIDTH = 1.2 IONIQ_6_DIRECTIONAL_TAPER_LAT_START = 0.15 IONIQ_6_DIRECTIONAL_TAPER_LAT_END = 0.90 IONIQ_6_DIRECTIONAL_TAPER_LAT_WIDTH = 0.08 -IONIQ_6_DIRECTIONAL_TAPER_BASE_LEFT = 0.04 -IONIQ_6_DIRECTIONAL_TAPER_BASE_RIGHT = 0.34 -IONIQ_6_DIRECTIONAL_TAPER_UNWIND_LEFT = 0.34 -IONIQ_6_DIRECTIONAL_TAPER_UNWIND_RIGHT = 0.96 +IONIQ_6_DIRECTIONAL_TAPER_BASE_LEFT = 0.07 +IONIQ_6_DIRECTIONAL_TAPER_BASE_RIGHT = 0.40 +IONIQ_6_DIRECTIONAL_TAPER_UNWIND_LEFT = 0.46 +IONIQ_6_DIRECTIONAL_TAPER_UNWIND_RIGHT = 1.18 IONIQ_6_OUTPUT_TAPER_SPEED = 8.5 IONIQ_6_OUTPUT_TAPER_SPEED_WIDTH = 2.5 -IONIQ_6_OUTPUT_CENTER_TAPER_BLEND = 0.70 -IONIQ_6_OUTPUT_DIRECTIONAL_TAPER_BLEND = 0.90 +IONIQ_6_OUTPUT_CENTER_TAPER_BLEND = 0.82 +IONIQ_6_OUTPUT_DIRECTIONAL_TAPER_BLEND = 0.95 KIA_EV6_LATERAL_TESTING_GROUND_ID = testing_ground.id_6 KIA_EV6_LATERAL_TESTING_GROUND_VARIANT = "C" @@ -780,7 +780,7 @@ def get_ioniq_6_directional_taper_scale(desired_lateral_accel: float, desired_la base_reduction = _ioniq_6_side_value(desired_lateral_accel, IONIQ_6_DIRECTIONAL_TAPER_BASE_LEFT, IONIQ_6_DIRECTIONAL_TAPER_BASE_RIGHT) unwind_reduction = _ioniq_6_side_value(desired_lateral_accel, IONIQ_6_DIRECTIONAL_TAPER_UNWIND_LEFT, IONIQ_6_DIRECTIONAL_TAPER_UNWIND_RIGHT) reduction = band_weight * (base_reduction + unwind_reduction * unwind_weight) - return max(1.0 - reduction, 0.70) + return max(1.0 - reduction, 0.62) def get_ioniq_6_output_taper_scale(desired_lateral_accel: float, desired_lateral_jerk: float, v_ego: float) -> float: diff --git a/selfdrive/controls/tests/test_latcontrol.py b/selfdrive/controls/tests/test_latcontrol.py index 0d1c5af4b..979f8d21c 100644 --- a/selfdrive/controls/tests/test_latcontrol.py +++ b/selfdrive/controls/tests/test_latcontrol.py @@ -243,14 +243,14 @@ class TestLatControl: right_turn_in = get_ioniq_6_friction_scale(6.0, -0.5, -0.8) left_unwind = get_ioniq_6_friction_scale(6.0, 0.5, -0.8) right_unwind = get_ioniq_6_friction_scale(6.0, -0.5, 0.8) - assert left_turn_in > right_turn_in > base + assert left_turn_in >= right_turn_in > base assert base > left_unwind >= right_unwind def test_ioniq_6_center_taper_curve(self): - assert get_ioniq_6_center_taper_scale(0.0, 30.0) < get_ioniq_6_center_taper_scale(0.0, 10.0) + assert get_ioniq_6_center_taper_scale(0.0, 10.0) < get_ioniq_6_center_taper_scale(0.0, 30.0) assert get_ioniq_6_center_taper_scale(0.0, 30.0) < get_ioniq_6_center_taper_scale(0.2, 30.0) assert get_ioniq_6_center_taper_scale(0.0, 12.0) < get_ioniq_6_center_taper_scale(0.25, 12.0) - assert abs(get_ioniq_6_center_taper_scale(0.2, 30.0) - 1.0) < 3e-3 + assert abs(get_ioniq_6_center_taper_scale(0.2, 30.0) - 1.0) < 5e-3 def test_kia_ev6_ff_scale_curve(self): assert get_kia_ev6_ff_scale(0.0, 0.0, 20.0) == 1.0