Neues Modul: WaterCalculator

Begonnen von Sailor, 06 Oktober 2016, 06:53:25

Vorheriges Thema - Nächstes Thema

Thomas Stark

Hallo zusammen,

ich habe mir selber geholfen indem ich die Stelle, welche zum Fhem Stillstand um Mitternacht führte mit einem Try and Catch umschrieben habe. Da ich kein Perl Experte bin und selber eher in C# zu hause bin. Könnte eventuell einer von Euch sich die Stelle mal anschauen und in eine neue Version einbauen? Am Besten im Catch Block dann noch ein Log einbauen. Meine Version im Anhang Hier der Auszug. Diese Version benötigt folgendes Perl Modul  Try::Tiny;

try
   {
   
   foreach my $WaterCountReadingName (@WaterCountReadingNameListComplete)
   {
      if (($WaterCountReadingName =~ m[$WaterCountReadingRegEx]) && ($WaterCountReadingName !~ m[$WaterCountReadingRegExNeg])) {
         push(@WaterCountReadingNameListFiltered, $WaterCountReadingName);
      }
   }
   }
   catch
   {
      
   }


Gruss Thomas

KölnSolar

Hallo Thomas,
es ist einfacher. Hier der Fehlerdefine BrauchwasserZaehler WaterCalculator ESPEasy_Fhem_Koppler_2_Wasserzaehler_1:*Total.*Korrekt ohne Sterndefine BrauchwasserZaehler WaterCalculator ESPEasy_Fhem_Koppler_2_Wasserzaehler_1:Total.*
Grüße 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

Thomas Stark

Vielen Dank für die Infos.
Ich habe es gleich geändert und das Modul upgedatet. Mal sehen ob es heute Nacht funktioniert.

Gruss Thomas

KölnSolar

#123
Hi Sailor,
so richtig rund ist der Tages-(vmtl. auch Monats-, Jahres-)wechsel immer noch nicht. Der erste Impuls(egal ob wirklich der 1. oder vorher Impulse ohne Zählerstandsänderung) mit Entnahme wird bei "manuellem device" in den Tagesdaten nicht berücksichtigt. Ich spekuliere, Du setzt die ...1st-Werte nicht. Vermutlich müsstest Du auch(oder nur ? :-\) den ._......_LastUpdateTimestampUnix um Mitternacht setzen(was deshalb richtig wäre, da Dein "künstlicher" Mitternachtsimpuls ja einem Impuls mit unverändertem Zählerstand entspricht).

Morgen gucke ich noch, was der Tageswechsel bringt und schreibe weiter.

Grüße Markus

Edit nach Mitternacht: Der Tageswechsel war korrekt(..DayLast, ...Day). Aber mit dem 1. Impuls(mit Entnahme) werden ..DayLast, ...Day auf 0 gesetzt, anstatt ..DayLast unverändert und ...Day auf den Entnahmewert.
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

der-Lolo

Guten Morgen WaterCalculator Freunde,
ich platze hier einfach mal so mit einem neuem Thema rein...
wir bauen derzeit einen Pool. Ich habe einen Water Flow Meter YF-DN50 via RPI_GPIO angebunden. Ich möchte die Impulse via Counter analog zu einem S0-Zähler zählen, das funktioniert auch schon soweit. Jetzt habe ich die FHEM suche bemüht um zu schauen ob es für Wasserzähler schon etwas gibt.

Zuerst einmal sollte ich vielleicht erklären was ich überhaupt bezwecke:
Die Pumpe für den Pool ist via Modbus Frequenzgeregelt, der Pool wird durch ein Solarnalage beheizt - hier stelle ich mir vor die Frequenz der Pumpe ( --> Durchfluss l/min ) je nach ausbeute der Solaranlage zu regeln.

Ich möchte gerne ein Reading liter/Stunde haben um den aktuellen Durchfluss ablesen zu können.
Ausserdem hätte ich gerne eine Zählfunktion über den Tag um zu schauen wieviele m3 Wasser bewegt wurden, gerne würde ich das auch als eine Historie in einem Diagramm haben.

( Wasser sollte mindestens 2mal pro Tag durch den Filter geschickt werden, wenn es sehr warm ist oder viel gebadet wird vielleicht sogar 3mal )
Am frühen Abend gegen 20 Uhr würde ich gerne die nötige Restlaufzeit bestimmen um die Regel der 2-3 umwälzungen ein zu halten.

Ist das WaterCalculator Modul ein geeigneter Ansatz um meinen Flowmeter auszuwerten..? Oder ist es wegen der Kostenberechnung vielleicht ein bisschen Oversize..?  Wie würdet ihr mein vorhaben realisieren..?

Der Host für mein "poolFHEM" ist ein exclusiv für den Pool genutzter Raspi 2B, hier werden der Modbus FU, eine Wago SPS mit 16DI 16DO, 1-Wire Temperaturen und mittels EZO-Hat pH, ORP und Systemdruck gemessen/verarbeitet. Später soll dieser Raspi auch noch die Gartenbewässerung steuern. Ich möchte diesen Raspi nicht mit unnötigem Balast träge machen - eine MariaDB für Logging steht auf einer Synology zur verfügung.

KölnSolar

ZitatZählfunktion über den Tag
gibt der Watercalculator her
ZitatAm frühen Abend gegen 20 Uhr würde ich gerne die nötige Restlaufzeit bestimmen um die Regel der 2-3 umwälzungen ein zu halten.
ließe sich dann in einem täglichen at prüfen u. steuern.
ZitatIch möchte gerne ein Reading liter/Stunde haben um den aktuellen Durchfluss ablesen zu können.
Nicht ganz was Du möchtest, aber in den ...WFR..-Readings hast Du das als aktuell u. daily min,max,avg. Einheit über Attribut definierbar.

Ich denke, der Watercalculator erfüllt Deine Anforderungen.

Grüße 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

der-Lolo

#126
Na das klingt doch schonmal gut...

Jetzt habe ich aber noch ein Problem - ich werde aus dem Datenblatt nicht ganz schlau, irgendwie / wo muss ich ja nun FHEM noch sagen wieviele Impulse ein Liter oder qm sind, oder?

EDIT:
Ich habe noch was ergoogelt -
The pulse signal is a simple square wave so its quite easy to log and convert into liters per minute using the following formula.

Pulse frequency (Hz) / 0.2 = flow rate in L/min.

Das bedeutet ja das ich die Counts noch in bezug zu Zeit setzen muss um auf eine Frequenz zu kommen...

Bin irgendwie gerade etwas überfordert...


KölnSolar

Für den Calculator muss ein Zähler als Basis vorhanden sein.
Den müsstest Du Dir in Deinem "Flowmeter" über z.B. userreadings erzeugen. Wenn ich richtig gerechnet hab, sind 300 Impulse = 1l.
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

KölnSolar

#128
Hi Sailor,
wollte mich noch mal in Erinnerung bringen.

Zitat von: KölnSolar am 23 Mai 2021, 10:23:51
Hi Sailor,
so richtig rund ist der Tages-(vmtl. auch Monats-, Jahres-)wechsel immer noch nicht. Der erste Impuls(egal ob wirklich der 1. oder vorher Impulse ohne Zählerstandsänderung) mit Entnahme wird bei "manuellem device" in den Tagesdaten nicht berücksichtigt. Ich spekuliere, Du setzt die ...1st-Werte nicht. Vermutlich müsstest Du auch(oder nur ? :-\) den ._......_LastUpdateTimestampUnix um Mitternacht setzen(was deshalb richtig wäre, da Dein "künstlicher" Mitternachtsimpuls ja einem Impuls mit unverändertem Zählerstand entspricht).

Morgen gucke ich noch, was der Tageswechsel bringt und schreibe weiter.

Grüße Markus

Edit nach Mitternacht: Der Tageswechsel war korrekt(..DayLast, ...Day). Aber mit dem 1. Impuls(mit Entnahme) werden ..DayLast, ...Day auf 0 gesetzt, anstatt ..DayLast unverändert und ...Day auf den Entnahmewert.
Da sich außer mir niemand beklagt: Liegt es an 2 Zählern in einem device ?
Grüße Markus
Edit: nun ein Testdevice so angelegtdefmod WarmWasserZaehler WaterCalculator WasserZaehler:TotallW.*
attr WarmWasserZaehler BasicPricePerAnnum 192.6
attr WarmWasserZaehler Currency €;
attr WarmWasserZaehler DecimalPlace 3
attr WarmWasserZaehler MonthOfAnnualReading 1
attr WarmWasserZaehler MonthlyPayment 31.0
attr WarmWasserZaehler ReadingDestination CalculatorDevice
attr WarmWasserZaehler WFRUnit l/min
attr WarmWasserZaehler WaterCounterOffset 0
attr WarmWasserZaehler WaterCubicPerCounts 0.001
attr WarmWasserZaehler WaterPricePerCubic 2.54
attr WarmWasserZaehler room Keller

setstate WarmWasserZaehler active
setstate WarmWasserZaehler 2021-08-18 00:00:11 .ReadingDestinationDeviceName WarmWasserZaehler
setstate WarmWasserZaehler 2021-08-18 00:00:10 .WasserZaehler_TotallWw_LastDV 0.000
setstate WarmWasserZaehler 2021-08-18 00:00:10 .WasserZaehler_TotallWw_LastDt 86409
setstate WarmWasserZaehler 2021-08-14 14:07:21 .WasserZaehler_TotallWw_LastUpdateTimestampUnix 1628942841
setstate WarmWasserZaehler 2021-08-18 00:00:10 .WasserZaehler_TotallWw_PrevRead 746.113
setstate WarmWasserZaehler 2021-08-18 00:00:10 .WasserZaehler_TotallWw_WFRDayCount 1
setstate WarmWasserZaehler 2021-08-18 00:00:10 .WasserZaehler_TotallWw_WFRDaySum 0.000
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_ConsumptionCostDay 0.00
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_ConsumptionCostDayLast 0.00
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_ConsumptionCostMeter 7.81
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_ConsumptionCostMonth 0.42
setstate WarmWasserZaehler 2021-08-01 00:00:01 WasserZaehler_TotallWw_ConsumptionCostMonthLast 1.01
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_ConsumptionCostYear 7.81
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_ConsumptionDay 0.000
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_ConsumptionDayLast 0.000
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_ConsumptionMeter 3.073
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_ConsumptionMonth 0.165
setstate WarmWasserZaehler 2021-08-01 00:00:01 WasserZaehler_TotallWw_ConsumptionMonthLast 0.398
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_ConsumptionYear 3.073
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_CounterCurrent 746.113
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_CounterDay1st 746.113
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_CounterDayLast 746.113
setstate WarmWasserZaehler 2021-01-26 10:37:17 WasserZaehler_TotallWw_CounterMeter1st 743.04
setstate WarmWasserZaehler 2021-01-26 10:37:17 WasserZaehler_TotallWw_CounterMeterLast 743.040
setstate WarmWasserZaehler 2021-08-01 00:00:01 WasserZaehler_TotallWw_CounterMonth1st 745.948
setstate WarmWasserZaehler 2021-08-01 00:00:01 WasserZaehler_TotallWw_CounterMonthLast 745.948
setstate WarmWasserZaehler 2021-01-26 10:37:17 WasserZaehler_TotallWw_CounterYear1st 743.04
setstate WarmWasserZaehler 2021-01-26 10:37:17 WasserZaehler_TotallWw_CounterYearLast 743.040
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_FinanceReserve 111.795
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_MonthMeterReading 8
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_WFRCurrent 0.000
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_WFRDayAver 0.000
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_WFRDayMax 0
setstate WarmWasserZaehler 2021-08-18 00:00:10 WasserZaehler_TotallWw_WFRDayMin 0.000
Nach einer Entnahme dann die veränderten readingssetstate WarmWasserZaehler 2021-08-18 15:15:53 .ReadingDestinationDeviceName WarmWasserZaehler
setstate WarmWasserZaehler 2021-08-18 15:15:53 .WasserZaehler_TotallWw_LastDV 0.020
setstate WarmWasserZaehler 2021-08-18 15:15:53 .WasserZaehler_TotallWw_LastDt 54943
setstate WarmWasserZaehler 2021-08-18 15:15:53 .WasserZaehler_TotallWw_LastUpdateTimestampUnix 1629292553
setstate WarmWasserZaehler 2021-08-18 15:15:53 .WasserZaehler_TotallWw_PrevRead 746.133
setstate WarmWasserZaehler 2021-08-18 15:15:53 .WasserZaehler_TotallWw_WFRDayCount 1
setstate WarmWasserZaehler 2021-08-18 15:15:53 .WasserZaehler_TotallWw_WFRDaySum 0.022
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_ConsumptionCostDay 0.00
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_ConsumptionCostDayLast 0.00
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_ConsumptionCostMeter 7.86
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_ConsumptionCostMonth 0.47
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_ConsumptionCostYear 7.86
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_ConsumptionDay 0.000
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_ConsumptionDayLast 0.000
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_ConsumptionMeter 3.093
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_ConsumptionMonth 0.185
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_ConsumptionYear 3.093
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_CounterCurrent 746.133
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_CounterDay1st 746.133
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_CounterDayLast 746.113
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_FinanceReserve 111.744
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_MonthMeterReading 8
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_WFRCurrent 0.022
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_WFRDayAver 0.022
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_WFRDayMax 0.022
setstate WarmWasserZaehler 2021-08-18 15:15:53 WasserZaehler_TotallWw_WFRDayMin 0.000
Leider nix Anzeige der Entnahme bei den .Day-readings. Die anderen Daten(.Month,...) scheinen(hab nicht alle geprüft) die Entnahme berücksichtigt zu haben
Edit2: Hab nochmal ein update u. reload gemacht u. das Ganze wiederholt--> keine Änderung
verbose=5 sagt nach delete, define u. 2 Entnahmen2021.08.18 16:06:46 3: WarmWasserZaehler WaterCalculator- The Water calculator has been undefined. Values corresponding to water meter will no longer calculated
2021.08.18 16:07:18 5: WarmWasserZaehler_Get - reading         : ?
2021.08.18 16:07:18 5: WarmWasserZaehler_Get - value           :
2021.08.18 16:07:18 5: WarmWasserZaehler : WaterCalculator - set list:   WasserZaehler_TotallWw_CounterDayLast WasserZaehler_TotallWw_ConsumptionCostMonth WasserZaehler_TotallWw_CounterCurrent WasserZaehler_TotallWw_CounterMonthLast WasserZaehler_TotallWw_CounterMeterLast WasserZaehler_TotallWw_WFRCurrent WasserZaehler_TotallWw_FinanceReserve WasserZaehler_TotallWw_ConsumptionCostDayLast WasserZaehler_TotallWw_ConsumptionCostYear WasserZaehler_TotallWw_CounterYear1st .WasserZaehler_TotallWw_WFRDayCount .WasserZaehler_TotallWw_LastUpdateTimestampUnix .WasserZaehler_TotallWw_WFRDaySum WasserZaehler_TotallWw_ConsumptionMeter .ReadingDestinationDeviceName .WasserZaehler_TotallWw_LastDV WasserZaehler_TotallWw_ConsumptionCostMeter WasserZaehler_TotallWw_ConsumptionDay WasserZaehler_TotallWw_CounterDay1st WasserZaehler_TotallWw_ConsumptionMonth WasserZaehler_TotallWw_WFRDayAver .WasserZaehler_TotallWw_LastDt WasserZaehler_TotallWw_CounterMeter1st .WasserZaehler_TotallWw_PrevRead WasserZaehler_TotallWw_CounterMonth1st WasserZaehler_TotallWw_ConsumptionYear WasserZaehler_TotallWw_ConsumptionCostDay WasserZaehler_TotallWw_CounterYearLast WasserZaehler_TotallWw_ConsumptionMonthLast WasserZaehler_TotallWw_ConsumptionCostMonthLast WasserZaehler_TotallWw_WFRDayMin WasserZaehler_TotallWw_ConsumptionDayLast WasserZaehler_TotallWw_MonthMeterReading WasserZaehler_TotallWw_WFRDayMax
2021.08.18 16:07:23 5: WarmWasserZaehler_Get - reading         : ?
2021.08.18 16:07:23 5: WarmWasserZaehler_Get - value           :
2021.08.18 16:07:23 5: WarmWasserZaehler : WaterCalculator - set list:   WasserZaehler_TotallWw_CounterDayLast WasserZaehler_TotallWw_ConsumptionCostMonth WasserZaehler_TotallWw_CounterCurrent WasserZaehler_TotallWw_CounterMonthLast WasserZaehler_TotallWw_CounterMeterLast WasserZaehler_TotallWw_WFRCurrent WasserZaehler_TotallWw_FinanceReserve WasserZaehler_TotallWw_ConsumptionCostDayLast WasserZaehler_TotallWw_ConsumptionCostYear WasserZaehler_TotallWw_CounterYear1st .WasserZaehler_TotallWw_WFRDayCount .WasserZaehler_TotallWw_LastUpdateTimestampUnix .WasserZaehler_TotallWw_WFRDaySum WasserZaehler_TotallWw_ConsumptionMeter .ReadingDestinationDeviceName .WasserZaehler_TotallWw_LastDV WasserZaehler_TotallWw_ConsumptionCostMeter WasserZaehler_TotallWw_ConsumptionDay WasserZaehler_TotallWw_CounterDay1st WasserZaehler_TotallWw_ConsumptionMonth WasserZaehler_TotallWw_WFRDayAver .WasserZaehler_TotallWw_LastDt WasserZaehler_TotallWw_CounterMeter1st .WasserZaehler_TotallWw_PrevRead WasserZaehler_TotallWw_CounterMonth1st WasserZaehler_TotallWw_ConsumptionYear WasserZaehler_TotallWw_ConsumptionCostDay WasserZaehler_TotallWw_CounterYearLast WasserZaehler_TotallWw_ConsumptionMonthLast WasserZaehler_TotallWw_ConsumptionCostMonthLast WasserZaehler_TotallWw_WFRDayMin WasserZaehler_TotallWw_ConsumptionDayLast WasserZaehler_TotallWw_MonthMeterReading WasserZaehler_TotallWw_WFRDayMax
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator Begin_______________________________________________________________________________________________________________________________
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - Notify - Trigger Dev Name                                                : WasserZaehler
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator Begin_______________________________________________________________________________________________________________________________
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - Attribut ReadingDestination has been set to CalculatorDevice
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCalcReadingPrefix                     : WasserZaehler_TotallWw
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCalcReadingDestinationDevice          : HASH(0x465a300)
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCalcReadingDestinationDeviceName      : WarmWasserZaehler
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - LastUpdateTimestampUnix                    : 1628942841
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCountReadingLastChangeDeltaSeconds    : 352815
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCountReadingValuePrevious             : 746.113
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCalcReadingPrefix                     : WasserZaehler_TotallWw
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - Previous value found. Continuing with calculations
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - Reading Name                                     : TotallWw
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - Previous Reading Value                           : 2021-08-18 00:00:10
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - Current Reading Value                            : 2021-08-18 16:07:36
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - Previous Reading Value                           : 746.113
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - Current Reading Value                            : 746.143
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCountReadTimeCurHour                        : 16
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCountReadTimePrevHour                       : 0
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - LastUpdateTimestampUnix                  : 1628942841
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCountReadTimeRelDelta                       : 352815
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - First reading of day detected OR last reading is older than 24h!
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCountReadingTimestampDelta                  : 58046 s
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCountReadingValueDelta                      : 0.0299999999999727
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - _______Finance________________________________________
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - Monthly Payment                         : 31.0 €
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - Basic price per annum                   : 192.6 €
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCalcConsumptionCostMeter           : 7.88 €
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCalcReserves                       : 111.718 €
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - _______Times__________________________________________
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCalcMeterYearMonth                 : 8
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - Current Month                           : 8
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - _______Consumption_________________________________________
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCalcConsumptionDay                 : 0.000 qm
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCalcConsumptionMonth               : 0.195 qm
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCalcConsumptionYear                : 3.103 qm
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCalcConsumptionMeter               : 3.103 qm
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - _______flow___________________________________________
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCalcWFRCurrent                     : 0.031 l_min
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCalcWFRDayMin                      : 0.000 l_min
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCalcWFRDayAverage                  : 0.031 l_min
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - WaterCalcWFRDayMax                      : 0 l_min
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator - New daily maximum flow value detected   : 0.031
2021.08.18 16:07:36 5: WarmWasserZaehler : WaterCalculator End_________________________________________________________________________________________________________________________________
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator Begin_______________________________________________________________________________________________________________________________
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - Notify - Trigger Dev Name                                                : WasserZaehler
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator Begin_______________________________________________________________________________________________________________________________
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - Attribut ReadingDestination has been set to CalculatorDevice
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCalcReadingPrefix                     : WasserZaehler_TotallWw
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCalcReadingDestinationDevice          : HASH(0x465a300)
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCalcReadingDestinationDeviceName      : WarmWasserZaehler
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - LastUpdateTimestampUnix                    : 1629295656
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCountReadingLastChangeDeltaSeconds    : 7
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCountReadingValuePrevious             : 746.143
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCalcReadingPrefix                     : WasserZaehler_TotallWw
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - Previous value found. Continuing with calculations
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - Reading Name                                     : TotallWw
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - Previous Reading Value                           : 2021-08-18 16:07:36
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - Current Reading Value                            : 2021-08-18 16:07:43
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - Previous Reading Value                           : 746.143
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - Current Reading Value                            : 746.153
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCountReadTimeCurHour                        : 16
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCountReadTimePrevHour                       : 16
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - LastUpdateTimestampUnix                  : 1629295656
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCountReadTimeRelDelta                       : 7
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCountReadingTimestampDelta                  : 7 s
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCountReadingValueDelta                      : 0.00999999999999091
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - _______Finance________________________________________
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - Monthly Payment                         : 31.0 €
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - Basic price per annum                   : 192.6 €
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCalcConsumptionCostMeter           : 7.91 €
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCalcReserves                       : 111.693 €
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - _______Times__________________________________________
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCalcMeterYearMonth                 : 8
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - Current Month                           : 8
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - _______Consumption_________________________________________
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCalcConsumptionDay                 : 0.010 qm
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCalcConsumptionMonth               : 0.205 qm
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCalcConsumptionYear                : 3.113 qm
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCalcConsumptionMeter               : 3.113 qm
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - _______flow___________________________________________
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCalcWFRCurrent                     : 85.714 l_min
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCalcWFRDayMin                      : 0.000 l_min
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCalcWFRDayAverage                  : 42.873 l_min
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - WaterCalcWFRDayMax                      : 0.031 l_min
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator - New daily maximum flow value detected   : 85.714
2021.08.18 16:07:43 5: WarmWasserZaehler : WaterCalculator End_________________________________________________________________________________________________________________________________

