Fensterkontakt Status
-
- Beiträge: 70
- Registriert: 15. Nov 2021 10:02
Re: Fensterkontakt Status
Hallo zusammen,
ich hänge mich mal hier ran, da ich ein ähnliches Problem habe und nicht weiter komme.
Ich nutze die Fenstergriffsensoren von Homematic und habe jetzt auch die Übersetzung mittels der map Datei der Stati ins deutsche hinbekommen. Auch mit den drei verschiedenen Icons funktioniert. Nun zu meinem Problem.
Ich habe die Fenster pro Raum in einer Window Gruppe zusammengefasst, als Base Type der Gruppe habe ich Contact gewählt, als Aggregate Function ALL CLOSED the CLOSED else OPEN eingestellt. Nun sind die Räume (Gruppen) bei denen die MAP Transformation eingestellt ist immer OPEN buw steht da offen. Kann mann bzw wo kann man die MAP Transformation für die Gruppen einstellen, damit dort auch die richtigen Zustände ablesbar sind?
Danke und Gruß
Thomas
ich hänge mich mal hier ran, da ich ein ähnliches Problem habe und nicht weiter komme.
Ich nutze die Fenstergriffsensoren von Homematic und habe jetzt auch die Übersetzung mittels der map Datei der Stati ins deutsche hinbekommen. Auch mit den drei verschiedenen Icons funktioniert. Nun zu meinem Problem.
Ich habe die Fenster pro Raum in einer Window Gruppe zusammengefasst, als Base Type der Gruppe habe ich Contact gewählt, als Aggregate Function ALL CLOSED the CLOSED else OPEN eingestellt. Nun sind die Räume (Gruppen) bei denen die MAP Transformation eingestellt ist immer OPEN buw steht da offen. Kann mann bzw wo kann man die MAP Transformation für die Gruppen einstellen, damit dort auch die richtigen Zustände ablesbar sind?
Danke und Gruß
Thomas
Openhabian 4.0.4
- udo1toni
- Beiträge: 13989
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Fensterkontakt Status
Wie meinst Du das? Welchen Itemtyp hast Du denn in der Gruppe zusammengefasst? Contact kann es ja nicht sein, denn Contact hat nur zwei gültige Status, nämlich OPEN und CLOSED. Deine Fenstergriffsensoren liefern aber die Status 0, 1, 2 oder evtl. auch die Strings OPEN, CLOSED und TILTED (ich habe kein Homematic). Du kannst den Groupitem Typ nicht einfach frei wählen. Stattdessen musst Du den Status der Gruppe in diesem Fall selbst bestimmen und am besten auch nicht das Group Item selbst für den Status verwenden. So:
Wenn einer der Member der Gruppe gWindow seinen Status ändert, triggert die Rule.
Die Liste der Groupmember wird auf diejenigen gefiltert, welche nicht den Status CLOSED haben (dort muss natürlich der zum Itemtyp passende Status eingetragen werden). Enthält die entstehende Liste Einträge, so wird der Status von myWindowSum auf OPEN gesetzt, ansonsten auf CLOSED.
Und ja, die Mehrzahl von Status heißt Status, nicht Stati (sorry, alter Lateiner...).
Code: Alles auswählen
rule "update group status"
when
Member of gWindow changed
then
if(gWindow.members.filter[i|i.state != "CLOSED"].size > 0)
myWindowSum.postUpdate(OPEN)
else
myWindowSum.postUpdate(CLOSED)
end
Die Liste der Groupmember wird auf diejenigen gefiltert, welche nicht den Status CLOSED haben (dort muss natürlich der zum Itemtyp passende Status eingetragen werden). Enthält die entstehende Liste Einträge, so wird der Status von myWindowSum auf OPEN gesetzt, ansonsten auf CLOSED.
Und ja, die Mehrzahl von Status heißt Status, nicht Stati (sorry, alter Lateiner...).
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet
- peter-pan
- Beiträge: 2573
- Registriert: 28. Nov 2018 12:03
- Wohnort: Schwäbisch Gmünd
Re: Fensterkontakt Status
Ich nehme an, dass sind die HmIP_SRH Sensoren. Das dazugehörige Status Item ist vom Typ"String". Es werden die Zustände "OPEN, CLOSED und TILTED" gemeldet. Dein Gruppen-Item kennt aber nur die Zustände "OPEN und CLOSED" und ist vom Typ "Contact". Ich habe das Problem mit einem Dummy-Item und einer Regel gelöst.
Die Items:
Die Regel:
Ich bin mir sicher, dass sich die Regel noch optimieren lässt, vor allem in Bezug auf die "Allgemeingültigkeit" für alle Fenster-Sensoren. Da ich das aber bisher nicht gebraucht habe (ich habe fast nur SWDO), hab ich mir das halt einfach gemacht. Aber vielleicht schaffst du's ja selber oder es findet sich ein "Mitstreiter"
Die Items:
Code: Alles auswählen
Group:Contact:OR(OPEN,CLOSED) gHaustur "Haustür [MAP(de.map):%s]" <frontdoor> (gInnen) ["Door","OpenState"]
String HmIP_SRH_0515_1STATE "Terrassentuer Status[MAP(de.map):%s]" <door> (gSen_0515) ["Point"] {channel="homematic:HmIP-SRH:3014F711A0001F98A9AABCAF:0007D7099D0515:1#STATE"}
Contact HmIP_SRH_0515_1STATECONTACT "Terrassentür Essen Status Kontakt[MAP(de.map):%s]" <door> (gSen_0515,gHaustur) ["OpenState"] // Dummy-Contact Item
Die Regel:
Code: Alles auswählen
rule "HM Status Terrassentuer Esszimmer Umwandlung"
when
// Item Dummy4 changed to ON or
Item HmIP_SRH_0515_1STATE changed
then
if ( HmIP_SRH_0515_1STATE.state == "OPEN" ) {
HmIP_SRH_0515_1STATECONTACT.postUpdate(OPEN)
logInfo("homematic","Terrassentür offen {} ", HmIP_SRH_0515_1STATECONTACT.state )
return ;
}
else if (HmIP_SRH_0515_1STATE.state == "CLOSED") {
HmIP_SRH_0515_1STATECONTACT.postUpdate(CLOSED)
logInfo("homematic","Terrassentür geschlossen {} ", HmIP_SRH_0515_1STATECONTACT.state)
}
else if (HmIP_SRH_0515_1STATE.state == "TILTED") {
HmIP_SRH_0515_1STATECONTACT.postUpdate(OPEN)
logInfo("homematic","Terrassentür gekippt {} ", HmIP_SRH_0515_1STATECONTACT.state )
}
else {
logInfo("homematic","Terrassentür nix passiert {} ", HmIP_SRH_0515_1STATE )
}
end
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.2 openhabian
- peter-pan
- Beiträge: 2573
- Registriert: 28. Nov 2018 12:03
- Wohnort: Schwäbisch Gmünd
Re: Fensterkontakt Status
...na siehst du, während ich noch am "formulieren" war hat sich Udo der Sache schon angenommen. Vielleicht kann er ja mit meinen Informationen zu den Sensoren schon etwas anfangen.
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.2 openhabian
- udo1toni
- Beiträge: 13989
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Fensterkontakt Status
Ja, genau, dann muss nur der Status entsprechend angepasst werden (habe ich oben gemacht)
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 70
- Registriert: 15. Nov 2021 10:02
Re: Fensterkontakt Status
Hallo zusammen, erst einmal Danke für eure Hilfe. Ich habe eure Ansätze noch nicht ausprobiert, da ich noch ein Verständnisproblem habe. Wenn ich keine MAP Transformation einstelle funktioniert es auch mit den String Items der HmIP Sensoren, sprich wenn ich ein Fenster einer Gruppe öffne oder kippe zeigt die Gruppe OPEN an, wenn alle Fenster geschlossen sind CLOSED. Das Gruppenitem ist ein CONTACT und das AGGREGATE ALL CLOSED THEN CLOSED...
Mit Map Transformation werden die Fensterzustände wie in der MAP Datei übersetzt, jedoch steht das Gruppenitem dann auf offen, auch wenn alle Fenster geschlossen sind.
Mit Map Transformation werden die Fensterzustände wie in der MAP Datei übersetzt, jedoch steht das Gruppenitem dann auf offen, auch wenn alle Fenster geschlossen sind.
Openhabian 4.0.4
- udo1toni
- Beiträge: 13989
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Fensterkontakt Status
Dann machst Du das Mapping an der falschen Stelle. Dennoch ist der Ansatz mit String Items in einer Contact Group eher fragwürdig.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 70
- Registriert: 15. Nov 2021 10:02
Re: Fensterkontakt Status
Danke für Deine Rückmeldung. Sehe ich das richtig, dass bei Deiner Lösung myWindowSum das Dummy-Item für jeden Raum ist und ich die Rule dann auch entsprechend für jeden Raum / Gruppe erstellen muss?
Openhabian 4.0.4
- udo1toni
- Beiträge: 13989
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Fensterkontakt Status
Nein? myWindowSum ist ein Contact Item, welches den Zustand OPEN annimmt, wenn eines der Items in der Gruppe gWindow nicht den Zustand "CLOSED" hat. Ansonsten (alle Items haben den Zustand "CLOSED") hat das Item myWindowSum den Zustand CLOSED.
Der Code der Rule ist nun nicht wirklich so umfangreich, und ich habe die Funktion auch im Text erläutert.
Der Code der Rule ist nun nicht wirklich so umfangreich, und ich habe die Funktion auch im Text erläutert.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 70
- Registriert: 15. Nov 2021 10:02
Re: Fensterkontakt Status
Sorry wenn ich nochmal fragen muss. Vielleicht etwas mehr Hintergrund wieso ich frage. Ich habe eine Übersichtsseite aus einer Vorlage umgebaut, wo ich für jeden Raum ein Widget angelegt habe. In jedem Widget ist eine Gruppe für alle Lichter in dem Raum eingetragen und wenn eine Lampe im Raum leuchtet wird das im Widget visualisiert. Genauso wird auch die Fenstergruppe eingebunden, wenn ein Fenster im Raum offen ist, sieht man das an einem offenen Fenster Icon im Widget. Das funktioniert auch mit meinem CONTACT / String Mischmasch, so lange ich kein Mapping verwende.
Ich nehme an ich müsste dann das myWindowSum Item als Fenstergruppen Item eintragen.
Ich nehme an ich müsste dann das myWindowSum Item als Fenstergruppen Item eintragen.
Openhabian 4.0.4