STIEBEL ELTRON ISG über Modbus auslesen

Allgemeine Fragen rund um die "Smart Home" Hardware/Komponenten

Moderatoren: seppy, udo1toni

Antworten
iLion
Beiträge: 11
Registriert: 12. Mai 2020 20:15
Answers: 0

STIEBEL ELTRON ISG über Modbus auslesen

Beitrag von iLion »

Hallo und guten Abend,

folgendes Problem, vorhanden ist ein (neues) STIEBEL ELTRON ISG im LAN, openHAB 4.0.4 und das Modbus Add-on. Dieses bringt ja eigentlich eine Erweiterung für Wärmepumpen mit, allerdings kann ich nur einige Werte auslesen. Es geht z.B. der Zustand, heizt die Wärmepumpe oder nicht, Außentemperatur und auch die Verbräuche, bzw. generierte Wärmemengen. Jetzt bräuchte ich aber dringend auch die Temperaturen der Heizkreise und des Warmwasser, weil der Verdacht besteht, dass die Anlage gerade nicht effizient im Rahmen der Herstellerangaben arbeitet, und genau da bekomme ich keine Werte. Ich habe das ganze über Textdateien gemacht, aber auch die nicht funktionierenden Werte über die UI versucht anzulegen. So ist der Wert von "systemInformation#hk1-temperature" angeblich 0°C. Das Plug-In für Modbus bietet aber eh nur einen Heizkreis, ich habe aber zwei, also müsste ich wahrscheinlich sowieso manuell über Modbus an sich gehen, habe aber zu gar keine Ahnung. Die Anleitung von openHAB und STIEBEL ELTRON hinterlässt bei mir nur Fragezeichen. Könnte mir hier jemand auf die Sprünge helfen, um zumindest einen Anfang für die Temperaturwerte zu bekommen?

In der Anleitung steht z.B. folgende Info:

Datentyp 2:
- Wertebereich -3276.8 bis 3276.7
- Multiplikator beim Lesen: 0.1
- Multiplikator beim Schreiben: 10
- Vorzeichenbehaftet ja
- Schrittweite 1: 0.1
- Schrittweite 5: 0.5

Und für den mich interessierenden Temperaturwert für z.B. HK1:

Modbus Adresse: 508
Objektbezeichung: ISTTEMPERATUR HK 1
Min. Wert: 0
Max. Wert: 40
Datentyp: 2
Einheit: °C
Schreiben/Lesen (w/r): r

So sieht z.B. meine things-Datei gerade aus:

Code: Alles auswählen

Bridge modbus:tcp:bridge "Stiebel Modbus TCP" [
    host="10.20.30.40",
    port=502,
    id=1
] {
    Thing heatpump wpl24a "Stiebel Eltron WPL 24 A" (modbus:tcp:modbusbridge) @ "Heizungsraum" [ ]
}
Und so ein funktionierendes item:

Code: Alles auswählen

Number:Energy ga_aussen_waermepumpe_messwert_produktion_waerme_heute "Wärmemenge heute [%.0f kWh]" <energy> (gWaermepumpe, gMesswerte_Waermepumpe) ["Measurement", "Energy"] {channel="modbus:heatpump:bridge:wpl24a:energyInformation#production-heat-today"}
Und das gleich für Heizkreis 1 mit Wert 0°C:

Code: Alles auswählen

Number:Temperature ga_aussen_waermepumpe_messwert_temperatur_ist_hk1 "Ist-Temperatur HK1 [%.1f %unit%]" <temperature> ["Measurement", "Temperature"] {channel="modbus:heatpump:bridge:wpl24a:systemInformation#hk1-temperature"}

mad-mike
Beiträge: 403
Registriert: 6. Jan 2021 18:05
Answers: 2

Re: STIEBEL ELTRON ISG über Modbus auslesen

Beitrag von mad-mike »

Moin,
So sieht z.B. meine things-Datei gerade aus:
Das sieht unvollständig aus...

Kannst du das ganze hier einfügen??
Gruss mad-mike

openHABian 4.1.1 auf Raspberry Pi 4 Mod. b (8GB) ;)

Benutzeravatar
udo1toni
Beiträge: 13985
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: STIEBEL ELTRON ISG über Modbus auslesen

Beitrag von udo1toni »

Eine modbus Konfiguration besteht immer aus einer Bridge, die für die Kommunikation mit dem Busgerät zuständig ist, sowie einer Bridge pro Datenbereich, der abgefragt/beschrieben werden soll. Die erste Bridge ist vom Typ tcp oder serial (je nach Anschlusstyp...), die zweite Bridge ist vom Typ poller (von englisch to poll, befragen). Der Poller wird auf eine bestimmte Art Kommunikation gesetzt, das ist abhängig von den Registern (input, holding, coil oder discrete. Dies sind die vier unterstützten Function Codes).
Unterhalb der Poller Bridge gibt es exakt einen Thingtyp, das ist data. Etwas anderes ist hier nicht möglich. Die Konfiguration sieht also immer so aus:

Code: Alles auswählen

Bridge modbus:tcp/serial:comname "Modbus Kommunikationsschnnittstelle" [Konfig]{
    Bridge poller pollername1 "Datenbereich 1" [Konfig] {
        Thing data name1 "Name des Datums" [Konfig]
        Thing data name2 "Name des Datums" [Konfig]
        Thing data name3 "Name des Datums" [Konfig]
        Thing data name4 "Name des Datums" [Konfig]
    }
    Bridge poller pollername2 "Datenbereich 2" [Konfig] {
        Thing data name1 "Name des Datums" [Konfig]
        Thing data name2 "Name des Datums" [Konfig]
        Thing data name3 "Name des Datums" [Konfig]
        Thing data name4 "Name des Datums" [Konfig]
    }
    ... und so weiter
} 
Es gibt exakt drei verschiedene Thingtypen (Bridges sind ebenfalls Things) in einer Modbus-Konfiguration, Die Datenverbindung, die Poller und die einzelnen Datenpunkte. Innerhalb einer Ebene müssen die Namen der UIDs unterschiedlich sein, es ergeben sich dann eindeutige UIDs der Form

Code: Alles auswählen

modbus:data:comname:pollername:dataname:channeltyp
wobei für jedes Thing feste Channel zur Verfügung stehen, number, switch usw. und noch ein paar extra Channeltypen wie z.B. lastReadSuccess ,welche dann Zeitpunkte liefern.

Das Modbus Binding ist nicht einfach zu konfigurieren, aber es ist bestens dokumentiert.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

iLion
Beiträge: 11
Registriert: 12. Mai 2020 20:15
Answers: 0

Re: STIEBEL ELTRON ISG über Modbus auslesen

Beitrag von iLion »

Hallo,

tatsächlich ist die things-Datei so vollständig, da das Modbus-Add-On für Wärmempumpen eine eigene Erweiterung mitbringt, die hier durch "heatpump" aktiviert wird. Ich habe sogar geschafft, das ganze manuell über Modbus anzusprechen, bekam aber auch nur die Rohwerte, die eh schon funktioniert haben. Es scheint bei mir so zu sein, was mir auch ein Stiebel Eltron-Techniker mit Kopfnicken bestätigt hat, dass durch die Installation des ISG-Moduls EMI (Energie Management Interface, dient der Kommunikation zwischen ISG und SMA Sunny Home Manager zur Eigenverbrauchsoptimierung) Modbus nicht mehr am ISG genutzt werden kann. Tatsächlich betrifft das wohl alle Werte, die in direktem Zusammenhang mit der Wärmepumpe stehen. Einzig die verbrauchte Strommenge und die erzeugte Wärmemenge ist für mich abrufbar.

Benutzeravatar
udo1toni
Beiträge: 13985
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: STIEBEL ELTRON ISG über Modbus auslesen

Beitrag von udo1toni »

Ah ja, ganz vergessen, dass es da noch diverse Untermodule gibt.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Benutzeravatar
TorstenE
Beiträge: 237
Registriert: 12. Jan 2022 18:29
Answers: 4
Wohnort: Niederstaufen

Re: STIEBEL ELTRON ISG über Modbus auslesen

Beitrag von TorstenE »

Hallo ihr beiden,

ich klinke mich mal in das Thema mit ein.
In den nächsten Wochen wir mein Haus fertig. Die Heizung ist eine
LWZ 8 CS Premium von Stiebel Eltron

Das Teil läuft im Augenblick im Aufheizprogramm für den Estrich.
D.h. sie wurde noch nicht "offiziell" von einem Stiebel Mitarbeiter in Betrieb genommen.

Meine Frag ist folgende:
Was benötige ich alles, damit ich die WP an OH anschließen kann, also von der technischen
Seite aus gesehen bzw. Lizenzen etc. ?

Danke und schönen Abend

Torsten
openHAB 4.0.4 auf einem Pi 4 mit openHABian

Serubal
Beiträge: 1
Registriert: 12. Feb 2023 21:03
Answers: 0

Re: STIEBEL ELTRON ISG über Modbus auslesen

Beitrag von Serubal »

Hallo zusammen,

ich klinke mich mal in die Diskussion mit ein, da ich heute auch mein ISG für Modbus upgedatet habe und nun an der Konfiguration scheitere.

Ich hab mich erst mal an die Openhab doku gehalten.
https://www.openhab.org/addons/bindings ... beleltron/
Allerdings je mehr ich durch die Foren zu dem Thema lese, beschleicht mich das Gefühl, dass die Doku nicht ganz funktioniert, oder liege ich da falsch?

Gruß
Matthias

Benutzeravatar
udo1toni
Beiträge: 13985
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: STIEBEL ELTRON ISG über Modbus auslesen

Beitrag von udo1toni »

Modbus ist halt ein sehr weites Feld...
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

SSP
Beiträge: 2
Registriert: 27. Feb 2024 12:55
Answers: 0

Re: STIEBEL ELTRON ISG über Modbus auslesen

Beitrag von SSP »

Hallo zusammen,

ich klinke mich mal in die Diskussion mit ein. Ich habe auch ein ISG für eine WPL 25 AC.

Ich glaube die Frage wurde nicht richtig verstanden. Im "Thing" fehlen "Channels" für weitere Werte die man auf dem Webfrontend im ISG sehen kann.

Die Frage ist, wie ich das "Thing" um die fehlen Werte erweitern kann.

Mich würde der HK2, wie auch die Werte des Inverters interessieren (z.B. ISTDREHZAHL VERDICHTER).

Code: Alles auswählen

UID: modbus:heatpump:XXXXXXXXXXXXXX
label: KG Heizungskeller ISG-WPL25AC
thingTypeUID: modbus:heatpump
configuration:
  refresh: 10
  maxTries: 3
bridgeUID: modbus:tcp:XXXXXXXXXXXXX
location: KG Heizungskeller
channels:
  - id: systemState#is-heating
    channelTypeUID: modbus:is-heating-type
    label: Currently Heating
    description: null
    configuration: {}
  - id: systemState#is-heating-water
    channelTypeUID: modbus:is-heating-water-type
    label: Currently Heating Water
    description: null
    configuration: {}
  - id: systemState#is-cooling
    channelTypeUID: modbus:is-cooling-type
    label: Currently Cooling
    description: null
    configuration: {}
  - id: systemState#is-pumping
    channelTypeUID: modbus:is-pumping-type
    label: Currently Pumping
    description: null
    configuration: {}
  - id: systemState#is-summer
    channelTypeUID: modbus:is-summer-type
    label: Summer Operation Mode
    description: null
    configuration: {}
  - id: systemParameter#operation-mode
    channelTypeUID: modbus:operation-mode-type
    label: Operation Mode
    description: null
    configuration: {}
  - id: systemParameter#comfort-temperature-heating
    channelTypeUID: modbus:comfort-temperature-heating-type
    label: Comfort Temperature Heating
    description: null
    configuration: {}
  - id: systemParameter#eco-temperature-heating
    channelTypeUID: modbus:eco-temperature-heating-type
    label: Eco Temperature Heating
    description: null
    configuration: {}
  - id: systemParameter#comfort-temperature-water
    channelTypeUID: modbus:comfort-temperature-water-type
    label: Comfort Temperature Water
    description: null
    configuration: {}
  - id: systemParameter#eco-temperature-water
    channelTypeUID: modbus:eco-temperature-water-type
    label: Eco Temperature Water
    description: null
    configuration: {}
  - id: systemInformation#fek-temperature
    channelTypeUID: modbus:fek-temperature-type
    label: FEK Temperature
    description: null
    configuration: {}
  - id: systemInformation#fek-temperature-setpoint
    channelTypeUID: modbus:fek-temperature-setpoint-type
    label: FEK Temperature Set Point
    description: null
    configuration: {}
  - id: systemInformation#fek-humidity
    channelTypeUID: modbus:fek-humidity-type
    label: FEK Humidity
    description: null
    configuration: {}
  - id: systemInformation#fek-dewpoint
    channelTypeUID: modbus:fek-dewpoint-type
    label: FEK Dewpoint
    description: null
    configuration: {}
  - id: systemInformation#outdoor-temperature
    channelTypeUID: modbus:outdoor-temperature-type
    label: Outdoor Temperature
    description: null
    configuration: {}
  - id: systemInformation#hk1-temperature
    channelTypeUID: modbus:hk1-temperature-type
    label: HK1 Temperature
    description: null
    configuration: {}
  - id: systemInformation#hk1-temperature-setpoint
    channelTypeUID: modbus:hk1-temperature-setpoint-type
    label: HK1 Temperature Set Point
    description: null
    configuration: {}
  - id: systemInformation#supply-temperature
    channelTypeUID: modbus:supply-temperature-type
    label: Supply Temperature
    description: null
    configuration: {}
  - id: systemInformation#return-temperature
    channelTypeUID: modbus:return-temperature-type
    label: Return Temperature
    description: null
    configuration: {}
  - id: systemInformation#source-temperature
    channelTypeUID: modbus:source-temperature-type
    label: Source Temperature
    description: null
    configuration: {}
  - id: systemInformation#water-temperature
    channelTypeUID: modbus:water-temperature-type
    label: Water Temperature
    description: null
    configuration: {}
  - id: systemInformation#water-temperature-setpoint
    channelTypeUID: modbus:water-temperature-setpoint-type
    label: Water Temperature Set Point
    description: null
    configuration: {}
  - id: energyInformation#production-heat-today
    channelTypeUID: modbus:production-heat-today-type
    label: Heat Quantity Today
    description: null
    configuration: {}
  - id: energyInformation#production-heat-total
    channelTypeUID: modbus:production-heat-total-type
    label: Heat Quantity Total
    description: null
    configuration: {}
  - id: energyInformation#production-water-today
    channelTypeUID: modbus:production-water-today-type
    label: Water Heat Quantity Today
    description: null
    configuration: {}
  - id: energyInformation#production-water-total
    channelTypeUID: modbus:production-water-total-type
    label: Water Heat Quantity Total
    description: null
    configuration: {}
  - id: energyInformation#consumption-heat-today
    channelTypeUID: modbus:consumption-heat-today-type
    label: Power Consumption for Heating Today
    description: null
    configuration: {}
  - id: energyInformation#consumption-heat-total
    channelTypeUID: modbus:consumption-heat-total-type
    label: Power Consumption for Heating Total
    description: null
    configuration: {}
  - id: energyInformation#consumption-water-today
    channelTypeUID: modbus:consumption-water-today-type
    label: Power Consumption for Water Today
    description: null
    configuration: {}
  - id: energyInformation#consumption-water-total
    channelTypeUID: modbus:consumption-water-total-type
    label: Power Consumption for Water Total
    description: null
    configuration: {}
Gruß
Sebastian

Antworten