Improve PIDs and such

This commit is contained in:
Michael Mikovsky
2026-02-21 12:54:16 -08:00
parent 9c7159ba3b
commit eec454e99a
11 changed files with 95 additions and 60 deletions
@@ -31,7 +31,7 @@ public class Intake extends SubsystemBase {
Idle
}
private IntakeMode mode = IntakeMode.Retracted;
private IntakeMode mode = IntakeMode.Idle;
public void setMode(IntakeMode mode) {
this.mode = mode;
@@ -67,27 +67,27 @@ public class Intake extends SubsystemBase {
io.updateInputs(state);
// switch (mode) {
// case Extended:
// io.setArmAngle(state, Rotations.of(IntakeConstants.ARM_LIMIT_EXTENDED.get()));
// io.setRollerOutput(state, IntakeConstants.ROLLER_PERCENT_OUTPUT.get());
// break;
// case Retracted:
// io.setArmAngle(state, Rotations.of(IntakeConstants.ARM_LIMIT_RETRACTED.get()));
// io.setRollerOutput(state, 0);
// break;
// case Extending:
// io.armOutput(IntakeConstants.ARM_EXTEND_PERCENT_OUTPUT.get());
// io.setRollerOutput(state, IntakeConstants.ROLLER_PERCENT_OUTPUT.get());
// break;
// case Retracting:
// io.armOutput(IntakeConstants.ARM_RETRACT_PERCENT_OUTPUT.get());
// io.setRollerOutput(state, 0);
// break;
// case Idle:
// io.stopArm();
// break;
// }
switch (mode) {
case Extended:
io.setArmAngle(state, Rotations.of(IntakeConstants.ARM_LIMIT_EXTENDED.get()));
io.setRollerOutput(state, IntakeConstants.ROLLER_PERCENT_OUTPUT.get());
break;
case Retracted:
io.setArmAngle(state, Rotations.of(IntakeConstants.ARM_LIMIT_RETRACTED.get()));
io.setRollerOutput(state, 0);
break;
case Extending:
io.armOutput(IntakeConstants.ARM_EXTEND_PERCENT_OUTPUT.get());
io.setRollerOutput(state, IntakeConstants.ROLLER_PERCENT_OUTPUT.get());
break;
case Retracting:
io.armOutput(IntakeConstants.ARM_RETRACT_PERCENT_OUTPUT.get());
io.setRollerOutput(state, 0);
break;
case Idle:
io.stopArm();
break;
}
// if (state.retractedLimit){
// this.mode = IntakeMode.Retracted;
// }
@@ -33,7 +33,7 @@ public class IntakeConstants {
// public static final Angle ARM_LIMIT_LOWER = Degrees.of(90);
// public static final Angle ARM_LIMIT_UPPER = Degrees.of(-90);
public static final ConfigurableDouble ARM_LIMIT_RETRACTED = new ConfigurableDouble("Arm angle retracted", 0);
public static final ConfigurableDouble ARM_LIMIT_RETRACTED = new ConfigurableDouble("Arm angle retracted", 0.1);
public static final ConfigurableDouble ARM_LIMIT_EXTENDED = new ConfigurableDouble("Arm angle extended", 0.3);
public static final ConfigurableDouble ARM_EXTEND_PERCENT_OUTPUT = new ConfigurableDouble("Arm extend % output", 0.2);
public static final ConfigurableDouble ARM_RETRACT_PERCENT_OUTPUT = new ConfigurableDouble("Arm retract % output", -0.4);
@@ -45,13 +45,13 @@ public class IntakeConstants {
public static final Slot0Configs ARM_PID = new Slot0Configs()
.withKP(0.2)
.withKP(0.1)
.withKI(0.0)
.withKD(0.0);
public static ConfigurableDouble arm_kP = new ConfigurableDouble("ARM KP", 0.1);
public static ConfigurableDouble arm_kP = new ConfigurableDouble("ARM KP", 0.05);
public static ConfigurableDouble arm_kI = new ConfigurableDouble("ARM KI", 0);
public static ConfigurableDouble arm_kD = new ConfigurableDouble("ARM KD", 0);
@@ -83,6 +83,7 @@ public class IntakeReal implements IntakeIO {
.withPosition(motorAngle)
.withLimitReverseMotion(!m_armLimitSwitch.get())
);
}
@Override