"Statistics Modul" Welche Geräte werden unterstützt?

Begonnen von PowderK, 19 Mai 2014, 21:41:33

Vorheriges Thema - Nächstes Thema

cwagner

Da freue ich mich auf das Ausprobieren - wegen WAF erst ab Morgen, nach dem Fest.
Bei der Gelegenheit: Du erwähnst singleReading nun zum zweiten Mal. Im Forum nennt die Suche Deine beiden Nachrichten als einzige Fundstellen, im Wiki und in der Commandref gibt es Null Teffer? Magst Du einen Tipp geben, wie man die statistics-Readings zerlegen kann?
PI 2B+/5 Raspbian 12, Perl 5.36.0, FHEM 6.3: 295 Module in ConfigDB: Steuerung Heizkessel, FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM EPS3), MQTT2. DOIF, PID20, Threshold, OWX; Micropelt IRTV, Volkszähler, SolarForecast; MariaDB

cwagner

Funzt. Und dass keine Wertesummen integriert werden, finde ich nicht schlimm. So haben beide Module ihren Sinn. Ich finde diesen Funktonsumfang gerade auf schwacher Hardware wie einer Fritzbox sehr gelungen.
PI 2B+/5 Raspbian 12, Perl 5.36.0, FHEM 6.3: 295 Module in ConfigDB: Steuerung Heizkessel, FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM EPS3), MQTT2. DOIF, PID20, Threshold, OWX; Micropelt IRTV, Volkszähler, SolarForecast; MariaDB

tupol

Zitat von: cwagner am 26 Dezember 2014, 08:57:22
Bei der Gelegenheit: Du erwähnst singleReading nun zum zweiten Mal. Im Forum nennt die Suche Deine beiden Nachrichten als einzige Fundstellen, im Wiki und in der Commandref gibt es Null Teffer? Magst Du einen Tipp geben, wie man die statistics-Readings zerlegen kann?

Das Attribute von statistics heißt "singularReadings" und ist in der commandref erläutert.

Freut mich, dass das Zählen funktioniert. Allerdings bitte weiter beobachten. Benutze es selbst nur recht begrenzt.

JueFi

Hallo zusammen,

ich lese meine Heizung per WebInterface mit HTTPMOD aus und schreibe ein Logfile das in etwa so aussieht
(Die Laufzeit des Brenners in Stunden wird also immer weiter hochgezählt, auch über Tageswechsel etc. hinweg)

2015-03-01_00:07:11 PHeiz BrennerLaufZeit: 3175
2015-03-01_05:58:45 PHeiz BrennerLaufZeit: 3176
2015-03-01_06:59:00 PHeiz BrennerLaufZeit: 3177
2015-03-01_22:12:54 PHeiz BrennerLaufZeit: 3185
2015-03-01_23:52:33 PHeiz BrennerLaufZeit: 3185
--- nur zur besseren Lesbarkeit eingefügt -------
2015-03-02_00:04:39 PHeiz BrennerLaufZeit: 3185
2015-03-02_05:18:55 PHeiz BrennerLaufZeit: 3186
2015-03-02_06:55:47 PHeiz BrennerLaufZeit: 3187
2015-03-02_10:11:55 PHeiz BrennerLaufZeit: 3189
2015-03-02_23:55:55 PHeiz BrennerLaufZeit: 3193
--- nur zur besseren Lesbarkeit eingefügt -------
2015-03-03_00:05:35 PHeiz BrennerLaufZeit: 3193

Nun möchte ich mit statistics (oder auch gern anders) die TagesSumme der Brennerstunden bilden um die später zu plotten
Also am 1.3: 3185 - 3175, also 10
Am 2.3: 3193 - 3185, also 8

Gemacht habe ich folgendes, das aber nicht funktioniert.
Verstanden habe ich, dass dadurch zusätzliche Zeilen ins LOG von PHeiz kommen sollen - ist das überhaupt richtig ?
define PHeizStat statistics PHeiz
attr PHeizStat singularReadings Pheiz:BrennerLaufZeit:Delta:(Hour|Day)


