In einer Zeit, in der Energieeffizienz und die Optimierung der Stromkosten immer wichtiger werden, suchen viele nach Wegen, ihren Energieverbrauch detailliert zu überwachen. Besonders im Bereich der Personal Computer, die oft als unentdeckte Stromfresser gelten, kann ein tiefgehender Einblick in die Leistungsaufnahme von unschätzbarem Wert sein. Stellen Sie sich vor, Sie könnten nicht nur sehen, wie viel Strom Ihr gesamter PC verbraucht, sondern diese Daten auch direkt in einem umfassenden Systemüberwachungstool wie HWiNFO abrufen. Genau das ermöglichen wir Ihnen mit dieser detaillierten Anleitung: Die Integration des Shelly Plug S in HWiNFO.
Dieser Artikel führt Sie Schritt für Schritt durch den Prozess, wie Sie die Verbrauchsdaten (W) Ihres Shelly Plug S auslesen und als benutzerdefinierten Sensor in HWiNFO visualisieren können. Von der Einrichtung des Shelly Plug S über die Erstellung eines kleinen Skripts bis hin zur Konfiguration in HWiNFO – wir decken alles ab, damit Sie die volle Kontrolle über Ihren PC-Stromverbrauch erhalten. Machen Sie Schluss mit dem Rätselraten und beginnen Sie noch heute mit dem intelligenten PC-Monitoring!
Die Protagonisten: Shelly Plug S und HWiNFO im Überblick
Bevor wir in die technischen Details eintauchen, lernen wir die beiden Hauptakteure dieses Projekts kennen.
Der Shelly Plug S: Ihr smarter Energie-Detektiv
Der Shelly Plug S ist ein intelligenter WLAN-Zwischenstecker, der nicht nur Geräte schalten, sondern vor allem deren Stromverbrauch präzise messen kann. Er ist kompakt, einfach einzurichten und bietet eine Vielzahl von Funktionen, die ihn zu einem idealen Werkzeug für die Energieüberwachung machen:
- Leistungsmessung: Misst den aktuellen Stromverbrauch (in Watt) in Echtzeit.
- Energieverbrauch: Zählt den gesamten Energieverbrauch (in kWh) über die Zeit.
- WLAN-Konnektivität: Lässt sich einfach in Ihr bestehendes Heimnetzwerk integrieren.
- Lokale API: Bietet eine offene Schnittstelle (API), über die andere Anwendungen oder Skripte die Messdaten abrufen können – dies ist entscheidend für unser Vorhaben.
- Sicherheitsfunktionen: Überlast- und Überhitzungsschutz.
Der Shelly Plug S wird zum zentralen Datensammler für die Leistungsaufnahme Ihres PCs oder jeder anderen angeschlossenen Komponente, die Sie überwachen möchten.
HWiNFO: Das Schweizer Taschenmesser für PC-Monitoring
HWiNFO ist ein leistungsstarkes und kostenloses Hardware-Informations- und Diagnosetool für Windows. Es liest eine unglaubliche Menge an Daten von praktisch allen Sensoren und Komponenten Ihres PCs aus: CPU-Temperaturen, GPU-Auslastung, Lüftergeschwindigkeiten, Speicherfrequenzen und vieles mehr. Für unser Projekt ist eine spezifische Funktion von HWiNFO von besonderem Interesse:
- Sensor-Monitoring: Zeigt Echtzeitdaten von hunderten von Sensoren an.
- Benutzerdefinierte Sensoren (User-Defined Sensors): Ermöglicht das Hinzufügen externer Datenquellen, die nicht direkt von der Hardware stammen. Genau hier werden wir die Daten des Shelly Plug S einspeisen.
- Anpassbare Oberfläche: Sensorwerte können in verschiedenen Formaten angezeigt oder in Protokolldateien geschrieben werden.
Die Kombination dieser beiden Tools eröffnet uns die Möglichkeit, eine umfassende Übersicht über die Leistung und den Verbrauch Ihres Systems zu erhalten.
Die Brücke schlagen: Das Prinzip der Datenintegration
Der Shelly Plug S und HWiNFO sind von Haus aus nicht dazu gedacht, direkt miteinander zu kommunizieren. Der Shelly Plug S sendet seine Daten über WLAN, während HWiNFO interne PC-Sensoren ausliest. Um diese Kluft zu überbrücken, benötigen wir eine kleine „Middleware” in Form eines einfachen Skripts.
Das Grundprinzip ist wie folgt:
- Der Shelly Plug S misst kontinuierlich den Stromverbrauch des angeschlossenen Geräts (Ihres PCs).
- Er stellt diese Daten über seine lokale REST-API zur Verfügung.
- Ein kleines Skript (z.B. in Python oder PowerShell) wird auf Ihrem PC ausgeführt. Dieses Skript fragt regelmäßig die Shelly-API ab, um den aktuellen Leistungswert zu erhalten.
- Das Skript schreibt diesen Leistungswert in eine einfache Textdatei auf Ihrem PC.
- HWiNFO ist so konfiguriert, dass es diese spezifische Textdatei ausliest und den darin enthaltenen Wert als „Benutzerdefinierten Sensor” interpretiert.
- Die Windows Aufgabenplanung stellt sicher, dass das Skript in regelmäßigen Abständen automatisch ausgeführt wird, um die Daten kontinuierlich zu aktualisieren.
Dieser Ansatz ist robust, flexibel und erfordert keine komplexe Softwareinstallation außer HWiNFO und einer Skriptsprache Ihrer Wahl.
Schritt-für-Schritt-Anleitung: Shelly Plug S mit HWiNFO verbinden
Folgen Sie dieser detaillierten Anleitung, um die Verbrauchsdaten Ihres PCs erfolgreich in HWiNFO zu integrieren.
Vorbereitung: Was Sie benötigen
- Einen Shelly Plug S, der in Ihr WLAN eingebunden ist und an dem Ihr PC angeschlossen ist.
- Einen PC mit installiertem HWiNFO (die kostenlose Version ist ausreichend).
- Python (Version 3.x) auf Ihrem PC installiert. Sie können es von python.org herunterladen. Achten Sie darauf, „Add Python to PATH” während der Installation auszuwählen.
- Einen Texteditor (z.B. Notepad++, VS Code oder den Standard-Editor).
- Grundlegende Kenntnisse im Umgang mit dem Windows Datei-Explorer und der Aufgabenplanung.
Schritt 1: Shelly Plug S einrichten und IP-Adresse ermitteln
- Erstkonfiguration: Schließen Sie den Shelly Plug S an eine Steckdose an und verbinden Sie Ihren PC damit. Folgen Sie der Shelly-Anleitung, um ihn in Ihr Heim-WLAN-Netzwerk zu integrieren. Stellen Sie sicher, dass er mit demselben Netzwerk wie Ihr PC verbunden ist.
- IP-Adresse finden: Melden Sie sich im Webinterface Ihres WLAN-Routers an (meist über die IP-Adresse des Routers im Browser, z.B.
192.168.1.1
oder192.168.178.1
für FRITZ!Box). Suchen Sie in der Liste der verbundenen Geräte nach „Shelly Plug S” oder einem Gerät mit dem „Shelly”-Prefix und notieren Sie sich dessen zugewiesene IP-Adresse (z.B.192.168.1.123
). Alternativ können Sie die Shelly Cloud App verwenden oder einen Netzwerkscanner. - API testen (optional): Öffnen Sie Ihren Webbrowser und geben Sie
http://[Ihre_Shelly_IP_Adresse]/status
ein (z.B.http://192.168.1.123/status
). Sie sollten eine JSON-Antwort sehen, die viele Informationen über den Shelly Plug S enthält, darunter auch den aktuellen Verbrauch untermeters[0].power
. Dies bestätigt, dass die API erreichbar ist.
Schritt 2: Das Python-Skript zur Datenabfrage erstellen
Wir erstellen ein Python-Skript, das die Shelly-API abfragt und den aktuellen Leistungswert in eine Textdatei schreibt.
- Bibliothek installieren: Öffnen Sie die Eingabeaufforderung (CMD) oder PowerShell als Administrator und geben Sie folgenden Befehl ein, um die
requests
-Bibliothek zu installieren, die für HTTP-Anfragen benötigt wird:pip install requests
- Skript erstellen: Öffnen Sie Ihren Texteditor und kopieren Sie den folgenden Code. Speichern Sie die Datei als
shelly_power_reader.py
in einem Ordner Ihrer Wahl, z.B.C:ShellyHWiNFO
. - Skript anpassen:
- Ändern Sie
SHELLY_IP = "192.168.1.123"
auf die tatsächliche IP-Adresse Ihres Shelly Plug S. - Stellen Sie sicher, dass der Pfad in
OUTPUT_FILE = "C:\ShellyHWiNFO\shelly_power.txt"
zu einem Ordner führt, den Sie erstellt haben oder erstellen werden (z.B.C:ShellyHWiNFO
). Das Skript erstellt die Datei selbst.
- Ändern Sie
- Skript testen: Öffnen Sie die Eingabeaufforderung (CMD), navigieren Sie zum Ordner, in dem Sie das Skript gespeichert haben (z.B.
cd C:ShellyHWiNFO
), und führen Sie es mitpython shelly_power_reader.py
aus. Prüfen Sie danach, ob die Dateishelly_power.txt
im angegebenen Pfad erstellt wurde und einen Wert enthält.
import requests
import json
import os
import time
# --- Konfiguration ---
SHELLY_IP = "192.168.1.123" # ERSETZEN SIE DIES MIT DER IP-ADRESSE IHRES SHELLY PLUG S
OUTPUT_FILE = "C:\ShellyHWiNFO\shelly_power.txt" # Pfad zur Ausgabedatei
# --- Ende Konfiguration ---
def get_shelly_power(ip_address):
"""
Fragt die Shelly Plug S API ab und gibt den aktuellen Verbrauch in Watt zurück.
"""
url = f"http://{ip_address}/status"
try:
response = requests.get(url, timeout=5)
response.raise_for_status() # Löst einen HTTPError für schlechte Antworten (4xx oder 5xx) aus
data = response.json()
# Der Shelly Plug S (Gen1) hat den Power-Wert in meters[0].power
if 'meters' in data and len(data['meters']) > 0 and 'power' in data['meters'][0]:
power_watts = data['meters'][0]['power']
return power_watts
else:
print(f"[{time.strftime('%Y-%m-%d %H:%M:%S')}] Fehler: 'power' nicht in Shelly-Antwort gefunden oder Struktur unerwartet.")
return None
except requests.exceptions.RequestException as e:
print(f"[{time.strftime('%Y-%m-%d %H:%M:%S')}] Fehler beim Abrufen der Shelly-Daten: {e}")
return None
except json.JSONDecodeError as e:
print(f"[{time.strftime('%Y-%m-%d %H:%M:%S')}] Fehler beim Parsen der JSON-Antwort: {e}")
return None
def write_power_to_file(power_value, filename):
"""
Schreibt den Leistungswert in eine Textdatei.
"""
try:
# Sicherstellen, dass der Verzeichnis existiert
os.makedirs(os.path.dirname(filename), exist_ok=True)
with open(filename, "w") as f:
f.write(str(power_value if power_value is not None else "0.0")) # Schreibe 0.0 bei Fehler
# print(f"[{time.strftime('%Y-%m-%d %H:%M:%S')}] Leistung {power_value} W erfolgreich in {filename} geschrieben.")
except IOError as e:
print(f"[{time.strftime('%Y-%m-%d %H:%M:%S')}] Fehler beim Schreiben in Datei {filename}: {e}")
if __name__ == "__main__":
current_power = get_shelly_power(SHELLY_IP)
write_power_to_file(current_power, OUTPUT_FILE)
Schritt 3: HWiNFO für benutzerdefinierte Sensoren konfigurieren
Jetzt bringen wir die Daten aus der Textdatei in HWiNFO.
- HWiNFO starten: Öffnen Sie HWiNFO. Wählen Sie beim Start die Option „Sensors-only”.
- Sensoren konfigurieren: Im Fenster „Sensor Status” klicken Sie auf das Zahnrad-Symbol („Configure Sensors”) oder navigieren Sie zu „File” -> „Sensors” -> „Configure Sensors”.
- Benutzerdefinierte Sensoren aktivieren: Gehen Sie zum Reiter „User-Defined Sensors”. Setzen Sie einen Haken bei „Enable User-Defined Sensors”.
- Neuen Sensor hinzufügen: Klicken Sie auf „Add” und konfigurieren Sie den Sensor wie folgt:
- Path: Geben Sie den vollständigen Pfad zu Ihrer
shelly_power.txt
-Datei ein (z.B.C:ShellyHWiNFOshelly_power.txt
). - Offset:
0
(Der Wert ist der erste in der Datei). - Multiplier:
1.0
(Der Wert ist bereits in Watt, keine Umrechnung nötig). - Name: Geben Sie einen aussagekräftigen Namen ein, z.B. „Shelly Plug S Power (PC)”.
- Unit:
W
(Watt). - Sensor Type: „Power”.
Bestätigen Sie mit „OK”.
- Path: Geben Sie den vollständigen Pfad zu Ihrer
- Anzeige anpassen (optional): Im Reiter „Sensors” können Sie noch die Anzeigeoptionen für Ihren neuen Sensor anpassen, z.B. wie er in der Sensorliste erscheint oder ob er in der Tray-Leiste angezeigt wird.
- Überprüfen: Schließen Sie das Konfigurationsfenster und schauen Sie im Hauptfenster „Sensor Status” nach. Sie sollten nun Ihren neuen Sensor „Shelly Plug S Power (PC)” sehen, der den Wert aus Ihrer Textdatei anzeigt. Falls er „0” anzeigt, stellen Sie sicher, dass das Python-Skript ausgeführt wurde und die Textdatei einen gültigen Wert enthält.
Schritt 4: Skript-Ausführung automatisieren (Windows Aufgabenplanung)
Damit die Verbrauchsdaten regelmäßig aktualisiert werden, richten wir eine automatische Ausführung des Python-Skripts ein.
- Aufgabenplanung öffnen: Suchen Sie im Windows Startmenü nach „Aufgabenplanung” und öffnen Sie diese.
- Neue Aufgabe erstellen: Klicken Sie im rechten Bereich auf „Aufgabe erstellen…”.
- Registerkarte „Allgemein”:
- Name: Geben Sie einen Namen ein, z.B. „Shelly Power Update”.
- Beschreibung: Optional, z.B. „Aktualisiert Shelly Plug S Verbrauchsdaten für HWiNFO”.
- Setzen Sie einen Haken bei „Unabhängig von Benutzeranmeldung ausführen” und „Mit höchsten Privilegien ausführen”.
- Registerkarte „Trigger”:
- Klicken Sie auf „Neu…”.
- Aufgabe starten: Wählen Sie „Nach einem Zeitplan”.
- Häufigkeit: „Täglich”.
- Wiederholen der Aufgabe alle: Wählen Sie hier einen Wert, z.B. „30 Sekunden” oder „1 Minute”. Eine Minute ist für die meisten Zwecke ausreichend und schont den Shelly.
- Für die Dauer von: „Unbegrenzt”.
- Aktivieren Sie „Aktiviert”. Bestätigen Sie mit „OK”.
- Registerkarte „Aktionen”:
- Klicken Sie auf „Neu…”.
- Aktion: „Programm starten”.
- Programm/Skript: Geben Sie den vollständigen Pfad zu Ihrer Python-Installation an, gefolgt von der Python-Exe. Das ist oft
C:UsersIHR_BENUTZERNAMEAppDataLocalProgramsPythonPython3xpython.exe
(ersetzen SieIHR_BENUTZERNAME
undPython3x
entsprechend Ihrer Installation). Alternativ können Sie einfachpython.exe
eingeben, wenn Python korrekt im PATH hinterlegt ist. - Argumente hinzufügen (optional):
C:ShellyHWiNFOshelly_power_reader.py
(Dies ist der vollständige Pfad zu Ihrem Python-Skript). - Starten in (optional):
C:ShellyHWiNFO
(Dies ist der Ordner, in dem sich Ihr Skript befindet). Dies ist wichtig, wenn Ihr Skript relative Pfade verwendet. - Bestätigen Sie mit „OK”.
- Bestätigen: Klicken Sie auf „OK”, um die Aufgabe zu speichern. Möglicherweise werden Sie nach den Anmeldeinformationen Ihres Benutzerkontos gefragt.
- Testen: Wählen Sie in der Aufgabenplanung Ihre neue Aufgabe aus und klicken Sie im rechten Bereich auf „Ausführen”. Überprüfen Sie, ob HWiNFO aktualisiert wird und die Textdatei korrekte Werte anzeigt.
Praxisnutzen und Vorteile der Integration
Die Integration des Shelly Plug S mit HWiNFO bietet eine Fülle von Vorteilen und neuen Möglichkeiten für das PC-Monitoring und die Energieeffizienz:
- Präzise Leistungsanalyse: Egal ob beim Gaming, Video-Rendering, Benchmarking oder Mining – Sie sehen genau, wie viel Watt Ihr gesamtes System in Echtzeit zieht. Das ist eine unschätzbare Information für die Optimierung der Leistung pro Watt.
- Energieeffizienz und Kostenkontrolle: Identifizieren Sie Stromfresser im Leerlauf oder unter Last. Erkennen Sie unnötige Energieverbräuche und optimieren Sie Ihre Hardware-Konfiguration oder Software-Einstellungen, um Stromkosten zu sparen. Langfristig können Sie so Ihre Energieeffizienz erheblich steigern.
- Systemstabilität und Fehlerdiagnose: Ungewöhnliche Lastspitzen oder plötzliche Abfälle in der Leistungsaufnahme können auf Hardware-Probleme, Software-Fehler oder Instabilitäten hindeuten. Mit den Shelly-Daten in HWiNFO haben Sie einen weiteren Diagnosereferenzpunkt.
- Erweiterte Smart Home Szenarien: Obwohl HWiNFO selbst kein Smart-Home-System ist, können die gewonnenen Daten über andere Wege (z.B. Logging-Funktion von HWiNFO oder das Python-Skript selbst) in Smart-Home-Dashboards integriert werden, die den Gesamtverbrauch des PCs visualisieren.
- Visualisierung: Die Integration ermöglicht es Ihnen, den Verbrauch Ihres PCs direkt neben CPU-Temperatur, GPU-Auslastung und anderen relevanten Systemmetriken zu sehen, was ein ganzheitliches Bild der Systemgesundheit und -leistung liefert.
Herausforderungen und Optimierungstipps
Obwohl die Methode robust ist, gibt es einige Punkte zu beachten:
- Netzwerkstabilität: Eine stabile WLAN-Verbindung zwischen Shelly Plug S und Ihrem PC ist essenziell. Bei Verbindungsproblemen kann das Skript keine Daten abrufen.
- Skript-Wartung und Fehlerbehebung: Stellen Sie sicher, dass das Python-Skript korrekt konfiguriert ist und über die notwendigen Berechtigungen verfügt. Fehlermeldungen in der Konsole können bei der Diagnose helfen.
- Latenz und Aktualisierungsrate: Die Datenaktualisierung hängt vom Intervall der Aufgabenplanung ab. Für Echtzeit-Monitoring ist ein kurzes Intervall (z.B. 10-30 Sekunden) empfehlenswert. Bedenken Sie, dass jede Abfrage eine kleine Last für den Shelly und Ihr Netzwerk darstellt.
- Alternative Implementierungen: Für technisch versiertere Nutzer oder wenn Sie bereits ein Home Automation System wie Home Assistant nutzen, können Sie Home Assistant die Shelly-Daten auslesen lassen und diese dann über eine MQTT-Bridge oder eine lokale API an ein spezialisiertes HWiNFO-Addon oder ein angepasstes Skript senden. Dies ist jedoch aufwendiger als die hier beschriebene direkte Methode.
Fazit: Mehr Kontrolle und Transparenz für Ihren PC-Betrieb
Die Integration des Shelly Plug S in HWiNFO ist ein exzellentes Beispiel dafür, wie Smart-Home-Technologie und PC-Monitoring-Tools synergetisch zusammenarbeiten können. Mit dieser Anleitung haben Sie die Möglichkeit, die Verbrauchsdaten Ihres PCs in Echtzeit zu überwachen, tiefere Einblicke in seine Leistungsaufnahme zu erhalten und letztendlich Ihre Energieeffizienz zu verbessern. Es ist ein DIY-Projekt, das nicht nur Spaß macht, sondern auch handfeste Vorteile bietet – von der Kosteneinsparung bis hin zu einem besseren Verständnis Ihres Systems. Nehmen Sie die Kontrolle über Ihre Verbrauchsdaten in die Hand und machen Sie Ihr PC-Setup smarter und effizienter!