]> www.infradead.org Git - users/dwmw2/esp32-pool.git/commitdiff
Adjust output temp to reduce hysteresis
authorDavid Woodhouse <dwmw@amazon.co.uk>
Fri, 8 Sep 2023 15:54:31 +0000 (16:54 +0100)
committerDavid Woodhouse <dwmw@amazon.co.uk>
Fri, 8 Sep 2023 15:54:31 +0000 (16:54 +0100)
pool.yaml

index ee43c908fe9ef9ac1371c382f03853a250eb0bd0..34b3863c26145bd09210e23eeb88228883fab0fb 100644 (file)
--- a/pool.yaml
+++ b/pool.yaml
@@ -74,6 +74,24 @@ script:
         // We consumed this reading pair.
         //id(solar_out_fails) = id(solar_in_fails) = 1;
 
+        // We believe the output sensor is reading slightly lower than the
+        // input sensor. We see a fair amount of hysteresis, and the bypass
+        // kicks in before the output reports lower than the input... but
+        // the roof temperature continues to rise. When it gets high enough,
+        // the bypass turns off again and the warm water is pumped out. But
+        // then the reported output temperature is lower than the input again
+        // and it switches off again. Repeatedly, each 5 minutes over the
+        // course of an hour or so.
+        //
+        // By adjusting the output sensor up by about 0.1°C we attempt to
+        // reduce this hysteresis. Overcorrection would mean that we keep
+        // pumping heat into the sky for longer than we should, which is
+        // much worse than a little bit of hysteresis when the heat *is*
+        // actually accumulating in the water on the roof even while we
+        // vacillate.
+        //
+        outtemp += 0.1;
+
         if (outtemp == intemp)
           return;