From 7a03171ac5095cfd9d49933ec780385688215ceb Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Tue, 8 Jan 2019 09:03:56 -0600 Subject: [PATCH 001/131] Added Gyro Header to follow line command --- src/main/java/frc/robot/commands/FollowLineCommand.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 2321d34..b6d6326 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -15,6 +15,8 @@ import java.lang.Math; import java.util.ArrayList; +import com.kauailabs.navx.frc.AHRS; + /** * Add your docs here. */ @@ -33,6 +35,9 @@ public class FollowLineCommand extends Command { double[] jumpTimes; // relative to the start of stage 2 long startTime; + //Stuff for stage one + AHRS gyro; + protected double estimatedDistanceToWall; From 3797a64506cde41d8aaca785514602ac1a3db5d5 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Tue, 8 Jan 2019 09:10:49 -0600 Subject: [PATCH 002/131] Added Camera Width Distance to constants map --- src/main/java/frc/robot/ConstantsMap.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index a1c32ec..7467397 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -18,6 +18,7 @@ public class ConstantsMap { //for line follower public static final double DISTANCE_BETWEEN_SENSORS = 6; //inches + public static final double DISTANCE_BETWEEN_SENSOR_CAMERAS = .5;//inches public static final double ROBOT_WIDTH = 26; //inches public static final double ROBOT_LENGTH = 32; //inches public static final double APPROACH_TIME = 1.0d; //seconds From 46cc8d6a3709dcd35e6932c337f9081d0023c8ea Mon Sep 17 00:00:00 2001 From: SutterButter4 Date: Tue, 8 Jan 2019 09:11:54 -0600 Subject: [PATCH 003/131] well some imporvements --- .../java/frc/robot/commands/FollowLineCommand.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 2321d34..476ab4e 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -30,7 +30,7 @@ public class FollowLineCommand extends Command { ArrayList oSSPreviousAverages; int numOfJumps; int[] jumpIndices; // these will be the index after the change - double[] jumpTimes; // relative to the start of stage 2 + int[] jumpEncoderCount; // relative to the start of stage 2 long startTime; @@ -58,7 +58,7 @@ protected void setupForRun(){ oSSPreviousAverages = new ArrayList(); numOfJumps = 0; jumpIndices = new int[]{0,0}; - jumpTimes = new double[]{0.0d, 0.0d}; + jumpEncoderCount = new int[]{0, 0}; startTime = System.nanoTime(); } @@ -131,7 +131,7 @@ protected void oneSensorStage () { //now we have a step jumpIndices[numOfJumps] = oSSSize - 1; - jumpTimes[numOfJumps] = (System.nanoTime() - startTime) / 1000000000; // yes divide by 1 billion + jumpEncoderCount[numOfJumps] = 0; //TODO: get encoder values here, maybe average left and right? // yes divide by 1 billion numOfJumps++; } @@ -139,8 +139,8 @@ protected void oneSensorStage () { return; // please note this return when considering flow of this function } - //start to use it - double deltaTime = jumpTimes[1] - jumpTimes[0]; + //start to use ith + double deltaDistance = (jumpEncoderCount[1] - jumpEncoderCount[0]) * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; double deltaAverage = oSSPreviousAverages.get(jumpIndices[1]) - oSSPreviousAverages.get(jumpIndices[0] - 1); //double distanceTraveled = From 493e8cfe5eb942118c99e3e205efb23e6cbdb4ab Mon Sep 17 00:00:00 2001 From: SutterButter4 Date: Tue, 8 Jan 2019 09:22:57 -0600 Subject: [PATCH 004/131] incremental improvement --- .../java/frc/robot/commands/FollowLineCommand.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 15936b4..7be019d 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -72,6 +72,10 @@ protected void setupForRun(){ protected void execute() { System.out.println("FollowLineCommand execute"); + /*if(limit switch hit){ + setupForRun();//reset for next run + somehow mark that we are done, maybe interrrupt? + }else{*/ if(!visionStageComplete){ visionStage(); } else if(!oneSensorStageComplete){ @@ -147,7 +151,11 @@ protected void oneSensorStage () { //start to use ith double deltaDistance = (jumpEncoderCount[1] - jumpEncoderCount[0]) * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; double deltaAverage = oSSPreviousAverages.get(jumpIndices[1]) - oSSPreviousAverages.get(jumpIndices[0] - 1); - //double distanceTraveled = + double deltaHorizontalDistance = deltaAverage * ConstantsMap.DISTANCE_BETWEEN_SENSOR_CAMERAS; + + double angleToLine = Math.acos(deltaHorizontalDistance/deltaDistance); + + //TODO: actually implement the turning and math From 3895b33d42c1aa51ca7eba84d7608b2e103e843b Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Tue, 8 Jan 2019 09:23:06 -0600 Subject: [PATCH 005/131] Converted diff in stage 2 to inches --- src/main/java/frc/robot/commands/FollowLineCommand.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 15936b4..58c5bda 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -165,9 +165,8 @@ protected void twoSensorStage () { double frontAverage = followLineSubsystem.getCameraAverage(1); double backAverage = followLineSubsystem.getCameraAverage(2); - double diff = backAverage - frontAverage; - - //TODO: CONVERT THE DIFF TO ACTUAL UNITS(INCHES), NOT JUST OUR ARBITRARY ONES. THIS IS VERY VERY IMPORTANT. i would now, but i need measurements + //Diff is in units of inches (1 camera distance is 1/2 an inch) + double diff = (backAverage - frontAverage) * (ConstantsMap.DISTANCE_BETWEEN_SENSOR_CAMERAS); //get the error angle double theta = Math.acos(diff / Math.sqrt(diff * diff + ConstantsMap.DISTANCE_BETWEEN_SENSORS * ConstantsMap.DISTANCE_BETWEEN_SENSORS)); From 8312286f8c7c001a78979df68c7149fd50a0e534 Mon Sep 17 00:00:00 2001 From: SutterButter4 Date: Tue, 8 Jan 2019 09:46:55 -0600 Subject: [PATCH 006/131] more improvements --- src/main/java/frc/robot/ConstantsMap.java | 2 + .../frc/robot/commands/FollowLineCommand.java | 57 ++++++++++++++++++- 2 files changed, 56 insertions(+), 3 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 7467397..32a89c2 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -22,6 +22,8 @@ public class ConstantsMap { public static final double ROBOT_WIDTH = 26; //inches public static final double ROBOT_LENGTH = 32; //inches public static final double APPROACH_TIME = 1.0d; //seconds + public static final double STAGE_TWO_SPEED = 12.0D; //inches per second + } \ No newline at end of file diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index a293767..65b555d 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -28,6 +28,18 @@ public class FollowLineCommand extends Command { protected boolean oneSensorStageComplete; protected boolean twoSensorStageComplete; + //stage one variables + + //stage two variables + double leftEncoderDistanceGoal; + double rightEncoderDistanceGoal; + + //stage three variables + + //stage four variables + //stage five variables + //stage six variables + //stuff for stage 2 ArrayList oSSPreviousAverages; int numOfJumps; @@ -38,6 +50,8 @@ public class FollowLineCommand extends Command { //Stuff for stage one AHRS gyro; + + protected double estimatedDistanceToWall; @@ -88,9 +102,9 @@ protected void execute() { } - // Called by execute to approach the tape using vision - protected void visionStage () { - + //vision stage, get us closer to the line + protected void stageOne(){ + //TODO: use vision somehow.... //i have no clue as of yet, this is a different problem for somebody else @@ -100,6 +114,43 @@ protected void visionStage () { //any questions or ideas on how to do this better, talk to me(jake). visionStageComplete = true; } + + //once we hit the line, make sure we go forward 2 inches + protected void stageTwo(){ + //set target + if(leftEncoderDistanceGoal == 0 && rightEncoderDistanceGoal == 0){ + leftEncoderDistanceGoal = driveSubsystem.getLeftEncoderDistance() + 2; + rightEncoderDistanceGoal = driveSubsystem.getRightEncoderDistance() + 2; + + driveSubsystem.enableBrake(); + } + + driveSubsystem.setRightSpeed(ConstantsMap.STAGE_TWO_SPEED); + driveSubsystem.setLeftSpeed(ConstantsMap.STAGE_TWO_SPEED); + + if((driveSubsystem.getLeftEncoderDistance() > leftEncoderDistanceGoal)||(driveSubsystem.getLeftEncoderDistance() > leftEncoderDistanceGoal)){ + } + } + + //once we are over the line, then watch for the horizontal change + protected void stageThree(){ + + } + + //once we get change and calculate the angle, then move forward to approximate the swing + protected void stageFour(){ + + } + + //now turn the robot to the desired angle + protected void stageFive(){ + + } + + //now move to the wall, and use the old two sensor stage + protected void stageSix(){ + + } // Called by execute to line up when only 1 sensor has seen tape protected void oneSensorStage () { From 5a61ba56789fd4ef794d3f75f9a08a0fb8d656a4 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Tue, 8 Jan 2019 09:47:14 -0600 Subject: [PATCH 007/131] Added more stuff --- .../java/frc/robot/commands/FollowLineCommand.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 58c5bda..aff23a0 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -35,7 +35,7 @@ public class FollowLineCommand extends Command { int[] jumpEncoderCount; // relative to the start of stage 2 long startTime; - //Stuff for stage one + //Stuff for one sensor stages AHRS gyro; @@ -78,7 +78,13 @@ protected void execute() { oneSensorStage(); } else if(!twoSensorStageComplete){ twoSensorStage(); - } else{ + } else if(!twoSensorStageComplete){ + twoSensorStage(); + }else if(!twoSensorStageComplete){ + twoSensorStage(); + }else if(!twoSensorStageComplete){ + twoSensorStage(); + }else{ //we are finished, idk what to do } From ad79481b9bca4771acbf05924a7c6f1417bc4c46 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Tue, 8 Jan 2019 09:54:30 -0600 Subject: [PATCH 008/131] Changed Stage Switches --- .../frc/robot/commands/FollowLineCommand.java | 42 ++++++++++--------- 1 file changed, 23 insertions(+), 19 deletions(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index c893ca2..634cd99 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -24,21 +24,25 @@ public class FollowLineCommand extends Command { FollowLineSubsystem followLineSubsystem = Robot.followLineSubsystem; DriveSubsystem driveSubsystem = Robot.driveSubsystem; - protected boolean visionStageComplete; - protected boolean oneSensorStageComplete; - protected boolean twoSensorStageComplete; - - //stage one variables + //stage one variables (Vision Stage) + protected boolean stageOneComplete; //stage two variables + protected boolean stageTwoComplete; double leftEncoderDistanceGoal; double rightEncoderDistanceGoal; //stage three variables + protected boolean stageThreeComplete; //stage four variables + protected boolean stageFourComplete; + //stage five variables + protected boolean stageFiveComplete; + //stage six variables + protected boolean stageSixComplete; //stuff for stage 2 ArrayList oSSPreviousAverages; @@ -90,19 +94,19 @@ protected void execute() { setupForRun();//reset for next run somehow mark that we are done, maybe interrrupt? }else{*/ - if(!visionStageComplete){ - visionStage(); - } else if(!oneSensorStageComplete){ - oneSensorStage(); - } else if(!twoSensorStageComplete){ - twoSensorStage(); - } else if(!twoSensorStageComplete){ - twoSensorStage(); - }else if(!twoSensorStageComplete){ - twoSensorStage(); - }else if(!twoSensorStageComplete){ - twoSensorStage(); - }else{ + if(!stageOneComplete) { + stageOne(); + } else if(!stageTwoComplete) { + stageTwo(); + } else if(!stageThreeComplete) { + stageThree(); + } else if(!stageFourComplete) { + stageFour(); + } else if(!stageFiveComplete) { + stageFive(); + } else if(!stageSixComplete) { + stageSix(); + } else { //we are finished, idk what to do } @@ -118,7 +122,7 @@ protected void stageOne(){ //and motion profiling in conjunction to make the robot sort of swing outward to approach from a more reasonable angle, because if we approach //from an angle of incedence to the wall of less than say 25 degrees, steps 2 and three WILL fail to fix it. //any questions or ideas on how to do this better, talk to me(jake). - visionStageComplete = true; + stageOneComplete = true; } //once we hit the line, make sure we go forward 2 inches From d515b5808fc3e0edab0c216b9903f92aec3f5c5a Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Tue, 8 Jan 2019 10:06:46 -0600 Subject: [PATCH 009/131] pls --- src/main/java/frc/robot/ConstantsMap.java | 2 +- .../frc/robot/commands/FollowLineCommand.java | 18 ++++++++++-------- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 32a89c2..abc24a8 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -22,7 +22,7 @@ public class ConstantsMap { public static final double ROBOT_WIDTH = 26; //inches public static final double ROBOT_LENGTH = 32; //inches public static final double APPROACH_TIME = 1.0d; //seconds - public static final double STAGE_TWO_SPEED = 12.0D; //inches per second + public static final double STAGE_TWO_SPEED = 12.0d; //inches per second diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 634cd99..790e2de 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -126,9 +126,9 @@ protected void stageOne(){ } //once we hit the line, make sure we go forward 2 inches - protected void stageTwo(){ + protected void stageTwo() { //set target - if(leftEncoderDistanceGoal == 0 && rightEncoderDistanceGoal == 0){ + if(leftEncoderDistanceGoal == 0 && rightEncoderDistanceGoal == 0) { leftEncoderDistanceGoal = driveSubsystem.getLeftEncoderDistance() + 2; rightEncoderDistanceGoal = driveSubsystem.getRightEncoderDistance() + 2; @@ -138,32 +138,34 @@ protected void stageTwo(){ driveSubsystem.setRightSpeed(ConstantsMap.STAGE_TWO_SPEED); driveSubsystem.setLeftSpeed(ConstantsMap.STAGE_TWO_SPEED); - if((driveSubsystem.getLeftEncoderDistance() > leftEncoderDistanceGoal)||(driveSubsystem.getLeftEncoderDistance() > leftEncoderDistanceGoal)){ + if((driveSubsystem.getLeftEncoderDistance() > leftEncoderDistanceGoal)||(driveSubsystem.getLeftEncoderDistance() > leftEncoderDistanceGoal)) { } + + stageTwoComplete = true; } //once we are over the line, then watch for the horizontal change - protected void stageThree(){ + protected void stageThree() { } //once we get change and calculate the angle, then move forward to approximate the swing - protected void stageFour(){ + protected void stageFour() { } //now turn the robot to the desired angle - protected void stageFive(){ + protected void stageFive() { } //now move to the wall, and use the old two sensor stage - protected void stageSix(){ + protected void stageSix() { } // Called by execute to line up when only 1 sensor has seen tape - protected void oneSensorStage () { + protected void oneSensorStage() { boolean[] isFrontCameraOnStrip = followLineSubsystem.getCameraData(1); boolean[] isBackCameraOnStrip = followLineSubsystem.getCameraData(2); From 43d3dc6eca2a3082a3f17869e74c2f2e9f3a11eb Mon Sep 17 00:00:00 2001 From: Gabriel Bryk Date: Tue, 8 Jan 2019 10:07:29 -0600 Subject: [PATCH 010/131] started line subsystem --- .../frc/robot/subsystems/FollowLineSubsystem.java | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java b/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java index b754078..de815bb 100644 --- a/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java +++ b/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java @@ -7,19 +7,28 @@ package frc.robot.subsystems; + +import edu.wpi.first.wpilibj.I2C; +import edu.wpi.first.wpilibj.I2C.Port; import edu.wpi.first.wpilibj.command.Subsystem; /** * Add your docs here. */ public class FollowLineSubsystem extends Subsystem{ + I2C i2c; + public FollowLineSubsystem(){ + i2c = new I2C(Port.kOnboard, 0x09); + byte[] fromSensor = new byte[1]; + i2c.read(0x09, 1, fromSensor); + System.out.println(fromSensor.toString()); + + } @Override public void initDefaultCommand() { - // Set the default command for a subsystem here. - // setDefaultCommand(new MySpecialCommand()); + } - //gets data from camera srip, strip 1 is front camera, strip 2 is back camera public boolean[] getCameraData(int strip) { boolean[] sensors = new boolean[8]; From 3f9d73d915d6c35299fc8781d81af183303ad260 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Tue, 8 Jan 2019 10:11:31 -0600 Subject: [PATCH 011/131] Fixed some erros --- .../java/frc/robot/commands/FollowLineCommand.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 790e2de..4646fc3 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -74,9 +74,9 @@ protected void initialize() { //this is to be called upon initialization and whenever the button is hit twice protected void setupForRun(){ - visionStageComplete = false; - oneSensorStageComplete = false; - twoSensorStageComplete = false; + //visionStageComplete = false; + //oneSensorStageComplete = false; + //twoSensorStageComplete = false; oSSPreviousAverages = new ArrayList(); numOfJumps = 0; @@ -171,7 +171,9 @@ protected void oneSensorStage() { for(boolean b: isBackCameraOnStrip){ if(b){ - oneSensorStageComplete = true; + stageTwoComplete = true; + stageThreeComplete = true; + stageFourComplete = true; return; } } From 59e69942e06578d7e31555430108f897bb94d9f0 Mon Sep 17 00:00:00 2001 From: SutterButter4 Date: Tue, 8 Jan 2019 13:28:28 -0600 Subject: [PATCH 012/131] more stuff --- src/main/java/frc/robot/ConstantsMap.java | 1 + .../frc/robot/commands/FollowLineCommand.java | 104 +++++++++++++++++- 2 files changed, 101 insertions(+), 4 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index abc24a8..1a90323 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -23,6 +23,7 @@ public class ConstantsMap { public static final double ROBOT_LENGTH = 32; //inches public static final double APPROACH_TIME = 1.0d; //seconds public static final double STAGE_TWO_SPEED = 12.0d; //inches per second + public static final double ANGLE_TOLLERANCE = 0.5; //degrees diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 4646fc3..0a235cd 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -37,6 +37,14 @@ public class FollowLineCommand extends Command { //stage four variables protected boolean stageFourComplete; + protected boolean stageFourFristRun; + protected double deltaAverage; + protected double deltaDistance; + protected double deltaHorizontalDistance; + protected double angleToLine; + protected double desiredAngle; + protected double swingDistance; + protected double encoderGoal; //stage five variables protected boolean stageFiveComplete; @@ -77,6 +85,19 @@ protected void setupForRun(){ //visionStageComplete = false; //oneSensorStageComplete = false; //twoSensorStageComplete = false; + + //setup stage 1 variables + + //stage 2 + + //stage 3 + + //stage 4 + + //stage 5 + + //stage 6 + oSSPreviousAverages = new ArrayList(); numOfJumps = 0; @@ -138,30 +159,105 @@ protected void stageTwo() { driveSubsystem.setRightSpeed(ConstantsMap.STAGE_TWO_SPEED); driveSubsystem.setLeftSpeed(ConstantsMap.STAGE_TWO_SPEED); - if((driveSubsystem.getLeftEncoderDistance() > leftEncoderDistanceGoal)||(driveSubsystem.getLeftEncoderDistance() > leftEncoderDistanceGoal)) { + if((driveSubsystem.getLeftEncoderDistance() > leftEncoderDistanceGoal)||(driveSubsystem.getRightEncoderDistance() > rightEncoderDistanceGoal)) { + stageTwoComplete = true; } - - stageTwoComplete = true; } //once we are over the line, then watch for the horizontal change protected void stageThree() { + boolean[] isFrontCameraOnStrip = followLineSubsystem.getCameraData(1); + boolean[] isBackCameraOnStrip = followLineSubsystem.getCameraData(2); + + for(boolean b: isBackCameraOnStrip){ + if(b){ // jump to stage 6 + stageTwoComplete = true; + stageThreeComplete = true; + stageFourComplete = true; + stageFiveComplete = true; + return; + } + } + + //if(oSSPreviousAverages.size()) + + //okay so here is my idea, we should use the arraylist of previous whatever to determine the trend of where we are going(this is to be + //done by mesasuing the time between jumps, as the number is a step function). once we see a change,we can then calculate the angle off that we + //are, then use the gyro to get our current angle and then calculate the new angle. Once we have our desired angle, we adjust for the swing of + //the front of the robot about its center iwth forward movement and only then do we we orient ourselves to the desired angle. Then once the back + //sensor hits, we can do the fine tuning. + // + //do we even have a gyro on this bot? hopefully? if not we can calulate it using the change in positoin of left and right wheels and calculate + //the angle, but that is so messy + // + //i *try* to implement this below + // + //any questions or ideas on how to do this better, talk to me(jake). + //this gets the jumps in average + if(numOfJumps < 2) + { + double frontAverage = followLineSubsystem.getCameraAverage(1); + oSSPreviousAverages.add(frontAverage); + int oSSSize = oSSPreviousAverages.size(); + + if(oSSSize > 1 && numOfJumps < 2){//just making sure we dont step outside oSSpreviousaverages + if(Math.abs(oSSPreviousAverages.get(oSSSize - 1) - oSSPreviousAverages.get(oSSSize)) > 0.1){ + //now we have a step + + jumpIndices[numOfJumps] = oSSSize - 1; + jumpEncoderCount[numOfJumps] = 0; //TODO: get encoder values here, maybe average left and right? // yes divide by 1 billion + + numOfJumps++; + } + } + return; // please note this return when considering flow of this function + } else { + stageThreeComplete = true; + } } //once we get change and calculate the angle, then move forward to approximate the swing protected void stageFour() { + if(stageFourFristRun){//do caluclation for angle + deltaDistance = (jumpEncoderCount[1] - jumpEncoderCount[0]) * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; + deltaAverage = oSSPreviousAverages.get(jumpIndices[1]) - oSSPreviousAverages.get(jumpIndices[0] - 1); + deltaHorizontalDistance = deltaAverage * ConstantsMap.DISTANCE_BETWEEN_SENSOR_CAMERAS; + + angleToLine = Math.acos(deltaHorizontalDistance/deltaDistance); + desiredAngle = gyro.getAngle() + angleToLine; + + swingDistance = Math.sin(angleToLine) * ConstantsMap.ROBOT_LENGTH/2; + + double previousEncoderValue = (driveSubsystem.getLeftEncoderDistance() + driveSubsystem.getRightEncoderDistance())/2; + encoderGoal = (previousEncoderValue + swingDistance); + + stageFourFristRun = false; + } + //move forward to make up swing + driveSubsystem.setRightSpeed(ConstantsMap.STAGE_TWO_SPEED); + driveSubsystem.setLeftSpeed(ConstantsMap.STAGE_TWO_SPEED); + + if ((driveSubsystem.getLeftEncoderDistance() + driveSubsystem.getRightEncoderDistance())/2 > encoderGoal) { + driveSubsystem.setRightSpeed(0); + driveSubsystem.setLeftSpeed(0); + stageTwoComplete = true; + } } //now turn the robot to the desired angle protected void stageFive() { + if (Math.abs(desiredAngle - gyro.getAngle()) > ConstantsMap.ANGLE_TOLLERANCE){ + } else { + + } } //now move to the wall, and use the old two sensor stage protected void stageSix() { - + stageSixComplete = true; } // Called by execute to line up when only 1 sensor has seen tape From 4bfdbbdb822bb604a67ecc0ed7627c7a78c79a97 Mon Sep 17 00:00:00 2001 From: Gabriel Bryk Date: Tue, 8 Jan 2019 13:37:02 -0600 Subject: [PATCH 013/131] line subsystem returns values --- src/main/java/frc/robot/Robot.java | 5 +++++ .../java/frc/robot/commands/DriveCommand.java | 21 +++++++++++-------- .../robot/subsystems/FollowLineSubsystem.java | 16 +++++++++++--- 3 files changed, 30 insertions(+), 12 deletions(-) diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 28ec64e..a21b09a 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -12,6 +12,7 @@ import edu.wpi.first.wpilibj.command.Scheduler; import edu.wpi.first.wpilibj.smartdashboard.SendableChooser; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; +import frc.robot.commands.DriveCommand; import frc.robot.commands.ExampleCommand; import frc.robot.subsystems.DriveSubsystem; import frc.robot.subsystems.ExampleSubsystem; @@ -32,6 +33,7 @@ public class Robot extends TimedRobot { public static FollowLineSubsystem followLineSubsystem = new FollowLineSubsystem(); Command autonomousCommand; + Command driveCommand; SendableChooser chooser = new SendableChooser<>(); /** @@ -44,6 +46,7 @@ public void robotInit() { chooser.setDefaultOption("Default Auto", new ExampleCommand()); // chooser.addOption("My Auto", new MyAutoCommand()); SmartDashboard.putData("Auto mode", chooser); + driveCommand = new DriveCommand(); } /** @@ -117,6 +120,8 @@ public void teleopInit() { if (autonomousCommand != null) { autonomousCommand.cancel(); } + driveCommand.start(); + } /** diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index 2ab99f5..5f888f8 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -11,6 +11,7 @@ import frc.robot.Robot; import frc.robot.XboxMap; import frc.robot.subsystems.DriveSubsystem; +import frc.robot.subsystems.FollowLineSubsystem; import frc.robot.ConstantsMap; import edu.wpi.first.wpilibj.command.Command; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; @@ -21,6 +22,7 @@ public class DriveCommand extends Command { DriveSubsystem driveSubsystem = Robot.driveSubsystem; + FollowLineSubsystem lineSubsystem = Robot.followLineSubsystem; XboxMap xboxMap = new XboxMap(); OI oi = Robot.oi; boolean turtlemode = false; @@ -38,6 +40,7 @@ protected void initialize() { driveSubsystem.resetEncoders(); driveSubsystem.resetGyro(); fLC.initialize(); + System.out.println(lineSubsystem.getData()); } // Called repeatedly when this Command is scheduled to run @@ -47,14 +50,14 @@ protected void execute() { turtlemode = !turtlemode; } */ - if(!fLC.isFinished()) { - if(xboxMap.interruptFollowLine()) { - fLC.kill();//Make this a thing - }else{ - fLC.execute(); - } - } - else { + // if(!fLC.isFinished()) { + // if(xboxMap.interruptFollowLine()) { + // fLC.kill();//Make this a thing + // }else{ + // fLC.execute(); + // } + // } + // else { double speedLeft = xboxMap.left(); speedLeft *= -1; if(Math.abs(speedLeft) < 0.1){ @@ -90,7 +93,7 @@ protected void execute() { else if(!brakeState){ driveSubsystem.disableBrake(); } - } + //} diff --git a/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java b/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java index de815bb..0039a87 100644 --- a/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java +++ b/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java @@ -8,6 +8,8 @@ package frc.robot.subsystems; +import java.util.Arrays; + import edu.wpi.first.wpilibj.I2C; import edu.wpi.first.wpilibj.I2C.Port; import edu.wpi.first.wpilibj.command.Subsystem; @@ -18,16 +20,24 @@ public class FollowLineSubsystem extends Subsystem{ I2C i2c; public FollowLineSubsystem(){ + System.out.println("Line Follow Subsystem Init"); i2c = new I2C(Port.kOnboard, 0x09); - byte[] fromSensor = new byte[1]; - i2c.read(0x09, 1, fromSensor); - System.out.println(fromSensor.toString()); + } @Override public void initDefaultCommand() { + } + public String getData(){ + byte[] fromSensor = new byte[16]; + i2c.readOnly(fromSensor,16); + int[] data = new int[8]; + for(int i= 0;i<8;i++){ + data[i] = fromSensor[2*i] & 0xFF; + } + return Arrays.toString(data); } //gets data from camera srip, strip 1 is front camera, strip 2 is back camera public boolean[] getCameraData(int strip) { From 74c97769c9821e4c4fcd4b3e0c61b252add9a3e2 Mon Sep 17 00:00:00 2001 From: SutterButter4 Date: Tue, 8 Jan 2019 14:10:59 -0600 Subject: [PATCH 014/131] finally implemented getcameradata --- src/main/java/frc/robot/ConstantsMap.java | 2 ++ .../java/frc/robot/commands/FollowLineCommand.java | 10 ++++++++-- .../frc/robot/subsystems/FollowLineSubsystem.java | 13 ++++++++++++- 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 1a90323..367ec38 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -24,6 +24,8 @@ public class ConstantsMap { public static final double APPROACH_TIME = 1.0d; //seconds public static final double STAGE_TWO_SPEED = 12.0d; //inches per second public static final double ANGLE_TOLLERANCE = 0.5; //degrees + public static final double TURN_SPEED = 4; //inches per second + public static final double BLACK_WHITE_CUTOFF = 128; //some units idk diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 0a235cd..f1a5bfc 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -249,9 +249,15 @@ protected void stageFour() { //now turn the robot to the desired angle protected void stageFive() { if (Math.abs(desiredAngle - gyro.getAngle()) > ConstantsMap.ANGLE_TOLLERANCE){ - + if(desiredAngle - gyro.getAngle() > 0){ + driveSubsystem.setLeftSpeed((desiredAngle - gyro.getAngle())/20 * ConstantsMap.TURN_SPEED); + driveSubsystem.setRightSpeed((desiredAngle - gyro.getAngle())/20 * ConstantsMap.TURN_SPEED * -1); + } else{ + driveSubsystem.setLeftSpeed((desiredAngle - gyro.getAngle())/20 * ConstantsMap.TURN_SPEED * -1); + driveSubsystem.setRightSpeed((desiredAngle - gyro.getAngle())/20 * ConstantsMap.TURN_SPEED); + } } else { - + stageFiveComplete = true; } } diff --git a/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java b/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java index 0039a87..6df942c 100644 --- a/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java +++ b/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java @@ -13,6 +13,7 @@ import edu.wpi.first.wpilibj.I2C; import edu.wpi.first.wpilibj.I2C.Port; import edu.wpi.first.wpilibj.command.Subsystem; +import frc.robot.ConstantsMap; /** * Add your docs here. @@ -43,7 +44,17 @@ public String getData(){ public boolean[] getCameraData(int strip) { boolean[] sensors = new boolean[8]; - //get shit like bossP + byte[] fromSensor = new byte[16]; + i2c.readOnly(fromSensor,16); + int[] data = new int[8]; + + for(int i= 0;i<8;i++){ + data[i] = fromSensor[2*i] & 0xFF; + } + + for(int i = 0; i < 8; i++){ + sensors[i] = data[i] > ConstantsMap.BLACK_WHITE_CUTOFF; + } return sensors; } From 2a9c5e4a52d06e1278235f1b94a4e299d48a1c12 Mon Sep 17 00:00:00 2001 From: Gabriel Bryk Date: Tue, 8 Jan 2019 14:41:54 -0600 Subject: [PATCH 015/131] got it driving --- src/main/java/frc/robot/ConstantsMap.java | 2 +- src/main/java/frc/robot/OI.java | 2 +- src/main/java/frc/robot/Robot.java | 2 +- src/main/java/frc/robot/RobotMap.java | 8 ++--- src/main/java/frc/robot/XboxMap.java | 33 +++++++++++-------- .../java/frc/robot/commands/DriveCommand.java | 12 +++---- .../frc/robot/subsystems/DriveSubsystem.java | 21 +++--------- 7 files changed, 38 insertions(+), 42 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 367ec38..8efd007 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -14,7 +14,7 @@ public class ConstantsMap { public static final double ROBOT_WHEEL_RADIUS_INCHES = Float.NaN; //inches public static final double DRIVE_ENCODER_TICKS_PER_ROTATION = 256; //ticks public static final double DRIVE_ENCODER_DIST_PER_TICK = ((ROBOT_WHEEL_RADIUS_INCHES * 2 * Math.PI)/(DRIVE_ENCODER_TICKS_PER_ROTATION)); //inches - public static final double TURTLE_SPEED = Float.NaN; //to be determined + public static final double TURTLE_SPEED = .5; //to be determined //for line follower public static final double DISTANCE_BETWEEN_SENSORS = 6; //inches diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index 72d90c2..5250c50 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -19,7 +19,7 @@ public class OI { public OI(){ xbox = new Xbox(0); - ps4 = new Xbox(1); + //ps4 = new Xbox(1); //attack3_L = new Attack3(3); //attack3_R = new Attack3(4); diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index a21b09a..81e3614 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -46,7 +46,7 @@ public void robotInit() { chooser.setDefaultOption("Default Auto", new ExampleCommand()); // chooser.addOption("My Auto", new MyAutoCommand()); SmartDashboard.putData("Auto mode", chooser); - driveCommand = new DriveCommand(); + driveCommand = new DriveCommand(); } /** diff --git a/src/main/java/frc/robot/RobotMap.java b/src/main/java/frc/robot/RobotMap.java index 29dba0d..cf559ff 100644 --- a/src/main/java/frc/robot/RobotMap.java +++ b/src/main/java/frc/robot/RobotMap.java @@ -14,10 +14,10 @@ * floating around. */ public class RobotMap { - public static final int LEFT_DRIVE_PORT_1 = 0; - public static final int LEFT_DRIVE_PORT_2 = 1; - public static final int RIGHT_DRIVE_PORT_1 = 2; - public static final int RIGHT_DRIVE_PORT_2 = 3; + public static final int LEFT_DRIVE_PORT_1 = 2; + public static final int LEFT_DRIVE_PORT_2 = 5; + public static final int RIGHT_DRIVE_PORT_1 = 3; + public static final int RIGHT_DRIVE_PORT_2 = 4; public static final int LEFT_ENCODER_PORT_A = 4; public static final int LEFT_ENCODER_PORT_B = 5; diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index 5e8a3cd..1953f44 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -56,25 +56,32 @@ public boolean override() { public boolean outTake() { return oi.xbox.getBValue(); } - public boolean shiftLow() { - return oi.ps4.getBValue(); - } - public boolean shiftHigh() { - return oi.ps4.getAValue(); + public double right() { + return oi.xbox.getRightY(); } - - public double actuate() { + public double left() { return oi.xbox.getLeftY(); } + //public boolean shiftLow() { + // return oi.ps4.getBValue(); + // } + // public boolean shiftHigh() { + // return oi.ps4.getAValue(); + // } - public double right() { - return oi.ps4.getRightY(); - } - public double left() { - return oi.ps4.getLeftY(); - } + // public double actuate() { + // return oi.xbox.getLeftY(); + // } + + // public double right() { + // return oi.ps4.getRightY(); + // } + + // public double left() { + // return oi.ps4.getLeftY(); + // } public boolean interruptFollowLine() { return false; diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index 5f888f8..f2fce1f 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -63,12 +63,12 @@ protected void execute() { if(Math.abs(speedLeft) < 0.1){ speedLeft = 0; } - if(xboxMap.shiftHigh()) { - driveSubsystem.shiftHigh(); - } - if(xboxMap.shiftLow()) { - driveSubsystem.shiftLow(); - } + // if(xboxMap.shiftHigh()) { + // driveSubsystem.shiftHigh(); + // } + // if(xboxMap.shiftLow()) { + // driveSubsystem.shiftLow(); + // } double speedRight = xboxMap.right(); //speedRight *= -1; if(Math.abs(speedRight) < 0.1){ diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index 8aa410d..df00e48 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -36,6 +36,7 @@ public class DriveSubsystem extends Subsystem { private Solenoid shift_high,shift_low; public DriveSubsystem() { + System.out.println("Drive Subsystem Init"); //Instantiate motors left1 = new WPI_TalonSRX(RobotMap.LEFT_DRIVE_PORT_1); @@ -47,8 +48,8 @@ public DriveSubsystem() { left1.setInverted(false); left2.setInverted(false); //left3.setInverted(false); - right1.setInverted(false); - right2.setInverted(false); + right1.setInverted(true); + right2.setInverted(true); //right3.setInverted(false); //Instantiate Encoders @@ -66,8 +67,7 @@ public DriveSubsystem() { SmartDashboard.putData(leftEncoder); SmartDashboard.putData(rightEncoder); - shift_high = new Solenoid(2); - shift_low = new Solenoid(3); + } public void initDefaultCommand() { @@ -75,18 +75,7 @@ public void initDefaultCommand() { //setDefaultCommand(new DriveCommand()); } - //sets the gear to high by changing the solonoids on and off - public void shiftHigh() { - shift_high.set(true); - shift_low.set(false); - } - - //sets the gear to low by changing the solonoids on and off - public void shiftLow() { - shift_high.set(false); - shift_low.set(true); - } - + //sets the speed for both of the left motors public void setLeftSpeed(double speed) { left1.set(speed); From 45a5369d0901ba633b9b7ea04bd59a5d96699a17 Mon Sep 17 00:00:00 2001 From: Gabriel Bryk Date: Tue, 8 Jan 2019 15:09:00 -0600 Subject: [PATCH 016/131] line data working --- src/main/java/frc/robot/ConstantsMap.java | 6 +++--- src/main/java/frc/robot/Robot.java | 8 ++++++++ .../java/frc/robot/commands/DriveCommand.java | 18 +++++++++--------- .../frc/robot/commands/FollowLineCommand.java | 16 ++++++++-------- .../robot/subsystems/FollowLineSubsystem.java | 7 +++---- 5 files changed, 31 insertions(+), 24 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 8efd007..37eaa8b 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -22,10 +22,10 @@ public class ConstantsMap { public static final double ROBOT_WIDTH = 26; //inches public static final double ROBOT_LENGTH = 32; //inches public static final double APPROACH_TIME = 1.0d; //seconds - public static final double STAGE_TWO_SPEED = 12.0d; //inches per second + public static final double STAGE_TWO_SPEED = .12; //inches per second public static final double ANGLE_TOLLERANCE = 0.5; //degrees - public static final double TURN_SPEED = 4; //inches per second - public static final double BLACK_WHITE_CUTOFF = 128; //some units idk + public static final double TURN_SPEED = .04; //inches per second + public static final double BLACK_WHITE_CUTOFF = 220; //some units idk diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 81e3614..0941ce2 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -7,6 +7,8 @@ package frc.robot; +import java.util.Arrays; + import edu.wpi.first.wpilibj.TimedRobot; import edu.wpi.first.wpilibj.command.Command; import edu.wpi.first.wpilibj.command.Scheduler; @@ -57,8 +59,14 @@ public void robotInit() { *

This runs after the mode specific periodic functions, but before * LiveWindow and SmartDashboard integrated updating. */ + int count = 0; @Override public void robotPeriodic() { + // count++; + // if(count == 20){ + // System.out.println(Arrays.toString(followLineSubsystem.getLineData(1))); + // count = 0; + // } } /** diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index f2fce1f..f009a5f 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -50,14 +50,14 @@ protected void execute() { turtlemode = !turtlemode; } */ - // if(!fLC.isFinished()) { - // if(xboxMap.interruptFollowLine()) { - // fLC.kill();//Make this a thing - // }else{ - // fLC.execute(); - // } - // } - // else { + if(!fLC.isFinished()) { + if(xboxMap.interruptFollowLine()) { + fLC.kill();//Make this a thing + }else{ + fLC.execute(); + } + } + else { double speedLeft = xboxMap.left(); speedLeft *= -1; if(Math.abs(speedLeft) < 0.1){ @@ -93,7 +93,7 @@ protected void execute() { else if(!brakeState){ driveSubsystem.disableBrake(); } - //} + } diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index f1a5bfc..f30ab0d 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -166,8 +166,8 @@ protected void stageTwo() { //once we are over the line, then watch for the horizontal change protected void stageThree() { - boolean[] isFrontCameraOnStrip = followLineSubsystem.getCameraData(1); - boolean[] isBackCameraOnStrip = followLineSubsystem.getCameraData(2); + boolean[] isFrontCameraOnStrip = followLineSubsystem.getLineData(1); + boolean[] isBackCameraOnStrip = followLineSubsystem.getLineData(2); for(boolean b: isBackCameraOnStrip){ if(b){ // jump to stage 6 @@ -197,7 +197,7 @@ protected void stageThree() { //this gets the jumps in average if(numOfJumps < 2) { - double frontAverage = followLineSubsystem.getCameraAverage(1); + double frontAverage = followLineSubsystem.getLineAverage(1); oSSPreviousAverages.add(frontAverage); int oSSSize = oSSPreviousAverages.size(); @@ -268,8 +268,8 @@ protected void stageSix() { // Called by execute to line up when only 1 sensor has seen tape protected void oneSensorStage() { - boolean[] isFrontCameraOnStrip = followLineSubsystem.getCameraData(1); - boolean[] isBackCameraOnStrip = followLineSubsystem.getCameraData(2); + boolean[] isFrontCameraOnStrip = followLineSubsystem.getLineData(1); + boolean[] isBackCameraOnStrip = followLineSubsystem.getLineData(2); for(boolean b: isBackCameraOnStrip){ if(b){ @@ -298,7 +298,7 @@ protected void oneSensorStage() { //this gets the jumps in average if(numOfJumps < 2) { - double frontAverage = followLineSubsystem.getCameraAverage(1); + double frontAverage = followLineSubsystem.getLineAverage(1); oSSPreviousAverages.add(frontAverage); int oSSSize = oSSPreviousAverages.size(); @@ -337,8 +337,8 @@ protected void twoSensorStage () { twoSensorStageComplete = true; }*/ - double frontAverage = followLineSubsystem.getCameraAverage(1); - double backAverage = followLineSubsystem.getCameraAverage(2); + double frontAverage = followLineSubsystem.getLineAverage(1); + double backAverage = followLineSubsystem.getLineAverage(2); //Diff is in units of inches (1 camera distance is 1/2 an inch) double diff = (backAverage - frontAverage) * (ConstantsMap.DISTANCE_BETWEEN_SENSOR_CAMERAS); diff --git a/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java b/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java index 6df942c..a867671 100644 --- a/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java +++ b/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java @@ -41,7 +41,7 @@ public String getData(){ return Arrays.toString(data); } //gets data from camera srip, strip 1 is front camera, strip 2 is back camera - public boolean[] getCameraData(int strip) { + public boolean[] getLineData(int strip) { boolean[] sensors = new boolean[8]; byte[] fromSensor = new byte[16]; @@ -58,9 +58,8 @@ public boolean[] getCameraData(int strip) { return sensors; } - - public double getCameraAverage(int strip){ - boolean[] isFrontCameraOnStrip = getCameraData(strip); + public double getLineAverage(int strip){ + boolean[] isFrontCameraOnStrip = getLineData(strip); double sum = 0.0d; int camerasOn = 0; From cc782110661493d65bb08ecca12ff3f76ff00d9b Mon Sep 17 00:00:00 2001 From: Gabriel Bryk Date: Tue, 8 Jan 2019 15:21:56 -0600 Subject: [PATCH 017/131] moved follow to auto --- src/main/java/frc/robot/Robot.java | 4 +++- .../java/frc/robot/commands/DriveCommand.java | 21 +++++++++---------- .../frc/robot/commands/FollowLineCommand.java | 2 +- 3 files changed, 14 insertions(+), 13 deletions(-) diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 0941ce2..493ce07 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -16,6 +16,7 @@ import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import frc.robot.commands.DriveCommand; import frc.robot.commands.ExampleCommand; +import frc.robot.commands.FollowLineCommand; import frc.robot.subsystems.DriveSubsystem; import frc.robot.subsystems.ExampleSubsystem; import frc.robot.subsystems.FollowLineSubsystem; @@ -49,6 +50,7 @@ public void robotInit() { // chooser.addOption("My Auto", new MyAutoCommand()); SmartDashboard.putData("Auto mode", chooser); driveCommand = new DriveCommand(); + autonomousCommand = new FollowLineCommand(); } /** @@ -96,7 +98,7 @@ public void disabledPeriodic() { */ @Override public void autonomousInit() { - autonomousCommand = chooser.getSelected(); + /* * String autoSelected = SmartDashboard.getString("Auto Selector", diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index f009a5f..c6b7cc1 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -28,7 +28,7 @@ public class DriveCommand extends Command { boolean turtlemode = false; boolean brakeState = false; long lastPressed = 0; - FollowLineCommand fLC = new FollowLineCommand(); + public DriveCommand() { requires(driveSubsystem); @@ -39,7 +39,6 @@ protected void initialize() { System.out.println("Drive Comand init"); driveSubsystem.resetEncoders(); driveSubsystem.resetGyro(); - fLC.initialize(); System.out.println(lineSubsystem.getData()); } @@ -50,14 +49,14 @@ protected void execute() { turtlemode = !turtlemode; } */ - if(!fLC.isFinished()) { - if(xboxMap.interruptFollowLine()) { - fLC.kill();//Make this a thing - }else{ - fLC.execute(); - } - } - else { + // if(!fLC.isFinished()) { + // if(xboxMap.interruptFollowLine()) { + // fLC.kill();//Make this a thing + // }else{ + // fLC.execute(); + // } + // } + // else { double speedLeft = xboxMap.left(); speedLeft *= -1; if(Math.abs(speedLeft) < 0.1){ @@ -93,7 +92,7 @@ protected void execute() { else if(!brakeState){ driveSubsystem.disableBrake(); } - } + //} diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index f30ab0d..3f32bf4 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -109,7 +109,7 @@ protected void setupForRun(){ // Called repeatedly when this Command is scheduled to run @Override protected void execute() { - System.out.println("FollowLineCommand execute"); + //System.out.println("FollowLineCommand execute"); /*if(limit switch hit){ setupForRun();//reset for next run From 81ac08aae80bb527770e399faede773efffe4603 Mon Sep 17 00:00:00 2001 From: SutterButter4 Date: Wed, 9 Jan 2019 03:44:35 -0600 Subject: [PATCH 018/131] changed some stuff --- .../frc/robot/commands/FollowLineCommand.java | 141 ++++-------------- 1 file changed, 30 insertions(+), 111 deletions(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 3f32bf4..e8958b0 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -87,17 +87,24 @@ protected void setupForRun(){ //twoSensorStageComplete = false; //setup stage 1 variables - + stageOneComplete = false; + //stage 2 - + stageTwoComplete = false; + leftEncoderDistanceGoal = 0; + rightEncoderDistanceGoal = 0; + //stage 3 - + stageThreeComplete = false; + //stage 4 + stageFourComplete = false; //stage 5 + stageFiveComplete = false; //stage 6 - + stageSixComplete = false; oSSPreviousAverages = new ArrayList(); numOfJumps = 0; @@ -109,7 +116,7 @@ protected void setupForRun(){ // Called repeatedly when this Command is scheduled to run @Override protected void execute() { - //System.out.println("FollowLineCommand execute"); + System.out.println("FollowLineCommand execute"); /*if(limit switch hit){ setupForRun();//reset for next run @@ -135,6 +142,7 @@ protected void execute() { //vision stage, get us closer to the line protected void stageOne(){ + System.out.println("stage 1"); //TODO: use vision somehow.... //i have no clue as of yet, this is a different problem for somebody else @@ -148,6 +156,9 @@ protected void stageOne(){ //once we hit the line, make sure we go forward 2 inches protected void stageTwo() { + stageTwoComplete = true; + + System.out.println("stage 2"); //set target if(leftEncoderDistanceGoal == 0 && rightEncoderDistanceGoal == 0) { leftEncoderDistanceGoal = driveSubsystem.getLeftEncoderDistance() + 2; @@ -166,18 +177,19 @@ protected void stageTwo() { //once we are over the line, then watch for the horizontal change protected void stageThree() { + System.out.println("stage 3"); boolean[] isFrontCameraOnStrip = followLineSubsystem.getLineData(1); boolean[] isBackCameraOnStrip = followLineSubsystem.getLineData(2); - for(boolean b: isBackCameraOnStrip){ - if(b){ // jump to stage 6 - stageTwoComplete = true; - stageThreeComplete = true; - stageFourComplete = true; - stageFiveComplete = true; - return; - } - } + // for(boolean b: isBackCameraOnStrip){ + // if(b){ // jump to stage 6 + // stageTwoComplete = true; + // stageThreeComplete = true; + // stageFourComplete = true; + // stageFiveComplete = true; + // return; + // } + // } //if(oSSPreviousAverages.size()) @@ -219,6 +231,7 @@ protected void stageThree() { //once we get change and calculate the angle, then move forward to approximate the swing protected void stageFour() { + System.out.println("stage 4"); if(stageFourFristRun){//do caluclation for angle deltaDistance = (jumpEncoderCount[1] - jumpEncoderCount[0]) * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; deltaAverage = oSSPreviousAverages.get(jumpIndices[1]) - oSSPreviousAverages.get(jumpIndices[0] - 1); @@ -248,6 +261,7 @@ protected void stageFour() { //now turn the robot to the desired angle protected void stageFive() { + System.out.println("stage 5"); if (Math.abs(desiredAngle - gyro.getAngle()) > ConstantsMap.ANGLE_TOLLERANCE){ if(desiredAngle - gyro.getAngle() > 0){ driveSubsystem.setLeftSpeed((desiredAngle - gyro.getAngle())/20 * ConstantsMap.TURN_SPEED); @@ -263,104 +277,9 @@ protected void stageFive() { //now move to the wall, and use the old two sensor stage protected void stageSix() { + System.out.println("stage 6"); stageSixComplete = true; } - - // Called by execute to line up when only 1 sensor has seen tape - protected void oneSensorStage() { - boolean[] isFrontCameraOnStrip = followLineSubsystem.getLineData(1); - boolean[] isBackCameraOnStrip = followLineSubsystem.getLineData(2); - - for(boolean b: isBackCameraOnStrip){ - if(b){ - stageTwoComplete = true; - stageThreeComplete = true; - stageFourComplete = true; - return; - } - } - - //if(oSSPreviousAverages.size()) - - //okay so here is my idea, we should use the arraylist of previous whatever to determine the trend of where we are going(this is to be - //done by mesasuing the time between jumps, as the number is a step function). once we see a change,we can then calculate the angle off that we - //are, then use the gyro to get our current angle and then calculate the new angle. Once we have our desired angle, we adjust for the swing of - //the front of the robot about its center iwth forward movement and only then do we we orient ourselves to the desired angle. Then once the back - //sensor hits, we can do the fine tuning. - // - //do we even have a gyro on this bot? hopefully? if not we can calulate it using the change in positoin of left and right wheels and calculate - //the angle, but that is so messy - // - //i *try* to implement this below - // - //any questions or ideas on how to do this better, talk to me(jake). - - //this gets the jumps in average - if(numOfJumps < 2) - { - double frontAverage = followLineSubsystem.getLineAverage(1); - oSSPreviousAverages.add(frontAverage); - int oSSSize = oSSPreviousAverages.size(); - - if(oSSSize > 1 && numOfJumps < 2){//just making sure we dont step outside oSSpreviousaverages - if(Math.abs(oSSPreviousAverages.get(oSSSize - 1) - oSSPreviousAverages.get(oSSSize)) > 0.1){ - //now we have a step - - jumpIndices[numOfJumps] = oSSSize - 1; - jumpEncoderCount[numOfJumps] = 0; //TODO: get encoder values here, maybe average left and right? // yes divide by 1 billion - - numOfJumps++; - } - } - return; // please note this return when considering flow of this function - } - - //start to use ith - double deltaDistance = (jumpEncoderCount[1] - jumpEncoderCount[0]) * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; - double deltaAverage = oSSPreviousAverages.get(jumpIndices[1]) - oSSPreviousAverages.get(jumpIndices[0] - 1); - double deltaHorizontalDistance = deltaAverage * ConstantsMap.DISTANCE_BETWEEN_SENSOR_CAMERAS; - - double angleToLine = Math.acos(deltaHorizontalDistance/deltaDistance); - - - - - //TODO: actually implement the turning and math - } - - // Called by execute to line up when both sensors see tape - protected void twoSensorStage () { - - //this is so we know when to stop, will be uncommented when we have a mechanism for detecting when we hit the wall - /*if(we hit the wall) - { - twoSensorStageComplete = true; - }*/ - - double frontAverage = followLineSubsystem.getLineAverage(1); - double backAverage = followLineSubsystem.getLineAverage(2); - - //Diff is in units of inches (1 camera distance is 1/2 an inch) - double diff = (backAverage - frontAverage) * (ConstantsMap.DISTANCE_BETWEEN_SENSOR_CAMERAS); - - //get the error angle - double theta = Math.acos(diff / Math.sqrt(diff * diff + ConstantsMap.DISTANCE_BETWEEN_SENSORS * ConstantsMap.DISTANCE_BETWEEN_SENSORS)); - - //use the angle to figure out how far the wheels must correct to appraoch the wall so that it is perpedicular. - //note: this method is not perfect, but rather an approximation of the best way to correct our angle as it makes us follow an arc, meanding we - //become off center. But the better lined up we are before this step, the less we will shift side to side due to an arc(think about it, the error - //is almsot exactly equal to 1-cos(error angle)) in one direction or the other. - double leftWheelDistance = estimatedDistanceToWall + theta * ConstantsMap.ROBOT_WIDTH; - double rightWheelDistance = estimatedDistanceToWall - theta * ConstantsMap.ROBOT_WIDTH; - - //these units should be in INCHES - double leftWheelSpeed = leftWheelDistance / ConstantsMap.APPROACH_TIME; - double rightWheelSpeed = rightWheelDistance / ConstantsMap.APPROACH_TIME; - - //finally implement the turning/movement - driveSubsystem.setLeftSpeed(leftWheelSpeed); - driveSubsystem.setRightSpeed(rightWheelSpeed); - } // Make this return true when this Command no longer needs to run execute() @Override @@ -376,7 +295,7 @@ protected void end() { // Called for manual interruption of command protected void kill(){ - + } // Called when another command which requires one or more of the same From 9df859e7bb4223178e6b939433f281322c3726f8 Mon Sep 17 00:00:00 2001 From: SutterButter4 Date: Wed, 9 Jan 2019 04:04:08 -0600 Subject: [PATCH 019/131] added some changes and made things nicer --- .../frc/robot/commands/FollowLineCommand.java | 20 ++++--------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index e8958b0..9572908 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -145,12 +145,7 @@ protected void stageOne(){ System.out.println("stage 1"); //TODO: use vision somehow.... - //i have no clue as of yet, this is a different problem for somebody else - - //although, i will say that hopefully we can make so that even if we approach the wall at some terrible angle, then we can hopefully use vision - //and motion profiling in conjunction to make the robot sort of swing outward to approach from a more reasonable angle, because if we approach - //from an angle of incedence to the wall of less than say 25 degrees, steps 2 and three WILL fail to fix it. - //any questions or ideas on how to do this better, talk to me(jake). + //i have no clue as of yet, this is a different problem for somebody else although, i will say that hopefully we can make so that even if we approach the wall at some terrible angle, then we can hopefully use vision and motion profiling in conjunction to make the robot sort of swing outward to approach from a more reasonable angle, because if we approach from an angle of incedence to the wall of less than say 25 degrees, steps 2 and three WILL fail to fix it. any questions or ideas on how to do this better, talk to me(jake). stageOneComplete = true; } @@ -193,17 +188,10 @@ protected void stageThree() { //if(oSSPreviousAverages.size()) - //okay so here is my idea, we should use the arraylist of previous whatever to determine the trend of where we are going(this is to be - //done by mesasuing the time between jumps, as the number is a step function). once we see a change,we can then calculate the angle off that we - //are, then use the gyro to get our current angle and then calculate the new angle. Once we have our desired angle, we adjust for the swing of - //the front of the robot about its center iwth forward movement and only then do we we orient ourselves to the desired angle. Then once the back - //sensor hits, we can do the fine tuning. - // + //okay so here is my idea, we should use the arraylist of previous whatever to determine the trend of where we are going(this is to be done by mesasuing the time between jumps, as the number is a step function). once we see a change,we can then calculate the angle off that we are, then use the gyro to get our current angle and then calculate the new angle. Once we have our desired angle, we adjust for the swing of the front of the robot about its center iwth forward movement and only then do we we orient ourselves to the desired angle. Then once the back sensor hits, we can do the fine tuning. //do we even have a gyro on this bot? hopefully? if not we can calulate it using the change in positoin of left and right wheels and calculate //the angle, but that is so messy - // //i *try* to implement this below - // //any questions or ideas on how to do this better, talk to me(jake). //this gets the jumps in average @@ -215,10 +203,10 @@ protected void stageThree() { if(oSSSize > 1 && numOfJumps < 2){//just making sure we dont step outside oSSpreviousaverages if(Math.abs(oSSPreviousAverages.get(oSSSize - 1) - oSSPreviousAverages.get(oSSSize)) > 0.1){ - //now we have a step + //now we have a step, so we can set our values jumpIndices[numOfJumps] = oSSSize - 1; - jumpEncoderCount[numOfJumps] = 0; //TODO: get encoder values here, maybe average left and right? // yes divide by 1 billion + jumpEncoderCount[numOfJumps] = (driveSubsystem.getLeftEncoderCount() + driveSubsystem.getRightEncoderCount()) / 2; numOfJumps++; } From 9feed910675c1aecf86550e7b29d1b9c72fe3a7a Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Wed, 9 Jan 2019 09:04:33 -0600 Subject: [PATCH 020/131] Bug fixes and clean up --- .../frc/robot/commands/FollowLineCommand.java | 74 +++++++++---------- 1 file changed, 33 insertions(+), 41 deletions(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index e8958b0..ee7949e 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -35,9 +35,16 @@ public class FollowLineCommand extends Command { //stage three variables protected boolean stageThreeComplete; + ArrayList oSSPreviousAverages; + int numOfJumps; + int[] jumpIndices; // these will be the index after the change + int[] jumpEncoderCount; // relative to the start of stage 2 + long startTime; + //stage four variables protected boolean stageFourComplete; protected boolean stageFourFristRun; + protected double deltaAverage; protected double deltaDistance; protected double deltaHorizontalDistance; @@ -51,15 +58,8 @@ public class FollowLineCommand extends Command { //stage six variables protected boolean stageSixComplete; - - //stuff for stage 2 - ArrayList oSSPreviousAverages; - int numOfJumps; - int[] jumpIndices; // these will be the index after the change - int[] jumpEncoderCount; // relative to the start of stage 2 - long startTime; - //Stuff for one sensor stages + //Other stuff that we need AHRS gyro; @@ -80,12 +80,7 @@ protected void initialize() { } //this is to be called upon initialization and whenever the button is hit twice - protected void setupForRun(){ - - //visionStageComplete = false; - //oneSensorStageComplete = false; - //twoSensorStageComplete = false; - + protected void setupForRun() { //setup stage 1 variables stageOneComplete = false; @@ -97,6 +92,12 @@ protected void setupForRun(){ //stage 3 stageThreeComplete = false; + oSSPreviousAverages = new ArrayList(); + numOfJumps = 0; + jumpIndices = new int[]{0,0}; + jumpEncoderCount = new int[]{0, 0}; + startTime = System.nanoTime(); + //stage 4 stageFourComplete = false; @@ -104,13 +105,7 @@ protected void setupForRun(){ stageFiveComplete = false; //stage 6 - stageSixComplete = false; - - oSSPreviousAverages = new ArrayList(); - numOfJumps = 0; - jumpIndices = new int[]{0,0}; - jumpEncoderCount = new int[]{0, 0}; - startTime = System.nanoTime(); + stageSixComplete = false; } // Called repeatedly when this Command is scheduled to run @@ -134,14 +129,11 @@ protected void execute() { stageFive(); } else if(!stageSixComplete) { stageSix(); - } else { - //we are finished, idk what to do - } - + } } //vision stage, get us closer to the line - protected void stageOne(){ + protected void stageOne() { System.out.println("stage 1"); //TODO: use vision somehow.... @@ -160,7 +152,7 @@ protected void stageTwo() { System.out.println("stage 2"); //set target - if(leftEncoderDistanceGoal == 0 && rightEncoderDistanceGoal == 0) { + if (leftEncoderDistanceGoal == 0 && rightEncoderDistanceGoal == 0) { leftEncoderDistanceGoal = driveSubsystem.getLeftEncoderDistance() + 2; rightEncoderDistanceGoal = driveSubsystem.getRightEncoderDistance() + 2; @@ -170,7 +162,7 @@ protected void stageTwo() { driveSubsystem.setRightSpeed(ConstantsMap.STAGE_TWO_SPEED); driveSubsystem.setLeftSpeed(ConstantsMap.STAGE_TWO_SPEED); - if((driveSubsystem.getLeftEncoderDistance() > leftEncoderDistanceGoal)||(driveSubsystem.getRightEncoderDistance() > rightEncoderDistanceGoal)) { + if ((driveSubsystem.getLeftEncoderDistance() > leftEncoderDistanceGoal)||(driveSubsystem.getRightEncoderDistance() > rightEncoderDistanceGoal)) { stageTwoComplete = true; } } @@ -178,8 +170,8 @@ protected void stageTwo() { //once we are over the line, then watch for the horizontal change protected void stageThree() { System.out.println("stage 3"); - boolean[] isFrontCameraOnStrip = followLineSubsystem.getLineData(1); - boolean[] isBackCameraOnStrip = followLineSubsystem.getLineData(2); + //boolean[] isFrontCameraOnStrip = followLineSubsystem.getLineData(1); + //boolean[] isBackCameraOnStrip = followLineSubsystem.getLineData(2); // for(boolean b: isBackCameraOnStrip){ // if(b){ // jump to stage 6 @@ -213,7 +205,7 @@ protected void stageThree() { oSSPreviousAverages.add(frontAverage); int oSSSize = oSSPreviousAverages.size(); - if(oSSSize > 1 && numOfJumps < 2){//just making sure we dont step outside oSSpreviousaverages + if(oSSSize > 1 && numOfJumps < 2) {//just making sure we dont step outside oSSpreviousaverages if(Math.abs(oSSPreviousAverages.get(oSSSize - 1) - oSSPreviousAverages.get(oSSSize)) > 0.1){ //now we have a step @@ -232,15 +224,15 @@ protected void stageThree() { //once we get change and calculate the angle, then move forward to approximate the swing protected void stageFour() { System.out.println("stage 4"); - if(stageFourFristRun){//do caluclation for angle - deltaDistance = (jumpEncoderCount[1] - jumpEncoderCount[0]) * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; + if (stageFourFristRun) {//do caluclation for angle + deltaDistance = (jumpEncoderCount[1] - jumpEncoderCount[0]) * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; deltaAverage = oSSPreviousAverages.get(jumpIndices[1]) - oSSPreviousAverages.get(jumpIndices[0] - 1); deltaHorizontalDistance = deltaAverage * ConstantsMap.DISTANCE_BETWEEN_SENSOR_CAMERAS; angleToLine = Math.acos(deltaHorizontalDistance/deltaDistance); - desiredAngle = gyro.getAngle() + angleToLine; + desiredAngle = gyro.getAngle() + angleToLine;//This "zeros" the angle - swingDistance = Math.sin(angleToLine) * ConstantsMap.ROBOT_LENGTH/2; + swingDistance = Math.sin(angleToLine) * ConstantsMap.ROBOT_LENGTH/2;//Approximates distance the robot needs to move forward before turning to stay on line double previousEncoderValue = (driveSubsystem.getLeftEncoderDistance() + driveSubsystem.getRightEncoderDistance())/2; encoderGoal = (previousEncoderValue + swingDistance); @@ -252,21 +244,21 @@ protected void stageFour() { driveSubsystem.setRightSpeed(ConstantsMap.STAGE_TWO_SPEED); driveSubsystem.setLeftSpeed(ConstantsMap.STAGE_TWO_SPEED); - if ((driveSubsystem.getLeftEncoderDistance() + driveSubsystem.getRightEncoderDistance())/2 > encoderGoal) { + if ((driveSubsystem.getLeftEncoderDistance() + driveSubsystem.getRightEncoderDistance())/2 > encoderGoal) {//Once we have moved enough to account for the turn driveSubsystem.setRightSpeed(0); driveSubsystem.setLeftSpeed(0); - stageTwoComplete = true; + stageFourComplete = true; } } //now turn the robot to the desired angle protected void stageFive() { System.out.println("stage 5"); - if (Math.abs(desiredAngle - gyro.getAngle()) > ConstantsMap.ANGLE_TOLLERANCE){ - if(desiredAngle - gyro.getAngle() > 0){ + if (Math.abs(desiredAngle - gyro.getAngle()) > ConstantsMap.ANGLE_TOLLERANCE) {//Checks to see if our angle of approach is too great + if (desiredAngle - gyro.getAngle() > 0) {//These figure out which was to turn driveSubsystem.setLeftSpeed((desiredAngle - gyro.getAngle())/20 * ConstantsMap.TURN_SPEED); driveSubsystem.setRightSpeed((desiredAngle - gyro.getAngle())/20 * ConstantsMap.TURN_SPEED * -1); - } else{ + } else { driveSubsystem.setLeftSpeed((desiredAngle - gyro.getAngle())/20 * ConstantsMap.TURN_SPEED * -1); driveSubsystem.setRightSpeed((desiredAngle - gyro.getAngle())/20 * ConstantsMap.TURN_SPEED); } @@ -294,7 +286,7 @@ protected void end() { } // Called for manual interruption of command - protected void kill(){ + protected void kill() { } From 4547ed148b1626fc2468fb78390405cc8e78bc13 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Wed, 9 Jan 2019 09:46:34 -0600 Subject: [PATCH 021/131] Changed Xbox Map to static and added follow line command to drive command --- src/main/java/frc/robot/OI.java | 2 +- src/main/java/frc/robot/XboxMap.java | 31 ++++++---- .../java/frc/robot/commands/DriveCommand.java | 62 +++++++++++-------- .../frc/robot/commands/FollowLineCommand.java | 2 +- 4 files changed, 58 insertions(+), 39 deletions(-) diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index 5250c50..9eb73b9 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -15,7 +15,7 @@ public class OI { //User interface Constants public double attackThrottleSensitivity=.1; //Controllers - public Xbox xbox,ps4; + public static Xbox xbox,ps4; public OI(){ xbox = new Xbox(0); diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index 1953f44..9f3deca 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -8,7 +8,7 @@ package frc.robot; public class XboxMap { - OI oi = Robot.oi; + static OI oi = Robot.oi; //Drive commands public boolean startAutoBrakerSystem(){ @@ -29,38 +29,40 @@ public boolean startAutoBrakerSystem(){ // } //Elevator commands - public double controlFrontElevator(){ + static public double controlFrontElevator(){ return oi.xbox.getRightY(); } - public boolean startAutoElevatorBrakerSystem() { + static public boolean startAutoElevatorBrakerSystem() { return oi.xbox.getStartValue(); } //Universal stop command - public boolean stopSystem() { + static public boolean stopSystem() { return oi.xbox.getBackValue(); } - public boolean piston() { + static public boolean piston() { return oi.xbox.getLeftBumperValue(); } - public boolean inTake() { + static public boolean inTake() { return oi.xbox.getAValue(); } - public boolean override() { + + static public boolean override() { return oi.xbox.getXValue(); } - public boolean outTake() { + static public boolean outTake() { return oi.xbox.getBValue(); } - public double right() { + + static public double right() { return oi.xbox.getRightY(); } - public double left() { + static public double left() { return oi.xbox.getLeftY(); } //public boolean shiftLow() { @@ -83,7 +85,12 @@ public double left() { // return oi.ps4.getLeftY(); // } - public boolean interruptFollowLine() { - return false; + static public boolean runFollowLineCommand() { + return oi.xbox.getAValue(); + } + + //TODO B is also being used for outtake (Change later) + static public boolean interruptFollowLine() { + return oi.xbox.getBValue(); } } \ No newline at end of file diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index c6b7cc1..7050651 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -22,16 +22,21 @@ public class DriveCommand extends Command { DriveSubsystem driveSubsystem = Robot.driveSubsystem; - FollowLineSubsystem lineSubsystem = Robot.followLineSubsystem; - XboxMap xboxMap = new XboxMap(); + FollowLineCommand fLC; OI oi = Robot.oi; boolean turtlemode = false; boolean brakeState = false; long lastPressed = 0; + //Things for follow line command + private boolean runFollowLineCommand; + public DriveCommand() { - requires(driveSubsystem); + requires(driveSubsystem); + + //Set follow Line command booleans + runFollowLineCommand = false; } // Called just before this Command runs the first time @@ -39,27 +44,30 @@ protected void initialize() { System.out.println("Drive Comand init"); driveSubsystem.resetEncoders(); driveSubsystem.resetGyro(); - System.out.println(lineSubsystem.getData()); + //System.out.println(lineSubsystem.getData()); } // Called repeatedly when this Command is scheduled to run protected void execute() { - //Normal Driving - /*if(attack3Map.turtleButton()) { - turtlemode = !turtlemode; - } */ - - // if(!fLC.isFinished()) { - // if(xboxMap.interruptFollowLine()) { - // fLC.kill();//Make this a thing - // }else{ - // fLC.execute(); - // } - // } - // else { - double speedLeft = xboxMap.left(); + // Normal Driving + // if(attack3Map.turtleButton()) { + // turtlemode = !turtlemode; + // } + if (runFollowLineCommand) { + if (!fLC.isFinished()) { + if (XboxMap.interruptFollowLine()) { + fLC.kill();//Make this a thing + } else { + fLC.execute(); + } + } else { + runFollowLineCommand = false; + } + } else { + double speedLeft = XboxMap.left(); speedLeft *= -1; - if(Math.abs(speedLeft) < 0.1){ + + if (Math.abs(speedLeft) < 0.1) { speedLeft = 0; } // if(xboxMap.shiftHigh()) { @@ -68,7 +76,7 @@ protected void execute() { // if(xboxMap.shiftLow()) { // driveSubsystem.shiftLow(); // } - double speedRight = xboxMap.right(); + double speedRight = XboxMap.right(); //speedRight *= -1; if(Math.abs(speedRight) < 0.1){ speedRight = 0; @@ -82,7 +90,7 @@ protected void execute() { //Auto Brake Mode //attack3Map.startAutoBrakerSystem(); - if(xboxMap.startAutoBrakerSystem() && (System.currentTimeMillis() - lastPressed) > 200){ + if(XboxMap.startAutoBrakerSystem() && (System.currentTimeMillis() - lastPressed) > 200){ brakeState = !brakeState; lastPressed = System.currentTimeMillis(); } @@ -92,11 +100,15 @@ protected void execute() { else if(!brakeState){ driveSubsystem.disableBrake(); } - //} - - - //Putting Data up + //Check for follow line command call + if (XboxMap.runFollowLineCommand()) { + runFollowLineCommand = true; + fLC = new FollowLineCommand(); + } + } + + //Putting Data up displayData(); } diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index e59ed42..bdf4e08 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -264,7 +264,7 @@ protected void stageSix() { // Make this return true when this Command no longer needs to run execute() @Override protected boolean isFinished() { - return false; + return stageSixComplete; } // Called once after isFinished returns true From 2314903d884180e36bf704a08e24e64dfced8de6 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Wed, 9 Jan 2019 09:48:14 -0600 Subject: [PATCH 022/131] Fixed thing for static --- src/main/java/frc/robot/XboxMap.java | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index 9f3deca..1ef89e7 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -11,20 +11,20 @@ public class XboxMap { static OI oi = Robot.oi; //Drive commands - public boolean startAutoBrakerSystem(){ + static public boolean startAutoBrakerSystem(){ return oi.xbox.getRightBumperValue(); } -// public boolean controlDriverGear() { +// static public boolean controlDriverGear() { // return oi.xbox.getLeftBumperValue(); // } // //Grabber commands -// public double controlUpperGrabberOut(){ +// static public double controlUpperGrabberOut(){ // return oi.xbox.getRightTriggers(); // } // -// public double controlUpperGrabberIn(){ +// static public double controlUpperGrabberIn(){ // return oi.xbox.getLeftTriggers(); // } @@ -65,23 +65,25 @@ static public double right() { static public double left() { return oi.xbox.getLeftY(); } - //public boolean shiftLow() { - // return oi.ps4.getBValue(); + + // static public boolean shiftLow() { + // return oi.ps4.getBValue(); // } - // public boolean shiftHigh() { + + // static public boolean shiftHigh() { // return oi.ps4.getAValue(); // } - // public double actuate() { + // static public double actuate() { // return oi.xbox.getLeftY(); // } - // public double right() { + // static public double right() { // return oi.ps4.getRightY(); // } - // public double left() { + // static public double left() { // return oi.ps4.getLeftY(); // } From 7cadeef5fc2a1f11fc03a2a0601d055d1e7b45de Mon Sep 17 00:00:00 2001 From: Gabriel Bryk Date: Wed, 9 Jan 2019 12:10:08 -0600 Subject: [PATCH 023/131] Added Talon Encoders --- .../frc/robot/subsystems/DriveSubsystem.java | 31 ++++++++----------- 1 file changed, 13 insertions(+), 18 deletions(-) diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index df00e48..db52bbd 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -12,6 +12,7 @@ import frc.robot.RobotMap; import frc.robot.ConstantsMap; +import com.ctre.phoenix.motorcontrol.FeedbackDevice; import com.ctre.phoenix.motorcontrol.NeutralMode; import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; import com.kauailabs.navx.frc.AHRS; @@ -53,8 +54,9 @@ public DriveSubsystem() { //right3.setInverted(false); //Instantiate Encoders - leftEncoder = new Encoder(RobotMap.LEFT_ENCODER_PORT_A, RobotMap.LEFT_ENCODER_PORT_B, false); - rightEncoder = new Encoder(RobotMap.RIGHT_ENCODER_PORT_A, RobotMap.RIGHT_ENCODER_PORT_B,true); + left1.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Relative, 0, 0); + right1.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Relative, 0, 0); + //Instantiate Gyro | Gyro automatically calibrates when given power ahrs = new AHRS(SPI.Port.kMXP); @@ -121,42 +123,35 @@ public void disableBrake(){ right2.setNeutralMode(NeutralMode.Coast); } - public Encoder getRightEncoder(){ - return rightEncoder; - } - - public Encoder getLeftEncoder(){ - return leftEncoder; - } - + //Get Encoder Distances public double getRightEncoderDistance(){ - return rightEncoder.getDistance(); + return right1.getSelectedSensorPosition(0)* ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; } public double getLeftEncoderDistance(){ - return leftEncoder.getDistance(); + return left1.getSelectedSensorPosition(0)* ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; } //Get Encoder counts public int getLeftEncoderCount(){ - return leftEncoder.get(); + return right1.getSelectedSensorPosition(0); } public int getRightEncoderCount(){ - return rightEncoder.get() * -1; + return right1.getSelectedSensorPosition(0); } //Get Encoder Rates public double getRightEncoderRate(){ - return rightEncoder.getRate(); + return right1.getSelectedSensorVelocity(0); } public double getLeftEncoderRate(){ - return leftEncoder.getRate(); + return left1.getSelectedSensorVelocity(0); } //reset encoders public void resetEncoders(){ - leftEncoder.reset(); - rightEncoder.reset(); + left1.getSensorCollection().setQuadraturePosition(0, 0); + right1.getSensorCollection().setQuadraturePosition(0, 0); } public AHRS getGyro(){ From b398b8f3024e1b45bd6a394440c16906eaaca71b Mon Sep 17 00:00:00 2001 From: SutterButter4 Date: Wed, 9 Jan 2019 12:27:27 -0600 Subject: [PATCH 024/131] finish the kill command --- .../java/frc/robot/commands/FollowLineCommand.java | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index e59ed42..2164d09 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -187,8 +187,7 @@ protected void stageThree() { //any questions or ideas on how to do this better, talk to me(jake). //this gets the jumps in average - if(numOfJumps < 2) - { + if(numOfJumps < 2) { double frontAverage = followLineSubsystem.getLineAverage(1); oSSPreviousAverages.add(frontAverage); int oSSSize = oSSPreviousAverages.size(); @@ -275,7 +274,14 @@ protected void end() { // Called for manual interruption of command protected void kill() { - + stageOneComplete = true; + stageTwoComplete = true; + stageThreeComplete = true; + stageFourComplete = true; + stageFiveComplete = true; + stageSixComplete = true; + + System.out.println("FollowLineCommand kill"); } // Called when another command which requires one or more of the same @@ -283,5 +289,6 @@ protected void kill() { @Override protected void interrupted() { System.out.println("FollowLineCommand interrupted"); + kill(); } } \ No newline at end of file From b3eadb02fa26708bf18fed068bd48deac086cc83 Mon Sep 17 00:00:00 2001 From: Gabe Bryk Date: Wed, 9 Jan 2019 13:26:12 -0600 Subject: [PATCH 025/131] testing vision code --- vision.py | 174 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 174 insertions(+) create mode 100644 vision.py diff --git a/vision.py b/vision.py new file mode 100644 index 0000000..9148699 --- /dev/null +++ b/vision.py @@ -0,0 +1,174 @@ +import cv2 as cv2 +import numpy as np +import math + +centerx = 640 +centery = 360 +focal = 640 +camera_height = 30 +target_bottom_height=40 +target_height = 5 +target_width = 15 +camera_fov = 70 + +def hsl_threshold(input, hue, sat, lum): + """Segment an image based on hue, saturation, and luminance ranges. + Args: + input: A BGR numpy.ndarray. + hue: A list of two numbers the are the min and max hue. + sat: A list of two numbers the are the min and max saturation. + lum: A list of two numbers the are the min and max luminance. + Returns: + A black and white numpy.ndarray. + """ + out = cv2.cvtColor(input, cv2.COLOR_BGR2HLS) + return cv2.inRange(out, (hue[0], lum[0], sat[0]), (hue[1], lum[1], sat[1])) + + +def find_contours(input, external_only): + """Sets the values of pixels in a binary image to their distance to the nearest black pixel. + Args: + input: A numpy.ndarray. + external_only: A boolean. If true only external contours are found. + Return: + A list of numpy.ndarray where each one represents a contour. + """ + if(external_only): + mode = cv2.RETR_EXTERNAL + else: + mode = cv2.RETR_LIST + method = cv2.CHAIN_APPROX_SIMPLE + im2, contours, hierarchy =cv2.findContours(input, mode=mode, method=method) + return contours + + +def filter_contours(input_contours, min_area, min_perimeter, min_width, max_width, + min_height, max_height, solidity, max_vertex_count, min_vertex_count, + min_ratio, max_ratio): + """Filters out contours that do not meet certain criteria. + Args: + input_contours: Contours as a list of numpy.ndarray. + min_area: The minimum area of a contour that will be kept. + min_perimeter: The minimum perimeter of a contour that will be kept. + min_width: Minimum width of a contour. + max_width: MaxWidth maximum width. + min_height: Minimum height. + max_height: Maximimum height. + solidity: The minimum and maximum solidity of a contour. + min_vertex_count: Minimum vertex Count of the contours. + max_vertex_count: Maximum vertex Count. + min_ratio: Minimum ratio of width to height. + max_ratio: Maximum ratio of width to height. + Returns: + Contours as a list of numpy.ndarray. + """ + output = [] + for contour in input_contours: + x,y,w,h = cv2.boundingRect(contour) + if (w < min_width or w > max_width): + continue + if (h < min_height or h > max_height): + continue + area = cv2.contourArea(contour) + if (area < min_area): + continue + if (cv2.arcLength(contour, True) < min_perimeter): + continue + hull = cv2.convexHull(contour) + solid = 100 * area / cv2.contourArea(hull) + if (solid < solidity[0] or solid > solidity[1]): + continue + if (len(contour) < min_vertex_count or len(contour) > max_vertex_count): + continue + ratio = (float)(w) / h + if (ratio < min_ratio or ratio > max_ratio): + continue + output.append(contour) + + return output +def getAngle(center): + return math.atan(center/focal) * 180 / math.pi; +def getDistance(angle): + return (target_bottom_height + (target_height/2) - camera_height) / math.tan((verticalangle + camera_angle) * math.pi / 180) ; +def process(img): + + hsl_threshold_hue = [1.0791356615025363, 74.53925305259105] + hsl_threshold_saturation = [30.575547587099685, 123.00341850254723] + hsl_threshold_luminance = [214.02876531477455, 255.0] + + threshold_output = None + + + + + """ + Runs the pipeline and sets all outputs to new values. + """ + # Step HSL_Threshold0: + hsl_threshold_input = img + (hsl_threshold_output) = hsl_threshold(hsl_threshold_input, hsl_threshold_hue, hsl_threshold_saturation, hsl_threshold_luminance) + + find_contours_input = hsl_threshold_output + find_contours_external_only = False + + find_contours_output = None + + # Step Find_Contours0: + find_contours_input = hsl_threshold_output + (find_contours_output) = find_contours(find_contours_input, find_contours_external_only) + + filter_contours_contours = find_contours_output + filter_contours_min_area = 100.0 + filter_contours_min_perimeter = 0 + filter_contours_min_width = 0 + filter_contours_max_width = 1000 + filter_contours_min_height = 0 + filter_contours_max_height = 1000 + filter_contours_solidity = [79.73620617132391, 100.0] + filter_contours_max_vertices = 200.0 + filter_contours_min_vertices = 4.0 + filter_contours_min_ratio = 0 + filter_contours_max_ratio = 1000 + + filter_contours_output = None + + # Step Filter_Contours0: + filter_contours_contours = find_contours_output + (filter_contours_output) = filter_contours(filter_contours_contours, filter_contours_min_area, filter_contours_min_perimeter, filter_contours_min_width, filter_contours_max_width, filter_contours_min_height, filter_contours_max_height, filter_contours_solidity, filter_contours_max_vertices, filter_contours_min_vertices, filter_contours_min_ratio, filter_contours_max_ratio) + + #print(len(filter_contours_output)) + contours= filter_contours_output + cv2.drawContours(img, contours, -1, (0,255,0), 3) + if(len(contours)==2): + cnt = contours[0] + cnt2 = contours[1] + x,y,w,h = cv2.boundingRect(cnt) + x2,y2,w2,h2 = cv2.boundingRect(cnt2) + if(x Date: Wed, 9 Jan 2019 13:29:12 -0600 Subject: [PATCH 026/131] talon encoders broken --- src/main/java/frc/robot/commands/DriveCommand.java | 9 +-------- .../java/frc/robot/subsystems/DriveSubsystem.java | 12 +++--------- 2 files changed, 4 insertions(+), 17 deletions(-) diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index 7050651..d05cb75 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -114,14 +114,7 @@ else if(!brakeState){ } protected void displayData(){ - SmartDashboard.putNumber("Left Encoder Count: ", driveSubsystem.getLeftEncoderCount()); - SmartDashboard.putNumber("Left Encoder Distance: ", driveSubsystem.getLeftEncoderDistance()); - SmartDashboard.putNumber("Left Encoder Rate: ", driveSubsystem.getLeftEncoderRate()); - SmartDashboard.putNumber("Right Encoder Count: ", driveSubsystem.getRightEncoderCount()); - SmartDashboard.putNumber("Right Encoder Distance: ", driveSubsystem.getRightEncoderDistance()); - SmartDashboard.putNumber("Right Encoder Rate: ", driveSubsystem.getRightEncoderRate()); - SmartDashboard.putNumber("Gyro Angle: ", driveSubsystem.getGyroAngle()); - SmartDashboard.putBoolean("AutoBrake", brakeState); + } // Make this return true when this Command no longer needs to run execute() diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index db52bbd..ec35564 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -30,11 +30,9 @@ public class DriveSubsystem extends Subsystem { private WPI_TalonSRX left1,left2,left3,right1,right2, right3; - private Encoder leftEncoder, rightEncoder; private AHRS ahrs; - private Solenoid shift_high,shift_low; public DriveSubsystem() { System.out.println("Drive Subsystem Init"); @@ -62,14 +60,10 @@ public DriveSubsystem() { ahrs = new AHRS(SPI.Port.kMXP); stop(); - //Set encoder distance per pulse - leftEncoder.setDistancePerPulse(ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK); - rightEncoder.setDistancePerPulse(ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK); - SmartDashboard.putData(ahrs); - SmartDashboard.putData(leftEncoder); - SmartDashboard.putData(rightEncoder); - + + SmartDashboard.putNumber("Right Count",right1.getSelectedSensorPosition(0)); + SmartDashboard.putNumber("LEft Count",left1.getSelectedSensorPosition(0)); } public void initDefaultCommand() { From cf0950840f91096aad1a0778fc49eceecceeeadc Mon Sep 17 00:00:00 2001 From: Gabriel Bryk Date: Wed, 9 Jan 2019 14:06:39 -0600 Subject: [PATCH 027/131] Encoders working, followline not working --- src/main/java/frc/robot/ConstantsMap.java | 4 +-- src/main/java/frc/robot/RobotMap.java | 6 +---- .../java/frc/robot/commands/DriveCommand.java | 5 +++- .../frc/robot/commands/FollowLineCommand.java | 19 ++++++++------ .../frc/robot/subsystems/DriveSubsystem.java | 25 ++++++++----------- 5 files changed, 29 insertions(+), 30 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 37eaa8b..8cb354c 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -11,8 +11,8 @@ * Add your docs here. */ public class ConstantsMap { - public static final double ROBOT_WHEEL_RADIUS_INCHES = Float.NaN; //inches - public static final double DRIVE_ENCODER_TICKS_PER_ROTATION = 256; //ticks + public static final double ROBOT_WHEEL_RADIUS_INCHES = 2; //inches + public static final double DRIVE_ENCODER_TICKS_PER_ROTATION = 4096; //ticks public static final double DRIVE_ENCODER_DIST_PER_TICK = ((ROBOT_WHEEL_RADIUS_INCHES * 2 * Math.PI)/(DRIVE_ENCODER_TICKS_PER_ROTATION)); //inches public static final double TURTLE_SPEED = .5; //to be determined diff --git a/src/main/java/frc/robot/RobotMap.java b/src/main/java/frc/robot/RobotMap.java index cf559ff..3b2cd5a 100644 --- a/src/main/java/frc/robot/RobotMap.java +++ b/src/main/java/frc/robot/RobotMap.java @@ -19,9 +19,5 @@ public class RobotMap { public static final int RIGHT_DRIVE_PORT_1 = 3; public static final int RIGHT_DRIVE_PORT_2 = 4; - public static final int LEFT_ENCODER_PORT_A = 4; - public static final int LEFT_ENCODER_PORT_B = 5; - - public static final int RIGHT_ENCODER_PORT_A = 6; - public static final int RIGHT_ENCODER_PORT_B = 7; + } diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index d05cb75..daa318c 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -114,7 +114,10 @@ else if(!brakeState){ } protected void displayData(){ - + SmartDashboard.putNumber("Right Count",driveSubsystem.getRightEncoderCount()); + SmartDashboard.putNumber("LEft Count",driveSubsystem.getLeftEncoderCount()); + SmartDashboard.putNumber("Right Distance",driveSubsystem.getRightEncoderDistance()); + SmartDashboard.putNumber("LEft Disatance",driveSubsystem.getLeftEncoderDistance()); } // Make this return true when this Command no longer needs to run execute() diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 438256c..b4ef530 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -76,6 +76,7 @@ public FollowLineCommand() { @Override protected void initialize() { System.out.println("FollowLineCommand init"); + gyro = driveSubsystem.getGyro(); setupForRun(); } @@ -111,7 +112,7 @@ protected void setupForRun() { // Called repeatedly when this Command is scheduled to run @Override protected void execute() { - System.out.println("FollowLineCommand execute"); + /*if(limit switch hit){ setupForRun();//reset for next run @@ -143,7 +144,7 @@ protected void stageOne() { //once we hit the line, make sure we go forward 2 inches protected void stageTwo() { - stageTwoComplete = true; + //stageTwoComplete = true; System.out.println("stage 2"); //set target @@ -193,16 +194,18 @@ protected void stageThree() { int oSSSize = oSSPreviousAverages.size(); if(oSSSize > 1 && numOfJumps < 2) {//just making sure we dont step outside oSSpreviousaverages - if(Math.abs(oSSPreviousAverages.get(oSSSize - 1) - oSSPreviousAverages.get(oSSSize)) > 0.1){ + if(Math.abs(oSSPreviousAverages.get(oSSSize - 1) - oSSPreviousAverages.get(oSSSize - 2)) > 0.1){ //now we have a step, so we can set our values jumpIndices[numOfJumps] = oSSSize - 1; jumpEncoderCount[numOfJumps] = (driveSubsystem.getLeftEncoderCount() + driveSubsystem.getRightEncoderCount()) / 2; + + System.out.println("" + numOfJumps + ", " + jumpIndices[numOfJumps] + ", " + jumpEncoderCount[numOfJumps]); numOfJumps++; } } - return; // please note this return when considering flow of this function + return; // please note this return when considering flow of this a } else { stageThreeComplete = true; } @@ -243,11 +246,11 @@ protected void stageFive() { System.out.println("stage 5"); if (Math.abs(desiredAngle - gyro.getAngle()) > ConstantsMap.ANGLE_TOLLERANCE) {//Checks to see if our angle of approach is too great if (desiredAngle - gyro.getAngle() > 0) {//These figure out which was to turn - driveSubsystem.setLeftSpeed((desiredAngle - gyro.getAngle())/20 * ConstantsMap.TURN_SPEED); - driveSubsystem.setRightSpeed((desiredAngle - gyro.getAngle())/20 * ConstantsMap.TURN_SPEED * -1); + driveSubsystem.setLeftSpeed((ConstantsMap.TURN_SPEED)); + driveSubsystem.setRightSpeed((ConstantsMap.TURN_SPEED * -1)); } else { - driveSubsystem.setLeftSpeed((desiredAngle - gyro.getAngle())/20 * ConstantsMap.TURN_SPEED * -1); - driveSubsystem.setRightSpeed((desiredAngle - gyro.getAngle())/20 * ConstantsMap.TURN_SPEED); + driveSubsystem.setLeftSpeed(( ConstantsMap.TURN_SPEED * -1)); + driveSubsystem.setRightSpeed( ConstantsMap.TURN_SPEED); } } else { stageFiveComplete = true; diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index ec35564..ce2bae5 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -38,19 +38,17 @@ public DriveSubsystem() { System.out.println("Drive Subsystem Init"); //Instantiate motors - left1 = new WPI_TalonSRX(RobotMap.LEFT_DRIVE_PORT_1); - left2 = new WPI_TalonSRX(RobotMap.LEFT_DRIVE_PORT_2); + left1 = new WPI_TalonSRX(RobotMap.LEFT_DRIVE_PORT_2); + left2 = new WPI_TalonSRX(RobotMap.LEFT_DRIVE_PORT_1); right1 = new WPI_TalonSRX(RobotMap.RIGHT_DRIVE_PORT_1); right2 = new WPI_TalonSRX(RobotMap.RIGHT_DRIVE_PORT_2); //Invert Motors - left1.setInverted(false); - left2.setInverted(false); - //left3.setInverted(false); + right1.setInverted(true); right2.setInverted(true); //right3.setInverted(false); - + //Instantiate Encoders left1.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Relative, 0, 0); right1.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Relative, 0, 0); @@ -62,8 +60,7 @@ public DriveSubsystem() { - SmartDashboard.putNumber("Right Count",right1.getSelectedSensorPosition(0)); - SmartDashboard.putNumber("LEft Count",left1.getSelectedSensorPosition(0)); + SmartDashboard.putData(ahrs); } public void initDefaultCommand() { @@ -120,26 +117,26 @@ public void disableBrake(){ //Get Encoder Distances public double getRightEncoderDistance(){ - return right1.getSelectedSensorPosition(0)* ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; + return right1.getSelectedSensorPosition(0)* -1 * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; } public double getLeftEncoderDistance(){ - return left1.getSelectedSensorPosition(0)* ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; + return left1.getSelectedSensorPosition(0)* -1 * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; } //Get Encoder counts public int getLeftEncoderCount(){ - return right1.getSelectedSensorPosition(0); + return left1.getSelectedSensorPosition(0)* -1; } public int getRightEncoderCount(){ - return right1.getSelectedSensorPosition(0); + return right1.getSelectedSensorPosition(0)* -1; } //Get Encoder Rates public double getRightEncoderRate(){ - return right1.getSelectedSensorVelocity(0); + return right1.getSelectedSensorVelocity(0)* -1; } public double getLeftEncoderRate(){ - return left1.getSelectedSensorVelocity(0); + return left1.getSelectedSensorVelocity(0)* -1; } //reset encoders From 2f8b5b2e9becd84d67df76f640872c5689e5e92d Mon Sep 17 00:00:00 2001 From: Gabriel Bryk Date: Thu, 10 Jan 2019 08:50:57 -0600 Subject: [PATCH 028/131] following code from wednesday --- src/main/java/frc/robot/ConstantsMap.java | 8 +- .../frc/robot/commands/FollowLineCommand.java | 74 ++++++++++++++----- .../frc/robot/subsystems/DriveSubsystem.java | 2 +- .../robot/subsystems/FollowLineSubsystem.java | 11 +++ 4 files changed, 73 insertions(+), 22 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 8cb354c..c3a7d51 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -23,10 +23,10 @@ public class ConstantsMap { public static final double ROBOT_LENGTH = 32; //inches public static final double APPROACH_TIME = 1.0d; //seconds public static final double STAGE_TWO_SPEED = .12; //inches per second - public static final double ANGLE_TOLLERANCE = 0.5; //degrees - public static final double TURN_SPEED = .04; //inches per second + public static final double ANGLE_TOLLERANCE = 0.25; //degrees + public static final double TURN_SPEED = .5; //inches per second public static final double BLACK_WHITE_CUTOFF = 220; //some units idk - - + public static final double LOW_CUTOFF = 210; + public static final double HIGH_CUTOFF = 230; } \ No newline at end of file diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index b4ef530..f06a4db 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -14,6 +14,7 @@ import frc.robot.subsystems.FollowLineSubsystem; import java.lang.Math; import java.util.ArrayList; +import java.util.Arrays; import com.kauailabs.navx.frc.AHRS; @@ -35,10 +36,11 @@ public class FollowLineCommand extends Command { //stage three variables protected boolean stageThreeComplete; + boolean[] previousValues; ArrayList oSSPreviousAverages; int numOfJumps; int[] jumpIndices; // these will be the index after the change - int[] jumpEncoderCount; // relative to the start of stage 2 + double[] jumpEncoderDistance; // relative to the start of stage 2 long startTime; //stage four variables @@ -96,11 +98,13 @@ protected void setupForRun() { oSSPreviousAverages = new ArrayList(); numOfJumps = 0; jumpIndices = new int[]{0,0}; - jumpEncoderCount = new int[]{0, 0}; + jumpEncoderDistance = new double[]{0.0, 0.0}; startTime = System.nanoTime(); + previousValues = new boolean[]{false, false, false, false, false, false, false, false}; //stage 4 stageFourComplete = false; + stageFourFristRun = true; //stage 5 stageFiveComplete = false; @@ -166,7 +170,20 @@ protected void stageTwo() { //once we are over the line, then watch for the horizontal change protected void stageThree() { System.out.println("stage 3"); - //boolean[] isFrontCameraOnStrip = followLineSubsystem.getLineData(1); + boolean[] isFrontCameraOnStrip = new boolean[8]; + + int[] frontCameraValues = followLineSubsystem.getRawData(); + + for(int i = 0; i < 8; i++){ + if(frontCameraValues[i] < ConstantsMap.LOW_CUTOFF){ + isFrontCameraOnStrip[i] = false; + } else if(frontCameraValues[i] > ConstantsMap.HIGH_CUTOFF){ + isFrontCameraOnStrip[i] = true; + } else{ + isFrontCameraOnStrip[i] = previousValues[i]; + } + } + //boolean[] isBackCameraOnStrip = followLineSubsystem.getLineData(2); // for(boolean b: isBackCameraOnStrip){ @@ -187,6 +204,9 @@ protected void stageThree() { //i *try* to implement this below //any questions or ideas on how to do this better, talk to me(jake). + System.out.println(Arrays.toString(isFrontCameraOnStrip)); + System.out.println(followLineSubsystem.getData()); + //this gets the jumps in average if(numOfJumps < 2) { double frontAverage = followLineSubsystem.getLineAverage(1); @@ -194,13 +214,14 @@ protected void stageThree() { int oSSSize = oSSPreviousAverages.size(); if(oSSSize > 1 && numOfJumps < 2) {//just making sure we dont step outside oSSpreviousaverages - if(Math.abs(oSSPreviousAverages.get(oSSSize - 1) - oSSPreviousAverages.get(oSSSize - 2)) > 0.1){ + if(Math.abs(oSSPreviousAverages.get(oSSSize - 1) - oSSPreviousAverages.get(oSSSize - 2)) > 0.25){ //now we have a step, so we can set our values jumpIndices[numOfJumps] = oSSSize - 1; - jumpEncoderCount[numOfJumps] = (driveSubsystem.getLeftEncoderCount() + driveSubsystem.getRightEncoderCount()) / 2; + jumpEncoderDistance[numOfJumps] = (driveSubsystem.getLeftEncoderDistance() + driveSubsystem.getRightEncoderDistance()) / 2; + - System.out.println("" + numOfJumps + ", " + jumpIndices[numOfJumps] + ", " + jumpEncoderCount[numOfJumps]); + System.out.println("" + numOfJumps + ", " + jumpIndices[numOfJumps] + ", " + jumpEncoderDistance[numOfJumps]); numOfJumps++; } @@ -209,34 +230,46 @@ protected void stageThree() { } else { stageThreeComplete = true; } + + previousValues = isFrontCameraOnStrip; } //once we get change and calculate the angle, then move forward to approximate the swing protected void stageFour() { System.out.println("stage 4"); if (stageFourFristRun) {//do caluclation for angle - deltaDistance = (jumpEncoderCount[1] - jumpEncoderCount[0]) * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; + deltaDistance = jumpEncoderDistance[1] - jumpEncoderDistance[0]; deltaAverage = oSSPreviousAverages.get(jumpIndices[1]) - oSSPreviousAverages.get(jumpIndices[0] - 1); deltaHorizontalDistance = deltaAverage * ConstantsMap.DISTANCE_BETWEEN_SENSOR_CAMERAS; - angleToLine = Math.acos(deltaHorizontalDistance/deltaDistance); - desiredAngle = gyro.getAngle() + angleToLine;//This "zeros" the angle + angleToLine = Math.toDegrees(Math.acos(deltaHorizontalDistance/deltaDistance)); + desiredAngle = (gyro.getAngle() + angleToLine);//This "zeros" the angle - swingDistance = Math.sin(angleToLine) * ConstantsMap.ROBOT_LENGTH/2;//Approximates distance the robot needs to move forward before turning to stay on line + swingDistance = Math.sin(Math.toRadians(angleToLine)) * ConstantsMap.ROBOT_LENGTH/2;//Approximates distance the robot needs to move forward before turning to stay on line double previousEncoderValue = (driveSubsystem.getLeftEncoderDistance() + driveSubsystem.getRightEncoderDistance())/2; encoderGoal = (previousEncoderValue + swingDistance); stageFourFristRun = false; + + System.out.println("deltaDistance:" + deltaDistance); + System.out.println("deltaAverage:" + deltaAverage); + System.out.println("deltaHorizontalDistance:" + deltaHorizontalDistance); + System.out.println("angleToline:" + angleToLine); + System.out.println("currentAngle:" + gyro.getAngle()); + System.out.println("desiredAngle:" + desiredAngle); + System.out.println("swingDistance:" + swingDistance); + System.out.println("previousEncoderValue:" + previousEncoderValue); + System.out.println("encoderGoal:" + encoderGoal); } + stageFourComplete = true; + //move forward to make up swing driveSubsystem.setRightSpeed(ConstantsMap.STAGE_TWO_SPEED); driveSubsystem.setLeftSpeed(ConstantsMap.STAGE_TWO_SPEED); if ((driveSubsystem.getLeftEncoderDistance() + driveSubsystem.getRightEncoderDistance())/2 > encoderGoal) {//Once we have moved enough to account for the turn - driveSubsystem.setRightSpeed(0); - driveSubsystem.setLeftSpeed(0); stageFourComplete = true; } } @@ -245,15 +278,22 @@ protected void stageFour() { protected void stageFive() { System.out.println("stage 5"); if (Math.abs(desiredAngle - gyro.getAngle()) > ConstantsMap.ANGLE_TOLLERANCE) {//Checks to see if our angle of approach is too great - if (desiredAngle - gyro.getAngle() > 0) {//These figure out which was to turn - driveSubsystem.setLeftSpeed((ConstantsMap.TURN_SPEED)); - driveSubsystem.setRightSpeed((ConstantsMap.TURN_SPEED * -1)); + if (gyro.getAngle() - desiredAngle > 0) {//These figure out which was to turn + //turn left + System.out.println("turnLeft"); + driveSubsystem.setLeftSpeed(ConstantsMap.TURN_SPEED * -1); + driveSubsystem.setRightSpeed(ConstantsMap.TURN_SPEED * 1); } else { - driveSubsystem.setLeftSpeed(( ConstantsMap.TURN_SPEED * -1)); - driveSubsystem.setRightSpeed( ConstantsMap.TURN_SPEED); + //turn right + System.out.println("turnRight"); + driveSubsystem.setLeftSpeed(ConstantsMap.TURN_SPEED * 1); + driveSubsystem.setRightSpeed(ConstantsMap.TURN_SPEED * -1); } } else { stageFiveComplete = true; + driveSubsystem.setRightSpeed(0); + driveSubsystem.setLeftSpeed(0); + System.out.println("fuck"); } } diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index ce2bae5..8bedb9f 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -78,7 +78,7 @@ public void setLeftSpeed(double speed) { //sets the speed for both of the right motors public void setRightSpeed (double speed) { right1.set(speed); - right2.set(speed); + right2.set(speed); } public double getLeftSpeed() { diff --git a/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java b/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java index a867671..df55105 100644 --- a/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java +++ b/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java @@ -40,6 +40,17 @@ public String getData(){ } return Arrays.toString(data); } + + public int[] getRawData(){ + byte[] fromSensor = new byte[16]; + i2c.readOnly(fromSensor,16); + int[] data = new int[8]; + for(int i= 0;i<8;i++){ + data[i] = fromSensor[2*i] & 0xFF; + } + return data; + } + //gets data from camera srip, strip 1 is front camera, strip 2 is back camera public boolean[] getLineData(int strip) { boolean[] sensors = new boolean[8]; From b39493ca175fd714a0a903b158fc3739d4ba75d6 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Thu, 10 Jan 2019 09:10:03 -0600 Subject: [PATCH 029/131] Trying new method for approaching line --- src/main/java/frc/robot/ConstantsMap.java | 2 +- .../frc/robot/commands/FollowLineCommand.java | 101 +++++++----------- 2 files changed, 41 insertions(+), 62 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index c3a7d51..199f40c 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -22,7 +22,7 @@ public class ConstantsMap { public static final double ROBOT_WIDTH = 26; //inches public static final double ROBOT_LENGTH = 32; //inches public static final double APPROACH_TIME = 1.0d; //seconds - public static final double STAGE_TWO_SPEED = .12; //inches per second + public static final double APPROACH_SPEED = .12; //inches per second public static final double ANGLE_TOLLERANCE = 0.25; //degrees public static final double TURN_SPEED = .5; //inches per second public static final double BLACK_WHITE_CUTOFF = 220; //some units idk diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index f06a4db..aec3527 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -14,7 +14,6 @@ import frc.robot.subsystems.FollowLineSubsystem; import java.lang.Math; import java.util.ArrayList; -import java.util.Arrays; import com.kauailabs.navx.frc.AHRS; @@ -36,11 +35,10 @@ public class FollowLineCommand extends Command { //stage three variables protected boolean stageThreeComplete; - boolean[] previousValues; ArrayList oSSPreviousAverages; int numOfJumps; int[] jumpIndices; // these will be the index after the change - double[] jumpEncoderDistance; // relative to the start of stage 2 + int[] jumpEncoderCount; // relative to the start of stage 2 long startTime; //stage four variables @@ -98,13 +96,11 @@ protected void setupForRun() { oSSPreviousAverages = new ArrayList(); numOfJumps = 0; jumpIndices = new int[]{0,0}; - jumpEncoderDistance = new double[]{0.0, 0.0}; + jumpEncoderCount = new int[]{0, 0}; startTime = System.nanoTime(); - previousValues = new boolean[]{false, false, false, false, false, false, false, false}; //stage 4 stageFourComplete = false; - stageFourFristRun = true; //stage 5 stageFiveComplete = false; @@ -159,8 +155,8 @@ protected void stageTwo() { driveSubsystem.enableBrake(); } - driveSubsystem.setRightSpeed(ConstantsMap.STAGE_TWO_SPEED); - driveSubsystem.setLeftSpeed(ConstantsMap.STAGE_TWO_SPEED); + driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); + driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); if ((driveSubsystem.getLeftEncoderDistance() > leftEncoderDistanceGoal)||(driveSubsystem.getRightEncoderDistance() > rightEncoderDistanceGoal)) { stageTwoComplete = true; @@ -170,20 +166,7 @@ protected void stageTwo() { //once we are over the line, then watch for the horizontal change protected void stageThree() { System.out.println("stage 3"); - boolean[] isFrontCameraOnStrip = new boolean[8]; - - int[] frontCameraValues = followLineSubsystem.getRawData(); - - for(int i = 0; i < 8; i++){ - if(frontCameraValues[i] < ConstantsMap.LOW_CUTOFF){ - isFrontCameraOnStrip[i] = false; - } else if(frontCameraValues[i] > ConstantsMap.HIGH_CUTOFF){ - isFrontCameraOnStrip[i] = true; - } else{ - isFrontCameraOnStrip[i] = previousValues[i]; - } - } - + //boolean[] isFrontCameraOnStrip = followLineSubsystem.getLineData(1); //boolean[] isBackCameraOnStrip = followLineSubsystem.getLineData(2); // for(boolean b: isBackCameraOnStrip){ @@ -204,9 +187,6 @@ protected void stageThree() { //i *try* to implement this below //any questions or ideas on how to do this better, talk to me(jake). - System.out.println(Arrays.toString(isFrontCameraOnStrip)); - System.out.println(followLineSubsystem.getData()); - //this gets the jumps in average if(numOfJumps < 2) { double frontAverage = followLineSubsystem.getLineAverage(1); @@ -214,14 +194,13 @@ protected void stageThree() { int oSSSize = oSSPreviousAverages.size(); if(oSSSize > 1 && numOfJumps < 2) {//just making sure we dont step outside oSSpreviousaverages - if(Math.abs(oSSPreviousAverages.get(oSSSize - 1) - oSSPreviousAverages.get(oSSSize - 2)) > 0.25){ + if(Math.abs(oSSPreviousAverages.get(oSSSize - 1) - oSSPreviousAverages.get(oSSSize - 2)) > 0.1){ //now we have a step, so we can set our values jumpIndices[numOfJumps] = oSSSize - 1; - jumpEncoderDistance[numOfJumps] = (driveSubsystem.getLeftEncoderDistance() + driveSubsystem.getRightEncoderDistance()) / 2; + jumpEncoderCount[numOfJumps] = (driveSubsystem.getLeftEncoderCount() + driveSubsystem.getRightEncoderCount()) / 2; - - System.out.println("" + numOfJumps + ", " + jumpIndices[numOfJumps] + ", " + jumpEncoderDistance[numOfJumps]); + System.out.println("" + numOfJumps + ", " + jumpIndices[numOfJumps] + ", " + jumpEncoderCount[numOfJumps]); numOfJumps++; } @@ -230,46 +209,34 @@ protected void stageThree() { } else { stageThreeComplete = true; } - - previousValues = isFrontCameraOnStrip; } //once we get change and calculate the angle, then move forward to approximate the swing protected void stageFour() { System.out.println("stage 4"); if (stageFourFristRun) {//do caluclation for angle - deltaDistance = jumpEncoderDistance[1] - jumpEncoderDistance[0]; + deltaDistance = (jumpEncoderCount[1] - jumpEncoderCount[0]) * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; deltaAverage = oSSPreviousAverages.get(jumpIndices[1]) - oSSPreviousAverages.get(jumpIndices[0] - 1); deltaHorizontalDistance = deltaAverage * ConstantsMap.DISTANCE_BETWEEN_SENSOR_CAMERAS; - angleToLine = Math.toDegrees(Math.acos(deltaHorizontalDistance/deltaDistance)); - desiredAngle = (gyro.getAngle() + angleToLine);//This "zeros" the angle + angleToLine = Math.acos(deltaHorizontalDistance/deltaDistance); + desiredAngle = gyro.getAngle() + angleToLine;//This "zeros" the angle - swingDistance = Math.sin(Math.toRadians(angleToLine)) * ConstantsMap.ROBOT_LENGTH/2;//Approximates distance the robot needs to move forward before turning to stay on line + swingDistance = Math.sin(angleToLine) * ConstantsMap.ROBOT_LENGTH/2;//Approximates distance the robot needs to move forward before turning to stay on line double previousEncoderValue = (driveSubsystem.getLeftEncoderDistance() + driveSubsystem.getRightEncoderDistance())/2; encoderGoal = (previousEncoderValue + swingDistance); stageFourFristRun = false; - - System.out.println("deltaDistance:" + deltaDistance); - System.out.println("deltaAverage:" + deltaAverage); - System.out.println("deltaHorizontalDistance:" + deltaHorizontalDistance); - System.out.println("angleToline:" + angleToLine); - System.out.println("currentAngle:" + gyro.getAngle()); - System.out.println("desiredAngle:" + desiredAngle); - System.out.println("swingDistance:" + swingDistance); - System.out.println("previousEncoderValue:" + previousEncoderValue); - System.out.println("encoderGoal:" + encoderGoal); } - stageFourComplete = true; - //move forward to make up swing - driveSubsystem.setRightSpeed(ConstantsMap.STAGE_TWO_SPEED); - driveSubsystem.setLeftSpeed(ConstantsMap.STAGE_TWO_SPEED); + driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); + driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); if ((driveSubsystem.getLeftEncoderDistance() + driveSubsystem.getRightEncoderDistance())/2 > encoderGoal) {//Once we have moved enough to account for the turn + driveSubsystem.setRightSpeed(0); + driveSubsystem.setLeftSpeed(0); stageFourComplete = true; } } @@ -278,22 +245,15 @@ protected void stageFour() { protected void stageFive() { System.out.println("stage 5"); if (Math.abs(desiredAngle - gyro.getAngle()) > ConstantsMap.ANGLE_TOLLERANCE) {//Checks to see if our angle of approach is too great - if (gyro.getAngle() - desiredAngle > 0) {//These figure out which was to turn - //turn left - System.out.println("turnLeft"); - driveSubsystem.setLeftSpeed(ConstantsMap.TURN_SPEED * -1); - driveSubsystem.setRightSpeed(ConstantsMap.TURN_SPEED * 1); + if (desiredAngle - gyro.getAngle() > 0) {//These figure out which was to turn + driveSubsystem.setLeftSpeed((ConstantsMap.TURN_SPEED)); + driveSubsystem.setRightSpeed((ConstantsMap.TURN_SPEED * -1)); } else { - //turn right - System.out.println("turnRight"); - driveSubsystem.setLeftSpeed(ConstantsMap.TURN_SPEED * 1); - driveSubsystem.setRightSpeed(ConstantsMap.TURN_SPEED * -1); + driveSubsystem.setLeftSpeed(( ConstantsMap.TURN_SPEED * -1)); + driveSubsystem.setRightSpeed( ConstantsMap.TURN_SPEED); } } else { stageFiveComplete = true; - driveSubsystem.setRightSpeed(0); - driveSubsystem.setLeftSpeed(0); - System.out.println("fuck"); } } @@ -302,6 +262,25 @@ protected void stageSix() { System.out.println("stage 6"); stageSixComplete = true; } + + //New method relying only on the sensors (a bit simpler than doing the calculations) + protected void maybeThisWillWorkButIDRK() { + //Triggers when we have a camera on the sensor + double frontAverage = followLineSubsystem.getLineAverage(1); + + //Doing the turning with very little error so that we never go out too far that the robot is completely off the center line + //TODO Figure out the indices of the sensor + if (frontAverage < 3) {//We are way to the left of the sensors, so we need to start turning (right) + driveSubsystem.setLeftSpeed(2 * ConstantsMap.APPROACH_SPEED); + driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); + } else if (frontAverage > 4) { //Turn Left + driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); + driveSubsystem.setRightSpeed(2 * ConstantsMap.APPROACH_SPEED); + } else if (Math.abs(frontAverage - 3.5) < .5) {//We are within the tolerance, so we just move forward + driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); + driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); + } + } // Make this return true when this Command no longer needs to run execute() @Override From 1efb21ce624bb449ecbbb062385bc35d5afcbc02 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Thu, 10 Jan 2019 09:40:08 -0600 Subject: [PATCH 030/131] Added stuff to idk --- .../frc/robot/commands/FollowLineCommand.java | 48 ++++++++++++++----- 1 file changed, 36 insertions(+), 12 deletions(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index aec3527..0fa7bfe 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -59,6 +59,11 @@ public class FollowLineCommand extends Command { //stage six variables protected boolean stageSixComplete; + //Maybe this will work variables + protected double startEncoderAvg; + protected double encoderFinalGoal; + + protected boolean firstRun; //Other stuff that we need AHRS gyro; @@ -106,7 +111,10 @@ protected void setupForRun() { stageFiveComplete = false; //stage 6 - stageSixComplete = false; + stageSixComplete = false; + + //maybe + firstRun = true; } // Called repeatedly when this Command is scheduled to run @@ -268,17 +276,33 @@ protected void maybeThisWillWorkButIDRK() { //Triggers when we have a camera on the sensor double frontAverage = followLineSubsystem.getLineAverage(1); - //Doing the turning with very little error so that we never go out too far that the robot is completely off the center line - //TODO Figure out the indices of the sensor - if (frontAverage < 3) {//We are way to the left of the sensors, so we need to start turning (right) - driveSubsystem.setLeftSpeed(2 * ConstantsMap.APPROACH_SPEED); - driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); - } else if (frontAverage > 4) { //Turn Left - driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); - driveSubsystem.setRightSpeed(2 * ConstantsMap.APPROACH_SPEED); - } else if (Math.abs(frontAverage - 3.5) < .5) {//We are within the tolerance, so we just move forward - driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); - driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); + if (frontAverage == 0) { + return;//Kills it because the sensor is either not working or off of the tape + } + + if (firstRun) { + startEncoderAvg = (driveSubsystem.getRightEncoderCount() + driveSubsystem.getLeftEncoderCount()) / 2; + encoderFinalGoal = startEncoderAvg + 16;//16 in inches + + firstRun = false; + } + + System.out.println("Sensor outputs: " + frontAverage); + System.out.println("Encoder Goal: " + encoderFinalGoal + "\nCurrent Encoder Avg: " + ((driveSubsystem.getRightEncoderCount() + driveSubsystem.getLeftEncoderCount()) / 2)); + + if (startEncoderAvg < encoderFinalGoal) { + //Doing the turning with very little error so that we never go out too far that the robot is completely off the center line + //TODO Figure out the indices of the sensor + if (frontAverage < 3) {//We are way to the left of the sensors, so we need to start turning (right) + driveSubsystem.setLeftSpeed(2 * ConstantsMap.APPROACH_SPEED); + driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); + } else if (frontAverage > 4) { //Turn Left + driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); + driveSubsystem.setRightSpeed(2 * ConstantsMap.APPROACH_SPEED); + } else if (Math.abs(frontAverage - 3.5) < .5) {//We are within the tolerance, so we just move forward + driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); + driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); + } } } From fa339e275fff7ec31dd299dee3dd0b2a8726ae04 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Thu, 10 Jan 2019 09:44:04 -0600 Subject: [PATCH 031/131] fjdsl --- gradlew | 0 src/main/java/frc/robot/commands/FollowLineCommand.java | 6 +++--- 2 files changed, 3 insertions(+), 3 deletions(-) mode change 100644 => 100755 gradlew diff --git a/gradlew b/gradlew old mode 100644 new mode 100755 diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 0fa7bfe..1c8a1b4 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -293,13 +293,13 @@ protected void maybeThisWillWorkButIDRK() { if (startEncoderAvg < encoderFinalGoal) { //Doing the turning with very little error so that we never go out too far that the robot is completely off the center line //TODO Figure out the indices of the sensor - if (frontAverage < 3) {//We are way to the left of the sensors, so we need to start turning (right) + if (frontAverage < 3.4) {//We are way to the left of the sensors, so we need to start turning (right) driveSubsystem.setLeftSpeed(2 * ConstantsMap.APPROACH_SPEED); driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); - } else if (frontAverage > 4) { //Turn Left + } else if (frontAverage > 3.6) { //Turn Left driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); driveSubsystem.setRightSpeed(2 * ConstantsMap.APPROACH_SPEED); - } else if (Math.abs(frontAverage - 3.5) < .5) {//We are within the tolerance, so we just move forward + } else if (Math.abs(frontAverage - 3.5) < .1) {//We are within the tolerance, so we just move forward driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); } From 2936dd4eee47aa6086674783370598011e992fb5 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Thu, 10 Jan 2019 09:59:04 -0600 Subject: [PATCH 032/131] fdhsjak --- .../java/frc/robot/commands/FollowLineCommand.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 1c8a1b4..c90b633 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -281,24 +281,24 @@ protected void maybeThisWillWorkButIDRK() { } if (firstRun) { - startEncoderAvg = (driveSubsystem.getRightEncoderCount() + driveSubsystem.getLeftEncoderCount()) / 2; + startEncoderAvg = (driveSubsystem.getRightEncoderDistance() + driveSubsystem.getLeftEncoderDistance()) / 2; encoderFinalGoal = startEncoderAvg + 16;//16 in inches firstRun = false; } System.out.println("Sensor outputs: " + frontAverage); - System.out.println("Encoder Goal: " + encoderFinalGoal + "\nCurrent Encoder Avg: " + ((driveSubsystem.getRightEncoderCount() + driveSubsystem.getLeftEncoderCount()) / 2)); + System.out.println("Encoder Goal: " + encoderFinalGoal + "\nCurrent Encoder Avg: " + ((driveSubsystem.getRightEncoderDistance() + driveSubsystem.getLeftEncoderDistance()) / 2)); if (startEncoderAvg < encoderFinalGoal) { //Doing the turning with very little error so that we never go out too far that the robot is completely off the center line //TODO Figure out the indices of the sensor if (frontAverage < 3.4) {//We are way to the left of the sensors, so we need to start turning (right) - driveSubsystem.setLeftSpeed(2 * ConstantsMap.APPROACH_SPEED); - driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); - } else if (frontAverage > 3.6) { //Turn Left - driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); driveSubsystem.setRightSpeed(2 * ConstantsMap.APPROACH_SPEED); + driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); + } else if (frontAverage > 3.6) { //Turn Left + driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); + driveSubsystem.setLeftSpeed(2 * ConstantsMap.APPROACH_SPEED); } else if (Math.abs(frontAverage - 3.5) < .1) {//We are within the tolerance, so we just move forward driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); From 84c208f0d5ae70c2351bc433bb8eccae3e3601de Mon Sep 17 00:00:00 2001 From: SutterButter4 Date: Fri, 11 Jan 2019 09:04:46 -0600 Subject: [PATCH 033/131] gettting ready for improvements! --- .../frc/robot/commands/FollowLineCommand.java | 51 +++++++++++-------- 1 file changed, 31 insertions(+), 20 deletions(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index c90b633..7a96175 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -67,9 +67,6 @@ public class FollowLineCommand extends Command { //Other stuff that we need AHRS gyro; - - - protected double estimatedDistanceToWall; public FollowLineCommand() { @@ -126,19 +123,21 @@ protected void execute() { setupForRun();//reset for next run somehow mark that we are done, maybe interrrupt? }else{*/ - if(!stageOneComplete) { - stageOne(); - } else if(!stageTwoComplete) { - stageTwo(); - } else if(!stageThreeComplete) { - stageThree(); - } else if(!stageFourComplete) { - stageFour(); - } else if(!stageFiveComplete) { - stageFive(); - } else if(!stageSixComplete) { - stageSix(); - } + // if(!stageOneComplete) { + // stageOne(); + // } else if(!stageTwoComplete) { + // stageTwo(); + // } else if(!stageThreeComplete) { + // stageThree(); + // } else if(!stageFourComplete) { + // stageFour(); + // } else if(!stageFiveComplete) { + // stageFive(); + // } else if(!stageSixComplete) { + // stageSix(); + // } + + maybeThisWillWorkButIDRK(); } //vision stage, get us closer to the line @@ -251,6 +250,9 @@ protected void stageFour() { //now turn the robot to the desired angle protected void stageFive() { + + + System.out.println("stage 5"); if (Math.abs(desiredAngle - gyro.getAngle()) > ConstantsMap.ANGLE_TOLLERANCE) {//Checks to see if our angle of approach is too great if (desiredAngle - gyro.getAngle() > 0) {//These figure out which was to turn @@ -277,6 +279,9 @@ protected void maybeThisWillWorkButIDRK() { double frontAverage = followLineSubsystem.getLineAverage(1); if (frontAverage == 0) { + driveSubsystem.setRightSpeed(0); + driveSubsystem.setLeftSpeed(0); + System.out.println("killededed"); return;//Kills it because the sensor is either not working or off of the tape } @@ -290,19 +295,25 @@ protected void maybeThisWillWorkButIDRK() { System.out.println("Sensor outputs: " + frontAverage); System.out.println("Encoder Goal: " + encoderFinalGoal + "\nCurrent Encoder Avg: " + ((driveSubsystem.getRightEncoderDistance() + driveSubsystem.getLeftEncoderDistance()) / 2)); - if (startEncoderAvg < encoderFinalGoal) { + if (((driveSubsystem.getRightEncoderDistance() + driveSubsystem.getLeftEncoderDistance()) / 2) < encoderFinalGoal) { //Doing the turning with very little error so that we never go out too far that the robot is completely off the center line //TODO Figure out the indices of the sensor if (frontAverage < 3.4) {//We are way to the left of the sensors, so we need to start turning (right) + System.out.println("Heave left!"); driveSubsystem.setRightSpeed(2 * ConstantsMap.APPROACH_SPEED); - driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); + driveSubsystem.setLeftSpeed(-0.5 * ConstantsMap.APPROACH_SPEED); } else if (frontAverage > 3.6) { //Turn Left - driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); + System.out.println("Heave Right!"); + driveSubsystem.setRightSpeed(-0.5 * ConstantsMap.APPROACH_SPEED); driveSubsystem.setLeftSpeed(2 * ConstantsMap.APPROACH_SPEED); - } else if (Math.abs(frontAverage - 3.5) < .1) {//We are within the tolerance, so we just move forward + } else if (Math.abs(frontAverage - 3.5) <= .1) {//We are within the tolerance, so we just move forward + System.out.println("Land ho!"); driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); } + } else { + driveSubsystem.setLeftSpeed(0); + driveSubsystem.setRightSpeed(0); } } From 1b1f017e7a6f7d5786f28992f2765ce724aaea66 Mon Sep 17 00:00:00 2001 From: SutterButter4 Date: Fri, 11 Jan 2019 09:55:52 -0600 Subject: [PATCH 034/131] improved the follow line function --- src/main/java/frc/robot/ConstantsMap.java | 3 ++ .../frc/robot/commands/FollowLineCommand.java | 45 +++++++++++++++---- 2 files changed, 40 insertions(+), 8 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 199f40c..56eb621 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -26,6 +26,9 @@ public class ConstantsMap { public static final double ANGLE_TOLLERANCE = 0.25; //degrees public static final double TURN_SPEED = .5; //inches per second public static final double BLACK_WHITE_CUTOFF = 220; //some units idk + public static final double SENSOR_AVERAGE_TOLERANCE_HIGH = 1.0d; + public static final double SENSOR_AVERAGE_TOLERANCE_LOW = 0.1d; + public static final double SENSOR_AVERAGE_CENTER = 3.5d; public static final double LOW_CUTOFF = 210; public static final double HIGH_CUTOFF = 230; diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 7a96175..0ac049e 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -16,6 +16,7 @@ import java.util.ArrayList; import com.kauailabs.navx.frc.AHRS; +import com.sun.org.apache.bcel.internal.Const; /** * Add your docs here. @@ -67,6 +68,9 @@ public class FollowLineCommand extends Command { //Other stuff that we need AHRS gyro; + //moar variables + private boolean overCompensate = false; + protected double estimatedDistanceToWall; public FollowLineCommand() { @@ -278,7 +282,7 @@ protected void maybeThisWillWorkButIDRK() { //Triggers when we have a camera on the sensor double frontAverage = followLineSubsystem.getLineAverage(1); - if (frontAverage == 0) { + if (frontAverage == 0 || frontAverage == Float.NaN) { driveSubsystem.setRightSpeed(0); driveSubsystem.setLeftSpeed(0); System.out.println("killededed"); @@ -297,23 +301,48 @@ protected void maybeThisWillWorkButIDRK() { if (((driveSubsystem.getRightEncoderDistance() + driveSubsystem.getLeftEncoderDistance()) / 2) < encoderFinalGoal) { //Doing the turning with very little error so that we never go out too far that the robot is completely off the center line - //TODO Figure out the indices of the sensor - if (frontAverage < 3.4) {//We are way to the left of the sensors, so we need to start turning (right) - System.out.println("Heave left!"); + + if (frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER + ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH) {//We are way to the left of the sensors, so we need to start turning (right) + System.out.println("we should compensate left!"); + + overCompensate = true; + driveSubsystem.setRightSpeed(2 * ConstantsMap.APPROACH_SPEED); driveSubsystem.setLeftSpeed(-0.5 * ConstantsMap.APPROACH_SPEED); - } else if (frontAverage > 3.6) { //Turn Left - System.out.println("Heave Right!"); + } else if (frontAverage < ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH) { //Turn Left + System.out.println("we should compensate right!"); + + overCompensate = true; + driveSubsystem.setRightSpeed(-0.5 * ConstantsMap.APPROACH_SPEED); driveSubsystem.setLeftSpeed(2 * ConstantsMap.APPROACH_SPEED); - } else if (Math.abs(frontAverage - 3.5) <= .1) {//We are within the tolerance, so we just move forward - System.out.println("Land ho!"); + } else if (Math.abs(ConstantsMap.SENSOR_AVERAGE_CENTER - frontAverage) <= ConstantsMap.SENSOR_AVERAGE_TOLERANCE_LOW) {//We are within the tolerance, so we just move forward + System.out.println("we have fixed it, so no more overcompensating!"); + + overCompensate = false; + driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); + } else if(frontAverage < ConstantsMap.SENSOR_AVERAGE_CENTER + ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH + && frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER + ConstantsMap.SENSOR_AVERAGE_TOLERANCE_LOW + && overCompensate) { + System.out.println("compensating left!"); + + driveSubsystem.setRightSpeed(2 * ConstantsMap.APPROACH_SPEED); + driveSubsystem.setLeftSpeed(-0.5 * ConstantsMap.APPROACH_SPEED); + } + else if(frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH + && frontAverage < ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_AVERAGE_TOLERANCE_LOW + && overCompensate){ + System.out.println("compensating right!"); + + driveSubsystem.setRightSpeed(-0.5 * ConstantsMap.APPROACH_SPEED); + driveSubsystem.setLeftSpeed(2 * ConstantsMap.APPROACH_SPEED); } } else { driveSubsystem.setLeftSpeed(0); driveSubsystem.setRightSpeed(0); + return; } } From 7f0e06e37af6883d3cf7f1c8d7ca038f51796ad5 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Fri, 11 Jan 2019 10:25:47 -0600 Subject: [PATCH 035/131] Cleaned up Follow Line COmmand --- .../frc/robot/commands/FollowLineCommand.java | 30 ++++++++++++------- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 0ac049e..6e7cf51 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -28,6 +28,7 @@ public class FollowLineCommand extends Command { //stage one variables (Vision Stage) protected boolean stageOneComplete; + /* //stage two variables protected boolean stageTwoComplete; double leftEncoderDistanceGoal; @@ -59,6 +60,10 @@ public class FollowLineCommand extends Command { //stage six variables protected boolean stageSixComplete; + */ + + //Checks to see if we are running rn + protected boolean runningFLC; //Maybe this will work variables protected double startEncoderAvg; @@ -88,9 +93,12 @@ protected void initialize() { //this is to be called upon initialization and whenever the button is hit twice protected void setupForRun() { + //turns on runningFLC + runningFLC = true; + //setup stage 1 variables stageOneComplete = false; - + /* //stage 2 stageTwoComplete = false; leftEncoderDistanceGoal = 0; @@ -112,7 +120,8 @@ protected void setupForRun() { stageFiveComplete = false; //stage 6 - stageSixComplete = false; + stageSixComplete = false; + */ //maybe firstRun = true; @@ -140,7 +149,7 @@ protected void execute() { // } else if(!stageSixComplete) { // stageSix(); // } - + maybeThisWillWorkButIDRK(); } @@ -153,6 +162,7 @@ protected void stageOne() { stageOneComplete = true; } + /*DELETE THIS AT SOME POINT LATER WHEN OTHER METHODS WORK //once we hit the line, make sure we go forward 2 inches protected void stageTwo() { //stageTwoComplete = true; @@ -276,6 +286,7 @@ protected void stageSix() { System.out.println("stage 6"); stageSixComplete = true; } + */ //New method relying only on the sensors (a bit simpler than doing the calculations) protected void maybeThisWillWorkButIDRK() { @@ -289,7 +300,7 @@ protected void maybeThisWillWorkButIDRK() { return;//Kills it because the sensor is either not working or off of the tape } - if (firstRun) { + if (firstRun) {//this sets up the first few values we need startEncoderAvg = (driveSubsystem.getRightEncoderDistance() + driveSubsystem.getLeftEncoderDistance()) / 2; encoderFinalGoal = startEncoderAvg + 16;//16 in inches @@ -342,6 +353,8 @@ else if(frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_ } else { driveSubsystem.setLeftSpeed(0); driveSubsystem.setRightSpeed(0); + + runningFLC = false;//We have completed the process return; } } @@ -349,7 +362,7 @@ else if(frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_ // Make this return true when this Command no longer needs to run execute() @Override protected boolean isFinished() { - return stageSixComplete; + return !runningFLC; } // Called once after isFinished returns true @@ -360,12 +373,7 @@ protected void end() { // Called for manual interruption of command protected void kill() { - stageOneComplete = true; - stageTwoComplete = true; - stageThreeComplete = true; - stageFourComplete = true; - stageFiveComplete = true; - stageSixComplete = true; + runningFLC = false; System.out.println("FollowLineCommand kill"); } From 5ee08fb0b976faa5cadc9b7773baa927cb01b039 Mon Sep 17 00:00:00 2001 From: Gabriel Bryk Date: Fri, 11 Jan 2019 10:32:59 -0600 Subject: [PATCH 036/131] Revert "vision code from thursday" This reverts commit dfcefdf3ac0bc80a061058c45faf7d1d94e1a046. --- GRIP/2019gaberoom.grip | 125 ++++++++++++ GRIP/__pycache__/grip.cpython-37.pyc | Bin 0 -> 4939 bytes GRIP/camera.py | 15 ++ GRIP/contourtest.py | 14 ++ GRIP/grip.py | 157 +++++++++++++++ GRIP/images/2019-01-09_00-57-29-846.jpg | Bin 0 -> 9984 bytes GRIP/images/2019-01-09_00-57-29-846.png | Bin 0 -> 3265 bytes GRIP/images/2019-01-09_00-57-30-875.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-31-902.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-32-926.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-33-972.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-35-005.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-36-045.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-37-058.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_02-24-46-486.jpeg | Bin 0 -> 212384 bytes GRIP/images/rect.jpg | Bin 0 -> 43606 bytes GRIP/images/test.jpeg | Bin 0 -> 205752 bytes GRIP/vision.py | 233 +++++++++++++++++++++++ 18 files changed, 544 insertions(+) create mode 100644 GRIP/2019gaberoom.grip create mode 100644 GRIP/__pycache__/grip.cpython-37.pyc create mode 100644 GRIP/camera.py create mode 100644 GRIP/contourtest.py create mode 100644 GRIP/grip.py create mode 100644 GRIP/images/2019-01-09_00-57-29-846.jpg create mode 100644 GRIP/images/2019-01-09_00-57-29-846.png create mode 100644 GRIP/images/2019-01-09_00-57-30-875.png create mode 100644 GRIP/images/2019-01-09_00-57-31-902.png create mode 100644 GRIP/images/2019-01-09_00-57-32-926.png create mode 100644 GRIP/images/2019-01-09_00-57-33-972.png create mode 100644 GRIP/images/2019-01-09_00-57-35-005.png create mode 100644 GRIP/images/2019-01-09_00-57-36-045.png create mode 100644 GRIP/images/2019-01-09_00-57-37-058.png create mode 100644 GRIP/images/2019-01-09_02-24-46-486.jpeg create mode 100644 GRIP/images/rect.jpg create mode 100644 GRIP/images/test.jpeg create mode 100644 GRIP/vision.py diff --git a/GRIP/2019gaberoom.grip b/GRIP/2019gaberoom.grip new file mode 100644 index 0000000..7883c4f --- /dev/null +++ b/GRIP/2019gaberoom.grip @@ -0,0 +1,125 @@ + + + + + + + + + + + + 1.0791356615025363 + 74.53925305259105 + + + + + 30.575547587099685 + 123.00341850254723 + + + + + 214.02876531477455 + 255.0 + + + + + + + + false + + + + + + + 100.0 + + + 0 + + + 0 + + + 1000 + + + 0 + + + 1000 + + + + 79.73620617132391 + 100.0 + + + + 200.0 + + + 4.0 + + + 0 + + + 1000 + + + + + + + JPEG + + + 100.0 + + + 1.0 + + + false + + + + + + + + + + + + + + + + + + + + 0 + roboRIO-0-FRC.local + roboRIO-0-FRC.local + /home/lvuser + lvuser + /usr/local/frc/JRE/ + -Xmx50m -XX:-OmitStackTraceInFastThrow -XX:+HeapDumpOnOutOfMemoryError -XX:MaxNewSize=16m + + + Python + GripPipeline + false + C:\Users\gbryk\GRIP + + grip + + \ No newline at end of file diff --git a/GRIP/__pycache__/grip.cpython-37.pyc b/GRIP/__pycache__/grip.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..baca65b3ae8be9764fe90e5020750d259a34e061 GIT binary patch literal 4939 zcmb7I&u`nv6(0VOM9Y$6JGOVzU8I8+Xsb5x76DomZgy+0lT8eGoj^{TlyFPXnz2Ng zB9$Q(TP}4<&{KOV&{Gd_fgXzf2R&^s`!_6jTC|r|=mfM~i-ljuEE$#2!91TT^4**74MRqhs2p zM(z@3F!MQK<}=+cFm0FA3NNvj?9{Z>yc6^~4LQm_x%}Ih;Y7-WJk2(k&Wz{8Hkru^ zcouk(6Z9;_QLJmPUgLqT`KfK%^)1{?~ow9hG)lm= z&uV<**t=BU8 zy^a^SL4&7DlRCm)-0j8oH>P$UcmZ=7VGxHs5dmS6=ew`v;m0u-f$KYA;P=y|NdY4* z(}y|md~6!)$rPSD^)w?6X8$#kplyBx|)-{F6jf~)IcCJ+}|S*?eb=a2QhU6>UG>E zr~7V%^b-aY0pgob?=}wAF^*bZ%wOdel_FlsJW(@Kqw(}+YBiq5o1q_yw7PkJ z`+nVlQ*Yke-c3thP?xWwR!9rOP;AK5VBmPR0mD)Q*Jui}_LZq@@?&UH1q+#-(@x%> zK;jf@UMQ5XN1{?8@+OEx6BXc58|Xn%;&Py)HwFfJB;rJuxcsfLXAI0iVNgs8z@YAa zs4$2ENWSV(Sp*Pty<_f2fDm=*K9ZB@kKl>A2%Mgv3~-S-OIAv9Z@>W*AZX}ewSW9J zHeLv%)dTMq;#?vCwSSw_;f|$q4NUQZb59`jI#}Dt+cQ&@u z88zJA+I^T_-MqK4wc~6&cu>Fp*xB9s^uhL>v?62T<|wDvN@58z>}qy2mA3^deInkG z3x?OZXz(?{R@CL5p1`xJF1`~Gp1(gGAyo~2i(M#hGNGKsXhnXKQU;M zLFM?%gxn^-_+n610kL|j?U{qQ!Ii=MU?G`Lj6)KY@iY%jaq~$zSx5?MW+5qJ=Jt~^ zcIgRr4HlEdL^~wnv6?fID$`Io>X>P(8B=jxWqPu>B!jP>Ts_s^BZH-6DJe1I8c}j3 zZGtw%3+yT+)n{5VBUeVWg_XZzrI^fPWdZw_ljWqW_AV#0Sp5Q4R$i2(HjO+fKO%|z ziBfR44MILqB@uos^x_N%^5VELWr&$!Ogo%o1sUDN&1nck7~#2Nti0kHlCONJ1l60Nubs%8!2W@TRnZZBxo zc_U6|M-JKmpwk(IxNROZ<5pV6{8N5>ujl)z;qxFZ9QdIdr$x7m{|s1d#hz2iIKNu9 zmE9D(DybaR_KX}V52Z8G7mBpYa(3u0&^d%`D}#VNFK5rbCCp&Y#Eg=yya_d#pVQ)~ zur7@bmuknU)=#ygRBPF$yt}s9k|!%DWobc4m=5g=jx$v$+i+vFijFLssDKx>c}-WX ztXVm=sJ#nXwu)Mt(@(BX)f-b{cWPz%Pe$N&xZ|W{$3eR5`I4?U&Xb<&k5)>K!@`E+ z2w9m3`5#7FL5+Z4H^a;* max_width): + continue + if (h < min_height or h > max_height): + continue + area = cv2.contourArea(contour) + if (area < min_area): + continue + if (cv2.arcLength(contour, True) < min_perimeter): + continue + hull = cv2.convexHull(contour) + solid = 100 * area / cv2.contourArea(hull) + if (solid < solidity[0] or solid > solidity[1]): + continue + if (len(contour) < min_vertex_count or len(contour) > max_vertex_count): + continue + ratio = (float)(w) / h + if (ratio < min_ratio or ratio > max_ratio): + continue + output.append(contour) + return output + + @staticmethod + def __convex_hulls(input_contours): + """Computes the convex hulls of contours. + Args: + input_contours: A list of numpy.ndarray that each represent a contour. + Returns: + A list of numpy.ndarray that each represent a contour. + """ + output = [] + for contour in input_contours: + output.append(cv2.convexHull(contour)) + return output + + + diff --git a/GRIP/images/2019-01-09_00-57-29-846.jpg b/GRIP/images/2019-01-09_00-57-29-846.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f9095a3a32f099586dbd4bf52cd645095a44f9c8 GIT binary patch literal 9984 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 literal 0 HcmV?d00001 diff --git a/GRIP/images/2019-01-09_00-57-31-902.png b/GRIP/images/2019-01-09_00-57-31-902.png new file mode 100644 index 0000000000000000000000000000000000000000..352fb545c08c98c16ae3b478a683abd10e03c96c GIT binary patch literal 131072 zcmeIzT})GF7{Kv56a0Yc4ABC`DIcYA*_=YKbs~sg1*Ub;8MesKpjbCX>1rm{5u8KI zj57P7!Nmd>OJ-u6ByNj2(&_ZfdCpuQ8l9UGu;FAbS%l{70-OqaHOnp*FTL2szgO>h z-sil}^Zw51dH28WbQmY6O*R+|#?q4IYYm3yJ~9}_-I*u?hUd>V*$svXw@Q~6zp-=N zy$i+Ol*`i$7fy^7ovrnse13J)?BDME-nOE;>~u+JMd+o_mSFaQ?6Tik+Yrh=yey*Y^sREavRI3W`K|Iz5&PA@?9=Ftcy+FK zye}F%D25+gRQ^;4jK{S$e{!zAQ{Oq@S=slFJ;N4AOme0BI%0d;ic3rI?vEXgs-80U?A8>gdMxSqlTajj$sP$VQu0L?Gvql^Q^jVx zrEY#Cv`ASY+L!41lKk(KaI$TDp1wtEw$pTv^3Nbp0Y+P}`*6+76w zY;Im8blYf6mzpcK*|Tis=45ZO)a`K&=0}3Zlzk$tGqyL&7ECnW)tm#KrGuH}X->7x zpXW76*E~N4%|dLh_jv4RueiNFSR*bA#dZfXZ;G^9k!F^Jv^y^nysdomL+o&GwLPZP zYE`0r)gB2vP;Q74heRiiQwt*D4N2m5uO!l{1Xt*aFq|T`5Ui*Zi>GueE!r-5q3_(| zjzWKkj_&)Dy;k2If!8lu%YJ2EBxzUmHLbFB;OaYy}hd{ zt4Ch-o%qja>qy#@*y>8x$mD-Vd5-pX?HTo9Q(B?5M{stjiN=obT~Y0xwokld+l^Lj zhh8QRsoPsb-L~lU_RV#w)A+MdA9u8MAaXzR)*8%@Qrv2MVsmQ+7UE<=hC_I!Y3fg=ob-I6+R-4_LvZQaNcmFss98U3> zpV0^E=^sH(i2ub|`Il+BZ(7_s_Q{OLr+w)P=kilaH+}qg%ntzs5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ z1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009IL zKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ z1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009IL zKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ r1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5HS1=EgXzM literal 0 HcmV?d00001 diff --git a/GRIP/images/2019-01-09_00-57-32-926.png b/GRIP/images/2019-01-09_00-57-32-926.png new file mode 100644 index 0000000000000000000000000000000000000000..3ac160040eafcc4bc255f2f3d1da85bfed1b2f84 GIT binary patch literal 131072 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 Jf&ZSszX7*L&YS=M literal 0 HcmV?d00001 diff --git a/GRIP/images/2019-01-09_02-24-46-486.jpeg b/GRIP/images/2019-01-09_02-24-46-486.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..d574614e50b73e986fc7f520191017740889bcb2 GIT binary patch literal 212384 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

&xZ?(`|j& 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 literal 0 HcmV?d00001 diff --git a/GRIP/images/rect.jpg b/GRIP/images/rect.jpg new file mode 100644 index 0000000000000000000000000000000000000000..90c99cceff929fe010f55fe3ab61fb19c3aeb7ec GIT binary patch literal 43606 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�Zx~4>e;V+J;VeBQ}Gn{N` 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 max_width): + continue + if (h < min_height or h > max_height): + continue + area = cv2.contourArea(contour) + if (area < min_area): + continue + if (cv2.arcLength(contour, True) < min_perimeter): + continue + hull = cv2.convexHull(contour) + solid = 100 * area / cv2.contourArea(hull) + if (solid < solidity[0] or solid > solidity[1]): + continue + if (len(contour) < min_vertex_count or len(contour) > max_vertex_count): + continue + ratio = (float)(w) / h + if (ratio < min_ratio or ratio > max_ratio): + continue + output.append(contour) + + return output +def getAngleX(center): + center = center - 1280/2 + return math.atan(2*center*math.tan((60 * math.pi / 180 )/2)/1280) * 180 / math.pi; +def getAngleY(center): + center = center - 720/2 + return math.atan(2*center*math.tan((camera_fov_y * math.pi / 180 )/2)/720) * 180 / math.pi * -1; +def getDistance(angle): + return (35 / math.tan(angle* math.pi / 180)) +def process(img): + rgb_threshold_red = [0.0, 68.0] + rgb_threshold_green = [92, 255.0] + rgb_threshold_blue = [0.0, 92] + + + + rgb_threshold_output = None + + + + + + + """ + Runs the pipeline and sets all outputs to new values. + """ + # Step HSL_Threshold0: + rgb_threshold_input = img + (rgb_threshold_output) = rgb_threshold(rgb_threshold_input, rgb_threshold_red, rgb_threshold_green, rgb_threshold_blue) + + find_contours_input = rgb_threshold_output + find_contours_external_only = False + + find_contours_output = None + + # Step Find_Contours0: + find_contours_input = rgb_threshold_output + (find_contours_output) = find_contours(find_contours_input, find_contours_external_only) + + filter_contours_contours = find_contours_output + filter_contours_min_area = 60 + filter_contours_min_perimeter = 10.0 + filter_contours_min_width = 0.0 + filter_contours_max_width = 1000.0 + filter_contours_min_height = 0.0 + filter_contours_max_height = 1000.0 + filter_contours_solidity = [0.0, 100.0] + filter_contours_max_vertices = 5000.0 + filter_contours_min_vertices = 0.0 + filter_contours_min_ratio = 0.0 + filter_contours_max_ratio = 1000.0 + + + filter_contours_output = None + + # Step Filter_Contours0: + filter_contours_contours = find_contours_output + (filter_contours_output) = filter_contours(filter_contours_contours, filter_contours_min_area, filter_contours_min_perimeter, filter_contours_min_width, filter_contours_max_width, filter_contours_min_height, filter_contours_max_height, filter_contours_solidity, filter_contours_max_vertices, filter_contours_min_vertices, filter_contours_min_ratio, filter_contours_max_ratio) + + #print(len(filter_contours_output)) + contours= filter_contours_output + output = [] + for contour in contours: + output.append(cv2.convexHull(contour)) + contours = output + #cv2.drawContours(img, contours, -1, (255,255,0), 3) + ret = 1000 + cnt = None + cnt2 = None + + im = cv2.imread('images/rect.jpg') + imgray = cv2.cvtColor(im, cv2.COLOR_BGR2GRAY) + ret, thresh = cv2.threshold(imgray, 127, 255, 0) + im2, rectcontours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) + rect = rectcontours[0] + + cntscore = 1000 + cnt2score = 1000 + + + for i in contours: + ret = cv2.matchShapes(rect,i,1,0.0) + if(ret < cntscore): + if cnt is not None: + cnt2score = cntscore + cnt2 = cnt + cntscore = ret + cnt = i + elif(ret < cnt2score): + cnt2score = ret + cnt2 = i + + + if cnt is not None and cnt2 is not None: + + cv2.drawContours(img, [cnt], 0, (0,0,122), 3) + + cv2.drawContours(img, [cnt2], 0, (0,0,122), 3) + + x,y,w,h = cv2.boundingRect(cnt) + x2,y2,w2,h2 = cv2.boundingRect(cnt2) + if(x Date: Fri, 11 Jan 2019 13:10:58 -0600 Subject: [PATCH 037/131] Fixed error --- src/main/java/frc/robot/commands/FollowLineCommand.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 6e7cf51..0b55163 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -16,7 +16,7 @@ import java.util.ArrayList; import com.kauailabs.navx.frc.AHRS; -import com.sun.org.apache.bcel.internal.Const; + /** * Add your docs here. From a022c9cab70e603739a6e8bcbfefddfd4366bfd1 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Fri, 11 Jan 2019 13:49:22 -0600 Subject: [PATCH 038/131] fjdksl --- .../java/frc/robot/commands/FollowLineCommand.java | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 0b55163..4a452f2 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -152,7 +152,8 @@ protected void execute() { maybeThisWillWorkButIDRK(); } - + + /*DELETE THIS AT SOME POINT LATER WHEN OTHER METHODS WORK //vision stage, get us closer to the line protected void stageOne() { System.out.println("stage 1"); @@ -162,7 +163,6 @@ protected void stageOne() { stageOneComplete = true; } - /*DELETE THIS AT SOME POINT LATER WHEN OTHER METHODS WORK //once we hit the line, make sure we go forward 2 inches protected void stageTwo() { //stageTwoComplete = true; @@ -294,8 +294,8 @@ protected void maybeThisWillWorkButIDRK() { double frontAverage = followLineSubsystem.getLineAverage(1); if (frontAverage == 0 || frontAverage == Float.NaN) { - driveSubsystem.setRightSpeed(0); - driveSubsystem.setLeftSpeed(0); + driveSubsystem.stop();//this sets both speeds to 0 + System.out.println("killededed"); return;//Kills it because the sensor is either not working or off of the tape } @@ -351,8 +351,7 @@ else if(frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_ driveSubsystem.setLeftSpeed(2 * ConstantsMap.APPROACH_SPEED); } } else { - driveSubsystem.setLeftSpeed(0); - driveSubsystem.setRightSpeed(0); + driveSubsystem.stop(); runningFLC = false;//We have completed the process return; From f8e92135e9676795fff5d4989b69e53ca011de39 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Fri, 11 Jan 2019 13:59:39 -0600 Subject: [PATCH 039/131] Cleaned up Follow Line Command more --- .../frc/robot/commands/FollowLineCommand.java | 24 +++++++------------ 1 file changed, 8 insertions(+), 16 deletions(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 4a452f2..136394d 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -150,7 +150,7 @@ protected void execute() { // stageSix(); // } - maybeThisWillWorkButIDRK(); + approach(); } /*DELETE THIS AT SOME POINT LATER WHEN OTHER METHODS WORK @@ -289,7 +289,7 @@ protected void stageSix() { */ //New method relying only on the sensors (a bit simpler than doing the calculations) - protected void maybeThisWillWorkButIDRK() { + protected void approach() { //Triggers when we have a camera on the sensor double frontAverage = followLineSubsystem.getLineAverage(1); @@ -315,40 +315,32 @@ protected void maybeThisWillWorkButIDRK() { if (frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER + ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH) {//We are way to the left of the sensors, so we need to start turning (right) System.out.println("we should compensate left!"); - overCompensate = true; - driveSubsystem.setRightSpeed(2 * ConstantsMap.APPROACH_SPEED); - driveSubsystem.setLeftSpeed(-0.5 * ConstantsMap.APPROACH_SPEED); + driveSubsystem.tankDrive(-0.5 * ConstantsMap.APPROACH_SPEED, 2 * ConstantsMap.APPROACH_SPEED); } else if (frontAverage < ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH) { //Turn Left System.out.println("we should compensate right!"); - overCompensate = true; - driveSubsystem.setRightSpeed(-0.5 * ConstantsMap.APPROACH_SPEED); - driveSubsystem.setLeftSpeed(2 * ConstantsMap.APPROACH_SPEED); + driveSubsystem.tankDrive(2 * ConstantsMap.APPROACH_SPEED, -0.5 * ConstantsMap.APPROACH_SPEED); } else if (Math.abs(ConstantsMap.SENSOR_AVERAGE_CENTER - frontAverage) <= ConstantsMap.SENSOR_AVERAGE_TOLERANCE_LOW) {//We are within the tolerance, so we just move forward System.out.println("we have fixed it, so no more overcompensating!"); - overCompensate = false; - - driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); - driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); + + driveSubsystem.tankDrive(ConstantsMap.APPROACH_SPEED, ConstantsMap.APPROACH_SPEED); } else if(frontAverage < ConstantsMap.SENSOR_AVERAGE_CENTER + ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH && frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER + ConstantsMap.SENSOR_AVERAGE_TOLERANCE_LOW && overCompensate) { System.out.println("compensating left!"); - driveSubsystem.setRightSpeed(2 * ConstantsMap.APPROACH_SPEED); - driveSubsystem.setLeftSpeed(-0.5 * ConstantsMap.APPROACH_SPEED); + driveSubsystem.tankDrive(-0.5 * ConstantsMap.APPROACH_SPEED, 2 * ConstantsMap.APPROACH_SPEED); } else if(frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH && frontAverage < ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_AVERAGE_TOLERANCE_LOW && overCompensate){ System.out.println("compensating right!"); - driveSubsystem.setRightSpeed(-0.5 * ConstantsMap.APPROACH_SPEED); - driveSubsystem.setLeftSpeed(2 * ConstantsMap.APPROACH_SPEED); + driveSubsystem.tankDrive(2 * ConstantsMap.APPROACH_SPEED, -0.5 * ConstantsMap.APPROACH_SPEED); } } else { driveSubsystem.stop(); From 83aacc2f54f3a4facc8796c4350b8c6a053bdf0d Mon Sep 17 00:00:00 2001 From: SutterButter4 Date: Tue, 15 Jan 2019 20:10:27 -0600 Subject: [PATCH 040/131] more change --- src/main/java/frc/robot/ConstantsMap.java | 1 + .../frc/robot/commands/FollowLineCommand.java | 54 +++++++++++-------- 2 files changed, 34 insertions(+), 21 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 56eb621..2211200 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -29,6 +29,7 @@ public class ConstantsMap { public static final double SENSOR_AVERAGE_TOLERANCE_HIGH = 1.0d; public static final double SENSOR_AVERAGE_TOLERANCE_LOW = 0.1d; public static final double SENSOR_AVERAGE_CENTER = 3.5d; + public static final double VISION_THRESHOLD = 0.5; //degrees public static final double LOW_CUTOFF = 210; public static final double HIGH_CUTOFF = 230; diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 0b55163..0bb092b 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -14,10 +14,10 @@ import frc.robot.subsystems.FollowLineSubsystem; import java.lang.Math; import java.util.ArrayList; +import java.util.Arrays; import com.kauailabs.navx.frc.AHRS; - /** * Add your docs here. */ @@ -28,7 +28,6 @@ public class FollowLineCommand extends Command { //stage one variables (Vision Stage) protected boolean stageOneComplete; - /* //stage two variables protected boolean stageTwoComplete; double leftEncoderDistanceGoal; @@ -60,10 +59,6 @@ public class FollowLineCommand extends Command { //stage six variables protected boolean stageSixComplete; - */ - - //Checks to see if we are running rn - protected boolean runningFLC; //Maybe this will work variables protected double startEncoderAvg; @@ -93,12 +88,9 @@ protected void initialize() { //this is to be called upon initialization and whenever the button is hit twice protected void setupForRun() { - //turns on runningFLC - runningFLC = true; - //setup stage 1 variables stageOneComplete = false; - /* + //stage 2 stageTwoComplete = false; leftEncoderDistanceGoal = 0; @@ -120,8 +112,7 @@ protected void setupForRun() { stageFiveComplete = false; //stage 6 - stageSixComplete = false; - */ + stageSixComplete = false; //maybe firstRun = true; @@ -133,7 +124,7 @@ protected void execute() { /*if(limit switch hit){ - setupForRun();//reset for next run + setupForRun( );//reset for next run somehow mark that we are done, maybe interrrupt? }else{*/ // if(!stageOneComplete) { @@ -149,10 +140,24 @@ protected void execute() { // } else if(!stageSixComplete) { // stageSix(); // } - + maybeThisWillWorkButIDRK(); } + protected void vision(){ + + double horizontalAngle = 0; + double verticalAngle = 0; + + if(horizontalAngle > ConstantsMap.VISION_THRESHOLD){ + //turn left + }else if(horizontalAngle < ConstantsMap.VISION_THRESHOLD){ + //turn right + } else{ + //go straight + } + } + //vision stage, get us closer to the line protected void stageOne() { System.out.println("stage 1"); @@ -162,7 +167,6 @@ protected void stageOne() { stageOneComplete = true; } - /*DELETE THIS AT SOME POINT LATER WHEN OTHER METHODS WORK //once we hit the line, make sure we go forward 2 inches protected void stageTwo() { //stageTwoComplete = true; @@ -286,13 +290,16 @@ protected void stageSix() { System.out.println("stage 6"); stageSixComplete = true; } - */ //New method relying only on the sensors (a bit simpler than doing the calculations) protected void maybeThisWillWorkButIDRK() { //Triggers when we have a camera on the sensor double frontAverage = followLineSubsystem.getLineAverage(1); + System.out.println("LinefollowIDK start"); + System.out.println("what sensors are on?" + Arrays.toString(followLineSubsystem.getLineData(0))); + System.out.println("what is our average?" + followLineSubsystem.getLineAverage(0)); + if (frontAverage == 0 || frontAverage == Float.NaN) { driveSubsystem.setRightSpeed(0); driveSubsystem.setLeftSpeed(0); @@ -300,7 +307,7 @@ protected void maybeThisWillWorkButIDRK() { return;//Kills it because the sensor is either not working or off of the tape } - if (firstRun) {//this sets up the first few values we need + if (firstRun) { startEncoderAvg = (driveSubsystem.getRightEncoderDistance() + driveSubsystem.getLeftEncoderDistance()) / 2; encoderFinalGoal = startEncoderAvg + 16;//16 in inches @@ -353,16 +360,16 @@ else if(frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_ } else { driveSubsystem.setLeftSpeed(0); driveSubsystem.setRightSpeed(0); - - runningFLC = false;//We have completed the process return; } + + System.out.println("LinefollowIDK end"); } // Make this return true when this Command no longer needs to run execute() @Override protected boolean isFinished() { - return !runningFLC; + return stageSixComplete; } // Called once after isFinished returns true @@ -373,7 +380,12 @@ protected void end() { // Called for manual interruption of command protected void kill() { - runningFLC = false; + stageOneComplete = true; + stageTwoComplete = true; + stageThreeComplete = true; + stageFourComplete = true; + stageFiveComplete = true; + stageSixComplete = true; System.out.println("FollowLineCommand kill"); } From 80485ba03afc03e83bef9001a3fa31ecd2f4168b Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Tue, 15 Jan 2019 20:21:10 -0600 Subject: [PATCH 041/131] fdjslajkfdsla --- .../frc/robot/commands/FollowLineCommand.java | 61 ++++++------------- 1 file changed, 17 insertions(+), 44 deletions(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index b393a16..136394d 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -14,10 +14,10 @@ import frc.robot.subsystems.FollowLineSubsystem; import java.lang.Math; import java.util.ArrayList; -import java.util.Arrays; import com.kauailabs.navx.frc.AHRS; + /** * Add your docs here. */ @@ -28,6 +28,7 @@ public class FollowLineCommand extends Command { //stage one variables (Vision Stage) protected boolean stageOneComplete; + /* //stage two variables protected boolean stageTwoComplete; double leftEncoderDistanceGoal; @@ -59,6 +60,10 @@ public class FollowLineCommand extends Command { //stage six variables protected boolean stageSixComplete; + */ + + //Checks to see if we are running rn + protected boolean runningFLC; //Maybe this will work variables protected double startEncoderAvg; @@ -88,9 +93,12 @@ protected void initialize() { //this is to be called upon initialization and whenever the button is hit twice protected void setupForRun() { + //turns on runningFLC + runningFLC = true; + //setup stage 1 variables stageOneComplete = false; - + /* //stage 2 stageTwoComplete = false; leftEncoderDistanceGoal = 0; @@ -112,7 +120,8 @@ protected void setupForRun() { stageFiveComplete = false; //stage 6 - stageSixComplete = false; + stageSixComplete = false; + */ //maybe firstRun = true; @@ -124,7 +133,7 @@ protected void execute() { /*if(limit switch hit){ - setupForRun( );//reset for next run + setupForRun();//reset for next run somehow mark that we are done, maybe interrrupt? }else{*/ // if(!stageOneComplete) { @@ -140,32 +149,11 @@ protected void execute() { // } else if(!stageSixComplete) { // stageSix(); // } -<<<<<<< HEAD - - maybeThisWillWorkButIDRK(); - } - - protected void vision(){ - - double horizontalAngle = 0; - double verticalAngle = 0; - - if(horizontalAngle > ConstantsMap.VISION_THRESHOLD){ - //turn left - }else if(horizontalAngle < ConstantsMap.VISION_THRESHOLD){ - //turn right - } else{ - //go straight - } - } - -======= approach(); } /*DELETE THIS AT SOME POINT LATER WHEN OTHER METHODS WORK ->>>>>>> f8e92135e9676795fff5d4989b69e53ca011de39 //vision stage, get us closer to the line protected void stageOne() { System.out.println("stage 1"); @@ -298,16 +286,13 @@ protected void stageSix() { System.out.println("stage 6"); stageSixComplete = true; } + */ //New method relying only on the sensors (a bit simpler than doing the calculations) protected void approach() { //Triggers when we have a camera on the sensor double frontAverage = followLineSubsystem.getLineAverage(1); - System.out.println("LinefollowIDK start"); - System.out.println("what sensors are on?" + Arrays.toString(followLineSubsystem.getLineData(0))); - System.out.println("what is our average?" + followLineSubsystem.getLineAverage(0)); - if (frontAverage == 0 || frontAverage == Float.NaN) { driveSubsystem.stop();//this sets both speeds to 0 @@ -315,7 +300,7 @@ protected void approach() { return;//Kills it because the sensor is either not working or off of the tape } - if (firstRun) { + if (firstRun) {//this sets up the first few values we need startEncoderAvg = (driveSubsystem.getRightEncoderDistance() + driveSubsystem.getLeftEncoderDistance()) / 2; encoderFinalGoal = startEncoderAvg + 16;//16 in inches @@ -358,24 +343,17 @@ else if(frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_ driveSubsystem.tankDrive(2 * ConstantsMap.APPROACH_SPEED, -0.5 * ConstantsMap.APPROACH_SPEED); } } else { -<<<<<<< HEAD - driveSubsystem.setLeftSpeed(0); - driveSubsystem.setRightSpeed(0); -======= driveSubsystem.stop(); runningFLC = false;//We have completed the process ->>>>>>> f8e92135e9676795fff5d4989b69e53ca011de39 return; } - - System.out.println("LinefollowIDK end"); } // Make this return true when this Command no longer needs to run execute() @Override protected boolean isFinished() { - return stageSixComplete; + return !runningFLC; } // Called once after isFinished returns true @@ -386,12 +364,7 @@ protected void end() { // Called for manual interruption of command protected void kill() { - stageOneComplete = true; - stageTwoComplete = true; - stageThreeComplete = true; - stageFourComplete = true; - stageFiveComplete = true; - stageSixComplete = true; + runningFLC = false; System.out.println("FollowLineCommand kill"); } From 606d739db809b048afbf793e50ef71f81c476965 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Wed, 16 Jan 2019 11:08:28 -0600 Subject: [PATCH 042/131] Added some comments --- src/main/java/frc/robot/XboxMap.java | 4 ++-- src/main/java/frc/robot/commands/DriveCommand.java | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index 1ef89e7..9c71853 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -91,8 +91,8 @@ static public boolean runFollowLineCommand() { return oi.xbox.getAValue(); } - //TODO B is also being used for outtake (Change later) - static public boolean interruptFollowLine() { + //TODO B is also being used for outtake (Change later) // Put it on the other controller?? + static public boolean interruptFollowLineCommand() { return oi.xbox.getBValue(); } } \ No newline at end of file diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index daa318c..5b969b8 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -55,7 +55,8 @@ protected void execute() { // } if (runFollowLineCommand) { if (!fLC.isFinished()) { - if (XboxMap.interruptFollowLine()) { + //interruptFollowLine is called when B button is held down + if (XboxMap.interruptFollowLineCommand()) { fLC.kill();//Make this a thing } else { fLC.execute(); @@ -102,6 +103,7 @@ else if(!brakeState){ } //Check for follow line command call + //The runFollowLineCommand() is called when the A button is calledd if (XboxMap.runFollowLineCommand()) { runFollowLineCommand = true; fLC = new FollowLineCommand(); From 3a152b26d0b1bcf9a2d8eb29c4479d567ff0dd61 Mon Sep 17 00:00:00 2001 From: SutterButter4 Date: Wed, 16 Jan 2019 21:01:21 -0600 Subject: [PATCH 043/131] more changes! --- src/main/java/frc/robot/ConstantsMap.java | 2 +- .../java/frc/robot/commands/DriveCommand.java | 6 ++++++ .../frc/robot/commands/FollowLineCommand.java | 15 +++++++++++++-- 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 2211200..96e57ca 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -14,7 +14,7 @@ public class ConstantsMap { public static final double ROBOT_WHEEL_RADIUS_INCHES = 2; //inches public static final double DRIVE_ENCODER_TICKS_PER_ROTATION = 4096; //ticks public static final double DRIVE_ENCODER_DIST_PER_TICK = ((ROBOT_WHEEL_RADIUS_INCHES * 2 * Math.PI)/(DRIVE_ENCODER_TICKS_PER_ROTATION)); //inches - public static final double TURTLE_SPEED = .5; //to be determined + public static final double TURTLE_SPEED = 1.0; //to be determined //for line follower public static final double DISTANCE_BETWEEN_SENSORS = 6; //inches diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index daa318c..ced5603 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -54,16 +54,20 @@ protected void execute() { // turtlemode = !turtlemode; // } if (runFollowLineCommand) { + System.out.println("fuck me"); if (!fLC.isFinished()) { if (XboxMap.interruptFollowLine()) { + System.out.println("bu hao"); fLC.kill();//Make this a thing } else { + System.out.println("jfkdlsajklfdsajklfdsa"); fLC.execute(); } } else { runFollowLineCommand = false; } } else { + //System.out.println("We fucked"); double speedLeft = XboxMap.left(); speedLeft *= -1; @@ -103,8 +107,10 @@ else if(!brakeState){ //Check for follow line command call if (XboxMap.runFollowLineCommand()) { + System.out.println("Cyka Blyat"); runFollowLineCommand = true; fLC = new FollowLineCommand(); + fLC.initialize(); } } diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 136394d..fd26d81 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -14,6 +14,7 @@ import frc.robot.subsystems.FollowLineSubsystem; import java.lang.Math; import java.util.ArrayList; +import java.util.Arrays; import com.kauailabs.navx.frc.AHRS; @@ -94,6 +95,7 @@ protected void initialize() { //this is to be called upon initialization and whenever the button is hit twice protected void setupForRun() { //turns on runningFLC + System.out.println("we made it true"); runningFLC = true; //setup stage 1 variables @@ -149,7 +151,7 @@ protected void execute() { // } else if(!stageSixComplete) { // stageSix(); // } - + System.out.println("We execute"); approach(); } @@ -291,8 +293,14 @@ protected void stageSix() { //New method relying only on the sensors (a bit simpler than doing the calculations) protected void approach() { //Triggers when we have a camera on the sensor + System.out.println("fdjskal;fjkdsajfkl;dsajfkld;sajfkl;dsajkfldsjakl;fjdsakl;fjdklsajflkd;sa"); double frontAverage = followLineSubsystem.getLineAverage(1); + System.out.println("approach begin"); + + System.out.println("raw sensor data:" + Arrays.toString(followLineSubsystem.getRawData())); + System.out.println("t/f sensor data:" + Arrays.toString(followLineSubsystem.getLineData(0))); + if (frontAverage == 0 || frontAverage == Float.NaN) { driveSubsystem.stop();//this sets both speeds to 0 @@ -344,15 +352,18 @@ else if(frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_ } } else { driveSubsystem.stop(); - + System.out.println("We are bad"); runningFLC = false;//We have completed the process return; } + + System.out.println("approach end"); } // Make this return true when this Command no longer needs to run execute() @Override protected boolean isFinished() { + System.out.println("we are really dumb " + runningFLC); return !runningFLC; } From 724a9c1250d0dc73cecbd775cc8c2488c78052e3 Mon Sep 17 00:00:00 2001 From: Archan Das Date: Thu, 17 Jan 2019 19:28:46 -0600 Subject: [PATCH 044/131] Made a readme bitches --- README.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..0bdd5f4 --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# FRC-2019-JAVA + +OK, so basically, I write readme. From 5ae90db0eddfa40db34a8b41ae63a7c265e1278a Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Thu, 17 Jan 2019 19:35:38 -0600 Subject: [PATCH 045/131] fjdsl --- src/main/java/frc/robot/commands/DriveCommand.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index 64626c1..a265ef7 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -56,7 +56,7 @@ protected void execute() { if (runFollowLineCommand) { System.out.println("fuck me"); if (!fLC.isFinished()) { - if (XboxMap.interruptFollowLine()) { + if (XboxMap.interruptFollowLineCommand()) { System.out.println("bu hao"); fLC.kill();//Make this a thing } else { From f27c1637af6eb485dc8272649ebbce4db137353c Mon Sep 17 00:00:00 2001 From: SutterButter4 Date: Mon, 4 Feb 2019 19:50:46 -0600 Subject: [PATCH 046/131] constants for pid --- src/main/java/frc/robot/ConstantsMap.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 96e57ca..0c285e2 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -33,4 +33,13 @@ public class ConstantsMap { public static final double LOW_CUTOFF = 210; public static final double HIGH_CUTOFF = 230; + + + //Follow line pid values + public static final double PID_PERCENT_TOLERANCE = .01; + public static final double PID_OUTPUT_MAX = .25; + public static final double PID_PROPORTION_CONSTANT = 1; + public static final double PID_INTEGRAL_CONSTANT = .2; + public static final double PID_DERIVATIVE_CONSTANT = .001; + public static final double PID_INPUT_MAX = 180; } \ No newline at end of file From 52de59df14f997150b3fd80ffc6a62680714431b Mon Sep 17 00:00:00 2001 From: Gabriel Bryk Date: Thu, 10 Jan 2019 09:02:16 -0600 Subject: [PATCH 047/131] first vision commit --- GRIP/2019.grip | 125 ++++++++++++++ GRIP/__pycache__/grip.cpython-37.pyc | Bin 0 -> 4939 bytes GRIP/camera.py | 15 ++ GRIP/grip.py | 157 +++++++++++++++++ GRIP/images/2019-01-09_00-57-29-846.jpg | Bin 0 -> 9984 bytes GRIP/images/2019-01-09_00-57-29-846.png | Bin 0 -> 3265 bytes GRIP/images/2019-01-09_00-57-30-875.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-31-902.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-32-926.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-33-972.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-35-005.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-36-045.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-37-058.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_02-24-46-486.jpeg | Bin 0 -> 212384 bytes GRIP/images/rect.jpg | Bin 0 -> 43606 bytes GRIP/images/test.jpeg | Bin 0 -> 205752 bytes GRIP/vision.py | 209 +++++++++++++++++++++++ 17 files changed, 506 insertions(+) create mode 100644 GRIP/2019.grip create mode 100644 GRIP/__pycache__/grip.cpython-37.pyc create mode 100644 GRIP/camera.py create mode 100644 GRIP/grip.py create mode 100644 GRIP/images/2019-01-09_00-57-29-846.jpg create mode 100644 GRIP/images/2019-01-09_00-57-29-846.png create mode 100644 GRIP/images/2019-01-09_00-57-30-875.png create mode 100644 GRIP/images/2019-01-09_00-57-31-902.png create mode 100644 GRIP/images/2019-01-09_00-57-32-926.png create mode 100644 GRIP/images/2019-01-09_00-57-33-972.png create mode 100644 GRIP/images/2019-01-09_00-57-35-005.png create mode 100644 GRIP/images/2019-01-09_00-57-36-045.png create mode 100644 GRIP/images/2019-01-09_00-57-37-058.png create mode 100644 GRIP/images/2019-01-09_02-24-46-486.jpeg create mode 100644 GRIP/images/rect.jpg create mode 100644 GRIP/images/test.jpeg create mode 100644 GRIP/vision.py diff --git a/GRIP/2019.grip b/GRIP/2019.grip new file mode 100644 index 0000000..7883c4f --- /dev/null +++ b/GRIP/2019.grip @@ -0,0 +1,125 @@ + + + + + + + + + + + + 1.0791356615025363 + 74.53925305259105 + + + + + 30.575547587099685 + 123.00341850254723 + + + + + 214.02876531477455 + 255.0 + + + + + + + + false + + + + + + + 100.0 + + + 0 + + + 0 + + + 1000 + + + 0 + + + 1000 + + + + 79.73620617132391 + 100.0 + + + + 200.0 + + + 4.0 + + + 0 + + + 1000 + + + + + + + JPEG + + + 100.0 + + + 1.0 + + + false + + + + + + + + + + + + + + + + + + + + 0 + roboRIO-0-FRC.local + roboRIO-0-FRC.local + /home/lvuser + lvuser + /usr/local/frc/JRE/ + -Xmx50m -XX:-OmitStackTraceInFastThrow -XX:+HeapDumpOnOutOfMemoryError -XX:MaxNewSize=16m + + + Python + GripPipeline + false + C:\Users\gbryk\GRIP + + grip + + \ No newline at end of file diff --git a/GRIP/__pycache__/grip.cpython-37.pyc b/GRIP/__pycache__/grip.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..baca65b3ae8be9764fe90e5020750d259a34e061 GIT binary patch literal 4939 zcmb7I&u`nv6(0VOM9Y$6JGOVzU8I8+Xsb5x76DomZgy+0lT8eGoj^{TlyFPXnz2Ng zB9$Q(TP}4<&{KOV&{Gd_fgXzf2R&^s`!_6jTC|r|=mfM~i-ljuEE$#2!91TT^4**74MRqhs2p zM(z@3F!MQK<}=+cFm0FA3NNvj?9{Z>yc6^~4LQm_x%}Ih;Y7-WJk2(k&Wz{8Hkru^ zcouk(6Z9;_QLJmPUgLqT`KfK%^)1{?~ow9hG)lm= z&uV<**t=BU8 zy^a^SL4&7DlRCm)-0j8oH>P$UcmZ=7VGxHs5dmS6=ew`v;m0u-f$KYA;P=y|NdY4* z(}y|md~6!)$rPSD^)w?6X8$#kplyBx|)-{F6jf~)IcCJ+}|S*?eb=a2QhU6>UG>E zr~7V%^b-aY0pgob?=}wAF^*bZ%wOdel_FlsJW(@Kqw(}+YBiq5o1q_yw7PkJ z`+nVlQ*Yke-c3thP?xWwR!9rOP;AK5VBmPR0mD)Q*Jui}_LZq@@?&UH1q+#-(@x%> zK;jf@UMQ5XN1{?8@+OEx6BXc58|Xn%;&Py)HwFfJB;rJuxcsfLXAI0iVNgs8z@YAa zs4$2ENWSV(Sp*Pty<_f2fDm=*K9ZB@kKl>A2%Mgv3~-S-OIAv9Z@>W*AZX}ewSW9J zHeLv%)dTMq;#?vCwSSw_;f|$q4NUQZb59`jI#}Dt+cQ&@u z88zJA+I^T_-MqK4wc~6&cu>Fp*xB9s^uhL>v?62T<|wDvN@58z>}qy2mA3^deInkG z3x?OZXz(?{R@CL5p1`xJF1`~Gp1(gGAyo~2i(M#hGNGKsXhnXKQU;M zLFM?%gxn^-_+n610kL|j?U{qQ!Ii=MU?G`Lj6)KY@iY%jaq~$zSx5?MW+5qJ=Jt~^ zcIgRr4HlEdL^~wnv6?fID$`Io>X>P(8B=jxWqPu>B!jP>Ts_s^BZH-6DJe1I8c}j3 zZGtw%3+yT+)n{5VBUeVWg_XZzrI^fPWdZw_ljWqW_AV#0Sp5Q4R$i2(HjO+fKO%|z ziBfR44MILqB@uos^x_N%^5VELWr&$!Ogo%o1sUDN&1nck7~#2Nti0kHlCONJ1l60Nubs%8!2W@TRnZZBxo zc_U6|M-JKmpwk(IxNROZ<5pV6{8N5>ujl)z;qxFZ9QdIdr$x7m{|s1d#hz2iIKNu9 zmE9D(DybaR_KX}V52Z8G7mBpYa(3u0&^d%`D}#VNFK5rbCCp&Y#Eg=yya_d#pVQ)~ zur7@bmuknU)=#ygRBPF$yt}s9k|!%DWobc4m=5g=jx$v$+i+vFijFLssDKx>c}-WX ztXVm=sJ#nXwu)Mt(@(BX)f-b{cWPz%Pe$N&xZ|W{$3eR5`I4?U&Xb<&k5)>K!@`E+ z2w9m3`5#7FL5+Z4H^a;* max_width): + continue + if (h < min_height or h > max_height): + continue + area = cv2.contourArea(contour) + if (area < min_area): + continue + if (cv2.arcLength(contour, True) < min_perimeter): + continue + hull = cv2.convexHull(contour) + solid = 100 * area / cv2.contourArea(hull) + if (solid < solidity[0] or solid > solidity[1]): + continue + if (len(contour) < min_vertex_count or len(contour) > max_vertex_count): + continue + ratio = (float)(w) / h + if (ratio < min_ratio or ratio > max_ratio): + continue + output.append(contour) + return output + + @staticmethod + def __convex_hulls(input_contours): + """Computes the convex hulls of contours. + Args: + input_contours: A list of numpy.ndarray that each represent a contour. + Returns: + A list of numpy.ndarray that each represent a contour. + """ + output = [] + for contour in input_contours: + output.append(cv2.convexHull(contour)) + return output + + + diff --git a/GRIP/images/2019-01-09_00-57-29-846.jpg b/GRIP/images/2019-01-09_00-57-29-846.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f9095a3a32f099586dbd4bf52cd645095a44f9c8 GIT binary patch literal 9984 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 literal 0 HcmV?d00001 diff --git a/GRIP/images/2019-01-09_00-57-31-902.png b/GRIP/images/2019-01-09_00-57-31-902.png new file mode 100644 index 0000000000000000000000000000000000000000..352fb545c08c98c16ae3b478a683abd10e03c96c GIT binary patch literal 131072 zcmeIzT})GF7{Kv56a0Yc4ABC`DIcYA*_=YKbs~sg1*Ub;8MesKpjbCX>1rm{5u8KI zj57P7!Nmd>OJ-u6ByNj2(&_ZfdCpuQ8l9UGu;FAbS%l{70-OqaHOnp*FTL2szgO>h z-sil}^Zw51dH28WbQmY6O*R+|#?q4IYYm3yJ~9}_-I*u?hUd>V*$svXw@Q~6zp-=N zy$i+Ol*`i$7fy^7ovrnse13J)?BDME-nOE;>~u+JMd+o_mSFaQ?6Tik+Yrh=yey*Y^sREavRI3W`K|Iz5&PA@?9=Ftcy+FK zye}F%D25+gRQ^;4jK{S$e{!zAQ{Oq@S=slFJ;N4AOme0BI%0d;ic3rI?vEXgs-80U?A8>gdMxSqlTajj$sP$VQu0L?Gvql^Q^jVx zrEY#Cv`ASY+L!41lKk(KaI$TDp1wtEw$pTv^3Nbp0Y+P}`*6+76w zY;Im8blYf6mzpcK*|Tis=45ZO)a`K&=0}3Zlzk$tGqyL&7ECnW)tm#KrGuH}X->7x zpXW76*E~N4%|dLh_jv4RueiNFSR*bA#dZfXZ;G^9k!F^Jv^y^nysdomL+o&GwLPZP zYE`0r)gB2vP;Q74heRiiQwt*D4N2m5uO!l{1Xt*aFq|T`5Ui*Zi>GueE!r-5q3_(| zjzWKkj_&)Dy;k2If!8lu%YJ2EBxzUmHLbFB;OaYy}hd{ zt4Ch-o%qja>qy#@*y>8x$mD-Vd5-pX?HTo9Q(B?5M{stjiN=obT~Y0xwokld+l^Lj zhh8QRsoPsb-L~lU_RV#w)A+MdA9u8MAaXzR)*8%@Qrv2MVsmQ+7UE<=hC_I!Y3fg=ob-I6+R-4_LvZQaNcmFss98U3> zpV0^E=^sH(i2ub|`Il+BZ(7_s_Q{OLr+w)P=kilaH+}qg%ntzs5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ z1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009IL zKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ z1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009IL zKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ r1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5HS1=EgXzM literal 0 HcmV?d00001 diff --git a/GRIP/images/2019-01-09_00-57-32-926.png b/GRIP/images/2019-01-09_00-57-32-926.png new file mode 100644 index 0000000000000000000000000000000000000000..3ac160040eafcc4bc255f2f3d1da85bfed1b2f84 GIT binary patch literal 131072 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 Jf&ZSszX7*L&YS=M literal 0 HcmV?d00001 diff --git a/GRIP/images/2019-01-09_02-24-46-486.jpeg b/GRIP/images/2019-01-09_02-24-46-486.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..d574614e50b73e986fc7f520191017740889bcb2 GIT binary patch literal 212384 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

&xZ?(`|j& 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 literal 0 HcmV?d00001 diff --git a/GRIP/images/rect.jpg b/GRIP/images/rect.jpg new file mode 100644 index 0000000000000000000000000000000000000000..90c99cceff929fe010f55fe3ab61fb19c3aeb7ec GIT binary patch literal 43606 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�Zx~4>e;V+J;VeBQ}Gn{N` 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 max_width): + continue + if (h < min_height or h > max_height): + continue + area = cv2.contourArea(contour) + if (area < min_area): + continue + if (cv2.arcLength(contour, True) < min_perimeter): + continue + hull = cv2.convexHull(contour) + solid = 100 * area / cv2.contourArea(hull) + if (solid < solidity[0] or solid > solidity[1]): + continue + if (len(contour) < min_vertex_count or len(contour) > max_vertex_count): + continue + ratio = (float)(w) / h + if (ratio < min_ratio or ratio > max_ratio): + continue + output.append(contour) + + return output +def getAngle(center): + return math.atan(center/focal) * 180 / math.pi; +def getDistance(angle): + return (target_bottom_height + (target_height/2) - camera_height) / math.tan((verticalangle + camera_angle) * math.pi / 180) ; +def process(img): + rgb_threshold_red = [0.0, 45.40101835752104] + rgb_threshold_green = [200.0, 255.0] + rgb_threshold_blue = [0.0, 255.0] + + + + rgb_threshold_output = None + + + + + + + """ + Runs the pipeline and sets all outputs to new values. + """ + # Step HSL_Threshold0: + rgb_threshold_input = img + (rgb_threshold_output) = rgb_threshold(rgb_threshold_input, rgb_threshold_red, rgb_threshold_green, rgb_threshold_blue) + + find_contours_input = rgb_threshold_output + find_contours_external_only = False + + find_contours_output = None + + # Step Find_Contours0: + find_contours_input = rgb_threshold_output + (find_contours_output) = find_contours(find_contours_input, find_contours_external_only) + + filter_contours_contours = find_contours_output + filter_contours_min_area = 60 + filter_contours_min_perimeter = 10.0 + filter_contours_min_width = 0.0 + filter_contours_max_width = 1000.0 + filter_contours_min_height = 0.0 + filter_contours_max_height = 1000.0 + filter_contours_solidity = [0.0, 100.0] + filter_contours_max_vertices = 5000.0 + filter_contours_min_vertices = 0.0 + filter_contours_min_ratio = 0.0 + filter_contours_max_ratio = 1000.0 + + + filter_contours_output = None + + # Step Filter_Contours0: + filter_contours_contours = find_contours_output + (filter_contours_output) = filter_contours(filter_contours_contours, filter_contours_min_area, filter_contours_min_perimeter, filter_contours_min_width, filter_contours_max_width, filter_contours_min_height, filter_contours_max_height, filter_contours_solidity, filter_contours_max_vertices, filter_contours_min_vertices, filter_contours_min_ratio, filter_contours_max_ratio) + + #print(len(filter_contours_output)) + contours= filter_contours_output + output = [] + for contour in contours: + output.append(cv2.convexHull(contour)) + contours = output + cv2.drawContours(img, contours, -1, (255,255,0), 3) + ret = 1000 + cnt = None + cnt2 = None + + im = cv2.imread('images/rect.jpg') + imgray = cv2.cvtColor(im, cv2.COLOR_BGR2GRAY) + ret, thresh = cv2.threshold(imgray, 127, 255, 0) + im2, rectcontours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) + rect = rectcontours[0] + + cntscore = 1000 + cnt2score = 1000 + + + for i in contours: + ret = cv2.matchShapes(rect,i,1,0.0) + if(ret < 100): + if(ret < cntscore): + cntscore = ret + cnt = i + elif(ret < cnt2score): + cnt2score = ret + cnt2 = i + + + if cnt is not None and cnt2 is not None: + + cv2.drawContours(img, [cnt], 0, (255,0,0), 3) + + cv2.drawContours(img, [cnt2], 0, (255,0,0), 3) + + x,y,w,h = cv2.boundingRect(cnt) + x2,y2,w2,h2 = cv2.boundingRect(cnt2) + if(x Date: Thu, 10 Jan 2019 14:36:55 -0600 Subject: [PATCH 048/131] working vision --- GRIP/{2019.grip => 2019gaberoom.grip} | 0 GRIP/contourtest.py | 14 ++++++++ GRIP/vision.py | 48 ++++++++++++++++----------- 3 files changed, 42 insertions(+), 20 deletions(-) rename GRIP/{2019.grip => 2019gaberoom.grip} (100%) create mode 100644 GRIP/contourtest.py diff --git a/GRIP/2019.grip b/GRIP/2019gaberoom.grip similarity index 100% rename from GRIP/2019.grip rename to GRIP/2019gaberoom.grip diff --git a/GRIP/contourtest.py b/GRIP/contourtest.py new file mode 100644 index 0000000..9385022 --- /dev/null +++ b/GRIP/contourtest.py @@ -0,0 +1,14 @@ +import numpy as np +import cv2 + +im = cv2.imread('images/2019-01-09_00-57-35-005.png') +imgray = cv2.cvtColor(im,cv2.COLOR_BGR2GRAY) +ret,thresh = cv2.threshold(imgray,127,255,0) +im2,contours, hierarchy = cv2.findContours(thresh,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE) +cv2.drawContours(im, contours, -1, (0,255,0), 3) +cv2.imshow('frame',im) +if cv2.waitKey(1) & 0xFF == ord('q'): + + # When everything done, release the capture + cap.release() + cv2.destroyAllWindows() diff --git a/GRIP/vision.py b/GRIP/vision.py index bdd2c9d..4eca7e6 100644 --- a/GRIP/vision.py +++ b/GRIP/vision.py @@ -91,9 +91,9 @@ def getAngle(center): def getDistance(angle): return (target_bottom_height + (target_height/2) - camera_height) / math.tan((verticalangle + camera_angle) * math.pi / 180) ; def process(img): - rgb_threshold_red = [0.0, 45.40101835752104] - rgb_threshold_green = [200.0, 255.0] - rgb_threshold_blue = [0.0, 255.0] + rgb_threshold_red = [0.0, 68.0] + rgb_threshold_green = [92, 255.0] + rgb_threshold_blue = [0.0, 92] @@ -146,7 +146,7 @@ def process(img): for contour in contours: output.append(cv2.convexHull(contour)) contours = output - cv2.drawContours(img, contours, -1, (255,255,0), 3) + #cv2.drawContours(img, contours, -1, (255,255,0), 3) ret = 1000 cnt = None cnt2 = None @@ -163,39 +163,47 @@ def process(img): for i in contours: ret = cv2.matchShapes(rect,i,1,0.0) - if(ret < 100): - if(ret < cntscore): - cntscore = ret - cnt = i - elif(ret < cnt2score): - cnt2score = ret - cnt2 = i + if(ret < cntscore): + if cnt is not None: + cnt2score = cntscore + cnt2 = cnt + cntscore = ret + cnt = i + elif(ret < cnt2score): + cnt2score = ret + cnt2 = i - + if cnt is not None and cnt2 is not None: - cv2.drawContours(img, [cnt], 0, (255,0,0), 3) + cv2.drawContours(img, [cnt], 0, (0,0,122), 3) - cv2.drawContours(img, [cnt2], 0, (255,0,0), 3) + cv2.drawContours(img, [cnt2], 0, (0,0,122), 3) x,y,w,h = cv2.boundingRect(cnt) x2,y2,w2,h2 = cv2.boundingRect(cnt2) if(x Date: Thu, 10 Jan 2019 15:57:37 -0600 Subject: [PATCH 049/131] working vision --- GRIP/vision.py | 38 +++++++++++++++++++++++++++----------- 1 file changed, 27 insertions(+), 11 deletions(-) diff --git a/GRIP/vision.py b/GRIP/vision.py index 4eca7e6..de37655 100644 --- a/GRIP/vision.py +++ b/GRIP/vision.py @@ -4,12 +4,12 @@ centerx = 640 centery = 360 -focal = 640 -camera_height = 30 -target_bottom_height=40 -target_height = 5 -target_width = 15 -camera_fov = 70 +camera_height = 31 +target_bottom_height=63 +target_height = 6 +target_width = 13 +camera_fov_x = 60 +camera_fov_y= 40 def rgb_threshold(input, red, green, blue): """Segment an image based on color ranges. @@ -86,10 +86,14 @@ def filter_contours(input_contours, min_area, min_perimeter, min_width, max_widt output.append(contour) return output -def getAngle(center): - return math.atan(center/focal) * 180 / math.pi; +def getAngleX(center): + center = center - 1280/2 + return math.atan(2*center*math.tan((60 * math.pi / 180 )/2)/1280) * 180 / math.pi; +def getAngleY(center): + center = center - 720/2 + return math.atan(2*center*math.tan((camera_fov_y * math.pi / 180 )/2)/720) * 180 / math.pi * -1; def getDistance(angle): - return (target_bottom_height + (target_height/2) - camera_height) / math.tan((verticalangle + camera_angle) * math.pi / 180) ; + return (35 / math.tan(angle* math.pi / 180)) def process(img): rgb_threshold_red = [0.0, 68.0] rgb_threshold_green = [92, 255.0] @@ -188,8 +192,13 @@ def process(img): cv2.rectangle(img,(x,y),(x2+w2,y2+h2),(0,255,0),2) cx = x + (x2+w2-x)/2 cy = y + (y2+h2-y)/2 + else: cv2.rectangle(img,(x,y2),(x2+w2,y+h2),(0,255,0),2) + cx = x + (x2+w2-x)/2 + cy = y + (y2+h2-y)/2 + + else: cv2.rectangle(img,(x2,y2),(x+w,y+h),(0,255,0),2) @@ -197,13 +206,20 @@ def process(img): cy = y2 + (y+h-y2)/2 cv2.rectangle(img,(x,y),(x+w,y+h),(0,0,255),2) cv2.rectangle(img,(x2,y2),(x2+w2,y2+h2),(0,0,255),2) - #print(getAngle(cx)) - + #print(getAngleX(cx)) + y_angle = getAngleY(cy) + print(y_angle) + distance = getDistance(y_angle) + + print(distance) return img cap = cv2.VideoCapture(1) cap.set(cv2.CAP_PROP_AUTOFOCUS, 0) cap.set(cv2.CAP_PROP_EXPOSURE, -50) +cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1280) +cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 720) + while(True): # Capture frame-by-frame ret, frame = cap.read() From 942e826eb18bb2eff6ba5d1a1c58072692422560 Mon Sep 17 00:00:00 2001 From: Gabriel Bryk Date: Thu, 10 Jan 2019 23:10:50 -0600 Subject: [PATCH 050/131] vision code from thursday --- GRIP/2019gaberoom.grip | 125 ------------ GRIP/__pycache__/grip.cpython-37.pyc | Bin 4939 -> 0 bytes GRIP/camera.py | 15 -- GRIP/contourtest.py | 14 -- GRIP/grip.py | 157 --------------- GRIP/images/2019-01-09_00-57-29-846.jpg | Bin 9984 -> 0 bytes GRIP/images/2019-01-09_00-57-29-846.png | Bin 3265 -> 0 bytes GRIP/images/2019-01-09_00-57-30-875.png | Bin 131072 -> 0 bytes GRIP/images/2019-01-09_00-57-31-902.png | Bin 131072 -> 0 bytes GRIP/images/2019-01-09_00-57-32-926.png | Bin 131072 -> 0 bytes GRIP/images/2019-01-09_00-57-33-972.png | Bin 131072 -> 0 bytes GRIP/images/2019-01-09_00-57-35-005.png | Bin 131072 -> 0 bytes GRIP/images/2019-01-09_00-57-36-045.png | Bin 131072 -> 0 bytes GRIP/images/2019-01-09_00-57-37-058.png | Bin 131072 -> 0 bytes GRIP/images/2019-01-09_02-24-46-486.jpeg | Bin 212384 -> 0 bytes GRIP/images/rect.jpg | Bin 43606 -> 0 bytes GRIP/images/test.jpeg | Bin 205752 -> 0 bytes GRIP/vision.py | 233 ----------------------- 18 files changed, 544 deletions(-) delete mode 100644 GRIP/2019gaberoom.grip delete mode 100644 GRIP/__pycache__/grip.cpython-37.pyc delete mode 100644 GRIP/camera.py delete mode 100644 GRIP/contourtest.py delete mode 100644 GRIP/grip.py delete mode 100644 GRIP/images/2019-01-09_00-57-29-846.jpg delete mode 100644 GRIP/images/2019-01-09_00-57-29-846.png delete mode 100644 GRIP/images/2019-01-09_00-57-30-875.png delete mode 100644 GRIP/images/2019-01-09_00-57-31-902.png delete mode 100644 GRIP/images/2019-01-09_00-57-32-926.png delete mode 100644 GRIP/images/2019-01-09_00-57-33-972.png delete mode 100644 GRIP/images/2019-01-09_00-57-35-005.png delete mode 100644 GRIP/images/2019-01-09_00-57-36-045.png delete mode 100644 GRIP/images/2019-01-09_00-57-37-058.png delete mode 100644 GRIP/images/2019-01-09_02-24-46-486.jpeg delete mode 100644 GRIP/images/rect.jpg delete mode 100644 GRIP/images/test.jpeg delete mode 100644 GRIP/vision.py diff --git a/GRIP/2019gaberoom.grip b/GRIP/2019gaberoom.grip deleted file mode 100644 index 7883c4f..0000000 --- a/GRIP/2019gaberoom.grip +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - - - - - - - 1.0791356615025363 - 74.53925305259105 - - - - - 30.575547587099685 - 123.00341850254723 - - - - - 214.02876531477455 - 255.0 - - - - - - - - false - - - - - - - 100.0 - - - 0 - - - 0 - - - 1000 - - - 0 - - - 1000 - - - - 79.73620617132391 - 100.0 - - - - 200.0 - - - 4.0 - - - 0 - - - 1000 - - - - - - - JPEG - - - 100.0 - - - 1.0 - - - false - - - - - - - - - - - - - - - - - - - - 0 - roboRIO-0-FRC.local - roboRIO-0-FRC.local - /home/lvuser - lvuser - /usr/local/frc/JRE/ - -Xmx50m -XX:-OmitStackTraceInFastThrow -XX:+HeapDumpOnOutOfMemoryError -XX:MaxNewSize=16m - - - Python - GripPipeline - false - C:\Users\gbryk\GRIP - - grip - - \ No newline at end of file diff --git a/GRIP/__pycache__/grip.cpython-37.pyc b/GRIP/__pycache__/grip.cpython-37.pyc deleted file mode 100644 index baca65b3ae8be9764fe90e5020750d259a34e061..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4939 zcmb7I&u`nv6(0VOM9Y$6JGOVzU8I8+Xsb5x76DomZgy+0lT8eGoj^{TlyFPXnz2Ng zB9$Q(TP}4<&{KOV&{Gd_fgXzf2R&^s`!_6jTC|r|=mfM~i-ljuEE$#2!91TT^4**74MRqhs2p zM(z@3F!MQK<}=+cFm0FA3NNvj?9{Z>yc6^~4LQm_x%}Ih;Y7-WJk2(k&Wz{8Hkru^ zcouk(6Z9;_QLJmPUgLqT`KfK%^)1{?~ow9hG)lm= z&uV<**t=BU8 zy^a^SL4&7DlRCm)-0j8oH>P$UcmZ=7VGxHs5dmS6=ew`v;m0u-f$KYA;P=y|NdY4* z(}y|md~6!)$rPSD^)w?6X8$#kplyBx|)-{F6jf~)IcCJ+}|S*?eb=a2QhU6>UG>E zr~7V%^b-aY0pgob?=}wAF^*bZ%wOdel_FlsJW(@Kqw(}+YBiq5o1q_yw7PkJ z`+nVlQ*Yke-c3thP?xWwR!9rOP;AK5VBmPR0mD)Q*Jui}_LZq@@?&UH1q+#-(@x%> zK;jf@UMQ5XN1{?8@+OEx6BXc58|Xn%;&Py)HwFfJB;rJuxcsfLXAI0iVNgs8z@YAa zs4$2ENWSV(Sp*Pty<_f2fDm=*K9ZB@kKl>A2%Mgv3~-S-OIAv9Z@>W*AZX}ewSW9J zHeLv%)dTMq;#?vCwSSw_;f|$q4NUQZb59`jI#}Dt+cQ&@u z88zJA+I^T_-MqK4wc~6&cu>Fp*xB9s^uhL>v?62T<|wDvN@58z>}qy2mA3^deInkG z3x?OZXz(?{R@CL5p1`xJF1`~Gp1(gGAyo~2i(M#hGNGKsXhnXKQU;M zLFM?%gxn^-_+n610kL|j?U{qQ!Ii=MU?G`Lj6)KY@iY%jaq~$zSx5?MW+5qJ=Jt~^ zcIgRr4HlEdL^~wnv6?fID$`Io>X>P(8B=jxWqPu>B!jP>Ts_s^BZH-6DJe1I8c}j3 zZGtw%3+yT+)n{5VBUeVWg_XZzrI^fPWdZw_ljWqW_AV#0Sp5Q4R$i2(HjO+fKO%|z ziBfR44MILqB@uos^x_N%^5VELWr&$!Ogo%o1sUDN&1nck7~#2Nti0kHlCONJ1l60Nubs%8!2W@TRnZZBxo zc_U6|M-JKmpwk(IxNROZ<5pV6{8N5>ujl)z;qxFZ9QdIdr$x7m{|s1d#hz2iIKNu9 zmE9D(DybaR_KX}V52Z8G7mBpYa(3u0&^d%`D}#VNFK5rbCCp&Y#Eg=yya_d#pVQ)~ zur7@bmuknU)=#ygRBPF$yt}s9k|!%DWobc4m=5g=jx$v$+i+vFijFLssDKx>c}-WX ztXVm=sJ#nXwu)Mt(@(BX)f-b{cWPz%Pe$N&xZ|W{$3eR5`I4?U&Xb<&k5)>K!@`E+ z2w9m3`5#7FL5+Z4H^a;* max_width): - continue - if (h < min_height or h > max_height): - continue - area = cv2.contourArea(contour) - if (area < min_area): - continue - if (cv2.arcLength(contour, True) < min_perimeter): - continue - hull = cv2.convexHull(contour) - solid = 100 * area / cv2.contourArea(hull) - if (solid < solidity[0] or solid > solidity[1]): - continue - if (len(contour) < min_vertex_count or len(contour) > max_vertex_count): - continue - ratio = (float)(w) / h - if (ratio < min_ratio or ratio > max_ratio): - continue - output.append(contour) - return output - - @staticmethod - def __convex_hulls(input_contours): - """Computes the convex hulls of contours. - Args: - input_contours: A list of numpy.ndarray that each represent a contour. - Returns: - A list of numpy.ndarray that each represent a contour. - """ - output = [] - for contour in input_contours: - output.append(cv2.convexHull(contour)) - return output - - - diff --git a/GRIP/images/2019-01-09_00-57-29-846.jpg b/GRIP/images/2019-01-09_00-57-29-846.jpg deleted file mode 100644 index f9095a3a32f099586dbd4bf52cd645095a44f9c8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9984 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 diff --git a/GRIP/images/2019-01-09_00-57-31-902.png b/GRIP/images/2019-01-09_00-57-31-902.png deleted file mode 100644 index 352fb545c08c98c16ae3b478a683abd10e03c96c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 131072 zcmeIzT})GF7{Kv56a0Yc4ABC`DIcYA*_=YKbs~sg1*Ub;8MesKpjbCX>1rm{5u8KI zj57P7!Nmd>OJ-u6ByNj2(&_ZfdCpuQ8l9UGu;FAbS%l{70-OqaHOnp*FTL2szgO>h z-sil}^Zw51dH28WbQmY6O*R+|#?q4IYYm3yJ~9}_-I*u?hUd>V*$svXw@Q~6zp-=N zy$i+Ol*`i$7fy^7ovrnse13J)?BDME-nOE;>~u+JMd+o_mSFaQ?6Tik+Yrh=yey*Y^sREavRI3W`K|Iz5&PA@?9=Ftcy+FK zye}F%D25+gRQ^;4jK{S$e{!zAQ{Oq@S=slFJ;N4AOme0BI%0d;ic3rI?vEXgs-80U?A8>gdMxSqlTajj$sP$VQu0L?Gvql^Q^jVx zrEY#Cv`ASY+L!41lKk(KaI$TDp1wtEw$pTv^3Nbp0Y+P}`*6+76w zY;Im8blYf6mzpcK*|Tis=45ZO)a`K&=0}3Zlzk$tGqyL&7ECnW)tm#KrGuH}X->7x zpXW76*E~N4%|dLh_jv4RueiNFSR*bA#dZfXZ;G^9k!F^Jv^y^nysdomL+o&GwLPZP zYE`0r)gB2vP;Q74heRiiQwt*D4N2m5uO!l{1Xt*aFq|T`5Ui*Zi>GueE!r-5q3_(| zjzWKkj_&)Dy;k2If!8lu%YJ2EBxzUmHLbFB;OaYy}hd{ zt4Ch-o%qja>qy#@*y>8x$mD-Vd5-pX?HTo9Q(B?5M{stjiN=obT~Y0xwokld+l^Lj zhh8QRsoPsb-L~lU_RV#w)A+MdA9u8MAaXzR)*8%@Qrv2MVsmQ+7UE<=hC_I!Y3fg=ob-I6+R-4_LvZQaNcmFss98U3> zpV0^E=^sH(i2ub|`Il+BZ(7_s_Q{OLr+w)P=kilaH+}qg%ntzs5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ z1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009IL zKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ z1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009IL zKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ r1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5HS1=EgXzM diff --git a/GRIP/images/2019-01-09_00-57-32-926.png b/GRIP/images/2019-01-09_00-57-32-926.png deleted file mode 100644 index 3ac160040eafcc4bc255f2f3d1da85bfed1b2f84..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 131072 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 Jf&ZSszX7*L&YS=M diff --git a/GRIP/images/2019-01-09_02-24-46-486.jpeg b/GRIP/images/2019-01-09_02-24-46-486.jpeg deleted file mode 100644 index d574614e50b73e986fc7f520191017740889bcb2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 212384 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

&xZ?(`|j& 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 diff --git a/GRIP/images/rect.jpg b/GRIP/images/rect.jpg deleted file mode 100644 index 90c99cceff929fe010f55fe3ab61fb19c3aeb7ec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 43606 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�Zx~4>e;V+J;VeBQ}Gn{N` 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 max_width): - continue - if (h < min_height or h > max_height): - continue - area = cv2.contourArea(contour) - if (area < min_area): - continue - if (cv2.arcLength(contour, True) < min_perimeter): - continue - hull = cv2.convexHull(contour) - solid = 100 * area / cv2.contourArea(hull) - if (solid < solidity[0] or solid > solidity[1]): - continue - if (len(contour) < min_vertex_count or len(contour) > max_vertex_count): - continue - ratio = (float)(w) / h - if (ratio < min_ratio or ratio > max_ratio): - continue - output.append(contour) - - return output -def getAngleX(center): - center = center - 1280/2 - return math.atan(2*center*math.tan((60 * math.pi / 180 )/2)/1280) * 180 / math.pi; -def getAngleY(center): - center = center - 720/2 - return math.atan(2*center*math.tan((camera_fov_y * math.pi / 180 )/2)/720) * 180 / math.pi * -1; -def getDistance(angle): - return (35 / math.tan(angle* math.pi / 180)) -def process(img): - rgb_threshold_red = [0.0, 68.0] - rgb_threshold_green = [92, 255.0] - rgb_threshold_blue = [0.0, 92] - - - - rgb_threshold_output = None - - - - - - - """ - Runs the pipeline and sets all outputs to new values. - """ - # Step HSL_Threshold0: - rgb_threshold_input = img - (rgb_threshold_output) = rgb_threshold(rgb_threshold_input, rgb_threshold_red, rgb_threshold_green, rgb_threshold_blue) - - find_contours_input = rgb_threshold_output - find_contours_external_only = False - - find_contours_output = None - - # Step Find_Contours0: - find_contours_input = rgb_threshold_output - (find_contours_output) = find_contours(find_contours_input, find_contours_external_only) - - filter_contours_contours = find_contours_output - filter_contours_min_area = 60 - filter_contours_min_perimeter = 10.0 - filter_contours_min_width = 0.0 - filter_contours_max_width = 1000.0 - filter_contours_min_height = 0.0 - filter_contours_max_height = 1000.0 - filter_contours_solidity = [0.0, 100.0] - filter_contours_max_vertices = 5000.0 - filter_contours_min_vertices = 0.0 - filter_contours_min_ratio = 0.0 - filter_contours_max_ratio = 1000.0 - - - filter_contours_output = None - - # Step Filter_Contours0: - filter_contours_contours = find_contours_output - (filter_contours_output) = filter_contours(filter_contours_contours, filter_contours_min_area, filter_contours_min_perimeter, filter_contours_min_width, filter_contours_max_width, filter_contours_min_height, filter_contours_max_height, filter_contours_solidity, filter_contours_max_vertices, filter_contours_min_vertices, filter_contours_min_ratio, filter_contours_max_ratio) - - #print(len(filter_contours_output)) - contours= filter_contours_output - output = [] - for contour in contours: - output.append(cv2.convexHull(contour)) - contours = output - #cv2.drawContours(img, contours, -1, (255,255,0), 3) - ret = 1000 - cnt = None - cnt2 = None - - im = cv2.imread('images/rect.jpg') - imgray = cv2.cvtColor(im, cv2.COLOR_BGR2GRAY) - ret, thresh = cv2.threshold(imgray, 127, 255, 0) - im2, rectcontours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) - rect = rectcontours[0] - - cntscore = 1000 - cnt2score = 1000 - - - for i in contours: - ret = cv2.matchShapes(rect,i,1,0.0) - if(ret < cntscore): - if cnt is not None: - cnt2score = cntscore - cnt2 = cnt - cntscore = ret - cnt = i - elif(ret < cnt2score): - cnt2score = ret - cnt2 = i - - - if cnt is not None and cnt2 is not None: - - cv2.drawContours(img, [cnt], 0, (0,0,122), 3) - - cv2.drawContours(img, [cnt2], 0, (0,0,122), 3) - - x,y,w,h = cv2.boundingRect(cnt) - x2,y2,w2,h2 = cv2.boundingRect(cnt2) - if(x Date: Fri, 11 Jan 2019 10:32:59 -0600 Subject: [PATCH 051/131] Revert "vision code from thursday" This reverts commit dfcefdf3ac0bc80a061058c45faf7d1d94e1a046. --- GRIP/2019gaberoom.grip | 125 ++++++++++++ GRIP/__pycache__/grip.cpython-37.pyc | Bin 0 -> 4939 bytes GRIP/camera.py | 15 ++ GRIP/contourtest.py | 14 ++ GRIP/grip.py | 157 +++++++++++++++ GRIP/images/2019-01-09_00-57-29-846.jpg | Bin 0 -> 9984 bytes GRIP/images/2019-01-09_00-57-29-846.png | Bin 0 -> 3265 bytes GRIP/images/2019-01-09_00-57-30-875.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-31-902.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-32-926.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-33-972.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-35-005.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-36-045.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_00-57-37-058.png | Bin 0 -> 131072 bytes GRIP/images/2019-01-09_02-24-46-486.jpeg | Bin 0 -> 212384 bytes GRIP/images/rect.jpg | Bin 0 -> 43606 bytes GRIP/images/test.jpeg | Bin 0 -> 205752 bytes GRIP/vision.py | 233 +++++++++++++++++++++++ 18 files changed, 544 insertions(+) create mode 100644 GRIP/2019gaberoom.grip create mode 100644 GRIP/__pycache__/grip.cpython-37.pyc create mode 100644 GRIP/camera.py create mode 100644 GRIP/contourtest.py create mode 100644 GRIP/grip.py create mode 100644 GRIP/images/2019-01-09_00-57-29-846.jpg create mode 100644 GRIP/images/2019-01-09_00-57-29-846.png create mode 100644 GRIP/images/2019-01-09_00-57-30-875.png create mode 100644 GRIP/images/2019-01-09_00-57-31-902.png create mode 100644 GRIP/images/2019-01-09_00-57-32-926.png create mode 100644 GRIP/images/2019-01-09_00-57-33-972.png create mode 100644 GRIP/images/2019-01-09_00-57-35-005.png create mode 100644 GRIP/images/2019-01-09_00-57-36-045.png create mode 100644 GRIP/images/2019-01-09_00-57-37-058.png create mode 100644 GRIP/images/2019-01-09_02-24-46-486.jpeg create mode 100644 GRIP/images/rect.jpg create mode 100644 GRIP/images/test.jpeg create mode 100644 GRIP/vision.py diff --git a/GRIP/2019gaberoom.grip b/GRIP/2019gaberoom.grip new file mode 100644 index 0000000..7883c4f --- /dev/null +++ b/GRIP/2019gaberoom.grip @@ -0,0 +1,125 @@ + + + + + + + + + + + + 1.0791356615025363 + 74.53925305259105 + + + + + 30.575547587099685 + 123.00341850254723 + + + + + 214.02876531477455 + 255.0 + + + + + + + + false + + + + + + + 100.0 + + + 0 + + + 0 + + + 1000 + + + 0 + + + 1000 + + + + 79.73620617132391 + 100.0 + + + + 200.0 + + + 4.0 + + + 0 + + + 1000 + + + + + + + JPEG + + + 100.0 + + + 1.0 + + + false + + + + + + + + + + + + + + + + + + + + 0 + roboRIO-0-FRC.local + roboRIO-0-FRC.local + /home/lvuser + lvuser + /usr/local/frc/JRE/ + -Xmx50m -XX:-OmitStackTraceInFastThrow -XX:+HeapDumpOnOutOfMemoryError -XX:MaxNewSize=16m + + + Python + GripPipeline + false + C:\Users\gbryk\GRIP + + grip + + \ No newline at end of file diff --git a/GRIP/__pycache__/grip.cpython-37.pyc b/GRIP/__pycache__/grip.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..baca65b3ae8be9764fe90e5020750d259a34e061 GIT binary patch literal 4939 zcmb7I&u`nv6(0VOM9Y$6JGOVzU8I8+Xsb5x76DomZgy+0lT8eGoj^{TlyFPXnz2Ng zB9$Q(TP}4<&{KOV&{Gd_fgXzf2R&^s`!_6jTC|r|=mfM~i-ljuEE$#2!91TT^4**74MRqhs2p zM(z@3F!MQK<}=+cFm0FA3NNvj?9{Z>yc6^~4LQm_x%}Ih;Y7-WJk2(k&Wz{8Hkru^ zcouk(6Z9;_QLJmPUgLqT`KfK%^)1{?~ow9hG)lm= z&uV<**t=BU8 zy^a^SL4&7DlRCm)-0j8oH>P$UcmZ=7VGxHs5dmS6=ew`v;m0u-f$KYA;P=y|NdY4* z(}y|md~6!)$rPSD^)w?6X8$#kplyBx|)-{F6jf~)IcCJ+}|S*?eb=a2QhU6>UG>E zr~7V%^b-aY0pgob?=}wAF^*bZ%wOdel_FlsJW(@Kqw(}+YBiq5o1q_yw7PkJ z`+nVlQ*Yke-c3thP?xWwR!9rOP;AK5VBmPR0mD)Q*Jui}_LZq@@?&UH1q+#-(@x%> zK;jf@UMQ5XN1{?8@+OEx6BXc58|Xn%;&Py)HwFfJB;rJuxcsfLXAI0iVNgs8z@YAa zs4$2ENWSV(Sp*Pty<_f2fDm=*K9ZB@kKl>A2%Mgv3~-S-OIAv9Z@>W*AZX}ewSW9J zHeLv%)dTMq;#?vCwSSw_;f|$q4NUQZb59`jI#}Dt+cQ&@u z88zJA+I^T_-MqK4wc~6&cu>Fp*xB9s^uhL>v?62T<|wDvN@58z>}qy2mA3^deInkG z3x?OZXz(?{R@CL5p1`xJF1`~Gp1(gGAyo~2i(M#hGNGKsXhnXKQU;M zLFM?%gxn^-_+n610kL|j?U{qQ!Ii=MU?G`Lj6)KY@iY%jaq~$zSx5?MW+5qJ=Jt~^ zcIgRr4HlEdL^~wnv6?fID$`Io>X>P(8B=jxWqPu>B!jP>Ts_s^BZH-6DJe1I8c}j3 zZGtw%3+yT+)n{5VBUeVWg_XZzrI^fPWdZw_ljWqW_AV#0Sp5Q4R$i2(HjO+fKO%|z ziBfR44MILqB@uos^x_N%^5VELWr&$!Ogo%o1sUDN&1nck7~#2Nti0kHlCONJ1l60Nubs%8!2W@TRnZZBxo zc_U6|M-JKmpwk(IxNROZ<5pV6{8N5>ujl)z;qxFZ9QdIdr$x7m{|s1d#hz2iIKNu9 zmE9D(DybaR_KX}V52Z8G7mBpYa(3u0&^d%`D}#VNFK5rbCCp&Y#Eg=yya_d#pVQ)~ zur7@bmuknU)=#ygRBPF$yt}s9k|!%DWobc4m=5g=jx$v$+i+vFijFLssDKx>c}-WX ztXVm=sJ#nXwu)Mt(@(BX)f-b{cWPz%Pe$N&xZ|W{$3eR5`I4?U&Xb<&k5)>K!@`E+ z2w9m3`5#7FL5+Z4H^a;* max_width): + continue + if (h < min_height or h > max_height): + continue + area = cv2.contourArea(contour) + if (area < min_area): + continue + if (cv2.arcLength(contour, True) < min_perimeter): + continue + hull = cv2.convexHull(contour) + solid = 100 * area / cv2.contourArea(hull) + if (solid < solidity[0] or solid > solidity[1]): + continue + if (len(contour) < min_vertex_count or len(contour) > max_vertex_count): + continue + ratio = (float)(w) / h + if (ratio < min_ratio or ratio > max_ratio): + continue + output.append(contour) + return output + + @staticmethod + def __convex_hulls(input_contours): + """Computes the convex hulls of contours. + Args: + input_contours: A list of numpy.ndarray that each represent a contour. + Returns: + A list of numpy.ndarray that each represent a contour. + """ + output = [] + for contour in input_contours: + output.append(cv2.convexHull(contour)) + return output + + + diff --git a/GRIP/images/2019-01-09_00-57-29-846.jpg b/GRIP/images/2019-01-09_00-57-29-846.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f9095a3a32f099586dbd4bf52cd645095a44f9c8 GIT binary patch literal 9984 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 literal 0 HcmV?d00001 diff --git a/GRIP/images/2019-01-09_00-57-31-902.png b/GRIP/images/2019-01-09_00-57-31-902.png new file mode 100644 index 0000000000000000000000000000000000000000..352fb545c08c98c16ae3b478a683abd10e03c96c GIT binary patch literal 131072 zcmeIzT})GF7{Kv56a0Yc4ABC`DIcYA*_=YKbs~sg1*Ub;8MesKpjbCX>1rm{5u8KI zj57P7!Nmd>OJ-u6ByNj2(&_ZfdCpuQ8l9UGu;FAbS%l{70-OqaHOnp*FTL2szgO>h z-sil}^Zw51dH28WbQmY6O*R+|#?q4IYYm3yJ~9}_-I*u?hUd>V*$svXw@Q~6zp-=N zy$i+Ol*`i$7fy^7ovrnse13J)?BDME-nOE;>~u+JMd+o_mSFaQ?6Tik+Yrh=yey*Y^sREavRI3W`K|Iz5&PA@?9=Ftcy+FK zye}F%D25+gRQ^;4jK{S$e{!zAQ{Oq@S=slFJ;N4AOme0BI%0d;ic3rI?vEXgs-80U?A8>gdMxSqlTajj$sP$VQu0L?Gvql^Q^jVx zrEY#Cv`ASY+L!41lKk(KaI$TDp1wtEw$pTv^3Nbp0Y+P}`*6+76w zY;Im8blYf6mzpcK*|Tis=45ZO)a`K&=0}3Zlzk$tGqyL&7ECnW)tm#KrGuH}X->7x zpXW76*E~N4%|dLh_jv4RueiNFSR*bA#dZfXZ;G^9k!F^Jv^y^nysdomL+o&GwLPZP zYE`0r)gB2vP;Q74heRiiQwt*D4N2m5uO!l{1Xt*aFq|T`5Ui*Zi>GueE!r-5q3_(| zjzWKkj_&)Dy;k2If!8lu%YJ2EBxzUmHLbFB;OaYy}hd{ zt4Ch-o%qja>qy#@*y>8x$mD-Vd5-pX?HTo9Q(B?5M{stjiN=obT~Y0xwokld+l^Lj zhh8QRsoPsb-L~lU_RV#w)A+MdA9u8MAaXzR)*8%@Qrv2MVsmQ+7UE<=hC_I!Y3fg=ob-I6+R-4_LvZQaNcmFss98U3> zpV0^E=^sH(i2ub|`Il+BZ(7_s_Q{OLr+w)P=kilaH+}qg%ntzs5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ z1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009IL zKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ z1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009IL zKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ r1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5HS1=EgXzM literal 0 HcmV?d00001 diff --git a/GRIP/images/2019-01-09_00-57-32-926.png b/GRIP/images/2019-01-09_00-57-32-926.png new file mode 100644 index 0000000000000000000000000000000000000000..3ac160040eafcc4bc255f2f3d1da85bfed1b2f84 GIT binary patch literal 131072 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 Jf&ZSszX7*L&YS=M literal 0 HcmV?d00001 diff --git a/GRIP/images/2019-01-09_02-24-46-486.jpeg b/GRIP/images/2019-01-09_02-24-46-486.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..d574614e50b73e986fc7f520191017740889bcb2 GIT binary patch literal 212384 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

&xZ?(`|j& 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 literal 0 HcmV?d00001 diff --git a/GRIP/images/rect.jpg b/GRIP/images/rect.jpg new file mode 100644 index 0000000000000000000000000000000000000000..90c99cceff929fe010f55fe3ab61fb19c3aeb7ec GIT binary patch literal 43606 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�Zx~4>e;V+J;VeBQ}Gn{N` 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 max_width): + continue + if (h < min_height or h > max_height): + continue + area = cv2.contourArea(contour) + if (area < min_area): + continue + if (cv2.arcLength(contour, True) < min_perimeter): + continue + hull = cv2.convexHull(contour) + solid = 100 * area / cv2.contourArea(hull) + if (solid < solidity[0] or solid > solidity[1]): + continue + if (len(contour) < min_vertex_count or len(contour) > max_vertex_count): + continue + ratio = (float)(w) / h + if (ratio < min_ratio or ratio > max_ratio): + continue + output.append(contour) + + return output +def getAngleX(center): + center = center - 1280/2 + return math.atan(2*center*math.tan((60 * math.pi / 180 )/2)/1280) * 180 / math.pi; +def getAngleY(center): + center = center - 720/2 + return math.atan(2*center*math.tan((camera_fov_y * math.pi / 180 )/2)/720) * 180 / math.pi * -1; +def getDistance(angle): + return (35 / math.tan(angle* math.pi / 180)) +def process(img): + rgb_threshold_red = [0.0, 68.0] + rgb_threshold_green = [92, 255.0] + rgb_threshold_blue = [0.0, 92] + + + + rgb_threshold_output = None + + + + + + + """ + Runs the pipeline and sets all outputs to new values. + """ + # Step HSL_Threshold0: + rgb_threshold_input = img + (rgb_threshold_output) = rgb_threshold(rgb_threshold_input, rgb_threshold_red, rgb_threshold_green, rgb_threshold_blue) + + find_contours_input = rgb_threshold_output + find_contours_external_only = False + + find_contours_output = None + + # Step Find_Contours0: + find_contours_input = rgb_threshold_output + (find_contours_output) = find_contours(find_contours_input, find_contours_external_only) + + filter_contours_contours = find_contours_output + filter_contours_min_area = 60 + filter_contours_min_perimeter = 10.0 + filter_contours_min_width = 0.0 + filter_contours_max_width = 1000.0 + filter_contours_min_height = 0.0 + filter_contours_max_height = 1000.0 + filter_contours_solidity = [0.0, 100.0] + filter_contours_max_vertices = 5000.0 + filter_contours_min_vertices = 0.0 + filter_contours_min_ratio = 0.0 + filter_contours_max_ratio = 1000.0 + + + filter_contours_output = None + + # Step Filter_Contours0: + filter_contours_contours = find_contours_output + (filter_contours_output) = filter_contours(filter_contours_contours, filter_contours_min_area, filter_contours_min_perimeter, filter_contours_min_width, filter_contours_max_width, filter_contours_min_height, filter_contours_max_height, filter_contours_solidity, filter_contours_max_vertices, filter_contours_min_vertices, filter_contours_min_ratio, filter_contours_max_ratio) + + #print(len(filter_contours_output)) + contours= filter_contours_output + output = [] + for contour in contours: + output.append(cv2.convexHull(contour)) + contours = output + #cv2.drawContours(img, contours, -1, (255,255,0), 3) + ret = 1000 + cnt = None + cnt2 = None + + im = cv2.imread('images/rect.jpg') + imgray = cv2.cvtColor(im, cv2.COLOR_BGR2GRAY) + ret, thresh = cv2.threshold(imgray, 127, 255, 0) + im2, rectcontours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) + rect = rectcontours[0] + + cntscore = 1000 + cnt2score = 1000 + + + for i in contours: + ret = cv2.matchShapes(rect,i,1,0.0) + if(ret < cntscore): + if cnt is not None: + cnt2score = cntscore + cnt2 = cnt + cntscore = ret + cnt = i + elif(ret < cnt2score): + cnt2score = ret + cnt2 = i + + + if cnt is not None and cnt2 is not None: + + cv2.drawContours(img, [cnt], 0, (0,0,122), 3) + + cv2.drawContours(img, [cnt2], 0, (0,0,122), 3) + + x,y,w,h = cv2.boundingRect(cnt) + x2,y2,w2,h2 = cv2.boundingRect(cnt2) + if(x Date: Fri, 11 Jan 2019 11:11:49 -0600 Subject: [PATCH 052/131] added network table implementation to python --- GRIP/vision.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/GRIP/vision.py b/GRIP/vision.py index de37655..b477235 100644 --- a/GRIP/vision.py +++ b/GRIP/vision.py @@ -1,7 +1,19 @@ import cv2 as cv2 import numpy as np import math - +from networktables import NetworkTables + +# To see messages from networktables, you must setup logging +import logging + +logging.basicConfig(level=logging.DEBUG) + +ip = 10.20.22.2 +# As a client to connect to a robot +NetworkTables.initialize(ip) + +sd = NetworkTables.getTable('SmartDashboard') + centerx = 640 centery = 360 camera_height = 31 @@ -209,8 +221,9 @@ def process(img): #print(getAngleX(cx)) y_angle = getAngleY(cy) print(y_angle) + sd.putNumber("y_angle", y_angle) distance = getDistance(y_angle) - + sd.putNumber("distance", distance) print(distance) return img From faf414b7548d8fe1a5f42609beeb52e3c26726ba Mon Sep 17 00:00:00 2001 From: Gabriel Bryk Date: Tue, 15 Jan 2019 14:20:21 -0600 Subject: [PATCH 053/131] everything is wrong --- GRIP/vision.py | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/GRIP/vision.py b/GRIP/vision.py index b477235..5e9abc4 100644 --- a/GRIP/vision.py +++ b/GRIP/vision.py @@ -1,18 +1,17 @@ -import cv2 as cv2 +import cv2 import numpy as np import math -from networktables import NetworkTables +import networktables # To see messages from networktables, you must setup logging -import logging +#import logging -logging.basicConfig(level=logging.DEBUG) +#logging.basicConfig(level=logging.DEBUG) -ip = 10.20.22.2 # As a client to connect to a robot -NetworkTables.initialize(ip) +networktables.initialize(ip) -sd = NetworkTables.getTable('SmartDashboard') +sd = networktables.getTable('SmartDashboard') centerx = 640 centery = 360 @@ -50,7 +49,7 @@ def find_contours(input, external_only): else: mode = cv2.RETR_LIST method = cv2.CHAIN_APPROX_SIMPLE - im2, contours, hierarchy =cv2.findContours(input, mode=mode, method=method) + contours, hierarchy = cv2.findContours(input, mode=mode, method=method) return contours @@ -170,7 +169,7 @@ def process(img): im = cv2.imread('images/rect.jpg') imgray = cv2.cvtColor(im, cv2.COLOR_BGR2GRAY) ret, thresh = cv2.threshold(imgray, 127, 255, 0) - im2, rectcontours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) + rectcontours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) rect = rectcontours[0] cntscore = 1000 @@ -227,7 +226,7 @@ def process(img): print(distance) return img -cap = cv2.VideoCapture(1) +cap = cv2.VideoCapture(0) cap.set(cv2.CAP_PROP_AUTOFOCUS, 0) cap.set(cv2.CAP_PROP_EXPOSURE, -50) cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1280) From 63a9604d433a3f9287db8a89e0751517892ac408 Mon Sep 17 00:00:00 2001 From: Gabriel Bryk Date: Thu, 17 Jan 2019 19:28:46 -0600 Subject: [PATCH 054/131] working video stream --- GRIP/vision.py | 177 +++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 150 insertions(+), 27 deletions(-) diff --git a/GRIP/vision.py b/GRIP/vision.py index 5e9abc4..774511e 100644 --- a/GRIP/vision.py +++ b/GRIP/vision.py @@ -1,7 +1,14 @@ +#!/usr/bin/env python3 + import cv2 import numpy as np import math -import networktables +import sys +import json +import time +from networktables import NetworkTablesInstance +from cscore import CameraServer, VideoSource + # To see messages from networktables, you must setup logging #import logging @@ -9,19 +16,98 @@ #logging.basicConfig(level=logging.DEBUG) # As a client to connect to a robot -networktables.initialize(ip) +class CameraConfig: pass -sd = networktables.getTable('SmartDashboard') centerx = 640 centery = 360 -camera_height = 31 -target_bottom_height=63 +camera_height = 6 +target_bottom_height=25.5 target_height = 6 target_width = 13 camera_fov_x = 60 camera_fov_y= 40 +camera_angle = 30 + + +team = None +server = False +cameraConfigs = [] +configFile = "/boot/frc.json" + +"""Report parse error.""" +def parseError(str): + print("config error in '" + configFile + "': " + str, file=sys.stderr) + +"""Read single camera configuration.""" +def readCameraConfig(config): + cam = CameraConfig() + + # name + try: + cam.name = config["name"] + except KeyError: + parseError("could not read camera name") + return False + + # path + try: + cam.path = config["path"] + except KeyError: + parseError("camera '{}': could not read path".format(cam.name)) + return False + + cam.config = config + + cameraConfigs.append(cam) + return True + + +def readConfig(): + global team + global server + + # parse file + try: + with open(configFile, "rt") as f: + j = json.load(f) + except OSError as err: + print("could not open '{}': {}".format(configFile, err), file=sys.stderr) + return False + + # top level must be an object + if not isinstance(j, dict): + parseError("must be JSON object") + return False + + # team number + try: + team = j["team"] + except KeyError: + parseError("could not read team number") + return False + # ntmode (optional) + if "ntmode" in j: + str = j["ntmode"] + if str.lower() == "client": + server = False + elif str.lower() == "server": + server = True + else: + parseError("could not understand ntmode value '{}'".format(str)) + + # cameras + try: + cameras = j["cameras"] + except KeyError: + parseError("could not read cameras") + return False + for camera in cameras: + if not readCameraConfig(camera): + return False + + return True def rgb_threshold(input, red, green, blue): """Segment an image based on color ranges. Args: @@ -49,7 +135,7 @@ def find_contours(input, external_only): else: mode = cv2.RETR_LIST method = cv2.CHAIN_APPROX_SIMPLE - contours, hierarchy = cv2.findContours(input, mode=mode, method=method) + im2, contours, hierarchy = cv2.findContours(input, mode=mode, method=method) return contours @@ -102,7 +188,7 @@ def getAngleX(center): return math.atan(2*center*math.tan((60 * math.pi / 180 )/2)/1280) * 180 / math.pi; def getAngleY(center): center = center - 720/2 - return math.atan(2*center*math.tan((camera_fov_y * math.pi / 180 )/2)/720) * 180 / math.pi * -1; + return math.atan(2*center*math.tan((camera_fov_y * math.pi / 180 )/2)/720) * 180 / math.pi * -1 + camera_angle; def getDistance(angle): return (35 / math.tan(angle* math.pi / 180)) def process(img): @@ -169,7 +255,7 @@ def process(img): im = cv2.imread('images/rect.jpg') imgray = cv2.cvtColor(im, cv2.COLOR_BGR2GRAY) ret, thresh = cv2.threshold(imgray, 127, 255, 0) - rectcontours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) + im2, rectcontours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) rect = rectcontours[0] cntscore = 1000 @@ -219,27 +305,64 @@ def process(img): cv2.rectangle(img,(x2,y2),(x2+w2,y2+h2),(0,0,255),2) #print(getAngleX(cx)) y_angle = getAngleY(cy) - print(y_angle) + print("y_angle" +str(y_angle)) + print("x_angle" + str(getAngleX(cx))) sd.putNumber("y_angle", y_angle) + sd.putNumber("x_angle", getAngleX(cx)) + distance = getDistance(y_angle) + print("distance" + str(distance)) + sd.putNumber("distance", distance) - print(distance) + #print(distance) return img -cap = cv2.VideoCapture(0) -cap.set(cv2.CAP_PROP_AUTOFOCUS, 0) -cap.set(cv2.CAP_PROP_EXPOSURE, -50) -cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1280) -cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 720) - -while(True): - # Capture frame-by-frame - ret, frame = cap.read() - # Our operations on the frame come here - img = process(frame) - cv2.imshow('frame',img) - if cv2.waitKey(1) & 0xFF == ord('q'): - break -# When everything done, release the capture -cap.release() -cv2.destroyAllWindows() +def startCamera(config): + print("Starting camera '{}' on {}".format(config.name, config.path)) + camera = CameraServer.getInstance() \ + .startAutomaticCapture(name=config.name, path=config.path) + + camera.setConfigJson(json.dumps(config.config)) + + + + return camera +if __name__ == "__main__": + if len(sys.argv) >= 2: + configFile = sys.argv[1] + + # read configuration + if not readConfig(): + sys.exit(1) + ntinst = NetworkTablesInstance.getDefault() + if server: + print("Setting up NetworkTables server") + ntinst.startServer() + else: + print("Setting up NetworkTables client for team {}".format(team)) + ntinst.startClientTeam(team) + + sd = ntinst.getTable('SmartDashboard') + #cap = cv2.VideoCapture(0) + #cap.set(cv2.CAP_PROP_AUTOFOCUS, 0) + #cap.set(cv2.CAP_PROP_EXPOSURE, -50) + #cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1280) + #cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 720) + cameras = [] + for cameraConfig in cameraConfigs: + cameras.append(startCamera(cameraConfig)) + cam = cameras[0] + #cam.setResolution(1280, 720) + cs = CameraServer.getInstance() + cvSink = cs.getVideo(camera=cam) + processedstream = cs.putVideo("Processed",1280,720) + while(True): + + cvSink.grabFrame(img) + + processedstream.putFrame(process(img)) + + #cv2.imshow('frame',img) + + # When everything done, release the capture + cap.release() From 349279f360e77a380ed06aa385cc044a7c0e96c9 Mon Sep 17 00:00:00 2001 From: Gabriel Bryk Date: Thu, 17 Jan 2019 21:01:25 -0600 Subject: [PATCH 055/131] image stream successfully outputing processed images, but at a low framerate --- GRIP/vision.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/GRIP/vision.py b/GRIP/vision.py index 774511e..9a794f2 100644 --- a/GRIP/vision.py +++ b/GRIP/vision.py @@ -8,6 +8,7 @@ import time from networktables import NetworkTablesInstance from cscore import CameraServer, VideoSource +import cscore # To see messages from networktables, you must setup logging @@ -319,9 +320,8 @@ def process(img): def startCamera(config): print("Starting camera '{}' on {}".format(config.name, config.path)) - camera = CameraServer.getInstance() \ - .startAutomaticCapture(name=config.name, path=config.path) - + #camera = CameraServer.getInstance().startAutomaticCapture(name=config.name, path=config.path) + camera = cscore.UsbCamera(name=config.name, path=config.path) camera.setConfigJson(json.dumps(config.config)) @@ -356,11 +356,12 @@ def startCamera(config): cs = CameraServer.getInstance() cvSink = cs.getVideo(camera=cam) processedstream = cs.putVideo("Processed",1280,720) + img = np.zeros([1280,720,3],dtype=np.uint8) while(True): - - cvSink.grabFrame(img) - processedstream.putFrame(process(img)) + time, img2 = cvSink.grabFrame(img,.1) + + processedstream.putFrame(process(img2)) #cv2.imshow('frame',img) From c952dd9b45e7947b33f8c07de2f701e7b5a862cf Mon Sep 17 00:00:00 2001 From: SutterButter4 Date: Thu, 24 Jan 2019 19:43:09 -0600 Subject: [PATCH 056/131] wew vision --- GRIP/vision.py | 45 +++++++++++++++++++++++++++++---------------- 1 file changed, 29 insertions(+), 16 deletions(-) diff --git a/GRIP/vision.py b/GRIP/vision.py index 9a794f2..050a923 100644 --- a/GRIP/vision.py +++ b/GRIP/vision.py @@ -9,6 +9,7 @@ from networktables import NetworkTablesInstance from cscore import CameraServer, VideoSource import cscore +import datetime # To see messages from networktables, you must setup logging @@ -21,7 +22,7 @@ class CameraConfig: pass centerx = 640 -centery = 360 +centery = 360 camera_height = 6 target_bottom_height=25.5 target_height = 6 @@ -81,7 +82,7 @@ def readConfig(): parseError("must be JSON object") return False - # team number + # team number try: team = j["team"] except KeyError: @@ -192,18 +193,17 @@ def getAngleY(center): return math.atan(2*center*math.tan((camera_fov_y * math.pi / 180 )/2)/720) * 180 / math.pi * -1 + camera_angle; def getDistance(angle): return (35 / math.tan(angle* math.pi / 180)) -def process(img): - rgb_threshold_red = [0.0, 68.0] - rgb_threshold_green = [92, 255.0] - rgb_threshold_blue = [0.0, 92] - - - - rgb_threshold_output = None - +#code moved from process function +im = cv2.imread('images/rect.jpg') +rgb_threshold_red = [0.0, 68.0] +rgb_threshold_green = [92, 255.0] +rgb_threshold_blue = [0.0, 92] +rgb_threshold_output = None +#code moved from process function end +def process(img): """ @@ -253,7 +253,7 @@ def process(img): cnt = None cnt2 = None - im = cv2.imread('images/rect.jpg') + imgray = cv2.cvtColor(im, cv2.COLOR_BGR2GRAY) ret, thresh = cv2.threshold(imgray, 127, 255, 0) im2, rectcontours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) @@ -355,13 +355,26 @@ def startCamera(config): #cam.setResolution(1280, 720) cs = CameraServer.getInstance() cvSink = cs.getVideo(camera=cam) - processedstream = cs.putVideo("Processed",1280,720) + + rawPropertyStream = cs.putVideo("RawProperty", 1280, 720) + processedstream = cs.putVideo("Processed", 1280, 720) + img = np.zeros([1280,720,3],dtype=np.uint8) while(True): - - time, img2 = cvSink.grabFrame(img,.1) + t1 = datetime.datetime.now() + print("grabbing frame") + + time, img2 = cvSink.grabFrame(img, 1) + #rawPropertyStream.putFrame(img2) + + process(img2) + + t2 = datetime.datetime.now() + t3 = t2-t1 + print("putting frame" + str(t3.total_seconds())) + + #processedstream.putFrame(process(img2)) - processedstream.putFrame(process(img2)) #cv2.imshow('frame',img) From f33a3db0bc72f59a18b45ccb9f963c3a23c6001b Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Thu, 31 Jan 2019 14:06:03 -0600 Subject: [PATCH 057/131] vision is screwed --- GRIP/2019gaberoom.grip | 125 ------------------ GRIP/__pycache__/grip.cpython-37.pyc | Bin 4939 -> 0 bytes GRIP/camera.py | 15 --- GRIP/contourtest.py | 14 -- GRIP/grip.py | 157 ----------------------- GRIP/images/2019-01-09_00-57-29-846.jpg | Bin 9984 -> 0 bytes GRIP/images/2019-01-09_00-57-29-846.png | Bin 3265 -> 0 bytes GRIP/images/2019-01-09_00-57-30-875.png | Bin 131072 -> 0 bytes GRIP/images/2019-01-09_00-57-31-902.png | Bin 131072 -> 0 bytes GRIP/images/2019-01-09_00-57-32-926.png | Bin 131072 -> 0 bytes GRIP/images/2019-01-09_00-57-33-972.png | Bin 131072 -> 0 bytes GRIP/images/2019-01-09_00-57-35-005.png | Bin 131072 -> 0 bytes GRIP/images/2019-01-09_00-57-36-045.png | Bin 131072 -> 0 bytes GRIP/images/2019-01-09_00-57-37-058.png | Bin 131072 -> 0 bytes GRIP/images/2019-01-09_02-24-46-486.jpeg | Bin 212384 -> 0 bytes GRIP/images/rect.jpg | Bin 43606 -> 0 bytes GRIP/images/test.jpeg | Bin 205752 -> 0 bytes GRIP/vision.py | 32 ++--- src/main/java/frc/robot/Robot.java | 7 +- 19 files changed, 23 insertions(+), 327 deletions(-) delete mode 100644 GRIP/2019gaberoom.grip delete mode 100644 GRIP/__pycache__/grip.cpython-37.pyc delete mode 100644 GRIP/camera.py delete mode 100644 GRIP/contourtest.py delete mode 100644 GRIP/grip.py delete mode 100644 GRIP/images/2019-01-09_00-57-29-846.jpg delete mode 100644 GRIP/images/2019-01-09_00-57-29-846.png delete mode 100644 GRIP/images/2019-01-09_00-57-30-875.png delete mode 100644 GRIP/images/2019-01-09_00-57-31-902.png delete mode 100644 GRIP/images/2019-01-09_00-57-32-926.png delete mode 100644 GRIP/images/2019-01-09_00-57-33-972.png delete mode 100644 GRIP/images/2019-01-09_00-57-35-005.png delete mode 100644 GRIP/images/2019-01-09_00-57-36-045.png delete mode 100644 GRIP/images/2019-01-09_00-57-37-058.png delete mode 100644 GRIP/images/2019-01-09_02-24-46-486.jpeg delete mode 100644 GRIP/images/rect.jpg delete mode 100644 GRIP/images/test.jpeg diff --git a/GRIP/2019gaberoom.grip b/GRIP/2019gaberoom.grip deleted file mode 100644 index 7883c4f..0000000 --- a/GRIP/2019gaberoom.grip +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - - - - - - - 1.0791356615025363 - 74.53925305259105 - - - - - 30.575547587099685 - 123.00341850254723 - - - - - 214.02876531477455 - 255.0 - - - - - - - - false - - - - - - - 100.0 - - - 0 - - - 0 - - - 1000 - - - 0 - - - 1000 - - - - 79.73620617132391 - 100.0 - - - - 200.0 - - - 4.0 - - - 0 - - - 1000 - - - - - - - JPEG - - - 100.0 - - - 1.0 - - - false - - - - - - - - - - - - - - - - - - - - 0 - roboRIO-0-FRC.local - roboRIO-0-FRC.local - /home/lvuser - lvuser - /usr/local/frc/JRE/ - -Xmx50m -XX:-OmitStackTraceInFastThrow -XX:+HeapDumpOnOutOfMemoryError -XX:MaxNewSize=16m - - - Python - GripPipeline - false - C:\Users\gbryk\GRIP - - grip - - \ No newline at end of file diff --git a/GRIP/__pycache__/grip.cpython-37.pyc b/GRIP/__pycache__/grip.cpython-37.pyc deleted file mode 100644 index baca65b3ae8be9764fe90e5020750d259a34e061..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4939 zcmb7I&u`nv6(0VOM9Y$6JGOVzU8I8+Xsb5x76DomZgy+0lT8eGoj^{TlyFPXnz2Ng zB9$Q(TP}4<&{KOV&{Gd_fgXzf2R&^s`!_6jTC|r|=mfM~i-ljuEE$#2!91TT^4**74MRqhs2p zM(z@3F!MQK<}=+cFm0FA3NNvj?9{Z>yc6^~4LQm_x%}Ih;Y7-WJk2(k&Wz{8Hkru^ zcouk(6Z9;_QLJmPUgLqT`KfK%^)1{?~ow9hG)lm= z&uV<**t=BU8 zy^a^SL4&7DlRCm)-0j8oH>P$UcmZ=7VGxHs5dmS6=ew`v;m0u-f$KYA;P=y|NdY4* z(}y|md~6!)$rPSD^)w?6X8$#kplyBx|)-{F6jf~)IcCJ+}|S*?eb=a2QhU6>UG>E zr~7V%^b-aY0pgob?=}wAF^*bZ%wOdel_FlsJW(@Kqw(}+YBiq5o1q_yw7PkJ z`+nVlQ*Yke-c3thP?xWwR!9rOP;AK5VBmPR0mD)Q*Jui}_LZq@@?&UH1q+#-(@x%> zK;jf@UMQ5XN1{?8@+OEx6BXc58|Xn%;&Py)HwFfJB;rJuxcsfLXAI0iVNgs8z@YAa zs4$2ENWSV(Sp*Pty<_f2fDm=*K9ZB@kKl>A2%Mgv3~-S-OIAv9Z@>W*AZX}ewSW9J zHeLv%)dTMq;#?vCwSSw_;f|$q4NUQZb59`jI#}Dt+cQ&@u z88zJA+I^T_-MqK4wc~6&cu>Fp*xB9s^uhL>v?62T<|wDvN@58z>}qy2mA3^deInkG z3x?OZXz(?{R@CL5p1`xJF1`~Gp1(gGAyo~2i(M#hGNGKsXhnXKQU;M zLFM?%gxn^-_+n610kL|j?U{qQ!Ii=MU?G`Lj6)KY@iY%jaq~$zSx5?MW+5qJ=Jt~^ zcIgRr4HlEdL^~wnv6?fID$`Io>X>P(8B=jxWqPu>B!jP>Ts_s^BZH-6DJe1I8c}j3 zZGtw%3+yT+)n{5VBUeVWg_XZzrI^fPWdZw_ljWqW_AV#0Sp5Q4R$i2(HjO+fKO%|z ziBfR44MILqB@uos^x_N%^5VELWr&$!Ogo%o1sUDN&1nck7~#2Nti0kHlCONJ1l60Nubs%8!2W@TRnZZBxo zc_U6|M-JKmpwk(IxNROZ<5pV6{8N5>ujl)z;qxFZ9QdIdr$x7m{|s1d#hz2iIKNu9 zmE9D(DybaR_KX}V52Z8G7mBpYa(3u0&^d%`D}#VNFK5rbCCp&Y#Eg=yya_d#pVQ)~ zur7@bmuknU)=#ygRBPF$yt}s9k|!%DWobc4m=5g=jx$v$+i+vFijFLssDKx>c}-WX ztXVm=sJ#nXwu)Mt(@(BX)f-b{cWPz%Pe$N&xZ|W{$3eR5`I4?U&Xb<&k5)>K!@`E+ z2w9m3`5#7FL5+Z4H^a;* max_width): - continue - if (h < min_height or h > max_height): - continue - area = cv2.contourArea(contour) - if (area < min_area): - continue - if (cv2.arcLength(contour, True) < min_perimeter): - continue - hull = cv2.convexHull(contour) - solid = 100 * area / cv2.contourArea(hull) - if (solid < solidity[0] or solid > solidity[1]): - continue - if (len(contour) < min_vertex_count or len(contour) > max_vertex_count): - continue - ratio = (float)(w) / h - if (ratio < min_ratio or ratio > max_ratio): - continue - output.append(contour) - return output - - @staticmethod - def __convex_hulls(input_contours): - """Computes the convex hulls of contours. - Args: - input_contours: A list of numpy.ndarray that each represent a contour. - Returns: - A list of numpy.ndarray that each represent a contour. - """ - output = [] - for contour in input_contours: - output.append(cv2.convexHull(contour)) - return output - - - diff --git a/GRIP/images/2019-01-09_00-57-29-846.jpg b/GRIP/images/2019-01-09_00-57-29-846.jpg deleted file mode 100644 index f9095a3a32f099586dbd4bf52cd645095a44f9c8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9984 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 diff --git a/GRIP/images/2019-01-09_00-57-31-902.png b/GRIP/images/2019-01-09_00-57-31-902.png deleted file mode 100644 index 352fb545c08c98c16ae3b478a683abd10e03c96c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 131072 zcmeIzT})GF7{Kv56a0Yc4ABC`DIcYA*_=YKbs~sg1*Ub;8MesKpjbCX>1rm{5u8KI zj57P7!Nmd>OJ-u6ByNj2(&_ZfdCpuQ8l9UGu;FAbS%l{70-OqaHOnp*FTL2szgO>h z-sil}^Zw51dH28WbQmY6O*R+|#?q4IYYm3yJ~9}_-I*u?hUd>V*$svXw@Q~6zp-=N zy$i+Ol*`i$7fy^7ovrnse13J)?BDME-nOE;>~u+JMd+o_mSFaQ?6Tik+Yrh=yey*Y^sREavRI3W`K|Iz5&PA@?9=Ftcy+FK zye}F%D25+gRQ^;4jK{S$e{!zAQ{Oq@S=slFJ;N4AOme0BI%0d;ic3rI?vEXgs-80U?A8>gdMxSqlTajj$sP$VQu0L?Gvql^Q^jVx zrEY#Cv`ASY+L!41lKk(KaI$TDp1wtEw$pTv^3Nbp0Y+P}`*6+76w zY;Im8blYf6mzpcK*|Tis=45ZO)a`K&=0}3Zlzk$tGqyL&7ECnW)tm#KrGuH}X->7x zpXW76*E~N4%|dLh_jv4RueiNFSR*bA#dZfXZ;G^9k!F^Jv^y^nysdomL+o&GwLPZP zYE`0r)gB2vP;Q74heRiiQwt*D4N2m5uO!l{1Xt*aFq|T`5Ui*Zi>GueE!r-5q3_(| zjzWKkj_&)Dy;k2If!8lu%YJ2EBxzUmHLbFB;OaYy}hd{ zt4Ch-o%qja>qy#@*y>8x$mD-Vd5-pX?HTo9Q(B?5M{stjiN=obT~Y0xwokld+l^Lj zhh8QRsoPsb-L~lU_RV#w)A+MdA9u8MAaXzR)*8%@Qrv2MVsmQ+7UE<=hC_I!Y3fg=ob-I6+R-4_LvZQaNcmFss98U3> zpV0^E=^sH(i2ub|`Il+BZ(7_s_Q{OLr+w)P=kilaH+}qg%ntzs5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ z1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009IL zKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ z1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009IL zKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ r1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5HS1=EgXzM diff --git a/GRIP/images/2019-01-09_00-57-32-926.png b/GRIP/images/2019-01-09_00-57-32-926.png deleted file mode 100644 index 3ac160040eafcc4bc255f2f3d1da85bfed1b2f84..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 131072 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 Jf&ZSszX7*L&YS=M diff --git a/GRIP/images/2019-01-09_02-24-46-486.jpeg b/GRIP/images/2019-01-09_02-24-46-486.jpeg deleted file mode 100644 index d574614e50b73e986fc7f520191017740889bcb2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 212384 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

&xZ?(`|j& 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 diff --git a/GRIP/images/rect.jpg b/GRIP/images/rect.jpg deleted file mode 100644 index 90c99cceff929fe010f55fe3ab61fb19c3aeb7ec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 43606 zcmeI4eNYr-9LIml-m%9C9LH-f=E;kJXyb^M$V7+QAv&XhR%FdYl0ftiN|^61XoBG= zVP@Jtq!?KL5Wb-`0d|mze>7+>pgC~71S(C4cpiASPkZXvuro4LG=uPc?w*<3yWO4r zJ^R_u{(jHw9BW|B==1si(iIZP<8@o*N z$c5va@B58c^Umg~Qt@iRRS=wA<2KGsqtR*vLF=K_j&qlr;O43GaQAe6cJ9QvxpOP| z?XD3t&Ncp7W7VYBsJ(=JJQqYRdXCp~tcDEov8v^WoI%}hoC~i~yUK^89Vf4F+)F-u zo_CQCR;^OWYj2W&CzW399XNfCt53pmA!wCvL{8xWP4L|E(|$|pyF+FqXKr!R`UgDr z_!Er}chcW|FKhMtYu2t? zzx9J{xp~_^%-{X-o=^6Ex^Mqy2a6AVQBr#N%dd_cJ$C#=#mQ6Od~dF){o%~nb9EOk z{`B)Nzcw^pvb40ewg2AHdG*?jo}0b5tha4_{m!^J;_rp^ATmW`tM{A)VfiYbpokoe@7%%z<)__(XDsRVOU|s<`iIQ4OuFF=?QUd43vA23 zitIsPf5&x++<8tudAy#CB#E5|^C=7+V*m!g02lxRU;qq&0WbgtzyKHk17H9QfB`T7 z2EYIq00UqE41fVJ00zJS7ytuc01SWuFz_fcPkJbQp{oO5My|cqemATX(glP?+i!&%n_5DY~hS* zGjfYOvW&J^yN{);tDx)3tUoFOic)X(Zg_IPxM5Yu?h{u_3Mz{)KP7`Ww8W#pt9U75AsmX0aZU z7>SaEBp@oKs3D2ryl;+zeL)hC1SByEF693+1A!zU2}lBx7<3*4l7J*22}lBx7|v<9 zF|aSpNkAF{q=8HVnFKNkNMV2!l=B;q1SA1TKoXF|7$^~x7y5r$M!5lL43Gvg31kvV zp+FLl1SEmXV$i2NAqhwVl7J*23FYJ*mLL8|JjxA}8z?uBISj}gl){80APGnUl7J*o zUJP1ZKoXDyBmqf463P@B%MYJ}P>v1C4U`+mB#=oUlRzecOhS2g#4<7o<=qj>L(iD- zoCGq90htBLjiFyWV?{KO1SA1Tp!^uL{D34N356soMRP+{N>TspjBJB#Wp9BLS1e7a zy)%_j{rQc=$eedb>@kU6S@D9kkC86fu~+PDuO!i8zF_PNDzI$`=sL=1{xjY3-`;vo zC}ecb&pxL<#&EgA9=*f5j8XAk8^d`2OOHv|)j z8AaXJX^m;pt~Z(mX?%1rqupWhM&+B&8+$XG$k=VUYOoh3)jZ|PIdI4rh*hncYb%~{&nZxv$KEf?Ad3|Yxm51&->YD|9}RafR>Afj*I5+06_TPI2ry| zY{383XlUu^85o(ESy;3rOc>p~Z1GlK69^(~DS0=F_ z9;Mi<5@vDzhF)Iy^buIuEjW&am5(0?5|FqqDJ2b2QB_md(A2tf*TB%o7z(qpMj&l$ z?d;t>JiWYqP`)9dVc`*xQ4gQRCnP2%r=()Darm4Uxq11oh^3^m@`_4wV^ecWYg>Cq zXJ7xo;Lz~MC}n1LZvOp;j|+?I8=G6y?VZoNd&eiI-@gC&d3OHa|8UU&=>GRD`(I%H z4=%2MT(tD`bo5OB!$m_I@o%T&qGu3QWaQSfWO5C-&$uyiUR*@xv7lU~bc}}3T%LNr0 zzq+^UTqX2DX&r)d>o|`bK-rcHU~8xptMD4ld~q1iy~1o(6A61RJ5vss!9%cCn7M5- z0;ZHk#T$U^n$HWfz6J7Y8vJrJ5TGCgEA5@X;pW#L!a_;9o?|j(O9E=>rs1E{3)1}C zwR{~Re*P;ytKxGTdW!9Fc87ke$FCBwsty%Hg?r3+D)LKkfi^J?3h8?Kw->jbjaqf-)-2pSQI5X@V&4qbglzg&U6zY^E>WNX zWnH%;uX8ynO$Z){TAv~Pt#d57plnhS$^NwwLo#}&@%J1R zbSDpKnIRU8(UI05^9or}JMZ-s{De%Wv$Kl}Kenc(ldgG6>uIX&c0eUPs8=-~&tdNu zI1Bzxy--|}N&eo|^`*6F9!tHRv44)@VO`JKe54RDFutFt90&IB-(-A!W%wy~w>mM> z?a~dSW6+=JhK!A6y&$g>BVgRep426x*{U6T7ah^#t^SkgxzI2EaB+r(%Ra}A^=$2h zJpuHE2d(-5&oxfv3Y~C?c$^ah-;~_Qzdw-5UZXK zkUPl{qQ(!nLN<5b4O?4Ti{5Ze8CZ0lDm?kcI?-2U6QGoCC)E;w-1p8H^s>v~?NqIt zO~wAmg%u59lVrhUEv-Q_oeB8>s9uPjZ?g{1{2!$UA)iwCt(~TCzCo^Dmz?l&7h$kN zfC|ESBZP5TnPd0E|4jS^2vv87c&M1dy|6zP*X86!V_tFQoZZYFs{U1q6dgh&_XKEM zw4aq6RSi4S=lfhhUwsj9N|V(=mbxqUOJgk>as%b4kw5bETABC35l~!};rzgb+F43f zB-`La=W_p$C{#MsdD{@>{>;DYl?=3vgMTN&qJ#@=SNwoi*ENme<6hqsH{eRPt}?Ui z?-t^bvK%Byn%;Ld3N5s2?|Ve8Iw@0d^8geOmzXtyRh= z-xzRi7l=753o&=4BkJyCIDrPsr+CWU!*|yG_QsHFxvZKPvStE_TY+Q}r49Wx7f%Be zDUTJx|qI?9kurL^DUtw9mMd z%Y}T14v#Un{mIWfk@~0o!fBmYx7#KV33Y=WQ1u|gLeugav`HzH9C_QL^7NXKn-Nc# zpUgjP7#?yGAG!uUj!4qxeZ29N!&i&Y2KUvXXFTz-8cpBs%!V3Yx?p2Bm&OeRAoBS% z^(}PYKC6@EDNiD=@B1PhGYQM6g*J^L((J1eK3v&;v5MQW*kX31CzAKUgxiBhHY}XZvv%j(aa_|cDCq7rJ0;G3FogCYR;|I)>Svl7GhG%k z0aJhwGw9(OqUCYpR9M`fOiQ3C00kS)n2UydaNJdYh`9J+^ZsWJf6iW&9G;5Fv0*uh zXS9`+QMtF@HFWkOVikl$K9KSGTvBeGUg~tTZ;h0_a~Qwjef_TO=%{cvyuezT@lD!- z>(=Ksc#&Aybx6&_w0s^SPeELv?>uT2XI=Z@t8_5QM^nwEoC!9+Yh9@=TaL`RO7@56 zWT1aM$XD4RZ5KCXqe{=4HFH&D!hJ4=rFl}QTZ~d%86V()Fbf*XUoDd%7|xbGt?+br zcb@|P>K2FaPuwGS&*gg;;6_gyN0=>)oyBEghvI0VQopQryO02(+uW{xqmq;^i+1Mw ze!dYe#6vg*D@Oz-EyzFK`h;C`4H8uQ5Nx*DpkK6}JhtBJ7xz)f)=%lxIphx8{RLQc zIrF;&`zuu}9r~pNvNNwlWD6V*J+=EaIqCX6Z!*39n7Cgh)fWV;*8)_6o45Q<>u`&uqGT@BGXvmsx~aVtnUtE;CK&at&3piIxay zpRX*w-YW~*ma?aPG z>xw%(0Aaag9nABm{pEl|{C;;wvrp&$e`wOfZ_7fSMgUGo>3{Oyu|96zA73(Vxhh>jFZCEi(Ppki4^yY? z-!+}$$1U~LM#c=;xUcq#C^EY{brqo3)`w^@LKa`byhFtHI8C`@Xzu5MLgF&|8Ina4 z*Q~=o3rd>ZC->ncrjiG&s#vt|3HfSSi@kkh&y5oX&r&hqS*V<~ZOMcd7Jp;4W6WNm zSPn{gRB3pO`9N|iEHIM1Rh;=r%f+RF6^P{*Dja6g-UNZ@i(XpEZJOAL6*17nlh;Y~ z2a6#mQW}89iV%Flpt(GQNiqLunG-g4Qrt_Hh$2~Mz zPkxBw?Yhh8w$mNPAsr#7TthT#zxPfXZ0#EdZR!$h3`48>2w&XD5HiVbat~Hu6Hiv@ zkdU5(cfK&Q{tYA}9*0olW_*iD_cxu^GtFc8^j$RpOq{f3 zskIEFyXU!M+-+U8wNe)j8W9hdKbUCgv#%9C>d0wSXZ*2)Nmziua_^NT6-`?AhCHYU zr}ZHdRW7c-xIbNI?+0bwyH$TGCoq%#-|{DR{90hsz=@LB zklD{r!P|0u6?;LWleRf^Hl~Uolk*!K4;iyeJT8cI5{%TF^^BJTE*w;Ai~)no8GZ# z?P?CJ!;II10?SBxT9lixkb5Lpw%QM<3EsZJpv7qx38fIE^;DgCNl1%sq5zy^ zwNU5L0w)l^s^C|jOH2~YN~NVIbZl7qtP#deqg9hUpCE6Qt@jT|tC;GXESV9Wn@ZTR zOqeq5B=obDTzDmQz^zZ7 zuFuLN52cM3}YU~!7M!9T`DW>RwA=tW@XIL11v=3{>p@mhn@5*wwV_a}l z;1G0mQ$FQ!>)Fh7__Y+pM7nzxr5MLki>@UDT$p=zB$7S|9b@^L5;?Sw3;CAG2M_;D zI==h)LIRd?(YC7eTshVE;Eg+UqJ8yB7_YQCoUpZPp09PMuoos&pY1$(Y<5%ffdo>; zj;Ay$bKz!i4>jhWO489Jul*S5Rl(i?N(0#s;)NB@i(Q%6dn%^b9f0%%cix9muqr?a zqp>DUGMG_ga)yy(KgJle$umRpFdYPHhzsf$Z+vFfuGjp0`DRzF4J$DBWG3AnRq@ET zp@hCzQYlP!^ZL?kp5%kkFt1wG2ddY}GtXPL;FZqG*n-q2(-ezNhxXq&U&p|U+G891 z{lArm7FFNpJxq#jnA*x5WF0v&;oDg7Mv7Q^t&bW zYXq?HLSN|?`c0oZi;Fh)otX=DQJ-W@r7B_grzk5963B=L=TSL@*C!d5euaeieqY0H z%>+OfZfrH)%2ZbE%iC(pA|juMi{Da&os2KXs`U4yqRuJ=xxUD4o zh&#Nqj?&fIxJKZF5xk#IPc1(9VeKo5>y0_{B8Hj3;jgwMv_q4QQNDL$wxmaegJOr* z_uhpm)S5lNA!iSV_k%ZY8e$evZ|uP5(qpS>KdtlD+|bg_HO3v38ja!0T6msaDXZ+6 z!nHz;6}6Wuglwp$oKE@g%oZ8j=ttKO;;X0l6bvR@#Zq$Ob@-utZ8*{0#YPew`go}Ko&W`rSn z6YVsx-ZTQA|IK=4&o*|TY@Q!wgqI*yA`FpEZ@n=?LUAx`6-Am}EuvzS_gLE@;bnvM zp0*gekXNctCZ7Xh6O^E#G1pYkRcLz(C56|1)$jz4N(}~Ek)%h>xyFE#ip{sS2<72* zW(3bL(ogNpjc;7bK32w<-i_3qhr+l9+uT=%ECyqMCvJO6dXt*EvKPvr_kBF9(eD>; zTYzk7p_-CkPm~mN0yG)l44;vFpEeXz%;o024ZT?P%dvw$-2>?pM1${04|kjiTn+yV z=zsC=h1b|p3@-=|w`+oA?)G!Wp1BgDw*bFV76m%b9)@0XNQp0pD3Ec!diDgDg6y(F z9_o~tvkzft=XtG8O7 zInAq%6M5_2Je1*8*AGd6%#}FF`vwt__vymZ&%LekMjcj7p$QYndZ=1p2myYewqW#&CZnZd5o;B})Wr47@c{3BBvC(BMs3 z_685FX)Kd685t@)Csjz7!wF=Pvtm;F>rV-TArvJ1%&YEk;FDA!IXj?q{igHymIyz&>MWWB--?qO00G62Y6!?AaV>d1YQ;nlm{>f zZn-3hp!17fmpIm+gr#e3NG^f1Qd}Pwpq~MZ!{6NY;{lVgG{44*P^0Mp(ak4@J0^_rLV{i#-UoZCn-TC-pgzxBM~x@2y-KI@ zbNTGI3hL~ubRq{QXX;C_0e!>UGVNDlZug2rKMRx;M}E*piVm0v#0$$lLTvTWAC7_n zD@{d@f(?H2Tg+@V$$!X+yG0?}8)q%ovlAM^Y(xzKThG!b;vNuZN%b9B@7bzQxr#wT z5nN-E6FL4X#={~NS2g-DG&y_;Y88*}DMgqm`Ew1PFGF3yf@iHQULu zfj+89#tVE~2Ra|jS(9Xbb=No-IF4$<`21BqDVv!2Hv{1w+$Df21<0^;dt+?gzj=;! z5W!@cF+TdN$OsKOJ)ps-G3=S~tg$nIFZ#1%ZcFlho&|2h8%Eg+93pP;^Na7rsik@$@m^@kB!V^qT+g9A-?5C=TXN#9Z`Zn$%I(by3b$@9SLd}hGec~8Rq|anx%IFY@QU11c zyV@(A__($TFc16DVXt;bbnuVHv^n}WMURzh|H z>8sQm5(yi4ecd_tvDII-&=^lPmPLBc{F$p`(Ljd0)_Fj|%{9+M?d9csmT;be8jBRQ zh$HBqYrEJK_aX+-6VTm8c8n(QCTrY~p(~bAsQ5L33O#Bv2qg$2ER_x=yhNIG#2Ae@ zN*hf3Mfijv^}VX!B4;0k&pQ~Jo;eDrNu^k6S|vRQ(H^PLS9n+r4JfK<=?L~JaEoBEDdy3g%t!qZH@ zSWdz*`Myd)spvMD#%;@PY@=z|x!dX5YJwEkvV(S-Smx#Y9rnDNhF92?Iv7qzC!>0I zz-L!pJ~=Y-LU^Q&QkEI6^TNp)=Qg6&nF;`UEMW4%m#_PcjW03EwPsM;J`QCpbV?-D zu}GbxfO2H2|Ka7;hMZf6!tXZ&Mxd&H|T0TVA$UgFzu3rG+s_HAsMUBP@YorL3#uPx#v;nFCUsm1v?U;iqJQIw8NV3fao8DHt^Jsu)>hG-Uo z@O4sI#+~zcYev`*rk3SDpL?u&`>moMKp~3Jg+=t(Y}J*%E}Kp19Ox z^4{SUC(vpfNv{!K#J!|Z0<|`v0)oGTY_%HKC!j~;a zVWpnhs>Wue?p0-#`cGz_Otk&_JUXaW!?&N3LC1a$fmcF;a5!%m7r{Q5`#-q}X znc&%+C1Ksm$;Di9H9vI<*{V}S&RtrwaDyVcQcA9=38JY4@2}`#-cK7-Y1nXedzj%X zRhK@gIb(&IZjrqD?h1gEHlO%5eD%-j)m9hSQiGeV!d=t-*wz<<){1rtf|o|vc@smd zsYio3Z1L7vHZgZyYMF<&S(!(sRyBIRe!5X>_A358U%Z4?nDi`3YY&b_J!-ZlF|oBo zn3dM<=La0{vR`9a844@y@HU&nKS-2fyKMqFo~Csk;y(q+NS46)Dr+^^8utP=cqHJmLC_ z#;qg>ylJ}AveHLivAIrqqT?ostljr%(~)DzW2P+Sm7_i_cSU(5Yq(jp1EpUi6VG*1IiS@w0feAuiQvAfr_Yl!+WYOm>&Q7z)?d0c{i+jBEWM~c zS;UeWZ>ETe8xHEd1=aiuII8_^ex+aY2`y$~HOtneH&ZZoQ6pFjQ!BEznyEfm>eh zwthwA2dNPLt!N8zMd`oD`fPz$0#Ww`VRz$1Qa|3#q`#fVI(YGNFhx?+EsT~d)}X6J zescVQGBtLR0az;TM90tuuN>b^D~olDoHMz8N2~h5Tht^oXc-oZt;(#*08IF*1cDt{ z#>aaS<(fV1?Ak@1#g6R8eRR(-A`p$_D$OiW3qv+_artFbh6&aPjIUIc)C&^JJ|OytnO(omDmymYS&C1j-#sswy-YcVlGP?^@kWine;)_1 z-4S^fNcp{i*SQxg6d+sMt0&W5eTPm1oM=7ul1Z`%QRRNaAzxam!=QI4U3ay;lI+Vv zozOC|4c0Hkn&-pR()J5ceM)7s1jGgvjxB^%l$OBYO=xJX7tVe1TUTq=OTVS(afvf(k- znM-=^Cj<=FXGNR$?~%sKy<4#qlWobVhPaC!A)&0e4tnqG--mvN!k5|ax$K!;q%93| zE~5}}XP&GxB&13H13Ue~{h3bx?8G{If@7fBm5S0WqQ*4Ae!;3r0M+-t6XQh$FQQfm zt##|BOas#`NvYbpN@0J#QY}$jyCZpYI?r~dV zDvJS46}!mRQ?_KgLcQ*Y1a7|DaYnwsbI-z#uk?T7QqgGn3%InG^CA37!gYh9_oxz= zUfPk&QTai^J|=DmpUfosa`lQ&xB$NNhy9xZ)MM9hv0wf*1D0cf!KrulvC{Z?+@*e$ z?qGd`BvbFfUx4TRxXysqB9WsvDdb3gWTx?q z-H8c%hp%*pDI!6jk&1#gcerazX5a5>Q}JfIC9L`JZ+6u-|)XV zU@rt!X_FlIkFPlF(bd;gMhveSj(*p~KX19JJqxn)@+zb*S8+=YcDDUPKK{M&sjD|r zPidvuYYf_@ToNMKD==8OIziRvtPgCqhiYl0BavcmD`(MfNYM2!^Z&JqFLq`TrKEqc z;Am9Qu43qiiZ3ctXOz4&jR$gV`@b@ym9u6SyTgvNH_8W_^T+JwCQe{bg{7rI zzts9FKXGQq%#4WWJr)Z}`zoe?iB@M;{|@Ueuz>VvQPdo?7fM zzq^iXQ?c@wd87$RRolVLmA>0Kn)v;FzrH`JjMAXo7!|zKmdB=;5FV8a;cfK~8*99g zt1qfCopgH+ZY6Z;uyml;;5TO~k3bB$QJ~jv2P!n_(A+fRM`2e-1N;-d*Wi8xWP;Qd z8=(Qy)NvGbBCkR6uxDWMGa`dogmq{^-h*|v(XsXO5`>F`A0m!&pi&aq85!BUB{H;J z^||8k($Z#lNDv;tqIp`l?eWtRX_Ps{VqOxB(SG?1(V-l8^yA_ zYp*1Fjc&?@7b)B`y4TKnWjsAz&*Vi0qKAqA0XaeHTycghA_3`1z8s#^e{kctnPbPAVu^np!zoWStC2D(Vy>yYx zv7Elg!!Fe`Av3@}{%i5TA)Qhq9&D6TrW6wkq`Mhx{A+-awcLO8Pl|9>^@7Ro;^2nv zkm~R@E||Vn?!{p4c!qdkE4Cdug#O$Wb)ff+)SmvWqxPY+&zA8*-j8C17>kQ;`k~w6 z;8+5Jf|I5w6ohq%lS_NB2nlf;qDUoGG<<$)Qqbg9wD| z^aLg9$9e`djcib_MwQZie(Xy930az!-}VDGctNJ6T{2?a__M}#E4^t5D_)NoTKZ|5 zk|+%oA3N!8oP_C|eQb(>QaJJgfPt00mZ9X}_n{S*Kf+wfCnSAw=U$~df~{0l=02IV zMz5oE1YBj;OxikuYH6tG-?dNWnF&uXD?D7y>C(L0YP`h?relTeCkqh+C<)72LWf|k z%!R9pfrfLnDpB*fRqNxWysR(T>z4;6s56KV;exP4{{`H*ZOla%$jWH9C1FBVbN};HhkaK| zr>*WUz~#$-)t%aH!Tk>&$crs#&rm9+FTL@5>56Mm#F|kpY+`>i{26=7=5gl4+ZFZx zznsD#-q9qh^ys+=-0%&>b5~rzb08i%c91FUCbOYDzJMe`e3P2$w5+M-{6g~As*!xo~b25UVtH&sl(3J(WgF!>#ZO3R* zgqIO=d6?BM@;u5dSm|X}mYwgobAdol%YV3nJXQ)f-a7-hBR zIrQbU!BujZm&cdHG7Z4Da?|jS~@Eq!+&OX zSg+ed5G7`>a5YmbcYa!BQ-i~HLkyMePo*_V7eAS_g8H$T3=2k_f<^EG9ct8_(#jtY z)cmY3W~S963n+zgeRlKGq&i1x_zC(60&qNwaYHN#D2NAhBigV7LLRST&}PglEkjW7 zrjVj5YZo3TACce{Dx%BI#we@s5@6dV9s{T#8ZBC9hy8AhAnDhsH~k356sy8A(GQ(Z z@Me*!Ez`T!jxWm1LSCqVzeww6|LlN2nOF^ah6$AFoexQELfUif2Ro+N`hj^zFZH-5 z>N7K=DR(@Cw$l4~d0vSC3#Z?piD*s1kQ@yVJzeuo$u8!KW->+S?oy9LA+Sh86b;*I z650WKV~W^7(Rf3IRi|kOAxz|B$C@i2av&vBddW7l|pSRq+*T z#f$9cTr_t1nyju~OdxVVaA>fBhP71-_JJ1v1X1G=^4yL&uQ{4P@zhmQRqSk6gFQkYMsw2E0)_$%Do!Vx*T%c$Z`23dlRmc5Ll{8jB3(k&*Ib`pQ8( zB&@k>zfF$5QF0bHTBG{lsp?hWwRmal^?P&_ybGFQsD>5PyxCa~>|6+Y`onIvw&aGt z4eQpM(EPeZB+ zDVz*!l3zKLx>9)mQ$6a~3S`{{RPF5lAj2xoncFam*`dj+X}C+H=P~Cg-$Dre4E8cy zUx#Y$R=y{V!Y$)xb52OQUbS^TgPnnRRl(-s0u9*Ztl4sVoG(mh*O0(d@UQ#;znI?K zxczXqQ~vD7bm{cr%7)TmqCT(|utJwUUd#He=N!iwX*D9bHpX1DWSh^Ad3>5nsYkf+ zU;z59EAhM*hAd!OgC|LmeTr&n!5jzEDdrL(6b$pXkRJ&v^1>yBkYw(id{;I z3IEbSu1xb*QOq}|cFpT8TW9_ylgZD^?Vokj3oIxI#_4_Lxv4P35vk3s=$y3HrKgh= zFmnmx9_v1Z^e5|`n<*yJQ=yvRgUzdP3wS|RnKhv+qa1>P3_$j{f8S$)I~pQnTUJ$w zwsylj`upRbu*p&qCI6@Uc>XrEv$Lr&2$|Nf4{0uBu)z{B>yVHixLy4qEPe@##&3qd z-kz`Xln9+FmVd(k+3)b}f}(7yUi!>?eNsXAE;lkd1BAmPg&!(5(?STvEZW+?p8xQ0 zFdyH4H}WK$zTRbAF*fG16_yzY`p;mWTa~*OfuqI|9-lnz%sUlKyxs31nBVy5FfVe&Oj2W2YK=y%k5sv3Cx2Yaho&c!{7r#q zLglEbRY_7tmQ7M)_aqFM3k2Z$emgV(rm^ z>9mdYTn&X7Z}Q-^{)%xXdm`V=pb$p!q)7%iX@4ErOEx(=9k9@JFz5M_Geg&tcxnmd z|H|2C&~8VA?9WqYWM?!(U!E1NkYmW}A4=aU+ zc&zDbN&Xj}e^#vqAXa#2XLf42nNnxKbT?#<;40_nm>&`DE7wH*d6YCDV?3O_>4dty z1oAHWIyuD5G>HOYb(0BAF5X$=;;^%~US7X+pNH{#-?ddQ@lO}jwCZ@ZJb3q+n-VAc zgB*$6;;OA__sAaOzDqswcDXTtHTJfbn&NS{x57#n*_iF!ZlihCifB82QJ5X^60Ogk z-+w()`~ALRQ;w)Un(&9&)g68X+f3v@O-DDH9a>ovfhr}WSx3CWM@daeq1GG~C}UOm zPjvEI>VOj@iD}6RPj9*Bxqku8f0XT*@fQv%jpbun6AwTRBapRqvprN?d^wm)}dKF@G5v5IzRra^u+t@tqj6!^8=NdM^Y1# z)2fv_{TojQP3-CyJzM6hJ$YG2eyuB*`+)+%mREgAnP; z!@!A&Dbt_4>=^uUEfYFIM<*G`B&n?{ua#YB>nhINVNz7;fujNk4SA~cUv0-tkL9C7 zUUYeV{Nk!$fw_94+8<=}aST5+QDg0?S?PQ*7=r4~pFW2@c_+}bdPAFyJb1llDWQ)K zU1DrIe{c{R#UdW^&q7I^Mg%~o4kQDqJnct;$^QMc++xRLV*X>IzdzofHuNkqZ>Y0B zjbwOu=PdX=)LNDN&)uO+Pth^*>Nu#!d$3q!B7b%=|1akZCz4j&9A?2*hR~mI4S-%Z(SDdS~>JMJ?)l}O= zjB)Au7T~g*aFRZ6TARYtd=~`}J!Ztv&0GlFGC(Qe3wX2IdgFI~_dc$}_onYsBlKYK zxUDC`l284W2Cm)0`J+tJrE1X6oj3(+ZkmxjW38M|ycaZKfGpK7#tXPc;sn>FQw}VIX@h6MMtzRt$^X7U`W&5P_DU=jWW*zzId1Mw_&oh8|Gz9zFGn>(#p@AME;dkpyt zsKylI2s{9GA@XN~jbgS*%zdjFujuwmKSl)f5l&-kl+P@`y88LNBy;FgPrntjsEi6R zWY})4Njc<*W(J5{X~_o473Xq3{8pW(a~U-vprQRSIRt;D0U4$dSl|r=1S_#@ir0kB z7V&4nRLEMvsg~*AaQ55K7IlG$fYb2k$~ON)Qv8rn{3k)GV6{94t18+8{^W_FP8-H)P|~tpBfR!fvIhGfWvct z1f1ut(VTqHelSGvs6(abUs!M$qDHVL<7*W~Db2Fn93hY$ zPc&=JPwFN~!MnGz8y&}1n>u&DN2PGmHV#><%l3GtwNWmQ>y4?ib;OAK?53t1d;s&& zC(>sa8u!w(%d=hUV0uXh-gsk+dLm&@&H1rnJYsdCr5yJVZ;*}F2#R@0pp6<0I%XOK zE~~t-(3#otL?p6&q3m2&eGcB-0soi%{x4ur%22t818<|1onM12yH=H$GKoVCnGV5C zDftBMY@4_*3YGSS=7CZZmi~H%!SgWrcL*Lqi>DK+*Xt-h-~E?D#JF?^H3?yAp?#T# zw!>Wz0PqQm&=u>_RzqQ*F_(t)jnVW{q59toGFk1k_q|uH8c_tdE43|;b=31ib7qWA z?qxBsjHbqLNrj9;1HFQhB} zQ2H}T9?|@%h4%$UY%i~86~lSkE85X zUYk7(sd4*{JfHdZ(#^aH2~2&<`6`N-ZPpseoY)U{k7_j@%=mS_!%`pH4x>mcqdknw>vC&-&Ou9lCVV(opldM`AIb>1^$7^3S-4!2aV(A?+dyo;C-+a4YQWfSk-PW-3x|=mhgS`fycK7o^1-XW5+Otul>)NoVF)Efmv*X*-b zGQ6h?W?F_K2a1DtLhHLoA_U6+3MZcHc`_TVNYom_L+_bO6rH!jG;U&RN!jF5y z{*!5M$Kf_>W^w2SqGwaX0_?%yUEkp62Rm=*0ty%qf=bH8p~9q&*1p88`z}@enB=$- zby@I!-k+&B!}+5)mhJTb<9t)4E1fmrJlVdat_Y{X4ZB*M)RRn58tZmxhIA5MS$Bf|f>@mA*TMsSkU-?iRMgDWG! zp^OF1twmc2*R>e4(PDf#G5V})b{Bu{*t{0u(MDXu`N&RPmFrb2T-y9_+s`n?1qN3S zww1D~{#J%nt|E_-h*CCH2XN#tY&kQ`Tpo$5+N4nyEHlhELd|Pe3r}ti{|7QxE#Kqo z>4+-M7-*c1F%)N7;`J;OmO*{AihRB{trz~f^DtdY>0`eRy!+JJYB+VY{PX z{gglPXb$s!144g);=SqTiu)PBpe&+T{dj(F&qRb-(eA}#2dXoCQu^bqz^X2gVaEPo3^)_VWDz@UZ{Nm@)JDsVZ>cIwyXj<<*Ex^HEsbd`H8w03MpP3?P_go?En2Z zjqDQCY&KTxMEZyG`3ZzfMzN+B7wND`KAC&YRhl3Vay4ZXU2OhH5cRuYb^95PCxg-X zNo1R;!)3DmtLPn}N$C4F(}lG_a;$$orl%5HBV}6*k+LX$tLg}kDkDCN2P9c~Vg6Mwf0AfKIg+S~tbQP{ewpW&s;R`wZTxE>24ew(s-#5hM+^F}sXV z_}tmr-$n&Q*-=&H!HU+DmPobC^AQKV8B4N)GAs;ricLI|5@bRfhFTQZ`gQzRjRZNQ zlKB2J>(8gm?g18HA}X@5V|z-E-BOyo8mppqkM5VxZGQP9|JFTNY4-Mzmo(%jUQpgB zW^;h4*%aG5MMPQZ;-g#FqHQ1gE;y>e_N1o0GSWdHPM!QzrVu``(BNH7Bjc!sue}3x zqqVbLJfj_fDZ7@YM)z#Ij6iu4gUV56!sTYEA*O5L$zJ@nJi1U}J_XwV>f0Mja!{?z z=Y7^?Fwi$F&CEHH9E+DiLsj#Wf8iatFG1qtTVCv$#m5H_$Z+X-$0xnmi`YynuhYM# zd?G}%=O4Jy9ci9{95zV|qfY|v~Sy0SCHG#!$4 zD5|=q_%vYGE8o|BdbcXMjWfPUTei_hUSmskek6R4-r}N%SoH z5p%P0#}gaBrNHmfrXB`3dk658pjgj6G)u^Xd<87(2;69<;1dfiqqX-%neVcR&Kjxn zqOGs?<6U8qLPC&-wl|dABpvYD@5zc`Bo=$=1GgO!2f0~mE3~}f+`MR4WS~x$ZKIV- zI8OH6S`JA5vNDV-*|Y4DZ|&+|vzhslWo~5L)}N?TZ-$$c)th9GZ(!aAQPf{^y?11_ zRYa$4(Cv9FNUED(bEGKqSQ0g-zteRo$YFTZw8TWvMs$U)u(^4u#fDwujy^vI0UMYE zOi=7Qh~ehcTL8Q+t3H1c^vjkSv66SoJ3AuMlx8KE=u>vJhY}M|7sfOiG|7B?fukp>yVXt zn&r23l_yJi<3Mj&P%9NF5{Hyaml6`k70R6?5HQW_57NGK_oW+s%bdi>ttj04h9aN8 zR}1p!3gJ}aiXPHfjnn;!K1p>=NL@OdFs8ng<$S5Bb*;Tp-%n5wy$|iY)RnHoJQT)c+BBw-VMO^*&(0w||?#rQvjCAOG%Xt&7BmgB7%S25pCC76-8z2?^hMN< zWWV+hidvIso4q$%T9(H1gUFQms6Wofrpj*-!MEi=lD&`(h^%wxtML*!*0NF35E_e{ zp5n-PCETHa3a#D(H9`w+e&zKyUnrA%Vw2pF8Tt43eBh*Uclooe7mU%d!>SsupA#Jp zYP&6Sjd>*%VJ)F)OQ|$EN5(|$2=M1>o0J5k?YlO! zwo@sV>BYcrHr_UY(=WN7BH4M>b4@v(`Cp&sqiEVr9h|{*65UF%!yq4-3JtV=axk*u z5-cK=)rbXJihwo=&65zoj!tm;lC=(s7SEof8|b8SJwczbJULq>2HZ$w3!~<=SESVK zo%>tY#89pFtufx~GGLeyS~&JwsmUGFx@_xm<-V#XWb9L(wxvnXHF221l2Bhj{zZJ5>a?d1qp>jtE)p1$d4TmeaAj1$>;1)1& z=Q`HumBDpDjt9M|<;!QR3aOU#f0vk2L+4DK*hgHqswLF)Wu(m1e(kDG0+jCpRHCrXmzMD?8O&v7K4adTI5IBy6-!JNE((_W9n z%Ta7zXvnvdyN}`86l7`D*9}`3)W+XINhu=Z(q<(b_lw|71Y7L|A!|u7Js_GU{=BCo zweG`XLQ_kn-@hF_W__kKv80QSb3b!>QC&_92`QU5qBW)tGX1JmTRPL^E4I~M%1-zW zitzK>`eS5SbP4#cpJ}Lc{byy7&D9b; z6xzp*hl=Ake}RN)OxAWjSy4P%7qw8MVe_J^ z!dwEG6D^)7qSjdCN$1SX@DnP4k$by z+6D^y{wV(QZp){c+rQAPI)&;UkN`3?QRTkC`VzgIzf|S2O#({J%!1RO()Y+`Zr_nt z8jkT(c25ol&+bL(>raSJvR~Wx<{-o^ZM}K^uO8WlGsolMv}O>`P)>1T8w)`0L0^8# zEc4^t?Cw7@a}Um{$C%!>R+z3kGN!t6{r5Q1dvI1I++{!%;mj(xT;c2vp|N8VG20|1 zr>)ub`N!cVCL&b%wQ+bw_HGIsjGt&^M>Yxv1)ABPXd(3Gg1wLC9qrDd;{rD?65-LA zrtWlWmH(~r_IRz?&Q3THnY`gJj$6_>ZytpNN~thPxUQI!ob3f(bfsi< zUebb`o)|eMW@!KUz1@SJZGUCc*Kk}Jyqz|EPBJ%yXVicizCX^*SkX}zj()gMP_>0f zF%DasCCIhMIH)Cxr#+vei+G;+KB2c>wUxzW&@_!^}$RM|YJEzX`Q{C=ZycZXLDY zCT8KKCMwBry&1~naR;)VEb?|9W(=dK2HB>M3q!E4;D|E*DWt}&8;>e($;d&^1{OUV zzWrUl{jZE+$qbD*-J^)*cnoBnlEbOLwJWJ;hdG&Lg^VL|SV|0d)buv9E;VmSglAk} zPCG2?X5y8&{2MvjXp_XL2a8G!0=Z_vcjjmM$(;A|-juXv^>F5h7LNhBVKtgbKW}hO z2JAd>Jd00O+EYos(xc~z6)1hG)l&Ro@2*<2rA1-Fsa4JGpLHs4C&&I|Ef5^T5>Ioh zO0gEfPv>j{%E&0}h0`+CC7FVd@5G3cJxJBN|jwaP&5qs<_v zxLKGaWbIO+vG|QK44i8BUIK49t?6c@yrc#;q;qA6P<-n2BZTf%=KP24^*2XbKS?7E zJ?BAz%Yh#ihx*?Xqxjr4HNO`f0Wf=m1OLqNNZh?vnC^UCA{I!pE7oLIYo#h;nT~P>o zLdN|li;%BVo`lsJ9`tQ!1;^@i`TRaxdEds8wUo{fmMovuCFv`=ncvathRa297QK2n zCvkPR(6Z)nvr>-*1%}>-Kmc-+EMl8U$8k^P{&`oeRiL4xP?f7jX+7w~s`uf%iYzoR zT|6<-U{k3qyNRf4?R4sK2LIFt{WQ5;iI05aUsDW1+uP$f?c&+SIGB-5AuD2gKJc7@ z)XeG^cW-+k8p>cpQqeB#@~Sw8UEI-W@7@wNTl+YFm_p$?4)?o+sI!g-yc8gJL@b_c?U&}^Qh6AXd6HjCX?!^G*@Kf%_5=$9rBgL*-adk$LR|`lvJB3-Uxgt3%(_e*C zvI48}fY_F!NUv6>+K9E{^<29jDjldF-EsF&vQU1$JEJTP7&(IlKe7xvp+mZKZ%Iy* zde(r3?MP8*?5)+cRJby4$w0$4nSz+~r%6}8YU(suyyC{66#`eAU&d`>`8)+~YR((JAl%)0*^$O)61rJt72azi z@LjYbZSbT0R?frcx^=aTats*n&wncd#fP1vtsS20Tzj0hmQHsgAgfsuwIiF7Tgy4v z1G;gRI###X@Ljsb+&asFiwENnRF$7W^YfFM#x?!@&@=k`yhe7I!-~R=#1L*t7Y<4H zeCQ*F!F4HGZ+yNhdGIBih}2c{3*u?`&ZO}*aZ`vTSZK`H=mw!1keZ>NF{>`Z2y&IB zimFPAWc*+q8e)9G*Y&sZ5u2xi^7C!kN)+sVp@0>WpC&}Q;us5;zrV_~J|8YgpI{6;>lsy;h#{!DR?>ZP)s^ zVDS8hh*<7RD8rSNi8a$%u#i!;B;Vip!!&Mqldw@=L3p7p5G2bUFH40UPRETt1^**n zqM7~8D|_sgROkG3WVXO&0bK&%dXFpfFlG7eAGaT3qLmIOM`M8m41Brk45oV0E23*`DXD7>`!qLHk8E zSj*aFs(L?pi)O{x@m|8wQQs9h+F-wy%xfk7Qk#Pd{f0ng4R)OMngD>0j3`&YlRw6l z-KOpX3p4{|eJvifi7M2*r3t~R>K_8(GVO`pn*^AFd1|61Kj%pJq>H`lR!{js| zC-8qKAK?EW)UX+!oDY+vu`uYvbGTmI+o?pOD}yXzfq^|2Ys$b!m;H8Ws=g_D<7G-n z{Uxp@W#szFE1PKC>>F7C^Vm%?gt@vN9YdBw)o2IWls(iQCNINQ46SxE8Yf zAM2}DI=10{q<7*0(2 zm3veb?A-!c?K+I{H3fRpEB)eAo1ODvgFp1C9c#wIee$hWcEZ^h09qlLOCcd(FjfDv z2)}57(lxcT#e4PwcS?l;B*J8m8)lF^3$3OzVJkR1hEL|n1fU5oZ! zO8+}24fW=1`KH!Hcb+LGlb35xN0({>tYaDG*8H;?_;Ee~m%hr@t(csGncCBh~o>9R#wm{PA+$iu2dJYg`%4Oa+b^J>y@epyvM_VIC;9XC`t z+MkakL`rdLLJeRpf4517@A!}L+q`ES{j2-vIzvK*y zsVWVjMdmFXlC@iCVbAYuvCd~f^0=73p;(TF1&X^j_9^OSMEm2u zDyn5!c;^$O*fVO{Unp3g{vyA-mR_hn&mD1#a*iuog`n{_eQZdNxsyROi+rkWe!nIvW-7!TzQ+eZpy?AU{ziA z*5y{s8`BpW3t6?aBZ!9b?LaX<72wvdgw-CoF0>y&!cqB|%LEyL%B7M$^QM2f2)+yX zWUGZ;GO~({&T01p?FeTmDO9aJQ1p0&4K8+i84m*~C_c0#s`vYdXpxzU?Z-AB0KA+q zN!jMU5+kkWmg%~Kah+0vzBx$)A^ZCr9r|&ypAGJSOv_b{V`97qvywe4uQc$lipqin zyePRUBY@8V4y<|GQY(K(q5lKez1)BCg5DsnyJ@RSs(Vl;p-FDB{<4Gp)ux{9(*265 zox;ENf?A_Qp?XGSg-?_o77CLL9$|7#Ptr!pHFJsaI7iPsF$Fk z+w5k;J2zqcDIKw5s(Kr#ypz-a&)tyvYl*6Z@8}z*g4{iNm3s8~LgFStko68r0Y>gG zBTwe(JW^yFo>DWjV1|SWL<329$+1jBmI{NbRrl;m$xw*kQHLV|-qBk=QiyBy5ZG8y zyQp_{+4hqC%8A3quLrjuZoG4lpXa7eYR;`Q<!fx>v>-WnN?D-u7E4I3#7wK0=s7X{EHuvd+IW&Bmw;2 z^WM&kWvkvSYJW%eD`TRU=M_bOrXVXS#p#IkIY(I)b}i`giFmp|FS!2M*;0}jea*5Q zsNu*OwD7IV*sQ=pF%z~Bc{mgg+>rsLxB_i^q@~kN zW+MzLjmq<^rk0g3Ep2E?6s~Jam_Qrh1v(g(j-l)ov!TUn)(-JTor-@cU#C5%vGJ?_BDB-eQMQ6-XSC ztl7dIVy-oF@fsGWp>uorw;UPuyyX$Hp_-cV)Ilw)sZj>BB@f>?YxhU?`77P7YU{pG zH06~gwR?JpD?080y*c@IJvf1KbluJkVNo{8NO;SnM%h8U_MtdmJ?lr;iZu+^)1U;k zoOa%G83~w+x&&+XKTDHYXKKx!pLiLXD~SpD{g3iYgWwSwnH0m^IGe9j1XR1Crp;b zztQOb@bl@ZHla;vtRW90kV-u}H2qwgTzl(E{n+ZqPRCg8(Wr#wTK|I@$J-_T)bXdS zLf58G_RyYjBm5yhTEx7%nCM=+=p7dw9&wmS=w1mr5IB&^{v=|_$9Oxmp(TeNQi!g@G*XT3`U6dcX#-YI3PYA;La}t4^}-FJUps!# zW!$^xG3nN^5)z4ppeq7nB4X$g%??1xwXAI|cn0Z166a`Q_ar-leV1tr+(&DjXt{qC zH(RHCExZ{y097h@lt#;sF=|dj!4TEBQLE|_ z=|?{DrF2eNNg(XD=Ht=m=Oh|woHwLSjkY~x%zY#Kt7 zHRcwp$gqLGU$Bv+Xi(M8Mc)R+;cM8@`;|{JRM!m6OCorRx192r6(N z6Q(VsH-0-*QB4OHuUn;ji6&b6=f^Y8BTUbq20td%IDXCtl(e?ByOjtgXJRzRS3ogp z^&TIp=@f%hifKR8}@ytDD~{+5ky z(}IZh%pVhuw%n=~P{w~4J%Kp=h1cTIj%FX)SCan+@N4ZVITThGQEX6^RiGs8F;g!a z1BUtCyw7m$u^raC_lB~CA@K@;agvvfeWF_s60nTeuzlHtD-`ck~)*a`h8T#$W84rb-za{y?;X#3ZdS26q zv%k-(^8MPJZYXVjL1)R{idh*$D6{F@_46{9Yb?kMhL)H+{g)KBoApv&9>XZ4OW4e2 z+uZfI3?LGaMcX0H#pn-=$}ta{t=r|BS%hTpPV{OB2G{6-2lIa{svW-cdVSL>h{`zR zTYk4^sOe^^2w;fHDoGQorhsPvLe=xo~57i--Q02r)yff%~CLO=3qdB3@h7n-lD z+?Uai9lvy{yG-SE*HXSbotbR1m+Mfd@9TW^yIao|QL~Ja9@uAFNHHB<#KyIrS)Vy~ z%$HhOofWE#XNN`A)goA>Ua6>&3Lf)3_`TdEkV6lW;lbHoc0^tUW zWIv66u8TQjCun(W@FjN$JugFqD?((UT;ljYB)=nV46?H--kGXf{&D9+Qv^Q*TIF@s z&wjWVD%wV7lXduc8d{I0Ag%DU&f}zDM7b{&Cxw7xpAVp|%S^1x4UkYxBlldifDtw`z>H9?zjOp z4&@cVh_K`xq^(ULiB+ceiN?Q#O9;yF#-!CFl2z;pjjT6!w!3PD>v7W(SnW0Mm^th| zLG7?5GFD7Y24h(+z}}20yWC%(OFOy1FbhTPZ+QD&d_ae+W(8~( z;TP8A-6ILQ{ z6OakU|D2LO5dN$`yO$SbsL$et)a;fr@+l|ekFiJ!$uMG=va*-FnL@OfKb38EKI^wI zuSxtAOKo7YuDIVKMd4N9riJO>RGIjrratNiTMWf(d?VgWvC7BEBa}M#Wjh*H&kBd7 zuD=+;Ta%3qmCT_oCzhFny6XIX4j$%*=hqNFL(E`lJ977Idau zQ$VT{pGTNx6;ArLN9b=|o7xjxkr<;VFnO(Z$~&}swQKx8UGqe?IqQ2hi;C6 zXXtK!q(XPR;h*{wlcB2upWj1!;|dFY&M3~wUXkOh8gA)!(Q|q-_eln{f75nY16O&c zOO?W2Xlt)>9VR1*6|xn9vdwbEepqyu-R3KKt|%|pGt^@+yz=#(Akr!%=k}SOOu%dJ z4!g}zzB)JAG16l=w%tQMHI$Yt9MdIV&T zjSwv^G{04#dgZx{7|s(!Yl&xO0ls~)%_5eucGVx|iTC7WeoNmi8NdP%Z4Rmloe+Tn zwz9gb5{=ngJ(+3t!}MwZ8wOvIzR-p68$C@xD}t0P1xLQf8jFajpVUsj@N;oF^aFPi z!7{!>CiriEuLc^!32vCmDx&W~g!nt)`i5N3e+QFQRSOHzqyPf-^NN$A0lZ*sYjP68 zj))E6U~>B16kz|JL8d(9<69<0faIRMW;0!HV(7&F9l;yTt+liCtfyP_`1|K^DQdi5 zhSI^vm({=|d+o;dD>sbl1i$qR9V8+I?`WT3RkM43xfwoh$^fxX9k8K033^Crs&P3P$JP7jV>BM(MiV%y z{$hREOes{K1K0H79Kg7(B@7LtN`pb-NkXTtG`P zQ3}*rDAm~(Xh}?@sHvzo17MRvlhx)Gd5HxVPt8e2@pgS77i|*{ikgQ&9t?M4BQbEH zM3XZWemiJZmk%ei?H+(P^4QE%G!J1n#(ua~)nv^M7y@zAS*i{Jcc0=9tcQm=4uAYQ zC;cXmuWYRgeFzH8h!CwRt!JhDX$~y}IoRg6P+GXGG5fO6NEoFgMb6ml9@WY}45n}~ z`xV+Wx0hA%XD95xAN$G;LeOQZfguXxk<<4+f05z&s{=AWF5g(-fT$X80gwf?>|*kV zuJgn0OfW3}A@TNDOLRg}crj&|q+&N+tAXVjJ@Zw*l}4o(&(nn*bX5R{t~Z$+8I=vj zm^rw$Ls)A~N|KjFsK|O&DaG6ST9gWDD(=!E>ObRPh5PnO#0=>Lfl1k*_JND2CF9%s zV9K$7$bL?h_KJVmJ3`zohA)CzJQf^Dd`0G;C#ohyd8_D~_{4|BL7FPz8AmUM^Lm2S zc*o@?wn8rTi3x)Y6+*fprp$ffZoz?(?B6gwUY0yu0L828Lu*>DN7tM6x4SCi)j(kp zm=MD}N~+~QlPqDmABToyK#%H(2=#if-0;d0PJS69u_YXy(ghy|RN==We>i^Vzx+}&cm61YK$19Zg@8pEMK$vbb#HK#P;MtQySn1v$8-UkL z2i;D5==&VR-MekQB*QcZ`_e?vtzfa-Farijz+T5oJUsu>w7Pcg0VK&#NYTCiGa7u~ z@Cq7F{T_suEmoe3k;j69%s0>w<+7^XB?4&uG_Wf`_Di(mpW6!rK>^mU@zc(q7^A3s zDZ`<;It*=oERd@|>J7tXioJqGHkrk`W^m&=sR%yq$bH70qjJ5>lF`J1^vqV>1|Bs5 zl{yu(CJ)z{ZqK0Au4pH^5_P{h%@rRLo6wX?VC0~`8RU~HuSsVAM<@GAz=PG^Ail33 zh&Js#*IP6o!iX<(iDZkiTNyAYV)pC$ve$3NOCe3e0cjQ&w64_~hCSoO`p;#3_lXTY zaenvq4u9AbqsN{;zl^w`n9AphkKE%T&04&I2_-XyTg>>OR5=?%p*K+=idGa;p1~wa zlp$%{i16g@--1*LPqe(F#5G~8P#QxF(=jvM{UfVMj+3BTL360Bhy!OKPaQPdsdi9N zt%#|!fa3%JyOFX`uFNOul{peSANTuC2Ry>s!FgLA@rVTLt_KmVM!Q#0%c^#^O0v>8 zQNoJ>CTV<+qz(J5aEBE)l`>5Eg;3`0-}?>gKvX zZ_8?cpr}x!P%(#qYlY}hTCM9#8WiRENOZBr=qJ9lPP$QUxO(fg;x(bbBIlwZ#nH~D zJwSN2!si9IYwtwE)yGKpk&~kO-`rudC}|Zgs9lIzq6(Adcc}4m|28QIhqF)oJw&0rUw*Z4g(lZI&sM!G?Jbj)lbX^wt~E5L zMA`JUU@H<|F)8~QqG(Z*&^mwXMBMfc|BWcdRU`&mxZQvI>nEPe<>)(q`|BkdJTKjD z%#7ZQ?VX6)O#~=*Tk0XX0zYNGmMDl!e+Vjk=w*~u2QVjI>hLhi^OtoxcO%yieOb4) zHuSr}yz*nU2r~s&`nA}W9XbSnzgVv9W?RqmP8wW_!urET6hN8h;*4Pb!rM~1TLBR z$tgz?Z$=d(8Cz8{PYmG^~NPzR| zRH8b1HZ$-v?WAq$9B+C*Zfj7C20g?;By}uUAeG@2X=G#@DK!Kqf}>i6*5BNQS2?X8 z-0=d|@KIL|WD1uK#&}4g2!(<$9AV&3_y+#d9MnU4a`i^x_VetyeGbx! zT5-GqA9(tyL#pkS+rISEUSTa+q!4CSR*BN>ag2aI7oJx>@4rTdHVlThQa|e2nBb2a zuZLo{{>eN_*UuEOM{+lj)QWZ1a!r}iMQlNb9PtkQB~m>`(xbjzL_Ka^R*1K&Xu((% zv%L1E=!w(EHHUzL2j~=tjFr^k7e_9f$7Kp<{h~)RABRGlYnTskkzIfM_8;TJ+qqCQ zUcJ+fkn{q!SG@BH7*z;cSzoV@^?G8Xu{G`#$8e`V8o)xMD2G35cH zXXOUDTS4Zt!BR3&P8;{N+r=tHSVP|MN>2y#>TW@QQ&r_sQzaF~bDQmU`6JVWG{&)h zetpz6T51-Ds&$8nQ_D{1Ot(AUekZqA=F=^p7cbm!=O0A$%}4t+F6y?Um6JkQ>w*vC z`I$n@c)7+o_p4G zK)64W#J4j*iy2*)rCiiuJ9hu zIyyZyPnnX^&i3(KBh7E=D-hpy%wt<>aefde%s93ULyI2!_;{g=Z*zCCtS+qa=xGuaqG0(7_z;Fp4K8)qV7ZR9GWHkIOD~TxbU} zp`lQ(h-AujLv?;0;;aF^nwXf%W?|9k<%Vs4`iKkEF|e_^@jmS8##Gt(^bq8(_-3wd zp%KlsVHB&llSc;|?6;rAAkWM@C=1!AG-PC7zvKOycAlO|Cy5Hh7FFb7OLkZl-7q)F zfL-mXfzFe1MLE2e@dOjh^W#mCLI@bbS!WNM0J6k$0Q+aAy&{8)4i)Q)_wS@nx)8x) zzh+H;j3Mp3^d)3}jvUSMU8z7*?>)OsM<{g8zACosJx~H}FxP;p4`0}Q*ta4-wyY*o ztx{k;P)#_j)|#kUQm9#&?*O~yhqz{45qPsb(VF&VJnFi`Ku6{i;db>P_Rih1o812(?%X)~j?jWC3~1Xo zdS`FzWX7g@r`l$qP^wk_pCxY{^JB1v+zEF71GqVKVoMs!W{NK-I7prkl-qDs2Q~=c ze(JFT_MTbM>vu^kN#y^Q#B9vF(&4+l4x*+l|Y5J0% zyTdh6#Pp%RD8T8x0w zDSQyGH$i4>MGEOA+<+XXakfDi5B1sWzPW^iVu>7i59~!{+6!*9Hm0{Poa%NENQg4o z<4J9Em>Jc7VQ;?!_o!D}7M)L2_LDb<$&OxL9+A4?NwlJBNXh(!$|E#w!ao0$?(6F- zQ3=Fy^T)LWk^0}-a<1w-wXEbP8n%Uw^LH?phVwT>wNQ|ODaD}lt^66wz6oWiV1?-i z>xt8*LW4^7dGH&dozQEqaQu-eL-}FYX-7Z6e#*wUZru<0nOR~TBz19Z{7%2}eb_bG zT(!=Xp;g9*7osWh&Yf*)+*}5Gwe_PEOB|>|2b%J@e9Q`AK903IZ6zf|5r`zlVh$a#~Ty-177Co-Mi3bLGxw5GI3}VB=8IP*4_Q z6!-c|_vvHaQX#yduIKA0ZlMqcPSKy3eY4wcCH8^E4p8suho6s7WIS5vPiucX?EbE& zXt|Dz4P3RBh~x?>8F9lAqsWvdwuCEB-AX}#Hy{Y0C172b2WJ%JZZ|7Y^Xx2hD@{QdEb!BvZ; zt@bwYhk8plaTDj|0&cx_>#%7olZ{eB*Od-a@Fab$@smdllBu*EWGV6Q91_Fjo=!i37t`=DgeIIPvzY|vmtlohVhfrJZ*Omtq=2tBkO5^63OI^~ z@ik8!wNjL;q|=^vBz*E7e5;WPJr7SD6urJ8KFHZKBm-Ew027NDvlzV4^rJj~w=X>v zZUZ7yI*4PV-9K;DGjb1LikY0Ya(vlwMIW10T7q#Z9zwbMp)B%_K=~?yP1=v&V+8du zU|b!qDITO&S9aKwhEcex8qYbxkbrsgfr@^mjV1JW(=-sj|CW#`hb-T$L#uIKlqLD} z6Xz-OE2=<$Hh5{%r&d^XJ!}!PL&TI4Hn&%ujxqyfs%P%VRyPaGJFfawL-6|dc*T5w z40iI3actgDZO3^2oao^cR0;rH@r#h`4YX&A@pw{Upcd@TM=Ors-Pzj_B0sWVH;cVh z92muSkDNC$?UBnT&MrDqQB+xR9;H0bj98{0Jz4kDGNjXPACdEd@zrG=3W>_&mHA!? zF?!|`Xu2jKl$-4pxyy4kH8vL11+w4`AFkv4%)O_72#+pjtdD$nVOuCRsWc<=w64;o zHQy3xZ2`q*B2I&gSL6#^ZW@4c)UHr!hYX+9e*|h@pCYt;G*LK%Oekedc?3Khby-%3 zA1(mDl^s)a%7#q>k3>RQ*jLVkmxzXGKPlJ=L-impLn}|F-A~f=sdR`@#qh+cUhUI$fL-A?J|@tUQX0|-_#p>> z+NlZzdD64VNP=7=1~{n0Hx}JBmF*`E7I*2Z;vq5&P0^!~R>^!mXj?)66s}plB^x&O zFImp-sW-tf=->|jw9Fx-iuiwq&c&bU?~mhizYDo7*D{yQCFXvqq>N35F?S;5ew%wq z?nxtNqnNwJ-0yegIt)`Tm22)w$fc5Rm)~#y!{>26=e*yq*YnAVuxYSZt((@>IxN7F zNsnRz$_`#lSpO*gDfzeJj&|ffj$`3+#Zgd{_3(#0%jOhlzlVKt$(>=vp0Y%?+!Tx{ z`=^#{3zqp-Ox4ru!R9+SML;v)e*i7YfTdbyd6uBK-HBBB*Z(q8s+Roza~bI9N>0Qj zuNnz144wx91G0E+BvR7Gx8nZAjY_q;Gz?E)$hcrXSK2jSXWmw3c7-LoNb!zo?SvxZ zhUp6-&MDkYj(#a%vDbHbpht)#)n;egnqO4G5v|bWYU!sUB-duWjY8$N7nro=?bs7R zU*0x|T*CMjnj!_a$AOr7?*lMNtnSJZ0oQ7S>N+DQcY|H(a88jNVupY1V^?$+X@hU^(KQ95}b(Q%nYoh=a+^XDcK?P5Bn1G&3 zj@CU8T72W+Q8j0y%wgAHVlNZcO?>CI0Ld??R@cki1{Z-}3L%+!ZYtayTJ)8tRm*bR zXsLT%Zsk{Z!%N3VlLQ=qRb1Iaa@mj5pymqgYbEOz*>_>HU_@H|o~lFiC&7K?J64UdfKJtvKQ#mUq2(eH+nlLa@~H#_r!M# z5`58ECD5iduHem8rE7H$VrhqA_+@whwz4XG!rb$92v|OA{0aP@18CYwL*3 zjf0Dkefuu(R!(cUbT%`;&oVx2vO*FkDY#B`v0mPO>?87ipI|IE} zO8}DBy>xV>)BzmVpzyU5RbQ_RAY)0SWnJpZaz>@W#c3I70X-t|UO`Z*=6R`Gf6@?d z37>u1xmW@!W^7bEQL~_`rjq`Y_2!V*d#Wi|M27iUClg&tX3SkDrgOCjTk{4QC3Dp( zafp_roL@1e@(L?^Urw(3FKCqeW7qA29*wE?uSYT!-z)7J(4DS~1s1Sq^Ysw7MFnDe zBc#J=rZSMQY2*{}>l^nn#)pDks*Q+Mif13i6(;mYl{C6tqR1!$IEn6G#|(Y*0d^N_1I;?UkZExdD6_P)t=MG3 z*uZ(yY{>MLT>XnimZkfCrwXGB)H2*Q!66WcusOF5wmk>sJW%v&F4VKBnu~4y3{&&Z zKM6HMnt&A$zFms)tcQO;c-k)_I=N+;I4uEmi={A}Nx#of9tV&JJNhTxaBeS^9m)48T9^{zq&z;o!q=F^edK6B9;|K(ra0wZzkp+N8bc82Qk|rZ#}IOe_zP!D7fpWQieh`*w*-7ee?(HlTQ|sibA6O zZ?NgtAzxXb>NJti0`oygco)gs5fz5DE+BMudGVqj%0@07PqX~G;`B=7!K3d#qom0W z9=<~5k4Pt+%?XL4JPFH(6vdB$y~>+a?=_!{L8_b*2~XIQUkn0i)B0%=o`9tl9lycrC-<{a}X74Gsw)+Tp?O?{b5` zLIE&$6X3u3yBAD&SOmWyk*FH5zE%!N5mOl@SWeB^3HliqhfW;0cNBgf?{x?_$=1Cd zf(?x1oYrFAv+^_8WB=RiND>_eF;XzakVSW;qrzxJU^7d@U^I63bg@DDt| zrxx9PL@)xbYUE8yIv59>%Yjas5$zP|&2sJ!?{k-T^pj_0(dfY45b-W!dp&+BWcBkXp`rXDU-=av`Z+Y20HODC#m zHr?P?u*}#I1(69|qv7~bpmlbpYBWHa#lirapP!nByM>Q;9|dHg@mp@G`v4kJH7qmK zX?+{jdbb&u@r5!EwnpFE)$c$mE?6U-&suTVMdxO?tAzoKjlB?(MG}KFJGWHLVx8Nt zU#JKXKblIA%94xAn-@95l6oCorz-XDeVM*}Yy$DeR!E~{;;+=l9m{}l7S8CWe}a#1 zdc?SyT`70ZRFjO%=v8{YC9ub?^LK_%M~2)0d-HD4by!PAz0sHxxlfl5#ihemOOc3D zeX~HG)^0rm4)JUS=8Ze7S8f|f^fwvxVm*_xqAC76pY29qb$;l}2ktNdw2-xW>4GgQ#{r_s${gk!6F zV96XWrL`34X$?0yo0p6##W%ibc^+`J?&{+)9p%5s$C6N?Ki6?ug1IJM<6&6636Iul ztX|`J<_>dgwMEO#^)W`dF$s)lO${%UL%;tNAi4)w?qB1BYrsoP{*8rnuxlMk~^CYhbYS&$tqT1t%UvDRH-Z zY9U{qIPSUIL6H19V7J4RbxGdUzTLr7Zdv7@Q@J*^VoR;T;gV1zkHVeCp$lrX5Hk-k zJ}^@ea8v>lYFW(dXrO#a$!BOsEIHZxmBUR)KYjF36k@uoKR0?k0`*!r#qm!Lwlo=A z4J+`^=Z_nQgktM!w{{L9Jae;u=%HTqy@J%~YE_EO5e3YUK9utOSSs!3S?+VfUd(W@ z=pjOLc~x|dA;r;@pas8@O`DqFWl{rhH=-;srb3thmMY)k*G~Rpe34hYulJ625asP> zF&W6@l7}Gx=+VW|Ri)?Xr{=pM=pQ5RiL;Y`py1KL`4W)D?iIv#)-n~59sPhBeFe@46Q#MXV6iUq zl~=E4X!f!?iW_^@yHR17=OF7|7X*&DHAlp?%Cwx-=X6n@FNzq4^IU!MV~)PHD{i@c z53v5=n~8N7RE+9I#YpJbwuy{Ra|_@4TUbLWr=}nl6b&%W@NHJb_~Vod-9~?4*|=>R zVX@$~uexc$SL6)esG&aTjxryKZOdaBMk^5yf2mur^Epw5xA6iC)+yWzuJL?ov}ooF zeT82(8>7>aeX-qmNOu(0JEKq+-TbDdl7$0)(n>6ub18sdv!*yavf0_h)=7Dz2j;^M z^Hgx%7%NM>BVOD&r`dOP$Mo0wx{0ipi&dnez^wEl?^c!q4046`C#$Zg2g8rIml8GL ze{Iy=J)i;#k>{s42YR%jUwQnim3rAuW_apmvqLOmZ6u84&wz!}78%_7<8KBzK~&k9 z6A?vE^sCu^MOB!ca@nH^X3QR!7l+jVnQ-0D@X^=0Ri!W8_9#C>kQqpa_q!QrDv8a9 zl0jbtbuGpHhsT+>;_GT}DUMVjZH}*hSU_9#u8Ta#Ske7`iZQQo1)F%sd6Y;A_6oW) zO7SfmM*j~GT^GWU(ho4!eql0wg+Sph*~$%xVtDXjLq6GC%<1mT90+-ye@Ig`{fK;f zvc1J$)BbVHjY*XSW^&=`kTS2Eq?7bkpmgrz-VnxDV>HU5lhQASo8#h4S)aJRYqIev z$V)54Xyv(Tg;e@_&_oqR0d7^-GNTdB^DBCDn?R!wJc08Vo9~~mV$eaq0F-^7fBpO_ zd9xB#TZ$bTbfvj2pe++~kTkx6z)Fd8=i2?kjyLr~n>?JTW4Sk^W?|dKj@;4U!?}#n zDScDg%#cK6gg7d!<2Ht{o+o!53mpuax zmT`J&$m>>Jq2qvTteYf;Ref}@P{K0{)}f}T|1#0_4wu%lI%AxrgW-TnC4f&m2~n@l zV_PUITqtB$)E2Fz8T^PcgKs<~3rPrsR6guDI>ZTIl-w3xhqvdqs$H~L%_w;0{4U2_ zZqI~ZtTkg{{h2VQ5ruYt?0M-vASaTv=`IKOSPu{EQmSP5kZ8~FEHKJjUDSB0HyM0C zSj~a6I#)Womp>&So*n7%+R{As!~X!BuV$_)4TOeRIX5SS%2}!nc{aLGR1q!hy8~-) zCLOhZd4Rnc_x53&T?-L(aKU}qi2#PvOSqc>d<-FQK<9>PwWS}V4&pjfL;U>vQcH$b zx$bWWT6SDQ0M}x%-&2$Q!`Z)f-dJ>zXWWwPKdve1hueBaAP}~7uLa@yKE0#4$2bU^ zh2~`$*gKD{BN~}xWEp6)K#0y@rtjGMsqModrug)X?0$$^s&n$Lj4uGYDb0U+EB5-F z^1DksPF9Nzmjger5350Lvddru!}~AWNHYH5jJ>>J^90=Bd=S{5>KT#_%yXaWCfw_k zZ!TgFtdK-RPx8PKHg!fsn@uYu+RqH9f|PtmLHU6-%l+UQ1$Jk??x6x$v~4*`-47yk zza(ep!)g-o)n-jpq$7Qb`~@iUoQCRRat8(4@>axF<`i)zvV$1tZf$FvoQT3ZYVG4_ z7b9-<6mHArJhgJLbZkWqw!`4hG2PeuKLA!*<>x=?QzMoA>s+^;vrN=Xc6fS>(#Ah> zC`GYyIql!&N14t?kU;9yhZ%syp4+A-_+c#uyNE^h&+#}jvcYu-e+D;NbAKIaU0u~C zR~iE<+)iuLKMhmRo(h!poFWfK2RXUWg8m)KY1^8I!Bn(&J9-*!cj4~*r*?ot%^=Z2 zowuVP)dL~*sx}w~&PpK7L?+e3O9Us;`$mZs+Owr7E>Uy#QaeQGVLL!(b~l&qb1c1h z4zF1P1zxF5*|5zhhf9ST)`(*tf^#6i80W2da9i-xw|^R{91tRIUePvSw3kwU>OE8Q z5vY@or`>NX;0yqNxK9eB?jZBi8YPu2fn}`yK8e+Th#4cdSmY&aI<2rw?|b?G*c}Tq^R_$2 z?#Bfbrh)n?oKIjVamnOAB^dSe_~_HoVQ`N5Y%*d%1<354o%15ysN<##Hb*`HWe9)0NHB#oadCwl#>kv)$gr5?P~j^7A6m&6AjNWlzccG*`L? zVAhUF@&Typ>#IqVX&l#<3}X9)bT$N!ThDi6)-St?5}b-iL;{>r_^H`x0Ku10U=^Al za9DMIzZ6m3pqHUnL={bYwcdiM{?gjrr4Wfl`Po)yCo&F!DuM_tDJ%v4U`vCt+Ybw( z`$s}>rR;2Mh_a|Mu0I2wy zR~XL3g3z^#Vc+uQIK9X8&9ru`wnTvwXaQ;*L)m)+SZKoaeM&BRerT}P{55~Qx5bC9 zO}iz;U0r1f?dx_TUdm3eR+7+@XY^qhF9vaaM!nBiUSZtT;7?xg!OGHlduB$NX}#2V zrnDB>mN^S;x?CMSHnu|9XJN_Yr~~qKqH2dQs*5(6>;k{z!OG|YYz z?a}vQlw!8kqh_f(seAwTD9!>fpY|TjUU#MG(Qm%$&`a5GF%uc$MaYOzch)V>5OGgW4>8?c z0|7-Nec;__`xk;Ttfo}C{e<`>cBPv%j%l`8q5IbwcKVN!uGFveZwa&H;hY<3Iyy|n z*7lILYVi7JBT@t!p%Nhr-;mI(_A3ukcAO$Vye6XPcc8IB9@JEtUnA(HBOwT|&Tsm% z5ePQBz489_H?7*C1*M0c8J2+&y!OJpSZF^?t+lFuTwX#g%h>*Dh+{y=EuI7$N)(uW zysiS7F{aXd7^r4xs~i*=`i4=joRh=VUPtnmT*$CXcLft)W~MX$(A>gT%jL(@J6 zUPc-+voU*hK#mhbr%*YCj@3eRw?OpObIf0&AQ()q0>L$fcO!sh zh7X!pJyG=K>b>ns8BDo?F2?9Mlo<2v=vABArfn7;tzYqb1fBGJSX07*aWfEfP+u1I1Uwr#NjkI+pH1+)LApzh6lF^X@rEC@U;-a%PbuhyojqDI zcDak5{~eW%KmQ7uO^j^}uQB2z=KDdWi!ghoB2(c7gpL9Kh_tE<8buUUO*I7xIIxRK zdx&+bn2wD#(59Da)+CEJgIQOyLRXUPtSwQsyTnqjdY65&?uKhzKX z&vk;O2lQB@#{u>>KC4s5qxVk&9I%;1@3ZzBhzwhBE&j?Iax5Z*245Q0tecb5m63fe z23WSt5-c2HQaR`xTeEYOy6D7`MzZPvQtDKUIp?dxEOU_I>tZy#hZvl`%U#UPNwP!R zT9R4N?@5R{QHAPsbm<`l;RnUu)hZSwmV*1l-gQciBI~^63aeI^lzVHgVLNPRYSYOb z`_H#EurgwKVj)mF85}9h3cl5QRsLt?OZ9!@)X!2%VAZ7G^Z4~AxmI@fwvE=FINQzK zXuCRe^_SgULCqy}cS^vwZ$CJcrR6rjK$1J?{nCAARS!toAk_oy_5v*}uXA%))7mg{NOxO=3x>1eyg&LEvak z_F88POidpp%tS(JVGN)eJ|lp=o61eef~zVuS4PFtKeI&zA&aylOdLAMdA_%FXTmhbI!T_YiI{-1&#$a~h2yF;qVwf5i;Tyiy?iWM3fnr^dP zYTn^R-Po83T>KeqVwL|tfK|G7-W~h2ClmQjnvzahX9ii>HTacQwP~tuzYuB`+0{u% zU&rfY4d2IhkA+O4)lWniZt>L>#;bcVW+u)&f-Bz$WpXv{N*xgRX4T62KY$HZ^vGr5 zOb4{xeNW7DPD1YCBbBu~70-2KvaoA`gUp6|T|vAQ9UW!>41fHbMYkKjv{f}rmjLGV zDQb{mhX|reSGl}(xw(@=YaVE6yL?@OPO-YMMNRTTd`9I!7?TWhFT66 zj#D{DeHQ_`Y`XHgd;0UfAoVc^TX??AYYosJ>XnlLndXeiYSqpq;zqYZn^^?TUXw=; zSbyayLh(t)pQ$096H0TiVsF6Jq$Hdvnlqo4$7v?;C3GYT6yVXR;N(l)2e?~iKUuEG zc{1*tbqjqA9RZs$z({(n+bGee?<>x|r+~6>q-9Q}f=h?OC*yJ1Fj-rnyVvAVLOTc4 za=A*Li$9T}A<6f0n?fUzA8eaR{{BI4fs5y!IJJ}hPfA^o3)FqaT+oRjQ-~-}M~0~T zdr%5PZ>PPs@CiwPrbW1+sMp9JI1V64UrbmEtKaS|k`3PP5oSO~4Ked4heUy+()mVG zg%U6lqM`kOo4#5tUW(b;dBHk2x9^MvQgju&KJ2)f1x9@CjLcp-AF@3;yi07?^dkVCRes_C+BK00t`!B?*Tl{VcT0LpG(^Yxb zEVvoWZ2>aw?R$}FJEs4WHJ}egEb`aDzDT>iz^P6)-9q0` zxNM&YXFh`6KB;J7?YS#=ho>%>F_kJ$-#nq^!-IdSNhN!OF8q7U&bST#<*vw1eT@m@YUC6E6oHws;=%qKcB2s zznqm~)p?w4e-^SKv=q*NrYJhTbQ!2PoY1Z2p2GP+6_7+ZEcXj1TTX-28M4LSpTJv# z7AHFOj$2bC)Cq3a&kUAsg+^U|sZz(3BGm~!^y2&#Af?Q}L|#rJHcSjulMoPILCdtMUiGGJQ$Kw3Q=qEa`nD1jtGXQRVw<~LULUr; z@%G|RQtZyC{wPg=-B4Nf%rfO(x@k$@QsZP|FbR!{5MkaD5t|Mh=>(^ z_}Teqie53z9v3_J@|2Ua9}<4Fo~X6urd~Ly)|%9lpwT2rQSWyKv=X(K2&iI%_+dOP#UeHD}fGLW6YC&L%I@QyK1rd=M&L)#aG%Z7C|Q z&aDNFu|_-0qpUeum0$}Tm$Rc7tJmrD1-9|Laki?p4?K>75O)HH_QWL=9L8U^kz@X9 zE+^T0sY^O_@Na#EmzVvO{V_?ibAkWMnaYwYrC9+H*};a-#A~MWF3r)($<_je#s>P^J65lj`^I{V;hjhh2L*~+I-wX!_&J<8 zUcou6bxdQR!0!#olR*(%;cLgvlsC*-)4(iuCbIi1c$b@))Rk&SU}%Q1_fI_th+KcM zowg*Z|6W$f6htH}LSed#fK8lY=COeyh@l_E5*M<*ME@!V`Ukd6Y~|Y#3T6K6fG6AwkmRV2+ zQO)lo1&aMioe$vVeee+K3FhB&#&sT&b(LxvC_ zlq0L5IkH54RbRuEVkIY3ufV5OLj7~mU*J%>IYHb-+ZhJ^o&G$Vkj81_ot-j`@jpyU zc11B#7dS_jZbShBE$z2{4AA$5o4U;Z+any6x~Vb+>VzwVx5S#k)%g2NDLYsXyiG3q3ghY2p$bIh)~`+zz;}_sF$-S< zr>ppF6qXC}a-LvA3BM;x5)r%ffCV6RtL6Q?nW7?$V~mAQA|=kv=o^abA~8F4&0~9a zSMyif2IzinFqey>`19rET${l}p(qC z{x_WoCk#@nZ?zkP9ySv6mP8!Ygs;f*`gC?KLWu>$`cFf@#}qq!_VY~Y7U|RMW|(Nl zjVS5%lMAAQS%7K9@x5rxzRJb>@2~taBI8JmI7~DR`Y=;{Z0$$G#kn{|lgAKhw{Usj zHZ<3SKT&9`|K7{zK0|bry7&Q#GnWvj?wi}B6m{u78N4{e*I)m%5#yON$-prV0m3YW z#{$47?oVoNsfEjG+xii!_0U4s9c%(mDsS9x5E6+qoyVA;>i?0ic}AHnvP;2qv|S zb+LzZ0ksMmWBb;!GGxSy2{B?X4uJQB`$XNjwR_-}mqv_1^{2lX>F zD$?JBQUpzLIB_7w`Oj9WMAw}=5z1zBn-Qqyz5B|I~=9W2axv2WeLNce&}ofJ==^*CRzS-`A>_o?D;HMX}SwBei@Ju zFUSzDme3)m`Rmi#n>QLc!|8FJMVikejjERGlpcC4Q-Ksi&@QuPlnu2>=<^#7WFc$C zIl1~NqBdx`AohfQVeA#OGbuM0pBc5PwCb8GG>NnAaxRyA!(Fmy=eP*52zH%C9o1!w zEJxJ{m`>287I$B~#sF+-V#KwBZv%DD9_rXiWRHj`NdFHo0W~3X@m>$%Q101=n9A#j zr>}`@j3!@wYvLc9DPidGBHg&l0;+mnDPB>)DU%&=!h`iRdsrA|@hq%bprs6d zLFV%Pk1p-IyVR6>wOZguRGru54ig`zSy0K@$?R|_69S8N|G7$dH}^ry}Kvn_mXZpIZo7g8OMr4-!pPYKQKcLR)n%b<2L zmIdl55Qt_n9E=CgeXs;xdx~iQAM#VLi0n<#jZV<7nzg6G4kl^eo7ltnlMdQRAL;3T zsH%8kJUFWhD$R*OEZj|dEzp?(`nNP|<$zD||11Jf9TI>2E)m_-nOMsu(L1M9jV7Tq zOKo|^Usba4IxXms5h)cp9d9mpYZZ?u^Ap1$p&>!xp(>e)Pf;-*hc`v!?_{J`4{ZkvCqTiH4^_qu2*V!*V`I#|UJTG+3CCc}_w3Sl)d zO?}C`-yGwfiqp^4v0dJdlgqX31RX61t zj{{n>>)C9TPfjLdUclD2G;#{~U=Gxs2Zo36PBLS8c@a zj%y-|+kZBNA;Z5I8B|Y=7WPGSquwp8cWa{|Ncf1pRbjcgrheGfbhR^q-n+evM5Vrw z=$AXg6RoDaMu|18di9^r&ON~)9Dt}%wi2L_=d28W@@>$ebtgZ8irX_Ab7-DONCmM1 zN;yqGz}M`sN~J`1smofF@g~@|o#O8jU1vb(DPweHm;GRqmro;7h>lj37Rsv5yAgv_ z)s+D{?)^t}f#2|gVVAI1mhbH$!-5HPABWrd_XpE?XrI+Bn-QBj^BEEf^Aqh9zE;Ux z{w>UG1!dh6M1`84YPY>i>qfPDiNYeQTk<$PrHeSWFBtdltA?;U+gx>*yd?4zZs`b( zG!-_s$o|=khv_%pggB86E`45jo1maiKVB5XwFK2D^!pQGge@AFB}|}6`a!^fI4;y)bdZ3UQ~1q3?fL*?os*%lzlcCu zS*(~N)CoVV13nX?tqT>XArW6F5nbLYj@A$1U=?rF1p;OkRe&6qeH2|eYx`LJLDt3H zlSKiSuJc3+W7jrE+2Q|s`sWB zbx7W9u9%vA+%tqWc3p74@Vp$@BUiR55jcA32w!~7gp)ud7V6mGu=x1~dy}?mm zQG1Vx@PB^HK(x|le!F`I5)-Oo>@qn7Y5tQfy7>J!U&f$l8Cw80mU1WWabY7UyK!xc zQXa}N#+)*G-+*jixU{NzJ5-(LqZO8L7tbn;IGLiSmvQK3C>0F*p z7G|<@`+oebP>a1LvJl5yQu(F26Js4}d1`AHdG5>$p=Fg(Coi`>6;`ukLx59rLabUW zE{fXJlBvqN7?LdOS^7i8Hm|bv8_gelti|0E#?;~ki#QKK0Br$QRw(BtD97f1facAM zS9(JeqXZ)@53>KY!WfIYRh@!Y#o$chQBIfLrhbC#}8@Rf4>bkO;Y1=Vn~;tF;373FcJZ$GGo;1I#OU6~K4koXF*o z#h4YvcmZW19nWK*E*Hz*?3~?&XmTIZk$Nl&a!WMP{W5iZab)Xv#?Ixi{^*6Q6mBPv zZe1}`MH+8NC4lfYeGb%P)`-`Mewy%76!zI!|EZ9mpqrqu2NBE1dmT~_B%?|lD9xzk zl>q(!Dj-XQ@qc?Y87^%$GwIF#Mc_|mXwT25R=w4~39<)Xs5(cDvi-6>SnS+fPM!wd z(NVv~G+YZhTs4vubUvobUAZG3$nc^nAbuApYM>zZ@5f25tsHciMVXoizj<<=lter# z$@w7oKR{ELH^KDf+)IOEB?6XFyt^u!UX0=D(7)v&UA1DM#y(i0k7OUBg9eOJtXctV zoB&XW?xtSVOrU<=J&NnfQVraO}_-uxz)gnUk zT4i4^y#{DuGuvJ1CHHMIr)}!G;V$46{NsM4&Uu`hp{%v9eB$-s7f(QZevuirxB4sv zJulCROHlg>^i?`D;l6kg;~Lt@ry|pP{7w+?oL-V&x+&Wz#>{=h#S5r=cYj(iP(c95 z?WVGI^Aev^jBJIi3}-JxD}Ae%PH7hizG%H;Q76|(i{y@4mT_{Em>T8I6XtS3q^?(>z@u`!11k5~Rs z*#{e#6mvc~vL|tyv>A>MxN)q~5eN*eyu9y<^ROQ2UxwB_3~u|Q2+{BpSU3sNj4oDe zbv{54Ki5@GAnXFk79JdsAMQGc*OKb5Huvetpe>T{{{WGtVA%2dsgbscx+N=L%SBtu z6Z#aClO9CIeFSOriLO6IApv6s_m@T`MPjl_2Ur{u^ew0Wl#^Ke{{S%W@W zc_a?rzsC#zT9S)u0uj*nRqD%Sf|*l>ytl=V9`S~am@2h{?vM(tL!jp`ZH)~Q9bR_u z#S3Hly*eT^2X`U!L^7J}THNASMuPQ{DV9i8>*SKT2s?8d#ML*${$@)yB&(@aU+o)o z6=QXoAGixqdo?^y$;R^>)qBzWMe~4w#0bMRxQ=w{;!Cd96FBE^me%i$T+@s0F6ka# z_ZOq|V@Em^7TK(@EQ*Dv)X8)r1pq$MY>tp=>u`Zz+NhMt;iA;y%7Rh*MzTwuJ1 z|Jm3p(81Ucl=IUzSB*+`bW|*r&noCQTv_F;x$76<-;X6SUS`(@Uk#Sc z)y`F_qY$zCaOKX@WDc|urut^={WrX_7JBf@ZkfMe+yl>2wvkA5s2pbl{awYZYMu1= z`JcPLV%#@_+5Hy1{x-YlbaX|R;#Tz&WXys!Jn!8OXJ+IS8KALK)bCDIj^1E!{>4Pe zZ%!GB<%;P3D5ZK2Z#U8Zwph#uFd!f( zoSC!BpX9ncwe{zyHUqbh#bAN&Y!aLPRH*z^xXF!S;;zkaNIeX&(gt-f!tV5{#6YS| zCL6je<8LVp7TuHwb-X@?*z6jZK*G;G*inf;n_F{&tRn=km77o4Q^!|o7MFiG&pSZy zUl#EKBw6{f)k9=4NY^Il2VtWXIpX9r@%`$RG1$-Z7b!cp5-VD+8nMEWI=iKs4?f&| z?@NRQ|@ip

|L(-8v&8Q*nnH!ErNQip{`d1`#H8gIy^K$V@^}Xg zNrra|8H<$;ZYc82$#tkr$rFN=0=}dwx4rNx=I-G)MPJBbhzmRQE*sH2@IX^D;3Hrg z0wR2GHrZRnPKa~X$~u$|Pg?4>`s|M+Al?!^M2&>*;Cr{V z*?B6eW?GEBz5x`2O?9)97@io5p194VeQU=HPh>k!|NbC1ugb~rjsLsk%SK_mvQM9x zif)ywnk@FKP!?~pJXw`{O<4C|LELC{Oy*76S$6Nh^y9>PXH9aFW2*o?&F;-wt@#nO zrdKY{ba!69zqWlRFIW|b+J2^id-Oq8P(<2GD~tD?jki$+x$`e9d~K^7Ay_HzsQjv| zPMZ@mn|EfJ@3c&-C2@={8q)***T-qTnEjQKrC05}p2g6I3s7{^?CR7i?e8WIWxv=A zPkuzT_sr-IVul`C53vF^s(o$q!z`}sm2I(8pF;&Ab$WRNW!Uaa1*UYDDdlFvIZdfGQdHIc z^UAY2oJsyL(VGd9jo%zcWjOrS>wRalM@1zSVC}9{iXx!fXECpKT6aS3?3KH|63e%# zguf4z+Z4sjV)ttsrVb9gL=;Bg`W@|UKeQ4#7A3A&MR{FPVb1&-!g+A(&2+lV$ru8w z$e64OVw`7v8K^5(Z+Ai3y;lp)1j zV@oO)h)%Pl)2`72Zcy0r$xz5^^TL&pcM$t$3BUgbc%f!{&(duhx$QZAo|v^znLhHH zv(1-Q1b&N^LEy=QNay;!vKk$;1@Z(kN`d6>I%S%shl@KfwMK*RHAtxIyMdL~0vtBC zmuiKr=n53{a+#2&{>{~mVrb-7xD4&*W@Wv$#Jf$4Y+&9tm1k+K*}1C@&Ti~(`8)UJ zG!Wn^b>~E9Tt}<2(H-ORr++W(v_^cB?aU2Q6r$}ReR0+Rm^^*?_qAcv?Oyk@1Eq8$#WP@iMsv!=F-?AZ;V0gC??(%D88x3uMwG*)8&zA z@Ur4%!L~6h@-fu#a5u~JDppu5b*0i)OgoBce?66xjlob7fx;+DiZn3yrmR2ISE1tHL~s9-q3J= z^Vy%FNCDI@bbe(We&sx{_Dr({l}OT5c#U*awfS42*-RgHVY?qTN3Jdg4-GcZ1+_8! z*)Lz(BxJ&|j059L8N+FGlF8T6effQ%-$u@Z@1m_;d%BC3w4eJ7u1ah7W_9=I>9q^p zF7X6#pzJ`|=Qiz)wN9Qe3pG>7AHXCuG;tFXDIFmN7U%zRmpe{c>PehT(|p}-+ho93 zdg}8w8V)TvAHef0dB|@`UmQ{s6>syQNA%pQ(Ur(LKkM`;tJoapcVq}A_Vtu+T;y(9 z-#6;-bz68P`#jqHYGm-Cj*a(@RL z(#BzGSuuyYLy{+Y>ag3 zui|{;zP=A725$ZIA${5DxpH_4x8$tiNf>APERL&=^Rii9pc5ymODBsVfUY36m3{c< z8_kRPrf-*>LB!Ngb|!Nl&t zvFfTyRcQKW9!B_@L=UNTjG=e z335In-LxS(hL_r^lJynCrdM6Zd!lX87tGw*9Gv`B=2sW zr|EL{wCBo;d%wb5kVt>ri>Y~1xXZjn(E2h*=0$^V*_LWmgUYoz$yc^P6HRg_V?cM{Yy`_&1dskPX&n1*loi_GmMZ_q~#}q zBSdaV^51ZxTH&yksaubs zey4nhxHl=}e}Ieo`FAfMrK0as=1`ofc1rC1RHA@=6iw%=OHAyZdsFz;>%rbSWZPOo zRQUcU4R;PW0`m6nT+EGp+wP-NZUgy*8Z_qS6ar3T0Xod7V<;7fhTt`r}YeAxAb1m8RO`vQOb=0dHcvZCtgfy!Uy*6 zag6C0gj~OJl^8FHgp} z7#(3@DdR&p=mRxSme${T^$Q%dA{B!lkqGn3De_bXzoU_`CInNn@I>k`kwZ3~w%*|@rKaz7 zNl7hL%pN+tVT?MAgy6RM<3TCQaE^~cK*}|SK#$YcYbWp2cS>A(TFy-Bd6ysYszQRB zhd)NypB=glSBV2ynFv5`4k^W>uq+1PdMT`$6l0rl|6E`QolLmkA@^-!O5vov9-o8Q zn_4pdE~JL4M1@}=PcO8V>RE*%ZG9=IJbk>QoqvtrL}bkLADJVlg1w`S*wYD#YL0%T zeg<4criIbR@ex$l(G;=AX)FK$JxIK1AkG-W)F>~(%OE3J^D`pt@^ZBp!Gh4#N;q$v zDs~nRf%$&%1oFOLtOn?Ku>lWz#p!CA3U3`0+ z1d)56P39XvmiuU7T=RPa?_#f8tL(VpNQaaXV6q;;y&1{`;!`_}{wXD}0BdUUWQ)EB z=Soq&LS~6EVANJ{8~P^B?I91J&31S0`0oQ7XEii^`h?&mi_bpgUVj3RY}?r&&;5Iw z;b>L$rGx&%MLSfHYcMxaXI-0A5~u#j*Q-(1rFv*grS5FGEYj+yANE|lu7UvjvN|re zTCcpIfomEVUHj_bed-FhgZ;=gn_{~+8nnhF2@o@s(H(J- zp}NkA6>Asrl4kl;l&@b~I_epn7&9M9i*SfsVMdw=N=Fptd4U$&14_xxRrj_N;7ExLp3~lj@zfr?P1keV-dz@l{m* zEs~Iz;I43?&3*x1Ea=1H=yS8RzluEKxdRIvhUJN&#GGUhU$iW2qq07R?>VFI{{hE9 zIKPAtEYzVTvdT_CJ4QS8Jc2Xd9qZZJ&Me|g0yn82DLGPC3c!53@wjv7#1WDzGI<&nPc-{W4;G<94r*&3Rsw_@^a9nPO4CZ;~#!iA1tNqB`dWZ z72TgRdSN<|=c!lOQj}^X%_SaJ2Jd-OZgHAUNv7Je`+V2a=gm{Wnk|fS%jC2~t9*sB zNWl%aA%+wjee8jg!yFu)JHVPAp&y*q%H`Dxuq-}R+!aFS19k%v2^hvP&OP&2(IUPD zS)E)Xs4?v!v)!^vhFpBCIx8L0KJ&_``-9~>fFm6A!6TsnasjM#`)LUQ5lW#<#)31zIQBRg z`G!X3#&Q@9=Svi)3ecT;kD4%(b*e@!L9S-x{l^>pGioX?-sN#xX6a#{ESzxFX5%F3 z^2PGCcg+jy&$3*}tEAz3pExhV-3!ckO`&WIOR`Bo%;$en7a@jsj1o!cII5R_2fRNd zjWm|cEQ$g~!bzEgY(o{?7jRI_<&JPp?Bryhq<^!NBuFEYF^%N(DBDI;%oz+7n2rGi zsKFTdnHHV7m^_3rQpf;Oa5irtfg@j@lSN)`72R|`F2LvD^yK{q@?sYNp za*D*)X;WO);X1Q%c2SgNMm1vPHq(-oJ=*u<&1>??h5}2I>d>btS<{CsQo2emPEHb0 z=32KqM*jdLeBJ*53Z@xy#`gFJBMi4^U17iyE$x)q{R=z3#jrf^*hL2 zT3x5@1*4Ir$&p=5QYkygWo#=cRoHgmSJJ;>SpyB|ib>dZVViCP0x}pXvBq*i!01Rc zucs`e4X7hrp$0RxfZ9pg3Ek5Kuq2*9#w(W(QgP*>O0`;^-tzk8N>vq3YHi<|5_-FP zs%lC}H)ktZRO5l1<28eg3DI&=<-Me%6&+luN-e!zqs_ z&2q&?3kD!GVXzKDs85%U03euT@Q;cklo9FxtfI2``~4sr?3I*+6# z(=Fi<;B5ev2@1y=e8ilPFj+wWVsVjfa7fesau67z>@l1&Xi( z053&K)zl>_)hktsZF^a`&J>;7jGY)KImINme936 z?7LNrk=TcjG2p%-K3g#ABG`etF3<@28MK(A-me&SkTDzf78%IEDp-y-;g3#0&NEOQ z9yh^;6Xq%0;Ekk)AP<=QraYB63_^f$)YnCKUZf%QYE&fod7VgM;TXmjS9KvJDY+-3 zvbwtWTz%y#l@{)yN7>1!Dr%MEQtO#bP6{eEe&wCr_GzCyMQiaP7iad;G;Jn#Y>RPx zVNTB=CR8@naJ&uMvB6=rABs^XBGhc8gsQ8#g5UmG6Saf1Ea+Ge#gw7Sjyb{l6zOmw zSmcb5q`J23?oz4-?W)CrAdoT$+t)j@NBcHS{$G&E5#`ws0&<|^YZ&(f!QKYe+(^y} zjN#8gQ;MA`oXK8MgsR3aqiM=X$}amP(o&71dn83%9vY{-=~IJNc9L<`+ugcyqNcvh z(pvRADK#&P5yT`*%_yK>xKCOmNEcKw%?GjJxDYs@dw2QWs*hGnMiOK%Y@|! zVS}@AQW%y5#z|k40kksv`)P3|;&%cZBxJ~-9lQe3k;e{81AxUx%s^7LKeIOk%pr^9 zHsx0XX(dTgfG$P}1d?|0N$Kd+$4V7rO9kwzwNLlds^OzjHDr^sqZ)PRC|U1O^K!TE zMLku0R|6@+a&v@QaJ@R$o%K~EcqIuawY+&>MAL5m7<^6f8WPO5_68MD%H||lRa7@8 zBmyv*-Q|LykaNQrU&fyjBomQkrGzNHQ#%$CNWhj?RAlngi1y=gBO_?zKH)x>6UDWn z+}U9vjZ~Gv=m1hP_n7T04nQDtRhvs#6@o()LQSDeu|^m>0@)rTV zt}cVMS`fnGWobAnQmU!SFPX=hoaY!p**MB{^p|GrOoF6=Sm7LU+ zoT_xQY053xTI}&L; zbO!_v-LMS2pwFD;R2+Z_+}I(3+PL-kw3x(UQUojr8B?{1ZNz{|0>BTL09fE>01AWq zDmazGf*7)p+^#@uJ_$m^sN@n8lgQ&EFRWIms@26|J*5dawOvrHI<+dN%{jtur7Cit zC8GWXW$ww!_HPR(D8Fv$-bukE)R#|rB;ypUoD-JmUgy#|`pAfGWd|%n zh953ebJquuFmDJyctht48*=fIR1#Q#z?WrgCIH3=PyxUtXHc=TKg^v1$Q5@Sw%#|c zI)8W`#MQKA5XKiP$agHm_ZWSmQ;|)WoX$~2&)iKz=EBspe9Qw z*h>Te6N|Fvjho+DJCRKcPVA*s+HOYT3PyM=1E^$tgUKpzPf$8rTWKBQLn{YJ z)IzbB1Tvfrpb_S7$PT4;k%C5XOC7ewSkwf7an$_V)Tv*SoGR@&2LNZG>7{Oq8?N;k z#t@?os+j|jrHIeUdSI2$2Lik0QdsJAEArH@PK+Gt&T^?03%gTRq~!%od#ZHOl6omi zba`^7{i1Z7qXzAW{{WY9i-Py6N_u-l)sm7?)7{tNQ2AJ4lEO^vR#Z|50JhFo1EJ&` zf^s<`rw~l62y+}+V(Wr;Aq9t)OowXZkU<;_s89-;n8fId=Bn*DIE51)QjF<2dzB{Ap(xIs zw3Mnvazdr=BW#4K$MS~=JiZMHIq+luoj2r?1!8qq7 zBR*u=g@_=4s@V#mNjb?mX=IvlCoFi9A! zs7oIj@to>Lytz`P$y3_LlB8`oMO1`iTaj6%Hz&@n-iCbfsMIJy%8gHbQ>vur$eO#9 z;WhDYxh*KAuQi(zJ<=Wwi5}tth9MA;0)-jD#uW;JxcN^xH1&>6-!#f0d=i*a3Z6>r zCDddRrwl>J>&0D(WiiH{T835!3$;p-hHd2Fm0}8wxjw%yB2OjDWU7*+u>>5DA8=3` zIUsG^LyWK-0C?%9oe9*XDaur52>$yF;VH+O&BCo1&2#fhthBS`R<^TKo~2mIr8(2A z*DKLpXvvRxlokxmd>*cyd9u-@1?JT(`94Oib?0^XbgUaV2@|PY{ zWPu*y$-!9y@CNoHXwF%RfN_i;T~Q7n=0UUoRIvjfu1PpilenC9UgHL=#bYG=DN}=; z%)k->+(t0KgUH+${n8r-u#9l{by-wcj6!m8jdfa1cBq?=v{hu`A7b=$<#zQe) zmiERrw!ixcp61dknQcw9+Pr3APAd_X;U$WlDrr@wpy5hVq~@E9T)8Qz)1uz(xnF)(uO;}qH|$sYGh8O=J`(s?JW>Ab zt=m<%mM7dn*)6`Hv#1M|2(zx(&ctLn6`OPW5q{1WQnZtNHPVSbQx{AB020J8n7FqKpkRt1m|?fxIvUh`h-&b zu>|(alINh>35)Ndta2ar{7%4-Q?#c)Y{fx;VdKIK|4o7ZBZESt$FlseDAM zQl{*=T;$VA8a*5JF}Zb1^GVB+q~Ef{dk#u!F3JA#R9dGQ$~I5omF=o+FO4ogVUO9S zX!gnQ&qo<)8Kg`901!vK<0S%rYD&?wDUBS&$Vdnd6qc?_RsR5jdj8B;W6VzjUE1xA zK@hd^UyIU6fM1cY+RGc4jP7S!k#HPfZ3RPD-id260H<`W7;Y`M<}L#T8+NbCG3ktQ zPk5dQSWh5A1VpPA2wNH0te~HtsmD{s>;N)*s%CiVk)xzsr7l|6sZx_^tHxB|>NP5n zeNs}jx7g;Tf^_-nN=?O0#*3*sJdj$aDwO7&T)ADNrLK}z>-pe6;GQ3|{{H|j+fUc+ zxC|065o;qZ+gmyFN$Sj1BrJ-UjaLzdtV#a>;F`Y!nmdORYmIW!@gr(?h@vtE?a0?M zuga`c74pvIGabx8KcptsLaCQxth=`sML0pXBy`Js+yZmh41rG&wn&YL8To^5BP0Sy z<%qxoBe1S1W?1S@6sXjlPiCgvBaFn&P`|r2!^E{Em(-|$Rth0PlI9xT^mZ!SbRv5C;`1yg$);tNJw za>%HJz5@b^7P&jG_$9}Irf_2Tg|1r1=R(_;L$;K#-W}p1ZBGH7G-XE)OeB^Fz!k67 zM}dZ1Wt0#&;Xz%*d`RG~Ht$0oepW>dj>PV!9!g5Qb>fmV+9&UgTy~|re=3liNt8R9%f8+`v}_^i7ZMD(eDU( zEc~w6w?D{!QrmI@lem1@VT~f#s2SYtMNzv1=L0YIf{;igf$B~^GjR1qlTl;8g-YnQ)+4oF^sJlKYgb{D@%Ml&|5{m zUH0rRWD1HvDJ9B8S>2cCZKM5O+>rJAVyL@ZOE%Zq;Z+wn$T%HH zBNzmdKs9Jy&A0$(FZG`>_OeuJLQ$&-#!e|Z zH&L^TjVVW6IioIZF7!`9;qv?}>eEz~A{5^`btOg@OPiaSRI}!SQBiS}qi$HGABn%l z{Y(A{x#B|2H_D+s*f8Dm<5rWf_FP8JcG2d_HN`H zA7*#No>CG(5(YUeMma!mp+d8B%N&FAWQxV{MrRAoz9yAAlBdq0Uqb$yPs*0GXm2`I`hNiJ<#Q<6(h#A}cECvU~{WscWY z@Z&^Cg^0etgetLOT*fS>+zA0ee=M9FVRFZlll}?Y@ru>KlJ~;5USLM@;J&+gBV=+J zWm)v72Ji~Bd6cUaAQan^`_|Fy1%~XaV1?Rq+>9|*$tnOi7#Z!&LiXjC4Y0I?5x9`- z2q!yHN)}SZNGAjkazMbC@jhc5EMYp4tlETCMeOFH=R5M$Zl5!DYVx&2lTBSFN7N|P z<*uvY;-d*D#yC|QD{}kt_K|Hxd(HADo92#|KcDNL_$Rl@R#yNi?oc$ zrQ$$WXazt_J1|vZGS$sof5AO|H>^)GX_{P*kr8O`Wcxawyv1e~fq@~HW+P3&u_a3F zf9Q}~oX5KYIFAHnUvXd*Mh0LRciC)bCfGN$x^kPWZn~&7PI7pZne66%+u;T^ypru8O9P(gubsr^(i?i z%_`jRuNfq{DLYD0Uh{3YZ^b{^@Ai8AroImNw#wpXka&Du!+AVbx9xXsu=z4(CV{LR z1A>brFDjHKHEreD6ZPvyy}y@DvTN(B$ZtN&nWHckM3{l*A;FDM77K+4GNgb$OjlyC zgpJCB8AVrYpl_W)B!U%=az0(BAP{!*ibHVYZs%RHBu*sxl%XSn!PQCHFn(a9V`=G{ z^79jF}N&cvR#KKaU%tJ$T&5Waac$ym8#(5?Rh=uNz$JsIXK>2iV}=smaV;2tsA>r zY(z2hlpDoDFpSit96lXJe4DC#u%%5-o1N{mQM+-vvB&+Q>LyTi$sRWdpnZrbS5bn_ z>oXUOgTX2CgN>k!v|{S&Ns-%Bc2n}YNoHeg?Ilj);0)~`29G!^gPv=(Hc&PTMl!O1 z1GmZ)ef1lDY-8qMn>pc|wOUO+*zLq?$K3_w?58IHZ#%x~=Wqpvc)=P{#9<>TRCMc9 z=ZoY}tL&+|a@DmdP>WVpwVIxq%E-d3a~gid!xsq7)gviXp&E4@TU^k$I)sw6c~$-G ziKN+T_c~RDmW`%rSK3v*-1F&g1@+C|qb;nLK^p2fA+{Fl4=xygGQc3B%S3eTq)%1APgt6Q^s)A-{);CZal=&UU%%m^}lhgslM}2#1 ze+$QNZ!ySb1(r?92pdPv}GssA-pIWeBD;xl5JYrb}qIV!81-eL6Czs^IIwtY*E0 zd}l1cK$e6HM(#A9pKjOt>k;u~rXql9GP4V0=;ap%?iHjA^- zu4i}UHkxGdERqk9NOA$)lY&9{Nclzy-Ov-x3FL8pKe00CcS==|;ZHG~fx938$^i^U zH~H&x|`-R;G4J~Ov1qufg{2W)BrumDO`z)Xe4 z!L*kol^g&EBCw}X(Quril&V&u`8jIFtfLzz87h?esCtMF#~6Rbrty zB@SwJX->*2O+%V;r#U5f)KO8oTVCIlS2ydRYvyOPn&D!+k=bKjTqMtc71ZS9k}%8% z1P~4f+g}d8BWQQJC8SqV{{Uwg;e-h8CWQ)yE*LVjk*e$kK~gX`wn*ncDC$-~c%n$; z233;nhwzQRy>=`Lra=IJH*VeTI(-%4{{R4Jm)17dGg>Uf#}lp#WI0{Rc?*rISQDNJ zI47z72Q$SvPXxZLFRDIB{b8n>lUH<_hdgAXEh8qN`g1LhgvoHubH-DJNkXhE)KZ;S zCkGamt})gwEx5;Eu$f9N_-dihx`w2%!`>ea3 zzBBOC9yMzg+Rhn;&AS1}$@!4FcVlfJhc+{!;l|{yk zX}Gr4}I6IRkt#(A^$6U}g?OZS&Xz1( zUzs+NoN8$&8+1-7wyk^V>b@h@^r>NXI-Z;k*904=S%^3#jvTklK|FOlWb=+gPS-3I zFmG)(C&~}nBHCD&0D@g#Zyc}y4E)(R2ha5{hPrGP(i3eUia5F3Bd{uR0)+$;GFWvv z@5Vvq?R*Vqb1TCu$gz#8sw8A$4&YR6R_&bU7$=VS3>@W#PVNg6 zoDZGP!d)sdky|W?s^(3}Gb0Br^I(-MNo*2IfKEXq^|v3w4L#cuOM1!4Y~8oqVfRB6 zB@Badwi_Uj8;a66+!wWNxyF?!E?!(cIZjfP?I$iuuB)8vl{Zba?wf0K%Xxlb3EG>X zIKnCw7q+PwH4S6zoUW=}Eg>DAm%Xj;$5*qFiv6MnWjmOpu``AFPbeQa!Bzu|940`; z3#!}88kU|AKvA`&KxFC#rsqyB^%}ic(2O+R zE)Fy2N-vo?Nybr>Qe4Tla>|ZpDb$Kox^qQ2&BaN4E|YPKa@DBDPRms9sq{zN?6b7o zTa0dFnPLF3T#>l3BybKg0-W*52R>W-6}TsMM$`jqCerflWo`)#kO@zm?n98g;CMuz z3?mz4iu(L{N_VlkVuOCcouVy(5&;)*U5_X{( zBxmMteoqE#SIcnqtMk;gCgUkosG}7MoT;bn6x^bo`fICAqCJgxNmGPiojmTpcR zqdIMD_q3Yji@v%y^y^7rYzvo1Qp6T2lC+9tB>cHJ z!D0xF00V=71_gZe7sFjanON&OiiBdy1>sOhFP+LEA=l<+!>cZK5C+vK4*+Yb<7T&d zst96y_}r-ZbF(plz*0it0VLxYCbWh(FHVg9wG|n~)BW8#l_gfBSG~(mmQu1((J1n@ ztlsRxcr3~_y{9E8MJc+KQd4o-(Q|UUR@ErmmwRl_q++}`A!8#h%1K?pnN|4*74wJuA)Y2uo?nQspxN_A7DRH&n^Z5&Z73Uv z7$dF;+_l7y8-IJ<1zu9cd)vidw+ ztd3)C*^H0}&4NKB54?Vv=L);A_kdDH!;VSA5Ua@Qan`uwhaRf)q}5=()HC9RhkE9IbPZFx^K+I&{k{NuqJ2F@-WHTe~-N+0v&O~2r z2*F)W@^+G;iBNI5xK_u_yXFiy11u}&2&_IPN9DQk8#s5$E8E)@ETT-Ts+LMN?HNW5 zy;)Q<43N`X#ql#T2i7f~LR=#(5Tc04z*bQgEwE(2QrT`e13GmuRXv-hik01?N~B>r zUfY?w#i_^Miruw$7x1RF2CX3)GWd5S;hg4U|4s-(6E4Ibml;h6FP-ME@))c!512+i)1A}oc~1-xn*f=7~HCG(Ya zRb~pT%5i|j`X94!oTpZks}*QJV>(q^jpF488gq?Eq^);JsjqppyXN*dnoZT6EnDVP zW64q%YvP-olwjVna8l(>$@5t^^c>BZ9I%M1`HF#dwo~R^#A9h7oSpz9kVxBzmO>*c zCETi@a?CzO2P!tScqLb80P*->{P8BW@m?=1Zqc#i;zd|Xw36*P+bIsns{9kMlB~pJ zs0D+>zZIhrY_`xO$|yqU?I3ZzOFOH^t^%>ZRYfHfI5;Juz8;*V8Z^E_0k?an5ODjL9)mC;G9F$9N>EZLN|JDycz@++neRMl0s` z@u$TYBx3q*i74{a$?`YamBg`)=vM9+e6tXBWoYDPDy3K)g0Xnx;%rhg-f5aVi?z&a z31*SOGHeo`G^zjs;gt!=AcKI%T9|03Ll07}5yO)2+g9b~l{+}j5~IsGw%(9-i`7bQ zF6!fmtf%hL#Li9*QiG+<6+2lroKu5$)jn-~>)O`(8hF-5A!L#EcEk{=Ff@Wx1K1X9iO zm2Z?f&3hm$>GI+M40}|WM)C_r{{RyFUnDT0B17- zz+u?A7{V*ALlN@s%Yqs5xz1RR5&r;%q2jHvnfxxwp$Xom4bCv*p}s$TLgxtFI+7O; zwz2rBu9qYJ5t-CU3o@~i*J^A(G;R&pa>Yq8h|3ni4Crb8a$?oL4Q!3b3gt&EfG-r+G=PPHVWuq~?`P;M2aZ-M1>b*V~DV zA3Zlm8pxyt`3XA}3~Hs{qh>;P0>H4^0XVC0izep8aWDaPuwYBOHt9%EcW&GZV}1Yx z=aPJYd`-RzWB$RKFz)PIA}ZuyOMI+0So^_p!8ucyjLH5!sL+w+*xm zZOh(9q`x2#Qyhld@|w%)cAg%kOhq?Nx|CxGVyP%mhb`PB)pr|3xj$C~K7 zswyfdPb~?NnOXJ>?+Olg6;}!n?avu*GoE6C2Q8S3GVNi^YakgT=3v2tfKJi7kVwJE zTDKjbEU09W%lyGaYD7v@95bm7yLN+uK2ppH1E=Rw!qupwI`tfX-YevPY-F%)f#RysHCYY)2r?$s#cUHtrpvr(z8pI*p}QC$|6SXjK~p? z0;}kj2z%$h~J#I%nPdW1}mbj7g%1L z@f0d@ILDe?>FTA3XyOWK^=?%ypmrz&%trFUkz zt;*W9nJ<>oGC7S(M$A{`+S^-zO0f(|E=vMfo-i|oGb92(-bW;x=OGACL5eaCB#u%3 ztfAzR6q0fQ#zfJ%c-%f12L)Rw2nTLefK}k_Jbd`cD}ZpeQ2}LFLl{B4A}HUqs3#~| zFx!VHNeViG0Xdpp&Ye1tg;?Qv8d8FVdBs`#tx3m{ZSI`mC9bVICPH;8#txM^)uNlJ zD5j$%q^#XX?2>9SYu%D*X}yroCHEDPqbwWBz>!-gzI?hb7??#evsDPH!x6O?t8kRl{RAH2jqRxlXu1Z79c3Wgw$ zoq-(VoyM*}sUu4N0DR?FV9pirya0Jqw17dV1CY%eWbfs?&8WaJExCvc8OYB@`EnJo z0@aldy^LT+OJ&0XCZjvHLwzAPDruG850zl_(SR8KLr0u~3 zkUf2I&M+|~F_|4nl!7u=GE8cB00=&$?itH)eL12aIc6b=Zmc*QdqI(ukB zk&z?tPS z6|1wmw>hq4p-v9+jFmcWa^zNvmn_uOR*osDCuG}8Mn2n4Ew{{)K)a4oGrT4PV{@GD z-GTfklk9Qy*T9c~ej@m};%gljM7Eu5A-cBy+SW`F&26JtJX6Rn?jn*)V9x7pDqC8K zM3c?($G~zheg^y@*FH0NrVRtbaipyza!r4EB6-#tRlGnt-D(CY7t2>I<;HgAS5lc6 zIQ{$hNAQ!v-v|6DYvIoh+1oA5iETc+s>cgQajojH+s6#o)0t(ORgIY#+gf>^MWQiC zBaAUx>BC@Qh^fnksTpBwQ&O)wT+p=kvvW>PrS?iNyjL`xoUWS3;Dmdiu%WA^C%fzN^`)xI%&7t${7ydQNf{;%Ud3|fsbBJf1> z-#pKIquAS9*+~8tG2E&xtPx#HqQ_}0*K@VBf=K@WE3}v#}hf-)QXGP<_4zO}lszO}Z#vA(vR%KFCg2(GN}Z0@3HF0C&uXGtKrwYi1f z8SUmrifEmZMP*_u@k{pG{{Vt{{hc-6j2{9t*#5y2-Riz9_-&`!+zGV%Zy_hS)_f|l z%W`imrYf)!!aTDo^(OSs?`26dIVP6qfHOjq}9DPXJ6Njr5sA3|mCpsz- zil<&lH#o}it1eknaH-81``8@be3YaMisXx$T(sieuA@o5RJWQ<#U$*aq~rOC z0>OC^dv;dICn>c+Dxphpo=^+`z~hW?0j9}r(zJ>uWZk$b09jMZ7}|15;dQ+zdLDQ#BR9cheeCo}E!mrPc7{eHcHfz}-IWWpo!sr? zUVPWPj8#5q(wl9@N}M_5 zfa$5}f18@Wa z0APMl2Uf=?0E60w_a;Z_t9l$5EcOP&)^ahJZ~%PTb0b>wdC+48e6 zMii0&Szl_tK?KLUBXeQ06mo-rGlD?mJIMt@F$8YL(lCbrXB-YjdFR{?m1uyZstf>& z7D;@_r9fimd$w4w&T_$693GVvvB|W?vIkXV`FA-(^8n0MNXAnjNsNv&!q+V?X&RHJ zso~VQrD;^DQmpC1a!&G+l8>}fX~GkBdh@*pOP>(jqPeFPI8LS_RUn*OcTSxdsVb4W zag%9U={K^hRpedlBn+EV=fEh7gjEcC1pp`mj0NL7KMX)o7+tyC!9%m;oUz&o>(PN# z0~rm}SZJh@AXR`+K+2q~gp$CL*$0vs6aeK{*Ob}<;050q0m&!l>Om!j0mo5-4|?aD zsaFx~;TcL5DYq_8NX`>amAT3;5pe!kLJm>7lTwoAG#@r=`!Frc_lMoDqG(2Qj@38c>8`B}!b}(~lx+na$LMd0o@xZN^ehm8}$xsGaW~Pws!+-*lg^U1plY#+L)B-SaTRllURH8iKZBQGW?ra7)DgY`$0Ymz2I3pmI z7OOg{k2KsAl}SlXQKJ;oe2LU`C1nW3Hsz(-v|D9UQpBi1s$RlTsmlo3PMjjSTwx}; z`I<>ojHL&AB;Lx5h(i@Cft{>f6qArcD9b5Aj4%mC7~C*3krOI_V#p-1VEe}40Vf>e zAZ`F)o&WEksO3k}ynwdOGf~M+Ha7ijI zYAU28+HJ}*w51rw;cYc_tI=MWL^&G~Hz`8c3{+%)t7G#4!TCu%_TZW#g;k2iqag6Z z13fX8Il%dN0kM&SMO={?$R8mk!Db;y7#YamhB?Ov1F7VUP_eQC7C^pZ5?ClDaf~iV zB;F`C#K1)6#BDHl&=I=9;G%+C0{am9@R3XD)d*BY>&jxrZ8176u{qww#A zSwTBayYOM#@t(u?ThRtwI|!EHOcF@M!F^yTdla`b%G-|w3SQM zbsSt|`P=1-jH4F0Bcg69Pno9L-{Nujh~jY%k}!ojH>Q*oqdC22SC+{|&gohyD@9#h z1!MS!!@eHzev5tKzZPg(KZ*Q3slwL!hKJ$}I@4CtZy|6&ON$%Wrni%+D#bS|e9FM{ zTNGERI7V@lCm7BWPBM&=lw}vXlv-)0*`{(vQj1cHag<%-D7P6Vx~7_G`KFJ`AB^Ad zOHTmn5^CNj_!;6|OTZf3=TW~N1=R#PpMfu?m12_DNzht9?EC)!2HS^Qh>_lXZo)LU zjRl>&aXY`{m&UKz@8eIx-7fksi60L2j}2SJt;6)>>8!q^!paRQSZ+ww!a4I^Hm4}MlR9QhwO&$`Ev(?wDyPn*q~~i*r*(Ro^0v9Gk^Xp|F141&#gZ0AP?t<346hy- zTu8hIz$ZNK10I>heVOpiF?-?rS9IF(TgJIwS;l0*#!lx@0+6}f!yp1cA3FSW)jU6} z{7>#Y|>7nc)HJ;2iR=`F1cl2344 z+nEga1ep)H{2tdVZZw373DM?`ILkz`qewDb=OKyeIVWi3U>%q$H0A+q`)Y4c2o7pgSjfczG*SN?famQZdVAh$CIvfJ5 z&4qT^pDk25S7JFiP~5RNAPjUZcPg=gA(%)*G1^!wAG|;Zfsix&Er1Ca1bLLyr_S)z zC?t}U)GAHlDos1o=XKMSI7wYascU=1O4nau?VP5$lqCwh@m#X@i7Q?6MaEH8R=nKv zQAyb=+{XJFI8}JE6z8VpW8IGc9i*Occ|EFM?8E>qx(5tL-9+j@1dZ4{WSn4ep1G|Y z%@GUcDN~SgiomJC$x;tdw+9*YBz3z5*4G7_dnm~#U{b+=+Nrga@q@c=bC5@R^ypxz zN~?8gH#tGoRcg6TQ*_ng6)34iN(xOUIQz@tW;l#mafBgL*~*)YT9Sf|`Zo`Dc1bI% zS}NK!mAGwhN+uRSp+spauq%>?mCsKHMEBrB?)O5l@4TPWAbO@AwUiHakv}~mE?-X8~cWF}?FL0vvEM0}xID$iU|We6dNKI2PSpq@9}r(qG5D%6&RHYRH5WH(X$|y>64x@)Bu>^&FhXCbq&my^{%UZWIohMJ3%5^GJi*+Q`ohc_pLOixtl>O_s z%WI@&szNc9HD}C{lx;3(&NgYQ%2#q$?w#J2DZZT>6$M!of=%fsWltyCdL|xX3>%9Fw=dJe~m=$vpS(Olew8>XMb( zGmb}7fE2btJQBe1f-! zXr&p+U9_($$__C~>APJv^=;~8e`dxBW&lZ@!0ZeL?B^twY@XjS>H#96j>UY}PbicC zD3FNBC6^_Y0puwpZESJV*0qJonF?=5W0F$@s0TO?gS36pFmsX*dY8_?ZOXfH7dZ;0 zi0Gt|(2QY0AmDvwt^#!^u6orV>Qtto2&Wj-gLdbg{i1CPho^($+lj z_@isM^76tCN=db7DJ$P=n9Zi;6&cFDN|PGns3d0u>;nhpZZbmWBxMeo$a#bq^5F;x zlDOJ81qDX_I*f2h1LX%+X_^%+j5)>vV09n>2+l|x1xubNM&aqLOzwfymxu-5$C@5L9 zxuc?s(q7RwYx~WZLrx`0FsK{xC&{?S^KwEc%MpxVfHK7305b%-c-}m?OYdG-C<->e z3HQ#>czp1^LBY**f>u}DxOH_$2Pc5oB(PB3Lji(7$lLO^O+h2RGOBhcA$MnMFwOu4 zm4WG#%CH{f)~=ke)ak-=o2-t8Gm?E2!I&Hq!e$9P4Qiq;fOM`{g4FMo33(jkj=h+IJEGWl_lLYNYy1X%?g1B2Kl+?9S%9FvbqTvxdlM^ zS8yZ{V+px(LkCjCha`{zzzjgpB0y=p2hD$P@yoMTcFdbl|IuWoLSkbNBOaIAI)Mm-)q%5VRI=IU~L!wD2k~6+Q{{SXXmgrsL4suHs zAhLyA{Gb|ZB4ifJF_D2EDcr+$@0)Qd3Hek2dELk$0i3A&S6+Cf3Bl5fZ912W+xU=r zsWqfrZw;DvW>qmzgn8qKl-%DcoLnt5)uniIbLi4eQgMpE#Jcl08a=E-{a=?g zZOi~CmB;{OVXc;_8XU6trO4Zxn{9HrRD)^r zD>IOjM7NYmBZvk@F@nBX1+g1s?Tw6QYyHwbWjW3OCp73W5L3%8{{TMsE3ghq?g5cO z0diCfaKPgwg?FnYXq&l0cCjn7aRcutVi<*Sx-*3=Ltp?v#aCr!jp9NXiEWuU`G724 zh*>tM%Hty$JAfc!tInMjN^_kly2-*Zx@tVB#m%L5(|YpVD_@zlq0#NB(@InQ*EAn0 zf`q20ykxJ;+HzNE!po{k#{+ky+ea6c5kMU65go)Ue8e4`;~=QP%APu$Li$7j71k(* z@CTM-jW@8{lAx5x8`R^jNa}j`Gev5~L|n+@4YkW)5~@iIazbYZpMtsQR3~{iQQ4F1D zAY1Pr#beK^y{l9dF=|UtR4bLJAYxOyR_&TqwJEV8p$J;Uh`ndk-lO(bTdSziQa{@N zKX31S^}M*xbD!@y=W|-)#qp(2p5d$LfGr@pJG7OWKY&q;?_%knl1vl)w@zC~`nj^v zVKICU^#8vV3Vv@g&RXY&%?S=<9uW%!@bObpeqbjK^JfnDks8G1NDXm`A{UHGvOvScynu?@=7!Dj^OG z#0opyZ9kWA^l&=Rp{Xf*G}lo!XZYdZwa!*05^Hg}28I^h-__3|aL|n9gjN#e+ zC6>CO2KjZ~SS-=HWv$;Ru&H_9Jp*y1Z13`X3aK^HH;h4d#5i=nAjR>(8)pa-AlK}L zU+dHC3T5b+F+W8(8O_gIh5XD=2$|hzCoWIdiKAA8 zo80_34Cn<#@Xz4js9AhNzJf98)As?{L=TBdh~?h0$2~r1(z?!)F;V41o4r{$SyL8Aq?>)Rf$YltMl0^&z^C#FEvSRso*6Qzc(NB8-Zp8s= zta~(Nj^&31YYc6@mfrD68i4K;%b1l@(H};own#pX)DhmLtV9Xim#qYeo4(rSg~y1) z3E2$~i!A)~1}x8-wi-q;0tb=ZiuDh1DXau&gRS==CN_|1EcCh$u$ob@T9TtTNXs@>rHwQ13+fomU z^QYATz4&wJ@vL1v~yOVXe&lBdw>>9EmdDs ze`F=z0VvaJY#4bgnC`712q4!Sc+9N%P-~-Xc>g{wsCBB( zfI#=gzTs{|*`$U4CoJ~O&$ZXkLJn?%GkZpoBJrS?#7!-7rk}H`mca37541-i-SnRn zY&Xlfeol~D|El+|JHM$a>ss|k+s}wjaY9mcj|P{`aOK*cx=HQU_EXX58^a5!2Z-j5 zP7jr*EweXVA{m*x)~+Y6AsO{{#OI^{`@Qc!-cY@LnyT;R@8J>b>O-}QJL*slFwLlc z>f;{h>c=}ydZG4gYTQc=f$5ceiPTv#hf(tWQ}+MKpzG>$F;o~B=C`Y}Pk2BBV z=~e>-c}6?@{Ja=-u{)Go~ngu#qJ953=M_kqwm)9aYom;&6vyxHNsKF_W{wSDx8?|AlBc755`ZqH zZ>tKvAf1ZB=bgLdEX_L3+a(kE8Eyvl*_^0$3Plp+6TcD;Uj1;{8#(tcSUQGUt zQ_x5Wd0w`iLPn^L>jb&}Cv`3rlaX6&;YwQ7Ps8lvHO2BSDPZHNWZZaD^QqL>!t+;N z?oOpE<6iC_BA>^dJ5>26Y^+ANb#LYL+{Tp16Lh&0t}xZkL*=vWQGGBG#gTH0_1WKb zW8=2Vy;}}PHEcfUvI+Ht#nSfm?2rNJc|(La!st%Y)M4tS?Hcj%K09mgCSaAPr;L%R1e~pDf)tf2r8a3!hWmK~rs#|x+H_U%n zD3!21dR?O1dVj@-je}bCy-rJAyQas3N}%qjY2N&+w03J{)8;vQR0MWa#tHQJ&WbN8 z19%K%ZK0fjE`ZXrgtiG)x4xlC7I}7Hv!rE#OgLZf8Y#+`{qOra~EFhq;9X zJq_~;!`(!dE3xY-g3pTkZOO^$xHZJPd3x(oslV_6f3$&Uv~tO)5g z@W0fH>&ISpXLACtqBmm)nZ1({Yyt;?G;$G*g}Grc zRn-Z@;$P2yC)>CRm_G=}Y^SwZ8o(PRRjRK0Rjg&UPY_-mIi|}O(T`1Rv(h&4Fza;t zYOXc&(J>Z17&~NAW@Mx~vw!uDXHmWD%78+Kl5O;(ff+df#8(DhmJJ$-PK7Oc$JD@X zr6PV}cgRt3ls@zCGz}^oMjge#yN@I=gV!w%T|7VX_Ug(^zm{CT8_mFDa)N?p3P*o7 zY#z>`%0_N(&OBZoPOFM9;FNIR8eK+w{e`cG2Gn;vOjzpnesIsi+F^?2BYlQLAIfWJ zT>1X_L{e|*7<5r!I8t_kVjn5^Djf|+PMMQyAW zpRz>bo^oEbt~seLM7DMCoAw=f^dp7 zi>FqrSR!MW#~aeS1UYv?KZJKsulDUc07kKjQ-;SMY6>OF0Pt1Y=eMnHx;E&);FQFd zCyKSuL#4`)Nvd~%Bhn@hd+{>xUV9NStr{yTa+#{b^l@Tq>E#d$AMpZ+Kaq$m=+p9z zcKwnQnTRBoPh&_`X&}FSBf7m{Q0s1GF`)X&dALMIaRU+V)+?p|amvpQktl z27FA#_-^E51-a=f!#g~;HDviYX^x}tC|f14wqY6;m`pZEk?c)3H1zAYeE1aC?LF!t z;H@aTAz=q9NjVw)=Q+j`c*owdsxHJr`$e!5`=gwgOFU=M0H`{qmeNU3VVPU;}P1HQ6=V6)dZ=py>U z^p1ClP}{y*is1pJr!s&|15}6GAYzzQim8pm4WnXv9bZ{HS%mdZ$2CNY5$I;&>BxY+ z$Q0mR6^oLB-2h~!Qrxq$0R^iAxW(G=)Te@+z0mm-Ic&D)>cOR6_cxh78M#4E9odLc z{%Y0aRY!cy`lCA`yJ@!eBw}lN)R2{o5GouXOw%H)b~-NU!kykwCF6@O^7}U=6u!uf zF6$noVbtDz1{h=AW42%mC`F88BIbTCNY}lvr1f zkXlL%WNE#3$Y|vpgM-O976fl&^Rpfej~s&yU_CM0m0}b4H%<2l>TZea-Z+y&W4{Lh z^wMxQ)UZ;^VrX6) zmsthj?s~}_4CeETn*Hr%`^Re|*Jj|KI7t;zg8*6=Zgflg3E#_r<&p&G&Wyc)aA74@ZEGhJhCJ`BrX`s`hr zO0Rj-aHdpnxpMCA;x%p27c*{Zt0VGlmq?4y3)gr8LYlyf$@ayG5uRo!?7k7)y}#mm zy*fRQjNFZG)G!TI-aJz7QRh3kjBfCMH68k(z%`rty+{D&Mcs7ez4~U1>z&-9Y@IFB z45(`EV!f~4%PH-!#LEXF1FzB?>ApfE7v?%Z7+?on1KB`#5C4T zJFI33>7;`cn*G@f4MWD^R_#h*LO1p^eQjq;W8(~~bnp!fZSsqC!!&aTG9K@W)zpy4 zuBRIh82@BGN<32M$&+#N$K~ygeeA+z;f$Oaau6gn`b+$NcE>LNX9m-} zTwb(rBYfw>)az^CwBR5z+<_T)O=h7SsN#x{lBF@JqBAp9;;?Nj9!ZTKu+Ne zbiRsL)m+x>5@}oLd|LQ%H^Kl)-bAhME2AlzZ2AQwd-=p>u{Psu`<%OGpHFibKvDC6 zByS2j;!mG0ly5qNjXpm5Qu?>3;M+_F$fpg~$aALeVQk^;O*$akAABsyup`=C6&la| z-4OyqOm=+(_Cr%sI_7f}Y1^wjOQMs!w&}@#`hBSPxPmV$_2X`jOe867(RQ!2*hZnr z0hqh2p>}JvMPDqGX@n0Q!Q?hF9{22P%M9?`ONmi&s4@Rzq)RC~^$Vl4v${w#+YO3A zAoHXBxxzEE1!@%q9D*9hULY8S|0?BVt_66-A3O0@=DBodwl}q5Z zI2wKqhqVm0O?2wVgid3LC1PjGMhR}Dq9jvMk-!4030-36y8P?yw~0;`d{G4ro@2+g z%d~5BEBO!hJxWdQiU|W8_l5bT7UDw#FIuzadxKXRd8G~rbm!bSZ0H9L5X~B7c*o)U z4-y4U3<|V^QyVtK0a`W(4mSWkU(OJ>AMYyv=ji^rePo@oJ!}ubL=AvU1l=K}=j3F~ z_kzZdA34PA#Lir=Cv@6U%TAP$2~p@(BeeY{i6A$A`Bi+>b)wSkHcNb=sNPwLvF}5S zU-WvTBt~y|$zr(CZ|wf5M!&(K`s9a~FDB-6Gd*HO#Ekz<(H9k45AK;8*{wtlN=T}U z{;4tMw)}>OXevF!vr;;yeY$h8XJRaZ^KC!9)P5ZuqVnEhJw|RLRhVa)jA!-hTN(-% zdL?}RYj2k+IVE9k{r8+`E)AJYGcgL`++5jizIcvYHUB^)-r@0sBt_Wj77z-?n~DuK&%OraAH{!>aB@v=d$ zFS$5OIU?3pj>G~fk1=)vwg4GN)16k}b>GTscHstG9p z)|^XxyL|Dt+F5pvX#u9H@U*mu^a)t$3jAF@6*s0olKpWFZO_KN4*+JmePE_N6BF0G zd8LI}NZI3Cphl4qd@0<=Fr|HxzH?e8n%6WFRHkq^cQ|3Tiz+plCTP=>CR4EC@g6!q z#h+jiNW1FN^2kqJ0VXx`)4(xSSn(g19-}b{-gV)MzTx)^{(VFTG;Jg&S;~Ytp2N6Z zIibT{!LF!w8vQA>e*a0Q?S_~gFs7r63I6_K*A$;&?zSmx%`>js#EB5$rf5{Szkcz$AWUU zbb7+cDAUE9eNh`!ibtH;&~L0Z;+hbRS4uJ~D1W2bh{zB8rGU#;_2jDZ_YtZFN%7?^ z$qb&O{2P3#Q&4}!h zz(b>MMpl(&+V_igfrNs_-_Hd)RsR(7w>wR}GKl1EdjA4jk1)NA zh(;s9|9PmpD~|9n~Kws?vkqfBm=XAXbzf&IQ${%f(XSU!d(nU5x) z8XMx#Zx5P|(dCiMX)O*vZ(7xUPsm>eBqUz*u03uVZ%3>VpxhpJ0*I*}_FIH09UYx( z_c`1i-#R>*6<103_VK|N%@}sVBx{T1c2Fba7w$8R0dIRHl>%f}H& zOw+Km(`QjhjJ|)p8p0-CgLzx-UXZD-H%DgR@{ZV}>br!07n#nS}`96!$HZ~#1(kIv( zRgsxkldS6qqB213oc;V`{v0G`V#CP#tvj`R<$YF2*te@zpO(~^9^0}Fva}yk1yA^x zY6Ty)#?vcBYJP)yw@i+;?1Zk`7x7B9Ra9``ixb7;3Dn@iSG=j*z$^$#VVcAz8QGjNjbWK>mDgoAx1?@`g)W7FrOs! z^0y;tix@vfh!qBo#JNPr?@&l~!y}8tg;L;+XgunE&8*v0lIXC6DM69@T#V>Typn)O z^bhEri3qqijvZ84>M3(QN3~XS-Tzx6Z(<1d))VVjcWH$h==rznj!yRHTI=?$GtUaS z3>$X3!}#yY&Zus8f`~(jsdSQb!Zcz+Ia^JIjrgGFzoO~+OO{T^CCFjQS65mY-GJ1Q zPl03yQ{S4pi(W+CO8Je5xFm6{*&JB?CXU$wGARD{dsFvXmQ(m;&}_W#r-r;W4W@30 z-KjJ$Yj#o6fleXb@3U_a6DdD+2#=NUKPxsDR$G^L^{wYE{9Jx5-dk*JRlre&beznT`spS~jWp|bL)UKjJLIl zBIn!^_OxVOw&l%lHl?~m62(Ma0IcL0)dL=Pi?UzTwy^SK%!1^_hprq`m3q{X24}%0 zTkX3ipD?SWJc1(>P&MyjK&lx$^Wh%ZNF6Jp8la?|G(4UU|TF3A|Xhrbq!+=<@flNRw#ZI>{4JLSMp?jcXruUlWu(goG z@Z4P^0q=$^UM*o*_qj;JER`!{_t?)G!&~BxY_Gnx^f#2fX>S=Bk(pciUT3-FefzY! zH%5!_>Dw}8vOtelw(_cPyOlhb=8d???X-qpj{4|4js%zq_%}*yoA#xXnc1zPW642K zmMRIkzJV5ysBbyx%zrpm?c>3jBAHK1MDVon0?Q)qs$nz~OgQGU73tfx0Megqu zj5q$uu$D#|1U?6Da7k3Dv3?t@NV&46=y&}7%cP|JnidK3M80uEnM)kT z*!WSe!aTxDdm<9Wl$%V{aCWf<+;=|tYNdwn!dq++5FP+;4bU#2?xvUCbWhF$Fns3W z@u9XS!#=SgqD6Mxz1OYNVjxgWh~t?PzG<2~;~5it+k1V)w^g9=YR<*@BJ3-J3M)aJ zIFDoBSzRu3IUDh4DIZ|pXD`5nPMhj3CAsJ`7aAHTaW_+cJ1D4r@zGT!rvaa@V4q!I zt5TZw1WDdc>vUJh@ga1JBkVX#uN6G3mTnS_ERU=M>kB1HJgFjk5WX=~(cb-!8F&?T z0T~lvy+>&yOtq-YIsq4>SN+eQiCTZGZ<|Zlm7lfA%C) zd`GsR_Ep)|n`$+pmLK{rPE8G`QynZJ)`~Kk$*=$~o9Jb2iGX~|VCTal2%@XBKV`+- zzNk{skrPC0O(S;xe(YVRG#PG8uN}Y>#1qB-f?JrrWmSIQ@P6Nw)mSR|imLt+(y-+Ifl01~FT%v=^4@f!B@*vUsLYk{Y z53W94DT07CRs)5_2h+Y7?53@H5kaA8MODg>DQ_ zf(>LFl8Ku1i##hc;DKOZR%rZUzI>2XISb!*s!vPX@k`HTnu*8WE%!c}CfrrvUZvyy zDf0N^>UChONf>wDV~;^K$F0_MGq-b}Bo2@VOihglSCswYj7ZB>N)8x zXO|&LYRg9ojlqxC5<3bC;mER}Z>^4npZg`!Q?MVCnmr7PFmN2uwp2CTZgNCvAIR#H zW@kWdy)#PDElB+wN+%u;1tX!sLhsb(oamcBt$v5bv$%Wy0*cX|6-Ql{Qki~5p}(65vMI$7?BBv0`SE%yS!o@93=9Azd?8U4~! zbnmoj#&( z+m!VB!P$2MZ@bbX_b%U5;Mwuhf#{;Ipe1*IQo`SJ_gzPpgO`GQRHF_EAYCMWE4=Tf zazPk8K&N(UF&VSnX!o!!(yXI`!H~X5cTP%bPQKbrG_q_pFbmlv)Qe`_s_msV|*O? z+bGJ^_|EL~8`q{;li|>(0c>*Bk=d`ZF*yxoEk+l5+G35Pql)72GdBe2VEo%;p@!q_ zmB)Sg^_6qY(Q1}VwOgN~o9Qz?FB*K!=s0;@${*};e3^Lx{*T{F1O zI-VXekMckJJjE5)p-sZPaJgiAz3ULKa(ymxvR6xC_1$9c-D~PX!q*;52W#V}-ST0E z1}+vocR%L0a?1xil_ffR@4mbRhLpq=B`pUj%h54-Aj5Aq@Bka6^W z`Rtz07B-*6OxG8U6%mS1&C9y#BR50&x@e3-uCZumD!x9L;E zr&(xPnd`e(z$R-0v#-5VnEmNdx5uKB64xr2{QLBuT+iEK*QwRY5Iw`}(Agie9!3Er zB8Nv}uJ7%{w!Wjr&Xx@g6Mg&bN+ncYx1vxhaOHr|h9j=mMmF{u(+@c&|LFIJ-8r3% zZLs0`qiY;xak3x(>e@peHd{Gw7Sm6dg(*NSUq>hGO>Y|aOu7a#Dw|Bl#s(Fp@jQKG z6FT>~=vPQ_wui!eS@DcTap;XGPe1$?{K1RJ1hEf=J2uPt7aAvbkK{k{6s72%l=S61 z$bp^S@IFJXuXSYi_*OvSwsir6@3PzWMF=VE=eKlFF`jMArq?k5ML5)y_?g)<*E)c}xAKm1=Be(tvi+bOBKIqe<#scPZuYDwK`d^W|z0*TT^k}Xlu&gYgf%l zyz^L}lsBtyYr>Dz^p{$iJzowo|Mxg{(woSNKY9P3+t-kpgwSY^`OK%>Jowk|d&F0nw zz8vSXkxa*(8_1T%5p6+ifbb|w1%lX~28-Z|>(uwD&nY`z;@MQYyUagh{?xXkyC@?+B2gyss$vSpxWOYEY76KnDUA z3a2U2h;=nBgD1>ad>|s&7Zjc0a}WWk^0rWH5>WJEsf66e-SsUj zkBf05T3u$g5cmd^;j0dQ8l4npLeAo{IAAD`w^>y!3X9fb2^4G)N4EZ0(kY zNa{mLm0qtmq#=U_n&m&pX|RdM3z{klHf#TyV?lGoSRm{lwkOHe9+D5$4L2q%%T*wG3FL zy;?59e)_Sb-B@9L_>rqTl(<5wv6GPnfQpp{Zn9`;cGk{0hIoc}ME@R>DY1PrXcdYz zqu~*Z0;lHDTN<_x6evj=6o>*7K$Y}^)YED`vSLE< zv=iQ%#%nkL=M~(MNoU~IwuS3L4BYP{(rDMM$hAktWJMmdYHTnv4? zw`HWyZvCQmqV%(hjiKK8n3ABqF9kP6#J3X>qOVNg_hPP<|5ra$}N@30ZN!>V6X zrWaVr{hzI+-MSfBAiQZsUwf+R?nc<_dJY2}1(;M`%{L8$ z+F^3wE*c08&oIOoO!Jc&Oz}_x=BM>}ZW|;uQ26TZg5XCnDCpNF9kigiuK<(&HBGy{ zGvrI|ry|jJ*{FR{D$cT&i6e_o%Iui1vqZ#q#W$8JcX+>8>9W%%U$W`)8}y+vGPa!Q zC}qSLr*-Aqp0ev^;MQ1t&7|Jy+K~U_dVJ!w85kQ%UZ?HzrljBRO_j})DvbvJag#mW z6;iU}eK4cAByXr>7e`ZV1bG3m;GaTR-)H)`KAWTv_DdhNwg(ZyQG*sa47g-r^_Vh} z7h^Gli@sL(A|jYL%>LC83vK4S;7Zyf_8ET;9R^|$Fd!xb6Ab*T7nX^&TjQ4mA@Fu4 z#E^c=OOq6kX+l7{)p&9GZh}vnn+Df=dr^xz!q0(RcEZRs+6ftQ-cTYUE~bFZ@2I*! z&WRNy{6;VrBp4(6#01$^PiR^nh9Bq?_>RgC`P?QGH9YgtTsDmA%o=eG@6=M5Zw%k) z_bM&$6(#FFxc$hnu2B-N}s9W*0RJq zHsmQ)(p=B5uj6=46Eiq2>Qw6cE#cg2^VCxNFsJS-tzw=`A1bpGnWag$t1!X7*Ds-5 z6g)6wp=m}#;e)ldGxufUsmC(=w88Uncpb$|h!HRCQ%bFo72)?H)Ro z%_O9gn7%6I=TEafnO~ir9WRFfYBKJ2 zMAFVHS%p8%?$VJ_ww0yJg9+|e`uz{kfU;ka7fT!S(Z$Pkp!dAXn|;M7K3pXvhk2?5 z2X;@sOaHcv&bXZ4n(xsNQJ<20G&90lIJB6Ajt;L(s|hXH5&dv+@}5IEH7mF+q)zwt%8AD&?{8> zxpJqxLJeCH!B7Q*3rS}6_dc3Uf=G!PPE-{Au0wtAH1|5<4OEZ1MzEC5iXt*4kXZ3~ zJX*iz50ZayGEjYY1sK%TP==Pb;+Zx1LrVaRXcc?8|Zut%VM|t`3;=jnT=TOQkWJ)Fgv-FJV z1Jeg*wO8P6Z=+;h2DfBi-)akva>T3PYy$#kj&I~lPKLq;HoN_6Xm+PSlS%--`mksV zzlt$TKzg+J!cDD+{Hx1NO|@&#A&;4mhNzfb-yl&w=yn5nzz*9ve>iRVmj=4M7FYiR zszPzzSw&`mq0eEOWLMFo& z2YHUEv^XfJtZd65!Xf~B`S8L>YMS+~f8W0EN}W1)OPbyClv)Lg*3NQ<7-oh6x~Fq)52nTG@7gK}=YP4rvHYoILF$%Ma*vM!Qo-g=07sv#T-7zU&cdIHmIy({X-eM>iK zsbT?AXE@bIq7WXnZMFT8l`XHRBPY&g7JeXBCxHn=h{NnR0AxkA#I|4Ah;kyM6UM_*rvRblGTI;Ko+$g(gcg>!L3+DY*f3DN+^?lKm! zdMQZ_rPkru!!5ygZdK_39UWqX>gd*nD7c01#Hs}Qh8myneH4Cj&YzMI2! z3$Xmmms~!jlgV3K@K5!8$5ywGNQX4zkJ-n_Mll;Epok=_4>Eca z3XiM{g!9kjU{dbEN}M3(ZaFVUs_tcKoC?#3PLA@<87m^`#LCo7CH&zxpMJJ}_X7IK zjW&tU>NxdO1q}hi^(jNgF*@A9^DJ-lA;4fI@Ga9r@P+{0AmDaou;8E84X8OoQ0$U< zB1SE1h(2E}B0%d(oO^Yrd4yK5W(yZ4@rT*NXG_(X^@&IXnyWBGrLa`mL+6F(|OEk>v9L`^-CvGuef-S;?{iy3?sUkqcC*)ku&f0tQ`u)oK zwUrg-@gq{#Rmdsdybs-vJ#Fb2l>rn~SKPNA023gMU?A=JY?1mj zQsFAj!pS~^_~w3n8nWhVH@Tk}8k`)<;24vG@kZGMoiLBED2G|7*$KepT=Ck;_KZKK zMU9aKGgWQfOX+i{!k8;o_F7wnkAQGz(F&cDJ`%9h9&xo^(qdX@n^G!Y=@#pUgKmde zU^ho065w@Wl*wE7we;ojgOG#)bYc7#{v&!KyE8wI{v%>*)nRW4vPZPiEGjIJ{&vD1 zBkGpX4N|hTWt(+S!!s`AlAOZxCqf2Oe`4tz>?!^34WG9I9J*z&{!XHl0L?+3V$psZ ziXn<5UmCJ?uCuMw>b!{X_+taL?p|g-i5uO;SNb&4aM=qtOoKBQZ+iN^4Fe7`;qP*7 z+#pQK^;?%OCd{Bqs03i})0_aWymUR7wtW^3_EUmA%i@EtSSx>iKHo2FL$Oz;-oFD>G|0;Zjl*i zbOY+$1+`jjySyOYK9%TU(FG<}T0Vg-t~>f}sMeg#$)E%4St4nvY9pc=4o(`4eDkGr z1`MOiN>N5$rfx>4?Q%Uo?cwrDhk(k+esQsZTgrzoF8$<&thsb%(|A&QjpDm(TJ~(!TF0vcivbqyJ8;rPE-ZXbRlJM0T8{GzZ*z zD%xj5m(E}F!{ji55#ymR8w}$x(LBX-Qdx0O{1jT{NDd(!3DfovNz@&aZ4H+L^TDH@ zTyU#)QI4;>r3h#4*wt4B4rlQhT&sWixW#A&$qF(ZiTgAsF>qUV&3$FSaA0yRwTjJ; z$vYV2_l4=TGvga#`y7s{Y_#skAJ}5>p_J0m z-gP?HgosLMr5WX!GEOgdS43o&V&<%u#xKy;hi#|>FwE57%_ut90f9svl>V$J)CifL z(pJKn%Im4#c~VofYvPCubk6M+7W8102|LzYOHZ4;EC*M-c7A7vQCgEIidAb_NfQ|F zBPWi)`H3x8$y;*X4yQk3_pIyOnQNsVCndkzI~pN|{R~EyVTcIH9mo&WO24VCgPyuXE!C3<@~9%)Q!o!ithdMzQs8yphCDm-i~3Iz$2!0BxOe; z7B=d>Cd8*3CV^%QvJI2q(b-s4daK>~KA%#mc>tN=M0fcbYOa-KVs97jy-a2D zB|jaeG$y<&MpgD>0;!AI2zT-i*}pqa67v`!?*HpVXt^iaTW^u!vZKACiLC?g5Ao>m6%jY zj8}kTNRcYP>e1c3 zpRdZMg(~X@AwybT>pRmvl0u0Hz`o|`KhrN{Q1l zz9y!-`SKQuK87E<3@D^mrDb4N+ZZT!q$b2@fJT%W&(V92(v?e+=lwoC`(gKT-6z7^9gufXl!Nee*#e+}WjzEKoq+NR^2k?EzWsJIy0On}+XPO+HtN zG+W*FWCI?BSqi0qnDo8rt{wrrZzJEacog|U$@q%sVGvO&pBCqIG@fkHA+OSoZ6t1wXY>g>XZBCpQXFP~UI|SkyUjQ0SHSLr-VP zi6(3}m5VZ}`^N$>$+E8qR!kfxbbY+oGyp<^hj5RQ2VD&fj;G{&z1QMeoZd^Es*FqDFA;~D>Sm#Q zNOe5@$|PoOZaQrExd?bPKQnDKKbs!4Ry|S8xhqN~U|GJ5H-e955!hTElPbGkFcBOL ztZW_QkVCna0Suun!oqkKE6@5O8S0C*z(|cyFv^7Q-H;?2N{)`<=NRG!{?g@baO=tv zkZZBm(Il@|Vpgu=3LK5(^Ylw-i+mu?(v)hA!^*RZx(*okZsS8+`J)E()q+;DW1SFq zkV;M8xguSU%=6)iV>JwZI~XS74|pWRw|t(t>*bU*0?BB!4qpy zhx-_8aS7iq3mbjgn3<&U;wOvV9YTl2Wq617YY*kb4v}D~ElG@K-QfMk%_ZUY%iqI< zF!vKw%ZDo-2+!Hq*EY7HIEPicfAs737d`0gm|{wQ4p=)t5giP+L%xun@56;PQnFEphyUlAI%A zSPer)&z_u@mw3W*LZT z9GnVeOG)%)G)DO#| zKi_}F->SL)@SXnLTsWfJ7`5REqA^ShRQPhx$vw9`vO*HA+9C}Zx+`6knwu*VJD4sfNTPr5;NQsah z<86$^hM|V;F9_^2dJ5UD?1pfT_nWBNhX5YYvVWTSUD=w;@S`Q^&kMhICRP8Gos@L_ z55RjvSA7Hi6IIw-{^xa{5*H`>pK;lof_w9`W%tgz9qmo+dh*uOo+f-pN`D@KwEexf zmWA?eoqRsmJ5}8fjUk~VQKx}Xq2k+4r(fe<-O*y;d+1cq9Qhk)86jws9^Z(=6DkY;+WoE2co|e-Y4*qNg!m7dcF+9*d(ggKdy+8BF>5Oy zdNOy^oTm$v85Jlbb}M!eGp8yOE7ExMcajSstr@ymSy{_lx^Y>%!N5H8^{08T9Vd)A zA={j>USGIj2L2O>HqS~Kcb==ed7@r!lEkPTA_bl+hoMlGHr)guezkbj(lE15@A=JC z+V@@c^;|e^+t{ENk%RuQFT(#geceqSM)2T8mT{)*8R@A9c&+IO8@)dr*lL-W$>=%i z-q_#W5TIt#GmXg_{AwPzwobrG!(LDn9FsLEZB9z^xmwI&pW;(RY-uI=uqMOL$7Cm{ zebT--fQxst7?^q914?|(HI33DT4Vs}sl60=ko`T|Pch&YM0u|BPXpAqQX{lwI@U>C z3}yKsAv>TB>4p1it%55q;e9^IM4SN0=1Uc0ZGcwnd~ly>q|w6sVR7F+zazOf)H~SV z4NMTDGa={w)X2vDXo$=Y&)gy`kj2l4#+Rz)+dKUaV6`Ww6po@11S}o|aw1918^RP6 zf@rpT1+mLeeN9v~BQ%Hyi1v$`DY1KQ9mr#l3*Ichf6!LvmP;dT8pt6wLC_I%A3LHg zb3L{q8ar8-c%qGIn2fn-K(OY?;h$pb4q3?+G2{VOi?qsO-v2gojm0o!1H#$Q9LOym)d zYu7o&PDqS2)pvFSn!+?bt6k2*f&xYFE@s8GXXE6`VOnrdb{Xfcq6CyFSA=i4%tGM+ zm~MzMc{imJHt&{Gf}}qJHSD`^&*4MQMfaKC!6J%a`>oVSM&n5cO zAo~0v<0ykgf61Zp-b@4C(>c3N zj6En1?9!7|66lNe1uVhWL6e)ldq!|sO#NON*JzuYUb6|iC|$#?RZ6FBS#%Y`{L%7P zg{-fsIuw#1t^5ZWYV~JzseE?E;MH#>B2BsBwr>UGpnjlO2$FAiKwtPFf&?G}tABcW zN6akKx9;x+k|%EbcQ?gxS(hjv9gU{{M$k&)e@NTAG}pIoJjZ+No5Z0Ja1o8?LwksD z6UKgu&`di$aF8bHXSqDhV5k9{f59LS2dR3I-LCgZ@iHJJMT(tv0KiY)+HD`gtjqQ# z*%ulT=^oNm^$p+FM_eJ8JpOWPOj!b;B+a*nl<(pJET|o_VAC2X)o>GtM~r>GAEBC7 zsj%Oarv4{0ed;t{Zr*HEKHa)g^k06&VW@7=^FQU!>LQoV_6?>gy@c|PDLfR%D*`zy zSoD6~Lt%7T{Mh;ST&Di=OH(Tn?PUJX(3$u%{XcMg?jv_-bA*gBlAEDI8Ji4aZgS?n z=8nn{mF5~#F-i=ZE4M}E$g#P~Q8{yLM5rk8RsDYZ6ZUv~9-qBG@7L?~d_E@H7)TL_ z#91S+ucgQzhs{W+BucGBEC=uOx*TqB22GI4nNEBNL)mSVDcKK~pyMCn%kVZzvQpt{ zx_QfQKIN@q-VA)sFtWYB*WjP=_OsaTZi+Rf^!|Iuy{m$;%VKTUbn#&AprhbA-3#Z$ zyJi?-ZVM=-D~C$apN0Q~t~A~E5}Qh~{eIv)6_>}qxKJf2Tsa!?E_gKL`KPTjk{yi3 zvbgHw>wb@HPPWa_tzQdX4;`~ro~QS}_Ws-SPu)F5<+tqG==}@f=YBXptgrfhFEgzA z>FCR@LN~mi!S$K?DcIW6vG4!VZY5Ea`s?!-mK*Lpm9DCg+XnE-v*B+FyZw>)`|6*L zTZ+x^*URGX1A9DqR!wJn6x4OboIZRT5)HZVKL8)9COrH!Ylr+l!1Jw_HVtER$o~Kj zJm0gcY|dS+*-`m0NZ$qq9Z;2SyLN`yRF|}ngOS@_JJ(+x#*BP*tT8uw+0sT>d(_$* z6HZ51V3(Bls3kTCuM4Yn)PgkL{hmtR!KX=3$}|0)aP{a%u;a(&IyAiR9q_6RVURvN2(Snq!LjK0STof>`OPCXI+gFqCaB`mi{dJosotuBp!c_oV z`Xjgj!%cbbb)K)dJmudY1^mv?8z}stRGr`eH`awc`7~}FTm zB(+^7`>KT4*gVP_?q+p;|d(W?}vb zK;tMYdE$pQEc8{B>*N6b50vi!mQZ{F*3hn@;cy~DhFS%XKtiaa8#Z93`Umv%bE_`Q4b zoj|ik7%ueuIf^MQb91Xu){9E0HYcxLiy!xRmCW!*#fH(){r&AgqfU1>+PA+gAn>%l4djAB*Z_P z`0>vydQB1rY3&Ir{Tjj%&Mn(C1ypf33Ri3SX(k7SF(-yk0)J*wOKsepJ~aN<9w}_g z5nO2MwzjOCA9);*u8fh%JiZ^su9^I23BbeI_MMxsp(D-f5o@u3euRY$VrrE!d01h5 zg4e)@u$`j_*ZVov-nwa7ykDY3n)@b%$8)2qd>a?suHvLm5x~U&a>PjtF7UUtcQFS~ zx<%5Am!gE_DadsR!viu(E3dVss9_xX&SRnkNr!4v%FFlgT7&k_n&TFOrtYaFpyYZo z8B_5^j_!r;tJ<87$~T`tQe&^Lz3A+_etvp~mI;wI&y9b9Q4Eqz4wRpMw0f8w)A2#X zfP)D^4_xCx?P*3jRvt z8uoTr#EpoIca-&9wT}d3!}wI(lK$4~Ag8Y z9lGiFtkM1YyEpA;w6w4CzW{oqJ?`cFrj~9+8`?RWC>vJ{IgLa+QfPGh=zASbHRn%1 zx;$H0zwO#7?WRp2OdCR3P}K9P6m2X%QwikQ=KhdaW2`q0X3V}?ifE@Yq7tuI&M@5D zTheA{Y70k9fvHI4wN#u>S47gJOkssVsxIzZ=&4(&8i$&_@%ah*tE@07%7vp`*emqC z?k(BapVqD~dbxey?qWbdX_vxoi17==*|H9=rE|v}Jm%f0#=P+iRsP574TNv$+*T$W zC74RkOx%yUC+*x7KqT}ZLv^2u%Bf5qA1&*k5{jS9xFpvOq8)N(oWYUc`BuW!nUI({ z5^#H`&1&EBcQT1X{Hag-CuI6_LjcBC2Qn!N0&~k>h)H|r5OGN^h|1||+Kct{PL)t3 z%2*ObqBLKjjMiR7Slmx_WkE`O06xS&6nI}NKR+?0CnJ|vFmY{}TU-^VFRm)x1-w%V z{HO7or^X|AhsEd1C{_-^VhPO>+b5xVQdWgRs(+y>|>>q9Y)5-p=_$VJIBH(2jxLAX+WGz1}ilg z=<%STj$3rQ^5z=kyV{bQD3nxi6GL(KvBU zF!vIZk?EJl8e$0j41cQpl+XJN-9A**4l!}XFK7fH{D`L<4m*@nmh2y)g8g_dnnIHO z(>~$2z+yT>Hjug9nQ)BDhl@4ApPv002*xZ5v2n0gSqOkoNEyhsSo{ZO)l2*EQ3(M_ zaEsV;pw#esDt%9QiG+SbzN>7oty|sdb7ir!?T{ZMRK47`r^EMN3CqX{{&aNI-a1@( zEM}E1!ZtErmE}$C1BcV(*V&S!SC_L)b9SDg*&zN=nv2nSFWH8efPEl4Dv|xwt%|#s zC%XHf67GUDnN1T7qThW7fzgh8=L{Jk5JUcFB9$jsBp}q%et~i z{41Bv>TC^B`-g<0N{KrUt~+EAQZBlZP(;O%Li8i`Rh2*1N#^$UwuIr;lTwrT_0uEcHP_*?!MzMB&*rgN#>jw zgnJ|-Ev568eLM(YTs82!`!|kso*O`!z;eIPpoBfnbubgb??8}G7d~G=f8l-623daY zl>u5p=Gi}}p2sQ%OiWq@P7tO$bzYW+uD$ee>o}_u6_x2u|M_>8vubwHm+Glp`FS38 zDcd$u{IcL5lhLzZc}FzpC(rNa0}|jHfE7M5O;hkbuc61xmDNU^#NGG;6_5g_R_%?H z2&G=mm`RSy7pQtW`&amm6H*<&DGU_P_ZD_1sZ(OgrDb{L^-LD}a#Gc={+)8^_@?Ot zm)VpN6G|K&P0J=ACE_q45Iu>VN@&r{b)AjUD2F=bwcXKOnAnM`z6G?f2o``W!H1K0 zhrSoKH`c|#?FntfTMNPdhu^Dz2UcC;EEaA2=+QK{cBiOS_82N&R@dtUxfms^NBSLH zp?GJQr~p{lzaknIMPbim5HtI;*ihV765qlD_?B4sSaEuXwm~WkQ1HGqYO~^}M5!Jz zU?C*GU>!7|@l72D4pb5PaD1P$11_`@>XvN-51z$m*c1JiFi?8}Q^S94{S1Bavo7hD zE^>U(2b!#;Zd624K5l?W!1R(>$go!n9mkacHGTsNt6A9)t;SMm1jtY3X<({VcT2r} z$@vv+N-qBj2VtAjA?5s(tV?^ndVRO6n{S2Z%~KKw&S4qs(NgP7fW&;#$m$r1X&o+iC&31Uq{MCy z#cnOk$2dmEdjE<(T4bWXS%idJI+ed{Q0dXhK{({;5U2s-Yphkv4||7)Z}du!Vn2E< z3t#U4d(LXEvMtMwA?d1k*K!}5aN&`>GZ0+^1CD@9ELcWA3H#ZdhIfI|V#^m7>||5| z_Ip7PW4qYiP1uoBx_DarT^i4*=UY+ggFYTEE1$L$Du*Gk7Toe+!O#^bDNh8LG3ppv z$IfY~pL)L)dSJdHb*B?4?W!jRTsH9T)`)FYGwUP!uY2@pL}Sp>X{6wZo)gi#((MOM zs)QJR=vEl6<_UNEMlW@`)Gh7(R`}qhK)%q-`Mi9_16~kge=zTdz(#!=E0|fIcYL8i z!mt5yIa2GN`LzlT%UVi!h>SIk?VqNJ?V+tWIp+R5jmt0IZc_4;5JqWL7qN%TfsXF$0Ws~mJ#Ic{2Y29p6S=cHnb=*H(|Dv z_HbJ~WyL!e5W`C0g6b@__Q52ht#v0d1Ln;Mg^v!b)U(r~i$3Y+^kEn7 z%iQQ>hibvmhC?o`nh?AYV}!%lQN{<(18|&5tT*xbQuPAE8FF*!I0C^#}Ons<{Je)#N&3ZBoi4!R~y5D~(2`4{6k}N><*ve7a z3w+AV_g)iQP>~pqwk2fC(L6H_kDwd12ZIl738X4FbXaOy4;dk{8q=0#s#Pwu;j0Pb z)DQ;b8A}WLE1w(u? z9KEs>5K`wZKtW!0u3Z-6=#wU&flI$_4*b4|4|a@Y{A)(WL`oo0J%P66;ow=y6dH>= zolw|)Pj9af^`AY3)j>ZAKqIe*=mdM|w}Drlv&bzO!6DW2?}Yk$wWQxgvbh%h>Ee;s zmj+2^@&8%GIX>KIX$D+fO$+p{zzP}4r(Tf<4rs9?=e*UASIv2O_zffh3^5+TOc{Z* zz9Ydh(43=M4VlptI!{jrE6O73WT5GpW^7qkyzBDgB}RG~cp)K_u%48r zz(g;-ZfKa3`y!o~j=K4i=SN+A-9#)CZBK%5lT{`hYLrXS8=LrA3XGLc>9l#ayOqx5 z7}mR7f)};*2j|+cYeK*GwppUl@qFtX*z7nvpS~Q;1;O9|#Akm| zm)8ZJEt1eacb$GnE-& zw?LIsU?D?|1@sM~Q=@Fmx}&@wzFKOb*V4sXPw(f{BccY&THDwWqgdW$Q}9`Lo@}UuajU9K`BnS8F z?i7U#7h};a_PCjCOiItuMp0#z`_|a|Y7Jk*zbm(n0bI9Xef^mp#C&760vb2?{t5$r2Kd!o8){J4rXE3?4wB9ge3OzMLkKgttO?;DT_drp zCqJ+v+=M|2x+J~L6w+uk1|DUlH=NV|e$XLQ7NkN)n*6LoN0SV{)WQFBrhFE6co?#) zJN5dLTUWhI#e@Ej#b-6K?YD2a+tf`gPA=OPuFiIEeSGvg`N!p<>pXt~YJN}l8ZG?~ zkoCu=iZtG`*e5|6@A>Z*!^>u{VVCqXA^uTu;kVJgq)=^3^=MBErY)!T@X3!8@V~{g zd@QE&ZVzZp@?QT_koxN2$9v42=hHo&0+N##hp4NrPVTkq4>(Vs`m4O37^%(_Z4;dg zjft53txDdCe_7I&FAQDZ;8(mWX>1D%6Hq%l+UCuULRpp_|JQi0cEQtiJc0CieyK0U zkGyrHGxvFJ$t>#Z)c(}|EUT@%v25X5Sq>6iE#&e?QybMKV{%tfZi$qGv6f&=YbDU; zLqB{s`I-sE_Q+#DfnbD>rMyDpUL9>Y_WB%bLfZm_NGm( z8=5GEL{&-T?F6w~0U1Opm32ri4C7CZy`fI2IZ%0!7>TAT?_s+ey1^>Qy6LjB1qBhaN@%O{JuZK6Q zOO;FFa)MW1{jjLlE+ygJZN=_a&f@QAd<~qBh|thDGt#aK)wSLD9X|g4R{dQCOwgEB znxA~f-)%#G`DUPCmeK>B?30(&4WSN6Jbx@>t6}Adt^eH`0tfu+q(EiHC)nSaWU#JLQlL{3j{t_k*fqq zb>!-&-g&$#k#&<1xb;B2ugnkA8?nw2BwHlND6iRAHxWkq(KQnUM1cFw#UOB;`Xw~) z$U19DI;-8UEj?m4-X>gT3%mUHx@qrl~acO+m@<#pT z2$644-ad2Qu)-Oc)1A%3JZJBL8o#RgE?B9)`^9;ddVV6BHl%43jpkH2tBuy~n=tSh z*aLGLXHDa=!Z1Y+2)7u9Z(dw%4r8Yez?!lu#-Qy<8Yl5X+?m$H*mYFgmSf5+$td6c zu772sV;Pl#SQ;%3c}JLzZ_#T%qiQik0>N+ZY@zfZ5b@_kGPcoaJ?%8+&fv0WOoQ)KMMZg;Le?a8w$5kW31w2WdI3vVsWXc8+xuL= za@$8cIWi|Il;`o+zMx5}ox99k!WuC^rCqJgwd+K+8o!ZlTW~o?$(Q4t)ga>d{tb*k zZ>oM>=W-thwh6o*wO(Kjr!oqP<=NT}%60l=I0`dx0�Zx~4>e;V+J;VeBQ}Gn{N` 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 chooser = new SendableChooser<>(); @@ -51,6 +54,8 @@ public void robotInit() { SmartDashboard.putData("Auto mode", chooser); driveCommand = new DriveCommand(); autonomousCommand = new FollowLineCommand(); + + } /** From 414d20f54b09aeaa94eb022a54dc057599b5b44a Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Mon, 4 Feb 2019 19:59:50 -0600 Subject: [PATCH 058/131] Vision stuff --- src/main/java/frc/robot/OI.java | 4 +- src/main/java/frc/robot/Robot.java | 13 +- src/main/java/frc/robot/RobotMap.java | 8 +- .../java/frc/robot/commands/DriveCommand.java | 10 +- .../frc/robot/commands/FollowLineCommand.java | 241 +++++++++++++++++- 5 files changed, 252 insertions(+), 24 deletions(-) diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index 9eb73b9..3fc81d4 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -7,6 +7,8 @@ package frc.robot; +import frc.robot.commands.FollowLineCommand; + /** * This class is the glue that binds the controls on the physical operator * interface to the commands and command groups that allow control of the robot. @@ -20,7 +22,7 @@ public class OI { public OI(){ xbox = new Xbox(0); //ps4 = new Xbox(1); - + xbox.getAButton().toggleWhenPressed(new FollowLineCommand()); //attack3_L = new Attack3(3); //attack3_R = new Attack3(4); diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index bf0b42b..8e835ba 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -39,7 +39,8 @@ public class Robot extends TimedRobot { public static FollowLineSubsystem followLineSubsystem = new FollowLineSubsystem(); UsbCamera camera; Command autonomousCommand; - Command driveCommand; + public Command driveCommand; + Command followLineCommand; SendableChooser chooser = new SendableChooser<>(); /** @@ -54,7 +55,7 @@ public void robotInit() { SmartDashboard.putData("Auto mode", chooser); driveCommand = new DriveCommand(); autonomousCommand = new FollowLineCommand(); - + followLineCommand = new FollowLineCommand(); } @@ -144,6 +145,14 @@ public void teleopInit() { */ @Override public void teleopPeriodic() { + if(XboxMap.runFollowLineCommand()){ + driveCommand.cancel(); + followLineCommand.start(); + } + if(XboxMap.interruptFollowLineCommand()){ + followLineCommand.cancel(); + driveCommand.start(); + } Scheduler.getInstance().run(); } diff --git a/src/main/java/frc/robot/RobotMap.java b/src/main/java/frc/robot/RobotMap.java index 3b2cd5a..1a3c18a 100644 --- a/src/main/java/frc/robot/RobotMap.java +++ b/src/main/java/frc/robot/RobotMap.java @@ -14,10 +14,10 @@ * floating around. */ public class RobotMap { - public static final int LEFT_DRIVE_PORT_1 = 2; - public static final int LEFT_DRIVE_PORT_2 = 5; - public static final int RIGHT_DRIVE_PORT_1 = 3; - public static final int RIGHT_DRIVE_PORT_2 = 4; + public static final int LEFT_DRIVE_PORT_1 = 3; + public static final int LEFT_DRIVE_PORT_2 = 4; + public static final int RIGHT_DRIVE_PORT_1 = 1; + public static final int RIGHT_DRIVE_PORT_2 = 2; } diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index a265ef7..6c99936 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -53,7 +53,7 @@ protected void execute() { // if(attack3Map.turtleButton()) { // turtlemode = !turtlemode; // } - if (runFollowLineCommand) { + /* if (runFollowLineCommand) { System.out.println("fuck me"); if (!fLC.isFinished()) { if (XboxMap.interruptFollowLineCommand()) { @@ -66,7 +66,7 @@ protected void execute() { } else { runFollowLineCommand = false; } - } else { + } else { */ //System.out.println("We fucked"); double speedLeft = XboxMap.left(); speedLeft *= -1; @@ -107,13 +107,13 @@ else if(!brakeState){ //Check for follow line command call //The runFollowLineCommand() is called when the A button is calledd - if (XboxMap.runFollowLineCommand()) { + /* if (XboxMap.runFollowLineCommand()) { System.out.println("Cyka Blyat"); runFollowLineCommand = true; fLC = new FollowLineCommand(); fLC.initialize(); - } - } + } */ + //} //Putting Data up displayData(); diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index fd26d81..afb334e 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -1,13 +1,9 @@ -/*----------------------------------------------------------------------------*/ -/* Copyright (c) 2018 FIRST. All Rights Reserved. */ -/* Open Source Software - may be modified and shared by FRC teams. The code */ -/* must be accompanied by the FIRST BSD license file in the root directory of */ -/* the project. */ -/*----------------------------------------------------------------------------*/ - package frc.robot.commands; +import edu.wpi.first.wpilibj.PIDController; +import edu.wpi.first.wpilibj.PIDOutput; import edu.wpi.first.wpilibj.command.Command; +import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import frc.robot.ConstantsMap; import frc.robot.Robot; import frc.robot.subsystems.DriveSubsystem; @@ -29,6 +25,226 @@ public class FollowLineCommand extends Command { //stage one variables (Vision Stage) protected boolean stageOneComplete; + + + //Checks to see if we are running rn + protected boolean runningFLC; + + //Maybe this will work variables + protected double startEncoderAvg; + protected double encoderFinalGoal; + + protected boolean firstRun; + //Other stuff that we need + + + //moar variables + private boolean overCompensate = false; + + protected double estimatedDistanceToWall; + + private double lineAngle; + private double lineDistance; + private boolean lineRightSide; + public FollowLineCommand() { + // Use requires() here to declare subsystem dependencies + requires(Robot.driveSubsystem); + } + PIDController drive; + PIDController turn; + PIDOutput output = new PIDOutput(){ + + @Override + public void pidWrite(double output) { + + } + }; + // Called just before this Command runs the first time + @Override + protected void initialize() { + System.out.println("FollowLineCommand init"); + lineAngle = SmartDashboard.getNumber("LineAngle", 0.0); + lineDistance = SmartDashboard.getNumber("LineDistance", 0.0); + lineRightSide = SmartDashboard.getBoolean("LineRightSide", true); + drive = new PIDController(1, 0, 0, driveSubsystem.getGyro(), output); + turn = new PIDController(1, 0, 0, driveSubsystem.getGyro(), output); + drive.setInputRange(-180, 180); + turn.setInputRange(-180, 180); + drive.setAbsoluteTolerance(ConstantsMap/); + + } + + //this is to be called upon initialization and whenever the button is hit twice + protected void setupForRun() { + //turns on runningFLC + System.out.println("we made it true"); + runningFLC = true; + + //setup stage 1 variables + stageOneComplete = false; + + //maybe + firstRun = true; + } + + // Called repeatedly when this Command is scheduled to run + @Override + protected void execute() { + + lineup(); + + ///System.out.println("We execute"); + //approach(); + + } + + private void lineup(){ + + + } + //New method relying only on the sensors (a bit simpler than doing the calculations) + protected void approach() { + //Triggers when we have a camera on the sensor + System.out.println("fdjskal;fjkdsajfkl;dsajfkld;sajfkl;dsajkfldsjakl;fjdsakl;fjdklsajflkd;sa"); + double frontAverage = followLineSubsystem.getLineAverage(1); + + System.out.println("approach begin"); + + System.out.println("raw sensor data:" + Arrays.toString(followLineSubsystem.getRawData())); + System.out.println("t/f sensor data:" + Arrays.toString(followLineSubsystem.getLineData(0))); + + if (frontAverage == 0 || frontAverage == Float.NaN) { + driveSubsystem.stop();//this sets both speeds to 0 + + System.out.println("killededed"); + return;//Kills it because the sensor is either not working or off of the tape + } + + if (firstRun) {//this sets up the first few values we need + startEncoderAvg = (driveSubsystem.getRightEncoderDistance() + driveSubsystem.getLeftEncoderDistance()) / 2; + encoderFinalGoal = startEncoderAvg + 16;//16 in inches + + firstRun = false; + } + + System.out.println("Sensor outputs: " + frontAverage); + System.out.println("Encoder Goal: " + encoderFinalGoal + "\nCurrent Encoder Avg: " + ((driveSubsystem.getRightEncoderDistance() + driveSubsystem.getLeftEncoderDistance()) / 2)); + + if (((driveSubsystem.getRightEncoderDistance() + driveSubsystem.getLeftEncoderDistance()) / 2) < encoderFinalGoal) { + //Doing the turning with very little error so that we never go out too far that the robot is completely off the center line + + if (frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER + ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH) {//We are way to the left of the sensors, so we need to start turning (right) + System.out.println("we should compensate left!"); + overCompensate = true; + + driveSubsystem.tankDrive(-0.5 * ConstantsMap.APPROACH_SPEED, 2 * ConstantsMap.APPROACH_SPEED); + } else if (frontAverage < ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH) { //Turn Left + System.out.println("we should compensate right!"); + overCompensate = true; + + driveSubsystem.tankDrive(2 * ConstantsMap.APPROACH_SPEED, -0.5 * ConstantsMap.APPROACH_SPEED); + } else if (Math.abs(ConstantsMap.SENSOR_AVERAGE_CENTER - frontAverage) <= ConstantsMap.SENSOR_AVERAGE_TOLERANCE_LOW) {//We are within the tolerance, so we just move forward + System.out.println("we have fixed it, so no more overcompensating!"); + overCompensate = false; + + driveSubsystem.tankDrive(ConstantsMap.APPROACH_SPEED, ConstantsMap.APPROACH_SPEED); + } else if(frontAverage < ConstantsMap.SENSOR_AVERAGE_CENTER + ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH + && frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER + ConstantsMap.SENSOR_AVERAGE_TOLERANCE_LOW + && overCompensate) { + System.out.println("compensating left!"); + + driveSubsystem.tankDrive(-0.5 * ConstantsMap.APPROACH_SPEED, 2 * ConstantsMap.APPROACH_SPEED); + } + else if(frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH + && frontAverage < ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_AVERAGE_TOLERANCE_LOW + && overCompensate){ + System.out.println("compensating right!"); + + driveSubsystem.tankDrive(2 * ConstantsMap.APPROACH_SPEED, -0.5 * ConstantsMap.APPROACH_SPEED); + } + } else { + driveSubsystem.stop(); + System.out.println("We are bad"); + runningFLC = false;//We have completed the process + return; + } + + System.out.println("approach end"); + } + + // Make this return true when this Command no longer needs to run execute() + @Override + protected boolean isFinished() { + System.out.println("we are really dumb " + runningFLC); + return !runningFLC; + } + + // Called once after isFinished returns true + @Override + protected void end() { + System.out.println("FollowLineCommand end"); + } + + // Called for manual interruption of command + protected void kill() { + runningFLC = false; + + System.out.println("FollowLineCommand kill"); + } + + // Called when another command which requires one or more of the same + // subsystems is scheduled to run + @Override + protected void interrupted() { + System.out.println("FollowLineCommand interrupted"); + kill(); + } +} + + + + + + + + + + + + + + + + + + + + +/* + + + +package frc.robot.commands; + +import edu.wpi.first.wpilibj.command.Command; +import frc.robot.ConstantsMap; +import frc.robot.Robot; +import frc.robot.subsystems.DriveSubsystem; +import frc.robot.subsystems.FollowLineSubsystem; +import java.lang.Math; +import java.util.ArrayList; +import java.util.Arrays; + +import com.kauailabs.navx.frc.AHRS; + + +public class FollowLineCommand extends Command { + FollowLineSubsystem followLineSubsystem = Robot.followLineSubsystem; + DriveSubsystem driveSubsystem = Robot.driveSubsystem; + + //stage one variables (Vision Stage) + protected boolean stageOneComplete; + /* //stage two variables protected boolean stageTwoComplete; @@ -61,7 +277,7 @@ public class FollowLineCommand extends Command { //stage six variables protected boolean stageSixComplete; - */ + //Checks to see if we are running rn protected boolean runningFLC; @@ -123,7 +339,7 @@ protected void setupForRun() { //stage 6 stageSixComplete = false; - */ + //maybe firstRun = true; @@ -137,7 +353,7 @@ protected void execute() { /*if(limit switch hit){ setupForRun();//reset for next run somehow mark that we are done, maybe interrrupt? - }else{*/ + }else{ // if(!stageOneComplete) { // stageOne(); // } else if(!stageTwoComplete) { @@ -288,7 +504,7 @@ protected void stageSix() { System.out.println("stage 6"); stageSixComplete = true; } - */ + //New method relying only on the sensors (a bit simpler than doing the calculations) protected void approach() { @@ -387,4 +603,5 @@ protected void interrupted() { System.out.println("FollowLineCommand interrupted"); kill(); } -} \ No newline at end of file +} +*/ \ No newline at end of file From f7026502c14720518ba54d6c89932cb782014bf4 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Mon, 4 Feb 2019 20:00:04 -0600 Subject: [PATCH 059/131] visionnnnn --- src/main/java/frc/robot/commands/FollowLineCommand.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index afb334e..c914734 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -70,7 +70,7 @@ protected void initialize() { turn = new PIDController(1, 0, 0, driveSubsystem.getGyro(), output); drive.setInputRange(-180, 180); turn.setInputRange(-180, 180); - drive.setAbsoluteTolerance(ConstantsMap/); + drive.setAbsoluteTolerance(ConstantsMap.); } From 4cf18ab824fa0cf3beb7f0b37a25cdf615bf8205 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Mon, 4 Feb 2019 20:15:08 -0600 Subject: [PATCH 060/131] rough line lineup --- src/main/java/frc/robot/ConstantsMap.java | 3 ++ .../frc/robot/commands/FollowLineCommand.java | 42 +++++++++++++------ 2 files changed, 33 insertions(+), 12 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 0c285e2..6efc588 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -11,6 +11,9 @@ * Add your docs here. */ public class ConstantsMap { + + + public static final double ROBOT_WHEEL_RADIUS_INCHES = 2; //inches public static final double DRIVE_ENCODER_TICKS_PER_ROTATION = 4096; //ticks public static final double DRIVE_ENCODER_DIST_PER_TICK = ((ROBOT_WHEEL_RADIUS_INCHES * 2 * Math.PI)/(DRIVE_ENCODER_TICKS_PER_ROTATION)); //inches diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index c914734..98734a4 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -62,15 +62,22 @@ public void pidWrite(double output) { // Called just before this Command runs the first time @Override protected void initialize() { + driveSubsystem.resetGyro(); System.out.println("FollowLineCommand init"); lineAngle = SmartDashboard.getNumber("LineAngle", 0.0); lineDistance = SmartDashboard.getNumber("LineDistance", 0.0); lineRightSide = SmartDashboard.getBoolean("LineRightSide", true); drive = new PIDController(1, 0, 0, driveSubsystem.getGyro(), output); turn = new PIDController(1, 0, 0, driveSubsystem.getGyro(), output); - drive.setInputRange(-180, 180); + drive.setInputRange(-180, 180); + drive.setAbsoluteTolerance(ConstantsMap.PID_PERCENT_TOLERANCE); + drive.setSetpoint(lineDistance + ConstantsMap.ROBOT_LENGTH/2); + drive.setOutputRange(-.05, .05); turn.setInputRange(-180, 180); - drive.setAbsoluteTolerance(ConstantsMap.); + turn.setAbsoluteTolerance(ConstantsMap.PID_PERCENT_TOLERANCE); + turn.setSetpoint(lineAngle); + turn.setOutputRange(-.5, .5); + drive.enable(); } @@ -90,18 +97,29 @@ protected void setupForRun() { // Called repeatedly when this Command is scheduled to run @Override protected void execute() { - - lineup(); - - ///System.out.println("We execute"); - //approach(); - + if(drive.isEnabled()){ + if(drive.onTarget()){ + drive.setEnabled(false); + turn.setEnabled(true); + } + else{ + double output = drive.get(); + driveSubsystem.tankDrive(.5+output, .5-output); + } + } + else if(turn.isEnabled()){ + if(turn.onTarget()){ + end(); + } + else{ + double output = turn.get(); + driveSubsystem.tankDrive(-output, output); + } + } + } - private void lineup(){ - - - } + //New method relying only on the sensors (a bit simpler than doing the calculations) protected void approach() { //Triggers when we have a camera on the sensor From 6b181cf4fef92129ae31bd653b831eee52c75ceb Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Sun, 10 Feb 2019 17:11:38 -0600 Subject: [PATCH 061/131] Drive stuff --- build.gradle | 2 +- src/main/java/frc/robot/ConstantsMap.java | 2 +- src/main/java/frc/robot/Robot.java | 5 +- src/main/java/frc/robot/RobotMap.java | 8 +- .../frc/robot/commands/FollowLineCommand.java | 46 +++++++++-- .../frc/robot/subsystems/DriveSubsystem.java | 77 ++++++++++--------- 6 files changed, 86 insertions(+), 54 deletions(-) diff --git a/build.gradle b/build.gradle index 9128ffc..2a7ec8c 100644 --- a/build.gradle +++ b/build.gradle @@ -1,6 +1,6 @@ plugins { id "java" - id "edu.wpi.first.GradleRIO" version "2019.1.1" + id "edu.wpi.first.GradleRIO" version "2019.2.1" } def ROBOT_MAIN_CLASS = "frc.robot.Main" diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 6efc588..a5f5440 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -17,7 +17,7 @@ public class ConstantsMap { public static final double ROBOT_WHEEL_RADIUS_INCHES = 2; //inches public static final double DRIVE_ENCODER_TICKS_PER_ROTATION = 4096; //ticks public static final double DRIVE_ENCODER_DIST_PER_TICK = ((ROBOT_WHEEL_RADIUS_INCHES * 2 * Math.PI)/(DRIVE_ENCODER_TICKS_PER_ROTATION)); //inches - public static final double TURTLE_SPEED = 1.0; //to be determined + public static final double TURTLE_SPEED = .5; //to be determined //for line follower public static final double DISTANCE_BETWEEN_SENSORS = 6; //inches diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 8e835ba..0920f92 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -42,7 +42,7 @@ public class Robot extends TimedRobot { public Command driveCommand; Command followLineCommand; SendableChooser chooser = new SendableChooser<>(); - + CameraServer server; /** * This function is run when the robot is first started up and should be * used for any initialization code. @@ -56,7 +56,8 @@ public void robotInit() { driveCommand = new DriveCommand(); autonomousCommand = new FollowLineCommand(); followLineCommand = new FollowLineCommand(); - + server = CameraServer.getInstance(); + //server.startAutomaticCapture("Ground",0); } /** diff --git a/src/main/java/frc/robot/RobotMap.java b/src/main/java/frc/robot/RobotMap.java index 1a3c18a..3b2cd5a 100644 --- a/src/main/java/frc/robot/RobotMap.java +++ b/src/main/java/frc/robot/RobotMap.java @@ -14,10 +14,10 @@ * floating around. */ public class RobotMap { - public static final int LEFT_DRIVE_PORT_1 = 3; - public static final int LEFT_DRIVE_PORT_2 = 4; - public static final int RIGHT_DRIVE_PORT_1 = 1; - public static final int RIGHT_DRIVE_PORT_2 = 2; + public static final int LEFT_DRIVE_PORT_1 = 2; + public static final int LEFT_DRIVE_PORT_2 = 5; + public static final int RIGHT_DRIVE_PORT_1 = 3; + public static final int RIGHT_DRIVE_PORT_2 = 4; } diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java index 98734a4..0d5a992 100644 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ b/src/main/java/frc/robot/commands/FollowLineCommand.java @@ -2,7 +2,10 @@ import edu.wpi.first.wpilibj.PIDController; import edu.wpi.first.wpilibj.PIDOutput; +import edu.wpi.first.wpilibj.PIDSource; +import edu.wpi.first.wpilibj.PIDSourceType; import edu.wpi.first.wpilibj.command.Command; +import edu.wpi.first.wpilibj.interfaces.Gyro; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import frc.robot.ConstantsMap; import frc.robot.Robot; @@ -64,20 +67,45 @@ public void pidWrite(double output) { protected void initialize() { driveSubsystem.resetGyro(); System.out.println("FollowLineCommand init"); - lineAngle = SmartDashboard.getNumber("LineAngle", 0.0); - lineDistance = SmartDashboard.getNumber("LineDistance", 0.0); - lineRightSide = SmartDashboard.getBoolean("LineRightSide", true); - drive = new PIDController(1, 0, 0, driveSubsystem.getGyro(), output); + driveSubsystem.enableBrake(); + driveSubsystem.resetEncoders(); + driveSubsystem.resetGyro(); + lineAngle = SmartDashboard.getNumber("LineStartAngle", 0.0); + lineDistance = SmartDashboard.getNumber("LineStartDistance", 0.0); + //lineRightSide = SmartDashboard.getBoolean("LineRightSide", true); + PIDSource source = new PIDSource(){ + + @Override + public void setPIDSourceType(PIDSourceType pidSource) { + + + } + + @Override + public double pidGet() { + return driveSubsystem.getLeftEncoderDistance(); + } + + @Override + public PIDSourceType getPIDSourceType() { + return null; + } + }; + + drive = new PIDController(1, 0, 0, source, output); turn = new PIDController(1, 0, 0, driveSubsystem.getGyro(), output); drive.setInputRange(-180, 180); drive.setAbsoluteTolerance(ConstantsMap.PID_PERCENT_TOLERANCE); - drive.setSetpoint(lineDistance + ConstantsMap.ROBOT_LENGTH/2); - drive.setOutputRange(-.05, .05); + drive.setSetpoint(lineDistance); + System.out.println("Set drive setpoint: " + lineDistance); + drive.setOutputRange(-ConstantsMap.PID_OUTPUT_MAX, ConstantsMap.PID_OUTPUT_MAX); + turn.setInputRange(-180, 180); turn.setAbsoluteTolerance(ConstantsMap.PID_PERCENT_TOLERANCE); - turn.setSetpoint(lineAngle); + turn.setSetpoint(90-lineAngle); turn.setOutputRange(-.5, .5); drive.enable(); + } @@ -104,7 +132,9 @@ protected void execute() { } else{ double output = drive.get(); - driveSubsystem.tankDrive(.5+output, .5-output); + System.out.println(output); + + driveSubsystem.tankDrive(output, output); } } else if(turn.isEnabled()){ diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index 8bedb9f..38c2394 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -12,9 +12,12 @@ import frc.robot.RobotMap; import frc.robot.ConstantsMap; +import com.ctre.phoenix.motorcontrol.ControlMode; import com.ctre.phoenix.motorcontrol.FeedbackDevice; import com.ctre.phoenix.motorcontrol.NeutralMode; +import com.ctre.phoenix.motorcontrol.can.TalonSRX; import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; +import com.ctre.phoenix.*; import com.kauailabs.navx.frc.AHRS; import edu.wpi.first.wpilibj.AnalogGyro; @@ -22,14 +25,14 @@ import edu.wpi.first.wpilibj.Solenoid; import edu.wpi.first.wpilibj.DigitalInput; import edu.wpi.first.wpilibj.Encoder; -import edu.wpi.first.wpilibj.command.Subsystem; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; + /** * */ public class DriveSubsystem extends Subsystem { - private WPI_TalonSRX left1,left2,left3,right1,right2, right3; + private TalonSRX left,leftSlave,right,rightSlave; private AHRS ahrs; @@ -38,26 +41,30 @@ public DriveSubsystem() { System.out.println("Drive Subsystem Init"); //Instantiate motors - left1 = new WPI_TalonSRX(RobotMap.LEFT_DRIVE_PORT_2); - left2 = new WPI_TalonSRX(RobotMap.LEFT_DRIVE_PORT_1); - right1 = new WPI_TalonSRX(RobotMap.RIGHT_DRIVE_PORT_1); - right2 = new WPI_TalonSRX(RobotMap.RIGHT_DRIVE_PORT_2); + left = new TalonSRX(RobotMap.LEFT_DRIVE_PORT_1); + leftSlave = new TalonSRX(RobotMap.LEFT_DRIVE_PORT_2); + right = new TalonSRX(RobotMap.RIGHT_DRIVE_PORT_1); + rightSlave = new TalonSRX(RobotMap.RIGHT_DRIVE_PORT_2); + + leftSlave.follow(left); + rightSlave.follow(right); //Invert Motors - right1.setInverted(true); - right2.setInverted(true); + right.setInverted(true); + //right3.setInverted(false); //Instantiate Encoders - left1.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Relative, 0, 0); - right1.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Relative, 0, 0); + left.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Relative, 0, 0); + right.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Relative, 0, 0); //Instantiate Gyro | Gyro automatically calibrates when given power ahrs = new AHRS(SPI.Port.kMXP); stop(); + SmartDashboard.putData(ahrs); @@ -71,22 +78,21 @@ public void initDefaultCommand() { //sets the speed for both of the left motors public void setLeftSpeed(double speed) { - left1.set(speed); - left2.set(speed); + left.set(ControlMode.PercentOutput,speed); + } //sets the speed for both of the right motors public void setRightSpeed (double speed) { - right1.set(speed); - right2.set(speed); + right.set(ControlMode.PercentOutput,speed); } public double getLeftSpeed() { - return left1.getSelectedSensorVelocity(0); + return left.getSelectedSensorVelocity(0); } public double getRightSpeed() { - return right1.getSelectedSensorVelocity(0); + return right.getSelectedSensorVelocity(0); } public void tankDrive(double leftSpeed, double rightSpeed){ @@ -96,53 +102,50 @@ public void tankDrive(double leftSpeed, double rightSpeed){ public void enableBrake(){ //enable on left - left1.setNeutralMode(NeutralMode.Brake); - left2.setNeutralMode(NeutralMode.Brake); + left.setNeutralMode(NeutralMode.Brake); //enable on right - right1.setNeutralMode(NeutralMode.Brake); - right2.setNeutralMode(NeutralMode.Brake); + right.setNeutralMode(NeutralMode.Brake); } public void disableBrake(){ //disable on left - left1.setNeutralMode(NeutralMode.Coast); - left2.setNeutralMode(NeutralMode.Coast); + left.setNeutralMode(NeutralMode.Coast); //disable on right - right1.setNeutralMode(NeutralMode.Coast); - right2.setNeutralMode(NeutralMode.Coast); + right.setNeutralMode(NeutralMode.Coast); } - + + //Get Encoder Distances public double getRightEncoderDistance(){ - return right1.getSelectedSensorPosition(0)* -1 * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; + return right.getSelectedSensorPosition(0)* -1 * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; } public double getLeftEncoderDistance(){ - return left1.getSelectedSensorPosition(0)* -1 * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; + return left.getSelectedSensorPosition(0)* -1 * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; } //Get Encoder counts public int getLeftEncoderCount(){ - return left1.getSelectedSensorPosition(0)* -1; + return left.getSelectedSensorPosition(0)* -1; } public int getRightEncoderCount(){ - return right1.getSelectedSensorPosition(0)* -1; + return right.getSelectedSensorPosition(0)* -1; } //Get Encoder Rates public double getRightEncoderRate(){ - return right1.getSelectedSensorVelocity(0)* -1; + return right.getSelectedSensorVelocity(0)* -1; } public double getLeftEncoderRate(){ - return left1.getSelectedSensorVelocity(0)* -1; + return left.getSelectedSensorVelocity(0)* -1; } //reset encoders public void resetEncoders(){ - left1.getSensorCollection().setQuadraturePosition(0, 0); - right1.getSensorCollection().setQuadraturePosition(0, 0); + left.getSensorCollection().setQuadraturePosition(0, 0); + right.getSensorCollection().setQuadraturePosition(0, 0); } public AHRS getGyro(){ @@ -158,10 +161,8 @@ public void resetGyro() { } public void stop() { - left1.set(0); - left2.set(0); - right1.set(0); - right2.set(0); + left.set(ControlMode.PercentOutput,0); + right.set(ControlMode.PercentOutput,0); + } - } \ No newline at end of file From e69f88a36cf47bfb85a93ad52c20ec4162e2e39d Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Mon, 11 Feb 2019 17:55:13 -0600 Subject: [PATCH 062/131] fixed shit --- src/main/java/frc/robot/ConstantsMap.java | 1 + src/main/java/frc/robot/Robot.java | 51 ++++++++++++------- src/main/java/frc/robot/TalonSet.java | 17 ++++--- src/main/java/frc/robot/XboxMap.java | 30 ++++------- .../java/frc/robot/commands/ArmCommand.java | 16 +++++- .../frc/robot/commands/ExampleCommand.java | 48 ----------------- .../java/frc/robot/pids/EncoderMotorPID.java | 10 ++-- .../frc/robot/subsystems/ArmSubsystem.java | 32 ++++++------ .../frc/robot/subsystems/DriveSubsystem.java | 9 ++-- .../robot/subsystems/ExampleSubsystem.java | 24 --------- 10 files changed, 94 insertions(+), 144 deletions(-) delete mode 100644 src/main/java/frc/robot/commands/ExampleCommand.java delete mode 100644 src/main/java/frc/robot/subsystems/ExampleSubsystem.java diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 1bf6839..e363042 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -18,6 +18,7 @@ public class ConstantsMap { public static final double DRIVE_ENCODER_TICKS_PER_ROTATION = 4096; //ticks public static final double DRIVE_ENCODER_DIST_PER_TICK = ((ROBOT_WHEEL_RADIUS_INCHES * 2 * Math.PI)/(DRIVE_ENCODER_TICKS_PER_ROTATION)); //inches public static final double TURTLE_SPEED = .5; //to be determined + public static final double JOYSTICK_SENSITIVITY = 1; //to be determined //for line follower diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index ed3271f..ce0b513 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -17,12 +17,11 @@ import edu.wpi.first.wpilibj.command.Scheduler; import edu.wpi.first.wpilibj.smartdashboard.SendableChooser; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; +import frc.robot.commands.ArmCommand; import frc.robot.commands.DriveCommand; -import frc.robot.commands.ExampleCommand; import frc.robot.commands.FollowLineCommand; import frc.robot.subsystems.ArmSubsystem; import frc.robot.subsystems.DriveSubsystem; -import frc.robot.subsystems.ExampleSubsystem; import frc.robot.subsystems.FollowLineSubsystem; /** @@ -33,22 +32,21 @@ * project. */ public class Robot extends TimedRobot { - public static OI oi; + public static OI oi; public static DriveSubsystem driveSubsystem = new DriveSubsystem(); + public static ArmSubsystem armSubsystem = new ArmSubsystem(); + public static FollowLineSubsystem followLineSubsystem = new FollowLineSubsystem(); UsbCamera camera; Command autonomousCommand; - public Command driveCommand; + Command driveCommand; Command followLineCommand; + Command armCommand; SendableChooser chooser = new SendableChooser<>(); CameraServer server; - - - public static ArmSubsystem armSubsystem = new ArmSubsystem(); - - + boolean armEnable; /** * This function is run when the robot is first started up and should be * used for any initialization code. @@ -56,12 +54,12 @@ public class Robot extends TimedRobot { @Override public void robotInit() { oi = new OI(); - chooser.setDefaultOption("Default Auto", new ExampleCommand()); + // chooser.addOption("My Auto", new MyAutoCommand()); - SmartDashboard.putData("Auto mode", chooser); driveCommand = new DriveCommand(); autonomousCommand = new FollowLineCommand(); followLineCommand = new FollowLineCommand(); + armCommand = new ArmCommand(); server = CameraServer.getInstance(); //server.startAutomaticCapture("Ground",0); } @@ -139,7 +137,7 @@ public void teleopInit() { if (autonomousCommand != null) { autonomousCommand.cancel(); } - } + driveCommand.start(); } @@ -151,13 +149,30 @@ public void teleopInit() { @Override public void teleopPeriodic() { if(XboxMap.runFollowLineCommand()){ - driveCommand.cancel(); - followLineCommand.start(); - } - if(XboxMap.interruptFollowLineCommand()){ - followLineCommand.cancel(); - driveCommand.start(); + if(followLineCommand.isRunning()){ + followLineCommand.cancel(); + driveCommand.start(); + } + else{ + driveCommand.cancel(); + followLineCommand.start(); + } + + } + + + if(XboxMap.toggleArmControl()){ + if(armCommand.isRunning()){ + armCommand.cancel(); + driveCommand.start(); + } + else{ + driveCommand.cancel(); + armCommand.start(); + + } } + SmartDashboard.putBoolean("Arm Conrol", armCommand.isRunning()); Scheduler.getInstance().run(); } diff --git a/src/main/java/frc/robot/TalonSet.java b/src/main/java/frc/robot/TalonSet.java index cef15fe..5ac58d9 100644 --- a/src/main/java/frc/robot/TalonSet.java +++ b/src/main/java/frc/robot/TalonSet.java @@ -1,30 +1,33 @@ package frc.robot; -import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; +import com.ctre.phoenix.motorcontrol.can.TalonSRX; +import com.ctre.phoenix.motorcontrol.ControlMode; +import com.ctre.phoenix.motorcontrol.FeedbackDevice; /* * Controls a group of motors as a unit. */ public class TalonSet { - WPI_TalonSRX motors[]; + TalonSRX motors[]; - public TalonSet(WPI_TalonSRX[] talons) { + public TalonSet(TalonSRX[] talons) { motors = talons; + for (TalonSRX motor : motors) motor.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Absolute, 0, 0); } - public TalonSet(WPI_TalonSRX talon) { - motors = new WPI_TalonSRX[] { talon }; + public TalonSet(TalonSRX talon) { + motors = new TalonSRX[] { talon }; } public void set(double speed) { - for (WPI_TalonSRX motor : motors) motor.set(speed); + for (TalonSRX motor : motors) motor.set(ControlMode.PercentOutput,speed); } public double get() { // As all members of a TalonSet should move in unison, // if this value is incorrect, you have a bigger problem // on your hands. - return motors[0].get(); + return motors[0].getMotorOutputPercent(); } public int encTicks() { diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index 110d279..8ac9a68 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -31,10 +31,11 @@ public class XboxMap { static public boolean runFollowLineCommand() { return oi.xbox.getAValue(); } - + public static boolean startAutoBrakerSystem(){ + return oi.xbox.getRightBumperValue(); + } //TODO B is also being used for outtake (Change later) // Put it on the other controller?? - static public boolean interruptFollowLineCommand() { - return oi.xbox.getBValue(); + public static double controlWristJoint() { return oi.xbox.getRightY(); } @@ -42,6 +43,9 @@ public static double controlWristJoint() { public static double controlShoulderJoint() { return oi.xbox.getLeftY(); } + public static boolean toggleArmControl() { + return oi.xbox.getXValue(); + } public static boolean enableWristLevelling() { return oi.xbox.getBValue(); @@ -60,28 +64,14 @@ public static boolean enableLevel3Preset() { return true; } - //Universal stop command - public static boolean stopSystem() { - return oi.xbox.getBackValue(); - } - - public static boolean shiftLow() { - return oi.ps4.getBValue(); - } - public static boolean shiftHigh() { - return oi.ps4.getAValue(); - } - public static double right() { - return oi.ps4.getRightY(); + return oi.xbox.getRightY(); } public static double left() { - return oi.ps4.getLeftY(); + return oi.xbox.getLeftY(); } - public static boolean interruptFollowLine() { - return false; - } + } \ No newline at end of file diff --git a/src/main/java/frc/robot/commands/ArmCommand.java b/src/main/java/frc/robot/commands/ArmCommand.java index 6cf45c0..0830cab 100644 --- a/src/main/java/frc/robot/commands/ArmCommand.java +++ b/src/main/java/frc/robot/commands/ArmCommand.java @@ -28,10 +28,12 @@ public ArmCommand() { @Override protected void initialize() { //Generalizes the interface between PID for each mechanism and its components. + /* wristLevelPID = new EncoderMotorPID(armSubsystem.getWristEncoder(), armSubsystem.getWristTalons(), ConstantsMap.WRIST_ZERO_KP, ConstantsMap.WRIST_ZERO_KI, ConstantsMap.WRIST_ZERO_KD, ConstantsMap.WRIST_ZERO_KF, 0).setOutputRange(-1,1); armMovementPID = new EncoderMotorPID(armSubsystem.getShoulderEncoder(), armSubsystem.getWristTalons(), ConstantsMap.SHOULDER_MV_KP, ConstantsMap.SHOULDER_MV_KI, ConstantsMap.SHOULDER_MV_KD, ConstantsMap.SHOULDER_MV_KF, ConstantsMap.SHOULDER_ENCODER_TICKS_PER_ROTATION).setOutputRange(-1,1); + */ } // Called repeatedly when this Command is scheduled to run @@ -39,7 +41,18 @@ protected void initialize() { protected void execute() { double amountToMoveShoulderJoint = XboxMap.controlShoulderJoint(); double amountToMoveWristJoint = XboxMap.controlWristJoint(); - + if (Math.abs(amountToMoveShoulderJoint) < 0.1) { + amountToMoveShoulderJoint = 0; + } + if (Math.abs(amountToMoveWristJoint) < 0.1) { + amountToMoveWristJoint = 0; + } + //armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); + //armSubsystem.setWristJointSpeed(amountToMoveWristJoint); + + + + /* if(Math.abs(amountToMoveWristJoint) < ConstantsMap.JOYSTICK_SENSITIVITY && Math.abs(amountToMoveShoulderJoint) < ConstantsMap.JOYSTICK_SENSITIVITY) { //Do not press multiple presets at the same time. //TODO Set the angles that the arm and wrist should go to. @@ -123,6 +136,7 @@ else if(XboxMap.enableLevel3Preset()) { armSubsystem.setShoulderJointSpeed(0); } } + */ } /** diff --git a/src/main/java/frc/robot/commands/ExampleCommand.java b/src/main/java/frc/robot/commands/ExampleCommand.java deleted file mode 100644 index 855da02..0000000 --- a/src/main/java/frc/robot/commands/ExampleCommand.java +++ /dev/null @@ -1,48 +0,0 @@ -/*----------------------------------------------------------------------------*/ -/* Copyright (c) 2017-2018 FIRST. All Rights Reserved. */ -/* Open Source Software - may be modified and shared by FRC teams. The code */ -/* must be accompanied by the FIRST BSD license file in the root directory of */ -/* the project. */ -/*----------------------------------------------------------------------------*/ - -package frc.robot.commands; - -import edu.wpi.first.wpilibj.command.Command; -import frc.robot.Robot; - -/** - * An example command. You can replace me with your own command. - */ -public class ExampleCommand extends Command { - public ExampleCommand() { - // Use requires() here to declare subsystem dependencies - requires(Robot.subsystem); - } - - // Called just before this Command runs the first time - @Override - protected void initialize() { - } - - // Called repeatedly when this Command is scheduled to run - @Override - protected void execute() { - } - - // Make this return true when this Command no longer needs to run execute() - @Override - protected boolean isFinished() { - return false; - } - - // Called once after isFinished returns true - @Override - protected void end() { - } - - // Called when another command which requires one or more of the same - // subsystems is scheduled to run - @Override - protected void interrupted() { - } -} diff --git a/src/main/java/frc/robot/pids/EncoderMotorPID.java b/src/main/java/frc/robot/pids/EncoderMotorPID.java index cdc3f16..0dc44ff 100644 --- a/src/main/java/frc/robot/pids/EncoderMotorPID.java +++ b/src/main/java/frc/robot/pids/EncoderMotorPID.java @@ -9,18 +9,18 @@ import edu.wpi.first.wpilibj.PIDSourceType; public class EncoderMotorPID implements PIDSource, PIDOutput { - Encoder encoder; TalonSet motor; PIDController pid; PIDSourceType pidSourceType; + PIDSource source; double dpt; - public EncoderMotorPID(Encoder enc, TalonSet mot, double kp, double ki, double kd, double kf, double dpt) { - encoder = enc; + public EncoderMotorPID(TalonSet mot, double kp, double ki, double kd, double kf, double dpt) { motor = mot; pid = new PIDController(kp, ki, kd, kf, this, this); pidSourceType = PIDSourceType.kDisplacement; this.dpt = dpt; + } public EncoderMotorPID setP(double kp) { @@ -38,10 +38,10 @@ public EncoderMotorPID setD(double kd) { return this; } - public EncoderMotorPID setDistancePerTick(double dpt) { + /* public EncoderMotorPID setDistancePerTick(double dpt) { encoder.setDistancePerPulse(dpt); return this; - } + } */ public EncoderMotorPID setOutputRange(double l, double h) { pid.setOutputRange(l,h); diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem.java b/src/main/java/frc/robot/subsystems/ArmSubsystem.java index 499f4b7..020d357 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem.java @@ -7,7 +7,6 @@ package frc.robot.subsystems; -import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; import edu.wpi.first.wpilibj.DigitalInput; import edu.wpi.first.wpilibj.Encoder; @@ -15,6 +14,8 @@ import frc.robot.ConstantsMap; import frc.robot.RobotMap; import frc.robot.TalonSet; +import com.ctre.phoenix.motorcontrol.can.TalonSRX; +import com.ctre.phoenix.motorcontrol.ControlMode; /** * Add your docs here. @@ -28,25 +29,26 @@ public class ArmSubsystem extends Subsystem { private DigitalInput upperLimit, lowerLimit, upperLimitWrist, lowerLimitWrist; + private TalonSRX rightShoulder, leftShoulder; public ArmSubsystem() { - shoulderEncoder = new Encoder(RobotMap.SHOULDER_ENCODER_PORT_A, RobotMap.SHOULDER_ENCODER_PORT_B); - wristEncoder = new Encoder(RobotMap.WRIST_ENCODER_PORT_A, RobotMap.WRIST_ENCODER_PORT_B); - wristEncoder.reset(); - shoulderEncoder.reset(); - - WPI_TalonSRX rightShoulder, leftShoulder; - rightShoulder = new WPI_TalonSRX(RobotMap.SHOULDER_JOINT_RIGHT_PORT); - leftShoulder = new WPI_TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); + //shoulderEncoder = new Encoder(RobotMap.SHOULDER_ENCODER_PORT_A, RobotMap.SHOULDER_ENCODER_PORT_B); + //wristEncoder = new Encoder(RobotMap.WRIST_ENCODER_PORT_A, RobotMap.WRIST_ENCODER_PORT_B); + // wristEncoder.reset(); + //shoulderEncoder.reset(); + + TalonSRX rightShoulder, leftShoulder; + rightShoulder = new TalonSRX(RobotMap.SHOULDER_JOINT_RIGHT_PORT); + leftShoulder = new TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); rightShoulder.setInverted(true); - shoulderMotors = new TalonSet(new WPI_TalonSRX[] {rightShoulder, leftShoulder}); + shoulderMotors = new TalonSet(new TalonSRX[] {rightShoulder, leftShoulder}); - wristMotor = new TalonSet(new WPI_TalonSRX(RobotMap.WRIST_JOINT_PORT)); + wristMotor = new TalonSet(new TalonSRX(RobotMap.WRIST_JOINT_PORT)); - upperLimit = new DigitalInput(RobotMap.UPPER_ARM_LIMIT_PORT); - lowerLimit = new DigitalInput(RobotMap.LOWER_ARM_LIMIT_PORT); - upperLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); - lowerLimitWrist = new DigitalInput(RobotMap.UPPER_WRIST_LIMIT_PORT); + ///upperLimit = new DigitalInput(RobotMap.UPPER_ARM_LIMIT_PORT); + //lowerLimit = new DigitalInput(RobotMap.LOWER_ARM_LIMIT_PORT); + //upperLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); + //lowerLimitWrist = new DigitalInput(RobotMap.UPPER_WRIST_LIMIT_PORT); } public Encoder getWristEncoder() { diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index 3953edd..b385e0e 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -16,15 +16,11 @@ import com.ctre.phoenix.motorcontrol.FeedbackDevice; import com.ctre.phoenix.motorcontrol.NeutralMode; import com.ctre.phoenix.motorcontrol.can.TalonSRX; -import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; -import com.ctre.phoenix.*; + import com.kauailabs.navx.frc.AHRS; -import edu.wpi.first.wpilibj.AnalogGyro; import edu.wpi.first.wpilibj.SPI; -import edu.wpi.first.wpilibj.Solenoid; -import edu.wpi.first.wpilibj.DigitalInput; -import edu.wpi.first.wpilibj.Encoder; + import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; /** @@ -54,6 +50,7 @@ public DriveSubsystem() { //Invert Motors right.setInverted(true); + rightSlave.setInverted(true); //right3.setInverted(false); diff --git a/src/main/java/frc/robot/subsystems/ExampleSubsystem.java b/src/main/java/frc/robot/subsystems/ExampleSubsystem.java deleted file mode 100644 index 7f5e1a4..0000000 --- a/src/main/java/frc/robot/subsystems/ExampleSubsystem.java +++ /dev/null @@ -1,24 +0,0 @@ -/*----------------------------------------------------------------------------*/ -/* Copyright (c) 2017-2018 FIRST. All Rights Reserved. */ -/* Open Source Software - may be modified and shared by FRC teams. The code */ -/* must be accompanied by the FIRST BSD license file in the root directory of */ -/* the project. */ -/*----------------------------------------------------------------------------*/ - -package frc.robot.subsystems; - -import edu.wpi.first.wpilibj.command.Subsystem; - -/** - * An example subsystem. You can replace me with your own Subsystem. - */ -public class ExampleSubsystem extends Subsystem { - // Put methods for controlling this subsystem - // here. Call these from Commands. - - @Override - public void initDefaultCommand() { - // Set the default command for a subsystem here. - // setDefaultCommand(new MySpecialCommand()); - } -} From ee906eb579135ef095b2fd63024e6c019ff93c75 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Mon, 11 Feb 2019 18:47:22 -0600 Subject: [PATCH 063/131] more fixxes --- src/main/java/frc/robot/commands/ArmCommand.java | 8 ++++++-- src/main/java/frc/robot/commands/DriveCommand.java | 4 +++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/main/java/frc/robot/commands/ArmCommand.java b/src/main/java/frc/robot/commands/ArmCommand.java index 0830cab..f705df6 100644 --- a/src/main/java/frc/robot/commands/ArmCommand.java +++ b/src/main/java/frc/robot/commands/ArmCommand.java @@ -27,6 +27,8 @@ public ArmCommand() { // Called just before this Command runs the first time @Override protected void initialize() { + System.out.println("Arm Command Started"); + //Generalizes the interface between PID for each mechanism and its components. /* wristLevelPID = new EncoderMotorPID(armSubsystem.getWristEncoder(), armSubsystem.getWristTalons(), ConstantsMap.WRIST_ZERO_KP, @@ -47,8 +49,8 @@ protected void execute() { if (Math.abs(amountToMoveWristJoint) < 0.1) { amountToMoveWristJoint = 0; } - //armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); - //armSubsystem.setWristJointSpeed(amountToMoveWristJoint); + armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); + armSubsystem.setWristJointSpeed(amountToMoveWristJoint); @@ -174,6 +176,8 @@ protected boolean isFinished() { // Called once after isFinished returns true @Override protected void end() { + System.out.println("Arm Command Stopped"); + } // Called when another command which requires one or more of the same diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index f496619..69eb0f4 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -140,7 +140,9 @@ protected boolean getBrakeState(){ } // Called once after isFinished returns true protected void end() { - driveSubsystem.stop(); + driveSubsystem.stop(); + System.out.println("Drive Command Stopped"); + } // Called when another command which requires one or more of the same From 3fc30417ac9947a7b189cabf7391c75717000a39 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Mon, 11 Feb 2019 19:27:07 -0600 Subject: [PATCH 064/131] Uncommented PID and other leveling code for testing --- src/main/java/frc/robot/commands/ArmCommand.java | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/main/java/frc/robot/commands/ArmCommand.java b/src/main/java/frc/robot/commands/ArmCommand.java index f705df6..6b0230d 100644 --- a/src/main/java/frc/robot/commands/ArmCommand.java +++ b/src/main/java/frc/robot/commands/ArmCommand.java @@ -30,12 +30,11 @@ protected void initialize() { System.out.println("Arm Command Started"); //Generalizes the interface between PID for each mechanism and its components. - /* - wristLevelPID = new EncoderMotorPID(armSubsystem.getWristEncoder(), armSubsystem.getWristTalons(), ConstantsMap.WRIST_ZERO_KP, + wristLevelPID = new EncoderMotorPID(armSubsystem.getWristTalons(), ConstantsMap.WRIST_ZERO_KP, ConstantsMap.WRIST_ZERO_KI, ConstantsMap.WRIST_ZERO_KD, ConstantsMap.WRIST_ZERO_KF, 0).setOutputRange(-1,1); - armMovementPID = new EncoderMotorPID(armSubsystem.getShoulderEncoder(), armSubsystem.getWristTalons(), ConstantsMap.SHOULDER_MV_KP, + armMovementPID = new EncoderMotorPID(armSubsystem.getWristTalons(), ConstantsMap.SHOULDER_MV_KP, ConstantsMap.SHOULDER_MV_KI, ConstantsMap.SHOULDER_MV_KD, ConstantsMap.SHOULDER_MV_KF, ConstantsMap.SHOULDER_ENCODER_TICKS_PER_ROTATION).setOutputRange(-1,1); - */ + } // Called repeatedly when this Command is scheduled to run @@ -52,9 +51,6 @@ protected void execute() { armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); armSubsystem.setWristJointSpeed(amountToMoveWristJoint); - - - /* if(Math.abs(amountToMoveWristJoint) < ConstantsMap.JOYSTICK_SENSITIVITY && Math.abs(amountToMoveShoulderJoint) < ConstantsMap.JOYSTICK_SENSITIVITY) { //Do not press multiple presets at the same time. //TODO Set the angles that the arm and wrist should go to. @@ -138,7 +134,7 @@ else if(XboxMap.enableLevel3Preset()) { armSubsystem.setShoulderJointSpeed(0); } } - */ + } /** From 1358f6043e70c3edae2874237164b93c2632b0ae Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Mon, 11 Feb 2019 19:33:05 -0600 Subject: [PATCH 065/131] Fix Xbox map for arm controls --- src/main/java/frc/robot/OI.java | 2 +- src/main/java/frc/robot/XboxMap.java | 19 ++++++++++--------- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index 3fc81d4..9a6bb61 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -21,7 +21,7 @@ public class OI { public OI(){ xbox = new Xbox(0); - //ps4 = new Xbox(1); + ps4 = new Xbox(1); xbox.getAButton().toggleWhenPressed(new FollowLineCommand()); //attack3_L = new Attack3(3); //attack3_R = new Attack3(4); diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index 8ac9a68..44c76d3 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -28,12 +28,6 @@ public class XboxMap { //Elevator commands - static public boolean runFollowLineCommand() { - return oi.xbox.getAValue(); - } - public static boolean startAutoBrakerSystem(){ - return oi.xbox.getRightBumperValue(); - } //TODO B is also being used for outtake (Change later) // Put it on the other controller?? public static double controlWristJoint() { @@ -64,14 +58,21 @@ public static boolean enableLevel3Preset() { return true; } - + //Driving Controls public static double right() { - return oi.xbox.getRightY(); + return oi.ps4.getRightY(); } public static double left() { - return oi.xbox.getLeftY(); + return oi.ps4.getLeftY(); } + static public boolean runFollowLineCommand() { + return oi.ps4.getAValue(); + } + public static boolean startAutoBrakerSystem(){ + return oi.ps4.getRightBumperValue(); + } + } \ No newline at end of file From 356f1e24b7a612e1be774f504156725b13b53032 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Mon, 11 Feb 2019 20:12:01 -0600 Subject: [PATCH 066/131] Maybe Fixed encoder stuff idk --- src/main/java/frc/robot/ConstantsMap.java | 1 + .../java/frc/robot/commands/ArmCommand.java | 18 ++++++++++-------- .../frc/robot/subsystems/ArmSubsystem.java | 19 ++++++------------- 3 files changed, 17 insertions(+), 21 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index e363042..5094f10 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -47,6 +47,7 @@ public class ConstantsMap { public static final double WRIST_SPEED_MULT = .5; public static final double SHOULDER_SPEED_MULT = .1; + public static final double WRIST_ENCODER_TICKS_PER_ROTATION = 4096; public static final int SHOULDER_ENCODER_TICKS_PER_ROTATION = 4096; //ticks public static final double SHOULDER_GEAR_RATIO = 350.0; diff --git a/src/main/java/frc/robot/commands/ArmCommand.java b/src/main/java/frc/robot/commands/ArmCommand.java index 6b0230d..9c77a01 100644 --- a/src/main/java/frc/robot/commands/ArmCommand.java +++ b/src/main/java/frc/robot/commands/ArmCommand.java @@ -51,6 +51,7 @@ protected void execute() { armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); armSubsystem.setWristJointSpeed(amountToMoveWristJoint); + /* if(Math.abs(amountToMoveWristJoint) < ConstantsMap.JOYSTICK_SENSITIVITY && Math.abs(amountToMoveShoulderJoint) < ConstantsMap.JOYSTICK_SENSITIVITY) { //Do not press multiple presets at the same time. //TODO Set the angles that the arm and wrist should go to. @@ -90,8 +91,8 @@ else if(XboxMap.enableLevel3Preset()) { //Otherwise the wrist is able to move freely without PID for both types of levelling //The PID will continue working until it has reached its target, the shoulder joystick moves, or enableLevelWrist is on if (!enableLevelWrist && Math.abs(amountToMoveWristJoint) < ConstantsMap.JOYSTICK_SENSITIVITY - && Math.abs(getRelativeLevelledAngle(armSubsystem.getWristDistance() - wristLevelPID.getSetpoint())) > ConstantsMap.WRIST_TOLERANCE) { - wristLevelPID.setSetpoint(getRelativeLevelledAngle(armSubsystem.getWristDistance())); + && Math.abs(getRelativeLevelledAngle(armSubsystem.getWristEncoderAngle() - wristLevelPID.getSetpoint())) > ConstantsMap.WRIST_TOLERANCE) { + wristLevelPID.setSetpoint(getRelativeLevelledAngle(armSubsystem.getWristEncoderAngle())); } else if (Math.abs(amountToMoveWristJoint) > ConstantsMap.JOYSTICK_SENSITIVITY) { wristLevelPID.disable(); armSubsystem.setWristJointSpeed(amountToMoveWristJoint * ConstantsMap.WRIST_SPEED_MULT); @@ -102,8 +103,8 @@ else if(XboxMap.enableLevel3Preset()) { //Otherwise the shoulder is able to move freely without PID //The PID will continue working until it has reached its target or the shoulder joystick moves if (Math.abs(amountToMoveShoulderJoint) < ConstantsMap.JOYSTICK_SENSITIVITY - && Math.abs(getShoulderEncoderAngle() - armMovementPID.getSetpoint()) > ConstantsMap.SHOULDER_TOLERANCE) { - armMovementPID.setSetpoint(armSubsystem.getShoulderDistance() / ConstantsMap.SHOULDER_GEAR_RATIO + ConstantsMap.SHOULDER_OFFSET); + && Math.abs(getShoulderAngle() - armMovementPID.getSetpoint()) > ConstantsMap.SHOULDER_TOLERANCE) { + armMovementPID.setSetpoint(armSubsystem.getShoulderEncoderAngle() / ConstantsMap.SHOULDER_GEAR_RATIO + ConstantsMap.SHOULDER_OFFSET); armMovementPID.enable(); } else if (Math.abs(amountToMoveShoulderJoint) > ConstantsMap.JOYSTICK_SENSITIVITY) { armMovementPID.disable(); @@ -134,6 +135,7 @@ else if(XboxMap.enableLevel3Preset()) { armSubsystem.setShoulderJointSpeed(0); } } + */ } @@ -142,8 +144,8 @@ else if(XboxMap.enableLevel3Preset()) { * 0 degrees is straight down and positive is infront of the robot. * @return angle in degrees */ - private double getShoulderEncoderAngle() { - return ConstantsMap.SHOULDER_OFFSET + armSubsystem.getShoulderDistance() / ConstantsMap.SHOULDER_GEAR_RATIO; + private double getShoulderAngle() { + return ConstantsMap.SHOULDER_OFFSET + armSubsystem.getShoulderEncoderAngle() / ConstantsMap.SHOULDER_GEAR_RATIO; } /** @@ -151,7 +153,7 @@ private double getShoulderEncoderAngle() { * @return */ private double getWristLevelledAngle() { - return getShoulderEncoderAngle() + ConstantsMap.WRIST_OFFSET; + return armSubsystem.getShoulderEncoderAngle() + ConstantsMap.WRIST_OFFSET; } /** @@ -160,7 +162,7 @@ private double getWristLevelledAngle() { * @return angle that the encoder should go to maintain in world space as the shoulder moves */ private double getRelativeLevelledAngle(double angle) { - return angle - getWristLevelledAngle() + getShoulderEncoderAngle(); + return angle - getWristLevelledAngle() + getShoulderAngle(); } // Make this return true when this Command no longer needs to run execute() diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem.java b/src/main/java/frc/robot/subsystems/ArmSubsystem.java index 020d357..da3bcf8 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem.java @@ -37,7 +37,6 @@ public ArmSubsystem() { // wristEncoder.reset(); //shoulderEncoder.reset(); - TalonSRX rightShoulder, leftShoulder; rightShoulder = new TalonSRX(RobotMap.SHOULDER_JOINT_RIGHT_PORT); leftShoulder = new TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); rightShoulder.setInverted(true); @@ -51,12 +50,14 @@ public ArmSubsystem() { //lowerLimitWrist = new DigitalInput(RobotMap.UPPER_WRIST_LIMIT_PORT); } - public Encoder getWristEncoder() { - return wristEncoder; + public double getShoulderEncoderAngle() + { + return 360 * getShoulderTalons().encTicks() * 1.0 / ConstantsMap.SHOULDER_ENCODER_TICKS_PER_ROTATION; } - public Encoder getShoulderEncoder() { - return shoulderEncoder; + public double getWristEncoderAngle() + { + return 360 * getWristTalons().encTicks() * 1.0 / ConstantsMap.SHOULDER_ENCODER_TICKS_PER_ROTATION; } public TalonSet getWristTalons() { @@ -75,14 +76,6 @@ public void setWristJointSpeed(double speed) { wristMotor.set(speed); } - public double getShoulderDistance() { - return shoulderEncoder.getDistance(); - } - - public double getWristDistance() { - return wristEncoder.getDistance(); - } - public boolean getShoulderUpperLimit(){ return upperLimit.get(); } From cfa7f53a45a0c8905819b752a5bec5e00ff10784 Mon Sep 17 00:00:00 2001 From: Teodor Tchalakov Date: Mon, 11 Feb 2019 20:27:25 -0600 Subject: [PATCH 067/131] krfl5gth6yo7jupgrfht67ju8 --- src/main/java/frc/robot/XboxMap.java | 2 +- src/main/java/frc/robot/commands/ArmCommand.java | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index 44c76d3..f2a5ace 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -47,7 +47,7 @@ public static boolean enableWristLevelling() { //TODO Map to Buttons public static boolean enableCargoPreset() { - return true; + return oi.xbox.getAValue() ; } public static boolean enableLevel2Preset() { diff --git a/src/main/java/frc/robot/commands/ArmCommand.java b/src/main/java/frc/robot/commands/ArmCommand.java index 9c77a01..5b6f898 100644 --- a/src/main/java/frc/robot/commands/ArmCommand.java +++ b/src/main/java/frc/robot/commands/ArmCommand.java @@ -51,6 +51,14 @@ protected void execute() { armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); armSubsystem.setWristJointSpeed(amountToMoveWristJoint); + if(XboxMap.enableCargoPreset()){ + wristLevelPID.enable(); + wristLevelPID.setSetpoint(45); + } + else + wristLevelPID.disable(); + + /* if(Math.abs(amountToMoveWristJoint) < ConstantsMap.JOYSTICK_SENSITIVITY && Math.abs(amountToMoveShoulderJoint) < ConstantsMap.JOYSTICK_SENSITIVITY) { //Do not press multiple presets at the same time. From b70ae2d06411cc75ba73cd8d489c81d0b38155a1 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Tue, 12 Feb 2019 17:43:57 -0600 Subject: [PATCH 068/131] Testing leveling code --- src/main/java/frc/robot/commands/ArmCommand.java | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/src/main/java/frc/robot/commands/ArmCommand.java b/src/main/java/frc/robot/commands/ArmCommand.java index 5b6f898..e2cc4b7 100644 --- a/src/main/java/frc/robot/commands/ArmCommand.java +++ b/src/main/java/frc/robot/commands/ArmCommand.java @@ -50,16 +50,7 @@ protected void execute() { } armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); armSubsystem.setWristJointSpeed(amountToMoveWristJoint); - - if(XboxMap.enableCargoPreset()){ - wristLevelPID.enable(); - wristLevelPID.setSetpoint(45); - } - else - wristLevelPID.disable(); - - /* if(Math.abs(amountToMoveWristJoint) < ConstantsMap.JOYSTICK_SENSITIVITY && Math.abs(amountToMoveShoulderJoint) < ConstantsMap.JOYSTICK_SENSITIVITY) { //Do not press multiple presets at the same time. //TODO Set the angles that the arm and wrist should go to. @@ -143,7 +134,7 @@ else if(XboxMap.enableLevel3Preset()) { armSubsystem.setShoulderJointSpeed(0); } } - */ + } From c70a0c637a94559bdffbfbd0c27667519d4e412a Mon Sep 17 00:00:00 2001 From: aaronjrod Date: Tue, 12 Feb 2019 17:48:18 -0600 Subject: [PATCH 069/131] updated code dj;fakl;djf; --- src/main/java/frc/robot/XboxMap.java | 4 +- .../java/frc/robot/commands/ArmCommand.java | 8 +-- .../frc/robot/subsystems/ArmSubsystem.java | 49 ++++++++++--------- 3 files changed, 33 insertions(+), 28 deletions(-) diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index f2a5ace..d7bb78a 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -60,11 +60,11 @@ public static boolean enableLevel3Preset() { //Driving Controls public static double right() { - return oi.ps4.getRightY(); + return oi.xbox.getRightY(); } public static double left() { - return oi.ps4.getLeftY(); + return oi.xbox.getLeftY(); } static public boolean runFollowLineCommand() { diff --git a/src/main/java/frc/robot/commands/ArmCommand.java b/src/main/java/frc/robot/commands/ArmCommand.java index 5b6f898..666c77c 100644 --- a/src/main/java/frc/robot/commands/ArmCommand.java +++ b/src/main/java/frc/robot/commands/ArmCommand.java @@ -30,11 +30,11 @@ protected void initialize() { System.out.println("Arm Command Started"); //Generalizes the interface between PID for each mechanism and its components. - wristLevelPID = new EncoderMotorPID(armSubsystem.getWristTalons(), ConstantsMap.WRIST_ZERO_KP, + /* wristLevelPID = new EncoderMotorPID(armSubsystem.getWristTalons(), ConstantsMap.WRIST_ZERO_KP, ConstantsMap.WRIST_ZERO_KI, ConstantsMap.WRIST_ZERO_KD, ConstantsMap.WRIST_ZERO_KF, 0).setOutputRange(-1,1); armMovementPID = new EncoderMotorPID(armSubsystem.getWristTalons(), ConstantsMap.SHOULDER_MV_KP, ConstantsMap.SHOULDER_MV_KI, ConstantsMap.SHOULDER_MV_KD, ConstantsMap.SHOULDER_MV_KF, ConstantsMap.SHOULDER_ENCODER_TICKS_PER_ROTATION).setOutputRange(-1,1); - + */ } // Called repeatedly when this Command is scheduled to run @@ -51,13 +51,13 @@ protected void execute() { armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); armSubsystem.setWristJointSpeed(amountToMoveWristJoint); - if(XboxMap.enableCargoPreset()){ + /* if(XboxMap.enableCargoPreset()){ wristLevelPID.enable(); wristLevelPID.setSetpoint(45); } else wristLevelPID.disable(); - + */ /* if(Math.abs(amountToMoveWristJoint) < ConstantsMap.JOYSTICK_SENSITIVITY && Math.abs(amountToMoveShoulderJoint) < ConstantsMap.JOYSTICK_SENSITIVITY) { diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem.java b/src/main/java/frc/robot/subsystems/ArmSubsystem.java index da3bcf8..499f4b7 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem.java @@ -7,6 +7,7 @@ package frc.robot.subsystems; +import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; import edu.wpi.first.wpilibj.DigitalInput; import edu.wpi.first.wpilibj.Encoder; @@ -14,8 +15,6 @@ import frc.robot.ConstantsMap; import frc.robot.RobotMap; import frc.robot.TalonSet; -import com.ctre.phoenix.motorcontrol.can.TalonSRX; -import com.ctre.phoenix.motorcontrol.ControlMode; /** * Add your docs here. @@ -29,35 +28,33 @@ public class ArmSubsystem extends Subsystem { private DigitalInput upperLimit, lowerLimit, upperLimitWrist, lowerLimitWrist; - private TalonSRX rightShoulder, leftShoulder; public ArmSubsystem() { - //shoulderEncoder = new Encoder(RobotMap.SHOULDER_ENCODER_PORT_A, RobotMap.SHOULDER_ENCODER_PORT_B); - //wristEncoder = new Encoder(RobotMap.WRIST_ENCODER_PORT_A, RobotMap.WRIST_ENCODER_PORT_B); - // wristEncoder.reset(); - //shoulderEncoder.reset(); - - rightShoulder = new TalonSRX(RobotMap.SHOULDER_JOINT_RIGHT_PORT); - leftShoulder = new TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); + shoulderEncoder = new Encoder(RobotMap.SHOULDER_ENCODER_PORT_A, RobotMap.SHOULDER_ENCODER_PORT_B); + wristEncoder = new Encoder(RobotMap.WRIST_ENCODER_PORT_A, RobotMap.WRIST_ENCODER_PORT_B); + wristEncoder.reset(); + shoulderEncoder.reset(); + + WPI_TalonSRX rightShoulder, leftShoulder; + rightShoulder = new WPI_TalonSRX(RobotMap.SHOULDER_JOINT_RIGHT_PORT); + leftShoulder = new WPI_TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); rightShoulder.setInverted(true); - shoulderMotors = new TalonSet(new TalonSRX[] {rightShoulder, leftShoulder}); + shoulderMotors = new TalonSet(new WPI_TalonSRX[] {rightShoulder, leftShoulder}); - wristMotor = new TalonSet(new TalonSRX(RobotMap.WRIST_JOINT_PORT)); + wristMotor = new TalonSet(new WPI_TalonSRX(RobotMap.WRIST_JOINT_PORT)); - ///upperLimit = new DigitalInput(RobotMap.UPPER_ARM_LIMIT_PORT); - //lowerLimit = new DigitalInput(RobotMap.LOWER_ARM_LIMIT_PORT); - //upperLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); - //lowerLimitWrist = new DigitalInput(RobotMap.UPPER_WRIST_LIMIT_PORT); + upperLimit = new DigitalInput(RobotMap.UPPER_ARM_LIMIT_PORT); + lowerLimit = new DigitalInput(RobotMap.LOWER_ARM_LIMIT_PORT); + upperLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); + lowerLimitWrist = new DigitalInput(RobotMap.UPPER_WRIST_LIMIT_PORT); } - public double getShoulderEncoderAngle() - { - return 360 * getShoulderTalons().encTicks() * 1.0 / ConstantsMap.SHOULDER_ENCODER_TICKS_PER_ROTATION; + public Encoder getWristEncoder() { + return wristEncoder; } - public double getWristEncoderAngle() - { - return 360 * getWristTalons().encTicks() * 1.0 / ConstantsMap.SHOULDER_ENCODER_TICKS_PER_ROTATION; + public Encoder getShoulderEncoder() { + return shoulderEncoder; } public TalonSet getWristTalons() { @@ -76,6 +73,14 @@ public void setWristJointSpeed(double speed) { wristMotor.set(speed); } + public double getShoulderDistance() { + return shoulderEncoder.getDistance(); + } + + public double getWristDistance() { + return wristEncoder.getDistance(); + } + public boolean getShoulderUpperLimit(){ return upperLimit.get(); } From 5809eda1db596fc4ae1b3b57924131cd53c6497d Mon Sep 17 00:00:00 2001 From: trajing Date: Tue, 12 Feb 2019 18:21:54 -0600 Subject: [PATCH 070/131] Updated Robot.java to use a 4-space indent --- src/main/java/frc/robot/Robot.java | 250 ++++++++++++++--------------- 1 file changed, 125 insertions(+), 125 deletions(-) diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index ce0b513..f8ba673 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -25,109 +25,109 @@ import frc.robot.subsystems.FollowLineSubsystem; /** - * The VM is configured to automatically run this class, and to call the - * functions corresponding to each mode, as described in the TimedRobot - * documentation. If you change the name of this class or the package after - * creating this project, you must also update the build.gradle file in the - * project. - */ +* The VM is configured to automatically run this class, and to call the +* functions corresponding to each mode, as described in the TimedRobot +* documentation. If you change the name of this class or the package after +* creating this project, you must also update the build.gradle file in the +* project. +*/ public class Robot extends TimedRobot { - public static OI oi; - - public static DriveSubsystem driveSubsystem = new DriveSubsystem(); - public static ArmSubsystem armSubsystem = new ArmSubsystem(); - - public static FollowLineSubsystem followLineSubsystem = new FollowLineSubsystem(); - UsbCamera camera; - Command autonomousCommand; - Command driveCommand; - Command followLineCommand; - Command armCommand; - SendableChooser chooser = new SendableChooser<>(); - CameraServer server; - - boolean armEnable; - /** - * This function is run when the robot is first started up and should be - * used for any initialization code. - */ - @Override - public void robotInit() { - oi = new OI(); - - // chooser.addOption("My Auto", new MyAutoCommand()); - driveCommand = new DriveCommand(); - autonomousCommand = new FollowLineCommand(); - followLineCommand = new FollowLineCommand(); - armCommand = new ArmCommand(); - server = CameraServer.getInstance(); - //server.startAutomaticCapture("Ground",0); - } - - - /** - * This function is called every robot packet, no matter the mode. Use - * this for items like diagnostics that you want ran during disabled, - * autonomous, teleoperated and test. - * - *

This runs after the mode specific periodic functions, but before - * LiveWindow and SmartDashboard integrated updating. - */ - + public static OI oi; + + public static DriveSubsystem driveSubsystem = new DriveSubsystem(); + public static ArmSubsystem armSubsystem = new ArmSubsystem(); + + public static FollowLineSubsystem followLineSubsystem = new FollowLineSubsystem(); + UsbCamera camera; + Command autonomousCommand; + Command driveCommand; + Command followLineCommand; + Command armCommand; + SendableChooser chooser = new SendableChooser<>(); + CameraServer server; + + boolean armEnable; + /** + * This function is run when the robot is first started up and should be + * used for any initialization code. + */ + @Override + public void robotInit() { + oi = new OI(); + + // chooser.addOption("My Auto", new MyAutoCommand()); + driveCommand = new DriveCommand(); + autonomousCommand = new FollowLineCommand(); + followLineCommand = new FollowLineCommand(); + armCommand = new ArmCommand(); + server = CameraServer.getInstance(); + //server.startAutomaticCapture("Ground",0); + } + + + /** + * This function is called every robot packet, no matter the mode. Use + * this for items like diagnostics that you want ran during disabled, + * autonomous, teleoperated and test. + * + *

This runs after the mode specific periodic functions, but before + * LiveWindow and SmartDashboard integrated updating. + */ + public void robotPeriodic() { } - - /** - * This function is called once each time the robot enters Disabled mode. - * You can use it to reset any subsystem information you want to clear when - * the robot is disabled. - */ + + /** + * This function is called once each time the robot enters Disabled mode. + * You can use it to reset any subsystem information you want to clear when + * the robot is disabled. + */ @Override public void disabledInit() { } - + @Override public void disabledPeriodic() { Scheduler.getInstance().run(); } - - /** - * This autonomous (along with the chooser code above) shows how to select - * between different autonomous modes using the dashboard. The sendable - * chooser code works with the Java SmartDashboard. If you prefer the - * LabVIEW Dashboard, remove all of the chooser code and uncomment the - * getString code to get the auto name from the text box below the Gyro - * - *

You can add additional auto modes by adding additional commands to the - * chooser code above (like the commented example) or additional comparisons - * to the switch structure below with additional strings & commands. - */ - - @Override - public void autonomousInit() { - - - /* - * String autoSelected = SmartDashboard.getString("Auto Selector", - * "Default"); switch(autoSelected) { case "My Auto": autonomousCommand - * = new MyAutoCommand(); break; case "Default Auto": default: - * autonomousCommand = new ExampleCommand(); break; } - */ - - // schedule the autonomous command (example) + + /** + * This autonomous (along with the chooser code above) shows how to select + * between different autonomous modes using the dashboard. The sendable + * chooser code works with the Java SmartDashboard. If you prefer the + * LabVIEW Dashboard, remove all of the chooser code and uncomment the + * getString code to get the auto name from the text box below the Gyro + * + *

You can add additional auto modes by adding additional commands to the + * chooser code above (like the commented example) or additional comparisons + * to the switch structure below with additional strings & commands. + */ + + @Override + public void autonomousInit() { + + + /* + * String autoSelected = SmartDashboard.getString("Auto Selector", + * "Default"); switch(autoSelected) { case "My Auto": autonomousCommand + * = new MyAutoCommand(); break; case "Default Auto": default: + * autonomousCommand = new ExampleCommand(); break; } + */ + + // schedule the autonomous command (example) if (autonomousCommand != null) { autonomousCommand.start(); } } - - /** - * This function is called periodically during autonomous. - */ + + /** + * This function is called periodically during autonomous. + */ @Override public void autonomousPeriodic() { Scheduler.getInstance().run(); } - + @Override public void teleopInit() { // This makes sure that the autonomous stops running when @@ -137,49 +137,49 @@ public void teleopInit() { if (autonomousCommand != null) { autonomousCommand.cancel(); } + + driveCommand.start(); + + } - driveCommand.start(); - } - - - /** - * This function is called periodically during operator control. - */ - @Override - public void teleopPeriodic() { - if(XboxMap.runFollowLineCommand()){ - if(followLineCommand.isRunning()){ - followLineCommand.cancel(); - driveCommand.start(); - } - else{ - driveCommand.cancel(); - followLineCommand.start(); - } - - } - - - if(XboxMap.toggleArmControl()){ - if(armCommand.isRunning()){ - armCommand.cancel(); - driveCommand.start(); - } - else{ - driveCommand.cancel(); - armCommand.start(); - - } + /** + * This function is called periodically during operator control. + */ + @Override + public void teleopPeriodic() { + if(XboxMap.runFollowLineCommand()){ + if(followLineCommand.isRunning()){ + followLineCommand.cancel(); + driveCommand.start(); + } + else{ + driveCommand.cancel(); + followLineCommand.start(); + } + + } + + + if(XboxMap.toggleArmControl()){ + if(armCommand.isRunning()){ + armCommand.cancel(); + driveCommand.start(); + } + else{ + driveCommand.cancel(); + armCommand.start(); + + } + } + SmartDashboard.putBoolean("Arm Conrol", armCommand.isRunning()); + Scheduler.getInstance().run(); } - SmartDashboard.putBoolean("Arm Conrol", armCommand.isRunning()); - Scheduler.getInstance().run(); - } - - - /** - * This function is called periodically during test mode. - */ + + + /** + * This function is called periodically during test mode. + */ @Override public void testPeriodic() { } From 240cdd23a5b3459aab63d36d16da19c90bae8415 Mon Sep 17 00:00:00 2001 From: trajing Date: Tue, 12 Feb 2019 18:42:45 -0600 Subject: [PATCH 071/131] Interim HatchGrabber command & subsystem for testing purposes --- src/main/java/frc/robot/Robot.java | 8 ++- src/main/java/frc/robot/RobotMap.java | 7 +++ src/main/java/frc/robot/XboxMap.java | 22 +++++-- .../robot/commands/HatchGrabberCommand.java | 57 +++++++++++++++++++ .../subsystems/HatchGrabberSubsystem.java | 55 ++++++++++++++++++ 5 files changed, 144 insertions(+), 5 deletions(-) create mode 100644 src/main/java/frc/robot/commands/HatchGrabberCommand.java create mode 100644 src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index f8ba673..0dafde7 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -20,9 +20,11 @@ import frc.robot.commands.ArmCommand; import frc.robot.commands.DriveCommand; import frc.robot.commands.FollowLineCommand; +import frc.robot.commands.HatchGrabberCommand; import frc.robot.subsystems.ArmSubsystem; import frc.robot.subsystems.DriveSubsystem; import frc.robot.subsystems.FollowLineSubsystem; +import frc.robot.subsystems.HatchGrabberSubsystem; /** * The VM is configured to automatically run this class, and to call the @@ -38,11 +40,14 @@ public class Robot extends TimedRobot { public static ArmSubsystem armSubsystem = new ArmSubsystem(); public static FollowLineSubsystem followLineSubsystem = new FollowLineSubsystem(); + public static HatchGrabberSubsystem hatchGrabberSubsystem = new HatchGrabberSubsystem(); + UsbCamera camera; Command autonomousCommand; Command driveCommand; Command followLineCommand; Command armCommand; + Command hgCommand; SendableChooser chooser = new SendableChooser<>(); CameraServer server; @@ -59,6 +64,7 @@ public void robotInit() { driveCommand = new DriveCommand(); autonomousCommand = new FollowLineCommand(); followLineCommand = new FollowLineCommand(); + hgCommand = new HatchGrabberCommand(); armCommand = new ArmCommand(); server = CameraServer.getInstance(); //server.startAutomaticCapture("Ground",0); @@ -137,7 +143,7 @@ public void teleopInit() { if (autonomousCommand != null) { autonomousCommand.cancel(); } - + hgCommand.start(); driveCommand.start(); } diff --git a/src/main/java/frc/robot/RobotMap.java b/src/main/java/frc/robot/RobotMap.java index c2eab78..af027e0 100644 --- a/src/main/java/frc/robot/RobotMap.java +++ b/src/main/java/frc/robot/RobotMap.java @@ -45,4 +45,11 @@ public class RobotMap { //TODO Set these to real ports public static final int UPPER_WRIST_LIMIT_PORT = 0; public static final int LOWER_WRIST_LIMIT_PORT = 0; + + public static final int GRAB_PISTON_F = 0; + public static final int GRAB_PISTON_R = 0; + public static final int RELEASE_PISTON_1_F = 0; + public static final int RELEASE_PISTON_1_R = 0; + public static final int RELEASE_PISTON_2_F = 0; + public static final int RELEASE_PISTON_2_R = 0; } diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index d7bb78a..fc11bff 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -69,10 +69,24 @@ public static double left() { static public boolean runFollowLineCommand() { return oi.ps4.getAValue(); - } - public static boolean startAutoBrakerSystem(){ + } + public static boolean startAutoBrakerSystem(){ return oi.ps4.getRightBumperValue(); - } + } - + public static boolean ejectHatch() { + return oi.xbox.getYValue(); + } + + public static boolean retractEjectors() { + return oi.xbox.getBValue(); + } + + public static boolean extendGrabber() { + return oi.xbox.getRightBumperValue(); + } + + public static boolean retractGrabber() { + return oi.xbox.getLeftBumperValue(); + } } \ No newline at end of file diff --git a/src/main/java/frc/robot/commands/HatchGrabberCommand.java b/src/main/java/frc/robot/commands/HatchGrabberCommand.java new file mode 100644 index 0000000..5d535e0 --- /dev/null +++ b/src/main/java/frc/robot/commands/HatchGrabberCommand.java @@ -0,0 +1,57 @@ +/*----------------------------------------------------------------------------*/ +/* Copyright (c) 2018 FIRST. All Rights Reserved. */ +/* Open Source Software - may be modified and shared by FRC teams. The code */ +/* must be accompanied by the FIRST BSD license file in the root directory of */ +/* the project. */ +/*----------------------------------------------------------------------------*/ + +package frc.robot.commands; + +import edu.wpi.first.wpilibj.command.Command; +import frc.robot.Robot; +import frc.robot.XboxMap; +import frc.robot.subsystems.HatchGrabberSubsystem; + +public class HatchGrabberCommand extends Command { + HatchGrabberSubsystem hatchGrabberSubsystem = Robot.hatchGrabberSubsystem; + + public HatchGrabberCommand() { + requires(hatchGrabberSubsystem); + } + + // Called just before this Command runs the first time + @Override + protected void initialize() { + } + + // Called repeatedly when this Command is scheduled to run + @Override + protected void execute() { + if (XboxMap.ejectHatch()) { + hatchGrabberSubsystem.releaseHatch(); + } else if (XboxMap.retractEjectors()) { + hatchGrabberSubsystem.retractEjectors(); + } else if (XboxMap.extendGrabber()) { + hatchGrabberSubsystem.extendGrabber(); + } else if (XboxMap.retractGrabber()) { + hatchGrabberSubsystem.retractGrabber(); + } + } + + // Make this return true when this Command no longer needs to run execute() + @Override + protected boolean isFinished() { + return false; + } + + // Called once after isFinished returns true + @Override + protected void end() { + } + + // Called when another command which requires one or more of the same + // subsystems is scheduled to run + @Override + protected void interrupted() { + } +} diff --git a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java new file mode 100644 index 0000000..297bcf2 --- /dev/null +++ b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java @@ -0,0 +1,55 @@ +/*----------------------------------------------------------------------------*/ +/* Copyright (c) 2018 FIRST. All Rights Reserved. */ +/* Open Source Software - may be modified and shared by FRC teams. The code */ +/* must be accompanied by the FIRST BSD license file in the root directory of */ +/* the project. */ +/*----------------------------------------------------------------------------*/ + +package frc.robot.subsystems; + +import com.ctre.phoenix.motorcontrol.can.TalonSRX; + +import edu.wpi.first.wpilibj.DoubleSolenoid; +import edu.wpi.first.wpilibj.DoubleSolenoid.Value; +import edu.wpi.first.wpilibj.command.Subsystem; +import frc.robot.RobotMap; + +/** +* Add your docs here. +*/ +public class HatchGrabberSubsystem extends Subsystem { + // Put methods for controlling this subsystem + // here. Call these from Commands. + + DoubleSolenoid grabberPiston, releasePiston1, releasePiston2; + + public HatchGrabberSubsystem() { + grabberPiston = new DoubleSolenoid(RobotMap.GRAB_PISTON_F, RobotMap.GRAB_PISTON_R); + releasePiston1 = new DoubleSolenoid(RobotMap.RELEASE_PISTON_1_F, RobotMap.RELEASE_PISTON_1_R); + releasePiston2 = new DoubleSolenoid(RobotMap.RELEASE_PISTON_2_F, RobotMap.RELEASE_PISTON_2_R); + } + + public void extendGrabber() { + grabberPiston.set(Value.kForward); + } + + public void retractGrabber() { + grabberPiston.set(Value.kReverse); + } + + public void releaseHatch() { + releasePiston1.set(Value.kForward); + releasePiston2.set(Value.kForward); + } + + public void retractEjectors() { + releasePiston1.set(Value.kReverse); + releasePiston2.set(Value.kReverse); + } + + @Override + public void initDefaultCommand() { + // Set the default command for a subsystem here. + // setDefaultCommand(new MySpecialCommand()); + } +} From bf87fb1a59c250b9c042e97bb342d0a4a82e7530 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Tue, 12 Feb 2019 18:43:28 -0600 Subject: [PATCH 072/131] Fixed Arm Subsystem merge thing I fucked up earlier --- src/main/java/frc/robot/subsystems/ArmSubsystem.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem.java b/src/main/java/frc/robot/subsystems/ArmSubsystem.java index 499f4b7..5a98cc7 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem.java @@ -49,12 +49,12 @@ public ArmSubsystem() { lowerLimitWrist = new DigitalInput(RobotMap.UPPER_WRIST_LIMIT_PORT); } - public Encoder getWristEncoder() { - return wristEncoder; + public double getShoulderEncoderAngle() { + return 360 * getShoulderTalons().encTicks() / ConstantsMap.SHOULDER_ENCODER_TICKS_PER_ROTATION; } - public Encoder getShoulderEncoder() { - return shoulderEncoder; + public double getWristEncoderAngle() { + return 360 * getWristTalons().encTicks() / ConstantsMap.WRIST_ENCODER_TICKS_PER_ROTATION; } public TalonSet getWristTalons() { From dd9094c4829f5f86d52029391f9ef0c1b4f5aeef Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Tue, 12 Feb 2019 19:39:15 -0600 Subject: [PATCH 073/131] Testing leveling code and stuff so I uncommented and also just for Travis fjdksla;fhuiafgjrwa --- src/main/java/frc/robot/commands/ArmCommand.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/main/java/frc/robot/commands/ArmCommand.java b/src/main/java/frc/robot/commands/ArmCommand.java index 4d57879..0d17ab4 100644 --- a/src/main/java/frc/robot/commands/ArmCommand.java +++ b/src/main/java/frc/robot/commands/ArmCommand.java @@ -59,7 +59,6 @@ protected void execute() { wristLevelPID.disable(); */ - /* if(Math.abs(amountToMoveWristJoint) < ConstantsMap.JOYSTICK_SENSITIVITY && Math.abs(amountToMoveShoulderJoint) < ConstantsMap.JOYSTICK_SENSITIVITY) { //Do not press multiple presets at the same time. //TODO Set the angles that the arm and wrist should go to. @@ -143,8 +142,6 @@ else if(XboxMap.enableLevel3Preset()) { armSubsystem.setShoulderJointSpeed(0); } } - */ - } From c83719c24b88748d930bfa3c58aa760dd02e671a Mon Sep 17 00:00:00 2001 From: aaronjrod Date: Tue, 12 Feb 2019 23:19:13 -0600 Subject: [PATCH 074/131] Changes from 2/12/19 --- src/main/java/frc/robot/ConstantsMap.java | 2 +- src/main/java/frc/robot/Robot.java | 6 ++- src/main/java/frc/robot/RobotMap.java | 11 ++-- .../java/frc/robot/commands/ArmCommand.java | 54 ++++++++++--------- .../frc/robot/subsystems/ArmSubsystem.java | 22 ++------ .../subsystems/HatchGrabberSubsystem.java | 4 +- 6 files changed, 47 insertions(+), 52 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 5094f10..90a9239 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -45,7 +45,7 @@ public class ConstantsMap { public static final double WRIST_ZERO_KD = 1; public static final double WRIST_ZERO_KF = 0; - public static final double WRIST_SPEED_MULT = .5; + public static final double WRIST_SPEED_MULT = .1; public static final double SHOULDER_SPEED_MULT = .1; public static final double WRIST_ENCODER_TICKS_PER_ROTATION = 4096; diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 0dafde7..8f30cec 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -12,6 +12,7 @@ import edu.wpi.cscore.UsbCamera; import edu.wpi.cscore.VideoMode.PixelFormat; import edu.wpi.first.cameraserver.CameraServer; +import edu.wpi.first.wpilibj.Compressor; import edu.wpi.first.wpilibj.TimedRobot; import edu.wpi.first.wpilibj.command.Command; import edu.wpi.first.wpilibj.command.Scheduler; @@ -50,7 +51,7 @@ public class Robot extends TimedRobot { Command hgCommand; SendableChooser chooser = new SendableChooser<>(); CameraServer server; - + Compressor compressor; boolean armEnable; /** * This function is run when the robot is first started up and should be @@ -67,6 +68,7 @@ public void robotInit() { hgCommand = new HatchGrabberCommand(); armCommand = new ArmCommand(); server = CameraServer.getInstance(); + compressor = new Compressor(10); //server.startAutomaticCapture("Ground",0); } @@ -143,6 +145,8 @@ public void teleopInit() { if (autonomousCommand != null) { autonomousCommand.cancel(); } + + compressor.start(); hgCommand.start(); driveCommand.start(); diff --git a/src/main/java/frc/robot/RobotMap.java b/src/main/java/frc/robot/RobotMap.java index af027e0..7d4d6a6 100644 --- a/src/main/java/frc/robot/RobotMap.java +++ b/src/main/java/frc/robot/RobotMap.java @@ -39,17 +39,16 @@ public class RobotMap { public static final int WRIST_ENCODER_PORT_A = 13; public static final int WRIST_ENCODER_PORT_B = 14; + //These might have to change? public static final int UPPER_ARM_LIMIT_PORT = 15; public static final int LOWER_ARM_LIMIT_PORT = 16; //TODO Set these to real ports - public static final int UPPER_WRIST_LIMIT_PORT = 0; + public static final int UPPER_WRIST_LIMIT_PORT = 20; public static final int LOWER_WRIST_LIMIT_PORT = 0; - public static final int GRAB_PISTON_F = 0; - public static final int GRAB_PISTON_R = 0; + public static final int GRAB_PISTON_F = 4; + public static final int GRAB_PISTON_R = 5; public static final int RELEASE_PISTON_1_F = 0; - public static final int RELEASE_PISTON_1_R = 0; - public static final int RELEASE_PISTON_2_F = 0; - public static final int RELEASE_PISTON_2_R = 0; + public static final int RELEASE_PISTON_1_R = 6; } diff --git a/src/main/java/frc/robot/commands/ArmCommand.java b/src/main/java/frc/robot/commands/ArmCommand.java index 0d17ab4..2c02504 100644 --- a/src/main/java/frc/robot/commands/ArmCommand.java +++ b/src/main/java/frc/robot/commands/ArmCommand.java @@ -7,7 +7,7 @@ import edu.wpi.first.wpilibj.PIDSource; import edu.wpi.first.wpilibj.PIDSourceType; import edu.wpi.first.wpilibj.command.Command; - +import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import frc.robot.Robot; import frc.robot.XboxMap; import frc.robot.pids.EncoderMotorPID; @@ -85,6 +85,7 @@ else if(XboxMap.enableLevel3Preset()) { //Otherwise the wrist should not be levelling at the moment //Run so long as we are not moving the joystick, and the switch is on and or the enable level wrist button is hit //It is only turned off if you move the joystick + System.out.println("Wassup"); if((Math.abs(amountToMoveWristJoint) < ConstantsMap.JOYSTICK_SENSITIVITY) && (enableLevelWrist || XboxMap.enableWristLevelling())) { wristLevelPID.setSetpoint(getWristLevelledAngle()); wristLevelPID.enable(); @@ -97,6 +98,7 @@ else if(XboxMap.enableLevel3Preset()) { //then the angle of the wrist will be preserved //Otherwise the wrist is able to move freely without PID for both types of levelling //The PID will continue working until it has reached its target, the shoulder joystick moves, or enableLevelWrist is on + System.out.println("Wassup again"); if (!enableLevelWrist && Math.abs(amountToMoveWristJoint) < ConstantsMap.JOYSTICK_SENSITIVITY && Math.abs(getRelativeLevelledAngle(armSubsystem.getWristEncoderAngle() - wristLevelPID.getSetpoint())) > ConstantsMap.WRIST_TOLERANCE) { wristLevelPID.setSetpoint(getRelativeLevelledAngle(armSubsystem.getWristEncoderAngle())); @@ -109,6 +111,7 @@ else if(XboxMap.enableLevel3Preset()) { //then the angle of the shoulder will be preserved //Otherwise the shoulder is able to move freely without PID //The PID will continue working until it has reached its target or the shoulder joystick moves + System.out.println("Wassup again again"); if (Math.abs(amountToMoveShoulderJoint) < ConstantsMap.JOYSTICK_SENSITIVITY && Math.abs(getShoulderAngle() - armMovementPID.getSetpoint()) > ConstantsMap.SHOULDER_TOLERANCE) { armMovementPID.setSetpoint(armSubsystem.getShoulderEncoderAngle() / ConstantsMap.SHOULDER_GEAR_RATIO + ConstantsMap.SHOULDER_OFFSET); @@ -119,29 +122,32 @@ else if(XboxMap.enableLevel3Preset()) { } //Check to see if the wrist or shoulder has reached the limits and we need to stop them - if (armSubsystem.getShoulderLowerLimit()) { - if (armSubsystem.getShoulderSpeed() < 0) { - armSubsystem.setShoulderJointSpeed(0); - } - } - - if (armSubsystem.getShoulderUpperLimit()) { - if (armSubsystem.getShoulderSpeed() > 0) { - armSubsystem.setShoulderJointSpeed(0); - } - } - - if (armSubsystem.getWristLowerLimit()) { - if (armSubsystem.getWristSpeed() < 0) { - armSubsystem.setShoulderJointSpeed(0); - } - } - - if (armSubsystem.getWristUpperLimit()) { - if (armSubsystem.getWristSpeed() > 0) { - armSubsystem.setShoulderJointSpeed(0); - } - } + // System.out.println("Hello"); + // if (armSubsystem.getShoulderLowerLimit()) { + // if (armSubsystem.getShoulderSpeed() < 0) { + // armSubsystem.setShoulderJointSpeed(0); + // } + // } + + // if (armSubsystem.getShoulderUpperLimit()) { + // if (armSubsystem.getShoulderSpeed() > 0) { + // armSubsystem.setShoulderJointSpeed(0); + // } + // } + + // if (armSubsystem.getWristLowerLimit()) { + // if (armSubsystem.getWristSpeed() < 0) { + // armSubsystem.setShoulderJointSpeed(0); + // System.out.println("Yeeting"); + // } + // } + SmartDashboard.putBoolean("limit Switch Wrist", armSubsystem.getWristLowerLimit()); + + // if (armSubsystem.getWristUpperLimit()) { + // if (armSubsystem.getWristSpeed() > 0) { + // armSubsystem.setShoulderJointSpeed(0); + // } + // } } diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem.java b/src/main/java/frc/robot/subsystems/ArmSubsystem.java index 5a98cc7..b8aedff 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem.java @@ -24,17 +24,12 @@ public class ArmSubsystem extends Subsystem { // here. Call these from Commands. private TalonSet shoulderMotors, wristMotor; - private Encoder shoulderEncoder, wristEncoder; + private DigitalInput upperLimit, lowerLimit, upperLimitWrist, lowerLimitWrist; public ArmSubsystem() { - shoulderEncoder = new Encoder(RobotMap.SHOULDER_ENCODER_PORT_A, RobotMap.SHOULDER_ENCODER_PORT_B); - wristEncoder = new Encoder(RobotMap.WRIST_ENCODER_PORT_A, RobotMap.WRIST_ENCODER_PORT_B); - wristEncoder.reset(); - shoulderEncoder.reset(); - WPI_TalonSRX rightShoulder, leftShoulder; rightShoulder = new WPI_TalonSRX(RobotMap.SHOULDER_JOINT_RIGHT_PORT); leftShoulder = new WPI_TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); @@ -43,9 +38,9 @@ public ArmSubsystem() { wristMotor = new TalonSet(new WPI_TalonSRX(RobotMap.WRIST_JOINT_PORT)); - upperLimit = new DigitalInput(RobotMap.UPPER_ARM_LIMIT_PORT); - lowerLimit = new DigitalInput(RobotMap.LOWER_ARM_LIMIT_PORT); - upperLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); + //upperLimit = new DigitalInput(RobotMap.UPPER_ARM_LIMIT_PORT); + //lowerLimit = new DigitalInput(RobotMap.LOWER_ARM_LIMIT_PORT); + //upperLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); lowerLimitWrist = new DigitalInput(RobotMap.UPPER_WRIST_LIMIT_PORT); } @@ -73,14 +68,6 @@ public void setWristJointSpeed(double speed) { wristMotor.set(speed); } - public double getShoulderDistance() { - return shoulderEncoder.getDistance(); - } - - public double getWristDistance() { - return wristEncoder.getDistance(); - } - public boolean getShoulderUpperLimit(){ return upperLimit.get(); } @@ -94,6 +81,7 @@ public boolean getWristUpperLimit(){ } public boolean getWristLowerLimit(){ + return lowerLimitWrist.get(); } diff --git a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java index 297bcf2..174005b 100644 --- a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java +++ b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java @@ -24,9 +24,9 @@ public class HatchGrabberSubsystem extends Subsystem { DoubleSolenoid grabberPiston, releasePiston1, releasePiston2; public HatchGrabberSubsystem() { + grabberPiston = new DoubleSolenoid(RobotMap.GRAB_PISTON_F, RobotMap.GRAB_PISTON_R); releasePiston1 = new DoubleSolenoid(RobotMap.RELEASE_PISTON_1_F, RobotMap.RELEASE_PISTON_1_R); - releasePiston2 = new DoubleSolenoid(RobotMap.RELEASE_PISTON_2_F, RobotMap.RELEASE_PISTON_2_R); } public void extendGrabber() { @@ -39,12 +39,10 @@ public void retractGrabber() { public void releaseHatch() { releasePiston1.set(Value.kForward); - releasePiston2.set(Value.kForward); } public void retractEjectors() { releasePiston1.set(Value.kReverse); - releasePiston2.set(Value.kReverse); } @Override From 635c92a5b370352ac407a17518966cbc2a47f04b Mon Sep 17 00:00:00 2001 From: ayush17agarwal Date: Wed, 13 Feb 2019 14:25:53 -0600 Subject: [PATCH 075/131] Changed HatchGrabber to toggle left and right bumpers --- src/main/java/frc/robot/ConstantsMap.java | 5 +-- src/main/java/frc/robot/XboxMap.java | 28 ++++++++----- .../robot/commands/HatchGrabberCommand.java | 42 +++++++++++++++---- 3 files changed, 54 insertions(+), 21 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 90a9239..60d24c7 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -12,13 +12,11 @@ */ public class ConstantsMap { - - public static final double ROBOT_WHEEL_RADIUS_INCHES = 2; //inches public static final double DRIVE_ENCODER_TICKS_PER_ROTATION = 4096; //ticks public static final double DRIVE_ENCODER_DIST_PER_TICK = ((ROBOT_WHEEL_RADIUS_INCHES * 2 * Math.PI)/(DRIVE_ENCODER_TICKS_PER_ROTATION)); //inches public static final double TURTLE_SPEED = .5; //to be determined - public static final double JOYSTICK_SENSITIVITY = 1; //to be determined + public static final double JOYSTICK_SENSITIVITY = .1; //to be determined //for line follower @@ -73,4 +71,5 @@ public class ConstantsMap { public static final double PID_INTEGRAL_CONSTANT = .2; public static final double PID_DERIVATIVE_CONSTANT = .001; public static final double PID_INPUT_MAX = 180; + } \ No newline at end of file diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index fc11bff..5079ea1 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -74,19 +74,27 @@ public static boolean startAutoBrakerSystem(){ return oi.ps4.getRightBumperValue(); } - public static boolean ejectHatch() { - return oi.xbox.getYValue(); - } - - public static boolean retractEjectors() { - return oi.xbox.getBValue(); + public static boolean hatchPiston() { + return oi.xbox.getLeftBumperValue(); } - public static boolean extendGrabber() { + public static boolean grabberPiston() { return oi.xbox.getRightBumperValue(); } + + // public static boolean ejectHatch() { + // return oi.xbox.getYValue(); + // } - public static boolean retractGrabber() { - return oi.xbox.getLeftBumperValue(); - } + // public static boolean retractEjectors() { + // return oi.xbox.getBValue(); + // } + + // public static boolean extendGrabber() { + // return oi.xbox.getRightBumperValue(); + // } + + // public static boolean retractGrabber() { + // return oi.xbox.getLeftBumperValue(); + // } } \ No newline at end of file diff --git a/src/main/java/frc/robot/commands/HatchGrabberCommand.java b/src/main/java/frc/robot/commands/HatchGrabberCommand.java index 5d535e0..ed559df 100644 --- a/src/main/java/frc/robot/commands/HatchGrabberCommand.java +++ b/src/main/java/frc/robot/commands/HatchGrabberCommand.java @@ -14,6 +14,10 @@ public class HatchGrabberCommand extends Command { HatchGrabberSubsystem hatchGrabberSubsystem = Robot.hatchGrabberSubsystem; + private boolean grabberOut = false; + private boolean hatchReleased = false; + private double lastPressedG = 0; + private double lastPressedH = 0; public HatchGrabberCommand() { requires(hatchGrabberSubsystem); @@ -27,14 +31,36 @@ protected void initialize() { // Called repeatedly when this Command is scheduled to run @Override protected void execute() { - if (XboxMap.ejectHatch()) { - hatchGrabberSubsystem.releaseHatch(); - } else if (XboxMap.retractEjectors()) { - hatchGrabberSubsystem.retractEjectors(); - } else if (XboxMap.extendGrabber()) { - hatchGrabberSubsystem.extendGrabber(); - } else if (XboxMap.retractGrabber()) { - hatchGrabberSubsystem.retractGrabber(); + // if (XboxMap.ejectHatch()) { + // hatchGrabberSubsystem.releaseHatch(); + // } else if (XboxMap.retractEjectors()) { + // hatchGrabberSubsystem.retractEjectors(); + // } else if (XboxMap.extendGrabber()) { + // hatchGrabberSubsystem.extendGrabber(); + // } else if (XboxMap.retractGrabber()) { + // hatchGrabberSubsystem.retractGrabber(); + // } + + if(XboxMap.grabberPiston() && (System.currentTimeMillis() - lastPressedG) > 500) { + lastPressedG = System.currentTimeMillis(); + if(grabberOut) { + hatchGrabberSubsystem.extendGrabber(); + grabberOut = !grabberOut; + } + else { + hatchGrabberSubsystem.retractGrabber(); + grabberOut = !grabberOut; + } + } + + if(XboxMap.hatchPiston() && (System.currentTimeMillis() - lastPressedH) > 500) { + lastPressedH = System.currentTimeMillis(); + if(hatchReleased) { + hatchGrabberSubsystem.releaseHatch(); + } + else { + hatchGrabberSubsystem.retractEjectors(); + } } } From 1583758a6eb112ff2cdf79ec65abf9dbd92c353f Mon Sep 17 00:00:00 2001 From: trajing Date: Wed, 13 Feb 2019 18:00:16 -0600 Subject: [PATCH 076/131] Refactor TalonSet to be responsible for distance-per-tick information --- src/main/java/frc/robot/TalonSet.java | 12 +++++++++++- src/main/java/frc/robot/pids/EncoderMotorPID.java | 6 ++---- src/main/java/frc/robot/subsystems/ArmSubsystem.java | 10 +++++----- 3 files changed, 18 insertions(+), 10 deletions(-) diff --git a/src/main/java/frc/robot/TalonSet.java b/src/main/java/frc/robot/TalonSet.java index 5ac58d9..4b11c65 100644 --- a/src/main/java/frc/robot/TalonSet.java +++ b/src/main/java/frc/robot/TalonSet.java @@ -9,6 +9,7 @@ */ public class TalonSet { TalonSRX motors[]; + double dpt; public TalonSet(TalonSRX[] talons) { motors = talons; @@ -19,6 +20,11 @@ public TalonSet(TalonSRX talon) { motors = new TalonSRX[] { talon }; } + public TalonSet setDistance(double dpt) { + this.dpt = dpt; + return this; + } + public void set(double speed) { for (TalonSRX motor : motors) motor.set(ControlMode.PercentOutput,speed); } @@ -30,7 +36,11 @@ public double get() { return motors[0].getMotorOutputPercent(); } - public int encTicks() { + public int getEncoderTicks() { return motors[0].getSelectedSensorPosition(0); } + + public double getEncoderDistance() { + return getEncoderTicks() * dpt; + } } diff --git a/src/main/java/frc/robot/pids/EncoderMotorPID.java b/src/main/java/frc/robot/pids/EncoderMotorPID.java index 0dc44ff..9e5a26c 100644 --- a/src/main/java/frc/robot/pids/EncoderMotorPID.java +++ b/src/main/java/frc/robot/pids/EncoderMotorPID.java @@ -15,12 +15,10 @@ public class EncoderMotorPID implements PIDSource, PIDOutput { PIDSource source; double dpt; - public EncoderMotorPID(TalonSet mot, double kp, double ki, double kd, double kf, double dpt) { + public EncoderMotorPID(TalonSet mot, double kp, double ki, double kd, double kf) { motor = mot; pid = new PIDController(kp, ki, kd, kf, this, this); pidSourceType = PIDSourceType.kDisplacement; - this.dpt = dpt; - } public EncoderMotorPID setP(double kp) { @@ -65,7 +63,7 @@ public PIDSourceType getPIDSourceType() { } public double pidGet() { - return motor.encTicks() * dpt; + return motor.getEncoderDistance(); } public EncoderMotorPID setSetpoint(double sp) { diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem.java b/src/main/java/frc/robot/subsystems/ArmSubsystem.java index b8aedff..8da0a69 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem.java @@ -34,9 +34,9 @@ public ArmSubsystem() { rightShoulder = new WPI_TalonSRX(RobotMap.SHOULDER_JOINT_RIGHT_PORT); leftShoulder = new WPI_TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); rightShoulder.setInverted(true); - shoulderMotors = new TalonSet(new WPI_TalonSRX[] {rightShoulder, leftShoulder}); - - wristMotor = new TalonSet(new WPI_TalonSRX(RobotMap.WRIST_JOINT_PORT)); + shoulderMotors = new TalonSet(new WPI_TalonSRX[] {rightShoulder, leftShoulder}) + .setDistance(360 / ConstantsMap.WRIST_ENCODER_TICKS_PER_ROTATION); + wristMotor = new TalonSet(new WPI_TalonSRX(RobotMap.WRIST_JOINT_PORT)).setDistance(360 / ConstantsMap.WRIST_ENCODER_TICKS_PER_ROTATION); //upperLimit = new DigitalInput(RobotMap.UPPER_ARM_LIMIT_PORT); //lowerLimit = new DigitalInput(RobotMap.LOWER_ARM_LIMIT_PORT); @@ -45,11 +45,11 @@ public ArmSubsystem() { } public double getShoulderEncoderAngle() { - return 360 * getShoulderTalons().encTicks() / ConstantsMap.SHOULDER_ENCODER_TICKS_PER_ROTATION; + return shoulderMotors.getEncoderDistance(); } public double getWristEncoderAngle() { - return 360 * getWristTalons().encTicks() / ConstantsMap.WRIST_ENCODER_TICKS_PER_ROTATION; + return wristMotor.getEncoderDistance(); } public TalonSet getWristTalons() { From da62bf3055f4b6f610eea3c66d01192273c284a5 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Wed, 13 Feb 2019 18:14:32 -0600 Subject: [PATCH 077/131] FIguring out angles --- src/main/java/frc/robot/commands/ArmCommand.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/main/java/frc/robot/commands/ArmCommand.java b/src/main/java/frc/robot/commands/ArmCommand.java index 2c02504..105bc07 100644 --- a/src/main/java/frc/robot/commands/ArmCommand.java +++ b/src/main/java/frc/robot/commands/ArmCommand.java @@ -80,6 +80,11 @@ else if(XboxMap.enableLevel3Preset()) { armMovementPID.enable(); } + //Print out encoder values for testing + SmartDashboard.putNumber("Shoulder Angle", armSubsystem.getShoulderEncoderAngle()); + SmartDashboard.putNumber("Wrist Angle", armSubsystem.getWristEncoderAngle()); + + /* //If the joystick is at 0 and the button was true previously then run levelling of the wrist //or the current button is not equal to the previous press when the joystick is at 0 //Otherwise the wrist should not be levelling at the moment @@ -120,6 +125,7 @@ else if(XboxMap.enableLevel3Preset()) { armMovementPID.disable(); armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint * ConstantsMap.SHOULDER_SPEED_MULT); } + */ //Check to see if the wrist or shoulder has reached the limits and we need to stop them // System.out.println("Hello"); @@ -141,7 +147,7 @@ else if(XboxMap.enableLevel3Preset()) { // System.out.println("Yeeting"); // } // } - SmartDashboard.putBoolean("limit Switch Wrist", armSubsystem.getWristLowerLimit()); + //SmartDashboard.putBoolean("limit Switch Wrist", armSubsystem.getWristLowerLimit()); // if (armSubsystem.getWristUpperLimit()) { // if (armSubsystem.getWristSpeed() > 0) { @@ -165,7 +171,7 @@ private double getShoulderAngle() { * @return */ private double getWristLevelledAngle() { - return armSubsystem.getShoulderEncoderAngle() + ConstantsMap.WRIST_OFFSET; + return armSubsystem.getShoulderEncoderAngle();//Do the math here right now } /** From d0d36e9d9608d4144c4b3f5559d5551c1a8e1367 Mon Sep 17 00:00:00 2001 From: Matthew Hokinson Date: Wed, 13 Feb 2019 18:16:51 -0600 Subject: [PATCH 078/131] Moved stuff to robot periodic --- src/main/java/frc/robot/Robot.java | 3 +++ src/main/java/frc/robot/commands/ArmCommand.java | 4 ---- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 8f30cec..37c5364 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -83,6 +83,9 @@ public void robotInit() { */ public void robotPeriodic() { + //Print out encoder values for testing on Arm leveling + SmartDashboard.putNumber("Shoulder Angle", armSubsystem.getShoulderEncoderAngle()); + SmartDashboard.putNumber("Wrist Angle", armSubsystem.getWristEncoderAngle()); } /** diff --git a/src/main/java/frc/robot/commands/ArmCommand.java b/src/main/java/frc/robot/commands/ArmCommand.java index 105bc07..6c7419a 100644 --- a/src/main/java/frc/robot/commands/ArmCommand.java +++ b/src/main/java/frc/robot/commands/ArmCommand.java @@ -80,10 +80,6 @@ else if(XboxMap.enableLevel3Preset()) { armMovementPID.enable(); } - //Print out encoder values for testing - SmartDashboard.putNumber("Shoulder Angle", armSubsystem.getShoulderEncoderAngle()); - SmartDashboard.putNumber("Wrist Angle", armSubsystem.getWristEncoderAngle()); - /* //If the joystick is at 0 and the button was true previously then run levelling of the wrist //or the current button is not equal to the previous press when the joystick is at 0 From 8f5b4f798ef6f5e24b911fe554701b5ed98ef9db Mon Sep 17 00:00:00 2001 From: trajing Date: Wed, 13 Feb 2019 18:29:54 -0600 Subject: [PATCH 079/131] testing changes --- src/main/java/frc/robot/Robot.java | 2 -- .../java/frc/robot/commands/ArmCommand.java | 22 +++++++++---------- .../frc/robot/subsystems/ArmSubsystem.java | 2 +- 3 files changed, 12 insertions(+), 14 deletions(-) diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 37c5364..04e63db 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -68,7 +68,6 @@ public void robotInit() { hgCommand = new HatchGrabberCommand(); armCommand = new ArmCommand(); server = CameraServer.getInstance(); - compressor = new Compressor(10); //server.startAutomaticCapture("Ground",0); } @@ -149,7 +148,6 @@ public void teleopInit() { autonomousCommand.cancel(); } - compressor.start(); hgCommand.start(); driveCommand.start(); diff --git a/src/main/java/frc/robot/commands/ArmCommand.java b/src/main/java/frc/robot/commands/ArmCommand.java index 6c7419a..28f5b34 100644 --- a/src/main/java/frc/robot/commands/ArmCommand.java +++ b/src/main/java/frc/robot/commands/ArmCommand.java @@ -30,11 +30,11 @@ protected void initialize() { System.out.println("Arm Command Started"); //Generalizes the interface between PID for each mechanism and its components. - /* wristLevelPID = new EncoderMotorPID(armSubsystem.getWristTalons(), ConstantsMap.WRIST_ZERO_KP, - ConstantsMap.WRIST_ZERO_KI, ConstantsMap.WRIST_ZERO_KD, ConstantsMap.WRIST_ZERO_KF, 0).setOutputRange(-1,1); + wristLevelPID = new EncoderMotorPID(armSubsystem.getWristTalons(), ConstantsMap.WRIST_ZERO_KP, + ConstantsMap.WRIST_ZERO_KI, ConstantsMap.WRIST_ZERO_KD, ConstantsMap.WRIST_ZERO_KF).setOutputRange(-1,1); armMovementPID = new EncoderMotorPID(armSubsystem.getWristTalons(), ConstantsMap.SHOULDER_MV_KP, - ConstantsMap.SHOULDER_MV_KI, ConstantsMap.SHOULDER_MV_KD, ConstantsMap.SHOULDER_MV_KF, ConstantsMap.SHOULDER_ENCODER_TICKS_PER_ROTATION).setOutputRange(-1,1); - */ + ConstantsMap.SHOULDER_MV_KI, ConstantsMap.SHOULDER_MV_KD, ConstantsMap.SHOULDER_MV_KF).setOutputRange(-1,1); + } // Called repeatedly when this Command is scheduled to run @@ -137,13 +137,13 @@ else if(XboxMap.enableLevel3Preset()) { // } // } - // if (armSubsystem.getWristLowerLimit()) { - // if (armSubsystem.getWristSpeed() < 0) { - // armSubsystem.setShoulderJointSpeed(0); - // System.out.println("Yeeting"); - // } - // } - //SmartDashboard.putBoolean("limit Switch Wrist", armSubsystem.getWristLowerLimit()); + if (armSubsystem.getWristLowerLimit()) { + if (armSubsystem.getWristSpeed() < 0) { + armSubsystem.setShoulderJointSpeed(0); + System.out.println("Yeeting"); + } + } + SmartDashboard.putBoolean("limit Switch Wrist", armSubsystem.getWristLowerLimit()); // if (armSubsystem.getWristUpperLimit()) { // if (armSubsystem.getWristSpeed() > 0) { diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem.java b/src/main/java/frc/robot/subsystems/ArmSubsystem.java index 8da0a69..47412ca 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem.java @@ -41,7 +41,7 @@ public ArmSubsystem() { //upperLimit = new DigitalInput(RobotMap.UPPER_ARM_LIMIT_PORT); //lowerLimit = new DigitalInput(RobotMap.LOWER_ARM_LIMIT_PORT); //upperLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); - lowerLimitWrist = new DigitalInput(RobotMap.UPPER_WRIST_LIMIT_PORT); + lowerLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); } public double getShoulderEncoderAngle() { From 6fdf8dac5aa73b7f4a13634b12574ed263a71da9 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Thu, 14 Feb 2019 11:44:36 -0600 Subject: [PATCH 080/131] arm and wrist angles working --- src/main/java/frc/robot/ConstantsMap.java | 10 +- src/main/java/frc/robot/Robot.java | 13 +- src/main/java/frc/robot/RobotMap.java | 2 +- src/main/java/frc/robot/TalonSet.java | 9 +- src/main/java/frc/robot/XboxMap.java | 8 +- .../java/frc/robot/commands/ArmCommand.java | 112 ++++++++++++++---- .../java/frc/robot/pids/EncoderMotorPID.java | 5 +- .../frc/robot/subsystems/ArmSubsystem.java | 28 +++-- 8 files changed, 145 insertions(+), 42 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 60d24c7..9051cfb 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -46,11 +46,17 @@ public class ConstantsMap { public static final double WRIST_SPEED_MULT = .1; public static final double SHOULDER_SPEED_MULT = .1; public static final double WRIST_ENCODER_TICKS_PER_ROTATION = 4096; + public static final double WRIST_ENCODER_ANGLE_PER_TICK = 360/((double)WRIST_ENCODER_TICKS_PER_ROTATION * 81); + public static final double WRIST_MIN_ANGLE = -100.0; + public static final double WRIST_MAX_ANGLE = 100.0; + public static final int SHOULDER_ENCODER_TICKS_PER_ROTATION = 4096; //ticks + public static final double SHOULDER_ENCODER_ANGLE_PER_TICK = 360/((double)SHOULDER_ENCODER_TICKS_PER_ROTATION * 70 * 5); + public static final double SHOULDER_GEAR_RATIO = 350.0; - public static final double SHOULDER_MIN_ANGLE = 23.0; - public static final double SHOULDER_MAX_ANGLE = 121.0; + public static final double SHOULDER_MIN_ANGLE = -45.0; + public static final double SHOULDER_MAX_ANGLE = 90.0; public static final double SHOULDER_MV_KP = 1.0; public static final double SHOULDER_MV_KI = 1.0; diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 04e63db..50ce0e5 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -64,7 +64,7 @@ public void robotInit() { // chooser.addOption("My Auto", new MyAutoCommand()); driveCommand = new DriveCommand(); autonomousCommand = new FollowLineCommand(); - followLineCommand = new FollowLineCommand(); + //followLineCommand = new FollowLineCommand(); hgCommand = new HatchGrabberCommand(); armCommand = new ArmCommand(); server = CameraServer.getInstance(); @@ -149,7 +149,8 @@ public void teleopInit() { } hgCommand.start(); - driveCommand.start(); + armCommand.start(); + //driveCommand.start(); } @@ -159,7 +160,7 @@ public void teleopInit() { */ @Override public void teleopPeriodic() { - if(XboxMap.runFollowLineCommand()){ + /* if(XboxMap.runFollowLineCommand()){ if(followLineCommand.isRunning()){ followLineCommand.cancel(); driveCommand.start(); @@ -169,10 +170,10 @@ public void teleopPeriodic() { followLineCommand.start(); } - } + } */ - if(XboxMap.toggleArmControl()){ + /* if(XboxMap.toggleArmControl()){ if(armCommand.isRunning()){ armCommand.cancel(); driveCommand.start(); @@ -182,7 +183,7 @@ public void teleopPeriodic() { armCommand.start(); } - } + } */ SmartDashboard.putBoolean("Arm Conrol", armCommand.isRunning()); Scheduler.getInstance().run(); } diff --git a/src/main/java/frc/robot/RobotMap.java b/src/main/java/frc/robot/RobotMap.java index 7d4d6a6..db52c87 100644 --- a/src/main/java/frc/robot/RobotMap.java +++ b/src/main/java/frc/robot/RobotMap.java @@ -45,7 +45,7 @@ public class RobotMap { //TODO Set these to real ports public static final int UPPER_WRIST_LIMIT_PORT = 20; - public static final int LOWER_WRIST_LIMIT_PORT = 0; + public static final int LOWER_WRIST_LIMIT_PORT = 1; public static final int GRAB_PISTON_F = 4; public static final int GRAB_PISTON_R = 5; diff --git a/src/main/java/frc/robot/TalonSet.java b/src/main/java/frc/robot/TalonSet.java index 4b11c65..5551c58 100644 --- a/src/main/java/frc/robot/TalonSet.java +++ b/src/main/java/frc/robot/TalonSet.java @@ -13,11 +13,11 @@ public class TalonSet { public TalonSet(TalonSRX[] talons) { motors = talons; - for (TalonSRX motor : motors) motor.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Absolute, 0, 0); } public TalonSet(TalonSRX talon) { motors = new TalonSRX[] { talon }; + } public TalonSet setDistance(double dpt) { @@ -37,9 +37,12 @@ public double get() { } public int getEncoderTicks() { - return motors[0].getSelectedSensorPosition(0); + return motors[0].getSelectedSensorPosition(); + } + public void zeroEncoder() { + System.out.println("Zeroed"); + motors[0].setSelectedSensorPosition(0); } - public double getEncoderDistance() { return getEncoderTicks() * dpt; } diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index 5079ea1..1ad9ca1 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -37,10 +37,16 @@ public static double controlWristJoint() { public static double controlShoulderJoint() { return oi.xbox.getLeftY(); } + public static boolean toggleArmControl() { return oi.xbox.getXValue(); } - + public static boolean zeroWrist() { + return oi.xbox.getXValue() && oi.xbox.getAValue() && oi.xbox.getBValue(); + } + public static boolean zeroShoulder() { + return oi.xbox.getXValue() && oi.xbox.getYValue() && oi.xbox.getBValue(); + } public static boolean enableWristLevelling() { return oi.xbox.getBValue(); } diff --git a/src/main/java/frc/robot/commands/ArmCommand.java b/src/main/java/frc/robot/commands/ArmCommand.java index 28f5b34..7287d82 100644 --- a/src/main/java/frc/robot/commands/ArmCommand.java +++ b/src/main/java/frc/robot/commands/ArmCommand.java @@ -18,8 +18,10 @@ public class ArmCommand extends Command { ArmSubsystem armSubsystem = Robot.armSubsystem; EncoderMotorPID wristLevelPID, armMovementPID; - private boolean enableLevelWrist; - + private boolean enableLevelWrist = true; + boolean manualMode = true; + private double armAngle; + private double wristAngle; public ArmCommand() { requires(armSubsystem); } @@ -32,14 +34,44 @@ protected void initialize() { //Generalizes the interface between PID for each mechanism and its components. wristLevelPID = new EncoderMotorPID(armSubsystem.getWristTalons(), ConstantsMap.WRIST_ZERO_KP, ConstantsMap.WRIST_ZERO_KI, ConstantsMap.WRIST_ZERO_KD, ConstantsMap.WRIST_ZERO_KF).setOutputRange(-1,1); - armMovementPID = new EncoderMotorPID(armSubsystem.getWristTalons(), ConstantsMap.SHOULDER_MV_KP, + armMovementPID = new EncoderMotorPID(armSubsystem.getShoulderTalons(), ConstantsMap.SHOULDER_MV_KP, ConstantsMap.SHOULDER_MV_KI, ConstantsMap.SHOULDER_MV_KD, ConstantsMap.SHOULDER_MV_KF).setOutputRange(-1,1); + + armAngle = armSubsystem.getShoulderEncoderAngle(); + wristAngle = armSubsystem.getWristEncoderAngle(); + wristLevelPID.getPID().setInputRange(-360, 360); + wristLevelPID.getPID().setOutputRange(-1, 1); + wristLevelPID.getPID().setContinuous(); + + armMovementPID.getPID().setInputRange(-360, 360); + armMovementPID.getPID().setOutputRange(-1, 1); + + armMovementPID.getPID().setContinuous(); } // Called repeatedly when this Command is scheduled to run @Override protected void execute() { + SmartDashboard.putBoolean("Mnaual Mode", manualMode); + + if(XboxMap.zeroWrist()){ + armSubsystem.zeroWrist(); + } + else if(XboxMap.zeroShoulder()){ + armSubsystem.zeroShoulder(); + } + else if(XboxMap.toggleArmControl()){ + if(manualMode){ + //wristLevelPID.enable(); + armMovementPID.enable(); + } + else{ + //wristLevelPID.disable(); + armMovementPID.disable(); + } + manualMode = !manualMode; + } double amountToMoveShoulderJoint = XboxMap.controlShoulderJoint(); double amountToMoveWristJoint = XboxMap.controlWristJoint(); if (Math.abs(amountToMoveShoulderJoint) < 0.1) { @@ -48,9 +80,46 @@ protected void execute() { if (Math.abs(amountToMoveWristJoint) < 0.1) { amountToMoveWristJoint = 0; } - armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); - armSubsystem.setWristJointSpeed(amountToMoveWristJoint); + + if(manualMode){ + armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); + armSubsystem.setWristJointSpeed(amountToMoveWristJoint); + } + else{ + + if (armSubsystem.getWristLowerLimit()) { + if (amountToMoveWristJoint < 0) { + + armSubsystem.setWristJointSpeed(0); + amountToMoveWristJoint = 0; + System.out.println("Yeeting"); + } + } + else{ + armAngle += amountToMoveShoulderJoint; + wristAngle += amountToMoveWristJoint; + } + if(XboxMap.enableWristLevelling()){ + enableLevelWrist = !enableLevelWrist; + } + + if(armAngle > ConstantsMap.SHOULDER_MAX_ANGLE){ + armAngle = ConstantsMap.SHOULDER_MAX_ANGLE; + } + if(armAngle < ConstantsMap.SHOULDER_MIN_ANGLE){ + armAngle = ConstantsMap.SHOULDER_MIN_ANGLE; + } + if(wristAngle > ConstantsMap.WRIST_MAX_ANGLE){ + armAngle = ConstantsMap.WRIST_MAX_ANGLE; + } + if(wristAngle < ConstantsMap.WRIST_MIN_ANGLE){ + armAngle = ConstantsMap.WRIST_MIN_ANGLE; + } + } + //armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); + //armSubsystem.setWristJointSpeed(amountToMoveWristJoint); + /* if(XboxMap.enableCargoPreset()){ wristLevelPID.enable(); wristLevelPID.setSetpoint(45); @@ -59,7 +128,7 @@ protected void execute() { wristLevelPID.disable(); */ - if(Math.abs(amountToMoveWristJoint) < ConstantsMap.JOYSTICK_SENSITIVITY && Math.abs(amountToMoveShoulderJoint) < ConstantsMap.JOYSTICK_SENSITIVITY) { + //Do not press multiple presets at the same time. //TODO Set the angles that the arm and wrist should go to. if(XboxMap.enableCargoPreset()) { @@ -76,18 +145,25 @@ else if(XboxMap.enableLevel3Preset()) { wristLevelPID.setSetpoint(getRelativeLevelledAngle(0)); armMovementPID.setSetpoint(getRelativeLevelledAngle(0)); } - wristLevelPID.enable(); - armMovementPID.enable(); - } + else if(enableLevelWrist){ + wristLevelPID.setSetpoint(getRelativeLevelledAngle(armAngle)); + armMovementPID.setSetpoint(armAngle); + } + else{ + wristLevelPID.setSetpoint(wristAngle); + armMovementPID.setSetpoint(armAngle); + } + - /* - //If the joystick is at 0 and the button was true previously then run levelling of the wrist + + /* //If the joystick is at 0 and the button was true previously then run levelling of the wrist //or the current button is not equal to the previous press when the joystick is at 0 //Otherwise the wrist should not be levelling at the moment //Run so long as we are not moving the joystick, and the switch is on and or the enable level wrist button is hit //It is only turned off if you move the joystick + System.out.println("Wassup"); - if((Math.abs(amountToMoveWristJoint) < ConstantsMap.JOYSTICK_SENSITIVITY) && (enableLevelWrist || XboxMap.enableWristLevelling())) { + if((Math.abs(amountToMoveWristJoint) < ConstantsMap.JOYSTICK_SENSITIVITY) && (enableLevelWrist || )) { wristLevelPID.setSetpoint(getWristLevelledAngle()); wristLevelPID.enable(); enableLevelWrist = true; @@ -121,7 +197,7 @@ else if(XboxMap.enableLevel3Preset()) { armMovementPID.disable(); armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint * ConstantsMap.SHOULDER_SPEED_MULT); } - */ + */ //Check to see if the wrist or shoulder has reached the limits and we need to stop them // System.out.println("Hello"); @@ -137,13 +213,7 @@ else if(XboxMap.enableLevel3Preset()) { // } // } - if (armSubsystem.getWristLowerLimit()) { - if (armSubsystem.getWristSpeed() < 0) { - armSubsystem.setShoulderJointSpeed(0); - System.out.println("Yeeting"); - } - } - SmartDashboard.putBoolean("limit Switch Wrist", armSubsystem.getWristLowerLimit()); + // if (armSubsystem.getWristUpperLimit()) { // if (armSubsystem.getWristSpeed() > 0) { @@ -176,7 +246,7 @@ private double getWristLevelledAngle() { * @return angle that the encoder should go to maintain in world space as the shoulder moves */ private double getRelativeLevelledAngle(double angle) { - return angle - getWristLevelledAngle() + getShoulderAngle(); + return -1 * getShoulderAngle(); } // Make this return true when this Command no longer needs to run execute() diff --git a/src/main/java/frc/robot/pids/EncoderMotorPID.java b/src/main/java/frc/robot/pids/EncoderMotorPID.java index 9e5a26c..1d5c848 100644 --- a/src/main/java/frc/robot/pids/EncoderMotorPID.java +++ b/src/main/java/frc/robot/pids/EncoderMotorPID.java @@ -19,8 +19,11 @@ public EncoderMotorPID(TalonSet mot, double kp, double ki, double kd, double kf) motor = mot; pid = new PIDController(kp, ki, kd, kf, this, this); pidSourceType = PIDSourceType.kDisplacement; + + } + public PIDController getPID(){ + return this.pid; } - public EncoderMotorPID setP(double kp) { pid.setP(kp); return this; diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem.java b/src/main/java/frc/robot/subsystems/ArmSubsystem.java index 47412ca..7fac072 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem.java @@ -7,11 +7,13 @@ package frc.robot.subsystems; +import com.ctre.phoenix.motorcontrol.can.TalonSRX; import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; import edu.wpi.first.wpilibj.DigitalInput; import edu.wpi.first.wpilibj.Encoder; import edu.wpi.first.wpilibj.command.Subsystem; +import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import frc.robot.ConstantsMap; import frc.robot.RobotMap; import frc.robot.TalonSet; @@ -30,18 +32,23 @@ public class ArmSubsystem extends Subsystem { public ArmSubsystem() { - WPI_TalonSRX rightShoulder, leftShoulder; - rightShoulder = new WPI_TalonSRX(RobotMap.SHOULDER_JOINT_RIGHT_PORT); - leftShoulder = new WPI_TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); + TalonSRX rightShoulder, leftShoulder,wrist; + rightShoulder = new TalonSRX(RobotMap.SHOULDER_JOINT_RIGHT_PORT); + leftShoulder = new TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); rightShoulder.setInverted(true); - shoulderMotors = new TalonSet(new WPI_TalonSRX[] {rightShoulder, leftShoulder}) - .setDistance(360 / ConstantsMap.WRIST_ENCODER_TICKS_PER_ROTATION); - wristMotor = new TalonSet(new WPI_TalonSRX(RobotMap.WRIST_JOINT_PORT)).setDistance(360 / ConstantsMap.WRIST_ENCODER_TICKS_PER_ROTATION); + shoulderMotors = new TalonSet(new TalonSRX[] {rightShoulder, leftShoulder}) + .setDistance(ConstantsMap.SHOULDER_ENCODER_ANGLE_PER_TICK); + wrist = new TalonSRX(RobotMap.WRIST_JOINT_PORT); + wrist.setInverted(true); + wristMotor = new TalonSet(wrist) + .setDistance(ConstantsMap.WRIST_ENCODER_ANGLE_PER_TICK); //upperLimit = new DigitalInput(RobotMap.UPPER_ARM_LIMIT_PORT); //lowerLimit = new DigitalInput(RobotMap.LOWER_ARM_LIMIT_PORT); //upperLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); lowerLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); + lowerLimitWrist.setName("LowerWristLimit"); + SmartDashboard.putData(lowerLimitWrist); } public double getShoulderEncoderAngle() { @@ -68,6 +75,13 @@ public void setWristJointSpeed(double speed) { wristMotor.set(speed); } + public void zeroWrist() { + wristMotor.zeroEncoder();; + } + public void zeroShoulder() { + shoulderMotors.zeroEncoder();; + } + public boolean getShoulderUpperLimit(){ return upperLimit.get(); } @@ -82,7 +96,7 @@ public boolean getWristUpperLimit(){ public boolean getWristLowerLimit(){ - return lowerLimitWrist.get(); + return !lowerLimitWrist.get(); } public double getShoulderSpeed(){ From 2e4c4e06da1b2aea285b633f8eb77a6b92e2419b Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Thu, 14 Feb 2019 16:31:57 -0600 Subject: [PATCH 081/131] Arm magic --- src/main/java/frc/robot/ConstantsMap.java | 21 ++- src/main/java/frc/robot/Gains.java | 19 +++ src/main/java/frc/robot/Robot.java | 12 +- .../{ArmCommand.java => ArmCommand2.java} | 12 +- .../frc/robot/subsystems/ArmSubsystem.java | 115 ------------- .../frc/robot/subsystems/ArmSubsystem2.java | 159 ++++++++++++++++++ 6 files changed, 203 insertions(+), 135 deletions(-) create mode 100644 src/main/java/frc/robot/Gains.java rename src/main/java/frc/robot/commands/{ArmCommand.java => ArmCommand2.java} (97%) delete mode 100644 src/main/java/frc/robot/subsystems/ArmSubsystem.java create mode 100644 src/main/java/frc/robot/subsystems/ArmSubsystem2.java diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 9051cfb..cd64e70 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -38,10 +38,12 @@ public class ConstantsMap { public static final double HIGH_CUTOFF = 230; //For ArmSubsystem - public static final double WRIST_ZERO_KP = 1; - public static final double WRIST_ZERO_KI = 1; - public static final double WRIST_ZERO_KD = 1; - public static final double WRIST_ZERO_KF = 0; + public static final int kSlotIdx = 0; + public static final int kPIDLoopIdx = 0; + public static final int kTimeoutMs = 30; + + public static final Gains wristGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); + public static final double WRIST_SPEED_MULT = .1; public static final double SHOULDER_SPEED_MULT = .1; @@ -57,15 +59,18 @@ public class ConstantsMap { public static final double SHOULDER_GEAR_RATIO = 350.0; public static final double SHOULDER_MIN_ANGLE = -45.0; public static final double SHOULDER_MAX_ANGLE = 90.0; + public static final int SHOULDER_VELOCITY = 15000; + public static final int SHOULDER_ACCEL = 6000; + + + public static final Gains shoulderGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); - public static final double SHOULDER_MV_KP = 1.0; - public static final double SHOULDER_MV_KI = 1.0; - public static final double SHOULDER_MV_KD = 1.0; - public static final double SHOULDER_MV_KF = 1.0; public static final double SHOULDER_OFFSET = 23.5; //to be changed if needed public static final double WRIST_OFFSET = 0; //to be changed + + //Tolerances public static final double WRIST_TOLERANCE = Float.NaN; //to be determined public static final double SHOULDER_TOLERANCE = Float.NaN; //to be determined diff --git a/src/main/java/frc/robot/Gains.java b/src/main/java/frc/robot/Gains.java new file mode 100644 index 0000000..ce4986b --- /dev/null +++ b/src/main/java/frc/robot/Gains.java @@ -0,0 +1,19 @@ +package frc.robot; + +public class Gains { + public final double kP; + public final double kI; + public final double kD; + public final double kF; + public final int kIzone; + public final double kPeakOutput; + + public Gains(double _kP, double _kI, double _kD, double _kF, int _kIzone, double _kPeakOutput){ + kP = _kP; + kI = _kI; + kD = _kD; + kF = _kF; + kIzone = _kIzone; + kPeakOutput = _kPeakOutput; + } +} diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 50ce0e5..78e22f1 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -18,11 +18,11 @@ import edu.wpi.first.wpilibj.command.Scheduler; import edu.wpi.first.wpilibj.smartdashboard.SendableChooser; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; -import frc.robot.commands.ArmCommand; +import frc.robot.commands.ArmCommand2; import frc.robot.commands.DriveCommand; import frc.robot.commands.FollowLineCommand; import frc.robot.commands.HatchGrabberCommand; -import frc.robot.subsystems.ArmSubsystem; +import frc.robot.subsystems.ArmSubsystem2; import frc.robot.subsystems.DriveSubsystem; import frc.robot.subsystems.FollowLineSubsystem; import frc.robot.subsystems.HatchGrabberSubsystem; @@ -38,7 +38,7 @@ public class Robot extends TimedRobot { public static OI oi; public static DriveSubsystem driveSubsystem = new DriveSubsystem(); - public static ArmSubsystem armSubsystem = new ArmSubsystem(); + public static ArmSubsystem2 armSubsystem2 = new ArmSubsystem2(); public static FollowLineSubsystem followLineSubsystem = new FollowLineSubsystem(); public static HatchGrabberSubsystem hatchGrabberSubsystem = new HatchGrabberSubsystem(); @@ -66,7 +66,7 @@ public void robotInit() { autonomousCommand = new FollowLineCommand(); //followLineCommand = new FollowLineCommand(); hgCommand = new HatchGrabberCommand(); - armCommand = new ArmCommand(); + armCommand = new ArmCommand2(); server = CameraServer.getInstance(); //server.startAutomaticCapture("Ground",0); } @@ -83,8 +83,8 @@ public void robotInit() { public void robotPeriodic() { //Print out encoder values for testing on Arm leveling - SmartDashboard.putNumber("Shoulder Angle", armSubsystem.getShoulderEncoderAngle()); - SmartDashboard.putNumber("Wrist Angle", armSubsystem.getWristEncoderAngle()); + SmartDashboard.putNumber("Shoulder Angle", armSubsystem2.getShoulderEncoderAngle()); + SmartDashboard.putNumber("Wrist Angle", armSubsystem2.getWristEncoderAngle()); } /** diff --git a/src/main/java/frc/robot/commands/ArmCommand.java b/src/main/java/frc/robot/commands/ArmCommand2.java similarity index 97% rename from src/main/java/frc/robot/commands/ArmCommand.java rename to src/main/java/frc/robot/commands/ArmCommand2.java index 7287d82..5e37595 100644 --- a/src/main/java/frc/robot/commands/ArmCommand.java +++ b/src/main/java/frc/robot/commands/ArmCommand2.java @@ -13,16 +13,16 @@ import frc.robot.pids.EncoderMotorPID; import frc.robot.TalonSet; import frc.robot.ConstantsMap; -import frc.robot.subsystems.ArmSubsystem; +import frc.robot.subsystems.ArmSubsystem2; -public class ArmCommand extends Command { - ArmSubsystem armSubsystem = Robot.armSubsystem; +public class ArmCommand2 extends Command { + ArmSubsystem2 armSubsystem = Robot.armSubsystem2; EncoderMotorPID wristLevelPID, armMovementPID; private boolean enableLevelWrist = true; boolean manualMode = true; private double armAngle; private double wristAngle; - public ArmCommand() { + public ArmCommand2() { requires(armSubsystem); } @@ -32,11 +32,11 @@ protected void initialize() { System.out.println("Arm Command Started"); //Generalizes the interface between PID for each mechanism and its components. - wristLevelPID = new EncoderMotorPID(armSubsystem.getWristTalons(), ConstantsMap.WRIST_ZERO_KP, + /* wristLevelPID = new EncoderMotorPID(armSubsystem.getWristTalons(), ConstantsMap.WRIST_ZERO_KP, ConstantsMap.WRIST_ZERO_KI, ConstantsMap.WRIST_ZERO_KD, ConstantsMap.WRIST_ZERO_KF).setOutputRange(-1,1); armMovementPID = new EncoderMotorPID(armSubsystem.getShoulderTalons(), ConstantsMap.SHOULDER_MV_KP, ConstantsMap.SHOULDER_MV_KI, ConstantsMap.SHOULDER_MV_KD, ConstantsMap.SHOULDER_MV_KF).setOutputRange(-1,1); - + */ armAngle = armSubsystem.getShoulderEncoderAngle(); wristAngle = armSubsystem.getWristEncoderAngle(); wristLevelPID.getPID().setInputRange(-360, 360); diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem.java b/src/main/java/frc/robot/subsystems/ArmSubsystem.java deleted file mode 100644 index 7fac072..0000000 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem.java +++ /dev/null @@ -1,115 +0,0 @@ -/*----------------------------------------------------------------------------*/ -/* Copyright (c) 2018 FIRST. All Rights Reserved. */ -/* Open Source Software - may be modified and shared by FRC teams. The code */ -/* must be accompanied by the FIRST BSD license file in the root directory of */ -/* the project. */ -/*----------------------------------------------------------------------------*/ - -package frc.robot.subsystems; - -import com.ctre.phoenix.motorcontrol.can.TalonSRX; -import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; - -import edu.wpi.first.wpilibj.DigitalInput; -import edu.wpi.first.wpilibj.Encoder; -import edu.wpi.first.wpilibj.command.Subsystem; -import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; -import frc.robot.ConstantsMap; -import frc.robot.RobotMap; -import frc.robot.TalonSet; - -/** - * Add your docs here. - */ -public class ArmSubsystem extends Subsystem { - // Put methods for controlling this subsystem - // here. Call these from Commands. - - private TalonSet shoulderMotors, wristMotor; - - - private DigitalInput upperLimit, lowerLimit, upperLimitWrist, lowerLimitWrist; - - - public ArmSubsystem() { - TalonSRX rightShoulder, leftShoulder,wrist; - rightShoulder = new TalonSRX(RobotMap.SHOULDER_JOINT_RIGHT_PORT); - leftShoulder = new TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); - rightShoulder.setInverted(true); - shoulderMotors = new TalonSet(new TalonSRX[] {rightShoulder, leftShoulder}) - .setDistance(ConstantsMap.SHOULDER_ENCODER_ANGLE_PER_TICK); - wrist = new TalonSRX(RobotMap.WRIST_JOINT_PORT); - wrist.setInverted(true); - wristMotor = new TalonSet(wrist) - .setDistance(ConstantsMap.WRIST_ENCODER_ANGLE_PER_TICK); - - //upperLimit = new DigitalInput(RobotMap.UPPER_ARM_LIMIT_PORT); - //lowerLimit = new DigitalInput(RobotMap.LOWER_ARM_LIMIT_PORT); - //upperLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); - lowerLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); - lowerLimitWrist.setName("LowerWristLimit"); - SmartDashboard.putData(lowerLimitWrist); - } - - public double getShoulderEncoderAngle() { - return shoulderMotors.getEncoderDistance(); - } - - public double getWristEncoderAngle() { - return wristMotor.getEncoderDistance(); - } - - public TalonSet getWristTalons() { - return wristMotor; - } - - public TalonSet getShoulderTalons() { - return shoulderMotors; - } - - public void setShoulderJointSpeed(double speed) { - shoulderMotors.set(speed); - } - - public void setWristJointSpeed(double speed) { - wristMotor.set(speed); - } - - public void zeroWrist() { - wristMotor.zeroEncoder();; - } - public void zeroShoulder() { - shoulderMotors.zeroEncoder();; - } - - public boolean getShoulderUpperLimit(){ - return upperLimit.get(); - } - - public boolean getShoulderLowerLimit(){ - return lowerLimit.get(); - } - - public boolean getWristUpperLimit(){ - return upperLimitWrist.get(); - } - - public boolean getWristLowerLimit(){ - - return !lowerLimitWrist.get(); - } - - public double getShoulderSpeed(){ - return shoulderMotors.get(); - } - - public double getWristSpeed(){ - return wristMotor.get(); - } - - @Override - public void initDefaultCommand() { - // Set the default command for a subsystem here. - // setDefaultCommand(new MySpecialCommand()); - } -} diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java new file mode 100644 index 0000000..d19fc22 --- /dev/null +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -0,0 +1,159 @@ +/*----------------------------------------------------------------------------*/ +/* Copyright (c) 2018 FIRST. All Rights Reserved. */ +/* Open Source Software - may be modified and shared by FRC teams. The code */ +/* must be accompanied by the FIRST BSD license file in the root directory of */ +/* the project. */ +/*----------------------------------------------------------------------------*/ + +package frc.robot.subsystems; + +import com.ctre.phoenix.motorcontrol.ControlMode; +import com.ctre.phoenix.motorcontrol.FeedbackDevice; +import com.ctre.phoenix.motorcontrol.LimitSwitchNormal; +import com.ctre.phoenix.motorcontrol.LimitSwitchSource; +import com.ctre.phoenix.motorcontrol.StatusFrameEnhanced; +import com.ctre.phoenix.motorcontrol.can.TalonSRX; +import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; + +import edu.wpi.first.wpilibj.DigitalInput; +import edu.wpi.first.wpilibj.Encoder; +import edu.wpi.first.wpilibj.command.Subsystem; +import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; +import frc.robot.ConstantsMap; +import frc.robot.RobotMap; +import frc.robot.TalonSet; + +/** + * Add your docs here. + */ +public class ArmSubsystem2 extends Subsystem { + // Put methods for controlling this subsystem + // here. Call these from Commands. + + + + private DigitalInput upperLimit, lowerLimit, upperLimitWrist, lowerLimitWrist; + + TalonSRX shoulder, shoulderSlave,wrist; + + public ArmSubsystem2() { + + lowerLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); + LimitSwitchSource lower = new LimitSwitchSource(); + shoulder = new TalonSRX(RobotMap.SHOULDER_JOINT_RIGHT_PORT); + shoulderSlave = new TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); + shoulderSlave.configFactoryDefault(); + shoulder.setInverted(true); + shoulderSlave.follow(shoulder); + + shoulder.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Absolute, + ConstantsMap.kPIDLoopIdx, + ConstantsMap.kTimeoutMs); + shoulder.setStatusFramePeriod(StatusFrameEnhanced.Status_13_Base_PIDF0, 10, ConstantsMap.kTimeoutMs); + shoulder.setStatusFramePeriod(StatusFrameEnhanced.Status_10_MotionMagic, 10, ConstantsMap.kTimeoutMs); + + shoulder.configNominalOutputForward(0, ConstantsMap.kTimeoutMs); + shoulder.configNominalOutputReverse(0, ConstantsMap.kTimeoutMs); + shoulder.configPeakOutputForward(1, ConstantsMap.kTimeoutMs); + shoulder.configPeakOutputReverse(-1, ConstantsMap.kTimeoutMs); + + shoulder.selectProfileSlot(ConstantsMap.kSlotIdx, ConstantsMap.kPIDLoopIdx); + shoulder.config_kF(ConstantsMap.kSlotIdx, ConstantsMap.shoulderGains.kF, ConstantsMap.kTimeoutMs); + shoulder.config_kP(ConstantsMap.kSlotIdx, ConstantsMap.shoulderGains.kP, ConstantsMap.kTimeoutMs); + shoulder.config_kI(ConstantsMap.kSlotIdx, ConstantsMap.shoulderGains.kI, ConstantsMap.kTimeoutMs); + shoulder.config_kD(ConstantsMap.kSlotIdx, ConstantsMap.shoulderGains.kD, ConstantsMap.kTimeoutMs); + + shoulder.configMotionCruiseVelocity(ConstantsMap.SHOULDER_VELOCITY, ConstantsMap.kTimeoutMs); + shoulder.configMotionAcceleration(ConstantsMap.SHOULDER_ACCEL, ConstantsMap.kTimeoutMs); + + shoulder.configForwardLimitSwitchSource(LimitSwitchSource., LimitSwitchNormal.NormallyClosed); + wrist = new TalonSRX(RobotMap.WRIST_JOINT_PORT); + wrist.setInverted(true); + + + //upperLimit = new DigitalInput(RobotMap.UPPER_ARM_LIMIT_PORT); + //lowerLimit = new DigitalInput(RobotMap.LOWER_ARM_LIMIT_PORT); + //upperLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); + lowerLimitWrist.setName("LowerWristLimit"); + SmartDashboard.putData(lowerLimitWrist); + } + + public void setShoulderJointSpeed(double speed) { + shoulder.set(ControlMode.PercentOutput,speed); + } + + public void setWristJointSpeed(double speed) { + wrist.set(ControlMode.PercentOutput,speed); + } + public void setWristSetPoint(double angle){ + wrist.set(ControlMode.MotionMagic, angle); + } + public void setShoulderSetPoint(double angle){ + if(angle>ConstantsMap.SHOULDER_MAX_ANGLE){ + angle =ConstantsMap.SHOULDER_MAX_ANGLE-10; + } + if(angle Date: Thu, 14 Feb 2019 18:40:54 -0600 Subject: [PATCH 082/131] Wrist levelling & responsive arm control --- src/main/java/frc/robot/ConstantsMap.java | 20 +- src/main/java/frc/robot/XboxMap.java | 4 +- .../java/frc/robot/commands/ArmCommand2.java | 221 ++++-------------- .../frc/robot/subsystems/ArmSubsystem2.java | 54 ++++- 4 files changed, 105 insertions(+), 194 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index cd64e70..fd76e1e 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -42,7 +42,6 @@ public class ConstantsMap { public static final int kPIDLoopIdx = 0; public static final int kTimeoutMs = 30; - public static final Gains wristGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); public static final double WRIST_SPEED_MULT = .1; @@ -51,24 +50,29 @@ public class ConstantsMap { public static final double WRIST_ENCODER_ANGLE_PER_TICK = 360/((double)WRIST_ENCODER_TICKS_PER_ROTATION * 81); public static final double WRIST_MIN_ANGLE = -100.0; public static final double WRIST_MAX_ANGLE = 100.0; + public static final int WRIST_VELOCITY = 20000; + public static final int WRIST_ACCEL = 10000; + public static final int WRIST_FOLLOW_DISTANCE = 20; + public static final double WRIST_CHANGE_SETPOINT_SPEED = 2; + + public static final Gains wristGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); public static final int SHOULDER_ENCODER_TICKS_PER_ROTATION = 4096; //ticks public static final double SHOULDER_ENCODER_ANGLE_PER_TICK = 360/((double)SHOULDER_ENCODER_TICKS_PER_ROTATION * 70 * 5); public static final double SHOULDER_GEAR_RATIO = 350.0; - public static final double SHOULDER_MIN_ANGLE = -45.0; + public static final double SHOULDER_MIN_ANGLE = -53.0; public static final double SHOULDER_MAX_ANGLE = 90.0; - public static final int SHOULDER_VELOCITY = 15000; - public static final int SHOULDER_ACCEL = 6000; - + public static final int SHOULDER_VELOCITY = 20000; + public static final int SHOULDER_ACCEL = 10000; + public static final int SHOULDER_FOLLOW_DISTANCE = 20; + public static final double SHOULDER_CHANGE_SETPOINT_SPEED = 2; public static final Gains shoulderGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); - public static final double SHOULDER_OFFSET = 23.5; //to be changed if needed - public static final double WRIST_OFFSET = 0; //to be changed - + //Tolerances diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index 1ad9ca1..de6e971 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -42,10 +42,10 @@ public static boolean toggleArmControl() { return oi.xbox.getXValue(); } public static boolean zeroWrist() { - return oi.xbox.getXValue() && oi.xbox.getAValue() && oi.xbox.getBValue(); + return oi.xbox.getLeftBumperValue(); } public static boolean zeroShoulder() { - return oi.xbox.getXValue() && oi.xbox.getYValue() && oi.xbox.getBValue(); + return oi.xbox.getRightBumperValue(); } public static boolean enableWristLevelling() { return oi.xbox.getBValue(); diff --git a/src/main/java/frc/robot/commands/ArmCommand2.java b/src/main/java/frc/robot/commands/ArmCommand2.java index 5e37595..28b4bad 100644 --- a/src/main/java/frc/robot/commands/ArmCommand2.java +++ b/src/main/java/frc/robot/commands/ArmCommand2.java @@ -20,8 +20,10 @@ public class ArmCommand2 extends Command { EncoderMotorPID wristLevelPID, armMovementPID; private boolean enableLevelWrist = true; boolean manualMode = true; - private double armAngle; + private double shoulderAngle; private double wristAngle; + private double actualShoulderAngle; + private double actualWristAngle; public ArmCommand2() { requires(armSubsystem); } @@ -31,29 +33,22 @@ public ArmCommand2() { protected void initialize() { System.out.println("Arm Command Started"); - //Generalizes the interface between PID for each mechanism and its components. - /* wristLevelPID = new EncoderMotorPID(armSubsystem.getWristTalons(), ConstantsMap.WRIST_ZERO_KP, - ConstantsMap.WRIST_ZERO_KI, ConstantsMap.WRIST_ZERO_KD, ConstantsMap.WRIST_ZERO_KF).setOutputRange(-1,1); - armMovementPID = new EncoderMotorPID(armSubsystem.getShoulderTalons(), ConstantsMap.SHOULDER_MV_KP, - ConstantsMap.SHOULDER_MV_KI, ConstantsMap.SHOULDER_MV_KD, ConstantsMap.SHOULDER_MV_KF).setOutputRange(-1,1); - */ - armAngle = armSubsystem.getShoulderEncoderAngle(); + + shoulderAngle = armSubsystem.getShoulderEncoderAngle(); wristAngle = armSubsystem.getWristEncoderAngle(); - wristLevelPID.getPID().setInputRange(-360, 360); - wristLevelPID.getPID().setOutputRange(-1, 1); - wristLevelPID.getPID().setContinuous(); - - armMovementPID.getPID().setInputRange(-360, 360); - armMovementPID.getPID().setOutputRange(-1, 1); - - armMovementPID.getPID().setContinuous(); + manualMode = true; + enableLevelWrist = false; } // Called repeatedly when this Command is scheduled to run @Override protected void execute() { - SmartDashboard.putBoolean("Mnaual Mode", manualMode); + SmartDashboard.putBoolean("Manual Mode", manualMode); + SmartDashboard.putBoolean("Level Mode", enableLevelWrist); + + actualShoulderAngle = armSubsystem.getShoulderEncoderAngle(); + actualWristAngle = armSubsystem.getWristEncoderAngle(); if(XboxMap.zeroWrist()){ armSubsystem.zeroWrist(); @@ -61,193 +56,67 @@ protected void execute() { else if(XboxMap.zeroShoulder()){ armSubsystem.zeroShoulder(); } - else if(XboxMap.toggleArmControl()){ + else if(XboxMap.toggleArmControl()){ if(manualMode){ - //wristLevelPID.enable(); - armMovementPID.enable(); - } - else{ - //wristLevelPID.disable(); - armMovementPID.disable(); + shoulderAngle = armSubsystem.getShoulderEncoderAngle(); + wristAngle = armSubsystem.getWristEncoderAngle(); + } manualMode = !manualMode; + + } + if(XboxMap.enableWristLevelling()){ + enableLevelWrist = !enableLevelWrist; } double amountToMoveShoulderJoint = XboxMap.controlShoulderJoint(); double amountToMoveWristJoint = XboxMap.controlWristJoint(); + if (Math.abs(amountToMoveShoulderJoint) < 0.1) { amountToMoveShoulderJoint = 0; } if (Math.abs(amountToMoveWristJoint) < 0.1) { amountToMoveWristJoint = 0; } - + amountToMoveShoulderJoint *= ConstantsMap.SHOULDER_CHANGE_SETPOINT_SPEED; + amountToMoveWristJoint *= ConstantsMap.WRIST_CHANGE_SETPOINT_SPEED; + if(manualMode){ armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); armSubsystem.setWristJointSpeed(amountToMoveWristJoint); } - else{ - - - if (armSubsystem.getWristLowerLimit()) { - if (amountToMoveWristJoint < 0) { - - armSubsystem.setWristJointSpeed(0); - amountToMoveWristJoint = 0; - System.out.println("Yeeting"); - } - } - else{ - armAngle += amountToMoveShoulderJoint; + else{ + if(Math.abs((shoulderAngle + amountToMoveShoulderJoint)-actualShoulderAngle) ConstantsMap.SHOULDER_MAX_ANGLE){ + shoulderAngle = ConstantsMap.SHOULDER_MAX_ANGLE; } - if(XboxMap.enableWristLevelling()){ - enableLevelWrist = !enableLevelWrist; - } - - if(armAngle > ConstantsMap.SHOULDER_MAX_ANGLE){ - armAngle = ConstantsMap.SHOULDER_MAX_ANGLE; - } - if(armAngle < ConstantsMap.SHOULDER_MIN_ANGLE){ - armAngle = ConstantsMap.SHOULDER_MIN_ANGLE; + if(shoulderAngle < ConstantsMap.SHOULDER_MIN_ANGLE){ + shoulderAngle = ConstantsMap.SHOULDER_MIN_ANGLE; } if(wristAngle > ConstantsMap.WRIST_MAX_ANGLE){ - armAngle = ConstantsMap.WRIST_MAX_ANGLE; + wristAngle = ConstantsMap.WRIST_MAX_ANGLE; } if(wristAngle < ConstantsMap.WRIST_MIN_ANGLE){ - armAngle = ConstantsMap.WRIST_MIN_ANGLE; - } - } - //armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); - //armSubsystem.setWristJointSpeed(amountToMoveWristJoint); - - /* if(XboxMap.enableCargoPreset()){ - wristLevelPID.enable(); - wristLevelPID.setSetpoint(45); - } - else - wristLevelPID.disable(); - */ - - - //Do not press multiple presets at the same time. - //TODO Set the angles that the arm and wrist should go to. - if(XboxMap.enableCargoPreset()) { - wristLevelPID.setSetpoint(getRelativeLevelledAngle(0)); - armMovementPID.setSetpoint(getRelativeLevelledAngle(0)); - } - - else if(XboxMap.enableLevel2Preset()) { - wristLevelPID.setSetpoint(getRelativeLevelledAngle(0)); - armMovementPID.setSetpoint(getRelativeLevelledAngle(0)); + wristAngle = ConstantsMap.WRIST_MIN_ANGLE; } - - else if(XboxMap.enableLevel3Preset()) { - wristLevelPID.setSetpoint(getRelativeLevelledAngle(0)); - armMovementPID.setSetpoint(getRelativeLevelledAngle(0)); - } - else if(enableLevelWrist){ - wristLevelPID.setSetpoint(getRelativeLevelledAngle(armAngle)); - armMovementPID.setSetpoint(armAngle); + + armSubsystem.setShoulderSetPoint(shoulderAngle); + if(enableLevelWrist){ + armSubsystem.setWristSetPoint(-shoulderAngle); } else{ - wristLevelPID.setSetpoint(wristAngle); - armMovementPID.setSetpoint(armAngle); - } - - - - /* //If the joystick is at 0 and the button was true previously then run levelling of the wrist - //or the current button is not equal to the previous press when the joystick is at 0 - //Otherwise the wrist should not be levelling at the moment - //Run so long as we are not moving the joystick, and the switch is on and or the enable level wrist button is hit - //It is only turned off if you move the joystick - - System.out.println("Wassup"); - if((Math.abs(amountToMoveWristJoint) < ConstantsMap.JOYSTICK_SENSITIVITY) && (enableLevelWrist || )) { - wristLevelPID.setSetpoint(getWristLevelledAngle()); - wristLevelPID.enable(); - enableLevelWrist = true; - } else { - enableLevelWrist = false; - } - - //If the wrist is not being moved and not being levelled - //then the angle of the wrist will be preserved - //Otherwise the wrist is able to move freely without PID for both types of levelling - //The PID will continue working until it has reached its target, the shoulder joystick moves, or enableLevelWrist is on - System.out.println("Wassup again"); - if (!enableLevelWrist && Math.abs(amountToMoveWristJoint) < ConstantsMap.JOYSTICK_SENSITIVITY - && Math.abs(getRelativeLevelledAngle(armSubsystem.getWristEncoderAngle() - wristLevelPID.getSetpoint())) > ConstantsMap.WRIST_TOLERANCE) { - wristLevelPID.setSetpoint(getRelativeLevelledAngle(armSubsystem.getWristEncoderAngle())); - } else if (Math.abs(amountToMoveWristJoint) > ConstantsMap.JOYSTICK_SENSITIVITY) { - wristLevelPID.disable(); - armSubsystem.setWristJointSpeed(amountToMoveWristJoint * ConstantsMap.WRIST_SPEED_MULT); - } + armSubsystem.setWristSetPoint(wristAngle); - //If the shoulder is not being moved it will maintain position - //then the angle of the shoulder will be preserved - //Otherwise the shoulder is able to move freely without PID - //The PID will continue working until it has reached its target or the shoulder joystick moves - System.out.println("Wassup again again"); - if (Math.abs(amountToMoveShoulderJoint) < ConstantsMap.JOYSTICK_SENSITIVITY - && Math.abs(getShoulderAngle() - armMovementPID.getSetpoint()) > ConstantsMap.SHOULDER_TOLERANCE) { - armMovementPID.setSetpoint(armSubsystem.getShoulderEncoderAngle() / ConstantsMap.SHOULDER_GEAR_RATIO + ConstantsMap.SHOULDER_OFFSET); - armMovementPID.enable(); - } else if (Math.abs(amountToMoveShoulderJoint) > ConstantsMap.JOYSTICK_SENSITIVITY) { - armMovementPID.disable(); - armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint * ConstantsMap.SHOULDER_SPEED_MULT); + } } - */ - - //Check to see if the wrist or shoulder has reached the limits and we need to stop them - // System.out.println("Hello"); - // if (armSubsystem.getShoulderLowerLimit()) { - // if (armSubsystem.getShoulderSpeed() < 0) { - // armSubsystem.setShoulderJointSpeed(0); - // } - // } - - // if (armSubsystem.getShoulderUpperLimit()) { - // if (armSubsystem.getShoulderSpeed() > 0) { - // armSubsystem.setShoulderJointSpeed(0); - // } - // } - - - - // if (armSubsystem.getWristUpperLimit()) { - // if (armSubsystem.getWristSpeed() > 0) { - // armSubsystem.setShoulderJointSpeed(0); - // } - // } - - } - - /** - * Computes the angle of the shoulder as a ratio of the motors to the arm. - * 0 degrees is straight down and positive is infront of the robot. - * @return angle in degrees - */ - private double getShoulderAngle() { - return ConstantsMap.SHOULDER_OFFSET + armSubsystem.getShoulderEncoderAngle() / ConstantsMap.SHOULDER_GEAR_RATIO; - } - - /** - * Gets the angle relative to the encoder on the wrist that the wrist should go to be level. - * @return - */ - private double getWristLevelledAngle() { - return armSubsystem.getShoulderEncoderAngle();//Do the math here right now - } - - /** - * Computes the Encoder angle needed to maintain a constant world space angle - * @param angle of the current encoder reading that would like to be maintained in world space - * @return angle that the encoder should go to maintain in world space as the shoulder moves - */ - private double getRelativeLevelledAngle(double angle) { - return -1 * getShoulderAngle(); + SmartDashboard.putNumber("Shoulder setPoint", shoulderAngle); } + + // Make this return true when this Command no longer needs to run execute() @Override diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index d19fc22..e176de4 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -39,11 +39,13 @@ public class ArmSubsystem2 extends Subsystem { public ArmSubsystem2() { lowerLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); - LimitSwitchSource lower = new LimitSwitchSource(); shoulder = new TalonSRX(RobotMap.SHOULDER_JOINT_RIGHT_PORT); shoulderSlave = new TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); shoulderSlave.configFactoryDefault(); - shoulder.setInverted(true); + shoulder.setInverted(false); + shoulderSlave.setInverted(true); + shoulder.setSensorPhase(true); + shoulderSlave.follow(shoulder); shoulder.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Absolute, @@ -66,10 +68,30 @@ public ArmSubsystem2() { shoulder.configMotionCruiseVelocity(ConstantsMap.SHOULDER_VELOCITY, ConstantsMap.kTimeoutMs); shoulder.configMotionAcceleration(ConstantsMap.SHOULDER_ACCEL, ConstantsMap.kTimeoutMs); - shoulder.configForwardLimitSwitchSource(LimitSwitchSource., LimitSwitchNormal.NormallyClosed); + //shoulder.configForwardLimitSwitchSource(LimitSwitchSource., LimitSwitchNormal.NormallyClosed); wrist = new TalonSRX(RobotMap.WRIST_JOINT_PORT); wrist.setInverted(true); - + + wrist.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Absolute, + ConstantsMap.kPIDLoopIdx, + ConstantsMap.kTimeoutMs); + wrist.setSensorPhase(true); + wrist.setStatusFramePeriod(StatusFrameEnhanced.Status_13_Base_PIDF0, 10, ConstantsMap.kTimeoutMs); + wrist.setStatusFramePeriod(StatusFrameEnhanced.Status_10_MotionMagic, 10, ConstantsMap.kTimeoutMs); + + wrist.configNominalOutputForward(0, ConstantsMap.kTimeoutMs); + wrist.configNominalOutputReverse(0, ConstantsMap.kTimeoutMs); + wrist.configPeakOutputForward(1, ConstantsMap.kTimeoutMs); + wrist.configPeakOutputReverse(-1, ConstantsMap.kTimeoutMs); + + wrist.selectProfileSlot(ConstantsMap.kSlotIdx, ConstantsMap.kPIDLoopIdx); + wrist.config_kF(ConstantsMap.kSlotIdx, ConstantsMap.wristGains.kF, ConstantsMap.kTimeoutMs); + wrist.config_kP(ConstantsMap.kSlotIdx, ConstantsMap.wristGains.kP, ConstantsMap.kTimeoutMs); + wrist.config_kI(ConstantsMap.kSlotIdx, ConstantsMap.wristGains.kI, ConstantsMap.kTimeoutMs); + wrist.config_kD(ConstantsMap.kSlotIdx, ConstantsMap.wristGains.kD, ConstantsMap.kTimeoutMs); + + wrist.configMotionCruiseVelocity(ConstantsMap.WRIST_VELOCITY, ConstantsMap.kTimeoutMs); + wrist.configMotionAcceleration(ConstantsMap.WRIST_ACCEL, ConstantsMap.kTimeoutMs); //upperLimit = new DigitalInput(RobotMap.UPPER_ARM_LIMIT_PORT); //lowerLimit = new DigitalInput(RobotMap.LOWER_ARM_LIMIT_PORT); @@ -79,6 +101,7 @@ public ArmSubsystem2() { } public void setShoulderJointSpeed(double speed) { + shoulder.set(ControlMode.PercentOutput,speed); } @@ -86,7 +109,17 @@ public void setWristJointSpeed(double speed) { wrist.set(ControlMode.PercentOutput,speed); } public void setWristSetPoint(double angle){ - wrist.set(ControlMode.MotionMagic, angle); + if(angle>ConstantsMap.WRIST_MAX_ANGLE){ + angle =ConstantsMap.WRIST_MAX_ANGLE-10; + } + if(angleConstantsMap.SHOULDER_MAX_ANGLE){ @@ -95,15 +128,20 @@ public void setShoulderSetPoint(double angle){ if(angle Date: Thu, 14 Feb 2019 18:57:27 -0600 Subject: [PATCH 083/131] Minimum functioning preset command --- .../robot/commands/auto/ArmPresetCommand.java | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 src/main/java/frc/robot/commands/auto/ArmPresetCommand.java diff --git a/src/main/java/frc/robot/commands/auto/ArmPresetCommand.java b/src/main/java/frc/robot/commands/auto/ArmPresetCommand.java new file mode 100644 index 0000000..66c1e1a --- /dev/null +++ b/src/main/java/frc/robot/commands/auto/ArmPresetCommand.java @@ -0,0 +1,46 @@ +package frc.robot.commands.auto; + +import edu.wpi.first.wpilibj.command.Command; +import frc.robot.Robot; +import frc.robot.subsystems.ArmSubsystem2; + +public class ArmPresetCommand extends Command { + ArmSubsystem2 armSubsystem = Robot.armSubsystem2; + double gotoAngle; + + public ArmPresetCommand(double targetAngle) { + // Use requires() here to declare subsystem dependencies + requires(armSubsystem); + gotoAngle = targetAngle; + } + + // Called just before this Command runs the first time + @Override + protected void initialize() { + armSubsystem.setShoulderSetPoint(gotoAngle); + } + + // Called repeatedly when this Command is scheduled to run + @Override + protected void execute() { + armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); + } + + // Make this return true when this Command no longer needs to run execute() + @Override + protected boolean isFinished() { + // TODO: will this work or should we use tolerance equality? + return armSubsystem.getShoulderEncoderAngle() == gotoAngle; + } + + // Called once after isFinished returns true + @Override + protected void end() { + } + + // Called when another command which requires one or more of the same + // subsystems is scheduled to run + @Override + protected void interrupted() { + } +} From 49ba925c51896655e8e6254c615e1f33936bd80e Mon Sep 17 00:00:00 2001 From: trajing Date: Thu, 14 Feb 2019 19:12:00 -0600 Subject: [PATCH 084/131] Refactor ArmPresetCommand into an interactive command which handles preset inputs --- src/main/java/frc/robot/ConstantsMap.java | 8 ++++++ src/main/java/frc/robot/XboxMap.java | 25 +++++++++++++++++++ .../commands/{auto => }/ArmPresetCommand.java | 25 ++++++++++++++----- 3 files changed, 52 insertions(+), 6 deletions(-) rename src/main/java/frc/robot/commands/{auto => }/ArmPresetCommand.java (53%) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index fd76e1e..2953486 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -87,4 +87,12 @@ public class ConstantsMap { public static final double PID_DERIVATIVE_CONSTANT = .001; public static final double PID_INPUT_MAX = 180; + // PRESETS!!! + public static final boolean isHatchGrabber = false; + public static final double HATCH_PRESET_1_ANGLE = 0.0; + public static final double HATCH_PRESET_2_ANGLE = 10.0; + public static final double HATCH_PRESET_3_ANGLE = 20.0; + public static final double CARGO_PRESET_1_ANGLE = 5.0; + public static final double CARGO_PRESET_2_ANGLE = 15.0; + public static final double CARGO_PRESET_3_ANGLE = 25.0; } \ No newline at end of file diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index de6e971..fa1453f 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -87,7 +87,32 @@ public static boolean hatchPiston() { public static boolean grabberPiston() { return oi.xbox.getRightBumperValue(); } + + // TODO: when we get the control panel, replace these with actual btns + public static boolean hatchPreset1() { + return false; + } + + public static boolean hatchPreset2() { + return false; + } + + public static boolean hatchPreset3() { + return false; + } + + public static boolean cargoPreset1() { + return false; + } + public static boolean cargoPreset2() { + return false; + } + + public static boolean cargoPreset3() { + return false; + } + // public static boolean ejectHatch() { // return oi.xbox.getYValue(); // } diff --git a/src/main/java/frc/robot/commands/auto/ArmPresetCommand.java b/src/main/java/frc/robot/commands/ArmPresetCommand.java similarity index 53% rename from src/main/java/frc/robot/commands/auto/ArmPresetCommand.java rename to src/main/java/frc/robot/commands/ArmPresetCommand.java index 66c1e1a..5bd6d2b 100644 --- a/src/main/java/frc/robot/commands/auto/ArmPresetCommand.java +++ b/src/main/java/frc/robot/commands/ArmPresetCommand.java @@ -1,28 +1,40 @@ -package frc.robot.commands.auto; +package frc.robot.commands; import edu.wpi.first.wpilibj.command.Command; +import frc.robot.ConstantsMap; import frc.robot.Robot; +import frc.robot.XboxMap; import frc.robot.subsystems.ArmSubsystem2; public class ArmPresetCommand extends Command { ArmSubsystem2 armSubsystem = Robot.armSubsystem2; - double gotoAngle; - public ArmPresetCommand(double targetAngle) { + public ArmPresetCommand() { // Use requires() here to declare subsystem dependencies requires(armSubsystem); - gotoAngle = targetAngle; } // Called just before this Command runs the first time @Override protected void initialize() { - armSubsystem.setShoulderSetPoint(gotoAngle); } // Called repeatedly when this Command is scheduled to run @Override protected void execute() { + if (XboxMap.cargoPreset1()) { + armSubsystem.setShoulderSetPoint(ConstantsMap.CARGO_PRESET_1_ANGLE); + } else if (XboxMap.cargoPreset2()) { + armSubsystem.setShoulderSetPoint(ConstantsMap.CARGO_PRESET_2_ANGLE); + } else if (XboxMap.cargoPreset3()) { + armSubsystem.setShoulderSetPoint(ConstantsMap.CARGO_PRESET_3_ANGLE); + } else if (XboxMap.hatchPreset1()) { + armSubsystem.setShoulderSetPoint(ConstantsMap.HATCH_PRESET_1_ANGLE); + } else if (XboxMap.hatchPreset2()) { + armSubsystem.setShoulderSetPoint(ConstantsMap.HATCH_PRESET_2_ANGLE); + } else if (XboxMap.hatchPreset3()) { + armSubsystem.setShoulderSetPoint(ConstantsMap.HATCH_PRESET_3_ANGLE); + } armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); } @@ -30,7 +42,8 @@ protected void execute() { @Override protected boolean isFinished() { // TODO: will this work or should we use tolerance equality? - return armSubsystem.getShoulderEncoderAngle() == gotoAngle; + //return armSubsystem.getShoulderEncoderAngle() == gotoAngle; + return false; } // Called once after isFinished returns true From 9fce3ffc91d251f96ec069a64dc999402de3f44b Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Fri, 15 Feb 2019 11:21:13 -0600 Subject: [PATCH 085/131] Code From Thursday --- src/main/java/frc/robot/ConstantsMap.java | 14 ++++---- src/main/java/frc/robot/Robot.java | 20 +++++++---- src/main/java/frc/robot/XboxMap.java | 23 ++++--------- .../java/frc/robot/commands/ArmCommand2.java | 4 +-- .../frc/robot/commands/ArmPresetCommand.java | 33 +++++++++++-------- .../subsystems/HatchGrabberSubsystem.java | 6 ++-- 6 files changed, 53 insertions(+), 47 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 2953486..69771b7 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -88,11 +88,11 @@ public class ConstantsMap { public static final double PID_INPUT_MAX = 180; // PRESETS!!! - public static final boolean isHatchGrabber = false; - public static final double HATCH_PRESET_1_ANGLE = 0.0; - public static final double HATCH_PRESET_2_ANGLE = 10.0; - public static final double HATCH_PRESET_3_ANGLE = 20.0; - public static final double CARGO_PRESET_1_ANGLE = 5.0; - public static final double CARGO_PRESET_2_ANGLE = 15.0; - public static final double CARGO_PRESET_3_ANGLE = 25.0; + public static final boolean isHatchGrabber = true; + public static final double HATCH_PRESET_1_ANGLE = -40.0; + public static final double HATCH_PRESET_2_ANGLE = 8.0; + public static final double HATCH_PRESET_3_ANGLE = 47.0; + public static final double CARGO_PRESET_1_ANGLE = 8.0; + public static final double CARGO_PRESET_2_ANGLE = 8.0; + public static final double CARGO_PRESET_3_ANGLE = 47.0; } \ No newline at end of file diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 78e22f1..61b007d 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -19,6 +19,7 @@ import edu.wpi.first.wpilibj.smartdashboard.SendableChooser; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import frc.robot.commands.ArmCommand2; +import frc.robot.commands.ArmPresetCommand; import frc.robot.commands.DriveCommand; import frc.robot.commands.FollowLineCommand; import frc.robot.commands.HatchGrabberCommand; @@ -53,6 +54,7 @@ public class Robot extends TimedRobot { CameraServer server; Compressor compressor; boolean armEnable; + Command preset; /** * This function is run when the robot is first started up and should be * used for any initialization code. @@ -63,11 +65,12 @@ public void robotInit() { // chooser.addOption("My Auto", new MyAutoCommand()); driveCommand = new DriveCommand(); - autonomousCommand = new FollowLineCommand(); //followLineCommand = new FollowLineCommand(); hgCommand = new HatchGrabberCommand(); armCommand = new ArmCommand2(); + preset = new ArmPresetCommand(); server = CameraServer.getInstance(); + armEnable = false; //server.startAutomaticCapture("Ground",0); } @@ -85,6 +88,7 @@ public void robotPeriodic() { //Print out encoder values for testing on Arm leveling SmartDashboard.putNumber("Shoulder Angle", armSubsystem2.getShoulderEncoderAngle()); SmartDashboard.putNumber("Wrist Angle", armSubsystem2.getWristEncoderAngle()); + SmartDashboard.putBoolean("Preset Enable", preset.isRunning()); } /** @@ -137,7 +141,7 @@ public void autonomousInit() { public void autonomousPeriodic() { Scheduler.getInstance().run(); } - + @Override public void teleopInit() { // This makes sure that the autonomous stops running when @@ -150,6 +154,7 @@ public void teleopInit() { hgCommand.start(); armCommand.start(); + //driveCommand.start(); } @@ -173,18 +178,19 @@ public void teleopPeriodic() { } */ - /* if(XboxMap.toggleArmControl()){ + if(XboxMap.toggleArmControl()){ if(armCommand.isRunning()){ armCommand.cancel(); - driveCommand.start(); + preset.start(); } else{ - driveCommand.cancel(); + preset.cancel(); armCommand.start(); } - } */ - SmartDashboard.putBoolean("Arm Conrol", armCommand.isRunning()); + } + + SmartDashboard.putBoolean("Arm Control", armCommand.isRunning()); Scheduler.getInstance().run(); } diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index fa1453f..4fe8d40 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -41,6 +41,9 @@ public static double controlShoulderJoint() { public static boolean toggleArmControl() { return oi.xbox.getXValue(); } + public static boolean toggleArmManualControl() { + return oi.xbox.getAValue(); + } public static boolean zeroWrist() { return oi.xbox.getLeftBumperValue(); } @@ -51,19 +54,7 @@ public static boolean enableWristLevelling() { return oi.xbox.getBValue(); } - //TODO Map to Buttons - public static boolean enableCargoPreset() { - return oi.xbox.getAValue() ; - } - - public static boolean enableLevel2Preset() { - return true; - } - - public static boolean enableLevel3Preset() { - return true; - } - + //Driving Controls public static double right() { return oi.xbox.getRightY(); @@ -90,15 +81,15 @@ public static boolean grabberPiston() { // TODO: when we get the control panel, replace these with actual btns public static boolean hatchPreset1() { - return false; + return oi.xbox.getAValue(); } public static boolean hatchPreset2() { - return false; + return oi.xbox.getBValue(); } public static boolean hatchPreset3() { - return false; + return oi.xbox.getYValue(); } public static boolean cargoPreset1() { diff --git a/src/main/java/frc/robot/commands/ArmCommand2.java b/src/main/java/frc/robot/commands/ArmCommand2.java index 28b4bad..ca59847 100644 --- a/src/main/java/frc/robot/commands/ArmCommand2.java +++ b/src/main/java/frc/robot/commands/ArmCommand2.java @@ -36,7 +36,7 @@ protected void initialize() { shoulderAngle = armSubsystem.getShoulderEncoderAngle(); wristAngle = armSubsystem.getWristEncoderAngle(); - manualMode = true; + manualMode = false; enableLevelWrist = false; } @@ -56,7 +56,7 @@ protected void execute() { else if(XboxMap.zeroShoulder()){ armSubsystem.zeroShoulder(); } - else if(XboxMap.toggleArmControl()){ + else if(XboxMap.toggleArmManualControl()){ if(manualMode){ shoulderAngle = armSubsystem.getShoulderEncoderAngle(); wristAngle = armSubsystem.getWristEncoderAngle(); diff --git a/src/main/java/frc/robot/commands/ArmPresetCommand.java b/src/main/java/frc/robot/commands/ArmPresetCommand.java index 5bd6d2b..3a59abc 100644 --- a/src/main/java/frc/robot/commands/ArmPresetCommand.java +++ b/src/main/java/frc/robot/commands/ArmPresetCommand.java @@ -17,25 +17,31 @@ public ArmPresetCommand() { // Called just before this Command runs the first time @Override protected void initialize() { + System.out.println("Start Preset"); + armSubsystem.setShoulderSetPoint(armSubsystem.getShoulderEncoderAngle()); + armSubsystem.setWristSetPoint(armSubsystem.getWristEncoderAngle()); } // Called repeatedly when this Command is scheduled to run @Override protected void execute() { - if (XboxMap.cargoPreset1()) { - armSubsystem.setShoulderSetPoint(ConstantsMap.CARGO_PRESET_1_ANGLE); - } else if (XboxMap.cargoPreset2()) { - armSubsystem.setShoulderSetPoint(ConstantsMap.CARGO_PRESET_2_ANGLE); - } else if (XboxMap.cargoPreset3()) { - armSubsystem.setShoulderSetPoint(ConstantsMap.CARGO_PRESET_3_ANGLE); - } else if (XboxMap.hatchPreset1()) { - armSubsystem.setShoulderSetPoint(ConstantsMap.HATCH_PRESET_1_ANGLE); - } else if (XboxMap.hatchPreset2()) { - armSubsystem.setShoulderSetPoint(ConstantsMap.HATCH_PRESET_2_ANGLE); - } else if (XboxMap.hatchPreset3()) { - armSubsystem.setShoulderSetPoint(ConstantsMap.HATCH_PRESET_3_ANGLE); + if(ConstantsMap.isHatchGrabber){ + if (XboxMap.cargoPreset1()) { + armSubsystem.setShoulderSetPoint(ConstantsMap.CARGO_PRESET_1_ANGLE); + } else if (XboxMap.cargoPreset2()) { + armSubsystem.setShoulderSetPoint(ConstantsMap.CARGO_PRESET_2_ANGLE); + } else if (XboxMap.cargoPreset3()) { + armSubsystem.setShoulderSetPoint(ConstantsMap.CARGO_PRESET_3_ANGLE); + } else if (XboxMap.hatchPreset1()) { + armSubsystem.setShoulderSetPoint(ConstantsMap.HATCH_PRESET_1_ANGLE); + } else if (XboxMap.hatchPreset2()) { + armSubsystem.setShoulderSetPoint(ConstantsMap.HATCH_PRESET_2_ANGLE); + } else if (XboxMap.hatchPreset3()) { + armSubsystem.setShoulderSetPoint(ConstantsMap.HATCH_PRESET_3_ANGLE); + } + armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); } - armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); + } // Make this return true when this Command no longer needs to run execute() @@ -55,5 +61,6 @@ protected void end() { // subsystems is scheduled to run @Override protected void interrupted() { + System.out.println("Preset Interupt"); } } diff --git a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java index 174005b..e2fe797 100644 --- a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java +++ b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java @@ -25,8 +25,10 @@ public class HatchGrabberSubsystem extends Subsystem { public HatchGrabberSubsystem() { - grabberPiston = new DoubleSolenoid(RobotMap.GRAB_PISTON_F, RobotMap.GRAB_PISTON_R); - releasePiston1 = new DoubleSolenoid(RobotMap.RELEASE_PISTON_1_F, RobotMap.RELEASE_PISTON_1_R); + /* grabberPiston = new DoubleSolenoid(RobotMap.GRAB_PISTON_F, RobotMap.GRAB_PISTON_R); + releasePiston1 = new DoubleSolenoid(RobotMap.RELEASE_PISTON_1_F, RobotMap.RELEASE_PISTON_1_R); */ + grabberPiston = new DoubleSolenoid(4,5); + releasePiston1 = new DoubleSolenoid(6, 7); } public void extendGrabber() { From 7b888dc9c7d8e3471228ccce92d9f6c4f03c0456 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Fri, 15 Feb 2019 19:18:10 -0600 Subject: [PATCH 086/131] this was a bad friday --- src/main/java/frc/robot/ConstantsMap.java | 14 +- src/main/java/frc/robot/OI.java | 2 - src/main/java/frc/robot/Robot.java | 25 +- src/main/java/frc/robot/RobotMap.java | 9 +- src/main/java/frc/robot/XboxMap.java | 4 +- .../java/frc/robot/commands/ArmCommand2.java | 13 +- src/main/java/frc/robot/commands/ArmZero.java | 69 ++ .../java/frc/robot/commands/DriveCommand.java | 2 - .../frc/robot/commands/FollowLineCommand.java | 655 ------------------ .../java/frc/robot/commands/WristZero.java | 70 ++ .../frc/robot/subsystems/ArmSubsystem2.java | 92 ++- .../robot/subsystems/FollowLineSubsystem.java | 88 --- .../subsystems/HatchGrabberSubsystem.java | 18 +- 13 files changed, 264 insertions(+), 797 deletions(-) create mode 100644 src/main/java/frc/robot/commands/ArmZero.java delete mode 100644 src/main/java/frc/robot/commands/FollowLineCommand.java create mode 100644 src/main/java/frc/robot/commands/WristZero.java delete mode 100644 src/main/java/frc/robot/subsystems/FollowLineSubsystem.java diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 69771b7..4e17a0b 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -48,12 +48,14 @@ public class ConstantsMap { public static final double SHOULDER_SPEED_MULT = .1; public static final double WRIST_ENCODER_TICKS_PER_ROTATION = 4096; public static final double WRIST_ENCODER_ANGLE_PER_TICK = 360/((double)WRIST_ENCODER_TICKS_PER_ROTATION * 81); - public static final double WRIST_MIN_ANGLE = -100.0; - public static final double WRIST_MAX_ANGLE = 100.0; + public static final double WRIST_MIN_ANGLE = -10.0; + public static final double WRIST_MAX_ANGLE = 70.0; + public static final double WRIST_IN_ANGLE = 70.0; + public static final int WRIST_VELOCITY = 20000; public static final int WRIST_ACCEL = 10000; public static final int WRIST_FOLLOW_DISTANCE = 20; - public static final double WRIST_CHANGE_SETPOINT_SPEED = 2; + public static final double WRIST_CHANGE_SETPOINT_SPEED = 1; public static final Gains wristGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); @@ -62,12 +64,14 @@ public class ConstantsMap { public static final double SHOULDER_ENCODER_ANGLE_PER_TICK = 360/((double)SHOULDER_ENCODER_TICKS_PER_ROTATION * 70 * 5); public static final double SHOULDER_GEAR_RATIO = 350.0; - public static final double SHOULDER_MIN_ANGLE = -53.0; + public static final double SHOULDER_MIN_ANGLE = -68.0; public static final double SHOULDER_MAX_ANGLE = 90.0; public static final int SHOULDER_VELOCITY = 20000; public static final int SHOULDER_ACCEL = 10000; public static final int SHOULDER_FOLLOW_DISTANCE = 20; - public static final double SHOULDER_CHANGE_SETPOINT_SPEED = 2; + public static final double SHOULDER_CHANGE_SETPOINT_SPEED = 1; + public static final int SHOULDER_WRIST_FOLD_ANGLE = -45; + public static final Gains shoulderGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index 9a6bb61..a9f66d5 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -7,7 +7,6 @@ package frc.robot; -import frc.robot.commands.FollowLineCommand; /** * This class is the glue that binds the controls on the physical operator @@ -22,7 +21,6 @@ public class OI { public OI(){ xbox = new Xbox(0); ps4 = new Xbox(1); - xbox.getAButton().toggleWhenPressed(new FollowLineCommand()); //attack3_L = new Attack3(3); //attack3_R = new Attack3(4); diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 61b007d..bbb05a2 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -21,11 +21,10 @@ import frc.robot.commands.ArmCommand2; import frc.robot.commands.ArmPresetCommand; import frc.robot.commands.DriveCommand; -import frc.robot.commands.FollowLineCommand; import frc.robot.commands.HatchGrabberCommand; +import frc.robot.commands.WristZero; import frc.robot.subsystems.ArmSubsystem2; import frc.robot.subsystems.DriveSubsystem; -import frc.robot.subsystems.FollowLineSubsystem; import frc.robot.subsystems.HatchGrabberSubsystem; /** @@ -41,7 +40,6 @@ public class Robot extends TimedRobot { public static DriveSubsystem driveSubsystem = new DriveSubsystem(); public static ArmSubsystem2 armSubsystem2 = new ArmSubsystem2(); - public static FollowLineSubsystem followLineSubsystem = new FollowLineSubsystem(); public static HatchGrabberSubsystem hatchGrabberSubsystem = new HatchGrabberSubsystem(); UsbCamera camera; @@ -50,6 +48,8 @@ public class Robot extends TimedRobot { Command followLineCommand; Command armCommand; Command hgCommand; + Command zeroWrist; + SendableChooser chooser = new SendableChooser<>(); CameraServer server; Compressor compressor; @@ -69,6 +69,7 @@ public void robotInit() { hgCommand = new HatchGrabberCommand(); armCommand = new ArmCommand2(); preset = new ArmPresetCommand(); + zeroWrist = new WristZero(); server = CameraServer.getInstance(); armEnable = false; //server.startAutomaticCapture("Ground",0); @@ -89,6 +90,12 @@ public void robotPeriodic() { SmartDashboard.putNumber("Shoulder Angle", armSubsystem2.getShoulderEncoderAngle()); SmartDashboard.putNumber("Wrist Angle", armSubsystem2.getWristEncoderAngle()); SmartDashboard.putBoolean("Preset Enable", preset.isRunning()); + SmartDashboard.putBoolean("Wrist Limit", armSubsystem2.getWristLowerLimit()); + SmartDashboard.putBoolean("Arm Limit", armSubsystem2.getShoulderLowerLimit()); + + armSubsystem2.checkShoulderLimits(); + armSubsystem2.checkWristLimits(); + } /** @@ -189,7 +196,17 @@ public void teleopPeriodic() { } } - + if(XboxMap.zeroWrist()){ + if(armCommand.isRunning()){ + armCommand.cancel(); + zeroWrist.start(); + } + else{ + zeroWrist.cancel(); + armCommand.start(); + + } + } SmartDashboard.putBoolean("Arm Control", armCommand.isRunning()); Scheduler.getInstance().run(); } diff --git a/src/main/java/frc/robot/RobotMap.java b/src/main/java/frc/robot/RobotMap.java index db52c87..7f2ed14 100644 --- a/src/main/java/frc/robot/RobotMap.java +++ b/src/main/java/frc/robot/RobotMap.java @@ -40,12 +40,13 @@ public class RobotMap { public static final int WRIST_ENCODER_PORT_B = 14; //These might have to change? - public static final int UPPER_ARM_LIMIT_PORT = 15; - public static final int LOWER_ARM_LIMIT_PORT = 16; + public static final int LOWER_ARM_LIMIT_PORT = 0; + //TODO Set these to real ports - public static final int UPPER_WRIST_LIMIT_PORT = 20; - public static final int LOWER_WRIST_LIMIT_PORT = 1; + public static final int LOWER_WRIST_LIMIT_PORT = 2; + public static final int LOWER_WRIST_LIMIT_PORT2 = 3; + public static final int GRAB_PISTON_F = 4; public static final int GRAB_PISTON_R = 5; diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index 4fe8d40..51859be 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -45,10 +45,10 @@ public static boolean toggleArmManualControl() { return oi.xbox.getAValue(); } public static boolean zeroWrist() { - return oi.xbox.getLeftBumperValue(); + return oi.xbox.getBackValue(); } public static boolean zeroShoulder() { - return oi.xbox.getRightBumperValue(); + return oi.xbox.getStartValue (); } public static boolean enableWristLevelling() { return oi.xbox.getBValue(); diff --git a/src/main/java/frc/robot/commands/ArmCommand2.java b/src/main/java/frc/robot/commands/ArmCommand2.java index ca59847..1c87666 100644 --- a/src/main/java/frc/robot/commands/ArmCommand2.java +++ b/src/main/java/frc/robot/commands/ArmCommand2.java @@ -47,14 +47,16 @@ protected void execute() { SmartDashboard.putBoolean("Manual Mode", manualMode); SmartDashboard.putBoolean("Level Mode", enableLevelWrist); - actualShoulderAngle = armSubsystem.getShoulderEncoderAngle(); - actualWristAngle = armSubsystem.getWristEncoderAngle(); + if(XboxMap.zeroWrist()){ armSubsystem.zeroWrist(); + wristAngle = armSubsystem.getWristEncoderAngle(); } else if(XboxMap.zeroShoulder()){ armSubsystem.zeroShoulder(); + shoulderAngle = armSubsystem.getShoulderEncoderAngle(); + } else if(XboxMap.toggleArmManualControl()){ if(manualMode){ @@ -80,6 +82,8 @@ else if(XboxMap.toggleArmManualControl()){ amountToMoveShoulderJoint *= ConstantsMap.SHOULDER_CHANGE_SETPOINT_SPEED; amountToMoveWristJoint *= ConstantsMap.WRIST_CHANGE_SETPOINT_SPEED; + actualShoulderAngle = armSubsystem.getShoulderEncoderAngle(); + actualWristAngle = armSubsystem.getWristEncoderAngle(); if(manualMode){ armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); armSubsystem.setWristJointSpeed(amountToMoveWristJoint); @@ -135,5 +139,10 @@ protected void end() { // subsystems is scheduled to run @Override protected void interrupted() { + System.out.println("Arm Command Intrupted"); + + armSubsystem.setShoulderJointSpeed(0); + armSubsystem.setWristJointSpeed(0);; + } } \ No newline at end of file diff --git a/src/main/java/frc/robot/commands/ArmZero.java b/src/main/java/frc/robot/commands/ArmZero.java new file mode 100644 index 0000000..349d310 --- /dev/null +++ b/src/main/java/frc/robot/commands/ArmZero.java @@ -0,0 +1,69 @@ +package frc.robot.commands; + +import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; + +import edu.wpi.first.wpilibj.PIDController; +import edu.wpi.first.wpilibj.PIDOutput; +import edu.wpi.first.wpilibj.PIDSource; +import edu.wpi.first.wpilibj.PIDSourceType; +import edu.wpi.first.wpilibj.command.Command; +import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; +import frc.robot.Robot; +import frc.robot.XboxMap; +import frc.robot.pids.EncoderMotorPID; +import frc.robot.TalonSet; +import frc.robot.ConstantsMap; +import frc.robot.subsystems.ArmSubsystem2; + +public class ArmZero extends Command { + ArmSubsystem2 armSubsystem = Robot.armSubsystem2; + private double shoulderAngle; + private double wristAngle; + private double actualShoulderAngle; + private double actualWristAngle; + public ArmZero() { + requires(armSubsystem); + } + + // Called just before this Command runs the first time + @Override + protected void initialize() { + System.out.println("Arm Zero Started"); + armSubsystem.setShoulderJointSpeed(-.1); + + + } + + // Called repeatedly when this Command is scheduled to run + @Override + protected void execute() { + + } + + + + // Make this return true when this Command no longer needs to run execute() + @Override + protected boolean isFinished() { + return armSubsystem.getShoulderLowerLimit(); + } + + // Called once after isFinished returns true + @Override + protected void end() { + armSubsystem.setShoulderJointSpeed(0); + System.out.println("Arm Command Stopped"); + + } + + // Called when another command which requires one or more of the same + // subsystems is scheduled to run + @Override + protected void interrupted() { + System.out.println("Arm Command Intrupted"); + + armSubsystem.setShoulderJointSpeed(0); + armSubsystem.setWristJointSpeed(0);; + + } +} \ No newline at end of file diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index 69eb0f4..197454b 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -11,7 +11,6 @@ import frc.robot.Robot; import frc.robot.XboxMap; import frc.robot.subsystems.DriveSubsystem; -import frc.robot.subsystems.FollowLineSubsystem; import frc.robot.ConstantsMap; import edu.wpi.first.wpilibj.command.Command; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; @@ -22,7 +21,6 @@ public class DriveCommand extends Command { DriveSubsystem driveSubsystem = Robot.driveSubsystem; - FollowLineCommand fLC; OI oi = Robot.oi; boolean turtlemode = false; diff --git a/src/main/java/frc/robot/commands/FollowLineCommand.java b/src/main/java/frc/robot/commands/FollowLineCommand.java deleted file mode 100644 index 0d5a992..0000000 --- a/src/main/java/frc/robot/commands/FollowLineCommand.java +++ /dev/null @@ -1,655 +0,0 @@ -package frc.robot.commands; - -import edu.wpi.first.wpilibj.PIDController; -import edu.wpi.first.wpilibj.PIDOutput; -import edu.wpi.first.wpilibj.PIDSource; -import edu.wpi.first.wpilibj.PIDSourceType; -import edu.wpi.first.wpilibj.command.Command; -import edu.wpi.first.wpilibj.interfaces.Gyro; -import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; -import frc.robot.ConstantsMap; -import frc.robot.Robot; -import frc.robot.subsystems.DriveSubsystem; -import frc.robot.subsystems.FollowLineSubsystem; -import java.lang.Math; -import java.util.ArrayList; -import java.util.Arrays; - -import com.kauailabs.navx.frc.AHRS; - - -/** - * Add your docs here. - */ -public class FollowLineCommand extends Command { - FollowLineSubsystem followLineSubsystem = Robot.followLineSubsystem; - DriveSubsystem driveSubsystem = Robot.driveSubsystem; - - //stage one variables (Vision Stage) - protected boolean stageOneComplete; - - - - //Checks to see if we are running rn - protected boolean runningFLC; - - //Maybe this will work variables - protected double startEncoderAvg; - protected double encoderFinalGoal; - - protected boolean firstRun; - //Other stuff that we need - - - //moar variables - private boolean overCompensate = false; - - protected double estimatedDistanceToWall; - - private double lineAngle; - private double lineDistance; - private boolean lineRightSide; - public FollowLineCommand() { - // Use requires() here to declare subsystem dependencies - requires(Robot.driveSubsystem); - } - PIDController drive; - PIDController turn; - PIDOutput output = new PIDOutput(){ - - @Override - public void pidWrite(double output) { - - } - }; - // Called just before this Command runs the first time - @Override - protected void initialize() { - driveSubsystem.resetGyro(); - System.out.println("FollowLineCommand init"); - driveSubsystem.enableBrake(); - driveSubsystem.resetEncoders(); - driveSubsystem.resetGyro(); - lineAngle = SmartDashboard.getNumber("LineStartAngle", 0.0); - lineDistance = SmartDashboard.getNumber("LineStartDistance", 0.0); - //lineRightSide = SmartDashboard.getBoolean("LineRightSide", true); - PIDSource source = new PIDSource(){ - - @Override - public void setPIDSourceType(PIDSourceType pidSource) { - - - } - - @Override - public double pidGet() { - return driveSubsystem.getLeftEncoderDistance(); - } - - @Override - public PIDSourceType getPIDSourceType() { - return null; - } - }; - - drive = new PIDController(1, 0, 0, source, output); - turn = new PIDController(1, 0, 0, driveSubsystem.getGyro(), output); - drive.setInputRange(-180, 180); - drive.setAbsoluteTolerance(ConstantsMap.PID_PERCENT_TOLERANCE); - drive.setSetpoint(lineDistance); - System.out.println("Set drive setpoint: " + lineDistance); - drive.setOutputRange(-ConstantsMap.PID_OUTPUT_MAX, ConstantsMap.PID_OUTPUT_MAX); - - turn.setInputRange(-180, 180); - turn.setAbsoluteTolerance(ConstantsMap.PID_PERCENT_TOLERANCE); - turn.setSetpoint(90-lineAngle); - turn.setOutputRange(-.5, .5); - drive.enable(); - - - } - - //this is to be called upon initialization and whenever the button is hit twice - protected void setupForRun() { - //turns on runningFLC - System.out.println("we made it true"); - runningFLC = true; - - //setup stage 1 variables - stageOneComplete = false; - - //maybe - firstRun = true; - } - - // Called repeatedly when this Command is scheduled to run - @Override - protected void execute() { - if(drive.isEnabled()){ - if(drive.onTarget()){ - drive.setEnabled(false); - turn.setEnabled(true); - } - else{ - double output = drive.get(); - System.out.println(output); - - driveSubsystem.tankDrive(output, output); - } - } - else if(turn.isEnabled()){ - if(turn.onTarget()){ - end(); - } - else{ - double output = turn.get(); - driveSubsystem.tankDrive(-output, output); - } - } - - } - - - //New method relying only on the sensors (a bit simpler than doing the calculations) - protected void approach() { - //Triggers when we have a camera on the sensor - System.out.println("fdjskal;fjkdsajfkl;dsajfkld;sajfkl;dsajkfldsjakl;fjdsakl;fjdklsajflkd;sa"); - double frontAverage = followLineSubsystem.getLineAverage(1); - - System.out.println("approach begin"); - - System.out.println("raw sensor data:" + Arrays.toString(followLineSubsystem.getRawData())); - System.out.println("t/f sensor data:" + Arrays.toString(followLineSubsystem.getLineData(0))); - - if (frontAverage == 0 || frontAverage == Float.NaN) { - driveSubsystem.stop();//this sets both speeds to 0 - - System.out.println("killededed"); - return;//Kills it because the sensor is either not working or off of the tape - } - - if (firstRun) {//this sets up the first few values we need - startEncoderAvg = (driveSubsystem.getRightEncoderDistance() + driveSubsystem.getLeftEncoderDistance()) / 2; - encoderFinalGoal = startEncoderAvg + 16;//16 in inches - - firstRun = false; - } - - System.out.println("Sensor outputs: " + frontAverage); - System.out.println("Encoder Goal: " + encoderFinalGoal + "\nCurrent Encoder Avg: " + ((driveSubsystem.getRightEncoderDistance() + driveSubsystem.getLeftEncoderDistance()) / 2)); - - if (((driveSubsystem.getRightEncoderDistance() + driveSubsystem.getLeftEncoderDistance()) / 2) < encoderFinalGoal) { - //Doing the turning with very little error so that we never go out too far that the robot is completely off the center line - - if (frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER + ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH) {//We are way to the left of the sensors, so we need to start turning (right) - System.out.println("we should compensate left!"); - overCompensate = true; - - driveSubsystem.tankDrive(-0.5 * ConstantsMap.APPROACH_SPEED, 2 * ConstantsMap.APPROACH_SPEED); - } else if (frontAverage < ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH) { //Turn Left - System.out.println("we should compensate right!"); - overCompensate = true; - - driveSubsystem.tankDrive(2 * ConstantsMap.APPROACH_SPEED, -0.5 * ConstantsMap.APPROACH_SPEED); - } else if (Math.abs(ConstantsMap.SENSOR_AVERAGE_CENTER - frontAverage) <= ConstantsMap.SENSOR_AVERAGE_TOLERANCE_LOW) {//We are within the tolerance, so we just move forward - System.out.println("we have fixed it, so no more overcompensating!"); - overCompensate = false; - - driveSubsystem.tankDrive(ConstantsMap.APPROACH_SPEED, ConstantsMap.APPROACH_SPEED); - } else if(frontAverage < ConstantsMap.SENSOR_AVERAGE_CENTER + ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH - && frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER + ConstantsMap.SENSOR_AVERAGE_TOLERANCE_LOW - && overCompensate) { - System.out.println("compensating left!"); - - driveSubsystem.tankDrive(-0.5 * ConstantsMap.APPROACH_SPEED, 2 * ConstantsMap.APPROACH_SPEED); - } - else if(frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH - && frontAverage < ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_AVERAGE_TOLERANCE_LOW - && overCompensate){ - System.out.println("compensating right!"); - - driveSubsystem.tankDrive(2 * ConstantsMap.APPROACH_SPEED, -0.5 * ConstantsMap.APPROACH_SPEED); - } - } else { - driveSubsystem.stop(); - System.out.println("We are bad"); - runningFLC = false;//We have completed the process - return; - } - - System.out.println("approach end"); - } - - // Make this return true when this Command no longer needs to run execute() - @Override - protected boolean isFinished() { - System.out.println("we are really dumb " + runningFLC); - return !runningFLC; - } - - // Called once after isFinished returns true - @Override - protected void end() { - System.out.println("FollowLineCommand end"); - } - - // Called for manual interruption of command - protected void kill() { - runningFLC = false; - - System.out.println("FollowLineCommand kill"); - } - - // Called when another command which requires one or more of the same - // subsystems is scheduled to run - @Override - protected void interrupted() { - System.out.println("FollowLineCommand interrupted"); - kill(); - } -} - - - - - - - - - - - - - - - - - - - - -/* - - - -package frc.robot.commands; - -import edu.wpi.first.wpilibj.command.Command; -import frc.robot.ConstantsMap; -import frc.robot.Robot; -import frc.robot.subsystems.DriveSubsystem; -import frc.robot.subsystems.FollowLineSubsystem; -import java.lang.Math; -import java.util.ArrayList; -import java.util.Arrays; - -import com.kauailabs.navx.frc.AHRS; - - -public class FollowLineCommand extends Command { - FollowLineSubsystem followLineSubsystem = Robot.followLineSubsystem; - DriveSubsystem driveSubsystem = Robot.driveSubsystem; - - //stage one variables (Vision Stage) - protected boolean stageOneComplete; - - /* - //stage two variables - protected boolean stageTwoComplete; - double leftEncoderDistanceGoal; - double rightEncoderDistanceGoal; - - //stage three variables - protected boolean stageThreeComplete; - - ArrayList oSSPreviousAverages; - int numOfJumps; - int[] jumpIndices; // these will be the index after the change - int[] jumpEncoderCount; // relative to the start of stage 2 - long startTime; - - //stage four variables - protected boolean stageFourComplete; - protected boolean stageFourFristRun; - - protected double deltaAverage; - protected double deltaDistance; - protected double deltaHorizontalDistance; - protected double angleToLine; - protected double desiredAngle; - protected double swingDistance; - protected double encoderGoal; - - //stage five variables - protected boolean stageFiveComplete; - - //stage six variables - protected boolean stageSixComplete; - - - //Checks to see if we are running rn - protected boolean runningFLC; - - //Maybe this will work variables - protected double startEncoderAvg; - protected double encoderFinalGoal; - - protected boolean firstRun; - //Other stuff that we need - AHRS gyro; - - //moar variables - private boolean overCompensate = false; - - protected double estimatedDistanceToWall; - - public FollowLineCommand() { - // Use requires() here to declare subsystem dependencies - requires(Robot.subsystem); - } - - // Called just before this Command runs the first time - @Override - protected void initialize() { - System.out.println("FollowLineCommand init"); - gyro = driveSubsystem.getGyro(); - setupForRun(); - } - - //this is to be called upon initialization and whenever the button is hit twice - protected void setupForRun() { - //turns on runningFLC - System.out.println("we made it true"); - runningFLC = true; - - //setup stage 1 variables - stageOneComplete = false; - /* - //stage 2 - stageTwoComplete = false; - leftEncoderDistanceGoal = 0; - rightEncoderDistanceGoal = 0; - - //stage 3 - stageThreeComplete = false; - - oSSPreviousAverages = new ArrayList(); - numOfJumps = 0; - jumpIndices = new int[]{0,0}; - jumpEncoderCount = new int[]{0, 0}; - startTime = System.nanoTime(); - - //stage 4 - stageFourComplete = false; - - //stage 5 - stageFiveComplete = false; - - //stage 6 - stageSixComplete = false; - - - //maybe - firstRun = true; - } - - // Called repeatedly when this Command is scheduled to run - @Override - protected void execute() { - - - /*if(limit switch hit){ - setupForRun();//reset for next run - somehow mark that we are done, maybe interrrupt? - }else{ - // if(!stageOneComplete) { - // stageOne(); - // } else if(!stageTwoComplete) { - // stageTwo(); - // } else if(!stageThreeComplete) { - // stageThree(); - // } else if(!stageFourComplete) { - // stageFour(); - // } else if(!stageFiveComplete) { - // stageFive(); - // } else if(!stageSixComplete) { - // stageSix(); - // } - System.out.println("We execute"); - approach(); - } - - /*DELETE THIS AT SOME POINT LATER WHEN OTHER METHODS WORK - //vision stage, get us closer to the line - protected void stageOne() { - System.out.println("stage 1"); - - //TODO: use vision somehow.... - //i have no clue as of yet, this is a different problem for somebody else although, i will say that hopefully we can make so that even if we approach the wall at some terrible angle, then we can hopefully use vision and motion profiling in conjunction to make the robot sort of swing outward to approach from a more reasonable angle, because if we approach from an angle of incedence to the wall of less than say 25 degrees, steps 2 and three WILL fail to fix it. any questions or ideas on how to do this better, talk to me(jake). - stageOneComplete = true; - } - - //once we hit the line, make sure we go forward 2 inches - protected void stageTwo() { - //stageTwoComplete = true; - - System.out.println("stage 2"); - //set target - if (leftEncoderDistanceGoal == 0 && rightEncoderDistanceGoal == 0) { - leftEncoderDistanceGoal = driveSubsystem.getLeftEncoderDistance() + 2; - rightEncoderDistanceGoal = driveSubsystem.getRightEncoderDistance() + 2; - - driveSubsystem.enableBrake(); - } - - driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); - driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); - - if ((driveSubsystem.getLeftEncoderDistance() > leftEncoderDistanceGoal)||(driveSubsystem.getRightEncoderDistance() > rightEncoderDistanceGoal)) { - stageTwoComplete = true; - } - } - - //once we are over the line, then watch for the horizontal change - protected void stageThree() { - System.out.println("stage 3"); - //boolean[] isFrontCameraOnStrip = followLineSubsystem.getLineData(1); - //boolean[] isBackCameraOnStrip = followLineSubsystem.getLineData(2); - - // for(boolean b: isBackCameraOnStrip){ - // if(b){ // jump to stage 6 - // stageTwoComplete = true; - // stageThreeComplete = true; - // stageFourComplete = true; - // stageFiveComplete = true; - // return; - // } - // } - - //if(oSSPreviousAverages.size()) - - //okay so here is my idea, we should use the arraylist of previous whatever to determine the trend of where we are going(this is to be done by mesasuing the time between jumps, as the number is a step function). once we see a change,we can then calculate the angle off that we are, then use the gyro to get our current angle and then calculate the new angle. Once we have our desired angle, we adjust for the swing of the front of the robot about its center iwth forward movement and only then do we we orient ourselves to the desired angle. Then once the back sensor hits, we can do the fine tuning. - //do we even have a gyro on this bot? hopefully? if not we can calulate it using the change in positoin of left and right wheels and calculate - //the angle, but that is so messy - //i *try* to implement this below - //any questions or ideas on how to do this better, talk to me(jake). - - //this gets the jumps in average - if(numOfJumps < 2) { - double frontAverage = followLineSubsystem.getLineAverage(1); - oSSPreviousAverages.add(frontAverage); - int oSSSize = oSSPreviousAverages.size(); - - if(oSSSize > 1 && numOfJumps < 2) {//just making sure we dont step outside oSSpreviousaverages - if(Math.abs(oSSPreviousAverages.get(oSSSize - 1) - oSSPreviousAverages.get(oSSSize - 2)) > 0.1){ - //now we have a step, so we can set our values - - jumpIndices[numOfJumps] = oSSSize - 1; - jumpEncoderCount[numOfJumps] = (driveSubsystem.getLeftEncoderCount() + driveSubsystem.getRightEncoderCount()) / 2; - - System.out.println("" + numOfJumps + ", " + jumpIndices[numOfJumps] + ", " + jumpEncoderCount[numOfJumps]); - - numOfJumps++; - } - } - return; // please note this return when considering flow of this a - } else { - stageThreeComplete = true; - } - } - - //once we get change and calculate the angle, then move forward to approximate the swing - protected void stageFour() { - System.out.println("stage 4"); - if (stageFourFristRun) {//do caluclation for angle - deltaDistance = (jumpEncoderCount[1] - jumpEncoderCount[0]) * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; - deltaAverage = oSSPreviousAverages.get(jumpIndices[1]) - oSSPreviousAverages.get(jumpIndices[0] - 1); - deltaHorizontalDistance = deltaAverage * ConstantsMap.DISTANCE_BETWEEN_SENSOR_CAMERAS; - - angleToLine = Math.acos(deltaHorizontalDistance/deltaDistance); - desiredAngle = gyro.getAngle() + angleToLine;//This "zeros" the angle - - swingDistance = Math.sin(angleToLine) * ConstantsMap.ROBOT_LENGTH/2;//Approximates distance the robot needs to move forward before turning to stay on line - - double previousEncoderValue = (driveSubsystem.getLeftEncoderDistance() + driveSubsystem.getRightEncoderDistance())/2; - encoderGoal = (previousEncoderValue + swingDistance); - - stageFourFristRun = false; - } - - //move forward to make up swing - driveSubsystem.setRightSpeed(ConstantsMap.APPROACH_SPEED); - driveSubsystem.setLeftSpeed(ConstantsMap.APPROACH_SPEED); - - if ((driveSubsystem.getLeftEncoderDistance() + driveSubsystem.getRightEncoderDistance())/2 > encoderGoal) {//Once we have moved enough to account for the turn - driveSubsystem.setRightSpeed(0); - driveSubsystem.setLeftSpeed(0); - stageFourComplete = true; - } - } - - //now turn the robot to the desired angle - protected void stageFive() { - - - - System.out.println("stage 5"); - if (Math.abs(desiredAngle - gyro.getAngle()) > ConstantsMap.ANGLE_TOLLERANCE) {//Checks to see if our angle of approach is too great - if (desiredAngle - gyro.getAngle() > 0) {//These figure out which was to turn - driveSubsystem.setLeftSpeed((ConstantsMap.TURN_SPEED)); - driveSubsystem.setRightSpeed((ConstantsMap.TURN_SPEED * -1)); - } else { - driveSubsystem.setLeftSpeed(( ConstantsMap.TURN_SPEED * -1)); - driveSubsystem.setRightSpeed( ConstantsMap.TURN_SPEED); - } - } else { - stageFiveComplete = true; - } - } - - //now move to the wall, and use the old two sensor stage - protected void stageSix() { - System.out.println("stage 6"); - stageSixComplete = true; - } - - - //New method relying only on the sensors (a bit simpler than doing the calculations) - protected void approach() { - //Triggers when we have a camera on the sensor - System.out.println("fdjskal;fjkdsajfkl;dsajfkld;sajfkl;dsajkfldsjakl;fjdsakl;fjdklsajflkd;sa"); - double frontAverage = followLineSubsystem.getLineAverage(1); - - System.out.println("approach begin"); - - System.out.println("raw sensor data:" + Arrays.toString(followLineSubsystem.getRawData())); - System.out.println("t/f sensor data:" + Arrays.toString(followLineSubsystem.getLineData(0))); - - if (frontAverage == 0 || frontAverage == Float.NaN) { - driveSubsystem.stop();//this sets both speeds to 0 - - System.out.println("killededed"); - return;//Kills it because the sensor is either not working or off of the tape - } - - if (firstRun) {//this sets up the first few values we need - startEncoderAvg = (driveSubsystem.getRightEncoderDistance() + driveSubsystem.getLeftEncoderDistance()) / 2; - encoderFinalGoal = startEncoderAvg + 16;//16 in inches - - firstRun = false; - } - - System.out.println("Sensor outputs: " + frontAverage); - System.out.println("Encoder Goal: " + encoderFinalGoal + "\nCurrent Encoder Avg: " + ((driveSubsystem.getRightEncoderDistance() + driveSubsystem.getLeftEncoderDistance()) / 2)); - - if (((driveSubsystem.getRightEncoderDistance() + driveSubsystem.getLeftEncoderDistance()) / 2) < encoderFinalGoal) { - //Doing the turning with very little error so that we never go out too far that the robot is completely off the center line - - if (frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER + ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH) {//We are way to the left of the sensors, so we need to start turning (right) - System.out.println("we should compensate left!"); - overCompensate = true; - - driveSubsystem.tankDrive(-0.5 * ConstantsMap.APPROACH_SPEED, 2 * ConstantsMap.APPROACH_SPEED); - } else if (frontAverage < ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH) { //Turn Left - System.out.println("we should compensate right!"); - overCompensate = true; - - driveSubsystem.tankDrive(2 * ConstantsMap.APPROACH_SPEED, -0.5 * ConstantsMap.APPROACH_SPEED); - } else if (Math.abs(ConstantsMap.SENSOR_AVERAGE_CENTER - frontAverage) <= ConstantsMap.SENSOR_AVERAGE_TOLERANCE_LOW) {//We are within the tolerance, so we just move forward - System.out.println("we have fixed it, so no more overcompensating!"); - overCompensate = false; - - driveSubsystem.tankDrive(ConstantsMap.APPROACH_SPEED, ConstantsMap.APPROACH_SPEED); - } else if(frontAverage < ConstantsMap.SENSOR_AVERAGE_CENTER + ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH - && frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER + ConstantsMap.SENSOR_AVERAGE_TOLERANCE_LOW - && overCompensate) { - System.out.println("compensating left!"); - - driveSubsystem.tankDrive(-0.5 * ConstantsMap.APPROACH_SPEED, 2 * ConstantsMap.APPROACH_SPEED); - } - else if(frontAverage > ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_AVERAGE_TOLERANCE_HIGH - && frontAverage < ConstantsMap.SENSOR_AVERAGE_CENTER - ConstantsMap.SENSOR_AVERAGE_TOLERANCE_LOW - && overCompensate){ - System.out.println("compensating right!"); - - driveSubsystem.tankDrive(2 * ConstantsMap.APPROACH_SPEED, -0.5 * ConstantsMap.APPROACH_SPEED); - } - } else { - driveSubsystem.stop(); - System.out.println("We are bad"); - runningFLC = false;//We have completed the process - return; - } - - System.out.println("approach end"); - } - - // Make this return true when this Command no longer needs to run execute() - @Override - protected boolean isFinished() { - System.out.println("we are really dumb " + runningFLC); - return !runningFLC; - } - - // Called once after isFinished returns true - @Override - protected void end() { - System.out.println("FollowLineCommand end"); - } - - // Called for manual interruption of command - protected void kill() { - runningFLC = false; - - System.out.println("FollowLineCommand kill"); - } - - // Called when another command which requires one or more of the same - // subsystems is scheduled to run - @Override - protected void interrupted() { - System.out.println("FollowLineCommand interrupted"); - kill(); - } -} -*/ \ No newline at end of file diff --git a/src/main/java/frc/robot/commands/WristZero.java b/src/main/java/frc/robot/commands/WristZero.java new file mode 100644 index 0000000..f3f2258 --- /dev/null +++ b/src/main/java/frc/robot/commands/WristZero.java @@ -0,0 +1,70 @@ +package frc.robot.commands; + +import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; + +import edu.wpi.first.wpilibj.PIDController; +import edu.wpi.first.wpilibj.PIDOutput; +import edu.wpi.first.wpilibj.PIDSource; +import edu.wpi.first.wpilibj.PIDSourceType; +import edu.wpi.first.wpilibj.command.Command; +import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; +import frc.robot.Robot; +import frc.robot.XboxMap; +import frc.robot.pids.EncoderMotorPID; +import frc.robot.TalonSet; +import frc.robot.ConstantsMap; +import frc.robot.subsystems.ArmSubsystem2; + +public class WristZero extends Command { + ArmSubsystem2 armSubsystem = Robot.armSubsystem2; + private double shoulderAngle; + private double wristAngle; + private double actualShoulderAngle; + private double actualWristAngle; + public WristZero() { + requires(armSubsystem); + } + + // Called just before this Command runs the first time + @Override + protected void initialize() { + System.out.println("Wrist Zero Started"); + armSubsystem.setWristJointSpeed(.62); + + + } + + // Called repeatedly when this Command is scheduled to run + @Override + protected void execute() { + + } + + + + // Make this return true when this Command no longer needs to run execute() + @Override + protected boolean isFinished() { + return armSubsystem.getWristLowerLimit(); + } + + // Called once after isFinished returns true + @Override + protected void end() { + armSubsystem.setWristJointSpeed(0); + System.out.println("Zero wrist Command Stopped"); + + + } + + // Called when another command which requires one or more of the same + // subsystems is scheduled to run + @Override + protected void interrupted() { + System.out.println("Zero Wrist Command Intrupted"); + + armSubsystem.setShoulderJointSpeed(0); + armSubsystem.setWristJointSpeed(0);; + + } +} \ No newline at end of file diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index e176de4..a83123c 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -11,6 +11,7 @@ import com.ctre.phoenix.motorcontrol.FeedbackDevice; import com.ctre.phoenix.motorcontrol.LimitSwitchNormal; import com.ctre.phoenix.motorcontrol.LimitSwitchSource; +import com.ctre.phoenix.motorcontrol.NeutralMode; import com.ctre.phoenix.motorcontrol.StatusFrameEnhanced; import com.ctre.phoenix.motorcontrol.can.TalonSRX; import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; @@ -32,20 +33,25 @@ public class ArmSubsystem2 extends Subsystem { - private DigitalInput upperLimit, lowerLimit, upperLimitWrist, lowerLimitWrist; - + private DigitalInput lowerLimit, lowerLimitWrist, lowerLimitWrist2; + private double wristLimitStartTime,wristLimitStartTime2; + private boolean wristLimit,wristLimit2; TalonSRX shoulder, shoulderSlave,wrist; public ArmSubsystem2() { + lowerLimit = new DigitalInput(RobotMap.LOWER_ARM_LIMIT_PORT); lowerLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); + lowerLimitWrist2 = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT2); + + shoulder = new TalonSRX(RobotMap.SHOULDER_JOINT_RIGHT_PORT); shoulderSlave = new TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); shoulderSlave.configFactoryDefault(); shoulder.setInverted(false); shoulderSlave.setInverted(true); shoulder.setSensorPhase(true); - + shoulder.setNeutralMode(NeutralMode.Brake); shoulderSlave.follow(shoulder); shoulder.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Absolute, @@ -71,7 +77,7 @@ public ArmSubsystem2() { //shoulder.configForwardLimitSwitchSource(LimitSwitchSource., LimitSwitchNormal.NormallyClosed); wrist = new TalonSRX(RobotMap.WRIST_JOINT_PORT); wrist.setInverted(true); - + wrist.setNeutralMode(NeutralMode.Brake); wrist.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Absolute, ConstantsMap.kPIDLoopIdx, ConstantsMap.kTimeoutMs); @@ -96,10 +102,12 @@ public ArmSubsystem2() { //upperLimit = new DigitalInput(RobotMap.UPPER_ARM_LIMIT_PORT); //lowerLimit = new DigitalInput(RobotMap.LOWER_ARM_LIMIT_PORT); //upperLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); - lowerLimitWrist.setName("LowerWristLimit"); - SmartDashboard.putData(lowerLimitWrist); - } + lowerLimit.setName("LowerWristLimit"); + setWristSetPoint(getWristEncoderAngle()); + setShoulderSetPoint(getShoulderEncoderAngle()); + } + public void setShoulderJointSpeed(double speed) { shoulder.set(ControlMode.PercentOutput,speed); @@ -109,24 +117,26 @@ public void setWristJointSpeed(double speed) { wrist.set(ControlMode.PercentOutput,speed); } public void setWristSetPoint(double angle){ + if(getShoulderEncoderAngle()ConstantsMap.WRIST_MAX_ANGLE){ - angle =ConstantsMap.WRIST_MAX_ANGLE-10; + angle =ConstantsMap.WRIST_MAX_ANGLE; } if(angleConstantsMap.SHOULDER_MAX_ANGLE){ - angle =ConstantsMap.SHOULDER_MAX_ANGLE-10; + angle =ConstantsMap.SHOULDER_MAX_ANGLE; } if(angle 100){ + wristLimit = true; + } + } + else{ + wristLimit = false; + + } + if(lowerLimitWrist2.get()){ + if(!wristLimit2){ + wristLimitStartTime2 = System.currentTimeMillis(); + + } + if(currentTime - wristLimitStartTime2 > 100){ + wristLimit2 = true; + } + } + else{ + wristLimit2 = false; + + } + + // return wristLimit || wristLimit2; + return lowerLimitWrist2.get() || lowerLimitWrist.get(); } public double getShoulderSpeed(){ @@ -188,7 +229,8 @@ public double getShoulderSpeed(){ public double getWristSpeed(){ return wrist.getMotorOutputPercent(); } - + + @Override public void initDefaultCommand() { // Set the default command for a subsystem here. diff --git a/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java b/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java deleted file mode 100644 index df55105..0000000 --- a/src/main/java/frc/robot/subsystems/FollowLineSubsystem.java +++ /dev/null @@ -1,88 +0,0 @@ -/*----------------------------------------------------------------------------*/ -/* Copyright (c) 2018 FIRST. All Rights Reserved. */ -/* Open Source Software - may be modified and shared by FRC teams. The code */ -/* must be accompanied by the FIRST BSD license file in the root directory of */ -/* the project. */ -/*----------------------------------------------------------------------------*/ - -package frc.robot.subsystems; - - -import java.util.Arrays; - -import edu.wpi.first.wpilibj.I2C; -import edu.wpi.first.wpilibj.I2C.Port; -import edu.wpi.first.wpilibj.command.Subsystem; -import frc.robot.ConstantsMap; - -/** - * Add your docs here. - */ -public class FollowLineSubsystem extends Subsystem{ - I2C i2c; - public FollowLineSubsystem(){ - System.out.println("Line Follow Subsystem Init"); - i2c = new I2C(Port.kOnboard, 0x09); - - - } - - @Override - public void initDefaultCommand() { - - } - public String getData(){ - byte[] fromSensor = new byte[16]; - i2c.readOnly(fromSensor,16); - int[] data = new int[8]; - for(int i= 0;i<8;i++){ - data[i] = fromSensor[2*i] & 0xFF; - } - return Arrays.toString(data); - } - - public int[] getRawData(){ - byte[] fromSensor = new byte[16]; - i2c.readOnly(fromSensor,16); - int[] data = new int[8]; - for(int i= 0;i<8;i++){ - data[i] = fromSensor[2*i] & 0xFF; - } - return data; - } - - //gets data from camera srip, strip 1 is front camera, strip 2 is back camera - public boolean[] getLineData(int strip) { - boolean[] sensors = new boolean[8]; - - byte[] fromSensor = new byte[16]; - i2c.readOnly(fromSensor,16); - int[] data = new int[8]; - - for(int i= 0;i<8;i++){ - data[i] = fromSensor[2*i] & 0xFF; - } - - for(int i = 0; i < 8; i++){ - sensors[i] = data[i] > ConstantsMap.BLACK_WHITE_CUTOFF; - } - - return sensors; - } - public double getLineAverage(int strip){ - boolean[] isFrontCameraOnStrip = getLineData(strip); - - double sum = 0.0d; - int camerasOn = 0; - - for(int i = 0; i < 8; i++){ - if(isFrontCameraOnStrip[i]){ - sum+=i; - camerasOn++; - } - } - - return sum/camerasOn; - } - -} diff --git a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java index e2fe797..ac717b1 100644 --- a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java +++ b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java @@ -10,6 +10,7 @@ import com.ctre.phoenix.motorcontrol.can.TalonSRX; import edu.wpi.first.wpilibj.DoubleSolenoid; +import edu.wpi.first.wpilibj.Solenoid; import edu.wpi.first.wpilibj.DoubleSolenoid.Value; import edu.wpi.first.wpilibj.command.Subsystem; import frc.robot.RobotMap; @@ -21,30 +22,31 @@ public class HatchGrabberSubsystem extends Subsystem { // Put methods for controlling this subsystem // here. Call these from Commands. - DoubleSolenoid grabberPiston, releasePiston1, releasePiston2; - + //DoubleSolenoid grabberPiston, releasePiston1, releasePiston2; + Solenoid grabberPiston, releasePiston1, releasePiston2; public HatchGrabberSubsystem() { /* grabberPiston = new DoubleSolenoid(RobotMap.GRAB_PISTON_F, RobotMap.GRAB_PISTON_R); releasePiston1 = new DoubleSolenoid(RobotMap.RELEASE_PISTON_1_F, RobotMap.RELEASE_PISTON_1_R); */ - grabberPiston = new DoubleSolenoid(4,5); - releasePiston1 = new DoubleSolenoid(6, 7); + grabberPiston = new Solenoid(4); + //releasePiston1 = new DoubleSolenoid(4, 5); + releasePiston1 = new Solenoid(5); } public void extendGrabber() { - grabberPiston.set(Value.kForward); + grabberPiston.set(false); } public void retractGrabber() { - grabberPiston.set(Value.kReverse); + grabberPiston.set(true); } public void releaseHatch() { - releasePiston1.set(Value.kForward); + releasePiston1.set(false); } public void retractEjectors() { - releasePiston1.set(Value.kReverse); + releasePiston1.set(true); } @Override From eb0a8e562dee2c1fa9fb5077c1df43a9c8391bb6 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Sat, 16 Feb 2019 08:56:35 -0600 Subject: [PATCH 087/131] Changed Everything --- src/main/java/frc/robot/ConstantsMap.java | 26 +- src/main/java/frc/robot/ControlPanelMap.java | 105 +++++ src/main/java/frc/robot/OI.java | 10 +- src/main/java/frc/robot/Robot.java | 7 +- src/main/java/frc/robot/Xbox.java | 424 ------------------ src/main/java/frc/robot/XboxMap.java | 106 +---- .../java/frc/robot/commands/ArmCommand2.java | 19 +- .../frc/robot/commands/ArmPresetCommand.java | 34 +- .../java/frc/robot/commands/DriveCommand.java | 3 +- .../frc/robot/subsystems/ArmSubsystem2.java | 25 +- .../frc/robot/subsystems/DriveSubsystem.java | 3 +- .../subsystems/HatchGrabberSubsystem.java | 3 +- 12 files changed, 186 insertions(+), 579 deletions(-) create mode 100644 src/main/java/frc/robot/ControlPanelMap.java delete mode 100644 src/main/java/frc/robot/Xbox.java diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 4e17a0b..2125f42 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -55,7 +55,7 @@ public class ConstantsMap { public static final int WRIST_VELOCITY = 20000; public static final int WRIST_ACCEL = 10000; public static final int WRIST_FOLLOW_DISTANCE = 20; - public static final double WRIST_CHANGE_SETPOINT_SPEED = 1; + public static final double WRIST_CHANGE_SETPOINT_SPEED = .5; public static final Gains wristGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); @@ -69,7 +69,7 @@ public class ConstantsMap { public static final int SHOULDER_VELOCITY = 20000; public static final int SHOULDER_ACCEL = 10000; public static final int SHOULDER_FOLLOW_DISTANCE = 20; - public static final double SHOULDER_CHANGE_SETPOINT_SPEED = 1; + public static final double SHOULDER_CHANGE_SETPOINT_SPEED = .5; public static final int SHOULDER_WRIST_FOLD_ANGLE = -45; @@ -93,10 +93,20 @@ public class ConstantsMap { // PRESETS!!! public static final boolean isHatchGrabber = true; - public static final double HATCH_PRESET_1_ANGLE = -40.0; - public static final double HATCH_PRESET_2_ANGLE = 8.0; - public static final double HATCH_PRESET_3_ANGLE = 47.0; - public static final double CARGO_PRESET_1_ANGLE = 8.0; - public static final double CARGO_PRESET_2_ANGLE = 8.0; - public static final double CARGO_PRESET_3_ANGLE = 47.0; + public static final double ROCKET_HATCH_PRESET_1 = -40.0; + public static final double ROCKET_HATCH_PRESET_2 = 8.0; + public static final double ROCKET_HATCH_PRESET_3 = 47.0; + public static final double ROCKET_BALL_PRESET_1 = 8.0; + public static final double ROCKET_BALL_PRESET_2 = 8.0; + public static final double ROCKET_BALL_PRESET_3 = 47.0; + + public static final double CARGO_BALL_PRESET = -20.0; + public static final double CARGO_HATCH_PRESET = -20.0; + + public static final double HATCH_COLLECT_PRESET = -20.0; + public static final double BALL_COLLECT_PRESET = -20.0; + + public static final double GO_HOME_PRESET = SHOULDER_MIN_ANGLE; + + } \ No newline at end of file diff --git a/src/main/java/frc/robot/ControlPanelMap.java b/src/main/java/frc/robot/ControlPanelMap.java new file mode 100644 index 0000000..dad7150 --- /dev/null +++ b/src/main/java/frc/robot/ControlPanelMap.java @@ -0,0 +1,105 @@ +package frc.robot; + +import edu.wpi.first.wpilibj.GenericHID.Hand; +import edu.wpi.first.wpilibj.buttons.JoystickButton; +import frc.robot.commands.ArmPresetCommand; + +public class ControlPanelMap { + static OI oi = Robot.oi; + JoystickButton + rocketHatchPreset1, + rocketHatchPreset2, + rocketHatchPreset3, + rocketBallPreset1, + rocketBallPreset2, + rocketBallPreset3, + cargoHatchPreset, + cargoBallPreset, + ballCollectPreset, + hatchCollectPreset, + goHome; + + + public ControlPanelMap(){ + rocketBallPreset1 = new JoystickButton(oi.controlPanel1, 1); + rocketBallPreset2 = new JoystickButton(oi.controlPanel1, 3); + rocketBallPreset3 = new JoystickButton(oi.controlPanel1, 5); + rocketHatchPreset1 = new JoystickButton(oi.controlPanel1, 2); + rocketHatchPreset2 = new JoystickButton(oi.controlPanel1, 4); + rocketHatchPreset3 = new JoystickButton(oi.controlPanel1, 6); + + cargoBallPreset = new JoystickButton(oi.controlPanel1, 7); + cargoHatchPreset = new JoystickButton(oi.controlPanel1, 8); + + ballCollectPreset = new JoystickButton(oi.controlPanel1, 9); + hatchCollectPreset = new JoystickButton(oi.controlPanel1,10); + + goHome = new JoystickButton(oi.controlPanel1, 11); + + rocketHatchPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_1)); + rocketHatchPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_2)); + rocketHatchPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_3)); + rocketBallPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_1)); + rocketBallPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_2)); + rocketBallPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_3)); + + cargoHatchPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_HATCH_PRESET)); + cargoBallPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_BALL_PRESET)); + + ballCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.BALL_COLLECT_PRESET)); + hatchCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.HATCH_COLLECT_PRESET)); + + goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET)); + + } + + + public static double controlWristJoint() { + return oi.controlPanel1.getY(Hand.kRight); + } + + public static double controlShoulderJoint() { + return oi.controlPanel2.getY(Hand.kRight); + } + public static boolean inTake() { + return oi.controlPanel2.getRawButtonPressed(1); + } + public static boolean outTake() { + return oi.controlPanel2.getRawButtonPressed(2); + } + public static boolean setBallMode() { + return oi.controlPanel2.getRawButtonPressed(2); + } + public static boolean setHatcheMode() { + return oi.controlPanel2.getRawButtonPressed(2); + } + public static boolean toggleDebug() { + return oi.controlPanel1.getRawButtonPressed(2); + } + +/* + public static boolean toggleArmControl() { + return oi.xbox.getXButtonPressed(); + } + public static boolean toggleArmManualControl() { + return oi.xbox.getAButtonPressed(); + } + public static boolean zeroWrist() { + return oi.xbox.getBackButtonPressed(); + } + public static boolean zeroShoulder() { + return oi.xbox.getStartButtonPressed(); + } + public static boolean enableWristLevelling() { + return oi.xbox.getBButtonPressed(); + } + + + public static boolean hatchPiston() { + return oi.xbox.getLeftBumperValue(); + } + public static boolean grabberPiston() { + return oi.xbox.getRightBumperValue(); + } */ + +} \ No newline at end of file diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index a9f66d5..afdd57b 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -7,6 +7,8 @@ package frc.robot; +import edu.wpi.first.wpilibj.Joystick; +import edu.wpi.first.wpilibj.XboxController; /** * This class is the glue that binds the controls on the physical operator @@ -16,11 +18,13 @@ public class OI { //User interface Constants public double attackThrottleSensitivity=.1; //Controllers - public static Xbox xbox,ps4; + public static XboxController xbox,ps4; + public static Joystick controlPanel1,controlPanel2; public OI(){ - xbox = new Xbox(0); - ps4 = new Xbox(1); + xbox = new XboxController(0); + controlPanel1 = new Joystick(1); + controlPanel2 = new Joystick(2); //attack3_L = new Attack3(3); //attack3_R = new Attack3(4); diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index bbb05a2..14ba373 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -68,8 +68,7 @@ public void robotInit() { //followLineCommand = new FollowLineCommand(); hgCommand = new HatchGrabberCommand(); armCommand = new ArmCommand2(); - preset = new ArmPresetCommand(); - zeroWrist = new WristZero(); + server = CameraServer.getInstance(); armEnable = false; //server.startAutomaticCapture("Ground",0); @@ -185,7 +184,7 @@ public void teleopPeriodic() { } */ - if(XboxMap.toggleArmControl()){ + /* if(XboxMap.toggleArmControl()){ if(armCommand.isRunning()){ armCommand.cancel(); preset.start(); @@ -206,7 +205,7 @@ public void teleopPeriodic() { armCommand.start(); } - } + } */ SmartDashboard.putBoolean("Arm Control", armCommand.isRunning()); Scheduler.getInstance().run(); } diff --git a/src/main/java/frc/robot/Xbox.java b/src/main/java/frc/robot/Xbox.java deleted file mode 100644 index b294209..0000000 --- a/src/main/java/frc/robot/Xbox.java +++ /dev/null @@ -1,424 +0,0 @@ -/*----------------------------------------------------------------------------*/ -/* Copyright (c) 2018 FIRST. All Rights Reserved. */ -/* Open Source Software - may be modified and shared by FRC teams. The code */ -/* must be accompanied by the FIRST BSD license file in the root directory of */ -/* the project. */ -/*----------------------------------------------------------------------------*/ - -package frc.robot; - -import edu.wpi.first.wpilibj.Joystick; -import edu.wpi.first.wpilibj.buttons.JoystickButton; - -public class Xbox extends Joystick{ - - //Axes - private static final int LEFT_XAXIS = 0; - private static final int LEFT_YAXIS = 1; - private static final int RIGHT_XAXIS = 4; - private static final int RIGHT_YAXIS = 5; - private static final int TRIGGERS_LEFT = 2; - private static final int TRIGGERS_RIGHT = 3; - //Buttons - private static final int ABUTTON = 1; - private static final int BBUTTON = 2; - private static final int XBUTTON = 3; - private static final int YBUTTON = 4; - private static final int LEFT_BUMPER = 5; - private static final int RIGHT_BUMPER = 6; - private static final int BACK_BUTTON = 7; - private static final int START_BUTTON = 8; - - /** - * Constructor creates an object to interface with an Xbox 360 controller - * - * @param port The port on the drivers station that the controller is - * connected to - * @return - */ - public Xbox(int port) { - super(port); - } - - /** - * Get the value of X of the left joystick. The right side of the axis is - * positive. - * - * @param - * @return The value of the axis from -1 to 1. - */ - public double getLeftX() { - return (getRawAxis(LEFT_XAXIS)); - } - - /** - * Get the value of Y of the left joystick. The upward part of the axis is - * positive. - * - * @param - * @return The value of the axis from -1 to 1. - */ - public double getLeftY() { - return (1 * getRawAxis(LEFT_YAXIS)); - //Multiply output by -1 because GetAxis() returns the axis backwards. - } - - /** - * Get the value of X of the right joystick. The right side of the axis is - * positive. - * - * @param - * @return The value of the axis from -1 to 1. - */ - public double getRightX() { - return (getRawAxis(RIGHT_XAXIS)); - } - - /** - * Get the value of Y of the right joystick. The upward part of the axis is - * positive. - * - * @return The value of the axis from -1 to 1. - */ - public double getRightY() { - return (-1 * getRawAxis(RIGHT_YAXIS)); - } - - /** - * Get the value corresponding to the triggers. The left stick adds to it, - * the right stick subtracts. Range -1 to 1. - * - * @param - * @return The value corresponding to the triggers. - */ - public double getRightTriggers() { - return (getRawAxis(TRIGGERS_RIGHT)); - } - - public double getLeftTriggers() { - return (getRawAxis(TRIGGERS_LEFT)); - } - - /** - * Get the current state of the A button. - * - * @param - * @return The current state of the button - */ - public boolean getAValue() { - return (getRawButton(1)); - } - - /** - * Get the current state of the B button. - * - * @param - * @return The current state of the button - */ - public boolean getBValue() { - return (getRawButton(2)); - } - - /** - * Get the current state of the X button. - * - * @param - * @return The current state of the button - */ - public boolean getXValue() { - return (getRawButton(3)); - } - - /** - * Get the current state of the Y button. - * - * @param - * @return The current state of the button - */ - public boolean getYValue() { - return (getRawButton(4)); - } - - /** - * Get the current state of the Left Bumper. - * - * @param - * @return The current state of the button - */ - public boolean getLeftBumperValue() { - return (getRawButton(5)); - } - - /** - * Get the current state of the Right Bumper. - * - * @param - * @return The current state of the button - */ - public boolean getRightBumperValue() { - return (getRawButton(6)); - } - - /** - * Get the current state of the Back button. - * - * @param - * @return The current state of the button - */ - public boolean getBackValue() { - return (getRawButton(7)); - } - - /** - * Get the current state of the Start button. - * - * @param - * @return The current state of the button - */ - public boolean getStartValue() { - return (getRawButton(8)); - } - - /** - * Get the angle of the left joystick. It is counter-clockwise, 0 is down. - * - * @param reflectCircle Choose whether to reflect over the Y axis. - * @return The angle of the left joystick. - */ - public double getLeftAngle(boolean reflectCircle) { - float yAxis = (float) (-1 * getLeftY()); - float xAxis; - - if (reflectCircle) { - xAxis = (float) getLeftX(); - } else { - xAxis = (float) (-1 * getLeftX()); - } - - double angle = 0; - - if (xAxis == 0 && yAxis == 0) { - angle = 0; - } else if (xAxis == 0) { - if (yAxis > 0) { - angle = 0; - } else { - angle = Math.PI; //Legacy: Math.PI - } - } else if (yAxis == 0) { - if (xAxis > 0) { - angle = (3 * Math.PI / 2); - } else { - angle = ((Math.PI) / 2); - } - } else { - angle = Math.atan2(yAxis, xAxis); - } - - if (angle >= (2 * Math.PI)) { - angle = angle - (2 * Math.PI); - } - - if (angle < 0) { - angle = angle + (2 * Math.PI); - } - - return (angle); - } - - /** - * Get the angle of the right joystick. It is counter-clockwise, 0 is down. - * - * @param reflectCircle Choose whether to reflect over the Y axis. - * @return The angle of the right joystick. - */ - public double getRightAngle(boolean reflectCircle) { - float yAxis = (float) (-1 * getRightY()); - float xAxis; - - if (reflectCircle) { - xAxis = (float) getRightX(); - } else { - xAxis = (float) (-1 * getRightX()); - } - - double angle = 0; - - if (xAxis == 0 && yAxis == 0) { - angle = 0; - } else if (xAxis == 0) { - if (yAxis > 0) { - angle = 0; - } else { - angle = Math.PI; - } - } else if (yAxis == 0) { - if (xAxis > 0) { - angle = (3 * Math.PI / 2); - } else { - angle = ((Math.PI) / 2); - } - } else { - angle = Math.atan2(yAxis, xAxis); - } - - if (angle >= (2 * Math.PI)) { - angle = angle - (2 * Math.PI); - } - - if (angle < 0) { - angle = angle + (2 * Math.PI); - } - - return (angle); - } - - /** - * Get the magnitude of the left joystick. Value is between 0 and 1. - * - * @param - * @return The magnitude of the left joystick. - */ - public double getLeftMagnitude() { - return (limit(Math.sqrt(Math.pow(getLeftX(), (2)) + Math.pow(getLeftY(), (2))))); - } - - /** - * Get the magnitude of the right joystick. Value is between 0 and 1. - * - * @param - * @return The magnitude of the right joystick. - */ - public double getRightMagnitude() { - return (limit(Math.sqrt(Math.pow(getRightX(), (2)) + Math.pow(getRightY(), (2))))); - } - - ////////////////Get Raw Button Methods to be used by Command/Subsystem Interface - /** - * Get A Button - * - * @param - * @return - * @return A Button - */ - public JoystickButton getAButton() { - return (new JoystickButton(this, ABUTTON)); - } - - /** - * Get B Button - * - * @param - * @return - * @return B Button - */ - public JoystickButton getBButton() { - return (new JoystickButton(this, BBUTTON)); - } - - /** - * Get X Button - * - * @param - * @return X Button - */ - public JoystickButton getXButton() { - return (new JoystickButton(this, XBUTTON)); - } - - /** - * Get Y Button - * - * @param - * @return Y Button - */ - public JoystickButton getYButton() { - return (new JoystickButton(this, YBUTTON)); - } - - /** - * Get Back Button - * - * @param - * @return Back Button - */ - public JoystickButton getBackButton() { - return (new JoystickButton(this, BACK_BUTTON)); - } - - /** - * Get Start Button - * - * @param - * @return Start Button - */ - public JoystickButton getStartButton() { - return (new JoystickButton(this, START_BUTTON)); - } - - /** - * Get Left Bumper - * - * @param - * @return Left Bumper - */ - public JoystickButton getLeftBumper() { - return (new JoystickButton(this, LEFT_BUMPER)); - } - - /** - * Get Right Bumper - * - * @param - * @return Right Bumper - */ - public JoystickButton getRightBumper() { - return (new JoystickButton(this, RIGHT_BUMPER)); - } - - ////////////////End Raw Button Methods for Command/Subsystem Interface - /** - * Get the buttons of the controller, to be used by other functions. - * - * The buttons on the controller follow this mapping 1: A 2: B 3: X 4: Y 5: - * Left Bumper 6: Right Bumper 7: Back 8: Start 9: Left Joystick 10: Right - * Joystick - * - * @param button The button to get the value of. Range 1-10. - * @return The state of the button. - */ - public boolean getRawButton(int button) { - return (super.getRawButton(button)); - } - - /** - * Get the raw axes of the controller, to be used by other functions. - * - * The axis on the controller follow this mapping 1: Left Stick X Axis - * -Left:Negative ; Right: Positive 2: Left Stick Y Axis -Up: Negative ; - * Down: Positive 3: Triggers -Left: Positive ; Right: Negative 4: Right - * Stick X Axis -Left: Negative ; Right: Positive 5: Right Stick Y Axis -Up: - * Negative ; Down: Positive 6: Directional Pad (Not recommended, buggy) - * - * @param axis The axis to get the value of. Range 1-6. - * @return The value of the axis from -1 to 1. - */ - public double getRawAxis(int axis) { - return super.getRawAxis(axis); - } - - /** - * Normalize outputs to be between -1 and 1. - * - * @param num The value to normalize. - * @return The normalized value. - */ - public double limit(double num) { - if (num > 1) { - num = 1; - } else if (num < -1) { - num = -1; - } - return num; - } -} \ No newline at end of file diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index 51859be..9205fe8 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -7,116 +7,22 @@ package frc.robot; +import edu.wpi.first.wpilibj.GenericHID.Hand; + public class XboxMap { static OI oi = Robot.oi; - //Drive commands - - -// static public boolean controlDriverGear() { -// return oi.xbox.getLeftBumperValue(); -// } -// - //Grabber commands -// static public double controlUpperGrabberOut(){ -// return oi.xbox.getRightTriggers(); -// } -// -// static public double controlUpperGrabberIn(){ -// return oi.xbox.getLeftTriggers(); -// } - - //Elevator commands - - //TODO B is also being used for outtake (Change later) // Put it on the other controller?? - - public static double controlWristJoint() { - return oi.xbox.getRightY(); - } - - public static double controlShoulderJoint() { - return oi.xbox.getLeftY(); - } - - public static boolean toggleArmControl() { - return oi.xbox.getXValue(); - } - public static boolean toggleArmManualControl() { - return oi.xbox.getAValue(); - } - public static boolean zeroWrist() { - return oi.xbox.getBackValue(); - } - public static boolean zeroShoulder() { - return oi.xbox.getStartValue (); - } - public static boolean enableWristLevelling() { - return oi.xbox.getBValue(); - } - - //Driving Controls public static double right() { - return oi.xbox.getRightY(); + return oi.xbox.getY(Hand.kRight); } public static double left() { - return oi.xbox.getLeftY(); + return oi.xbox.getY(Hand.kLeft); } - - static public boolean runFollowLineCommand() { - return oi.ps4.getAValue(); - } - public static boolean startAutoBrakerSystem(){ - return oi.ps4.getRightBumperValue(); - } - - public static boolean hatchPiston() { - return oi.xbox.getLeftBumperValue(); - } - - public static boolean grabberPiston() { - return oi.xbox.getRightBumperValue(); - } - - // TODO: when we get the control panel, replace these with actual btns - public static boolean hatchPreset1() { - return oi.xbox.getAValue(); - } - - public static boolean hatchPreset2() { - return oi.xbox.getBValue(); - } - - public static boolean hatchPreset3() { - return oi.xbox.getYValue(); + public static boolean toggleBrakes(){ + return oi.xbox.getBumperPressed(Hand.kRight); } - public static boolean cargoPreset1() { - return false; - } - public static boolean cargoPreset2() { - return false; - } - - public static boolean cargoPreset3() { - return false; - } - - // public static boolean ejectHatch() { - // return oi.xbox.getYValue(); - // } - - // public static boolean retractEjectors() { - // return oi.xbox.getBValue(); - // } - - // public static boolean extendGrabber() { - // return oi.xbox.getRightBumperValue(); - // } - - // public static boolean retractGrabber() { - // return oi.xbox.getLeftBumperValue(); - // } } \ No newline at end of file diff --git a/src/main/java/frc/robot/commands/ArmCommand2.java b/src/main/java/frc/robot/commands/ArmCommand2.java index 1c87666..6d6d24c 100644 --- a/src/main/java/frc/robot/commands/ArmCommand2.java +++ b/src/main/java/frc/robot/commands/ArmCommand2.java @@ -8,10 +8,11 @@ import edu.wpi.first.wpilibj.PIDSourceType; import edu.wpi.first.wpilibj.command.Command; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; +import frc.robot.ConstantsMap; +import frc.robot.ControlPanelMap; import frc.robot.Robot; import frc.robot.XboxMap; import frc.robot.pids.EncoderMotorPID; -import frc.robot.TalonSet; import frc.robot.ConstantsMap; import frc.robot.subsystems.ArmSubsystem2; @@ -49,16 +50,16 @@ protected void execute() { - if(XboxMap.zeroWrist()){ + /* if(ControlPanelMap.zeroWrist()){ armSubsystem.zeroWrist(); wristAngle = armSubsystem.getWristEncoderAngle(); } - else if(XboxMap.zeroShoulder()){ + else if(ControlPanelMap.zeroShoulder()){ armSubsystem.zeroShoulder(); shoulderAngle = armSubsystem.getShoulderEncoderAngle(); - } - else if(XboxMap.toggleArmManualControl()){ + } */ + /* if(ControlPanelMap.toggleArmManualControl()){ if(manualMode){ shoulderAngle = armSubsystem.getShoulderEncoderAngle(); wristAngle = armSubsystem.getWristEncoderAngle(); @@ -67,11 +68,11 @@ else if(XboxMap.toggleArmManualControl()){ manualMode = !manualMode; } - if(XboxMap.enableWristLevelling()){ + if(ControlPanelMap.enableWristLevelling()){ enableLevelWrist = !enableLevelWrist; - } - double amountToMoveShoulderJoint = XboxMap.controlShoulderJoint(); - double amountToMoveWristJoint = XboxMap.controlWristJoint(); + } */ + double amountToMoveShoulderJoint = ControlPanelMap.controlShoulderJoint(); + double amountToMoveWristJoint = ControlPanelMap.controlWristJoint(); if (Math.abs(amountToMoveShoulderJoint) < 0.1) { amountToMoveShoulderJoint = 0; diff --git a/src/main/java/frc/robot/commands/ArmPresetCommand.java b/src/main/java/frc/robot/commands/ArmPresetCommand.java index 3a59abc..16231f3 100644 --- a/src/main/java/frc/robot/commands/ArmPresetCommand.java +++ b/src/main/java/frc/robot/commands/ArmPresetCommand.java @@ -8,10 +8,11 @@ public class ArmPresetCommand extends Command { ArmSubsystem2 armSubsystem = Robot.armSubsystem2; - - public ArmPresetCommand() { + double preset; + public ArmPresetCommand(double angle) { // Use requires() here to declare subsystem dependencies requires(armSubsystem); + preset = angle; } // Called just before this Command runs the first time @@ -20,43 +21,28 @@ protected void initialize() { System.out.println("Start Preset"); armSubsystem.setShoulderSetPoint(armSubsystem.getShoulderEncoderAngle()); armSubsystem.setWristSetPoint(armSubsystem.getWristEncoderAngle()); + armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); + } // Called repeatedly when this Command is scheduled to run @Override - protected void execute() { - if(ConstantsMap.isHatchGrabber){ - if (XboxMap.cargoPreset1()) { - armSubsystem.setShoulderSetPoint(ConstantsMap.CARGO_PRESET_1_ANGLE); - } else if (XboxMap.cargoPreset2()) { - armSubsystem.setShoulderSetPoint(ConstantsMap.CARGO_PRESET_2_ANGLE); - } else if (XboxMap.cargoPreset3()) { - armSubsystem.setShoulderSetPoint(ConstantsMap.CARGO_PRESET_3_ANGLE); - } else if (XboxMap.hatchPreset1()) { - armSubsystem.setShoulderSetPoint(ConstantsMap.HATCH_PRESET_1_ANGLE); - } else if (XboxMap.hatchPreset2()) { - armSubsystem.setShoulderSetPoint(ConstantsMap.HATCH_PRESET_2_ANGLE); - } else if (XboxMap.hatchPreset3()) { - armSubsystem.setShoulderSetPoint(ConstantsMap.HATCH_PRESET_3_ANGLE); - } - armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); - } + protected void execute() { } // Make this return true when this Command no longer needs to run execute() @Override protected boolean isFinished() { - // TODO: will this work or should we use tolerance equality? - //return armSubsystem.getShoulderEncoderAngle() == gotoAngle; - return false; + return Math.abs(armSubsystem.getShoulderEncoderAngle() - preset)<1; } // Called once after isFinished returns true @Override protected void end() { - } - + System.out.println("Preset Finished at: " + armSubsystem.getShoulderEncoderAngle() + " degress"); + + } // Called when another command which requires one or more of the same // subsystems is scheduled to run @Override diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index 197454b..9f35af7 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -95,9 +95,8 @@ protected void execute() { //Auto Brake Mode //attack3Map.startAutoBrakerSystem(); - if(XboxMap.startAutoBrakerSystem() && (System.currentTimeMillis() - lastPressed) > 200){ + if(XboxMap.toggleBrakes()){ brakeState = !brakeState; - lastPressed = System.currentTimeMillis(); } if(brakeState){ driveSubsystem.enableBrake(); diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index a83123c..9fe678d 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -23,6 +23,7 @@ import frc.robot.ConstantsMap; import frc.robot.RobotMap; import frc.robot.TalonSet; +import frc.robot.commands.ArmCommand2; /** * Add your docs here. @@ -147,14 +148,32 @@ public void setShoulderSetPoint(double angle){ public void checkWristLimits(){ if(getWristLowerLimit()){ wrist.setSelectedSensorPosition((int)(ConstantsMap.WRIST_MAX_ANGLE/ConstantsMap.WRIST_ENCODER_ANGLE_PER_TICK)); + if(wrist.getControlMode() == ControlMode.PercentOutput){ + if(wrist.getMotorOutputPercent()>0){ + wrist.set(ControlMode.PercentOutput, 0); + } + } + else if (wrist.getControlMode() == ControlMode.MotionMagic){ + if(wrist.getActiveTrajectoryVelocity() > 0){ + setWristSetPoint(0); + } + } } } public void checkShoulderLimits(){ if(!lowerLimit.get()){ shoulder.setSelectedSensorPosition((int)(ConstantsMap.SHOULDER_MIN_ANGLE/ConstantsMap.SHOULDER_ENCODER_ANGLE_PER_TICK)); - if(shoulder.getActiveTrajectoryVelocity() < 0){ - setShoulderSetPoint(0); + if(shoulder.getControlMode() == ControlMode.PercentOutput){ + if(shoulder.getMotorOutputPercent()<0){ + shoulder.set(ControlMode.PercentOutput, 0); + } } + else if (shoulder.getControlMode() == ControlMode.MotionMagic){ + if(shoulder.getActiveTrajectoryVelocity() < 0){ + setShoulderSetPoint(0); + } + } + } } @@ -234,6 +253,6 @@ public double getWristSpeed(){ @Override public void initDefaultCommand() { // Set the default command for a subsystem here. - // setDefaultCommand(new MySpecialCommand()); + setDefaultCommand(new ArmCommand2()); } } diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index b385e0e..d49ca74 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -10,6 +10,7 @@ import edu.wpi.first.wpilibj.command.Subsystem; import frc.robot.RobotMap; +import frc.robot.commands.DriveCommand; import frc.robot.ConstantsMap; import com.ctre.phoenix.motorcontrol.ControlMode; @@ -71,7 +72,7 @@ public DriveSubsystem() { public void initDefaultCommand() { // Set the default command for a subsystem here. - //setDefaultCommand(new DriveCommand()); + setDefaultCommand(new DriveCommand()); } diff --git a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java index ac717b1..49ba1fc 100644 --- a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java +++ b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java @@ -14,6 +14,7 @@ import edu.wpi.first.wpilibj.DoubleSolenoid.Value; import edu.wpi.first.wpilibj.command.Subsystem; import frc.robot.RobotMap; +import frc.robot.commands.HatchGrabberCommand; /** * Add your docs here. @@ -52,6 +53,6 @@ public void retractEjectors() { @Override public void initDefaultCommand() { // Set the default command for a subsystem here. - // setDefaultCommand(new MySpecialCommand()); + setDefaultCommand(new HatchGrabberCommand()); } } From a46358d4c06ba9e86705de0c67ab3fd1d647eb4d Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Sat, 16 Feb 2019 12:08:12 -0600 Subject: [PATCH 088/131] Saturday by 12 pm --- src/main/java/frc/robot/ConstantsMap.java | 3 ++ src/main/java/frc/robot/ControlPanelMap.java | 40 +++++++++++---- src/main/java/frc/robot/OI.java | 1 + src/main/java/frc/robot/Robot.java | 36 +++++++++---- src/main/java/frc/robot/RobotMap.java | 16 ++---- .../java/frc/robot/commands/ArmCommand2.java | 1 + .../frc/robot/commands/ArmPresetCommand.java | 1 - .../robot/commands/HatchGrabberCommand.java | 44 ++++++++++------ .../java/frc/robot/commands/WristZero.java | 2 +- .../frc/robot/subsystems/ArmSubsystem2.java | 4 +- .../subsystems/HatchGrabberSubsystem.java | 50 ++++++++++++++----- 11 files changed, 133 insertions(+), 65 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 2125f42..48ca54b 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -75,6 +75,9 @@ public class ConstantsMap { public static final Gains shoulderGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); + //For Grabber + public static final double BALL_INTAKE_SPEED = .5; + public static final double BALL_OUTTAKE_SPEED = 1; diff --git a/src/main/java/frc/robot/ControlPanelMap.java b/src/main/java/frc/robot/ControlPanelMap.java index dad7150..ae9be30 100644 --- a/src/main/java/frc/robot/ControlPanelMap.java +++ b/src/main/java/frc/robot/ControlPanelMap.java @@ -3,6 +3,8 @@ import edu.wpi.first.wpilibj.GenericHID.Hand; import edu.wpi.first.wpilibj.buttons.JoystickButton; import frc.robot.commands.ArmPresetCommand; +import frc.robot.commands.ArmZero; +import frc.robot.commands.WristZero; public class ControlPanelMap { static OI oi = Robot.oi; @@ -17,7 +19,8 @@ public class ControlPanelMap { cargoBallPreset, ballCollectPreset, hatchCollectPreset, - goHome; + goHome, + toggleDebug; public ControlPanelMap(){ @@ -35,6 +38,11 @@ public ControlPanelMap(){ hatchCollectPreset = new JoystickButton(oi.controlPanel1,10); goHome = new JoystickButton(oi.controlPanel1, 11); + toggleDebug = new JoystickButton(oi.controlPanel1, 12); + } + + public void normalMode(){ + rocketHatchPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_1)); rocketHatchPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_2)); @@ -50,33 +58,45 @@ public ControlPanelMap(){ hatchCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.HATCH_COLLECT_PRESET)); goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET)); - } + public void debugMode(){ + rocketHatchPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_1)); + rocketHatchPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_2)); + rocketHatchPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_3)); + rocketBallPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_1)); + rocketBallPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_2)); + rocketBallPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_3)); - + cargoHatchPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_HATCH_PRESET)); + cargoBallPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_BALL_PRESET)); + + ballCollectPreset.whenPressed(new ArmZero()); + hatchCollectPreset.whenPressed(new WristZero()); + + goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET)); + } public static double controlWristJoint() { - return oi.controlPanel1.getY(Hand.kRight); + return oi.controlPanel2.getX(); } public static double controlShoulderJoint() { - return oi.controlPanel2.getY(Hand.kRight); + return -oi.controlPanel1.getX(); } public static boolean inTake() { - return oi.controlPanel2.getRawButtonPressed(1); + return oi.controlPanel2.getRawButton(2); } public static boolean outTake() { - return oi.controlPanel2.getRawButtonPressed(2); + return oi.controlPanel2.getRawButton(1); } public static boolean setBallMode() { - return oi.controlPanel2.getRawButtonPressed(2); + return oi.controlPanel2.getRawButtonPressed(3); } public static boolean setHatcheMode() { - return oi.controlPanel2.getRawButtonPressed(2); + return oi.controlPanel2.getRawButtonPressed(4); } public static boolean toggleDebug() { return oi.controlPanel1.getRawButtonPressed(2); } - /* public static boolean toggleArmControl() { return oi.xbox.getXButtonPressed(); diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index afdd57b..e85a17c 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -25,6 +25,7 @@ public OI(){ xbox = new XboxController(0); controlPanel1 = new Joystick(1); controlPanel2 = new Joystick(2); + //attack3_L = new Attack3(3); //attack3_R = new Attack3(4); diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 14ba373..7d568a4 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -20,6 +20,7 @@ import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import frc.robot.commands.ArmCommand2; import frc.robot.commands.ArmPresetCommand; +import frc.robot.commands.ArmZero; import frc.robot.commands.DriveCommand; import frc.robot.commands.HatchGrabberCommand; import frc.robot.commands.WristZero; @@ -53,7 +54,7 @@ public class Robot extends TimedRobot { SendableChooser chooser = new SendableChooser<>(); CameraServer server; Compressor compressor; - boolean armEnable; + public boolean debugMode; Command preset; /** * This function is run when the robot is first started up and should be @@ -70,7 +71,8 @@ public void robotInit() { armCommand = new ArmCommand2(); server = CameraServer.getInstance(); - armEnable = false; + debugMode = false; + //server.startAutomaticCapture("Ground",0); } @@ -88,13 +90,16 @@ public void robotPeriodic() { //Print out encoder values for testing on Arm leveling SmartDashboard.putNumber("Shoulder Angle", armSubsystem2.getShoulderEncoderAngle()); SmartDashboard.putNumber("Wrist Angle", armSubsystem2.getWristEncoderAngle()); - SmartDashboard.putBoolean("Preset Enable", preset.isRunning()); SmartDashboard.putBoolean("Wrist Limit", armSubsystem2.getWristLowerLimit()); SmartDashboard.putBoolean("Arm Limit", armSubsystem2.getShoulderLowerLimit()); armSubsystem2.checkShoulderLimits(); armSubsystem2.checkWristLimits(); + if(ControlPanelMap.toggleDebug()){ + debugMode = !debugMode; + } + } /** @@ -104,6 +109,7 @@ public void robotPeriodic() { */ @Override public void disabledInit() { + armSubsystem2.setShoulderJointSpeed(0); } @Override @@ -135,9 +141,10 @@ public void autonomousInit() { */ // schedule the autonomous command (example) - if (autonomousCommand != null) { - autonomousCommand.start(); - } + armSubsystem2.setShoulderSetPoint(armSubsystem2.getShoulderEncoderAngle()); + + new WristZero().start();; + } /** @@ -154,12 +161,11 @@ public void teleopInit() { // teleop starts running. If you want the autonomous to // continue until interrupted by another command, remove // this line or comment it out. - if (autonomousCommand != null) { - autonomousCommand.cancel(); - } - + + hgCommand.start(); - armCommand.start(); + armSubsystem2.setShoulderSetPoint(armSubsystem2.getShoulderEncoderAngle()); + //armCommand.start(); //driveCommand.start(); @@ -171,6 +177,14 @@ public void teleopInit() { */ @Override public void teleopPeriodic() { + if(debugMode){ + if(ControlPanelMap.inTake()){ + new ArmZero(); + } + if(ControlPanelMap.outTake()){ + new WristZero(); + } + } /* if(XboxMap.runFollowLineCommand()){ if(followLineCommand.isRunning()){ followLineCommand.cancel(); diff --git a/src/main/java/frc/robot/RobotMap.java b/src/main/java/frc/robot/RobotMap.java index 7f2ed14..96921f6 100644 --- a/src/main/java/frc/robot/RobotMap.java +++ b/src/main/java/frc/robot/RobotMap.java @@ -30,26 +30,20 @@ public class RobotMap { public static final int SHOULDER_JOINT_LEFT_PORT = 5; public static final int WRIST_JOINT_PORT = 7; - public static final int SHOULDER_ENCODER_PORT_A = 11; - public static final int SHOULDER_ENCODER_PORT_B = 12; + public static final int GRAB_SPIN_1 = 8; + public static final int GRAB_SPIN_2 = 9; - public static final int SHOULDER_ENCODER_PORT_C = 420; - public static final int SHOULDER_ENCODER_PORT_D = 420; - public static final int WRIST_ENCODER_PORT_A = 13; - public static final int WRIST_ENCODER_PORT_B = 14; - //These might have to change? public static final int LOWER_ARM_LIMIT_PORT = 0; - //TODO Set these to real ports public static final int LOWER_WRIST_LIMIT_PORT = 2; public static final int LOWER_WRIST_LIMIT_PORT2 = 3; - public static final int GRAB_PISTON_F = 4; - public static final int GRAB_PISTON_R = 5; - public static final int RELEASE_PISTON_1_F = 0; + public static final int HATCH_PISTON_F = 4; + public static final int HATCH_PISTON_R = 5; + public static final int RELEASE_PISTON_1_F = 7; public static final int RELEASE_PISTON_1_R = 6; } diff --git a/src/main/java/frc/robot/commands/ArmCommand2.java b/src/main/java/frc/robot/commands/ArmCommand2.java index 6d6d24c..f9d5ade 100644 --- a/src/main/java/frc/robot/commands/ArmCommand2.java +++ b/src/main/java/frc/robot/commands/ArmCommand2.java @@ -39,6 +39,7 @@ protected void initialize() { wristAngle = armSubsystem.getWristEncoderAngle(); manualMode = false; enableLevelWrist = false; + } diff --git a/src/main/java/frc/robot/commands/ArmPresetCommand.java b/src/main/java/frc/robot/commands/ArmPresetCommand.java index 16231f3..67c41b1 100644 --- a/src/main/java/frc/robot/commands/ArmPresetCommand.java +++ b/src/main/java/frc/robot/commands/ArmPresetCommand.java @@ -22,7 +22,6 @@ protected void initialize() { armSubsystem.setShoulderSetPoint(armSubsystem.getShoulderEncoderAngle()); armSubsystem.setWristSetPoint(armSubsystem.getWristEncoderAngle()); armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); - } // Called repeatedly when this Command is scheduled to run diff --git a/src/main/java/frc/robot/commands/HatchGrabberCommand.java b/src/main/java/frc/robot/commands/HatchGrabberCommand.java index ed559df..9076ea3 100644 --- a/src/main/java/frc/robot/commands/HatchGrabberCommand.java +++ b/src/main/java/frc/robot/commands/HatchGrabberCommand.java @@ -7,7 +7,11 @@ package frc.robot.commands; + import edu.wpi.first.wpilibj.command.Command; +import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; +import frc.robot.ConstantsMap; +import frc.robot.ControlPanelMap; import frc.robot.Robot; import frc.robot.XboxMap; import frc.robot.subsystems.HatchGrabberSubsystem; @@ -16,6 +20,7 @@ public class HatchGrabberCommand extends Command { HatchGrabberSubsystem hatchGrabberSubsystem = Robot.hatchGrabberSubsystem; private boolean grabberOut = false; private boolean hatchReleased = false; + private boolean hatchMode; private double lastPressedG = 0; private double lastPressedH = 0; @@ -26,6 +31,7 @@ public HatchGrabberCommand() { // Called just before this Command runs the first time @Override protected void initialize() { + hatchMode = false; } // Called repeatedly when this Command is scheduled to run @@ -40,28 +46,34 @@ protected void execute() { // } else if (XboxMap.retractGrabber()) { // hatchGrabberSubsystem.retractGrabber(); // } - - if(XboxMap.grabberPiston() && (System.currentTimeMillis() - lastPressedG) > 500) { - lastPressedG = System.currentTimeMillis(); - if(grabberOut) { - hatchGrabberSubsystem.extendGrabber(); - grabberOut = !grabberOut; + if(ControlPanelMap.setBallMode()){ + hatchMode = false; + } + if(ControlPanelMap.setHatcheMode()){ + hatchMode = true; + } + if(hatchMode){ + hatchGrabberSubsystem.extendHatch(); + if(ControlPanelMap.outTake()) { + hatchGrabberSubsystem.ejectHatch(); } - else { - hatchGrabberSubsystem.retractGrabber(); - grabberOut = !grabberOut; + else{ + hatchGrabberSubsystem.unEjectHatch(); } } - - if(XboxMap.hatchPiston() && (System.currentTimeMillis() - lastPressedH) > 500) { - lastPressedH = System.currentTimeMillis(); - if(hatchReleased) { - hatchGrabberSubsystem.releaseHatch(); + else{ + hatchGrabberSubsystem.retractHatch(); + if(ControlPanelMap.outTake()) { + hatchGrabberSubsystem.outakeWheels(); } - else { - hatchGrabberSubsystem.retractEjectors(); + else if(ControlPanelMap.inTake()){ + hatchGrabberSubsystem.intakeWheels(); } } + SmartDashboard.putBoolean("Hatch Mode",hatchMode); + + + } // Make this return true when this Command no longer needs to run execute() diff --git a/src/main/java/frc/robot/commands/WristZero.java b/src/main/java/frc/robot/commands/WristZero.java index f3f2258..77678c7 100644 --- a/src/main/java/frc/robot/commands/WristZero.java +++ b/src/main/java/frc/robot/commands/WristZero.java @@ -29,7 +29,7 @@ public WristZero() { @Override protected void initialize() { System.out.println("Wrist Zero Started"); - armSubsystem.setWristJointSpeed(.62); + armSubsystem.setWristJointSpeed(.4); } diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index 9fe678d..e89089f 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -155,7 +155,7 @@ public void checkWristLimits(){ } else if (wrist.getControlMode() == ControlMode.MotionMagic){ if(wrist.getActiveTrajectoryVelocity() > 0){ - setWristSetPoint(0); + setWristSetPoint(ConstantsMap.WRIST_MAX_ANGLE); } } } @@ -170,7 +170,7 @@ public void checkShoulderLimits(){ } else if (shoulder.getControlMode() == ControlMode.MotionMagic){ if(shoulder.getActiveTrajectoryVelocity() < 0){ - setShoulderSetPoint(0); + setShoulderSetPoint(ConstantsMap.SHOULDER_MIN_ANGLE); } } diff --git a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java index 49ba1fc..ac7bf15 100644 --- a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java +++ b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java @@ -7,12 +7,14 @@ package frc.robot.subsystems; +import com.ctre.phoenix.motorcontrol.ControlMode; import com.ctre.phoenix.motorcontrol.can.TalonSRX; import edu.wpi.first.wpilibj.DoubleSolenoid; import edu.wpi.first.wpilibj.Solenoid; import edu.wpi.first.wpilibj.DoubleSolenoid.Value; import edu.wpi.first.wpilibj.command.Subsystem; +import frc.robot.ConstantsMap; import frc.robot.RobotMap; import frc.robot.commands.HatchGrabberCommand; @@ -24,30 +26,52 @@ public class HatchGrabberSubsystem extends Subsystem { // here. Call these from Commands. //DoubleSolenoid grabberPiston, releasePiston1, releasePiston2; - Solenoid grabberPiston, releasePiston1, releasePiston2; + DoubleSolenoid grabberPiston, releasePiston1, releasePiston2; + TalonSRX motor1,motor2; public HatchGrabberSubsystem() { - /* grabberPiston = new DoubleSolenoid(RobotMap.GRAB_PISTON_F, RobotMap.GRAB_PISTON_R); - releasePiston1 = new DoubleSolenoid(RobotMap.RELEASE_PISTON_1_F, RobotMap.RELEASE_PISTON_1_R); */ - grabberPiston = new Solenoid(4); + grabberPiston = new DoubleSolenoid(RobotMap.HATCH_PISTON_F, RobotMap.HATCH_PISTON_R); + releasePiston1 = new DoubleSolenoid(RobotMap.RELEASE_PISTON_1_F, RobotMap.RELEASE_PISTON_1_R); + //grabberPiston = new Solenoid(0,4); + //releasePiston1 = new Solenoid(0,6); + //releasePiston1 = new DoubleSolenoid(4, 5); - releasePiston1 = new Solenoid(5); + //releasePiston1 = new Solenoid(5); + + motor1 = new TalonSRX(RobotMap.GRAB_SPIN_1); + motor2 = new TalonSRX(RobotMap.GRAB_SPIN_2); + motor1.setInverted(true); + + } + + public void extendHatch() { + grabberPiston.set(Value.kForward); + } + + public void retractHatch() { + grabberPiston.set(Value.kReverse); } - public void extendGrabber() { - grabberPiston.set(false); + public void ejectHatch() { + releasePiston1.set(Value.kReverse); } + public void unEjectHatch() { + releasePiston1.set(Value.kForward); - public void retractGrabber() { - grabberPiston.set(true); } + public void intakeWheels(){ + motor1.set(ControlMode.PercentOutput, ConstantsMap.BALL_INTAKE_SPEED); + motor2.set(ControlMode.PercentOutput, ConstantsMap.BALL_INTAKE_SPEED); - public void releaseHatch() { - releasePiston1.set(false); } + public void outakeWheels(){ + motor1.set(ControlMode.PercentOutput, -ConstantsMap.BALL_OUTTAKE_SPEED); + motor2.set(ControlMode.PercentOutput, -ConstantsMap.BALL_OUTTAKE_SPEED); - public void retractEjectors() { - releasePiston1.set(true); + } + public void stopWheels(){ + motor1.set(ControlMode.PercentOutput, 0); + motor2.set(ControlMode.PercentOutput, 0); } @Override From e617123b11fb9cad2ac40164211299ab9ab9bbb1 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Sat, 16 Feb 2019 14:59:07 -0600 Subject: [PATCH 089/131] After Practice Comp --- src/main/java/frc/robot/ConstantsMap.java | 4 +- src/main/java/frc/robot/ControlPanelMap.java | 65 ++----------------- src/main/java/frc/robot/OI.java | 52 ++++++++++++++- src/main/java/frc/robot/Robot.java | 5 ++ src/main/java/frc/robot/XboxMap.java | 12 +++- .../frc/robot/commands/ArmPresetCommand.java | 9 +-- .../java/frc/robot/commands/DriveCommand.java | 23 +++++-- .../robot/commands/HatchGrabberCommand.java | 22 ++++--- .../frc/robot/subsystems/ArmSubsystem2.java | 9 ++- .../frc/robot/subsystems/DriveSubsystem.java | 10 ++- .../subsystems/HatchGrabberSubsystem.java | 4 +- 11 files changed, 123 insertions(+), 92 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 48ca54b..d6c7b0b 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -15,7 +15,7 @@ public class ConstantsMap { public static final double ROBOT_WHEEL_RADIUS_INCHES = 2; //inches public static final double DRIVE_ENCODER_TICKS_PER_ROTATION = 4096; //ticks public static final double DRIVE_ENCODER_DIST_PER_TICK = ((ROBOT_WHEEL_RADIUS_INCHES * 2 * Math.PI)/(DRIVE_ENCODER_TICKS_PER_ROTATION)); //inches - public static final double TURTLE_SPEED = .5; //to be determined + public static final double TURTLE_SPEED = 1; //to be determined public static final double JOYSTICK_SENSITIVITY = .1; //to be determined @@ -70,7 +70,7 @@ public class ConstantsMap { public static final int SHOULDER_ACCEL = 10000; public static final int SHOULDER_FOLLOW_DISTANCE = 20; public static final double SHOULDER_CHANGE_SETPOINT_SPEED = .5; - public static final int SHOULDER_WRIST_FOLD_ANGLE = -45; + public static final int SHOULDER_WRIST_FOLD_ANGLE = -50; public static final Gains shoulderGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); diff --git a/src/main/java/frc/robot/ControlPanelMap.java b/src/main/java/frc/robot/ControlPanelMap.java index ae9be30..b02879e 100644 --- a/src/main/java/frc/robot/ControlPanelMap.java +++ b/src/main/java/frc/robot/ControlPanelMap.java @@ -8,73 +8,15 @@ public class ControlPanelMap { static OI oi = Robot.oi; - JoystickButton - rocketHatchPreset1, - rocketHatchPreset2, - rocketHatchPreset3, - rocketBallPreset1, - rocketBallPreset2, - rocketBallPreset3, - cargoHatchPreset, - cargoBallPreset, - ballCollectPreset, - hatchCollectPreset, - goHome, - toggleDebug; + public ControlPanelMap(){ - rocketBallPreset1 = new JoystickButton(oi.controlPanel1, 1); - rocketBallPreset2 = new JoystickButton(oi.controlPanel1, 3); - rocketBallPreset3 = new JoystickButton(oi.controlPanel1, 5); - rocketHatchPreset1 = new JoystickButton(oi.controlPanel1, 2); - rocketHatchPreset2 = new JoystickButton(oi.controlPanel1, 4); - rocketHatchPreset3 = new JoystickButton(oi.controlPanel1, 6); - - cargoBallPreset = new JoystickButton(oi.controlPanel1, 7); - cargoHatchPreset = new JoystickButton(oi.controlPanel1, 8); - - ballCollectPreset = new JoystickButton(oi.controlPanel1, 9); - hatchCollectPreset = new JoystickButton(oi.controlPanel1,10); - - goHome = new JoystickButton(oi.controlPanel1, 11); - toggleDebug = new JoystickButton(oi.controlPanel1, 12); - } - - public void normalMode(){ - - rocketHatchPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_1)); - rocketHatchPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_2)); - rocketHatchPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_3)); - rocketBallPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_1)); - rocketBallPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_2)); - rocketBallPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_3)); - - cargoHatchPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_HATCH_PRESET)); - cargoBallPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_BALL_PRESET)); - - ballCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.BALL_COLLECT_PRESET)); - hatchCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.HATCH_COLLECT_PRESET)); - - goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET)); } - public void debugMode(){ - rocketHatchPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_1)); - rocketHatchPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_2)); - rocketHatchPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_3)); - rocketBallPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_1)); - rocketBallPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_2)); - rocketBallPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_3)); - - cargoHatchPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_HATCH_PRESET)); - cargoBallPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_BALL_PRESET)); - - ballCollectPreset.whenPressed(new ArmZero()); - hatchCollectPreset.whenPressed(new WristZero()); - goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET)); - } + + public static double controlWristJoint() { return oi.controlPanel2.getX(); } @@ -97,6 +39,7 @@ public static boolean setHatcheMode() { public static boolean toggleDebug() { return oi.controlPanel1.getRawButtonPressed(2); } + /* public static boolean toggleArmControl() { return oi.xbox.getXButtonPressed(); diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index e85a17c..12e23d5 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -9,6 +9,8 @@ import edu.wpi.first.wpilibj.Joystick; import edu.wpi.first.wpilibj.XboxController; +import edu.wpi.first.wpilibj.buttons.JoystickButton; +import frc.robot.commands.ArmPresetCommand; /** * This class is the glue that binds the controls on the physical operator @@ -20,7 +22,20 @@ public class OI { //Controllers public static XboxController xbox,ps4; public static Joystick controlPanel1,controlPanel2; - + public JoystickButton + rocketHatchPreset1, + rocketHatchPreset2, + rocketHatchPreset3, + rocketBallPreset1, + rocketBallPreset2, + rocketBallPreset3, + cargoHatchPreset, + cargoBallPreset, + ballCollectPreset, + hatchCollectPreset, + goHome, + toggleDebug; + public OI(){ xbox = new XboxController(0); controlPanel1 = new Joystick(1); @@ -28,6 +43,41 @@ public OI(){ //attack3_L = new Attack3(3); //attack3_R = new Attack3(4); + rocketBallPreset1 = new JoystickButton(controlPanel1, 1); + rocketBallPreset2 = new JoystickButton(controlPanel1, 3); + rocketBallPreset3 = new JoystickButton(controlPanel1, 5); + rocketHatchPreset1 = new JoystickButton(controlPanel1, 2); + rocketHatchPreset2 = new JoystickButton(controlPanel1, 4); + rocketHatchPreset3 = new JoystickButton(controlPanel1, 6); + + cargoBallPreset = new JoystickButton(controlPanel1, 7); + cargoHatchPreset = new JoystickButton(controlPanel1, 8); + + ballCollectPreset = new JoystickButton(controlPanel1, 9); + hatchCollectPreset = new JoystickButton(controlPanel1,10); + + goHome = new JoystickButton(controlPanel1, 11); + toggleDebug = new JoystickButton(controlPanel1, 12); + + normalMode(); + + } + public void normalMode(){ + + + rocketHatchPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_3)); + rocketHatchPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_2)); + rocketHatchPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_1)); + rocketBallPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_3)); + rocketBallPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_2)); + rocketBallPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_1)); + + cargoHatchPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_HATCH_PRESET)); + cargoBallPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_BALL_PRESET)); + + ballCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.BALL_COLLECT_PRESET)); + hatchCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.HATCH_COLLECT_PRESET)); + goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET)); } } \ No newline at end of file diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 7d568a4..1cec3c4 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -89,6 +89,9 @@ public void robotInit() { public void robotPeriodic() { //Print out encoder values for testing on Arm leveling SmartDashboard.putNumber("Shoulder Angle", armSubsystem2.getShoulderEncoderAngle()); + SmartDashboard.putNumber("Shoulder Set", armSubsystem2.getShoulderSetPoint()); + SmartDashboard.putNumber("Wrist Set", armSubsystem2.getWristSetPoint()); + SmartDashboard.putNumber("Wrist Angle", armSubsystem2.getWristEncoderAngle()); SmartDashboard.putBoolean("Wrist Limit", armSubsystem2.getWristLowerLimit()); SmartDashboard.putBoolean("Arm Limit", armSubsystem2.getShoulderLowerLimit()); @@ -109,6 +112,8 @@ public void robotPeriodic() { */ @Override public void disabledInit() { + XboxMap.stopRumble(); + armSubsystem2.setShoulderJointSpeed(0); } diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index 9205fe8..820a6c2 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -8,13 +8,14 @@ package frc.robot; import edu.wpi.first.wpilibj.GenericHID.Hand; +import edu.wpi.first.wpilibj.GenericHID.RumbleType; public class XboxMap { static OI oi = Robot.oi; //Driving Controls public static double right() { - return oi.xbox.getY(Hand.kRight); + return -oi.xbox.getY(Hand.kRight); } public static double left() { @@ -23,6 +24,13 @@ public static double left() { public static boolean toggleBrakes(){ return oi.xbox.getBumperPressed(Hand.kRight); } - + public static void startRumble(){ + oi.xbox.setRumble(RumbleType.kLeftRumble, 1); + oi.xbox.setRumble(RumbleType.kRightRumble, 1); + } + public static void stopRumble(){ + oi.xbox.setRumble(RumbleType.kLeftRumble, 0); + oi.xbox.setRumble(RumbleType.kRightRumble, 0); + } } \ No newline at end of file diff --git a/src/main/java/frc/robot/commands/ArmPresetCommand.java b/src/main/java/frc/robot/commands/ArmPresetCommand.java index 67c41b1..cb1a5d5 100644 --- a/src/main/java/frc/robot/commands/ArmPresetCommand.java +++ b/src/main/java/frc/robot/commands/ArmPresetCommand.java @@ -18,16 +18,17 @@ public ArmPresetCommand(double angle) { // Called just before this Command runs the first time @Override protected void initialize() { - System.out.println("Start Preset"); - armSubsystem.setShoulderSetPoint(armSubsystem.getShoulderEncoderAngle()); - armSubsystem.setWristSetPoint(armSubsystem.getWristEncoderAngle()); + System.out.println("Start Preset: " + preset); + armSubsystem.setShoulderSetPoint(preset); + armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); } // Called repeatedly when this Command is scheduled to run @Override protected void execute() { - + armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); + } // Make this return true when this Command no longer needs to run execute() diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index 9f35af7..e9cfa31 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -12,6 +12,7 @@ import frc.robot.XboxMap; import frc.robot.subsystems.DriveSubsystem; import frc.robot.ConstantsMap; +import edu.wpi.first.wpilibj.PowerDistributionPanel; import edu.wpi.first.wpilibj.command.Command; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; @@ -25,8 +26,8 @@ public class DriveCommand extends Command { OI oi = Robot.oi; boolean turtlemode = false; boolean brakeState = false; + boolean rumble; long lastPressed = 0; - //Things for follow line command private boolean runFollowLineCommand; @@ -44,6 +45,7 @@ protected void initialize() { driveSubsystem.resetEncoders(); driveSubsystem.resetGyro(); //System.out.println(lineSubsystem.getData()); + rumble = false; } // Called repeatedly when this Command is scheduled to run @@ -74,12 +76,6 @@ protected void execute() { if (Math.abs(speedLeft) < 0.1) { speedLeft = 0; } - // if(xboxMap.shiftHigh()) { - // driveSubsystem.shiftHigh(); - // } - // if(xboxMap.shiftLow()) { - // driveSubsystem.shiftLow(); - // } double speedRight = XboxMap.right(); //speedRight *= -1; @@ -105,6 +101,19 @@ else if(!brakeState){ driveSubsystem.disableBrake(); } + + if(driveSubsystem.getVoltage()<6.8){ + lastPressed = System.currentTimeMillis(); + XboxMap.startRumble(); + rumble = true; + } + else if(rumble && ((System.currentTimeMillis()-lastPressed)>500)){ + XboxMap.stopRumble(); + rumble = false; + } + + + //Check for follow line command call //The runFollowLineCommand() is called when the A button is calledd /* if (XboxMap.runFollowLineCommand()) { diff --git a/src/main/java/frc/robot/commands/HatchGrabberCommand.java b/src/main/java/frc/robot/commands/HatchGrabberCommand.java index 9076ea3..42e9b6b 100644 --- a/src/main/java/frc/robot/commands/HatchGrabberCommand.java +++ b/src/main/java/frc/robot/commands/HatchGrabberCommand.java @@ -37,25 +37,23 @@ protected void initialize() { // Called repeatedly when this Command is scheduled to run @Override protected void execute() { - // if (XboxMap.ejectHatch()) { - // hatchGrabberSubsystem.releaseHatch(); - // } else if (XboxMap.retractEjectors()) { - // hatchGrabberSubsystem.retractEjectors(); - // } else if (XboxMap.extendGrabber()) { - // hatchGrabberSubsystem.extendGrabber(); - // } else if (XboxMap.retractGrabber()) { - // hatchGrabberSubsystem.retractGrabber(); - // } + if(ControlPanelMap.setBallMode()){ hatchMode = false; } if(ControlPanelMap.setHatcheMode()){ hatchMode = true; + hatchGrabberSubsystem.stopWheels(); + } if(hatchMode){ hatchGrabberSubsystem.extendHatch(); if(ControlPanelMap.outTake()) { hatchGrabberSubsystem.ejectHatch(); + hatchMode = false; + hatchGrabberSubsystem.retractHatch(); + + } else{ hatchGrabberSubsystem.unEjectHatch(); @@ -63,12 +61,18 @@ protected void execute() { } else{ hatchGrabberSubsystem.retractHatch(); + if(ControlPanelMap.outTake()) { hatchGrabberSubsystem.outakeWheels(); } else if(ControlPanelMap.inTake()){ + hatchGrabberSubsystem.unEjectHatch(); + hatchGrabberSubsystem.intakeWheels(); } + else{ + hatchGrabberSubsystem.stopWheels(); + } } SmartDashboard.putBoolean("Hatch Mode",hatchMode); diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index e89089f..b5eca14 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -119,7 +119,7 @@ public void setWristJointSpeed(double speed) { } public void setWristSetPoint(double angle){ if(getShoulderEncoderAngle()ConstantsMap.WRIST_MAX_ANGLE){ angle =ConstantsMap.WRIST_MAX_ANGLE; @@ -185,6 +185,13 @@ public double getShoulderEncoderAngle() { public double getShoulderTicks(){ return shoulder.getSelectedSensorPosition(); } + public double getShoulderSetPoint(){ + return shoulder.getActiveTrajectoryPosition()* ConstantsMap.SHOULDER_ENCODER_ANGLE_PER_TICK; + } + public double getWristSetPoint(){ + return wrist.getActiveTrajectoryPosition()* ConstantsMap.WRIST_ENCODER_ANGLE_PER_TICK; + + } public double getWristEncoderAngle() { return getWristTicks()* ConstantsMap.WRIST_ENCODER_ANGLE_PER_TICK; diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index d49ca74..5758eff 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -20,6 +20,7 @@ import com.kauailabs.navx.frc.AHRS; +import edu.wpi.first.wpilibj.PowerDistributionPanel; import edu.wpi.first.wpilibj.SPI; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; @@ -34,7 +35,7 @@ public class DriveSubsystem extends Subsystem { private AHRS ahrs; - + private PowerDistributionPanel pdp; public DriveSubsystem() { System.out.println("Drive Subsystem Init"); @@ -63,7 +64,8 @@ public DriveSubsystem() { //Instantiate Gyro | Gyro automatically calibrates when given power ahrs = new AHRS(SPI.Port.kMXP); stop(); - + pdp = new PowerDistributionPanel(11); + @@ -74,7 +76,9 @@ public void initDefaultCommand() { // Set the default command for a subsystem here. setDefaultCommand(new DriveCommand()); } - + public double getVoltage(){ + return pdp.getVoltage(); + } //sets the speed for both of the left motors public void setLeftSpeed(double speed) { diff --git a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java index ac7bf15..4934b2f 100644 --- a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java +++ b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java @@ -45,11 +45,11 @@ public HatchGrabberSubsystem() { } public void extendHatch() { - grabberPiston.set(Value.kForward); + grabberPiston.set(Value.kReverse); } public void retractHatch() { - grabberPiston.set(Value.kReverse); + grabberPiston.set(Value.kForward); } public void ejectHatch() { From 308ef167e37c8ee14413914fdd707d9570f9a3f9 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Sat, 16 Feb 2019 16:28:19 -0600 Subject: [PATCH 090/131] Changes --- src/main/java/frc/robot/ConstantsMap.java | 4 +-- src/main/java/frc/robot/OI.java | 32 +++++++++---------- .../frc/robot/commands/ArmPresetCommand.java | 8 +++-- .../frc/robot/subsystems/ArmSubsystem2.java | 1 + 4 files changed, 24 insertions(+), 21 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index d6c7b0b..82c90d4 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -96,10 +96,10 @@ public class ConstantsMap { // PRESETS!!! public static final boolean isHatchGrabber = true; - public static final double ROCKET_HATCH_PRESET_1 = -40.0; + public static final double ROCKET_HATCH_PRESET_1 = 0; public static final double ROCKET_HATCH_PRESET_2 = 8.0; public static final double ROCKET_HATCH_PRESET_3 = 47.0; - public static final double ROCKET_BALL_PRESET_1 = 8.0; + public static final double ROCKET_BALL_PRESET_1 = 0; public static final double ROCKET_BALL_PRESET_2 = 8.0; public static final double ROCKET_BALL_PRESET_3 = 47.0; diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index 12e23d5..03d3042 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -43,21 +43,21 @@ public OI(){ //attack3_L = new Attack3(3); //attack3_R = new Attack3(4); - rocketBallPreset1 = new JoystickButton(controlPanel1, 1); - rocketBallPreset2 = new JoystickButton(controlPanel1, 3); - rocketBallPreset3 = new JoystickButton(controlPanel1, 5); - rocketHatchPreset1 = new JoystickButton(controlPanel1, 2); - rocketHatchPreset2 = new JoystickButton(controlPanel1, 4); - rocketHatchPreset3 = new JoystickButton(controlPanel1, 6); + rocketBallPreset1 = new JoystickButton(controlPanel1, 5); + rocketBallPreset2 = new JoystickButton(controlPanel1, 7); + rocketBallPreset3 = new JoystickButton(controlPanel1, 9); + rocketHatchPreset1 = new JoystickButton(controlPanel1, 6); + rocketHatchPreset2 = new JoystickButton(controlPanel1, 8); + rocketHatchPreset3 = new JoystickButton(controlPanel1, 10); - cargoBallPreset = new JoystickButton(controlPanel1, 7); - cargoHatchPreset = new JoystickButton(controlPanel1, 8); + cargoBallPreset = new JoystickButton(controlPanel1, 3); + cargoHatchPreset = new JoystickButton(controlPanel1, 4); - ballCollectPreset = new JoystickButton(controlPanel1, 9); - hatchCollectPreset = new JoystickButton(controlPanel1,10); + ballCollectPreset = new JoystickButton(controlPanel1, 1); + hatchCollectPreset = new JoystickButton(controlPanel1,2); - goHome = new JoystickButton(controlPanel1, 11); - toggleDebug = new JoystickButton(controlPanel1, 12); + goHome = new JoystickButton(controlPanel1, 12); + toggleDebug = new JoystickButton(controlPanel1, 11); normalMode(); @@ -65,12 +65,12 @@ public OI(){ public void normalMode(){ - rocketHatchPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_3)); + rocketHatchPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_1)); rocketHatchPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_2)); - rocketHatchPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_1)); - rocketBallPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_3)); + rocketHatchPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_3)); + rocketBallPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_1)); rocketBallPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_2)); - rocketBallPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_1)); + rocketBallPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_3)); cargoHatchPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_HATCH_PRESET)); cargoBallPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_BALL_PRESET)); diff --git a/src/main/java/frc/robot/commands/ArmPresetCommand.java b/src/main/java/frc/robot/commands/ArmPresetCommand.java index cb1a5d5..0afc635 100644 --- a/src/main/java/frc/robot/commands/ArmPresetCommand.java +++ b/src/main/java/frc/robot/commands/ArmPresetCommand.java @@ -1,6 +1,7 @@ package frc.robot.commands; import edu.wpi.first.wpilibj.command.Command; +import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import frc.robot.ConstantsMap; import frc.robot.Robot; import frc.robot.XboxMap; @@ -18,23 +19,24 @@ public ArmPresetCommand(double angle) { // Called just before this Command runs the first time @Override protected void initialize() { + System.out.println("Start Preset: " + preset); armSubsystem.setShoulderSetPoint(preset); - armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); + armSubsystem.setWristSetPoint(ConstantsMap.WRIST_MAX_ANGLE); } // Called repeatedly when this Command is scheduled to run @Override protected void execute() { - armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); + //armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); } // Make this return true when this Command no longer needs to run execute() @Override protected boolean isFinished() { - return Math.abs(armSubsystem.getShoulderEncoderAngle() - preset)<1; + return Math.abs(armSubsystem.getShoulderEncoderAngle() - preset)<.5; } // Called once after isFinished returns true diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index b5eca14..7cc639c 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -107,6 +107,7 @@ public ArmSubsystem2() { setWristSetPoint(getWristEncoderAngle()); setShoulderSetPoint(getShoulderEncoderAngle()); + } public void setShoulderJointSpeed(double speed) { From 37619138116b49d1edd10ef737cf17a7fcae02a7 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Sat, 16 Feb 2019 17:11:01 -0600 Subject: [PATCH 091/131] Updated code from Saturday 5 pm --- src/main/java/frc/robot/ConstantsMap.java | 8 ++++---- src/main/java/frc/robot/commands/ArmPresetCommand.java | 3 ++- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 82c90d4..89bf8b8 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -66,14 +66,14 @@ public class ConstantsMap { public static final double SHOULDER_GEAR_RATIO = 350.0; public static final double SHOULDER_MIN_ANGLE = -68.0; public static final double SHOULDER_MAX_ANGLE = 90.0; - public static final int SHOULDER_VELOCITY = 20000; - public static final int SHOULDER_ACCEL = 10000; + public static final int SHOULDER_FOLLOW_DISTANCE = 20; public static final double SHOULDER_CHANGE_SETPOINT_SPEED = .5; public static final int SHOULDER_WRIST_FOLD_ANGLE = -50; - - public static final Gains shoulderGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); + public static final int SHOULDER_VELOCITY = 20000; + public static final int SHOULDER_ACCEL = 10000; + public static final Gains shoulderGains = new Gains(0.5, 0.1, 0.0, 0.2, 0, 1.0); //For Grabber public static final double BALL_INTAKE_SPEED = .5; diff --git a/src/main/java/frc/robot/commands/ArmPresetCommand.java b/src/main/java/frc/robot/commands/ArmPresetCommand.java index 0afc635..2a1b8ac 100644 --- a/src/main/java/frc/robot/commands/ArmPresetCommand.java +++ b/src/main/java/frc/robot/commands/ArmPresetCommand.java @@ -36,7 +36,8 @@ protected void execute() { // Make this return true when this Command no longer needs to run execute() @Override protected boolean isFinished() { - return Math.abs(armSubsystem.getShoulderEncoderAngle() - preset)<.5; + return false; + //return Math.abs(armSubsystem.getShoulderEncoderAngle() - preset)<.5; } // Called once after isFinished returns true From a2bc138250db91ad9d4e84aaf0065c23326a5b73 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Sat, 16 Feb 2019 17:13:57 -0600 Subject: [PATCH 092/131] Updated code from Saturday 5 pm --- src/main/java/frc/robot/commands/ArmPresetCommand.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/commands/ArmPresetCommand.java b/src/main/java/frc/robot/commands/ArmPresetCommand.java index 2a1b8ac..a097bf5 100644 --- a/src/main/java/frc/robot/commands/ArmPresetCommand.java +++ b/src/main/java/frc/robot/commands/ArmPresetCommand.java @@ -50,6 +50,6 @@ protected void end() { // subsystems is scheduled to run @Override protected void interrupted() { - System.out.println("Preset Interupt"); + System.out.println("Preset Interupt");S } } From b3eed0ca2f71be4e5df05087fc3ce8b9ca6f17af Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Sun, 17 Feb 2019 14:16:52 -0600 Subject: [PATCH 093/131] workingish --- src/main/java/frc/robot/OI.java | 20 +++++++++++++++++++ src/main/java/frc/robot/Robot.java | 15 +++++++++++++- .../java/frc/robot/commands/ArmCommand2.java | 6 +++--- .../frc/robot/commands/ArmPresetCommand.java | 2 +- src/main/java/frc/robot/commands/ArmZero.java | 4 ++-- 5 files changed, 40 insertions(+), 7 deletions(-) diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index 03d3042..926e881 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -11,6 +11,8 @@ import edu.wpi.first.wpilibj.XboxController; import edu.wpi.first.wpilibj.buttons.JoystickButton; import frc.robot.commands.ArmPresetCommand; +import frc.robot.commands.ArmZero; +import frc.robot.commands.WristZero; /** * This class is the glue that binds the controls on the physical operator @@ -78,6 +80,24 @@ public void normalMode(){ ballCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.BALL_COLLECT_PRESET)); hatchCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.HATCH_COLLECT_PRESET)); + goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET)); + } + public void debugMode(){ + + + rocketHatchPreset1.whenPressed(null); + rocketHatchPreset2.whenPressed(null); + rocketHatchPreset3.whenPressed(null); + rocketBallPreset1.whenPressed(null); + rocketBallPreset2.whenPressed(null); + rocketBallPreset3.whenPressed(null); + + cargoHatchPreset.whenPressed(null); + cargoBallPreset.whenPressed(null); + + ballCollectPreset.whenPressed(new WristZero()); + hatchCollectPreset.whenPressed(new ArmZero()); + goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET)); } } \ No newline at end of file diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 1cec3c4..d04629c 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -75,7 +75,9 @@ public void robotInit() { //server.startAutomaticCapture("Ground",0); } - + public boolean getDebug(){ + return debugMode; + } /** * This function is called every robot packet, no matter the mode. Use @@ -96,12 +98,23 @@ public void robotPeriodic() { SmartDashboard.putBoolean("Wrist Limit", armSubsystem2.getWristLowerLimit()); SmartDashboard.putBoolean("Arm Limit", armSubsystem2.getShoulderLowerLimit()); + SmartDashboard.putBoolean("Debug Mode", debugMode); + + armSubsystem2.checkShoulderLimits(); armSubsystem2.checkWristLimits(); if(ControlPanelMap.toggleDebug()){ debugMode = !debugMode; + if(debugMode){ + oi.debugMode(); + } + else{ + oi.normalMode(); + } + } + } diff --git a/src/main/java/frc/robot/commands/ArmCommand2.java b/src/main/java/frc/robot/commands/ArmCommand2.java index f9d5ade..5b05d5b 100644 --- a/src/main/java/frc/robot/commands/ArmCommand2.java +++ b/src/main/java/frc/robot/commands/ArmCommand2.java @@ -86,9 +86,9 @@ else if(ControlPanelMap.zeroShoulder()){ actualShoulderAngle = armSubsystem.getShoulderEncoderAngle(); actualWristAngle = armSubsystem.getWristEncoderAngle(); - if(manualMode){ - armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); - armSubsystem.setWristJointSpeed(amountToMoveWristJoint); + if(SmartDashboard.getBoolean("Debug Mode", false)){ + armSubsystem.setShoulderJointSpeed(.1 * amountToMoveShoulderJoint); + armSubsystem.setWristJointSpeed(.1 * amountToMoveWristJoint); } else{ if(Math.abs((shoulderAngle + amountToMoveShoulderJoint)-actualShoulderAngle) Date: Sun, 17 Feb 2019 16:56:30 -0600 Subject: [PATCH 094/131] more arm stuff --- src/main/java/frc/robot/ConstantsMap.java | 6 ++++-- src/main/java/frc/robot/ControlPanelMap.java | 2 +- src/main/java/frc/robot/OI.java | 5 +++-- src/main/java/frc/robot/RobotMap.java | 7 +------ .../java/frc/robot/commands/ArmCommand2.java | 14 ++++++++----- .../frc/robot/commands/ArmPresetCommand.java | 6 +++--- .../frc/robot/subsystems/ArmSubsystem2.java | 21 ++++++++++++++----- 7 files changed, 37 insertions(+), 24 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 89bf8b8..58f23e7 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -48,7 +48,9 @@ public class ConstantsMap { public static final double SHOULDER_SPEED_MULT = .1; public static final double WRIST_ENCODER_TICKS_PER_ROTATION = 4096; public static final double WRIST_ENCODER_ANGLE_PER_TICK = 360/((double)WRIST_ENCODER_TICKS_PER_ROTATION * 81); - public static final double WRIST_MIN_ANGLE = -10.0; + public static final double WRIST_MIN_ANGLE_DOWN = -10.0; + public static final double WRIST_MIN_ANGLE_UP = -55.0; + public static final double WRIST_MAX_ANGLE = 70.0; public static final double WRIST_IN_ANGLE = 70.0; @@ -73,7 +75,7 @@ public class ConstantsMap { public static final int SHOULDER_VELOCITY = 20000; public static final int SHOULDER_ACCEL = 10000; - public static final Gains shoulderGains = new Gains(0.5, 0.1, 0.0, 0.2, 0, 1.0); + public static final Gains shoulderGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); //For Grabber public static final double BALL_INTAKE_SPEED = .5; diff --git a/src/main/java/frc/robot/ControlPanelMap.java b/src/main/java/frc/robot/ControlPanelMap.java index b02879e..bdf9e40 100644 --- a/src/main/java/frc/robot/ControlPanelMap.java +++ b/src/main/java/frc/robot/ControlPanelMap.java @@ -37,7 +37,7 @@ public static boolean setHatcheMode() { return oi.controlPanel2.getRawButtonPressed(4); } public static boolean toggleDebug() { - return oi.controlPanel1.getRawButtonPressed(2); + return oi.controlPanel1.getRawButtonPressed(11); } /* diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index 926e881..8c88a67 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -65,7 +65,8 @@ public OI(){ } public void normalMode(){ - + System.out.println("Normal Mode OI"); + rocketHatchPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_1)); rocketHatchPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_2)); @@ -83,7 +84,7 @@ public void normalMode(){ goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET)); } public void debugMode(){ - + System.out.println("Debug Mode OI"); rocketHatchPreset1.whenPressed(null); rocketHatchPreset2.whenPressed(null); diff --git a/src/main/java/frc/robot/RobotMap.java b/src/main/java/frc/robot/RobotMap.java index 96921f6..835d51d 100644 --- a/src/main/java/frc/robot/RobotMap.java +++ b/src/main/java/frc/robot/RobotMap.java @@ -20,12 +20,7 @@ public class RobotMap { public static final int RIGHT_DRIVE_PORT_1 = 1; public static final int RIGHT_DRIVE_PORT_2 = 2; - public static final int LEFT_ENCODER_PORT_A = -99999; - public static final int LEFT_ENCODER_PORT_B = -99999; - - public static final int RIGHT_ENCODER_PORT_A = 1; - public static final int RIGHT_ENCODER_PORT_B = 7; - + public static final int SHOULDER_JOINT_RIGHT_PORT = 6; public static final int SHOULDER_JOINT_LEFT_PORT = 5; public static final int WRIST_JOINT_PORT = 7; diff --git a/src/main/java/frc/robot/commands/ArmCommand2.java b/src/main/java/frc/robot/commands/ArmCommand2.java index 5b05d5b..9d7f762 100644 --- a/src/main/java/frc/robot/commands/ArmCommand2.java +++ b/src/main/java/frc/robot/commands/ArmCommand2.java @@ -86,9 +86,13 @@ else if(ControlPanelMap.zeroShoulder()){ actualShoulderAngle = armSubsystem.getShoulderEncoderAngle(); actualWristAngle = armSubsystem.getWristEncoderAngle(); - if(SmartDashboard.getBoolean("Debug Mode", false)){ + /* if(SmartDashboard.getBoolean("Debug Mode", false)){ armSubsystem.setShoulderJointSpeed(.1 * amountToMoveShoulderJoint); armSubsystem.setWristJointSpeed(.1 * amountToMoveWristJoint); + } */ + if(manualMode){ + armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); + armSubsystem.setWristJointSpeed(amountToMoveWristJoint); } else{ if(Math.abs((shoulderAngle + amountToMoveShoulderJoint)-actualShoulderAngle) ConstantsMap.SHOULDER_MAX_ANGLE){ + /* if(shoulderAngle > ConstantsMap.SHOULDER_MAX_ANGLE){ shoulderAngle = ConstantsMap.SHOULDER_MAX_ANGLE; } if(shoulderAngle < ConstantsMap.SHOULDER_MIN_ANGLE){ @@ -106,9 +110,9 @@ else if(ControlPanelMap.zeroShoulder()){ if(wristAngle > ConstantsMap.WRIST_MAX_ANGLE){ wristAngle = ConstantsMap.WRIST_MAX_ANGLE; } - if(wristAngle < ConstantsMap.WRIST_MIN_ANGLE){ - wristAngle = ConstantsMap.WRIST_MIN_ANGLE; - } + if(wristAngle < ConstantsMap.WRIST_MIN_ANGLE_DOWN){ + wristAngle = ConstantsMap.WRIST_MIN_ANGLE_DOWN; + } */ armSubsystem.setShoulderSetPoint(shoulderAngle); if(enableLevelWrist){ diff --git a/src/main/java/frc/robot/commands/ArmPresetCommand.java b/src/main/java/frc/robot/commands/ArmPresetCommand.java index 2a1b8ac..fdf2698 100644 --- a/src/main/java/frc/robot/commands/ArmPresetCommand.java +++ b/src/main/java/frc/robot/commands/ArmPresetCommand.java @@ -23,7 +23,7 @@ protected void initialize() { System.out.println("Start Preset: " + preset); armSubsystem.setShoulderSetPoint(preset); - armSubsystem.setWristSetPoint(ConstantsMap.WRIST_MAX_ANGLE); + armSubsystem.setWristSetPoint(-preset-10); } // Called repeatedly when this Command is scheduled to run @@ -36,8 +36,8 @@ protected void execute() { // Make this return true when this Command no longer needs to run execute() @Override protected boolean isFinished() { - return false; - //return Math.abs(armSubsystem.getShoulderEncoderAngle() - preset)<.5; + //return false; + return Math.abs(armSubsystem.getShoulderEncoderAngle() - preset)<.5; } // Called once after isFinished returns true diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index 7cc639c..d9db5ed 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -122,12 +122,23 @@ public void setWristSetPoint(double angle){ if(getShoulderEncoderAngle()ConstantsMap.WRIST_MAX_ANGLE){ - angle =ConstantsMap.WRIST_MAX_ANGLE; + else if(getShoulderEncoderAngle()>0){ + if(angle>ConstantsMap.WRIST_MAX_ANGLE){ + angle =ConstantsMap.WRIST_MAX_ANGLE; + } + if(angleConstantsMap.WRIST_MAX_ANGLE){ + angle =ConstantsMap.WRIST_MAX_ANGLE; + } + if(angle Date: Mon, 18 Feb 2019 16:45:47 -0600 Subject: [PATCH 095/131] More preset work --- src/main/java/frc/robot/ConstantsMap.java | 6 +-- src/main/java/frc/robot/OI.java | 48 +++++++++++-------- .../frc/robot/subsystems/ArmSubsystem2.java | 5 +- 3 files changed, 34 insertions(+), 25 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 58f23e7..99f7bd6 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -63,11 +63,11 @@ public class ConstantsMap { public static final int SHOULDER_ENCODER_TICKS_PER_ROTATION = 4096; //ticks - public static final double SHOULDER_ENCODER_ANGLE_PER_TICK = 360/((double)SHOULDER_ENCODER_TICKS_PER_ROTATION * 70 * 5); + public static final double SHOULDER_ENCODER_ANGLE_PER_TICK = 360/((double)SHOULDER_ENCODER_TICKS_PER_ROTATION * 49 * 5); public static final double SHOULDER_GEAR_RATIO = 350.0; public static final double SHOULDER_MIN_ANGLE = -68.0; - public static final double SHOULDER_MAX_ANGLE = 90.0; + public static final double SHOULDER_MAX_ANGLE = 50.0; public static final int SHOULDER_FOLLOW_DISTANCE = 20; public static final double SHOULDER_CHANGE_SETPOINT_SPEED = .5; @@ -75,7 +75,7 @@ public class ConstantsMap { public static final int SHOULDER_VELOCITY = 20000; public static final int SHOULDER_ACCEL = 10000; - public static final Gains shoulderGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); + public static final Gains shoulderGains = new Gains(0.1, 0.0, 0.1, 0.4, 0, 1.0); //For Grabber public static final double BALL_INTAKE_SPEED = .5; diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index 8c88a67..3dad096 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -1,10 +1,3 @@ -/*----------------------------------------------------------------------------*/ -/* Copyright (c) 2017-2018 FIRST. All Rights Reserved. */ -/* Open Source Software - may be modified and shared by FRC teams. The code */ -/* must be accompanied by the FIRST BSD license file in the root directory of */ -/* the project. */ -/*----------------------------------------------------------------------------*/ - package frc.robot; import edu.wpi.first.wpilibj.Joystick; @@ -14,10 +7,7 @@ import frc.robot.commands.ArmZero; import frc.robot.commands.WristZero; -/** -* This class is the glue that binds the controls on the physical operator -* interface to the commands and command groups that allow control of the robot. -*/ + public class OI { //User interface Constants public double attackThrottleSensitivity=.1; @@ -42,9 +32,13 @@ public OI(){ xbox = new XboxController(0); controlPanel1 = new Joystick(1); controlPanel2 = new Joystick(2); + + - //attack3_L = new Attack3(3); - //attack3_R = new Attack3(4); + normalMode(); + + } + public void normalMode(){ rocketBallPreset1 = new JoystickButton(controlPanel1, 5); rocketBallPreset2 = new JoystickButton(controlPanel1, 7); rocketBallPreset3 = new JoystickButton(controlPanel1, 9); @@ -60,11 +54,6 @@ public OI(){ goHome = new JoystickButton(controlPanel1, 12); toggleDebug = new JoystickButton(controlPanel1, 11); - - normalMode(); - - } - public void normalMode(){ System.out.println("Normal Mode OI"); @@ -84,9 +73,28 @@ public void normalMode(){ goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET)); } public void debugMode(){ + rocketBallPreset1 = null; + rocketBallPreset2 = null; + rocketBallPreset3 = null; + + rocketBallPreset1 = new JoystickButton(controlPanel1, 5); + rocketBallPreset2 = new JoystickButton(controlPanel1, 7); + rocketBallPreset3 = new JoystickButton(controlPanel1, 9); + rocketHatchPreset1 = new JoystickButton(controlPanel1, 6); + rocketHatchPreset2 = new JoystickButton(controlPanel1, 8); + rocketHatchPreset3 = new JoystickButton(controlPanel1, 10); + + cargoBallPreset = new JoystickButton(controlPanel1, 3); + cargoHatchPreset = new JoystickButton(controlPanel1, 4); + + ballCollectPreset = new JoystickButton(controlPanel1, 1); + hatchCollectPreset = new JoystickButton(controlPanel1,2); + + goHome = new JoystickButton(controlPanel1, 12); + toggleDebug = new JoystickButton(controlPanel1, 11); System.out.println("Debug Mode OI"); - rocketHatchPreset1.whenPressed(null); + /* rocketHatchPreset1.whenPressed(null); rocketHatchPreset2.whenPressed(null); rocketHatchPreset3.whenPressed(null); rocketBallPreset1.whenPressed(null); @@ -94,7 +102,7 @@ public void debugMode(){ rocketBallPreset3.whenPressed(null); cargoHatchPreset.whenPressed(null); - cargoBallPreset.whenPressed(null); + cargoBallPreset.whenPressed(null); */ ballCollectPreset.whenPressed(new WristZero()); hatchCollectPreset.whenPressed(new ArmZero()); diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index d9db5ed..bf2312a 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -119,10 +119,10 @@ public void setWristJointSpeed(double speed) { wrist.set(ControlMode.PercentOutput,speed); } public void setWristSetPoint(double angle){ - if(getShoulderEncoderAngle()0){ + else if(shoulder.getActiveTrajectoryPosition()*ConstantsMap.SHOULDER_ENCODER_ANGLE_PER_TICK>0){ if(angle>ConstantsMap.WRIST_MAX_ANGLE){ angle =ConstantsMap.WRIST_MAX_ANGLE; } @@ -167,6 +167,7 @@ public void checkWristLimits(){ } else if (wrist.getControlMode() == ControlMode.MotionMagic){ if(wrist.getActiveTrajectoryVelocity() > 0){ + setWristSetPoint(ConstantsMap.WRIST_MAX_ANGLE); } } From 1f4b0b45aafae319534f94c0ab530bb57406087f Mon Sep 17 00:00:00 2001 From: trajing Date: Mon, 18 Feb 2019 16:58:22 -0600 Subject: [PATCH 096/131] Add button unbinding functionality --- src/main/java/frc/robot/OI.java | 21 +++++++++++++++++---- src/main/java/frc/robot/Robot.java | 1 + 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index 3dad096..df68c5d 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -1,8 +1,13 @@ package frc.robot; +import java.lang.reflect.Field; +import java.util.Vector; + import edu.wpi.first.wpilibj.Joystick; import edu.wpi.first.wpilibj.XboxController; import edu.wpi.first.wpilibj.buttons.JoystickButton; +import edu.wpi.first.wpilibj.buttons.Trigger.ButtonScheduler; +import edu.wpi.first.wpilibj.command.Scheduler; import frc.robot.commands.ArmPresetCommand; import frc.robot.commands.ArmZero; import frc.robot.commands.WristZero; @@ -73,10 +78,6 @@ public void normalMode(){ goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET)); } public void debugMode(){ - rocketBallPreset1 = null; - rocketBallPreset2 = null; - rocketBallPreset3 = null; - rocketBallPreset1 = new JoystickButton(controlPanel1, 5); rocketBallPreset2 = new JoystickButton(controlPanel1, 7); rocketBallPreset3 = new JoystickButton(controlPanel1, 9); @@ -109,4 +110,16 @@ public void debugMode(){ goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET)); } + + public void unbindButtons() { + Field schedulerBtns; + try { + schedulerBtns = Scheduler.class.getDeclaredField("m_buttons"); + schedulerBtns.setAccessible(true); + ((Vector) schedulerBtns.get(Scheduler.getInstance())).clear(); + } catch (Exception e) { + System.err.println("wpilib broke"); + return; + } + } } \ No newline at end of file diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index d04629c..cccbe73 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -106,6 +106,7 @@ public void robotPeriodic() { if(ControlPanelMap.toggleDebug()){ debugMode = !debugMode; + oi.unbindButtons(); if(debugMode){ oi.debugMode(); } From 1ac8da7eed7693be1f89f0bedf1ff1e6b1302908 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Mon, 18 Feb 2019 23:50:42 -0600 Subject: [PATCH 097/131] good arm motion and mos the other grab works --- src/main/java/frc/robot/ConstantsMap.java | 28 +++++----- src/main/java/frc/robot/ControlPanelMap.java | 7 +++ src/main/java/frc/robot/OI.java | 24 ++++---- src/main/java/frc/robot/Robot.java | 11 +++- .../java/frc/robot/commands/ArmCommand2.java | 37 +++++++----- .../frc/robot/commands/ArmPresetCommand.java | 20 ++++--- .../java/frc/robot/commands/DriveCommand.java | 8 ++- .../java/frc/robot/commands/WristZero.java | 3 +- .../frc/robot/subsystems/ArmSubsystem2.java | 56 +++++++++++++++---- 9 files changed, 132 insertions(+), 62 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 99f7bd6..aeab111 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -47,14 +47,14 @@ public class ConstantsMap { public static final double WRIST_SPEED_MULT = .1; public static final double SHOULDER_SPEED_MULT = .1; public static final double WRIST_ENCODER_TICKS_PER_ROTATION = 4096; - public static final double WRIST_ENCODER_ANGLE_PER_TICK = 360/((double)WRIST_ENCODER_TICKS_PER_ROTATION * 81); + public static final double WRIST_ENCODER_ANGLE_PER_TICK = 360/((double)WRIST_ENCODER_TICKS_PER_ROTATION * 63); public static final double WRIST_MIN_ANGLE_DOWN = -10.0; public static final double WRIST_MIN_ANGLE_UP = -55.0; - public static final double WRIST_MAX_ANGLE = 70.0; - public static final double WRIST_IN_ANGLE = 70.0; + public static final double WRIST_MAX_ANGLE = 80.0; + public static final double WRIST_IN_ANGLE = 60.0; - public static final int WRIST_VELOCITY = 20000; + public static final int WRIST_VELOCITY = (int)(316.7/WRIST_ENCODER_ANGLE_PER_TICK);; public static final int WRIST_ACCEL = 10000; public static final int WRIST_FOLLOW_DISTANCE = 20; public static final double WRIST_CHANGE_SETPOINT_SPEED = .5; @@ -71,11 +71,11 @@ public class ConstantsMap { public static final int SHOULDER_FOLLOW_DISTANCE = 20; public static final double SHOULDER_CHANGE_SETPOINT_SPEED = .5; - public static final int SHOULDER_WRIST_FOLD_ANGLE = -50; + public static final int SHOULDER_WRIST_FOLD_ANGLE = -55; - public static final int SHOULDER_VELOCITY = 20000; - public static final int SHOULDER_ACCEL = 10000; - public static final Gains shoulderGains = new Gains(0.1, 0.0, 0.1, 0.4, 0, 1.0); + public static final int SHOULDER_VELOCITY = 24000/2; + public static final int SHOULDER_ACCEL = 24000 ; + public static final Gains shoulderGains = new Gains(.05, 0.0, 0, 0.042625, 0, 1.0); //For Grabber public static final double BALL_INTAKE_SPEED = .5; @@ -100,16 +100,18 @@ public class ConstantsMap { public static final boolean isHatchGrabber = true; public static final double ROCKET_HATCH_PRESET_1 = 0; public static final double ROCKET_HATCH_PRESET_2 = 8.0; - public static final double ROCKET_HATCH_PRESET_3 = 47.0; - public static final double ROCKET_BALL_PRESET_1 = 0; - public static final double ROCKET_BALL_PRESET_2 = 8.0; - public static final double ROCKET_BALL_PRESET_3 = 47.0; + public static final double ROCKET_HATCH_PRESET_3 = .0; + public static final double ROCKET_BALL_PRESET_1 = -40; + public static final double ROCKET_BALL_PRESET_2 = 6; + public static final double ROCKET_BALL_PRESET_3 = 50; public static final double CARGO_BALL_PRESET = -20.0; public static final double CARGO_HATCH_PRESET = -20.0; public static final double HATCH_COLLECT_PRESET = -20.0; - public static final double BALL_COLLECT_PRESET = -20.0; + public static final double BALL_COLLECT_WRIST_PRESET = -30.0; + public static final double BALL_COLLECT_SHOULDER_PRESET = -20.0; + public static final double GO_HOME_PRESET = SHOULDER_MIN_ANGLE; diff --git a/src/main/java/frc/robot/ControlPanelMap.java b/src/main/java/frc/robot/ControlPanelMap.java index bdf9e40..5cb8f36 100644 --- a/src/main/java/frc/robot/ControlPanelMap.java +++ b/src/main/java/frc/robot/ControlPanelMap.java @@ -39,6 +39,13 @@ public static boolean setHatcheMode() { public static boolean toggleDebug() { return oi.controlPanel1.getRawButtonPressed(11); } + public static boolean toggleLevel() { + return oi.controlPanel1.getRawButtonPressed(4 + ); + } + public static boolean toggleManual() { + return oi.controlPanel1.getRawButtonPressed(9); + } /* public static boolean toggleArmControl() { diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index df68c5d..08bcc13 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -62,20 +62,20 @@ public void normalMode(){ System.out.println("Normal Mode OI"); - rocketHatchPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_1)); - rocketHatchPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_2)); - rocketHatchPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_3)); - rocketBallPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_1)); - rocketBallPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_2)); - rocketBallPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_3)); + rocketHatchPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_1,-ConstantsMap.ROCKET_HATCH_PRESET_1)); + rocketHatchPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_2,-ConstantsMap.ROCKET_HATCH_PRESET_2)); + rocketHatchPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_3,-ConstantsMap.ROCKET_HATCH_PRESET_3)); + rocketBallPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_1,-ConstantsMap.ROCKET_BALL_PRESET_1)); + rocketBallPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_2,-ConstantsMap.ROCKET_BALL_PRESET_2)); + rocketBallPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_3,-ConstantsMap.ROCKET_BALL_PRESET_3)); - cargoHatchPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_HATCH_PRESET)); - cargoBallPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_BALL_PRESET)); + cargoHatchPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_HATCH_PRESET,-ConstantsMap.CARGO_HATCH_PRESET)); + cargoBallPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_BALL_PRESET,-ConstantsMap.CARGO_BALL_PRESET)); - ballCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.BALL_COLLECT_PRESET)); - hatchCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.HATCH_COLLECT_PRESET)); + ballCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.BALL_COLLECT_SHOULDER_PRESET,-ConstantsMap.BALL_COLLECT_WRIST_PRESET)); + hatchCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.HATCH_COLLECT_PRESET,-ConstantsMap.HATCH_COLLECT_PRESET)); - goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET)); + goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET,ConstantsMap.WRIST_MAX_ANGLE)); } public void debugMode(){ rocketBallPreset1 = new JoystickButton(controlPanel1, 5); @@ -108,7 +108,7 @@ public void debugMode(){ ballCollectPreset.whenPressed(new WristZero()); hatchCollectPreset.whenPressed(new ArmZero()); - goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET)); + goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET,ConstantsMap.WRIST_MAX_ANGLE)); } public void unbindButtons() { diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index cccbe73..ab45d8f 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -100,6 +100,10 @@ public void robotPeriodic() { SmartDashboard.putBoolean("Debug Mode", debugMode); + SmartDashboard.putBoolean("Manual Mode", armSubsystem2.getManualMode()); + SmartDashboard.putBoolean("Level Mode", armSubsystem2.getLevelMode()); + + armSubsystem2.checkShoulderLimits(); armSubsystem2.checkWristLimits(); @@ -115,7 +119,12 @@ public void robotPeriodic() { } } - + if(ControlPanelMap.toggleManual() && debugMode){ + armSubsystem2.toggleManualMode(); + } + if(ControlPanelMap.toggleLevel() && debugMode){ + armSubsystem2.toggleLevelMode(); + } } diff --git a/src/main/java/frc/robot/commands/ArmCommand2.java b/src/main/java/frc/robot/commands/ArmCommand2.java index 9d7f762..f7d3805 100644 --- a/src/main/java/frc/robot/commands/ArmCommand2.java +++ b/src/main/java/frc/robot/commands/ArmCommand2.java @@ -25,6 +25,8 @@ public class ArmCommand2 extends Command { private double wristAngle; private double actualShoulderAngle; private double actualWristAngle; + private double oldShoulderAngle; + private double oldWristAngle; public ArmCommand2() { requires(armSubsystem); } @@ -39,7 +41,8 @@ protected void initialize() { wristAngle = armSubsystem.getWristEncoderAngle(); manualMode = false; enableLevelWrist = false; - + oldShoulderAngle = 0; + oldWristAngle = 0; } @@ -81,8 +84,9 @@ else if(ControlPanelMap.zeroShoulder()){ if (Math.abs(amountToMoveWristJoint) < 0.1) { amountToMoveWristJoint = 0; } - amountToMoveShoulderJoint *= ConstantsMap.SHOULDER_CHANGE_SETPOINT_SPEED; - amountToMoveWristJoint *= ConstantsMap.WRIST_CHANGE_SETPOINT_SPEED; + + /* amountToMoveShoulderJoint *= ConstantsMap.SHOULDER_CHANGE_SETPOINT_SPEED; + amountToMoveWristJoint *= ConstantsMap.WRIST_CHANGE_SETPOINT_SPEED; */ actualShoulderAngle = armSubsystem.getShoulderEncoderAngle(); actualWristAngle = armSubsystem.getWristEncoderAngle(); @@ -90,9 +94,9 @@ else if(ControlPanelMap.zeroShoulder()){ armSubsystem.setShoulderJointSpeed(.1 * amountToMoveShoulderJoint); armSubsystem.setWristJointSpeed(.1 * amountToMoveWristJoint); } */ - if(manualMode){ - armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); - armSubsystem.setWristJointSpeed(amountToMoveWristJoint); + if(armSubsystem.getManualMode()){ + armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint*2); + armSubsystem.setWristJointSpeed(amountToMoveWristJoint*2); } else{ if(Math.abs((shoulderAngle + amountToMoveShoulderJoint)-actualShoulderAngle)0){ + speedLeft *= .5; + speedRight *= .5; + + } driveSubsystem.setLeftSpeed(speedLeft*ConstantsMap.TURTLE_SPEED); driveSubsystem.setRightSpeed(speedRight*ConstantsMap.TURTLE_SPEED); diff --git a/src/main/java/frc/robot/commands/WristZero.java b/src/main/java/frc/robot/commands/WristZero.java index 77678c7..d844391 100644 --- a/src/main/java/frc/robot/commands/WristZero.java +++ b/src/main/java/frc/robot/commands/WristZero.java @@ -29,7 +29,7 @@ public WristZero() { @Override protected void initialize() { System.out.println("Wrist Zero Started"); - armSubsystem.setWristJointSpeed(.4); + armSubsystem.setWristJointSpeed(.6); } @@ -63,7 +63,6 @@ protected void end() { protected void interrupted() { System.out.println("Zero Wrist Command Intrupted"); - armSubsystem.setShoulderJointSpeed(0); armSubsystem.setWristJointSpeed(0);; } diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index bf2312a..e0bb84f 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -37,6 +37,12 @@ public class ArmSubsystem2 extends Subsystem { private DigitalInput lowerLimit, lowerLimitWrist, lowerLimitWrist2; private double wristLimitStartTime,wristLimitStartTime2; private boolean wristLimit,wristLimit2; + + + private double shoulderSet; + private double wristSet; + private boolean manualMode; + private boolean levelMode; TalonSRX shoulder, shoulderSlave,wrist; public ArmSubsystem2() { @@ -107,42 +113,67 @@ public ArmSubsystem2() { setWristSetPoint(getWristEncoderAngle()); setShoulderSetPoint(getShoulderEncoderAngle()); - + + manualMode = false; + levelMode = false; } public void setShoulderJointSpeed(double speed) { shoulder.set(ControlMode.PercentOutput,speed); } - + public boolean getManualMode(){ + return manualMode; + } + public boolean getLevelMode(){ + return levelMode; + } + public void toggleManualMode(){ + manualMode = !manualMode; + } + public void toggleLevelMode(){ + levelMode = !levelMode; + } public void setWristJointSpeed(double speed) { wrist.set(ControlMode.PercentOutput,speed); } public void setWristSetPoint(double angle){ - if(shoulder.getActiveTrajectoryPosition()*ConstantsMap.SHOULDER_ENCODER_ANGLE_PER_TICK0){ - if(angle>ConstantsMap.WRIST_MAX_ANGLE){ - angle =ConstantsMap.WRIST_MAX_ANGLE; + if(shoulder.getControlMode() == ControlMode.MotionMagic){ + + if(shoulderSet*ConstantsMap.SHOULDER_ENCODER_ANGLE_PER_TICKConstantsMap.WRIST_MAX_ANGLE){ + angle =ConstantsMap.WRIST_MAX_ANGLE; + } + if(angleConstantsMap.WRIST_MAX_ANGLE){ angle =ConstantsMap.WRIST_MAX_ANGLE; } - if(angleConstantsMap.SHOULDER_MAX_ANGLE){ @@ -153,6 +184,7 @@ public void setShoulderSetPoint(double angle){ } double ticks = angle/ConstantsMap.SHOULDER_ENCODER_ANGLE_PER_TICK; shoulder.set(ControlMode.MotionMagic, ticks); + shoulderSet = ticks; checkShoulderLimits(); } From 823fa47fc922416174ded771d83e8de5e0866499 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Tue, 19 Feb 2019 13:12:12 -0600 Subject: [PATCH 098/131] Cleaned Up Code --- src/main/java/frc/robot/ConstantsMap.java | 5 -- src/main/java/frc/robot/ControlPanelMap.java | 33 +------ src/main/java/frc/robot/Main.java | 7 -- src/main/java/frc/robot/OI.java | 4 +- src/main/java/frc/robot/Robot.java | 48 ---------- src/main/java/frc/robot/TalonSet.java | 49 ----------- .../java/frc/robot/commands/ArmCommand2.java | 33 +------ .../frc/robot/commands/ArmPresetCommand.java | 3 - src/main/java/frc/robot/commands/ArmZero.java | 19 +--- .../java/frc/robot/commands/DriveCommand.java | 35 +------- .../robot/commands/HatchGrabberCommand.java | 8 +- .../{WristZero.java => WristForceZero.java} | 20 +---- .../java/frc/robot/pids/EncoderMotorPID.java | 88 ------------------- .../frc/robot/subsystems/ArmSubsystem2.java | 9 +- .../subsystems/HatchGrabberSubsystem.java | 1 - 15 files changed, 16 insertions(+), 346 deletions(-) delete mode 100644 src/main/java/frc/robot/TalonSet.java rename src/main/java/frc/robot/commands/{WristZero.java => WristForceZero.java} (67%) delete mode 100644 src/main/java/frc/robot/pids/EncoderMotorPID.java diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index aeab111..d4a2f9e 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -81,12 +81,7 @@ public class ConstantsMap { public static final double BALL_INTAKE_SPEED = .5; public static final double BALL_OUTTAKE_SPEED = 1; - - - //Tolerances - public static final double WRIST_TOLERANCE = Float.NaN; //to be determined - public static final double SHOULDER_TOLERANCE = Float.NaN; //to be determined //Follow line pid values public static final double PID_PERCENT_TOLERANCE = .01; diff --git a/src/main/java/frc/robot/ControlPanelMap.java b/src/main/java/frc/robot/ControlPanelMap.java index 5cb8f36..6b7d4c6 100644 --- a/src/main/java/frc/robot/ControlPanelMap.java +++ b/src/main/java/frc/robot/ControlPanelMap.java @@ -1,11 +1,5 @@ package frc.robot; -import edu.wpi.first.wpilibj.GenericHID.Hand; -import edu.wpi.first.wpilibj.buttons.JoystickButton; -import frc.robot.commands.ArmPresetCommand; -import frc.robot.commands.ArmZero; -import frc.robot.commands.WristZero; - public class ControlPanelMap { static OI oi = Robot.oi; @@ -43,33 +37,8 @@ public static boolean toggleLevel() { return oi.controlPanel1.getRawButtonPressed(4 ); } - public static boolean toggleManual() { + public static boolean toggleManual() { return oi.controlPanel1.getRawButtonPressed(9); } -/* - public static boolean toggleArmControl() { - return oi.xbox.getXButtonPressed(); - } - public static boolean toggleArmManualControl() { - return oi.xbox.getAButtonPressed(); - } - public static boolean zeroWrist() { - return oi.xbox.getBackButtonPressed(); - } - public static boolean zeroShoulder() { - return oi.xbox.getStartButtonPressed(); - } - public static boolean enableWristLevelling() { - return oi.xbox.getBButtonPressed(); - } - - - public static boolean hatchPiston() { - return oi.xbox.getLeftBumperValue(); - } - public static boolean grabberPiston() { - return oi.xbox.getRightBumperValue(); - } */ - } \ No newline at end of file diff --git a/src/main/java/frc/robot/Main.java b/src/main/java/frc/robot/Main.java index 5b3238a..62856d2 100644 --- a/src/main/java/frc/robot/Main.java +++ b/src/main/java/frc/robot/Main.java @@ -1,10 +1,3 @@ -/*----------------------------------------------------------------------------*/ -/* Copyright (c) 2018 FIRST. All Rights Reserved. */ -/* Open Source Software - may be modified and shared by FRC teams. The code */ -/* must be accompanied by the FIRST BSD license file in the root directory of */ -/* the project. */ -/*----------------------------------------------------------------------------*/ - package frc.robot; import edu.wpi.first.wpilibj.RobotBase; diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index 08bcc13..f0e0696 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -10,7 +10,7 @@ import edu.wpi.first.wpilibj.command.Scheduler; import frc.robot.commands.ArmPresetCommand; import frc.robot.commands.ArmZero; -import frc.robot.commands.WristZero; +import frc.robot.commands.WristForceZero; public class OI { @@ -105,7 +105,7 @@ public void debugMode(){ cargoHatchPreset.whenPressed(null); cargoBallPreset.whenPressed(null); */ - ballCollectPreset.whenPressed(new WristZero()); + ballCollectPreset.whenPressed(new WristForceZero()); hatchCollectPreset.whenPressed(new ArmZero()); goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET,ConstantsMap.WRIST_MAX_ANGLE)); diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index ab45d8f..d56837a 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -7,10 +7,8 @@ package frc.robot; -import java.util.Arrays; import edu.wpi.cscore.UsbCamera; -import edu.wpi.cscore.VideoMode.PixelFormat; import edu.wpi.first.cameraserver.CameraServer; import edu.wpi.first.wpilibj.Compressor; import edu.wpi.first.wpilibj.TimedRobot; @@ -19,11 +17,8 @@ import edu.wpi.first.wpilibj.smartdashboard.SendableChooser; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import frc.robot.commands.ArmCommand2; -import frc.robot.commands.ArmPresetCommand; -import frc.robot.commands.ArmZero; import frc.robot.commands.DriveCommand; import frc.robot.commands.HatchGrabberCommand; -import frc.robot.commands.WristZero; import frc.robot.subsystems.ArmSubsystem2; import frc.robot.subsystems.DriveSubsystem; import frc.robot.subsystems.HatchGrabberSubsystem; @@ -171,7 +166,6 @@ public void autonomousInit() { // schedule the autonomous command (example) armSubsystem2.setShoulderSetPoint(armSubsystem2.getShoulderEncoderAngle()); - new WristZero().start();; } @@ -205,49 +199,7 @@ public void teleopInit() { */ @Override public void teleopPeriodic() { - if(debugMode){ - if(ControlPanelMap.inTake()){ - new ArmZero(); - } - if(ControlPanelMap.outTake()){ - new WristZero(); - } - } - /* if(XboxMap.runFollowLineCommand()){ - if(followLineCommand.isRunning()){ - followLineCommand.cancel(); - driveCommand.start(); - } - else{ - driveCommand.cancel(); - followLineCommand.start(); - } - - } */ - - /* if(XboxMap.toggleArmControl()){ - if(armCommand.isRunning()){ - armCommand.cancel(); - preset.start(); - } - else{ - preset.cancel(); - armCommand.start(); - - } - } - if(XboxMap.zeroWrist()){ - if(armCommand.isRunning()){ - armCommand.cancel(); - zeroWrist.start(); - } - else{ - zeroWrist.cancel(); - armCommand.start(); - - } - } */ SmartDashboard.putBoolean("Arm Control", armCommand.isRunning()); Scheduler.getInstance().run(); } diff --git a/src/main/java/frc/robot/TalonSet.java b/src/main/java/frc/robot/TalonSet.java deleted file mode 100644 index 5551c58..0000000 --- a/src/main/java/frc/robot/TalonSet.java +++ /dev/null @@ -1,49 +0,0 @@ -package frc.robot; - -import com.ctre.phoenix.motorcontrol.can.TalonSRX; -import com.ctre.phoenix.motorcontrol.ControlMode; -import com.ctre.phoenix.motorcontrol.FeedbackDevice; - -/* - * Controls a group of motors as a unit. - */ -public class TalonSet { - TalonSRX motors[]; - double dpt; - - public TalonSet(TalonSRX[] talons) { - motors = talons; - } - - public TalonSet(TalonSRX talon) { - motors = new TalonSRX[] { talon }; - - } - - public TalonSet setDistance(double dpt) { - this.dpt = dpt; - return this; - } - - public void set(double speed) { - for (TalonSRX motor : motors) motor.set(ControlMode.PercentOutput,speed); - } - - public double get() { - // As all members of a TalonSet should move in unison, - // if this value is incorrect, you have a bigger problem - // on your hands. - return motors[0].getMotorOutputPercent(); - } - - public int getEncoderTicks() { - return motors[0].getSelectedSensorPosition(); - } - public void zeroEncoder() { - System.out.println("Zeroed"); - motors[0].setSelectedSensorPosition(0); - } - public double getEncoderDistance() { - return getEncoderTicks() * dpt; - } -} diff --git a/src/main/java/frc/robot/commands/ArmCommand2.java b/src/main/java/frc/robot/commands/ArmCommand2.java index f7d3805..7e822f5 100644 --- a/src/main/java/frc/robot/commands/ArmCommand2.java +++ b/src/main/java/frc/robot/commands/ArmCommand2.java @@ -1,24 +1,15 @@ package frc.robot.commands; -import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; -import edu.wpi.first.wpilibj.PIDController; -import edu.wpi.first.wpilibj.PIDOutput; -import edu.wpi.first.wpilibj.PIDSource; -import edu.wpi.first.wpilibj.PIDSourceType; import edu.wpi.first.wpilibj.command.Command; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import frc.robot.ConstantsMap; import frc.robot.ControlPanelMap; import frc.robot.Robot; -import frc.robot.XboxMap; -import frc.robot.pids.EncoderMotorPID; -import frc.robot.ConstantsMap; import frc.robot.subsystems.ArmSubsystem2; public class ArmCommand2 extends Command { ArmSubsystem2 armSubsystem = Robot.armSubsystem2; - EncoderMotorPID wristLevelPID, armMovementPID; private boolean enableLevelWrist = true; boolean manualMode = true; private double shoulderAngle; @@ -52,17 +43,6 @@ protected void execute() { SmartDashboard.putBoolean("Manual Mode", manualMode); SmartDashboard.putBoolean("Level Mode", enableLevelWrist); - - - /* if(ControlPanelMap.zeroWrist()){ - armSubsystem.zeroWrist(); - wristAngle = armSubsystem.getWristEncoderAngle(); - } - else if(ControlPanelMap.zeroShoulder()){ - armSubsystem.zeroShoulder(); - shoulderAngle = armSubsystem.getShoulderEncoderAngle(); - - } */ /* if(ControlPanelMap.toggleArmManualControl()){ if(manualMode){ shoulderAngle = armSubsystem.getShoulderEncoderAngle(); @@ -105,18 +85,7 @@ else if(ControlPanelMap.zeroShoulder()){ if(Math.abs((wristAngle + amountToMoveWristJoint)-actualWristAngle) ConstantsMap.SHOULDER_MAX_ANGLE){ - shoulderAngle = ConstantsMap.SHOULDER_MAX_ANGLE; - } - if(shoulderAngle < ConstantsMap.SHOULDER_MIN_ANGLE){ - shoulderAngle = ConstantsMap.SHOULDER_MIN_ANGLE; - } - if(wristAngle > ConstantsMap.WRIST_MAX_ANGLE){ - wristAngle = ConstantsMap.WRIST_MAX_ANGLE; - } - if(wristAngle < ConstantsMap.WRIST_MIN_ANGLE_DOWN){ - wristAngle = ConstantsMap.WRIST_MIN_ANGLE_DOWN; - } */ + if(shoulderAngle != oldShoulderAngle){ armSubsystem.setShoulderSetPoint(shoulderAngle); diff --git a/src/main/java/frc/robot/commands/ArmPresetCommand.java b/src/main/java/frc/robot/commands/ArmPresetCommand.java index b6c7c17..da77321 100644 --- a/src/main/java/frc/robot/commands/ArmPresetCommand.java +++ b/src/main/java/frc/robot/commands/ArmPresetCommand.java @@ -1,10 +1,7 @@ package frc.robot.commands; import edu.wpi.first.wpilibj.command.Command; -import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; -import frc.robot.ConstantsMap; import frc.robot.Robot; -import frc.robot.XboxMap; import frc.robot.subsystems.ArmSubsystem2; public class ArmPresetCommand extends Command { diff --git a/src/main/java/frc/robot/commands/ArmZero.java b/src/main/java/frc/robot/commands/ArmZero.java index b2ab495..25c7e8f 100644 --- a/src/main/java/frc/robot/commands/ArmZero.java +++ b/src/main/java/frc/robot/commands/ArmZero.java @@ -1,26 +1,14 @@ package frc.robot.commands; -import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; -import edu.wpi.first.wpilibj.PIDController; -import edu.wpi.first.wpilibj.PIDOutput; -import edu.wpi.first.wpilibj.PIDSource; -import edu.wpi.first.wpilibj.PIDSourceType; -import edu.wpi.first.wpilibj.command.Command; -import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import frc.robot.Robot; -import frc.robot.XboxMap; -import frc.robot.pids.EncoderMotorPID; -import frc.robot.TalonSet; +import edu.wpi.first.wpilibj.command.Command; import frc.robot.ConstantsMap; import frc.robot.subsystems.ArmSubsystem2; public class ArmZero extends Command { ArmSubsystem2 armSubsystem = Robot.armSubsystem2; - private double shoulderAngle; - private double wristAngle; - private double actualShoulderAngle; - private double actualWristAngle; + public ArmZero() { requires(armSubsystem); } @@ -29,7 +17,8 @@ public ArmZero() { @Override protected void initialize() { System.out.println("Arm Zero Started"); - armSubsystem.setShoulderJointSpeed(-.1); + armSubsystem.setWristSetPoint(ConstantsMap.WRIST_MAX_ANGLE); + armSubsystem.setShoulderJointSpeed(0); } diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index 0af524b..8dd680d 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -13,7 +13,6 @@ import frc.robot.subsystems.ArmSubsystem2; import frc.robot.subsystems.DriveSubsystem; import frc.robot.ConstantsMap; -import edu.wpi.first.wpilibj.PowerDistributionPanel; import edu.wpi.first.wpilibj.command.Command; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; @@ -29,15 +28,12 @@ public class DriveCommand extends Command { boolean brakeState = false; boolean rumble; long lastPressed = 0; - //Things for follow line command - private boolean runFollowLineCommand; public DriveCommand() { requires(driveSubsystem); //Set follow Line command booleans - runFollowLineCommand = false; } // Called just before this Command runs the first time @@ -51,25 +47,7 @@ protected void initialize() { // Called repeatedly when this Command is scheduled to run protected void execute() { - // Normal Driving - // if(attack3Map.turtleButton()) { - // turtlemode = !turtlemode; - // } - /* if (runFollowLineCommand) { - System.out.println("fuck me"); - if (!fLC.isFinished()) { - if (XboxMap.interruptFollowLineCommand()) { - System.out.println("bu hao"); - fLC.kill();//Make this a thing - } else { - System.out.println("jfkdlsajklfdsajklfdsa"); - fLC.execute(); - } - } else { - runFollowLineCommand = false; - } - } else { */ - //System.out.println("We fucked"); + double speedLeft = XboxMap.left(); speedLeft *= -1; @@ -118,17 +96,6 @@ else if(rumble && ((System.currentTimeMillis()-lastPressed)>500)){ rumble = false; } - - - //Check for follow line command call - //The runFollowLineCommand() is called when the A button is calledd - /* if (XboxMap.runFollowLineCommand()) { - System.out.println("Cyka Blyat"); - runFollowLineCommand = true; - fLC = new FollowLineCommand(); - fLC.initialize(); - } */ - //} //Putting Data up displayData(); diff --git a/src/main/java/frc/robot/commands/HatchGrabberCommand.java b/src/main/java/frc/robot/commands/HatchGrabberCommand.java index 42e9b6b..066088f 100644 --- a/src/main/java/frc/robot/commands/HatchGrabberCommand.java +++ b/src/main/java/frc/robot/commands/HatchGrabberCommand.java @@ -10,19 +10,15 @@ import edu.wpi.first.wpilibj.command.Command; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; -import frc.robot.ConstantsMap; import frc.robot.ControlPanelMap; import frc.robot.Robot; -import frc.robot.XboxMap; import frc.robot.subsystems.HatchGrabberSubsystem; public class HatchGrabberCommand extends Command { HatchGrabberSubsystem hatchGrabberSubsystem = Robot.hatchGrabberSubsystem; - private boolean grabberOut = false; - private boolean hatchReleased = false; + private boolean hatchMode; - private double lastPressedG = 0; - private double lastPressedH = 0; + public HatchGrabberCommand() { requires(hatchGrabberSubsystem); diff --git a/src/main/java/frc/robot/commands/WristZero.java b/src/main/java/frc/robot/commands/WristForceZero.java similarity index 67% rename from src/main/java/frc/robot/commands/WristZero.java rename to src/main/java/frc/robot/commands/WristForceZero.java index d844391..ff8e6d8 100644 --- a/src/main/java/frc/robot/commands/WristZero.java +++ b/src/main/java/frc/robot/commands/WristForceZero.java @@ -1,27 +1,13 @@ package frc.robot.commands; -import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; - -import edu.wpi.first.wpilibj.PIDController; -import edu.wpi.first.wpilibj.PIDOutput; -import edu.wpi.first.wpilibj.PIDSource; -import edu.wpi.first.wpilibj.PIDSourceType; import edu.wpi.first.wpilibj.command.Command; -import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import frc.robot.Robot; -import frc.robot.XboxMap; -import frc.robot.pids.EncoderMotorPID; -import frc.robot.TalonSet; -import frc.robot.ConstantsMap; + import frc.robot.subsystems.ArmSubsystem2; -public class WristZero extends Command { +public class WristForceZero extends Command { ArmSubsystem2 armSubsystem = Robot.armSubsystem2; - private double shoulderAngle; - private double wristAngle; - private double actualShoulderAngle; - private double actualWristAngle; - public WristZero() { + public WristForceZero() { requires(armSubsystem); } diff --git a/src/main/java/frc/robot/pids/EncoderMotorPID.java b/src/main/java/frc/robot/pids/EncoderMotorPID.java deleted file mode 100644 index 1d5c848..0000000 --- a/src/main/java/frc/robot/pids/EncoderMotorPID.java +++ /dev/null @@ -1,88 +0,0 @@ -package frc.robot.pids; - -import frc.robot.TalonSet; - -import edu.wpi.first.wpilibj.Encoder; -import edu.wpi.first.wpilibj.PIDController; -import edu.wpi.first.wpilibj.PIDOutput; -import edu.wpi.first.wpilibj.PIDSource; -import edu.wpi.first.wpilibj.PIDSourceType; - -public class EncoderMotorPID implements PIDSource, PIDOutput { - TalonSet motor; - PIDController pid; - PIDSourceType pidSourceType; - PIDSource source; - double dpt; - - public EncoderMotorPID(TalonSet mot, double kp, double ki, double kd, double kf) { - motor = mot; - pid = new PIDController(kp, ki, kd, kf, this, this); - pidSourceType = PIDSourceType.kDisplacement; - - } - public PIDController getPID(){ - return this.pid; - } - public EncoderMotorPID setP(double kp) { - pid.setP(kp); - return this; - } - - public EncoderMotorPID setI(double ki) { - pid.setI(ki); - return this; - } - - public EncoderMotorPID setD(double kd) { - pid.setD(kd); - return this; - } - - /* public EncoderMotorPID setDistancePerTick(double dpt) { - encoder.setDistancePerPulse(dpt); - return this; - } */ - - public EncoderMotorPID setOutputRange(double l, double h) { - pid.setOutputRange(l,h); - return this; - } - - public double getSetpoint() { - return pid.getSetpoint(); - } - - public void pidWrite(double speed) { - motor.set(speed); - } - - public void setPIDSourceType(PIDSourceType t) { - pidSourceType = t; - } - - public PIDSourceType getPIDSourceType() { - return pidSourceType; - } - - public double pidGet() { - return motor.getEncoderDistance(); - } - - public EncoderMotorPID setSetpoint(double sp) { - pid.setSetpoint(sp); - return this; - } - - public boolean isEnabled() { - return pid.isEnabled(); - } - - public void enable() { - pid.enable(); - } - - public void disable() { - pid.disable(); - } -} diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index e0bb84f..ff47bb7 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -9,20 +9,15 @@ import com.ctre.phoenix.motorcontrol.ControlMode; import com.ctre.phoenix.motorcontrol.FeedbackDevice; -import com.ctre.phoenix.motorcontrol.LimitSwitchNormal; -import com.ctre.phoenix.motorcontrol.LimitSwitchSource; + import com.ctre.phoenix.motorcontrol.NeutralMode; import com.ctre.phoenix.motorcontrol.StatusFrameEnhanced; import com.ctre.phoenix.motorcontrol.can.TalonSRX; -import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; import edu.wpi.first.wpilibj.DigitalInput; -import edu.wpi.first.wpilibj.Encoder; import edu.wpi.first.wpilibj.command.Subsystem; -import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import frc.robot.ConstantsMap; import frc.robot.RobotMap; -import frc.robot.TalonSet; import frc.robot.commands.ArmCommand2; /** @@ -250,7 +245,7 @@ public void zeroWrist() { public void zeroShoulder() { shoulder.setSelectedSensorPosition(0, ConstantsMap.kPIDLoopIdx, ConstantsMap.kTimeoutMs); } - + public boolean getShoulderLowerLimit(){ return !lowerLimit.get(); diff --git a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java index 4934b2f..52c2e21 100644 --- a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java +++ b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java @@ -11,7 +11,6 @@ import com.ctre.phoenix.motorcontrol.can.TalonSRX; import edu.wpi.first.wpilibj.DoubleSolenoid; -import edu.wpi.first.wpilibj.Solenoid; import edu.wpi.first.wpilibj.DoubleSolenoid.Value; import edu.wpi.first.wpilibj.command.Subsystem; import frc.robot.ConstantsMap; From 4d360bbce3172ca06726d738291714128a36df57 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Tue, 19 Feb 2019 18:19:33 -0600 Subject: [PATCH 099/131] presets better --- src/main/java/frc/robot/ConstantsMap.java | 8 +-- src/main/java/frc/robot/OI.java | 25 ++++---- .../frc/robot/commands/ArmPresetCommand.java | 37 +++++++++--- src/main/java/frc/robot/commands/GoHome.java | 57 +++++++++++++++++++ 4 files changed, 104 insertions(+), 23 deletions(-) create mode 100644 src/main/java/frc/robot/commands/GoHome.java diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index d4a2f9e..fed0c79 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -97,15 +97,15 @@ public class ConstantsMap { public static final double ROCKET_HATCH_PRESET_2 = 8.0; public static final double ROCKET_HATCH_PRESET_3 = .0; public static final double ROCKET_BALL_PRESET_1 = -40; - public static final double ROCKET_BALL_PRESET_2 = 6; - public static final double ROCKET_BALL_PRESET_3 = 50; + public static final double ROCKET_BALL_PRESET_2 = 0; + public static final double ROCKET_BALL_PRESET_3 = 46; public static final double CARGO_BALL_PRESET = -20.0; public static final double CARGO_HATCH_PRESET = -20.0; public static final double HATCH_COLLECT_PRESET = -20.0; - public static final double BALL_COLLECT_WRIST_PRESET = -30.0; - public static final double BALL_COLLECT_SHOULDER_PRESET = -20.0; + public static final double BALL_COLLECT_WRIST_PRESET = -3.0; + public static final double BALL_COLLECT_SHOULDER_PRESET = -52.0; public static final double GO_HOME_PRESET = SHOULDER_MIN_ANGLE; diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index f0e0696..d30184d 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -10,6 +10,7 @@ import edu.wpi.first.wpilibj.command.Scheduler; import frc.robot.commands.ArmPresetCommand; import frc.robot.commands.ArmZero; +import frc.robot.commands.GoHome; import frc.robot.commands.WristForceZero; @@ -62,20 +63,20 @@ public void normalMode(){ System.out.println("Normal Mode OI"); - rocketHatchPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_1,-ConstantsMap.ROCKET_HATCH_PRESET_1)); - rocketHatchPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_2,-ConstantsMap.ROCKET_HATCH_PRESET_2)); - rocketHatchPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_3,-ConstantsMap.ROCKET_HATCH_PRESET_3)); - rocketBallPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_1,-ConstantsMap.ROCKET_BALL_PRESET_1)); - rocketBallPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_2,-ConstantsMap.ROCKET_BALL_PRESET_2)); - rocketBallPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_3,-ConstantsMap.ROCKET_BALL_PRESET_3)); + rocketHatchPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_1)); + rocketHatchPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_2)); + rocketHatchPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_HATCH_PRESET_3)); + rocketBallPreset1.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_1)); + rocketBallPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_2)); + rocketBallPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_3)); - cargoHatchPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_HATCH_PRESET,-ConstantsMap.CARGO_HATCH_PRESET)); - cargoBallPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_BALL_PRESET,-ConstantsMap.CARGO_BALL_PRESET)); + cargoHatchPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_HATCH_PRESET)); + cargoBallPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_BALL_PRESET)); - ballCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.BALL_COLLECT_SHOULDER_PRESET,-ConstantsMap.BALL_COLLECT_WRIST_PRESET)); - hatchCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.HATCH_COLLECT_PRESET,-ConstantsMap.HATCH_COLLECT_PRESET)); + ballCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.BALL_COLLECT_SHOULDER_PRESET,ConstantsMap.BALL_COLLECT_WRIST_PRESET)); + hatchCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.HATCH_COLLECT_PRESET)); - goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET,ConstantsMap.WRIST_MAX_ANGLE)); + goHome.whenPressed(new GoHome()); } public void debugMode(){ rocketBallPreset1 = new JoystickButton(controlPanel1, 5); @@ -108,7 +109,7 @@ public void debugMode(){ ballCollectPreset.whenPressed(new WristForceZero()); hatchCollectPreset.whenPressed(new ArmZero()); - goHome.whenPressed(new ArmPresetCommand(ConstantsMap.GO_HOME_PRESET,ConstantsMap.WRIST_MAX_ANGLE)); + goHome.whenPressed(new GoHome()); } public void unbindButtons() { diff --git a/src/main/java/frc/robot/commands/ArmPresetCommand.java b/src/main/java/frc/robot/commands/ArmPresetCommand.java index da77321..3b9e6b8 100644 --- a/src/main/java/frc/robot/commands/ArmPresetCommand.java +++ b/src/main/java/frc/robot/commands/ArmPresetCommand.java @@ -6,14 +6,23 @@ public class ArmPresetCommand extends Command { ArmSubsystem2 armSubsystem = Robot.armSubsystem2; - double sPreset; - double wPreset; - + double sPreset = 1000; + double wPreset = 1000; + boolean shoulderFinished; + boolean levelMode; public ArmPresetCommand(double sAngle,double wAngle) { // Use requires() here to declare subsystem dependencies requires(armSubsystem); sPreset = sAngle; wPreset = wAngle; + levelMode = false; + + } + public ArmPresetCommand(double sAngle) { + // Use requires() here to declare subsystem dependencies + requires(armSubsystem); + sPreset = sAngle; + levelMode = true; } @@ -23,14 +32,22 @@ protected void initialize() { System.out.println("Start Preset: " + sPreset + " Wrist: " + wPreset); armSubsystem.setShoulderSetPoint(sPreset); - - //armSubsystem.setWristSetPoint(wPreset); + } // Called repeatedly when this Command is scheduled to run @Override protected void execute() { - armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); + if(levelMode){ + armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); + } + else{ + if(Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<2 && !shoulderFinished){ + shoulderFinished = true; + armSubsystem.setWristSetPoint(wPreset); + } + } + //armSubsyste } @@ -38,7 +55,13 @@ protected void execute() { @Override protected boolean isFinished() { //return false; - return Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<.5; + if(levelMode){ + return Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<2; + } + else{ + return Math.abs(armSubsystem.getWristEncoderAngle() - wPreset)<2; + } + } // Called once after isFinished returns true diff --git a/src/main/java/frc/robot/commands/GoHome.java b/src/main/java/frc/robot/commands/GoHome.java new file mode 100644 index 0000000..3ca3856 --- /dev/null +++ b/src/main/java/frc/robot/commands/GoHome.java @@ -0,0 +1,57 @@ +package frc.robot.commands; + +import edu.wpi.first.wpilibj.command.Command; +import frc.robot.ConstantsMap; +import frc.robot.Robot; +import frc.robot.subsystems.ArmSubsystem2; + +public class GoHome extends Command { + ArmSubsystem2 armSubsystem = Robot.armSubsystem2; + + public GoHome() { + // Use requires() here to declare subsystem dependencies + requires(armSubsystem); + + } + + // Called just before this Command runs the first time + @Override + protected void initialize() { + + armSubsystem.setShoulderSetPoint(ConstantsMap.SHOULDER_MIN_ANGLE); + armSubsystem.setWristSetPoint(ConstantsMap.SHOULDER_MIN_ANGLE); + + + } + + // Called repeatedly when this Command is scheduled to run + @Override + protected void execute() { + + //armSubsyste + + } + + // Make this return true when this Command no longer needs to run execute() + @Override + protected boolean isFinished() { + //return false; + + return Math.abs(armSubsystem.getShoulderEncoderAngle() - ConstantsMap.SHOULDER_MIN_ANGLE)<1; + + + } + + // Called once after isFinished returns true + @Override + protected void end() { + System.out.println("Preset Finished at: " + armSubsystem.getShoulderEncoderAngle() + " degress"); + + } + // Called when another command which requires one or more of the same + // subsystems is scheduled to run + @Override + protected void interrupted() { + System.out.println("Preset Interupt"); + } +} From 721155fbcd3267fc6026ba2c52b587ace6165599 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Mon, 25 Feb 2019 19:24:57 -0600 Subject: [PATCH 100/131] saturday stuff --- src/main/java/frc/robot/ConstantsMap.java | 9 +++++---- src/main/java/frc/robot/Robot.java | 9 ++++++++- src/main/java/frc/robot/commands/ArmCommand2.java | 6 +++--- src/main/java/frc/robot/commands/ArmPresetCommand.java | 6 +++++- src/main/java/frc/robot/commands/DriveCommand.java | 4 ++-- src/main/java/frc/robot/subsystems/ArmSubsystem2.java | 2 ++ src/main/java/frc/robot/subsystems/DriveSubsystem.java | 6 ++++-- 7 files changed, 29 insertions(+), 13 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index fed0c79..deefe55 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -18,6 +18,7 @@ public class ConstantsMap { public static final double TURTLE_SPEED = 1; //to be determined public static final double JOYSTICK_SENSITIVITY = .1; //to be determined + public static final double TIP_TOLERANCE = 8; //to be determined //for line follower public static final double DISTANCE_BETWEEN_SENSORS = 6; //inches @@ -49,7 +50,7 @@ public class ConstantsMap { public static final double WRIST_ENCODER_TICKS_PER_ROTATION = 4096; public static final double WRIST_ENCODER_ANGLE_PER_TICK = 360/((double)WRIST_ENCODER_TICKS_PER_ROTATION * 63); public static final double WRIST_MIN_ANGLE_DOWN = -10.0; - public static final double WRIST_MIN_ANGLE_UP = -55.0; + public static final double WRIST_MIN_ANGLE_UP = -60.0; public static final double WRIST_MAX_ANGLE = 80.0; public static final double WRIST_IN_ANGLE = 60.0; @@ -93,9 +94,9 @@ public class ConstantsMap { // PRESETS!!! public static final boolean isHatchGrabber = true; - public static final double ROCKET_HATCH_PRESET_1 = 0; - public static final double ROCKET_HATCH_PRESET_2 = 8.0; - public static final double ROCKET_HATCH_PRESET_3 = .0; + public static final double ROCKET_HATCH_PRESET_1 = -54; + public static final double ROCKET_HATCH_PRESET_2 = -6.0; + public static final double ROCKET_HATCH_PRESET_3 = 29; public static final double ROCKET_BALL_PRESET_1 = -40; public static final double ROCKET_BALL_PRESET_2 = 0; public static final double ROCKET_BALL_PRESET_3 = 46; diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index d56837a..f45d559 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -18,6 +18,7 @@ import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import frc.robot.commands.ArmCommand2; import frc.robot.commands.DriveCommand; +import frc.robot.commands.GoHome; import frc.robot.commands.HatchGrabberCommand; import frc.robot.subsystems.ArmSubsystem2; import frc.robot.subsystems.DriveSubsystem; @@ -98,7 +99,7 @@ public void robotPeriodic() { SmartDashboard.putBoolean("Manual Mode", armSubsystem2.getManualMode()); SmartDashboard.putBoolean("Level Mode", armSubsystem2.getLevelMode()); - + SmartDashboard.putBoolean("Tipping", driveSubsystem.checkTip()); armSubsystem2.checkShoulderLimits(); armSubsystem2.checkWristLimits(); @@ -187,6 +188,8 @@ public void teleopInit() { hgCommand.start(); armSubsystem2.setShoulderSetPoint(armSubsystem2.getShoulderEncoderAngle()); + + //armCommand.start(); //driveCommand.start(); @@ -201,6 +204,10 @@ public void teleopInit() { public void teleopPeriodic() { SmartDashboard.putBoolean("Arm Control", armCommand.isRunning()); + + if(driveSubsystem.checkTip()){ + new GoHome().start(); + } Scheduler.getInstance().run(); } diff --git a/src/main/java/frc/robot/commands/ArmCommand2.java b/src/main/java/frc/robot/commands/ArmCommand2.java index 7e822f5..260b440 100644 --- a/src/main/java/frc/robot/commands/ArmCommand2.java +++ b/src/main/java/frc/robot/commands/ArmCommand2.java @@ -42,7 +42,7 @@ protected void initialize() { protected void execute() { SmartDashboard.putBoolean("Manual Mode", manualMode); SmartDashboard.putBoolean("Level Mode", enableLevelWrist); - + /* if(ControlPanelMap.toggleArmManualControl()){ if(manualMode){ shoulderAngle = armSubsystem.getShoulderEncoderAngle(); @@ -75,8 +75,8 @@ protected void execute() { armSubsystem.setWristJointSpeed(.1 * amountToMoveWristJoint); } */ if(armSubsystem.getManualMode()){ - armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint*2); - armSubsystem.setWristJointSpeed(amountToMoveWristJoint*2); + armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint/2); + armSubsystem.setWristJointSpeed(amountToMoveWristJoint/2); } else{ if(Math.abs((shoulderAngle + amountToMoveShoulderJoint)-actualShoulderAngle) .1 || Math.abs(ControlPanelMap.controlWristJoint()) > .1){ + return true; + } + else if(levelMode){ return Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<2; } else{ diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index 8dd680d..97ad2c9 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -66,8 +66,8 @@ protected void execute() { speedRight *= ConstantsMap.TURTLE_SPEED; } if(armSubsystem.getShoulderEncoderAngle()>0){ - speedLeft *= .5; - speedRight *= .5; + speedLeft *= .35; + speedRight *= .35; } driveSubsystem.setLeftSpeed(speedLeft*ConstantsMap.TURTLE_SPEED); diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index ff47bb7..0214293 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -50,6 +50,8 @@ public ArmSubsystem2() { shoulder = new TalonSRX(RobotMap.SHOULDER_JOINT_RIGHT_PORT); shoulderSlave = new TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); shoulderSlave.configFactoryDefault(); + shoulderSlave.setNeutralMode(NeutralMode.Brake); + shoulder.setInverted(false); shoulderSlave.setInverted(true); shoulder.setSensorPhase(true); diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index 5758eff..b29512a 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -67,11 +67,13 @@ public DriveSubsystem() { pdp = new PowerDistributionPanel(11); - + SmartDashboard.putData(ahrs); } - + public boolean checkTip(){ + return (Math.abs(ahrs.getRoll()) > ConstantsMap.TIP_TOLERANCE); + } public void initDefaultCommand() { // Set the default command for a subsystem here. setDefaultCommand(new DriveCommand()); From 58f60f701a0b0481e3a34430ecc771d9b417bb11 Mon Sep 17 00:00:00 2001 From: ayush17agarwal Date: Mon, 25 Feb 2019 21:45:09 -0600 Subject: [PATCH 101/131] Monday 2/25 code that has finished and working preset program. DO NOT TOUCH PRESETS! --- src/main/java/frc/robot/ConstantsMap.java | 10 +++++----- src/main/java/frc/robot/OI.java | 3 ++- src/main/java/frc/robot/commands/ArmCommand2.java | 1 + 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index deefe55..fc345c2 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -96,17 +96,17 @@ public class ConstantsMap { public static final boolean isHatchGrabber = true; public static final double ROCKET_HATCH_PRESET_1 = -54; public static final double ROCKET_HATCH_PRESET_2 = -6.0; - public static final double ROCKET_HATCH_PRESET_3 = 29; - public static final double ROCKET_BALL_PRESET_1 = -40; - public static final double ROCKET_BALL_PRESET_2 = 0; + public static final double ROCKET_HATCH_PRESET_3 = 38; + public static final double ROCKET_BALL_PRESET_1 = -35; + public static final double ROCKET_BALL_PRESET_2 = 5; public static final double ROCKET_BALL_PRESET_3 = 46; public static final double CARGO_BALL_PRESET = -20.0; public static final double CARGO_HATCH_PRESET = -20.0; public static final double HATCH_COLLECT_PRESET = -20.0; - public static final double BALL_COLLECT_WRIST_PRESET = -3.0; - public static final double BALL_COLLECT_SHOULDER_PRESET = -52.0; + public static final double BALL_COLLECT_WRIST_PRESET = -11.0; + public static final double BALL_COLLECT_SHOULDER_PRESET = -46.0; public static final double GO_HOME_PRESET = SHOULDER_MIN_ANGLE; diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index d30184d..ff5b60a 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -73,7 +73,8 @@ public void normalMode(){ cargoHatchPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_HATCH_PRESET)); cargoBallPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_BALL_PRESET)); - ballCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.BALL_COLLECT_SHOULDER_PRESET,ConstantsMap.BALL_COLLECT_WRIST_PRESET)); + //ballCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.BALL_COLLECT_SHOULDER_PRESET,ConstantsMap.BALL_COLLECT_WRIST_PRESET)); + ballCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.BALL_COLLECT_SHOULDER_PRESET, ConstantsMap.BALL_COLLECT_WRIST_PRESET)); hatchCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.HATCH_COLLECT_PRESET)); goHome.whenPressed(new GoHome()); diff --git a/src/main/java/frc/robot/commands/ArmCommand2.java b/src/main/java/frc/robot/commands/ArmCommand2.java index 260b440..39486a8 100644 --- a/src/main/java/frc/robot/commands/ArmCommand2.java +++ b/src/main/java/frc/robot/commands/ArmCommand2.java @@ -18,6 +18,7 @@ public class ArmCommand2 extends Command { private double actualWristAngle; private double oldShoulderAngle; private double oldWristAngle; + public ArmCommand2() { requires(armSubsystem); } From 7643bd5cf1e6a514dc3a1f021b0549ca97fd080c Mon Sep 17 00:00:00 2001 From: ayush17agarwal Date: Mon, 4 Mar 2019 20:59:24 -0600 Subject: [PATCH 102/131] Updated Presets and fixed watchdog stuff --- src/main/java/frc/robot/ConstantsMap.java | 4 ++-- src/main/java/frc/robot/commands/GoHome.java | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index fc345c2..f79f95d 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -72,7 +72,7 @@ public class ConstantsMap { public static final int SHOULDER_FOLLOW_DISTANCE = 20; public static final double SHOULDER_CHANGE_SETPOINT_SPEED = .5; - public static final int SHOULDER_WRIST_FOLD_ANGLE = -55; + public static final int SHOULDER_WRIST_FOLD_ANGLE = -60; public static final int SHOULDER_VELOCITY = 24000/2; public static final int SHOULDER_ACCEL = 24000 ; @@ -104,7 +104,7 @@ public class ConstantsMap { public static final double CARGO_BALL_PRESET = -20.0; public static final double CARGO_HATCH_PRESET = -20.0; - public static final double HATCH_COLLECT_PRESET = -20.0; + public static final double HATCH_COLLECT_PRESET = -59.0; public static final double BALL_COLLECT_WRIST_PRESET = -11.0; public static final double BALL_COLLECT_SHOULDER_PRESET = -46.0; diff --git a/src/main/java/frc/robot/commands/GoHome.java b/src/main/java/frc/robot/commands/GoHome.java index 3ca3856..8452e3a 100644 --- a/src/main/java/frc/robot/commands/GoHome.java +++ b/src/main/java/frc/robot/commands/GoHome.java @@ -19,7 +19,7 @@ public GoHome() { protected void initialize() { armSubsystem.setShoulderSetPoint(ConstantsMap.SHOULDER_MIN_ANGLE); - armSubsystem.setWristSetPoint(ConstantsMap.SHOULDER_MIN_ANGLE); + armSubsystem.setWristSetPoint(ConstantsMap.WRIST_MAX_ANGLE); } From 22ea57ad054a113863342ce1d9c9610404a66a3c Mon Sep 17 00:00:00 2001 From: ayush17agarwal Date: Tue, 5 Mar 2019 17:25:19 -0600 Subject: [PATCH 103/131] updated driving changes --- src/main/java/frc/robot/commands/DriveCommand.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index 97ad2c9..3a92867 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -66,8 +66,8 @@ protected void execute() { speedRight *= ConstantsMap.TURTLE_SPEED; } if(armSubsystem.getShoulderEncoderAngle()>0){ - speedLeft *= .35; - speedRight *= .35; + speedLeft *= .6; + speedRight *= .6; } driveSubsystem.setLeftSpeed(speedLeft*ConstantsMap.TURTLE_SPEED); From cba820432abc64146f8bbfedb5a957276cd8a830 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Tue, 5 Mar 2019 17:36:04 -0600 Subject: [PATCH 104/131] camerastuff --- src/main/java/frc/robot/ControlPanelMap.java | 6 ++++-- src/main/java/frc/robot/OI.java | 4 ++-- src/main/java/frc/robot/Robot.java | 17 +++++++++++++---- 3 files changed, 19 insertions(+), 8 deletions(-) diff --git a/src/main/java/frc/robot/ControlPanelMap.java b/src/main/java/frc/robot/ControlPanelMap.java index 6b7d4c6..abe21d6 100644 --- a/src/main/java/frc/robot/ControlPanelMap.java +++ b/src/main/java/frc/robot/ControlPanelMap.java @@ -34,8 +34,10 @@ public static boolean toggleDebug() { return oi.controlPanel1.getRawButtonPressed(11); } public static boolean toggleLevel() { - return oi.controlPanel1.getRawButtonPressed(4 - ); + return oi.controlPanel1.getRawButtonPressed(4); + } + public static boolean switchCam() { + return oi.controlPanel1.getRawButtonPressed(4); } public static boolean toggleManual() { return oi.controlPanel1.getRawButtonPressed(9); diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index ff5b60a..583b959 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -53,7 +53,7 @@ public void normalMode(){ rocketHatchPreset3 = new JoystickButton(controlPanel1, 10); cargoBallPreset = new JoystickButton(controlPanel1, 3); - cargoHatchPreset = new JoystickButton(controlPanel1, 4); + //cargoHatchPreset = new JoystickButton(controlPanel1, 4); ballCollectPreset = new JoystickButton(controlPanel1, 1); hatchCollectPreset = new JoystickButton(controlPanel1,2); @@ -70,7 +70,7 @@ public void normalMode(){ rocketBallPreset2.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_2)); rocketBallPreset3.whenPressed(new ArmPresetCommand(ConstantsMap.ROCKET_BALL_PRESET_3)); - cargoHatchPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_HATCH_PRESET)); + //cargoHatchPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_HATCH_PRESET)); cargoBallPreset.whenPressed(new ArmPresetCommand(ConstantsMap.CARGO_BALL_PRESET)); //ballCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.BALL_COLLECT_SHOULDER_PRESET,ConstantsMap.BALL_COLLECT_WRIST_PRESET)); diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index f45d559..3771e56 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -39,7 +39,7 @@ public class Robot extends TimedRobot { public static HatchGrabberSubsystem hatchGrabberSubsystem = new HatchGrabberSubsystem(); - UsbCamera camera; + UsbCamera groundCam,grabCam; Command autonomousCommand; Command driveCommand; Command followLineCommand; @@ -69,10 +69,16 @@ public void robotInit() { server = CameraServer.getInstance(); debugMode = false; - //server.startAutomaticCapture("Ground",0); + groundCam = new UsbCamera("GroundCam", 0); + grabCam = new UsbCamera("GrabCam", 1); } - public boolean getDebug(){ - return debugMode; + public void switchCam(){ + if(server.getServer().getSource() == grabCam){ + server.getServer().setSource(groundCam); + } + else{ + server.getServer().setSource(grabCam); + } } /** @@ -208,6 +214,9 @@ public void teleopPeriodic() { if(driveSubsystem.checkTip()){ new GoHome().start(); } + if(ControlPanelMap.switchCam() && !debugMode){ + switchCam(); + } Scheduler.getInstance().run(); } From 70ee6b6c7ddea7ede6d8a99ca69f327b521c6a9e Mon Sep 17 00:00:00 2001 From: ayush17agarwal Date: Tue, 5 Mar 2019 18:17:47 -0600 Subject: [PATCH 105/131] camera setup 2 --- src/main/java/frc/robot/OI.java | 2 +- src/main/java/frc/robot/Robot.java | 2 +- src/main/java/frc/robot/XboxMap.java | 5 +++++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index 583b959..92e0813 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -18,7 +18,7 @@ public class OI { //User interface Constants public double attackThrottleSensitivity=.1; //Controllers - public static XboxController xbox,ps4; + public static XboxController xbox; public static Joystick controlPanel1,controlPanel2; public JoystickButton rocketHatchPreset1, diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 3771e56..c3e512c 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -214,7 +214,7 @@ public void teleopPeriodic() { if(driveSubsystem.checkTip()){ new GoHome().start(); } - if(ControlPanelMap.switchCam() && !debugMode){ + if((ControlPanelMap.switchCam() || XboxMap.switchCam()) && !debugMode){ switchCam(); } Scheduler.getInstance().run(); diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index 820a6c2..de11efe 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -10,6 +10,8 @@ import edu.wpi.first.wpilibj.GenericHID.Hand; import edu.wpi.first.wpilibj.GenericHID.RumbleType; + + public class XboxMap { static OI oi = Robot.oi; @@ -18,6 +20,9 @@ public static double right() { return -oi.xbox.getY(Hand.kRight); } + public static boolean switchCam() { + return oi.xbox.getAButton(); + } public static double left() { return oi.xbox.getY(Hand.kLeft); } From 5db37d04531124d3d250f6d49f29c50479855838 Mon Sep 17 00:00:00 2001 From: ayush17agarwal Date: Tue, 5 Mar 2019 20:43:44 -0600 Subject: [PATCH 106/131] updated changes --- src/main/java/frc/robot/ConstantsMap.java | 4 ++-- src/main/java/frc/robot/ControlPanelMap.java | 2 -- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index f79f95d..d0481c9 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -72,7 +72,7 @@ public class ConstantsMap { public static final int SHOULDER_FOLLOW_DISTANCE = 20; public static final double SHOULDER_CHANGE_SETPOINT_SPEED = .5; - public static final int SHOULDER_WRIST_FOLD_ANGLE = -60; + public static final int SHOULDER_WRIST_FOLD_ANGLE = -63; public static final int SHOULDER_VELOCITY = 24000/2; public static final int SHOULDER_ACCEL = 24000 ; @@ -105,7 +105,7 @@ public class ConstantsMap { public static final double CARGO_HATCH_PRESET = -20.0; public static final double HATCH_COLLECT_PRESET = -59.0; - public static final double BALL_COLLECT_WRIST_PRESET = -11.0; + public static final double BALL_COLLECT_WRIST_PRESET = -12.0; public static final double BALL_COLLECT_SHOULDER_PRESET = -46.0; diff --git a/src/main/java/frc/robot/ControlPanelMap.java b/src/main/java/frc/robot/ControlPanelMap.java index abe21d6..639ff9b 100644 --- a/src/main/java/frc/robot/ControlPanelMap.java +++ b/src/main/java/frc/robot/ControlPanelMap.java @@ -8,8 +8,6 @@ public class ControlPanelMap { public ControlPanelMap(){ } - - public static double controlWristJoint() { return oi.controlPanel2.getX(); From 8c293e61fcf58ae2ff869469cb7179752a985ce7 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Wed, 6 Mar 2019 12:41:47 -0600 Subject: [PATCH 107/131] camera kinda working and arm is now faster --- src/main/java/frc/robot/ConstantsMap.java | 8 ++++---- src/main/java/frc/robot/Robot.java | 13 ++++++++----- src/main/java/frc/robot/commands/ArmCommand2.java | 4 ++-- .../java/frc/robot/commands/ArmPresetCommand.java | 4 ++-- .../java/frc/robot/commands/WristForceZero.java | 2 +- .../java/frc/robot/subsystems/ArmSubsystem2.java | 4 ++-- 6 files changed, 19 insertions(+), 16 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index d0481c9..4db3035 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -55,8 +55,8 @@ public class ConstantsMap { public static final double WRIST_MAX_ANGLE = 80.0; public static final double WRIST_IN_ANGLE = 60.0; - public static final int WRIST_VELOCITY = (int)(316.7/WRIST_ENCODER_ANGLE_PER_TICK);; - public static final int WRIST_ACCEL = 10000; + public static final int WRIST_VELOCITY = 18000; + public static final int WRIST_ACCEL = (int)Math.floor(18000.0*2.0/3.0); public static final int WRIST_FOLLOW_DISTANCE = 20; public static final double WRIST_CHANGE_SETPOINT_SPEED = .5; @@ -74,8 +74,8 @@ public class ConstantsMap { public static final double SHOULDER_CHANGE_SETPOINT_SPEED = .5; public static final int SHOULDER_WRIST_FOLD_ANGLE = -63; - public static final int SHOULDER_VELOCITY = 24000/2; - public static final int SHOULDER_ACCEL = 24000 ; + public static final int SHOULDER_VELOCITY = 26000; + public static final int SHOULDER_ACCEL = 24000; public static final Gains shoulderGains = new Gains(.05, 0.0, 0, 0.042625, 0, 1.0); //For Grabber diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index c3e512c..78d9f7d 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -71,8 +71,11 @@ public void robotInit() { groundCam = new UsbCamera("GroundCam", 0); grabCam = new UsbCamera("GrabCam", 1); + server.startAutomaticCapture(groundCam); + } - public void switchCam(){ + public void switchCamera(){ + System.out.println("Switched Cam"); if(server.getServer().getSource() == grabCam){ server.getServer().setSource(groundCam); } @@ -127,7 +130,9 @@ public void robotPeriodic() { if(ControlPanelMap.toggleLevel() && debugMode){ armSubsystem2.toggleLevelMode(); } - + if((ControlPanelMap.switchCam() || XboxMap.switchCam())){ + switchCamera(); + } } /** @@ -214,9 +219,7 @@ public void teleopPeriodic() { if(driveSubsystem.checkTip()){ new GoHome().start(); } - if((ControlPanelMap.switchCam() || XboxMap.switchCam()) && !debugMode){ - switchCam(); - } + Scheduler.getInstance().run(); } diff --git a/src/main/java/frc/robot/commands/ArmCommand2.java b/src/main/java/frc/robot/commands/ArmCommand2.java index 39486a8..db330bf 100644 --- a/src/main/java/frc/robot/commands/ArmCommand2.java +++ b/src/main/java/frc/robot/commands/ArmCommand2.java @@ -76,8 +76,8 @@ protected void execute() { armSubsystem.setWristJointSpeed(.1 * amountToMoveWristJoint); } */ if(armSubsystem.getManualMode()){ - armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint/2); - armSubsystem.setWristJointSpeed(amountToMoveWristJoint/2); + armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); + armSubsystem.setWristJointSpeed(amountToMoveWristJoint); } else{ if(Math.abs((shoulderAngle + amountToMoveShoulderJoint)-actualShoulderAngle) Date: Wed, 6 Mar 2019 13:10:50 -0600 Subject: [PATCH 108/131] fixed buttonn press --- src/main/java/frc/robot/XboxMap.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index de11efe..5b9c268 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -21,7 +21,7 @@ public static double right() { } public static boolean switchCam() { - return oi.xbox.getAButton(); + return oi.xbox.getAButtonPressed(); } public static double left() { return oi.xbox.getY(Hand.kLeft); From 4098f95a92ccac5be5c41e6a5abb58a25064b501 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Thu, 7 Mar 2019 10:36:59 -0600 Subject: [PATCH 109/131] upgraded to comp bot --- src/main/java/frc/robot/ConstantsMap.java | 14 +++++- src/main/java/frc/robot/Robot.java | 3 ++ .../frc/robot/subsystems/ArmSubsystem2.java | 50 +++++++++++++++++-- .../frc/robot/subsystems/DriveSubsystem.java | 46 ++++++++++++++--- 4 files changed, 100 insertions(+), 13 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 4db3035..45500d8 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -18,7 +18,19 @@ public class ConstantsMap { public static final double TURTLE_SPEED = 1; //to be determined public static final double JOYSTICK_SENSITIVITY = .1; //to be determined - public static final double TIP_TOLERANCE = 8; //to be determined + public static final double TIP_TOLERANCE = 8; + public static final double DRIFT_TOLERANCE = 5; + + public static final double DRIVE_STALL = 10; + public static final double DRIVE_STALL_TIME = 1; + + public static final double WRIST_STALL = 10; + public static final double WRIST_STALL_TIME = 1; + + public static final double SHOULDER_STALL = 10; + public static final double SHOULDER_STALL_TIME = 1; + + //for line follower public static final double DISTANCE_BETWEEN_SENSORS = 6; //inches diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 78d9f7d..e3abef9 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -109,6 +109,9 @@ public void robotPeriodic() { SmartDashboard.putBoolean("Level Mode", armSubsystem2.getLevelMode()); SmartDashboard.putBoolean("Tipping", driveSubsystem.checkTip()); + SmartDashboard.putBoolean("Drifting", driveSubsystem.checkDrift()); + + armSubsystem2.checkShoulderLimits(); armSubsystem2.checkWristLimits(); diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index d94aed8..3dce7bf 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -38,6 +38,11 @@ public class ArmSubsystem2 extends Subsystem { private double wristSet; private boolean manualMode; private boolean levelMode; + + private boolean isWristStall = false; + private boolean isShoulderStall = false; + private long startWristStall = 0; + private long startShoulderStall = 0; TalonSRX shoulder, shoulderSlave,wrist; public ArmSubsystem2() { @@ -50,12 +55,15 @@ public ArmSubsystem2() { shoulder = new TalonSRX(RobotMap.SHOULDER_JOINT_RIGHT_PORT); shoulderSlave = new TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); shoulderSlave.configFactoryDefault(); - shoulderSlave.setNeutralMode(NeutralMode.Brake); - shoulder.setInverted(false); + + shoulder.setInverted(true); shoulderSlave.setInverted(true); - shoulder.setSensorPhase(true); + + shoulder.setSensorPhase(false); shoulder.setNeutralMode(NeutralMode.Brake); + shoulderSlave.setNeutralMode(NeutralMode.Brake); + shoulderSlave.follow(shoulder); shoulder.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Absolute, @@ -287,7 +295,7 @@ public boolean getWristLowerLimit(){ } // return wristLimit || wristLimit2; - return lowerLimitWrist2.get(); + return lowerLimitWrist2.get() || lowerLimit.get(); } public double getShoulderSpeed(){ @@ -298,7 +306,39 @@ public double getWristSpeed(){ return wrist.getMotorOutputPercent(); } - + public boolean isWristStalled(){ + boolean isStallcondition = wrist.getOutputCurrent() > ConstantsMap.WRIST_STALL; + if(isStallcondition && !isWristStall){ + isWristStall = true; + startWristStall = System.currentTimeMillis(); + } + else if(!isStallcondition && isWristStall){ + isWristStall = false; + } + if((System.currentTimeMillis() - startWristStall) > ConstantsMap.WRIST_STALL_TIME && isWristStall){ + return true; + } + else{ + return false; + } + } + public boolean isShoulderStalled(){ + boolean isStallcondition = shoulder.getOutputCurrent() > ConstantsMap.SHOULDER_STALL; + if(isStallcondition && !isShoulderStall){ + isShoulderStall = true; + startShoulderStall = System.currentTimeMillis(); + } + else if(!isStallcondition && isShoulderStall){ + isShoulderStall = false; + } + if((System.currentTimeMillis() - startShoulderStall) > ConstantsMap.SHOULDER_STALL_TIME && isShoulderStall){ + return true; + } + else{ + return false; + } + } + @Override public void initDefaultCommand() { // Set the default command for a subsystem here. diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index b29512a..cef165a 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -36,7 +36,9 @@ public class DriveSubsystem extends Subsystem { private AHRS ahrs; private PowerDistributionPanel pdp; - + private boolean isStallCurrent = false;; + private long startStallCurrent = 0; + private double startBarometricPressure; public DriveSubsystem() { System.out.println("Drive Subsystem Init"); @@ -65,23 +67,53 @@ public DriveSubsystem() { ahrs = new AHRS(SPI.Port.kMXP); stop(); pdp = new PowerDistributionPanel(11); - + startBarometricPressure = ahrs.getBarometricPressure(); SmartDashboard.putData(ahrs); + } + public void initDefaultCommand() { + // Set the default command for a subsystem here. + setDefaultCommand(new DriveCommand()); } + + public boolean checkTip(){ - return (Math.abs(ahrs.getRoll()) > ConstantsMap.TIP_TOLERANCE); + return (Math.abs(ahrs.getVelocityY()) > ConstantsMap.TIP_TOLERANCE); } - public void initDefaultCommand() { - // Set the default command for a subsystem here. - setDefaultCommand(new DriveCommand()); - } + public boolean checkDrift(){ + return (Math.abs(ahrs.getRoll()) > ConstantsMap.DRIFT_TOLERANCE); + } public double getVoltage(){ return pdp.getVoltage(); } + public boolean isStalled(){ + boolean isStallcondition = left.getOutputCurrent() > ConstantsMap.DRIVE_STALL || right.getOutputCurrent() > ConstantsMap.DRIVE_STALL; + if(isStallcondition && !isStallCurrent){ + isStallCurrent = true; + startStallCurrent = System.currentTimeMillis(); + } + else if(!isStallcondition && isStallCurrent){ + isStallCurrent = false; + } + if((System.currentTimeMillis() - startStallCurrent) > ConstantsMap.DRIVE_STALL_TIME && isStallCurrent){ + return true; + } + else{ + return false; + } + } + public boolean isCruisingAltitude(){ + return ahrs.getAltitude() > 350000; + } + public boolean isOnFire(){ + return left.getTemperature() > 200 || right.getTemperature() > 200 || ahrs.getTempC() > 200; + } + public boolean isProbablyAboutToRain(){ + return (ahrs.getBarometricPressure() - startBarometricPressure) > 100; + } //sets the speed for both of the left motors public void setLeftSpeed(double speed) { left.set(ControlMode.PercentOutput,speed); From 7df280a7505775ed249c9e1ef4d0afe7fe43f9fc Mon Sep 17 00:00:00 2001 From: michaelvdow Date: Thu, 7 Mar 2019 19:47:07 -0600 Subject: [PATCH 110/131] End of First Comp Day --- build.gradle | 2 +- src/main/java/frc/robot/ConstantsMap.java | 20 +++++++++++-------- src/main/java/frc/robot/OI.java | 2 +- src/main/java/frc/robot/Robot.java | 15 +++++++++----- src/main/java/frc/robot/RobotMap.java | 8 ++++---- .../frc/robot/commands/ArmPresetCommand.java | 11 +++++++--- .../frc/robot/subsystems/ArmSubsystem2.java | 6 ++++-- .../frc/robot/subsystems/DriveSubsystem.java | 8 ++++---- 8 files changed, 44 insertions(+), 28 deletions(-) diff --git a/build.gradle b/build.gradle index 2a7ec8c..f4529be 100644 --- a/build.gradle +++ b/build.gradle @@ -1,6 +1,6 @@ plugins { id "java" - id "edu.wpi.first.GradleRIO" version "2019.2.1" + id "edu.wpi.first.GradleRIO" version "2019.4.1" } def ROBOT_MAIN_CLASS = "frc.robot.Main" diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 45500d8..cde7689 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -64,7 +64,9 @@ public class ConstantsMap { public static final double WRIST_MIN_ANGLE_DOWN = -10.0; public static final double WRIST_MIN_ANGLE_UP = -60.0; - public static final double WRIST_MAX_ANGLE = 80.0; + //public static final double WRIST_MAX_ANGLE = 80.0; + public static final double WRIST_MAX_ANGLE = 85.0; + public static final double WRIST_IN_ANGLE = 60.0; public static final int WRIST_VELOCITY = 18000; @@ -72,14 +74,15 @@ public class ConstantsMap { public static final int WRIST_FOLLOW_DISTANCE = 20; public static final double WRIST_CHANGE_SETPOINT_SPEED = .5; - public static final Gains wristGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); + //public static final Gains wristGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); + public static final Gains wristGains = new Gains(0.3, 0.001, 0.2, 0, 0, 1.0); public static final int SHOULDER_ENCODER_TICKS_PER_ROTATION = 4096; //ticks public static final double SHOULDER_ENCODER_ANGLE_PER_TICK = 360/((double)SHOULDER_ENCODER_TICKS_PER_ROTATION * 49 * 5); public static final double SHOULDER_GEAR_RATIO = 350.0; - public static final double SHOULDER_MIN_ANGLE = -68.0; + public static final double SHOULDER_MIN_ANGLE = -65.0; public static final double SHOULDER_MAX_ANGLE = 50.0; public static final int SHOULDER_FOLLOW_DISTANCE = 20; @@ -88,7 +91,8 @@ public class ConstantsMap { public static final int SHOULDER_VELOCITY = 26000; public static final int SHOULDER_ACCEL = 24000; - public static final Gains shoulderGains = new Gains(.05, 0.0, 0, 0.042625, 0, 1.0); + public static final Gains shoulderGains = new Gains(.1, 0.001, 0, 0.042625, 0, 1.0); + //public static final Gains shoulderGains = new Gains(.2, 0.0, 0, 0.042625, 0, 1.0); //For Grabber public static final double BALL_INTAKE_SPEED = .5; @@ -106,9 +110,9 @@ public class ConstantsMap { // PRESETS!!! public static final boolean isHatchGrabber = true; - public static final double ROCKET_HATCH_PRESET_1 = -54; - public static final double ROCKET_HATCH_PRESET_2 = -6.0; - public static final double ROCKET_HATCH_PRESET_3 = 38; + public static final double ROCKET_HATCH_PRESET_1 = -57; + public static final double ROCKET_HATCH_PRESET_2 = -10.0; + public static final double ROCKET_HATCH_PRESET_3 = 34; public static final double ROCKET_BALL_PRESET_1 = -35; public static final double ROCKET_BALL_PRESET_2 = 5; public static final double ROCKET_BALL_PRESET_3 = 46; @@ -116,7 +120,7 @@ public class ConstantsMap { public static final double CARGO_BALL_PRESET = -20.0; public static final double CARGO_HATCH_PRESET = -20.0; - public static final double HATCH_COLLECT_PRESET = -59.0; + public static final double HATCH_COLLECT_PRESET = -58.0; public static final double BALL_COLLECT_WRIST_PRESET = -12.0; public static final double BALL_COLLECT_SHOULDER_PRESET = -46.0; diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index 92e0813..27daa17 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -75,7 +75,7 @@ public void normalMode(){ //ballCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.BALL_COLLECT_SHOULDER_PRESET,ConstantsMap.BALL_COLLECT_WRIST_PRESET)); ballCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.BALL_COLLECT_SHOULDER_PRESET, ConstantsMap.BALL_COLLECT_WRIST_PRESET)); - hatchCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.HATCH_COLLECT_PRESET)); + hatchCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.HATCH_COLLECT_PRESET,-ConstantsMap.HATCH_COLLECT_PRESET-5)); goHome.whenPressed(new GoHome()); } diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index e3abef9..3feb7fd 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -46,7 +46,7 @@ public class Robot extends TimedRobot { Command armCommand; Command hgCommand; Command zeroWrist; - + boolean groundCamSelected; SendableChooser chooser = new SendableChooser<>(); CameraServer server; Compressor compressor; @@ -72,15 +72,17 @@ public void robotInit() { groundCam = new UsbCamera("GroundCam", 0); grabCam = new UsbCamera("GrabCam", 1); server.startAutomaticCapture(groundCam); - + groundCamSelected = true; } public void switchCamera(){ System.out.println("Switched Cam"); - if(server.getServer().getSource() == grabCam){ + if(!groundCamSelected){ server.getServer().setSource(groundCam); + groundCamSelected = true; } else{ server.getServer().setSource(grabCam); + groundCamSelected = false; } } @@ -109,10 +111,13 @@ public void robotPeriodic() { SmartDashboard.putBoolean("Level Mode", armSubsystem2.getLevelMode()); SmartDashboard.putBoolean("Tipping", driveSubsystem.checkTip()); + + SmartDashboard.putBoolean("Drifting", driveSubsystem.checkDrift()); - - + SmartDashboard.putBoolean("On Fire", driveSubsystem.isOnFire()); + SmartDashboard.putBoolean("Cruising Altitude", driveSubsystem.isCruisingAltitude()) + ; armSubsystem2.checkShoulderLimits(); armSubsystem2.checkWristLimits(); diff --git a/src/main/java/frc/robot/RobotMap.java b/src/main/java/frc/robot/RobotMap.java index 835d51d..5eeeebf 100644 --- a/src/main/java/frc/robot/RobotMap.java +++ b/src/main/java/frc/robot/RobotMap.java @@ -37,8 +37,8 @@ public class RobotMap { public static final int LOWER_WRIST_LIMIT_PORT2 = 3; - public static final int HATCH_PISTON_F = 4; - public static final int HATCH_PISTON_R = 5; - public static final int RELEASE_PISTON_1_F = 7; - public static final int RELEASE_PISTON_1_R = 6; + public static final int HATCH_PISTON_F = 3; + public static final int HATCH_PISTON_R = 1; + public static final int RELEASE_PISTON_1_F = 2; + public static final int RELEASE_PISTON_1_R = 0; } diff --git a/src/main/java/frc/robot/commands/ArmPresetCommand.java b/src/main/java/frc/robot/commands/ArmPresetCommand.java index edf5c48..dbd744f 100644 --- a/src/main/java/frc/robot/commands/ArmPresetCommand.java +++ b/src/main/java/frc/robot/commands/ArmPresetCommand.java @@ -11,12 +11,14 @@ public class ArmPresetCommand extends Command { double wPreset = 1000; boolean shoulderFinished; boolean levelMode; + double startWrist; public ArmPresetCommand(double sAngle,double wAngle) { // Use requires() here to declare subsystem dependencies requires(armSubsystem); sPreset = sAngle; wPreset = wAngle; levelMode = false; + //startWrist = (sAngle - armSubsystem.getShoulderEncoderAngle())/2; } public ArmPresetCommand(double sAngle) { @@ -33,7 +35,7 @@ protected void initialize() { System.out.println("Start Preset: " + sPreset + " Wrist: " + wPreset); armSubsystem.setShoulderSetPoint(sPreset); - armSubsystem.setWristSetPoint(0); + //armSubsystem.setWristSetPoint(0); } // Called repeatedly when this Command is scheduled to run @@ -42,8 +44,11 @@ protected void execute() { if(levelMode){ armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); } + else if(!(Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<4)){ + armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); + } else{ - if(Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<2 && !shoulderFinished){ + if(!shoulderFinished){ shoulderFinished = true; armSubsystem.setWristSetPoint(wPreset); } @@ -60,7 +65,7 @@ protected boolean isFinished() { return true; } else if(levelMode){ - return Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<2; + return Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<2 && Math.abs(armSubsystem.getWristEncoderAngle() - armSubsystem.getShoulderEncoderAngle())<2; } else{ return Math.abs(armSubsystem.getWristEncoderAngle() - wPreset)<2 && Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<2; diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index 3dce7bf..b697ae4 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -196,7 +196,9 @@ public void setShoulderSetPoint(double angle){ public void checkWristLimits(){ if(getWristLowerLimit()){ - wrist.setSelectedSensorPosition((int)(ConstantsMap.WRIST_MAX_ANGLE/ConstantsMap.WRIST_ENCODER_ANGLE_PER_TICK)); + if(getShoulderEncoderAngle()<-40){ + wrist.setSelectedSensorPosition((int)(ConstantsMap.WRIST_MAX_ANGLE/ConstantsMap.WRIST_ENCODER_ANGLE_PER_TICK)); + } if(wrist.getControlMode() == ControlMode.PercentOutput){ if(wrist.getMotorOutputPercent()>0){ wrist.set(ControlMode.PercentOutput, 0); @@ -295,7 +297,7 @@ public boolean getWristLowerLimit(){ } // return wristLimit || wristLimit2; - return lowerLimitWrist2.get() || lowerLimit.get(); + return lowerLimitWrist2.get() || lowerLimitWrist.get(); } public double getShoulderSpeed(){ diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index cef165a..c8e95d2 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -48,8 +48,7 @@ public DriveSubsystem() { right = new TalonSRX(RobotMap.RIGHT_DRIVE_PORT_1); rightSlave = new TalonSRX(RobotMap.RIGHT_DRIVE_PORT_2); - leftSlave.follow(left); - rightSlave.follow(right); + //Invert Motors @@ -65,12 +64,13 @@ public DriveSubsystem() { //Instantiate Gyro | Gyro automatically calibrates when given power ahrs = new AHRS(SPI.Port.kMXP); - stop(); + pdp = new PowerDistributionPanel(11); startBarometricPressure = ahrs.getBarometricPressure(); - + leftSlave.follow(left); + rightSlave.follow(right); SmartDashboard.putData(ahrs); } public void initDefaultCommand() { From 9dc7366c48fdd26991ac5681934b554178296e2a Mon Sep 17 00:00:00 2001 From: michaelvdow Date: Fri, 8 Mar 2019 13:01:17 -0600 Subject: [PATCH 111/131] before I fuck up the arm --- src/main/java/frc/robot/ConstantsMap.java | 20 +++++++++---------- src/main/java/frc/robot/OI.java | 2 +- src/main/java/frc/robot/Robot.java | 5 +++-- src/main/java/frc/robot/XboxMap.java | 3 +++ .../frc/robot/commands/ArmPresetCommand.java | 12 +++++------ .../java/frc/robot/commands/DriveCommand.java | 4 +++- src/main/java/frc/robot/commands/GoHome.java | 2 +- .../frc/robot/subsystems/ArmSubsystem2.java | 2 +- 8 files changed, 28 insertions(+), 22 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index cde7689..a7f5cad 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -15,7 +15,7 @@ public class ConstantsMap { public static final double ROBOT_WHEEL_RADIUS_INCHES = 2; //inches public static final double DRIVE_ENCODER_TICKS_PER_ROTATION = 4096; //ticks public static final double DRIVE_ENCODER_DIST_PER_TICK = ((ROBOT_WHEEL_RADIUS_INCHES * 2 * Math.PI)/(DRIVE_ENCODER_TICKS_PER_ROTATION)); //inches - public static final double TURTLE_SPEED = 1; //to be determined + public static final double TURTLE_SPEED = .6; //to be determined public static final double JOYSTICK_SENSITIVITY = .1; //to be determined public static final double TIP_TOLERANCE = 8; @@ -65,33 +65,33 @@ public class ConstantsMap { public static final double WRIST_MIN_ANGLE_UP = -60.0; //public static final double WRIST_MAX_ANGLE = 80.0; - public static final double WRIST_MAX_ANGLE = 85.0; + public static final double WRIST_MAX_ANGLE = 88.0; public static final double WRIST_IN_ANGLE = 60.0; public static final int WRIST_VELOCITY = 18000; public static final int WRIST_ACCEL = (int)Math.floor(18000.0*2.0/3.0); public static final int WRIST_FOLLOW_DISTANCE = 20; - public static final double WRIST_CHANGE_SETPOINT_SPEED = .5; + public static final double WRIST_CHANGE_SETPOINT_SPEED = .2; //public static final Gains wristGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); - public static final Gains wristGains = new Gains(0.3, 0.001, 0.2, 0, 0, 1.0); + public static final Gains wristGains = new Gains(0.2, 0.001, 0, .1, 20, 1.0); public static final int SHOULDER_ENCODER_TICKS_PER_ROTATION = 4096; //ticks public static final double SHOULDER_ENCODER_ANGLE_PER_TICK = 360/((double)SHOULDER_ENCODER_TICKS_PER_ROTATION * 49 * 5); public static final double SHOULDER_GEAR_RATIO = 350.0; - public static final double SHOULDER_MIN_ANGLE = -65.0; + public static final double SHOULDER_MIN_ANGLE = -67.0; public static final double SHOULDER_MAX_ANGLE = 50.0; public static final int SHOULDER_FOLLOW_DISTANCE = 20; - public static final double SHOULDER_CHANGE_SETPOINT_SPEED = .5; - public static final int SHOULDER_WRIST_FOLD_ANGLE = -63; + public static final double SHOULDER_CHANGE_SETPOINT_SPEED = .2; + public static final int SHOULDER_WRIST_FOLD_ANGLE = -65; public static final int SHOULDER_VELOCITY = 26000; public static final int SHOULDER_ACCEL = 24000; - public static final Gains shoulderGains = new Gains(.1, 0.001, 0, 0.042625, 0, 1.0); + public static final Gains shoulderGains = new Gains(.2, 0.001, 0, 0.042625, 20, 1.0); //public static final Gains shoulderGains = new Gains(.2, 0.0, 0, 0.042625, 0, 1.0); //For Grabber @@ -121,8 +121,8 @@ public class ConstantsMap { public static final double CARGO_HATCH_PRESET = -20.0; public static final double HATCH_COLLECT_PRESET = -58.0; - public static final double BALL_COLLECT_WRIST_PRESET = -12.0; - public static final double BALL_COLLECT_SHOULDER_PRESET = -46.0; + public static final double BALL_COLLECT_WRIST_PRESET = -5.5; + public static final double BALL_COLLECT_SHOULDER_PRESET = -47; public static final double GO_HOME_PRESET = SHOULDER_MIN_ANGLE; diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index 27daa17..92e0813 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -75,7 +75,7 @@ public void normalMode(){ //ballCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.BALL_COLLECT_SHOULDER_PRESET,ConstantsMap.BALL_COLLECT_WRIST_PRESET)); ballCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.BALL_COLLECT_SHOULDER_PRESET, ConstantsMap.BALL_COLLECT_WRIST_PRESET)); - hatchCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.HATCH_COLLECT_PRESET,-ConstantsMap.HATCH_COLLECT_PRESET-5)); + hatchCollectPreset.whenPressed(new ArmPresetCommand(ConstantsMap.HATCH_COLLECT_PRESET)); goHome.whenPressed(new GoHome()); } diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 3feb7fd..5e1881d 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -20,6 +20,7 @@ import frc.robot.commands.DriveCommand; import frc.robot.commands.GoHome; import frc.robot.commands.HatchGrabberCommand; +import frc.robot.commands.WristForceZero; import frc.robot.subsystems.ArmSubsystem2; import frc.robot.subsystems.DriveSubsystem; import frc.robot.subsystems.HatchGrabberSubsystem; @@ -186,7 +187,7 @@ public void autonomousInit() { // schedule the autonomous command (example) armSubsystem2.setShoulderSetPoint(armSubsystem2.getShoulderEncoderAngle()); - + new WristForceZero().start(); } /** @@ -205,8 +206,8 @@ public void teleopInit() { // this line or comment it out. - hgCommand.start(); armSubsystem2.setShoulderSetPoint(armSubsystem2.getShoulderEncoderAngle()); + new WristForceZero().start(); //armCommand.start(); diff --git a/src/main/java/frc/robot/XboxMap.java b/src/main/java/frc/robot/XboxMap.java index 5b9c268..86ad1ed 100644 --- a/src/main/java/frc/robot/XboxMap.java +++ b/src/main/java/frc/robot/XboxMap.java @@ -29,6 +29,9 @@ public static double left() { public static boolean toggleBrakes(){ return oi.xbox.getBumperPressed(Hand.kRight); } + public static boolean toggleTurtle(){ + return oi.xbox.getYButtonPressed(); + } public static void startRumble(){ oi.xbox.setRumble(RumbleType.kLeftRumble, 1); oi.xbox.setRumble(RumbleType.kRightRumble, 1); diff --git a/src/main/java/frc/robot/commands/ArmPresetCommand.java b/src/main/java/frc/robot/commands/ArmPresetCommand.java index dbd744f..b6adc31 100644 --- a/src/main/java/frc/robot/commands/ArmPresetCommand.java +++ b/src/main/java/frc/robot/commands/ArmPresetCommand.java @@ -44,14 +44,14 @@ protected void execute() { if(levelMode){ armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); } - else if(!(Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<4)){ + else if(!(Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<.5)){ armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); } else{ - if(!shoulderFinished){ - shoulderFinished = true; + //if(!shoulderFinished){ + // shoulderFinished = true; armSubsystem.setWristSetPoint(wPreset); - } + // } } //armSubsyste @@ -65,10 +65,10 @@ protected boolean isFinished() { return true; } else if(levelMode){ - return Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<2 && Math.abs(armSubsystem.getWristEncoderAngle() - armSubsystem.getShoulderEncoderAngle())<2; + return Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<.2 && Math.abs(armSubsystem.getWristEncoderAngle() + armSubsystem.getShoulderEncoderAngle())<.2; } else{ - return Math.abs(armSubsystem.getWristEncoderAngle() - wPreset)<2 && Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<2; + return Math.abs(armSubsystem.getWristEncoderAngle() - wPreset)<.2 && Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<.2; } } diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index 3a92867..d711842 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -51,7 +51,9 @@ protected void execute() { double speedLeft = XboxMap.left(); speedLeft *= -1; - + if(XboxMap.toggleTurtle()){ + turtlemode = !turtlemode; + } if (Math.abs(speedLeft) < 0.1) { speedLeft = 0; } diff --git a/src/main/java/frc/robot/commands/GoHome.java b/src/main/java/frc/robot/commands/GoHome.java index 8452e3a..55af6c3 100644 --- a/src/main/java/frc/robot/commands/GoHome.java +++ b/src/main/java/frc/robot/commands/GoHome.java @@ -37,7 +37,7 @@ protected void execute() { protected boolean isFinished() { //return false; - return Math.abs(armSubsystem.getShoulderEncoderAngle() - ConstantsMap.SHOULDER_MIN_ANGLE)<1; + return Math.abs(armSubsystem.getShoulderEncoderAngle() - ConstantsMap.SHOULDER_MIN_ANGLE)<.5 && Math.abs(armSubsystem.getWristEncoderAngle() - ConstantsMap.WRIST_MAX_ANGLE)<.5; } diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index b697ae4..9d9a6f3 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -196,7 +196,7 @@ public void setShoulderSetPoint(double angle){ public void checkWristLimits(){ if(getWristLowerLimit()){ - if(getShoulderEncoderAngle()<-40){ + if(getShoulderEncoderAngle()<-50){ wrist.setSelectedSensorPosition((int)(ConstantsMap.WRIST_MAX_ANGLE/ConstantsMap.WRIST_ENCODER_ANGLE_PER_TICK)); } if(wrist.getControlMode() == ControlMode.PercentOutput){ From f39da3779566cd4caa7794fabe31b2e6d180ddee Mon Sep 17 00:00:00 2001 From: michaelvdow Date: Fri, 8 Mar 2019 18:37:21 -0600 Subject: [PATCH 112/131] end of midwest day 2 --- src/main/java/frc/robot/ConstantsMap.java | 7 +- src/main/java/frc/robot/Robot.java | 1 + .../java/frc/robot/commands/ArmCommand2.java | 2 +- .../frc/robot/commands/ArmPresetCommand.java | 8 +- .../java/frc/robot/commands/TurnToAngle.java | 160 ++++++++++++++++++ .../frc/robot/subsystems/ArmSubsystem2.java | 48 +++++- .../frc/robot/subsystems/DriveSubsystem.java | 8 +- 7 files changed, 220 insertions(+), 14 deletions(-) create mode 100644 src/main/java/frc/robot/commands/TurnToAngle.java diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index a7f5cad..0e3102e 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -75,7 +75,8 @@ public class ConstantsMap { public static final double WRIST_CHANGE_SETPOINT_SPEED = .2; //public static final Gains wristGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); - public static final Gains wristGains = new Gains(0.2, 0.001, 0, .1, 20, 1.0); + //public static final Gains wristGains = new Gains(0.2, 0.001, 0, .1, 20, 1.0); + public static final Gains wristGains = new Gains(0.21, 0.0005, 0, 0, 20, 1.0); public static final int SHOULDER_ENCODER_TICKS_PER_ROTATION = 4096; //ticks @@ -91,7 +92,7 @@ public class ConstantsMap { public static final int SHOULDER_VELOCITY = 26000; public static final int SHOULDER_ACCEL = 24000; - public static final Gains shoulderGains = new Gains(.2, 0.001, 0, 0.042625, 20, 1.0); + public static final Gains shoulderGains = new Gains(.2 , 0.0001, 0, 0.042625, 20, 1.0); //public static final Gains shoulderGains = new Gains(.2, 0.0, 0, 0.042625, 0, 1.0); //For Grabber @@ -120,7 +121,7 @@ public class ConstantsMap { public static final double CARGO_BALL_PRESET = -20.0; public static final double CARGO_HATCH_PRESET = -20.0; - public static final double HATCH_COLLECT_PRESET = -58.0; + public static final double HATCH_COLLECT_PRESET = -57.0; public static final double BALL_COLLECT_WRIST_PRESET = -5.5; public static final double BALL_COLLECT_SHOULDER_PRESET = -47; diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 5e1881d..68cf5c5 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -72,6 +72,7 @@ public void robotInit() { groundCam = new UsbCamera("GroundCam", 0); grabCam = new UsbCamera("GrabCam", 1); + grabCam.setResolution(256, 144); server.startAutomaticCapture(groundCam); groundCamSelected = true; } diff --git a/src/main/java/frc/robot/commands/ArmCommand2.java b/src/main/java/frc/robot/commands/ArmCommand2.java index db330bf..e78f00c 100644 --- a/src/main/java/frc/robot/commands/ArmCommand2.java +++ b/src/main/java/frc/robot/commands/ArmCommand2.java @@ -76,7 +76,7 @@ protected void execute() { armSubsystem.setWristJointSpeed(.1 * amountToMoveWristJoint); } */ if(armSubsystem.getManualMode()){ - armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint); + armSubsystem.setShoulderJointSpeed(amountToMoveShoulderJoint/3); armSubsystem.setWristJointSpeed(amountToMoveWristJoint); } else{ diff --git a/src/main/java/frc/robot/commands/ArmPresetCommand.java b/src/main/java/frc/robot/commands/ArmPresetCommand.java index b6adc31..9c6ceaa 100644 --- a/src/main/java/frc/robot/commands/ArmPresetCommand.java +++ b/src/main/java/frc/robot/commands/ArmPresetCommand.java @@ -1,6 +1,7 @@ package frc.robot.commands; import edu.wpi.first.wpilibj.command.Command; +import frc.robot.ConstantsMap; import frc.robot.ControlPanelMap; import frc.robot.Robot; import frc.robot.subsystems.ArmSubsystem2; @@ -40,8 +41,11 @@ protected void initialize() { // Called repeatedly when this Command is scheduled to run @Override - protected void execute() { - if(levelMode){ + protected void execute() { + if(armSubsystem.getShoulderEncoderAngle() < (ConstantsMap.SHOULDER_MIN_ANGLE + 5)) { + armSubsystem.setWristSetPoint(ConstantsMap.WRIST_MAX_ANGLE); + } + else if(levelMode){ armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); } else if(!(Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<.5)){ diff --git a/src/main/java/frc/robot/commands/TurnToAngle.java b/src/main/java/frc/robot/commands/TurnToAngle.java new file mode 100644 index 0000000..3e604d5 --- /dev/null +++ b/src/main/java/frc/robot/commands/TurnToAngle.java @@ -0,0 +1,160 @@ +package frc.robot.commands; + +import frc.robot.ConstantsMap; +import frc.robot.Gains; +import frc.robot.Robot; +import frc.robot.subsystems.DriveSubsystem; + +import javax.swing.text.StyleContext.SmallAttributeSet; + +import com.kauailabs.navx.frc.AHRS; + +import edu.wpi.first.wpilibj.Encoder; +import edu.wpi.first.wpilibj.PIDController; +import edu.wpi.first.wpilibj.PIDOutput; +import edu.wpi.first.wpilibj.PIDSource; +import edu.wpi.first.wpilibj.PIDSourceType; +import edu.wpi.first.wpilibj.command.Command; +import edu.wpi.first.wpilibj.drive.Vector2d; +import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; + +public class TurnToAngle extends Command implements PIDSource, PIDOutput { + + PIDController pid; + PIDSourceType pidSourceType; + PIDSource source; + AHRS gyro; + DriveSubsystem driveSubsystem = Robot.driveSubsystem; + double setPoint; + + public TurnToAngle() { + requires(driveSubsystem); + Gains g = ConstantsMap.turnGains; + pid = new PIDController(g.kP, g.kI, g.kD, g.kF, this, this); + pidSourceType = PIDSourceType.kDisplacement; + pid.setPercentTolerance(.5); + pid.setInputRange(-180, 180); + pid.setOutputRange(-1, 1); + + } + + @Override + protected void initialize() { + System.out.println("TurnToAngle init"); + gyro = driveSubsystem.getGyro(); + setPoint = SmartDashboard.getNumber("LineStartAngle", 0); + + + + System.out.println("Angle: " + setPoint); + gyro.reset(); + pid.setSetpoint(setPoint); + pid.enable(); + } + + + + // Called repeatedly when this Command is scheduled to run + @Override + protected void execute() { + //System.out.print(pid.getSetpoint() + " " + gyro.getAngle()); + } + + // Make this return true when this Command no longer needs to run execute() + @Override + protected boolean isFinished() { + return pid.onTarget(); + } + + // Called once after isFinished returns true + @Override + protected void end() { + pid.disable(); + + System.out.println("TurnToangle end"); + } + + // Called when another command which requires one or more of the same + // subsystems is scheduled to run + @Override + protected void interrupted() { + pid.disable(); + System.out.println("TurnToAngle interrupted"); + } + + + + + + + + + + + + + public PIDController getPID(){ + return this.pid; + } + public TurnToAngle setP(double kp) { + pid.setP(kp); + return this; + } + + public TurnToAngle setI(double ki) { + pid.setI(ki); + return this; + } + + public TurnToAngle setD(double kd) { + pid.setD(kd); + return this; + } + + /* public EncoderMotorPID setDistancePerTick(double dpt) { + encoder.setDistancePerPulse(dpt); + return this; + } */ + + public TurnToAngle setOutputRange(double l, double h) { + pid.setOutputRange(l,h); + return this; + } + + public double getSetpoint() { + return pid.getSetpoint(); + } + + public void pidWrite(double speed) { + driveSubsystem.tankDrive(speed, -speed); + } + + public void setPIDSourceType(PIDSourceType t) { + pidSourceType = t; + } + + public PIDSourceType getPIDSourceType() { + return gyro.getPIDSourceType(); + } + + public double pidGet() { + return gyro.pidGet(); + } + + public TurnToAngle setSetpoint(double sp) { + pid.setSetpoint(sp); + return this; + } + + public boolean isEnabled() { + return pid.isEnabled(); + } + + public void enable() { + pid.enable(); + } + + public void disable() { + pid.disable(); + } +} diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index 9d9a6f3..5d6c412 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -43,7 +43,7 @@ public class ArmSubsystem2 extends Subsystem { private boolean isShoulderStall = false; private long startWristStall = 0; private long startShoulderStall = 0; - TalonSRX shoulder, shoulderSlave,wrist; + TalonSRX shoulder, shoulder2, shoulderSlave,wrist; public ArmSubsystem2() { @@ -53,18 +53,21 @@ public ArmSubsystem2() { shoulder = new TalonSRX(RobotMap.SHOULDER_JOINT_RIGHT_PORT); - shoulderSlave = new TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); - shoulderSlave.configFactoryDefault(); + //shoulderSlave = new TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); + //shoulderSlave.configFactoryDefault(); + shoulder2 = new TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); shoulder.setInverted(true); - shoulderSlave.setInverted(true); + shoulder2.setInverted(true); shoulder.setSensorPhase(false); + shoulder2.setSensorPhase(true); + shoulder.setNeutralMode(NeutralMode.Brake); - shoulderSlave.setNeutralMode(NeutralMode.Brake); + //shoulderSlave.setNeutralMode(NeutralMode.Brake); - shoulderSlave.follow(shoulder); + //shoulderSlave.follow(shoulder); shoulder.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Absolute, ConstantsMap.kPIDLoopIdx, @@ -86,6 +89,31 @@ public ArmSubsystem2() { shoulder.configMotionCruiseVelocity(ConstantsMap.SHOULDER_VELOCITY, ConstantsMap.kTimeoutMs); shoulder.configMotionAcceleration(ConstantsMap.SHOULDER_ACCEL, ConstantsMap.kTimeoutMs); + + + + + shoulder2.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Absolute, + ConstantsMap.kPIDLoopIdx, + ConstantsMap.kTimeoutMs); + shoulder2.setStatusFramePeriod(StatusFrameEnhanced.Status_13_Base_PIDF0, 10, ConstantsMap.kTimeoutMs); + shoulder2.setStatusFramePeriod(StatusFrameEnhanced.Status_10_MotionMagic, 10, ConstantsMap.kTimeoutMs); + + shoulder2.configNominalOutputForward(0, ConstantsMap.kTimeoutMs); + shoulder2.configNominalOutputReverse(0, ConstantsMap.kTimeoutMs); + shoulder2.configPeakOutputForward(1, ConstantsMap.kTimeoutMs); + shoulder2.configPeakOutputReverse(-1, ConstantsMap.kTimeoutMs); + + shoulder2.selectProfileSlot(ConstantsMap.kSlotIdx, ConstantsMap.kPIDLoopIdx); + shoulder2.config_kF(ConstantsMap.kSlotIdx, ConstantsMap.shoulderGains.kF, ConstantsMap.kTimeoutMs); + shoulder2.config_kP(ConstantsMap.kSlotIdx, ConstantsMap.shoulderGains.kP, ConstantsMap.kTimeoutMs); + shoulder2.config_kI(ConstantsMap.kSlotIdx, ConstantsMap.shoulderGains.kI, ConstantsMap.kTimeoutMs); + shoulder2.config_kD(ConstantsMap.kSlotIdx, ConstantsMap.shoulderGains.kD, ConstantsMap.kTimeoutMs); + + shoulder2.configMotionCruiseVelocity(ConstantsMap.SHOULDER_VELOCITY, ConstantsMap.kTimeoutMs); + shoulder2.configMotionAcceleration(ConstantsMap.SHOULDER_ACCEL, ConstantsMap.kTimeoutMs); + + //shoulder.configForwardLimitSwitchSource(LimitSwitchSource., LimitSwitchNormal.NormallyClosed); wrist = new TalonSRX(RobotMap.WRIST_JOINT_PORT); wrist.setInverted(true); @@ -126,6 +154,8 @@ public ArmSubsystem2() { public void setShoulderJointSpeed(double speed) { shoulder.set(ControlMode.PercentOutput,speed); + shoulder2.set(ControlMode.PercentOutput,speed); + } public boolean getManualMode(){ return manualMode; @@ -189,6 +219,8 @@ public void setShoulderSetPoint(double angle){ } double ticks = angle/ConstantsMap.SHOULDER_ENCODER_ANGLE_PER_TICK; shoulder.set(ControlMode.MotionMagic, ticks); + shoulder2.set(ControlMode.MotionMagic, ticks); + shoulderSet = ticks; checkShoulderLimits(); @@ -214,10 +246,14 @@ else if (wrist.getControlMode() == ControlMode.MotionMagic){ } public void checkShoulderLimits(){ if(!lowerLimit.get()){ + shoulder2.setSelectedSensorPosition((int)(ConstantsMap.SHOULDER_MIN_ANGLE/ConstantsMap.SHOULDER_ENCODER_ANGLE_PER_TICK)); + shoulder.setSelectedSensorPosition((int)(ConstantsMap.SHOULDER_MIN_ANGLE/ConstantsMap.SHOULDER_ENCODER_ANGLE_PER_TICK)); if(shoulder.getControlMode() == ControlMode.PercentOutput){ if(shoulder.getMotorOutputPercent()<0){ shoulder.set(ControlMode.PercentOutput, 0); + shoulder2.set(ControlMode.PercentOutput, 0); + } } else if (shoulder.getControlMode() == ControlMode.MotionMagic){ diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index c8e95d2..6b5f193 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -20,6 +20,7 @@ import com.kauailabs.navx.frc.AHRS; +import edu.wpi.first.wpilibj.I2C; import edu.wpi.first.wpilibj.PowerDistributionPanel; import edu.wpi.first.wpilibj.SPI; @@ -39,6 +40,7 @@ public class DriveSubsystem extends Subsystem { private boolean isStallCurrent = false;; private long startStallCurrent = 0; private double startBarometricPressure; + private I2C bus; public DriveSubsystem() { System.out.println("Drive Subsystem Init"); @@ -47,7 +49,7 @@ public DriveSubsystem() { leftSlave = new TalonSRX(RobotMap.LEFT_DRIVE_PORT_2); right = new TalonSRX(RobotMap.RIGHT_DRIVE_PORT_1); rightSlave = new TalonSRX(RobotMap.RIGHT_DRIVE_PORT_2); - + bus = new I2C(I2C.Port.kOnboard, 0x52); //Invert Motors @@ -77,7 +79,9 @@ public void initDefaultCommand() { // Set the default command for a subsystem here. setDefaultCommand(new DriveCommand()); } - + public double getDistance(){ + return bus.readOnly(buffer, count) + } public boolean checkTip(){ return (Math.abs(ahrs.getVelocityY()) > ConstantsMap.TIP_TOLERANCE); From 77cfe900a27fc47a53440cf270894d95978fe6d4 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Mon, 11 Mar 2019 19:51:42 -0500 Subject: [PATCH 113/131] End Of Comp --- src/main/java/frc/robot/ConstantsMap.java | 7 +++ src/main/java/frc/robot/Robot.java | 32 +++++++++--- .../java/frc/robot/commands/DriveCommand.java | 13 +++-- .../java/frc/robot/commands/TurnToAngle.java | 3 -- .../frc/robot/subsystems/DriveSubsystem.java | 50 ++++++++++++++++++- 5 files changed, 91 insertions(+), 14 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 0e3102e..617e43d 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -21,6 +21,13 @@ public class ConstantsMap { public static final double TIP_TOLERANCE = 8; public static final double DRIFT_TOLERANCE = 5; + public static final Gains driveGains = new Gains(1, 0.0, 0, 0, 0, 1.0); + public static final Gains turnGains = new Gains(.2, 0.0, .1, 0, 0, 1.0); + public static final int DRIVE_VELOCITY = 3400; + public static final int DRIVE_ACCEL = 3400; + + + public static final double DRIVE_STALL = 10; public static final double DRIVE_STALL_TIME = 1; diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 68cf5c5..d238f23 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -8,6 +8,8 @@ package frc.robot; +import edu.wpi.cscore.HttpCamera; +import edu.wpi.cscore.MjpegServer; import edu.wpi.cscore.UsbCamera; import edu.wpi.first.cameraserver.CameraServer; import edu.wpi.first.wpilibj.Compressor; @@ -41,6 +43,7 @@ public class Robot extends TimedRobot { public static HatchGrabberSubsystem hatchGrabberSubsystem = new HatchGrabberSubsystem(); UsbCamera groundCam,grabCam; + // HttpCamera grabCam; Command autonomousCommand; Command driveCommand; Command followLineCommand; @@ -53,6 +56,7 @@ public class Robot extends TimedRobot { Compressor compressor; public boolean debugMode; Command preset; + int count = 0; /** * This function is run when the robot is first started up and should be * used for any initialization code. @@ -72,9 +76,12 @@ public void robotInit() { groundCam = new UsbCamera("GroundCam", 0); grabCam = new UsbCamera("GrabCam", 1); - grabCam.setResolution(256, 144); + grabCam.setResolution(600, 480); + server.startAutomaticCapture(groundCam); groundCamSelected = true; + //grabCam = new HttpCamera("Vision Process", "http://10.20.22.207:1181/?action=stream/mjpeg"); + } public void switchCamera(){ System.out.println("Switched Cam"); @@ -106,7 +113,6 @@ public void robotPeriodic() { SmartDashboard.putNumber("Wrist Angle", armSubsystem2.getWristEncoderAngle()); SmartDashboard.putBoolean("Wrist Limit", armSubsystem2.getWristLowerLimit()); SmartDashboard.putBoolean("Arm Limit", armSubsystem2.getShoulderLowerLimit()); - SmartDashboard.putBoolean("Debug Mode", debugMode); SmartDashboard.putBoolean("Manual Mode", armSubsystem2.getManualMode()); @@ -114,12 +120,26 @@ public void robotPeriodic() { SmartDashboard.putBoolean("Tipping", driveSubsystem.checkTip()); + count++; + if(count>10){ + SmartDashboard.putBoolean("Drifting", driveSubsystem.checkDrift()); + + SmartDashboard.putBoolean("On Fire", driveSubsystem.isOnFire()); + SmartDashboard.putBoolean("Cruising Altitude", driveSubsystem.isCruisingAltitude()); + SmartDashboard.putBoolean("Is Probably About to Rain", driveSubsystem.isProbablyAboutToRain()); + + SmartDashboard.putBoolean("Drive Stall Detected", driveSubsystem.isStalled()); + SmartDashboard.putBoolean("Shoulder Stall Detected", armSubsystem2.isShoulderStalled()); + SmartDashboard.putBoolean("Wrist Stall Detected", armSubsystem2.isWristStalled()); + + + + count = 0; + } - SmartDashboard.putBoolean("Drifting", driveSubsystem.checkDrift()); - SmartDashboard.putBoolean("On Fire", driveSubsystem.isOnFire()); - SmartDashboard.putBoolean("Cruising Altitude", driveSubsystem.isCruisingAltitude()) - ; + + armSubsystem2.checkShoulderLimits(); armSubsystem2.checkWristLimits(); diff --git a/src/main/java/frc/robot/commands/DriveCommand.java b/src/main/java/frc/robot/commands/DriveCommand.java index d711842..a587d3c 100644 --- a/src/main/java/frc/robot/commands/DriveCommand.java +++ b/src/main/java/frc/robot/commands/DriveCommand.java @@ -68,12 +68,14 @@ protected void execute() { speedRight *= ConstantsMap.TURTLE_SPEED; } if(armSubsystem.getShoulderEncoderAngle()>0){ - speedLeft *= .6; - speedRight *= .6; + speedLeft *= .75; + speedRight *= .75; + } - driveSubsystem.setLeftSpeed(speedLeft*ConstantsMap.TURTLE_SPEED); - driveSubsystem.setRightSpeed(speedRight*ConstantsMap.TURTLE_SPEED); + + driveSubsystem.setLeftSpeed(speedLeft); + driveSubsystem.setRightSpeed(speedRight); //Auto Brake Mode //attack3Map.startAutoBrakerSystem(); @@ -109,6 +111,9 @@ protected void displayData(){ SmartDashboard.putNumber("LEft Count",driveSubsystem.getLeftEncoderCount()); SmartDashboard.putNumber("Right Distance",driveSubsystem.getRightEncoderDistance()); SmartDashboard.putNumber("LEft Disatance",driveSubsystem.getLeftEncoderDistance()); + SmartDashboard.putBoolean("Turtle", turtlemode); + SmartDashboard.putBoolean("Brake Mode", brakeState); + } // Make this return true when this Command no longer needs to run execute() diff --git a/src/main/java/frc/robot/commands/TurnToAngle.java b/src/main/java/frc/robot/commands/TurnToAngle.java index 3e604d5..4f665fe 100644 --- a/src/main/java/frc/robot/commands/TurnToAngle.java +++ b/src/main/java/frc/robot/commands/TurnToAngle.java @@ -5,17 +5,14 @@ import frc.robot.Robot; import frc.robot.subsystems.DriveSubsystem; -import javax.swing.text.StyleContext.SmallAttributeSet; import com.kauailabs.navx.frc.AHRS; -import edu.wpi.first.wpilibj.Encoder; import edu.wpi.first.wpilibj.PIDController; import edu.wpi.first.wpilibj.PIDOutput; import edu.wpi.first.wpilibj.PIDSource; import edu.wpi.first.wpilibj.PIDSourceType; import edu.wpi.first.wpilibj.command.Command; -import edu.wpi.first.wpilibj.drive.Vector2d; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; public class TurnToAngle extends Command implements PIDSource, PIDOutput { diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index 6b5f193..b8f91b0 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -16,6 +16,7 @@ import com.ctre.phoenix.motorcontrol.ControlMode; import com.ctre.phoenix.motorcontrol.FeedbackDevice; import com.ctre.phoenix.motorcontrol.NeutralMode; +import com.ctre.phoenix.motorcontrol.StatusFrameEnhanced; import com.ctre.phoenix.motorcontrol.can.TalonSRX; import com.kauailabs.navx.frc.AHRS; @@ -74,13 +75,60 @@ public DriveSubsystem() { leftSlave.follow(left); rightSlave.follow(right); SmartDashboard.putData(ahrs); + + left.setSensorPhase(true); + right.setSensorPhase(true); + + left.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Relative, + ConstantsMap.kPIDLoopIdx, + ConstantsMap.kTimeoutMs); + left.setStatusFramePeriod(StatusFrameEnhanced.Status_13_Base_PIDF0, 10, ConstantsMap.kTimeoutMs); + left.setStatusFramePeriod(StatusFrameEnhanced.Status_10_MotionMagic, 10, ConstantsMap.kTimeoutMs); + + left.configNominalOutputForward(0, ConstantsMap.kTimeoutMs); + left.configNominalOutputReverse(0, ConstantsMap.kTimeoutMs); + left.configPeakOutputForward(1, ConstantsMap.kTimeoutMs); + left.configPeakOutputReverse(-1, ConstantsMap.kTimeoutMs); + + left.selectProfileSlot(ConstantsMap.kSlotIdx, ConstantsMap.kPIDLoopIdx); + left.config_kF(ConstantsMap.kSlotIdx, ConstantsMap.driveGains.kF, ConstantsMap.kTimeoutMs); + left.config_kP(ConstantsMap.kSlotIdx, ConstantsMap.driveGains.kP, ConstantsMap.kTimeoutMs); + left.config_kI(ConstantsMap.kSlotIdx, ConstantsMap.driveGains.kI, ConstantsMap.kTimeoutMs); + left.config_kD(ConstantsMap.kSlotIdx, ConstantsMap.driveGains.kD, ConstantsMap.kTimeoutMs); + + left.configMotionCruiseVelocity(ConstantsMap.DRIVE_VELOCITY, ConstantsMap.kTimeoutMs); + left.configMotionAcceleration(ConstantsMap.DRIVE_ACCEL, ConstantsMap.kTimeoutMs); + + + + + right.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Relative, + ConstantsMap.kPIDLoopIdx, + ConstantsMap.kTimeoutMs); + right.setStatusFramePeriod(StatusFrameEnhanced.Status_13_Base_PIDF0, 10, ConstantsMap.kTimeoutMs); + right.setStatusFramePeriod(StatusFrameEnhanced.Status_10_MotionMagic, 10, ConstantsMap.kTimeoutMs); + + right.configNominalOutputForward(0, ConstantsMap.kTimeoutMs); + right.configNominalOutputReverse(0, ConstantsMap.kTimeoutMs); + right.configPeakOutputForward(1, ConstantsMap.kTimeoutMs); + right.configPeakOutputReverse(-1, ConstantsMap.kTimeoutMs); + + right.selectProfileSlot(ConstantsMap.kSlotIdx, ConstantsMap.kPIDLoopIdx); + right.config_kF(ConstantsMap.kSlotIdx, ConstantsMap.driveGains.kF, ConstantsMap.kTimeoutMs); + right.config_kP(ConstantsMap.kSlotIdx, ConstantsMap.driveGains.kP, ConstantsMap.kTimeoutMs); + right.config_kI(ConstantsMap.kSlotIdx, ConstantsMap.driveGains.kI, ConstantsMap.kTimeoutMs); + right.config_kD(ConstantsMap.kSlotIdx, ConstantsMap.driveGains.kD, ConstantsMap.kTimeoutMs); + + right.configMotionCruiseVelocity(ConstantsMap.DRIVE_VELOCITY, ConstantsMap.kTimeoutMs); + right.configMotionAcceleration(ConstantsMap.DRIVE_ACCEL, ConstantsMap.kTimeoutMs); } public void initDefaultCommand() { // Set the default command for a subsystem here. setDefaultCommand(new DriveCommand()); } public double getDistance(){ - return bus.readOnly(buffer, count) + //return bus.readOnly(buffer, count); + return 0; } public boolean checkTip(){ From de743c17bd28a6c34dd1cbb55c34cf8ac2df4fd5 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Tue, 12 Mar 2019 10:01:04 -0500 Subject: [PATCH 114/131] converted to comp bot --- src/main/java/frc/robot/ConstantsMap.java | 4 +++- src/main/java/frc/robot/RobotMap.java | 8 ++++++-- src/main/java/frc/robot/subsystems/ArmSubsystem2.java | 2 +- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 617e43d..8642a62 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -67,7 +67,9 @@ public class ConstantsMap { public static final double WRIST_SPEED_MULT = .1; public static final double SHOULDER_SPEED_MULT = .1; public static final double WRIST_ENCODER_TICKS_PER_ROTATION = 4096; - public static final double WRIST_ENCODER_ANGLE_PER_TICK = 360/((double)WRIST_ENCODER_TICKS_PER_ROTATION * 63); + //public static final double WRIST_ENCODER_ANGLE_PER_TICK = 360/((double)WRIST_ENCODER_TICKS_PER_ROTATION * 63); + public static final double WRIST_ENCODER_ANGLE_PER_TICK = 360/((double)WRIST_ENCODER_TICKS_PER_ROTATION * 63 * (38.0/18.0)); + public static final double WRIST_MIN_ANGLE_DOWN = -10.0; public static final double WRIST_MIN_ANGLE_UP = -60.0; diff --git a/src/main/java/frc/robot/RobotMap.java b/src/main/java/frc/robot/RobotMap.java index 5eeeebf..6955440 100644 --- a/src/main/java/frc/robot/RobotMap.java +++ b/src/main/java/frc/robot/RobotMap.java @@ -37,8 +37,12 @@ public class RobotMap { public static final int LOWER_WRIST_LIMIT_PORT2 = 3; - public static final int HATCH_PISTON_F = 3; + /* public static final int HATCH_PISTON_F = 3; public static final int HATCH_PISTON_R = 1; public static final int RELEASE_PISTON_1_F = 2; - public static final int RELEASE_PISTON_1_R = 0; + public static final int RELEASE_PISTON_1_R = 0; */ + public static final int HATCH_PISTON_F = 4; + public static final int HATCH_PISTON_R = 5; + public static final int RELEASE_PISTON_1_F = 7; + public static final int RELEASE_PISTON_1_R = 6; } diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index 5d6c412..fb67283 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -116,7 +116,7 @@ public ArmSubsystem2() { //shoulder.configForwardLimitSwitchSource(LimitSwitchSource., LimitSwitchNormal.NormallyClosed); wrist = new TalonSRX(RobotMap.WRIST_JOINT_PORT); - wrist.setInverted(true); + wrist.setInverted(false); wrist.setNeutralMode(NeutralMode.Brake); wrist.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Absolute, ConstantsMap.kPIDLoopIdx, From 523b8375ac155c1358cd4a3e3c7f1cb819a7ec33 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Tue, 12 Mar 2019 10:04:52 -0500 Subject: [PATCH 115/131] I lied i actaully converted to practice bot --- src/main/java/frc/robot/ConstantsMap.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 8642a62..d4e370d 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -60,7 +60,7 @@ public class ConstantsMap { //For ArmSubsystem public static final int kSlotIdx = 0; public static final int kPIDLoopIdx = 0; - public static final int kTimeoutMs = 30; + public static final int kTimeoutMs = 30; From 952f38f4915e9bec0ac2ddfb2086ed2b463e9e1e Mon Sep 17 00:00:00 2001 From: ayush17agarwal Date: Wed, 13 Mar 2019 12:12:21 -0500 Subject: [PATCH 116/131] Changes from after session 3/12 --- src/main/java/frc/robot/ConstantsMap.java | 10 ++-- src/main/java/frc/robot/RobotMap.java | 5 +- .../frc/robot/subsystems/ArmSubsystem2.java | 48 +++++++++++++++++-- .../subsystems/HatchGrabberSubsystem.java | 10 ++-- 4 files changed, 57 insertions(+), 16 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index d4e370d..40040c0 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -68,7 +68,7 @@ public class ConstantsMap { public static final double SHOULDER_SPEED_MULT = .1; public static final double WRIST_ENCODER_TICKS_PER_ROTATION = 4096; //public static final double WRIST_ENCODER_ANGLE_PER_TICK = 360/((double)WRIST_ENCODER_TICKS_PER_ROTATION * 63); - public static final double WRIST_ENCODER_ANGLE_PER_TICK = 360/((double)WRIST_ENCODER_TICKS_PER_ROTATION * 63 * (38.0/18.0)); + public static final double WRIST_ENCODER_ANGLE_PER_TICK = 360/((double)WRIST_ENCODER_TICKS_PER_ROTATION * 100 * (38.0/18.0)); public static final double WRIST_MIN_ANGLE_DOWN = -10.0; public static final double WRIST_MIN_ANGLE_UP = -60.0; @@ -78,14 +78,14 @@ public class ConstantsMap { public static final double WRIST_IN_ANGLE = 60.0; - public static final int WRIST_VELOCITY = 18000; - public static final int WRIST_ACCEL = (int)Math.floor(18000.0*2.0/3.0); + public static final int WRIST_VELOCITY = 1000; + public static final int WRIST_ACCEL = 1000; public static final int WRIST_FOLLOW_DISTANCE = 20; public static final double WRIST_CHANGE_SETPOINT_SPEED = .2; - //public static final Gains wristGains = new Gains(0.2, 0.0, 0.0, 0.2, 0, 1.0); + public static final Gains wristGains = new Gains(0.01, 0.0, 0.0, 0.0, 0, 1.0); //public static final Gains wristGains = new Gains(0.2, 0.001, 0, .1, 20, 1.0); - public static final Gains wristGains = new Gains(0.21, 0.0005, 0, 0, 20, 1.0); + //public static final Gains wristGains = new Gains(0.21, 0.0005, 0, 0, 20, 1.0); public static final int SHOULDER_ENCODER_TICKS_PER_ROTATION = 4096; //ticks diff --git a/src/main/java/frc/robot/RobotMap.java b/src/main/java/frc/robot/RobotMap.java index 6955440..31e973c 100644 --- a/src/main/java/frc/robot/RobotMap.java +++ b/src/main/java/frc/robot/RobotMap.java @@ -23,10 +23,11 @@ public class RobotMap { public static final int SHOULDER_JOINT_RIGHT_PORT = 6; public static final int SHOULDER_JOINT_LEFT_PORT = 5; - public static final int WRIST_JOINT_PORT = 7; + public static final int WRIST_JOINT_LEFT_PORT = 7; + public static final int WRIST_JOINT_RIGHT_PORT = 9; public static final int GRAB_SPIN_1 = 8; - public static final int GRAB_SPIN_2 = 9; + //public static final int GRAB_SPIN_2 = 9; diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index fb67283..e531dc6 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -43,7 +43,7 @@ public class ArmSubsystem2 extends Subsystem { private boolean isShoulderStall = false; private long startWristStall = 0; private long startShoulderStall = 0; - TalonSRX shoulder, shoulder2, shoulderSlave,wrist; + TalonSRX shoulder, shoulder2, shoulderSlave, wrist, wristSlave, wrist2; public ArmSubsystem2() { @@ -115,9 +115,19 @@ public ArmSubsystem2() { //shoulder.configForwardLimitSwitchSource(LimitSwitchSource., LimitSwitchNormal.NormallyClosed); - wrist = new TalonSRX(RobotMap.WRIST_JOINT_PORT); - wrist.setInverted(false); + wrist = new TalonSRX(RobotMap.WRIST_JOINT_LEFT_PORT); + wrist2 = new TalonSRX(RobotMap.WRIST_JOINT_RIGHT_PORT); + + wrist.setInverted(true); + wrist2.setInverted(false); + + wrist.setSensorPhase(false); + //wrist2.setSensorPhase(true); + wrist.setNeutralMode(NeutralMode.Brake); + wrist2.setNeutralMode(NeutralMode.Brake); + wrist2.follow(wrist); + wrist.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Absolute, ConstantsMap.kPIDLoopIdx, ConstantsMap.kTimeoutMs); @@ -137,7 +147,29 @@ public ArmSubsystem2() { wrist.config_kD(ConstantsMap.kSlotIdx, ConstantsMap.wristGains.kD, ConstantsMap.kTimeoutMs); wrist.configMotionCruiseVelocity(ConstantsMap.WRIST_VELOCITY, ConstantsMap.kTimeoutMs); - wrist.configMotionAcceleration(ConstantsMap.WRIST_ACCEL, ConstantsMap.kTimeoutMs); + wrist.configMotionAcceleration(ConstantsMap.WRIST_ACCEL, ConstantsMap.kTimeoutMs); + +/* + wrist2.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Absolute, + ConstantsMap.kPIDLoopIdx, + ConstantsMap.kTimeoutMs); + wrist2.setStatusFramePeriod(StatusFrameEnhanced.Status_13_Base_PIDF0, 10, ConstantsMap.kTimeoutMs); + wrist2.setStatusFramePeriod(StatusFrameEnhanced.Status_10_MotionMagic, 10, ConstantsMap.kTimeoutMs); + + wrist2.configNominalOutputForward(0, ConstantsMap.kTimeoutMs); + wrist2.configNominalOutputReverse(0, ConstantsMap.kTimeoutMs); + wrist2.configPeakOutputForward(1, ConstantsMap.kTimeoutMs); + wrist2.configPeakOutputReverse(-1, ConstantsMap.kTimeoutMs); + + wrist2.selectProfileSlot(ConstantsMap.kSlotIdx, ConstantsMap.kPIDLoopIdx); + wrist2.config_kF(ConstantsMap.kSlotIdx, ConstantsMap.shoulderGains.kF, ConstantsMap.kTimeoutMs); + wrist2.config_kP(ConstantsMap.kSlotIdx, ConstantsMap.shoulderGains.kP, ConstantsMap.kTimeoutMs); + wrist2.config_kI(ConstantsMap.kSlotIdx, ConstantsMap.shoulderGains.kI, ConstantsMap.kTimeoutMs); + wrist2.config_kD(ConstantsMap.kSlotIdx, ConstantsMap.shoulderGains.kD, ConstantsMap.kTimeoutMs); + + wrist2.configMotionCruiseVelocity(ConstantsMap.SHOULDER_VELOCITY, ConstantsMap.kTimeoutMs); + wrist2.configMotionAcceleration(ConstantsMap.SHOULDER_ACCEL, ConstantsMap.kTimeoutMs); + */ //upperLimit = new DigitalInput(RobotMap.UPPER_ARM_LIMIT_PORT); //lowerLimit = new DigitalInput(RobotMap.LOWER_ARM_LIMIT_PORT); @@ -171,6 +203,7 @@ public void toggleLevelMode(){ } public void setWristJointSpeed(double speed) { wrist.set(ControlMode.PercentOutput,speed); + //wrist2.set(ControlMode.PercentOutput, speed); } public void setWristSetPoint(double angle){ if(shoulder.getControlMode() == ControlMode.MotionMagic){ @@ -208,6 +241,7 @@ public void setWristSetPoint(double angle){ double ticks = angle/ConstantsMap.WRIST_ENCODER_ANGLE_PER_TICK; wrist.set(ControlMode.MotionMagic, ticks); + //wrist2.set(ControlMode.MotionMagic, ticks); wristSet = ticks; } public void setShoulderSetPoint(double angle){ @@ -230,10 +264,14 @@ public void checkWristLimits(){ if(getWristLowerLimit()){ if(getShoulderEncoderAngle()<-50){ wrist.setSelectedSensorPosition((int)(ConstantsMap.WRIST_MAX_ANGLE/ConstantsMap.WRIST_ENCODER_ANGLE_PER_TICK)); + //wrist2.setSelectedSensorPosition((int)(ConstantsMap.WRIST_MAX_ANGLE/ConstantsMap.WRIST_ENCODER_ANGLE_PER_TICK)); + } if(wrist.getControlMode() == ControlMode.PercentOutput){ if(wrist.getMotorOutputPercent()>0){ wrist.set(ControlMode.PercentOutput, 0); + //wrist2.set(ControlMode.PercentOutput, 0); + } } else if (wrist.getControlMode() == ControlMode.MotionMagic){ @@ -289,6 +327,8 @@ public double getWristTicks(){ } public void zeroWrist() { wrist.setSelectedSensorPosition(0, ConstantsMap.kPIDLoopIdx, ConstantsMap.kTimeoutMs); + //wrist2.setSelectedSensorPosition(0, ConstantsMap.kPIDLoopIdx, ConstantsMap.kTimeoutMs); + } public void zeroShoulder() { shoulder.setSelectedSensorPosition(0, ConstantsMap.kPIDLoopIdx, ConstantsMap.kTimeoutMs); diff --git a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java index 52c2e21..bf853e7 100644 --- a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java +++ b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java @@ -38,8 +38,8 @@ public HatchGrabberSubsystem() { //releasePiston1 = new Solenoid(5); motor1 = new TalonSRX(RobotMap.GRAB_SPIN_1); - motor2 = new TalonSRX(RobotMap.GRAB_SPIN_2); - motor1.setInverted(true); + //motor2 = new TalonSRX(RobotMap.GRAB_SPIN_2); + //motor1.setInverted(true); } @@ -60,17 +60,17 @@ public void unEjectHatch() { } public void intakeWheels(){ motor1.set(ControlMode.PercentOutput, ConstantsMap.BALL_INTAKE_SPEED); - motor2.set(ControlMode.PercentOutput, ConstantsMap.BALL_INTAKE_SPEED); + //motor2.set(ControlMode.PercentOutput, ConstantsMap.BALL_INTAKE_SPEED); } public void outakeWheels(){ motor1.set(ControlMode.PercentOutput, -ConstantsMap.BALL_OUTTAKE_SPEED); - motor2.set(ControlMode.PercentOutput, -ConstantsMap.BALL_OUTTAKE_SPEED); + //motor2.set(ControlMode.PercentOutput, -ConstantsMap.BALL_OUTTAKE_SPEED); } public void stopWheels(){ motor1.set(ControlMode.PercentOutput, 0); - motor2.set(ControlMode.PercentOutput, 0); + //motor2.set(ControlMode.PercentOutput, 0); } @Override From 9f0d18cd4a3fcd5b20aea3834ba996a03f2b0988 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Wed, 13 Mar 2019 17:13:23 -0500 Subject: [PATCH 117/131] mostly working wrist stuff --- src/main/java/frc/robot/ConstantsMap.java | 10 +++--- .../frc/robot/subsystems/ArmSubsystem2.java | 33 ++++--------------- 2 files changed, 11 insertions(+), 32 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 40040c0..5cff219 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -78,13 +78,13 @@ public class ConstantsMap { public static final double WRIST_IN_ANGLE = 60.0; - public static final int WRIST_VELOCITY = 1000; - public static final int WRIST_ACCEL = 1000; + public static final int WRIST_VELOCITY = 30000; + public static final int WRIST_ACCEL = 30000*2; public static final int WRIST_FOLLOW_DISTANCE = 20; public static final double WRIST_CHANGE_SETPOINT_SPEED = .2; - public static final Gains wristGains = new Gains(0.01, 0.0, 0.0, 0.0, 0, 1.0); - //public static final Gains wristGains = new Gains(0.2, 0.001, 0, .1, 20, 1.0); + public static final Gains wristGains = new Gains(0.12, 0.0005, 0.0, 0.00, 20, 1.0); + //public static final Gains wristGains = new Gains(0.13, 0.0005, 0.0, 0.0341, 0, 1.0); //public static final Gains wristGains = new Gains(0.21, 0.0005, 0, 0, 20, 1.0); @@ -105,7 +105,7 @@ public class ConstantsMap { //public static final Gains shoulderGains = new Gains(.2, 0.0, 0, 0.042625, 0, 1.0); //For Grabber - public static final double BALL_INTAKE_SPEED = .5; + public static final double BALL_INTAKE_SPEED = 1; public static final double BALL_OUTTAKE_SPEED = 1; diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index e531dc6..e0578a5 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -131,7 +131,6 @@ public ArmSubsystem2() { wrist.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Absolute, ConstantsMap.kPIDLoopIdx, ConstantsMap.kTimeoutMs); - wrist.setSensorPhase(true); wrist.setStatusFramePeriod(StatusFrameEnhanced.Status_13_Base_PIDF0, 10, ConstantsMap.kTimeoutMs); wrist.setStatusFramePeriod(StatusFrameEnhanced.Status_10_MotionMagic, 10, ConstantsMap.kTimeoutMs); @@ -149,31 +148,7 @@ public ArmSubsystem2() { wrist.configMotionCruiseVelocity(ConstantsMap.WRIST_VELOCITY, ConstantsMap.kTimeoutMs); wrist.configMotionAcceleration(ConstantsMap.WRIST_ACCEL, ConstantsMap.kTimeoutMs); -/* - wrist2.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Absolute, - ConstantsMap.kPIDLoopIdx, - ConstantsMap.kTimeoutMs); - wrist2.setStatusFramePeriod(StatusFrameEnhanced.Status_13_Base_PIDF0, 10, ConstantsMap.kTimeoutMs); - wrist2.setStatusFramePeriod(StatusFrameEnhanced.Status_10_MotionMagic, 10, ConstantsMap.kTimeoutMs); - - wrist2.configNominalOutputForward(0, ConstantsMap.kTimeoutMs); - wrist2.configNominalOutputReverse(0, ConstantsMap.kTimeoutMs); - wrist2.configPeakOutputForward(1, ConstantsMap.kTimeoutMs); - wrist2.configPeakOutputReverse(-1, ConstantsMap.kTimeoutMs); - - wrist2.selectProfileSlot(ConstantsMap.kSlotIdx, ConstantsMap.kPIDLoopIdx); - wrist2.config_kF(ConstantsMap.kSlotIdx, ConstantsMap.shoulderGains.kF, ConstantsMap.kTimeoutMs); - wrist2.config_kP(ConstantsMap.kSlotIdx, ConstantsMap.shoulderGains.kP, ConstantsMap.kTimeoutMs); - wrist2.config_kI(ConstantsMap.kSlotIdx, ConstantsMap.shoulderGains.kI, ConstantsMap.kTimeoutMs); - wrist2.config_kD(ConstantsMap.kSlotIdx, ConstantsMap.shoulderGains.kD, ConstantsMap.kTimeoutMs); - - wrist2.configMotionCruiseVelocity(ConstantsMap.SHOULDER_VELOCITY, ConstantsMap.kTimeoutMs); - wrist2.configMotionAcceleration(ConstantsMap.SHOULDER_ACCEL, ConstantsMap.kTimeoutMs); - */ - //upperLimit = new DigitalInput(RobotMap.UPPER_ARM_LIMIT_PORT); - //lowerLimit = new DigitalInput(RobotMap.LOWER_ARM_LIMIT_PORT); - //upperLimitWrist = new DigitalInput(RobotMap.LOWER_WRIST_LIMIT_PORT); lowerLimit.setName("LowerWristLimit"); setWristSetPoint(getWristEncoderAngle()); @@ -284,9 +259,13 @@ else if (wrist.getControlMode() == ControlMode.MotionMagic){ } public void checkShoulderLimits(){ if(!lowerLimit.get()){ - shoulder2.setSelectedSensorPosition((int)(ConstantsMap.SHOULDER_MIN_ANGLE/ConstantsMap.SHOULDER_ENCODER_ANGLE_PER_TICK)); - shoulder.setSelectedSensorPosition((int)(ConstantsMap.SHOULDER_MIN_ANGLE/ConstantsMap.SHOULDER_ENCODER_ANGLE_PER_TICK)); + if(getShoulderEncoderAngle() Date: Wed, 13 Mar 2019 17:18:59 -0500 Subject: [PATCH 118/131] working better --- src/main/java/frc/robot/RobotMap.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/frc/robot/RobotMap.java b/src/main/java/frc/robot/RobotMap.java index 31e973c..de1c6d8 100644 --- a/src/main/java/frc/robot/RobotMap.java +++ b/src/main/java/frc/robot/RobotMap.java @@ -44,6 +44,6 @@ public class RobotMap { public static final int RELEASE_PISTON_1_R = 0; */ public static final int HATCH_PISTON_F = 4; public static final int HATCH_PISTON_R = 5; - public static final int RELEASE_PISTON_1_F = 7; - public static final int RELEASE_PISTON_1_R = 6; + public static final int RELEASE_PISTON_1_F = 6; + public static final int RELEASE_PISTON_1_R = 7; } From b1eaa2839352c0f46879372962a733aaf853de42 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Wed, 13 Mar 2019 20:50:41 -0500 Subject: [PATCH 119/131] Revert "I lied i actaully converted to practice bot" This reverts commit 523b8375ac155c1358cd4a3e3c7f1cb819a7ec33. --- src/main/java/frc/robot/ConstantsMap.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 5cff219..eb72de2 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -60,7 +60,7 @@ public class ConstantsMap { //For ArmSubsystem public static final int kSlotIdx = 0; public static final int kPIDLoopIdx = 0; - public static final int kTimeoutMs = 30; + public static final int kTimeoutMs = 30; From ca2d3db724d34a9375cf12d1cc2b6fa1e85ad288 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Wed, 13 Mar 2019 20:55:03 -0500 Subject: [PATCH 120/131] Revert "working better" This reverts commit 730a0e8d46123c7234bc51c8a1d4857bf7db1e17. --- src/main/java/frc/robot/RobotMap.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/frc/robot/RobotMap.java b/src/main/java/frc/robot/RobotMap.java index de1c6d8..31e973c 100644 --- a/src/main/java/frc/robot/RobotMap.java +++ b/src/main/java/frc/robot/RobotMap.java @@ -44,6 +44,6 @@ public class RobotMap { public static final int RELEASE_PISTON_1_R = 0; */ public static final int HATCH_PISTON_F = 4; public static final int HATCH_PISTON_R = 5; - public static final int RELEASE_PISTON_1_F = 6; - public static final int RELEASE_PISTON_1_R = 7; + public static final int RELEASE_PISTON_1_F = 7; + public static final int RELEASE_PISTON_1_R = 6; } From d444b46fce07f6bbd7b72aca307a9f7a2d3621b7 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Thu, 14 Mar 2019 14:11:46 -0500 Subject: [PATCH 121/131] fixed and also probably broke the arm and the wrist. --- src/main/java/frc/robot/ConstantsMap.java | 4 + src/main/java/frc/robot/Robot.java | 2 +- .../java/frc/robot/commands/ArmCommand2.java | 2 - .../frc/robot/commands/ArmPresetCommand.java | 6 +- src/main/java/frc/robot/commands/GoHome.java | 28 ++- .../frc/robot/commands/WristForceZero.java | 8 +- .../frc/robot/subsystems/ArmSubsystem2.java | 195 +++++++++++------- 7 files changed, 153 insertions(+), 92 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index eb72de2..da59417 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -84,6 +84,8 @@ public class ConstantsMap { public static final double WRIST_CHANGE_SETPOINT_SPEED = .2; public static final Gains wristGains = new Gains(0.12, 0.0005, 0.0, 0.00, 20, 1.0); + public static final double WRIST_TOLERANCE = .2; + //public static final Gains wristGains = new Gains(0.13, 0.0005, 0.0, 0.0341, 0, 1.0); //public static final Gains wristGains = new Gains(0.21, 0.0005, 0, 0, 20, 1.0); @@ -102,6 +104,8 @@ public class ConstantsMap { public static final int SHOULDER_VELOCITY = 26000; public static final int SHOULDER_ACCEL = 24000; public static final Gains shoulderGains = new Gains(.2 , 0.0001, 0, 0.042625, 20, 1.0); + public static final double SHOULDER_TOLERANCE = .2; + //public static final Gains shoulderGains = new Gains(.2, 0.0, 0, 0.042625, 0, 1.0); //For Grabber diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index d238f23..4d87b06 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -107,7 +107,7 @@ public void switchCamera(){ public void robotPeriodic() { //Print out encoder values for testing on Arm leveling SmartDashboard.putNumber("Shoulder Angle", armSubsystem2.getShoulderEncoderAngle()); - SmartDashboard.putNumber("Shoulder Set", armSubsystem2.getShoulderSetPoint()); + SmartDashboard.putNumber("Shoulder Set", armSubsystem2.getRightShoulderSetPoint()); SmartDashboard.putNumber("Wrist Set", armSubsystem2.getWristSetPoint()); SmartDashboard.putNumber("Wrist Angle", armSubsystem2.getWristEncoderAngle()); diff --git a/src/main/java/frc/robot/commands/ArmCommand2.java b/src/main/java/frc/robot/commands/ArmCommand2.java index e78f00c..0ffdd66 100644 --- a/src/main/java/frc/robot/commands/ArmCommand2.java +++ b/src/main/java/frc/robot/commands/ArmCommand2.java @@ -128,8 +128,6 @@ protected void end() { protected void interrupted() { System.out.println("Arm Command Intrupted"); - armSubsystem.setShoulderJointSpeed(0); - armSubsystem.setWristJointSpeed(0);; } } \ No newline at end of file diff --git a/src/main/java/frc/robot/commands/ArmPresetCommand.java b/src/main/java/frc/robot/commands/ArmPresetCommand.java index 9c6ceaa..0e9fb4b 100644 --- a/src/main/java/frc/robot/commands/ArmPresetCommand.java +++ b/src/main/java/frc/robot/commands/ArmPresetCommand.java @@ -48,7 +48,7 @@ protected void execute() { else if(levelMode){ armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); } - else if(!(Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<.5)){ + else if(!armSubsystem.isShoulderAtSetPoint()){ armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); } else{ @@ -69,10 +69,10 @@ protected boolean isFinished() { return true; } else if(levelMode){ - return Math.abs(armSubsystem.getShoulderEncoderAngle() - sPreset)<.2 && Math.abs(armSubsystem.getWristEncoderAngle() + armSubsystem.getShoulderEncoderAngle())<.2; + return armSubsystem.isShoulderAtSetPoint() && Math.abs(armSubsystem.getWristEncoderAngle() + armSubsystem.getShoulderEncoderAngle()) ConstantsMap.WRIST_MAX_ANGLE-30){ + waitForWrist = false; + armSubsystem.setShoulderSetPoint(ConstantsMap.SHOULDER_MIN_ANGLE); + } + } } // Make this return true when this Command no longer needs to run execute() @Override protected boolean isFinished() { - //return false; - - return Math.abs(armSubsystem.getShoulderEncoderAngle() - ConstantsMap.SHOULDER_MIN_ANGLE)<.5 && Math.abs(armSubsystem.getWristEncoderAngle() - ConstantsMap.WRIST_MAX_ANGLE)<.5; - + return armSubsystem.isShoulderAtSetPoint() && armSubsystem.isWristAtSetPoint(); } // Called once after isFinished returns true @Override protected void end() { - System.out.println("Preset Finished at: " + armSubsystem.getShoulderEncoderAngle() + " degress"); + System.out.println("Go Home Completed Successfully"); } // Called when another command which requires one or more of the same // subsystems is scheduled to run @Override protected void interrupted() { - System.out.println("Preset Interupt"); + System.out.println("Go Home Intrrupted"); } } diff --git a/src/main/java/frc/robot/commands/WristForceZero.java b/src/main/java/frc/robot/commands/WristForceZero.java index 49dbf64..2edd32b 100644 --- a/src/main/java/frc/robot/commands/WristForceZero.java +++ b/src/main/java/frc/robot/commands/WristForceZero.java @@ -1,6 +1,7 @@ package frc.robot.commands; import edu.wpi.first.wpilibj.command.Command; +import frc.robot.ConstantsMap; import frc.robot.Robot; import frc.robot.subsystems.ArmSubsystem2; @@ -15,7 +16,8 @@ public WristForceZero() { @Override protected void initialize() { System.out.println("Wrist Zero Started"); - armSubsystem.setWristJointSpeed(.6); + //armSubsystem.setWristJointSpeed(.6); + armSubsystem.setWristSetPoint(ConstantsMap.WRIST_MAX_ANGLE); armSubsystem.setShoulderSetPoint(armSubsystem.getShoulderEncoderAngle()); } @@ -23,7 +25,9 @@ protected void initialize() { // Called repeatedly when this Command is scheduled to run @Override protected void execute() { - + if(armSubsystem.isWristAtSetPoint()){ + armSubsystem.setWristJointSpeed(.4); + } } diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index e0578a5..e4243f5 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -158,12 +158,7 @@ public ArmSubsystem2() { levelMode = false; } - public void setShoulderJointSpeed(double speed) { - - shoulder.set(ControlMode.PercentOutput,speed); - shoulder2.set(ControlMode.PercentOutput,speed); - - } + //Modes public boolean getManualMode(){ return manualMode; } @@ -176,10 +171,14 @@ public void toggleManualMode(){ public void toggleLevelMode(){ levelMode = !levelMode; } + + //Wrist Stuff + public void setWristJointSpeed(double speed) { wrist.set(ControlMode.PercentOutput,speed); //wrist2.set(ControlMode.PercentOutput, speed); } + public void setWristSetPoint(double angle){ if(shoulder.getControlMode() == ControlMode.MotionMagic){ @@ -219,21 +218,7 @@ public void setWristSetPoint(double angle){ //wrist2.set(ControlMode.MotionMagic, ticks); wristSet = ticks; } - public void setShoulderSetPoint(double angle){ - if(angle>ConstantsMap.SHOULDER_MAX_ANGLE){ - angle =ConstantsMap.SHOULDER_MAX_ANGLE; - } - if(angle ConstantsMap.WRIST_STALL; if(isStallcondition && !isWristStall){ @@ -379,6 +319,115 @@ else if(!isStallcondition && isWristStall){ return false; } } + + public double getWristSpeed(){ + return wrist.getMotorOutputPercent(); + } + public boolean isWristAtSetPoint(){ + return Math.abs(getWristSetPoint()-getWristEncoderAngle()) < ConstantsMap.WRIST_TOLERANCE; + + + } + + //Shoulder Stuff + + public void setShoulderJointSpeed(double speed) { + + shoulder.set(ControlMode.PercentOutput,speed); + shoulder2.set(ControlMode.PercentOutput,speed); + + } + public void setShoulderSetPoint(double angle){ + if(angle>ConstantsMap.SHOULDER_MAX_ANGLE){ + angle =ConstantsMap.SHOULDER_MAX_ANGLE; + } + if(angle ConstantsMap.SHOULDER_STALL; if(isStallcondition && !isShoulderStall){ From 558cd3fbe4a663f90b7c0f0ddfaeea1773fcc735 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Tue, 19 Mar 2019 11:19:11 -0500 Subject: [PATCH 122/131] stuff --- src/main/java/frc/robot/ConstantsMap.java | 3 +- src/main/java/frc/robot/ControlPanelMap.java | 3 ++ src/main/java/frc/robot/Robot.java | 31 +++++++++++++++---- src/main/java/frc/robot/RobotMap.java | 8 ++--- .../frc/robot/commands/ArmPresetCommand.java | 18 ++++++----- src/main/java/frc/robot/commands/GoHome.java | 4 +-- .../frc/robot/commands/WristForceZero.java | 10 +++--- .../frc/robot/subsystems/ArmSubsystem2.java | 31 ++++++++++++++----- 8 files changed, 75 insertions(+), 33 deletions(-) diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index da59417..e36211e 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -135,7 +135,8 @@ public class ConstantsMap { public static final double CARGO_HATCH_PRESET = -20.0; public static final double HATCH_COLLECT_PRESET = -57.0; - public static final double BALL_COLLECT_WRIST_PRESET = -5.5; + public static final double BALL_COLLECT_WRIST_PRESET = -10 + ; public static final double BALL_COLLECT_SHOULDER_PRESET = -47; diff --git a/src/main/java/frc/robot/ControlPanelMap.java b/src/main/java/frc/robot/ControlPanelMap.java index 639ff9b..197f9c7 100644 --- a/src/main/java/frc/robot/ControlPanelMap.java +++ b/src/main/java/frc/robot/ControlPanelMap.java @@ -40,5 +40,8 @@ public static boolean switchCam() { public static boolean toggleManual() { return oi.controlPanel1.getRawButtonPressed(9); } + public static boolean forceZero() { + return oi.controlPanel1.getRawButtonPressed(3); + } } \ No newline at end of file diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index 4d87b06..ff3975f 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -49,7 +49,6 @@ public class Robot extends TimedRobot { Command followLineCommand; Command armCommand; Command hgCommand; - Command zeroWrist; boolean groundCamSelected; SendableChooser chooser = new SendableChooser<>(); CameraServer server; @@ -107,7 +106,12 @@ public void switchCamera(){ public void robotPeriodic() { //Print out encoder values for testing on Arm leveling SmartDashboard.putNumber("Shoulder Angle", armSubsystem2.getShoulderEncoderAngle()); - SmartDashboard.putNumber("Shoulder Set", armSubsystem2.getRightShoulderSetPoint()); + SmartDashboard.putNumber("Shoulder Right Angle", armSubsystem2.getRightShoulderEncoderAngle()); + SmartDashboard.putNumber("Shoulder Left Angle", armSubsystem2.getLeftShoulderEncoderAngle()); + + SmartDashboard.putNumber("Shoulder Right Set", armSubsystem2.getRightShoulderSetPoint()); + SmartDashboard.putNumber("Shoulder Left Set", armSubsystem2.getRightShoulderSetPoint()); + SmartDashboard.putNumber("Wrist Set", armSubsystem2.getWristSetPoint()); SmartDashboard.putNumber("Wrist Angle", armSubsystem2.getWristEncoderAngle()); @@ -120,6 +124,18 @@ public void robotPeriodic() { SmartDashboard.putBoolean("Tipping", driveSubsystem.checkTip()); + + SmartDashboard.putBoolean("Left At Set", armSubsystem2.isLeftShoulderAtSetPoint()); + SmartDashboard.putBoolean("Right At Set", armSubsystem2.isRightShoulderAtSetPoint()); + SmartDashboard.putBoolean("Shoulder At Set", armSubsystem2.isShoulderAtSetPoint()); + + + //SmartDashboard.putBoolean("Right Shoulder Set", armSubsystem2.getLevelMode()); + + + armSubsystem2.checkShoulderLimits(); + armSubsystem2.checkWristLimits(); + count++; if(count>10){ SmartDashboard.putBoolean("Drifting", driveSubsystem.checkDrift()); @@ -132,17 +148,16 @@ public void robotPeriodic() { SmartDashboard.putBoolean("Shoulder Stall Detected", armSubsystem2.isShoulderStalled()); SmartDashboard.putBoolean("Wrist Stall Detected", armSubsystem2.isWristStalled()); - + count = 0; + } - armSubsystem2.checkShoulderLimits(); - armSubsystem2.checkWristLimits(); - + if(ControlPanelMap.toggleDebug()){ debugMode = !debugMode; oi.unbindButtons(); @@ -160,6 +175,10 @@ public void robotPeriodic() { if(ControlPanelMap.toggleLevel() && debugMode){ armSubsystem2.toggleLevelMode(); } + if(ControlPanelMap.forceZero() && debugMode){ + armSubsystem2.zeroShoulder(); + armSubsystem2.zeroWrist(); + } if((ControlPanelMap.switchCam() || XboxMap.switchCam())){ switchCamera(); } diff --git a/src/main/java/frc/robot/RobotMap.java b/src/main/java/frc/robot/RobotMap.java index 31e973c..fe5ab1f 100644 --- a/src/main/java/frc/robot/RobotMap.java +++ b/src/main/java/frc/robot/RobotMap.java @@ -42,8 +42,8 @@ public class RobotMap { public static final int HATCH_PISTON_R = 1; public static final int RELEASE_PISTON_1_F = 2; public static final int RELEASE_PISTON_1_R = 0; */ - public static final int HATCH_PISTON_F = 4; - public static final int HATCH_PISTON_R = 5; - public static final int RELEASE_PISTON_1_F = 7; - public static final int RELEASE_PISTON_1_R = 6; + public static final int HATCH_PISTON_F = 6; + public static final int HATCH_PISTON_R = 7; + public static final int RELEASE_PISTON_1_F = 4; + public static final int RELEASE_PISTON_1_R = 5; } diff --git a/src/main/java/frc/robot/commands/ArmPresetCommand.java b/src/main/java/frc/robot/commands/ArmPresetCommand.java index 0e9fb4b..0e6cd0a 100644 --- a/src/main/java/frc/robot/commands/ArmPresetCommand.java +++ b/src/main/java/frc/robot/commands/ArmPresetCommand.java @@ -12,6 +12,8 @@ public class ArmPresetCommand extends Command { double wPreset = 1000; boolean shoulderFinished; boolean levelMode; + boolean initialized = false; + boolean shoulderDone = false; double startWrist; public ArmPresetCommand(double sAngle,double wAngle) { // Use requires() here to declare subsystem dependencies @@ -37,6 +39,8 @@ protected void initialize() { System.out.println("Start Preset: " + sPreset + " Wrist: " + wPreset); armSubsystem.setShoulderSetPoint(sPreset); //armSubsystem.setWristSetPoint(0); + initialized = true; + shoulderFinished = false; } // Called repeatedly when this Command is scheduled to run @@ -48,14 +52,12 @@ protected void execute() { else if(levelMode){ armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); } - else if(!armSubsystem.isShoulderAtSetPoint()){ + else if(!armSubsystem.isShoulderAtSetPoint(sPreset) && !shoulderFinished){ armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle()); } - else{ - //if(!shoulderFinished){ - // shoulderFinished = true; - armSubsystem.setWristSetPoint(wPreset); - // } + else{ + shoulderFinished = true; + armSubsystem.setWristSetPoint(wPreset); } //armSubsyste @@ -69,10 +71,10 @@ protected boolean isFinished() { return true; } else if(levelMode){ - return armSubsystem.isShoulderAtSetPoint() && Math.abs(armSubsystem.getWristEncoderAngle() + armSubsystem.getShoulderEncoderAngle()) Date: Tue, 19 Mar 2019 11:22:12 -0500 Subject: [PATCH 123/131] Refactor left & right Talons to Victors --- .../java/frc/robot/subsystems/DriveSubsystem.java | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index b8f91b0..ba27468 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -18,7 +18,7 @@ import com.ctre.phoenix.motorcontrol.NeutralMode; import com.ctre.phoenix.motorcontrol.StatusFrameEnhanced; import com.ctre.phoenix.motorcontrol.can.TalonSRX; - +import com.ctre.phoenix.motorcontrol.can.VictorSPX; import com.kauailabs.navx.frc.AHRS; import edu.wpi.first.wpilibj.I2C; @@ -31,10 +31,8 @@ * */ public class DriveSubsystem extends Subsystem { - - - private TalonSRX left,leftSlave,right,rightSlave; - + private TalonSRX left,right; + private VictorSPX leftSlave, rightSlave; private AHRS ahrs; private PowerDistributionPanel pdp; @@ -47,9 +45,9 @@ public DriveSubsystem() { //Instantiate motors left = new TalonSRX(RobotMap.LEFT_DRIVE_PORT_1); - leftSlave = new TalonSRX(RobotMap.LEFT_DRIVE_PORT_2); + leftSlave = new VictorSPX(RobotMap.LEFT_DRIVE_PORT_2); right = new TalonSRX(RobotMap.RIGHT_DRIVE_PORT_1); - rightSlave = new TalonSRX(RobotMap.RIGHT_DRIVE_PORT_2); + rightSlave = new VictorSPX(RobotMap.RIGHT_DRIVE_PORT_2); bus = new I2C(I2C.Port.kOnboard, 0x52); From 3ebee67c4cb8420e3c8e8f60b5a5ee6a8b3e3b97 Mon Sep 17 00:00:00 2001 From: trajing Date: Tue, 19 Mar 2019 11:35:09 -0500 Subject: [PATCH 124/131] Cache gyro and encoder inputs for drive subsystem --- .../frc/robot/subsystems/DriveSubsystem.java | 33 +++++++++++++------ 1 file changed, 23 insertions(+), 10 deletions(-) diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index ba27468..9cd1452 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -34,6 +34,9 @@ public class DriveSubsystem extends Subsystem { private TalonSRX left,right; private VictorSPX leftSlave, rightSlave; + private double leftEncoderDist, rightEncoderDist, leftEncoderRate, rightEncoderRate, angle; + private int leftEncoderCount, rightEncoderCount; + private AHRS ahrs; private PowerDistributionPanel pdp; private boolean isStallCurrent = false;; @@ -167,7 +170,6 @@ public boolean isProbablyAboutToRain(){ //sets the speed for both of the left motors public void setLeftSpeed(double speed) { left.set(ControlMode.PercentOutput,speed); - } //sets the speed for both of the right motors @@ -176,11 +178,11 @@ public void setRightSpeed (double speed) { } public double getLeftSpeed() { - return left.getSelectedSensorVelocity(0); + return leftEncoderRate * -1; } public double getRightSpeed() { - return right.getSelectedSensorVelocity(0); + return rightEncoderRate * -1; } public void tankDrive(double leftSpeed, double rightSpeed){ @@ -208,26 +210,26 @@ public void disableBrake(){ //Get Encoder Distances public double getRightEncoderDistance(){ - return right.getSelectedSensorPosition(0)* -1 * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; + return rightEncoderDist; } public double getLeftEncoderDistance(){ - return left.getSelectedSensorPosition(0)* -1 * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; + return leftEncoderDist; } //Get Encoder counts public int getLeftEncoderCount(){ - return left.getSelectedSensorPosition(0)* -1; + return leftEncoderCount; } public int getRightEncoderCount(){ - return right.getSelectedSensorPosition(0)* -1; + return rightEncoderCount; } //Get Encoder Rates public double getRightEncoderRate(){ - return right.getSelectedSensorVelocity(0)* -1; + return rightEncoderRate; } public double getLeftEncoderRate(){ - return left.getSelectedSensorVelocity(0)* -1; + return leftEncoderRate; } //reset encoders @@ -241,7 +243,7 @@ public AHRS getGyro(){ } public double getGyroAngle(){ - return ahrs.getAngle(); + return angle; } public void resetGyro() { @@ -253,4 +255,15 @@ public void stop() { right.set(ControlMode.PercentOutput,0); } + + @Override + public void periodic() { + angle = ahrs.getAngle(); + rightEncoderDist = right.getSelectedSensorPosition(0)* -1 * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; + leftEncoderDist = left.getSelectedSensorPosition(0)* -1 * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; + rightEncoderCount = right.getSelectedSensorPosition(0)* -1; + leftEncoderCount = left.getSelectedSensorPosition(0)* -1; + leftEncoderRate = left.getSelectedSensorVelocity(0)* -1; + rightEncoderRate = right.getSelectedSensorVelocity(0)* -1; + } } \ No newline at end of file From 1e7bf5ccbd1c0a9d82230a3a68512e46065d976b Mon Sep 17 00:00:00 2001 From: trajing Date: Tue, 19 Mar 2019 11:49:14 -0500 Subject: [PATCH 125/131] Minor optimization to remove redundant sensor calls --- src/main/java/frc/robot/subsystems/DriveSubsystem.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index 9cd1452..b699969 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -259,10 +259,10 @@ public void stop() { @Override public void periodic() { angle = ahrs.getAngle(); - rightEncoderDist = right.getSelectedSensorPosition(0)* -1 * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; - leftEncoderDist = left.getSelectedSensorPosition(0)* -1 * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; rightEncoderCount = right.getSelectedSensorPosition(0)* -1; leftEncoderCount = left.getSelectedSensorPosition(0)* -1; + rightEncoderDist = rightEncoderDist * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; + leftEncoderDist = leftEncoderDist * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; leftEncoderRate = left.getSelectedSensorVelocity(0)* -1; rightEncoderRate = right.getSelectedSensorVelocity(0)* -1; } From a3a740e669c37ce365360a497ae849e72f530034 Mon Sep 17 00:00:00 2001 From: trajing Date: Tue, 19 Mar 2019 12:00:30 -0500 Subject: [PATCH 126/131] Cache encoder inputs for ArmSubsystem --- .../frc/robot/subsystems/ArmSubsystem2.java | 29 ++++++++++++++----- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index bf57a77..3010981 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -27,7 +27,8 @@ public class ArmSubsystem2 extends Subsystem { // Put methods for controlling this subsystem // here. Call these from Commands. - + public double wristAngle, wristSpeed, leftShoulderAngle, rightShoulderAngle, shoulderSpeed; + public int wristCount, leftShoulderCount, rightShoulderCount; private DigitalInput lowerLimit, lowerLimitWrist, lowerLimitWrist2; private double wristLimitStartTime,wristLimitStartTime2; @@ -255,11 +256,11 @@ public double getWristSetPoint(){ } public double getWristEncoderAngle() { - return getWristTicks()* ConstantsMap.WRIST_ENCODER_ANGLE_PER_TICK; + return wristAngle; } public double getWristTicks(){ - return wrist.getSelectedSensorPosition(); + return wristCount; } public void zeroWrist() { @@ -321,7 +322,7 @@ else if(!isStallcondition && isWristStall){ } public double getWristSpeed(){ - return wrist.getMotorOutputPercent(); + return wristSpeed; } public boolean isWristAtSetPoint(){ return Math.abs(getWristSetPoint()-getWristEncoderAngle()) < ConstantsMap.WRIST_TOLERANCE; @@ -378,18 +379,18 @@ else if (shoulder.getControlMode() == ControlMode.MotionMagic){ } public double getRightShoulderTicks(){ - return shoulder.getSelectedSensorPosition(); + return rightShoulderCount; } public double getLeftShoulderTicks(){ - return shoulder2.getSelectedSensorPosition(); + return leftShoulderCount; } public double getRightShoulderEncoderAngle() { - return getRightShoulderTicks()* ConstantsMap.SHOULDER_ENCODER_ANGLE_PER_TICK; + return rightShoulderAngle; } public double getLeftShoulderEncoderAngle() { - return getLeftShoulderTicks()* ConstantsMap.SHOULDER_ENCODER_ANGLE_PER_TICK; + return leftShoulderAngle; } public double getShoulderEncoderAngle(){ return (getRightShoulderEncoderAngle() + getLeftShoulderEncoderAngle())/2; @@ -467,4 +468,16 @@ public void initDefaultCommand() { // Set the default command for a subsystem here. setDefaultCommand(new ArmCommand2()); } + + @Override + public void periodic() { + wristCount = wrist.getSelectedSensorPosition(); + leftShoulderCount = shoulder2.getSelectedSensorPosition(); + rightShoulderCount = shoulder.getSelectedSensorPosition(); + wristAngle = wristCount * ConstantsMap.WRIST_ENCODER_ANGLE_PER_TICK; + leftShoulderAngle = leftShoulderCount * ConstantsMap.SHOULDER_ENCODER_ANGLE_PER_TICK; + rightShoulderAngle = rightShoulderCount * ConstantsMap.SHOULDER_ENCODER_ANGLE_PER_TICK; + shoulderSpeed = shoulder.getMotorOutputPercent(); + wristSpeed = wrist.getMotorOutputPercent(); + } } From e7dd71b0a60cfa583b007067653338d1ac6cc5c4 Mon Sep 17 00:00:00 2001 From: trajing Date: Tue, 19 Mar 2019 14:06:38 -0500 Subject: [PATCH 127/131] Added Hab 3 climbing command --- src/main/java/frc/robot/ConstantsMap.java | 4 ++ .../java/frc/robot/commands/Hab3Command.java | 50 +++++++++++++++++++ .../frc/robot/subsystems/DriveSubsystem.java | 22 +++++++- 3 files changed, 74 insertions(+), 2 deletions(-) create mode 100644 src/main/java/frc/robot/commands/Hab3Command.java diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index e36211e..79d68eb 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -86,6 +86,10 @@ public class ConstantsMap { public static final Gains wristGains = new Gains(0.12, 0.0005, 0.0, 0.00, 20, 1.0); public static final double WRIST_TOLERANCE = .2; + // TODO: ALL OF THIS + public static final Gains SCREW_GAINS = new Gains(0.25, 0.001, 20, 1023.0/7200.0, 300, 1.00); + public static final double HAB_SHOULDER_RAISE_SPEED = 5; + //public static final Gains wristGains = new Gains(0.13, 0.0005, 0.0, 0.0341, 0, 1.0); //public static final Gains wristGains = new Gains(0.21, 0.0005, 0, 0, 20, 1.0); diff --git a/src/main/java/frc/robot/commands/Hab3Command.java b/src/main/java/frc/robot/commands/Hab3Command.java new file mode 100644 index 0000000..bbef094 --- /dev/null +++ b/src/main/java/frc/robot/commands/Hab3Command.java @@ -0,0 +1,50 @@ +package frc.robot.commands; + +import edu.wpi.first.wpilibj.command.Command; +import frc.robot.ConstantsMap; +import frc.robot.Robot; +import frc.robot.subsystems.ArmSubsystem2; +import frc.robot.subsystems.DriveSubsystem; + +public class Hab3Command extends Command { + DriveSubsystem driveSubsystem = Robot.driveSubsystem; + ArmSubsystem2 armSubsystem = Robot.armSubsystem2; + + public Hab3Command() { + requires(driveSubsystem); + requires(armSubsystem); + } + + // Called just before this Command runs the first time + @Override + protected void initialize() { + } + + // Called repeatedly when this Command is scheduled to run + @Override + protected void execute() { + armSubsystem.setShoulderJointSpeed(ConstantsMap.HAB_SHOULDER_RAISE_SPEED); + // TODO: check that this is accurate + armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle() - 180); + driveSubsystem.setScrewVelocitySetpoint(armSubsystem.getShoulderSpeed()); + } + + // Make this return true when this Command no longer needs to run execute() + @Override + protected boolean isFinished() { + return false; + } + + // Called once after isFinished returns true + @Override + protected void end() { + driveSubsystem.setScrewVelocitySetpoint(0); + } + + // Called when another command which requires one or more of the same + // subsystems is scheduled to run + @Override + protected void interrupted() { + driveSubsystem.setScrewVelocitySetpoint(0); + } +} diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index b699969..7bb0f56 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -31,7 +31,7 @@ * */ public class DriveSubsystem extends Subsystem { - private TalonSRX left,right; + private TalonSRX left,right, leftScrew, rightScrew; private VictorSPX leftSlave, rightSlave; private double leftEncoderDist, rightEncoderDist, leftEncoderRate, rightEncoderRate, angle; @@ -121,7 +121,20 @@ public DriveSubsystem() { right.config_kD(ConstantsMap.kSlotIdx, ConstantsMap.driveGains.kD, ConstantsMap.kTimeoutMs); right.configMotionCruiseVelocity(ConstantsMap.DRIVE_VELOCITY, ConstantsMap.kTimeoutMs); - right.configMotionAcceleration(ConstantsMap.DRIVE_ACCEL, ConstantsMap.kTimeoutMs); + right.configMotionAcceleration(ConstantsMap.DRIVE_ACCEL, ConstantsMap.kTimeoutMs); + + leftScrew.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Relative, + ConstantsMap.kPIDLoopIdx, + ConstantsMap.kTimeoutMs); + leftScrew.configNominalOutputForward(0, ConstantsMap.kTimeoutMs); + leftScrew.configNominalOutputReverse(0, ConstantsMap.kTimeoutMs); + leftScrew.configPeakOutputForward(1, ConstantsMap.kTimeoutMs); + leftScrew.configPeakOutputReverse(-1, ConstantsMap.kTimeoutMs); + + leftScrew.config_kF(ConstantsMap.kPIDLoopIdx, ConstantsMap.SCREW_GAINS.kF, ConstantsMap.kTimeoutMs); + leftScrew.config_kP(ConstantsMap.kPIDLoopIdx, ConstantsMap.SCREW_GAINS.kP, ConstantsMap.kTimeoutMs); + leftScrew.config_kI(ConstantsMap.kPIDLoopIdx, ConstantsMap.SCREW_GAINS.kI, ConstantsMap.kTimeoutMs); + leftScrew.config_kD(ConstantsMap.kPIDLoopIdx, ConstantsMap.SCREW_GAINS.kD, ConstantsMap.kTimeoutMs); } public void initDefaultCommand() { // Set the default command for a subsystem here. @@ -256,6 +269,11 @@ public void stop() { } + public void setScrewVelocitySetpoint(double sp) { + leftScrew.set(ControlMode.Velocity,sp); + rightScrew.set(ControlMode.Velocity,sp); + } + @Override public void periodic() { angle = ahrs.getAngle(); From 52539b3d7aae545b9f9193e723e25ebff86ed015 Mon Sep 17 00:00:00 2001 From: trajing Date: Tue, 19 Mar 2019 14:27:17 -0500 Subject: [PATCH 128/131] Basic hab 3 climbing --- src/main/java/frc/robot/Robot.java | 17 ++++++++--------- .../{Hab3Command.java => Hab3ClimbCommand.java} | 7 ++++--- 2 files changed, 12 insertions(+), 12 deletions(-) rename src/main/java/frc/robot/commands/{Hab3Command.java => Hab3ClimbCommand.java} (89%) diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index ff3975f..fb87e02 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -53,7 +53,7 @@ public class Robot extends TimedRobot { SendableChooser chooser = new SendableChooser<>(); CameraServer server; Compressor compressor; - public boolean debugMode; + public static boolean debugMode; Command preset; int count = 0; /** @@ -71,7 +71,7 @@ public void robotInit() { armCommand = new ArmCommand2(); server = CameraServer.getInstance(); - debugMode = false; + Robot.debugMode = false; groundCam = new UsbCamera("GroundCam", 0); grabCam = new UsbCamera("GrabCam", 1); @@ -117,7 +117,7 @@ public void robotPeriodic() { SmartDashboard.putNumber("Wrist Angle", armSubsystem2.getWristEncoderAngle()); SmartDashboard.putBoolean("Wrist Limit", armSubsystem2.getWristLowerLimit()); SmartDashboard.putBoolean("Arm Limit", armSubsystem2.getShoulderLowerLimit()); - SmartDashboard.putBoolean("Debug Mode", debugMode); + SmartDashboard.putBoolean("Debug Mode", Robot.debugMode); SmartDashboard.putBoolean("Manual Mode", armSubsystem2.getManualMode()); SmartDashboard.putBoolean("Level Mode", armSubsystem2.getLevelMode()); @@ -159,9 +159,9 @@ public void robotPeriodic() { if(ControlPanelMap.toggleDebug()){ - debugMode = !debugMode; + Robot.debugMode = !Robot.debugMode; oi.unbindButtons(); - if(debugMode){ + if(Robot.debugMode){ oi.debugMode(); } else{ @@ -169,13 +169,13 @@ public void robotPeriodic() { } } - if(ControlPanelMap.toggleManual() && debugMode){ + if(ControlPanelMap.toggleManual() && Robot.debugMode){ armSubsystem2.toggleManualMode(); } - if(ControlPanelMap.toggleLevel() && debugMode){ + if(ControlPanelMap.toggleLevel() && Robot.debugMode){ armSubsystem2.toggleLevelMode(); } - if(ControlPanelMap.forceZero() && debugMode){ + if(ControlPanelMap.forceZero() && Robot.debugMode){ armSubsystem2.zeroShoulder(); armSubsystem2.zeroWrist(); } @@ -192,7 +192,6 @@ public void robotPeriodic() { @Override public void disabledInit() { XboxMap.stopRumble(); - armSubsystem2.setShoulderJointSpeed(0); } diff --git a/src/main/java/frc/robot/commands/Hab3Command.java b/src/main/java/frc/robot/commands/Hab3ClimbCommand.java similarity index 89% rename from src/main/java/frc/robot/commands/Hab3Command.java rename to src/main/java/frc/robot/commands/Hab3ClimbCommand.java index bbef094..de17f66 100644 --- a/src/main/java/frc/robot/commands/Hab3Command.java +++ b/src/main/java/frc/robot/commands/Hab3ClimbCommand.java @@ -2,15 +2,16 @@ import edu.wpi.first.wpilibj.command.Command; import frc.robot.ConstantsMap; +import frc.robot.OI; import frc.robot.Robot; import frc.robot.subsystems.ArmSubsystem2; import frc.robot.subsystems.DriveSubsystem; -public class Hab3Command extends Command { +public class Hab3ClimbCommand extends Command { DriveSubsystem driveSubsystem = Robot.driveSubsystem; ArmSubsystem2 armSubsystem = Robot.armSubsystem2; - public Hab3Command() { + public Hab3ClimbCommand() { requires(driveSubsystem); requires(armSubsystem); } @@ -32,7 +33,7 @@ protected void execute() { // Make this return true when this Command no longer needs to run execute() @Override protected boolean isFinished() { - return false; + return !(Robot.debugMode && OI.controlPanel1.getRawButton(5)); } // Called once after isFinished returns true From 15a830c8bd1d803876b258993d9925b17d0709fd Mon Sep 17 00:00:00 2001 From: trajing Date: Tue, 19 Mar 2019 14:30:33 -0500 Subject: [PATCH 129/131] Bind Hab3ClimbCommand to button --- src/main/java/frc/robot/OI.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index 92e0813..053ce21 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -11,6 +11,7 @@ import frc.robot.commands.ArmPresetCommand; import frc.robot.commands.ArmZero; import frc.robot.commands.GoHome; +import frc.robot.commands.Hab3ClimbCommand; import frc.robot.commands.WristForceZero; @@ -111,6 +112,8 @@ public void debugMode(){ hatchCollectPreset.whenPressed(new ArmZero()); goHome.whenPressed(new GoHome()); + // TODO: make this the same button as the one which continues to climb when held down + rocketBallPreset2.whenPressed(new Hab3ClimbCommand()); } public void unbindButtons() { From 66c1b1e1e8bf4ee106cbbd40a44189d210bddb85 Mon Sep 17 00:00:00 2001 From: trajing Date: Tue, 19 Mar 2019 15:29:37 -0500 Subject: [PATCH 130/131] Instantiated screw talons in DriveSubsystem construction oops --- src/main/java/frc/robot/RobotMap.java | 2 ++ src/main/java/frc/robot/subsystems/DriveSubsystem.java | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/main/java/frc/robot/RobotMap.java b/src/main/java/frc/robot/RobotMap.java index fe5ab1f..00379dd 100644 --- a/src/main/java/frc/robot/RobotMap.java +++ b/src/main/java/frc/robot/RobotMap.java @@ -20,6 +20,8 @@ public class RobotMap { public static final int RIGHT_DRIVE_PORT_1 = 1; public static final int RIGHT_DRIVE_PORT_2 = 2; + public static final int LEFT_SCREW_PORT = 12; + public static final int RIGHT_SCREW_PORT = 13; public static final int SHOULDER_JOINT_RIGHT_PORT = 6; public static final int SHOULDER_JOINT_LEFT_PORT = 5; diff --git a/src/main/java/frc/robot/subsystems/DriveSubsystem.java b/src/main/java/frc/robot/subsystems/DriveSubsystem.java index 7bb0f56..a284a33 100644 --- a/src/main/java/frc/robot/subsystems/DriveSubsystem.java +++ b/src/main/java/frc/robot/subsystems/DriveSubsystem.java @@ -52,6 +52,8 @@ public DriveSubsystem() { right = new TalonSRX(RobotMap.RIGHT_DRIVE_PORT_1); rightSlave = new VictorSPX(RobotMap.RIGHT_DRIVE_PORT_2); bus = new I2C(I2C.Port.kOnboard, 0x52); + leftScrew = new TalonSRX(RobotMap.LEFT_SCREW_PORT); + rightScrew = new TalonSRX(RobotMap.RIGHT_SCREW_PORT); //Invert Motors From 1006635ff1575de452611ef37384e3f8c5618e97 Mon Sep 17 00:00:00 2001 From: GB-Dagger Date: Sun, 24 Mar 2019 21:03:45 -0500 Subject: [PATCH 131/131] some things work. some things don't. --- src/main/java/frc/robot/ConstantsMap.java | 41 +++- src/main/java/frc/robot/ControlPanelMap.java | 4 +- src/main/java/frc/robot/Main.java | 2 + src/main/java/frc/robot/OI.java | 6 +- src/main/java/frc/robot/Robot.java | 59 +++-- src/main/java/frc/robot/RobotMap.java | 23 +- src/main/java/frc/robot/XboxMap.java | 3 + .../frc/robot/commands/ArmPresetCommand.java | 5 +- .../java/frc/robot/commands/DriveCommand.java | 80 ++++--- .../frc/robot/commands/Hab3ClimbCommand.java | 5 +- .../java/frc/robot/commands/ScrewCommand.java | 47 ++++ .../frc/robot/subsystems/ArmSubsystem2.java | 46 +++- .../frc/robot/subsystems/DriveSubsystem.java | 226 +++++++++++++----- .../subsystems/HatchGrabberSubsystem.java | 20 +- 14 files changed, 414 insertions(+), 153 deletions(-) create mode 100644 src/main/java/frc/robot/commands/ScrewCommand.java diff --git a/src/main/java/frc/robot/ConstantsMap.java b/src/main/java/frc/robot/ConstantsMap.java index 79d68eb..649ee55 100644 --- a/src/main/java/frc/robot/ConstantsMap.java +++ b/src/main/java/frc/robot/ConstantsMap.java @@ -18,10 +18,10 @@ public class ConstantsMap { public static final double TURTLE_SPEED = .6; //to be determined public static final double JOYSTICK_SENSITIVITY = .1; //to be determined - public static final double TIP_TOLERANCE = 8; + public static final double TIP_TOLERANCE = 15; public static final double DRIFT_TOLERANCE = 5; - public static final Gains driveGains = new Gains(1, 0.0, 0, 0, 0, 1.0); + public static final Gains driveGains = new Gains(.2, 0.0, 0, 0, 0, 1.0); public static final Gains turnGains = new Gains(.2, 0.0, .1, 0, 0, 1.0); public static final int DRIVE_VELOCITY = 3400; public static final int DRIVE_ACCEL = 3400; @@ -71,7 +71,8 @@ public class ConstantsMap { public static final double WRIST_ENCODER_ANGLE_PER_TICK = 360/((double)WRIST_ENCODER_TICKS_PER_ROTATION * 100 * (38.0/18.0)); public static final double WRIST_MIN_ANGLE_DOWN = -10.0; - public static final double WRIST_MIN_ANGLE_UP = -60.0; + //public static final double WRIST_MIN_ANGLE_UP = -60.0; + public static final double WRIST_MIN_ANGLE_UP = -180.0; //public static final double WRIST_MAX_ANGLE = 80.0; public static final double WRIST_MAX_ANGLE = 88.0; @@ -83,13 +84,13 @@ public class ConstantsMap { public static final int WRIST_FOLLOW_DISTANCE = 20; public static final double WRIST_CHANGE_SETPOINT_SPEED = .2; - public static final Gains wristGains = new Gains(0.12, 0.0005, 0.0, 0.00, 20, 1.0); + public static final Gains wristGains = new Gains(0.1, 0, 0.00035, 0.00, 100, 1.0); + //public static final Gains wristGains = new Gains(0.1, .0005, 0, 0, 100, 1.0); + public static final double WRIST_TOLERANCE = .2; // TODO: ALL OF THIS - public static final Gains SCREW_GAINS = new Gains(0.25, 0.001, 20, 1023.0/7200.0, 300, 1.00); - public static final double HAB_SHOULDER_RAISE_SPEED = 5; - + //public static final Gains wristGains = new Gains(0.13, 0.0005, 0.0, 0.0341, 0, 1.0); //public static final Gains wristGains = new Gains(0.21, 0.0005, 0, 0, 20, 1.0); @@ -98,6 +99,8 @@ public class ConstantsMap { public static final double SHOULDER_ENCODER_ANGLE_PER_TICK = 360/((double)SHOULDER_ENCODER_TICKS_PER_ROTATION * 49 * 5); public static final double SHOULDER_GEAR_RATIO = 350.0; + //public static final double SHOULDER_MIN_ANGLE = -100.0; + public static final double SHOULDER_MIN_ANGLE = -67.0; public static final double SHOULDER_MAX_ANGLE = 50.0; @@ -108,6 +111,9 @@ public class ConstantsMap { public static final int SHOULDER_VELOCITY = 26000; public static final int SHOULDER_ACCEL = 24000; public static final Gains shoulderGains = new Gains(.2 , 0.0001, 0, 0.042625, 20, 1.0); + + //public static final Gains shoulderGains = new Gains(.22, 0.0001, 0.01, 0.042625, 100, 1.0); + public static final double SHOULDER_TOLERANCE = .2; //public static final Gains shoulderGains = new Gains(.2, 0.0, 0, 0.042625, 0, 1.0); @@ -133,18 +139,33 @@ public class ConstantsMap { public static final double ROCKET_HATCH_PRESET_3 = 34; public static final double ROCKET_BALL_PRESET_1 = -35; public static final double ROCKET_BALL_PRESET_2 = 5; - public static final double ROCKET_BALL_PRESET_3 = 46; + public static final double ROCKET_BALL_PRESET_3 = 49; public static final double CARGO_BALL_PRESET = -20.0; public static final double CARGO_HATCH_PRESET = -20.0; public static final double HATCH_COLLECT_PRESET = -57.0; - public static final double BALL_COLLECT_WRIST_PRESET = -10 - ; + public static final double BALL_COLLECT_WRIST_PRESET = -10; public static final double BALL_COLLECT_SHOULDER_PRESET = -47; public static final double GO_HOME_PRESET = SHOULDER_MIN_ANGLE; + + //Hab Constants + public static final double SCREW_INCHES_PER_TICK = ((18.0/74.0)/(4.0))/4096.0; + public static final double SCREW_MAX_EXTENSION = 19.5; + + public static final Gains SCREW_GAINS = new Gains(0, 0, 0, 0.05, 0, 1.00); + public static final Gains SCREW_GAINS2 = new Gains(0, 0, 0, 0.05, 0, 1.00); + + public static final double HAB_SHOULDER_RAISE_SPEED = 5; + public static final double HAB_WRIST_ANGLE= 100; + + public static final double SCREW_SPEED= 21000; + public static final double SCREW_TOLERANCE= 10; + + + } \ No newline at end of file diff --git a/src/main/java/frc/robot/ControlPanelMap.java b/src/main/java/frc/robot/ControlPanelMap.java index 197f9c7..433fb15 100644 --- a/src/main/java/frc/robot/ControlPanelMap.java +++ b/src/main/java/frc/robot/ControlPanelMap.java @@ -43,5 +43,7 @@ public static boolean toggleManual() { public static boolean forceZero() { return oi.controlPanel1.getRawButtonPressed(3); } - + public static boolean stopClimb(){ + return OI.controlPanel1.getRawButtonPressed(5); + } } \ No newline at end of file diff --git a/src/main/java/frc/robot/Main.java b/src/main/java/frc/robot/Main.java index 62856d2..6e8d7d1 100644 --- a/src/main/java/frc/robot/Main.java +++ b/src/main/java/frc/robot/Main.java @@ -9,6 +9,7 @@ */ public final class Main { private Main() { + } /** @@ -18,5 +19,6 @@ private Main() { */ public static void main(String... args) { RobotBase.startRobot(Robot::new); + } } diff --git a/src/main/java/frc/robot/OI.java b/src/main/java/frc/robot/OI.java index 053ce21..43a7f01 100644 --- a/src/main/java/frc/robot/OI.java +++ b/src/main/java/frc/robot/OI.java @@ -12,6 +12,7 @@ import frc.robot.commands.ArmZero; import frc.robot.commands.GoHome; import frc.robot.commands.Hab3ClimbCommand; +import frc.robot.commands.ScrewCommand; import frc.robot.commands.WristForceZero; @@ -107,15 +108,14 @@ public void debugMode(){ cargoHatchPreset.whenPressed(null); cargoBallPreset.whenPressed(null); */ - + rocketHatchPreset1.whenPressed(new ScrewCommand()); ballCollectPreset.whenPressed(new WristForceZero()); hatchCollectPreset.whenPressed(new ArmZero()); goHome.whenPressed(new GoHome()); // TODO: make this the same button as the one which continues to climb when held down - rocketBallPreset2.whenPressed(new Hab3ClimbCommand()); + //rocketBallPreset2.whenPressed(new Hab3ClimbCommand()); } - public void unbindButtons() { Field schedulerBtns; try { diff --git a/src/main/java/frc/robot/Robot.java b/src/main/java/frc/robot/Robot.java index fb87e02..6f02cf0 100644 --- a/src/main/java/frc/robot/Robot.java +++ b/src/main/java/frc/robot/Robot.java @@ -8,12 +8,16 @@ package frc.robot; +import java.lang.reflect.Field; + import edu.wpi.cscore.HttpCamera; import edu.wpi.cscore.MjpegServer; import edu.wpi.cscore.UsbCamera; import edu.wpi.first.cameraserver.CameraServer; import edu.wpi.first.wpilibj.Compressor; +import edu.wpi.first.wpilibj.IterativeRobot; import edu.wpi.first.wpilibj.TimedRobot; +import edu.wpi.first.wpilibj.Watchdog; import edu.wpi.first.wpilibj.command.Command; import edu.wpi.first.wpilibj.command.Scheduler; import edu.wpi.first.wpilibj.smartdashboard.SendableChooser; @@ -60,26 +64,31 @@ public class Robot extends TimedRobot { * This function is run when the robot is first started up and should be * used for any initialization code. */ + + public Robot(){ + super(.05); + } @Override public void robotInit() { oi = new OI(); + + // chooser.addOption("My Auto", new MyAutoCommand()); - driveCommand = new DriveCommand(); //followLineCommand = new FollowLineCommand(); hgCommand = new HatchGrabberCommand(); - armCommand = new ArmCommand2(); - - server = CameraServer.getInstance(); Robot.debugMode = false; + + server = CameraServer.getInstance(); groundCam = new UsbCamera("GroundCam", 0); grabCam = new UsbCamera("GrabCam", 1); grabCam.setResolution(600, 480); server.startAutomaticCapture(groundCam); - groundCamSelected = true; + groundCamSelected = true; //grabCam = new HttpCamera("Vision Process", "http://10.20.22.207:1181/?action=stream/mjpeg"); + } public void switchCamera(){ @@ -105,6 +114,7 @@ public void switchCamera(){ public void robotPeriodic() { //Print out encoder values for testing on Arm leveling + SmartDashboard.putNumber("Shoulder Angle", armSubsystem2.getShoulderEncoderAngle()); SmartDashboard.putNumber("Shoulder Right Angle", armSubsystem2.getRightShoulderEncoderAngle()); SmartDashboard.putNumber("Shoulder Left Angle", armSubsystem2.getLeftShoulderEncoderAngle()); @@ -113,9 +123,15 @@ public void robotPeriodic() { SmartDashboard.putNumber("Shoulder Left Set", armSubsystem2.getRightShoulderSetPoint()); SmartDashboard.putNumber("Wrist Set", armSubsystem2.getWristSetPoint()); - SmartDashboard.putNumber("Wrist Angle", armSubsystem2.getWristEncoderAngle()); SmartDashboard.putBoolean("Wrist Limit", armSubsystem2.getWristLowerLimit()); + + SmartDashboard.putNumber("Left Screw Dist", driveSubsystem.getLeftScrewDist()); + SmartDashboard.putNumber("Right Screw Dist", driveSubsystem.getRightScrewDist()); + SmartDashboard.putNumber("Left Screw Count", driveSubsystem.getLeftScrewCount()); + SmartDashboard.putNumber("Right Screw Count", driveSubsystem.getRightScrewCount()); + + SmartDashboard.putBoolean("Arm Limit", armSubsystem2.getShoulderLowerLimit()); SmartDashboard.putBoolean("Debug Mode", Robot.debugMode); @@ -128,17 +144,23 @@ public void robotPeriodic() { SmartDashboard.putBoolean("Left At Set", armSubsystem2.isLeftShoulderAtSetPoint()); SmartDashboard.putBoolean("Right At Set", armSubsystem2.isRightShoulderAtSetPoint()); SmartDashboard.putBoolean("Shoulder At Set", armSubsystem2.isShoulderAtSetPoint()); + + SmartDashboard.putBoolean("Right Shoulder Set", armSubsystem2.getLevelMode()); - //SmartDashboard.putBoolean("Right Shoulder Set", armSubsystem2.getLevelMode()); - - - armSubsystem2.checkShoulderLimits(); - armSubsystem2.checkWristLimits(); + SmartDashboard.putNumber("Right Distance",driveSubsystem.getRightEncoderDistance()); + SmartDashboard.putNumber("Left Distance",driveSubsystem.getLeftEncoderDistance()); + count++; if(count>10){ - SmartDashboard.putBoolean("Drifting", driveSubsystem.checkDrift()); + + + + + + + /* SmartDashboard.putBoolean("Drifting", driveSubsystem.checkDrift()); SmartDashboard.putBoolean("On Fire", driveSubsystem.isOnFire()); SmartDashboard.putBoolean("Cruising Altitude", driveSubsystem.isCruisingAltitude()); @@ -146,14 +168,14 @@ public void robotPeriodic() { SmartDashboard.putBoolean("Drive Stall Detected", driveSubsystem.isStalled()); SmartDashboard.putBoolean("Shoulder Stall Detected", armSubsystem2.isShoulderStalled()); - SmartDashboard.putBoolean("Wrist Stall Detected", armSubsystem2.isWristStalled()); + SmartDashboard.putBoolean("Wrist Stall Detected", armSubsystem2.isWristStalled()); */ count = 0; } - + @@ -197,7 +219,7 @@ public void disabledInit() { @Override public void disabledPeriodic() { - Scheduler.getInstance().run(); + Scheduler.getInstance().run(); } /** @@ -246,7 +268,10 @@ public void teleopInit() { armSubsystem2.setShoulderSetPoint(armSubsystem2.getShoulderEncoderAngle()); - new WristForceZero().start(); + if(armSubsystem2.getShoulderEncoderAngle()0){ - speedLeft *= .75; - speedRight *= .75; - - - } - - driveSubsystem.setLeftSpeed(speedLeft); - driveSubsystem.setRightSpeed(speedRight); - //Auto Brake Mode //attack3Map.startAutoBrakerSystem(); if(XboxMap.toggleBrakes()){ @@ -100,21 +79,50 @@ else if(rumble && ((System.currentTimeMillis()-lastPressed)>500)){ rumble = false; } - - //Putting Data up - displayData(); - } + double speedLeft = XboxMap.left(); + speedLeft *= -1; + double speedRight = XboxMap.right(); + //speedRight *= -1; + if(Math.abs(speedRight) < 0.1){ + speedRight = 0; + } + if (Math.abs(speedLeft) < 0.1) { + speedLeft = 0; + } + if(turtlemode) { + speedLeft *= ConstantsMap.TURTLE_SPEED; + speedRight *= ConstantsMap.TURTLE_SPEED; + } + if(armSubsystem.getShoulderEncoderAngle()>0){ + speedLeft *= .75; + speedRight *= .75; + + + } + + if(!turtleAdvanced){ + driveSubsystem.setLeftSpeed(speedLeft); + driveSubsystem.setRightSpeed(speedRight); + } + else{ + driveSubsystem.setLeftSpeedControl(speedLeft); + driveSubsystem.setRightSpeedControl(speedRight); + + } + + + + + SmartDashboard.putBoolean("Turtle", turtlemode); + SmartDashboard.putBoolean("Turtle Advanced", turtleAdvanced); + + SmartDashboard.putBoolean("Brake Mode", brakeState); - protected void displayData(){ - SmartDashboard.putNumber("Right Count",driveSubsystem.getRightEncoderCount()); - SmartDashboard.putNumber("LEft Count",driveSubsystem.getLeftEncoderCount()); - SmartDashboard.putNumber("Right Distance",driveSubsystem.getRightEncoderDistance()); - SmartDashboard.putNumber("LEft Disatance",driveSubsystem.getLeftEncoderDistance()); - SmartDashboard.putBoolean("Turtle", turtlemode); - SmartDashboard.putBoolean("Brake Mode", brakeState); } + + // Make this return true when this Command no longer needs to run execute() protected boolean isFinished() { diff --git a/src/main/java/frc/robot/commands/Hab3ClimbCommand.java b/src/main/java/frc/robot/commands/Hab3ClimbCommand.java index de17f66..3ef2080 100644 --- a/src/main/java/frc/robot/commands/Hab3ClimbCommand.java +++ b/src/main/java/frc/robot/commands/Hab3ClimbCommand.java @@ -2,6 +2,7 @@ import edu.wpi.first.wpilibj.command.Command; import frc.robot.ConstantsMap; +import frc.robot.ControlPanelMap; import frc.robot.OI; import frc.robot.Robot; import frc.robot.subsystems.ArmSubsystem2; @@ -26,14 +27,14 @@ protected void initialize() { protected void execute() { armSubsystem.setShoulderJointSpeed(ConstantsMap.HAB_SHOULDER_RAISE_SPEED); // TODO: check that this is accurate - armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle() - 180); + armSubsystem.setWristSetPoint(-armSubsystem.getShoulderEncoderAngle() - ConstantsMap.HAB_WRIST_ANGLE); driveSubsystem.setScrewVelocitySetpoint(armSubsystem.getShoulderSpeed()); } // Make this return true when this Command no longer needs to run execute() @Override protected boolean isFinished() { - return !(Robot.debugMode && OI.controlPanel1.getRawButton(5)); + return Robot.debugMode && ControlPanelMap.stopClimb(); } // Called once after isFinished returns true diff --git a/src/main/java/frc/robot/commands/ScrewCommand.java b/src/main/java/frc/robot/commands/ScrewCommand.java new file mode 100644 index 0000000..30ee596 --- /dev/null +++ b/src/main/java/frc/robot/commands/ScrewCommand.java @@ -0,0 +1,47 @@ +package frc.robot.commands; + +import edu.wpi.first.wpilibj.command.Command; +import frc.robot.ConstantsMap; +import frc.robot.ControlPanelMap; +import frc.robot.OI; +import frc.robot.Robot; +import frc.robot.subsystems.ArmSubsystem2; +import frc.robot.subsystems.DriveSubsystem; + +public class ScrewCommand extends Command { + DriveSubsystem driveSubsystem = Robot.driveSubsystem; + ArmSubsystem2 armSubsystem = Robot.armSubsystem2; + + public ScrewCommand() { + requires(armSubsystem); + } + + // Called just before this Command runs the first time + @Override + protected void initialize() { + + } + @Override + protected void execute() { + driveSubsystem.setScrewVelocitySetpoint(ConstantsMap.SCREW_SPEED * ControlPanelMap.controlShoulderJoint()); + + } + // Make this return true when this Command no longer needs to run execute() + @Override + protected boolean isFinished() { + return Robot.debugMode && ControlPanelMap.stopClimb(); + } + + // Called once after isFinished returns true + @Override + protected void end() { + driveSubsystem.stopScrew(); + } + + // Called when another command which requires one or more of the same + // subsystems is scheduled to run + @Override + protected void interrupted() { + driveSubsystem.stopScrew(); + } +} diff --git a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java index 3010981..a2ff94d 100644 --- a/src/main/java/frc/robot/subsystems/ArmSubsystem2.java +++ b/src/main/java/frc/robot/subsystems/ArmSubsystem2.java @@ -28,7 +28,8 @@ public class ArmSubsystem2 extends Subsystem { // here. Call these from Commands. public double wristAngle, wristSpeed, leftShoulderAngle, rightShoulderAngle, shoulderSpeed; - public int wristCount, leftShoulderCount, rightShoulderCount; + + public int wristCount, oldWristCount, leftShoulderCount, rightShoulderCount; private DigitalInput lowerLimit, lowerLimitWrist, lowerLimitWrist2; private double wristLimitStartTime,wristLimitStartTime2; @@ -58,7 +59,7 @@ public ArmSubsystem2() { //shoulderSlave.configFactoryDefault(); shoulder2 = new TalonSRX(RobotMap.SHOULDER_JOINT_LEFT_PORT); - + shoulder.setInverted(true); shoulder2.setInverted(true); @@ -91,7 +92,9 @@ public ArmSubsystem2() { shoulder.configMotionAcceleration(ConstantsMap.SHOULDER_ACCEL, ConstantsMap.kTimeoutMs); - + shoulder.configPeakCurrentLimit(40); + shoulder.configContinuousCurrentLimit(30); + shoulder.enableCurrentLimit(true); shoulder2.configSelectedFeedbackSensor(FeedbackDevice.CTRE_MagEncoder_Absolute, @@ -115,12 +118,17 @@ public ArmSubsystem2() { shoulder2.configMotionAcceleration(ConstantsMap.SHOULDER_ACCEL, ConstantsMap.kTimeoutMs); + + + shoulder2.configPeakCurrentLimit(40); + shoulder2.configContinuousCurrentLimit(30); + shoulder2.enableCurrentLimit(true); //shoulder.configForwardLimitSwitchSource(LimitSwitchSource., LimitSwitchNormal.NormallyClosed); wrist = new TalonSRX(RobotMap.WRIST_JOINT_LEFT_PORT); wrist2 = new TalonSRX(RobotMap.WRIST_JOINT_RIGHT_PORT); - wrist.setInverted(true); - wrist2.setInverted(false); + wrist.setInverted(false); + wrist2.setInverted(true); wrist.setSensorPhase(false); //wrist2.setSensorPhase(true); @@ -151,6 +159,8 @@ public ArmSubsystem2() { lowerLimit.setName("LowerWristLimit"); + oldWristCount = wrist.getSelectedSensorPosition(); + periodic(); setWristSetPoint(getWristEncoderAngle()); setShoulderSetPoint(getShoulderEncoderAngle()); @@ -222,12 +232,15 @@ public void setWristSetPoint(double angle){ public void checkWristLimits(){ + if(getWristLowerLimit()){ - if(getShoulderEncoderAngle()<-50){ - wrist.setSelectedSensorPosition((int)(ConstantsMap.WRIST_MAX_ANGLE/ConstantsMap.WRIST_ENCODER_ANGLE_PER_TICK)); + // if(getShoulderEncoderAngle()<-50){ + int zero = (int)(ConstantsMap.WRIST_MAX_ANGLE/ConstantsMap.WRIST_ENCODER_ANGLE_PER_TICK); + wrist.setSelectedSensorPosition(zero); + oldWristCount = zero; //wrist2.setSelectedSensorPosition((int)(ConstantsMap.WRIST_MAX_ANGLE/ConstantsMap.WRIST_ENCODER_ANGLE_PER_TICK)); - } + //} if(wrist.getControlMode() == ControlMode.PercentOutput){ if(wrist.getMotorOutputPercent()>0){ wrist.set(ControlMode.PercentOutput, 0); @@ -242,6 +255,10 @@ else if (wrist.getControlMode() == ControlMode.MotionMagic){ } } } + else if(Math.abs(oldWristCount-wristCount)>(90.0/ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK)){ + wrist.setSelectedSensorPosition(oldWristCount); + + } if(getWristEncoderAngle() ConstantsMap.TIP_TOLERANCE); + return (Math.abs(ahrs.getRoll()) > ConstantsMap.TIP_TOLERANCE) || (Math.abs(ahrs.getPitch()) > ConstantsMap.TIP_TOLERANCE); + //return false; + } public boolean checkDrift(){ - return (Math.abs(ahrs.getRoll()) > ConstantsMap.DRIFT_TOLERANCE); + //return (Math.abs(ahrs.getRoll()) > ConstantsMap.DRIFT_TOLERANCE); + return false; + } public double getVoltage(){ return pdp.getVoltage(); + //return 12; } public boolean isStalled(){ boolean isStallcondition = left.getOutputCurrent() > ConstantsMap.DRIVE_STALL || right.getOutputCurrent() > ConstantsMap.DRIVE_STALL; @@ -173,14 +216,19 @@ else if(!isStallcondition && isStallCurrent){ } } public boolean isCruisingAltitude(){ - return ahrs.getAltitude() > 350000; + //return ahrs.getAltitude() > 350000; + return false; } public boolean isOnFire(){ - return left.getTemperature() > 200 || right.getTemperature() > 200 || ahrs.getTempC() > 200; + //return left.getTemperature() > 200 || right.getTemperature() > 200 || ahrs.getTempC() > 200; + return false; + } public boolean isProbablyAboutToRain(){ - return (ahrs.getBarometricPressure() - startBarometricPressure) > 100; + //return (ahrs.getBarometricPressure() - startBarometricPressure) > 100; + return false; + } //sets the speed for both of the left motors public void setLeftSpeed(double speed) { @@ -191,14 +239,25 @@ public void setLeftSpeed(double speed) { public void setRightSpeed (double speed) { right.set(ControlMode.PercentOutput,speed); } + + public void setLeftSpeedControl(double speed) { + speed *= ConstantsMap.DRIVE_VELOCITY; + left.set(ControlMode.Velocity,speed); + } - public double getLeftSpeed() { + //sets the speed for both of the right motors + public void setRightSpeedControl (double speed) { + speed *= ConstantsMap.DRIVE_VELOCITY; + right.set(ControlMode.Velocity,speed); + } + + /* public double getLeftSpeed() { return leftEncoderRate * -1; } public double getRightSpeed() { return rightEncoderRate * -1; - } + } */ public void tankDrive(double leftSpeed, double rightSpeed){ setLeftSpeed(leftSpeed); @@ -239,14 +298,14 @@ public int getRightEncoderCount(){ return rightEncoderCount; } - //Get Encoder Rates + /* //Get Encoder Rates public double getRightEncoderRate(){ return rightEncoderRate; } public double getLeftEncoderRate(){ return leftEncoderRate; } - + */ //reset encoders public void resetEncoders(){ left.getSensorCollection().setQuadraturePosition(0, 0); @@ -271,19 +330,76 @@ public void stop() { } + //HAB STUFF + public void setScrewVelocitySetpoint(double sp) { - leftScrew.set(ControlMode.Velocity,sp); + //leftScrew.set(ControlMode.Velocity,sp); rightScrew.set(ControlMode.Velocity,sp); } + public void setScrewSpeed(double sp) { + leftScrew.set(ControlMode.PercentOutput,sp); + rightScrew.set(ControlMode.PercentOutput,sp); + } + + public void stopScrew() { + System.out.println("Stop Screw"); + leftScrew.set(ControlMode.PercentOutput,0); + rightScrew.set(ControlMode.PercentOutput,0); + } + + /** + * @return the rightScrewDist + */ + public double getRightScrewDist() { + return rightScrewDist; + } + /** + * @return the leftScrewDist + */ + public double getLeftScrewDist() { + return leftScrewDist; + } + /** + * @return the leftScrewCount + */ + public int getLeftScrewCount() { + return leftScrewCount; + } + /** + * @return the rightScrewCount + */ + public int getRightScrewCount() { + return rightScrewCount; + } + + public void checkSlave(){ + if(Math.abs(leftScrewCount-rightScrewCount)>ConstantsMap.SCREW_TOLERANCE){ + leftScrew.set(ControlMode.Position, rightScrewCount); + } + } + @Override + public void initDefaultCommand() { + // Set the default command for a subsystem here. + setDefaultCommand(new DriveCommand()); + } + @Override public void periodic() { + angle = ahrs.getAngle(); - rightEncoderCount = right.getSelectedSensorPosition(0)* -1; - leftEncoderCount = left.getSelectedSensorPosition(0)* -1; - rightEncoderDist = rightEncoderDist * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; - leftEncoderDist = leftEncoderDist * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; - leftEncoderRate = left.getSelectedSensorVelocity(0)* -1; - rightEncoderRate = right.getSelectedSensorVelocity(0)* -1; + /* rightEncoderCount = right.getSelectedSensorPosition(0); + leftEncoderCount = left.getSelectedSensorPosition(0); + rightEncoderDist = rightEncoderCount * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; + leftEncoderDist = leftEncoderCount * ConstantsMap.DRIVE_ENCODER_DIST_PER_TICK; + + rightScrewCount = rightScrew.getSelectedSensorPosition(0); + leftScrewCount = leftScrew.getSelectedSensorPosition(0); + rightScrewDist = (double)rightScrewCount * ConstantsMap.SCREW_INCHES_PER_TICK; + leftScrewDist = (double)leftScrewCount * ConstantsMap.SCREW_INCHES_PER_TICK; + + checkSlave(); */ + + } } \ No newline at end of file diff --git a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java index bf853e7..79c03b7 100644 --- a/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java +++ b/src/main/java/frc/robot/subsystems/HatchGrabberSubsystem.java @@ -38,8 +38,18 @@ public HatchGrabberSubsystem() { //releasePiston1 = new Solenoid(5); motor1 = new TalonSRX(RobotMap.GRAB_SPIN_1); - //motor2 = new TalonSRX(RobotMap.GRAB_SPIN_2); - //motor1.setInverted(true); + motor2 = new TalonSRX(RobotMap.GRAB_SPIN_2); + motor2.setInverted(true); + + motor1.configPeakCurrentDuration(100, 10); + motor1.configPeakCurrentLimit(15); + motor1.configContinuousCurrentLimit(5); + motor1.enableCurrentLimit(true); + + motor2.configPeakCurrentDuration(100, 10); + motor2.configPeakCurrentLimit(15); + motor2.configContinuousCurrentLimit(5); + motor2.enableCurrentLimit(true); } @@ -60,17 +70,17 @@ public void unEjectHatch() { } public void intakeWheels(){ motor1.set(ControlMode.PercentOutput, ConstantsMap.BALL_INTAKE_SPEED); - //motor2.set(ControlMode.PercentOutput, ConstantsMap.BALL_INTAKE_SPEED); + motor2.set(ControlMode.PercentOutput, ConstantsMap.BALL_INTAKE_SPEED); } public void outakeWheels(){ motor1.set(ControlMode.PercentOutput, -ConstantsMap.BALL_OUTTAKE_SPEED); - //motor2.set(ControlMode.PercentOutput, -ConstantsMap.BALL_OUTTAKE_SPEED); + motor2.set(ControlMode.PercentOutput, -ConstantsMap.BALL_OUTTAKE_SPEED); } public void stopWheels(){ motor1.set(ControlMode.PercentOutput, 0); - //motor2.set(ControlMode.PercentOutput, 0); + motor2.set(ControlMode.PercentOutput, 0); } @Override