mirror of
https://github.com/BroncBotz3481/YAGSL
synced 2026-06-19 06:21:40 +00:00
Add alerts to PWMDutyCycleEncoder and SparkMax
This commit is contained in:
@@ -26,6 +26,10 @@ public class PWMDutyCycleEncoderSwerve extends SwerveAbsoluteEncoder
|
|||||||
* An {@link Alert} for if the encoder cannot report accurate velocities.
|
* An {@link Alert} for if the encoder cannot report accurate velocities.
|
||||||
*/
|
*/
|
||||||
private Alert inaccurateVelocities;
|
private Alert inaccurateVelocities;
|
||||||
|
/**
|
||||||
|
* An {@link Alert} for if the encoder is disconnected.
|
||||||
|
*/
|
||||||
|
private Alert disconnected;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructor for the PWM duty cycle encoder.
|
* Constructor for the PWM duty cycle encoder.
|
||||||
@@ -39,6 +43,10 @@ public class PWMDutyCycleEncoderSwerve extends SwerveAbsoluteEncoder
|
|||||||
"Encoders",
|
"Encoders",
|
||||||
"The PWM Duty Cycle encoder may not report accurate velocities!",
|
"The PWM Duty Cycle encoder may not report accurate velocities!",
|
||||||
Alert.AlertType.WARNING_TRACE);
|
Alert.AlertType.WARNING_TRACE);
|
||||||
|
inaccurateVelocities = new Alert(
|
||||||
|
"Encoders",
|
||||||
|
"The swerve encoder on port " + pin + "is disconnected!",
|
||||||
|
Alert.AlertType.ERROR_TRACE);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -61,6 +69,7 @@ public class PWMDutyCycleEncoderSwerve extends SwerveAbsoluteEncoder
|
|||||||
@Override
|
@Override
|
||||||
public double getAbsolutePosition()
|
public double getAbsolutePosition()
|
||||||
{
|
{
|
||||||
|
disconnected.set(!encoder.isConnected());
|
||||||
return (isInverted ? -1.0 : 1.0) * encoder.getAbsolutePosition() * 360;
|
return (isInverted ? -1.0 : 1.0) * encoder.getAbsolutePosition() * 360;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -83,6 +92,7 @@ public class PWMDutyCycleEncoderSwerve extends SwerveAbsoluteEncoder
|
|||||||
@Override
|
@Override
|
||||||
public double getVelocity()
|
public double getVelocity()
|
||||||
{
|
{
|
||||||
|
disconnected.set(!encoder.isConnected());
|
||||||
inaccurateVelocities.set(true);
|
inaccurateVelocities.set(true);
|
||||||
return encoder.get();
|
return encoder.get();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,6 +52,11 @@ public class SparkMaxSwerve extends SwerveMotor
|
|||||||
*/
|
*/
|
||||||
private Supplier<Double> position;
|
private Supplier<Double> position;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* An {@link Alert} for if there is an error configuring the motor.
|
||||||
|
*/
|
||||||
|
private Alert failureConfiguringAlert;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialize the swerve motor.
|
* Initialize the swerve motor.
|
||||||
*
|
*
|
||||||
@@ -74,6 +79,9 @@ public class SparkMaxSwerve extends SwerveMotor
|
|||||||
position = encoder::getPosition;
|
position = encoder::getPosition;
|
||||||
// Spin off configurations in a different thread.
|
// Spin off configurations in a different thread.
|
||||||
// configureSparkMax(() -> motor.setCANTimeout(0)); // Commented out because it prevents feedback.
|
// configureSparkMax(() -> motor.setCANTimeout(0)); // Commented out because it prevents feedback.
|
||||||
|
failureConfiguringAlert = new Alert("Motors",
|
||||||
|
"Failure configuring motor " + motor.getDeviceId(),
|
||||||
|
Alert.AlertType.WARNING_TRACE);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -101,7 +109,7 @@ public class SparkMaxSwerve extends SwerveMotor
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
DriverStation.reportWarning("Failure configuring motor " + motor.getDeviceId(), true);
|
failureConfiguringAlert.set(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user