184 bool tryUartComms(
const char* textToSend,
const char* errorPrefix,
201 float &pitch ,
float &roll,
202 float &temperature );
212 float &pitch ,
float &roll,
float &temperature );
215 static bool ParseHCXDR(
const char* response,
float &compassHeading,
216 float &pitch ,
float &roll,
float &temperature );
239 bool readMagnetics(
float &mX,
float &mY ,
float &mZ,
float &mT );
242 static bool ParsePSPAM(
const char* response,
float &mX,
float &mY ,
float &mZ,
float &mT );
249 bool readAccelVec(
float &aX,
float &aY ,
float &aZ,
float &aT );
252 static bool ParsePSPAA(
const char* response,
float &aX,
float &aY ,
float &aZ,
float &aT );
259 static bool ParseMagErr(
const char* response,
int& magErr );
virtual RunState resume()
Resume from PAUSE.
Definition: AHRS_sp3003D.cpp:988
UniversalDataReader * latitudeReader_
Definition: AHRS_sp3003D.h:116
Contains a 3x3 array of double precision floating point numbers, along with methods for performing co...
Definition: Matrix3x3.h:27
bool calibrationFailure_
If true, bail out of calibration mode and restart.
Definition: AHRS_sp3003D.h:113
Contains the SyncComponent class definition.
UniversalDataReader * depthReader_
Definition: AHRS_sp3003D.h:118
int readAccelerationsCfg_
Definition: AHRS_sp3003D.h:171
Contains the LoadControl class declaration.
A DataAccessor that reads values from the Slate Contains a default dataValue that must not be NULL...
Definition: UniversalDataReader.h:26
static int CalcNMEAChecksum(const char *response)
Definition: AHRS_sp3003D.cpp:739
bool readTransducers(float &compassHeading, float &pitch, float &roll, float &temperature)
Definition: AHRS_sp3003D.cpp:442
void readConfig()
Definition: AHRS_sp3003D.cpp:108
DataWriter * mtWriter_
Definition: AHRS_sp3003D.h:126
virtual RunState paused()
Should eventually follow a PAUSE request: should set continueTime.
Definition: AHRS_sp3003D.cpp:977
CalibrateSpartonMode calMode_
The current mode the behavior is in.
Definition: AHRS_sp3003D.h:110
virtual ConfigURI getConfigURI(ConfigOption configOption) const
Should return [myNamespace]::SIMULATE_HARDWARE, or [myNamespace]::POWER, etc.
Definition: AHRS_sp3003D.cpp:1289
Abstract Base class for components that collect data for use later in the computation cycle...
Definition: SyncComponent.h:172
DataWriter * mzWriter_
Definition: AHRS_sp3003D.h:125
static bool ParseMagErr(const char *response, int &magErr)
Definition: AHRS_sp3003D.cpp:725
bool readHeadingMagBin(float &compassHeading)
Definition: AHRS_sp3003D.cpp:504
DataWriter * compassTemperatureWriter_
Definition: AHRS_sp3003D.h:122
static bool ParseHCXDR(const char *response, float &compassHeading, float &pitch, float &roll, float &temperature)
Definition: AHRS_sp3003D.cpp:678
float rollOffset_
Definition: AHRS_sp3003D.h:167
void setMountVertical()
Definition: AHRS_sp3003D.cpp:1304
bool usingSimWarned_
Definition: AHRS_sp3003D.h:157
ConfigReader * readAccelerationsCfgReader_
Definition: AHRS_sp3003D.h:138
A DataAccessor that writes values to the Slate via its associated DataElement.
Definition: UniversalDataWriter.h:24
virtual RunState runnable()
Should eventually follow a START request or RESETTING.
Definition: AHRS_sp3003D.cpp:1025
RunState
Definition: Component.h:115
Definition: AHRS_sp3003D.h:86
virtual ~AHRS_sp3003D()
Definition: AHRS_sp3003D.cpp:99
Contains the UartStream class declaration.
void requestTransducers()
Definition: AHRS_sp3003D.cpp:412
virtual RunState resetting()
Might occur in case of Error.
Definition: AHRS_sp3003D.h:69
DataWriter * axWriter_
Definition: AHRS_sp3003D.h:127
Timespan class, represents a delta of time.
Definition: Timestamp.h:248
virtual RunState stopped()
Initial state – can be later followed by START.
Definition: AHRS_sp3003D.cpp:1250
bool readMagnetics(float &mX, float &mY, float &mZ, float &mT)
Definition: AHRS_sp3003D.cpp:566
DataWriter * mxWriter_
Definition: AHRS_sp3003D.h:123
void requestHeadingMagBin()
Definition: AHRS_sp3003D.cpp:458
Implements both InStream and OutStream for the LPC3XXX Standard UART.
Definition: UartStream.h:26
DataWriter * compassHeadingWriter_
Definition: AHRS_sp3003D.h:121
bool receiveTransducers(float &compassHeading, float &pitch, float &roll, float &temperature)
Definition: AHRS_sp3003D.cpp:421
bool readAccelVecBin(float &aX, float &aY, float &aZ, float &aT)
Definition: AHRS_sp3003D.cpp:641
char deviceResponse_[96]
Definition: AHRS_sp3003D.h:176
A DataAccessor that writes values to the Slate via its associated DataElement.
Definition: DataWriter.h:27
UniversalDataWriter * magneticHeadingWriter_
Definition: AHRS_sp3003D.h:132
Definition: ElementURI.h:166
UniversalDataWriter * pitchWriter_
Definition: AHRS_sp3003D.h:134
float magVariation_
Definition: AHRS_sp3003D.h:163
Definition: AHRS_sp3003D.h:87
float pitchOffset_
Offset for mounting. In degrees.
Definition: AHRS_sp3003D.h:166
bool isDataRequested()
Definition: AHRS_sp3003D.cpp:1274
DataWriter * atWriter_
Definition: AHRS_sp3003D.h:130
bool readAccelVec(float &aX, float &aY, float &aZ, float &aT)
Definition: AHRS_sp3003D.cpp:624
bool setCalMode(CalibrateSpartonMode calMode)
Sets the state and commands the Sparton Retuns true if successful.
Definition: AHRS_sp3003D.cpp:766
static bool SetCalMode(CalibrateSpartonMode calMode)
Sets the state and commands the Sparton Retuns true if successful.
Definition: AHRS_sp3003D.cpp:133
void getPitchRoll(float &pitch, float &roll)
Definition: AHRS_sp3003D.cpp:330
UniversalDataReader * longitudeReader_
Definition: AHRS_sp3003D.h:117
Timestamp startTime_
Definition: AHRS_sp3003D.h:170
Definition: AHRS_sp3003D.h:88
Module is the abstract base class for a collection of Component objects that can be contained in a lo...
Definition: Module.h:45
bool readPitchRollBin(float &pitch, float &roll)
Definition: AHRS_sp3003D.cpp:560
ConfigReader * magDeviationCfgReader_
Definition: AHRS_sp3003D.h:141
float getCompassHdg()
Definition: AHRS_sp3003D.cpp:165
virtual RunState pause()
Pause for a short period (indicated by pauseTime)
Definition: AHRS_sp3003D.cpp:959
bool configSet_
Definition: AHRS_sp3003D.h:150
This class allows one to control loads on a load controller channel.
Definition: LoadControl.h:24
CalibrateSpartonMode
Definition: AHRS_sp3003D.h:84
void setWritersInvalid(bool invalid)
Sets the fail state of the slate writers during calibration.
Definition: AHRS_sp3003D.cpp:757
virtual void uninitialize()
Provide a space for uninitialization.
Definition: AHRS_sp3003D.cpp:118
float magDeviation_
Deviation of this compass in the vehicle.
Definition: AHRS_sp3003D.h:162
virtual RunState start()
Do what needs to be done to run Similar to initialize, in old init/run/uninit sequence.
Definition: AHRS_sp3003D.cpp:858
DataWriter * ayWriter_
Definition: AHRS_sp3003D.h:128
DataWriter * azWriter_
Definition: AHRS_sp3003D.h:129
Definition: UniversalDataWriter.h:55
Definition: ConfigReader.h:13
ConfigReader * readMountingCfgReader_
Definition: AHRS_sp3003D.h:140
static AHRS_sp3003D * Instance_
Pointer to the singleton-like instance of this component.
Definition: AHRS_sp3003D.h:107
Contains the Logger class definition.
Contains the Matrix3x3 class definition.
ConfigReader * rollOffsetCfgReader_
Definition: AHRS_sp3003D.h:143
Definition: AHRS_sp3003D.h:89
bool tryUartComms(const char *textToSend, const char *errorPrefix, Syslog::Severity severity=Syslog::ERROR)
Definition: AHRS_sp3003D.cpp:142
static bool ParsePSPAA(const char *response, float &aX, float &aY, float &aZ, float &aT)
Definition: AHRS_sp3003D.cpp:712
virtual void run()
The actual "payload" of the component.
Definition: AHRS_sp3003D.cpp:104
Provides software interface to the Sparton SP3003D AHRS.
Definition: AHRS_sp3003D.h:36
Severity
An attempt to define different levels of syslog severity.
Definition: Syslog.h:28
short extractShort(char *convertFloat)
Definition: AHRS_sp3003D.cpp:1311
AHRS_sp3003D(const Module *module)
Definition: AHRS_sp3003D.cpp:35
UniversalDataWriter * rollWriter_
Definition: AHRS_sp3003D.h:135
int readMagneticsCfg_
Definition: AHRS_sp3003D.h:172
int readMountingCfg_
Definition: AHRS_sp3003D.h:173
bool receiveHeadingMagBin(float &compassHeading)
Definition: AHRS_sp3003D.cpp:470
void requestPitchRollBin()
Definition: AHRS_sp3003D.cpp:510
ConfigReader * readMagneticsCfgReader_
Definition: AHRS_sp3003D.h:139
int verbosity_
Definition: AHRS_sp3003D.h:151
bool debug_
Definition: AHRS_sp3003D.h:149
ConfigOption
Definition: Component.h:456
virtual RunState stop()
Initial state – can be later followed by START.
Definition: AHRS_sp3003D.cpp:1220
ConfigReader * pitchOffsetCfgReader_
Definition: AHRS_sp3003D.h:142
bool readMagneticsBin(float &mX, float &mY, float &mZ)
Definition: AHRS_sp3003D.cpp:580
virtual RunState stopping()
Might follow a STOP request.
Definition: AHRS_sp3003D.cpp:1229
Timestamp dataTimestamp_
Definition: AHRS_sp3003D.h:170
Definition: AHRS_sp3003D.h:90
Timespan poTimeout_
Definition: AHRS_sp3003D.h:169
bool receivePitchRollBin(float &pitch, float &roll)
Definition: AHRS_sp3003D.cpp:521
UartStream uart_
Definition: AHRS_sp3003D.h:179
DataWriter * myWriter_
Definition: AHRS_sp3003D.h:124
virtual RunState resuming()
Might follow a PAUSE...RESUME sequence.
Definition: AHRS_sp3003D.cpp:1013
LoadControl loadControl_
Definition: AHRS_sp3003D.h:154
static bool ParsePSPAM(const char *response, float &mX, float &mY, float &mZ, float &mT)
Definition: AHRS_sp3003D.cpp:698
virtual RunState starting()
Might follow a STOP...START sequence.
Definition: AHRS_sp3003D.cpp:893
UniversalDataWriter * trueHeadingWriter_
Definition: AHRS_sp3003D.h:133
float getTrueHdg()
Definition: AHRS_sp3003D.cpp:248
Represents absolute times.
Definition: Timestamp.h:31
UniversalBlobWriter * rotationMatrixWriter_
Definition: AHRS_sp3003D.h:136
Matrix3x3 rotationFromVehicleToNavigationFrame_
Definition: AHRS_sp3003D.h:181