From ec44dd2d27907aaf73ec4c03846ad836397a446f Mon Sep 17 00:00:00 2001 From: Cayden Brackett Date: Fri, 20 Dec 2024 15:59:22 -0500 Subject: [PATCH] Coded Shooter.java --- .../frc/robot/constants/ShooterConstants.java | 6 ++++ .../java/frc/robot/subsystems/Drivetrain.java | 7 ++-- .../java/frc/robot/subsystems/Shooter.java | 32 +++++++++++++++++++ 3 files changed, 43 insertions(+), 2 deletions(-) create mode 100644 src/main/java/frc/robot/constants/ShooterConstants.java create mode 100644 src/main/java/frc/robot/subsystems/Shooter.java diff --git a/src/main/java/frc/robot/constants/ShooterConstants.java b/src/main/java/frc/robot/constants/ShooterConstants.java new file mode 100644 index 0000000..b9ab163 --- /dev/null +++ b/src/main/java/frc/robot/constants/ShooterConstants.java @@ -0,0 +1,6 @@ +package frc.robot.constants; + +public class ShooterConstants { + public static final int K1MotorPWM = 0; + public static final int K2MotorPWM = 0; +} diff --git a/src/main/java/frc/robot/subsystems/Drivetrain.java b/src/main/java/frc/robot/subsystems/Drivetrain.java index d167462..8b2cfcc 100644 --- a/src/main/java/frc/robot/subsystems/Drivetrain.java +++ b/src/main/java/frc/robot/subsystems/Drivetrain.java @@ -5,6 +5,7 @@ import java.util.function.DoubleSupplier; import com.revrobotics.CANSparkMax; import com.revrobotics.CANSparkMaxLowLevel.MotorType; +import edu.wpi.first.wpilibj.Encoder; import edu.wpi.first.wpilibj.drive.DifferentialDrive; import edu.wpi.first.wpilibj.motorcontrol.MotorController; import edu.wpi.first.wpilibj2.command.Command; @@ -16,7 +17,8 @@ public class Drivetrain extends SubsystemBase{ private MotorController rightFront; private MotorController rightRear; - private DifferentialDrive drive; + private DifferentialDrive drive;; + private Drivetrain() { leftFront = new CANSparkMax(DrivetrainConstants.kLeftFrontID, MotorType.kBrushless); @@ -29,7 +31,8 @@ public class Drivetrain extends SubsystemBase{ rightFront.setInverted(true); - drive = new DifferentialDrive(leftFront, rightFront); + drive = new DifferentialDrive(leftFront, rightFront); + Encoder Encoder = new Encoder(0,1); } public Command driveArcade(DoubleSupplier xSpeed, DoubleSupplier zRotation) { return run (() -> { diff --git a/src/main/java/frc/robot/subsystems/Shooter.java b/src/main/java/frc/robot/subsystems/Shooter.java new file mode 100644 index 0000000..aa8b39c --- /dev/null +++ b/src/main/java/frc/robot/subsystems/Shooter.java @@ -0,0 +1,32 @@ +package frc.robot.subsystems; + + +import java.util.function.DoubleSupplier; + +import com.ctre.phoenix.motorcontrol.can.WPI_VictorSPX; + +import edu.wpi.first.wpilibj2.command.Command; +import edu.wpi.first.wpilibj2.command.SubsystemBase; +import frc.robot.constants.ShooterConstants; + +public class Shooter extends SubsystemBase{ + private WPI_VictorSPX motor1; + private WPI_VictorSPX motor2; + + public Shooter() { + motor1 = new WPI_VictorSPX(ShooterConstants.K1MotorPWM); + motor2 = new WPI_VictorSPX(ShooterConstants.K2MotorPWM); + + motor1.follow(motor2); + } + public Command setSpeed(DoubleSupplier speed) { + //sets the motors speed + return run(() -> { + motor1.set(speed.getAsDouble()); + }); + } + public Command stop() { + //stops the motors + return setSpeed(() -> 0); + } +}