update code mever/pidtuning
authorEric Sandoval <harpnart@gmail.com>
Mon, 20 Feb 2017 00:06:19 +0000 (16:06 -0800)
committerEric Sandoval <harpnart@gmail.com>
Mon, 20 Feb 2017 00:06:19 +0000 (16:06 -0800)
src/org/usfirst/frc/team3501/robot/Robot.java
src/org/usfirst/frc/team3501/robot/commands/driving/DriveDistance.java
src/org/usfirst/frc/team3501/robot/subsystems/DriveTrain.java

index 16b2884f1bf1b4a5c1e5dd6d4893132892f05914..b1ce483f8a528f17f807ad81fead2bb2aa605d5f 100644 (file)
@@ -22,10 +22,10 @@ public class Robot extends IterativeRobot {
     shooter = Shooter.getShooter();
     intake = Intake.getIntake();
 
-    SmartDashboard.putNumber(driveTrain.DRIVE_P_Val, 0);
-    SmartDashboard.putNumber(driveTrain.DRIVE_I_Val, 0);
-    SmartDashboard.putNumber(driveTrain.DRIVE_D_Val, 0);
-    SmartDashboard.putNumber(driveTrain.DRIVE_GYRO_P_Val, 0);
+    SmartDashboard.putNumber(driveTrain.DRIVE_P_Val, 0.006);
+    SmartDashboard.putNumber(driveTrain.DRIVE_I_Val, 0.0011);
+    SmartDashboard.putNumber(driveTrain.DRIVE_D_Val, -0.002);
+    SmartDashboard.putNumber(driveTrain.DRIVE_GYRO_P_Val, 0.01);
 
     SmartDashboard.putNumber(driveTrain.DRIVE_TARGET_DIST, 50);
     SmartDashboard.putNumber(driveTrain.MAX_TIME_OUT, 10);
@@ -56,6 +56,7 @@ public class Robot extends IterativeRobot {
   // both set to high gear
   @Override
   public void autonomousInit() {
+    System.out.println("AUTON INIT");
     driveTrain.setHighGear();
 
     double driveP = SmartDashboard.getNumber(driveTrain.DRIVE_P_Val,
@@ -90,7 +91,7 @@ public class Robot extends IterativeRobot {
   @Override
   public void autonomousPeriodic() {
     Scheduler.getInstance().run();
-
+    SmartDashboard.putNumber("angle", driveTrain.getAngle());
   }
 
   @Override
index 8a76d0d9e890b062d2578dcd9e7b5908398036a8..24d6235b04650d832c9579dd7649d09452e03ff3 100755 (executable)
@@ -42,10 +42,12 @@ public class DriveDistance extends Command {
   protected void initialize() {
     this.driveTrain.resetEncoders();
     this.driveController.setSetPoint(this.target);
+    zeroAngle = driveTrain.getAngle();
   }
 
   @Override
   protected void execute() {
+    System.out.printf("angle: %.2f\t", driveTrain.getAngle() - zeroAngle);
     double xVal = driveStraightGyroP * (driveTrain.getAngle() - zeroAngle);
     double yVal = driveController.calcPID(driveTrain.getAvgEncoderDistance());
 
@@ -53,11 +55,17 @@ public class DriveDistance extends Command {
     double rightDrive = yVal + xVal;
     this.driveTrain.setMotorValues(leftDrive, rightDrive);
 
-    System.out.println(
-        "PID Vals: " + driveController.getP() + " " + driveController.getI()
-            + " " + driveController.getD());
+    // SmartDashboard.putNumber("x", xVal);
+    // SmartDashboard.putNumber("y", yVal);
+    //
+    // SmartDashboard.putNumber("left", driveTrain.getLeftEncoderDistance());
+    // SmartDashboard.putNumber("right", driveTrain.getRightEncoderDistance());
+    //
+    // System.out.printf("x: %.2f\t", xVal);
+    // System.out.printf("y: %.2f\t", yVal);
+    //
+    // System.out.printf("dist: %.2f\n", driveTrain.getAvgEncoderDistance());
 
-    System.out.println("Encoder " + driveTrain.getAvgEncoderDistance());
   }
 
   @Override
index 1196d168f3e109618b469702abc47e34780566e3..221bb221398f2905992958635070b5955506a1a6 100644 (file)
@@ -212,6 +212,7 @@ public class DriveTrain extends Subsystem {
    * Changes the gear to a DoubleSolenoid.Value
    */
   private void changeGear(DoubleSolenoid.Value gear) {
+    System.out.println("shifting to " + gear);
     leftGearPiston.set(gear);
     rightGearPiston.set(gear);
   }