HM-CC-TC - hat jemand die Heizung zu hoch gedreht?

Begonnen von Rohan, 27 November 2013, 21:02:33

Vorheriges Thema - Nächstes Thema

Rohan

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
Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor

betateilchen

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.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Rohan

@beta

Wie schriebst du doch vor geraumer Zeit:

gähhhhnnnn (oder so ähnlich)

War mir klar, dass *du* ...

Immer wieder "nett" mit dir  ::)

Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor