Skip to content

Commit 5f67acb

Browse files
Almost Done
Almost Done
1 parent d0f119e commit 5f67acb

4 files changed

Lines changed: 56 additions & 95 deletions

File tree

src/main/java/frc/robot/RobotContainer.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,12 +71,14 @@
7171
import frc.robot.subsystems.drive.VisionIOLimelight;
7272
import frc.robot.subsystems.elevator.AmpBarIO;
7373
import frc.robot.subsystems.elevator.AmpBarIOSIm;
74+
import frc.robot.subsystems.elevator.AmpBarIOSparkMAX;
7475
//import frc.robot.subsystems.elevator.AmpBarIOSparkMAX;
7576
import frc.robot.subsystems.elevator.Elevator;
7677
import frc.robot.subsystems.elevator.ElevatorIO;
7778
import frc.robot.subsystems.elevator.ElevatorIOSim;
7879
import frc.robot.subsystems.elevator.ElevatorIOTalonFX;
7980
import frc.robot.subsystems.intake.Intake;
81+
import frc.robot.subsystems.intake.IntakeRollerIOSparkFlex;
8082
//import frc.robot.subsystems.intake.IntakeRollerIOSim;
8183
//import frc.robot.subsystems.intake.IntakeRollerIOSparkFlex;
8284
import frc.robot.subsystems.led.LED;
Lines changed: 35 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -1,89 +1,46 @@
1-
// package frc.robot.subsystems.elevator;
1+
package frc.robot.subsystems.elevator;
22

3-
// import com.revrobotics.spark.SparkBase.ControlType;
4-
// import com.revrobotics.spark.SparkBase.IdleMode;
5-
// import com.revrobotics.CANSparkLowLevel;
6-
// import com.revrobotics.CANSparkMax;
7-
// import com.revrobotics.SparkPIDController;
8-
// import com.revrobotics.SparkPIDController.ArbFFUnits;
9-
// import org.littletonrobotics.junction.Logger;
3+
import com.revrobotics.spark.SparkFlex;
4+
import com.revrobotics.spark.SparkLowLevel;
5+
import com.revrobotics.spark.SparkLowLevel.MotorType;
6+
import com.revrobotics.spark.SparkMax;
7+
import com.revrobotics.spark.SparkClosedLoopController;
8+
import com.revrobotics.spark.config.SparkBaseConfig.IdleMode;
9+
import com.revrobotics.spark.config.SparkMaxConfig;
10+
import com.revrobotics.spark.SparkClosedLoopController.ArbFFUnits;
11+
import com.revrobotics.spark.SparkBase.ControlType;
12+
import com.revrobotics.spark.SparkBase.PersistMode;
13+
import com.revrobotics.spark.SparkBase.ResetMode;
1014

11-
// public class AmpBarIOSparkMAX implements AmpBarIO {
15+
public class AmpBarIOSparkMAX implements AmpBarIO {
1216

13-
// private final CANSparkMax barMotor;
14-
// private final SparkPIDController pid;
15-
// private double barPositionSetpoint;
16-
// private final double gearRatio = 15. / 1.;
17+
private final SparkMax barMotor;
18+
private final SparkClosedLoopController pid;
19+
private double barPositionSetpoint;
20+
private final double gearRatio = 15. / 1.;
1721

18-
// public AmpBarIOSparkMAX(int motorID) {
22+
public AmpBarIOSparkMAX(int motorID) {
1923

20-
// barMotor = new CANSparkMax(motorID, CANSparkLowLevel.MotorType.kBrushless);
24+
barMotor = new SparkMax(motorID, SparkLowLevel.MotorType.kBrushless);
2125

22-
// pid = barMotor.getPIDController();
23-
// // pid.setFeedbackDevice(barMotor.getAbsoluteEncoder());
26+
pid = barMotor.getClosedLoopController();
27+
// pid.setFeedbackDevice(barMotor.getAbsoluteEncoder());
2428

25-
// barMotor.restoreFactoryDefaults();
26-
// barMotor.setCANTimeout(250);
27-
// barMotor.setSmartCurrentLimit(30);
28-
// barMotor.getEncoder().setPosition(0);
29-
// barMotor.getEncoder().setPositionConversionFactor(1);
30-
// barMotor.setInverted(true);
29+
3130

32-
// barMotor.burnFlash();
33-
// barMotor.clearFaults();
31+
barMotor.clearFaults();
3432

35-
// barPositionSetpoint = 0;
36-
// }
33+
barPositionSetpoint = 0;
34+
}
3735

38-
// @Override
39-
// public void updateInputs(AmpBarIOInputs inputs) {
40-
// inputs.barVelocityDegsPerSec = (barMotor.getEncoder().getVelocity() / gearRatio) * 360. / 60.;
41-
// inputs.barPositionDegrees = (barMotor.getEncoder().getPosition() / gearRatio) * 360.;
42-
// inputs.barPositionSetpointDegrees = barPositionSetpoint;
43-
// inputs.currentAmps = barMotor.getOutputCurrent();
44-
// inputs.appliedVolts = barMotor.getAppliedOutput();
45-
// }
36+
@Override
37+
public void updateInputs(AmpBarIOInputs inputs) {
38+
inputs.barVelocityDegsPerSec = (barMotor.getEncoder().getVelocity() / gearRatio) * 360. / 60.;
39+
inputs.barPositionDegrees = (barMotor.getEncoder().getPosition() / gearRatio) * 360.;
40+
inputs.barPositionSetpointDegrees = barPositionSetpoint;
41+
inputs.currentAmps = barMotor.getOutputCurrent();
42+
inputs.appliedVolts = barMotor.getAppliedOutput();
43+
}
44+
}
4645

