Zeitsteuerung löst nicht aus

Allgemeines zur HomeMatic Haussteuerung

Moderator: Co-Administratoren

Gluehwurm
Beiträge: 12434
Registriert: 19.03.2014, 00:37
System: in Planung
Hat sich bedankt: 105 Mal
Danksagung erhalten: 380 Mal

Re: Zeitsteuerung löst nicht aus

Beitrag von Gluehwurm » 15.12.2017, 09:03

Geht es hier um Hysterieverbreitung, oder was soll das Ganze hier ?

Ein Programm, welches nix zu tun hat, weil eben die Bedingungen nicht erfüllt sind, wird nicht ausgeführt, daher kein Zeitstempel. Wurde ja schon festegestellt, bzw., kann anhand einfacher Versuche nachgestellt werden. Wo ist jetzt das Problem? Aus welchem logischen Grund soll ich jetzt annehmen, daß ein (bis auf die Prüfbedingung) identisches Programm, beide von mir fast gleichzeitig erstellt und nicht editiert, ein Mal ausgelöst und einmal nicht ausgelöst wird?
viper2097 hat geschrieben:Wenn das Programm mal auslöst, dann macht es auch was es soll.
Falsch, wenn die Bedingungen erfüllt sind.

Somit bleibt die einzige Frage wenn das verstanden wurde: "Kann/will ich das so hinnehmen?". Erst wenn diese Frage mit Nein beantwortet wird, muss man sich halt mit Alternativen (CuxD, so es das anders macht) beschäftigen.

Wäre eigentlich auch ein Thema, mal den Support von eq-3 zu bemühen.


Gruß
Bruno

viper2097
Beiträge: 46
Registriert: 19.01.2017, 07:35

Re: Zeitsteuerung löst nicht aus

Beitrag von viper2097 » 15.12.2017, 09:34

CuxD mag sicher viel besser sein als die integrierte Timerfunktion. Aber CuxD verkompliziert das ganze nunmal leider auch und ich habe das Gefühl mit Kanonen auf Spatzen zu schießen. Daher würde ich lieber die integrierte Timerfunktion verwenden, welche nun ja auch verlässlich funktionieren SOLLTE.

Wieso soll ich Hysterie verbreiten?
Die Homematic logik ist ganz einfach:
Wenn ein Trigger erfüllt ist, dann muss das Programm auslösen und durchlaufen. Egal ob alle Wenn Teile erfüllt sind, das Programm Sinn macht oder sonst was.

Auf was ich jetzt aber draufgekommen bin, ist: Dass in Zusammenhang mit einem Timer, das Programm nur dann ausgelöst wird, wenn alle WENN Bedienungen erfüllt sind.
Bei meinem Beispielprogramm war gestern die Anwesenheitserkennung auf "anwesend". Das Programm hat um 07:59 nicht ausgelöst. Obwohl es auslösen hätte müssen, aber eben nichts machen.
Für heute habe ich die Anwesenheit auf "nicht anwesend" geändert (weil ich ja gestern, wie heute nicht daheim bin). Siehe da, das Programm löst um 07:59 aus und führt natürlich auch den DANN Teil aus.

Folgerung meinerseits:
Obwohl das Programm immer auslösen müsste wenn die Uhrzeit triggert, löst es nur aus wenn der WENN Teil erfüllt ist.

Nun die Frage? Ist das Absicht, ist das ein Bug?


Nochmal zur ganz eindeutigen Darstellung:
Dieses Programm:
Bild
Bild

Müsste an jedem Werktag um 07:49 auslösen egal ob alle Wenn Bedienungen erfüllt werden oder es dann sonst etwa sinnvolles macht.
Hier kann man erkennen das es heute ausgelöst hat:
Bild

Es löst aber NUR dann aus, wenn alle WENN Bedienungen erfüllt sind. Das ist der Fehler, es müsste ja immer, unabhängig der anderen Wenn Bedienungen, auslösen.

Onthefly
Beiträge: 937
Registriert: 07.12.2009, 11:55
Hat sich bedankt: 2 Mal
Danksagung erhalten: 3 Mal

Re: Zeitsteuerung löst nicht aus

Beitrag von Onthefly » 15.12.2017, 09:51

