Merge branch 'develop' into acs-ctrl-finite-check
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
This commit is contained in:
@ -274,7 +274,7 @@ void AcsController::performPointingCtrl() {
|
||||
if (result == MultiplicativeKalmanFilter::MEKF_NOT_FINITE) {
|
||||
navigation.resetMekf(&mekfData);
|
||||
}
|
||||
if (mekfInvalidCounter == 5) {
|
||||
if (mekfInvalidCounter > acsParameters.onBoardParams.mekfViolationTimer) {
|
||||
// Trigger this so STR FDIR can set the device faulty.
|
||||
EventManagerIF::triggerEvent(objects::STAR_TRACKER, acs::MEKF_INVALID_MODE_VIOLATION, 0, 0);
|
||||
}
|
||||
|
@ -61,7 +61,7 @@ class AcsController : public ExtendedControllerBase, public ReceivesParameterMes
|
||||
uint8_t detumbleCounter = 0;
|
||||
uint8_t multipleRwUnavailableCounter = 0;
|
||||
bool mekfInvalidFlag = false;
|
||||
uint8_t mekfInvalidCounter = 0;
|
||||
uint16_t mekfInvalidCounter = 0;
|
||||
int32_t cmdSpeedRws[4] = {0, 0, 0, 0};
|
||||
int16_t cmdDipolMtqs[3] = {0, 0, 0};
|
||||
|
||||
|
@ -23,6 +23,9 @@ ReturnValue_t AcsParameters::getParameter(uint8_t domainId, uint8_t parameterId,
|
||||
case 0x0:
|
||||
parameterWrapper->set(onBoardParams.sampleTime);
|
||||
break;
|
||||
case 0x1:
|
||||
parameterWrapper->set(onBoardParams.mekfViolationTimer);
|
||||
break;
|
||||
default:
|
||||
return INVALID_IDENTIFIER_ID;
|
||||
}
|
||||
|
@ -18,6 +18,7 @@ class AcsParameters : public HasParametersIF {
|
||||
|
||||
struct OnBoardParams {
|
||||
double sampleTime = 0.4; // [s]
|
||||
uint16_t mekfViolationTimer = 750;
|
||||
} onBoardParams;
|
||||
|
||||
struct InertiaEIVE {
|
||||
|
Reference in New Issue
Block a user