[Modul] Schaltzeiten ermitteln (SwitchtimeDetermination)

Ich glaube so ganz verstehe ich den Sinn und die Funktionsweise des Moduls noch nicht oder überhaupt nicht.

Ich habe eine STATE Variable, die ich über den Wochenplan wie folgt schalte:
Mo-Fr:
06:55 - 07:00 Uhr EIN
07:55 - 08:00 Uhr EIN
08:55 - 09:00 Uhr EIN
09:55 - 10:00 Uhr EIN
usw…
Sa-So:
07:55 - 08:00 Uhr EIN
08:55 - 09:00 Uhr EIN
09:55 - 10:00 Uhr EIN
10:55 - 11:00 Uhr EIN
usw…

Nun habe ich in Deinem Modul den Wochenplan angegeben und 2 Schaltzeit-Bereiche angelegt. „Zirkulationspumpe EIN“ und „Zirkulationspumpe AUS“

Nun legt das Modul 2 Integer Variablen an.
Die eine „Zirkulationspumpe AUS“ mit dem Wert 13.10.2022 0:00 Uhr
Die andere „Zirkulationspumpe EIN“ mit dem Wert 13.10.2022 06:55 Uhr

Aber was soll mir das jetzt sagen ?

Hmm, das ist jetzt etwas schwierig, weil ich deinen Anwendungsfall nicht verstehe.

Ich versuche den nochmal u formulieren, wozu das Modul gedacht ist.

Ich möchte, das der Rolladen bei Dämmerung zu bzw wieder auf geht.

Dämmerung bedeutet aber im Winter vielleicht schon um 18 Uhr runter und um 8:30 wieder auf. Im Sommer hingegen ist Morgendämmerung vielleicht schon 4 Uhr.

Ich habe aber weder Lust, morgens um 4 Uhr von den Rolläden geweckt zu werden noch habe ich Lust, das im Winter um 18 Uhr die Bude schon verriegelt ist.

Also sage ich, morgens gehen die Rolläden auf mit Dämmerungsbeginn, nicht aber vor 6 Uhr und nicht nach 8 Uhr. Und Abends gehen die zu frühestens um 19 Uhr und spätestens um 23 Uhr.

Also habe ich zwei Bereiche

  • AUF von 6-8 Uhr mit der Referenzvariable Kern\Location\Dämmerungsbeginn
  • AB von 19-23 Uhr mit Referenzvariable Kern\Location\Dämmerungsende

