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 mit Bedingung und schedule

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    10
    1
    320

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.5k

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

Blockly mit Bedingung und schedule

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
41 Beiträge 3 Kommentatoren 5.4k Aufrufe
  • Ä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.
  • DutchmanD Offline
    DutchmanD Offline
    Dutchman
    Developer Most Active Administrators
    schrieb am zuletzt editiert von
    #16

    @Homoran:

    Selbst wenn der wiederhole-Block nicht funktioniert hätte doch der debug-Block "es regnet" ausgegeben werden müssen, ODER? `

    jup, verstehe ich auch nicht warum er fuer die ansagen geht aber nicht fuer den block mit berechnungen er ist ja gleich.

    DUe koennste mal zum spass den wert in eine variable schreiben und dan die variable als debug block auslesen vielleicht war er doch was anderes als 1 zu de zeitpunkt?

    1 Antwort Letzte Antwort
    0
    • HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von
      #17

      Nachdem keiine Meldungen mehr im Blockly-log kamen und nach neustart des javascript-Adapters Error code7 already running kam, habe ich mir über die Konsole mit top die Prozesse angesehen.

      Sobald ich den Block mit falls… unten angehängt hatte, damit er immer läuft stieg der Adapter mit 100% CPU aus.

      Da muss ich erst mal nachdenken warum.

      Deine Version scheint keine Probleme zu machen.

      ...waiting for rain again.

      Rainer

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      1 Antwort Letzte Antwort
      0
      • HomoranH Nicht stören
        HomoranH Nicht stören
        Homoran
        Global Moderator Administrators
        schrieb am zuletzt editiert von
        #18

        Bei dem nächsten Regen lief die neue Version nahezu komplett.

        nur nach dem Regen hörte sie nicht mehr auf mit dem "Auführen Intervall"

        Ich hatte das "sonst - clear interval" vergessen :oops:

        Warum der Wert in Liter / Minute immer auf 0 stand??

        Ich logge jetzt die Werte mal.

        insgesamt fielen 0,3mm Regen - nicht viel aber >0!

        Warum meine Version den js-Adapter an die Kapazitätsgrenzen brachte habe ich noch nicht herausbekommen.

        Danke für die Hilfe

        Rainer

        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

        1 Antwort Letzte Antwort
        0
        • paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #19

          @Homoran:

          Warum meine Version den js-Adapter an die Kapazitätsgrenzen brachte habe ich noch nicht herausbekommen. `
          Wenn Du den Javascript-Code (in Code-Tags) postest, kann Dir vielleicht geholfen werden.

          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
          • HomoranH Nicht stören
            HomoranH Nicht stören
            Homoran
            Global Moderator Administrators
            schrieb am zuletzt editiert von
            #20

            Hallo Paul,

            ich hoffe ich habe ihn wieder vollständig rekonstruiert:

            on({id: 'hm-rpc.0.KEQ1022589.1.STATE', change: "ne"}, function (obj) {
              var value = obj.state.val;
              var oldValue = obj.oldState.val;
              console.log('ist getriggert');
              if (getState("hm-rpc.0.KEQ1022589.1.STATE").val == 1) {
                console.log('es regnet');
                while (!(getState("hm-rpc.0.KEQ1022589.1.STATE").val == 0)) {
                  schedule("*/3 * * * *", function () {
                    setState("Messwerte.0.Wetterdaten.Regenintensitaet"/*Regenintensitaet*/, ((getState("hm-rpc.0.JEQ0140901.1.RAIN_COUNTER").val - getState("Messwerte.0.Wetterdaten.Regenmenge_alt").val) / 3), true);
                    setStateDelayed("Messwerte.0.Wetterdaten.Regenmenge_alt"/*Regenmenge_alt*/, getState("hm-rpc.0.JEQ0140901.1.RAIN_COUNTER").val, true, 200, false);
                    console.log((String('Die Regenmenge der letzten drei Minuten betrug: ') + String(getState("hm-rpc.0.JEQ0140901.1.RAIN_COUNTER").val - getState("Messwerte.0.Wetterdaten.Regenmenge_alt").val)));
                  });
                }
                console.log('es regnet nicht mehr');
              }
              console.log('es regnet nicht');
            });
            console.log('Check - fertig');
            console.log((String('Der Zustand vom Regensensor ist: ') + String(getState("hm-rpc.0.KEQ1022589.1.STATE").val)));
            

            144_regenintensitaet_blockly03.jpg

            @paul53:

            (in Code-Tags) ` :D

            Das ist der code, den Blockly ausspuckt.

            Gruß

            Rainer

            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

            1 Antwort Letzte Antwort
            0
            • paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von
              #21
              while (!(getState("hm-rpc.0.KEQ1022589.1.STATE").val == 0))
              

              erzeugt den Dauerstress solange es regnet (Wert > 0). Eine Änderung des Wertes triggert erneut. Also nur

              if(value) {
                 timer = schedule(...)
              } else { 
                 clearSchedule(timer);
              }
              
              console.log('Check - fertig');
              console.log((String('Der Zustand vom Regensensor ist: ') + String(getState("hm-rpc.0.KEQ1022589.1.STATE").val)));
              

              wird nur einmal beim Skriptstart ausgeführt.

                if (getState("hm-rpc.0.KEQ1022589.1.STATE").val == 1) {
              

              Es ist besser mit der Skriptvariablen value zu arbeiten (weniger CPU-Last)

                if (value == 1) {
              

              Ein getState(id) auf die ID, mit der getriggert wurde, sollte man vermeiden.

              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
              • HomoranH Nicht stören
                HomoranH Nicht stören
                Homoran
                Global Moderator Administrators
                schrieb am zuletzt editiert von
                #22

                Danke Paul,

                das muss ich erst mal verdauen und sehen, wie ich das in Blockly umsetzen kann.

                Danke

                Rainer

                kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                1 Antwort Letzte Antwort
                0
                • DutchmanD Offline
                  DutchmanD Offline
                  Dutchman
                  Developer Most Active Administrators
                  schrieb am zuletzt editiert von
                  #23

                  @Homoran:

                  Danke Paul,

                  das muss ich erst mal verdauen und sehen, wie ich das in Blockly umsetzen kann.

                  Danke

                  Rainer `

                  Ich glaube was Paul da schreibt is genau mein Beispiel?

                  Nur triggern auf regen ja nein und den Intervall ausschalten wen es nicht mehr regnet

                  –-----------------------

                  Send from mobile device

                  1 Antwort Letzte Antwort
                  0
                  • paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von
                    #24

                    Das folgende Blockly sollte das erledigen, was Du möchtest ?
                    493_regenintensit_t.jpg
                    Anmerkung: Mit Blockly dauert es bei mir mind. 5 mal solange als wenn ich es in Javascript eintippe.

                    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
                    • DutchmanD Offline
                      DutchmanD Offline
                      Dutchman
                      Developer Most Active Administrators
                      schrieb am zuletzt editiert von
                      #25

                      @paul53:

                      Das folgende Blockly sollte das erledigen, was Du möchtest ?

                      Regenintensität.JPG

                      Anmerkung: Mit Blockly dauert es bei mir mind. 5 mal solange als wenn ich es in Javascript eintippe. `

                      :)

                      genauso war mein erster vorschlag auf, Rainer moechte die berechnung aber nur laufen lassen wen es regnet daher war mein vorschlag das ueber einen interval zu loesen der getriggert wird durch true/false stand des regensensors.

                      Wie ist deine meinung dazu Paul ?

                      http://forum.iobroker.net/viewtopic.php … 387#p88853

                      1 Antwort Letzte Antwort
                      0
                      • HomoranH Nicht stören
                        HomoranH Nicht stören
                        Homoran
                        Global Moderator Administrators
                        schrieb am zuletzt editiert von
                        #26

                        @paul53:

                        Mit Blockly dauert es bei mir mind. 5 mal solange als wenn ich es in Javascript eintippe. `
                        Sorry Paul :cry:

                        ich versuche mich so an js heranzu tasten.

                        Die Logik ist der erste Schritt, die Befehle (und Struktur) der zweite.

                        Bin jetzt ein paar Tage weg, werde baldmöglichst testen. Habe im Moment die Version mit interval. Mal sehen wann es wieder regnet.

                        Danke für eure Hilfe

                        Rainer

                        PS gibt es eigentlich (ähnlich zu Homematic) einen Trigger, der auf einen Wert im DP reagiert? - Wenn Leistung > 50W dann mache… oder muss man auf Änderung (Erhöhung) triggern und dann den falls... Block nehmen?

                        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                        1 Antwort Letzte Antwort
                        0
                        • DutchmanD Offline
                          DutchmanD Offline
                          Dutchman
                          Developer Most Active Administrators
                          schrieb am zuletzt editiert von
                          #27

                          @Homoran:

                          @paul53:

                          PS gibt es eigentlich (ähnlich zu Homematic) einen Trigger, der auf einen Wert im DP reagiert? - Wenn Leistung > 50W dann mache… oder muss man auf Änderung (Erhöhung) triggern und dann den falls... Block nehmen?

                          mit blockly nein da geht nur "hoeher als voriger, kleiner als voriger , ist true, ist false usw".

                          Mit script geht es glaube ich wohl siehe pattern:

                          on(pattern, callbackOrId, value)
                          
                          

                          wobei man in dem "value" logic verarbeiten kan

                          https://github.com/ioBroker/ioBroker.ja ... some-state

                          1 Antwort Letzte Antwort
                          0
                          • paul53P Offline
                            paul53P Offline
                            paul53
                            schrieb am zuletzt editiert von
                            #28

                            @Homoran:

                            gibt es eigentlich (ähnlich zu Homematic) einen Trigger, der auf einen Wert im DP reagiert? - Wenn Leistung > 50W dann mache `
                            Ja.

                            on({id: idLeistung, valGt: 50, oldValLe: 50} function(dp) {...});
                            ````~~@Dutchman:~~ 
                            
                            > Rainer moechte die berechnung aber nur laufen lassen wen es regnet daher war mein vorschlag das ueber einen interval zu loesen der getriggert wird durch true/false stand des regensensors.
                            > 
                            > Wie ist deine meinung dazu Paul ? `  
                            Funktioniert genauso. Durch die Abfrage auf Regen innerhalb des Schedule-Triggers ist das Ergebnis (fast) identisch. In Javascript würde ich es so machen:
                            

                            // Regenintensität
                            const idCount = getIdByName('Wetterstation:1.RAIN_COUNTER');
                            const idRegen = getIdByName('Regensensor:1.STATE');
                            const idIntens = getIdByName('Regenintensitaet');
                            const faktor = 1; // Umrechnung in mm/h

                            // Skriptvariablen mit Initialisierung bei Skriptstart
                            var menge = getState(idCount).val; // Merker Regenmenge für Differenz
                            var timer = null; // für setInterval, clearInterval

                            function intens() {
                            var count = getState(idCount).val; // aktuelle Menge in lokale Skriptvariable, da mehr als einmal verwendet
                            setState(idIntens, faktor * (count - menge), true);
                            menge = count;
                            }

                            // Skriptstart
                            if(getState(idRegen).val) {
                            timer = setInterval(intens, 180000); // alle 3 Minuten
                            }

                            on(idRegen, function(dp) { // Triggern bei Wertänderung
                            if(dp.state.val) { // es regnet
                            timer = setInterval(intens, 180000); // alle 3 Minuten
                            } else {
                            if(timer) clearInterval(timer); // Stopp timer
                            setState(idIntens, 0, true); // kein Regen, also Intensität 0
                            }
                            });

                            Die Verwendung von setInterval() anstelle schedule() hat den Vorteil, dass auch nach Skriptstart die erste Berechnung nach genau 3 Minuten erfolgt.

                            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
                            • HomoranH Nicht stören
                              HomoranH Nicht stören
                              Homoran
                              Global Moderator Administrators
                              schrieb am zuletzt editiert von
                              #29

                              @paul53:

                              Ja. `
                              Also doch Javascript full statt Blockly :(

                              @paul53:

                              Die Verwendung von setInterval() anstelle schedule() hat den Vorteil, dass auch nach Skriptstart die erste Berechnung nach genau 3 Minuten erfolgt. `
                              und genau das ist passiert, lief nur unendlich weiter, weil ich depp das clear interval bei Ende Regen vergessen hatte.

                              Gruß

                              Rainer

                              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                              1 Antwort Letzte Antwort
                              0
                              • paul53P Offline
                                paul53P Offline
                                paul53
                                schrieb am zuletzt editiert von
                                #30

                                @Homoran:

                                Also doch Javascript full statt Blockly `
                                Blockly hat einige Einschränkungen. Wenn Du JS full einmal gelernt hast, bist Du damit auch schneller.

                                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
                                • HomoranH Nicht stören
                                  HomoranH Nicht stören
                                  Homoran
                                  Global Moderator Administrators
                                  schrieb am zuletzt editiert von
                                  #31

                                  Danke nochmals an alle Helfenden.

                                  Kurze Rückmeldung:

                                  Heute morgen hat es wohl geregnet ("leider" nur 0,3mm). Der js-Adpter läuft noch (mit 2,5% CPU-Last) und es hat Datenpunkte gegeben.
                                  144_dp_regen.jpg
                                  hier sieht man schön die exakt drei Minuten Intervall.

                                  seltsamerweise zeigt das log von der Wetterstation den Regen von 10:43 bis 10:48 (und das auf verschiedenen Installationen)

                                  Das aktuelle Blockly (aus dem ich bald die debug-Blöcke entferne)
                                  144_regenintensitaet_blockly_dutch01.jpg

                                  …und als code (für Paul53):

                                  var Intervall;
                                  
                                  on({id: 'hm-rpc.0.KEQ1022589.1.STATE', change: "ne"}, function (obj) {
                                    var value = obj.state.val;
                                    var oldValue = obj.oldState.val;
                                    console.log('ist getriggert');
                                    if (getState("hm-rpc.0.KEQ1022589.1.STATE").val == 1) {
                                      console.log('es regnet');
                                      Intervall = setInterval(function () {
                                        setState("Messwerte.0.Wetterdaten.Regenintensitaet"/*Regenintensitaet*/, ((getState("hm-rpc.0.JEQ0140901.1.RAIN_COUNTER").val - getState("Messwerte.0.Wetterdaten.Regenmenge_alt").val) / 3), true);
                                        setStateDelayed("Messwerte.0.Wetterdaten.Regenmenge_alt"/*Regenmenge_alt*/, getState("hm-rpc.0.JEQ0140901.1.RAIN_COUNTER").val, true, 200, false);
                                        console.log((String('Die Regenmenge der letzten drei Minuten betrug: ') + String(getState("hm-rpc.0.JEQ0140901.1.RAIN_COUNTER").val - getState("Messwerte.0.Wetterdaten.Regenmenge_alt").val)));
                                        console.log('noch einmal');
                                      }, 180000);
                                    } else {
                                      (function () {if (Intervall) {clearInterval(Intervall); Intervall = null;}})();
                                      console.log('es regnet nicht mehr');
                                    }
                                    console.log('es regnet nicht');
                                  });
                                  console.log('Check - fertig');
                                  console.log((String('Der Zustand vom Regensensor ist: ') + String(getState("hm-rpc.0.KEQ1022589.1.STATE").val)));
                                  

                                  Gruß

                                  Rainer

                                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                  1 Antwort Letzte Antwort
                                  0
                                  • DutchmanD Offline
                                    DutchmanD Offline
                                    Dutchman
                                    Developer Most Active Administrators
                                    schrieb am zuletzt editiert von
                                    #32

                                    5 Minuten sind keine 6 (2x3), ich glaube unsere Logic hier ist falsch und wir machen es zu kompliziert:

                                    1. die Wetterstation sendet nur alle x Minuten, warum machen wir dan einen Intervall Risiko zu groß das der schneller abgelaufen ist als die Station neue Werte gesendet hat

                                    2. das script läuft nur wen es regnet und rechnet dan alle 3minuten

                                    3. logischer wäre doch: triggen wen Regenmenge (Rain Counter) geändert und dan Berechnung Ausführen

                                    Ich glaube das die ganze Kombination mit ermitteln regnet es ja oder nein überflüssig ist las uns doch einfach triggeren auf Changed Status Regenmenge und dan wert minus wert alt = jetziger Regenfall ?!

                                    ~Dutch

                                    1 Antwort Letzte Antwort
                                    0
                                    • HomoranH Nicht stören
                                      HomoranH Nicht stören
                                      Homoran
                                      Global Moderator Administrators
                                      schrieb am zuletzt editiert von
                                      #33

                                      @Dutchman:

                                      5 Minuten sind keine 6 (2x3) `
                                      Wo siehst du 56 Minuten?

                                      hier ist das Interval nur einmal durchlaufen worden.

                                      @Dutchman:

                                      die Wetterstation sendet nur alle x Minuten, warum machen wir dan einen Intervall Risiko zu groß das der schneller abgelaufen ist als die Station neue Werte gesendet hat `
                                      Das hatte ich auch überlegt, aber bei 3 Minuten Zykluszeit, sollte die Wahrscheinlichkeit, dass das Intervall genau zu einem Sendetelegram beginnt und das zweite Telegram dadurch nach drei Minuten nicht da ist verschwindend gering sein.

                                      @Dutchman:

                                      logischer wäre doch: triggen wen Regenmenge geändert und dan Berechnung Ausführen `
                                      Auch richtig, aber als Anfänger wollte ich nicht auch noch mit Zeiten rechnen,

                                      Gruß

                                      Rainer

                                      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                      1 Antwort Letzte Antwort
                                      0
                                      • DutchmanD Offline
                                        DutchmanD Offline
                                        Dutchman
                                        Developer Most Active Administrators
                                        schrieb am zuletzt editiert von
                                        #34

                                        @Homoran:

                                        @Dutchman:

                                        5 Minuten sind keine 6 (2x3) `
                                        Wo siehst du 56 Minuten?

                                        hier ist das Interval nur einmal durchlaufen worden. `

                                        Wir verstehen uns falsch!

                                        Du hast nur 2 werte in deinem History innerhalb der 3minuten…. Zeit stimmt trotzdem nich aber andere Geschichte....

                                        @Homoran:

                                        @Dutchman:

                                        die Wetterstation sendet nur alle x Minuten, warum machen wir dan einen Intervall Risiko zu groß das der schneller abgelaufen ist als die Station neue Werte gesendet hat Das hatte ich auch überlegt, aber bei 3 Minuten Zykluszeit, sollte die Wahrscheinlichkeit, dass das Intervall genau zu einem Sendetelegram beginnt und das zweite Telegram dadurch nach drei Minuten nicht da ist verschwindend gering sein.

                                        Ja, trotzdem möglich und daher onnötiges Risiko

                                        @Homoran:

                                        @Dutchman:

                                        logischer wäre doch: triggen wen Regenmenge geändert und dan Berechnung Ausführen `
                                        Auch richtig, aber als Anfänger wollte ich nicht auch noch mit Zeiten rechnen,

                                        Gruß

                                        Rainer `

                                        Ich verstehe dich nicht, was willst du hier mit Zeiten rechnen .

                                        Ich versuche es nochmal:

                                        1. der Wert der Regenmenge ändert sich nur wen es regnet

                                        2. wir können diesen Wert (hat sich geändert) also nehmen als trigger um die Berechnung aus zu führen

                                        3. der Rest ändert sich nicht

                                        ~Dutch

                                        1 Antwort Letzte Antwort
                                        0
                                        • HomoranH Nicht stören
                                          HomoranH Nicht stören
                                          Homoran
                                          Global Moderator Administrators
                                          schrieb am zuletzt editiert von
                                          #35

                                          @Dutchman:

                                          Wir verstehen uns falsch!

                                          Du hast nur 2 werte in deinem History innerhalb der 3minuten `
                                          korrekt (sollte auch 5 Minuten heißen).

                                          Das Interval sorgt dafür, dass es erst nach 3 Minuten den ersten Wert gibt, nach 6 Minuten den zweiten.

                                          Wenn es dann nach 8 Minuten aufhört ist das (vom Programm her) ok!

                                          @Dutchman:

                                          Ich verstehe dich nicht, was willst du hier mit Zeiten rechnen `
                                          ich möchte doch als Ergebnis mm/min (oder vielleicht l/h) als Ergebnis, also muss ich auf eine Zeitbasis rechnen.

                                          var Dauer = (Timestamp2 - Timestamp1)

                                          var Menge = RainCounter2 - RainCounter1

                                          var Intens = Menge / Dauer

                                          und dann noch in die richtige Einheit umrechnen.

                                          Es hat eben noch zweimal geregnet. Der dritte Regen besteht noch (nicht im log)

                                          Skript startet, aber…

                                          javascript.0	2017-10-09 20:25:50.876	info	script.js.Regenintensitaet: es regnet nicht
                                          javascript.0	2017-10-09 20:25:50.874	info	script.js.Regenintensitaet: es regnet nicht mehr
                                          javascript.0	2017-10-09 20:25:50.872	info	script.js.Regenintensitaet: ist getriggert
                                          javascript.0	2017-10-09 20:23:40.160	info	script.js.Regenintensitaet: es regnet nicht
                                          javascript.0	2017-10-09 20:23:40.157	info	script.js.Regenintensitaet: es regnet
                                          javascript.0	2017-10-09 20:23:40.151	info	script.js.Regenintensitaet: ist getriggert
                                          

                                          ich war immer davon ausgegangen, dass Blöcke, die hinter dem Trigger-Block hängen immer ausgeführt werden ("check-fertig" und "der Status des Regensensors…" tauchen bei dieser Version im log nicht mehr auf.

                                          Gruß

                                          Rainer

                                          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                          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

                                          778

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          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