Waffles is Steel Ridge's second iteration of swerve drive.
Swerve drive is an omnidirection drive train where all wheels are independently steered and driven. This gives us a multitude of advantages over a simple tank drive, listed below:
- More accurate positioning when lining up to score.
- Independent rotating of each wheel, which allows us to spin and move separately, allowing for greater movement freedom.
- More traction with the ground than a mechanum drive train. (Can't be pushed around as easily)
- Flexing on other teams.
Waffles contains the following:
- Fused CANcoders for precise steering
- Continuous wrap for optimized steering
- Motion Magic + torque control to increase traction
- Buttons for switching between robot-centric and field-relative drive
- PathPlanner support (includes Choreo configuration)
- NavX simulation
- Full simulation support for all modes
- Auto Trajectories Visualized in Shuffleboard
- Shuffleboard and Elastic Support
Our swerve drive is comprised of the following:
- 4 swerve modules in each corner of the base frame
- 2 motors in each modules (8 motors total)
- 1 for steering the wheel (the "steer motor")
- 1 for driving/spinning the wheel (the "drive motor")
- 2 motors in each modules (8 motors total)
We use Falcon 500s for each motor, as well as 1 CANcoder for each module.
Inside the robot, each Falcon motor is controlled using a TalonFX motor controller, using Phoenix 6 Pro improvement.
The TalonFX responsible for controlling the wheel's velocity uses Motion Magic with torque control, allowing precise acceleration to prevent "wheel slip" when accelerating.
The TalonFX responible for rotating the wheel uses Motion Magic with voltage control. We also fuse the module's CANcoder with the Talon's sensor, allowing us to compesnate for play in the gear system.