mirror of
https://github.com/Team4388/2026KPopRobotHunters.git
synced 2026-06-09 08:48:05 -06:00
WIP
Tweaked shooter offset model and new progress with X position
This commit is contained in:
@@ -89,8 +89,9 @@ public class Shooter extends SubsystemBase {
|
||||
shooterButtonReady = false;
|
||||
}
|
||||
|
||||
public AngularVelocity getBallVelocity() {
|
||||
return RotationsPerSecond.of((state.motor1Velocity.in(RotationsPerSecond) + state.indexerVelocity.in(RotationsPerSecond)));
|
||||
public double getBallVelocity() {
|
||||
return Math.abs(state.motor1TargetVelocity.in(RotationsPerSecond)) * ShooterConstants.SHOOTER_RADIUS * 2 * Math.PI;
|
||||
//Math.abs(state.indexerForwardVelocity.in(RotationsPerSecond))*ShooterConstants.INDEXER_RADIUS)
|
||||
}
|
||||
|
||||
@AutoLogOutput
|
||||
|
||||
@@ -18,7 +18,8 @@ public class ShooterConstants {
|
||||
public static final double SHOOTERMOTOR_GEAR_RATIO = 1.5;
|
||||
public static final double INDEXER_GEAR_RATIO = 1.;
|
||||
public static final double T_CONSTANT = 2;
|
||||
|
||||
public static final double SHOOTER_RADIUS = 2/39.37;
|
||||
public static final double INDEXER_RADIUS = 0.625/39.37;
|
||||
public static final ConfigurableDouble SHOOTER_MAX_VELOCITY = new ConfigurableDouble("Shooter MAX Velocity", 60);
|
||||
public static final ConfigurableDouble SHOOTER_OVERRIDE_VELOCITY = new ConfigurableDouble("Shooter OVERRIDE Velocity", -42);
|
||||
// public static final ConfigurableDouble SHOOTER_FEED_VELOCITY = new ConfigurableDouble("Shooter Feed Velocity", -35);
|
||||
|
||||
@@ -26,7 +26,7 @@ public interface ShooterIO {
|
||||
|
||||
AngularVelocity motor1Velocity = RotationsPerSecond.of(0);
|
||||
AngularVelocity motor2Velocity = RotationsPerSecond.of(0);
|
||||
AngularVelocity indexerVelocity = RotationsPerSecond.of(0);
|
||||
AngularVelocity indexerForwardVelocity = RotationsPerSecond.of(42.53); //guestimate
|
||||
double indexerOutput = 0;
|
||||
|
||||
Current motor1Current = Amps.of(0);
|
||||
|
||||
@@ -87,6 +87,9 @@ public class ShooterReal implements ShooterIO {
|
||||
public void setIndexerOutput(ShooterState state, double percentOutput) {
|
||||
state.indexerTargetOutput = percentOutput;
|
||||
m_indexerMotor.set(percentOutput);
|
||||
if (state.indexerTargetOutput - state.indexerOutput > 0.05){
|
||||
state.indexerForwardVelocity = m_indexerMotor.getVelocity().getValue().div(ShooterConstants.INDEXER_GEAR_RATIO);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -95,7 +98,6 @@ public class ShooterReal implements ShooterIO {
|
||||
|
||||
state.motor1Velocity = m_shooter1Motor.getVelocity().getValue().div(ShooterConstants.SHOOTERMOTOR_GEAR_RATIO);
|
||||
state.motor2Velocity = m_shooter2Motor.getVelocity().getValue().div(ShooterConstants.SHOOTERMOTOR_GEAR_RATIO);
|
||||
state.indexerVelocity = m_indexerMotor.getVelocity().getValue().div(ShooterConstants.INDEXER_GEAR_RATIO);
|
||||
state.indexerOutput = m_indexerMotor.get();
|
||||
// state.indexerOutput = m_indexerMotor.getVelocity().getValue().div(ShooterConstants.INDEXER_GEAR_RATIO);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user