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

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. PV Überschuss Poolpumpe einschalten

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    495

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

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

PV Überschuss Poolpumpe einschalten

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
41 Beiträge 7 Kommentatoren 4.3k Aufrufe 2 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.
  • D DRUROB

    Hi!
    Was haltet ihr von diesem Schritt um das mit einem gleitenden Durchschnitt zu lösen?

    Gleitwert_PV = 0;
    Liste_PV = [];
    on({id: [].concat(['modbus.0.inputRegisters.13009_Export_power']), change: "ne"}, async function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      Liste_PV.push(getState("modbus.0.inputRegisters.13009_Export_power").val);
      if (Liste_PV.length >= 50) {
        Liste_PV.shift();
      }
      Gleitwert_PV = Math.round(mathMean(Liste_PV));
    
    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von
    #29

    @drurob sagte: mit einem gleitenden Durchschnitt zu lösen?

    Der gleitende Durchschnitt zeigt die Vergangenheit. Eigentlich möchte man wissen, was demnächst passiert.

    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

    D 1 Antwort Letzte Antwort
    0
    • paul53P paul53

      @drurob sagte: mit einem gleitenden Durchschnitt zu lösen?

      Der gleitende Durchschnitt zeigt die Vergangenheit. Eigentlich möchte man wissen, was demnächst passiert.

      D Offline
      D Offline
      DRUROB
      schrieb am zuletzt editiert von
      #30

      @paul53
      Da bin ich ganz bei dir. Der gleitende Durchschnitt basiert auf den letzten 25 oder 50 oder 100 Werten. da die alle paar Sekunden reinkommen sind die ziemlich aktuell.
      Wie möchtest du denn solch eine Zukunftssteuerung einbauen? Via Wettermodul? Das können wir hier gern mal "ausklabüstern" da mich sowas interessieren würde.
      Oder hattet ihr das schon mit drin und ich hab es überlesen?

      1 Antwort Letzte Antwort
      0
      • HomoranH Homoran

        @u66 sagte in PV Überschuss Poolpumpe einschalten:

        ist eigentlich die aktuelle Leistung der PV die vom Dach kommt.

        also doch nicht der Überschuss?
        Aber das steht doch so im Threadtitel.

        und @paul53 hatte extra nochmal nachgefragt und keine Antwort bekommen.

        @u66 sagte in PV Überschuss Poolpumpe einschalten:

        Dabei wird der Hausverbrauch mit ca 350 Watt abgedeckt

        das kannst du aber nicht fix annehmen.
        Läuft der Staubsauger, der Föhn oder die Kaffeemaschine kommen Ruckzuck nochmal 1500-2000W dazu.
        Dann fliegt dir die gesamte Steuerung um die Ohren.

        U66U Offline
        U66U Offline
        U66
        schrieb am zuletzt editiert von U66
        #31

        @homoran
        hallo noch mal zum Überschuss
        habe ein zusätzliches Script für meine Klimaanlage
        Diese soll starten, wenn die PV Leistung bei 3500 Watt liegt.
        Leider pipt die Klima Anlage aller paar Sekunden ,wird die durch das Script immer abgefragt ?
        oder was muss ich da ändern ?
        Bin dankbar für jede Hilfe :+1:

        mfg

        code_text
        
        
        const vPower         = '0_userdata.0.Alpha-ESS.PV_Total_Power';
        
        const Klima       = 'tuya.0.74500708e09806147e72.1';
        
        
        const vSpielraum     = 250; //Watt
        
         
        
        var bSperre = false;
        
         
        
        on(vPower, function(dp) {
        
            if (bSperre == false) {
        
                bSperre = true;
        
                var vValue = dp.state.val;
        
                if (vValue >= (3500+vSpielraum)) {
        
                    setState(Klima, true);
        
                    bSperre = false;
        
                } else {
        
                    //nicht sofort schalten, 30 Sekunden warten und erneut prüfen
        
                    setTimeout(function(){
        
                    if (vValue < (3500+vSpielraum)) {
        
                            setState(Klima, false);
        
                            bSperre = false;
        
                    } else {
        
                        bSperre = false;
        
                    }
        
                    },30000);
        
                }
        
            }
        
        });
        
        paul53P 1 Antwort Letzte Antwort
        0
        • U66U U66

          @homoran
          hallo noch mal zum Überschuss
          habe ein zusätzliches Script für meine Klimaanlage
          Diese soll starten, wenn die PV Leistung bei 3500 Watt liegt.
          Leider pipt die Klima Anlage aller paar Sekunden ,wird die durch das Script immer abgefragt ?
          oder was muss ich da ändern ?
          Bin dankbar für jede Hilfe :+1:

          mfg

          code_text
          
          
          const vPower         = '0_userdata.0.Alpha-ESS.PV_Total_Power';
          
          const Klima       = 'tuya.0.74500708e09806147e72.1';
          
          
          const vSpielraum     = 250; //Watt
          
           
          
          var bSperre = false;
          
           
          
          on(vPower, function(dp) {
          
              if (bSperre == false) {
          
                  bSperre = true;
          
                  var vValue = dp.state.val;
          
                  if (vValue >= (3500+vSpielraum)) {
          
                      setState(Klima, true);
          
                      bSperre = false;
          
                  } else {
          
                      //nicht sofort schalten, 30 Sekunden warten und erneut prüfen
          
                      setTimeout(function(){
          
                      if (vValue < (3500+vSpielraum)) {
          
                              setState(Klima, false);
          
                              bSperre = false;
          
                      } else {
          
                          bSperre = false;
          
                      }
          
                      },30000);
          
                  }
          
              }
          
          });
          
          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von paul53
          #32

          @u66 sagte: starten, wenn die PV Leistung bei 3500 Watt liegt.

          Versuche es mal so:

          const idPower     = '0_userdata.0.Alpha-ESS.PV_Total_Power';
          const idKlima     = 'tuya.0.74500708e09806147e72.1';
          const vSpielraum  = 1000; //Watt
           
          var bSperre = null;
          var klima = getState(idKlima).val;
           
          on(idPower, function(dp) {
              if (!bSperre) {
                  let vValue = dp.state.val;
                  if (vValue >= 3500) klima = true;
                  else if (vValue < 3500 - vSpielraum) klima = false;
                  if(klima != getState(idKlima).val) {
                      setState(idKlima, klima);
                      //5 Minuten warten und erneut prüfen
                      bSperre = setTimeout(function() {
                          bSperre = null;
                      }, 300000);
                  }
              }
          });
          

          EDIT: Sperre geändert.

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          U66U 1 Antwort Letzte Antwort
          0
          • paul53P paul53

            @u66 sagte: starten, wenn die PV Leistung bei 3500 Watt liegt.

            Versuche es mal so:

            const idPower     = '0_userdata.0.Alpha-ESS.PV_Total_Power';
            const idKlima     = 'tuya.0.74500708e09806147e72.1';
            const vSpielraum  = 1000; //Watt
             
            var bSperre = null;
            var klima = getState(idKlima).val;
             
            on(idPower, function(dp) {
                if (!bSperre) {
                    let vValue = dp.state.val;
                    if (vValue >= 3500) klima = true;
                    else if (vValue < 3500 - vSpielraum) klima = false;
                    if(klima != getState(idKlima).val) {
                        setState(idKlima, klima);
                        //5 Minuten warten und erneut prüfen
                        bSperre = setTimeout(function() {
                            bSperre = null;
                        }, 300000);
                    }
                }
            });
            

            EDIT: Sperre geändert.

            U66U Offline
            U66U Offline
            U66
            schrieb am zuletzt editiert von
            #33

            @paul53
            Prima
            hat auf Anhieb geklappt

            paul53P 1 Antwort Letzte Antwort
            0
            • U66U U66

              @paul53
              Prima
              hat auf Anhieb geklappt

              paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von paul53
              #34

              @u66 sagte: hat auf Anhieb geklappt

              Habe es oben geändert, so dass die 5-Minuten-Sperre nur nach dem Schalten wirksam wird.

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

              U66U D 2 Antworten Letzte Antwort
              1
              • paul53P paul53

                @u66 sagte: hat auf Anhieb geklappt

                Habe es oben geändert, so dass die 5-Minuten-Sperre nur nach dem Schalten wirksam wird.

                U66U Offline
                U66U Offline
                U66
                schrieb am zuletzt editiert von U66
                #35

                @paul53
                Script mit Habpanel ein/aus
                Jetzt hab auch hier im Forum gesucht aber nichts passendes gefunden.
                Ist es denn möglich ein Script mit einem Button im Habpanel ein und auszuschalten ?
                Kann mal sein das im Winter die Pumpe auch mal ohne PV Power laufen muss.könnte das zwar im Iobroker am PC ausschalten würde es aber gern am Iphone erledigen.

                Danke im Voraus :man-raising-hand:

                paul53P 1 Antwort Letzte Antwort
                0
                • U66U U66

                  @paul53
                  Script mit Habpanel ein/aus
                  Jetzt hab auch hier im Forum gesucht aber nichts passendes gefunden.
                  Ist es denn möglich ein Script mit einem Button im Habpanel ein und auszuschalten ?
                  Kann mal sein das im Winter die Pumpe auch mal ohne PV Power laufen muss.könnte das zwar im Iobroker am PC ausschalten würde es aber gern am Iphone erledigen.

                  Danke im Voraus :man-raising-hand:

                  paul53P Offline
                  paul53P Offline
                  paul53
                  schrieb am zuletzt editiert von paul53
                  #36

                  @u66 sagte: Script mit Habpanel ein/aus

                  Man schaltet keine Skripte ein/aus. Lässt sich die Poolpumpe per Habpanel ein- und ausschalten? Dann kann man das "manuelle" Einschalten detektieren und so eine weitere Sperre ergänzen.

                  const idPower     = '0_userdata.0.Alpha-ESS.PV_Total_Power';
                  const idKlima     = 'tuya.0.74500708e09806147e72.1';
                  const vSpielraum  = 1000; //Watt
                   
                  var bSperre = null;
                  var klima = getState(idKlima).val;
                  var manuellEin = false;
                   
                  on(idPower, function(dp) {
                      if (!bSperre && !manuellEin) {
                          let vValue = dp.state.val;
                          if (vValue >= 3500) klima = true;
                          else if (vValue < 3500 - vSpielraum) klima = false;
                          if(klima != getState(idKlima).val) {
                              setState(idKlima, klima);
                              //5 Minuten warten und erneut prüfen
                              bSperre = setTimeout(function() {
                                  bSperre = null;
                              }, 300000);
                          }
                      }
                  });
                  
                  on(idKlima, function(dp) {
                      manuellEin = dp.state.val && dp.state.from != 'system.adapter.javascript.' + instance;
                  });
                  

                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                  T U66U 2 Antworten Letzte Antwort
                  0
                  • paul53P paul53

                    @u66 sagte: Script mit Habpanel ein/aus

                    Man schaltet keine Skripte ein/aus. Lässt sich die Poolpumpe per Habpanel ein- und ausschalten? Dann kann man das "manuelle" Einschalten detektieren und so eine weitere Sperre ergänzen.

                    const idPower     = '0_userdata.0.Alpha-ESS.PV_Total_Power';
                    const idKlima     = 'tuya.0.74500708e09806147e72.1';
                    const vSpielraum  = 1000; //Watt
                     
                    var bSperre = null;
                    var klima = getState(idKlima).val;
                    var manuellEin = false;
                     
                    on(idPower, function(dp) {
                        if (!bSperre && !manuellEin) {
                            let vValue = dp.state.val;
                            if (vValue >= 3500) klima = true;
                            else if (vValue < 3500 - vSpielraum) klima = false;
                            if(klima != getState(idKlima).val) {
                                setState(idKlima, klima);
                                //5 Minuten warten und erneut prüfen
                                bSperre = setTimeout(function() {
                                    bSperre = null;
                                }, 300000);
                            }
                        }
                    });
                    
                    on(idKlima, function(dp) {
                        manuellEin = dp.state.val && dp.state.from != 'system.adapter.javascript.' + instance;
                    });
                    
                    T Nicht stören
                    T Nicht stören
                    ticaki
                    schrieb am zuletzt editiert von
                    #37

                    @paul53 sagte in PV Überschuss Poolpumpe einschalten:

                    Danke, change:'ne' ist default, wusste ich nicht.

                    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                    Spenden

                    1 Antwort Letzte Antwort
                    0
                    • paul53P paul53

                      @u66 sagte: Script mit Habpanel ein/aus

                      Man schaltet keine Skripte ein/aus. Lässt sich die Poolpumpe per Habpanel ein- und ausschalten? Dann kann man das "manuelle" Einschalten detektieren und so eine weitere Sperre ergänzen.

                      const idPower     = '0_userdata.0.Alpha-ESS.PV_Total_Power';
                      const idKlima     = 'tuya.0.74500708e09806147e72.1';
                      const vSpielraum  = 1000; //Watt
                       
                      var bSperre = null;
                      var klima = getState(idKlima).val;
                      var manuellEin = false;
                       
                      on(idPower, function(dp) {
                          if (!bSperre && !manuellEin) {
                              let vValue = dp.state.val;
                              if (vValue >= 3500) klima = true;
                              else if (vValue < 3500 - vSpielraum) klima = false;
                              if(klima != getState(idKlima).val) {
                                  setState(idKlima, klima);
                                  //5 Minuten warten und erneut prüfen
                                  bSperre = setTimeout(function() {
                                      bSperre = null;
                                  }, 300000);
                              }
                          }
                      });
                      
                      on(idKlima, function(dp) {
                          manuellEin = dp.state.val && dp.state.from != 'system.adapter.javascript.' + instance;
                      });
                      
                      U66U Offline
                      U66U Offline
                      U66
                      schrieb am zuletzt editiert von U66
                      #38

                      @paul53 said in PV Überschuss Poolpumpe einschalten:

                      Man schaltet keine Skripte ein/aus. Lässt sich die Poolpumpe per Habpanel ein- und ausschalten? Dann kann man das "manuelle" Einschalten detektieren und so eine weitere Sperre ergänzen.

                      Vielen Dank
                      Ja lässt sich ein/aus schalten
                      das wird ausprobiert.......
                      EDIT

                      funktioniert, hab die anderen Scripte auch umgeschrieben.

                      1 Antwort Letzte Antwort
                      0
                      • paul53P paul53

                        @u66 sagte: hat auf Anhieb geklappt

                        Habe es oben geändert, so dass die 5-Minuten-Sperre nur nach dem Schalten wirksam wird.

                        D Offline
                        D Offline
                        DRUROB
                        schrieb am zuletzt editiert von
                        #39

                        @paul53 Hi! Ich muss das nochmal ausgraben. Kannst du mir bitte kurz geben wie du das schalten erst nach einer Sperrzeit wieder freigibst?
                        Ich bekomme es einfach nicht hin .... Ziel (zumindest mein Ansatz): das letzte Schaltdatum mit dem jetzigen zu vergleichen und wenn weniger als 5 oder 20min oder was auch immer der Zielwert ist die Funktion weiterlaufen zu lassen.
                        Falscher Ansatz oder schon richtiger Gedanke?

                        Vielen Dank!

                        paul53P 1 Antwort Letzte Antwort
                        0
                        • D DRUROB

                          @paul53 Hi! Ich muss das nochmal ausgraben. Kannst du mir bitte kurz geben wie du das schalten erst nach einer Sperrzeit wieder freigibst?
                          Ich bekomme es einfach nicht hin .... Ziel (zumindest mein Ansatz): das letzte Schaltdatum mit dem jetzigen zu vergleichen und wenn weniger als 5 oder 20min oder was auch immer der Zielwert ist die Funktion weiterlaufen zu lassen.
                          Falscher Ansatz oder schon richtiger Gedanke?

                          Vielen Dank!

                          paul53P Offline
                          paul53P Offline
                          paul53
                          schrieb am zuletzt editiert von
                          #40

                          @drurob sagte: wie du das schalten erst nach einer Sperrzeit wieder freigibst?

                          Die Sperrvariable (Timervariable) wird nach Ablauf der Sperrdauer auf null gesetzt.

                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                          D 1 Antwort Letzte Antwort
                          0
                          • paul53P paul53

                            @drurob sagte: wie du das schalten erst nach einer Sperrzeit wieder freigibst?

                            Die Sperrvariable (Timervariable) wird nach Ablauf der Sperrdauer auf null gesetzt.

                            D Offline
                            D Offline
                            DRUROB
                            schrieb am zuletzt editiert von
                            #41

                            @paul53
                            oh man.... jetzt hab ich geschnallt wo der timeout wert herkommt... 5min = 300000ms?!

                            dann steht ja schon alles da. Danke dir für die Erleuchtung! :angel:

                            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

                            509

                            Online

                            32.5k

                            Benutzer

                            81.8k

                            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