mirror of
https://github.com/Laxilef/OTGateway.git
synced 2025-12-11 02:34:29 +05:00
feature: use pid in emergency mode
This commit is contained in:
@@ -91,12 +91,33 @@ protected:
|
||||
prevEtResult = etResult;
|
||||
newTemp += etResult;
|
||||
|
||||
Log.sinfoln("REGULATOR.EQUITHERM", F("New emergency result: %u (%f)"), (int) round(etResult), etResult);
|
||||
Log.sinfoln("REGULATOR.EQUITHERM", F("New emergency result: %hhu (%f)"), (uint8_t) round(etResult), etResult);
|
||||
|
||||
} else {
|
||||
newTemp += prevEtResult;
|
||||
}
|
||||
|
||||
} else if(settings.emergency.usePid && settings.sensors.indoor.type != 1) {
|
||||
if (vars.parameters.heatingEnabled) {
|
||||
float pidResult = getPidTemp(
|
||||
settings.heating.minTemp,
|
||||
settings.heating.maxTemp
|
||||
);
|
||||
|
||||
if (fabs(prevPidResult - pidResult) + 0.0001 >= 0.5) {
|
||||
prevPidResult = pidResult;
|
||||
newTemp += pidResult;
|
||||
|
||||
Log.sinfoln("REGULATOR.PID", F("New emergency result: %hhu (%f)"), (uint8_t) round(pidResult), pidResult);
|
||||
|
||||
} else {
|
||||
newTemp += prevPidResult;
|
||||
}
|
||||
|
||||
} else if (!vars.parameters.heatingEnabled && prevPidResult != 0) {
|
||||
newTemp += prevPidResult;
|
||||
}
|
||||
|
||||
} else {
|
||||
// default temp, manual mode
|
||||
newTemp = settings.emergency.target;
|
||||
@@ -126,7 +147,7 @@ protected:
|
||||
prevEtResult = etResult;
|
||||
newTemp += etResult;
|
||||
|
||||
Log.sinfoln("REGULATOR.EQUITHERM", F("New result: %u (%f)"), (int) round(etResult), etResult);
|
||||
Log.sinfoln("REGULATOR.EQUITHERM", F("New result: %hhu (%f)"), (uint8_t) round(etResult), etResult);
|
||||
|
||||
} else {
|
||||
newTemp += prevEtResult;
|
||||
@@ -144,7 +165,7 @@ protected:
|
||||
prevPidResult = pidResult;
|
||||
newTemp += pidResult;
|
||||
|
||||
Log.sinfoln("REGULATOR.PID", F("New result: %d (%f)"), (int) round(pidResult), pidResult);
|
||||
Log.sinfoln("REGULATOR.PID", F("New result: %hh (%f)"), (int8_t) round(pidResult), pidResult);
|
||||
|
||||
} else {
|
||||
newTemp += prevPidResult;
|
||||
|
||||
Reference in New Issue
Block a user