improvements for heater handler
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit

This commit is contained in:
2022-11-28 08:56:36 +01:00
parent 46165f8166
commit 868ba0cd03
4 changed files with 22 additions and 16 deletions

View File

@@ -105,23 +105,25 @@ void ThermalController::performControlOperation() {
}
// TODO: Heater control
//TODO: Hysterese offset
if(heaterHandler.heaterVec[heater::HEATER_4_CAMERA].switchState == HeaterHandler::SwitchState::OFF){
if(sensorTemperatures.sensor_4k_camera.value < cameraLimits.opLowerLimit) {
// TODO: Hysterese offset
if (heaterHandler.heaterVec[heater::HEATER_4_CAMERA].switchState ==
HeaterHandler::SwitchState::OFF) {
if (sensorTemperatures.sensor_4k_camera.value < cameraLimits.opLowerLimit) {
heaterHandler.heaterVec[heater::HEATER_4_CAMERA].cmdActive = true;
heaterHandler.heaterVec[heater::HEATER_4_CAMERA].action = HeaterHandler::SET_SWITCH_ON;
heaterHandler.handleSwitchOnCommand(heater::HEATER_4_CAMERA);
heater4Countdown.resetTimer();
}
}else if(heaterHandler.heaterVec[heater::HEATER_4_CAMERA].switchState == HeaterHandler::SwitchState::ON){
if(sensorTemperatures.sensor_4k_camera.value < cameraLimits.opLowerLimit){
if(heater4Countdown.hasTimedOut()){
} else if (heaterHandler.heaterVec[heater::HEATER_4_CAMERA].switchState ==
HeaterHandler::SwitchState::ON) {
if (sensorTemperatures.sensor_4k_camera.value < cameraLimits.opLowerLimit) {
if (heater4Countdown.hasTimedOut()) {
heaterHandler.heaterVec[heater::HEATER_4_CAMERA].cmdActive = true;
heaterHandler.heaterVec[heater::HEATER_4_CAMERA].action = HeaterHandler::SET_SWITCH_OFF;
//triggerEvent(HEATER_TIMEOUT, heater::HEATER_4_CAMERA);
// triggerEvent(HEATER_TIMEOUT, heater::HEATER_4_CAMERA);
heaterHandler.handleSwitchOffCommand(heater::HEATER_4_CAMERA);
}
}else {
} else {
heaterHandler.heaterVec[heater::HEATER_4_CAMERA].cmdActive = true;
heaterHandler.heaterVec[heater::HEATER_4_CAMERA].action = HeaterHandler::SET_SWITCH_OFF;
heaterHandler.handleSwitchOffCommand(heater::HEATER_4_CAMERA);

View File

@@ -53,11 +53,10 @@ class ThermalController : public ExtendedControllerBase {
private:
static const uint32_t DELAY = 500;
static const uint32_t OP_TIME = 1000; //TODO to be changed
static const uint32_t OP_TIME = 1000; // TODO to be changed
enum class InternalState { STARTUP, INITIAL_DELAY, READY };
InternalState internalState = InternalState::STARTUP;
HeaterHandler& heaterHandler;