Closed hellschwalex closed 9 months ago
Compared so far:
Why are 2 and 3 so similar:
Since a braking PID controller with I and D parts will badly interact with the throttlePID controller ( and since braking is alot simpler considering that the vehicle model already de-accelerates alot and stable when no throttle is used) a simple P-Controller will be used for braking. This will increase the general velocity controlling alot, while hardly interacting with the already well tuned throttlePID. Since a P-Controller brakes only proportionally to the (negative) velocity error with maximum braking being = 1, the Kp of this controller can be tuned to get the velocity error point where we stop fully braking. E.G. if we want to slow down braking at v_err = -3 m/s (around 10km/h over target velocity) we just set Kp = 1 / v_err. (while braking = 0 at target velocity and below).
For now the negative-throttle solution is implemented, as it has the most predictable outcome while highly improving braking times without interfering with other controllers since there are none (as a braking-PID would do).
Description
Since the current implementation of the velocity controller only includes a PID for throttling ( accelerating the car) and uses the included frictions of the simulation to brake, which is not good enough to control the velocity especially on jumping to lower max_velocities, BRAKING-functionality needs to be included.
Implement new Controller for the brake-inputs of carla:
Definition of Done