X-Git-Url: http://challenge-bot.com/repos/?a=blobdiff_plain;f=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2Fsubsystems%2FDriveTrain.java;h=de2626bed86e43a5e5fdddde5eca8ab2374f471b;hb=2a099bc6e824accc4ea0df2db2f6af666cf9aad4;hp=56d8066b49d800df8924018a3f4c7844ddb5e2a5;hpb=2aea5cc24d3d2ff9edf66c5a3faf53e2c6811ca3;p=3501%2Fstronghold-2016 diff --git a/src/org/usfirst/frc/team3501/robot/subsystems/DriveTrain.java b/src/org/usfirst/frc/team3501/robot/subsystems/DriveTrain.java index 56d8066b..de2626be 100644 --- a/src/org/usfirst/frc/team3501/robot/subsystems/DriveTrain.java +++ b/src/org/usfirst/frc/team3501/robot/subsystems/DriveTrain.java @@ -15,6 +15,8 @@ import edu.wpi.first.wpilibj.RobotDrive; import edu.wpi.first.wpilibj.command.PIDSubsystem; public class DriveTrain extends PIDSubsystem { + private static double kp = 0.013, ki = 0.000015, kd = -0.002; + private static double gp = 0.018, gi = 0.000015, gd = 0; private static double pidOutput = 0; private static double encoderTolerance = 8.0, gyroTolerance = 5.0; private int DRIVE_MODE = 1; @@ -40,7 +42,7 @@ public class DriveTrain extends PIDSubsystem { // Drivetrain specific constants that relate to the PID controllers private final static double Kp = 1.0, Ki = 0.0, Kd = 0.0 * (OUTPUT_SPROCKET_DIAMETER / PULSES_PER_ROTATION) - / (WHEEL_SPROCKET_DIAMETER) * WHEEL_DIAMETER; + / (WHEEL_SPROCKET_DIAMETER) * WHEEL_DIAMETER; public DriveTrain() { super(kp, ki, kd); @@ -105,14 +107,6 @@ public class DriveTrain extends PIDSubsystem { rightEncoder.reset(); } - public Value getLeftGearPistonValue() { - return leftGearPiston.get(); - } - - public Value getRightGearPistonValue() { - return rightGearPiston.get(); - } - public double getRightSpeed() { return rightEncoder.getRate(); // in inches per second } @@ -271,6 +265,24 @@ public class DriveTrain extends PIDSubsystem { rearRight.set(right); } - private static double kp = 0.013, ki = 0.000015, kd = -0.002; - private static double gp = 0.018, gi = 0.000015, gd = 0; + public Value getLeftGearPistonValue() { + return leftGearPiston.get(); + } + + public Value getRightGearPistonValue() { + return rightGearPiston.get(); + } + + public void setHighGear() { + changeGear(Constants.DriveTrain.HIGH_GEAR); + } + + public void setLowGear() { + changeGear(Constants.DriveTrain.LOW_GEAR); + } + + public void changeGear(DoubleSolenoid.Value gear) { + leftGearPiston.set(gear); + rightGearPiston.set(gear); + } }