Modbus Zugriff für Fronius Symo

Begonnen von Roger, 03 Januar 2016, 19:51:56

Vorheriges Thema - Nächstes Thema

grappa24

hab mir das Perl-Script nochmal genau angesehen.

Das Hochsetzen des Soll-SoC mit dem folgenden Befehl funktioniert wunderbar:

CommandSet (undef, "$bat BatConfigReserve $osoc")
Was aber nicht funktioniert ist das Einstellen der Leistung für das erzwungene Nachladen mit ...

CommandSet (undef, "$bat BatteryChargeWatt $load")
da "BatteryChargeWatt" kein Modbus Parameter ist, den man "setzen" kann. Also frage ich mich nun, welchen Parameter ich hier "setzen" muss, um die Leistung beim erzwungenen Nachladen zu steuern?

Gebäudesicherheit/-komfort, PV-Prognose/Verbrauchssteuerung, Heizungssteuerung, Multimedia, ...
KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200, Netatmo, Nuki, SolarForecast, HEOS, Alexa-FHEM, ...
FHEM 6.4, 2 x RasPi 3B+, Debian Bullseye

yoda_gh

Zitat von: grappa24 am 05 Januar 2025, 17:20:22da "BatteryChargeWatt" kein Modbus Parameter ist, den man "setzen" kann. Also frage ich mich nun, welchen Parameter ich hier "setzen" muss, um die Leistung beim erzwungenen Nachladen zu steuern?

Wenn ich mich richtig erinnere, kannst Du das Nachladen erzwingen, indem Du BatConfigMax...Irgendwas (vermutlich BattConfigMaxDischargeWatt) auf negative Werte setzt. Vorausgesetzt, Du hast dieses Limit in BatConfigMaxEnabled überhaupt aktiviert. Steht aber, etwas verschwurbelt, auch als Beispiel in der Modbus-Doku von Fronius. Sag Bescheid, wenn Du das nicht findest, dann suche ich es Dir raus.

Prof. Dr. Peter Henning

Zitat von: yoda_gh am 22 Januar 2025, 22:26:22rgendwas (vermutlich BattConfigMaxDischargeWatt) auf negative Werte setzt.
Falsch. Einfach den minimalen Ladestand höher setzen, als er gegenwärtig ist.

pah

balticfury

Hallo in die Runde,

ich habe inzwischen gemäß https://wiki.fhem.de/wiki/Solaranlage_Komplettbeispiel_Fronius_BYD miene PV-Anlage in FHEM integriert. In der Gruppe "Fronius" erhalte ich folgende Ergebnisse:

Autarkie
   
Error evaluating AutarkieQuote userReading Heute: Undefined subroutine &main::get_autarkie called at (eval 2202) line 1.
Eigenverbr.
   
Error evaluating EigenverbrQuote userReading Heute: Undefined subroutine &main::get_eigenverbrauch called at (eval 2208) line 1.

 Fronius_Symo
   
Status: connected
PV-aktuell: 2 W
PV Einspeisung: 0 W
Netzbezug: 680 W
Akku Laden: 0 W
Akku Entladen: 813 W
Ladestand Akku: 86 %
Autarkiegrad: 54.1 %
PV gesamt: 8250.32 kWh

 GEN24_MPPT
   
Sued1: MPPT1_DC_W W, MPPT1_DC_V V, MPPT1_DC_A A Sued2: MPPT2_DC_W W, MPPT2_DC_V V, MPPT2_DC_A A
            
                                               
         PV_Batterie
   
Status: 65534
Ladung: 0.0 % | Reserve: 0 %
Temp: 0.0 °C
Summe Entladung: 503.3 kWh | Summe Ladung: 1147.8 kWh

Wie erhalte ich die fehlenden Werte in PV-Batterie für: Ladung, Reseserve und Temp?
Welche Fehler habe ich in Autarkie und Eigenverbrauch??
Warum Status: 65534??

Die PV-Anlage besteht aus: Fronuis Symo Gen24 plus 8.0, BYD HVS 7.68

Danke für die Mühe!

Herzliche Grüße

Christian



dieter114

Hallo balticfury
hast du die Probleme behoben?
Ich habe hier lange nicht mitgelesen.

LG WDS
RPi II+III+V,OWX,div.1W Module,HM Zisterne,div. CUL, sduino MAPLESDuino(adv), div ESPEasy, div Tasmota, MQTT2Server,WU-Upload,TabletUI,Poolsteuerung mit fhem, Fronius, BYD Solaranlage

grappa24

#290
[Edit] Ich seh schon, es liegt wohl am Fronius Update auf 1.35.4-1

