Skip to content

Commit

Permalink
Merge with kegman-devel-noFFsteer (#73)
Browse files Browse the repository at this point in the history
* Honda Pilot PID Tuning

* Adjustable Follow Distance w/HUD (#12)

* TR

* TR

* TR

* TR

* TR

* TR

* TR

* TR

* remove readdistancelines - causes boot error

* copying cereal

* arne's cereal

* HUD distance lines display

* capnpp add

* revert

* revert

* Set ACC HUD to KPH

* Test - set HUD_ACC distance line to 2

* revert cruise_kph

LKAS error

* TR

* TR

* TR

* TR

* TR

* TR

* TR

* TR

* remove readdistancelines - causes boot error

* copying cereal

* HUD distance lines display

* capnpp add

* revert

* revert

* Set ACC HUD to KPH

* Test - set HUD_ACC distance line to 2

* revert cruise_kph

LKAS error

* Remove custom btn var line

could be crashing the code when button pressed

* HUD distance lines

* HUD distance lines

* passing CS.CP.readdistancelines

* Hardcode hud object dist_lines var

* Initializes CS.readdistancelines before passing to hud obj

* use integer read_distance_lines instead

* Add HUD_DISTANCE_3 for horizontal HUD bars on dash

* Default to 2 bars follow distance (1.8s)

* Code Cleanup for Distance Adjustment

Cleanup

Cleanup

Cleanup

Cleanup

Cleanup

Cleanup

Cleanup

Cleanup

Cleanup

* Auto-distance at surface street speeds

Override short distance setting when slow

Override distance when slow

Override distance if slow

Override distance when slow

Override distance when slow

Increase follow distance when below 60 kph

Lead car and rel. velocity to distance override

Override distance bars

revert

Override and restore dist based on speed and accel

Step up distance when < 40 km/h and restore

Revert

When using 1 bar distance:  Slow the car down earlier and more aggressively  (#18)

* Change one bar braking profile to 3 bars

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* fake lead car vars

* fake lead vars

* Auto Distance Bar Working - tuning values

* Logging to log.txt

* Override hysteresis for one bar follow

* Only set override when decelerating

* syntax error fix for override flag

* Switch to 1.8s for softer braking

* Revert "Switch to 1.8s for softer braking"

This reverts commit d53623062ef814509db925fe4e624c3ae8aff1f1.

* Disable OTA update for safety

* Physical LKAS button disables OP steer and shows dashed lines on HUD (#19)

* Change one bar braking profile to 3 bars

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* fake lead car vars

* fake lead vars

* Auto Distance Bar Working - tuning values

* Logging to log.txt

* Override hysteresis for one bar follow

* Only set override when decelerating

* syntax error fix for override flag

* Switch to 1.8s for softer braking

* Disable LKAS

* Apply Steer = 0 when user presses LKAS button

* Add Lkas button

* Add LK mode to HUDD data object

* Add Dashed Lanes to HUD

* Adjust HDD object

* return LKAS var in CarState

* Return LK var to CS

* Syntax error fix

* Update carcontroller.py

* testing hud object hardcoded hud_lanes and lkMode

* Restore accidentally deleted steer command

* Update carcontroller.py

* Update carcontroller.py

* Don't show solid lanes if OP steering disabled

* Dashed lines fix during engagement

eliminate steering alert when lkas disabled

lkas button logic cleanup

Reverse the dashed-lane indicator

No steering alert if LKAS disabled

revert Alert - LKAS errors during steer disable

Disable audible alert when steering disabled

Delete CS.aEgo < -0.5 override condition

* Remove chime disable when steering overriden

One bar profile change to 1.8s if < 65 kph

Simplified

chime instead of beep disable for LK override

* Adjust BRAKE_STOPPING_TARGET to 0.25

Keeps the brake pump from going crazy at a stop

* Add relative velocity to auto distance for 1 bar setting (#26)

* CAMERA_OFFSET = 0.08

* Revert Cost_long to comma value of 0.1

* Do not override to 1.8s when accel from stop

* Update logic for override distance bars

* Override distance when < 65kph and v_rel not > 5

* Use rel acceleration to reset to 1 bar

* Use vRel

* Update planner.py

* v_lead - vEgo > 1

* vLead - vEgo = -1

* vLead-vEgo < -1.5

* Cleanup Arne's code for distance

* vLead - vEgo < 1.25

* Back to vLead - vEgo < -1

* Disable OP steering and audio alarm when blinkers on (#28)

* LKAS disable when blinkers are on

* Update carcontroller.py

* Update carcontroller.py

* fix syntax error

* Critical alarm if cruise disengages while braking (#32)

* Update pathplanner.py

* Loud alert in case cruise disables when braking

* re-add if statement on speed for loud alert

* Update interface.py

* increase stopping distance to car by 1.5m

* Increase stopping distance to 2m

* Revert CAMERA_OFFSET to 0.06 (comma default)

* Lane width reduction to 2.85m

* Reduce tailgating for one bar distance at surface street speeds & code cleanup (#43)

* Gernby's Lane width filter fix (#41)

* Fix lane width filtering

* Fixed lane width filtering

* CAMERA_OFFSET = 0.08

* Minimum distance for one bar distance setting

* Don't tailgate at slow speeds with 1 bar distance

* x_lead < 5 only

* x_lead < 5 syntax fix

* self.v_rel < -1 or (x_lead < 10 and self.v_rel >= -1 and self.v_rel < 1)

* Tail gating auto distance change

* x_lead < 7.5 and self.v_rel >= -1 and self.v_rel < 0.2

* self.lastTR > 0 re-adding reinitialization

* Revert "Gernby's Lane width filter fix (#41)"

This reverts commit d081cfd8a05d2eb32e0148d477c806e65662dea7.

* Increase min distance to 10m for auto distance

* Auto distance code cleanup

* Add lead car fast approaching autodistance

* Auto distance Code cleanup

* Don't re-initialize MPC if already initialized

* self.lastTR != instead of >

* Initialize TR = 1.8

* include if statements vs just assigning boolean

* switch to 1 and 0 for TRUE AND FALSE

* Revert "switch to 1 and 0 for TRUE AND FALSE"

This reverts commit 58dcf718cdc3fca636229bf29942669670cb4487.

* Revert "include if statements vs just assigning boolean"

This reverts commit da7b5fa5088d62e78ba57d9e4c01e89160e77b9e.

* Revert "Initialize TR = 1.8"

This reverts commit f9c2571faeb0acaab818bcff146a2a397c0f07ff.

* Initialize TR=1.8 inside override loop

* Cleanup TR assignment for override loop

* Code Cleanup

* Syntax error

* Syntax error

* if statements for autodistance vars

* tr-last assignment indent

* CS.readdistancelines assignment to self.tr_last

* remove else MPC init

* Flatten out elif ladder for autodistance

* Removed shrinking_fast stopping for now

Braking is too sudden with 3 bar distance when radar detects car.  Shrinking gap takes care of this with 2 bar distance.

* Code Cleanup

* Revert CAMERA_OFFSET to Comma default of 0.06

* Merge Gernby's Resonant Steering (#51)

* Learn_angle_steer min max increased to +/-7 degs

* Increase min one bar distance to 12m for autodist

* Merge Gernby's Feed-Forward-Accel-Rate Branch (#49)

* Fixed feed-forward to consider steer_offset

* fixed a small oops on types

* Testing strategies for zero-crossing

* Moved angle stat collection to latcontrol.py

* First version that runs

* added outbound interface for feed-forward table

* First working

* Added more metrics

* Adjusted parameter timing

* performance tweaks

* Cleanup

* untested tweaks

* minor tweaks

* many untested changes

* going the other way with some things...

* Best yet

* cleaned up personalized "stuff"

* more cleanup for general use

* untested: minor adjustment to further reduce noise

* Fixed defect in desired angle interpolation

* some cleanup

* reverted change to Ki

* Reverted changes to manager.py

* Added steering rate consideration to latcontrol

* cleaned up for PR

* Fixed merge

* Testing approach when desired angle close to actual

* trying rate-based feed-forward

* added self-tuning parms for rate and angle FF

* fixed trim logic, and persisted to flash

* working amazingly well

* decreased time lapse for angle-based FF adjust

* many tweaks, self-tuning is a bitch

* simulteneous dual mode feedforward working very well

* added angular accelleration limit

* added super awesome angular accel limit

* non-specific save

* switching directions again

* oops

* ugly code with amazing results

* awesome, but untested after some cleanup

* more cleanup

* cleanup of the cleanup?  Need to test

* works amazingly well ... big O face

* cleanup

* I wish git was batter for cleanup

* removed Steer Offset because Pilot no likey

* Increase tailgating 1 bar resume to 0.5 m/s

* Gernby's resonant steering v2

* fixed an oops for non-bosch hondas

* CAMERA_OFFSET = 0.08

* More conservative tailgating distance and resume

* More conservative auto-distance for 1 bar setting

* Revert CAMERA_OFFSET to 0.06

* Revert auto-distance for 1 bar distance setting

* Revert "Merge Gernby's Resonant Steering" (#53)

* Revert "Revert auto-distance for 1 bar distance setting"

This reverts commit b7e5fb5.

* Revert "Revert CAMERA_OFFSET to 0.06"

This reverts commit 05cf21d.

* Revert "Merge Gernby's Resonant Steering (#51)"

This reverts commit d35aa19.

* better crowned road centering: learn_angle +/-7

* Implement csouers 67-70% charging to preserve batt

* slightly harder braking when tailgating

* x_lead < 5 or (x_lead < 17.5 and self.v_rel < 0.5)

* Proper alerts on Eon and disable flashing HUD alert when blinkers on or LKAS off (#63)

* Disable steer alert when LKAS off

* Display steering unavailable on Eon when LKAS off

* Revert chime disable in favor of new method

* x_lead < 6 or (x_lead < 17.5 and self.v_rel < 0.5)

* logic correction on HUD alert

* blinkers on disables HUD alarm

* Add Manual Steering alert for LKAS Off mode

* Call manual steering alert when LKAS off

* Call blinkers alert when blinkers on

* Add blinkers alert

* Adjust Blinkers alert logic to include LKAS mode

* Fix blinker logic

* Add new steering required alerts to capnp

* Trace LKAS / LDW error

* Disable hud alert when LKAS off or blinkers on

* Disable HUD alerts if LKAS off or blinkers on

* Disable other ACC alert if LKAS off or blinkers on

* Revert testing of steering required alert override

* Disable steer saturate alert if blinkers on or LKAS off

* Disable steer sat alert if LKAS off or blinkers on

* Revert steerSaturated logic

* disable steer limit alert when LKAS off or blinkers on

* Fix Syntax error

* Revert  steerLimit alert disable

* Disable steerSat alert when blinkers on or LKAS off

* Revert stopping distance to default for pedal lurch

* Re-intro 2m stopping distance

* x_lead = 6

* Revert "Implement csouers 67-70% charging to preserve batt"

This reverts commit e3249be.

* Merge with latest kegman-devel without Gernby's FF steer (#72)

* Honda Pilot PID Tuning

* Adjustable Follow Distance w/HUD (#12)

* TR

* TR

* TR

* TR

* TR

* TR

* TR

* TR

* remove readdistancelines - causes boot error

* copying cereal

* arne's cereal

* HUD distance lines display

* capnpp add

* revert

* revert

* Set ACC HUD to KPH

* Test - set HUD_ACC distance line to 2

* revert cruise_kph

LKAS error

* TR

* TR

* TR

* TR

* TR

* TR

* TR

* TR

* remove readdistancelines - causes boot error

* copying cereal

* HUD distance lines display

* capnpp add

* revert

* revert

* Set ACC HUD to KPH

* Test - set HUD_ACC distance line to 2

* revert cruise_kph

LKAS error

* Remove custom btn var line

could be crashing the code when button pressed

* HUD distance lines

* HUD distance lines

* passing CS.CP.readdistancelines

* Hardcode hud object dist_lines var

* Initializes CS.readdistancelines before passing to hud obj

* use integer read_distance_lines instead

* Add HUD_DISTANCE_3 for horizontal HUD bars on dash

* Default to 2 bars follow distance (1.8s)

* Code Cleanup for Distance Adjustment

Cleanup

Cleanup

Cleanup

Cleanup

Cleanup

Cleanup

Cleanup

Cleanup

Cleanup

* Implement csouers 67-70% charging to preserve batt

* Auto-distance at surface street speeds

Override short distance setting when slow

Override distance when slow

Override distance if slow

Override distance when slow

Override distance when slow

Increase follow distance when below 60 kph

Lead car and rel. velocity to distance override

Override distance bars

revert

Override and restore dist based on speed and accel

Step up distance when < 40 km/h and restore

Revert

When using 1 bar distance:  Slow the car down earlier and more aggressively  (#18)

* Change one bar braking profile to 3 bars

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* fake lead car vars

* fake lead vars

* Auto Distance Bar Working - tuning values

* Logging to log.txt

* Override hysteresis for one bar follow

* Only set override when decelerating

* syntax error fix for override flag

* Switch to 1.8s for softer braking

* Revert "Switch to 1.8s for softer braking"

This reverts commit d53623062ef814509db925fe4e624c3ae8aff1f1.

* Disable OTA update for safety

* Physical LKAS button disables OP steer and shows dashed lines on HUD (#19)

* Change one bar braking profile to 3 bars

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* fake lead car vars

* fake lead vars

* Auto Distance Bar Working - tuning values

* Logging to log.txt

* Override hysteresis for one bar follow

* Only set override when decelerating

* syntax error fix for override flag

* Switch to 1.8s for softer braking

* Disable LKAS

* Apply Steer = 0 when user presses LKAS button

* Add Lkas button

* Add LK mode to HUDD data object

* Add Dashed Lanes to HUD

* Adjust HDD object

* return LKAS var in CarState

* Return LK var to CS

* Syntax error fix

* Update carcontroller.py

* testing hud object hardcoded hud_lanes and lkMode

* Restore accidentally deleted steer command

* Update carcontroller.py

* Update carcontroller.py

* Don't show solid lanes if OP steering disabled

* Dashed lines fix during engagement

eliminate steering alert when lkas disabled

lkas button logic cleanup

Reverse the dashed-lane indicator

No steering alert if LKAS disabled

revert Alert - LKAS errors during steer disable

Disable audible alert when steering disabled

Delete CS.aEgo < -0.5 override condition

* Remove chime disable when steering overriden

One bar profile change to 1.8s if < 65 kph

Simplified

chime instead of beep disable for LK override

* Adjust BRAKE_STOPPING_TARGET to 0.25

Keeps the brake pump from going crazy at a stop

* Add relative velocity to auto distance for 1 bar setting (#26)

* CAMERA_OFFSET = 0.08

* Revert Cost_long to comma value of 0.1

* Do not override to 1.8s when accel from stop

* Update logic for override distance bars

* Override distance when < 65kph and v_rel not > 5

* Use rel acceleration to reset to 1 bar

* Use vRel

* Update planner.py

* v_lead - vEgo > 1

* vLead - vEgo = -1

* vLead-vEgo < -1.5

* Cleanup Arne's code for distance

* vLead - vEgo < 1.25

* Back to vLead - vEgo < -1

* Disable OP steering and audio alarm when blinkers on (#28)

* LKAS disable when blinkers are on

* Update carcontroller.py

* Update carcontroller.py

* fix syntax error

* Critical alarm if cruise disengages while braking (#32)

* Update pathplanner.py

* Loud alert in case cruise disables when braking

* re-add if statement on speed for loud alert

* Update interface.py

* increase stopping distance to car by 1.5m

* Increase stopping distance to 2m

* Revert CAMERA_OFFSET to 0.06 (comma default)

* Lane width reduction to 2.85m

* Reduce tailgating for one bar distance at surface street speeds & code cleanup (#43)

* Gernby's Lane width filter fix (#41)

* Fix lane width filtering

* Fixed lane width filtering

* CAMERA_OFFSET = 0.08

* Minimum distance for one bar distance setting

* Don't tailgate at slow speeds with 1 bar distance

* x_lead < 5 only

* x_lead < 5 syntax fix

* self.v_rel < -1 or (x_lead < 10 and self.v_rel >= -1 and self.v_rel < 1)

* Tail gating auto distance change

* x_lead < 7.5 and self.v_rel >= -1 and self.v_rel < 0.2

* self.lastTR > 0 re-adding reinitialization

* Revert "Gernby's Lane width filter fix (#41)"

This reverts commit d081cfd8a05d2eb32e0148d477c806e65662dea7.

* Increase min distance to 10m for auto distance

* Auto distance code cleanup

* Add lead car fast approaching autodistance

* Auto distance Code cleanup

* Don't re-initialize MPC if already initialized

* self.lastTR != instead of >

* Initialize TR = 1.8

* include if statements vs just assigning boolean

* switch to 1 and 0 for TRUE AND FALSE

* Revert "switch to 1 and 0 for TRUE AND FALSE"

This reverts commit 58dcf718cdc3fca636229bf29942669670cb4487.

* Revert "include if statements vs just assigning boolean"

This reverts commit da7b5fa5088d62e78ba57d9e4c01e89160e77b9e.

* Revert "Initialize TR = 1.8"

This reverts commit f9c2571faeb0acaab818bcff146a2a397c0f07ff.

* Initialize TR=1.8 inside override loop

* Cleanup TR assignment for override loop

* Code Cleanup

* Syntax error

* Syntax error

* if statements for autodistance vars

* tr-last assignment indent

* CS.readdistancelines assignment to self.tr_last

* remove else MPC init

* Flatten out elif ladder for autodistance

* Removed shrinking_fast stopping for now

Braking is too sudden with 3 bar distance when radar detects car.  Shrinking gap takes care of this with 2 bar distance.

* Code Cleanup

* Revert CAMERA_OFFSET to Comma default of 0.06

* Merge Gernby's Resonant Steering (#51)

* Learn_angle_steer min max increased to +/-7 degs

* Increase min one bar distance to 12m for autodist

* Merge Gernby's Feed-Forward-Accel-Rate Branch (#49)

* Fixed feed-forward to consider steer_offset

* fixed a small oops on types

* Testing strategies for zero-crossing

* Moved angle stat collection to latcontrol.py

* First version that runs

* added outbound interface for feed-forward table

* First working

* Added more metrics

* Adjusted parameter timing

* performance tweaks

* Cleanup

* untested tweaks

* minor tweaks

* many untested changes

* going the other way with some things...

* Best yet

* cleaned up personalized "stuff"

* more cleanup for general use

* untested: minor adjustment to further reduce noise

* Fixed defect in desired angle interpolation

* some cleanup

* reverted change to Ki

* Reverted changes to manager.py

* Added steering rate consideration to latcontrol

* cleaned up for PR

* Fixed merge

* Testing approach when desired angle close to actual

* trying rate-based feed-forward

* added self-tuning parms for rate and angle FF

* fixed trim logic, and persisted to flash

* working amazingly well

* decreased time lapse for angle-based FF adjust

* many tweaks, self-tuning is a bitch

* simulteneous dual mode feedforward working very well

* added angular accelleration limit

* added super awesome angular accel limit

* non-specific save

* switching directions again

* oops

* ugly code with amazing results

* awesome, but untested after some cleanup

* more cleanup

* cleanup of the cleanup?  Need to test

* works amazingly well ... big O face

* cleanup

* I wish git was batter for cleanup

* removed Steer Offset because Pilot no likey

* Increase tailgating 1 bar resume to 0.5 m/s

* Gernby's resonant steering v2

* fixed an oops for non-bosch hondas

* CAMERA_OFFSET = 0.08

* More conservative tailgating distance and resume

* More conservative auto-distance for 1 bar setting

* Revert CAMERA_OFFSET to 0.06

* Revert auto-distance for 1 bar distance setting

* Revert "Merge Gernby's Resonant Steering" (#53)

* Revert "Revert auto-distance for 1 bar distance setting"

This reverts commit b7e5fb5.

* Revert "Revert CAMERA_OFFSET to 0.06"

This reverts commit 05cf21d.

* Revert "Merge Gernby's Resonant Steering (#51)"

This reverts commit d35aa19.

* better crowned road centering: learn_angle +/-7

* slightly harder braking when tailgating

* Merge Gernby's Resonant FF steering (#62)

* Fixed feed-forward to consider steer_offset

* fixed a small oops on types

* Testing strategies for zero-crossing

* Moved angle stat collection to latcontrol.py

* First version that runs

* added outbound interface for feed-forward table

* First working

* Added more metrics

* Adjusted parameter timing

* performance tweaks

* Cleanup

* untested tweaks

* minor tweaks

* many untested changes

* going the other way with some things...

* Best yet

* cleaned up personalized "stuff"

* more cleanup for general use

* untested: minor adjustment to further reduce noise

* Fixed defect in desired angle interpolation

* some cleanup

* reverted change to Ki

* Reverted changes to manager.py

* Added steering rate consideration to latcontrol

* cleaned up for PR

* Fixed merge

* Testing approach when desired angle close to actual

* trying rate-based feed-forward

* added self-tuning parms for rate and angle FF

* fixed trim logic, and persisted to flash

* working amazingly well

* decreased time lapse for angle-based FF adjust

* many tweaks, self-tuning is a bitch

* simulteneous dual mode feedforward working very well

* added angular accelleration limit

* added super awesome angular accel limit

* non-specific save

* switching directions again

* oops

* ugly code with amazing results

* awesome, but untested after some cleanup

* more cleanup

* cleanup of the cleanup?  Need to test

* works amazingly well ... big O face

* cleanup

* I wish git was batter for cleanup

* hopefully proper merge of merged fixes of merge

* fixed an oops for non-bosch hondas

* added steer rate to future state calculation

* added actual acceleration to future projected state

* fixed projected angle error for PIF

* untested ...

* added comments

* Boost kF for pilot by 30%

* x_lead < 7.5 or (x_lead < 17.5 and self.v_rel < 1)

* x_lead < 7.5 or (x_lead < 17.5 and self.v_rel < 0.5)

* if x_lead < 5 or (x_lead < 17.5 and self.v_rel < 0.5)

* Boost KF for all

* x_lead < 17.5 and self.v_rel < 0.75

* x_lead < 5 or (x_lead < 17.5 and self.v_rel < 0.5)

* more conservative kF for Civics

* Civic kF 0.00003 - Pilot kF 0.000078

* Revert Civic kF values to default

* x_lead < 6 or (x_lead < 17.5 and self.v_rel < 0.5)

* Proper alerts on Eon and disable flashing HUD alert when blinkers on or LKAS off (#63)

* Disable steer alert when LKAS off

* Display steering unavailable on Eon when LKAS off

* Revert chime disable in favor of new method

* x_lead < 6 or (x_lead < 17.5 and self.v_rel < 0.5)

* logic correction on HUD alert

* blinkers on disables HUD alarm

* Add Manual Steering alert for LKAS Off mode

* Call manual steering alert when LKAS off

* Call blinkers alert when blinkers on

* Add blinkers alert

* Adjust Blinkers alert logic to include LKAS mode

* Fix blinker logic

* Add new steering required alerts to capnp

* Trace LKAS / LDW error

* Disable hud alert when LKAS off or blinkers on

* Disable HUD alerts if LKAS off or blinkers on

* Disable other ACC alert if LKAS off or blinkers on

* Revert testing of steering required alert override

* Disable steer saturate alert if blinkers on or LKAS off

* Disable steer sat alert if LKAS off or blinkers on

* Revert steerSaturated logic

* disable steer limit alert when LKAS off or blinkers on

* Fix Syntax error

* Revert  steerLimit alert disable

* Disable steerSat alert when blinkers on or LKAS off

* Revert stopping distance to default for pedal lurch

* Re-intro 2m stopping distance

* Reduce steerKpV for Civics by 20% for Gernby FF steering

* Reduce kPV for civic v2

* Reduce Civic kP further

* Merge Gernby's latest Feed forward resonant (#68)

* Fixed feed-forward to consider steer_offset

* fixed a small oops on types

* Testing strategies for zero-crossing

* Moved angle stat collection to latcontrol.py

* First version that runs

* added outbound interface for feed-forward table

* First working

* Added more metrics

* Adjusted parameter timing

* performance tweaks

* Cleanup

* untested tweaks

* minor tweaks

* many untested changes

* going the other way with some things...

* Best yet

* cleaned up personalized "stuff"

* more cleanup for general use

* untested: minor adjustment to further reduce noise

* Fixed defect in desired angle interpolation

* some cleanup

* reverted change to Ki

* Reverted changes to manager.py

* Added steering rate consideration to latcontrol

* cleaned up for PR

* Fixed merge

* Testing approach when desired angle close to actual

* trying rate-based feed-forward

* added self-tuning parms for rate and angle FF

* fixed trim logic, and persisted to flash

* working amazingly well

* decreased time lapse for angle-based FF adjust

* many tweaks, self-tuning is a bitch

* simulteneous dual mode feedforward working very well

* added angular accelleration limit

* added super awesome angular accel limit

* non-specific save

* switching directions again

* oops

* ugly code with amazing results

* awesome, but untested after some cleanup

* more cleanup

* cleanup of the cleanup?  Need to test

* works amazingly well ... big O face

* cleanup

* I wish git was batter for cleanup

* hopefully proper merge of merged fixes of merge

* fixed an oops for non-bosch hondas

* added steer rate to future state calculation

* added actual acceleration to future projected state

* fixed projected angle error for PIF

* untested ...

* added comments

* completely UNtested

* untested merge

* battling shitty git

* git is sucking giant monkey balls

* Trying to figure out what git did...

* still trying to un-git myself

* Finally got it fixed, works awesome!

* Hopefully not corrupted by git

* hopefully fixed white space corruption

* working again, hopefully resolved git issue

* Revert "Implement csouers 67-70% charging to preserve batt"

This reverts commit e3249be.

* Revert "Implement csouers 67-70% charging to preserve batt"

This reverts commit e3249be.

* Prevent lurching from stop with Comma Pedal

* Prevent lurching from stop with Comma Pedal 2

* Dev UI from P Lee

* delete print() statements

* LaC.lateral_error = 1.0 * np.clip.....

* Pedal lurch prevention v4

* Increase 1 bar city tailing distance by 1 m

* More conservative braking in city for 1 and 2 bar distance

* Revert "LaC.lateral_error = 1.0 * np.clip....."

This reverts commit 82b9ff9.

* Pedal lurch prevention v5

* 1 or 2 bar:  more conservative braking

* Revert "Reduce Civic kP further"

This reverts commit af9bb3f.

* Revert "Reduce kPV for civic v2"

This reverts commit 84e25f3.

* Revert "Reduce steerKpV for Civics by 20% for Gernby FF steering"

This reverts commit 083741a.

* Revert "Revert Civic kF values to default"

This reverts commit 2d5ee5e.

* Revert "Civic kF 0.00003 - Pilot kF 0.000078"

This reverts commit c9434f3.

* Revert "more conservative kF for Civics"

This reverts commit 61613c2.

* Revert "Boost KF for all"

This reverts commit 8858f51.

* Revert "Boost kF for pilot by 30%"

This reverts commit d7220b2.

* Revert "Merge Gernby's Resonant FF steering (#62)"

This reverts commit 234e57d.

* Merge with kegman-gernbyFFsteer-latest (#69)

* Honda Pilot PID Tuning

* Adjustable Follow Distance w/HUD (#12)

* TR

* TR

* TR

* TR

* TR

* TR

* TR

* TR

* remove readdistancelines - causes boot error

* copying cereal

* arne's cereal

* HUD distance lines display

* capnpp add

* revert

* revert

* Set ACC HUD to KPH

* Test - set HUD_ACC distance line to 2

* revert cruise_kph

LKAS error

* TR

* TR

* TR

* TR

* TR

* TR

* TR

* TR

* remove readdistancelines - causes boot error

* copying cereal

* HUD distance lines display

* capnpp add

* revert

* revert

* Set ACC HUD to KPH

* Test - set HUD_ACC distance line to 2

* revert cruise_kph

LKAS error

* Remove custom btn var line

could be crashing the code when button pressed

* HUD distance lines

* HUD distance lines

* passing CS.CP.readdistancelines

* Hardcode hud object dist_lines var

* Initializes CS.readdistancelines before passing to hud obj

* use integer read_distance_lines instead

* Add HUD_DISTANCE_3 for horizontal HUD bars on dash

* Default to 2 bars follow distance (1.8s)

* Code Cleanup for Distance Adjustment

Cleanup

Cleanup

Cleanup

Cleanup

Cleanup

Cleanup

Cleanup

Cleanup

Cleanup

* Auto-distance at surface street speeds

Override short distance setting when slow

Override distance when slow

Override distance if slow

Override distance when slow

Override distance when slow

Increase follow distance when below 60 kph

Lead car and rel. velocity to distance override

Override distance bars

revert

Override and restore dist based on speed and accel

Step up distance when < 40 km/h and restore

Revert

When using 1 bar distance:  Slow the car down earlier and more aggressively  (#18)

* Change one bar braking profile to 3 bars

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* fake lead car vars

* fake lead vars

* Auto Distance Bar Working - tuning values

* Logging to log.txt

* Override hysteresis for one bar follow

* Only set override when decelerating

* syntax error fix for override flag

* Switch to 1.8s for softer braking

* Revert "Switch to 1.8s for softer braking"

This reverts commit d53623062ef814509db925fe4e624c3ae8aff1f1.

* Disable OTA update for safety

* Physical LKAS button disables OP steer and shows dashed lines on HUD (#19)

* Change one bar braking profile to 3 bars

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* Update planner.py

* fake lead car vars

* fake lead vars

* Auto Distance Bar Working - tuning values

* Logging to log.txt

* Override hysteresis for one bar follow

* Only set override when decelerating

* syntax error fix for override flag

* Switch to 1.8s for softer braking

* Disable LKAS

* Apply Steer = 0 when user presses LKAS button

* Add Lkas button

* Add LK mode to HUDD data object

* Add Dashed Lanes to HUD

* Adjust HDD object

* return LKAS var in CarState

* Return LK var to CS

* Syntax error fix

* Update carcontroller.py

* testing hud object hardcoded hud_lanes and lkMode

* Restore accidentally deleted steer command

* Update carcontroller.py

* Update carcontroller.py

* Don't show solid lanes if OP steering disabled

* Dashed lines fix during engagement

eliminate steering alert when lkas disabled

lkas button logic cleanup

Reverse the dashed-lane indicator

No steering alert if LKAS disabled

revert Alert - LKAS errors during steer disable

Disable audible alert when steering disabled

Delete CS.aEgo < -0.5 override condition

* Remove chime disable when steering overriden

One bar profile change to 1.8s if < 65 kph

Simplified

chime instead of beep disable for LK override

* Adjust BRAKE_STOPPING_TARGET to 0.25

Keeps the brake pump from going crazy at a stop

* Add relative velocity to auto distance for 1 bar setting (#26)

* CAMERA_OFFSET = 0.08

* Revert Cost_long to comma value of 0.1

* Do not override to 1.8s when accel from stop

* Update logic for override distance bars

* Override distance when < 65kph and v_rel not > 5

* Use rel acceleration to reset to 1 bar

* Use vRel

* Update planner.py

* v_lead - vEgo > 1

* vLead - vEgo = -1

* vLead-vEgo < -1.5

* Cleanup Arne's code for distance

* vLead - vEgo < 1.25

* Back to vLead - vEgo < -1

* Disable OP steering and audio alarm when blinkers on (#28)

* LKAS disable when blinkers are on

* Update carcontroller.py

* Update carcontroller.py

* fix syntax error

* Critical alarm if cruise disengages while braking (#32)

* Update pathplanner.py

* Loud alert in case cruise disables when braking

* re-add if statement on speed for loud alert

* Update interface.py

* increase stopping distance to car by 1.5m

* Increase stopping distance to 2m

* Revert CAMERA_OFFSET to 0.06 (comma default)

* Lane width reduction to 2.85m

* Reduce tailgating for one bar distance at surface street speeds & code cleanup (#43)

* Gernby's Lane width filter fix (#41)

* Fix lane width filtering

* Fixed lane width filtering

* CAMERA_OFFSET = 0.08

* Minimum distance for one bar distance setting

* Don't tailgate at slow speeds with 1 bar distance

* x_lead < 5 only

* x_lead < 5 syntax fix

* self.v_rel < -1 or (x_lead < 10 and self.v_rel >= -1 and self.v_rel < 1)

* Tail gating auto distance change

* x_lead < 7.5 and self.v_rel >= -1 and self.v_rel < 0.2

* self.lastTR > 0 re-adding reinitialization

* Revert "Gernby's Lane width filter fix (#41)"

This reverts commit d081cfd8a05d2eb32e0148d477c806e65662dea7.

* Increase min distance to 10m for auto distance

* Auto distance code cleanup

* Add lead car fast approaching autodistance

* Auto distance Code cleanup

* Don't re-initialize MPC if already initialized

* self.lastTR != instead of >

* Initialize TR = 1.8

* include if statements vs just assigning boolean

* switch to 1 and 0 for TRUE AND FALSE

* Revert "switch to 1 and 0 for TRUE AND FALSE"

This reverts commit 58dcf718cdc3fca636229bf29942669670cb4487.

* Revert "include if statements vs just assigning boolean"

This reverts commit da7b5fa5088d62e78ba57d9e4c01e89160e77b9e.

* Revert "Initialize TR = 1.8"

This reverts commit f9c2571faeb0acaab818bcff146a2a397c0f07ff.

* Initialize TR=1.8 inside override loop

* Cleanup TR assignment for override loop

* Code Cleanup

* Syntax error

* Syntax error

* if statements for autodistance vars

* tr-last assignment indent

* CS.readdistancelines assignment to self.tr_last

* remove else MPC init

* Flatten out elif ladder for autodistance

* Removed shrinking_fast stopping for now

Braking is too sudden with 3 bar distance when radar detects car.  Shrinking gap takes care of this with 2 bar distance.

* Code Cleanup

* Revert CAMERA_OFFSET to Comma default of 0.06

* Merge Gernby's Resonant Steering (#51)

* Learn_angle_steer min max increased to +/-7 degs

* Increase min one bar distance to 12m for autodist

* Merge Gernby's Feed-Forward-Accel-Rate Branch (#49)

* Fixed feed-forward to consider steer_offset

* fixed a small oops on types

* Testing strategies for zero-crossing

* Moved angle stat collection to latcontrol.py

* First version that runs

* added outbound interface for feed-forward table

* First working

* Added more metrics

* Adjusted parameter timing

* performance tweaks

* Cleanup

* untested tweaks

* minor tweaks

* many untested changes

* going the other way with some things...

* Best yet

* cleaned up personalized "stuff"

* more cleanup for general use

* untested: minor adjustment to further reduce noise

* Fixed defect in desired angle interpolation

* some cleanup

* reverted change to Ki

* Reverted changes to manager.py

* Added steering rate consideration to latcontrol

* cleaned up for PR

* Fixed merge

* Testing approach when desired angle close to actual

* trying rate-based feed-forward

* added self-tuning parms for rate and angle FF

* fixed trim logic, and persisted to flash

* working amazingly well

* decreased time lapse for angle-based FF adjust

* many tweaks, self-tuning is a bitch

* simulteneous dual mode feedforward working very well

* added angular accelleration limit

* added super awesome angular accel limit

* non-specific save

* switching directions again

* oops

* ugly code with amazing results

* awesome, but untested after some cleanup

* more cleanup

* cleanup of the cleanup?  Need to test

* works amazingly well ... big O face

* cleanup

* I wish git was batter for cleanup

* removed Steer Offset because Pilot no likey

* Increase tailgating 1 bar resume to 0.5 m/s

* Gernby's resonant steering v2

* fixed an oops for non-bosch hondas

* CAMERA_OFFSET = 0.08

* More conservative tailgating distance and resume

* More conservative auto-distance for 1 bar setting

* Revert CAMERA_OFFSET to 0.06

* Revert auto-distance for 1 bar distance setting

* Revert "Merge Gernby's Resonant Steering" (#53)

* Revert "Revert auto-distance for 1 bar distance setting"

This reverts commit b7e5fb5.

* Revert "Revert CAMERA_OFFSET to 0.06"

This reverts commit 05cf21d.

* Revert "Merge Gernby's Resonant Steering (#51)"

This reverts commit d35aa19.

* better crowned road centering: learn_angle +/-7

* Implement csouers 67-70% charging to preserve batt

* slightly harder braking when tailgating

* x_lead < 5 or (x_lead < 17.5 and self.v_rel < 0.5)

* Proper alerts on Eon and disable flashing HUD alert when blinkers on or LKAS off (#63)

* Disable steer alert when LKAS off

* Display steering unavailable on Eon when LKAS off

* Revert chime disable in favor of new method

* x_lead < 6 or (x_lead < 17.5 and self.v_rel < 0.5)

* logic correction on HUD alert

* blinkers on disables HUD alarm

* Add Manual Steering alert for LKAS Off mode

* Call manual steering alert when LKAS off

* Call blinkers alert when blinkers on

* Add blinkers alert

* Adjust Blinkers alert logic to include LKAS mode

* Fix blinker logic

* Add new steering required alerts to capnp

* Trace LKAS / LDW error

* Disable hud alert when LKAS off or blinkers on

* Disable HUD alerts if LKAS off or blinkers on

* Disable other ACC alert if LKAS off or blinkers on

* Revert testing of steering required alert override

* Disable steer saturate alert if blinkers on or LKAS off

* Disable steer sat alert if LKAS off or blinkers on

* Revert steerSaturated logic

* disable steer limit alert when LKAS off or blinkers on

* Fix Syntax error

* Revert  steerLimit alert disable

* Disable steerSat alert when blinkers on or LKAS off

* Revert stopping distance to default for pedal lurch

* Re-intro 2m stopping distance

* x_lead = 6

* Merge Gernby's latest Feed forward resonant (#68)

* Fixed feed-forward to consider steer_offset

* fixed a small oops on types

* Testing strategies for zero-crossing

* Moved angle stat collection to latcontrol.py

* First version that runs

* added outbound interface for feed-forward table

* First working

* Added more metrics

* Adjusted parameter timing

* performance tweaks

* Cleanup

* untested tweaks

* minor tweaks

* many untested changes

* going the other way with some things...

* Best yet

* cleaned up personalized "stuff"

* more cleanup for general use

* untested: minor adjustment to further reduce noise

* Fixed defect in desired angle interpolation

* some cleanup

* reverted change to Ki

* Reverted changes to manager.py

* Added steering rate consideration to latcontrol

* cleaned up for PR

* Fixed merge

* Testing approach when desired angle close to actual

* trying rate-based feed-forward

* added self-tuning parms for rate and angle FF

* fixed trim logic, and persisted to flash

* working amazingly well

* decreased time lapse for angle-based FF adjust

* many tweaks, self-tuning is a bitch

* simulteneous dual mode feedforward working very well

* added angular accelleration limit

* added super awesome angular accel limit

* non-specific save

* switching directions again

* oops

* ugly code with amazing results

* awesome, but untested after some cleanup

* more cleanup

* cleanup of the cleanup?  Need to test

* works amazingly well ... big O face

* cleanup

* I wish git was batter for cleanup

* hopefully proper merge of merged fixes of merge

* fixed an oops for non-bosch hondas

* added steer rate to future state calculation

* added actual acceleration to future projected state

* fixed projected angle error for PIF

* untested ...

* added comments

* completely UNtested

* untested merge

* battling shitty git

* git is sucking giant monkey balls

* Trying to figure out what git did...

* still trying to un-git myself

* Finally got it fixed, works awesome!

* Hopefully not corrupted by git

* hopefully fixed white space corruption

* working again, hopefully resolved git issue

* Revert "Implement csouers 67-70% charging to preserve batt"

This reverts commit e3249be.

* Revert "Merge with kegman-gernbyFFsteer-latest (#69)"

This reverts commit 99031cf.

* Pedal lurch prevention v6

* Pedal lurch prevention v7

* Revert visiond back to 0.5.6

* Revert to 0.5.6 visiond

* Brake sooner if approaching a car fast

* Pedal lurch prevention v8 - almost there

* Even more conservative braking for 2 and 3 bars

* Pedal lurch prevention v9

* 1 bar and 2 bar tuning

* syntax error 1 bar / 2 bar tuning

* Revert "syntax error 1 bar / 2 bar tuning"

This reverts commit eb4bbe1.

* Revert "1 bar and 2 bar tuning"

This reverts commit 663ece1.

* Revert "Even more conservative braking for 2 and 3 bars"

This reverts commit 4bb4cf9.

* Revert "Brake sooner if approaching a car fast"

This reverts commit 1ff5347.

* Revert "1 or 2 bar:  more conservative braking"

This reverts commit 0959a0b.

* Revert "More conservative braking in city for 1 and 2 bar distance"

This reverts commit dbae46d.

* Pedal lurch prevention v10

* Lurch prevention v11

* BRAKE_STOPPING_TARGET reduced to 0.1 from 0.25

* visiond-wiggly 0.5.4

* visiond 0.5.6

* Fix comma pedal grinding noise when braking

commit 5dd7fb3dbe01c8854eb4784080cf7108fc970cb9
Date:   Wed Dec 19 19:34:55 2018 -0500

    Revert "BRAKE_STOPPING_TARGET reduced to 0.1 from 0.25"

    This reverts commit b0d75c5.

commit f5cec844471cd4eb650450d88e6118ff818d5edb
Date:   Wed Dec 19 19:34:16 2018 -0500

    Revert "BRAKE_STOPPING_TARGET to 0.0"

    This reverts commit 7a6b3a67826dd1fd5b942b06eb7c1d15b0f3c23a.

commit 1e07b857438aaf983e36f45aa3653ab61aadc17f
Date:   Wed Dec 19 00:38:09 2018 -0500

    Update carstate.py

commit f6b3ba0696f5192167780579a9daa05a39bd30e2
Date:   Wed Dec 19 00:33:54 2018 -0500

    Pedal grind further Code cleanup

commit 0afbcd38396ffd863d963194dda8ddb8e9f2bf02
Date:   Wed Dec 19 00:16:15 2018 -0500

    Pedal Grinding further code cleanup

commit 33b4ce0e38441463846d593861183f96a154e11e
Date:   Tue Dec 18 16:48:03 2018 -0500

    Grinding noise code cleanup

commit f6edcfacd22fe503330adcd0bef2b9aa9a742838
Date:   Tue Dec 18 16:19:25 2018 -0500

    Fix Syntax error

commit 2a74863cf4e6d93e3b390d41fa427243f28ebdfa
Date:   Tue Dec 18 16:12:46 2018 -0500

    Pedal noise mitigation v1

commit 7a6b3a67826dd1fd5b942b06eb7c1d15b0f3c23a
Date:   Tue Dec 18 10:53:11 2018 -0500

    BRAKE_STOPPING_TARGET to 0.0

* Revert "Fix comma pedal grinding noise when braking"

This reverts commit 454b918.

* Fix Pedal Grinding noise (#70)

* BRAKE_STOPPING_TARGET to 0.0

* Pedal noise mitigation v1

* Fix Syntax error

* Grinding noise code cleanup

* Pedal Grinding further code cleanup

* Pedal grind further Code cleanup

* Update carstate.py

* Revert "BRAKE_STOPPING_TARGET to 0.0"

This reverts commit 7a6b3a67826dd1fd5b942b06eb7c1d15b0f3c23a.

* Revert "BRAKE_STOPPING_TARGET reduced to 0.1 from 0.25"

This reverts commit b0d75c5.

* Add visiond.057

* Revert "Merge branch 'kegman-devel' of https://github.com/kegman/openpilot into kegman-devel"

This reverts commit 612695b, reversing
changes made to 6531ed2.

* Fix Comma Pedal Grinding sound when braking

commit 5dd7fb3dbe01c8854eb4784080cf7108fc970cb9
Date:   Wed Dec 19 19:34:55 2018 -0500

    Revert "BRAKE_STOPPING_TARGET reduced to 0.1 from 0.25"

    This reverts commit b0d75c5.

commit f5cec844471cd4eb650450d88e6118ff818d5edb
Date:   Wed Dec 19 19:34:16 2018 -0500

    Revert "BRAKE_STOPPING_TARGET to 0.0"

    This reverts commit 7a6b3a67826dd1fd5b942b06eb7c1d15b0f3c23a.

commit 1e07b857438aaf983e36f45aa3653ab61aadc17f
Date:   Wed Dec 19 00:38:09 2018 -0500

    Update carstate.py

commit f6b3ba0696f5192167780579a9daa05a39bd30e2
Date:   Wed Dec 19 00:33:54 2018 -0500

    Pedal grind further Code cleanup

commit 0afbcd38396ffd863d963194dda8ddb8e9f2bf02
Date:   Wed Dec 19 00:16:15 2018 -0500

    Pedal Grinding further code cleanup

commit 33b4ce0e38441463846d593861183f96a154e11e
Date:   Tue Dec 18 16:48:03 2018 -0500

    Grinding noise code cleanup

commit f6edcfacd22fe503330adcd0bef2b9aa9a742838
Date:   Tue Dec 18 16:19:25 2018 -0500

    Fix Syntax error

commit 2a74863cf4e6d93e3b390d41fa427243f28ebdfa
Date:   Tue Dec 18 16:12:46 2018 -0500

    Pedal noise mitigation v1

commit 7a6b3a67826dd1fd5b942b06eb7c1d15b0f3c23a
Date:   Tue Dec 18 10:53:11 2018 -0500

    BRAKE_STOPPING_TARGET to 0.0

* Simplified pedal grinding noise fix code

* Grinding noise fix applied only to Honda Pilots

* Indent fix

* self.CP

* Tweak braking for 1 / 2 bar distance and Fix Grinding for Pilot only (#71)

* Tweaks to 1 and 2 bar distance braking

* Code cleanup

* Apply grinding fix for Honda Pilot only

* Indent fix

* self.CP

* Revert "Merge branch 'kegman-gernbyFFsteer-latest' into kegman-devel"

This reverts commit 78fa3e4, reversing
changes made to 0171235.
  • Loading branch information
kegman committed Dec 22, 2018
1 parent 37c68ec commit 7293dc7
Show file tree
Hide file tree
Showing 8 changed files with 522 additions and 36 deletions.
7 changes: 6 additions & 1 deletion selfdrive/car/honda/carstate.py
Original file line number Diff line number Diff line change
Expand Up @@ -278,7 +278,6 @@ def update(self, cp, cp_cam):

self.steer_torque_driver = cp.vl["STEER_STATUS"]['STEER_TORQUE_SENSOR']
self.steer_override = abs(self.steer_torque_driver) > STEER_THRESHOLD[self.CP.carFingerprint]

self.brake_switch = cp.vl["POWERTRAIN_DATA"]['BRAKE_SWITCH']

if self.CP.radarOffCan:
Expand All @@ -305,13 +304,19 @@ def update(self, cp, cp_cam):
self.brake_pressed = cp.vl["POWERTRAIN_DATA"]['BRAKE_PRESSED'] or \
(self.brake_switch and self.brake_switch_prev and \
cp.ts["POWERTRAIN_DATA"]['BRAKE_SWITCH'] != self.brake_switch_ts)

self.brake_switch_prev = self.brake_switch
self.brake_switch_ts = cp.ts["POWERTRAIN_DATA"]['BRAKE_SWITCH']

self.user_brake = cp.vl["VSA_STATUS"]['USER_BRAKE']
self.pcm_acc_status = cp.vl["POWERTRAIN_DATA"]['ACC_STATUS']
self.hud_lead = cp.vl["ACC_HUD"]['HUD_LEAD']

# gets rid of Pedal Grinding noise for certain models
if self.CP.carFingerprint in (CAR.PILOT, CAR.PILOT_2019):
if self.user_brake > 0.05:
self.brake_pressed = 1

# when user presses distance button on steering wheel
if self.cruise_setting == 3:
if cp.vl["SCM_BUTTONS"]["CRUISE_SETTING"] == 0:
Expand Down
14 changes: 12 additions & 2 deletions selfdrive/car/honda/interface.py
Original file line number Diff line number Diff line change
Expand Up @@ -361,8 +361,18 @@ def get_params(candidate, fingerprint):
ret.steerMaxBP = [0.] # m/s
ret.steerMaxV = [1.] # max steer allowed

ret.gasMaxBP = [0.] # m/s
ret.gasMaxV = [0.6] if ret.enableGasInterceptor else [0.] # max gas allowed
# prevent lurching when resuming
if ret.enableGasInterceptor:
ret.gasMaxBP = [0., 8, 35]
ret.gasMaxV = [0.2, 0.6, 0.6]
ret.longitudinalKpBP = [0., 5., 35.]
ret.longitudinalKpV = [1.2, 0.8, 0.5]
else:
ret.gasMaxBP = [0.] # m/s
ret.gasMaxV = [0.] # max gas allowed

#ret.gasMaxBP = [0.] # m/s
#ret.gasMaxV = [0.6] if ret.enableGasInterceptor else [0.] # max gas allowed
ret.brakeMaxBP = [5., 20.] # m/s
ret.brakeMaxV = [1., 0.8] # max brake allowed

Expand Down
25 changes: 16 additions & 9 deletions selfdrive/controls/lib/planner.py
Original file line number Diff line number Diff line change
Expand Up @@ -235,7 +235,7 @@ def update(self, CS, lead, v_cruise_setpoint):

# Defining some variables to make the logic more human readable for auto distance override below
# Is the car tailgating the lead car?
if x_lead < 6 or (x_lead < 17.5 and self.v_rel < 0.5):
if x_lead < 7 or (x_lead < 17.5 and self.v_rel < 0.5):
self.tailgating = 1
else:
self.tailgating = 0
Expand All @@ -256,21 +256,28 @@ def update(self, CS, lead, v_cruise_setpoint):
if CS.readdistancelines == 1:
# If one bar distance, auto set to 2 bar distance under current conditions to prevent rear ending lead car
if self.street_speed and (self.lead_car_gap_shrinking or self.tailgating):
TR=2.0
if self.lastTR != 0:
self.libmpc.init(MPC_COST_LONG.TTC, 0.0875, MPC_COST_LONG.ACCELERATION, MPC_COST_LONG.JERK)
self.lastTR = 0
TR=2.1
if self.lastTR != -CS.readdistancelines:
self.libmpc.init(MPC_COST_LONG.TTC, 0.0850, MPC_COST_LONG.ACCELERATION, MPC_COST_LONG.JERK)
self.lastTR = -CS.readdistancelines
else:
TR=0.9 # 10m at 40km/hr
if CS.readdistancelines != self.lastTR:
self.libmpc.init(MPC_COST_LONG.TTC, 1.0, MPC_COST_LONG.ACCELERATION, MPC_COST_LONG.JERK)
self.lastTR = CS.readdistancelines

elif CS.readdistancelines == 2:
TR=1.8 # 20m at 40km/hr
if CS.readdistancelines != self.lastTR:
self.libmpc.init(MPC_COST_LONG.TTC, 0.1, MPC_COST_LONG.ACCELERATION, MPC_COST_LONG.JERK)
self.lastTR = CS.readdistancelines
# Tweaks braking for 2 bar distance (default comma - because sometimes it stops too close to the lead car)
if self.street_speed and (self.lead_car_gap_shrinking or self.tailgating):
TR=2.0
if self.lastTR != -CS.readdistancelines:
self.libmpc.init(MPC_COST_LONG.TTC, 0.0875, MPC_COST_LONG.ACCELERATION, MPC_COST_LONG.JERK)
self.lastTR = -CS.readdistancelines
else:
TR=1.8 # 20m at 40km/hr
if CS.readdistancelines != self.lastTR:
self.libmpc.init(MPC_COST_LONG.TTC, 0.1, MPC_COST_LONG.ACCELERATION, MPC_COST_LONG.JERK)
self.lastTR = CS.readdistancelines

elif CS.readdistancelines == 3:
TR=2.7 # 30m at 40km/hr
Expand Down
Loading

0 comments on commit 7293dc7

Please sign in to comment.