Ich habe ein Kostal Smart Energy Meter (KSEM) für die Messung des gesamten Haushalts-Energieverbrauch eingebaut und möchte diesen über Modbus TCP an den Miniserver anbinden.
Der KSEM ist nicht an einen Wechselrichter gekoppelt - er dient lediglich als Energiezähler.
Leider gelingt es mir auf keine Art, den Zähler mit dem Miniserver auszulesen. Ich habe mich in das Thema Modbus TCP eingelesen, habe aber keine Erfahrung. Würdet Ihr mich bitte unterstützen? Ich beschreibe nachfolgend mein Vorgehen, Gedanken und Fragen dazu und wäre sehr dankbar um alle Inputs, Korrekturen und konkreten Anweisungen von jedem erfahrenen Modbus Loxonauten.
Herzlichen Dank und Gruss
Roger
1. Master / Slave vs. Client / Server
So habe ich das Modbus Prinzip verstanden:
- Der Miniserver fungiert als als Modbus Client, der auf den TCP/IP Port 502, des im KSEM eingebauten Modbus Servers zugreift.
- Der Modbus TCP Client wird je nach Anbieter oder Quelle auch als Master bezeichnet. Analog dazu wird der Server auch als Slave bezeichnet.
2. Konfiguration KSEM
Damit das KSEM als Server (Slave) funktioniert, hab ich im Menü Modbus-Einstellungen des KSEM den Schalter Aktiviere TCP-Slave aktiviert.
3. Grundkonfiguration Loxone Modbus TCP
A) In der Loxone Config hab ich dann als ersten Schritt eine Miniserverkommunikation zu einem Modbusserver eingefügt.
Anmerkung: Im ersten Moment war das Modbusserver-Icon für mich als Modbus-Einsteiger irritierend. Ich glaubte instinktiv einen Baustein, also einen Modbusserver einzufügen. Nach genauer Betrachtung der Konfigurationsmöglichkeiten, kam ich zur Erkenntnis, dass das was ich eingefügt hatte, eigentlich eher eine Modbus Clientkonfiguration sein müsste.
B) Dem Element Modbusserver habe ich die Server IP Adresse des KSEM mit Port 502 eingetragen.
Anmerkung: Der Loxone Knowledebase-Artikel Kommunikation mit Modbus TCP hat zusätzlich zur Verwirrung beigetragen, da sie dort explizit von einer Client IP-Adresse sprechen (was einer Modbus Master IP Adresse entsprechen würde):
C) Dann fügte ich ein Modbusgerät ein. Diesem muss man die Modbus-Adresse zuweisen. Gemäss verschiedener Informationen aus dem Netz muss diese vom Hersteller bekannt gegeben werden. Die Adresse soll oftmals auch die 1 sein und müsse nicht verändert werden.
Im Manual von Kostal, aber auch sonst im Netz, konnte ich diese Modbus-Adresse des KSEM nirgends finden.
Da ich die Verbindung zwischen Client und Servier nicht zum Laufen brachte, habe ich zum Vergleich in der Lox Config das vordefinierte Gerät Kostal Modbus-TCP and Battery eingefügt. Dort ist die Modbus-Adresse 71 hinterlegt.
Dem entnehme ich, dass Kostal nicht zwingend die Default Modbus-Adresse 1 verwendet. Natürlich habe ich auf die 71 versucht und trotzdem keine Verbindung hingekriegt.
Eventuell liegt der Fehler (oder einer davon) schon hier begraben. Kennt jemand die effektive Modbus-Adresse des Kostal Smart Energy Meters oder weiss, wie man diese rausfindet?
4. Sensoren und Datenabfrage
a) Als nächstes habe ich in der Lox Config einen Analogsensor hinzugefügt. Und hier fängt die "Magie" erst richtig an.
Das Manual von Kostal gibt hier viele Angaben.
Da Ziel wäre nun, die folgenden Abfragen zu machen:
- Aktueller Leistungsbezug in kW (über alle 3 Phasen)
- Gesamte bezogenen Leistung in kWh
- Den Verbrauch mit dem Baustein Energiemonitor zu visualisieren
- diese zwei Beispiel-Konfigurationen zur Verfügung stellen
- erläutern, auf Grund welcher Informationen im Manual man zu diesen Konfigurationsparametern kommt
Kommentar