Team 4265 The Secret City Wildbots is proud to present our new two-speed swerve design and 2021 robot “Mando". Check out our reveal video:
At the beginning of the season we decided to make a new robot that is optimized for both the Infinite Recharge at Home challenges (hyperdrive, galactic search, and autonav) and as a technology development platform for future seasons. Mando is 24” x 24” x 25” and weighs 70.5 pounds.
The defining aspect of our robot is its drivetrain – a two-speed swerve drive. We began our venture into swerve drives in the 2019 offseason, and machined modified mk.2 modules to fit our custom 5” pneumatic wheels. After having promising results at the 2020 Arkansas regional, which we were lucky enough to attend, and with a lot of time on our hands, we decided to continue to innovate on our swerve modules, implementing a shifting mechanism after three design iterations. The current design has free speeds of 8.38 ft/s in low gear, and 22.85 ft/s in high gear and a max empirical ground speed of 20.9 ft/s. The inspiration from 2910’s mk.2 modules is still clear; however, only the main pulley remains completely unmodified from the original mk.2 design in an attempt to reduce manufacturing time. Similarly, the modules use the same custom wheels and wheel mounts as our 2020 swerve, and are still compatible with mk.2 wheels and wheel mounts. The total module dimensions are 6.25” x 6.25” x 11.2”.
Sensor and Code integration:
Our swerve drive automatically handles failures and calibrations. If an azimuth module fails, we switch the motor to coast mode, disable the drive motor for the affected module, and remove the module from the robot pose calculations. To prevent the swerve modules from opposing each other, we slow down any module that is going against the others. We also can easily correct misaligned swerve modules by zeroing and recalibrating them from the dashboard (we are still working on integrating new absolute encoders to handle brown-out situations). Additionally, we assist the driver by locking the robot’s orientation at high speeds, which prevents the robot from drifting and helps when they go under the control panel. We also automatically control whether the swerve drive is in robot-oriented or field-oriented mode based on driver inputs and emergency overrides. Finally, we use customizable driver profiles so each driver can have personalized settings.
Each module shifts independently. We use 2 photointerrupters on each module to determine the real shifter state the robot is in and compare this state to our requested shifter state. Using this information, we can determine whether the robot is in high or low gear so that we can use the correct conversion factors. We can also compare the requested and actual shifter states to know when we are transitioning between gears, stutter the shifter if it gets stuck while transitioning, and detect any shifter failures. To estimate our pose, we fuse the sensor readings from the Falcon encoders, IMU, and Limelight. The pose is also used to latch the azimuth angles during deceleration to prevent the robot tipping from at high speeds.
We learned in the 2020 season some of the difficulties associated with fitting a full-width intake on a swerve drive, especially with limited drive tube space. This year we explored a four-bar design, allowing the intake to retract over the front modules and prevent balls from coming out the front of the robot. We have three powered 2” rollers and a smaller passive 0.625” roller above the top roller to block balls from being ejected out of the robot by the intake. The intake is powered by a Falcon 500 with a 5:1 Versa-Planetary gearbox with the bottom roller having an additional 1.5:1 pulley ratio to help pick up balls from the floor before being run over by the robot.
Robot reveal made by:
Adam, Alex, Amelie, Henri, Julianna, Tyler