Strommessung einmal anders?

Begonnen von P.A.Trick, 11 September 2014, 15:35:25

Vorheriges Thema - Nächstes Thema

P.A.Trick

Ich würde gerne mal eine Idee in den Raum stellen. Ich messe meinen gesamten Stromverbrauch im Haus mit einem EM1000.
Das funktioniert soweit auch ganz gut. Einige Geräte u.a. die Waschmaschine habe ich mit DECT200 ausgestattet um den Verbrauch zu messen.
Nun das ganze Haus mit solchen Dosen auszustatten sprengt mein Taschengeld welches in von meiner Frau bekomme :-)

Nun zur Idee
Wie wäre es, wenn es ein globales Attribut "Verbauch ~" bei jedem Device als festen Wert eingetragen würde. Dann müsste man nur die Geräte
die den Status "on" oder pct > 0 usw. haben durchzählen um den geschätzten Verbrauch darzustellen (in einem Zeitintervall 1min o.ä.). Diesen könnte man dann vom Gesamtverbrauch
abziehen und würde so über die Zeit zu einer einigermaßen reellen Rechnung kommen. Sofern ein Verbrauchsmesser eingesetzt wird, kann auch der "echte"
Verbrauchswert für die Messung hinzugezogen werden.

So jetzt bin ich gespannt auf Eure Antworten?
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

Loredo

Ich finde die Idee klasse.
Damit kann man zumindest mal eine theoretische Verbrauchskurve errechnen. Müsste man für jedes Gerät dann eben einmal in einer Art Datenbank hinterlegen (am Besten nicht in einem Modul, sondern in einer großen HASH Tabelle, die jedes Modul nutzen kann). Dabei müssten natürlich verschiedene Status berücksichtigt werden wie An, Aus, Standby. Toll wäre natürlich auch, wenn die Werte dann im tatsächlichen Device vom Nutzer manuell überschrieben werden könnten. Sprich: Man ist einmal mit einem Messer durch die Wohnung gelaufen und hat den Verbrauch pro Gerät tatsächlich einmal gemessen und dann trägt man das dort einmal ein.


Ist dann alles sicherlich nicht 100% korrekt am Ende, aber wenn man mit sowas schon bei 90-95% landen würde, wäre das ja schon super!
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Dirk

Zitat von: Loredo am 11 September 2014, 15:47:43
Müsste man für jedes Gerät dann eben einmal in einer Art Datenbank hinterlegen
Ich denke hier recht es aus ein entsprechendes Attribut ggf. auch global zur Verfügung zu stellen.
Ggf. auch perl interpretierbar. So könnte man auch den Verbrauch von dimmbarem annähernd abschätzen in dem man im Attribut z.B. eine Formel hinterlegt.
Ich hatte das mal testweise für meine Dimmer und Glühbirnen und Halogenstrahler mit Trafo getestet.
Der eingestellt Dimmwert entsprach in etwa der verbrauchten Energie. Also 50% Dimmwert = 50% Energieverbrauch.

igami

Sowas steht bei mir auch noch auf dem Programm, dachte dabei vor allem an Geräte die konstant viel Strom verbrauchen, Lampen z.B.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

P.A.Trick

Na dann sind wir schon einmal vier Personen! Wie bekommen wir denn so ein globales Attribut in FHEM rein?
Ich denke da müssen wir Rudi schon von überzeugen, oder?
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

Loredo

#5
Mit einem globalen Attribut alleine ist es aber nicht getan ;-)
Das Attribut braucht auch einen Standardwert, sonst müsste ja jeder für seine Geräte zwingend den Stromverbrauch messen. Ich finde, wenn einmal jemand gemessen hat, kann man das mal als Referenzwert festhalten und damit allen leicht verfügbar machen.
Außerdem braucht es natürlich noch einen Automatismus, der dann entsprechende Readings in den Geräten aktualisiert. Das kann man krückenhaft mit jeder Menge Notifies machen oder einmal gescheit. Ich wäre für letzteres ;)


Ich überlege mal, wie ich da was umsetzen könnte. Ich könnte das dann direkt im Quellcode veröffentlichen und nötige Änderungen an Bestandscode mit Rudi absprechen bzw. ihm Patches zum abnicken schicken.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

P.A.Trick

Zitat von: Loredo am 11 September 2014, 17:22:15
Mit einem globalen Attribut alleine ist es aber nicht getan ;-)
Das Attribut braucht auch einen Standardwert, sonst müsste ja jeder für seine Geräte zwingend den Stromverbrauch messen. Ich finde, wenn einmal jemand gemessen hat, kann man das mal als Referenzwert festhalten und damit allen leicht verfügbar machen.
Außerdem braucht es natürlich noch einen Automatismus, der dann entsprechende Readings in den Geräten aktualisiert. Das kann man krückenhaft mit jeder Menge Notifies machen oder einmal gescheit. Ich wäre für letzteres ;)


Ich überlege mal, wie ich da was umsetzen könnte. Ich könnte das dann direkt im Quellcode veröffentlichen und nötige Änderungen an Bestandscode mit Rudi absprechen bzw. ihm Patches zum Abnicken schicken.

Hey prima! Ich bin zwar ein Perl-Noob aber wenn ich dir irgendwie behilflich sein kann sag' bitte Bescheid.
Ansonsten melde ich mich als Betatester und Wiki-Schreiber an! :-)

PS: Bierchen gibt's natürlich auch beim nächsten Treffen (Karlsruhe?)
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

hexenmeister

Ein globales Attribut kann man auch selbst als userattr an global definieren. Denn Rest könnte ein dafür geschriebenes Modul tun. Wie etwa dewpoint-Modul.
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy

justme1968

zum schaltzeiten/verbraucht/... auswerten gibt es doch das HourCounter modul (http://www.fhemwiki.de/wiki/HourCounter). vielleicht braucht es nur ein bisschen schnittstellen code um die einfachen fälle mit so einem standard attribut abzudecken.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Loredo

Zitat von: hexenmeister am 11 September 2014, 17:25:14
Ein globales Attribut kann man auch selbst als userattr an global definieren. Denn Rest könnte ein dafür geschriebenes Modul tun. Wie etwa dewpoint-Modul.


Würde ich persönlich jetzt nur ungern in einem Modul benutzen. Das Attribut hat ja nicht umsonst "User" im Namen; finde es sollte nur für custom Sachen genutzt werden  :)
Ist auch kein Problem ein globales Attribut zu definieren. Das kann jedes Modul auch selbst in den HASH schreiben.


Ich mache mal einen Entwurf.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Dirk

Zitat von: Loredo am 11 September 2014, 17:22:15
Das Attribut braucht auch einen Standardwert, sonst müsste ja jeder für seine Geräte zwingend den Stromverbrauch messen.
Nicht zwingend.
Wenn kein Attribut vergeben, dann gibt es für das entsprechende Device ebend keine Messung.

Zitatkann man das mal als Referenzwert festhalten und damit allen leicht verfügbar machen.
Jeder weis doch am besten genau was für ein Gerät an einem Aktor drann hängt. Was willst du da denn noch "verfügbar" machen.
Bei Lichtquellen reicht in der Regel ein Blick auf die Verpackung oder an die "Lampe"

Und natürlich muss es noch ein Modul, was auch immer geben, der die "virtuellen Verbrauchdaten" verarbeitet.
Ggf. bekommt jedes Device welches das Attribut definiert hat ein neues Reading was z.B. einmal bei einem Statusupdate des Devices aktualisiert wird.
Das kann man dann sogar Plotten


Zitat von: hexenmeister am 11 September 2014, 17:25:14
Ein globales Attribut kann man auch selbst als userattr an global definieren. Denn Rest könnte ein dafür geschriebenes Modul tun. Wie etwa dewpoint-Modul.

Loredo

Zitat von: Dirk am 11 September 2014, 17:32:44
Nicht zwingend.
Wenn kein Attribut vergeben, dann gibt es für das entsprechende Device ebend keine Messung.

Aus technischer Sicht richtig. "Brauchen" war das bayerische "brauchen", was nicht zwangsweise eine Notwendigkeit impliziert (ich wohne wohl schon zu lange hier  ;) ).
Gemeint war allerdings, dass es benutzerfreundlich ist, bereits bei möglichst vielen Geräten den Standardverbrauchswert zu haben.

Zitat von: Dirk am 11 September 2014, 17:32:44Jeder weis doch am besten genau was für ein Gerät an einem Aktor drann hängt. Was willst du da denn noch "verfügbar" machen.


Ich möchte dem Nutzer ersparen, extra bei jedem Gerät auf die Suche nach der Watt-Angabe zu machen.

Zitat von: Dirk am 11 September 2014, 17:32:44Bei Lichtquellen reicht in der Regel ein Blick auf die Verpackung oder an die "Lampe"


So man die Packung noch hat ;)
Die Herstellerangaben können allerdings auch mal gehörig abweichen. Oftmals sind auch nur die Leistungswerte des Netzteils aufgedruckt, die aber mit dem tatsächlichen Verbrauch in der Praxis gar nichts gemein haben müssen.


Zitat von: Dirk am 11 September 2014, 17:32:44Ggf. bekommt jedes Device welches das Attribut definiert hat ein neues Reading was z.B. einmal bei einem Statusupdate des Devices aktualisiert wird.Das kann man dann sogar Plotten


Genau so.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Dirk

Zitat von: Loredo am 11 September 2014, 17:50:23
So man die Packung noch hat
Und mit welchen Daten soll der Benutzer dann die Lampe in der DB finden?
"Osram 25 W E14"? Dann kann ich die 25 W auch gleich in das Attribut eintragen.

Sofern sehe ich in so einer DB noch keinen wirklichen Sinn. Was für Geräte sollen da aufgenommen werden?
HiFi Geräte, Fernseher usw. werden sich für diese Art der Verbrauchsermittlung nicht eignen weil der Verbrauch hier zu sehr vom Nutzerverhalten abhängt.
Genauso mit Waschmaschine Kühlschränken usw.

Daher bleibt hier fast nur die Beleuchtung übrig.
Und die Verbrauchsangabe steht hier in der Regel auf dem Lampensockel.

Oder übersehe ich noch was?

ZitatDie Herstellerangaben können allerdings auch mal gehörig abweichen.
Wenn man es recht genau haben will, kommt man um die eigene Messung dann eh nicht drum herum.

ZitatOftmals sind auch nur die Leistungswerte des Netzteils aufgedruckt, die aber mit dem tatsächlichen Verbrauch in der Praxis gar nichts gemein haben müssen.
Die Leistungswerte des Netzteiles geben nur an wie viel das Netzteil liefern kann. Und auch hier ist das Gerät dahinter für den Verbrauch zuständig. Und das müsste bei der geplanten Erfassung einen kontinuierlichen Verbrauch haben. Ansonsten wird das wirklich nur eine sehr ungenaue Schätzung.


fiedel

Zitat von: justme1968 am 11 September 2014, 17:30:22
zum schaltzeiten/verbraucht/... auswerten gibt es doch das HourCounter modul

Das halte ich auch für die beste und einfachste Lösung. Betriebszeiten der Geräte erfassen und per Userreading und Faktor für den Stromverbrauch diesen berechnen.

Allerdings interessiert mich der Verbrauch möglichst vieler Geräte überhaupt nicht. Ich messe nur den Haus- Gesamtverbrauch und wenn ich ein Gerät als Stromfresser in Verdacht habe, logge ich es für kurze Zeit um mir einen Überblick zu verschaffen. Dazu reicht eine "temporäre" Messdose oder ein einfacher Energiemonitor. Was diese Lösung auch nicht kann: Schleichend steigenden Verbrauch anzeigen.

Dazu könnte man zusätzlich zum Erfassen der eingeschalteten Geräte, deren virtuellen Stromverbrauch addieren und mit dem Aktualverbrauch des Hauses vergleichen. Also wenn Gerät A+B+C an sind und der Gesamtverbrauch seteigt über Wert X, verbraucht eines der Geräte mehr als es sollte.

Gruß

Frank
FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423

fhainz

Hallo!

Schaut mal hier http://forum.fhem.de/index.php/topic,17506.msg114979.html#msg114979
Mit dem script hat das schon ganz gut funktioniert. Geht aber nur mit on/off und ist nicht wirklich schön programmiert ;) Das modul das daraus entstanden ist aber nur mehr oder weniger lauffähig. Müsste suchen ob das noch irgendwo zu finden ist.