So if translating and rotating there is effectively a max speed for both based on what they are set. Is there a good way to determine that based on maxModuleSpeeds, driveBase, current Field Centric set speeds, etc.
I would image that the limitation will be traction, as when we were first testing our swerve bot on linoleum you could command rotate and translate all day, but it would barely turn. I would say you’d be better off testing it than estimating it.
I think I’m looking at something more like. I command it at ChassisSpeeds x, then the modules get set to those values (for the sake of simplicity assume instant). Those module states get converted back to chassisspeeds. Sort of thing. Because I can try to command it at max translation, max rotation all I want it won’t make it there mathematically.
Sounds like maybe toChassisSpeeds(SwerveModuleStates…) is what you’re looking for?
Performs forward kinematics to return the resulting chassis state from the given module states. This method is often used for odometry – determining the robot’s position on the field using data from the real-world speed and angle of each module on the robot.
Traction and also your C.O.G. you can’t just stop and turn suddenly if you are tall and top heavy but you can if you are shorter and light. There’s a ratio there of your mass and it’s placement to how quickly you can accel and decel as well.
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.