Hallo zusammen,
habe einen Rollladen per Shelly 2PM in HA eingebunden.
Jetzt versuche ich eine untere Begrenzung per Automation einzurichten, damit der Rollladen nicht weiter runter in den Blumenkasten fährt.
Mein bisheriger Versuch “Wenn Rollladen fährt herunter” & “Position < 80” → Sopp. Sieht in Yaml so aus:
description: "Stoppt den Rollanden bei Position x "
triggers:
- device_id: 1234xyz
domain: cover
entity_id: 4321xyz
type: closing
trigger: device
conditions:
- condition: numeric_state
entity_id: cover.rollladen_kuche_111_cover_0
attribute: current_position
below: 80
enabled: true
actions:
- device_id: 1234xyz
domain: cover
entity_id: 4321xyz
type: stop
mode: single
Ist die Position bereits unter dem Schwellwert, und der “Down” button wird gedrückt, greift die Automatisierung und stoppt sofort.
Startet der Rollladen oberhalb des Schwellwertes, fährt er bis auf 0 (in die Blumen).
Dazu würde ich keine Automatisierung verwenden. Zumindest nicht, wenn Dir Deine Blumen lieb sind.
Stelle die Endlagen am Motor ein.
Hast Motoren mit elektrischen Endlagen, kannst Du das direkt am Schalter machen.
Mit mechanischen Endlagen, musst Du leider den Rollladenkasten öffnen.
Nach meiner Erfahrung hat Osorkon vollkommen recht. Das einzig wirklich sicher funktionierende sind die Endlagenschalter (oder eine wesentlich aufwendigere Abschaltung über Hardware).
Ich habe meinen Shelly 2PM mit ESPHome programmiert und geflasht (Jalousien mit Shelly 2.5 oder Sonoff Touch in Home Assistant einbinden | ESPHome). Vorteil dieser Methode ist, dass die gesamte Fahrkontrolle im Shelly abläuft und unabhängig von Verzögerungen oder Störungen im WLAN ist. Ich habe es trotzdem geschafft die Positionierung durcheinander zu bringen und wäre ohne Endschalter gegen die Wand gefahren.
Erst einmal funktioniert das Ansteuern von Position über Fahrzeiten und die kann man mit dem Shelly nicht unendlich genau messen/einhalten. Ohne „Nullung“ (Justierung) der Position durch die Endschalter würde ich schon deshalb davon ausgehen, dass die Position mit der Zeit immer fehlerhafter wird.
In meinem Fall habe ich glaube ich ein OTA Update gemacht, während der Rollladen nicht ganz offen war und schon war die Positionierung dahin (und die Endlagenabschalter haben mich gerettet)…
Ich würde ebenfalls dringend zur Endlage raten, um sicher zu sein.
Sollte dies, aus gleich welchen Gründen, nicht möglich sein, könnte man sich zum Beispiel mit einem Fensterkontakt behelfen.
Wenn Du diesen entsprechend tief anbringst, kannst Du das schließen als Trigger für einen Stopp nutzen. Außerdem kannst Du, wenn er geschlossen ist, per Regel ein weiteres herunterfahren der Rollladen verbieten.
Falls nicht verfügbar usw. könnte man ebenso stoppen / verbieten, um eine Ausfall / nicht Verfügbarkeit abzufangen.
Sollte recht zuverlässig funktionieren, wäre aber definitiv nicht meine erste Wahl. Andersherum geht es nur um Blumen, nicht Menschenleben.
Falls man die Mühe scheut die Endlagen zu justieren, gehen tut es auf jeden Fall.
Würde ich rechts und links vom der Fensterbank Abstandstücke installieren, auf welche der Rollladen auffährt. Der Einklemmschutz sollte greifen. Hier könnte man dann zusätzlich mit eine Automatisierung arbeiten
mir geht es aktuell auch grundsätzlich um das Verständnis von HA und Automatisierungen darin.
Heisst das, während der Rolladen in Bewegung ist, meldet der Shelly nicht die Position? Oder ist an meiner Automatisierung etwas falsch?
Gruß
Chris
Bei deiner Automation wartet der Rechner darauf, dass sich der Rollladen beginnt zu schließen.
Dann schaut er genau einmal nach, ob der Wert unter 80 ist und wenn JA, dann wird der Rollladen gestoppt.
Wenn er bei einem Wert über 80 geschlossen wird, dann ist die Bedingung nicht erfüllt und er wird nie gestoppt.
Du bräuchtest einen Trigger, der während des Schließens immer wieder aufgerufen wird z.B. Timer (Problem: Du müsstest den Timer sehr häufig auslösen lassen, um genau zu positionieren).
Möglichkeit zwei: Du Triggerst zusätzlich darauf, dass der Cover-Wert unter 80 fällt.
Möglichkeit drei: Du nimmst die Bedingung raus und baust als Action eine Schleife, die solange wartet, bis Cover unter 80 ist (Problem: Kann das System stark belasten, da bei ungünstiger Programmierung quasi permanent eine Bedingung überprüft wird. Kann bei Programmierfehlern zur Endlosschleife werden…)
ich taste mich gerade in die HA-Welt vor, aber vielleicht kann ich hier was beitragen.
Bei dieser Problematik hilft eine Standard-Vorgehensweise, die in Industriesteuerungen grundsätzlich angewendet wird, wenn es keine rücklesbare Lagerückmeldung gibt, wie bei den Rollladen-Endschaltern:
Man fährt regelmäßig eine 0-Position an, z.B. den oberen Endschalter, wenn der Rolladen hoch gefahren wird. Der mechanische Schalter muss ein kurzes Stück bevor der 100%-Punkt in HA (=oben) erreicht ist, abschalten, und zwar auch bei Schnee und Eis und lahmendem WLan oder sonstigen Latenzen in der Übertragungskette. Also “das kurze Stück” nicht zu knapp wählen (sonst führt das irgendwann zu einem scheinbar zufälligen Fehler, nach dem man sich todsucht).
HA merkt das vorzeitige Abschalten nicht und fährt das kurze Stück weiter (wobei nichts mehr passiert). Damit wird jedes mal der Fahrweg neu genullt und die zeitgesteuerten Fahrwege stimmen wieder für die nächsten paar Bewegungen.
2 kleine Hölzer in den Führungen habe ich auch erstmal installiert.
Nachteil dabei ist, dass der Rollladen beim zu fahren soweit fährt, dass er sich im Kasten komplett entwickelt, bis der Überlastschutz abschaltet.
Zusätzlich zu den Hölzern, habe ich im Shelly eine “Movement time limit” für closing gesetzt.
wenn der Rolladen dann weiter abgewickelt wird, weil die Steuerung nichts von den Holzstückhen weis, führt das zu lustigen Faltungen der Rolladenlamellen im Rolladenkasten oberhalb der Führungsschienen.
Wenn dann noch eine Hochschiebesicherung irgendwohin klappt, bevor der Motor stoppt, gibt es einen schönen Salat im Rolladenkasten.
Die unterste Lamelle ist bei den meisten Rolläden extra beschwert, damit der Rollladenpanzer sauber nach unten gezogen wird. Warum wohl?