Seite 2 von 3

Re: Regel wenn ein Gruppemember ON ist

Verfasst: 2. Apr 2020 13:17
von PeterA
Zunächst brauchst Du eine Gruppe die Summieren kann:

z.b. so:

Code: Alles auswählen

Group:Number:SUM TotalPower “Gesamtleistung [%.1f W]” (gPower)
In diese Gruppe müssen alle deine Items die Aufsummiert werden sollen.

Edit:

Habe hier auch was im Englischen Forum gefunden (vom Udo :) )

https://community.openhab.org/t/energy- ... lp/10264/2

Re: Regel wenn ein Gruppemember ON ist

Verfasst: 2. Apr 2020 17:36
von Piko
Danke
Werd mir das nachher am pc mal in Ruhe ansehen.

Vielleicht hilft mir das ja schon soweit wie ich kommen will [emoji16]


Gesendet von iPhone mit Tapatalk

Re: Regel wenn ein Gruppemember ON ist

Verfasst: 2. Apr 2020 20:22
von Piko
So hab deinen Vorschlag mal ungesetzt, passt soweit.

Hast du vielleicht auch ne Lösung wenn der Shelly mal Stromlos sind ? kann man den letzten wert irgendwie herstellen ?

Hab das ganze bisher nur Gelsen, probiert noch nicht. vielleicht hat sich das aber auch geändert.

Würde mir aber die werte ungern wegen nem Stromausfall verfälschen lassen.

Die Aktuellen werte bearbeite ich entsprechend das ich auf die KWh komme, und ich lasse halt eine Gesamtrechnung laufen. Die dann durch jeden stromlosen Moment verfälscht wird.

Re: Regel wenn ein Gruppemember ON ist

Verfasst: 2. Apr 2020 20:25
von PeterA
Also, so weit ich mich erinnern kann setzen die Shellys nur zurück wenns ein Update gibt ? Oder ?
Ansonsten musst Du die Werte den Gesamtverbrauch persistieren in OpenHab

Re: Regel wenn ein Gruppemember ON ist

Verfasst: 2. Apr 2020 20:51
von Piko
Ich bin mir da nicht sicher.
Aber auch updates gibt es ja mehr als genug.

Verzeih mir vielleicht den fehler aber ich blick es gerade nicht (bierchen getrunken)
wo liegt der fehler ???

Code: Alles auswählen

rule "Gesamtverbrauch errechnen"

when 
Member of TotalPower changed or 
Member of TotalPower_Fritz changed

then 
 Gesamtverbraucht_Wh.postUpdate((TotalPower /60) + TotalPower_Fritz)

Code: Alles auswählen

2020-04-02 20:50:16.498 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'Gesamtverbrauch errechnen': Unknown variable or command '/'; line 16, column 34, length 14

Wie soll ich es sonst aufbauen ???

Danke und schönen Abend noch

Re: Regel wenn ein Gruppemember ON ist

Verfasst: 2. Apr 2020 23:48
von peter-pan
...vielleicht so

Code: Alles auswählen

Gesamtverbraucht_Wh.postUpdate(((TotalPower.state as Number).floatValue / 60) + TotalPower_Fritz.state)
ungetestet und ohne Gewähr ;) :lol:

Re: Regel wenn ein Gruppemember ON ist

Verfasst: 3. Apr 2020 19:52
von Piko
Hey Peter,

manchmal ist die Lösung so einfach, dass man in dem Moment nicht daran denkt.

dein

Code: Alles auswählen

 .state as Number
hat natürlich die Lösung gebracht, ohne weitere Umwege.

Die letzte frage die ich mir stelle:

Kann ich einen wert einzelner Gruppenmember durch x teilen lassen und dann ausgeben ohne Dummy ?

also etwa so:

Gruppe: Sehlly_verbauch /60

und in der Sitemap bekomme ich dann alle werte entsprechend dargestellt.

Oder bleibt mir da nur der (um)weg über Dummys ?

Schönen abend

Re: Regel wenn ein Gruppemember ON ist

Verfasst: 3. Apr 2020 20:12
von PeterA
Also hier mal eine Rule mit welcher ich einen Wert von einem Item Umrechne und in ein anderes Item schreibe:

Code: Alles auswählen

rule "Shelly25_01 kWh"
 
when
Item Shellyswitch25_745118_energy received update
then
Shellyswitch25_745118_kWh.
postUpdate(Shellyswitch25_745118_energy.state as DecimalType / 60000)
end

Re: Regel wenn ein Gruppemember ON ist

Verfasst: 3. Apr 2020 20:29
von Piko
Ja aber dann müsste ich für jeden Shelly eine rule machen.

Ich dachte da an etwas eleganteres. So aller Gruppe Shelly und da werden alle Werte umgewandelt. Bzw. Jeder Wert der sich ändert.

Vielleicht hat da ja noch jemand ne Idee.


Gesendet von iPhone mit Tapatalk

Re: Regel wenn ein Gruppemember ON ist

Verfasst: 3. Apr 2020 21:14
von PeterA
Ja so ist es hier auch.
Habe für jeden Shelly eine Rule.

Vermutlich geht das auch einfacher.

Aber hier ist mein Wissen am Ende.

Gruß Peter