Autor Thema: [98_Fronius.pm] Fronius API Modul  (Gelesen 16401 mal)

Offline eurofinder

  • Full Member
  • ***
  • Beiträge: 461
Antw:[98_Fronius.pm] Fronius API Modul
« Antwort #90 am: 22 Dezember 2021, 22:51:14 »
@fred_feuerstein:
Hallo,

ich frage die Werte von meinem Symo 6.0-3-M wie folgt ab:
defmod PV_Wechselrichter fronius Deine-IP-PV-Wechselrichter
attr PV_Wechselrichter DbLogInclude PowerFlow_Inverters_1_P,Bezug,Einspeisung,PowerFlow_Site_P_Load
attr PV_Wechselrichter IntervalRealtimeData 20
attr PV_Wechselrichter alias Fronius Symo
attr PV_Wechselrichter devStateStyle style="text-align:right"
attr PV_Wechselrichter event-on-change-reading .*
attr PV_Wechselrichter event-on-update-reading .*
attr PV_Wechselrichter group Fronius
attr PV_Wechselrichter room PV
attr PV_Wechselrichter stateFormat {return "Status: ".ReadingsVal($name,"state","")."<br>\
PV-aktuell: ".sprintf("%.0f",ReadingsVal($name,"PowerFlow_Inverters_1_P",0))." W<br>\
PV Eigenverbrauch: ".sprintf("%.0f",ReadingsVal($name,"PowerFlow_Site_P_Load",0))." W<br>\
PV Einspeisung: ".sprintf("%.0f",ReadingsVal($name,"Einspeisung",0))." W<br>\
Netzbezug: ".sprintf("%.0f",ReadingsVal($name,"Bezug",0))." W<br>\
Autarkiegrad: ".sprintf("%.1f",ReadingsVal($name,"PowerFlow_Site_rel_Autonomy",0))." %<br>\
PV-Eigenverbrauch: ".sprintf("%.1f",ReadingsVal($name,"PowerFlow_Site_rel_SelfConsumption",0))." %";;}
attr PV_Wechselrichter userReadings Einspeisung:PowerFlow_Site_P_Grid.* {ReadingsVal($name,"PowerFlow_Site_P_Grid","")<0?ReadingsVal($name,"PowerFlow_Site_P_Grid","")*-1:0},\
Bezug:PowerFlow_Site_P_Grid.* {ReadingsVal($name,"PowerFlow_Site_P_Grid","")>0?ReadingsVal($name,"PowerFlow_Site_P_Grid",""):0}
attr PV_Wechselrichter verbose 2

Per ElectricityCalculator lasse ich dann die Werte berechnen und ausgeben:
defmod PV_Rechner ElectricityCalculator PV_Wechselrichter:PowerFlow_Inverters_1_E_Total.*
attr PV_Rechner BasicPricePerAnnum 0
attr PV_Rechner Currency &#8364;;
attr PV_Rechner DecimalPlace 3
attr PV_Rechner ElectricityCounterOffset 0
attr PV_Rechner ElectricityKwhPerCounts 0.001
attr PV_Rechner ElectricityPricePerKWh 0.2471
attr PV_Rechner MonthOfAnnualReading 1
attr PV_Rechner MonthlyPayment 0
attr PV_Rechner ReadingDestination CalculatorDevice
attr PV_Rechner SiPrefixPower W
attr PV_Rechner alias PV-Anlage
attr PV_Rechner devStateStyle style="text-align:right"
attr PV_Rechner icon sani_solar
attr PV_Rechner room PV
attr PV_Rechner stateFormat {return "Heute erzeugt: ".sprintf("%.2f",ReadingsVal($name,"PV_Wechselrichter_PowerFlow_Inverters_1_E_Total_EnergyDay",0))." kWh<br>\
Gestern erzeugt: ".sprintf("%.2f",ReadingsVal($name,"PV_Wechselrichter_PowerFlow_Inverters_1_E_Total_EnergyDayLast",0))." kWh<br>\
bisher im Monat erzeugt: ".sprintf("%.2f",ReadingsVal($name,"PV_Wechselrichter_PowerFlow_Inverters_1_E_Total_EnergyMonth",0))." kWh<br>\
letzten Monat erzeugt: ".sprintf("%.2f",ReadingsVal($name,"PV_Wechselrichter_PowerFlow_Inverters_1_E_Total_EnergyMonthLast",0))." kWh<br>\
bisher im Jahr erzeugt: ".sprintf("%.2f",ReadingsVal($name,"PV_Wechselrichter_PowerFlow_Inverters_1_E_Total_EnergyYear",0))." kWh";;}

Für die Bezug- und Einspeisewerte nutze ich das SmarMeter:
defmod FroniusMeter Fronius_Modbus_Meter 240 30 Deine-IP-Wechselrichter:502 TCP
attr FroniusMeter devStateStyle style="text-align:right"
attr FroniusMeter event-on-change-reading .*
attr FroniusMeter poll-Energy_total__kWh 1
attr FroniusMeter room PV
attr FroniusMeter stateFormat {return "Status: ".ReadingsVal($name,"state","")."<br>".ReadingsTimestamp($name,'Energy_export__kWh','')."<br>Einspeisung: ".sprintf("%.0f",ReadingsVal($name,"Energy_export_current__kWh",0))." W | Gesamt: ".sprintf("%.1f",ReadingsVal($name,"Energy_export__kWh",0))."W<br>\
Bezug: ".sprintf("%.0f",ReadingsVal($name,"Energy_import_current__kWh",0))." W | Gesamt: ".sprintf("%.1f",ReadingsVal($name,"Energy_import__kWh",0))."W<br>".ReadingsTimestamp($name,'Energy_import__kWh','')}
attr FroniusMeter userReadings Energy_import_current__kWh {ReadingsVal("PV_Wechselrichter","Bezug",0)},\
Energy_export_current__kWh {ReadingsVal("PV_Wechselrichter","Einspeisung",0)}\

attr FroniusMeter verbose 2

Bezug:
defmod PV_Bezug ElectricityCalculator FroniusMeter:Energy_import__kWh.*
attr PV_Bezug BasicPricePerAnnum 0
attr PV_Bezug Currency &#8364;;
attr PV_Bezug DecimalPlace 3
attr PV_Bezug ElectricityCounterOffset 0
attr PV_Bezug ElectricityKwhPerCounts 1
attr PV_Bezug ElectricityPricePerKWh 0.2567
attr PV_Bezug MonthOfAnnualReading 5
attr PV_Bezug MonthlyPayment 0
attr PV_Bezug ReadingDestination CalculatorDevice
attr PV_Bezug SiPrefixPower W
attr PV_Bezug devStateStyle style="text-align:right"
attr PV_Bezug room PV
attr PV_Bezug stateFormat {return "Heute bezogen: ".sprintf("%.2f",ReadingsVal($name,"FroniusMeter_Energy_import__kWh_EnergyDay",0))." kWh<br>\
Gestern bezogen: ".sprintf("%.2f",ReadingsVal($name,"FroniusMeter_Energy_import__kWh_EnergyDayLast",0))." kWh<br>\
bisher im Monat bezogen: ".sprintf("%.2f",ReadingsVal($name,"FroniusMeter_Energy_import__kWh_EnergyMonth",0))." kWh<br>\
letzten Monat bezogen: ".sprintf("%.2f",ReadingsVal($name,"FroniusMeter_Energy_import__kWh_EnergyMonthLast",0))." kWh<br>\
bisher im Jahr bezogen: ".sprintf("%.2f",ReadingsVal($name,"FroniusMeter_Energy_import__kWh_EnergyYear",0))." kWh";;}

Einspeisung:
defmod PV_Einspeisung ElectricityCalculator FroniusMeter:Energy_export__kWh.*
attr PV_Einspeisung BasicPricePerAnnum 0
attr PV_Einspeisung Currency &#8364;;
attr PV_Einspeisung DecimalPlace 3
attr PV_Einspeisung ElectricityCounterOffset 0
attr PV_Einspeisung ElectricityKwhPerCounts 1
attr PV_Einspeisung ElectricityPricePerKWh 0.2567
attr PV_Einspeisung MonthOfAnnualReading 5
attr PV_Einspeisung MonthlyPayment 0
attr PV_Einspeisung ReadingDestination CalculatorDevice
attr PV_Einspeisung SiPrefixPower W
attr PV_Einspeisung devStateStyle style="text-align:right"
attr PV_Einspeisung room PV
attr PV_Einspeisung stateFormat {return "Heute eingespeist: ".sprintf("%.2f",ReadingsVal($name,"FroniusMeter_Energy_export__kWh_EnergyDay",0))." kWh<br>\
Gestern eingespeist: ".sprintf("%.2f",ReadingsVal($name,"FroniusMeter_Energy_export__kWh_EnergyDayLast",0))." kWh<br>\
bisher im Monat eingespeist: ".sprintf("%.2f",ReadingsVal($name,"FroniusMeter_Energy_export__kWh_EnergyMonth",0))." kWh<br>\
letzten Monat eingespeist: ".sprintf("%.2f",ReadingsVal($name,"FroniusMeter_Energy_export__kWh_EnergyMonthLast",0))." kWh<br>\
bisher im Jahr eingespeist: ".sprintf("%.2f",ReadingsVal($name,"FroniusMeter_Energy_export__kWh_EnergyYear",0))." kWh";;}

Gruß
eurofinder
RPI3+; Raspbian Buster Lite; RPI-RF-MOD; piVCCU3, HMIP-eTRV-2, HmIP-SWDO, HmIP-SRH, HmIP-STHO, HmIP-SLO
Hilfreich Hilfreich x 1 Liste anzeigen

Offline fred_feuerstein

  • Full Member
  • ***
  • Beiträge: 274
Antw:[98_Fronius.pm] Fronius API Modul
« Antwort #91 am: 23 Dezember 2021, 15:15:26 »
Vielen Dank!!

Den Wechselrichter SYMO GEN 24 10.0 hatte ich bereits per API eingebunden und auch ein paar usr-Readings angelegt. Habe noch ein bisschen ergänzt und den ElectricityCalculator auf den Total Wert gesetzt wie in deiner Config.

Nun wollte ich den Smart Meter über modbus wie in deiner Config einbinden. Ein Connect war nur so möglich:
defmod FroniusMeter Fronius_Modbus_Meter 200 30 Deine-IP-Wechselrichter:502 TCPAlso statt 240 eine 200.
Nun kommen einige Readings, auch die benötigten für den Berechnungen, aber die sind alle mit dem Wert 0.000

Hast Du noch eine Idee? Klar, es hat nichts mit dem API-Modul hier zu tun. Wenn Du meinst, gehen wir mit der Frage in einen anderen Thread.


Offline eurofinder

  • Full Member
  • ***
  • Beiträge: 461
Antw:[98_Fronius.pm] Fronius API Modul
« Antwort #92 am: 24 Dezember 2021, 23:50:15 »
@fred_feuerstein:
Im Fronius-Wechselrichter unter Einstellungen (mit admin anmelden) bei Modbus folgendes eingestellt?
    Datenausgabe über Modbus: tcp
    Modbus Port: 502
    String Control Adress-Offset: 101
    Sunspec Model Type: float
    Demo Modus: aus
Gruß
eurofinder
RPI3+; Raspbian Buster Lite; RPI-RF-MOD; piVCCU3, HMIP-eTRV-2, HmIP-SWDO, HmIP-SRH, HmIP-STHO, HmIP-SLO

Offline fred_feuerstein

  • Full Member
  • ***
  • Beiträge: 274
Antw:[98_Fronius.pm] Fronius API Modul
« Antwort #93 am: 25 Dezember 2021, 20:47:18 »
So wie es aussieht ist der smart Meter noch nicht korrekt installiert.
Bei Komponenten im Webif ist ein roter Punkt vor dem smart Meter.
Kenne das von einem Bekannten. Da ist der Punkt grün.
Denke, da muss der Elektriker, der alles installiert hat nochmal schauen.

Offline PhyTHZ

  • Newbie
  • Beiträge: 2
Antw:[98_Fronius.pm] Fronius API Modul
« Antwort #94 am: 31 Dezember 2021, 15:15:35 »
Zitat
So wie es aussieht ist der smart Meter noch nicht korrekt installiert.

Das muss nicht sein. Im photovoltaikforum gab es dazu einen Thread. Dort hieß es, dass laut Installationsanleitung das Smart Meter auf Modbus M1 und Speicher auf  Modbus M0 geklemmt werden soll. Die Software des Gen24 erwartet es aber wohl genau anders herum...
Gehen tut wohl beides.

Grüße

Offline fred_feuerstein

  • Full Member
  • ***
  • Beiträge: 274
Antw:[98_Fronius.pm] Fronius API Modul
« Antwort #95 am: 31 Dezember 2021, 16:37:47 »
Die Installationsfirma schaut es sich im neuen Jahr noch an. Ggfs. muss nur etwas umgeklemmt werden oder gar nur anders konfiguriert...

Offline treborst

  • New Member
  • *
  • Beiträge: 26
Antw:[98_Fronius.pm] Fronius API Modul
« Antwort #96 am: 07 Januar 2022, 20:38:54 »
Hallo @eurofinder,

vielen Dank für deine Info wie du die Daten auswertest.
Was ich nicht verstehe, warum du das Smartmeter per Modbus anbindest.
Die Werte des Smartmeters sind doch auch per API verfügbar, oder täusche ich mich da?
Den von dir verwendeten Wert des Smartmeters finde ich leider nicht, welcher würde dem von dir verwendeten entsprechen?

Offline eurofinder

  • Full Member
  • ***
  • Beiträge: 461
Antw:[98_Fronius.pm] Fronius API Modul
« Antwort #97 am: 08 Januar 2022, 09:18:56 »
@treborst:
Gegenwärtig bin ich mit der Abfrage über Modbus sehr zufrieden - läuft zuverlässig und ich bekomme alle Daten, die ich benötige. Alternativ kannst du natürlich von Fronius die Solar.web Query API nutzen.

Gruß
eurofinder
RPI3+; Raspbian Buster Lite; RPI-RF-MOD; piVCCU3, HMIP-eTRV-2, HmIP-SWDO, HmIP-SRH, HmIP-STHO, HmIP-SLO