Automatische Aktivierung der Heizperiode

Themen auf die es innerhalb eines Jahres keine Antwort gab, werden hier archiviert.

Moderatoren: Cyrelian, seppy, udo1toni

Gesperrt
Benutzeravatar
seppy
Beiträge: 738
Registriert: 24. Sep 2015 20:25
Answers: 4
Wohnort: Bonn

Automatische Aktivierung der Heizperiode

Beitrag von seppy »

Hallo Zusammen,

da ich keine Lust habe die Heizperiode manuell zu aktivieren, habe ich mir eine simple Rule dafür gebaut. Der Vorteil ist, dass die Heizperiode auch wieder deaktiviert wird, wenn beispielsweise nach einem kalten Herbstanfang die Temperaturen wieder deutlich ansteigen.

So hab ich das gelöst:
1) Die Items:
Ich habe einen Temperatur Differenzsensor, den ich auch zur Erkennung von direkter Sonneneinstrahlung nutze. Dazu aber ein andermal.
Er liefert ca. jede Minute einen Temperaturwert von draußen. Zusätzlich habe ich diese Informationen persistiert.

Außentemperatur:

Code: Alles auswählen

Number WeatherTempDiffSensor1State
	"Temperatur Sensor 1 [%.1f °C]"
	<temperature>
	(gWetter)
	{homematic="address=XXXXXX, channel=1, parameter=TEMPERATURE" }
Den Schalter für die Heizperiode

Code: Alles auswählen

/**
 * Switch für Heizperiode
 */
Switch GlobalHeatingPeriod
	"Heizperiode"
	(gSystem)
Und den Schwellwert.

Ich habe diesen auch über die Sitemap konfigurierbar gemacht, so kann auch meine Frau jederzeit den Schwellwert anpassen.

Code: Alles auswählen

/**
 * Schwellwert für Heizperiode
 */
Number GlobalHeatingPeriodThreshold
	"Schwellwert für Heizperiode [%.1f °C]"
	(gSystem)
Der Sitemap Eintrag sind so aus:

Code: Alles auswählen

Selection item=GlobalHeatingPeriodThreshold  icon="temperature" label="Schwellwert Heizperiode" mappings=[15="15°C", 16="16°C", 17="17°C", 18="18°C", 19="19°C", 20="20°C", 21="21°C"]
2) Die Rule:

Die Regel aktiviert die Heizperiode, wenn in den vergangenen 5 Tagen die Durchschnittstemperatur unter dem angegebenen Schwellwert lag und schickt gleichzeitig eine WhatsApp Nachricht.
Auslöser für eine Prüfung ist entweder eine Veränderung des Schwellwerts oder ein Update der Aussentemperatur.

Code: Alles auswählen

/**
 * Heizperiode schalten
 */
rule "Event_GlobalHeatingPeriod"
when
	Item GlobalHeatingPeriodThreshold received update or
	Item WeatherTempDiffSensor2State received update
then
	var String rulemsg = null
	// Prüfen ob Aussentemperatur unter Schwellwert liegt
	if (WeatherTempDiffSensor2State.averageSince(now.minusDays(5)) < GlobalHeatingPeriodThreshold.state as DecimalType && GlobalHeatingPeriod.state == OFF){
		rulemsg = "Die durchschnittliche Aussentemperatur der letzten 5 Tage (" + WeatherTempDiffSensor2State.averageSince(now.minusDays(5)).format("%.2f °C") + ") lag unter dem festgelegten Schwellwert (" + GlobalHeatingPeriodThreshold.state + "°C). Heizperiode wird aktiviert."
		postUpdate(GlobalHeatingPeriod, ON)
		logInfo("HomeBox.SystemRules:Event_GlobalHeatingPeriod", rulemsg)
		executeCommandLine("/opt/yowsup/yowsup-cli@@demos@@-c@@/opt/yowsup/homebox.config@@-s@@XXXX@@" + rulemsg + "") 
	} else if (WeatherTempDiffSensor2State.averageSince(now.minusDays(5)) >= GlobalHeatingPeriodThreshold.state as DecimalType && GlobalHeatingPeriod.state == ON){
		rulemsg = "Die durchschnittliche Aussentemperatur der letzten 5 Tage (" + WeatherTempDiffSensor2State.averageSince(now.minusDays(5)).format("%.2f °C") + ") lag über dem festgelegten Schwellwert (" + GlobalHeatingPeriodThreshold.state + "°C). Heizperiode wird deaktiviert."
		postUpdate(GlobalHeatingPeriod, OFF)
		logInfo("HomeBox.SystemRules:Event_GlobalHeatingPeriod", rulemsg)
		executeCommandLine("/opt/yowsup/yowsup-cli@@demos@@-c@@/opt/yowsup/homebox.config@@-s@@XXXX@@" + rulemsg + "") 
	} 
	rulemsg = null
end


Vielleicht nutzt das Spielchen jemandem. Wenn Fragen sind, einfach hier posten!

Grüße,
Seppy
Homematic und HomematicIP über Raspberrymatic (RaspPi 4 4GB) mit 2x HMLAN. Steuerung und Visualisierung durch OpenHAB2 auf RaspPi in Hutschienengehäuse im Sicherungskasten. Rund 100 Aktoren/Sensoren

- Abgesichert durch APC USV
- Bewässerungssteuerung mit Hunter Magnetventilen (HM-LC-Sw4-DR)
- Beleuchtungssteuerung Innen und Aussen (HM-LC-Sw4-DR + HM-LC-SW1-FM + HMW-IO-12-SW7-DR)
- Rolladensteuerung mit Beschattungsautomatik über Temperaturdifferenzsensor (HM-LC-Bl1PBU-FM)
- Wetter und Unwetterinformationen von wunderground
- Benachrichtigung der Bewohner via Pushover
- Multimediawand und Dreambox Steuerung (HM-LC-SW1-FM)
- Heizungssteuerung mit Komfort und Energiesparfunktionen (HM-CC-RT-DN + HM-Sec-SC-2 + HMIP-eTRV-2)
- Werkstatt Kompressorsteuerung (HMW-IO-12-SW7-DR)
- Weihnachtsbeleuchtung außen
- Präsenzerkennung über Geolocation (iCloud Binding), iBeacon und WLAN (Unifi Binding)
- Philips HUE & Tasmota Devices (Tuya) Einbindung

Gesperrt