Hallo zusammen,
da die HM-CC-TCs keine Möglichkeit haben (wie die HM-CC-RT-DNs), die maximal mögliche "desired-temp" fest einzustellen, kann es vorkommen, dass jemand die Einsparbemühungen unterläuft indem er (oder sie) einem übersteigerten Wärmebedarf durch eine zu hohe manuelle Temperaturwahl am HM-CC-TC nachgibt.
Um dies zu verhindern, gibt es nach mir gegebenen Auskünften nur die Möglichkeit, die "desired-temp" an den HM-CC-TC regelmäßig abzufragen und entsprechend zu reagieren. Hier ein Lösungsvorschlag:
In die fhem.cfg (oder eine andere include-cfg-Datei) kommt folgende Sequenz:
# Regelmaessige Ueberpruefung, ob an einem der HM-CC-TC
# die desired-temp groesser als 22 °C eingestellt ist.
define n_MaxDesiredTemp notify n_MaxDesiredTemp {\
my $desired_temp_max_soll=22.0;;\
my @@hmcctcs = devspec2array("model=HM-CC-TC");;\
foreach(@@hmcctcs) {\
my $desired_temp_max_ist=ReadingsVal($_, "desired-temp", "20.0");;\
if ($desired_temp_max_ist > $desired_temp_max_soll) {\
fhem("set $_ desired-temp 20.0");;\
Log(3,"HM-CC-TC " . $_ . " stand auf " . $desired_temp_max_ist . " °C");;\
}\
}\
}
attr n_MaxDesiredTemp room Heizung
Falls man den Mitbewohnern / Familienmitgliedern mehr Spielraum erlauben möchte als eine maximale Raumtemperatur von 22 °C muss man den Wert in der Zeile "my $desired_temp_max_soll=22.0;;\" entsprechend anpassen. Zudem ist festzulegen, auf welche Temperatur der TC bei Überschreitung des maximalen Sollwertes eingestellt werden soll. Dies geschieht in der Zeile "my $desired_temp_max_ist=ReadingsVal($_, "desired-temp", "20.0");;\".
Nun ist noch sicher zu stellen, dass die Überprüfung der TCs regelmäßig ausgeführt wird. Dies geschieht mittels
# notify alle 5 Minuten ausfuehren
define a_MaxDesiredTemp at +*00:05:00 trigger n_MaxDesiredTemp
attr a_MaxDesiredTemp room Heizung
alle 5 Minuten. Das kann auch an die eigenen Bedürfnisse angepasst werden. Wo dürfte in dem kurzen Code selbsterklärend sein.
Ich habe gerade 3 Tests durchgeführt.
Test 1: einen HM-CC-TC auf 24 °C gestellt
Im fhem.log steht nach Ausführung der Überprüfung
Zitat
2013.11.27 20:23:32 2: CUL_HM set OG.AZ.Heizung desired-temp 20.0
2013.11.27 20:23:32 3: HM-CC-TC OG.AZ.Heizung stand auf 24.0 °C
2013.11.27 20:23:32 2: CUL_HM set OG.AZ.Heizung_Climate desired-temp 20.0
2013.11.27 20:23:32 3: HM-CC-TC OG.AZ.Heizung_Climate stand auf 24.0 °C
Test 2: einen HM-CC-TC auf 24 °C gestellt
Im fhem.log steht nach Ausführung der Überprüfung
Zitat
2013.11.27 20:38:32 2: CUL_HM set OG.AZ.Heizung desired-temp 20.0
2013.11.27 20:38:32 3: HM-CC-TC OG.AZ.Heizung stand auf 24.5 °C
2013.11.27 20:38:32 2: CUL_HM set OG.AZ.Heizung_Climate desired-temp 20.0
2013.11.27 20:38:32 3: HM-CC-TC OG.AZ.Heizung_Climate stand auf 24.5 °C
Test 3: einen anderen HM-CC-TC auf "Übertemperatur" eingestellt
Im fhem.log steht nach Ausführung der Überprüfung
Zitat
2013.11.27 20:48:32 2: CUL_HM set EG.WZ.Heizung desired-temp 20.0
2013.11.27 20:48:32 3: HM-CC-TC EG.WZ.Heizung stand auf 25.0 °C
2013.11.27 20:48:32 2: CUL_HM set EG.WZ.Heizung_Climate desired-temp 20.0
2013.11.27 20:48:32 3: HM-CC-TC EG.WZ.Heizung_Climate stand auf 25.0 °C
Funktioniert also nach meiner Einschätzung, deshalb stelle ich es zur allgemeinen Verfügung.
Wäre nett, wenn es noch von anderen HM-CC-TC-Besitzern geprüft werden könnte, bevor ich einen Wiki-Artikel daraus mache (was keine Drohung sein soll).
Hinweise:
- Ich habe jetzt nicht überprüft, ob der Modus (Manu/Auto/Cent usw.) eine Auswirkung auf die Funktionalität hat. Ich habe meine TCs alle im Auto-Modus.
- Es erscheinen pro TC jeweils 2 Meldungen. Dies sehe ich aber nur als "unschön" an. Wer jedoch eine andere Lösung hat, nur her damit.
Gruß
Thomas
Zitat von: Rohan am 27 November 2013, 21:02:33Es erscheinen pro TC jeweils 2 Meldungen.
Stimmt nicht. Du bekommst eine Meldung vom Device EG.WZ.Heizung
2013.11.27 20:48:32 2: CUL_HM set EG.WZ.Heizung desired-temp 20.0
und eine Meldung vom Climate-Channel EG.WZ.Heizung_Climate
2013.11.27 20:48:32 2: CUL_HM set EG.WZ.Heizung_Climate desired-temp 20.0
und das ist eigentlich völlig normal.