47-
// @Override
48-
// public void setBrakeMode(boolean bool) {
49-
50-
// if (bool) {
51-
// barMotor.setIdleMode(IdleMode.kBrake);
52-
// } else {
53-
// barMotor.setIdleMode(IdleMode.kCoast);
54-
// }
55-
// }
56-
57-
// @Override
58-
// public void setPositionSetpoint(double barPositionOutputDegs, double ffVolts) {
59-
60-
// this.barPositionSetpoint = barPositionOutputDegs;
61-
// Logger.recordOutput("barPositionOutputDegs", barPositionOutputDegs);
62-
// Logger.recordOutput("bar equation reference", (barPositionOutputDegs / 360.) * gearRatio);
63-
// Logger.recordOutput("ffVolts", ffVolts);
64-
// pid.setReference(
65-
// (barPositionOutputDegs / 360.) * gearRatio,
66-
// ControlType.kPosition,
67-
// 0,
68-
// ffVolts,
69-
// ArbFFUnits.kVoltage);
70-
// }
71-
72-
// @Override
73-
// public void setVoltage(double volts) {
74-
// barMotor.setVoltage(volts);
75-
// }
76-
77-
// @Override
78-
// public void stop() {
79-
// barMotor.stopMotor();
80-
// }
81-
82-
// @Override
83-
// public void configurePID(double kP, double kI, double kD) {
84-
85-
// pid.setP(kP);
86-
// pid.setI(kI);
87-
// pid.setD(kD);
88-
// }
89-
// }
46+

src/main/java/frc/robot/subsystems/intake/IntakeRollerIOSparkFlex.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,14 @@ public class IntakeRollerIOSparkFlex implements IntakeRollerIO {
1616
private final SparkMax rollers;
1717

1818
public IntakeRollerIOSparkFlex(int id) {
19-
SparkMax rollers = new SparkMax(id, MotorType.kBrushless);
19+
rollers = new SparkMax(id, MotorType.kBrushless);
2020
SparkClosedLoopController pid = rollers.getClosedLoopController();
21+
SparkMaxConfig config = new SparkMaxConfig();
22+
2123

22-
23-
24-
rollers.setSmart(5);
24+
config.smartCurrentLimit(Constants.IntakeConstants.CURRENT_LIMIT);
2525
rollers.setCANTimeout(250);
26-
SparkMaxConfig.
27-
rollers.burnFlash();
26+
rollers.configure(config, ResetMode.kResetSafeParameters, PersistMode.kPersistParameters);
2827
}
2928

3029
@Override

src/main/java/frc/robot/subsystems/shooter/FeederIOSparkMax.java

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,25 @@
11
package frc.robot.subsystems.shooter;
22

3-
import com.revrobotics.servohub.ServoHub.ResetMode;
4-
import com.revrobotics.spark.SparkBase.ControlType;
5-
import com.revrobotics.spark.SparkBase.PersistMode;
3+
4+
import com.revrobotics.spark.SparkFlex;
65
import com.revrobotics.spark.SparkLowLevel.MotorType;
76
import com.revrobotics.spark.SparkMax;
8-
import com.revrobotics.spark.config.SparkMaxConfig;
7+
import com.revrobotics.spark.ClosedLoopSlot;
98
import com.revrobotics.spark.SparkClosedLoopController;
10-
9+
import com.revrobotics.spark.config.SparkMaxConfig;
1110
import com.revrobotics.spark.SparkClosedLoopController.ArbFFUnits;
11+
import com.revrobotics.spark.SparkBase.ControlType;
12+
import com.revrobotics.spark.SparkBase.PersistMode;
13+
import com.revrobotics.spark.SparkBase.ResetMode;
14+
1215

1316
import frc.robot.Constants;
1417

1518

1619
public class FeederIOSparkMax implements FeederIO {
1720
SparkMax neo;
1821
SparkClosedLoopController pid;
19-
SparkMaxConfig config = new SparkMaxConfig();
22+
SparkMaxConfig config;
2023

2124

2225

@@ -34,11 +37,10 @@ public FeederIOSparkMax(int id) {
3437
neo.configure(config, ResetMode.kResetSafeParameters, PersistMode.kPersistParameters);
3538

3639

40+
neo.setCANTimeout(250);
3741

3842

39-
neo.setSmartCurrentLimit((int) Constants.ShooterConstants.FEEDER_CURRENT_LIMIT);
40-
neo.setCANTimeout(250);
41-
neo.burnFlash();
43+
config.smartCurrentLimit((int) Constants.ShooterConstants.FEEDER_CURRENT_LIMIT);
4244
}
4345

4446
@Override
@@ -54,7 +56,7 @@ public void updateInputs(FeederIOInputs inputs) {
5456
@Override
5557
public void setVelocityRPS(double velocityRPS, double ffVolts) {
5658
this.velocitySetpointRPS = velocityRPS;
57-
pid.setReference(velocityRPS, ControlType.kVelocity, 0, ffVolts, ArbFFUnits.kVoltage);
59+
pid.setReference(velocityRPS, ControlType.kVelocity, , ffVolts, ArbFFUnits.kVoltage);
5860
}
5961

6062
@Override
@@ -64,7 +66,8 @@ public void stop() {
6466

6567
@Override
6668
public void configurePID(double kP, double kI, double kD) {
67-
pid.setP(kP, 0);
69+
pid.
70+
pid.conf(kP, 0);
6871
pid.setI(kI, 0);
6972
pid.setD(kD, 0);
7073
}

0 commit comments

Comments
 (0)