Neues Modul: ElectricityCalculator

Begonnen von Sailor, 26 August 2016, 21:05:35

Vorheriges Thema - Nächstes Thema

Gisbert

Hallo Christian,

ich bin über diesen Wiki-Artikel gestoßen:
https://wiki.fhem.de/wiki/DOIF/Automatisierung
Im Kapitel Tages-, Monats- und Jahresstatistik für Strom-, Gas-, Wasserzähler und andere Zähler wird das beschrieben, was ich gerne hätte. Ich versuche mich mal daran.

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

reiphi

Hallo Sailor,

ich nutze deinen ElectricityCalculator mittlerweile in einigen Devices und er funktioniert auch total gut.
Wo ich aber Probleme habe, ist wenn mit einem Stromausfall (vorgestern wegen Schneechaos wieder der Fall gewesen) plötzlich der Raspberry seine Stromversorgung verliert. Nachdem das System wieder hochgefahren ist, sind alle Statistikwerte (u.a. CounterMonth1st oder EnergyMonthLast) neu gesetzt mit dem Zeitstempel des Neustarts. Dadurch kommen meine Statistikberechnungen durcheinander bzw. stimmen einfach nicht mehr.
Hast du eine Idee, warum das so ist? Bzw. fällt dir was ein, um das zu vermeiden.

Danke und viele Grüße,
reiphi

Gisbert

Hallo Sailor,

bei einem ElectricityCalculator-Device bin ich über eine Auffälligkeit gestolpert, die m.M. nach so nicht beabsichtigt war.

Für meine PV-Anlage habe verschiedene ElectricityCalculator-Devices definiert, u.a. für die verkaufte Energie - nur im Moment wird bis auf wenige Ausnahmen nichts verkauft, d.h. der Zählerstand ist unverändert und die Energie ist entsprechend 0.00 kWh.

Mir ist aufgefallen, dass alle Readings des letzten Tages (...DayLast) den gleichen Zeitstempel wie diejenigen des aktuellen Tages (...Day) haben. Das ist bei Devices mit sich änderdem Zählerstand nicht so. Da haben die Readings mit ...DayLast Zeitstempel kurz nach Mitternacht des aktuellen Tages.

Aufgefallen ist es mir an einem Folgetag, an dem Sonne da war, und der Wert bei 3.6 kWh für den Vortag lag. Am Folgetag, war der Wert für ...DayLast dann bei 0.00 kWh, obwohl für den Vortag 3.6 kWh im Reading stand. Ich hoffe, dass ich mich verständlich genug ausgedrückt habe.

Hier noch ein list des Devices (mit aktuellem Zeitstempel für die Readings mit ... DayLast statt Zeitstempel kurz nach Mitternacht):

