A cool trick to improve swerve drive

hi, im nadav, captain of team EverGreen#7112, for the last year our programming crew was working hard on perfecting the controls on our swerve drive, weve developed a cool trick that we didnt see utilized in any of the articles or sample codes weve read.

better way to swerve.pdf (544.4 KB)

3 Likes

Hi Nadav,
Great work on developing this technique and writing it up! You may not have yet seen a similar technique where you scale your commanded magnitude by the cosine of the angle between the target and actual vectors. Does your approach with the dot product have different behavior than cosine scaling?

Either way, good for your team that y’all developed and derived this technique independently. That shows a focus on understanding the basis of your control systems beyond just replicating the resources you’ve found.

It seems the same. a \cdot b = |a||b|cos\theta.

The WPILib swerve examples implemented that during the 2024 beta.

3 Likes

Would love to see an example video illustrating the difference in the smoothness of driving (even in sim)

1 Like

Hi, its the same. Its how we implemented it in our code.

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.