Autor Thema: Neues Modul: ElectricityCalculator  (Gelesen 49665 mal)

Offline uxtuner

  • New Member
  • *
  • Beiträge: 39
Antw:Neues Modul: ElectricityCalculator
« Antwort #315 am: 26 Dezember 2017, 10:57:17 »
wenn ich das Attribute "disable" auf "1" setze dann einen Countertick abwarte und anschließend wieder mit "0" aktiviere bekomme ich ein(!) einziges Update - nur auf "1" und gleich wieder auf "0" bringt nichts   :(

Als workaround könnte ich jetzt ein AT setzen ...
Viele Grüße
  Uwe

Intel NUC (VDR & FHEM), QNAP TS-453, OneWire (Temp. Sensor, 8-fach Schalter, Hub, Controller), Ebus (Wolf CGW-2, ISM7i), Fibaro (Flood Sensor, Wall Plug, 4 in 1 Sensor), Qubino (Flush 1D)

Offline uxtuner

  • New Member
  • *
  • Beiträge: 39
Antw:Neues Modul: ElectricityCalculator
« Antwort #316 am: 26 Dezember 2017, 11:25:54 »
ich hab mir jetzt als Behelf sowas erstellt:
+*00:05:00 {
fhem("attr Stromverbrauch disable 0");
fhem("define StromcounterAus at +00:02:00 attr Stromverbrauch disable 1");
}

damit wird das Modul alle 5min eingeschaltet und 2min später wieder ausgeschaltet.
« Letzte Änderung: 26 Dezember 2017, 11:27:50 von uxtuner »
Viele Grüße
  Uwe

Intel NUC (VDR & FHEM), QNAP TS-453, OneWire (Temp. Sensor, 8-fach Schalter, Hub, Controller), Ebus (Wolf CGW-2, ISM7i), Fibaro (Flood Sensor, Wall Plug, 4 in 1 Sensor), Qubino (Flush 1D)

Offline uxtuner

  • New Member
  • *
  • Beiträge: 39
Antw:Neues Modul: ElectricityCalculator
« Antwort #317 am: 01 Januar 2018, 09:25:11 »
hab jetzt ein dummy device angelegt und lese die Strom- und Gaswerte vom Dummy. Mittels at hole ich mir den aktuellen Wert jede Minute und kalkuliere den aktuellen Stand mit Offset - damit funktioniert das Modul jetzt 1a

Internals:
   NAME       Stromzaehler
   NR         53
   STATE      71813.015
   TYPE       dummy
   READINGS:
     2018-01-01 09:24:01   Gesamt          71813.015
Attributes:
   Offset     71386
   room       Abrechnung
   stateFormat {ReadingsVal($name,"Gesamt","?")}
   userattr   Offset

Internals:
   COMMAND    {
my $s_counter = (ReadingsVal("Controller","StromGesamt",0))/8;
my $s_offset = (AttrVal("Stromzaehler","Offset",0));
my $s_gesamt=$s_counter+$s_offset;
my $g_counter = (ReadingsVal("Controller","Gas",0));
my $g_offset = (AttrVal("Gaszaehler","Offset",0));
my $g_gesamt=$g_counter+$g_offset;
fhem("setreading Stromzaehler Gesamt $s_gesamt");
fhem("setreading Gaszaehler Gesamt $g_gesamt");
}
   DEF        +*00:01:00 {
my $s_counter = (ReadingsVal("Controller","StromGesamt",0))/8;
my $s_offset = (AttrVal("Stromzaehler","Offset",0));
my $s_gesamt=$s_counter+$s_offset;
my $g_counter = (ReadingsVal("Controller","Gas",0));
my $g_offset = (AttrVal("Gaszaehler","Offset",0));
my $g_gesamt=$g_counter+$g_offset;
fhem("setreading Stromzaehler Gesamt $s_gesamt");
fhem("setreading Gaszaehler Gesamt $g_gesamt");
}
   NAME       at_Zaehlerstaende
   NR         57
   NTM        09:18:01
   PERIODIC   yes
   RELATIVE   yes
   REP        -1
   STATE      Next: 09:18:01
   TIMESPEC   00:01:00
   TRIGGERTIME 1514794681.24004
   TRIGGERTIME_FMT 2018-01-01 09:18:01
   TYPE       at
   READINGS:
     2018-01-01 09:17:01   state           Next: 09:18:01
Attributes:
Viele Grüße
  Uwe

Intel NUC (VDR & FHEM), QNAP TS-453, OneWire (Temp. Sensor, 8-fach Schalter, Hub, Controller), Ebus (Wolf CGW-2, ISM7i), Fibaro (Flood Sensor, Wall Plug, 4 in 1 Sensor), Qubino (Flush 1D)

Offline Wolle02

  • Full Member
  • ***
  • Beiträge: 179
Antw:Neues Modul: ElectricityCalculator
« Antwort #318 am: 07 Januar 2018, 16:59:55 »
Hallo Igami,

Heute kam mir schon eine Idee, wie man das mit userreadings lösen kann. Sobald das funktioniert werde ich das hier mal vorstellen und würde mich freuen, wenn das dann Bestandteil des Modul wird :)

Deine Ankündigung ist zwar schon über ein Jahr alt, aber hast du hierfür mittlerweile eine funktionierende Lösung? Das würde mich sehr ineteressieren, da ich auch ein "Summen Device" für meine verschiedenen Counter vermisse.

Gruß
Wolle

Offline KernSani

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2186
Antw:Neues Modul: ElectricityCalculator
« Antwort #319 am: 11 Januar 2018, 23:31:21 »
Mir ist gerade ein kleiner typo aufgefallen... Zeile 151:

$hash->{STATE} = "diabled";
RasPi: RFXTRX, HM, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

Offline Gerd.Ternes

  • Full Member
  • ***
  • Beiträge: 126
Antw:Neues Modul: ElectricityCalculator
« Antwort #320 am: 14 Januar 2018, 10:00:25 »
Erst einmal vielen Dank für das tolle Modul. Bei mir funkioniert es seit rd. 5 Monaten reibungslos.
In der täglichen Anwendung hätte ich noch 2 Bitten/Vorschläge.

1. Wäre es möglich auch die Wochenwerte (und Vorwochenwerte) als Readings einzubauen? Ich habe das jetzt mit einem eigenen zusätzlichen Modul gemacht, denke aber, das es im eigentlichen Modul noch schicker wäre.

2. Ebenfalls berechne ich mir aus den Tagen (Anz. Tage) und den entsprechenden logs (z.B. heute ist der 14. Tag des Monats und der Verbrauch ist xxx kwh) den Tagesverbrauch. (also Verbrauch/Tag/Woche, Verbrauch/Tag/Monat und Verbrauch/Tag/Jahr).

Vielleicht bin ich da auch zu statistisch unterwegs, aber gerade in der Urlaubszeit oder bei Kälteperiosen usw. gucke ich mir das ganz gerne einmal an.

Vielen Dank

Gerd

Offline ext23

  • Hero Member
  • *****
  • Beiträge: 2749
    • Homepage
Antw:Neues Modul: ElectricityCalculator
« Antwort #321 am: 17 Januar 2018, 17:58:06 »
Nabend,

kann mir mal gerade jemand auf die Sprünge helfen. Wenn ich in 3 Minuten von 6457 auf 6478 Pulse gewandert bin bei 1Wh/Puls, sind das 21Wh in 3 Minuten, sind also 21*20 = 420Wh, oder?!? Dann kann ich doch sagen, dass derzeit 420W Leistung verbraucht wird oder?

Wieso zeigt der ElectricityCalculator bei mir 232,615W an? (PowerCurrent ist doch sicherlich der Momentanverbrauch oder?).

Ich stehe gerade auf dem Schlauch.

Das HM Gerät meldet 420W. Auf dem Display des Zählers steht aber 240W was sich mit dem deckt was errechnet wurde.

Ich hab jetzt mal in das Modul geschaut:
### Calculate Current Power P = DW/Dt[kWh/s] * 3600[s/h] * 1000 [1/k] / SiPrefixPowerFactor
my $ElectricityCalcPowerCurrent    = ($ElectricityCountReadingValueDelta / $ElectricityCountReadingTimestampDelta) * 3600 * 1000 / $ElectricityCalcDev->{system}{SiPrefixPowerFactor};

