Module: simpleDeadband

This method applies a two-level deadbanding logic (according to the current average simple compared with the set threshold) and decides whether control should be switched ON/OFF or not.


Functions

void SelfInit_simpleDeadband(simpleDeadbandConfig *configData, int64_t moduleID)

This method initializes the configData for this module. It checks to ensure that the inputs are sane and then creates the output message

Return

void

Parameters
  • configData: The configuration data associated with this module

void CrossInit_simpleDeadband(simpleDeadbandConfig *configData, int64_t moduleID)

This method performs the second stage of initialization for this module. It’s primary function is to link the input messages that were created elsewhere.

Return

void

Parameters
  • configData: The configuration data associated with this module

void Update_simpleDeadband(simpleDeadbandConfig *configData, uint64_t callTime, int64_t moduleID)

This method parses the input data, checks if the deadband needs to be applied and outputs the guidance command with simples either zeroed (control OFF) or left unchanged (control ON)

Return

void

Parameters
  • configData: The configuration data associated with the attitude tracking simple module

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

void Reset_simpleDeadband(simpleDeadbandConfig *configData, uint64_t callTime, int64_t moduleID)

This method performs a complete reset of the module. Local module variables that retain time varying states between function calls are reset to their default values.

Return

void

Parameters
  • configData: The configuration data associated with the MRP steering control

void applyDBLogic_simpleDeadband(simpleDeadbandConfig *configData)

This method applies a two-level deadbanding logic (according to the current average simple compared with the set threshold) and decides whether control should be switched ON/OFF or not.

Return

void

Parameters
  • configData: The configuration data associated with the attitude tracking simple module

struct simpleDeadbandConfig
#include <simpleDeadband.h>

Top level structure for the sub-module routines.

Public Members

double innerAttThresh

inner limit for sigma (attitude) errors

double outerAttThresh

outer limit for sigma (attitude) errors

double innerRateThresh

inner limit for omega (rate) errors

double outerRateThresh

outer limit for omega (rate) errors

uint32_t wasControlOff

boolean variable to keep track of the last Control status (ON/OFF)

double attError

current scalar attitude error

double rateError

current scalar rate error

char outputDataName[MAX_STAT_MSG_LENGTH]

The name of the output message

char inputGuidName[MAX_STAT_MSG_LENGTH]

The name of the guidance reference Input message

int32_t outputGuidID

ID for the outgoing message

int32_t inputGuidID

ID for the incoming guidance reference message

AttGuidFswMsg attGuidOut

copy of the output message

BSKLogger *bskLogger

BSK Logging.