NEWS
Auf Sensoren per Variable verweisen
-
Hallo zusammen,
ich versuche gerade einen (bzw. zwei) Zigbee-Sensoren in einem Blockly-Script per Variable zu verarbeiten bzw. später wieder darauf zu verweisen.
Hintergrund ist der, dass ich in einem Script, dass ich immer wieder für verschiedene Fenster benötige nicht jedesmal mehrfach die Sensoren auswählen will, sondern diese am Anfang in zwei Variablen zu packen und im Script dann nur auf die Variablen zu verweisen.Die zwei roten Pfeile sind im Prinzip die Sensoren. Und anstatt die nun unten sechs mal neu auswählen zu müssen dachte ich an zwei Referenzen am Anfang des Scripts. Die grünen Pfeile sind dann Verweise auf eigene DP in 0_userdata.[...]
Denn spätestens beim nächsten Script muss ich dieses hier nur kopieren, unter neuem Namen speichern und die Variablen am Anfang ändern. Aber nicht mehr in den zig Verweisen später. So zumindest die Idee.Aber das scheint nicht zu gehen. Vermutlich habe ich irgendwo einen Denk- bzw. Logikfehler. Kann mir da jemand auf die Sprünge helfen?
Oder geht das grundsätzlich nicht und ich komme nicht drumrum die Objekte selbst an allen Stellen im Script anzusprechen? -
@grml sagte: Kann mir da jemand auf die Sprünge helfen?
Es werden 4 Variablen mit Datenpunkt-IDs initialisiert, dann aber mit anderen Werten überschrieben und nicht ausgewertet. Anstelle von "setze Fenster state auf closed" muss mittels Block "schreibe" der Datenpunkt auf "closed" gesetzt werden.
Weshalb 4 Datenpunkte für den Fensterstatus, wenn einer genügt (Werteliste)?
EDIT: Wenn man den Status in einer Variablen erfasst, muss nur an einer Stelle geschrieben werden:
Wenn man auf die 3 überflüssigen Datenpunkte verzichtet, benötigt man nicht einmal eine Status-Variable:
Die Pause ist umsonst, da sie nur verzögert, aber nicht unmittelbar aufeinander folgende Trigger unterdrückt.
-
@paul53 Vielen Dank erstmal! Ich schaue mir das später genauer an.
Die vier verschiedenen DP/Stati hatte ich bislang falls ich mal speziell von einem Wert ein true/false brauche. Aber für die prinzipielle Funktion sind die natürlich in der Tat nicht wichtig, da reicht der DP "Fenster State".
Ich teste mal in der von Dir genannten Richtung weiter.