HMIP-PSM Stromzähler

Moderator: seppy

antonio_toma
Beiträge: 8
Registriert: 6. Feb 2022 17:19

HMIP-PSM Stromzähler

Beitrag von antonio_toma »

Hallo zusammen,

ich habe ein kleines Problem mit der Konfiguration von der HMIP-PSM. Ich möchte den Tages- und Monatsverbrauch konfigurieren und ich finde im Netz keine ausführliche Anleitung dafür.

So sieht es bei mir aus
Bildschirmfoto 2022-02-06 um 17.23.29.png
Ich habe diese Anleitung befolgt
https://zukunftathome.de/stromzaehler-u ... arstellen/

aber leider funktioniert es nicht und ich verstehe nicht wo der Fehler liegt.

Das ist alles was bei mir raus kommt
Bildschirmfoto 2022-02-06 um 17.28.14.png
Kann mir jemand helfen?

Vielen Dank
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

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

Re: HMIP-PSM Stromzähler

Beitrag von udo1toni »

Willkommen im Forum!

Die Screenshots sind nicht hilfreich :) denn sie verraten nicht, was Du konfiguriert hast. Mutmaßlich arbeitest Du mit openHAB3, die Anleitung bezieht sich aber auf openHAB2. Inbesondere werden nur einfache Number Items verwendet. Ich nutze kein Homematic, aber aus dem, was ich so mitbekomme, tippe ich darauf, dass hier UoM (Units of Measurement) unterstützt wird, was man in den Rules berücksichtigen muss. Es wäre also wichtig, zu sehen, wie die Items exakt konfiguriert sind, und wie die beteiligten Rules exakt aussehen.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

antonio_toma
Beiträge: 8
Registriert: 6. Feb 2022 17:19

Re: HMIP-PSM Stromzähler

Beitrag von antonio_toma »

Hallo udo1tony,

danke für dein Antwort.

Die Items und die Rurels wurden genau wie in die Anleitung konfiguriert
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

antonio_toma
Beiträge: 8
Registriert: 6. Feb 2022 17:19

Re: HMIP-PSM Stromzähler

Beitrag von antonio_toma »

Noch ein Rules Datei
Stromzaehler_Verbrauch_Tag.rules

und Items
default.items
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

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

Re: HMIP-PSM Stromzähler

Beitrag von udo1toni »

Schau mal:

Items:

Code: Alles auswählen

Number Stromzaehler "Stromzähler [%f Wh]" (Strom) {channel="homematic:HMIP-PSM:3014F711******************:0001DD89******:6#ENERGY_COUNTER"}
Number Stromzaehler_kWh "Zählerstand [%.2f kWh]" (Strom)
Number Stromzaehler_Verbrauch_Aktuell "Verbrauch aktuell [%.0f W]" (Strom)
Number Stromzaehler_Verbrauch_Tag "Verbrauch heute [%.2f kWh]" (Strom)
Number Strom_Kosten_Tag "Kosten heute [%.2f €]" (Strom)
Rules:

Code: Alles auswählen

rule "Stromzaehler kWh"
when
    Item Stromzaehler received update
then
    Stromzaehler_kWh.postUpdate(Stromzaehler.state as DecimalType / 1000)
end

rule "Stromzähler Verbrauch Aktuell"
when
    Item Stromzaehler_kWh received update
then
    Stromzaehler_Verbrauch_Aktuell.postUpdate(Stromzaehler_kWh.deltaSince(now.minusMinutes(6))*10*1000)
end

rule "Stromzaehler Verbrauch Tag"
when
    Item Stromzaehler_kWh received update
then
    Stromzaehler_Verbrauch_Tag.postUpdate(Stromzaehler_kWh.deltaSince(now.withTimeAtStartOfDay))
end

rule "Stromkosten heute"
when 
    Item Stromzaehler_kWh received update
then
    Strom_Kosten_Tag.postUpdate(Stromzaehler_Verbrauch_Tag.state as DecimalType * 0.3)
end
So schwer ist das nicht...

