12 #include "frc/DigitalOutput.h"
13 #include "frc/ErrorBase.h"
14 #include "frc/MotorSafety.h"
16 #include "frc/SpeedController.h"
17 #include "frc/smartdashboard/SendableBase.h"
52 void Set(
double speed)
override;
59 double Get()
const override;
83 void PIDWrite(
double output)
override;
86 void StopMotor()
override;
100 bool m_isInverted =
false;
101 std::atomic_bool m_disabled{
false};
104 double m_speed = 0.0;
This class implements an extremely fast bulk output stream that can only output to a stream...
Definition: raw_ostream.h:45
int GetChannel() const
Gets the channel number associated with the object.
Interface for speed controlling devices.
Definition: SpeedController.h:17
WPILib FRC namespace.
Definition: SPIAccelerometerSim.h:18
void Enable()
Re-enable the motor after Disable() has been called.
void SetInverted(bool isInverted) override
Common interface for inverting direction of a speed controller.
void Disable() override
Disable the motor.
void PIDWrite(double output) override
Write out the PID value as seen in the PIDOutput base object.
This base class runs a watchdog timer and calls the subclass's StopMotor() function if the timeout ex...
Definition: MotorSafety.h:24
bool GetInverted() const override
Common interface for returning the inversion state of a speed controller.
double Get() const override
Get the recently set value of the PWM.
void Set(double speed) override
Set the PWM value.
Nidec Brushless Motor.
Definition: NidecBrushless.h:24
Definition: SendableBase.h:19
Class to write to digital outputs.
Definition: DigitalOutput.h:24
Definition: SendableBuilder.h:23
Class implements the PWM generation in the FPGA.
Definition: PWM.h:37
NidecBrushless(int pwmChannel, int dioChannel)
Constructor.
void InitSendable(SendableBuilder &builder) override
Initializes this Sendable object.