Coast mode for swerve
This commit is contained in:
parent
840c851253
commit
191af3083d
|
|
@ -2,11 +2,16 @@ package org.fairportrobotics.frc.robolib.drivesystems.swerve;
|
||||||
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
|
||||||
|
<<<<<<< Updated upstream
|
||||||
import org.littletonrobotics.junction.ConsoleSource.RoboRIO;
|
import org.littletonrobotics.junction.ConsoleSource.RoboRIO;
|
||||||
|
|
||||||
|
=======
|
||||||
|
import com.ctre.phoenix.motorcontrol.NeutralMode;
|
||||||
|
>>>>>>> Stashed changes
|
||||||
import com.ctre.phoenix6.CANBus;
|
import com.ctre.phoenix6.CANBus;
|
||||||
import com.ctre.phoenix6.Utils;
|
import com.ctre.phoenix6.Utils;
|
||||||
import com.ctre.phoenix6.hardware.Pigeon2;
|
import com.ctre.phoenix6.hardware.Pigeon2;
|
||||||
|
import com.ctre.phoenix6.signals.NeutralModeValue;
|
||||||
|
|
||||||
import edu.wpi.first.math.estimator.SwerveDrivePoseEstimator3d;
|
import edu.wpi.first.math.estimator.SwerveDrivePoseEstimator3d;
|
||||||
import edu.wpi.first.math.geometry.Pose2d;
|
import edu.wpi.first.math.geometry.Pose2d;
|
||||||
|
|
@ -247,6 +252,17 @@ public class SwerveDriveSystem implements Subsystem{
|
||||||
this.setPose3d(new Pose3d(pose));
|
this.setPose3d(new Pose3d(pose));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set module brake mode
|
||||||
|
* @param brakeMode true for brake, false for coast
|
||||||
|
*/
|
||||||
|
public void setBrakeMode(boolean brakeMode){
|
||||||
|
SwerveModule[] modules = getModules();
|
||||||
|
for(SwerveModule mod : modules){
|
||||||
|
mod.getDriveMotor().setNeutralMode(brakeMode ? NeutralModeValue.Brake : NeutralModeValue.Coast);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private SwerveModulePosition[] getModulePositions(){
|
private SwerveModulePosition[] getModulePositions(){
|
||||||
return Arrays.stream(modules).map((SwerveModule m) -> m.getModulePosition()).toArray(SwerveModulePosition[]::new);
|
return Arrays.stream(modules).map((SwerveModule m) -> m.getModulePosition()).toArray(SwerveModulePosition[]::new);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue