Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Daten aus Fronius Solarweb auslesen

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Daten aus Fronius Solarweb auslesen

    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      c1olli @homecineplexx last edited by c1olli

      @homecineplexx
      Jupp, bei mir täglich ein paar mal, hatte dann Anfang Januar den Pi und somit das ganze System neu gestartet, da wurde es etwas besser.
      Ich denke mal das Problem liegt aber am Fronius Server.

      Edit: Wenn man das Script neu startet, dann funktioniert die Erstellung des Token problemlos.

      1 Reply Last reply Reply Quote 0
      • maximal1981
        maximal1981 @Adrian last edited by

        @adrian
        ich hab die Punkte Token* nicht.
        Hast das Script aus dem 1. Post genommen?

        A 1 Reply Last reply Reply Quote 0
        • A
          Adrian @maximal1981 last edited by

          @maximal1981
          Besten Dank
          Funktioniert nun.
          Hatte in diesem Falle ein altes Script.

          A 1 Reply Last reply Reply Quote 0
          • A
            Adrian @Adrian last edited by

            @adrian Hallo
            Hätte da noch 2 Fragen.
            Wenn der Fronius Adapter installiert ist, kommen die Daten automatisch in "Fronis-solarweb" ohne dass ein Script läuft.

            Den Adapter habe ich am 06.01. installiert und seither werden die Daten abgefüllt.
            Gibt es irgend eine Möglichkeit, explizit die Daten vom 01.01 - 05.01 nachzufüllen ?

            1. Gibt es irgend eine Möglichkeit im Blockly Konstanten zu verwenden
              z.B: const Directory = "xxxxxx"

            Vielen Dank im voraus

            1 Reply Last reply Reply Quote 0
            • U
              UweRam @maximal1981 last edited by

              @maximal1981 Da immer nur das aktuelle Jahr und das Vorjahr ersichtlich sind, kann/soll man dann kurz vor Jahreswechsel die alten Monatswerte wegsichern?
              Mit infuxdb protokollieren wird da ja auch nicht viel bringen - oder?
              Eigentlich bräuchte man ja die Monatswerte der älteren Jahre in Objekten in der Form:
              EnergyBattCharge 2021 January
              oder?
              Macht das wer von Euch in dieser Form? Wie kann man Objekte in andere Objekte wegsichern?

              H JB_Sullivan 2 Replies Last reply Reply Quote 0
              • H
                homecineplexx @UweRam last edited by

                @uweram vielleicht mittels sourceanalytics adapter?

                U 1 Reply Last reply Reply Quote 0
                • U
                  UweRam @homecineplexx last edited by

                  @homecineplexx Danke für den Tip - muss ich mir mal ansehen - kenne ich leider noch gar nicht.

                  Derzeit protokolliere ich alle Werte des Previous Days mit influxdb mit - also sollten keine Einzelwerte verloren gehen - müsste halt die letzte Änderung (höchsten Wert) nehmen und einen Tag abziehen ...

                  1 Reply Last reply Reply Quote 0
                  • JB_Sullivan
                    JB_Sullivan @UweRam last edited by

                    @uweram sagte in Daten aus Fronius Solarweb auslesen:

                    Da immer nur das aktuelle Jahr und das Vorjahr ersichtlich sind, kann/soll man dann kurz vor Jahreswechsel die alten Monatswerte wegsichern?

                    Ich habe mir eine sehr umfangreiche Tabelle für das aktuelle Jahr gemacht und für das Vorjahr eine Tabelle mit den absolut notwendigen Werte. Von dieser Tabelle mache ich mir dann zum Jahreswechsel einen Screenshot und baue den in die Übersicht der langjährigen Werte als Bild mit ein.

                    Aktuell:

                    cf1795d3-3d02-4aef-875f-d671fc09f07e-image.png

                    Historisch:

                    d089bbf9-4982-4843-b1ba-e8c316fd43bb-image.png

                    d35b7cf9-b096-46aa-96d2-932144cb9cd0-image.png

                    U 1 Reply Last reply Reply Quote 0
                    • U
                      UweRam @JB_Sullivan last edited by

                      @jb_sullivan Danke - Pragmatische Lösung ohne großen Aufwand 👍

                      U 1 Reply Last reply Reply Quote 0
                      • U
                        UweRam @UweRam last edited by UweRam

                        Habt Ihr irgendwann unterschiedliche Werte zwischen EnergyDirectConsumption und EnergySelfConsumption ?

                        1 Reply Last reply Reply Quote 0
                        • maximal1981
                          maximal1981 last edited by

                          @uweram

                          nö

                          1 Reply Last reply Reply Quote 0
                          • JB_Sullivan
                            JB_Sullivan last edited by

                            Hier auch NEIN

                            U 1 Reply Last reply Reply Quote 0
                            • U
                              UweRam @JB_Sullivan last edited by

                              @jb_sullivan Ich auch nicht 😉

                              U 1 Reply Last reply Reply Quote 0
                              • U
                                UweRam @UweRam last edited by UweRam

                                Gestern war Samstag - wie kann es sein, dass die Werte von Current-weekday-Saturday und PreviousDay unterschiedlich sind? Vielleicht ein Fehler im Skript?

                                Saturday.png

                                PreviousDay.png

                                EnergyBattDischarge
                                EnergyConsumptionTotal
                                EnergySelfGenerationTotal

                                unterscheiden sich - alle anderen Werte sind gleich.

                                Wobei (bin mir nicht sicher) die Werte von Previous die richtigen sein sollten.

                                IMG_6828.PNG

                                U 1 Reply Last reply Reply Quote 0
                                • U
                                  UweRam @UweRam last edited by

                                  @uweram Ich vermute da hat meine Wärmepumpe schnell noch um 23:50 ca. 1,5 kwh aus dem Akku verheizt und das floss in Current und damit in Saturday nicht ein - in Previous aber schon, weil erst um 2 Uhr die Previous Werte abgerufen werden - kann das sein?

                                  U 1 Reply Last reply Reply Quote 0
                                  • U
                                    UweRam @UweRam last edited by

                                    Wenn ich jetzt mit den Buttons Aktuelle_Wochentagwerte_abrufen und Vergangene_Tageswerte_abrufen manuell die Werte von gestern aktualisiere, dann stimmen Saturday und PrevoiusDay - aber das ist ja auch nicht ideal, wenn das notwendig ist - oder?

                                    U 1 Reply Last reply Reply Quote 0
                                    • U
                                      UweRam @UweRam last edited by

                                      Was mir auch noch aufgefallen ist:

                                      Die PreviousDay Verbrauchswerte wurden auch um 2:00 in der Früh noch nicht ganz richtig geliefert - um 11:00 dann schon - der Abruf um 2:00 ist also eigentlich zu früh.

                                      1 Reply Last reply Reply Quote 0
                                      • E
                                        Eaglefire @JB_Sullivan last edited by Eaglefire

                                        @jb_sullivan said in Daten aus Fronius Solarweb auslesen:

                                        Wenn ich an dieser Stelle kurz einharken darf. Ich persönlich verwende auch @strobelix sein Skript um mir genau solche Dinge wie den Eigenverbrauch aber auch die Kosten darzustellen - beides Werte, welche nicht über das Skript bzw. über die API ausgegeben werden.

                                        Früher habe ich das alles über den Adapter Sourceanalytix errechnen lassen. Leider bin ich mit Sourceanalytix gar nicht mehr glücklich. Wenn es in ioBroker mal einen "Hänger" gegeben hat, oder man ein Backup einspielen musste, war danach in der Regel alles was SA betraf im A...... - Also die ganze Jahresauswertung für die Tonne.

                                        Ich bin aktuelle dazu über gegangen, mir alle Solarweb API Werte aus Strobelix seinem Skript, in Tabellen schreiben zu lassen. In diesen Tabellen habe ich mir dann auch Berechnungsformeln eingebaut, die das ausgeben, was eben nicht über API reinkommt, sich aber aufgrund vorhandener Datenpunkte berechnen läßt.

                                        Die Rechenoperation als solches ist in der Tat ein Witz. Was allerdings eine brutale Fleißaufgabe ist, ist die javaSkript konforme Umsetzung. Das hat mich viele viele Stunden gekostet, weil ich auch nicht besonders fit in JS bin.

                                        Durch die aktuelle Energie Diskussionen, habe ich mir dann auch gleich noch Datenpunkte geschaffen, in denen ich aus der VIS heraus Strompreis Änderungen schnell in die Tabelle übertragen kann.

                                        Da das Skript von Strobelix nur die Werte vom "aktuellen Jahr" und vom "Vorjahr" aus der API holt (holen kann) , werde ich mir jedes Jahr am 31.12. einen Screenshot der entsprechenden Jahrestabelle weg speicher, denn nach Mitternacht werden sich die Daten automatisch in den Tabellen "austauschen" .

                                        "Aktuelles Jahr" wird zu "Vorjahr" und das neue "aktuelle Jahr" startet erst einmal wieder bei 0

                                        0ba3bf17-7144-4216-bf00-233680123961-image.png

                                        11f2819e-9a87-47d9-be61-95bbc701a776-image.png

                                        363c15af-0e39-4fb0-86ad-03af9db1f4e3-image.png

                                        52f4dcec-4311-4b08-b68e-68e891f234ee-image.png

                                        @jb_sullivan TOP Arbeit! Könntest Du mir das Script zur Verfügung stellen?

                                        1 Reply Last reply Reply Quote 0
                                        • U
                                          UweRam last edited by

                                          Mit "drop Measurement" sollte man vorsichtig sein...

                                          1 Reply Last reply Reply Quote 1
                                          • U
                                            UweRam last edited by Negalein

                                            Nachdem ich mir irrtümlich ein paar Measurements aus InfluxDB gelöscht und wieder aufwändig aus der Datensicherung wiederhergestellt habe...

                                            Ich rufe jetzt die Previous Daten um 2:01 und 12:01 ab.

                                            Dann starte ich jeden Tag um 13:00 ein JavaScript, das mir die Previous Daten mit einem um einen Tag reduzierten Datum (mit 00:00 Uhr) in eigene InfluxDB-Datenpunkte schreibt:

                                            JavaScript-Skript:

                                            var date = new Date;                   // Aktuelles Datum
                                            date.setUTCHours(0, 0, 0, 0);          // Um 00:00 Uhr
                                            var time = date.getTime()-86400000;    // Einen Tag vorher
                                            
                                            var EnergyBattChargePreviousDay           = getState("0_userdata.0.Solarweb.Previous.01_Day.Energy.EnergyBattCharge").val;
                                            var EnergyBattChargeGridPreviousDay       = getState("0_userdata.0.Solarweb.Previous.01_Day.Energy.EnergyBattChargeGrid").val; 
                                            var EnergyBattDischargePreviousDay        = getState("0_userdata.0.Solarweb.Previous.01_Day.Energy.EnergyBattDischarge").val; 
                                            var EnergyBattDischargeGridPreviousDay    = getState("0_userdata.0.Solarweb.Previous.01_Day.Energy.EnergyBattDischargeGrid").val; 
                                            var EnergyConsumptionTotalPreviousDay     = getState("0_userdata.0.Solarweb.Previous.01_Day.Energy.EnergyConsumptionTotal").val; 
                                            var EnergyDirectConsumptionPreviousDay    = getState("0_userdata.0.Solarweb.Previous.01_Day.Energy.EnergyDirectConsumption").val; 
                                            var EnergyFeedInPreviousDay               = getState("0_userdata.0.Solarweb.Previous.01_Day.Energy.EnergyFeedIn").val; 
                                            var EnergyProductionTotalPreviousDay      = getState("0_userdata.0.Solarweb.Previous.01_Day.Energy.EnergyProductionTotal").val; 
                                            var EnergyPurchasedPreviousDay            = getState("0_userdata.0.Solarweb.Previous.01_Day.Energy.EnergyPurchased").val; 
                                            var EnergySelfConsumptionPreviousDay      = getState("0_userdata.0.Solarweb.Previous.01_Day.Energy.EnergySelfConsumption").val; 
                                            var EnergySelfConsumptionTotalPreviousDay = getState("0_userdata.0.Solarweb.Previous.01_Day.Energy.EnergySelfConsumptionTotal").val; 
                                            var EnergySelfGenerationTotalPreviousDay  = getState("0_userdata.0.Solarweb.Previous.01_Day.Energy.EnergySelfGenerationTotal").val; 
                                            
                                            sendTo('influxdb.0', 'storeState', [
                                                {id: 'FroniusEnergyBattChargeDay', state: {ts: time, val: EnergyBattChargePreviousDay, ack: true, from: 'FroniusPreviousInDay', q: 0}}, 
                                                {id: 'FroniusEnergyBattChargeGridDay', state: {ts: time, val: EnergyBattChargeGridPreviousDay, ack: true, from: 'FroniusPreviousInDay', q: 0}},
                                                {id: 'FroniusEnergyBattDischargeDay', state: {ts: time, val: EnergyBattDischargePreviousDay, ack: true, from: 'FroniusPreviousInDay', q: 0}},
                                                {id: 'FroniusEnergyBattDischargeGridDay', state: {ts: time, val: EnergyBattDischargeGridPreviousDay, ack: true, from: 'FroniusPreviousInDay', q: 0}},
                                                {id: 'FroniusEnergyConsumptionTotalDay', state: {ts: time, val: EnergyConsumptionTotalPreviousDay, ack: true, from: 'FroniusPreviousInDay', q: 0}},
                                                {id: 'FroniusEnergyDirectConsumptionDay', state: {ts: time, val: EnergyDirectConsumptionPreviousDay, ack: true, from: 'FroniusPreviousInDay', q: 0}},
                                                {id: 'FroniusEnergyFeedInDay', state: {ts: time, val: EnergyFeedInPreviousDay, ack: true, from: 'FroniusPreviousInDay', q: 0}},
                                                {id: 'FroniusEnergyProductionTotalDay', state: {ts: time, val: EnergyProductionTotalPreviousDay, ack: true, from: 'FroniusPreviousInDay', q: 0}},
                                                {id: 'FroniusEnergyPurchasedDay', state: {ts: time, val: EnergyPurchasedPreviousDay, ack: true, from: 'FroniusPreviousInDay', q: 0}},
                                                {id: 'FroniusEnergySelfConsumptionDay', state: {ts: time, val: EnergySelfConsumptionPreviousDay, ack: true, from: 'FroniusPreviousInDay', q: 0}},
                                                {id: 'FroniusEnergySelfConsumptionTotalDay', state: {ts: time, val: EnergySelfConsumptionTotalPreviousDay, ack: true, from: 'FroniusPreviousInDay', q: 0}},
                                                {id: 'FroniusEnergySelfGenerationTotalDay', state: {ts: time, val: EnergySelfGenerationTotalPreviousDay, ack: true, from: 'FroniusPreviousInDay', q: 0}}
                                            ], result => console.log('added'));
                                            

                                            In den Measurements:

                                            FroniusEnergyBattChargeDay
                                            FroniusEnergyBattChargeGridDay
                                            FroniusEnergyBattDischargeDay
                                            FroniusEnergyBattDischargeGridDay
                                            FroniusEnergyConsumptionTotalDay
                                            FroniusEnergyDirectConsumptionDay
                                            FroniusEnergyFeedInDay
                                            FroniusEnergyProductionTotalDay
                                            FroniusEnergyPurchasedDay
                                            FroniusEnergySelfConsumptionDay
                                            FroniusEnergySelfConsumptionTotalDay
                                            FroniusEnergySelfGenerationTotalDay

                                            habe ich dann die richtigen Messwerte pro Tag auch über Jahresgrenzen hinweg, ohne dass alte Werte verloren gehen.


                                            Mod-Edit: Code/Log in Code Tags gepackt. Bitte benutzt die Code Tags Funktion -> </>
                                            Hier gehts zur Hilfe.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            766
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            58
                                            616
                                            124428
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo