HM-Skript zur einfachen Sonnenstandsberechnung Script

Problemlösungen und Hinweise von allgemeinem Interesse zur Haussteuerung mit HomeMatic

Moderator: Co-Administratoren

Tyfys
Beiträge: 544
Registriert: 17.04.2021, 17:12
System: CCU
Hat sich bedankt: 27 Mal
Danksagung erhalten: 123 Mal

Re: HM-Skript zur einfachen Sonnenstandsberechnung Script

Beitrag von Tyfys » 01.06.2021, 12:29

Also nach meinen Verständis wird das Programm (anhand des gezeigten Ausschnittes) nur ausgelöst
wenn wenn die 280° Marke überschritten oder erreicht wird.

Sei es z.B. von 279 nach grösser/gleich 280°
bzw von 281 nach kleiner / gleich 280°

Evtl. solltest Du doch mal das ganze Programm zeigen.

Gruß
Harry
Gruß
Harry

thfrank
Beiträge: 248
Registriert: 16.05.2020, 12:54
System: CCU
Hat sich bedankt: 48 Mal
Danksagung erhalten: 1 Mal

Re: HM-Skript zur einfachen Sonnenstandsberechnung Script

Beitrag von thfrank » 01.06.2021, 12:38

Tyfys hat geschrieben:
01.06.2021, 12:29
Also nach meinen Verständis wird das Programm (anhand des gezeigten Ausschnittes) nur ausgelöst
wenn wenn die 280° Marke überschritten oder erreicht wird.

Sei es z.B. von 279 nach grösser/gleich 280°
bzw von 281 nach kleiner / gleich 280°
ja, so hätte ich das auch gedacht...
Tyfys hat geschrieben:
01.06.2021, 12:29
Evtl. solltest Du doch mal das ganze Programm zeigen.
habs angehängt

Thomas
Dateianhänge
tempsnip.png

MichaelN
Beiträge: 9655
Registriert: 27.04.2020, 10:34
System: CCU
Hat sich bedankt: 697 Mal
Danksagung erhalten: 1617 Mal

Re: HM-Skript zur einfachen Sonnenstandsberechnung Script

Beitrag von MichaelN » 01.06.2021, 13:22

Das Programm ist sehr ungünstig, weil viele verschiedene Auslöser verknüpft werden.
LG, Michael.

Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.

Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++

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

Re: 0 > 270?

Beitrag von Xel66 » 01.06.2021, 13:57

thfrank hat geschrieben:
01.06.2021, 10:39
Habe jetzt festgestellt, dass das Programm auch auslöst, wenn der Azimut auf 0 springt, also mitten in der Nacht.
Nein, vermutlich würde nur der Zeitstempel aktualisiert, weil eine Bedingungsprüfung durchgeführt wurde. Vorher war die Bedingung dauerhaft bei größer Triggerwert und durch den Wechsel auf 0° ist diese Bedingung wieder falsch geworden (x kleiner Triggerwert). Dieser Wechsel hat eine Bedingungsprüfung getriggert. Da bei dieser Bedingungsprüfung ALLE Bedingungen des Programms von oben nach unten durchlaufen werden, und vermutlich eine der anderen WENN-Bedingungen WAHR ist, wird ggf. das DANN ausgeführt. Das ist das was MichaelN mit "ungünstig" meint.

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

Tyfys
Beiträge: 544
Registriert: 17.04.2021, 17:12
System: CCU
Hat sich bedankt: 27 Mal
Danksagung erhalten: 123 Mal

Re: HM-Skript zur einfachen Sonnenstandsberechnung Script

Beitrag von Tyfys » 01.06.2021, 14:02

Es wird ja auch das Skript "Programmauslöser egal welchen Types" im DANN-Teil aufgerufen.

Sollte die Markise sich tatsächlich bewegt haben, müsste da ja zu sehen sein, wer/was das ausgelöst hat.
Oder?

Gruß
Harry
Gruß
Harry

Benutzeravatar
Baxxy
Beiträge: 10781
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 604 Mal
Danksagung erhalten: 2205 Mal

Re: HM-Skript zur einfachen Sonnenstandsberechnung Script

Beitrag von Baxxy » 01.06.2021, 14:09

Tyfys hat geschrieben:
01.06.2021, 14:02
müsste da ja zu sehen sein, wer/was das ausgelöst hat.
Oder?
War es ja auch.
thfrank hat geschrieben:
01.06.2021, 11:57
Auslöser des Programmes habe ich entsprechend abgefragt und ist nachts eben der Azimut, und zwar wenn er von 360° aud 0° umspringt.
So wie es Xel66 beschreibt passt das schon. Trigger war die SV und ins DANN kam es mit Chance 1:3 durch die Helligkeit.

thfrank
Beiträge: 248
Registriert: 16.05.2020, 12:54
System: CCU
Hat sich bedankt: 48 Mal
Danksagung erhalten: 1 Mal

Re: 0 > 270?

Beitrag von thfrank » 01.06.2021, 15:59

Xel66 hat geschrieben:
01.06.2021, 13:57
Nein, vermutlich würde nur der Zeitstempel aktualisiert, weil eine Bedingungsprüfung durchgeführt wurde. Vorher war die Bedingung dauerhaft bei größer Triggerwert und durch den Wechsel auf 0° ist diese Bedingung wieder falsch geworden (x kleiner Triggerwert). Dieser Wechsel hat eine Bedingungsprüfung getriggert. Da bei dieser Bedingungsprüfung ALLE Bedingungen des Programms von oben nach unten durchlaufen werden, und vermutlich eine der anderen WENN-Bedingungen WAHR ist, wird ggf. das DANN ausgeführt. Das ist das was MichaelN mit "ungünstig" meint.
ja ok, das macht wohl (für die CCU) Sinn (werd nie verstehen, warum eine Änderung immer in beide und nicht nur in die gewünschte Richtung registriert wird, aber gut).

Für die DANN-Ausführung kommt ja eigentlich nur der mittlere ODER-Block in Frage, weil in den beiden anderen jeweils UND-Verknüpfungen enthalten sind, die nicht erfüllt waren.

Führt denn die Helligkeit (konkret <3000 Lux) auch zur DANN-Aktivität, wenn sie keine Änderung erfahren hat?
Zuletzt geändert von thfrank am 01.06.2021, 16:20, insgesamt 1-mal geändert.

thfrank
Beiträge: 248
Registriert: 16.05.2020, 12:54
System: CCU
Hat sich bedankt: 48 Mal
Danksagung erhalten: 1 Mal

Re: HM-Skript zur einfachen Sonnenstandsberechnung Script

Beitrag von thfrank » 01.06.2021, 16:07

MichaelN hat geschrieben:
01.06.2021, 13:22
Das Programm ist sehr ungünstig, weil viele verschiedene Auslöser verknüpft werden.
ja, ich habe dieses Problem immer dann, wenn unterschiedliche SV voneinander abhängend abgefragt werden sollen, z.B. je nach Ereignis, was früher eintritt. Im konkreten Fall also entweder Sonnenstand erreicht (Änderung) und ausreichend dunkel (prüfen) oder Helligkeit (bzw. Dunkelheit) erreicht (Änderung) und "ausreichender" Sonnenstand (prüfen). Ähnliches Beispiel ist bei mir die Lampensteuerung mit Auslöser Dunkelheit oder Anwesenheit, je nachdem was eben als erstes eintritt.

Vielleicht gibts da eine elegantere Lösung, mir fehlen da irgedwie weitere (tiefere) Ebenen in den Verknüpfungen, die z.B. auch UND und ODER kombinieren lassen. Im zweiten ODER-Block könnte ich dann z.B. auch Abfragen, ob die Markise überhaupt unten ist. Alternative für mich wären lediglich das Splitten in verschiedene Programme.

Thomas

Matsch
Beiträge: 5426
Registriert: 30.05.2019, 11:37
System: Alternative CCU (auf Basis OCCU)
Wohnort: Chemnitz
Hat sich bedankt: 114 Mal
Danksagung erhalten: 734 Mal

Re: HM-Skript zur einfachen Sonnenstandsberechnung Script

Beitrag von Matsch » 01.06.2021, 16:34

thfrank hat geschrieben:
01.06.2021, 16:07
Alternative für mich wären lediglich das Splitten in verschiedene Programme.
Das ist nicht nur die Alternative für dich, sondern generell zu empfehlen - und wahrscheinlich genau das, was die Vorredner meinten und empfahlen.
Leider ist die Programmierung so einengend.

Benutzeravatar
Baxxy
Beiträge: 10781
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 604 Mal
Danksagung erhalten: 2205 Mal

Re: HM-Skript zur einfachen Sonnenstandsberechnung Script

Beitrag von Baxxy » 01.06.2021, 17:09

thfrank hat geschrieben:
01.06.2021, 15:59
Führt denn die Helligkeit (konkret <3000 Lux) auch zur DANN-Aktivität, wenn sie keine Änderung erfahren hat?
Ja.
Ist eine deiner 3 mittleren "ODER"-Bedingungen (vom Wert her) "WAHR" wird dein DANN ausgeführt.
Und zumindest die Helligkeit < 3000 ist um 00:00 vermutlich immer gegeben.

Grüße
Baxxy

Antworten

Zurück zu „HomeMatic Tipps & Tricks - keine Fragen!“