LAN Schnittstelle PV-Anlage Fronius Datalogger Web 2

Begonnen von Burny4600, 10 März 2016, 10:56:29

Vorheriges Thema - Nächstes Thema

Burny4600

Hat hier jemand schon einmal eine Anbindung an einen Fronius Datalogger Web 2 realisiert?

Benötige Unterstützung wie ich die Daten des Fronius Datalogger Web 2 in das FHEM bekomme.
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

kanenas

Jessie@Raspi(v3)+SSD, CUL-MAX, CUL-433, CUL-FS20, JeeLink-PCA301, JeeLink-JLLaCrosse, HM-MOD-UART, HUEBridge(v2), ESPEasy, Tasmota, Plenticore 7 mit BYD 11,5

Burny4600

Leider bin ich mit diesem Betrag auch nicht weiter gekommen.
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

kanenas

Jessie@Raspi(v3)+SSD, CUL-MAX, CUL-433, CUL-FS20, JeeLink-PCA301, JeeLink-JLLaCrosse, HM-MOD-UART, HUEBridge(v2), ESPEasy, Tasmota, Plenticore 7 mit BYD 11,5

kanenas

Probier mal : http://froni_ip/solar_api/GetInverterRealtimeData.cgi?

Der Fronius Datalogger unterstützt die API V0 (nicht die V1)
Jessie@Raspi(v3)+SSD, CUL-MAX, CUL-433, CUL-FS20, JeeLink-PCA301, JeeLink-JLLaCrosse, HM-MOD-UART, HUEBridge(v2), ESPEasy, Tasmota, Plenticore 7 mit BYD 11,5

Burny4600

#5
@Dionysios
Danke vorerst für die Info.
Mit diesem Eintrag bekomme ich folgende Antwort vom IG20 mit dem Datalogger Web2:
{
"Head" : {
"RequestArguments" : {},
"Status" : {
"Code" : 255,
"Reason" : "CGI-Args: Invalid parameter Scope.",
"UserMessage" : ""
},
"Timestamp" : "2016-03-11T12:44:14+01:00"
}
}


Ergänzend habe ich alle Antworten die ich mit dem Browser bekommen habe im Anhang abgelegt.
Diese Anforderungen bzw. Antworten können aber auch nicht alles sein. Oder?

Nur was muss ich noch anpassen damit ich mit den erhalten Werten etwas anfangen kann?
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

HotteFred

Hi Chris,

sieht doch gar nicht mal so schlecht aus.
Zumindest DAY_ENERGY kannst du ja schon abfragen.
Wenn du an keine Realtime Daten ran kommst, schein der WR immer nur Tageweise etwas abzulegen. Ich vermute aber, da geht noch mehr. Laut API Beschreibung zumindest PAC, UAC und IAC. Versuche die mal zu finden.

Viel Glück. 
BananaPi mit FHEM, KM50, Velux Raumluftsensor, jede Menge HM-CC-RT-DN, jede Menge 1Wire Zeugs

kanenas

Du solltest unbedingt die API V0 PDF von Fronius besorgen. Link ist oben. Einfach registrieren und schon kannst du die herunterladen.

Probier mal bitte: http://froni_ip/solar_api/GetInverterRealtimeData.cgi?Scope=System

Dann solltest du die momentane, tägliche, jährliche und Gesamt-Einträge bekommen.


LG
Jessie@Raspi(v3)+SSD, CUL-MAX, CUL-433, CUL-FS20, JeeLink-PCA301, JeeLink-JLLaCrosse, HM-MOD-UART, HUEBridge(v2), ESPEasy, Tasmota, Plenticore 7 mit BYD 11,5

Burny4600

#8
@Dionysios
Zitathttp://froni_ip/solar_api/GetInverterRealtimeData.cgi?Scope=System
Diese Anforderung habe ich in meiner Übersicht der Schnittstelllen Tests schon angeführt und bringt auch eine Antwort wo Werte angeführt sind.
Zitat{
   "Head" : {
      "RequestArguments" : {
         "Scope" : "System"
      },
      "Status" : {
         "Code" : 0,
         "Reason" : "",
         "UserMessage" : ""
      },
      "Timestamp" : "2016-03-12T09:32:32+01:00"
   },
   "Body" : {
      "Data" : {
         "PAC" : {
            "Unit" : "W",
            "Values" : {
               "1" : 49
            }
         },
         "DAY_ENERGY" : {
            "Unit" : "Wh",
            "Values" : {
               "1" : 0
            }
         },
         "YEAR_ENERGY" : {
            "Unit" : "Wh",
            "Values" : {
               "1" : 184000
            }
         },
         "TOTAL_ENERGY" : {
            "Unit" : "Wh",
            "Values" : {
               "1" : 19883000
            }
         }
      }
   }
}

@HotteFred
ZitatLaut API Beschreibung zumindest PAC, UAC und IAC.
Dazu habe ich in der API V0 Beschreibung die ich habe leider nichts passendes gefunden.
Von Fronius habe ich betreffend Registrierung noch nichts zurück erhalten um eventuell eine aktuellere herunter zu laden.

Und was muß ich eigentlich noch machen, damit ich diese Werte als Readings erhalte?

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

HotteFred

Zitat von: Burny4600 am 12 März 2016, 09:34:06
@HotteFredDazu habe ich in der API V0 Beschreibung die ich habe leider nichts passendes gefunden.
Von Fronius habe ich betreffend Registrierung noch nichts zurück erhalten um eventuell eine aktuellere herunter zu laden.

Und was muß ich eigentlich noch machen, damit ich diese Werte als Readings erhalte?

Hallo Chris,

PAC hast du doch schon. Jetzt nur noch die HTTPMOD Doku lesen und einbauen.
Z.b.: Wie hier: https://forum.fhem.de/index.php/topic,24614.msg177126.html#msg177126
Sollte eigentlich klappen.

Viele Grüße


BananaPi mit FHEM, KM50, Velux Raumluftsensor, jede Menge HM-CC-RT-DN, jede Menge 1Wire Zeugs

Burny4600

#10
Irgendwie will das ganze trotzdem nicht.

Eingelesene Werte:
buf
HTTP/1.0 200 OK Content-Type: text/javascript { "Head" : { "RequestArguments" : { "Scope" : "System" }, "Status" : { "Code" : 0, "Reason" : "", "UserMessage" : "" }, "Timestamp" : "2016-03-13T13:03:14+01:00" }, "Body" : { "Data" : { "PAC" : { "Unit" : "W", "Values" : { "1" : 64 } }, "DAY_ENERGY" : { "Unit" : "Wh", "Values" : { "1" : 1000 } }, "YEAR_ENERGY" : { "Unit" : "Wh", "Values" : { "1" : 186000 } }, "TOTAL_ENERGY" : { "Unit" : "Wh", "Values" : { "1" : 19885000 } } } } }

Folgende Definitionen habe ich einfliessen lassen.
# Fronius Schnittstelle PV-Anlagen 1
define PV_Anlage_1 HTTPMOD http://192.xxx.xxx.xxx/solar_api/GetInverterRealtimeData.cgi?Scope=System 60
attr PV_Anlage_1 userattr reading01Name reading01Regex reading02Name reading02Regex reading03Name reading03Regex reading04Name reading04Regex reading05Name reading05Regex reading06Name reading06Regex reading07Name reading07Regex reading07ame reading08Name reading08Regex reading09Name reading09Regex
attr PV_Anlage_1 group PV_Anlagen_1
attr PV_Anlage_1 icon measure_photovoltaic_inst
attr PV_Anlage_1 reading01Name DAY_ENERGY
attr PV_Anlage_1 reading02Name TOTAL_ENERGY
attr PV_Anlage_1 reading03Name YEAR_ENERGY
attr PV_Anlage_1 reading04Name FAC
attr PV_Anlage_1 reading05Name IAC
attr PV_Anlage_1 reading06Name IDC
attr PV_Anlage_1 reading07Name PAC
attr PV_Anlage_1 reading08Name UAC
attr PV_Anlage_1 reading09Name UDC
attr PV_Anlage_1 reading01Regex "DAY_ENERGY"[:{\n\t ]+"Value"[ : \t]+([\d\.]+),
attr PV_Anlage_1 reading02Regex "TOTAL_ENERGY"[:{\n\t ]+"Value"[ : \t]+([\d\.]+),
attr PV_Anlage_1 reading03Regex "YEAR_ENERGY"[:{\n\t ]+"Value"[ : \t]+([\d\.]+),
attr PV_Anlage_1 reading04Regex "FAC"[:{\n\t ]+"Value"[ : \t]+([\d\.]+),
attr PV_Anlage_1 reading05Regex "IAC"[:{\n\t ]+"Value"[ : \t]+([\d\.]+),
attr PV_Anlage_1 reading06Regex "IDC"[:{\n\t ]+"Value"[ : \t]+([\d\.]+),
attr PV_Anlage_1 reading07Regex "PAC"[:{\n\t ]+"Value"[ : \t]+([\d\.]+),
attr PV_Anlage_1 reading08Regex "UAC"[:{\n\t ]+"Value"[ : \t]+([\d\.]+),
attr PV_Anlage_1 reading09Regex "UDC"[:{\n\t ]+"Value"[ : \t]+([\d\.]+),
attr PV_Anlage_1 room _RxTx
attr PV_Anlage_1 stateFormat {sprintf("%d", ReadingsVal($name,"PAC",0))}
attr PV_Anlage_1 userReadings PAC
attr PV_Anlage_1 verbose 2
define SVG_PV_Anlage_1 SVG PV_Anlage_1:SVG_PV_Anlage_1:CURRENT
attr SVG_PV_Anlage_1 room PV-Anlagen

Eigentlich müsste das stimmen und die eingelesenen Werte als Readings mit Zeitstempel ausgeben.
Fehlt hier noch etwas oder habe ich hier einen Denkfehler?
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

HotteFred

#11
Also ehrlich gesagt komme ich bei dir etwas durcheinander, weil du gefühlt in 10 Threads unterwegs bist wegen deinem Thema....

Wie Dionysios in einem anderen Thread schon geschrieben ist, ist deine Regexp falsch.
Es sieht so aus, als fehlt ein /\n/ für den Zeilenvorschub und dann die Abfrage auf den Wert nach dem "1":

Das solltest du Umbauen und dann sollte es eigentlich passen. Ich kanns leider mangels Datenlogger Card nicht testen.

Viel Glück.

BananaPi mit FHEM, KM50, Velux Raumluftsensor, jede Menge HM-CC-RT-DN, jede Menge 1Wire Zeugs

HotteFred

Hallo,

noch eine andere Idee: Es sollte eigentlich auch mit dem "autoparse" mit dem neuen HTTPMOD Modul von StefanStrobel funktionieren.
Das ist auf jedenfall einen Versuch wert.

Viele Grüße
BananaPi mit FHEM, KM50, Velux Raumluftsensor, jede Menge HM-CC-RT-DN, jede Menge 1Wire Zeugs

Burny4600

@HotteFred

Wie funktioniert das mit "autoparse" eigentlich.
Hast du hierfür eine Konfigurationsanleitung?
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

HotteFred

Hallo Chris,

genau, wie in der Doku beschrieben, also etwa so:


define Fronius HTTPMOD none 0
attr Fronius get01Name Fronius_Daten
attr Fronius getURL http://Fronius-IP/JSON-Pfrad
attr Fronius getHeader1 Content-Type: application/json
attr Fronius getHeader2 Accept: */*
attr Fronius extractAllJSON


Danach auf "get Fronius Fronius_Daten" klicken. Dann sollten die Readings automatisch erzeugt werden.

Grüße

p.s.: Bei dir als URL wie du oben gepostet hast wäre der Pfad dann :"http://froni_ip/solar_api/GetInverterRealtimeData.cgi?Scope=System"

BananaPi mit FHEM, KM50, Velux Raumluftsensor, jede Menge HM-CC-RT-DN, jede Menge 1Wire Zeugs