Da komme ich auch auf 420W.
21/180000*3600*1000/1 = 420


UPDATE: Ich glaube ich habe das Problem schon gefunden, dieser HomeMatic Zähler sendet gar nicht genau alle 3 Minuten. Das sind auch manchmal 4 oder 5 Minuten. Dann ist die Berechnungsgrundlage natürlich falsch wenn der nach 5 Minuten erst Werte sendet die nur über 3 Minuten gemessen wurden...

/Daniel
« Letzte Änderung: 17 Januar 2018, 19:13:52 von ext23 »
HM, FS20, 1-Wire, PanStamp, AVR-NET-IO, SIS-PM, EM1000EM, PCA301, EC3000, HM-LAN, CUL868, RFXtrx433, LGW, DMX @Ubuntu-Server (Hauptsystem) & Raspberry Pi (Satellit)

Offline Sailor

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1206
  • und es werden immer mehr...
Antw:Neues Modul: ElectricityCalculator
« Antwort #322 am: 18 Januar 2018, 10:21:11 »
Hallo Daniel

UPDATE: Ich glaube ich habe das Problem schon gefunden, dieser HomeMatic Zähler sendet gar nicht genau alle 3 Minuten. Das sind auch manchmal 4 oder 5 Minuten. Dann ist die Berechnungsgrundlage natürlich falsch wenn der nach 5 Minuten erst Werte sendet die nur über 3 Minuten gemessen wurden...

Das ist natürlich saudumm. Da beim Übertragen der Pulse leider kein genauer Zeitstempel mit übertragen wird sondern immer nur der Eingang im fhem - System geloggt wird, kann das Problem auch nicht behoben werden...

Vergrößre mal das Intervall, dann dürften sich die Durchschnittswerte auch verbessern.

Gruß
    Sailor
******************************
Raspberry Pi mit DbLog, HomeMatic HMLAN
13x HM-SEC-SC; 11x HM-TC-IT-WM-W-EU; 13x HM-CC-RT-DN; 03x HM-Sec-SD; 01x HM-WDS10-TH-O; km200 mit Buderus GB172

Offline ToM_ToM

  • Sr. Member
  • ****
  • Beiträge: 899
    • ThomasZFoto
Antw:Neues Modul: ElectricityCalculator
« Antwort #323 am: 21 Januar 2018, 14:28:09 »
Hallo Zusammen,

ich habe das jezt auch mal in Betrieb genommen, aber ich verstehe die Commandref noch nicht so ganz.

Wie muss ich denn was setzen?

Zählerstand (Stromzähler): 044680.9
Zählerstand (HM-ES-TX-WM - 1.ENERGY_COUNTER): 298226.6

VG, Thomas
Hardware: BananaPi, Busmaster CUL, SanDisk 16GB Ultra SD, 16 GB USB-Stick | Software: Armbian, FHEM 5.8

Offline Sailor

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1206
  • und es werden immer mehr...
Antw:Neues Modul: ElectricityCalculator
« Antwort #324 am: 21 Januar 2018, 20:27:06 »
Hallo Tom

Wie muss ich denn was setzen?

Versuchs doch einfach mal...

Entweder kommt das richtige Ergebnis fuer den Offset bei a-b oder bei b-a raus.  ;)

Gruss
    Sailor

******************************
Raspberry Pi mit DbLog, HomeMatic HMLAN
13x HM-SEC-SC; 11x HM-TC-IT-WM-W-EU; 13x HM-CC-RT-DN; 03x HM-Sec-SD; 01x HM-WDS10-TH-O; km200 mit Buderus GB172

Offline ToM_ToM

  • Sr. Member
  • ****
  • Beiträge: 899
    • ThomasZFoto
