Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  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.2k

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

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

ecoflow-connector-Script zur dynamischen Leistungsanpassung

Geplant Angeheftet Gesperrt Verschoben JavaScript
1.6k Beiträge 127 Kommentatoren 742.6k Aufrufe 127 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • A aherby

    @waly_de Es schein ja eine neue Funktion durch das aktuelle Update das z.B. iOS-App zu geben.
    Nun können Shelly-Gerate geschaltet und wohl auch Leistungsdaten übertragen. Hat hier wer schon Erfahrungen gesammelt?

    Thomas WellerT Offline
    Thomas WellerT Offline
    Thomas Weller
    schrieb am zuletzt editiert von Thomas Weller
    #898

    @aherby
    Meines Wissen`s nach funktioniert die Shelly Integration noch bei niemandem. Wird nur in der App angezeigt und es kommt bei Auswahl der Shelly Komponenten der Fehler der Verbindung, so bei mir auch.
    Soll bis Ende Januar funktionieren lt. einem PV-Forum Mitglied.

    @Waly_de
    Bin relativ neu in der IO Broker Welt...
    Habe jetzt einen Raspberry Pi4 mit IOBroker und deinen zwei Skripten Ecoflow+Tibber am laufen.

    Wird die AC Ladeleistung nicht gesteuert mit deinem Skript?
    Er zieht bei mir immer die max. Eingestellte AC Leistung in die DeltaPro!
    Der Haushaltsstrombedarf wird per Skript angepasst, da regelt zumindest mal was über den "Sensor" des TibberSkript...

    edit...
    Ich hab noch keine PV-Module an meiner DeltaPRO mit 1x Zusatzakku und auch nicht am PowerStream.
    Lade PV Überschuss aus meiner 37kWp SolarEdge PV-Anlage über eine geschaltete Shelly Steckdose mit max. 2,3kW.
    Ziel ist es über so ein Skript zu machen, ohne Shelly Steckdose dazwischen.

    Der TibberPulse Wert meines Stromzählers muss hier doch einwandfrei dafür geeignet sein.

    Bei Negativen Watt Werten Laden der DeltaPro über AC und bei Positiven Watt Werten Powerstream Einspeisung anpassen.
    Mehr brauch ich gar nicht :-)

    A W 2 Antworten Letzte Antwort
    1
    • Thomas WellerT Thomas Weller

      @aherby
      Meines Wissen`s nach funktioniert die Shelly Integration noch bei niemandem. Wird nur in der App angezeigt und es kommt bei Auswahl der Shelly Komponenten der Fehler der Verbindung, so bei mir auch.
      Soll bis Ende Januar funktionieren lt. einem PV-Forum Mitglied.

      @Waly_de
      Bin relativ neu in der IO Broker Welt...
      Habe jetzt einen Raspberry Pi4 mit IOBroker und deinen zwei Skripten Ecoflow+Tibber am laufen.

      Wird die AC Ladeleistung nicht gesteuert mit deinem Skript?
      Er zieht bei mir immer die max. Eingestellte AC Leistung in die DeltaPro!
      Der Haushaltsstrombedarf wird per Skript angepasst, da regelt zumindest mal was über den "Sensor" des TibberSkript...

      edit...
      Ich hab noch keine PV-Module an meiner DeltaPRO mit 1x Zusatzakku und auch nicht am PowerStream.
      Lade PV Überschuss aus meiner 37kWp SolarEdge PV-Anlage über eine geschaltete Shelly Steckdose mit max. 2,3kW.
      Ziel ist es über so ein Skript zu machen, ohne Shelly Steckdose dazwischen.

      Der TibberPulse Wert meines Stromzählers muss hier doch einwandfrei dafür geeignet sein.

      Bei Negativen Watt Werten Laden der DeltaPro über AC und bei Positiven Watt Werten Powerstream Einspeisung anpassen.
      Mehr brauch ich gar nicht :-)

      A Offline
      A Offline
      aherby
      schrieb am zuletzt editiert von
      #899

      @thomas-weller Also ich habe es gerade mal getestet und ich kann den Shelly Plus 1 PM damit schalten aber da um diese Uhrzeit keine Sonne hier scheint, sehe ich eben keine Leistungswerte. Aber mehr wird sicher eh nicht über Matter übertragen. Dache im Log sehe ich einen ungewöhnlichen Eintrag aber nichts aufgefallen.

      1 Antwort Letzte Antwort
      0
      • A aherby

        @waly_de Es schein ja eine neue Funktion durch das aktuelle Update das z.B. iOS-App zu geben.
        Nun können Shelly-Gerate geschaltet und wohl auch Leistungsdaten übertragen. Hat hier wer schon Erfahrungen gesammelt?

        A Offline
        A Offline
        Accu
        schrieb am zuletzt editiert von
        #900

        @aherby was bedeutet das? Dass man einen Shelly schalten kann, der hinter der Delta am AC Eingang sitzt? Bisher schalte ich diesen via Shelly Regel.

        A 1 Antwort Letzte Antwort
        0
        • A Accu

          mal ne Frage zu dem Skript:
          ich habe die neuste Version geladen und im Konfig Bereich meine Daten eingetragen (zwischen die Gänsefüsschen) und die Seriennummern meiner Geräte (Powerstream & Delta Pro (als DM)).
          Auch meinen Sonoff IR Volkszähler Datenpunkt.

          Bildschirmfoto 2024-01-04 um 10.01.14.png

          bekomme aber auch einen Fehler für meine Delta Pro:
          Bildschirmfoto 2024-01-04 um 10.01.38.png

          Leider speist der Powerstream nicht ein. Sollte der nicht automatisch anspringen wenn das Skript gestartet ist?

          wie ist das mit der Location Variablen? Muss da noch was für die XXX eingetragen werden?
          Bildschirmfoto 2024-01-04 um 09.59.29.png

          A Offline
          A Offline
          Accu
          schrieb am zuletzt editiert von
          #901

          Hat niemand eine Idee bzw. kann mir sagen, was ich falsch mache bzw. warum meine Delta Pro trotz Ladestand von 35% und Netzverbrauch von 350W nicht automatisch einspeist?
          Ich nutze den Sonoff IR Volkszähler um meinen Stromverbrauch im Haus zu ermitteln.

          R 1 Antwort Letzte Antwort
          0
          • A Accu

            Hat niemand eine Idee bzw. kann mir sagen, was ich falsch mache bzw. warum meine Delta Pro trotz Ladestand von 35% und Netzverbrauch von 350W nicht automatisch einspeist?
            Ich nutze den Sonoff IR Volkszähler um meinen Stromverbrauch im Haus zu ermitteln.

            R Offline
            R Offline
            Ralf77
            schrieb am zuletzt editiert von
            #902

            @accu bist du im PS auf „Stromversorgung Prio“?
            Schau doch mal im ioBroker nach, was im Protokoll steht.

            1 Antwort Letzte Antwort
            0
            • A Accu

              mal ne Frage zu dem Skript:
              ich habe die neuste Version geladen und im Konfig Bereich meine Daten eingetragen (zwischen die Gänsefüsschen) und die Seriennummern meiner Geräte (Powerstream & Delta Pro (als DM)).
              Auch meinen Sonoff IR Volkszähler Datenpunkt.

              Bildschirmfoto 2024-01-04 um 10.01.14.png

              bekomme aber auch einen Fehler für meine Delta Pro:
              Bildschirmfoto 2024-01-04 um 10.01.38.png

              Leider speist der Powerstream nicht ein. Sollte der nicht automatisch anspringen wenn das Skript gestartet ist?

              wie ist das mit der Location Variablen? Muss da noch was für die XXX eingetragen werden?
              Bildschirmfoto 2024-01-04 um 09.59.29.png

              W Offline
              W Offline
              Waly_de
              schrieb am zuletzt editiert von
              #903

              Es gibt eine neue Version:
              ecoflow-connector_v121_05.01.2024.txt

              (1.2.1) 05.01.2024

                • Neuer Parameter "ExcessChargeStopPower": Überschussleistung bei der der Zusatzspeicher wieder abgeschaltet werden soll.
                • Verschiedene Optimierungen und Bugfixes
                • LogAllOfSerial kann nun verwendet werden um jede nachricht von einer bestimmten seriennummer in ein Logfile zu schreibnen.

              Ich habe vor allem bei der Überschussladung noch einiges angepasst und die Bezugswerte geändert. Leider ist nach wie vor ohne Sonne kein wirklicher Feldtest möglich. Aber bei mir läuft es, wenn es mal hell wird, sehr gut.

              1 Antwort Letzte Antwort
              0
              • A Accu

                mal ne Frage zu dem Skript:
                ich habe die neuste Version geladen und im Konfig Bereich meine Daten eingetragen (zwischen die Gänsefüsschen) und die Seriennummern meiner Geräte (Powerstream & Delta Pro (als DM)).
                Auch meinen Sonoff IR Volkszähler Datenpunkt.

                Bildschirmfoto 2024-01-04 um 10.01.14.png

                bekomme aber auch einen Fehler für meine Delta Pro:
                Bildschirmfoto 2024-01-04 um 10.01.38.png

                Leider speist der Powerstream nicht ein. Sollte der nicht automatisch anspringen wenn das Skript gestartet ist?

                wie ist das mit der Location Variablen? Muss da noch was für die XXX eingetragen werden?
                Bildschirmfoto 2024-01-04 um 09.59.29.png

                W Offline
                W Offline
                Waly_de
                schrieb am zuletzt editiert von
                #904

                @accu Bitte möglichst keine Bider posten, sondern die Protokolle und Code kopieren und mithilfe der CODE Funktion (</>) Button oben Einfügen.

                Das ist einfacher zu lesen ;-)
                

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

                ich habe die neuste Version geladen und im Konfig Bereich meine Daten eingetragen (zwischen die Gänsefüsschen) und die Seriennummern meiner Geräte (Powerstream & Delta Pro (als DM)).
                Auch meinen Sonoff IR Volkszähler Datenpunkt.

                Das sieht zunächst gut aus.die Meldung unten ist nur ein Hinweis und kann ignoriert werden.
                An den logpath und SERIAL_TO_LOG Daten muss nichts geändert werden.

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

                Leider speist der Powerstream nicht ein. Sollte der nicht automatisch anspringen wenn das Skript gestartet ist?

                Wenn alle Bedingungen erfüllt sind, ja.
                Gibt es genug PV-Power, ist die Batteriemindestladung gegeben, werden die Objekte:
                "0_userdata.0.ecoflow.RealPower", "0_userdata.0.ecoflow.totalPV" mit den richtigen Werten regelmäßig aktualisiert?

                A 1 Antwort Letzte Antwort
                0
                • R Ralf77

                  @Waly_de ich habe gerade Dein neuestes Script vom 04.12 mit Überschussladung installiert. Habe aber nicht ganz verstanden, wie es funktioniert (und funktioniert aktuell bei mir mit meinem DeltaPro auch nicht).

                  Ich verwende ja eine Tuya-Steckdose zum Schalten der AC-Überschussladung. Leider funktioniert das AC-Laden nicht (auch nicht, wenn ich es ohne Tuya Steckdose realisiere). Es wird in den "Writebales" für "SlowChragePower" immer "Null" eingetragen... hast Du eine Idee wo mein Fehler liegt?

                   // Überschussladung:
                      //****************************************
                      ExcessCharge: true,                                //Überschussladung AN/AUS (true/false)
                                                                          //ID zum Einstellen der Ladeleistung des Speichers in Watt: 
                      ExcessChargePowerID: "0_userdata.0.ecoflow.app_1695477XXXXXX_DCEBZ8ZEXXXXXX_thing_property_set.writeables.slowChgPower",
                                                                          //ID des aktuellen Ladestandes des Speichers in %: 
                      ExcessChargePowerBatSocID: "0_userdata.0.ecoflow.app_device_property_DCEBZ8ZEXXXXXX.data.params.bmsMaster.soc",
                      ExcessChargeSwitchMin: 2,                           //Zeit in Minuten die der Schalter mindestens in der letzten geschalteten Position verbleiben muss. 
                      ExcessChargeMaxPower: 2500,                         //Maximale Ladeleistung des Speichers in Watt
                      ExcessChargeOffsetPower: -50,                         //Wird der Leistungsanforderung hinzugerechnet um Messabweichungen auszugleichen. 
                      ExcessChargeStartPower: -200,                         //Mindest-Überschussleistung zum Einschalten des Speichers
                      ExcessChargeStartPowerDurationMin: 2,               //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: "tuya.0.bf86dbXXXXXXXX.19",
                                                                          //ID des Schalters, der den Speicher aktiviert: 
                      ExcessChargeSwitchID: "tuya.0.bf86dbXXXXXXXXX.1", 
                      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,
                      PlotCmdID: 99999,
                  

                  Ich wäre Die sehr Dankbar, wenn Du mir helfen könntest...dann kann ich mein eigens Script in die Rente schicken :-)

                  W Offline
                  W Offline
                  Waly_de
                  schrieb am zuletzt editiert von
                  #905

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

                  Ich verwende ja eine Tuya-Steckdose zum Schalten der AC-Überschussladung. Leider funktioniert das AC-Laden nicht (auch nicht, wenn ich es ohne Tuya Steckdose realisiere). Es wird in den "Writebales" für "SlowChragePower" immer "Null" eingetragen... hast Du eine Idee wo mein Fehler liegt?

                  Also da ist einiges in der Konfiguration problematisch... ExcessChargeStartPower sollte z.b. nicht negativ sein. Ich ändere Deine Konfiguration mal so, wie ich glaube das sie Funktionieren sollte (bitte mit der neuen Version von heute testen):

                  // Überschussladung:
                       //****************************************
                       ExcessCharge: true,                                //Überschussladung AN/AUS (true/false)
                                                                           //ID zum Einstellen der Ladeleistung des Speichers in Watt: 
                       ExcessChargePowerID: "0_userdata.0.ecoflow.app_1695477XXXXXX_DCEBZ8ZEXXXXXX_thing_property_set.writeables.slowChgPower",
                                                                           //ID des aktuellen Ladestandes des Speichers in %: 
                       ExcessChargePowerBatSocID: "0_userdata.0.ecoflow.app_device_property_DCEBZ8ZEXXXXXX.data.params.bmsMaster.soc",
                       ExcessChargeSwitchMin: 2,                           //Zeit in Minuten die der Schalter mindestens in der letzten geschalteten Position verbleiben muss. 
                       ExcessChargeMaxPower: 2500,                         //Maximale Ladeleistung des Speichers in Watt
                       ExcessChargeOffsetPower: 0,                         //Wird der Leistungsanforderung hinzugerechnet um Messabweichungen auszugleichen. 
                       ExcessChargeStartPower: 50,                         //Mindest-Überschussleistung zum Einschalten des Speichers
                       ExcessChargeStopPower: 0,                           //Ü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: "tuya.0.bf86dbXXXXXXXX.19",
                                                                           //ID des Schalters, der den Speicher aktiviert: 
                       ExcessChargeSwitchID: "tuya.0.bf86dbXXXXXXXXX.1", 
                       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,
                       PlotCmdID: 99999,
                  

                  Sollte, wenn alle ID's Passen folgendes machen:
                  Wenn 0_userdata.0.ecoflow.ExcessPower für mindesten eine Minute ununterbrochen > 50W ist, wird "tuya.0.bf86dbXXXXXXXXX.1" auf true gesetzt (Schaltet die Tuba-Dose?)
                  ExcessChargeSwitchMin bewirkt das sie mindestens 2 Minuten an bleibt, auch wenn die 0_userdata.0.ecoflow.ExcessPower für auf 0 fällt.

                  "0_userdata.0.ecoflow.app_1695477XXXXXX_DCEBZ8ZEXXXXXX_thing_property_set.writeables.slowChgPower" sollte nun an die Überschussleistung angepasst werden.

                  R 1 Antwort Letzte Antwort
                  0
                  • W Waly_de

                    @accu Bitte möglichst keine Bider posten, sondern die Protokolle und Code kopieren und mithilfe der CODE Funktion (</>) Button oben Einfügen.

                    Das ist einfacher zu lesen ;-)
                    

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

                    ich habe die neuste Version geladen und im Konfig Bereich meine Daten eingetragen (zwischen die Gänsefüsschen) und die Seriennummern meiner Geräte (Powerstream & Delta Pro (als DM)).
                    Auch meinen Sonoff IR Volkszähler Datenpunkt.

                    Das sieht zunächst gut aus.die Meldung unten ist nur ein Hinweis und kann ignoriert werden.
                    An den logpath und SERIAL_TO_LOG Daten muss nichts geändert werden.

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

                    Leider speist der Powerstream nicht ein. Sollte der nicht automatisch anspringen wenn das Skript gestartet ist?

                    Wenn alle Bedingungen erfüllt sind, ja.
                    Gibt es genug PV-Power, ist die Batteriemindestladung gegeben, werden die Objekte:
                    "0_userdata.0.ecoflow.RealPower", "0_userdata.0.ecoflow.totalPV" mit den richtigen Werten regelmäßig aktualisiert?

                    A Offline
                    A Offline
                    Accu
                    schrieb am zuletzt editiert von
                    #906

                    @waly_de im Skript sehe ich beim Starten im Debug Fenster folgende Fehlermeldung:

                    javascript.0 (53248) script.js.Test.EF_Integration: Unbekannter Set Befehl: {"params":{"hour":9,"min":33,"sec":25,"day":5,"week":6,"month":1,"year":2024},"from":"iOS","lang":"de-de","id":"605402678","moduleSn":"DCExxxxxx","moduleType":1,"operateType":"setRtcTime","version":"1.0"}
                    

                    Meine Delta Pro steht laut EF App auf: "Stromversorgung priorisieren".

                       SmartmeterID: "sonoff.0.IRHub.SML_Watt_Summe",     // State, der den aktuellen Gesamtverbrauch in Watt anzeigt
                        seriennummern: [
                            //############# Diesen Abschnitt für jedes einzelne Gerät anlegen ################
                            {
                                seriennummer: "HW51xxxxxx",           // Die Seriennummer des Gerätes
                                name: "PowerStream",                        // beliebiger Name
                                MaxPower: 600,                              // Der höchstmögliche Wert in Watt für die Einspeiseleistung
                                subscribe: true,                            // "true": Alle Daten für dieses Gerät werden angefragt. "false": Es werden keine Statusdaten abgefragt
                                typ: "PS",                                  // Welches Gerät ist es: PowerStream:"PS"; DeltaMax:"DM"; Delta2: "D2" ; Delta2 Max: "D2M"; SmartPlug: "SM"; Andere: "NA" 
                                // Parameter an hier nur für PowerStream.     
                                regulation: true,                          // "true": Dieser PowerStream soll vom Script reguliert werden
                                RegulationOffPower: -1,                     // Wird die Regulation per State abgestellt, wird die Einspeiseleistung des ersten Powerstreams auf diesen Wert gesetzt (-1 = keine Änderung, -2 = Batterie Priomodus)
                                hasBat: true,                               // "true": Eine Batterie ist angeschlossen. Nur für PowerStream relevant.
                                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
                                prioOffOnDemand: 30,                        // Wattwert des Bedarfs, bei dem zurück in den Strom-Priomodus geschaltet wird. 0 für kein Rückschalten.   
                                lowBatLimitPozOn: 5, lowBatLimitPozOff: 15, // Bei Unterschreiten der Batterieladung von "lowBatLimitPozOn" % ist die maximale Einspeiseleistung auf 
                                lowBatLimit: 100,                           // "lowBatLimit" limitiert, bis der Ladezustand wieder bei "lowBatLimitPozOff" ist
                            },
                            //#######################################################################
                    

                    (Noch eine Frage: Könntest Du noch auf der ersten Seite (im Skript und/oder hier im Forum) einen allgemeinen Text zur Funktionalität des Skripts hinzufügen? Also was das Skript genau macht. Ich denke das wäre für viele Newbies sehr hilfreich.)

                    Ich nutze die EF Delta Pro mit 4 Panels (2p2s) direkt daran angeschlossen. Aktuell kommt bei der Wetterlage fast nichts rein. (gestern hatte ich über Mittag mal 150W) aber auch da ist der PS nicht angesprungen.
                    Aber das Skript liest doch auch nicht aus, was an PV reinkommt oder? Ich habe zumindest die stelle wo der Hoymiles vorkommt auskommentiert, da ich ne PV Anlage auf dem Gartenhaus habe. (Ich habe aber einen Datenpunkt im ioBroker wo der Gesamte PV Strom erfasst wird. ggf. kann ich den da einsetzen?)

                    W 1 Antwort Letzte Antwort
                    0
                    • Thomas WellerT Thomas Weller

                      @aherby
                      Meines Wissen`s nach funktioniert die Shelly Integration noch bei niemandem. Wird nur in der App angezeigt und es kommt bei Auswahl der Shelly Komponenten der Fehler der Verbindung, so bei mir auch.
                      Soll bis Ende Januar funktionieren lt. einem PV-Forum Mitglied.

                      @Waly_de
                      Bin relativ neu in der IO Broker Welt...
                      Habe jetzt einen Raspberry Pi4 mit IOBroker und deinen zwei Skripten Ecoflow+Tibber am laufen.

                      Wird die AC Ladeleistung nicht gesteuert mit deinem Skript?
                      Er zieht bei mir immer die max. Eingestellte AC Leistung in die DeltaPro!
                      Der Haushaltsstrombedarf wird per Skript angepasst, da regelt zumindest mal was über den "Sensor" des TibberSkript...

                      edit...
                      Ich hab noch keine PV-Module an meiner DeltaPRO mit 1x Zusatzakku und auch nicht am PowerStream.
                      Lade PV Überschuss aus meiner 37kWp SolarEdge PV-Anlage über eine geschaltete Shelly Steckdose mit max. 2,3kW.
                      Ziel ist es über so ein Skript zu machen, ohne Shelly Steckdose dazwischen.

                      Der TibberPulse Wert meines Stromzählers muss hier doch einwandfrei dafür geeignet sein.

                      Bei Negativen Watt Werten Laden der DeltaPro über AC und bei Positiven Watt Werten Powerstream Einspeisung anpassen.
                      Mehr brauch ich gar nicht :-)

                      W Offline
                      W Offline
                      Waly_de
                      schrieb am zuletzt editiert von
                      #907

                      @thomas-weller sagte in ecoflow-connector-Script zur dynamischen Leistungsanpassung:

                      @Waly_de
                      Bin relativ neu in der IO Broker Welt...
                      Habe jetzt einen Raspberry Pi4 mit IOBroker und deinen zwei Skripten Ecoflow+Tibber am laufen.
                      Wird die AC Ladeleistung nicht gesteuert mit deinem Skript?
                      Er zieht bei mir immer die max. Eingestellte AC Leistung in die DeltaPro!
                      Der Haushaltsstrombedarf wird per Skript angepasst, da regelt zumindest mal was über den "Sensor" des TibberSkript...
                      edit...
                      Ich hab noch keine PV-Module an meiner DeltaPRO mit 1x Zusatzakku und auch nicht am PowerStream.
                      Lade PV Überschuss aus meiner 37kWp SolarEdge PV-Anlage über eine geschaltete Shelly Steckdose mit max. 2,3kW.
                      Ziel ist es über so ein Skript zu machen, ohne Shelly Steckdose dazwischen.
                      Der TibberPulse Wert meines Stromzählers muss hier doch einwandfrei dafür geeignet sein.
                      Bei Negativen Watt Werten Laden der DeltaPro über AC und bei Positiven Watt Werten Powerstream Einspeisung anpassen.
                      Mehr brauch ich gar nicht

                      Willkommen in der wunderbaren Welt von IOBroker ;-)
                      Dafür ist das Skript eigentlich nicht gemacht... Will heissen ich hab nicht getestet was passiert, wenn die PS keine eigenen PV haben. Aber bitte versuch es mal mit der neuen Version von heute.
                      Da sind die Bezugswerte geändert. Schlau bitte mal was bei Dir in 0_userdata.0.ecoflow.ExcessPower geschrieben wird.

                      A 1 Antwort Letzte Antwort
                      0
                      • A Accu

                        @waly_de im Skript sehe ich beim Starten im Debug Fenster folgende Fehlermeldung:

                        javascript.0 (53248) script.js.Test.EF_Integration: Unbekannter Set Befehl: {"params":{"hour":9,"min":33,"sec":25,"day":5,"week":6,"month":1,"year":2024},"from":"iOS","lang":"de-de","id":"605402678","moduleSn":"DCExxxxxx","moduleType":1,"operateType":"setRtcTime","version":"1.0"}
                        

                        Meine Delta Pro steht laut EF App auf: "Stromversorgung priorisieren".

                           SmartmeterID: "sonoff.0.IRHub.SML_Watt_Summe",     // State, der den aktuellen Gesamtverbrauch in Watt anzeigt
                            seriennummern: [
                                //############# Diesen Abschnitt für jedes einzelne Gerät anlegen ################
                                {
                                    seriennummer: "HW51xxxxxx",           // Die Seriennummer des Gerätes
                                    name: "PowerStream",                        // beliebiger Name
                                    MaxPower: 600,                              // Der höchstmögliche Wert in Watt für die Einspeiseleistung
                                    subscribe: true,                            // "true": Alle Daten für dieses Gerät werden angefragt. "false": Es werden keine Statusdaten abgefragt
                                    typ: "PS",                                  // Welches Gerät ist es: PowerStream:"PS"; DeltaMax:"DM"; Delta2: "D2" ; Delta2 Max: "D2M"; SmartPlug: "SM"; Andere: "NA" 
                                    // Parameter an hier nur für PowerStream.     
                                    regulation: true,                          // "true": Dieser PowerStream soll vom Script reguliert werden
                                    RegulationOffPower: -1,                     // Wird die Regulation per State abgestellt, wird die Einspeiseleistung des ersten Powerstreams auf diesen Wert gesetzt (-1 = keine Änderung, -2 = Batterie Priomodus)
                                    hasBat: true,                               // "true": Eine Batterie ist angeschlossen. Nur für PowerStream relevant.
                                    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
                                    prioOffOnDemand: 30,                        // Wattwert des Bedarfs, bei dem zurück in den Strom-Priomodus geschaltet wird. 0 für kein Rückschalten.   
                                    lowBatLimitPozOn: 5, lowBatLimitPozOff: 15, // Bei Unterschreiten der Batterieladung von "lowBatLimitPozOn" % ist die maximale Einspeiseleistung auf 
                                    lowBatLimit: 100,                           // "lowBatLimit" limitiert, bis der Ladezustand wieder bei "lowBatLimitPozOff" ist
                                },
                                //#######################################################################
                        

                        (Noch eine Frage: Könntest Du noch auf der ersten Seite (im Skript und/oder hier im Forum) einen allgemeinen Text zur Funktionalität des Skripts hinzufügen? Also was das Skript genau macht. Ich denke das wäre für viele Newbies sehr hilfreich.)

                        Ich nutze die EF Delta Pro mit 4 Panels (2p2s) direkt daran angeschlossen. Aktuell kommt bei der Wetterlage fast nichts rein. (gestern hatte ich über Mittag mal 150W) aber auch da ist der PS nicht angesprungen.
                        Aber das Skript liest doch auch nicht aus, was an PV reinkommt oder? Ich habe zumindest die stelle wo der Hoymiles vorkommt auskommentiert, da ich ne PV Anlage auf dem Gartenhaus habe. (Ich habe aber einen Datenpunkt im ioBroker wo der Gesamte PV Strom erfasst wird. ggf. kann ich den da einsetzen?)

                        W Offline
                        W Offline
                        Waly_de
                        schrieb am zuletzt editiert von
                        #908

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

                        Ich nutze die EF Delta Pro mit 4 Panels (2p2s) direkt daran angeschlossen. Aktuell kommt bei der Wetterlage fast nichts rein. (gestern hatte ich über Mittag mal 150W) aber auch da ist der PS nicht angesprungen.
                        Aber das Skript liest doch auch nicht aus, was an PV reinkommt oder? Ich habe zumindest die stelle wo der Hoymiles vorkommt auskommentiert, da ich ne PV Anlage auf dem Gartenhaus habe. (Ich habe aber einen Datenpunkt im ioBroker wo der Gesamte PV Strom erfasst wird. ggf. kann ich den da einsetzen?)

                        Die Meldung mit dem unbekannten Set Befehl kannst du ignorieren.
                        Der Rest sieht soweit gut aus.

                        Grundsätzlich ist es ja so, dass das Skript dafür sorgen soll, dass möglichst die gesamte PV Leistung sofort verbraucht wird und nur das, was gerade nicht verbraucht werden kann, in einen Akku geladen wird.
                        Damit das funktioniert, muss das Skript natürlich genau wissen, was genau gerade wirklich in deinem Haus verbraucht wird. Beziehungsweise wie viel der am Stromzähler angezeigten Leistung zum einen aus der PV Anlage kommt und zum anderen unter Umständen in Batterien eingespeist wird usw.
                        Wenn du also einen Datenpunkt hast, der anzeigt, wie viel PVLeistung gerade aus anderen Quellen als aus deinemPower Stream kommt und sich das auch auf den Wert auswirkt, den das Script als "SmartmeterID" einließt, dann solltest du diesen unbedingt unter "AdditionalPower" angeben.

                        Wenn dein Power Stream nicht anspringt, kann das neben einem leeren Akku auf jeden Fall der Grund sein. Bitte beobachte den Wert der Unter Objekte "0_userdata.0.ecoflow.RealPower" steht. Das ist der Wert, der für das Skript die Grundlage der Regelung darstellt. Ist der < "BasePowerOffset" passiert gar nichts. Ist der Wert größer, Versuch, das Skript, die Einspeisung des Power Stream auf RealPower - BasePowerOffset zu setzen.
                        Das funktioniert aber auch nur dann, wenn der Akku den Mindest Ladestand erreicht hat. Den hat Ecoflow. festgelegt und ist bei mir zwischen 7% und 10 %. Wenn der Ladestand darunter liegt, geht die gesamte Leistung in den Akku, egal was das Skript als AC-Leistung einstellt.

                        A 1 Antwort Letzte Antwort
                        0
                        • W Waly_de

                          @thomas-weller sagte in ecoflow-connector-Script zur dynamischen Leistungsanpassung:

                          @Waly_de
                          Bin relativ neu in der IO Broker Welt...
                          Habe jetzt einen Raspberry Pi4 mit IOBroker und deinen zwei Skripten Ecoflow+Tibber am laufen.
                          Wird die AC Ladeleistung nicht gesteuert mit deinem Skript?
                          Er zieht bei mir immer die max. Eingestellte AC Leistung in die DeltaPro!
                          Der Haushaltsstrombedarf wird per Skript angepasst, da regelt zumindest mal was über den "Sensor" des TibberSkript...
                          edit...
                          Ich hab noch keine PV-Module an meiner DeltaPRO mit 1x Zusatzakku und auch nicht am PowerStream.
                          Lade PV Überschuss aus meiner 37kWp SolarEdge PV-Anlage über eine geschaltete Shelly Steckdose mit max. 2,3kW.
                          Ziel ist es über so ein Skript zu machen, ohne Shelly Steckdose dazwischen.
                          Der TibberPulse Wert meines Stromzählers muss hier doch einwandfrei dafür geeignet sein.
                          Bei Negativen Watt Werten Laden der DeltaPro über AC und bei Positiven Watt Werten Powerstream Einspeisung anpassen.
                          Mehr brauch ich gar nicht

                          Willkommen in der wunderbaren Welt von IOBroker ;-)
                          Dafür ist das Skript eigentlich nicht gemacht... Will heissen ich hab nicht getestet was passiert, wenn die PS keine eigenen PV haben. Aber bitte versuch es mal mit der neuen Version von heute.
                          Da sind die Bezugswerte geändert. Schlau bitte mal was bei Dir in 0_userdata.0.ecoflow.ExcessPower geschrieben wird.

                          A Offline
                          A Offline
                          Accu
                          schrieb am zuletzt editiert von
                          #909

                          @waly_de ah ok - d.h. das Skript läuft nur wenn der PS an Solar hängt? Ich nutze den PS leider nur zur Einspeisung. Meine Panels hängen direkt an der Delta Pro. Wobei man doch sicher auch den Datenpunkt abgreifen kann (WattIn)?

                          W 1 Antwort Letzte Antwort
                          0
                          • A Accu

                            @waly_de ah ok - d.h. das Skript läuft nur wenn der PS an Solar hängt? Ich nutze den PS leider nur zur Einspeisung. Meine Panels hängen direkt an der Delta Pro. Wobei man doch sicher auch den Datenpunkt abgreifen kann (WattIn)?

                            W Offline
                            W Offline
                            Waly_de
                            schrieb am zuletzt editiert von Waly_de
                            #910

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

                            ah ok - d.h. das Skript läuft nur wenn der PS an Solar hängt?

                            d.h. ich weiss es nicht genau ;-) Aber es besteht eine gute Chance, dass das neue Script auch in Deiner Konfiguration läuft... Teste mal und gib Rückmeldung, auch zu den Zuständen, nach denen ich gefragt hab.

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

                            Wobei man doch sicher auch den Datenpunkt abgreifen kann (WattIn)?

                            Vermutlich. Bitte vorher in den Objekten überprüfen, ob der Wert stimmig ist. Dann unter "AdditionalPower" angeben

                            A 1 Antwort Letzte Antwort
                            0
                            • W Waly_de

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

                              Ich verwende ja eine Tuya-Steckdose zum Schalten der AC-Überschussladung. Leider funktioniert das AC-Laden nicht (auch nicht, wenn ich es ohne Tuya Steckdose realisiere). Es wird in den "Writebales" für "SlowChragePower" immer "Null" eingetragen... hast Du eine Idee wo mein Fehler liegt?

                              Also da ist einiges in der Konfiguration problematisch... ExcessChargeStartPower sollte z.b. nicht negativ sein. Ich ändere Deine Konfiguration mal so, wie ich glaube das sie Funktionieren sollte (bitte mit der neuen Version von heute testen):

                              // Überschussladung:
                                   //****************************************
                                   ExcessCharge: true,                                //Überschussladung AN/AUS (true/false)
                                                                                       //ID zum Einstellen der Ladeleistung des Speichers in Watt: 
                                   ExcessChargePowerID: "0_userdata.0.ecoflow.app_1695477XXXXXX_DCEBZ8ZEXXXXXX_thing_property_set.writeables.slowChgPower",
                                                                                       //ID des aktuellen Ladestandes des Speichers in %: 
                                   ExcessChargePowerBatSocID: "0_userdata.0.ecoflow.app_device_property_DCEBZ8ZEXXXXXX.data.params.bmsMaster.soc",
                                   ExcessChargeSwitchMin: 2,                           //Zeit in Minuten die der Schalter mindestens in der letzten geschalteten Position verbleiben muss. 
                                   ExcessChargeMaxPower: 2500,                         //Maximale Ladeleistung des Speichers in Watt
                                   ExcessChargeOffsetPower: 0,                         //Wird der Leistungsanforderung hinzugerechnet um Messabweichungen auszugleichen. 
                                   ExcessChargeStartPower: 50,                         //Mindest-Überschussleistung zum Einschalten des Speichers
                                   ExcessChargeStopPower: 0,                           //Ü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: "tuya.0.bf86dbXXXXXXXX.19",
                                                                                       //ID des Schalters, der den Speicher aktiviert: 
                                   ExcessChargeSwitchID: "tuya.0.bf86dbXXXXXXXXX.1", 
                                   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,
                                   PlotCmdID: 99999,
                              

                              Sollte, wenn alle ID's Passen folgendes machen:
                              Wenn 0_userdata.0.ecoflow.ExcessPower für mindesten eine Minute ununterbrochen > 50W ist, wird "tuya.0.bf86dbXXXXXXXXX.1" auf true gesetzt (Schaltet die Tuba-Dose?)
                              ExcessChargeSwitchMin bewirkt das sie mindestens 2 Minuten an bleibt, auch wenn die 0_userdata.0.ecoflow.ExcessPower für auf 0 fällt.

                              "0_userdata.0.ecoflow.app_1695477XXXXXX_DCEBZ8ZEXXXXXX_thing_property_set.writeables.slowChgPower" sollte nun an die Überschussleistung angepasst werden.

                              R Offline
                              R Offline
                              Ralf77
                              schrieb am zuletzt editiert von Ralf77
                              #911

                              @waly_de vielen Dank für Deine Hilfe auf meinen Post. Folgende Beobachtung habe ich gemacht:

                              • Die Tuya Steckdose schaltet ein. Das klappt.
                              • Die Regelung der AC-Ladung startet. Das klappt auch
                              • Die Regelung stellt aber meist eine zu hohe Ladelseitung ein. Es wurde dann imme rzwischen 100Watt und 200 Watt zusätzlich zum PV-Überschuss aus dem Netz gezogen
                              • Die Regelung klappte nur, wenn es keine großen Änderungen im Verbrauch gab (also deutlich weniger/mehr Überschuss auf einmal zur Verfügung stand)

                              Meine Erkenntnisse:

                              • Ich vermmute, dass mit der Berechnung von "0_userdata.0.ecoflow.ExcessPower" etwas nicht stimmt. Als Test habe ich Verbraucher im Haus zugeschalten bis die aktuelle PV-Produktion nicht mehr gerreicht hat und wollte so eine Abschaltung der AC-Ladung erzwingen. Da shat aber leider nicht geklappt. Als ich dann die Verbraucher wieder abgeschaltet hatte und ein Überschuss im Haus wieder verfügbar war, ist die AC-Ladeleistung auf 2900Watt gestiegen (in der App wurde sogar ein Wert von über 6000 Watt angezeigt). Die Berechnung der Ladeleistung scheint also noch nicht für alle möglichen Fälle zu passen.

                              Hier mal ein Bild als ich die Verbraucher im Haus manuell zugeschalten habe:

                              • Ich habe vom Netz 990 Watt bezogen
                              • ExcessPower ist positiv auf 1019 geblieben
                              • slowChgPower blieb auf 869 Watt
                                -AC Ladung stoppte nicht (Tuya Steckdose hat sich nicht abgeschalten)

                              39d06c96-7d82-4116-9178-aab5d91c0342-image.png

                              Ich vermute, dass es an der Berechnung noch Probleme gibt, da ja Überschuss ein negativer Wert ist und Netzbezug ein positiver Wert...

                              Gerne noch mal mein Script, welches ich als separates Script laufen habe (ChatGPT generiert- sicherlich noch zu verbessern).
                              Es funktioniert aber sehr gut und regelt die AC-Ladung sehr zuverlässig mit einer Resteinspeisung von 20-70 Watt.

                              Einziges Problem:
                              Teilweise schaltet sich die Steckdose in der Nacht ein, wenn ich z.B.

                              • einen Verbrauch von 250 Watt aus dem Akku ziehe (Grundlast).
                              • Wenn ich dann z.B. den Wasserkocher anschalte, dann liefert der Akku 600 Watt ins Hausnetz (Verbrauch ist ja dann bei ~2kW).
                              • Dann schaltet sich er Wasserkocher aus und ich habe einen "Negativen Wert = Einspeisung" in Höhe von 350 Watt bis der Akku zurückregelt
                              • Dann springt die Teckdose an, der Akku bleibt auf 600 Watt und fängt an über AC zu laden...da muss ich dann manuell eingreifen
                              const vPower = 'fronius.0.meter.0.PowerReal_P_Sum'; // Pfad zur Leistung des Fronius Smartmeters
                              const Schalter = 'tuya.0.bf86db8XXXXX.1'; // Pfad zur Tuya Steckdose
                              let timeout = null;
                              const ecoflowObject = "0_userdata.0.ecoflow.app_1695477127XXXX_DCEBZ8ZEXXXXXX_thing_property_set.writeables.slowChgPower"; // Pfad zum Ecoflow-Objekt
                              
                              // Funktion zum Abrufen und Umrechnen des Werts vom Fronius Smartmeter alle 60 Sekunden
                              const EINSCHALT_POWER = 200
                              const AUSSCHALT_POWER = 0
                              let powerValue = 0
                              intervalId = setInterval(function () {
                                  const froniusValue = Math.floor(getState(vPower).val); // Wert vom Fronius Smartmeter
                                  const aktuelle_powerValue  =  getState(ecoflowObject).val
                                  let Entscheidungswert = (froniusValue * -1) + aktuelle_powerValue
                               
                                  if (Entscheidungswert >= EINSCHALT_POWER){
                                      Entscheidungswert = Math.floor(Entscheidungswert / 100) * 100; // Runde den positiven Wert auf die vollen hundert ab
                                      powerValue = Entscheidungswert
                                  }
                                  if (powerValue > 0 && Entscheidungswert > AUSSCHALT_POWER){
                                      Entscheidungswert = Math.ceil(Entscheidungswert / 100) * 100; // Runde den negativen Wert auf die vollen hundert auf
                                      powerValue = Entscheidungswert
                                  }
                                  if (Entscheidungswert <= AUSSCHALT_POWER){
                                      powerValue = 0
                                  }
                                  let setValue = powerValue
                               
                                  if (setValue < 200) setValue = 200
                                  if (setValue > 2600) setValue = 2600
                                  
                                  setState(ecoflowObject, setValue); // Wert in das Ecoflow-Objekt schreiben
                              }, 30000); // alle 30 Sekunden
                              
                              on(vPower, function(dp) {
                                if (dp.state.val <= -250) { // Überschussleistung in Watt
                                  if (timeout) {
                                    clearTimeout(timeout);
                                    timeout = null;
                                  }
                                  setState(Schalter, true); // Steckdose einschalten
                                    } else if (dp.state.val >= 100) {
                                  if (!timeout) {
                                    timeout = setTimeout(function() {
                                      if (getState(vPower).val >= 0) { // Prüfen, ob der Wert des Fronius Smart Meters innerhalb von 2 Minuten wieder negativ wird
                                        setState(Schalter, false); // Steckdose ausschalten nach 2 Minuten
                                                }
                                      timeout = null;
                                    }, 120000); // Verzögerung von 2 Minuten
                                  }
                                }
                              });
                              
                              
                              W 1 Antwort Letzte Antwort
                              0
                              • R Ralf77

                                @waly_de vielen Dank für Deine Hilfe auf meinen Post. Folgende Beobachtung habe ich gemacht:

                                • Die Tuya Steckdose schaltet ein. Das klappt.
                                • Die Regelung der AC-Ladung startet. Das klappt auch
                                • Die Regelung stellt aber meist eine zu hohe Ladelseitung ein. Es wurde dann imme rzwischen 100Watt und 200 Watt zusätzlich zum PV-Überschuss aus dem Netz gezogen
                                • Die Regelung klappte nur, wenn es keine großen Änderungen im Verbrauch gab (also deutlich weniger/mehr Überschuss auf einmal zur Verfügung stand)

                                Meine Erkenntnisse:

                                • Ich vermmute, dass mit der Berechnung von "0_userdata.0.ecoflow.ExcessPower" etwas nicht stimmt. Als Test habe ich Verbraucher im Haus zugeschalten bis die aktuelle PV-Produktion nicht mehr gerreicht hat und wollte so eine Abschaltung der AC-Ladung erzwingen. Da shat aber leider nicht geklappt. Als ich dann die Verbraucher wieder abgeschaltet hatte und ein Überschuss im Haus wieder verfügbar war, ist die AC-Ladeleistung auf 2900Watt gestiegen (in der App wurde sogar ein Wert von über 6000 Watt angezeigt). Die Berechnung der Ladeleistung scheint also noch nicht für alle möglichen Fälle zu passen.

                                Hier mal ein Bild als ich die Verbraucher im Haus manuell zugeschalten habe:

                                • Ich habe vom Netz 990 Watt bezogen
                                • ExcessPower ist positiv auf 1019 geblieben
                                • slowChgPower blieb auf 869 Watt
                                  -AC Ladung stoppte nicht (Tuya Steckdose hat sich nicht abgeschalten)

                                39d06c96-7d82-4116-9178-aab5d91c0342-image.png

                                Ich vermute, dass es an der Berechnung noch Probleme gibt, da ja Überschuss ein negativer Wert ist und Netzbezug ein positiver Wert...

                                Gerne noch mal mein Script, welches ich als separates Script laufen habe (ChatGPT generiert- sicherlich noch zu verbessern).
                                Es funktioniert aber sehr gut und regelt die AC-Ladung sehr zuverlässig mit einer Resteinspeisung von 20-70 Watt.

                                Einziges Problem:
                                Teilweise schaltet sich die Steckdose in der Nacht ein, wenn ich z.B.

                                • einen Verbrauch von 250 Watt aus dem Akku ziehe (Grundlast).
                                • Wenn ich dann z.B. den Wasserkocher anschalte, dann liefert der Akku 600 Watt ins Hausnetz (Verbrauch ist ja dann bei ~2kW).
                                • Dann schaltet sich er Wasserkocher aus und ich habe einen "Negativen Wert = Einspeisung" in Höhe von 350 Watt bis der Akku zurückregelt
                                • Dann springt die Teckdose an, der Akku bleibt auf 600 Watt und fängt an über AC zu laden...da muss ich dann manuell eingreifen
                                const vPower = 'fronius.0.meter.0.PowerReal_P_Sum'; // Pfad zur Leistung des Fronius Smartmeters
                                const Schalter = 'tuya.0.bf86db8XXXXX.1'; // Pfad zur Tuya Steckdose
                                let timeout = null;
                                const ecoflowObject = "0_userdata.0.ecoflow.app_1695477127XXXX_DCEBZ8ZEXXXXXX_thing_property_set.writeables.slowChgPower"; // Pfad zum Ecoflow-Objekt
                                
                                // Funktion zum Abrufen und Umrechnen des Werts vom Fronius Smartmeter alle 60 Sekunden
                                const EINSCHALT_POWER = 200
                                const AUSSCHALT_POWER = 0
                                let powerValue = 0
                                intervalId = setInterval(function () {
                                    const froniusValue = Math.floor(getState(vPower).val); // Wert vom Fronius Smartmeter
                                    const aktuelle_powerValue  =  getState(ecoflowObject).val
                                    let Entscheidungswert = (froniusValue * -1) + aktuelle_powerValue
                                 
                                    if (Entscheidungswert >= EINSCHALT_POWER){
                                        Entscheidungswert = Math.floor(Entscheidungswert / 100) * 100; // Runde den positiven Wert auf die vollen hundert ab
                                        powerValue = Entscheidungswert
                                    }
                                    if (powerValue > 0 && Entscheidungswert > AUSSCHALT_POWER){
                                        Entscheidungswert = Math.ceil(Entscheidungswert / 100) * 100; // Runde den negativen Wert auf die vollen hundert auf
                                        powerValue = Entscheidungswert
                                    }
                                    if (Entscheidungswert <= AUSSCHALT_POWER){
                                        powerValue = 0
                                    }
                                    let setValue = powerValue
                                 
                                    if (setValue < 200) setValue = 200
                                    if (setValue > 2600) setValue = 2600
                                    
                                    setState(ecoflowObject, setValue); // Wert in das Ecoflow-Objekt schreiben
                                }, 30000); // alle 30 Sekunden
                                
                                on(vPower, function(dp) {
                                  if (dp.state.val <= -250) { // Überschussleistung in Watt
                                    if (timeout) {
                                      clearTimeout(timeout);
                                      timeout = null;
                                    }
                                    setState(Schalter, true); // Steckdose einschalten
                                      } else if (dp.state.val >= 100) {
                                    if (!timeout) {
                                      timeout = setTimeout(function() {
                                        if (getState(vPower).val >= 0) { // Prüfen, ob der Wert des Fronius Smart Meters innerhalb von 2 Minuten wieder negativ wird
                                          setState(Schalter, false); // Steckdose ausschalten nach 2 Minuten
                                                  }
                                        timeout = null;
                                      }, 120000); // Verzögerung von 2 Minuten
                                    }
                                  }
                                });
                                
                                
                                W Offline
                                W Offline
                                Waly_de
                                schrieb am zuletzt editiert von
                                #912

                                @ralf77 hast du das mit der Version von heute 1.2.1 gemacht?

                                R 1 Antwort Letzte Antwort
                                0
                                • W Waly_de

                                  @ralf77 hast du das mit der Version von heute 1.2.1 gemacht?

                                  R Offline
                                  R Offline
                                  Ralf77
                                  schrieb am zuletzt editiert von Ralf77
                                  #913

                                  @waly_de Nein, mit der Version 1.2 vom 04.12.

                                  W 1 Antwort Letzte Antwort
                                  0
                                  • R Ralf77

                                    @waly_de Nein, mit der Version 1.2 vom 04.12.

                                    W Offline
                                    W Offline
                                    Waly_de
                                    schrieb am zuletzt editiert von
                                    #914

                                    @ralf77 dann Versuchs bitte noch mal mit der neuen Version. Ich habe wie gesagt die Bezugsgröße geändert. Zuvor war es das so Gap. Das ist die Differenz zwischen der von einem PowerStream angeforderten Leistungen zu dem , was der powerStream wirklich liefert. Das kann aber bei bestimmten Konfigurationen zu Fehlinterpretationen führen.
                                    In dem neuen Skript ist Real power die Quelle für die Bestimmung des Überschusses. Das könnte dein Problem lösen.

                                    R 1 Antwort Letzte Antwort
                                    0
                                    • W Waly_de

                                      @ralf77 dann Versuchs bitte noch mal mit der neuen Version. Ich habe wie gesagt die Bezugsgröße geändert. Zuvor war es das so Gap. Das ist die Differenz zwischen der von einem PowerStream angeforderten Leistungen zu dem , was der powerStream wirklich liefert. Das kann aber bei bestimmten Konfigurationen zu Fehlinterpretationen führen.
                                      In dem neuen Skript ist Real power die Quelle für die Bestimmung des Überschusses. Das könnte dein Problem lösen.

                                      R Offline
                                      R Offline
                                      Ralf77
                                      schrieb am zuletzt editiert von Ralf77
                                      #915

                                      @waly_de werde ich machen...

                                      Kurze Frage zu folgendem Abschnitt im Script:

                                      // 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

                                      Bedeutet das, dass ich das nur beim Verwenden eine Schaltersteckdose machen muss (darf)?...wenn ich die AC-Laderegelung ohne Schaltsteckdose machen möchte, soll ich das (darf ich das) dann nicht ausfüllen? Generell wäre es imho immer gut, wenn keine Schaltsteckdose eingesetzt wird. Bisher war das halt immer nötig....

                                      Update: Leider funktioniert automatische Überschussladung immer noch nicht ganz korrekt. Folgendes war mein Versuch mit V1.2.1:

                                      • Ohne Schaltsteckdose
                                      • Überschuss war vorhanden
                                      • AC Ladung hat begonnen und zu regeln (soweit war es ok)

                                      948023dc-0b33-4a6d-90bd-40b6bd67ad9b-image.png

                                      Dann:

                                      • Zuschalten einer großen Last im Haus wodurch Strom aus dem öffentlichen Netz bezogen wurde (851Watt), da zu wenig Überschuss vorhanden
                                      • ExcessPower ginng auf 0Watt
                                      • slowChgPower ging auf 0Watt
                                      • chgPause ist auf Status "0" gegangen
                                      • DeltaPro hat weiterhin 204W aus AC-Strom aus dem Netz genommen (Ladung wurde nich komplett angehalten!)

                                      2a6f14e5-fff6-41a1-9ba8-9133344786f5-image.png

                                      Update 2: Nachdem ich die große Last abgeschalten habe und ich wieder Überschuss vorhanden war, ist ChgPause auf Status "1" gegangen und der AC-Ladevorgang wurde jetzt komplett eingestellt - obwohl ja jetzt die Ladung entsprechend des Überschusses angepasst werden sollte - ein Starten der AC-Ladung erfolgte auch nach mehreren Minuten nicht obwohl Überschuss vorhanden war / ExcessPower wieder positiv war / SlowChgPower positv war...

                                      Als ich dann das AC-Ladekabel aus der Steckdose gezogen habe und neu eingesteckt habe ist die AC-Ladung wieder gestartet....
                                      Die regelung scheint jetzt zu klappen nur das Ausschalten/Einschalten durch "chgPause" klappt zumindest bei mir noch nicht automatisch.

                                      W 1 Antwort Letzte Antwort
                                      0
                                      • R Ralf77

                                        @waly_de werde ich machen...

                                        Kurze Frage zu folgendem Abschnitt im Script:

                                        // 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

                                        Bedeutet das, dass ich das nur beim Verwenden eine Schaltersteckdose machen muss (darf)?...wenn ich die AC-Laderegelung ohne Schaltsteckdose machen möchte, soll ich das (darf ich das) dann nicht ausfüllen? Generell wäre es imho immer gut, wenn keine Schaltsteckdose eingesetzt wird. Bisher war das halt immer nötig....

                                        Update: Leider funktioniert automatische Überschussladung immer noch nicht ganz korrekt. Folgendes war mein Versuch mit V1.2.1:

                                        • Ohne Schaltsteckdose
                                        • Überschuss war vorhanden
                                        • AC Ladung hat begonnen und zu regeln (soweit war es ok)

                                        948023dc-0b33-4a6d-90bd-40b6bd67ad9b-image.png

                                        Dann:

                                        • Zuschalten einer großen Last im Haus wodurch Strom aus dem öffentlichen Netz bezogen wurde (851Watt), da zu wenig Überschuss vorhanden
                                        • ExcessPower ginng auf 0Watt
                                        • slowChgPower ging auf 0Watt
                                        • chgPause ist auf Status "0" gegangen
                                        • DeltaPro hat weiterhin 204W aus AC-Strom aus dem Netz genommen (Ladung wurde nich komplett angehalten!)

                                        2a6f14e5-fff6-41a1-9ba8-9133344786f5-image.png

                                        Update 2: Nachdem ich die große Last abgeschalten habe und ich wieder Überschuss vorhanden war, ist ChgPause auf Status "1" gegangen und der AC-Ladevorgang wurde jetzt komplett eingestellt - obwohl ja jetzt die Ladung entsprechend des Überschusses angepasst werden sollte - ein Starten der AC-Ladung erfolgte auch nach mehreren Minuten nicht obwohl Überschuss vorhanden war / ExcessPower wieder positiv war / SlowChgPower positv war...

                                        Als ich dann das AC-Ladekabel aus der Steckdose gezogen habe und neu eingesteckt habe ist die AC-Ladung wieder gestartet....
                                        Die regelung scheint jetzt zu klappen nur das Ausschalten/Einschalten durch "chgPause" klappt zumindest bei mir noch nicht automatisch.

                                        W Offline
                                        W Offline
                                        Waly_de
                                        schrieb am zuletzt editiert von
                                        #916

                                        @ralf77 ja, ist missverständlich. Sorry. Wenn ein Solarpaneel angeschlossen ist, sollte der Wert Wert immer angegeben werden. Hast du also richtig gemacht!

                                        Der Rest sieht eigentlich gut aus. Bitte mach’s erst mal mit der Schalter Dose, denn der Einsatz der Charge Pause ist noch relativ unsicher. Auch muss Charge Pause auf eins gehen nicht auf null, wenn die Ladung pausiert werden soll. Das kannst du in der Konfiguration umdrehen. Solange die Schalterdose eingeschaltet ist beziehungsweise Charge Pause nicht auf eins steht zieht die Delta immer eine Grundleistung von 70-120 W. Egal, was man bei Slow Charge übergibt

                                        R 1 Antwort Letzte Antwort
                                        0
                                        • W Waly_de

                                          @ralf77 ja, ist missverständlich. Sorry. Wenn ein Solarpaneel angeschlossen ist, sollte der Wert Wert immer angegeben werden. Hast du also richtig gemacht!

                                          Der Rest sieht eigentlich gut aus. Bitte mach’s erst mal mit der Schalter Dose, denn der Einsatz der Charge Pause ist noch relativ unsicher. Auch muss Charge Pause auf eins gehen nicht auf null, wenn die Ladung pausiert werden soll. Das kannst du in der Konfiguration umdrehen. Solange die Schalterdose eingeschaltet ist beziehungsweise Charge Pause nicht auf eins steht zieht die Delta immer eine Grundleistung von 70-120 W. Egal, was man bei Slow Charge übergibt

                                          R Offline
                                          R Offline
                                          Ralf77
                                          schrieb am zuletzt editiert von Ralf77
                                          #917

                                          @waly_de Mit der Schaltsteckdose klappt es soweit ganz gut. Nur wird immer ca. 50-100 Watt zu viel AC-Strom geladen (also aus dem Netzt genommen).

                                          Würde es helfen, wenn ich für "ExcessChargeOffsetPower einen Wert von z.B. -100 setze?
                                          Wäre das ein Offset, welches den errechneten Wert reduzieren würde?

                                          Ich habe in meinem Script z.B. den berechneten Wert immer auf den vollen Wert abgerundet (in Hunderter-Schritten).

                                          Also wenn eine AC-Ladung von 489 Watt errechnet wurde, dann habe ich mit 400 Watt geladen.
                                          Mein Ziel war es sicherzustellen, dass auf keinen Fall der Speicher mit Netz-Stron geladen wird.

                                          Generell: Vielen Dank für Deine super Arbeit. Da benötigt sicherlich viel Zeit und ich hoffe, dass es sich auch ein wenig für Dich "auszahlt".

                                          W 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          203

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe