Lampenfassung als Schalter...

Begonnen von T.poppe, 03 April 2017, 15:55:47

Vorheriges Thema - Nächstes Thema

T.poppe

Hallo zusammen,
direkt vorweg: ich bin blutiger Anfänger was FHEM und Z-Wave angeht, bin aber schon recht weit gekommen und hänge jetzt an einem etwas speziellen Problem. Zu mindest habe ich darüber sonst nirgendwo etwas gefunden ;)

Zur Ausstattung: Ich habe hier einen RPi3 mit FHEM, einen Fibaro Zwischenstecker und eine Lampenfassung AN145 von Everspring. Das ganze läuft über einen ZME_USB.

Was bisher funktioniert:
- FHEM läuft und ich kann darauf zugreifen
- Der Stick ist eingebunden und funktioniert
- Zwischenstecker und Lampenfassung sind in FHEM eingebunden und lassen sich auch schalten
- Die Lampenfassung gibt eine Notification raus sobald man den kleinen Knopf an der Fassung drückt.

Soweit so gut...
Was ich aber eigentlich noch möchte:
Die Lampenfassung kommt in meine normale Deckenlampe. Die Lampe wird über einen normalen Lichtschalter geschaltet, die Fassung hat also manchmal Strom, manchmal nicht. Bevor die Frage kommt: Ein UP-Schalter passt leider nicht hinter den Schalter :(

über

get zw.lampenfassung.1 swbStatus

kann ich auch wunderbar den Status der Fassung abfragen. Ist der Schalter geschlossen bekomme ich den State, ist der Schalter offen bekomme ich einen Fehler und "transmit" geht auf "No_ACK".
Über diese beiden Zustände soll nun der Zwischenstecker geschaltet werden.
Meine Idee:
Ich lege eine Notify an mit Zeitplan "jede Sekunde".
Die Notify ruft den swbStatus ab, und schaltet entsprechend der Antwort den Zwischenstecker.
(Außerdem soll die Fassung dann auf state on geschaltet werden, macht sie nach stromverlust nicht von selbst)

Ist meine Überlegung bis hier richtig?
Leider komme ich auch mit dem Notify nicht wirklich weiter...
Um die sekündliche Abfrage zu machen habe ich einen dummy "taster" angelegt und folgende Notify

define ueberwachung notify taster {
fhem("get zw.lampenfassung.1 swbStatus");
if (zw.lampenfassung.1.state eq "off"){
  fhem("set zw.lampenfassung.1, zw.zwischenstecker.1 on");
  }
else {
fhem("set zw.zwischenstecker.1 off");
}
}

Und schon da scheitert es... er nimmt den Notify so gar nicht an und meckert über die Klammern?
Ich hoffe ihr könnt mir da weiterhelfen... Jedesmal auf einen Stuhl zu steigen um in der Lampe das Knöpfchen zu drücken ist ja nicht so sehr praktisch. Und meiner bessern Hälfte den Lichtschalter zu verbieten wird wohl nicht klappen ;)

Danke euch
Gruß
Tobi

rudolfkoenig

Senden einmal die Sekunde wird Grund vielen Uebels sein, ich rate davon dringend ab. Weiss nicht genau, ob ZWave die 1% Regel einhalten muss, wenn ja, dann duerfte das den Rahmen sprengen.

Get laeuft im Hintergrund, d.h. die Pruefung auf off wird erst in der naechsten Runde wahr sein.

Wg. dem Perl Syntax Fehler: zw.lampenfassung.1.state gibts nicht, sondern ReadingsVal("zw.lampenfassung.1", "state", "") oder Value("zw.lampenfassung.1"). Bitte ein paar perl Grundlagen aneignen, macht unser Support-Leben einfacher.

T.poppe

Alles klar, danke dir :)
Ich versuch mal weiter mein Glück...

Sind dir zufällig Sensoren bekannt die Kondensatorgepuffert sind und ein Signal senden sobald die Spannung abfällt?