From 2c30efa821c4aab542bd96e04f9ad24649936ffa Mon Sep 17 00:00:00 2001 From: meggert Date: Tue, 10 Oct 2023 11:54:32 +0200 Subject: [PATCH] aaand we revert --- dummies/PlPcduDummy.cpp | 6 ++---- dummies/PlocMpsocDummy.cpp | 6 ++---- dummies/PlocSupervisorDummy.cpp | 6 ++---- linux/payload/PlocMpsocHandler.cpp | 6 ++---- linux/payload/PlocSupervisorHandler.cpp | 6 ++---- mission/controller/PowerController.h | 13 ++++++++----- mission/payload/PayloadPcduHandler.cpp | 6 ++---- mission/system/objects/CamSwitcher.cpp | 6 ++---- 8 files changed, 22 insertions(+), 33 deletions(-) diff --git a/dummies/PlPcduDummy.cpp b/dummies/PlPcduDummy.cpp index 589fb075..cf652513 100644 --- a/dummies/PlPcduDummy.cpp +++ b/dummies/PlPcduDummy.cpp @@ -49,12 +49,10 @@ ReturnValue_t PlPcduDummy::checkModeCommand(Mode_t commandedMode, Submode_t comm if (commandedMode != MODE_OFF) { PoolReadGuard pg(&enablePl); if (pg.getReadResult() == returnvalue::OK) { - if (enablePl.plUseAllowed.isValid() and enablePl.plUseAllowed.value) { - return DeviceHandlerBase::checkModeCommand(commandedMode, commandedSubmode, - msToReachTheMode); + if (enablePl.plUseAllowed.isValid() and not enablePl.plUseAllowed.value) { + return NON_OP_STATE_OF_CHARGE; } } - return NON_OP_STATE_OF_CHARGE; } return DeviceHandlerBase::checkModeCommand(commandedMode, commandedSubmode, msToReachTheMode); } diff --git a/dummies/PlocMpsocDummy.cpp b/dummies/PlocMpsocDummy.cpp index 47af8513..9959dd0f 100644 --- a/dummies/PlocMpsocDummy.cpp +++ b/dummies/PlocMpsocDummy.cpp @@ -28,12 +28,10 @@ ReturnValue_t PlocMpsocDummy::checkModeCommand(Mode_t commandedMode, Submode_t c if (commandedMode != MODE_OFF) { PoolReadGuard pg(&enablePl); if (pg.getReadResult() == returnvalue::OK) { - if (enablePl.plUseAllowed.isValid() and enablePl.plUseAllowed.value) { - return DeviceHandlerBase::checkModeCommand(commandedMode, commandedSubmode, - msToReachTheMode); + if (enablePl.plUseAllowed.isValid() and not enablePl.plUseAllowed.value) { + return NON_OP_STATE_OF_CHARGE; } } - return NON_OP_STATE_OF_CHARGE; } return DeviceHandlerBase::checkModeCommand(commandedMode, commandedSubmode, msToReachTheMode); } diff --git a/dummies/PlocSupervisorDummy.cpp b/dummies/PlocSupervisorDummy.cpp index f37bb328..c560c91f 100644 --- a/dummies/PlocSupervisorDummy.cpp +++ b/dummies/PlocSupervisorDummy.cpp @@ -58,12 +58,10 @@ ReturnValue_t PlocSupervisorDummy::checkModeCommand(Mode_t commandedMode, if (commandedMode != MODE_OFF) { PoolReadGuard pg(&enablePl); if (pg.getReadResult() == returnvalue::OK) { - if (enablePl.plUseAllowed.isValid() and enablePl.plUseAllowed.value) { - return DeviceHandlerBase::checkModeCommand(commandedMode, commandedSubmode, - msToReachTheMode); + if (enablePl.plUseAllowed.isValid() and not enablePl.plUseAllowed.value) { + return NON_OP_STATE_OF_CHARGE; } } - return NON_OP_STATE_OF_CHARGE; } return DeviceHandlerBase::checkModeCommand(commandedMode, commandedSubmode, msToReachTheMode); } diff --git a/linux/payload/PlocMpsocHandler.cpp b/linux/payload/PlocMpsocHandler.cpp index c5a17536..66fba6d8 100644 --- a/linux/payload/PlocMpsocHandler.cpp +++ b/linux/payload/PlocMpsocHandler.cpp @@ -1511,12 +1511,10 @@ ReturnValue_t PlocMpsocHandler::checkModeCommand(Mode_t commandedMode, Submode_t if (commandedMode != MODE_OFF) { PoolReadGuard pg(&enablePl); if (pg.getReadResult() == returnvalue::OK) { - if (enablePl.plUseAllowed.isValid() and enablePl.plUseAllowed.value) { - return DeviceHandlerBase::checkModeCommand(commandedMode, commandedSubmode, - msToReachTheMode); + if (enablePl.plUseAllowed.isValid() and not enablePl.plUseAllowed.value) { + return NON_OP_STATE_OF_CHARGE; } } - return NON_OP_STATE_OF_CHARGE; } return DeviceHandlerBase::checkModeCommand(commandedMode, commandedSubmode, msToReachTheMode); } diff --git a/linux/payload/PlocSupervisorHandler.cpp b/linux/payload/PlocSupervisorHandler.cpp index 43b8abb2..0c6311de 100644 --- a/linux/payload/PlocSupervisorHandler.cpp +++ b/linux/payload/PlocSupervisorHandler.cpp @@ -1999,12 +1999,10 @@ ReturnValue_t PlocSupervisorHandler::checkModeCommand(Mode_t commandedMode, if (commandedMode != MODE_OFF) { PoolReadGuard pg(&enablePl); if (pg.getReadResult() == returnvalue::OK) { - if (enablePl.plUseAllowed.isValid() and enablePl.plUseAllowed.value) { - return DeviceHandlerBase::checkModeCommand(commandedMode, commandedSubmode, - msToReachTheMode); + if (enablePl.plUseAllowed.isValid() and not enablePl.plUseAllowed.value) { + return NON_OP_STATE_OF_CHARGE; } } - return NON_OP_STATE_OF_CHARGE; } return DeviceHandlerBase::checkModeCommand(commandedMode, commandedSubmode, msToReachTheMode); } diff --git a/mission/controller/PowerController.h b/mission/controller/PowerController.h index adff4733..e57a7858 100644 --- a/mission/controller/PowerController.h +++ b/mission/controller/PowerController.h @@ -24,6 +24,8 @@ class PowerController : public ExtendedControllerBase, public ReceivesParameterM uint16_t startAtIndex) override; private: + int test = 0; + bool enableHkSets = false; ParameterHelper parameterHelper; @@ -48,7 +50,7 @@ class PowerController : public ExtendedControllerBase, public ReceivesParameterM ReturnValue_t calculateCoulombCounterCharge(); ReturnValue_t updateEpsData(); float charge2stateOfCharge(float capacity, bool coulombCounter); - ReturnValue_t lookUpTableOcvIdxFinder(float voltage, uint8_t& idx); + ReturnValue_t lookUpTableOcvIdxFinder(float voltage, uint8_t& idx, bool paramCmd); float linearInterpolation(float x, float x0, float x1, float y0, float y1); ReturnValue_t calculateCoulombCounterChargeUpperThreshold(); @@ -103,10 +105,11 @@ class PowerController : public ExtendedControllerBase, public ReceivesParameterM // Variables timeval now; timeval oldTime; - int16_t iBat = 0; // [mA] - float openCircuitVoltageCharge = 0.0; // [Ah] - float coulombCounterCharge = 0.0; // [Ah] - float coulombCounterChargeUpperThreshold = 0.0; // [Ah] + int16_t iBat = 0; // [mA] + float openCircuitVoltageCharge = 0.0; // [Ah] + float coulombCounterCharge = 0.0; // [Ah] + float coulombCounterChargeUpperThreshold = 0.0; // [Ah] + float oldCoulombCounterVoltageUpperThreshold = 0.0; // [V] static constexpr float CONVERT_FROM_MILLI = 1e-3; static constexpr float SECONDS_TO_HOURS = 1. / (60. * 60.); diff --git a/mission/payload/PayloadPcduHandler.cpp b/mission/payload/PayloadPcduHandler.cpp index d75ec35e..bda15b20 100644 --- a/mission/payload/PayloadPcduHandler.cpp +++ b/mission/payload/PayloadPcduHandler.cpp @@ -569,12 +569,10 @@ ReturnValue_t PayloadPcduHandler::checkModeCommand(Mode_t commandedMode, Submode if (commandedMode != MODE_OFF) { PoolReadGuard pg(&enablePl); if (pg.getReadResult() == returnvalue::OK) { - if (enablePl.plUseAllowed.isValid() and enablePl.plUseAllowed.value) { - return DeviceHandlerBase::checkModeCommand(commandedMode, commandedSubmode, - msToReachTheMode); + if (enablePl.plUseAllowed.isValid() and not enablePl.plUseAllowed.value) { + return NON_OP_STATE_OF_CHARGE; } } - return NON_OP_STATE_OF_CHARGE; } return DeviceHandlerBase::checkModeCommand(commandedMode, commandedSubmode, msToReachTheMode); } diff --git a/mission/system/objects/CamSwitcher.cpp b/mission/system/objects/CamSwitcher.cpp index 300d1cb2..93b67646 100644 --- a/mission/system/objects/CamSwitcher.cpp +++ b/mission/system/objects/CamSwitcher.cpp @@ -14,12 +14,10 @@ ReturnValue_t CamSwitcher::checkModeCommand(Mode_t commandedMode, Submode_t comm if (commandedMode != MODE_OFF) { PoolReadGuard pg(&enablePl); if (pg.getReadResult() == returnvalue::OK) { - if (enablePl.plUseAllowed.isValid() and enablePl.plUseAllowed.value) { - return PowerSwitcherComponent::checkModeCommand(commandedMode, commandedSubmode, - msToReachTheMode); + if (enablePl.plUseAllowed.isValid() and not enablePl.plUseAllowed.value) { + return TRANS_NOT_ALLOWED; } } - return TRANS_NOT_ALLOWED; } return PowerSwitcherComponent::checkModeCommand(commandedMode, commandedSubmode, msToReachTheMode);