Seit 05. März liefert meine HTTPMOD Verbindung zu meinem Fronius GEN24 keine Werte mehr
(LAST_ERROR connect to http://192.168.178.129:80 timed out)

define GEN24_MPPT HTTPMOD http://192.168.178.129/components/cache/readable 15
attr GEN24_MPPT alignTime 00:00
attr GEN24_MPPT devStateIcon { my $wr1mppt1 = ReadingsVal($name,"MPPT1_DC_W",0);; my $wr1mppt2 = ReadingsVal($name,"MPPT2_DC_W",0);; "<div>SüdWest: $wr1mppt1 W | NordOst: $wr1mppt2 W</div>"}
attr GEN24_MPPT disable 0
attr GEN24_MPPT event-on-update-reading .*
attr GEN24_MPPT icon inverter
attr GEN24_MPPT reading1Name MPPT1_DC_W
attr GEN24_MPPT reading1OExpr {sprintf("%.0f", $val)}
attr GEN24_MPPT reading1Regex "PV_POWERACTIVE_MEAN_01_F32"[ : \t]+([-+]?[a-z\d\.]+)
attr GEN24_MPPT reading2Name MPPT2_DC_W
attr GEN24_MPPT reading2OExpr {sprintf("%.0f", $val)}
attr GEN24_MPPT reading2Regex "PV_POWERACTIVE_MEAN_02_F32"[ : \t]+([-+]?[a-z\d\.]+)
attr GEN24_MPPT reading3Name MPPT1_DC_A
attr GEN24_MPPT reading3OExpr {sprintf("%.3f", $val)}
attr GEN24_MPPT reading3Regex "PV_CURRENT_MEAN_01_F32"[ : \t]+([-+]?[a-z\d\.]+)
attr GEN24_MPPT reading4Name MPPT1_DC_V
attr GEN24_MPPT reading4OExpr {sprintf("%.3f", $val)}
attr GEN24_MPPT reading4Regex "PV_VOLTAGE_MEAN_01_F32"[ : \t]+([-+]?[a-z\d\.]+)
attr GEN24_MPPT reading5Name MPPT2_DC_A
attr GEN24_MPPT reading5OExpr {sprintf("%.3f", $val)}
attr GEN24_MPPT reading5Regex "PV_CURRENT_MEAN_02_F32"[ : \t]+([-+]?[a-z\d\.]+)
attr GEN24_MPPT reading6Name MPPT2_DC_V
attr GEN24_MPPT reading6OExpr {sprintf("%.3f", $val)}
attr GEN24_MPPT reading6Regex "PV_VOLTAGE_MEAN_02_F32"[ : \t]+([-+]?[a-z\d\.]+)
attr GEN24_MPPT room Energy
attr GEN24_MPPT showError 1
attr GEN24_MPPT verbose 2
#   BUSY       0
#   DEF        http://192.168.178.129/components/cache/readable 15
#   FUUID      6547d238-f33f-b5ae-a811-f8835803ed5d46bb
#   Interval   15
#   MainURL    http://192.168.178.129/components/cache/readable
#   ModuleVersion 4.2.0 - 11.8.2023
#   NAME       GEN24_MPPT
#   NOTIFYDEV  global
#   NR         697
#   NTFY_ORDER 50-GEN24_MPPT
#   STATE      ???
#   TYPE       HTTPMOD
#   eventCount 3
#   value     
#   CompiledRegexes:
#   HttpUtils:
#     NAME      
#     addr       http://192.168.178.129:80
#     auth       0
#     code       200
#     compress   1
#     conn      
#     data      
#     displayurl http://192.168.178.129/components/cache/readable
#     header    
#     host       192.168.178.129
#     httpheader HTTP/1.1 200 OK
#Server: nginx/1.24.0
#Date: Tue, 18 Mar 2025 15:50:30 GMT
#Content-Type: text/javascript
#Connection: close
#Vary: Accept-Encoding
#Cache-Control: no-cache, no-store, must-revalidate
#Pragma: no-cache
#Expires: 0
#     httpversion 1.0
#     hu_blocking 0
#     hu_filecount 1
#     hu_port    80
#     hu_portSfx
#     ignoreredirects 1
#     loglevel   4
#     path       /components/cache/readable
#     protocol   http
#     redirects  0
#     timeout    2
#     url        http://192.168.178.129/components/cache/readable
#     sslargs:
#   QUEUE:
#   READINGS:
#     2025-03-18 02:05:47   LAST_ERROR      connect to http://192.168.178.129:80 timed out
#     2025-03-05 17:55:15   MPPT1_DC_A      0.230
#     2025-03-05 17:55:15   MPPT1_DC_V      386.685
#     2025-03-05 17:55:15   MPPT1_DC_W      89
#     2025-03-05 17:55:15   MPPT2_DC_A      0.188
#     2025-03-05 17:55:15   MPPT2_DC_V      375.411
#     2025-03-05 17:55:15   MPPT2_DC_W      71
#   REQUEST:
#     context    reading
#     data      
#     header    
#     ignoreredirects 0
#     num        unknown
#     retryCount 0
#     type       update
#     url        http://192.168.178.129/components/cache/readable
#
setstate GEN24_MPPT 2025-03-18 02:05:47 LAST_ERROR connect to http://192.168.178.129:80 timed out
setstate GEN24_MPPT 2025-03-05 17:55:15 MPPT1_DC_A 0.230
setstate GEN24_MPPT 2025-03-05 17:55:15 MPPT1_DC_V 386.685
setstate GEN24_MPPT 2025-03-05 17:55:15 MPPT1_DC_W 89
setstate GEN24_MPPT 2025-03-05 17:55:15 MPPT2_DC_A 0.188
setstate GEN24_MPPT 2025-03-05 17:55:15 MPPT2_DC_V 375.411
setstate GEN24_MPPT 2025-03-05 17:55:15 MPPT2_DC_W 71

Gebäudesicherheit/-komfort, PV-Prognose/Verbrauchssteuerung, Heizungssteuerung, Multimedia, ...
KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200, Netatmo, Nuki, SolarForecast, HEOS, Alexa-FHEM, ...
FHEM 6.4, 2 x RasPi 3B+, Debian Bullseye

mg2023

Hallo zusammen,

ich hoffe, dass dies der richtige Thread ist.

Ich versuche aktuell die Werte BatConfigMaxDischargeWatt und BatConfigMaxDischargeWatt über BatConfigMaxEnabled aktiv zu schalten. Die Werte BatConfigMaxDischargeWatt und BatConfigMaxDischargeWatt kann ich setzen und sie werden mir auch korrekt angezeigt.

Leider kann ich BatConfigMaxEnabled nicht ändern. Es bleibt immer auf 0 (none).

Im Wechselrichter habe ich ModbusTCP eingeschaltet und SunSpec Model auf float gesetzt. Die Config in Fhem lautet

obj-h40358-len 1
obj-h40358-map 0:none,1:chargeMax,2:dischrMax,3:bothMax
obj-h40358-reading BatConfigMaxEnabled
obj-h40358-set 1
obj-h40358-unpack n

Aktuell gehen mir die Ideen aus, was ich noch versuchen kann. Hat irgendjemand noch eine Idee?

Viele Grüße und besten Dank im Voraus,
Matthias

 

grappa24

Zitat von: mg2023 am 17 August 2025, 10:54:19obj-h40358-len 1
obj-h40358-map 0:none,1:chargeMax,2:dischrMax,3:bothMax
obj-h40358-reading BatConfigMaxEnabled
obj-h40358-set 1
obj-h40358-unpack n

Ich hab da noch ein format %s drin:

obj-h40358-format %s
obj-h40358-len 1
obj-h40358-map 0:none,1:chargeMax,2:dischrMax,3:bothMax
obj-h40358-reading BatConfigMaxEnabled
obj-h40358-set 1
obj-h40358-unpack n
Gebäudesicherheit/-komfort, PV-Prognose/Verbrauchssteuerung, Heizungssteuerung, Multimedia, ...
KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200, Netatmo, Nuki, SolarForecast, HEOS, Alexa-FHEM, ...
FHEM 6.4, 2 x RasPi 3B+, Debian Bullseye

mg2023

Danke, habe ich gerade probiert. Ändert aber auch nichts. Soweit ich das verstehe ist das nur für die Anzeige notwendig.

grappa24

Zitat von: mg2023 am 17 August 2025, 10:54:19Im Wechselrichter habe ich ModbusTCP eingeschaltet und SunSpec Model auf float gesetzt. Die Config in Fhem lautet
hier mal meine Modbus Einstellungen:

Gebäudesicherheit/-komfort, PV-Prognose/Verbrauchssteuerung, Heizungssteuerung, Multimedia, ...
KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200, Netatmo, Nuki, SolarForecast, HEOS, Alexa-FHEM, ...
FHEM 6.4, 2 x RasPi 3B+, Debian Bullseye

mg2023

#295
Bis auf die Einschränkung der IP Adresse sieht es bei mir genauso aus.

Die Version von ModbusAttr ist übrigens Modbus 4.5.6 - 7.11.2023

Kann es sein, dass der Wert vom Wechselrichter wieder überschreiben wird?