Beispiel für Plot aus OWCOUNT

Begonnen von Alexander Bauer, 05 März 2013, 09:21:16

Vorheriges Thema - Nächstes Thema

Alexander Bauer

Hallo,

gibt es irgendwo ein Beispiel für die Definitionen für den Plot eines Stromzähler mit dem aktuellen OWCOUNT ?

--

Fhem auf Cubietruck mit Debian Wheezy und Homematic und 1-Wire

Prof. Dr. Peter Henning

Ich bin mir nicht sicher, was mit der Frage gemeint ist. Und andere vermutlich auch nicht, sonst wäre schon längst eine Antwort erfolgt.

Logging der Events ?
Oder Visualisierung des Logs ?

Gerade Letzteres ist doch weitestgehend unabhängig vom Modul OWCOUNT - abgesehen von ein paar anderen Spaltendefinitionen.

LG

pah

Alexander Bauer

Hallo Peter,

ich möchte den Stromverbrauch der einzelnen Bereiche gerne als Plot darstellen.

Auszug aus meiner fhem.cfg

define H.U.ST.HK OWCOUNT DS2423 0AD80D000000
attr H.U.ST.HK model DS2423
attr H.U.ST.HK room OWX
define FileLog_H.U.ST.HK FileLog ./log/H.U.ST.HK-%Y-%m.log H.U.ST.HK
attr FileLog_H.U.ST.HK icon icoGraph
attr FileLog_H.U.ST.HK logtype power8:Power,text


Auszug aus meinen H.U.ST.HK-2013-03.log
2013-03-07_21:12:44 H.U.ST.HK A: 55277
2013-03-07_21:12:44 H.U.ST.HK A_rate: 251.162
2013-03-07_21:12:44 H.U.ST.HK B: 128737
2013-03-07_21:12:44 H.U.ST.HK B_rate: 287.043
2013-03-07_21:12:44 H.U.ST.HK A: 55277.0 cts / 251.16 cts/h B: 128737.0 cts / 287.04 cts/h


Ich denke ich müsste noch ein paar Einstellungen vornehmen, dass ich aus den Counts (1000 pro 1 kwh) einen Plot sehen kann.
--

Fhem auf Cubietruck mit Debian Wheezy und Homematic und 1-Wire

Prof. Dr. Peter Henning

Die Fragestellung hätte zunächst lauten müssen:

- Wie bekommt man aus den Events von OWCOUNT ein sinnvolles Logfile

Ganz einfach, indem die Logfile-Definition auf einen regulären Ausdruck matcht, der nur in der "state"-Zeile vorkommt. Beispielsweise die Einheit  "cts" (steht für counts). Also z.B.

define FileLog_H.U.ST.HK FileLog ./log/H.U.ST.HK-%Y-%m.log H.U.ST.HK.*cts.*

Dann aber bleibt immer noch offen, was hier gemessen werden soll. Sagen wir, der Zähler produziert 150 Counts pro kWh und ist an Eingang A angeschlossen. Also müsste die Definition mit 1/150 = 0.00667 lauten

define H.U.ST.HK OWCOUNT DS2423 0AD80D000000
attr H.U.ST.HK AName Stromverbrauch|energy
attr H.U.ST.HK AUnit kWh|kWh
attr H.U.ST.HK AFactor 0.00667
attr H.U.ST.HK AMode daily
attr.H.U.ST.HK APeriod hour

attr H.U.ST.HK room OWX

Die state-Zeile sähe dann so aus:

2013-03-07_21:12:44 H.U.ST.HK Stromverbrauch: xxxx.xx kWh / yyy.yy kW B: 128737.0 cts / 287.04 cts/h

und die FileLog-Definition müsste natürlich auf die kWh matchen:

define FileLog_H.U.ST.HK FileLog ./log/H.U.ST.HK-%Y-%m.log H.U.ST.HK.*kWh.*

So, und wenn das dann läuft, sprechen wir uns hier wieder.

LG

pah

Alexander Bauer

Hallo Peter,

vielen Dank für die Hinweise und die Ergänzungen.

Es handelt sich um die Messung des Stromverbrauchs mittels eines Eltako WSZ12DE-65A mit S0-Ausgang mit 1000 impulse je
kwH. Somit war zu rechnen 1/1000 = 0.001.

Die Config habe ich wie beschrieben ergänzt, bis auf die Factorzeile. Diese lautet:
attr H.U.ST.HK AFactor 0.001

Richtige Änderungen?

