Package edu.wpi.first.wpilibj
Class AnalogAccelerometer
- java.lang.Object
-
- edu.wpi.first.wpilibj.SendableBase
-
- edu.wpi.first.wpilibj.AnalogAccelerometer
-
- All Implemented Interfaces:
PIDSource
,Sendable
,AutoCloseable
public class AnalogAccelerometer extends SendableBase implements PIDSource
Handle operation of an analog accelerometer. The accelerometer reads acceleration directly through the sensor. Many sensors have multiple axis and can be treated as multiple devices. Each is calibrated by finding the center value over a period of time.
-
-
Field Summary
Fields Modifier and Type Field Description protected PIDSourceType
m_pidSource
-
Constructor Summary
Constructors Constructor Description AnalogAccelerometer(int channel)
Create a new instance of an accelerometer.AnalogAccelerometer(AnalogInput channel)
Create a new instance of Accelerometer from an existing AnalogChannel.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Delete the analog components used for the accelerometer.double
getAcceleration()
Return the acceleration in Gs.PIDSourceType
getPIDSourceType()
Get which parameter of the device you are using as a process control variable.void
initSendable(SendableBuilder builder)
Initializes thisSendable
object.double
pidGet()
Get the Acceleration for the PID Source parent.void
setPIDSourceType(PIDSourceType pidSource)
Set which parameter of the device you are using as a process control variable.void
setSensitivity(double sensitivity)
Set the accelerometer sensitivity.void
setZero(double zero)
Set the voltage that corresponds to 0 G.-
Methods inherited from class edu.wpi.first.wpilibj.SendableBase
addChild, free, getName, getSubsystem, setName, setName, setName, setSubsystem
-
-
-
-
Field Detail
-
m_pidSource
protected PIDSourceType m_pidSource
-
-
Constructor Detail
-
AnalogAccelerometer
public AnalogAccelerometer(int channel)
Create a new instance of an accelerometer.The constructor allocates desired analog channel.
- Parameters:
channel
- The channel number for the analog input the accelerometer is connected to
-
AnalogAccelerometer
public AnalogAccelerometer(AnalogInput channel)
Create a new instance of Accelerometer from an existing AnalogChannel. Make a new instance of accelerometer given an AnalogChannel. This is particularly useful if the port is going to be read as an analog channel as well as through the Accelerometer class.- Parameters:
channel
- The existing AnalogInput object for the analog input the accelerometer is connected to
-
-
Method Detail
-
close
public void close()
Delete the analog components used for the accelerometer.- Specified by:
close
in interfaceAutoCloseable
- Overrides:
close
in classSendableBase
-
getAcceleration
public double getAcceleration()
Return the acceleration in Gs.The acceleration is returned units of Gs.
- Returns:
- The current acceleration of the sensor in Gs.
-
setSensitivity
public void setSensitivity(double sensitivity)
Set the accelerometer sensitivity.This sets the sensitivity of the accelerometer used for calculating the acceleration. The sensitivity varies by accelerometer model. There are constants defined for various models.
- Parameters:
sensitivity
- The sensitivity of accelerometer in Volts per G.
-
setZero
public void setZero(double zero)
Set the voltage that corresponds to 0 G.The zero G voltage varies by accelerometer model. There are constants defined for various models.
- Parameters:
zero
- The zero G voltage.
-
setPIDSourceType
public void setPIDSourceType(PIDSourceType pidSource)
Description copied from interface:PIDSource
Set which parameter of the device you are using as a process control variable.- Specified by:
setPIDSourceType
in interfacePIDSource
- Parameters:
pidSource
- An enum to select the parameter.
-
getPIDSourceType
public PIDSourceType getPIDSourceType()
Description copied from interface:PIDSource
Get which parameter of the device you are using as a process control variable.- Specified by:
getPIDSourceType
in interfacePIDSource
- Returns:
- the currently selected PID source parameter
-
pidGet
public double pidGet()
Get the Acceleration for the PID Source parent.
-
initSendable
public void initSendable(SendableBuilder builder)
Description copied from interface:Sendable
Initializes thisSendable
object.- Specified by:
initSendable
in interfaceSendable
- Parameters:
builder
- sendable builder
-
-