ACS Safe Ctrl Failure Event #484

Merged
muellerr merged 12 commits from acs-safe-mode-failure into develop 2023-03-15 16:27:43 +01:00
8 changed files with 47 additions and 18 deletions
Showing only changes of commit ccf1fcaa79 - Show all commits

View File

@@ -173,14 +173,16 @@ void AcsController::performSafe() {
sunTargetDir, satRateSafe, &errAng, magMomMtq); sunTargetDir, satRateSafe, &errAng, magMomMtq);
} }
if (result == returnvalue::FAILED) { if (result == returnvalue::FAILED) {
if (not doomFlag) { if (not safeCtrlFailureFlag) {
triggerEvent(acs::SAFE_MODE_CONTROLLER_FAILURE); triggerEvent(acs::SAFE_MODE_CONTROLLER_FAILURE);
doomFlag = true; safeCtrlFailureFlag = true;
} }
doomCounter++; safeCtrlFailureCounter++;
if (doomCounter > 5) { if (safeCtrlFailureCounter > 50) {
doomFlag = false; safeCtrlFailureFlag = false;
} }
} else {
safeCtrlFailureFlag = false;
} }
actuatorCmd.cmdDipolMtq(magMomMtq, cmdDipolMtqs, actuatorCmd.cmdDipolMtq(magMomMtq, cmdDipolMtqs,

View File

@@ -62,8 +62,8 @@ class AcsController : public ExtendedControllerBase, public ReceivesParameterMes
uint8_t multipleRwUnavailableCounter = 0; uint8_t multipleRwUnavailableCounter = 0;
bool mekfInvalidFlag = false; bool mekfInvalidFlag = false;
uint16_t mekfInvalidCounter = 0; uint16_t mekfInvalidCounter = 0;
bool doomFlag = false; bool safeCtrlFailureFlag = false;
uint8_t doomCounter = 0; uint8_t safeCtrlFailureCounter = 0;
int32_t cmdSpeedRws[4] = {0, 0, 0, 0}; int32_t cmdSpeedRws[4] = {0, 0, 0, 0};
int16_t cmdDipolMtqs[3] = {0, 0, 0}; int16_t cmdDipolMtqs[3] = {0, 0, 0};