[wpimath] PIDController: Add IZone (#5315)

Co-authored-by: Ryan Blue <ryanzblue@gmail.com>
This commit is contained in:
Gold856
2023-06-20 02:01:01 -04:00
committed by GitHub
parent f5b0d1484b
commit 991f4b0f62
7 changed files with 158 additions and 2 deletions

View File

@@ -55,4 +55,24 @@ class PIDInputOutputTest {
assertEquals(-0.01 / m_controller.getPeriod(), m_controller.calculate(0.0025, 0), 1e-5);
}
@Test
void iZoneNoOutputTest() {
m_controller.setI(1);
m_controller.setIZone(1);
double out = m_controller.calculate(2, 0);
assertEquals(0, out, 1e-5);
}
@Test
void iZoneOutputTest() {
m_controller.setI(1);
m_controller.setIZone(1);
double out = m_controller.calculate(1, 0);
assertEquals(-1 * m_controller.getPeriod(), out, 1e-5);
}
}