Re: Rolladensteuerung Jarolift mit Homematic Relais oder OpenCollector Schaltaktoren
Hallo zusammen,
das ist mein Erster Beitrag hier im Forum - eigentlich wollte ich im oben genannte Beitrag schreiben. Die Forensoftware hat aber Empfohlen einen neuen Beitrag zu starten.
Das Forum hat mir schon sehr bei der Einrichtung und Konfiguration in iobroker geholfen. IT und Elektronik sind mir nicht Fremd.
Ich wollte meine vorhandenen TDEF-Rollladenmotoren von Jarolift nun auch über iobroker steuern können. Eine Bastellösung mit der Fernbedienung kam für mich nicht betracht. Es gibt ja den Tastereingang am TDEF.
Also einen Shelly 1 (one) bestellt und den Schalter auf "Auto Off" mit einer Sekunde eingestellt und an den IO (Potentialfreier Schaltkontakt) des Shellys an den Tastereingang des Motors angeschlossen. Einbindung des Shelly-Adapter in iobroker verlief problemlos. Damit konnte ich dann über einen Button im VIS den Rolladen steuern.
Jetzt wollte ich aber auch noch die Bewegungsrichtung und die nächste Bewegungsrichtung angezeigt bekommen.
Also habe ich mir überlegt eine Rollladensimulation in einem Blocklyscript zu programmieren.
Erstmal habe ich mir einen Datenpunkt angelegt mit dem ich einen Tastendruck simuliere. Dann zwei Datenpunkte in denen eine Werteliste mit "Down"-"Stop"-"Up"-"Stop" hinterlegt ist. Einen für den aktuellen und einen für den nächsten Bewegungszustand des Rolladen.
Denn benötigt man noch Datenpunkte für:
- die Laufzeit die der Rolladen für einen kompletten Schließvorgang benötigt
- die aktuelle Laufzeit bei Bewegung
- ob der Rolladen aktuell in Bewegung ist
- Zustand geschlossen
- Zustand offen
Weiter Datenpunkte für :
- VIS
- Schliessungswert in Prozent
- Schliessungswert Wunsch
kamen später dazu.
Datenpunkte müssen selbst angelegt werden:
Erster Trigger im Blockly steuert die Simulierte Bewegungsrichtung und steuert den Shelly! Wenn man hier den "Switch" auf "false" setzt, wird der Shelly nicht angesteuert und man kann die Simulation testen.
Zweiter Trigger ermittelt anhand der aktuellen Bewegungsrichtung, ob die Rolllade sich gerade bewegt.
Dritter Trigger simuliert die Bewegung und prüft, ob der Rolladen anhand der Bewegungszeit ganz offen oder geschlossen ist. Und der simulierte Schaltzustand wird angepasst. Da der Rolladen ja automatisch in den Endlagen stoppt und kein Tast betätigt werden muss.
Vierter Trigger steuert die aktuelle Laufzeit des Rolladen wenn die Rollade in simulierter Bewegung ist, bei der Aufwärtsbewegung wird jede Sekund die aktuelle Bewegungszeit um 1 reduziert. Bei der Aufwärtsbewegung wir um 1 erhöht.
Fünfter und sechster Trigger sind für die Automatisierung zum Sonnenauf und Untergang. Kommt bestimmt mal in ein seperates Script.
Trigger sieben ist für den Schließungswunsch - sehr Tricky, da ja ggf. der Rolladen gerade tiefer steht als gewünscht und die nächste Bewegungsrichtung abwärts ist. Also muss erstmal komplett geschlossen werden, bevor es wieder nach oben geht.
Sollte die Simulation mal nicht mehr mit dem Rolladen synchron sein: Rollade steht physisch offen, in der Simulation aber geschlossen. So kann man einfach den Datenpunkt "RollladenBewegungszeitAkt" auf "0" oder den Max.-wert von "RollladenBewegungszeitMax" setzen. Dann werden alle Werte "synchronisiert". Mit dieser Methode könnte man auch mit einen Magnetkontakt am oberen oder unteren Punkt der Rolllade die Werte wieder synchronisieren.
Bei Fragen zum Script einfach melden, ich habe versucht es mit Kommentaren verständlicher zu machen.
Schöne Grüße Lars