changes thermal control
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
This commit is contained in:
parent
6365f497a7
commit
8bfe2405cd
@ -975,7 +975,9 @@ void ThermalController::copyDevices() {
|
||||
}
|
||||
}
|
||||
|
||||
void ThermalController::ctrlAcsBoard() {}
|
||||
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;
|
||||
@ -984,8 +986,7 @@ void ThermalController::ctrlMgt() {
|
||||
|
||||
if (heaterAvailable) {
|
||||
chooseSensor(switchNr, sensorTemperatures.sensor_magnettorquer.value,
|
||||
deviceTemperatures.mgt.value,
|
||||
sensorTemperatures.sensor_plpcdu_heatspreader.value,
|
||||
deviceTemperatures.mgt.value, sensorTemperatures.sensor_plpcdu_heatspreader.value,
|
||||
sensorTemperatures.sensor_magnettorquer.isValid(),
|
||||
deviceTemperatures.mgt.isValid(),
|
||||
sensorTemperatures.sensor_plpcdu_heatspreader.isValid());
|
||||
@ -996,7 +997,9 @@ void ThermalController::ctrlMgt() {
|
||||
}
|
||||
}
|
||||
|
||||
void ThermalController::ctrlRw() {}
|
||||
void ThermalController::ctrlRw() {
|
||||
ctrlComponentTemperature(heater::HEATER_6_DRO, heater::HEATER_6_DRO, &rwLimits);
|
||||
}
|
||||
|
||||
void ThermalController::ctrlStr() {
|
||||
heater::Switchers switchNr = heater::HEATER_5_STR;
|
||||
@ -1006,11 +1009,9 @@ void ThermalController::ctrlStr() {
|
||||
|
||||
if (heaterAvailable) {
|
||||
chooseSensor(switchNr, sensorTemperatures.sensor_startracker.value,
|
||||
deviceTemperatures.startracker.value,
|
||||
sensorTemperatures.sensor_dro.value,
|
||||
deviceTemperatures.startracker.value, sensorTemperatures.sensor_dro.value,
|
||||
sensorTemperatures.sensor_startracker.isValid(),
|
||||
deviceTemperatures.startracker.isValid(),
|
||||
sensorTemperatures.sensor_dro.isValid());
|
||||
deviceTemperatures.startracker.isValid(), sensorTemperatures.sensor_dro.isValid());
|
||||
|
||||
if (sensorTempAvailable) {
|
||||
ctrlHeater(switchNr, redSwitchNr, &strLimits);
|
||||
@ -1025,8 +1026,7 @@ void ThermalController::ctrlIfBoard() {
|
||||
|
||||
if (heaterAvailable) {
|
||||
chooseSensor(switchNr, sensorTemperatures.tmp1075IfBrd.value,
|
||||
sensorTemperatures.sensor_magnettorquer.value,
|
||||
deviceTemperatures.mgm2SideB.value,
|
||||
sensorTemperatures.sensor_magnettorquer.value, deviceTemperatures.mgm2SideB.value,
|
||||
sensorTemperatures.tmp1075IfBrd.isValid(),
|
||||
sensorTemperatures.sensor_magnettorquer.isValid(),
|
||||
deviceTemperatures.mgm2SideB.isValid());
|
||||
@ -1036,17 +1036,71 @@ void ThermalController::ctrlIfBoard() {
|
||||
}
|
||||
}
|
||||
}
|
||||
void ThermalController::ctrlTcsBoard() {}
|
||||
void ThermalController::ctrlObc() {}
|
||||
void ThermalController::ctrlObcIfBoard() {}
|
||||
void ThermalController::ctrlSBandTransceiver() {}
|
||||
void ThermalController::ctrlPcduP60Board() {}
|
||||
void ThermalController::ctrlPcduAcu() {}
|
||||
void ThermalController::ctrlPcduPdu() {}
|
||||
void ThermalController::ctrlPlPcduBoard() {}
|
||||
void ThermalController::ctrlPlocMissionBoard() {}
|
||||
void ThermalController::ctrlPlocProcessingBoard() {}
|
||||
void ThermalController::ctrlDac() {}
|
||||
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);
|
||||
}
|
||||
void ThermalController::ctrlPcduP60Board() {
|
||||
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);
|
||||
}
|
||||
void ThermalController::ctrlPlocProcessingBoard() {
|
||||
heater::Switchers switchNr = heater::HEATER_1_PLOC_PROC_BRD;
|
||||
heater::Switchers redSwitchNr = heater::HEATER_0_OBC_BRD;
|
||||
|
||||
chooseHeater(switchNr, redSwitchNr);
|
||||
|
||||
if (heaterAvailable) {
|
||||
chooseSensor(switchNr, sensorTemperatures.sensor_ploc_missionboard.value,
|
||||
sensorTemperatures.sensor_ploc_heatspreader.value,
|
||||
sensorTemperatures.sensor_dac_heatspreader.value,
|
||||
sensorTemperatures.sensor_ploc_missionboard.isValid(),
|
||||
sensorTemperatures.sensor_ploc_heatspreader.isValid(),
|
||||
sensorTemperatures.sensor_dac_heatspreader.isValid());
|
||||
|
||||
if (sensorTempAvailable) {
|
||||
ctrlHeater(switchNr, redSwitchNr, &plocProcessingBoardLimits);
|
||||
}
|
||||
}
|
||||
}
|
||||
void ThermalController::ctrlDac() {
|
||||
heater::Switchers switchNr = heater::HEATER_1_PLOC_PROC_BRD;
|
||||
heater::Switchers redSwitchNr = heater::HEATER_0_OBC_BRD;
|
||||
|
||||
chooseHeater(switchNr, redSwitchNr);
|
||||
|
||||
if (heaterAvailable) {
|
||||
chooseSensor(switchNr, sensorTemperatures.sensor_dac_heatspreader.value,
|
||||
sensorTemperatures.sensor_ploc_missionboard.value,
|
||||
sensorTemperatures.sensor_ploc_heatspreader.value,
|
||||
sensorTemperatures.sensor_dac_heatspreader.isValid(),
|
||||
sensorTemperatures.sensor_ploc_missionboard.isValid(),
|
||||
sensorTemperatures.sensor_ploc_heatspreader.isValid());
|
||||
|
||||
if (sensorTempAvailable) {
|
||||
ctrlHeater(switchNr, redSwitchNr, &dacLimits);
|
||||
}
|
||||
}
|
||||
}
|
||||
void ThermalController::ctrlCameraBody() {
|
||||
heater::Switchers switchNr = heater::HEATER_4_CAMERA;
|
||||
heater::Switchers redSwitchNr = heater::HEATER_6_DRO;
|
||||
@ -1072,7 +1126,8 @@ void ThermalController::ctrlTx() {}
|
||||
void ThermalController::ctrlMpa() {}
|
||||
void ThermalController::ctrlScexBoard() {}
|
||||
|
||||
void ThermalController::ctrlHeater(heater::Switchers switchNr, heater::Switchers redSwitchNr, struct TempLimits *tempLimit) {
|
||||
void ThermalController::ctrlHeater(heater::Switchers switchNr, heater::Switchers redSwitchNr,
|
||||
struct TempLimits* tempLimit) {
|
||||
// Heater off
|
||||
if (not heaterHandler.checkSwitchState(switchNr)) {
|
||||
// TODO: check if OP or NOP
|
||||
@ -1128,4 +1183,18 @@ void ThermalController::chooseSensor(heater::Switchers switchNr, float sensorVal
|
||||
triggerEvent(NO_VALID_SENSOR_TEMPERATURE, switchNr);
|
||||
sensorTempAvailable = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void ThermalController::ctrlComponentTemperature(heater::Switchers switchNr, heater::Switchers redSwitchNr, TempLimits *tempLimit) {
|
||||
|
||||
chooseHeater(switchNr, redSwitchNr);
|
||||
|
||||
if (heaterAvailable) {
|
||||
//chooseSensor(); //TODO
|
||||
|
||||
if (sensorTempAvailable) {
|
||||
ctrlHeater(switchNr, redSwitchNr, tempLimit);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -154,7 +154,9 @@ class ThermalController : public ExtendedControllerBase {
|
||||
void copySus();
|
||||
void copyDevices();
|
||||
|
||||
void ctrlHeater(heater::Switchers switchNr, heater::Switchers redSwitchNr, struct 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);
|
||||
void chooseSensor(heater::Switchers switchNr, float sensorValue1, float sensorValue2,
|
||||
float sensorValue3, bool sensor1Valid, bool sensor2Valid, bool sensor3Valid);
|
||||
|
Loading…
x
Reference in New Issue
Block a user