Class PIDMotorController

java.lang.Object
edu.wpi.first.wpilibj.pidwrappers.PIDMotorController
All Implemented Interfaces:
Sendable, MotorController, PIDOutput, SpeedController

@Deprecated(since="2022",
            forRemoval=true)
public class PIDMotorController
extends Object
implements PIDOutput, MotorController, Sendable
Deprecated, for removal: This API element is subject to removal in a future version.
Use PIDController which doesn't require this wrapper.
Wrapper so that PIDOutput is implemented for MotorController for old PIDController.
  • Constructor Summary

    Constructors 
    Constructor Description
    PIDMotorController​(MotorController motorController)
    Deprecated, for removal: This API element is subject to removal in a future version.
     
  • Method Summary

    Modifier and Type Method Description
    void disable()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Disable the motor controller.
    double get()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Common interface for getting the current set speed of a motor controller.
    boolean getInverted()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Common interface for returning if a motor controller is in the inverted state or not.
    void initSendable​(SendableBuilder builder)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Initializes this Sendable object.
    void pidWrite​(double output)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Write out the PID value as seen in the PIDOutput base object.
    void set​(double speed)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Common interface for setting the speed of a motor controller.
    void setInverted​(boolean isInverted)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Common interface for inverting direction of a motor controller.
    void setVoltage​(double outputVolts)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Sets the voltage output of the MotorController.
    void stopMotor()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Stops motor movement.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

  • Method Details

    • pidWrite

      public void pidWrite​(double output)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Write out the PID value as seen in the PIDOutput base object.
      Specified by:
      pidWrite in interface PIDOutput
      Parameters:
      output - Write out the PWM value as was found in the PIDController
    • set

      public void set​(double speed)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Common interface for setting the speed of a motor controller.
      Specified by:
      set in interface MotorController
      Specified by:
      set in interface SpeedController
      Parameters:
      speed - The speed to set. Value should be between -1.0 and 1.0.
    • setVoltage

      public void setVoltage​(double outputVolts)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Sets the voltage output of the MotorController. Compensates for the current bus voltage to ensure that the desired voltage is output even if the battery voltage is below 12V - highly useful when the voltage outputs are "meaningful" (e.g. they come from a feedforward calculation).

      NOTE: This function *must* be called regularly in order for voltage compensation to work properly - unlike the ordinary set function, it is not "set it and forget it."

      Specified by:
      setVoltage in interface MotorController
      Specified by:
      setVoltage in interface SpeedController
      Parameters:
      outputVolts - The voltage to output.
    • get

      public double get()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Common interface for getting the current set speed of a motor controller.
      Specified by:
      get in interface MotorController
      Specified by:
      get in interface SpeedController
      Returns:
      The current set speed. Value is between -1.0 and 1.0.
    • setInverted

      public void setInverted​(boolean isInverted)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Common interface for inverting direction of a motor controller.
      Specified by:
      setInverted in interface MotorController
      Specified by:
      setInverted in interface SpeedController
      Parameters:
      isInverted - The state of inversion true is inverted.
    • getInverted

      public boolean getInverted()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Common interface for returning if a motor controller is in the inverted state or not.
      Specified by:
      getInverted in interface MotorController
      Specified by:
      getInverted in interface SpeedController
      Returns:
      isInverted The state of the inversion true is inverted.
    • disable

      public void disable()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Disable the motor controller.
      Specified by:
      disable in interface MotorController
      Specified by:
      disable in interface SpeedController
    • stopMotor

      public void stopMotor()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Stops motor movement. Motor can be moved again by calling set without having to re-enable the motor.
      Specified by:
      stopMotor in interface MotorController
      Specified by:
      stopMotor in interface SpeedController
    • initSendable

      public void initSendable​(SendableBuilder builder)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: Sendable
      Initializes this Sendable object.
      Specified by:
      initSendable in interface Sendable
      Parameters:
      builder - sendable builder