Heizungssteuerung über Systemvariable und script hakt

Allgemeines zur HomeMatic Haussteuerung

Moderator: Co-Administratoren

Framajo
Beiträge: 71
Registriert: 14.03.2018, 17:13
Danksagung erhalten: 2 Mal

Heizungssteuerung über Systemvariable und script hakt

Beitrag von Framajo » 23.01.2019, 08:10

Hallo Gemeinde,

ich betreibe eine raspberrymatic, auf welcher folgendes Szenario läuft: Über ein google Kalender script wird die Anwesenheit meiner Kinder im google Kalender ausgelesen und entsprechend eine Systemvariable "Kinder da" gefüllt (wahr oder falsch). Das klappt ohne Probleme, die Variable wird ríchtig gefüllt.

Nun soll über ein Programm, welches täglich um 06:30 ausgeführt wird, basierend auf der Systemvariable die Heizung hochgefahren werden (wenn Kinder da = 1) oder eben nicht (Kinder da = 0). Die HMIP Heizkörperthermostate hängen entsprechend an der raspberrymatic.

Leider klappt das nicht; die Heizkörper werden angesteuert, dass sie aufmachen sollen, aber wenn Kinder da = 0, dann wird die SOLL eben NICHT auf 10° gesetzt. Ich habe in der Bedingung alles probiert (bei Aktualisierung auslösen, nur prüfen, bei Änderung auslösen). (Die Verzögerung im Programm kommt noch von CCU2 Zeiten, um den duty-cycle zu entlasten ;-)

Die logische Folgerung des Programmes soll sein: WENN Kinderda=1, dann starte Wochenprogramm, sonst alles auf 10°. Wo ist mein Denkfehler, oder müßte ich ein zweites Programm schreiben, welches die Heizkörper wieder auf 10° stellt?

Dank euch für den Denkanstoß,

F.
Heizungsprogramm.JPG

manfredh
Beiträge: 4155
Registriert: 09.09.2012, 10:41
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 78 Mal
Danksagung erhalten: 301 Mal

Re: Heizungssteuerung über Systemvariable und script hakt

Beitrag von manfredh » 23.01.2019, 09:11

Hallo F.,

zuerst mal ein paar Klarstellungen:

Du machst die Steuerung offensichtlich nicht über ein Script, sondern über ein (WebUi-)Programm. Ein Script sieht anders aus, als reiner Text mit Programmcode u.s.w.

Außerdem entlastest du mit Verzögerungen (außer sie sind in der Größenordnung von > 0,5 h) nicht den DutyCycle sondern verhinderst Funkkollisionen.

Aber zum eigentlichen Thema:

Ist dir klar, dass das einfache setzen einer Solltemperatur nur bis zum nächsten Schaltzeitpunkt des Wochenprogrammes erhalten bleibt?

Um eine gezielt eingestellte Solltemperatur dauerhaft zu halten, muss der Auto-Modus ausgeschaltet werden, sprich: der Manu-Modus aktiv sein.

Gruß
Manfred
Es gibt 10 Arten von Menschen: solche die Binärcode verstehen und solche, die ihn nicht verstehen.

Xel66
Beiträge: 14169
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 586 Mal
Danksagung erhalten: 1501 Mal

Re: Heizungssteuerung über Systemvariable und script hakt

Beitrag von Xel66 » 23.01.2019, 09:21

Framajo hat geschrieben:
23.01.2019, 08:10
Leider klappt das nicht; die Heizkörper werden angesteuert, dass sie aufmachen sollen, aber wenn Kinder da = 0, dann wird die SOLL eben NICHT auf 10° gesetzt.
Da Du mit Profilen arbeitetst, gehe ich mal davon aus, dass sich die Thermostate im Automatikmodus befinden. Das heißt, die Solltemperaturen folgen den im Profil hinterlegten Zeiten. Du setzt aber im SONST nur die Solltemperatur und stellst die Thermostate nicht auf manuell. Somit läuft das Profil mit seinen Zeiten weiter. Ich gehe mal davon aus, dass sich die IP-Thermostate da so verhalten, wie die klassischen.

Ich würde da anders vorgehen. Ich würde auf das Ändern der Kinder-Anwesenheit reagieren und abhängig davon die Thermostate in den Automatikmodus oder eben manuellen Modus mit Absenktemperatur schalten. Mit Deiner Lösung funkst Du bei Änderung/Aktualisierung der Variable jeden Tag um 06:30 Uhr (ich denke mal, dass ist der Zeitpunkt, an dem die Variable gesetzt wird, denn die von Dir angegebene Zeit ist im Programm nicht ersichtlich) die 10°C Solltemperatur rum, denn das SONST wird auch ausgeführt, wenn sich die Variable nicht ändert. Darum würde ich dieses in einem SONST WENN unterbringen und eben auf "0" bei Änderung triggern.

Mein manuellen Ausführen des Programms wird immer das DANN abgearbeitet, egal, wie die Systemvariable steht. Du kannst das Programm also nur durch Umschalten der Variable testen.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

Framajo
Beiträge: 71
Registriert: 14.03.2018, 17:13
Danksagung erhalten: 2 Mal

Re: Heizungssteuerung über Systemvariable und script hakt

Beitrag von Framajo » 23.01.2019, 12:36

Ok, danke euch schon mal.

Dann setze ich ein Programm 1 auf mit den eigentlichen Steuerungszeitpunkten (Kinder da) und das Programm 2 dann dauerhaft auf 10° - wäre das ein gangbarer Weg? Die Wochenprogramme beziehen sich ja immer auf den Aktor, in diesem Fall die Thermostate, richtig?

Wie "prüfe" ich dann die Bedingung? Also mit "bei Aktualisierung" oder "nur prüfen" oder "bei Änderung"?


Wie Xel66 schrieb, wird der Kalender täglich um 06:30 ausgelesen und die Variable auf 1 oder 0 gesetzt.

Xel66
Beiträge: 14169
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 586 Mal
Danksagung erhalten: 1501 Mal

Re: Heizungssteuerung über Systemvariable und script hakt

Beitrag von Xel66 » 23.01.2019, 15:58

Framajo hat geschrieben:
23.01.2019, 12:36
Dann setze ich ein Programm 1 auf mit den eigentlichen Steuerungszeitpunkten (Kinder da)...
Sorry, auch nach mehrmaligen Lesen bekomme ich nicht auf die Reihe, was Du beabsichtigst. Eigentlich brauchst Du nur bei Anwesenheit der Kinder das Thermostat auf Automatik schalten (und ggf. das Profil wählen, was ich aber nicht glaube - aber ich habe kein IP). Dann folgen die Thermostate den im jeweiligen Profil hinterlegten Solltemperaturen. Sind die Kinder abwesend, dann schaltest Du die Thermostate auf manuellen Betrieb und gibst die Absenktemperatur vor. Das wäre es. Ich persönlich halte auch eine Solltemperatur von 10°C für zu niedrig, aber das ist ein ganz anderes Thema.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

Bratmaxe
Beiträge: 1573
Registriert: 28.05.2015, 12:48
Wohnort: Willich
Hat sich bedankt: 4 Mal
Danksagung erhalten: 10 Mal

Re: Heizungssteuerung über Systemvariable und script hakt

Beitrag von Bratmaxe » 23.01.2019, 16:22

10° finde ich auch sehr niedrig...

Nehmen wir mal an, das die Kinder da waren und die Räume schön auf 22°C geheizt haben, und es eine Luftfeuchtigkeit von 55% gab.
Das ergibt eine Absolute Luftfeuchtigkeit von 10,67g/m³ laut Onlinerechner.
Jetzt schaltest du die Heizung auf 10°C.. die Menge an Wasser bleibt gleich, aber die kalte Luft kann weniger Wasser fassen.
Bei 10°C hättest du bei 10,67g/m³ eine Luftfeuchtigkeit von 113,6% oder anders gesagt, das Wasser kondensiert und du bekommst Feuchte Möbel, Teppich Wände und der Schimmel sagt "hallo"..

Ob es energietechnisch sinnvoll ist steht auch wieder auf einem anderen Blatt. denn die kalte Luft kommt viel einfacher Durch eine Zimmertüre, als durch ein geschlossenes Fenster...aber das kann man ja austesten...
Gruß Carsten

Benutzeravatar
Black
Beiträge: 5483
Registriert: 12.09.2015, 22:31
System: Alternative CCU (auf Basis OCCU)
Wohnort: Wegberg
Hat sich bedankt: 424 Mal
Danksagung erhalten: 1074 Mal
Kontaktdaten:

Re: Heizungssteuerung über Systemvariable und script hakt

Beitrag von Black » 24.01.2019, 07:51

Die Geschichte mit der Luftfeuchtigkeit ist die eine... die man auch nicht aus den Augen lassen sollte.

Wenn du hmip HK hast. Warum änderst nicht einfach das Profil? Profil 0 = keine Kids, Profil 1 = Kids. Umschalten vom kalender.
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg

Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann

Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W

technical contribution against annoying advertising

manfredh
Beiträge: 4155
Registriert: 09.09.2012, 10:41
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 78 Mal
Danksagung erhalten: 301 Mal

Re: Heizungssteuerung über Systemvariable und script hakt

Beitrag von manfredh » 24.01.2019, 09:25

Framajo hat geschrieben:
23.01.2019, 12:36
Ok, danke euch schon mal.

Dann setze ich ein Programm 1 auf mit den eigentlichen Steuerungszeitpunkten (Kinder da) und das Programm 2 dann dauerhaft auf 10° - wäre das ein gangbarer Weg?...
Nein - zumindest, wenn die Programmzeilen prinzipiell so bleiben.

Was wir dir sagen wollten:

Soll die Einstellung einer neuen Temperatur (hier 10°) dauerhaft bleiben (bis zum UMschalten der Systemvariable) reicht es nicht, diese nur einzustellen.
Steht das Thermostat weiter im AUTO-Modus, wird diese zum nächsten Schatzeitpunkt des hinterlegten (AUTO-)Wochenprogrammes überschrieben.

Du muss zusätzlich noch den AUTO-Modus ausschalten (sprich: den MANU-Modus einschalten).

Und dazu brauchst du keine zwei Programme. Einfach für jedes Thermostat im SONST eine Zeile "Schalte auf MANU-Modus) hinzufügen.
Es gibt 10 Arten von Menschen: solche die Binärcode verstehen und solche, die ihn nicht verstehen.

Xel66
Beiträge: 14169
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 586 Mal
Danksagung erhalten: 1501 Mal

Re: Heizungssteuerung über Systemvariable und script hakt

Beitrag von Xel66 » 24.01.2019, 09:51

In meinen Augen ist das Benutzen des SONST keine wirklich gute Idee. Es bleibt dann wirklich nur der alternative Betrieb über die Systemvariable. Sowie diese aktualisiert würde, würden die Thermostate immer auf manuell geschaltet werden. Das sollten Sie nur, wenn sich die Systemvariable ändert. Darum ist ein Triggern auf Änderung im SONST WENN die bessere Idee. Aber jeder wie er will.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

Framajo
Beiträge: 71
Registriert: 14.03.2018, 17:13
Danksagung erhalten: 2 Mal

Re: Heizungssteuerung über Systemvariable und script hakt

Beitrag von Framajo » 24.01.2019, 12:54

Danke für eure Hinweise. ich denke, ich gehe den Weg mit den 2 Profilen (Kinder da oder eben nicht).

Meine Frage bleibt: wie müsste das Programm aussehen, damit zuverlässig je nach Kinderda=0 oder 1 umgeschaltet wird? Bzw. die Bedingung? Ist es "bei Änderung auslösen" oder "bei Aktualisierung auslösen"?

Wie gesagt: das auslesen über google Kalender und ändern der Variable funktioniert zuverlässig.

@manfredh: das Programm MUSS nicht zwingend so bleiben, das war mein erster Entwurf. Aber nach dem lesen hier ist klar: ich muss erst die Thermostaten auf "Manu" umschalten, danke!

Antworten

Zurück zu „HomeMatic allgemein“