Module: navAggregate

Executive Summary

This module takes in a series of navigation messages and constructs a navigation output message using a select subset of information from the input messages. For more information see 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.

../../../../_images/moduleImgNavAggregate.svg

Figure 1: navAggregate() Module I/O Illustration

Module I/O Messages

Msg Variable Name

Msg Type

Description

navAttOutMsg

NavAttMsgPayload

blended attitude navigation output message

navTransOutMsg

NavTransMsgPayload

blended translation navigation output message

navAttInMsg

NavAttMsgPayload

attitude navigation input message stored inside the AggregateAttInput structure

navTransInMsg

NavTransMsgPayload

translation navigation input message stored inside the AggregateTransInput structure


Defines

MAX_AGG_NAV_MSG

Functions

void SelfInit_aggregateNav(NavAggregateData *configData, int64_t moduleID)

This method initializes the configData for the nav aggregation algorithm. It initializes the output messages in the messaging system.

Parameters:
  • configData – The configuration data associated with the Nav aggregation interface

  • moduleID – The Basilisk module identifier

Returns:

void

void Update_aggregateNav(NavAggregateData *configData, uint64_t callTime, int64_t moduleID)

This method takes the navigation message snippets created by the various navigation components in the FSW and aggregates them into a single complete navigation message.

Parameters:
  • configData – The configuration data associated with the aggregate nav module

  • callTime – The clock time at which the function was called (nanoseconds)

  • moduleID – The Basilisk module identifier

Returns:

void

void Reset_aggregateNav(NavAggregateData *configData, uint64_t callTime, int64_t moduleID)

This resets the module to original states.

Parameters:
  • configData – The configuration data associated with this module

  • callTime – The clock time at which the function was called (nanoseconds)

  • moduleID – The ID associated with the configData

Returns:

void

struct AggregateAttInput
#include <navAggregate.h>

structure containing the attitude navigation message name, ID and local buffer

Public Members

NavAttMsg_C navAttInMsg

attitude navigation input message

NavAttMsgPayload msgStorage

[-] Local buffer to store nav message

struct AggregateTransInput
#include <navAggregate.h>

structure containing the translational navigation message name, ID and local buffer

Public Members

NavTransMsg_C navTransInMsg

translation navigation input message

NavTransMsgPayload msgStorage

[-] Local buffer to store nav message

struct NavAggregateData
#include <navAggregate.h>

Top level structure for the aggregagted navigation message module.

Public Members

AggregateAttInput attMsgs[MAX_AGG_NAV_MSG]

[-] The incoming nav message buffer

AggregateTransInput transMsgs[MAX_AGG_NAV_MSG]

[-] The incoming nav message buffer

NavAttMsg_C navAttOutMsg

blended attitude navigation output message

NavTransMsg_C navTransOutMsg

blended translation navigation output message

uint32_t attTimeIdx

[-] The index of the message to use for attitude message time

uint32_t transTimeIdx

[-] The index of the message to use for translation message time

uint32_t attIdx

[-] The index of the message to use for inertial MRP

uint32_t rateIdx

[-] The index of the message to use for attitude rate

uint32_t posIdx

[-] The index of the message to use for inertial position

uint32_t velIdx

[-] The index of the message to use for inertial velocity

uint32_t dvIdx

[-] The index of the message to use for accumulated DV

uint32_t sunIdx

[-] The index of the message to use for sun pointing

uint32_t attMsgCount

[-] The total number of messages available as inputs

uint32_t transMsgCount

[-] The total number of messages available as inputs

BSKLogger *bskLogger

BSK Logging.