NEWS
Unwillige Rolläden
-
@martinp said in Unwillig Rolläden:
Wie schaut es denn mit der "Höhenanzeige" an, wenn die Rollade steht? Pendelt die sich irgendwann auf den korrekten Wert ein?
Ja, sobald ich die Rollade stoppe, hat SHUTTER1 den Wert
-
@dieter_p said in Unwillig Rolläden:
würde Mqtt, Mqtt sein lassen und Tasmota über Http ansteuern für diesen Schaltbefehl.
So in etwa:
Könntest du mir das Blockly bitte mal „übersetzen“?
-
@stefan341
Da wird auf den im Slider eingestellten Wert getriggert.
Dazu legst Du Dir z.B. einen Datenpunkt (Zahl) unter0_userdata
an.Ändert der Wert sich - z.B. auf "42" - wird ein url zusammengebaut und damit ein Request an Tasmota gesendet.
http://192.168.178.143/cm?cmnd=ShutterPosition1 42 on
Da Leerzeichen im url nicht zulässig sind, müssen die mit "%20" noch url-codiert werden.
Käme halt auf 'nen Versuch an.
-
@stefan341 said in Unwillig Rolläden:
@dieter_p said in Unwillig Rolläden:
würde Mqtt, Mqtt sein lassen und Tasmota über Http ansteuern für diesen Schaltbefehl.
So in etwa:
Könntest du mir das Blockly bitte mal „übersetzen“?
Klar
Der VIS Slider hat/bekommt einen Datenpunkt in Prozent.
Diesen legst Du auf den Trigger der auslöst sobald Du den Slider veränderst.Darin liegt die Ausführung eines HTTP Befehls, wodurch Tasmota auch ansteuerbar ist.
Kannst Du auch manuell testen, indem Du zB:
http://IP-Adresse-Tasmota/cm?cmnd=ShutterPosition1 + Wert + On
In den Browser eingibst. Beispiel für 50%:
http://192.168.0.53/cm?cmnd=ShutterPosition1%2050%20on
Feedback im Browser:
Der mittlere Teil des Blocklies baut dir dann aus dem veränderen Datenpunkt in Prozent automatisch diesen Befehl zusammen und schickt ihn per Http raus an Tasmota.
alles andere würde/kann per Mqtt bleiben. -
@dieter_p said in Unwillig Rolläden:
Respekt! Das funktioniert. Nur mit einem kleinen Schönheitsfehler.
Wenn in der VIS der Slider ganz rechts ist, ist das Rollo geöffnet. Ist er ganz links, ist das Rollo geschlossen. Also falsch herum.Ebenso in dem angelegten Datenpunkt. Das Rollo ist offen, der DP steht bei 100
Der DP des Schalters (SHUTTER1) steht bei 0
(was richtig ist)Da muss dann wohl noch irgendwas invertiert werden oder?
-
@stefan341 sagte in Unwillig Rolläden:
Da muss dann wohl noch irgendwas invertiert werden oder?
... was mathematisch nicht wirklich kompliziert ist
-
läuft. danke
-
@Codierknecht
Noch eine Frage:Wenn ich die Rollläden manuell am Schalter schalte, geht der Slider in der Vis logischerweise nicht mit. Um das zu erreichen habe ich mir überlegt, einfach mit einem Script den Trigger auf die Datenpunkte hoch und runter von Schalter zu legen und dann nach zb. 60Sek (länger läuft kein Rollo) den Wert von SHUTTER1 in den Datenpunkt auf den das script oben Triggert zu schreiben. Nun bin ich mir nur nicht sicher, ob das so gut ist, weil dadurch ja das Script von @Dieter_P getriggert wird.
-
@stefan341
Man kann in einem Script ja prüfen, ob die Auslösung durch einen physischen Schalter (also den passenden Adapter) oder durch ein Script getriggert wurde. -
Ich hätte jetzt überlegt dafür den Positionswert zu nutzen der per Mqtt ankommt und von Tasmota geschickt wird.
Durch einen Vergleich der Zeitstempel (Abweichung größer 10 Sekunden) korrigiert man dann den Slider DP
-
@dieter_p
Da könnte man auch weniger Zeit nehmen oder? Weil meine kleinste Jalousie läuft gerade mal 14 Sek.Muss ich das Script extra machen oder in das vorhandene einbauen?
-
@stefan341 said in Unwillig Rolläden:
@dieter_p
Da könnte man auch weniger Zeit nehmen oder?Ja, ich bin bei der Schätzung davon ausgegangen dass der MQTT Wert nicht so schnell aktualisiert wird und 10 Sekunden sehr konservativ gewählt. Wenn der aber flotter von Tasmota kommt klar.
Muss ich das Script extra machen oder in das vorhandene einbauen?
Nein, wäre ein Neues
-
@dieter_p
Das läuft nicht ganz. Bzw es läuft nur bis zum ersten Stop.
Ich habe es wie folgt getestet: das Rollo war geöffnet. Ich habe es mit dem manuellen Schalter runter fahren lassen und bei ca. 50% gestoppt. Der Slider in der Vis springt richtig auf ca. 50%. Dann habe ich es mit dem Schalter ganz runter fahren lassen. Der Slider in der Vis verändert sich nicht. Dann habe ich es komplett hochfahren lassen, der Slider in der Vis verändert sich nicht. -
@stefan341
Mmh, hast Du Dir Mal den Mqtt Positionswert angesehen auf 100% bzw. 0% wo die VIS Darstellung nicht funktioniert hat.Wenn der MQTT Wert noch auf 50% steht, wäre das eine Erklärung.
Ergänzung:
Um Deine Namensgebung herauszufinden, hab ich mir gerade hier oben Deine Screenshots angesehen. Ich mag falsch liegen, aber Leerzeichen wie bei "Jalousie Wohnzimmer" könnten vielleicht irgendwo ein Problem erzeugen. Mit "Jalousie_Wohnzimmer" hätte ich ein besseres Gefühl, aber lerne da auch gerne dazu.
Ergänzung 2 und zurück zum jetzigen Thema:
Falls der MQTT Wert wirklich nicht alle Updates erhält, könnte man versuchen mit einer Regel in Tasmota nachzuhelfen, dass tasmota so jede Änderung auch wirklich verschickt:
Rule4 ON Shutter1#Position DO Publish Jalousie_Wohnzimmer/ShutterPosition1 %value% ENDON
P.S.: Habe Rule Nummer 4 gewählt zum neuen Anlegen über die Konsole, da für Deine Tuya-Rolladenschalter schon bereits regeln angelegt sind. Die sollte man nicht überschreiben. Daher die "Hoffnung" Regel 4 existiert noch nicht.
-
@dieter_p said in Unwillig Rolläden:
@stefan341
Mmh, hast Du Dir Mal den Mqtt Positionswert angesehen auf 100% bzw. 0% wo die VIS Darstellung nicht funktioniert hat.Wenn der MQTT Wert noch auf 50% steht, wäre das eine Erklärung.
Der Mqtt vom Schalter geht brav mit und steht immer auf der aktuellen Position (spätestens wenn das Roll angehalten wird, entweder durch einen Endpunkt oder manuell)
Ergänzung:
Um Deine Namensgebung herauszufinden, hab ich mir gerade hier oben Deine Screenshots angesehen. Ich mag falsch liegen, aber Leerzeichen wie bei "Jalousie Wohnzimmer" könnten vielleicht irgendwo ein Problem erzeugen. Mit "Jalousie_Wohnzimmer" hätte ich ein besseres Gefühl, aber lerne da auch gerne dazu.
Ich habe gerade versucht das zu ändern, aber der Sonoff-Adapter lässt mich leider keine Änderungen machen. Dann müsste ich das wahrscheinlich bei Tasmota machen.
Jetzt war es so, dass der Slider in der Vis gar nicht reagiert hat. Also konnte ich das Verhalten das ich oben beschrieben habe, auch nicht rekonstruieren. Über Mqtt wird die richtige Position zuverlässig angegeben, aber nicht auf den Datenpunkt für die Vis übertragen.
-
Über Mqtt wird die richtige Position zuverlässig angegeben, aber nicht auf den Datenpunkt für die Vis übertragen.
Ok, dann funktioniert das Ding nicht so wie gewünscht.
Da ich aktuell nicht weiß warum, vielleicht einfacher eine Alternative zur Auswertung/Nutzung des Zeitstempels zu benutzen.
Gemäß dem Vorschlag von @Codierknecht folgende Anpassung:
-
@dieter_p
Ich probiere das heute Abend mal aus. Danke -
@dieter_p said in Unwillig Rolläden:
Das scheint soweit zu laufen. Ich habe jetzt noch ein Script laufen, dass die Rollos morgens hoch und abends runter macht. Ich steuere damit direkt die Datenpunkte der Schalter an. Das sollte aber auch funktionieren oder? bzw. schöner uns sauberer wäre es die selbst erstellten Datenpunkte mit 0 oder 100% anzusteuern oder?
Noch eine Frage:
Eines meiner nächsten Projekte soll sein die Rollos ab einer bestimmten Außentemperatur zb. auf 80% runter zu fahren (Sonnenschutz). Ich würde dann einfach den "steuere"-Block benutzen. Womit gebe ich die 80% an? Text-Block? -
@stefan341 sagte in Unwillig Rolläden:
Womit gebe ich die 80% an? Text-Block?
Das sind nur Zahlenwerte.
Im Bereich "Mathematik" findest Du den passenden Block.
Da kommt 'ne 80 rein und gut ist. -
@stefan341 said in Unwillig Rolläden:
@dieter_p said in Unwillig Rolläden:
Das scheint soweit zu laufen. Ich habe jetzt noch ein Script laufen, dass die Rollos morgens hoch und abends runter macht. Ich steuere damit direkt die Datenpunkte der Schalter an. Das sollte aber auch funktionieren oder? bzw. schöner uns sauberer wäre es die selbst erstellten Datenpunkte mit 0 oder 100% anzusteuern oder?
Mmh, klingt für mich sehr ähnlich und sehe da keine großen Unterschiede. Eine dritte Möglichkeit wäre auch direkt mit Deiner Zeitschaltung den HTTP-Befehl loszuschicken. Hier sind es ja dann feste Werte 0% oder 100% und man kann das so realisieren:
Aber viele Wege führen nach Rom.
Direkt auf die Datenpunkte zu verlinken von Geräten, kann aber recht ~ätzend sein. Wenn Dir mal ein Gerät zB kaputt geht sucht man ewig in seinen Skripten/Blocklies wo diese dann überall verknüpft waren. Das dann in Skripten die man vlt. vor Jahren gebaut hat und nicht in ~ "5 Minuten" neu gebaut oder wieder verstanden hat.
Daher kann ich dir das Thema Alias sehr ans Herz legen.Noch eine Frage:
Eines meiner nächsten Projekte soll sein die Rollos ab einer bestimmten Außentemperatur zb. auf 80% runter zu fahren (Sonnenschutz). Ich würde dann einfach den "steuere"-Block benutzen. Womit gebe ich die 80% an? Text-Block?Die 80% oder besser 80 als Zahl findest Du in der Mathematik-Kategorie:
Text ginge auch aber müßte man zusätzlich konvertieren von String nach Zahl und sowas muß ja nicht sein um nicht unnötig Rechenleistung zu verjubeln: