Neues Modul: GasCalculator

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

Vorheriges Thema - Nächstes Thema

gent

Zitat von: Sailor am 30 April 2016, 16:30:48
Der mechanische Zähler hat unter Umständen ein Vorsprung gegenüber dem elektronischen Zähler. Das Delta muss angegeben werden.
Die
Gruß
   Sailor

Die Verwirrung kommt aus der Commandref:


GasCounterOffset :
Eine gültige float-Zahl für den Volumen Unterschied = Offset (Nicht der Unterschied zwischen Zählimpulsen) zwischen dem am mechanischen Gaszähler und dem angezeigten Wert im Reading dieses Device.
Der Offset-Wert wird wie folgt ermittelt: VOffset = VMechanisch - VModule
Der Standard-Wert ist 0.00


Hier wird leider nicht erwähnt, in welchem "Reading dieses Device" der Wert für VModule steht. Ich gehe davon aus, dass da "Total Meter" gemeint ist.

Gruß vom Gent
fhem auf rPi3 mit USB boot und M2, cul866 (hm), homebridge, FlowerSens, Shelly, Harmony, WemosD1, Sonoff/Tasmota, grafana, mqtt/mosquitto

gent

Hallo Sailor,

irgendetwas stimmt hier mit dem GasCounterOffset nicht oder ich verstehe es nicht. Ich musste nun meinen Zählerstand im Modul ein paar mal anpassen wegen Hardwareproblemen im Zählerdevice. Ich gehe immer noch davon aus, dass das Reading, in dem der korrekte Zählerstand steht, das Reading
<DestinationDevice>_<SourceCounterReading>_Meter
ist, so wie ich die Commandref verstehe.

Wenn dieses Reading z.B. den Wert 1987.500 hat und der Zählerstand am Gaszähler 1986.100 ist, dann müsste das GasCounterOffset -1.400 sein. Wenn ich das als Offset eintrage bekomme ich total verrückte Werte z.B. ist _PowerCurrent negativ.

Wo ist mein Denkfehler?

Viele Grüße vom Gent
fhem auf rPi3 mit USB boot und M2, cul866 (hm), homebridge, FlowerSens, Shelly, Harmony, WemosD1, Sonoff/Tasmota, grafana, mqtt/mosquitto

Sailor

Hallo Gent

Zitat von: gent am 30 Oktober 2017, 20:55:29
irgendetwas stimmt hier mit dem GasCounterOffset nicht oder ich verstehe es nicht. Ich musste nun meinen Zählerstand im Modul ein paar mal anpassen wegen Hardwareproblemen im Zählerdevice. Ich gehe immer noch davon aus, dass das Reading, in dem der korrekte Zählerstand steht, das Reading
<DestinationDevice>_<SourceCounterReading>_Meter
ist, so wie ich die Commandref verstehe.

Wenn dieses Reading z.B. den Wert 1987.500 hat und der Zählerstand am Gaszähler 1986.100 ist, dann müsste das GasCounterOffset -1.400 sein. Wenn ich das als Offset eintrage bekomme ich total verrückte Werte z.B. ist _PowerCurrent negativ.

Wo ist mein Denkfehler?

Kein Denkfehler...

Wenn du den Offset reingegeben hast musst du 2 bis 3 Auslesungen abwarten, bis die Werte wieder stimmen.
Mit Änderung des Offsets hast du ja die Rechnung und mit den gespeicherten Werten durcheinander gebracht.

Wäre dein Offset positiv, hättest du auch für 2-3 Auslesungen exorbitant hohe Werte für _PowerCurrent.
Das wäre dir wahrscheinlich gar nicht aufgefallen, weil sie nicht negativ sind.  ;)

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

gent

Hallo Sailor,

vielen Dank für die Aufklärung. Manchmal braucht es nur ein wenig Geduld.

Viele Grüße vom Gent
fhem auf rPi3 mit USB boot und M2, cul866 (hm), homebridge, FlowerSens, Shelly, Harmony, WemosD1, Sonoff/Tasmota, grafana, mqtt/mosquitto

