#include <Whorl.h>
Collaboration diagram for Whorl:
Public Types | |
enum | StringValue { OFF, ON, molpe, hierax, sphigx } |
Value-Definitions of the different string values. More... | |
Public Member Functions | |
Whorl () | |
virtual | ~Whorl () |
void | Initialize (TiXmlHandle tempHandle) |
Whorl object initialization. | |
Vector | GetParameter () |
Get the recent parameter estimate, a Vector w = [I11, I12, I13, I22, I23, I33, mg r1, mg r2, mg r3, c1, c2, c3]. | |
Matrix | GetMOI () |
Get the recent Moment of Inertia matrix in body design axes. | |
Vector | GetCGVector () |
Get the recent center of gravity vector, mg*r. | |
Vector | GetState () |
Get the recent state estimate, a Vector of qbl and ![]() | |
Vector | GetQuaternion () |
Get the recent attitude estimate, qbl. | |
Vector | GetMRP () |
Get the recent attitude estimate, mrp. | |
Vector | GetOmegaBL () |
Get the recent angular velocity estimate, ![]() | |
Vector | GetReferenceQuaternion () |
Get the recent Reference attitude estimate, qbl. | |
Vector | GetReferenceMRP () |
Get the recent Reference attitude estimate, mrp. | |
Vector | GetReferenceOmegaBL () |
Get the recent Reference angular velocity estimate, ![]() | |
Vector | GetControl () |
Get the recent control Vector. | |
Vector | GetControlError () |
Get the recent control error Vector. | |
timeval | GetTimeOfEstimate () |
Get the time of the current estimate. | |
void | SetState (Vector &_updatedState) |
Update the recent state Vector. | |
void | SetParameter (Vector &_updatedParameter) |
Update the recent parameter Vector. | |
void | SetControl (Vector &_updatedControl) |
Update the recent control Vector. | |
void | SetMRPError (Vector _mrpError) |
void | SetAngularRateError (Vector _rateError) |
void | SetReferenceQuaternion (Vector _quaternion) |
void | SetReferenceOmegaBL (Vector _rate) |
void | SetTimeOfEstimate (timeval _t) |
Sets the time of the current estimate. | |
RateGyro * | GetRateGyro (string rgName) |
Hardware accessor functions. | |
Accelerometer * | GetAccelerometer (string accName) |
MomentumWheel * | GetMomentumWheel (string mwName) |
Magnetometer * | GetMagnetometer () |
char * | GetSimulatorName () |
Get Simulator Name. | |
string | GetHardwareFlag () |
Get the hardware flag that informs the user whether the hardware is activated. | |
void | SetECI (Vector _ECI) |
void | SetCOE (Keplerian _COE) |
void | SetOscCOE (Keplerian _OscCOE) |
Vector | GetECI () |
Keplerian | GetCOE () |
Keplerian | GetOscCOE () |
void | SetOrbitControl (Vector _control) |
Vector | GetOrbitControl () |
Public Attributes | |
map< string, StringValue > | s_mapStringValues |
Map to associate the strings with the enum values. | |
Private Attributes | |
char * | m_SimulatorName |
string | m_HardwareONOFF |
stringstream | m_WheelOptionString |
Vector | m_recentState |
The most recently estimated state Vector, stored as quaternions (qbl) and angular velocities ($f$f). | |
Vector | m_referenceState |
Vector | m_recentParameter |
The most recently estimated parameter Vector in the body-design frame, w = [I11, I12, I13, I22, I23, I33, mg r1, mg r2, mg r3, c1, c2, c3]. | |
Vector | m_recentControl |
The most recently applied control Vector. | |
timeval | m_estimateTime |
The time of the current estimate. | |
Vector | m_controlError |
map< string, RateGyro * > | m_rateGyros |
Hardware maps. | |
map< string, Accelerometer * > | m_accelerometers |
map< string, MomentumWheel * > | m_momentumWheels |
Magnetometer * | m_magnetometer |
Vector | m_ECI |
Keplerian | m_COE |
Keplerian | m_OscCOE |
Vector | m_OrbitControl |
|
Value-Definitions of the different string values.
|
|
|
|
Definition at line 17 of file Whorl.cpp. References m_accelerometers, m_momentumWheels, m_rateGyros, m_WheelOptionString, OFF, ON, and s_mapStringValues. |
|
Gets a pointer to a specific rate gyro Definition at line 118 of file Whorl.h. Referenced by QuaternionEKFObserver::GetCurrentMeasurements(), main(), triadObserver::Run(), and atterrbiasObserver::Run(). |
|
Get the recent center of gravity vector, mg*r. This function extracts the 3-term center of gravity Vector from the parameter Vector and returns it. This information is returned in whatever reference frame the data is initially provided in (in the config file). Generally, this will be the body-design reference frame. Definition at line 257 of file Whorl.cpp. References m_recentParameter, and O_SESSAME::Vector. |
|
Definition at line 415 of file Whorl.cpp. Referenced by COENaaszController::Initialize(), testOrbitController::Run(), and COENaaszController::Run(). |
|
Get the recent control Vector.
Definition at line 84 of file Whorl.h. References O_SESSAME::Vector. Referenced by main(), DefaultObserver::Run(), and AttitudeObserver::Run(). |
|
Get the recent control error Vector.
Definition at line 370 of file Whorl.cpp. References O_SESSAME::Vector. Referenced by main(). |
|
Definition at line 410 of file Whorl.cpp. References O_SESSAME::Vector. Referenced by COENaaszController::Initialize(), and COENaaszController::Run(). |
|
Get the hardware flag that informs the user whether the hardware is activated.
Definition at line 225 of file Whorl.cpp. Referenced by WhorlSim::Initialize(), and WhorlSim::~WhorlSim(). |
|
Gets a pointer to the magnetometer Definition at line 124 of file Whorl.h. Referenced by QuaternionEKFObserver::GetCurrentMeasurements(), main(), and triadObserver::Run(). |
|
Get the recent Moment of Inertia matrix in body design axes. This function extracts the 6 moment of inertia elements from the parameter Vector, then builds and returns that matrix. This information is returned in whatever reference frame the data is initially provided in (in the config file). Generally, this will be the body-design reference frame. Definition at line 238 of file Whorl.cpp. References m_recentParameter, and O_SESSAME::Matrix. Referenced by slidingModeControlMRPMW::Initialize(), MRPTracking::Initialize(), DefaultController::Initialize(), AngularRateController::Initialize(), Controller::ReferenceModelSC(), Controller::ReferenceTrajectory(), slidingModeControlMRPMW::Run(), MWCMGController::Run(), MRPTracking::Run(), and AngularRateController::Run(). |
|
Gets a pointer to a specific momentum wheel Definition at line 121 of file Whorl.h. Referenced by Controller::FindA(), Controller::FindMOI_sw(), main(), testController::Run(), slidingModeControlMRPMW::Run(), MWCMGController::Run(), MRPTracking::Run(), DefaultController::Run(), AngularRateController::Run(), and Controller::SetWheelTorque(). |
|
Get the recent attitude estimate, mrp. This function pulls the MRP vector out of the most recent state Vector by calling the GetQuaternion function and converting to MRP vector. This information is returned in whatever reference frame the data is initially provided in (in the config file). Generally, this will be the body-design reference frame. Definition at line 291 of file Whorl.cpp. References _, m_recentState, O_SESSAME::ModifiedRodriguezParameters::Switch(), and O_SESSAME::Vector. Referenced by main(), slidingModeControlMRPMW::Run(), MRPTracking::Run(), and AngularRateController::Run(). |
|
Get the recent angular velocity estimate, This function pulls the angular velocity out of the most recent state Vector. This information is returned in whatever reference frame the data is initially provided in (in the config file). Generally, this will be the body-design reference frame. Definition at line 308 of file Whorl.cpp. References _, m_recentState, and O_SESSAME::Vector. Referenced by slidingModeControlMRPMW::Run(), MWCMGController::Run(), MRPTracking::Run(), DefaultObserver::Run(), DefaultController::Run(), AttitudeObserver::Run(), and AngularRateController::Run(). |
|
Definition at line 430 of file Whorl.cpp. References O_SESSAME::Vector. |
|
|
|
Get the recent parameter estimate, a Vector w = [I11, I12, I13, I22, I23, I33, mg r1, mg r2, mg r3, c1, c2, c3].
Definition at line 54 of file Whorl.h. References O_SESSAME::Vector. Referenced by DefaultObserver::Run(), and AttitudeObserver::Run(). |
|
Get the recent attitude estimate, qbl. This function pulls the quaternion out of the most recent state Vector. This information is returned in whatever reference frame the data is initially provided in (in the config file). Generally, this will be the body-design reference frame. Definition at line 275 of file Whorl.cpp. References _, m_recentState, and O_SESSAME::Vector. Referenced by MWCMGController::Run(), and AttitudeObserver::Run(). |
|
Hardware accessor functions. Gets a pointer to a specific rate gyro Definition at line 115 of file Whorl.h. Referenced by QuaternionEKFObserver::GetCurrentMeasurements(), AttitudeObserver::Initialize(), main(), triadObserver::Run(), DefaultObserver::Run(), AttitudeObserver::Run(), and atterrbiasObserver::Run(). |
|
Get the recent Reference attitude estimate, mrp. This function pulls the MRP vector out of the most recent reference state Vector by calling the GetQuaternion function and converting to MRP vector. This information is returned in whatever reference frame the data is initially provided in (in the config file). Generally, this will be the body-design reference frame. Definition at line 345 of file Whorl.cpp. References GetReferenceQuaternion(), O_SESSAME::ModifiedRodriguezParameters::Switch(), and O_SESSAME::Vector. Referenced by main(). |
|
Get the recent Reference angular velocity estimate, This function pulls the angular velocity out of the most recent Reference state Vector. This information is returned in whatever reference frame the data is initially provided in (in the config file). Generally, this will be the body-design reference frame. Definition at line 362 of file Whorl.cpp. References _, m_referenceState, and O_SESSAME::Vector. Referenced by main(). |
|
Get the recent Reference attitude estimate, qbl. This function pulls the quaternion out of the most recent reference state Vector. This information is returned in whatever reference frame the data is initially provided in (in the config file). Generally, this will be the body-design reference frame. Definition at line 329 of file Whorl.cpp. References _, m_referenceState, and O_SESSAME::Vector. Referenced by GetReferenceMRP(), and main(). |
|
Get Simulator Name.
Definition at line 316 of file Whorl.cpp. Referenced by triadObserver::Parse(), QuaternionEKFObserver::Parse(), WhorlSim::SetController(), WhorlSim::SetObserver(), WhorlSim::SetOrbitController(), and WhorlSim::SetOrbitObserver(). |
|
Get the recent state estimate, a Vector of qbl and
Definition at line 63 of file Whorl.h. References O_SESSAME::Vector. Referenced by main(), SingleAxisController::Run(), and atterrbiasObserver::Run(). |
|
Get the time of the current estimate.
Definition at line 90 of file Whorl.h. Referenced by DefaultObserver::Run(), AttitudeObserver::Run(), and atterrbiasObserver::Run(). |
|
Whorl object initialization.
Definition at line 79 of file Whorl.cpp. References _, checkResponse(), TiXmlHandle::Child(), TiXmlHandle::Element(), TiXmlHandle::FirstChild(), hierax, CAMdoubleVector::initialize(), m_accelerometers, m_controlError, m_ECI, m_HardwareONOFF, m_magnetometer, m_momentumWheels, m_rateGyros, m_recentControl, m_recentParameter, m_recentState, m_referenceState, m_SimulatorName, m_WheelOptionString, O_SESSAME::Matrix, molpe, OFF, ON, s_mapStringValues, simulatorInertia(), O_SESSAME::Vector, and O_SESSAME::VectorIndexBase. Referenced by main(). |
|
Definition at line 380 of file Whorl.cpp. References _, m_controlError, and O_SESSAME::Vector. Referenced by testController::Run(), slidingModeControlMRPMW::Run(), MRPTracking::Run(), DefaultController::Run(), and AngularRateController::Run(). |
|
Definition at line 400 of file Whorl.cpp. References m_COE. Referenced by OrbitPropObserver::Run(), and GPSObserver::Run(). |
|
Update the recent control Vector.
Definition at line 99 of file Whorl.h. References O_SESSAME::Vector. Referenced by main(), testController::Run(), slidingModeControlMRPMW::Run(), SingleAxisController::Run(), OpenLoopMWController::Run(), MWCMGController::Run(), MRPTracking::Run(), DefaultController::Run(), and AngularRateController::Run(). |
|
Definition at line 395 of file Whorl.cpp. References m_ECI, and O_SESSAME::Vector. Referenced by OrbitPropObserver::Run(), and GPSObserver::Run(). |
|
Definition at line 375 of file Whorl.cpp. References _, m_controlError, and O_SESSAME::Vector. Referenced by testController::Run(), slidingModeControlMRPMW::Run(), MRPTracking::Run(), DefaultController::Run(), and AngularRateController::Run(). |
|
Definition at line 425 of file Whorl.cpp. References m_OrbitControl, and O_SESSAME::Vector. Referenced by testOrbitController::Run(), and COENaaszController::Run(). |
|
Definition at line 405 of file Whorl.cpp. References m_OscCOE. Referenced by OrbitPropObserver::Run(), and GPSObserver::Run(). |
|
Update the recent parameter Vector.
Definition at line 96 of file Whorl.h. References O_SESSAME::Vector. Referenced by main(). |
|
Definition at line 390 of file Whorl.cpp. References _, m_referenceState, and O_SESSAME::Vector. Referenced by testController::Run(), slidingModeControlMRPMW::Run(), MRPTracking::Run(), DefaultController::Run(), and AngularRateController::Run(). |
|
Definition at line 385 of file Whorl.cpp. References _, m_referenceState, and O_SESSAME::Vector. Referenced by testController::Run(), slidingModeControlMRPMW::Run(), MRPTracking::Run(), DefaultController::Run(), and AngularRateController::Run(). |
|
Update the recent state Vector.
Definition at line 93 of file Whorl.h. References O_SESSAME::Vector. Referenced by main(), triadObserver::Run(), QuaternionEKFObserver::Run(), DefaultObserver::Run(), AttitudeObserver::Run(), and atterrbiasObserver::Run(). |
|
Sets the time of the current estimate.
Definition at line 110 of file Whorl.h. Referenced by main(), DefaultObserver::Run(), AttitudeObserver::Run(), and atterrbiasObserver::Run(). |
|
Definition at line 188 of file Whorl.h. Referenced by Initialize(), and ~Whorl(). |
|
Definition at line 195 of file Whorl.h. Referenced by SetCOE(). |
|
Definition at line 184 of file Whorl.h. Referenced by Initialize(), SetAngularRateError(), and SetMRPError(). |
|
Definition at line 194 of file Whorl.h. Referenced by Initialize(), and SetECI(). |
|
The time of the current estimate.
|
|
Definition at line 172 of file Whorl.h. Referenced by Initialize(). |
|
Definition at line 191 of file Whorl.h. Referenced by Initialize(). |
|
Definition at line 189 of file Whorl.h. Referenced by Initialize(), and ~Whorl(). |
|
Definition at line 199 of file Whorl.h. Referenced by SetOrbitControl(). |
|
Definition at line 196 of file Whorl.h. Referenced by SetOscCOE(). |
|
Hardware maps.
Definition at line 187 of file Whorl.h. Referenced by Initialize(), and ~Whorl(). |
|
The most recently applied control Vector.
Definition at line 181 of file Whorl.h. Referenced by Initialize(). |
|
The most recently estimated parameter Vector in the body-design frame, w = [I11, I12, I13, I22, I23, I33, mg r1, mg r2, mg r3, c1, c2, c3].
Definition at line 180 of file Whorl.h. Referenced by GetCGVector(), GetMOI(), and Initialize(). |
|
The most recently estimated state Vector, stored as quaternions (qbl) and angular velocities ($f$f).
Definition at line 178 of file Whorl.h. Referenced by GetMRP(), GetOmegaBL(), GetQuaternion(), and Initialize(). |
|
Definition at line 179 of file Whorl.h. Referenced by GetReferenceOmegaBL(), GetReferenceQuaternion(), Initialize(), SetReferenceOmegaBL(), and SetReferenceQuaternion(). |
|
Definition at line 170 of file Whorl.h. Referenced by Initialize(). |
|
Definition at line 175 of file Whorl.h. Referenced by Initialize(), and ~Whorl(). |
|
Map to associate the strings with the enum values.
Definition at line 134 of file Whorl.h. Referenced by Initialize(), and ~Whorl(). |