Erst mal ist dazu zu sagen, wie oben erwähnt, das ist eine Anleitung für openHAB2.

Das Item Stromzaehler ist das einzige Item, welches tatsächlich mit der Hardware verbunden ist (also über das Homatic Binding). Ob der der richtige ist, weiß ich natürlich nicht. Was aber schon mal auffällt, ist, dass Du in dem Screenshot oben "Energy Counter" stehen hast, aber das Item, welches Du zeigst, hat da "Stromzähler" als Label, das passt also nicht zueinander.

Es kann auch gut sein (je nachdem, wie Du das Item angelegt hast), dass der Channel-Link nicht korrekt ist. Ich habe hier mal die IDs mit Sternchen versehen, auch wenn es gewöhnlich keine wirkliche Sicherheitslücke ist ;)

Weiter im Text... Die erste Rule greift auf den Status des Items Stromzaehler zu. Es verwendet den Status als DecimalType (das kann schon mal knallen, es ist nicht sicher, dass der Status den Typ DecimalType enthält ). Der Wert wird durch 1000 geteilt und in Stromzaehler_kWh gespeichert..
Dadurch wird die zweite Rule getriggert (received update), welche das Delta zum Stand vor 6 Minuten berechnet. (Das kann auch knallen. Ich habe bisher nicht gesehen, dass das Item überhaupt persistiert wird. Die Persistence stellt die Historie eines Items zur Verfügung, ohne Historie kein deltaSince.

Eine weitere Rule triggert auf den selben Trigger (ungünstig, aber sei's drum) und berechnet den aktuellen Tagesverbrauch. Das geht unter openHAB3 totsicher schief, weil now.withTimeAtStartOfDay eine Joda Time Eigenschaft ist, die unter JavaTime so nicht zur Verfügung steht. Stattdessen musst Du dann ZonedDateTime.now().with(LocalTime.MIDNIGHT) verwenden.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

antonio_toma
Beiträge: 8
Registriert: 6. Feb 2022 17:19

Re: HMIP-PSM Stromzähler

Beitrag von antonio_toma »

Danke für deine Hilfe und ausführliche Antwort.
Das Item Stromzaehler ist das einzige Item, welches tatsächlich mit der Hardware verbunden ist (also über das Homatic Binding). Ob der der richtige ist, weiß ich natürlich nicht. Was aber schon mal auffällt, ist, dass Du in dem Screenshot oben "Energy Counter" stehen hast, aber das Item, welches Du zeigst, hat da "Stromzähler" als Label, das passt also nicht zueinander.
Ich habe es angepasst aber es hat sich nichts geändert
Bildschirmfoto 2022-02-11 um 10.53.55.png
Es kann auch gut sein (je nachdem, wie Du das Item angelegt hast), dass der Channel-Link nicht korrekt ist. Ich habe hier mal die IDs mit Sternchen versehen, auch wenn es gewöhnlich keine wirkliche Sicherheitslücke ist ;)
Ich glaube es ist richtig konfiguriert
Bildschirmfoto 2022-02-11 um 10.58.52.png
Weiter im Text... Die erste Rule greift auf den Status des Items Stromzaehler zu. Es verwendet den Status als DecimalType (das kann schon mal knallen, es ist nicht sicher, dass der Status den Typ DecimalType enthält ). Der Wert wird durch 1000 geteilt und in Stromzaehler_kWh gespeichert..
Dadurch wird die zweite Rule getriggert (received update), welche das Delta zum Stand vor 6 Minuten berechnet. (Das kann auch knallen. Ich habe bisher nicht gesehen, dass das Item überhaupt persistiert wird. Die Persistence stellt die Historie eines Items zur Verfügung, ohne Historie kein deltaSince.
Hier mein persist Datei

Code: Alles auswählen

Stromzaehler_kWh : strategy = everyMinute, restoreOnStartup
Stromzaehler_Verbrauch_Aktuell : strategy = everyMinute, restoreOnStartup
Stromzaehler_Speicher_Tag : strategy = everyMinute, restoreOnStartup
Eine weitere Rule triggert auf den selben Trigger (ungünstig, aber sei's drum) und berechnet den aktuellen Tagesverbrauch. Das geht unter openHAB3 totsicher schief, weil now.withTimeAtStartOfDay eine Joda Time Eigenschaft ist, die unter JavaTime so nicht zur Verfügung steht. Stattdessen musst Du dann ZonedDateTime.now().with(LocalTime.MIDNIGHT) verwenden.
Das habe ich es angepasst

Code: Alles auswählen

rule "Stromzaehler Verbrauch Tag"
when
    Item Stromzaehler_kWh received update
then
    Stromzaehler_Verbrauch_Tag.postUpdate(Stromzaehler_kWh.deltaSince(ZonedDateTime.now().with(LocalTime.MIDNIGHT))
end
Was ich auch nicht verstehe warum hier eine exorbitante Summe raus kommt
Bildschirmfoto 2022-02-11 um 11.06.14.png
Ich habe keine andere Idee wo der Fehler liegt.

Danke
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

antonio_toma
Beiträge: 8
Registriert: 6. Feb 2022 17:19

Re: HMIP-PSM Stromzähler

Beitrag von antonio_toma »

Und noch was dazu als Info

So sehen die Channel aus
Bildschirmfoto 2022-02-11 um 11.24.02.png
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

antonio_toma
Beiträge: 8
Registriert: 6. Feb 2022 17:19

Re: HMIP-PSM Stromzähler

Beitrag von antonio_toma »

Was ich noch heute gemerkt habe ist, dass der Rule Strom_Kosten_Tag.rules nicht generiert wird.
Bildschirmfoto 2022-02-11 um 14.13.41.png
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

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

Re: HMIP-PSM Stromzähler

Beitrag von udo1toni »

Bitte versuche auf Screenshots so weit möglich zu verzichten. das müllt nur den Server voll.
Ich habe ja oben schon erwähnt, dass verschiedene Aspekte Deines Codes so nicht funktionieren können. Insbesondere kann es sein, dass openHAB über bestimmte Teile des Codes stolpert und diese als syntaktisch falsch ansieht. Dann wird erst gar keine Rule dazu übernommen (das kannst Du dann im log nachlesen... rule ... has errors, therefor ignoring it)

Ein erster Ansatz:

Code: Alles auswählen

rule "Stromzaehler kWh"
when
    Item Stromzaehler received update
then
    val kwh = if(Stromzaehler.state instanceof Number) (Stromzaehler.state as Number).floatValue / 1000 else 0
    Stromzaehler_kWh.postUpdate(kwh)
end

rule "Stromzähler Verbrauch Aktuell"
when
    Item Stromzaehler_kWh received update
then
    val kwh6 = if(Stromzaehler_kWh.deltaSince(now.minusMinutes(6)) instanceof Number) Stromzaehler_kWh.deltaSince(now.minusMinutes(6)) * 10000 else 0
    Stromzaehler_Verbrauch_Aktuell.postUpdate(kwh6)
    val Verbrauch = if(Stromzaehler_kWh.deltaSince(ZonedDateTime.now().with(LocalTime.MIDNIGHT)) instanceof Number) Stromzaehler_kWh.deltaSince(ZonedDateTime.now().with(LocalTime.MIDNIGHT)) else 0
    Stromzaehler_Verbrauch_Tag.postUpdate(Verbrauch)
    Strom_Kosten_Tag.postUpdate(Verbrauch * 0.3)
end
Zwei Rules, die das gleiche erledigen wie die vier von Dir, mit dem Unterschied, dass sie einige Fehler abfangen und andere von vornherein vermeiden. :) Ob sie allerdings fehlerfrei funktionieren kann ich auch nicht garantieren.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

antonio_toma
Beiträge: 8
Registriert: 6. Feb 2022 17:19

Re: HMIP-PSM Stromzähler

Beitrag von antonio_toma »

Hallo udo1toni,

danke, ich werde so versuchen.

Antworten