Heater Handling #325

Merged
muellerr merged 78 commits from heater_handling into develop 2023-02-08 21:35:05 +01:00
Showing only changes of commit 17a336ba0a - Show all commits

View File

@ -8,8 +8,14 @@
#include <mission/devices/devicedefinitions/SusDefinitions.h>
#include <mission/devices/devicedefinitions/Tmp1075Definitions.h>
/**
* NOP Limit: Hard limit for device, usually from datasheet. Device damage is possible lif NOP limit
* is exceeded.
* OP Limit: Soft limit. Device should be switched off or TCS controller should take action if the limit
* is exceeded to avoid reaching NOP limit
*/
struct TempLimits {
TempLimits(float opLowerLimit, float opUpperLimit, float nopLowerLimit, float nsopUpperLimit) : opLowerLimit(opLowerLimit), opUpperLimit(opUpperLimit), nopLowerLimit(nopLowerLimit), nopUpperLimit(nopUpperLimit) {}
TempLimits(float nopLowerLimit, float opLowerLimit, float opUpperLimit, float nopUpperLimit) : opLowerLimit(opLowerLimit), opUpperLimit(opUpperLimit), nopLowerLimit(nopLowerLimit), nopUpperLimit(nopUpperLimit) {}
float opLowerLimit;
float opUpperLimit;
float nopLowerLimit;
@ -88,20 +94,20 @@ class ThermalController : public ExtendedControllerBase {
//TempLimits
//TempLimits plocHeatspreaderLimits = TempLimits(-20.0, 70.0, -30.0, 80.0);
//TempLimits plocMissionBoardLimits = TempLimits(-20.0, 70.0, -30.0, 80.0);
TempLimits cameraLimits = TempLimits(-30.0, 65.0, -40.0, 85.0);
TempLimits dacHeatspreaderLimits = TempLimits(-40.0, 118.0, -65.0, 150.0);
TempLimits strLimits = TempLimits(-20.0, 70.0, -30.0, 80.0);
TempLimits rw1Limits = TempLimits(-40.0, 85.0, -40.0, 85.0);
TempLimits cameraLimits = TempLimits(-40.0, -30.0, 65.0, 85.0);
TempLimits dacHeatspreaderLimits = TempLimits(-65.0, -40.0, 118.0, 150.0);
TempLimits strLimits = TempLimits(-30.0, -20.0, 70.0, 80.0);
TempLimits rw1Limits = TempLimits(-40.0, -40.0, 85.0, 85.0);
//TempLimits droLimits = TempLimits(-20.0, 70.0, -30.0, 80.0);
TempLimits scexLimits = TempLimits(-40.0, 85.0, -60.0, 150.0);
TempLimits scexLimits = TempLimits(-60.0, -40.0, 85.0, 150.0);
//TempLimits x8Limits = TempLimits(-20.0, 70.0, -30.0, 80.0);
//TempLimits hpaLimits = TempLimits(-20.0, 70.0, -30.0, 80.0);
//TempLimits txModuleLimits = TempLimits(-20.0, 70.0, -30.0, 80.0);
//TempLimits mpaLimits = TempLimits(-20.0, 70.0, -30.0, 80.0);
TempLimits acuLimits = TempLimits(-35.0, 85.0, -55.0, 150.0); //TODO nopLimits
TempLimits plpcduHeatspreaderLimits = TempLimits(-40.0, 85.0, -65.0, 125.0); //TODO check
TempLimits tcsBoardLimits = TempLimits(-40.0, 85.0, -60.0, 130.0);
TempLimits magnettorquerLimits = TempLimits(-40.0, 70.0, -30.0, 80.0); //TODO nopLimits
TempLimits acuLimits = TempLimits(-55.0, -35.0, 85.0, 150.0); //TODO nopLimits
TempLimits plpcduHeatspreaderLimits = TempLimits(-65.0, -40.0, 85.0, 125.0); //TODO check
TempLimits tcsBoardLimits = TempLimits(-60.0, -40.0, 85.0, 130.0);
TempLimits magnettorquerLimits = TempLimits(-40.0, -30.0, 70.0, 80.0); //TODO nopLimits
// Initial delay to make sure all pool variables have been initialized their owners