NEWS
[Vorlage] Variable Zeitsteuerung mit VIS Editor
-
@GiuseppeS
Ich habe ein wenig mit deiner Vorlage für mich gearbeitet / gespielt . ( Ist halt Geschmacksache … mal was neues ...)- Rollladen bedienbar Auf / 50% / Ab // inkl. aktuellem Rollladenzustand ,Hintergrund in Blau.
- Öffnungszustand in %
- Deine Tabelle eingebaut inkl. den Einstell-Buttons
Habe mir einzelne "enum" pro Fenster erstellt und aus deiner Vorlage erstmal 4 einzelne Skript´s pro Rollladen ( 4 Rollladen ) für meine VIS angelegt .
Diese sind dann einzeln über den jeweiligen Popup einstellbar.( 4 x View Popup)Wo ich leider immer noch nicht weiterkomme mit deinem Skript , ist das ich leider eine Terrassentür habe inkl. Schloss und die Datenpunktabfrage als Bedingung einbauen möchte.
Ich benötige also zwei Abfragen / Bedingungen:
-
Wenn Terrassentür auf , dann nicht Rollladen ab ( Aussperrschutz bei Anwesenheit )
-
Wenn Terrassentür nicht abgeschlossen ist wenn Rollladen runter ( Verschlussüberwachung ) dann nicht auf .
Stehe leider auf dem Schlauch wo ich das einbauen soll .
Oder hast Du in der Zeit schon etwas dazu erstellt!?
-
@Glasfaser
Das schaut richtig gut aus. Hast du alle deine Rollläden einzeln dargestellt?
Ich hatte schon überlegt, den Haupt-Pfad mit "Javascript.0/Timer/Devices/..." in eine Variable auszulagern, damit Kopien einfacher erstellt werden können. Aber hatte mich dagegen entschieden, da ich selten ein Nutzen davon gehabt hätte. Mache ich evtl auch noch rein.
Habe nächste Woche Urlaub und kann eher mal eine Stunde investieren. Komme dieses Wochenende nicht dazu, ab Montag werde ich Zeit haben.Das Thema Sortierung für @Jubbes ist kein Ding mehr. Und bei den Bedingungen bin ich eigentlich nur über die Technik unschlüssig. Will nicht all zu viele states neu erstellen, aber werde wohl nicht drum herum kommen.
-
@GiuseppeS
Ja , alle 8 Rollladen sind einzeln dargestellt .Wollte mit deiner Vorlage es ein wenig kompakter machen.
-
Die letzte Version enthält nun frei konfigurierbare Bedingungen. Die States für die Bedingungen müssen über eine weitere Aufzählung einfließen.
Ich werde nun dieses Skript auch für meine Anwesenheitssimulation nutzen.
@Glasfaser
Denke, dass dein Anwendungsfall nun auch abgedeckt werden kann.
Habe übrigens einen Schalter eingebaut, der die HTML-Ausgabe auf mehrere States splittet. Somit sollte eine mehrfache Kopie des Skripts unnötig sein.Eine nachträgliche Sortierung der Geräte innerhalb einer Tabelle ist für mich ohne größeren Aufwand nicht möglich. Ich hatte eine einfache Lösung im Hinterkopf aber da hätte die nachträgliche Ergänzung der Aufzählung mit weiteren Geräten nicht mehr funktioniert.
Die Geräte werden alphabetisch sortiert. Wenn daher die State-Namen innerhalb der Aufzählung z.B. mit Zahlen beginnen würden, wäre eine Sortierung somit möglich. -
@GiuseppeS
Das klingt ja schon mal sehr gut .Aber in der Zeit habe ich für die Verschlussüberwachung eine andere Lösung für mich erstmal erstellt.
Habe wie Du schon erwähnt hast mir dazu ein Blocky Skript mit den Bedingungen erstellt und im "enum "einen Datenpunkt nur für die Terrasse erstellt die angesteuert wir, also nicht direkt der Aktor .Habe ein bisschen noch mit der Optik gearbeitet für die einzelnen Rollladen :
Terrassentürrollladen ist nicht bedienbar , da die Terrassentür nicht zu und verschlossen ist .
Hier ist die Terrassentür zu / verschlossen und auch bedienbar :
Bin mal gespannt , wenn dein neues Skript eingestellt wird . ( Noch nicht da .. wegen Bug )
-
So, Skript ist nun auch wieder online. Blöd wenn globale Variablen genutzt werden, diese dann aber über verschiedene Funktionen gleichzeitig verändert werden können
-
Kurz und knapp , Sehr gut gemacht , Top.
Skript läuft … und sieht gut aus …….
-
@GiuseppeS
Klappt sehr gut , habe alle 8 Rollladen auf dein neues Skript umgeändert , funktioniert super
Die Zeiten wurden heute auch super geändert ( Random ).Ich wurde gestern auch nicht ausgesperrt (Terrassenrollladen)
-
@Glasfaser
Freut mich, dass alles gut funktioniert -
@Glasfaser
Was mir vorhin noch einfiel:
Das Dropdown für die Geräte hast du ja entfernt, weil du die Rollläden gesplittet hast. Täglich wird die Funktion recalc ausgeführt, um die Astrozeiten & Random-Zeiten neu anzuziehen. Dabei wird das Dropdown für die Rollläden und für die Timer-Nummer eigentlich geleert. Wenn du das bei dir nicht geändert hast, dann könnte nach Ausführung von recalc die Änderung von Timer fehlerhaft sein. Falls das der Fall ist: bei der recalc Funktion müsstest du am Schluss deinen gewünschten Rollladen eingeben, wo original ein " " steht. -
Habe dein Skript gestern schon dazu geändert gehabt , aber Danke für den Hinweis :
-
@Glasfaser
Top. Dann ist das Skript übersichtlicher als ich dachte -
Ja... ist sehr übersichtlich aufgebaut
Hatte auch den Vorteil das ich es so ähnlich von Brati aufgebaut hatte ( zusammengestückelt auf meine Bedürfnisse Laie).
-
Guten Morgen, bin auch schon lange auf der Suche nach so einer Steuerung für meine Rolladen. Erstmal danke für die Arbeit.
Leider scheitert es bei mir schon bei der Eingabe der function.timercondition.
var deviceCond = "enum.functions.timerconditions";Bei den functions gibt es diesen Ordner nicht.
Was muss ich da eingeben damit ich im LOG keine Fehler mehr erhalte?
-
-
@Chris71
Hi. Bei dir müssen zwei Aufzählungen existieren. Eine für die Rollläden und eine weitere Aufzählung für die States der Bedingungen. Die Namen der beiden Aufzählungen trägst Du oben in den beiden Feldern ein.
Die voreingestellten Namen basieren auf meine Aufzählungen. -
@GiuseppeS Hallo Guiseppe,
ich habe das schon mit Level probiert. geht aber nicht.
-
@Chris71
Du benötigst eine weitere Aufzählung, in der deiner Meinung nach nützliche Bedingungen drin sind. Z.Bsp. "AtHome" o.ä. wird gern benutzt.
Diese Aufzählung gibst du bei der Variable für die Bedingungen an. "timerconditions" ist bei mir eine reale Aufzählung. Bin die kommende Woche nur eingeschränkt mobil online, kann leider kein Screenshot vom Smartphone einfügen, wie bei mir die Aufzählungen aussehen. -
diese Aufzählungen stehen in enum.functions ?
Sorry stehe im Moment voll auf der Leitung.
Oder muss ich eine function erstellen? -
@Chris71
Am besten erstellst du eine neue Aufzählung unter enum.functionsIn diese Aufzählung schiebst du States rein, die Du für nützlich erachtest.
Den Namen der Aufzählung gibst Du nun im Skript an.