X-Git-Url: http://challenge-bot.com/repos/?a=blobdiff_plain;f=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2Fsubsystems%2FShooter.java;h=f457ba57c57cf04b7fd472f3d8980661a158e412;hb=69214544045f7b9931a16c700b77f77e90ad069f;hp=7a11c2d74440abff3dea25a9c2e60adbaad0e4d4;hpb=1fe2a13c268b1f89f7063d0efb3c9caf6fd02a18;p=3501%2F2017steamworks diff --git a/src/org/usfirst/frc/team3501/robot/subsystems/Shooter.java b/src/org/usfirst/frc/team3501/robot/subsystems/Shooter.java index 7a11c2d..f457ba5 100644 --- a/src/org/usfirst/frc/team3501/robot/subsystems/Shooter.java +++ b/src/org/usfirst/frc/team3501/robot/subsystems/Shooter.java @@ -6,6 +6,8 @@ import org.usfirst.frc.team3501.robot.utils.HallEffectSensor; import com.ctre.CANTalon; +import edu.wpi.first.wpilibj.DoubleSolenoid; +import edu.wpi.first.wpilibj.DoubleSolenoid.Value; import edu.wpi.first.wpilibj.command.Subsystem; public class Shooter extends Subsystem { @@ -20,12 +22,17 @@ public class Shooter extends Subsystem { public static final double SHOOTING_SPEED_INCREMENT = 0.05; + private final DoubleSolenoid piston; + private Shooter() { flyWheel1 = new CANTalon(Constants.Shooter.FLY_WHEEL1); flyWheel2 = new CANTalon(Constants.Shooter.FLY_WHEEL2); indexWheel = new CANTalon(Constants.Shooter.INDEX_WHEEL); hallEffect = new HallEffectSensor(Constants.Shooter.HALL_EFFECT_PORT, 1); + + piston = new DoubleSolenoid(Constants.DriveTrain.MODULE_NUMBER, + Constants.Shooter.PISTON_FORWARD, Constants.Shooter.PISTON_REVERSE); } public static HallEffectSensor getHallEffectSensor() { @@ -98,4 +105,20 @@ public class Shooter extends Subsystem { public double getShooterRPM() { return hallEffect.getRPM(); } + + public Value getPistonValue() { + return piston.get(); + } + + public void setHighGear() { + changeGear(Constants.Shooter.HIGH_GEAR); + } + + public void setLowGear() { + changeGear(Constants.Shooter.LOW_GEAR); + } + + private void changeGear(DoubleSolenoid.Value gear) { + piston.set(gear); + } }