From 8b5b2de64b86f0e4a557ab43bf6a2026c9ea9964 Mon Sep 17 00:00:00 2001 From: Rohan Rodrigues Date: Tue, 10 Jan 2017 19:43:03 -0800 Subject: [PATCH] Add branch for robot auton command group 1 --- .../team3501/robot/subsystems/DriveTrain.java | 222 +++++++++--------- 1 file changed, 110 insertions(+), 112 deletions(-) diff --git a/src/org/usfirst/frc/team3501/robot/subsystems/DriveTrain.java b/src/org/usfirst/frc/team3501/robot/subsystems/DriveTrain.java index 4bbda0f..c834873 100644 --- a/src/org/usfirst/frc/team3501/robot/subsystems/DriveTrain.java +++ b/src/org/usfirst/frc/team3501/robot/subsystems/DriveTrain.java @@ -10,117 +10,115 @@ import edu.wpi.first.wpilibj.RobotDrive; import edu.wpi.first.wpilibj.command.Subsystem; public class DriveTrain extends Subsystem { - private static DriveTrain driveTrain; - private final CANTalon frontLeft, frontRight, rearLeft, rearRight; - private final RobotDrive robotDrive; - private final Encoder leftEncoder, rightEncoder; - - private DriveTrain() { - // MOTOR CONTROLLERS - frontLeft = new CANTalon(Constants.DriveTrain.FRONT_LEFT); - frontRight = new CANTalon(Constants.DriveTrain.FRONT_RIGHT); - rearLeft = new CANTalon(Constants.DriveTrain.REAR_LEFT); - rearRight = new CANTalon(Constants.DriveTrain.REAR_RIGHT); - - // ENCODERS - leftEncoder = new Encoder(Constants.DriveTrain.ENCODER_LEFT_A, - Constants.DriveTrain.ENCODER_LEFT_B); - rightEncoder = new Encoder(Constants.DriveTrain.ENCODER_RIGHT_A, - Constants.DriveTrain.ENCODER_RIGHT_B); - - leftEncoder.setDistancePerPulse(Constants.DriveTrain.INCHES_PER_PULSE); - rightEncoder.setDistancePerPulse(Constants.DriveTrain.INCHES_PER_PULSE); - - // ROBOT DRIVE - robotDrive = new RobotDrive(frontLeft, rearLeft, frontRight, rearRight); - } - - public static DriveTrain getDriveTrain() { - if (driveTrain == null) { - driveTrain = new DriveTrain(); - } - return driveTrain; - } - - // DRIVE METHODS - public void setMotorValues(final double left, final double right) { - robotDrive.tankDrive(left, right); - } - - public void joystickDrive(final double thrust, final double twist) { - robotDrive.arcadeDrive(thrust, twist); - } - - public void stop() { - setMotorValues(0, 0); - } - - public double getFrontLeftMotorVal() { - return frontLeft.get(); - } - - public double getFrontRightMotorVal() { - return frontRight.get(); - } - - public double getRearLeftMotorVal() { - return frontLeft.get(); - } - - public double getRearRightMotorVal() { - return frontLeft.get(); - } - - public CANTalon getFrontLeft() { - return frontLeft; - } - - public CANTalon getFrontRight() { - return frontRight; - } - - public CANTalon getRearLeft() { - return rearLeft; - } - - public CANTalon getRearRight() { - return rearRight; - } - - // ENCODER METHODS - - public double getLeftEncoder() { - return leftEncoder.getDistance(); - } - - public double getRightEncoder() { - return rightEncoder.getDistance(); - } - - public double getAvgEncoderDistance() { - return (leftEncoder.getDistance() + rightEncoder.getDistance()) / 2; - } - - public void resetEncoders() { - leftEncoder.reset(); - rightEncoder.reset(); - } - - public double getLeftSpeed() { - return leftEncoder.getRate(); - } - - public double getRightSpeed() { - return rightEncoder.getRate(); - } - - public double getSpeed() { - return (getLeftSpeed() + getRightSpeed()) / 2.0; - } - - @Override - protected void initDefaultCommand() { - setDefaultCommand(new JoystickDrive()); - } + private static DriveTrain driveTrain; + private final CANTalon frontLeft, frontRight, rearLeft, rearRight; + private final RobotDrive robotDrive; + private final Encoder leftEncoder, rightEncoder; + + private DriveTrain() { + // MOTOR CONTROLLERS + frontLeft = new CANTalon(Constants.DriveTrain.FRONT_LEFT); + frontRight = new CANTalon(Constants.DriveTrain.FRONT_RIGHT); + rearLeft = new CANTalon(Constants.DriveTrain.REAR_LEFT); + rearRight = new CANTalon(Constants.DriveTrain.REAR_RIGHT); + + // ENCODERS + leftEncoder = new Encoder(Constants.DriveTrain.ENCODER_LEFT_A, Constants.DriveTrain.ENCODER_LEFT_B); + rightEncoder = new Encoder(Constants.DriveTrain.ENCODER_RIGHT_A, Constants.DriveTrain.ENCODER_RIGHT_B); + + leftEncoder.setDistancePerPulse(Constants.DriveTrain.INCHES_PER_PULSE); + rightEncoder.setDistancePerPulse(Constants.DriveTrain.INCHES_PER_PULSE); + + // ROBOT DRIVE + robotDrive = new RobotDrive(frontLeft, rearLeft, frontRight, rearRight); + } + + public static DriveTrain getDriveTrain() { + if (driveTrain == null) { + driveTrain = new DriveTrain(); + } + return driveTrain; + } + + // DRIVE METHODS + public void setMotorValues(final double left, final double right) { + robotDrive.tankDrive(left, right); + } + + public void joystickDrive(final double thrust, final double twist) { + robotDrive.arcadeDrive(thrust, twist); + } + + public void stop() { + setMotorValues(0, 0); + } + + public double getFrontLeftMotorVal() { + return frontLeft.get(); + } + + public double getFrontRightMotorVal() { + return frontRight.get(); + } + + public double getRearLeftMotorVal() { + return frontLeft.get(); + } + + public double getRearRightMotorVal() { + return frontLeft.get(); + } + + public CANTalon getFrontLeft() { + return frontLeft; + } + + public CANTalon getFrontRight() { + return frontRight; + } + + public CANTalon getRearLeft() { + return rearLeft; + } + + public CANTalon getRearRight() { + return rearRight; + } + + // ENCODER METHODS + + public double getLeftEncoder() { + return leftEncoder.getDistance(); + } + + public double getRightEncoder() { + return rightEncoder.getDistance(); + } + + public double getAvgEncoderDistance() { + return (leftEncoder.getDistance() + rightEncoder.getDistance()) / 2; + } + + public void resetEncoders() { + leftEncoder.reset(); + rightEncoder.reset(); + } + + public double getLeftSpeed() { + return leftEncoder.getRate(); + } + + public double getRightSpeed() { + return rightEncoder.getRate(); + } + + public double getSpeed() { + return (getLeftSpeed() + getRightSpeed()) / 2.0; + } + + @Override + protected void initDefaultCommand() { + setDefaultCommand(new JoystickDrive()); + } } -- 2.30.2