Da sieht man den Fehler bereits beim Logging.
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

Maista

#129
@Sailor
Ich wurschtel mich gerade durch den WaterCalculator und meinem ESP32-WasserCAM.

Dabei ist mir ein kleiner "Übersetzungsfehler" vom PowerCalculator zum WaterCalculator aufgefallen.

Nach setzen mit "set myWaterCalculator SyncCounter" wird folgendes ausgegeben:
ZitatmyWaterCalculator - Successfully synchronized Counter and Calculator with : 272.5454 kWh

Im Deutschen Hilfetext werden in der fünft-letzten Zeile die Umlaute nicht korrekt angezeigt.
Zitat<DestinationDevice>_<SourceCounterReading>_MonthMeterReading
: Anzahl der Monate seit der letzten Z�hlerablesung. Der Monat der Z�hlerablesung ist der erste Monat = 1.

Danke für das Modul!

Guten Rutsch ringsrum.

Gruss
Gerd

Sailor

Hallo Markus

Zitat von: KölnSolar am 18 August 2021, 15:09:28
Da sich außer mir niemand beklagt: Liegt es an 2 Zählern in einem device ?
Grüße Markus

2 Zähler in einem Device???  :o
Dafür habe ich die Calculator-Familie nie programmiert geschweige getestet.
Ich denke, da liegt der Hase im Pfeffer... Versuche mal die Teile mit einem eigenen Device zu trennen.

Gruß
    Sailor

PS: Hatten wir das nicht schon mal beim ElectricityCalculator?
******************************
Man wird immer besser...

Sailor

Hallo Gerd

Zitat von: Maista am 30 Dezember 2021, 12:39:30
@Sailor
Ich wurschtel mich gerade durch den WaterCalculator und meinem ESP32-WasserCAM.
Dabei ist mir ein kleiner "Übersetzungsfehler" vom PowerCalculator zum WaterCalculator aufgefallen.

Danke... Habe ich korrigiert und eingecheckt.

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

KölnSolar

Hi Sailor,
ZitatHatten wir das nicht schon mal beim ElectricityCalculator?
Nein. Hier
Zitat von: Sailor am 25 Januar 2021, 09:17:38
Hallo Markus

Gütiger Himmel, jetzt weiß ich wieso du immer von einem weiteren Zähler redest.
Du hast etwas geschafft, von dem ich gar nicht wusste, dass es das Modul überhaupt kann: Zwei Zähler in einem Device!  :o

Nun ja, da ich jetzt weiß, wovon du redest, habe ich das Modul noch mal auf den Kopf gestellt:

Versuchs jetzt mal...

Denk dran:
Modul hochladen
Fhem neu starten
2 neue Werte für jeden Counter (2 x 2 = 4) schreiben.
Abwarten...

