3 Punkte von GN⁺ 2024-05-06 | 1 Kommentare | Auf WhatsApp teilen
  • Visualisiert den langfristigen Stromverbrauch von Haushalts- und Computing-Geräten, indem Tasmota auf athom.tech-EU style plug V3-Smart-Plugs mit Prometheus und Grafana auf dem bestehenden Homeserver verbunden wird
  • Pro Plug läuft ein tasmota-power-exporter; Prometheus scraped jede Sekunde. In Grafana muss min step auf 1 Sekunde gesetzt werden, um fein aufgelöste Graphen zu sehen
  • Messungen über rund 4 Monate ergaben: Der elektrische Warmwasserbereiter verbrauchte im Schnitt 4,51 kWh/Tag, der gesamte Homeoffice-Schreibtisch im Schnitt 0,95 kWh/Tag; das Zimaboard lag bei normaler Nutzung bei etwa 7 W und damit unter dem ISP-Modem/Router
  • Auch im Spannungsgraphen waren Spitzenlastzeiten und der Betrieb von Geräten mit hoher Leistungsaufnahme sichtbar; wenn Warmwasserbereiter, Wasserkocher, Elektroherd oder Mikrowelle eingeschaltet wurden, sank die Spannung an allen Plugs leicht
  • Für Langzeitmessungen nützlich, aber einige Plugs sendeten Statistiken nicht rechtzeitig oder verschwanden aus dem Netzwerk und benötigten einen Neustart der Stromversorgung; automatische Steuerung anhand von Strompreisen bleibt ein Kandidat für das nächste Experiment

Langfristigen Stromverbrauch mit Smart Plugs beobachten

  • Ziel ist es, den Stromverbrauch von Geräten wie Homeserver, Router, Workstation und elektrischem Warmwasserbereiter über längere Zeit visuell zu verfolgen
  • Das zuvor verwendete einfache digitale Strommessgerät reichte aus, um Momentanwerte zu prüfen, hatte aber Grenzen, wenn es darum ging zu verstehen, wie ein Gerät über lange Zeit Strom verbraucht
  • Verwendet wurde die Variante EU style plug V3 von athom.tech; die Lieferung in die EU dauerte einschließlich Weihnachten 9 Tage
  • Auf den Plugs ist Tasmota vorinstalliert; gemäß beiliegender Anleitung werden sie mit dem WLAN verbunden und lassen sich anschließend im Browser verwalten
  • Firmware-Updates lassen sich in der Web-GUI mit wenigen Klicks bis auf die aktuelle Version einspielen

Erfassungsstruktur mit Prometheus und Grafana

  • Die Stromzählerdaten werden in einer bereits auf dem Homeserver vorhandenen Prometheus-Instanz gesammelt
  • Prometheus liest periodisch Metriken aus verschiedenen Quellen, speichert sie auf der Festplatte und dient später zum Abfragen und Verarbeiten dieser Daten
  • Auf dem Server läuft pro Plug je ein tasmota-power-exporter
    • Prometheus scraped jeden Exporter einmal pro Sekunde
    • Man könnte auch den Plug selbst Metriken ausgeben lassen, aber der Weg, die Tasmota-Firmware selbst zu bauen, wurde nicht gewählt
  • Für die Visualisierung wird die bestehende Grafana-Instanz wiederverwendet
    • Um im Graphen die detailliertesten Datenpunkte zu erhalten, muss der Wert min step auf 1 Sekunde geändert werden

