X-Git-Url: http://challenge-bot.com/repos/?a=blobdiff_plain;f=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2FConstants.java;h=ebef7502d1b0dcf1fe63ea25ee3f2cd2f11b01c6;hb=b378dfe;hp=fb63079582fa4cbefedf1a895a25d3d84ce53da0;hpb=da0c4bd895f527adc9fffdc0a19929379e069ae8;p=3501%2Fstronghold-2016 diff --git a/src/org/usfirst/frc/team3501/robot/Constants.java b/src/org/usfirst/frc/team3501/robot/Constants.java index fb630795..ebef7502 100644 --- a/src/org/usfirst/frc/team3501/robot/Constants.java +++ b/src/org/usfirst/frc/team3501/robot/Constants.java @@ -1,5 +1,8 @@ package org.usfirst.frc.team3501.robot; +import edu.wpi.first.wpilibj.DoubleSolenoid; +import edu.wpi.first.wpilibj.DoubleSolenoid.Value; + /** * The Constants stores constant values for all subsystems. This includes the * port values for motors and sensors, as well as important operational @@ -7,40 +10,128 @@ package org.usfirst.frc.team3501.robot; */ public class Constants { + public final static int PCM_MODULE_A = 9; + public final static int PCM_MODULE_B = 10; + public static class OI { + // Computer Ports public final static int LEFT_STICK_PORT = 0; - public final static int RIGHT_STICK_PORT = 0; - public final static int TRIGGER_PORT = 0; + public final static int RIGHT_STICK_PORT = 1; + + // Left Joystick + public final static int LEFT_JOYSTICK_GEAR_SHIFT_PORT = 1; + public final static int LEFT_JOYSTICK_EXTEND_INTAKE_1_PORT = 3; + public final static int LEFT_JOYSTICK_EXTEND_INTAKE_2_PORT = 5; + public final static int LEFT_JOYSTICK_RETRACT_INTAKE_1_PORT = 4; + public final static int LEFT_JOYSTICK_RETRACT_INTAKE_2_PORT = 6; + public final static int LEFT_JOYSTICK_TOGGLE_FRONT_PORT = 7; + + // Right Joystick + public final static int RIGHT_JOYSTICK_INTAKE_PORT = 1; + public final static int RIGHT_JOYSTICK_OUTTAKE_1_PORT = 3; + public final static int RIGHT_JOYSTICK_OUTTAKE_2_PORT = 4; + public final static int RIGHT_JOYSTICK_SHOOTER_UP_PORT = 2; + public final static int RIGHT_JOYSTICK_SHOOTER_DOWN_1_PORT = 5; + public final static int RIGHT_JOYSTICK_SHOOTER_DOWN_2_PORT = 6; - public final static int DECREMENT_SHOOTER_PORT = 0; - public final static int INCREMENT_SHOOTER_PORT = 0; - public final static int SHOOTER_PORT = 0; - public final static int PRINT_PORT = 0; } public static class DriveTrain { - // Drivetrain Motor Related Ports - public static final int FRONT_LEFT = 0; - public static final int FRONT_RIGHT = 0; - public static final int REAR_LEFT = 0; - public static final int REAR_RIGHT = 0; + public static final int TANK = 0; + public static final int ARCADE = 1; + public static final int DRIVE_TYPE = TANK; + + // Limits changes in speed during joystick driving + public static final double kADJUST = 8; + + // Drivetrain Motor related ports + public static final int DRIVE_FRONT_LEFT = 6; + public static final int DRIVE_REAR_LEFT = 5; + public static final int DRIVE_FRONT_RIGHT = 1; + public static final int DRIVE_REAR_RIGHT = 2; + + // Drivetrain shifter related ports + public static final int LEFT_SHIFT_MODULE = PCM_MODULE_B; + public static final int LEFT_SHIFT_FORWARD = 6; + public static final int LEFT_SHIFT_REVERSE = 3; + public static final int RIGHT_SHIFT_MODULE = PCM_MODULE_B; + public static final int RIGHT_SHIFT_FORWARD = 2; + public static final int RIGHT_SHIFT_REVERSE = 7; // Encoder related ports - public final static int ENCODER_LEFT_A = 3; - public final static int ENCODER_LEFT_B = 4; - public final static int ENCODER_RIGHT_A = 2; - public final static int ENCODER_RIGHT_B = 1; + public final static int ENCODER_LEFT_A = 0; + public final static int ENCODER_LEFT_B = 1; + public final static int ENCODER_RIGHT_A = 3; + public final static int ENCODER_RIGHT_B = 4; + + public static final double INCHES_PER_PULSE = ((3.66 / 5.14) * 6 * Math.PI) / 256; + + public static double kp = 0.013, ki = 0.000015, kd = -0.002; + public static double encoderTolerance = 8.0; + + // Gearing constants + public static final Value HIGH_GEAR = DoubleSolenoid.Value.kForward; + public static final Value LOW_GEAR = DoubleSolenoid.Value.kReverse; } public static class Shooter { - public static final int PORT = 0; + public static final int CATAPULT1_MODULE = PCM_MODULE_B; + public static final int CATAPULT1_FORWARD = 4; + public static final int CATAPULT1_REVERSE = 1; + public static final int CATAPULT2_MODULE = PCM_MODULE_A; + public static final int CATAPULT2_FORWARD = 0; + public static final int CATAPULT2_REVERSE = 1; + + public static final Value SHOOT = Value.kForward; + public static final Value RESET = Value.kReverse; + public static final double WAIT_TIME = 2.0; // In seconds + } + + public static class IntakeArm { + public static final int INTAKE_ROLLER_PORT = 8; + + // for pistons + public static final int LEFT_INTAKE_MODULE = PCM_MODULE_A; + public static final int LEFT_INTAKE_FORWARD = 5; + public static final int LEFT_INTAKE_REVERSE = 2; + public static final int RIGHT_INTAKE_MODULE = PCM_MODULE_B; + public static final int RIGHT_INTAKE_FORWARD = 5; + public static final int RIGHT_INTAKE_REVERSE = 0; + + public static final Value EXTEND = DoubleSolenoid.Value.kForward; + public static final Value RETRACT = DoubleSolenoid.Value.kReverse; + + public static final int IN = 1; + public static final int STOP = 0; + public static final int OUT = -1; + + // for roller + public static final double INTAKE_SPEED = 0.7; + public static final double OUTPUT_SPEED = -0.7; + } + + public static class Auton { + // Defense crossing speeds from -1 to 1 + public static final double DEFAULT_SPEED = 0.3; + public static final double MOAT_SPEED = 0.6; + public static final double ROCK_WALL_SPEED = 0.8; + public static final double ROUGH_TERRAIN_SPEED = 0.7; + public static final double RAMPART_SPEED = 0.4; + public static final double LOW_BAR_SPEED = 0.5; + + // Defense crossing times in seconds + public static final double DEFAULT_TIME = 10.0; + public static final double MOAT_TIME = 7.0; + public static final double ROCK_WALL_TIME = 8.0; + public static final double ROUGH_TERRAIN_TIME = 6.0; + public static final double RAMPART_TIME = 10.0; + public static final double LOW_BAR_TIME = 6.0; - public static enum State { - RUNNING, STOPPED; - } + // Time to wait before shooting in seconds + public static final double WAIT_TIME = 1.0; } - public static enum Direction { - LEFT, RIGHT, DOWN, UP, FORWARD, BACKWARD; + public enum Defense { + PORTCULLIS, SALLY_PORT, ROUGH_TERRAIN, LOW_BAR, CHIVAL_DE_FRISE, DRAWBRIDGE, MOAT, ROCK_WALL, RAMPART; } }