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

ControlMomentGyro Class Reference

#include <ControlMomentGyro.h>

Inheritance diagram for ControlMomentGyro:

Inheritance graph
[legend]
Collaboration diagram for ControlMomentGyro:

Collaboration graph
[legend]
List of all members.

Detailed Description

Class to interface with control moment gyros

Definition at line 32 of file ControlMomentGyro.h.

Public Member Functions

 ControlMomentGyro ()
 ControlMomentGyro (cfgBody &cfgdat)
virtual ~ControlMomentGyro ()
void SetWheelSpeed (double wheelOmega)
void SetWheelTorque (double wheelTorque)
void SetAngle (double wheelAngle)
void SetGimbalRate (double gimbalRate)
int Stop ()
int Initialize ()
int Deinitialize ()
void SetWheelAxis (const Vector &newWheelAxis)
void SetPort (string Port)
double GetWheelSpeed ()
double GetWheelTorque ()
double GetAngle ()
Vector GetCMGAxis () const
int getGyroCount () const
virtual int GetWheelCount ()
bool IsActive ()
 Returns the current state of m_bActiveState.
Vector GetLocation () const
 Returns the physical location of the device with respect to whorl body coordinates.
void SetLocation (const Vector &newDeviceLocation)
 Specify the physical location of the device with respect to whorl body coordinates.

Static Public Attributes

const bool c_bNotActive = false
 a constant bool that is equal to false.
const bool c_bActive = true
 a constant bool that is equal to true.

Protected Attributes

char * name

Private Attributes

double m_CurrentWheelSpeed
double m_CurrentWheelTorque
double m_CurrentAngle
Vector m_CMGAxis
double m_CurrentLAVelocity
double m_CurrentLAAcceleration
PhysicalControlMomentGyro m_PhysicalCMG

Static Private Attributes

int gyroCount = 0


Constructor & Destructor Documentation

ControlMomentGyro::ControlMomentGyro  ) 
 

Default Constructor

Definition at line 19 of file ControlMomentGyro.cpp.

ControlMomentGyro::ControlMomentGyro cfgBody cfgdat  ) 
 

Constructor accepting a cfg object

Definition at line 74 of file ControlMomentGyro.cpp.

References getCmdIndex(), cfgBody::keys, m_PhysicalCMG, PhysicalControlMomentGyro::SetDaisyChainNumber(), PhysicalControlMomentGyro::SetDaisyChainPort(), PhysicalControlMomentGyro::SetWheelTorqueLimits(), and cfgBody::vals.

ControlMomentGyro::~ControlMomentGyro  )  [virtual]
 

Default Deconstructor

Definition at line 24 of file ControlMomentGyro.cpp.

References Deinitialize(), gyroCount, and Stop().


Member Function Documentation

int ControlMomentGyro::Deinitialize  )  [virtual]
 

Deinitialize all CMG components

Reimplemented from Device.

Definition at line 108 of file ControlMomentGyro.cpp.

References PhysicalControlMomentGyro::Deinitialize(), and m_PhysicalCMG.

Referenced by main(), and ~ControlMomentGyro().

double ControlMomentGyro::GetAngle  ) 
 

Returns the current angle of the wheel axis with respect to its center line in radians

Definition at line 147 of file ControlMomentGyro.cpp.

References m_CurrentAngle, m_PhysicalCMG, and PhysicalControlMomentGyro::QueryAngle().

Vector ControlMomentGyro::GetCMGAxis  )  const
 

Returns a 3x1 vector of the CMG axis

Definition at line 154 of file ControlMomentGyro.cpp.

References O_SESSAME::Vector.

int ControlMomentGyro::getGyroCount  )  const
 

Returns the total number of CMGs instantiated

Definition at line 160 of file ControlMomentGyro.cpp.

Vector Device::GetLocation  )  const [inherited]
 

Returns the physical location of the device with respect to whorl body coordinates.

Returns:
Physical center of the device [x,y,z]^T (meters).

Definition at line 75 of file Device.cpp.

References O_SESSAME::Vector.

virtual int Actuator::GetWheelCount  )  [inline, virtual, inherited]
 

Reimplemented in MomentumWheel.

Definition at line 27 of file Actuator.h.

double ControlMomentGyro::GetWheelSpeed  ) 
 

Returns the current angular velocity of the CMG wheel in rad/sec

Definition at line 134 of file ControlMomentGyro.cpp.

References m_CurrentWheelSpeed, m_PhysicalCMG, and PhysicalControlMomentGyro::QueryWheelSpeed().

double ControlMomentGyro::GetWheelTorque  ) 
 

Returns the current torque output to the CMG wheel in N-m

Definition at line 140 of file ControlMomentGyro.cpp.

References m_CurrentWheelTorque, m_PhysicalCMG, and PhysicalControlMomentGyro::QueryWheelTorque().

int ControlMomentGyro::Initialize  )  [virtual]
 

Initialize the both the linear actuator and wheel on the CMG chain

Reimplemented from Actuator.

Definition at line 65 of file ControlMomentGyro.cpp.

References PhysicalControlMomentGyro::Initialize(), m_PhysicalCMG, and PhysicalControlMomentGyro::SetDaisyChainPort().

Referenced by main().

bool Device::IsActive  )  [inherited]
 

Returns the current state of m_bActiveState.

Author:
Andrew Turner
Date:
March 25, 1999 This member function is used to inspect the state of the device External Methods Called: None Assumptions: None

