diff --git a/src/main/java/frc/robot/Constants.java b/src/main/java/frc/robot/Constants.java index 2a3f0fb..588f5ae 100644 --- a/src/main/java/frc/robot/Constants.java +++ b/src/main/java/frc/robot/Constants.java @@ -124,6 +124,7 @@ public final class Constants { public static final double climbUpTicks = 94; // TODO: 实测后调整 public static final double climbDownTicks = 0; // TODO: 实测后调整 + public static final double climbDownVelocity = -200; public static final double holdToleranceRot = 0.5; public static final double deltaDownTicks = 1; diff --git a/src/main/java/frc/robot/controls/ClimberControls.java b/src/main/java/frc/robot/controls/ClimberControls.java index 8040e04..2827ba2 100644 --- a/src/main/java/frc/robot/controls/ClimberControls.java +++ b/src/main/java/frc/robot/controls/ClimberControls.java @@ -25,12 +25,12 @@ public class ClimberControls { //climber.climbUp(); // 优先级:如果同时按,优先上升(你也可以反过来) if(controller.y().getAsBoolean()&&controller.x().getAsBoolean()){ - climber.zeroEncoder(); + climber.climbDownNonStop(); } else if (controller.y().getAsBoolean()) { climber.climbUp(); } else if (controller.x().getAsBoolean()) { - climber.climbDownNonStop(); + climber.climbDown(); } else { // 松开:记录当前位置 + 锁死 climber.captureHoldPosition(); diff --git a/src/main/java/frc/robot/subsystems/ClimberSubsystem.java b/src/main/java/frc/robot/subsystems/ClimberSubsystem.java index 76e2531..f054a7f 100644 --- a/src/main/java/frc/robot/subsystems/ClimberSubsystem.java +++ b/src/main/java/frc/robot/subsystems/ClimberSubsystem.java @@ -73,8 +73,7 @@ public class ClimberSubsystem extends SubsystemBase { } public void climbDownNonStop(){ - deltaPositionTicks = Constants.Climber.deltaDownTicks; - climberMotor.setControl(positionHoldRequest.withPosition(targetPositionTicks-deltaPositionTicks)); + climberMotor.setControl(velocityRequest.withVelocity(Constants.Climber.climbDownVelocity)); } public void captureHoldPosition() {