Module: eulerRotation¶
This module guidance modules creates constant Euler angle rate rotations about a primary axis to create dynamic reference frames.
Functions
- 
void SelfInit_eulerRotation(eulerRotationConfig *configData, int64_t moduleID)¶
- This method initializes the configData for eulerRotation model. It creates the module output message. - Return
- void 
- Parameters
- configData: The configuration data associated with the null space control
- moduleID: The ID associated with the configData
 
 
- 
void CrossInit_eulerRotation(eulerRotationConfig *configData, int64_t moduleID)¶
- This method performs the second stage of initialization for the module interface. It subscribes to the input reference frame message, and an optional desired attitude scanning message. - Return
- void 
- Parameters
- configData: The configuration data associated with the null space control
- moduleID: The ID associated with the configData
 
 
- 
void Reset_eulerRotation(eulerRotationConfig *configData, uint64_t callTime, int64_t moduleID)¶
- This resets the module to original states. - Return
- void 
- Parameters
- configData: The configuration data associated with the null space control
- callTime: The clock time at which the function was called (nanoseconds)
- moduleID: The ID associated with the configData
 
 
- 
void Update_eulerRotation(eulerRotationConfig *configData, uint64_t callTime, int64_t moduleID)¶
- This method takes the input attitude reference frame, and and superimposes the dynamic euler angle scanning motion on top of this. - Return
- void 
- Parameters
- configData: The configuration data associated with the mrpRotation module
- callTime: The clock time at which the function was called (nanoseconds)
- moduleID: The ID associated with the configData
 
 
- 
void checkRasterCommands(eulerRotationConfig *configData)¶
- This function checks if there is a new commanded raster maneuver message available. - Return
- void 
- Parameters
- configData: The configuration data associated with the mrpRotation module
 
 
- 
void computeTimeStep(eulerRotationConfig *configData, uint64_t callTime)¶
- This function computes control update time. - Return
- void 
- Parameters
- configData: The configuration data associated with the mrpRotation module
- callTime: The clock time at which the function was called (nanoseconds)
 
 
- 
void computeEuler321_Binv_derivative(double angleSet[3], double angleRates[3], double B_inv_deriv[3][3])¶
- This function computes the analytical derivative of the B_inv matrix for the 3-2-1 Euler Angle set. - Return
- void 
- Parameters
- configData: The configuration data associated with the mrpRotation module
- angleSet[3]: 321 Euler angles
- angleRates[3]: The 321 Euler angle rates
- B_inv_deriv: the inv(B) matrix for 321 Euler angles
 
 
- 
void computeEulerRotationReference(eulerRotationConfig *configData, double sigma_R0N[3], double omega_R0N_N[3], double domega_R0N_N[3], AttRefFswMsg *attRefOut)¶
- This function computes the reference (Euler angle attitude set, angular velocity and angular acceleration) associated with a rotation defined in terms of an initial euler angle set and a constant euler angle rate. - Return
- void 
- Parameters
- configData: The configuration data associated with the mrpRotation module
- sigma_R0N[3]: The input reference attitude using MRPs
- omega_R0N_N[3]: The input reference frame angular rate vector
- domega_R0N_N[3]: The input reference frame angular acceleration vector
- attRefOut: The output message copy
 
 
- 
struct eulerRotationConfig¶
- #include <eulerRotation.h>Top level structure for the sub-module routines. Public Members - 
double angleSet[3]¶
- [-] current euler angle 321 set R/R0 with respect to the input reference 
 - 
double angleRates[3]¶
- [rad/s] euler angle 321 rates 
 - 
double cmdSet[3]¶
- [] msg commanded initial Euler angle 321 set with respect to input reference 
 - 
double cmdRates[3]¶
- [rad/s] msg commanded constant 321 Euler angle rates 
 - 
double priorCmdSet[3]¶
- [] prior commanded 321 Euler angle set 
 - 
double priorCmdRates[3]¶
- [rad/s] prior commanded 321 Euler angle rates 
 - 
uint64_t priorTime¶
- [ns] last time the guidance module is called 
 - 
double dt¶
- [s] integration time-step 
 - 
char attRefOutMsgName[MAX_STAT_MSG_LENGTH]¶
- The name of the output message containing the Reference. 
 - 
int32_t attRefOutMsgID¶
- [-] ID for the outgoing Reference message 
 - 
char attRefInMsgName[MAX_STAT_MSG_LENGTH]¶
- The name of the guidance reference Input message. 
 - 
int32_t attRefInMsgID¶
- [-] ID for the incoming guidance reference message 
 - 
char desiredAttInMsgName[MAX_STAT_MSG_LENGTH]¶
- The name of the incoming message containing the desired EA set. 
 - 
int32_t desiredAttInMsgID¶
- [-] ID for the incoming EA set message 
 
- 
double