Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. ecoflow-connector-Script zur dynamischen Leistungsanpassung

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.0k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.0k

ecoflow-connector-Script zur dynamischen Leistungsanpassung

ecoflow-connector-Script zur dynamischen Leistungsanpassung

Scheduled Pinned Locked Moved JavaScript
1.6k Posts 127 Posters 741.3k Views 127 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Accu

    @waly_de ja genau. Die PV hängt direkt an meiner DP aber nicht am PS.

    Habs mal rausgekommen. Schaut jetzt so aus:

    22:24.190	info	javascript.0 (53248) script.js.Test.EF_Test: Adresse: app_1556567362703892482_DCxxxxxx_thing_property_set
    10:22:30.297	info	javascript.0 (53248) script.js.Test.EF_Test: SetBasePower !
    10:22:30.325	info	javascript.0 (53248) script.js.Test.EF_Test: Gap_Durchschnitt: PS:[PowerStream] : -81
    10:22:30.326	info	javascript.0 (53248) script.js.Test.EF_Test: *************************************
    10:22:30.327	info	javascript.0 (53248) script.js.Test.EF_Test: Lastcutoff: 0
    10:22:30.327	info	javascript.0 (53248) script.js.Test.EF_Test: gapSumme: -82
    10:22:30.327	info	javascript.0 (53248) script.js.Test.EF_Test: Bedarf : -82
    10:22:30.328	info	javascript.0 (53248) script.js.Test.EF_Test: PStotalPV (+10 W/PS): 10
    10:22:30.329	info	javascript.0 (53248) script.js.Test.EF_Test: Gobal totalPV: 0
    10:22:30.329	info	javascript.0 (53248) script.js.Test.EF_Test: PVBedarf : -82
    10:22:30.329	info	javascript.0 (53248) script.js.Test.EF_Test: BatBedarf: 0
    10:22:30.330	info	javascript.0 (53248) script.js.Test.EF_Test: PVfaktor:-8.2
    10:22:30.330	info	javascript.0 (53248) script.js.Test.EF_Test: Batfaktor:0
    10:22:30.330	info	javascript.0 (53248) script.js.Test.EF_Test: ueberschuss:82
    10:22:30.330	info	javascript.0 (53248) script.js.Test.EF_Test: *************************************
    10:22:40.297	info	javascript.0 (53248) script.js.Test.EF_Test: SetBasePower !
    10:22:40.323	info	javascript.0 (53248) script.js.Test.EF_Test: Gap_Durchschnitt: PS:[PowerStream] : -81
    10:22:40.323	info	javascript.0 (53248) script.js.Test.EF_Test: *************************************
    10:22:40.323	info	javascript.0 (53248) script.js.Test.EF_Test: Lastcutoff: 0
    10:22:40.323	info	javascript.0 (53248) script.js.Test.EF_Test: gapSumme: -82
    10:22:40.323	info	javascript.0 (53248) script.js.Test.EF_Test: Bedarf : -82
    10:22:40.323	info	javascript.0 (53248) script.js.Test.EF_Test: PStotalPV (+10 W/PS): 10
    10:22:40.324	info	javascript.0 (53248) script.js.Test.EF_Test: Gobal totalPV: 0
    10:22:40.324	info	javascript.0 (53248) script.js.Test.EF_Test: PVBedarf : -82
    10:22:40.324	info	javascript.0 (53248) script.js.Test.EF_Test: BatBedarf: 0
    10:22:40.324	info	javascript.0 (53248) script.js.Test.EF_Test: PVfaktor:-8.2
    10:22:40.324	info	javascript.0 (53248) script.js.Test.EF_Test: Batfaktor:0
    10:22:40.324	info	javascript.0 (53248) script.js.Test.EF_Test: ueberschuss:82
    10:22:40.324	info	javascript.0 (53248) script.js.Test.EF_Test: *************************************
    10:22:50.298	info	javascript.0 (53248) script.js.Test.EF_Test: SetBasePower !
    10:22:50.332	info	javascript.0 (53248) script.js.Test.EF_Test: Gap_Durchschnitt: PS:[PowerStream] : -81
    10:22:50.332	info	javascript.0 (53248) script.js.Test.EF_Test: *************************************
    10:22:50.333	info	javascript.0 (53248) script.js.Test.EF_Test: Lastcutoff: 0
    10:22:50.333	info	javascript.0 (53248) script.js.Test.EF_Test: gapSumme: -82
    10:22:50.333	info	javascript.0 (53248) script.js.Test.EF_Test: Bedarf : -82
    10:22:50.333	info	javascript.0 (53248) script.js.Test.EF_Test: PStotalPV (+10 W/PS): 10
    10:22:50.333	info	javascript.0 (53248) script.js.Test.EF_Test: Gobal totalPV: 0
    10:22:50.333	info	javascript.0 (53248) script.js.Test.EF_Test: PVBedarf : -82
    10:22:50.333	info	javascript.0 (53248) script.js.Test.EF_Test: BatBedarf: 0
    10:22:50.333	info	javascript.0 (53248) script.js.Test.EF_Test: PVfaktor:-8.2
    10:22:50.333	info	javascript.0 (53248) script.js.Test.EF_Test: Batfaktor:0
    10:22:50.334	info	javascript.0 (53248) script.js.Test.EF_Test: ueberschuss:82
    10:22:50.334	info	javascript.0 (53248) script.js.Test.EF_Test: *************************************
    10:22:50.338	warn	javascript.0 (53248) at setStateCon (script.js.Test.EF_Test:2795:15)
    10:22:50.338	warn	javascript.0 (53248) at script.js.Test.EF_Test:2502:37
    10:22:50.338	info	javascript.0 (53248) script.js.Test.EF_Test: Alle Bedingungen erfüllt. sonoff.0.NOUS-DVES_F0A844.POWER wird auf true gesetzt
    10:22:50.339	warn	javascript.0 (53248) at setStateCon (script.js.Test.EF_Test:2817:9)
    10:22:50.339	warn	javascript.0 (53248) at script.js.Test.EF_Test:2502:37
    10:22:50.340	info	javascript.0 (53248) script.js.Test.EF_Test: ExcessCharge: Überschussladung AN! Angefordert mit:82 Plus ExcessChargeOffsetPower: 0
    

    der ExcessPower Datenpunkt ist jetzt aber da:

    18fa1dd0-3f93-4bbf-a8df-855b067d25d1-image.png

    Eingespeist wird aber nicht. Mein Gesamt Hausverbrauch springt aber auch gerade zwischen -80W und +120W

    W Offline
    W Offline
    Waly_de
    wrote on last edited by Waly_de
    #985

    @accu super 🙂 Jetzt kannst du im Log schön verfolgen was passiert.

    10:22:40.323	info	javascript.0 (53248) script.js.Test.EF_Test: Bedarf : -82
    

    Solange es keinen Bedarf gibt, wird natürlich auch nicht eingespeist.
    Wenn der Gesamt Hausverbrauch für 3 Minuten immer über BasePowerOffset liegt, sollte der PS Einsspeisen. Entsprechende Meldung im Log sollte zu sehen sein. Etwa so:

    Änderung für Einspeisung gesendet PS:[PowerStream Dach] : 65 W
    
    A 1 Reply Last reply
    0
    • W Waly_de

      @accu super 🙂 Jetzt kannst du im Log schön verfolgen was passiert.

      10:22:40.323	info	javascript.0 (53248) script.js.Test.EF_Test: Bedarf : -82
      

      Solange es keinen Bedarf gibt, wird natürlich auch nicht eingespeist.
      Wenn der Gesamt Hausverbrauch für 3 Minuten immer über BasePowerOffset liegt, sollte der PS Einsspeisen. Entsprechende Meldung im Log sollte zu sehen sein. Etwa so:

      Änderung für Einspeisung gesendet PS:[PowerStream Dach] : 65 W
      
      A Offline
      A Offline
      Accu
      wrote on last edited by
      #986

      @waly_de jetzt scheint es tatsächlich zu funktionieren und der PS regelt die Einspeiseleistung ein. Ist zwar nicht ganz auf Null eingeregelt aber ok, da ich gerade nicht so viel Batterie habe.

      Bildschirmfoto 2024-01-11 um 15.49.20.png

      Was bedeutet die Not Found Warnung? beim Sonoff?
      Bildschirmfoto 2024-01-11 um 15.51.34.png

      W 1 Reply Last reply
      0
      • G Offline
        G Offline
        guhfy9966
        wrote on last edited by guhfy9966
        #987

        Ich bekomme mit der neusten Version "mlog=true" nur noch folgendes zu sehen, finde jedoch keinen Fehler. Meine alte Version funktioniert mit logm=true einwandfrei. Geht das noch oder ist da bei euch auch etwas hinüber?

        21:44:27.118	info	javascript.0 (1178) script.js.Meine_Scripte_(Produktiv).Solar_Ecoflow: Verbunden mit dem Ecoflow MQTT-Broker
        21:44:36.888	info	javascript.0 (1178) script.js.Meine_Scripte_(Produktiv).Solar_Ecoflow: SetBasePower !
        21:44:46.886	info	javascript.0 (1178) script.js.Meine_Scripte_(Produktiv).Solar_Ecoflow: SetBasePower !
        21:44:56.895	info	javascript.0 (1178) script.js.Meine_Scripte_(Produktiv).Solar_Ecoflow: SetBasePower !
        21:45:06.896	info	javascript.0 (1178) script.js.Meine_Scripte_(Produktiv).Solar_Ecoflow: SetBasePower !
        21:45:16.895	info	javascript.0 (1178) script.js.Meine_Scripte_(Produktiv).Solar_Ecoflow: SetBasePower !
        21:45:26.895	info	javascript.0 (1178) script.js.Meine_Scripte_(Produktiv).Solar_Ecoflow: SetBasePower !
        

        EDIT:
        @Waly_de
        Bitte erkläre mit das nochmal

        battPozOn: 99, battPozOff: 94,              // Wenn die Batterie bei battPozOn ist, Einspeisung auf MaxPower. Bei BattPozOff Normalbetrieb
                    battOnSwitchPrio: true,                     // "true": Bei battPozOn wird in den Batterie-Prioritätsmodus gewechselt
        

        Für mich widerspricht sich das, denn ich will doch den Batterieprio Modus BIS 99% und dann Max Einspeisung.
        Wenn ich battPozOn z.B. auf 30% setze soll er auf BatteriePrio Modus und ab battPozOff auf "volle Einspeisung".
        Irgendwas interpretiere ich anscheinend falsch.

        W 1 Reply Last reply
        0
        • A Accu

          @waly_de jetzt scheint es tatsächlich zu funktionieren und der PS regelt die Einspeiseleistung ein. Ist zwar nicht ganz auf Null eingeregelt aber ok, da ich gerade nicht so viel Batterie habe.

          Bildschirmfoto 2024-01-11 um 15.49.20.png

          Was bedeutet die Not Found Warnung? beim Sonoff?
          Bildschirmfoto 2024-01-11 um 15.51.34.png

          W Offline
          W Offline
          Waly_de
          wrote on last edited by
          #988

          @accu sagte in ecoflow-connector-Script zur dynamischen Leistungsanpassung:

          Was bedeutet die Not Found Warnung? beim Sonoff?

          Kannst du wörtlich nehmen.... "sonoff.0.NOUS-DVES_F0A844.POWER" scheint nicht zu existieren

          A 1 Reply Last reply
          0
          • G guhfy9966

            Ich bekomme mit der neusten Version "mlog=true" nur noch folgendes zu sehen, finde jedoch keinen Fehler. Meine alte Version funktioniert mit logm=true einwandfrei. Geht das noch oder ist da bei euch auch etwas hinüber?

            21:44:27.118	info	javascript.0 (1178) script.js.Meine_Scripte_(Produktiv).Solar_Ecoflow: Verbunden mit dem Ecoflow MQTT-Broker
            21:44:36.888	info	javascript.0 (1178) script.js.Meine_Scripte_(Produktiv).Solar_Ecoflow: SetBasePower !
            21:44:46.886	info	javascript.0 (1178) script.js.Meine_Scripte_(Produktiv).Solar_Ecoflow: SetBasePower !
            21:44:56.895	info	javascript.0 (1178) script.js.Meine_Scripte_(Produktiv).Solar_Ecoflow: SetBasePower !
            21:45:06.896	info	javascript.0 (1178) script.js.Meine_Scripte_(Produktiv).Solar_Ecoflow: SetBasePower !
            21:45:16.895	info	javascript.0 (1178) script.js.Meine_Scripte_(Produktiv).Solar_Ecoflow: SetBasePower !
            21:45:26.895	info	javascript.0 (1178) script.js.Meine_Scripte_(Produktiv).Solar_Ecoflow: SetBasePower !
            

            EDIT:
            @Waly_de
            Bitte erkläre mit das nochmal

            battPozOn: 99, battPozOff: 94,              // Wenn die Batterie bei battPozOn ist, Einspeisung auf MaxPower. Bei BattPozOff Normalbetrieb
                        battOnSwitchPrio: true,                     // "true": Bei battPozOn wird in den Batterie-Prioritätsmodus gewechselt
            

            Für mich widerspricht sich das, denn ich will doch den Batterieprio Modus BIS 99% und dann Max Einspeisung.
            Wenn ich battPozOn z.B. auf 30% setze soll er auf BatteriePrio Modus und ab battPozOff auf "volle Einspeisung".
            Irgendwas interpretiere ich anscheinend falsch.

            W Offline
            W Offline
            Waly_de
            wrote on last edited by
            #989

            @guhfy9966 sagte in ecoflow-connector-Script zur dynamischen Leistungsanpassung:

            Für mich widerspricht sich das, denn ich will doch den Batterieprio Modus BIS 99% und dann Max Einspeisung.
            Wenn ich battPozOn z.B. auf 30% setze soll er auf BatteriePrio Modus und ab battPozOff auf "volle Einspeisung".
            Irgendwas interpretiere ich anscheinend falsch.

            Bei Batterieprio Modus gibt es keine Einspeisung solange die Batterie nicht voll ist.
            Wenn irgendetwas geregelt werden soll, dann muss der PowerStream auf Stromversorgs-Priorität stehen.
            Inzwischen kann die Firmware der PS selbst, wenn die Batterie voll ist, die Einspeisung einschalten. Das ging früher nicht.
            Es ist so wie im Kommentar beschrieben: ab eine Batterieladung von battPozOn wird entweder alles eingespeist bis battPozOff erreicht ist und dann wieder normal geregelt, oder es wird in den Batterie Prioritätsmodus geschaltet, was bedeutet, dass die Batterie auf dem Maximalwert gehalten wird und die restliche PV Leistung ins Netz eingespeist wird.

            G 1 Reply Last reply
            0
            • W Waly_de

              @guhfy9966 sagte in ecoflow-connector-Script zur dynamischen Leistungsanpassung:

              Für mich widerspricht sich das, denn ich will doch den Batterieprio Modus BIS 99% und dann Max Einspeisung.
              Wenn ich battPozOn z.B. auf 30% setze soll er auf BatteriePrio Modus und ab battPozOff auf "volle Einspeisung".
              Irgendwas interpretiere ich anscheinend falsch.

              Bei Batterieprio Modus gibt es keine Einspeisung solange die Batterie nicht voll ist.
              Wenn irgendetwas geregelt werden soll, dann muss der PowerStream auf Stromversorgs-Priorität stehen.
              Inzwischen kann die Firmware der PS selbst, wenn die Batterie voll ist, die Einspeisung einschalten. Das ging früher nicht.
              Es ist so wie im Kommentar beschrieben: ab eine Batterieladung von battPozOn wird entweder alles eingespeist bis battPozOff erreicht ist und dann wieder normal geregelt, oder es wird in den Batterie Prioritätsmodus geschaltet, was bedeutet, dass die Batterie auf dem Maximalwert gehalten wird und die restliche PV Leistung ins Netz eingespeist wird.

              G Offline
              G Offline
              guhfy9966
              wrote on last edited by
              #990

              @waly_de
              Ah ok, danke Dir. Dann ist mein Gedanke ja korrekt WENN ich die Batterien nur laden möchte OHNE Einspeisung.
              Damit könnte ich (Frage von gestern) ja regeln, dass tagsüber erstmal die Batterien geladen werden bis Abends verbraucht wird. Im Sommer wird es mit viel Sonne vermutlich zu Problemen kommen, da ich den Ertrag limitiere mit dieser Einstellung.

              Danke!

              Thomas WellerT 1 Reply Last reply
              0
              • W Waly_de

                @accu sagte in ecoflow-connector-Script zur dynamischen Leistungsanpassung:

                Was bedeutet die Not Found Warnung? beim Sonoff?

                Kannst du wörtlich nehmen.... "sonoff.0.NOUS-DVES_F0A844.POWER" scheint nicht zu existieren

                A Offline
                A Offline
                Accu
                wrote on last edited by Accu
                #991

                @waly_de ja aber was soll das für ein Datenpunkt sein und woher kommt der?
                die struktur von meinem Sonoff IR Reader sieht so aus:
                Bildschirmfoto 2024-01-12 um 08.41.03.png

                H 1 Reply Last reply
                0
                • A Accu

                  @waly_de ja aber was soll das für ein Datenpunkt sein und woher kommt der?
                  die struktur von meinem Sonoff IR Reader sieht so aus:
                  Bildschirmfoto 2024-01-12 um 08.41.03.png

                  H Offline
                  H Offline
                  holgerwolf
                  wrote on last edited by
                  #992

                  @accu Es ist der .POWER Datenpunkt.

                  A 1 Reply Last reply
                  0
                  • H holgerwolf

                    @accu Es ist der .POWER Datenpunkt.

                    A Offline
                    A Offline
                    Accu
                    wrote on last edited by Accu
                    #993

                    @holgerwolf sorry stehe gerade auf dem Schlauch. genau den habe ich doch im Skript angegeben und der wird auch gezogen.
                    habe mal gesucht und im skript kommt der datenpunkt bei der Schaltersteckdosen Sektion vor, die ich nicht habe und deshalb auch nicht konfiguiert habe.

                    W 2 Replies Last reply
                    0
                    • G guhfy9966

                      @waly_de
                      Ah ok, danke Dir. Dann ist mein Gedanke ja korrekt WENN ich die Batterien nur laden möchte OHNE Einspeisung.
                      Damit könnte ich (Frage von gestern) ja regeln, dass tagsüber erstmal die Batterien geladen werden bis Abends verbraucht wird. Im Sommer wird es mit viel Sonne vermutlich zu Problemen kommen, da ich den Ertrag limitiere mit dieser Einstellung.

                      Danke!

                      Thomas WellerT Offline
                      Thomas WellerT Offline
                      Thomas Weller
                      wrote on last edited by
                      #994

                      @Waly_de
                      Die Einspeiseregelung des PS passt jetzt in meinem Fall mit dem Sensor aus meiner Tibber-Bridge sehr gut.

                      Habe jetzt gestern Abend noch die Überschussladung "programmiert" und warte gespannt auf Überschuss meiner PV Anlage.

                      Unter AdditionalPower habe ich den Wert der Überschüssigen Einspeisung in positiven Watt Werten hinterlegt.
                      Den Wert lese ich über den ModBUS Adapter aus meiner SolarEdge Wechselrichter einer 36,77kWp Anlage aus.
                      Kann ich in meinem Fall ohne PV Module an PS oder Delta auch nur mit dem Tibber Wert der Einspeisung arbeiten der aber negativ ist!?

                      Bei Divisonsfaktor habe ich wie im Skript angegeben 10 für die Delta Pro gesetzt --> Das passt so auch wenn der oben genannte AdditionalPower Wert korrekt in Watt kommt?

                      Geschalten werden soll die AC-Ladung über einen Shelly Plug den ich ebenso eingefügt habe.
                      Einmal mit seinem Power-Wert und einmal mit seinem Switch (True/False).

                      So sollte es jetzt funktionieren?

                      Ziel ist es ab 250Watt Überschuss die Shelly einzuschalten und dann den Ladestrom AC der DeltaPro nach Überschuss anzupassen.

                      Hier noch die Codepassage:

                                  name: "DELTA Pro",
                                  typ: "DM",
                                  subscribe: true,                            // "true": Alle Daten für dieses Gerät werden angefragt. "false": Es werden keine Statusdaten abgefragt
                              },
                              //#######################################################################
                           ],
                          AdditionalPower: [                                     // Wenn es weitere Wechselrichter gibt, die in IOBroker erfasst werden, können diese hier Angelegt werden
                              //############# Diesen Abschnitt für jedes einzelne Gerät anlegen ################
                              {
                                  name: "SolarEdge Restliche AC-Einspeisung",                       // Beliebiger Name
                                  id: "modbus.0.holdingRegisters.40207",      // Der Objektpfad zu dem Leistungswert in Watt (W)
                                  factor: 10,                                  // Divisionsfaktor für den Leistungswert. (10 für die Delta)
                              },
                              //#######################################################################
                          ],
                          //****************************************
                          // Erweiterte Einstellungen:
                          //****************************************
                          SmartmeterTimeoutMin: 1,                            // Wenn der letzte Wert vom Smartmeter älter als "SmartmeterTimeoutMin" ist, wird das Script mit...
                          SmartmeterFallbackPower: 300,                       // SmartmeterFallbackPower als aktuellem Realpowerwert weiter arbeiten, bis wieder aktuelle Daten geliefert werden. 
                          Regulation: true,                                   // 'false' stellt das Setzen der Einspeiseleistung ab 
                          RegulationState: "Regulate",                        // Wenn angegeben, kann mit diesem State die Regulation ein- und ausgeschaltet werden (Wird automatisch unter 0_userdata.0.ecoflow angelegt)
                          RegulationMultiPsMode: 0,                           // Wenn mehrere PS reguliert werden sollen. "balance" = 0 oder "serial" = 1
                          BasePowerOffset: 0,                                // Wird vom aktuellen Verbrauch abgezogen, um die Einspeiseleistung zu berechnen 
                          Zusatzpower_Offset: 10,                             // Zusatzpower startet ab einer Batterieladeleistung von MaxPower - Zusatzpower_Offset
                          MinValueMin: 2,                                     // Der Zeitraum in Minuten, aus dem der niedrigste Gesamtverbrauchswert geholt werden soll. 0 für Echtzeitwert
                          MinValueAg: 0,                                      // Art der Ermittlung des kleinsten Wertes: 0 = Minimalwert, 1 = Durchschnittswert
                          ReconnectMin: 10,                                   // Zeit in Minuten, nach der die Anwendung neu gestartet wird, wenn keine neuen Daten eintreffen
                          statesPrefix: "0_userdata.0.ecoflow",               // Hier werden die ecoFlow States angelegt
                          latitude: latitude,                                 // Breitengrad des Standortes (wird automatisch eingesetzt)
                          longitude: longitude,                               // Längengrad des Standortes (wird automatisch eingesetzt)
                          //****************************************
                          // Überschussladung:
                          //****************************************
                          ExcessCharge: true,                                //Überschussladung AN/AUS (true/false)
                                                                              //ID zum Einstellen der Ladeleistung des Speichers in Watt: 
                          ExcessChargePowerID: "0_userdata.0.ecoflow.app_xx_xx_thing_property_set.writeables.slowChgPower",
                                                                              //ID des aktuellen Ladestandes des Speichers in %: 
                          ExcessChargePowerBatSocID: "0_userdata.0.ecoflow.app_device_property_xx.data.params.bmsMaster.soc",
                          ExcessChargeSwitchMin: 1,                           //Zeit in Minuten die der Schalter mindestens in der letzten geschalteten Position verbleiben muss. 
                          ExcessChargeMaxPower: 2300,                         //Maximale Ladeleistung des Speichers in Watt
                          ExcessChargeOffsetPower: -50,                         //Wird der Leistungsanforderung hinzugerechnet um Messabweichungen auszugleichen. 
                          ExcessChargeStartPower: 250,                         //Mindest-Überschussleistung zum Einschalten des Speichers
                          ExcessChargeStopPower: 200,                           //Überschussleistung bei der der Speicher abgeschaltet werden soll.
                          ExcessChargeStartPowerDurationMin: 1,               //Mindestdauer in Minuten, die ExcessChargeStartPower nicht unterschritten werden darf, bevor der Speicher eingeschaltet wird.
                          //----------------------------------------
                          // Beispiel für Delta-Nutzung ohne Schlaltersteckdose:
                          // Wird an einer Delta auch der PV-Eingang genutzt, bitte die PV-Leistung unter AdditionalPower anlegen. Die passende ID ist:
                          // 0_userdata.0.ecoflow.app_device_property_xxx.data.params.mppt.inWatts
                          // Bei der Delta: "subscribe: true" konfigurieren
                          //----------------------------------------
                                                                              //ID mit dem Messwert der aktuellen Leistungsaufnahme des Speichers in Watt:
                          //ExcessActualPowerID: "0_userdata.0.ecoflow.app_device_property_xx.data.params.inv.inputWatts",
                                                                              //ID des Schalters, der den Speicher aktiviert: 
                          //ExcessChargeSwitchID: "0_userdata.0.ecoflow.app_xx_xx_thing_property_set.writeables.chgPause", 
                          //ExcessChargeSwitchOn: 0,                          //Wert, der zum Aktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
                          //ExcessChargeSwitchOff: 1,                         //Wert, der zum Deaktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
                          //----------------------------------------
                          // Beispiel für Nutzung einer Schlaltersteckdose:
                          //----------------------------------------
                                                                              //ID mit dem Messwert der aktuellen Leistungsaufnahme des Speichers in Watt:
                          ExcessActualPowerID: "shelly.0.shellyplusplugs#d4d4da345b5c#1.Relay0.Power",
                                                                              //ID des Schalters, der den Speicher aktiviert: 
                          ExcessChargeSwitchID: "shelly.0.shellyplusplugs#d4d4da345b5c#1.Relay0.Switch", 
                          ExcessChargeSwitchOn: true,                         //Wert, der zum Aktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
                          ExcessChargeSwitchOff: false,                       //Wert, der zum Deaktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
                          //----------------------------------------
                          //****************************************
                          Debug: false, mlog: true,
                          PlotCmdID: 99999,
                      }
                      //***************************************/
                      
                      W 1 Reply Last reply
                      0
                      • A Accu

                        @holgerwolf sorry stehe gerade auf dem Schlauch. genau den habe ich doch im Skript angegeben und der wird auch gezogen.
                        habe mal gesucht und im skript kommt der datenpunkt bei der Schaltersteckdosen Sektion vor, die ich nicht habe und deshalb auch nicht konfiguiert habe.

                        W Offline
                        W Offline
                        Waly_de
                        wrote on last edited by Waly_de
                        #995

                        @accu Eben... der Pfad, den du angegeben hast: "sonoff.0.NOUS-DVES_F0A844.POWER" hat wenig mit dem zu tun was auf dem Bild zu sehen ist. Fahre mit der Maus über den Punkt "power", dann erscheint daneben ein Symbol zum kopieren des Pfades. Wenn du darauf klickst, befindet sich der richtige Pfad in Zwischenablage, füge das einfach im Skript ein und es sollte funktionieren.

                        1 Reply Last reply
                        0
                        • Thomas WellerT Thomas Weller

                          @Waly_de
                          Die Einspeiseregelung des PS passt jetzt in meinem Fall mit dem Sensor aus meiner Tibber-Bridge sehr gut.

                          Habe jetzt gestern Abend noch die Überschussladung "programmiert" und warte gespannt auf Überschuss meiner PV Anlage.

                          Unter AdditionalPower habe ich den Wert der Überschüssigen Einspeisung in positiven Watt Werten hinterlegt.
                          Den Wert lese ich über den ModBUS Adapter aus meiner SolarEdge Wechselrichter einer 36,77kWp Anlage aus.
                          Kann ich in meinem Fall ohne PV Module an PS oder Delta auch nur mit dem Tibber Wert der Einspeisung arbeiten der aber negativ ist!?

                          Bei Divisonsfaktor habe ich wie im Skript angegeben 10 für die Delta Pro gesetzt --> Das passt so auch wenn der oben genannte AdditionalPower Wert korrekt in Watt kommt?

                          Geschalten werden soll die AC-Ladung über einen Shelly Plug den ich ebenso eingefügt habe.
                          Einmal mit seinem Power-Wert und einmal mit seinem Switch (True/False).

                          So sollte es jetzt funktionieren?

                          Ziel ist es ab 250Watt Überschuss die Shelly einzuschalten und dann den Ladestrom AC der DeltaPro nach Überschuss anzupassen.

                          Hier noch die Codepassage:

                                      name: "DELTA Pro",
                                      typ: "DM",
                                      subscribe: true,                            // "true": Alle Daten für dieses Gerät werden angefragt. "false": Es werden keine Statusdaten abgefragt
                                  },
                                  //#######################################################################
                               ],
                              AdditionalPower: [                                     // Wenn es weitere Wechselrichter gibt, die in IOBroker erfasst werden, können diese hier Angelegt werden
                                  //############# Diesen Abschnitt für jedes einzelne Gerät anlegen ################
                                  {
                                      name: "SolarEdge Restliche AC-Einspeisung",                       // Beliebiger Name
                                      id: "modbus.0.holdingRegisters.40207",      // Der Objektpfad zu dem Leistungswert in Watt (W)
                                      factor: 10,                                  // Divisionsfaktor für den Leistungswert. (10 für die Delta)
                                  },
                                  //#######################################################################
                              ],
                              //****************************************
                              // Erweiterte Einstellungen:
                              //****************************************
                              SmartmeterTimeoutMin: 1,                            // Wenn der letzte Wert vom Smartmeter älter als "SmartmeterTimeoutMin" ist, wird das Script mit...
                              SmartmeterFallbackPower: 300,                       // SmartmeterFallbackPower als aktuellem Realpowerwert weiter arbeiten, bis wieder aktuelle Daten geliefert werden. 
                              Regulation: true,                                   // 'false' stellt das Setzen der Einspeiseleistung ab 
                              RegulationState: "Regulate",                        // Wenn angegeben, kann mit diesem State die Regulation ein- und ausgeschaltet werden (Wird automatisch unter 0_userdata.0.ecoflow angelegt)
                              RegulationMultiPsMode: 0,                           // Wenn mehrere PS reguliert werden sollen. "balance" = 0 oder "serial" = 1
                              BasePowerOffset: 0,                                // Wird vom aktuellen Verbrauch abgezogen, um die Einspeiseleistung zu berechnen 
                              Zusatzpower_Offset: 10,                             // Zusatzpower startet ab einer Batterieladeleistung von MaxPower - Zusatzpower_Offset
                              MinValueMin: 2,                                     // Der Zeitraum in Minuten, aus dem der niedrigste Gesamtverbrauchswert geholt werden soll. 0 für Echtzeitwert
                              MinValueAg: 0,                                      // Art der Ermittlung des kleinsten Wertes: 0 = Minimalwert, 1 = Durchschnittswert
                              ReconnectMin: 10,                                   // Zeit in Minuten, nach der die Anwendung neu gestartet wird, wenn keine neuen Daten eintreffen
                              statesPrefix: "0_userdata.0.ecoflow",               // Hier werden die ecoFlow States angelegt
                              latitude: latitude,                                 // Breitengrad des Standortes (wird automatisch eingesetzt)
                              longitude: longitude,                               // Längengrad des Standortes (wird automatisch eingesetzt)
                              //****************************************
                              // Überschussladung:
                              //****************************************
                              ExcessCharge: true,                                //Überschussladung AN/AUS (true/false)
                                                                                  //ID zum Einstellen der Ladeleistung des Speichers in Watt: 
                              ExcessChargePowerID: "0_userdata.0.ecoflow.app_xx_xx_thing_property_set.writeables.slowChgPower",
                                                                                  //ID des aktuellen Ladestandes des Speichers in %: 
                              ExcessChargePowerBatSocID: "0_userdata.0.ecoflow.app_device_property_xx.data.params.bmsMaster.soc",
                              ExcessChargeSwitchMin: 1,                           //Zeit in Minuten die der Schalter mindestens in der letzten geschalteten Position verbleiben muss. 
                              ExcessChargeMaxPower: 2300,                         //Maximale Ladeleistung des Speichers in Watt
                              ExcessChargeOffsetPower: -50,                         //Wird der Leistungsanforderung hinzugerechnet um Messabweichungen auszugleichen. 
                              ExcessChargeStartPower: 250,                         //Mindest-Überschussleistung zum Einschalten des Speichers
                              ExcessChargeStopPower: 200,                           //Überschussleistung bei der der Speicher abgeschaltet werden soll.
                              ExcessChargeStartPowerDurationMin: 1,               //Mindestdauer in Minuten, die ExcessChargeStartPower nicht unterschritten werden darf, bevor der Speicher eingeschaltet wird.
                              //----------------------------------------
                              // Beispiel für Delta-Nutzung ohne Schlaltersteckdose:
                              // Wird an einer Delta auch der PV-Eingang genutzt, bitte die PV-Leistung unter AdditionalPower anlegen. Die passende ID ist:
                              // 0_userdata.0.ecoflow.app_device_property_xxx.data.params.mppt.inWatts
                              // Bei der Delta: "subscribe: true" konfigurieren
                              //----------------------------------------
                                                                                  //ID mit dem Messwert der aktuellen Leistungsaufnahme des Speichers in Watt:
                              //ExcessActualPowerID: "0_userdata.0.ecoflow.app_device_property_xx.data.params.inv.inputWatts",
                                                                                  //ID des Schalters, der den Speicher aktiviert: 
                              //ExcessChargeSwitchID: "0_userdata.0.ecoflow.app_xx_xx_thing_property_set.writeables.chgPause", 
                              //ExcessChargeSwitchOn: 0,                          //Wert, der zum Aktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
                              //ExcessChargeSwitchOff: 1,                         //Wert, der zum Deaktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
                              //----------------------------------------
                              // Beispiel für Nutzung einer Schlaltersteckdose:
                              //----------------------------------------
                                                                                  //ID mit dem Messwert der aktuellen Leistungsaufnahme des Speichers in Watt:
                              ExcessActualPowerID: "shelly.0.shellyplusplugs#d4d4da345b5c#1.Relay0.Power",
                                                                                  //ID des Schalters, der den Speicher aktiviert: 
                              ExcessChargeSwitchID: "shelly.0.shellyplusplugs#d4d4da345b5c#1.Relay0.Switch", 
                              ExcessChargeSwitchOn: true,                         //Wert, der zum Aktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
                              ExcessChargeSwitchOff: false,                       //Wert, der zum Deaktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
                              //----------------------------------------
                              //****************************************
                              Debug: false, mlog: true,
                              PlotCmdID: 99999,
                          }
                          //***************************************/
                          
                          W Offline
                          W Offline
                          Waly_de
                          wrote on last edited by
                          #996

                          @thomas-weller Interessante Anwendung.
                          Also ich habe es richtig verstanden, dass du weder an der PS noch an der Delta ein PV Modul angeschlossen hast?
                          Theoretisch sollte das so funktionieren. Allerdings muss der Faktor auf eins. zehn muss man nur angeben, wenn man den Datenpunkt der Delta für den PV Ertrag wählt, weil der zum Beispiel 100 für 10 W anzeigt.

                          Ob das alleine mit einem negativen Smart Meter Wert funktioniert kann ich nicht 100-prozentig sagen, weil mein Smart Meter nicht in der Lage ist negative Werte anzuzeigen. Aber es könnte gut sein Probiers mal aus und sag mir Bescheid ob's geklappt hat. 😉

                          Thomas WellerT 1 Reply Last reply
                          0
                          • A Accu

                            @holgerwolf sorry stehe gerade auf dem Schlauch. genau den habe ich doch im Skript angegeben und der wird auch gezogen.
                            habe mal gesucht und im skript kommt der datenpunkt bei der Schaltersteckdosen Sektion vor, die ich nicht habe und deshalb auch nicht konfiguiert habe.

                            W Offline
                            W Offline
                            Waly_de
                            wrote on last edited by
                            #997

                            @accu habe mal gesucht und im Skript kommt der datenpunkt bei der Schaltersteckdosen Sektion vor, die ich nicht habe und deshalb auch nicht konfiguriert habe.

                            Jetzt steh ich ein bisschen auf dem Schlauch 😉 nutzt du die Überschussladung? Wenn du das gar nicht konfiguriert hast, kannst du die Meldung ignorieren. Wenn du allerdings die Überschussladung nutzen möchtest, dann muss dieser Schalterpunkt auch richtig konfiguriert werden.

                            A A 2 Replies Last reply
                            0
                            • W Waly_de

                              @thomas-weller Interessante Anwendung.
                              Also ich habe es richtig verstanden, dass du weder an der PS noch an der Delta ein PV Modul angeschlossen hast?
                              Theoretisch sollte das so funktionieren. Allerdings muss der Faktor auf eins. zehn muss man nur angeben, wenn man den Datenpunkt der Delta für den PV Ertrag wählt, weil der zum Beispiel 100 für 10 W anzeigt.

                              Ob das alleine mit einem negativen Smart Meter Wert funktioniert kann ich nicht 100-prozentig sagen, weil mein Smart Meter nicht in der Lage ist negative Werte anzuzeigen. Aber es könnte gut sein Probiers mal aus und sag mir Bescheid ob's geklappt hat. 😉

                              Thomas WellerT Offline
                              Thomas WellerT Offline
                              Thomas Weller
                              wrote on last edited by Thomas Weller
                              #998

                              @waly_de said in ecoflow-connector-Script zur dynamischen Leistungsanpassung:

                              @thomas-weller Interessante Anwendung.
                              Also ich habe es richtig verstanden, dass du weder an der PS noch an der Delta ein PV Modul angeschlossen hast?
                              Theoretisch sollte das so funktionieren. Allerdings muss der Faktor auf eins. zehn muss man nur angeben, wenn man den Datenpunkt der Delta für den PV Ertrag wählt, weil der zum Beispiel 100 für 10 W anzeigt.

                              Ob das alleine mit einem negativen Smart Meter Wert funktioniert kann ich nicht 100-prozentig sagen, weil mein Smart Meter nicht in der Lage ist negative Werte anzuzeigen. Aber es könnte gut sein Probiers mal aus und sag mir Bescheid ob's geklappt hat. 😉

                              Habe den Faktor also auf 1 gestellt.

                              Hab jetzt 1.250Watt Überschuss aber die Shelly Steckdose schaltet nicht ein.

                              Hier der Log, er sagt immer knapp über 2.000Watt Überschuss:

                              12.1.2024, 10:28:42.140	[info ]: javascript.0 (892) script.js.EcoFlow_Steuerung: Lastcutoff: 0
                              12.1.2024, 10:28:42.140	[info ]: javascript.0 (892) script.js.EcoFlow_Steuerung: gapSumme: -2309
                              12.1.2024, 10:28:42.140	[info ]: javascript.0 (892) script.js.EcoFlow_Steuerung: Bedarf : -2309
                              12.1.2024, 10:28:42.140	[info ]: javascript.0 (892) script.js.EcoFlow_Steuerung: PStotalPV (+10 W/PS): 10
                              12.1.2024, 10:28:42.140	[info ]: javascript.0 (892) script.js.EcoFlow_Steuerung: Gobal totalPV: 1233
                              12.1.2024, 10:28:42.140	[info ]: javascript.0 (892) script.js.EcoFlow_Steuerung: PVBedarf : -2309
                              12.1.2024, 10:28:42.140	[info ]: javascript.0 (892) script.js.EcoFlow_Steuerung: BatBedarf: 0
                              12.1.2024, 10:28:42.140	[info ]: javascript.0 (892) script.js.EcoFlow_Steuerung: PVfaktor:-230.9
                              12.1.2024, 10:28:42.140	[info ]: javascript.0 (892) script.js.EcoFlow_Steuerung: Batfaktor:0
                              12.1.2024, 10:28:42.140	[info ]: javascript.0 (892) script.js.EcoFlow_Steuerung: ueberschuss:2309
                              12.1.2024, 10:28:42.141	[info ]: javascript.0 (892) script.js.EcoFlow_Steuerung: *************************************
                              12.1.2024, 10:28:42.156	[info ]: javascript.0 (892) script.js.EcoFlow_Steuerung: Änderung für Einspeisung gesendet PS:[PowerStream] : 0 W
                              12.1.2024, 10:28:43.271	[info ]: javascript.0 (892) script.js.EcoFlow_Steuerung: PeakSkip Delta: 213
                              

                              edit:
                              @waly_de said in ecoflow-connector-Script zur dynamischen Leistungsanpassung:

                              Also ich habe es richtig verstanden, dass du weder an der PS noch an der Delta ein PV Modul angeschlossen hast?

                              Ja, hab bisher keine Module am PS und auch nicht an der Delta.

                              1 Reply Last reply
                              0
                              • W Waly_de

                                @accu habe mal gesucht und im Skript kommt der datenpunkt bei der Schaltersteckdosen Sektion vor, die ich nicht habe und deshalb auch nicht konfiguriert habe.

                                Jetzt steh ich ein bisschen auf dem Schlauch 😉 nutzt du die Überschussladung? Wenn du das gar nicht konfiguriert hast, kannst du die Meldung ignorieren. Wenn du allerdings die Überschussladung nutzen möchtest, dann muss dieser Schalterpunkt auch richtig konfiguriert werden.

                                A Offline
                                A Offline
                                Accu
                                wrote on last edited by
                                #999

                                @waly_de habe jetzt mal meinen Shelly da eingetragen, der hinter meiner Delta Pro am AC Netzstrom sitzt. Bisher hatte ich den direkt über Regeln in der Shelly App angesteuert nach dem Motto: WENN PV Ertrag größer XYZ dann schalte AC Laden der EF DP ein.
                                Mit den Boardmitteln der Shelly app finde ich ganz gut, dass man da eine Hysterese konfigurieren kann. Also wenn man Wolken sind, dass der Shelly nicht gleich wieder ausgeht und der AC Eingang ständig AN und wieder AUS geschalten wird.

                                Aber gut - ich probiere es jetzt mal mit deinem Skript -- Wenn mal Sonne da wäre ...

                                F 1 Reply Last reply
                                0
                                • A Accu

                                  @waly_de habe jetzt mal meinen Shelly da eingetragen, der hinter meiner Delta Pro am AC Netzstrom sitzt. Bisher hatte ich den direkt über Regeln in der Shelly App angesteuert nach dem Motto: WENN PV Ertrag größer XYZ dann schalte AC Laden der EF DP ein.
                                  Mit den Boardmitteln der Shelly app finde ich ganz gut, dass man da eine Hysterese konfigurieren kann. Also wenn man Wolken sind, dass der Shelly nicht gleich wieder ausgeht und der AC Eingang ständig AN und wieder AUS geschalten wird.

                                  Aber gut - ich probiere es jetzt mal mit deinem Skript -- Wenn mal Sonne da wäre ...

                                  F Offline
                                  F Offline
                                  foxthefox
                                  Developer
                                  wrote on last edited by
                                  #1000

                                  Weiß jemand wie man einen lokalen MQTT-Broker zwischen den Geräten und der Cloud zum Beobachten des Datenverkehrs dazwischenschaltet?

                                  Adapterüberblick: Profil Github;

                                  Wenn der Adapter gefällt und nützlich ist, bitte ins Repo gehen und Star setzen. Danke

                                  Ein Aufruf: video

                                  A 1 Reply Last reply
                                  0
                                  • F foxthefox

                                    Weiß jemand wie man einen lokalen MQTT-Broker zwischen den Geräten und der Cloud zum Beobachten des Datenverkehrs dazwischenschaltet?

                                    A Offline
                                    A Offline
                                    aherby
                                    wrote on last edited by
                                    #1001

                                    @foxthefox nicht direkt aber was wäre wenn du z.B. eine Software wie MQTT Explorer mit den Daten von Ecoflow fütterst
                                    oder du Wireshark wäre auch eine Möglichkeit zum Test.

                                    F 1 Reply Last reply
                                    0
                                    • A aherby

                                      @foxthefox nicht direkt aber was wäre wenn du z.B. eine Software wie MQTT Explorer mit den Daten von Ecoflow fütterst
                                      oder du Wireshark wäre auch eine Möglichkeit zum Test.

                                      F Offline
                                      F Offline
                                      foxthefox
                                      Developer
                                      wrote on last edited by foxthefox
                                      #1002

                                      @aherby
                                      Mir geht es um die Möglichkeit ungefiltert den Datenaustausch zu sehen und nicht auf den bekannten topics die man abonniert. Ich bin auf der Suche nach unbekannten topics, die ggf für die Kommunikation zwischen Plug und Stream genutzt werden. Mqqt Explorer auf den Broker von ecoflow anzusetzen geht glaub ich nicht mit wildcard. Wireshark au wlan ist glaub ich auch etwas schwierig und wenn es verschlüsselt ist, eventuell nicht möglich.

                                      Adapterüberblick: Profil Github;

                                      Wenn der Adapter gefällt und nützlich ist, bitte ins Repo gehen und Star setzen. Danke

                                      Ein Aufruf: video

                                      1 Reply Last reply
                                      0
                                      • W Waly_de

                                        @accu habe mal gesucht und im Skript kommt der datenpunkt bei der Schaltersteckdosen Sektion vor, die ich nicht habe und deshalb auch nicht konfiguriert habe.

                                        Jetzt steh ich ein bisschen auf dem Schlauch 😉 nutzt du die Überschussladung? Wenn du das gar nicht konfiguriert hast, kannst du die Meldung ignorieren. Wenn du allerdings die Überschussladung nutzen möchtest, dann muss dieser Schalterpunkt auch richtig konfiguriert werden.

                                        A Offline
                                        A Offline
                                        aherby
                                        wrote on last edited by
                                        #1003

                                        @waly_de Hallo was macht mein Script hier falsch oder was könnte der Grund dafür sein?

                                        Script script.js.Ecoflow_Dym_Script_1_2_1 is calling setState more than 1000 times per minute! Stopping Script now! Please check your script!
                                        
                                        W 1 Reply Last reply
                                        0
                                        • A aherby

                                          @waly_de Hallo was macht mein Script hier falsch oder was könnte der Grund dafür sein?

                                          Script script.js.Ecoflow_Dym_Script_1_2_1 is calling setState more than 1000 times per minute! Stopping Script now! Please check your script!
                                          
                                          W Offline
                                          W Offline
                                          Waly_de
                                          wrote on last edited by
                                          #1004

                                          @aherby das haben wir doch gefühlt schon 1000 mal hier im Thead besprochen und ist im Eingangsbeitag und im Skripheader behandelt...

                                          A 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          618

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe