Sysid help

Help, I have to configure our swerve drivetrain variables using the wpilib SysId but I have no idea how to use it. I didn’t find much tutorials online and I didn’t really understand the page on WPILib docs.

SysId is primarily intended for identification of differential drive and appendage models. It’s not designed for swerve drive. You can abuse the tool to get some of the information you want though.

You can characterize the two degrees of freedom of a swerve drive module by locking the module rotation with a piece of wood or something for the linear test, and spinning the module in place for the rotation test.

Note that swerve module system ID is different from whole-drivetrain system ID.

Ok, thanks. Would you recommend tuning the variables by hand or using SysId to model it?

Easiest would be by hand.

Ok, got it. Thanks for the help!

Wait, can you elaborate on how to lock the modules with wood. Sorry this is my first time.

Teams have done this before, but I don’t know exactly where the wood goes because I haven’t worked with swerve hardware personally.

Ohhhh, that makes more sense now, I couldn’t visualize what it mean’t without a picture. Thanks!

Sorry, I have one more question. When I run the system identification, what project parameters do I use? Do I still use the Drivetrain or do I use General mechanism.

Since you’re not driving two differential drive sides, use general mechanism.

Ok thanks

Its been a while, and I finally am getting around to characterizing the swerve. I just want to make sure I understand this correctly: first, I put the angle motors in sysid and characterize those using general mechanism. Then, I put the translational motors in sys id and characterize those by locking the modules with wood and also running general mechanism. Then I can put those feed forward values into my code.

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