X-Git-Url: http://challenge-bot.com/repos/?a=blobdiff_plain;f=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2Fcommands%2Fshooter%2FRunIndexWheel.java;h=6abb095b60a0a5ac74de61627244f479ae2248f6;hb=7ba6bc91b8cf7205e05cdb974dc80fdd668ebe59;hp=a240d3ec7574ea1cd9e0dbd42a89b940f204d6eb;hpb=5b1f2bc57ba92c51d77f7dd0a59a7c84c2726c76;p=3501%2F2017steamworks diff --git a/src/org/usfirst/frc/team3501/robot/commands/shooter/RunIndexWheel.java b/src/org/usfirst/frc/team3501/robot/commands/shooter/RunIndexWheel.java index a240d3e..6abb095 100644 --- a/src/org/usfirst/frc/team3501/robot/commands/shooter/RunIndexWheel.java +++ b/src/org/usfirst/frc/team3501/robot/commands/shooter/RunIndexWheel.java @@ -1,8 +1,8 @@ package org.usfirst.frc.team3501.robot.commands.shooter; 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; /** @@ -14,9 +14,8 @@ import edu.wpi.first.wpilibj.command.Command; * @author Shaina */ public class RunIndexWheel extends Command { - Timer timer; + private Shooter shooter = Robot.getShooter(); private double time; - private double motorVal; /** * See JavaDoc comment in class for details @@ -26,32 +25,30 @@ public class RunIndexWheel extends Command { * @param time * in seconds, amount of time to run index wheel motor */ - public RunIndexWheel(double motorVal, double time) { - requires(Robot.getShooter()); - - timer = new Timer(); - this.motorVal = motorVal; + public RunIndexWheel(double time) { + requires(shooter); this.time = time; } // Called just before this Command runs the first time @Override protected void initialize() { - timer.start(); - Robot.getShooter().setIndexWheelMotorVal(motorVal); - } // Called repeatedly when this Command is scheduled to run @Override protected void execute() { + 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() { - Robot.getShooter().stopIndexWheel(); - + shooter.stopIndexWheel(); } // Called when another command which requires one or more of the same @@ -63,7 +60,7 @@ public class RunIndexWheel extends Command { @Override protected boolean isFinished() { - return timer.get() >= time; + return timeSinceInitialized() >= time; } }