Ankündigung

Einklappen
Keine Ankündigung bisher.

Fronius Binding o. alternativ über HTTP Binding

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Fronius Binding o. alternativ über HTTP Binding

    Hallo zusammen,

    ich habe bei mir einen SymoHybrid Wechselrichter, soweit funktioniert dieser auch in Kombination mit dem Fronius Binding, allerdings fehlen mir einige Werte wie die aktuellen flow Daten von:
    Code:
    http://IP/solar_api/v1/GetPowerFlowRealtimeData.fcgi
    Zudem habe ich festgestellt das die Daten nicht immer dem aktuellen Stand entsprechen, bzw. das Binding keinen refresh ausführt.


    Als alternative habe ich gelesen die Fronius API per JSON HTTP Binding einzubinden, aber ich glaube nach den Informationen welche ich gelesen hatte wurde sich zur Konfiguration immer auf Openhab 2 bezogen, jedoch nicht auf Openhab 3 ich glaube hier ist es doch ein wenig anders.

    Hat diese Lösung vielleicht schon jemand am laufen?

    Vg.
    Nick

    #2
    Das funktioniert weiterhin, die Konfiguration sieht halt anders aus, da http2 statt http1 zum Einsatz kommt. Da ich keinen Hybrid Wechselrichter habe, habe ich das mit dem Flow nicht, aber das ist ja letztlich nur eine andere Adresse...

    Meine aktuelle Konfiguration sieht so aus:
    Code:
    Thing http:url:froniusm "FroniusMeter" [
        baseURL="http://ip.der.fronius.pv/solar_api/v1/GetMeterRealtimeData.cgi?Scope=System",
        refresh=7,
        timeout=5000
        ] {
        Channels:
            Type number : realpow "Real Power" [stateTransformation="JSONPATH:$.Body.Data.1.PowerReal_P_Sum"]
    }
    
    Thing http:url:froniusi "FroniusInverter" [
        baseURL="http://ip.der.fronius.pv/solar_api/v1/GetInverterRealtimeData.cgi?Scope=System",
        refresh=11,
        timeout=5000
        ] {
        Channels:
            Type number : cur "Real Power" [stateTransformation="JSONPATH:$.Body.Data.PAC.Values.1"]
            Type number : dsum "Real Power" [stateTransformation="JSONPATH:$.Body.Data.DAY_ENERGY.Values.1"]
            Type number : ysum "Real Power" [stateTransformation="JSONPATH:$.Body.Data.YEAR_ENERGY.Values.1"]
            Type number : tot "Real Power" [stateTransformation="JSONPATH:$.Body.Data.TOTAL_ENERGY.Values.1"]
    }
    Die Items ergeben sich dann daraus, wie bei jedem anderen v2-Bindung auch.
    Die Konfiguration ist hier im *.things Format angegeben, da ich das Ganze schon in OH2 nutze (ich bin noch nicht umgestiegen), funktioniert aber genauso auch in OH3.

    Kommentar


      #3
      Danke für deine Antwort udo,
      eine Frage habe ich noch, da ich ja mit OH3 angefangen habe,
      wie füge ich denn dieses Code in OH3 direkt ein?

      Bzw. was ist hier die richtige Vorgehensweise.

      Vg.
      Nick

      Kommentar


        #4
        Du kannst das auch über die Main UI eingeben, die Felder in der UI sollten mehr oder weniger selbsterklärend sein. Wobei das http Binding unter OH noch mehr Möglichkeiten (der Verwirrung) bietet.

        Kommentar


          #5
          Hi,

          leider weiß ich nicht genau wo ich ein Things sonst über die Main UI außer über Things definieren kann?
          Wenn ich es über Things mache muss ich immer ein Binding angeben.

          Wenn ich dich bitten dürfte es etwas detaillierte für einen Leihe anzugeben, dann würde ich es gerne probieren und auch reporten ob es geklappt hat .

          Vg.

          Kommentar


            #6
            Ja natürlich musst Du ein Binding angeben, eben http
            Also:
            1. Main UI -> Administration -> Einstellungen --> Addons -> Bindings -> [prüfen ob http installiert ist. Falls nicht, auf das + unten rechts und das http binding installieren]
            2. Main UI -> Administration -> Einstellungen -> Things -> unten rechts das + drücken -> http Binding -> Add Manually -> HTTP URL Thing
              Unique ID eintragen, z.B. froniusf (das f für flow),
              Label eingeben (z.B. Fronius Flow)
              Base URL eingeben (http://IP/solar_api/v1/GetPowerFlowRealtimeData.fcgi) und Create Thing klicken.
            3. Zurück in der Thing-Liste, das soeben angelegte Thing auswählen und auf die Channel Ansicht wechseln.
              Add Channel wählen, Channeltyp auswählen (vermutlich number)
              Unique ID setzen
              Label setzen
              Show advanced anklicken.
              Die State URL Extension eintragen (kenne ich nicht, ich habe kein flow) sowie
              die stateTransformation angeben. Vermutlich JSONPATH (welches natürlich vorher installiert sein muss...) und der zugehörige Pfad, in der Form JSONPATH:$.knoten1.knoten2.Parametername
              Create Channel klicken
            4. Channel aus der Lsite auswählen und Add Link to Item... auswählen
              Create a new Item wählen, Name für das Item vergeben (muss eindeutig sein...) Label vergeben, als Category z.B. energy eintragen. Link auswählen.
            Ein Klick auf Code sollte Dir sowas wie hier anzeigen:
            Code:
            UID: http:url:froniusf
            label: Fronius Flow
            thingTypeUID: http:url
            configuration:
              authMode: BASIC
              ignoreSSLErrors: false
              baseURL: http://IP/solar_api/v1/GetPowerFlowRealtimeData.fcgi
              refresh: 30
              commandMethod: GET
              timeout: 3000
              bufferSize: 2048
            channels:
              - id: ch1
                channelTypeUID: http:number
                label: Label
                description: ""
                configuration: {}

            Kommentar


              #7
              Hi Udo,

              danke für deine Ausführliche Anleitung:

              folgendermaßen sieht es nun bei mir aus, und ich bekomme die Daten:
              Code:
              UID: http:url:froniusflow
              label: FroniusFlow
              thingTypeUID: http:url
              configuration:
              authMode: BASIC
              ignoreSSLErrors: false
              baseURL: http://XXX.XXX.XXX.XXX/solar_api/v1/GetPowerFlowRealtimeData.fcgi
              refresh: 5
              commandMethod: GET
              timeout: 3000
              bufferSize: 2048
              channels:
              - id: PVLeistung
              channelTypeUID: http:number
              label: PV Leistung
              description: ""
              configuration:
              mode: READONLY
              stateTransformation: JSONPATH:$.Body.Data.Site.P_Load

              Kommentar

              Lädt...
              X