Habe wie folgt die Definition durchgeführt:
define EnergieOG2statW statistics EnergieOG2
attr EnergieOG2statW alias Energieverbrauch OG2 W
attr EnergieOG2statW dayChangeTime 00:00
attr EnergieOG2statW event-on-change-reading EnergieOG2:electricityPower
attr EnergieOG2statW ignoreDefaultAssignments 1
attr EnergieOG2statW singularReadings EnergieOG2:electricityPower:(Min|Avg|Max):(Hour|Day|Month|Year)
define FileLog_EnergieOG2statW FileLog /media/hdd/fhem/log/energiezaehler/EnergieOG2statW-%Y.log EnergieOG2:statelectricityPower.*
define SVG_EnergieOG2statW SVG FileLog_EnergieOG2statW:SVG_EnergieOG2statW:CURRENT
Trotzdem bekomme ich keine Werte in das LogFile.
Die Readings werden von statistics in das entsprechende Device geschrieben (bei dir EnergieOG2). Dort musst du sie auch loggen und ggf. event-on-.* anpassen.
Definiert wäre ja das mit electricityPower.
Im Gerät EnergieOG2 werden folgende readings erfast: electricityPower, electricityConsumed, electricityConsumed_kWh.
Habe ich hier einen Definitionsfehler?
statistics bietet sigularReadings und minAvgMaxReadings Readings. Ich denke, das zweite Attribut fehlt dir noch. Dann sollten die Readings im Device EnergieOG2 landen.
Das hier macht im stastistics Device keinen Sinn
attr EnergieOG2statW event-on-change-reading EnergieOG2:electricityPower
Gut das habe ich soweit geändert und sieht jetzt so aus:
define EnergieOG2statW statistics EnergieOG2
attr EnergieOG2statW alias Energieverbrauch OG2 W
attr EnergieOG2statW dayChangeTime 00:00
attr EnergieOG2statW ignoreDefaultAssignments 1
attr EnergieOG2statW minAvgMaxReadings electricityPower.*
attr EnergieOG2statW singularReadings EnergieOG2:electricityPower.*:(Min|Avg|Max):(Hour|Day|Month|Year)
define FileLog_EnergieOG2statW FileLog /media/hdd/fhem/log/energiezaehler/EnergieOG2statW-%Y.log EnergieOG2:statelectricityPower.*
define SVG_EnergieOG2statW SVG FileLog_EnergieOG2statW:SVG_EnergieOG2statW:CURRENT
Trotzdem habe ich keine Einträge im FileLog_EnergieOG2statW File.
Weiters ist mir gerade aufgefallen das unter Readings folgendes vermerkt ist.
monitoredDevicesUnsupportedt.
Irgendwo muß ich hier noch einen grundsätzlichen Fehler haben.
Wie oben in meinem ersten Post schon gesagt: Die readings werden in das Device (bei dir EnergieOG2) geschrieben. Also musst du sie auch dort loggen. Deine Logfile-Definition zeigt aber auf das statistics Device.
Folgendes Ziel möchte ich hier erreichen:
Das Gerät Stromzähler (EnegrieOG2) hat die Readings electricityConsumed,electricityConsumed_kWh,electricityPower.
Diese schreibe ich ins Logfile EnergieOG2.
define EnergieOG2 JSONMETER LS110 192.xxx.xxx.xxx 60
attr EnergieOG2 alias Energieverbrauch OG2
attr EnergieOG2 event-min-interval .*:60
attr EnergieOG2 event-on-change-reading electricityConsumed,electricityConsumed_kWh,electricityPower
attr EnergieOG2 group Energiezaehler_Verbraucher
attr EnergieOG2 icon measure_power
attr EnergieOG2 room _Statistiken
attr EnergieOG2 stateFormat {sprintf("Zählerstand: %.1f kWh , Aktuell: %s Watt",(ReadingsVal($name,"electricityConsumed",0)*0.001), ReadingsVal($name,"electricityPower",0))}
attr EnergieOG2 userReadings electricityConsumed_kWh:electricityConsumed {ReadingsVal("EnergieOG2","electricityConsumed",0)*0.001}
define FileLog_EnergieOG2 FileLog /media/hdd/fhem/log/energiezaehler/EnergieOG2-%Y-%m.log EnergieOG2:(electricityConsumed_kWh|electricityPower).*
attr FileLog_EnergieOG2 logtype :,text
attr FileLog_EnergieOG2 room _LOG
define SVG_EnergieOG2 SVG FileLog_EnergieOG2:SVG_EnergieOG2:CURRENT
attr SVG_EnergieOG2 group Energie
attr SVG_EnergieOG2 label "EnergieOG2 Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_EnergieOG2 room Stromzaehler
Nun möchte ich die statistischen Werte aber nicht in dieses EnergieOG2 Logfeile schreiben, sondern in das Logfile EnergieOG2statW damit kein einzelnes Logfile entsteht was zu groß wird und zu lange dauert um eingelesen zu werden.
Ich finde aber nicht den Punkt den du meinst, dass dieser geändert werden muß, zudem möchte ich wie schon erläutert auch nicht das Logfile EnergieOG2 verwenden.
define EnergieOG2statW statistics EnergieOG2
attr EnergieOG2statW alias Energieverbrauch OG2 W
attr EnergieOG2statW dayChangeTime 00:00
attr EnergieOG2statW group Energie Statistiken
attr EnergieOG2statW ignoreDefaultAssignments 1
attr EnergieOG2statW minAvgMaxReadings electricityPower.*
attr EnergieOG2statW room _Statistiken
attr EnergieOG2statW singularReadings EnergieOG2:electricityPower.*:(Min|Avg|Max):(Hour|Day|Month|Year)
define FileLog_EnergieOG2statW FileLog /media/hdd/fhem/log/energiezaehler/EnergieOG2statW-%Y.log EnergieOG2statW:statelectricityPower.*
attr FileLog_EnergieOG2statW logtype :,text
attr FileLog_EnergieOG2statW room _LOG
define SVG_EnergieOG2statW SVG FileLog_EnergieOG2statW:SVG_EnergieOG2statW:CURRENT
attr SVG_EnergieOG2statW fixedrange week
attr SVG_EnergieOG2statW label "EnergieOG2statW Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_EnergieOG2statW room Stromzaehler
Irgendwie stehe ich hier momentan auf der Leitung.
Gibt es wirklich zu dieser Aufgabenstellung keine Lösung?
Nochmal: Du versuchst offenbar von deinem statistics Device zu loggen. Das erzeugt aber nicht die gewünschten Events. Du musst hier also den Regex so anpassen, dass aus deinem Device geloggt wird:
define FileLog_EnergieOG2statW FileLog /media/hdd/fhem/log/energiezaehler/EnergieOG2statW-%Y.log EnergieOG2statW:statelectricityPower.*
Kannst du mir das bitte verständlicher darstellen.
Ich verstehe wirklich nicht was ich an der Zeile die du angefügt hast ändern muss damit es funktioniert.
Habe auch deswegen die Konfiguration des Gerätes und die Statistische Auswertung angehängt.
Ich habe die Screenshots nicht beachtet. Du scheinst das Logging schon auf das richtige Device zu machen (obwohl deine DEF anders aussieht, als die Screenshots). Aber du bekommst keine Events und das liegt an dem Attribut event-on-change-reading im EnergieOG2 Device. Das musst du auf die neuen Readings erweitern.
So jetzt habe ich den Knoten gelöst.
Manchmal steht man wirklich ganz schön auf der Leitung.
Anbei das komplette Script für den Nachbau wie ich es jetzt mit den Youless LS110 Modulen definiert habe.
Ausgabe des aktuellen Energieverbrauchs inklusive Liniendiagramm, sowie Balkendiagramme für die Statistiken.
#####################################
### INPUT Energiezaehler EG ###
#####################################
define EnergieEG JSONMETER LS110 192.xxx.xxx.xxx 60
attr EnergieEG alias Energieverbrauch EG
attr EnergieEG event-on-change-reading electricityConsumed,electricityConsumed_kWh,electricityPower,statElectricityConsumed_kWh(Day|Hour|Month|Year),statElectricityPowerDay(Avg|Max|Min),statElectricityPowerHour(Avg|Max|Min),statElectricityPowerMonth(Avg|Max|Min),statElectricityPowerYear(Avg|Max|Min)
attr EnergieEG group Energiezaehler_Verbraucher
attr EnergieEG icon measure_power
attr EnergieEG room _Statistiken
attr EnergieEG stateFormat {sprintf("Zählerstand: %.1f kWh , Aktuell: %s Watt",(ReadingsVal($name,"electricityConsumed_kWh",0)), ReadingsVal($name,"electricityPower",0))}
attr EnergieEG userReadings electricityConsumed_kWh:electricityConsumed {ReadingsVal("EnergieEG","electricityConsumed",0)*0.001}
define FileLog_EnergieEG FileLog /media/hdd/fhem/log/energiezaehler/EnergieEG-%Y-%m.log EnergieEG:(electricityConsumed_kWh|electricityPower).*
attr FileLog_EnergieEG logtype :,text
attr FileLog_EnergieEG room _LOG
define SVG_EnergieEG SVG FileLog_EnergieEG:SVG_EnergieEG:CURRENT
attr SVG_EnergieEG group Energie
attr SVG_EnergieEG label "EnergieEG Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_EnergieEG room Stromzaehler
#####################################
### Statistik Energiezaehler EG ###
#####################################
define EnergieEGstatkWh statistics EnergieEG
attr EnergieEGstatkWh alias Energieverbrauch EG kWh
attr EnergieEGstatkWh dayChangeTime 00:00
attr EnergieEGstatkWh deltaReadings electricityConsumed_kWh
attr EnergieEGstatkWh group Energie Statistiken
attr EnergieEGstatkWh ignoreDefaultAssignments 1
attr EnergieEGstatkWh room _Statistiken
attr EnergieEGstatkWh singularReadings EnergieEG:electricityConsumed_kWh:Delta:(Hour|Day|Month|Year)
define FileLog_EnergieEGstatkWh FileLog /media/hdd/fhem/log/energiezaehler/EnergieEGstatkWh-%Y.log EnergieEG:(statElectricityConsumed_kWh(HourLast|Day|Month|Year)).*
attr FileLog_EnergieEGstatkWh logtype :,text
attr FileLog_EnergieEGstatkWh room _LOG
define SVG_EnergieEGstatkWhWeek SVG FileLog_EnergieEGstatkWh:SVG_EnergieEGstatkWhWeek:CURRENT
attr SVG_EnergieEGstatkWhWeek fixedrange week
attr SVG_EnergieEGstatkWhWeek group Energie Statisik pro Woche
attr SVG_EnergieEGstatkWhWeek label "EnergieEGstatkWhWeek Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_EnergieEGstatkWhWeek room Stromzaehler
define SVG_EnergieEGstatkWhYear SVG FileLog_EnergieEGstatkWh:SVG_EnergieEGstatkWhYear:CURRENT
attr SVG_EnergieEGstatkWhYear fixedrange year
attr SVG_EnergieEGstatkWhYear group Energie Statisik pro Jahr
attr SVG_EnergieEGstatkWhYear label "EnergieEGstatkWhYear Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_EnergieEGstatkWhYear room Stromzaehler
Ist zwar schon ein Weilchen her, ich habe das nun "nachgebaut" - allerdings klappt irgendwas mit dem UserReading nicht. Die kW/h werden einfach nicht errechnet
attr EnergieEG userReadings electricityConsumed_kWh:electricityConsumed {ReadingsVal("EnergieEG","electricityConsumed",0)*0.001}
Weiß jemand wieso nicht?
attr EnergieEG userReadings electricityConsumed_kWh:electricityConsumed.* {ReadingsVal("EnergieEG","electricityConsumed",0)*0.001}
Hallo CoolTux :)
Du hast es einfach drauf! DANKE! Es geht.... :)
Eine Frage wäre noch offen, wieso wird nur Day, Month und Year geloggt, aber nicht Hour?
attr EnergieEG event-on-change-reading electricityConsumed,electricityConsumed_kWh,electricityPower,statElectricityConsumed_kWh(Day|Hour|Month|Year),statElectricityPowerDay(Avg|Max|Min),statElectricityPowerHour(Avg|Max|Min),statElectricityPowerMonth(Avg|Max|Min),statElectricityPowerYear(Avg|Max|Min)
Denn als Reading wird Hour angezeigt....
Gib mal bitte ein list vom Device.
Internals:
DEF LS110 192.168.178.242 60
HOST 192.168.178.242
INTERVAL 60
NAME EnergieEG
NOTIFYDEV global
NR 292
PORT 80
STATE Zählerstand: 64533.3 kWh , Aktuell: 250 Watt
TYPE JSONMETER
deviceType LS110
urlPath a?f=j
Helper:
Dblog:
Statelectricityconsumed_kwh:
Logdb:
TIME 1465391983.89667
VALUE Hour: 0.066 Day: 0.200 Month: 0.200 Year: 0.200 (since: )
Statelectricityconsumed_kwhday:
Logdb:
TIME 1465391923.89839
VALUE 0.200
Statelectricityconsumed_kwhhour:
Logdb:
TIME 1465391923.89839
VALUE 0.066
Statelectricityconsumed_kwhhourlast:
Logdb:
TIME 1465390795.11492
VALUE 0.134
Statelectricityconsumed_kwhlast:
Logdb:
TIME 1465390795.11492
VALUE Hour: 0.134 Day: - Month: - Year: - (since: )
Statelectricityconsumed_kwhmonth:
Logdb:
TIME 1465391923.89839
VALUE 0.200
Statelectricityconsumed_kwhyear:
Logdb:
TIME 1465391923.89839
VALUE 0.200
Readings:
2016-06-08 15:19:43 electricityConsumed 64533306
2016-06-08 15:18:43 electricityConsumed_kWh 64533.306
2016-06-08 15:19:43 electricityPower 250
2016-06-08 15:19:43 statElectricityConsumed_kWh Hour: 0.066 Day: 0.200 Month: 0.200 Year: 0.200 (since: )
2016-06-08 15:19:43 statElectricityConsumed_kWhDay 0.200
2016-06-08 15:19:43 statElectricityConsumed_kWhHour 0.066
2016-06-08 14:59:55 statElectricityConsumed_kWhHourLast 0.134
2016-06-08 14:59:55 statElectricityConsumed_kWhLast Hour: 0.134 Day: - Month: - Year: - (since: )
2016-06-08 15:19:43 statElectricityConsumed_kWhMonth 0.200
2016-06-08 15:19:43 statElectricityConsumed_kWhYear 0.200
2016-06-08 15:19:43 state Connected
Fhem:
jsonInterpreter 1 3 electricityConsumed 3 1 cnt|1 3 electricityPower 1 0 pwr
modulVersion $Date: 2016-04-08 22:12:23 +0200 (Fri, 08 Apr 2016) $
Helper:
_98_statistics EnergieEGstatkWh
Attributes:
alias Energieverbrauch EG
event-min-interval electricityConsumed:300,electricityConsumed_kWh:300,electricityPower:300,statElectricityConsumed_kWh(Day|Hour|Month|Year):300,statElectricityPowerDay(Avg|Max|Min):300,statElectricityPowerHour(Avg|Max|Min):300,statElectricityPowerMonth(Avg|Max|Min):300,statElectricityPowerYear(Avg|Max|Min):300
group Energiezaehler_Verbraucher
icon measure_power
room _Statistiken
stateFormat {sprintf("Zählerstand: %.1f kWh , Aktuell: %s Watt",(ReadingsVal($name,"electricityConsumed_kWh",0)), ReadingsVal($name,"electricityPower",0))}
userReadings electricityConsumed_kWh:electricityConsumed.* {ReadingsVal("EnergieEG","electricityConsumed",0)*0.001}
Also laut list Anzeige wird Hour auch geloggt. Wie kommst drauf das nicht geloggt wird?
Das log dazu sieht so aus:
2016-06-08_14:12:33 EnergieEG statElectricityConsumed_kWhDay: 0
2016-06-08_14:12:33 EnergieEG statElectricityConsumed_kWhMonth: 0
2016-06-08_14:12:33 EnergieEG statElectricityConsumed_kWhYear: 0
2016-06-08_14:16:33 EnergieEG statElectricityConsumed_kWhDay: 0.013
2016-06-08_14:16:33 EnergieEG statElectricityConsumed_kWhMonth: 0.013
2016-06-08_14:16:33 EnergieEG statElectricityConsumed_kWhYear: 0.013
2016-06-08_14:20:33 EnergieEG statElectricityConsumed_kWhDay: 0.014
2016-06-08_14:20:33 EnergieEG statElectricityConsumed_kWhMonth: 0.014
2016-06-08_14:20:33 EnergieEG statElectricityConsumed_kWhYear: 0.014
2016-06-08_14:23:33 EnergieEG statElectricityConsumed_kWhDay: 0.027
2016-06-08_14:23:33 EnergieEG statElectricityConsumed_kWhMonth: 0.027
2016-06-08_14:23:33 EnergieEG statElectricityConsumed_kWhYear: 0.027
2016-06-08_14:27:33 EnergieEG statElectricityConsumed_kWhDay: 0.040
2016-06-08_14:27:33 EnergieEG statElectricityConsumed_kWhMonth: 0.040
2016-06-08_14:27:33 EnergieEG statElectricityConsumed_kWhYear: 0.040
2016-06-08_14:33:43 EnergieEG statElectricityConsumed_kWhDay: 0.054
2016-06-08_14:33:43 EnergieEG statElectricityConsumed_kWhMonth: 0.054
2016-06-08_14:33:43 EnergieEG statElectricityConsumed_kWhYear: 0.054
2016-06-08_14:38:43 EnergieEG statElectricityConsumed_kWhDay: 0.080
2016-06-08_14:38:43 EnergieEG statElectricityConsumed_kWhMonth: 0.080
2016-06-08_14:38:43 EnergieEG statElectricityConsumed_kWhYear: 0.080
2016-06-08_14:43:43 EnergieEG statElectricityConsumed_kWhDay: 0.094
2016-06-08_14:43:43 EnergieEG statElectricityConsumed_kWhMonth: 0.094
2016-06-08_14:43:43 EnergieEG statElectricityConsumed_kWhYear: 0.094
2016-06-08_14:48:43 EnergieEG statElectricityConsumed_kWhDay: 0.107
2016-06-08_14:48:43 EnergieEG statElectricityConsumed_kWhMonth: 0.107
2016-06-08_14:48:43 EnergieEG statElectricityConsumed_kWhYear: 0.107
2016-06-08_14:53:43 EnergieEG statElectricityConsumed_kWhDay: 0.120
2016-06-08_14:53:43 EnergieEG statElectricityConsumed_kWhMonth: 0.120
2016-06-08_14:53:43 EnergieEG statElectricityConsumed_kWhYear: 0.120
2016-06-08_14:58:43 EnergieEG statElectricityConsumed_kWhDay: 0.134
2016-06-08_14:58:43 EnergieEG statElectricityConsumed_kWhMonth: 0.134
2016-06-08_14:58:43 EnergieEG statElectricityConsumed_kWhYear: 0.134
2016-06-08_14:59:55 EnergieEG statElectricityConsumed_kWhHourLast: 0.134
2016-06-08_15:03:43 EnergieEG statElectricityConsumed_kWhDay: 0.147
2016-06-08_15:03:43 EnergieEG statElectricityConsumed_kWhMonth: 0.147
2016-06-08_15:03:43 EnergieEG statElectricityConsumed_kWhYear: 0.147
2016-06-08_15:08:43 EnergieEG statElectricityConsumed_kWhDay: 0.160
2016-06-08_15:08:43 EnergieEG statElectricityConsumed_kWhMonth: 0.160
2016-06-08_15:08:43 EnergieEG statElectricityConsumed_kWhYear: 0.160
2016-06-08_15:13:43 EnergieEG statElectricityConsumed_kWhDay: 0.187
2016-06-08_15:13:43 EnergieEG statElectricityConsumed_kWhMonth: 0.187
2016-06-08_15:13:43 EnergieEG statElectricityConsumed_kWhYear: 0.187
2016-06-08_15:18:43 EnergieEG statElectricityConsumed_kWhDay: 0.200
2016-06-08_15:18:43 EnergieEG statElectricityConsumed_kWhMonth: 0.200
2016-06-08_15:18:43 EnergieEG statElectricityConsumed_kWhYear: 0.200
2016-06-08_15:23:43 EnergieEG statElectricityConsumed_kWhDay: 0.227
2016-06-08_15:23:43 EnergieEG statElectricityConsumed_kWhMonth: 0.227
2016-06-08_15:23:43 EnergieEG statElectricityConsumed_kWhYear: 0.227
2016-06-08_15:28:44 EnergieEG statElectricityConsumed_kWhDay: 0.240
2016-06-08_15:28:44 EnergieEG statElectricityConsumed_kWhMonth: 0.240
2016-06-08_15:28:44 EnergieEG statElectricityConsumed_kWhYear: 0.240
2016-06-08_15:33:45 EnergieEG statElectricityConsumed_kWhDay: 0.267
2016-06-08_15:33:45 EnergieEG statElectricityConsumed_kWhMonth: 0.267
2016-06-08_15:33:45 EnergieEG statElectricityConsumed_kWhYear: 0.267
2016-06-08_15:38:45 EnergieEG statElectricityConsumed_kWhDay: 0.294
2016-06-08_15:38:45 EnergieEG statElectricityConsumed_kWhMonth: 0.294
2016-06-08_15:38:45 EnergieEG statElectricityConsumed_kWhYear: 0.294
2016-06-08_15:43:46 EnergieEG statElectricityConsumed_kWhDay: 0.307
2016-06-08_15:43:46 EnergieEG statElectricityConsumed_kWhMonth: 0.307
2016-06-08_15:43:46 EnergieEG statElectricityConsumed_kWhYear: 0.307
geloggt wurde nur zum Stundenwechsel das HourLast, aber nicht das Hour...
Ist das ein Auszug aus der DB oder ein logFile? Weil das was ich gelesen habe aus dem list war das er ein Hour Eintrag in die DB geschrieben hat.
Und bitte verwende Code Tags. In der Symbolauswahl das # Zeichen.
Dblog:
Statelectricityconsumed_kwh:
Logdb:
TIME 1465391983.89667
VALUE Hour: 0.066 Day: 0.200 Month: 0.200 Year: 0.200 (since: )
Ich schaue noch mal heute Abend in Ruhe.
Sorry die Code Tags hatte ich vergessen. Ich logge den Stromzähler in ein Logfile. Will mir den DBlog nicht zumüllen solange das nicht richtig läuft....
Danke für Deine Unterstützung....
Das müsste ja dann das hier sein
statElectricityConsumed_kWh(Day|Hour|Month|Year):300
Kannst Du zu Testzwecken mal das :300 wegnehmen und zum Stundenwechsel mal ohne das :300 laufen lassen. Müsste ja reichen wenn Du das 20:55 raus nimmst.
Ich bin mir nicht sicher aber ich denke er verpennt das Event wegen der Verzögerung
Grüße
Ich habe das mal die ganze Nacht lang ausprobiert - keine Veränderung... Möglicherweise liegt das am Statistik Modul selbst?
Also ich kann da beim besten Willen nichts finden. Was Du machen kannst ist den Eventmonitor beobachten und schauen ob es für Hour überhaupt ein Event gibt
Ich weiß auch nicht woran es liegt... Im event monitor zumindest kommt ein Hour Wert:
2016-06-09 12:26:47 JSONMETER EnergieEG Connected
2016-06-09 12:26:47 JSONMETER EnergieEG statElectricityConsumed_kWh: Hour: 0.120 Day: 3.134 Month: 3.134 Year: 3.134 (since: 2016-06-09 )
2016-06-09 12:26:47 JSONMETER EnergieEG statElectricityConsumed_kWhHour: 0.120
2016-06-09 12:26:47 JSONMETER EnergieEG statElectricityConsumed_kWhDay: 3.134
2016-06-09 12:26:47 JSONMETER EnergieEG statElectricityConsumed_kWhMonth: 3.134
2016-06-09 12:26:47 JSONMETER EnergieEG statElectricityConsumed_kWhYear: 3.134
Vielleicht findet sich noch ein drittes Augenpaar das mehr sieht. Aber dafür am besten mal das gelöst im ersten Post entfernen.