X-Git-Url: http://challenge-bot.com/repos/?a=blobdiff_plain;f=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2Fcommands%2Fshooter%2FRunIndexWheelContinuous.java;h=8a640e78951bb7ba007ae6e0f8c764126616127a;hb=eedddcb40586d5a0d38bf12b53fa24f488122068;hp=2a5ccbede9710e1e9ce2a3c711afb5dff2517c67;hpb=d175e83e2bd58c3c0956ca1c28a88ccd5046f656;p=3501%2F2017steamworks diff --git a/src/org/usfirst/frc/team3501/robot/commands/shooter/RunIndexWheelContinuous.java b/src/org/usfirst/frc/team3501/robot/commands/shooter/RunIndexWheelContinuous.java index 2a5ccbe..8a640e7 100644 --- a/src/org/usfirst/frc/team3501/robot/commands/shooter/RunIndexWheelContinuous.java +++ b/src/org/usfirst/frc/team3501/robot/commands/shooter/RunIndexWheelContinuous.java @@ -1,7 +1,10 @@ package org.usfirst.frc.team3501.robot.commands.shooter; +import org.usfirst.frc.team3501.robot.Constants; import org.usfirst.frc.team3501.robot.Robot; +import org.usfirst.frc.team3501.robot.subsystems.Shooter; +import edu.wpi.first.wpilibj.Timer; import edu.wpi.first.wpilibj.command.Command; /** @@ -17,36 +20,43 @@ import edu.wpi.first.wpilibj.command.Command; * @author Shaina */ public class RunIndexWheelContinuous extends Command { - private double motorVal; + private Shooter shooter = Robot.getShooter(); + private Timer t = new Timer(); /** * See JavaDoc comment in class for details - * - * @param motorVal - * value range from -1 to 1 */ - public RunIndexWheelContinuous(double motorVal) { - this.motorVal = motorVal; + public RunIndexWheelContinuous() { + requires(shooter); } - // Called just before this Command runs the first time @Override protected void initialize() { - Robot.getShooter().setIndexWheelMotorVal(motorVal); + t.reset(); } - // Called repeatedly when this Command is scheduled to run @Override protected void execute() { + if (t.get() % 1 == 0) { + if (Shooter.getShooter().getPistonValue() == Constants.Shooter.LOW_GEAR) { + Shooter.getShooter().setHighGear(); + } else { + Shooter.getShooter().setLowGear(); + } + } + + double shooterSpeed = shooter.getShooterRPM(); + double targetShooterSpeed = shooter.getTargetShootingSpeed(); + double threshold = shooter.getRPMThreshold(); + if (Math.abs(shooterSpeed - targetShooterSpeed) <= threshold) + shooter.runIndexWheel(); } - // Called once after isFinished returns true @Override protected void end() { + shooter.stopIndexWheel(); } - // Called when another command which requires one or more of the same - // subsystems is scheduled to run @Override protected void interrupted() { end();