From 20fd204aa93b1e8859ff6859d6bc3329a82e3fbd Mon Sep 17 00:00:00 2001 From: Irini Kosmidou Date: Mon, 19 Dec 2022 18:45:08 +0100 Subject: [PATCH] changes thermal control --- mission/controller/ThermalController.cpp | 61 ++++++++++++++++++------ mission/controller/ThermalController.h | 3 +- 2 files changed, 49 insertions(+), 15 deletions(-) diff --git a/mission/controller/ThermalController.cpp b/mission/controller/ThermalController.cpp index 53530634..d0456c54 100644 --- a/mission/controller/ThermalController.cpp +++ b/mission/controller/ThermalController.cpp @@ -978,6 +978,7 @@ void ThermalController::copyDevices() { void ThermalController::ctrlAcsBoard() { ctrlComponentTemperature(heater::HEATER_2_ACS_BRD, heater::HEATER_0_OBC_BRD, &acsBoardLimits); } + void ThermalController::ctrlMgt() { heater::Switchers switchNr = heater::HEATER_2_ACS_BRD; heater::Switchers redSwitchNr = heater::HEATER_3_PCDU_PDU; @@ -1018,6 +1019,7 @@ void ThermalController::ctrlStr() { } } } + void ThermalController::ctrlIfBoard() { heater::Switchers switchNr = heater::HEATER_2_ACS_BRD; heater::Switchers redSwitchNr = heater::HEATER_3_PCDU_PDU; @@ -1036,33 +1038,45 @@ void ThermalController::ctrlIfBoard() { } } } + void ThermalController::ctrlTcsBoard() { ctrlComponentTemperature(heater::HEATER_0_OBC_BRD, heater::HEATER_2_ACS_BRD, &tcsBoardLimits); } + void ThermalController::ctrlObc() { ctrlComponentTemperature(heater::HEATER_0_OBC_BRD, heater::HEATER_2_ACS_BRD, &obcLimits); } + void ThermalController::ctrlObcIfBoard() { ctrlComponentTemperature(heater::HEATER_0_OBC_BRD, heater::HEATER_2_ACS_BRD, &obcIfBoardLimits); } + void ThermalController::ctrlSBandTransceiver() { - ctrlComponentTemperature(heater::HEATER_7_S_BAND, heater::HEATER_4_CAMERA, &sBandTransceiverLimits); + ctrlComponentTemperature(heater::HEATER_7_S_BAND, heater::HEATER_4_CAMERA, + &sBandTransceiverLimits); } void ThermalController::ctrlPcduP60Board() { - ctrlComponentTemperature(heater::HEATER_3_PCDU_PDU, heater::HEATER_2_ACS_BRD, &pcduP60BoardLimits); + ctrlComponentTemperature(heater::HEATER_3_PCDU_PDU, heater::HEATER_2_ACS_BRD, + &pcduP60BoardLimits); } + void ThermalController::ctrlPcduAcu() { ctrlComponentTemperature(heater::HEATER_3_PCDU_PDU, heater::HEATER_2_ACS_BRD, &pcduAcuLimits); } + void ThermalController::ctrlPcduPdu() { ctrlComponentTemperature(heater::HEATER_3_PCDU_PDU, heater::HEATER_2_ACS_BRD, &pcduPduLimits); } + void ThermalController::ctrlPlPcduBoard() { ctrlComponentTemperature(heater::HEATER_3_PCDU_PDU, heater::HEATER_2_ACS_BRD, &plPcduBoardLimits); } + void ThermalController::ctrlPlocMissionBoard() { - ctrlComponentTemperature(heater::HEATER_1_PLOC_PROC_BRD, heater::HEATER_0_OBC_BRD, &plocMissionBoardLimits); + ctrlComponentTemperature(heater::HEATER_1_PLOC_PROC_BRD, heater::HEATER_0_OBC_BRD, + &plocMissionBoardLimits); } + void ThermalController::ctrlPlocProcessingBoard() { heater::Switchers switchNr = heater::HEATER_1_PLOC_PROC_BRD; heater::Switchers redSwitchNr = heater::HEATER_0_OBC_BRD; @@ -1082,6 +1096,7 @@ void ThermalController::ctrlPlocProcessingBoard() { } } } + void ThermalController::ctrlDac() { heater::Switchers switchNr = heater::HEATER_1_PLOC_PROC_BRD; heater::Switchers redSwitchNr = heater::HEATER_0_OBC_BRD; @@ -1101,6 +1116,7 @@ void ThermalController::ctrlDac() { } } } + void ThermalController::ctrlCameraBody() { heater::Switchers switchNr = heater::HEATER_4_CAMERA; heater::Switchers redSwitchNr = heater::HEATER_6_DRO; @@ -1119,12 +1135,29 @@ void ThermalController::ctrlCameraBody() { } } -void ThermalController::ctrlDro() {} -void ThermalController::ctrlX8() {} -void ThermalController::ctrlHpa() {} -void ThermalController::ctrlTx() {} -void ThermalController::ctrlMpa() {} -void ThermalController::ctrlScexBoard() {} +void ThermalController::ctrlDro() { + ctrlComponentTemperature(heater::HEATER_6_DRO, heater::HEATER_4_CAMERA, &droLimits); +} + +void ThermalController::ctrlX8() { + ctrlComponentTemperature(heater::HEATER_6_DRO, heater::HEATER_4_CAMERA, &x8Limits); +} + +void ThermalController::ctrlTx() { + ctrlComponentTemperature(heater::HEATER_6_DRO, heater::HEATER_4_CAMERA, &txLimits); +} + +void ThermalController::ctrlMpa() { + ctrlComponentTemperature(heater::HEATER_6_DRO, heater::HEATER_4_CAMERA, &mpaLimits); +} + +void ThermalController::ctrlHpa() { + ctrlComponentTemperature(heater::HEATER_6_DRO, heater::HEATER_4_CAMERA, &hpaLimits); +} + +void ThermalController::ctrlScexBoard() { + ctrlComponentTemperature(heater::HEATER_6_DRO, heater::HEATER_5_STR, &scexBoardLimits); +} void ThermalController::ctrlHeater(heater::Switchers switchNr, heater::Switchers redSwitchNr, struct TempLimits* tempLimit) { @@ -1185,16 +1218,16 @@ void ThermalController::chooseSensor(heater::Switchers switchNr, float sensorVal } } -void ThermalController::ctrlComponentTemperature(heater::Switchers switchNr, heater::Switchers redSwitchNr, TempLimits *tempLimit) { - +void ThermalController::ctrlComponentTemperature(heater::Switchers switchNr, + heater::Switchers redSwitchNr, + TempLimits* tempLimit) { chooseHeater(switchNr, redSwitchNr); if (heaterAvailable) { - //chooseSensor(); //TODO + // chooseSensor(); //TODO if (sensorTempAvailable) { ctrlHeater(switchNr, redSwitchNr, tempLimit); } } -} - +} \ No newline at end of file diff --git a/mission/controller/ThermalController.h b/mission/controller/ThermalController.h index 35707ff5..874297fd 100644 --- a/mission/controller/ThermalController.h +++ b/mission/controller/ThermalController.h @@ -154,7 +154,8 @@ class ThermalController : public ExtendedControllerBase { void copySus(); void copyDevices(); - void ctrlComponentTemperature(heater::Switchers switchNr, heater::Switchers redSwitchNr, TempLimits *tempLimit); + void ctrlComponentTemperature(heater::Switchers switchNr, heater::Switchers redSwitchNr, + TempLimits* tempLimit); void ctrlHeater(heater::Switchers switchNr, heater::Switchers redSwitchNr, struct TempLimits* tempLimit); void chooseHeater(heater::Switchers& switchNr, heater::Switchers redSwitchNr);