NEWS
Rolladensteuerung 433mhz-Funkmotoren
-
Hallo!
Als erstes wünsche ich Euch allen frohes neues Jahr
Jetzt zu meinem Thema:
nach langer Suche, Recherche, Video-Anleitungen etc… brauche ich Eure Hilfe!
Ich bin seit einiger Zeit auf der Suche nach einer "Automatisierung" und "Visualisierung" meiner Rolläden.
Ausgangsituation:
13 Rolläden im EG mit Funkmotoren (direkt im Rohrmotor) verbaut. (Hersteller: Rohrmotor24)
Funkfernbedienung (433mhz) mit einzelnen Kanälen und Gruppen angelernt --> Auch Zeitsteuerung über Fernbedienung möglich.
Da ich eine Heizungssteuerung über Homematic (KEIN IP) auf einer CCU2 habe, wollte ich auch die Rolläden einbinden, leider nicht möglich.
Durch Dr.Google kam ich auf dieses Forum.
Was habe ich bisher gemacht?
IOBroker auf Synology-NAS installiert.
Homematic integriert
Broadlink RMPRO+ angeschafft und eingebunden
Alle Rolladen (und auch eine NoName Markise mit Funkmotor) über "LearnRF" mit Broadlink angelernt.
Ich habe somit je Rolladen folgende Befehle angelernt:
Ich kann jeden Rolladen mit Button bedienen, auch über Alexa möglich (iobroker.pro-Account) –> mit Routinen über Alexa-AppNun möchte ich mich an die Visualisierung machen, mit Sweethome 3d bereits Grundriss erstellt, und nun möchte ich über ein Android-Tablet als erstes die Rolladen über Widget bedienen.
Dazu habe ich mir HQWidgets installiert und das Widget "Window and Shutter" ausgewählt.
Leider kann ich mit diesem Widget den Rolladen nicht bedienen (Object ID auch schon als SCENE ausgewählt) durch verschiedene Einstellungen funktioniert das Widget entweder "runter" oder "rauf" --> aber nicht in beide Richtungen.
Ich habe die "Button" auch bereits als Rolle "Level" angelegt, auch ohne Erfolg.
Ist es überhaupt möglich, diese Funkmotoren über so ein Widget zu steuern oder ist es nur möglich mit "AN" und "AUS"?
Durchforste das Forum bereits seit 3 Tagen ohne Erfolg.
Wenn mehr Daten benötigt werden einfach sagen.
lg
Michael
-
Na,
da wird wohl ein Script nötig sein, daß deinen "Level"-Datenpunkt bei Änderung auswertet und je nach "größer als vorher" oder "kleiner als vorher" den entsprechenden Button aktiviert.
-
danke,
ich habe mir schon gedacht, dass es ohne nicht gehen wird.
Wie könnte so ein Script aussehen?
Mache ich das über Blockly oder JS?
danke schon vorab!
lg
Michael
-
Bist Du ein Nerd, nimmst Du JS.
Bist Du ein Anfänger, nimmst Du Blockly, Google, Foren und Fragen…
-
Sowas:
<xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id="pXFz%NjSm*lxX6t4Wa{/" x="62" y="-138"><mutation items="1"></mutation> <field name="CONDITION">ne</field> <value name="OID0"><shadow type="field_oid" id="lSzO!3)HsdC3,wtNCH{="><field name="oid">admin.0.ArZi-Rollladen-Parameter.Soll-Position</field></shadow></value> <statement name="STATEMENT"><block type="controls_if" id="0fzy]CF?rVtovpZ])/Yv"><value name="IF0"><block type="logic_compare" id="nzh5k]@5-[TOnO5S=+RR"><field name="OP">LT</field> <value name="A"><block type="on_source" id="!)64vBb4xZezA#SC`DSm"><field name="ATTR">oldState.val</field></block></value> <value name="B"><block type="variables_get" id="h8I~05cFAnp3U?6/rDLw"><field name="VAR">value</field></block></value></block></value> <statement name="DO0"><block type="comment" id="/Oudsj?Ei3v+BVicE~tr"><field name="COMMENT">hoch mit de Maschine</field></block></statement> <next><block type="controls_if" id="[+et`fX=uA6N_EN8^.vI"><value name="IF0"><block type="logic_compare" id="Lxq+w){;nlE:|h,T+~fJ"><field name="OP">GT</field> <value name="A"><block type="on_source" id="4i?:3V`IX)6i8ZLWC^sA"><field name="ATTR">oldState.val</field></block></value> <value name="B"><block type="variables_get" id="ont7oFJJD%Y~/H7vW|iK"><field name="VAR">value</field></block></value></block></value> <statement name="DO0"><block type="comment" id="g6-0/]}mJ,WN{e7M:Ob}"><field name="COMMENT">runter mit de Maschine</field></block></statement></block></next></block></statement></block></xml>
-
da bin ich dann ein "nerdiger" Anfänger :lol:
wie gehe ich mit dem Script vor?
Wie schon geschrieben –> Google, Foren und Fragen <-- bin ich mittendrin, aber meine "spezielle" Anforderung habe ich nicht gefunden.
Einige ähnliche Fragen wurden "gelöst" aber der Lösungsweg nicht beschrieben.
lg
Michael
-
Hallo,
ich bin jetzt "etwas" weitergekommen.
Was funktioniert?
Rolladen über Alexa steuern –> hat immer funktioniert
Rolladen über HQWidget (vis) steuern funktioniert -->hoch und runter
aber der Status im Widget wird nicht angezeigt
Was habe ich gemacht?
Einen Datenpunkt angelegt (TESTOBJEKT)-> Rolle: Switch, Art: Logikwert
ein Skript erzeugt und gestartet:
und eine Szene angelegt (scene.0.Rollade_Kueche_01):
als Trigger habe ich den Datenpunkt "TESTOBJEKT" genommen.
und die Zustandskonfiguration:
in der Szene springt der Status immer zwischen "wahr/undefiniert" wenn der Status "wahr" –>Rollo unten
ist (Rollo ist auch unten)
bei "Falsch" springt der Status immer zwischen "falsch/undefiniert" -->Rollo hochgefahren (oben)
auch im HQWidget Window und Shutter springt der Status zwischen NAN% und 0% bzw. 1% hin und her.
Wobei 1% auch nicht richtig ist --> bei Status "wahr" Rollo unten sollte eigentlich 100% angzeigt werden.
Sobald ich die Szene deaktiviere und über "Objekte" das Hoch- und Runterfahren auslöse, funktioniert es und der Status ändert sich auch auf "true"(unten) und "false"(oben)
Aber über das HQWidget funktioniert es nicht, da die Szene deaktiviert wurde
Einstellung HQWidget:
Eventuell verzettle ich mich mit den Einstellungen, Anregungen und Anpassungen Eurerseits nehme ich gerne an.
Wie schon eingangs geschrieben, Anfänger in diesem Bereich, aber es muss doch zu schaffen sein.
lg
Michael
-
noch etwas:
wenn ich die Trigger in der Szene ändere:
Wahr (Rollo runter) auf <
und
Falsch (Rolle rauf) auf >
dann bleibt der Status in der Scene auf "Undefiniert" stehen
lg
Michael
-
Hallo,
ist das Thema noch offen? Hätte eine Lösung Skript + Vis -
Hallo tobetobe,
ja es ist wieder aktuell geworden, hat bis dato zwar einigermaßen funktioniert, hätte aber gerne die o.a. Themen richtig umgesetzt.
lg
-
Hallo Nussi99,
ob dir meine Lösung passt, kann ich natürlich nicht sagen. Sie ist aber ganz einfach zu testen und funktioniert bei mir seit einigen Jahren vollkommen zuverlässig. Mein Ansatz besteht aus fünf Teilen:
- einem Widget pro Fenster bzw. pro Rolladen
- einem Blockly-Skript pro Rolladen
- einem weiteren Blockly-Skript zur Bildung eines Langzeit-Temperaturwertes, den ich zur Beschattung bei hohen Außentemperaturen verwende
- einem Javascript aus dem Forum zur Bereitstellung der Zeiten für den Sonnenauf- und Untergang
- dem ioBroker Feiertags-Adapter, den du selbst installieren kannst
Hier kommt nun alles, was du brauchst:
Das VIS für drei Rollläden (im Schlafzimmer je Flügel ein Rollladen):
FOLGT wg. Größe
Die Zuordnung der Datenpunkte musst du natürlich passend zu deinen Geräten neu vornehmen.
Funktionsweise: Die Rollos öffnen und schließen jeweils zum Sonnenauf- bzw. -untergang, jedoch nicht vor der unter "NICHT VOR" eingetragenen Uhrzeit und nicht nach der unter "NICHT NACH" eingetragenen Zeit. Diese Zeiten kann man getrennt für Wochentage und für Wochenenden und Feiertage einstellen. Im Bedarfsfall kann man rechts unter "Manuell" mit den Knöpfen AUF, ZU und STOP auch von Hand steuern. Zusätzlich könnte auch eine bestimmte Position angefahren werden, indem man das Feld mit den Prozentwerten anklickt oder einen neuen Wert auswählt. In diese Funktion habe ich, da die automatische Steuerung zuverlässig funktioniert, keine Zeit mehr investiert. Die Verweildauer, die man unter dem %-Wert noch eingeben kann, wird daher (noch) nicht beachtet. Momentan verhält sich das Skript so, dass der Prozentwert angenommen wird und das Rollo in die entsprechende Position fährt, dann jedoch nach einer Minute wieder die vorherige Position bezieht. Wenn ich das noch für dich ändern soll, gib mir bitte Bescheid.
So, nun die Skripte. Zunächst das Skript zur Steuerung der Rollos. Einfach im JS-Adapter importieren und wieder auf Blockly umschalten.
Wenn du einen neuen Raum, bzw. einen neuen Rollladen anlegen möchtest, kopiere das Skritp in einen Editor, suche nach "Umkleidezimmer" und ersetze diesen Begriff mit dem von dir gewünschten Raum, zB "Esszimmer". Mit dem VIS kannst du ebenso verfahren.Für jedes Rollo musst du übrigens die Zeit erfassen, die das Rollo benötigt, um aus dem Zusatnd "Offen" = 0% in den Zustand "Geschlossen" = 100% zu fahren. Das gleiche mit der Zeit zum Schließen, die üblicherweise etwas größer ist, da das Eigengewicht des Rollladen den Vorgang verzögert. Die beiden Werte sind dann am Anfang des Skripts in die vorgesehenen Felder in Millisekunden einzutragen und können später noch optimiert werden, wenn die angefahrene Position nicht ganz passen sollte. Testen würde ich das mit 90% und 10%.
Dann das Skript für den Langzeitwert der Temperatur. Für den Fall, dass du keinen Außenthermostaten besitzt, auf den das Skript reagieren kann, lass es einfach Weg und setze den Temperaturwert in dem vorigen Skript auf einen unsinnig hohen Wert, zB 99 Grad.
Und das Skript für die Sonnenauf- und -untergangszeiten:
Un nun gutes Gelingen. Wenn du Fragen hast, melde dich bitte.
Gruß
Thomas -
-
Und so musst du dir das Ganze vorstellen:
VIS hast du jetzt aus Platzgründen nur für den Oberen Teile (Umkleidezimmer) bekommen. Bitte entsprechend kopieren.
-
Hallo tobetobe,
Herzlichen Dank, ich werde es die nächsten Tage in Ruhe probieren.
melde mich bei Dir wie es funktioniert.lg
nussi99 -
Hallo tobetobe,
eine Frage zum Script, da hast geschrieben:
So, nun die Skripte. Zunächst das Skript zur Steuerung der Rollos. Einfach im JS-Adapter importieren und wieder auf Blockly umschalten.
Wemm ich das Script im JS-Adapter importiere, kann ich nicht auf "Blockly umschalten"
siehe anbei:
bei einem anderem Skript ist die Anzeige vorhanden:
habe auch schon probiert, dieses Skript als zip.Datei zu importieren --> umschalten auf Blockly nicht möglich!
Gibt es hier einen Trick?
danke
nussi99 -
@nussi99
wart mal kurz. Ich erstelle dir einen Export und poste den dann nochmals -
@nussi99
versuche mal, dies zu importieren: -
danke, jetzt geht es.
ich werde mal die Daten ändern.lg
-
-
Hi,
ich hätte da eine Frage, wenn ich die Befehle von einem KNX-Taster aus aufrufen möchte. Wie gehe ich das am Besten an? Kann mir da wer helfen?
Danke!