Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding a speed-based scaling for steering angle to prevent jerkiness #34844

Closed

Conversation

devtekve
Copy link
Contributor

Similar to how we do it in the latcontrol_torque. I am in the process of porting my IONIQ5 PE (2025) and this change has improved the jerkiness experienced at low speeds where the model is more prone to be twitching left and right

@devtekve
Copy link
Contributor Author

Because my car is not upstreamed yet, I am hesitant to provide a route with it so I will probably need a volunteer angle car that suffers from jerkiness at low speeds

@morrislee
Copy link
Contributor

I feel like this could be the wrong approach, which car are you trying to port? This sounds like a non-linear control issues like GM based cars, it has sigmoid based feed forward

@devtekve
Copy link
Contributor Author

I feel like this could be the wrong approach, which car are you trying to port? This sounds like a non-linear control issues like GM based cars, it has sigmoid based feed forward

Thanks for the feedback! I am trying to port a Hyundai with LFA2 which are angle based. I was under the impression other angle based vehicles also suffered from the jittery at low speeds though and saw the torque controller had a similar approach.

The issues i am noticing is that the model output is translated too quickly and too strongly to the car, and the model has a very tiny oscillation from left to right on the path, as if it was shaking. This shake is basically being passed to the controls so even tho the car goes in a straight line, you can see the steering wheel jittering a lot until the model stabilizes. This is why I thought maybe it’s better if we dampen the output a bit at low speeds,

I am very new at controls and tuning so this really needs to be thoroughly tested and validated so I really appreciate your feedback here !

@sshane
Copy link
Contributor

sshane commented Mar 12, 2025

I agree, this doesn't fully seem like the right approach. We have angle rate limits you can manipulate inside each port. As for the model, we'd like to avoid nerfing rate limits well under an acceptable jerk just to mask this issue. The model should get better at this in the future as well

This also sounds like the port might not be fully understood, you can check your steering response to see if it is overshooting with PlotJuggler.

@sshane sshane closed this Mar 12, 2025
@devtekve
Copy link
Contributor Author

Thanks @sshane ! I am glad I opened this PR to have this feedback, I will remove it from my code and see if the other tweaks I've applied help correct it or if I need to dig somewhere else

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants