9741eaca200b8b48db27872c19d5e316a4d84536
1 package org
.usfirst
.frc
.team3501
.robot
.commands
.climber
;
3 import org
.usfirst
.frc
.team3501
.robot
.Constants
;
4 import org
.usfirst
.frc
.team3501
.robot
.Robot
;
6 import edu
.wpi
.first
.wpilibj
.Timer
;
7 import edu
.wpi
.first
.wpilibj
.command
.Command
;
10 * This command runs the winch at a specified speed and time in seconds when the
11 * button triggering it is pressed. This command also makes the drive train
12 * motors run because the winch is controlled by the drive train.
14 * pre-condition: This command is run by a button in OI. The robot must be
15 * attached to the rope.
17 * post-condition: Winch motor set to a specified speed for a specified time.
20 * value range is from -1 to 1
23 * @author shivanighanta
26 public class MaintainWinchSpeed
extends Command
{
29 private double motorVal
;
32 * See JavaDoc comment in class for details
35 * time in seconds to run the winch
37 * value range is from -1 to 1
39 public MaintainWinchSpeed(double time
, double motorVal
) {
41 requires(Robot
.getDriveTrain());
43 this.motorVal
= motorVal
;
47 protected void initialize() {
52 protected void execute() {
53 Robot
.getDriveTrain().setMotorValues(Constants
.Climber
.MAINTAIN_MOTOR_VAL
,
54 Constants
.Climber
.MAINTAIN_MOTOR_VAL
);
59 protected boolean isFinished() {
60 return timer
.get() >= time
;
64 protected void end() {
65 Robot
.getDriveTrain().stop();
69 protected void interrupted() {