Skip to content

Commit d63e05c

Browse files
haraschaxrjsmith1999
authored andcommitted
Torque control: higher low speed gains and better steering angle deadzone logic (commaai#24980)
* Try no friction and no deadzone * Learn fromd ata * update refs
1 parent d57fe07 commit d63e05c

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

selfdrive/controls/lib/latcontrol_torque.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,15 +56,15 @@ def update(self, active, CS, VM, params, last_actuators, desired_curvature, desi
5656
lateral_accel_deadzone = curvature_deadzone * CS.vEgo ** 2
5757

5858

59-
low_speed_factor = interp(CS.vEgo, [0, 15], [500, 0])
59+
low_speed_factor = interp(CS.vEgo, [0, 10, 20], [500, 500, 200])
6060
setpoint = desired_lateral_accel + low_speed_factor * desired_curvature
6161
measurement = actual_lateral_accel + low_speed_factor * actual_curvature
62-
error = apply_deadzone(setpoint - measurement, lateral_accel_deadzone)
62+
error = setpoint - measurement
6363
pid_log.error = error
6464

6565
ff = desired_lateral_accel - params.roll * ACCELERATION_DUE_TO_GRAVITY
6666
# convert friction into lateral accel units for feedforward
67-
friction_compensation = interp(error, [-FRICTION_THRESHOLD, FRICTION_THRESHOLD], [-self.friction, self.friction])
67+
friction_compensation = interp(apply_deadzone(error, lateral_accel_deadzone), [-FRICTION_THRESHOLD, FRICTION_THRESHOLD], [-self.friction, self.friction])
6868
ff += friction_compensation / self.kf
6969
freeze_integrator = CS.steeringRateLimited or CS.steeringPressed or CS.vEgo < 5
7070
output_torque = self.pid.update(error,
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
41161c8d151b0c2017214cad0aad3156533ab868
1+
a16ca1082cd493f6cea5252eaaba9f8c6574334a

0 commit comments

Comments
 (0)