inertialAttitudeUkf#

Executive Summary#

This module filters incoming star tracker measurements and reaction wheel data in order to get the best possible inertial attitude estimate. The filter used is an unscented Kalman filter using the Modified Rodrigues Parameters (MRPs) as a non-singular attitude measure. Measurements can be coming in from several camera heads and several gyroscopes.

More information on can be found in the PDF Description

Message Connection Descriptions#

The following table lists all the module input and output messages. The module msg connection is set by the user from python. The msg type contains a link to the message structure definition, while the description provides information on what this message is used for.

Module I/O Messages#

Msg Variable Name

Msg Type

Description

navAttitudeOutputMsg

NavAttMsgPayload

navigation output message

inertialFilterOutputMsg

InertialFilterMsgPayload

name of the output filter data message

starTrackerResidualMsg

FilterResidualsMsgPayload

name of the output residual data message for star measurements

gyroResidualMsg

FilterResidualsMsgPayload

name of the output residual data message for gyro measurements

vehicleConfigMsg

VehicleConfigMsgPayload

spacecraft vehicle configuration input message

rwArrayConfigMsg

RWArrayConfigMsgPayload

reaction wheel parameter input message. Can be an empty message if no RW are included.

rwSpeedMsg

RWSpeedMsgPayload

reaction wheel speed input message. Can be an empty message if no RW are included.

accelDataMsg

AccDataMsgPayload

rate gyro input message

Class InertialAttitudeUkf#

class InertialAttitudeUkf : public SRukfInterface#

Inertial Attitude filter which reads Star Tracker measurements and gyro measurements.

Public Functions

void setGyroNoise(const Eigen::Matrix3d &gyroNoise)#

Set the gyro measurement noise matrix

Parameters:

Eigen::Matrix3d – gyroNoise

Returns:

void

Eigen::Matrix3d getGyroNoise() const#

Get he gyro measurement noise matrix

Returns:

Eigen::Matrix3d gyroNoise

void addStarTrackerInput(const StarTrackerMessage &starTracker)#

Add a star tracker to the filter solution using the StarTrackerMessage class

Returns:

StarTrackerMessage starTracker

Eigen::Matrix3d getStarTrackerNoise(int starTrackerNumber) const#

Get the star tracker measurement noise matrix for a particular number (indexed at 0)

Parameters:

int – starTrackerNumber

Returns:

Eigen::Matrix3d starTrackerMeasurementNoise

void setLowPassFilter(double step, double frequencyCutOff)#

Set the low pass filter parameters for the

Parameters:
  • double – step

  • double – frequencyCutOff