wie im Teaser zum NRG-Stack (Vorankündigung) angekündigt, stelle ich die Module einzeln vor - hier WPModbusHub, die lokale Modbus-Anbindung für Wärmepumpen.
Worum geht es?
WPModbusHub liest eine Wärmepumpe direkt per Modbus TCP im lokalen Netz aus - ganz ohne Internet und ohne Herstellerkonto. Dritter Baustein der Wärmepumpen-Vertikale im NRG-Stack, neben WPHub (Herstellerclouds: Panasonic, Vaillant) und HeishaMon (lokal, nur Panasonic mit HeishaMon-Platine):
Modul
Weg
Hersteller
WPHub
Cloud (Internet nötig)
Panasonic, Vaillant, weitere geplant
HeishaMon
lokal, MQTT
nur Panasonic (mit HeishaMon-Platine)
WPModbusHub
lokal, Modbus TCP
NIBE, Stiebel Eltron, LG, Samsung
Eine Instanz = eine Wärmepumpe. Eine Hersteller-Auswahl im Formular schaltet auf das passende Registerprofil um.
Funktionsumfang
NIBE (S-Serie, z. B. S1155/S1255/S2125) - Registerkarte aus einer aktiv gepflegten, unabhängigen Referenzbibliothek.
Stiebel Eltron (ISG-Gateway, WPMsystem/WPM3/WPM3i/LWZ) - Registerkarte direkt aus der offiziellen Stiebel-Eltron-Bedienungsanleitung „ISG Modbus“.
LG Therma V - Registerkarte aus einer community-gepflegten Konfiguration, keine offizielle LG-Quelle gefunden.
Samsung EHS über das offizielle Zubehör-Modul MIM-B19N - Registerkarte aus einer Community-Sammlung, die sich auf Samsungs offizielle MIM-B19N-Installationsanleitung beruft. Gilt nur für Anlagen MIT diesem Zubehörmodul - für Samsung EHS ohne MIM-B19N (direkt über das interne NASA-Protokoll) gibt es das eigenständige Schwestermodul SamsungEhs.
Ausgelesen werden aktuell Außentemperatur, Vorlauf-/teils Rücklauftemperatur sowie teils Warmwasser Ist/Soll und Heizzonen-Temperaturen - noch keine Leistungs- oder Energiezähler. Vertrag WPMBHUB_GetFunctions() liefert dieselbe Form wie WPHub/HeishaMon - Verbund-Module (EMS, Dashboard) behandeln alle Wärmepumpen-Quellen identisch.
Keine der vier Registerkarten ist an echter Hardware verifiziert - ich habe selbst keine dieser Anlagen. Jede Registerkarte trägt im Formular einen eigenen Herkunfts- und Vertrauenshinweis. Bewusst nur lesend, keine Steuerbefehle.
Voraussetzungen
IP-Symcon 9.0 oder neuer
Netzwerkzugriff auf die Wärmepumpe bzw. das jeweilige Modbus-Gateway
Einrichtung in Kürze
Modulverwaltung → Modul-Store → ggf. erst „Beta-Module anzeigen“ aktivieren → nach „NRG-Stack WPModbusHub“ suchen → hinzufügen.
Instanz „WPModbusHub“ anlegen, Hersteller wählen.
IP-Adresse, Port und Unit-ID eintragen, übernehmen.
„WPModbusHub aktiv“ einschalten und erneut übernehmen.
Das Modul ist neu und an keinem der vier Hersteller live getestet - über Rückmeldungen freue ich mich hier im Thread. Besonders gesucht: Tester mit einer NIBE-, Stiebel-Eltron-, LG- oder Samsung-Anlage (mit MIM-B19N).
ich habe eine Proxonx Wärmepumpe welche wohl in sehr vielen Fertighäusern verbaut wird.
Die Anlage wird per ModBus abgefragt und lässt sehr viel Steuerung zu.
Hallo Dietmar,
ich habe eine IDM ALM Wärmepumpe.
Diese habe ich über Modbus hier in IP-Symcon angebunden.
Könnte man diese auch in dein Modul integrieren?
schön, mal wieder von dir zu lesen! Eine IDM-Anbindung wäre ein sinnvoller sechster Hersteller für mein WPModbusHub-Modul (aktuell NIBE, Stiebel Eltron, LG Therma V, Samsung EHS und Waterkotte).
Da du die IDM ALM bei dir schon selbst per Modbus in IP-Symcon eingebunden hast: Könntest du mir deine Register-Zuordnung schicken (welche Modbus-Adressen du für Außentemperatur, Vorlauf, Rücklauf, Warmwasser Ist/Soll usw. nutzt, und ob das Holding- oder Input-Register sind, mit welcher Skalierung)? Das wäre die beste Quelle überhaupt - direkt von einer echten, laufenden Anlage getestet, nicht nur aus einer PDF oder einem Forenpost übernommen. Ich schau parallel auch, ob IDM selbst eine offizielle Modbus-Dokumentation veröffentlicht hat.
Kein Stress, wenn das Zusammensuchen Zeit braucht - meld dich einfach, wenn du dazu kommst.
klingt interessant, danke für den Hinweis! Ich hab schon mal nachgeschaut: Proxon ist ein eigenständiges System der Zimmermann Lüftungs- und Wärmesysteme GmbH & Co. KG, kein Rebrand eines mir bereits bekannten Herstellers (WeberHaus/Fingerhaus & Co. sind da nur Einbaupartner, nicht der Hersteller). Technisch besteht das aus zwei Teilen - einer Lüftungs-/Wärmepumpenzentrale (FWT 1.x/2.0, dort sitzt auch die Modbus-Schnittstelle, nativ RS485 an Port X6) und einer separaten Trinkwasser-Wärmepumpe (T300).
Zimmermann scheint eine offizielle Modbus-Dokumentation zu haben („Kurzbeschreibung GLT-Schnittstelle FWT2.0“ plus eine Registerliste als Excel), die aber nicht öffentlich online steht, sondern offenbar nur auf Kundenanfrage rausgeht. Zwei Fragen dazu:
Hast du als Proxon-Besitzer schon eine dieser beiden Dateien, oder könntest du sie bei Zimmermann anfragen? Das wäre die verlässlichste Quelle - direkt vom Hersteller, nicht nur aus einer Forenzusammenfassung.
Falls du die Anlage selbst schon per Modbus ausliest: Welche Adressen/Register nutzt du dafür konkret (Außentemperatur, Vorlauf, Warmwasser usw.), und sind das Holding- oder Input-Register?
Mein Modul (WPModbusHub) deckt aktuell NIBE, Stiebel Eltron, LG Therma V, Samsung EHS, Waterkotte und IDM ab - Proxon als siebter Hersteller wäre gut machbar, sobald die Registeradressen einigermaßen gesichert sind.
eine IDM-Anbindung ist jetzt drin - ich habe nicht auf deine Rückmeldung gewartet, sondern hab direkt IDMs eigene offizielle Modbus-Dokumentation gefunden („Modbus TCP Navigatorregelung 2.0“, Dok. 812170_Rev.10) und daraus einen sechsten Hersteller-Treiber gebaut (0.3.0, gerade gepusht). Die gilt laut IDM für alle Wärmepumpen mit Navigator-2.0-Regelung, sollte also auch für deine ALM passen - namentlich auf die ALM-Serie zugeschnitten ist sie aber nicht, insofern wäre ein echter Test bei dir Gold wert.
Ausgelesen werden (alles direkt aus der PDF-Registertabelle):
Technische Besonderheit bei IDM (falls dich das interessiert): Als einziger Hersteller in meinem Modul überträgt die Navigatorregelung die Werte als 32-Bit-Fließkommazahl über zwei Register, nicht als einfache Ganzzahl mit Faktor - und dabei auch noch in vertauschter Wortreihenfolge. Mein Modul rechnet das jetzt entsprechend um.
Falls du magst: Könntest du das mal gegen deine echte Anlage testen (Hersteller „IDM Energiesysteme“ im Formular auswählen, IP/Port eintragen)? Und falls du deine eigene, bereits laufende Modbus-Konfiguration griffbereit hast - selbst wenn die Anbindung jetzt schon steht, wäre ein Abgleich der Adressen eine gute Gegenprobe, ob die PDF-Werte bei der ALM konkret so stimmen. Bislang ist noch keiner der sechs Wärmepumpen-Hersteller in meinem Modul an echter Hardware verifiziert, insofern zählt jeder echte Test.
Ich hab die Execl Datei sowohl für die FWT als auch die T300.
Ausgelesen (und auch gesteuert) wir alles möglich. Von der Lüfterdrezahl und dem Betriebsmodus bis hin zu Störungen und Fehler Meldungen im Frequenzumrichter
Die Geräte sind sehr Kommunikativ und geben allerhand Daten Preis.
Es sind sowohl Input als auch Holding Register.
Ich habe eine komplette Steuerung für die Anlage gebaut und betreibe sie im Manuelllen Modus ohne Hersteller Regeulung, angepasst an meine Bedürfnisse.
Hier ein kurzes Summary via MCP von Codex:
• ## Kurzfassung
In IP-Symcon werden die Proxon-Anlage und die T300 über den seriellen Anschluss #47843 / COM7 ausgelesen:
19200 Baud
8 Datenbits
Even Parity
1 Stopbit
Port aktuell geöffnet
Insgesamt sind unter Technik/Proxon etwa 250 Variablen vorhanden.
Proxon FWT
Auslesbar sind unter anderem:
Betriebsart und Betriebsmodus
Heizen, Kühlen, Lüften und Bypass
Kompressorleistung und Kompressordrehzahl
Zu- und Abluftdrehzahlen
Temperaturen wie T1, T3, T4, T5, T6, T7, T8, T10, T11, T13 und T14
Verdampfer- und Kondensatorwerte
Drücke und Überhitzung
E-Ventilpositionen
4-Wege-Ventil
PTC-Freigaben und aktive PTCs
Filterlaufzeiten und Gerätefilterstandzeiten
Betriebsstunden von Lüftern, Kompressor, Vorwärmung und Abtauung
Schieberposition und Schieberlaufzeiten
Kühlfreigabe und Kühlbedarf
Leistungsbegrenzungen und Temperaturgrenzen
FU-Status, Motorströme und FU-Temperaturen
Modbus-, Paket-, Restart- und Fehlerzähler
Fehlerstatus, Errorcodes und zentrale Störung
Diagnoseprotokoll und CSV-Archivierung
T300
Auslesbar sind unter anderem:
T300-Betriebsart und Automatikmodus
Normaler Warmwasser-Sollwert
E-Heiz-Sollwert
E-Heizung Ein/Aus
Abtauung
Kompressorstatus
Ventilatorgeschwindigkeit und Drehzahl
Tanktemperaturen unten und Mitte
gemittelte Behältertemperatur
aktuelle Solltemperatur
Verdampfertemperatur
Sauggastemperatur
Kompressortemperatur
Verdampferdruck
Fehler- und Restartzähler
Notbetrieb
Fehlerliste
Abtau- und Schutzzeiten
Tages-, Nacht- und PV-Solltemperatur
Nachtabsenkung
Zusätzlich werden Rohwerte und teilweise bereinigte beziehungsweise korrigierte Werte parallel geführt.
Raum- und Energieinformationen
Vorhanden sind außerdem:
Ist-Temperaturen für Büro, Flur, Kinderzimmer, Schlafzimmer und Wohnzimmer
Basis- und Solltemperaturen
Sollwert-Offsets
PTC-Freigabe und PTC-Zustand je Raum
Gesamtverbrauch
Einige Register sind Rohwerte und müssen über die zugehörigen „Cleared“-Variablen bewertet werden.
Was damit möglich ist
In IP-Symcon sind bereits Steuerungen vorgesehen für:
automatische T300-Wassertemperatur
Umschaltung zwischen Tag-, Nacht- und PV-Sollwert
Erhöhung der Temperatur bei Duschen oder Baden
Freigabe beziehungsweise Abschaltung der E-Heizung
Intensivlüftung der FWT mit einstellbarer Laufzeit
Auswahl der Lüfterstufe
Umschaltung Sommer/Winter/Manuell
Rückkehr zum vorherigen Betriebsmodus nach der Intensivlüftung
Wow, das ist deutlich mehr, als ich erwartet hatte - 250 Variablen und schon eine komplette Eigensteuerung, sehr beeindruckend! Und gut zu wissen, dass du die offizielle Excel-Registerliste von Zimmermann schon hast - das ist die verlässlichste Quelle, die es für Proxon geben kann.
Zwei Dinge brauche ich noch, um daraus einen Treiber zu bauen:
1. Die Anbindung läuft bei dir über einen seriellen COM-Port (COM7, 19200 Baud), nicht über Modbus TCP/Ethernet. Mein Modul spricht bisher nur Modbus TCP (reine Socket-Verbindung zu einer IP-Adresse, kein serieller Port). Hast du dafür einen RS485-zu-Ethernet-Adapter im Einsatz oder direkt einen USB-RS485-Dongle am Symcon-Host stecken? Falls es ein Netzwerk-Adapter ist, wäre das Modbus TCP direkt kompatibel. Falls es ein lokaler USB-Dongle ist, bräuchte mein Modul dafür eine eigene Transportart (native serielle Anbindung à la IP-Symcons Serial-Port-Instanzen) - das ist eine größere Erweiterung als nur eine neue Registerkarte, aber grundsätzlich machbar, wenn es sich lohnt.
2. Für den Einstieg reicht mir ein kleiner Ausschnitt aus der Excel, nicht die ganzen 250 Variablen. Konkret die Adressen (+ Datentyp/Skalierung, Holding oder Input) für:
Außentemperatur
Vorlauf- und Rücklauftemperatur (FWT bzw. T300)
Warmwassertemperatur Ist und Soll (T300)
eine der Raumtemperaturen (Ist/Soll), falls vorhanden
falls leicht ersichtlich: welcher deiner T1/T3/T4/…-Sensoren welche physikalische Bedeutung hat (Außenluft, Zuluft, Abluft usw.) - deine Liste nennt nur die Kennungen, nicht die Zuordnung
Den Rest (Kompressor, Ventile, Drücke, Diagnose usw.) heb ich mir für eine spätere Erweiterung auf - v1 orientiert sich bei allen Herstellern an denselben Grundwerten, die auch die anderen Module liefern.
verstehe ich das richtig, dass du auch ein Modul für die Auswertung der NASA Schnittstelle bei einer SAMSUNG Wärmepumpe hast?
Zitat:
Ich habe mich nämlich bereits per RS485 Wandler an den NASA Bus gehängt und bekomme die Daten auch in Symcon rein, habe aber bisher den Aufwand gescheut die Daten zu dekodieren.
Also wenn du da bereits etwas hättest wäre das sehr interessant für mich.
(Wenn es da etwas gibt, nach welchem Modul müsste ich da suchen?)
da warst du aber sehr schnell. Respekt. War am Wochenende mal nicht am PC.
Bis auf das Warmwasser passt alles.
Mein Installateur hat hier nicht die IDM-Warmasserstation verbaut.
Darum habe ich auch keinen Wert für das Warmwasser-Zapftemperatur.
Aber es macht ja eigentlich auch keine Sinn die Zapftemeratur anzuzeigen. Die wir immer gleich eingestellt sein.
Hier wäre es ja vielleicht besser die Speichertemperatur oben zu nehmen (1014)
Die Warmwasser-Solltemperatur (1032) sagt ja auch aus, wie warm der Speicher beladen werden soll. Ansonsten passen die Werte.
vielen Dank für den ausführlichen Test - das ist genau die Rückmeldung, die ich brauche. Damit ist auch bestätigt, dass die 32-Bit-Werte bei IDM (Low-Word zuerst) richtig gelesen werden. Das hatte ich bisher nur aus dem PDF abgeleitet.
Deinen Vorschlag habe ich übernommen: „Warmwasser“ zeigt jetzt die Speichertemperatur oben (Register 1014, B48) statt der Zapftemperatur (1030). Die Zapftemperatur gibt es ja nur mit IDMs Warmwasserstation, und die hast du nicht. Der Speicherfühler oben hat dagegen jede Anlage mit Warmwasserspeicher, deshalb ist das für alle die bessere Wahl.
Das steckt in Version 0.7.0 (Beta). Wenn du das Modul in der Modulverwaltung aktualisierst, sollte „Warmwasser“ beim nächsten Lesezyklus den Wert vom Speicher oben zeigen. Magst du kurz nachschauen, ob er zu dem passt, was das Navigator-Display anzeigt?
Neu ist außerdem eine Statuszeile im Bereich „Wärmepumpe“ im Instanzformular. Sie zeigt live, ob die Wärmepumpe antwortet, wie lange die letzte Aktualisierung her ist und welche Werte gerade ankommen. Damit siehst du den Speicherwert oben direkt im Formular, ohne erst in den Objektbaum zu gehen. Falls einzelne Felder nicht gelesen werden, steht dort auch, welche.
Falls du auch den Fühler unten (1012, B41) im Objektbaum haben möchtest, sag Bescheid. Das Feld gibt es bei anderen Herstellern schon, für IDM könnte ich es ergänzen.
prima, dass der Wert oben jetzt passt - danke fürs schnelle Nachschauen.
Den Fühler unten (1012, B41) habe ich gerade ergänzt: Version 0.7.1 (Beta) hat für IDM zusätzlich die Variable „Warmwasser unten“. Nach dem Update über die Modulverwaltung erscheint sie beim nächsten Lesezyklus im Objektbaum neben „Warmwasser“. Sag kurz Bescheid, ob der Wert zum Navigator-Display passt - dann gilt die IDM-Registerkarte an deiner ALM komplett als bestätigt.
danke für den Test und die genaue Rückmeldung - die IDM-Registerkarte gilt jetzt an einer echten ALM als bestätigt. Sag Bescheid, falls dir bei den Werten im Alltag etwas auffällt oder du noch ein Feld vermisst.