/Charged-Up

Primary LanguageJavaOtherNOASSERTION

FRC Team 8033's 2023 code for the Charged Up game.

This project follows the standard WPIlib command-based structure of code. See RobotContainer.java for general integration and button bindings. Autos are created in the AutoChooser file. Logging is handled by the Logging Wrapper.

Subsystems

  • Swerve Drivetrain, based on 364lib. Contains code to integrate pose estimators, pathplanner auto, and generic driving commands.
  • Intake Subsystem, our ground cube intake. A simple piston and motor subsystem with command factory methods.
  • Roller Claw Grabber Subsystem, our old grabber mechanism that we ran at Central Valley Regional. This mechanism had problems with dropping cones so we swapped it for the Greybots Grabber for Monterey Bay Regional and Worlds.
  • Arm Subsystem, a wrist which the Roller Claw Grabber was mounted on. Removed along with the old grabber.
  • Greybots Grabber, our v2 grabber that we ran at MBR and Worlds. The mechanism had a pivoting second roller to allow intaking from the single substation. There are some jank falcon native unit setpoints in this subsystem, due to the very fast turnaround for the mechanism.
  • Elevator Subsystem, a GreyT cascading elevator which extended the grabber for scoring and substation intaking.
  • Routing Subsystem, a pair of routing wheels which help vector cubes from the ground intake to the grabber. Was built as its own subsystem because original plans for a cone ground intake involved using routing for orientation and/or orientation detection.
  • LED Subsystem, our leds along the superstructure of the robot. Indicates to the driver information about what piece we have collected and also look fabulous. Most of the color logic is in Robot Container.
  • Superstructure Subsystem, a coordination subsystem. In the future we shouldn't use this pattern and instead handle this logic in robot container. Main use was coordinating the intake extending with the elevator extending for auto scoring and collision prevention.
  • Apriltag Vision Subsystem and Tape Vision Subsystem manage collecting vision data and processing it into pose estimates. We never got the estimates from apriltags accurate enough to use in competition and never got the tape estimation working. This is an area of focus in our offseason, and we will likely switch from using Limelight 2+ hardware to custom hardware.

Credits: