Einrichtungsanleitung für den Home Assistant Modbus TCP-Energiezähler
Home Assistant Modbus TCP Energiezähler-Integration
Modbus TCP ist eine der schnellsten Methoden, um einen Energiezähler mit Home Assistant zu verbinden. Es funktioniert über das lokale Netzwerk, ist nicht von einer Internetverbindung abhängig und eignet sich für Echtzeit-Energieüberwachung, Solar-Überschuss-Automatisierung, Laststeuerung und das Home Assistant Energy Dashboard.
Alle aktuellen IAMMETER Energiezähler unterstützen Modbus TCP. Sie können sie auf zwei Arten in Home Assistant integrieren:
- IAMMETER HACS Modbus-Integration — UI-Konfiguration, automatisch erstellte Entitäten und ein konfigurierbares Abfrageintervall.
- Home Assistant integrierte Modbus-Integration — YAML-Konfiguration mit direkter Kontrolle über Register und Sensoren.
Diese Anleitung erklärt die Unterschiede und hilft Ihnen, die richtige Methode zu konfigurieren.
HACS Modbus oder integrierter Home Assistant Modbus?
Beide Methoden lesen dieselben lokalen Modbus TCP-Daten vom Zähler. Der Hauptunterschied besteht darin, wie die Home Assistant-Entitäten konfiguriert werden.
| Funktion | IAMMETER HACS Modbus | Home Assistant integrierter Modbus |
|---|---|---|
| HA-seitige Konfiguration | UI | YAML |
| Registerkonfiguration | Von der Integration erstellt | Manuell definiert |
| Abfrageintervall | Konfigurierbar; Standard 3 Sekunden | Konfigurierbar pro Sensor |
| Energy Dashboard-Metadaten | Für unterstützte Energie-Entitäten enthalten | Muss in YAML konfiguriert werden |
| Automatische/unterstützte Erkennung | SSDP-gestützte Einrichtung | Nein |
| Lokaler Betrieb | Ja | Ja |
| Kann IAMMETER Cloud weiterhin nutzen | Ja | Ja |
| Am besten geeignet für | Die meisten Home Assistant-Benutzer | Fortgeschrittene Benutzer und benutzerdefinierte Register |
Für die meisten Benutzer ist die HACS Modbus-Integration die einfachere Option. Verwenden Sie die integrierte Modbus-Integration von Home Assistant, wenn Sie eine benutzerdefinierte Registerliste, ein eigenes Benennungsschema für Entitäten, eine Skalierungsregel oder ein individuelles Abfrageintervall für einzelne Sensoren benötigen.
Wenn Sie keine schnellen Aktualisierungen benötigen, vergleichen Sie die HTTP- und MQTT-Alternativen in der Home Assistant Energiezähler-Integrationsübersicht.
Bevor Sie beginnen
Sie benötigen:
- einen IAMMETER Energiezähler, der mit demselben LAN wie Home Assistant verbunden ist;
- die lokale IP-Adresse des Zählers;
- TCP-Port
502, der zwischen Home Assistant und dem Zähler erreichbar ist; - eine aktuelle Firmware-Version des Zählers;
- installiertes HACS, wenn Sie die IAMMETER HACS-Integration wählen.
Es ist empfehlenswert, die IP-Adresse des Zählers in Ihrem Router zu reservieren. Eine sich ändernde DHCP-Adresse ist ein häufiger Grund dafür, dass eine funktionierende Modbus-Integration später nicht mehr verfügbar ist.
Methode 1: IAMMETER Modbus über HACS konfigurieren
Die IAMMETER HACS Modbus-Integration wurde für Benutzer entwickelt, die schnelle lokale Daten wünschen, ohne jedes Register manuell in YAML definieren zu müssen.
Schritt 1: Integration installieren
- Öffnen Sie HACS in Home Assistant.
- Suchen Sie nach IamMeter Modbus.
- Installieren Sie die neueste Version.
- Starten Sie Home Assistant neu, wenn dazu aufgefordert.
Projekt- und Versionsinformationen:
Verwenden Sie die neueste verfügbare Version. Die Einstellung des Abfrageintervalls wird von der aktualisierten Integration unterstützt und an den DataUpdateCoordinator übergeben.
Schritt 2: Zähler in Home Assistant hinzufügen
- Gehen Sie zu Einstellungen → Geräte & Dienste.
- Wählen Sie Integration hinzufügen.
- Suchen Sie nach IamMeter Modbus.
- Geben Sie die IP-Adresse des Zählers und den Modbus TCP-Port ein.
- Wählen Sie den entsprechenden Zählertyp oder die Phasenkonfiguration.
- Stellen Sie das Abfrageintervall ein oder behalten Sie den Standardwert von 3 Sekunden bei.
- Bestätigen Sie das Formular und überprüfen Sie, ob das Gerät und die Entitäten erstellt wurden.
Die Integration erstellt eine unterschiedliche Anzahl von Entitäten für einphasige, zweikanalige und dreiphasige Zähler. Eine kürzere Entitätenliste bedeutet nicht, dass ein einphasiges Modell nur eingeschränkten Home Assistant-Support hat.
Schritt 3: Entitäten überprüfen
Öffnen Sie das IAMMETER-Gerät unter Einstellungen → Geräte & Dienste. Je nach Modell können die verfügbaren Entitäten Folgendes umfassen:
- Spannung;
- Strom;
- Wirkleistung;
- Leistungsfaktor;
- importierte Energie;
- exportierte Energie;
- Blindleistung oder Blindenergie, wenn sie vom entsprechenden Zähler und Registersatz bereitgestellt werden.
Importierte und exportierte Energie-Entitäten verwenden kWh und enthalten die Home Assistant-Energiemetadaten, die für das Energy Dashboard erforderlich sind.
Schritt 4: Ein geeignetes Abfrageintervall wählen
Das Standard-Abfrageintervall beträgt 3 Sekunden. Dies ist ein praktischer Ausgangspunkt für Live-Dashboards und leistungsbasierte Automatisierungen.
Empfohlene Ausgangspunkte:
| Anwendung | Empfohlenes Abfrageintervall |
|---|---|
| Echtzeit-Relais oder Solar-Überschuss-Steuerung | 1–5 Sekunden |
| Live-Leistungs-Dashboard | 3–10 Sekunden |
| Allgemeine Energieüberwachung | 10–30 Sekunden |
Eine Einstellung von einer Sekunde ist eine Abfrageanforderung, keine Garantie dafür, dass sich jedes Home Assistant-Dashboard sichtbar einmal pro Sekunde aktualisiert. Netzwerklatenz, die Anzahl der Register, die Auslastung des Recorders und das Frontend-Aktualisierungsverhalten beeinflussen ebenfalls das Ergebnis.
Vermeiden Sie unnötig aggressive Abfragen. Für die meisten Automatisierungen ist ein stabiles Aktualisierungsintervall von 2–5 Sekunden sinnvoller als das kürzestmögliche Intervall.
Methode 2: Home Assistant integrierte Modbus-Integration verwenden
Home Assistant enthält eine standardmäßige Modbus-Integration. Diese Methode ist vollständig lokal und erfordert kein HACS, aber die Verbindung und die Sensoren werden in YAML definiert.
Das folgende Beispiel liest Spannung und Wirkleistung von einem einphasigen Zähler:
modbus:
- name: iammeter_hub
type: tcp
host: 192.168.1.6
port: 502
sensors:
- name: IAMMETER Voltage
slave: 1
address: 0
input_type: holding
data_type: uint16
scale: 0.01
precision: 1
unit_of_measurement: V
device_class: voltage
state_class: measurement
scan_interval: 5
- name: IAMMETER Active Power
slave: 1
address: 2
input_type: holding
data_type: int32
unit_of_measurement: W
device_class: power
state_class: measurement
scan_interval: 5
Ersetzen Sie 192.168.1.6 durch die tatsächliche IP-Adresse des Zählers. Überprüfen Sie die entsprechende Registerkarte, bevor Sie weitere Sensoren hinzufügen:
Allgemeine IAMMETER Modbus-Register
Die folgenden Adressen veranschaulichen die standardmäßigen Phasenblöcke, die von gängigen IAMMETER-Zählern verwendet werden. Verwenden Sie stets die aktuelle Registerdokumentation als maßgebliche Referenz.
| Messung | Phase A / Einphasig | Phase B | Phase C | Datentyp |
|---|---|---|---|---|
| Spannung | 0 | 10 | 20 | uint16 |
| Strom | 1 | 11 | 21 | uint16 |
| Wirkleistung | 2 | 12 | 22 | int32 |
| Importierte Energie | 4 | 14 | 24 | uint32 |
| Exportierte Energie | 6 | 16 | 26 | uint32 |
Verwenden Sie die dokumentierte Skalierung, Genauigkeit und Wortreihenfolge für jedes Register. Leiten Sie die Energieskalierung nicht aus dem Spannungsbeispiel ab.
Nach der Bearbeitung der YAML-Datei:
- führen Sie die Home Assistant-Konfigurationsprüfung durch;
- starten Sie Home Assistant neu;
- öffnen Sie Entwicklerwerkzeuge → Zustände;
- bestätigen Sie, dass die neuen Entitäten plausible Werte und Einheiten haben.
Importierte und exportierte Energie zum Energy Dashboard hinzufügen
Das Home Assistant Energy Dashboard benötigt kumulative Energie-Entitäten, nicht die momentane Leistung.
Fügen Sie für einen manuell konfigurierten Modbus-Energiesensor die entsprechenden Metadaten hinzu:
unit_of_measurement: kWh
device_class: energy
state_class: total_increasing
Gehen Sie dann zu Einstellungen → Dashboards → Energie und wählen Sie die importierte Energie-Entität als Netzbezug und die exportierte Energie-Entität als Netzeinspeisung aus.
Wählen Sie keine Wirkleistungs-Entität, die in Watt gemessen wird, für ein Energy Dashboard-Energiefeld aus. Die Leistung zeigt den aktuellen Wert an; importierte/exportierte kWh erfassen die kumulative Energie.
Unterstützte IAMMETER-Modelle
Alle aktuellen IAMMETER Energiezähler unterstützen sowohl HACS Modbus als auch die integrierte Modbus-Integration von Home Assistant.
| Modell | Zählerkonfiguration | Home Assistant-Hinweis |
|---|---|---|
| WEM3080 | Einphasig | Einphasiger Entitätensatz |
| WEM2067 | Zweikanalig für einphasige Anwendungen | Zwei Messkanäle |
| WEM3080T | Dreiphasig | Drei Phasen-/Entitätengruppen |
| WEM3050T | Dreiphasig oder Split-Phase | Drei Messkanäle |
| WEM3080TD | Dreiphasig/Dreileiter und spezielle Verkabelung | Entitäten entsprechend der Verdrahtungsart interpretieren |
| WEM3046T / WEM3046TE | Externer 5 A CT-Eingang | Externes CT-Übersetzungsverhältnis anwenden |
WEM3046T und WEM3046TE messen den 5 A-Sekundärausgang eines externen Stromwandlers. Um den tatsächlichen primärseitigen Strom, die Leistung und die Energie zu erhalten, muss das korrekte CT-Übersetzungsverhältnis angewendet werden. Dies ist eine Eigenschaft des 5 A-CT-Messsystems, keine Einschränkung der Home Assistant- oder Modbus-Kompatibilität.
Können Modbus und IAMMETER Cloud gleichzeitig verwendet werden?
Ja. Home Assistant liest Modbus TCP lokal, während der Zähler weiterhin Daten an die IAMMETER Cloud hochladen kann. Sie müssen den Zähler nicht in den MQTT-Upload-Modus ändern, um Modbus zu verwenden.
Dies bietet Ihnen zwei komplementäre Ansichten:
- schnelle lokale Daten und Automatisierungen in Home Assistant;
- langfristige Berichte, Stromkostenanalyse, Solaranalyse und Fernzugriff in der IAMMETER Cloud.
Mehrere hochfrequente Modbus-Clients vermeiden
Verwenden Sie einen aktiven Modbus TCP-Abfrage-Client pro Zähler als sicheres Bereitstellungsmodell. Konfigurieren Sie nicht Home Assistant, Node-RED, eine SPS und einen weiteren Logger so, dass sie denselben Zähler unabhängig voneinander mit hoher Frequenz abfragen.
Wenn mehrere Systeme dieselben Live-Messungen benötigen, lassen Sie ein System Modbus lesen und die Daten weiterverteilen, oder verwenden Sie eine MQTT-Architektur, bei der mehrere Verbraucher einen Broker abonnieren.
Fehlerbehebung
Home Assistant kann keine Verbindung zu Port 502 herstellen
- Stellen Sie sicher, dass Home Assistant und der Zähler sich im selben erreichbaren Netzwerk befinden.
- Überprüfen Sie die IP-Adresse des Zählers und reservieren Sie sie im Router.
- Prüfen Sie, ob TCP-Port
502nicht durch eine Firewall oder VLAN-Regel blockiert wird. - Stellen Sie sicher, dass kein anderer Modbus-Client die Verbindung hält oder wiederholt neu öffnet.
Entitäten sind nicht verfügbar oder Werte ändern sich nicht
- Überprüfen Sie den ausgewählten Zähler-/Phasentyp in der HACS-Integration.
- Überprüfen Sie bei YAML die Slave-ID, die Registeradresse, den Datentyp, die Skalierung und die Wortreihenfolge.
- Erhöhen Sie das Abfrageintervall vorübergehend, um übermäßig aggressive Abfragen auszuschließen.
- Starten Sie die Integration nach einer Änderung der IP-Adresse des Zählers neu.
Werte sind unrealistisch hoch oder niedrig
- Überprüfen Sie die Registerskalierung und den Datentyp.
- Überprüfen Sie bei WEM3046T/WEM3046TE das externe CT-Übersetzungsverhältnis.
- Bestätigen Sie, dass die Entität der erwarteten Phase oder dem erwarteten Messkanal entspricht.
Energie-Entitäten erscheinen nicht im Energy Dashboard
- Verwenden Sie kumulative importierte/exportierte Energie in kWh.
- Bestätigen Sie
device_class: energy. - Bestätigen Sie
state_class: total_increasing. - Verwenden Sie keine Leistungs-Entität in Watt.
Automatisierungen mit Echtzeit-Leistungsdaten erstellen
Sobald die Modbus-Entitäten funktionieren, kann Home Assistant die Wirkleistung oder die Netzeinspeisung verwenden, um andere Geräte zu steuern. Beispiele:
- ein Relais über Echtzeit-Modbus-Leistungsdaten steuern;
- ein Elektrofahrzeug laden, wenn die Solareinspeisung einen Schwellenwert überschreitet;
- Wasser mit verfügbarem Solarüberschuss erwärmen;
- den Benutzer benachrichtigen, wenn der Haushaltsverbrauch einen Grenzwert überschreitet;
- eine steuerbare Last reduzieren, bevor teurer Spitzenstrom importiert wird.
Konzentrieren Sie sich in der Integrationsanleitung zunächst darauf, zuverlässige Daten zu etablieren. Fügen Sie Steuerungslogik erst hinzu, nachdem Sie die Vorzeichenkonvention, Einheiten, das Aktualisierungsintervall und das Verhalten bei Nichtverfügbarkeit des Zählers überprüft haben.