Modbus Zugriff für Fronius Symo

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

Vorheriges Thema - Nächstes Thema

topa_LE

Sym 6.0.3 WR:

Also die Seite solarweb.com erhält ja auch nur die Daten vom WR, warum sollte da was zurückgehalten werden  ::)
Dort sieht man ja auch den Verbrauch / Netzeinspeisung.

Das Basismodul liefert:

Internals:
   BUSY       1
   DEF        1 30 192.168.178.60:502 TCP
   DEST       192.168.178.60:502
   DeviceName 192.168.178.60:502
   FD         70
   INTERVAL   30
   IODev      PV_Solar_Basismodul
   LASTOPEN   1513116139.96914
   MODBUSID   1
   ModuleVersion 3.7.0 - 20.8.2017
   NAME       PV_Solar_Basismodul
   NOTIFYDEV  global
   NR         30
   NTFY_ORDER 50-PV_Solar_Basismodul
   PARTIAL   
   PROTOCOL   TCP
   REQUESTHEX 00610000000601039ca70002
   STATE      opened
   TRIGGERTIME 1513183035.18572
   TRIGGERTIME_FMT 2017-12-13 17:37:15
   TYPE       Fronius_Modbus
   devioLoglevel 3
   nextOpenDelay 60
   Helper:
     DBLOG:
       Energy_Day__kWh:
         DbLog_PV_Solar_Basismodul:
           TIME       1513183007.46028
           VALUE      7.384
       Energy_Total__kWh:
         DbLog_PV_Solar_Basismodul:
           TIME       1513183009.32485
           VALUE      22517.4
       Energy_Year__kWh:
         DbLog_PV_Solar_Basismodul:
           TIME       1513183008.39709
           VALUE      5956.075
       Power_DC__W:
         DbLog_PV_Solar_Basismodul:
           TIME       1513182989.34105
           VALUE      0.0
       Power__VA:
         DbLog_PV_Solar_Basismodul:
           TIME       1513182985.9267
           VALUE      nan
       Power__VAr:
         DbLog_PV_Solar_Basismodul:
           TIME       1513182986.85098
           VALUE      nan
       Power__W:
         DbLog_PV_Solar_Basismodul:
           TIME       1513183014.06327
           VALUE      0.0
       SW_Version_DataManager:
         DbLog_PV_Solar_Basismodul:
           TIME       1513116189.44647
           VALUE      3.9.1-4
       Voltage_L1__V:
         DbLog_PV_Solar_Basismodul:
           TIME       1513183011.28889
           VALUE      0.0
       Voltage_L2__V:
         DbLog_PV_Solar_Basismodul:
           TIME       1513183012.21666
           VALUE      0.0
       Voltage_L3__V:
         DbLog_PV_Solar_Basismodul:
           TIME       1513183013.14797
           VALUE      0.0
   QUEUE:
     HASH(0x4b07388)
     HASH(0x4aec308)
     HASH(0x48e6900)
     HASH(0x4adc6e0)
     HASH(0x4e73830)
   READINGS:
     2017-12-13 17:36:45   ActiveStateCode 307
     2017-12-12 23:04:52   Cap_Current_max__A 8.70
     2017-12-12 23:04:53   Cap_PowerFactor_Q1 -0.8
     2017-12-12 23:04:55   Cap_PowerFactor_Q4 0.8
     2017-12-12 23:04:51   Cap_Power_cont_Q1__VAr 6000
     2017-12-12 23:04:52   Cap_Power_cont_Q4__VAr -6000
     2017-12-12 23:04:50   Cap_Power_cont__VA 6000
     2017-12-12 23:04:49   Cap_Power_cont__W 6000
     2017-12-13 17:35:55   Current_DC__A   nan
     2017-12-13 17:36:22   Current_L1__A   0.00
     2017-12-13 17:36:22   Current_L2__A   0.00
     2017-12-13 17:36:23   Current_L3__A   0.00
     2017-12-13 17:36:50   Current_total__A 0.00
     2017-12-12 23:02:56   DataModelType   Float
     2017-12-12 23:03:04   Device_model    Symo 6.0-3-M
     2017-12-13 17:36:47   Energy_Day__kWh 7.384
     2017-12-13 17:36:49   Energy_Total__kWh 22517.4
     2017-12-13 17:36:48   Energy_Year__kWh 5956.075
     2017-12-12 23:05:42   Energy_total_AC__kWh 22504.2
     2017-12-13 17:36:54   Energy_total__kWh 22517.4
     2017-12-13 17:36:24   Frequency__Hz   0.0
     2017-12-12 23:03:15   Inverter_map    three.phase
     2017-12-12 23:03:03   Manufacturer    Fronius
     2017-12-12 23:03:15   Modbus_Address  1
     2017-12-13 17:35:56   Operating_State Run-up.phase
     2017-12-13 17:35:56   Operating_State_Vendor Run-up.phase
     2017-12-13 17:35:53   PowerFactor     nan
     2017-12-12 23:05:48   PowerFactor_Time__sec 0
     2017-12-12 23:05:52   PowerFactor_Timeout__sec 0
     2017-12-12 23:05:40   PowerFactor_min_Q1 -0.8
     2017-12-12 23:05:41   PowerFactor_min_Q4 0.8
     2017-12-12 23:05:47   PowerFactor_set 1.000
     2017-12-12 23:05:45   PowerLevel_Time__sec 0
     2017-12-12 23:05:46   PowerLevel_Timeout__sec 0
     2017-12-12 23:05:45   PowerLevel__prz 10000
     2017-12-13 17:36:29   Power_DC__W     0.0
     2017-12-13 17:36:46   Power_Site__W   0
     2017-12-12 23:05:54   Power_VAr_Time__sec 0
     2017-12-12 23:05:55   Power_VAr_Timeout__sec 0
     2017-12-12 23:05:53   Power_VAr_max__prz 0
     2017-12-13 17:36:25   Power__VA       nan
     2017-12-13 17:36:26   Power__VAr      nan
     2017-12-13 17:36:54   Power__W        0.0
     2017-12-12 23:05:35   Power_max_Q1__VAr 6000
     2017-12-12 23:05:39   Power_max_Q4__VAr -6000
     2017-12-12 23:05:34   Power_max__VA   6000
     2017-12-12 23:05:31   Power_max__W    6000
     2017-12-12 23:03:09   SW_Version_DataManager 3.9.1-4
     2017-12-12 23:03:10   SW_Version_Inverter 0.3.13.4
     2017-12-12 23:03:11   Serialnumber    25151001123550065
     2017-12-13 17:33:54   Temp_Cabinet__C nan
     2017-12-13 17:33:55   Temp_Coolant__C nan
     2017-12-13 17:33:56   Temp_Transformer__C nan
     2017-12-13 17:34:28   Temp_other__C   nan
     2017-12-12 23:05:43   Time_connect__sec 0
     2017-12-12 23:05:44   Timeout_connect__sec 0
     2017-12-13 17:36:27   Voltage_DC__V   nan
     2017-12-13 17:36:51   Voltage_L1__V   0.0
     2017-12-13 17:34:22   Voltage_L1_to_L2__V 0.0
     2017-12-13 17:36:52   Voltage_L2__V   0.0
     2017-12-13 17:34:54   Voltage_L2_to_L3__V 0.0
     2017-12-13 17:36:53   Voltage_L3__V   0.0
     2017-12-13 17:35:51   Voltage_L3_to_L1__V 0.0
     2017-12-12 23:05:32   Voltage_PCC__V  230.0
     2017-12-12 23:05:33   Voltage_PCC_offset__V 0
     2017-12-12 23:02:24   state           opened


Zitatgibt es einen wert für den Aktuellen Verbrauch ohne Abzug der Produktion? L1, L2, L3 und gesammt?

So genau kann ich dir das nicht sagen.

Was man aus den Readings vom Modus_Meter Modul verwenden kann, weiß ich nicht:

READINGS:
     2017-12-13 17:40:46   Current_L1__A   0.00
     2017-12-13 17:39:46   Current_L2__A   0.00
     2017-12-13 17:39:47   Current_L3__A   0.00
     2017-12-13 17:40:16   Current_total__A 0.00
     2017-12-13 17:39:20   Energy_L1_export__kWh 0.000
     2017-12-13 17:39:53   Energy_L1_import__kWh -0.000
     2017-12-13 17:39:21   Energy_L2_export__kWh 0.000
     2017-12-13 17:40:22   Energy_L2_import__kWh -27913790446784436037941528251858944.000
     2017-12-13 17:39:22   Energy_L3_export__kWh 0.000
     2017-12-13 17:40:23   Energy_L3_import__kWh 57081.854
     2017-12-13 17:41:21   Energy_export__kWh 0.000
     2017-12-13 17:41:22   Energy_import__kWh 0.000
     2017-12-13 17:39:48   Frequency__Hz   nan
     2017-12-12 23:02:55   ID              S0
     2017-12-13 17:41:18   Power_L1__W     nan
     2017-12-13 17:41:19   Power_L2__W     22517400
     2017-12-13 17:41:20   Power_L3__W     nan
     2017-12-13 17:41:18   Power_total__W  nan
     2017-12-13 17:38:48   Voltage_Avr__V  0.00
     2017-12-13 17:41:16   Voltage_L1__V   0.00
     2017-12-13 17:36:46   Voltage_L2__V   0.00
     2017-12-13 17:36:47   Voltage_L3__V   0.00
     2017-12-12 23:02:24   state           opened


Zuerst müsste ja mal geklärt werden, welche Readings dafür zuständig sind, um ggf. eine Berechungsformel in FHEM zu erstellen.

Ich denke mal , das man aus dem Modus_Meter die Daten für den Verbrauch und Einspeisung nicht erhält.

Folgendes habe ich bisher vergleichen können:

Modul: Fronius_Modbus_MPPT

Energy_total_String1__kWh = Gesamtleistung String1 (11 Module)
Energy_total_String2__kWh = Gesamtleistung String2 (11 Module)

Power_String1__W = Produktion von String1
Power_String2__W = Produktion von String2

Voltage_String1__V = aktueller Verbrauch String1
Voltage_String2__V = aktueller Verbrauch String2

Modul: SolarBasis

Power__W = Leistung des gerade abgefragten WR (Wechselrichter)

Power__VA = aktuelle Produktion von String1 und String2

? = Eigenverbrauch ?

Power__VAr = Netzeinspeisung ??


vitolinker

Schaut doch mal unter diesem API Aufruf per HTTP von Eurem Wechselrichter:
   
http://192.168.yyy.xx/solar_api/v1/GetPowerFlowRealtimeData.fcgi

Dort kann man mit HTTPMOD bequem die nötigen Werte einlesen.

octek0815

Richtig genau so mache ich das auch...


defmod httpmodFronius1 HTTPMOD http://x.x.x.x/solar_api/v1/GetPowerFlowRealtimeData.fcgi 5
attr httpmodFronius1 userattr reading01Name reading01OMap reading01Regex reading02Name reading02OMap reading02Regex reading03Name reading03OMap reading03Regex reading04Name reading04OMap reading04Regex reading05Name reading05OMap reading05Regex reading06Name reading06OMap reading06Regex reading07Name reading07OMap reading07Regex reading08Name reading08OMap reading08Regex
attr httpmodFronius1 alignTime 00:00:00
attr httpmodFronius1 event-on-change-reading .*
attr httpmodFronius1 reading01Name Power_P_Grid
attr httpmodFronius1 reading01OMap null:0
attr httpmodFronius1 reading01Regex "P_Grid"[ : \t]+([-+]?[a-z\d\.]+)
attr httpmodFronius1 reading02Name Power_P_Load
attr httpmodFronius1 reading02OMap null:0
attr httpmodFronius1 reading02Regex "P_Load"[ : \t]+([-+]?[a-z\d\.]+)
attr httpmodFronius1 reading03Name Power_P_Generate
attr httpmodFronius1 reading03OMap null:0
attr httpmodFronius1 reading03Regex "P_PV"[ : \t]+([-+]?[a-z\d\.]+)
attr httpmodFronius1 reading04Name Relative_Current_SelfConsumption
attr httpmodFronius1 reading04OMap null:0
attr httpmodFronius1 reading04Regex "rel_SelfConsumption"[ : \t]+([-+]?[a-z\d\.]+)
attr httpmodFronius1 reading05Name Relative_Current_Autonomy
attr httpmodFronius1 reading05OMap null:0
attr httpmodFronius1 reading05Regex "rel_Autonomy"[ : \t]+([-+]?[a-z\d\.]+)
attr httpmodFronius1 reading08Name EnergyReal_WAC_Sum_EverSince
attr httpmodFronius1 reading08OMap null:0
attr httpmodFronius1 reading08Regex "E_Total"[ : \t]+([-+]?[a-z\d\.]+)
attr httpmodFronius1 room Energie
attr httpmodFronius1 showError 1
attr httpmodFronius1 stateFormat {return "PV aktuell: ".sprintf("%.0f",ReadingsVal($name,"Power_P_Generate",0))." W | PV Eigenverbrauch: ".sprintf("%.0f",ReadingsVal($name,"urPVEigenverbrauchAktuellInWatt",0))." W | PV Einspeisung: ".sprintf("%.0f",ReadingsVal($name,"urPVEinspeisungAktuellInWatt",0))." W | Strombezug: ".sprintf("%.0f",ReadingsVal($name,"urStrombezugAktuellInWatt",0))." W | Stromverbrauch: ".sprintf("%.0f",ReadingsVal($name,"urStromGesamtverbrauchAktuellInWatt",0))." W<br/>PV Leistung (60 Minuten Ø): ".sprintf("%.0f",ReadingsVal($name,"statPower_P_GenerateHourAvg",0))." | Autarkiegrad: ".sprintf("%.1f",ReadingsVal($name,"Relative_Current_Autonomy",0))." % | PV-Eigenverbrauch: ".sprintf("%.1f",ReadingsVal($name,"Relative_Current_SelfConsumption",0))." %";;}
attr httpmodFronius1 userReadings urPVEinspeisungAktuellInWatt { my $temp1 = ReadingsVal($name,"Power_P_Grid",0)*-1;; return $temp1 if($temp1>0);; return 0;; }, urStrombezugAktuellInWatt { my $temp2 = ReadingsVal($name,"Power_P_Grid",0);; return 0 if($temp2<0);; return $temp2;;}, urPVEigenverbrauchAktuellInWatt { my $temp3 = ReadingsVal($name,"Power_P_Generate",0);; my $temp4 = ReadingsVal($name,"urPVEinspeisungAktuellInWatt",0);; my $temp5 = $temp3 - $temp4;; return $temp5 if($temp5>0);; return 0;; }, urStromGesamtverbrauchAktuellInWatt { my $temp41 = ReadingsVal($name,"Power_P_Load",0)*-1;; return $temp41 if($temp41>0);; return 0;;}
attr httpmodFronius1 verbose 2


Ich nutze nur noch das MPPT Modul von Roger, allerdings angepasst, so das nur noch die Beiden MPPT Watt Werte ausgelesen werden.

Grüße
Olli

topa_LE

Ok klasse. Danke Dir.

Das liefert mir:

{
   "Body" : {
      "Data" : {
         "Inverters" : {
            "1" : {
               "DT" : 110,
               "E_Day" : 7384,
               "E_Total" : 22517400,
               "E_Year" : 5956075,
               "P" : 0
            }
         },
         "Site" : {
            "E_Day" : 7384,
            "E_Total" : 22517400,
            "E_Year" : 5956075,
            "Meter_Location" : "load",
            "Mode" : "vague-meter",
            "P_Akku" : null,
            "P_Grid" : 1146.4967552201185,
            "P_Load" : -1146.4967552201185,
            "P_PV" : null,
            "rel_Autonomy" : null,
            "rel_SelfConsumption" : null
         },
         "Version" : "10"
      }
   },
   "Head" : {
      "RequestArguments" : {},
      "Status" : {
         "Code" : 0,
         "Reason" : "",
         "UserMessage" : ""
      },
      "Timestamp" : "2017-12-13T18:18:05+01:00"
   }
}


wobei dies hier aktuell (ist dunkel) der Verbrauch und Netzbezug ist:

"P_Grid" : 1146.4967552201185,
"P_Load" : -1146.4967552201185,

Wie kann ich das nun mit httpmod in FHEM definieren?

octek0815

Zitat von: topa_LE am 13 Dezember 2017, 18:21:14
Ok klasse. Danke Dir.

Das liefert mir:

{
   "Body" : {
      "Data" : {
         "Inverters" : {
            "1" : {
               "DT" : 110,
               "E_Day" : 7384,
               "E_Total" : 22517400,
               "E_Year" : 5956075,
               "P" : 0
            }
         },
         "Site" : {
            "E_Day" : 7384,
            "E_Total" : 22517400,
            "E_Year" : 5956075,
            "Meter_Location" : "load",
            "Mode" : "vague-meter",
            "P_Akku" : null,
            "P_Grid" : 1146.4967552201185,
            "P_Load" : -1146.4967552201185,
            "P_PV" : null,
            "rel_Autonomy" : null,
            "rel_SelfConsumption" : null
         },
         "Version" : "10"
      }
   },
   "Head" : {
      "RequestArguments" : {},
      "Status" : {
         "Code" : 0,
         "Reason" : "",
         "UserMessage" : ""
      },
      "Timestamp" : "2017-12-13T18:18:05+01:00"
   }
}


wobei dies hier aktuell (ist dunkel) der Verbrauch und Netzbezug ist:

"P_Grid" : 1146.4967552201185,
"P_Load" : -1146.4967552201185,

Wie kann ich das nun mit httpmod in FHEM definieren?

Der Beitrag von mir sollte dir alles notwendige liefern...

topa_LE

@octek0815

Jepp, war Doppelposting, danke dir. Bin schon am "bauen" ...  :)

topa_LE

Besten Dank für die Hilfe.

Klappt wunderbar.  ;)

parabacus

Hallo topa_LE!

ich hab auch einen Fronius 6.0.3 M WR im Keller und befasse mich erst seit wenigen Tagen mit FHEM.
Meine Wärmepumpe und einen IR-Stromlesekopf habe ich schon integriert. Der nächste Schritt wäre jetzt natürlich der WR. Wärst du vielleicht bereit, deine Umsetzung zu teilen?

Ciao
Tom
Stiebel Eltron LWZ 504 / FHEM auf Rasperry Pi 3 / THZ / Weather / TABLETUI / SB_SERVER / SB_PLAYER  / OBIS / Verkehrsinfo / speedtest / Presence / FRITZ / ZWDongle / ZWAVE / Calendar / CALVIEW/ IPCAM/ ABFALL / ESPEasy

octek0815

Zitat von: parabacus am 07 Januar 2018, 16:25:48
Hallo topa_LE!

ich hab auch einen Fronius 6.0.3 M WR im Keller und befasse mich erst seit wenigen Tagen mit FHEM.
Meine Wärmepumpe und einen IR-Stromlesekopf habe ich schon integriert. Der nächste Schritt wäre jetzt natürlich der WR. Wärst du vielleicht bereit, deine Umsetzung zu teilen?

Ciao
Tom

Hallo,

steht alles weiter oben...

Grüße
Oliver

topa_LE

@parabacus

Hoffe du kommst klar damit. Als Einsteiger in FHEM ist das nicht ohne ... Viel Erfolg.

über httpmod:


define httpmod_PV_Solaranlage HTTPMOD http://192.168.178.60/solar_api/v1/GetPowerFlowRealtimeData.fcgi 10
attr httpmod_PV_Solaranlage userattr reading01Name reading01OMap reading01Regex reading02Name reading02OMap reading02Regex reading03Name reading03OMap reading03Regex reading04Name reading04OMap reading04Regex reading05Name reading05OMap reading05Regex reading06Name reading06OMap reading06Regex reading07Name reading07OMap reading07Regex reading08Name reading08OMap reading08Regex
attr httpmod_PV_Solaranlage alias Solar PV Fronius Sym 6.0.3 - Daten
attr httpmod_PV_Solaranlage alignTime 00:00:00
attr httpmod_PV_Solaranlage event-on-change-reading .*
attr httpmod_PV_Solaranlage group PV Solaranlage FRONIUS
attr httpmod_PV_Solaranlage icon message_light_intensity
attr httpmod_PV_Solaranlage reading01Name Verbrauch_P_Grid
attr httpmod_PV_Solaranlage reading01OMap null:0
attr httpmod_PV_Solaranlage reading01Regex "P_Grid"[ : \t]+([-+]?[a-z\d\.]+)
attr httpmod_PV_Solaranlage reading02Name Netzbezug_P_Load
attr httpmod_PV_Solaranlage reading02OMap null:0
attr httpmod_PV_Solaranlage reading02Regex "P_Load"[ : \t]+([-+]?[a-z\d\.]+)
attr httpmod_PV_Solaranlage reading03Name Produktion_P_Generate
attr httpmod_PV_Solaranlage reading03OMap null:0
attr httpmod_PV_Solaranlage reading03Regex "P_PV"[ : \t]+([-+]?[a-z\d\.]+)
attr httpmod_PV_Solaranlage reading04Name Eigenverbrauch_Current_SelfConsumption
attr httpmod_PV_Solaranlage reading04OMap null:0
attr httpmod_PV_Solaranlage reading04Regex "rel_SelfConsumption"[ : \t]+([-+]?[a-z\d\.]+)
attr httpmod_PV_Solaranlage reading05Name Relative_Current_Autonomy
attr httpmod_PV_Solaranlage reading05OMap null:0
attr httpmod_PV_Solaranlage reading05Regex "rel_Autonomy"[ : \t]+([-+]?[a-z\d\.]+)
attr httpmod_PV_Solaranlage reading06Name Produktion_pro_Tag_Fronius
attr httpmod_PV_Solaranlage reading06OMap null:0
attr httpmod_PV_Solaranlage reading06Regex "E_Day"[ : \t]+([-+]?[a-z\d\.]+)
attr httpmod_PV_Solaranlage reading07Name Produktion_pro_Jahr_Fronius
attr httpmod_PV_Solaranlage reading07OMap null:0
attr httpmod_PV_Solaranlage reading07Regex "E_Year"[ : \t]+([-+]?[a-z\d\.]+)
attr httpmod_PV_Solaranlage reading08Name Produktion_Gesamt_Fronius
attr httpmod_PV_Solaranlage reading08OMap null:0
attr httpmod_PV_Solaranlage reading08Regex "E_Total"[ : \t]+([-+]?[a-z\d\.]+)
attr httpmod_PV_Solaranlage room Draußen,HW-Raum
attr httpmod_PV_Solaranlage showError 1
attr httpmod_PV_Solaranlage stateFormat {return "PV aktuell: ".sprintf("%.0f",ReadingsVal($name,"Produktion_P_Generate",0))." W | PV Eigenverbrauch: ".sprintf("%.0f",ReadingsVal($name,"PV_Eigenverbrauch_Aktuell_in_Watt",0))." W | PV Einspeisung: ".sprintf("%.0f",ReadingsVal($name,"PV_Einspeisung_Aktuell_in_Watt",0))." W | Netzbezug: ".sprintf("%.0f",ReadingsVal($name,"Strombezug_Aktuell_in_Watt",0))." W | Stromverbrauch: ".sprintf("%.0f",ReadingsVal($name,"Strom_Gesamtverbrauch_Aktuell_in_Watt",0))." W<br/>PV Leistung (60 Minuten Ø): ".sprintf("%.0f",ReadingsVal($name,"statPower_P_GenerateHourAvg",0))." | Autarkiegrad: ".sprintf("%.1f",ReadingsVal($name,"Relative_Current_Autonomy",0))." % | PV-Eigenverbrauch: ".sprintf("%.1f",ReadingsVal($name,"Eigenverbrauch_Current_SelfConsumption",0))." %";;}
attr httpmod_PV_Solaranlage userReadings PV_Einspeisung_Aktuell_in_Watt { my $temp1 = ReadingsVal($name,"Verbrauch_P_Grid",0)*-1;; return $temp1 if($temp1>0);; return 0;; }, Strombezug_Aktuell_in_Watt { my $temp2 = ReadingsVal($name,"Verbrauch_P_Grid",0);; return 0 if($temp2<0);; return $temp2;;}, PV_Eigenverbrauch_Aktuell_in_Watt { my $temp3 = ReadingsVal($name,"Produktion_P_Generate",0);; my $temp4 = ReadingsVal($name,"PV_Einspeisung_Aktuell_in_Watt",0);; my $temp5 = $temp3 - $temp4;; return $temp5 if($temp5>0);; return 0;; }, Strom_Gesamtverbrauch_Aktuell_in_Watt { my $temp41 = ReadingsVal($name,"Netzbezug_P_Load",0)*-1;; return $temp41 if($temp41>0);; return 0;;}
attr httpmod_PV_Solaranlage verbose 2


Fronius Modbus BasisModul:


define PV_Solar_Basismodul Fronius_Modbus 1 30 192.168.178.60:502 TCP
attr PV_Solar_Basismodul userattr 1 devStateIcon event-on-change-reading event-on-update-reading icon sortUpdate
attr PV_Solar_Basismodul alias Solaranlage Basisdaten
attr PV_Solar_Basismodul devStateIcon opened:10px-kreis-gruen disconnected:10px-kreis-rot
attr PV_Solar_Basismodul event-on-change-reading .*
attr PV_Solar_Basismodul event-on-update-reading .*
attr PV_Solar_Basismodul group PV Solaranlage FRONIUS
attr PV_Solar_Basismodul icon message_light_intensity
attr PV_Solar_Basismodul room Draußen,HW-Raum
attr PV_Solar_Basismodul sortUpdate 1


Fronius_Modbus_MPPT Modul (dieses benötigst du eigentlich nicht mehr, hab es aber immer noch drin)


define PV_Solar_Trackerdaten Fronius_Modbus_MPPT 1 60 192.168.178.60:502 TCP
attr PV_Solar_Trackerdaten userattr 1 devStateIcon event-on-change-reading event-on-update-reading icon poll-Temp_String1__C poll-Temp_String2__C sortUpdate
attr PV_Solar_Trackerdaten alias Solaranlage TRACKER
attr PV_Solar_Trackerdaten devStateIcon opened:10px-kreis-gruen disconnected:10px-kreis-rot
attr PV_Solar_Trackerdaten event-on-change-reading .*
attr PV_Solar_Trackerdaten event-on-update-reading .*
attr PV_Solar_Trackerdaten group PV Solaranlage FRONIUS
attr PV_Solar_Trackerdaten icon message_light_intensity
attr PV_Solar_Trackerdaten poll-Temp_String1__C 0
attr PV_Solar_Trackerdaten poll-Temp_String2__C 0
attr PV_Solar_Trackerdaten room Draußen,HW-Raum
attr PV_Solar_Trackerdaten sortUpdate 1


Entsprechend deinen Bedürfnissen anpassen. Die Module natürlich von erster Seite hier laden und nach opt/FHEM kopieren. Aber wie mein Vorredner schon schreib, steht hier alles schon im Thread. Einiges lesen und probieren, ging mir auch so  ;)

parabacus

Hi topa_LE!

vielen Dank für deine Rückmeldung dazu!
Ich hab's gestern noch bisschen versucht, hatte aber bisher noch keinen grossen Erfolg, was auslesen zu können, musste aber aus zeitlichen Gründen abbrechen. Wenn ich in den nächsten Tagen mal wieder Zeit hab, werde ich mir das alles nochmal genauer ansehen und hoffentlich dann zum Laufen bringen. Ich lasse es dir gerne wissen...!  ;)

FHEM ist für einen Einsteiger echt nicht ganz trivial und v.a. dann nicht, wenn man sonst Programmierung in C gewohnt ist und die letzten selbst programmierten Zeilen  auch schon fast 15 Jahre "alt" sind....  ::) - ich bin aber zuversichtlich...  8)

Ciao
Tom
Stiebel Eltron LWZ 504 / FHEM auf Rasperry Pi 3 / THZ / Weather / TABLETUI / SB_SERVER / SB_PLAYER  / OBIS / Verkehrsinfo / speedtest / Presence / FRITZ / ZWDongle / ZWAVE / Calendar / CALVIEW/ IPCAM/ ABFALL / ESPEasy

parabacus

So - inzwischen hatte ich etwas Zeit und auch schon Erfolge!  :D

Die Abfrage per HTTPMOD funktioniert soweit derart, dass ich folgende Readings bekomme:

  • Produktion_P_Generate
  • PV_Produktion_pro_Tag
  • PV_Produktion_pro_Jahr
  • PV_Produktion_Gesamt

Die anderen (Relative_Current_Autonomy, Eigenverbrauch_Current_SelfConsumption, Netzbezug_P_Load und Verbrauch_P_Grid) bekomme ich nicht - wahrscheinlich gibt das mein WR nicht aus oder man müsste ihn per Konfiguration irgendwie dazu bewegen. Wenn ich direkt auf die IP des WR gehe, zeigt mir das Web-IF aber auch nicht mehr an.