2013-03-08_23:50:06 H.U.ST.HK Stromverbrauch: -56111.353 kWh /  0.13 kW B: 135272.0 cts / 144.00 cts/h
2013-03-08_23:55:07 H.U.ST.HK day: Stromverbrauch: -56111.3 kWh B: 135299.7 cts
2013-03-08_23:55:07 H.U.ST.HK Stromverbrauch: -56111.341 kWh /  0.14 kW B: 135286.0 cts / 168.00 cts/h
2013-03-09_00:00:09 H.U.ST.HK Stromverbrauch: 56172.032 kWh /  0.00 kW B: 135300.0 cts /  0.00 cts/h
2013-03-09_00:05:08 H.U.ST.HK Stromverbrauch: 56172.038 kWh /  0.07 kW B: 135317.0 cts / 204.68 cts/h
....
2013-03-09_06:25:35 H.U.ST.HK Stromverbrauch: 56172.712 kWh /  0.31 kW B: 136362.0 cts / 144.00 cts/h


Wie wähle ich einen sinnvollen Offset? Ist der Offset in cts zu erfassen oder bezogen
auf die Einheit hier dann kwh?

Der Zäher stand heute morgen bei 64 kWH laut Display.
--

Fhem auf Cubietruck mit Debian Wheezy und Homematic und 1-Wire

Prof. Dr. Peter Henning

AFactor 0.001

ist korrekt.

Wenn AMode nicht auf daily gesetzt ist, zählt das Ding einfach durch. Der Offset wird zum rohen Zählerwert addiert !

Wen man damit einen bestimmten Zählerstand Z duplizieren möchte, und der gegenwärtig angezeigte Wert für die Energie W ist, muss man also den Offset auf den Wert

(Z-W)/Factor

einstellen. Das sollte dann aber nur einmal nötig sein

Wenn AMode=daily, wird jeweils der Mitternachtswert abgezogen - das Modul beginnt also an jedem Tag neu zu zählen. Der nächste Mitternachtswert wird beim ersten Tageswechsel automatisch ermittelt. Will man jetzt schon eine korrekte Anzeige haben, muss zunächst einmal der Wert m von der "letzten" Mitternacht geschätzt
werden.

Sei x der gegenwärtige Wert im Zähler.

Dann müsste (x-m)*1000 = W geschätzter Stromverbrauch von Mitternacht bis
jetzt sein. Oder andersherum: Man muss jetzt den Mitternachtswert mit Hilfe
des Kommandos

set <device> midnight A m

von Hand einstellen, wobei

m = x - W/1000.

Damit zeigt das Modul als Wert schon automatisch den täglichen Stromverbrauch
an.

Zum Plotten muss man nun die richtigen Events abpassen - nämlich die mit den Einheiten.
Das habe ich ja vorher schon geschrieben.

Stimmen die Logfiles jetzt ?

LG

pah


Alexander Bauer

Hallo Peter,

irgendwie hab ich das ganze Teil durcheinander gebracht.
Wie kann ich alles zurücksetzen? Den Counter auf dem 1-Wire Modul natürlich nicht,
aber den Rest meiner OWCOUNT Konfiguration?

Auf der Console tauchen nämlich Fehlermeldung wie

Argument "5.42800076920M-^?M-^?\0\0M-^?M-^?\0\0M-^?M-^?\0\0M-^?M-^?..." isn't numeric in subtraction (-) at ./FHEM/21_OWCOUNT.pm line 401.
Argument "54.2164007458M-^?M-^?\0\0M-^?M-^?\0\0M-^?M-^?\0\0M-^?M-^?..." isn't numeric in subtraction (-) at ./FHEM/21_OWCOUNT.pm line 401.

auf.

Fhem hatte ich schon einmal beendet und das fhem.save File gelöscht.
--

Fhem auf Cubietruck mit Debian Wheezy und Homematic und 1-Wire

Prof. Dr. Peter Henning

Sieht so aus, als ob im internen Memory des Counters der Midnight-Wert zu Müll gemacht wurde. Lässt sich einfach mit dem Befehl "set <devicename> midnight A 0" beheben.

LG

pah

Alexander Bauer

Mit dem Befehl ist der Fehler nun weg.

Das Log sieht nun Auszugsweise so aus:

2013-03-13_23:52:12 H.U.ST.HK Stromverbrauch: 92.479 kWh /  0.14 kW Stromverbrauch2: 164.657 kWh /  0.17 kW
2013-03-13_23:57:16 H.U.ST.HK day: Stromverbrauch:  92.5 kWh Stromverbrauch2: 164.7 kWh
2013-03-13_23:57:16 H.U.ST.HK Stromverbrauch: 92.490 kWh /  0.13 kW Stromverbrauch2: 164.671 kWh /  0.17 kW
2013-03-14_00:02:15 H.U.ST.HK Stromverbrauch: 0.000 kWh /  0.00 kW Stromverbrauch2: 0.008 kWh /  0.00 kW
....
2013-03-14_23:53:37 H.U.ST.HK Stromverbrauch: 4.742 kWh /  0.20 kW Stromverbrauch2: 5.322 kWh /  0.23 kW
2013-03-14_23:58:37 H.U.ST.HK day: Stromverbrauch:   4.8 kWh Stromverbrauch2:   5.4 kWh
2013-03-14_23:58:37 H.U.ST.HK Stromverbrauch: 4.759 kWh /  0.20 kW Stromverbrauch2: 5.345 kWh /  0.28 kW
2013-03-15_00:03:36 H.U.ST.HK Stromverbrauch: 92.506 kWh /  0.00 kW Stromverbrauch2: 164.778 kWh /  0.00 kW
2013-03-15_00:08:36 H.U.ST.HK Stromverbrauch: 92.521 kWh /  0.18 kW Stromverbrauch2: 164.951 kWh /  2.08 kW


Aus den Beispielplots habe ich mir nun eine Variante von power4.gplot mit abgeänderten Eintrag
#FileLog 7::0: angelegt.

Somit sehe ich schon einen Plot. Den zweiten muss ich noch ergänzen.

Die Tagesverbräuche werden addiert, kann ich den Summenvortrag irgendwie beeinflussen?
Der erste Tageswert konnte nicht richtig ermittelt werden.
--

Fhem auf Cubietruck mit Debian Wheezy und Homematic und 1-Wire

Prof. Dr. Peter Henning

Natürlich ist der erste Tageswert nicht richtig: Da wurde ja manuell midnight=0 gesetzt. Den richtigen Wert zu berechnen, ist zwar einfach - hat sich aber spätestens am 2. Tag erledigt. Und noch einfacher ist, in der Datei für das Monatslog jetzt den ersten Tageseintrag zu korrigieren - von Hand, eben.

Und nein: Ein "Summenvortrag" ist nicht vorgesehen, sondern nur die Addition der ermittelten tageswerte. Und da steckt eben der erste, zu hoch gegriffene Wert mit drin. Also einfach manuell die Logdatei editieren.

LG

pah

Alexander Bauer

Hallo Peter,

der Vortrag wird aus dem Logfile hinzugezählt, so dass eine Änderung von Hand und ein reload des Moduls dann
die richtige Summe ergeben?

Kann ich aus einem OWCOUNT auch zwei Logfiles erzeugen?
--

Fhem auf Cubietruck mit Debian Wheezy und Homematic und 1-Wire

Prof. Dr. Peter Henning

Nochmal: Nein, es gibt keinen "Vortrag" !

Es gibt nur die Summe der Tageswerte - und wenn dort ein falscher Eintrag steht (eben vom ersten Tag mit dem falschen Mitternachtswert).

LG

pah

Alexander Bauer

Hallo Peter,

irgendwie verstehe meine Logfiles nicht.

In Ergänzung zu meinen Post vom Fr, 15 März 2013 06:08


...
2013-03-15_23:40:41 H.U.ST.HK Stromverbrauch: 99.418 kWh /  0.26 kW Stromverbrauch2: 170.194 kWh /  0.15 kW
2013-03-15_23:45:41 H.U.ST.HK Stromverbrauch: 99.434 kWh /  0.19 kW Stromverbrauch2: 170.206 kWh /  0.14 kW
2013-03-15_23:50:41 H.U.ST.HK Stromverbrauch: 99.451 kWh /  0.20 kW Stromverbrauch2: 170.224 kWh /  0.22 kW
2013-03-15_23:55:44 H.U.ST.HK day: Stromverbrauch:  99.5 kWh Stromverbrauch2: 170.3 kWh
2013-03-15_23:55:44 H.U.ST.HK Stromverbrauch: 99.461 kWh /  0.12 kW Stromverbrauch2: 170.244 kWh /  0.24 kW
2013-03-16_00:00:42 H.U.ST.HK Stromverbrauch: 4.760 kWh /  0.00 kW Stromverbrauch2: 5.347 kWh /  0.00 kW
2013-03-16_00:05:42 H.U.ST.HK Stromverbrauch: 4.765 kWh /  0.06 kW Stromverbrauch2: 5.360 kWh /  0.15 kW
2013-03-16_00:10:42 H.U.ST.HK Stromverbrauch: 4.770 kWh /  0.06 kW Stromverbrauch2: 5.373 kWh /  0.15 kW
...
2013-03-16_23:46:55 H.U.ST.HK Stromverbrauch: 11.633 kWh /  0.06 kW Stromverbrauch2: 10.727 kWh /  0.17 kW
2013-03-16_23:51:58 H.U.ST.HK Stromverbrauch: 11.639 kWh /  0.07 kW Stromverbrauch2: 10.747 kWh /  0.24 kW
2013-03-16_23:56:58 H.U.ST.HK day: Stromverbrauch:  11.6 kWh Stromverbrauch2:  10.8 kWh
2013-03-16_23:56:58 H.U.ST.HK Stromverbrauch: 11.644 kWh /  0.06 kW Stromverbrauch2: 10.764 kWh /  0.20 kW
2013-03-17_00:01:57 H.U.ST.HK Stromverbrauch: 99.471 kWh /  0.00 kW Stromverbrauch2: 170.266 kWh /  0.00 kW
2013-03-17_00:06:57 H.U.ST.HK Stromverbrauch: 99.476 kWh /  0.06 kW Stromverbrauch2: 170.279 kWh /  0.16 kW
....
2013-03-17_23:43:24 H.U.ST.HK Stromverbrauch: 105.359 kWh /  0.06 kW Stromverbrauch2: 176.594 kWh /  0.14 kW
2013-03-17_23:48:24 H.U.ST.HK Stromverbrauch: 105.367 kWh /  0.10 kW Stromverbrauch2: 176.605 kWh /  0.13 kW
2013-03-17_23:53:24 H.U.ST.HK Stromverbrauch: 105.378 kWh /  0.13 kW Stromverbrauch2: 176.625 kWh /  0.24 kW
2013-03-17_23:58:27 H.U.ST.HK day: Stromverbrauch: 105.4 kWh Stromverbrauch2: 176.6 kWh
2013-03-17_23:58:27 H.U.ST.HK Stromverbrauch: 105.390 kWh /  0.14 kW Stromverbrauch2: 176.644 kWh /  0.23 kW
2013-03-18_00:03:25 H.U.ST.HK Stromverbrauch: 11.655 kWh /  0.00 kW Stromverbrauch2: 10.781 kWh /  0.00 kW


