From 3fb1b9602bfe266e6070b40743f7a1f3003f9a8f Mon Sep 17 00:00:00 2001 From: Zachary Orr <516458+ZachOrr@users.noreply.github.com> Date: Sun, 20 Feb 2022 23:16:51 -0500 Subject: [PATCH] Another subsystem shuffle --- src/main/java/frc/robot/RobotContainer.java | 3 +-- .../java/frc/robot/commands/auto/Pos3RightFiveBall.java | 6 +++--- src/main/java/frc/robot/subsystems/Delivery.java | 3 ++- .../robot/{ => subsystems}/hardware/ColorSensorREV.java | 7 ++++--- .../robot/{ => subsystems}/hardware/ColorSensorTCS.java | 7 ++++--- .../java/frc/robot/{ => subsystems}/hardware/PixyCam.java | 2 +- .../{ => subsystems}/hardware/PowerDistributionHub.java | 2 +- .../frc/robot/{ => subsystems}/hardware/TCSSensor.java | 2 +- .../subsystems/{ => hardware}/TimeOfFlightSensor.java | 2 +- .../{ => subsystems}/hardware/interfaces/ColorSensor.java | 2 +- 10 files changed, 19 insertions(+), 17 deletions(-) rename src/main/java/frc/robot/{ => subsystems}/hardware/ColorSensorREV.java (95%) rename src/main/java/frc/robot/{ => subsystems}/hardware/ColorSensorTCS.java (95%) rename src/main/java/frc/robot/{ => subsystems}/hardware/PixyCam.java (99%) rename src/main/java/frc/robot/{ => subsystems}/hardware/PowerDistributionHub.java (98%) rename src/main/java/frc/robot/{ => subsystems}/hardware/TCSSensor.java (99%) rename src/main/java/frc/robot/subsystems/{ => hardware}/TimeOfFlightSensor.java (96%) rename src/main/java/frc/robot/{ => subsystems}/hardware/interfaces/ColorSensor.java (85%) diff --git a/src/main/java/frc/robot/RobotContainer.java b/src/main/java/frc/robot/RobotContainer.java index 52c098ff..502831a1 100644 --- a/src/main/java/frc/robot/RobotContainer.java +++ b/src/main/java/frc/robot/RobotContainer.java @@ -21,6 +21,7 @@ import frc.robot.commands.shooter.RunKicker; import frc.robot.commands.shooter.StartShooter; import frc.robot.subsystems.*; +import frc.robot.subsystems.hardware.PixyCam; public class RobotContainer { private final XboxController driverController = new XboxController(0); @@ -40,8 +41,6 @@ public class RobotContainer { private final Drivetrain drivetrain = new Drivetrain(pigeon); private final Heading heading = new Heading(drivetrain::getGyroscopeRotation, drivetrain::isMoving); - private final TimeOfFlightSensor timeOfFlight = new TimeOfFlightSensor(); - private final SendableChooser autonChooser = new SendableChooser<>(); public RobotContainer() { diff --git a/src/main/java/frc/robot/commands/auto/Pos3RightFiveBall.java b/src/main/java/frc/robot/commands/auto/Pos3RightFiveBall.java index 2a3fa688..a72b8e07 100644 --- a/src/main/java/frc/robot/commands/auto/Pos3RightFiveBall.java +++ b/src/main/java/frc/robot/commands/auto/Pos3RightFiveBall.java @@ -40,15 +40,15 @@ public Pos3RightFiveBall(AutoDrive autoDrive, Delivery delivery, Drivetrain driv new AutoStartIntake(intake), new ProfiledPointToPointCommand(Constants.Auto.kBallR3Pickup, drivetrain::getTranslation, 2.5, 0.05, Units.inchesToMeters(120), 12, autoDrive, heading).withTimeout(2) ), - new AutoKickerCommand(kicker, 0).withTimeout(0.5), + new AutoKickerCommand(kicker, 0).withTimeout(0.5), new ParallelCommandGroup( new ProfiledPointToPointCommand(Constants.Auto.kBallR2Pickup, drivetrain::getTranslation, 3.0, 0.05, Units.inchesToMeters(120), 12, autoDrive, heading).withTimeout(3), new AutoStartDelivery(delivery).withTimeout(0.75) - ), + ), new AutoKickerCommand(kicker, 0).withTimeout(0.5), new ProfiledPointToPointCommand(Constants.Auto.kBallR2ShootPosition, drivetrain::getTranslation, 3.0, 0.05, Units.inchesToMeters(120), 15, autoDrive, heading).withTimeout(1), new ParallelCommandGroup( - new AutoKickerCommand(kicker, 0).withTimeout(1.5), + new AutoKickerCommand(kicker, 0).withTimeout(1.5), new AutoStartDelivery(delivery).withTimeout(1.5) ), new WaitCommand(5), diff --git a/src/main/java/frc/robot/subsystems/Delivery.java b/src/main/java/frc/robot/subsystems/Delivery.java index ad8f928c..41c17fe9 100644 --- a/src/main/java/frc/robot/subsystems/Delivery.java +++ b/src/main/java/frc/robot/subsystems/Delivery.java @@ -7,6 +7,7 @@ import edu.wpi.first.wpilibj2.command.SubsystemBase; import frc.robot.Constants; import frc.robot.nerdyfiles.utilities.CTREUtils; +import frc.robot.subsystems.hardware.ColorSensorTCS; /** * Subsystem for the delivery mechanism @@ -21,7 +22,7 @@ public static enum Direction { } private final TalonFX motor = new TalonFX(Constants.DELIVERY_MOTOR_ID); - + private final ColorSensorTCS sensor = new ColorSensorTCS(I2C.Port.kMXP); diff --git a/src/main/java/frc/robot/hardware/ColorSensorREV.java b/src/main/java/frc/robot/subsystems/hardware/ColorSensorREV.java similarity index 95% rename from src/main/java/frc/robot/hardware/ColorSensorREV.java rename to src/main/java/frc/robot/subsystems/hardware/ColorSensorREV.java index 584b6aa7..7c83970d 100644 --- a/src/main/java/frc/robot/hardware/ColorSensorREV.java +++ b/src/main/java/frc/robot/subsystems/hardware/ColorSensorREV.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems; +package frc.robot.subsystems.hardware; import com.revrobotics.ColorSensorV3; import com.revrobotics.ColorMatchResult; @@ -7,12 +7,13 @@ import edu.wpi.first.wpilibj.util.Color; import edu.wpi.first.wpilibj2.command.SubsystemBase; import frc.robot.Constants.BallColor; +import frc.robot.subsystems.hardware.interfaces.ColorSensor; /** * Subsystem for the REV Robotics Color Sensor V3. Plugs in to the I2C port. - * + * * @author Michael Francis - * + * * @apiNote https://github.com/REVrobotics/Color-Sensor-v3-Examples/tree/master/Java */ public class ColorSensorREV extends SubsystemBase implements ColorSensor { diff --git a/src/main/java/frc/robot/hardware/ColorSensorTCS.java b/src/main/java/frc/robot/subsystems/hardware/ColorSensorTCS.java similarity index 95% rename from src/main/java/frc/robot/hardware/ColorSensorTCS.java rename to src/main/java/frc/robot/subsystems/hardware/ColorSensorTCS.java index 948a7866..5eb5570d 100644 --- a/src/main/java/frc/robot/hardware/ColorSensorTCS.java +++ b/src/main/java/frc/robot/subsystems/hardware/ColorSensorTCS.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems; +package frc.robot.subsystems.hardware; import com.revrobotics.ColorMatchResult; import com.revrobotics.ColorMatch; @@ -6,10 +6,11 @@ import edu.wpi.first.wpilibj.util.Color; import edu.wpi.first.wpilibj2.command.SubsystemBase; import frc.robot.Constants.BallColor; +import frc.robot.subsystems.hardware.interfaces.ColorSensor; /** * Subsystem for the TCS34275 color sensor. Plugs in to the I2C port. Based on {@link ColorSensorREV} - * + * * @author Michael Francis */ public class ColorSensorTCS extends SubsystemBase implements ColorSensor { @@ -74,7 +75,7 @@ public BallColor getColor() { public boolean seesBall() { /** * Luminance max threshold - * + * * This is a terrible way to go about this. If we can find a better way to do this, such as * using a Time of Flight sensor instead (there is code in the 2020 repo), it would be much * better. The current solution works, but it's a very sketchy solution. diff --git a/src/main/java/frc/robot/hardware/PixyCam.java b/src/main/java/frc/robot/subsystems/hardware/PixyCam.java similarity index 99% rename from src/main/java/frc/robot/hardware/PixyCam.java rename to src/main/java/frc/robot/subsystems/hardware/PixyCam.java index 5a7f4e05..4761469f 100644 --- a/src/main/java/frc/robot/hardware/PixyCam.java +++ b/src/main/java/frc/robot/subsystems/hardware/PixyCam.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems; +package frc.robot.subsystems.hardware; import edu.wpi.first.wpilibj.shuffleboard.*; import edu.wpi.first.wpilibj2.command.SubsystemBase; diff --git a/src/main/java/frc/robot/hardware/PowerDistributionHub.java b/src/main/java/frc/robot/subsystems/hardware/PowerDistributionHub.java similarity index 98% rename from src/main/java/frc/robot/hardware/PowerDistributionHub.java rename to src/main/java/frc/robot/subsystems/hardware/PowerDistributionHub.java index 0d66eab7..44f3a8e0 100644 --- a/src/main/java/frc/robot/hardware/PowerDistributionHub.java +++ b/src/main/java/frc/robot/subsystems/hardware/PowerDistributionHub.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems; +package frc.robot.subsystems.hardware; import edu.wpi.first.wpilibj.PowerDistribution; import edu.wpi.first.wpilibj.PowerDistribution.ModuleType; diff --git a/src/main/java/frc/robot/hardware/TCSSensor.java b/src/main/java/frc/robot/subsystems/hardware/TCSSensor.java similarity index 99% rename from src/main/java/frc/robot/hardware/TCSSensor.java rename to src/main/java/frc/robot/subsystems/hardware/TCSSensor.java index 39bc687e..eaefc30c 100644 --- a/src/main/java/frc/robot/hardware/TCSSensor.java +++ b/src/main/java/frc/robot/subsystems/hardware/TCSSensor.java @@ -1,4 +1,4 @@ -package frc.robot.hardware; +package frc.robot.subsystems.hardware; import edu.wpi.first.wpilibj.I2C; import edu.wpi.first.wpilibj.util.Color; diff --git a/src/main/java/frc/robot/subsystems/TimeOfFlightSensor.java b/src/main/java/frc/robot/subsystems/hardware/TimeOfFlightSensor.java similarity index 96% rename from src/main/java/frc/robot/subsystems/TimeOfFlightSensor.java rename to src/main/java/frc/robot/subsystems/hardware/TimeOfFlightSensor.java index 97262bf2..034201c6 100644 --- a/src/main/java/frc/robot/subsystems/TimeOfFlightSensor.java +++ b/src/main/java/frc/robot/subsystems/hardware/TimeOfFlightSensor.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems; +package frc.robot.subsystems.hardware; import com.playingwithfusion.TimeOfFlight; import com.playingwithfusion.TimeOfFlight.Status; diff --git a/src/main/java/frc/robot/hardware/interfaces/ColorSensor.java b/src/main/java/frc/robot/subsystems/hardware/interfaces/ColorSensor.java similarity index 85% rename from src/main/java/frc/robot/hardware/interfaces/ColorSensor.java rename to src/main/java/frc/robot/subsystems/hardware/interfaces/ColorSensor.java index 813e0bc9..bb8d2c6f 100644 --- a/src/main/java/frc/robot/hardware/interfaces/ColorSensor.java +++ b/src/main/java/frc/robot/subsystems/hardware/interfaces/ColorSensor.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems; +package frc.robot.subsystems.hardware.interfaces; import frc.robot.Constants.BallColor;