Ich hab schon versucht, die Konfiguration an meinem WR aufzurufen, aber das ist passwortgeschützt und ich wüsste dazu keinen Login. Gibt's da vielleicht einen Standard-User/PW? Ansonsten müsste ich das wohl bei meinem Installateur erfragen. Ein Firmware-Update (3.7.3-2 auf 3.9.1-4) wird mir auch angezeigt, das durchführbar wäre.

Dann noch eine Frage zu den beiden anderen Teilen "PV_Solar_Basismodul Fronius_Modbus" und  "PV_Solar_Trackerdaten Fronius_Modbus_MPPT".
Beide werden mir nicht als opend angezeigt.
Den Teil Modbus_MPPT brauche ich wahrscheinlich auch gar nicht. Temperatur-Sensoren habe ich meiner Kenntnis nach nicht (sehe ich auch im WebIF unter Sensoren nicht).
Das beide nicht laufen hängt vielleicht auch wieder mit der Konfiguration des WR zusammen - Modbus-Freischaltung?
Stiebel Eltron LWZ 504 / FHEM auf Rasperry Pi 3 / THZ / Weather / TABLETUI / SB_SERVER / SB_PLAYER  / OBIS / Verkehrsinfo / speedtest / Presence / FRITZ / ZWDongle / ZWAVE / Calendar / CALVIEW/ IPCAM/ ABFALL / ESPEasy

topa_LE

Hallo,

ja die Zugangsdaten für die Settings der Anlage sind PW geschützt. Die sollstest du aber von deinem Installateur erfragen können, diese benötigst du um die Modbus Settings anzupassen/einrichten.

Modus auf Port 502, anbei der Screen.

Was liefert dir denn gegenwärtig dein api-Aufruf ?
http://192.168.178.60/solar_api/v1/GetPowerFlowRealtimeData.fcgi

topa_LE

Zitat von: parabacus am 11 Januar 2018, 10:33:44
Ein Firmware-Update (3.7.3-2 auf 3.9.1-4) wird mir auch angezeigt, das durchführbar wäre.

Das muss du auf alle Fälle durchführen. Sonst gibt es den String2 Error, bzw. kann nicht ausgewertet werden.

Hast du mal den Thread von Anfang hier durchgelesen?  Da steht eigentlich alles drin.  ;)
Ok, der ist schon ziemlich groß geworden mit der Zeit, könnte (mann) ja mal alles Wichtige in einem neuen Thread zusammenfassen ...  :P

parabacus

Klar hab ich den Thread mal komplett gelesen - aber sicher als Greenhorn in der Materie noch nicht alles verstanden. Daher Dank an dich, dass du mir weiterhilfst - wie ich gelesen habe, ging's dir ja anfangs auch nicht viel anders.  ???

Der API-Aufruf bring folgendes:
{
"Head" : {
"RequestArguments" : {},
"Status" : {
"Code" : 0,
"Reason" : "",
"UserMessage" : ""
},
"Timestamp" : "2018-01-11T18:59:51+01:00"
},
"Body" : {
"Data" : {
"Site" : {
"Mode" : "produce-only",
"P_Grid" : null,
"P_Load" : null,
"P_Akku" : null,
"P_PV" : null,
"rel_SelfConsumption" : null,
"rel_Autonomy" : null,
"E_Day" : 1615,
"E_Year" : 42641,
"E_Total" : 7784510
},
"Inverters" : {
"3" : {
"DT" : 110,
"P" : null,
"E_Day" : 1615,
"E_Year" : 42641,
"E_Total" : 7784510
}
}
}
}
}


Wie schon gesagt, bekomme ich auch nur die genannten PV-Erzeugungs-Daten.

Da ich nicht sicher war, ob man die restlichen Daten dann per Konfiguration des WR bekommt, hatte ich die Frage gestellt und wenn ich reingekommen wäre, wäre das wohl auch nicht nötig gewesen.
Ich werde mal morgen meinen Inst. belästigen und bitten, dass er die Login-Daten rausrückt.

Stiebel Eltron LWZ 504 / FHEM auf Rasperry Pi 3 / THZ / Weather / TABLETUI / SB_SERVER / SB_PLAYER  / OBIS / Verkehrsinfo / speedtest / Presence / FRITZ / ZWDongle / ZWAVE / Calendar / CALVIEW/ IPCAM/ ABFALL / ESPEasy