You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
What's wrong?
Explain what exactly is incorrect and, ideally, what it could potentially be replaced with:
The Feedforward controller is implemented differently than the standard in Roadrunner and FTC/WPILib. Instead of using an open-loop controller, it appears the section suggests it is two feedback controllers. This, especially with the amount of noise produced by double differentiating encoder data to get to acceleration, will likely result in frustration to inexperienced teams and is a little ambiguous in discussions around pre-existing implementations.
Additionally, the output sum: output = F + k_v * current_velocity_error + K_A * current_acceleration_error has this F term that is not explained anywhere else.
I think simplifying the whole section effectively stating that velocity/acceleration control is asymptotically stable and therefore doesn't always need feedback. In addition, I think presenting the case that feedback isn't always needed and can sometimes make your system less stable, perhaps presenting a pro/cons table comparing feedforward and PID (while of course mentioning they can be used together)
Thank you for coming to my tech talk <3
The text was updated successfully, but these errors were encountered:
Where is there misleading or incorrect information?
Explain where it is, preferably including a link: https://gm0.org/en/latest/docs/software/concepts/control-loops.html#feedforward-pseudocode
What's wrong?
Explain what exactly is incorrect and, ideally, what it could potentially be replaced with:
The Feedforward controller is implemented differently than the standard in Roadrunner and FTC/WPILib. Instead of using an open-loop controller, it appears the section suggests it is two feedback controllers. This, especially with the amount of noise produced by double differentiating encoder data to get to acceleration, will likely result in frustration to inexperienced teams and is a little ambiguous in discussions around pre-existing implementations.
Additionally, the output sum:
output = F + k_v * current_velocity_error + K_A * current_acceleration_error
has this F term that is not explained anywhere else.I think simplifying the whole section effectively stating that velocity/acceleration control is asymptotically stable and therefore doesn't always need feedback. In addition, I think presenting the case that feedback isn't always needed and can sometimes make your system less stable, perhaps presenting a pro/cons table comparing feedforward and PID (while of course mentioning they can be used together)
Thank you for coming to my tech talk <3
The text was updated successfully, but these errors were encountered: