WPILibC++ 2023.4.3-108-ge5452e3
frc::MotorController Class Referenceabstract

Interface for motor controlling devices. More...

#include <frc/motorcontrol/MotorController.h>

Inheritance diagram for frc::MotorController:
frc::MotorControllerGroup frc::NidecBrushless frc::PWMMotorController frc::DMC60 frc::Jaguar frc::PWMSparkMax frc::PWMTalonFX frc::PWMTalonSRX frc::PWMVenom frc::PWMVictorSPX frc::SD540 frc::Spark frc::Talon frc::Victor frc::VictorSP

Public Member Functions

virtual ~MotorController ()=default
 
virtual void Set (double speed)=0
 Common interface for setting the speed of a motor controller. More...
 
virtual void SetVoltage (units::volt_t output)
 Sets the voltage output of the MotorController. More...
 
virtual double Get () const =0
 Common interface for getting the current set speed of a motor controller. More...
 
virtual void SetInverted (bool isInverted)=0
 Common interface for inverting direction of a motor controller. More...
 
virtual bool GetInverted () const =0
 Common interface for returning the inversion state of a motor controller. More...
 
virtual void Disable ()=0
 Common interface for disabling a motor. More...
 
virtual void StopMotor ()=0
 Common interface to stop the motor until Set is called again. More...
 

Detailed Description

Interface for motor controlling devices.

Constructor & Destructor Documentation

◆ ~MotorController()

virtual frc::MotorController::~MotorController ( )
virtualdefault

Member Function Documentation

◆ Disable()

virtual void frc::MotorController::Disable ( )
pure virtual

Common interface for disabling a motor.

Implemented in frc::MotorControllerGroup, frc::NidecBrushless, and frc::PWMMotorController.

◆ Get()

virtual double frc::MotorController::Get ( ) const
pure virtual

Common interface for getting the current set speed of a motor controller.

Returns
The current set speed. Value is between -1.0 and 1.0.

Implemented in frc::MotorControllerGroup, frc::NidecBrushless, and frc::PWMMotorController.

◆ GetInverted()

virtual bool frc::MotorController::GetInverted ( ) const
pure virtual

Common interface for returning the inversion state of a motor controller.

Returns
isInverted The state of inversion, true is inverted.

Implemented in frc::MotorControllerGroup, frc::NidecBrushless, and frc::PWMMotorController.

◆ Set()

virtual void frc::MotorController::Set ( double  speed)
pure virtual

Common interface for setting the speed of a motor controller.

Parameters
speedThe speed to set. Value should be between -1.0 and 1.0.

Implemented in frc::MotorControllerGroup, frc::NidecBrushless, and frc::PWMMotorController.

◆ SetInverted()

virtual void frc::MotorController::SetInverted ( bool  isInverted)
pure virtual

Common interface for inverting direction of a motor controller.

Parameters
isInvertedThe state of inversion, true is inverted.

Implemented in frc::MotorControllerGroup, frc::NidecBrushless, and frc::PWMMotorController.

◆ SetVoltage()

virtual void frc::MotorController::SetVoltage ( units::volt_t  output)
virtual

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."

Parameters
outputThe voltage to output.

Reimplemented in frc::MotorControllerGroup.

◆ StopMotor()

virtual void frc::MotorController::StopMotor ( )
pure virtual

Common interface to stop the motor until Set is called again.

Implemented in frc::MotorControllerGroup, frc::NidecBrushless, and frc::PWMMotorController.


The documentation for this class was generated from the following file: