NEWS
Schalter mit drei Zuständen
-
Hallo Martin,
danke für Deine schnelle Rückmeldung!
Es sind zwei Datenpunkte aber drei Funktionen.Datenpunkt 1: Rollladen schalten: 0= schließen, 1= öffnen
Datenpunkt 2: Rolladen StoppIch habe leider keine Positionsrückmeldung der Rolladen.
Wenn ich zum Beispiel auf "Sonnenschutz" (d.h. Rollladen wird nur teilweise geschlossen) schalte,
gehe ich wie folgt vor:- Ich fahre den Rollladen hoch um eine definierte Ausgangsposition zu erzeugen.
- Ich fahre der Rollladen über eine definierte Zeit nach unten (Javascript).
Da ich mit Datenpunkt 1 nur öffnen oder schließen kann, benötige ich den Datenpunkt 2 um
den Rollladen nach der abgelaufenen Zeit zu stoppen.Mit Javascript kann ich die Datenpunkte sicher erzeugen.
Ich würde jetzt ein Widget brauchen, das z.B. 3 Stellungen hat:Rollladen schließen (Datenpunkt 1 = 0)
Rollladen öffnen (Datenpunkt 1 = 1)
Rollladen Stopp (Datenpunkt 2 = 1)Aber ich habe keine Idee, mit welchem Widget iich das verknüpfen kann.
Gruß Klaus
-
@hermes sagte in Schalter mit drei Zuständen:
Ich würde jetzt ein Widget brauchen, das z.B. 3 Stellungen hat:
Rollladen schließen (Datenpunkt 1 = 0)
Rollladen öffnen (Datenpunkt 1 = 1)
Rollladen Stopp (Datenpunkt 2 = 1)du brauchst 2 Widgets.
ein Schalter für auf/ab (0/1)
ein Taster für Stoppist auch viel übersichtlicher
aber was startet denn dann die Fahrt?
-
Ja, ein Taster und ein Schalter würde auch gehen.
Schöner wäre ein Schalter mit drei Stellungen:
Öffnen - Stopp - Schließen -
@hermes
ob das jetzt ein 3 in 1 Widget, oder 3 einzelne in einen gemeinsamen Rahmen sind, ist doch von der Funktion egal. -
Für den Start der Fahrt greife ich auf den KNX-Datenpunkt zu.
Für Sonnenschutz habe ich einen Datenpunkt generiert den ich in einem
Javascript weiterverarbeite und damit die KNX-Datenpunkte der Rolladen steurere. -
@hermes sagte in Schalter mit drei Zuständen:
Für den Start der Fahrt greife ich auf den KNX-Datenpunkt zu.
also ein weiterer DP?
-
@hermes sagte: Schalter mit drei Stellungen:
Öffnen - Stopp - SchließenFür eine Werteliste gibt es Widgets (z.B. Radiobutton). Um die Werteliste auf die zwei Datenpunkte zu übersetzen, benötigt man ein Skript.
-
@hermes Einen nicht besonders ansehnlichen Schalter habe ich da schon einmal benutzt:
"jqui - radiobutton value list"
-
so mache ich das:
on({ id: '0_userdata.0.Datenpunkte.Sonnenschutz_Nord_Ein' /* Sonnenschutz_Nord_Ein */, change: 'ne' }, async (obj) => { let value = obj.state.val; let oldValue = obj.oldState.val; if (getState('0_userdata.0.Datenpunkte.Sonnenschutz_Nord_Ein').val == true) { setState('0_userdata.0.Datenpunkte.Sonnenschutz_Nord_laeuft' /* Sonnenschutz_Nord_laeuft */, true); setState('knx.0.Rolladenantriebe.Erdgeschoß.EG_Arbeitszimmer_Fenster_NW_beide_Rolladen_-_schalten' /* EG_Arbeitszimmer_Fenster_NW_beide_Rolladen - schalten */, false); setState('knx.0.Rolladenantriebe.XXX-_schalten' /* OG_Badezimmer_Rolladen - schalten */, false); setState('knx.0.Rolladenantriebe.XXX_-_schalten' /* OG_Gaestezimmer_Rolladen - schalten */, false); setState('knx.0.Rolladenantriebe.XXX_-_schalten' /* EG_Badezimmer_Rolladen - schalten */, false); setState('knx.0.Rolladenantriebe.EXXX_-_schalten' /* EG_Treppenhaus_Rolladen - schalten */, false); setState('knx.0.Rolladenantriebe.Erdgeschoß.EG_Arbeitszimmer_Fenster_SW_Rolladen_-_schalten' /* EG_Arbeitszimmer_Fenster_SW_Rolladen - schalten */, false); setState('knx.0.Rolladenantriebe.XXX_-_schalten' /* EG_Fenster_beide_SW_Rolladen - schalten */, false); await wait(19000); setState('knx.0.Rolladenantriebe.XXX_beide_Rolladen_-_schalten' /* EG_Arbeitszimmer_Fenster_NW_beide_Rolladen - schalten */, true); setState('knx.0.Rolladenantriebe.XXX_-_schalten' /* OG_Badezimmer_Rolladen - schalten */, true); setState('knx.0.Rolladenantriebe.XXX_-_schalten' /* OG_Gaestezimmer_Rolladen - schalten */, true); setState('knx.0.Rolladenantriebe.XXX_-_schalten' /* EG_Badezimmer_Rolladen - schalten */, true); setState('knx.0.Rolladenantriebe.EXXX_-_schalten' /* EG_Treppenhaus_Rolladen - schalten */, true); setState('knx.0.Rolladenantriebe.XXX_-_schalten' /* EG_Arbeitszimmer_Fenster_SW_Rolladen - schalten */, true); setState('knx.0.Rolladenantriebe.XXX_-_schalten' /* EG_Fenster_beide_SW_Rolladen - schalten */, true); await wait(13000); setState('knx.0.Rolladenantriebe.Erdgeschoß.EG_Arbeitszimmer_Fenster_NW_beide_Rolladen_-_stoppen' /* EG_Arbeitszimmer_Fenster_NW_beide_Rolladen - stoppen */, true); setState('knx.0.Rolladenantriebe.XXX_-_stoppen' /* OG_Badezimmer_Rolladen - stoppen */, true); setState('knx.0.Rolladenantriebe.XXX_-_stoppen' /* OG_Gaestezimmer_Rolladen - stoppen */, true); setState('knx.0.Rolladenantriebe.XXX_-_stoppen' /* EG_Badezimmer_Rolladen - stoppen */, true); setState('knx.0.Rolladenantriebe.XXX-_stoppen' /* EG_Treppenhaus_Rolladen - stoppen */, true); setState('knx.0.Rolladenantriebe.XXX_-_stoppen' /* EG_Arbeitszimmer_Fenster_SW_Rolladen - stoppen */, true); setState('knx.0.Rolladenantriebe.XXX_-_stoppen' /* EG_Fenster_beide_SW_Rolladen - stoppen */, true); setState('0_userdata.0.Datenpunkte.Sonnenschutz_Nord_laeuft' /* Sonnenschutz_Nord_laeuft */, false); } });
MOD-EDIT: Code in code-tags gesetzt!
-
Kann man eventuell ein passendes Widget, mit drei Stellungen, selber, mit vertretbarem Aufwand, generieren?
-
Habs momentan so gelöst.
Nicht das hübscheste.
-
vielen Dank für den konkreten Vorschlag. Wie heißt das Widget?
-
@hermes sagte in Schalter mit drei Zuständen:
Wie heißt das Widget?
wahrscheinlich
@homoran sagte in Schalter mit drei Zuständen:
3 einzelne in einen gemeinsamen Rahmen
- slider
-
Hier