gent

Hallo,

ich habe nun noch eine Frage: Offenbar läuft mein tatsächlicher Zähler und mein Zählerdevice etwas auseinander:

Im GasCalculator habe ich 2215.710 auf dem Zähler habe ich 2266.700

Was muss ich nun tun, damit beides wieder einigermaßen synchron ist und ich keine Berechnungen verliere?

Viele Grüße vom Gent
fhem auf rPi3 mit USB boot und M2, cul866 (hm), homebridge, FlowerSens, Shelly, Harmony, WemosD1, Sonoff/Tasmota, grafana, mqtt/mosquitto

JoeALLb

Hallo Allerseits,
nun, ich befürchte ihr schlagt die Händer über den Kopf zusammen aber ich fand auf den 15 Seiten für meine Frage einfach keineAntwort ;-)

ich habe eine Therme mit dem km200 von Sailor im Einsatz.
Gaszähler habe ich (aktuiell) keinen eigenen.

Sollte ich nicht über "therme:/heatSources/workingTime/totalSystem.*" als Betriebsstundenzähler einen genäherten Gasverbrauch ermitteln können?

Danke für Hinweise :D

Joe
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

Sailor

Hallo Joe

Zitat von: JoeALLb am 20 Dezember 2017, 10:25:04
Sollte ich nicht über "therme:/heatSources/workingTime/totalSystem.*" als Betriebsstundenzähler einen genäherten Gasverbrauch ermitteln können?

Definitive NEIN, da der Betriebsstundenzaehler nicht die Brennmodulation beruecksichtigt.

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

JoeALLb

Hallo Sailor,

Aber diese könnte man ja mit einbeziehen, die liefert das kn200 Modul ja auch, oder sind deren Daten zu ungenau für solche groben Berechnungen?
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

Sailor

Hallo Joe

Zitat von: JoeALLb am 20 Dezember 2017, 13:44:06
Aber diese könnte man ja mit einbeziehen, die liefert das kn200 Modul ja auch, oder sind deren Daten zu ungenau für solche groben Berechnungen?

Das ist alles ein ganz grobes Schaetzeisen.

Das haengt von so vielen Faktoren ab. Und zuguterletzt gibt dir das KM200 Modul nur eine Momentanaufnahme auf Basis des Abfrageintervals.

Um ueber diesem Wege eine verlaessliche Aussage treffen zu koennen, muesstest du

a) Das Abfrageintervall von 300s auf ca 5s reduzieren -> fhem Vollauslastung
b) Du die Modulationsfaktoren kennen (kW pro Prozent Modulation)
c) Die Nichtlineare Modulationskennlinie kennen ( Der Faktor unter b) ist nicht Linear)

Alles Murks!

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

JoeALLb

FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

claudio

Hi all

I try in vain to get it working with my ecocompteur legrand https://blog.domadoo.fr/guides/ecocompteur-legrand-consommations-electricite-eau-gaz/

I get the data via httpmod in fhem. The url from the device give me these data :

{
    "data1":3.000000,
    "data2":152.000000,
    "data3":0.000000,
    "data4":132.000000,
    "data5":16.000000,
    "data6":4953.384766,
    "data6m3":460.779999,
    "data7":0.000000,
    "data7m3":0.000000,
    "heure":19,
    "minute":43,
    "CIR1_Nrj":0.000000,
    "CIR1_Vol":0.000000,
    "CIR2_Nrj":0.000000,
    "CIR2_Vol":0.000000,
    "CIR3_Nrj":0.000000,
    "CIR3_Vol":0.000000,
    "CIR4_Nrj":0.000000,
    "CIR4_Vol":0.000000,
    "Date_Time":1515181413
}


this is the httpmod def :

fhem> list ecodata
Internals:
   BUSY       0
   DEF        http://192.168.10.14/inst.json 12
   Interval   12
   JSONEnabled 1
   LASTSEND   1515178665.0194
   MainURL    http://192.168.10.14/inst.json
   ModuleVersion 3.3.5 - 29.9.2016
   NAME       ecodata
   NR         42
   STATE      ???
   TRIGGERTIME 1515178677.01867
   TRIGGERTIME_FMT 2018-01-05 19:57:57
   TYPE       HTTPMOD
   addr       http://192.168.10.14:80
   buf        HTTP/1.0 200 OK
Server: lwip/3.0
Content-Type: text/plain

{
    "data1":3.000000,
    "data2":148.000000,
    "data3":3416.000000,
    "data4":124.000000,
    "data5":16.000000,
    "data6":4953.492188,
    "data6m3":460.789978,
    "data7":0.000000,
    "data7m3":0.000000,
    "heure":19,
    "minute":57,
    "CIR1_Nrj":0.000000,
    "CIR1_Vol":0.000000,
    "CIR2_Nrj":0.000000,
    "CIR2_Vol":0.000000,
    "CIR3_Nrj":0.000000,
    "CIR3_Vol":0.000000,
    "CIR4_Nrj":0.000000,
    "CIR4_Vol":0.000000,
    "Date_Time":1515182265
}
   code       200
   conn       
   data       
   displayurl http://192.168.10.14/inst.json
   header     
   host       192.168.10.14
   httpheader HTTP/1.0 200 OK
Server: lwip/3.0
Content-Type: text/plain
   httpversion 1.0
   hu_blocking 0
   hu_filecount 113
   hu_portSfx
   ignoreredirects 0
   loglevel   4
   path       /inst.json
   protocol   http
   redirects  0
   timeout    2
   url        http://192.168.10.14/inst.json
   value      0
   QUEUE:
   Readings:
     2018-01-05 19:57:45   CIR1_Nrj        0
     2018-01-05 19:57:45   CIR1_Vol        0
     2018-01-05 19:57:45   CIR2_Nrj        0
     2018-01-05 19:57:45   CIR2_Vol        0
     2018-01-05 19:57:45   CIR3_Nrj        0
     2018-01-05 19:57:45   CIR3_Vol        0
     2018-01-05 19:57:45   CIR4_Nrj        0
     2018-01-05 19:57:45   CIR4_Vol        0
     2018-01-05 19:57:45   Date_Time       1515182265
     2018-01-05 19:57:45   data1           3
     2018-01-05 19:57:45   data2           148
     2018-01-05 19:57:45   data3           3416
     2018-01-05 19:57:45   data4           124
     2018-01-05 19:57:45   data5           16
     2018-01-05 19:57:45   data6           4953.492188
     2018-01-05 19:57:45   data6m3         460.789978
     2018-01-05 19:57:45   data7           0
     2018-01-05 19:57:45   data7m3         0
     2018-01-05 19:57:45   heure           19
     2018-01-05 19:57:45   minute          57
     2018-01-05 19:57:45   totalgazm3      890.79
     2018-01-05 19:57:45   totalwatts      3707
   Request:
     data       
     header     
     ignoreredirects 0
     retryCount 0
     type       update
     url        http://192.168.10.14/inst.json
     value      0
   Defptr:
     Readingbase:
       CIR1_Nrj   reading
       CIR1_Vol   reading
       CIR2_Nrj   reading
       CIR2_Vol   reading
       CIR3_Nrj   reading
       CIR3_Vol   reading
       CIR4_Nrj   reading
       CIR4_Vol   reading
       Date_Time  reading
       data1      reading
       data2      reading
       data3      reading
       data4      reading
       data5      reading
       data6      reading
       data6m3    reading
       data7      reading
       data7m3    reading
       heure      reading
       minute     reading
     Readingnum:
       CIR1_Nrj   
       CIR1_Vol   
       CIR2_Nrj   
       CIR2_Vol   
       CIR3_Nrj   
       CIR3_Vol   
       CIR4_Nrj   
       CIR4_Vol   
       Date_Time 
       data1     
       data2     
       data3     
       data4     
       data5     
       data6     
       data6m3   
       data7     
       data7m3   
       heure     
       minute     
     Readingoutdated:
     Requestreadings:
       Update:
         CIR1_Nrj   reading
         CIR1_Vol   reading
         CIR2_Nrj   reading
         CIR2_Vol   reading
         CIR3_Nrj   reading
         CIR3_Vol   reading
         CIR4_Nrj   reading
         CIR4_Vol   reading
         Date_Time  reading
         data1      reading
         data2      reading
         data3      reading
         data4      reading
         data5      reading
         data6      reading
         data6m3    reading
         data7      reading
         data7m3    reading
         heure      reading
         minute     reading
   Sslargs:
