changes thermal control
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good

This commit is contained in:
Irini Kosmidou 2022-12-20 15:47:40 +01:00
parent 20fd204aa9
commit bac8166611
2 changed files with 12 additions and 8 deletions

View File

@ -105,7 +105,8 @@ void ThermalController::performControlOperation() {
} }
// TODO: Heater control // TODO: Heater control
ctrlAcsBoard(); ctrlCameraBody();
/*ctrlAcsBoard();
ctrlMgt(); ctrlMgt();
ctrlRw(); ctrlRw();
ctrlStr(); ctrlStr();
@ -121,13 +122,13 @@ void ThermalController::performControlOperation() {
ctrlPlocMissionBoard(); ctrlPlocMissionBoard();
ctrlPlocProcessingBoard(); ctrlPlocProcessingBoard();
ctrlDac(); ctrlDac();
ctrlCameraBody();
ctrlDro(); ctrlDro();
ctrlX8(); ctrlX8();
ctrlHpa(); ctrlHpa();
ctrlTx(); ctrlTx();
ctrlMpa(); ctrlMpa();
ctrlScexBoard(); ctrlScexBoard();*/
} }
ReturnValue_t ThermalController::initializeLocalDataPool(localpool::DataPool& localDataPoolMap, ReturnValue_t ThermalController::initializeLocalDataPool(localpool::DataPool& localDataPoolMap,
@ -1121,7 +1122,7 @@ void ThermalController::ctrlCameraBody() {
heater::Switchers switchNr = heater::HEATER_4_CAMERA; heater::Switchers switchNr = heater::HEATER_4_CAMERA;
heater::Switchers redSwitchNr = heater::HEATER_6_DRO; heater::Switchers redSwitchNr = heater::HEATER_6_DRO;
chooseHeater(switchNr, redSwitchNr); //chooseHeater(switchNr, redSwitchNr);
if (heaterAvailable) { if (heaterAvailable) {
chooseSensor(switchNr, sensorTemperatures.sensor_4k_camera.value, chooseSensor(switchNr, sensorTemperatures.sensor_4k_camera.value,
@ -1130,7 +1131,7 @@ void ThermalController::ctrlCameraBody() {
sensorTemperatures.sensor_dro.isValid(), sensorTemperatures.sensor_mpa.isValid()); sensorTemperatures.sensor_dro.isValid(), sensorTemperatures.sensor_mpa.isValid());
if (sensorTempAvailable) { if (sensorTempAvailable) {
ctrlHeater(switchNr, redSwitchNr, &cameraLimits); //ctrlHeater(switchNr, redSwitchNr, &cameraLimits);
} }
} }
} }
@ -1191,7 +1192,8 @@ void ThermalController::chooseHeater(heater::Switchers& switchNr, heater::Switch
redSwitchNrInUse = true; redSwitchNrInUse = true;
} else { } else {
heaterAvailable = false; heaterAvailable = false;
// TODO: triggerEvent ? //TODO: triggerEvent(NO_HEALTHY_HEATER_AVAILABLE, switchNr, redSwitchNr);
sif::error << "ThermalController::chooseSensor: Both heater: "<< switchNr << " + " << redSwitchNr << " not healthy" << std::endl;
} }
} else { } else {
redSwitchNrInUse = false; redSwitchNrInUse = false;
@ -1213,7 +1215,8 @@ void ThermalController::chooseSensor(heater::Switchers switchNr, float sensorVal
if (heaterHandler.checkSwitchState(switchNr)) { if (heaterHandler.checkSwitchState(switchNr)) {
heaterHandler.switchHeater(switchNr, HeaterHandler::SwitchState::OFF); heaterHandler.switchHeater(switchNr, HeaterHandler::SwitchState::OFF);
} }
triggerEvent(NO_VALID_SENSOR_TEMPERATURE, switchNr); //TODO: triggerEvent(NO_VALID_SENSOR_TEMPERATURE, switchNr);
sif::error << "ThermalController::chooseSensor: No valid Sensor found"<< std::endl;
sensorTempAvailable = false; sensorTempAvailable = false;
} }
} }

View File

@ -55,7 +55,8 @@ class ThermalController : public ExtendedControllerBase {
private: private:
static const uint8_t SUBSYSTEM_ID = SUBSYSTEM_ID::HEATER_HANDLER; static const uint8_t SUBSYSTEM_ID = SUBSYSTEM_ID::HEATER_HANDLER;
static constexpr Event NO_VALID_SENSOR_TEMPERATURE = MAKE_EVENT(0, severity::LOW); static constexpr Event NO_VALID_SENSOR_TEMPERATURE = MAKE_EVENT(8, severity::MEDIUM);
static constexpr Event NO_HEALTHY_HEATER_AVAILABLE = MAKE_EVENT(9, severity::MEDIUM);
static const uint32_t DELAY = 500; static const uint32_t DELAY = 500;