mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-29 02:21:44 +00:00
[wpimath] Report error on negative PID gains (#6055)
Defaults PID gains to zero if any are invalid.
This commit is contained in:
@@ -31,9 +31,7 @@ class Robot : public frc::TimedRobot {
|
||||
|
||||
private:
|
||||
// proportional speed constant
|
||||
// negative because applying positive voltage will bring us closer to the
|
||||
// target
|
||||
static constexpr double kP = -0.001;
|
||||
static constexpr double kP = 0.001;
|
||||
// integral speed constant
|
||||
static constexpr double kI = 0.0;
|
||||
// derivative speed constant
|
||||
|
||||
@@ -57,7 +57,7 @@ class UltrasonicPIDTest : public testing::TestWithParam<double> {
|
||||
m_driveSim.Update(20_ms);
|
||||
|
||||
auto startingDistance = units::meter_t{GetParam()};
|
||||
m_distance = startingDistance - m_driveSim.GetLeftPosition();
|
||||
m_distance = m_driveSim.GetLeftPosition() - startingDistance;
|
||||
|
||||
m_ultrasonicSim.SetRange(m_distance);
|
||||
}
|
||||
@@ -99,8 +99,7 @@ TEST_P(UltrasonicPIDTest, Auto) {
|
||||
}
|
||||
|
||||
{
|
||||
// advance 100 timesteps
|
||||
frc::sim::StepTiming(2_s);
|
||||
frc::sim::StepTiming(5_s);
|
||||
|
||||
EXPECT_NEAR(Robot::kHoldDistance.value(), m_distance.value(), 10.0);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user