Hallo zusammen,
ich musste gerade eine Ablösung für unseren 15 Jahre alten Zirkomat finden.
Meine (noch nicht perfekte) Lösung könnte auch bei Dir funktionieren.
Die Steuerung selbst ist direkt in Tasmota auf dem ESP8266 realisiert, Home Assistant ist da gar nicht nötig.
Installationsumfeld: Warmwasser wird aus der Kaltwasserleitung über einen Wärmetauscher erwärmt. Der Wärmetauscher wird gespeist durch einen Pufferspeicher, der von einem Thermalpanel auf dem Dach und einer Gastherme beheizt wird.
Der “verschiedene” Zirkomat war auf ca. 90 sek eingestellt. Gestartet wurde durch eine kurze Wasserentnahme am Warmwasser-Hahn. Die neue Lösung sollte ähnlich funktionieren.
Ich hatte in der Krabbelkiste noch einen SonOff TH gefunden, aber ein anderes ESP8266-Platinchen mit einem 220V-Relais sollte es auch tun.
Nach dem Flashen mit der letzten Version von tasmota-sensors (14.4.1) ging es los.
Kurz hinter dem Ausgang des Pufferspeichers kam ein Sensor DS18B20 zwischen Rohr und Isolation.
Erwärmt sich durch die kurze Wasserentnahme das Rohr, wird die Zirkulationspumpe gestartet und läuft eine vorab eingestellte Zeit.
Meine Lösung nutzte das Kommando Pulsetime und eine Rule:
Pulsetime 150 (die Zirkolationspumpe soll 90 sek laufen, warum hier nur 50sek eingestellt sind, siehe weiter unten)
RULE1
ON System#Boot do Backlog var2 150; var3 0.07; POWER OFF ENDON
ON DS18B20#Temperature DO var1 %value% ENDON
ON var1#state<=%var2% DO BACKLOG var2 %var1%; ADD2 %var3% ENDON
ON var1#state>%var2% DO BACKLOG var2 %var1%; ADD2 %var3%; POWER1 ON ENDON
var1: aktuelle Temperatur
var2: aktuelleTemperatur + Einschaltdifferenz
var3: minimaler Temperaturanstieg zwischen zwei Messungen, bei dessen Überschreitung die Zirkulationspumpe anspringen soll.
Der verwendete Sensor zeigt die Temperatur in Sprüngen von 0,06 C an, die Einschaltdifferenz von 0,07 liegt knapp darüber. Druch das Aufheizen des Pufferspeichers wird diese aber nicht überschritten.
Das funktioniert bei uns schon mal ganz gut. Es reicht schon ein kurzes Öffnen des Wasserhans <1 sek, und ein paar sek später startet die Zrikulationspumpe.
Je nach individueller Umgebung muss man evtl. mit den Werten etwas spielen, bis es zufriedenstellend funktioniert.
Die mit Pulsetime eingestellte Zeit von 50 sek wird durch Nachtriggern auf Zeiten von 80 … 130 sek verlängert, da suche ich noch nach einer Lösung, die das Nachtriggern verhindert.
Dann suche ich noch nach einer Lösung, die das Wiederanlaufen der Zirkulationspumpe über einen einstellbaren Zeitraum verhindert, z.B. 5 min, da das Wasser ja noch warm ist.
Gemessen wird ca. jede Sekunde, ist wohl Standard. Auch hier würde ich gerne eine einstellbare Zeitspanne vorsehen, weiss aber noch nicht, wie ich den Rule-Durchlauf auf andere Zeiten einstellen kann.
Grüße aus Mittelfranken, Hans