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

DefaultController.h

Go to the documentation of this file.
00001 //////////////////////////////////////////////////////////////////////////////////////////////////
00002 /*! \file DefaultController.h
00003  *  \brief The DefaultController class contains the actual equations for angular velocity control.
00004  *         It is derived from the Contorller class.
00005  *  \author $Author: jayhawk_hokie $
00006  *  \version $Revision: 1.8 $
00007  *  \date    $Date: 2007/09/05 13:27:20 $
00008 *//////////////////////////////////////////////////////////////////////////////////////////////////
00009 /*! 
00010 */
00011 //////////////////////////////////////////////////////////////////////////////////////////////////
00012 
00013 
00014 #ifndef __SSSL_DEFAULTCONTROLLER_H__
00015 #define __SSSL_DEFAULTCONTROLLER_H__
00016 
00017 #include "Controller.h"
00018 
00019 using namespace std;
00020 using namespace O_SESSAME;
00021 
00022 class DefaultController : public Controller 
00023 {
00024         public:
00025                 /*! \brief Constructor */
00026                 DefaultController( );
00027 
00028                 /*! \brief Constructor 
00029                  *  @param ptr_whorl is a pointer to the whorl object.
00030                  */
00031                 DefaultController( Whorl* ptr_whorl );
00032         
00033                 /*! \brief Destructor */
00034                 virtual ~DefaultController();
00035                 
00036                 /*! \brief Initializes the default controller */
00037                 int Initialize( );
00038                 
00039                 /*! \brief Runs the default controller, which is a Lyapunov based control law
00040                  *         that drives the angular rates to zero.
00041                  */
00042                 int Run( );
00043                         
00044         protected:
00045 
00046                 /*! \brief Member value in Default Controller Class that is the gain. */
00047                 double m_K;
00048 
00049                 /*! \brief Member value in Default Controller Class that is the Gain Matrix for 
00050                  *      the control law. */     
00051                 Matrix m_gainMatrix;
00052 
00053                 /*! \brief Member value in Default Controll Class that is the control torque vector 
00054                  *      determined from control law. */
00055                 Vector m_controlTorque;
00056 
00057 };
00058 
00059 #endif
00060                         
00061 // Do not change the comments below - they will be added automatically by CVS
00062 /*****************************************************************************
00063 *       $Log: DefaultController.h,v $
00064 *       Revision 1.8  2007/09/05 13:27:20  jayhawk_hokie
00065 *       *** empty log message ***
00066 *       
00067 *       Revision 1.7  2007/07/24 09:36:44  jayhawk_hokie
00068 *       Updated.
00069 *       
00070 *       Revision 1.6  2007/04/09 14:03:06  jayhawk_hokie
00071 *       Modified controller.
00072 *       
00073 *       Revision 1.5  2007/02/22 20:10:33  jayhawk_hokie
00074 *       Update Constructor and Destructor.
00075 *       
00076 *       Revision 1.4  2005/02/25 18:40:53  cakinli
00077 *       Created Makefiles and organized include directives to reduce the number of
00078 *       include paths.  Reorganized libraries so that there is now one per source
00079 *       directory.  Each directory is self-contained in terms of its Makefile.
00080 *       The local Makefile in each directory includes src/config.mk, which has all
00081 *       the definitions and general and pattern rules.  So at most, to see what
00082 *       goes into building a target, a person needs to examine the Makefile in
00083 *       that directory, and ../config.mk.
00084 *       
00085 *       Revision 1.3  2003/08/13 23:17:32  mavandyk
00086 *       Altered structure as outline in meeting.
00087 *       
00088 *       Revision 1.2  2003/07/31 20:42:38  mavandyk
00089 *       Fixed some minor problems.
00090 *       
00091 *       Revision 1.1  2003/07/31 20:27:17  mavandyk
00092 *       This is the default controller for Whorl.
00093 *       
00094 *       Revision 1.3  2003/07/07 14:10:52  simpliciter
00095 *       Added log blocks.
00096 *       
00097 *       
00098 *
00099 ******************************************************************************/

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