* base LatControl class, move sat check out of pid.py
clean up
clean up
* fix
* global variable for min control speed
* nicer name
* unify latcontrol class init arguments
* add to release files
* saturated if close to limit
* move angle mode saturation checks into class
* check_saturation function takes in current saturated status
undo
* apply latcontrol_angle's active checking to all controllers
* clean up
* move those back
* make abstract baseclass
* add test for saturation
* keep clip
* update ref
* fix static analysis
Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: 9de8f8cd8c384596868edf3307da51819b28bb4b
* should work
* Revert "should work"
This reverts commit dabc2ea17a072a6c835e4bd1c75a2c1e2d10623d.
* move lane change logic to DesireHelper class
* clean up desires
clean up desires
* comments
* Revert "clean up desires"
This reverts commit 7301c921e305fcbd4746b19040631d935d50dfd9.
* Update selfdrive/controls/lib/desire_helper.py
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* add to files_common
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: 6be70a063dfc96b9e9f097f439bdc2e0be54d6d9
* lat_mpc: make v_ego, rotation_radius parameters instead of states
* lat_mpc: remove rotation_radius argument, since it is part of the parameters
* lat_mpc: use qp_solver_cond_N = 1
slightly faster and in line with case study in Fig. 2/ 3 in Frison2016 - https://cdn.syscop.de/publications/Frison2016.pdf
An Efficient Implementation of Partial Condensing for Nonlinear Model Predictive Control
* adapt test_lateral_mpc to formulation with parameters
* lat_mpc: set parameters in reset() and copy values
* acados_ocp_solver_pyx: make options_set useable
* update ref
Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: 06814748409bd8538edca1b2bcef66f15e1c3ab6
* check in tuple instead of list
* Update selfdrive/car/toyota/carcontroller.py
Co-authored-by: Willem Melching <willem.melching@gmail.com>
* Update selfdrive/car/mazda/interface.py
Co-authored-by: Willem Melching <willem.melching@gmail.com>
Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: a653461dec18b1313148905172ba54bac9f5fdfd
* check if speeds is empty
* move into existing check
Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: a2e762e0b96c7ff271dcfd41c0ca7c12018444f0
* remove starting state
* new ref
* ready for merge
* try this
* cereal now on master
Co-authored-by: Harald Schafer <harald.the.engineer@gmail.com>
old-commit-hash: cf9792dc536db343447cfa64edecc72565c4eefd
* remove class accel_limit_arr
remove class accel_limit_arr
* make it static
* only set static parameters once
* just use existing function
style
* Update selfdrive/controls/lib/longitudinal_mpc_lib/long_mpc.py
* Update selfdrive/controls/lib/longitudinal_mpc_lib/long_mpc.py
Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: 9cb0ebe37d234b292e5f2a482924a6f23ab77ba9
* make v_desired a FirstOrderFilter
* forgot one
* one more ref
* Add a new object for the filter
* fix
* fix tests
* update ref
Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: 9f88ba188a19cd90e8fee48353668dda7b47b2ba
* mypy passes
* a few more
* a few in manager
* more types, will lint
* more
* simple types
* events type
* Update selfdrive/thermald/thermald.py
* Apply suggestions from code review
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: dc96d4bee7b898172a6a15de4799af0e2d35605e
Updated Python code with Python 3.6+ features:
- utf-8 encoding is now the default (PEP 3120)
- Replace list comprehensions by Generator Expressions (PEP 289)
- Replace yield loop by yield from (PEP 380)
- Remove the (object) subclass when defining a class
- Replace the IOError alias by OSError (PEP 3151)
- Define sets with curly braces {} instead of set()
- Remove "r" parameter from open function, which is default
Co-Authored-By: Adeeb Shihadeh <8762862+adeebshihadeh@users.noreply.github.com>
Co-Authored-By: GregorKikelj <96022003+GregorKikelj@users.noreply.github.com>
Co-authored-by: Adeeb Shihadeh <8762862+adeebshihadeh@users.noreply.github.com>
Co-authored-by: GregorKikelj <96022003+GregorKikelj@users.noreply.github.com>
old-commit-hash: 332f568a8241fba9459cb70c76840b9670e6993a
* Convert all text strings to f-strings
Reformats all the text from the old "%-formatted" and .format(...) format to the newer f-string format, as defined in PEP 498. This requires Python 3.6+.
Flynt 0.69 was used to reformat the strings. 120 f-strings were created in 51 files.
F-strings are in general more readable, concise and performant. See also: https://www.python.org/dev/peps/pep-0498/#rationale
* revert pyextra changes
* revert ublox.py
Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: 55390d273f36f49da3896e687ac5530f40c1d150
* Remove minCanSpeed
Remove minCanSpeed
* it actually only goes out to 2.5 seconds, this is okay to remove
* test to see if this preserves behavior
add minSpeedCan
* Revert "test to see if this preserves behavior"
This reverts commit 31b11f017f7e9da7654fc8064b5983d4a6cc22e5.
* preserve behavior (don't enter stopping as early)
* vEgoStopping needs to be less than or equal to vEgoStarting to avoid state oscillation
old-commit-hash: 2799ef52928126d4b704a6ad83e25a35d0b56da3
* alerts: escalate soft disable alert if resulted in disengagement
* show 0.5s before disengagement
old-commit-hash: 8068df0b2a35eb8fcef809f4ce9a6cb7bfc75fdc
* alert text simplification
* little more
* user triggered
* little more
* less annoying ldw
* Update selfdrive/controls/lib/events.py
* update refs
* revert
old-commit-hash: 4627d201b68b670c4d4c29f3ce7523daf8ddc732
* new ref
* never let lead stopped equivalence go down
* no overbraking
* stricter again
* cleanup
* updated refs
old-commit-hash: 0dcdf9c30fdb14e907015cb2b0195238e6121b05
* Add cost for creep
* more reasonable cost
* seems better than before
* science tune
* more chill
* closer follow
* stopping takes some leeway
* better cruise
* needed to be cumsum all along
* jerk not even needed
* matches better
* 6 is too much
* add back
* a little extra buffer is good for badly tuned cars
* new refs
* refs again
old-commit-hash: 46fd5892bf41add3dc15d413bced81693d0f8853