list PHeizStat
Internals:
   DEF        PHeiz
   DEV_REGEXP PHeiz
   NAME       PHeizStat
   NR         103
   NTFY_ORDER 10-PHeizStat
   PREFIX     stat
   STATE      Waiting for notifications
   TYPE       statistics
   Readings:
     2015-03-02 10:11:53   monitoredDevicesUnsupported PHeiz#HTTPMOD
     2015-03-02 10:11:53   nextPeriodChangeCalc 2015-03-02 10:59:55
   Fhem:
     modulVersion $Date: 2015-01-09 22:00:59 +0100 (Fri, 09 Jan 2015) $
Attributes:
   room       Statistik
   singularReadings Pheiz:BrennerLaufZeit:Delta:(Hour|Day)


list PHeiz
Internals:
   BUSY       0
   DEF        http://192.168.68.250/?action=get&attr=1 180
   HTTPHEADER
   Interval   180
   LASTSEND   1425288466.49493
   MainURL    http://192.168.68.250/?action=get&attr=1
   NAME       PHeiz
   NR         57
   STATE      ???
   TYPE       HTTPMOD
   addr       http://192.168.68.250:80
   buf        HTTP/1.1 200 OK

Set-Cookie: pksession=37567; Expires=Tue, 19 Jan 2038 04:13:43 CET; Max-Age=600; Path=/; Version="1"

Connection: close

Content-Type: application/json; charset=utf-8

Cache-Control: no-cache



[{"formatTexts":"","shortText":"Aussentemp Ist","unitText":"°C","lowerLimit":"???","upperLimit":"???","name":"CAPPL:LOCAL.L_aussentemperatur_ist","value":"77","divisor":"10","status":"OK","unitTextImperial":"°F"},{"formatTexts":"","shortText":"Kesseltemperatur","unitText":"°C","lowerLimit":"???","upperLimit":"???","name":"CAPPL:FA[0].L_kesseltemperatur","value":"595","divisor":"10","status":"OK","unitTextImperial":"°F"},{"formatTexts":"","shortText":"Vorlauftemperatur Ist","unitText":"°C","lowerLimit":"???","upperLimit":"???","name":"CAPPL:LOCAL.L_hk[0].vorlauftemp_ist","value":"455","divisor":"10","status":"OK","unitTextImperial":"°F"},{"formatTexts":"","shortText":"Vorlauftemperatur Ist","unitText":"°C","lowerLimit":"???","upperLimit":"???","name":"CAPPL:LOCAL.L_hk[1].vorlauftemp_ist","value":"396","divisor":"10","status":"OK","unitTextImperial":"°F"},{"formatTexts":"","shortText":"Einschaltfühler Ist","unitText":"°C","lowerLimit":"???","upperLimit":"???","name":"CAPPL:LOCAL.L_ww[0].einschaltfuehler_ist","value":"615","divisor":"10","status":"OK","unitTextImperial":"°F"},{"formatTexts":"","shortText":"TPM ist","unitText":"°C","lowerLimit":"???","upperLimit":"???","name":"CAPPL:LOCAL.L_pu[0].einschaltfuehler_ist","value":"586","divisor":"10","status":"OK","unitTextImperial":"°F"},{"formatTexts":"","shortText":"TPO ist","unitText":"°C","lowerLimit":"???","upperLimit":"???","name":"CAPPL:LOCAL.L_pu[0].ausschaltfuehler_ist","value":"400","divisor":"10","status":"OK","unitTextImperial":"°F"},{"formatTexts":"","shortText":"Speichertemperatur","unitText":"°C","lowerLimit":"???","upperLimit":"???","name":"CAPPL:LOCAL.L_sk[0].speichertemp_ist","value":"328","divisor":"10","status":"OK","unitTextImperial":"°F"},{"formatTexts":"","shortText":"Kollektortemperatur","unitText":"°C","lowerLimit":"???","upperLimit":"???","name":"CAPPL:LOCAL.L_sk[0].kollektortemp_ist","value":"217","divisor":"10","status":"OK","unitTextImperial":"°F"},{"formatTexts":" Dauerlauf|Start|Zuendung|Softstart|Leistungsbrand|Nachlauf|Aus|Saugen|! Asche !|! Pellets !|Pell Switch|Störung|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|Aus|Aus|Aus|Aus|Aus","shortText":"Kesselstatus","unitText":"???","lowerLimit":"","upperLimit":"","name":"CAPPL:FA[0].L_kesselstatus","value":"99","divisor":"","status":"OK","unitTextImperial":"???"},{"formatTexts":" Dauerlauf|Start|Zuendung|Softstart|Leistungsbrand|Nachlauf|Aus|Saugen|! Asche !|! Pellets !|Pell Switch|Störung|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|Aus|Aus|Aus|Aus|Aus","shortText":"Kesselstatus","unitText":"???","lowerLimit":"","upperLimit":"","name":"CAPPL:FA[0].L_kesselstatus","value":"99","divisor":"","status":"OK","unitTextImperial":"???"},{"formatTexts":"","shortText":"Saugintervall","unitText":"min","lowerLimit":"","upperLimit":"","name":"CAPPL:FA[0].L_saugintervall","value":"83","divisor":"","status":"OK","unitTextImperial":"min"},{"formatTexts":"","shortText":"Brennerlaufzeit","unitText":"h","lowerLimit":"","upperLimit":"","name":"CAPPL:FA[0].L_brennerlaufzeit_anzeige","value":"3189","divisor":"","status":"OK","unitTextImperial":"h"},{"formatTexts":"","shortText":"Tagesleistung","unitText":"kWh","lowerLimit":"???","upperLimit":"???","name":"CAPPL:LOCAL.ertrag[0].leistung_tag","value":"0","divisor":"10","status":"OK","unitTextImperial":"kWh"},{"formatTexts":" Aus|Auto|Ein","shortText":"Betriebsart FA","unitText":"???","lowerLimit":"","upperLimit":"","name":"CAPPL:FA[0].betriebsart_fa","value":"1","divisor":"","status":"OK","unitTextImperial":"???"}]

   code       200
   conn
   data       ["CAPPL:LOCAL.L_aussentemperatur_ist","CAPPL:FA[0].L_kesseltemperatur","CAPPL:LOCAL.L_hk[0].vorlauftemp_ist","CAPPL:LOCAL.L_hk[1].vorlauftemp_ist","CAPPL:LOCAL.L_ww[0].einschaltfuehler_ist","CAPPL:LOCAL.L_pu[0].einschaltfuehler_ist","CAPPL:LOCAL.L_pu[0].ausschaltfuehler_ist","CAPPL:LOCAL.L_sk[0].speichertemp_ist","CAPPL:LOCAL.L_sk[0].kollektortemp_ist","CAPPL:FA[0].L_kesselstatus","CAPPL:FA[0].L_kesselstatus","CAPPL:FA[0].L_saugintervall","CAPPL:FA[0].L_brennerlaufzeit_anzeige","CAPPL:LOCAL.ertrag[0].leistung_tag","CAPPL:FA[0].betriebsart_fa"]
   displayurl http://192.168.68.250/?action=get&attr=1
   header     Accept-Language: de

Cookie: language=de; pksession=37567
   host       192.168.68.250
   httpheader HTTP/1.1 200 OK

Set-Cookie: pksession=37567; Expires=Tue, 19 Jan 2038 04:13:43 CET; Max-Age=600; Path=/; Version="1"

Connection: close

Content-Type: application/json; charset=utf-8

Cache-Control: no-cache
   ignoreredirects 0
   loglevel   4
   path       /?action=get&attr=1
   protocol   http
   redirects  0
   sid        37567
   timeout    10
   url        http://192.168.68.250/?action=get&attr=1
   QUEUE:
   Readings:
     2014-11-30 18:49:28   ARussentemp     4.3
     2015-03-02 10:27:47   AussenTemp      7.7
     2014-11-30 20:36:39   Aussentemp      4.3
     2015-03-02 10:27:47   BetriebsArt     1
     2015-03-02 10:27:47   BrennerLaufZeit 3189
     2015-03-02 10:27:47   HeizKreis1_VL   45.5
     2015-03-02 10:27:47   HeizKreis2_VL   39.6
     2015-03-02 10:27:47   KesselStatus    0
     2015-03-02 10:27:47   KesselTemp      59.5
     2014-12-01 19:34:56   KesselTempMitte 33.8
     2014-12-01 19:34:56   KesselTempOben  48.2
     2014-12-01 19:34:56   KesselTempUnten 30.5
     2014-11-30 20:36:39   Kesseltemp      62.6
     2015-03-02 10:27:47   KollektorTemp   21.7
     2014-11-30 20:36:39   Kollektortemp   4.2
     2015-03-02 10:27:47   SaugIntervall   83
     2015-03-02 10:27:47   SolarErtrag     0
     2015-03-02 10:27:47   SpeicherTempMitte 40
     2015-03-02 10:27:47   SpeicherTempOben 58.6
     2015-03-02 10:27:47   SpeicherTempUnten 32.8
     2015-03-02 10:27:47   WarmWasserTemp  61.5
   Request:
     data       ["CAPPL:LOCAL.L_aussentemperatur_ist","CAPPL:FA[0].L_kesseltemperatur","CAPPL:LOCAL.L_hk[0].vorlauftemp_ist","CAPPL:LOCAL.L_hk[1].vorlauftemp_ist","CAPPL:LOCAL.L_ww[0].einschaltfuehler_ist","CAPPL:LOCAL.L_pu[0].einschaltfuehler_ist","CAPPL:LOCAL.L_pu[0].ausschaltfuehler_ist","CAPPL:LOCAL.L_sk[0].speichertemp_ist","CAPPL:LOCAL.L_sk[0].kollektortemp_ist","CAPPL:FA[0].L_kesselstatus","CAPPL:FA[0].L_kesselstatus","CAPPL:FA[0].L_saugintervall","CAPPL:FA[0].L_brennerlaufzeit_anzeige","CAPPL:LOCAL.ertrag[0].leistung_tag","CAPPL:FA[0].betriebsart_fa"]
     header     Accept-Language: de

Cookie: language=de; pksession=$sid
     ignoreredirects 0
     retryCount 0
     type       Update
     url        http://192.168.68.250/?action=get&attr=1
   Helper:
     _98_statistics PHeizStat