Attributes:
   disable    0
   extractAllJSON 1
   userReadings totalgazm3 { sprintf("%.2f",ReadingsVal("ecodata","data6m3",0)+430.00) },
totalwatts { ReadingsVal("ecodata","data1",0)+ReadingsVal("ecodata","data2",0)+ReadingsVal("ecodata","data3",0)+ReadingsVal("ecodata","data4",0)+ReadingsVal("ecodata","data5",0) }






The gas realtime count value is data6m3 (m3) and data6 is the gas count in Wh

here is the def :

fhem> list calculateur_gaz
Internals:
   DEF        ecodata:data6m3:.*
   NAME       calculateur_gaz
   NR         72
   NTFY_ORDER 10-calculateur_gaz
   REGEXP     ecodata:data6m3:.*
   STATE      active
   TYPE       GasCalculator
   Readings:
     2018-01-05 19:52:42   ecodata_data6m3_EnergyCostDay 0.000
     2018-01-05 19:52:42   ecodata_data6m3_EnergyCostMeter 0.000
     2018-01-05 19:52:42   ecodata_data6m3_EnergyCostMonth 0.000
     2018-01-05 19:52:42   ecodata_data6m3_EnergyCostYear 0.000
     2018-01-05 19:52:42   ecodata_data6m3_EnergyDay 0.000
     2018-01-05 19:52:42   ecodata_data6m3_EnergyMeter 0.000
     2018-01-05 19:52:42   ecodata_data6m3_EnergyMonth 0.000
     2018-01-05 19:52:42   ecodata_data6m3_EnergyYear 0.000
     2018-01-05 19:52:42   ecodata_data6m3_FinanceReserve 0.000
     2018-01-05 19:52:42   ecodata_data6m3_Meter 4.608
     2018-01-05 19:52:42   ecodata_data6m3_MonthMeterReading 9
     2018-01-05 19:52:42   ecodata_data6m3_PowerCurrent 0.000
     2018-01-05 19:52:42   ecodata_data6m3_PowerDayAver 0.000
     2018-01-05 19:52:18   ecodata_data6m3_PowerDayMax 0
     2018-01-05 19:52:18   ecodata_data6m3_PowerDayMin 0
     2018-01-05 19:52:18   ecodata_data6m3_Vol1stDay 4.60779999
     2018-01-05 19:52:18   ecodata_data6m3_Vol1stMeter 4.60779999
     2018-01-05 19:52:18   ecodata_data6m3_Vol1stMonth 4.60779999
     2018-01-05 19:52:18   ecodata_data6m3_Vol1stYear 4.60779999
     2018-01-05 19:52:18   ecodata_data6m3_VolLastDay 4.608
     2018-01-05 19:52:18   ecodata_data6m3_VolLastMeter 4.608
     2018-01-05 19:52:18   ecodata_data6m3_VolLastMonth 4.608
     2018-01-05 19:52:18   ecodata_data6m3_VolLastYear 4.608
     2018-01-05 19:51:51   ecodata_totalgazm3_EnergyCostDay 0.000
     2018-01-05 19:51:51   ecodata_totalgazm3_EnergyCostMeter 0.000
     2018-01-05 19:51:51   ecodata_totalgazm3_EnergyCostMonth 0.000
     2018-01-05 19:51:51   ecodata_totalgazm3_EnergyCostYear 0.000
     2018-01-05 19:51:51   ecodata_totalgazm3_EnergyDay 0.004
     2018-01-05 19:51:51   ecodata_totalgazm3_EnergyMeter 0.004
     2018-01-05 19:51:51   ecodata_totalgazm3_EnergyMonth 0.004
     2018-01-05 19:51:51   ecodata_totalgazm3_EnergyYear 0.004
     2018-01-05 19:51:51   ecodata_totalgazm3_FinanceReserve -0.000
     2018-01-05 19:51:51   ecodata_totalgazm3_Meter 8.908
     2018-01-05 19:51:51   ecodata_totalgazm3_MonthMeterReading 9
     2018-01-05 19:51:51   ecodata_totalgazm3_PowerCurrent 0.000
     2018-01-05 19:51:51   ecodata_totalgazm3_PowerDayAver 0.029
     2018-01-05 19:35:18   ecodata_totalgazm3_PowerDayMax 2.400
     2018-01-05 19:34:27   ecodata_totalgazm3_PowerDayMin 0
     2018-01-05 19:34:27   ecodata_totalgazm3_Vol1stDay 8.9074
     2018-01-05 19:34:27   ecodata_totalgazm3_Vol1stMeter 8.9074
     2018-01-05 19:34:27   ecodata_totalgazm3_Vol1stMonth 8.9074
     2018-01-05 19:34:27   ecodata_totalgazm3_Vol1stYear 8.9074
     2018-01-05 19:34:27   ecodata_totalgazm3_VolLastDay 8.907
     2018-01-05 19:34:27   ecodata_totalgazm3_VolLastMeter 8.907
     2018-01-05 19:34:27   ecodata_totalgazm3_VolLastMonth 8.907
     2018-01-05 19:34:27   ecodata_totalgazm3_VolLastYear 8.907
   System:
     SiPrefixPowerFactor 1
