From 77c82edb44aa9783f7175aaca0e79256a0a71f19 Mon Sep 17 00:00:00 2001 From: firestar5683 <168790843+firestar5683@users.noreply.github.com> Date: Mon, 8 Jun 2026 20:55:23 -0500 Subject: [PATCH] sonata hybrid --- selfdrive/controls/lib/latcontrol_torque.py | 4 ++-- selfdrive/controls/tests/test_latcontrol.py | 15 ++++++++++++--- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/selfdrive/controls/lib/latcontrol_torque.py b/selfdrive/controls/lib/latcontrol_torque.py index 510695c53..103cc5742 100644 --- a/selfdrive/controls/lib/latcontrol_torque.py +++ b/selfdrive/controls/lib/latcontrol_torque.py @@ -257,7 +257,7 @@ VOLT_STANDARD_CENTER_TAPER_SPEED_WIDTH = 2.5 SONATA_HYBRID_BASE_LAT_ACCEL_FACTOR_MULT = 1.05 SONATA_HYBRID_FF_REDUCTION_LEFT = 0.09 -SONATA_HYBRID_FF_REDUCTION_RIGHT = 0.24 +SONATA_HYBRID_FF_REDUCTION_RIGHT = 0.22 SONATA_HYBRID_FF_ONSET = 0.18 SONATA_HYBRID_FF_ONSET_WIDTH = 0.08 SONATA_HYBRID_FF_CUTOFF = 1.35 @@ -265,7 +265,7 @@ SONATA_HYBRID_FF_CUTOFF_WIDTH = 0.40 SONATA_HYBRID_TRANSITION_SPEED = 8.0 SONATA_HYBRID_PHASE_SCALE = 0.12 SONATA_HYBRID_TURN_IN_BOOST_LEFT = 0.12 -SONATA_HYBRID_TURN_IN_BOOST_RIGHT = 0.00 +SONATA_HYBRID_TURN_IN_BOOST_RIGHT = 0.02 SONATA_HYBRID_UNWIND_TAPER_LEFT = 0.18 SONATA_HYBRID_UNWIND_TAPER_RIGHT = 0.10 SONATA_HYBRID_CENTER_TAPER_MAX = 0.07 diff --git a/selfdrive/controls/tests/test_latcontrol.py b/selfdrive/controls/tests/test_latcontrol.py index df0abd1b8..12fd41e20 100644 --- a/selfdrive/controls/tests/test_latcontrol.py +++ b/selfdrive/controls/tests/test_latcontrol.py @@ -239,11 +239,20 @@ class TestLatControl: def test_sonata_hybrid_ff_scale_curve(self): assert get_sonata_hybrid_ff_scale(0.0, 0.0, 20.0) == 1.0 - assert get_sonata_hybrid_ff_scale(0.6, 0.0, 20.0) > get_sonata_hybrid_ff_scale(-0.6, 0.0, 20.0) + steady_left = get_sonata_hybrid_ff_scale(0.45, 0.0, 20.0) + steady_right = get_sonata_hybrid_ff_scale(-0.45, 0.0, 20.0) + turn_in_left = get_sonata_hybrid_ff_scale(0.45, 0.7, 6.0) + turn_in_right = get_sonata_hybrid_ff_scale(-0.45, -0.7, 6.0) + unwind_left = get_sonata_hybrid_ff_scale(0.45, -0.7, 6.0) + unwind_right = get_sonata_hybrid_ff_scale(-0.45, 0.7, 6.0) + assert steady_left < 1.0 + assert steady_right < steady_left assert get_sonata_hybrid_ff_scale(0.30, 0.0, 20.0) < 1.0 assert get_sonata_hybrid_ff_scale(0.30, 0.0, 20.0) < get_sonata_hybrid_ff_scale(0.10, 0.0, 20.0) - assert get_sonata_hybrid_ff_scale(0.4, 0.7, 6.0) > get_sonata_hybrid_ff_scale(0.4, 0.0, 6.0) - assert get_sonata_hybrid_ff_scale(-0.4, 0.7, 6.0) < get_sonata_hybrid_ff_scale(-0.4, 0.0, 6.0) + assert turn_in_left > steady_left + assert turn_in_right > steady_right + assert unwind_left < steady_left + assert unwind_right < steady_right def test_sonata_hybrid_center_taper_curve(self): assert get_sonata_hybrid_center_taper_scale(0.0, 30.0) < get_sonata_hybrid_center_taper_scale(0.0, 15.0)