Skip to content

Commit 5760d70

Browse files
comments and docs
1 parent ce83ce2 commit 5760d70

File tree

3 files changed

+19
-9
lines changed

3 files changed

+19
-9
lines changed

src/main/java/frc/robot/Constants.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
*/
2727
public final class Constants {
2828

29-
public static final double kFastPeriodicPeriod = 0.01;
29+
public static final double kFastPeriodicPeriod = 0.01; // 100Hz, 10ms
3030

3131
/**
3232
* Input/Output constants

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

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,14 @@ public Command getAutonomousCommand() {
8383
return null;
8484
}
8585

86+
/**
87+
* This periodic loop runs every 10ms (100Hz)
88+
*
89+
* <p>
90+
* Should be used for any code that needs to be run more frequently than the
91+
* default 20ms loop (50Hz) such as PID Controllers.
92+
* </p>
93+
*/
8694
public void fastPeriodic() {
8795
m_robotDrive.fastPeriodic();
8896
}

src/main/java/frc/robot/subsystems/DriveSubsystem.java

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -101,18 +101,19 @@ public void periodic() {
101101
SmartDashboard.putNumber("odometryY", m_poseEstimator.getEstimatedPosition().getY());
102102

103103
// AdvantageScope Logging
104+
// max speed = 1 (for ease of use in AdvantageScope)
104105
double[] logData = {
105-
m_frontLeft.getPosition().angle.getRadians(), m_frontLeft.driveOutput,
106-
m_frontRight.getPosition().angle.getRadians(), m_frontRight.driveOutput,
107-
m_rearLeft.getPosition().angle.getRadians(), m_rearLeft.driveOutput,
108-
m_rearRight.getPosition().angle.getRadians(), m_rearRight.driveOutput,
106+
m_frontLeft.getPosition().angle.getDegrees(), m_frontLeft.driveOutput,
107+
m_frontRight.getPosition().angle.getDegrees(), m_frontRight.driveOutput,
108+
m_rearLeft.getPosition().angle.getDegrees(), m_rearLeft.driveOutput,
109+
m_rearRight.getPosition().angle.getDegrees(), m_rearRight.driveOutput,
109110
};
110111

111112
double[] logDataDesired = {
112-
m_desiredStates[0].angle.getDegrees(), m_desiredStates[0].speedMetersPerSecond,
113-
m_desiredStates[1].angle.getDegrees(), m_desiredStates[1].speedMetersPerSecond,
114-
m_desiredStates[2].angle.getDegrees(), m_desiredStates[2].speedMetersPerSecond,
115-
m_desiredStates[3].angle.getDegrees(), m_desiredStates[3].speedMetersPerSecond,
113+
m_desiredStates[0].angle.getDegrees(), m_desiredStates[0].speedMetersPerSecond / DriveConstants.kMaxSpeedMetersPerSecond,
114+
m_desiredStates[1].angle.getDegrees(), m_desiredStates[1].speedMetersPerSecond / DriveConstants.kMaxSpeedMetersPerSecond,
115+
m_desiredStates[2].angle.getDegrees(), m_desiredStates[2].speedMetersPerSecond / DriveConstants.kMaxSpeedMetersPerSecond,
116+
m_desiredStates[3].angle.getDegrees(), m_desiredStates[3].speedMetersPerSecond / DriveConstants.kMaxSpeedMetersPerSecond,
116117
};
117118

118119
SmartDashboard.putNumberArray("AdvantageScope Swerve Desired States", logDataDesired);
@@ -210,6 +211,7 @@ public void addVisionMeasurement(Pose2d pose, double timestamp) {
210211
m_poseEstimator.addVisionMeasurement(pose, timestamp);
211212
}
212213

214+
/** Sets the module states every 10ms (100Hz), faster than the regular periodic loop */
213215
public void fastPeriodic() {
214216
SwerveDriveKinematics.desaturateWheelSpeeds(
215217
m_desiredStates, DriveConstants.kMaxSpeedMetersPerSecond);

0 commit comments

Comments
 (0)