Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages | Examples

slidingModeControlMRPMW.h

Go to the documentation of this file.
00001 //////////////////////////////////////////////////////////////////////////////////////////////////
00002 /*! \file slidingModeControlMRPMW.h
00003  *  \brief 
00004  *  \author $Author: jayhawk_hokie $
00005  *  \version $Revision: 1.1 $
00006  *  \date    $Date: 2007/07/24 09:25:15 $
00007 *//////////////////////////////////////////////////////////////////////////////////////////////////
00008 /*! 
00009 */
00010 //////////////////////////////////////////////////////////////////////////////////////////////////
00011 
00012 
00013 #ifndef __SSSL_SLIDINGMODECONTROLMRPMW_H__
00014 #define __SSSL_SLIDINGMODECONTROLMRPMW_H__
00015 
00016 #include "Controller.h"
00017 
00018 using namespace std;
00019 using namespace O_SESSAME;
00020 
00021 class slidingModeControlMRPMW : public Controller 
00022 {
00023         
00024         public:
00025                 /*! \brief Constructors */
00026                 slidingModeControlMRPMW( );
00027                 slidingModeControlMRPMW( Whorl* ptr_whorl );
00028         
00029                 /*! \brief Destructor */
00030                 ~slidingModeControlMRPMW( );
00031                 
00032                 /*! \brief Runs the default controller */
00033                 int Run( );
00034                         
00035                 /*! \brief Initializes the default controller */
00036                 int Initialize( );
00037                         
00038         protected:
00039                 /*! \brief Member matrix value that is the angular rate Gain Matrix for
00040                  *  the tracking control law. */
00041                 Matrix m_gainMRPRate;
00042                 Matrix m_gainMRPError;
00043 
00044                 /*! \brief Member scalar value that is the MRP Gain for the tracking control law. */
00045                 double m_mrpGain;
00046 
00047                 /*! \brief Member scalar value that keeps track of the previous time. Needed by reference model. */
00048                 double m_previousTime;
00049 
00050                 /*! \brief Member value that is the control torque vector
00051                  *      determined from control law. */
00052                 Vector m_controlTorque;
00053 
00054                 Matrix m_estimateInertiaInv;
00055                 double m_normEstimateInertiaInv;
00056                 double m_normEstimateInertia;
00057                 Matrix m_estimateB;
00058                 Matrix m_estimateBinv;
00059 
00060                 Vector m_phi;                   
00061                 Vector m_eta;                   
00062 
00063                 double m_torqueMax;
00064 
00065                 Matrix m_D_I;
00066                 double m_normD_I;
00067                 Matrix m_D_w;
00068                 Matrix m_D_wprime;
00069                 Matrix m_D_B;
00070                 double m_normD_B;
00071                 Matrix m_D_D;
00072                 double m_normD_D;
00073 };
00074 
00075 #endif
00076                         
00077 // Do not change the comments below - they will be added automatically by CVS
00078 /*****************************************************************************
00079 *       $Log: slidingModeControlMRPMW.h,v $
00080 *       Revision 1.1  2007/07/24 09:25:15  jayhawk_hokie
00081 *       Initial Submission.
00082 *       
00083 *       
00084 *       
00085 *
00086 ******************************************************************************/

Generated on Wed Sep 5 12:54:25 2007 for DSACSS Operational Code by  doxygen 1.3.9.1