X-Git-Url: http://challenge-bot.com/repos/?a=blobdiff_plain;f=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2Fsubsystems%2FShooter.java;h=5c92506da9844c021fb770c3736209336df97183;hb=0b403e6022b2c38e54e77e3d17d30dc5fc54ef57;hp=ee2742d2b0209e88c0cd18cd0b54fbebcd9c070b;hpb=4b94da2f70ac1e3b8197a0712c68263e26cd68e6;p=3501%2Fstronghold-2016 diff --git a/src/org/usfirst/frc/team3501/robot/subsystems/Shooter.java b/src/org/usfirst/frc/team3501/robot/subsystems/Shooter.java index ee2742d2..5c92506d 100755 --- a/src/org/usfirst/frc/team3501/robot/subsystems/Shooter.java +++ b/src/org/usfirst/frc/team3501/robot/subsystems/Shooter.java @@ -1,8 +1,10 @@ package org.usfirst.frc.team3501.robot.subsystems; import org.usfirst.frc.team3501.robot.Constants; +import org.usfirst.frc.team3501.robot.Lidar; import org.usfirst.frc.team3501.robot.MathLib; +import edu.wpi.first.wpilibj.AnalogPotentiometer; import edu.wpi.first.wpilibj.CANTalon; import edu.wpi.first.wpilibj.CounterBase.EncodingType; import edu.wpi.first.wpilibj.DoubleSolenoid; @@ -23,17 +25,22 @@ import edu.wpi.first.wpilibj.command.Subsystem; public class Shooter extends Subsystem { private CANTalon shooter; private CANTalon angleAdjuster; - private DoubleSolenoid punch; + private DoubleSolenoid hood, punch; private Encoder encoder; + private Lidar lidar; public Shooter() { shooter = new CANTalon(Constants.Shooter.PORT); - angleAdjuster = new CANTalon(Constants.Shooter.ANGLE_ADJUSTER_PORT); - punch = new DoubleSolenoid(Constants.Shooter.PUNCH_FORWARD_PORT, - Constants.Shooter.PUNCH_REVERSE_PORT); + hood = new DoubleSolenoid(Constants.Shooter.HOOD_FORWARD, + Constants.Shooter.HOOD_REVERSE); + angleAdjuster = new CANTalon(Constants.Shooter.ANGLE_ADJUSTER_PORT); + punch = new DoubleSolenoid(Constants.Shooter.PUNCH_FORWARD, + Constants.Shooter.PUNCH_REVERSE); encoder = new Encoder(Constants.Shooter.ENCODER_PORT_A, Constants.Shooter.ENCODER_PORT_B, false, EncodingType.k4X); + + lidar = new Lidar(Constants.Shooter.LIDAR_I2C_PORT); } /*** @@ -49,8 +56,12 @@ public class Shooter extends Subsystem { } public void setSpeed(double speed) { - speed = MathLib.constrain(speed, -1, 1); - shooter.set(speed); + if (speed > 1.0) + shooter.set(1.0); + else if (speed < -1.0) + shooter.set(-1.0); + else + shooter.set(speed); } public void stop() { @@ -69,7 +80,7 @@ public class Shooter extends Subsystem { } // Punch Commands - public void punch() { + public void extendPunch() { punch.set(Constants.Shooter.punch); } @@ -77,6 +88,18 @@ public class Shooter extends Subsystem { punch.set(Constants.Shooter.retract); } + public boolean isHoodOpen() { + return hood.get() == Constants.Shooter.open; + } + + public void openHood() { + hood.set(Constants.Shooter.open); + } + + public void closeHood() { + hood.set(Constants.Shooter.closed); + } + @Override protected void initDefaultCommand() { }