Am ersten Tag ist klar, der Wert kann nicht stimmen. Da hatte ich mit dem entsprechenden Befehl den Wert auf 0 gesetzt.

Am 13.03.2013 ist der mit somit nicht richtig.

Am 14.03.2013 sind 4,8 kwH und 5,4 kwH als Tageswert ermittelt worden.
Am 15.03.2013 sind es 99,5 kwH und 170,3 kwH als Tageswert.

Am 16.03.2013 sind es 11.6 kWh und 10.8 kWh als Tageswert, entspricht
dem Endwert.
Am 17.03.2013 sind es 105.4 kWh und 176.644 kWh.

Am 18.03.2013 startet das Logfile wieder mit dem Endwert von 16. März 2013.

Ich denke einige Werte sollte ich nochmals auf Null setzen. Aber wie und welche,
denn bei anderen Installationen wird das Log nicht so aussehen wie bei mir.

Oder liege ich falsch in der Annahme, dass der Tageswert nur den Verbrauch eines
Tages enhalten sollte?
--

Fhem auf Cubietruck mit Debian Wheezy und Homematic und 1-Wire

Prof. Dr. Peter Henning

Nein, diese Annahme ist richtig.

Hier scheint also noch irgendetwas schief zu laufen - was, lässt sich leider bisher nicht ablesen. Was steht denn jeweils kurz vor Mitternacht in dem Hauptlog von FHEM ? Da sollten die Einträge in den "Mitternachtsspeicher" zu sehen sein.

LG

pah

Alexander Bauer

2013.03.14 00:02:13 1: OWCOUNT TODO: Counter wraparound
2013.03.14 00:02:13 1: OWCOUNT TODO: Counter wraparound
2013.03.14 00:02:15 1: OWCOUNT TODO: Counter wraparound
2013.03.14 00:02:15 1: OWCOUNT TODO: Counter wraparound
2013.03.15 00:03:39 1: OWCOUNT TODO: Counter wraparound
2013.03.15 00:03:39 1: OWCOUNT TODO: Counter wraparound


2013.03.16 00:00:42 1: OWCOUNT TODO: Counter wraparound
2013.03.16 00:00:42 1: OWCOUNT TODO: Counter wraparound
2013.03.16 00:00:48 1: OWCOUNT TODO: Counter wraparound
2013.03.16 00:00:48 1: OWCOUNT TODO: Counter wraparound
2013.03.17 00:02:07 1: OWCOUNT TODO: Counter wraparound
2013.03.17 00:02:07 1: OWCOUNT TODO: Counter wraparound
2013.03.18 00:03:09 1: OWCOUNT TODO: Counter wraparound
2013.03.18 00:03:09 1: OWCOUNT TODO: Counter wraparound
2013.03.18 00:03:25 1: OWCOUNT TODO: Counter wraparound
2013.03.18 00:03:25 1: OWCOUNT TODO: Counter wraparound


Mehr befindet sich nicht im Hauptlog.
--

Fhem auf Cubietruck mit Debian Wheezy und Homematic und 1-Wire