Compare commits
32 Commits
master
...
disengage-
Author | SHA1 | Date |
---|---|---|
Shane Smiskol | 475b27e74f | |
Shane Smiskol | 0798eadb82 | |
Shane Smiskol | d2b64b89cf | |
Shane Smiskol | bed31e63de | |
Shane Smiskol | 4914176409 | |
Shane Smiskol | 9291e9f004 | |
Shane Smiskol | 2aed64157d | |
Shane Smiskol | a219defe53 | |
Shane Smiskol | 8d82e697dc | |
Shane Smiskol | 5eb4d1ab1b | |
Shane Smiskol | bad1bdc742 | |
Shane Smiskol | 7516ed9b78 | |
Shane Smiskol | 408f5f1d63 | |
Shane Smiskol | be1978e29c | |
Shane Smiskol | f0bd4c47e9 | |
Shane Smiskol | d5b6e30389 | |
Shane Smiskol | 820b198949 | |
Shane Smiskol | 91763f9ff4 | |
Shane Smiskol | 1885c9e2ba | |
Jason Wen | 1f591736a2 | |
Jason Wen | 465811f0b4 | |
Jason Wen | 0344363a53 | |
Jason Wen | 700efcb3f4 | |
Jason Wen | 220ce272fe | |
Jason Wen | d273bb78ac | |
Jason Wen | 1a85afd60c | |
Jason Wen | e3be32afc2 | |
Jason Wen | f27203af3a | |
Jason Wen | 04c0ad1a54 | |
Jason Wen | 99cf13caeb | |
Jason Wen | 2230254ca7 | |
Jason Wen | 87475e02cb |
|
@ -22,7 +22,7 @@ Following Hazard and Risk Analysis and FMEA, at a very high level, we have desig
|
|||
ensuring two main safety requirements.
|
||||
|
||||
1. The driver must always be capable to immediately retake manual control of the vehicle,
|
||||
by stepping on either pedal or by pressing the cancel button.
|
||||
by stepping on the brake pedal or by pressing the cancel button.
|
||||
2. The vehicle must not alter its trajectory too quickly for the driver to safely
|
||||
react. This means that while the system is engaged, the actuators are constrained
|
||||
to operate within reasonable limits.
|
||||
|
|
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 6.7 KiB |
|
@ -98,6 +98,7 @@ std::unordered_map<std::string, uint32_t> keys = {
|
|||
{"DisableRadar_Allow", PERSISTENT},
|
||||
{"DisableRadar", PERSISTENT}, // WARNING: THIS DISABLES AEB
|
||||
{"DisableUpdates", PERSISTENT},
|
||||
{"DisengageOnAccelerator", PERSISTENT},
|
||||
{"DongleId", PERSISTENT},
|
||||
{"DoReboot", CLEAR_ON_MANAGER_START},
|
||||
{"DoShutdown", CLEAR_ON_MANAGER_START},
|
||||
|
|
|
@ -94,7 +94,10 @@ class Controls:
|
|||
get_one_can(self.can_sock)
|
||||
|
||||
self.CI, self.CP = get_car(self.can_sock, self.pm.sock['sendcan'])
|
||||
self.CP.alternativeExperience = 0 # see panda/board/safety_declarations.h for allowed values
|
||||
|
||||
# see panda/board/safety_declarations.h for allowed values
|
||||
self.disengage_on_accelerator = Params().get_bool("DisengageOnAccelerator")
|
||||
self.CP.alternativeExperience = 1 if not self.disengage_on_accelerator else 0
|
||||
|
||||
# read params
|
||||
self.is_metric = params.get_bool("IsMetric")
|
||||
|
@ -194,9 +197,9 @@ class Controls:
|
|||
self.events.add(EventName.controlsInitializing)
|
||||
return
|
||||
|
||||
# Disable on rising edge of gas or brake. Also disable on brake when speed > 0
|
||||
if (CS.gasPressed and not self.CS_prev.gasPressed) or \
|
||||
(CS.brakePressed and (not self.CS_prev.brakePressed or not CS.standstill)):
|
||||
# Disable on rising edge of accelerator or brake. Also disable on brake when speed > 0
|
||||
if (CS.gasPressed and not self.CS_prev.gasPressed and self.disengage_on_accelerator) or \
|
||||
(CS.brakePressed and (not self.CS_prev.brakePressed or not CS.standstill)):
|
||||
self.events.add(EventName.pedalPressed)
|
||||
|
||||
self.events.add_from_msg(CS.events)
|
||||
|
@ -490,7 +493,7 @@ class Controls:
|
|||
# Check which actuators can be enabled
|
||||
CC.latActive = self.active and not CS.steerFaultTemporary and not CS.steerFaultPermanent and \
|
||||
CS.vEgo > self.CP.minSteerSpeed and not CS.standstill
|
||||
CC.longActive = self.active
|
||||
CC.longActive = self.active and not CS.gasPressed
|
||||
|
||||
actuators = CC.actuators
|
||||
actuators.longControlState = self.LoC.long_control_state
|
||||
|
|
|
@ -357,11 +357,11 @@ EVENTS: Dict[int, Dict[str, Union[Alert, AlertCallbackType]]] = {
|
|||
# ********** events only containing alerts that display while engaged **********
|
||||
|
||||
EventName.gasPressed: {
|
||||
ET.PRE_ENABLE: Alert(
|
||||
"Release Gas Pedal to Engage",
|
||||
ET.WARNING: Alert(
|
||||
"Release Accelerator Pedal to Engage",
|
||||
"",
|
||||
AlertStatus.normal, AlertSize.small,
|
||||
Priority.LOWEST, VisualAlert.none, AudibleAlert.none, .1, creation_delay=1.),
|
||||
Priority.LOWEST, VisualAlert.none, AudibleAlert.none, .1),
|
||||
},
|
||||
|
||||
# openpilot tries to learn certain parameters about your car by observing
|
||||
|
|
|
@ -87,7 +87,7 @@ class LongControl():
|
|||
v_target, v_target_future, CS.brakePressed,
|
||||
CS.cruiseState.standstill)
|
||||
|
||||
if self.long_control_state == LongCtrlState.off or CS.gasPressed:
|
||||
if self.long_control_state == LongCtrlState.off:
|
||||
self.reset(CS.vEgo)
|
||||
output_accel = 0.
|
||||
|
||||
|
|
|
@ -69,7 +69,6 @@ class Planner:
|
|||
|
||||
# Reset current state when not engaged, or user is controlling the speed
|
||||
reset_state = long_control_state == LongCtrlState.off
|
||||
reset_state = reset_state or sm['carState'].gasPressed
|
||||
|
||||
# No change cost when user is controlling the speed, or when standstill
|
||||
prev_accel_constraint = not (reset_state or sm['carState'].standstill)
|
||||
|
|
|
@ -38,6 +38,7 @@ def manager_init() -> None:
|
|||
|
||||
default_params: List[Tuple[str, Union[str, bytes]]] = [
|
||||
("CompletedTrainingVersion", "0"),
|
||||
("DisengageOnAccelerator", "1"),
|
||||
("HasAcceptedTerms", "0"),
|
||||
("OpenpilotEnabledToggle", "1"),
|
||||
]
|
||||
|
|
|
@ -346,6 +346,7 @@ def setup_env(simulation=False):
|
|||
params.clear_all()
|
||||
params.put_bool("OpenpilotEnabledToggle", True)
|
||||
params.put_bool("Passive", False)
|
||||
params.put_bool("DisengageOnAccelerator", True)
|
||||
|
||||
os.environ["NO_RADAR_SLEEP"] = "1"
|
||||
os.environ["REPLAY"] = "1"
|
||||
|
|
|
@ -65,6 +65,12 @@ TogglesPanel::TogglesPanel(SettingsWindow *parent) : ListWidget(parent) {
|
|||
"In this mode openpilot will ignore lanelines and just drive how it thinks a human would.",
|
||||
"../assets/offroad/icon_road.png",
|
||||
},
|
||||
{
|
||||
"DisengageOnAccelerator",
|
||||
"Disengage On Accelerator Pedal",
|
||||
"openpilot will disengage when accelerator pedal is pressed.",
|
||||
"../assets/offroad/icon_disengage_on_accelerator.svg",
|
||||
},
|
||||
#ifdef ENABLE_MAPS
|
||||
{
|
||||
"NavSettingTime24h",
|
||||
|
|
Loading…
Reference in New Issue