#include <triadObserver.h>
Inheritance diagram for triadObserver:
Public Member Functions | |
triadObserver () | |
Default Constructor. | |
triadObserver (TiXmlHandle handle, Whorl *ptr_whorl) | |
Create a triad observer from XML handle and whorl object. | |
virtual | ~triadObserver () |
DeConstructor for triadObserver object. | |
int | Initialize () |
Initialize triad observer. | |
int | Run () |
Take measurements and update state vector in whorl object. | |
void | Parse (TiXmlHandle handle) |
Parse inertial measurement vectors from configuration file. | |
Matrix | GetAttitude () |
Triad algorithm implementation (called from run function). | |
void | SetMagnetometerBodyVector (Vector _magnetometer) |
void | SetMagnetometerInertialVector (Vector _magnetometer) |
void | SetAccelerometerBodyVector (Vector _accelerometer) |
void | SetAccelerometerInertialVector (Vector _accelerometer) |
Vector | AccelerationCorrection (Vector _angularAcceleration, Vector _angularRates, Vector _accelerationMeasurement, Vector _vectorCM) |
Correction of the accelerometer reading, so that it reads acceleration due to gravity only. In order to do this we calculate the acceleration due to rotation from the rate gyros adn subtract from the acceleration measurement. | |
Private Attributes | |
Vector | m_magBody |
Vector | m_2magBodyPrevious |
Vector | m_accelBody |
Vector | m_ratesBody |
Whorl * | m_whorl |
Vector | m_magInertial |
Vector | m_accelInertial |
Vector | m_AngularAccel |
Vector | m_rsensor |
|
Default Constructor.
Definition at line 18 of file triadObserver.cpp. References Initialize(). |
|
Create a triad observer from XML handle and whorl object.
Definition at line 27 of file triadObserver.cpp. References Initialize(), m_whorl, and Parse(). |
|
DeConstructor for triadObserver object.
Definition at line 38 of file triadObserver.cpp. |
|
Correction of the accelerometer reading, so that it reads acceleration due to gravity only. In order to do this we calculate the acceleration due to rotation from the rate gyros adn subtract from the acceleration measurement.
Definition at line 34 of file Observer.cpp. References O_SESSAME::skew(), and O_SESSAME::Vector. Referenced by Run(). |
|
Triad algorithm implementation (called from run function).
Definition at line 166 of file triadObserver.cpp. References _, O_SESSAME::crossP(), m_accelBody, m_magBody, m_magInertial, O_SESSAME::Matrix, O_SESSAME::normalize(), and O_SESSAME::Vector. Referenced by QuaternionEKFObserver::GetInitialGuessTriad(), and Run(). |
|
Initialize triad observer.
Implements Observer. Definition at line 43 of file triadObserver.cpp. References CAMdoubleVector::initialize(), m_2magBodyPrevious, m_accelBody, m_accelInertial, m_AngularAccel, m_magBody, m_magInertial, m_ratesBody, and m_rsensor. Referenced by triadObserver(). |
|
Parse inertial measurement vectors from configuration file.
Definition at line 63 of file triadObserver.cpp. References checkResponse(), TiXmlHandle::Child(), TiXmlHandle::Element(), TiXmlHandle::FirstChild(), Whorl::GetSimulatorName(), m_accelInertial, m_magInertial, m_rsensor, m_whorl, and O_SESSAME::normalize(). Referenced by triadObserver(). |
|
Take measurements and update state vector in whorl object.
Implements Observer. Definition at line 104 of file triadObserver.cpp. References _, Observer::AccelerationCorrection(), Whorl::GetAccelerometer(), Measurement::GetAsDouble(), GetAttitude(), Whorl::GetMagnetometer(), Sensor::GetMeasurement(), O_SESSAME::DirectionCosineMatrix::GetQuaternion(), Whorl::GetRateGyro(), Magnetometer::GetVectorMeasurement(), m_2magBodyPrevious, m_accelBody, m_magBody, m_ratesBody, m_rsensor, m_whorl, O_SESSAME::norm2(), Whorl::SetState(), and O_SESSAME::Vector. |
|
Definition at line 219 of file triadObserver.cpp. References m_accelBody, and O_SESSAME::Vector. Referenced by QuaternionEKFObserver::GetInitialGuessTriad(). |
|
Definition at line 224 of file triadObserver.cpp. References m_accelInertial, and O_SESSAME::Vector. Referenced by QuaternionEKFObserver::GetInitialGuessTriad(). |
|
Definition at line 209 of file triadObserver.cpp. References m_magBody, and O_SESSAME::Vector. Referenced by QuaternionEKFObserver::GetInitialGuessTriad(). |
|
Definition at line 214 of file triadObserver.cpp. References m_magInertial, and O_SESSAME::Vector. Referenced by QuaternionEKFObserver::GetInitialGuessTriad(). |
|
Definition at line 66 of file triadObserver.h. Referenced by Initialize(), and Run(). |
|
Definition at line 68 of file triadObserver.h. Referenced by GetAttitude(), Initialize(), Run(), and SetAccelerometerBodyVector(). |
|
Definition at line 76 of file triadObserver.h. Referenced by Initialize(), Parse(), and SetAccelerometerInertialVector(). |
|
Definition at line 78 of file triadObserver.h. Referenced by Initialize(). |
|
Definition at line 64 of file triadObserver.h. Referenced by GetAttitude(), Initialize(), Run(), and SetMagnetometerBodyVector(). |
|
Definition at line 75 of file triadObserver.h. Referenced by GetAttitude(), Initialize(), Parse(), and SetMagnetometerInertialVector(). |
|
Definition at line 69 of file triadObserver.h. Referenced by Initialize(), and Run(). |
|
Definition at line 80 of file triadObserver.h. Referenced by Initialize(), Parse(), and Run(). |
|
Definition at line 72 of file triadObserver.h. Referenced by Parse(), Run(), and triadObserver(). |