Sekundäres Smartmeter in openWB einbinden

LutzB
Beiträge: 3513
Registriert: Di Feb 25, 2020 9:23 am

Re: Sekundäres Smartmeter in openWB einbinden

Beitrag von LutzB »

Ich sehe das so wie Det. Da stimmt vermutlich etwas in dem Fronius Setup nicht.
bergfex
Beiträge: 110
Registriert: Do Mai 14, 2020 4:38 pm

Re: Sekundäres Smartmeter in openWB einbinden

Beitrag von bergfex »

Servus Det,
ich habe mir das in der Fronius-Software nochmals angeschaut. Man kann dort tatsächlich Verbraucher und Erzeuger definieren. Und man kann sogar, wie LutzB geschrieben hat, statt einem sekundären Smartmeter einen sekundären Wechselrichter einrichten. Das geht und die Fronius-Software interpretiert alles korrekt.
Bei der Übernahme ins openWB hapert es allerdings. Auch wenn ich dort - wie neuerdings möglich - einen sekundären Fronius-Wechselrichter definiere und im Fronius auch einen sekundären Wechselrichter definiert habe, wird er im openWB nicht erkannt. Es kommen wilde Werte in die Anzeige. Ich habe das Gefühl, dass im openWB der Erzeuger als Verbraucher interpretiert wird, denn die angezeigten PV-Erzeugungswerte sind nun bei openWB in etwa halbiert.
Vielleicht habe ich auch alles falsch gemacht, aber ich krieg's nicht hin. Es wäre ja auch zu schön gewesen.

Gruß bergfex
LutzB
Beiträge: 3513
Registriert: Di Feb 25, 2020 9:23 am

Re: Sekundäres Smartmeter in openWB einbinden

Beitrag von LutzB »

Was sagt denn der neu angelegte WR im Status der openWB? Was kommt da an Leistung rein und passt die zu den Daten bei Fronius?
bergfex
Beiträge: 110
Registriert: Do Mai 14, 2020 4:38 pm

Re: Sekundäres Smartmeter in openWB einbinden

Beitrag von bergfex »

LutzB hat geschrieben: Mi Mär 27, 2024 5:51 pm Was sagt denn der neu angelegte WR im Status der openWB? Was kommt da an Leistung rein und passt die zu den Daten bei Fronius?
Guten Morgen LutzB,
ich habe den sekundären Wechselrichter beim Wechselrichter 1 (Fronius Symo Hybrid 5.0) installiert. Das ist hoffentlich richtig.
In der Statusanzeige der openWB kommt für den WR 1 (= Fronius Symo Hybrid) die rot unterlegte Modulmeldung
<class 'KeyError'('1',), beim Status für den sekundären Wechselrichter kommt die gleiche Fehlermeldung.

Aktuelle Werte mit in openWB definiertem sekundären Wechselrichter:
PV-Leistung Fronius 1,47 kW openWB: 558 Watt
Hausverbrauch Fronius: 357 Watt, openWB: 415 Watt
Netzeinspeisung: Fronius: 16 Watt, openWB 6 Watt
Ladung Stromspeicher: Fronius 1,13 kW, openWB: Stromspeicher wird nicht erkannt

Ohne die Installation des sekundären Wechselrichters sind die Werte im openWB um die Stromerzeugung des sekundären Wechselrichters reduziert und der Hausverbrauch ist um die Werte des sekundären Wechselrichters ebenfalls reduziert und im Status erscheinen keine Fehlermeldungen. Der Stromspeicher wird erkannt.

Gruß Bergfex
Gero
Beiträge: 2557
Registriert: Sa Feb 20, 2021 9:55 am

Re: Sekundäres Smartmeter in openWB einbinden

Beitrag von Gero »

Auch wenn es sicherlich sinnvoll wäre, dieses Fronius-Setup mit zwei Zählern, WR und Speicher korrekt in die openWB zu integrieren, möchte ich nochmal auf die möglichkeit mit drei Shelly-Plugs zurückkommen. Das sind Zwischenstecker, werden per WLAN eingebunden und würden in der openWB als drei Wechselrichter angelegt. (Entweder Shelly oder JSON) Das klappt allerdings nur, wenn der Fronius-WR nur seine Erzeugung an die openWB liefert, sonst wird da Quatsch summiert.
openWB-series2, openWB-Buchse, E3/DC S10pro+19.5kWh, 30kWp Ost-Süd, Model 3 und Ion
bergfex
Beiträge: 110
Registriert: Do Mai 14, 2020 4:38 pm

Re: Sekundäres Smartmeter in openWB einbinden

Beitrag von bergfex »

Servus Gero,
ja genau, bei mir würde Quatsch rauskommen, aber das schaffe ich anders auch...
Frohe Ostern!
Bergfex
vuffiraa
Beiträge: 251
Registriert: Mo Apr 19, 2021 11:26 am

Re: Sekundäres Smartmeter in openWB einbinden

Beitrag von vuffiraa »

Hallo,

es wäre eigentlich schade, wenn die OpenWB dieses Szenario nicht abbilden kann. Wenn alle Komponenten bei Fronius im SolarWEB richtig angezeigt werden, sind die Daten auch über den Wechselrichter abrufbar. Die OpenWB greift über die Solar API von Fronius genau auf diese Daten zu.

Ich würde mir das gerne mal in meiner Testumgebung anschauen, brauche dazu aber ein Log und die Konfiguration aus der openWB und die Werte aus dem SolarWEB. Und das ganze bei recht konstanten Bedingungen, denn die Werte werden nur alle 1-2 Minuten zum SolarWEB geliefert. Die Beschreibung zur Erstellung des Log-Auszuges auf der openWB findest du hier: viewtopic.php?t=1526

VG und Frohe Ostern!
openWB serie 2 custom 11kW
Skoda Enyaq iV80
PV 9,4kWp SSW, Fronius Symo 8.2-3-M, Fronius Smart Meter 63A
bergfex
Beiträge: 110
Registriert: Do Mai 14, 2020 4:38 pm

Re: Sekundäres Smartmeter in openWB einbinden

Beitrag von bergfex »

Danke vurffiraa für Dein Engagement!
Gerne habe ich die Daten aus dem Mainlog zweimal durchlaufen lassen und kopiert. Hoffentlich habe ich den richtigen Teil ausgeschnitten, denn die Datenmenge war gigantisch.

Code: Alles auswählen


Main-Log

2024-03-30 10:15:20,683 - {urllib3.connectionpool:227} - {DEBUG:device2} - Starting new HTTP connection (1): 192.168.178.33:80
2024-03-30 10:15:20,681 - {urllib3.connectionpool:227} - {DEBUG:device0} - Starting new HTTP connection (1): 192.168.178.20:80
2024-03-30 10:15:20,689 - {urllib3.connectionpool:227} - {DEBUG:device3} - Starting new HTTP connection (1): 192.168.178.30:80
2024-03-30 10:15:20,691 - {modules.common.component_context:25} - {DEBUG:set values cp4} - Update Komponente ['Ladepunkt']
2024-03-30 10:15:20,696 - {modules.common.component_context:25} - {DEBUG:set values cp5} - Update Komponente ['Ladepunkt']
2024-03-30 10:15:20,723 - {urllib3.connectionpool:452} - {DEBUG:device2} - http://192.168.178.33:80 "GET /solar_api/v1/GetPowerFlowRealtimeData.fcgi?Scope=System HTTP/1.1" 200 928
2024-03-30 10:15:20,729 - {modules.common.req:11} - {DEBUG:device2} - Get-Response: {
   "Body" : {
      "Data" : {
         "Inverters" : {
            "2" : {
               "DT" : 112,
               "E_Day" : 2858.60009765625,
               "E_Total" : 17672170,
               "E_Year" : 687084.3125,
               "P" : 1639
            }
         },
         "Site" : {
            "E_Day" : 2858.60009765625,
            "E_Total" : 17672170,
            "E_Year" : 687084.3125,
            "Meter_Location" : "unknown",
            "Mode" : "produce-only",
            "P_Akku" : null,
            "P_Grid" : null,
            "P_Load" : null,
            "P_PV" : 1639,
            "rel_Autonomy" : null,
            "rel_SelfConsumption" : null
         },
         "Version" : "12"
      }
   },
   "Head" : {
      "RequestArguments" : {},
      "Status" : {
         "Code" : 0,
         "Reason" : "",
         "UserMessage" : ""
      },
      "Timestamp" : "2024-03-30T10:15:20+01:00"
   }
}

2024-03-30 10:15:20,736 - {modules.common.simcount._simcount:38} - {DEBUG:device2} - Previous state: SimCounterState(timestamp=1711790110.805961, power=-1626.0, imported=0.0, exported=3547809.036792722)
2024-03-30 10:15:20,737 - {modules.common.simcount._calculate:11} - {DEBUG:device2} - time passed: 0.00275849, power1: -1626, power2: -1639
2024-03-30 10:15:20,738 - {modules.common.simcount._calculate:27} - {DEBUG:device2} - power did not change sign. Total energy: -4.50323
2024-03-30 10:15:20,739 - {modules.common.simcount._simcount:53} - {DEBUG:device2} - imported: 0 Wh, exported: 4.50323 Wh, new state: SimCounterState(timestamp=1711790120.736512, power=-1639.0, imported=0.0, exported=3547813.5400217758)
2024-03-30 10:15:20,742 - {modules.common.store._api:26} - {DEBUG:device2} - Raw data InverterState(currents=[0.0, 0.0, 0.0], power=-1639.0, exported=3547813.5400217758, dc_power=None)
2024-03-30 10:15:20,754 - {urllib3.connectionpool:452} - {DEBUG:device3} - http://192.168.178.30:80 "GET /solar_api/v1/GetPowerFlowRealtimeData.fcgi?Scope=System HTTP/1.1" 200 912
2024-03-30 10:15:20,759 - {modules.common.req:11} - {DEBUG:device3} - Get-Response: {
   "Body" : {
      "Data" : {
         "Inverters" : {
            "1" : {
               "DT" : 113,
               "E_Day" : 1775,
               "E_Total" : 779473.0625,
               "E_Year" : 404197.90625,
               "P" : 1056
            }
         },
         "Site" : {
            "E_Day" : 1775,
            "E_Total" : 779473.0625,
            "E_Year" : 404197.90625,
            "Meter_Location" : "unknown",
            "Mode" : "produce-only",
            "P_Akku" : null,
            "P_Grid" : null,
            "P_Load" : null,
            "P_PV" : 1056,
            "rel_Autonomy" : null,
            "rel_SelfConsumption" : null
         },
         "Version" : "12"
      }
   },
   "Head" : {
      "RequestArguments" : {},
      "Status" : {
         "Code" : 0,
         "Reason" : "",
         "UserMessage" : ""
      },
      "Timestamp" : "2024-03-30T10:15:20+01:00"
   }
}

2024-03-30 10:15:20,763 - {modules.common.simcount._simcount:38} - {DEBUG:device3} - Previous state: SimCounterState(timestamp=1711790110.812143, power=-1041.0, imported=0.0, exported=800569.3747451135)
2024-03-30 10:15:20,764 - {modules.common.simcount._calculate:11} - {DEBUG:device3} - time passed: 0.00276418, power1: -1041, power2: -1056
2024-03-30 10:15:20,768 - {modules.common.simcount._calculate:27} - {DEBUG:device3} - power did not change sign. Total energy: -2.89824
2024-03-30 10:15:20,773 - {modules.common.simcount._simcount:53} - {DEBUG:device3} - imported: 0 Wh, exported: 2.89824 Wh, new state: SimCounterState(timestamp=1711790120.7631829, power=-1056.0, imported=0.0, exported=800572.2729854527)
2024-03-30 10:15:20,775 - {modules.common.store._api:26} - {DEBUG:device3} - Raw data InverterState(currents=[0.0, 0.0, 0.0], power=-1056.0, exported=800572.2729854527, dc_power=None)
2024-03-30 10:15:20,911 - {urllib3.connectionpool:452} - {DEBUG:device0} - http://192.168.178.20:80 "GET /solar_api/v1/GetPowerFlowRealtimeData.fcgi?Scope=System HTTP/1.1" 200 1319
2024-03-30 10:15:20,914 - {modules.common.req:11} - {DEBUG:device0} - Get-Response: {
   "Body" : {
      "Data" : {
         "Inverters" : {
            "1" : {
               "Battery_Mode" : "normal",
               "DT" : 99,
               "E_Day" : 3575,
               "E_Total" : 26174964,
               "E_Year" : 1137385.375,
               "P" : 2410,
               "SOC" : 100
            }
         },
         "SecondaryMeters" : {
            "16711681" : {
               "Category" : "METER_CAT_PV_BAT",
               "Label" : "Mini-PV",
               "MLoc" : 3,
               "P" : 1191.0999999999999
            }
         },
         "Site" : {
            "BackupMode" : false,
            "BatteryStandby" : false,
            "E_Day" : 3575,
            "E_Total" : 26174963.700000003,
            "E_Year" : 1137385.4000000001,
            "Meter_Location" : "grid",
            "Mode" : "bidirectional",
            "P_Akku" : 0,
            "P_Grid" : -5494.4700000000003,
            "P_Load" : 1893.3700000000003,
            "P_PV" : 2470.5,
            "rel_Autonomy" : 100,
            "rel_SelfConsumption" : 0
         },
         "Version" : "12"
      }
   },
   "Head" : {
      "RequestArguments" : {},
      "Status" : {
         "Code" : 0,
         "Reason" : "",
         "UserMessage" : ""
      },
      "Timestamp" : "2024-03-30T10:15:20+01:00"
   }
}

2024-03-30 10:15:20,921 - {modules.common.simcount._simcount:38} - {DEBUG:device0} - Previous state: SimCounterState(timestamp=1711790110.8131812, power=-2376.6, imported=25.200336737494887, exported=5395297.643749076)
2024-03-30 10:15:20,922 - {modules.common.simcount._calculate:11} - {DEBUG:device0} - time passed: 0.00280778, power1: -2376.6, power2: -2470.5
2024-03-30 10:15:20,924 - {modules.common.simcount._calculate:27} - {DEBUG:device0} - power did not change sign. Total energy: -6.8048
2024-03-30 10:15:20,924 - {modules.common.simcount._simcount:53} - {DEBUG:device0} - imported: 0 Wh, exported: 6.8048 Wh, new state: SimCounterState(timestamp=1711790120.9211948, power=-2470.5, imported=25.200336737494887, exported=5395304.448548085)
2024-03-30 10:15:20,925 - {modules.common.store._api:26} - {DEBUG:device0} - Raw data InverterState(currents=[0.0, 0.0, 0.0], power=-2470.5, exported=5395304.448548085, dc_power=None)
2024-03-30 10:15:20,928 - {modules.common.fault_state:49} - {ERROR:device0} - Fronius Wechselrichter: FaultState FaultStateLevel.ERROR, FaultStr <class 'KeyError'> ('2',), Traceback: 
Traceback (most recent call last):
  File "/var/www/html/openWB/packages/modules/common/configurable_device.py", line 36, in __call__
    self.__updater(components_list)
  File "/var/www/html/openWB/packages/modules/devices/fronius/device.py", line 55, in update_components
    component.update(inverter_response)
  File "/var/www/html/openWB/packages/modules/devices/fronius/inverter_secondary.py", line 29, in update
    secondary_data = response["Body"]["Data"]["SecondaryMeters"][str(
KeyError: '2'

2024-03-30 10:15:20,931 - {modules.common.fault_state:49} - {ERROR:device0} - Fronius Speicher: FaultState FaultStateLevel.ERROR, FaultStr <class 'KeyError'> ('2',), Traceback: 
Traceback (most recent call last):
  File "/var/www/html/openWB/packages/modules/common/configurable_device.py", line 36, in __call__
    self.__updater(components_list)
  File "/var/www/html/openWB/packages/modules/devices/fronius/device.py", line 55, in update_components
    component.update(inverter_response)
  File "/var/www/html/openWB/packages/modules/devices/fronius/inverter_secondary.py", line 29, in update
    secondary_data = response["Body"]["Data"]["SecondaryMeters"][str(
KeyError: '2'

2024-03-30 10:15:20,937 - {modules.common.fault_state:49} - {ERROR:device0} - Fronius S0 Zähler: FaultState FaultStateLevel.ERROR, FaultStr <class 'KeyError'> ('2',), Traceback: 
Traceback (most recent call last):
  File "/var/www/html/openWB/packages/modules/common/configurable_device.py", line 36, in __call__
    self.__updater(components_list)
  File "/var/www/html/openWB/packages/modules/devices/fronius/device.py", line 55, in update_components
    component.update(inverter_response)
  File "/var/www/html/openWB/packages/modules/devices/fronius/inverter_secondary.py", line 29, in update
    secondary_data = response["Body"]["Data"]["SecondaryMeters"][str(
KeyError: '2'

2024-03-30 10:15:20,941 - {modules.common.fault_state:49} - {ERROR:device0} - Sekundärer Wechselrichter: FaultState FaultStateLevel.ERROR, FaultStr <class 'KeyError'> ('2',), Traceback: 
Traceback (most recent call last):
  File "/var/www/html/openWB/packages/modules/common/configurable_device.py", line 36, in __call__
    self.__updater(components_list)
  File "/var/www/html/openWB/packages/modules/devices/fronius/device.py", line 55, in update_components
    component.update(inverter_response)
  File "/var/www/html/openWB/packages/modules/devices/fronius/inverter_secondary.py", line 29, in update
    secondary_data = response["Body"]["Data"]["SecondaryMeters"][str(
KeyError: '2'
Zusätzlich noch Bildschirmkopien der Werte aus dem Fronius SolarWeb:
Datei002.jpg
Datei002.jpg (156.32 KiB) 2613 mal betrachtet
Datei001.jpg
Datei001.jpg (74.75 KiB) 2613 mal betrachtet
Die knappen Zeiten zwischen den Datenaktualisierungen konnte ich aufgrund des Aufwands leider nicht einhalten, aber ich glaube, dass sich in dem Log doch Fehler zeigen, die ich allerdings mangels entsprechenden Fähigkeiten nicht bewerten kann. Wenn Du was rausbekommen und Hilfestellung geben könntest, wäre das natürlich toll. Ich krieg's jedenfalls nicht hin.
Aber jetzt genieße erst mal das Osterfest und lass Dir mit meinem Zeugs einfach Zeit.
Ich wünsche Dir ein schönes Osterfest!
Gruß Bergfex
Harald.S
Beiträge: 3
Registriert: So Jan 07, 2024 9:37 pm
Wohnort: Nittel

Re: Sekundäres Smartmeter in openWB einbinden

Beitrag von Harald.S »

Hallo,

ich hatte ähnliche Probleme mit Fronius, die durch den Support behoben werden konnten.

Habe zwei GEN24 Wechselrichter von Fronius, BYD-Akku und ein Primär-Smartmeter, sowie zwei Sekundär-SM als Zwischenzähler für Wallboxen und den zweiten Wechselrichter. Die Messwerte waren anfangs alle nicht nachvollziehbar.

Den zweiten Wechselrichter konnte ich nicht über das Smartmeter was an WR1 die Daten liefert einbinden, jedoch direkt als eigener Wechselrichter in der openWB.

Den Akku musste ich als eigene Komponente in der openWB einrichten und nicht wie in der Anleitung beschrieben als Subkomponente des WR1.

Das Smartmeter was als Zwischenzähler fungiert hat Messwerte mit falschem Vorzeichen geliefert. Erzeuger/Verbraucher im Fronius wurde von der openWB falsch interpretiert. Beim Primärzähler ist es dagegen korrekt.
Die Vorzeichenproblematik wurde bei mir vom Support behoben. Die generelle Anpassung soll in der nächsten Softwareversion für alle enthalten sein.

Bei mir passen die Werte jetzt gut.
LutzB
Beiträge: 3513
Registriert: Di Feb 25, 2020 9:23 am

Re: Sekundäres Smartmeter in openWB einbinden

Beitrag von LutzB »

@bergfex

Die aktuelle Implementierung des Moduls prüft auf "METER_CAT_WR". Du hast jedoch "METER_CAT_PV_BAT" für das SmartMeter eingestellt. Das funktioniert also so noch nicht. Du könntest das im Fronius ggf. umändern auf diese Einstellung.

Bei der ID der Mini-PV muss die ID "16711681" eingetragen werden.
Antworten