X-Git-Url: http://challenge-bot.com/repos/?p=3501%2F2017steamworks;a=blobdiff_plain;f=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2Fsubsystems%2FClimber.java;fp=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2Fsubsystems%2FClimber.java;h=4cb6c0b8c2f4981c8424467a857cd2bb2ec9ae6e;hp=0000000000000000000000000000000000000000;hb=150f450f2b4f9e6094d71007507a7b877e05328a;hpb=9ca89e45fa84b2ec93bc6adf60c7dde1e0a7defb diff --git a/src/org/usfirst/frc/team3501/robot/subsystems/Climber.java b/src/org/usfirst/frc/team3501/robot/subsystems/Climber.java new file mode 100644 index 0000000..4cb6c0b --- /dev/null +++ b/src/org/usfirst/frc/team3501/robot/subsystems/Climber.java @@ -0,0 +1,48 @@ +package org.usfirst.frc.team3501.robot.subsystems; + +import org.usfirst.frc.team3501.robot.Constants; +import org.usfirst.frc.team3501.robot.MathLib; +import org.usfirst.frc.team3501.robot.commands.climber.RunWinchContinuous; + +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() { + if (climber == null) { + climber = new Climber(); + } + return climber; + } + + public void setMotorValues(double climbingSpeed) { + winch.set(MathLib.limitValue(climbingSpeed, 0.0, 1.0)); + } + + public void stop() { + winch.set(0); + } + + public void setCANTalonsBrakeMode(boolean mode) { + winch.enableBrakeMode(mode); + } + + @Override + protected void initDefaultCommand() { + setDefaultCommand(new RunWinchContinuous()); + } +}