mirror of
https://github.com/sunnypilot/sunnypilot.git
synced 2026-02-19 14:43:57 +08:00
* get curvature from planner * no need to check active * remove that * remove self * liveParams not needed * cast * fix test bug * fixes * fix ui.py * fix radians * update refs * update refs * bump cereal * bump cereal Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
26 lines
688 B
Python
26 lines
688 B
Python
import math
|
|
from cereal import log
|
|
|
|
|
|
class LatControlAngle():
|
|
def __init__(self, CP):
|
|
pass
|
|
|
|
def reset(self):
|
|
pass
|
|
|
|
def update(self, active, CS, CP, VM, params, lat_plan):
|
|
angle_log = log.ControlsState.LateralAngleState.new_message()
|
|
|
|
if CS.vEgo < 0.3 or not active:
|
|
angle_log.active = False
|
|
angle_steers_des = float(CS.steeringAngleDeg)
|
|
else:
|
|
angle_log.active = True
|
|
angle_steers_des = math.degrees(VM.get_steer_from_curvature(-lat_plan.curvature, CS.vEgo))
|
|
angle_steers_des += params.angleOffsetDeg
|
|
|
|
angle_log.saturated = False
|
|
angle_log.steeringAngleDeg = angle_steers_des
|
|
return 0, float(angle_steers_des), angle_log
|