This commit is contained in:
firestar5683
2026-04-29 14:22:46 -05:00
parent 91a6df08b0
commit 60d6cc4476
2 changed files with 30 additions and 30 deletions
+27 -27
View File
@@ -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:
+3 -3
View File
@@ -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