diff --git a/fhem/FHEM/98_Heating_Control.pm b/fhem/FHEM/98_Heating_Control.pm index ed1ff4122..9f55f4551 100644 --- a/fhem/FHEM/98_Heating_Control.pm +++ b/fhem/FHEM/98_Heating_Control.pm @@ -184,16 +184,19 @@ sub Heating_Control_ConvertToWDT() {
+
+
Examples: +
define HCB Heating_Control Bad_Heizung 12345|05:20|21 12345|05:25|comfort 17:20|21 17:25|eco
- + Every day will be set the temperature at 17:20 to 21°C and 17:25 to eco. + +
define HCW Heating_Control WZ_Heizung 07:00|16 Mo,Tu,Th-Fr|16:00|18.5 20:00|12
{fhem("set dummy on"); fhem("set $NAME desired-temp $EVENT");}
- At the given times and weekdays only(!) the command will be executed.
+ At the given times and weekdays only(!) the command will be executed. +
+
define HCW Heating_Control WZ_Heizung Sa-Su,We|08:00|21 (ReadingsVal("WeAreThere", "state", "no") eq "yes")
- The temperature is only set if the dummy variable WeAreThere is "yes".
+ The temperature is only set if the dummy variable WeAreThere is "yes". +
+
define HCW Heating_Control WZ_Heizung en Su-Fr|{sunrise_abs()}|21 Mo-Fr|{sunset_abs()}|16
- The device is switched at sunrise/sunset. Language: english.
+ The device is switched at sunrise/sunset. Language: english. +
+
define HCW Heating_Control WZ_Heizung en Mo-Fr|{myFunction}|night-temp:18 Mo-Fr|{myFunction()}|dayTemp:16
- The is switched at time myFunction(). It is sent the Command "night-temp 18" and "dayTemp 16".
+ The is switched at time myFunction(). It is sent the Command "night-temp 18" and "dayTemp 16". +
+
If you want to have set all Heating_Controls their current value (after a temperature lowering phase holidays)
you can call the function Heating_Control_SetTemp("HC-device") or Heating_Control_SetAllTemps().
This call can be automatically coupled to a dummy by a notify:
define HeizStatus2 notify Heating:. * {Heating_Control_SetAllTemps()}
-
+
+
Some definitions without comment:
- the list of days can be set globaly for the whole Heating_Control:
define hc Heating_Control HeizungKueche de 7|23:35|25 34|23:30|22 23:30|16 23:15|22 8|23:45|16
@@ -276,8 +294,8 @@ sub Heating_Control_ConvertToWDT() {
define hx Heating_Control HeizungKueche de 22:35|25 23:00|16
-
+ the list of days can be set globaly for the whole Heating_Control:
+
-
+
define HeizungWohnen_an_wt Heating_Control HeizungWohnen de !$we 09:00|19 (heizungAnAus("Ein"))
define HeizungWohnen_an_we Heating_Control HeizungWohnen de $we 09:00|19 (heizungAnAus("Ein"))
@@ -285,7 +303,7 @@ sub Heating_Control_ConvertToWDT() {
define HeizungWohnen_an_we Heating_Control HeizungWohnen de 57 09:00|19 (heizungAnAus("Ein"))
define HeizungWohnen_an_we Heating_Control HeizungWohnen de fr,$we 09:00|19 (heizungAnAus("Ein"))
define hc Heating_Control HeatingBath de !$we|05:00|{HC_WithBoost(23,"HeatingBath")} $we|07:00|{HC_WithBoost(23,"HeatingBath")} 23:00|{HC_WithBoost(20,"HeatingBath")}
@@ -336,7 +354,7 @@ sub Heating_Control_ConvertToWDT() {
}
Pray that the device does not restart during your vacation, as the define defVacationEnd ... at
is volatile and will be lost at restart!
-
+
set <name> ConvertToWDT
, wobei als <name> ein beliebiges Heating_Control device angegeben werden kann. Die WeekdayTimer werden mit denselben Namen erstellt, alle früheren HC Geräte erhalten ein WDT_Group-Attribut mit Inhalt former_HC, so dass sie auch in Zukunft miteinander geschalten werden können. Statt des Aufrufs Heating_Control_SetTemp("HC-device") bzw. Heating_Control_SetAllTemps() steht Ihnen set <name> WDT_Params single
oder set <name> WDT_Params WDT_Group
zur Verfügung, sowie WeekdayTimer_SetParm("WD-device"), WeekdayTimer_SetAllParms() bzw. WeekdayTimer_SetAllParms("former_HC"), wenn Sie Perl nutzen möchten (former_HC ist hier nur ein Beispiel, es können beliebige Gruppennamen verwendet werden. define <name> Heating_Control <device> [<language>] <wochentage;] <profile> <command>|<condition>
+
+
+
+
- +
+
+
+
+
+
+ Beispiele:define HCW Heating_Control Bad_Heizung 12345|05:20|21 12345|05:25|comfort 17:20|21 17:25|eco
+ Jeden Tag wird die Temperatur um 17:20Uhr auf 21°C und 17:25Uhr auf eco gesetzt. +
define HCW Heating_Control WZ_Heizung 07:00|16 Mo,Di,Mi|16:00|18.5 20:00|12
{fhem("set dummy on"); fhem("set $NAME desired-temp $EVENT");}
- Zu den definierten Schaltzeiten wird nur(!) der in {} angegebene Perl-Code ausgeführt.
- + Zu den definierten Schaltzeiten wird nur(!) der in {} angegebene Perl-Code ausgeführt. +
+
define HCW Heating_Control WZ_Heizung Sa-So,Mi|08:00|21 (ReadingsVal("WeAreThere", "state", "no") eq "yes")
- Die zu setzende Temperatur wird nur gesetzt, falls die Dummy Variable WeAreThere = "yes" ist.
- + Die zu setzende Temperatur wird nur gesetzt, falls die Dummy Variable WeAreThere = "yes" ist. +
+
define HCW Heating_Control WZ_Heizung en Su-Fr|{sunrise_abs()}|21 Mo-Fr|{sunset_abs()}|16
- Das Gerät wird bei Sonnenaufgang und Sonnenuntergang geschaltet. Sprache: Englisch.
- + Das Gerät wird bei Sonnenaufgang und Sonnenuntergang geschaltet. Sprache: Englisch. +
+
define HCW Heating_Control WZ_Heizung en Mo-Fr|{myFunction}|night-temp:18 Mo-Fr|{myFunction()}|dayTemp:16
- Das Gerät wird bei myFunction() geschaltet. Es wird das Kommando "night-temp 18" bzw. "dayTemp 16" gesendet.
+ Das Gerät wird bei myFunction() geschaltet. Es wird das Kommando "night-temp 18" bzw. "dayTemp 16" gesendet.
Wenn du beispielsweise nach einer Temperaturabsenkungsphase erreichen willst, dass alle Heating_Controls ihren aktuellen Wert
- einstellen sollen, kannst du die Funktion Heating_Control_SetTemp("HC-device") or Heating_Control_SetAllTemps() aufrufen.
+ einstellen sollen, kannst du die Funktion Heating_Control_SetTemp("HC-device") or Heating_Control_SetAllTemps() aufrufen.
Dieser Aufruf kann per notify automatisch an ein dummy gekoppelt werden:
define HeizStatus2 notify Heizung:.* {Heating_Control_SetAllTemps()}
-
+
+
Einige Definitionen ohne weitere Erklärung:
- Die Tagesliste kann global für das ganze Heating_Control angegeben werden:
define hc Heating_Control HeizungKueche de 7|23:35|25 34|23:30|22 23:30|16 23:15|22 8|23:45|16
@@ -508,7 +539,7 @@ sub Heating_Control_ConvertToWDT() {
define hh Heating_Control HeizungKueche de {sunrise_abs_dat($date)}|19 {sunset_abs_dat($date)}|21
define hx Heating_Control HeizungKueche de 22:35|25 23:00|16
+ Die Tagesliste kann global für das ganze Heating_Control angegeben werden:
- es ist möglich den Parameter als Perlcode zu spezifizieren:
define HeizungWohnen_an_wt Heating_Control HeizungWohnen de !$we 09:00|19 (heizungAnAus("Ein"))
define HeizungWohnen_an_we Heating_Control HeizungWohnen de $we 09:00|19 (heizungAnAus("Ein"))
@@ -517,17 +548,18 @@ sub Heating_Control_ConvertToWDT() {
define HeizungWohnen_an_we Heating_Control HeizungWohnen de fr,$we 09:00|19 (heizungAnAus("Ein"))
+ es ist möglich den Parameter als Perlcode zu spezifizieren:
- ein detailiertes Beispiel ist in Heating_Control(EN) beschrieben
... 7|23:35|{getParameter(13,"this")} 7|23:36|{getParameter(14,"that")}
- -
set <name> <value>
set hc disable
set hc enable