Attributes:
   event-min-interval .*:600
   event-on-change-reading .*
   reAuthRegex Error 403: Forbidden
   reading01Expr $val / 10
   reading01Name AussenTemp
   reading01Regex CAPPL:LOCAL.L_aussentemperatur_ist","value":"(-[0-9]+|[0-9]+)"
   reading02Expr $val / 10
   reading02Name KesselTemp
   reading02Regex CAPPL:FA\[0\].L_kesseltemperatur","value":"([0-9]+)"
   reading03Expr $val / 10
   reading03Name HeizKreis1_VL
   reading03Regex CAPPL:LOCAL.L_hk\[0\].vorlauftemp_ist","value":"([0-9]+)"
   reading04Expr $val / 10
   reading04Name HeizKreis2_VL
   reading04Regex CAPPL:LOCAL.L_hk\[1\].vorlauftemp_ist","value":"([0-9]+)"
   reading05Expr $val / 10
   reading05Name WarmWasserTemp
   reading05Regex CAPPL:LOCAL.L_ww\[0\].einschaltfuehler_ist","value":"([0-9]+)"
   reading06Expr $val / 10
   reading06Name SpeicherTempOben
   reading06Regex CAPPL:LOCAL.L_pu\[0\].einschaltfuehler_ist","value":"([0-9]+)"
   reading07Expr $val / 10
   reading07Name SpeicherTempMitte
   reading07Regex CAPPL:LOCAL.L_pu\[0\].ausschaltfuehler_ist","value":"([0-9]+)"
   reading08Expr $val / 10
   reading08Name SpeicherTempUnten
   reading08Regex CAPPL:LOCAL.L_sk\[0\].speichertemp_ist","value":"([0-9]+)"
   reading09Expr $val / 10
   reading09Name KollektorTemp
   reading09Regex CAPPL:LOCAL.L_sk\[0\].kollektortemp_ist","value":"(-[0-9]+|[0-9]+)"
   reading10Expr { $val % 99 }
   reading10Name KesselStatus
   reading10Regex CAPPL:FA\[0\].L_kesselstatus","value":"([0-9]+)"
   reading11Expr $val
   reading11Name SaugIntervall
   reading11Regex CAPPL:FA\[0\].L_saugintervall","value":"([0-9]+)"
   reading12Expr $val
   reading12Name BrennerLaufZeit
   reading12Regex CAPPL:FA\[0\].L_brennerlaufzeit_anzeige","value":"([0-9]+)"
   reading13Expr $val / 10
   reading13Name SolarErtrag
   reading13Regex CAPPL:LOCAL.ertrag\[0\].leistung_tag","value":"([0-9]+)"
   reading14Expr $val
   reading14Name BetriebsArt
   reading14Regex CAPPL:FA\[0\].betriebsart_fa","value":"([0-9]+)"
   requestData ["CAPPL:LOCAL.L_aussentemperatur_ist","CAPPL:FA[0].L_kesseltemperatur","CAPPL:LOCAL.L_hk[0].vorlauftemp_ist","CAPPL:LOCAL.L_hk[1].vorlauftemp_ist","CAPPL:LOCAL.L_ww[0].einschaltfuehler_ist","CAPPL:LOCAL.L_pu[0].einschaltfuehler_ist","CAPPL:LOCAL.L_pu[0].ausschaltfuehler_ist","CAPPL:LOCAL.L_sk[0].speichertemp_ist","CAPPL:LOCAL.L_sk[0].kollektortemp_ist","CAPPL:FA[0].L_kesselstatus","CAPPL:FA[0].L_kesselstatus","CAPPL:FA[0].L_saugintervall","CAPPL:FA[0].L_brennerlaufzeit_anzeige","CAPPL:LOCAL.ertrag[0].leistung_tag","CAPPL:FA[0].betriebsart_fa"]
   requestHeader1 Accept-Language: de
   requestHeader2 Cookie: language=de; pksession=$sid
   room       Heizung
   set1Data   {"CAPPL:FA[0].betriebsart_fa":"$val"}
   set1Map    0:Aus,1:Auto,2:Ein
   set1Name   Betriebsart
   setHeader1 Accept-Language: de
   setHeader2 Cookie: language=de; pksession=$sid
   setReAuthRegex Error 403: Forbidden
   setURL     http://192.168.68.250/?action=set
   sid1Data   username=xx&password=xxx&language=de&submit=Anmelden
   sid1Header1 Accept-Language: de
   sid1IDRegex pksession=([0-9]+);
   sid1IgnoreRedirects 1
   sidURL     http://192.168.68.250/index.cgi
   timeout    10
   userattr   event-min-interval event-on-change-reading reAuthRegex reading01Expr reading01Name reading01Regex reading02Expr reading02Name reading02Regex reading03Expr reading03Name reading03Regex reading04Expr reading04Name reading04Regex reading05Expr reading05Name reading05Regex reading06Expr reading06Name reading06Regex reading07Expr reading07Name reading07Regex reading08Expr reading08Name reading08Regex reading09Expr reading09Name reading09Regex reading10Expr reading10Name reading10Regex reading11Expr reading11Name reading11Regex reading12Expr reading12Name reading12Regex reading13Expr reading13Name reading13Regex reading14Expr reading14Name reading14Regex requestData requestHeader1 requestHeader2 set1Data set1Map set1Name setHeader1 setHeader2 setReAuthRegex setURL sid1Data sid1Header1 sid1IDRegex sid1IgnoreRedirects sidURL timeout


Das läuft bereits seit gestern, ein Tageswechsel war also schon da.

Danke für hilfreiche Tipps.

Jürgen

tupol


JueFi

Zitat von: tupol am 03 März 2015, 18:56:15
Du must erst ein deltareading definieren

Schon viel besser jetzt :-)
Jetzt muss ich nur noch rausfinden, wie ich den Tageswert da raus bekomme um den in meinem Logfile zu speichern.
Im Moment sieht das so aus.
define PHeizStat statistics PHeiz
attr PHeizStat deltaReadings BrennerLaufZeit
attr PHeizStat singularReadings Pheiz:BrennerLaufZeit:Delta:(Hour|Day)

