Shop-Wechsel

Der Warenkorb wird nicht übernommen.

Zum Privatkunden Shop

Homematic

HM-LC-Sw4-PCB Script zur Verriegelung der Taster für Stufenschalter

Beiträge zu diesem Thema: 5
HM-LC-Sw4-PCB Script zur Verriegelung der Taster für Stufenschalter
Antwort als hilfreich markieren
0Positive Markierungen
Antwort als nicht hilfreich markieren
0Negative Markierungen
Melden Sie diesen Beitrag
24.06.2015, 00:15
Hallo,
nachdem ich mir den HM-LC-Sw4-PCB erfolgreich zusammen gelötet habe, fehlt mir im Moment die zündende Idee für die Verriegelung der Tasten:

Soll-Funktion: beim Drücken einer der 4 Tasten, sollen automatisch die anderen Schalter auf AUS gesetzt werden. So das immer nur einer aktiv ist (abgesehen von der kurzen Überlappung bis zur Ausführung).

Erster Gedanke war ein Programm:
- wenn Taste1 oder 2 oder 3 oder 4 eingeschalten wird
- dann per Script die anderen ausschalten
Problem: beim Ausschalten wird dieser Programm überlagert und das Ergebnis ist, alle Schalter sind wieder aus :-(

var Ptaste = dom.GetObject("$src$");

var d = dom.GetObject("DummyStr");
d.Variable(Ptaste.ID());

if (Ptaste.ID() == 2340)
{
dom.GetObject("EG_Stufe_1:2").State(0);
dom.GetObject("EG_Stufe_2:3").State(0);
dom.GetObject("EG_Stufe_3:4").State(0);
}

if (Ptaste.ID() == 2346)
{
dom.GetObject("EG_Stufe_0:1").State(0);
dom.GetObject("EG_Stufe_2:3").State(0);
dom.GetObject("EG_Stufe_3:4").State(0);
}
......

Hat jemand eine Idee, wie dieses Problem gelöst werden kann?

Wäre sehr dankbar für einen Hinweis.

Grüßle
Aw: HM-LC-Sw4-PCB Script zur Verriegelung der Taster für Stufenschalter
Antwort als hilfreich markieren
0Positive Markierungen
Antwort als nicht hilfreich markieren
0Negative Markierungen
Melden Sie diesen Beitrag
26.06.2015, 17:20
Hallo,

ja, man kann das auch mit einem Programm durchführen. Das sollte auch so funktionieren, wie abgebildet.
Jedoch verstehe ich nicht die gewünschte AUS-Logik. Was sollte denn passieren, wenn der Aktive Kanal ausgeschaltet wird. Sollte sich jetzt etwas einschalten?

Man kann alternativ aber das auch schön in der CCU zusammenklicken mit den "Sonst, wenn..." Funktionen

Und hier liegt vielleicht auch bereits das Problem: Wer, was oder wie ruft denn das Skript auf? Also welche Bedingungen?
Evtl. must Du hier auch auf die AUS Bedingung triggern und dann ggfls. ein anderes Programm aufrufen.

Aw: HM-LC-Sw4-PCB Script zur Verriegelung der Taster für Stufenschalter
Antwort als hilfreich markieren
0Positive Markierungen
Antwort als nicht hilfreich markieren
0Negative Markierungen
Melden Sie diesen Beitrag
26.06.2015, 21:20
Hallo Holzt,

vielen Dank für deine Antwort.

Meine Beschreibung war vielleicht nicht ganz sauber: eigentlich möchte ich eine Toogle-Gruppe! Wenn eine Taste gedrückt wird, müssen die anderen Tasten auf AUS gehen. Das heißt, eine Taste ist immer gedrückt. Es soll keine Kanal ausgeschaltet werden ( könnte man natürlich tun! aber dann greift die Standard Logik der Lüftungssteuerung und setzt die Stufe 1).

Das Script wir durch die Änderung der Taste ausgelöst:

Bedingung: Wenn...
EG_Stufe_3:4 bei
ODER
EG_Stufe_2:3 bei
ODER
EG_Stufe_1:2 bei
ODER
EG_Stufe_0:1 bei

Aktivität: Dann...Vor dem Ausführen alle laufenden Verzögerungen für diese Aktivitäten beenden (z.B. Retriggern).
var Ptaste = dom.GetObject("$src$"); var d = dom.GetObject(...

Aktivität:Vor dem Ausführen alle laufenden Verzögerungen für diese Aktivitäten beenden (z.B. Retriggern).

Aw: HM-LC-Sw4-PCB Script zur Verriegelung der Taster für Stufenschalter
Antwort als hilfreich markieren
0Positive Markierungen
Antwort als nicht hilfreich markieren
0Negative Markierungen
Melden Sie diesen Beitrag
27.06.2015, 13:19
Hallo AllesMalProbieren,

so wie ich verstanden habe, möchte Sie nichts anderes als einen 4 - stufigen Vorwahlschalter (1-2-3-4) ähnlich einem Drehschalter realisieren, wo immer
* nur ein Ausgang aktiv sein darf
* und zwar der Ausgang an dem die Taste bedient wurde

Mit der WebUI könnte folgendes Programm ohne script erstellt werden. Für jede Taste 1..2..3..4 ein eigenes Programm erstellen.

Für Taste "1"
Bedingung: Wenn...
Aktor Kanal 1 - Schaltzustand: ein - bei Änderung auslösen
Aktivität: Dann...
Aktor - Kanal 1 - ein
Aktor - Kanal 2 - aus
Aktor - Kanal 3 - aus
Aktor - Kanal 4 - aus

Neues Programm erstellen für Taste "2"

Bedingung: Wenn...
Aktor Kanal 2- Schaltzustand: ein - bei Änderung auslösen
Aktivität: Dann...
Aktor - Kanal 1 - aus
Aktor - Kanal 2 - ein
Aktor - Kanal 3 - aus
Aktor - Kanal 4 - aus

Je ein neues Programm erstellen für Taste "3" und Taste "4" nach dem gleichen Schema.

Hinweis: Wenn die eigenen Tasten des Schaltaktors verwendet werden sollen....kein zusammenhängendes Programm erstellen, mit einer Sonst, wenn...-Bedingung, das würde hier nicht funktionieren.

Viele Grüße

Viele Grüße..elkotek
Aw: HM-LC-Sw4-PCB Script zur Verriegelung der Taster für Stufenschalter
Antwort als hilfreich markieren
0Positive Markierungen
Antwort als nicht hilfreich markieren
0Negative Markierungen
Melden Sie diesen Beitrag
28.06.2015, 22:07
Hallo elkotek,

vielen Dank für Deine Hinweise.
Ich habe Deinen Vorschlag ausprobiert, leider ohne Erfolge. Habe vielleicht auch etwas nicht beachtet.

Meinen ursprünglichen Ansatz habe ich nochmals probiert und der funktioniert nun auch: :D

Bedingung: Wenn...
EG_Stufe_3:4 bei
ODER
EG_Stufe_2:3 bei
ODER
EG_Stufe_1:2 bei
ODER
EG_Stufe_0:1 bei

Wichtig bei Aktivität dann... den HAKEN entfernt!!!

Es funktioniert wenn ich die Tasten am Gerät drücke, oder auch über die WebUI anstosse, oder auch über Android!

Nochmals vielen Dank an alle :D