implement ToggleWinch command
[3501/2017steamworks] / src / org / usfirst / frc / team3501 / robot / commands / climber / RunWinchContinuous.java
1 package org.usfirst.frc.team3501.robot.commands.climber;
2
3 import org.usfirst.frc.team3501.robot.Robot;
4 import org.usfirst.frc.team3501.robot.subsystems.DriveTrain;
5
6 import edu.wpi.first.wpilibj.command.Command;
7
8 /**
9 * This command runs the drive train motors (which runs the winch) continuously
10 * at a specified speed until the button triggering it is released
11 *
12 * pre-condition: This command must be run by a button in OI with
13 * button.whileHeld(...). The robot must be attached to the rope.
14 *
15 * post-condition: Drive train motors set to a specified speed.
16 *
17 * @author shivanighanta
18 *
19 */
20 public class RunWinchContinuous extends Command {
21
22 DriveTrain driveTrain = Robot.getDriveTrain();
23 private double climbingSpeed;
24
25 /**
26 * See JavaDoc comment in class for details
27 *
28 * @param motorVal
29 * value range is from -1 to 1
30 */
31 public RunWinchContinuous() {
32 requires(driveTrain);
33 climbingSpeed = driveTrain.CLIMBER_SPEED;
34 requires(Robot.getDriveTrain());
35 requires(driveTrain);
36 }
37
38 @Override
39 protected void initialize() {
40 }
41
42 @Override
43 protected void execute() {
44 Robot.getDriveTrain().setMotorValues(climbingSpeed, climbingSpeed);
45 }
46
47 @Override
48 protected boolean isFinished() {
49 return false;
50 }
51
52 @Override
53 protected void end() {
54
55 }
56
57 @Override
58 protected void interrupted() {
59 end();
60 }
61 }