X-Git-Url: http://challenge-bot.com/repos/?a=blobdiff_plain;f=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2Fcommands%2Fclimber%2FRunWinch.java;h=39149abb14fba12c4c77e24d5aaf2d694da20bf6;hb=f74d236db406193b851bff99e4daec7b7abf35e7;hp=0586c367606ef4a2dceeaea15ea007993194e50e;hpb=9738295a69eb289e0c590b236bab1843ad5e5a4c;p=3501%2F2017steamworks diff --git a/src/org/usfirst/frc/team3501/robot/commands/climber/RunWinch.java b/src/org/usfirst/frc/team3501/robot/commands/climber/RunWinch.java index 0586c36..39149ab 100644 --- a/src/org/usfirst/frc/team3501/robot/commands/climber/RunWinch.java +++ b/src/org/usfirst/frc/team3501/robot/commands/climber/RunWinch.java @@ -1,42 +1,71 @@ package org.usfirst.frc.team3501.robot.commands.climber; +import org.usfirst.frc.team3501.robot.Robot; +import org.usfirst.frc.team3501.robot.subsystems.Climber; + import edu.wpi.first.wpilibj.command.Command; /** - * Runs the winch at a given time and motor value + * This command runs the winch at a specified speed and time in seconds when the + * button triggering it is pressed. This command also makes the drive train + * motors run because the winch is controlled by the drive train. + * + * pre-condition: This command is run by a button in OI. The robot must be + * attached to the rope. * + * post-condition: Winch motor set to a specified speed for a specified time. + * + * @param motorVal + * value range is from -1 to 1 + * @param time + * in seconds * @author shivanighanta * */ + public class RunWinch extends Command { + Climber climber = Robot.getClimber(); + private double time; private double motorVal; - public RunWinch(double time, double motorVal) { + /** + * See JavaDoc comment in class for details + * + * @param time + * time in seconds to run the winch + * @param motorVal + * value range is from -1 to 1 + */ + public RunWinch() { + requires(climber); this.time = time; this.motorVal = motorVal; } @Override protected void initialize() { + climber.setCANTalonsBrakeMode(climber.COAST_MODE); } @Override protected void execute() { - + climber.setMotorValues(climber.CLIMBER_SPEED); } @Override protected boolean isFinished() { + // return timeSinceInitialized() >= time; return false; } @Override protected void end() { - + climber.stop(); } @Override protected void interrupted() { + end(); } }