Module: dvAccumulation

This module reads in a message with an array of accelerometer measurements and integrates them to determine an accumulated \(\Delta\mathbf{v}\) value.

On reset the net \(\Delta\mathbf{v}\) is set to zero. The output navigation message contains the latest measurements time tag and the total \(\Delta\mathbf{v}\). More information on can be found in the PDF Description.


Functions

void SelfInit_dvAccumulation(DVAccumulationData *configData, int64_t moduleID)

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

Return

void

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

void CrossInit_dvAccumulation(DVAccumulationData *configData, int64_t moduleID)

This method performs the second stage of initialization for the nav aggregration interface. For each configured message, it subscribes to the target message and saves the ID.

Return

void

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

void Update_dvAccumulation(DVAccumulationData *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.

Return

void

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

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

void Reset_dvAccumulation(DVAccumulationData *configData, uint64_t callTime, int64_t moduleID)
void dvAccumulation_swap(AccPktDataFswMsg *p, AccPktDataFswMsg *q)
int dvAccumulation_partition(AccPktDataFswMsg *A, int start, int end)
void dvAccumulation_QuickSort(AccPktDataFswMsg *A, int start, int end)

Sort the AccPktDataFswMsg by the measTime with an iterative quickSort.

Return

void

Parameters
  • A: –> Array to be sorted,

  • start: –> Starting index,

  • end: –> Ending index

struct DVAccumulationData
#include <dvAccumulation.h>

Top level structure for the CSS sensor interface system. Contains all parameters for the CSS interface.

Public Members

char outputNavName[MAX_STAT_MSG_LENGTH]

The name of the output message.

char accPktInMsgName[MAX_STAT_MSG_LENGTH]

[-] The name of the input accelerometer message

uint32_t msgCount

[-] The total number of messages read from inputs

uint32_t dvInitialized

[-] Flag indicating whether DV has been started completely

uint64_t previousTime

[ns] The clock time associated with the previous run of algorithm

int32_t outputNavMsgID

[-] The ID associated with the outgoing message

int32_t accPktInMsgID

[-] The ID associated with the incoming accelerometer buffer

double vehAccumDV_B[3]

[m/s] The accumulated Delta_V in body frame components

BSKLogger *bskLogger

BSK Logging.