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. Blockly
  5. Brauche Hilfe bei PV Laden Skript

NEWS

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

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

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

Brauche Hilfe bei PV Laden Skript

Geplant Angeheftet Gesperrt Verschoben Blockly
75 Beiträge 8 Kommentatoren 10.9k Aufrufe 7 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.
  • JB_SullivanJ JB_Sullivan

    @paul53

    Darf ich dich nochmal belästigen? Du scheinst ein gutes Auge und natürlich auch das entsprechende Hintergrundwissen für Scripte allgemein zu haben. Bei mir ist das immer so mehr oder weniger try and error ;) Könntest du nochmal einen Blick auf das "Konstrukt" werfen?

    Hier das Blockly als js Ansicht.

    Funktion soll wie folgt laufen:

    3 unterschiedliche Verbraucher verfügen über unterschiedliche Leistungsangaben und werden entsprechend des zur Verfügung stehendem PV Überschuss an bzw. aus geschaltet. Das ganze soll aber nur dann passieren, wenn der Speicher seinen Füllgrad erreicht hat und nicht unter ein bestimmtes Nivau gefallen ist.

    Dieses untere Speicher Nivau soll gleichzeitig als Wolkenpuffer fungieren.

    Kann das so funktionieren. Aktuell regnet es hier und ich kann nicht so wirklich gut live testen.

    var Speicher, Verbraucher_1, Verbraucher_2, Verbraucher_3, onDelay, onDelay, offDelay, offDelay;
    
    // Beschreibe diese Funktion …
    async function Verbraucher_1_F() {
      setState("javascript.0.PV_Eigenverbrauch.Verbraucher_1"/*PV_Eigenverbrauch.Verbraucher_1*/, ('e-Bike Ladestation ist ' + String(Verbraucher_1 == true ? 'AN' : 'AUS')), true);
      setState("sonoff.0.DEKO_3.POWER1"/*DEKO_3  POWER1*/, Verbraucher_1);
    }
    
    // Beschreibe diese Funktion …
    async function Verbraucher_2_F() {
      setState("javascript.0.PV_Eigenverbrauch.Verbraucher_1"/*PV_Eigenverbrauch.Verbraucher_1*/, ('Raumentfeuchter ist ' + String(Verbraucher_2 == true ? 'AN' : 'AUS')), true);
      setState("sonoff.0.DEKO_4.POWER1"/*DEKO_4 POWER1*/, Verbraucher_2);
    }
    
    // Beschreibe diese Funktion …
    async function Verbraucher_3_F() {
      setState("javascript.0.PV_Eigenverbrauch.Verbraucher_1"/*PV_Eigenverbrauch.Verbraucher_1*/, ('Freigabe Poolpumpe' + String(Verbraucher_3 == true ? 'EIN' : 'AUS')), true);
      setState("sonoff.0.DEKO_5.POWER1"/*DEKO_5  POWER1*/, Verbraucher_3);
    }
    
    // Beschreibe diese Funktion …
    async function PV_Ueberschuss() {
      setState("javascript.0.PV_Eigenverbrauch.PV_Ueberschuss_Freigabe "/*PV_Eigenverbrauch.PV_Ueberschuss_Freigabe */, ('PV Überschuss Freigabe ' + String(Speicher == true ? 'OK' : 'Gesperrt')), true);
    }
    
    
    Speicher = false;
    // Freigabe über Speicher SoC
    on({id: 'fronius.0.powerflow.inverter1.SOC', change: "any"}, async function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      if ((obj.state ? obj.state.val : "") >= 99.2) {
        (function () {if (offDelay) {clearTimeout(offDelay); offDelay = null;}})();
        if (!onDelay) {
          onDelay = setTimeout(async function () {
            Verbraucher_1 = true;
            Speicher = true;
          }, 180000);
        }
      }
      if ((obj.state ? obj.state.val : "") <= 97) {
        (function () {if (onDelay) {clearTimeout(onDelay); onDelay = null;}})();
        if (!offDelay) {
          offDelay = setTimeout(async function () {
            Speicher = false;
            Verbraucher_1 = false;
          }, 180000);
        }
      }
      await Verbraucher_1_F();
      await PV_Ueberschuss();
    });
    
    Verbraucher_1 = false;
    Verbraucher_2 = false;
    Verbraucher_3 = false;
    Verbraucher_1 = 300;
    Verbraucher_2 = 200;
    Verbraucher_3 = 100;
    // Verbraucher priorisiert nach Netzeiinspeisung starten
    on({id: 'discovergy.0.60868258.Power_Delivery', change: "ne"}, async function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      if (getState("discovergy.0.60868258.Power_Delivery").val >= 0) {
        if (Verbraucher_1 == false && getState("discovergy.0.60868258.Power_Delivery").val > Verbraucher_1 && Speicher == true) {
          Verbraucher_1 = true;
          await Verbraucher_1_F();
        }
        if (Verbraucher_1 == true && Verbraucher_2 == false && getState("discovergy.0.60868258.Power_Delivery").val > Verbraucher_1 + Verbraucher_2 && Speicher == true) {
          Verbraucher_2 = true;
          await Verbraucher_2_F();
        }
        if (Verbraucher_1 == true && Verbraucher_3 == false && getState("discovergy.0.60868258.Power_Delivery").val > Verbraucher_1 + Verbraucher_2 + Verbraucher_3 && Speicher == true) {
          Verbraucher_3 = true;
          await Verbraucher_3_F();
        }
      }
    });
    // Verbraucher priorisiert nach Netzeinspeisung stoppen
    on({id: 'discovergy.0.60868258.Power_Consumption', change: "ne"}, async function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      if (getState("discovergy.0.60868258.Power_Consumption").val > 0) {
        if (Verbraucher_1 == true && getState("discovergy.0.60868258.Power_Consumption").val < Verbraucher_1) {
          Verbraucher_1 = false;
          await Verbraucher_1_F();
        } else if (Verbraucher_1 == true && Verbraucher_2 == true && getState("discovergy.0.60868258.Power_Consumption").val < Verbraucher_1 + Verbraucher_2) {
          Verbraucher_2 = false;
          await Verbraucher_2_F();
        } else if (Verbraucher_1 == true && Verbraucher_2 == true && Verbraucher_3 == true && getState("discovergy.0.60868258.Power_Consumption").val < Verbraucher_1 + Verbraucher_2 + Verbraucher_3) {
          Verbraucher_3 = false;
          await Verbraucher_3_F();
        }
      }
    });
    
    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von
    #50

    @jb_sullivan sagte: Kann das so funktionieren.

    Als erstes fällt mir auf, dass onDelay und offDelay zweimal vorhanden sind (1. Zeile), was nicht funktioniert. Wähle bei "falls nicht onDelay"/"falls nicht offDelay" die jeweils andere Variable aus und überzeuge Dich in der Javascript-Ansicht davon, dass die Variablen nur noch einmal aufgeführt werden.

    Den Rest habe ich mir noch nicht angesehen.

    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

    JB_SullivanJ 1 Antwort Letzte Antwort
    0
    • paul53P paul53

      @jb_sullivan sagte: Kann das so funktionieren.

      Als erstes fällt mir auf, dass onDelay und offDelay zweimal vorhanden sind (1. Zeile), was nicht funktioniert. Wähle bei "falls nicht onDelay"/"falls nicht offDelay" die jeweils andere Variable aus und überzeuge Dich in der Javascript-Ansicht davon, dass die Variablen nur noch einmal aufgeführt werden.

      Den Rest habe ich mir noch nicht angesehen.

      JB_SullivanJ Offline
      JB_SullivanJ Offline
      JB_Sullivan
      schrieb am zuletzt editiert von
      #51

      @paul53

      OK, da ich das ganze mit Timeout sowieso nie wirklich verstanden habe, habe ich das nun aus der Freigabe für den Speicher raus geworfen. Die beiden Werte <> sollten ja eigentlich bei der Trägheit des System ausreichend sein, damit es nicht prellt.

      Hier nochmal die korrigierte Version

      var Speicher, Verbraucher_1, Verbraucher_2, Verbraucher_3;
      
      // Beschreibe diese Funktion …
      async function Verbraucher_1_F() {
        setState("javascript.0.PV_Eigenverbrauch.Verbraucher_1"/*PV_Eigenverbrauch.Verbraucher_1*/, ('e-Bike Ladestation ist ' + String(Verbraucher_1 == true ? 'AN' : 'AUS')), true);
        setState("sonoff.0.DEKO_3.POWER1"/*DEKO_3  POWER1*/, Verbraucher_1);
      }
      
      // Beschreibe diese Funktion …
      async function Verbraucher_2_F() {
        setState("javascript.0.PV_Eigenverbrauch.Verbraucher_1"/*PV_Eigenverbrauch.Verbraucher_1*/, ('Raumentfeuchter ist ' + String(Verbraucher_2 == true ? 'AN' : 'AUS')), true);
        setState("sonoff.0.DEKO_4.POWER1"/*DEKO_4 POWER1*/, Verbraucher_2);
      }
      
      // Beschreibe diese Funktion …
      async function Verbraucher_3_F() {
        setState("javascript.0.PV_Eigenverbrauch.Verbraucher_1"/*PV_Eigenverbrauch.Verbraucher_1*/, ('Freigabe Poolpumpe' + String(Verbraucher_3 == true ? 'EIN' : 'AUS')), true);
        setState("sonoff.0.DEKO_5.POWER1"/*DEKO_5  POWER1*/, Verbraucher_3);
      }
      
      // Beschreibe diese Funktion …
      async function PV_Ueberschuss() {
        setState("javascript.0.PV_Eigenverbrauch.PV_Ueberschuss_Freigabe "/*PV_Eigenverbrauch.PV_Ueberschuss_Freigabe */, ('PV Überschuss Freigabe ' + String(Speicher == true ? 'OK' : 'Gesperrt')), true);
      }
      
      
      Speicher = false;
      // Freigabe über Speicher SoC
      on({id: 'fronius.0.powerflow.inverter1.SOC', change: "any"}, async function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        if ((obj.state ? obj.state.val : "") >= 99.2) {
          Speicher = true;
        }
        if ((obj.state ? obj.state.val : "") <= 97) {
          Speicher = false;
        }
        await PV_Ueberschuss();
      });
      
      Verbraucher_1 = false;
      Verbraucher_2 = false;
      Verbraucher_3 = false;
      Verbraucher_1 = 300;
      Verbraucher_2 = 200;
      Verbraucher_3 = 100;
      // Verbraucher priorisiert nach Netzeinspeisung starten
      on({id: 'discovergy.0.60868258.Power_Delivery', change: "ne"}, async function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        if (getState("discovergy.0.60868258.Power_Delivery").val >= 0) {
          if (Verbraucher_1 == false && getState("discovergy.0.60868258.Power_Delivery").val > Verbraucher_1 && Speicher == true) {
            Verbraucher_1 = true;
            await Verbraucher_1_F();
          }
          if (Verbraucher_1 == true && Verbraucher_2 == false && getState("discovergy.0.60868258.Power_Delivery").val > Verbraucher_1 + Verbraucher_2 && Speicher == true) {
            Verbraucher_2 = true;
            await Verbraucher_2_F();
          }
          if (Verbraucher_1 == true && Verbraucher_3 == false && getState("discovergy.0.60868258.Power_Delivery").val > Verbraucher_1 + Verbraucher_2 + Verbraucher_3 && Speicher == true) {
            Verbraucher_3 = true;
            await Verbraucher_3_F();
          }
        }
      });
      // Verbraucher priorisiert nach Netzeinspeisung stoppen
      on({id: 'discovergy.0.60868258.Power_Consumption', change: "ne"}, async function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        if (getState("discovergy.0.60868258.Power_Consumption").val > 0) {
          if (Verbraucher_1 == true && getState("discovergy.0.60868258.Power_Consumption").val < Verbraucher_1) {
            Verbraucher_1 = false;
            await Verbraucher_1_F();
          } else if (Verbraucher_1 == true && Verbraucher_2 == true && getState("discovergy.0.60868258.Power_Consumption").val < Verbraucher_1 + Verbraucher_2) {
            Verbraucher_2 = false;
            await Verbraucher_2_F();
          } else if (Verbraucher_1 == true && Verbraucher_2 == true && Verbraucher_3 == true && getState("discovergy.0.60868258.Power_Consumption").val < Verbraucher_1 + Verbraucher_2 + Verbraucher_3) {
            Verbraucher_3 = false;
            await Verbraucher_3_F();
          }
        }
      });
      

      ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

      paul53P 1 Antwort Letzte Antwort
      0
      • JB_SullivanJ JB_Sullivan

        @paul53

        OK, da ich das ganze mit Timeout sowieso nie wirklich verstanden habe, habe ich das nun aus der Freigabe für den Speicher raus geworfen. Die beiden Werte <> sollten ja eigentlich bei der Trägheit des System ausreichend sein, damit es nicht prellt.

        Hier nochmal die korrigierte Version

        var Speicher, Verbraucher_1, Verbraucher_2, Verbraucher_3;
        
        // Beschreibe diese Funktion …
        async function Verbraucher_1_F() {
          setState("javascript.0.PV_Eigenverbrauch.Verbraucher_1"/*PV_Eigenverbrauch.Verbraucher_1*/, ('e-Bike Ladestation ist ' + String(Verbraucher_1 == true ? 'AN' : 'AUS')), true);
          setState("sonoff.0.DEKO_3.POWER1"/*DEKO_3  POWER1*/, Verbraucher_1);
        }
        
        // Beschreibe diese Funktion …
        async function Verbraucher_2_F() {
          setState("javascript.0.PV_Eigenverbrauch.Verbraucher_1"/*PV_Eigenverbrauch.Verbraucher_1*/, ('Raumentfeuchter ist ' + String(Verbraucher_2 == true ? 'AN' : 'AUS')), true);
          setState("sonoff.0.DEKO_4.POWER1"/*DEKO_4 POWER1*/, Verbraucher_2);
        }
        
        // Beschreibe diese Funktion …
        async function Verbraucher_3_F() {
          setState("javascript.0.PV_Eigenverbrauch.Verbraucher_1"/*PV_Eigenverbrauch.Verbraucher_1*/, ('Freigabe Poolpumpe' + String(Verbraucher_3 == true ? 'EIN' : 'AUS')), true);
          setState("sonoff.0.DEKO_5.POWER1"/*DEKO_5  POWER1*/, Verbraucher_3);
        }
        
        // Beschreibe diese Funktion …
        async function PV_Ueberschuss() {
          setState("javascript.0.PV_Eigenverbrauch.PV_Ueberschuss_Freigabe "/*PV_Eigenverbrauch.PV_Ueberschuss_Freigabe */, ('PV Überschuss Freigabe ' + String(Speicher == true ? 'OK' : 'Gesperrt')), true);
        }
        
        
        Speicher = false;
        // Freigabe über Speicher SoC
        on({id: 'fronius.0.powerflow.inverter1.SOC', change: "any"}, async function (obj) {
          var value = obj.state.val;
          var oldValue = obj.oldState.val;
          if ((obj.state ? obj.state.val : "") >= 99.2) {
            Speicher = true;
          }
          if ((obj.state ? obj.state.val : "") <= 97) {
            Speicher = false;
          }
          await PV_Ueberschuss();
        });
        
        Verbraucher_1 = false;
        Verbraucher_2 = false;
        Verbraucher_3 = false;
        Verbraucher_1 = 300;
        Verbraucher_2 = 200;
        Verbraucher_3 = 100;
        // Verbraucher priorisiert nach Netzeinspeisung starten
        on({id: 'discovergy.0.60868258.Power_Delivery', change: "ne"}, async function (obj) {
          var value = obj.state.val;
          var oldValue = obj.oldState.val;
          if (getState("discovergy.0.60868258.Power_Delivery").val >= 0) {
            if (Verbraucher_1 == false && getState("discovergy.0.60868258.Power_Delivery").val > Verbraucher_1 && Speicher == true) {
              Verbraucher_1 = true;
              await Verbraucher_1_F();
            }
            if (Verbraucher_1 == true && Verbraucher_2 == false && getState("discovergy.0.60868258.Power_Delivery").val > Verbraucher_1 + Verbraucher_2 && Speicher == true) {
              Verbraucher_2 = true;
              await Verbraucher_2_F();
            }
            if (Verbraucher_1 == true && Verbraucher_3 == false && getState("discovergy.0.60868258.Power_Delivery").val > Verbraucher_1 + Verbraucher_2 + Verbraucher_3 && Speicher == true) {
              Verbraucher_3 = true;
              await Verbraucher_3_F();
            }
          }
        });
        // Verbraucher priorisiert nach Netzeinspeisung stoppen
        on({id: 'discovergy.0.60868258.Power_Consumption', change: "ne"}, async function (obj) {
          var value = obj.state.val;
          var oldValue = obj.oldState.val;
          if (getState("discovergy.0.60868258.Power_Consumption").val > 0) {
            if (Verbraucher_1 == true && getState("discovergy.0.60868258.Power_Consumption").val < Verbraucher_1) {
              Verbraucher_1 = false;
              await Verbraucher_1_F();
            } else if (Verbraucher_1 == true && Verbraucher_2 == true && getState("discovergy.0.60868258.Power_Consumption").val < Verbraucher_1 + Verbraucher_2) {
              Verbraucher_2 = false;
              await Verbraucher_2_F();
            } else if (Verbraucher_1 == true && Verbraucher_2 == true && Verbraucher_3 == true && getState("discovergy.0.60868258.Power_Consumption").val < Verbraucher_1 + Verbraucher_2 + Verbraucher_3) {
              Verbraucher_3 = false;
              await Verbraucher_3_F();
            }
          }
        });
        
        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von paul53
        #52

        @jb_sullivan
        Du verwendest die Variablen Verbraucher_1, Verbraucher_2, Verbraucher_3 mal als Boolean und mal als Zahl. Das kann nicht funktionieren.

        EDIT: Was für einen Wert enthält der Datenpunkt "Power_Delivery"?

        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

        JB_SullivanJ 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @jb_sullivan
          Du verwendest die Variablen Verbraucher_1, Verbraucher_2, Verbraucher_3 mal als Boolean und mal als Zahl. Das kann nicht funktionieren.

          EDIT: Was für einen Wert enthält der Datenpunkt "Power_Delivery"?

          JB_SullivanJ Offline
          JB_SullivanJ Offline
          JB_Sullivan
          schrieb am zuletzt editiert von
          #53

          @paul53 einen positiven Zahlenwert (Einspeisung) genau wie Power_Consumption (Netzbezug)

          Das blöde ist, das der Wechselrichter immer versucht auf Einspeisung 0 zu regeln. Das ergiebt einen wilden Wechsel zwischen Bezug und Einspeisung, wenn nicht mit "tausenden" von Watt eingespeist wird. Das muss man irgendwie entprellen

          2b2664f8-5ad1-4bbc-bd9b-98c7441a417c-image.png

          123dd57b-af6f-497d-bf06-3af37232796b-image.png

          ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

          JB_SullivanJ 1 Antwort Letzte Antwort
          0
          • JB_SullivanJ JB_Sullivan

            @paul53 einen positiven Zahlenwert (Einspeisung) genau wie Power_Consumption (Netzbezug)

            Das blöde ist, das der Wechselrichter immer versucht auf Einspeisung 0 zu regeln. Das ergiebt einen wilden Wechsel zwischen Bezug und Einspeisung, wenn nicht mit "tausenden" von Watt eingespeist wird. Das muss man irgendwie entprellen

            2b2664f8-5ad1-4bbc-bd9b-98c7441a417c-image.png

            123dd57b-af6f-497d-bf06-3af37232796b-image.png

            JB_SullivanJ Offline
            JB_SullivanJ Offline
            JB_Sullivan
            schrieb am zuletzt editiert von JB_Sullivan
            #54

            sieht das jetzt besser aus mit den Variablen bzgl. Unterscheidung Zahl / Boolean?

            a6131e51-52b3-45e9-9c93-175cbe06e22d-image.png

            ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

            paul53P 2 Antworten Letzte Antwort
            0
            • JB_SullivanJ JB_Sullivan

              sieht das jetzt besser aus mit den Variablen bzgl. Unterscheidung Zahl / Boolean?

              a6131e51-52b3-45e9-9c93-175cbe06e22d-image.png

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

              @jb_sullivan sagte: sieht das jetzt besser aus mit den Variablen bzgl. Unterscheidung Zahl / Boolean?

              Nicht wirklich. Vorschlag:

              Bild_2021-03-27_150359.png

              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

              JB_SullivanJ 1 Antwort Letzte Antwort
              0
              • paul53P paul53

                @jb_sullivan sagte: sieht das jetzt besser aus mit den Variablen bzgl. Unterscheidung Zahl / Boolean?

                Nicht wirklich. Vorschlag:

                Bild_2021-03-27_150359.png

                JB_SullivanJ Offline
                JB_SullivanJ Offline
                JB_Sullivan
                schrieb am zuletzt editiert von
                #56

                @paul53

                Sieht soweit ganz gut aus. Wann geschaltet wird, bestimmt im Moment im Grunde die Instanz von discovergy, da die Werte nur alle 180 Sekunden abgeholt werden.

                D.h. wenn zu dem Zeitpunkt der Datenpunkt Aktualisierung der "falsche" Wert im DP drin steht, kommt es zu einer Verzögerung für die Zu- bzw. Abschaltung. Oder ist das über die Discovergy Adapter Einstellung vielleicht sogar besser um ein permanentes EIN/AUS schalten zu unterbinden?

                768a61fb-25e5-41bc-a8e4-43df04a6c934-image.png

                55a95baf-1662-4be1-9efa-cb2c01a09c78-image.png

                ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

                1 Antwort Letzte Antwort
                0
                • JB_SullivanJ JB_Sullivan

                  sieht das jetzt besser aus mit den Variablen bzgl. Unterscheidung Zahl / Boolean?

                  a6131e51-52b3-45e9-9c93-175cbe06e22d-image.png

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

                  @jb_sullivan
                  Beispiel Verbraucher schalten für verbraucher1:

                  Bild_2021-03-27_153448.png

                  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

                  JB_SullivanJ 1 Antwort Letzte Antwort
                  0
                  • paul53P paul53

                    @jb_sullivan
                    Beispiel Verbraucher schalten für verbraucher1:

                    Bild_2021-03-27_153448.png

                    JB_SullivanJ Offline
                    JB_SullivanJ Offline
                    JB_Sullivan
                    schrieb am zuletzt editiert von JB_Sullivan
                    #58

                    @paul53

                    Das hatte ich ja schon so ähnlich

                    0e53ad1d-e313-47eb-ab19-5a53f232f7e1-image.png

                    Was bdeutet "ungleich" eigentlich?

                    ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

                    paul53P 1 Antwort Letzte Antwort
                    0
                    • JB_SullivanJ JB_Sullivan

                      @paul53

                      Das hatte ich ja schon so ähnlich

                      0e53ad1d-e313-47eb-ab19-5a53f232f7e1-image.png

                      Was bdeutet "ungleich" eigentlich?

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

                      @jb_sullivan sagte: Das hatte ich ja schon so ähnlich

                      Du rufts die Funktion aber nur zum Einschalten auf. So wird der Verbraucher nie wieder ausgeschaltet.

                      @jb_sullivan sagte in Brauche Hilfe bei PV Laden Skript:

                      Was bdeutet "ungleich" eigentlich?

                      Wenn der Sollzustand (Variable) und der Istzustand (Datenpunkt-Wert) unterschiedlich sind.

                      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

                      JB_SullivanJ 1 Antwort Letzte Antwort
                      0
                      • paul53P paul53

                        @jb_sullivan sagte: Das hatte ich ja schon so ähnlich

                        Du rufts die Funktion aber nur zum Einschalten auf. So wird der Verbraucher nie wieder ausgeschaltet.

                        @jb_sullivan sagte in Brauche Hilfe bei PV Laden Skript:

                        Was bdeutet "ungleich" eigentlich?

                        Wenn der Sollzustand (Variable) und der Istzustand (Datenpunkt-Wert) unterschiedlich sind.

                        JB_SullivanJ Offline
                        JB_SullivanJ Offline
                        JB_Sullivan
                        schrieb am zuletzt editiert von
                        #60

                        @paul53 "Wert von objekt ID" wäre in deinem Beispiel was (Power_Delivery oder Leistung_1)?

                        ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

                        paul53P 1 Antwort Letzte Antwort
                        0
                        • JB_SullivanJ JB_Sullivan

                          @paul53 "Wert von objekt ID" wäre in deinem Beispiel was (Power_Delivery oder Leistung_1)?

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

                          @jb_sullivan sagte: "Wert von objekt ID" wäre in deinem Beispiel was?

                          DEKO_3_POWER1

                          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

                          JB_SullivanJ 1 Antwort Letzte Antwort
                          0
                          • paul53P paul53

                            @jb_sullivan sagte: "Wert von objekt ID" wäre in deinem Beispiel was?

                            DEKO_3_POWER1

                            JB_SullivanJ Offline
                            JB_SullivanJ Offline
                            JB_Sullivan
                            schrieb am zuletzt editiert von
                            #62

                            @paul53

                            :dizzy_face: :dizzy_face: Ähm - sicher? steuer wäre DEKO, aber Wert ist auch DEKO?

                            7dd9115a-9f5d-44ec-95ed-7f847a6b320f-image.png

                            ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

                            paul53P 1 Antwort Letzte Antwort
                            0
                            • JB_SullivanJ JB_Sullivan

                              @paul53

                              :dizzy_face: :dizzy_face: Ähm - sicher? steuer wäre DEKO, aber Wert ist auch DEKO?

                              7dd9115a-9f5d-44ec-95ed-7f847a6b320f-image.png

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

                              @jb_sullivan sagte: sicher? steuer wäre DEKO, aber Wert ist auch DEKO?

                              Ja. Es soll ja nur gefunkt werden, wenn der Aktor nicht den Sollzustand hat (Störpegelverringerung).

                              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

                              JB_SullivanJ 1 Antwort Letzte Antwort
                              1
                              • paul53P paul53

                                @jb_sullivan sagte: sicher? steuer wäre DEKO, aber Wert ist auch DEKO?

                                Ja. Es soll ja nur gefunkt werden, wenn der Aktor nicht den Sollzustand hat (Störpegelverringerung).

                                JB_SullivanJ Offline
                                JB_SullivanJ Offline
                                JB_Sullivan
                                schrieb am zuletzt editiert von
                                #64

                                @paul53 Wir haben gerade einen coolen Sonnen/ Wolken Mix und ich habe den Aktualisierungsintervall vom Discovergy Adapter auf 30 Sekunden runter genommen und die Schaltschwellen entsprechend niedrig eingestellt.

                                Ist ein lustiges geklackere der Sonoff Steckdosen - also mit anderen Worten. Scheint prächtig zu funktionieren :+1: :+1: :+1: Viele Dank für deine Unterstützung !!!

                                ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

                                1 Antwort Letzte Antwort
                                0
                                • paul53P paul53

                                  @malu sagte: was ich da falschgemacht habe

                                  1. An den Trigger muss eine Datenpunkt-ID übergeben werden - kein Vergleichsergebnis.
                                  2. Es muss verhindert werden, dass die Timer mehrfach gestartet werden können.

                                  Bild_2021-03-24_150442.png

                                  M Offline
                                  M Offline
                                  Malu
                                  schrieb am zuletzt editiert von
                                  #65

                                  @paul53
                                  Morgen. Ich hätte mal eine Frage zu meinem letzten Post wo du mir sehr geholfen hast. Habe gestern gemerkt das wenn der 1 timeout getriggert wird ist alles gut. Sobald der netz Bezug kommt, und die timeout 2 abläuft wechselt er den state ständig von wahr auf falsch. Das ganze macht er solange bis die Verzögerung abgelaufen ist. Wie könnte ich so etwas umgehen? Ich hoffe könnte es verständlich erkläre. Danke schonmal

                                  paul53P 2 Antworten Letzte Antwort
                                  0
                                  • M Malu

                                    @paul53
                                    Morgen. Ich hätte mal eine Frage zu meinem letzten Post wo du mir sehr geholfen hast. Habe gestern gemerkt das wenn der 1 timeout getriggert wird ist alles gut. Sobald der netz Bezug kommt, und die timeout 2 abläuft wechselt er den state ständig von wahr auf falsch. Das ganze macht er solange bis die Verzögerung abgelaufen ist. Wie könnte ich so etwas umgehen? Ich hoffe könnte es verständlich erkläre. Danke schonmal

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

                                    @malu sagte: Sobald der netz Bezug kommt, und die timeout 2 abläuft wechselt er den state ständig von wahr auf falsch.

                                    Skript?

                                    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

                                    1 Antwort Letzte Antwort
                                    0
                                    • M Offline
                                      M Offline
                                      Malu
                                      schrieb am zuletzt editiert von
                                      #67

                                      @paul53 hallo. Das skribt hast du mir gezeigt. Sie ist vom 24.03.21. Ich kann es auch gerne noch mal einsenden

                                      1 Antwort Letzte Antwort
                                      0
                                      • M Malu

                                        @paul53
                                        Morgen. Ich hätte mal eine Frage zu meinem letzten Post wo du mir sehr geholfen hast. Habe gestern gemerkt das wenn der 1 timeout getriggert wird ist alles gut. Sobald der netz Bezug kommt, und die timeout 2 abläuft wechselt er den state ständig von wahr auf falsch. Das ganze macht er solange bis die Verzögerung abgelaufen ist. Wie könnte ich so etwas umgehen? Ich hoffe könnte es verständlich erkläre. Danke schonmal

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

                                        @malu sagte: wechselt er den state ständig von wahr auf falsch. Das ganze macht er solange bis die Verzögerung abgelaufen ist.

                                        Das kann bei diesem Skript nicht passieren. Poste bitte den erzeugten Javascript-Code ohne die letzte Zeile in Code tags.

                                        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

                                        M 1 Antwort Letzte Antwort
                                        0
                                        • paul53P paul53

                                          @malu sagte: wechselt er den state ständig von wahr auf falsch. Das ganze macht er solange bis die Verzögerung abgelaufen ist.

                                          Das kann bei diesem Skript nicht passieren. Poste bitte den erzeugten Javascript-Code ohne die letzte Zeile in Code tags.

                                          M Offline
                                          M Offline
                                          Malu
                                          schrieb am zuletzt editiert von
                                          #69

                                          @paul53 ok danke mal für die info. Sobald ich wieder zuhause bin werde ich das mal machen. Danke schonmal

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          796

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          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