diff --git a/wpilibcExamples/src/main/cpp/examples/PotentiometerPID/cpp/Robot.cpp b/wpilibcExamples/src/main/cpp/examples/PotentiometerPID/cpp/Robot.cpp index d075f10346..24c586a39a 100644 --- a/wpilibcExamples/src/main/cpp/examples/PotentiometerPID/cpp/Robot.cpp +++ b/wpilibcExamples/src/main/cpp/examples/PotentiometerPID/cpp/Robot.cpp @@ -17,6 +17,10 @@ */ class Robot : public frc::TimedRobot { public: + void RobotInit() override { + m_pidController.SetSetpoint(kSetPoints[m_index]); + } + void TeleopPeriodic() override { // When the button is pressed once, the selected elevator setpoint is // incremented. @@ -24,10 +28,10 @@ class Robot : public frc::TimedRobot { if (currentButtonValue && !m_previousButtonValue) { // Index of the elevator setpoint wraps around m_index = (m_index + 1) % (sizeof(kSetPoints) / 8); + m_pidController.SetSetpoint(kSetPoints[m_index]); } m_previousButtonValue = currentButtonValue; - m_pidController.SetSetpoint(kSetPoints[m_index]); double output = m_pidController.Calculate(m_potentiometer.GetAverageVoltage()); m_elevatorMotor.Set(output); diff --git a/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/examples/potentiometerpid/Robot.java b/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/examples/potentiometerpid/Robot.java index 1a7f0825b4..e0c3bb004f 100644 --- a/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/examples/potentiometerpid/Robot.java +++ b/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/examples/potentiometerpid/Robot.java @@ -46,6 +46,7 @@ public class Robot extends TimedRobot { m_joystick = new Joystick(kJoystickChannel); m_pidController = new PIDController(kP, kI, kD); + m_pidController.setSetpoint(kSetPoints[m_index]); } @Override @@ -60,9 +61,8 @@ public class Robot extends TimedRobot { if (currentButtonValue && !m_previousButtonValue) { // index of the elevator setpoint wraps around. m_index = (m_index + 1) % kSetPoints.length; + m_pidController.setSetpoint(kSetPoints[m_index]); } m_previousButtonValue = currentButtonValue; - - m_pidController.setSetpoint(kSetPoints[m_index]); } }