Und nun werden zwei Variablen angelegt, die entsprechend gefüllt werden, nämlich morgens im Bereich von 6-8 Uhr, je nach Dämmerung jahreszeitlich angepasst und vice versa für Abends.
Diese Variablen kann ich dann z.B. nehmen, um zB den BlindCotrol zu steuern oder um direkt Aktionen auszulösen (in der Instanz kann man ein Script eingeben (älter) oder Aktionen (aktuelle noch nicht veröffentliche Version).

Es ist kein Ersatz, um feste Zeiten zu schalten, dafür ist der Wochenplan oder ggfs. ein zyklisches Ereignis ja viel besser geeignet. Und wenn ich deine Auslastung so ansehe, sieht das so aus, als wollte Du jede Stunde die Zirkulationspumpe 5min laufen lassen. Da machst Du doch am einfachsten ein Ablaufplan, der die Variable einschaltet, dämm 5m Pause mach und dann wieder ausschaltet und rufst diesen Ablaufplan einfach jede Stunde auf.

Abends bei Dämmerung eine Lampe angeht und morgens wieder aus.
Wenn ich die aber allein durch schalten würde, würde die aber eventuell im Sommer eventuell erst abends im 23 Uhr angehen, da bin ich aber (eventuell) schon im Bett. Daher möchte ich, das die Lampe nicht

Hallo :slight_smile: erstmal großes Lob für dieses Modul!

Hätte da einmal noch 2 Fragen, die aus der Doku noch nicht so klar hervorgehen:
Wenn ich z.b. einen Wochenplan von 07-10 Uhr ddefiniere mit Referenz Sonnenaufgang,
was passiert wenn der Sonnenaufgang nun vor 7 Uhr stattfindet (z.b. im Sommer)?
Wird dann zum Frühestmöglichen Zeitpunkt des Wochenplans (also 7 Uhr) geschaltet?

und zum anderen hab ich in dem Modul einen Ablaufplan als Aktion hinterlegt.
Dieser scheint nicht korrekt zum angegeben Zeitpunkt gestartet worden zu sein.
Woran kann das liegen?

ja, korrekt. der Schaltzeitpunkt ist innerhalb der Grenzen des angegebenen Bereichs

hmm, ja, da bastele ich noch etwas drauf. die automatisch neu-berechnung der Variablen zum Änderungszeitpunkt ist etwas tricky und ich finde da immer wieder eine Lücke.
Eine schnelle Hilfe wäre das zu deaktivieren (Schaltzeiten unverzüglich nach Änderungen neu ermitteln), dann werden die Zeiten zum angegebenen Zeitpunkt (default ja Mitternacht) für den kommenden Tag neu berechnet.
In den nächste Tagen gibt es auch eine weitere Version, wo ich nochmal etwas umgebaut habe.

Ansonsten gibt es ein Panel Modul-Aktivität, das steht auch etwas drin, was hilft, auch wenn der Debug nicht aktiviert ist. Geben aber zu, auch das ist nicht 100% einfach zu lesen.

Seit gestern bekomme ich diese Fehlermeldung, wenn ich den Modul Store aufrufe und dann dort auf den Button „Installiert“ klicke. Der Modul Store bleibt dann leer, zeigt also keine installierten Module an und es erscheint diese Fehlermeldung.
Über die Suche „Schaltzeiten ermitteln“ oder „Schaltzeit ermitteln“ wird auch kein Modul gefunden.
Wie bekomme ich es denn nun wieder deinstalliert?

Screenshot 2022-11-02 125429

tut mir leid, das scheint etwas mit dem Modulstore an sich zu tun zu haben
@Dr.Niels : kannst du was dazu sagen?

Die Fehlermeldung kommt auch direkt 1x wenn ich die Console öffne. Kann ich aber mit „OK“ wegklicken…

Da wurde aus Versehen ein Kanal geschlossen, der nicht geschlossen werden sollte… Der Fehler lag bei uns und sollte jetzt behoben sein

Ich arbeite mich auch gerade in das Modul ein, weil ich es ganz praktisch finde.
Was ich schon geschafft habe, am Morgen und am Abend jeweils zu einer festen Zeit das Licht ein- (morgens) bzw. auszuschalten (abends) und dazu jeweils mit Sonnenauf- und Untergang variabel das Licht aus- bzw. einzuschalten. Dazu habe ich jeweils im Wochenplan die Aktion Ein- bzw. Anschalten genutzt und mit der Referenz-Variable für den Sonnenauf- bzw. Untergang den variablen Zeitpunkt dargestellt. Soweit kam ich. Ob das alles so richtig ist wie gedacht, weil ich allerdings nicht. Es funktioniert jedenfalls.

Jetzt würde ich allerdings gerne am Morgen einen Zeitraum z.B. 6 bis 8 Uhr definieren, wo das Licht erst angeschaltet wird durch eine Variable (Bewegungsmelder) und ausgeschalten durch Sonnenaufgang. Wie definiere ich hier den Wochenplan (die Aktion) und die Referenz-Variablen? :thinking:
Und wenn die Sonne vor 6 Uhr schon aufgeht, dann soll 6 bis 8 Uhr dann nichts mehr passieren.

Hmm, interessante Frage.

Ich würde folgendes machen:

  • eine Bool-Variable Aussenleuchte durch Bewegungsmelder schalten anlegen
  • der Bewegungsmelder setzt ja sicherlich in IPS eine Variable, wenn „Bewegung erkannt“
  • diese Variable löst dann ein „ausgelöstes Ereignis“ aus, das als „weitere Bedingung“ die Variable Aussenleuchte durch Bewegungsmelder schalten auswertet
  • die Variable Aussenleuchte durch Bewegungsmelder schalten wird durch eine Aktion innerhalb der Schaltzeitenermittlung mittels „Schalte auf Wert“ auf Ja bzw. Nein gesetzt.

Es beruhigt mich erstmal, dass du nicht gleich eine richtige Antwort hast. Kein Problem!
Und somit habe ich dein Modul bisher richtig verstanden, dass es durch den Wochenplan einen Anfang oder ein Ende gemäß dem WP gibt und der Ein- oder Ausschaltzeitpunkt durch die Referent-Variable variabel in dem Zeitraum ist.

Bei deinem Vorschlag steige ich ehrlich gesagt nicht ganz durch. Aber wenn es sowieso nicht durch das Modul abgebildet wird, mache ich mir das selber nochmal Gedanken. Mir ging es ja nur um die Frage, ob ich das Modul vielleicht noch nicht ganz durchschaut habe.
Alles gut, danke!

völlig korrekt, wobei er entweder nur die Variable des jew. Zeitpunkts mit dem errechneten Schaltzeitpunkt setzt

  • und er führt optional zusätzlich zu dem Schaltzeitpunkt ein/mehrere Aktionen durch
  • und/oder er ändert in angegebenen zyklischen Ereignissen den Ereigniszeitpunkt (das war aber eher mal ein Zwischenschritt in der Entwicklung und ist nur „drin geblieben“)

Ja, da habe ich mich bestimmt verquer ausgedrückt.
Ich würde die Schaltzeitenberechnung nur benutzen um zu steuern, ob der BWM „scharf“ ist oder nicht (über eine entsprechende bool)
Die Aktion, die der BWM triggert, wäre ein ganz normales ausgelöstes Ereignis.