diff --git a/Robot2019/src/main/java/frc/robot/OI.java b/Robot2019/src/main/java/frc/robot/OI.java index 32224d5..f032efa 100644 --- a/Robot2019/src/main/java/frc/robot/OI.java +++ b/Robot2019/src/main/java/frc/robot/OI.java @@ -27,11 +27,11 @@ public class OI { Joystick rightJoy; Joystick manipulator; - JoystickButton leftSlowButton; - JoystickButton rightSlowButton; + JoystickButton leftSlowBtn; + JoystickButton rightSlowBtn; - JoystickButton cargoIn; - JoystickButton cargoOut; + JoystickButton cargoIntakeBtn; + JoystickButton cargoEjectBtn; JoystickButton toggleCameraBtn; @@ -43,15 +43,15 @@ public class OI { leftJoy = new Joystick(0); // TODO: set ports to correct values rightJoy = new Joystick(1); // TODO: set ports to correct values - leftSlowButton = new JoystickButton(leftJoy, 1); - leftSlowButton.whileHeld(new SlowDrive(SlowDrive.Side.LEFT)); - rightSlowButton = new JoystickButton(rightJoy, 1); - rightSlowButton.whileHeld(new SlowDrive(SlowDrive.Side.RIGHT)); + leftSlowBtn = new JoystickButton(leftJoy, 1); + leftSlowBtn.whileHeld(new SlowDrive(SlowDrive.Side.LEFT)); + rightSlowBtn = new JoystickButton(rightJoy, 1); + rightSlowBtn.whileHeld(new SlowDrive(SlowDrive.Side.RIGHT)); - cargoIn = new JoystickButton(manipulator, 0); - cargoIn.whenPressed(new IntakeCargo(cargo)); - cargoOut = new JoystickButton(manipulator, 1); - cargoOut.whenPressed(new EjectCargo(cargo)); + cargoIntakeBtn = new JoystickButton(manipulator, 0); + cargoIntakeBtn.whenPressed(new IntakeCargo(cargo)); + cargoEjectBtn = new JoystickButton(manipulator, 1); + cargoEjectBtn.whenPressed(new EjectCargo(cargo)); toggleCameraBtn = new JoystickButton(leftJoy, 2); toggleCameraBtn.whenPressed(new ToggleCamera(driveCamera, hatchCamera, cameraServer)); diff --git a/Robot2019/src/main/java/frc/robot/Robot.java b/Robot2019/src/main/java/frc/robot/Robot.java index 899bc7c..762018c 100644 --- a/Robot2019/src/main/java/frc/robot/Robot.java +++ b/Robot2019/src/main/java/frc/robot/Robot.java @@ -30,8 +30,9 @@ public void robotInit() { dt = new Drivetrain(RobotMap.leftMaster, RobotMap.leftSlave1, RobotMap.leftSlave2, RobotMap.rightMaster, RobotMap.rightSlave1, RobotMap.rightSlave2, oi.leftJoy, oi.rightJoy, RobotMap.leftEnc, RobotMap.rightEnc, RobotMap.gyro); - cargo = new Cargo(RobotMap.cargo, RobotMap.pdp); + cargo = new Cargo(RobotMap.cargoRoller, RobotMap.pdp); oi = new OI(cargo, RobotMap.driveCamera, RobotMap.hatchCamera, RobotMap.cameraServer); + chooser.setDefaultOption("Default Auto", new TeleopDrive(dt)); SmartDashboard.putData("Auto Mode", chooser); } diff --git a/Robot2019/src/main/java/frc/robot/RobotMap.java b/Robot2019/src/main/java/frc/robot/RobotMap.java index f5985f4..7c33020 100644 --- a/Robot2019/src/main/java/frc/robot/RobotMap.java +++ b/Robot2019/src/main/java/frc/robot/RobotMap.java @@ -31,7 +31,7 @@ public class RobotMap { static WPI_TalonSRX leftMaster, rightMaster; static WPI_VictorSPX leftSlave1, leftSlave2, rightSlave1, rightSlave2; - static VictorSP cargo; + static VictorSP cargoRoller; static Encoder leftEnc, rightEnc; static String driveMode; static AHRS gyro; @@ -51,7 +51,7 @@ public class RobotMap { rightSlave2 = createConfiguredVictor(7); // Initialize motors on the cargo mech - cargo = new VictorSP(4); // TODO: Set this to the actual correct values + cargoRoller = new VictorSP(0); leftEnc = new Encoder(new DigitalInput(0), new DigitalInput(1)); // TODO: set ports to correct values rightEnc = new Encoder(new DigitalInput(2), new DigitalInput(3)); // TODO: set ports to correct values diff --git a/Robot2019/src/main/java/frc/robot/commands/EjectCargo.java b/Robot2019/src/main/java/frc/robot/commands/EjectCargo.java index 2cdea12..9a7d088 100644 --- a/Robot2019/src/main/java/frc/robot/commands/EjectCargo.java +++ b/Robot2019/src/main/java/frc/robot/commands/EjectCargo.java @@ -12,7 +12,10 @@ import frc.robot.subsystems.Cargo; public class EjectCargo extends Command { - Timer tim; + + final double ejectDuration = 0.5; // seconds + + Timer timer; Cargo cargo; public EjectCargo(Cargo cargo) { @@ -22,19 +25,18 @@ public EjectCargo(Cargo cargo) { @Override protected void initialize() { - tim.reset(); - tim.start(); + timer.reset(); + timer.start(); } @Override protected void execute() { - cargo.runIntake(-1); - // TODO: Make sure this is correct direction + cargo.runEject(); } @Override protected boolean isFinished() { - return (tim.get() > 0.5); + return (timer.get() > ejectDuration); } @Override diff --git a/Robot2019/src/main/java/frc/robot/commands/IntakeCargo.java b/Robot2019/src/main/java/frc/robot/commands/IntakeCargo.java index 76ce30e..28264b3 100644 --- a/Robot2019/src/main/java/frc/robot/commands/IntakeCargo.java +++ b/Robot2019/src/main/java/frc/robot/commands/IntakeCargo.java @@ -12,7 +12,7 @@ import frc.robot.subsystems.Cargo; public class IntakeCargo extends Command { - Timer tim; + Timer timer; Cargo cargo; boolean overdraw; @@ -24,27 +24,27 @@ public IntakeCargo(Cargo cargo) { @Override protected void initialize() { - tim.reset(); + timer.reset(); } @Override protected void execute() { - cargo.runIntake(1.0); + cargo.runIntake(); if (cargo.hasCargo()) { if (!overdraw) { overdraw = true; - tim.start(); + timer.start(); } } else { overdraw = false; - tim.stop(); - tim.reset(); + timer.stop(); + timer.reset(); } } @Override protected boolean isFinished() { - return (tim.get() > 0.5); + return (timer.get() > 0.5); } @Override diff --git a/Robot2019/src/main/java/frc/robot/subsystems/Cargo.java b/Robot2019/src/main/java/frc/robot/subsystems/Cargo.java index 333c0f4..8bb7696 100644 --- a/Robot2019/src/main/java/frc/robot/subsystems/Cargo.java +++ b/Robot2019/src/main/java/frc/robot/subsystems/Cargo.java @@ -16,7 +16,7 @@ public class Cargo extends Subsystem { // here. Call these from Commands. private VictorSP roller; - private final PowerDistributionPanel pdp; + private PowerDistributionPanel pdp; public Cargo(VictorSP roller, PowerDistributionPanel pdp) { this.roller = roller; @@ -27,16 +27,16 @@ public void stopIntake() { roller.stopMotor(); } - public void runIntake(double speed) { - roller.set(speed); + public void runIntake() { + roller.set(-1); } - public void runOutake(double speed) { - roller.set(-speed); + public void runEject() { + roller.set(1); } public boolean hasCargo() { - return pdp.getCurrent(4) > 15; + return pdp.getCurrent(roller.getChannel()) > 15; // TODO: set ports to actual cargo motor port }