mit ModbusAttr den Wechselrichter "Sofar HYD 10KTL-3PH" auslesen - U32 Register

Begonnen von E-J-D, 28 Juli 2024, 17:18:13

Vorheriges Thema - Nächstes Thema

E-J-D

Hallo,

ich habe unseren Sofar HYD 10KTL-3PH Wechselrichter per ModbusAttr (WR hängt an LSE-3 LAN Modul) eingebunden. Das Photovoltaikforum.com hat mir den entscheidenden Start gegeben.

Einfache Werte, die nur aus einem Register kommen, schaffe ich auch auszulesen. Bei dem Wert für "PV_Generation_Total" schaffe ich es nicht ganz. Um den Thread in https://www.photovoltaikforum.com/thread/217362-sofar-hyd-serie-kommunikation-%C3%BCber-modbus-tcp-erfahrungen/?postID=3859271#post3859271 nicht weiter zu kapern, frage ich euch hier an dem Ort, wo die Frage hingehört.

Mein Problem ist, dass der Wert in zwei Registern steht und diese in FHEM entsprechend behandelt werden müssen. Ich habe die Idee in dem verlinkten Beitrag umgesetzt und bekomme auch einen Wert für "PV_Generation_Total". Der stimmt aber überhaupt nicht mit dem Wert in der Sofar App überein. in FHEM habe ich einen Wert von 5.359 (Einheit kann ich leider nicht bestimmen), in der Sofar App 25,01MWh.

Meine Definition sieht aktuell so aus...
attr Wechselrichter obj-h1670-expr $val/10
attr Wechselrichter obj-h1670-len 2
attr Wechselrichter obj-h1670-poll 1
attr Wechselrichter obj-h1670-reading PV_Generation_Total
attr Wechselrichter obj-h1670-revRegs 1

Ich würde mich über eure Hilfe sehr freuen.

Viele Grüße aus Fulda

Wzut

wie wird denn aus deiner Doku 0x06B6 das Register 1670 ? (0686 gelesen ? )
wäre das nicht eher so 1718 ?
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

E-J-D

Zitat von: Wzut am 28 Juli 2024, 17:45:57wie wird denn aus deiner Doku 0x06B6 das Register 1670 ? (0686 gelesen ? )
wäre das nicht eher so 1718 ?
@wzut -ne, ne. Ist wirklich 0686+0687. Hab einen HQ Screenshot mit angehängt. Die ganze Excel kann ich hier leider nicht hochladen.

WW

FHEM 6.x im Docker-Container (OMV4 auf ASRock J3455-ITX), FHEM 6.0 auf Raspi, Fritzbox 7490, CUL433, CUL868, Jeelink868, SIGNALduino, LaCrosseGateway, Shelly, Sonoff, ESP8266, ESP32, ESP32-Cam, LaCrosse, OneWire, Zigbee (Sonoff, Blitzwolf, IKEA, Lidl), Azzurro-WR/Pylontech-Bat., Lambda-Wärmepumpe

E-J-D

Zitat von: WW am 03 August 2024, 20:25:09Vielleicht findest du hier was:

https://forum.fhem.de/index.php?topic=132947.msg1272592#msg1272592

Willi

Der Beitrag hat mir in der Tat ein bisschen Know How zum Modul ModbusAttr gebracht, mein Problem aber nicht gelöst. Ich bekomme für "PV_Generation_Total" jetzt einen Wert von 3788439555 (mit "attr Wechselrichter obj-h1670-expr $val/10" könnte man den Wert dann auf die richtige Nachkommestelle kürzen), aber laut App sind es aktuell 25,44MWh gesamte Produktionsmenge.

Falls jemand noch eine Idee hat, bin ich sehr dankbar.

WW

3788439555 (decimal) = E1CF 0003 (hex)

Jetzt mal die beiden Wörter tauschen: 0003E1CF (hex) = 254415 (decimal)

Division durch 10: 25441.5 kWh = 25.44 MWh

D.h. das unpack muss bei dir falsch sein.

MfG
Willi
FHEM 6.x im Docker-Container (OMV4 auf ASRock J3455-ITX), FHEM 6.0 auf Raspi, Fritzbox 7490, CUL433, CUL868, Jeelink868, SIGNALduino, LaCrosseGateway, Shelly, Sonoff, ESP8266, ESP32, ESP32-Cam, LaCrosse, OneWire, Zigbee (Sonoff, Blitzwolf, IKEA, Lidl), Azzurro-WR/Pylontech-Bat., Lambda-Wärmepumpe

E-J-D

Zitat von: WW am 04 August 2024, 15:19:413788439555 (decimal) = E1CF 0003 (hex)

Jetzt mal die beiden Wörter tauschen: 0003E1CF (hex) = 254415 (decimal)

Division durch 10: 25441.5 kWh = 25.44 MWh

D.h. das unpack muss bei dir falsch sein.

MfG
Willi

Hui... denn er weiß nicht, was er tut 😬. Danke für deine Geduld mit dem Unwissenden. Ich hatte auch ein "obj-h1670-revRegs 1" aus einem anderen Beitrag abgeschrieben. Daher wurden die beiden Register wohl vertauscht. Das habe ich rausgenommen und noch "obj-h1670-expr $val/10" gesetzt und et voila... der Wert ist korrekt.

@Willi danke für deine Hilfe!