Also jetzt sollte es eigentlich klappen. Habe auch mal 2 Counter-Readings in einem Counter-Device gesteuert.

Gruß
    Sailor
vor knapp einem Jahr.  ;)
Zur Erinnerung: Du hattest das "feature" eingebaut, dasselbe zu bewirken, was ich mit einem mitternächlichen at(nur den aktuellen countervalue im counterdevice erneut setzen; also event ohne value-Änderung)gelöst hatte.
Das counter device ist ein dummy mit 2 counter values(WW,KW), in welches händisch(unregelmäßig, tw. > 24h) Zählerdaten eingetragen werden.
Vor Deiner Änderung funktionierte das noch perfekt.

Ich glaub zwar nicht, dass die Ursache im 2-countervalue device liegt, probiere es aber gerne aus und berichte.

Grüße 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

Maista

Hallo @Sailor ,

noch eine Frage zu einem Attribut, das nennt sich "header".
Finde dazu keine Info in der Modul-Hilfe, ist das ein Schreibfehler im HTML-Code?
Siehe Screenshot.

Gruss Gerd


AxelSchweiss

Hallo
ich habe da mal eine Frage zu dem Modul.
Lässt es sich um eine Leckage Erkennung erweitern ?

Ich hatte eben einen kleinen Wassereinbruch im Keller (zum Glück noch rechtzeitig erkannt) durch eine elektrochemische Kontaktkorrosion entstand ein kleines Loch am Anschluss vom Masseband.

Beim Wasserverbrauch hat sich das so dargestellt das ein konstant kleiner Wasserverbrauch zu erkennen war.
Lässt sich in das Modul ev. eine Analysefunktion einbauen die sowas, eigentlich untypisches Verhalten,  erkennt?

Ich kann leider nicht programieren ... sonst würde ich es versuchen.

Ein Bild des Verbrauchsmusters und das Logfile habe ich mal angehängt.

Eventuell kann ja jemand weiterhelfen.