* limit max curvature with lateral accel too
* not a guideline
* roll compensation in curv clip
* improve clipping and alerting
* typo
* clean up
* no float
* get ready
* good idea
* good
* redundant
* TODO
* test
* do max curvature clip last
* flip
---------
Co-authored-by: Bruce Wayne <harald.the.engineer@gmail.com>
* move most of /car
* move some car tests
move some car tests
* fix selfdrive/car/tests
* fix selfdrive/controls tests
* fix the rest of the selfdrive tests
* bump opendbc
* fix all tests
* few more non-test references
* remove opcar and move docs to car
fix these debugging scripts
fix docs
* bump opendbc and panda
forgot panda
old-commit-hash: e735a7f379
* add history and state to the ff inputs
* add history
* resolve comments
* remove history, simplify
* don't compute lateral accel, roll comp always
old-commit-hash: 056b330e8b
* add erf based ff
* silly bug; diff of nonlinear != nonlinear of diff
* add sigmoid based ff, ensure slope at 0 > 1
* reduce steer down limit and increase driver allowance
* rebase panda
* atry without friction, and with tanh nonlinear
* finalize the nonlinear function
* do not disable friction compensation in the ff
* bump panda
* bump panda
* update refs
* update refs
* resolve comments
* Add type hints
---------
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 15b880c0ea
* Add explicit cost on steering wheel movement
* Laxer low speed control
* Laxer low speed control
* Lower min speed now there is a cost
* 3m/s
* Similar to old master
* Add cost
* Crazy high
* Update ref
* comment
old-commit-hash: 2c9b150761
* wip torqued
* add basic logic
* setup in manager
* check sanity and publish msg
* add first order filter to outputs
* wire up controlsd, and update gains
* rename intercept to offset
* add cloudlog, live values are not updated
* fix bugs, do not reset points for now
* fix crashes
* rename to main
* fix bugs, works offline
* fix float in cereal bug
* add latacc filter
* randomly choose points, approx for iid
* add variable decay
* local param to capnp instead of dict
* verify works in replay
* use torqued output in controlsd
* use in controlsd; use points from past routes
* controlsd bugfix
* filter before updating gains, needs to be replaced
* save all points to ensure smooth transition across routes, revert friction factor to 1.5
* add filters to prevent noisy low-speed data points; improve fit sanity
* add engaged buffer
* revert lat_acc thresh
* use paramsd realtime process config
* make latacc-to-torque generic, and overrideable
* move freq to 4Hz, avoid storing in np.array, don't publish points in the message
* float instead of np
* remove constant while storing pts
* rename slope, offset to lat_accet_factor, offset
* resolve issues
* use camelcase in all capnp params
* use camelcase everywhere
* reduce latacc threshold or sanity, add car_sane todo, save points properly
* add and check tag
* write param to disk at end of route
* remove args
* rebase op, cereal
* save on exit
* restore default handler
* cpu usage check
* add to process replay
* handle reset better, reduce unnecessary computation
* always publish raw values - useful for debug
* regen routes
* update refs
* checks on cache restore
* check tuning vals too
* clean that up
* reduce cpu usage
* reduce cpu usage by 75%
* cleanup
* optimize further
* handle reset condition better, don't put points in init, use only in corolla
* bump cereal after rebasing
* update refs
* Update common/params.cc
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* remove unnecessary checks
* Update RELEASES.md
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 4fa62f1464
* update names + notes for MPC outputs
"current_curvature" is not the correct description of what the MPC is outputting in it's curvature_ego state.
The MPC is integrating it's free variable, curvature_rate, such that curvature[0] is actually the desired_curvature before any delay.
inversely: the curvature_rate_desired is the desired rate of change to the setpoint and not the actual curvature rate.
If we were to set the initial curvature = measured curvature in the MPC initiation these names would be correct.
This was possibly how it was initially set up but the nomenclature here is now confusing.
* more notes
* match
* Clarify #1
old-commit-hash: b215d611b1
* Set good torque using torque controller tuning
* should be equal to
* save lateral accel to car params
* use maxLateralAccel
* always
* same convention
* nan will always evaluate to false
* The great good torque purge
* adjust default friction
* Add data for more cars
* adjust name
* Welcome back, guys. Only adjust good torque if maxLatAccel is set
* Update refs (1.7 is 1.7000001...)
old-commit-hash: c6bc03311c
* Revert "Revert torque control (#24565)"
This reverts commit 93f434d047a92366c4ccefeece86fe101ed98d02.
* Move tune out of car specific stuff
* Update ref commit
old-commit-hash: d928972150
* move to super
* no class variable
* there's CP
* whitespace
* drop CI from latcontrol super
* Revert "drop CI from latcontrol super"
This reverts commit 9218273060.
Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: a693b3a26b
* Initial commit
* Fix bugs
* Need more torque rate
* Cleanup cray cray control
* Write nicely
* Chiiil
* Not relevant for cray cray control
* Do some logging
* Seems like it has more torque than I thought
* Bit more feedforward
* Tune change
* Retune
* Retune
* Little more chill
* Add coroll
* Add corolla
* Give craycray a good name
* Update to proper logging
* D to the PI
* Should be in radians
* Add d
* Start oscillations
* Add D term
* Only change torque rate limits for new tune
* Add d logging
* Should be enough
* Wrong sign in D
* Downtune a little
* Needed to prevent faults
* Add lqr rav4 to tune
* Try derivative again
* Data based retune
* Data based retune
* add friction compensation
* Doesnt need too much P with friction comp
* remove lqr
* Remove kd
* Fix tests
* fix tests
* Too much error
* Get roll induced error under 1cm/deg
* Too much jitter
* Do roll comp
* Add ki
* Final update
* Update refs
* Cleanup latcontrol_torque a little more
old-commit-hash: fe0bcdaef6