Über rund 4 Monate beobachteter Stromverbrauch

  • Elektrischer Warmwasserbereiter

    • Ein 30-Liter-Warmwasserbereiter verbraucht unter den gemessenen Geräten den meisten Strom
    • Er entspricht einem Warmwasserbereiter, der für ein bis zwei schnelle Duschen oder eine große Menge Abwasch ausreicht
    • Die Messwerte waren wie folgt
      • Typischer Stromverbrauch: 4,51 kWh/Tag
      • Beobachtetes Minimum: 0,56 kWh/Tag, meist wenn niemand zu Hause war
      • Beobachtetes Maximum: 11,1 kWh/Tag, an einem Tag mit viel Wäsche und vielen Duschen
  • Homeserver und Netzwerkgeräte

    • Die Homeserver-Workloads laufen auf einem Zimaboard; der niedrige Stromverbrauch war ein wichtiger Grund für diese Wahl
    • Der Stromverbrauch des Zimaboard sieht wie folgt aus
      • Im Leerlauf: etwa 2 W
      • Normale Nutzung mit allen laufenden Diensten: etwa 7 W
      • Maximaler Stromverbrauch: etwa 15 W
    • Die vom ISP bereitgestellte Modem/Router-Box verbraucht unabhängig vom Router- oder Bridge-Modus stets 12–14 W und damit mehr Strom als das Zimaboard
    • Wegen zusätzlicher latenzsensitiver Workloads wurde der Homeserver zeitweise wieder auf einen ASRock Deskmini X300 zurückgestellt
    • Der Idle-Stromverbrauch des Deskmini ist im Vergleich zum Zimaboard schlecht und liegt bei 15–20 W
    • Beim Deskmini schien die CPU keine Stromsparzustände unterhalb von C3 bereitzustellen, während das Zimaboard C-States bis C10 anzeigt
    • Es wurde keine Möglichkeit gefunden, niedrigere C-States über UEFI-Einstellungen oder den Linux-Kernel sichtbar zu machen
    • Nachdem im Prometheus-node-exporter-Grafana-View ein Panel für den Server-Stromverbrauch hinzugefügt wurde, ist erhöhte CPU-Aktivität auch im Stromverbrauchsgraphen deutlich sichtbar

Spannungsänderungen und Strommuster rund um den Schreibtisch

  • Spannungsänderungen

    • Tasmota-Plugs melden auch den aktuellen Spannungswert
    • Der Spannungsgraph zeigte Muster, die wie Saisonalität wirkten, und zu typischen Spitzenzeiten des Stromverbrauchs sank die Spannung insgesamt
    • Solche Formen könnten Kandidaten für Experimente zur Anomalieerkennung auf Prometheus-Basis sein; als Referenz dient GitLabs Beitrag zur Anomalieerkennung mit Prometheus
    • Spannungsabfälle treten auch auf, wenn stromhungrige Geräte wie Warmwasserbereiter, Wasserkocher, Elektroherd oder Mikrowelle laufen
    • Der Warmwasserbereiter senkt die Spannung an allen Plugs leicht
    • Beim Kochen auf dem Elektroherd ist der Ein/Aus-Zyklus auch in den Spannungswerten aller Plugs sichtbar
  • Homeoffice-Workstation

    • Ein Plug misst gemeinsam den Monitor, das USB-C-Dock, die Monitor-Lightbar und Geräte, die auf dem Schreibtisch geladen werden
    • Der Stromverbrauch schwankt stark je nach Homeoffice-Zeiten und danach, ob mehrere Geräte geladen werden
    • Während der Computerarbeit liegt der typische Stromverbrauch der gesamten Konfiguration bei 45–60 W, Spitzenwerte liegen bei etwa 90–110 W
    • Der gemessene Tagesverbrauch war wie folgt
      • Typischer Stromverbrauch: 0,95 kWh/Tag
      • Beobachtetes Minimum: 0,07 kWh/Tag
      • Beobachtetes Maximum: 1,52 kWh/Tag
  • Lademuster

    • Smart Plugs sind auch nützlich, um die Lademuster mehrerer Geräte zu beobachten
    • Laptops oder Powerbanks laden anfangs schnell, werden mit zunehmendem Akkustand langsamer, und ab einem bestimmten Punkt erscheint bis zur vollständigen Ladung ein Abschnitt wie Erhaltungsladung
    • Der Akku des E-Bikes war eine Ausnahme: Während des Ladens stieg der Stromverbrauch schrittweise leicht an und fiel am Ende des Ladevorgangs schneller ab
    • Das E-Bike verbrauchte im Turbo-Preset 0,5 kWh für 60 km Reichweite; die Kosten pro Kilometer wurden mit einem halben Cent berechnet

Stabilitätsprobleme und nächste Experimente

  • Die Stabilität der Smart Plugs war insgesamt in Ordnung, doch einige Plugs meldeten ihre Statistiken häufig nicht rechtzeitig
    • Die Ursache könnte auch am WLAN-Access-Point liegen
    • Zwei Plugs verschwanden vollständig aus dem Netzwerk und kamen nicht zurück, sodass mehrmals ein vollständiger Neustart der Stromversorgung nötig war
  • Die Plugs können über mehrere APIs einschließlich HTTP ein- und ausgeschaltet werden
  • Künftig könnte mit Home Assistant oder einem einfachen Skript ausprobiert werden, bestimmte Geräte abhängig vom aktuellen Strompreis ein- und auszuschalten
  • Nach den Recherchen gibt es eine nordpool-Integration für Home Assistant
  • Die gesamte Konfiguration ermöglicht zuverlässige Strommessungen verschiedener Computing-Geräte und hilft dabei, die Energieeffizienz künftig genutzter Geräte ohne bloßes Raten zu beurteilen

1 Kommentare

 
GN⁺ 2024-05-06
Hacker-News-Kommentare
  • Ich habe einen Zigbee-Leistungsschalter gekauft und so angeschlossen, dass der gesamte Strom im Haus darüber läuft, und ich habe auch ein E-Ink-Display gebaut, das den Stromverbrauch anzeigt
    https://www.stavros.io/posts/making-the-timeframe/

    • In den Niederlanden müssen alle vom Netzbetreiber installierten Smart Meter den P1-Standard unterstützen, sodass Kunden den aktuellen Stromverbrauch, den kumulierten Stromverbrauch usw. über eine Standardschnittstelle auslesen können. Meist ist auch der Gaszähler mit angeschlossen
      Mit einem günstigen Dongle kann man sich Statistiken in einer App ansehen, ich nutze zum Beispiel dieses hier: https://www.homewizard.com/nl/shop/wi-fi-p1-meter/
      Dieser Zähler bietet auch eine lokale Netzwerk-API. Ich habe einen kleinen Treiber für den SmartThings Hub geschrieben, sodass man Statistiken und Grafiken auch in der SmartThings-App sehen kann, und ich nutze den SmartThings-Hub für Zigbee-/Z-Wave-Geräte: https://github.com/danieldk/homewizard-energy
    • Der AliExpress-Link für das Display scheint kaputt zu sein. Wie so oft
      Das naheliegende Integrationsziel wäre wohl Home Assistant. Ich weiß nicht, ob es außer dem Auslesen der Werte des Earu-Schalters über Zigbee2MQTT und dem Einrichten von Entitäten schon eine direkt nutzbare Integration für Home Assistant gibt. Trotzdem gefällt mir das Muster, den Zähler an einen Automatisierungs-Hub anzubinden und den Hub Bilder mit den Zählerdaten und anderen Informationen an das Display pushen zu lassen
    • Ich mag die Person, weil sie unterhaltsam ist. Ich habe sogar ein Jahresabo für IMGZ für 12 Dollar gekauft, und bevor jemand denkt, das sei raffinierte Werbung: Ich habe nichts damit zu tun
      https://imgz.org/
      Beim Bezahlen mit BTC muss der Button „open in wallet“ repariert werden. Der Link ist kaputt
      Ansonsten funktioniert es gut. Beispiel: https://imgz.org/iAB4tgaJ/
    • Ich frage mich, welchen Leistungsschalter verwendet wird
  • Ich habe mich vor ein paar Jahren intensiv damit beschäftigt und ein wenig bekanntes Gerät namens Rainforest Automation Eagle gekauft: https://www.rainforestautomation.com/rfa-z114-eagle-200-2/
    Nach der Registrierung beim Energieversorger ist es ein einfaches Linux-Gerät, das das Smart Meter ausliest, und es stellt eine XML-API bereit, die ich zu Prometheus bridge: https://github.com/kklipsch/reagle
    Ich bridge auch den Preis-Feed des Energieversorgers ComEd zu Prometheus: https://github.com/kklipsch/comed_exporter
    Dank dieser beiden Dinge kann ich den Gesamtverbrauch des Hauses und die Preisinformationen in Prometheus und dann in Grafana ziemlich gut visualisieren

    • Ich würde gern wissen, ob du teilen kannst, wie du stundenbasierte Tarife mit den Verbrauchsmesswerten kombinierst
  • Ich bin noch einen Schritt weiter gegangen und habe ein Emporia Vue 2 im Sicherungskasten installiert. Daran hängen 16 Stromwandler und ein dreiphasiger Hauptanschluss
    Es basiert auf ESP32, und es gibt ein großartiges ESPHome-Projekt, mit dem man es für rein lokale Berichterstattung flashen kann. Zusammen mit Home Assistant und VictoriaMetrics kann ich damit das Verhalten des ganzen Hauses in Grafana sehen. Der nächste Schritt ist die Null-Einspeise-Leistungsregelung für eine kleine OpenDTU-Solaranlage anhand dieser Daten. Wir leben wirklich in spannenden Zeiten

    • Die Kombination aus VictoriaMetrics und Grafana ist großartig. Es wäre nur schön, wenn man Metrikbeschreibungen eingeben könnte, um die Beschreibungen im Grafana-Metrik-Explorer zu füllen. Das ist traditionell die Aufgabe des help-Felds in den Prometheus-Metrik-Metadaten
      VictoriaMetrics/Grafana ersetzt bei uns das industrielle Historian-System, auch wenn dieses Produkt natürlich nicht High-End ist. OSI PI wäre vermutlich besser
    • Ich frage mich, ob es noch mehr ähnliche Open-Source-Hardware-Alternativen gibt. Am liebsten mit Ethernet und ESPHome
      Die Klone, die ich finden kann, kosten fast genauso viel wie die „Original“-Hardware
      Der ATM90E32AS kostet bei JLCPCB etwa 1 Dollar pro Kanal, daher dürfte sich so etwas mit SMT-Bestückung ziemlich günstig bauen lassen. Für meinen Anwendungsfall sind es etwa 60 Schaltungen
    • Das Gerät von athom.tech, auf das der ursprüngliche Autor Tasmota geflasht hat, kann man zum gleichen Preis auch mit vorinstalliertem ESPHome bestellen, und es funktioniert mit Home Assistant. Ich habe es etwa ein Jahr lang mit einer einzelnen Steckdosenlast von 2500 W genutzt und war zufrieden
      Für die Gesamtlast des Hauses würde ich empfehlen, lieber auf eine Integration mit der in jedem Land verwendeten Smart-Meter-Technik zu setzen
      Für mittlere Lasten, etwa einen 32-A-Schutzschalter in einer Unterverteilung, habe ich bisher noch keine zuverlässige und zugleich kosteneffiziente Lösung gefunden
    • Ich habe vor etwa 6 Jahren einen CURB Energy-Monitor gekauft und frage mich, ob jemand weiß, ob man darauf Open-Source-Firmware flashen kann. Er bietet nur Cloud-Integration, ich würde ihn aber gern an Home Assistant anbinden
    • Ich würde gern mehr darüber erfahren, was eine OpenDTU-Solaranlage ist
  • Ich habe ein IoTaWatt-Gerät verwendet, das sich im Schaltschrank installieren lässt. Es ist eine hervorragende Lösung für die Überwachung einzelner Stromkreise, und dank der direkten InfluxDB-Integration kann man Grafana nutzen.
    Auch die Überwachung pro Stecker ist großartig, um bestimmte Geräte in bestimmten Stromkreisen zu identifizieren.
    Kurzes Einrichtungsvideo: https://www.youtube.com/watch?v=-tcbJCvuJG8

    • Ich habe den Kanal erst vor Kurzem entdeckt, aber die Inhalte sind gut. Das Homelab-Video habe ich wahrscheinlich etwa zehnmal gesehen.
      Ich habe drei Ferienunterkünfte in einem alten Gebäude und bin dabei, mehr Intelligenz und Monitoring hinzuzufügen; eines davon ist ein Raspberry-Pi-Kiosk, der auf einem der Videos basiert.
    • Heute hat mir ein Freund per DM den YouTube-Link zur Homelab-Tour geschickt, dadurch habe ich den Kanal kennengelernt. Die Interessen überschneiden sich ziemlich stark.
      Ich nutze ebenfalls IOTAWATT und bin sehr zufrieden damit. Mein einziger Kritikpunkt ist, dass ich gern mehr Kanäle auf demselben Gerät aufzeichnen würde, zum Beispiel ungefähr 30 Kanäle.
  • Ich scrape die Stromverbrauchsmetriken von einem Tapo P110 und schiebe sie mit https://github.com/richardjennings/tapmon in die Grafana Cloud. Aber wie andere schon gesagt haben, hat Wi-Fi bei Smart Plugs seine rauen Kanten.

    • Stimme zu. Ich habe mehrere Wandschalter durch Leviton-Wi-Fi-Smart-Switches ersetzt, aber ich glaube nicht, dass ich noch einmal auf Wi-Fi setzen würde. Es ist schwer, ihnen vollständig zu vertrauen.
      Die Smart Plugs von Meross sind etwas besser, aber auch sie verlieren gelegentlich die Verbindung. Nach Updates ist es ein wenig besser geworden.
  • Ich versuche, Grafana stärker in Richtung IoT/SCADA-Steuerung zu schieben. Es ist ein großartiges Tool zur Visualisierung von Datenquellen, und ich möchte, dass es auch ein Tool zur Steuerung von Datensenken wird.
    Ich bin persönlich nicht besonders glücklich darüber, für diesen Anwendungsfall Home Assistant empfehlen zu müssen.
    Ich arbeite bei Grafana Labs.

    • Wenn Grafana numerische Eingabefelder und Buttons unterstützen würde, könnte es so etwas wie Wonderware InTouch leicht ersetzen.
      Traditionelle SCADA-Systeme sind bei Diagrammfunktionen so erbärmlich, dass man diesen Bereich durchaus ordentlich aufmischen könnte.
    • Das wäre wirklich großartig. Ich nutze Grafana-Dashboards für Thermal-Vacuum-Tests, und alle wünschen sich ständig einfache SCADA-Funktionen.
    • Ich würde gern mehr darüber hören, wie sich die hier gemeinte Datensenke in diese Idee einfügt.
  • Halb im Scherz, halb im Ernst frage ich mich, ob schon der Ressourcenverbrauch von Grafana selbst den Nutzen des Monitorings nicht wieder aufhebt. Wenn ich eine Software nennen müsste, die regelmäßig viel mehr Ressourcen verbraucht, als vernünftig erscheint, dann wäre es Grafana.

    • Wenn du die Daten an Splunk oder Datadog schickst, kannst du dabei viel mehr Geld verbrennen, als vernünftig erscheint.
    • Die einfache Lösung ist, ein Verlängerungskabel vom Nachbarn rüberzuziehen und die Monitoring-Hardware damit zu betreiben.
  • Ich habe einen Lichtsensor an einen günstigen ESP32 angeschlossen und den Sensor an den Stromzähler geklebt. Der Zähler blinkt 1000-mal pro 1 kWh, und das lese ich aus.
    Ich lade die Daten in Google Sheets hoch und lasse die Diagramme direkt dort erstellen, das funktioniert gut.
    Bei einem älteren Verwandten habe ich noch einen weiteren ESP32 mit PIR-Sensor installiert und sende die Bewegungsdaten an ein anderes Google-Sheets-Blatt, um grob zu überwachen, ob es Aktivität gibt.
    Erwarte ich, dass Google diesen Dienst jederzeit einstellen könnte? Ja. Aber im Moment funktioniert es. Man kann auf dem ESP32 per JSON Daten in Google Sheets schreiben und daraus lesen; es ist nicht intuitiv, aber es geht und ist kostenlos.

    • Mir gefällt der einfache Ansatz. Mein alter Zähler hatte nur eine rotierende Scheibe, und ich habe all meine Energie darauf verwendet, einen Sensor an ein Arduino anzuschließen, der die schwarze Markierung am Rand der Scheibe erkennt.
      Es war gerade genug Speicher vorhanden, um einen HTTP-Dienst bereitzustellen, damit ich den Wert für das Remote-Monitoring in iobridge einspeisen konnte.
    • Ich verwende ein Frient-Zigbee-Gerät, das dasselbe macht, und schicke die Daten an Home Assistant.
  • Es überrascht mich, dass in den Kommentaren hier nicht mehr über Shelly-Monitore gesprochen wird. Sie sind gut für das Monitoring des gesamten Hauses, also Einspeisepunkt und Stromkreise, die Integrationen sind recht offen und Home Assistant wird direkt unterstützt.
    Es scheint sinnvoller, im Haus „dumme“ Standard-Leistungsschalter zu verwenden und zusätzliche Monitore anzubringen, statt Funktionen stark an ein einziges Gerät zu koppeln.

    • Ich nutze etwa ein Dutzend Shelly-Relais und bin zufrieden damit. Für die Strommessung ist es aber keine großartige Lösung.
      Die 3-Phasen-Klemmen sind sehr teuer, und es gibt keine Option, 8 oder 16 Sensoren anzuschließen wie beim Emporia Vue. Shelly ist erwähnenswert, aber nicht für detaillierte Strommessung.
  • Hinzu kommt, dass man damit auch automatisieren kann. Eine Automation, die ich kürzlich gebaut habe, senkt die Lautstärke der Türklingel, wenn das White-Noise-Gerät des Babys eingeschaltet ist.

    • Mich würde interessieren, ob du mehr dazu sagen kannst, wie Prometheus oder Grafana bei der Automation helfen. Mir war nicht klar, dass eines von beiden so etwas unterstützt.