X-Git-Url: http://challenge-bot.com/repos/?a=blobdiff_plain;f=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2Fcommands%2Fshooter%2FRunFlyWheelContinuous.java;h=f751f5be6097237477c651215a700b360b1e6dc2;hb=f74d236db406193b851bff99e4daec7b7abf35e7;hp=c1a316502873df4e42f8ce2c19f69b8595df1084;hpb=b6e975605844ad7bc608fd879840c89a5c1a3bdb;p=3501%2F2017steamworks diff --git a/src/org/usfirst/frc/team3501/robot/commands/shooter/RunFlyWheelContinuous.java b/src/org/usfirst/frc/team3501/robot/commands/shooter/RunFlyWheelContinuous.java index c1a3165..f751f5b 100644 --- a/src/org/usfirst/frc/team3501/robot/commands/shooter/RunFlyWheelContinuous.java +++ b/src/org/usfirst/frc/team3501/robot/commands/shooter/RunFlyWheelContinuous.java @@ -1,45 +1,54 @@ package org.usfirst.frc.team3501.robot.commands.shooter; +import org.usfirst.frc.team3501.robot.Robot; +import org.usfirst.frc.team3501.robot.subsystems.Shooter; +import org.usfirst.frc.team3501.robot.utils.PIDController; + import edu.wpi.first.wpilibj.command.Command; /** - * Runs fly wheel continuously when corresponding button pressed + * This command runs the fly wheel continuously at a set speed using a PID + * Controller when OI button managing fly wheel is pressed. The command will run + * the fly wheel motor until the button triggering it is released. + * + * Should only be run from the operator interface. * - * @param motorVal - * motor value - * @author shaina + * pre-condition: This command must be run by a button in OI, with + * button.whileHeld(...). + * + * @author Shaina & Chris */ public class RunFlyWheelContinuous extends Command { - private double motorVal; + private Shooter shooter = Robot.getShooter(); + + private PIDController wheelController; - public RunFlyWheelContinuous(double motorVal) { - this.motorVal = motorVal; + public RunFlyWheelContinuous() { + requires(shooter); } - // Called just before this Command runs the first time @Override protected void initialize() { + shooter.initializePIDController(); } - // Called repeatedly when this Command is scheduled to run @Override protected void execute() { + shooter.setFlyWheelMotorVal(shooter.calculateShooterSpeed()); } - // Called once after isFinished returns true @Override - protected void end() { + protected boolean isFinished() { + return false; } - // Called when another command which requires one or more of the same - // subsystems is scheduled to run @Override - protected void interrupted() { + protected void end() { + this.shooter.stopFlyWheel(); } @Override - protected boolean isFinished() { - return false; + protected void interrupted() { + end(); } - }