Package frc.lib5k.components.sensors
Class EncoderBase
- java.lang.Object
-
- frc.lib5k.components.sensors.EncoderBase
-
- All Implemented Interfaces:
PeriodicComponent
- Direct Known Subclasses:
MockEncoder,TalonEncoder,VictorEncoder
public abstract class EncoderBase extends java.lang.Object implements PeriodicComponent
Base for encoders
-
-
Constructor Summary
Constructors Constructor Description EncoderBase()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidfullReset()Reset the encoder "0" positiondoublegetAverageSpeed()doublegetMeters(int tpr, double wheel_circumference)Get sensor distance traveled in metersdoublegetMetersPerCycle(int tpr, double wheel_circumference)Get sensor distance traveled in meters since last cycleintgetRawTicks()Get the raw sensor reading from encoderprotected abstract intgetSensorReading()intgetSpeed()Get the speed of the encoder in Ticks per cycle (usually 20ms)intgetTicks()Get sensor reading accounting for offsetsvoidinitSimulationDevice(edu.wpi.first.wpilibj.SpeedController controller, int tpr, double gearbox_ratio, double max_rpm, double ramp_time)voidupdate()Method to be called periodically.voidzero()Set the current encoder position as "0"
-
-
-
Method Detail
-
initSimulationDevice
public void initSimulationDevice(edu.wpi.first.wpilibj.SpeedController controller, int tpr, double gearbox_ratio, double max_rpm, double ramp_time)
-
getSensorReading
protected abstract int getSensorReading()
-
getRawTicks
public int getRawTicks()
Get the raw sensor reading from encoder- Returns:
- Raw sensor reading
-
getTicks
public int getTicks()
Get sensor reading accounting for offsets- Returns:
- Sensor reading
-
getMeters
public double getMeters(int tpr, double wheel_circumference)Get sensor distance traveled in meters- Parameters:
tpr- Encoder ticks per revolutionwheel_circumference- Circumference of wheel (or gear) attached to encoder- Returns:
- Meters traveled
-
getMetersPerCycle
public double getMetersPerCycle(int tpr, double wheel_circumference)Get sensor distance traveled in meters since last cycle- Parameters:
tpr- Encoder ticks per revolutionwheel_circumference- Circumference of wheel (or gear) attached to encoder- Returns:
- Meters traveled in last cycle
-
zero
public void zero()
Set the current encoder position as "0"
-
fullReset
public void fullReset()
Reset the encoder "0" position
-
getSpeed
public int getSpeed()
Get the speed of the encoder in Ticks per cycle (usually 20ms)- Returns:
- Rotation speed
-
getAverageSpeed
public double getAverageSpeed()
-
update
public void update()
Description copied from interface:PeriodicComponentMethod to be called periodically. Usually in the main robot loop (once per 20ms)- Specified by:
updatein interfacePeriodicComponent
-
-