define nt.PHeizTag notify nt.PHeizTag {\
  fhem ('set PHeizTag_SolarErtrag ' .ReadingsVal('PHeiz','SolarErtrag','?'));;\
  fhem ('set PHeizTag_BrennerStd  ' .ReadingsVal('PHeiz','statBrennerLaufZeit','?'));;\
}

define FileLog_PHeizTag FileLog ./log/PHeizTag-%Y.log PHeizTag.*



Im Logfile PHeizTag.*:
2015-03-03_23:50:00 PHeizTag_SolarErtrag 0.1
2015-03-03_23:50:00 PHeizTag_BrennerStd Hour: 0 Day: 1 Month: 1 Year: 1 (since: 2015-03-03_20:29:48 )


Also das hier soll den "Day" Wert beinhalten:
fhem ('set PHeizTag_BrennerStd  ' .ReadingsVal('PHeiz','statBrennerLaufZeit','?'));;\

Vielen Dank
Jürgen

privat58

Hallo,
ich habe mich in den letzten Tagen mit dem Modul beschäftigt und die Werte werden "statistifiziert"statEnergy_export

Hour: 0.691 Day: 1.114 Month: 9.493 Year: 9.493 (since: 2015-04-10 )

2015-04-11 09:54:25
statEnergy_exportLast

Hour: 0.109 Day: 8.379 Month: - Year: -

2015-04-11 07:59:55
statEnergy_import

Hour: 0.001 Day: 0.709 Month: 2.403 Year: 2.403 (since: 2015-04-10 )

2015-04-11 09:54:25
statEnergy_importLast

Hour: 0.147 Day: 1.694 Month: - Year: -

2015-04-11 07:59:55


Ich habe bisher zwei Zähler SDM630M-DC, die ausgelesen werden. Es soll noch einer dazu kommen.
Es wird das Netz, die PV-Anlage und die Batterie überwacht. Die kWh werden als Energy_import und Energy_export ausgegeben.
Leider werde ich nicht so recht schlau, wie ich die einzelnen Werte für Day, Month, Year in den Floorplan bekomme. Es sollten nur die Werte angezeigt werden, Plotten etc mache ich (noch) nicht.
Wie kann ich das Reading auseinander nehmen?
Wenn ich in den "Fred" schaue sind bei Antwort #26 Einzelwerte zu sehen. Diese sind bei mir aber nicht vorhanden.
Danke für eine Idee im Voraus.
Steffen

tupol

Entweder singulare Readings definieren oder per Perlbefehl auseinandernehmen.

Wenn sich jemand mal zu einem Wiki-Eintrag durchringt, würde ich mich beteiligen.  ;)

privat58

Das ging fix, danke.
Dann werde ich für Hour, Month und Year es mit je einem singularReading probieren, das ist für mich überschaubar. Leider ist Perl "noch" ein Buch mit sieben Siegeln, daher wäre ich für das Wiki ein schlechter Mitarbeiter.
Steffen

vbs

Hast du es schonmal mit dem Attribut "singularReadings" versucht?

privat58

Habe dies nun eingetragen:define SDM630_PV_Statistik statistics SDM630M_PV
attr SDM630_PV_Statistik deltaReadings Energy_export,Energy_import
attr SDM630_PV_Statistik singularReadings Energy_export:energy:Delta:Hour|Energy_export:energy:Delta:Day||Energy_export:energy:Delta:Month|Energy_export:energy:Delta:Year|Energy_import:energy:Delta:Hour|Energy_import:energy:Delta:Day|Energy_import:energy:Delta:Month|Energy_import:energy:Delta:Year

Die Werte stehen aber nach wie vor so im Reading:statEnergy_export

Hour: 1.692 Day: 7.288 Month: 7.288 Year: 7.288 (since: 2015-04-11 )

2015-04-11 12:44:10
statEnergy_exportLast

Hour: 2.096 Day: 0.000 Month: - Year: - (since: 2015-04-10_21:05:59 )

