kann "semantic Model" nicht mwehr öffnen

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
rebell21
Beiträge: 125
Registriert: 23. Aug 2024 09:34
Answers: 0

kann "semantic Model" nicht mwehr öffnen

Beitrag von rebell21 »

ich habe versucht, in der GUI eine Gruppe "alle Fensterkontakte" anzulegen. Diese soll vertikal alle Fensterkontakte zusammenfassen, die aber auch noch den einzelnen Räumen zugeordnet sind (erzeugt über Create Equipment from things"). Ich habe die Gruppe als Location angelegt und ihr die Points der Fensterkontakte zugeordnet. Dabei sind die Points aber aus dem Räumen verschwunden. In den Points habe ich dann mehrere Parents angelegt und konnte zunächst auch die Points der Fensterkontakte in den Räumen und in der Gruppe "alle Fensterkontakte" sehen. Nun kann aber openhab das "Model" überhaupt nicht mehr öffnen. Beim Versuch, das Model zu öffnen, sehe ich stundenlang den drehenden Kreis mit der Auskunft "loading".

Folgende Fragen :

1. Wie kann ich openhab wieder dazu bringen, dass es das Model öffnen kann ? Ich habe den Service schon restartet, das hat aber nicht geholfen. Wie kann in in den Konfigurationsdateien, das Model wieder bereinigen ?

2. Wir erzeugt man in der GUI eine Gruppe, die verschiedene Fensterkontakte vom Type
"Contact.Point" zusammenfasst, ohne die Zuordnung zu den Items im Model zu verlieren (mehrere Parents für die Points)

rebell21
Beiträge: 125
Registriert: 23. Aug 2024 09:34
Answers: 0

Re: kann "semantic Model" nicht mehr öffnen

Beitrag von rebell21 »

zu Frage 1 : Ich habe in der Datei "/var/lib/openhab/jsondb/org.openhab.core.items.Item.json" die Zuordnun der Points zu der neuen vertikalen Gruppe entfernt und dann konnte ich das Model wieder öffnen. Das Problem ist gelöst

Aber es bleibt Frage 2 :

Wie definieren ich (in der GUI) eine vertikale Gruppe, die alle Points der Fensterkontakte zusammenfasst. Dabei soll die Zuordnung der Points zu ihren Fenstern in den Räumen aber ebenfalls bestehen bleiben.

Oder können Points nur ein Parent haben ? Soll ich die Parents der Points in die neue Vertikale Gruppe aufnehmen ?

Es gibt ein "Esszimmerfenster links". Das ist vom Type "Group * Equipment". Das hat einen Point "Tür/Fenster Zustand" vom Typ "Contact * Point". Ich habe viele Fenster und Türen mit jeweils einem Fensterkontakt. Diese möchte ich in der neuen Gruppe zusammenfassen, um demnächst eine Abfrage zu machen der Form (Zeige mir alle offenen Fensterkontakte an). Soll ich den Point oder das übergeordnete "Group Equipment" in die vertikale Gruppe aufnehmen?

Ist die neue Gruppe eine "non-semantic Group" ?

So langsam finde ich openhab toll. Das Concept ist wirklich schön und gut überlegt

Benutzeravatar
peter-pan
Beiträge: 2758
Registriert: 28. Nov 2018 12:03
Answers: 30
Wohnort: Schwäbisch Gmünd

Re: kann "semantic Model" nicht mwehr öffnen

Beitrag von peter-pan »

...eigentlich hättest du nicht so drastisch ins" System" eingreifen müssen. Wahrscheinlich hättest du nur das "Group-Item" über die GUI löschen müssen.

Du hast das schon fast richtig gemacht. Du musst nur eins beachten. Ein Equipment/Gerät gibt es nur einmal. Das bedeutet, dass du die Points/Properties/Eigenschaften für das entsprechende Gerät gelten.

Das hindert dich aber nicht daran, diese Eigenschaft einem weiteren Gruppen-Item zuzuordnen und ggf. dieses Gruppen-Item einer Location(Halbwissen)

Hier ein Beispiel aus meiner Konfiguration:

Code: Alles auswählen

// Beispiel Group-Items

Group:Contact:OR(OPEN,CLOSED)      gWindow                            "Fenster [MAP(de.map):%s]"                                 <window>            (gInnen)
Group:Contact:OR(OPEN,CLOSED)      gWindowOffice                      "Fensterkontakte Büro [MAP(de.map):%s]"                    <window>            (gWindow) 
Group:Contact:OR(OPEN,CLOSED)      gWinSchlaf                         "Fensterkontakte Schlafen [MAP(de.map):%s]"                <window>            (gWindow)
Group:Contact:OR(OPEN,CLOSED)      gWinELWWo                          "Fensterkontakte ELW Wohnen [MAP(de.map):%s]"              <window>            (gWindow) 
// Items - Points
Contact                HmIP_SWDO_AE50_1STATECONTACT                   "Fenster Schlaf li. Kontakt[MAP(de.map):%s]"               <window>            (gSen_AE50,gWinSchlaf)                ["OpenState"]                {channel="homematic:HMIP-SWDO:3014F711A0001F98A9AABCAF:0000DBE9A0AE50:1#STATE_CONTACT"}
Contact                HmIP_SWDO_B808_1STATECONTACT                   "Fenster Schlaf re. Kontakt[MAP(de.map):%s]"               <window>            (gSen_B808,gWinSchlaf)                ["OpenState"]                {channel="homematic:HMIP-SWDO:3014F711A0001F98A9AABCAF:0000DBE9A0B808:1#STATE_CONTACT"}

// komplettes Equipment
//                     0000DBE9A0B808 - Schlafen Rechts                                                                                                                                        
Group                  gSen_B808                                      "Sensor  Schlaf re. Fenster "                             <dect200>            (gEG_Schlafen)                        ["Window"]  
Number                 HmIP_SWDO_B808_0ERRORCODE                      "Fenster Schlaf re. Error code"                                                (gSen_B808)                           ["Control"]                  {channel="homematic:HMIP-SWDO:3014F711A0001F98A9AABCAF:0000DBE9A0B808:0#ERROR_CODE"}
Switch                 HmIP_SWDO_B808_0LOWBAT                         "Fenster Schlaf re. Batteriestatus[MAP(battery.map):%s]"  <lowbattery1>        (gSen_B808,gBatt)                     ["LowBattery"]               {channel="homematic:HMIP-SWDO:3014F711A0001F98A9AABCAF:0000DBE9A0B808:0#LOW_BAT"}
Number                 HmIP_SWDO_B808_0OPERATINGVOLTAGE               "Fenster Schlaf re. Operating voltage [%.1f V]"                                (gSen_B808)                           ["Voltage"]                  {channel="homematic:HMIP-SWDO:3014F711A0001F98A9AABCAF:0000DBE9A0B808:0#OPERATING_VOLTAGE"}
String                 HmIP_SWDO_B808_0OPERATINGVOLTAGESTATUS         "Fenster Schlaf re. Operating voltage status"                                  (gSen_B808)                           ["Status"]                   {channel="homematic:HMIP-SWDO:3014F711A0001F98A9AABCAF:0000DBE9A0B808:0#OPERATING_VOLTAGE_STATUS"}
Switch                 HmIP_SWDO_B808_0SABOTAGE                       "Fenster Schlaf re. Sabotage"                                                  (gSen_B808)                           ["Alarm"]                    {channel="homematic:HMIP-SWDO:3014F711A0001F98A9AABCAF:0000DBE9A0B808:0#SABOTAGE"}
Switch                 HmIP_SWDO_B808_0UNREACH                        "Fenster Schlaf re. Unreach"                                                   (gSen_B808)                           ["OpenState"]                {channel="homematic:HMIP-SWDO:3014F711A0001F98A9AABCAF:0000DBE9A0B808:0#UNREACH"}
String                 HmIP_SWDO_B808_1STATE                          "Fenster Schlaf re. Status[%s]"                            <window>            (gSen_B808)                           ["Control"]                  {channel="homematic:HMIP-SWDO:3014F711A0001F98A9AABCAF:0000DBE9A0B808:1#STATE"}
Contact                HmIP_SWDO_B808_1STATECONTACT                   "Fenster Schlaf re. Kontakt[MAP(de.map):%s]"               <window>            (gSen_B808,gWinSchlaf)                ["OpenState"]                {channel="homematic:HMIP-SWDO:3014F711A0001F98A9AABCAF:0000DBE9A0B808:1#STATE_CONTACT"}
Zuerst kommen die Gruppen-Items und wie du siehst, werden diese auch noch aggregiert, da ich auch mehrere Fensterkontakte in einem Zimmer habe. Dies ist das interessant, wenn z.B. ein Heizkörperthermostat geschlossen werden soll, wenn eines der Fenster im Raum geöffnet wird.

Ganz oben also das Gruppen-Item das alle Untergruppen und natürlich auch die "Points" enthalten soll. Darunter ein Beispiel von zwei Point-Items aus verschiedenen "Equipments".

Und dann noch ein "Fenstersensor"-Equipment mit all seinen Points(und auch "Tags").

Und hier noch ein Beisspiel eines Widgets:
window.jpg
...und der passende Yaml-Code:

Code: Alles auswählen

component: oh-label-cell
config:
  action: group
  actionGroupPopupItem: gWindow
  color: '=(items.gWindow.state == "CLOSED") ? "teal" : "red"'
  icon: '=(items.gWindow.state == "CLOSED") ? "oh:window-closed" : "oh:window-open"'
  item: gWindow
  label: '="Status: " + items.gWindow.displayState + " " + "- Detail - klick"'
  stateStyle:
    color: '=(items.gWindow.state == "CLOSED") ? "blue" : "red"'
  title: Fenster Status
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.3.5 openhabian

rebell21
Beiträge: 125
Registriert: 23. Aug 2024 09:34
Answers: 0

Re: kann "semantic Model" nicht mwehr öffnen

Beitrag von rebell21 »

Danke, mir ist es nun gelungen, für alle Fenster in einem Raum jeweils eine Gruppe zu erstellen. Beispiel "Fenster Arbeitszimmer" oder "Fenster Schlafzimmer". Die Gruppe fasst die drei Fenster des Schlafzimmers zusammen. Was sollte ich dieser Gruppe zuordnen ? Ich habe im Moment in dieswer Gruppe drei Members vom Typ "Group * Equipment" und drei Members vom Typ "Contact*Point". Letztere sind die Fenster Kontakte, erstere sind die Equipments der jeweiligen Fensterkontakte. Siehe Bild
Screenshot_20241210_160516.jpg
Neben den Gruppen für die Fenster in den Räumen habe ich dann eine Gruppe "Alle Fensterkontakte" erstellt. Sie ist die Parentgruppe der einzelnen Raumgruppen für die Fenster
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Benutzeravatar
peter-pan
Beiträge: 2758
Registriert: 28. Nov 2018 12:03
Answers: 30
Wohnort: Schwäbisch Gmünd

Re: kann "semantic Model" nicht mwehr öffnen

Beitrag von peter-pan »

Ja, die Gruppe "Fenster Schlafzimmer" soll, wenn ich das richtig verstehe, die Werte der Kontakte enthalten
Das entspricht einem Gruppen-Item in dieser Art:

Code: Alles auswählen

Group:Contact:OR(OPEN,CLOSED)      gWinSchlaf                         "Fensterkontakte Schlafen [MAP(de.map):%s]"                <window>            (gWindow)               //              ["Window","OpenState"]        
Damit werden die die Zustaände(values/state) der Sensoren des Schlafzimmer aggregiert.

Du packst jetzt aber die Equipment-Groups auch noch in dieses Gruppen-Item. Das geht nicht und das brauchst du ja auch nicht.

Noch mal zum Verständnis die Equipment-Group ist in etwa gleich zu setzen mit dem "kompletten Sensor". Der hat die Aufgabe bestimmte Eigenschaften anzuzeigen. z.B.: Auf/Zu, den Batteriestand, ob des Gerät manipuliert wurde, etc..

Was du bewirken willst, ist aber zu sehen, ob alle Fenster zu sind (oder auf). Dazu sammelst(aggregierst) du also die Eigenschaften deiner Sensoren (nicht die Sensoren selbst) in einer Gruppe zusammen, wobei diese Eigenschaften auch nach oben verdichtet werden können.

Also in deinem Fall zum Beispiel die Gruppe Schlafzimmer mit 3 Werten" "Contact") und die Gruppe "Arbeitszimmer" mit 2 Werten und die Küche mit einem Wert, werden dann in der Gruppe "alle Fenster" zusammen gefasst. !!!Aber nicht die Equipment-Gruppenwerte !!!
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.3.5 openhabian

Benutzeravatar
udo1toni
Beiträge: 15249
Registriert: 11. Apr 2018 18:05
Answers: 243
Wohnort: Darmstadt

Re: kann "semantic Model" nicht mwehr öffnen

Beitrag von udo1toni »

Ganz grundsätzlich: Ein Semantic Item darf immer nur einmal im gesamten Semantic Model auftauchen.
Du kannst ein Item unter beliebig vielen Group Items zuordnen und ein Group Item kann beliebig viele Items enthalten, aber innerhalb des Semantic Model muss jedes Item eindeutig zugeordnet sein, d.h. z.B. die Fensterkontakte können zwar gruppiert werden, diese Gruppe darf aber nicht Bestandteil des Semantic Model sein (oder die Fensterkontakte dürfen nicht den Räumen zugeordnet sein).
Denke auch daran, dass es mit der Geräteansicht (unterer Fensterrand in der Main UI...) eine Ansicht gibt, die automatisch aus dem Semantic Model generiert wird. Dort (oder unter den Eigenschaften) sollte es eine automatisch gruppierte Ansicht alles Fensterkontakte geben.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

rebell21
Beiträge: 125
Registriert: 23. Aug 2024 09:34
Answers: 0

Re: kann "semantic Model" nicht mwehr öffnen

Beitrag von rebell21 »

Danke, habe ich verstanden und entsprechend geändert

Antworten