mirror of
https://github.com/Team4388/2026KPopRobotHunters.git
synced 2026-06-09 08:48:05 -06:00
highlanders changes
This commit is contained in:
@@ -42,7 +42,8 @@ public class Intake extends SubsystemBase {
|
||||
Idle,
|
||||
RectractTorque,
|
||||
Bouncing,
|
||||
ExpelBalls
|
||||
ExpelBalls,
|
||||
LabubuGrowl
|
||||
}
|
||||
private boolean overCompressed = false;
|
||||
|
||||
@@ -101,20 +102,20 @@ public class Intake extends SubsystemBase {
|
||||
public void periodic() {
|
||||
// FaultReporter.register(this); // TODO Implement fault reporter
|
||||
// System.out.println(m_armLimitSwitch.get());
|
||||
ChassisSpeeds chassisSpeeds = m_SwerveDrive.chassisSpeeds;
|
||||
// ChassisSpeeds chassisSpeeds = m_SwerveDrive.chassisSpeeds;
|
||||
|
||||
double ChassisOverallSpeed = Math.hypot(chassisSpeeds.vxMetersPerSecond, chassisSpeeds.vyMetersPerSecond);
|
||||
// double ChassisOverallSpeed = Math.hypot(chassisSpeeds.vxMetersPerSecond, chassisSpeeds.vyMetersPerSecond);
|
||||
Logger.processInputs("Intake", state);
|
||||
Logger.recordOutput("Intake/IntakeState", this.mode);
|
||||
|
||||
|
||||
io.updateInputs(state);
|
||||
|
||||
overCompressed =
|
||||
Math.abs(state.armMotorCurrent.in(Amps)) > IntakeConstants.INTAKE_BOUNCE_CURRENT_LIMIT.get();
|
||||
// Math.abs(state.armMotorVelocity.in(RotationsPerSecond)) < IntakeConstants.INTAKE_BOUNCE_VELOCITY_LIMIT.get();
|
||||
// overCompressed =
|
||||
// Math.abs(state.armMotorCurrent.in(Amps)) > IntakeConstants.INTAKE_BOUNCE_CURRENT_LIMIT.get();
|
||||
// // Math.abs(state.armMotorVelocity.in(RotationsPerSecond)) < IntakeConstants.INTAKE_BOUNCE_VELOCITY_LIMIT.get();
|
||||
|
||||
Logger.recordOutput("overCompressed", overCompressed);
|
||||
// Logger.recordOutput("overCompressed", overCompressed);
|
||||
|
||||
// getCurrentTime
|
||||
|
||||
@@ -196,6 +197,10 @@ public class Intake extends SubsystemBase {
|
||||
io.armOutput(0);
|
||||
io.setRollerOutput(state, IntakeConstants.ROLLER_EJECT_PERCENT_OUTPUT.get());
|
||||
break;
|
||||
case LabubuGrowl:
|
||||
io.armOutput(0);
|
||||
io.setRollerOutput(state, IntakeConstants.ROLLER_LABUBU_GROWL_PERCENT_OUTPUT.get());
|
||||
break;
|
||||
}
|
||||
// if (state.retractedLimit){
|
||||
// this.mode = IntakeMode.Retracted;
|
||||
|
||||
@@ -63,6 +63,7 @@ public class IntakeConstants {
|
||||
public static final ConfigurableDouble ARM_REVERSE_ROLLER_RANGE = new ConfigurableDouble("Arm reverse roller range", 1.17);
|
||||
|
||||
public static final ConfigurableDouble ROLLER_PERCENT_OUTPUT = new ConfigurableDouble("Roller Percent Output", .50);
|
||||
public static final ConfigurableDouble ROLLER_LABUBU_GROWL_PERCENT_OUTPUT = new ConfigurableDouble("Roller Labubu Growl Percent Output", .75);
|
||||
public static final ConfigurableDouble ROLLER_EJECT_PERCENT_OUTPUT = new ConfigurableDouble("Roller eject Percent Output", -.20);
|
||||
public static final ConfigurableDouble ROLLER_IDLE_PERCENT_OUTPUT = new ConfigurableDouble("Roller IDLE Percent Output", .20);
|
||||
public static final ConfigurableDouble ROLLER_RETRACT_PERCENT_OUTPUT = new ConfigurableDouble("Roller Retract Output", .40);
|
||||
|
||||
@@ -7,6 +7,8 @@ import static edu.wpi.first.units.Units.RotationsPerSecond;
|
||||
import com.ctre.phoenix6.hardware.TalonFX;
|
||||
import com.revrobotics.PersistMode;
|
||||
import com.revrobotics.ResetMode;
|
||||
import com.revrobotics.RelativeEncoder;
|
||||
import com.revrobotics.spark.SparkLimitSwitch;
|
||||
import com.revrobotics.spark.SparkMax;
|
||||
|
||||
import edu.wpi.first.units.measure.Angle;
|
||||
@@ -15,6 +17,8 @@ import frc4388.utility.compute.JankCoder;
|
||||
public class IntakeReal implements IntakeIO {
|
||||
|
||||
SparkMax m_armMotor;
|
||||
RelativeEncoder arm_encoder;
|
||||
SparkLimitSwitch reverse_limit;
|
||||
TalonFX m_rollerMotor;
|
||||
JankCoder m_encoder;
|
||||
|
||||
@@ -26,6 +30,8 @@ public class IntakeReal implements IntakeIO {
|
||||
// m_angleMotor = angleMotor;
|
||||
// m_pitchMotor = pitchMotor;
|
||||
m_armMotor = armMotor;
|
||||
arm_encoder = m_armMotor.getEncoder();
|
||||
reverse_limit = m_armMotor.getReverseLimitSwitch();
|
||||
m_rollerMotor = rollerMotor;
|
||||
m_encoder = jankCoder;
|
||||
|
||||
@@ -96,8 +102,8 @@ public class IntakeReal implements IntakeIO {
|
||||
m_encoder.update();
|
||||
|
||||
|
||||
state.armAngle = Rotations.of(m_armMotor.getEncoder().getPosition()).div(IntakeConstants.ARM_MOTOR_GEAR_RATIO);
|
||||
state.armMotorVelocity = RotationsPerSecond.of(m_armMotor.getEncoder().getVelocity()).div(IntakeConstants.ARM_MOTOR_GEAR_RATIO);
|
||||
state.armAngle = Rotations.of(arm_encoder.getPosition()).div(IntakeConstants.ARM_MOTOR_GEAR_RATIO);
|
||||
state.armMotorVelocity = RotationsPerSecond.of(arm_encoder.getVelocity()).div(IntakeConstants.ARM_MOTOR_GEAR_RATIO);
|
||||
// state.armMotorAcceleration = RotationsPerSecondPerSecond.of(m_armMotor.getEncoder().ge);
|
||||
state.armMotorCurrent = Amps.of(m_armMotor.getOutputCurrent());
|
||||
|
||||
@@ -110,7 +116,7 @@ public class IntakeReal implements IntakeIO {
|
||||
state.intakeEncoder = m_encoder.getRotations();
|
||||
state.encoderConnected = m_encoder.isConnected();
|
||||
|
||||
state.retractedLimitSwitch = m_armMotor.getReverseLimitSwitch().isPressed();
|
||||
state.retractedLimitSwitch = reverse_limit.isPressed();
|
||||
|
||||
if(state.retractedLimitSwitch) {
|
||||
m_encoder.resetRotations();
|
||||
|
||||
Reference in New Issue
Block a user