mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-21 01:01:43 +00:00
[wpilib] PIDController: Recompute the error in AtSetpoint() (#2822)
This makes AtSetpoint() return false after the setpoint is changed with SetSetpoint(). Closes #2821. Co-authored-by: Prateek Machiraju <prateek.machiraju@gmail.com>
This commit is contained in:
@@ -31,9 +31,17 @@ class PIDToleranceTest {
|
||||
try (var controller = new PIDController(0.05, 0.0, 0.0)) {
|
||||
controller.enableContinuousInput(-kRange / 2, kRange / 2);
|
||||
|
||||
assertTrue(controller.atSetpoint(),
|
||||
"Error was not in tolerance when it should have been. Error was "
|
||||
+ controller.getPositionError());
|
||||
|
||||
controller.setTolerance(kTolerance);
|
||||
controller.setSetpoint(kSetpoint);
|
||||
|
||||
assertFalse(controller.atSetpoint(),
|
||||
"Error was in tolerance when it should not have been. Error was "
|
||||
+ controller.getPositionError());
|
||||
|
||||
controller.calculate(0.0);
|
||||
|
||||
assertFalse(controller.atSetpoint(),
|
||||
|
||||
Reference in New Issue
Block a user