viper2097 hat geschrieben:Es löst aber NUR dann aus, wenn alle WENN Bedienungen erfüllt sind. Das ist der Fehler, es müsste ja immer, unabhängig der anderen Wenn Bedienungen, auslösen.
Deine WENN Bedingungen sind aber im Block mit UND verknüpft und das heißt: Alle diese WENN Bedingungen die mit UND verknüpft sind müssen zutreffen damit die Aktionen im DANN ausgeführt werden. Darauf hat alchy weiter oben aber schon mal hingewiesen!!!
alchy hat geschrieben:Wieso fragst du das? Du hat dies doch auch so programmiert mit den UND dazwischen ?

Das Programm wird täglich zu deinem Zeitpunkt sowie bei der Änderung der Variable Anwesenheit ausgelöst und auch ausgeführt
Wenn die Bedingungen die du selber programmiert hast der Logik der CCU entsprechen wird das DANN ausgeführt, ansonsten das nicht vorhandene SONST.
Bei komplexeren Verknüpfungen hilft es immer die Daten mit z.B. CCU Historian zu loggen damit du auch genau nachvollziehen kannst wie der Zustand deiner WENN Bedingungen zum jeweiligen Zeitpunkt X war!
Zuletzt geändert von Onthefly am 15.12.2017, 09:54, insgesamt 1-mal geändert.

alchy
Beiträge: 10754
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 673 Mal

Re: Zeitsteuerung löst nicht aus

Beitrag von alchy » 15.12.2017, 09:52

Du (viper2097) wirfst schon wieder alles durcheinander. Auslösen ist nur die halbe Wahreit.
TIPP:
Was passiert, kannst du doch ganz einfach prüfen, wenn du eine Variable in den DANN Zweig beschreibst UND auch in den SONST Zweig.

Legst du eine Zeichenkettenvariable an. Name: Programme_loggen, welche du auf protokolliert stellst.
Dann bastelst du die Variable in BEIDE Zweige ein.

Code: Alles auswählen

Wenn blablabla
dann Thermostat auf Comfort
UND
Systemzustand Programme_loggen auf "DANN ausgeführt"

SONST 

Systemzustand Programme_loggen auf "SONST ausgeführt"
und dann schaust du mal im Systemprotokoll nach.

Alchy
Zuletzt geändert von alchy am 15.12.2017, 10:28, insgesamt 1-mal geändert.
Grund: Name hinzugefügt um Missverständnisse zu vermeiden

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

Gluehwurm
Beiträge: 12434
Registriert: 19.03.2014, 00:37
System: in Planung
Hat sich bedankt: 105 Mal
Danksagung erhalten: 380 Mal

Re: Zeitsteuerung löst nicht aus

Beitrag von Gluehwurm » 15.12.2017, 10:00

viper2097 hat geschrieben:Das ist der Fehler, es müsste ja immer, unabhängig der anderen Wenn Bedienungen, auslösen.
Der "Fehler" liegt in Deinem Verständnis der Sache, die Spalte zeigt die letzte Programmausführung, mehr nicht. Mach mal das mit dem Sonst-Zweig (alchy war schneller).

Aktuelles Beispiel: Programm Schneeschippen (ohne sonst)
Schneeschippen wird von mir nur ausgeführt, wenn die Bedingung "es liegt welcher" erfüllt ist. Danach läuft der Tag.

Mit Sonst - wieder ins Bett
Programm wird immer ausgeführt, da entweder Schneeschippen abläuft oder ich wieder ins Bett gehe

Viel Spass damit :mrgreen:

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: Zeitsteuerung löst nicht aus

Beitrag von manfredh » 15.12.2017, 10:49

Tatsache ist, dass der Zeitstempel aktualisiert wird, auch wenn kein Wenn oder Sonst,wenn ausgeführt wird. Folgendes Testprogramm habe ich gerade laufen lassen:

Code: Alles auswählen

wenn
Zeit 10:30 bis 10:45
und
SV Test_Bool falsch
dann
Rolladen auf 95 %
sonst
Die SV war und blieb wahr. Um Punkt 10:30 wurde der Zeitstempel des Programms aktualsiert, ausgeführt wurde nichts.

Ich käme aber normalerweise nicht auf die Idee, eine Programmausführung über den Zeitstempel zu kontrollieren. Ich verwende in solchen Fällen immer einen deutlich erkennbaren Indikator in den jeweiligen Ausführungszweigen - ähnlich wie Alchy das oben erkärt hat. Nur nehme ich gerne Rollläden - also z.B. Wohnzimmer auf 95% im Wenn und Esszimmer auf 95% im sonst, wenn. Da sieht/hört man die Auslösung erstens sofort und zweitens, wenn man nicht da war, ohne in die CCU zu schauen. :mrgreen:

Im Übrigen funktioniert bei mir die Zeitsteuerung äußerst zufriedenstellend. Auch Testtimer mit Minutenintervallen laufen seit der 2.29.er Firmware ohne Probleme.

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

Gluehwurm
Beiträge: 12434
Registriert: 19.03.2014, 00:37
System: in Planung
Hat sich bedankt: 105 Mal
Danksagung erhalten: 380 Mal

Re: Zeitsteuerung löst nicht aus

Beitrag von Gluehwurm » 15.12.2017, 12:42

Unabhängig davon empfehle ich die Kontaktierung des Supports von eq-3. Die werden das entweder bestätigen (und vielleicht auch im Handbuch entsprechend schreiben), oder, sollte es sich doch als falsch rausstellen, irgendwann korrigieren. :wink:

viper2097
Beiträge: 46
Registriert: 19.01.2017, 07:35

Re: Zeitsteuerung löst nicht aus

Beitrag von viper2097 » 18.12.2017, 07:47

Bevor ihr mich attackiert weil ihr denkt dass ich ein Programm triggern bzw. ausführen und das korrekte Durchlaufen eines Programmes mit dem korrekten DANN Zweig nicht unterscheiden zu können, lest doch bitte nochmal den Thread von Anfang an durch.
Ihr werdet dann sehen, dass ich erst auf das nicht-Triggern des Programmes gekommen bin, weil der DANN Zweig nicht ausgeführt wurde, obwohl er das hätte sollen, und mich die Fehlersuche erkennen hat lassen dass das Programm durch den Timer nicht getriggert wurde.

Ich habe mehrmals gezeigt und bildlich dargestellt welche Programme bei mir auslösen müssten, es aber nicht tun. Egal aus welchem Grund.
Versucht also bitte beim Suchen der Ursache zu helfen, oder lasst es.
Erklärt mir aber nicht zum 50ten mal, dass ich auch was in den DANN Zweig schreiben muss und erst mal verstehen soll wie ein Programm funktioniert.

alchy
Beiträge: 10754
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 673 Mal

Re: Zeitsteuerung löst nicht aus

Beitrag von alchy » 18.12.2017, 08:09

Na, na. :wink:
Lies du die Antworten entsprechend und setze es auch entsprechend um.
Wenn z.B. meine Aussage nicht stimmen / funktionieren sollte dann bebildere dies und melde dich.
Bisher kann ich hier nur lesen, das DU Ergebnisse von deiner Programmierung erwartest, welche du so nicht so programmiert hast bzw. wie es die Logik der CCU dazu erwartet.

Alchy
Du bist auf den besten Weg dahin, hier gar keine Antworten mehr zu erhalten.

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

66er
Beiträge: 3083
Registriert: 23.08.2015, 11:06
System: CCU
Hat sich bedankt: 116 Mal
Danksagung erhalten: 111 Mal

Re: Zeitsteuerung löst nicht aus

Beitrag von 66er » 18.12.2017, 08:47

Hallo zusammen,

mal ein ganz anderer Ansatz rein zum Zeitproblem:

Ich glaube mich zu erinnern, ähnliche Probleme mit dem Zeitmodul gehabt zu haben, wenn freie Zeiteingaben gemacht wurden (in den Screenshots 11:59 und 07:59).

"Drop-Down"-Zahlen (erreichbar über die "V"-Felder im Menu "Zeitmodul einstellen") dagegen funktionierten problemlos. :D

Vielleicht probiert's der TE ja mal aus. :wink:

LG
Stefan
Ich übernehme keine Haftung für von mir gegebene Antworten, Tipps und veröffentlichte Projekte! Jeder ist für sich selbst verantwortlich! Arbeiten an 230V sind von einer Elektrofachkraft auszuführen!

Homematic in Betrieb seit 15.08.2015, > 60 HM-Komp. | 3x USV APC ES400 | Visualisierung auf ioBroker | Audio: Home24-Apps

Raspberrymatic auf DS923+ in VMM (Produktivsystem1)
Rollläden, SSD, Wetter, Logging, Licht, RM, Sonos, Shelly

Raspberrymatic auf DS923+ in VMM (Produktivsystem2 )
Erweiterung GMA, Heizung, Licht, Shelly, SSD, Sonos

>100 Shelly-Geräte an Homematic | CCU2 endgültig in Rente | 3 Raspis als Rückfallebene für Raspimatic und ioBroker

Shelly an Homematic | Infrarot-Heizungssteuerung | Fensteröffnungszeit überwachen

Antworten

Zurück zu „HomeMatic allgemein“