2015-04-11 11:59:55
statEnergy_import

Hour: 0.000 Day: 0.293 Month: 0.293 Year: 0.293 (since: 2015-04-11 )

2015-04-11 12:44:10
statEnergy_importLast

Hour: 0.000 Day: 0.055 Month: - Year: - (since: 2015-04-10_21:05:59 )

2015-04-11 11:59:55

Es sollte doch nun zumindest für den Stundenwert ein einzelner Wert erscheinen. Ist aber unverändert.
Müssen die alten Einträge erst aus der fhem.save gelöscht werden?
Steffen

vbs

Wenn ich das richtig verstehe:
singularReadings <DeviceRegExp:ReadingRegExp>:statTypes:period
dann fehlt bei dir das Device. Und was ist "energy" bei dir?

Probier mal
attr SDM630_PV_Statistik singularReadings SDM630M_PV:Energy_export:Delta:Hour

privat58

Danke für die Hilfe, das energy war ein Überbleibsel von einem "Versuch" aus einem anderen "Fred".
Ich hatte es heute Nachmittag so eingetragen aber das deltaReadings vergessen.

define SDM630_PV_Statistik statistics SDM630M_PV
attr SDM630_PV_Statistik deltaReadings Energy_export,Energy_import
attr SDM630_PV_Statistik singularReadings SDM630M_PV:Energy_export:Delta:Hour|SDM630M_PV:Energy_export:Delta:Day|SDM630M_PV:Energy_export:Delta:Month|SDM630M_PV:Energy_export:Delta:Year|SDM630M_PV:Energy_import:Delta:Hour|SDM630M_PV:Energy_import:Delta:Day|SDM630M_PV:Energy_import:Delta:Month|SDM630M_PV:Energy_import:Delta:Year

Nun scheint es zu funktionieren, vielen Dank für die Hilfe. Es war und ist für mich nicht zu erkennen, das ein singularReadings ein deltaReadings bedingt.
Gibt es eine Möglichkeit, die "Startwerte" zu ändern, da diese in Papierform vorliegen?
Steffen

oniT

Hallo,

ich hänge mich auch gleich mal wieder mit an. Ist es möglich diesen Ausdruck zu verkürzen? Und wenn ja, wie würde dieser dann aussehen?


solarlog_.*:solar:Max:Hour|solarlog_.*:solar:Max:Day|solarlog_.*:solar:Max:Month|solarlog_.*:solar:Max:Year|solarlog_.*:solar:Min:Hour|solarlog_.*:solar:Min:Day|solarlog_.*:solar:Min:Month|solarlog_.*:solar:Min:Year|solarlog_.*:solar:Avg:Hour|solarlog_.*:solar:Avg:Day|solarlog_.*:solar:Avg:Month|solarlog_.*:solar:Avg:Year


Danke,

Gruß
Tino
BBB - debian weezy - FHEM 5.7
HMLAN - HM-LC-Bl1-FM, HM-ES-PMSw1-PI, HM-LC-Sw1-FM, HM-TC-IT-WM-W-EU, HM-WDS40-TH-I, HM-Sen-Wa-Od, HM-Sec-RHS
Dimplex Wärmepumpe / Dimplex ZL 300 - Modbus TCP
SDM630M - Modbus TCP
SolarLog 200 / SMA SonnyBoy 1.5/2.5 - Modbus TCP

optimizer

Hallo tupol,

die Statistikwerte meiner DS1820 Temperatursensoren (reading temperature) werden mit dem statistics Modul noch nicht korrekt berechnet.  Das Problem liegt IMHO im sub statistics_doStatisticMinMax (Zeile 495). Der Wert ' 25.9' wird z.B. bei $value =~ s/(-?[\d.]).*/$1/e; gelöscht.
Mit $value =~ s/(-?[\d.]*)/$1/e funktioniert es bei mir.

Kannst Du mir noch einen Tipp geben, wie ich den Tagesdurchschnitt nur einmal am Tag in ein Logfile bringe?

@Tino: versuchs mal mit:
solarlog_.*:solar:(Max|Min|Avg):(Hour|Day|Month|Year)