actually selfdrived is probably best since it already manages alerts

card is car interfacing, controlsd is for calculating control input, selfdrived is rest
pull/35700/head
Shane Smiskol 1 month ago
parent 674992cf85
commit d0b1afdc4e
  1. 9
      selfdrive/controls/controlsd.py
  2. 8
      selfdrive/selfdrived/selfdrived.py

@ -10,7 +10,6 @@ from openpilot.common.realtime import config_realtime_process, Priority, Ratekee
from openpilot.common.swaglog import cloudlog
from opendbc.car.car_helpers import interfaces
from opendbc.car.interfaces import ISO_LATERAL_ACCEL, ISO_LATERAL_JERK
from opendbc.car.vehicle_model import VehicleModel
from openpilot.selfdrive.controls.lib.drive_helpers import clip_curvature
from openpilot.selfdrive.controls.lib.latcontrol import LatControl
@ -19,7 +18,6 @@ from openpilot.selfdrive.controls.lib.latcontrol_angle import LatControlAngle, S
from openpilot.selfdrive.controls.lib.latcontrol_torque import LatControlTorque
from openpilot.selfdrive.controls.lib.longcontrol import LongControl
from openpilot.selfdrive.locationd.helpers import PoseCalibrator, Pose
from openpilot.selfdrive.selfdrived.alertmanager import set_offroad_alert
State = log.SelfdriveState.OpenpilotState
LaneChangeState = log.LaneChangeState
@ -28,10 +26,6 @@ LaneChangeDirection = log.LaneChangeDirection
ACTUATOR_FIELDS = tuple(car.CarControl.Actuators.schema.fields.keys())
def check_lateral_iso_violation(sm: messaging.SubMaster) -> bool:
return False
class Controls:
def __init__(self) -> None:
self.params = Params()
@ -164,9 +158,6 @@ class Controls:
hudControl.leadDistanceBars = self.sm['selfdriveState'].personality.raw + 1
hudControl.visualAlert = self.sm['selfdriveState'].alertHudVisual
if check_lateral_iso_violation(self.sm):
set_offroad_alert("Offroad_ViolatedIsoLimits", True)
hudControl.rightLaneVisible = True
hudControl.leftLaneVisible = True
if self.sm.valid['driverAssistance']:

@ -7,6 +7,7 @@ import cereal.messaging as messaging
from cereal import car, log
from msgq.visionipc import VisionIpcClient, VisionStreamType
from opendbc.car.interfaces import ISO_LATERAL_ACCEL, ISO_LATERAL_JERK
from openpilot.common.params import Params
@ -39,6 +40,10 @@ SafetyModel = car.CarParams.SafetyModel
IGNORED_SAFETY_MODES = (SafetyModel.silent, SafetyModel.noOutput)
def check_lateral_iso_violation(sm: messaging.SubMaster) -> bool:
return False
class SelfdriveD:
def __init__(self, CP=None):
self.params = Params()
@ -227,6 +232,9 @@ class SelfdriveD:
if self.sm['driverAssistance'].leftLaneDeparture or self.sm['driverAssistance'].rightLaneDeparture:
self.events.add(EventName.ldw)
if check_lateral_iso_violation(self.sm):
set_offroad_alert("Offroad_ViolatedIsoLimits", True)
# Handle lane change
if self.sm['modelV2'].meta.laneChangeState == LaneChangeState.preLaneChange:
direction = self.sm['modelV2'].meta.laneChangeDirection

Loading…
Cancel
Save