define Deye_total_energy_sold ElectricityCalculator Deye_kWh:total_energy_sold.*
attr Deye_total_energy_sold BasicPricePerAnnum 0
attr Deye_total_energy_sold Currency €
attr Deye_total_energy_sold DecimalPlace 3
attr Deye_total_energy_sold ElectricityCounterOffset 0
attr Deye_total_energy_sold ElectricityKwhPerCounts 1
attr Deye_total_energy_sold ElectricityPricePerKWh 0.2567
attr Deye_total_energy_sold MonthOfAnnualReading 5
attr Deye_total_energy_sold MonthlyPayment 0
attr Deye_total_energy_sold ReadingDestination CalculatorDevice
attr Deye_total_energy_sold SiPrefixPower kW
attr Deye_total_energy_sold alias Deye total energy sold
attr Deye_total_energy_sold icon measure_power
attr Deye_total_energy_sold room DEYE
attr Deye_total_energy_sold sortby 7
#   DEF        Deye_kWh:total_energy_sold.*
#   FUUID      65568bf9-f33f-e986-9f6a-e6b53e9a0e10b4f7
#   NAME       Deye_total_energy_sold
#   NOTIFYDEV  Deye_kWh
#   NR         1354
#   NTFY_ORDER 10-Deye_total_energy_sold
#   REGEXP     Deye_kWh:total_energy_sold.*
#   STATE      active
#   TYPE       ElectricityCalculator
#   eventCount 1701
#   READINGS:
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_CounterCurrent 497.100
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_CounterDay1st 497.100
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_CounterDayLast 497.100
#     2023-11-19 08:20:00   Deye_kWh_total_energy_sold_CounterMeter1st 479.400
#     2023-11-19 08:20:01   Deye_kWh_total_energy_sold_CounterMeterLast 479.400
#     2023-12-01 00:01:37   Deye_kWh_total_energy_sold_CounterMonth1st 486.300
#     2023-12-01 00:01:37   Deye_kWh_total_energy_sold_CounterMonthLast 486.300
#     2023-11-19 08:20:01   Deye_kWh_total_energy_sold_CounterYear1st 479.400
#     2023-11-19 08:20:01   Deye_kWh_total_energy_sold_CounterYearLast 479.400
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyCostDay 0.000
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyCostDayLast 0.000
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyCostMeter 4.544
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyCostMonth 2.772
#     2023-12-01 00:01:37   Deye_kWh_total_energy_sold_EnergyCostMonthLast 1.771
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyCostYear 4.544
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyDay 0.000
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyDayLast 0.000
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyMeter 17.700
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyMonth 10.800
#     2023-12-01 00:01:37   Deye_kWh_total_energy_sold_EnergyMonthLast 6.900
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyYear 17.700
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_FinanceReserve -4.544
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_MonthMeterReading 8
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_PowerCurrent 0.000
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_PowerDayAver 0.000
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_PowerDayMax 0
#     2023-12-21 09:37:30   Deye_kWh_total_energy_sold_PowerDayMin 0.000
#   helper:
#     bm:
#       ElectricityCalculator_Get:
#         cnt        12
#         dmx        -1000
#         dtot       0
#         dtotcnt    0
#         mTS        21.12. 09:14:05
#         max        0.000155925750732422
#         tot        0.00117015838623047
#         mAr:
#           HASH(0x559a912b5770)
#           Deye_total_energy_sold
#           ?
#       ElectricityCalculator_Notify:
#         cnt        1862
#         dmx        -1000
#         dtot       0
#         dtotcnt    0
#         mTS        20.12. 04:49:10
#         max        0.281595945358276
#         tot        37.4627685546875
#         mAr:
#           HASH(0x559a912b5770)
#           HASH(0x559a91267bb8)
#       ElectricityCalculator_Set:
#         cnt        103
#         dmx        -1000
#         dtot       0
#         dtotcnt    0
#         mTS        21.12. 09:14:05
#         max        0.000180959701538086
#         tot        0.00609016418457031
#         mAr:
#           HASH(0x559a912b5770)
#           Deye_total_energy_sold
#           ?
#     gets:
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_CounterCurrent 497.100
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_CounterDay1st 497.100
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_CounterDayLast 497.100
#       2023-11-19 08:20:00   Deye_kWh_total_energy_sold_CounterMeter1st 479.400
#       2023-11-19 08:20:01   Deye_kWh_total_energy_sold_CounterMeterLast 479.400
#       2023-12-01 00:01:37   Deye_kWh_total_energy_sold_CounterMonth1st 486.300
#       2023-12-01 00:01:37   Deye_kWh_total_energy_sold_CounterMonthLast 486.300
#       2023-11-19 08:20:01   Deye_kWh_total_energy_sold_CounterYear1st 479.400
#       2023-11-19 08:20:01   Deye_kWh_total_energy_sold_CounterYearLast 479.400
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyCostDay 0.000
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyCostDayLast 0.000
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyCostMeter 4.544
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyCostMonth 2.772
#       2023-12-01 00:01:37   Deye_kWh_total_energy_sold_EnergyCostMonthLast 1.771
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyCostYear 4.544
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyDay 0.000
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyDayLast 0.000
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyMeter 17.700
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyMonth 10.800
#       2023-12-01 00:01:37   Deye_kWh_total_energy_sold_EnergyMonthLast 6.900
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyYear 17.700
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_FinanceReserve -4.544
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_MonthMeterReading 8
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_PowerCurrent 0.000
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_PowerDayAver 0.000
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_PowerDayMax 0
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_PowerDayMin 0.000
#     sets:
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_CounterCurrent 497.100
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_CounterDay1st 497.100
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_CounterDayLast 497.100
#       2023-11-19 08:20:00   Deye_kWh_total_energy_sold_CounterMeter1st 479.400
#       2023-11-19 08:20:01   Deye_kWh_total_energy_sold_CounterMeterLast 479.400
#       2023-12-01 00:01:37   Deye_kWh_total_energy_sold_CounterMonth1st 486.300
#       2023-12-01 00:01:37   Deye_kWh_total_energy_sold_CounterMonthLast 486.300
#       2023-11-19 08:20:01   Deye_kWh_total_energy_sold_CounterYear1st 479.400
#       2023-11-19 08:20:01   Deye_kWh_total_energy_sold_CounterYearLast 479.400
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyCostDay 0.000
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyCostDayLast 0.000
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyCostMeter 4.544
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyCostMonth 2.772
#       2023-12-01 00:01:37   Deye_kWh_total_energy_sold_EnergyCostMonthLast 1.771
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyCostYear 4.544
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyDay 0.000
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyDayLast 0.000
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyMeter 17.700
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyMonth 10.800
#       2023-12-01 00:01:37   Deye_kWh_total_energy_sold_EnergyMonthLast 6.900
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_EnergyYear 17.700
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_FinanceReserve -4.544
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_MonthMeterReading 8
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_PowerCurrent 0.000
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_PowerDayAver 0.000
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_PowerDayMax 0
#       2023-12-21 09:37:30   Deye_kWh_total_energy_sold_PowerDayMin 0.000
#   system:
#     DecimalPlace %.3f
#     SecondsToday 86400
#     SiPrefixPowerFactor 1000
#
setstate Deye_total_energy_sold active
setstate Deye_total_energy_sold 2023-12-21 09:37:30 .Deye_kWh_total_energy_sold_LastDV 0.000
setstate Deye_total_energy_sold 2023-12-21 09:37:30 .Deye_kWh_total_energy_sold_LastDt 600
setstate Deye_total_energy_sold 2023-12-18 17:29:21 .Deye_kWh_total_energy_sold_LastUpdateTimestampUnix 1702916961
setstate Deye_total_energy_sold 2023-12-21 09:37:30 .Deye_kWh_total_energy_sold_PowerDayCount 1
setstate Deye_total_energy_sold 2023-12-21 09:37:30 .Deye_kWh_total_energy_sold_PowerDaySum 0.000
setstate Deye_total_energy_sold 2023-12-21 09:37:30 .Deye_kWh_total_energy_sold_PrevRead 497.100
setstate Deye_total_energy_sold 2023-12-21 09:37:30 .ReadingDestinationDeviceName Deye_total_energy_sold
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_CounterCurrent 497.100
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_CounterDay1st 497.100
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_CounterDayLast 497.100
setstate Deye_total_energy_sold 2023-11-19 08:20:00 Deye_kWh_total_energy_sold_CounterMeter1st 479.400
setstate Deye_total_energy_sold 2023-11-19 08:20:01 Deye_kWh_total_energy_sold_CounterMeterLast 479.400
setstate Deye_total_energy_sold 2023-12-01 00:01:37 Deye_kWh_total_energy_sold_CounterMonth1st 486.300
setstate Deye_total_energy_sold 2023-12-01 00:01:37 Deye_kWh_total_energy_sold_CounterMonthLast 486.300
setstate Deye_total_energy_sold 2023-11-19 08:20:01 Deye_kWh_total_energy_sold_CounterYear1st 479.400
setstate Deye_total_energy_sold 2023-11-19 08:20:01 Deye_kWh_total_energy_sold_CounterYearLast 479.400
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_EnergyCostDay 0.000
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_EnergyCostDayLast 0.000
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_EnergyCostMeter 4.544
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_EnergyCostMonth 2.772
setstate Deye_total_energy_sold 2023-12-01 00:01:37 Deye_kWh_total_energy_sold_EnergyCostMonthLast 1.771
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_EnergyCostYear 4.544
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_EnergyDay 0.000
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_EnergyDayLast 0.000
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_EnergyMeter 17.700
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_EnergyMonth 10.800
setstate Deye_total_energy_sold 2023-12-01 00:01:37 Deye_kWh_total_energy_sold_EnergyMonthLast 6.900
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_EnergyYear 17.700
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_FinanceReserve -4.544
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_MonthMeterReading 8
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_PowerCurrent 0.000
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_PowerDayAver 0.000
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_PowerDayMax 0
setstate Deye_total_energy_sold 2023-12-21 09:37:30 Deye_kWh_total_energy_sold_PowerDayMin 0.000


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

wolfram

Hallo zusammen,
ich verstehe es nicht ganz.
Kann ich mit diesem Modul auch "einfache" Verbraucher verwenden, die weder on/off-Readings haben, sondern ausschließlich ein "power"-Reading in dem der aktuelle Verbrauch in W ausgegeben wird?

Ein Schubs in die richtige Richtung wäre toll
Vielen Dank
wolf

meier81

Hallo wolfram,

du brauchst ein Device das einen "Zählerstand" hat und aufwärts zählt, ansonsten wird eigentlich nichts benötigt. Mit der aktuellen Leistung kommst du hier glaube ich nicht weiter (sollte ich falsch liegen verbessert mich bitte  ;) )

Gruß Markus
QNAP NAS mit Debian VM, darauf FHEM, debmatic, influxdb2 und Grafana || HB-RF-ETH || SIGNALduino 433MHz mit Maple mini || WS980 Wetterstation || Xiaomi Mi Robot mit valetudo-FW || Buderus web KM100 || div. Tasmota-Devices

sunrise

#785
Hallo zusammen!

Ich habe eine Verständnisfrage:

ZitatCounterMeter1st: The first meter reading after midnight of the first day of the month where the mechanical meter is read by the electricity supplier.
Heißt das folgendes? Der Versorger liest den letzten Wert vor der Jahresabrechnung jeweils im November ab. Muss ich hier dann den ersten Wert nach Mitternacht des 01.11. setzen? Ich kann sehr gut Englisch (dachte ich immer), aber die o.g. Beschreibung verstehe ich nicht auf Anhieb. 🫢

ZitatCounterMeterLast: The last meter reading of the previous meter reading year.
Und hier den letzten Wert vor Mitternacht des 31.10.?

Dankeschön! 😊
Viele Grüße/kind regards
sunrise
_________________
Tecalor THZ 303 (SOL, 2006/09-2008/08), FW 2.16 | FHEM THZ module testing with FW 2.06 (INTEGRAL, 2006/12-2008/08) & FW 2.14 (SOL, 2002/10-2004/08) on Raspberry Pi 2

Sailor

Hallo sunrise()
Zitat von: sunrise am 22 Januar 2024, 18:53:18Heißt das folgendes? Der Versorger liest den letzten Wert vor der Jahresabrechnung jeweils im November ab. Muss ich hier dann den ersten Wert nach Mitternacht des 01.11. setzen? Ich kann sehr gut Englisch (dachte ich immer), aber die o.g. Beschreibung verstehe ich nicht auf Anhieb. 🫢
Und hier den letzten Wert vor Mitternacht des 31.10.?
Dankeschön! 😊

Du hast beides korrekt verstanden!

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

sunrise

Viele Grüße/kind regards
sunrise
_________________
Tecalor THZ 303 (SOL, 2006/09-2008/08), FW 2.16 | FHEM THZ module testing with FW 2.06 (INTEGRAL, 2006/12-2008/08) & FW 2.14 (SOL, 2002/10-2004/08) on Raspberry Pi 2

Kai-Alfonso

Hi Zusammen,

ich nutze das Modul fehlerfrei schon seit ca 7 Jahren. Jetzt ist es passiert, das mein Stromzähler getauscht wurde. Der neue Zähler fängt ja wieder von 0 und und deswegen habe ich jetzt logischerweise negative Werte. Hat jemand sich schon mal Gedanken gemacht, wie ich das jetzt fortführe?

Ich könnte natürlich in meinem Stromzähler (Obis) Device jetzt ein Offset setzen (attr offset_energy). Gibt es noch andere Möglichkeiten? Wie habt ihr das gelöst?
Raspi2|nanoCul433|nanoCul868|CCU2
Energie-USBZähler|homebrew HM Devices
DBLog|DBRep|Homematic|Baumarktsteckdosen
Hue|Webcams mit DS-Station (Synology)|Bewegungsmelder|Rollladen|Schalter (IT|HM)

Sailor

Hallo Kai

Zitat von: Kai-Alfonso am 18 April 2024, 11:52:30ich nutze das Modul fehlerfrei schon seit ca 7 Jahren. Jetzt ist es passiert, das mein Stromzähler getauscht wurde. Der neue Zähler fängt ja wieder von 0 und und deswegen habe ich jetzt logischerweise negative Werte. Hat jemand sich schon mal Gedanken gemacht, wie ich das jetzt fortführe?

Da gibt es vom Calculator aus keine Lösung.
Ich schlage vor unter neuem Namen einen neuen Calculator anzulegen.

So hast du noch die alten Werte und die neuen ohne negative.

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

Wasserwerk33

@Delevop

Ich habe letztes Jahr leider auch keine Möglichkeit gefunden.

Hoffe du hast eine und kannst es uns dann allen sagen ;)

Lg