package org.usfirst.frc.team3501.robot.subsystems;
-public class Climber {
- private static Climber climber;
+import org.usfirst.frc.team3501.robot.Constants;
+import org.usfirst.frc.team3501.robot.MathLib;
+import org.usfirst.frc.team3501.robot.commands.climber.RunWinchContinuous;
- private Climber() {
+import com.ctre.CANTalon;
+import edu.wpi.first.wpilibj.command.Subsystem;
+
+public class Climber extends Subsystem {
+ public static Climber climber;
+
+ public static final boolean BRAKE_MODE = true;
+ public static final boolean COAST_MODE = false;
+
+ public static final double CLIMBER_SPEED = 0;
+
+ private CANTalon winch;
+
+ public Climber() {
+ winch = new CANTalon(Constants.Climber.WINCH_PORT);
}
public static Climber getClimber() {
return climber;
}
+ public void setMotorValues(double climbingSpeed) {
+ winch.set(MathLib.limitValue(climbingSpeed, 0.0, 1.0));
+ }
+
public void stop() {
- setMotorValue(0);
+ winch.set(0);
}
- public void setMotorValue(final double val) {
+ public void setCANTalonsBrakeMode(boolean mode) {
+ winch.enableBrakeMode(mode);
+ }
+ @Override
+ protected void initDefaultCommand() {
+ setDefaultCommand(new RunWinchContinuous());
}
}