Neues Modul: GasCalculator

Begonnen von Sailor, 21 Januar 2016, 12:48:11

Vorheriges Thema - Nächstes Thema

Hackstall

Hallo haette auch eine Frage:
Ich habe mir bei den Devices GasCalculator und ElectricityCalculator einen Spike eingefangen.
Jetzt stehen die Month und Year Counter und CostCounter schief.
Kann ich diese manuell korrigieren, so dass Monats und Jahreswerte wieder stimmen.

Danke Andreas

thoweiss

Hallo Zusammen,
ich habe meinen Gaszähler jetzt auch "smart" gemacht mit einem ESP+ Reedkontakt.


Den Gas calculator habe ich auch seit einigen Tagen laufen alle Readings des GasCalculators werden in dblog gespeichert.
Jetzt würde ich gerne den Gasverbrauch mit Schönen Balkendiagrammen Visualisieren.`

Also Verbrauch in KwH /m³ / Kosten Pro Stunde, Tag, Monat und Jahr
Irgendwie finde ich nicht die richtigen Readings.

Kann mir jemand ggf. einmal seine Lösung zeigen?

Danke und gruß,
Thorsten

FHEMbeta

Ich nutze nun auch den GasCalculator. Der Zählerstand meines Gaszählers G4 RF1 wird dabei sehr zuverlässig von einem D1 Mini erfasst und alle 5 Minuten an FHEM übertragen.

Die Berechnungen des Gesamt- und Tagesverbrauchs scheinen zu stimmen. Meine Gastherme hat einen Regelbereich von 7-21kW. Leider treten im Log unvorstellbare (und technisch unerreichbare) Peaks von teils über 100kW auf.

Die erfassten Werte vom Gaszähler (value - Absolutwert in m³) um den riesigen Peak von über 400kW zwischen 12 und 13 Uhr sehen dabei so aus:

+------------------------+-------------+------------------------------------------------+
| timestamp                 | value         |  kWh Verbrauch (zum vorigen Datensatz)  |
+------------------------+-------------+------------------------------------------------+
| 2022-01-12 12:04:20 | 30942.086 |                                                              |
| 2022-01-12 12:09:20 | 30942.156 |    0.735                                                  |
| 2022-01-12 12:14:20 | 30942.186 |    0.315                                                  |
| 2022-01-12 12:24:20 | 30942.206 |    0.210                                                  |
| 2022-01-12 12:29:20 | 30942.276 |    0.735                                                  |
| 2022-01-12 12:34:20 | 30942.286 |    0.105                                                  |
| 2022-01-12 12:44:20 | 30942.326 |    0.420                                                  |
| 2022-01-12 12:49:20 | 30942.386 |    0.630                                                  |
| 2022-01-12 12:54:20 | 30942.396 |    0.105                                                  |
+------------------------+-------------+------------------------------------------------+

Der Wert Momentanleistung entspricht dabei dem Reading PowerCurrent.

Wo könnte hier das Problem liegen?

Sailor

#453
Hi Alexander

Zitat von: Alexander am 12 Januar 2022, 17:18:57
Die Berechnungen des Gesamt- und Tagesverbrauchs scheinen zu stimmen. Meine Gastherme hat einen Regelbereich von 7-21kW. Leider treten im Log unvorstellbare (und technisch unerreichbare) Peaks von teils über 100kW auf.
Wo könnte hier das Problem liegen?

Das Problem habe ich auch. Dass passiert immer, wenn fhem blokiert ist, und der GasCalculator mit dem letzten Zeitstempel der Messung durcheinander kommt.

Ich habe dem Abhilfe geschaffen, indem ich dem DbLog File gesagt habe, gewisse Wert über x nicht aufzuzeichnen.

attr myDbLog valueFn {
if ($DEVICE eq "myGasCalculator" && $READING eq "myGasCounter_IEC_01_energyCalc_PowerCurrent" && ($VALUE > 27000 || $VALUE < 0)) {$IGNORE=1;}
if ($DEVICE eq "myElectricityCalculator" && $READING eq "myElectricityCounter_IEC_01_energyCalc_PowerCurrent" && ($VALUE > 40000 || $VALUE < 0)) {$IGNORE=1;}
}


Die bereits vorhandenen Werte kannst du aus dem DbLog löschen um den Graphen wieder hübsch zu machen:
https://forum.fhem.de/index.php/topic,124251.msg1188238.html#msg1188238

Gruß
    Sailor
******************************
Man wird immer besser...

FHEMbeta

Vielen Dank, das werde ich einmal testen. Die zu großen Werte habe ich gelöscht. Wenn es also "blockiert", wird ein viel zu junger Zeitstempel als Vergleich herangezogen und somit eine zu viel zu kurze Zeitspanne und damit zu hohe Leistung ermittelt?

Wäre es vielleicht möglich, die maximale Leistung der Gastherme als Attribut in das Modul aufzunehmen? Das halte für übersichtlicher und softwaretechnisch eleganter, statt es erst beim Logging auszufiltern. Mein immer noch größter Kritikpunkt nach vielen Jahren der Nutzung von FHEM ist, dass es Single Threaded ist und eine Aufgabe das gesamte System lahmlegen kann. Passiert zwar fast nie, aber wenn dann richtig und zum falschen Zeitpunkt.

Gisbert

ZitatIch habe dem Abhilfe geschaffen, indem ich dem DbLog File gesagt habe, gewisse Wert über x nicht aufzuzeichnen.

Code: [Auswählen]
attr myDbLog valueFn {
if ($DEVICE eq "myGasCalculator" && $READING eq "myGasCounter_IEC_01_energyCalc_PowerCurrent" && ($VALUE > 27000 || $VALUE < 0)) {$IGNORE=1;}
if ($DEVICE eq "myElectricityCalculator" && $READING eq "myElectricityCounter_IEC_01_energyCalc_PowerCurrent" && ($VALUE > 40000 || $VALUE < 0)) {$IGNORE=1;}
}

Hallo Sailor,

gibt es so eine Methode auch für Filelog-Dateien?

Viele​ Grüße​ Gisbert​
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY

Sailor

Hallo Gisbert

Zitat von: Gisbert am 13 Januar 2022, 22:06:59
gibt es so eine Methode auch für Filelog-Dateien?

Keine Ahnung. Ich wusste nicht, dass noch Jemand mit diesem alten Log-System arbeitet.  :o

Gruß
    Sailor
******************************
Man wird immer besser...

dieter114

#457
Zitat von: FHEMbeta am 12 Januar 2022, 21:03:17
Vielen Dank, das werde ich einmal testen. Die zu großen Werte habe ich gelöscht. Wenn es also "blockiert", wird ein viel zu junger Zeitstempel als Vergleich herangezogen und somit eine zu viel zu kurze Zeitspanne und damit zu hohe Leistung ermittelt?

Wäre es vielleicht möglich, die maximale Leistung der Gastherme als Attribut in das Modul aufzunehmen? Das halte für übersichtlicher und softwaretechnisch eleganter, statt es erst beim Logging auszufiltern. Mein immer noch größter Kritikpunkt nach vielen Jahren der Nutzung von FHEM ist, dass es Single Threaded ist und eine Aufgabe das gesamte System lahmlegen kann. Passiert zwar fast nie, aber wenn dann richtig und zum falschen Zeitpunkt.
Leute ich habe das auf ne andere Art gelöst. Die Möglichkeit, das bei einer Berechnung über ein Differenzial (verwendet Sailor im Modul) ein extrem hoher Wert entsteht wenn die Zeit der Berechnung (warum auch immer) nicht stimmt, besteht eigentlich ständig.
Daher habe ich zwei kleine Funktionen in die 99_myUtil.pm eingefügt:
sub reduce_max_value
{
  my($device, $reading, $max_value)=@_;
  # Begrenzung der Ausgabewerte für Graphen
  my($Grenzwert) = ReadingsVal($device,$reading, 0);
   return($max_value) if (ReadingsVal($device, $reading,0) > $max_value );
  return($Grenzwert);
}
und die Werte an sich "glätten" über gleitende Mittelwerte
###############################################################################
#
#  Moving average
#
#  Aufruf: movingAverage(devicename,readingname,zeitspanne in s)
#
###############################################################################

sub movingAverage($$$){
   my ($name,$reading,$avtime) = @_;
   my $hash = $defs{$name};
   my @new = my ($val,$time) = ($hash->{READINGS}{$reading}{VAL},$hash->{READINGS}{$reading}{TIME});
   my ($cyear, $cmonth, $cday, $chour, $cmin, $csec) = $time =~ /(\d+)-(\d+)-(\d+)\s(\d+):(\d+):(\d+)/;
   my $ctime = $csec+60*$cmin+3600*$chour;
   my $num;
   my $arr;
   #-- initialize if requested
   if( ($avtime eq "-1") ){
     $hash->{READINGS}{$reading}{"history"}=undef;
   }
   #-- test for existence
   if( !$hash->{READINGS}{$reading}{"history"}){
      #Log 1,"ARRAY CREATED";
      push(@{$hash->{READINGS}{$reading}{"history"}},\@new);
      $num = 1;
      $arr=\@{$hash->{READINGS}{$reading}{"history"}};
   } else {
      $num = int(@{$hash->{READINGS}{$reading}{"history"}});
      $arr=\@{$hash->{READINGS}{$reading}{"history"}};
      my $starttime = $arr->[0][1];
      my ($syear, $smonth, $sday, $shour, $smin, $ssec) = $starttime =~ /(\d+)-(\d+)-(\d+)\s(\d+):(\d+):(\d+)/;
      my $stime = $ssec+60*$smin+3600*$shour;
      #-- correct for daybreak
      $stime-=86400
        if( $stime > $ctime);
      if( ($num < 25)&&( ($ctime-$stime)<$avtime) ){
        #Log 1,"ARRAY has $num elements, adding another one";
        push(@{$hash->{READINGS}{$reading}{"history"}},\@new);
      }else{
        shift(@{$hash->{READINGS}{$reading}{"history"}});
        push(@{$hash->{READINGS}{$reading}{"history"}},\@new);
      }
    }
    #-- output and average
    my $average = 0;
    for(my $i=0;$i<$num;$i++){
      $average+=$arr->[$i][0];
      Log 4,"[$name moving average] Value = ".$arr->[$i][0]." Time = ".$arr->[$i][1];
    }
    $average=sprintf( "%.1f", $average/$num);
    #--average
    Log 4,"[$name moving average] calculated over $num values is $average"; 
    return $average;
}

Damit bekomme ich Kurven die ansehbar sind  :)
Der Aufruf ist bei mir über userReadings gestaltet:
attr C_STROM_GAS userReadings gasleistung_max { reduce_max_value ('C_STROM_GAS', 'gasleistung', 17);;},
gasleistung_av { movingAverage ('C_STROM_GAS','gasleistung_max',300)}

Also: im userReading gasleistung_av wird vorher der Maximalwert auf 17kW begrenzt (meine Gastherme) und dann innerhalb eines Fensters von 300Sek "gegättet"
RPi II+III+IV,OWX,div.1W Module,HM Zisterne,div. CUL, sduino MAPLEMINI, div ESPEasy, div Tasmota, MQTT2Server,WU-Upload,TabletUI, Indego,Poolsteuerung mit fhem

Wasserwerk33

Hallo Leute,

ich habe mich mit dem Gascalculator versucht auseinander zu setzten. Leider scheiter ich daran. Mein Gaszähler funktoniert das kann ich an einem Plott und an dem Gaszähler sehen, den die Daten werden übertragen. Jetzt benötigen wir nicht viel Gas da wir eine Kamin mit Wassertaschen habe um Warmwasser zu machen. Deswegen auch nur so wenige einträge. Aber er müsste ja wenigstens anfangen zu zählen. Ich denke ich habe etwas falsch eingetragen aber finde den Fehler/ Problem leider nicht.


List von meinem Gaszähler
Internals:
   CFGFN     
   DEF        192.168.33.123 80 ESPBridge Keller_Gassensor
   ESPBridge_MSGCNT 178
   ESPBridge_TIME 2022-02-13 23:39:52
   ESP_BUILD  20112
   ESP_BUILD_NOTES  - Mega
   ESP_NODE_TYPE_ID ESP Easy Mega
   ESP_SLEEP  0
   ESP_UNIT   ESP Easy
   ESP_VERSION 2
   FUUID      6208bbc1-f33f-5e7b-5e35-d247732dd5159872
   HOST       192.168.33.123
   IDENT      Keller_Gassensor
   INTERVAL   disabled
   IODev      ESPBridge
   LASTInputDev ESPBridge
   MAX_CMD_DURATION 1
   MSGCNT     178
   NAME       ESPEasy_Keller_Gassensor
   NOTIFYDEV  global
   NR         68670
   NTFY_ORDER 50-ESPEasy_Keller_Gassensor
   PORT       80
   STATE      70
   SUBTYPE    device
   TYPE       ESPEasy
   VERSION    2.18
   OLDREADINGS:
   READINGS:
     2022-02-13 23:39:52   Aktuell         0
     2022-02-13 15:18:30   Count           0
     2022-02-13 23:39:52   Gesamtverbrauch 70
     2022-02-13 09:05:21   IODev           ESPBridge
     2022-02-13 15:18:30   Time            97941
     2022-02-13 15:18:30   Total           57
     2022-02-13 17:02:14   Total_Speicher  57
     2022-02-13 23:39:52   Zeit            41531
     2022-02-13 14:49:46   state           Initialized
   helper:
     fpc        1644739529.1918
     pm:
       Encode     1
       JSON       1
     received:
       Aktuell    1644791992.27456
       Count      1644761910.65059
       Gesamtverbrauch 1644791992.27417
       Time       1644761910.65076
       Total      1644761910.65093
       Zeit       1644791992.27485
   sec:
     admpwd     
Attributes:
   DbLogInclude Gesamtverbrauch_m3per5min
   Interval   0
   event-min-interval .*:290
   readingSwitchText 1
   room       Keller
   setState   0
   stateFormat Gesamtverbrauch


List vom Gascalculator
Internals:
   CFGFN     
   DEF        ESPEasy_Keller_Gassensor:Aktuell.*
   FUUID      62092e90-f33f-5e7b-7999-c5cd7f4f4b53a0aa
   NAME       myGasCalculator
   NOTIFYDEV  ESPEasy_Keller_Gassensor
   NR         72743
   NTFY_ORDER 10-myGasCalculator
   REGEXP     ESPEasy_Keller_Gassensor:Aktuell.*
   STATE      active
   TYPE       GasCalculator
   READINGS:
     2022-02-13 17:17:14   ESPEasy_Keller_Gassensor_Aktuell_CounterDay1st 0.000
     2022-02-13 17:17:14   ESPEasy_Keller_Gassensor_Aktuell_CounterDayLast 0.000
     2022-02-13 17:17:14   ESPEasy_Keller_Gassensor_Aktuell_CounterMeter1st 0.000
     2022-02-13 17:17:14   ESPEasy_Keller_Gassensor_Aktuell_CounterMeterLast 0.000
     2022-02-13 17:17:14   ESPEasy_Keller_Gassensor_Aktuell_CounterMonth1st 0.000
     2022-02-13 17:17:14   ESPEasy_Keller_Gassensor_Aktuell_CounterMonthLast 0.000
     2022-02-13 17:17:14   ESPEasy_Keller_Gassensor_Aktuell_CounterYear1st 0.000
     2022-02-13 17:17:14   ESPEasy_Keller_Gassensor_Aktuell_CounterYearLast 0.000
     2022-02-13 23:49:52   ESPEasy_Keller_Gassensor_Aktuell_EnergyCostDay 0.000
     2022-02-13 23:49:52   ESPEasy_Keller_Gassensor_Aktuell_EnergyCostMeter 0.000
     2022-02-13 23:49:52   ESPEasy_Keller_Gassensor_Aktuell_EnergyCostMonth 0.000
     2022-02-13 23:49:52   ESPEasy_Keller_Gassensor_Aktuell_EnergyCostYear 0.000
     2022-02-13 23:49:52   ESPEasy_Keller_Gassensor_Aktuell_EnergyDay 0.000
     2022-02-13 23:49:52   ESPEasy_Keller_Gassensor_Aktuell_EnergyMeter 0.000
     2022-02-13 23:49:52   ESPEasy_Keller_Gassensor_Aktuell_EnergyMonth 0.000
     2022-02-13 23:49:52   ESPEasy_Keller_Gassensor_Aktuell_EnergyYear 0.000
     2022-02-13 23:49:52   ESPEasy_Keller_Gassensor_Aktuell_FinanceReserve 47.500
     2022-02-13 23:49:52   ESPEasy_Keller_Gassensor_Aktuell_Meter 2828.000
     2022-02-13 23:49:52   ESPEasy_Keller_Gassensor_Aktuell_MonthMeterReading 1
     2022-02-13 23:49:52   ESPEasy_Keller_Gassensor_Aktuell_PowerCurrent 0.000
     2022-02-13 23:49:52   ESPEasy_Keller_Gassensor_Aktuell_PowerDayAver 4350.769
     2022-02-13 17:22:14   ESPEasy_Keller_Gassensor_Aktuell_PowerDayMax 339360.000
     2022-02-13 21:54:52   ESPEasy_Keller_Gassensor_Aktuell_PowerDayMin -5
     2022-02-13 17:22:14   ESPEasy_Keller_Gassensor_Aktuell_Vol1stDay 2828
     2022-02-13 17:22:14   ESPEasy_Keller_Gassensor_Aktuell_Vol1stMeter 2828
     2022-02-13 17:22:14   ESPEasy_Keller_Gassensor_Aktuell_Vol1stMonth 2828
     2022-02-13 17:22:14   ESPEasy_Keller_Gassensor_Aktuell_Vol1stYear 2828
     2022-02-13 17:22:14   ESPEasy_Keller_Gassensor_Aktuell_VolLastDay 0.000
     2022-02-13 17:22:14   ESPEasy_Keller_Gassensor_Aktuell_VolLastMeter 0.000
     2022-02-13 17:22:14   ESPEasy_Keller_Gassensor_Aktuell_VolLastMonth 0.000
     2022-02-13 17:22:14   ESPEasy_Keller_Gassensor_Aktuell_VolLastYear 0.000
     2022-02-13 17:17:14   ESPEasy_Keller_Gassensor_Aktuell_WFRDayMax 0
     2022-02-13 17:17:14   ESPEasy_Keller_Gassensor_Aktuell_WFRDayMin 0
   system:
     DecimalPlace %.3f
     SiPrefixPowerFactor 1
Attributes:
   BasicPricePerAnnum 330
   Currency   €
   DecimalPlace 3
   GasCounterOffset 2828
   GasCubicPerCounts 0.01
   GasNominalHeatingValue 10
   GasPricePerKWh 9.90
   GaszValue  1
   MonthOfAnnualReading 2
   MonthlyPayment 75
   ReadingDestination CalculatorDevice
   SiPrefixPower W
   Volume     m³
   room       Keller


Lsit von meinem Plott der schon mal funktoniert.
Internals:
   CFGFN     
   DEF        FileLog_Gas_Verbrauch_aktuell:SVG_FileLog_Gas_Verbrauch_aktuell_1:CURRENT
   FUUID      62092c4b-f33f-5e7b-9035-250553da85ec5542
   GPLOTFILE  SVG_FileLog_Gas_Verbrauch_aktuell_1
   LOGDEVICE  FileLog_Gas_Verbrauch_aktuell
   LOGFILE    CURRENT
   NAME       SVG_FileLog_Gas_Verbrauch_aktuell_1
   NR         72671
   STATE      initialized
   TYPE       SVG
Attributes:
   room       Keller



Vielleicht sieht ja einer was ich falsch gemacht habe.

Danke schon mal im vorraus.

Wasserwerk33

Welchen soll/ muss ich den hinter meinen eintragen??

Der der Stündlich mit Hochgerechnet wird oder der der bei einem direkten verbrauch eingerechnet wird??

"totalConsumption = 85" den Gesamtverbrauch seit dem der Senor läuft oder den
"current 0" das ist mein verbrauch wenn der gaszähler sich dreht.

defmod myGasCalculator GasCalculator ESPEasy_Keller_Gassensor.current.*
oder
defmod myGasCalculator GasCalculator ESPEasy_Keller_Gassensor.totalConsumption.*


Sailor

Hallo Wasserwerk

Zitat von: Wasserwerk33 am 13 Februar 2022, 23:54:08
Ich denke ich habe etwas falsch eingetragen aber finde den Fehler/ Problem leider nicht.
Vielleicht sieht ja einer was ich falsch gemacht habe.

Mach mal gemäß https://fhem.de/commandref_DE.html#GasCalculator
ZitatEs ist kein eigenes Zählermodul sondern benötigt eine Regular Expression (regex or regexp) um das Reading mit dem kontinuierlich wachsenden Zählerstand von einem Gaszähler zu finden.

aus deinem
define myGasCalculator GasCalculator ESPEasy_Keller_Gassensor:Aktuell.*
ein
define myGasCalculator GasCalculator ESPEasy_Keller_Gassensor:Gesamtverbrauch:.*

Dann die Attribute im myGasCalculator setzen (Insbesondere GasCounterOffset).

Funktionierts?

Gruss
    Sailor
******************************
Man wird immer besser...

Wasserwerk33

Habe nchmals alles gelöscht. Nochmals alles eingegeben und zusätzlich im ElectricityCalculator im Forum gelesen. Glaube nun müsste es klappen. Hatte auch die Events nicht gesetzt.
Werde mich melden.

Aber schon mal danke für das Modul.

FHEMbeta

Kann mir jemand erklären, warum der GasCalculator bei steigendem Zähler einen aktuelle Leistung von 0W berechnet. Konkret geht es bei dem folgenden Graphen, der die Readings EnergyDay und PowerCurrent benutzt um den Zeitraum zwischen 7:00 und 9:00 Uhr. Der Verbrauch EnergyDay steigt um fast 25kWh, aber der Verbrauch PowerCurrent ist kontinierlich auf 0. Das Reading Meter steigt proportional zu EnergyDay mit dem entsprechenden Umrechnungsfaktor.

Sailor

Hi FHEMbeta

Zitat von: FHEMbeta am 16 Februar 2022, 11:51:34
Kann mir jemand erklären, warum der GasCalculator bei steigendem Zähler einen aktuelle Leistung von 0W berechnet. Konkret geht es bei dem folgenden Graphen, der die Readings EnergyDay und PowerCurrent benutzt um den Zeitraum zwischen 7:00 und 9:00 Uhr. Der Verbrauch EnergyDay steigt um fast 25kWh, aber der Verbrauch PowerCurrent ist kontinierlich auf 0. Das Reading Meter steigt proportional zu EnergyDay mit dem entsprechenden Umrechnungsfaktor.

Das ist in der Tat ab 06:30Uhr ein sehr seltsames Verhalten....  :o
Schint so, als werde im Log keine Werte mehr fuer Power angezeigt.

Wie sehen denn die Zeitstempel der Readings aus?

Gruß
    Sailor
******************************
Man wird immer besser...

FHEMbeta

Zitat von: Sailor am 17 Februar 2022, 10:59:02
Hi FHEMbeta

Das ist in der Tat ab 06:30Uhr ein sehr seltsames Verhalten....  :o
Schint so, als werde im Log keine Werte mehr fuer Power angezeigt.

Wie sehen denn die Zeitstempel der Readings aus?

Gruß
    Sailor


So sehen die in der Datenbank gespeicherten Werte aus (ein D1 Mini meldet alle 5 Minuten den neuen Zählerstand - das läuft absolut fehlerfrei über absolute Zähler in FHEM):

select timestamp, value from history where device='Gaszaehler' and reading='ESPEasy_Gas_Gaszaehler_PowerCurrent' and timestamp>'2022-02-16 05:00:00' and timestamp<'2022-02-16 09:30:00' order by timestamp;

+---------------------+--------+
| timestamp           | value  |
+---------------------+--------+
| 2022-02-16 05:00:48 | 0.000  |
| 2022-02-16 05:03:07 | 19.039 |
| 2022-02-16 05:05:51 | 0.000  |
| 2022-02-16 05:08:07 | 16.679 |
| 2022-02-16 05:10:56 | 0.000  |
| 2022-02-16 05:13:07 | 20.202 |
| 2022-02-16 05:15:57 | 0.000  |
| 2022-02-16 05:18:07 | 20.357 |
| 2022-02-16 05:20:59 | 0.000  |
| 2022-02-16 05:23:07 | 8.861  |
| 2022-02-16 05:26:04 | 0.000  |
| 2022-02-16 05:58:07 | 6.937  |
| 2022-02-16 06:01:21 | 0.000  |
| 2022-02-16 06:06:24 | 0.000  |
| 2022-02-16 06:11:27 | 0.000  |
| 2022-02-16 06:16:31 | 0.000  |
| 2022-02-16 06:21:34 | 0.000  |
| 2022-02-16 06:23:07 | 12.195 |
| 2022-02-16 06:26:36 | 0.000  |
| 2022-02-16 06:56:52 | 0.000  |
| 2022-02-16 07:01:56 | 0.000  |
| 2022-02-16 07:06:59 | 0.000  |
| 2022-02-16 07:12:00 | 0.000  |
| 2022-02-16 07:17:02 | 0.000  |
| 2022-02-16 07:22:04 | 0.000  |
| 2022-02-16 07:27:05 | 0.000  |
| 2022-02-16 07:32:09 | 0.000  |
| 2022-02-16 07:37:13 | 0.000  |
| 2022-02-16 07:42:15 | 0.000  |
| 2022-02-16 07:47:18 | 0.000  |
| 2022-02-16 07:52:20 | 0.000  |
| 2022-02-16 07:57:23 | 0.000  |
| 2022-02-16 08:02:23 | 0.000  |
| 2022-02-16 08:07:27 | 0.000  |
| 2022-02-16 08:12:28 | 0.000  |
| 2022-02-16 08:17:29 | 0.000  |
| 2022-02-16 08:22:33 | 0.000  |
| 2022-02-16 08:27:37 | 0.000  |
| 2022-02-16 08:32:40 | 0.000  |
| 2022-02-16 08:37:43 | 0.000  |
| 2022-02-16 08:42:45 | 0.000  |
| 2022-02-16 08:47:48 | 0.000  |
| 2022-02-16 08:52:51 | 0.000  |
| 2022-02-16 08:57:55 | 0.000  |
| 2022-02-16 09:02:56 | 0.000  |
| 2022-02-16 09:07:56 | 0.000  |
+---------------------+--------+


Grafana zeigt also genau das an, was von FHEM protokolliert wurde. Die Darstellung in FHEM ist identisch (wenn auch etwas unschöner).

Siehe dazu auch den passenden Meter/Zählerstand:

select timestamp, value from history where device='Gaszaehler' and reading='ESPEasy_Gas_Gaszaehler_Meter' and timestamp>'2022-02-16 05:00:00' and timestamp<'2022-02-16 09:30:00' order by timestamp;
+---------------------+-----------+
| timestamp           | value     |
+---------------------+-----------+
| 2022-02-16 05:00:40 | 31356.336 |
| 2022-02-16 05:03:07 | 31356.406 |
| 2022-02-16 05:08:07 | 31356.466 |
| 2022-02-16 05:13:07 | 31356.536 |
| 2022-02-16 05:18:07 | 31356.606 |
| 2022-02-16 05:23:07 | 31356.636 |
| 2022-02-16 05:58:07 | 31356.656 |
| 2022-02-16 06:00:40 | 31356.656 |
| 2022-02-16 06:03:07 | 31356.726 |
| 2022-02-16 06:08:07 | 31356.796 |
| 2022-02-16 06:13:07 | 31356.866 |
| 2022-02-16 06:18:07 | 31356.936 |
| 2022-02-16 06:23:07 | 31356.966 |
| 2022-02-16 06:53:07 | 31357.026 |
| 2022-02-16 06:58:07 | 31357.096 |
| 2022-02-16 07:00:40 | 31357.096 |
| 2022-02-16 07:03:07 | 31357.186 |
| 2022-02-16 07:08:07 | 31357.346 |
| 2022-02-16 07:13:07 | 31357.496 |
| 2022-02-16 07:18:07 | 31357.646 |
| 2022-02-16 07:23:07 | 31357.806 |
| 2022-02-16 07:28:07 | 31357.956 |
| 2022-02-16 07:33:07 | 31358.086 |
| 2022-02-16 07:38:07 | 31358.206 |
| 2022-02-16 07:43:07 | 31358.316 |
| 2022-02-16 07:48:07 | 31358.406 |
| 2022-02-16 07:53:07 | 31358.486 |
| 2022-02-16 07:58:07 | 31358.566 |
| 2022-02-16 08:00:40 | 31358.566 |
| 2022-02-16 08:03:07 | 31358.646 |
| 2022-02-16 08:08:07 | 31358.716 |
| 2022-02-16 08:13:07 | 31358.776 |
| 2022-02-16 08:18:07 | 31358.846 |
| 2022-02-16 08:23:07 | 31358.916 |
| 2022-02-16 08:28:07 | 31358.976 |
| 2022-02-16 08:33:07 | 31359.046 |
| 2022-02-16 08:38:07 | 31359.116 |
| 2022-02-16 08:43:07 | 31359.186 |
| 2022-02-16 08:48:07 | 31359.246 |
| 2022-02-16 08:53:07 | 31359.316 |
| 2022-02-16 08:58:07 | 31359.386 |
| 2022-02-16 09:00:40 | 31359.386 |
| 2022-02-16 09:03:07 | 31359.426 |
+---------------------+-----------+