FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Arnd Burghardt am 20 April 2016, 15:58:01

Titel: Bekomme userReadings differential nicht hin
Beitrag von: Arnd Burghardt am 20 April 2016, 15:58:01
Hi zusammen,

mein Stromzählerableser liefert mir brav meist 15 minütig (mal fehlen ein paar Messwerte) den Zählerstand in ernergy, was sich prima plotten lässt.
Nun möchte ich den Verbrauch pro Stunde in einem Plot darstellen.

Dazu habe ich versucht mir ein Attribut diff_energy mit

userReadings diff_energy differential { ReadingsVal("StromZaehler","energy",0) * 3600 ;; }

zu erstellen. da steht aber immer nur 0 drin. Der Plot ist entsprechend langweilig.

Kann mir da jemand helfen?

Danke
Arnd


define:

define StromZaehler WMBUS FFD 14980283 1 2
attr StromZaehler IODev CUL_0
attr StromZaehler room WMBUS
attr StromZaehler userReadings diff_energy differential { ReadingsVal("StromZaehler","energy",0) * 3600 ;;;; }
define FileLog_StromZaehler FileLog ./log/StromZaehler-%Y.log StromZaehler
attr FileLog_StromZaehler logtype text
attr FileLog_StromZaehler room WMBUS

log:

2016-04-20_14:37:49 StromZaehler RSSI: -59
2016-04-20_14:37:49 StromZaehler LQI: 128
2016-04-20_14:37:49 StromZaehler diff_energy: 0
2016-04-20_14:37:49 StromZaehler 1_storage_no: 0
2016-04-20_14:37:49 StromZaehler 1_type: VIF_ENERGY_WATT
2016-04-20_14:37:49 StromZaehler 1_value: 88990400
2016-04-20_14:37:49 StromZaehler 1_unit: Wh
2016-04-20_14:37:49 StromZaehler 1_value_type: Instantaneous value
2016-04-20_14:37:49 StromZaehler 2_storage_no: 0
2016-04-20_14:37:49 StromZaehler 2_type: VIF_ACCESS_NO
2016-04-20_14:37:49 StromZaehler 2_value: 36233
2016-04-20_14:37:49 StromZaehler 2_unit:
2016-04-20_14:37:49 StromZaehler 2_value_type: Instantaneous value
2016-04-20_14:37:49 StromZaehler battery: ok
2016-04-20_14:37:49 StromZaehler energy: 88990.4
2016-04-20_14:37:49 StromZaehler unit: kWh
2016-04-20_14:37:49 StromZaehler is_encrypted: 0
2016-04-20_14:37:49 StromZaehler decryption_ok: 1
2016-04-20_14:37:49 StromZaehler no errors
2016-04-20_15:07:49 StromZaehler RSSI: -59.5
2016-04-20_15:07:49 StromZaehler LQI: 128
2016-04-20_15:07:49 StromZaehler diff_energy: 0
2016-04-20_15:07:49 StromZaehler 1_storage_no: 0
2016-04-20_15:07:49 StromZaehler 1_type: VIF_ENERGY_WATT
2016-04-20_15:07:49 StromZaehler 1_value: 88990600
2016-04-20_15:07:49 StromZaehler 1_unit: Wh
2016-04-20_15:07:49 StromZaehler 1_value_type: Instantaneous value
2016-04-20_15:07:49 StromZaehler 2_storage_no: 0
2016-04-20_15:07:49 StromZaehler 2_type: VIF_ACCESS_NO
2016-04-20_15:07:49 StromZaehler 2_value: 36747
2016-04-20_15:07:49 StromZaehler 2_unit:
2016-04-20_15:07:49 StromZaehler 2_value_type: Instantaneous value
2016-04-20_15:07:49 StromZaehler battery: ok
2016-04-20_15:07:49 StromZaehler energy: 88990.6
2016-04-20_15:07:49 StromZaehler unit: kWh
2016-04-20_15:07:49 StromZaehler is_encrypted: 0
2016-04-20_15:07:49 StromZaehler decryption_ok: 1
2016-04-20_15:07:49 StromZaehler no errors
Titel: Antw:Bekomme userReadings differential nicht hin
Beitrag von: Ellert am 20 April 2016, 17:06:21
Hast Du schon versucht die Aktualisierung des userReadings mit ":trigger" einzuschränken?

siehe auch hier: https://forum.fhem.de/index.php/topic,52165.msg439282.html#msg439282
Titel: Antw:Bekomme userReadings differential nicht hin
Beitrag von: Arnd Burghardt am 22 April 2016, 16:13:52
Ich habe es probiert, wobei regex nich mein persönlicher  :o Freund ist.

also habe ich den Eintrag gemacht:

userReadings diff_energy:energy differential { ReadingsVal("StromZaehler","energy",0)*3600.0;; }
   
und bekomme tatsächlich erstmals Werte, die auch noch passen!  ;D

Danke,
Arnd
Titel: Antw:Bekomme userReadings differential nicht hin
Beitrag von: Ellert am 22 April 2016, 17:33:15
Solltest Du mal ein Update durchführen, müsstest D :energy durch :energy.* ersetzen.
Titel: Antw:Bekomme userReadings differential nicht hin
Beitrag von: Arnd Burghardt am 22 April 2016, 17:53:47
Meine Updates enden immer mit
2016-04-22 17:52:34 Global global http://fhem.de/fhemupdate/FHEM/10_FS20.pm: Can't connect(1) to http://fhem.de:80: IO::Socket::INET: connect: timeout
hab das bisher ignoriert.
Titel: Antw:Bekomme userReadings differential nicht hin
Beitrag von: ThomasDr am 17 Juli 2021, 19:06:03
Hallo,

Ich habe mir dieses Beispiel als Vorlage benutzt.
*3600.0;;
*3600 denke ich ist die Zeit für die Differenz in Sekunden.
Was macht aber .0;; ?

Schöne Grüße
ThomasD