Wenn-dann Bedingungsprüfung zu bestimmten Zeiten zu Beginn immer zunächst auf Basis des aktuellen Status


  • Hallo.

    Folgende Situation: Ich habe eine Schaltstesteckdose und möchte zu bestimmten Uhrzeiten einen Profilwechsel erzeugen, abhängig von der aktuellen Leistung der Schaltsteckdose.

    Beispiel: Jeden Tag um 23:59-0:00 des Folgetages und bei <10W Leistung der Schaltsteckdose soll auf das Profil Nacht umgeschaltet werden.

    Anwendungsfall: Automatische Umschaltung auf Nacht um Mitternacht, außer der TV läuft noch.

    Problem: Um 23:59 wird nicht die aktuelle Leistung (zB 5W) genommen und die Regel "feuert" sondern es passiert nichts Das liegt scheinbar daran, dann nur wenn ein Wechsel von >=10W auf <10W stattfinden würde, ich also den TV genau zwischen 23:59 und 0:00 ausschalten würde, dann die Regel greifen würde.

    Lösung aus meiner Sicht: Eine Wenn-Dann Regel müsste zu Beginn eines jeweiligen Zeitntervalls ausgewertet werden. Wenn sie zu Beginn schon "wahr ist", dann muss die Regel sofort "feuern". Wenn nein, muss sie bis zum Ende des Zeitintervalls beachtet werden und bei einem (bzw. jedem) Wechsel zu "wahr" feuern.

    Ich glaube das Thema ist nicht neu, aber ungelöst. Eine Lösung wäre aus meiner Sicht wichtig und sehr nützlich.

    PS Das jetzige Verhalten habe ich abgeleitet, so klar ist es in der Funktionsbeschreibung nicht dokumentiert.

    Grüße
    Peter

  • @peterb Hallo Peter,

    du sprichst mir hier aus dem Herzen - aber dieses Verhalten des Programms reflektiert sich in vielen Bereichen der Steuerung des WiButler: (wer immer auch auf diese Idee gekommen sein mag)

    1. Ändere ich eine Zeitsteuerung im laufenden Betrieb z.B. Änderung der Temperatur, passiert nichts, diese Änderung wird erst dann berücksichtigt, wenn im Ablauf der Regel der Schaltzeitpunkt erreicht wird der dann diese Änderung überträgt. Das kann dann auch der nächste Tag sein. Eigentlich sollte (wie auch bei der Vitocomfort) eine Änderung in laufenden Zeitsteuerungen sofort übertragen werden, wie z.B. eine Erhöhung der Temp von 20° auf 22° im Programm

    2. Ändere ich eine Regel im laufenden Betrieb ist es eigentlich das gleiche - interessiert niemanden. Es muss immer der nächste Zeitschaltpunkt erreicht sein, bevor eine durchgeführte Änderung übertragen wird.

    Meines Erachtens ist dieses Regelungskonzept echt "Out of Order" denn ändere ich z.B. ein Programm in der ViCare wird das sofort berücksichtigt, wie vormals auch bei der Vitocomfort.

    Diese Problematik besteht seit Anbeginn und gehört auch meiner Meinung nach sofort und umfassend geändert.

    Grüße
    Horst

  • @horstr Hallo Horst. Ja, stimmt. Sowohl für bestehende Regeln als auch für neue Regeln muss 1. gleich zu Beginn eine Auswertung der Bedingung(en) erfolgen und dann während der der Regellaufzeit monitored werden. Nur über Zustandsänderungen zu gehen ist genau wie du schreibst, nichts anderes als ein massiver Bug. Das ist niemandem als Feature zu erklären.
    Übrigens, bei der Einbruchswarnungsfunktionalität scheint ein anderer Geist geherrscht zu haben (oder ein anderes Entwicklungsteam). Da wird selbstverständlich zu Beginn ausgewertet (führt dann zu Warnungen wenn zu Beginn = beim Wechsel in Abwesend oder Urlaub noch Fenster oder Türen geöffnet sind).

    Grüße
    Peter

  • @peterb Hallo Peter,

    wenn ein derartiges Steuerungsverhalten bei einer Einbruchwarnungsfunktionalität vorliegen würde, könnte man den WiButler nur schnell entsorgen. Das wäre absolut daneben !

    Gruss
    Horst

  • Klar. Was ich sagen wollte ist, dass die Einbruchschutzfunktion ganz ordentlich konzipiert und umgesetzt worden ist und dass dort sogar Elemente enthalten sind, die wir ansonsten vermissen!

    Grüße
    Peter