#include <Accelerometer.h>
Public Member Functions | |
Accelerometer (uint32_t channel) | |
Accelerometer (uint8_t moduleNumber, uint32_t channel) | |
Accelerometer (AnalogChannel *channel) | |
virtual | ~Accelerometer () |
float | GetAcceleration () |
void | SetSensitivity (float sensitivity) |
void | SetZero (float zero) |
double | PIDGet () |
void | UpdateTable () |
void | StartLiveWindowMode () |
void | StopLiveWindowMode () |
std::string | GetSmartDashboardType () |
void | InitTable (ITable *subTable) |
ITable * | GetTable () |
Public Member Functions inherited from SensorBase | |
SensorBase () | |
virtual | ~SensorBase () |
Public Member Functions inherited from ErrorBase | |
virtual Error & | GetError () |
Retrieve the current error. Get the current error information associated with this sensor. | |
virtual const Error & | GetError () const |
virtual void | SetErrnoError (const char *contextMessage, const char *filename, const char *function, uint32_t lineNumber) const |
Set error information associated with a C library call that set an error to the "errno" global variable. More... | |
virtual void | SetImaqError (int success, const char *contextMessage, const char *filename, const char *function, uint32_t lineNumber) const |
Set the current error information associated from the nivision Imaq API. More... | |
virtual void | SetError (Error::Code code, const char *contextMessage, const char *filename, const char *function, uint32_t lineNumber) const |
Set the current error information associated with this sensor. More... | |
virtual void | SetWPIError (const char *errorMessage, const char *contextMessage, const char *filename, const char *function, uint32_t lineNumber) const |
Set the current error information associated with this sensor. More... | |
virtual void | CloneError (ErrorBase *rhs) const |
virtual void | ClearError () const |
Clear the current error information associated with this sensor. | |
virtual bool | StatusIsFatal () const |
Check if the current error code represents a fatal error. More... | |
Additional Inherited Members | |
Public Types inherited from PIDSource | |
enum | PIDSourceParameter { kDistance, kRate, kAngle } |
Static Public Member Functions inherited from SensorBase | |
static void | DeleteSingletons () |
static uint32_t | GetDefaultAnalogModule () |
static uint32_t | GetDefaultDigitalModule () |
static uint32_t | GetDefaultSolenoidModule () |
static bool | CheckAnalogModule (uint8_t moduleNumber) |
static bool | CheckDigitalModule (uint8_t moduleNumber) |
static bool | CheckPWMModule (uint8_t moduleNumber) |
static bool | CheckRelayModule (uint8_t moduleNumber) |
static bool | CheckSolenoidModule (uint8_t moduleNumber) |
static bool | CheckDigitalChannel (uint32_t channel) |
static bool | CheckRelayChannel (uint32_t channel) |
static bool | CheckPWMChannel (uint32_t channel) |
static bool | CheckAnalogChannel (uint32_t channel) |
static bool | CheckSolenoidChannel (uint32_t channel) |
Static Public Member Functions inherited from ErrorBase | |
static void | SetGlobalError (Error::Code code, const char *contextMessage, const char *filename, const char *function, uint32_t lineNumber) |
static void | SetGlobalWPIError (const char *errorMessage, const char *contextMessage, const char *filename, const char *function, uint32_t lineNumber) |
static Error & | GetGlobalError () |
Static Public Attributes inherited from SensorBase | |
static const uint32_t | kSystemClockTicksPerMicrosecond = 40 |
static const uint32_t | kDigitalChannels = 14 |
static const uint32_t | kAnalogChannels = 8 |
static const uint32_t | kAnalogModules = 2 |
static const uint32_t | kDigitalModules = 2 |
static const uint32_t | kSolenoidChannels = 8 |
static const uint32_t | kSolenoidModules = 2 |
static const uint32_t | kPwmChannels = 10 |
static const uint32_t | kRelayChannels = 8 |
static const uint32_t | kChassisSlots = 8 |
Protected Member Functions inherited from SensorBase | |
void | AddToSingletonList () |
Protected Member Functions inherited from ErrorBase | |
ErrorBase () | |
Initialize the instance status to 0 for now. | |
Protected Attributes inherited from ErrorBase | |
Error | m_error |
Static Protected Attributes inherited from ErrorBase | |
static SEM_ID | _globalErrorMutex = semMCreate(SEM_Q_PRIORITY | SEM_DELETE_SAFE | SEM_INVERSION_SAFE) |
static Error | _globalError |
Handle operation of the 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.
Definition at line 21 of file Accelerometer.h.
|
explicit |
Create a new instance of an accelerometer.
The accelerometer is assumed to be in the first analog module in the given analog channel. The constructor allocates desired analog channel.
Definition at line 31 of file Accelerometer.cpp.
Accelerometer::Accelerometer | ( | uint8_t | moduleNumber, |
uint32_t | channel | ||
) |
Create new instance of accelerometer.
Make a new instance of the accelerometer given a module and channel. The constructor allocates the desired analog channel from the specified module
moduleNumber | The analog module (1 or 2). |
channel | The analog channel (1..8) |
Definition at line 47 of file Accelerometer.cpp.
|
explicit |
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.
Definition at line 60 of file Accelerometer.cpp.
|
virtual |
Delete the analog components used for the accelerometer.
Definition at line 77 of file Accelerometer.cpp.
float Accelerometer::GetAcceleration | ( | ) |
Return the acceleration in Gs.
The acceleration is returned units of Gs.
Definition at line 92 of file Accelerometer.cpp.
|
virtual |
Implements Sendable.
Definition at line 144 of file Accelerometer.cpp.
|
virtual |
Implements Sendable.
Definition at line 153 of file Accelerometer.cpp.
|
virtual |
Initializes a table for this sendable object.
subtable | The table to put the values in. |
Implements Sendable.
Definition at line 148 of file Accelerometer.cpp.
|
virtual |
Get the Acceleration for the PID Source parent.
Implements PIDSource.
Definition at line 127 of file Accelerometer.cpp.
void Accelerometer::SetSensitivity | ( | float | sensitivity | ) |
Set the accelerometer sensitivity.
This sets the sensitivity of the accelerometer used for calculating the acceleration. The sensitivity varys by accelerometer model. There are constants defined for various models.
sensitivity | The sensitivity of accelerometer in Volts per G. |
Definition at line 105 of file Accelerometer.cpp.
void Accelerometer::SetZero | ( | float | zero | ) |
Set the voltage that corresponds to 0 G.
The zero G voltage varys by accelerometer model. There are constants defined for various models.
zero | The zero G voltage. |
Definition at line 117 of file Accelerometer.cpp.
|
virtual |
Start having this sendable object automatically respond to value changes reflect the value on the table.
Implements LiveWindowSendable.
Definition at line 138 of file Accelerometer.cpp.
|
virtual |
Stop having this sendable object automatically respond to value changes.
Implements LiveWindowSendable.
Definition at line 141 of file Accelerometer.cpp.
|
virtual |
Update the table for this sendable object with the latest values.
Implements LiveWindowSendable.
Definition at line 132 of file Accelerometer.cpp.