Attributes:
   BasicPricePerAnnum 0
   Currency   €
   GasCounterOffset 0
   GasCubicPerCounts 0.01
   GasNominalHeatingValue 10
   GasPricePerKWh 0.0534
   GaszValue  1
   MonthOfAnnualReading 5
   MonthlyPayment 0
   ReadingDestination CalculatorDevice
   SiPrefixPower W
   Volume     m³
   room       Chauffage


The meter is wrong, is appear to be divided by a factor of 100; Should be around 460.xx without taking the offset (430 m3) in consideration

Do you guys knows what I'm doing wrong ?

KölnSolar

ZitatGasCubicPerCounts 0.01
should be 1 in your case.
Regards Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

claudio

Zitat von: KölnSolar am 05 Januar 2018, 22:43:48
should be 1 in your case.
Regards Markus

Thanks, yes you're right the conversion impulse/m3 is already done by the device so, it should appear to fhem as is.


JoeALLb

Hallo Sailor,

habe nun einen Gaszähler nachgerüstet, funktioniert einwandfrei, danke.

Ich möchte noch einen Wunsch äußern :)
Zu deiner Modulreihe würde, so denke ich, gut ein Modul zur Lade-Berechnung eines Pufferspeichers passen.
Denn oft würde man doch gerne wissen, wieviel dort anzapfbare Energie gespeichert ist bzw. ob ich ihn noch laden kann/darf/soll.

Als Idee könnte man die Puffergröße, die Lage der Temperatursensoren und ggf. Einspeisquellen angeben. Über die Daten des Gaszählers und ggf. des Stromzählers oder auch Solarreglers könnte man sicherlich brauchbare Daten erzeugen....  :D

sG Joe
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

Depechem

Hi,
kann man das Modul auch nutzen wenn man nur einen Reedkontakt am GPIO hat und somit nur den Trigger aller 0,01m3 bekommt?

Gruß Thomas
RaspberryPi2 / FHEM / 3 Wand-Tablets mit Tablet UI / HM USB / verschiedene HM-Aktoren / JeeLink USB für WS1600 und mehrere LaCrosse Sensoren / HEOS ...