Interface MotorController

    • Method Summary

      All Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      void disable()
      Disable the motor controller.
      double get()
      Common interface for getting the current set speed of a motor controller.
      boolean getInverted()
      Common interface for returning if a motor controller is in the inverted state or not.
      void set​(double speed)
      Common interface for setting the speed of a motor controller.
      void setInverted​(boolean isInverted)
      Common interface for inverting direction of a motor controller.
      default void setVoltage​(double outputVolts)
      Sets the voltage output of the MotorController.
      void stopMotor()
      Stops motor movement.
    • Method Detail

      • set

        void set​(double speed)
        Common interface for setting the speed of a motor controller.
        Specified by:
        set in interface SpeedController
        Parameters:
        speed - The speed to set. Value should be between -1.0 and 1.0.
      • setVoltage

        default void setVoltage​(double outputVolts)
        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 SpeedController
        Parameters:
        outputVolts - The voltage to output.
      • get

        double get()
        Common interface for getting the current set speed of a motor controller.
        Specified by:
        get in interface SpeedController
        Returns:
        The current set speed. Value is between -1.0 and 1.0.
      • setInverted

        void setInverted​(boolean isInverted)
        Common interface for inverting direction of a motor controller.
        Specified by:
        setInverted in interface SpeedController
        Parameters:
        isInverted - The state of inversion true is inverted.
      • getInverted

        boolean getInverted()
        Common interface for returning if a motor controller is in the inverted state or not.
        Specified by:
        getInverted in interface SpeedController
        Returns:
        isInverted The state of the inversion true is inverted.
      • stopMotor

        void stopMotor()
        Stops motor movement. Motor can be moved again by calling set without having to re-enable the motor.
        Specified by:
        stopMotor in interface SpeedController