Antw:Neues Modul: ElectricityCalculator
« Antwort #325 am: 21 Januar 2018, 23:03:18 »
Zitat
Versuchs doch einfach mal...
Hey Sailor, ich habe das heute schon den ganzen Tag lang hin und her probiert. Aber bei so vielen Readings die man setzen kann, ist das natürlich ziemliches Lotto spielen.
Bekomme auch immer angezeigt dass ich noch über 87.000 Euro mit meinen Finanzen im Plus bin.
Hardware: BananaPi, Busmaster CUL, SanDisk 16GB Ultra SD, 16 GB USB-Stick | Software: Armbian, FHEM 5.8

Offline hermann258

  • New Member
  • *
  • Beiträge: 39
Antw:Neues Modul: ElectricityCalculator
« Antwort #326 am: 23 Januar 2018, 10:05:18 »
Ich bin zu Blöd für dieses Modul, da steht so viel Murks
Gruß Hermann :)

Offline smoudo

  • Full Member
  • ***
  • Beiträge: 364
Antw:Neues Modul: ElectricityCalculator
« Antwort #327 am: 23 Januar 2018, 20:40:34 »
Moin Sailor - erstmal vielen Dank für das tolle Modul.

Hab es definiert und mit den passenden readings gefüttert und schon klappt es.

Seit 2 Tagen habe ich allerdings das Phänomen das zwar PrevRead aktualisiert wird aber CounterCurrent nicht mehr.
das Regex Device liefert sauber alle 60 sekunden neue Werte.
Kann man da etwas steuern? wie ist das mit dem interval des Moduls? Nimmt das den 60 sek. Interval des device normal an oder kann man das irgendwo setzen. Es währe auch möglich die Timings des device zu ändern.
Ich verstehe nur momentan die zusammenhänge noch nicht so ganz.

Viele Grüße

Matze

Offline Sailor

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1206
  • und es werden immer mehr...
Antw:Neues Modul: ElectricityCalculator
« Antwort #328 am: 25 Januar 2018, 10:24:32 »
Hallo Tom

Hey Sailor, ich habe das heute schon den ganzen Tag lang hin und her probiert. Aber bei so vielen Readings die man setzen kann, ist das natürlich ziemliches Lotto spielen.
Bekomme auch immer angezeigt dass ich noch über 87.000 Euro mit meinen Finanzen im Plus bin.

Die Werte stabilisieren sich nach ein paar Lesungen.
Das liegt daran, dass die neuen (richtigen) Werte mit den (falschen) Vorgängerwerten verrechnet werden.

Einfach mal Kaffee trinken gehen und abwarten...
Mache (Monats-) Werte brauchen bis zu einem Monat um richtig angezeigt zu werden...

Gruss
    Sailor
******************************
Raspberry Pi mit DbLog, HomeMatic HMLAN
13x HM-SEC-SC; 11x HM-TC-IT-WM-W-EU; 13x HM-CC-RT-DN; 03x HM-Sec-SD; 01x HM-WDS10-TH-O; km200 mit Buderus GB172

Offline Sailor

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1206
  • und es werden immer mehr...
Antw:Neues Modul: ElectricityCalculator
« Antwort #329 am: 25 Januar 2018, 10:28:08 »
Hallo Matze

Seit 2 Tagen habe ich allerdings das Phänomen das zwar PrevRead aktualisiert wird aber CounterCurrent nicht mehr.
das Regex Device liefert sauber alle 60 sekunden neue Werte.
Kann man da etwas steuern? wie ist das mit dem interval des Moduls? Nimmt das den 60 sek. Interval des device normal an oder kann man das irgendwo setzen. Es währe auch möglich die Timings des device zu ändern.
Ich verstehe nur momentan die zusammenhänge noch nicht so ganz.

Ich verstehe die Zusammenhänge aus dieser Informationslage heraus auch nicht.

Versuche mal anhand deiner Grafiken heraus zu finden, wann genau du keine brauchbaren Ergebnisse mehr bekommst.
Dann versuche dich mal zu erinnern, was du verändert hast.
Was ist mir "current reading". Verändert der sich?

Gruss
    Sailor
******************************
Raspberry Pi mit DbLog, HomeMatic HMLAN
13x HM-SEC-SC; 11x HM-TC-IT-WM-W-EU; 13x HM-CC-RT-DN; 03x HM-Sec-SD; 01x HM-WDS10-TH-O; km200 mit Buderus GB172