import frc.robot.subsystems.spindexer.Spindexer;
import frc.robot.subsystems.turret.Turret;
import frc.robot.subsystems.hood.Hood;
-import frc.robot.subsystems.intake.Intake;
-import frc.robot.subsystems.intake.IntakeConstants;
+import frc.robot.subsystems.Intake.Intake;
import lib.controllers.PS5Controller;
import lib.controllers.PS5Controller.PS5Axis;
import lib.controllers.PS5Controller.PS5Button;
if(intake != null){
driver.get(PS5Button.CROSS).onTrue(new InstantCommand(()->{
if(intakeBoolean){
- intake.setSetpoint(IntakeConstants.INTAKE_ANGLE);
- intake.setFlyWheel();
+ intake.extend();
+ intake.spinStart();
intakeBoolean = false;
}
else{
- intake.setSetpoint(IntakeConstants.STOW_ANGLE);
- intake.stopFlyWheel();
+ intake.retract();
+ intake.spinStop();
}
}));
}
import edu.wpi.first.wpilibj2.command.SubsystemBase;
import frc.robot.constants.Constants;
import frc.robot.constants.IdConstants;
-import frc.robot.util.ChineseRemainderTheorem;
public class Turret extends SubsystemBase implements TurretIO{
//TODO: replace this stuff with Chinese Remainder Theorem calculator -- ignore this for now
- double leftAbs = wrapUnit(encoderLeft.getAbsolutePosition().getValueAsDouble() - TurretConstants.LEFT_ENCODER_OFFSET);
- double rightAbs = wrapUnit(encoderRight.getAbsolutePosition().getValueAsDouble() - TurretConstants.RIGHT_ENCODER_OFFSET);
+ // double leftAbs = wrapUnit(encoderLeft.getAbsolutePosition().getValueAsDouble() - TurretConstants.LEFT_ENCODER_OFFSET);
+ // double rightAbs = wrapUnit(encoderRight.getAbsolutePosition().getValueAsDouble() - TurretConstants.RIGHT_ENCODER_OFFSET);
- int leftTooth = (int) Math.round(leftAbs * TurretConstants.LEFT_ENCODER_TEETH)
- % TurretConstants.LEFT_ENCODER_TEETH;
+ // int leftTooth = (int) Math.round(leftAbs * TurretConstants.LEFT_ENCODER_TEETH)
+ // % TurretConstants.LEFT_ENCODER_TEETH;
- int rightTooth = (int) Math.round(rightAbs * TurretConstants.RIGHT_ENCODER_TEETH)
- % TurretConstants.RIGHT_ENCODER_TEETH;
+ // int rightTooth = (int) Math.round(rightAbs * TurretConstants.RIGHT_ENCODER_TEETH)
+ // % TurretConstants.RIGHT_ENCODER_TEETH;
- int turretIndex = ChineseRemainderTheorem.solve(leftTooth, TurretConstants.LEFT_ENCODER_TEETH, rightTooth, TurretConstants.RIGHT_ENCODER_TEETH);
+ // int turretIndex = ChineseRemainderTheorem.solve(leftTooth, TurretConstants.LEFT_ENCODER_TEETH, rightTooth, TurretConstants.RIGHT_ENCODER_TEETH);
- double totalTeeth = TurretConstants.LEFT_ENCODER_TEETH
- * TurretConstants.RIGHT_ENCODER_TEETH;
+ // double totalTeeth = TurretConstants.LEFT_ENCODER_TEETH
+ // * TurretConstants.RIGHT_ENCODER_TEETH;
- double turretRotations = turretIndex / (double) totalTeeth;
+ // double turretRotations = turretIndex / (double) totalTeeth;
- double motorRotations = turretRotations * TurretConstants.TURRET_GEAR_RATIO;
- motor.setPosition(motorRotations);
+ // double motorRotations = turretRotations * TurretConstants.TURRET_GEAR_RATIO;
+ // motor.setPosition(motorRotations);
motor.setPosition(0.0); //TODO: remove after chinese remainder theorem works