[Tutorial] PV-Anlagen Einbindung in FHEM mit einem Fronius IG20 mit Datalogger

Begonnen von Burny4600, 24 März 2016, 09:33:05

Vorheriges Thema - Nächstes Thema

Burny4600

Anbei eine Erläuterung wie ich die Einbindung des Fronius IG20 mit Datalogger Web 2
Verwendet wird ein Raspberry Pi 2 mit Raspbian Jessie Stand 02.2016
FHEM Version: Last released version: (as of 2015-11-15): fhem-5.7.tar.gz, fhem-5.7.deb,

PM Versionen am Raspi
Latest Revision: 11120

File                Rev   Last Change

fhem.pl             11109 2016-03-21 09:29:52Z rudolfkoenig
96_allowed.pm       10530 2016-01-16 19:27:21Z rudolfkoenig
90_at.pm            10594 2016-01-22 13:27:34Z rudolfkoenig
98_autocreate.pm    11094 2016-03-20 09:41:03Z rudolfkoenig
91_eventTypes.pm    10530 2016-01-16 19:27:21Z rudolfkoenig
01_FHEMWEB.pm       11109 2016-03-21 09:29:52Z rudolfkoenig
92_FileLog.pm       10530 2016-01-16 19:27:21Z rudolfkoenig
98_HTTPMOD.pm       11002 2016-03-05 19:39:06Z ststrobel
98_logProxy.pm      10957 2016-02-28 16:07:49Z justme1968
34_NUT.pm            9023 2015-08-05 09:00:12Z narsskrarc
33_readingsProxy.pm 10532 2016-01-16 19:56:21Z justme1968
99_SUNRISE_EL.pm    10569 2016-01-19 06:30:28Z rudolfkoenig
98_SVG.pm           10792 2016-02-10 20:20:49Z rudolfkoenig
98_telnet.pm        10551 2016-01-17 11:03:44Z rudolfkoenig
99_Utils.pm         10570 2016-01-19 06:39:23Z rudolfkoenig
98_version.pm       11026 2016-03-08 07:25:45Z markusbloch

DevIo.pm            11020 2016-03-07 12:01:43Z rudolfkoenig
HttpUtils.pm        10810 2016-02-13 10:30:16Z rudolfkoenig
RTypes.pm           10476 2016-01-12 21:03:33Z borisneubert
SetExtensions.pm    10858 2016-02-15 17:42:13Z rudolfkoenig
TcpServerUtils.pm   10346 2016-01-03 12:34:27Z rudolfkoenig


Zusätzlich wird diese Perlversion benötigt: sudo apt-get install libjson-perl

Verwendet Config:
# Fronius Eingangsdaten definieren PV-Anlagen 1
define PV_Anlage_1 HTTPMOD http://192.xxx.xxx.xxx/solar_api/GetInverterRealtimeData.cgi?Scope=System 60
attr PV_Anlage_1 alias PV Anlage 1
attr PV_Anlage_1 event-on-change-reading Body_Data_DAY_ENERGY_Values_1,Body_Data_PAC_Values_1,Body_Data_TOTAL_ENERGY_Values_1,Body_Data_Data_YEAR_ENERGY_Values_1,DDE,DTE,DYE,PAC
attr PV_Anlage_1 extractAllJSON 1
attr PV_Anlage_1 group PV Anlagen
attr PV_Anlage_1 icon measure_photovoltaic_inst
attr PV_Anlage_1 room _RxTx
attr PV_Anlage_1 stateFormat {sprintf("Aktuell: %s Watt",(ReadingsVal($name,"PAC",0)))}
attr PV_Anlage_1 userReadings PAC:Body_Data_PAC_Values_1 {ReadingsVal("$name","Body_Data_PAC_Values_1",0)}, DDE:Body_Data_DAY_ENERGY_Values_1 {ReadingsVal("$name","Body_Data_DAY_ENERGY_Values_1",0)/1000}, DTE:Body_Data_TOTAL_ENERGY_Values_1 {ReadingsVal("$name","Body_Data_TOTAL_ENERGY_Values_1",0)/1000}, DYE:Body_Data_YEAR_ENERGY_Values_1 {ReadingsVal("$name","Body_Data_YEAR_ENERGY_Values_1",0)/1000}
attr PV_Anlage_1 verbose 2

# -----------------------------------------------------------------------------------------------

#####################################
###       Trend Definitionen      ###
#####################################
define PVA1 FileLog /media/hdd/fhem/log01/energiezaehler/PVA1-%Y-%m.log PV_Anlage_1:PAC.*
attr PVA1 alias Energieertrag aktuell PVA1
attr PVA1 logtype :,text
attr PVA1 room _LOG

define SVG_PVA1 SVG PVA1:SVG_PVA1:CURRENT
attr SVG_PVA1 fixedrange day
attr SVG_PVA1 group Energieertrag PV-Anlagen
attr SVG_PVA1 label "PV_Anlage_1 Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_PVA1 room Trend


define PVA1_M FileLog /media/hdd/fhem/log01/energiezaehler/PVA1_M-%Y-%m.log PV_Anlage_1:DDE.*
attr PVA1_M alias Energieertrag pro Tag PVA1
attr PVA1_M logtype :,text
attr PVA1_M room _LOG

define SVG_PVA1_M SVG PVA1_M:SVG_PVA1_M:CURRENT
attr SVG_PVA1_M fixedrange month
attr SVG_PVA1_M group Energieertrag PV-Anlagen
attr SVG_PVA1_M label "PV_Anlage_1 Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_PVA1_M room Trend
attr SVG_PVA1_M startDate 0


define PVA1_Y FileLog /media/hdd/fhem/log01/energiezaehler/PVA1_Y-%Y.log PV_Anlage_1:DDE.*
attr PVA1_Y alias Energieertrag pro Monat PVA1
attr PVA1_Y logtype :,text
attr PVA1_Y room _LOG

define SVG_PVA1_Y SVG PVA1_Y:SVG_PVA1_Y:CURRENT
attr SVG_PVA1_Y fixedrange year
attr SVG_PVA1_Y group Energieertrag PV-Anlagen
attr SVG_PVA1_Y label "PV_Anlage_1 Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_PVA1_Y room Trend
attr SVG_PVA1_Y startDate 0


# -----------------------------------------------------------------------------------------------

#####################################
###       Anzeigenwerte für       ###
###      Floorplan definieren     ###
#####################################
define PV_Anlage_1_DAY_ENERGY readingsProxy PV_Anlage_1:DDE
attr PV_Anlage_1_DAY_ENERGY alias Energieertrag Tagesproduktion
attr PV_Anlage_1_DAY_ENERGY group PV Anlage 1
attr PV_Anlage_1_DAY_ENERGY icon measure_photovoltaic_inst
attr PV_Anlage_1_DAY_ENERGY room PV-Anlagen
attr PV_Anlage_1_DAY_ENERGY stateFormat state kWh

define PV_Anlage_1_TOTAL_ENERGY readingsProxy PV_Anlage_1:DTE
attr PV_Anlage_1_TOTAL_ENERGY alias Energieertrag gesamt Produktion
attr PV_Anlage_1_TOTAL_ENERGY group PV Anlage 1
attr PV_Anlage_1_TOTAL_ENERGY icon measure_photovoltaic_inst
attr PV_Anlage_1_TOTAL_ENERGY room PV-Anlagen
attr PV_Anlage_1_TOTAL_ENERGY stateFormat state kWh

define PV_Anlage_1_YEAR_ENERGY readingsProxy PV_Anlage_1:DYE
attr PV_Anlage_1_YEAR_ENERGY alias Energieertrag Jahresproduktion
attr PV_Anlage_1_YEAR_ENERGY group PV Anlage 1
attr PV_Anlage_1_YEAR_ENERGY icon measure_photovoltaic_inst
attr PV_Anlage_1_YEAR_ENERGY room PV-Anlagen
attr PV_Anlage_1_YEAR_ENERGY stateFormat state kWh

define PV_Anlage_1_PAC readingsProxy PV_Anlage_1:PAC
attr PV_Anlage_1_PAC alias Energieertrag aktuell
attr PV_Anlage_1_PAC group PV Anlage 1
attr PV_Anlage_1_PAC icon measure_photovoltaic_inst
attr PV_Anlage_1_PAC room PV-Anlagen
attr PV_Anlage_1_PAC stateFormat state W


Sowie ich etwas Neues habe werde ich dies hier ergänzen.
Viel Spaß mit dem Nachbau.

PS: Für Verbesserungen habe ich auch ein Ohr, denn dies ist eines meiner ersten Projekte.
Mfg Chris

Raspberry Pi 2/2+/3/3+/4 / Betriebssystem: Bullseye Lite
Schnittstellen: RFXtrx433E, SIGNALduino, MQTT, nanoCUL, HM-MOD-UART, 1-Wire, LAN, ser2net, FHEM2FEHEM
Devices: S.USV, APC-USV, Fronius Datalogger Web 2, FS20, IT, Resol VBUS & DL2, TEK603, WMR200, YouLess, Homematic, MQTT