#include <slidingModeControlMRPMW.h>
Inheritance diagram for slidingModeControlMRPMW:
Public Member Functions | |
slidingModeControlMRPMW () | |
Constructors. | |
slidingModeControlMRPMW (Whorl *ptr_whorl) | |
~slidingModeControlMRPMW () | |
Destructor. | |
int | Run () |
Runs the default controller. | |
int | Initialize () |
Initializes the default controller. | |
int | SetWheelTorque (Vector ControlTorque) |
Mutators Set the torque produced by the momentum wheels. | |
int | SetThrusterTorque (char Thruster_set, int Number_of_Pulses, double Pulse_length) |
Sets the torque produced by the thrusters. | |
Matrix | FindA () |
Facilitators Determines the A matrix for the momentum wheels. | |
Matrix | FindMOI_sw () |
Determines the MOI of the momentum wheels. | |
void | ReferenceModelSC (ssfTime deltaTime) |
Create a spacecraft reference model based on the quaternion kinematic equation and Euler Rotational Equation of Motion. The quaternion and angular rates are numerically integrated. | |
void | ReferenceTrajectory (ssfTime deltaTime) |
Vector | Saturation (Vector _s, Vector _phi) |
Vector | Sign (Vector _s) |
double | SignSingle (double _s) |
Vector | WheelSaturation (Vector _u) |
Actuator Saturation function for the reaction wheels. Max toruqe is set with m_uMax. | |
Protected Attributes | |
Matrix | m_gainMRPRate |
Member matrix value that is the angular rate Gain Matrix for the tracking control law. | |
Matrix | m_gainMRPError |
double | m_mrpGain |
Member scalar value that is the MRP Gain for the tracking control law. | |
double | m_previousTime |
Member scalar value that keeps track of the previous time. Needed by reference model. | |
Vector | m_controlTorque |
Member value that is the control torque vector determined from control law. | |
Matrix | m_estimateInertiaInv |
double | m_normEstimateInertiaInv |
double | m_normEstimateInertia |
Matrix | m_estimateB |
Matrix | m_estimateBinv |
Vector | m_phi |
Vector | m_eta |
double | m_torqueMax |
Matrix | m_D_I |
double | m_normD_I |
Matrix | m_D_w |
Matrix | m_D_wprime |
Matrix | m_D_B |
double | m_normD_B |
Matrix | m_D_D |
double | m_normD_D |
Whorl * | m_whorl |
Member object in Controller Class. | |
Matrix | A |
Member matrix in Controller Class that provides the orientation of the momentum wheels. | |
Matrix | MOI_sw |
Member matrix in Controller Class that is a diagonal matrix with the MOI of the momentum wheels as its memebers. | |
Vector | m_angularRateReference |
Member vector in Controller Class that is the angular rates of the reference model. | |
Vector | m_angularAccelReference |
Member vector in Controller Class that is the angular acceleration of the reference model. | |
Vector | m_quaternionReference |
Member vector in Controller Class that is the quaternion of the reference model. | |
Vector | m_mrpReference |
Member vector in Controller Class that is the MRP's of the reference model. | |
double | m_uMax |
Member double in Controller Class that is the max wheel control torque. |
|
Constructors. /brief Constructor for slidingModeControlMRPMW Definition at line 18 of file slidingModeControlMRPMW.cpp. |
|
/brief Constructor for slidingModeControlMRPMW
Definition at line 26 of file slidingModeControlMRPMW.cpp. References Initialize(). |
|
Destructor. /brief De-Constructor for slidingModeControlMRPMW Definition at line 36 of file slidingModeControlMRPMW.cpp. |
|
Facilitators Determines the A matrix for the momentum wheels.
Definition at line 39 of file Controller.cpp. References Whorl::GetMomentumWheel(), MomentumWheel::GetWheelAxis(), MomentumWheel::GetWheelCount(), Controller::m_whorl, O_SESSAME::Matrix, and O_SESSAME::Vector. Referenced by Controller::Controller(), testController::Initialize(), Initialize(), MWCMGController::Initialize(), MRPTracking::Initialize(), DefaultController::Initialize(), and AngularRateController::Initialize(). |
|
Determines the MOI of the momentum wheels.
Definition at line 63 of file Controller.cpp. References MomentumWheel::GetAxialInertia(), Whorl::GetMomentumWheel(), MomentumWheel::GetWheelCount(), Controller::m_whorl, and O_SESSAME::Matrix. Referenced by Controller::Controller(), testController::Initialize(), Initialize(), MWCMGController::Initialize(), MRPTracking::Initialize(), DefaultController::Initialize(), and AngularRateController::Initialize(). |
|
Initializes the default controller. /brief Initialize slidingModeControlMRPMW Implements Controller. Definition at line 44 of file slidingModeControlMRPMW.cpp. References _, Controller::FindA(), Controller::FindMOI_sw(), Whorl::GetMOI(), O_SESSAME::ssfTime::GetSeconds(), CAMdoubleMatrix::initialize(), CAMdoubleVector::initialize(), Controller::m_angularRateReference, m_controlTorque, m_D_B, m_D_D, m_D_I, m_D_w, m_estimateB, m_estimateBinv, m_estimateInertiaInv, m_eta, m_gainMRPError, m_gainMRPRate, m_normD_B, m_normD_D, m_normD_I, m_normEstimateInertia, m_normEstimateInertiaInv, m_phi, m_previousTime, Controller::m_quaternionReference, m_torqueMax, matrixInv3x3(), and O_SESSAME::norm2(). Referenced by slidingModeControlMRPMW(). |
|
Create a spacecraft reference model based on the quaternion kinematic equation and Euler Rotational Equation of Motion. The quaternion and angular rates are numerically integrated.
Definition at line 109 of file Controller.cpp. References _, AttituteDynamics_QuaternionAngVel(), Whorl::GetMOI(), O_SESSAME::ssfTime::GetSeconds(), O_SESSAME::RungeKuttaIntegrator::Integrate(), Controller::m_angularAccelReference, Controller::m_angularRateReference, Controller::m_mrpReference, Controller::m_quaternionReference, Controller::m_whorl, O_SESSAME::Matrix, NullFunctor(), O_SESSAME::RungeKuttaIntegrator::SetNumSteps(), O_SESSAME::ModifiedRodriguezParameters::Switch(), and O_SESSAME::Vector. |
|
|
|
Definition at line 273 of file Controller.cpp. References Controller::SignSingle(), and O_SESSAME::Vector. Referenced by Run(). |
|
Sets the torque produced by the thrusters.
Definition at line 104 of file Controller.cpp. |
|
Mutators Set the torque produced by the momentum wheels.
Definition at line 84 of file Controller.cpp. References Whorl::GetMomentumWheel(), MomentumWheel::GetWheelCount(), Controller::m_whorl, MomentumWheel::SetWheelTorque(), and O_SESSAME::Vector. Referenced by testController::Run(), Run(), SingleAxisController::Run(), OpenLoopMWController::Run(), MWCMGController::Run(), MRPTracking::Run(), DefaultController::Run(), and AngularRateController::Run(). |
|
Definition at line 291 of file Controller.cpp. References Controller::SignSingle(), and O_SESSAME::Vector. |
|
Definition at line 323 of file Controller.cpp. Referenced by Controller::Saturation(), Controller::Sign(), and Controller::WheelSaturation(). |
|
Actuator Saturation function for the reaction wheels. Max toruqe is set with m_uMax.
Definition at line 303 of file Controller.cpp. References Controller::m_uMax, Controller::SignSingle(), and O_SESSAME::Vector. Referenced by testController::Run(), Run(), MRPTracking::Run(), DefaultController::Run(), and AngularRateController::Run(). |
|
Member matrix in Controller Class that provides the orientation of the momentum wheels.
Definition at line 102 of file Controller.h. Referenced by Controller::Controller(), Run(), MRPTracking::Run(), DefaultController::Run(), and AngularRateController::Run(). |
|
Member vector in Controller Class that is the angular acceleration of the reference model.
Definition at line 112 of file Controller.h. Referenced by Controller::Controller(), Controller::ReferenceModelSC(), and Controller::ReferenceTrajectory(). |
|
Member vector in Controller Class that is the angular rates of the reference model.
Definition at line 109 of file Controller.h. Referenced by Controller::Controller(), testController::Initialize(), Initialize(), MRPTracking::Initialize(), DefaultController::Initialize(), AngularRateController::Initialize(), Controller::ReferenceModelSC(), and Controller::ReferenceTrajectory(). |
|
Member value that is the control torque vector determined from control law.
Definition at line 52 of file slidingModeControlMRPMW.h. Referenced by Initialize(), and Run(). |
|
Definition at line 69 of file slidingModeControlMRPMW.h. Referenced by Initialize(), and Run(). |
|
Definition at line 71 of file slidingModeControlMRPMW.h. Referenced by Initialize(), and Run(). |
|
Definition at line 65 of file slidingModeControlMRPMW.h. Referenced by Initialize(), and Run(). |
|
Definition at line 67 of file slidingModeControlMRPMW.h. Referenced by Initialize(). |
|
Definition at line 68 of file slidingModeControlMRPMW.h. |
|
Definition at line 57 of file slidingModeControlMRPMW.h. Referenced by Initialize(). |
|
Definition at line 58 of file slidingModeControlMRPMW.h. Referenced by Initialize(), and Run(). |
|
Definition at line 54 of file slidingModeControlMRPMW.h. Referenced by Initialize(), and Run(). |
|
Definition at line 61 of file slidingModeControlMRPMW.h. Referenced by Initialize(). |
|
Definition at line 42 of file slidingModeControlMRPMW.h. Referenced by Initialize(), and Run(). |
|
Member matrix value that is the angular rate Gain Matrix for the tracking control law.
Definition at line 41 of file slidingModeControlMRPMW.h. Referenced by Initialize(), and Run(). |
|
Member scalar value that is the MRP Gain for the tracking control law.
Definition at line 45 of file slidingModeControlMRPMW.h. |
|
Member vector in Controller Class that is the MRP's of the reference model.
Definition at line 118 of file Controller.h. Referenced by Controller::Controller(), Controller::ReferenceModelSC(), and Controller::ReferenceTrajectory(). |
|
Definition at line 70 of file slidingModeControlMRPMW.h. Referenced by Initialize(). |
|
Definition at line 72 of file slidingModeControlMRPMW.h. Referenced by Initialize(). |
|
Definition at line 66 of file slidingModeControlMRPMW.h. Referenced by Initialize(). |
|
Definition at line 56 of file slidingModeControlMRPMW.h. Referenced by Initialize(). |
|
Definition at line 55 of file slidingModeControlMRPMW.h. Referenced by Initialize(). |
|
Definition at line 60 of file slidingModeControlMRPMW.h. Referenced by Initialize(), and Run(). |
|
Member scalar value that keeps track of the previous time. Needed by reference model.
Definition at line 48 of file slidingModeControlMRPMW.h. Referenced by Initialize(). |
|
Member vector in Controller Class that is the quaternion of the reference model.
Definition at line 115 of file Controller.h. Referenced by Controller::Controller(), testController::Initialize(), Initialize(), MRPTracking::Initialize(), DefaultController::Initialize(), AngularRateController::Initialize(), Controller::ReferenceModelSC(), and Controller::ReferenceTrajectory(). |
|
Definition at line 63 of file slidingModeControlMRPMW.h. Referenced by Initialize(), and Run(). |
|
Member double in Controller Class that is the max wheel control torque.
Definition at line 121 of file Controller.h. Referenced by Controller::WheelSaturation(). |
|
Member object in Controller Class.
Definition at line 99 of file Controller.h. Referenced by Controller::Controller(), Controller::FindA(), Controller::FindMOI_sw(), Controller::ReferenceModelSC(), Controller::ReferenceTrajectory(), and Controller::SetWheelTorque(). |
|
Member matrix in Controller Class that is a diagonal matrix with the MOI of the momentum wheels as its memebers.
Definition at line 106 of file Controller.h. Referenced by Controller::Controller(), Run(), MRPTracking::Run(), DefaultController::Run(), and AngularRateController::Run(). |