Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Regenmenge der letzten drei Tage berechnen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Regenmenge der letzten drei Tage berechnen

    This topic has been deleted. Only users with topic management privileges can see it.
    • G
      G.Hawk @paul53 last edited by

      @paul53
      Ja das stimmt. Es wird nur beregnet, wenn die CCU die variable auf aktiviert setzt.

      Kann ich vielleicht mit irgendeinem Timeout den wert dann auf 0 setzen?

      paul53 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @G.Hawk last edited by paul53

        @Martin-0 sagte:

        Es wird nur beregnet, wenn die CCU die variable auf aktiviert setzt.

        Wenn ioBroker die SV auf true setzt ?

        Blockly_temp.JPG

        Es wird jede Minute geprüft, ob die 3-Tages-Regenmenge < 10 mm und die letzte Änderung eines Bewässerung-Aktors mind. 70 h her ist: Dann wird die SV true.

        G 1 Reply Last reply Reply Quote 0
        • G
          G.Hawk @paul53 last edited by

          @paul53
          Könnte ich das auch einmal am Tag prüfen?
          Die Idee habe ich verstanden, nur wenn ich die Regner nur mal so anmache, dann würde die Bewässerung nicht aktiv werden.
          Der Plan hinter dem Betriebstundenzähler ist ja folgender:
          Wenn die Kinder mal den Regner zum abkühlen an machen, will ich prüfen wie lange der an war. Wenn dieser Wert dann unter 60 Minuten war soll die Beregnungsautomatik trotzdem an gehen.

          Deswegen fand ich es irgendwie leichter, wenn ich diesen Betriebsstundenzähler einfach zurücksetzten könnte. Also wenn er nach drei Tagen ohne Änderung auf 0 gesetzt wird.

          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @G.Hawk last edited by paul53

            @Martin-0 sagte:

            Könnte ich das auch einmal am Tag prüfen?

            Ja, das ist sogar besser.

            @Martin-0 sagte in Regenmenge der letzten drei Tage berechnen:

            Wenn die Kinder mal den Regner zum abkühlen an machen, will ich prüfen wie lange der an war.

            Machen die Kinder alle 3 an ?

            G 1 Reply Last reply Reply Quote 0
            • G
              G.Hawk @paul53 last edited by

              @paul53
              Hast du auch eine Idee zum dem resetten nach 72 Stunden?

              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @G.Hawk last edited by paul53

                @Martin-0 sagte:

                Hast du auch eine Idee zum dem resetten nach 72 Stunden?

                Für ein Timeout sind 72 h zuviel, denn da ist die Wahrscheinlichkeit zu hoch, dass etwas dazwischen kommt (Skriptstart).
                Man kann die 72 h auf den Einschaltzeitpunkt addieren und dann Minute, Stunde und Tag (Monatsdatum) für einen Zeitplan, der den Reset macht, berechnen.

                G 1 Reply Last reply Reply Quote 0
                • G
                  G.Hawk @paul53 last edited by

                  @paul53
                  Das klingt irgendwie schwierig.

                  Könnte man auch die die Niederschlagsmenge (vom Regner) auf die Liste addieren?
                  Dann wäre der Niederschlag ja um den Wert den der Regner aktiv ist höher.
                  Der Regner macht 5mm in der Stunde.

                  Man könnte also sagen, wenn der 1 Stunde an war, dann soll die Niederschlagsmenge, wenn am Abend geprüft wird um 10mm erhöht werden.

                  paul53 1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @G.Hawk last edited by

                    @Martin-0 sagte:

                    Könnte man auch die die Niederschlagsmenge (vom Regner) auf die Liste addieren?

                    Ja.

                    G 1 Reply Last reply Reply Quote 0
                    • G
                      G.Hawk @paul53 last edited by

                      @paul53
                      Jetzt ist nur die Frage wie

                      paul53 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @G.Hawk last edited by paul53

                        @Martin-0 sagte:

                        Jetzt ist nur die Frage wie

                        Das hängt davon ab zu welcher Uhrzeit die Regenmenge eingetragen wird und wann die Bewässerung läuft.

                        Wenn die Regenmenge morgens eingetragen wird und die Bewässerung am Tag läuft, sollte es so funktionieren:

                        Blockly_temp.JPG

                        G 1 Reply Last reply Reply Quote 0
                        • G
                          G.Hawk @paul53 last edited by

                          @paul53

                          Die wird um 23:30 eingetragen und die Bewässerung soll dann um 24:00 Uhr starten.

                          Ich habe aber gerade noch eine Idee.

                          Länger als 60 min wird die Bewässerung nicht aus "Spaß" an sein.

                          Beregnung:
                          Wenn Betriebstundenzähler <61 min und wassermenge < 10mm dann bewässern.

                          Betriebstundenzähler resetten:
                          Wenn Betriebstunden > 61 min und letzte Änderung 70 stunden her dann auf 0 setzen.

                          Was sagst du dazu?

                          paul53 1 Reply Last reply Reply Quote 0
                          • paul53
                            paul53 @G.Hawk last edited by

                            @Martin-0 sagte:

                            Die wird um 23:30 eingetragen und die Bewässerung soll dann um 24:00 Uhr starten.

                            Also enthält der letzte Eintrag in der Liste den Regen-Wert von gestern. Ist es ein Problem für Dich, wenn er heute durch die Bewässerung fortgeschrieben wird ?

                            G 1 Reply Last reply Reply Quote 0
                            • G
                              G.Hawk @paul53 last edited by

                              @paul53
                              Hallo

                              Es funktioniert eigentlich ganz gut. Nur kommt bei meinem Skript beim Reset der Betriebsstunden folgender Fehler:

                              G 1 Reply Last reply Reply Quote 0
                              • G
                                G.Hawk @G.Hawk last edited by

                                Unbenannt.JPG

                                paul53 1 Reply Last reply Reply Quote 0
                                • paul53
                                  paul53 @G.Hawk last edited by paul53

                                  @Martin-0
                                  Poste die Log-Ausgabe bitte in Code tags </>, denn dann kann ich Copy & paste für die Antwort verwenden.
                                  Wie werden die Betriebsstunden dargestellt ?

                                  G 1 Reply Last reply Reply Quote 0
                                  • G
                                    G.Hawk @paul53 last edited by

                                    @paul53
                                    Sorry aber wie mache ich das?

                                    paul53 1 Reply Last reply Reply Quote 0
                                    • paul53
                                      paul53 @G.Hawk last edited by

                                      @Martin-0 sagte:

                                      wie mache ich das?

                                      Die Log-Ausgabe markieren, dann Copy(^C) in die Zwischenablage und im Forum </> (code tags) auswählen und mit Paste(^V) an der Stelle einfügen.

                                      G 1 Reply Last reply Reply Quote 0
                                      • G
                                        G.Hawk @paul53 last edited by

                                        @paul53

                                        code_text
                                        javascript.0	2020-08-23 12:44:05.008	warn	(5225) at processTimers (internal/timers.js:492:7)
                                        javascript.0	2020-08-23 12:44:05.007	warn	(5225) at listOnTimeout (internal/timers.js:551:17)
                                        javascript.0	2020-08-23 12:44:05.007	warn	(5225) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2039:34)
                                        javascript.0	2020-08-23 12:44:05.006	warn	(5225) at Object.<anonymous> (script.js.Homematic.Bewässerung.Betriebsstunden_reset:17:7)
                                        javascript.0	2020-08-23 12:44:05.005	warn	(5225) at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1355:20)
                                        javascript.0	2020-08-23 12:44:05.002	warn	(5225) You are assigning a string to the state "javascript.0.Bewaesserung.Betreibstundenzähler_Nord" which expects a number. Please fix your code to use a number or change the state type to string. T
                                        G paul53 2 Replies Last reply Reply Quote 0
                                        • G
                                          G.Hawk @G.Hawk last edited by

                                          Das ist das Blockly dazuUnbenannt.JPG

                                          paul53 1 Reply Last reply Reply Quote 0
                                          • paul53
                                            paul53 @G.Hawk last edited by

                                            @Martin-0 sagte:

                                            Homematic.Bewässerung.Betriebsstunden_reset

                                            Im Script "Homematic.Bewässerung.Betriebsstunden_reset" wird ein String in den Datenpunkt "javascript.0.Bewaesserung.Betreibstundenzähler_Nord" geschrieben, der vom Typ Zahl("number") ist.

                                            G 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            994
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            blockly climate
                                            4
                                            71
                                            4444
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo