POC: button changes personality

pull/31760/head
Shane Smiskol 1 year ago
parent ef127aa947
commit 180b46b8e3
  1. 12
      selfdrive/controls/lib/longitudinal_planner.py

@ -3,7 +3,7 @@ import math
import numpy as np import numpy as np
from openpilot.common.numpy_fast import clip, interp from openpilot.common.numpy_fast import clip, interp
from openpilot.common.params import Params from openpilot.common.params import Params
from cereal import log from cereal import car, log
import cereal.messaging as messaging import cereal.messaging as messaging
from openpilot.common.conversions import Conversions as CV from openpilot.common.conversions import Conversions as CV
@ -17,6 +17,8 @@ from openpilot.selfdrive.controls.lib.longitudinal_mpc_lib.long_mpc import T_IDX
from openpilot.selfdrive.controls.lib.drive_helpers import V_CRUISE_MAX, CONTROL_N, get_speed_error from openpilot.selfdrive.controls.lib.drive_helpers import V_CRUISE_MAX, CONTROL_N, get_speed_error
from openpilot.common.swaglog import cloudlog from openpilot.common.swaglog import cloudlog
ButtonType = car.CarState.ButtonEvent.Type
LON_MPC_STEP = 0.2 # first step is 0.2s LON_MPC_STEP = 0.2 # first step is 0.2s
A_CRUISE_MIN = -1.2 A_CRUISE_MIN = -1.2
A_CRUISE_MAX_VALS = [1.6, 1.2, 0.8, 0.6] A_CRUISE_MAX_VALS = [1.6, 1.2, 0.8, 0.6]
@ -89,8 +91,12 @@ class LongitudinalPlanner:
return x, v, a, j return x, v, a, j
def update(self, sm): def update(self, sm):
if self.param_read_counter % 50 == 0: # if self.param_read_counter % 50 == 0:
self.read_param() # self.read_param()
# decrement personality on button press (Toyota can only decrement)
if any(not be.pressed and be.type == ButtonType.gapAdjustCruise for be in sm['carState'].buttonEvents):
self.personality = (self.personality - 1) % 3
self.param_read_counter += 1 self.param_read_counter += 1
self.mpc.mode = 'blended' if sm['controlsState'].experimentalMode else 'acc' self.mpc.mode = 'blended' if sm['controlsState'].experimentalMode else 'acc'

Loading…
Cancel
Save