Definition at line 59 of file Device.cpp.

Referenced by Device::Device().

void ControlMomentGyro::SetAngle double  wheelAngle  ) 
 

Set the angle of the wheel axis with respect to the center of its travel

Parameters:
wheelAngle The desired angle og the wjheel axis with respect to the center of the CMG's motion in radians

Definition at line 49 of file ControlMomentGyro.cpp.

References PhysicalControlMomentGyro::CommandAngle(), and m_PhysicalCMG.

Referenced by main().

void ControlMomentGyro::SetGimbalRate double  gimbalRate  ) 
 

Set the gimbal angle rate of the CMG

Parameters:
gimbalrate The deisred gimbal angle rate in rad/sec

Definition at line 54 of file ControlMomentGyro.cpp.

References PhysicalControlMomentGyro::CommandGimbalRate(), and m_PhysicalCMG.

void Device::SetLocation const Vector newDeviceLocation  )  [inherited]
 

Specify the physical location of the device with respect to whorl body coordinates.

Parameters:
newDeviceLocation Physical center of the device [x,y,z]^T (meters).

Definition at line 67 of file Device.cpp.

References Device::m_Location, and O_SESSAME::Vector.

void ControlMomentGyro::SetPort string  Port  ) 
 

Set communications port

Definition at line 125 of file ControlMomentGyro.cpp.

References m_PhysicalCMG, and PhysicalControlMomentGyro::SetDaisyChainPort().

void ControlMomentGyro::SetWheelAxis const Vector newWheelAxis  ) 
 

Set the axis of the CMG with a 3x1 vector

Definition at line 120 of file ControlMomentGyro.cpp.

References m_CMGAxis, and O_SESSAME::Vector.

void ControlMomentGyro::SetWheelSpeed double  wheelOmega  ) 
 

Set the speed of the CMG wheel

Parameters:
wheelOmega Desired speed of the wheel in rad/sec

Definition at line 39 of file ControlMomentGyro.cpp.

References PhysicalControlMomentGyro::CommandWheelSpeed(), and m_PhysicalCMG.

Referenced by main().

void ControlMomentGyro::SetWheelTorque double  wheelTorque  ) 
 

Set the torque output to the wheel of the CMG

Parameters:
wheelTorque Desired torque put on the wheel in N-m

Definition at line 44 of file ControlMomentGyro.cpp.

References PhysicalControlMomentGyro::CommandWheelTorque(), and m_PhysicalCMG.

int ControlMomentGyro::Stop  )  [virtual]
 

Stop the CMG wheel

Implements Actuator.

Definition at line 59 of file ControlMomentGyro.cpp.

References m_PhysicalCMG, and PhysicalControlMomentGyro::Stop().

Referenced by main(), and ~ControlMomentGyro().


Member Data Documentation

const bool Device::c_bActive = true [static, inherited]
 

a constant bool that is equal to true.

Used for setting the active state

Definition at line 50 of file Device.h.

Referenced by Device::Initialize().

const bool Device::c_bNotActive = false [static, inherited]
 

a constant bool that is equal to false.

Used for setting the active state.

Definition at line 48 of file Device.h.

Referenced by Device::Deinitialize(), and Device::Device().

int ControlMomentGyro::gyroCount = 0 [static, private]
 

Static integer that holds the total number of CMGs instantiated

Definition at line 18 of file ControlMomentGyro.cpp.

Referenced by ~ControlMomentGyro().

Vector ControlMomentGyro::m_CMGAxis [private]
 

3x1 Vector that holds axis of the CMG

Definition at line 117 of file ControlMomentGyro.h.

Referenced by SetWheelAxis().

double ControlMomentGyro::m_CurrentAngle [private]
 

Double that holds the current angle of the wheel axis with respect to its center point in radians

Definition at line 114 of file ControlMomentGyro.h.

Referenced by GetAngle().

double ControlMomentGyro::m_CurrentLAAcceleration [private]
 

Double that holds the accelerations setting for the linear actuator

Definition at line 123 of file ControlMomentGyro.h.

double ControlMomentGyro::m_CurrentLAVelocity [private]
 

Double that holds the velocity setting for the linear actuator

Definition at line 120 of file ControlMomentGyro.h.

double ControlMomentGyro::m_CurrentWheelSpeed [private]
 

Double that holds the current angular velocity of the CMG wheel in rad/sec

Definition at line 108 of file ControlMomentGyro.h.

Referenced by GetWheelSpeed().

double ControlMomentGyro::m_CurrentWheelTorque [private]
 

Double that holds the current torque output to the wheel in N-m

Definition at line 111 of file ControlMomentGyro.h.

Referenced by GetWheelTorque().

PhysicalControlMomentGyro ControlMomentGyro::m_PhysicalCMG [private]
 

Memeber PhysicalControlMomentGyro object

Definition at line 126 of file ControlMomentGyro.h.

Referenced by ControlMomentGyro(), Deinitialize(), GetAngle(), GetWheelSpeed(), GetWheelTorque(), Initialize(), SetAngle(), SetGimbalRate(), SetPort(), SetWheelSpeed(), SetWheelTorque(), and Stop().

char* Device::name [protected, inherited]
 

Definition at line 56 of file Device.h.


The documentation for this class was generated from the following files:
Generated on Wed Sep 5 12:54:39 2007 for DSACSS Operational Code by  doxygen 1.3.9.1