Mehrere Sensoren in einer Anweisung abfragen

Begonnen von jeep, 19 August 2015, 19:01:59

Vorheriges Thema - Nächstes Thema

jeep

Hallo liebe Gemeinde,

wieder mal steh ich auf dem Schlauch und brauche Nachhilfe. Ich würde gerne wissen ob Abends alle Türen und Fenster zu sind. Bis jetzt habe ich nur einen Fibaro FGK-101 aber weitere 2 sind geordert. Mein Vorhaben: Ist eines der Fenster zwischen 21:00 und 22:30 noch gekippt oder offen, soll ein Zwischenstecker geschaltet werden an dem da z.B. eine Lampe hängt. Solange eines der Fenster in der Zeit offen ist, soll die Lampe an bleiben und erst wenn alles zu ist, soll sie ausgehen. Ich denke dass das für viele hier eine einfache Aufgabe ist. Besten Dank für Eure Hilfe.
Weiß vieleicht jemand ob es einen ZWave Gong gibt? Sirenen gibt es ja, die wären aber für mein Vorhaben zu laut.

Grüße,
Josef
Ein wenig HomeMatic
RPi2  - UZB1, FHEM Testsystem - 8 devices
HC2  - 72 devices  (95 % sind Fibaro devices)

Wernieman

Ich würde es anders angehen:

Bei einem "Fenster on" event in der Zeit die Lampe anschalten

Bei einem "Fenster close" event alle anderen Prüfen und wenn alle Close, die Lampe ausschalten. Per "if" eigentlich relativ einfach lösbar (Siehe Dokumentation zu if)
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

justme1968

um mehrere (gleiche) sensoren zusammenzufassen gibt es structure.

um 21 die lampe per at und prüfen der structure einschalten. bei öffnen über ein notify auf die structure in dem zeitraum (disabledForIntervalls) ebenfalls die lampe einschalten. beim schließen ausschalten.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

jeep

Hi,

danke für die schnellen Antworten, ich kann fhem und perl gerade mal buchstabieren. Mit meinem XS1 würde ich alles mit ein paar "ifs und or" leicht hinbekommen aber ich bin kein Nerd und will auch keiner werden. Also wenn man mir konkret was dazu sagen  kann, dann bitte es gleich mal zu Code zusammen fassen und mir zeigen wie ich es einbinde, weil ich wüßte nicht mal an welcher Stelle ich anfangen soll. Ein "if" , "or" oder "and" wäre auch kein Problem, wenn ich die Oberfläche besser verstehen würde, denn im Vergleich zu anderen Heimautomationssystemen  ist das hier sehr kryptisch obwohl es mächtiger ist, weil es fast alles kann und das finde ich sehr schade. Ein schickes GUI in dem ich meine Szene zusammenklicken könnte wäre dann schon das geilste was es auf dem Markt gibt.

Grüße,
Josef
Ein wenig HomeMatic
RPi2  - UZB1, FHEM Testsystem - 8 devices
HC2  - 72 devices  (95 % sind Fibaro devices)

Wernieman

Sorry, aber da ist fhem nichts für Dich.

Wir könnten Dir zwar eine Lösung liefern, dann würdest Du aber bei Problemen sofort auf die Nase fliegen. Und sooooo schwierig ist Dein Problem nicht.

FHEM ist ein System, wo man sich einlassen, einarbeiten muß, dann kann es aber ... sehr viel.

Ein "KLickibunti" System gibt es auch Meineswissens nicht in der Hausautomatisation.
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

jeep

#5
ZitatSorry, aber da ist fhem nichts für Dich.

Das mag sein, aber dass kannst Du zum Glück nicht entscheiden.  :P

ZitatWir könnten Dir zwar eine Lösung liefern, dann würdest Du aber bei Problemen sofort auf die Nase fliegen. Und sooooo schwierig ist Dein Problem nicht.
Das glaube ich nicht, aber wenn man mir ein Beispiel gibt, kann ich wohl einiges daraus ableiten. Ich hab vor ca.11 Jahren schon mal größere Sachen in PHP gemacht, also ein bisschen Hintergrundwissen ist noch da. Dein Hinweis zu "if" hat mir nichts genutzt, wohl aber der in der nachfolgenden Antwort über structure.


ZitatFHEM ist ein System, wo man sich einlassen, einarbeiten muß, dann kann es aber ... sehr viel.
Das hab ich doch gar nicht bestritten, sondern im Gegenteil, ich habe die Mächtigkeit von fhem auch erkannt, und da ich vor ein paar Monaten zwave entdeckt habe bin ich so auf FHEM gestoßen.
Es war wohl zu viel verlangt mir ein kleines Codebeispiel zu geben. Unter Forumsupport versteh ich was anderes. Da wurde mir von anderen Mitgliedern schon sehr gut geholfen und ich lerne täglich dazu.
Möglicherweise habe ich ab nächstes Jahr mehr Zeit dazu, denn dann bin ich Rentner.  :) Aber jetzt mußte es schnell gehen.

ZitatEin "KLickibunti" System gibt es auch Meineswissens nicht in der Hausautomatisation.
Da muss ich Dir doch glatt sagen dass  "Deineswissens" in Sachen Hausautomation doch sehr einseitig ist. Hast Du schon mal was von Qivicon, Openhab, XS1, IP-Symcon, Zwave, Fibaro Homecenter Lite und Home Center 2 etc. gehört.
Guck Dir mal nur dieses kleine Beispiel  ab der 9 Min. an. https://www.youtube.com/watch?t=857&v=Sdp9ye_8brA da siehst Du wie man es mit Klickibunti macht.

Und ich lebe immer noch in der Hoffnung das mir jemand den richtigen Weg mit einem Codeschnipsel zeigt. Zwei notifys hab ich schon selber durchs Wikistudium hinbekommen.
Und wenn nicht muss ich halt doch zum Homecenter 2 greifen und Lua lernen.
Danke an alle die mir bis jetzt geholfen haben.

Grüße,
Josef
Ein wenig HomeMatic
RPi2  - UZB1, FHEM Testsystem - 8 devices
HC2  - 72 devices  (95 % sind Fibaro devices)

Wernieman

Zitat von: jeep am 20 August 2015, 19:57:19
Das mag sein, aber dass kannst Du zum Glück nicht entscheiden.  :P

Also ich wollte Dich nicht angreifen, sondern einen Hinweis geben. Sorry, aber spätestens JETZT bin ich raus.

Nochmals: lese Dir die FHEM Doku bezüglich "if" durch.

Da ich der Meinung bin, das man mehr lernt durch selbermachen als "blindes copy&paste" gebe ich immer nur Hilfestellung.

nur s.o.  .....

(und zum Glück weist DU nicht, was ich schon alles in der Hausautomatisation gesehen habe ;o) )
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

jeep

Habe mit unterem Code ein erstes Ergebnis, erst mal mit einem Fenstersensor (TFS1) aber egal ob ich Fenster auf oder zu mache der ZSt4 schaltet immer ein, aber die Startzeit wird berücksichtigt.

TFS1 IF ($hms gt "21:00" and $hms lt "22:00" and [TFS1:basicSet] eq "ff") (set ZSt4 on)


Aber meine Frau ist jetzt genervt weil ich schon 20 mal die Treppe hoch und runter bin um das Fenster zu Öffnen und zu Schließen bis ich die alle Fehler mit den Klammern und Werten beseitigt habe   >:(

Deshalb warte ich immer noch auf professionelle Hilfe.

Grüße,
Josef

@Wernieman - ich wollte Dich auch nicht angreifen, sorry wenn das so rüberkam aber ich war schon leicht verärgert.
Ein wenig HomeMatic
RPi2  - UZB1, FHEM Testsystem - 8 devices
HC2  - 72 devices  (95 % sind Fibaro devices)

igami

Lies dir mal die Deutsche Commandref zu DOIF durch, ich weiß, das ist "viel"


define Fenster_DOIF DOIF ([21:00-22:00] and [TFS1:basicSet] eq "ff")(set ZSt4 on)
attr Fenster_DOIF do always


Grüße
igami
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

rudolfkoenig

Herumrennen und Fenster klappern kann man minimieren, wenn man das trigger Kommando verwendet.

jeep

Danke Rudolf, guter Tipp, das ist dem Hausfrieden sehr dienlich.  ;)

Ein wenig HomeMatic
RPi2  - UZB1, FHEM Testsystem - 8 devices
HC2  - 72 devices  (95 % sind Fibaro devices)

jeep

So es ist vollbracht. Mehrere Fibaro Tür/Fenstersensoren sind mit folgendem Befehl zu einer Structure zusammen gefasst:

define TFS_Struct structure TFSGroup TFS1 TFS2 TFS3

und die structure wir mit einem DOIF wie folgt abgefragt:

([21:00-23:30] and [TFS_Struct:state] eq "open" or [TFS_Struct:state] eq "undefined")(set ZSt4:FILTER=STATE!=on on) DOELSE (set ZSt4:FILTER=STATE!=off off)

Der state "undefined" ist wenn nicht alle Sensoren den gleichen Status haben, also mindestens einer hat den Staus "open".
Durch die  FILTER=STATE Abrage, wird nicht jede 5 Minuten was ins Log geschrieben.

Danke @ justme1968, igami und Rudolf für die Tipps.

Grüße,
Josef
Ein wenig HomeMatic
RPi2  - UZB1, FHEM Testsystem - 8 devices
HC2  - 72 devices  (95 % sind Fibaro devices)