Commit Graph

56 Commits

Author SHA1 Message Date
Jason Wen bbef8d5764 Merge branch 'master-priv' into master-dev-c3
# Conflicts:
#	panda
2024-07-07 20:39:24 -04:00
Adeeb Shihadeh d3cb0d24c4 Sync: sunnypilot/sunnypilot:master into sunnypilot/openpilot-special:master-priv 2024-07-07 10:15:50 -04:00
Shane Smiskol c95b58401a controlsd: no mutable carParams (#32381)
* no as builder

* fix car int test

* more
2024-07-02 13:27:45 -07:00
Jason Wen fdf99e014b Merge branch 'ui-torque-fric-half' into master-dev-c3 2024-07-02 12:02:27 -04:00
Jason Wen 9af616605b ui: Torque Lateral Control: Update every 0.005 2024-07-02 12:01:58 -04:00
Jason Wen 6c429dca06 Sync: sunnypilot/sunnypilot:master into sunnypilot/openpilot-special:master-priv 2024-06-24 16:29:37 -04:00
DevTekVE 3f5dc2f418 Merge remote-tracking branch 'origin/SP-157-sync-priv-20240614' into master-dev-c3
# Conflicts:
#	selfdrive/car/ford/interface.py
#	selfdrive/car/hyundai/interface.py
2024-06-22 13:36:11 +02:00
Jason Wen 27fbb3a67b Merge branch 'SP-157-sync-20240614' into SP-157-sync-priv-20240614 2024-06-19 15:25:25 -04:00
Jason Wen fadcad8793 init at 0 2024-05-17 13:17:49 -04:00
Jason Wen 7153a7bb84 NNLC: "Lazy" tight curve fixes and more toggles 2024-03-26 17:49:01 -04:00
Jason Wen 071e12e527 NNLC: Slight fixes 2024-02-14 13:08:54 -05:00
Jason Wen 90e5e237a8 Revert "NNLC: Nuked for now"
This reverts commit 3c82625546.
2024-02-12 12:07:39 -05:00
Jason Wen 3c82625546 NNLC: Nuked for now 2024-02-11 17:03:48 -05:00
Jason Wen b977a52f92 NNLC: Turn this shit off 2024-02-11 16:46:43 -05:00
Jason Wen 43fd2add8b NNLC: Small fix 2024-02-11 16:27:29 -05:00
Jason Wen 6f4ef8ef1e Revert "NNLC: Fixes"
This reverts commit 852200f4d0.
2024-02-11 16:27:05 -05:00
Jason Wen 8bf9a0e738 Revert "NNLC: Comment out duplicate"
This reverts commit 5a88fbc2ae.
2024-02-11 16:27:04 -05:00
Jason Wen 5a88fbc2ae NNLC: Comment out duplicate 2024-02-11 15:51:03 -05:00
Jason Wen 852200f4d0 NNLC: Fixes 2024-02-11 15:28:49 -05:00
Jason Wen cd3e1db875 NNLC: Fix upstream conflict 2024-02-09 14:22:17 -05:00
Jason Wen 75b38db870 Merge branch 'sync-20240201' into sync-priv-20240201 2024-02-07 22:49:01 -05:00
Vivek Aithal 056b330e8b LatControlTorque: Add more inputs (#31252)
* add history and state to the ff inputs

* add history

* resolve comments

* remove history, simplify

* don't compute lateral accel, roll comp always
2024-02-01 04:12:48 -08:00
Harald Schäfer d36103791c No curv rate for lateral control (#31042)
* No more Curvature rate for lat control

* Update cereal

* Update

* Fix lat control test
2024-01-17 16:00:50 -08:00
Jason Wen 448e71e584 Torque: Neural Network Lateral Controller (formerly NNFF) 2023-12-04 03:55:09 +00:00
Adeeb Shihadeh ce4bac8218 remove unused last_actuators arg from lateral controllers (#30595) 2023-12-03 15:54:18 -08:00
Jason Wen 613d5b4aba Torque Lateral Control: Refactor settings (#300)
* Torque Lateral Control: Refactor settings

* don't need this

* only offroad allowed

* Don't need this

* allow when offroad

* gate them

* flipped

* handle them better

* cleaner

* remove duplicate

* toggle checks cleanup

* 2.5 second check

* trigger refresh when going offroad

* cleanup

* move toggle

* update title and description

* fix ampersand

* update live torque toggle

* live torqued every 2.5 second
2023-09-29 02:36:55 -04:00
Jason Wen 9219b7966c Merge branch 'master' into dev-priv/master-test
# Conflicts:
#	panda
#	release/build_release.sh
#	selfdrive/car/car_helpers.py
#	selfdrive/car/chrysler/carcontroller.py
#	selfdrive/car/chrysler/carstate.py
#	selfdrive/car/chrysler/interface.py
#	selfdrive/car/ford/carstate.py
#	selfdrive/car/ford/interface.py
#	selfdrive/car/gm/carcontroller.py
#	selfdrive/car/gm/carstate.py
#	selfdrive/car/gm/interface.py
#	selfdrive/car/honda/carcontroller.py
#	selfdrive/car/honda/interface.py
#	selfdrive/car/hyundai/carcontroller.py
#	selfdrive/car/hyundai/carstate.py
#	selfdrive/car/hyundai/hyundaican.py
#	selfdrive/car/hyundai/interface.py
#	selfdrive/car/interfaces.py
#	selfdrive/car/mazda/carcontroller.py
#	selfdrive/car/mazda/carstate.py
#	selfdrive/car/mazda/interface.py
#	selfdrive/car/nissan/carcontroller.py
#	selfdrive/car/nissan/interface.py
#	selfdrive/car/subaru/carstate.py
#	selfdrive/car/subaru/interface.py
#	selfdrive/car/subaru/subarucan.py
#	selfdrive/car/toyota/carcontroller.py
#	selfdrive/car/toyota/carstate.py
#	selfdrive/car/toyota/interface.py
#	selfdrive/car/toyota/toyotacan.py
#	selfdrive/car/volkswagen/carcontroller.py
#	selfdrive/car/volkswagen/carstate.py
#	selfdrive/car/volkswagen/interface.py
#	selfdrive/controls/controlsd.py
#	selfdrive/controls/lib/latcontrol_torque.py
#	selfdrive/controls/lib/lateral_planner.py
#	selfdrive/controls/lib/longitudinal_mpc_lib/long_mpc.py
#	selfdrive/controls/lib/longitudinal_planner.py
#	selfdrive/locationd/paramsd.py
#	selfdrive/manager/manager.py
#	selfdrive/manager/process.py
#	selfdrive/manager/process_config.py
#	selfdrive/sentry.py
#	selfdrive/ui/SConscript
#	selfdrive/ui/qt/home.cc
#	selfdrive/ui/qt/maps/map_settings.cc
#	selfdrive/ui/qt/maps/map_settings.h
#	selfdrive/ui/qt/offroad/settings.cc
#	selfdrive/ui/qt/onroad.cc
#	selfdrive/ui/qt/onroad.h
#	selfdrive/ui/qt/util.cc
#	selfdrive/ui/qt/util.h
#	selfdrive/ui/soundd/sound.h
#	selfdrive/ui/ui.h
#	system/version.py
2023-09-05 20:17:19 -04:00
Adeeb Shihadeh a9626f95b6 add openpilot prefix to imports (#29498)
* add openpilot prefix to imports

* more

* more

* fix docs

* fix linter

* bump submodules

* fix patched tests

* update dynamic imports

* debug

* Revert "debug"

This reverts commit db5e13b9911cc74438bee123bc3430da6c31b24b.

* fix pm test
2023-08-20 20:49:55 -07:00
Jason Wen 72ba1c3e39 Merge branch 'master' into dev-priv/master
# Conflicts:
#	panda
#	selfdrive/car/honda/carcontroller.py
#	selfdrive/car/interfaces.py
#	selfdrive/ui/translations/main_de.ts
#	selfdrive/ui/translations/main_ja.ts
#	selfdrive/ui/translations/main_ko.ts
#	selfdrive/ui/translations/main_pt-BR.ts
#	selfdrive/ui/translations/main_zh-CHS.ts
#	selfdrive/ui/translations/main_zh-CHT.ts
2023-03-30 23:14:39 -04:00
Vivek Aithal 15b880c0ea Bolt EUV: Non-linear torque function (#27696)
* 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>
2023-03-29 15:10:39 -07:00
Jason Wen 27bd70f64b Merge branch 'master' into dev-priv/master
# Conflicts:
#	panda
#	selfdrive/car/gm/interface.py
#	selfdrive/ui/translations/main_zh-CHT.ts
2023-03-12 14:59:46 -04:00
Adeeb Shihadeh 2008332bd4 GM: revert custom Bolt torque tune (#27403)
* Revert "GM: cleanup torque feedforward function (#27347)"

This reverts commit 8c099dd4e5.

* Revert "Chevrolet Bolt: Non-linear torque tune (#27344)"

This reverts commit e49748d571.

* update refs
2023-02-21 15:27:48 -08:00
Jason Wen 36152df5e4 Torque lateral control customization (#41)
* Torque lateral control init

* move-fast: v-tsc fix

* No need to show this

* oops

* cleaner
2023-02-20 18:19:52 -05:00
Vivek Aithal e49748d571 Chevrolet Bolt: Non-linear torque tune (#27344)
* add non linear tune

* update refs

* rerun tests
2023-02-14 16:20:28 -08:00
Jason Young cb88b3ed65 controlsd: set latActive with max minimum steer speed (#26805)
* refactor minimum lateral speed handling

* rename for clarity

* simplify without joystick at standstill

* intermediate standstill variable, check notCar

* check joystick for now

* cmt

Co-authored-by: Shane Smiskol <shane@smiskol.com>
2023-01-10 20:51:10 -08:00
Vivek Aithal e9eb5d99ff [torqued] Fix high speed oscillations (#26338)
* modify low speed factor during high speeds and rescale friction

* update refs
2022-11-07 17:01:24 -08:00
HaraldSchafer 1548db8962 Partial revert, lax torque control (#26146)
* Closer to original

* Update ref
2022-10-18 21:25:06 -07:00
HaraldSchafer 2c9b150761 Low speed lateral like before (#26022)
* 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
2022-10-11 14:53:43 -07:00
Vivek Aithal 4fa62f1464 Live torque (#25456)
* 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>
2022-09-19 15:19:26 -07:00
Vivek Aithal 85ed5c4cb5 Torque Refactor (#25822)
* add torque gains refactor

* update refs

* avoid dict, use cereal struct

* bugfix

* no as_builder

* address final comments
2022-09-17 00:07:54 -07:00
Adeeb Shihadeh d462a08056 remove CS.steeringRateLimited (#25251)
* remove CS.steeringRateLimited

* bump cereal

* update refs
2022-07-24 14:56:55 -07:00
HaraldSchafer b3226d505b Torque control: higher low speed gains and better steering angle deadzone logic (#24980)
* Try no friction and no deadzone

* Learn fromd ata

* update refs
2022-06-27 15:25:47 -07:00
Adeeb Shihadeh 062a8bcdbd cleanup torque tuning config (#24951) 2022-06-24 13:01:49 -07:00
HaraldSchafer a6652a539d Torque control: low speed boost (#24859)
* Make very low speed more aggressive

* Less extreme low speed boost

* Update ref
2022-06-14 22:29:08 -07:00
HaraldSchafer 843e59f6f0 Misc torque control fixes (#24801)
* Fiction compensation should be based on error

* Update refs

* Add deadzone

* update ref
2022-06-10 22:52:48 -07:00
ClockeNessMnstr b215d611b1 update DH names + notes for MPC output curvatures (#24701)
* 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
2022-06-07 09:41:03 -07:00
Shane Smiskol c6bc03311c Car documentation: set steering torque star using car interface (#24709)
* 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...)
2022-06-03 17:41:20 -07:00
HaraldSchafer d708a134bd Tssp prius torque control (#24669)
* use llk

* use steering sensor at low speed stil

* Try more simple

* rm prius tune

* updated ref
2022-05-27 10:21:02 -07:00
HaraldSchafer d928972150 Rerevert torque control (#24649)
* Revert "Revert torque control (#24565)"

This reverts commit 9f8b03753d.

* Move tune out of car specific stuff

* Update ref commit
2022-05-24 17:52:33 -07:00
HaraldSchafer 2181bbca71 Latcontrol torque: integrator need not be reset (#24606)
slow integrators need not be reset
2022-05-20 13:50:47 -07:00