NEWS
Blockly runterdimmen
-
Hallo,
ich habe nun meine Hardware um eine RGB Steuerung erweitert, daher muss ich nun Scripte verwenden.
Grundsätzliche Programmiererfahrung ist vorhanden, allerdings komme ich mit dem Blockly nicht wirklich gut klar.
Hardware:
Homematic 6-Fach-Taster => CCU2 => iobroker auf HP Gen 8, Debian => ZWave USB => Fibaro RGBW
Als ersten Test möchte ich ein Programm schreiben, welches den weißen Kanal per Taster heller oder dunkler dimmt. Der Fibaro Controller aktzeptiert dafür auf seinem Kanal zwave.0.NODE2.SWITCH_MULTILEVEL.Level_6 Werte zwischen 0 und 99.
Also ein ganz simples Script.
Das Hochdimmen klappt wunderbar.
Nur beim Runterdimmen (Varianten A und B) dimmt der Controller herunter und gleich darauf wieder hoch.
An was liegt es? Jemand eine Idee?
Danke und viele Grüße
2802_varianten.jpg -
A und B haben den selben Trigger. A soll 10 hoch und B soll 10 runter. Kann doch nicht funktionieren
Edit: hab es falsch gesehen. Verstehe nicht was in A passiert.
-
Das kleingedruckte hast du aber gelesen?
@PauleB:Natürlich habe ich nicht beide Varianten gleichzeitig eingebaut. `
Gruß
Rainer
-
-
Okay, also Variante A und Variante B sollen genau das selbe machen.
Machen Sie auch, aber das falsche
Ich möchte mit dem Taster "Weiß Plus" das Licht heller machen. Dafür wird die Variable weiß um 10 erhöht und an den Dimmer gesendet. So habe ich 10 "Stufen", das funktioniert.
Nun möchte ich das Licht ja auch irgendwie wieder dunkler haben (weiß = 0 setzen geht!, dann ist es aus)
Dafür muss ich die Variable weiß ja runtergezählt werden.
Dafür gibt es aber keinen fertigen "Block".
Wenn also Variante A oder B aktiv ist und der Taster gedrückt wird, wird das Licht kurz dunkler, danach aber gleich wieder Heller. Und ich verstehe nicht, warum das so ist.
Btw eine andere Frage: Kann ich mir den aktuellen Wert von "weiß" auch irgendwo angucken?
Unter Objekte finde ich ja die Zustände aller Sensoren und Aktoren, die der Variablen aber nicht.
-
Unter Objekte finde ich ja die Zustände aller Sensoren und Aktoren, die der Variablen aber nicht. `
Wo hast du denn den Datenpunkt weiß her?Den hast du doch irgendwie ins Blockly genommen
Gruß
Rainer
-
Du musst den Datenpunkt weiß erst füllen mit dem jetzigen Wert, also Set Variable = wert von object und Dan diese -10
Ansonsten ist die Variable weiß ja Lehr oder hat nen falsche wert tippe ich mal
–-----------------------
Send from mobile device
-
Danke für die Antwort.
Ja die Variable ist zu Anfang leer (habe sie jetzt aber sicherhaltshalber mal auf 0 gesetzt zu Anfang.)
Im Prinzip ist das ja richtig (wenn ich z.B. die Streifen mit dem Tablet anmache überschreibt der Schalter diesen Wert sonst), aber in diesem Fall wäre es erstmal egal.
Ich bin dem Problem aber weiter auf der Spur und habe nun evtl. eine Lösung.
Und zwar habe ich zwave.0.NODE2.CONFIGURATION.Time_to_complete_the_entire_transition_(for_MODE_2) von 68 auf 10 gesetzt.
Dadurch läuft das Dimmen beim Einschalten viel schneller ab, aber das Programm funktioniert nun.
Evtl. dimmt der Fibaro Controller zu langsam hoch, sodass iobroker "denkt" das der Befehl nicht ausgeführt wurde und dann wieder zurücknimmt?
Naja nun gibt es aber ein neues Problem: Die Zeit bis der LED Controller auf den Tastendruck reagiert ist sehr lang.
Beim ersten Tastendruck ( 0 => 10% reagiert der Controller quasi sofort, aber dann läuft es teilweise mit 10 Sekunden verzögerung ab.
An was kann es liegen?
Macht es einen Unterschied, ob ich direkt den Zustand beim Taster abfrage ("Falls Objekt XY ist wahr") oder Abfrage ob es eine Änderung gibt (wurde aktualisiert) und danach nochmal mit einem If Prüfe ob der Taster gedrückt wurde?
Edit: Nachdem es mittlerweile gar nicht mehr reagiert hat (Die Ausgangswerte in iobroker haben sich zwar geändert, die Controller aber nicht mehr reagiert) und ich alles neugestartet habe (nur die Controller neuzustarten bzw. den Adapter zu resetten etc. reichte nicht) geht es nun recht und ohne Zeitverzögerung. Ich werde nun mal weiter testen