Anwesenheitssimulation mit Shelly

  • Hallo!

    Nachdem ich nun eine ganze Reihe von Shellys verbaut habe.

    Wie erstellt man eine Anwesenheitssimulation mit verschiedenen Shellys, so dass nicht jeden Tag die gleiche Szene zur gleichen Zeit abläuft und trotzdem der Ablauf irgendwie sinnvoll erscheint?

    Danke.

  • Damit das von außen einigermaßen plausibel erscheint, denke ich, sollte man zunächst typische Wege durch das Haus definieren, so wie sie eine natürliche Person auch zurücklegt.

    In der Reihenfolge wie dann Zimmer im Weg liegen und der Weg begangen wird, kann dort das Licht ein- bzw. ausgeschaltet werden. Das ganze kann sicher noch mit einer Zufalls- und Zeitkomponente versehen werden.

    Also so etwa:

    Person geht: Schlafzimmer --> Flur --> Bad --> Flur --> Schlafzimmer
    So müsste das Licht als erstes im Schlafzimmer angehen, dann im Flur usw.
    D.h. Shelly im Schlafzimmer schaltet zufällig nachts Licht ein und triggert nach etwas Zeit den Shelly im Flur auch das Licht einzuschalten. Der im Flur triggert den im Bad. Im Bad schaltet der Shelly das Licht nach etwas Zeit wieder aus und triggert den Shelly im Flur das nach etwas Zeit auch zu tun und der im Flur den im Schlafzimmer. Die An-Zeiten können per Zufall etwas geändert werden.

    In diese Richtung würde ich denken, ist aber viel Aufwand....

    Programmtechnisch kann man vielleicht so etwas wie eine Zustandsvariable "Person im Raum" setzen. Oder wie eine Semaphore ein Objekt "Person" von Shelly zu Shelly weiterreichen. Wer dieses Objekt hat, macht das Licht an bzw. aus, wenn es es weitergibt. Vielleicht kann man in diesem Objekt auch die Parameter mitgeben, wie lange "Person" im Raum ist oder in welchen Raum er geht (sprich welcher benachbarter Shelly getriggert wird), irgendwelche Parameter, welche personenspezifisch die Zeit der Anwesenheit modulieren usw.. Die verbeitenden Scripte auf den Shellys könnten dann ziemlich gleich sein.
    Sowas geht bestimmt auch mit mehreren solcher Objekte "Person", die dann quasi duch das Haus vagabundieren.