openhab2 Rolladensteuerung Homematic

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
axcube
Beiträge: 1
Registriert: 24. Sep 2020 11:02
Answers: 0

openhab2 Rolladensteuerung Homematic

Beitrag von axcube »

Hallo Forum,

nach langem "mitlesen" folgt jetzt auch mal mein erster Forumseintrag. Ich befasse mich seit 1 Monat mit Homematic und openhab.
Mittlerweile funktionen auch schon diverse Gewerke wie Lampen, Bewegungsmelder..

Nur das Hauptproblem ist die Rolladensteuerung :-(

Ich habe mir eine rolladen.items angelegt
Group:Number:AVG gRolladen
"Rolladen Buero"
<rollershutter>
(DG_RolladenBuero)

Number DG_RolladenBuero_Signalstaerke
"Rolladen Fenster Signalstärke [%d]"
<qualityofservice>
(gRolladen, gSignalstaerke)
{channel="homematic:HM-LC-Bl1PBU-FM:{...}:0#SIGNAL_STRENTH"}

Rollershutter DG_RolladenBuero
"Rolladen Fenster [SCALE(Rolladen.scale):%d]"
<rollershutter>
(gRolladen)
{channel="homematic:HM-LC-Bl1PBU-FM:{...}:1#LEVEL"}

Die erste Frage schon mal, was muss denn bei der Channel Zeile in die {} Klammer rein?

Dann habe ich eine Sitemap:

Text item=DG_RolladenBuero label="Rolladen [im Durchschnitt: %.1f %%]" {
Switch item=DG_RolladenBuero
label="Fenster [SCALE(Rolladen.scale):%d]"
icon="rollershutter"
}

Mir get es "nur" um die zwei ROlladen im DAchgeschoss Büro, hier möchte ich einen "schalter" hoch/runter
Über die CCU3 allein funktioniert alles, die Geräte wurden korrekt angelernt.
Leider funktioniert das mit openhab nicht, ich bekomme einen Switch Schalter angezeigt, es tut sich aber nichts. Ich weiß leider nicht, wie man hier ein Bild einfügt. Mache ich was grundsätzliches falsch?

WÄre nett, wenn jemand Tipps geben könnte.
Danke und Grüße

rbeudel
Beiträge: 255
Registriert: 6. Jun 2019 11:25
Answers: 1

Re: openhab2 Rolladensteuerung Homematic

Beitrag von rbeudel »

Hallo,
Die erste Frage schon mal, was muss denn bei der Channel Zeile in die {} Klammer rein?
am einfachsten über die PaperUI
Paperui.jpg
die entsprechende Zeile mit dem Symbol kopieren und in die items Datei einfügen.
Leider funktioniert das mit openhab nicht, ich bekomme einen Switch Schalter angezeigt, es tut sich aber nichts
In der Sitemap ist ein Switch angegeben also wird auch ein switch dargestellt.
Default item=DG_RolladenBuero
in der Sitemap müsste reichen für den Anfang
Viele Grüße,
Ralf
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Viele Grüße,
Ralf


Debmatic und Openhab in Proxmox VM debian x86_64

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

Re: openhab2 Rolladensteuerung Homematic

Beitrag von udo1toni »

Nur so am Rande: Man kann die Konfiguration in einzelnen Zeilen schreiben, üblich ist aber die Formatierung in einer Zeile pro Item.

Hier im Forum wäre, egal welches Format, die Markierung als Code immer sehr wünschenswert. Sieht dann so aus:

Code: Alles auswählen

Group:Number:AVG gRolladen "Rolladen Buero" <rollershutter> (DG_RolladenBuero)

Number DG_RolladenBuero_Signalstaerke "Rolladen Fenster Signalstärke [%d]" <qualityofservice> (gRolladen, gSignalstaerke) {channel="homematic:HM-LC-Bl1PBU-FM:{...}:0#SIGNAL_STRENTH"}

Rollershutter DG_RolladenBuero "Rolladen Fenster [SCALE(Rolladen.scale):%d]" <rollershutter> (gRolladen) {channel="homematic:HM-LC-Bl1PBU-FM:{...}:1#LEVEL"}
Allerdings hast Du hier einen Zirkelbezug angelegt. Dass dieser keine Ausworkungen hat, liegt nur daran, dass DG_RolladenBuero nicht als Group Item definiert ist. aber auch sonst ist die Definition mindestens unglücklich.

Es gibt verschiedene Itemtypen. Das Rollershutter Item ist für Rollläden zuständig (Ach was... ;) ) und zwar uneingeschränkt. Wenn Du also ein Group Item für Rollershutter definieren möchtest, dann solltest Du dieses ebenfalls als Group:Rollershutter definieren (wenn Du überhaupt den exakten Typen setzt). Natürlich dürfen in dieser Gruppe dann nur Rollershutter Items Gruppenmitglieder sein.
AVG als Funktion berechnet den Durchschnitt aller Status aller Gruppenmitglieder. Deshalb ist die Definition oben gleich in mehrfacher Hinsicht seltsam. Was bringt eine Gruppe, die den Mittelwert zwischen Behanghöhe und Empfangsqualität bildet?
Also sollte die Itemdefinition eher so aussehen:

Code: Alles auswählen

Group:Rollershutter:AVG gRolladen "Rolladen Buero"

Number DG_RolladenBuero_Signalstaerke "Rolladen Fenster Signalstärke [%d]" <qualityofservice> (gSignalstaerke) {channel="homematic:HM-LC-Bl1PBU-FM:{...}:0#SIGNAL_STRENTH"}

Rollershutter DG_RolladenBuero "Rolladen Fenster [SCALE(Rolladen.scale):%d]"                  (gRolladen)      {channel="homematic:HM-LC-Bl1PBU-FM:{...}:1#LEVEL"}
Icons müssen in diesem Fall für Rollershutter nicht gesetzt werden, da durch den Itemtyp als Default vorgegeben.

Eine Gruppe kann unterschiedliche Zwecke erfüllen, z.B. den Mittelwert bilden, Status aufaddieren, eine Unterseite in der Sitemap bilden, die Persistence steuern... deshalb können Items in beliebig vielen Gruppen gleichzeitig Member sein. Man könnte also eine eigene Gruppe (ohne Itemtyp und ohne Aggregation der Werte) gRollDGBuero anlegen und in dieser Gruppe alle Items der Rollläden des Raums zusammenfassen. Dieser Gruppe kann man dann alle Items entnehmen, wenn man in VSCode Sitemaps oder Rules erstellt (dort werden die Items nämlich gruppiert dargestellt).

Auch in Sitemaps ist die Definition eines Widgets über mehrere Zeilen eher unüblich. Also eher so:

Code: Alles auswählen

Text item=DG_RolladenBuero label="Rolladen [Mittelwert: %.1f %%]" {
    Switch item=DG_RolladenBuero 
}
Natürlich wird auch hier das default Icon verwendet, genau wie das Label aus der Itemdefinition. Dass es zwei Stellen gibt, an denen Label und Icon definiert werden können, liegt darin begründet, dass man das selbe Item beliebig oft innerhalb einer Sitemap einsetzen kann. So kann man z.B. eine Unterseite für alle Rollläden erstellen, in dieser ist es wichtig, den genauen Raum pro Rollladen angezeigt zu bekommen. In einer weiteren Unterseite, die für einen einzelnen Raum angelegt ist, ist der Raumname aber überflüssig. Ebenso könnte es sein, dass man an unterschiedlichen Stellen unterschiedliche Icons verwenden möchte.

Für das Bearbeiten der textkonfiguration bietet sich der offiziell unterstützte Editor VSCode an (man kann ein openHAB Plugin aus dem Editor heraus installieren und konfigurieren). Der Editor bietet eine Ansicht aller Items und Things an (dynamisch), aus diesen Listen heraus kann man per Kontextmenü verschiedene Aktionene ausführen, unter anderem automatisch ein passendes Item für einen Channel erstellen, wahlweise auch für alle Channel eines Things auf einen Schlag. Diese Items werden dann in der aktuell ausgewählten *.items Datei erstellt, so dass man sie bequem eigenen Bedürfnissen anpassen kann. Die Links zum Channel werden dabei automatisch gesetzt.
openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

Antworten